@supernova-studio/client 0.10.2 → 0.12.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.
@@ -3,1116 +3,517 @@ import { Schema } from "prosemirror-model";
3
3
  const newSchema = {
4
4
  nodes: {
5
5
  paragraph: {
6
- name: "paragraph",
7
- spec: {
8
- content: "inline*",
9
- group: "block",
10
- attrs: {
11
- id: {
12
- default: null,
13
- },
14
- definitionId: {
15
- default: "io.supernova.block.rich-text",
16
- },
17
- variantId: {
18
- default: "default",
19
- },
20
- },
21
- parseDOM: [
22
- {
23
- tag: "p",
24
- },
25
- ],
26
- },
27
- markSet: null,
28
- groups: ["block"],
6
+ content: "inline*",
7
+ group: "block",
29
8
  attrs: {
30
9
  id: {
31
- hasDefault: true,
32
10
  default: null,
33
11
  },
34
12
  definitionId: {
35
- hasDefault: true,
36
13
  default: "io.supernova.block.rich-text",
37
14
  },
38
15
  variantId: {
39
- hasDefault: true,
40
16
  default: "default",
41
17
  },
42
18
  },
43
- defaultAttrs: {
44
- id: null,
45
- definitionId: "io.supernova.block.rich-text",
46
- variantId: "default",
47
- },
48
- contentMatch: {
49
- validEnd: true,
50
- wrapCache: [],
51
- },
52
- inlineContent: true,
53
- isBlock: true,
54
- isText: false,
19
+ parseDOM: [
20
+ {
21
+ tag: "p",
22
+ },
23
+ ],
55
24
  },
56
25
  reactComponent: {
57
- name: "reactComponent",
58
- spec: {
59
- group: "block",
60
- atom: true,
61
- draggable: true,
62
- attrs: {
63
- count: {
64
- default: 0,
65
- },
66
- },
67
- parseDOM: [
68
- {
69
- tag: "react-component",
70
- },
71
- ],
72
- },
73
- markSet: [],
74
- groups: ["block"],
26
+ group: "block",
27
+ atom: true,
28
+ draggable: true,
75
29
  attrs: {
76
30
  count: {
77
- hasDefault: true,
78
31
  default: 0,
79
32
  },
80
33
  },
81
- defaultAttrs: {
82
- count: 0,
83
- },
84
- contentMatch: {
85
- validEnd: true,
86
- wrapCache: [],
87
- },
88
- inlineContent: false,
89
- isBlock: true,
90
- isText: false,
34
+ parseDOM: [
35
+ {
36
+ tag: "react-component",
37
+ },
38
+ ],
91
39
  },
92
40
  tableRow: {
93
- name: "tableRow",
94
- spec: {
95
- tableRole: "row",
96
- content: "(tableCell | tableHeader)*",
97
- parseDOM: [
98
- {
99
- tag: "tr",
100
- },
101
- ],
102
- },
103
- markSet: [],
104
- groups: [],
105
- attrs: {},
106
- defaultAttrs: {},
107
- contentMatch: {
108
- validEnd: true,
109
- wrapCache: [],
110
- },
111
- inlineContent: false,
112
- isBlock: true,
113
- isText: false,
41
+ tableRole: "row",
42
+ content: "(tableCell | tableHeader)*",
43
+ parseDOM: [
44
+ {
45
+ tag: "tr",
46
+ },
47
+ ],
114
48
  },
115
49
  table: {
116
- name: "table",
117
- spec: {
118
- tableRole: "table",
119
- content: "tableRow+",
120
- group: "defaultTable",
121
- isolating: true,
122
- parseDOM: [
123
- {
124
- tag: "table",
125
- },
126
- ],
127
- },
128
- markSet: [],
129
- groups: ["defaultTable"],
130
- attrs: {},
131
- defaultAttrs: {},
132
- contentMatch: {
133
- validEnd: false,
134
- wrapCache: [],
135
- },
136
- inlineContent: false,
137
- isBlock: true,
138
- isText: false,
50
+ tableRole: "table",
51
+ content: "tableRow+",
52
+ group: "defaultTable",
53
+ isolating: true,
54
+ parseDOM: [
55
+ {
56
+ tag: "table",
57
+ },
58
+ ],
139
59
  },
140
60
  tableCell: {
141
- name: "tableCell",
142
- spec: {
143
- tableRole: "cell",
144
- content: "(paragraph|image)+",
145
- isolating: true,
146
- attrs: {
147
- id: {
148
- default: null,
149
- },
150
- textAlign: {
151
- default: "left",
152
- },
153
- colspan: {
154
- default: 1,
155
- },
156
- rowspan: {
157
- default: 1,
158
- },
159
- colwidth: {
160
- default: null,
161
- },
162
- },
163
- parseDOM: [
164
- {
165
- tag: "td",
166
- },
167
- ],
168
- },
169
- markSet: [],
170
- groups: [],
61
+ tableRole: "cell",
62
+ content: "block+",
63
+ isolating: true,
171
64
  attrs: {
172
65
  id: {
173
66
  default: null,
174
67
  },
175
68
  textAlign: {
176
- hasDefault: true,
177
69
  default: "left",
178
70
  },
179
71
  colspan: {
180
- hasDefault: true,
181
72
  default: 1,
182
73
  },
183
74
  rowspan: {
184
- hasDefault: true,
185
75
  default: 1,
186
76
  },
187
77
  colwidth: {
188
- hasDefault: true,
189
78
  default: null,
190
79
  },
191
80
  },
192
- defaultAttrs: {
193
- id: null,
194
- textAlign: "left",
195
- colspan: 1,
196
- rowspan: 1,
197
- colwidth: null,
198
- },
199
- contentMatch: {
200
- validEnd: false,
201
- wrapCache: [],
202
- },
203
- inlineContent: false,
204
- isBlock: true,
205
- isText: false,
81
+ parseDOM: [
82
+ {
83
+ tag: "td",
84
+ },
85
+ ],
206
86
  },
207
87
  tableHeader: {
208
- name: "tableHeader",
209
- spec: {
210
- tableRole: "header_cell",
211
- content: "(paragraph|image)+",
212
- isolating: true,
213
- attrs: {
214
- id: {
215
- default: null,
216
- },
217
- textAlign: {
218
- default: "left",
219
- },
220
- colspan: {
221
- default: 1,
222
- },
223
- rowspan: {
224
- default: 1,
225
- },
226
- colwidth: {
227
- default: null,
228
- },
229
- },
230
- parseDOM: [
231
- {
232
- tag: "th",
233
- },
234
- ],
235
- },
236
- markSet: [],
237
- groups: [],
88
+ tableRole: "header_cell",
89
+ content: "block+",
90
+ isolating: true,
238
91
  attrs: {
239
92
  id: {
240
93
  default: null,
241
94
  },
242
95
  textAlign: {
243
- hasDefault: true,
244
96
  default: "left",
245
97
  },
246
98
  colspan: {
247
- hasDefault: true,
248
99
  default: 1,
249
100
  },
250
101
  rowspan: {
251
- hasDefault: true,
252
102
  default: 1,
253
103
  },
254
104
  colwidth: {
255
- hasDefault: true,
256
105
  default: null,
257
106
  },
258
107
  },
259
- defaultAttrs: {
260
- id: null,
261
- textAlign: "left",
262
- colspan: 1,
263
- rowspan: 1,
264
- colwidth: null,
265
- },
266
- contentMatch: {
267
- validEnd: false,
268
- wrapCache: [],
269
- },
270
- inlineContent: false,
271
- isBlock: true,
272
- isText: false,
108
+ parseDOM: [
109
+ {
110
+ tag: "th",
111
+ },
112
+ ],
273
113
  },
274
114
  tableContainer: {
275
- name: "tableContainer",
276
- spec: {
277
- content: "table",
278
- group: "block",
279
- atom: true,
280
- draggable: false,
281
- defining: true,
282
- attrs: {
283
- id: {
284
- default: null,
285
- },
286
- definitionId: {
287
- default: "io.supernova.block.table",
288
- },
289
- variantId: {
290
- default: "default",
291
- },
292
- hasBorder: {
293
- default: true,
294
- },
295
- },
296
- parseDOM: [
297
- {
298
- tag: "tableContainer",
299
- },
300
- ],
301
- },
302
- markSet: [],
303
- groups: ["block"],
115
+ content: "table",
116
+ group: "block",
117
+ atom: true,
118
+ draggable: false,
119
+ defining: true,
304
120
  attrs: {
305
121
  id: {
306
- hasDefault: true,
307
122
  default: null,
308
123
  },
309
124
  definitionId: {
310
- hasDefault: true,
311
125
  default: "io.supernova.block.table",
312
126
  },
313
127
  variantId: {
314
- hasDefault: true,
315
128
  default: "default",
316
129
  },
317
130
  hasBorder: {
318
- hasDefault: true,
319
131
  default: true,
320
132
  },
321
133
  },
322
- defaultAttrs: {
323
- id: null,
324
- definitionId: "io.supernova.block.table",
325
- variantId: "default",
326
- hasBorder: true,
327
- },
328
- contentMatch: {
329
- validEnd: false,
330
- wrapCache: [],
331
- },
332
- inlineContent: false,
333
- isBlock: true,
334
- isText: false,
335
- },
336
- image: {
337
- name: "image",
338
- spec: {
339
- group: "block",
340
- inline: false,
341
- draggable: true,
342
- attrs: {
343
- src: {
344
- default: null,
345
- },
346
- alt: {
347
- default: null,
348
- },
349
- title: {
350
- default: null,
351
- },
134
+ parseDOM: [
135
+ {
136
+ tag: "tableContainer",
352
137
  },
353
- parseDOM: [
354
- {
355
- tag: 'img[src]:not([src^="data:"])',
356
- },
357
- ],
358
- },
359
- markSet: [],
360
- groups: ["block"],
361
- attrs: {
362
- src: {
363
- hasDefault: true,
364
- default: null,
365
- },
366
- alt: {
367
- hasDefault: true,
368
- default: null,
369
- },
370
- title: {
371
- hasDefault: true,
372
- default: null,
373
- },
374
- },
375
- defaultAttrs: {
376
- src: null,
377
- alt: null,
378
- title: null,
379
- },
380
- contentMatch: {
381
- validEnd: true,
382
- wrapCache: [],
383
- },
384
- inlineContent: false,
385
- isBlock: true,
386
- isText: false,
387
- },
388
- codeBlock: {
389
- name: "codeBlock",
390
- spec: {
391
- content: "text*",
392
- marks: "",
393
- group: "block",
394
- code: true,
395
- defining: true,
396
- attrs: {
397
- language: {
398
- default: null,
399
- },
400
- },
401
- parseDOM: [
402
- {
403
- tag: "pre",
404
- preserveWhitespace: "full",
405
- },
406
- ],
407
- },
408
- markSet: [],
409
- groups: ["block"],
410
- attrs: {
411
- language: {
412
- hasDefault: true,
413
- default: null,
414
- },
415
- },
416
- defaultAttrs: {
417
- language: null,
418
- },
419
- contentMatch: {
420
- validEnd: true,
421
- wrapCache: [],
422
- },
423
- inlineContent: true,
424
- isBlock: true,
425
- isText: false,
138
+ ],
426
139
  },
427
140
  hardBreak: {
428
- name: "hardBreak",
429
- spec: {
430
- group: "inline",
431
- inline: true,
432
- selectable: false,
433
- parseDOM: [
434
- {
435
- tag: "br",
436
- },
437
- ],
438
- },
439
- markSet: [],
440
- groups: ["inline"],
441
- attrs: {},
442
- defaultAttrs: {},
443
- contentMatch: {
444
- validEnd: true,
445
- wrapCache: [],
446
- },
447
- inlineContent: false,
448
- isBlock: false,
449
- isText: false,
141
+ group: "inline",
142
+ inline: true,
143
+ selectable: false,
144
+ parseDOM: [
145
+ {
146
+ tag: "br",
147
+ },
148
+ ],
450
149
  },
451
150
  text: {
452
- name: "text",
453
- spec: {
454
- group: "inline",
455
- },
456
- markSet: [],
457
- groups: ["inline"],
458
- attrs: {},
459
- defaultAttrs: {},
460
- contentMatch: {
461
- validEnd: true,
462
- wrapCache: [],
463
- },
464
- inlineContent: false,
465
- isBlock: false,
466
- isText: true,
151
+ group: "inline",
467
152
  },
468
153
  heading: {
469
- name: "heading",
470
- spec: {
471
- content: "inline*",
472
- group: "block",
473
- defining: true,
474
- attrs: {
475
- id: {
476
- default: null,
477
- },
478
- level: {
479
- default: 1,
480
- },
481
- definitionId: {
482
- default: null,
483
- },
484
- variantId: {
485
- default: null,
486
- },
487
- },
488
- parseDOM: [
489
- {
490
- tag: "h1",
491
- attrs: {
492
- level: 1,
493
- definitionId: "io.supernova.block.title1",
494
- variantId: "default",
495
- },
496
- },
497
- {
498
- tag: "h2",
499
- attrs: {
500
- level: 2,
501
- definitionId: "io.supernova.block.title2",
502
- variantId: "default",
503
- },
504
- },
505
- {
506
- tag: "h3",
507
- attrs: {
508
- level: 3,
509
- definitionId: "io.supernova.block.title3",
510
- variantId: "default",
511
- },
512
- },
513
- {
514
- tag: "h4",
515
- attrs: {
516
- level: 4,
517
- definitionId: "io.supernova.block.title4",
518
- variantId: "default",
519
- },
520
- },
521
- {
522
- tag: "h5",
523
- attrs: {
524
- level: 5,
525
- definitionId: "io.supernova.block.title5",
526
- variantId: "default",
527
- },
528
- },
529
- ],
530
- },
531
- markSet: null,
532
- groups: ["block"],
154
+ content: "inline*",
155
+ group: "block",
156
+ defining: true,
533
157
  attrs: {
534
158
  id: {
535
- hasDefault: true,
536
159
  default: null,
537
160
  },
538
161
  level: {
539
- hasDefault: true,
540
162
  default: 1,
541
163
  },
542
164
  definitionId: {
543
- hasDefault: true,
544
165
  default: null,
545
166
  },
546
167
  variantId: {
547
- hasDefault: true,
548
168
  default: null,
549
169
  },
550
170
  },
551
- defaultAttrs: {
552
- id: null,
553
- level: 1,
554
- definitionId: null,
555
- variantId: null,
556
- },
557
- contentMatch: {
558
- validEnd: true,
559
- wrapCache: [],
560
- },
561
- inlineContent: true,
562
- isBlock: true,
563
- isText: false,
564
- },
565
- listItem: {
566
- name: "listItem",
567
- spec: {
568
- content: "paragraph (paragraph | list)*",
569
- defining: true,
570
- attrs: {
571
- id: {
572
- default: null,
171
+ parseDOM: [
172
+ {
173
+ tag: "h1",
174
+ attrs: {
175
+ level: 1,
176
+ definitionId: "io.supernova.block.title1",
177
+ variantId: "default",
573
178
  },
574
179
  },
575
- parseDOM: [
576
- {
577
- tag: "li",
180
+ {
181
+ tag: "h2",
182
+ attrs: {
183
+ level: 2,
184
+ definitionId: "io.supernova.block.title2",
185
+ variantId: "default",
578
186
  },
579
- ],
580
- },
581
- markSet: [],
582
- groups: [],
187
+ },
188
+ {
189
+ tag: "h3",
190
+ attrs: {
191
+ level: 3,
192
+ definitionId: "io.supernova.block.title3",
193
+ variantId: "default",
194
+ },
195
+ },
196
+ {
197
+ tag: "h4",
198
+ attrs: {
199
+ level: 4,
200
+ definitionId: "io.supernova.block.title4",
201
+ variantId: "default",
202
+ },
203
+ },
204
+ {
205
+ tag: "h5",
206
+ attrs: {
207
+ level: 5,
208
+ definitionId: "io.supernova.block.title5",
209
+ variantId: "default",
210
+ },
211
+ },
212
+ ],
213
+ },
214
+ listItem: {
215
+ content: "paragraph list{0,1}",
216
+ defining: true,
583
217
  attrs: {
584
218
  id: {
585
- hasDefault: true,
586
219
  default: null,
587
220
  },
588
221
  },
589
- defaultAttrs: {
590
- id: null,
591
- },
592
- contentMatch: {
593
- validEnd: false,
594
- wrapCache: [],
595
- },
596
- inlineContent: false,
597
- isBlock: true,
598
- isText: false,
222
+ parseDOM: [
223
+ {
224
+ tag: "li",
225
+ },
226
+ ],
599
227
  },
600
228
  orderedList: {
601
- name: "orderedList",
602
- spec: {
603
- content: "listItem+",
604
- group: "block list topLevel",
605
- attrs: {
606
- id: {
607
- default: null,
608
- },
609
- definitionId: {
610
- default: "io.supernova.block.ordered-list",
611
- },
612
- variantId: {
613
- default: "default",
614
- },
615
- start: {
616
- default: 1,
617
- },
618
- },
619
- parseDOM: [
620
- {
621
- tag: "ol",
622
- },
623
- ],
624
- },
625
- markSet: [],
626
- groups: ["block", "list", "topLevel"],
229
+ content: "listItem+",
230
+ group: "block list",
627
231
  attrs: {
628
232
  id: {
629
- hasDefault: true,
630
233
  default: null,
631
234
  },
632
235
  definitionId: {
633
- hasDefault: true,
634
236
  default: "io.supernova.block.ordered-list",
635
237
  },
636
238
  variantId: {
637
- hasDefault: true,
638
239
  default: "default",
639
240
  },
640
241
  start: {
641
- hasDefault: true,
642
242
  default: 1,
643
243
  },
644
244
  },
645
- defaultAttrs: {
646
- id: null,
647
- definitionId: "io.supernova.block.ordered-list",
648
- variantId: "default",
649
- start: 1,
650
- },
651
- contentMatch: {
652
- validEnd: false,
653
- wrapCache: [],
654
- },
655
- inlineContent: false,
656
- isBlock: true,
657
- isText: false,
245
+ parseDOM: [
246
+ {
247
+ tag: "ol",
248
+ },
249
+ ],
658
250
  },
659
251
  bulletList: {
660
- name: "bulletList",
661
- spec: {
662
- content: "listItem+",
663
- group: "block list topLevel",
664
- attrs: {
665
- id: {
666
- default: null,
667
- },
668
- definitionId: {
669
- default: "io.supernova.block.unordered-list",
670
- },
671
- variantId: {
672
- default: "default",
673
- },
674
- },
675
- parseDOM: [
676
- {
677
- tag: "ul",
678
- },
679
- ],
680
- },
681
- markSet: [],
682
- groups: ["block", "list", "topLevel"],
252
+ content: "listItem+",
253
+ group: "block list",
683
254
  attrs: {
684
255
  id: {
685
- hasDefault: true,
686
256
  default: null,
687
257
  },
688
258
  definitionId: {
689
- hasDefault: true,
690
259
  default: "io.supernova.block.unordered-list",
691
260
  },
692
261
  variantId: {
693
- hasDefault: true,
694
262
  default: "default",
695
263
  },
696
264
  },
697
- defaultAttrs: {
698
- id: null,
699
- definitionId: "io.supernova.block.unordered-list",
700
- variantId: "default",
701
- },
702
- contentMatch: {
703
- validEnd: false,
704
- wrapCache: [],
705
- },
706
- inlineContent: false,
707
- isBlock: true,
708
- isText: false,
265
+ parseDOM: [
266
+ {
267
+ tag: "ul",
268
+ },
269
+ ],
709
270
  },
710
271
  horizontalRule: {
711
- name: "horizontalRule",
712
- spec: {
713
- group: "block",
714
- attrs: {
715
- id: {
716
- default: null,
717
- },
718
- definitionId: {
719
- default: "io.supernova.block.divider",
720
- },
721
- variantId: {
722
- default: "default",
723
- },
724
- },
725
- parseDOM: [
726
- {
727
- tag: "div.node-horizontalRule",
728
- },
729
- {
730
- tag: "hr",
731
- },
732
- ],
733
- },
734
- markSet: [],
735
- groups: ["block"],
272
+ group: "block",
736
273
  attrs: {
737
274
  id: {
738
- hasDefault: true,
739
275
  default: null,
740
276
  },
741
277
  definitionId: {
742
- hasDefault: true,
743
278
  default: "io.supernova.block.divider",
744
279
  },
745
280
  variantId: {
746
- hasDefault: true,
747
281
  default: "default",
748
282
  },
749
283
  },
750
- defaultAttrs: {
751
- id: null,
752
- definitionId: "io.supernova.block.divider",
753
- variantId: "default",
754
- },
755
- contentMatch: {
756
- validEnd: true,
757
- wrapCache: [],
758
- },
759
- inlineContent: false,
760
- isBlock: true,
761
- isText: false,
284
+ parseDOM: [
285
+ {
286
+ tag: "div.node-horizontalRule",
287
+ },
288
+ {
289
+ tag: "hr",
290
+ },
291
+ ],
762
292
  },
763
293
  blockquote: {
764
- name: "blockquote",
765
- spec: {
766
- content: "paragraph+",
767
- group: "block",
768
- defining: true,
769
- attrs: {
770
- id: {
771
- hasDefault: true,
772
- default: null,
773
- },
774
- definitionId: {
775
- default: "io.supernova.block.blockquote",
776
- },
777
- variantId: {
778
- default: "default",
779
- },
780
- },
781
- parseDOM: [
782
- {
783
- tag: "blockquote",
784
- },
785
- ],
786
- },
787
- markSet: [],
788
- groups: ["block"],
294
+ content: "inline*",
295
+ group: "block",
296
+ draggable: true,
297
+ defining: true,
789
298
  attrs: {
790
299
  id: {
791
300
  default: null,
792
301
  },
793
302
  definitionId: {
794
- hasDefault: true,
795
303
  default: "io.supernova.block.blockquote",
796
304
  },
797
305
  variantId: {
798
- hasDefault: true,
799
306
  default: "default",
800
307
  },
801
308
  },
802
- defaultAttrs: {
803
- id: null,
804
- definitionId: "io.supernova.block.blockquote",
805
- variantId: "default",
806
- },
807
- contentMatch: {
808
- validEnd: false,
809
- wrapCache: [],
810
- },
811
- inlineContent: false,
812
- isBlock: true,
813
- isText: false,
309
+ parseDOM: [
310
+ {
311
+ tag: "blockquote",
312
+ },
313
+ ],
814
314
  },
815
315
  plainSection: {
816
- name: "plainSection",
817
- spec: {
818
- content: "sectionItem",
819
- group: "section topLevel",
820
- atom: true,
821
- draggable: false,
822
- isolating: true,
823
- attrs: {
824
- id: {
825
- default: null,
826
- },
827
- },
828
- parseDOM: [
829
- {
830
- tag: "section",
831
- attrs: {
832
- "data-section-type": "plain",
833
- },
834
- },
835
- ],
836
- },
837
- markSet: [],
838
- groups: ["section", "topLevel"],
316
+ content: "sectionItem",
317
+ group: "section",
318
+ atom: true,
319
+ draggable: false,
320
+ isolating: true,
839
321
  attrs: {
840
322
  id: {
841
- hasDefault: true,
842
323
  default: null,
843
324
  },
844
325
  },
845
- defaultAttrs: {
846
- id: null,
847
- },
848
- contentMatch: {
849
- validEnd: false,
850
- wrapCache: [],
851
- },
852
- inlineContent: false,
853
- isBlock: true,
854
- isText: false,
855
- },
856
- tabsSection: {
857
- name: "tabsSection",
858
- spec: {
859
- content: "sectionItem+",
860
- group: "section topLevel",
861
- atom: true,
862
- draggable: false,
863
- isolating: true,
864
- attrs: {
865
- id: {
866
- default: null,
326
+ parseDOM: [
327
+ {
328
+ tag: "section",
329
+ attrs: {
330
+ "data-section-type": "plain",
867
331
  },
868
332
  },
869
- parseDOM: [
870
- {
871
- tag: "div",
872
- },
873
- ],
874
- },
875
- markSet: [],
876
- groups: ["section", "topLevel"],
333
+ ],
334
+ },
335
+ tabsSection: {
336
+ content: "sectionItem+",
337
+ group: "section",
338
+ atom: true,
339
+ draggable: false,
340
+ isolating: true,
877
341
  attrs: {
878
342
  id: {
879
- hasDefault: true,
880
343
  default: null,
881
344
  },
882
345
  },
883
- defaultAttrs: {
884
- id: null,
885
- },
886
- contentMatch: {
887
- validEnd: false,
888
- wrapCache: [],
889
- },
890
- inlineContent: false,
891
- isBlock: true,
892
- isText: false,
346
+ parseDOM: [
347
+ {
348
+ tag: "div",
349
+ },
350
+ ],
893
351
  },
894
352
  sectionItem: {
895
- name: "sectionItem",
896
- spec: {
897
- content: "sectionItemColumn{1, 3}",
898
- group: "sectionItem",
899
- atom: true,
900
- selectable: false,
901
- draggable: false,
902
- isolating: true,
903
- attrs: {
904
- id: {
905
- default: null,
906
- },
907
- title: {
908
- default: "",
909
- },
910
- },
911
- parseDOM: [
912
- {
913
- tag: "section-item",
914
- },
915
- ],
916
- },
917
- markSet: [],
918
- groups: ["sectionItem"],
353
+ content: "sectionItemColumn{1, 3}",
354
+ group: "sectionItem",
355
+ atom: true,
356
+ selectable: false,
357
+ draggable: false,
358
+ isolating: true,
919
359
  attrs: {
920
360
  id: {
921
- hasDefault: true,
922
361
  default: null,
923
362
  },
924
363
  title: {
925
- hasDefault: true,
926
364
  default: "",
927
365
  },
928
366
  },
929
- defaultAttrs: {
930
- id: null,
931
- title: "",
932
- },
933
- contentMatch: {
934
- validEnd: false,
935
- wrapCache: [],
936
- },
937
- inlineContent: false,
938
- isBlock: true,
939
- isText: false,
367
+ parseDOM: [
368
+ {
369
+ tag: "section-item",
370
+ },
371
+ ],
940
372
  },
941
373
  sectionItemColumn: {
942
- name: "sectionItemColumn",
943
- spec: {
944
- content: "block+",
945
- group: "sectionItemColumn",
946
- atom: true,
947
- selectable: false,
948
- draggable: false,
949
- isolating: true,
950
- attrs: {
951
- id: {
952
- default: null,
953
- },
954
- },
955
- parseDOM: [
956
- {
957
- tag: "section-item-column",
958
- },
959
- ],
960
- },
961
- markSet: [],
962
- groups: ["sectionItemColumn"],
374
+ content: "block+",
375
+ group: "sectionItemColumn",
376
+ atom: true,
377
+ selectable: false,
378
+ draggable: false,
379
+ isolating: true,
963
380
  attrs: {
964
381
  id: {
965
- hasDefault: true,
966
382
  default: null,
967
383
  },
968
384
  },
969
- defaultAttrs: {
970
- id: null,
971
- },
972
- contentMatch: {
973
- validEnd: false,
974
- wrapCache: [],
975
- },
976
- inlineContent: false,
977
- isBlock: true,
978
- isText: false,
385
+ parseDOM: [
386
+ {
387
+ tag: "section-item-column",
388
+ },
389
+ ],
979
390
  },
980
391
  doc: {
981
- name: "doc",
982
- spec: {
983
- content: "(block|section)+",
984
- },
985
- markSet: [],
986
- groups: [],
987
- attrs: {},
988
- defaultAttrs: {},
989
- contentMatch: {
990
- validEnd: false,
991
- wrapCache: [],
992
- },
993
- inlineContent: false,
994
- isBlock: true,
995
- isText: false,
392
+ content: "(block|section)+",
996
393
  },
997
394
  callout: {
998
- name: "callout",
999
- spec: {
1000
- content: "inline*",
1001
- group: "block topLevel",
1002
- draggable: true,
1003
- defining: true,
1004
- attrs: {
1005
- id: {
1006
- default: null,
1007
- },
1008
- definitionId: {
1009
- default: "io.supernova.block.callout",
1010
- },
1011
- variantId: {
1012
- default: "default",
1013
- },
1014
- type: {
1015
- default: "neutral",
1016
- },
1017
- },
1018
- parseDOM: [
1019
- {
1020
- tag: "callout",
1021
- },
1022
- ],
1023
- },
1024
- markSet: null,
1025
- groups: ["block", "topLevel"],
395
+ content: "inline*",
396
+ group: "block",
397
+ draggable: true,
398
+ defining: true,
1026
399
  attrs: {
1027
400
  id: {
1028
- hasDefault: true,
1029
401
  default: null,
1030
402
  },
1031
403
  definitionId: {
1032
- hasDefault: true,
1033
404
  default: "io.supernova.block.callout",
1034
405
  },
1035
406
  variantId: {
1036
- hasDefault: true,
1037
407
  default: "default",
1038
408
  },
1039
409
  type: {
1040
- hasDefault: true,
1041
410
  default: "neutral",
1042
411
  },
1043
412
  },
1044
- defaultAttrs: {
1045
- id: null,
1046
- definitionId: "io.supernova.block.callout",
1047
- variantId: "default",
1048
- type: "neutral",
413
+ parseDOM: [
414
+ {
415
+ tag: "callout",
416
+ },
417
+ ],
418
+ },
419
+ blockNode: {
420
+ group: "block",
421
+ atom: true,
422
+ draggable: true,
423
+ attrs: {
424
+ id: {
425
+ default: null,
426
+ },
427
+ definitionId: {
428
+ default: null,
429
+ },
430
+ variantId: {
431
+ default: null,
432
+ },
433
+ appearance: {
434
+ default: "{}",
435
+ },
436
+ columns: {
437
+ default: 1,
438
+ },
439
+ items: {
440
+ default: "[]",
441
+ },
1049
442
  },
1050
- contentMatch: {
1051
- validEnd: true,
1052
- wrapCache: [],
443
+ parseDOM: [
444
+ {
445
+ tag: "block-node",
446
+ },
447
+ ],
448
+ },
449
+ embed: {
450
+ group: "block",
451
+ draggable: true,
452
+ defining: true,
453
+ attrs: {
454
+ id: {
455
+ default: null,
456
+ },
457
+ definitionId: {
458
+ default: null,
459
+ },
460
+ variantId: {
461
+ default: null,
462
+ },
463
+ type: {
464
+ default: "youtube",
465
+ },
466
+ url: {
467
+ default: null,
468
+ },
469
+ height: {
470
+ default: null,
471
+ },
1053
472
  },
1054
- inlineContent: true,
1055
- isBlock: true,
1056
- isText: false,
1057
473
  },
1058
- blockNode: {
1059
- name: "blockNode",
474
+ image: {
475
+ name: "image",
1060
476
  spec: {
1061
477
  group: "block",
1062
- atom: true,
478
+ inline: false,
479
+ draggable: true,
1063
480
  attrs: {
1064
- id: {
481
+ src: {
1065
482
  default: null,
1066
483
  },
1067
- definitionId: {
484
+ alt: {
1068
485
  default: null,
1069
486
  },
1070
- variantId: {
487
+ title: {
1071
488
  default: null,
1072
489
  },
1073
- columns: {
1074
- default: 1,
1075
- },
1076
- items: {
1077
- default: "[]",
1078
- },
1079
490
  },
1080
491
  parseDOM: [
1081
492
  {
1082
- tag: "block-node",
493
+ tag: 'img[src]:not([src^="data:"])',
1083
494
  },
1084
495
  ],
1085
496
  },
1086
497
  markSet: [],
1087
498
  groups: ["block"],
1088
499
  attrs: {
1089
- id: {
500
+ src: {
1090
501
  hasDefault: true,
1091
502
  default: null,
1092
503
  },
1093
- definitionId: {
504
+ alt: {
1094
505
  hasDefault: true,
1095
506
  default: null,
1096
507
  },
1097
- variantId: {
508
+ title: {
1098
509
  hasDefault: true,
1099
510
  default: null,
1100
511
  },
1101
- columns: {
1102
- hasDefault: true,
1103
- default: 1,
1104
- },
1105
- items: {
1106
- hasDefault: true,
1107
- default: "[]",
1108
- },
1109
512
  },
1110
513
  defaultAttrs: {
1111
- id: null,
1112
- definitionId: null,
1113
- variantId: null,
1114
- columns: 1,
1115
- items: "[]",
514
+ src: null,
515
+ alt: null,
516
+ title: null,
1116
517
  },
1117
518
  contentMatch: {
1118
519
  validEnd: true,