@modusoperandi/licit 1.0.4 → 1.0.7

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 (360) hide show
  1. package/BlockquoteInsertNewLineCommand.js +16 -18
  2. package/BlockquoteInsertNewLineCommand.js.flow +76 -77
  3. package/BlockquoteNodeSpec.js +3 -4
  4. package/BlockquoteNodeSpec.js.flow +29 -30
  5. package/BlockquoteToggleCommand.js +16 -17
  6. package/BlockquoteToggleCommand.js.flow +56 -56
  7. package/BookmarkNodeSpec.js +2 -2
  8. package/BookmarkNodeSpec.js.flow +39 -39
  9. package/BulletListNodeSpec.js.flow +61 -61
  10. package/CZIProseMirror.js.flow +90 -90
  11. package/CodeBlockCommand.js +17 -18
  12. package/CodeBlockCommand.js.flow +65 -65
  13. package/CodeBlockNodeSpec.js.flow +24 -24
  14. package/CodeMarkSpec.js.flow +14 -14
  15. package/ContentPlaceholderPlugin.js +20 -21
  16. package/ContentPlaceholderPlugin.js.flow +185 -187
  17. package/CursorPlaceholderPlugin.js +11 -11
  18. package/CursorPlaceholderPlugin.js.flow +115 -115
  19. package/DocLayoutCommand.js +18 -21
  20. package/DocLayoutCommand.js.flow +97 -99
  21. package/DocNodeSpec.js.flow +64 -64
  22. package/EMMarkSpec.js.flow +14 -14
  23. package/EditorCommands.js.flow +126 -126
  24. package/EditorKeyMap.js +0 -1
  25. package/EditorKeyMap.js.flow +185 -187
  26. package/EditorMarks.js +2 -2
  27. package/EditorMarks.js.flow +71 -71
  28. package/EditorNodes.js +2 -3
  29. package/EditorNodes.js.flow +58 -59
  30. package/EditorPageLayoutPlugin.js +10 -10
  31. package/EditorPageLayoutPlugin.js.flow +67 -67
  32. package/EditorPlugins.js.flow +8 -8
  33. package/EditorSchema.js.flow +12 -12
  34. package/EditorState.js.flow +7 -7
  35. package/FontSizeMarkSpec.js.flow +49 -49
  36. package/FontTypeMarkSpec.js +1 -1
  37. package/FontTypeMarkSpec.js.flow +80 -80
  38. package/HTMLMutator.js +6 -7
  39. package/HTMLMutator.js.flow +59 -59
  40. package/HardBreakNodeSpec.js.flow +15 -15
  41. package/HeadingNodeSpec.js +3 -13
  42. package/HeadingNodeSpec.js.flow +42 -52
  43. package/HistoryRedoCommand.js +15 -16
  44. package/HistoryRedoCommand.js.flow +41 -41
  45. package/HistoryUndoCommand.js +15 -16
  46. package/HistoryUndoCommand.js.flow +41 -41
  47. package/HorizontalRuleCommand.js +15 -16
  48. package/HorizontalRuleCommand.js.flow +71 -71
  49. package/HorizontalRuleNodeSpec.js.flow +39 -39
  50. package/ImageUploadPlaceholderPlugin.js +15 -17
  51. package/ImageUploadPlaceholderPlugin.js.flow +190 -192
  52. package/LinkMarkSpec.js +6 -1
  53. package/LinkMarkSpec.js.flow +37 -32
  54. package/LinkSetURLCommand.js +130 -60
  55. package/LinkSetURLCommand.js.flow +141 -117
  56. package/LinkTooltipPlugin.js +122 -34
  57. package/LinkTooltipPlugin.js.flow +261 -190
  58. package/ListItemInsertNewLineCommand.js +16 -18
  59. package/ListItemInsertNewLineCommand.js.flow +76 -77
  60. package/ListItemMergeCommand.js +24 -24
  61. package/ListItemMergeCommand.js.flow +198 -199
  62. package/ListItemNodeSpec.js.flow +52 -52
  63. package/ListSplitCommand.js +15 -16
  64. package/ListSplitCommand.js.flow +54 -54
  65. package/ListToggleCommand.js +19 -20
  66. package/ListToggleCommand.js.flow +99 -99
  67. package/MarkNames.js.flow +18 -18
  68. package/MarksClearCommand.js +17 -18
  69. package/MarksClearCommand.js.flow +65 -65
  70. package/MathEditCommand.js +17 -19
  71. package/MathEditCommand.js.flow +119 -120
  72. package/MathNodeSpec.js.flow +46 -46
  73. package/NodeNames.js.flow +23 -23
  74. package/OrderedListNodeSpec.js +2 -2
  75. package/OrderedListNodeSpec.js.flow +132 -132
  76. package/ParagraphNodeSpec.js +11 -2
  77. package/ParagraphNodeSpec.js.flow +163 -156
  78. package/ParagraphSpacingCommand.js +21 -23
  79. package/ParagraphSpacingCommand.js.flow +139 -144
  80. package/PrintCommand.js +17 -18
  81. package/PrintCommand.js.flow +53 -53
  82. package/SelectionPlaceholderPlugin.js +11 -11
  83. package/SelectionPlaceholderPlugin.js.flow +131 -131
  84. package/SpacerMarkSpec.js +2 -2
  85. package/SpacerMarkSpec.js.flow +47 -47
  86. package/StrikeMarkSpec.js.flow +21 -21
  87. package/StrongMarkSpec.js.flow +25 -25
  88. package/StyleView.js +5 -7
  89. package/StyleView.js.flow +18 -19
  90. package/TableBackgroundColorCommand.js +34 -23
  91. package/TableBackgroundColorCommand.js.flow +80 -75
  92. package/TableBorderColorCommand.js +34 -23
  93. package/TableBorderColorCommand.js.flow +81 -75
  94. package/TableCellColorCommand.js +20 -21
  95. package/TableCellColorCommand.js.flow +74 -75
  96. package/TableCellMenuPlugin.js +19 -19
  97. package/TableCellMenuPlugin.js.flow +130 -132
  98. package/TableInsertCommand.js +19 -22
  99. package/TableInsertCommand.js.flow +118 -120
  100. package/TableMergeCellsCommand.js +19 -19
  101. package/TableMergeCellsCommand.js.flow +113 -112
  102. package/TableNodesSpecs.js +4 -2
  103. package/TableNodesSpecs.js.flow +80 -78
  104. package/TablePlugins.js.flow +14 -14
  105. package/TableResizePlugin.js +20 -20
  106. package/TableResizePlugin.js.flow +631 -631
  107. package/TextColorMarkSpec.js.flow +35 -35
  108. package/TextHighlightMarkSpec.js.flow +38 -38
  109. package/TextInsertTabSpaceCommand.js +15 -16
  110. package/TextInsertTabSpaceCommand.js.flow +106 -106
  111. package/TextNoWrapMarkSpec.js.flow +14 -14
  112. package/TextNodeSpec.js.flow +7 -7
  113. package/TextSelectionMarkSpec.js.flow +24 -24
  114. package/TextSubMarkSpec.js.flow +20 -20
  115. package/TextSuperMarkSpec.js.flow +20 -20
  116. package/TextUnderlineMarkSpec.js.flow +27 -27
  117. package/Types.js +6 -0
  118. package/Types.js.flow +77 -75
  119. package/WebFontLoader.js +6 -7
  120. package/WebFontLoader.js.flow +22 -22
  121. package/blockQuoteInputRule.js.flow +36 -36
  122. package/bom.xml +17223 -25722
  123. package/browser.js.flow +7 -7
  124. package/buildEditorPlugins.js +6 -7
  125. package/buildEditorPlugins.js.flow +49 -49
  126. package/buildInputRules.js +8 -4
  127. package/buildInputRules.js.flow +85 -81
  128. package/client/CollabConnector.js +20 -20
  129. package/client/CollabConnector.js.flow +90 -90
  130. package/client/EditorConnection.js +10 -9
  131. package/client/EditorConnection.js.flow +324 -323
  132. package/client/Licit.js +78 -115
  133. package/client/Licit.js.flow +611 -643
  134. package/client/Licit.test.js +49 -39
  135. package/client/Licit.test.js.flow +104 -98
  136. package/client/Reporter.js +5 -6
  137. package/client/Reporter.js.flow +37 -37
  138. package/client/SimpleConnector.js +5 -5
  139. package/client/SimpleConnector.js.flow +61 -61
  140. package/client/http.js +0 -6
  141. package/client/http.js.flow +62 -70
  142. package/client/licit.css +12 -12
  143. package/client/throttle.js +8 -2
  144. package/client/throttle.js.flow +27 -27
  145. package/convertFromDOMElement.js +2 -4
  146. package/convertFromDOMElement.js.flow +33 -36
  147. package/convertFromHTML.js +2 -3
  148. package/convertFromHTML.js.flow +15 -17
  149. package/convertFromJSON.js +1 -2
  150. package/convertFromJSON.js.flow +55 -56
  151. package/convertToCSSPTValue.js +6 -10
  152. package/convertToCSSPTValue.js.flow +19 -22
  153. package/convertToJSON.js.flow +7 -7
  154. package/createCommand.js +16 -17
  155. package/createCommand.js.flow +62 -62
  156. package/createEditorKeyMap.js +2 -2
  157. package/createEditorKeyMap.js.flow +94 -94
  158. package/createEmptyEditorState.js +2 -3
  159. package/createEmptyEditorState.js.flow +29 -31
  160. package/createTableResizingPlugin.js +6 -6
  161. package/createTableResizingPlugin.js.flow +86 -86
  162. package/findActionableCell.js.flow +74 -74
  163. package/findActiveMark.js +1 -1
  164. package/findActiveMark.js.flow +32 -32
  165. package/hyphenize.js.flow +17 -17
  166. package/index.d.ts +165 -165
  167. package/index.js.flow +10 -10
  168. package/insertTable.js +0 -3
  169. package/insertTable.js.flow +54 -56
  170. package/isEditorStateEmpty.js.flow +32 -32
  171. package/isTableNode.js.flow +15 -15
  172. package/joinDown.js +1 -3
  173. package/joinDown.js.flow +25 -27
  174. package/joinListNode.js.flow +55 -55
  175. package/joinUp.js +1 -3
  176. package/joinUp.js.flow +37 -39
  177. package/keymaps.js.flow +185 -185
  178. package/lookUpElement.js +2 -1
  179. package/lookUpElement.js.flow +14 -14
  180. package/nodeAt.js.flow +12 -12
  181. package/normalizeHTML.js +3 -1
  182. package/normalizeHTML.js.flow +80 -78
  183. package/package.json +162 -156
  184. package/patchAnchorElements.js +1 -1
  185. package/patchAnchorElements.js.flow +38 -38
  186. package/patchBreakElements.js +3 -2
  187. package/patchBreakElements.js.flow +22 -22
  188. package/patchElementInlineStyles.js +1 -1
  189. package/patchElementInlineStyles.js.flow +92 -92
  190. package/patchListElements.js +4 -4
  191. package/patchListElements.js.flow +276 -276
  192. package/patchMathElements.js +5 -7
  193. package/patchMathElements.js.flow +58 -60
  194. package/patchParagraphElements.js.flow +20 -20
  195. package/patchStyleElements.js +1 -1
  196. package/patchStyleElements.js.flow +197 -196
  197. package/patchTableElements.js +2 -3
  198. package/patchTableElements.js.flow +88 -89
  199. package/rebaseDocWithSteps.js.flow +42 -42
  200. package/sanitizeURL.js +1 -1
  201. package/sanitizeURL.js.flow +13 -13
  202. package/splitListItem.js +3 -3
  203. package/splitListItem.js.flow +191 -191
  204. package/styles.css +19 -19
  205. package/styles0.css +29 -29
  206. package/toClosestFontPtSize.js.flow +22 -22
  207. package/toSafeHTMLDocument.js.flow +9 -9
  208. package/toggleBlockquote.js +4 -5
  209. package/toggleBlockquote.js.flow +101 -108
  210. package/toggleCodeBlock.js +6 -6
  211. package/toggleCodeBlock.js.flow +102 -102
  212. package/ui/AlertInfo.js +15 -16
  213. package/ui/AlertInfo.js.flow +64 -64
  214. package/ui/BookmarkNodeView.js +20 -21
  215. package/ui/BookmarkNodeView.js.flow +66 -66
  216. package/ui/CommandButton.js +15 -16
  217. package/ui/CommandButton.js.flow +68 -68
  218. package/ui/CommandMenu.js +19 -20
  219. package/ui/CommandMenu.js.flow +75 -75
  220. package/ui/CommandMenuButton.js +23 -25
  221. package/ui/CommandMenuButton.js.flow +130 -131
  222. package/ui/CustomEditorView.js +20 -20
  223. package/ui/CustomEditorView.js.flow +29 -28
  224. package/ui/CustomMenu.js +11 -12
  225. package/ui/CustomMenu.js.flow +17 -17
  226. package/ui/CustomMenuItem.js +16 -18
  227. package/ui/CustomMenuItem.js.flow +36 -36
  228. package/ui/CustomNodeView.js +29 -19
  229. package/ui/CustomNodeView.js.flow +207 -200
  230. package/ui/CustomRadioButton.js +18 -21
  231. package/ui/CustomRadioButton.js.flow +64 -65
  232. package/ui/DocLayoutEditor.js +18 -20
  233. package/ui/DocLayoutEditor.js.flow +145 -146
  234. package/ui/Editor.js +30 -28
  235. package/ui/Editor.js.flow +287 -288
  236. package/ui/EditorFrameset.js +13 -14
  237. package/ui/EditorFrameset.js.flow +81 -81
  238. package/ui/EditorToolbar.js +36 -42
  239. package/ui/EditorToolbar.js.flow +199 -218
  240. package/ui/EditorToolbarConfig.js +5 -5
  241. package/ui/EditorToolbarConfig.js.flow +164 -164
  242. package/ui/FontSizeCommandMenuButton.js +14 -15
  243. package/ui/FontSizeCommandMenuButton.js.flow +66 -66
  244. package/ui/FontTypeCommandMenuButton.js +15 -17
  245. package/ui/FontTypeCommandMenuButton.js.flow +60 -61
  246. package/ui/Frag.js +11 -12
  247. package/ui/Frag.js.flow +13 -13
  248. package/ui/Icon.js +21 -24
  249. package/ui/Icon.js.flow +89 -89
  250. package/ui/ImageInlineEditor.js +14 -15
  251. package/ui/ImageInlineEditor.js.flow +67 -67
  252. package/ui/KeyCodes.js.flow +12 -12
  253. package/ui/LinkTooltip.js +68 -34
  254. package/ui/LinkTooltip.js.flow +118 -85
  255. package/ui/LinkURLEditor.js +160 -43
  256. package/ui/LinkURLEditor.js.flow +243 -117
  257. package/ui/ListItemNodeView.js +6 -7
  258. package/ui/ListItemNodeView.js.flow +98 -98
  259. package/ui/ListTypeButton.js +23 -27
  260. package/ui/ListTypeButton.js.flow +128 -131
  261. package/ui/ListTypeCommandButton.js +14 -15
  262. package/ui/ListTypeCommandButton.js.flow +85 -85
  263. package/ui/ListTypeMenu.js +21 -22
  264. package/ui/ListTypeMenu.js.flow +70 -70
  265. package/ui/LoadingIndicator.js +11 -12
  266. package/ui/LoadingIndicator.js.flow +20 -20
  267. package/ui/MathEditor.js +17 -22
  268. package/ui/MathEditor.js.flow +72 -78
  269. package/ui/MathInlineEditor.js +20 -21
  270. package/ui/MathInlineEditor.js.flow +101 -102
  271. package/ui/MathNodeView.js +29 -30
  272. package/ui/MathNodeView.js.flow +176 -186
  273. package/ui/PasteMenu.js +19 -23
  274. package/ui/PasteMenu.js.flow +53 -57
  275. package/ui/ResizeObserver.js +1 -1
  276. package/ui/ResizeObserver.js.flow +106 -106
  277. package/ui/RichTextEditor.js +17 -18
  278. package/ui/RichTextEditor.js.flow +133 -133
  279. package/ui/SelectionObserver.js +8 -9
  280. package/ui/SelectionObserver.js.flow +134 -134
  281. package/ui/TableCellMenu.js +14 -15
  282. package/ui/TableCellMenu.js.flow +51 -51
  283. package/ui/TableGridSizeEditor.js +30 -33
  284. package/ui/TableGridSizeEditor.js.flow +187 -184
  285. package/ui/TableNodeView.js +18 -17
  286. package/ui/TableNodeView.js.flow +25 -25
  287. package/ui/bindScrollHandler.js +2 -1
  288. package/ui/bindScrollHandler.js.flow +46 -46
  289. package/ui/canUseCSSFont.js +5 -4
  290. package/ui/canUseCSSFont.js.flow +42 -43
  291. package/ui/czi-body-layout-editor.css +16 -16
  292. package/ui/czi-bookmark-view.css +10 -10
  293. package/ui/czi-cursor-placeholder.css +36 -36
  294. package/ui/czi-custom-menu-button.css +18 -18
  295. package/ui/czi-custom-menu-item.css +30 -30
  296. package/ui/czi-custom-menu.css +8 -8
  297. package/ui/czi-custom-radio-button.css +80 -80
  298. package/ui/czi-custom-scrollbar.css +21 -21
  299. package/ui/czi-editor-frameset.css +81 -81
  300. package/ui/czi-editor-toolbar.css +122 -122
  301. package/ui/czi-editor.css +217 -220
  302. package/ui/czi-form.css +201 -107
  303. package/ui/czi-frag.css +3 -3
  304. package/ui/czi-heading.css +40 -40
  305. package/ui/czi-icon.css +72 -72
  306. package/ui/czi-image-resize-box.css +165 -165
  307. package/ui/czi-image-upload-editor.css +57 -57
  308. package/ui/czi-image-upload-placeholder.css +50 -50
  309. package/ui/czi-image-url-editor.css +38 -38
  310. package/ui/czi-image-view.css +121 -125
  311. package/ui/czi-indent.css +137 -137
  312. package/ui/czi-inline-editor.css +20 -20
  313. package/ui/czi-link-tooltip.css +112 -71
  314. package/ui/czi-list.css +406 -410
  315. package/ui/czi-loading-indicator.css +66 -111
  316. package/ui/czi-math-view.css +62 -62
  317. package/ui/czi-selection-placeholder.css +24 -24
  318. package/ui/czi-table-cell-menu.css +16 -14
  319. package/ui/czi-table-grid-size-editor.css +37 -37
  320. package/ui/czi-table.css +87 -87
  321. package/ui/czi-vars.css +2 -2
  322. package/ui/findActiveFontSize.js +2 -1
  323. package/ui/findActiveFontSize.js.flow +55 -58
  324. package/ui/findActiveFontType.js +4 -3
  325. package/ui/findActiveFontType.js.flow +35 -38
  326. package/ui/fonts.css +460 -460
  327. package/ui/handleEditorDrop.js +1 -1
  328. package/ui/handleEditorDrop.js.flow +28 -28
  329. package/ui/handleEditorKeyDown.js +1 -1
  330. package/ui/handleEditorKeyDown.js.flow +39 -39
  331. package/ui/handleEditorPaste.js +1 -1
  332. package/ui/handleEditorPaste.js.flow +33 -33
  333. package/ui/htmlElementToRect.js.flow +18 -18
  334. package/ui/icon-font.css +9 -9
  335. package/ui/injectStyleSheet.js +2 -2
  336. package/ui/injectStyleSheet.js.flow +40 -42
  337. package/ui/isElementFullyVisible.js +1 -10
  338. package/ui/isElementFullyVisible.js.flow +14 -26
  339. package/ui/isOffline.js.flow +8 -8
  340. package/ui/isReactClass.js.flow +12 -12
  341. package/ui/listType.css +21 -21
  342. package/ui/mathquill-editor/MathQuillEditor.js +27 -30
  343. package/ui/mathquill-editor/MathQuillEditor.js.flow +158 -159
  344. package/ui/mathquill-editor/MathQuillEditorSymbols.js.flow +483 -483
  345. package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js +14 -15
  346. package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js.flow +50 -50
  347. package/ui/mathquill-editor/czi-mathquill-editor-symbols-panel.css +39 -39
  348. package/ui/mathquill-editor/czi-mathquill-editor.css +50 -50
  349. package/ui/mathquill-editor/mathquill-import-kludge.js +1 -8
  350. package/ui/mathquill-editor/mathquill-import-kludge.js.flow +17 -24
  351. package/ui/renderLaTeXAsHTML.js +4 -4
  352. package/ui/renderLaTeXAsHTML.js.flow +46 -46
  353. package/ui/resolveImage.js +5 -6
  354. package/ui/resolveImage.js.flow +121 -123
  355. package/ui/toCSSColor.js.flow +51 -51
  356. package/ui/toCSSLineSpacing.js +2 -3
  357. package/ui/toCSSLineSpacing.js.flow +53 -55
  358. package/ui/toHexColor.js.flow +26 -26
  359. package/ui/uuid.js.flow +9 -9
  360. package/uuid.js.flow +9 -9
@@ -1,59 +1,58 @@
1
- // @flow
2
-
3
- import { Schema } from 'prosemirror-model';
4
- import BlockquoteNodeSpec from './BlockquoteNodeSpec.js';
5
- import BookmarkNodeSpec from './BookmarkNodeSpec.js';
6
- import BulletListNodeSpec from './BulletListNodeSpec.js';
7
- import DocNodeSpec from './DocNodeSpec.js';
8
- import HardBreakNodeSpec from './HardBreakNodeSpec.js';
9
- // import HeadingNodeSpec from './HeadingNodeSpec';
10
- import HorizontalRuleNodeSpec from './HorizontalRuleNodeSpec.js';
11
- import ListItemNodeSpec from './ListItemNodeSpec.js';
12
- import MathNodeSpec from './MathNodeSpec.js';
13
- import * as NodeNames from './NodeNames.js';
14
- import OrderedListNodeSpec from './OrderedListNodeSpec.js';
15
- import ParagraphNodeSpec from './ParagraphNodeSpec.js';
16
- import TableNodesSpecs from './TableNodesSpecs.js';
17
- import TextNodeSpec from './TextNodeSpec.js';
18
-
19
- const {
20
- BLOCKQUOTE,
21
- BOOKMARK,
22
- BULLET_LIST,
23
- //CODE_BLOCK,
24
- DOC,
25
- HARD_BREAK,
26
- HEADING,
27
- HORIZONTAL_RULE,
28
- LIST_ITEM,
29
- MATH,
30
- ORDERED_LIST,
31
- PARAGRAPH,
32
- TEXT,
33
- } = NodeNames;
34
-
35
- // https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
36
-
37
- // !! Be careful with the order of these nodes, which may effect the parsing
38
- // outcome.!!
39
- // [FS-SEA][06-04-2023]
40
- // Changed HeadingNodeSpec to ParagraphNodeSpec for HEADING to handle Header as a paragraph
41
- const nodes = {
42
- [DOC]: DocNodeSpec,
43
- [PARAGRAPH]: ParagraphNodeSpec,
44
- [BLOCKQUOTE]: BlockquoteNodeSpec,
45
- [HORIZONTAL_RULE]: HorizontalRuleNodeSpec,
46
- [HEADING]: ParagraphNodeSpec,
47
- [TEXT]: TextNodeSpec,
48
- [MATH]: MathNodeSpec,
49
- [HARD_BREAK]: HardBreakNodeSpec,
50
- [BULLET_LIST]: BulletListNodeSpec,
51
- [ORDERED_LIST]: OrderedListNodeSpec,
52
- [LIST_ITEM]: ListItemNodeSpec,
53
- [BOOKMARK]: BookmarkNodeSpec,
54
- };
55
-
56
- const marks = {};
57
- const schema = new Schema({ nodes, marks });
58
- const EditorNodes = schema.spec.nodes.append(TableNodesSpecs);
59
- export default EditorNodes;
1
+ // @flow
2
+
3
+ import { Schema } from 'prosemirror-model';
4
+ import BlockquoteNodeSpec from './BlockquoteNodeSpec.js';
5
+ import BookmarkNodeSpec from './BookmarkNodeSpec.js';
6
+ import BulletListNodeSpec from './BulletListNodeSpec.js';
7
+ import DocNodeSpec from './DocNodeSpec.js';
8
+ import HardBreakNodeSpec from './HardBreakNodeSpec.js';
9
+ import HorizontalRuleNodeSpec from './HorizontalRuleNodeSpec.js';
10
+ import ListItemNodeSpec from './ListItemNodeSpec.js';
11
+ import MathNodeSpec from './MathNodeSpec.js';
12
+ import * as NodeNames from './NodeNames.js';
13
+ import OrderedListNodeSpec from './OrderedListNodeSpec.js';
14
+ import ParagraphNodeSpec from './ParagraphNodeSpec.js';
15
+ import TableNodesSpecs from './TableNodesSpecs.js';
16
+ import TextNodeSpec from './TextNodeSpec.js';
17
+
18
+ const {
19
+ BLOCKQUOTE,
20
+ BOOKMARK,
21
+ BULLET_LIST,
22
+ //CODE_BLOCK,
23
+ DOC,
24
+ HARD_BREAK,
25
+ HEADING,
26
+ HORIZONTAL_RULE,
27
+ LIST_ITEM,
28
+ MATH,
29
+ ORDERED_LIST,
30
+ PARAGRAPH,
31
+ TEXT,
32
+ } = NodeNames;
33
+
34
+ // https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
35
+
36
+ // !! Be careful with the order of these nodes, which may effect the parsing
37
+ // outcome.!!
38
+ // [FS-SEA][06-04-2023]
39
+ // Changed HeadingNodeSpec to ParagraphNodeSpec for HEADING to handle Header as a paragraph
40
+ const nodes = {
41
+ [DOC]: DocNodeSpec,
42
+ [PARAGRAPH]: ParagraphNodeSpec,
43
+ [BLOCKQUOTE]: BlockquoteNodeSpec,
44
+ [HORIZONTAL_RULE]: HorizontalRuleNodeSpec,
45
+ [HEADING]: ParagraphNodeSpec,
46
+ [TEXT]: TextNodeSpec,
47
+ [MATH]: MathNodeSpec,
48
+ [HARD_BREAK]: HardBreakNodeSpec,
49
+ [BULLET_LIST]: BulletListNodeSpec,
50
+ [ORDERED_LIST]: OrderedListNodeSpec,
51
+ [LIST_ITEM]: ListItemNodeSpec,
52
+ [BOOKMARK]: BookmarkNodeSpec,
53
+ };
54
+
55
+ const marks = {};
56
+ const schema = new Schema({ nodes, marks });
57
+ const EditorNodes = schema.spec.nodes.append(TableNodesSpecs);
58
+ export default EditorNodes;
@@ -1,16 +1,16 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
4
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
2
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
3
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
4
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
5
5
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
7
7
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
9
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
8
+ function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
9
+ function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
10
10
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
11
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
12
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
13
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
11
+ function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
12
+ function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
13
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
14
14
  import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
15
15
  import { ATTRIBUTE_LAYOUT, LAYOUT } from './DocNodeSpec.js';
16
16
  var SPEC = {
@@ -68,11 +68,11 @@ function renderAttributes(editorState) {
68
68
  // Unfortunately the root node `doc` does not supoort `toDOM`, thus
69
69
  // we'd have to assign its `attributes` manually.
70
70
  var EditorPageLayoutPlugin = /*#__PURE__*/function (_Plugin) {
71
- _inherits(EditorPageLayoutPlugin, _Plugin);
72
71
  function EditorPageLayoutPlugin() {
73
72
  _classCallCheck(this, EditorPageLayoutPlugin);
74
73
  return _callSuper(this, EditorPageLayoutPlugin, [SPEC]);
75
74
  }
75
+ _inherits(EditorPageLayoutPlugin, _Plugin);
76
76
  return _createClass(EditorPageLayoutPlugin);
77
77
  }(Plugin);
78
78
  export default EditorPageLayoutPlugin;
@@ -1,67 +1,67 @@
1
- // @flow
2
-
3
- import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
4
-
5
- import { ATTRIBUTE_LAYOUT, LAYOUT } from './DocNodeSpec.js';
6
-
7
- const SPEC = {
8
- // [FS] IRAD-1005 2020-07-07
9
- // Upgrade outdated packages.
10
- key: new PluginKey('EditorPageLayoutPlugin'),
11
- props: {
12
- attributes: renderAttributes,
13
- },
14
- };
15
-
16
- function renderAttributes(editorState: EditorState): Object {
17
- const { doc } = editorState;
18
- const attrs: Object = {
19
- class: 'czi-prosemirror-editor',
20
- };
21
-
22
- const { width, padding, layout } = doc.attrs;
23
-
24
- let style = '';
25
- let computedLayout;
26
- if (width) {
27
- const inWidth = width / 72;
28
- const cmWidth = inWidth * 2.54;
29
- if (!computedLayout && inWidth >= 10.9 && inWidth <= 11.1) {
30
- // Round up to letter size.
31
- computedLayout = LAYOUT.US_LETTER_LANDSCAPE;
32
- } else if (!computedLayout && inWidth >= 8.4 && inWidth <= 8.6) {
33
- // Round up to letter size.
34
- computedLayout = LAYOUT.US_LETTER_PORTRAIT;
35
- } else if (!computedLayout && cmWidth >= 29.5 && cmWidth <= 30.1) {
36
- // Round up to letter size.
37
- computedLayout = LAYOUT.A4_LANDSCAPE;
38
- } else if (!computedLayout && cmWidth >= 20.5 && cmWidth <= 21.5) {
39
- // Round up to letter size.
40
- computedLayout = LAYOUT.A4_PORTRAIT;
41
- } else {
42
- // Use custom width (e.g. imported from google doc).
43
- style += `width: ${width}pt;`;
44
- }
45
- if (padding) {
46
- style += `padding-left: ${padding}pt;`;
47
- style += `padding-right: ${padding}pt;`;
48
- }
49
- attrs.style = style;
50
- } else {
51
- computedLayout = layout;
52
- }
53
- if (computedLayout) {
54
- attrs[ATTRIBUTE_LAYOUT] = computedLayout;
55
- }
56
- return attrs;
57
- }
58
-
59
- // Unfortunately the root node `doc` does not supoort `toDOM`, thus
60
- // we'd have to assign its `attributes` manually.
61
- class EditorPageLayoutPlugin extends Plugin {
62
- constructor() {
63
- super(SPEC);
64
- }
65
- }
66
-
67
- export default EditorPageLayoutPlugin;
1
+ // @flow
2
+
3
+ import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
4
+
5
+ import { ATTRIBUTE_LAYOUT, LAYOUT } from './DocNodeSpec.js';
6
+
7
+ const SPEC = {
8
+ // [FS] IRAD-1005 2020-07-07
9
+ // Upgrade outdated packages.
10
+ key: new PluginKey('EditorPageLayoutPlugin'),
11
+ props: {
12
+ attributes: renderAttributes,
13
+ },
14
+ };
15
+
16
+ function renderAttributes(editorState: EditorState): Object {
17
+ const { doc } = editorState;
18
+ const attrs: Object = {
19
+ class: 'czi-prosemirror-editor',
20
+ };
21
+
22
+ const { width, padding, layout } = doc.attrs;
23
+
24
+ let style = '';
25
+ let computedLayout;
26
+ if (width) {
27
+ const inWidth = width / 72;
28
+ const cmWidth = inWidth * 2.54;
29
+ if (!computedLayout && inWidth >= 10.9 && inWidth <= 11.1) {
30
+ // Round up to letter size.
31
+ computedLayout = LAYOUT.US_LETTER_LANDSCAPE;
32
+ } else if (!computedLayout && inWidth >= 8.4 && inWidth <= 8.6) {
33
+ // Round up to letter size.
34
+ computedLayout = LAYOUT.US_LETTER_PORTRAIT;
35
+ } else if (!computedLayout && cmWidth >= 29.5 && cmWidth <= 30.1) {
36
+ // Round up to letter size.
37
+ computedLayout = LAYOUT.A4_LANDSCAPE;
38
+ } else if (!computedLayout && cmWidth >= 20.5 && cmWidth <= 21.5) {
39
+ // Round up to letter size.
40
+ computedLayout = LAYOUT.A4_PORTRAIT;
41
+ } else {
42
+ // Use custom width (e.g. imported from google doc).
43
+ style += `width: ${width}pt;`;
44
+ }
45
+ if (padding) {
46
+ style += `padding-left: ${padding}pt;`;
47
+ style += `padding-right: ${padding}pt;`;
48
+ }
49
+ attrs.style = style;
50
+ } else {
51
+ computedLayout = layout;
52
+ }
53
+ if (computedLayout) {
54
+ attrs[ATTRIBUTE_LAYOUT] = computedLayout;
55
+ }
56
+ return attrs;
57
+ }
58
+
59
+ // Unfortunately the root node `doc` does not supoort `toDOM`, thus
60
+ // we'd have to assign its `attributes` manually.
61
+ class EditorPageLayoutPlugin extends Plugin {
62
+ constructor() {
63
+ super(SPEC);
64
+ }
65
+ }
66
+
67
+ export default EditorPageLayoutPlugin;
@@ -1,8 +1,8 @@
1
- // @flow
2
-
3
- import EditorSchema from './EditorSchema.js';
4
- import DefaultEditorPlugins from './buildEditorPlugins.js';
5
-
6
- // Plugin
7
- const EditorPlugins = new DefaultEditorPlugins(EditorSchema);
8
- export default EditorPlugins;
1
+ // @flow
2
+
3
+ import EditorSchema from './EditorSchema.js';
4
+ import DefaultEditorPlugins from './buildEditorPlugins.js';
5
+
6
+ // Plugin
7
+ const EditorPlugins = new DefaultEditorPlugins(EditorSchema);
8
+ export default EditorPlugins;
@@ -1,12 +1,12 @@
1
- // @flow
2
-
3
- import { Schema } from 'prosemirror-model';
4
-
5
- import EditorMarks from './EditorMarks.js';
6
- import EditorNodes from './EditorNodes.js';
7
-
8
- const EditorSchema = new Schema({
9
- nodes: EditorNodes,
10
- marks: EditorMarks,
11
- });
12
- export default EditorSchema;
1
+ // @flow
2
+
3
+ import { Schema } from 'prosemirror-model';
4
+
5
+ import EditorMarks from './EditorMarks.js';
6
+ import EditorNodes from './EditorNodes.js';
7
+
8
+ const EditorSchema = new Schema({
9
+ nodes: EditorNodes,
10
+ marks: EditorMarks,
11
+ });
12
+ export default EditorSchema;
@@ -1,7 +1,7 @@
1
- // @flow
2
-
3
- import { EditorState } from 'prosemirror-state';
4
-
5
- const ProseMirrorEditorState = EditorState;
6
-
7
- export default ProseMirrorEditorState;
1
+ // @flow
2
+
3
+ import { EditorState } from 'prosemirror-state';
4
+
5
+ const ProseMirrorEditorState = EditorState;
6
+
7
+ export default ProseMirrorEditorState;
@@ -1,49 +1,49 @@
1
- // @flow
2
-
3
- import { Node } from 'prosemirror-model';
4
-
5
- import { toClosestFontPtSize } from './toClosestFontPtSize.js';
6
-
7
- import type { MarkSpec } from './Types.js';
8
-
9
- const FontSizeMarkSpec: MarkSpec = {
10
- attrs: {
11
- pt: { default: null },
12
- },
13
- inline: true,
14
- group: 'inline',
15
- parseDOM: [
16
- {
17
- style: 'font-size',
18
- getAttrs: getAttrs,
19
- },
20
- ],
21
- toDOM(node: Node) {
22
- const { pt } = node.attrs;
23
- const domAttrs = pt
24
- ? {
25
- style: `font-size: ${pt}pt;`,
26
- class: 'czi-font-size-mark',
27
- }
28
- : null;
29
-
30
- return ['span', domAttrs, 0];
31
- },
32
- };
33
-
34
- function getAttrs(fontSize: string): Object {
35
- const attrs = {};
36
- if (!fontSize) {
37
- return attrs;
38
- }
39
-
40
- const ptValue = toClosestFontPtSize(fontSize);
41
- if (!ptValue) {
42
- return attrs;
43
- }
44
- return {
45
- pt: ptValue,
46
- };
47
- }
48
-
49
- export default FontSizeMarkSpec;
1
+ // @flow
2
+
3
+ import { Node } from 'prosemirror-model';
4
+
5
+ import { toClosestFontPtSize } from './toClosestFontPtSize.js';
6
+
7
+ import type { MarkSpec } from './Types.js';
8
+
9
+ const FontSizeMarkSpec: MarkSpec = {
10
+ attrs: {
11
+ pt: { default: null },
12
+ },
13
+ inline: true,
14
+ group: 'inline',
15
+ parseDOM: [
16
+ {
17
+ style: 'font-size',
18
+ getAttrs: getAttrs,
19
+ },
20
+ ],
21
+ toDOM(node: Node) {
22
+ const { pt } = node.attrs;
23
+ const domAttrs = pt
24
+ ? {
25
+ style: `font-size: ${pt}pt;`,
26
+ class: 'czi-font-size-mark',
27
+ }
28
+ : null;
29
+
30
+ return ['span', domAttrs, 0];
31
+ },
32
+ };
33
+
34
+ function getAttrs(fontSize: string): Object {
35
+ const attrs = {};
36
+ if (!fontSize) {
37
+ return attrs;
38
+ }
39
+
40
+ const ptValue = toClosestFontPtSize(fontSize);
41
+ if (!ptValue) {
42
+ return attrs;
43
+ }
44
+ return {
45
+ pt: ptValue,
46
+ };
47
+ }
48
+
49
+ export default FontSizeMarkSpec;
@@ -43,7 +43,7 @@ var FontTypeMarkSpec = {
43
43
  style: 'font-family',
44
44
  getAttrs: function getAttrs(name) {
45
45
  return {
46
- name: name ? name.replace(/[\"\']/g, '') : ''
46
+ name: name ? name.replace(/["']/g, '') : ''
47
47
  };
48
48
  }
49
49
  }],
@@ -1,80 +1,80 @@
1
- // @flow
2
-
3
- import { Node } from 'prosemirror-model';
4
- import type { MarkSpec } from './Types.js';
5
-
6
- // [FS] IRAD-1061 2020-09-19
7
- // Now loaded locally, so that it work in closed network as well.
8
-
9
- export const FONT_TYPE_NAMES = [
10
- // SERIF
11
- 'Aclonica',
12
- 'Acme',
13
- 'Alegreya',
14
- 'Arial',
15
- //'Arial',//??? - Commented out fonts that are not available to download using https://fonts.googleapis.com/css?family=
16
- 'Arial Black',
17
- 'Georgia',
18
- 'Tahoma',
19
- 'Times New Roman',
20
- 'Times',
21
- 'Verdana',
22
- // MONOSPACE
23
- 'Courier New',
24
- //'Lucida Console',//???
25
- //'Monaco',//???
26
- //'monospace',//???
27
- ];
28
-
29
- // FS IRAD-988 2020-06-18
30
- // Preload fonts that are listed by default,
31
- // so that even if the font is not available locally, load from web.
32
- export function preLoadFonts() {
33
- FONT_TYPE_NAMES.forEach((name) => {
34
- loadAndCacheFont(name);
35
- });
36
- }
37
-
38
- // resolve each font after it is loaded.
39
- const RESOLVED_FONT_NAMES = new Set([]);
40
-
41
- function loadAndCacheFont(name) {
42
- // Cache custom fonts
43
- RESOLVED_FONT_NAMES.add(name);
44
- // https://github.com/typekit/webfontloader
45
- // [FS] IRAD-1061 2020-09-19
46
- // Now loaded locally, so that it work in closed network as well.
47
- //WebFontLoader.load({google: {families: [name]}});
48
- }
49
-
50
- const FontTypeMarkSpec: MarkSpec = {
51
- attrs: {
52
- name: '',
53
- },
54
- inline: true,
55
- group: 'inline',
56
- parseDOM: [
57
- {
58
- style: 'font-family',
59
- getAttrs: (name) => {
60
- return {
61
- name: name ? name.replace(/[\"\']/g, '') : '',
62
- };
63
- },
64
- },
65
- ],
66
-
67
- toDOM(node: Node) {
68
- const { name } = node.attrs;
69
- const attrs = {};
70
- if (name) {
71
- if (!RESOLVED_FONT_NAMES.has(name)) {
72
- loadAndCacheFont(name);
73
- }
74
- attrs.style = `font-family: ${name}`;
75
- }
76
- return ['span', attrs, 0];
77
- },
78
- };
79
-
80
- export default FontTypeMarkSpec;
1
+ // @flow
2
+
3
+ import { Node } from 'prosemirror-model';
4
+ import type { MarkSpec } from './Types.js';
5
+
6
+ // [FS] IRAD-1061 2020-09-19
7
+ // Now loaded locally, so that it work in closed network as well.
8
+
9
+ export const FONT_TYPE_NAMES = [
10
+ // SERIF
11
+ 'Aclonica',
12
+ 'Acme',
13
+ 'Alegreya',
14
+ 'Arial',
15
+ //'Arial',//??? - Commented out fonts that are not available to download using https://fonts.googleapis.com/css?family=
16
+ 'Arial Black',
17
+ 'Georgia',
18
+ 'Tahoma',
19
+ 'Times New Roman',
20
+ 'Times',
21
+ 'Verdana',
22
+ // MONOSPACE
23
+ 'Courier New',
24
+ //'Lucida Console',//???
25
+ //'Monaco',//???
26
+ //'monospace',//???
27
+ ];
28
+
29
+ // FS IRAD-988 2020-06-18
30
+ // Preload fonts that are listed by default,
31
+ // so that even if the font is not available locally, load from web.
32
+ export function preLoadFonts() {
33
+ FONT_TYPE_NAMES.forEach((name) => {
34
+ loadAndCacheFont(name);
35
+ });
36
+ }
37
+
38
+ // resolve each font after it is loaded.
39
+ const RESOLVED_FONT_NAMES = new Set([]);
40
+
41
+ function loadAndCacheFont(name) {
42
+ // Cache custom fonts
43
+ RESOLVED_FONT_NAMES.add(name);
44
+ // https://github.com/typekit/webfontloader
45
+ // [FS] IRAD-1061 2020-09-19
46
+ // Now loaded locally, so that it work in closed network as well.
47
+ //WebFontLoader.load({google: {families: [name]}});
48
+ }
49
+
50
+ const FontTypeMarkSpec: MarkSpec = {
51
+ attrs: {
52
+ name: '',
53
+ },
54
+ inline: true,
55
+ group: 'inline',
56
+ parseDOM: [
57
+ {
58
+ style: 'font-family',
59
+ getAttrs: (name) => {
60
+ return {
61
+ name: name ? name.replace(/["']/g, '') : '',
62
+ };
63
+ },
64
+ },
65
+ ],
66
+
67
+ toDOM(node: Node) {
68
+ const { name } = node.attrs;
69
+ const attrs = {};
70
+ if (name) {
71
+ if (!RESOLVED_FONT_NAMES.has(name)) {
72
+ loadAndCacheFont(name);
73
+ }
74
+ attrs.style = `font-family: ${name}`;
75
+ }
76
+ return ['span', attrs, 0];
77
+ },
78
+ };
79
+
80
+ export default FontTypeMarkSpec;