@cloudcannon/configuration-types 0.0.52 → 0.0.54
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.
- package/dist/cloudcannon-collections.schema.json +1230 -2147
- package/dist/cloudcannon-config.documentation.schema.json +781 -489
- package/dist/cloudcannon-config.latest.schema.json +570 -256
- package/dist/cloudcannon-config.legacy-eleventy.schema.json +606 -315
- package/dist/cloudcannon-config.legacy-hugo.schema.json +606 -315
- package/dist/cloudcannon-config.legacy-jekyll.schema.json +606 -315
- package/dist/cloudcannon-config.legacy-reader.schema.json +607 -316
- package/dist/cloudcannon-editables.schema.json +196 -332
- package/dist/cloudcannon-initial-site-settings.documentation.schema.json +15 -15
- package/dist/cloudcannon-initial-site-settings.schema.json +9 -9
- package/dist/cloudcannon-inputs.schema.json +499 -187
- package/dist/cloudcannon-routing.documentation.schema.json +23 -23
- package/dist/cloudcannon-routing.schema.json +13 -13
- package/dist/cloudcannon-schemas.schema.json +495 -181
- package/dist/cloudcannon-snippets-definitions.schema.json +21 -21
- package/dist/cloudcannon-snippets-imports.schema.json +55 -55
- package/dist/cloudcannon-snippets.schema.json +499 -185
- package/dist/cloudcannon-structure-value.schema.json +856 -541
- package/dist/cloudcannon-structures.schema.json +499 -187
- package/dist/documentation.json +1302 -14
- package/package.json +4 -4
- package/src/inputs.ts +50 -3
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"title": "Inputs",
|
|
4
|
-
"description": "Controls the behavior and appearance of your inputs in all data editing interfaces.",
|
|
5
3
|
"$id": "https://github.com/cloudcannon/configuration-types/releases/latest/download/cloudcannon-inputs.schema.json",
|
|
6
4
|
"allOf": [
|
|
7
5
|
{
|
|
@@ -9,25 +7,9 @@
|
|
|
9
7
|
}
|
|
10
8
|
],
|
|
11
9
|
"definitions": {
|
|
12
|
-
"type._inputs": {
|
|
13
|
-
"title": "Inputs",
|
|
14
|
-
"description": "This key defines which inputs are available at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_inputs` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured the `date_created` key as a *Date and Time Input*, which will automatically populate when you create a file using this input. Editors cannot alter this input as the interface is disabled.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n comment: UTC +0 timezone\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n hidden: false\n disabled: true\n instance_value: NOW\n cascade: true\n options:\n timezone: Etc/UTC\n```\n\nIn this example, we have configured the `blog_tags` key as a *Multiselect Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n blog_tags:\n type: multiselect\n label: Blog type\n comment: Select a blog type\n context:\n open: false\n title: Help\n icon: help\n content: |\n Blog tags help our users filter articles by topic.\n options:\n values:\n - Opinion\n - Feature\n - Resource\n```",
|
|
15
|
-
"type": "object",
|
|
16
|
-
"propertyNames": {
|
|
17
|
-
"type": "string"
|
|
18
|
-
},
|
|
19
|
-
"additionalProperties": {
|
|
20
|
-
"$ref": "#/definitions/Input"
|
|
21
|
-
},
|
|
22
|
-
"documented": true,
|
|
23
|
-
"markdownDescription": "This key defines which inputs are available at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_inputs` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured the `date_created` key as a *Date and Time Input*, which will automatically populate when you create a file using this input. Editors cannot alter this input as the interface is disabled.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n comment: UTC +0 timezone\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n hidden: false\n disabled: true\n instance_value: NOW\n cascade: true\n options:\n timezone: Etc/UTC\n```\n\nIn this example, we have configured the `blog_tags` key as a *Multiselect Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n blog_tags:\n type: multiselect\n label: Blog type\n comment: Select a blog type\n context:\n open: false\n title: Help\n icon: help\n content: |\n Blog tags help our users filter articles by topic.\n options:\n values:\n - Opinion\n - Feature\n - Resource\n```"
|
|
24
|
-
},
|
|
25
10
|
"Input": {
|
|
26
|
-
"title": "Input",
|
|
27
11
|
"anyOf": [
|
|
28
12
|
{
|
|
29
|
-
"title": "Known Input",
|
|
30
|
-
"description": "This key defines an input configuration at a given level of the configuration cascade.\n\nThe value is an object that can contain `type`, `label`, `options`, `disabled`, `hidden`, and other input-specific properties. Each input configuration defines how team members interact with data in the *Data Editor*.\n\nFor more information, please read our documentation on [inputs](https://cloudcannon.com/documentation/articles/what-are-inputs/).\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n title:\n type: text\n label: Title\n```",
|
|
31
13
|
"oneOf": [
|
|
32
14
|
{
|
|
33
15
|
"$ref": "#/definitions/TextInput"
|
|
@@ -87,6 +69,8 @@
|
|
|
87
69
|
"$ref": "#/definitions/AutoInput"
|
|
88
70
|
}
|
|
89
71
|
],
|
|
72
|
+
"title": "Known Input",
|
|
73
|
+
"description": "This key defines an input configuration at a given level of the configuration cascade.\n\nThe value is an object that can contain `type`, `label`, `options`, `disabled`, `hidden`, and other input-specific properties. Each input configuration defines how team members interact with data in the *Data Editor*.\n\nFor more information, please read our documentation on [inputs](https://cloudcannon.com/documentation/articles/what-are-inputs/).\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n title:\n type: text\n label: Title\n```",
|
|
90
74
|
"documented": true,
|
|
91
75
|
"markdownDescription": "This key defines an input configuration at a given level of the configuration cascade.\n\nThe value is an object that can contain `type`, `label`, `options`, `disabled`, `hidden`, and other input-specific properties. Each input configuration defines how team members interact with data in the *Data Editor*.\n\nFor more information, please read our documentation on [inputs](https://cloudcannon.com/documentation/articles/what-are-inputs/).\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n title:\n type: text\n label: Title\n```"
|
|
92
76
|
},
|
|
@@ -94,13 +78,12 @@
|
|
|
94
78
|
"$ref": "#/definitions/UnknownInput"
|
|
95
79
|
}
|
|
96
80
|
],
|
|
81
|
+
"title": "Input",
|
|
97
82
|
"documented": true,
|
|
98
83
|
"description": "This key defines an input configuration at a given level of the configuration cascade.\n\nThe value is an object that can contain `type`, `label`, `options`, `disabled`, `hidden`, and other input-specific properties. Each input configuration defines how team members interact with data in the *Data Editor*.\n\nFor more information, please read our documentation on [inputs](https://cloudcannon.com/documentation/articles/what-are-inputs/).\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n title:\n type: text\n label: Title\n```",
|
|
99
84
|
"markdownDescription": "This key defines an input configuration at a given level of the configuration cascade.\n\nThe value is an object that can contain `type`, `label`, `options`, `disabled`, `hidden`, and other input-specific properties. Each input configuration defines how team members interact with data in the *Data Editor*.\n\nFor more information, please read our documentation on [inputs](https://cloudcannon.com/documentation/articles/what-are-inputs/).\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n title:\n type: text\n label: Title\n```"
|
|
100
85
|
},
|
|
101
86
|
"TextInput": {
|
|
102
|
-
"title": "Text Input",
|
|
103
|
-
"description": "This key defines a simple editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input*.\n\n```yaml\n_inputs:\n title:\n type: text\n label: Blog Title\n```",
|
|
104
87
|
"type": "object",
|
|
105
88
|
"properties": {
|
|
106
89
|
"comment": {
|
|
@@ -145,8 +128,6 @@
|
|
|
145
128
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
146
129
|
},
|
|
147
130
|
"type": {
|
|
148
|
-
"title": "Type",
|
|
149
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* type.\n\n```yaml\n_inputs:\n title:\n type: text\n```",
|
|
150
131
|
"type": "string",
|
|
151
132
|
"enum": [
|
|
152
133
|
"text",
|
|
@@ -158,11 +139,12 @@
|
|
|
158
139
|
"github",
|
|
159
140
|
"instagram"
|
|
160
141
|
],
|
|
142
|
+
"title": "Type",
|
|
143
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* type.\n\n```yaml\n_inputs:\n title:\n type: text\n```",
|
|
161
144
|
"documented": true,
|
|
162
145
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input* type.\n\n```yaml\n_inputs:\n title:\n type: text\n```"
|
|
163
146
|
},
|
|
164
147
|
"options": {
|
|
165
|
-
"description": "This key defines options that are specific to Text Inputs.\n\n## Examples\n\nIn this example, we have configured *Text Input* options including comment and icon.\n\n```yaml\n_inputs:\n title:\n type: text\n options:\n comment: Enter a title\n icon: title\n```",
|
|
166
148
|
"type": "object",
|
|
167
149
|
"properties": {
|
|
168
150
|
"max_length": {
|
|
@@ -177,6 +159,33 @@
|
|
|
177
159
|
"min_length_message": {
|
|
178
160
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
179
161
|
},
|
|
162
|
+
"max_words": {
|
|
163
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
164
|
+
},
|
|
165
|
+
"max_words_message": {
|
|
166
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
167
|
+
},
|
|
168
|
+
"min_words": {
|
|
169
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
170
|
+
},
|
|
171
|
+
"min_words_message": {
|
|
172
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
173
|
+
},
|
|
174
|
+
"max_graphemes": {
|
|
175
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
176
|
+
},
|
|
177
|
+
"max_graphemes_message": {
|
|
178
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
179
|
+
},
|
|
180
|
+
"min_graphemes": {
|
|
181
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
182
|
+
},
|
|
183
|
+
"min_graphemes_message": {
|
|
184
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
185
|
+
},
|
|
186
|
+
"locale": {
|
|
187
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
188
|
+
},
|
|
180
189
|
"pattern": {
|
|
181
190
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
182
191
|
},
|
|
@@ -243,6 +252,7 @@
|
|
|
243
252
|
}
|
|
244
253
|
},
|
|
245
254
|
"additionalProperties": false,
|
|
255
|
+
"description": "This key defines options that are specific to Text Inputs.\n\n## Examples\n\nIn this example, we have configured *Text Input* options including comment and icon.\n\n```yaml\n_inputs:\n title:\n type: text\n options:\n comment: Enter a title\n icon: title\n```",
|
|
246
256
|
"documented": true,
|
|
247
257
|
"title": "options",
|
|
248
258
|
"markdownDescription": "This key defines options that are specific to Text Inputs.\n\n## Examples\n\nIn this example, we have configured *Text Input* options including comment and icon.\n\n```yaml\n_inputs:\n title:\n type: text\n options:\n comment: Enter a title\n icon: title\n```"
|
|
@@ -252,6 +262,8 @@
|
|
|
252
262
|
"type"
|
|
253
263
|
],
|
|
254
264
|
"additionalProperties": false,
|
|
265
|
+
"title": "Text Input",
|
|
266
|
+
"description": "This key defines a simple editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input*.\n\n```yaml\n_inputs:\n title:\n type: text\n label: Blog Title\n```",
|
|
255
267
|
"documented": true,
|
|
256
268
|
"markdownDescription": "This key defines a simple editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `title` key as a *Text Input*.\n\n```yaml\n_inputs:\n title:\n type: text\n label: Blog Title\n```"
|
|
257
269
|
},
|
|
@@ -263,7 +275,6 @@
|
|
|
263
275
|
"markdownDescription": "This key defines the subtitle text above an Input.\n\nCloudCannon supports a limited selection of Markdown formatting for the value of this key: links, bold, italic, subscript, superscript, and inline\ncode.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add helpful guidance for our `page_description` Input.\n\n```yaml\n_inputs:\n page_description:\n type: text\n label: Page Description\n comment: Enter a brief description of this page for search engines\n```"
|
|
264
276
|
},
|
|
265
277
|
"type._inputs.*.context": {
|
|
266
|
-
"description": "This key defines a context box for extra information about an Input.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add a context box to our `date_created` Input to explain its purpose.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n instance_value: NOW\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n```",
|
|
267
278
|
"type": "object",
|
|
268
279
|
"properties": {
|
|
269
280
|
"content": {
|
|
@@ -301,13 +312,12 @@
|
|
|
301
312
|
}
|
|
302
313
|
},
|
|
303
314
|
"additionalProperties": false,
|
|
315
|
+
"description": "This key defines a context box for extra information about an Input.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add a context box to our `date_created` Input to explain its purpose.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n instance_value: NOW\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n```",
|
|
304
316
|
"documented": true,
|
|
305
317
|
"title": "context",
|
|
306
318
|
"markdownDescription": "This key defines a context box for extra information about an Input.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add a context box to our `date_created` Input to explain its purpose.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n instance_value: NOW\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n```"
|
|
307
319
|
},
|
|
308
320
|
"icon": {
|
|
309
|
-
"title": "Icon",
|
|
310
|
-
"description": "Material Symbol icon names available in CloudCannon for UI elements and content previews.",
|
|
311
321
|
"type": "string",
|
|
312
322
|
"enum": [
|
|
313
323
|
"123",
|
|
@@ -3895,17 +3905,17 @@
|
|
|
3895
3905
|
"zoom_out",
|
|
3896
3906
|
"zoom_out_map"
|
|
3897
3907
|
],
|
|
3908
|
+
"title": "Icon",
|
|
3909
|
+
"description": "Material Symbol icon names available in CloudCannon for UI elements and content previews.",
|
|
3898
3910
|
"documented": false,
|
|
3899
3911
|
"markdownDescription": "Material Symbol icon names available in CloudCannon for UI elements and content previews."
|
|
3900
3912
|
},
|
|
3901
3913
|
"type.documentation": {
|
|
3902
|
-
"title": "Documentation",
|
|
3903
|
-
"description": "This key defines the documentation link at the top of a *Collection browser*.\n\nCollection documentation is useful for assisting your team members.\n\n## Examples\n\nIn this example, the documentation link for the `data` Collection goes to [CloudCannon Documentation](https://cloudcannon.com/documentation/).\n\n```yaml\ncollections_config:\n data:\n documentation:\n url: https://cloudcannon.com/documentation/\n text: CloudCannon Documentation\n icon: star\n```",
|
|
3904
3914
|
"type": "object",
|
|
3905
3915
|
"properties": {
|
|
3906
3916
|
"url": {
|
|
3907
|
-
"description": "This key defines the URL for the documentation link at the top of a *Collection browser*.\n\nYou must define this key for the\n`documentation` object to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we have configured the `blog` Collection documentation link to go to `example.com`.\n\n```yaml\ncollections_config:\n blog:\n documentation:\n url: https://example.com\n```",
|
|
3908
3917
|
"type": "string",
|
|
3918
|
+
"description": "This key defines the URL for the documentation link at the top of a *Collection browser*.\n\nYou must define this key for the\n`documentation` object to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we have configured the `blog` Collection documentation link to go to `example.com`.\n\n```yaml\ncollections_config:\n blog:\n documentation:\n url: https://example.com\n```",
|
|
3909
3919
|
"documented": true,
|
|
3910
3920
|
"title": "url",
|
|
3911
3921
|
"markdownDescription": "This key defines the URL for the documentation link at the top of a *Collection browser*.\n\nYou must define this key for the\n`documentation` object to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we have configured the `blog` Collection documentation link to go to `example.com`.\n\n```yaml\ncollections_config:\n blog:\n documentation:\n url: https://example.com\n```"
|
|
@@ -3934,6 +3944,8 @@
|
|
|
3934
3944
|
"url"
|
|
3935
3945
|
],
|
|
3936
3946
|
"additionalProperties": false,
|
|
3947
|
+
"title": "Documentation",
|
|
3948
|
+
"description": "This key defines the documentation link at the top of a *Collection browser*.\n\nCollection documentation is useful for assisting your team members.\n\n## Examples\n\nIn this example, the documentation link for the `data` Collection goes to [CloudCannon Documentation](https://cloudcannon.com/documentation/).\n\n```yaml\ncollections_config:\n data:\n documentation:\n url: https://cloudcannon.com/documentation/\n text: CloudCannon Documentation\n icon: star\n```",
|
|
3937
3949
|
"documented": true,
|
|
3938
3950
|
"markdownDescription": "This key defines the documentation link at the top of a *Collection browser*.\n\nCollection documentation is useful for assisting your team members.\n\n## Examples\n\nIn this example, the documentation link for the `data` Collection goes to [CloudCannon Documentation](https://cloudcannon.com/documentation/).\n\n```yaml\ncollections_config:\n data:\n documentation:\n url: https://cloudcannon.com/documentation/\n text: CloudCannon Documentation\n icon: star\n```"
|
|
3939
3951
|
},
|
|
@@ -3949,15 +3961,15 @@
|
|
|
3949
3961
|
"default": false,
|
|
3950
3962
|
"anyOf": [
|
|
3951
3963
|
{
|
|
3952
|
-
"title": "Boolean Hidden",
|
|
3953
3964
|
"type": "boolean",
|
|
3965
|
+
"title": "Boolean Hidden",
|
|
3954
3966
|
"documented": true,
|
|
3955
3967
|
"description": "This key represents a boolean value for the `hidden` key that toggles whether CloudCannon hides an input from view.\n\nWhen set to `true`, CloudCannon hides the input from the *Data Editor* and the sidebar of the *Visual Editor* or *Content Editor*. The input still exists in the file and can be edited in the *Source Editor*.\n\nWhen set to `false`, CloudCannon displays the input normally.\n\nBy default, this key follows the input naming convention where key names beginning with an underscore are hidden (`true`). Otherwise, this key defaults to `false` (i.e., the input is visible).\n\n## Examples\n\nIn this example, we have configured an input to be hidden using a boolean value, making it only editable in the *Source Editor*.\n\n```yaml\n_inputs:\n internal_id:\n type: text\n label: Internal ID\n hidden: true\n```",
|
|
3956
3968
|
"markdownDescription": "This key represents a boolean value for the `hidden` key that toggles whether CloudCannon hides an input from view.\n\nWhen set to `true`, CloudCannon hides the input from the *Data Editor* and the sidebar of the *Visual Editor* or *Content Editor*. The input still exists in the file and can be edited in the *Source Editor*.\n\nWhen set to `false`, CloudCannon displays the input normally.\n\nBy default, this key follows the input naming convention where key names beginning with an underscore are hidden (`true`). Otherwise, this key defaults to `false` (i.e., the input is visible).\n\n## Examples\n\nIn this example, we have configured an input to be hidden using a boolean value, making it only editable in the *Source Editor*.\n\n```yaml\n_inputs:\n internal_id:\n type: text\n label: Internal ID\n hidden: true\n```"
|
|
3957
3969
|
},
|
|
3958
3970
|
{
|
|
3959
|
-
"title": "Query String Hidden",
|
|
3960
3971
|
"type": "string",
|
|
3972
|
+
"title": "Query String Hidden",
|
|
3961
3973
|
"documented": true,
|
|
3962
3974
|
"description": "This key represents a query string value for the `hidden` key that conditionally hides an input based on another input's value.\n\nThe value is a string that references a sibling input key name. CloudCannon evaluates the referenced input's value to determine whether to hide this input.\n\nWhen the referenced input is truthy, CloudCannon hides this input. You can reverse this behavior by prefixing the string with `!`.\n\nFor reverse values in YAML files, the string should be wrapped in single or double quotation marks.\n\n## Examples\n\nIn this example, we have configured an input to be hidden when the `published` input is truthy.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n draft_notes:\n type: textarea\n label: Draft notes\n hidden: published\n```\n\nIn this example, we have configured an input to be hidden when the `published` input is falsy using the `!` prefix.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n publish_date:\n type: datetime\n label: Publish date\n hidden: '!published'\n```",
|
|
3963
3975
|
"markdownDescription": "This key represents a query string value for the `hidden` key that conditionally hides an input based on another input's value.\n\nThe value is a string that references a sibling input key name. CloudCannon evaluates the referenced input's value to determine whether to hide this input.\n\nWhen the referenced input is truthy, CloudCannon hides this input. You can reverse this behavior by prefixing the string with `!`.\n\nFor reverse values in YAML files, the string should be wrapped in single or double quotation marks.\n\n## Examples\n\nIn this example, we have configured an input to be hidden when the `published` input is truthy.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n draft_notes:\n type: textarea\n label: Draft notes\n hidden: published\n```\n\nIn this example, we have configured an input to be hidden when the `published` input is falsy using the `!` prefix.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n publish_date:\n type: datetime\n label: Publish date\n hidden: '!published'\n```"
|
|
@@ -3972,15 +3984,15 @@
|
|
|
3972
3984
|
"default": false,
|
|
3973
3985
|
"anyOf": [
|
|
3974
3986
|
{
|
|
3975
|
-
"title": "Boolean",
|
|
3976
3987
|
"type": "boolean",
|
|
3988
|
+
"title": "Boolean",
|
|
3977
3989
|
"documented": true,
|
|
3978
3990
|
"description": "This key represents a boolean value for the `disabled` key that toggles whether CloudCannon prevents editing of an input value.\n\nWhen set to `true`, CloudCannon prevents team members from editing the input value in the *Data Editor* or the sidebar of the *Visual Editor* or *Content Editor*. The input value is still displayed but cannot be modified outside of the *Source Editor*.\n\nWhen set to `false`, team members can edit the input value normally.\n\nBy default, this key is `false` (i.e., team members can edit input values).\n\n## Examples\n\nIn this example, we have configured a datetime input to be disabled using a boolean value, preventing editors from modifying the automatically generated date.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n disabled: true\n instance_value: NOW\n```",
|
|
3979
3991
|
"markdownDescription": "This key represents a boolean value for the `disabled` key that toggles whether CloudCannon prevents editing of an input value.\n\nWhen set to `true`, CloudCannon prevents team members from editing the input value in the *Data Editor* or the sidebar of the *Visual Editor* or *Content Editor*. The input value is still displayed but cannot be modified outside of the *Source Editor*.\n\nWhen set to `false`, team members can edit the input value normally.\n\nBy default, this key is `false` (i.e., team members can edit input values).\n\n## Examples\n\nIn this example, we have configured a datetime input to be disabled using a boolean value, preventing editors from modifying the automatically generated date.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n disabled: true\n instance_value: NOW\n```"
|
|
3980
3992
|
},
|
|
3981
3993
|
{
|
|
3982
|
-
"title": "Query String",
|
|
3983
3994
|
"type": "string",
|
|
3995
|
+
"title": "Query String",
|
|
3984
3996
|
"documented": true,
|
|
3985
3997
|
"description": "This key represents a query string value for the `disabled` key that conditionally prevents editing of an input value based on another input's value.\n\nThe value is a string that references a sibling input key name. CloudCannon evaluates the referenced input's value to determine whether to disable this input.\n\nWhen the referenced input is truthy, CloudCannon disables this input. You can reverse this behavior by prefixing the string with `!`.\n\nFor reverse values in YAML files, the string should be wrapped in single or double quotation marks.\n\n## Examples\n\nIn this example, we have configured an input to be disabled when the `published` input is truthy.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n edit_date:\n type: datetime\n label: Last edited\n disabled: published\n```\n\nIn this example, we have configured an input to be disabled when the `published` input is falsy using the `!` prefix.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n draft_notes:\n type: textarea\n label: Draft notes\n disabled: '!published'\n```",
|
|
3986
3998
|
"markdownDescription": "This key represents a query string value for the `disabled` key that conditionally prevents editing of an input value based on another input's value.\n\nThe value is a string that references a sibling input key name. CloudCannon evaluates the referenced input's value to determine whether to disable this input.\n\nWhen the referenced input is truthy, CloudCannon disables this input. You can reverse this behavior by prefixing the string with `!`.\n\nFor reverse values in YAML files, the string should be wrapped in single or double quotation marks.\n\n## Examples\n\nIn this example, we have configured an input to be disabled when the `published` input is truthy.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n edit_date:\n type: datetime\n label: Last edited\n disabled: published\n```\n\nIn this example, we have configured an input to be disabled when the `published` input is falsy using the `!` prefix.\n\n```yaml\n_inputs:\n published:\n type: checkbox\n label: Published\n draft_notes:\n type: textarea\n label: Draft notes\n disabled: '!published'\n```"
|
|
@@ -4045,6 +4057,69 @@
|
|
|
4045
4057
|
"title": "min_length_message",
|
|
4046
4058
|
"markdownDescription": "This key defines a custom error message that explains why a value has failed the validation criteria from `options.min_length`.\n\nThis key requires you to define `options.min_length`.\n\nThis key has no default.\n\nThis key is available for Code, Color, File, Select, Text, Rich Text, and URL Inputs.\n\n## Examples\n\nIn this example, we prompt our team to enter a valid number of characters using a custom message.\n\n```yaml\n_inputs:\n seo_description:\n type: markdown\n comment: Enter a brief description of this blog.\n options:\n max_length: 125\n max_length_message: You are only allowed 125 characters.\n min_length: 25\n min_length_message: Please write more than 25 characters.\n```"
|
|
4047
4059
|
},
|
|
4060
|
+
"type._inputs.*.options.max_words": {
|
|
4061
|
+
"description": "This key defines the maximum string length, in words, 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.",
|
|
4062
|
+
"type": "number",
|
|
4063
|
+
"documented": true,
|
|
4064
|
+
"title": "max_words",
|
|
4065
|
+
"markdownDescription": "This key defines the maximum string length, in words, 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."
|
|
4066
|
+
},
|
|
4067
|
+
"type._inputs.*.options.max_words_message": {
|
|
4068
|
+
"description": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_words.",
|
|
4069
|
+
"type": "string",
|
|
4070
|
+
"documented": true,
|
|
4071
|
+
"title": "max_words_message",
|
|
4072
|
+
"markdownDescription": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_words."
|
|
4073
|
+
},
|
|
4074
|
+
"type._inputs.*.options.min_words": {
|
|
4075
|
+
"description": "This key defines the minimum string length, in words, 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.",
|
|
4076
|
+
"type": "number",
|
|
4077
|
+
"documented": true,
|
|
4078
|
+
"title": "min_words",
|
|
4079
|
+
"markdownDescription": "This key defines the minimum string length, in words, 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."
|
|
4080
|
+
},
|
|
4081
|
+
"type._inputs.*.options.min_words_message": {
|
|
4082
|
+
"description": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_words`.",
|
|
4083
|
+
"type": "string",
|
|
4084
|
+
"documented": true,
|
|
4085
|
+
"title": "min_words_message",
|
|
4086
|
+
"markdownDescription": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_words`."
|
|
4087
|
+
},
|
|
4088
|
+
"type._inputs.*.options.max_graphemes": {
|
|
4089
|
+
"description": "This key defines the maximum string length, in graphemes, 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.",
|
|
4090
|
+
"type": "number",
|
|
4091
|
+
"documented": true,
|
|
4092
|
+
"title": "max_graphemes",
|
|
4093
|
+
"markdownDescription": "This key defines the maximum string length, in graphemes, 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."
|
|
4094
|
+
},
|
|
4095
|
+
"type._inputs.*.options.max_graphemes_message": {
|
|
4096
|
+
"description": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_graphemes.",
|
|
4097
|
+
"type": "string",
|
|
4098
|
+
"documented": true,
|
|
4099
|
+
"title": "max_graphemes_message",
|
|
4100
|
+
"markdownDescription": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_graphemes."
|
|
4101
|
+
},
|
|
4102
|
+
"type._inputs.*.options.min_graphemes": {
|
|
4103
|
+
"description": "This key defines the minimum string length, in graphemes, 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.",
|
|
4104
|
+
"type": "number",
|
|
4105
|
+
"documented": true,
|
|
4106
|
+
"title": "min_graphemes",
|
|
4107
|
+
"markdownDescription": "This key defines the minimum string length, in graphemes, 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."
|
|
4108
|
+
},
|
|
4109
|
+
"type._inputs.*.options.min_graphemes_message": {
|
|
4110
|
+
"description": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_graphemes`.",
|
|
4111
|
+
"type": "string",
|
|
4112
|
+
"documented": true,
|
|
4113
|
+
"title": "min_graphemes_message",
|
|
4114
|
+
"markdownDescription": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_graphemes`."
|
|
4115
|
+
},
|
|
4116
|
+
"type._inputs.*.options.locale": {
|
|
4117
|
+
"description": "This key defines the locale that CloudCannon uses to determine the number of words or graphemes in this Input, if you have `max_words`, `min_words`, `max_graphemes`, or `min_graphemes` configured.",
|
|
4118
|
+
"type": "string",
|
|
4119
|
+
"documented": true,
|
|
4120
|
+
"title": "locale",
|
|
4121
|
+
"markdownDescription": "This key defines the locale that CloudCannon uses to determine the number of words or graphemes in this Input, if you have `max_words`, `min_words`, `max_graphemes`, or `min_graphemes` configured."
|
|
4122
|
+
},
|
|
4048
4123
|
"type._inputs.*.options.pattern": {
|
|
4049
4124
|
"description": "This key defines a [regular expression](https://re2js.leopard.in.ua/) that the Input value must match.\n\nWhen configured, CloudCannon will require you to enter a value that matches the REGEX pattern.\n\nIf the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved\nchanges.\n\nValue must be a valid REGEX string.\n\nIf your REGEX string includes a `\\` character and CloudCannon Configuration File is a `.yml` file, use single quotes `'` around the string to avoid a\nbuild error.\n\nThis key has no default.\n\nThis key is available for Code, Color, File, Select, Text, Rich Text, and URL Inputs.\n\nTo use this key in a Select Input, `allow_create` must be set to `true`.\n\n## Examples\n\nIn this example, we want our team to add an email address to the `contact_email` Input using the correct email format.\n\n```yaml\n_inputs:\n contact_email:\n type: email\n options:\n pattern: '[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}'\n pattern_message: 'Please use the format ___@___.__'\n```",
|
|
4050
4125
|
"type": "string",
|
|
@@ -4133,8 +4208,8 @@
|
|
|
4133
4208
|
"markdownDescription": "This key defines a custom error message that explains why a value has failed the validation criteria from `options.required`.\n\nThis key requires you to define `options.required`.\n\nThis key has no default.\n\nThis key is available for Array, Code, Color, Date and Time, File, Number, Object, Select and Multiselect, Text, Rich Text, and URL Inputs.\n\n## Examples\n\nIn this example, we prompt our team to use enter an Input value using a required message.\n\n```yaml\n_inputs:\n author:\n type: text\n comment: Enter the name of the author for this blog post.\n options:\n required: true\n required_message: You are not allowed to leave this blank.\n```"
|
|
4134
4209
|
},
|
|
4135
4210
|
"type._inputs.*.options.empty_type(text)": {
|
|
4136
|
-
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.",
|
|
4137
4211
|
"default": "null",
|
|
4212
|
+
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.",
|
|
4138
4213
|
"type": "string",
|
|
4139
4214
|
"enum": [
|
|
4140
4215
|
"null",
|
|
@@ -4160,17 +4235,16 @@
|
|
|
4160
4235
|
"title": "icon_color(previewentries)"
|
|
4161
4236
|
},
|
|
4162
4237
|
"type.preview-entry.(array)": {
|
|
4163
|
-
"title": "Array Preview Entry",
|
|
4164
4238
|
"type": "array",
|
|
4165
4239
|
"items": {
|
|
4166
4240
|
"$ref": "#/definitions/type.preview-entry"
|
|
4167
4241
|
},
|
|
4242
|
+
"title": "Array Preview Entry",
|
|
4168
4243
|
"documented": true,
|
|
4169
4244
|
"description": "This key represents an array of preview entries for displaying data on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an array of preview entry objects, strings, or `false` values. Each preview entry object can contain a `key`, `template`, or `text` property. When multiple entries are provided, CloudCannon will use them in order as fallback options.\n\n## Examples\n\nIn this example, we have configured an array of preview entries with an array of values to provide fallback options. CloudCannon will use the value of `title` first, then the `{name}` template, and finally fall back to the static text value.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n - template: '{name}'\n - text: 'Untitled'\n```",
|
|
4170
4245
|
"markdownDescription": "This key represents an array of preview entries for displaying data on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an array of preview entry objects, strings, or `false` values. Each preview entry object can contain a `key`, `template`, or `text` property. When multiple entries are provided, CloudCannon will use them in order as fallback options.\n\n## Examples\n\nIn this example, we have configured an array of preview entries with an array of values to provide fallback options. CloudCannon will use the value of `title` first, then the `{name}` template, and finally fall back to the static text value.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n - template: '{name}'\n - text: 'Untitled'\n```"
|
|
4171
4246
|
},
|
|
4172
4247
|
"type.preview-entry": {
|
|
4173
|
-
"title": "Preview Entry",
|
|
4174
4248
|
"anyOf": [
|
|
4175
4249
|
{
|
|
4176
4250
|
"$ref": "#/definitions/type.preview-entry.(key)"
|
|
@@ -4188,17 +4262,17 @@
|
|
|
4188
4262
|
"$ref": "#/definitions/type.preview-entry.(false)"
|
|
4189
4263
|
}
|
|
4190
4264
|
],
|
|
4265
|
+
"title": "Preview Entry",
|
|
4191
4266
|
"documented": true,
|
|
4192
4267
|
"description": "This key defines a preview entry configuration for displaying data on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value can be an object with a `key`, `template`, or `text` property, a raw text string, `false`, or an array of these values. When multiple entries are provided, CloudCannon will use them in order as fallback options. Preview entries are used to configure how data is displayed in card previews.\n\n## Examples\n\nIn this example, we have configured a preview entry with an array of values to provide fallback options. CloudCannon will use the value of `title` first, then the `{name}` template, and finally fall back to the static text value.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n - template: '{name}'\n - text: 'Untitled'\n```\n\nIn this example, we have configured a preview entry to display the `title` key.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```",
|
|
4193
4268
|
"markdownDescription": "This key defines a preview entry configuration for displaying data on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value can be an object with a `key`, `template`, or `text` property, a raw text string, `false`, or an array of these values. When multiple entries are provided, CloudCannon will use them in order as fallback options. Preview entries are used to configure how data is displayed in card previews.\n\n## Examples\n\nIn this example, we have configured a preview entry with an array of values to provide fallback options. CloudCannon will use the value of `title` first, then the `{name}` template, and finally fall back to the static text value.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n - template: '{name}'\n - text: 'Untitled'\n```\n\nIn this example, we have configured a preview entry to display the `title` key.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```"
|
|
4194
4269
|
},
|
|
4195
4270
|
"type.preview-entry.(key)": {
|
|
4196
|
-
"title": "Key Preview Entry",
|
|
4197
4271
|
"type": "object",
|
|
4198
4272
|
"properties": {
|
|
4199
4273
|
"key": {
|
|
4200
|
-
"title": "Key Value",
|
|
4201
4274
|
"type": "string",
|
|
4275
|
+
"title": "Key Value",
|
|
4202
4276
|
"documented": true,
|
|
4203
4277
|
"description": "This key defines the data key name to display in a key preview entry.\n\nThe value is a string that specifies the name of a data key whose value will be displayed on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the key value to display the `title` field.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```",
|
|
4204
4278
|
"markdownDescription": "This key defines the data key name to display in a key preview entry.\n\nThe value is a string that specifies the name of a data key whose value will be displayed on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the key value to display the `title` field.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```"
|
|
@@ -4208,17 +4282,17 @@
|
|
|
4208
4282
|
"key"
|
|
4209
4283
|
],
|
|
4210
4284
|
"additionalProperties": false,
|
|
4285
|
+
"title": "Key Preview Entry",
|
|
4211
4286
|
"documented": true,
|
|
4212
4287
|
"description": "This key represents a key preview entry type for displaying data from a specific key on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `key` property with a string value. This displays the value of the specified data key in card previews.\n\n## Examples\n\nIn this example, we have configured a key preview entry to display the `title` key.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```",
|
|
4213
4288
|
"markdownDescription": "This key represents a key preview entry type for displaying data from a specific key on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `key` property with a string value. This displays the value of the specified data key in card previews.\n\n## Examples\n\nIn this example, we have configured a key preview entry to display the `title` key.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n```"
|
|
4214
4289
|
},
|
|
4215
4290
|
"type.preview-entry.(template)": {
|
|
4216
|
-
"title": "Template Preview Entry",
|
|
4217
4291
|
"type": "object",
|
|
4218
4292
|
"properties": {
|
|
4219
4293
|
"template": {
|
|
4220
|
-
"title": "Template Value",
|
|
4221
4294
|
"type": "string",
|
|
4295
|
+
"title": "Template Value",
|
|
4222
4296
|
"documented": true,
|
|
4223
4297
|
"description": "This key defines the template string to use in a template preview entry.\n\nThe value is a string that specifies a template with placeholders (e.g., `{name}`, `{date}`) that will be replaced with data values when displayed on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the template value to display author and date.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - template: '{author} - {date}'\n```",
|
|
4224
4298
|
"markdownDescription": "This key defines the template string to use in a template preview entry.\n\nThe value is a string that specifies a template with placeholders (e.g., `{name}`, `{date}`) that will be replaced with data values when displayed on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the template value to display author and date.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - template: '{author} - {date}'\n```"
|
|
@@ -4228,17 +4302,17 @@
|
|
|
4228
4302
|
"template"
|
|
4229
4303
|
],
|
|
4230
4304
|
"additionalProperties": false,
|
|
4305
|
+
"title": "Template Preview Entry",
|
|
4231
4306
|
"documented": true,
|
|
4232
4307
|
"description": "This key represents a template preview entry type for displaying formatted text using a template on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `template` property with a string value. This displays formatted text using template syntax (e.g., `{name}`) in card previews.\n\n## Examples\n\nIn this example, we have configured a template preview entry to display formatted text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - template: '{author} - {date}'\n```",
|
|
4233
4308
|
"markdownDescription": "This key represents a template preview entry type for displaying formatted text using a template on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `template` property with a string value. This displays formatted text using template syntax (e.g., `{name}`) in card previews.\n\n## Examples\n\nIn this example, we have configured a template preview entry to display formatted text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - template: '{author} - {date}'\n```"
|
|
4234
4309
|
},
|
|
4235
4310
|
"type.preview-entry.(text)": {
|
|
4236
|
-
"title": "Text Preview Entry",
|
|
4237
4311
|
"type": "object",
|
|
4238
4312
|
"properties": {
|
|
4239
4313
|
"text": {
|
|
4240
|
-
"title": "Text Value",
|
|
4241
4314
|
"type": "string",
|
|
4315
|
+
"title": "Text Value",
|
|
4242
4316
|
"documented": true,
|
|
4243
4317
|
"description": "This key defines the static text string to display in a text preview entry.\n\nThe value is a string that specifies static text to display on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the text value to display a static fallback message.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - text: 'Untitled'\n```",
|
|
4244
4318
|
"markdownDescription": "This key defines the static text string to display in a text preview entry.\n\nThe value is a string that specifies static text to display on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\n## Examples\n\nIn this example, we have configured the text value to display a static fallback message.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - text: 'Untitled'\n```"
|
|
@@ -4248,28 +4322,27 @@
|
|
|
4248
4322
|
"text"
|
|
4249
4323
|
],
|
|
4250
4324
|
"additionalProperties": false,
|
|
4325
|
+
"title": "Text Preview Entry",
|
|
4251
4326
|
"documented": true,
|
|
4252
4327
|
"description": "This key represents a text preview entry type for displaying static text on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `text` property with a string value. This displays static text in card previews.\n\n## Examples\n\nIn this example, we have configured a text preview entry to display static text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - text: 'Untitled'\n```",
|
|
4253
4328
|
"markdownDescription": "This key represents a text preview entry type for displaying static text on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is an object that contains a `text` property with a string value. This displays static text in card previews.\n\n## Examples\n\nIn this example, we have configured a text preview entry to display static text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - text: 'Untitled'\n```"
|
|
4254
4329
|
},
|
|
4255
4330
|
"type.preview-entry.(raw-text)": {
|
|
4256
|
-
"title": "Raw Text Preview Entry",
|
|
4257
4331
|
"type": "string",
|
|
4332
|
+
"title": "Raw Text Preview Entry",
|
|
4258
4333
|
"documented": true,
|
|
4259
4334
|
"description": "This key represents a raw text preview entry type for displaying static text on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is a string that specifies static text to display in card previews. This is equivalent to using `{ text: \"...\" }` but in a simpler format.\n\n## Examples\n\nIn this example, we have configured a raw text preview entry to display static text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text: 'Untitled'\n```",
|
|
4260
4335
|
"markdownDescription": "This key represents a raw text preview entry type for displaying static text on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value is a string that specifies static text to display in card previews. This is equivalent to using `{ text: \"...\" }` but in a simpler format.\n\n## Examples\n\nIn this example, we have configured a raw text preview entry to display static text.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text: 'Untitled'\n```"
|
|
4261
4336
|
},
|
|
4262
4337
|
"type.preview-entry.(false)": {
|
|
4263
|
-
"title": "False Preview Entry",
|
|
4264
4338
|
"type": "boolean",
|
|
4265
4339
|
"const": false,
|
|
4340
|
+
"title": "False Preview Entry",
|
|
4266
4341
|
"documented": true,
|
|
4267
4342
|
"description": "This key represents a preview entry that disables the preview display for a specific field on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value must be `false`. Setting a preview entry to `false` will hide that preview element.\n\n## Examples\n\nIn this example, we have configured the preview text to be disabled.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text: false\n```",
|
|
4268
4343
|
"markdownDescription": "This key represents a preview entry that disables the preview display for a specific field on *Cards* in the *Collection browser*, *Structures*, and *Snippets*.\n\nThe value must be `false`. Setting a preview entry to `false` will hide that preview element.\n\n## Examples\n\nIn this example, we have configured the preview text to be disabled.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text: false\n```"
|
|
4269
4344
|
},
|
|
4270
4345
|
"TextareaInput": {
|
|
4271
|
-
"title": "Textarea Input",
|
|
4272
|
-
"description": "This key defines an editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input*.\n\n```yaml\n_inputs:\n description:\n type: textarea\n label: Description\n```",
|
|
4273
4346
|
"type": "object",
|
|
4274
4347
|
"properties": {
|
|
4275
4348
|
"comment": {
|
|
@@ -4314,15 +4387,14 @@
|
|
|
4314
4387
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
4315
4388
|
},
|
|
4316
4389
|
"type": {
|
|
4317
|
-
"title": "Type",
|
|
4318
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input* type.\n\n```yaml\n_inputs:\n description:\n type: textarea\n```",
|
|
4319
4390
|
"type": "string",
|
|
4320
4391
|
"const": "textarea",
|
|
4392
|
+
"title": "Type",
|
|
4393
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input* type.\n\n```yaml\n_inputs:\n description:\n type: textarea\n```",
|
|
4321
4394
|
"documented": true,
|
|
4322
4395
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input* type.\n\n```yaml\n_inputs:\n description:\n type: textarea\n```"
|
|
4323
4396
|
},
|
|
4324
4397
|
"options": {
|
|
4325
|
-
"description": "This key defines options that are specific to Textarea Inputs.\n\n## Examples\n\nIn this example, we have configured *Textarea Input* options including comment and character count.\n\n```yaml\n_inputs:\n description:\n type: textarea\n options:\n comment: Enter a description\n show_count: true\n```",
|
|
4326
4398
|
"type": "object",
|
|
4327
4399
|
"properties": {
|
|
4328
4400
|
"max_length": {
|
|
@@ -4337,6 +4409,33 @@
|
|
|
4337
4409
|
"min_length_message": {
|
|
4338
4410
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
4339
4411
|
},
|
|
4412
|
+
"max_words": {
|
|
4413
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
4414
|
+
},
|
|
4415
|
+
"max_words_message": {
|
|
4416
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
4417
|
+
},
|
|
4418
|
+
"min_words": {
|
|
4419
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
4420
|
+
},
|
|
4421
|
+
"min_words_message": {
|
|
4422
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
4423
|
+
},
|
|
4424
|
+
"max_graphemes": {
|
|
4425
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
4426
|
+
},
|
|
4427
|
+
"max_graphemes_message": {
|
|
4428
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
4429
|
+
},
|
|
4430
|
+
"min_graphemes": {
|
|
4431
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
4432
|
+
},
|
|
4433
|
+
"min_graphemes_message": {
|
|
4434
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
4435
|
+
},
|
|
4436
|
+
"locale": {
|
|
4437
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
4438
|
+
},
|
|
4340
4439
|
"pattern": {
|
|
4341
4440
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
4342
4441
|
},
|
|
@@ -4378,6 +4477,7 @@
|
|
|
4378
4477
|
}
|
|
4379
4478
|
},
|
|
4380
4479
|
"additionalProperties": false,
|
|
4480
|
+
"description": "This key defines options that are specific to Textarea Inputs.\n\n## Examples\n\nIn this example, we have configured *Textarea Input* options including comment and character count.\n\n```yaml\n_inputs:\n description:\n type: textarea\n options:\n comment: Enter a description\n show_count: true\n```",
|
|
4381
4481
|
"documented": true,
|
|
4382
4482
|
"title": "options",
|
|
4383
4483
|
"markdownDescription": "This key defines options that are specific to Textarea Inputs.\n\n## Examples\n\nIn this example, we have configured *Textarea Input* options including comment and character count.\n\n```yaml\n_inputs:\n description:\n type: textarea\n options:\n comment: Enter a description\n show_count: true\n```"
|
|
@@ -4387,12 +4487,12 @@
|
|
|
4387
4487
|
"type"
|
|
4388
4488
|
],
|
|
4389
4489
|
"additionalProperties": false,
|
|
4490
|
+
"title": "Textarea Input",
|
|
4491
|
+
"description": "This key defines an editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input*.\n\n```yaml\n_inputs:\n description:\n type: textarea\n label: Description\n```",
|
|
4390
4492
|
"documented": true,
|
|
4391
4493
|
"markdownDescription": "This key defines an editing interface for plain text.\n\n## Examples\n\nIn this example, we have configured the `description` key as a *Textarea Input*.\n\n```yaml\n_inputs:\n description:\n type: textarea\n label: Description\n```"
|
|
4392
4494
|
},
|
|
4393
4495
|
"CodeInput": {
|
|
4394
|
-
"title": "Code Input",
|
|
4395
|
-
"description": "This key defines an editing interface for code or mono-spaced plain text content.",
|
|
4396
4496
|
"type": "object",
|
|
4397
4497
|
"properties": {
|
|
4398
4498
|
"comment": {
|
|
@@ -4437,15 +4537,14 @@
|
|
|
4437
4537
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
4438
4538
|
},
|
|
4439
4539
|
"type": {
|
|
4440
|
-
"title": "Type",
|
|
4441
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
4442
4540
|
"type": "string",
|
|
4443
4541
|
"const": "code",
|
|
4542
|
+
"title": "Type",
|
|
4543
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
4444
4544
|
"documented": true,
|
|
4445
4545
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
4446
4546
|
},
|
|
4447
4547
|
"options": {
|
|
4448
|
-
"description": "This key defines options that are specific to Code Inputs.",
|
|
4449
4548
|
"type": "object",
|
|
4450
4549
|
"properties": {
|
|
4451
4550
|
"tab_size": {
|
|
@@ -4496,6 +4595,33 @@
|
|
|
4496
4595
|
"min_length_message": {
|
|
4497
4596
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
4498
4597
|
},
|
|
4598
|
+
"max_words": {
|
|
4599
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
4600
|
+
},
|
|
4601
|
+
"max_words_message": {
|
|
4602
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
4603
|
+
},
|
|
4604
|
+
"min_words": {
|
|
4605
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
4606
|
+
},
|
|
4607
|
+
"min_words_message": {
|
|
4608
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
4609
|
+
},
|
|
4610
|
+
"max_graphemes": {
|
|
4611
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
4612
|
+
},
|
|
4613
|
+
"max_graphemes_message": {
|
|
4614
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
4615
|
+
},
|
|
4616
|
+
"min_graphemes": {
|
|
4617
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
4618
|
+
},
|
|
4619
|
+
"min_graphemes_message": {
|
|
4620
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
4621
|
+
},
|
|
4622
|
+
"locale": {
|
|
4623
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
4624
|
+
},
|
|
4499
4625
|
"pattern": {
|
|
4500
4626
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
4501
4627
|
},
|
|
@@ -4547,6 +4673,7 @@
|
|
|
4547
4673
|
}
|
|
4548
4674
|
},
|
|
4549
4675
|
"additionalProperties": false,
|
|
4676
|
+
"description": "This key defines options that are specific to Code Inputs.",
|
|
4550
4677
|
"documented": true,
|
|
4551
4678
|
"title": "options",
|
|
4552
4679
|
"markdownDescription": "This key defines options that are specific to Code Inputs."
|
|
@@ -4556,6 +4683,8 @@
|
|
|
4556
4683
|
"type"
|
|
4557
4684
|
],
|
|
4558
4685
|
"additionalProperties": false,
|
|
4686
|
+
"title": "Code Input",
|
|
4687
|
+
"description": "This key defines an editing interface for code or mono-spaced plain text content.",
|
|
4559
4688
|
"documented": true,
|
|
4560
4689
|
"markdownDescription": "This key defines an editing interface for code or mono-spaced plain text content."
|
|
4561
4690
|
},
|
|
@@ -4592,8 +4721,6 @@
|
|
|
4592
4721
|
"title": "theme(theme)"
|
|
4593
4722
|
},
|
|
4594
4723
|
"Syntax": {
|
|
4595
|
-
"title": "Syntax",
|
|
4596
|
-
"description": "Available syntax highlighting languages for code editors in CloudCannon.",
|
|
4597
4724
|
"type": "string",
|
|
4598
4725
|
"enum": [
|
|
4599
4726
|
"c_cpp",
|
|
@@ -4665,12 +4792,12 @@
|
|
|
4665
4792
|
"xquery",
|
|
4666
4793
|
"yaml"
|
|
4667
4794
|
],
|
|
4795
|
+
"title": "Syntax",
|
|
4796
|
+
"description": "Available syntax highlighting languages for code editors in CloudCannon.",
|
|
4668
4797
|
"documented": false,
|
|
4669
4798
|
"markdownDescription": "Available syntax highlighting languages for code editors in CloudCannon."
|
|
4670
4799
|
},
|
|
4671
4800
|
"ColorInput": {
|
|
4672
|
-
"title": "Color Input",
|
|
4673
|
-
"description": "This key defines an editing interface for color values.",
|
|
4674
4801
|
"type": "object",
|
|
4675
4802
|
"properties": {
|
|
4676
4803
|
"comment": {
|
|
@@ -4715,15 +4842,14 @@
|
|
|
4715
4842
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
4716
4843
|
},
|
|
4717
4844
|
"type": {
|
|
4718
|
-
"title": "Type",
|
|
4719
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
4720
4845
|
"type": "string",
|
|
4721
4846
|
"const": "color",
|
|
4847
|
+
"title": "Type",
|
|
4848
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
4722
4849
|
"documented": true,
|
|
4723
4850
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
4724
4851
|
},
|
|
4725
4852
|
"options": {
|
|
4726
|
-
"description": "This key defines options that are specific to Color Inputs.",
|
|
4727
4853
|
"type": "object",
|
|
4728
4854
|
"properties": {
|
|
4729
4855
|
"max_length": {
|
|
@@ -4738,6 +4864,33 @@
|
|
|
4738
4864
|
"min_length_message": {
|
|
4739
4865
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
4740
4866
|
},
|
|
4867
|
+
"max_words": {
|
|
4868
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
4869
|
+
},
|
|
4870
|
+
"max_words_message": {
|
|
4871
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
4872
|
+
},
|
|
4873
|
+
"min_words": {
|
|
4874
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
4875
|
+
},
|
|
4876
|
+
"min_words_message": {
|
|
4877
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
4878
|
+
},
|
|
4879
|
+
"max_graphemes": {
|
|
4880
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
4881
|
+
},
|
|
4882
|
+
"max_graphemes_message": {
|
|
4883
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
4884
|
+
},
|
|
4885
|
+
"min_graphemes": {
|
|
4886
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
4887
|
+
},
|
|
4888
|
+
"min_graphemes_message": {
|
|
4889
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
4890
|
+
},
|
|
4891
|
+
"locale": {
|
|
4892
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
4893
|
+
},
|
|
4741
4894
|
"pattern": {
|
|
4742
4895
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
4743
4896
|
},
|
|
@@ -4806,6 +4959,7 @@
|
|
|
4806
4959
|
}
|
|
4807
4960
|
},
|
|
4808
4961
|
"additionalProperties": false,
|
|
4962
|
+
"description": "This key defines options that are specific to Color Inputs.",
|
|
4809
4963
|
"documented": true,
|
|
4810
4964
|
"title": "options",
|
|
4811
4965
|
"markdownDescription": "This key defines options that are specific to Color Inputs."
|
|
@@ -4815,12 +4969,12 @@
|
|
|
4815
4969
|
"type"
|
|
4816
4970
|
],
|
|
4817
4971
|
"additionalProperties": false,
|
|
4972
|
+
"title": "Color Input",
|
|
4973
|
+
"description": "This key defines an editing interface for color values.",
|
|
4818
4974
|
"documented": true,
|
|
4819
4975
|
"markdownDescription": "This key defines an editing interface for color values."
|
|
4820
4976
|
},
|
|
4821
4977
|
"BooleanInput": {
|
|
4822
|
-
"title": "Boolean Input",
|
|
4823
|
-
"description": "This key defines an editing interface for true or false values.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input*.\n\n```yaml\n_inputs:\n featured:\n type: switch\n label: Featured\n```",
|
|
4824
4978
|
"type": "object",
|
|
4825
4979
|
"properties": {
|
|
4826
4980
|
"comment": {
|
|
@@ -4865,13 +5019,13 @@
|
|
|
4865
5019
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
4866
5020
|
},
|
|
4867
5021
|
"type": {
|
|
4868
|
-
"title": "Type",
|
|
4869
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input* type.\n\n```yaml\n_inputs:\n featured:\n type: switch\n```",
|
|
4870
5022
|
"type": "string",
|
|
4871
5023
|
"enum": [
|
|
4872
5024
|
"checkbox",
|
|
4873
5025
|
"switch"
|
|
4874
5026
|
],
|
|
5027
|
+
"title": "Type",
|
|
5028
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input* type.\n\n```yaml\n_inputs:\n featured:\n type: switch\n```",
|
|
4875
5029
|
"documented": true,
|
|
4876
5030
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input* type.\n\n```yaml\n_inputs:\n featured:\n type: switch\n```"
|
|
4877
5031
|
}
|
|
@@ -4880,12 +5034,12 @@
|
|
|
4880
5034
|
"type"
|
|
4881
5035
|
],
|
|
4882
5036
|
"additionalProperties": false,
|
|
5037
|
+
"title": "Boolean Input",
|
|
5038
|
+
"description": "This key defines an editing interface for true or false values.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input*.\n\n```yaml\n_inputs:\n featured:\n type: switch\n label: Featured\n```",
|
|
4883
5039
|
"documented": true,
|
|
4884
5040
|
"markdownDescription": "This key defines an editing interface for true or false values.\n\n## Examples\n\nIn this example, we have configured the `featured` key as a *Boolean Input*.\n\n```yaml\n_inputs:\n featured:\n type: switch\n label: Featured\n```"
|
|
4885
5041
|
},
|
|
4886
5042
|
"NumberInput": {
|
|
4887
|
-
"title": "Number Input",
|
|
4888
|
-
"description": "This key defines an editing interface for numeric values.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input*.\n\n```yaml\n_inputs:\n quantity:\n type: number\n label: Quantity\n```",
|
|
4889
5043
|
"type": "object",
|
|
4890
5044
|
"properties": {
|
|
4891
5045
|
"comment": {
|
|
@@ -4930,15 +5084,14 @@
|
|
|
4930
5084
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
4931
5085
|
},
|
|
4932
5086
|
"type": {
|
|
4933
|
-
"title": "Type",
|
|
4934
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input* type.\n\n```yaml\n_inputs:\n quantity:\n type: number\n```",
|
|
4935
5087
|
"type": "string",
|
|
4936
5088
|
"const": "number",
|
|
5089
|
+
"title": "Type",
|
|
5090
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input* type.\n\n```yaml\n_inputs:\n quantity:\n type: number\n```",
|
|
4937
5091
|
"documented": true,
|
|
4938
5092
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input* type.\n\n```yaml\n_inputs:\n quantity:\n type: number\n```"
|
|
4939
5093
|
},
|
|
4940
5094
|
"options": {
|
|
4941
|
-
"description": "This key defines options that are specific to Number Inputs.\n\n## Examples\n\nIn this example, we have configured *Number Input* options including min and max values.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n min: 1\n max: 100\n```",
|
|
4942
5095
|
"type": "object",
|
|
4943
5096
|
"properties": {
|
|
4944
5097
|
"required": {
|
|
@@ -4985,6 +5138,7 @@
|
|
|
4985
5138
|
}
|
|
4986
5139
|
},
|
|
4987
5140
|
"additionalProperties": false,
|
|
5141
|
+
"description": "This key defines options that are specific to Number Inputs.\n\n## Examples\n\nIn this example, we have configured *Number Input* options including min and max values.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n min: 1\n max: 100\n```",
|
|
4988
5142
|
"documented": true,
|
|
4989
5143
|
"title": "options",
|
|
4990
5144
|
"markdownDescription": "This key defines options that are specific to Number Inputs.\n\n## Examples\n\nIn this example, we have configured *Number Input* options including min and max values.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n min: 1\n max: 100\n```"
|
|
@@ -4994,12 +5148,14 @@
|
|
|
4994
5148
|
"type"
|
|
4995
5149
|
],
|
|
4996
5150
|
"additionalProperties": false,
|
|
5151
|
+
"title": "Number Input",
|
|
5152
|
+
"description": "This key defines an editing interface for numeric values.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input*.\n\n```yaml\n_inputs:\n quantity:\n type: number\n label: Quantity\n```",
|
|
4997
5153
|
"documented": true,
|
|
4998
5154
|
"markdownDescription": "This key defines an editing interface for numeric values.\n\n## Examples\n\nIn this example, we have configured the `quantity` key as a *Number Input*.\n\n```yaml\n_inputs:\n quantity:\n type: number\n label: Quantity\n```"
|
|
4999
5155
|
},
|
|
5000
5156
|
"type._inputs.*.options.empty_type(number)": {
|
|
5001
|
-
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty number values will be saved.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n empty_type: number\n```",
|
|
5002
5157
|
"default": "null",
|
|
5158
|
+
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty number values will be saved.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n empty_type: number\n```",
|
|
5003
5159
|
"type": "string",
|
|
5004
5160
|
"enum": [
|
|
5005
5161
|
"null",
|
|
@@ -5010,15 +5166,15 @@
|
|
|
5010
5166
|
"markdownDescription": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty number values will be saved.\n\n```yaml\n_inputs:\n quantity:\n type: number\n options:\n empty_type: number\n```"
|
|
5011
5167
|
},
|
|
5012
5168
|
"type._inputs.*.options.min": {
|
|
5013
|
-
"description": "This key defines the minimum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a lesser numerical value.\n\nIf the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any number.\n\nIf `options.max` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a minimum rating of one.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```",
|
|
5014
5169
|
"type": "number",
|
|
5170
|
+
"description": "This key defines the minimum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a lesser numerical value.\n\nIf the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any number.\n\nIf `options.max` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a minimum rating of one.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```",
|
|
5015
5171
|
"documented": true,
|
|
5016
5172
|
"title": "min",
|
|
5017
5173
|
"markdownDescription": "This key defines the minimum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a lesser numerical value.\n\nIf the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any number.\n\nIf `options.max` is also configured, this key cannot be a greater number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a minimum rating of one.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```"
|
|
5018
5174
|
},
|
|
5019
5175
|
"type._inputs.*.options.max": {
|
|
5020
|
-
"description": "This key defines the maximum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a greater numerical value.\n\nIf the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any integer.\n\nIf `options.min` is also configured, this key cannot be a lesser number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a maximum rating of five.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```",
|
|
5021
5176
|
"type": "number",
|
|
5177
|
+
"description": "This key defines the maximum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a greater numerical value.\n\nIf the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any integer.\n\nIf `options.min` is also configured, this key cannot be a lesser number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a maximum rating of five.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```",
|
|
5022
5178
|
"documented": true,
|
|
5023
5179
|
"title": "max",
|
|
5024
5180
|
"markdownDescription": "This key defines the maximum numerical value CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from entering a greater numerical value.\n\nIf the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your\nunsaved changes.\n\nThis key is required for `range` inputs.\n\nValue can be any integer.\n\nIf `options.min` is also configured, this key cannot be a lesser number.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we want to add a rating out of five for each article in our travel blog using the `rating` Input. This Input limits you to a maximum rating of five.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n min: 1\n```"
|
|
@@ -5045,8 +5201,6 @@
|
|
|
5045
5201
|
"markdownDescription": "This key defines a custom error message that explains why a value has failed the validation criteria from `options.max`.\nThis key requires you to define `options.max`.\n\nThis key has no default.\n\nThis key is available for Number Inputs.\n\n## Examples\n\nIn this example, we prompt our team to enter a valid number using a custom message.\n\n```yaml\n_inputs:\n rating:\n type: number\n comment: How highly did you rate this experience?\n options:\n max: 5\n max_message: Cannot be more than 5\n min: 1\n min_message: Cannot be less than 1\n```"
|
|
5046
5202
|
},
|
|
5047
5203
|
"RangeInput": {
|
|
5048
|
-
"title": "Range Input",
|
|
5049
|
-
"description": "This key defines a slider interface for selecting a numeric value.",
|
|
5050
5204
|
"type": "object",
|
|
5051
5205
|
"properties": {
|
|
5052
5206
|
"comment": {
|
|
@@ -5091,15 +5245,14 @@
|
|
|
5091
5245
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
5092
5246
|
},
|
|
5093
5247
|
"type": {
|
|
5094
|
-
"title": "Type",
|
|
5095
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5096
5248
|
"type": "string",
|
|
5097
5249
|
"const": "range",
|
|
5250
|
+
"title": "Type",
|
|
5251
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5098
5252
|
"documented": true,
|
|
5099
5253
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
5100
5254
|
},
|
|
5101
5255
|
"options": {
|
|
5102
|
-
"description": "This key defines options that are specific to Range Inputs.",
|
|
5103
5256
|
"type": "object",
|
|
5104
5257
|
"properties": {
|
|
5105
5258
|
"required": {
|
|
@@ -5138,6 +5291,7 @@
|
|
|
5138
5291
|
"max"
|
|
5139
5292
|
],
|
|
5140
5293
|
"additionalProperties": false,
|
|
5294
|
+
"description": "This key defines options that are specific to Range Inputs.",
|
|
5141
5295
|
"documented": true,
|
|
5142
5296
|
"title": "options",
|
|
5143
5297
|
"markdownDescription": "This key defines options that are specific to Range Inputs."
|
|
@@ -5147,12 +5301,12 @@
|
|
|
5147
5301
|
"type"
|
|
5148
5302
|
],
|
|
5149
5303
|
"additionalProperties": false,
|
|
5304
|
+
"title": "Range Input",
|
|
5305
|
+
"description": "This key defines a slider interface for selecting a numeric value.",
|
|
5150
5306
|
"documented": true,
|
|
5151
5307
|
"markdownDescription": "This key defines a slider interface for selecting a numeric value."
|
|
5152
5308
|
},
|
|
5153
5309
|
"RichTextInput": {
|
|
5154
|
-
"title": "Rich Text Input",
|
|
5155
|
-
"description": "This key defines an editing interface for HTML markup content.",
|
|
5156
5310
|
"type": "object",
|
|
5157
5311
|
"properties": {
|
|
5158
5312
|
"comment": {
|
|
@@ -5197,18 +5351,17 @@
|
|
|
5197
5351
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
5198
5352
|
},
|
|
5199
5353
|
"type": {
|
|
5200
|
-
"title": "Type",
|
|
5201
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5202
5354
|
"type": "string",
|
|
5203
5355
|
"enum": [
|
|
5204
5356
|
"html",
|
|
5205
5357
|
"markdown"
|
|
5206
5358
|
],
|
|
5359
|
+
"title": "Type",
|
|
5360
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5207
5361
|
"documented": true,
|
|
5208
5362
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
5209
5363
|
},
|
|
5210
5364
|
"options": {
|
|
5211
|
-
"description": "This key defines options that are specific to Rich Text Inputs.",
|
|
5212
5365
|
"type": "object",
|
|
5213
5366
|
"properties": {
|
|
5214
5367
|
"mime_type": {
|
|
@@ -5361,6 +5514,33 @@
|
|
|
5361
5514
|
"min_length_message": {
|
|
5362
5515
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
5363
5516
|
},
|
|
5517
|
+
"max_words": {
|
|
5518
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
5519
|
+
},
|
|
5520
|
+
"max_words_message": {
|
|
5521
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
5522
|
+
},
|
|
5523
|
+
"min_words": {
|
|
5524
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
5525
|
+
},
|
|
5526
|
+
"min_words_message": {
|
|
5527
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
5528
|
+
},
|
|
5529
|
+
"max_graphemes": {
|
|
5530
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
5531
|
+
},
|
|
5532
|
+
"max_graphemes_message": {
|
|
5533
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
5534
|
+
},
|
|
5535
|
+
"min_graphemes": {
|
|
5536
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
5537
|
+
},
|
|
5538
|
+
"min_graphemes_message": {
|
|
5539
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
5540
|
+
},
|
|
5541
|
+
"locale": {
|
|
5542
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
5543
|
+
},
|
|
5364
5544
|
"pattern": {
|
|
5365
5545
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
5366
5546
|
},
|
|
@@ -5386,12 +5566,20 @@
|
|
|
5386
5566
|
"title": "empty_type"
|
|
5387
5567
|
},
|
|
5388
5568
|
"allow_resize": {
|
|
5389
|
-
"
|
|
5390
|
-
"default": false,
|
|
5569
|
+
"deprecated": true,
|
|
5391
5570
|
"type": "boolean",
|
|
5392
5571
|
"documented": true,
|
|
5393
5572
|
"title": "allow_resize",
|
|
5394
|
-
"
|
|
5573
|
+
"description": "This key is deprecated. Use `preview_resize` instead.\n\nThis key toggles whether CloudCannon will show the resize handler to vertically resize the input.\n\nSetting this key to `false` will hide the resize handler.\n\nBy default, this key is `true` (i.e., the resize handler is shown).",
|
|
5574
|
+
"markdownDescription": "This key is deprecated. Use `preview_resize` instead.\n\nThis key toggles whether CloudCannon will show the resize handler to vertically resize the input.\n\nSetting this key to `false` will hide the resize handler.\n\nBy default, this key is `true` (i.e., the resize handler is shown)."
|
|
5575
|
+
},
|
|
5576
|
+
"prevent_resize": {
|
|
5577
|
+
"description": "Shows or hides the resize handler to vertically resize the input.",
|
|
5578
|
+
"default": false,
|
|
5579
|
+
"type": "boolean",
|
|
5580
|
+
"documented": true,
|
|
5581
|
+
"title": "prevent_resize",
|
|
5582
|
+
"markdownDescription": "Shows or hides the resize handler to vertically resize the input."
|
|
5395
5583
|
},
|
|
5396
5584
|
"initial_height": {
|
|
5397
5585
|
"description": "This key defines the initial height of this input in pixels (px).",
|
|
@@ -5402,6 +5590,7 @@
|
|
|
5402
5590
|
}
|
|
5403
5591
|
},
|
|
5404
5592
|
"additionalProperties": false,
|
|
5593
|
+
"description": "This key defines options that are specific to Rich Text Inputs.",
|
|
5405
5594
|
"documented": true,
|
|
5406
5595
|
"title": "options",
|
|
5407
5596
|
"markdownDescription": "This key defines options that are specific to Rich Text Inputs."
|
|
@@ -5411,6 +5600,8 @@
|
|
|
5411
5600
|
"type"
|
|
5412
5601
|
],
|
|
5413
5602
|
"additionalProperties": false,
|
|
5603
|
+
"title": "Rich Text Input",
|
|
5604
|
+
"description": "This key defines an editing interface for HTML markup content.",
|
|
5414
5605
|
"documented": true,
|
|
5415
5606
|
"markdownDescription": "This key defines an editing interface for HTML markup content."
|
|
5416
5607
|
},
|
|
@@ -5500,8 +5691,8 @@
|
|
|
5500
5691
|
"type": "object",
|
|
5501
5692
|
"properties": {
|
|
5502
5693
|
"size": {
|
|
5503
|
-
"description": "This key defines a number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).\n\n## Examples\n\nIn this example, we have configured a size definition for an *Image Input* to create a 2x relative size image.\n\n```yaml\n_inputs:\n hero_image:\n type: image\n options:\n sizes:\n - size: 2x\n```",
|
|
5504
5694
|
"type": "string",
|
|
5695
|
+
"description": "This key defines a number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).\n\n## Examples\n\nIn this example, we have configured a size definition for an *Image Input* to create a 2x relative size image.\n\n```yaml\n_inputs:\n hero_image:\n type: image\n options:\n sizes:\n - size: 2x\n```",
|
|
5505
5696
|
"documented": true,
|
|
5506
5697
|
"title": "size",
|
|
5507
5698
|
"markdownDescription": "This key defines a number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).\n\n## Examples\n\nIn this example, we have configured a size definition for an *Image Input* to create a 2x relative size image.\n\n```yaml\n_inputs:\n hero_image:\n type: image\n options:\n sizes:\n - size: 2x\n```"
|
|
@@ -5527,7 +5718,6 @@
|
|
|
5527
5718
|
"markdownDescription": "This key defines definitions for creating additional images of different sizes when uploading or selecting existing files.\n\n## Examples\n\nIn this example, we have configured an *Image Input* to create additional images of different sizes when uploading or selecting files.\n\n```yaml\n_inputs:\n hero_image:\n type: image\n options:\n sizes:\n - size: 2x\n - size: 3x\n```"
|
|
5528
5719
|
},
|
|
5529
5720
|
"type.paths": {
|
|
5530
|
-
"title": "Paths",
|
|
5531
5721
|
"type": "object",
|
|
5532
5722
|
"properties": {
|
|
5533
5723
|
"static": {
|
|
@@ -5553,6 +5743,7 @@
|
|
|
5553
5743
|
}
|
|
5554
5744
|
},
|
|
5555
5745
|
"additionalProperties": false,
|
|
5746
|
+
"title": "Paths",
|
|
5556
5747
|
"documented": true,
|
|
5557
5748
|
"description": "This key defines paths for your Rich Text editors or File inputs.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `paths` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured paths for the `blog` Collection to set custom upload and static paths.\n\n```yaml\ncollections_config:\n blog:\n paths:\n uploads: /uploads/blog/\n static: /assets/\n```",
|
|
5558
5749
|
"markdownDescription": "This key defines paths for your Rich Text editors or File inputs.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `paths` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured paths for the `blog` Collection to set custom upload and static paths.\n\n```yaml\ncollections_config:\n blog:\n paths:\n uploads: /uploads/blog/\n static: /assets/\n```"
|
|
@@ -5843,11 +6034,11 @@
|
|
|
5843
6034
|
"markdownDescription": "This key toggles whether CloudCannon will display a tool in your WYSIWYG toolbar to insert a [Snippet](https://cloudcannon.com/documentation/articles/what-is-a-snippet/), if any are available.\n\nSetting this key to `true` will enable a tool in your WYSIWYG toolbar to insert a Snippet."
|
|
5844
6035
|
},
|
|
5845
6036
|
"type._editables.*.styles": {
|
|
5846
|
-
"description": "This key toggles whether CloudCannon will display a dropdown menu in your WYSIWYG toolbar to apply a style to selected text.\n\
|
|
6037
|
+
"description": "This key toggles whether CloudCannon will display a dropdown menu in your WYSIWYG toolbar to apply a style to selected text.\n\n## Examples\n\nIn this example, we have enabled a dropdown menu in our WYSIWYG toolbar to apply a style to selected text. The styles are defined in the `/css/styles.css` file.\n\n```yaml\n_editables:\n content:\n styles: /css/styles.css\n```\n\nThis example file defines the styles that CloudCannon can add to your WYSIWYG toolbar.\n\n```css\n/* Can be applied to blocks of content */\np.callout {\n margin: 10px;\n border: 1px solid #f5f5f5;\n background-color: #eee;\n}\n\n/* Can be applied to inline content */\nspan.big-blue-text {\n font-size: 2rem;\n color: blue;\n}\n\n/* Applied to content, excluded from style dropdown */\nh2 {\n font-family: cursive;\n}\n\n/* Applied to content, excluded from style dropdown */\n.align-left { text-align: left; }\n.align-center { text-align: center; }\n.align-right { text-align: right; }\n.align-justify { text-align: justify; }\n```",
|
|
5847
6038
|
"type": "string",
|
|
5848
6039
|
"documented": true,
|
|
5849
6040
|
"title": "styles",
|
|
5850
|
-
"markdownDescription": "This key toggles whether CloudCannon will display a dropdown menu in your WYSIWYG toolbar to apply a style to selected text.\n\
|
|
6041
|
+
"markdownDescription": "This key toggles whether CloudCannon will display a dropdown menu in your WYSIWYG toolbar to apply a style to selected text.\n\n## Examples\n\nIn this example, we have enabled a dropdown menu in our WYSIWYG toolbar to apply a style to selected text. The styles are defined in the `/css/styles.css` file.\n\n```yaml\n_editables:\n content:\n styles: /css/styles.css\n```\n\nThis example file defines the styles that CloudCannon can add to your WYSIWYG toolbar.\n\n```css\n/* Can be applied to blocks of content */\np.callout {\n margin: 10px;\n border: 1px solid #f5f5f5;\n background-color: #eee;\n}\n\n/* Can be applied to inline content */\nspan.big-blue-text {\n font-size: 2rem;\n color: blue;\n}\n\n/* Applied to content, excluded from style dropdown */\nh2 {\n font-family: cursive;\n}\n\n/* Applied to content, excluded from style dropdown */\n.align-left { text-align: left; }\n.align-center { text-align: center; }\n.align-right { text-align: right; }\n.align-justify { text-align: justify; }\n```"
|
|
5851
6042
|
},
|
|
5852
6043
|
"type._editables.*.table": {
|
|
5853
6044
|
"description": "This key toggles whether CloudCannon will display a tool in your WYSIWYG toolbar to insert a table.\n\nSetting this key to `true` will enable a tool in your WYSIWYG toolbar to insert a table. Further table options are available from the table context menu in the rich text editor.",
|
|
@@ -5874,8 +6065,6 @@
|
|
|
5874
6065
|
"markdownDescription": "This key toggles whether CloudCannon will display a tool in your WYSIWYG toolbar to merge a list item with the item below it in an ordered or unordered list.\n\nSetting this key to `true` will enable a tool in your WYSIWYG toolbar to merge a list item with the item below it."
|
|
5875
6066
|
},
|
|
5876
6067
|
"DateInput": {
|
|
5877
|
-
"title": "Date/Datetime Input",
|
|
5878
|
-
"description": "This key defines an editing interface for date and/or time values.",
|
|
5879
6068
|
"type": "object",
|
|
5880
6069
|
"properties": {
|
|
5881
6070
|
"comment": {
|
|
@@ -5920,18 +6109,17 @@
|
|
|
5920
6109
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
5921
6110
|
},
|
|
5922
6111
|
"type": {
|
|
5923
|
-
"title": "Type",
|
|
5924
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5925
6112
|
"type": "string",
|
|
5926
6113
|
"enum": [
|
|
5927
6114
|
"date",
|
|
5928
6115
|
"datetime"
|
|
5929
6116
|
],
|
|
6117
|
+
"title": "Type",
|
|
6118
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
5930
6119
|
"documented": true,
|
|
5931
6120
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
5932
6121
|
},
|
|
5933
6122
|
"options": {
|
|
5934
|
-
"description": "This key defines options that are specific to Date Inputs.",
|
|
5935
6123
|
"type": "object",
|
|
5936
6124
|
"properties": {
|
|
5937
6125
|
"required": {
|
|
@@ -5964,10 +6152,10 @@
|
|
|
5964
6152
|
"description": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting an earlier date and time.\n\nIf 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\nyour unsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.\n\nThe value can have quotation marks or no quotation marks.\n\nIf `options.end_before` is also configured, this key cannot be a later date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs.\n\n## Examples\n\nIn this example, we want our team to enter the date and time of an event in the `2022_event` Input. This Input will only allow dates on or after January 1st, 2022.\n\n```yaml\n_inputs:\n 2022_event:\n type: datetime\n options:\n start_from: 2022-01-01T00:00:00Z\n end_before: 2023-01-01T00:00:00Z\n```",
|
|
5965
6153
|
"anyOf": [
|
|
5966
6154
|
{
|
|
5967
|
-
"title": "String Start From",
|
|
5968
6155
|
"type": "string",
|
|
5969
6156
|
"format": "date-time",
|
|
5970
6157
|
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z||([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
|
|
6158
|
+
"title": "String Start From",
|
|
5971
6159
|
"documented": true,
|
|
5972
6160
|
"description": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting an earlier date and time.\n\nIf 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\nyour unsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format and should be in quotes.\n\nIf `options.end_before` is also configured, this key cannot be a later date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs.",
|
|
5973
6161
|
"markdownDescription": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting an earlier date and time.\n\nIf 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\nyour unsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format and should be in quotes.\n\nIf `options.end_before` is also configured, this key cannot be a later date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs."
|
|
@@ -5994,10 +6182,10 @@
|
|
|
5994
6182
|
"description": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting a later date and time.\n\nIf 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\nunsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.\n\nThe value can have quotation marks or no quotation marks.\n\nIf `options.start_from` is also configured, this key cannot be an earlier date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs.\n\n## Examples\n\nIn this example, we want our team to enter the date and time of an event in the `2022_event` Input. This Input will only allow dates before January 1st, 2023.\n\n```yaml\n_inputs:\n 2022_event:\n type: datetime\n options:\n start_from: 2022-01-01T00:00:00Z\n end_before: 2023-01-01T00:00:00Z\n```",
|
|
5995
6183
|
"anyOf": [
|
|
5996
6184
|
{
|
|
5997
|
-
"title": "String End Before",
|
|
5998
6185
|
"type": "string",
|
|
5999
6186
|
"format": "date-time",
|
|
6000
6187
|
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z||([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
|
|
6188
|
+
"title": "String End Before",
|
|
6001
6189
|
"documented": true,
|
|
6002
6190
|
"description": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting a later date and time.\n\nIf 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\nunsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.\n\nIf `options.start_from` is also configured, this key cannot be an earlier date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs.",
|
|
6003
6191
|
"markdownDescription": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input.\n\nWhen configured, CloudCannon will prevent you from selecting a later date and time.\n\nIf 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\nunsaved changes.\n\nValue must be in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.\n\nIf `options.start_from` is also configured, this key cannot be an earlier date and time.\n\nThis key has no default.\n\nThis key is available for Date and Time Inputs."
|
|
@@ -6022,6 +6210,7 @@
|
|
|
6022
6210
|
}
|
|
6023
6211
|
},
|
|
6024
6212
|
"additionalProperties": false,
|
|
6213
|
+
"description": "This key defines options that are specific to Date Inputs.",
|
|
6025
6214
|
"documented": true,
|
|
6026
6215
|
"title": "options",
|
|
6027
6216
|
"markdownDescription": "This key defines options that are specific to Date Inputs."
|
|
@@ -6031,11 +6220,12 @@
|
|
|
6031
6220
|
"type"
|
|
6032
6221
|
],
|
|
6033
6222
|
"additionalProperties": false,
|
|
6223
|
+
"title": "Date/Datetime Input",
|
|
6224
|
+
"description": "This key defines an editing interface for date and/or time values.",
|
|
6034
6225
|
"documented": true,
|
|
6035
6226
|
"markdownDescription": "This key defines an editing interface for date and/or time values."
|
|
6036
6227
|
},
|
|
6037
6228
|
"type.timezone": {
|
|
6038
|
-
"title": "Timezone",
|
|
6039
6229
|
"type": "string",
|
|
6040
6230
|
"enum": [
|
|
6041
6231
|
"Africa/Abidjan",
|
|
@@ -6634,13 +6824,12 @@
|
|
|
6634
6824
|
"WET",
|
|
6635
6825
|
"Zulu"
|
|
6636
6826
|
],
|
|
6827
|
+
"title": "Timezone",
|
|
6637
6828
|
"documented": true,
|
|
6638
6829
|
"description": "This key defines the timezone for your Site.\n\nValue must be in IANA timezone format.\n\nFor more information, please read our documentation on [Date and Time inputs](https://cloudcannon.com/documentation/articles/what-are-date-and-time-inputs/).",
|
|
6639
6830
|
"markdownDescription": "This key defines the timezone for your Site.\n\nValue must be in IANA timezone format.\n\nFor more information, please read our documentation on [Date and Time inputs](https://cloudcannon.com/documentation/articles/what-are-date-and-time-inputs/)."
|
|
6640
6831
|
},
|
|
6641
6832
|
"TimeInput": {
|
|
6642
|
-
"title": "Time Input",
|
|
6643
|
-
"description": "This key defines an editing interface for time values only.",
|
|
6644
6833
|
"type": "object",
|
|
6645
6834
|
"properties": {
|
|
6646
6835
|
"comment": {
|
|
@@ -6685,15 +6874,14 @@
|
|
|
6685
6874
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
6686
6875
|
},
|
|
6687
6876
|
"type": {
|
|
6688
|
-
"title": "Type",
|
|
6689
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
6690
6877
|
"type": "string",
|
|
6691
6878
|
"const": "time",
|
|
6879
|
+
"title": "Type",
|
|
6880
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
6692
6881
|
"documented": true,
|
|
6693
6882
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
6694
6883
|
},
|
|
6695
6884
|
"options": {
|
|
6696
|
-
"description": "This key defines options that are specific to Time Inputs.",
|
|
6697
6885
|
"type": "object",
|
|
6698
6886
|
"properties": {
|
|
6699
6887
|
"required": {
|
|
@@ -6713,6 +6901,7 @@
|
|
|
6713
6901
|
}
|
|
6714
6902
|
},
|
|
6715
6903
|
"additionalProperties": false,
|
|
6904
|
+
"description": "This key defines options that are specific to Time Inputs.",
|
|
6716
6905
|
"documented": true,
|
|
6717
6906
|
"title": "options",
|
|
6718
6907
|
"markdownDescription": "This key defines options that are specific to Time Inputs."
|
|
@@ -6722,12 +6911,12 @@
|
|
|
6722
6911
|
"type"
|
|
6723
6912
|
],
|
|
6724
6913
|
"additionalProperties": false,
|
|
6914
|
+
"title": "Time Input",
|
|
6915
|
+
"description": "This key defines an editing interface for time values only.",
|
|
6725
6916
|
"documented": true,
|
|
6726
6917
|
"markdownDescription": "This key defines an editing interface for time values only."
|
|
6727
6918
|
},
|
|
6728
6919
|
"FileInput": {
|
|
6729
|
-
"title": "File Input",
|
|
6730
|
-
"description": "This key defines an editing interface for uploading files to your repository or DAM and browsing existing assets.",
|
|
6731
6920
|
"type": "object",
|
|
6732
6921
|
"properties": {
|
|
6733
6922
|
"comment": {
|
|
@@ -6772,19 +6961,18 @@
|
|
|
6772
6961
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
6773
6962
|
},
|
|
6774
6963
|
"type": {
|
|
6775
|
-
"title": "Type",
|
|
6776
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
6777
6964
|
"type": "string",
|
|
6778
6965
|
"enum": [
|
|
6779
6966
|
"file",
|
|
6780
6967
|
"document",
|
|
6781
6968
|
"image"
|
|
6782
6969
|
],
|
|
6970
|
+
"title": "Type",
|
|
6971
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
6783
6972
|
"documented": true,
|
|
6784
6973
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
6785
6974
|
},
|
|
6786
6975
|
"options": {
|
|
6787
|
-
"description": "This key defines options that are specific to File Inputs.",
|
|
6788
6976
|
"type": "object",
|
|
6789
6977
|
"properties": {
|
|
6790
6978
|
"mime_type": {
|
|
@@ -6826,6 +7014,33 @@
|
|
|
6826
7014
|
"min_length_message": {
|
|
6827
7015
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
6828
7016
|
},
|
|
7017
|
+
"max_words": {
|
|
7018
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
7019
|
+
},
|
|
7020
|
+
"max_words_message": {
|
|
7021
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
7022
|
+
},
|
|
7023
|
+
"min_words": {
|
|
7024
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
7025
|
+
},
|
|
7026
|
+
"min_words_message": {
|
|
7027
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
7028
|
+
},
|
|
7029
|
+
"max_graphemes": {
|
|
7030
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
7031
|
+
},
|
|
7032
|
+
"max_graphemes_message": {
|
|
7033
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
7034
|
+
},
|
|
7035
|
+
"min_graphemes": {
|
|
7036
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
7037
|
+
},
|
|
7038
|
+
"min_graphemes_message": {
|
|
7039
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
7040
|
+
},
|
|
7041
|
+
"locale": {
|
|
7042
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
7043
|
+
},
|
|
6829
7044
|
"pattern": {
|
|
6830
7045
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
6831
7046
|
},
|
|
@@ -6879,6 +7094,7 @@
|
|
|
6879
7094
|
}
|
|
6880
7095
|
},
|
|
6881
7096
|
"additionalProperties": false,
|
|
7097
|
+
"description": "This key defines options that are specific to File Inputs.",
|
|
6882
7098
|
"documented": true,
|
|
6883
7099
|
"title": "options",
|
|
6884
7100
|
"markdownDescription": "This key defines options that are specific to File Inputs."
|
|
@@ -6888,6 +7104,8 @@
|
|
|
6888
7104
|
"type"
|
|
6889
7105
|
],
|
|
6890
7106
|
"additionalProperties": false,
|
|
7107
|
+
"title": "File Input",
|
|
7108
|
+
"description": "This key defines an editing interface for uploading files to your repository or DAM and browsing existing assets.",
|
|
6891
7109
|
"documented": true,
|
|
6892
7110
|
"markdownDescription": "This key defines an editing interface for uploading files to your repository or DAM and browsing existing assets."
|
|
6893
7111
|
},
|
|
@@ -6895,18 +7113,18 @@
|
|
|
6895
7113
|
"description": "This key defines which file types are available to select or upload to this input.\n\nAccepted format is an array or comma-separated string of MIME types.\n\nThe special value \"*\" means any type is accepted.\n\n## Examples\n\nIn this example, we have configured a *Image Input* to accept only JPEG or PNG files.\n\n```yaml\n_inputs:\n featured_image:\n type: image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n```",
|
|
6896
7114
|
"anyOf": [
|
|
6897
7115
|
{
|
|
6898
|
-
"title": "Comma Separated Accepts Mime Types",
|
|
6899
7116
|
"type": "string",
|
|
7117
|
+
"title": "Comma Separated Accepts Mime Types",
|
|
6900
7118
|
"documented": true,
|
|
6901
7119
|
"description": "This key represents a comma-separated string format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is a string containing MIME types separated by commas. Each MIME type specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the comma-separated format when you prefer a more compact configuration or when working with a small number of MIME types.\n\nThe special value `\"*\"` means any file type is accepted.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using a comma-separated string of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types: 'image/jpeg,image/png,image/webp'\n```\n\nIn this example, we have configured a *File Input* to accept only document files using a comma-separated string of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types: 'application/pdf,application/msword'\n```\n\nIn this example, we have configured a *File Input* to accept any file type using the special `\"*\"` value.\n\n```yaml\n_inputs:\n any_file:\n type: file\n label: Any File\n options:\n accepts_mime_types: '*'\n```",
|
|
6902
7120
|
"markdownDescription": "This key represents a comma-separated string format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is a string containing MIME types separated by commas. Each MIME type specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the comma-separated format when you prefer a more compact configuration or when working with a small number of MIME types.\n\nThe special value `\"*\"` means any file type is accepted.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using a comma-separated string of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types: 'image/jpeg,image/png,image/webp'\n```\n\nIn this example, we have configured a *File Input* to accept only document files using a comma-separated string of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types: 'application/pdf,application/msword'\n```\n\nIn this example, we have configured a *File Input* to accept any file type using the special `\"*\"` value.\n\n```yaml\n_inputs:\n any_file:\n type: file\n label: Any File\n options:\n accepts_mime_types: '*'\n```"
|
|
6903
7121
|
},
|
|
6904
7122
|
{
|
|
6905
|
-
"title": "Array Accepts Mime Types",
|
|
6906
7123
|
"type": "array",
|
|
6907
7124
|
"items": {
|
|
6908
7125
|
"$ref": "#/definitions/MimeType"
|
|
6909
7126
|
},
|
|
7127
|
+
"title": "Array Accepts Mime Types",
|
|
6910
7128
|
"documented": true,
|
|
6911
7129
|
"description": "This key represents an array format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is an array of MIME type strings. Each string specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the array format when you want to explicitly list multiple MIME types, making it easier to read and maintain in your configuration.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using an array of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n - image/webp\n```\n\nIn this example, we have configured a *File Input* to accept only document files using an array of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types:\n - application/pdf\n - application/msword\n - application/vnd.openxmlformats-officedocument.wordprocessingml.document\n```",
|
|
6912
7130
|
"markdownDescription": "This key represents an array format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is an array of MIME type strings. Each string specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the array format when you want to explicitly list multiple MIME types, making it easier to read and maintain in your configuration.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using an array of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n - image/webp\n```\n\nIn this example, we have configured a *File Input* to accept only document files using an array of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types:\n - application/pdf\n - application/msword\n - application/vnd.openxmlformats-officedocument.wordprocessingml.document\n```"
|
|
@@ -6917,8 +7135,6 @@
|
|
|
6917
7135
|
"markdownDescription": "This key defines which file types are available to select or upload to this input.\n\nAccepted format is an array or comma-separated string of MIME types.\n\nThe special value \"*\" means any type is accepted.\n\n## Examples\n\nIn this example, we have configured a *Image Input* to accept only JPEG or PNG files.\n\n```yaml\n_inputs:\n featured_image:\n type: image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n```"
|
|
6918
7136
|
},
|
|
6919
7137
|
"MimeType": {
|
|
6920
|
-
"title": "Mime Type",
|
|
6921
|
-
"description": "This key represents an array format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is an array of MIME type strings. Each string specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the array format when you want to explicitly list multiple MIME types, making it easier to read and maintain in your configuration.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using an array of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n - image/webp\n```\n\nIn this example, we have configured a *File Input* to accept only document files using an array of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types:\n - application/pdf\n - application/msword\n - application/vnd.openxmlformats-officedocument.wordprocessingml.document\n```",
|
|
6922
7138
|
"type": "string",
|
|
6923
7139
|
"enum": [
|
|
6924
7140
|
"x-world/x-3dmf",
|
|
@@ -7355,6 +7571,8 @@
|
|
|
7355
7571
|
"multipart/x-zip",
|
|
7356
7572
|
"text/x-script.zsh"
|
|
7357
7573
|
],
|
|
7574
|
+
"title": "Mime Type",
|
|
7575
|
+
"description": "This key represents an array format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is an array of MIME type strings. Each string specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the array format when you want to explicitly list multiple MIME types, making it easier to read and maintain in your configuration.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using an array of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n - image/webp\n```\n\nIn this example, we have configured a *File Input* to accept only document files using an array of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types:\n - application/pdf\n - application/msword\n - application/vnd.openxmlformats-officedocument.wordprocessingml.document\n```",
|
|
7358
7576
|
"documented": true,
|
|
7359
7577
|
"markdownDescription": "This key represents an array format for the `accepts_mime_types` key that restricts which file types are available to select or upload in *File Inputs*.\n\nThe value is an array of MIME type strings. Each string specifies a file type that CloudCannon will allow for this input.\n\nAvailable MIME types include image formats (`image/x-icon`, `image/gif`, `image/jpeg`, `image/png`, `image/webp`, `image/bmp`, `image/svg+xml`) and document formats (`application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-powerpoint`, `application/vnd.openxmlformats-officedocument.presentationml.presentation`).\n\nUse the array format when you want to explicitly list multiple MIME types, making it easier to read and maintain in your configuration.\n\n## Examples\n\nIn this example, we have configured a *File Input* to accept only image files using an array of image MIME types.\n\n```yaml\n_inputs:\n hero_image:\n type: file\n label: Hero Image\n options:\n accepts_mime_types:\n - image/jpeg\n - image/png\n - image/webp\n```\n\nIn this example, we have configured a *File Input* to accept only document files using an array of document MIME types.\n\n```yaml\n_inputs:\n document:\n type: file\n label: Document\n options:\n accepts_mime_types:\n - application/pdf\n - application/msword\n - application/vnd.openxmlformats-officedocument.wordprocessingml.document\n```"
|
|
7360
7578
|
},
|
|
@@ -7397,8 +7615,6 @@
|
|
|
7397
7615
|
"markdownDescription": "This key toggles whether CloudCannon will prevent file uploads inside the \"Select existing file/image\" file browser modal window.\n\nSetting this key to `true` will prevent file uploads inside the file browser modal window.\n\n## Examples\n\nIn this example, CloudCannon will disable the option to upload files inside the file browser modal window.\n\n```yaml\n_inputs:\n image:\n type: file\n options:\n disable_upload_file_in_file_browser: true\n```"
|
|
7398
7616
|
},
|
|
7399
7617
|
"UrlInput": {
|
|
7400
|
-
"title": "URL Input",
|
|
7401
|
-
"description": "This key defines an editing interface for relative, absolute, and fully qualified URLs.",
|
|
7402
7618
|
"type": "object",
|
|
7403
7619
|
"properties": {
|
|
7404
7620
|
"comment": {
|
|
@@ -7443,15 +7659,14 @@
|
|
|
7443
7659
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
7444
7660
|
},
|
|
7445
7661
|
"type": {
|
|
7446
|
-
"title": "Type",
|
|
7447
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
7448
7662
|
"type": "string",
|
|
7449
7663
|
"const": "url",
|
|
7664
|
+
"title": "Type",
|
|
7665
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
7450
7666
|
"documented": true,
|
|
7451
7667
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
7452
7668
|
},
|
|
7453
7669
|
"options": {
|
|
7454
|
-
"description": "This key defines options that are specific to URL Inputs.",
|
|
7455
7670
|
"type": "object",
|
|
7456
7671
|
"properties": {
|
|
7457
7672
|
"mime_type": {
|
|
@@ -7493,6 +7708,33 @@
|
|
|
7493
7708
|
"min_length_message": {
|
|
7494
7709
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
7495
7710
|
},
|
|
7711
|
+
"max_words": {
|
|
7712
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
7713
|
+
},
|
|
7714
|
+
"max_words_message": {
|
|
7715
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
7716
|
+
},
|
|
7717
|
+
"min_words": {
|
|
7718
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
7719
|
+
},
|
|
7720
|
+
"min_words_message": {
|
|
7721
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
7722
|
+
},
|
|
7723
|
+
"max_graphemes": {
|
|
7724
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
7725
|
+
},
|
|
7726
|
+
"max_graphemes_message": {
|
|
7727
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
7728
|
+
},
|
|
7729
|
+
"min_graphemes": {
|
|
7730
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
7731
|
+
},
|
|
7732
|
+
"min_graphemes_message": {
|
|
7733
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
7734
|
+
},
|
|
7735
|
+
"locale": {
|
|
7736
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
7737
|
+
},
|
|
7496
7738
|
"pattern": {
|
|
7497
7739
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
7498
7740
|
},
|
|
@@ -7578,6 +7820,7 @@
|
|
|
7578
7820
|
}
|
|
7579
7821
|
},
|
|
7580
7822
|
"additionalProperties": false,
|
|
7823
|
+
"description": "This key defines options that are specific to URL Inputs.",
|
|
7581
7824
|
"documented": true,
|
|
7582
7825
|
"title": "options",
|
|
7583
7826
|
"markdownDescription": "This key defines options that are specific to URL Inputs."
|
|
@@ -7587,12 +7830,12 @@
|
|
|
7587
7830
|
"type"
|
|
7588
7831
|
],
|
|
7589
7832
|
"additionalProperties": false,
|
|
7833
|
+
"title": "URL Input",
|
|
7834
|
+
"description": "This key defines an editing interface for relative, absolute, and fully qualified URLs.",
|
|
7590
7835
|
"documented": true,
|
|
7591
7836
|
"markdownDescription": "This key defines an editing interface for relative, absolute, and fully qualified URLs."
|
|
7592
7837
|
},
|
|
7593
7838
|
"SelectInput": {
|
|
7594
|
-
"title": "Select Input",
|
|
7595
|
-
"description": "This key defines an editing interface for data with multiple predefined options.\n\nSelect inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n label: Category\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7596
7839
|
"type": "object",
|
|
7597
7840
|
"properties": {
|
|
7598
7841
|
"comment": {
|
|
@@ -7637,15 +7880,14 @@
|
|
|
7637
7880
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
7638
7881
|
},
|
|
7639
7882
|
"type": {
|
|
7640
|
-
"title": "Type",
|
|
7641
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input* type.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7642
7883
|
"type": "string",
|
|
7643
7884
|
"const": "select",
|
|
7885
|
+
"title": "Type",
|
|
7886
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input* type.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7644
7887
|
"documented": true,
|
|
7645
7888
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input* type.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```"
|
|
7646
7889
|
},
|
|
7647
7890
|
"options": {
|
|
7648
|
-
"description": "This key defines options that are specific to Select Inputs.\n\n## Examples\n\nIn this example, we have configured *Select Input* options including values.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7649
7891
|
"type": "object",
|
|
7650
7892
|
"properties": {
|
|
7651
7893
|
"required": {
|
|
@@ -7702,6 +7944,33 @@
|
|
|
7702
7944
|
"min_length_message": {
|
|
7703
7945
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
7704
7946
|
},
|
|
7947
|
+
"max_words": {
|
|
7948
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
7949
|
+
},
|
|
7950
|
+
"max_words_message": {
|
|
7951
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
7952
|
+
},
|
|
7953
|
+
"min_words": {
|
|
7954
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
7955
|
+
},
|
|
7956
|
+
"min_words_message": {
|
|
7957
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
7958
|
+
},
|
|
7959
|
+
"max_graphemes": {
|
|
7960
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
7961
|
+
},
|
|
7962
|
+
"max_graphemes_message": {
|
|
7963
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
7964
|
+
},
|
|
7965
|
+
"min_graphemes": {
|
|
7966
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
7967
|
+
},
|
|
7968
|
+
"min_graphemes_message": {
|
|
7969
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
7970
|
+
},
|
|
7971
|
+
"locale": {
|
|
7972
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
7973
|
+
},
|
|
7705
7974
|
"pattern": {
|
|
7706
7975
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
7707
7976
|
},
|
|
@@ -7722,6 +7991,7 @@
|
|
|
7722
7991
|
}
|
|
7723
7992
|
},
|
|
7724
7993
|
"additionalProperties": false,
|
|
7994
|
+
"description": "This key defines options that are specific to Select Inputs.\n\n## Examples\n\nIn this example, we have configured *Select Input* options including values.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7725
7995
|
"documented": true,
|
|
7726
7996
|
"title": "options",
|
|
7727
7997
|
"markdownDescription": "This key defines options that are specific to Select Inputs.\n\n## Examples\n\nIn this example, we have configured *Select Input* options including values.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```"
|
|
@@ -7731,11 +8001,12 @@
|
|
|
7731
8001
|
"type"
|
|
7732
8002
|
],
|
|
7733
8003
|
"additionalProperties": false,
|
|
8004
|
+
"title": "Select Input",
|
|
8005
|
+
"description": "This key defines an editing interface for data with multiple predefined options.\n\nSelect inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n label: Category\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7734
8006
|
"documented": true,
|
|
7735
8007
|
"markdownDescription": "This key defines an editing interface for data with multiple predefined options.\n\nSelect inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `category` key as a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n label: Category\n options:\n values:\n - Blog\n - News\n - Events\n```"
|
|
7736
8008
|
},
|
|
7737
8009
|
"type.preview": {
|
|
7738
|
-
"title": "Preview",
|
|
7739
8010
|
"type": "object",
|
|
7740
8011
|
"properties": {
|
|
7741
8012
|
"text": {
|
|
@@ -7767,6 +8038,7 @@
|
|
|
7767
8038
|
}
|
|
7768
8039
|
},
|
|
7769
8040
|
"additionalProperties": false,
|
|
8041
|
+
"title": "Preview",
|
|
7770
8042
|
"documented": true,
|
|
7771
8043
|
"description": "This key defines the appearance of a Card.\n\nYou can configure Card preview for [Collections](https://cloudcannon.com/documentation/articles/what-is-a-collection/), [Schemas](https://cloudcannon.com/documentation/articles/what-is-a-schema/),\n[Object inputs](https://cloudcannon.com/documentation/articles/what-is-an-object-input/), [Array inputs](https://cloudcannon.com/documentation/articles/what-is-an-array-input/), [Select\ninputs](https://cloudcannon.com/documentation/articles/what-is-a-select-input/), [Structures](https://cloudcannon.com/documentation/articles/what-is-a-structure/), the Structure modal,\n[Snippets](https://cloudcannon.com/documentation/articles/what-is-a-snippet/), and the Snippet modal.\n\nFor more information about previews, please read our documentation on [configuring card previews](https://cloudcannon.com/documentation/articles/configure-your-card-previews/).\n\n## Examples\n\nIn this example, we have configured the appearance of file Cards in the *Collection browser*.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n subtext:\n - key: author\n icon: edit_note\n icon_color:\n - key: color\n - '#ff0000'\n image:\n - key: image\n metadata:\n - template: [url]\n - icon: event\n text:\n - template: 'Published on {date|date_long}'\n gallery:\n - key: featured_image\n```\n\nIn this example, we have configured the appearance of Cards in inputs using the Structure `staff`.\n\n```yaml\n_structures:\n staff:\n values:\n - value:\n _type: Employee\n name:\n job_description:\n profile_picture:\n preview:\n text:\n - key: name\n - Employee\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: support_agent\n - value:\n _type: Manager\n name:\n job_description:\n profile_picture:\n url:\n preview:\n text:\n - key: name\n - Manager\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: face\n```",
|
|
7772
8044
|
"markdownDescription": "This key defines the appearance of a Card.\n\nYou can configure Card preview for [Collections](https://cloudcannon.com/documentation/articles/what-is-a-collection/), [Schemas](https://cloudcannon.com/documentation/articles/what-is-a-schema/),\n[Object inputs](https://cloudcannon.com/documentation/articles/what-is-an-object-input/), [Array inputs](https://cloudcannon.com/documentation/articles/what-is-an-array-input/), [Select\ninputs](https://cloudcannon.com/documentation/articles/what-is-a-select-input/), [Structures](https://cloudcannon.com/documentation/articles/what-is-a-structure/), the Structure modal,\n[Snippets](https://cloudcannon.com/documentation/articles/what-is-a-snippet/), and the Snippet modal.\n\nFor more information about previews, please read our documentation on [configuring card previews](https://cloudcannon.com/documentation/articles/configure-your-card-previews/).\n\n## Examples\n\nIn this example, we have configured the appearance of file Cards in the *Collection browser*.\n\n```yaml\ncollections_config:\n blog:\n preview:\n text:\n - key: title\n subtext:\n - key: author\n icon: edit_note\n icon_color:\n - key: color\n - '#ff0000'\n image:\n - key: image\n metadata:\n - template: [url]\n - icon: event\n text:\n - template: 'Published on {date|date_long}'\n gallery:\n - key: featured_image\n```\n\nIn this example, we have configured the appearance of Cards in inputs using the Structure `staff`.\n\n```yaml\n_structures:\n staff:\n values:\n - value:\n _type: Employee\n name:\n job_description:\n profile_picture:\n preview:\n text:\n - key: name\n - Employee\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: support_agent\n - value:\n _type: Manager\n name:\n job_description:\n profile_picture:\n url:\n preview:\n text:\n - key: name\n - Manager\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: face\n```"
|
|
@@ -7962,38 +8234,36 @@
|
|
|
7962
8234
|
"markdownDescription": "This key toggles whether CloudCannon will allow new text values to be created at edit time.\n\nSetting this key to `true` will allow new text values to be created at edit time.\n\n## Examples\n\nIn this example, CloudCannon will allow users to add new values to a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n allow_create: true\n```"
|
|
7963
8235
|
},
|
|
7964
8236
|
"type._inputs.*.options.allow_empty": {
|
|
7965
|
-
"
|
|
7966
|
-
"
|
|
8237
|
+
"deprecated": true,
|
|
8238
|
+
"description": "This key is deprecated. If you want to prevent empty values, we recommend setting `_inputs.*.options.required` to `true` instead.\n\nThis key toggles whether CloudCannon will accept empty values, and pre-select the first option if opened with an empty value.\n\nSetting this key to `true` will allow CloudCannon to accept empty values.\n\n## Examples\n\nIn this example, CloudCannon will accept empty values for a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n allow_empty: true\n```",
|
|
7967
8239
|
"type": "boolean",
|
|
7968
8240
|
"documented": true,
|
|
7969
8241
|
"title": "allow_empty",
|
|
7970
|
-
"markdownDescription": "
|
|
8242
|
+
"markdownDescription": "This key is deprecated. If you want to prevent empty values, we recommend setting `_inputs.*.options.required` to `true` instead.\n\nThis key toggles whether CloudCannon will accept empty values, and pre-select the first option if opened with an empty value.\n\nSetting this key to `true` will allow CloudCannon to accept empty values.\n\n## Examples\n\nIn this example, CloudCannon will accept empty values for a *Select Input*.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n allow_empty: true\n```"
|
|
7971
8243
|
},
|
|
7972
8244
|
"type._inputs.*.options.values": {
|
|
7973
8245
|
"description": "This key defines the values available to choose from.\n\nOptional, defaults to fetching values from the naming convention (e.g. `colors` or `my_colors` for data set `colors`).\n\n## Examples\n\nIn this example, we have configured a *Select Input* with custom values to choose from.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n```",
|
|
7974
8246
|
"anyOf": [
|
|
7975
8247
|
{
|
|
8248
|
+
"type": "string",
|
|
7976
8249
|
"title": "Dataset Reference Values",
|
|
7977
8250
|
"description": "This key defines a reference to a dataset.",
|
|
7978
|
-
"type": "string",
|
|
7979
8251
|
"documented": true,
|
|
7980
8252
|
"markdownDescription": "This key defines a reference to a dataset."
|
|
7981
8253
|
},
|
|
7982
8254
|
{
|
|
7983
|
-
"description": "Data formats for populating select and multiselect input options, supporting arrays and objects.",
|
|
7984
8255
|
"anyOf": [
|
|
7985
8256
|
{
|
|
7986
|
-
"title": "Text Array",
|
|
7987
8257
|
"type": "array",
|
|
7988
8258
|
"items": {
|
|
7989
8259
|
"type": "string",
|
|
7990
8260
|
"documented": false,
|
|
7991
8261
|
"title": "values(any-of-1)(text-array)[*]"
|
|
7992
8262
|
},
|
|
8263
|
+
"title": "Text Array",
|
|
7993
8264
|
"documented": false
|
|
7994
8265
|
},
|
|
7995
8266
|
{
|
|
7996
|
-
"title": "Text Object",
|
|
7997
8267
|
"type": "object",
|
|
7998
8268
|
"propertyNames": {
|
|
7999
8269
|
"type": "string"
|
|
@@ -8003,10 +8273,10 @@
|
|
|
8003
8273
|
"documented": false,
|
|
8004
8274
|
"title": "values(any-of-1)(text-object).*"
|
|
8005
8275
|
},
|
|
8276
|
+
"title": "Text Object",
|
|
8006
8277
|
"documented": false
|
|
8007
8278
|
},
|
|
8008
8279
|
{
|
|
8009
|
-
"title": "Object Array",
|
|
8010
8280
|
"type": "array",
|
|
8011
8281
|
"items": {
|
|
8012
8282
|
"type": "object",
|
|
@@ -8017,18 +8287,20 @@
|
|
|
8017
8287
|
"documented": false,
|
|
8018
8288
|
"title": "values(any-of-1)(object-array)[*]"
|
|
8019
8289
|
},
|
|
8290
|
+
"title": "Object Array",
|
|
8020
8291
|
"documented": false
|
|
8021
8292
|
},
|
|
8022
8293
|
{
|
|
8023
|
-
"title": "Object",
|
|
8024
8294
|
"type": "object",
|
|
8025
8295
|
"propertyNames": {
|
|
8026
8296
|
"type": "string"
|
|
8027
8297
|
},
|
|
8028
8298
|
"additionalProperties": {},
|
|
8299
|
+
"title": "Object",
|
|
8029
8300
|
"documented": false
|
|
8030
8301
|
}
|
|
8031
8302
|
],
|
|
8303
|
+
"description": "Data formats for populating select and multiselect input options, supporting arrays and objects.",
|
|
8032
8304
|
"documented": false,
|
|
8033
8305
|
"title": "values(any-of-1)",
|
|
8034
8306
|
"markdownDescription": "Data formats for populating select and multiselect input options, supporting arrays and objects."
|
|
@@ -8072,8 +8344,6 @@
|
|
|
8072
8344
|
"markdownDescription": "This key defines how CloudCannon should render selectable options in the dropdown of a *Select Input*.\n\n## Examples\n\nIn this example, we have configured a *Select Input* to display options using the card view.\n\n```yaml\n_inputs:\n category:\n type: select\n options:\n values:\n - Blog\n - News\n - Events\n picker_view: card\n```"
|
|
8073
8345
|
},
|
|
8074
8346
|
"MultiselectInput": {
|
|
8075
|
-
"title": "Multiselect Input",
|
|
8076
|
-
"description": "This key defines an editing interface for data with multiple predefined options.\n\nMultiselect inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input*.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n label: Tags\n options:\n values:\n - featured\n - news\n - events\n```",
|
|
8077
8347
|
"type": "object",
|
|
8078
8348
|
"properties": {
|
|
8079
8349
|
"comment": {
|
|
@@ -8118,15 +8388,14 @@
|
|
|
8118
8388
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
8119
8389
|
},
|
|
8120
8390
|
"type": {
|
|
8121
|
-
"title": "Type",
|
|
8122
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input* type.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n```",
|
|
8123
8391
|
"type": "string",
|
|
8124
8392
|
"const": "multiselect",
|
|
8393
|
+
"title": "Type",
|
|
8394
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input* type.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n```",
|
|
8125
8395
|
"documented": true,
|
|
8126
8396
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input* type.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n```"
|
|
8127
8397
|
},
|
|
8128
8398
|
"options": {
|
|
8129
|
-
"description": "This key defines options that are specific to Multiselect Inputs.\n\n## Examples\n\nIn this example, we have configured *Multiselect Input* options including values.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n options:\n values:\n - featured\n - news\n - events\n```",
|
|
8130
8399
|
"type": "object",
|
|
8131
8400
|
"properties": {
|
|
8132
8401
|
"required": {
|
|
@@ -8200,6 +8469,7 @@
|
|
|
8200
8469
|
}
|
|
8201
8470
|
},
|
|
8202
8471
|
"additionalProperties": false,
|
|
8472
|
+
"description": "This key defines options that are specific to Multiselect Inputs.\n\n## Examples\n\nIn this example, we have configured *Multiselect Input* options including values.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n options:\n values:\n - featured\n - news\n - events\n```",
|
|
8203
8473
|
"documented": true,
|
|
8204
8474
|
"title": "options",
|
|
8205
8475
|
"markdownDescription": "This key defines options that are specific to Multiselect Inputs.\n\n## Examples\n\nIn this example, we have configured *Multiselect Input* options including values.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n options:\n values:\n - featured\n - news\n - events\n```"
|
|
@@ -8209,6 +8479,8 @@
|
|
|
8209
8479
|
"type"
|
|
8210
8480
|
],
|
|
8211
8481
|
"additionalProperties": false,
|
|
8482
|
+
"title": "Multiselect Input",
|
|
8483
|
+
"description": "This key defines an editing interface for data with multiple predefined options.\n\nMultiselect inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input*.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n label: Tags\n options:\n values:\n - featured\n - news\n - events\n```",
|
|
8212
8484
|
"documented": true,
|
|
8213
8485
|
"markdownDescription": "This key defines an editing interface for data with multiple predefined options.\n\nMultiselect inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `tags` key as a *Multiselect Input*.\n\n```yaml\n_inputs:\n tags:\n type: multiselect\n label: Tags\n options:\n values:\n - featured\n - news\n - events\n```"
|
|
8214
8486
|
},
|
|
@@ -8255,8 +8527,8 @@
|
|
|
8255
8527
|
"markdownDescription": "This key defines a custom error message that explains why a value has failed the validation criteria from `options.unique_on`.\nThis key requires you to define `options.unique_on`.\n\nThis key has no default.\n\nThis key is available for Array inputs.\n\n## Examples\n\nIn this example, we want our team to add article filepaths to the `related_articles` Input. This Input requires all the filepaths to be unique.\n\n```yaml\n_inputs:\n related_articles:\n type: array\n options:\n unique_on: '$.path'\n unique_on_message: The value for path must be different for all items.\n```\n\n```yaml\nrelated_articles:\n - path: /articles/first-article.md\n featured: true\n - path: /articles/first-article.md\n featured: false\n```"
|
|
8256
8528
|
},
|
|
8257
8529
|
"type._inputs.*.options.empty_type(array)": {
|
|
8258
|
-
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty array values will be saved.\n\n```yaml\n_inputs:\n tags:\n type: array\n options:\n empty_type: array\n```",
|
|
8259
8530
|
"default": "null",
|
|
8531
|
+
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty array values will be saved.\n\n```yaml\n_inputs:\n tags:\n type: array\n options:\n empty_type: array\n```",
|
|
8260
8532
|
"type": "string",
|
|
8261
8533
|
"enum": [
|
|
8262
8534
|
"null",
|
|
@@ -8267,8 +8539,6 @@
|
|
|
8267
8539
|
"markdownDescription": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty array values will be saved.\n\n```yaml\n_inputs:\n tags:\n type: array\n options:\n empty_type: array\n```"
|
|
8268
8540
|
},
|
|
8269
8541
|
"ChoiceInput": {
|
|
8270
|
-
"title": "Choice Input",
|
|
8271
|
-
"description": "This key defines an editing interface for data with multiple predefined options.\n\nChoice inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input*.\n\n```yaml\n_inputs:\n status:\n type: choice\n label: Status\n options:\n values:\n - draft\n - published\n - archived\n```",
|
|
8272
8542
|
"type": "object",
|
|
8273
8543
|
"properties": {
|
|
8274
8544
|
"comment": {
|
|
@@ -8313,15 +8583,14 @@
|
|
|
8313
8583
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
8314
8584
|
},
|
|
8315
8585
|
"type": {
|
|
8316
|
-
"title": "Type",
|
|
8317
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input* type.\n\n```yaml\n_inputs:\n status:\n type: choice\n```",
|
|
8318
8586
|
"type": "string",
|
|
8319
8587
|
"const": "choice",
|
|
8588
|
+
"title": "Type",
|
|
8589
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input* type.\n\n```yaml\n_inputs:\n status:\n type: choice\n```",
|
|
8320
8590
|
"documented": true,
|
|
8321
8591
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input* type.\n\n```yaml\n_inputs:\n status:\n type: choice\n```"
|
|
8322
8592
|
},
|
|
8323
8593
|
"options": {
|
|
8324
|
-
"description": "This key defines options that are specific to Choice Inputs.\n\n## Examples\n\nIn this example, we have configured *Choice Input* options including values.\n\n```yaml\n_inputs:\n status:\n type: choice\n options:\n values:\n - draft\n - published\n - archived\n```",
|
|
8325
8594
|
"type": "object",
|
|
8326
8595
|
"properties": {
|
|
8327
8596
|
"required": {
|
|
@@ -8375,6 +8644,33 @@
|
|
|
8375
8644
|
"min_length_message": {
|
|
8376
8645
|
"$ref": "#/definitions/type._inputs.*.options.min_length_message"
|
|
8377
8646
|
},
|
|
8647
|
+
"max_words": {
|
|
8648
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words"
|
|
8649
|
+
},
|
|
8650
|
+
"max_words_message": {
|
|
8651
|
+
"$ref": "#/definitions/type._inputs.*.options.max_words_message"
|
|
8652
|
+
},
|
|
8653
|
+
"min_words": {
|
|
8654
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words"
|
|
8655
|
+
},
|
|
8656
|
+
"min_words_message": {
|
|
8657
|
+
"$ref": "#/definitions/type._inputs.*.options.min_words_message"
|
|
8658
|
+
},
|
|
8659
|
+
"max_graphemes": {
|
|
8660
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes"
|
|
8661
|
+
},
|
|
8662
|
+
"max_graphemes_message": {
|
|
8663
|
+
"$ref": "#/definitions/type._inputs.*.options.max_graphemes_message"
|
|
8664
|
+
},
|
|
8665
|
+
"min_graphemes": {
|
|
8666
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes"
|
|
8667
|
+
},
|
|
8668
|
+
"min_graphemes_message": {
|
|
8669
|
+
"$ref": "#/definitions/type._inputs.*.options.min_graphemes_message"
|
|
8670
|
+
},
|
|
8671
|
+
"locale": {
|
|
8672
|
+
"$ref": "#/definitions/type._inputs.*.options.locale"
|
|
8673
|
+
},
|
|
8378
8674
|
"pattern": {
|
|
8379
8675
|
"$ref": "#/definitions/type._inputs.*.options.pattern"
|
|
8380
8676
|
},
|
|
@@ -8395,6 +8691,7 @@
|
|
|
8395
8691
|
}
|
|
8396
8692
|
},
|
|
8397
8693
|
"additionalProperties": false,
|
|
8694
|
+
"description": "This key defines options that are specific to Choice Inputs.\n\n## Examples\n\nIn this example, we have configured *Choice Input* options including values.\n\n```yaml\n_inputs:\n status:\n type: choice\n options:\n values:\n - draft\n - published\n - archived\n```",
|
|
8398
8695
|
"documented": true,
|
|
8399
8696
|
"title": "options",
|
|
8400
8697
|
"markdownDescription": "This key defines options that are specific to Choice Inputs.\n\n## Examples\n\nIn this example, we have configured *Choice Input* options including values.\n\n```yaml\n_inputs:\n status:\n type: choice\n options:\n values:\n - draft\n - published\n - archived\n```"
|
|
@@ -8404,12 +8701,12 @@
|
|
|
8404
8701
|
"type"
|
|
8405
8702
|
],
|
|
8406
8703
|
"additionalProperties": false,
|
|
8704
|
+
"title": "Choice Input",
|
|
8705
|
+
"description": "This key defines an editing interface for data with multiple predefined options.\n\nChoice inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input*.\n\n```yaml\n_inputs:\n status:\n type: choice\n label: Status\n options:\n values:\n - draft\n - published\n - archived\n```",
|
|
8407
8706
|
"documented": true,
|
|
8408
8707
|
"markdownDescription": "This key defines an editing interface for data with multiple predefined options.\n\nChoice inputs only allow one value.\n\n## Examples\n\nIn this example, we have configured the `status` key as a *Choice Input*.\n\n```yaml\n_inputs:\n status:\n type: choice\n label: Status\n options:\n values:\n - draft\n - published\n - archived\n```"
|
|
8409
8708
|
},
|
|
8410
8709
|
"MultichoiceInput": {
|
|
8411
|
-
"title": "Multichoice Input",
|
|
8412
|
-
"description": "This key defines an editing interface for data with multiple predefined options.\n\nMultichoice inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input*.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n label: Categories\n options:\n values:\n - technology\n - design\n - business\n```",
|
|
8413
8710
|
"type": "object",
|
|
8414
8711
|
"properties": {
|
|
8415
8712
|
"comment": {
|
|
@@ -8454,15 +8751,14 @@
|
|
|
8454
8751
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
8455
8752
|
},
|
|
8456
8753
|
"type": {
|
|
8457
|
-
"title": "Type",
|
|
8458
|
-
"description": "This key defines the type of editing interface used for an Input.\n\nEach Input type has a different appearance and functionality, processes and accepts different types of values, and has different configuration\noptions.\n\nValue can be one of the following: `auto`, `checkbox`, `switch`, `code`, `color`, `datetime`, `date`, `time`, `file`, `document`, `image`, `number`,\n`range`, `object`, `array`, `select`, `multiselect`, `choice`, `multichoice`, `text`, `textarea`, `email`, `html`, `markdown`, or `url`.\n\nIf the type or value of an Input is misconfigured, CloudCannon will display an orange warning instead of an Input.\n\nIf type is not configured for an Input, CloudCannon will attempt to determine Input type based on value or key name conventions.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input* type.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n```",
|
|
8459
8754
|
"type": "string",
|
|
8460
8755
|
"const": "multichoice",
|
|
8756
|
+
"title": "Type",
|
|
8757
|
+
"description": "This key defines the type of editing interface used for an Input.\n\nEach Input type has a different appearance and functionality, processes and accepts different types of values, and has different configuration\noptions.\n\nValue can be one of the following: `auto`, `checkbox`, `switch`, `code`, `color`, `datetime`, `date`, `time`, `file`, `document`, `image`, `number`,\n`range`, `object`, `array`, `select`, `multiselect`, `choice`, `multichoice`, `text`, `textarea`, `email`, `html`, `markdown`, or `url`.\n\nIf the type or value of an Input is misconfigured, CloudCannon will display an orange warning instead of an Input.\n\nIf type is not configured for an Input, CloudCannon will attempt to determine Input type based on value or key name conventions.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input* type.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n```",
|
|
8461
8758
|
"documented": true,
|
|
8462
8759
|
"markdownDescription": "This key defines the type of editing interface used for an Input.\n\nEach Input type has a different appearance and functionality, processes and accepts different types of values, and has different configuration\noptions.\n\nValue can be one of the following: `auto`, `checkbox`, `switch`, `code`, `color`, `datetime`, `date`, `time`, `file`, `document`, `image`, `number`,\n`range`, `object`, `array`, `select`, `multiselect`, `choice`, `multichoice`, `text`, `textarea`, `email`, `html`, `markdown`, or `url`.\n\nIf the type or value of an Input is misconfigured, CloudCannon will display an orange warning instead of an Input.\n\nIf type is not configured for an Input, CloudCannon will attempt to determine Input type based on value or key name conventions.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input* type.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n```"
|
|
8463
8760
|
},
|
|
8464
8761
|
"options": {
|
|
8465
|
-
"description": "This key defines options that are specific to Multichoice Inputs.\n\n## Examples\n\nIn this example, we have configured *Multichoice Input* options including values.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n options:\n values:\n - technology\n - design\n - business\n```",
|
|
8466
8762
|
"type": "object",
|
|
8467
8763
|
"properties": {
|
|
8468
8764
|
"required": {
|
|
@@ -8533,6 +8829,7 @@
|
|
|
8533
8829
|
}
|
|
8534
8830
|
},
|
|
8535
8831
|
"additionalProperties": false,
|
|
8832
|
+
"description": "This key defines options that are specific to Multichoice Inputs.\n\n## Examples\n\nIn this example, we have configured *Multichoice Input* options including values.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n options:\n values:\n - technology\n - design\n - business\n```",
|
|
8536
8833
|
"documented": true,
|
|
8537
8834
|
"title": "options",
|
|
8538
8835
|
"markdownDescription": "This key defines options that are specific to Multichoice Inputs.\n\n## Examples\n\nIn this example, we have configured *Multichoice Input* options including values.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n options:\n values:\n - technology\n - design\n - business\n```"
|
|
@@ -8542,12 +8839,12 @@
|
|
|
8542
8839
|
"type"
|
|
8543
8840
|
],
|
|
8544
8841
|
"additionalProperties": false,
|
|
8842
|
+
"title": "Multichoice Input",
|
|
8843
|
+
"description": "This key defines an editing interface for data with multiple predefined options.\n\nMultichoice inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input*.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n label: Categories\n options:\n values:\n - technology\n - design\n - business\n```",
|
|
8545
8844
|
"documented": true,
|
|
8546
8845
|
"markdownDescription": "This key defines an editing interface for data with multiple predefined options.\n\nMultichoice inputs allow several values.\n\n## Examples\n\nIn this example, we have configured the `categories` key as a *Multichoice Input*.\n\n```yaml\n_inputs:\n categories:\n type: multichoice\n label: Categories\n options:\n values:\n - technology\n - design\n - business\n```"
|
|
8547
8846
|
},
|
|
8548
8847
|
"ObjectInput": {
|
|
8549
|
-
"title": "Object Input",
|
|
8550
|
-
"description": "This key defines a user interface for a group of inputs.",
|
|
8551
8848
|
"type": "object",
|
|
8552
8849
|
"properties": {
|
|
8553
8850
|
"comment": {
|
|
@@ -8592,15 +8889,14 @@
|
|
|
8592
8889
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
8593
8890
|
},
|
|
8594
8891
|
"type": {
|
|
8595
|
-
"title": "Type",
|
|
8596
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
8597
8892
|
"type": "string",
|
|
8598
8893
|
"const": "object",
|
|
8894
|
+
"title": "Type",
|
|
8895
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
8599
8896
|
"documented": true,
|
|
8600
8897
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
8601
8898
|
},
|
|
8602
8899
|
"options": {
|
|
8603
|
-
"description": "This key defines options that are specific to Object Inputs.",
|
|
8604
8900
|
"type": "object",
|
|
8605
8901
|
"properties": {
|
|
8606
8902
|
"required": {
|
|
@@ -8823,6 +9119,7 @@
|
|
|
8823
9119
|
}
|
|
8824
9120
|
},
|
|
8825
9121
|
"additionalProperties": false,
|
|
9122
|
+
"description": "This key defines options that are specific to Object Inputs.",
|
|
8826
9123
|
"documented": true,
|
|
8827
9124
|
"title": "options",
|
|
8828
9125
|
"markdownDescription": "This key defines options that are specific to Object Inputs."
|
|
@@ -8832,12 +9129,14 @@
|
|
|
8832
9129
|
"type"
|
|
8833
9130
|
],
|
|
8834
9131
|
"additionalProperties": false,
|
|
9132
|
+
"title": "Object Input",
|
|
9133
|
+
"description": "This key defines a user interface for a group of inputs.",
|
|
8835
9134
|
"documented": true,
|
|
8836
9135
|
"markdownDescription": "This key defines a user interface for a group of inputs."
|
|
8837
9136
|
},
|
|
8838
9137
|
"type._inputs.*.options.empty_type(object)": {
|
|
8839
|
-
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty object values will be saved.\n\n```yaml\n_inputs:\n metadata:\n type: object\n options:\n empty_type: object\n```",
|
|
8840
9138
|
"default": "null",
|
|
9139
|
+
"description": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty object values will be saved.\n\n```yaml\n_inputs:\n metadata:\n type: object\n options:\n empty_type: object\n```",
|
|
8841
9140
|
"type": "string",
|
|
8842
9141
|
"enum": [
|
|
8843
9142
|
"null",
|
|
@@ -8848,15 +9147,13 @@
|
|
|
8848
9147
|
"markdownDescription": "This key defines how an 'empty' value will be saved. Does not apply to existing empty values.\n\n## Examples\n\nIn this example, we have configured how empty object values will be saved.\n\n```yaml\n_inputs:\n metadata:\n type: object\n options:\n empty_type: object\n```"
|
|
8849
9148
|
},
|
|
8850
9149
|
"type.structure-reference": {
|
|
9150
|
+
"type": "string",
|
|
8851
9151
|
"title": "Structure Reference",
|
|
8852
9152
|
"description": "A reference to an existing structure.",
|
|
8853
|
-
"type": "string",
|
|
8854
9153
|
"documented": true,
|
|
8855
9154
|
"markdownDescription": "A reference to an existing structure."
|
|
8856
9155
|
},
|
|
8857
9156
|
"type.structure": {
|
|
8858
|
-
"title": "Structure",
|
|
8859
|
-
"description": "This key defines data formats when adding new items to arrays and objects, with options for how editors choose from available values.",
|
|
8860
9157
|
"type": "object",
|
|
8861
9158
|
"properties": {
|
|
8862
9159
|
"reorder_inputs": {
|
|
@@ -8892,11 +9189,11 @@
|
|
|
8892
9189
|
"markdownDescription": "This key toggles whether CloudCannon will remove inputs that are not present in a Structure from a file before loading it in an Editing Interface.\n\nSetting this key to `true` will remove inputs that are not present in a Structure from a file before loading it in an Editing Interface. Non-Structure inputs will not be visible in the [Visual Editor](https://cloudcannon.com/documentation/articles/what-is-the-visual-editor/), [Content\nEditor](https://cloudcannon.com/documentation/articles/what-is-the-content-editor/), or [Data Editor](https://cloudcannon.com/documentation/articles/what-is-the-data-editor/), and saving the file\nwill remove them from the file before persisting the changes to your Git repository.\n\nYou can also configure this behavior for specific values of a Structure using `values[*].remove_extra_inputs`.\n\n## Examples\n\nIn this example, we want to delete old inputs that are not in the Structure from the associated file.\n\n```yaml\n_structures:\n related_articles:\n remove_extra_inputs: true\n values:\n - value:\n name:\n description:\n url:\n```"
|
|
8893
9190
|
},
|
|
8894
9191
|
"values": {
|
|
8895
|
-
"description": "This key defines the options available for a Structure.\n\nYou must define this key for the Structure to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add the `title`, `subtitle`, `author`, `featured_image`, and `url` fields to Object or Array inputs that reference this Structure.\n\n```yaml\n_structures:\n related_articles:\n values:\n - label: Blog\n id:\n default: true\n tabbed: false\n tags:\n - blog\n value:\n title:\n subtitle:\n author:\n featured_image:\n url:\n _inputs:\n featured_image:\n type: image\n options:\n width: 50\n height: 50\n groups:\n - heading: Titles\n inputs:\n - title\n - subtitle\n - heading: Details\n inputs:\n - author\n - image\n - url\n preview:\n text:\n - template: \"{title}\"\n subtext:\n - template: \"By {author}\"\n image:\n - key: image\n picker_preview:\n text: Blog\n subtext: Add a related blog\n icon: post_add\n```",
|
|
8896
9192
|
"type": "array",
|
|
8897
9193
|
"items": {
|
|
8898
9194
|
"$ref": "#/definitions/type.structure.values.[*]"
|
|
8899
9195
|
},
|
|
9196
|
+
"description": "This key defines the options available for a Structure.\n\nYou must define this key for the Structure to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add the `title`, `subtitle`, `author`, `featured_image`, and `url` fields to Object or Array inputs that reference this Structure.\n\n```yaml\n_structures:\n related_articles:\n values:\n - label: Blog\n id:\n default: true\n tabbed: false\n tags:\n - blog\n value:\n title:\n subtitle:\n author:\n featured_image:\n url:\n _inputs:\n featured_image:\n type: image\n options:\n width: 50\n height: 50\n groups:\n - heading: Titles\n inputs:\n - title\n - subtitle\n - heading: Details\n inputs:\n - author\n - image\n - url\n preview:\n text:\n - template: \"{title}\"\n subtext:\n - template: \"By {author}\"\n image:\n - key: image\n picker_preview:\n text: Blog\n subtext: Add a related blog\n icon: post_add\n```",
|
|
8900
9197
|
"documented": true,
|
|
8901
9198
|
"title": "values",
|
|
8902
9199
|
"markdownDescription": "This key defines the options available for a Structure.\n\nYou must define this key for the Structure to function.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we want to add the `title`, `subtitle`, `author`, `featured_image`, and `url` fields to Object or Array inputs that reference this Structure.\n\n```yaml\n_structures:\n related_articles:\n values:\n - label: Blog\n id:\n default: true\n tabbed: false\n tags:\n - blog\n value:\n title:\n subtitle:\n author:\n featured_image:\n url:\n _inputs:\n featured_image:\n type: image\n options:\n width: 50\n height: 50\n groups:\n - heading: Titles\n inputs:\n - title\n - subtitle\n - heading: Details\n inputs:\n - author\n - image\n - url\n preview:\n text:\n - template: \"{title}\"\n subtext:\n - template: \"By {author}\"\n image:\n - key: image\n picker_preview:\n text: Blog\n subtext: Add a related blog\n icon: post_add\n```"
|
|
@@ -8907,13 +9204,13 @@
|
|
|
8907
9204
|
"type": "string",
|
|
8908
9205
|
"documented": true,
|
|
8909
9206
|
"title": "values_from_glob[*]",
|
|
8910
|
-
"description": "This key represents an individual glob pattern string in the `values_from_glob` array.\n\nThe value is a string that specifies a file path pattern relative to the root of your repository. The path must end in the file extension `.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure-value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n
|
|
8911
|
-
"markdownDescription": "This key represents an individual glob pattern string in the `values_from_glob` array.\n\nThe value is a string that specifies a file path pattern relative to the root of your repository. The path must end in the file extension `.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure-value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n
|
|
9207
|
+
"description": "This key represents an individual glob pattern string in the `values_from_glob` array.\n\nThe value is a string that specifies a file path pattern relative to the root of your repository. The path must end in the file extension `.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure-value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n values_from_glob:\n - /.cloudcannon/structures/boardMember.cloudcannon.structure-value.yml\n values:\n - label: Employee\n value:\n name:\n title:\n profile_picture:\n - label: Manager\n value:\n name:\n title:\n profile_picture:\n url:\n```",
|
|
9208
|
+
"markdownDescription": "This key represents an individual glob pattern string in the `values_from_glob` array.\n\nThe value is a string that specifies a file path pattern relative to the root of your repository. The path must end in the file extension `.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure-value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n values_from_glob:\n - /.cloudcannon/structures/boardMember.cloudcannon.structure-value.yml\n values:\n - label: Employee\n value:\n name:\n title:\n profile_picture:\n - label: Manager\n value:\n name:\n title:\n profile_picture:\n url:\n```"
|
|
8912
9209
|
},
|
|
8913
9210
|
"documented": true,
|
|
8914
9211
|
"title": "values_from_glob",
|
|
8915
|
-
"description": "This key defines globs that filter which files CloudCannon should use for *Structure* value configuration.\n\nValues in this array are relative to the root of your repository (i.e., `/`, not the value of `source`) and must end in the file extension\n`.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\nYou can use this key anywhere you would use the `_structures.*.values` key.\n\nPlease see our documentation on [structures_from_glob](https://cloudcannon.com/documentation/developer-reference/configuration-file/types/_structures_from_glob/) for defining a\n*Structure* in a split *Configuration File*.\n\nThis key has no default.\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure_value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n
|
|
8916
|
-
"markdownDescription": "This key defines globs that filter which files CloudCannon should use for *Structure* value configuration.\n\nValues in this array are relative to the root of your repository (i.e., `/`, not the value of `source`) and must end in the file extension\n`.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\nYou can use this key anywhere you would use the `_structures.*.values` key.\n\nPlease see our documentation on [structures_from_glob](https://cloudcannon.com/documentation/developer-reference/configuration-file/types/_structures_from_glob/) for defining a\n*Structure* in a split *Configuration File*.\n\nThis key has no default.\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure_value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n
|
|
9212
|
+
"description": "This key defines globs that filter which files CloudCannon should use for *Structure* value configuration.\n\nValues in this array are relative to the root of your repository (i.e., `/`, not the value of `source`) and must end in the file extension\n`.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\nYou can use this key anywhere you would use the `_structures.*.values` key.\n\nPlease see our documentation on [structures_from_glob](https://cloudcannon.com/documentation/developer-reference/configuration-file/types/_structures_from_glob/) for defining a\n*Structure* in a split *Configuration File*.\n\nThis key has no default.\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure_value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n values_from_glob:\n - /.cloudcannon/structures/boardMember.cloudcannon.structure-value.yml\n values:\n - label: Employee\n value:\n name:\n title:\n profile_picture:\n - label: Manager\n value:\n name:\n title:\n profile_picture:\n url:\n```\n\n```yaml\nlabel: Board\nvalue:\n name:\n title:\n profile_picture:\n url:\n description:\n```",
|
|
9213
|
+
"markdownDescription": "This key defines globs that filter which files CloudCannon should use for *Structure* value configuration.\n\nValues in this array are relative to the root of your repository (i.e., `/`, not the value of `source`) and must end in the file extension\n`.cloudcannon.structure-value.yml` (note the singular form of \"value\").\n\nYou can use this key anywhere you would use the `_structures.*.values` key.\n\nPlease see our documentation on [structures_from_glob](https://cloudcannon.com/documentation/developer-reference/configuration-file/types/_structures_from_glob/) for defining a\n*Structure* in a split *Configuration File*.\n\nThis key has no default.\n\n## Examples\n\nIn this example, the `staff` Array Input uses inline *Structure* values from the main *Configuration File* and also references another value from the `boardMember.cloudcannon.structure_value.yml` in the `/.cloudcannon/structures/` folder.\n\n```yaml\n_inputs:\n staff:\n type: array\n options:\n structures:\n values_from_glob:\n - /.cloudcannon/structures/boardMember.cloudcannon.structure-value.yml\n values:\n - label: Employee\n value:\n name:\n title:\n profile_picture:\n - label: Manager\n value:\n name:\n title:\n profile_picture:\n url:\n```\n\n```yaml\nlabel: Board\nvalue:\n name:\n title:\n profile_picture:\n url:\n description:\n```"
|
|
8917
9214
|
},
|
|
8918
9215
|
"id_key": {
|
|
8919
9216
|
"description": "This key defines which key within `values[*].value` CloudCannon should use to identify the Structure option.\n\nIf CloudCannon cannot find this key in a Structure value, it will compare all other key names in the Structure value to find the correct one.\n\nBy default, this key is `_type`.\n\n## Examples\n\nIn this example, we have change the `id_key` from the default `_type` to `component` to match our existing configuration in the `content_blocks` Array input.\n\n```yaml\n_inputs:\n content_blocks___1___:\n type: array\n options:\n structures: _structures.page_components\n_structures:\n page_components:\n id_key___2___: component\n values:\n - label: Hero Component\n value:\n component___3___: hero\n title:\n description:\n image_path:\n link:\n text:\n url:\n - label: Feature Component\n value:\n component: feature\n image_path:\n title:\n description:\n button:\n link:\n text:\n reversed_layout: false\n - label: Video Component\n value:\n component: video\n image_path:\n videoUrl:\n```",
|
|
@@ -8940,12 +9237,12 @@
|
|
|
8940
9237
|
"values"
|
|
8941
9238
|
],
|
|
8942
9239
|
"additionalProperties": false,
|
|
9240
|
+
"title": "Structure",
|
|
9241
|
+
"description": "This key defines data formats when adding new items to arrays and objects, with options for how editors choose from available values.",
|
|
8943
9242
|
"documented": true,
|
|
8944
9243
|
"markdownDescription": "This key defines data formats when adding new items to arrays and objects, with options for how editors choose from available values."
|
|
8945
9244
|
},
|
|
8946
9245
|
"type.structure.values.[*]": {
|
|
8947
|
-
"title": "Structure Value",
|
|
8948
|
-
"description": "This key represents a single value option within a structure, defining the data format and appearance for content editors.",
|
|
8949
9246
|
"type": "object",
|
|
8950
9247
|
"properties": {
|
|
8951
9248
|
"reorder_inputs": {
|
|
@@ -9206,9 +9503,24 @@
|
|
|
9206
9503
|
"value"
|
|
9207
9504
|
],
|
|
9208
9505
|
"additionalProperties": false,
|
|
9506
|
+
"title": "Structure Value",
|
|
9507
|
+
"description": "This key represents a single value option within a structure, defining the data format and appearance for content editors.",
|
|
9209
9508
|
"documented": true,
|
|
9210
9509
|
"markdownDescription": "This key represents a single value option within a structure, defining the data format and appearance for content editors."
|
|
9211
9510
|
},
|
|
9511
|
+
"type._inputs": {
|
|
9512
|
+
"type": "object",
|
|
9513
|
+
"propertyNames": {
|
|
9514
|
+
"type": "string"
|
|
9515
|
+
},
|
|
9516
|
+
"additionalProperties": {
|
|
9517
|
+
"$ref": "#/definitions/Input"
|
|
9518
|
+
},
|
|
9519
|
+
"title": "Inputs",
|
|
9520
|
+
"description": "This key defines which inputs are available at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_inputs` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured the `date_created` key as a *Date and Time Input*, which will automatically populate when you create a file using this input. Editors cannot alter this input as the interface is disabled.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n comment: UTC +0 timezone\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n hidden: false\n disabled: true\n instance_value: NOW\n cascade: true\n options:\n timezone: Etc/UTC\n```\n\nIn this example, we have configured the `blog_tags` key as a *Multiselect Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n blog_tags:\n type: multiselect\n label: Blog type\n comment: Select a blog type\n context:\n open: false\n title: Help\n icon: help\n content: |\n Blog tags help our users filter articles by topic.\n options:\n values:\n - Opinion\n - Feature\n - Resource\n```",
|
|
9521
|
+
"documented": true,
|
|
9522
|
+
"markdownDescription": "This key defines which inputs are available at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_inputs` will default to any\nvalues configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\n## Examples\n\nIn this example, we have configured the `date_created` key as a *Date and Time Input*, which will automatically populate when you create a file using this input. Editors cannot alter this input as the interface is disabled.\n\n```yaml\n_inputs:\n date_created:\n type: datetime\n label: Date of article creation\n comment: UTC +0 timezone\n context:\n open: false\n title: Help\n icon: help\n content: This date field will automatically populate when you create an article.\n hidden: false\n disabled: true\n instance_value: NOW\n cascade: true\n options:\n timezone: Etc/UTC\n```\n\nIn this example, we have configured the `blog_tags` key as a *Multiselect Input* in the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _inputs:\n blog_tags:\n type: multiselect\n label: Blog type\n comment: Select a blog type\n context:\n open: false\n title: Help\n icon: help\n content: |\n Blog tags help our users filter articles by topic.\n options:\n values:\n - Opinion\n - Feature\n - Resource\n```"
|
|
9523
|
+
},
|
|
9212
9524
|
"type._inputs_from_glob": {
|
|
9213
9525
|
"type": "array",
|
|
9214
9526
|
"items": {
|
|
@@ -9224,27 +9536,23 @@
|
|
|
9224
9536
|
"markdownDescription": "This key defines globs that filter which files CloudCannon should use for *Input* configuration.\n\nValues in this array are relative to the root of your repository (i.e., `/`, not the value of `source`) and must end in the file extension\n`.cloudcannon.inputs.yml`.\n\nYou can use this key anywhere you would use the `_inputs` key in the configuration cascade.\n\nThis key has no default.\n\n## Examples\n\nIn this example, we have several *Input Configuration Files* in the `.cloudcannon/inputs/` folder, with each file containing multiple *Input* definitions. The value of the `_inputs_from_glob` key tells CloudCannon to only use the `seo.cloudcannon.inputs.yml` and `blog-details.cloudcannon.inputs.yml` files in that folder.\n\n```yaml\ncollections_config:\n posts:\n path: content/posts\n icon: event\n inputs_from_glob:\n - '/.cloudcannon/inputs/seo.cloudcannon.inputs.yml'\n - '/.cloudcannon/inputs/blogDetails.cloudcannon.inputs.yml'\n```\n\n```yaml\nseo_title:\n type: text\n options:\n required: true\n max_length: 50\nseo_description:\n type: textarea\n options:\n show_count: true\n required: true\n max_length: 125\nseo_image:\n type: image\n options:\n path:\n uploads: images\n accepts_mime_types:\n - image/png\n - image/jpeg\n required: true\n pattern: (?i)\\.(jpe?g|png)$\n pattern_message: Please select a JPG or PNG image file\n```"
|
|
9225
9537
|
},
|
|
9226
9538
|
"type._select_data": {
|
|
9227
|
-
"title": "Select Data",
|
|
9228
|
-
"description": "This key defines defines fixed data sets to populate Select and Multiselect inputs at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_select_data` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [Select and Multiselect inputs](https://cloudcannon.com/documentation/articles/what-is-a-select-input/#fixed-data-sets).\n\n## Examples\n\nIn this example, we have configured the `blog_tags` Multiselect input for the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _select_data:\n blog_topics:\n - Opinion\n - Feature\n - Resource\n```",
|
|
9229
9539
|
"type": "object",
|
|
9230
9540
|
"propertyNames": {
|
|
9231
9541
|
"type": "string"
|
|
9232
9542
|
},
|
|
9233
9543
|
"additionalProperties": {
|
|
9234
|
-
"description": "This key defines data formats for populating select and multiselect input options, supporting arrays and objects.",
|
|
9235
9544
|
"anyOf": [
|
|
9236
9545
|
{
|
|
9237
|
-
"title": "Text Array Select Data",
|
|
9238
9546
|
"type": "array",
|
|
9239
9547
|
"items": {
|
|
9240
9548
|
"type": "string",
|
|
9241
9549
|
"documented": true,
|
|
9242
9550
|
"title": "*(text-array)[*]"
|
|
9243
9551
|
},
|
|
9552
|
+
"title": "Text Array Select Data",
|
|
9244
9553
|
"documented": true
|
|
9245
9554
|
},
|
|
9246
9555
|
{
|
|
9247
|
-
"title": "Text Object Select Data",
|
|
9248
9556
|
"type": "object",
|
|
9249
9557
|
"propertyNames": {
|
|
9250
9558
|
"type": "string"
|
|
@@ -9254,10 +9562,10 @@
|
|
|
9254
9562
|
"documented": true,
|
|
9255
9563
|
"title": "*(text-object).*"
|
|
9256
9564
|
},
|
|
9565
|
+
"title": "Text Object Select Data",
|
|
9257
9566
|
"documented": true
|
|
9258
9567
|
},
|
|
9259
9568
|
{
|
|
9260
|
-
"title": "Object Array Select Data",
|
|
9261
9569
|
"type": "array",
|
|
9262
9570
|
"items": {
|
|
9263
9571
|
"type": "object",
|
|
@@ -9268,28 +9576,30 @@
|
|
|
9268
9576
|
"documented": true,
|
|
9269
9577
|
"title": "*(object-array)[*]"
|
|
9270
9578
|
},
|
|
9579
|
+
"title": "Object Array Select Data",
|
|
9271
9580
|
"documented": true
|
|
9272
9581
|
},
|
|
9273
9582
|
{
|
|
9274
|
-
"title": "Object Select Data",
|
|
9275
9583
|
"type": "object",
|
|
9276
9584
|
"propertyNames": {
|
|
9277
9585
|
"type": "string"
|
|
9278
9586
|
},
|
|
9279
9587
|
"additionalProperties": {},
|
|
9588
|
+
"title": "Object Select Data",
|
|
9280
9589
|
"documented": true
|
|
9281
9590
|
}
|
|
9282
9591
|
],
|
|
9592
|
+
"description": "This key defines data formats for populating select and multiselect input options, supporting arrays and objects.",
|
|
9283
9593
|
"documented": true,
|
|
9284
9594
|
"title": "_select_data.*",
|
|
9285
9595
|
"markdownDescription": "This key defines data formats for populating select and multiselect input options, supporting arrays and objects."
|
|
9286
9596
|
},
|
|
9597
|
+
"title": "Select Data",
|
|
9598
|
+
"description": "This key defines defines fixed data sets to populate Select and Multiselect inputs at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_select_data` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [Select and Multiselect inputs](https://cloudcannon.com/documentation/articles/what-is-a-select-input/#fixed-data-sets).\n\n## Examples\n\nIn this example, we have configured the `blog_tags` Multiselect input for the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _select_data:\n blog_topics:\n - Opinion\n - Feature\n - Resource\n```",
|
|
9287
9599
|
"documented": true,
|
|
9288
9600
|
"markdownDescription": "This key defines defines fixed data sets to populate Select and Multiselect inputs at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_select_data` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [Select and Multiselect inputs](https://cloudcannon.com/documentation/articles/what-is-a-select-input/#fixed-data-sets).\n\n## Examples\n\nIn this example, we have configured the `blog_tags` Multiselect input for the `blog` Collection.\n\n```yaml\ncollections_config:\n blog:\n _select_data:\n blog_topics:\n - Opinion\n - Feature\n - Resource\n```"
|
|
9289
9601
|
},
|
|
9290
9602
|
"type._structures": {
|
|
9291
|
-
"title": "Structures",
|
|
9292
|
-
"description": "This key defines which structures are available for [Object inputs](https://cloudcannon.com/documentation/articles/what-is-an-object-input/) and [Array\ninputs](https://cloudcannon.com/documentation/articles/what-is-an-array-input/) at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_structures` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [structures](https://cloudcannon.com/documentation/articles/what-is-a-structure/).\n\n## Examples\n\nIn this example, we want to populate an Array input in the `blog` Collection with Related Articles, including the `name`, `description`, and `url` fields.\n\n```yaml\ncollections_config:\n blog:\n _structures:\n related_articles:\n style: select\n values:\n - preview:\n text:\n - key: name\n subtext:\n - key: url\n value:\n name:\n description:\n url:\n```\n\nIn this example, we want to populate an Array input with Staff members, including the `name`, `job_description`, and `profile_picture` fields for all staff types, and the `url` field for Managers only.\n\n```yaml\n_structures:\n staff:\n style: modal\n hide_extra_inputs: false\n values:\n - value:\n _type: Employee\n name:\n job_description:\n profile_picture:\n preview:\n text:\n - key: name\n - Employee\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: support_agent\n - value:\n _type: Manager\n name:\n job_description:\n profile_picture:\n url:\n preview:\n text:\n - key: name\n - Manager\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: face\n```",
|
|
9293
9603
|
"type": "object",
|
|
9294
9604
|
"propertyNames": {
|
|
9295
9605
|
"type": "string"
|
|
@@ -9297,6 +9607,8 @@
|
|
|
9297
9607
|
"additionalProperties": {
|
|
9298
9608
|
"$ref": "#/definitions/type.structure"
|
|
9299
9609
|
},
|
|
9610
|
+
"title": "Structures",
|
|
9611
|
+
"description": "This key defines which structures are available for [Object inputs](https://cloudcannon.com/documentation/articles/what-is-an-object-input/) and [Array\ninputs](https://cloudcannon.com/documentation/articles/what-is-an-array-input/) at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_structures` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [structures](https://cloudcannon.com/documentation/articles/what-is-a-structure/).\n\n## Examples\n\nIn this example, we want to populate an Array input in the `blog` Collection with Related Articles, including the `name`, `description`, and `url` fields.\n\n```yaml\ncollections_config:\n blog:\n _structures:\n related_articles:\n style: select\n values:\n - preview:\n text:\n - key: name\n subtext:\n - key: url\n value:\n name:\n description:\n url:\n```\n\nIn this example, we want to populate an Array input with Staff members, including the `name`, `job_description`, and `profile_picture` fields for all staff types, and the `url` field for Managers only.\n\n```yaml\n_structures:\n staff:\n style: modal\n hide_extra_inputs: false\n values:\n - value:\n _type: Employee\n name:\n job_description:\n profile_picture:\n preview:\n text:\n - key: name\n - Employee\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: support_agent\n - value:\n _type: Manager\n name:\n job_description:\n profile_picture:\n url:\n preview:\n text:\n - key: name\n - Manager\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: face\n```",
|
|
9300
9612
|
"documented": true,
|
|
9301
9613
|
"markdownDescription": "This key defines which structures are available for [Object inputs](https://cloudcannon.com/documentation/articles/what-is-an-object-input/) and [Array\ninputs](https://cloudcannon.com/documentation/articles/what-is-an-array-input/) at a given level of the configuration cascade.\n\nThis key has no default.\n\nIf undefined at higher levels of the [configuration cascade](https://cloudcannon.com/documentation/articles/using-the-configuration-cascade/), `_structures` will default to\nany values configured in the [CloudCannon configuration file](https://cloudcannon.com/documentation/articles/what-is-the-cloudcannon-configuration-file/).\n\nFor more information, please read our documentation on [structures](https://cloudcannon.com/documentation/articles/what-is-a-structure/).\n\n## Examples\n\nIn this example, we want to populate an Array input in the `blog` Collection with Related Articles, including the `name`, `description`, and `url` fields.\n\n```yaml\ncollections_config:\n blog:\n _structures:\n related_articles:\n style: select\n values:\n - preview:\n text:\n - key: name\n subtext:\n - key: url\n value:\n name:\n description:\n url:\n```\n\nIn this example, we want to populate an Array input with Staff members, including the `name`, `job_description`, and `profile_picture` fields for all staff types, and the `url` field for Managers only.\n\n```yaml\n_structures:\n staff:\n style: modal\n hide_extra_inputs: false\n values:\n - value:\n _type: Employee\n name:\n job_description:\n profile_picture:\n preview:\n text:\n - key: name\n - Employee\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: support_agent\n - value:\n _type: Manager\n name:\n job_description:\n profile_picture:\n url:\n preview:\n text:\n - key: name\n - Manager\n subtext:\n - key: job_description\n - Description of position\n image:\n - key: profile_picture\n icon: face\n```"
|
|
9302
9614
|
},
|
|
@@ -9322,8 +9634,6 @@
|
|
|
9322
9634
|
"markdownDescription": "This key defines the subtitle text above the key input when adding or renaming entries within a mutable *Object Input*.\n\nThe value is a string that supports a limited selection of Markdown formatting: links, bold, italic, subscript, superscript, and inline code elements are allowed.\n\nAvailable for Mutable Objects only.\n\n## Examples\n\nIn this example, we have configured a comment with Markdown formatting to provide help text above the key input.\n\n```yaml\n_inputs:\n metadata:\n type: object\n options:\n allow_create: true\n entries:\n comment: Key names should be **lowercase** and use underscores (e.g., `article_title`)\n```"
|
|
9323
9635
|
},
|
|
9324
9636
|
"ArrayInput": {
|
|
9325
|
-
"title": "Array Input",
|
|
9326
|
-
"description": "This key defines a user interface for lists of inputs or input groups.",
|
|
9327
9637
|
"type": "object",
|
|
9328
9638
|
"properties": {
|
|
9329
9639
|
"comment": {
|
|
@@ -9368,15 +9678,14 @@
|
|
|
9368
9678
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
9369
9679
|
},
|
|
9370
9680
|
"type": {
|
|
9371
|
-
"title": "Type",
|
|
9372
|
-
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
9373
9681
|
"type": "string",
|
|
9374
9682
|
"const": "array",
|
|
9683
|
+
"title": "Type",
|
|
9684
|
+
"description": "This key defines the input type, which controls how this input appears and behaves.",
|
|
9375
9685
|
"documented": true,
|
|
9376
9686
|
"markdownDescription": "This key defines the input type, which controls how this input appears and behaves."
|
|
9377
9687
|
},
|
|
9378
9688
|
"options": {
|
|
9379
|
-
"description": "This key defines options that are specific to Array Inputs.",
|
|
9380
9689
|
"type": "object",
|
|
9381
9690
|
"properties": {
|
|
9382
9691
|
"required": {
|
|
@@ -9437,6 +9746,7 @@
|
|
|
9437
9746
|
}
|
|
9438
9747
|
},
|
|
9439
9748
|
"additionalProperties": false,
|
|
9749
|
+
"description": "This key defines options that are specific to Array Inputs.",
|
|
9440
9750
|
"documented": true,
|
|
9441
9751
|
"title": "options",
|
|
9442
9752
|
"markdownDescription": "This key defines options that are specific to Array Inputs."
|
|
@@ -9446,6 +9756,8 @@
|
|
|
9446
9756
|
"type"
|
|
9447
9757
|
],
|
|
9448
9758
|
"additionalProperties": false,
|
|
9759
|
+
"title": "Array Input",
|
|
9760
|
+
"description": "This key defines a user interface for lists of inputs or input groups.",
|
|
9449
9761
|
"documented": true,
|
|
9450
9762
|
"markdownDescription": "This key defines a user interface for lists of inputs or input groups."
|
|
9451
9763
|
},
|
|
@@ -9474,9 +9786,6 @@
|
|
|
9474
9786
|
"markdownDescription": "This key toggles whether CloudCannon will hide the controls on each item for moving them.\n\nSetting this key to `true` will hide the controls for moving items.\n\nBy default, this key is `false` (i.e., the controls for moving items are displayed)."
|
|
9475
9787
|
},
|
|
9476
9788
|
"AutoInput": {
|
|
9477
|
-
"title": "Automatic Input",
|
|
9478
|
-
"description": "Provides a default user interface based on the data contained.",
|
|
9479
|
-
"excludeFromDocumentation": true,
|
|
9480
9789
|
"type": "object",
|
|
9481
9790
|
"properties": {
|
|
9482
9791
|
"comment": {
|
|
@@ -9521,10 +9830,10 @@
|
|
|
9521
9830
|
"$ref": "#/definitions/type._inputs.*.cascade"
|
|
9522
9831
|
},
|
|
9523
9832
|
"type": {
|
|
9524
|
-
"title": "Type",
|
|
9525
|
-
"description": "Sets an input type, which controls how this input appears and behaves.",
|
|
9526
9833
|
"type": "string",
|
|
9527
9834
|
"const": "auto",
|
|
9835
|
+
"title": "Type",
|
|
9836
|
+
"description": "Sets an input type, which controls how this input appears and behaves.",
|
|
9528
9837
|
"documented": false,
|
|
9529
9838
|
"markdownDescription": "Sets an input type, which controls how this input appears and behaves."
|
|
9530
9839
|
},
|
|
@@ -9539,13 +9848,13 @@
|
|
|
9539
9848
|
"type"
|
|
9540
9849
|
],
|
|
9541
9850
|
"additionalProperties": false,
|
|
9851
|
+
"title": "Automatic Input",
|
|
9852
|
+
"description": "Provides a default user interface based on the data contained.",
|
|
9853
|
+
"excludeFromDocumentation": true,
|
|
9542
9854
|
"documented": false,
|
|
9543
9855
|
"markdownDescription": "Provides a default user interface based on the data contained."
|
|
9544
9856
|
},
|
|
9545
9857
|
"UnknownInput": {
|
|
9546
|
-
"title": "Unknown Input",
|
|
9547
|
-
"description": "Provides a default user interface based on the data contained.",
|
|
9548
|
-
"excludeFromDocumentation": true,
|
|
9549
9858
|
"type": "object",
|
|
9550
9859
|
"properties": {
|
|
9551
9860
|
"comment": {
|
|
@@ -9597,10 +9906,13 @@
|
|
|
9597
9906
|
}
|
|
9598
9907
|
},
|
|
9599
9908
|
"additionalProperties": false,
|
|
9909
|
+
"title": "Unknown Input",
|
|
9910
|
+
"description": "Provides a default user interface based on the data contained.",
|
|
9911
|
+
"excludeFromDocumentation": true,
|
|
9600
9912
|
"documented": false,
|
|
9601
9913
|
"markdownDescription": "Provides a default user interface based on the data contained."
|
|
9602
9914
|
}
|
|
9603
9915
|
},
|
|
9604
9916
|
"documented": false,
|
|
9605
|
-
"
|
|
9917
|
+
"title": ""
|
|
9606
9918
|
}
|