| 
100 | 100 |                 }  | 
101 | 101 |             },  | 
102 | 102 |             "then": {  | 
103 |  | -                "additionalProperties": false,  | 
104 |  | -                "properties": {  | 
105 |  | -                    "type": { "enum": ["string"] },  | 
106 |  | -                    "title": { "type": "string" },  | 
107 |  | -                    "description": { "type": "string" },  | 
108 |  | -                    "default": { "type": "string" },  | 
109 |  | -                    "prefill": { "type": "string" },  | 
110 |  | -                    "example": { "type": "string" },  | 
111 |  | -                    "pattern": { "type": "string" },  | 
112 |  | -                    "nullable": { "type": "boolean" },  | 
113 |  | -                    "minLength": { "type": "integer" },  | 
114 |  | -                    "maxLength": { "type": "integer" },  | 
115 |  | -                    "editor": { "enum": ["javascript", "python", "textfield", "textarea", "datepicker", "hidden", "dataset", "keyValueStore", "requestQueue"] },  | 
116 |  | -                    "isSecret": { "type": "boolean" },  | 
117 |  | -                    "sectionCaption": { "type": "string" },  | 
118 |  | -                    "sectionDescription": { "type": "string" }  | 
 | 103 | +                "if": {  | 
 | 104 | +                    "properties": {  | 
 | 105 | +                        "editor": { "const": "datepicker" }  | 
 | 106 | +                    }  | 
 | 107 | +                },  | 
 | 108 | +                "then": {  | 
 | 109 | +                    "additionalProperties": false,  | 
 | 110 | +                    "properties": {  | 
 | 111 | +                        "type": { "enum": ["string"] },  | 
 | 112 | +                        "title": { "type": "string" },  | 
 | 113 | +                        "description": { "type": "string" },  | 
 | 114 | +                        "default": { "type": "string" },  | 
 | 115 | +                        "prefill": { "type": "string" },  | 
 | 116 | +                        "example": { "type": "string" },  | 
 | 117 | +                        "pattern": { "type": "string" },  | 
 | 118 | +                        "nullable": { "type": "boolean" },  | 
 | 119 | +                        "minLength": { "type": "integer" },  | 
 | 120 | +                        "maxLength": { "type": "integer" },  | 
 | 121 | +                        "editor": { "enum": ["datepicker"] },  | 
 | 122 | +                        "sectionCaption": { "type": "string" },  | 
 | 123 | +                        "sectionDescription": { "type": "string" },  | 
 | 124 | +                        "allowAbsolute": { "type": "boolean" },  | 
 | 125 | +                        "allowRelative": { "type": "boolean" }  | 
 | 126 | +                    },  | 
 | 127 | +                    "if": {  | 
 | 128 | +                        "required": ["allowAbsolute"],  | 
 | 129 | +                        "properties": { "allowAbsolute": { "const": false } }  | 
 | 130 | +                    },  | 
 | 131 | +                    "then": { "required": ["type", "title", "description", "editor", "allowRelative"] },  | 
 | 132 | +                    "anyOf": [  | 
 | 133 | +                        { "properties": { "allowAbsolute": { "const": true } } },  | 
 | 134 | +                        { "properties": { "allowRelative": { "const": true } } }  | 
 | 135 | +                    ]  | 
 | 136 | +                },  | 
 | 137 | +                "else": {  | 
 | 138 | +                    "additionalProperties": false,  | 
 | 139 | +                    "properties": {  | 
 | 140 | +                        "type": { "enum": ["string"] },  | 
 | 141 | +                        "title": { "type": "string" },  | 
 | 142 | +                        "description": { "type": "string" },  | 
 | 143 | +                        "default": { "type": "string" },  | 
 | 144 | +                        "prefill": { "type": "string" },  | 
 | 145 | +                        "example": { "type": "string" },  | 
 | 146 | +                        "pattern": { "type": "string" },  | 
 | 147 | +                        "nullable": { "type": "boolean" },  | 
 | 148 | +                        "minLength": { "type": "integer" },  | 
 | 149 | +                        "maxLength": { "type": "integer" },  | 
 | 150 | +                        "editor": { "enum": ["javascript", "python", "textfield", "textarea", "datepicker", "hidden", "dataset", "keyValueStore", "requestQueue"] },  | 
 | 151 | +                        "isSecret": { "type": "boolean" },  | 
 | 152 | +                        "sectionCaption": { "type": "string" },  | 
 | 153 | +                        "sectionDescription": { "type": "string" }  | 
 | 154 | +                    }  | 
119 | 155 |                 }  | 
120 | 156 |             },  | 
121 | 157 |             "else": {  | 
 | 
0 commit comments