shel-neos-schema 1.0.0
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/.editorconfig +14 -0
- package/.idea/GitLink.xml +6 -0
- package/.idea/Shel.Neos.Schema.iml +8 -0
- package/.idea/dbnavigator.xml +463 -0
- package/.idea/inspectionProfiles/Project_Default.xml +73 -0
- package/.idea/jsonSchemas.xml +83 -0
- package/.idea/modules.xml +8 -0
- package/.idea/php-inspections-ea-ultimate.xml +20 -0
- package/.idea/php.xml +34 -0
- package/.idea/vcs.xml +6 -0
- package/.nvmrc +1 -0
- package/.yarnrc.yml +3 -0
- package/Caches.Schema.json +306 -0
- package/NodeMigration.Schema.json +529 -0
- package/NodeTypes.Presets.Schema.json +66 -0
- package/NodeTypes.Schema.Strict.json +7 -0
- package/NodeTypes.Schema.json +1759 -0
- package/Readme.md +204 -0
- package/Routes.Schema.json +166 -0
- package/bin/validate.js +161 -0
- package/examples/Caches.yaml +17 -0
- package/examples/NodeTypes.Editors.yaml +238 -0
- package/examples/NodeTypes.Simple.yaml +33 -0
- package/examples/NodeTypes.Validators.yaml +62 -0
- package/examples/NodeTypes.WithChildren.yaml +14 -0
- package/examples/NodeTypes.WithTemplate.yaml +27 -0
- package/examples/Routes.Entity.yaml +17 -0
- package/examples/Routes.Prefixed.yaml +7 -0
- package/examples/Routes.yaml +60 -0
- package/examples/Settings.Presets.yaml +20 -0
- package/examples/Version20140708120530.yaml +48 -0
- package/neos-schema-example.gif +0 -0
- package/package.json +31 -0
|
@@ -0,0 +1,529 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeMigration.Schema.json",
|
|
4
|
+
"title": "Neos Node-Migration Schema",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"definitions": {
|
|
7
|
+
"configuration": {
|
|
8
|
+
"type": "object",
|
|
9
|
+
"additionalProperties": false,
|
|
10
|
+
"properties": {
|
|
11
|
+
"comments": {
|
|
12
|
+
"description": "Description what this migration will do.",
|
|
13
|
+
"type": "string"
|
|
14
|
+
},
|
|
15
|
+
"warnings": {
|
|
16
|
+
"description": "If warnings are present, execution of the migration has to explicitly confirmed.",
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"migration": {
|
|
20
|
+
"description": "Transformations to be applied by this migration.",
|
|
21
|
+
"type": "array",
|
|
22
|
+
"items": {
|
|
23
|
+
"$ref": "#/definitions/migration"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"migration": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"additionalProperties": false,
|
|
31
|
+
"properties": {
|
|
32
|
+
"filters": {
|
|
33
|
+
"description": "Conditions determining which nodes the transformations should be applied to.",
|
|
34
|
+
"x-intellij-html-description": "<p>Conditions determining which nodes the transformations should be applied to.<br/><a href=\"https://neos.readthedocs.io/en/stable/References/NodeMigrations.html#filters-reference\">Reference of built-in filters</a></p>",
|
|
35
|
+
"type": "array",
|
|
36
|
+
"items": {
|
|
37
|
+
"$ref": "#/definitions/filter"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"transformations": {
|
|
41
|
+
"description": "Transformations to be applied to the nodes matching the filters",
|
|
42
|
+
"x-intellij-html-description": "<p>Transformations to be applied to the nodes matching the filters<br/><a href=\"https://neos.readthedocs.io/en/stable/References/NodeMigrations.html#transformations-reference\">Reference of built-in transformations</a></p>",
|
|
43
|
+
"type": "array",
|
|
44
|
+
"items": {
|
|
45
|
+
"$ref": "#/definitions/transformation"
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"filter": {
|
|
51
|
+
"anyOf": [
|
|
52
|
+
{
|
|
53
|
+
"type": "object",
|
|
54
|
+
"additionalProperties": false,
|
|
55
|
+
"properties": {
|
|
56
|
+
"type": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"not": {
|
|
59
|
+
"enum": [
|
|
60
|
+
"DimensionValues",
|
|
61
|
+
"IsRemoved",
|
|
62
|
+
"NodeName",
|
|
63
|
+
"NodeType",
|
|
64
|
+
"PropertyNotEmpty",
|
|
65
|
+
"Workspace"
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"settings": {
|
|
70
|
+
"type": [
|
|
71
|
+
"array",
|
|
72
|
+
"object"
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"type": "object",
|
|
79
|
+
"additionalProperties": false,
|
|
80
|
+
"properties": {
|
|
81
|
+
"type": {
|
|
82
|
+
"const": "DimensionValues"
|
|
83
|
+
},
|
|
84
|
+
"settings": {
|
|
85
|
+
"type": "object",
|
|
86
|
+
"additionalProperties": false,
|
|
87
|
+
"properties": {
|
|
88
|
+
"dimensionValues": {
|
|
89
|
+
"description": "The array of dimension values to filter for.",
|
|
90
|
+
"type": "array"
|
|
91
|
+
},
|
|
92
|
+
"filterForDefaultDimensionValues": {
|
|
93
|
+
"description": "Overrides the given dimensionValues with dimension defaults.",
|
|
94
|
+
"type": "boolean"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"type": "object",
|
|
102
|
+
"additionalProperties": false,
|
|
103
|
+
"properties": {
|
|
104
|
+
"type": {
|
|
105
|
+
"const": "IsRemoved"
|
|
106
|
+
},
|
|
107
|
+
"settings": {
|
|
108
|
+
"type": "array"
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"type": "object",
|
|
114
|
+
"additionalProperties": false,
|
|
115
|
+
"properties": {
|
|
116
|
+
"type": {
|
|
117
|
+
"const": "NodeName"
|
|
118
|
+
},
|
|
119
|
+
"settings": {
|
|
120
|
+
"type": "object",
|
|
121
|
+
"additionalProperties": false,
|
|
122
|
+
"properties": {
|
|
123
|
+
"nodeName": {
|
|
124
|
+
"description": "The value to compare the node name against, strict equality is checked",
|
|
125
|
+
"type": "string"
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"required": [
|
|
129
|
+
"nodeName"
|
|
130
|
+
]
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"type": "object",
|
|
136
|
+
"additionalProperties": false,
|
|
137
|
+
"properties": {
|
|
138
|
+
"type": {
|
|
139
|
+
"const": "NodeType"
|
|
140
|
+
},
|
|
141
|
+
"settings": {
|
|
142
|
+
"type": "object",
|
|
143
|
+
"additionalProperties": false,
|
|
144
|
+
"properties": {
|
|
145
|
+
"nodeType": {
|
|
146
|
+
"description": "The node type name to match on.",
|
|
147
|
+
"type": "string"
|
|
148
|
+
},
|
|
149
|
+
"withSubTypes": {
|
|
150
|
+
"description": "Whether the filter should match also on all subtypes of the configured node type. Note: This can only be used with node types still available in the system!",
|
|
151
|
+
"type": "boolean"
|
|
152
|
+
},
|
|
153
|
+
"exclude": {
|
|
154
|
+
"description": "Whether the filter should exclude the given NodeType instead of including only this node type.",
|
|
155
|
+
"type": "boolean"
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
"required": [
|
|
159
|
+
"nodeType"
|
|
160
|
+
]
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"type": "object",
|
|
166
|
+
"additionalProperties": false,
|
|
167
|
+
"properties": {
|
|
168
|
+
"type": {
|
|
169
|
+
"const": "PropertyNotEmpty"
|
|
170
|
+
},
|
|
171
|
+
"settings": {
|
|
172
|
+
"type": "object",
|
|
173
|
+
"additionalProperties": false,
|
|
174
|
+
"properties": {
|
|
175
|
+
"propertyName": {
|
|
176
|
+
"description": "The property name to be checked for non-empty value.",
|
|
177
|
+
"type": "string"
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
"required": [
|
|
181
|
+
"propertyName"
|
|
182
|
+
]
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"type": "object",
|
|
188
|
+
"additionalProperties": false,
|
|
189
|
+
"properties": {
|
|
190
|
+
"type": {
|
|
191
|
+
"const": "Workspace"
|
|
192
|
+
},
|
|
193
|
+
"settings": {
|
|
194
|
+
"type": "object",
|
|
195
|
+
"additionalProperties": false,
|
|
196
|
+
"properties": {
|
|
197
|
+
"workspaceName": {
|
|
198
|
+
"description": "The workspace name to match on.",
|
|
199
|
+
"type": "string"
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
"required": [
|
|
203
|
+
"workspaceName"
|
|
204
|
+
]
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
]
|
|
209
|
+
},
|
|
210
|
+
"transformation": {
|
|
211
|
+
"anyOf": [
|
|
212
|
+
{
|
|
213
|
+
"type": "object",
|
|
214
|
+
"additionalProperties": false,
|
|
215
|
+
"properties": {
|
|
216
|
+
"type": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"not": {
|
|
219
|
+
"enum": [
|
|
220
|
+
"AddDimensions",
|
|
221
|
+
"ChangeNodeType",
|
|
222
|
+
"ChangePropertyValue",
|
|
223
|
+
"RemoveNode",
|
|
224
|
+
"RemoveProperty",
|
|
225
|
+
"RenameDimensions",
|
|
226
|
+
"RenameNode",
|
|
227
|
+
"RenameProperty",
|
|
228
|
+
"SetDimensions",
|
|
229
|
+
"StripTagsOnProperty"
|
|
230
|
+
]
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
"settings": {
|
|
234
|
+
"type": [
|
|
235
|
+
"array",
|
|
236
|
+
"object"
|
|
237
|
+
]
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"type": "object",
|
|
243
|
+
"additionalProperties": false,
|
|
244
|
+
"properties": {
|
|
245
|
+
"type": {
|
|
246
|
+
"const": "AddDimensions"
|
|
247
|
+
},
|
|
248
|
+
"settings": {
|
|
249
|
+
"type": "object",
|
|
250
|
+
"additionalProperties": false,
|
|
251
|
+
"properties": {
|
|
252
|
+
"dimensionValues": {
|
|
253
|
+
"description": "An array of dimension names and values to set.",
|
|
254
|
+
"type": "array"
|
|
255
|
+
},
|
|
256
|
+
"addDefaultDimensionValues": {
|
|
257
|
+
"description": "Whether to add the default dimension values for all dimensions that were not given.",
|
|
258
|
+
"type": "boolean"
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"type": "object",
|
|
266
|
+
"additionalProperties": false,
|
|
267
|
+
"properties": {
|
|
268
|
+
"type": {
|
|
269
|
+
"const": "AddNewProperty"
|
|
270
|
+
},
|
|
271
|
+
"settings": {
|
|
272
|
+
"type": "object",
|
|
273
|
+
"additionalProperties": false,
|
|
274
|
+
"properties": {
|
|
275
|
+
"newPropertyName": {
|
|
276
|
+
"description": "The name of the new property to be added.",
|
|
277
|
+
"type": "string"
|
|
278
|
+
},
|
|
279
|
+
"value": {
|
|
280
|
+
"description": "Property value to be set."
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
"required": [
|
|
284
|
+
"newPropertyName",
|
|
285
|
+
"value"
|
|
286
|
+
]
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"type": "object",
|
|
292
|
+
"additionalProperties": false,
|
|
293
|
+
"properties": {
|
|
294
|
+
"type": {
|
|
295
|
+
"const": "ChangeNodeType"
|
|
296
|
+
},
|
|
297
|
+
"settings": {
|
|
298
|
+
"type": "object",
|
|
299
|
+
"additionalProperties": false,
|
|
300
|
+
"properties": {
|
|
301
|
+
"newType": {
|
|
302
|
+
"description": "The new Node Type to use as a string.",
|
|
303
|
+
"type": "string"
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
"required": [
|
|
307
|
+
"newType"
|
|
308
|
+
]
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"type": "object",
|
|
314
|
+
"additionalProperties": false,
|
|
315
|
+
"properties": {
|
|
316
|
+
"type": {
|
|
317
|
+
"const": "ChangePropertyValue"
|
|
318
|
+
},
|
|
319
|
+
"settings": {
|
|
320
|
+
"type": "object",
|
|
321
|
+
"additionalProperties": false,
|
|
322
|
+
"properties": {
|
|
323
|
+
"property": {
|
|
324
|
+
"description": "The name of the property to change.",
|
|
325
|
+
"type": "string"
|
|
326
|
+
},
|
|
327
|
+
"newValue": {
|
|
328
|
+
"description": "New property value to be set.\n\nThe value of the option currentValuePlaceholder (defaults to “{current}”) will be used to include the current property value into the new value.",
|
|
329
|
+
"x-intellij-html-description": "<p>New property value to be set.\n\nThe value of the option <code>currentValuePlaceholder</code> (defaults to “{current}”) will be used to include the current property value into the new value.</p>",
|
|
330
|
+
"type": [
|
|
331
|
+
"string",
|
|
332
|
+
"number",
|
|
333
|
+
"boolean"
|
|
334
|
+
]
|
|
335
|
+
},
|
|
336
|
+
"search": {
|
|
337
|
+
"description": "Search string to replace in current property value.",
|
|
338
|
+
"type": "string"
|
|
339
|
+
},
|
|
340
|
+
"replace": {
|
|
341
|
+
"description": "Replacement for the search string.",
|
|
342
|
+
"type": "string"
|
|
343
|
+
},
|
|
344
|
+
"currentValuePlaceholder": {
|
|
345
|
+
"description": "The value of this option (defaults to {current}) will be used to include the current property value into the new value.",
|
|
346
|
+
"x-intellij-html-description": "<p>The value of this option (defaults to <code>{current}</code>) will be used to include the current property value into the new value.</p>",
|
|
347
|
+
"type": "string"
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
"type": "object",
|
|
355
|
+
"additionalProperties": false,
|
|
356
|
+
"properties": {
|
|
357
|
+
"type": {
|
|
358
|
+
"const": "RemoveNode"
|
|
359
|
+
},
|
|
360
|
+
"settings": {
|
|
361
|
+
"type": "array"
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
{
|
|
366
|
+
"type": "object",
|
|
367
|
+
"additionalProperties": false,
|
|
368
|
+
"properties": {
|
|
369
|
+
"type": {
|
|
370
|
+
"const": "RemoveProperty"
|
|
371
|
+
},
|
|
372
|
+
"settings": {
|
|
373
|
+
"type": "object",
|
|
374
|
+
"additionalProperties": false,
|
|
375
|
+
"properties": {
|
|
376
|
+
"property": {
|
|
377
|
+
"description": "The name of the property to be removed.",
|
|
378
|
+
"type": "string"
|
|
379
|
+
}
|
|
380
|
+
},
|
|
381
|
+
"required": [
|
|
382
|
+
"property"
|
|
383
|
+
]
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"type": "object",
|
|
389
|
+
"additionalProperties": false,
|
|
390
|
+
"properties": {
|
|
391
|
+
"type": {
|
|
392
|
+
"const": "RenameDimension"
|
|
393
|
+
},
|
|
394
|
+
"settings": {
|
|
395
|
+
"type": "object",
|
|
396
|
+
"additionalProperties": false,
|
|
397
|
+
"properties": {
|
|
398
|
+
"newDimensionName": {
|
|
399
|
+
"description": "The new name for the dimension.",
|
|
400
|
+
"type": "string"
|
|
401
|
+
},
|
|
402
|
+
"oldDimensionName": {
|
|
403
|
+
"description": "The old name of the dimension to rename.",
|
|
404
|
+
"type": "string"
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
"required": [
|
|
408
|
+
"newDimensionName",
|
|
409
|
+
"oldDimensionName"
|
|
410
|
+
]
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
"type": "object",
|
|
416
|
+
"additionalProperties": false,
|
|
417
|
+
"properties": {
|
|
418
|
+
"type": {
|
|
419
|
+
"const": "RenameNode"
|
|
420
|
+
},
|
|
421
|
+
"settings": {
|
|
422
|
+
"type": "object",
|
|
423
|
+
"additionalProperties": false,
|
|
424
|
+
"properties": {
|
|
425
|
+
"newName": {
|
|
426
|
+
"description": "The new name for the node.",
|
|
427
|
+
"type": "string"
|
|
428
|
+
}
|
|
429
|
+
},
|
|
430
|
+
"required": [
|
|
431
|
+
"newName"
|
|
432
|
+
]
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
},
|
|
436
|
+
{
|
|
437
|
+
"type": "object",
|
|
438
|
+
"additionalProperties": false,
|
|
439
|
+
"properties": {
|
|
440
|
+
"type": {
|
|
441
|
+
"const": "RenameProperty"
|
|
442
|
+
},
|
|
443
|
+
"settings": {
|
|
444
|
+
"type": "object",
|
|
445
|
+
"additionalProperties": false,
|
|
446
|
+
"properties": {
|
|
447
|
+
"from": {
|
|
448
|
+
"description": "The name of the property to change.",
|
|
449
|
+
"type": "string"
|
|
450
|
+
},
|
|
451
|
+
"to": {
|
|
452
|
+
"description": "The new name for the property to change.",
|
|
453
|
+
"type": "string"
|
|
454
|
+
}
|
|
455
|
+
},
|
|
456
|
+
"required": [
|
|
457
|
+
"from",
|
|
458
|
+
"to"
|
|
459
|
+
]
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
"type": "object",
|
|
465
|
+
"additionalProperties": false,
|
|
466
|
+
"properties": {
|
|
467
|
+
"type": {
|
|
468
|
+
"const": "SetDimensions"
|
|
469
|
+
},
|
|
470
|
+
"settings": {
|
|
471
|
+
"type": "object",
|
|
472
|
+
"additionalProperties": false,
|
|
473
|
+
"properties": {
|
|
474
|
+
"dimensionValues": {
|
|
475
|
+
"description": "An array of dimension names and values to set.",
|
|
476
|
+
"type": "array"
|
|
477
|
+
},
|
|
478
|
+
"addDefaultDimensionValues": {
|
|
479
|
+
"description": "Whether to add the default dimension values for all dimensions that were not given.",
|
|
480
|
+
"type": "boolean"
|
|
481
|
+
}
|
|
482
|
+
},
|
|
483
|
+
"required": [
|
|
484
|
+
"dimensionValues"
|
|
485
|
+
]
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
},
|
|
489
|
+
{
|
|
490
|
+
"type": "object",
|
|
491
|
+
"additionalProperties": false,
|
|
492
|
+
"properties": {
|
|
493
|
+
"type": {
|
|
494
|
+
"const": "StripTagsOnProperty"
|
|
495
|
+
},
|
|
496
|
+
"settings": {
|
|
497
|
+
"type": "object",
|
|
498
|
+
"additionalProperties": false,
|
|
499
|
+
"properties": {
|
|
500
|
+
"property": {
|
|
501
|
+
"description": "The name of the property to work on.",
|
|
502
|
+
"type": "string"
|
|
503
|
+
}
|
|
504
|
+
},
|
|
505
|
+
"required": [
|
|
506
|
+
"property"
|
|
507
|
+
]
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
]
|
|
512
|
+
}
|
|
513
|
+
},
|
|
514
|
+
"additionalProperties": false,
|
|
515
|
+
"properties": {
|
|
516
|
+
"up": {
|
|
517
|
+
"description": "Transformations to be applied when executing the migration",
|
|
518
|
+
"$ref": "#/definitions/configuration"
|
|
519
|
+
},
|
|
520
|
+
"down": {
|
|
521
|
+
"description": "Transformations to be applied when rolling back the migration",
|
|
522
|
+
"$ref": "#/definitions/configuration"
|
|
523
|
+
}
|
|
524
|
+
},
|
|
525
|
+
"required": [
|
|
526
|
+
"up",
|
|
527
|
+
"down"
|
|
528
|
+
]
|
|
529
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Presets.Schema.json",
|
|
4
|
+
"title": "Neos NodeTypes Presets Schema",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"minProperties": 1,
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"properties": {
|
|
9
|
+
"Neos": {
|
|
10
|
+
"type": "object",
|
|
11
|
+
"additionalProperties": false,
|
|
12
|
+
"properties": {
|
|
13
|
+
"Neos": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"additionalProperties": false,
|
|
16
|
+
"properties": {
|
|
17
|
+
"nodeTypes": {
|
|
18
|
+
"type": "object",
|
|
19
|
+
"additionalProperties": false,
|
|
20
|
+
"properties": {
|
|
21
|
+
"presets": {
|
|
22
|
+
"$comment": "Object with presets for node types",
|
|
23
|
+
"type": "object",
|
|
24
|
+
"properties": {
|
|
25
|
+
"properties": {
|
|
26
|
+
"$comment": "Object with preset namespaces",
|
|
27
|
+
"type": "object",
|
|
28
|
+
"minProperties": 1,
|
|
29
|
+
"additionalProperties": {
|
|
30
|
+
"$comment": "Namespace objects with named property presets",
|
|
31
|
+
"type": "object",
|
|
32
|
+
"additionalProperties": {
|
|
33
|
+
"$comment": "A property preset",
|
|
34
|
+
"type": "object",
|
|
35
|
+
"additionalProperties": false,
|
|
36
|
+
"properties": {
|
|
37
|
+
"type": {
|
|
38
|
+
"$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json#/definitions/propertyTypes"
|
|
39
|
+
},
|
|
40
|
+
"ui": {
|
|
41
|
+
"$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json#/definitions/propertyUIOptions"
|
|
42
|
+
},
|
|
43
|
+
"validation": {
|
|
44
|
+
"$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json#/definitions/validation"
|
|
45
|
+
},
|
|
46
|
+
"defaultValue": {
|
|
47
|
+
"$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json#/definitions/defaultValueType"
|
|
48
|
+
},
|
|
49
|
+
"search": {
|
|
50
|
+
"type": "object"
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json#/definitions/defaultValueValidation"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.Strict.json",
|
|
4
|
+
"allOf": [{ "$ref": "https://raw.githubusercontent.com/Sebobo/Shel.Neos.Schema/main/NodeTypes.Schema.json"}],
|
|
5
|
+
"title": "Neos NodeTypes Schema (Strict)",
|
|
6
|
+
"maxProperties": 1
|
|
7
|
+
}
|