@atlaskit/adf-schema 36.10.0 → 36.10.1

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 (79) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/next-schema/marks/alignmentAndIndentation.js +1 -1
  3. package/dist/cjs/next-schema/marks/backgroundColor.js +8 -1
  4. package/dist/cjs/next-schema/marks/border.js +1 -0
  5. package/dist/cjs/next-schema/marks/dataConsumer.js +1 -2
  6. package/dist/cjs/next-schema/marks/fragment.js +1 -0
  7. package/dist/cjs/next-schema/marks/link.js +1 -1
  8. package/dist/cjs/next-schema/marks/textColor.js +2 -1
  9. package/dist/cjs/next-schema/nodes/blockCard.js +47 -21
  10. package/dist/cjs/next-schema/nodes/bodiedExtension.js +4 -1
  11. package/dist/cjs/next-schema/nodes/codeBlock.js +0 -4
  12. package/dist/cjs/next-schema/nodes/date.js +1 -0
  13. package/dist/cjs/next-schema/nodes/embedCard.js +3 -1
  14. package/dist/cjs/next-schema/nodes/extension.js +4 -1
  15. package/dist/cjs/next-schema/nodes/hardBreak.js +2 -1
  16. package/dist/cjs/next-schema/nodes/inlineCard.js +13 -10
  17. package/dist/cjs/next-schema/nodes/inlineExtension.js +3 -0
  18. package/dist/cjs/next-schema/nodes/media.js +98 -73
  19. package/dist/cjs/next-schema/nodes/mediaInline.js +6 -1
  20. package/dist/cjs/next-schema/nodes/mediaSingle.js +37 -18
  21. package/dist/cjs/next-schema/nodes/mention.js +3 -0
  22. package/dist/cjs/next-schema/nodes/panel.js +1 -1
  23. package/dist/cjs/next-schema/nodes/status.js +1 -0
  24. package/dist/cjs/next-schema/nodes/table.js +6 -1
  25. package/dist/cjs/next-schema/nodes/tableCell.js +1 -1
  26. package/dist/cjs/next-schema/nodes/tableHeader.js +1 -1
  27. package/dist/es2019/next-schema/marks/alignmentAndIndentation.js +1 -1
  28. package/dist/es2019/next-schema/marks/backgroundColor.js +8 -1
  29. package/dist/es2019/next-schema/marks/border.js +1 -0
  30. package/dist/es2019/next-schema/marks/dataConsumer.js +1 -2
  31. package/dist/es2019/next-schema/marks/fragment.js +1 -0
  32. package/dist/es2019/next-schema/marks/link.js +1 -1
  33. package/dist/es2019/next-schema/marks/textColor.js +2 -1
  34. package/dist/es2019/next-schema/nodes/blockCard.js +47 -21
  35. package/dist/es2019/next-schema/nodes/bodiedExtension.js +4 -1
  36. package/dist/es2019/next-schema/nodes/codeBlock.js +0 -4
  37. package/dist/es2019/next-schema/nodes/date.js +1 -0
  38. package/dist/es2019/next-schema/nodes/embedCard.js +3 -1
  39. package/dist/es2019/next-schema/nodes/extension.js +4 -1
  40. package/dist/es2019/next-schema/nodes/hardBreak.js +2 -1
  41. package/dist/es2019/next-schema/nodes/inlineCard.js +13 -10
  42. package/dist/es2019/next-schema/nodes/inlineExtension.js +3 -0
  43. package/dist/es2019/next-schema/nodes/media.js +98 -73
  44. package/dist/es2019/next-schema/nodes/mediaInline.js +6 -1
  45. package/dist/es2019/next-schema/nodes/mediaSingle.js +37 -18
  46. package/dist/es2019/next-schema/nodes/mention.js +3 -0
  47. package/dist/es2019/next-schema/nodes/panel.js +1 -1
  48. package/dist/es2019/next-schema/nodes/status.js +1 -0
  49. package/dist/es2019/next-schema/nodes/table.js +6 -1
  50. package/dist/es2019/next-schema/nodes/tableCell.js +1 -1
  51. package/dist/es2019/next-schema/nodes/tableHeader.js +1 -1
  52. package/dist/esm/next-schema/marks/alignmentAndIndentation.js +1 -1
  53. package/dist/esm/next-schema/marks/backgroundColor.js +8 -1
  54. package/dist/esm/next-schema/marks/border.js +1 -0
  55. package/dist/esm/next-schema/marks/dataConsumer.js +1 -2
  56. package/dist/esm/next-schema/marks/fragment.js +1 -0
  57. package/dist/esm/next-schema/marks/link.js +1 -1
  58. package/dist/esm/next-schema/marks/textColor.js +2 -1
  59. package/dist/esm/next-schema/nodes/blockCard.js +47 -21
  60. package/dist/esm/next-schema/nodes/bodiedExtension.js +4 -1
  61. package/dist/esm/next-schema/nodes/codeBlock.js +0 -4
  62. package/dist/esm/next-schema/nodes/date.js +1 -0
  63. package/dist/esm/next-schema/nodes/embedCard.js +3 -1
  64. package/dist/esm/next-schema/nodes/extension.js +4 -1
  65. package/dist/esm/next-schema/nodes/hardBreak.js +2 -1
  66. package/dist/esm/next-schema/nodes/inlineCard.js +13 -10
  67. package/dist/esm/next-schema/nodes/inlineExtension.js +3 -0
  68. package/dist/esm/next-schema/nodes/media.js +98 -73
  69. package/dist/esm/next-schema/nodes/mediaInline.js +6 -1
  70. package/dist/esm/next-schema/nodes/mediaSingle.js +37 -18
  71. package/dist/esm/next-schema/nodes/mention.js +3 -0
  72. package/dist/esm/next-schema/nodes/panel.js +1 -1
  73. package/dist/esm/next-schema/nodes/status.js +1 -0
  74. package/dist/esm/next-schema/nodes/table.js +6 -1
  75. package/dist/esm/next-schema/nodes/tableCell.js +1 -1
  76. package/dist/esm/next-schema/nodes/tableHeader.js +1 -1
  77. package/package.json +2 -2
  78. package/schema-generators/__tests__/unit/jqueries.md +22 -0
  79. package/schema-generators/__tests__/unit/json-full-schema.unit.ts +698 -0
@@ -18,6 +18,10 @@ const jsonWithTypes = {
18
18
  type: {
19
19
  enum: ['text'],
20
20
  },
21
+ text: {
22
+ type: 'string',
23
+ minLength: 1,
24
+ },
21
25
  },
22
26
  },
23
27
  breakout_mark: {
@@ -26,6 +30,14 @@ const jsonWithTypes = {
26
30
  type: {
27
31
  enum: ['breakout'],
28
32
  },
33
+ attrs: {
34
+ type: 'object',
35
+ properties: {
36
+ mode: {
37
+ enum: ['wide', 'full-width'],
38
+ },
39
+ },
40
+ },
29
41
  },
30
42
  },
31
43
  codeBlock_node: {
@@ -34,6 +46,14 @@ const jsonWithTypes = {
34
46
  type: {
35
47
  enum: ['codeBlock'],
36
48
  },
49
+ attrs: {
50
+ type: 'object',
51
+ properties: {
52
+ language: {
53
+ type: 'string',
54
+ },
55
+ },
56
+ },
37
57
  },
38
58
  },
39
59
  codeBlock_with_no_marks_node: {},
@@ -84,6 +104,26 @@ const jsonWithTypes = {
84
104
  type: {
85
105
  enum: ['link'],
86
106
  },
107
+ attrs: {
108
+ type: 'object',
109
+ properties: {
110
+ href: {
111
+ type: 'string',
112
+ },
113
+ title: {
114
+ type: 'string',
115
+ },
116
+ id: {
117
+ type: 'string',
118
+ },
119
+ collection: {
120
+ type: 'string',
121
+ },
122
+ occurrenceKey: {
123
+ type: 'string',
124
+ },
125
+ },
126
+ },
87
127
  },
88
128
  },
89
129
  subsup_mark: {
@@ -92,6 +132,14 @@ const jsonWithTypes = {
92
132
  type: {
93
133
  enum: ['subsup'],
94
134
  },
135
+ attrs: {
136
+ type: 'object',
137
+ properties: {
138
+ type: {
139
+ enum: ['sub', 'sup'],
140
+ },
141
+ },
142
+ },
95
143
  },
96
144
  },
97
145
  textColor_mark: {
@@ -100,6 +148,15 @@ const jsonWithTypes = {
100
148
  type: {
101
149
  enum: ['textColor'],
102
150
  },
151
+ attrs: {
152
+ type: 'object',
153
+ properties: {
154
+ color: {
155
+ type: 'string',
156
+ pattern: '^#[0-9a-fA-F]{6}$',
157
+ },
158
+ },
159
+ },
103
160
  },
104
161
  },
105
162
  alignment_mark: {
@@ -108,6 +165,14 @@ const jsonWithTypes = {
108
165
  type: {
109
166
  enum: ['alignment'],
110
167
  },
168
+ attrs: {
169
+ type: 'object',
170
+ properties: {
171
+ align: {
172
+ enum: ['center', 'end'],
173
+ },
174
+ },
175
+ },
111
176
  },
112
177
  },
113
178
  indentation_mark: {
@@ -116,6 +181,16 @@ const jsonWithTypes = {
116
181
  type: {
117
182
  enum: ['indentation'],
118
183
  },
184
+ attrs: {
185
+ type: 'object',
186
+ properties: {
187
+ level: {
188
+ type: 'number',
189
+ minimum: 1,
190
+ maximum: 6,
191
+ },
192
+ },
193
+ },
119
194
  },
120
195
  },
121
196
  annotation_mark: {
@@ -124,6 +199,17 @@ const jsonWithTypes = {
124
199
  type: {
125
200
  enum: ['annotation'],
126
201
  },
202
+ attrs: {
203
+ type: 'object',
204
+ properties: {
205
+ id: {
206
+ type: 'string',
207
+ },
208
+ annotationType: {
209
+ enum: ['inlineComment'],
210
+ },
211
+ },
212
+ },
127
213
  },
128
214
  },
129
215
  dataConsumer_mark: {
@@ -132,6 +218,17 @@ const jsonWithTypes = {
132
218
  type: {
133
219
  enum: ['dataConsumer'],
134
220
  },
221
+ attrs: {
222
+ type: 'object',
223
+ properties: {
224
+ sources: {
225
+ type: 'array',
226
+ items: {
227
+ type: 'string',
228
+ },
229
+ },
230
+ },
231
+ },
135
232
  },
136
233
  },
137
234
  fragment_mark: {
@@ -140,6 +237,18 @@ const jsonWithTypes = {
140
237
  type: {
141
238
  enum: ['fragment'],
142
239
  },
240
+ attrs: {
241
+ type: 'object',
242
+ properties: {
243
+ localId: {
244
+ type: 'string',
245
+ minLength: 1,
246
+ },
247
+ name: {
248
+ type: 'string',
249
+ },
250
+ },
251
+ },
143
252
  },
144
253
  },
145
254
  border_mark: {
@@ -148,6 +257,20 @@ const jsonWithTypes = {
148
257
  type: {
149
258
  enum: ['border'],
150
259
  },
260
+ attrs: {
261
+ type: 'object',
262
+ properties: {
263
+ size: {
264
+ type: 'number',
265
+ minimum: 1,
266
+ maximum: 3,
267
+ },
268
+ color: {
269
+ type: 'string',
270
+ pattern: '^#[0-9a-fA-F]{8}$|^#[0-9a-fA-F]{6}$',
271
+ },
272
+ },
273
+ },
151
274
  },
152
275
  },
153
276
  backgroundColor_mark: {
@@ -156,6 +279,15 @@ const jsonWithTypes = {
156
279
  type: {
157
280
  enum: ['backgroundColor'],
158
281
  },
282
+ attrs: {
283
+ type: 'object',
284
+ properties: {
285
+ color: {
286
+ type: 'string',
287
+ pattern: '^#[0-9a-fA-F]{6}$',
288
+ },
289
+ },
290
+ },
159
291
  },
160
292
  },
161
293
  hardBreak_node: {
@@ -164,6 +296,14 @@ const jsonWithTypes = {
164
296
  type: {
165
297
  enum: ['hardBreak'],
166
298
  },
299
+ attrs: {
300
+ type: 'object',
301
+ properties: {
302
+ text: {
303
+ enum: ['\n'],
304
+ },
305
+ },
306
+ },
167
307
  },
168
308
  },
169
309
  mention_node: {
@@ -172,6 +312,26 @@ const jsonWithTypes = {
172
312
  type: {
173
313
  enum: ['mention'],
174
314
  },
315
+ attrs: {
316
+ type: 'object',
317
+ properties: {
318
+ id: {
319
+ type: 'string',
320
+ },
321
+ text: {
322
+ type: 'string',
323
+ },
324
+ userType: {
325
+ enum: ['DEFAULT', 'SPECIAL', 'APP'],
326
+ },
327
+ accessLevel: {
328
+ type: 'string',
329
+ },
330
+ localId: {
331
+ type: 'string',
332
+ },
333
+ },
334
+ },
175
335
  },
176
336
  },
177
337
  emoji_node: {
@@ -180,6 +340,20 @@ const jsonWithTypes = {
180
340
  type: {
181
341
  enum: ['emoji'],
182
342
  },
343
+ attrs: {
344
+ type: 'object',
345
+ properties: {
346
+ id: {
347
+ type: 'string',
348
+ },
349
+ shortName: {
350
+ type: 'string',
351
+ },
352
+ text: {
353
+ type: 'string',
354
+ },
355
+ },
356
+ },
183
357
  },
184
358
  },
185
359
  inlineExtension_node: {
@@ -188,6 +362,27 @@ const jsonWithTypes = {
188
362
  type: {
189
363
  enum: ['inlineExtension'],
190
364
  },
365
+ attrs: {
366
+ type: 'object',
367
+ properties: {
368
+ extensionKey: {
369
+ type: 'string',
370
+ minLength: 1,
371
+ },
372
+ extensionType: {
373
+ type: 'string',
374
+ minLength: 1,
375
+ },
376
+ parameters: {},
377
+ text: {
378
+ type: 'string',
379
+ },
380
+ localId: {
381
+ type: 'string',
382
+ minLength: 1,
383
+ },
384
+ },
385
+ },
191
386
  },
192
387
  },
193
388
  inlineExtension_with_marks_node: {},
@@ -197,6 +392,15 @@ const jsonWithTypes = {
197
392
  type: {
198
393
  enum: ['date'],
199
394
  },
395
+ attrs: {
396
+ type: 'object',
397
+ properties: {
398
+ timestamp: {
399
+ type: 'string',
400
+ minLength: 1,
401
+ },
402
+ },
403
+ },
200
404
  },
201
405
  },
202
406
  placeholder_node: {
@@ -205,6 +409,14 @@ const jsonWithTypes = {
205
409
  type: {
206
410
  enum: ['placeholder'],
207
411
  },
412
+ attrs: {
413
+ type: 'object',
414
+ properties: {
415
+ text: {
416
+ type: 'string',
417
+ },
418
+ },
419
+ },
208
420
  },
209
421
  },
210
422
  blockCard_node: {
@@ -213,6 +425,67 @@ const jsonWithTypes = {
213
425
  type: {
214
426
  enum: ['blockCard'],
215
427
  },
428
+ attrs: {
429
+ anyOf: [
430
+ {
431
+ type: 'object',
432
+ properties: {
433
+ url: {
434
+ type: 'string',
435
+ },
436
+ datasource: {
437
+ type: 'object',
438
+ properties: {
439
+ id: {
440
+ type: 'string',
441
+ },
442
+ parameters: {},
443
+ views: {
444
+ type: 'array',
445
+ items: {
446
+ type: 'object',
447
+ properties: {
448
+ type: {
449
+ type: 'string',
450
+ },
451
+ properties: {},
452
+ },
453
+ },
454
+ },
455
+ },
456
+ },
457
+ width: {
458
+ type: 'number',
459
+ },
460
+ layout: {
461
+ enum: [
462
+ 'wide',
463
+ 'full-width',
464
+ 'center',
465
+ 'wrap-right',
466
+ 'wrap-left',
467
+ 'align-end',
468
+ 'align-start',
469
+ ],
470
+ },
471
+ },
472
+ },
473
+ {
474
+ type: 'object',
475
+ properties: {
476
+ url: {
477
+ type: 'string',
478
+ },
479
+ },
480
+ },
481
+ {
482
+ type: 'object',
483
+ properties: {
484
+ data: {},
485
+ },
486
+ },
487
+ ],
488
+ },
216
489
  },
217
490
  },
218
491
  inlineCard_node: {
@@ -221,6 +494,24 @@ const jsonWithTypes = {
221
494
  type: {
222
495
  enum: ['inlineCard'],
223
496
  },
497
+ attrs: {
498
+ anyOf: [
499
+ {
500
+ type: 'object',
501
+ properties: {
502
+ url: {
503
+ type: 'string',
504
+ },
505
+ },
506
+ },
507
+ {
508
+ type: 'object',
509
+ properties: {
510
+ data: {},
511
+ },
512
+ },
513
+ ],
514
+ },
224
515
  },
225
516
  },
226
517
  status_node: {
@@ -229,6 +520,24 @@ const jsonWithTypes = {
229
520
  type: {
230
521
  enum: ['status'],
231
522
  },
523
+ attrs: {
524
+ type: 'object',
525
+ properties: {
526
+ text: {
527
+ type: 'string',
528
+ minLength: 1,
529
+ },
530
+ color: {
531
+ enum: ['neutral', 'purple', 'blue', 'red', 'yellow', 'green'],
532
+ },
533
+ localId: {
534
+ type: 'string',
535
+ },
536
+ style: {
537
+ type: 'string',
538
+ },
539
+ },
540
+ },
232
541
  },
233
542
  },
234
543
  media_node: {
@@ -237,6 +546,58 @@ const jsonWithTypes = {
237
546
  type: {
238
547
  enum: ['media'],
239
548
  },
549
+ attrs: {
550
+ anyOf: [
551
+ {
552
+ type: 'object',
553
+ properties: {
554
+ type: {
555
+ enum: ['link', 'file'],
556
+ },
557
+ id: {
558
+ type: 'string',
559
+ minLength: 1,
560
+ },
561
+ collection: {
562
+ type: 'string',
563
+ },
564
+ height: {
565
+ type: 'number',
566
+ },
567
+ width: {
568
+ type: 'number',
569
+ },
570
+ occurrenceKey: {
571
+ type: 'string',
572
+ minLength: 1,
573
+ },
574
+ alt: {
575
+ type: 'string',
576
+ },
577
+ },
578
+ },
579
+ {
580
+ type: 'object',
581
+ properties: {
582
+ type: {
583
+ enum: ['external'],
584
+ },
585
+ url: {
586
+ type: 'string',
587
+ },
588
+ alt: {
589
+ type: 'string',
590
+ },
591
+ width: {
592
+ type: 'number',
593
+ },
594
+ height: {
595
+ type: 'number',
596
+ },
597
+ },
598
+ },
599
+ ],
600
+ },
240
601
  marks: {
241
602
  type: 'array',
242
603
  items: {
@@ -261,6 +622,35 @@ const jsonWithTypes = {
261
622
  type: {
262
623
  enum: ['mediaInline'],
263
624
  },
625
+ attrs: {
626
+ type: 'object',
627
+ properties: {
628
+ data: {},
629
+ type: {
630
+ enum: ['link', 'file', 'image'],
631
+ },
632
+ id: {
633
+ type: 'string',
634
+ minLength: 1,
635
+ },
636
+ collection: {
637
+ type: 'string',
638
+ },
639
+ height: {
640
+ type: 'number',
641
+ },
642
+ width: {
643
+ type: 'number',
644
+ },
645
+ occurrenceKey: {
646
+ type: 'string',
647
+ minLength: 1,
648
+ },
649
+ alt: {
650
+ type: 'string',
651
+ },
652
+ },
653
+ },
264
654
  marks: {
265
655
  type: 'array',
266
656
  items: {
@@ -306,6 +696,57 @@ const jsonWithTypes = {
306
696
  type: {
307
697
  enum: ['mediaSingle'],
308
698
  },
699
+ attrs: {
700
+ anyOf: [
701
+ {
702
+ type: 'object',
703
+ properties: {
704
+ widthType: {
705
+ enum: ['percentage'],
706
+ },
707
+ width: {
708
+ type: 'number',
709
+ minimum: 0,
710
+ maximum: 100,
711
+ },
712
+ layout: {
713
+ enum: [
714
+ 'wide',
715
+ 'full-width',
716
+ 'center',
717
+ 'wrap-right',
718
+ 'wrap-left',
719
+ 'align-end',
720
+ 'align-start',
721
+ ],
722
+ },
723
+ },
724
+ },
725
+ {
726
+ type: 'object',
727
+ properties: {
728
+ width: {
729
+ type: 'number',
730
+ minimum: 0,
731
+ },
732
+ widthType: {
733
+ enum: ['pixel'],
734
+ },
735
+ layout: {
736
+ enum: [
737
+ 'wide',
738
+ 'full-width',
739
+ 'center',
740
+ 'wrap-right',
741
+ 'wrap-left',
742
+ 'align-end',
743
+ 'align-start',
744
+ ],
745
+ },
746
+ },
747
+ },
748
+ ],
749
+ },
309
750
  marks: {
310
751
  type: 'array',
311
752
  items: {
@@ -322,6 +763,17 @@ const jsonWithTypes = {
322
763
  type: {
323
764
  enum: ['taskItem'],
324
765
  },
766
+ attrs: {
767
+ type: 'object',
768
+ properties: {
769
+ localId: {
770
+ type: 'string',
771
+ },
772
+ state: {
773
+ enum: ['TODO', 'DONE'],
774
+ },
775
+ },
776
+ },
325
777
  },
326
778
  },
327
779
  taskList_node: {
@@ -330,6 +782,14 @@ const jsonWithTypes = {
330
782
  type: {
331
783
  enum: ['taskList'],
332
784
  },
785
+ attrs: {
786
+ type: 'object',
787
+ properties: {
788
+ localId: {
789
+ type: 'string',
790
+ },
791
+ },
792
+ },
333
793
  },
334
794
  },
335
795
  listItem_node: {
@@ -354,6 +814,15 @@ const jsonWithTypes = {
354
814
  type: {
355
815
  enum: ['orderedList'],
356
816
  },
817
+ attrs: {
818
+ type: 'object',
819
+ properties: {
820
+ order: {
821
+ type: 'number',
822
+ minimum: 0,
823
+ },
824
+ },
825
+ },
357
826
  },
358
827
  },
359
828
  heading_node: {
@@ -362,6 +831,16 @@ const jsonWithTypes = {
362
831
  type: {
363
832
  enum: ['heading'],
364
833
  },
834
+ attrs: {
835
+ type: 'object',
836
+ properties: {
837
+ level: {
838
+ type: 'number',
839
+ minimum: 1,
840
+ maximum: 6,
841
+ },
842
+ },
843
+ },
365
844
  },
366
845
  },
367
846
  heading_with_no_marks_node: {},
@@ -381,6 +860,17 @@ const jsonWithTypes = {
381
860
  type: {
382
861
  enum: ['decisionItem'],
383
862
  },
863
+ attrs: {
864
+ type: 'object',
865
+ properties: {
866
+ localId: {
867
+ type: 'string',
868
+ },
869
+ state: {
870
+ type: 'string',
871
+ },
872
+ },
873
+ },
384
874
  },
385
875
  },
386
876
  decisionList_node: {
@@ -389,6 +879,14 @@ const jsonWithTypes = {
389
879
  type: {
390
880
  enum: ['decisionList'],
391
881
  },
882
+ attrs: {
883
+ type: 'object',
884
+ properties: {
885
+ localId: {
886
+ type: 'string',
887
+ },
888
+ },
889
+ },
392
890
  },
393
891
  },
394
892
  rule_node: {
@@ -405,6 +903,34 @@ const jsonWithTypes = {
405
903
  type: {
406
904
  enum: ['panel'],
407
905
  },
906
+ attrs: {
907
+ type: 'object',
908
+ properties: {
909
+ panelType: {
910
+ enum: [
911
+ 'info',
912
+ 'note',
913
+ 'tip',
914
+ 'warning',
915
+ 'error',
916
+ 'success',
917
+ 'custom',
918
+ ],
919
+ },
920
+ panelIcon: {
921
+ type: 'string',
922
+ },
923
+ panelIconId: {
924
+ type: 'string',
925
+ },
926
+ panelIconText: {
927
+ type: 'string',
928
+ },
929
+ panelColor: {
930
+ type: 'string',
931
+ },
932
+ },
933
+ },
408
934
  },
409
935
  },
410
936
  blockquote_node: {
@@ -421,6 +947,30 @@ const jsonWithTypes = {
421
947
  type: {
422
948
  enum: ['extension'],
423
949
  },
950
+ attrs: {
951
+ type: 'object',
952
+ properties: {
953
+ extensionKey: {
954
+ type: 'string',
955
+ minLength: 1,
956
+ },
957
+ extensionType: {
958
+ type: 'string',
959
+ minLength: 1,
960
+ },
961
+ parameters: {},
962
+ text: {
963
+ type: 'string',
964
+ },
965
+ layout: {
966
+ enum: ['wide', 'full-width', 'default'],
967
+ },
968
+ localId: {
969
+ type: 'string',
970
+ minLength: 1,
971
+ },
972
+ },
973
+ },
424
974
  },
425
975
  },
426
976
  extension_with_marks_node: {},
@@ -430,6 +980,36 @@ const jsonWithTypes = {
430
980
  type: {
431
981
  enum: ['embedCard'],
432
982
  },
983
+ attrs: {
984
+ type: 'object',
985
+ properties: {
986
+ originalWidth: {
987
+ type: 'number',
988
+ },
989
+ originalHeight: {
990
+ type: 'number',
991
+ },
992
+ url: {
993
+ type: 'string',
994
+ },
995
+ width: {
996
+ type: 'number',
997
+ minimum: 0,
998
+ maximum: 100,
999
+ },
1000
+ layout: {
1001
+ enum: [
1002
+ 'wide',
1003
+ 'full-width',
1004
+ 'center',
1005
+ 'wrap-right',
1006
+ 'wrap-left',
1007
+ 'align-end',
1008
+ 'align-start',
1009
+ ],
1010
+ },
1011
+ },
1012
+ },
433
1013
  },
434
1014
  },
435
1015
  nestedExpand_node: {
@@ -438,6 +1018,14 @@ const jsonWithTypes = {
438
1018
  type: {
439
1019
  enum: ['nestedExpand'],
440
1020
  },
1021
+ attrs: {
1022
+ type: 'object',
1023
+ properties: {
1024
+ title: {
1025
+ type: 'string',
1026
+ },
1027
+ },
1028
+ },
441
1029
  },
442
1030
  },
443
1031
  nestedExpand_with_no_marks_node: {},
@@ -447,6 +1035,34 @@ const jsonWithTypes = {
447
1035
  type: {
448
1036
  enum: ['table'],
449
1037
  },
1038
+ attrs: {
1039
+ type: 'object',
1040
+ properties: {
1041
+ isNumberColumnEnabled: {
1042
+ type: 'boolean',
1043
+ },
1044
+ layout: {
1045
+ enum: [
1046
+ 'wide',
1047
+ 'full-width',
1048
+ 'center',
1049
+ 'align-end',
1050
+ 'align-start',
1051
+ 'default',
1052
+ ],
1053
+ },
1054
+ localId: {
1055
+ type: 'string',
1056
+ minLength: 1,
1057
+ },
1058
+ width: {
1059
+ type: 'number',
1060
+ },
1061
+ displayMode: {
1062
+ enum: ['default', 'fixed'],
1063
+ },
1064
+ },
1065
+ },
450
1066
  marks: {
451
1067
  type: 'array',
452
1068
  items: {
@@ -469,6 +1085,26 @@ const jsonWithTypes = {
469
1085
  type: {
470
1086
  enum: ['tableCell'],
471
1087
  },
1088
+ attrs: {
1089
+ type: 'object',
1090
+ properties: {
1091
+ colspan: {
1092
+ type: 'number',
1093
+ },
1094
+ rowspan: {
1095
+ type: 'number',
1096
+ },
1097
+ colwidth: {
1098
+ type: 'array',
1099
+ items: {
1100
+ type: 'number',
1101
+ },
1102
+ },
1103
+ background: {
1104
+ type: 'string',
1105
+ },
1106
+ },
1107
+ },
472
1108
  },
473
1109
  },
474
1110
  table_header_node: {
@@ -477,6 +1113,26 @@ const jsonWithTypes = {
477
1113
  type: {
478
1114
  enum: ['tableHeader'],
479
1115
  },
1116
+ attrs: {
1117
+ type: 'object',
1118
+ properties: {
1119
+ colspan: {
1120
+ type: 'number',
1121
+ },
1122
+ rowspan: {
1123
+ type: 'number',
1124
+ },
1125
+ colwidth: {
1126
+ type: 'array',
1127
+ items: {
1128
+ type: 'number',
1129
+ },
1130
+ },
1131
+ background: {
1132
+ type: 'string',
1133
+ },
1134
+ },
1135
+ },
480
1136
  },
481
1137
  },
482
1138
  expand_node: {
@@ -485,6 +1141,14 @@ const jsonWithTypes = {
485
1141
  type: {
486
1142
  enum: ['expand'],
487
1143
  },
1144
+ attrs: {
1145
+ type: 'object',
1146
+ properties: {
1147
+ title: {
1148
+ type: 'string',
1149
+ },
1150
+ },
1151
+ },
488
1152
  },
489
1153
  },
490
1154
  expand_with_no_mark_node: {},
@@ -495,6 +1159,30 @@ const jsonWithTypes = {
495
1159
  type: {
496
1160
  enum: ['bodiedExtension'],
497
1161
  },
1162
+ attrs: {
1163
+ type: 'object',
1164
+ properties: {
1165
+ extensionKey: {
1166
+ type: 'string',
1167
+ minLength: 1,
1168
+ },
1169
+ extensionType: {
1170
+ type: 'string',
1171
+ minLength: 1,
1172
+ },
1173
+ parameters: {},
1174
+ text: {
1175
+ type: 'string',
1176
+ },
1177
+ layout: {
1178
+ enum: ['wide', 'full-width', 'default'],
1179
+ },
1180
+ localId: {
1181
+ type: 'string',
1182
+ minLength: 1,
1183
+ },
1184
+ },
1185
+ },
498
1186
  },
499
1187
  },
500
1188
  bodiedExtension_with_marks_node: {},
@@ -504,6 +1192,16 @@ const jsonWithTypes = {
504
1192
  type: {
505
1193
  enum: ['layoutColumn'],
506
1194
  },
1195
+ attrs: {
1196
+ type: 'object',
1197
+ properties: {
1198
+ width: {
1199
+ type: 'number',
1200
+ minimum: 0,
1201
+ maximum: 100,
1202
+ },
1203
+ },
1204
+ },
507
1205
  },
508
1206
  },
509
1207
  layoutSection_node: {