rtistree 0.5.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.
Files changed (181) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/LICENSE +21 -0
  3. package/README.md +99 -0
  4. package/THIRD_PARTY_NOTICES.md +25 -0
  5. package/dist/art-direction.d.ts +77 -0
  6. package/dist/art-direction.js +186 -0
  7. package/dist/art-direction.js.map +1 -0
  8. package/dist/artifacts.d.ts +24 -0
  9. package/dist/artifacts.js +49 -0
  10. package/dist/artifacts.js.map +1 -0
  11. package/dist/assets.d.ts +16 -0
  12. package/dist/assets.js +96 -0
  13. package/dist/assets.js.map +1 -0
  14. package/dist/benchmark.d.ts +76 -0
  15. package/dist/benchmark.js +118 -0
  16. package/dist/benchmark.js.map +1 -0
  17. package/dist/cli.d.ts +2 -0
  18. package/dist/cli.js +300 -0
  19. package/dist/cli.js.map +1 -0
  20. package/dist/commands.d.ts +5315 -0
  21. package/dist/commands.js +591 -0
  22. package/dist/commands.js.map +1 -0
  23. package/dist/components.d.ts +20 -0
  24. package/dist/components.js +98 -0
  25. package/dist/components.js.map +1 -0
  26. package/dist/construction.d.ts +53 -0
  27. package/dist/construction.js +80 -0
  28. package/dist/construction.js.map +1 -0
  29. package/dist/critique.d.ts +44 -0
  30. package/dist/critique.js +45 -0
  31. package/dist/critique.js.map +1 -0
  32. package/dist/detail.d.ts +5 -0
  33. package/dist/detail.js +52 -0
  34. package/dist/detail.js.map +1 -0
  35. package/dist/document.d.ts +64 -0
  36. package/dist/document.js +56 -0
  37. package/dist/document.js.map +1 -0
  38. package/dist/export.d.ts +405 -0
  39. package/dist/export.js +344 -0
  40. package/dist/export.js.map +1 -0
  41. package/dist/font-inspection.d.ts +8 -0
  42. package/dist/font-inspection.js +34 -0
  43. package/dist/font-inspection.js.map +1 -0
  44. package/dist/graphics.d.ts +9 -0
  45. package/dist/graphics.js +72 -0
  46. package/dist/graphics.js.map +1 -0
  47. package/dist/history-storage.d.ts +10 -0
  48. package/dist/history-storage.js +59 -0
  49. package/dist/history-storage.js.map +1 -0
  50. package/dist/index.d.ts +27 -0
  51. package/dist/index.js +28 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/layout.d.ts +18 -0
  54. package/dist/layout.js +155 -0
  55. package/dist/layout.js.map +1 -0
  56. package/dist/loader.d.ts +9 -0
  57. package/dist/loader.js +108 -0
  58. package/dist/loader.js.map +1 -0
  59. package/dist/mcp.d.ts +4 -0
  60. package/dist/mcp.js +223 -0
  61. package/dist/mcp.js.map +1 -0
  62. package/dist/merge.d.ts +6 -0
  63. package/dist/merge.js +49 -0
  64. package/dist/merge.js.map +1 -0
  65. package/dist/native.d.ts +3 -0
  66. package/dist/native.js +6 -0
  67. package/dist/native.js.map +1 -0
  68. package/dist/paint.d.ts +9 -0
  69. package/dist/paint.js +331 -0
  70. package/dist/paint.js.map +1 -0
  71. package/dist/path-edit.d.ts +20 -0
  72. package/dist/path-edit.js +30 -0
  73. package/dist/path-edit.js.map +1 -0
  74. package/dist/pdf-output.d.ts +21 -0
  75. package/dist/pdf-output.js +297 -0
  76. package/dist/pdf-output.js.map +1 -0
  77. package/dist/pipeline.d.ts +39 -0
  78. package/dist/pipeline.js +227 -0
  79. package/dist/pipeline.js.map +1 -0
  80. package/dist/print-scene.d.ts +490 -0
  81. package/dist/print-scene.js +55 -0
  82. package/dist/print-scene.js.map +1 -0
  83. package/dist/production-workflow.d.ts +251 -0
  84. package/dist/production-workflow.js +335 -0
  85. package/dist/production-workflow.js.map +1 -0
  86. package/dist/program-worker.d.ts +1 -0
  87. package/dist/program-worker.js +31 -0
  88. package/dist/program-worker.js.map +1 -0
  89. package/dist/program.d.ts +85 -0
  90. package/dist/program.js +246 -0
  91. package/dist/program.js.map +1 -0
  92. package/dist/project-config.d.ts +91 -0
  93. package/dist/project-config.js +187 -0
  94. package/dist/project-config.js.map +1 -0
  95. package/dist/project.d.ts +897 -0
  96. package/dist/project.js +347 -0
  97. package/dist/project.js.map +1 -0
  98. package/dist/raster-edit.d.ts +61 -0
  99. package/dist/raster-edit.js +91 -0
  100. package/dist/raster-edit.js.map +1 -0
  101. package/dist/raster-studio.d.ts +84 -0
  102. package/dist/raster-studio.js +236 -0
  103. package/dist/raster-studio.js.map +1 -0
  104. package/dist/render.d.ts +79 -0
  105. package/dist/render.js +437 -0
  106. package/dist/render.js.map +1 -0
  107. package/dist/rich-text.d.ts +10 -0
  108. package/dist/rich-text.js +56 -0
  109. package/dist/rich-text.js.map +1 -0
  110. package/dist/schema.d.ts +1912 -0
  111. package/dist/schema.js +571 -0
  112. package/dist/schema.js.map +1 -0
  113. package/dist/spatial.d.ts +10 -0
  114. package/dist/spatial.js +29 -0
  115. package/dist/spatial.js.map +1 -0
  116. package/dist/studio-reference.d.ts +153 -0
  117. package/dist/studio-reference.js +39 -0
  118. package/dist/studio-reference.js.map +1 -0
  119. package/dist/svg.d.ts +5 -0
  120. package/dist/svg.js +315 -0
  121. package/dist/svg.js.map +1 -0
  122. package/dist/techniques.d.ts +74 -0
  123. package/dist/techniques.js +164 -0
  124. package/dist/techniques.js.map +1 -0
  125. package/dist/verify.d.ts +36 -0
  126. package/dist/verify.js +277 -0
  127. package/dist/verify.js.map +1 -0
  128. package/dist/viewport.d.ts +3 -0
  129. package/dist/viewport.js +71 -0
  130. package/dist/viewport.js.map +1 -0
  131. package/dist/workflow.d.ts +53 -0
  132. package/dist/workflow.js +66 -0
  133. package/dist/workflow.js.map +1 -0
  134. package/docs/agent-art-workflow.md +201 -0
  135. package/docs/agent-setup.md +83 -0
  136. package/docs/atelier.md +117 -0
  137. package/docs/cli-reference.md +61 -0
  138. package/docs/decisions/001-runtime-and-renderer.md +35 -0
  139. package/docs/decisions/002-composable-scenes-and-history.md +28 -0
  140. package/docs/decisions/003-editing-refinement-and-agent-validation.md +45 -0
  141. package/docs/decisions/004-print-production-and-projects.md +19 -0
  142. package/docs/decisions/005-programmable-digital-art.md +15 -0
  143. package/docs/decisions/006-staged-2d-art-production.md +13 -0
  144. package/docs/decisions/007-foundation-first-art-direction.md +13 -0
  145. package/docs/decisions/008-agent-onboarding-and-trial-lessons.md +48 -0
  146. package/docs/engine-overview.md +174 -0
  147. package/docs/evolution.md +179 -0
  148. package/docs/getting-started.md +107 -0
  149. package/docs/next-milestone.md +61 -0
  150. package/docs/previews/a3-production.json +36 -0
  151. package/docs/previews/benchmark.json +42 -0
  152. package/docs/previews/landscape.png +0 -0
  153. package/docs/previews/performance.json +24 -0
  154. package/docs/previews/poster.png +0 -0
  155. package/docs/production.md +107 -0
  156. package/docs/releasing.md +60 -0
  157. package/docs/scene-format.md +126 -0
  158. package/docs/studio.md +108 -0
  159. package/examples/hello/README.md +14 -0
  160. package/examples/hello/refine.json +10 -0
  161. package/examples/hello/render.mjs +9 -0
  162. package/examples/hello/scene.json +19 -0
  163. package/licenses/DM-Serif-Display-OFL.txt +93 -0
  164. package/licenses/Inter-OFL.txt +93 -0
  165. package/package.json +84 -0
  166. package/schemas/authoring.schema.json +2177 -0
  167. package/schemas/brief.schema.json +57 -0
  168. package/schemas/command.schema.json +3154 -0
  169. package/schemas/construction.schema.json +159 -0
  170. package/schemas/critique.schema.json +101 -0
  171. package/schemas/document.schema.json +41 -0
  172. package/schemas/export.schema.json +89 -0
  173. package/schemas/fragment.schema.json +1861 -0
  174. package/schemas/patch.schema.json +3177 -0
  175. package/schemas/pipeline.schema.json +205 -0
  176. package/schemas/production.schema.json +452 -0
  177. package/schemas/program.schema.json +152 -0
  178. package/schemas/project.schema.json +115 -0
  179. package/schemas/raster-read.schema.json +42 -0
  180. package/schemas/raster-write.schema.json +75 -0
  181. package/schemas/scene.schema.json +2014 -0
@@ -0,0 +1,2014 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "version": {
6
+ "type": "number",
7
+ "const": 1
8
+ },
9
+ "canvas": {
10
+ "type": "object",
11
+ "properties": {
12
+ "width": {
13
+ "type": "integer",
14
+ "minimum": 1,
15
+ "maximum": 8192
16
+ },
17
+ "height": {
18
+ "type": "integer",
19
+ "minimum": 1,
20
+ "maximum": 8192
21
+ },
22
+ "colour_space": {
23
+ "default": "srgb",
24
+ "type": "string",
25
+ "const": "srgb"
26
+ },
27
+ "background": {
28
+ "default": "#00000000",
29
+ "$ref": "#/$defs/__schema0"
30
+ }
31
+ },
32
+ "required": ["width", "height", "colour_space", "background"],
33
+ "additionalProperties": false
34
+ },
35
+ "document": {
36
+ "type": "object",
37
+ "properties": {
38
+ "width": {
39
+ "type": "number",
40
+ "exclusiveMinimum": 0,
41
+ "maximum": 2000
42
+ },
43
+ "height": {
44
+ "type": "number",
45
+ "exclusiveMinimum": 0,
46
+ "maximum": 2000
47
+ },
48
+ "unit": {
49
+ "default": "mm",
50
+ "type": "string",
51
+ "enum": ["mm", "in", "pt"]
52
+ },
53
+ "ppi": {
54
+ "default": 300,
55
+ "type": "number",
56
+ "minimum": 36,
57
+ "maximum": 1200
58
+ },
59
+ "bleed": {
60
+ "default": 0,
61
+ "type": "number",
62
+ "minimum": 0,
63
+ "maximum": 100
64
+ },
65
+ "safe_margin": {
66
+ "default": 0,
67
+ "type": "number",
68
+ "minimum": 0,
69
+ "maximum": 100
70
+ }
71
+ },
72
+ "required": ["width", "height", "unit", "ppi", "bleed", "safe_margin"],
73
+ "additionalProperties": false
74
+ },
75
+ "paragraph_styles": {
76
+ "type": "object",
77
+ "propertyNames": {
78
+ "$ref": "#/$defs/__schema1"
79
+ },
80
+ "additionalProperties": {
81
+ "$ref": "#/$defs/__schema2"
82
+ }
83
+ },
84
+ "fonts": {
85
+ "type": "object",
86
+ "propertyNames": {
87
+ "$ref": "#/$defs/__schema1"
88
+ },
89
+ "additionalProperties": {
90
+ "type": "object",
91
+ "properties": {
92
+ "source": {
93
+ "type": "string",
94
+ "minLength": 1
95
+ },
96
+ "hash": {
97
+ "type": "string",
98
+ "pattern": "^sha256:[a-f0-9]{64}$"
99
+ }
100
+ },
101
+ "required": ["source"],
102
+ "additionalProperties": false
103
+ }
104
+ },
105
+ "metadata": {
106
+ "default": {},
107
+ "type": "object",
108
+ "propertyNames": {
109
+ "type": "string"
110
+ },
111
+ "additionalProperties": {
112
+ "$ref": "#/$defs/__schema4"
113
+ }
114
+ },
115
+ "assets": {
116
+ "default": {},
117
+ "type": "object",
118
+ "propertyNames": {
119
+ "$ref": "#/$defs/__schema1"
120
+ },
121
+ "additionalProperties": {
122
+ "type": "object",
123
+ "properties": {
124
+ "recipe": {
125
+ "type": "object",
126
+ "properties": {
127
+ "source": {
128
+ "type": "string",
129
+ "minLength": 1
130
+ },
131
+ "hash": {
132
+ "type": "string",
133
+ "pattern": "^sha256:[a-f0-9]{64}$"
134
+ }
135
+ },
136
+ "required": ["source", "hash"],
137
+ "additionalProperties": false
138
+ },
139
+ "type": {
140
+ "default": "image",
141
+ "type": "string",
142
+ "enum": ["image", "generated-image"]
143
+ },
144
+ "source": {
145
+ "type": "string",
146
+ "minLength": 1,
147
+ "maxLength": 2048
148
+ },
149
+ "hash": {
150
+ "type": "string",
151
+ "pattern": "^sha256:[a-f0-9]{64}$"
152
+ }
153
+ },
154
+ "required": ["type", "source"],
155
+ "additionalProperties": false
156
+ }
157
+ },
158
+ "layers": {
159
+ "maxItems": 256,
160
+ "type": "array",
161
+ "items": {
162
+ "$ref": "#/$defs/__schema5"
163
+ }
164
+ },
165
+ "verification": {
166
+ "default": {
167
+ "rules": []
168
+ },
169
+ "type": "object",
170
+ "properties": {
171
+ "rules": {
172
+ "default": [],
173
+ "maxItems": 256,
174
+ "type": "array",
175
+ "items": {
176
+ "$ref": "#/$defs/__schema30"
177
+ }
178
+ }
179
+ },
180
+ "required": ["rules"],
181
+ "additionalProperties": false
182
+ }
183
+ },
184
+ "required": ["version", "canvas", "metadata", "assets", "layers", "verification"],
185
+ "additionalProperties": false,
186
+ "$defs": {
187
+ "__schema0": {
188
+ "type": "string",
189
+ "pattern": "^#(?:[\\da-fA-F]{6}|[\\da-fA-F]{8})$"
190
+ },
191
+ "__schema1": {
192
+ "type": "string",
193
+ "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,79}$"
194
+ },
195
+ "__schema2": {
196
+ "type": "object",
197
+ "properties": {
198
+ "font": {
199
+ "default": "inter",
200
+ "$ref": "#/$defs/__schema1"
201
+ },
202
+ "size": {
203
+ "default": 32,
204
+ "type": "number",
205
+ "exclusiveMinimum": 0,
206
+ "maximum": 1024,
207
+ "$ref": "#/$defs/__schema3"
208
+ },
209
+ "weight": {
210
+ "default": "regular",
211
+ "type": "string",
212
+ "enum": ["regular", "bold"]
213
+ },
214
+ "colour": {
215
+ "default": "#ffffff",
216
+ "$ref": "#/$defs/__schema0"
217
+ },
218
+ "line_height": {
219
+ "default": 1.2,
220
+ "type": "number",
221
+ "exclusiveMinimum": 0,
222
+ "maximum": 5,
223
+ "$ref": "#/$defs/__schema3"
224
+ },
225
+ "align": {
226
+ "default": "left",
227
+ "type": "string",
228
+ "enum": ["left", "center", "right"]
229
+ },
230
+ "tracking": {
231
+ "type": "number",
232
+ "minimum": -20,
233
+ "maximum": 200,
234
+ "$ref": "#/$defs/__schema3"
235
+ },
236
+ "kerning": {
237
+ "type": "boolean"
238
+ }
239
+ },
240
+ "required": ["font", "size", "weight", "colour", "line_height", "align"],
241
+ "additionalProperties": false
242
+ },
243
+ "__schema3": {
244
+ "type": "number"
245
+ },
246
+ "__schema4": {
247
+ "anyOf": [
248
+ {
249
+ "type": "string"
250
+ },
251
+ {
252
+ "type": "number"
253
+ },
254
+ {
255
+ "type": "boolean"
256
+ },
257
+ {
258
+ "type": "null"
259
+ },
260
+ {
261
+ "type": "array",
262
+ "items": {
263
+ "$ref": "#/$defs/__schema4"
264
+ }
265
+ },
266
+ {
267
+ "type": "object",
268
+ "propertyNames": {
269
+ "type": "string"
270
+ },
271
+ "additionalProperties": {
272
+ "$ref": "#/$defs/__schema4"
273
+ }
274
+ }
275
+ ]
276
+ },
277
+ "__schema5": {
278
+ "type": "object",
279
+ "properties": {
280
+ "id": {
281
+ "$ref": "#/$defs/__schema1"
282
+ },
283
+ "name": {
284
+ "type": "string",
285
+ "maxLength": 256
286
+ },
287
+ "role": {
288
+ "type": "string",
289
+ "maxLength": 80
290
+ },
291
+ "type": {
292
+ "type": "string",
293
+ "enum": [
294
+ "group",
295
+ "vector",
296
+ "text",
297
+ "asset",
298
+ "generated-asset",
299
+ "procedural",
300
+ "raster",
301
+ "adjustment"
302
+ ]
303
+ },
304
+ "visible": {
305
+ "default": true,
306
+ "type": "boolean"
307
+ },
308
+ "opacity": {
309
+ "default": 1,
310
+ "$ref": "#/$defs/__schema6"
311
+ },
312
+ "blend_mode": {
313
+ "default": "normal",
314
+ "type": "string",
315
+ "enum": [
316
+ "normal",
317
+ "multiply",
318
+ "screen",
319
+ "overlay",
320
+ "darken",
321
+ "lighten",
322
+ "difference",
323
+ "soft-light",
324
+ "hard-light"
325
+ ]
326
+ },
327
+ "z": {
328
+ "default": 0,
329
+ "$ref": "#/$defs/__schema3"
330
+ },
331
+ "bounds": {
332
+ "$ref": "#/$defs/__schema7"
333
+ },
334
+ "width": {
335
+ "$ref": "#/$defs/__schema9"
336
+ },
337
+ "aspect_ratio": {
338
+ "type": "number",
339
+ "exclusiveMinimum": 0,
340
+ "maximum": 100,
341
+ "$ref": "#/$defs/__schema3"
342
+ },
343
+ "grow": {
344
+ "type": "number",
345
+ "minimum": 0,
346
+ "maximum": 100,
347
+ "$ref": "#/$defs/__schema3"
348
+ },
349
+ "height": {
350
+ "$ref": "#/$defs/__schema9"
351
+ },
352
+ "anchor": {
353
+ "default": "top-left",
354
+ "type": "string",
355
+ "enum": ["top-left", "center", "top-right", "bottom-left", "bottom-right"]
356
+ },
357
+ "affine": {
358
+ "type": "array",
359
+ "prefixItems": [
360
+ {
361
+ "$ref": "#/$defs/__schema3"
362
+ },
363
+ {
364
+ "$ref": "#/$defs/__schema3"
365
+ },
366
+ {
367
+ "$ref": "#/$defs/__schema3"
368
+ },
369
+ {
370
+ "$ref": "#/$defs/__schema3"
371
+ },
372
+ {
373
+ "$ref": "#/$defs/__schema3"
374
+ },
375
+ {
376
+ "$ref": "#/$defs/__schema3"
377
+ }
378
+ ],
379
+ "items": false,
380
+ "minItems": 6,
381
+ "maxItems": 6
382
+ },
383
+ "transform": {
384
+ "type": "object",
385
+ "properties": {
386
+ "rotation": {
387
+ "default": 0,
388
+ "$ref": "#/$defs/__schema3"
389
+ },
390
+ "scale": {
391
+ "default": [1, 1],
392
+ "type": "array",
393
+ "prefixItems": [
394
+ {
395
+ "type": "number",
396
+ "exclusiveMinimum": 0,
397
+ "maximum": 100,
398
+ "$ref": "#/$defs/__schema3"
399
+ },
400
+ {
401
+ "type": "number",
402
+ "exclusiveMinimum": 0,
403
+ "maximum": 100,
404
+ "$ref": "#/$defs/__schema3"
405
+ }
406
+ ],
407
+ "items": false,
408
+ "minItems": 2,
409
+ "maxItems": 2
410
+ }
411
+ },
412
+ "required": ["rotation", "scale"],
413
+ "additionalProperties": false
414
+ },
415
+ "layout": {
416
+ "type": "object",
417
+ "properties": {
418
+ "type": {
419
+ "default": "absolute",
420
+ "type": "string",
421
+ "enum": ["absolute", "horizontal", "vertical"]
422
+ },
423
+ "justify": {
424
+ "type": "string",
425
+ "enum": ["start", "center", "end", "space-between"]
426
+ },
427
+ "padding": {
428
+ "default": 0,
429
+ "type": "number",
430
+ "minimum": 0,
431
+ "maximum": 4096,
432
+ "$ref": "#/$defs/__schema3"
433
+ },
434
+ "gap": {
435
+ "default": 0,
436
+ "type": "number",
437
+ "minimum": 0,
438
+ "maximum": 4096,
439
+ "$ref": "#/$defs/__schema3"
440
+ },
441
+ "align": {
442
+ "default": "start",
443
+ "type": "string",
444
+ "enum": ["start", "center", "end"]
445
+ }
446
+ },
447
+ "required": ["type", "padding", "gap", "align"],
448
+ "additionalProperties": false
449
+ },
450
+ "shape": {
451
+ "oneOf": [
452
+ {
453
+ "type": "object",
454
+ "properties": {
455
+ "type": {
456
+ "type": "string",
457
+ "const": "rectangle"
458
+ },
459
+ "fill": {
460
+ "$ref": "#/$defs/__schema0"
461
+ },
462
+ "radius": {
463
+ "default": 0,
464
+ "type": "number",
465
+ "minimum": 0,
466
+ "maximum": 4096,
467
+ "$ref": "#/$defs/__schema3"
468
+ },
469
+ "stroke": {
470
+ "$ref": "#/$defs/__schema0"
471
+ },
472
+ "stroke_width": {
473
+ "default": 1,
474
+ "type": "number",
475
+ "minimum": 0,
476
+ "maximum": 256,
477
+ "$ref": "#/$defs/__schema3"
478
+ },
479
+ "line_cap": {
480
+ "$ref": "#/$defs/__schema10"
481
+ },
482
+ "line_join": {
483
+ "$ref": "#/$defs/__schema11"
484
+ },
485
+ "dash": {
486
+ "$ref": "#/$defs/__schema12"
487
+ },
488
+ "dash_offset": {
489
+ "$ref": "#/$defs/__schema14"
490
+ }
491
+ },
492
+ "required": ["type", "fill", "radius", "stroke_width"],
493
+ "additionalProperties": false
494
+ },
495
+ {
496
+ "type": "object",
497
+ "properties": {
498
+ "type": {
499
+ "type": "string",
500
+ "const": "ellipse"
501
+ },
502
+ "fill": {
503
+ "$ref": "#/$defs/__schema0"
504
+ },
505
+ "stroke": {
506
+ "$ref": "#/$defs/__schema0"
507
+ },
508
+ "stroke_width": {
509
+ "default": 1,
510
+ "type": "number",
511
+ "minimum": 0,
512
+ "maximum": 256,
513
+ "$ref": "#/$defs/__schema3"
514
+ },
515
+ "line_cap": {
516
+ "$ref": "#/$defs/__schema10"
517
+ },
518
+ "line_join": {
519
+ "$ref": "#/$defs/__schema11"
520
+ },
521
+ "dash": {
522
+ "$ref": "#/$defs/__schema12"
523
+ },
524
+ "dash_offset": {
525
+ "$ref": "#/$defs/__schema14"
526
+ }
527
+ },
528
+ "required": ["type", "fill", "stroke_width"],
529
+ "additionalProperties": false
530
+ },
531
+ {
532
+ "type": "object",
533
+ "properties": {
534
+ "type": {
535
+ "type": "string",
536
+ "const": "path"
537
+ },
538
+ "d": {
539
+ "type": "string",
540
+ "minLength": 1,
541
+ "maxLength": 100000
542
+ },
543
+ "fill": {
544
+ "$ref": "#/$defs/__schema0"
545
+ },
546
+ "stroke": {
547
+ "$ref": "#/$defs/__schema0"
548
+ },
549
+ "stroke_width": {
550
+ "default": 1,
551
+ "type": "number",
552
+ "minimum": 0,
553
+ "maximum": 256,
554
+ "$ref": "#/$defs/__schema3"
555
+ },
556
+ "line_cap": {
557
+ "$ref": "#/$defs/__schema10"
558
+ },
559
+ "line_join": {
560
+ "$ref": "#/$defs/__schema11"
561
+ },
562
+ "dash": {
563
+ "$ref": "#/$defs/__schema12"
564
+ },
565
+ "dash_offset": {
566
+ "$ref": "#/$defs/__schema14"
567
+ }
568
+ },
569
+ "required": ["type", "d", "fill", "stroke_width"],
570
+ "additionalProperties": false
571
+ }
572
+ ]
573
+ },
574
+ "content": {
575
+ "type": "string",
576
+ "maxLength": 50000
577
+ },
578
+ "runs": {
579
+ "maxItems": 256,
580
+ "type": "array",
581
+ "items": {
582
+ "$ref": "#/$defs/__schema15"
583
+ }
584
+ },
585
+ "paragraph_style": {
586
+ "$ref": "#/$defs/__schema1"
587
+ },
588
+ "crop": {
589
+ "$ref": "#/$defs/__schema7"
590
+ },
591
+ "focal_point": {
592
+ "type": "array",
593
+ "prefixItems": [
594
+ {
595
+ "$ref": "#/$defs/__schema6"
596
+ },
597
+ {
598
+ "$ref": "#/$defs/__schema6"
599
+ }
600
+ ],
601
+ "items": false,
602
+ "minItems": 2,
603
+ "maxItems": 2
604
+ },
605
+ "perspective": {
606
+ "type": "array",
607
+ "prefixItems": [
608
+ {
609
+ "$ref": "#/$defs/__schema16"
610
+ },
611
+ {
612
+ "$ref": "#/$defs/__schema16"
613
+ },
614
+ {
615
+ "$ref": "#/$defs/__schema16"
616
+ },
617
+ {
618
+ "$ref": "#/$defs/__schema16"
619
+ }
620
+ ],
621
+ "items": false,
622
+ "minItems": 4,
623
+ "maxItems": 4
624
+ },
625
+ "style": {
626
+ "$ref": "#/$defs/__schema2"
627
+ },
628
+ "source": {
629
+ "$ref": "#/$defs/__schema1"
630
+ },
631
+ "fit": {
632
+ "default": "contain",
633
+ "type": "string",
634
+ "enum": ["contain", "cover", "stretch"]
635
+ },
636
+ "generator": {
637
+ "oneOf": [
638
+ {
639
+ "type": "object",
640
+ "properties": {
641
+ "type": {
642
+ "type": "string",
643
+ "const": "solid"
644
+ },
645
+ "colour": {
646
+ "$ref": "#/$defs/__schema0"
647
+ }
648
+ },
649
+ "required": ["type", "colour"],
650
+ "additionalProperties": false
651
+ },
652
+ {
653
+ "type": "object",
654
+ "properties": {
655
+ "type": {
656
+ "type": "string",
657
+ "const": "gradient"
658
+ },
659
+ "from": {
660
+ "$ref": "#/$defs/__schema0"
661
+ },
662
+ "to": {
663
+ "$ref": "#/$defs/__schema0"
664
+ },
665
+ "angle": {
666
+ "default": 90,
667
+ "$ref": "#/$defs/__schema3"
668
+ }
669
+ },
670
+ "required": ["type", "from", "to", "angle"],
671
+ "additionalProperties": false
672
+ },
673
+ {
674
+ "type": "object",
675
+ "properties": {
676
+ "type": {
677
+ "type": "string",
678
+ "const": "noise"
679
+ },
680
+ "seed": {
681
+ "type": "integer",
682
+ "minimum": 0,
683
+ "maximum": 4294967295
684
+ },
685
+ "amount": {
686
+ "$ref": "#/$defs/__schema6"
687
+ },
688
+ "colour": {
689
+ "default": "#808080",
690
+ "$ref": "#/$defs/__schema0"
691
+ }
692
+ },
693
+ "required": ["type", "seed", "amount", "colour"],
694
+ "additionalProperties": false
695
+ }
696
+ ]
697
+ },
698
+ "mask": {
699
+ "$ref": "#/$defs/__schema17"
700
+ },
701
+ "effects": {
702
+ "default": [],
703
+ "maxItems": 16,
704
+ "type": "array",
705
+ "items": {
706
+ "$ref": "#/$defs/__schema20"
707
+ }
708
+ },
709
+ "operations": {
710
+ "default": [],
711
+ "maxItems": 1000,
712
+ "type": "array",
713
+ "items": {
714
+ "$ref": "#/$defs/__schema21"
715
+ }
716
+ },
717
+ "regions": {
718
+ "maxItems": 256,
719
+ "type": "array",
720
+ "items": {
721
+ "$ref": "#/$defs/__schema25"
722
+ }
723
+ },
724
+ "tiles": {
725
+ "default": [],
726
+ "maxItems": 4096,
727
+ "type": "array",
728
+ "items": {
729
+ "$ref": "#/$defs/__schema26"
730
+ }
731
+ },
732
+ "children": {
733
+ "default": [],
734
+ "maxItems": 256,
735
+ "type": "array",
736
+ "items": {
737
+ "$ref": "#/$defs/__schema5"
738
+ }
739
+ }
740
+ },
741
+ "required": [
742
+ "id",
743
+ "type",
744
+ "visible",
745
+ "opacity",
746
+ "blend_mode",
747
+ "z",
748
+ "anchor",
749
+ "fit",
750
+ "effects",
751
+ "operations",
752
+ "tiles",
753
+ "children"
754
+ ],
755
+ "additionalProperties": false
756
+ },
757
+ "__schema6": {
758
+ "type": "number",
759
+ "minimum": 0,
760
+ "maximum": 1,
761
+ "$ref": "#/$defs/__schema3"
762
+ },
763
+ "__schema7": {
764
+ "type": "array",
765
+ "prefixItems": [
766
+ {
767
+ "$ref": "#/$defs/__schema3"
768
+ },
769
+ {
770
+ "$ref": "#/$defs/__schema3"
771
+ },
772
+ {
773
+ "$ref": "#/$defs/__schema8"
774
+ },
775
+ {
776
+ "$ref": "#/$defs/__schema8"
777
+ }
778
+ ],
779
+ "items": false,
780
+ "minItems": 4,
781
+ "maxItems": 4
782
+ },
783
+ "__schema8": {
784
+ "type": "number",
785
+ "exclusiveMinimum": 0,
786
+ "maximum": 8192,
787
+ "$ref": "#/$defs/__schema3"
788
+ },
789
+ "__schema9": {
790
+ "anyOf": [
791
+ {
792
+ "$ref": "#/$defs/__schema8"
793
+ },
794
+ {
795
+ "type": "string",
796
+ "pattern": "^(?:100|\\d{1,2})(?:\\.\\d+)?%$"
797
+ }
798
+ ]
799
+ },
800
+ "__schema10": {
801
+ "type": "string",
802
+ "enum": ["butt", "round", "square"]
803
+ },
804
+ "__schema11": {
805
+ "type": "string",
806
+ "enum": ["miter", "round", "bevel"]
807
+ },
808
+ "__schema12": {
809
+ "maxItems": 32,
810
+ "type": "array",
811
+ "items": {
812
+ "$ref": "#/$defs/__schema13"
813
+ }
814
+ },
815
+ "__schema13": {
816
+ "type": "number",
817
+ "minimum": 0,
818
+ "maximum": 10000,
819
+ "$ref": "#/$defs/__schema3"
820
+ },
821
+ "__schema14": {
822
+ "$ref": "#/$defs/__schema3"
823
+ },
824
+ "__schema15": {
825
+ "type": "object",
826
+ "properties": {
827
+ "text": {
828
+ "type": "string"
829
+ },
830
+ "colour": {
831
+ "$ref": "#/$defs/__schema0"
832
+ },
833
+ "weight": {
834
+ "type": "string",
835
+ "enum": ["regular", "bold"]
836
+ }
837
+ },
838
+ "required": ["text"],
839
+ "additionalProperties": false
840
+ },
841
+ "__schema16": {
842
+ "type": "array",
843
+ "prefixItems": [
844
+ {
845
+ "$ref": "#/$defs/__schema3"
846
+ },
847
+ {
848
+ "$ref": "#/$defs/__schema3"
849
+ }
850
+ ],
851
+ "items": false,
852
+ "minItems": 2,
853
+ "maxItems": 2
854
+ },
855
+ "__schema17": {
856
+ "anyOf": [
857
+ {
858
+ "oneOf": [
859
+ {
860
+ "type": "object",
861
+ "properties": {
862
+ "type": {
863
+ "type": "string",
864
+ "const": "path"
865
+ },
866
+ "d": {
867
+ "type": "string",
868
+ "minLength": 1,
869
+ "maxLength": 100000
870
+ },
871
+ "space": {
872
+ "$ref": "#/$defs/__schema18"
873
+ },
874
+ "reference_size": {
875
+ "$ref": "#/$defs/__schema19"
876
+ },
877
+ "feather": {
878
+ "default": 0,
879
+ "type": "number",
880
+ "minimum": 0,
881
+ "maximum": 128,
882
+ "$ref": "#/$defs/__schema3"
883
+ },
884
+ "expand": {
885
+ "type": "number",
886
+ "minimum": -128,
887
+ "maximum": 128,
888
+ "$ref": "#/$defs/__schema3"
889
+ },
890
+ "invert": {
891
+ "type": "boolean"
892
+ }
893
+ },
894
+ "required": ["type", "d", "feather"],
895
+ "additionalProperties": false
896
+ },
897
+ {
898
+ "type": "object",
899
+ "properties": {
900
+ "type": {
901
+ "type": "string",
902
+ "const": "rectangle"
903
+ },
904
+ "bounds": {
905
+ "$ref": "#/$defs/__schema7"
906
+ },
907
+ "space": {
908
+ "$ref": "#/$defs/__schema18"
909
+ },
910
+ "reference_size": {
911
+ "$ref": "#/$defs/__schema19"
912
+ },
913
+ "expand": {
914
+ "type": "number",
915
+ "minimum": -128,
916
+ "maximum": 128,
917
+ "$ref": "#/$defs/__schema3"
918
+ },
919
+ "invert": {
920
+ "type": "boolean"
921
+ },
922
+ "feather": {
923
+ "default": 0,
924
+ "type": "number",
925
+ "minimum": 0,
926
+ "maximum": 128,
927
+ "$ref": "#/$defs/__schema3"
928
+ }
929
+ },
930
+ "required": ["type", "bounds", "feather"],
931
+ "additionalProperties": false
932
+ },
933
+ {
934
+ "type": "object",
935
+ "properties": {
936
+ "type": {
937
+ "type": "string",
938
+ "const": "ellipse"
939
+ },
940
+ "bounds": {
941
+ "$ref": "#/$defs/__schema7"
942
+ },
943
+ "space": {
944
+ "$ref": "#/$defs/__schema18"
945
+ },
946
+ "reference_size": {
947
+ "$ref": "#/$defs/__schema19"
948
+ },
949
+ "expand": {
950
+ "type": "number",
951
+ "minimum": -128,
952
+ "maximum": 128,
953
+ "$ref": "#/$defs/__schema3"
954
+ },
955
+ "invert": {
956
+ "type": "boolean"
957
+ },
958
+ "feather": {
959
+ "default": 0,
960
+ "type": "number",
961
+ "minimum": 0,
962
+ "maximum": 128,
963
+ "$ref": "#/$defs/__schema3"
964
+ }
965
+ },
966
+ "required": ["type", "bounds", "feather"],
967
+ "additionalProperties": false
968
+ },
969
+ {
970
+ "type": "object",
971
+ "properties": {
972
+ "type": {
973
+ "type": "string",
974
+ "const": "polygon"
975
+ },
976
+ "points": {
977
+ "minItems": 3,
978
+ "maxItems": 4096,
979
+ "type": "array",
980
+ "items": {
981
+ "$ref": "#/$defs/__schema16"
982
+ }
983
+ },
984
+ "space": {
985
+ "$ref": "#/$defs/__schema18"
986
+ },
987
+ "reference_size": {
988
+ "$ref": "#/$defs/__schema19"
989
+ },
990
+ "expand": {
991
+ "type": "number",
992
+ "minimum": -128,
993
+ "maximum": 128,
994
+ "$ref": "#/$defs/__schema3"
995
+ },
996
+ "invert": {
997
+ "type": "boolean"
998
+ },
999
+ "feather": {
1000
+ "default": 0,
1001
+ "type": "number",
1002
+ "minimum": 0,
1003
+ "maximum": 128,
1004
+ "$ref": "#/$defs/__schema3"
1005
+ }
1006
+ },
1007
+ "required": ["type", "points", "feather"],
1008
+ "additionalProperties": false
1009
+ },
1010
+ {
1011
+ "type": "object",
1012
+ "properties": {
1013
+ "type": {
1014
+ "type": "string",
1015
+ "const": "semantic-object"
1016
+ },
1017
+ "target": {
1018
+ "$ref": "#/$defs/__schema1"
1019
+ },
1020
+ "space": {
1021
+ "$ref": "#/$defs/__schema18"
1022
+ },
1023
+ "reference_size": {
1024
+ "$ref": "#/$defs/__schema19"
1025
+ },
1026
+ "expand": {
1027
+ "type": "number",
1028
+ "minimum": -128,
1029
+ "maximum": 128,
1030
+ "$ref": "#/$defs/__schema3"
1031
+ },
1032
+ "invert": {
1033
+ "type": "boolean"
1034
+ },
1035
+ "feather": {
1036
+ "default": 0,
1037
+ "type": "number",
1038
+ "minimum": 0,
1039
+ "maximum": 128,
1040
+ "$ref": "#/$defs/__schema3"
1041
+ }
1042
+ },
1043
+ "required": ["type", "target", "feather"],
1044
+ "additionalProperties": false
1045
+ }
1046
+ ]
1047
+ },
1048
+ {
1049
+ "type": "object",
1050
+ "properties": {
1051
+ "type": {
1052
+ "type": "string",
1053
+ "const": "combine"
1054
+ },
1055
+ "operation": {
1056
+ "type": "string",
1057
+ "enum": ["union", "intersect", "subtract", "xor"]
1058
+ },
1059
+ "masks": {
1060
+ "minItems": 2,
1061
+ "maxItems": 16,
1062
+ "type": "array",
1063
+ "items": {
1064
+ "$ref": "#/$defs/__schema17"
1065
+ }
1066
+ },
1067
+ "space": {
1068
+ "$ref": "#/$defs/__schema18"
1069
+ },
1070
+ "reference_size": {
1071
+ "$ref": "#/$defs/__schema19"
1072
+ },
1073
+ "feather": {
1074
+ "default": 0,
1075
+ "type": "number",
1076
+ "minimum": 0,
1077
+ "maximum": 128,
1078
+ "$ref": "#/$defs/__schema3"
1079
+ },
1080
+ "expand": {
1081
+ "type": "number",
1082
+ "minimum": -128,
1083
+ "maximum": 128,
1084
+ "$ref": "#/$defs/__schema3"
1085
+ },
1086
+ "invert": {
1087
+ "type": "boolean"
1088
+ }
1089
+ },
1090
+ "required": ["type", "operation", "masks", "feather"],
1091
+ "additionalProperties": false
1092
+ },
1093
+ {
1094
+ "type": "object",
1095
+ "properties": {
1096
+ "type": {
1097
+ "type": "string",
1098
+ "const": "image"
1099
+ },
1100
+ "source": {
1101
+ "$ref": "#/$defs/__schema1"
1102
+ },
1103
+ "bounds": {
1104
+ "$ref": "#/$defs/__schema7"
1105
+ },
1106
+ "channel": {
1107
+ "default": "luma",
1108
+ "type": "string",
1109
+ "enum": ["alpha", "luma", "colour"]
1110
+ },
1111
+ "colour": {
1112
+ "$ref": "#/$defs/__schema0"
1113
+ },
1114
+ "tolerance": {
1115
+ "default": 0.1,
1116
+ "$ref": "#/$defs/__schema6"
1117
+ },
1118
+ "space": {
1119
+ "$ref": "#/$defs/__schema18"
1120
+ },
1121
+ "reference_size": {
1122
+ "$ref": "#/$defs/__schema19"
1123
+ },
1124
+ "feather": {
1125
+ "default": 0,
1126
+ "type": "number",
1127
+ "minimum": 0,
1128
+ "maximum": 128,
1129
+ "$ref": "#/$defs/__schema3"
1130
+ },
1131
+ "expand": {
1132
+ "type": "number",
1133
+ "minimum": -128,
1134
+ "maximum": 128,
1135
+ "$ref": "#/$defs/__schema3"
1136
+ },
1137
+ "invert": {
1138
+ "type": "boolean"
1139
+ }
1140
+ },
1141
+ "required": ["type", "source", "bounds", "channel", "tolerance", "feather"],
1142
+ "additionalProperties": false
1143
+ }
1144
+ ]
1145
+ },
1146
+ "__schema18": {
1147
+ "type": "string",
1148
+ "enum": ["canvas", "layer"]
1149
+ },
1150
+ "__schema19": {
1151
+ "type": "array",
1152
+ "prefixItems": [
1153
+ {
1154
+ "$ref": "#/$defs/__schema8"
1155
+ },
1156
+ {
1157
+ "$ref": "#/$defs/__schema8"
1158
+ }
1159
+ ],
1160
+ "items": false,
1161
+ "minItems": 2,
1162
+ "maxItems": 2
1163
+ },
1164
+ "__schema20": {
1165
+ "oneOf": [
1166
+ {
1167
+ "type": "object",
1168
+ "properties": {
1169
+ "type": {
1170
+ "type": "string",
1171
+ "const": "blur"
1172
+ },
1173
+ "radius": {
1174
+ "type": "number",
1175
+ "minimum": 0,
1176
+ "maximum": 128,
1177
+ "$ref": "#/$defs/__schema3"
1178
+ }
1179
+ },
1180
+ "required": ["type", "radius"],
1181
+ "additionalProperties": false
1182
+ }
1183
+ ]
1184
+ },
1185
+ "__schema21": {
1186
+ "oneOf": [
1187
+ {
1188
+ "type": "object",
1189
+ "properties": {
1190
+ "type": {
1191
+ "type": "string",
1192
+ "const": "levels"
1193
+ },
1194
+ "space": {
1195
+ "$ref": "#/$defs/__schema18"
1196
+ },
1197
+ "reference_size": {
1198
+ "$ref": "#/$defs/__schema19"
1199
+ },
1200
+ "bounds": {
1201
+ "$ref": "#/$defs/__schema7"
1202
+ },
1203
+ "mask": {
1204
+ "$ref": "#/$defs/__schema22"
1205
+ },
1206
+ "black": {
1207
+ "default": 0,
1208
+ "$ref": "#/$defs/__schema6"
1209
+ },
1210
+ "white": {
1211
+ "default": 1,
1212
+ "$ref": "#/$defs/__schema6"
1213
+ },
1214
+ "gamma": {
1215
+ "default": 1,
1216
+ "type": "number",
1217
+ "minimum": 0.1,
1218
+ "maximum": 10,
1219
+ "$ref": "#/$defs/__schema3"
1220
+ }
1221
+ },
1222
+ "required": ["type", "bounds", "black", "white", "gamma"],
1223
+ "additionalProperties": false
1224
+ },
1225
+ {
1226
+ "type": "object",
1227
+ "properties": {
1228
+ "type": {
1229
+ "type": "string",
1230
+ "const": "curves"
1231
+ },
1232
+ "space": {
1233
+ "$ref": "#/$defs/__schema18"
1234
+ },
1235
+ "reference_size": {
1236
+ "$ref": "#/$defs/__schema19"
1237
+ },
1238
+ "bounds": {
1239
+ "$ref": "#/$defs/__schema7"
1240
+ },
1241
+ "mask": {
1242
+ "$ref": "#/$defs/__schema22"
1243
+ },
1244
+ "channel": {
1245
+ "default": "rgb",
1246
+ "type": "string",
1247
+ "enum": ["rgb", "r", "g", "b"]
1248
+ },
1249
+ "points": {
1250
+ "minItems": 2,
1251
+ "maxItems": 32,
1252
+ "type": "array",
1253
+ "items": {
1254
+ "$ref": "#/$defs/__schema23"
1255
+ }
1256
+ }
1257
+ },
1258
+ "required": ["type", "bounds", "channel", "points"],
1259
+ "additionalProperties": false
1260
+ },
1261
+ {
1262
+ "type": "object",
1263
+ "properties": {
1264
+ "type": {
1265
+ "type": "string",
1266
+ "const": "whiteBalance"
1267
+ },
1268
+ "space": {
1269
+ "$ref": "#/$defs/__schema18"
1270
+ },
1271
+ "reference_size": {
1272
+ "$ref": "#/$defs/__schema19"
1273
+ },
1274
+ "bounds": {
1275
+ "$ref": "#/$defs/__schema7"
1276
+ },
1277
+ "mask": {
1278
+ "$ref": "#/$defs/__schema22"
1279
+ },
1280
+ "temperature": {
1281
+ "type": "number",
1282
+ "minimum": -1,
1283
+ "maximum": 1,
1284
+ "$ref": "#/$defs/__schema3"
1285
+ },
1286
+ "tint": {
1287
+ "default": 0,
1288
+ "type": "number",
1289
+ "minimum": -1,
1290
+ "maximum": 1,
1291
+ "$ref": "#/$defs/__schema3"
1292
+ }
1293
+ },
1294
+ "required": ["type", "bounds", "temperature", "tint"],
1295
+ "additionalProperties": false
1296
+ },
1297
+ {
1298
+ "type": "object",
1299
+ "properties": {
1300
+ "type": {
1301
+ "type": "string",
1302
+ "const": "clone"
1303
+ },
1304
+ "space": {
1305
+ "$ref": "#/$defs/__schema18"
1306
+ },
1307
+ "reference_size": {
1308
+ "$ref": "#/$defs/__schema19"
1309
+ },
1310
+ "bounds": {
1311
+ "$ref": "#/$defs/__schema7"
1312
+ },
1313
+ "mask": {
1314
+ "$ref": "#/$defs/__schema22"
1315
+ },
1316
+ "source_offset": {
1317
+ "$ref": "#/$defs/__schema16"
1318
+ },
1319
+ "opacity": {
1320
+ "default": 1,
1321
+ "$ref": "#/$defs/__schema6"
1322
+ }
1323
+ },
1324
+ "required": ["type", "bounds", "source_offset", "opacity"],
1325
+ "additionalProperties": false
1326
+ },
1327
+ {
1328
+ "type": "object",
1329
+ "properties": {
1330
+ "type": {
1331
+ "type": "string",
1332
+ "const": "heal"
1333
+ },
1334
+ "space": {
1335
+ "$ref": "#/$defs/__schema18"
1336
+ },
1337
+ "reference_size": {
1338
+ "$ref": "#/$defs/__schema19"
1339
+ },
1340
+ "bounds": {
1341
+ "$ref": "#/$defs/__schema7"
1342
+ },
1343
+ "mask": {
1344
+ "$ref": "#/$defs/__schema22"
1345
+ },
1346
+ "source_offset": {
1347
+ "$ref": "#/$defs/__schema16"
1348
+ },
1349
+ "opacity": {
1350
+ "default": 1,
1351
+ "$ref": "#/$defs/__schema6"
1352
+ }
1353
+ },
1354
+ "required": ["type", "bounds", "source_offset", "opacity"],
1355
+ "additionalProperties": false
1356
+ },
1357
+ {
1358
+ "type": "object",
1359
+ "properties": {
1360
+ "type": {
1361
+ "type": "string",
1362
+ "const": "fill"
1363
+ },
1364
+ "space": {
1365
+ "$ref": "#/$defs/__schema18"
1366
+ },
1367
+ "reference_size": {
1368
+ "$ref": "#/$defs/__schema19"
1369
+ },
1370
+ "bounds": {
1371
+ "$ref": "#/$defs/__schema7"
1372
+ },
1373
+ "mask": {
1374
+ "$ref": "#/$defs/__schema22"
1375
+ },
1376
+ "colour": {
1377
+ "$ref": "#/$defs/__schema0"
1378
+ }
1379
+ },
1380
+ "required": ["type", "bounds", "colour"],
1381
+ "additionalProperties": false
1382
+ },
1383
+ {
1384
+ "type": "object",
1385
+ "properties": {
1386
+ "type": {
1387
+ "type": "string",
1388
+ "const": "paintStroke"
1389
+ },
1390
+ "space": {
1391
+ "$ref": "#/$defs/__schema18"
1392
+ },
1393
+ "reference_size": {
1394
+ "$ref": "#/$defs/__schema19"
1395
+ },
1396
+ "bounds": {
1397
+ "$ref": "#/$defs/__schema7"
1398
+ },
1399
+ "mask": {
1400
+ "$ref": "#/$defs/__schema22"
1401
+ },
1402
+ "path": {
1403
+ "minItems": 1,
1404
+ "maxItems": 4096,
1405
+ "type": "array",
1406
+ "items": {
1407
+ "$ref": "#/$defs/__schema16"
1408
+ }
1409
+ },
1410
+ "radius": {
1411
+ "type": "number",
1412
+ "exclusiveMinimum": 0,
1413
+ "maximum": 256,
1414
+ "$ref": "#/$defs/__schema3"
1415
+ },
1416
+ "hardness": {
1417
+ "default": 1,
1418
+ "$ref": "#/$defs/__schema6"
1419
+ },
1420
+ "colour": {
1421
+ "$ref": "#/$defs/__schema0"
1422
+ },
1423
+ "opacity": {
1424
+ "default": 1,
1425
+ "$ref": "#/$defs/__schema6"
1426
+ }
1427
+ },
1428
+ "required": ["type", "bounds", "path", "radius", "hardness", "colour", "opacity"],
1429
+ "additionalProperties": false
1430
+ },
1431
+ {
1432
+ "type": "object",
1433
+ "properties": {
1434
+ "type": {
1435
+ "type": "string",
1436
+ "const": "eraseStroke"
1437
+ },
1438
+ "space": {
1439
+ "$ref": "#/$defs/__schema18"
1440
+ },
1441
+ "reference_size": {
1442
+ "$ref": "#/$defs/__schema19"
1443
+ },
1444
+ "bounds": {
1445
+ "$ref": "#/$defs/__schema7"
1446
+ },
1447
+ "mask": {
1448
+ "$ref": "#/$defs/__schema22"
1449
+ },
1450
+ "path": {
1451
+ "minItems": 1,
1452
+ "maxItems": 4096,
1453
+ "type": "array",
1454
+ "items": {
1455
+ "$ref": "#/$defs/__schema16"
1456
+ }
1457
+ },
1458
+ "radius": {
1459
+ "type": "number",
1460
+ "exclusiveMinimum": 0,
1461
+ "maximum": 256,
1462
+ "$ref": "#/$defs/__schema3"
1463
+ },
1464
+ "hardness": {
1465
+ "default": 1,
1466
+ "$ref": "#/$defs/__schema6"
1467
+ },
1468
+ "opacity": {
1469
+ "default": 1,
1470
+ "$ref": "#/$defs/__schema6"
1471
+ }
1472
+ },
1473
+ "required": ["type", "bounds", "path", "radius", "hardness", "opacity"],
1474
+ "additionalProperties": false
1475
+ },
1476
+ {
1477
+ "type": "object",
1478
+ "properties": {
1479
+ "type": {
1480
+ "type": "string",
1481
+ "const": "brightness"
1482
+ },
1483
+ "space": {
1484
+ "$ref": "#/$defs/__schema18"
1485
+ },
1486
+ "reference_size": {
1487
+ "$ref": "#/$defs/__schema19"
1488
+ },
1489
+ "bounds": {
1490
+ "$ref": "#/$defs/__schema7"
1491
+ },
1492
+ "mask": {
1493
+ "$ref": "#/$defs/__schema22"
1494
+ },
1495
+ "amount": {
1496
+ "type": "number",
1497
+ "minimum": -1,
1498
+ "maximum": 1,
1499
+ "$ref": "#/$defs/__schema3"
1500
+ }
1501
+ },
1502
+ "required": ["type", "bounds", "amount"],
1503
+ "additionalProperties": false
1504
+ },
1505
+ {
1506
+ "type": "object",
1507
+ "properties": {
1508
+ "type": {
1509
+ "type": "string",
1510
+ "const": "contrast"
1511
+ },
1512
+ "space": {
1513
+ "$ref": "#/$defs/__schema18"
1514
+ },
1515
+ "reference_size": {
1516
+ "$ref": "#/$defs/__schema19"
1517
+ },
1518
+ "bounds": {
1519
+ "$ref": "#/$defs/__schema7"
1520
+ },
1521
+ "mask": {
1522
+ "$ref": "#/$defs/__schema22"
1523
+ },
1524
+ "amount": {
1525
+ "type": "number",
1526
+ "minimum": -1,
1527
+ "maximum": 1,
1528
+ "$ref": "#/$defs/__schema3"
1529
+ }
1530
+ },
1531
+ "required": ["type", "bounds", "amount"],
1532
+ "additionalProperties": false
1533
+ },
1534
+ {
1535
+ "type": "object",
1536
+ "properties": {
1537
+ "type": {
1538
+ "type": "string",
1539
+ "const": "saturation"
1540
+ },
1541
+ "space": {
1542
+ "$ref": "#/$defs/__schema18"
1543
+ },
1544
+ "reference_size": {
1545
+ "$ref": "#/$defs/__schema19"
1546
+ },
1547
+ "bounds": {
1548
+ "$ref": "#/$defs/__schema7"
1549
+ },
1550
+ "mask": {
1551
+ "$ref": "#/$defs/__schema22"
1552
+ },
1553
+ "amount": {
1554
+ "type": "number",
1555
+ "minimum": -1,
1556
+ "maximum": 1,
1557
+ "$ref": "#/$defs/__schema3"
1558
+ }
1559
+ },
1560
+ "required": ["type", "bounds", "amount"],
1561
+ "additionalProperties": false
1562
+ },
1563
+ {
1564
+ "type": "object",
1565
+ "properties": {
1566
+ "type": {
1567
+ "type": "string",
1568
+ "const": "hueShift"
1569
+ },
1570
+ "space": {
1571
+ "$ref": "#/$defs/__schema18"
1572
+ },
1573
+ "reference_size": {
1574
+ "$ref": "#/$defs/__schema19"
1575
+ },
1576
+ "bounds": {
1577
+ "$ref": "#/$defs/__schema7"
1578
+ },
1579
+ "mask": {
1580
+ "$ref": "#/$defs/__schema22"
1581
+ },
1582
+ "degrees": {
1583
+ "type": "number",
1584
+ "minimum": -360,
1585
+ "maximum": 360,
1586
+ "$ref": "#/$defs/__schema3"
1587
+ }
1588
+ },
1589
+ "required": ["type", "bounds", "degrees"],
1590
+ "additionalProperties": false
1591
+ },
1592
+ {
1593
+ "type": "object",
1594
+ "properties": {
1595
+ "type": {
1596
+ "type": "string",
1597
+ "const": "noise"
1598
+ },
1599
+ "space": {
1600
+ "$ref": "#/$defs/__schema18"
1601
+ },
1602
+ "reference_size": {
1603
+ "$ref": "#/$defs/__schema19"
1604
+ },
1605
+ "bounds": {
1606
+ "$ref": "#/$defs/__schema7"
1607
+ },
1608
+ "mask": {
1609
+ "$ref": "#/$defs/__schema22"
1610
+ },
1611
+ "amount": {
1612
+ "$ref": "#/$defs/__schema6"
1613
+ },
1614
+ "seed": {
1615
+ "type": "integer",
1616
+ "minimum": 0,
1617
+ "maximum": 4294967295
1618
+ }
1619
+ },
1620
+ "required": ["type", "bounds", "amount", "seed"],
1621
+ "additionalProperties": false
1622
+ },
1623
+ {
1624
+ "type": "object",
1625
+ "properties": {
1626
+ "type": {
1627
+ "type": "string",
1628
+ "const": "blur"
1629
+ },
1630
+ "space": {
1631
+ "$ref": "#/$defs/__schema18"
1632
+ },
1633
+ "reference_size": {
1634
+ "$ref": "#/$defs/__schema19"
1635
+ },
1636
+ "bounds": {
1637
+ "$ref": "#/$defs/__schema7"
1638
+ },
1639
+ "mask": {
1640
+ "$ref": "#/$defs/__schema22"
1641
+ },
1642
+ "radius": {
1643
+ "type": "number",
1644
+ "minimum": 0,
1645
+ "maximum": 128,
1646
+ "$ref": "#/$defs/__schema3"
1647
+ }
1648
+ },
1649
+ "required": ["type", "bounds", "radius"],
1650
+ "additionalProperties": false
1651
+ },
1652
+ {
1653
+ "type": "object",
1654
+ "properties": {
1655
+ "type": {
1656
+ "type": "string",
1657
+ "const": "colourReplace"
1658
+ },
1659
+ "space": {
1660
+ "$ref": "#/$defs/__schema18"
1661
+ },
1662
+ "reference_size": {
1663
+ "$ref": "#/$defs/__schema19"
1664
+ },
1665
+ "bounds": {
1666
+ "$ref": "#/$defs/__schema7"
1667
+ },
1668
+ "mask": {
1669
+ "$ref": "#/$defs/__schema22"
1670
+ },
1671
+ "from": {
1672
+ "$ref": "#/$defs/__schema0"
1673
+ },
1674
+ "to": {
1675
+ "$ref": "#/$defs/__schema0"
1676
+ },
1677
+ "tolerance": {
1678
+ "default": 0,
1679
+ "$ref": "#/$defs/__schema6"
1680
+ }
1681
+ },
1682
+ "required": ["type", "bounds", "from", "to", "tolerance"],
1683
+ "additionalProperties": false
1684
+ },
1685
+ {
1686
+ "type": "object",
1687
+ "properties": {
1688
+ "type": {
1689
+ "type": "string",
1690
+ "const": "setPixels"
1691
+ },
1692
+ "space": {
1693
+ "$ref": "#/$defs/__schema18"
1694
+ },
1695
+ "reference_size": {
1696
+ "$ref": "#/$defs/__schema19"
1697
+ },
1698
+ "bounds": {
1699
+ "$ref": "#/$defs/__schema7"
1700
+ },
1701
+ "mask": {
1702
+ "$ref": "#/$defs/__schema22"
1703
+ },
1704
+ "pixels": {
1705
+ "maxItems": 4096,
1706
+ "type": "array",
1707
+ "items": {
1708
+ "$ref": "#/$defs/__schema24"
1709
+ }
1710
+ }
1711
+ },
1712
+ "required": ["type", "bounds", "pixels"],
1713
+ "additionalProperties": false
1714
+ }
1715
+ ]
1716
+ },
1717
+ "__schema22": {
1718
+ "$ref": "#/$defs/__schema17"
1719
+ },
1720
+ "__schema23": {
1721
+ "type": "array",
1722
+ "prefixItems": [
1723
+ {
1724
+ "$ref": "#/$defs/__schema6"
1725
+ },
1726
+ {
1727
+ "$ref": "#/$defs/__schema6"
1728
+ }
1729
+ ],
1730
+ "items": false,
1731
+ "minItems": 2,
1732
+ "maxItems": 2
1733
+ },
1734
+ "__schema24": {
1735
+ "type": "object",
1736
+ "properties": {
1737
+ "x": {
1738
+ "type": "integer",
1739
+ "minimum": -9007199254740991,
1740
+ "maximum": 9007199254740991
1741
+ },
1742
+ "y": {
1743
+ "type": "integer",
1744
+ "minimum": -9007199254740991,
1745
+ "maximum": 9007199254740991
1746
+ },
1747
+ "colour": {
1748
+ "$ref": "#/$defs/__schema0"
1749
+ }
1750
+ },
1751
+ "required": ["x", "y", "colour"],
1752
+ "additionalProperties": false
1753
+ },
1754
+ "__schema25": {
1755
+ "type": "object",
1756
+ "properties": {
1757
+ "id": {
1758
+ "$ref": "#/$defs/__schema1"
1759
+ },
1760
+ "space": {
1761
+ "$ref": "#/$defs/__schema18"
1762
+ },
1763
+ "reference_size": {
1764
+ "$ref": "#/$defs/__schema19"
1765
+ },
1766
+ "bounds": {
1767
+ "$ref": "#/$defs/__schema7"
1768
+ },
1769
+ "scale": {
1770
+ "default": 2,
1771
+ "type": "integer",
1772
+ "minimum": 1,
1773
+ "maximum": 4
1774
+ },
1775
+ "source": {
1776
+ "$ref": "#/$defs/__schema1"
1777
+ },
1778
+ "composite": {
1779
+ "type": "string",
1780
+ "enum": ["replace", "over"]
1781
+ },
1782
+ "operations": {
1783
+ "default": [],
1784
+ "maxItems": 256,
1785
+ "type": "array",
1786
+ "items": {
1787
+ "$ref": "#/$defs/__schema21"
1788
+ }
1789
+ }
1790
+ },
1791
+ "required": ["id", "bounds", "scale", "operations"],
1792
+ "additionalProperties": false
1793
+ },
1794
+ "__schema26": {
1795
+ "type": "object",
1796
+ "properties": {
1797
+ "space": {
1798
+ "$ref": "#/$defs/__schema18"
1799
+ },
1800
+ "reference_size": {
1801
+ "$ref": "#/$defs/__schema19"
1802
+ },
1803
+ "bounds": {
1804
+ "$ref": "#/$defs/__schema7"
1805
+ },
1806
+ "palette": {
1807
+ "$ref": "#/$defs/__schema27"
1808
+ },
1809
+ "pixels": {
1810
+ "$ref": "#/$defs/__schema28"
1811
+ }
1812
+ },
1813
+ "required": ["bounds", "palette", "pixels"],
1814
+ "additionalProperties": false
1815
+ },
1816
+ "__schema27": {
1817
+ "type": "object",
1818
+ "propertyNames": {
1819
+ "type": "string",
1820
+ "minLength": 1,
1821
+ "maxLength": 1
1822
+ },
1823
+ "additionalProperties": {
1824
+ "$ref": "#/$defs/__schema0"
1825
+ }
1826
+ },
1827
+ "__schema28": {
1828
+ "minItems": 1,
1829
+ "maxItems": 256,
1830
+ "type": "array",
1831
+ "items": {
1832
+ "$ref": "#/$defs/__schema29"
1833
+ }
1834
+ },
1835
+ "__schema29": {
1836
+ "type": "string",
1837
+ "minLength": 1,
1838
+ "maxLength": 256
1839
+ },
1840
+ "__schema30": {
1841
+ "oneOf": [
1842
+ {
1843
+ "type": "object",
1844
+ "properties": {
1845
+ "type": {
1846
+ "type": "string",
1847
+ "const": "pixel-contrast"
1848
+ },
1849
+ "target": {
1850
+ "$ref": "#/$defs/__schema1"
1851
+ },
1852
+ "minimum": {
1853
+ "default": 4.5,
1854
+ "type": "number",
1855
+ "minimum": 1,
1856
+ "maximum": 21,
1857
+ "$ref": "#/$defs/__schema3"
1858
+ },
1859
+ "percentile": {
1860
+ "default": 0.1,
1861
+ "$ref": "#/$defs/__schema6"
1862
+ }
1863
+ },
1864
+ "required": ["type", "target", "minimum", "percentile"],
1865
+ "additionalProperties": false
1866
+ },
1867
+ {
1868
+ "type": "object",
1869
+ "properties": {
1870
+ "type": {
1871
+ "type": "string",
1872
+ "const": "visible-area"
1873
+ },
1874
+ "target": {
1875
+ "$ref": "#/$defs/__schema1"
1876
+ },
1877
+ "minimum": {
1878
+ "default": 0.5,
1879
+ "$ref": "#/$defs/__schema6"
1880
+ }
1881
+ },
1882
+ "required": ["type", "target", "minimum"],
1883
+ "additionalProperties": false
1884
+ },
1885
+ {
1886
+ "type": "object",
1887
+ "properties": {
1888
+ "type": {
1889
+ "type": "string",
1890
+ "const": "region-luma"
1891
+ },
1892
+ "bounds": {
1893
+ "$ref": "#/$defs/__schema7"
1894
+ },
1895
+ "minimum": {
1896
+ "default": 0,
1897
+ "$ref": "#/$defs/__schema6"
1898
+ },
1899
+ "maximum": {
1900
+ "default": 1,
1901
+ "$ref": "#/$defs/__schema6"
1902
+ }
1903
+ },
1904
+ "required": ["type", "bounds", "minimum", "maximum"],
1905
+ "additionalProperties": false
1906
+ },
1907
+ {
1908
+ "type": "object",
1909
+ "properties": {
1910
+ "type": {
1911
+ "type": "string",
1912
+ "const": "safe-area"
1913
+ },
1914
+ "target": {
1915
+ "$ref": "#/$defs/__schema1"
1916
+ },
1917
+ "minimum": {
1918
+ "minimum": 0,
1919
+ "$ref": "#/$defs/__schema3"
1920
+ }
1921
+ },
1922
+ "required": ["type", "target", "minimum"],
1923
+ "additionalProperties": false
1924
+ },
1925
+ {
1926
+ "type": "object",
1927
+ "properties": {
1928
+ "type": {
1929
+ "type": "string",
1930
+ "const": "text-overflow"
1931
+ },
1932
+ "target": {
1933
+ "$ref": "#/$defs/__schema1"
1934
+ }
1935
+ },
1936
+ "required": ["type", "target"],
1937
+ "additionalProperties": false
1938
+ },
1939
+ {
1940
+ "type": "object",
1941
+ "properties": {
1942
+ "type": {
1943
+ "type": "string",
1944
+ "const": "text-equals"
1945
+ },
1946
+ "target": {
1947
+ "$ref": "#/$defs/__schema1"
1948
+ },
1949
+ "expected": {
1950
+ "type": "string"
1951
+ }
1952
+ },
1953
+ "required": ["type", "target", "expected"],
1954
+ "additionalProperties": false
1955
+ },
1956
+ {
1957
+ "type": "object",
1958
+ "properties": {
1959
+ "type": {
1960
+ "type": "string",
1961
+ "const": "required-role"
1962
+ },
1963
+ "role": {
1964
+ "type": "string"
1965
+ }
1966
+ },
1967
+ "required": ["type", "role"],
1968
+ "additionalProperties": false
1969
+ },
1970
+ {
1971
+ "type": "object",
1972
+ "properties": {
1973
+ "type": {
1974
+ "type": "string",
1975
+ "const": "contrast"
1976
+ },
1977
+ "target": {
1978
+ "$ref": "#/$defs/__schema1"
1979
+ },
1980
+ "against": {
1981
+ "$ref": "#/$defs/__schema0"
1982
+ },
1983
+ "minimum": {
1984
+ "default": 4.5,
1985
+ "type": "number",
1986
+ "minimum": 1,
1987
+ "maximum": 21,
1988
+ "$ref": "#/$defs/__schema3"
1989
+ }
1990
+ },
1991
+ "required": ["type", "target", "against", "minimum"],
1992
+ "additionalProperties": false
1993
+ },
1994
+ {
1995
+ "type": "object",
1996
+ "properties": {
1997
+ "type": {
1998
+ "type": "string",
1999
+ "const": "no-overlap"
2000
+ },
2001
+ "target": {
2002
+ "$ref": "#/$defs/__schema1"
2003
+ },
2004
+ "other": {
2005
+ "$ref": "#/$defs/__schema1"
2006
+ }
2007
+ },
2008
+ "required": ["type", "target", "other"],
2009
+ "additionalProperties": false
2010
+ }
2011
+ ]
2012
+ }
2013
+ }
2014
+ }