@playcraft/cli 0.1.66 → 0.1.68

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.
Files changed (113) hide show
  1. package/dist/assets/client.js +4 -2
  2. package/dist/assets/messages.js +2 -0
  3. package/dist/audio-source/messages.js +35 -0
  4. package/dist/commands/assets.js +1 -1
  5. package/dist/commands/audio-program.js +82 -0
  6. package/dist/commands/audio-source.js +109 -0
  7. package/dist/commands/audio.js +13 -4
  8. package/dist/commands/build.js +4 -2
  9. package/dist/commands/tools-context.js +46 -0
  10. package/dist/commands/tools.js +2 -0
  11. package/dist/project-skills/builtin-import.js +69 -22
  12. package/dist/project-skills/commands.js +11 -2
  13. package/dist/project-skills/lifecycle.js +1 -1
  14. package/dist/project-skills/local-store.js +90 -31
  15. package/dist/project-skills/messages.js +16 -0
  16. package/dist/project-skills/migrate-lock.js +166 -0
  17. package/dist/project-skills/remote-cache.js +36 -5
  18. package/dist/utils/agent-api-client.js +18 -1
  19. package/dist/utils/agent-generation-provenance.js +8 -2
  20. package/dist/utils/audio-export.js +249 -0
  21. package/dist/utils/audio-processor.js +22 -99
  22. package/dist/utils/execution-context-bridge.js +28 -0
  23. package/dist/workspace-runtime/batch/control.js +13 -2
  24. package/dist/workspace-runtime/batch/generate.js +43 -2
  25. package/dist/workspace-runtime/batch/prepare.js +4 -0
  26. package/dist/workspace-runtime/batch/skill-artifacts.js +103 -0
  27. package/dist/workspace-runtime/batch/source-capture.js +6 -8
  28. package/dist/workspace-runtime/codex/app-server.js +26 -2
  29. package/dist/workspace-runtime/codex/execution-context-broker.js +61 -0
  30. package/dist/workspace-runtime/codex/execution-context-tools.js +37 -0
  31. package/dist/workspace-runtime/codex/generation-provenance-broker.js +9 -6
  32. package/dist/workspace-runtime/codex/level-editor-tools.js +18 -0
  33. package/dist/workspace-runtime/codex/model-broker.js +15 -2
  34. package/dist/workspace-runtime/codex/scheduled-task-tools.js +1 -1
  35. package/dist/workspace-runtime/previews/finalize.js +1 -1
  36. package/dist/workspace-runtime/previews/output.js +4 -1
  37. package/dist/workspace-runtime/previews/publish.js +5 -2
  38. package/dist/workspace-runtime/previews/runtime-preview.js +38 -3
  39. package/dist/workspace-runtime/serve.js +6 -0
  40. package/dist/workspace-runtime/server/accept-operation.js +85 -13
  41. package/dist/workspace-runtime/server/audio-assets.js +257 -0
  42. package/dist/workspace-runtime/server/audio-export.js +136 -0
  43. package/dist/workspace-runtime/server/directory-access.js +222 -67
  44. package/dist/workspace-runtime/server/dispatch.js +252 -29
  45. package/dist/workspace-runtime/server/http.js +97 -3
  46. package/dist/workspace-runtime/server/operation-record.js +1 -1
  47. package/dist/workspace-runtime/workspaces/artifact-files.js +10 -3
  48. package/dist/workspace-runtime/workspaces/artifacts.js +47 -6
  49. package/dist/workspace-runtime/workspaces/asset-library-import.js +27 -7
  50. package/dist/workspace-runtime/workspaces/audio-assets/artifact-package.js +104 -0
  51. package/dist/workspace-runtime/workspaces/audio-assets/binding-usage.js +71 -0
  52. package/dist/workspace-runtime/workspaces/audio-assets/build-inputs.js +80 -0
  53. package/dist/workspace-runtime/workspaces/audio-assets/library-import.js +149 -0
  54. package/dist/workspace-runtime/workspaces/audio-assets/library-package.js +26 -0
  55. package/dist/workspace-runtime/workspaces/audio-assets/program-artifact-audit.js +90 -0
  56. package/dist/workspace-runtime/workspaces/audio-assets/program-browser.js +194 -0
  57. package/dist/workspace-runtime/workspaces/audio-assets/program-build-inputs.js +122 -0
  58. package/dist/workspace-runtime/workspaces/audio-assets/program-engine.js +39 -0
  59. package/dist/workspace-runtime/workspaces/audio-assets/program-package.js +289 -0
  60. package/dist/workspace-runtime/workspaces/audio-assets/program-variant-build.js +217 -0
  61. package/dist/workspace-runtime/workspaces/audio-assets/references.js +107 -0
  62. package/dist/workspace-runtime/workspaces/audio-assets/render-worker.js +117 -0
  63. package/dist/workspace-runtime/workspaces/audio-assets/renderer.js +128 -0
  64. package/dist/workspace-runtime/workspaces/audio-assets/representations.js +73 -0
  65. package/dist/workspace-runtime/workspaces/audio-assets/service.js +459 -0
  66. package/dist/workspace-runtime/workspaces/audio-assets/storage.js +125 -0
  67. package/dist/workspace-runtime/workspaces/build-isolation.js +2 -0
  68. package/dist/workspace-runtime/workspaces/composer-context.js +40 -1
  69. package/dist/workspace-runtime/workspaces/empty-template.js +1 -1
  70. package/dist/workspace-runtime/workspaces/execution-context.js +24 -0
  71. package/dist/workspace-runtime/workspaces/files.js +3 -5
  72. package/dist/workspace-runtime/workspaces/git.js +7 -0
  73. package/dist/workspace-runtime/workspaces/level-editor-agent-store.js +143 -0
  74. package/dist/workspace-runtime/workspaces/level-editor-agent.js +410 -0
  75. package/dist/workspace-runtime/workspaces/level-editor-atomic.js +424 -0
  76. package/dist/workspace-runtime/workspaces/level-editor-extensions.js +140 -0
  77. package/dist/workspace-runtime/workspaces/level-editor-format.js +75 -0
  78. package/dist/workspace-runtime/workspaces/level-editor-history-store.js +250 -0
  79. package/dist/workspace-runtime/workspaces/level-editor-json5.js +132 -0
  80. package/dist/workspace-runtime/workspaces/level-editor-requests.js +724 -0
  81. package/dist/workspace-runtime/workspaces/level-editor.js +454 -0
  82. package/dist/workspace-runtime/workspaces/parameter-initialization-skill.js +62 -22
  83. package/dist/workspace-runtime/workspaces/parameter-production.js +1 -1
  84. package/dist/workspace-runtime/workspaces/remix-reference-skill.js +4 -3
  85. package/dist/workspace-runtime/workspaces/skill-artifact-loader.js +19 -5
  86. package/dist/workspace-runtime/workspaces/skills.js +48 -13
  87. package/package.json +9 -4
  88. package/project-template/.claude/skills/playcraft-audio-generation/SKILL.md +92 -4
  89. package/project-template/.claude/skills/playcraft-level-editor/SKILL.md +34 -0
  90. package/project-template/.claude/skills/playcraft-level-editor/references/authoring-contract.json +3475 -0
  91. package/project-template/.claude/skills/playcraft-level-editor/references/extensions.md +37 -0
  92. package/project-template/.claude/skills/playcraft-level-editor/references/preview.md +15 -0
  93. package/project-template/.claude/skills/playcraft-level-editor/references/protocol-v1.md +35 -0
  94. package/project-template/vite.config.ts +1 -1
  95. package/project-template-v2/.claude/skills/playcraft-audio-generation/SKILL.md +92 -4
  96. package/project-template-v2/.playcraft/skills.lock.json +9 -2
  97. package/project-template-v2/vite.config.ts +1 -1
  98. package/project-templates/empty/AGENTS.md +2 -0
  99. package/project-templates/phaser/.claude/skills/playcraft-audio-generation/SKILL.md +92 -4
  100. package/project-templates/phaser/vite.config.ts +1 -1
  101. package/project-templates/playable-template-phaser/vite.config.ts +1 -1
  102. package/project-templates/threejs/.claude/skills/playcraft-audio-generation/SKILL.md +92 -4
  103. package/project-templates/threejs/vite.config.ts +1 -1
  104. package/templates/preview-runtime/v1/README.md +12 -0
  105. package/templates/preview-runtime/v1/build-preview.mjs +17 -8
  106. package/templates/preview-runtime/v1/manifest.json +9 -6
  107. package/templates/preview-runtime/v1/release-guard.mjs +1 -1
  108. package/templates/preview-runtime/v1/runtime.d.mts +1 -3
  109. package/templates/preview-runtime/v1/runtime.d.ts +1 -3
  110. package/templates/preview-runtime/v1/runtime.mjs +1142 -257
  111. package/templates/preview-runtime/v1/types/host.d.ts +29 -0
  112. package/templates/preview-runtime/v1/types/index.d.ts +6 -0
  113. package/templates/preview-runtime/v1/types/level-editor.d.ts +123 -0
@@ -0,0 +1,3475 @@
1
+ {
2
+ "protocolVersion": 1,
3
+ "transactionVersions": [
4
+ 1,
5
+ 2
6
+ ],
7
+ "extensionProtocol": {
8
+ "$schema": "http://json-schema.org/draft-07/schema#",
9
+ "oneOf": [
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "kind": {
14
+ "type": "string",
15
+ "const": "select"
16
+ },
17
+ "version": {
18
+ "type": "number",
19
+ "const": 1
20
+ },
21
+ "token": {
22
+ "type": "string",
23
+ "maxLength": 128
24
+ },
25
+ "slot": {
26
+ "$ref": "#/definitions/__schema0"
27
+ },
28
+ "identity": {
29
+ "anyOf": [
30
+ {
31
+ "type": "string",
32
+ "minLength": 1,
33
+ "maxLength": 128
34
+ },
35
+ {
36
+ "type": "number"
37
+ }
38
+ ]
39
+ }
40
+ },
41
+ "required": [
42
+ "kind",
43
+ "version",
44
+ "token",
45
+ "slot",
46
+ "identity"
47
+ ],
48
+ "additionalProperties": false
49
+ },
50
+ {
51
+ "type": "object",
52
+ "properties": {
53
+ "kind": {
54
+ "type": "string",
55
+ "const": "ready"
56
+ },
57
+ "version": {
58
+ "type": "number",
59
+ "const": 1
60
+ }
61
+ },
62
+ "required": [
63
+ "kind",
64
+ "version"
65
+ ],
66
+ "additionalProperties": false
67
+ },
68
+ {
69
+ "type": "object",
70
+ "properties": {
71
+ "kind": {
72
+ "type": "string",
73
+ "const": "command"
74
+ },
75
+ "version": {
76
+ "type": "number",
77
+ "const": 1
78
+ },
79
+ "token": {
80
+ "type": "string",
81
+ "maxLength": 128
82
+ },
83
+ "requestId": {
84
+ "$ref": "#/definitions/__schema0"
85
+ },
86
+ "commandId": {
87
+ "$ref": "#/definitions/__schema0"
88
+ },
89
+ "input": {
90
+ "type": "object",
91
+ "propertyNames": {
92
+ "$ref": "#/definitions/__schema0"
93
+ },
94
+ "additionalProperties": {
95
+ "$ref": "#/definitions/__schema1"
96
+ }
97
+ }
98
+ },
99
+ "required": [
100
+ "kind",
101
+ "version",
102
+ "token",
103
+ "requestId",
104
+ "commandId",
105
+ "input"
106
+ ],
107
+ "additionalProperties": false
108
+ },
109
+ {
110
+ "type": "object",
111
+ "properties": {
112
+ "kind": {
113
+ "type": "string",
114
+ "const": "projection"
115
+ },
116
+ "version": {
117
+ "type": "number",
118
+ "const": 1
119
+ },
120
+ "token": {
121
+ "type": "string",
122
+ "maxLength": 128
123
+ },
124
+ "shapes": {
125
+ "maxItems": 2048,
126
+ "type": "array",
127
+ "items": {
128
+ "$ref": "#/definitions/__schema2"
129
+ }
130
+ },
131
+ "width": {
132
+ "type": "number",
133
+ "exclusiveMinimum": 0,
134
+ "maximum": 100000
135
+ },
136
+ "height": {
137
+ "type": "number",
138
+ "exclusiveMinimum": 0,
139
+ "maximum": 100000
140
+ }
141
+ },
142
+ "required": [
143
+ "kind",
144
+ "version",
145
+ "token",
146
+ "shapes",
147
+ "width",
148
+ "height"
149
+ ],
150
+ "additionalProperties": false
151
+ }
152
+ ],
153
+ "definitions": {
154
+ "__schema0": {
155
+ "type": "string",
156
+ "minLength": 1,
157
+ "maxLength": 128
158
+ },
159
+ "__schema1": {},
160
+ "__schema2": {
161
+ "oneOf": [
162
+ {
163
+ "type": "object",
164
+ "properties": {
165
+ "id": {
166
+ "$ref": "#/definitions/__schema0"
167
+ },
168
+ "kind": {
169
+ "type": "string",
170
+ "const": "circle"
171
+ },
172
+ "x": {
173
+ "$ref": "#/definitions/__schema3"
174
+ },
175
+ "y": {
176
+ "$ref": "#/definitions/__schema3"
177
+ },
178
+ "radius": {
179
+ "type": "number",
180
+ "exclusiveMinimum": 0,
181
+ "maximum": 10000
182
+ },
183
+ "action": {
184
+ "$ref": "#/definitions/__schema4"
185
+ },
186
+ "fill": {
187
+ "$ref": "#/definitions/__schema5"
188
+ },
189
+ "stroke": {
190
+ "$ref": "#/definitions/__schema6"
191
+ },
192
+ "label": {
193
+ "$ref": "#/definitions/__schema7"
194
+ }
195
+ },
196
+ "required": [
197
+ "id",
198
+ "kind",
199
+ "x",
200
+ "y",
201
+ "radius"
202
+ ],
203
+ "additionalProperties": false
204
+ },
205
+ {
206
+ "type": "object",
207
+ "properties": {
208
+ "id": {
209
+ "$ref": "#/definitions/__schema0"
210
+ },
211
+ "kind": {
212
+ "type": "string",
213
+ "const": "rect"
214
+ },
215
+ "x": {
216
+ "$ref": "#/definitions/__schema3"
217
+ },
218
+ "y": {
219
+ "$ref": "#/definitions/__schema3"
220
+ },
221
+ "width": {
222
+ "type": "number",
223
+ "exclusiveMinimum": 0,
224
+ "maximum": 10000
225
+ },
226
+ "height": {
227
+ "type": "number",
228
+ "exclusiveMinimum": 0,
229
+ "maximum": 10000
230
+ },
231
+ "action": {
232
+ "$ref": "#/definitions/__schema4"
233
+ },
234
+ "fill": {
235
+ "$ref": "#/definitions/__schema5"
236
+ },
237
+ "stroke": {
238
+ "$ref": "#/definitions/__schema6"
239
+ },
240
+ "label": {
241
+ "$ref": "#/definitions/__schema7"
242
+ }
243
+ },
244
+ "required": [
245
+ "id",
246
+ "kind",
247
+ "x",
248
+ "y",
249
+ "width",
250
+ "height"
251
+ ],
252
+ "additionalProperties": false
253
+ },
254
+ {
255
+ "type": "object",
256
+ "properties": {
257
+ "id": {
258
+ "$ref": "#/definitions/__schema0"
259
+ },
260
+ "kind": {
261
+ "type": "string",
262
+ "const": "polyline"
263
+ },
264
+ "points": {
265
+ "minItems": 2,
266
+ "maxItems": 256,
267
+ "type": "array",
268
+ "items": {
269
+ "$ref": "#/definitions/__schema8"
270
+ }
271
+ },
272
+ "closed": {
273
+ "type": "boolean"
274
+ },
275
+ "action": {
276
+ "$ref": "#/definitions/__schema4"
277
+ },
278
+ "fill": {
279
+ "$ref": "#/definitions/__schema5"
280
+ },
281
+ "stroke": {
282
+ "$ref": "#/definitions/__schema6"
283
+ },
284
+ "label": {
285
+ "$ref": "#/definitions/__schema7"
286
+ }
287
+ },
288
+ "required": [
289
+ "id",
290
+ "kind",
291
+ "points"
292
+ ],
293
+ "additionalProperties": false
294
+ }
295
+ ]
296
+ },
297
+ "__schema3": {
298
+ "type": "number",
299
+ "minimum": -100000,
300
+ "maximum": 100000
301
+ },
302
+ "__schema4": {
303
+ "type": "object",
304
+ "properties": {
305
+ "commandId": {
306
+ "$ref": "#/definitions/__schema0"
307
+ },
308
+ "input": {
309
+ "type": "object",
310
+ "propertyNames": {
311
+ "$ref": "#/definitions/__schema0"
312
+ },
313
+ "additionalProperties": {
314
+ "$ref": "#/definitions/__schema1"
315
+ }
316
+ }
317
+ },
318
+ "required": [
319
+ "commandId",
320
+ "input"
321
+ ],
322
+ "additionalProperties": false
323
+ },
324
+ "__schema5": {
325
+ "type": "string",
326
+ "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
327
+ },
328
+ "__schema6": {
329
+ "type": "string",
330
+ "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
331
+ },
332
+ "__schema7": {
333
+ "type": "string",
334
+ "maxLength": 256
335
+ },
336
+ "__schema8": {
337
+ "type": "array",
338
+ "items": [
339
+ {
340
+ "$ref": "#/definitions/__schema3"
341
+ },
342
+ {
343
+ "$ref": "#/definitions/__schema3"
344
+ }
345
+ ]
346
+ }
347
+ }
348
+ },
349
+ "definition": {
350
+ "$schema": "http://json-schema.org/draft-07/schema#",
351
+ "type": "object",
352
+ "properties": {
353
+ "protocolVersion": {
354
+ "type": "number",
355
+ "const": 1
356
+ },
357
+ "editorId": {
358
+ "$ref": "#/definitions/__schema0"
359
+ },
360
+ "dataContractVersion": {
361
+ "type": "integer",
362
+ "exclusiveMinimum": 0,
363
+ "maximum": 9007199254740991
364
+ },
365
+ "documents": {
366
+ "type": "object",
367
+ "propertyNames": {
368
+ "$ref": "#/definitions/__schema0"
369
+ },
370
+ "additionalProperties": {
371
+ "type": "object",
372
+ "properties": {
373
+ "path": {
374
+ "$ref": "#/definitions/__schema1"
375
+ },
376
+ "schema": {
377
+ "$ref": "#/definitions/__schema1"
378
+ },
379
+ "format": {
380
+ "type": "string",
381
+ "enum": [
382
+ "json",
383
+ "json5",
384
+ "yaml"
385
+ ]
386
+ },
387
+ "provider": {
388
+ "type": "object",
389
+ "properties": {
390
+ "module": {
391
+ "$ref": "#/definitions/__schema1"
392
+ },
393
+ "timeoutMs": {
394
+ "type": "integer",
395
+ "minimum": 10,
396
+ "maximum": 10000
397
+ }
398
+ },
399
+ "required": [
400
+ "module"
401
+ ],
402
+ "additionalProperties": false
403
+ }
404
+ },
405
+ "required": [
406
+ "path",
407
+ "schema"
408
+ ],
409
+ "additionalProperties": false
410
+ }
411
+ },
412
+ "collections": {
413
+ "type": "object",
414
+ "propertyNames": {
415
+ "$ref": "#/definitions/__schema0"
416
+ },
417
+ "additionalProperties": {
418
+ "type": "object",
419
+ "properties": {
420
+ "documentId": {
421
+ "$ref": "#/definitions/__schema0"
422
+ },
423
+ "segments": {
424
+ "$ref": "#/definitions/__schema2"
425
+ },
426
+ "idField": {
427
+ "$ref": "#/definitions/__schema0"
428
+ }
429
+ },
430
+ "required": [
431
+ "documentId",
432
+ "segments",
433
+ "idField"
434
+ ],
435
+ "additionalProperties": false
436
+ }
437
+ },
438
+ "selections": {
439
+ "type": "object",
440
+ "propertyNames": {
441
+ "$ref": "#/definitions/__schema0"
442
+ },
443
+ "additionalProperties": {
444
+ "type": "object",
445
+ "properties": {
446
+ "collection": {
447
+ "$ref": "#/definitions/__schema0"
448
+ },
449
+ "mode": {
450
+ "type": "string",
451
+ "const": "single"
452
+ }
453
+ },
454
+ "required": [
455
+ "collection",
456
+ "mode"
457
+ ],
458
+ "additionalProperties": false
459
+ }
460
+ },
461
+ "bindings": {
462
+ "type": "object",
463
+ "propertyNames": {
464
+ "$ref": "#/definitions/__schema0"
465
+ },
466
+ "additionalProperties": {
467
+ "type": "object",
468
+ "properties": {
469
+ "documentId": {
470
+ "$ref": "#/definitions/__schema0"
471
+ },
472
+ "segments": {
473
+ "$ref": "#/definitions/__schema2"
474
+ }
475
+ },
476
+ "required": [
477
+ "documentId",
478
+ "segments"
479
+ ],
480
+ "additionalProperties": false
481
+ }
482
+ },
483
+ "commands": {
484
+ "type": "object",
485
+ "propertyNames": {
486
+ "$ref": "#/definitions/__schema0"
487
+ },
488
+ "additionalProperties": {
489
+ "oneOf": [
490
+ {
491
+ "type": "object",
492
+ "properties": {
493
+ "operation": {
494
+ "type": "string",
495
+ "const": "field.set"
496
+ },
497
+ "target": {
498
+ "$ref": "#/definitions/__schema0"
499
+ }
500
+ },
501
+ "required": [
502
+ "operation",
503
+ "target"
504
+ ],
505
+ "additionalProperties": false
506
+ },
507
+ {
508
+ "type": "object",
509
+ "properties": {
510
+ "operation": {
511
+ "type": "string",
512
+ "const": "grid.paint"
513
+ },
514
+ "target": {
515
+ "$ref": "#/definitions/__schema0"
516
+ },
517
+ "dimensions": {
518
+ "type": "object",
519
+ "properties": {
520
+ "rows": {
521
+ "$ref": "#/definitions/__schema0"
522
+ },
523
+ "columns": {
524
+ "$ref": "#/definitions/__schema0"
525
+ }
526
+ },
527
+ "required": [
528
+ "rows",
529
+ "columns"
530
+ ],
531
+ "additionalProperties": false
532
+ },
533
+ "values": {
534
+ "minItems": 1,
535
+ "maxItems": 256,
536
+ "type": "array",
537
+ "items": {
538
+ "$ref": "#/definitions/__schema4"
539
+ }
540
+ }
541
+ },
542
+ "required": [
543
+ "operation",
544
+ "target",
545
+ "dimensions",
546
+ "values"
547
+ ],
548
+ "additionalProperties": false
549
+ },
550
+ {
551
+ "type": "object",
552
+ "properties": {
553
+ "operation": {
554
+ "type": "string",
555
+ "const": "collection.insert"
556
+ },
557
+ "collection": {
558
+ "$ref": "#/definitions/__schema0"
559
+ },
560
+ "selection": {
561
+ "allOf": [
562
+ {
563
+ "$ref": "#/definitions/__schema0"
564
+ }
565
+ ]
566
+ }
567
+ },
568
+ "required": [
569
+ "operation",
570
+ "collection"
571
+ ],
572
+ "additionalProperties": false
573
+ },
574
+ {
575
+ "type": "object",
576
+ "properties": {
577
+ "operation": {
578
+ "type": "string",
579
+ "const": "collection.duplicate"
580
+ },
581
+ "collection": {
582
+ "$ref": "#/definitions/__schema0"
583
+ },
584
+ "selection": {
585
+ "allOf": [
586
+ {
587
+ "$ref": "#/definitions/__schema0"
588
+ }
589
+ ]
590
+ }
591
+ },
592
+ "required": [
593
+ "operation",
594
+ "collection"
595
+ ],
596
+ "additionalProperties": false
597
+ },
598
+ {
599
+ "type": "object",
600
+ "properties": {
601
+ "operation": {
602
+ "type": "string",
603
+ "const": "collection.delete"
604
+ },
605
+ "collection": {
606
+ "$ref": "#/definitions/__schema0"
607
+ },
608
+ "selection": {
609
+ "allOf": [
610
+ {
611
+ "$ref": "#/definitions/__schema0"
612
+ }
613
+ ]
614
+ }
615
+ },
616
+ "required": [
617
+ "operation",
618
+ "collection"
619
+ ],
620
+ "additionalProperties": false
621
+ },
622
+ {
623
+ "type": "object",
624
+ "properties": {
625
+ "operation": {
626
+ "type": "string",
627
+ "const": "collection.reorder"
628
+ },
629
+ "collection": {
630
+ "$ref": "#/definitions/__schema0"
631
+ },
632
+ "selection": {
633
+ "allOf": [
634
+ {
635
+ "$ref": "#/definitions/__schema0"
636
+ }
637
+ ]
638
+ }
639
+ },
640
+ "required": [
641
+ "operation",
642
+ "collection"
643
+ ],
644
+ "additionalProperties": false
645
+ },
646
+ {
647
+ "type": "object",
648
+ "properties": {
649
+ "operation": {
650
+ "type": "string",
651
+ "const": "object.transform"
652
+ },
653
+ "bindings": {
654
+ "type": "object",
655
+ "properties": {
656
+ "x": {
657
+ "$ref": "#/definitions/__schema5"
658
+ },
659
+ "y": {
660
+ "$ref": "#/definitions/__schema6"
661
+ },
662
+ "z": {
663
+ "$ref": "#/definitions/__schema7"
664
+ },
665
+ "rotationX": {
666
+ "$ref": "#/definitions/__schema8"
667
+ },
668
+ "rotationY": {
669
+ "$ref": "#/definitions/__schema9"
670
+ },
671
+ "rotationZ": {
672
+ "$ref": "#/definitions/__schema10"
673
+ },
674
+ "scaleZ": {
675
+ "$ref": "#/definitions/__schema11"
676
+ },
677
+ "rotation": {
678
+ "$ref": "#/definitions/__schema12"
679
+ },
680
+ "scaleX": {
681
+ "$ref": "#/definitions/__schema13"
682
+ },
683
+ "scaleY": {
684
+ "$ref": "#/definitions/__schema14"
685
+ }
686
+ },
687
+ "additionalProperties": false
688
+ }
689
+ },
690
+ "required": [
691
+ "operation",
692
+ "bindings"
693
+ ],
694
+ "additionalProperties": false
695
+ },
696
+ {
697
+ "type": "object",
698
+ "properties": {
699
+ "operation": {
700
+ "type": "string",
701
+ "const": "path.edit"
702
+ },
703
+ "collection": {
704
+ "$ref": "#/definitions/__schema0"
705
+ },
706
+ "selection": {
707
+ "$ref": "#/definitions/__schema0"
708
+ },
709
+ "xField": {
710
+ "$ref": "#/definitions/__schema0"
711
+ },
712
+ "yField": {
713
+ "$ref": "#/definitions/__schema0"
714
+ },
715
+ "edges": {
716
+ "$ref": "#/definitions/__schema0"
717
+ },
718
+ "edgeIdField": {
719
+ "$ref": "#/definitions/__schema0"
720
+ },
721
+ "fromField": {
722
+ "$ref": "#/definitions/__schema0"
723
+ },
724
+ "toField": {
725
+ "$ref": "#/definitions/__schema0"
726
+ },
727
+ "directed": {
728
+ "type": "boolean"
729
+ },
730
+ "allowSelfLoops": {
731
+ "type": "boolean"
732
+ },
733
+ "allowParallelEdges": {
734
+ "type": "boolean"
735
+ },
736
+ "acyclic": {
737
+ "type": "boolean"
738
+ },
739
+ "deletePolicy": {
740
+ "type": "string",
741
+ "enum": [
742
+ "reject",
743
+ "cascade"
744
+ ]
745
+ }
746
+ },
747
+ "required": [
748
+ "operation",
749
+ "collection",
750
+ "selection",
751
+ "xField",
752
+ "yField",
753
+ "edges",
754
+ "edgeIdField",
755
+ "fromField",
756
+ "toField"
757
+ ],
758
+ "additionalProperties": false
759
+ },
760
+ {
761
+ "type": "object",
762
+ "properties": {
763
+ "operation": {
764
+ "type": "string",
765
+ "const": "command.batch"
766
+ },
767
+ "inputSchema": {
768
+ "$ref": "#/definitions/__schema4"
769
+ },
770
+ "steps": {
771
+ "minItems": 1,
772
+ "maxItems": 64,
773
+ "type": "array",
774
+ "items": {
775
+ "$ref": "#/definitions/__schema15"
776
+ }
777
+ }
778
+ },
779
+ "required": [
780
+ "operation",
781
+ "inputSchema",
782
+ "steps"
783
+ ],
784
+ "additionalProperties": false
785
+ }
786
+ ]
787
+ }
788
+ },
789
+ "view": {
790
+ "$ref": "#/definitions/__schema16"
791
+ },
792
+ "extensions": {
793
+ "type": "object",
794
+ "properties": {
795
+ "validators": {
796
+ "maxItems": 32,
797
+ "type": "array",
798
+ "items": {
799
+ "$ref": "#/definitions/__schema20"
800
+ }
801
+ },
802
+ "views": {
803
+ "type": "object",
804
+ "propertyNames": {
805
+ "$ref": "#/definitions/__schema0"
806
+ },
807
+ "additionalProperties": {
808
+ "type": "object",
809
+ "properties": {
810
+ "entry": {
811
+ "$ref": "#/definitions/__schema1"
812
+ },
813
+ "documents": {
814
+ "minItems": 1,
815
+ "maxItems": 32,
816
+ "type": "array",
817
+ "items": {
818
+ "$ref": "#/definitions/__schema0"
819
+ }
820
+ },
821
+ "commands": {
822
+ "maxItems": 256,
823
+ "type": "array",
824
+ "items": {
825
+ "$ref": "#/definitions/__schema0"
826
+ }
827
+ },
828
+ "mode": {
829
+ "type": "string",
830
+ "enum": [
831
+ "view",
832
+ "projection2d"
833
+ ]
834
+ }
835
+ },
836
+ "required": [
837
+ "entry",
838
+ "documents",
839
+ "commands"
840
+ ],
841
+ "additionalProperties": false
842
+ }
843
+ }
844
+ },
845
+ "additionalProperties": false
846
+ },
847
+ "preview": {
848
+ "type": "object",
849
+ "properties": {
850
+ "entry": {
851
+ "$ref": "#/definitions/__schema1"
852
+ },
853
+ "adapter": {
854
+ "$ref": "#/definitions/__schema1"
855
+ }
856
+ },
857
+ "required": [
858
+ "entry",
859
+ "adapter"
860
+ ],
861
+ "additionalProperties": false
862
+ },
863
+ "labels": {
864
+ "type": "object",
865
+ "propertyNames": {
866
+ "$ref": "#/definitions/__schema0"
867
+ },
868
+ "additionalProperties": {
869
+ "type": "object",
870
+ "propertyNames": {
871
+ "$ref": "#/definitions/__schema0"
872
+ },
873
+ "additionalProperties": {
874
+ "type": "string",
875
+ "maxLength": 4096
876
+ }
877
+ }
878
+ }
879
+ },
880
+ "required": [
881
+ "protocolVersion",
882
+ "editorId",
883
+ "dataContractVersion",
884
+ "documents",
885
+ "collections",
886
+ "selections",
887
+ "bindings",
888
+ "commands",
889
+ "view"
890
+ ],
891
+ "additionalProperties": false,
892
+ "definitions": {
893
+ "__schema0": {
894
+ "type": "string",
895
+ "minLength": 1,
896
+ "maxLength": 128
897
+ },
898
+ "__schema1": {
899
+ "type": "string",
900
+ "minLength": 1,
901
+ "maxLength": 512
902
+ },
903
+ "__schema2": {
904
+ "minItems": 1,
905
+ "maxItems": 32,
906
+ "type": "array",
907
+ "items": {
908
+ "$ref": "#/definitions/__schema3"
909
+ }
910
+ },
911
+ "__schema3": {
912
+ "anyOf": [
913
+ {
914
+ "type": "object",
915
+ "properties": {
916
+ "field": {
917
+ "$ref": "#/definitions/__schema0"
918
+ }
919
+ },
920
+ "required": [
921
+ "field"
922
+ ],
923
+ "additionalProperties": false
924
+ },
925
+ {
926
+ "type": "object",
927
+ "properties": {
928
+ "item": {
929
+ "type": "object",
930
+ "properties": {
931
+ "key": {
932
+ "$ref": "#/definitions/__schema0"
933
+ },
934
+ "selection": {
935
+ "$ref": "#/definitions/__schema0"
936
+ }
937
+ },
938
+ "required": [
939
+ "key",
940
+ "selection"
941
+ ],
942
+ "additionalProperties": false
943
+ }
944
+ },
945
+ "required": [
946
+ "item"
947
+ ],
948
+ "additionalProperties": false
949
+ }
950
+ ]
951
+ },
952
+ "__schema4": {},
953
+ "__schema5": {
954
+ "allOf": [
955
+ {
956
+ "$ref": "#/definitions/__schema0"
957
+ }
958
+ ]
959
+ },
960
+ "__schema6": {
961
+ "allOf": [
962
+ {
963
+ "$ref": "#/definitions/__schema0"
964
+ }
965
+ ]
966
+ },
967
+ "__schema7": {
968
+ "allOf": [
969
+ {
970
+ "$ref": "#/definitions/__schema0"
971
+ }
972
+ ]
973
+ },
974
+ "__schema8": {
975
+ "allOf": [
976
+ {
977
+ "$ref": "#/definitions/__schema0"
978
+ }
979
+ ]
980
+ },
981
+ "__schema9": {
982
+ "allOf": [
983
+ {
984
+ "$ref": "#/definitions/__schema0"
985
+ }
986
+ ]
987
+ },
988
+ "__schema10": {
989
+ "allOf": [
990
+ {
991
+ "$ref": "#/definitions/__schema0"
992
+ }
993
+ ]
994
+ },
995
+ "__schema11": {
996
+ "allOf": [
997
+ {
998
+ "$ref": "#/definitions/__schema0"
999
+ }
1000
+ ]
1001
+ },
1002
+ "__schema12": {
1003
+ "allOf": [
1004
+ {
1005
+ "$ref": "#/definitions/__schema0"
1006
+ }
1007
+ ]
1008
+ },
1009
+ "__schema13": {
1010
+ "allOf": [
1011
+ {
1012
+ "$ref": "#/definitions/__schema0"
1013
+ }
1014
+ ]
1015
+ },
1016
+ "__schema14": {
1017
+ "allOf": [
1018
+ {
1019
+ "$ref": "#/definitions/__schema0"
1020
+ }
1021
+ ]
1022
+ },
1023
+ "__schema15": {
1024
+ "type": "object",
1025
+ "properties": {
1026
+ "commandId": {
1027
+ "$ref": "#/definitions/__schema0"
1028
+ },
1029
+ "input": {
1030
+ "type": "object",
1031
+ "propertyNames": {
1032
+ "$ref": "#/definitions/__schema0"
1033
+ },
1034
+ "additionalProperties": {
1035
+ "anyOf": [
1036
+ {
1037
+ "type": "object",
1038
+ "properties": {
1039
+ "input": {
1040
+ "$ref": "#/definitions/__schema0"
1041
+ }
1042
+ },
1043
+ "required": [
1044
+ "input"
1045
+ ],
1046
+ "additionalProperties": false
1047
+ },
1048
+ {
1049
+ "type": "object",
1050
+ "properties": {
1051
+ "value": {
1052
+ "$ref": "#/definitions/__schema4"
1053
+ }
1054
+ },
1055
+ "required": [
1056
+ "value"
1057
+ ],
1058
+ "additionalProperties": false
1059
+ }
1060
+ ]
1061
+ }
1062
+ }
1063
+ },
1064
+ "required": [
1065
+ "commandId",
1066
+ "input"
1067
+ ],
1068
+ "additionalProperties": false
1069
+ },
1070
+ "__schema16": {
1071
+ "type": "object",
1072
+ "properties": {
1073
+ "id": {
1074
+ "$ref": "#/definitions/__schema0"
1075
+ },
1076
+ "component": {
1077
+ "type": "string",
1078
+ "minLength": 1,
1079
+ "maxLength": 128
1080
+ },
1081
+ "props": {
1082
+ "type": "object",
1083
+ "propertyNames": {
1084
+ "$ref": "#/definitions/__schema0"
1085
+ },
1086
+ "additionalProperties": {
1087
+ "$ref": "#/definitions/__schema4"
1088
+ }
1089
+ },
1090
+ "bind": {
1091
+ "type": "object",
1092
+ "propertyNames": {
1093
+ "$ref": "#/definitions/__schema0"
1094
+ },
1095
+ "additionalProperties": {
1096
+ "$ref": "#/definitions/__schema0"
1097
+ }
1098
+ },
1099
+ "actions": {
1100
+ "type": "object",
1101
+ "propertyNames": {
1102
+ "$ref": "#/definitions/__schema0"
1103
+ },
1104
+ "additionalProperties": {
1105
+ "$ref": "#/definitions/__schema0"
1106
+ }
1107
+ },
1108
+ "when": {
1109
+ "allOf": [
1110
+ {
1111
+ "$ref": "#/definitions/__schema17"
1112
+ }
1113
+ ]
1114
+ },
1115
+ "enabledWhen": {
1116
+ "allOf": [
1117
+ {
1118
+ "$ref": "#/definitions/__schema17"
1119
+ }
1120
+ ]
1121
+ },
1122
+ "children": {
1123
+ "maxItems": 256,
1124
+ "type": "array",
1125
+ "items": {
1126
+ "$ref": "#/definitions/__schema16"
1127
+ }
1128
+ }
1129
+ },
1130
+ "required": [
1131
+ "id",
1132
+ "component"
1133
+ ],
1134
+ "additionalProperties": false
1135
+ },
1136
+ "__schema17": {
1137
+ "anyOf": [
1138
+ {
1139
+ "type": "object",
1140
+ "properties": {
1141
+ "op": {
1142
+ "type": "string",
1143
+ "const": "eq"
1144
+ },
1145
+ "source": {
1146
+ "$ref": "#/definitions/__schema18"
1147
+ },
1148
+ "value": {
1149
+ "$ref": "#/definitions/__schema19"
1150
+ }
1151
+ },
1152
+ "required": [
1153
+ "op",
1154
+ "source",
1155
+ "value"
1156
+ ],
1157
+ "additionalProperties": false
1158
+ },
1159
+ {
1160
+ "type": "object",
1161
+ "properties": {
1162
+ "op": {
1163
+ "type": "string",
1164
+ "const": "in"
1165
+ },
1166
+ "source": {
1167
+ "$ref": "#/definitions/__schema18"
1168
+ },
1169
+ "values": {
1170
+ "maxItems": 256,
1171
+ "type": "array",
1172
+ "items": {
1173
+ "$ref": "#/definitions/__schema19"
1174
+ }
1175
+ }
1176
+ },
1177
+ "required": [
1178
+ "op",
1179
+ "source",
1180
+ "values"
1181
+ ],
1182
+ "additionalProperties": false
1183
+ },
1184
+ {
1185
+ "type": "object",
1186
+ "properties": {
1187
+ "op": {
1188
+ "type": "string",
1189
+ "const": "exists"
1190
+ },
1191
+ "source": {
1192
+ "$ref": "#/definitions/__schema18"
1193
+ }
1194
+ },
1195
+ "required": [
1196
+ "op",
1197
+ "source"
1198
+ ],
1199
+ "additionalProperties": false
1200
+ },
1201
+ {
1202
+ "type": "object",
1203
+ "properties": {
1204
+ "op": {
1205
+ "type": "string",
1206
+ "enum": [
1207
+ "all",
1208
+ "any"
1209
+ ]
1210
+ },
1211
+ "conditions": {
1212
+ "minItems": 1,
1213
+ "maxItems": 32,
1214
+ "type": "array",
1215
+ "items": {
1216
+ "$ref": "#/definitions/__schema17"
1217
+ }
1218
+ }
1219
+ },
1220
+ "required": [
1221
+ "op",
1222
+ "conditions"
1223
+ ],
1224
+ "additionalProperties": false
1225
+ },
1226
+ {
1227
+ "type": "object",
1228
+ "properties": {
1229
+ "op": {
1230
+ "type": "string",
1231
+ "const": "not"
1232
+ },
1233
+ "condition": {
1234
+ "$ref": "#/definitions/__schema17"
1235
+ }
1236
+ },
1237
+ "required": [
1238
+ "op",
1239
+ "condition"
1240
+ ],
1241
+ "additionalProperties": false
1242
+ }
1243
+ ]
1244
+ },
1245
+ "__schema18": {
1246
+ "anyOf": [
1247
+ {
1248
+ "type": "object",
1249
+ "properties": {
1250
+ "binding": {
1251
+ "$ref": "#/definitions/__schema0"
1252
+ }
1253
+ },
1254
+ "required": [
1255
+ "binding"
1256
+ ],
1257
+ "additionalProperties": false
1258
+ },
1259
+ {
1260
+ "type": "object",
1261
+ "properties": {
1262
+ "selection": {
1263
+ "$ref": "#/definitions/__schema0"
1264
+ }
1265
+ },
1266
+ "required": [
1267
+ "selection"
1268
+ ],
1269
+ "additionalProperties": false
1270
+ }
1271
+ ]
1272
+ },
1273
+ "__schema19": {
1274
+ "anyOf": [
1275
+ {
1276
+ "type": "string",
1277
+ "maxLength": 4096
1278
+ },
1279
+ {
1280
+ "type": "number"
1281
+ },
1282
+ {
1283
+ "type": "boolean"
1284
+ },
1285
+ {
1286
+ "type": "null"
1287
+ }
1288
+ ]
1289
+ },
1290
+ "__schema20": {
1291
+ "type": "object",
1292
+ "properties": {
1293
+ "id": {
1294
+ "$ref": "#/definitions/__schema0"
1295
+ },
1296
+ "module": {
1297
+ "$ref": "#/definitions/__schema1"
1298
+ },
1299
+ "timeoutMs": {
1300
+ "type": "integer",
1301
+ "minimum": 10,
1302
+ "maximum": 10000
1303
+ }
1304
+ },
1305
+ "required": [
1306
+ "id",
1307
+ "module"
1308
+ ],
1309
+ "additionalProperties": false
1310
+ }
1311
+ }
1312
+ },
1313
+ "binding": {
1314
+ "$schema": "http://json-schema.org/draft-07/schema#",
1315
+ "type": "object",
1316
+ "properties": {
1317
+ "documentId": {
1318
+ "$ref": "#/definitions/__schema0"
1319
+ },
1320
+ "segments": {
1321
+ "minItems": 1,
1322
+ "maxItems": 32,
1323
+ "type": "array",
1324
+ "items": {
1325
+ "$ref": "#/definitions/__schema1"
1326
+ }
1327
+ }
1328
+ },
1329
+ "required": [
1330
+ "documentId",
1331
+ "segments"
1332
+ ],
1333
+ "additionalProperties": false,
1334
+ "definitions": {
1335
+ "__schema0": {
1336
+ "type": "string",
1337
+ "minLength": 1,
1338
+ "maxLength": 128
1339
+ },
1340
+ "__schema1": {
1341
+ "anyOf": [
1342
+ {
1343
+ "type": "object",
1344
+ "properties": {
1345
+ "field": {
1346
+ "$ref": "#/definitions/__schema0"
1347
+ }
1348
+ },
1349
+ "required": [
1350
+ "field"
1351
+ ],
1352
+ "additionalProperties": false
1353
+ },
1354
+ {
1355
+ "type": "object",
1356
+ "properties": {
1357
+ "item": {
1358
+ "type": "object",
1359
+ "properties": {
1360
+ "key": {
1361
+ "$ref": "#/definitions/__schema0"
1362
+ },
1363
+ "selection": {
1364
+ "$ref": "#/definitions/__schema0"
1365
+ }
1366
+ },
1367
+ "required": [
1368
+ "key",
1369
+ "selection"
1370
+ ],
1371
+ "additionalProperties": false
1372
+ }
1373
+ },
1374
+ "required": [
1375
+ "item"
1376
+ ],
1377
+ "additionalProperties": false
1378
+ }
1379
+ ]
1380
+ }
1381
+ }
1382
+ },
1383
+ "collection": {
1384
+ "$schema": "http://json-schema.org/draft-07/schema#",
1385
+ "type": "object",
1386
+ "properties": {
1387
+ "documentId": {
1388
+ "$ref": "#/definitions/__schema0"
1389
+ },
1390
+ "segments": {
1391
+ "minItems": 1,
1392
+ "maxItems": 32,
1393
+ "type": "array",
1394
+ "items": {
1395
+ "$ref": "#/definitions/__schema1"
1396
+ }
1397
+ },
1398
+ "idField": {
1399
+ "$ref": "#/definitions/__schema0"
1400
+ }
1401
+ },
1402
+ "required": [
1403
+ "documentId",
1404
+ "segments",
1405
+ "idField"
1406
+ ],
1407
+ "additionalProperties": false,
1408
+ "definitions": {
1409
+ "__schema0": {
1410
+ "type": "string",
1411
+ "minLength": 1,
1412
+ "maxLength": 128
1413
+ },
1414
+ "__schema1": {
1415
+ "anyOf": [
1416
+ {
1417
+ "type": "object",
1418
+ "properties": {
1419
+ "field": {
1420
+ "$ref": "#/definitions/__schema0"
1421
+ }
1422
+ },
1423
+ "required": [
1424
+ "field"
1425
+ ],
1426
+ "additionalProperties": false
1427
+ },
1428
+ {
1429
+ "type": "object",
1430
+ "properties": {
1431
+ "item": {
1432
+ "type": "object",
1433
+ "properties": {
1434
+ "key": {
1435
+ "$ref": "#/definitions/__schema0"
1436
+ },
1437
+ "selection": {
1438
+ "$ref": "#/definitions/__schema0"
1439
+ }
1440
+ },
1441
+ "required": [
1442
+ "key",
1443
+ "selection"
1444
+ ],
1445
+ "additionalProperties": false
1446
+ }
1447
+ },
1448
+ "required": [
1449
+ "item"
1450
+ ],
1451
+ "additionalProperties": false
1452
+ }
1453
+ ]
1454
+ }
1455
+ }
1456
+ },
1457
+ "view": {
1458
+ "$schema": "http://json-schema.org/draft-07/schema#",
1459
+ "type": "object",
1460
+ "properties": {
1461
+ "id": {
1462
+ "$ref": "#/definitions/__schema0"
1463
+ },
1464
+ "component": {
1465
+ "type": "string",
1466
+ "minLength": 1,
1467
+ "maxLength": 128
1468
+ },
1469
+ "props": {
1470
+ "type": "object",
1471
+ "propertyNames": {
1472
+ "$ref": "#/definitions/__schema0"
1473
+ },
1474
+ "additionalProperties": {}
1475
+ },
1476
+ "bind": {
1477
+ "type": "object",
1478
+ "propertyNames": {
1479
+ "$ref": "#/definitions/__schema0"
1480
+ },
1481
+ "additionalProperties": {
1482
+ "$ref": "#/definitions/__schema0"
1483
+ }
1484
+ },
1485
+ "actions": {
1486
+ "type": "object",
1487
+ "propertyNames": {
1488
+ "$ref": "#/definitions/__schema0"
1489
+ },
1490
+ "additionalProperties": {
1491
+ "$ref": "#/definitions/__schema0"
1492
+ }
1493
+ },
1494
+ "when": {
1495
+ "allOf": [
1496
+ {
1497
+ "$ref": "#/definitions/__schema1"
1498
+ }
1499
+ ]
1500
+ },
1501
+ "enabledWhen": {
1502
+ "allOf": [
1503
+ {
1504
+ "$ref": "#/definitions/__schema1"
1505
+ }
1506
+ ]
1507
+ },
1508
+ "children": {
1509
+ "maxItems": 256,
1510
+ "type": "array",
1511
+ "items": {
1512
+ "$ref": "#"
1513
+ }
1514
+ }
1515
+ },
1516
+ "required": [
1517
+ "id",
1518
+ "component"
1519
+ ],
1520
+ "additionalProperties": false,
1521
+ "definitions": {
1522
+ "__schema0": {
1523
+ "type": "string",
1524
+ "minLength": 1,
1525
+ "maxLength": 128
1526
+ },
1527
+ "__schema1": {
1528
+ "anyOf": [
1529
+ {
1530
+ "type": "object",
1531
+ "properties": {
1532
+ "op": {
1533
+ "type": "string",
1534
+ "const": "eq"
1535
+ },
1536
+ "source": {
1537
+ "$ref": "#/definitions/__schema2"
1538
+ },
1539
+ "value": {
1540
+ "$ref": "#/definitions/__schema3"
1541
+ }
1542
+ },
1543
+ "required": [
1544
+ "op",
1545
+ "source",
1546
+ "value"
1547
+ ],
1548
+ "additionalProperties": false
1549
+ },
1550
+ {
1551
+ "type": "object",
1552
+ "properties": {
1553
+ "op": {
1554
+ "type": "string",
1555
+ "const": "in"
1556
+ },
1557
+ "source": {
1558
+ "$ref": "#/definitions/__schema2"
1559
+ },
1560
+ "values": {
1561
+ "maxItems": 256,
1562
+ "type": "array",
1563
+ "items": {
1564
+ "$ref": "#/definitions/__schema3"
1565
+ }
1566
+ }
1567
+ },
1568
+ "required": [
1569
+ "op",
1570
+ "source",
1571
+ "values"
1572
+ ],
1573
+ "additionalProperties": false
1574
+ },
1575
+ {
1576
+ "type": "object",
1577
+ "properties": {
1578
+ "op": {
1579
+ "type": "string",
1580
+ "const": "exists"
1581
+ },
1582
+ "source": {
1583
+ "$ref": "#/definitions/__schema2"
1584
+ }
1585
+ },
1586
+ "required": [
1587
+ "op",
1588
+ "source"
1589
+ ],
1590
+ "additionalProperties": false
1591
+ },
1592
+ {
1593
+ "type": "object",
1594
+ "properties": {
1595
+ "op": {
1596
+ "type": "string",
1597
+ "enum": [
1598
+ "all",
1599
+ "any"
1600
+ ]
1601
+ },
1602
+ "conditions": {
1603
+ "minItems": 1,
1604
+ "maxItems": 32,
1605
+ "type": "array",
1606
+ "items": {
1607
+ "$ref": "#/definitions/__schema1"
1608
+ }
1609
+ }
1610
+ },
1611
+ "required": [
1612
+ "op",
1613
+ "conditions"
1614
+ ],
1615
+ "additionalProperties": false
1616
+ },
1617
+ {
1618
+ "type": "object",
1619
+ "properties": {
1620
+ "op": {
1621
+ "type": "string",
1622
+ "const": "not"
1623
+ },
1624
+ "condition": {
1625
+ "$ref": "#/definitions/__schema1"
1626
+ }
1627
+ },
1628
+ "required": [
1629
+ "op",
1630
+ "condition"
1631
+ ],
1632
+ "additionalProperties": false
1633
+ }
1634
+ ]
1635
+ },
1636
+ "__schema2": {
1637
+ "anyOf": [
1638
+ {
1639
+ "type": "object",
1640
+ "properties": {
1641
+ "binding": {
1642
+ "$ref": "#/definitions/__schema0"
1643
+ }
1644
+ },
1645
+ "required": [
1646
+ "binding"
1647
+ ],
1648
+ "additionalProperties": false
1649
+ },
1650
+ {
1651
+ "type": "object",
1652
+ "properties": {
1653
+ "selection": {
1654
+ "$ref": "#/definitions/__schema0"
1655
+ }
1656
+ },
1657
+ "required": [
1658
+ "selection"
1659
+ ],
1660
+ "additionalProperties": false
1661
+ }
1662
+ ]
1663
+ },
1664
+ "__schema3": {
1665
+ "anyOf": [
1666
+ {
1667
+ "type": "string",
1668
+ "maxLength": 4096
1669
+ },
1670
+ {
1671
+ "type": "number"
1672
+ },
1673
+ {
1674
+ "type": "boolean"
1675
+ },
1676
+ {
1677
+ "type": "null"
1678
+ }
1679
+ ]
1680
+ }
1681
+ }
1682
+ },
1683
+ "commandDeclaration": {
1684
+ "$schema": "http://json-schema.org/draft-07/schema#",
1685
+ "oneOf": [
1686
+ {
1687
+ "type": "object",
1688
+ "properties": {
1689
+ "operation": {
1690
+ "type": "string",
1691
+ "const": "field.set"
1692
+ },
1693
+ "target": {
1694
+ "$ref": "#/definitions/__schema0"
1695
+ }
1696
+ },
1697
+ "required": [
1698
+ "operation",
1699
+ "target"
1700
+ ],
1701
+ "additionalProperties": false
1702
+ },
1703
+ {
1704
+ "type": "object",
1705
+ "properties": {
1706
+ "operation": {
1707
+ "type": "string",
1708
+ "const": "grid.paint"
1709
+ },
1710
+ "target": {
1711
+ "$ref": "#/definitions/__schema0"
1712
+ },
1713
+ "dimensions": {
1714
+ "type": "object",
1715
+ "properties": {
1716
+ "rows": {
1717
+ "$ref": "#/definitions/__schema0"
1718
+ },
1719
+ "columns": {
1720
+ "$ref": "#/definitions/__schema0"
1721
+ }
1722
+ },
1723
+ "required": [
1724
+ "rows",
1725
+ "columns"
1726
+ ],
1727
+ "additionalProperties": false
1728
+ },
1729
+ "values": {
1730
+ "minItems": 1,
1731
+ "maxItems": 256,
1732
+ "type": "array",
1733
+ "items": {
1734
+ "$ref": "#/definitions/__schema1"
1735
+ }
1736
+ }
1737
+ },
1738
+ "required": [
1739
+ "operation",
1740
+ "target",
1741
+ "dimensions",
1742
+ "values"
1743
+ ],
1744
+ "additionalProperties": false
1745
+ },
1746
+ {
1747
+ "type": "object",
1748
+ "properties": {
1749
+ "operation": {
1750
+ "type": "string",
1751
+ "const": "collection.insert"
1752
+ },
1753
+ "collection": {
1754
+ "$ref": "#/definitions/__schema0"
1755
+ },
1756
+ "selection": {
1757
+ "allOf": [
1758
+ {
1759
+ "$ref": "#/definitions/__schema0"
1760
+ }
1761
+ ]
1762
+ }
1763
+ },
1764
+ "required": [
1765
+ "operation",
1766
+ "collection"
1767
+ ],
1768
+ "additionalProperties": false
1769
+ },
1770
+ {
1771
+ "type": "object",
1772
+ "properties": {
1773
+ "operation": {
1774
+ "type": "string",
1775
+ "const": "collection.duplicate"
1776
+ },
1777
+ "collection": {
1778
+ "$ref": "#/definitions/__schema0"
1779
+ },
1780
+ "selection": {
1781
+ "allOf": [
1782
+ {
1783
+ "$ref": "#/definitions/__schema0"
1784
+ }
1785
+ ]
1786
+ }
1787
+ },
1788
+ "required": [
1789
+ "operation",
1790
+ "collection"
1791
+ ],
1792
+ "additionalProperties": false
1793
+ },
1794
+ {
1795
+ "type": "object",
1796
+ "properties": {
1797
+ "operation": {
1798
+ "type": "string",
1799
+ "const": "collection.delete"
1800
+ },
1801
+ "collection": {
1802
+ "$ref": "#/definitions/__schema0"
1803
+ },
1804
+ "selection": {
1805
+ "allOf": [
1806
+ {
1807
+ "$ref": "#/definitions/__schema0"
1808
+ }
1809
+ ]
1810
+ }
1811
+ },
1812
+ "required": [
1813
+ "operation",
1814
+ "collection"
1815
+ ],
1816
+ "additionalProperties": false
1817
+ },
1818
+ {
1819
+ "type": "object",
1820
+ "properties": {
1821
+ "operation": {
1822
+ "type": "string",
1823
+ "const": "collection.reorder"
1824
+ },
1825
+ "collection": {
1826
+ "$ref": "#/definitions/__schema0"
1827
+ },
1828
+ "selection": {
1829
+ "allOf": [
1830
+ {
1831
+ "$ref": "#/definitions/__schema0"
1832
+ }
1833
+ ]
1834
+ }
1835
+ },
1836
+ "required": [
1837
+ "operation",
1838
+ "collection"
1839
+ ],
1840
+ "additionalProperties": false
1841
+ },
1842
+ {
1843
+ "type": "object",
1844
+ "properties": {
1845
+ "operation": {
1846
+ "type": "string",
1847
+ "const": "object.transform"
1848
+ },
1849
+ "bindings": {
1850
+ "type": "object",
1851
+ "properties": {
1852
+ "x": {
1853
+ "$ref": "#/definitions/__schema2"
1854
+ },
1855
+ "y": {
1856
+ "$ref": "#/definitions/__schema3"
1857
+ },
1858
+ "z": {
1859
+ "$ref": "#/definitions/__schema4"
1860
+ },
1861
+ "rotationX": {
1862
+ "$ref": "#/definitions/__schema5"
1863
+ },
1864
+ "rotationY": {
1865
+ "$ref": "#/definitions/__schema6"
1866
+ },
1867
+ "rotationZ": {
1868
+ "$ref": "#/definitions/__schema7"
1869
+ },
1870
+ "scaleZ": {
1871
+ "$ref": "#/definitions/__schema8"
1872
+ },
1873
+ "rotation": {
1874
+ "$ref": "#/definitions/__schema9"
1875
+ },
1876
+ "scaleX": {
1877
+ "$ref": "#/definitions/__schema10"
1878
+ },
1879
+ "scaleY": {
1880
+ "$ref": "#/definitions/__schema11"
1881
+ }
1882
+ },
1883
+ "additionalProperties": false
1884
+ }
1885
+ },
1886
+ "required": [
1887
+ "operation",
1888
+ "bindings"
1889
+ ],
1890
+ "additionalProperties": false
1891
+ },
1892
+ {
1893
+ "type": "object",
1894
+ "properties": {
1895
+ "operation": {
1896
+ "type": "string",
1897
+ "const": "path.edit"
1898
+ },
1899
+ "collection": {
1900
+ "$ref": "#/definitions/__schema0"
1901
+ },
1902
+ "selection": {
1903
+ "$ref": "#/definitions/__schema0"
1904
+ },
1905
+ "xField": {
1906
+ "$ref": "#/definitions/__schema0"
1907
+ },
1908
+ "yField": {
1909
+ "$ref": "#/definitions/__schema0"
1910
+ },
1911
+ "edges": {
1912
+ "$ref": "#/definitions/__schema0"
1913
+ },
1914
+ "edgeIdField": {
1915
+ "$ref": "#/definitions/__schema0"
1916
+ },
1917
+ "fromField": {
1918
+ "$ref": "#/definitions/__schema0"
1919
+ },
1920
+ "toField": {
1921
+ "$ref": "#/definitions/__schema0"
1922
+ },
1923
+ "directed": {
1924
+ "type": "boolean"
1925
+ },
1926
+ "allowSelfLoops": {
1927
+ "type": "boolean"
1928
+ },
1929
+ "allowParallelEdges": {
1930
+ "type": "boolean"
1931
+ },
1932
+ "acyclic": {
1933
+ "type": "boolean"
1934
+ },
1935
+ "deletePolicy": {
1936
+ "type": "string",
1937
+ "enum": [
1938
+ "reject",
1939
+ "cascade"
1940
+ ]
1941
+ }
1942
+ },
1943
+ "required": [
1944
+ "operation",
1945
+ "collection",
1946
+ "selection",
1947
+ "xField",
1948
+ "yField",
1949
+ "edges",
1950
+ "edgeIdField",
1951
+ "fromField",
1952
+ "toField"
1953
+ ],
1954
+ "additionalProperties": false
1955
+ },
1956
+ {
1957
+ "type": "object",
1958
+ "properties": {
1959
+ "operation": {
1960
+ "type": "string",
1961
+ "const": "command.batch"
1962
+ },
1963
+ "inputSchema": {
1964
+ "$ref": "#/definitions/__schema1"
1965
+ },
1966
+ "steps": {
1967
+ "minItems": 1,
1968
+ "maxItems": 64,
1969
+ "type": "array",
1970
+ "items": {
1971
+ "$ref": "#/definitions/__schema12"
1972
+ }
1973
+ }
1974
+ },
1975
+ "required": [
1976
+ "operation",
1977
+ "inputSchema",
1978
+ "steps"
1979
+ ],
1980
+ "additionalProperties": false
1981
+ }
1982
+ ],
1983
+ "definitions": {
1984
+ "__schema0": {
1985
+ "type": "string",
1986
+ "minLength": 1,
1987
+ "maxLength": 128
1988
+ },
1989
+ "__schema1": {},
1990
+ "__schema2": {
1991
+ "allOf": [
1992
+ {
1993
+ "$ref": "#/definitions/__schema0"
1994
+ }
1995
+ ]
1996
+ },
1997
+ "__schema3": {
1998
+ "allOf": [
1999
+ {
2000
+ "$ref": "#/definitions/__schema0"
2001
+ }
2002
+ ]
2003
+ },
2004
+ "__schema4": {
2005
+ "allOf": [
2006
+ {
2007
+ "$ref": "#/definitions/__schema0"
2008
+ }
2009
+ ]
2010
+ },
2011
+ "__schema5": {
2012
+ "allOf": [
2013
+ {
2014
+ "$ref": "#/definitions/__schema0"
2015
+ }
2016
+ ]
2017
+ },
2018
+ "__schema6": {
2019
+ "allOf": [
2020
+ {
2021
+ "$ref": "#/definitions/__schema0"
2022
+ }
2023
+ ]
2024
+ },
2025
+ "__schema7": {
2026
+ "allOf": [
2027
+ {
2028
+ "$ref": "#/definitions/__schema0"
2029
+ }
2030
+ ]
2031
+ },
2032
+ "__schema8": {
2033
+ "allOf": [
2034
+ {
2035
+ "$ref": "#/definitions/__schema0"
2036
+ }
2037
+ ]
2038
+ },
2039
+ "__schema9": {
2040
+ "allOf": [
2041
+ {
2042
+ "$ref": "#/definitions/__schema0"
2043
+ }
2044
+ ]
2045
+ },
2046
+ "__schema10": {
2047
+ "allOf": [
2048
+ {
2049
+ "$ref": "#/definitions/__schema0"
2050
+ }
2051
+ ]
2052
+ },
2053
+ "__schema11": {
2054
+ "allOf": [
2055
+ {
2056
+ "$ref": "#/definitions/__schema0"
2057
+ }
2058
+ ]
2059
+ },
2060
+ "__schema12": {
2061
+ "type": "object",
2062
+ "properties": {
2063
+ "commandId": {
2064
+ "$ref": "#/definitions/__schema0"
2065
+ },
2066
+ "input": {
2067
+ "type": "object",
2068
+ "propertyNames": {
2069
+ "$ref": "#/definitions/__schema0"
2070
+ },
2071
+ "additionalProperties": {
2072
+ "anyOf": [
2073
+ {
2074
+ "type": "object",
2075
+ "properties": {
2076
+ "input": {
2077
+ "$ref": "#/definitions/__schema0"
2078
+ }
2079
+ },
2080
+ "required": [
2081
+ "input"
2082
+ ],
2083
+ "additionalProperties": false
2084
+ },
2085
+ {
2086
+ "type": "object",
2087
+ "properties": {
2088
+ "value": {
2089
+ "$ref": "#/definitions/__schema1"
2090
+ }
2091
+ },
2092
+ "required": [
2093
+ "value"
2094
+ ],
2095
+ "additionalProperties": false
2096
+ }
2097
+ ]
2098
+ }
2099
+ }
2100
+ },
2101
+ "required": [
2102
+ "commandId",
2103
+ "input"
2104
+ ],
2105
+ "additionalProperties": false
2106
+ }
2107
+ }
2108
+ },
2109
+ "taskReport": {
2110
+ "$schema": "http://json-schema.org/draft-07/schema#",
2111
+ "type": "object",
2112
+ "properties": {
2113
+ "version": {
2114
+ "$ref": "#/definitions/__schema0"
2115
+ },
2116
+ "taskId": {
2117
+ "$ref": "#/definitions/__schema1"
2118
+ },
2119
+ "sources": {
2120
+ "$ref": "#/definitions/__schema2"
2121
+ },
2122
+ "consumers": {
2123
+ "$ref": "#/definitions/__schema5"
2124
+ },
2125
+ "operations": {
2126
+ "$ref": "#/definitions/__schema7"
2127
+ },
2128
+ "missing": {
2129
+ "$ref": "#/definitions/__schema9"
2130
+ },
2131
+ "preserved": {
2132
+ "$ref": "#/definitions/__schema11"
2133
+ },
2134
+ "migration": {
2135
+ "$ref": "#/definitions/__schema12"
2136
+ }
2137
+ },
2138
+ "required": [
2139
+ "version",
2140
+ "taskId",
2141
+ "sources",
2142
+ "consumers",
2143
+ "operations",
2144
+ "missing"
2145
+ ],
2146
+ "additionalProperties": false,
2147
+ "definitions": {
2148
+ "__schema0": {
2149
+ "type": "number",
2150
+ "const": 1
2151
+ },
2152
+ "__schema1": {
2153
+ "type": "string",
2154
+ "format": "uuid",
2155
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
2156
+ },
2157
+ "__schema2": {
2158
+ "minItems": 1,
2159
+ "maxItems": 2048,
2160
+ "type": "array",
2161
+ "items": {
2162
+ "$ref": "#/definitions/__schema3"
2163
+ }
2164
+ },
2165
+ "__schema3": {
2166
+ "type": "object",
2167
+ "properties": {
2168
+ "path": {
2169
+ "$ref": "#/definitions/__schema4"
2170
+ },
2171
+ "sha256": {
2172
+ "type": "string",
2173
+ "pattern": "^[a-f0-9]{64}$"
2174
+ }
2175
+ },
2176
+ "required": [
2177
+ "path",
2178
+ "sha256"
2179
+ ],
2180
+ "additionalProperties": false
2181
+ },
2182
+ "__schema4": {
2183
+ "type": "string",
2184
+ "minLength": 1,
2185
+ "maxLength": 512
2186
+ },
2187
+ "__schema5": {
2188
+ "minItems": 1,
2189
+ "maxItems": 128,
2190
+ "type": "array",
2191
+ "items": {
2192
+ "$ref": "#/definitions/__schema6"
2193
+ }
2194
+ },
2195
+ "__schema6": {
2196
+ "type": "object",
2197
+ "properties": {
2198
+ "path": {
2199
+ "$ref": "#/definitions/__schema4"
2200
+ },
2201
+ "line": {
2202
+ "type": "integer",
2203
+ "exclusiveMinimum": 0,
2204
+ "maximum": 1000000
2205
+ },
2206
+ "summary": {
2207
+ "type": "string",
2208
+ "minLength": 1,
2209
+ "maxLength": 2000
2210
+ }
2211
+ },
2212
+ "required": [
2213
+ "path",
2214
+ "summary"
2215
+ ],
2216
+ "additionalProperties": false
2217
+ },
2218
+ "__schema7": {
2219
+ "minItems": 1,
2220
+ "maxItems": 256,
2221
+ "type": "array",
2222
+ "items": {
2223
+ "$ref": "#/definitions/__schema8"
2224
+ }
2225
+ },
2226
+ "__schema8": {
2227
+ "type": "string",
2228
+ "minLength": 1,
2229
+ "maxLength": 128
2230
+ },
2231
+ "__schema9": {
2232
+ "maxItems": 128,
2233
+ "type": "array",
2234
+ "items": {
2235
+ "$ref": "#/definitions/__schema10"
2236
+ }
2237
+ },
2238
+ "__schema10": {
2239
+ "type": "string",
2240
+ "minLength": 1,
2241
+ "maxLength": 2000
2242
+ },
2243
+ "__schema11": {
2244
+ "type": "boolean"
2245
+ },
2246
+ "__schema12": {
2247
+ "type": "object",
2248
+ "properties": {
2249
+ "fromDataContractVersion": {
2250
+ "type": "integer",
2251
+ "exclusiveMinimum": 0,
2252
+ "maximum": 9007199254740991
2253
+ },
2254
+ "toDataContractVersion": {
2255
+ "type": "integer",
2256
+ "exclusiveMinimum": 0,
2257
+ "maximum": 9007199254740991
2258
+ },
2259
+ "summary": {
2260
+ "type": "string",
2261
+ "minLength": 1,
2262
+ "maxLength": 4000
2263
+ }
2264
+ },
2265
+ "required": [
2266
+ "fromDataContractVersion",
2267
+ "toDataContractVersion",
2268
+ "summary"
2269
+ ],
2270
+ "additionalProperties": false
2271
+ }
2272
+ }
2273
+ },
2274
+ "commandInputs": {
2275
+ "field.set": {
2276
+ "$schema": "http://json-schema.org/draft-07/schema#",
2277
+ "type": "object",
2278
+ "properties": {
2279
+ "value": {
2280
+ "anyOf": [
2281
+ {
2282
+ "type": "string"
2283
+ },
2284
+ {
2285
+ "type": "number"
2286
+ },
2287
+ {
2288
+ "type": "boolean"
2289
+ },
2290
+ {
2291
+ "type": "null"
2292
+ }
2293
+ ]
2294
+ }
2295
+ },
2296
+ "required": [
2297
+ "value"
2298
+ ],
2299
+ "additionalProperties": false
2300
+ },
2301
+ "grid.paint": {
2302
+ "$schema": "http://json-schema.org/draft-07/schema#",
2303
+ "type": "object",
2304
+ "properties": {
2305
+ "cells": {
2306
+ "minItems": 1,
2307
+ "maxItems": 2048,
2308
+ "type": "array",
2309
+ "items": {
2310
+ "$ref": "#/definitions/__schema0"
2311
+ }
2312
+ }
2313
+ },
2314
+ "required": [
2315
+ "cells"
2316
+ ],
2317
+ "additionalProperties": false,
2318
+ "definitions": {
2319
+ "__schema0": {
2320
+ "type": "object",
2321
+ "properties": {
2322
+ "row": {
2323
+ "type": "integer",
2324
+ "minimum": 0,
2325
+ "maximum": 9007199254740991
2326
+ },
2327
+ "column": {
2328
+ "type": "integer",
2329
+ "minimum": 0,
2330
+ "maximum": 9007199254740991
2331
+ },
2332
+ "value": {}
2333
+ },
2334
+ "required": [
2335
+ "row",
2336
+ "column",
2337
+ "value"
2338
+ ],
2339
+ "additionalProperties": false
2340
+ }
2341
+ }
2342
+ },
2343
+ "command.batch": {
2344
+ "$schema": "http://json-schema.org/draft-07/schema#",
2345
+ "type": "object",
2346
+ "propertyNames": {
2347
+ "type": "string",
2348
+ "minLength": 1,
2349
+ "maxLength": 128
2350
+ },
2351
+ "additionalProperties": {}
2352
+ },
2353
+ "path.edit": {
2354
+ "$schema": "http://json-schema.org/draft-07/schema#",
2355
+ "oneOf": [
2356
+ {
2357
+ "type": "object",
2358
+ "properties": {
2359
+ "action": {
2360
+ "type": "string",
2361
+ "const": "insert"
2362
+ },
2363
+ "item": {
2364
+ "type": "object",
2365
+ "propertyNames": {
2366
+ "$ref": "#/definitions/__schema0"
2367
+ },
2368
+ "additionalProperties": {
2369
+ "$ref": "#/definitions/__schema1"
2370
+ }
2371
+ }
2372
+ },
2373
+ "required": [
2374
+ "action",
2375
+ "item"
2376
+ ],
2377
+ "additionalProperties": false
2378
+ },
2379
+ {
2380
+ "type": "object",
2381
+ "properties": {
2382
+ "action": {
2383
+ "type": "string",
2384
+ "const": "move"
2385
+ },
2386
+ "x": {
2387
+ "type": "number"
2388
+ },
2389
+ "y": {
2390
+ "type": "number"
2391
+ }
2392
+ },
2393
+ "required": [
2394
+ "action",
2395
+ "x",
2396
+ "y"
2397
+ ],
2398
+ "additionalProperties": false
2399
+ },
2400
+ {
2401
+ "type": "object",
2402
+ "properties": {
2403
+ "action": {
2404
+ "type": "string",
2405
+ "const": "delete"
2406
+ }
2407
+ },
2408
+ "required": [
2409
+ "action"
2410
+ ],
2411
+ "additionalProperties": false
2412
+ },
2413
+ {
2414
+ "type": "object",
2415
+ "properties": {
2416
+ "action": {
2417
+ "type": "string",
2418
+ "const": "connect"
2419
+ },
2420
+ "item": {
2421
+ "type": "object",
2422
+ "propertyNames": {
2423
+ "$ref": "#/definitions/__schema0"
2424
+ },
2425
+ "additionalProperties": {
2426
+ "$ref": "#/definitions/__schema1"
2427
+ }
2428
+ }
2429
+ },
2430
+ "required": [
2431
+ "action",
2432
+ "item"
2433
+ ],
2434
+ "additionalProperties": false
2435
+ },
2436
+ {
2437
+ "type": "object",
2438
+ "properties": {
2439
+ "action": {
2440
+ "type": "string",
2441
+ "const": "disconnect"
2442
+ },
2443
+ "edgeId": {
2444
+ "anyOf": [
2445
+ {
2446
+ "type": "string",
2447
+ "minLength": 1,
2448
+ "maxLength": 128
2449
+ },
2450
+ {
2451
+ "type": "number"
2452
+ }
2453
+ ]
2454
+ }
2455
+ },
2456
+ "required": [
2457
+ "action",
2458
+ "edgeId"
2459
+ ],
2460
+ "additionalProperties": false
2461
+ }
2462
+ ],
2463
+ "definitions": {
2464
+ "__schema0": {
2465
+ "type": "string",
2466
+ "minLength": 1,
2467
+ "maxLength": 128
2468
+ },
2469
+ "__schema1": {}
2470
+ }
2471
+ },
2472
+ "collection.insert": {
2473
+ "$schema": "http://json-schema.org/draft-07/schema#",
2474
+ "type": "object",
2475
+ "properties": {
2476
+ "item": {
2477
+ "type": "object",
2478
+ "propertyNames": {
2479
+ "type": "string",
2480
+ "minLength": 1,
2481
+ "maxLength": 128
2482
+ },
2483
+ "additionalProperties": {}
2484
+ },
2485
+ "beforeId": {
2486
+ "anyOf": [
2487
+ {
2488
+ "type": "string",
2489
+ "minLength": 1,
2490
+ "maxLength": 128
2491
+ },
2492
+ {
2493
+ "type": "number"
2494
+ }
2495
+ ]
2496
+ }
2497
+ },
2498
+ "required": [
2499
+ "item"
2500
+ ],
2501
+ "additionalProperties": false
2502
+ },
2503
+ "collection.duplicate": {
2504
+ "$schema": "http://json-schema.org/draft-07/schema#",
2505
+ "type": "object",
2506
+ "properties": {
2507
+ "newId": {
2508
+ "anyOf": [
2509
+ {
2510
+ "type": "string",
2511
+ "minLength": 1,
2512
+ "maxLength": 128
2513
+ },
2514
+ {
2515
+ "type": "number"
2516
+ }
2517
+ ]
2518
+ }
2519
+ },
2520
+ "required": [
2521
+ "newId"
2522
+ ],
2523
+ "additionalProperties": false
2524
+ },
2525
+ "collection.delete": {
2526
+ "$schema": "http://json-schema.org/draft-07/schema#",
2527
+ "type": "object",
2528
+ "properties": {},
2529
+ "additionalProperties": false
2530
+ },
2531
+ "collection.reorder": {
2532
+ "$schema": "http://json-schema.org/draft-07/schema#",
2533
+ "type": "object",
2534
+ "properties": {
2535
+ "beforeId": {
2536
+ "anyOf": [
2537
+ {
2538
+ "anyOf": [
2539
+ {
2540
+ "type": "string",
2541
+ "minLength": 1,
2542
+ "maxLength": 128
2543
+ },
2544
+ {
2545
+ "type": "number"
2546
+ }
2547
+ ]
2548
+ },
2549
+ {
2550
+ "type": "null"
2551
+ }
2552
+ ]
2553
+ }
2554
+ },
2555
+ "additionalProperties": false
2556
+ },
2557
+ "object.transform": {
2558
+ "$schema": "http://json-schema.org/draft-07/schema#",
2559
+ "type": "object",
2560
+ "properties": {
2561
+ "x": {
2562
+ "$ref": "#/definitions/__schema0"
2563
+ },
2564
+ "y": {
2565
+ "$ref": "#/definitions/__schema0"
2566
+ },
2567
+ "z": {
2568
+ "$ref": "#/definitions/__schema0"
2569
+ },
2570
+ "rotationX": {
2571
+ "$ref": "#/definitions/__schema0"
2572
+ },
2573
+ "rotationY": {
2574
+ "$ref": "#/definitions/__schema0"
2575
+ },
2576
+ "rotationZ": {
2577
+ "$ref": "#/definitions/__schema0"
2578
+ },
2579
+ "scaleZ": {
2580
+ "$ref": "#/definitions/__schema0"
2581
+ },
2582
+ "rotation": {
2583
+ "$ref": "#/definitions/__schema0"
2584
+ },
2585
+ "scaleX": {
2586
+ "$ref": "#/definitions/__schema0"
2587
+ },
2588
+ "scaleY": {
2589
+ "$ref": "#/definitions/__schema0"
2590
+ }
2591
+ },
2592
+ "additionalProperties": false,
2593
+ "definitions": {
2594
+ "__schema0": {
2595
+ "type": "number"
2596
+ }
2597
+ }
2598
+ }
2599
+ },
2600
+ "components": [
2601
+ {
2602
+ "component": "split@1",
2603
+ "children": true,
2604
+ "bindings": [],
2605
+ "actions": [],
2606
+ "propsSchema": {
2607
+ "$schema": "http://json-schema.org/draft-07/schema#",
2608
+ "type": "object",
2609
+ "properties": {
2610
+ "titleKey": {
2611
+ "type": "string"
2612
+ },
2613
+ "descriptionKey": {
2614
+ "type": "string"
2615
+ },
2616
+ "minWidth": {
2617
+ "type": "number",
2618
+ "exclusiveMinimum": 0
2619
+ },
2620
+ "axis": {
2621
+ "type": "string",
2622
+ "enum": [
2623
+ "horizontal",
2624
+ "vertical"
2625
+ ]
2626
+ },
2627
+ "weights": {
2628
+ "maxItems": 256,
2629
+ "type": "array",
2630
+ "items": {
2631
+ "$ref": "#/definitions/__schema0"
2632
+ }
2633
+ }
2634
+ },
2635
+ "additionalProperties": false,
2636
+ "definitions": {
2637
+ "__schema0": {
2638
+ "type": "number",
2639
+ "exclusiveMinimum": 0
2640
+ }
2641
+ }
2642
+ }
2643
+ },
2644
+ {
2645
+ "component": "stack@1",
2646
+ "children": true,
2647
+ "bindings": [],
2648
+ "actions": [],
2649
+ "propsSchema": {
2650
+ "$schema": "http://json-schema.org/draft-07/schema#",
2651
+ "type": "object",
2652
+ "properties": {
2653
+ "titleKey": {
2654
+ "type": "string"
2655
+ },
2656
+ "descriptionKey": {
2657
+ "type": "string"
2658
+ },
2659
+ "minWidth": {
2660
+ "type": "number",
2661
+ "exclusiveMinimum": 0
2662
+ }
2663
+ },
2664
+ "additionalProperties": false
2665
+ }
2666
+ },
2667
+ {
2668
+ "component": "tabs@1",
2669
+ "children": true,
2670
+ "bindings": [],
2671
+ "actions": [],
2672
+ "propsSchema": {
2673
+ "$schema": "http://json-schema.org/draft-07/schema#",
2674
+ "type": "object",
2675
+ "properties": {
2676
+ "titleKey": {
2677
+ "type": "string"
2678
+ },
2679
+ "descriptionKey": {
2680
+ "type": "string"
2681
+ },
2682
+ "minWidth": {
2683
+ "type": "number",
2684
+ "exclusiveMinimum": 0
2685
+ }
2686
+ },
2687
+ "additionalProperties": false
2688
+ }
2689
+ },
2690
+ {
2691
+ "component": "group@1",
2692
+ "children": true,
2693
+ "bindings": [],
2694
+ "actions": [],
2695
+ "propsSchema": {
2696
+ "$schema": "http://json-schema.org/draft-07/schema#",
2697
+ "type": "object",
2698
+ "properties": {
2699
+ "titleKey": {
2700
+ "type": "string"
2701
+ },
2702
+ "descriptionKey": {
2703
+ "type": "string"
2704
+ },
2705
+ "minWidth": {
2706
+ "type": "number",
2707
+ "exclusiveMinimum": 0
2708
+ },
2709
+ "collapsed": {
2710
+ "type": "boolean"
2711
+ }
2712
+ },
2713
+ "additionalProperties": false
2714
+ }
2715
+ },
2716
+ {
2717
+ "component": "toolbar@1",
2718
+ "children": true,
2719
+ "bindings": [],
2720
+ "actions": [],
2721
+ "propsSchema": {
2722
+ "$schema": "http://json-schema.org/draft-07/schema#",
2723
+ "type": "object",
2724
+ "properties": {
2725
+ "titleKey": {
2726
+ "type": "string"
2727
+ },
2728
+ "descriptionKey": {
2729
+ "type": "string"
2730
+ },
2731
+ "minWidth": {
2732
+ "type": "number",
2733
+ "exclusiveMinimum": 0
2734
+ }
2735
+ },
2736
+ "additionalProperties": false
2737
+ }
2738
+ },
2739
+ {
2740
+ "component": "collection@1",
2741
+ "children": false,
2742
+ "bindings": [],
2743
+ "actions": [
2744
+ "insert",
2745
+ "duplicate",
2746
+ "delete",
2747
+ "reorder"
2748
+ ],
2749
+ "propsSchema": {
2750
+ "$schema": "http://json-schema.org/draft-07/schema#",
2751
+ "type": "object",
2752
+ "properties": {
2753
+ "titleKey": {
2754
+ "type": "string"
2755
+ },
2756
+ "descriptionKey": {
2757
+ "type": "string"
2758
+ },
2759
+ "minWidth": {
2760
+ "type": "number",
2761
+ "exclusiveMinimum": 0
2762
+ },
2763
+ "collection": {
2764
+ "type": "string"
2765
+ },
2766
+ "selection": {
2767
+ "type": "string"
2768
+ },
2769
+ "labelField": {
2770
+ "type": "string"
2771
+ }
2772
+ },
2773
+ "required": [
2774
+ "collection",
2775
+ "selection"
2776
+ ],
2777
+ "additionalProperties": false
2778
+ }
2779
+ },
2780
+ {
2781
+ "component": "inspector@1",
2782
+ "children": false,
2783
+ "bindings": [],
2784
+ "actions": [],
2785
+ "propsSchema": {
2786
+ "$schema": "http://json-schema.org/draft-07/schema#",
2787
+ "type": "object",
2788
+ "properties": {
2789
+ "titleKey": {
2790
+ "type": "string"
2791
+ },
2792
+ "descriptionKey": {
2793
+ "type": "string"
2794
+ },
2795
+ "minWidth": {
2796
+ "type": "number",
2797
+ "exclusiveMinimum": 0
2798
+ },
2799
+ "fields": {
2800
+ "maxItems": 256,
2801
+ "type": "array",
2802
+ "items": {
2803
+ "$ref": "#/definitions/__schema0"
2804
+ }
2805
+ }
2806
+ },
2807
+ "required": [
2808
+ "fields"
2809
+ ],
2810
+ "additionalProperties": false,
2811
+ "definitions": {
2812
+ "__schema0": {
2813
+ "type": "object",
2814
+ "properties": {
2815
+ "binding": {
2816
+ "type": "string"
2817
+ },
2818
+ "titleKey": {
2819
+ "type": "string"
2820
+ },
2821
+ "command": {
2822
+ "type": "string"
2823
+ }
2824
+ },
2825
+ "required": [
2826
+ "binding"
2827
+ ],
2828
+ "additionalProperties": false
2829
+ }
2830
+ }
2831
+ }
2832
+ },
2833
+ {
2834
+ "component": "palette@1",
2835
+ "children": false,
2836
+ "bindings": [],
2837
+ "actions": [],
2838
+ "propsSchema": {
2839
+ "$schema": "http://json-schema.org/draft-07/schema#",
2840
+ "type": "object",
2841
+ "properties": {
2842
+ "titleKey": {
2843
+ "type": "string"
2844
+ },
2845
+ "descriptionKey": {
2846
+ "type": "string"
2847
+ },
2848
+ "minWidth": {
2849
+ "type": "number",
2850
+ "exclusiveMinimum": 0
2851
+ },
2852
+ "brushes": {
2853
+ "minItems": 1,
2854
+ "maxItems": 256,
2855
+ "type": "array",
2856
+ "items": {
2857
+ "$ref": "#/definitions/__schema0"
2858
+ }
2859
+ },
2860
+ "tool": {
2861
+ "type": "string"
2862
+ }
2863
+ },
2864
+ "required": [
2865
+ "brushes"
2866
+ ],
2867
+ "additionalProperties": false,
2868
+ "definitions": {
2869
+ "__schema0": {
2870
+ "anyOf": [
2871
+ {
2872
+ "type": "string"
2873
+ },
2874
+ {
2875
+ "type": "object",
2876
+ "properties": {
2877
+ "value": {
2878
+ "anyOf": [
2879
+ {
2880
+ "type": "string"
2881
+ },
2882
+ {
2883
+ "type": "number"
2884
+ },
2885
+ {
2886
+ "type": "boolean"
2887
+ },
2888
+ {
2889
+ "type": "null"
2890
+ }
2891
+ ]
2892
+ },
2893
+ "titleKey": {
2894
+ "type": "string"
2895
+ }
2896
+ },
2897
+ "required": [
2898
+ "value"
2899
+ ],
2900
+ "additionalProperties": false
2901
+ }
2902
+ ]
2903
+ }
2904
+ }
2905
+ }
2906
+ },
2907
+ {
2908
+ "component": "grid2d@1",
2909
+ "children": false,
2910
+ "bindings": [
2911
+ "rows",
2912
+ "columns",
2913
+ "cells"
2914
+ ],
2915
+ "actions": [
2916
+ "paint"
2917
+ ],
2918
+ "propsSchema": {
2919
+ "$schema": "http://json-schema.org/draft-07/schema#",
2920
+ "type": "object",
2921
+ "properties": {
2922
+ "titleKey": {
2923
+ "type": "string"
2924
+ },
2925
+ "descriptionKey": {
2926
+ "type": "string"
2927
+ },
2928
+ "minWidth": {
2929
+ "type": "number",
2930
+ "exclusiveMinimum": 0
2931
+ },
2932
+ "origin": {
2933
+ "type": "string",
2934
+ "const": "top-left"
2935
+ },
2936
+ "brushes": {
2937
+ "minItems": 1,
2938
+ "maxItems": 256,
2939
+ "type": "array",
2940
+ "items": {
2941
+ "$ref": "#/definitions/__schema0"
2942
+ }
2943
+ },
2944
+ "tool": {
2945
+ "type": "string"
2946
+ },
2947
+ "cellSize": {
2948
+ "type": "number",
2949
+ "exclusiveMinimum": 0,
2950
+ "maximum": 256
2951
+ }
2952
+ },
2953
+ "additionalProperties": false,
2954
+ "definitions": {
2955
+ "__schema0": {
2956
+ "anyOf": [
2957
+ {
2958
+ "type": "string"
2959
+ },
2960
+ {
2961
+ "type": "object",
2962
+ "properties": {
2963
+ "value": {
2964
+ "anyOf": [
2965
+ {
2966
+ "type": "string"
2967
+ },
2968
+ {
2969
+ "type": "number"
2970
+ },
2971
+ {
2972
+ "type": "boolean"
2973
+ },
2974
+ {
2975
+ "type": "null"
2976
+ }
2977
+ ]
2978
+ },
2979
+ "titleKey": {
2980
+ "type": "string"
2981
+ }
2982
+ },
2983
+ "required": [
2984
+ "value"
2985
+ ],
2986
+ "additionalProperties": false
2987
+ }
2988
+ ]
2989
+ }
2990
+ }
2991
+ }
2992
+ },
2993
+ {
2994
+ "component": "objects2d@1",
2995
+ "children": false,
2996
+ "bindings": [
2997
+ "x",
2998
+ "y",
2999
+ "rotation",
3000
+ "scaleX",
3001
+ "scaleY",
3002
+ "asset"
3003
+ ],
3004
+ "actions": [
3005
+ "transform",
3006
+ "duplicate",
3007
+ "delete"
3008
+ ],
3009
+ "propsSchema": {
3010
+ "$schema": "http://json-schema.org/draft-07/schema#",
3011
+ "type": "object",
3012
+ "properties": {
3013
+ "titleKey": {
3014
+ "type": "string"
3015
+ },
3016
+ "descriptionKey": {
3017
+ "type": "string"
3018
+ },
3019
+ "minWidth": {
3020
+ "type": "number",
3021
+ "exclusiveMinimum": 0
3022
+ },
3023
+ "collection": {
3024
+ "type": "string"
3025
+ },
3026
+ "selection": {
3027
+ "type": "string"
3028
+ },
3029
+ "labelField": {
3030
+ "type": "string"
3031
+ },
3032
+ "width": {
3033
+ "type": "number",
3034
+ "exclusiveMinimum": 0,
3035
+ "maximum": 100000
3036
+ },
3037
+ "height": {
3038
+ "type": "number",
3039
+ "exclusiveMinimum": 0,
3040
+ "maximum": 100000
3041
+ },
3042
+ "shape": {
3043
+ "allOf": [
3044
+ {
3045
+ "$ref": "#/definitions/__schema0"
3046
+ }
3047
+ ]
3048
+ },
3049
+ "shapeVariants": {
3050
+ "type": "object",
3051
+ "properties": {
3052
+ "field": {
3053
+ "type": "string"
3054
+ },
3055
+ "values": {
3056
+ "type": "object",
3057
+ "propertyNames": {
3058
+ "type": "string"
3059
+ },
3060
+ "additionalProperties": {
3061
+ "$ref": "#/definitions/__schema0"
3062
+ }
3063
+ }
3064
+ },
3065
+ "required": [
3066
+ "field",
3067
+ "values"
3068
+ ],
3069
+ "additionalProperties": false
3070
+ },
3071
+ "origin": {
3072
+ "type": "string",
3073
+ "const": "top-left"
3074
+ },
3075
+ "unit": {
3076
+ "type": "string"
3077
+ }
3078
+ },
3079
+ "required": [
3080
+ "collection",
3081
+ "selection"
3082
+ ],
3083
+ "additionalProperties": false,
3084
+ "definitions": {
3085
+ "__schema0": {
3086
+ "type": "object",
3087
+ "properties": {
3088
+ "kind": {
3089
+ "$ref": "#/definitions/__schema1"
3090
+ },
3091
+ "color": {
3092
+ "$ref": "#/definitions/__schema2"
3093
+ },
3094
+ "width": {
3095
+ "$ref": "#/definitions/__schema3"
3096
+ },
3097
+ "height": {
3098
+ "$ref": "#/definitions/__schema4"
3099
+ },
3100
+ "points": {
3101
+ "$ref": "#/definitions/__schema5"
3102
+ }
3103
+ },
3104
+ "required": [
3105
+ "kind"
3106
+ ],
3107
+ "additionalProperties": false
3108
+ },
3109
+ "__schema1": {
3110
+ "type": "string",
3111
+ "enum": [
3112
+ "circle",
3113
+ "rect",
3114
+ "diamond",
3115
+ "polygon"
3116
+ ]
3117
+ },
3118
+ "__schema2": {
3119
+ "type": "string",
3120
+ "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
3121
+ },
3122
+ "__schema3": {
3123
+ "type": "number",
3124
+ "exclusiveMinimum": 0,
3125
+ "maximum": 4096
3126
+ },
3127
+ "__schema4": {
3128
+ "type": "number",
3129
+ "exclusiveMinimum": 0,
3130
+ "maximum": 4096
3131
+ },
3132
+ "__schema5": {
3133
+ "minItems": 3,
3134
+ "maxItems": 128,
3135
+ "type": "array",
3136
+ "items": {
3137
+ "$ref": "#/definitions/__schema6"
3138
+ }
3139
+ },
3140
+ "__schema6": {
3141
+ "type": "array",
3142
+ "items": [
3143
+ {
3144
+ "type": "number",
3145
+ "minimum": -4096,
3146
+ "maximum": 4096
3147
+ },
3148
+ {
3149
+ "type": "number",
3150
+ "minimum": -4096,
3151
+ "maximum": 4096
3152
+ }
3153
+ ]
3154
+ }
3155
+ }
3156
+ }
3157
+ },
3158
+ {
3159
+ "component": "paths2d@1",
3160
+ "children": false,
3161
+ "bindings": [],
3162
+ "actions": [
3163
+ "edit"
3164
+ ],
3165
+ "propsSchema": {
3166
+ "$schema": "http://json-schema.org/draft-07/schema#",
3167
+ "type": "object",
3168
+ "properties": {
3169
+ "titleKey": {
3170
+ "type": "string"
3171
+ },
3172
+ "descriptionKey": {
3173
+ "type": "string"
3174
+ },
3175
+ "minWidth": {
3176
+ "type": "number",
3177
+ "exclusiveMinimum": 0
3178
+ },
3179
+ "collection": {
3180
+ "type": "string"
3181
+ },
3182
+ "selection": {
3183
+ "type": "string"
3184
+ },
3185
+ "width": {
3186
+ "type": "number",
3187
+ "exclusiveMinimum": 0,
3188
+ "maximum": 100000
3189
+ },
3190
+ "height": {
3191
+ "type": "number",
3192
+ "exclusiveMinimum": 0,
3193
+ "maximum": 100000
3194
+ },
3195
+ "labelField": {
3196
+ "type": "string"
3197
+ },
3198
+ "defaultNode": {
3199
+ "type": "object",
3200
+ "propertyNames": {
3201
+ "type": "string"
3202
+ },
3203
+ "additionalProperties": {}
3204
+ },
3205
+ "defaultEdge": {
3206
+ "type": "object",
3207
+ "propertyNames": {
3208
+ "type": "string"
3209
+ },
3210
+ "additionalProperties": {}
3211
+ }
3212
+ },
3213
+ "required": [
3214
+ "collection",
3215
+ "selection"
3216
+ ],
3217
+ "additionalProperties": false
3218
+ }
3219
+ },
3220
+ {
3221
+ "component": "objects3d@1",
3222
+ "children": false,
3223
+ "bindings": [
3224
+ "x",
3225
+ "y",
3226
+ "z",
3227
+ "rotationX",
3228
+ "rotationY",
3229
+ "rotationZ",
3230
+ "scaleX",
3231
+ "scaleY",
3232
+ "scaleZ",
3233
+ "asset"
3234
+ ],
3235
+ "actions": [
3236
+ "transform",
3237
+ "duplicate",
3238
+ "delete"
3239
+ ],
3240
+ "propsSchema": {
3241
+ "$schema": "http://json-schema.org/draft-07/schema#",
3242
+ "type": "object",
3243
+ "properties": {
3244
+ "titleKey": {
3245
+ "type": "string"
3246
+ },
3247
+ "descriptionKey": {
3248
+ "type": "string"
3249
+ },
3250
+ "minWidth": {
3251
+ "type": "number",
3252
+ "exclusiveMinimum": 0
3253
+ },
3254
+ "collection": {
3255
+ "type": "string"
3256
+ },
3257
+ "selection": {
3258
+ "type": "string"
3259
+ },
3260
+ "labelField": {
3261
+ "type": "string"
3262
+ },
3263
+ "width": {
3264
+ "type": "number",
3265
+ "exclusiveMinimum": 0,
3266
+ "maximum": 100000
3267
+ },
3268
+ "height": {
3269
+ "type": "number",
3270
+ "exclusiveMinimum": 0,
3271
+ "maximum": 100000
3272
+ },
3273
+ "depth": {
3274
+ "type": "number",
3275
+ "exclusiveMinimum": 0,
3276
+ "maximum": 100000
3277
+ },
3278
+ "plane": {
3279
+ "type": "string",
3280
+ "enum": [
3281
+ "xy",
3282
+ "xz",
3283
+ "yz"
3284
+ ]
3285
+ },
3286
+ "step": {
3287
+ "type": "number",
3288
+ "exclusiveMinimum": 0
3289
+ }
3290
+ },
3291
+ "required": [
3292
+ "collection",
3293
+ "selection"
3294
+ ],
3295
+ "additionalProperties": false
3296
+ }
3297
+ },
3298
+ {
3299
+ "component": "command@1",
3300
+ "children": false,
3301
+ "bindings": [],
3302
+ "actions": [],
3303
+ "propsSchema": {
3304
+ "$schema": "http://json-schema.org/draft-07/schema#",
3305
+ "type": "object",
3306
+ "properties": {
3307
+ "titleKey": {
3308
+ "type": "string"
3309
+ },
3310
+ "descriptionKey": {
3311
+ "type": "string"
3312
+ },
3313
+ "minWidth": {
3314
+ "type": "number",
3315
+ "exclusiveMinimum": 0
3316
+ },
3317
+ "command": {
3318
+ "type": "string"
3319
+ },
3320
+ "input": {
3321
+ "type": "object",
3322
+ "propertyNames": {
3323
+ "type": "string"
3324
+ },
3325
+ "additionalProperties": {}
3326
+ },
3327
+ "editInput": {
3328
+ "type": "boolean"
3329
+ }
3330
+ },
3331
+ "required": [
3332
+ "command"
3333
+ ],
3334
+ "additionalProperties": false
3335
+ }
3336
+ },
3337
+ {
3338
+ "component": "extension-view@1",
3339
+ "children": false,
3340
+ "bindings": [],
3341
+ "actions": [],
3342
+ "propsSchema": {
3343
+ "$schema": "http://json-schema.org/draft-07/schema#",
3344
+ "type": "object",
3345
+ "properties": {
3346
+ "titleKey": {
3347
+ "type": "string"
3348
+ },
3349
+ "descriptionKey": {
3350
+ "type": "string"
3351
+ },
3352
+ "minWidth": {
3353
+ "type": "number",
3354
+ "exclusiveMinimum": 0
3355
+ },
3356
+ "extension": {
3357
+ "type": "string"
3358
+ }
3359
+ },
3360
+ "required": [
3361
+ "extension"
3362
+ ],
3363
+ "additionalProperties": false
3364
+ }
3365
+ },
3366
+ {
3367
+ "component": "asset-picker@1",
3368
+ "children": false,
3369
+ "bindings": [
3370
+ "value"
3371
+ ],
3372
+ "actions": [
3373
+ "change"
3374
+ ],
3375
+ "propsSchema": {
3376
+ "$schema": "http://json-schema.org/draft-07/schema#",
3377
+ "type": "object",
3378
+ "properties": {
3379
+ "titleKey": {
3380
+ "type": "string"
3381
+ },
3382
+ "descriptionKey": {
3383
+ "type": "string"
3384
+ },
3385
+ "minWidth": {
3386
+ "type": "number",
3387
+ "exclusiveMinimum": 0
3388
+ },
3389
+ "mimeType": {
3390
+ "type": "string"
3391
+ },
3392
+ "resourceType": {
3393
+ "type": "string"
3394
+ }
3395
+ },
3396
+ "additionalProperties": false
3397
+ }
3398
+ },
3399
+ {
3400
+ "component": "preview@1",
3401
+ "children": false,
3402
+ "bindings": [],
3403
+ "actions": [],
3404
+ "propsSchema": {
3405
+ "$schema": "http://json-schema.org/draft-07/schema#",
3406
+ "type": "object",
3407
+ "properties": {
3408
+ "titleKey": {
3409
+ "type": "string"
3410
+ },
3411
+ "descriptionKey": {
3412
+ "type": "string"
3413
+ },
3414
+ "minWidth": {
3415
+ "type": "number",
3416
+ "exclusiveMinimum": 0
3417
+ }
3418
+ },
3419
+ "additionalProperties": false
3420
+ }
3421
+ }
3422
+ ],
3423
+ "dataSchemaKeywords": [
3424
+ "type",
3425
+ "properties",
3426
+ "items",
3427
+ "required",
3428
+ "enum",
3429
+ "const",
3430
+ "minimum",
3431
+ "maximum",
3432
+ "minLength",
3433
+ "maxLength",
3434
+ "minItems",
3435
+ "maxItems",
3436
+ "additionalProperties",
3437
+ "readOnly",
3438
+ "title",
3439
+ "description",
3440
+ "default",
3441
+ "$schema",
3442
+ "$id",
3443
+ "$comment",
3444
+ "examples"
3445
+ ],
3446
+ "limits": {
3447
+ "viewNodes": 256,
3448
+ "viewDepth": 16,
3449
+ "bindingSegments": 32,
3450
+ "transactionChanges": 2048,
3451
+ "transactionBytes": 262144,
3452
+ "jsonDepth": 32,
3453
+ "jsonNodes": 100000
3454
+ },
3455
+ "invariants": [
3456
+ "Documents owned by another registered authoring protocol, including .pcaudio.json and .pcscore.json, cannot be written by level transactions. Reference such assets through the owning protocol instead.",
3457
+ "Every JSON value must be finite, acyclic, dense and free of __proto__, prototype and constructor keys.",
3458
+ "An item selector must use the exact collection path, parent selections and idField declared by its selection slot.",
3459
+ "Identity keys are unique within their parent collection; ordinary field commands cannot mutate identities.",
3460
+ "Primitive commands target one document. command.batch composes declared primitives with schema-checked typed input. Cross-document compositions require transaction version 2 and complete expectedDocuments baselines; never split them into independent saves.",
3461
+ "Path node and edge identities, endpoints, direction, self-loop and delete policy are explicit. Dangling or duplicate edges are rejected; cascade deletion is opt-in.",
3462
+ "Project extension views receive only declared document snapshots and propose allowed commands under a per-snapshot token; the host supplies authority and current stable selection.",
3463
+ "Custom validators and document providers are bounded self-contained sandbox modules. Their exact bytes join the execution contract and save validates the full result again.",
3464
+ "Object transforms require at least one declared coordinate and may not overlap target bindings.",
3465
+ "Grid dimensions and cells must agree; painted values must belong to the command declaration values.",
3466
+ "Component events must target commands of the corresponding operation and the same displayed bindings.",
3467
+ "Collection actions must use the displaying component selection; object transforms must map to its displayed coordinates.",
3468
+ "Author every declared data-schema node with one explicit type: object, array, string, number, integer, boolean or null. Nodes include the root, properties values, declared items and schema-valued additionalProperties; boolean additionalProperties switches are not nodes.",
3469
+ "Annotations such as readOnly, title, description, default and examples do not supply a type. The parser also accepts enum- or const-constrained nodes without type, but authoring should emit an explicit type even there.",
3470
+ "Preserve unknown authored fields using their existing types and readOnly where they must not be edited; an opaque object can use {type:\"object\",readOnly:true,additionalProperties:true}. Do not coerce or delete existing values or invent homogeneous array item types.",
3471
+ "Unsupported data-schema constraints disable writes; readonly ancestors and complete candidate data are checked on save.",
3472
+ "Subtree replacement preserves existing readonly descendants. Declared collections compare surviving members by stable identity, permitting reorder and new identities.",
3473
+ "JSON Schema descriptions cannot express all these cross-reference and runtime invariants; the compiler remains authoritative."
3474
+ ]
3475
+ }