@seorii/tiptap 0.2.22 → 0.3.0-next.10

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 (49) hide show
  1. package/dist/i18n/en-us/index.js +1 -1
  2. package/dist/i18n/index.js +2 -3
  3. package/dist/i18n/ko-kr/index.js +1 -1
  4. package/dist/index.d.ts +2 -2
  5. package/dist/index.js +3 -3
  6. package/dist/plugin/command/emoji.d.ts +2 -2
  7. package/dist/plugin/command/emoji.js +7 -3
  8. package/dist/plugin/command/stores.d.ts +0 -1
  9. package/dist/plugin/command/suggest.d.ts +2 -2
  10. package/dist/plugin/command/suggest.js +85 -26
  11. package/dist/plugin/embed.js +15 -9
  12. package/dist/plugin/iframe.js +19 -10
  13. package/dist/plugin/image/dragdrop.js +10 -12
  14. package/dist/plugin/image/index.d.ts +1 -1
  15. package/dist/plugin/image/index.js +12 -8
  16. package/dist/plugin/indent.js +16 -14
  17. package/dist/plugin/orderedlist/index.js +55 -23
  18. package/dist/plugin/orderedlist/korean.scss +12 -13
  19. package/dist/plugin/orderedlist/toggleList.js +7 -7
  20. package/dist/plugin/table/deleteTable.d.ts +1 -1
  21. package/dist/plugin/table/deleteTable.js +2 -2
  22. package/dist/plugin/table/index.js +10 -6
  23. package/dist/plugin/table/style/cell.scss +14 -13
  24. package/dist/plugin/table/style/grip.scss +61 -59
  25. package/dist/plugin/table/style/resize.scss +21 -23
  26. package/dist/plugin/table/style/table.scss +72 -69
  27. package/dist/plugin/table/tableCell/index.js +6 -6
  28. package/dist/plugin/table/tableHeader/index.js +6 -6
  29. package/dist/plugin/table/tableRow/index.js +1 -1
  30. package/dist/plugin/table/util.d.ts +2 -2
  31. package/dist/plugin/table/util.js +9 -9
  32. package/dist/plugin/youtube.d.ts +2 -2
  33. package/dist/plugin/youtube.js +35 -26
  34. package/dist/tiptap/Bubble.svelte +199 -95
  35. package/dist/tiptap/Bubble.svelte.d.ts +7 -21
  36. package/dist/tiptap/Command.svelte +125 -59
  37. package/dist/tiptap/Command.svelte.d.ts +4 -16
  38. package/dist/tiptap/Floating.svelte +67 -41
  39. package/dist/tiptap/Floating.svelte.d.ts +2 -14
  40. package/dist/tiptap/TipTap.svelte +210 -132
  41. package/dist/tiptap/TipTap.svelte.d.ts +18 -34
  42. package/dist/tiptap/ToolbarButton.svelte +33 -21
  43. package/dist/tiptap/ToolbarButton.svelte.d.ts +10 -25
  44. package/dist/tiptap/index.d.ts +1 -1
  45. package/dist/tiptap/index.js +2 -2
  46. package/dist/tiptap/setMath.js +5 -2
  47. package/dist/tiptap/tiptap.d.ts +2 -2
  48. package/dist/tiptap/tiptap.js +87 -76
  49. package/package.json +109 -102
@@ -1,6 +1,6 @@
1
- import { wrappingInputRule } from "@tiptap/core";
1
+ import { wrappingInputRule } from '@tiptap/core';
2
2
  import OrderedListBase from '@tiptap/extension-ordered-list';
3
- import toggleList from "./toggleList";
3
+ import toggleList from './toggleList';
4
4
  import './korean.scss';
5
5
  export default OrderedListBase.extend({
6
6
  priority: 20,
@@ -12,10 +12,10 @@ export default OrderedListBase.extend({
12
12
  return element.hasAttribute('start')
13
13
  ? parseInt(element.getAttribute('start') || '', 10)
14
14
  : 1;
15
- },
15
+ }
16
16
  },
17
17
  type: {
18
- default: '1',
18
+ default: '1'
19
19
  }
20
20
  };
21
21
  },
@@ -24,58 +24,90 @@ export default OrderedListBase.extend({
24
24
  wrappingInputRule({
25
25
  find: /^(\d+)\.\s$/,
26
26
  type: this.type,
27
- getAttributes: match => ({ start: +match[1], type: '1' }),
28
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
27
+ getAttributes: (match) => ({ start: +match[1], type: '1' }),
28
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
29
29
  }),
30
30
  wrappingInputRule({
31
31
  find: /^([i])\.\s$/,
32
32
  type: this.type,
33
- getAttributes: match => ({ start: 1, type: 'i' }),
34
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
33
+ getAttributes: (match) => ({ start: 1, type: 'i' }),
34
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
35
35
  }),
36
36
  wrappingInputRule({
37
37
  find: /^([I])\.\s$/,
38
38
  type: this.type,
39
- getAttributes: match => ({ start: 1, type: 'I' }),
40
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
39
+ getAttributes: (match) => ({ start: 1, type: 'I' }),
40
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
41
41
  }),
42
42
  wrappingInputRule({
43
43
  find: /^([A-Z])\.\s$/,
44
44
  type: this.type,
45
- getAttributes: match => ({ start: match[1].charCodeAt(0) - 64, type: 'A' }),
46
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
45
+ getAttributes: (match) => ({ start: match[1].charCodeAt(0) - 64, type: 'A' }),
46
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
47
47
  }),
48
48
  wrappingInputRule({
49
49
  find: /^([a-z])\.\s$/,
50
50
  type: this.type,
51
- getAttributes: match => ({ start: match[1].charCodeAt(0) - 96, type: 'a' }),
52
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
51
+ getAttributes: (match) => ({ start: match[1].charCodeAt(0) - 96, type: 'a' }),
52
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
53
53
  }),
54
54
  wrappingInputRule({
55
55
  find: /^([ㄱ-ㅎ])\.\s$/,
56
56
  type: this.type,
57
- getAttributes: match => ({
58
- start: 1 + ['ㄱ', 'ㄴ', 'ㄷ', 'ㄹ', 'ㅁ', 'ㅂ', 'ㅅ', 'ㅇ', 'ㅈ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ'].indexOf(match[1]),
57
+ getAttributes: (match) => ({
58
+ start: 1 +
59
+ [
60
+ 'ㄱ',
61
+ 'ㄴ',
62
+ 'ㄷ',
63
+ 'ㄹ',
64
+ 'ㅁ',
65
+ 'ㅂ',
66
+ 'ㅅ',
67
+ 'ㅇ',
68
+ 'ㅈ',
69
+ 'ㅊ',
70
+ 'ㅋ',
71
+ 'ㅌ',
72
+ 'ㅍ',
73
+ 'ㅎ'
74
+ ].indexOf(match[1]),
59
75
  type: 'kors'
60
76
  }),
61
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
77
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
62
78
  }),
63
79
  wrappingInputRule({
64
80
  find: /^([가-하])\.\s$/,
65
81
  type: this.type,
66
- getAttributes: match => ({
67
- start: 1 + ['가', '나', '다', '라', '마', '바', '사', '아', '자', '차', '카', '타', '파', '하'].indexOf(match[1]),
82
+ getAttributes: (match) => ({
83
+ start: 1 +
84
+ [
85
+ '가',
86
+ '나',
87
+ '다',
88
+ '라',
89
+ '마',
90
+ '바',
91
+ '사',
92
+ '아',
93
+ '자',
94
+ '차',
95
+ '카',
96
+ '타',
97
+ '파',
98
+ '하'
99
+ ].indexOf(match[1]),
68
100
  type: 'korc'
69
101
  }),
70
- joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],
71
- }),
102
+ joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]
103
+ })
72
104
  ];
73
105
  },
74
106
  addCommands() {
75
107
  return {
76
108
  toggleOrderedList: (option) => (context) => {
77
109
  return toggleList(this.name, this.options.itemTypeName, option)(context);
78
- },
110
+ }
79
111
  };
80
- },
112
+ }
81
113
  });
@@ -1,22 +1,21 @@
1
1
  @counter-style kors {
2
- system: cyclic;
3
- symbols: "ㄱ." "ㄴ." "ㄷ." "ㄹ." "ㅁ." "ㅂ." "ㅅ." "ㅇ." "ㅈ." "ㅊ." "ㅋ." "ㅌ." "ㅍ." "ㅎ.";
4
- suffix: " ";
2
+ system: cyclic;
3
+ symbols: 'ㄱ.' 'ㄴ.' 'ㄷ.' 'ㄹ.' 'ㅁ.' 'ㅂ.' 'ㅅ.' 'ㅇ.' 'ㅈ.' 'ㅊ.' 'ㅋ.' 'ㅌ.' 'ㅍ.' 'ㅎ.';
4
+ suffix: ' ';
5
5
  }
6
6
 
7
7
  @counter-style korc {
8
- system: cyclic;
9
- symbols: "가." "나." "다." "라." "마." "바." "사." "아." "자." "차." "카." "타." "파." "하.";
10
- suffix: " ";
8
+ system: cyclic;
9
+ symbols: '가.' '나.' '다.' '라.' '마.' '바.' '사.' '아.' '자.' '차.' '카.' '타.' '파.' '하.';
10
+ suffix: ' ';
11
11
  }
12
12
 
13
13
  .ProseMirror {
14
- ol[type="kors"] {
15
- list-style-type: kors;
16
- }
14
+ ol[type='kors'] {
15
+ list-style-type: kors;
16
+ }
17
17
 
18
- ol[type="korc"] {
19
- list-style-type: korc;
20
- }
18
+ ol[type='korc'] {
19
+ list-style-type: korc;
20
+ }
21
21
  }
22
-
@@ -1,7 +1,7 @@
1
1
  import { canJoin } from 'prosemirror-transform';
2
- import { getNodeType, findParentNode, isList } from "@tiptap/core";
2
+ import { getNodeType, findParentNode, isList } from '@tiptap/core';
3
3
  const joinListBackwards = (tr, listType) => {
4
- const list = findParentNode(node => node.type === listType)(tr.selection);
4
+ const list = findParentNode((node) => node.type === listType)(tr.selection);
5
5
  if (!list)
6
6
  return true;
7
7
  const before = tr.doc.resolve(Math.max(0, list.pos - 1)).before(list.depth);
@@ -15,7 +15,7 @@ const joinListBackwards = (tr, listType) => {
15
15
  return true;
16
16
  };
17
17
  const joinListForwards = (tr, listType) => {
18
- const list = findParentNode(node => node.type === listType)(tr.selection);
18
+ const list = findParentNode((node) => node.type === listType)(tr.selection);
19
19
  if (!list)
20
20
  return true;
21
21
  const after = tr.doc.resolve(list.start).after(list.depth);
@@ -37,13 +37,13 @@ export default (listTypeOrName, itemTypeOrName, attrs) => ({ editor, tr, state,
37
37
  const range = $from.blockRange($to);
38
38
  if (!range)
39
39
  return false;
40
- const parentList = findParentNode(node => isList(node.type.name, extensions))(selection);
40
+ const parentList = findParentNode((node) => isList(node.type.name, extensions))(selection);
41
41
  if (range.depth >= 1 && parentList && range.depth - parentList.depth <= 1) {
42
42
  if (parentList.node.type === listType && parentList?.node?.attrs?.type === attrs?.type)
43
43
  return commands.liftListItem(itemType);
44
- if (isList(parentList.node.type.name, extensions)
45
- && listType.validContent(parentList.node.content)
46
- && dispatch)
44
+ if (isList(parentList.node.type.name, extensions) &&
45
+ listType.validContent(parentList.node.content) &&
46
+ dispatch)
47
47
  return chain()
48
48
  .command(() => {
49
49
  tr.setNodeMarkup(parentList.pos, listType, attrs);
@@ -1,3 +1,3 @@
1
- import type { KeyboardShortcutCommand } from "@tiptap/core";
1
+ import type { KeyboardShortcutCommand } from '@tiptap/core';
2
2
  export declare const deleteTable: KeyboardShortcutCommand;
3
3
  export default deleteTable;
@@ -1,5 +1,5 @@
1
- import { isColumnSelected, isRowSelected, isTableSelected } from "./util";
2
- import { TableMap } from "prosemirror-tables";
1
+ import { isColumnSelected, isRowSelected, isTableSelected } from './util';
2
+ import { TableMap } from 'prosemirror-tables';
3
3
  export const deleteTable = ({ editor }) => {
4
4
  const { selection } = editor.state;
5
5
  if (!selection || !selection.$anchorCell)
@@ -9,7 +9,11 @@ export default BuiltInTable.extend({
9
9
  return [
10
10
  'div',
11
11
  { class: 'node-table' },
12
- ['div', { class: `scrollable` }, ['table', { class: `as-table render-wrapper` }, ['tbody', 0]]],
12
+ [
13
+ 'div',
14
+ { class: `scrollable` },
15
+ ['table', { class: `as-table render-wrapper` }, ['tbody', 0]]
16
+ ]
13
17
  ];
14
18
  },
15
19
  addProseMirrorPlugins() {
@@ -43,9 +47,9 @@ export default BuiltInTable.extend({
43
47
  index++;
44
48
  });
45
49
  return DecorationSet.create(doc, decorations);
46
- },
47
- },
48
- }),
50
+ }
51
+ }
52
+ })
49
53
  ];
50
54
  },
51
55
  addKeyboardShortcuts() {
@@ -63,7 +67,7 @@ export default BuiltInTable.extend({
63
67
  Backspace: deleteTable,
64
68
  'Mod-Backspace': deleteTable,
65
69
  Delete: deleteTable,
66
- 'Mod-Delete': deleteTable,
70
+ 'Mod-Delete': deleteTable
67
71
  };
68
- },
72
+ }
69
73
  }).configure({ resizable: true, lastColumnResizable: false });
@@ -1,16 +1,17 @@
1
1
  .ProseMirror table {
2
- td, th {
3
- position: relative;
4
- min-width: 8px;
5
- padding: 4px 8px;
6
- text-align: left;
7
- vertical-align: center;
8
- border: 1px solid var(--primary-light3) !important;
9
- transition: all 0.1s ease-in-out;
10
- font-weight: normal;
2
+ td,
3
+ th {
4
+ position: relative;
5
+ min-width: 8px;
6
+ padding: 4px 8px;
7
+ text-align: left;
8
+ vertical-align: center;
9
+ border: 1px solid var(--primary-light3) !important;
10
+ transition: all 0.1s ease-in-out;
11
+ font-weight: normal;
11
12
 
12
- > * {
13
- margin-bottom: 0;
14
- }
15
- }
13
+ > * {
14
+ margin-bottom: 0;
15
+ }
16
+ }
16
17
  }
@@ -1,72 +1,74 @@
1
1
  $grip-margin: 3px;
2
2
 
3
3
  .ProseMirror table {
4
- .grip-column {
5
- position: absolute;
6
- top: -0.7em;
7
- left: 0;
8
- z-index: 10;
9
- display: block;
10
- width: calc(100% - 2 * #{$grip-margin});
11
- height: 0.4em;
12
- margin: 0 $grip-margin 3px $grip-margin;
13
- background: var(--primary-light3);
14
- opacity: 0;
15
- border-radius: 10px;
4
+ .grip-column {
5
+ position: absolute;
6
+ top: -0.7em;
7
+ left: 0;
8
+ z-index: 10;
9
+ display: block;
10
+ width: calc(100% - 2 * #{$grip-margin});
11
+ height: 0.4em;
12
+ margin: 0 $grip-margin 3px $grip-margin;
13
+ background: var(--primary-light3);
14
+ opacity: 0;
15
+ border-radius: 10px;
16
16
 
17
- transition: all 0.1s ease-in-out;
17
+ transition: all 0.1s ease-in-out;
18
18
 
19
- &:hover,
20
- &.selected {
21
- background: var(--primary-light6);
22
- }
23
- }
19
+ &:hover,
20
+ &.selected {
21
+ background: var(--primary-light6);
22
+ }
23
+ }
24
24
 
25
- .grip-row {
26
- position: absolute;
27
- top: 0;
28
- left: -0.7em;
29
- z-index: 10;
30
- display: block;
31
- width: 0.4em;
32
- height: calc(100% - 2 * #{$grip-margin});
33
- margin: $grip-margin 3px $grip-margin 0;
34
- background: var(--primary-light3);
35
- opacity: 0;
36
- border-radius: 10px;
25
+ .grip-row {
26
+ position: absolute;
27
+ top: 0;
28
+ left: -0.7em;
29
+ z-index: 10;
30
+ display: block;
31
+ width: 0.4em;
32
+ height: calc(100% - 2 * #{$grip-margin});
33
+ margin: $grip-margin 3px $grip-margin 0;
34
+ background: var(--primary-light3);
35
+ opacity: 0;
36
+ border-radius: 10px;
37
37
 
38
- transition: all 0.1s ease-in-out;
38
+ transition: all 0.1s ease-in-out;
39
39
 
40
- &:hover,
41
- &.selected {
42
- background: var(--primary-light6);
43
- }
44
- }
40
+ &:hover,
41
+ &.selected {
42
+ background: var(--primary-light6);
43
+ }
44
+ }
45
45
 
46
- .grip-table {
47
- position: absolute;
48
- top: -0.8em;
49
- left: -0.8em;
50
- z-index: 10;
51
- display: block;
52
- width: 0.6em;
53
- height: 0.6em;
54
- background: var(--primary-light3);
55
- border-radius: 50%;
56
- opacity: 0;
46
+ .grip-table {
47
+ position: absolute;
48
+ top: -0.8em;
49
+ left: -0.8em;
50
+ z-index: 10;
51
+ display: block;
52
+ width: 0.6em;
53
+ height: 0.6em;
54
+ background: var(--primary-light3);
55
+ border-radius: 50%;
56
+ opacity: 0;
57
57
 
58
- transition: all 0.1s ease-in-out;
58
+ transition: all 0.1s ease-in-out;
59
59
 
60
- &:hover,
61
- &.selected {
62
- background: var(--primary-light6);
63
- }
64
- }
60
+ &:hover,
61
+ &.selected {
62
+ background: var(--primary-light6);
63
+ }
64
+ }
65
65
 
66
- .editable & {
67
- .grip-column, .grip-row, .grip-table {
68
- opacity: 1;
69
- cursor: pointer;
70
- }
71
- }
66
+ .editable & {
67
+ .grip-column,
68
+ .grip-row,
69
+ .grip-table {
70
+ opacity: 1;
71
+ cursor: pointer;
72
+ }
73
+ }
72
74
  }
@@ -1,28 +1,26 @@
1
1
  .ProseMirror {
2
- table .column-resize-handle {
3
- position: absolute;
4
- top: 0;
5
- right: -2px;
6
- bottom: -2px;
7
- width: 4px;
8
- pointer-events: none;
9
- background-color: var(--primary-light6);
10
- opacity: 0;
2
+ table .column-resize-handle {
3
+ position: absolute;
4
+ top: 0;
5
+ right: -2px;
6
+ bottom: -2px;
7
+ width: 4px;
8
+ pointer-events: none;
9
+ background-color: var(--primary-light6);
10
+ opacity: 0;
11
11
 
12
- .editable & {
13
- opacity: 1;
14
- }
15
- }
12
+ .editable & {
13
+ opacity: 1;
14
+ }
15
+ }
16
16
 
17
- &.resize-cursor {
18
- pointer-events: none;
17
+ &.resize-cursor {
18
+ pointer-events: none;
19
19
 
20
- .editable & {
21
- pointer-events: initial;
22
- cursor: ew-resize;
23
- cursor: col-resize; /* stylelint-disable declaration-block-no-duplicate-properties */
24
- }
25
- }
20
+ .editable & {
21
+ pointer-events: initial;
22
+ cursor: ew-resize;
23
+ cursor: col-resize; /* stylelint-disable declaration-block-no-duplicate-properties */
24
+ }
25
+ }
26
26
  }
27
-
28
-
@@ -1,83 +1,86 @@
1
1
  .ProseMirror {
2
- .tableWrapper {
3
- position: relative;
4
- margin-top: 0.75em;
5
- scrollbar-width: thin;
6
- scrollbar-color: transparent transparent;
7
- transition: all 0.1s ease-in-out;
8
- }
2
+ .tableWrapper {
3
+ position: relative;
4
+ margin-top: 0.75em;
5
+ scrollbar-width: thin;
6
+ scrollbar-color: transparent transparent;
7
+ transition: all 0.1s ease-in-out;
8
+ }
9
9
 
10
- .scrollable {
11
- padding-left: 1em;
12
- margin-left: -1em;
13
- overflow: auto hidden;
14
- border-left: 1px solid transparent;
15
- border-right: 1px solid transparent;
16
- transition: border 250ms ease-in-out 0s;
17
- }
10
+ .scrollable {
11
+ padding-left: 1em;
12
+ margin-left: -1em;
13
+ overflow: auto hidden;
14
+ border-left: 1px solid transparent;
15
+ border-right: 1px solid transparent;
16
+ transition: border 250ms ease-in-out 0s;
17
+ }
18
18
 
19
- .scrollable-shadow {
20
- position: absolute;
21
- top: 0;
22
- bottom: 0;
23
- left: -1em;
24
- width: 16px;
25
- transition: box-shadow 250ms ease-in-out 0s;
26
- border-width: 0 0 0 1em;
27
- border-style: solid;
28
- border-color: transparent;
29
- border-image: initial;
30
- pointer-events: none;
19
+ .scrollable-shadow {
20
+ position: absolute;
21
+ top: 0;
22
+ bottom: 0;
23
+ left: -1em;
24
+ width: 16px;
25
+ transition: box-shadow 250ms ease-in-out 0s;
26
+ border-width: 0 0 0 1em;
27
+ border-style: solid;
28
+ border-color: transparent;
29
+ border-image: initial;
30
+ pointer-events: none;
31
31
 
32
- &.left {
33
- box-shadow: 16px 0 16px -16px inset rgb(0 0 0 / 25%);
34
- }
32
+ &.left {
33
+ box-shadow: 16px 0 16px -16px inset rgb(0 0 0 / 25%);
34
+ }
35
35
 
36
- &.right {
37
- right: 0;
38
- left: auto;
39
- box-shadow: rgb(0 0 0 / 25%) -16px 0 16px -16px inset;
36
+ &.right {
37
+ right: 0;
38
+ left: auto;
39
+ box-shadow: rgb(0 0 0 / 25%) -16px 0 16px -16px inset;
40
40
 
41
- &.is-editable {
42
- &::after {
43
- position: absolute;
44
- top: 0;
45
- right: 0;
46
- width: 1em;
47
- height: 1em;
48
- background-color: var(--semi-color-nav-bg);
49
- content: '';
50
- }
51
- }
52
- }
53
- }
41
+ &.is-editable {
42
+ &::after {
43
+ position: absolute;
44
+ top: 0;
45
+ right: 0;
46
+ width: 1em;
47
+ height: 1em;
48
+ background-color: var(--semi-color-nav-bg);
49
+ content: '';
50
+ }
51
+ }
52
+ }
53
+ }
54
54
 
55
- table {
56
- margin-top: 1em;
57
- border-radius: 4px;
58
- border-collapse: collapse;
59
- box-sizing: border-box;
60
- width: 100% !important;
55
+ table {
56
+ margin-top: 1em;
57
+ border-radius: 4px;
58
+ border-collapse: collapse;
59
+ box-sizing: border-box;
60
+ width: 100% !important;
61
61
 
62
- h1, h2, h3, p {
63
- margin: 0;
64
- }
62
+ h1,
63
+ h2,
64
+ h3,
65
+ p {
66
+ margin: 0;
67
+ }
65
68
 
66
- &.is-readonly {
67
- margin-top: 0;
68
- }
69
- }
69
+ &.is-readonly {
70
+ margin-top: 0;
71
+ }
72
+ }
70
73
  }
71
74
 
72
75
  .editable {
73
- .ProseMirror {
74
- .tableWrapper {
75
- padding: 10px;
76
- }
76
+ .ProseMirror {
77
+ .tableWrapper {
78
+ padding: 10px;
79
+ }
77
80
 
78
- .selectedCell {
79
- border-style: double;
80
- background: var(--primary-light3);
81
- }
82
- }
81
+ .selectedCell {
82
+ border-style: double;
83
+ background: var(--primary-light3);
84
+ }
85
+ }
83
86
  }
@@ -12,9 +12,9 @@ export default BuiltInTableCell.extend({
12
12
  parseHTML: (element) => {
13
13
  const colwidth = element.getAttribute('colwidth');
14
14
  return colwidth ? colwidth.split(',').map((item) => parseInt(item, 10)) : null;
15
- },
15
+ }
16
16
  },
17
- style: { default: null },
17
+ style: { default: null }
18
18
  };
19
19
  },
20
20
  addProseMirrorPlugins() {
@@ -72,9 +72,9 @@ export default BuiltInTableCell.extend({
72
72
  });
73
73
  }
74
74
  return DecorationSet.create(doc, decorations);
75
- },
76
- },
77
- }),
75
+ }
76
+ }
77
+ })
78
78
  ];
79
- },
79
+ }
80
80
  });