@modusoperandi/licit 0.1.7 → 0.1.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 (693) hide show
  1. package/.babelrc +54 -54
  2. package/.dockerignore +4 -4
  3. package/.eslintignore +3 -3
  4. package/.eslintrc.js +80 -80
  5. package/.flowconfig +37 -37
  6. package/.github/workflows/build.yml +35 -30
  7. package/.github/workflows/lint.yml +30 -30
  8. package/.prettierignore +5 -5
  9. package/.prettierrc +4 -4
  10. package/.stylelintignore +1 -1
  11. package/.stylelintrc.json +13 -13
  12. package/.travis.yml +18 -18
  13. package/CODEOWNERS +40 -40
  14. package/LICENSE +22 -22
  15. package/README.md +286 -285
  16. package/build_collab_server.py +7 -7
  17. package/build_customstyle_server.py +7 -7
  18. package/build_image_server.py +7 -7
  19. package/dist/BlockquoteInsertNewLineCommand.js.flow +55 -55
  20. package/dist/BlockquoteNodeSpec.js +2 -2
  21. package/dist/BlockquoteNodeSpec.js.flow +30 -30
  22. package/dist/BlockquoteToggleCommand.js.flow +34 -34
  23. package/dist/BookmarkNodeSpec.js.flow +39 -39
  24. package/dist/BulletListNodeSpec.js.flow +61 -61
  25. package/dist/CZIProseMirror.js +4 -4
  26. package/dist/CZIProseMirror.js.flow +90 -90
  27. package/dist/CodeBlockCommand.js.flow +43 -43
  28. package/dist/CodeBlockNodeSpec.js.flow +24 -24
  29. package/dist/CodeMarkSpec.js.flow +14 -14
  30. package/dist/ContentPlaceholderPlugin.js.flow +187 -187
  31. package/dist/CursorPlaceholderPlugin.js +2 -2
  32. package/dist/CursorPlaceholderPlugin.js.flow +115 -115
  33. package/dist/DocLayoutCommand.js.flow +94 -94
  34. package/dist/DocNodeSpec.js +1 -1
  35. package/dist/DocNodeSpec.js.flow +64 -64
  36. package/dist/EMMarkSpec.js.flow +14 -14
  37. package/dist/EditorCommands.js +1 -1
  38. package/dist/EditorCommands.js.flow +128 -128
  39. package/dist/EditorKeyMap.js +3 -3
  40. package/dist/EditorKeyMap.js.flow +187 -187
  41. package/dist/EditorMarks.js.flow +71 -71
  42. package/dist/EditorNodes.js.flow +60 -60
  43. package/dist/EditorPageLayoutPlugin.js.flow +67 -67
  44. package/dist/EditorPlugins.js.flow +8 -8
  45. package/dist/EditorSchema.js.flow +12 -12
  46. package/dist/EditorState.js.flow +7 -7
  47. package/dist/FontSizeCommand.js.flow +57 -57
  48. package/dist/FontSizeMarkSpec.js.flow +49 -49
  49. package/dist/FontTypeCommand.js.flow +100 -100
  50. package/dist/FontTypeMarkSpec.js +1 -1
  51. package/dist/FontTypeMarkSpec.js.flow +80 -80
  52. package/dist/HTMLMutator.js.flow +59 -59
  53. package/dist/HardBreakNodeSpec.js.flow +15 -15
  54. package/dist/HeadingCommand.js.flow +51 -51
  55. package/dist/HeadingNodeSpec.js +2 -2
  56. package/dist/HeadingNodeSpec.js.flow +54 -54
  57. package/dist/HistoryRedoCommand.js.flow +20 -20
  58. package/dist/HistoryUndoCommand.js.flow +20 -20
  59. package/dist/HorizontalRuleCommand.js.flow +49 -49
  60. package/dist/HorizontalRuleNodeSpec.js.flow +39 -39
  61. package/dist/ImageFromURLCommand.js.flow +14 -14
  62. package/dist/ImageNodeSpec.js.flow +90 -90
  63. package/dist/ImageSourceCommand.js.flow +117 -117
  64. package/dist/ImageUploadCommand.js.flow +36 -36
  65. package/dist/ImageUploadPlaceholderPlugin.js +1 -1
  66. package/dist/ImageUploadPlaceholderPlugin.js.flow +192 -192
  67. package/dist/IndentCommand.js.flow +41 -41
  68. package/dist/LinkMarkSpec.js.flow +32 -32
  69. package/dist/LinkSetURLCommand.js.flow +103 -103
  70. package/dist/LinkTooltipPlugin.js.flow +203 -203
  71. package/dist/ListItemInsertNewLineCommand.js.flow +55 -55
  72. package/dist/ListItemMergeCommand.js.flow +177 -177
  73. package/dist/ListItemNodeSpec.js.flow +51 -51
  74. package/dist/ListSplitCommand.js.flow +32 -32
  75. package/dist/ListToggleCommand.js +1 -1
  76. package/dist/ListToggleCommand.js.flow +77 -77
  77. package/dist/MarkNames.js +1 -1
  78. package/dist/MarkNames.js.flow +18 -18
  79. package/dist/MarkToggleCommand.js.flow +66 -66
  80. package/dist/MarksClearCommand.js.flow +42 -42
  81. package/dist/MathEditCommand.js.flow +110 -110
  82. package/dist/MathNodeSpec.js.flow +46 -46
  83. package/dist/NodeNames.js.flow +23 -23
  84. package/dist/OrderedListNodeSpec.js.flow +132 -132
  85. package/dist/ParagraphNodeSpec.js +2 -1
  86. package/dist/ParagraphNodeSpec.js.flow +160 -160
  87. package/dist/ParagraphSpacingCommand.js +3 -3
  88. package/dist/ParagraphSpacingCommand.js.flow +121 -121
  89. package/dist/PrintCommand.js.flow +31 -31
  90. package/dist/SelectionPlaceholderPlugin.js +2 -2
  91. package/dist/SelectionPlaceholderPlugin.js.flow +131 -131
  92. package/dist/SpacerMarkSpec.js +1 -1
  93. package/dist/SpacerMarkSpec.js.flow +47 -47
  94. package/dist/StrikeMarkSpec.js.flow +21 -21
  95. package/dist/StrongMarkSpec.js.flow +25 -25
  96. package/dist/StyleView.js.flow +19 -19
  97. package/dist/TableBackgroundColorCommand.js.flow +75 -75
  98. package/dist/TableBorderColorCommand.js.flow +75 -75
  99. package/dist/TableCellColorCommand.js.flow +71 -71
  100. package/dist/TableCellMenuPlugin.js.flow +125 -125
  101. package/dist/TableInsertCommand.js.flow +112 -112
  102. package/dist/TableMergeCellsCommand.js.flow +90 -90
  103. package/dist/TableNodesSpecs.js.flow +78 -78
  104. package/dist/TablePlugins.js.flow +14 -14
  105. package/dist/TableResizePlugin.js +2 -2
  106. package/dist/TableResizePlugin.js.flow +631 -631
  107. package/dist/TextAlignCommand.js +3 -3
  108. package/dist/TextAlignCommand.js.flow +122 -122
  109. package/dist/TextColorCommand.js.flow +87 -87
  110. package/dist/TextColorMarkSpec.js.flow +35 -35
  111. package/dist/TextHighlightCommand.js.flow +91 -91
  112. package/dist/TextHighlightMarkSpec.js.flow +38 -38
  113. package/dist/TextInsertTabSpaceCommand.js.flow +83 -83
  114. package/dist/TextLineSpacingCommand.js +3 -3
  115. package/dist/TextLineSpacingCommand.js.flow +157 -157
  116. package/dist/TextNoWrapMarkSpec.js.flow +14 -14
  117. package/dist/TextNodeSpec.js.flow +7 -7
  118. package/dist/TextSelectionMarkSpec.js.flow +24 -24
  119. package/dist/TextSubMarkSpec.js.flow +20 -20
  120. package/dist/TextSuperMarkSpec.js.flow +20 -20
  121. package/dist/TextUnderlineMarkSpec.js.flow +27 -27
  122. package/dist/Types.js +1 -1
  123. package/dist/Types.js.flow +75 -75
  124. package/dist/WebFontLoader.js.flow +22 -22
  125. package/dist/applyMark.js.flow +61 -61
  126. package/dist/blockQuoteInputRule.js.flow +36 -36
  127. package/dist/bom.xml +3710 -4585
  128. package/dist/browser.js.flow +7 -7
  129. package/dist/buildEditorPlugins.js.flow +51 -51
  130. package/dist/buildInputRules.js.flow +81 -81
  131. package/dist/clearMarks.js +1 -1
  132. package/dist/clearMarks.js.flow +128 -128
  133. package/dist/client/CollabConnector.js +2 -2
  134. package/dist/client/CollabConnector.js.flow +71 -70
  135. package/dist/client/EditorConnection.js.flow +307 -307
  136. package/dist/client/Licit.js +167 -83
  137. package/dist/client/Licit.js.flow +578 -491
  138. package/dist/client/Licit.test.js +16 -15
  139. package/dist/client/Licit.test.js.flow +67 -65
  140. package/dist/client/Reporter.js.flow +37 -37
  141. package/dist/client/SimpleConnector.js +1 -1
  142. package/dist/client/SimpleConnector.js.flow +53 -53
  143. package/dist/client/http.js +3 -3
  144. package/dist/client/http.js.flow +66 -66
  145. package/dist/client/licit.css +12 -12
  146. package/dist/client/throttle.js.flow +27 -27
  147. package/dist/compareNumber.js.flow +11 -11
  148. package/dist/consolidateListNodes.js +29 -29
  149. package/dist/consolidateListNodes.js.flow +281 -281
  150. package/dist/convertFromDOMElement.js.flow +36 -36
  151. package/dist/convertFromHTML.js.flow +19 -19
  152. package/dist/convertFromJSON.js.flow +78 -78
  153. package/dist/convertToCSSPTValue.js +1 -1
  154. package/dist/convertToCSSPTValue.js.flow +22 -22
  155. package/dist/convertToJSON.js.flow +7 -7
  156. package/dist/createCommand.js.flow +40 -40
  157. package/dist/createEditorKeyMap.js.flow +94 -94
  158. package/dist/createEmptyEditorState.js +4 -7
  159. package/dist/createEmptyEditorState.js.flow +35 -41
  160. package/dist/createTableResizingPlugin.js.flow +86 -86
  161. package/dist/findActionableCell.js.flow +74 -74
  162. package/dist/findActiveMark.js.flow +32 -32
  163. package/dist/findNodesWithSameMark.js.flow +89 -89
  164. package/dist/hyphenize.js.flow +17 -17
  165. package/dist/index.js +16 -16
  166. package/dist/index.js.flow +10 -10
  167. package/dist/insertTable.js.flow +56 -56
  168. package/dist/isBulletListNode.js.flow +9 -9
  169. package/dist/isEditorStateEmpty.js.flow +32 -32
  170. package/dist/isInsideListItem.js.flow +13 -13
  171. package/dist/isListNode.js.flow +13 -13
  172. package/dist/isNodeSelectionForNodeType.js.flow +15 -15
  173. package/dist/isOrderedListNode.js.flow +9 -9
  174. package/dist/isTableNode.js.flow +15 -15
  175. package/dist/isTextStyleMarkCommandEnabled.js.flow +49 -49
  176. package/dist/joinDown.js.flow +27 -27
  177. package/dist/joinListNode.js.flow +55 -55
  178. package/dist/joinUp.js.flow +39 -39
  179. package/dist/keymaps.js +2 -2
  180. package/dist/keymaps.js.flow +185 -185
  181. package/dist/lookUpElement.js.flow +14 -14
  182. package/dist/nodeAt.js.flow +12 -12
  183. package/dist/noop.js.flow +5 -5
  184. package/dist/normalizeHTML.js.flow +78 -78
  185. package/dist/patchAnchorElements.js.flow +38 -38
  186. package/dist/patchBreakElements.js.flow +22 -22
  187. package/dist/patchElementInlineStyles.js.flow +92 -92
  188. package/dist/patchListElements.js.flow +276 -276
  189. package/dist/patchMathElements.js.flow +60 -60
  190. package/dist/patchParagraphElements.js.flow +20 -20
  191. package/dist/patchStyleElements.js +1 -1
  192. package/dist/patchStyleElements.js.flow +194 -194
  193. package/dist/patchTableElements.js.flow +89 -89
  194. package/dist/rebaseDocWithSteps.js.flow +42 -42
  195. package/dist/sanitizeURL.js.flow +13 -13
  196. package/dist/splitListItem.js +2 -2
  197. package/dist/splitListItem.js.flow +191 -191
  198. package/dist/styles.css +19 -19
  199. package/dist/styles0.css +29 -29
  200. package/dist/toClosestFontPtSize.js.flow +22 -22
  201. package/dist/toSafeHTMLDocument.js.flow +9 -9
  202. package/dist/toggleBlockquote.js.flow +91 -91
  203. package/dist/toggleCodeBlock.js.flow +102 -102
  204. package/dist/toggleHeading.js +2 -2
  205. package/dist/toggleHeading.js.flow +113 -113
  206. package/dist/toggleList.js +2 -2
  207. package/dist/toggleList.js.flow +450 -450
  208. package/dist/transformAndPreserveTextSelection.js +1 -1
  209. package/dist/transformAndPreserveTextSelection.js.flow +151 -151
  210. package/dist/ui/AlertInfo.js +3 -3
  211. package/dist/ui/AlertInfo.js.flow +64 -64
  212. package/dist/ui/BookmarkNodeView.js.flow +66 -66
  213. package/dist/ui/ColorEditor.js.flow +101 -101
  214. package/dist/ui/CommandButton.js.flow +68 -68
  215. package/dist/ui/CommandMenu.js.flow +75 -75
  216. package/dist/ui/CommandMenuButton.js +2 -2
  217. package/dist/ui/CommandMenuButton.js.flow +131 -131
  218. package/dist/ui/CustomButton.js +3 -1
  219. package/dist/ui/CustomButton.js.flow +33 -33
  220. package/dist/ui/CustomEditorView.js.flow +28 -28
  221. package/dist/ui/CustomMenu.js.flow +17 -17
  222. package/dist/ui/CustomMenuItem.js.flow +36 -36
  223. package/dist/ui/CustomNodeView.js +3 -3
  224. package/dist/ui/CustomNodeView.js.flow +200 -200
  225. package/dist/ui/CustomRadioButton.js +3 -1
  226. package/dist/ui/CustomRadioButton.js.flow +65 -65
  227. package/dist/ui/DocLayoutEditor.js +1 -1
  228. package/dist/ui/DocLayoutEditor.js.flow +146 -146
  229. package/dist/ui/Editor.js +1 -2
  230. package/dist/ui/Editor.js.flow +290 -291
  231. package/dist/ui/EditorFrameset.js +1 -1
  232. package/dist/ui/EditorFrameset.js.flow +81 -81
  233. package/dist/ui/EditorToolbar.js +2 -2
  234. package/dist/ui/EditorToolbar.js.flow +211 -211
  235. package/dist/ui/EditorToolbarConfig.js +1 -1
  236. package/dist/ui/EditorToolbarConfig.js.flow +172 -172
  237. package/dist/ui/FontSizeCommandMenuButton.js.flow +66 -66
  238. package/dist/ui/FontTypeCommandMenuButton.js.flow +49 -49
  239. package/dist/ui/Frag.js.flow +13 -13
  240. package/dist/ui/Icon.js.flow +89 -89
  241. package/dist/ui/ImageAlignEditor.js +1 -1
  242. package/dist/ui/ImageAlignEditor.js.flow +60 -60
  243. package/dist/ui/ImageInlineEditor.js +1 -1
  244. package/dist/ui/ImageInlineEditor.js.flow +67 -67
  245. package/dist/ui/ImageNodeView.js +3 -13
  246. package/dist/ui/ImageNodeView.js.flow +404 -416
  247. package/dist/ui/ImageResizeBox.js +1 -1
  248. package/dist/ui/ImageResizeBox.js.flow +219 -219
  249. package/dist/ui/ImageURLEditor.js +2 -2
  250. package/dist/ui/ImageURLEditor.js.flow +119 -119
  251. package/dist/ui/ImageUploadEditor.js.flow +117 -117
  252. package/dist/ui/KeyCodes.js.flow +12 -12
  253. package/dist/ui/LinkTooltip.js.flow +85 -85
  254. package/dist/ui/LinkURLEditor.js.flow +111 -111
  255. package/dist/ui/ListItemNodeView.js.flow +98 -98
  256. package/dist/ui/ListTypeButton.js +2 -2
  257. package/dist/ui/ListTypeButton.js.flow +131 -131
  258. package/dist/ui/ListTypeCommandButton.js.flow +85 -85
  259. package/dist/ui/ListTypeMenu.js.flow +70 -70
  260. package/dist/ui/LoadingIndicator.js.flow +20 -20
  261. package/dist/ui/MathEditor.js.flow +78 -78
  262. package/dist/ui/MathInlineEditor.js +3 -3
  263. package/dist/ui/MathInlineEditor.js.flow +102 -102
  264. package/dist/ui/MathNodeView.js +2 -2
  265. package/dist/ui/MathNodeView.js.flow +175 -175
  266. package/dist/ui/PasteMenu.js.flow +57 -57
  267. package/dist/ui/PointerSurface.js +1 -1
  268. package/dist/ui/PointerSurface.js.flow +141 -141
  269. package/dist/ui/PopUp.js +1 -1
  270. package/dist/ui/PopUp.js.flow +77 -77
  271. package/dist/ui/PopUpManager.js +1 -1
  272. package/dist/ui/PopUpManager.js.flow +213 -213
  273. package/dist/ui/PopUpPosition.js +3 -3
  274. package/dist/ui/PopUpPosition.js.flow +104 -104
  275. package/dist/ui/ResizeObserver.js +1 -1
  276. package/dist/ui/ResizeObserver.js.flow +106 -106
  277. package/dist/ui/RichTextEditor.js.flow +133 -133
  278. package/dist/ui/SelectionObserver.js.flow +134 -134
  279. package/dist/ui/TableCellMenu.js.flow +38 -38
  280. package/dist/ui/TableGridSizeEditor.js +1 -1
  281. package/dist/ui/TableGridSizeEditor.js.flow +184 -184
  282. package/dist/ui/TableNodeView.js.flow +22 -22
  283. package/dist/ui/TooltipSurface.js.flow +76 -76
  284. package/dist/ui/bindScrollHandler.js.flow +46 -46
  285. package/dist/ui/canUseCSSFont.js.flow +43 -43
  286. package/dist/ui/clamp.js.flow +11 -11
  287. package/dist/ui/createPopUp.js +1 -1
  288. package/dist/ui/createPopUp.js.flow +205 -205
  289. package/dist/ui/czi-animations.css +15 -15
  290. package/dist/ui/czi-body-layout-editor.css +16 -16
  291. package/dist/ui/czi-bookmark-view.css +10 -10
  292. package/dist/ui/czi-color-editor.css +56 -56
  293. package/dist/ui/czi-cursor-placeholder.css +36 -36
  294. package/dist/ui/czi-custom-button.css +93 -93
  295. package/dist/ui/czi-custom-menu-button.css +18 -18
  296. package/dist/ui/czi-custom-menu-item.css +30 -30
  297. package/dist/ui/czi-custom-menu.css +8 -8
  298. package/dist/ui/czi-custom-radio-button.css +80 -80
  299. package/dist/ui/czi-custom-scrollbar.css +21 -21
  300. package/dist/ui/czi-editor-frameset.css +81 -81
  301. package/dist/ui/czi-editor-toolbar.css +122 -122
  302. package/dist/ui/czi-editor.css +220 -220
  303. package/dist/ui/czi-form.css +104 -104
  304. package/dist/ui/czi-frag.css +3 -3
  305. package/dist/ui/czi-heading.css +40 -40
  306. package/dist/ui/czi-icon.css +72 -72
  307. package/dist/ui/czi-image-resize-box.css +165 -165
  308. package/dist/ui/czi-image-upload-editor.css +57 -57
  309. package/dist/ui/czi-image-upload-placeholder.css +50 -50
  310. package/dist/ui/czi-image-url-editor.css +38 -38
  311. package/dist/ui/czi-image-view.css +125 -125
  312. package/dist/ui/czi-indent.css +137 -137
  313. package/dist/ui/czi-inline-editor.css +20 -20
  314. package/dist/ui/czi-link-tooltip.css +71 -71
  315. package/dist/ui/czi-list.css +410 -410
  316. package/dist/ui/czi-loading-indicator.css +111 -111
  317. package/dist/ui/czi-math-view.css +62 -62
  318. package/dist/ui/czi-pop-up.css +32 -32
  319. package/dist/ui/czi-selection-placeholder.css +24 -24
  320. package/dist/ui/czi-table-cell-menu.css +14 -14
  321. package/dist/ui/czi-table-grid-size-editor.css +37 -37
  322. package/dist/ui/czi-table.css +86 -86
  323. package/dist/ui/czi-tooltip-surface.css +45 -45
  324. package/dist/ui/czi-vars.css +46 -46
  325. package/dist/ui/findActiveFontSize.js.flow +58 -58
  326. package/dist/ui/findActiveFontType.js +1 -1
  327. package/dist/ui/findActiveFontType.js.flow +38 -38
  328. package/dist/ui/fonts.css +471 -471
  329. package/dist/ui/handleEditorDrop.js.flow +28 -28
  330. package/dist/ui/handleEditorKeyDown.js.flow +39 -39
  331. package/dist/ui/handleEditorPaste.js.flow +33 -33
  332. package/dist/ui/htmlElementToRect.js +1 -1
  333. package/dist/ui/htmlElementToRect.js.flow +18 -18
  334. package/dist/ui/icon-font.css +10 -10
  335. package/dist/ui/injectStyleSheet.js.flow +42 -42
  336. package/dist/ui/isElementFullyVisible.js.flow +23 -23
  337. package/dist/ui/isOffline.js.flow +8 -8
  338. package/dist/ui/isReactClass.js.flow +12 -12
  339. package/dist/ui/listType.css +21 -21
  340. package/dist/ui/mathquill-editor/MathQuillEditor.js.flow +159 -159
  341. package/dist/ui/mathquill-editor/MathQuillEditorSymbols.js +1 -1
  342. package/dist/ui/mathquill-editor/MathQuillEditorSymbols.js.flow +483 -483
  343. package/dist/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js.flow +48 -48
  344. package/dist/ui/mathquill-editor/czi-mathquill-editor-symbols-panel.css +39 -39
  345. package/dist/ui/mathquill-editor/czi-mathquill-editor.css +50 -50
  346. package/dist/ui/mathquill-editor/mathquill-import-kludge.js.flow +24 -24
  347. package/dist/ui/preventEventDefault.js.flow +5 -5
  348. package/dist/ui/rects.js +3 -3
  349. package/dist/ui/rects.js.flow +47 -47
  350. package/dist/ui/renderLaTeXAsHTML.js.flow +46 -46
  351. package/dist/ui/resolveImage.js +3 -3
  352. package/dist/ui/resolveImage.js.flow +123 -123
  353. package/dist/ui/toCSSColor.js +1 -1
  354. package/dist/ui/toCSSColor.js.flow +51 -51
  355. package/dist/ui/toCSSLineSpacing.js +1 -1
  356. package/dist/ui/toCSSLineSpacing.js.flow +82 -82
  357. package/dist/ui/toHexColor.js.flow +26 -26
  358. package/dist/ui/uuid.js.flow +9 -9
  359. package/dist/updateIndentLevel.js +2 -2
  360. package/dist/updateIndentLevel.js.flow +211 -211
  361. package/dist/uuid.js.flow +9 -9
  362. package/flow-typed/@modusoperandilicit-customstyles.js +5 -5
  363. package/flow-typed/@modusoperandilicit-doc-attrs-step.js +5 -5
  364. package/flow-typed/@molicit-citation.js +5 -5
  365. package/flow-typed/create-emotion.js +5 -5
  366. package/flow-typed/docs-editor.js +3 -3
  367. package/flow-typed/draft-convert.js +3 -3
  368. package/flow-typed/draft-js.js +3 -3
  369. package/flow-typed/flatted.js +5 -5
  370. package/flow-typed/jquery.js +5 -5
  371. package/flow-typed/katex.js +6 -6
  372. package/flow-typed/mathquill.js +5 -5
  373. package/flow-typed/prosemirror-collab.js +5 -5
  374. package/flow-typed/prosemirror-commands.js +5 -5
  375. package/flow-typed/prosemirror-dev-tools.js +5 -5
  376. package/flow-typed/prosemirror-dropcursor.js +5 -5
  377. package/flow-typed/prosemirror-gapcursor.js +5 -5
  378. package/flow-typed/prosemirror-history.js +5 -5
  379. package/flow-typed/prosemirror-inputrules.js +5 -5
  380. package/flow-typed/prosemirror-keymap.js +5 -5
  381. package/flow-typed/prosemirror-model.js +5 -5
  382. package/flow-typed/prosemirror-state.js +5 -5
  383. package/flow-typed/prosemirror-tables.js +5 -5
  384. package/flow-typed/prosemirror-transform.js +5 -5
  385. package/flow-typed/prosemirror-utils.js +5 -5
  386. package/flow-typed/prosemirror-view.js +5 -5
  387. package/flow-typed/resize-observer-polyfill.js +5 -5
  388. package/flow-typed/uuid.js +5 -5
  389. package/jest.setup.js +5 -5
  390. package/licit/client/CustomLicitRuntime.js +95 -95
  391. package/licit/client/CustomStyleRuntime.js +136 -136
  392. package/licit/client/index.js +366 -366
  393. package/licit/index.html +11 -11
  394. package/licit/server/collab/instance.js +221 -221
  395. package/licit/server/collab/route.js +69 -69
  396. package/licit/server/collab/server.js +297 -297
  397. package/licit/server/collab/start.js +13 -13
  398. package/licit/server/customstyles/start.js +184 -184
  399. package/licit/server/image/start.js +58 -58
  400. package/lint.sh +4 -4
  401. package/package.json +165 -165
  402. package/run_collab_server.py +21 -21
  403. package/run_customstyle_server.py +20 -20
  404. package/run_image_server.py +20 -20
  405. package/run_web_server.py +25 -25
  406. package/scripts/build_bin.js +10 -10
  407. package/scripts/build_bin.py +103 -103
  408. package/scripts/ci_check_dist.sh +13 -13
  409. package/scripts/env.js +6 -6
  410. package/scripts/webserver.js +35 -35
  411. package/sonar-project.properties +11 -11
  412. package/src/BlockquoteInsertNewLineCommand.js +55 -55
  413. package/src/BlockquoteNodeSpec.js +30 -30
  414. package/src/BlockquoteToggleCommand.js +34 -34
  415. package/src/BookmarkNodeSpec.js +39 -39
  416. package/src/BulletListNodeSpec.js +61 -61
  417. package/src/CZIProseMirror.js +90 -90
  418. package/src/CodeBlockCommand.js +43 -43
  419. package/src/CodeBlockNodeSpec.js +24 -24
  420. package/src/CodeMarkSpec.js +14 -14
  421. package/src/ContentPlaceholderPlugin.js +187 -187
  422. package/src/CursorPlaceholderPlugin.js +115 -115
  423. package/src/DocLayoutCommand.js +94 -94
  424. package/src/DocNodeSpec.js +64 -64
  425. package/src/EMMarkSpec.js +14 -14
  426. package/src/EditorCommands.js +128 -128
  427. package/src/EditorKeyMap.js +187 -187
  428. package/src/EditorMarks.js +71 -71
  429. package/src/EditorNodes.js +60 -60
  430. package/src/EditorPageLayoutPlugin.js +67 -67
  431. package/src/EditorPlugins.js +8 -8
  432. package/src/EditorSchema.js +12 -12
  433. package/src/EditorState.js +7 -7
  434. package/src/FontSizeCommand.js +57 -57
  435. package/src/FontSizeMarkSpec.js +49 -49
  436. package/src/FontTypeCommand.js +100 -100
  437. package/src/FontTypeMarkSpec.js +80 -80
  438. package/src/HTMLMutator.js +59 -59
  439. package/src/HardBreakNodeSpec.js +15 -15
  440. package/src/HeadingCommand.js +51 -51
  441. package/src/HeadingNodeSpec.js +54 -54
  442. package/src/HistoryRedoCommand.js +20 -20
  443. package/src/HistoryUndoCommand.js +20 -20
  444. package/src/HorizontalRuleCommand.js +49 -49
  445. package/src/HorizontalRuleNodeSpec.js +39 -39
  446. package/src/ImageFromURLCommand.js +14 -14
  447. package/src/ImageNodeSpec.js +90 -90
  448. package/src/ImageSourceCommand.js +117 -117
  449. package/src/ImageUploadCommand.js +36 -36
  450. package/src/ImageUploadPlaceholderPlugin.js +192 -192
  451. package/src/IndentCommand.js +41 -41
  452. package/src/LinkMarkSpec.js +32 -32
  453. package/src/LinkSetURLCommand.js +103 -103
  454. package/src/LinkTooltipPlugin.js +203 -203
  455. package/src/ListItemInsertNewLineCommand.js +55 -55
  456. package/src/ListItemMergeCommand.js +177 -177
  457. package/src/ListItemNodeSpec.js +51 -51
  458. package/src/ListSplitCommand.js +32 -32
  459. package/src/ListToggleCommand.js +77 -77
  460. package/src/MarkNames.js +18 -18
  461. package/src/MarkToggleCommand.js +66 -66
  462. package/src/MarksClearCommand.js +42 -42
  463. package/src/MathEditCommand.js +110 -110
  464. package/src/MathNodeSpec.js +46 -46
  465. package/src/NodeNames.js +23 -23
  466. package/src/OrderedListNodeSpec.js +132 -132
  467. package/src/ParagraphNodeSpec.js +160 -160
  468. package/src/ParagraphSpacingCommand.js +121 -121
  469. package/src/PrintCommand.js +31 -31
  470. package/src/SelectionPlaceholderPlugin.js +131 -131
  471. package/src/SpacerMarkSpec.js +47 -47
  472. package/src/StrikeMarkSpec.js +21 -21
  473. package/src/StrongMarkSpec.js +25 -25
  474. package/src/StyleView.js +19 -19
  475. package/src/TableBackgroundColorCommand.js +75 -75
  476. package/src/TableBorderColorCommand.js +75 -75
  477. package/src/TableCellColorCommand.js +71 -71
  478. package/src/TableCellMenuPlugin.js +125 -125
  479. package/src/TableInsertCommand.js +112 -112
  480. package/src/TableMergeCellsCommand.js +90 -90
  481. package/src/TableNodesSpecs.js +78 -78
  482. package/src/TablePlugins.js +14 -14
  483. package/src/TableResizePlugin.js +631 -631
  484. package/src/TextAlignCommand.js +122 -122
  485. package/src/TextColorCommand.js +87 -87
  486. package/src/TextColorMarkSpec.js +35 -35
  487. package/src/TextHighlightCommand.js +91 -91
  488. package/src/TextHighlightMarkSpec.js +38 -38
  489. package/src/TextInsertTabSpaceCommand.js +83 -83
  490. package/src/TextLineSpacingCommand.js +157 -157
  491. package/src/TextNoWrapMarkSpec.js +14 -14
  492. package/src/TextNodeSpec.js +7 -7
  493. package/src/TextSelectionMarkSpec.js +24 -24
  494. package/src/TextSubMarkSpec.js +20 -20
  495. package/src/TextSuperMarkSpec.js +20 -20
  496. package/src/TextUnderlineMarkSpec.js +27 -27
  497. package/src/Types.js +75 -75
  498. package/src/WebFontLoader.js +22 -22
  499. package/src/applyMark.js +61 -61
  500. package/src/blockQuoteInputRule.js +36 -36
  501. package/src/browser.js +7 -7
  502. package/src/buildEditorPlugins.js +51 -51
  503. package/src/buildInputRules.js +81 -81
  504. package/src/clearMarks.js +128 -128
  505. package/src/client/CollabConnector.js +71 -70
  506. package/src/client/EditorConnection.js +307 -307
  507. package/src/client/Licit.js +578 -491
  508. package/src/client/Licit.test.js +67 -65
  509. package/src/client/Reporter.js +37 -37
  510. package/src/client/SimpleConnector.js +53 -53
  511. package/src/client/http.js +66 -66
  512. package/src/client/licit.css +12 -12
  513. package/src/client/throttle.js +27 -27
  514. package/src/compareNumber.js +11 -11
  515. package/src/consolidateListNodes.js +281 -281
  516. package/src/convertFromDOMElement.js +36 -36
  517. package/src/convertFromHTML.js +19 -19
  518. package/src/convertFromJSON.js +78 -78
  519. package/src/convertToCSSPTValue.js +22 -22
  520. package/src/convertToJSON.js +7 -7
  521. package/src/createCommand.js +40 -40
  522. package/src/createEditorKeyMap.js +94 -94
  523. package/src/createEmptyEditorState.js +35 -41
  524. package/src/createTableResizingPlugin.js +86 -86
  525. package/src/findActionableCell.js +74 -74
  526. package/src/findActiveMark.js +32 -32
  527. package/src/findNodesWithSameMark.js +89 -89
  528. package/src/hyphenize.js +17 -17
  529. package/src/index.js +10 -10
  530. package/src/insertTable.js +56 -56
  531. package/src/isBulletListNode.js +9 -9
  532. package/src/isEditorStateEmpty.js +32 -32
  533. package/src/isInsideListItem.js +13 -13
  534. package/src/isListNode.js +13 -13
  535. package/src/isNodeSelectionForNodeType.js +15 -15
  536. package/src/isOrderedListNode.js +9 -9
  537. package/src/isTableNode.js +15 -15
  538. package/src/isTextStyleMarkCommandEnabled.js +49 -49
  539. package/src/joinDown.js +27 -27
  540. package/src/joinListNode.js +55 -55
  541. package/src/joinUp.js +39 -39
  542. package/src/keymaps.js +185 -185
  543. package/src/lookUpElement.js +14 -14
  544. package/src/nodeAt.js +12 -12
  545. package/src/noop.js +5 -5
  546. package/src/normalizeHTML.js +78 -78
  547. package/src/patchAnchorElements.js +38 -38
  548. package/src/patchBreakElements.js +22 -22
  549. package/src/patchElementInlineStyles.js +92 -92
  550. package/src/patchListElements.js +276 -276
  551. package/src/patchMathElements.js +60 -60
  552. package/src/patchParagraphElements.js +20 -20
  553. package/src/patchStyleElements.js +194 -194
  554. package/src/patchTableElements.js +89 -89
  555. package/src/rebaseDocWithSteps.js +42 -42
  556. package/src/sanitizeURL.js +13 -13
  557. package/src/splitListItem.js +191 -191
  558. package/src/styles.css +19 -19
  559. package/src/styles0.css +29 -29
  560. package/src/toClosestFontPtSize.js +22 -22
  561. package/src/toSafeHTMLDocument.js +9 -9
  562. package/src/toggleBlockquote.js +91 -91
  563. package/src/toggleCodeBlock.js +102 -102
  564. package/src/toggleHeading.js +113 -113
  565. package/src/toggleList.js +450 -450
  566. package/src/transformAndPreserveTextSelection.js +151 -151
  567. package/src/ui/AlertInfo.js +64 -64
  568. package/src/ui/BookmarkNodeView.js +66 -66
  569. package/src/ui/ColorEditor.js +101 -101
  570. package/src/ui/CommandButton.js +68 -68
  571. package/src/ui/CommandMenu.js +75 -75
  572. package/src/ui/CommandMenuButton.js +131 -131
  573. package/src/ui/CustomButton.js +33 -33
  574. package/src/ui/CustomEditorView.js +28 -28
  575. package/src/ui/CustomMenu.js +17 -17
  576. package/src/ui/CustomMenuItem.js +36 -36
  577. package/src/ui/CustomNodeView.js +200 -200
  578. package/src/ui/CustomRadioButton.js +65 -65
  579. package/src/ui/DocLayoutEditor.js +146 -146
  580. package/src/ui/Editor.js +290 -291
  581. package/src/ui/EditorFrameset.js +81 -81
  582. package/src/ui/EditorToolbar.js +211 -211
  583. package/src/ui/EditorToolbarConfig.js +172 -172
  584. package/src/ui/FontSizeCommandMenuButton.js +66 -66
  585. package/src/ui/FontTypeCommandMenuButton.js +49 -49
  586. package/src/ui/Frag.js +13 -13
  587. package/src/ui/Icon.js +89 -89
  588. package/src/ui/ImageAlignEditor.js +60 -60
  589. package/src/ui/ImageInlineEditor.js +67 -67
  590. package/src/ui/ImageNodeView.js +404 -416
  591. package/src/ui/ImageResizeBox.js +219 -219
  592. package/src/ui/ImageURLEditor.js +119 -119
  593. package/src/ui/ImageUploadEditor.js +117 -117
  594. package/src/ui/KeyCodes.js +12 -12
  595. package/src/ui/LinkTooltip.js +85 -85
  596. package/src/ui/LinkURLEditor.js +111 -111
  597. package/src/ui/ListItemNodeView.js +98 -98
  598. package/src/ui/ListTypeButton.js +131 -131
  599. package/src/ui/ListTypeCommandButton.js +85 -85
  600. package/src/ui/ListTypeMenu.js +70 -70
  601. package/src/ui/LoadingIndicator.js +20 -20
  602. package/src/ui/MathEditor.js +78 -78
  603. package/src/ui/MathInlineEditor.js +102 -102
  604. package/src/ui/MathNodeView.js +175 -175
  605. package/src/ui/PasteMenu.js +57 -57
  606. package/src/ui/PointerSurface.js +141 -141
  607. package/src/ui/PopUp.js +77 -77
  608. package/src/ui/PopUpManager.js +213 -213
  609. package/src/ui/PopUpPosition.js +104 -104
  610. package/src/ui/ResizeObserver.js +106 -106
  611. package/src/ui/RichTextEditor.js +133 -133
  612. package/src/ui/SelectionObserver.js +134 -134
  613. package/src/ui/TableCellMenu.js +38 -38
  614. package/src/ui/TableGridSizeEditor.js +184 -184
  615. package/src/ui/TableNodeView.js +22 -22
  616. package/src/ui/TooltipSurface.js +76 -76
  617. package/src/ui/bindScrollHandler.js +46 -46
  618. package/src/ui/canUseCSSFont.js +43 -43
  619. package/src/ui/clamp.js +11 -11
  620. package/src/ui/createPopUp.js +205 -205
  621. package/src/ui/czi-animations.css +15 -15
  622. package/src/ui/czi-body-layout-editor.css +16 -16
  623. package/src/ui/czi-bookmark-view.css +10 -10
  624. package/src/ui/czi-color-editor.css +56 -56
  625. package/src/ui/czi-cursor-placeholder.css +36 -36
  626. package/src/ui/czi-custom-button.css +93 -93
  627. package/src/ui/czi-custom-menu-button.css +18 -18
  628. package/src/ui/czi-custom-menu-item.css +30 -30
  629. package/src/ui/czi-custom-menu.css +8 -8
  630. package/src/ui/czi-custom-radio-button.css +80 -80
  631. package/src/ui/czi-custom-scrollbar.css +21 -21
  632. package/src/ui/czi-editor-frameset.css +81 -81
  633. package/src/ui/czi-editor-toolbar.css +122 -122
  634. package/src/ui/czi-editor.css +220 -220
  635. package/src/ui/czi-form.css +104 -104
  636. package/src/ui/czi-frag.css +3 -3
  637. package/src/ui/czi-heading.css +40 -40
  638. package/src/ui/czi-icon.css +72 -72
  639. package/src/ui/czi-image-resize-box.css +165 -165
  640. package/src/ui/czi-image-upload-editor.css +57 -57
  641. package/src/ui/czi-image-upload-placeholder.css +50 -50
  642. package/src/ui/czi-image-url-editor.css +38 -38
  643. package/src/ui/czi-image-view.css +125 -125
  644. package/src/ui/czi-indent.css +137 -137
  645. package/src/ui/czi-inline-editor.css +20 -20
  646. package/src/ui/czi-link-tooltip.css +71 -71
  647. package/src/ui/czi-list.css +410 -410
  648. package/src/ui/czi-loading-indicator.css +111 -111
  649. package/src/ui/czi-math-view.css +62 -62
  650. package/src/ui/czi-pop-up.css +32 -32
  651. package/src/ui/czi-selection-placeholder.css +24 -24
  652. package/src/ui/czi-table-cell-menu.css +14 -14
  653. package/src/ui/czi-table-grid-size-editor.css +37 -37
  654. package/src/ui/czi-table.css +86 -86
  655. package/src/ui/czi-tooltip-surface.css +45 -45
  656. package/src/ui/czi-vars.css +46 -46
  657. package/src/ui/findActiveFontSize.js +58 -58
  658. package/src/ui/findActiveFontType.js +38 -38
  659. package/src/ui/fonts.css +471 -471
  660. package/src/ui/handleEditorDrop.js +28 -28
  661. package/src/ui/handleEditorKeyDown.js +39 -39
  662. package/src/ui/handleEditorPaste.js +33 -33
  663. package/src/ui/htmlElementToRect.js +18 -18
  664. package/src/ui/icon-font.css +10 -10
  665. package/src/ui/injectStyleSheet.js +42 -42
  666. package/src/ui/isElementFullyVisible.js +23 -23
  667. package/src/ui/isOffline.js +8 -8
  668. package/src/ui/isReactClass.js +12 -12
  669. package/src/ui/listType.css +21 -21
  670. package/src/ui/mathquill-editor/MathQuillEditor.js +159 -159
  671. package/src/ui/mathquill-editor/MathQuillEditorSymbols.js +483 -483
  672. package/src/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js +48 -48
  673. package/src/ui/mathquill-editor/czi-mathquill-editor-symbols-panel.css +39 -39
  674. package/src/ui/mathquill-editor/czi-mathquill-editor.css +50 -50
  675. package/src/ui/mathquill-editor/mathquill-import-kludge.js +24 -24
  676. package/src/ui/preventEventDefault.js +5 -5
  677. package/src/ui/rects.js +47 -47
  678. package/src/ui/renderLaTeXAsHTML.js +46 -46
  679. package/src/ui/resolveImage.js +123 -123
  680. package/src/ui/toCSSColor.js +51 -51
  681. package/src/ui/toCSSLineSpacing.js +82 -82
  682. package/src/ui/toHexColor.js +26 -26
  683. package/src/ui/uuid.js +9 -9
  684. package/src/updateIndentLevel.js +211 -211
  685. package/src/uuid.js +9 -9
  686. package/style-service.Dockerfile +26 -26
  687. package/utils/build_bin.js +9 -9
  688. package/utils/build_customstyle_server.js +71 -71
  689. package/utils/build_image_server.js +71 -71
  690. package/utils/build_licit_collab_server.js +75 -75
  691. package/utils/build_web_server.js +40 -40
  692. package/utils/env.js +6 -6
  693. package/webpack.config.js +126 -126
package/LICENSE CHANGED
@@ -1,22 +1,22 @@
1
- MIT License
2
-
3
- Portions Copyright (c) 2020 Modus Operandi Inc
4
- Portions Copyright (c) 2018-2019 Chan Zuckerberg Initiative
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
1
+ MIT License
2
+
3
+ Portions Copyright (c) 2020 Modus Operandi Inc
4
+ Portions Copyright (c) 2018-2019 Chan Zuckerberg Initiative
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
package/README.md CHANGED
@@ -1,285 +1,286 @@
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
- <h1 align="center">Licit Editor</h1>
15
-
16
- <div align="center">
17
- <strong>WYSIWYG editor based on ProseMirror & React</strong>
18
- </div>
19
- <div align="center">
20
- Includes significant text markup including size, face, color, line spacing, strikethrough, bold, italic, etc.; multi-level bullet/number lists; images with text wrapping and resizing; and a powerful table (with images and markup within table)
21
- </div>
22
- &nbsp;
23
- <div align="center">
24
-
25
- ![Build Status](https://github.com/MO-Movia/licit/workflows/build/badge.svg?branch=main)
26
- ![GitHub last commit](https://img.shields.io/github/last-commit/MO-Movia/licit)
27
- ![Website](https://img.shields.io/website?down_color=red&down_message=Offline&up_color=green&up_message=Online&url=http://www.greathints.com)
28
- ![Dependencies](https://david-dm.org/MO-Movia/licit.svg)
29
- ![Contributions welcome](https://img.shields.io/badge/contributions-welcome-orange.svg)
30
- [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)
31
-
32
- </div>
33
- <div align="center">
34
- <h3>
35
- <a href="https://github.com/MO-Movia/licit/wiki">Wiki
36
- </a>
37
- <span> | </span>
38
- <a href="http://greathints.com/licit">Demo
39
- </a>
40
- <span> | </span>
41
- <a href="https://prosemirror.net/">Based on...
42
- </a>
43
- </h3>
44
- </div>
45
-
46
- ## Getting Started
47
-
48
- ### Getting repository
49
-
50
- ```
51
- git clone https://github.com/MO-Movia/licit.git
52
- ```
53
- ### Install Prerequisite
54
- ```
55
- Make(0.8.1)
56
- Python(3.8.2)
57
- ```
58
-
59
- ### Install dependencies
60
-
61
- Build [licit-doc-attrs-step](https://github.com/MO-Movia/licit-doc-attrs-step) and copy _modusoperandi-licit-doc-attrs-step-0.0.1.tgz_ to the root folder.
62
- ```
63
- cd licit
64
- npm install
65
- ```
66
-
67
- In order to upload image work correctly, "images" folder is expected outside the root folder 'licit'.
68
-
69
- ### Start the collaboration server
70
- ```
71
- In Windows
72
- To build collab server:
73
- py build_collab_server.py
74
-
75
- To run collab server:
76
- py run_collab_server.py
77
-
78
- In MacOS/Linux
79
- To build collab server:
80
- python build_collab_server.py
81
-
82
- To run collab server:
83
- python run_collab_server.py
84
- ```
85
- ### Start the custom style server
86
- ```
87
- In Windows
88
- To build customstyle server:
89
- py build_customstyle_server.py
90
-
91
- To run customstyle server:
92
- py run_customstyle_server.py
93
-
94
- In MacOS/Linux
95
- To build customstyle server:
96
- python build_customstyle_server.py
97
-
98
- To run customstyle server:
99
- python run_customstyle_server.py
100
- ```
101
- To save custom styles in server "customstyles" folder is expected outside the root folder 'licit'.
102
-
103
- ### Start the image server for Upload image
104
- ```
105
- In Windows
106
- py run_image_server.py
107
-
108
- In MacOS/Linux
109
- python run_image_server.py
110
- ```
111
- ### Start the style service for Custom Styles
112
- ```
113
- git clone https://github.com/MO-Movia/licit-style-service.git
114
- Follow the README.md file to run the service.
115
-
116
- ```
117
-
118
- ### Start the web server
119
-
120
- ```
121
- In Windows
122
- py run_web_server.py
123
-
124
- In MacOS/Linux
125
- python run_web_server.py
126
- ```
127
- Test http://localhost:3001/ from your browser.
128
-
129
- ### Build the distribution files
130
- ```
131
- # At the working directory `licit`
132
- npm run build:dist
133
- ```
134
- ## Use Licit as a component
135
-
136
- For using licit in your project you should follow these steps:
137
-
138
- To build the licit pack, run the below commands:
139
- ```
140
- # At the working directory `licit`
141
- npm pack
142
- ```
143
-
144
- Now you will find a *modusoperandi-licit-0.0.2.tgz* file in the licit directory.
145
-
146
- Add this *.tgz* file to your own angular project and install it using the below command:
147
- ```
148
- # At your angular working directory
149
- npm install ./modusoperandi-licit-0.0.2.tgz
150
- ```
151
-
152
- **After this you can import licit component in your application like:**
153
- ```
154
- import { Licit } from '@modusoperandi/licit';
155
- import * as React from 'react';
156
- import * as ReactDOM from 'react-dom';
157
-
158
- // To create multiple instances:
159
- ReactDOM.render(<Licit docID={1}/>, document.getElementById('root'));
160
- ReactDOM.render(<Licit docID={1}/>, document.getElementById('root2'));
161
- ReactDOM.render(<Licit docID={2}/>, document.getElementById('root3'));
162
- ReactDOM.render(<Licit docID={3}/>, document.getElementById('root4'));
163
-
164
- // OR
165
- ReactDOM.render(React.createElement(Licit, {docID:1}), document.getElementById("root"));
166
- ReactDOM.render(React.createElement(Licit, {docID:2}), document.getElementById("root2"));
167
-
168
- ```
169
- By default, the *collaboration* and the *prosemirror dev tool* are disabled for the editor.
170
- set *docID* to *"0"* for disable the collaboration.
171
- User can enable the same using the below configuration:
172
- ```
173
- ReactDOM.render(React.createElement(Licit, {docID: 1, debug: true}), document.getElementById('root'));
174
- ```
175
- **To use Custom run time in your component :**
176
- ```
177
- Use the below imports for access the image and style API
178
-
179
- import type {ImageLike, StyleProps} from '@modusoperandi/licit';
180
- import {POST, GET, DELETE, PATCH} from '@modusoperandi/licit';
181
- import {setStyles} from '@modusoperandi/licit';
182
- ```
183
-
184
- Please refer *licit\client\index.js* for getting more detailed idea on passing properties and fires events.
185
-
186
- |Property Name| Description|Default Value|
187
- |--|--|--|
188
- | docID |Id of the collaborative document. *docID* empty means collaboration disabled. Based on the value of *docID* decides the collaboration communication |
189
- | collabServiceURL|URL of the collaboration service.|
190
- | debug|Show/hide prosemirror dev tools|false
191
- | width|Width of the editor|100%
192
- | height|Height of the editor|100%
193
- | readOnly |To enable/disable editing mode|false
194
- | data |Document data to be loaded into the editor|null
195
- | disabled|To disable the editor|false
196
- | embedded|To disable/enable inline behavior of the editor|false
197
- | fitToContent|To disable/enable fit to content behavior of the editor|false
198
- | runtime|To pass runtime to the editor. No value means default EditorRuntime | Expects a post method '*saveimage?fn=*' in the server with input parameters *File name and File object*, and this post method parse the form data and return response in JSON format (*{id: string, height: < height of the image>, src: <relative/full_path_of_the_image>, width: < width_of_the_image>}*). Please refer *licit\utils\build_web_server.js* for '*saveimage*' method sample.To configure style service to licit expects methods to saveStyle(),getStyles(),renameStyle() and removeStyle(). Please refer *licit\src\client\LicitRuntime.js* for getting more detailed idea.
199
- | plugins| Array of prosemirror plugin object to pass external prosemirror plugins to the editor. No value means no external plugins | Expects a method '*getEffectiveSchema*' in the prosemirror plugin object that returns new schema object which is the effective schema modified with the current editor schema, that is passed as the input parameter to this method.
200
-
201
- |Event Name| Description|Parameter|
202
- |--|--|--|
203
- |onChange | Fires after each significant change |<ul><li>data: document JSON</li><li>isEmpty: true when empty</li><li>view: prosemirror view</li></ul>
204
- |onReady| Fires once when the editor is ready |licit reference
205
-
206
-
207
- To load the styles:
208
- Either in *angular.json*, add
209
- *"styles": [
210
- "node_modules/licit/dist/styles.css",
211
- ]*
212
- OR
213
- in the default global CSS file *src\styles.scss*, add
214
- *@import "~licit/dist/styles.css"*
215
-
216
-
217
- MathQuill requires jQuery 1.5.2+ to be loaded first:
218
- In *angular.json*, add
219
- *"scripts": [
220
- "node_modules/jquery/dist/jquery.min.js",
221
- ]*
222
-
223
- Run *npm start* to see the licit editor inside the angular application.
224
-
225
- Note: there is a nice Angular test app designed to test the component interface of licit here: https://github.com/melgish/licit-playground - which also allows you to load and save the JSON file.
226
-
227
- ## Use it for your own project
228
-
229
- For using licit in your project you should follow these steps:
230
-
231
- For example (in an Angular app):
232
-
233
- ```
234
- # At the working directory `licit`
235
- npm run build:licit
236
- ```
237
-
238
- Now you will find a new directory (*bin*) with *licit.bundle.js* file.
239
-
240
- Add this *bin* folder to your own project and also include the *licit.bundle.js* file in the scripts array of *angular.json* file as follows:
241
-
242
- "scripts": [
243
- "src/bin/licit.bundle.js"
244
- ]
245
-
246
- To start the collaboration server, follow the steps below:
247
-
248
- Run the Collaborative server in licit/servers directory using following command:
249
-
250
- ```
251
- node run_licit_collab_server.bundle.js PORT='<yourPort>' IP='<yourIP/Hostname>'
252
- ```
253
-
254
- NOTE: In case if you are hosting collab server in a different location or machine then you need to change the host name and port number in *licit\src\client\CollabConnector.js* accordingly.
255
- ```
256
- const url = <yourLocationProtocol> + '\/\/' +
257
- <yourIP/Hostname>+ ':<yourPort>/docs/' +
258
- docID;
259
- ```
260
- Run *ng serve* to see the collaborative licit editor inside the angular application.
261
-
262
- **To deploy LICIT in a server:**
263
- ```
264
- # At the working directory `licit`
265
- npm install
266
- npm run build:licit
267
- ```
268
- Now you will find a *bin* directory, copy the files from bin to the server to run the *Licit* as a standalone application.
269
-
270
- **You can install licit using the commit hash to include in your own `package.json`.**
271
-
272
-
273
- For install the latest commit on master branch:
274
- ```
275
- npm install --save "MO-Movia/licit"
276
- ```
277
- For install a specific commit:
278
- ```
279
- npm install --save "MO-Movia/licit#3de185eaccdfd745bc567d5358cf3281472d8df8"
280
- ```
281
- You may find the latest commit hash at https://github.com/MO-Movia/licit/commits/master
282
-
283
- ## Windows Specific
284
-
285
- Use Git bash or Windows Power Shell to install build and run the project
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+ <h1 align="center">Licit Editor</h1>
15
+
16
+ <div align="center">
17
+ <strong>WYSIWYG editor based on ProseMirror & React</strong>
18
+ </div>
19
+ <div align="center">
20
+ Includes significant text markup including size, face, color, line spacing, strikethrough, bold, italic, etc.; multi-level bullet/number lists; images with text wrapping and resizing; and a powerful table (with images and markup within table)
21
+ </div>
22
+ &nbsp;
23
+ <div align="center">
24
+
25
+ ![Build Status](https://github.com/MO-Movia/licit/workflows/build/badge.svg?branch=main)
26
+ ![GitHub last commit](https://img.shields.io/github/last-commit/MO-Movia/licit)
27
+ [![codecov](https://codecov.io/gh/MO-Movia/licit/branch/main/graph/badge.svg?token=33EHFUZOGL)](https://codecov.io/gh/MO-Movia/licit)
28
+ ![Website](https://img.shields.io/website?down_color=red&down_message=Offline&up_color=green&up_message=Online&url=http://www.greathints.com)
29
+ <!-- ![Dependencies](https://david-dm.org/MO-Movia/licit.svg) -->
30
+ ![Contributions welcome](https://img.shields.io/badge/contributions-welcome-orange.svg)
31
+ [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)
32
+
33
+ </div>
34
+ <div align="center">
35
+ <h3>
36
+ <a href="https://github.com/MO-Movia/licit/wiki">Wiki
37
+ </a>
38
+ <span> | </span>
39
+ <a href="http://greathints.com/licit">Demo
40
+ </a>
41
+ <span> | </span>
42
+ <a href="https://prosemirror.net/">Based on...
43
+ </a>
44
+ </h3>
45
+ </div>
46
+
47
+ ## Getting Started
48
+
49
+ ### Getting repository
50
+
51
+ ```
52
+ git clone https://github.com/MO-Movia/licit.git
53
+ ```
54
+ ### Install Prerequisite
55
+ ```
56
+ Make(0.8.1)
57
+ Python(3.8.2)
58
+ ```
59
+
60
+ ### Install dependencies
61
+
62
+ Build [licit-doc-attrs-step](https://github.com/MO-Movia/licit-doc-attrs-step) and copy _modusoperandi-licit-doc-attrs-step-0.0.1.tgz_ to the root folder.
63
+ ```
64
+ cd licit
65
+ npm install
66
+ ```
67
+
68
+ In order to upload image work correctly, "images" folder is expected outside the root folder 'licit'.
69
+
70
+ ### Start the collaboration server
71
+ ```
72
+ In Windows
73
+ To build collab server:
74
+ py build_collab_server.py
75
+
76
+ To run collab server:
77
+ py run_collab_server.py
78
+
79
+ In MacOS/Linux
80
+ To build collab server:
81
+ python build_collab_server.py
82
+
83
+ To run collab server:
84
+ python run_collab_server.py
85
+ ```
86
+ ### Start the custom style server
87
+ ```
88
+ In Windows
89
+ To build customstyle server:
90
+ py build_customstyle_server.py
91
+
92
+ To run customstyle server:
93
+ py run_customstyle_server.py
94
+
95
+ In MacOS/Linux
96
+ To build customstyle server:
97
+ python build_customstyle_server.py
98
+
99
+ To run customstyle server:
100
+ python run_customstyle_server.py
101
+ ```
102
+ To save custom styles in server "customstyles" folder is expected outside the root folder 'licit'.
103
+
104
+ ### Start the image server for Upload image
105
+ ```
106
+ In Windows
107
+ py run_image_server.py
108
+
109
+ In MacOS/Linux
110
+ python run_image_server.py
111
+ ```
112
+ ### Start the style service for Custom Styles
113
+ ```
114
+ git clone https://github.com/MO-Movia/licit-style-service.git
115
+ Follow the README.md file to run the service.
116
+
117
+ ```
118
+
119
+ ### Start the web server
120
+
121
+ ```
122
+ In Windows
123
+ py run_web_server.py
124
+
125
+ In MacOS/Linux
126
+ python run_web_server.py
127
+ ```
128
+ Test http://localhost:3001/ from your browser.
129
+
130
+ ### Build the distribution files
131
+ ```
132
+ # At the working directory `licit`
133
+ npm run build:dist
134
+ ```
135
+ ## Use Licit as a component
136
+
137
+ For using licit in your project you should follow these steps:
138
+
139
+ To build the licit pack, run the below commands:
140
+ ```
141
+ # At the working directory `licit`
142
+ npm pack
143
+ ```
144
+
145
+ Now you will find a *modusoperandi-licit-0.0.2.tgz* file in the licit directory.
146
+
147
+ Add this *.tgz* file to your own angular project and install it using the below command:
148
+ ```
149
+ # At your angular working directory
150
+ npm install ./modusoperandi-licit-0.0.2.tgz
151
+ ```
152
+
153
+ **After this you can import licit component in your application like:**
154
+ ```
155
+ import { Licit } from '@modusoperandi/licit';
156
+ import * as React from 'react';
157
+ import * as ReactDOM from 'react-dom';
158
+
159
+ // To create multiple instances:
160
+ ReactDOM.render(<Licit docID={1}/>, document.getElementById('root'));
161
+ ReactDOM.render(<Licit docID={1}/>, document.getElementById('root2'));
162
+ ReactDOM.render(<Licit docID={2}/>, document.getElementById('root3'));
163
+ ReactDOM.render(<Licit docID={3}/>, document.getElementById('root4'));
164
+
165
+ // OR
166
+ ReactDOM.render(React.createElement(Licit, {docID:1}), document.getElementById("root"));
167
+ ReactDOM.render(React.createElement(Licit, {docID:2}), document.getElementById("root2"));
168
+
169
+ ```
170
+ By default, the *collaboration* and the *prosemirror dev tool* are disabled for the editor.
171
+ set *docID* to *"0"* for disable the collaboration.
172
+ User can enable the same using the below configuration:
173
+ ```
174
+ ReactDOM.render(React.createElement(Licit, {docID: 1, debug: true}), document.getElementById('root'));
175
+ ```
176
+ **To use Custom run time in your component :**
177
+ ```
178
+ Use the below imports for access the image and style API
179
+
180
+ import type {ImageLike, StyleProps} from '@modusoperandi/licit';
181
+ import {POST, GET, DELETE, PATCH} from '@modusoperandi/licit';
182
+ import {setStyles} from '@modusoperandi/licit';
183
+ ```
184
+
185
+ Please refer *licit\client\index.js* for getting more detailed idea on passing properties and fires events.
186
+
187
+ |Property Name| Description|Default Value|
188
+ |--|--|--|
189
+ | docID |Id of the collaborative document. *docID* empty means collaboration disabled. Based on the value of *docID* decides the collaboration communication |
190
+ | collabServiceURL|URL of the collaboration service.|
191
+ | debug|Show/hide prosemirror dev tools|false
192
+ | width|Width of the editor|100%
193
+ | height|Height of the editor|100%
194
+ | readOnly |To enable/disable editing mode|false
195
+ | data |Document data to be loaded into the editor|null
196
+ | disabled|To disable the editor|false
197
+ | embedded|To disable/enable inline behavior of the editor|false
198
+ | fitToContent|To disable/enable fit to content behavior of the editor|false
199
+ | runtime|To pass runtime to the editor. No value means default EditorRuntime | Expects a post method '*saveimage?fn=*' in the server with input parameters *File name and File object*, and this post method parse the form data and return response in JSON format (*{id: string, height: < height of the image>, src: <relative/full_path_of_the_image>, width: < width_of_the_image>}*). Please refer *licit\utils\build_web_server.js* for '*saveimage*' method sample.To configure style service to licit expects methods to saveStyle(),getStyles(),renameStyle() and removeStyle(). Please refer *licit\src\client\LicitRuntime.js* for getting more detailed idea.
200
+ | plugins| Array of prosemirror plugin object to pass external prosemirror plugins to the editor. No value means no external plugins | Expects a method '*getEffectiveSchema*' in the prosemirror plugin object that returns new schema object which is the effective schema modified with the current editor schema, that is passed as the input parameter to this method.
201
+
202
+ |Event Name| Description|Parameter|
203
+ |--|--|--|
204
+ |onChange | Fires after each significant change |<ul><li>data: document JSON</li><li>isEmpty: true when empty</li><li>view: prosemirror view</li></ul>
205
+ |onReady| Fires once when the editor is ready |licit reference
206
+
207
+
208
+ To load the styles:
209
+ Either in *angular.json*, add
210
+ *"styles": [
211
+ "node_modules/licit/dist/styles.css",
212
+ ]*
213
+ OR
214
+ in the default global CSS file *src\styles.scss*, add
215
+ *@import "~licit/dist/styles.css"*
216
+
217
+
218
+ MathQuill requires jQuery 1.5.2+ to be loaded first:
219
+ In *angular.json*, add
220
+ *"scripts": [
221
+ "node_modules/jquery/dist/jquery.min.js",
222
+ ]*
223
+
224
+ Run *npm start* to see the licit editor inside the angular application.
225
+
226
+ Note: there is a nice Angular test app designed to test the component interface of licit here: https://github.com/melgish/licit-playground - which also allows you to load and save the JSON file.
227
+
228
+ ## Use it for your own project
229
+
230
+ For using licit in your project you should follow these steps:
231
+
232
+ For example (in an Angular app):
233
+
234
+ ```
235
+ # At the working directory `licit`
236
+ npm run build:licit
237
+ ```
238
+
239
+ Now you will find a new directory (*bin*) with *licit.bundle.js* file.
240
+
241
+ Add this *bin* folder to your own project and also include the *licit.bundle.js* file in the scripts array of *angular.json* file as follows:
242
+
243
+ "scripts": [
244
+ "src/bin/licit.bundle.js"
245
+ ]
246
+
247
+ To start the collaboration server, follow the steps below:
248
+
249
+ Run the Collaborative server in licit/servers directory using following command:
250
+
251
+ ```
252
+ node run_licit_collab_server.bundle.js PORT='<yourPort>' IP='<yourIP/Hostname>'
253
+ ```
254
+
255
+ NOTE: In case if you are hosting collab server in a different location or machine then you need to change the host name and port number in *licit\src\client\CollabConnector.js* accordingly.
256
+ ```
257
+ const url = <yourLocationProtocol> + '\/\/' +
258
+ <yourIP/Hostname>+ ':<yourPort>/docs/' +
259
+ docID;
260
+ ```
261
+ Run *ng serve* to see the collaborative licit editor inside the angular application.
262
+
263
+ **To deploy LICIT in a server:**
264
+ ```
265
+ # At the working directory `licit`
266
+ npm install
267
+ npm run build:licit
268
+ ```
269
+ Now you will find a *bin* directory, copy the files from bin to the server to run the *Licit* as a standalone application.
270
+
271
+ **You can install licit using the commit hash to include in your own `package.json`.**
272
+
273
+
274
+ For install the latest commit on master branch:
275
+ ```
276
+ npm install --save "MO-Movia/licit"
277
+ ```
278
+ For install a specific commit:
279
+ ```
280
+ npm install --save "MO-Movia/licit#3de185eaccdfd745bc567d5358cf3281472d8df8"
281
+ ```
282
+ You may find the latest commit hash at https://github.com/MO-Movia/licit/commits/master
283
+
284
+ ## Windows Specific
285
+
286
+ Use Git bash or Windows Power Shell to install build and run the project
@@ -1,7 +1,7 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- import os
5
-
6
- os.system('node utils/build_licit_collab_server.js')
7
- print("Completed")
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+
4
+ import os
5
+
6
+ os.system('node utils/build_licit_collab_server.js')
7
+ print("Completed")
@@ -1,7 +1,7 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- import os
5
-
6
- os.system('node utils/build_customstyle_server.js')
7
- print("Completed")
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+
4
+ import os
5
+
6
+ os.system('node utils/build_customstyle_server.js')
7
+ print("Completed")