@webiny/lexical-editor 0.0.0-unstable.1145e7667f

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 (279) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +17 -0
  3. package/commands/webiny-list.d.ts +7 -0
  4. package/commands/webiny-list.js +13 -0
  5. package/commands/webiny-list.js.map +1 -0
  6. package/commands/webiny-quote.d.ts +5 -0
  7. package/commands/webiny-quote.js +9 -0
  8. package/commands/webiny-quote.js.map +1 -0
  9. package/components/AddRichTextEditorNodeType.d.ts +6 -0
  10. package/components/AddRichTextEditorNodeType.js +28 -0
  11. package/components/AddRichTextEditorNodeType.js.map +1 -0
  12. package/components/AddRichTextEditorPlugin.d.ts +12 -0
  13. package/components/AddRichTextEditorPlugin.js +33 -0
  14. package/components/AddRichTextEditorPlugin.js.map +1 -0
  15. package/components/AddToolbarAction.d.ts +7 -0
  16. package/components/AddToolbarAction.js +33 -0
  17. package/components/AddToolbarAction.js.map +1 -0
  18. package/components/Editor/HeadingEditor.d.ts +7 -0
  19. package/components/Editor/HeadingEditor.js +29 -0
  20. package/components/Editor/HeadingEditor.js.map +1 -0
  21. package/components/Editor/ParagraphEditor.d.ts +7 -0
  22. package/components/Editor/ParagraphEditor.js +30 -0
  23. package/components/Editor/ParagraphEditor.js.map +1 -0
  24. package/components/Editor/RichTextEditor.d.ts +26 -0
  25. package/components/Editor/RichTextEditor.js +138 -0
  26. package/components/Editor/RichTextEditor.js.map +1 -0
  27. package/components/LexicalEditorConfig/LexicalEditorConfig.d.ts +9 -0
  28. package/components/LexicalEditorConfig/LexicalEditorConfig.js +17 -0
  29. package/components/LexicalEditorConfig/LexicalEditorConfig.js.map +1 -0
  30. package/components/LexicalHtmlRenderer.d.ts +16 -0
  31. package/components/LexicalHtmlRenderer.js +67 -0
  32. package/components/LexicalHtmlRenderer.js.map +1 -0
  33. package/components/Toolbar/HeadingToolbar.d.ts +12 -0
  34. package/components/Toolbar/HeadingToolbar.js +23 -0
  35. package/components/Toolbar/HeadingToolbar.js.map +1 -0
  36. package/components/Toolbar/ParagraphToolbar.d.ts +12 -0
  37. package/components/Toolbar/ParagraphToolbar.js +23 -0
  38. package/components/Toolbar/ParagraphToolbar.js.map +1 -0
  39. package/components/Toolbar/Toolbar.css +423 -0
  40. package/components/Toolbar/Toolbar.d.ts +13 -0
  41. package/components/Toolbar/Toolbar.js +181 -0
  42. package/components/Toolbar/Toolbar.js.map +1 -0
  43. package/components/ToolbarActions/BoldAction.d.ts +2 -0
  44. package/components/ToolbarActions/BoldAction.js +43 -0
  45. package/components/ToolbarActions/BoldAction.js.map +1 -0
  46. package/components/ToolbarActions/BulletListAction.d.ts +2 -0
  47. package/components/ToolbarActions/BulletListAction.js +51 -0
  48. package/components/ToolbarActions/BulletListAction.js.map +1 -0
  49. package/components/ToolbarActions/CodeHighlightAction.d.ts +2 -0
  50. package/components/ToolbarActions/CodeHighlightAction.js +43 -0
  51. package/components/ToolbarActions/CodeHighlightAction.js.map +1 -0
  52. package/components/ToolbarActions/FontColorAction.d.ts +11 -0
  53. package/components/ToolbarActions/FontColorAction.js +83 -0
  54. package/components/ToolbarActions/FontColorAction.js.map +1 -0
  55. package/components/ToolbarActions/FontSizeAction.d.ts +2 -0
  56. package/components/ToolbarActions/FontSizeAction.js +101 -0
  57. package/components/ToolbarActions/FontSizeAction.js.map +1 -0
  58. package/components/ToolbarActions/ItalicAction.d.ts +2 -0
  59. package/components/ToolbarActions/ItalicAction.js +43 -0
  60. package/components/ToolbarActions/ItalicAction.js.map +1 -0
  61. package/components/ToolbarActions/LinkAction.d.ts +2 -0
  62. package/components/ToolbarActions/LinkAction.js +64 -0
  63. package/components/ToolbarActions/LinkAction.js.map +1 -0
  64. package/components/ToolbarActions/NumberedListAction.d.ts +2 -0
  65. package/components/ToolbarActions/NumberedListAction.js +53 -0
  66. package/components/ToolbarActions/NumberedListAction.js.map +1 -0
  67. package/components/ToolbarActions/QuoteAction.d.ts +2 -0
  68. package/components/ToolbarActions/QuoteAction.js +53 -0
  69. package/components/ToolbarActions/QuoteAction.js.map +1 -0
  70. package/components/ToolbarActions/TypographyAction.d.ts +11 -0
  71. package/components/ToolbarActions/TypographyAction.js +118 -0
  72. package/components/ToolbarActions/TypographyAction.js.map +1 -0
  73. package/components/ToolbarActions/UnderlineAction.d.ts +2 -0
  74. package/components/ToolbarActions/UnderlineAction.js +43 -0
  75. package/components/ToolbarActions/UnderlineAction.js.map +1 -0
  76. package/components/ToolbarPresets/HeadingToolbarPreset.d.ts +2 -0
  77. package/components/ToolbarPresets/HeadingToolbarPreset.js +52 -0
  78. package/components/ToolbarPresets/HeadingToolbarPreset.js.map +1 -0
  79. package/components/ToolbarPresets/ParagraphToolbarPreset.d.ts +2 -0
  80. package/components/ToolbarPresets/ParagraphToolbarPreset.js +67 -0
  81. package/components/ToolbarPresets/ParagraphToolbarPreset.js.map +1 -0
  82. package/context/FontColorActionContext.d.ts +6 -0
  83. package/context/FontColorActionContext.js +10 -0
  84. package/context/FontColorActionContext.js.map +1 -0
  85. package/context/RichTextEditorContext.d.ts +21 -0
  86. package/context/RichTextEditorContext.js +56 -0
  87. package/context/RichTextEditorContext.js.map +1 -0
  88. package/context/SharedHistoryContext.d.ts +11 -0
  89. package/context/SharedHistoryContext.js +26 -0
  90. package/context/SharedHistoryContext.js.map +1 -0
  91. package/context/TypographyActionContext.d.ts +7 -0
  92. package/context/TypographyActionContext.js +10 -0
  93. package/context/TypographyActionContext.js.map +1 -0
  94. package/hooks/useFontColorPicker.d.ts +2 -0
  95. package/hooks/useFontColorPicker.js +15 -0
  96. package/hooks/useFontColorPicker.js.map +1 -0
  97. package/hooks/useRichTextEditor.d.ts +2 -0
  98. package/hooks/useRichTextEditor.js +15 -0
  99. package/hooks/useRichTextEditor.js.map +1 -0
  100. package/hooks/useTypographyAction.d.ts +1 -0
  101. package/hooks/useTypographyAction.js +15 -0
  102. package/hooks/useTypographyAction.js.map +1 -0
  103. package/hooks/useWebinyList.d.ts +2 -0
  104. package/hooks/useWebinyList.js +39 -0
  105. package/hooks/useWebinyList.js.map +1 -0
  106. package/hooks/useWebinyQuote.d.ts +2 -0
  107. package/hooks/useWebinyQuote.js +20 -0
  108. package/hooks/useWebinyQuote.js.map +1 -0
  109. package/images/icons/LICENSE.md +5 -0
  110. package/images/icons/chat-square-quote.svg +1 -0
  111. package/images/icons/chevron-down.svg +1 -0
  112. package/images/icons/code.svg +1 -0
  113. package/images/icons/font-color.svg +1 -0
  114. package/images/icons/link.svg +1 -0
  115. package/images/icons/list-ol.svg +1 -0
  116. package/images/icons/list-ul.svg +1 -0
  117. package/images/icons/pencil-fill.svg +1 -0
  118. package/images/icons/text-center.svg +1 -0
  119. package/images/icons/text-left.svg +1 -0
  120. package/images/icons/text-paragraph.svg +1 -0
  121. package/images/icons/text-right.svg +1 -0
  122. package/images/icons/type-bold.svg +1 -0
  123. package/images/icons/type-h1.svg +1 -0
  124. package/images/icons/type-h2.svg +1 -0
  125. package/images/icons/type-h3.svg +1 -0
  126. package/images/icons/type-h4.svg +1 -0
  127. package/images/icons/type-h5.svg +1 -0
  128. package/images/icons/type-h6.svg +1 -0
  129. package/images/icons/type-italic.svg +1 -0
  130. package/images/icons/type-strikethrough.svg +1 -0
  131. package/images/icons/type-underline.svg +1 -0
  132. package/images/icons/unlink_icon.svg +1 -0
  133. package/index.d.ts +40 -0
  134. package/index.js +281 -0
  135. package/index.js.map +1 -0
  136. package/nodes/FontColorNode.d.ts +43 -0
  137. package/nodes/FontColorNode.js +127 -0
  138. package/nodes/FontColorNode.js.map +1 -0
  139. package/nodes/TypographyElementNode.d.ts +42 -0
  140. package/nodes/TypographyElementNode.js +154 -0
  141. package/nodes/TypographyElementNode.js.map +1 -0
  142. package/nodes/WebinyQuoteNode.d.ts +29 -0
  143. package/nodes/WebinyQuoteNode.js +148 -0
  144. package/nodes/WebinyQuoteNode.js.map +1 -0
  145. package/nodes/list-node/WebinyListItemNode.d.ts +46 -0
  146. package/nodes/list-node/WebinyListItemNode.js +441 -0
  147. package/nodes/list-node/WebinyListItemNode.js.map +1 -0
  148. package/nodes/list-node/WebinyListNode.d.ts +38 -0
  149. package/nodes/list-node/WebinyListNode.js +253 -0
  150. package/nodes/list-node/WebinyListNode.js.map +1 -0
  151. package/nodes/list-node/formatList.d.ts +12 -0
  152. package/nodes/list-node/formatList.js +423 -0
  153. package/nodes/list-node/formatList.js.map +1 -0
  154. package/nodes/webinyNodes.d.ts +7 -0
  155. package/nodes/webinyNodes.js +21 -0
  156. package/nodes/webinyNodes.js.map +1 -0
  157. package/package.json +41 -0
  158. package/plugins/AutoLinkPlugin/AutoLinkPlugin.d.ts +11 -0
  159. package/plugins/AutoLinkPlugin/AutoLinkPlugin.js +46 -0
  160. package/plugins/AutoLinkPlugin/AutoLinkPlugin.js.map +1 -0
  161. package/plugins/AutoLinkPlugin/index.d.ts +1 -0
  162. package/plugins/AutoLinkPlugin/index.js +16 -0
  163. package/plugins/AutoLinkPlugin/index.js.map +1 -0
  164. package/plugins/BlurEventPlugin/BlurEventPlugin.d.ts +7 -0
  165. package/plugins/BlurEventPlugin/BlurEventPlugin.js +28 -0
  166. package/plugins/BlurEventPlugin/BlurEventPlugin.js.map +1 -0
  167. package/plugins/ClickableLinkPlugin/ClickableLinkPlugin.d.ts +17 -0
  168. package/plugins/ClickableLinkPlugin/ClickableLinkPlugin.js +88 -0
  169. package/plugins/ClickableLinkPlugin/ClickableLinkPlugin.js.map +1 -0
  170. package/plugins/ClickableLinkPlugin/index.d.ts +1 -0
  171. package/plugins/ClickableLinkPlugin/index.js +16 -0
  172. package/plugins/ClickableLinkPlugin/index.js.map +1 -0
  173. package/plugins/CodeHighlightPlugin/CodeHighlightPlugin.d.ts +1 -0
  174. package/plugins/CodeHighlightPlugin/CodeHighlightPlugin.js +20 -0
  175. package/plugins/CodeHighlightPlugin/CodeHighlightPlugin.js.map +1 -0
  176. package/plugins/CodeHighlightPlugin/index.d.ts +1 -0
  177. package/plugins/CodeHighlightPlugin/index.js +16 -0
  178. package/plugins/CodeHighlightPlugin/index.js.map +1 -0
  179. package/plugins/FloatingLinkEditorPlugin/FloatingLinkEditorPlugin.css +118 -0
  180. package/plugins/FloatingLinkEditorPlugin/FloatingLinkEditorPlugin.d.ts +7 -0
  181. package/plugins/FloatingLinkEditorPlugin/FloatingLinkEditorPlugin.js +222 -0
  182. package/plugins/FloatingLinkEditorPlugin/FloatingLinkEditorPlugin.js.map +1 -0
  183. package/plugins/FloatingLinkEditorPlugin/index.d.ts +1 -0
  184. package/plugins/FloatingLinkEditorPlugin/index.js +16 -0
  185. package/plugins/FloatingLinkEditorPlugin/index.js.map +1 -0
  186. package/plugins/FontColorPlugin/FontColorPlugin.d.ts +2 -0
  187. package/plugins/FontColorPlugin/FontColorPlugin.js +38 -0
  188. package/plugins/FontColorPlugin/FontColorPlugin.js.map +1 -0
  189. package/plugins/LexicalUpdateStatePlugin/LexicalUpdateStatePlugin.d.ts +8 -0
  190. package/plugins/LexicalUpdateStatePlugin/LexicalUpdateStatePlugin.js +34 -0
  191. package/plugins/LexicalUpdateStatePlugin/LexicalUpdateStatePlugin.js.map +1 -0
  192. package/plugins/LexicalUpdateStatePlugin/index.d.ts +1 -0
  193. package/plugins/LexicalUpdateStatePlugin/index.js +16 -0
  194. package/plugins/LexicalUpdateStatePlugin/index.js.map +1 -0
  195. package/plugins/TypographyPlugin/TypographyPlugin.d.ts +2 -0
  196. package/plugins/TypographyPlugin/TypographyPlugin.js +31 -0
  197. package/plugins/TypographyPlugin/TypographyPlugin.js.map +1 -0
  198. package/plugins/WebinyListPLugin/WebinyListPlugin.d.ts +1 -0
  199. package/plugins/WebinyListPLugin/WebinyListPlugin.js +25 -0
  200. package/plugins/WebinyListPLugin/WebinyListPlugin.js.map +1 -0
  201. package/plugins/WebinyQuoteNodePlugin/WebinyQuoteNodePlugin.d.ts +1 -0
  202. package/plugins/WebinyQuoteNodePlugin/WebinyQuoteNodePlugin.js +24 -0
  203. package/plugins/WebinyQuoteNodePlugin/WebinyQuoteNodePlugin.js.map +1 -0
  204. package/themes/webinyLexicalTheme.css +420 -0
  205. package/themes/webinyLexicalTheme.d.ts +9 -0
  206. package/themes/webinyLexicalTheme.js +87 -0
  207. package/themes/webinyLexicalTheme.js.map +1 -0
  208. package/types.d.ts +61 -0
  209. package/types.js +12 -0
  210. package/types.js.map +1 -0
  211. package/ui/Divider.d.ts +2 -0
  212. package/ui/Divider.js +13 -0
  213. package/ui/Divider.js.map +1 -0
  214. package/ui/DropDown.d.ts +26 -0
  215. package/ui/DropDown.js +173 -0
  216. package/ui/DropDown.js.map +1 -0
  217. package/ui/Input.css +32 -0
  218. package/ui/LinkPreview.css +69 -0
  219. package/ui/LinkPreview.d.ts +12 -0
  220. package/ui/LinkPreview.js +101 -0
  221. package/ui/LinkPreview.js.map +1 -0
  222. package/ui/Placeholder.css +23 -0
  223. package/ui/Placeholder.d.ts +13 -0
  224. package/ui/Placeholder.js +24 -0
  225. package/ui/Placeholder.js.map +1 -0
  226. package/ui/TextInput.d.ts +18 -0
  227. package/ui/TextInput.js +39 -0
  228. package/ui/TextInput.js.map +1 -0
  229. package/ui/ToolbarActionDialog.d.ts +12 -0
  230. package/ui/ToolbarActionDialog.js +106 -0
  231. package/ui/ToolbarActionDialog.js.map +1 -0
  232. package/utils/generateInitialLexicalValue.d.ts +5 -0
  233. package/utils/generateInitialLexicalValue.js +29 -0
  234. package/utils/generateInitialLexicalValue.js.map +1 -0
  235. package/utils/getDOMRangeRect.d.ts +10 -0
  236. package/utils/getDOMRangeRect.js +27 -0
  237. package/utils/getDOMRangeRect.js.map +1 -0
  238. package/utils/getLexicalTextSelectionState.d.ts +5 -0
  239. package/utils/getLexicalTextSelectionState.js +141 -0
  240. package/utils/getLexicalTextSelectionState.js.map +1 -0
  241. package/utils/getSelectedNode.d.ts +2 -0
  242. package/utils/getSelectedNode.js +30 -0
  243. package/utils/getSelectedNode.js.map +1 -0
  244. package/utils/isValidJSON.d.ts +1 -0
  245. package/utils/isValidJSON.js +18 -0
  246. package/utils/isValidJSON.js.map +1 -0
  247. package/utils/isValidLexicalData.d.ts +2 -0
  248. package/utils/isValidLexicalData.js +24 -0
  249. package/utils/isValidLexicalData.js.map +1 -0
  250. package/utils/nodes/clearNodeFormating.d.ts +2 -0
  251. package/utils/nodes/clearNodeFormating.js +28 -0
  252. package/utils/nodes/clearNodeFormating.js.map +1 -0
  253. package/utils/nodes/formatToParagraph.d.ts +2 -0
  254. package/utils/nodes/formatToParagraph.js +19 -0
  255. package/utils/nodes/formatToParagraph.js.map +1 -0
  256. package/utils/nodes/formatToQuote.d.ts +2 -0
  257. package/utils/nodes/formatToQuote.js +20 -0
  258. package/utils/nodes/formatToQuote.js.map +1 -0
  259. package/utils/nodes/list-node.d.ts +11 -0
  260. package/utils/nodes/list-node.js +107 -0
  261. package/utils/nodes/list-node.js.map +1 -0
  262. package/utils/point.d.ts +21 -0
  263. package/utils/point.js +77 -0
  264. package/utils/point.js.map +1 -0
  265. package/utils/rect.d.ts +47 -0
  266. package/utils/rect.js +169 -0
  267. package/utils/rect.js.map +1 -0
  268. package/utils/sanitizeUrl.d.ts +8 -0
  269. package/utils/sanitizeUrl.js +27 -0
  270. package/utils/sanitizeUrl.js.map +1 -0
  271. package/utils/setFloatingElemPosition.d.ts +3 -0
  272. package/utils/setFloatingElemPosition.js +40 -0
  273. package/utils/setFloatingElemPosition.js.map +1 -0
  274. package/utils/styleObjectToString.d.ts +2 -0
  275. package/utils/styleObjectToString.js +22 -0
  276. package/utils/styleObjectToString.js.map +1 -0
  277. package/utils/toTypographyEmotionMap.d.ts +3 -0
  278. package/utils/toTypographyEmotionMap.js +36 -0
  279. package/utils/toTypographyEmotionMap.js.map +1 -0
@@ -0,0 +1,253 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.$createWebinyListNode = $createWebinyListNode;
8
+ exports.$isWebinyListNode = $isWebinyListNode;
9
+ exports.WebinyListNode = void 0;
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
16
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
18
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
20
+ var _lexical = require("lexical");
21
+ var _utils = require("@lexical/utils");
22
+ var _listNode = require("../../utils/nodes/list-node");
23
+ var _WebinyListItemNode = require("./WebinyListItemNode");
24
+ var TypographyStyleAttrName = "data-theme-list-style-id";
25
+ var WebinyListNode = /*#__PURE__*/function (_ElementNode) {
26
+ (0, _inherits2.default)(WebinyListNode, _ElementNode);
27
+ var _super = (0, _createSuper2.default)(WebinyListNode);
28
+ /** @internal */
29
+
30
+ /** @internal */
31
+
32
+ /** @internal */
33
+
34
+ function WebinyListNode(listType, themeStyleId, start, key) {
35
+ var _this;
36
+ (0, _classCallCheck2.default)(this, WebinyListNode);
37
+ _this = _super.call(this, key);
38
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "__tag", void 0);
39
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "__start", void 0);
40
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "__listType", void 0);
41
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "__themeStyleId", void 0);
42
+ _this.__themeStyleId = themeStyleId;
43
+ var _listType = TAG_TO_WEBINY_LIST_TYPE[listType] || listType;
44
+ _this.__listType = _listType;
45
+ _this.__tag = _listType === "number" ? "ol" : "ul";
46
+ _this.__start = start;
47
+ return _this;
48
+ }
49
+ (0, _createClass2.default)(WebinyListNode, [{
50
+ key: "createDOM",
51
+ value: function createDOM(config) {
52
+ var tag = this.__tag;
53
+ var dom = document.createElement(tag);
54
+ if (this.__start !== 1) {
55
+ dom.setAttribute("start", String(this.__start));
56
+ }
57
+
58
+ // @ts-expect-error Internal field.
59
+ dom.__lexicalListType = this.__listType;
60
+ var theme = config.theme;
61
+ setListThemeClassNames(dom, theme, this, this.__themeStyleId);
62
+ dom.setAttribute(TypographyStyleAttrName, this.__themeStyleId);
63
+ return dom;
64
+ }
65
+ }, {
66
+ key: "getTag",
67
+ value: function getTag() {
68
+ return this.__tag;
69
+ }
70
+ }, {
71
+ key: "getListType",
72
+ value: function getListType() {
73
+ return this.__listType;
74
+ }
75
+ }, {
76
+ key: "getStart",
77
+ value: function getStart() {
78
+ return this.__start;
79
+ }
80
+ }, {
81
+ key: "getStyleId",
82
+ value: function getStyleId() {
83
+ return this.__themeStyleId;
84
+ }
85
+ }, {
86
+ key: "exportJSON",
87
+ value:
88
+ // @ts-ignore
89
+ function exportJSON() {
90
+ var _this$__themeStyleId;
91
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _get2.default)((0, _getPrototypeOf2.default)(WebinyListNode.prototype), "exportJSON", this).call(this)), {}, {
92
+ themeStyleId: (_this$__themeStyleId = this.__themeStyleId) !== null && _this$__themeStyleId !== void 0 ? _this$__themeStyleId : "",
93
+ listType: this.getListType(),
94
+ start: this.getStart(),
95
+ tag: this.getTag(),
96
+ type: "webiny-list",
97
+ version: 1
98
+ });
99
+ }
100
+ }, {
101
+ key: "updateDOM",
102
+ value: function updateDOM(prevNode, dom, config) {
103
+ if (prevNode.__tag !== this.__tag) {
104
+ return true;
105
+ }
106
+ // update styles for different tag styles
107
+ setListThemeClassNames(dom, config.theme, this, this.__themeStyleId);
108
+ dom.setAttribute(TypographyStyleAttrName, this.__themeStyleId);
109
+ return false;
110
+ }
111
+ }, {
112
+ key: "extractWithChild",
113
+ value: function extractWithChild(child) {
114
+ return (0, _WebinyListItemNode.$isWebinyListItemNode)(child);
115
+ }
116
+ }], [{
117
+ key: "getType",
118
+ value: function getType() {
119
+ return "webiny-list";
120
+ }
121
+ }, {
122
+ key: "clone",
123
+ value: function clone(node) {
124
+ return new WebinyListNode(node.getListType(), node.getStyleId(), node.getStart(), node.__key);
125
+ }
126
+ }, {
127
+ key: "importJSON",
128
+ value: function importJSON(serializedNode) {
129
+ var node = $createWebinyListNode(serializedNode.listType, serializedNode.themeStyleId, serializedNode.start);
130
+ node.setFormat(serializedNode.format);
131
+ node.setIndent(serializedNode.indent);
132
+ node.setDirection(serializedNode.direction);
133
+ return node;
134
+ }
135
+ }, {
136
+ key: "importDomConversionMap",
137
+ value: function importDomConversionMap() {
138
+ return {
139
+ conversion: convertWebinyListNode,
140
+ priority: 0
141
+ };
142
+ }
143
+ }, {
144
+ key: "importDOM",
145
+ value: function importDOM() {
146
+ var _this2 = this;
147
+ return {
148
+ ol: function ol() {
149
+ return _this2.importDomConversionMap();
150
+ },
151
+ ul: function ul() {
152
+ return _this2.importDomConversionMap();
153
+ }
154
+ };
155
+ }
156
+ }]);
157
+ return WebinyListNode;
158
+ }(_lexical.ElementNode);
159
+ exports.WebinyListNode = WebinyListNode;
160
+ function setListThemeClassNames(dom, editorTheme, node, themeStyleId) {
161
+ var editorThemeClasses = editorTheme;
162
+ var classesToAdd = [];
163
+ var classesToRemove = [];
164
+ var listTheme = editorThemeClasses.list;
165
+ var emotionMap = (editorTheme === null || editorTheme === void 0 ? void 0 : editorTheme.emotionMap) || {};
166
+ if (listTheme !== undefined) {
167
+ var _emotionMap$themeStyl, _emotionMap$themeStyl2;
168
+ var listLevelsClassNames = listTheme["".concat(node.__tag, "Depth")] || [];
169
+ var listDepth = (0, _listNode.$getListDepth)(node) - 1;
170
+ var normalizedListDepth = listDepth % listLevelsClassNames.length;
171
+ var listLevelClassName = listLevelsClassNames[normalizedListDepth];
172
+ var listClassName = "".concat(listTheme[node.__tag], " ").concat((_emotionMap$themeStyl = (_emotionMap$themeStyl2 = emotionMap[themeStyleId]) === null || _emotionMap$themeStyl2 === void 0 ? void 0 : _emotionMap$themeStyl2.className) !== null && _emotionMap$themeStyl !== void 0 ? _emotionMap$themeStyl : "");
173
+ var nestedListClassName;
174
+ var nestedListTheme = listTheme.nested;
175
+ if (nestedListTheme !== undefined && nestedListTheme.list) {
176
+ nestedListClassName = nestedListTheme.list;
177
+ }
178
+ if (listClassName !== undefined) {
179
+ classesToAdd.push(listClassName);
180
+ }
181
+ if (listLevelClassName !== undefined) {
182
+ var listItemClasses = listLevelClassName.split(" ");
183
+ classesToAdd.push.apply(classesToAdd, (0, _toConsumableArray2.default)(listItemClasses));
184
+ for (var i = 0; i < listLevelsClassNames.length; i++) {
185
+ if (i !== normalizedListDepth) {
186
+ classesToRemove.push(node.__tag + i);
187
+ }
188
+ }
189
+ }
190
+ if (nestedListClassName !== undefined) {
191
+ var nestedListItemClasses = nestedListClassName.split(" ");
192
+ if (listDepth > 1) {
193
+ classesToAdd.push.apply(classesToAdd, (0, _toConsumableArray2.default)(nestedListItemClasses));
194
+ } else {
195
+ classesToRemove.push.apply(classesToRemove, (0, _toConsumableArray2.default)(nestedListItemClasses));
196
+ }
197
+ }
198
+ }
199
+ if (classesToRemove.length > 0) {
200
+ _utils.removeClassNamesFromElement.apply(void 0, [dom].concat(classesToRemove));
201
+ }
202
+ if (classesToAdd.length > 0) {
203
+ _utils.addClassNamesToElement.apply(void 0, [dom].concat(classesToAdd));
204
+ }
205
+ }
206
+
207
+ /*
208
+ * This function normalizes the children of a ListNode after the conversion from HTML,
209
+ * ensuring that they are all ListItemNodes and contain either a single nested ListNode
210
+ * or some other inline content.
211
+ */
212
+ function normalizeChildren(nodes) {
213
+ var normalizedListItems = [];
214
+ for (var i = 0; i < nodes.length; i++) {
215
+ var node = nodes[i];
216
+ if ((0, _WebinyListItemNode.$isWebinyListItemNode)(node)) {
217
+ normalizedListItems.push(node);
218
+ node.getChildren().forEach(function (child) {
219
+ if ($isWebinyListNode(child)) {
220
+ normalizedListItems.push((0, _listNode.wrapInListItem)(child));
221
+ }
222
+ });
223
+ } else {
224
+ normalizedListItems.push((0, _listNode.wrapInListItem)(node));
225
+ }
226
+ }
227
+ return normalizedListItems;
228
+ }
229
+ function convertWebinyListNode(domNode) {
230
+ var nodeName = domNode.nodeName.toLowerCase();
231
+ var node = null;
232
+ if (nodeName === "ol") {
233
+ node = $createWebinyListNode("number", "");
234
+ } else if (nodeName === "ul") {
235
+ node = $createWebinyListNode("bullet", "");
236
+ }
237
+ return {
238
+ // @ts-ignore
239
+ after: normalizeChildren,
240
+ node: node
241
+ };
242
+ }
243
+ var TAG_TO_WEBINY_LIST_TYPE = {
244
+ ol: "number",
245
+ ul: "bullet"
246
+ };
247
+ function $createWebinyListNode(listType, themeStyleId) {
248
+ var start = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
249
+ return new WebinyListNode(listType, themeStyleId, start);
250
+ }
251
+ function $isWebinyListNode(node) {
252
+ return node instanceof WebinyListNode;
253
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TypographyStyleAttrName","WebinyListNode","listType","themeStyleId","start","key","__themeStyleId","_listType","TAG_TO_WEBINY_LIST_TYPE","__listType","__tag","__start","config","tag","dom","document","createElement","setAttribute","String","__lexicalListType","theme","setListThemeClassNames","getListType","getStart","getTag","type","version","prevNode","child","$isWebinyListItemNode","node","getStyleId","__key","serializedNode","$createWebinyListNode","setFormat","format","setIndent","indent","setDirection","direction","conversion","convertWebinyListNode","priority","ol","importDomConversionMap","ul","ElementNode","editorTheme","editorThemeClasses","classesToAdd","classesToRemove","listTheme","list","emotionMap","undefined","listLevelsClassNames","listDepth","$getListDepth","normalizedListDepth","length","listLevelClassName","listClassName","className","nestedListClassName","nestedListTheme","nested","push","listItemClasses","split","i","nestedListItemClasses","removeClassNamesFromElement","addClassNamesToElement","normalizeChildren","nodes","normalizedListItems","getChildren","forEach","$isWebinyListNode","wrapInListItem","domNode","nodeName","toLowerCase","after"],"sources":["WebinyListNode.ts"],"sourcesContent":["import {\n DOMConversion,\n DOMConversionMap,\n DOMConversionOutput,\n EditorConfig,\n ElementNode,\n LexicalNode,\n NodeKey,\n SerializedElementNode,\n Spread\n} from \"lexical\";\nimport { WebinyEditorTheme } from \"~/themes/webinyLexicalTheme\";\nimport { addClassNamesToElement, removeClassNamesFromElement } from \"@lexical/utils\";\nimport { ListNodeTagType } from \"@lexical/list/LexicalListNode\";\nimport { $getListDepth, wrapInListItem } from \"~/utils/nodes/list-node\";\nimport { ListType } from \"@lexical/list\";\nimport { $isWebinyListItemNode, WebinyListItemNode } from \"~/nodes/list-node/WebinyListItemNode\";\n\nconst TypographyStyleAttrName = \"data-theme-list-style-id\";\n\nexport type SerializedWebinyListNode = Spread<\n {\n themeStyleId: string;\n listType: ListType;\n start: number;\n tag: ListNodeTagType;\n type: \"webiny-list\";\n version: 1;\n },\n SerializedElementNode\n>;\n\nexport class WebinyListNode extends ElementNode {\n /** @internal */\n __tag: ListNodeTagType;\n /** @internal */\n __start: number;\n /** @internal */\n __listType: ListType;\n\n __themeStyleId: string;\n\n constructor(listType: ListType, themeStyleId: string, start: number, key?: NodeKey) {\n super(key);\n this.__themeStyleId = themeStyleId;\n const _listType = TAG_TO_WEBINY_LIST_TYPE[listType] || listType;\n this.__listType = _listType;\n this.__tag = _listType === \"number\" ? \"ol\" : \"ul\";\n this.__start = start;\n }\n\n static override getType() {\n return \"webiny-list\";\n }\n\n override createDOM(config: EditorConfig): HTMLElement {\n const tag = this.__tag;\n const dom = document.createElement(tag);\n\n if (this.__start !== 1) {\n dom.setAttribute(\"start\", String(this.__start));\n }\n\n // @ts-expect-error Internal field.\n dom.__lexicalListType = this.__listType;\n const theme = config.theme as WebinyEditorTheme;\n setListThemeClassNames(dom, theme, this, this.__themeStyleId);\n dom.setAttribute(TypographyStyleAttrName, this.__themeStyleId);\n return dom;\n }\n\n static override clone(node: WebinyListNode): WebinyListNode {\n return new WebinyListNode(\n node.getListType(),\n node.getStyleId(),\n node.getStart(),\n node.__key\n );\n }\n\n getTag(): ListNodeTagType {\n return this.__tag;\n }\n\n getListType(): ListType {\n return this.__listType;\n }\n\n getStart(): number {\n return this.__start;\n }\n\n getStyleId(): string {\n return this.__themeStyleId;\n }\n\n static override importJSON(serializedNode: SerializedWebinyListNode): WebinyListNode {\n const node = $createWebinyListNode(\n serializedNode.listType,\n serializedNode.themeStyleId,\n serializedNode.start\n );\n node.setFormat(serializedNode.format);\n node.setIndent(serializedNode.indent);\n node.setDirection(serializedNode.direction);\n return node;\n }\n\n // @ts-ignore\n override exportJSON(): SerializedWebinyListNode {\n return {\n ...super.exportJSON(),\n themeStyleId: this.__themeStyleId ?? \"\",\n listType: this.getListType(),\n start: this.getStart(),\n tag: this.getTag(),\n type: \"webiny-list\",\n version: 1\n };\n }\n\n static importDomConversionMap(): DOMConversion<HTMLElement> | null {\n return {\n conversion: convertWebinyListNode,\n priority: 0\n };\n }\n\n static importDOM(): DOMConversionMap | null {\n return {\n ol: () => {\n return this.importDomConversionMap();\n },\n ul: () => {\n return this.importDomConversionMap();\n }\n };\n }\n\n override updateDOM(prevNode: WebinyListNode, dom: HTMLElement, config: EditorConfig): boolean {\n if (prevNode.__tag !== this.__tag) {\n return true;\n }\n // update styles for different tag styles\n setListThemeClassNames(dom, config.theme, this, this.__themeStyleId);\n dom.setAttribute(TypographyStyleAttrName, this.__themeStyleId);\n return false;\n }\n\n override extractWithChild(child: LexicalNode): boolean {\n return $isWebinyListItemNode(child);\n }\n}\n\nfunction setListThemeClassNames(\n dom: HTMLElement,\n editorTheme: WebinyEditorTheme,\n node: WebinyListNode,\n themeStyleId: string\n): void {\n const editorThemeClasses = editorTheme;\n const classesToAdd = [];\n const classesToRemove = [];\n const listTheme = editorThemeClasses.list;\n const emotionMap = editorTheme?.emotionMap || {};\n if (listTheme !== undefined) {\n const listLevelsClassNames = listTheme[`${node.__tag}Depth`] || [];\n const listDepth = $getListDepth(node) - 1;\n const normalizedListDepth = listDepth % listLevelsClassNames.length;\n const listLevelClassName = listLevelsClassNames[normalizedListDepth];\n const listClassName = `${listTheme[node.__tag]} ${\n emotionMap[themeStyleId]?.className ?? \"\"\n }`;\n let nestedListClassName;\n const nestedListTheme = listTheme.nested;\n\n if (nestedListTheme !== undefined && nestedListTheme.list) {\n nestedListClassName = nestedListTheme.list;\n }\n\n if (listClassName !== undefined) {\n classesToAdd.push(listClassName);\n }\n\n if (listLevelClassName !== undefined) {\n const listItemClasses = listLevelClassName.split(\" \");\n classesToAdd.push(...listItemClasses);\n for (let i = 0; i < listLevelsClassNames.length; i++) {\n if (i !== normalizedListDepth) {\n classesToRemove.push(node.__tag + i);\n }\n }\n }\n\n if (nestedListClassName !== undefined) {\n const nestedListItemClasses = nestedListClassName.split(\" \");\n\n if (listDepth > 1) {\n classesToAdd.push(...nestedListItemClasses);\n } else {\n classesToRemove.push(...nestedListItemClasses);\n }\n }\n }\n\n if (classesToRemove.length > 0) {\n removeClassNamesFromElement(dom, ...classesToRemove);\n }\n\n if (classesToAdd.length > 0) {\n addClassNamesToElement(dom, ...classesToAdd);\n }\n}\n\n/*\n * This function normalizes the children of a ListNode after the conversion from HTML,\n * ensuring that they are all ListItemNodes and contain either a single nested ListNode\n * or some other inline content.\n */\nfunction normalizeChildren(nodes: Array<WebinyListNode>): Array<WebinyListItemNode> {\n const normalizedListItems: Array<WebinyListItemNode> = [];\n for (let i = 0; i < nodes.length; i++) {\n const node = nodes[i];\n if ($isWebinyListItemNode(node)) {\n normalizedListItems.push(node);\n node.getChildren().forEach(child => {\n if ($isWebinyListNode(child)) {\n normalizedListItems.push(wrapInListItem(child));\n }\n });\n } else {\n normalizedListItems.push(wrapInListItem(node));\n }\n }\n return normalizedListItems;\n}\n\nfunction convertWebinyListNode(domNode: Node): DOMConversionOutput {\n const nodeName = domNode.nodeName.toLowerCase();\n let node = null;\n\n if (nodeName === \"ol\") {\n node = $createWebinyListNode(\"number\", \"\");\n } else if (nodeName === \"ul\") {\n node = $createWebinyListNode(\"bullet\", \"\");\n }\n\n return {\n // @ts-ignore\n after: normalizeChildren,\n node\n };\n}\n\nconst TAG_TO_WEBINY_LIST_TYPE: Record<string, ListType> = {\n ol: \"number\",\n ul: \"bullet\"\n};\n\nexport function $createWebinyListNode(\n listType: ListType,\n themeStyleId: string,\n start = 1\n): WebinyListNode {\n return new WebinyListNode(listType, themeStyleId, start);\n}\n\nexport function $isWebinyListNode(node: LexicalNode | null | undefined): node is WebinyListNode {\n return node instanceof WebinyListNode;\n}\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { LexicalEditor, LexicalNode } from "lexical";
2
+ import { WebinyListNode } from "./WebinyListNode";
3
+ import { WebinyListItemNode } from "./WebinyListItemNode";
4
+ import { ListType } from "@lexical/list";
5
+ export declare function insertList(editor: LexicalEditor, listType: ListType, styleId: string): void;
6
+ export declare function removeList(editor: LexicalEditor): void;
7
+ export declare function updateChildrenListItemValue(list: WebinyListNode, children?: Array<LexicalNode>): void;
8
+ export declare function $handleIndent(WebinyListItemNodes: Array<WebinyListItemNode>): void;
9
+ export declare function $handleOutdent(WebinyListItemNodes: Array<WebinyListItemNode>): void;
10
+ export declare function indentList(): void;
11
+ export declare function outdentList(): void;
12
+ export declare function $handleListInsertParagraph(): boolean;