@cloudcannon/configuration-types 0.0.28 → 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"
@@ -804,8 +842,8 @@
804
842
  },
805
843
  "options": {
806
844
  "additionalProperties": false,
807
- "description": "Options that are specific to this `type` of input.",
808
- "markdownDescription": "Options that are specific to this `type` of input.",
845
+ "description": "Options that are specific to Choice Inputs.",
846
+ "markdownDescription": "Options that are specific to Choice Inputs.",
809
847
  "properties": {
810
848
  "allow_empty": {
811
849
  "default": true,
@@ -822,6 +860,70 @@
822
860
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
823
861
  "type": "string"
824
862
  },
863
+ "max_length": {
864
+ "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.",
865
+ "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.",
866
+ "type": "number"
867
+ },
868
+ "min_length": {
869
+ "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.",
870
+ "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.",
871
+ "type": "number"
872
+ },
873
+ "pattern": {
874
+ "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.",
875
+ "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.",
876
+ "type": "string"
877
+ },
878
+ "pattern_flags": {
879
+ "additionalProperties": false,
880
+ "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.",
881
+ "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.",
882
+ "properties": {
883
+ "dot_all": {
884
+ "default": false,
885
+ "description": "`s` - `.` matches newline characters.",
886
+ "markdownDescription": "`s` - `.` matches newline characters.",
887
+ "type": "boolean"
888
+ },
889
+ "global": {
890
+ "default": false,
891
+ "description": "`g` - Search globally.",
892
+ "markdownDescription": "`g` - Search globally.",
893
+ "type": "boolean"
894
+ },
895
+ "ignore_case": {
896
+ "default": false,
897
+ "description": "`i` - Case-insensitive.",
898
+ "markdownDescription": "`i` - Case-insensitive.",
899
+ "type": "boolean"
900
+ },
901
+ "multiline": {
902
+ "default": false,
903
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
904
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
905
+ "type": "boolean"
906
+ },
907
+ "unicode": {
908
+ "default": false,
909
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
910
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
911
+ "type": "boolean"
912
+ },
913
+ "unicode_sets": {
914
+ "default": false,
915
+ "description": "`v` - Extended `unicode` mode.",
916
+ "markdownDescription": "`v` - Extended `unicode` mode.",
917
+ "type": "boolean"
918
+ }
919
+ },
920
+ "type": "object"
921
+ },
922
+ "pattern_message": {
923
+ "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.",
924
+ "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.",
925
+ "type": "string"
926
+ },
825
927
  "picker_preview": {
826
928
  "$ref": "#/definitions/Preview",
827
929
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -843,6 +945,11 @@
843
945
  "description": "Changes the way items are previewed in the CMS.",
844
946
  "markdownDescription": "Changes the way items are previewed in the CMS."
845
947
  },
948
+ "required": {
949
+ "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).",
950
+ "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).",
951
+ "type": "boolean"
952
+ },
846
953
  "value_key": {
847
954
  "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.",
848
955
  "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.",
@@ -968,8 +1075,8 @@
968
1075
  },
969
1076
  "options": {
970
1077
  "$ref": "#/definitions/CodeInputOptions",
971
- "description": "Options that are specific to this `type` of input.",
972
- "markdownDescription": "Options that are specific to this `type` of input."
1078
+ "description": "Options that are specific to Code Inputs.",
1079
+ "markdownDescription": "Options that are specific to Code Inputs."
973
1080
  },
974
1081
  "type": {
975
1082
  "const": "code",
@@ -995,18 +1102,87 @@
995
1102
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
996
1103
  "type": "string"
997
1104
  },
1105
+ "max_length": {
1106
+ "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.",
1107
+ "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.",
1108
+ "type": "number"
1109
+ },
998
1110
  "max_visible_lines": {
999
1111
  "default": 30,
1000
1112
  "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.",
1001
1113
  "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.",
1002
1114
  "type": "number"
1003
1115
  },
1116
+ "min_length": {
1117
+ "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.",
1118
+ "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.",
1119
+ "type": "number"
1120
+ },
1004
1121
  "min_visible_lines": {
1005
1122
  "default": 10,
1006
1123
  "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`.",
1007
1124
  "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`.",
1008
1125
  "type": "number"
1009
1126
  },
1127
+ "pattern": {
1128
+ "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.",
1129
+ "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.",
1130
+ "type": "string"
1131
+ },
1132
+ "pattern_flags": {
1133
+ "additionalProperties": false,
1134
+ "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.",
1135
+ "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.",
1136
+ "properties": {
1137
+ "dot_all": {
1138
+ "default": false,
1139
+ "description": "`s` - `.` matches newline characters.",
1140
+ "markdownDescription": "`s` - `.` matches newline characters.",
1141
+ "type": "boolean"
1142
+ },
1143
+ "global": {
1144
+ "default": false,
1145
+ "description": "`g` - Search globally.",
1146
+ "markdownDescription": "`g` - Search globally.",
1147
+ "type": "boolean"
1148
+ },
1149
+ "ignore_case": {
1150
+ "default": false,
1151
+ "description": "`i` - Case-insensitive.",
1152
+ "markdownDescription": "`i` - Case-insensitive.",
1153
+ "type": "boolean"
1154
+ },
1155
+ "multiline": {
1156
+ "default": false,
1157
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1158
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1159
+ "type": "boolean"
1160
+ },
1161
+ "unicode": {
1162
+ "default": false,
1163
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
1164
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
1165
+ "type": "boolean"
1166
+ },
1167
+ "unicode_sets": {
1168
+ "default": false,
1169
+ "description": "`v` - Extended `unicode` mode.",
1170
+ "markdownDescription": "`v` - Extended `unicode` mode.",
1171
+ "type": "boolean"
1172
+ }
1173
+ },
1174
+ "type": "object"
1175
+ },
1176
+ "pattern_message": {
1177
+ "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.",
1178
+ "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.",
1179
+ "type": "string"
1180
+ },
1181
+ "required": {
1182
+ "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).",
1183
+ "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).",
1184
+ "type": "boolean"
1185
+ },
1010
1186
  "show_gutter": {
1011
1187
  "default": true,
1012
1188
  "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",
@@ -1144,8 +1320,8 @@
1144
1320
  },
1145
1321
  "options": {
1146
1322
  "$ref": "#/definitions/ColorInputOptions",
1147
- "description": "Options that are specific to this `type` of input.",
1148
- "markdownDescription": "Options that are specific to this `type` of input."
1323
+ "description": "Options that are specific to Color Inputs.",
1324
+ "markdownDescription": "Options that are specific to Color Inputs."
1149
1325
  },
1150
1326
  "type": {
1151
1327
  "const": "color",
@@ -1186,6 +1362,75 @@
1186
1362
  ],
1187
1363
  "markdownDescription": "Sets what format the color value is saved as. Defaults to the naming convention, or HEX if that\nis unset.",
1188
1364
  "type": "string"
1365
+ },
1366
+ "max_length": {
1367
+ "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.",
1368
+ "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.",
1369
+ "type": "number"
1370
+ },
1371
+ "min_length": {
1372
+ "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.",
1373
+ "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.",
1374
+ "type": "number"
1375
+ },
1376
+ "pattern": {
1377
+ "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.",
1378
+ "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.",
1379
+ "type": "string"
1380
+ },
1381
+ "pattern_flags": {
1382
+ "additionalProperties": false,
1383
+ "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.",
1384
+ "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.",
1385
+ "properties": {
1386
+ "dot_all": {
1387
+ "default": false,
1388
+ "description": "`s` - `.` matches newline characters.",
1389
+ "markdownDescription": "`s` - `.` matches newline characters.",
1390
+ "type": "boolean"
1391
+ },
1392
+ "global": {
1393
+ "default": false,
1394
+ "description": "`g` - Search globally.",
1395
+ "markdownDescription": "`g` - Search globally.",
1396
+ "type": "boolean"
1397
+ },
1398
+ "ignore_case": {
1399
+ "default": false,
1400
+ "description": "`i` - Case-insensitive.",
1401
+ "markdownDescription": "`i` - Case-insensitive.",
1402
+ "type": "boolean"
1403
+ },
1404
+ "multiline": {
1405
+ "default": false,
1406
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1407
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
1408
+ "type": "boolean"
1409
+ },
1410
+ "unicode": {
1411
+ "default": false,
1412
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
1413
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
1414
+ "type": "boolean"
1415
+ },
1416
+ "unicode_sets": {
1417
+ "default": false,
1418
+ "description": "`v` - Extended `unicode` mode.",
1419
+ "markdownDescription": "`v` - Extended `unicode` mode.",
1420
+ "type": "boolean"
1421
+ }
1422
+ },
1423
+ "type": "object"
1424
+ },
1425
+ "pattern_message": {
1426
+ "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.",
1427
+ "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.",
1428
+ "type": "string"
1429
+ },
1430
+ "required": {
1431
+ "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).",
1432
+ "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).",
1433
+ "type": "boolean"
1189
1434
  }
1190
1435
  },
1191
1436
  "type": "object"
@@ -1392,6 +1637,18 @@
1392
1637
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1393
1638
  "type": "string"
1394
1639
  },
1640
+ "end_before": {
1641
+ "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.",
1642
+ "format": "date-time",
1643
+ "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.",
1644
+ "type": "string"
1645
+ },
1646
+ "start_from": {
1647
+ "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.",
1648
+ "format": "date-time",
1649
+ "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.",
1650
+ "type": "string"
1651
+ },
1395
1652
  "timezone": {
1396
1653
  "$ref": "#/definitions/Timezone",
1397
1654
  "default": "Etc/UTC",
@@ -1624,14 +1881,15 @@
1624
1881
  },
1625
1882
  "options": {
1626
1883
  "$ref": "#/definitions/FileInputOptions",
1627
- "description": "Options that are specific to File inputs.",
1628
- "markdownDescription": "Options that are specific to File inputs."
1884
+ "description": "Options that are specific to File, Image and Document inputs.",
1885
+ "markdownDescription": "Options that are specific to File, Image and Document inputs."
1629
1886
  },
1630
1887
  "type": {
1631
1888
  "description": "Sets an input type, which controls how this input appears and behaves.",
1632
1889
  "enum": [
1633
1890
  "file",
1634
- "document"
1891
+ "document",
1892
+ "image"
1635
1893
  ],
1636
1894
  "markdownDescription": "Sets an input type, which controls how this input appears and behaves.",
1637
1895
  "type": "string"
@@ -1668,6 +1926,24 @@
1668
1926
  "markdownDescription": "If you have one or more DAMs connected to your site, you can use this key to list which asset\nsources can be uploaded to and selected from.",
1669
1927
  "type": "array"
1670
1928
  },
1929
+ "disable_direct_input": {
1930
+ "default": false,
1931
+ "description": "Prevents typing into the text input, while still allowing context menu options to change the value.",
1932
+ "markdownDescription": "Prevents typing into the text input, while still allowing context menu options to change the\nvalue.",
1933
+ "type": "boolean"
1934
+ },
1935
+ "disable_upload_file": {
1936
+ "default": false,
1937
+ "description": "Disables the context menu option and the drop area for uploading files.",
1938
+ "markdownDescription": "Disables the context menu option and the drop area for uploading files.",
1939
+ "type": "boolean"
1940
+ },
1941
+ "disable_upload_file_in_file_browser": {
1942
+ "default": false,
1943
+ "description": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window.",
1944
+ "markdownDescription": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window.",
1945
+ "type": "boolean"
1946
+ },
1671
1947
  "empty_type": {
1672
1948
  "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1673
1949
  "enum": [
@@ -1677,10 +1953,153 @@
1677
1953
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
1678
1954
  "type": "string"
1679
1955
  },
1956
+ "expandable": {
1957
+ "default": false,
1958
+ "description": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to upload. Has no effect if files are not resized.",
1959
+ "markdownDescription": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to\nupload. Has no effect if files are not resized.",
1960
+ "type": "boolean"
1961
+ },
1962
+ "height": {
1963
+ "description": "Defines the height of the bounding box used in the image resizing process defined with resize_style.",
1964
+ "markdownDescription": "Defines the height of the bounding box used in the image resizing process defined with\nresize_style.",
1965
+ "type": "number"
1966
+ },
1967
+ "image_size_attributes": {
1968
+ "default": true,
1969
+ "description": "Instructs the editor to save `width` and `height` attributes on the image elements. This can prevent pop-in as a page loads.",
1970
+ "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can\nprevent pop-in as a page loads.",
1971
+ "type": "boolean"
1972
+ },
1973
+ "max_length": {
1974
+ "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.",
1975
+ "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.",
1976
+ "type": "number"
1977
+ },
1978
+ "mime_type": {
1979
+ "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.",
1980
+ "enum": [
1981
+ "image/jpeg",
1982
+ "image/png",
1983
+ "image/webp"
1984
+ ],
1985
+ "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.",
1986
+ "type": "string"
1987
+ },
1988
+ "min_length": {
1989
+ "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.",
1990
+ "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.",
1991
+ "type": "number"
1992
+ },
1680
1993
  "paths": {
1681
1994
  "$ref": "#/definitions/Paths",
1682
1995
  "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`.",
1683
1996
  "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`."
1997
+ },
1998
+ "pattern": {
1999
+ "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.",
2000
+ "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.",
2001
+ "type": "string"
2002
+ },
2003
+ "pattern_flags": {
2004
+ "additionalProperties": false,
2005
+ "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.",
2006
+ "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.",
2007
+ "properties": {
2008
+ "dot_all": {
2009
+ "default": false,
2010
+ "description": "`s` - `.` matches newline characters.",
2011
+ "markdownDescription": "`s` - `.` matches newline characters.",
2012
+ "type": "boolean"
2013
+ },
2014
+ "global": {
2015
+ "default": false,
2016
+ "description": "`g` - Search globally.",
2017
+ "markdownDescription": "`g` - Search globally.",
2018
+ "type": "boolean"
2019
+ },
2020
+ "ignore_case": {
2021
+ "default": false,
2022
+ "description": "`i` - Case-insensitive.",
2023
+ "markdownDescription": "`i` - Case-insensitive.",
2024
+ "type": "boolean"
2025
+ },
2026
+ "multiline": {
2027
+ "default": false,
2028
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
2029
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
2030
+ "type": "boolean"
2031
+ },
2032
+ "unicode": {
2033
+ "default": false,
2034
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
2035
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
2036
+ "type": "boolean"
2037
+ },
2038
+ "unicode_sets": {
2039
+ "default": false,
2040
+ "description": "`v` - Extended `unicode` mode.",
2041
+ "markdownDescription": "`v` - Extended `unicode` mode.",
2042
+ "type": "boolean"
2043
+ }
2044
+ },
2045
+ "type": "object"
2046
+ },
2047
+ "pattern_message": {
2048
+ "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.",
2049
+ "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.",
2050
+ "type": "string"
2051
+ },
2052
+ "prevent_resize_existing_files": {
2053
+ "default": false,
2054
+ "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
2055
+ "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing\nimages.",
2056
+ "type": "boolean"
2057
+ },
2058
+ "required": {
2059
+ "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).",
2060
+ "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).",
2061
+ "type": "boolean"
2062
+ },
2063
+ "resize_style": {
2064
+ "default": "contain",
2065
+ "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.",
2066
+ "enum": [
2067
+ "cover",
2068
+ "contain",
2069
+ "stretch",
2070
+ "crop"
2071
+ ],
2072
+ "markdownDescription": "Sets how uploaded image files are resized with a bounding box defined by width and height prior\nto upload. Has no effect when selecting existing images, or if width and height are unset.",
2073
+ "type": "string"
2074
+ },
2075
+ "sizes": {
2076
+ "description": "Definitions for creating additional images of different sizes when uploading or selecting existing files.",
2077
+ "items": {
2078
+ "additionalProperties": false,
2079
+ "properties": {
2080
+ "size": {
2081
+ "description": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).",
2082
+ "markdownDescription": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of\nthe image (e.g. 2x, 3x, 100w, 360w).",
2083
+ "type": "string"
2084
+ },
2085
+ "target": {
2086
+ "description": "A reference to another input that is given the path to this additional image file.",
2087
+ "markdownDescription": "A reference to another input that is given the path to this additional image file.",
2088
+ "type": "string"
2089
+ }
2090
+ },
2091
+ "required": [
2092
+ "size"
2093
+ ],
2094
+ "type": "object"
2095
+ },
2096
+ "markdownDescription": "Definitions for creating additional images of different sizes when uploading or selecting\nexisting files.",
2097
+ "type": "array"
2098
+ },
2099
+ "width": {
2100
+ "description": "Defines the width of the bounding box used in the image resizing process defined with resize_style.",
2101
+ "markdownDescription": "Defines the width of the bounding box used in the image resizing process defined with\nresize_style.",
2102
+ "type": "number"
1684
2103
  }
1685
2104
  },
1686
2105
  "type": "object"
@@ -5427,224 +5846,10 @@
5427
5846
  },
5428
5847
  "type": "object"
5429
5848
  },
5430
- "ImageInput": {
5431
- "additionalProperties": false,
5432
- "properties": {
5433
- "cascade": {
5434
- "description": "Specifies whether or not this input configuration should be merged with any matching, less specific configuration.",
5435
- "markdownDescription": "Specifies whether or not this input configuration should be merged with any matching, less\nspecific configuration.",
5436
- "type": "boolean"
5437
- },
5438
- "comment": {
5439
- "description": "Changes the subtext below the _Label_. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed.",
5440
- "markdownDescription": "Changes the subtext below the _Label_. Has no default. Supports a limited set of Markdown:\nlinks, bold, italic, subscript, superscript, and inline code elements are allowed.",
5441
- "type": "string"
5442
- },
5443
- "context": {
5444
- "additionalProperties": false,
5445
- "description": "Adds an expandable section of rich text below the input.",
5446
- "markdownDescription": "Adds an expandable section of rich text below the input.",
5447
- "properties": {
5448
- "content": {
5449
- "description": "The rich text content shown when opened. Supports a limited set of Markdown.",
5450
- "markdownDescription": "The rich text content shown when opened. Supports a limited set of Markdown.",
5451
- "type": "string"
5452
- },
5453
- "icon": {
5454
- "$ref": "#/definitions/Icon",
5455
- "description": "The icon shown when not open.",
5456
- "markdownDescription": "The icon shown when not open."
5457
- },
5458
- "open": {
5459
- "description": "Makes the content visible initially.",
5460
- "markdownDescription": "Makes the content visible initially.",
5461
- "type": "boolean"
5462
- },
5463
- "title": {
5464
- "description": "The text shown when not open. Defaults to \"Context\" if unset.",
5465
- "markdownDescription": "The text shown when not open. Defaults to \"Context\" if unset.",
5466
- "type": "string"
5467
- }
5468
- },
5469
- "type": "object"
5470
- },
5471
- "disable_instance_value_rehydration": {
5472
- "default": false,
5473
- "description": "Prevents the default where inputs configured with an `instance_value` are rehydrated with a new value when duplicated in the CMS.",
5474
- "markdownDescription": "Prevents the default where inputs configured with an `instance_value` are rehydrated with a new\nvalue when duplicated in the CMS.",
5475
- "type": "boolean"
5476
- },
5477
- "disabled": {
5478
- "default": false,
5479
- "description": "Toggles if this input can be edited.",
5480
- "markdownDescription": "Toggles if this input can be edited.",
5481
- "type": [
5482
- "boolean",
5483
- "string"
5484
- ]
5485
- },
5486
- "documentation": {
5487
- "$ref": "#/definitions/Documentation",
5488
- "description": "Provides a custom link for documentation for editors shown above input.",
5489
- "markdownDescription": "Provides a custom link for documentation for editors shown above input."
5490
- },
5491
- "hidden": {
5492
- "default": false,
5493
- "description": "Toggles the visibility of this input.",
5494
- "markdownDescription": "Toggles the visibility of this input.",
5495
- "type": [
5496
- "boolean",
5497
- "string"
5498
- ]
5499
- },
5500
- "instance_value": {
5501
- "$ref": "#/definitions/InstanceValue",
5502
- "description": "Controls if and how the value of this input is instantiated when created. This occurs when creating files, or adding array items containing the configured input.",
5503
- "markdownDescription": "Controls if and how the value of this input is instantiated when created. This occurs when\ncreating files, or adding array items containing the configured input."
5504
- },
5505
- "label": {
5506
- "description": "Optionally changes the text above this input.",
5507
- "markdownDescription": "Optionally changes the text above this input.",
5508
- "type": "string"
5509
- },
5510
- "options": {
5511
- "$ref": "#/definitions/ImageInputOptions",
5512
- "description": "Options that are specific to Image inputs.",
5513
- "markdownDescription": "Options that are specific to Image inputs."
5514
- },
5515
- "type": {
5516
- "const": "image",
5517
- "description": "Sets an input type, which controls how this input appears and behaves.",
5518
- "markdownDescription": "Sets an input type, which controls how this input appears and behaves.",
5519
- "type": "string"
5520
- }
5521
- },
5522
- "required": [
5523
- "type"
5524
- ],
5525
- "type": "object"
5526
- },
5527
- "ImageInputOptions": {
5528
- "additionalProperties": false,
5529
- "properties": {
5530
- "accepts_mime_types": {
5531
- "anyOf": [
5532
- {
5533
- "items": {
5534
- "$ref": "#/definitions/MimeType"
5535
- },
5536
- "type": "array"
5537
- },
5538
- {
5539
- "type": "string"
5540
- }
5541
- ],
5542
- "description": "Restricts which file types are available to select or upload to this input. Accepted format is an array or comma-separated string of MIME types. The special value '*' means any type is accepted.",
5543
- "markdownDescription": "Restricts which file types are available to select or upload to this input. Accepted format is\nan array or comma-separated string of MIME types. The special value '*' means any type is\naccepted."
5544
- },
5545
- "allowed_sources": {
5546
- "description": "If you have one or more DAMs connected to your site, you can use this key to list which asset sources can be uploaded to and selected from.",
5547
- "items": {
5548
- "type": "string"
5549
- },
5550
- "markdownDescription": "If you have one or more DAMs connected to your site, you can use this key to list which asset\nsources can be uploaded to and selected from.",
5551
- "type": "array"
5552
- },
5553
- "empty_type": {
5554
- "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
5555
- "enum": [
5556
- "null",
5557
- "string"
5558
- ],
5559
- "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
5560
- "type": "string"
5561
- },
5562
- "expandable": {
5563
- "default": false,
5564
- "description": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to upload. Has no effect if files are not resized.",
5565
- "markdownDescription": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to\nupload. Has no effect if files are not resized.",
5566
- "type": "boolean"
5567
- },
5568
- "height": {
5569
- "description": "Defines the height of the bounding box used in the image resizing process defined with resize_style.",
5570
- "markdownDescription": "Defines the height of the bounding box used in the image resizing process defined with\nresize_style.",
5571
- "type": "number"
5572
- },
5573
- "image_size_attributes": {
5574
- "default": true,
5575
- "description": "Instructs the editor to save `width` and `height` attributes on the image elements. This can prevent pop-in as a page loads.",
5576
- "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can\nprevent pop-in as a page loads.",
5577
- "type": "boolean"
5578
- },
5579
- "mime_type": {
5580
- "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.",
5581
- "enum": [
5582
- "image/jpeg",
5583
- "image/png",
5584
- "image/webp"
5585
- ],
5586
- "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.",
5587
- "type": "string"
5588
- },
5589
- "paths": {
5590
- "$ref": "#/definitions/Paths",
5591
- "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`.",
5592
- "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`."
5593
- },
5594
- "prevent_resize_existing_files": {
5595
- "default": false,
5596
- "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
5597
- "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing\nimages.",
5598
- "type": "boolean"
5599
- },
5600
- "resize_style": {
5601
- "default": "contain",
5602
- "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.",
5603
- "enum": [
5604
- "cover",
5605
- "contain",
5606
- "stretch",
5607
- "crop"
5608
- ],
5609
- "markdownDescription": "Sets how uploaded image files are resized with a bounding box defined by width and height prior\nto upload. Has no effect when selecting existing images, or if width and height are unset.",
5610
- "type": "string"
5611
- },
5612
- "sizes": {
5613
- "description": "Definitions for creating additional images of different sizes when uploading or selecting existing files.",
5614
- "items": {
5615
- "additionalProperties": false,
5616
- "properties": {
5617
- "size": {
5618
- "description": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).",
5619
- "markdownDescription": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of\nthe image (e.g. 2x, 3x, 100w, 360w).",
5620
- "type": "string"
5621
- },
5622
- "target": {
5623
- "description": "A reference to another input that is given the path to this additional image file.",
5624
- "markdownDescription": "A reference to another input that is given the path to this additional image file.",
5625
- "type": "string"
5626
- }
5627
- },
5628
- "required": [
5629
- "size"
5630
- ],
5631
- "type": "object"
5632
- },
5633
- "markdownDescription": "Definitions for creating additional images of different sizes when uploading or selecting\nexisting files.",
5634
- "type": "array"
5635
- },
5636
- "width": {
5637
- "description": "Defines the width of the bounding box used in the image resizing process defined with resize_style.",
5638
- "markdownDescription": "Defines the width of the bounding box used in the image resizing process defined with\nresize_style.",
5639
- "type": "number"
5640
- }
5641
- },
5642
- "type": "object"
5643
- },
5644
- "Input": {
5645
- "anyOf": [
5646
- {
5647
- "$ref": "#/definitions/KnownInput"
5849
+ "Input": {
5850
+ "anyOf": [
5851
+ {
5852
+ "$ref": "#/definitions/KnownInput"
5648
5853
  },
5649
5854
  {
5650
5855
  "$ref": "#/definitions/UnknownInput"
@@ -5777,21 +5982,6 @@
5777
5982
  "$ref": "#/definitions/RangeInput"
5778
5983
  }
5779
5984
  },
5780
- {
5781
- "if": {
5782
- "properties": {
5783
- "type": {
5784
- "const": "url",
5785
- "description": "Sets an input type, which controls how this input appears and behaves.",
5786
- "markdownDescription": "Sets an input type, which controls how this input appears and behaves.",
5787
- "type": "string"
5788
- }
5789
- }
5790
- },
5791
- "then": {
5792
- "$ref": "#/definitions/UrlInput"
5793
- }
5794
- },
5795
5985
  {
5796
5986
  "if": {
5797
5987
  "properties": {
@@ -5850,7 +6040,8 @@
5850
6040
  "description": "Sets an input type, which controls how this input appears and behaves.",
5851
6041
  "enum": [
5852
6042
  "file",
5853
- "document"
6043
+ "document",
6044
+ "image"
5854
6045
  ],
5855
6046
  "markdownDescription": "Sets an input type, which controls how this input appears and behaves.",
5856
6047
  "type": "string"
@@ -5865,7 +6056,7 @@
5865
6056
  "if": {
5866
6057
  "properties": {
5867
6058
  "type": {
5868
- "const": "image",
6059
+ "const": "url",
5869
6060
  "description": "Sets an input type, which controls how this input appears and behaves.",
5870
6061
  "markdownDescription": "Sets an input type, which controls how this input appears and behaves.",
5871
6062
  "type": "string"
@@ -5873,7 +6064,7 @@
5873
6064
  }
5874
6065
  },
5875
6066
  "then": {
5876
- "$ref": "#/definitions/ImageInput"
6067
+ "$ref": "#/definitions/UrlInput"
5877
6068
  }
5878
6069
  },
5879
6070
  {
@@ -6000,7 +6191,6 @@
6000
6191
  "switch",
6001
6192
  "number",
6002
6193
  "range",
6003
- "url",
6004
6194
  "html",
6005
6195
  "markdown",
6006
6196
  "date",
@@ -6009,6 +6199,7 @@
6009
6199
  "file",
6010
6200
  "document",
6011
6201
  "image",
6202
+ "url",
6012
6203
  "select",
6013
6204
  "multiselect",
6014
6205
  "choice",
@@ -6686,8 +6877,8 @@
6686
6877
  },
6687
6878
  "options": {
6688
6879
  "additionalProperties": false,
6689
- "description": "Options that are specific to this `type` of input.",
6690
- "markdownDescription": "Options that are specific to this `type` of input.",
6880
+ "description": "Options that are specific to Multichoice Inputs.",
6881
+ "markdownDescription": "Options that are specific to Multichoice Inputs.",
6691
6882
  "properties": {
6692
6883
  "allow_empty": {
6693
6884
  "default": true,
@@ -6704,6 +6895,16 @@
6704
6895
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6705
6896
  "type": "string"
6706
6897
  },
6898
+ "max_items": {
6899
+ "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.",
6900
+ "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.",
6901
+ "type": "number"
6902
+ },
6903
+ "min_items": {
6904
+ "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.",
6905
+ "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.",
6906
+ "type": "number"
6907
+ },
6707
6908
  "picker_preview": {
6708
6909
  "$ref": "#/definitions/Preview",
6709
6910
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -6725,6 +6926,16 @@
6725
6926
  "description": "Changes the way items are previewed in the CMS.",
6726
6927
  "markdownDescription": "Changes the way items are previewed in the CMS."
6727
6928
  },
6929
+ "required": {
6930
+ "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).",
6931
+ "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).",
6932
+ "type": "boolean"
6933
+ },
6934
+ "unique_on": {
6935
+ "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.",
6936
+ "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.",
6937
+ "type": "string"
6938
+ },
6728
6939
  "value_key": {
6729
6940
  "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.",
6730
6941
  "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.",
@@ -6849,82 +7060,9 @@
6849
7060
  "type": "string"
6850
7061
  },
6851
7062
  "options": {
6852
- "additionalProperties": false,
6853
- "description": "Options that are specific to this `type` of input.",
6854
- "markdownDescription": "Options that are specific to this `type` of input.",
6855
- "properties": {
6856
- "allow_create": {
6857
- "default": false,
6858
- "description": "Allows new text values to be created at edit time.",
6859
- "markdownDescription": "Allows new text values to be created at edit time.",
6860
- "type": "boolean"
6861
- },
6862
- "allow_empty": {
6863
- "default": true,
6864
- "description": "Provides an empty option alongside the options provided by values.",
6865
- "markdownDescription": "Provides an empty option alongside the options provided by values.",
6866
- "type": "boolean"
6867
- },
6868
- "empty_type": {
6869
- "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6870
- "enum": [
6871
- "null",
6872
- "array"
6873
- ],
6874
- "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
6875
- "type": "string"
6876
- },
6877
- "picker_preview": {
6878
- "$ref": "#/definitions/Preview",
6879
- "description": "Changes the way items are previewed in the CMS while being chosen.",
6880
- "markdownDescription": "Changes the way items are previewed in the CMS while being chosen."
6881
- },
6882
- "picker_view": {
6883
- "description": "Controls how selectable options are rendered.",
6884
- "enum": [
6885
- "card",
6886
- "text",
6887
- "gallery",
6888
- "gallery-left"
6889
- ],
6890
- "markdownDescription": "Controls how selectable options are rendered.",
6891
- "type": "string"
6892
- },
6893
- "preview": {
6894
- "$ref": "#/definitions/Preview",
6895
- "description": "Changes the way items are previewed in the CMS.",
6896
- "markdownDescription": "Changes the way items are previewed in the CMS."
6897
- },
6898
- "value_key": {
6899
- "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.",
6900
- "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.",
6901
- "type": "string"
6902
- },
6903
- "values": {
6904
- "anyOf": [
6905
- {
6906
- "type": "string"
6907
- },
6908
- {
6909
- "$ref": "#/definitions/SelectValues"
6910
- }
6911
- ],
6912
- "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).",
6913
- "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)."
6914
- },
6915
- "view": {
6916
- "description": "Controls how selected items are rendered.",
6917
- "enum": [
6918
- "card",
6919
- "text",
6920
- "gallery",
6921
- "gallery-left"
6922
- ],
6923
- "markdownDescription": "Controls how selected items are rendered.",
6924
- "type": "string"
6925
- }
6926
- },
6927
- "type": "object"
7063
+ "$ref": "#/definitions/MultiselectInputOptions",
7064
+ "description": "Options that are specific to Multiselect Inputs.",
7065
+ "markdownDescription": "Options that are specific to Multiselect Inputs."
6928
7066
  },
6929
7067
  "type": {
6930
7068
  "const": "multiselect",
@@ -6938,6 +7076,59 @@
6938
7076
  ],
6939
7077
  "type": "object"
6940
7078
  },
7079
+ "MultiselectInputOptions": {
7080
+ "additionalProperties": false,
7081
+ "properties": {
7082
+ "disable_add": {
7083
+ "default": false,
7084
+ "description": "Hides the add button, and context menu actions on each array item for adding new items to this Input.",
7085
+ "markdownDescription": "Hides the add button, and context menu actions on each array item for adding new items to this\nInput.",
7086
+ "type": "boolean"
7087
+ },
7088
+ "disable_remove": {
7089
+ "default": false,
7090
+ "description": "Hides the context menu actions on each array item for removing them.",
7091
+ "markdownDescription": "Hides the context menu actions on each array item for removing them.",
7092
+ "type": "boolean"
7093
+ },
7094
+ "disable_reorder": {
7095
+ "default": false,
7096
+ "description": "Hides the controls on each array item for moving them.",
7097
+ "markdownDescription": "Hides the controls on each array item for moving them.",
7098
+ "type": "boolean"
7099
+ },
7100
+ "empty_type": {
7101
+ "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
7102
+ "enum": [
7103
+ "null",
7104
+ "array"
7105
+ ],
7106
+ "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
7107
+ "type": "string"
7108
+ },
7109
+ "max_items": {
7110
+ "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.",
7111
+ "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.",
7112
+ "type": "number"
7113
+ },
7114
+ "min_items": {
7115
+ "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.",
7116
+ "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.",
7117
+ "type": "number"
7118
+ },
7119
+ "required": {
7120
+ "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).",
7121
+ "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).",
7122
+ "type": "boolean"
7123
+ },
7124
+ "unique_on": {
7125
+ "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.",
7126
+ "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.",
7127
+ "type": "string"
7128
+ }
7129
+ },
7130
+ "type": "object"
7131
+ },
6941
7132
  "NumberInput": {
6942
7133
  "additionalProperties": false,
6943
7134
  "properties": {
@@ -7020,8 +7211,8 @@
7020
7211
  },
7021
7212
  "options": {
7022
7213
  "$ref": "#/definitions/NumberInputOptions",
7023
- "description": "Options that are specific to this `type` of input.",
7024
- "markdownDescription": "Options that are specific to this `type` of input."
7214
+ "description": "Options that are specific to this Number Inputs.",
7215
+ "markdownDescription": "Options that are specific to this Number Inputs."
7025
7216
  },
7026
7217
  "type": {
7027
7218
  "const": "number",
@@ -7048,15 +7239,20 @@
7048
7239
  "type": "string"
7049
7240
  },
7050
7241
  "max": {
7051
- "description": "The greatest value in the range of permitted values.",
7052
- "markdownDescription": "The greatest value in the range of permitted values.",
7242
+ "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.",
7243
+ "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.",
7053
7244
  "type": "number"
7054
7245
  },
7055
7246
  "min": {
7056
- "description": "The lowest value in the range of permitted values.",
7057
- "markdownDescription": "The lowest value in the range of permitted values.",
7247
+ "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.",
7248
+ "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.",
7058
7249
  "type": "number"
7059
7250
  },
7251
+ "required": {
7252
+ "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).",
7253
+ "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).",
7254
+ "type": "boolean"
7255
+ },
7060
7256
  "step": {
7061
7257
  "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`.",
7062
7258
  "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`.",
@@ -7147,8 +7343,8 @@
7147
7343
  },
7148
7344
  "options": {
7149
7345
  "$ref": "#/definitions/ObjectInputOptions",
7150
- "description": "Options that are specific to this `type` of input.",
7151
- "markdownDescription": "Options that are specific to this `type` of input."
7346
+ "description": "Options that are specific to Object Inputs.",
7347
+ "markdownDescription": "Options that are specific to Object Inputs."
7152
7348
  },
7153
7349
  "type": {
7154
7350
  "const": "object",
@@ -7273,6 +7469,11 @@
7273
7469
  "description": "Changes the way items are previewed in the CMS.",
7274
7470
  "markdownDescription": "Changes the way items are previewed in the CMS."
7275
7471
  },
7472
+ "required": {
7473
+ "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).",
7474
+ "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).",
7475
+ "type": "boolean"
7476
+ },
7276
7477
  "structures": {
7277
7478
  "anyOf": [
7278
7479
  {
@@ -7618,8 +7819,8 @@
7618
7819
  },
7619
7820
  "options": {
7620
7821
  "$ref": "#/definitions/RangeInputOptions",
7621
- "description": "Options that are specific to this `type` of input.",
7622
- "markdownDescription": "Options that are specific to this `type` of input."
7822
+ "description": "Options that are specific to Range Inputs.",
7823
+ "markdownDescription": "Options that are specific to Range Inputs."
7623
7824
  },
7624
7825
  "type": {
7625
7826
  "const": "range",
@@ -7647,16 +7848,21 @@
7647
7848
  },
7648
7849
  "max": {
7649
7850
  "default": 10,
7650
- "description": "The greatest value in the range of permitted values.",
7651
- "markdownDescription": "The greatest value in the range of permitted values.",
7851
+ "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.",
7852
+ "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.",
7652
7853
  "type": "number"
7653
7854
  },
7654
7855
  "min": {
7655
7856
  "default": 0,
7656
- "description": "The lowest value in the range of permitted values.",
7657
- "markdownDescription": "The lowest value in the range of permitted values.",
7857
+ "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.",
7858
+ "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.",
7658
7859
  "type": "number"
7659
7860
  },
7861
+ "required": {
7862
+ "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).",
7863
+ "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).",
7864
+ "type": "boolean"
7865
+ },
7660
7866
  "step": {
7661
7867
  "default": 1,
7662
7868
  "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`.",
@@ -7966,8 +8172,8 @@
7966
8172
  },
7967
8173
  "options": {
7968
8174
  "$ref": "#/definitions/RichTextInputOptions",
7969
- "description": "Options that are specific to this `type` of input.",
7970
- "markdownDescription": "Options that are specific to this `type` of input."
8175
+ "description": "Options that are specific to Rich Text Inputs.",
8176
+ "markdownDescription": "Options that are specific to Rich Text Inputs."
7971
8177
  },
7972
8178
  "type": {
7973
8179
  "description": "Sets an input type, which controls how this input appears and behaves.",
@@ -8149,6 +8355,11 @@
8149
8355
  "markdownDescription": "Enables a control to create hyperlinks around selected text.",
8150
8356
  "type": "boolean"
8151
8357
  },
8358
+ "max_length": {
8359
+ "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.",
8360
+ "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.",
8361
+ "type": "number"
8362
+ },
8152
8363
  "mime_type": {
8153
8364
  "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.",
8154
8365
  "enum": [
@@ -8159,6 +8370,11 @@
8159
8370
  "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.",
8160
8371
  "type": "string"
8161
8372
  },
8373
+ "min_length": {
8374
+ "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.",
8375
+ "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.",
8376
+ "type": "number"
8377
+ },
8162
8378
  "numberedlist": {
8163
8379
  "default": true,
8164
8380
  "description": "Enables a control to insert a numbered list, or to convert selected blocks of text into a numbered list.",
@@ -8176,6 +8392,60 @@
8176
8392
  "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`.",
8177
8393
  "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`."
8178
8394
  },
8395
+ "pattern": {
8396
+ "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.",
8397
+ "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.",
8398
+ "type": "string"
8399
+ },
8400
+ "pattern_flags": {
8401
+ "additionalProperties": false,
8402
+ "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.",
8403
+ "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.",
8404
+ "properties": {
8405
+ "dot_all": {
8406
+ "default": false,
8407
+ "description": "`s` - `.` matches newline characters.",
8408
+ "markdownDescription": "`s` - `.` matches newline characters.",
8409
+ "type": "boolean"
8410
+ },
8411
+ "global": {
8412
+ "default": false,
8413
+ "description": "`g` - Search globally.",
8414
+ "markdownDescription": "`g` - Search globally.",
8415
+ "type": "boolean"
8416
+ },
8417
+ "ignore_case": {
8418
+ "default": false,
8419
+ "description": "`i` - Case-insensitive.",
8420
+ "markdownDescription": "`i` - Case-insensitive.",
8421
+ "type": "boolean"
8422
+ },
8423
+ "multiline": {
8424
+ "default": false,
8425
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8426
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8427
+ "type": "boolean"
8428
+ },
8429
+ "unicode": {
8430
+ "default": false,
8431
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
8432
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
8433
+ "type": "boolean"
8434
+ },
8435
+ "unicode_sets": {
8436
+ "default": false,
8437
+ "description": "`v` - Extended `unicode` mode.",
8438
+ "markdownDescription": "`v` - Extended `unicode` mode.",
8439
+ "type": "boolean"
8440
+ }
8441
+ },
8442
+ "type": "object"
8443
+ },
8444
+ "pattern_message": {
8445
+ "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.",
8446
+ "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.",
8447
+ "type": "string"
8448
+ },
8179
8449
  "prevent_resize_existing_files": {
8180
8450
  "default": false,
8181
8451
  "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
@@ -8199,6 +8469,11 @@
8199
8469
  "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.",
8200
8470
  "type": "boolean"
8201
8471
  },
8472
+ "required": {
8473
+ "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).",
8474
+ "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).",
8475
+ "type": "boolean"
8476
+ },
8202
8477
  "resize_style": {
8203
8478
  "default": "contain",
8204
8479
  "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.",
@@ -8475,8 +8750,8 @@
8475
8750
  },
8476
8751
  "options": {
8477
8752
  "additionalProperties": false,
8478
- "description": "Options that are specific to this `type` of input.",
8479
- "markdownDescription": "Options that are specific to this `type` of input.",
8753
+ "description": "Options that are specific to Select Inputs.",
8754
+ "markdownDescription": "Options that are specific to Select Inputs.",
8480
8755
  "properties": {
8481
8756
  "allow_create": {
8482
8757
  "default": false,
@@ -8499,6 +8774,70 @@
8499
8774
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
8500
8775
  "type": "string"
8501
8776
  },
8777
+ "max_length": {
8778
+ "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.",
8779
+ "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.",
8780
+ "type": "number"
8781
+ },
8782
+ "min_length": {
8783
+ "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.",
8784
+ "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.",
8785
+ "type": "number"
8786
+ },
8787
+ "pattern": {
8788
+ "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.",
8789
+ "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.",
8790
+ "type": "string"
8791
+ },
8792
+ "pattern_flags": {
8793
+ "additionalProperties": false,
8794
+ "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.",
8795
+ "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.",
8796
+ "properties": {
8797
+ "dot_all": {
8798
+ "default": false,
8799
+ "description": "`s` - `.` matches newline characters.",
8800
+ "markdownDescription": "`s` - `.` matches newline characters.",
8801
+ "type": "boolean"
8802
+ },
8803
+ "global": {
8804
+ "default": false,
8805
+ "description": "`g` - Search globally.",
8806
+ "markdownDescription": "`g` - Search globally.",
8807
+ "type": "boolean"
8808
+ },
8809
+ "ignore_case": {
8810
+ "default": false,
8811
+ "description": "`i` - Case-insensitive.",
8812
+ "markdownDescription": "`i` - Case-insensitive.",
8813
+ "type": "boolean"
8814
+ },
8815
+ "multiline": {
8816
+ "default": false,
8817
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8818
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
8819
+ "type": "boolean"
8820
+ },
8821
+ "unicode": {
8822
+ "default": false,
8823
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
8824
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
8825
+ "type": "boolean"
8826
+ },
8827
+ "unicode_sets": {
8828
+ "default": false,
8829
+ "description": "`v` - Extended `unicode` mode.",
8830
+ "markdownDescription": "`v` - Extended `unicode` mode.",
8831
+ "type": "boolean"
8832
+ }
8833
+ },
8834
+ "type": "object"
8835
+ },
8836
+ "pattern_message": {
8837
+ "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.",
8838
+ "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.",
8839
+ "type": "string"
8840
+ },
8502
8841
  "picker_preview": {
8503
8842
  "$ref": "#/definitions/Preview",
8504
8843
  "description": "Changes the way items are previewed in the CMS while being chosen.",
@@ -8520,6 +8859,11 @@
8520
8859
  "description": "Changes the way items are previewed in the CMS.",
8521
8860
  "markdownDescription": "Changes the way items are previewed in the CMS."
8522
8861
  },
8862
+ "required": {
8863
+ "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).",
8864
+ "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).",
8865
+ "type": "boolean"
8866
+ },
8523
8867
  "value_key": {
8524
8868
  "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.",
8525
8869
  "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.",
@@ -9855,8 +10199,8 @@
9855
10199
  },
9856
10200
  "options": {
9857
10201
  "$ref": "#/definitions/TextInputOptions",
9858
- "description": "Options that are specific to this `type` of input.",
9859
- "markdownDescription": "Options that are specific to this `type` of input."
10202
+ "description": "Options that are specific to Text Inputs.",
10203
+ "markdownDescription": "Options that are specific to Text Inputs."
9860
10204
  },
9861
10205
  "type": {
9862
10206
  "description": "Sets an input type, which controls how this input appears and behaves.",
@@ -9896,10 +10240,79 @@
9896
10240
  "description": "Icon shown beside the input.",
9897
10241
  "markdownDescription": "Icon shown beside the input."
9898
10242
  },
10243
+ "max_length": {
10244
+ "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.",
10245
+ "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.",
10246
+ "type": "number"
10247
+ },
10248
+ "min_length": {
10249
+ "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.",
10250
+ "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.",
10251
+ "type": "number"
10252
+ },
10253
+ "pattern": {
10254
+ "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.",
10255
+ "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.",
10256
+ "type": "string"
10257
+ },
10258
+ "pattern_flags": {
10259
+ "additionalProperties": false,
10260
+ "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.",
10261
+ "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.",
10262
+ "properties": {
10263
+ "dot_all": {
10264
+ "default": false,
10265
+ "description": "`s` - `.` matches newline characters.",
10266
+ "markdownDescription": "`s` - `.` matches newline characters.",
10267
+ "type": "boolean"
10268
+ },
10269
+ "global": {
10270
+ "default": false,
10271
+ "description": "`g` - Search globally.",
10272
+ "markdownDescription": "`g` - Search globally.",
10273
+ "type": "boolean"
10274
+ },
10275
+ "ignore_case": {
10276
+ "default": false,
10277
+ "description": "`i` - Case-insensitive.",
10278
+ "markdownDescription": "`i` - Case-insensitive.",
10279
+ "type": "boolean"
10280
+ },
10281
+ "multiline": {
10282
+ "default": false,
10283
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10284
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10285
+ "type": "boolean"
10286
+ },
10287
+ "unicode": {
10288
+ "default": false,
10289
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
10290
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
10291
+ "type": "boolean"
10292
+ },
10293
+ "unicode_sets": {
10294
+ "default": false,
10295
+ "description": "`v` - Extended `unicode` mode.",
10296
+ "markdownDescription": "`v` - Extended `unicode` mode.",
10297
+ "type": "boolean"
10298
+ }
10299
+ },
10300
+ "type": "object"
10301
+ },
10302
+ "pattern_message": {
10303
+ "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.",
10304
+ "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.",
10305
+ "type": "string"
10306
+ },
9899
10307
  "placeholder": {
9900
10308
  "description": "Text shown when this input has no value.",
9901
10309
  "markdownDescription": "Text shown when this input has no value.",
9902
10310
  "type": "string"
10311
+ },
10312
+ "required": {
10313
+ "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).",
10314
+ "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).",
10315
+ "type": "boolean"
9903
10316
  }
9904
10317
  },
9905
10318
  "type": "object"
@@ -9986,8 +10399,8 @@
9986
10399
  },
9987
10400
  "options": {
9988
10401
  "$ref": "#/definitions/TextareaInputOptions",
9989
- "description": "Options that are specific to this `type` of input.",
9990
- "markdownDescription": "Options that are specific to this `type` of input."
10402
+ "description": "Options that are specific to Textarea Inputs.",
10403
+ "markdownDescription": "Options that are specific to Textarea Inputs."
9991
10404
  },
9992
10405
  "type": {
9993
10406
  "const": "textarea",
@@ -10018,11 +10431,80 @@
10018
10431
  "description": "Icon shown beside the input.",
10019
10432
  "markdownDescription": "Icon shown beside the input."
10020
10433
  },
10434
+ "max_length": {
10435
+ "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.",
10436
+ "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.",
10437
+ "type": "number"
10438
+ },
10439
+ "min_length": {
10440
+ "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.",
10441
+ "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.",
10442
+ "type": "number"
10443
+ },
10444
+ "pattern": {
10445
+ "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.",
10446
+ "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.",
10447
+ "type": "string"
10448
+ },
10449
+ "pattern_flags": {
10450
+ "additionalProperties": false,
10451
+ "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.",
10452
+ "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.",
10453
+ "properties": {
10454
+ "dot_all": {
10455
+ "default": false,
10456
+ "description": "`s` - `.` matches newline characters.",
10457
+ "markdownDescription": "`s` - `.` matches newline characters.",
10458
+ "type": "boolean"
10459
+ },
10460
+ "global": {
10461
+ "default": false,
10462
+ "description": "`g` - Search globally.",
10463
+ "markdownDescription": "`g` - Search globally.",
10464
+ "type": "boolean"
10465
+ },
10466
+ "ignore_case": {
10467
+ "default": false,
10468
+ "description": "`i` - Case-insensitive.",
10469
+ "markdownDescription": "`i` - Case-insensitive.",
10470
+ "type": "boolean"
10471
+ },
10472
+ "multiline": {
10473
+ "default": false,
10474
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10475
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
10476
+ "type": "boolean"
10477
+ },
10478
+ "unicode": {
10479
+ "default": false,
10480
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
10481
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
10482
+ "type": "boolean"
10483
+ },
10484
+ "unicode_sets": {
10485
+ "default": false,
10486
+ "description": "`v` - Extended `unicode` mode.",
10487
+ "markdownDescription": "`v` - Extended `unicode` mode.",
10488
+ "type": "boolean"
10489
+ }
10490
+ },
10491
+ "type": "object"
10492
+ },
10493
+ "pattern_message": {
10494
+ "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.",
10495
+ "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.",
10496
+ "type": "string"
10497
+ },
10021
10498
  "placeholder": {
10022
10499
  "description": "Text shown when this input has no value.",
10023
10500
  "markdownDescription": "Text shown when this input has no value.",
10024
10501
  "type": "string"
10025
10502
  },
10503
+ "required": {
10504
+ "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).",
10505
+ "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).",
10506
+ "type": "boolean"
10507
+ },
10026
10508
  "show_count": {
10027
10509
  "default": false,
10028
10510
  "description": "Shows a character counter below the input if enabled.",
@@ -10156,9 +10638,26 @@
10156
10638
  "type": "string"
10157
10639
  },
10158
10640
  "options": {
10159
- "$ref": "#/definitions/WithEmptyTypeText",
10641
+ "additionalProperties": false,
10160
10642
  "description": "Options that are specific to Time inputs.",
10161
- "markdownDescription": "Options that are specific to Time inputs."
10643
+ "markdownDescription": "Options that are specific to Time inputs.",
10644
+ "properties": {
10645
+ "empty_type": {
10646
+ "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10647
+ "enum": [
10648
+ "null",
10649
+ "string"
10650
+ ],
10651
+ "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10652
+ "type": "string"
10653
+ },
10654
+ "required": {
10655
+ "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).",
10656
+ "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).",
10657
+ "type": "boolean"
10658
+ }
10659
+ },
10660
+ "type": "object"
10162
10661
  },
10163
10662
  "type": {
10164
10663
  "const": "time",
@@ -10941,8 +11440,8 @@
10941
11440
  },
10942
11441
  "options": {
10943
11442
  "$ref": "#/definitions/UrlInputOptions",
10944
- "description": "Options that are specific to this `type` of input.",
10945
- "markdownDescription": "Options that are specific to this `type` of input."
11443
+ "description": "Options that are specific to URL inputs.",
11444
+ "markdownDescription": "Options that are specific to URL inputs."
10946
11445
  },
10947
11446
  "type": {
10948
11447
  "const": "url",
@@ -10959,6 +11458,47 @@
10959
11458
  "UrlInputOptions": {
10960
11459
  "additionalProperties": false,
10961
11460
  "properties": {
11461
+ "accepts_mime_types": {
11462
+ "anyOf": [
11463
+ {
11464
+ "items": {
11465
+ "$ref": "#/definitions/MimeType"
11466
+ },
11467
+ "type": "array"
11468
+ },
11469
+ {
11470
+ "type": "string"
11471
+ }
11472
+ ],
11473
+ "description": "Restricts which file types are available to select or upload to this input. Accepted format is an array or comma-separated string of MIME types. The special value '*' means any type is accepted.",
11474
+ "markdownDescription": "Restricts which file types are available to select or upload to this input. Accepted format is\nan array or comma-separated string of MIME types. The special value '*' means any type is\naccepted."
11475
+ },
11476
+ "allowed_sources": {
11477
+ "description": "If you have one or more DAMs connected to your site, you can use this key to list which asset sources can be uploaded to and selected from.",
11478
+ "items": {
11479
+ "type": "string"
11480
+ },
11481
+ "markdownDescription": "If you have one or more DAMs connected to your site, you can use this key to list which asset\nsources can be uploaded to and selected from.",
11482
+ "type": "array"
11483
+ },
11484
+ "disable_direct_input": {
11485
+ "default": false,
11486
+ "description": "Prevents typing into the text input, while still allowing context menu options to change the value.",
11487
+ "markdownDescription": "Prevents typing into the text input, while still allowing context menu options to change the\nvalue.",
11488
+ "type": "boolean"
11489
+ },
11490
+ "disable_upload_file": {
11491
+ "default": false,
11492
+ "description": "Disables the context menu option and the drop area for uploading files.",
11493
+ "markdownDescription": "Disables the context menu option and the drop area for uploading files.",
11494
+ "type": "boolean"
11495
+ },
11496
+ "disable_upload_file_in_file_browser": {
11497
+ "default": false,
11498
+ "description": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window.",
11499
+ "markdownDescription": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window.",
11500
+ "type": "boolean"
11501
+ },
10962
11502
  "empty_type": {
10963
11503
  "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10964
11504
  "enum": [
@@ -10968,6 +11508,17 @@
10968
11508
  "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
10969
11509
  "type": "string"
10970
11510
  },
11511
+ "expandable": {
11512
+ "default": false,
11513
+ "description": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to upload. Has no effect if files are not resized.",
11514
+ "markdownDescription": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to\nupload. Has no effect if files are not resized.",
11515
+ "type": "boolean"
11516
+ },
11517
+ "height": {
11518
+ "description": "Defines the height of the bounding box used in the image resizing process defined with resize_style.",
11519
+ "markdownDescription": "Defines the height of the bounding box used in the image resizing process defined with\nresize_style.",
11520
+ "type": "number"
11521
+ },
10971
11522
  "hide_link_to_email_address": {
10972
11523
  "default": false,
10973
11524
  "description": "Hides the option to link to an email address. This does not prevent typing a `mailto:` link in the input.",
@@ -10976,8 +11527,8 @@
10976
11527
  },
10977
11528
  "hide_link_to_file": {
10978
11529
  "default": false,
10979
- "description": "Hides the option to link to a file. This does not prevent typing a file path in the input.",
10980
- "markdownDescription": "Hides the option to link to a file. This does not prevent typing a file path in the input.",
11530
+ "description": "Hides the options to link to an existing file, and upload a new file. This does not prevent typing a file path in the input.",
11531
+ "markdownDescription": "Hides the options to link to an existing file, and upload a new file. This does not prevent\ntyping a file path in the input.",
10981
11532
  "type": "boolean"
10982
11533
  },
10983
11534
  "hide_link_to_page": {
@@ -10986,25 +11537,142 @@
10986
11537
  "markdownDescription": "Hides the option to link to a page. This does not prevent typing a file's output URL in the\ninput.",
10987
11538
  "type": "boolean"
10988
11539
  },
11540
+ "image_size_attributes": {
11541
+ "default": true,
11542
+ "description": "Instructs the editor to save `width` and `height` attributes on the image elements. This can prevent pop-in as a page loads.",
11543
+ "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can\nprevent pop-in as a page loads.",
11544
+ "type": "boolean"
11545
+ },
11546
+ "max_length": {
11547
+ "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.",
11548
+ "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.",
11549
+ "type": "number"
11550
+ },
11551
+ "mime_type": {
11552
+ "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.",
11553
+ "enum": [
11554
+ "image/jpeg",
11555
+ "image/png",
11556
+ "image/webp"
11557
+ ],
11558
+ "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.",
11559
+ "type": "string"
11560
+ },
11561
+ "min_length": {
11562
+ "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.",
11563
+ "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.",
11564
+ "type": "number"
11565
+ },
10989
11566
  "paths": {
10990
11567
  "$ref": "#/definitions/Paths",
10991
11568
  "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`.",
10992
11569
  "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`."
10993
- }
10994
- },
10995
- "type": "object"
10996
- },
10997
- "WithEmptyTypeText": {
10998
- "additionalProperties": false,
10999
- "properties": {
11000
- "empty_type": {
11001
- "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
11570
+ },
11571
+ "pattern": {
11572
+ "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.",
11573
+ "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.",
11574
+ "type": "string"
11575
+ },
11576
+ "pattern_flags": {
11577
+ "additionalProperties": false,
11578
+ "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.",
11579
+ "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.",
11580
+ "properties": {
11581
+ "dot_all": {
11582
+ "default": false,
11583
+ "description": "`s` - `.` matches newline characters.",
11584
+ "markdownDescription": "`s` - `.` matches newline characters.",
11585
+ "type": "boolean"
11586
+ },
11587
+ "global": {
11588
+ "default": false,
11589
+ "description": "`g` - Search globally.",
11590
+ "markdownDescription": "`g` - Search globally.",
11591
+ "type": "boolean"
11592
+ },
11593
+ "ignore_case": {
11594
+ "default": false,
11595
+ "description": "`i` - Case-insensitive.",
11596
+ "markdownDescription": "`i` - Case-insensitive.",
11597
+ "type": "boolean"
11598
+ },
11599
+ "multiline": {
11600
+ "default": false,
11601
+ "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
11602
+ "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
11603
+ "type": "boolean"
11604
+ },
11605
+ "unicode": {
11606
+ "default": false,
11607
+ "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
11608
+ "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points.",
11609
+ "type": "boolean"
11610
+ },
11611
+ "unicode_sets": {
11612
+ "default": false,
11613
+ "description": "`v` - Extended `unicode` mode.",
11614
+ "markdownDescription": "`v` - Extended `unicode` mode.",
11615
+ "type": "boolean"
11616
+ }
11617
+ },
11618
+ "type": "object"
11619
+ },
11620
+ "pattern_message": {
11621
+ "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.",
11622
+ "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.",
11623
+ "type": "string"
11624
+ },
11625
+ "prevent_resize_existing_files": {
11626
+ "default": false,
11627
+ "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
11628
+ "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing\nimages.",
11629
+ "type": "boolean"
11630
+ },
11631
+ "required": {
11632
+ "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).",
11633
+ "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).",
11634
+ "type": "boolean"
11635
+ },
11636
+ "resize_style": {
11637
+ "default": "contain",
11638
+ "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.",
11002
11639
  "enum": [
11003
- "null",
11004
- "string"
11640
+ "cover",
11641
+ "contain",
11642
+ "stretch",
11643
+ "crop"
11005
11644
  ],
11006
- "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
11645
+ "markdownDescription": "Sets how uploaded image files are resized with a bounding box defined by width and height prior\nto upload. Has no effect when selecting existing images, or if width and height are unset.",
11007
11646
  "type": "string"
11647
+ },
11648
+ "sizes": {
11649
+ "description": "Definitions for creating additional images of different sizes when uploading or selecting existing files.",
11650
+ "items": {
11651
+ "additionalProperties": false,
11652
+ "properties": {
11653
+ "size": {
11654
+ "description": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).",
11655
+ "markdownDescription": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of\nthe image (e.g. 2x, 3x, 100w, 360w).",
11656
+ "type": "string"
11657
+ },
11658
+ "target": {
11659
+ "description": "A reference to another input that is given the path to this additional image file.",
11660
+ "markdownDescription": "A reference to another input that is given the path to this additional image file.",
11661
+ "type": "string"
11662
+ }
11663
+ },
11664
+ "required": [
11665
+ "size"
11666
+ ],
11667
+ "type": "object"
11668
+ },
11669
+ "markdownDescription": "Definitions for creating additional images of different sizes when uploading or selecting\nexisting files.",
11670
+ "type": "array"
11671
+ },
11672
+ "width": {
11673
+ "description": "Defines the width of the bounding box used in the image resizing process defined with resize_style.",
11674
+ "markdownDescription": "Defines the width of the bounding box used in the image resizing process defined with\nresize_style.",
11675
+ "type": "number"
11008
11676
  }
11009
11677
  },
11010
11678
  "type": "object"