@cloudcannon/configuration-types 0.0.31 → 0.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -126,8 +126,8 @@
126
126
  },
127
127
  "options": {
128
128
  "$ref": "#/definitions/ArrayInputOptions",
129
- "description": "Options that are specific to this `type` of input.",
130
- "markdownDescription": "Options that are specific to this `type` of input."
129
+ "description": "Options that are specific to Array Inputs.",
130
+ "markdownDescription": "Options that are specific to Array Inputs."
131
131
  },
132
132
  "type": {
133
133
  "const": "array",
@@ -144,6 +144,24 @@
144
144
  "ArrayInputOptions": {
145
145
  "additionalProperties": false,
146
146
  "properties": {
147
+ "disable_add": {
148
+ "default": false,
149
+ "description": "Hides the add button, and context menu actions on each array item for adding new items to this Input.",
150
+ "markdownDescription": "Hides the add button, and context menu actions on each array item for adding new items to this\nInput.",
151
+ "type": "boolean"
152
+ },
153
+ "disable_remove": {
154
+ "default": false,
155
+ "description": "Hides the context menu actions on each array item for removing them.",
156
+ "markdownDescription": "Hides the context menu actions on each array item for removing them.",
157
+ "type": "boolean"
158
+ },
159
+ "disable_reorder": {
160
+ "default": false,
161
+ "description": "Hides the controls on each array item for moving them.",
162
+ "markdownDescription": "Hides the controls on each array item for moving them.",
163
+ "type": "boolean"
164
+ },
147
165
  "empty_type": {
148
166
  "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
149
167
  "enum": [
@@ -153,6 +171,21 @@
153
171
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
154
172
  "type": "string"
155
173
  },
174
+ "max_items": {
175
+ "description": "This key defines the maximum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from adding more items to this Input. If the Input already contains more items, CloudCannon will require you to remove items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a lesser number.\n\nThis key has no default.",
176
+ "markdownDescription": "This key defines the maximum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from adding more items to this Input. If the Input\nalready contains more items, CloudCannon will require you to remove items until the Input\ncontains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a lesser number.\n\nThis key has no default.",
177
+ "type": "number"
178
+ },
179
+ "min_items": {
180
+ "description": "This key defines the minimum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from removing items from this Input below this value. If the Input already contains fewer items, CloudCannon will require you to add items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a greater number.\n\nThis key has no default.",
181
+ "markdownDescription": "This key defines the minimum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from removing items from this Input below this value.\nIf the Input already contains fewer items, CloudCannon will require you to add items until the\nInput contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.",
182
+ "type": "number"
183
+ },
184
+ "required": {
185
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
186
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
187
+ "type": "boolean"
188
+ },
156
189
  "structures": {
157
190
  "anyOf": [
158
191
  {
@@ -164,6 +197,11 @@
164
197
  ],
165
198
  "description": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined.",
166
199
  "markdownDescription": "Provides data formats for value of this object. When choosing an item, team members are\nprompted to choose from a number of values you have defined."
200
+ },
201
+ "unique_on": {
202
+ "description": "This key defines the JSON Path selector that CloudCannon should use to determine if the value of an Input is unique. When configured, CloudCannon will require the value of the Input to be unique compared to the value defined on the JSON Path. If the Input already contains a non-unique value, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
203
+ "markdownDescription": "This key defines the JSON Path selector that CloudCannon should use to determine if the value\nof an Input is unique. When configured, CloudCannon will require the value of the Input to be\nunique compared to the value defined on the JSON Path. If the Input already contains a\nnon-unique value, CloudCannon will require you to change it to a valid value to save your\nchanges, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
204
+ "type": "string"
167
205
  }
168
206
  },
169
207
  "type": "object"
@@ -993,8 +1031,8 @@
993
1031
  },
994
1032
  "options": {
995
1033
  "additionalProperties": false,
996
- "description": "Options that are specific to this `type` of input.",
997
- "markdownDescription": "Options that are specific to this `type` of input.",
1034
+ "description": "Options that are specific to Choice Inputs.",
1035
+ "markdownDescription": "Options that are specific to Choice Inputs.",
998
1036
  "properties": {
999
1037
  "allow_empty": {
1000
1038
  "default": true,
@@ -1011,6 +1049,70 @@
1011
1049
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1012
1050
  "type": "string"
1013
1051
  },
1052
+ "max_length": {
1053
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1054
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1055
+ "type": "number"
1056
+ },
1057
+ "min_length": {
1058
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1059
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1060
+ "type": "number"
1061
+ },
1062
+ "pattern": {
1063
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1064
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1065
+ "type": "string"
1066
+ },
1067
+ "pattern_flags": {
1068
+ "additionalProperties": false,
1069
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1070
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1071
+ "properties": {
1072
+ "dot_all": {
1073
+ "default": false,
1074
+ "description": "`s` - `.` matches newline characters.",
1075
+ "markdownDescription": "`s` - `.` matches newline characters.",
1076
+ "type": "boolean"
1077
+ },
1078
+ "global": {
1079
+ "default": false,
1080
+ "description": "`g` - Search globally.",
1081
+ "markdownDescription": "`g` - Search globally.",
1082
+ "type": "boolean"
1083
+ },
1084
+ "ignore_case": {
1085
+ "default": false,
1086
+ "description": "`i` - Case-insensitive.",
1087
+ "markdownDescription": "`i` - Case-insensitive.",
1088
+ "type": "boolean"
1089
+ },
1090
+ "multiline": {
1091
+ "default": false,
1092
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1093
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1094
+ "type": "boolean"
1095
+ },
1096
+ "unicode": {
1097
+ "default": false,
1098
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
1099
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
1100
+ "type": "boolean"
1101
+ },
1102
+ "unicode_sets": {
1103
+ "default": false,
1104
+ "description": "`v` - Extended `unicode` mode.",
1105
+ "markdownDescription": "`v` - Extended `unicode` mode.",
1106
+ "type": "boolean"
1107
+ }
1108
+ },
1109
+ "type": "object"
1110
+ },
1111
+ "pattern_message": {
1112
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
1113
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
1114
+ "type": "string"
1115
+ },
1014
1116
  "picker_preview": {
1015
1117
  "$ref": "#/definitions/Preview",
1016
1118
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -1032,6 +1134,11 @@
1032
1134
  "description": "Changes the way items are previewed in the CMS.",
1033
1135
  "markdownDescription": "Changes the way items are previewed in the CMS."
1034
1136
  },
1137
+ "required": {
1138
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1139
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1140
+ "type": "boolean"
1141
+ },
1035
1142
  "value_key": {
1036
1143
  "description": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types.",
1037
1144
  "markdownDescription": "Defines the key used for mapping between saved values and objects in values. This changes how\nthe input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\",\n\"title\", then \"name\". Has no effect unless values is an array of objects, the key is used\ninstead for objects, and the value itself is used for primitive types.",
@@ -1157,8 +1264,8 @@
1157
1264
  },
1158
1265
  "options": {
1159
1266
  "$ref": "#/definitions/CodeInputOptions",
1160
- "description": "Options that are specific to this `type` of input.",
1161
- "markdownDescription": "Options that are specific to this `type` of input."
1267
+ "description": "Options that are specific to Code Inputs.",
1268
+ "markdownDescription": "Options that are specific to Code Inputs."
1162
1269
  },
1163
1270
  "type": {
1164
1271
  "const": "code",
@@ -1184,18 +1291,87 @@
1184
1291
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1185
1292
  "type": "string"
1186
1293
  },
1294
+ "max_length": {
1295
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1296
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1297
+ "type": "number"
1298
+ },
1187
1299
  "max_visible_lines": {
1188
1300
  "default": 30,
1189
1301
  "description": "Sets the maximum number of visible lines for this input, effectively controlling maximum height. When the containing text exceeds this number, the input becomes a scroll area.",
1190
1302
  "markdownDescription": "Sets the maximum number of visible lines for this input, effectively controlling maximum\nheight. When the containing text exceeds this number, the input becomes a scroll area.",
1191
1303
  "type": "number"
1192
1304
  },
1305
+ "min_length": {
1306
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1307
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1308
+ "type": "number"
1309
+ },
1193
1310
  "min_visible_lines": {
1194
1311
  "default": 10,
1195
1312
  "description": "Sets the minimum number of visible lines for this input, effectively controlling initial height. When the containing text exceeds this number, the input grows line by line to the lines defined by `max_visible_lines`.",
1196
1313
  "markdownDescription": "Sets the minimum number of visible lines for this input, effectively controlling initial\nheight. When the containing text exceeds this number, the input grows line by line to the lines\ndefined by `max_visible_lines`.",
1197
1314
  "type": "number"
1198
1315
  },
1316
+ "pattern": {
1317
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1318
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1319
+ "type": "string"
1320
+ },
1321
+ "pattern_flags": {
1322
+ "additionalProperties": false,
1323
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1324
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1325
+ "properties": {
1326
+ "dot_all": {
1327
+ "default": false,
1328
+ "description": "`s` - `.` matches newline characters.",
1329
+ "markdownDescription": "`s` - `.` matches newline characters.",
1330
+ "type": "boolean"
1331
+ },
1332
+ "global": {
1333
+ "default": false,
1334
+ "description": "`g` - Search globally.",
1335
+ "markdownDescription": "`g` - Search globally.",
1336
+ "type": "boolean"
1337
+ },
1338
+ "ignore_case": {
1339
+ "default": false,
1340
+ "description": "`i` - Case-insensitive.",
1341
+ "markdownDescription": "`i` - Case-insensitive.",
1342
+ "type": "boolean"
1343
+ },
1344
+ "multiline": {
1345
+ "default": false,
1346
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1347
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1348
+ "type": "boolean"
1349
+ },
1350
+ "unicode": {
1351
+ "default": false,
1352
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
1353
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
1354
+ "type": "boolean"
1355
+ },
1356
+ "unicode_sets": {
1357
+ "default": false,
1358
+ "description": "`v` - Extended `unicode` mode.",
1359
+ "markdownDescription": "`v` - Extended `unicode` mode.",
1360
+ "type": "boolean"
1361
+ }
1362
+ },
1363
+ "type": "object"
1364
+ },
1365
+ "pattern_message": {
1366
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
1367
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
1368
+ "type": "string"
1369
+ },
1370
+ "required": {
1371
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1372
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1373
+ "type": "boolean"
1374
+ },
1199
1375
  "show_gutter": {
1200
1376
  "default": true,
1201
1377
  "description": "This key toggles the gutter on the left of the editing interface, displaying line numbers and code folding controls.\n\nBy default, this key is `true`.\n\nhttps://cloudcannon.com/documentation/articles/the-source-editor/#source_editor.show_gutter",
@@ -1333,8 +1509,8 @@
1333
1509
  },
1334
1510
  "options": {
1335
1511
  "$ref": "#/definitions/ColorInputOptions",
1336
- "description": "Options that are specific to this `type` of input.",
1337
- "markdownDescription": "Options that are specific to this `type` of input."
1512
+ "description": "Options that are specific to Color Inputs.",
1513
+ "markdownDescription": "Options that are specific to Color Inputs."
1338
1514
  },
1339
1515
  "type": {
1340
1516
  "const": "color",
@@ -1375,6 +1551,75 @@
1375
1551
  ],
1376
1552
  "markdownDescription": "Sets what format the color value is saved as. Defaults to the naming convention, or HEX if that\nis unset.",
1377
1553
  "type": "string"
1554
+ },
1555
+ "max_length": {
1556
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1557
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1558
+ "type": "number"
1559
+ },
1560
+ "min_length": {
1561
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1562
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1563
+ "type": "number"
1564
+ },
1565
+ "pattern": {
1566
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1567
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
1568
+ "type": "string"
1569
+ },
1570
+ "pattern_flags": {
1571
+ "additionalProperties": false,
1572
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1573
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
1574
+ "properties": {
1575
+ "dot_all": {
1576
+ "default": false,
1577
+ "description": "`s` - `.` matches newline characters.",
1578
+ "markdownDescription": "`s` - `.` matches newline characters.",
1579
+ "type": "boolean"
1580
+ },
1581
+ "global": {
1582
+ "default": false,
1583
+ "description": "`g` - Search globally.",
1584
+ "markdownDescription": "`g` - Search globally.",
1585
+ "type": "boolean"
1586
+ },
1587
+ "ignore_case": {
1588
+ "default": false,
1589
+ "description": "`i` - Case-insensitive.",
1590
+ "markdownDescription": "`i` - Case-insensitive.",
1591
+ "type": "boolean"
1592
+ },
1593
+ "multiline": {
1594
+ "default": false,
1595
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1596
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1597
+ "type": "boolean"
1598
+ },
1599
+ "unicode": {
1600
+ "default": false,
1601
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
1602
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
1603
+ "type": "boolean"
1604
+ },
1605
+ "unicode_sets": {
1606
+ "default": false,
1607
+ "description": "`v` - Extended `unicode` mode.",
1608
+ "markdownDescription": "`v` - Extended `unicode` mode.",
1609
+ "type": "boolean"
1610
+ }
1611
+ },
1612
+ "type": "object"
1613
+ },
1614
+ "pattern_message": {
1615
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
1616
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
1617
+ "type": "string"
1618
+ },
1619
+ "required": {
1620
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1621
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
1622
+ "type": "boolean"
1378
1623
  }
1379
1624
  },
1380
1625
  "type": "object"
@@ -1581,6 +1826,18 @@
1581
1826
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1582
1827
  "type": "string"
1583
1828
  },
1829
+ "end_before": {
1830
+ "description": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting a later date and time. If the Input already contains a later date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be in ISO8601 format. If options.start_from is also configured, this key cannot be an earlier date and time.\n\nThis key has no default.",
1831
+ "format": "date-time",
1832
+ "markdownDescription": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from selecting a later date and time. If the Input\nalready contains a later date and time, CloudCannon will require you to change it to a valid\nvalue to save your changes, or discard your unsaved changes.\n\nValue must be in ISO8601 format. If options.start_from is also configured, this key cannot be\nan earlier date and time.\n\nThis key has no default.",
1833
+ "type": "string"
1834
+ },
1835
+ "start_from": {
1836
+ "description": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting an earlier date and time. If the Input already contains an earlier date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be in ISO8601 format. If `options.end_before` is also configured, this key cannot be a later date and time.\n\nThis key has no default.",
1837
+ "format": "date-time",
1838
+ "markdownDescription": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an\nInput. When configured, CloudCannon will prevent you from selecting an earlier date and time.\nIf the Input already contains an earlier date and time, CloudCannon will require you to change\nit to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be in ISO8601 format. If `options.end_before` is also configured, this key cannot be\na later date and time.\n\nThis key has no default.",
1839
+ "type": "string"
1840
+ },
1584
1841
  "timezone": {
1585
1842
  "$ref": "#/definitions/Timezone",
1586
1843
  "default": "Etc/UTC",
@@ -1902,6 +2159,11 @@
1902
2159
  "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can\nprevent pop-in as a page loads.",
1903
2160
  "type": "boolean"
1904
2161
  },
2162
+ "max_length": {
2163
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2164
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2165
+ "type": "number"
2166
+ },
1905
2167
  "mime_type": {
1906
2168
  "description": "Sets the format images are converted to prior to upload. The extension of the file is updated to match. Defaults to keeping the mime type of the uploaded file.",
1907
2169
  "enum": [
@@ -1912,17 +2174,81 @@
1912
2174
  "markdownDescription": "Sets the format images are converted to prior to upload. The extension of the file is updated\nto match. Defaults to keeping the mime type of the uploaded file.",
1913
2175
  "type": "string"
1914
2176
  },
2177
+ "min_length": {
2178
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2179
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2180
+ "type": "number"
2181
+ },
1915
2182
  "paths": {
1916
2183
  "$ref": "#/definitions/Paths",
1917
2184
  "description": "Paths to where new asset files are uploaded to. They also set the default path when choosing existing images, and linking to existing files. Each path is relative to global `source`. Defaults to the global `paths`.",
1918
2185
  "markdownDescription": "Paths to where new asset files are uploaded to. They also set the default path when choosing\nexisting images, and linking to existing files. Each path is relative to global `source`.\nDefaults to the global `paths`."
1919
2186
  },
2187
+ "pattern": {
2188
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2189
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
2190
+ "type": "string"
2191
+ },
2192
+ "pattern_flags": {
2193
+ "additionalProperties": false,
2194
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
2195
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
2196
+ "properties": {
2197
+ "dot_all": {
2198
+ "default": false,
2199
+ "description": "`s` - `.` matches newline characters.",
2200
+ "markdownDescription": "`s` - `.` matches newline characters.",
2201
+ "type": "boolean"
2202
+ },
2203
+ "global": {
2204
+ "default": false,
2205
+ "description": "`g` - Search globally.",
2206
+ "markdownDescription": "`g` - Search globally.",
2207
+ "type": "boolean"
2208
+ },
2209
+ "ignore_case": {
2210
+ "default": false,
2211
+ "description": "`i` - Case-insensitive.",
2212
+ "markdownDescription": "`i` - Case-insensitive.",
2213
+ "type": "boolean"
2214
+ },
2215
+ "multiline": {
2216
+ "default": false,
2217
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
2218
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
2219
+ "type": "boolean"
2220
+ },
2221
+ "unicode": {
2222
+ "default": false,
2223
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
2224
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
2225
+ "type": "boolean"
2226
+ },
2227
+ "unicode_sets": {
2228
+ "default": false,
2229
+ "description": "`v` - Extended `unicode` mode.",
2230
+ "markdownDescription": "`v` - Extended `unicode` mode.",
2231
+ "type": "boolean"
2232
+ }
2233
+ },
2234
+ "type": "object"
2235
+ },
2236
+ "pattern_message": {
2237
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
2238
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
2239
+ "type": "string"
2240
+ },
1920
2241
  "prevent_resize_existing_files": {
1921
2242
  "default": false,
1922
2243
  "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
1923
2244
  "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing\nimages.",
1924
2245
  "type": "boolean"
1925
2246
  },
2247
+ "required": {
2248
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
2249
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
2250
+ "type": "boolean"
2251
+ },
1926
2252
  "resize_style": {
1927
2253
  "default": "contain",
1928
2254
  "description": "Sets how uploaded image files are resized with a bounding box defined by width and height prior to upload. Has no effect when selecting existing images, or if width and height are unset.",
@@ -6740,8 +7066,8 @@
6740
7066
  },
6741
7067
  "options": {
6742
7068
  "additionalProperties": false,
6743
- "description": "Options that are specific to this `type` of input.",
6744
- "markdownDescription": "Options that are specific to this `type` of input.",
7069
+ "description": "Options that are specific to Multichoice Inputs.",
7070
+ "markdownDescription": "Options that are specific to Multichoice Inputs.",
6745
7071
  "properties": {
6746
7072
  "allow_empty": {
6747
7073
  "default": true,
@@ -6758,6 +7084,16 @@
6758
7084
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6759
7085
  "type": "string"
6760
7086
  },
7087
+ "max_items": {
7088
+ "description": "This key defines the maximum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from adding more items to this Input. If the Input already contains more items, CloudCannon will require you to remove items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a lesser number.\n\nThis key has no default.",
7089
+ "markdownDescription": "This key defines the maximum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from adding more items to this Input. If the Input\nalready contains more items, CloudCannon will require you to remove items until the Input\ncontains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a lesser number.\n\nThis key has no default.",
7090
+ "type": "number"
7091
+ },
7092
+ "min_items": {
7093
+ "description": "This key defines the minimum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from removing items from this Input below this value. If the Input already contains fewer items, CloudCannon will require you to add items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a greater number.\n\nThis key has no default.",
7094
+ "markdownDescription": "This key defines the minimum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from removing items from this Input below this value.\nIf the Input already contains fewer items, CloudCannon will require you to add items until the\nInput contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.",
7095
+ "type": "number"
7096
+ },
6761
7097
  "picker_preview": {
6762
7098
  "$ref": "#/definitions/Preview",
6763
7099
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -6779,6 +7115,16 @@
6779
7115
  "description": "Changes the way items are previewed in the CMS.",
6780
7116
  "markdownDescription": "Changes the way items are previewed in the CMS."
6781
7117
  },
7118
+ "required": {
7119
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7120
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7121
+ "type": "boolean"
7122
+ },
7123
+ "unique_on": {
7124
+ "description": "This key defines the JSON Path selector that CloudCannon should use to determine if the value of an Input is unique. When configured, CloudCannon will require the value of the Input to be unique compared to the value defined on the JSON Path. If the Input already contains a non-unique value, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
7125
+ "markdownDescription": "This key defines the JSON Path selector that CloudCannon should use to determine if the value\nof an Input is unique. When configured, CloudCannon will require the value of the Input to be\nunique compared to the value defined on the JSON Path. If the Input already contains a\nnon-unique value, CloudCannon will require you to change it to a valid value to save your\nchanges, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
7126
+ "type": "string"
7127
+ },
6782
7128
  "value_key": {
6783
7129
  "description": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types.",
6784
7130
  "markdownDescription": "Defines the key used for mapping between saved values and objects in values. This changes how\nthe input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\",\n\"title\", then \"name\". Has no effect unless values is an array of objects, the key is used\ninstead for objects, and the value itself is used for primitive types.",
@@ -6903,82 +7249,9 @@
6903
7249
  "type": "string"
6904
7250
  },
6905
7251
  "options": {
6906
- "additionalProperties": false,
6907
- "description": "Options that are specific to this `type` of input.",
6908
- "markdownDescription": "Options that are specific to this `type` of input.",
6909
- "properties": {
6910
- "allow_create": {
6911
- "default": false,
6912
- "description": "Allows new text values to be created at edit time.",
6913
- "markdownDescription": "Allows new text values to be created at edit time.",
6914
- "type": "boolean"
6915
- },
6916
- "allow_empty": {
6917
- "default": true,
6918
- "description": "Provides an empty option alongside the options provided by values.",
6919
- "markdownDescription": "Provides an empty option alongside the options provided by values.",
6920
- "type": "boolean"
6921
- },
6922
- "empty_type": {
6923
- "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6924
- "enum": [
6925
- "null",
6926
- "array"
6927
- ],
6928
- "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6929
- "type": "string"
6930
- },
6931
- "picker_preview": {
6932
- "$ref": "#/definitions/Preview",
6933
- "description": "Changes the way items are previewed in the CMS while being chosen.",
6934
- "markdownDescription": "Changes the way items are previewed in the CMS while being chosen."
6935
- },
6936
- "picker_view": {
6937
- "description": "Controls how selectable options are rendered.",
6938
- "enum": [
6939
- "card",
6940
- "text",
6941
- "gallery",
6942
- "gallery-left"
6943
- ],
6944
- "markdownDescription": "Controls how selectable options are rendered.",
6945
- "type": "string"
6946
- },
6947
- "preview": {
6948
- "$ref": "#/definitions/Preview",
6949
- "description": "Changes the way items are previewed in the CMS.",
6950
- "markdownDescription": "Changes the way items are previewed in the CMS."
6951
- },
6952
- "value_key": {
6953
- "description": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types.",
6954
- "markdownDescription": "Defines the key used for mapping between saved values and objects in values. This changes how\nthe input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\",\n\"title\", then \"name\". Has no effect unless values is an array of objects, the key is used\ninstead for objects, and the value itself is used for primitive types.",
6955
- "type": "string"
6956
- },
6957
- "values": {
6958
- "anyOf": [
6959
- {
6960
- "type": "string"
6961
- },
6962
- {
6963
- "$ref": "#/definitions/SelectValues"
6964
- }
6965
- ],
6966
- "description": "Defines the values available to choose from. Optional, defaults to fetching values from the naming convention (e.g. colors or my_colors for data set colors).",
6967
- "markdownDescription": "Defines the values available to choose from. Optional, defaults to fetching values from the\nnaming convention (e.g. colors or my_colors for data set colors)."
6968
- },
6969
- "view": {
6970
- "description": "Controls how selected items are rendered.",
6971
- "enum": [
6972
- "card",
6973
- "text",
6974
- "gallery",
6975
- "gallery-left"
6976
- ],
6977
- "markdownDescription": "Controls how selected items are rendered.",
6978
- "type": "string"
6979
- }
6980
- },
6981
- "type": "object"
7252
+ "$ref": "#/definitions/MultiselectInputOptions",
7253
+ "description": "Options that are specific to Multiselect Inputs.",
7254
+ "markdownDescription": "Options that are specific to Multiselect Inputs."
6982
7255
  },
6983
7256
  "type": {
6984
7257
  "const": "multiselect",
@@ -6992,6 +7265,59 @@
6992
7265
  ],
6993
7266
  "type": "object"
6994
7267
  },
7268
+ "MultiselectInputOptions": {
7269
+ "additionalProperties": false,
7270
+ "properties": {
7271
+ "disable_add": {
7272
+ "default": false,
7273
+ "description": "Hides the add button, and context menu actions on each array item for adding new items to this Input.",
7274
+ "markdownDescription": "Hides the add button, and context menu actions on each array item for adding new items to this\nInput.",
7275
+ "type": "boolean"
7276
+ },
7277
+ "disable_remove": {
7278
+ "default": false,
7279
+ "description": "Hides the context menu actions on each array item for removing them.",
7280
+ "markdownDescription": "Hides the context menu actions on each array item for removing them.",
7281
+ "type": "boolean"
7282
+ },
7283
+ "disable_reorder": {
7284
+ "default": false,
7285
+ "description": "Hides the controls on each array item for moving them.",
7286
+ "markdownDescription": "Hides the controls on each array item for moving them.",
7287
+ "type": "boolean"
7288
+ },
7289
+ "empty_type": {
7290
+ "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
7291
+ "enum": [
7292
+ "null",
7293
+ "array"
7294
+ ],
7295
+ "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
7296
+ "type": "string"
7297
+ },
7298
+ "max_items": {
7299
+ "description": "This key defines the maximum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from adding more items to this Input. If the Input already contains more items, CloudCannon will require you to remove items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a lesser number.\n\nThis key has no default.",
7300
+ "markdownDescription": "This key defines the maximum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from adding more items to this Input. If the Input\nalready contains more items, CloudCannon will require you to remove items until the Input\ncontains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a lesser number.\n\nThis key has no default.",
7301
+ "type": "number"
7302
+ },
7303
+ "min_items": {
7304
+ "description": "This key defines the minimum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from removing items from this Input below this value. If the Input already contains fewer items, CloudCannon will require you to add items until the Input contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot be a greater number.\n\nThis key has no default.",
7305
+ "markdownDescription": "This key defines the minimum number of items CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from removing items from this Input below this value.\nIf the Input already contains fewer items, CloudCannon will require you to add items until the\nInput contains a valid number to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.min_items` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.",
7306
+ "type": "number"
7307
+ },
7308
+ "required": {
7309
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7310
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7311
+ "type": "boolean"
7312
+ },
7313
+ "unique_on": {
7314
+ "description": "This key defines the JSON Path selector that CloudCannon should use to determine if the value of an Input is unique. When configured, CloudCannon will require the value of the Input to be unique compared to the value defined on the JSON Path. If the Input already contains a non-unique value, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
7315
+ "markdownDescription": "This key defines the JSON Path selector that CloudCannon should use to determine if the value\nof an Input is unique. When configured, CloudCannon will require the value of the Input to be\nunique compared to the value defined on the JSON Path. If the Input already contains a\nnon-unique value, CloudCannon will require you to change it to a valid value to save your\nchanges, or discard your unsaved changes.\n\nValue must be a valid JSON Path.\n\nThis key has no default.",
7316
+ "type": "string"
7317
+ }
7318
+ },
7319
+ "type": "object"
7320
+ },
6995
7321
  "NumberInput": {
6996
7322
  "additionalProperties": false,
6997
7323
  "properties": {
@@ -7074,8 +7400,8 @@
7074
7400
  },
7075
7401
  "options": {
7076
7402
  "$ref": "#/definitions/NumberInputOptions",
7077
- "description": "Options that are specific to this `type` of input.",
7078
- "markdownDescription": "Options that are specific to this `type` of input."
7403
+ "description": "Options that are specific to this Number Inputs.",
7404
+ "markdownDescription": "Options that are specific to this Number Inputs."
7079
7405
  },
7080
7406
  "type": {
7081
7407
  "const": "number",
@@ -7102,15 +7428,20 @@
7102
7428
  "type": "string"
7103
7429
  },
7104
7430
  "max": {
7105
- "description": "The greatest value in the range of permitted values.",
7106
- "markdownDescription": "The greatest value in the range of permitted values.",
7431
+ "description": "This key defines the maximum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a greater numerical value. If the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.min` is also configured, this key cannot be a lesser number.\n\nThis key has no default.",
7432
+ "markdownDescription": "This key defines the maximum numerical value CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from entering a greater numerical value. If the Input\nalready contains a greater numerical value, CloudCannon will require you to enter a valid value\nto save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.min` is also configured, this key cannot be a lesser\nnumber.\n\nThis key has no default.",
7107
7433
  "type": "number"
7108
7434
  },
7109
7435
  "min": {
7110
- "description": "The lowest value in the range of permitted values.",
7111
- "markdownDescription": "The lowest value in the range of permitted values.",
7436
+ "description": "This key defines the minimum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a lesser numerical value. If the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.max` is also configured, this key cannot be a greater number.\n\nThis key has no default.",
7437
+ "markdownDescription": "This key defines the minimum numerical value CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from entering a lesser numerical value. If the Input\nalready contains a lesser numerical value, CloudCannon will require you to enter a valid value\nto save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.max` is also configured, this key cannot be a greater\nnumber.\n\nThis key has no default.",
7112
7438
  "type": "number"
7113
7439
  },
7440
+ "required": {
7441
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7442
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7443
+ "type": "boolean"
7444
+ },
7114
7445
  "step": {
7115
7446
  "description": "A number that specifies the granularity that the value must adhere to, or the special value any, which allows any decimal value between `max` and `min`.",
7116
7447
  "markdownDescription": "A number that specifies the granularity that the value must adhere to, or the special value\nany, which allows any decimal value between `max` and `min`.",
@@ -7201,8 +7532,8 @@
7201
7532
  },
7202
7533
  "options": {
7203
7534
  "$ref": "#/definitions/ObjectInputOptions",
7204
- "description": "Options that are specific to this `type` of input.",
7205
- "markdownDescription": "Options that are specific to this `type` of input."
7535
+ "description": "Options that are specific to Object Inputs.",
7536
+ "markdownDescription": "Options that are specific to Object Inputs."
7206
7537
  },
7207
7538
  "type": {
7208
7539
  "const": "object",
@@ -7327,6 +7658,11 @@
7327
7658
  "description": "Changes the way items are previewed in the CMS.",
7328
7659
  "markdownDescription": "Changes the way items are previewed in the CMS."
7329
7660
  },
7661
+ "required": {
7662
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7663
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
7664
+ "type": "boolean"
7665
+ },
7330
7666
  "structures": {
7331
7667
  "anyOf": [
7332
7668
  {
@@ -7672,8 +8008,8 @@
7672
8008
  },
7673
8009
  "options": {
7674
8010
  "$ref": "#/definitions/RangeInputOptions",
7675
- "description": "Options that are specific to this `type` of input.",
7676
- "markdownDescription": "Options that are specific to this `type` of input."
8011
+ "description": "Options that are specific to Range Inputs.",
8012
+ "markdownDescription": "Options that are specific to Range Inputs."
7677
8013
  },
7678
8014
  "type": {
7679
8015
  "const": "range",
@@ -7701,16 +8037,21 @@
7701
8037
  },
7702
8038
  "max": {
7703
8039
  "default": 10,
7704
- "description": "The greatest value in the range of permitted values.",
7705
- "markdownDescription": "The greatest value in the range of permitted values.",
8040
+ "description": "This key defines the maximum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a greater numerical value. If the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.min` is also configured, this key cannot be a lesser number.",
8041
+ "markdownDescription": "This key defines the maximum numerical value CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from entering a greater numerical value. If the Input\nalready contains a greater numerical value, CloudCannon will require you to enter a valid value\nto save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.min` is also configured, this key cannot be a lesser\nnumber.",
7706
8042
  "type": "number"
7707
8043
  },
7708
8044
  "min": {
7709
8045
  "default": 0,
7710
- "description": "The lowest value in the range of permitted values.",
7711
- "markdownDescription": "The lowest value in the range of permitted values.",
8046
+ "description": "This key defines the minimum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a lesser numerical value. If the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.max` is also configured, this key cannot be a greater number.",
8047
+ "markdownDescription": "This key defines the minimum numerical value CloudCannon will allow in an Input. When\nconfigured, CloudCannon will prevent you from entering a lesser numerical value. If the Input\nalready contains a lesser numerical value, CloudCannon will require you to enter a valid value\nto save your changes, or discard your unsaved changes.\n\nValue can be any integer. If `options.max` is also configured, this key cannot be a greater\nnumber.",
7712
8048
  "type": "number"
7713
8049
  },
8050
+ "required": {
8051
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8052
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8053
+ "type": "boolean"
8054
+ },
7714
8055
  "step": {
7715
8056
  "default": 1,
7716
8057
  "description": "A number that specifies the granularity that the value must adhere to, or the special value any, which allows any decimal value between `max` and `min`.",
@@ -7802,8 +8143,8 @@
7802
8143
  },
7803
8144
  "options": {
7804
8145
  "$ref": "#/definitions/RichTextInputOptions",
7805
- "description": "Options that are specific to this `type` of input.",
7806
- "markdownDescription": "Options that are specific to this `type` of input."
8146
+ "description": "Options that are specific to Rich Text Inputs.",
8147
+ "markdownDescription": "Options that are specific to Rich Text Inputs."
7807
8148
  },
7808
8149
  "type": {
7809
8150
  "description": "Sets an input type, which controls how this input appears and behaves.",
@@ -7985,6 +8326,11 @@
7985
8326
  "markdownDescription": "Enables a control to create hyperlinks around selected text.",
7986
8327
  "type": "boolean"
7987
8328
  },
8329
+ "max_length": {
8330
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8331
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8332
+ "type": "number"
8333
+ },
7988
8334
  "mime_type": {
7989
8335
  "description": "Sets the format images are converted to prior to upload. The extension of the file is updated to match. Defaults to keeping the mime type of the uploaded file.",
7990
8336
  "enum": [
@@ -7995,6 +8341,11 @@
7995
8341
  "markdownDescription": "Sets the format images are converted to prior to upload. The extension of the file is updated\nto match. Defaults to keeping the mime type of the uploaded file.",
7996
8342
  "type": "string"
7997
8343
  },
8344
+ "min_length": {
8345
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8346
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8347
+ "type": "number"
8348
+ },
7998
8349
  "numberedlist": {
7999
8350
  "default": true,
8000
8351
  "description": "Enables a control to insert a numbered list, or to convert selected blocks of text into a numbered list.",
@@ -8012,6 +8363,60 @@
8012
8363
  "description": "Paths to where new asset files are uploaded to. They also set the default path when choosing existing images, and linking to existing files. Each path is relative to global `source`. Defaults to the global `paths`.",
8013
8364
  "markdownDescription": "Paths to where new asset files are uploaded to. They also set the default path when choosing\nexisting images, and linking to existing files. Each path is relative to global `source`.\nDefaults to the global `paths`."
8014
8365
  },
8366
+ "pattern": {
8367
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8368
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8369
+ "type": "string"
8370
+ },
8371
+ "pattern_flags": {
8372
+ "additionalProperties": false,
8373
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
8374
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
8375
+ "properties": {
8376
+ "dot_all": {
8377
+ "default": false,
8378
+ "description": "`s` - `.` matches newline characters.",
8379
+ "markdownDescription": "`s` - `.` matches newline characters.",
8380
+ "type": "boolean"
8381
+ },
8382
+ "global": {
8383
+ "default": false,
8384
+ "description": "`g` - Search globally.",
8385
+ "markdownDescription": "`g` - Search globally.",
8386
+ "type": "boolean"
8387
+ },
8388
+ "ignore_case": {
8389
+ "default": false,
8390
+ "description": "`i` - Case-insensitive.",
8391
+ "markdownDescription": "`i` - Case-insensitive.",
8392
+ "type": "boolean"
8393
+ },
8394
+ "multiline": {
8395
+ "default": false,
8396
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8397
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8398
+ "type": "boolean"
8399
+ },
8400
+ "unicode": {
8401
+ "default": false,
8402
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
8403
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
8404
+ "type": "boolean"
8405
+ },
8406
+ "unicode_sets": {
8407
+ "default": false,
8408
+ "description": "`v` - Extended `unicode` mode.",
8409
+ "markdownDescription": "`v` - Extended `unicode` mode.",
8410
+ "type": "boolean"
8411
+ }
8412
+ },
8413
+ "type": "object"
8414
+ },
8415
+ "pattern_message": {
8416
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
8417
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
8418
+ "type": "string"
8419
+ },
8015
8420
  "prevent_resize_existing_files": {
8016
8421
  "default": false,
8017
8422
  "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
@@ -8035,6 +8440,11 @@
8035
8440
  "markdownDescription": "Enables the control to remove formatting from text. Applies to formatting from `bold`,\n`italic`, `underline`, `strike`, `subscript`, and `superscript`. Does not remove other styles\nor formatting.",
8036
8441
  "type": "boolean"
8037
8442
  },
8443
+ "required": {
8444
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8445
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8446
+ "type": "boolean"
8447
+ },
8038
8448
  "resize_style": {
8039
8449
  "default": "contain",
8040
8450
  "description": "Sets how uploaded image files are resized with a bounding box defined by width and height prior to upload. Has no effect when selecting existing images, or if width and height are unset.",
@@ -8311,8 +8721,8 @@
8311
8721
  },
8312
8722
  "options": {
8313
8723
  "additionalProperties": false,
8314
- "description": "Options that are specific to this `type` of input.",
8315
- "markdownDescription": "Options that are specific to this `type` of input.",
8724
+ "description": "Options that are specific to Select Inputs.",
8725
+ "markdownDescription": "Options that are specific to Select Inputs.",
8316
8726
  "properties": {
8317
8727
  "allow_create": {
8318
8728
  "default": false,
@@ -8335,6 +8745,70 @@
8335
8745
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
8336
8746
  "type": "string"
8337
8747
  },
8748
+ "max_length": {
8749
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8750
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8751
+ "type": "number"
8752
+ },
8753
+ "min_length": {
8754
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8755
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8756
+ "type": "number"
8757
+ },
8758
+ "pattern": {
8759
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8760
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
8761
+ "type": "string"
8762
+ },
8763
+ "pattern_flags": {
8764
+ "additionalProperties": false,
8765
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
8766
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
8767
+ "properties": {
8768
+ "dot_all": {
8769
+ "default": false,
8770
+ "description": "`s` - `.` matches newline characters.",
8771
+ "markdownDescription": "`s` - `.` matches newline characters.",
8772
+ "type": "boolean"
8773
+ },
8774
+ "global": {
8775
+ "default": false,
8776
+ "description": "`g` - Search globally.",
8777
+ "markdownDescription": "`g` - Search globally.",
8778
+ "type": "boolean"
8779
+ },
8780
+ "ignore_case": {
8781
+ "default": false,
8782
+ "description": "`i` - Case-insensitive.",
8783
+ "markdownDescription": "`i` - Case-insensitive.",
8784
+ "type": "boolean"
8785
+ },
8786
+ "multiline": {
8787
+ "default": false,
8788
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8789
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8790
+ "type": "boolean"
8791
+ },
8792
+ "unicode": {
8793
+ "default": false,
8794
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
8795
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
8796
+ "type": "boolean"
8797
+ },
8798
+ "unicode_sets": {
8799
+ "default": false,
8800
+ "description": "`v` - Extended `unicode` mode.",
8801
+ "markdownDescription": "`v` - Extended `unicode` mode.",
8802
+ "type": "boolean"
8803
+ }
8804
+ },
8805
+ "type": "object"
8806
+ },
8807
+ "pattern_message": {
8808
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
8809
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
8810
+ "type": "string"
8811
+ },
8338
8812
  "picker_preview": {
8339
8813
  "$ref": "#/definitions/Preview",
8340
8814
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -8356,6 +8830,11 @@
8356
8830
  "description": "Changes the way items are previewed in the CMS.",
8357
8831
  "markdownDescription": "Changes the way items are previewed in the CMS."
8358
8832
  },
8833
+ "required": {
8834
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8835
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
8836
+ "type": "boolean"
8837
+ },
8359
8838
  "value_key": {
8360
8839
  "description": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types.",
8361
8840
  "markdownDescription": "Defines the key used for mapping between saved values and objects in values. This changes how\nthe input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\",\n\"title\", then \"name\". Has no effect unless values is an array of objects, the key is used\ninstead for objects, and the value itself is used for primitive types.",
@@ -9691,8 +10170,8 @@
9691
10170
  },
9692
10171
  "options": {
9693
10172
  "$ref": "#/definitions/TextInputOptions",
9694
- "description": "Options that are specific to this `type` of input.",
9695
- "markdownDescription": "Options that are specific to this `type` of input."
10173
+ "description": "Options that are specific to Text Inputs.",
10174
+ "markdownDescription": "Options that are specific to Text Inputs."
9696
10175
  },
9697
10176
  "type": {
9698
10177
  "description": "Sets an input type, which controls how this input appears and behaves.",
@@ -9732,10 +10211,79 @@
9732
10211
  "description": "Icon shown beside the input.",
9733
10212
  "markdownDescription": "Icon shown beside the input."
9734
10213
  },
10214
+ "max_length": {
10215
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10216
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10217
+ "type": "number"
10218
+ },
10219
+ "min_length": {
10220
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10221
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10222
+ "type": "number"
10223
+ },
10224
+ "pattern": {
10225
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10226
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10227
+ "type": "string"
10228
+ },
10229
+ "pattern_flags": {
10230
+ "additionalProperties": false,
10231
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
10232
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
10233
+ "properties": {
10234
+ "dot_all": {
10235
+ "default": false,
10236
+ "description": "`s` - `.` matches newline characters.",
10237
+ "markdownDescription": "`s` - `.` matches newline characters.",
10238
+ "type": "boolean"
10239
+ },
10240
+ "global": {
10241
+ "default": false,
10242
+ "description": "`g` - Search globally.",
10243
+ "markdownDescription": "`g` - Search globally.",
10244
+ "type": "boolean"
10245
+ },
10246
+ "ignore_case": {
10247
+ "default": false,
10248
+ "description": "`i` - Case-insensitive.",
10249
+ "markdownDescription": "`i` - Case-insensitive.",
10250
+ "type": "boolean"
10251
+ },
10252
+ "multiline": {
10253
+ "default": false,
10254
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10255
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10256
+ "type": "boolean"
10257
+ },
10258
+ "unicode": {
10259
+ "default": false,
10260
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
10261
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
10262
+ "type": "boolean"
10263
+ },
10264
+ "unicode_sets": {
10265
+ "default": false,
10266
+ "description": "`v` - Extended `unicode` mode.",
10267
+ "markdownDescription": "`v` - Extended `unicode` mode.",
10268
+ "type": "boolean"
10269
+ }
10270
+ },
10271
+ "type": "object"
10272
+ },
10273
+ "pattern_message": {
10274
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
10275
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
10276
+ "type": "string"
10277
+ },
9735
10278
  "placeholder": {
9736
10279
  "description": "Text shown when this input has no value.",
9737
10280
  "markdownDescription": "Text shown when this input has no value.",
9738
10281
  "type": "string"
10282
+ },
10283
+ "required": {
10284
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10285
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10286
+ "type": "boolean"
9739
10287
  }
9740
10288
  },
9741
10289
  "type": "object"
@@ -9822,8 +10370,8 @@
9822
10370
  },
9823
10371
  "options": {
9824
10372
  "$ref": "#/definitions/TextareaInputOptions",
9825
- "description": "Options that are specific to this `type` of input.",
9826
- "markdownDescription": "Options that are specific to this `type` of input."
10373
+ "description": "Options that are specific to Textarea Inputs.",
10374
+ "markdownDescription": "Options that are specific to Textarea Inputs."
9827
10375
  },
9828
10376
  "type": {
9829
10377
  "const": "textarea",
@@ -9854,11 +10402,80 @@
9854
10402
  "description": "Icon shown beside the input.",
9855
10403
  "markdownDescription": "Icon shown beside the input."
9856
10404
  },
10405
+ "max_length": {
10406
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10407
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10408
+ "type": "number"
10409
+ },
10410
+ "min_length": {
10411
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10412
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10413
+ "type": "number"
10414
+ },
10415
+ "pattern": {
10416
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10417
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
10418
+ "type": "string"
10419
+ },
10420
+ "pattern_flags": {
10421
+ "additionalProperties": false,
10422
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
10423
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
10424
+ "properties": {
10425
+ "dot_all": {
10426
+ "default": false,
10427
+ "description": "`s` - `.` matches newline characters.",
10428
+ "markdownDescription": "`s` - `.` matches newline characters.",
10429
+ "type": "boolean"
10430
+ },
10431
+ "global": {
10432
+ "default": false,
10433
+ "description": "`g` - Search globally.",
10434
+ "markdownDescription": "`g` - Search globally.",
10435
+ "type": "boolean"
10436
+ },
10437
+ "ignore_case": {
10438
+ "default": false,
10439
+ "description": "`i` - Case-insensitive.",
10440
+ "markdownDescription": "`i` - Case-insensitive.",
10441
+ "type": "boolean"
10442
+ },
10443
+ "multiline": {
10444
+ "default": false,
10445
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10446
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10447
+ "type": "boolean"
10448
+ },
10449
+ "unicode": {
10450
+ "default": false,
10451
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
10452
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
10453
+ "type": "boolean"
10454
+ },
10455
+ "unicode_sets": {
10456
+ "default": false,
10457
+ "description": "`v` - Extended `unicode` mode.",
10458
+ "markdownDescription": "`v` - Extended `unicode` mode.",
10459
+ "type": "boolean"
10460
+ }
10461
+ },
10462
+ "type": "object"
10463
+ },
10464
+ "pattern_message": {
10465
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
10466
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
10467
+ "type": "string"
10468
+ },
9857
10469
  "placeholder": {
9858
10470
  "description": "Text shown when this input has no value.",
9859
10471
  "markdownDescription": "Text shown when this input has no value.",
9860
10472
  "type": "string"
9861
10473
  },
10474
+ "required": {
10475
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10476
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10477
+ "type": "boolean"
10478
+ },
9862
10479
  "show_count": {
9863
10480
  "default": false,
9864
10481
  "description": "Shows a character counter below the input if enabled.",
@@ -9992,9 +10609,26 @@
9992
10609
  "type": "string"
9993
10610
  },
9994
10611
  "options": {
9995
- "$ref": "#/definitions/WithEmptyTypeText",
10612
+ "additionalProperties": false,
9996
10613
  "description": "Options that are specific to Time inputs.",
9997
- "markdownDescription": "Options that are specific to Time inputs."
10614
+ "markdownDescription": "Options that are specific to Time inputs.",
10615
+ "properties": {
10616
+ "empty_type": {
10617
+ "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10618
+ "enum": [
10619
+ "null",
10620
+ "string"
10621
+ ],
10622
+ "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10623
+ "type": "string"
10624
+ },
10625
+ "required": {
10626
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10627
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
10628
+ "type": "boolean"
10629
+ }
10630
+ },
10631
+ "type": "object"
9998
10632
  },
9999
10633
  "type": {
10000
10634
  "const": "time",
@@ -10880,6 +11514,11 @@
10880
11514
  "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can\nprevent pop-in as a page loads.",
10881
11515
  "type": "boolean"
10882
11516
  },
11517
+ "max_length": {
11518
+ "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input to be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11519
+ "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too long. If the Input\nalready contains a longer value, CloudCannon will require you to remove characters until the\nInput contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any non-negative integer. If this key is set to 0, CloudCannon requires the Input\nto be empty. If `options.min_length` is also configured, this key cannot be a smaller number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11520
+ "type": "number"
11521
+ },
10883
11522
  "mime_type": {
10884
11523
  "description": "Sets the format images are converted to prior to upload. The extension of the file is updated to match. Defaults to keeping the mime type of the uploaded file.",
10885
11524
  "enum": [
@@ -10890,17 +11529,81 @@
10890
11529
  "markdownDescription": "Sets the format images are converted to prior to upload. The extension of the file is updated\nto match. Defaults to keeping the mime type of the uploaded file.",
10891
11530
  "type": "string"
10892
11531
  },
11532
+ "min_length": {
11533
+ "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11534
+ "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an\nInput. When configured, CloudCannon will warn you when an Input value is too short. If the\nInput already contains a shorter value, CloudCannon will require you to add characters until\nthe Input contains a valid string to save your changes, or discard your unsaved changes.\n\nValue can be any positive integer. If `options.max_length` is also configured, this key cannot\nbe a greater number.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11535
+ "type": "number"
11536
+ },
10893
11537
  "paths": {
10894
11538
  "$ref": "#/definitions/Paths",
10895
11539
  "description": "Paths to where new asset files are uploaded to. They also set the default path when choosing existing images, and linking to existing files. Each path is relative to global `source`. Defaults to the global `paths`.",
10896
11540
  "markdownDescription": "Paths to where new asset files are uploaded to. They also set the default path when choosing\nexisting images, and linking to existing files. Each path is relative to global `source`.\nDefaults to the global `paths`."
10897
11541
  },
11542
+ "pattern": {
11543
+ "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11544
+ "markdownDescription": "This key defines a regular expression that the Input value must match. When configured,\nCloudCannon will require you to enter a value that matches the REGEX pattern. If the Input\nalready contains an invalid value, CloudCannon will require you to enter a valid string to save\nyour changes, or discard your unsaved changes.\n\nValue must be a valid REGEX string.\n\nThis key has no default.\n\nTo use this key in a Select Input, `options.allow_create` must be set to true.",
11545
+ "type": "string"
11546
+ },
11547
+ "pattern_flags": {
11548
+ "additionalProperties": false,
11549
+ "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
11550
+ "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in\n`options.pattern`. This key requires you to define `options.pattern`.\n\nThe flags available match those a subset for [JavaScript regular\nexpressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#advanced_searching_with_flags).\n\nThis key has no default.",
11551
+ "properties": {
11552
+ "dot_all": {
11553
+ "default": false,
11554
+ "description": "`s` - `.` matches newline characters.",
11555
+ "markdownDescription": "`s` - `.` matches newline characters.",
11556
+ "type": "boolean"
11557
+ },
11558
+ "global": {
11559
+ "default": false,
11560
+ "description": "`g` - Search globally.",
11561
+ "markdownDescription": "`g` - Search globally.",
11562
+ "type": "boolean"
11563
+ },
11564
+ "ignore_case": {
11565
+ "default": false,
11566
+ "description": "`i` - Case-insensitive.",
11567
+ "markdownDescription": "`i` - Case-insensitive.",
11568
+ "type": "boolean"
11569
+ },
11570
+ "multiline": {
11571
+ "default": false,
11572
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
11573
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
11574
+ "type": "boolean"
11575
+ },
11576
+ "unicode": {
11577
+ "default": false,
11578
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
11579
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
11580
+ "type": "boolean"
11581
+ },
11582
+ "unicode_sets": {
11583
+ "default": false,
11584
+ "description": "`v` - Extended `unicode` mode.",
11585
+ "markdownDescription": "`v` - Extended `unicode` mode.",
11586
+ "type": "boolean"
11587
+ }
11588
+ },
11589
+ "type": "object"
11590
+ },
11591
+ "pattern_message": {
11592
+ "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.\n\nThis key has no default.",
11593
+ "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This\nkey requires you to define `options.pattern`.\n\nThis key has no default.",
11594
+ "type": "string"
11595
+ },
10898
11596
  "prevent_resize_existing_files": {
10899
11597
  "default": false,
10900
11598
  "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
10901
11599
  "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing\nimages.",
10902
11600
  "type": "boolean"
10903
11601
  },
11602
+ "required": {
11603
+ "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
11604
+ "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true,\nCloudCannon will require you to enter a value to save your changes, or discard your unsaved\nchanges.\n\nBy default, this key is false (i.e, CloudCannon does not require this Input to have a value).",
11605
+ "type": "boolean"
11606
+ },
10904
11607
  "resize_style": {
10905
11608
  "default": "contain",
10906
11609
  "description": "Sets how uploaded image files are resized with a bounding box defined by width and height prior to upload. Has no effect when selecting existing images, or if width and height are unset.",
@@ -10945,21 +11648,6 @@
10945
11648
  },
10946
11649
  "type": "object"
10947
11650
  },
10948
- "WithEmptyTypeText": {
10949
- "additionalProperties": false,
10950
- "properties": {
10951
- "empty_type": {
10952
- "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10953
- "enum": [
10954
- "null",
10955
- "string"
10956
- ],
10957
- "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10958
- "type": "string"
10959
- }
10960
- },
10961
- "type": "object"
10962
- },
10963
11651
  "WithPaths": {
10964
11652
  "additionalProperties": false,
10965
11653
  "properties": {