@contember/react-slate-editor-base 2.1.0-alpha.36 → 2.1.0-alpha.39
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.
- package/dist/development/index.cjs +139 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +136 -0
- package/dist/development/index.js.map +1 -0
- package/dist/development/src/components/RichTextEditor.cjs +106 -0
- package/dist/development/src/components/RichTextEditor.cjs.map +1 -0
- package/dist/development/src/components/RichTextEditor.js +106 -0
- package/dist/development/src/components/RichTextEditor.js.map +1 -0
- package/dist/development/src/components/triggers/EditorElementTrigger.cjs +20 -0
- package/dist/development/src/components/triggers/EditorElementTrigger.cjs.map +1 -0
- package/dist/development/src/components/triggers/EditorElementTrigger.js +20 -0
- package/dist/development/src/components/triggers/EditorElementTrigger.js.map +1 -0
- package/dist/development/src/components/triggers/EditorGenericTrigger.cjs +24 -0
- package/dist/development/src/components/triggers/EditorGenericTrigger.cjs.map +1 -0
- package/dist/development/src/components/triggers/EditorGenericTrigger.js +24 -0
- package/dist/development/src/components/triggers/EditorGenericTrigger.js.map +1 -0
- package/dist/development/src/components/triggers/EditorMarkTrigger.cjs +20 -0
- package/dist/development/src/components/triggers/EditorMarkTrigger.cjs.map +1 -0
- package/dist/development/src/components/triggers/EditorMarkTrigger.js +20 -0
- package/dist/development/src/components/triggers/EditorMarkTrigger.js.map +1 -0
- package/dist/development/src/components/triggers/EditorWrapNodeTrigger.cjs +32 -0
- package/dist/development/src/components/triggers/EditorWrapNodeTrigger.cjs.map +1 -0
- package/dist/development/src/components/triggers/EditorWrapNodeTrigger.js +32 -0
- package/dist/development/src/components/triggers/EditorWrapNodeTrigger.js.map +1 -0
- package/dist/development/src/editor/createEditor.cjs +35 -0
- package/dist/development/src/editor/createEditor.cjs.map +1 -0
- package/dist/development/src/editor/createEditor.js +35 -0
- package/dist/development/src/editor/createEditor.js.map +1 -0
- package/dist/development/src/editor/createEditorWithEssentials.cjs +227 -0
- package/dist/development/src/editor/createEditorWithEssentials.cjs.map +1 -0
- package/dist/development/src/editor/createEditorWithEssentials.js +211 -0
- package/dist/development/src/editor/createEditorWithEssentials.js.map +1 -0
- package/dist/development/src/editor/index.cjs +44 -0
- package/dist/development/src/editor/index.cjs.map +1 -0
- package/dist/development/src/editor/index.js +44 -0
- package/dist/development/src/editor/index.js.map +1 -0
- package/dist/development/src/editor/methods/addMarks.cjs +12 -0
- package/dist/development/src/editor/methods/addMarks.cjs.map +1 -0
- package/dist/development/src/editor/methods/addMarks.js +12 -0
- package/dist/development/src/editor/methods/addMarks.js.map +1 -0
- package/dist/development/src/editor/methods/canToggleMark.cjs +7 -0
- package/dist/development/src/editor/methods/canToggleMark.cjs.map +1 -0
- package/dist/development/src/editor/methods/canToggleMark.js +7 -0
- package/dist/development/src/editor/methods/canToggleMark.js.map +1 -0
- package/dist/development/src/editor/methods/closest.cjs +18 -0
- package/dist/development/src/editor/methods/closest.cjs.map +1 -0
- package/dist/development/src/editor/methods/closest.js +18 -0
- package/dist/development/src/editor/methods/closest.js.map +1 -0
- package/dist/development/src/editor/methods/closestBlockEntry.cjs +10 -0
- package/dist/development/src/editor/methods/closestBlockEntry.cjs.map +1 -0
- package/dist/development/src/editor/methods/closestBlockEntry.js +10 -0
- package/dist/development/src/editor/methods/closestBlockEntry.js.map +1 -0
- package/dist/development/src/editor/methods/closestViableBlockContainerEntry.cjs +9 -0
- package/dist/development/src/editor/methods/closestViableBlockContainerEntry.cjs.map +1 -0
- package/dist/development/src/editor/methods/closestViableBlockContainerEntry.js +9 -0
- package/dist/development/src/editor/methods/closestViableBlockContainerEntry.js.map +1 -0
- package/dist/development/src/editor/methods/ejectElement.cjs +15 -0
- package/dist/development/src/editor/methods/ejectElement.cjs.map +1 -0
- package/dist/development/src/editor/methods/ejectElement.js +15 -0
- package/dist/development/src/editor/methods/ejectElement.js.map +1 -0
- package/dist/development/src/editor/methods/elementToSpecifics.cjs +8 -0
- package/dist/development/src/editor/methods/elementToSpecifics.cjs.map +1 -0
- package/dist/development/src/editor/methods/elementToSpecifics.js +8 -0
- package/dist/development/src/editor/methods/elementToSpecifics.js.map +1 -0
- package/dist/development/src/editor/methods/getElementDataAttributes.cjs +13 -0
- package/dist/development/src/editor/methods/getElementDataAttributes.cjs.map +1 -0
- package/dist/development/src/editor/methods/getElementDataAttributes.js +13 -0
- package/dist/development/src/editor/methods/getElementDataAttributes.js.map +1 -0
- package/dist/development/src/editor/methods/getPreviousSibling.cjs +13 -0
- package/dist/development/src/editor/methods/getPreviousSibling.cjs.map +1 -0
- package/dist/development/src/editor/methods/getPreviousSibling.js +13 -0
- package/dist/development/src/editor/methods/getPreviousSibling.js.map +1 -0
- package/dist/development/src/editor/methods/hasMarks.cjs +23 -0
- package/dist/development/src/editor/methods/hasMarks.cjs.map +1 -0
- package/dist/development/src/editor/methods/hasMarks.js +23 -0
- package/dist/development/src/editor/methods/hasMarks.js.map +1 -0
- package/dist/development/src/editor/methods/hasParentOfType.cjs +15 -0
- package/dist/development/src/editor/methods/hasParentOfType.cjs.map +1 -0
- package/dist/development/src/editor/methods/hasParentOfType.js +15 -0
- package/dist/development/src/editor/methods/hasParentOfType.js.map +1 -0
- package/dist/development/src/editor/methods/isElementType.cjs +24 -0
- package/dist/development/src/editor/methods/isElementType.cjs.map +1 -0
- package/dist/development/src/editor/methods/isElementType.js +24 -0
- package/dist/development/src/editor/methods/isElementType.js.map +1 -0
- package/dist/development/src/editor/methods/permissivelyDeserializeNodes.cjs +22 -0
- package/dist/development/src/editor/methods/permissivelyDeserializeNodes.cjs.map +1 -0
- package/dist/development/src/editor/methods/permissivelyDeserializeNodes.js +22 -0
- package/dist/development/src/editor/methods/permissivelyDeserializeNodes.js.map +1 -0
- package/dist/development/src/editor/methods/removeMarks.cjs +12 -0
- package/dist/development/src/editor/methods/removeMarks.cjs.map +1 -0
- package/dist/development/src/editor/methods/removeMarks.js +12 -0
- package/dist/development/src/editor/methods/removeMarks.js.map +1 -0
- package/dist/development/src/editor/methods/serializeNodes.cjs +15 -0
- package/dist/development/src/editor/methods/serializeNodes.cjs.map +1 -0
- package/dist/development/src/editor/methods/serializeNodes.js +15 -0
- package/dist/development/src/editor/methods/serializeNodes.js.map +1 -0
- package/dist/development/src/editor/methods/strictlyDeserializeNodes.cjs +14 -0
- package/dist/development/src/editor/methods/strictlyDeserializeNodes.cjs.map +1 -0
- package/dist/development/src/editor/methods/strictlyDeserializeNodes.js +14 -0
- package/dist/development/src/editor/methods/strictlyDeserializeNodes.js.map +1 -0
- package/dist/development/src/editor/methods/textToSpecifics.cjs +8 -0
- package/dist/development/src/editor/methods/textToSpecifics.cjs.map +1 -0
- package/dist/development/src/editor/methods/textToSpecifics.js +8 -0
- package/dist/development/src/editor/methods/textToSpecifics.js.map +1 -0
- package/dist/development/src/editor/methods/toLatestFormat.cjs +32 -0
- package/dist/development/src/editor/methods/toLatestFormat.cjs.map +1 -0
- package/dist/development/src/editor/methods/toLatestFormat.js +32 -0
- package/dist/development/src/editor/methods/toLatestFormat.js.map +1 -0
- package/dist/development/src/editor/methods/topLevelNodes.cjs +12 -0
- package/dist/development/src/editor/methods/topLevelNodes.cjs.map +1 -0
- package/dist/development/src/editor/methods/topLevelNodes.js +12 -0
- package/dist/development/src/editor/methods/topLevelNodes.js.map +1 -0
- package/dist/development/src/internal/components/DefaultElement.cjs +11 -0
- package/dist/development/src/internal/components/DefaultElement.cjs.map +1 -0
- package/dist/development/src/internal/components/DefaultElement.js +11 -0
- package/dist/development/src/internal/components/DefaultElement.js.map +1 -0
- package/dist/development/src/internal/hooks/useRichTextFieldNodes.cjs +28 -0
- package/dist/development/src/internal/hooks/useRichTextFieldNodes.cjs.map +1 -0
- package/dist/development/src/internal/hooks/useRichTextFieldNodes.js +28 -0
- package/dist/development/src/internal/hooks/useRichTextFieldNodes.js.map +1 -0
- package/dist/development/src/internal/utils/EditorPasteUtils.cjs +47 -0
- package/dist/development/src/internal/utils/EditorPasteUtils.cjs.map +1 -0
- package/dist/development/src/internal/utils/EditorPasteUtils.js +47 -0
- package/dist/development/src/internal/utils/EditorPasteUtils.js.map +1 -0
- package/dist/development/src/internal/utils/parseUrl.cjs +14 -0
- package/dist/development/src/internal/utils/parseUrl.cjs.map +1 -0
- package/dist/development/src/internal/utils/parseUrl.js +14 -0
- package/dist/development/src/internal/utils/parseUrl.js.map +1 -0
- package/dist/development/src/plugins/attributes/alignment/alignButton.cjs +21 -0
- package/dist/development/src/plugins/attributes/alignment/alignButton.cjs.map +1 -0
- package/dist/development/src/plugins/attributes/alignment/alignButton.js +21 -0
- package/dist/development/src/plugins/attributes/alignment/alignButton.js.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/HtmlDeserializer.cjs +136 -0
- package/dist/development/src/plugins/behaviour/paste/HtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/HtmlDeserializer.js +136 -0
- package/dist/development/src/plugins/behaviour/paste/HtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/createMarkHtmlDeserializer.cjs +15 -0
- package/dist/development/src/plugins/behaviour/paste/createMarkHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/createMarkHtmlDeserializer.js +15 -0
- package/dist/development/src/plugins/behaviour/paste/createMarkHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/withPaste.cjs +24 -0
- package/dist/development/src/plugins/behaviour/paste/withPaste.cjs.map +1 -0
- package/dist/development/src/plugins/behaviour/paste/withPaste.js +24 -0
- package/dist/development/src/plugins/behaviour/paste/withPaste.js.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorElement.cjs +44 -0
- package/dist/development/src/plugins/element/anchors/AnchorElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorElement.js +44 -0
- package/dist/development/src/plugins/element/anchors/AnchorElement.js.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorHtmlDeserializer.cjs +19 -0
- package/dist/development/src/plugins/element/anchors/AnchorHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorHtmlDeserializer.js +19 -0
- package/dist/development/src/plugins/element/anchors/AnchorHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorModifications.cjs +29 -0
- package/dist/development/src/plugins/element/anchors/AnchorModifications.cjs.map +1 -0
- package/dist/development/src/plugins/element/anchors/AnchorModifications.js +29 -0
- package/dist/development/src/plugins/element/anchors/AnchorModifications.js.map +1 -0
- package/dist/development/src/plugins/element/anchors/withAnchors.cjs +21 -0
- package/dist/development/src/plugins/element/anchors/withAnchors.cjs.map +1 -0
- package/dist/development/src/plugins/element/anchors/withAnchors.js +21 -0
- package/dist/development/src/plugins/element/anchors/withAnchors.js.map +1 -0
- package/dist/development/src/plugins/element/headings/HeadingElement.cjs +41 -0
- package/dist/development/src/plugins/element/headings/HeadingElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/headings/HeadingElement.js +41 -0
- package/dist/development/src/plugins/element/headings/HeadingElement.js.map +1 -0
- package/dist/development/src/plugins/element/headings/HeadingHtmlDeserializer.cjs +22 -0
- package/dist/development/src/plugins/element/headings/HeadingHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/element/headings/HeadingHtmlDeserializer.js +22 -0
- package/dist/development/src/plugins/element/headings/HeadingHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/element/headings/withHeadings.cjs +70 -0
- package/dist/development/src/plugins/element/headings/withHeadings.cjs.map +1 -0
- package/dist/development/src/plugins/element/headings/withHeadings.js +70 -0
- package/dist/development/src/plugins/element/headings/withHeadings.js.map +1 -0
- package/dist/development/src/plugins/element/horizonalRules/HorizontalRuleElement.cjs +41 -0
- package/dist/development/src/plugins/element/horizonalRules/HorizontalRuleElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/horizonalRules/HorizontalRuleElement.js +41 -0
- package/dist/development/src/plugins/element/horizonalRules/HorizontalRuleElement.js.map +1 -0
- package/dist/development/src/plugins/element/horizonalRules/withHorizontalRules.cjs +75 -0
- package/dist/development/src/plugins/element/horizonalRules/withHorizontalRules.cjs.map +1 -0
- package/dist/development/src/plugins/element/horizonalRules/withHorizontalRules.js +75 -0
- package/dist/development/src/plugins/element/horizonalRules/withHorizontalRules.js.map +1 -0
- package/dist/development/src/plugins/element/lists/ListElement.cjs +26 -0
- package/dist/development/src/plugins/element/lists/ListElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/ListElement.js +26 -0
- package/dist/development/src/plugins/element/lists/ListElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/ListHtmlDeserializer.cjs +98 -0
- package/dist/development/src/plugins/element/lists/ListHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/ListHtmlDeserializer.js +98 -0
- package/dist/development/src/plugins/element/lists/ListHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/element/lists/ListItemElement.cjs +53 -0
- package/dist/development/src/plugins/element/lists/ListItemElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/ListItemElement.js +53 -0
- package/dist/development/src/plugins/element/lists/ListItemElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/OrderedListElement.cjs +25 -0
- package/dist/development/src/plugins/element/lists/OrderedListElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/OrderedListElement.js +25 -0
- package/dist/development/src/plugins/element/lists/OrderedListElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/UnorderedListElement.cjs +25 -0
- package/dist/development/src/plugins/element/lists/UnorderedListElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/UnorderedListElement.js +25 -0
- package/dist/development/src/plugins/element/lists/UnorderedListElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/dedentListItem.cjs +57 -0
- package/dist/development/src/plugins/element/lists/transforms/dedentListItem.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/dedentListItem.js +57 -0
- package/dist/development/src/plugins/element/lists/transforms/dedentListItem.js.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/indentListItem.cjs +57 -0
- package/dist/development/src/plugins/element/lists/transforms/indentListItem.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/indentListItem.js +57 -0
- package/dist/development/src/plugins/element/lists/transforms/indentListItem.js.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/normalizeListElement.cjs +22 -0
- package/dist/development/src/plugins/element/lists/transforms/normalizeListElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/normalizeListElement.js +22 -0
- package/dist/development/src/plugins/element/lists/transforms/normalizeListElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/toggleListElement.cjs +93 -0
- package/dist/development/src/plugins/element/lists/transforms/toggleListElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/transforms/toggleListElement.js +93 -0
- package/dist/development/src/plugins/element/lists/transforms/toggleListElement.js.map +1 -0
- package/dist/development/src/plugins/element/lists/withLists.cjs +153 -0
- package/dist/development/src/plugins/element/lists/withLists.cjs.map +1 -0
- package/dist/development/src/plugins/element/lists/withLists.js +153 -0
- package/dist/development/src/plugins/element/lists/withLists.js.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphElement.cjs +49 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphElement.js +49 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphElement.js.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.cjs +11 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.js +11 -0
- package/dist/development/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/withParagraphs.cjs +58 -0
- package/dist/development/src/plugins/element/paragraphs/withParagraphs.cjs.map +1 -0
- package/dist/development/src/plugins/element/paragraphs/withParagraphs.js +58 -0
- package/dist/development/src/plugins/element/paragraphs/withParagraphs.js.map +1 -0
- package/dist/development/src/plugins/element/scrollTargets/ScrollTargetElement.cjs +51 -0
- package/dist/development/src/plugins/element/scrollTargets/ScrollTargetElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/scrollTargets/ScrollTargetElement.js +51 -0
- package/dist/development/src/plugins/element/scrollTargets/ScrollTargetElement.js.map +1 -0
- package/dist/development/src/plugins/element/scrollTargets/withScrollTargets.cjs +9 -0
- package/dist/development/src/plugins/element/scrollTargets/withScrollTargets.cjs.map +1 -0
- package/dist/development/src/plugins/element/scrollTargets/withScrollTargets.js +9 -0
- package/dist/development/src/plugins/element/scrollTargets/withScrollTargets.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableCellElement.cjs +39 -0
- package/dist/development/src/plugins/element/tables/TableCellElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableCellElement.js +39 -0
- package/dist/development/src/plugins/element/tables/TableCellElement.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableElement.cjs +114 -0
- package/dist/development/src/plugins/element/tables/TableElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableElement.js +114 -0
- package/dist/development/src/plugins/element/tables/TableElement.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableElementSelection.cjs +20 -0
- package/dist/development/src/plugins/element/tables/TableElementSelection.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableElementSelection.js +20 -0
- package/dist/development/src/plugins/element/tables/TableElementSelection.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableHtmlDeserializer.cjs +36 -0
- package/dist/development/src/plugins/element/tables/TableHtmlDeserializer.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableHtmlDeserializer.js +36 -0
- package/dist/development/src/plugins/element/tables/TableHtmlDeserializer.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableModifications.cjs +134 -0
- package/dist/development/src/plugins/element/tables/TableModifications.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableModifications.js +134 -0
- package/dist/development/src/plugins/element/tables/TableModifications.js.map +1 -0
- package/dist/development/src/plugins/element/tables/TableRowElement.cjs +43 -0
- package/dist/development/src/plugins/element/tables/TableRowElement.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/TableRowElement.js +43 -0
- package/dist/development/src/plugins/element/tables/TableRowElement.js.map +1 -0
- package/dist/development/src/plugins/element/tables/gaugeTableColumnCount.cjs +25 -0
- package/dist/development/src/plugins/element/tables/gaugeTableColumnCount.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/gaugeTableColumnCount.js +25 -0
- package/dist/development/src/plugins/element/tables/gaugeTableColumnCount.js.map +1 -0
- package/dist/development/src/plugins/element/tables/withTables.cjs +283 -0
- package/dist/development/src/plugins/element/tables/withTables.cjs.map +1 -0
- package/dist/development/src/plugins/element/tables/withTables.js +283 -0
- package/dist/development/src/plugins/element/tables/withTables.js.map +1 -0
- package/dist/development/src/plugins/text/bold/boldMark.cjs +13 -0
- package/dist/development/src/plugins/text/bold/boldMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/bold/boldMark.js +13 -0
- package/dist/development/src/plugins/text/bold/boldMark.js.map +1 -0
- package/dist/development/src/plugins/text/bold/withBold.cjs +16 -0
- package/dist/development/src/plugins/text/bold/withBold.cjs.map +1 -0
- package/dist/development/src/plugins/text/bold/withBold.js +16 -0
- package/dist/development/src/plugins/text/bold/withBold.js.map +1 -0
- package/dist/development/src/plugins/text/code/codeMark.cjs +13 -0
- package/dist/development/src/plugins/text/code/codeMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/code/codeMark.js +13 -0
- package/dist/development/src/plugins/text/code/codeMark.js.map +1 -0
- package/dist/development/src/plugins/text/code/withCode.cjs +9 -0
- package/dist/development/src/plugins/text/code/withCode.cjs.map +1 -0
- package/dist/development/src/plugins/text/code/withCode.js +9 -0
- package/dist/development/src/plugins/text/code/withCode.js.map +1 -0
- package/dist/development/src/plugins/text/highlight/highlightMark.cjs +13 -0
- package/dist/development/src/plugins/text/highlight/highlightMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/highlight/highlightMark.js +13 -0
- package/dist/development/src/plugins/text/highlight/highlightMark.js.map +1 -0
- package/dist/development/src/plugins/text/highlight/withHighlight.cjs +9 -0
- package/dist/development/src/plugins/text/highlight/withHighlight.cjs.map +1 -0
- package/dist/development/src/plugins/text/highlight/withHighlight.js +9 -0
- package/dist/development/src/plugins/text/highlight/withHighlight.js.map +1 -0
- package/dist/development/src/plugins/text/italic/italicMark.cjs +13 -0
- package/dist/development/src/plugins/text/italic/italicMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/italic/italicMark.js +13 -0
- package/dist/development/src/plugins/text/italic/italicMark.js.map +1 -0
- package/dist/development/src/plugins/text/italic/withItalic.cjs +16 -0
- package/dist/development/src/plugins/text/italic/withItalic.cjs.map +1 -0
- package/dist/development/src/plugins/text/italic/withItalic.js +16 -0
- package/dist/development/src/plugins/text/italic/withItalic.js.map +1 -0
- package/dist/development/src/plugins/text/newline/withNewline.cjs +15 -0
- package/dist/development/src/plugins/text/newline/withNewline.cjs.map +1 -0
- package/dist/development/src/plugins/text/newline/withNewline.js +15 -0
- package/dist/development/src/plugins/text/newline/withNewline.js.map +1 -0
- package/dist/development/src/plugins/text/strikeThrough/strikeThroughMark.cjs +13 -0
- package/dist/development/src/plugins/text/strikeThrough/strikeThroughMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/strikeThrough/strikeThroughMark.js +13 -0
- package/dist/development/src/plugins/text/strikeThrough/strikeThroughMark.js.map +1 -0
- package/dist/development/src/plugins/text/strikeThrough/withStrikeThrough.cjs +17 -0
- package/dist/development/src/plugins/text/strikeThrough/withStrikeThrough.cjs.map +1 -0
- package/dist/development/src/plugins/text/strikeThrough/withStrikeThrough.js +17 -0
- package/dist/development/src/plugins/text/strikeThrough/withStrikeThrough.js.map +1 -0
- package/dist/development/src/plugins/text/underline/underlineMark.cjs +13 -0
- package/dist/development/src/plugins/text/underline/underlineMark.cjs.map +1 -0
- package/dist/development/src/plugins/text/underline/underlineMark.js +13 -0
- package/dist/development/src/plugins/text/underline/underlineMark.js.map +1 -0
- package/dist/development/src/plugins/text/underline/withUnderline.cjs +17 -0
- package/dist/development/src/plugins/text/underline/withUnderline.cjs.map +1 -0
- package/dist/development/src/plugins/text/underline/withUnderline.js +17 -0
- package/dist/development/src/plugins/text/underline/withUnderline.js.map +1 -0
- package/dist/development/src/slate-reexport.cjs +10 -0
- package/dist/development/src/slate-reexport.cjs.map +1 -0
- package/dist/development/src/slate-reexport.js +8 -0
- package/dist/development/src/slate-reexport.js.map +1 -0
- package/dist/production/index.cjs +139 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +136 -0
- package/dist/production/index.js.map +1 -0
- package/dist/production/src/components/RichTextEditor.cjs +94 -0
- package/dist/production/src/components/RichTextEditor.cjs.map +1 -0
- package/dist/production/src/components/RichTextEditor.js +94 -0
- package/dist/production/src/components/RichTextEditor.js.map +1 -0
- package/dist/production/src/components/triggers/EditorElementTrigger.cjs +16 -0
- package/dist/production/src/components/triggers/EditorElementTrigger.cjs.map +1 -0
- package/dist/production/src/components/triggers/EditorElementTrigger.js +16 -0
- package/dist/production/src/components/triggers/EditorElementTrigger.js.map +1 -0
- package/dist/production/src/components/triggers/EditorGenericTrigger.cjs +20 -0
- package/dist/production/src/components/triggers/EditorGenericTrigger.cjs.map +1 -0
- package/dist/production/src/components/triggers/EditorGenericTrigger.js +20 -0
- package/dist/production/src/components/triggers/EditorGenericTrigger.js.map +1 -0
- package/dist/production/src/components/triggers/EditorMarkTrigger.cjs +16 -0
- package/dist/production/src/components/triggers/EditorMarkTrigger.cjs.map +1 -0
- package/dist/production/src/components/triggers/EditorMarkTrigger.js +16 -0
- package/dist/production/src/components/triggers/EditorMarkTrigger.js.map +1 -0
- package/dist/production/src/components/triggers/EditorWrapNodeTrigger.cjs +28 -0
- package/dist/production/src/components/triggers/EditorWrapNodeTrigger.cjs.map +1 -0
- package/dist/production/src/components/triggers/EditorWrapNodeTrigger.js +28 -0
- package/dist/production/src/components/triggers/EditorWrapNodeTrigger.js.map +1 -0
- package/dist/production/src/editor/createEditor.cjs +35 -0
- package/dist/production/src/editor/createEditor.cjs.map +1 -0
- package/dist/production/src/editor/createEditor.js +35 -0
- package/dist/production/src/editor/createEditor.js.map +1 -0
- package/dist/production/src/editor/createEditorWithEssentials.cjs +227 -0
- package/dist/production/src/editor/createEditorWithEssentials.cjs.map +1 -0
- package/dist/production/src/editor/createEditorWithEssentials.js +211 -0
- package/dist/production/src/editor/createEditorWithEssentials.js.map +1 -0
- package/dist/production/src/editor/index.cjs +44 -0
- package/dist/production/src/editor/index.cjs.map +1 -0
- package/dist/production/src/editor/index.js +44 -0
- package/dist/production/src/editor/index.js.map +1 -0
- package/dist/production/src/editor/methods/addMarks.cjs +12 -0
- package/dist/production/src/editor/methods/addMarks.cjs.map +1 -0
- package/dist/production/src/editor/methods/addMarks.js +12 -0
- package/dist/production/src/editor/methods/addMarks.js.map +1 -0
- package/dist/production/src/editor/methods/canToggleMark.cjs +7 -0
- package/dist/production/src/editor/methods/canToggleMark.cjs.map +1 -0
- package/dist/production/src/editor/methods/canToggleMark.js +7 -0
- package/dist/production/src/editor/methods/canToggleMark.js.map +1 -0
- package/dist/production/src/editor/methods/closest.cjs +18 -0
- package/dist/production/src/editor/methods/closest.cjs.map +1 -0
- package/dist/production/src/editor/methods/closest.js +18 -0
- package/dist/production/src/editor/methods/closest.js.map +1 -0
- package/dist/production/src/editor/methods/closestBlockEntry.cjs +10 -0
- package/dist/production/src/editor/methods/closestBlockEntry.cjs.map +1 -0
- package/dist/production/src/editor/methods/closestBlockEntry.js +10 -0
- package/dist/production/src/editor/methods/closestBlockEntry.js.map +1 -0
- package/dist/production/src/editor/methods/closestViableBlockContainerEntry.cjs +9 -0
- package/dist/production/src/editor/methods/closestViableBlockContainerEntry.cjs.map +1 -0
- package/dist/production/src/editor/methods/closestViableBlockContainerEntry.js +9 -0
- package/dist/production/src/editor/methods/closestViableBlockContainerEntry.js.map +1 -0
- package/dist/production/src/editor/methods/ejectElement.cjs +15 -0
- package/dist/production/src/editor/methods/ejectElement.cjs.map +1 -0
- package/dist/production/src/editor/methods/ejectElement.js +15 -0
- package/dist/production/src/editor/methods/ejectElement.js.map +1 -0
- package/dist/production/src/editor/methods/elementToSpecifics.cjs +8 -0
- package/dist/production/src/editor/methods/elementToSpecifics.cjs.map +1 -0
- package/dist/production/src/editor/methods/elementToSpecifics.js +8 -0
- package/dist/production/src/editor/methods/elementToSpecifics.js.map +1 -0
- package/dist/production/src/editor/methods/getElementDataAttributes.cjs +13 -0
- package/dist/production/src/editor/methods/getElementDataAttributes.cjs.map +1 -0
- package/dist/production/src/editor/methods/getElementDataAttributes.js +13 -0
- package/dist/production/src/editor/methods/getElementDataAttributes.js.map +1 -0
- package/dist/production/src/editor/methods/getPreviousSibling.cjs +13 -0
- package/dist/production/src/editor/methods/getPreviousSibling.cjs.map +1 -0
- package/dist/production/src/editor/methods/getPreviousSibling.js +13 -0
- package/dist/production/src/editor/methods/getPreviousSibling.js.map +1 -0
- package/dist/production/src/editor/methods/hasMarks.cjs +23 -0
- package/dist/production/src/editor/methods/hasMarks.cjs.map +1 -0
- package/dist/production/src/editor/methods/hasMarks.js +23 -0
- package/dist/production/src/editor/methods/hasMarks.js.map +1 -0
- package/dist/production/src/editor/methods/hasParentOfType.cjs +15 -0
- package/dist/production/src/editor/methods/hasParentOfType.cjs.map +1 -0
- package/dist/production/src/editor/methods/hasParentOfType.js +15 -0
- package/dist/production/src/editor/methods/hasParentOfType.js.map +1 -0
- package/dist/production/src/editor/methods/isElementType.cjs +24 -0
- package/dist/production/src/editor/methods/isElementType.cjs.map +1 -0
- package/dist/production/src/editor/methods/isElementType.js +24 -0
- package/dist/production/src/editor/methods/isElementType.js.map +1 -0
- package/dist/production/src/editor/methods/permissivelyDeserializeNodes.cjs +22 -0
- package/dist/production/src/editor/methods/permissivelyDeserializeNodes.cjs.map +1 -0
- package/dist/production/src/editor/methods/permissivelyDeserializeNodes.js +22 -0
- package/dist/production/src/editor/methods/permissivelyDeserializeNodes.js.map +1 -0
- package/dist/production/src/editor/methods/removeMarks.cjs +12 -0
- package/dist/production/src/editor/methods/removeMarks.cjs.map +1 -0
- package/dist/production/src/editor/methods/removeMarks.js +12 -0
- package/dist/production/src/editor/methods/removeMarks.js.map +1 -0
- package/dist/production/src/editor/methods/serializeNodes.cjs +15 -0
- package/dist/production/src/editor/methods/serializeNodes.cjs.map +1 -0
- package/dist/production/src/editor/methods/serializeNodes.js +15 -0
- package/dist/production/src/editor/methods/serializeNodes.js.map +1 -0
- package/dist/production/src/editor/methods/strictlyDeserializeNodes.cjs +14 -0
- package/dist/production/src/editor/methods/strictlyDeserializeNodes.cjs.map +1 -0
- package/dist/production/src/editor/methods/strictlyDeserializeNodes.js +14 -0
- package/dist/production/src/editor/methods/strictlyDeserializeNodes.js.map +1 -0
- package/dist/production/src/editor/methods/textToSpecifics.cjs +8 -0
- package/dist/production/src/editor/methods/textToSpecifics.cjs.map +1 -0
- package/dist/production/src/editor/methods/textToSpecifics.js +8 -0
- package/dist/production/src/editor/methods/textToSpecifics.js.map +1 -0
- package/dist/production/src/editor/methods/toLatestFormat.cjs +32 -0
- package/dist/production/src/editor/methods/toLatestFormat.cjs.map +1 -0
- package/dist/production/src/editor/methods/toLatestFormat.js +32 -0
- package/dist/production/src/editor/methods/toLatestFormat.js.map +1 -0
- package/dist/production/src/editor/methods/topLevelNodes.cjs +12 -0
- package/dist/production/src/editor/methods/topLevelNodes.cjs.map +1 -0
- package/dist/production/src/editor/methods/topLevelNodes.js +12 -0
- package/dist/production/src/editor/methods/topLevelNodes.js.map +1 -0
- package/dist/production/src/internal/components/DefaultElement.cjs +11 -0
- package/dist/production/src/internal/components/DefaultElement.cjs.map +1 -0
- package/dist/production/src/internal/components/DefaultElement.js +11 -0
- package/dist/production/src/internal/components/DefaultElement.js.map +1 -0
- package/dist/production/src/internal/hooks/useRichTextFieldNodes.cjs +28 -0
- package/dist/production/src/internal/hooks/useRichTextFieldNodes.cjs.map +1 -0
- package/dist/production/src/internal/hooks/useRichTextFieldNodes.js +28 -0
- package/dist/production/src/internal/hooks/useRichTextFieldNodes.js.map +1 -0
- package/dist/production/src/internal/utils/EditorPasteUtils.cjs +47 -0
- package/dist/production/src/internal/utils/EditorPasteUtils.cjs.map +1 -0
- package/dist/production/src/internal/utils/EditorPasteUtils.js +47 -0
- package/dist/production/src/internal/utils/EditorPasteUtils.js.map +1 -0
- package/dist/production/src/internal/utils/parseUrl.cjs +14 -0
- package/dist/production/src/internal/utils/parseUrl.cjs.map +1 -0
- package/dist/production/src/internal/utils/parseUrl.js +14 -0
- package/dist/production/src/internal/utils/parseUrl.js.map +1 -0
- package/dist/production/src/plugins/attributes/alignment/alignButton.cjs +21 -0
- package/dist/production/src/plugins/attributes/alignment/alignButton.cjs.map +1 -0
- package/dist/production/src/plugins/attributes/alignment/alignButton.js +21 -0
- package/dist/production/src/plugins/attributes/alignment/alignButton.js.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/HtmlDeserializer.cjs +136 -0
- package/dist/production/src/plugins/behaviour/paste/HtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/HtmlDeserializer.js +136 -0
- package/dist/production/src/plugins/behaviour/paste/HtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/createMarkHtmlDeserializer.cjs +15 -0
- package/dist/production/src/plugins/behaviour/paste/createMarkHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/createMarkHtmlDeserializer.js +15 -0
- package/dist/production/src/plugins/behaviour/paste/createMarkHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/withPaste.cjs +24 -0
- package/dist/production/src/plugins/behaviour/paste/withPaste.cjs.map +1 -0
- package/dist/production/src/plugins/behaviour/paste/withPaste.js +24 -0
- package/dist/production/src/plugins/behaviour/paste/withPaste.js.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorElement.cjs +44 -0
- package/dist/production/src/plugins/element/anchors/AnchorElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorElement.js +44 -0
- package/dist/production/src/plugins/element/anchors/AnchorElement.js.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorHtmlDeserializer.cjs +19 -0
- package/dist/production/src/plugins/element/anchors/AnchorHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorHtmlDeserializer.js +19 -0
- package/dist/production/src/plugins/element/anchors/AnchorHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorModifications.cjs +29 -0
- package/dist/production/src/plugins/element/anchors/AnchorModifications.cjs.map +1 -0
- package/dist/production/src/plugins/element/anchors/AnchorModifications.js +29 -0
- package/dist/production/src/plugins/element/anchors/AnchorModifications.js.map +1 -0
- package/dist/production/src/plugins/element/anchors/withAnchors.cjs +21 -0
- package/dist/production/src/plugins/element/anchors/withAnchors.cjs.map +1 -0
- package/dist/production/src/plugins/element/anchors/withAnchors.js +21 -0
- package/dist/production/src/plugins/element/anchors/withAnchors.js.map +1 -0
- package/dist/production/src/plugins/element/headings/HeadingElement.cjs +41 -0
- package/dist/production/src/plugins/element/headings/HeadingElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/headings/HeadingElement.js +41 -0
- package/dist/production/src/plugins/element/headings/HeadingElement.js.map +1 -0
- package/dist/production/src/plugins/element/headings/HeadingHtmlDeserializer.cjs +22 -0
- package/dist/production/src/plugins/element/headings/HeadingHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/element/headings/HeadingHtmlDeserializer.js +22 -0
- package/dist/production/src/plugins/element/headings/HeadingHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/element/headings/withHeadings.cjs +70 -0
- package/dist/production/src/plugins/element/headings/withHeadings.cjs.map +1 -0
- package/dist/production/src/plugins/element/headings/withHeadings.js +70 -0
- package/dist/production/src/plugins/element/headings/withHeadings.js.map +1 -0
- package/dist/production/src/plugins/element/horizonalRules/HorizontalRuleElement.cjs +41 -0
- package/dist/production/src/plugins/element/horizonalRules/HorizontalRuleElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/horizonalRules/HorizontalRuleElement.js +41 -0
- package/dist/production/src/plugins/element/horizonalRules/HorizontalRuleElement.js.map +1 -0
- package/dist/production/src/plugins/element/horizonalRules/withHorizontalRules.cjs +75 -0
- package/dist/production/src/plugins/element/horizonalRules/withHorizontalRules.cjs.map +1 -0
- package/dist/production/src/plugins/element/horizonalRules/withHorizontalRules.js +75 -0
- package/dist/production/src/plugins/element/horizonalRules/withHorizontalRules.js.map +1 -0
- package/dist/production/src/plugins/element/lists/ListElement.cjs +26 -0
- package/dist/production/src/plugins/element/lists/ListElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/ListElement.js +26 -0
- package/dist/production/src/plugins/element/lists/ListElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/ListHtmlDeserializer.cjs +98 -0
- package/dist/production/src/plugins/element/lists/ListHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/ListHtmlDeserializer.js +98 -0
- package/dist/production/src/plugins/element/lists/ListHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/element/lists/ListItemElement.cjs +53 -0
- package/dist/production/src/plugins/element/lists/ListItemElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/ListItemElement.js +53 -0
- package/dist/production/src/plugins/element/lists/ListItemElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/OrderedListElement.cjs +25 -0
- package/dist/production/src/plugins/element/lists/OrderedListElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/OrderedListElement.js +25 -0
- package/dist/production/src/plugins/element/lists/OrderedListElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/UnorderedListElement.cjs +25 -0
- package/dist/production/src/plugins/element/lists/UnorderedListElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/UnorderedListElement.js +25 -0
- package/dist/production/src/plugins/element/lists/UnorderedListElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/dedentListItem.cjs +57 -0
- package/dist/production/src/plugins/element/lists/transforms/dedentListItem.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/dedentListItem.js +57 -0
- package/dist/production/src/plugins/element/lists/transforms/dedentListItem.js.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/indentListItem.cjs +57 -0
- package/dist/production/src/plugins/element/lists/transforms/indentListItem.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/indentListItem.js +57 -0
- package/dist/production/src/plugins/element/lists/transforms/indentListItem.js.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/normalizeListElement.cjs +22 -0
- package/dist/production/src/plugins/element/lists/transforms/normalizeListElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/normalizeListElement.js +22 -0
- package/dist/production/src/plugins/element/lists/transforms/normalizeListElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/toggleListElement.cjs +93 -0
- package/dist/production/src/plugins/element/lists/transforms/toggleListElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/transforms/toggleListElement.js +93 -0
- package/dist/production/src/plugins/element/lists/transforms/toggleListElement.js.map +1 -0
- package/dist/production/src/plugins/element/lists/withLists.cjs +153 -0
- package/dist/production/src/plugins/element/lists/withLists.cjs.map +1 -0
- package/dist/production/src/plugins/element/lists/withLists.js +153 -0
- package/dist/production/src/plugins/element/lists/withLists.js.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphElement.cjs +49 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphElement.js +49 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphElement.js.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.cjs +11 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.js +11 -0
- package/dist/production/src/plugins/element/paragraphs/ParagraphHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/withParagraphs.cjs +58 -0
- package/dist/production/src/plugins/element/paragraphs/withParagraphs.cjs.map +1 -0
- package/dist/production/src/plugins/element/paragraphs/withParagraphs.js +58 -0
- package/dist/production/src/plugins/element/paragraphs/withParagraphs.js.map +1 -0
- package/dist/production/src/plugins/element/scrollTargets/ScrollTargetElement.cjs +51 -0
- package/dist/production/src/plugins/element/scrollTargets/ScrollTargetElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/scrollTargets/ScrollTargetElement.js +51 -0
- package/dist/production/src/plugins/element/scrollTargets/ScrollTargetElement.js.map +1 -0
- package/dist/production/src/plugins/element/scrollTargets/withScrollTargets.cjs +9 -0
- package/dist/production/src/plugins/element/scrollTargets/withScrollTargets.cjs.map +1 -0
- package/dist/production/src/plugins/element/scrollTargets/withScrollTargets.js +9 -0
- package/dist/production/src/plugins/element/scrollTargets/withScrollTargets.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableCellElement.cjs +39 -0
- package/dist/production/src/plugins/element/tables/TableCellElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableCellElement.js +39 -0
- package/dist/production/src/plugins/element/tables/TableCellElement.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableElement.cjs +114 -0
- package/dist/production/src/plugins/element/tables/TableElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableElement.js +114 -0
- package/dist/production/src/plugins/element/tables/TableElement.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableElementSelection.cjs +20 -0
- package/dist/production/src/plugins/element/tables/TableElementSelection.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableElementSelection.js +20 -0
- package/dist/production/src/plugins/element/tables/TableElementSelection.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableHtmlDeserializer.cjs +36 -0
- package/dist/production/src/plugins/element/tables/TableHtmlDeserializer.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableHtmlDeserializer.js +36 -0
- package/dist/production/src/plugins/element/tables/TableHtmlDeserializer.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableModifications.cjs +134 -0
- package/dist/production/src/plugins/element/tables/TableModifications.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableModifications.js +134 -0
- package/dist/production/src/plugins/element/tables/TableModifications.js.map +1 -0
- package/dist/production/src/plugins/element/tables/TableRowElement.cjs +43 -0
- package/dist/production/src/plugins/element/tables/TableRowElement.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/TableRowElement.js +43 -0
- package/dist/production/src/plugins/element/tables/TableRowElement.js.map +1 -0
- package/dist/production/src/plugins/element/tables/gaugeTableColumnCount.cjs +25 -0
- package/dist/production/src/plugins/element/tables/gaugeTableColumnCount.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/gaugeTableColumnCount.js +25 -0
- package/dist/production/src/plugins/element/tables/gaugeTableColumnCount.js.map +1 -0
- package/dist/production/src/plugins/element/tables/withTables.cjs +283 -0
- package/dist/production/src/plugins/element/tables/withTables.cjs.map +1 -0
- package/dist/production/src/plugins/element/tables/withTables.js +283 -0
- package/dist/production/src/plugins/element/tables/withTables.js.map +1 -0
- package/dist/production/src/plugins/text/bold/boldMark.cjs +13 -0
- package/dist/production/src/plugins/text/bold/boldMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/bold/boldMark.js +13 -0
- package/dist/production/src/plugins/text/bold/boldMark.js.map +1 -0
- package/dist/production/src/plugins/text/bold/withBold.cjs +16 -0
- package/dist/production/src/plugins/text/bold/withBold.cjs.map +1 -0
- package/dist/production/src/plugins/text/bold/withBold.js +16 -0
- package/dist/production/src/plugins/text/bold/withBold.js.map +1 -0
- package/dist/production/src/plugins/text/code/codeMark.cjs +13 -0
- package/dist/production/src/plugins/text/code/codeMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/code/codeMark.js +13 -0
- package/dist/production/src/plugins/text/code/codeMark.js.map +1 -0
- package/dist/production/src/plugins/text/code/withCode.cjs +9 -0
- package/dist/production/src/plugins/text/code/withCode.cjs.map +1 -0
- package/dist/production/src/plugins/text/code/withCode.js +9 -0
- package/dist/production/src/plugins/text/code/withCode.js.map +1 -0
- package/dist/production/src/plugins/text/highlight/highlightMark.cjs +13 -0
- package/dist/production/src/plugins/text/highlight/highlightMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/highlight/highlightMark.js +13 -0
- package/dist/production/src/plugins/text/highlight/highlightMark.js.map +1 -0
- package/dist/production/src/plugins/text/highlight/withHighlight.cjs +9 -0
- package/dist/production/src/plugins/text/highlight/withHighlight.cjs.map +1 -0
- package/dist/production/src/plugins/text/highlight/withHighlight.js +9 -0
- package/dist/production/src/plugins/text/highlight/withHighlight.js.map +1 -0
- package/dist/production/src/plugins/text/italic/italicMark.cjs +13 -0
- package/dist/production/src/plugins/text/italic/italicMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/italic/italicMark.js +13 -0
- package/dist/production/src/plugins/text/italic/italicMark.js.map +1 -0
- package/dist/production/src/plugins/text/italic/withItalic.cjs +16 -0
- package/dist/production/src/plugins/text/italic/withItalic.cjs.map +1 -0
- package/dist/production/src/plugins/text/italic/withItalic.js +16 -0
- package/dist/production/src/plugins/text/italic/withItalic.js.map +1 -0
- package/dist/production/src/plugins/text/newline/withNewline.cjs +15 -0
- package/dist/production/src/plugins/text/newline/withNewline.cjs.map +1 -0
- package/dist/production/src/plugins/text/newline/withNewline.js +15 -0
- package/dist/production/src/plugins/text/newline/withNewline.js.map +1 -0
- package/dist/production/src/plugins/text/strikeThrough/strikeThroughMark.cjs +13 -0
- package/dist/production/src/plugins/text/strikeThrough/strikeThroughMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/strikeThrough/strikeThroughMark.js +13 -0
- package/dist/production/src/plugins/text/strikeThrough/strikeThroughMark.js.map +1 -0
- package/dist/production/src/plugins/text/strikeThrough/withStrikeThrough.cjs +17 -0
- package/dist/production/src/plugins/text/strikeThrough/withStrikeThrough.cjs.map +1 -0
- package/dist/production/src/plugins/text/strikeThrough/withStrikeThrough.js +17 -0
- package/dist/production/src/plugins/text/strikeThrough/withStrikeThrough.js.map +1 -0
- package/dist/production/src/plugins/text/underline/underlineMark.cjs +13 -0
- package/dist/production/src/plugins/text/underline/underlineMark.cjs.map +1 -0
- package/dist/production/src/plugins/text/underline/underlineMark.js +13 -0
- package/dist/production/src/plugins/text/underline/underlineMark.js.map +1 -0
- package/dist/production/src/plugins/text/underline/withUnderline.cjs +17 -0
- package/dist/production/src/plugins/text/underline/withUnderline.cjs.map +1 -0
- package/dist/production/src/plugins/text/underline/withUnderline.js +17 -0
- package/dist/production/src/plugins/text/underline/withUnderline.js.map +1 -0
- package/dist/production/src/slate-reexport.cjs +10 -0
- package/dist/production/src/slate-reexport.cjs.map +1 -0
- package/dist/production/src/slate-reexport.js +8 -0
- package/dist/production/src/slate-reexport.js.map +1 -0
- package/dist/types/components/RichTextEditor.d.ts +13 -0
- package/dist/types/components/RichTextEditor.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +3 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/components/triggers/EditorElementTrigger.d.ts +8 -0
- package/dist/types/components/triggers/EditorElementTrigger.d.ts.map +1 -0
- package/dist/types/components/triggers/EditorGenericTrigger.d.ts +16 -0
- package/dist/types/components/triggers/EditorGenericTrigger.d.ts.map +1 -0
- package/dist/types/components/triggers/EditorMarkTrigger.d.ts +7 -0
- package/dist/types/components/triggers/EditorMarkTrigger.d.ts.map +1 -0
- package/dist/types/components/triggers/EditorWrapNodeTrigger.d.ts +11 -0
- package/dist/types/components/triggers/EditorWrapNodeTrigger.d.ts.map +1 -0
- package/dist/types/components/triggers/index.d.ts +5 -0
- package/dist/types/components/triggers/index.d.ts.map +1 -0
- package/dist/types/editor/createEditor.d.ts +24 -0
- package/dist/types/editor/createEditor.d.ts.map +1 -0
- package/dist/types/editor/createEditorWithEssentials.d.ts +5 -0
- package/dist/types/editor/createEditorWithEssentials.d.ts.map +1 -0
- package/dist/types/editor/index.d.ts +35 -0
- package/dist/types/editor/index.d.ts.map +1 -0
- package/dist/types/editor/methods/addMarks.d.ts +4 -0
- package/dist/types/editor/methods/addMarks.d.ts.map +1 -0
- package/dist/types/editor/methods/canToggleMark.d.ts +3 -0
- package/dist/types/editor/methods/canToggleMark.d.ts.map +1 -0
- package/dist/types/editor/methods/closest.d.ts +6 -0
- package/dist/types/editor/methods/closest.d.ts.map +1 -0
- package/dist/types/editor/methods/closestBlockEntry.d.ts +6 -0
- package/dist/types/editor/methods/closestBlockEntry.d.ts.map +1 -0
- package/dist/types/editor/methods/closestViableBlockContainerEntry.d.ts +6 -0
- package/dist/types/editor/methods/closestViableBlockContainerEntry.d.ts.map +1 -0
- package/dist/types/editor/methods/ejectElement.d.ts +3 -0
- package/dist/types/editor/methods/ejectElement.d.ts.map +1 -0
- package/dist/types/editor/methods/elementToSpecifics.d.ts +3 -0
- package/dist/types/editor/methods/elementToSpecifics.d.ts.map +1 -0
- package/dist/types/editor/methods/getElementDataAttributes.d.ts +7 -0
- package/dist/types/editor/methods/getElementDataAttributes.d.ts.map +1 -0
- package/dist/types/editor/methods/getPreviousSibling.d.ts +3 -0
- package/dist/types/editor/methods/getPreviousSibling.d.ts.map +1 -0
- package/dist/types/editor/methods/hasMarks.d.ts +7 -0
- package/dist/types/editor/methods/hasMarks.d.ts.map +1 -0
- package/dist/types/editor/methods/hasParentOfType.d.ts +3 -0
- package/dist/types/editor/methods/hasParentOfType.d.ts.map +1 -0
- package/dist/types/editor/methods/index.d.ts +20 -0
- package/dist/types/editor/methods/index.d.ts.map +1 -0
- package/dist/types/editor/methods/isElementType.d.ts +3 -0
- package/dist/types/editor/methods/isElementType.d.ts.map +1 -0
- package/dist/types/editor/methods/permissivelyDeserializeNodes.d.ts +3 -0
- package/dist/types/editor/methods/permissivelyDeserializeNodes.d.ts.map +1 -0
- package/dist/types/editor/methods/removeMarks.d.ts +4 -0
- package/dist/types/editor/methods/removeMarks.d.ts.map +1 -0
- package/dist/types/editor/methods/serializeNodes.d.ts +3 -0
- package/dist/types/editor/methods/serializeNodes.d.ts.map +1 -0
- package/dist/types/editor/methods/strictlyDeserializeNodes.d.ts +3 -0
- package/dist/types/editor/methods/strictlyDeserializeNodes.d.ts.map +1 -0
- package/dist/types/editor/methods/textToSpecifics.d.ts +4 -0
- package/dist/types/editor/methods/textToSpecifics.d.ts.map +1 -0
- package/dist/types/editor/methods/toLatestFormat.d.ts +4 -0
- package/dist/types/editor/methods/toLatestFormat.d.ts.map +1 -0
- package/dist/types/editor/methods/topLevelNodes.d.ts +3 -0
- package/dist/types/editor/methods/topLevelNodes.d.ts.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/internal/components/DefaultElement.d.ts +6 -0
- package/dist/types/internal/components/DefaultElement.d.ts.map +1 -0
- package/dist/types/internal/hooks/useRichTextFieldNodes.d.ts +9 -0
- package/dist/types/internal/hooks/useRichTextFieldNodes.d.ts.map +1 -0
- package/dist/types/internal/utils/EditorPasteUtils.d.ts +7 -0
- package/dist/types/internal/utils/EditorPasteUtils.d.ts.map +1 -0
- package/dist/types/internal/utils/index.d.ts +3 -0
- package/dist/types/internal/utils/index.d.ts.map +1 -0
- package/dist/types/internal/utils/parseIframeSrc.d.ts +2 -0
- package/dist/types/internal/utils/parseIframeSrc.d.ts.map +1 -0
- package/dist/types/internal/utils/parseUrl.d.ts +2 -0
- package/dist/types/internal/utils/parseUrl.d.ts.map +1 -0
- package/dist/types/plugins/attributes/alignment/alignButton.d.ts +14 -0
- package/dist/types/plugins/attributes/alignment/alignButton.d.ts.map +1 -0
- package/dist/types/plugins/attributes/alignment/index.d.ts +2 -0
- package/dist/types/plugins/attributes/alignment/index.d.ts.map +1 -0
- package/dist/types/plugins/attributes/index.d.ts +2 -0
- package/dist/types/plugins/attributes/index.d.ts.map +1 -0
- package/dist/types/plugins/behaviour/index.d.ts +2 -0
- package/dist/types/plugins/behaviour/index.d.ts.map +1 -0
- package/dist/types/plugins/behaviour/paste/HtmlDeserializer.d.ts +34 -0
- package/dist/types/plugins/behaviour/paste/HtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/behaviour/paste/createMarkHtmlDeserializer.d.ts +3 -0
- package/dist/types/plugins/behaviour/paste/createMarkHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/behaviour/paste/index.d.ts +3 -0
- package/dist/types/plugins/behaviour/paste/index.d.ts.map +1 -0
- package/dist/types/plugins/behaviour/paste/withPaste.d.ts +3 -0
- package/dist/types/plugins/behaviour/paste/withPaste.d.ts.map +1 -0
- package/dist/types/plugins/element/anchors/AnchorElement.d.ts +14 -0
- package/dist/types/plugins/element/anchors/AnchorElement.d.ts.map +1 -0
- package/dist/types/plugins/element/anchors/AnchorHtmlDeserializer.d.ts +3 -0
- package/dist/types/plugins/element/anchors/AnchorHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/element/anchors/AnchorModifications.d.ts +6 -0
- package/dist/types/plugins/element/anchors/AnchorModifications.d.ts.map +1 -0
- package/dist/types/plugins/element/anchors/index.d.ts +4 -0
- package/dist/types/plugins/element/anchors/index.d.ts.map +1 -0
- package/dist/types/plugins/element/anchors/withAnchors.d.ts +7 -0
- package/dist/types/plugins/element/anchors/withAnchors.d.ts.map +1 -0
- package/dist/types/plugins/element/headings/HeadingElement.d.ts +17 -0
- package/dist/types/plugins/element/headings/HeadingElement.d.ts.map +1 -0
- package/dist/types/plugins/element/headings/HeadingHtmlDeserializer.d.ts +3 -0
- package/dist/types/plugins/element/headings/HeadingHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/element/headings/index.d.ts +4 -0
- package/dist/types/plugins/element/headings/index.d.ts.map +1 -0
- package/dist/types/plugins/element/headings/withHeadings.d.ts +7 -0
- package/dist/types/plugins/element/headings/withHeadings.d.ts.map +1 -0
- package/dist/types/plugins/element/horizonalRules/HorizontalRuleElement.d.ts +13 -0
- package/dist/types/plugins/element/horizonalRules/HorizontalRuleElement.d.ts.map +1 -0
- package/dist/types/plugins/element/horizonalRules/index.d.ts +3 -0
- package/dist/types/plugins/element/horizonalRules/index.d.ts.map +1 -0
- package/dist/types/plugins/element/horizonalRules/withHorizontalRules.d.ts +7 -0
- package/dist/types/plugins/element/horizonalRules/withHorizontalRules.d.ts.map +1 -0
- package/dist/types/plugins/element/index.d.ts +8 -0
- package/dist/types/plugins/element/index.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/ListElement.d.ts +6 -0
- package/dist/types/plugins/element/lists/ListElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/ListHtmlDeserializer.d.ts +10 -0
- package/dist/types/plugins/element/lists/ListHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/ListItemElement.d.ts +12 -0
- package/dist/types/plugins/element/lists/ListItemElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/OrderedListElement.d.ts +12 -0
- package/dist/types/plugins/element/lists/OrderedListElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/UnorderedListElement.d.ts +12 -0
- package/dist/types/plugins/element/lists/UnorderedListElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/index.d.ts +6 -0
- package/dist/types/plugins/element/lists/index.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/transforms/dedentListItem.d.ts +4 -0
- package/dist/types/plugins/element/lists/transforms/dedentListItem.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/transforms/indentListItem.d.ts +4 -0
- package/dist/types/plugins/element/lists/transforms/indentListItem.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/transforms/index.d.ts +5 -0
- package/dist/types/plugins/element/lists/transforms/index.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/transforms/normalizeListElement.d.ts +7 -0
- package/dist/types/plugins/element/lists/transforms/normalizeListElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/transforms/toggleListElement.d.ts +5 -0
- package/dist/types/plugins/element/lists/transforms/toggleListElement.d.ts.map +1 -0
- package/dist/types/plugins/element/lists/withLists.d.ts +11 -0
- package/dist/types/plugins/element/lists/withLists.d.ts.map +1 -0
- package/dist/types/plugins/element/paragraphs/ParagraphElement.d.ts +15 -0
- package/dist/types/plugins/element/paragraphs/ParagraphElement.d.ts.map +1 -0
- package/dist/types/plugins/element/paragraphs/ParagraphHtmlDeserializer.d.ts +3 -0
- package/dist/types/plugins/element/paragraphs/ParagraphHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/element/paragraphs/index.d.ts +4 -0
- package/dist/types/plugins/element/paragraphs/index.d.ts.map +1 -0
- package/dist/types/plugins/element/paragraphs/withParagraphs.d.ts +7 -0
- package/dist/types/plugins/element/paragraphs/withParagraphs.d.ts.map +1 -0
- package/dist/types/plugins/element/scrollTargets/ScrollTargetElement.d.ts +14 -0
- package/dist/types/plugins/element/scrollTargets/ScrollTargetElement.d.ts.map +1 -0
- package/dist/types/plugins/element/scrollTargets/index.d.ts +3 -0
- package/dist/types/plugins/element/scrollTargets/index.d.ts.map +1 -0
- package/dist/types/plugins/element/scrollTargets/withScrollTargets.d.ts +7 -0
- package/dist/types/plugins/element/scrollTargets/withScrollTargets.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableCellElement.d.ts +20 -0
- package/dist/types/plugins/element/tables/TableCellElement.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableElement.d.ts +26 -0
- package/dist/types/plugins/element/tables/TableElement.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableElementSelection.d.ts +6 -0
- package/dist/types/plugins/element/tables/TableElementSelection.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableHtmlDeserializer.d.ts +3 -0
- package/dist/types/plugins/element/tables/TableHtmlDeserializer.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableModifications.d.ts +14 -0
- package/dist/types/plugins/element/tables/TableModifications.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/TableRowElement.d.ts +22 -0
- package/dist/types/plugins/element/tables/TableRowElement.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/gaugeTableColumnCount.d.ts +3 -0
- package/dist/types/plugins/element/tables/gaugeTableColumnCount.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/index.d.ts +6 -0
- package/dist/types/plugins/element/tables/index.d.ts.map +1 -0
- package/dist/types/plugins/element/tables/withTables.d.ts +11 -0
- package/dist/types/plugins/element/tables/withTables.d.ts.map +1 -0
- package/dist/types/plugins/index.d.ts +5 -0
- package/dist/types/plugins/index.d.ts.map +1 -0
- package/dist/types/plugins/text/bold/boldMark.d.ts +4 -0
- package/dist/types/plugins/text/bold/boldMark.d.ts.map +1 -0
- package/dist/types/plugins/text/bold/index.d.ts +3 -0
- package/dist/types/plugins/text/bold/index.d.ts.map +1 -0
- package/dist/types/plugins/text/bold/withBold.d.ts +3 -0
- package/dist/types/plugins/text/bold/withBold.d.ts.map +1 -0
- package/dist/types/plugins/text/code/codeMark.d.ts +4 -0
- package/dist/types/plugins/text/code/codeMark.d.ts.map +1 -0
- package/dist/types/plugins/text/code/index.d.ts +3 -0
- package/dist/types/plugins/text/code/index.d.ts.map +1 -0
- package/dist/types/plugins/text/code/withCode.d.ts +3 -0
- package/dist/types/plugins/text/code/withCode.d.ts.map +1 -0
- package/dist/types/plugins/text/highlight/highlightMark.d.ts +4 -0
- package/dist/types/plugins/text/highlight/highlightMark.d.ts.map +1 -0
- package/dist/types/plugins/text/highlight/index.d.ts +3 -0
- package/dist/types/plugins/text/highlight/index.d.ts.map +1 -0
- package/dist/types/plugins/text/highlight/withHighlight.d.ts +3 -0
- package/dist/types/plugins/text/highlight/withHighlight.d.ts.map +1 -0
- package/dist/types/plugins/text/index.d.ts +8 -0
- package/dist/types/plugins/text/index.d.ts.map +1 -0
- package/dist/types/plugins/text/italic/index.d.ts +3 -0
- package/dist/types/plugins/text/italic/index.d.ts.map +1 -0
- package/dist/types/plugins/text/italic/italicMark.d.ts +4 -0
- package/dist/types/plugins/text/italic/italicMark.d.ts.map +1 -0
- package/dist/types/plugins/text/italic/withItalic.d.ts +3 -0
- package/dist/types/plugins/text/italic/withItalic.d.ts.map +1 -0
- package/dist/types/plugins/text/newline/index.d.ts +2 -0
- package/dist/types/plugins/text/newline/index.d.ts.map +1 -0
- package/dist/types/plugins/text/newline/withNewline.d.ts +3 -0
- package/dist/types/plugins/text/newline/withNewline.d.ts.map +1 -0
- package/dist/types/plugins/text/strikeThrough/index.d.ts +3 -0
- package/dist/types/plugins/text/strikeThrough/index.d.ts.map +1 -0
- package/dist/types/plugins/text/strikeThrough/strikeThroughMark.d.ts +4 -0
- package/dist/types/plugins/text/strikeThrough/strikeThroughMark.d.ts.map +1 -0
- package/dist/types/plugins/text/strikeThrough/withStrikeThrough.d.ts +3 -0
- package/dist/types/plugins/text/strikeThrough/withStrikeThrough.d.ts.map +1 -0
- package/dist/types/plugins/text/underline/index.d.ts +3 -0
- package/dist/types/plugins/text/underline/index.d.ts.map +1 -0
- package/dist/types/plugins/text/underline/underlineMark.d.ts +4 -0
- package/dist/types/plugins/text/underline/underlineMark.d.ts.map +1 -0
- package/dist/types/plugins/text/underline/withUnderline.d.ts +3 -0
- package/dist/types/plugins/text/underline/withUnderline.d.ts.map +1 -0
- package/dist/types/slate-reexport.d.ts +3 -0
- package/dist/types/slate-reexport.d.ts.map +1 -0
- package/dist/types/slate-types.d.ts +31 -0
- package/dist/types/slate-types.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/dist/types/types/editor.d.ts +43 -0
- package/dist/types/types/editor.d.ts.map +1 -0
- package/dist/types/types/htmlDeserializer.d.ts +38 -0
- package/dist/types/types/htmlDeserializer.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +4 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/plugins.d.ts +58 -0
- package/dist/types/types/plugins.d.ts.map +1 -0
- package/package.json +14 -14
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Slate = require("slate");
|
|
4
|
+
const index = require("../../../../editor/index.cjs");
|
|
5
|
+
const indentListItem = (editor, listItem, listItemPath) => {
|
|
6
|
+
const previousListEntry = index.ContemberEditor.getPreviousSibling(
|
|
7
|
+
editor,
|
|
8
|
+
listItem,
|
|
9
|
+
listItemPath
|
|
10
|
+
);
|
|
11
|
+
if (previousListEntry === void 0) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
Slate.Editor.withoutNormalizing(editor, () => {
|
|
15
|
+
const [parentListElement] = Slate.Editor.parent(editor, listItemPath);
|
|
16
|
+
let [previousListItem, previousListItemPath] = previousListEntry;
|
|
17
|
+
const lastPreviousListItemChild = previousListItem.children[previousListItem.children.length - 1];
|
|
18
|
+
const previousEndsWithCompatibleList = Slate.Element.isElement(lastPreviousListItemChild) && index.ContemberEditor.isElementType(
|
|
19
|
+
lastPreviousListItemChild,
|
|
20
|
+
parentListElement.type,
|
|
21
|
+
index.ContemberEditor.elementToSpecifics(parentListElement)
|
|
22
|
+
);
|
|
23
|
+
if (previousEndsWithCompatibleList) {
|
|
24
|
+
const newListItemPath = [
|
|
25
|
+
...previousListItemPath,
|
|
26
|
+
previousListItem.children.length - 1,
|
|
27
|
+
lastPreviousListItemChild.children.length
|
|
28
|
+
];
|
|
29
|
+
Slate.Transforms.moveNodes(editor, {
|
|
30
|
+
at: listItemPath,
|
|
31
|
+
to: newListItemPath
|
|
32
|
+
});
|
|
33
|
+
} else {
|
|
34
|
+
const previousContainsInlines = Slate.Editor.hasInlines(editor, previousListItem);
|
|
35
|
+
if (previousContainsInlines) {
|
|
36
|
+
const [previousStart, previousEnd] = Slate.Editor.edges(editor, previousListItemPath);
|
|
37
|
+
Slate.Transforms.wrapNodes(editor, editor.createDefaultElement([]), {
|
|
38
|
+
match: (node) => Slate.Text.isText(node) || Slate.Element.isElement(node) && editor.isInline(node),
|
|
39
|
+
at: {
|
|
40
|
+
anchor: previousStart,
|
|
41
|
+
focus: previousEnd
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
previousListItem = Slate.Node.get(editor, previousListItemPath);
|
|
46
|
+
const newListItemPath = [...previousListItemPath, previousListItem.children.length];
|
|
47
|
+
Slate.Transforms.moveNodes(editor, {
|
|
48
|
+
at: listItemPath,
|
|
49
|
+
to: newListItemPath
|
|
50
|
+
});
|
|
51
|
+
Slate.Transforms.wrapNodes(editor, { ...parentListElement, children: [] }, { at: newListItemPath });
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
return true;
|
|
55
|
+
};
|
|
56
|
+
exports.indentListItem = indentListItem;
|
|
57
|
+
//# sourceMappingURL=indentListItem.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indentListItem.cjs","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/indentListItem.ts"],"sourcesContent":["import { Editor, Element as SlateElement, Node as SlateNode, NodeEntry, Path as SlatePath, Text, Transforms } from 'slate'\nimport { ContemberEditor } from '../../../../editor'\nimport type { ListItemElement } from '../ListItemElement'\nimport type { OrderedListElement } from '../OrderedListElement'\nimport type { UnorderedListElement } from '../UnorderedListElement'\n\nexport const indentListItem = (\n\teditor: Editor,\n\tlistItem: ListItemElement,\n\tlistItemPath: SlatePath,\n): boolean => {\n\tconst previousListEntry = ContemberEditor.getPreviousSibling<Editor, ListItemElement>(\n\t\teditor,\n\t\tlistItem,\n\t\tlistItemPath,\n\t)\n\tif (previousListEntry === undefined) {\n\t\treturn false\n\t}\n\n\tEditor.withoutNormalizing(editor, () => {\n\t\tconst [parentListElement] = Editor.parent(editor, listItemPath) as NodeEntry<\n\t\t\tOrderedListElement | UnorderedListElement\n\t\t>\n\t\tlet [previousListItem, previousListItemPath] = previousListEntry\n\n\t\tconst lastPreviousListItemChild = previousListItem.children[previousListItem.children.length - 1]\n\t\tconst previousEndsWithCompatibleList = SlateElement.isElement(lastPreviousListItemChild)\n\t\t\t&& ContemberEditor.isElementType(\n\t\t\t\tlastPreviousListItemChild,\n\t\t\t\tparentListElement.type,\n\t\t\t\tContemberEditor.elementToSpecifics(parentListElement) as any,\n\t\t\t)\n\n\t\tif (previousEndsWithCompatibleList) {\n\t\t\tconst newListItemPath = [\n\t\t\t\t...previousListItemPath,\n\t\t\t\tpreviousListItem.children.length - 1,\n\t\t\t\t(lastPreviousListItemChild as UnorderedListElement | OrderedListElement).children.length,\n\t\t\t]\n\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tat: listItemPath,\n\t\t\t\tto: newListItemPath,\n\t\t\t})\n\t\t} else {\n\t\t\tconst previousContainsInlines = Editor.hasInlines(editor, previousListItem)\n\t\t\tif (previousContainsInlines) {\n\t\t\t\tconst [previousStart, previousEnd] = Editor.edges(editor, previousListItemPath)\n\t\t\t\tTransforms.wrapNodes(editor, editor.createDefaultElement([]), {\n\t\t\t\t\tmatch: node => Text.isText(node) || (SlateElement.isElement(node) && editor.isInline(node)),\n\t\t\t\t\tat: {\n\t\t\t\t\t\tanchor: previousStart,\n\t\t\t\t\t\tfocus: previousEnd,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Getting a new previousListItem because the children may have changed due to the branch above.\n\t\t\tpreviousListItem = SlateNode.get(editor, previousListItemPath) as ListItemElement\n\t\t\t// We're appending at the end: children.length is just lastOne + 1\n\t\t\tconst newListItemPath = [...previousListItemPath, previousListItem.children.length]\n\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tat: listItemPath,\n\t\t\t\tto: newListItemPath,\n\t\t\t})\n\t\t\tTransforms.wrapNodes(editor, { ...parentListElement, children: [] }, { at: newListItemPath })\n\t\t}\n\t})\n\n\treturn true\n}\n"],"names":["ContemberEditor","Editor","SlateElement","Transforms","Text","SlateNode"],"mappings":";;;;AAMO,MAAM,iBAAiB,CAC7B,QACA,UACA,iBACa;AACb,QAAM,oBAAoBA,MAAAA,gBAAgB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAED,MAAI,sBAAsB,QAAW;AACpC,WAAO;AAAA,EACR;AAEAC,eAAO,mBAAmB,QAAQ,MAAM;AACvC,UAAM,CAAC,iBAAiB,IAAIA,MAAAA,OAAO,OAAO,QAAQ,YAAY;AAG9D,QAAI,CAAC,kBAAkB,oBAAoB,IAAI;AAE/C,UAAM,4BAA4B,iBAAiB,SAAS,iBAAiB,SAAS,SAAS,CAAC;AAChG,UAAM,iCAAiCC,MAAAA,QAAa,UAAU,yBAAyB,KACnFF,MAAAA,gBAAgB;AAAA,MAClB;AAAA,MACA,kBAAkB;AAAA,MAClBA,MAAAA,gBAAgB,mBAAmB,iBAAiB;AAAA,IAAA;AAGtD,QAAI,gCAAgC;AACnC,YAAM,kBAAkB;AAAA,QACvB,GAAG;AAAA,QACH,iBAAiB,SAAS,SAAS;AAAA,QAClC,0BAAwE,SAAS;AAAA,MAAA;AAGnFG,YAAAA,WAAW,UAAU,QAAQ;AAAA,QAC5B,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACJ;AAAA,IACF,OAAO;AACN,YAAM,0BAA0BF,MAAAA,OAAO,WAAW,QAAQ,gBAAgB;AAC1E,UAAI,yBAAyB;AAC5B,cAAM,CAAC,eAAe,WAAW,IAAIA,MAAAA,OAAO,MAAM,QAAQ,oBAAoB;AAC9EE,cAAAA,WAAW,UAAU,QAAQ,OAAO,qBAAqB,CAAA,CAAE,GAAG;AAAA,UAC7D,OAAO,CAAA,SAAQC,WAAK,OAAO,IAAI,KAAMF,cAAa,UAAU,IAAI,KAAK,OAAO,SAAS,IAAI;AAAA,UACzF,IAAI;AAAA,YACH,QAAQ;AAAA,YACR,OAAO;AAAA,UAAA;AAAA,QACR,CACA;AAAA,MACF;AAEA,yBAAmBG,MAAAA,KAAU,IAAI,QAAQ,oBAAoB;AAE7D,YAAM,kBAAkB,CAAC,GAAG,sBAAsB,iBAAiB,SAAS,MAAM;AAElFF,YAAAA,WAAW,UAAU,QAAQ;AAAA,QAC5B,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACJ;AACDA,YAAAA,WAAW,UAAU,QAAQ,EAAE,GAAG,mBAAmB,UAAU,CAAA,KAAM,EAAE,IAAI,iBAAiB;AAAA,IAC7F;AAAA,EACD,CAAC;AAED,SAAO;AACR;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Editor, Element, Transforms, Text, Node } from "slate";
|
|
2
|
+
import { ContemberEditor } from "../../../../editor/index.js";
|
|
3
|
+
const indentListItem = (editor, listItem, listItemPath) => {
|
|
4
|
+
const previousListEntry = ContemberEditor.getPreviousSibling(
|
|
5
|
+
editor,
|
|
6
|
+
listItem,
|
|
7
|
+
listItemPath
|
|
8
|
+
);
|
|
9
|
+
if (previousListEntry === void 0) {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
Editor.withoutNormalizing(editor, () => {
|
|
13
|
+
const [parentListElement] = Editor.parent(editor, listItemPath);
|
|
14
|
+
let [previousListItem, previousListItemPath] = previousListEntry;
|
|
15
|
+
const lastPreviousListItemChild = previousListItem.children[previousListItem.children.length - 1];
|
|
16
|
+
const previousEndsWithCompatibleList = Element.isElement(lastPreviousListItemChild) && ContemberEditor.isElementType(
|
|
17
|
+
lastPreviousListItemChild,
|
|
18
|
+
parentListElement.type,
|
|
19
|
+
ContemberEditor.elementToSpecifics(parentListElement)
|
|
20
|
+
);
|
|
21
|
+
if (previousEndsWithCompatibleList) {
|
|
22
|
+
const newListItemPath = [
|
|
23
|
+
...previousListItemPath,
|
|
24
|
+
previousListItem.children.length - 1,
|
|
25
|
+
lastPreviousListItemChild.children.length
|
|
26
|
+
];
|
|
27
|
+
Transforms.moveNodes(editor, {
|
|
28
|
+
at: listItemPath,
|
|
29
|
+
to: newListItemPath
|
|
30
|
+
});
|
|
31
|
+
} else {
|
|
32
|
+
const previousContainsInlines = Editor.hasInlines(editor, previousListItem);
|
|
33
|
+
if (previousContainsInlines) {
|
|
34
|
+
const [previousStart, previousEnd] = Editor.edges(editor, previousListItemPath);
|
|
35
|
+
Transforms.wrapNodes(editor, editor.createDefaultElement([]), {
|
|
36
|
+
match: (node) => Text.isText(node) || Element.isElement(node) && editor.isInline(node),
|
|
37
|
+
at: {
|
|
38
|
+
anchor: previousStart,
|
|
39
|
+
focus: previousEnd
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
previousListItem = Node.get(editor, previousListItemPath);
|
|
44
|
+
const newListItemPath = [...previousListItemPath, previousListItem.children.length];
|
|
45
|
+
Transforms.moveNodes(editor, {
|
|
46
|
+
at: listItemPath,
|
|
47
|
+
to: newListItemPath
|
|
48
|
+
});
|
|
49
|
+
Transforms.wrapNodes(editor, { ...parentListElement, children: [] }, { at: newListItemPath });
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
return true;
|
|
53
|
+
};
|
|
54
|
+
export {
|
|
55
|
+
indentListItem
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=indentListItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indentListItem.js","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/indentListItem.ts"],"sourcesContent":["import { Editor, Element as SlateElement, Node as SlateNode, NodeEntry, Path as SlatePath, Text, Transforms } from 'slate'\nimport { ContemberEditor } from '../../../../editor'\nimport type { ListItemElement } from '../ListItemElement'\nimport type { OrderedListElement } from '../OrderedListElement'\nimport type { UnorderedListElement } from '../UnorderedListElement'\n\nexport const indentListItem = (\n\teditor: Editor,\n\tlistItem: ListItemElement,\n\tlistItemPath: SlatePath,\n): boolean => {\n\tconst previousListEntry = ContemberEditor.getPreviousSibling<Editor, ListItemElement>(\n\t\teditor,\n\t\tlistItem,\n\t\tlistItemPath,\n\t)\n\tif (previousListEntry === undefined) {\n\t\treturn false\n\t}\n\n\tEditor.withoutNormalizing(editor, () => {\n\t\tconst [parentListElement] = Editor.parent(editor, listItemPath) as NodeEntry<\n\t\t\tOrderedListElement | UnorderedListElement\n\t\t>\n\t\tlet [previousListItem, previousListItemPath] = previousListEntry\n\n\t\tconst lastPreviousListItemChild = previousListItem.children[previousListItem.children.length - 1]\n\t\tconst previousEndsWithCompatibleList = SlateElement.isElement(lastPreviousListItemChild)\n\t\t\t&& ContemberEditor.isElementType(\n\t\t\t\tlastPreviousListItemChild,\n\t\t\t\tparentListElement.type,\n\t\t\t\tContemberEditor.elementToSpecifics(parentListElement) as any,\n\t\t\t)\n\n\t\tif (previousEndsWithCompatibleList) {\n\t\t\tconst newListItemPath = [\n\t\t\t\t...previousListItemPath,\n\t\t\t\tpreviousListItem.children.length - 1,\n\t\t\t\t(lastPreviousListItemChild as UnorderedListElement | OrderedListElement).children.length,\n\t\t\t]\n\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tat: listItemPath,\n\t\t\t\tto: newListItemPath,\n\t\t\t})\n\t\t} else {\n\t\t\tconst previousContainsInlines = Editor.hasInlines(editor, previousListItem)\n\t\t\tif (previousContainsInlines) {\n\t\t\t\tconst [previousStart, previousEnd] = Editor.edges(editor, previousListItemPath)\n\t\t\t\tTransforms.wrapNodes(editor, editor.createDefaultElement([]), {\n\t\t\t\t\tmatch: node => Text.isText(node) || (SlateElement.isElement(node) && editor.isInline(node)),\n\t\t\t\t\tat: {\n\t\t\t\t\t\tanchor: previousStart,\n\t\t\t\t\t\tfocus: previousEnd,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Getting a new previousListItem because the children may have changed due to the branch above.\n\t\t\tpreviousListItem = SlateNode.get(editor, previousListItemPath) as ListItemElement\n\t\t\t// We're appending at the end: children.length is just lastOne + 1\n\t\t\tconst newListItemPath = [...previousListItemPath, previousListItem.children.length]\n\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tat: listItemPath,\n\t\t\t\tto: newListItemPath,\n\t\t\t})\n\t\t\tTransforms.wrapNodes(editor, { ...parentListElement, children: [] }, { at: newListItemPath })\n\t\t}\n\t})\n\n\treturn true\n}\n"],"names":["SlateElement","SlateNode"],"mappings":";;AAMO,MAAM,iBAAiB,CAC7B,QACA,UACA,iBACa;AACb,QAAM,oBAAoB,gBAAgB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAED,MAAI,sBAAsB,QAAW;AACpC,WAAO;AAAA,EACR;AAEA,SAAO,mBAAmB,QAAQ,MAAM;AACvC,UAAM,CAAC,iBAAiB,IAAI,OAAO,OAAO,QAAQ,YAAY;AAG9D,QAAI,CAAC,kBAAkB,oBAAoB,IAAI;AAE/C,UAAM,4BAA4B,iBAAiB,SAAS,iBAAiB,SAAS,SAAS,CAAC;AAChG,UAAM,iCAAiCA,QAAa,UAAU,yBAAyB,KACnF,gBAAgB;AAAA,MAClB;AAAA,MACA,kBAAkB;AAAA,MAClB,gBAAgB,mBAAmB,iBAAiB;AAAA,IAAA;AAGtD,QAAI,gCAAgC;AACnC,YAAM,kBAAkB;AAAA,QACvB,GAAG;AAAA,QACH,iBAAiB,SAAS,SAAS;AAAA,QAClC,0BAAwE,SAAS;AAAA,MAAA;AAGnF,iBAAW,UAAU,QAAQ;AAAA,QAC5B,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACJ;AAAA,IACF,OAAO;AACN,YAAM,0BAA0B,OAAO,WAAW,QAAQ,gBAAgB;AAC1E,UAAI,yBAAyB;AAC5B,cAAM,CAAC,eAAe,WAAW,IAAI,OAAO,MAAM,QAAQ,oBAAoB;AAC9E,mBAAW,UAAU,QAAQ,OAAO,qBAAqB,CAAA,CAAE,GAAG;AAAA,UAC7D,OAAO,CAAA,SAAQ,KAAK,OAAO,IAAI,KAAMA,QAAa,UAAU,IAAI,KAAK,OAAO,SAAS,IAAI;AAAA,UACzF,IAAI;AAAA,YACH,QAAQ;AAAA,YACR,OAAO;AAAA,UAAA;AAAA,QACR,CACA;AAAA,MACF;AAEA,yBAAmBC,KAAU,IAAI,QAAQ,oBAAoB;AAE7D,YAAM,kBAAkB,CAAC,GAAG,sBAAsB,iBAAiB,SAAS,MAAM;AAElF,iBAAW,UAAU,QAAQ;AAAA,QAC5B,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACJ;AACD,iBAAW,UAAU,QAAQ,EAAE,GAAG,mBAAmB,UAAU,CAAA,KAAM,EAAE,IAAI,iBAAiB;AAAA,IAC7F;AAAA,EACD,CAAC;AAED,SAAO;AACR;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Slate = require("slate");
|
|
4
|
+
const ListItemElement = require("../ListItemElement.cjs");
|
|
5
|
+
const index = require("../../../../editor/index.cjs");
|
|
6
|
+
const normalizeListElement = ({ editor, path, preventDefault }) => {
|
|
7
|
+
for (const [child, childPath] of Slate.Node.children(editor, path)) {
|
|
8
|
+
if (Slate.Element.isElement(child)) {
|
|
9
|
+
if (child.type !== ListItemElement.listItemElementType) {
|
|
10
|
+
index.ContemberEditor.ejectElement(editor, childPath);
|
|
11
|
+
Slate.Transforms.setNodes(editor, { type: ListItemElement.listItemElementType }, { at: childPath });
|
|
12
|
+
}
|
|
13
|
+
} else {
|
|
14
|
+
Slate.Transforms.removeNodes(editor, {
|
|
15
|
+
at: path
|
|
16
|
+
});
|
|
17
|
+
return preventDefault();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.normalizeListElement = normalizeListElement;
|
|
22
|
+
//# sourceMappingURL=normalizeListElement.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeListElement.cjs","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/normalizeListElement.ts"],"sourcesContent":["import { Editor, Element as SlateElement, Node as SlateNode, Path as SlatePath, Transforms } from 'slate'\nimport { listItemElementType } from '../ListItemElement'\nimport { ContemberEditor } from '../../../../editor'\n\nexport const normalizeListElement = ({ editor, path, preventDefault }: { editor: Editor; path: SlatePath; preventDefault: () => void }) => {\n\tfor (const [child, childPath] of SlateNode.children(editor, path)) {\n\t\tif (SlateElement.isElement(child)) {\n\t\t\tif (child.type !== listItemElementType) {\n\t\t\t\tContemberEditor.ejectElement(editor, childPath)\n\t\t\t\tTransforms.setNodes(editor, { type: listItemElementType }, { at: childPath })\n\t\t\t}\n\t\t} else {\n\t\t\t// If a list contains non-element nodes, just remove it.\n\t\t\tTransforms.removeNodes(editor, {\n\t\t\t\tat: path,\n\t\t\t})\n\t\t\treturn preventDefault()\n\t\t}\n\t}\n}\n"],"names":["SlateNode","SlateElement","listItemElementType","ContemberEditor","Transforms"],"mappings":";;;;;AAIO,MAAM,uBAAuB,CAAC,EAAE,QAAQ,MAAM,qBAAsF;AAC1I,aAAW,CAAC,OAAO,SAAS,KAAKA,MAAAA,KAAU,SAAS,QAAQ,IAAI,GAAG;AAClE,QAAIC,MAAAA,QAAa,UAAU,KAAK,GAAG;AAClC,UAAI,MAAM,SAASC,qCAAqB;AACvCC,8BAAgB,aAAa,QAAQ,SAAS;AAC9CC,yBAAW,SAAS,QAAQ,EAAE,MAAMF,gBAAAA,uBAAuB,EAAE,IAAI,WAAW;AAAA,MAC7E;AAAA,IACD,OAAO;AAENE,YAAAA,WAAW,YAAY,QAAQ;AAAA,QAC9B,IAAI;AAAA,MAAA,CACJ;AACD,aAAO,eAAA;AAAA,IACR;AAAA,EACD;AACD;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Node, Element, Transforms } from "slate";
|
|
2
|
+
import { listItemElementType } from "../ListItemElement.js";
|
|
3
|
+
import { ContemberEditor } from "../../../../editor/index.js";
|
|
4
|
+
const normalizeListElement = ({ editor, path, preventDefault }) => {
|
|
5
|
+
for (const [child, childPath] of Node.children(editor, path)) {
|
|
6
|
+
if (Element.isElement(child)) {
|
|
7
|
+
if (child.type !== listItemElementType) {
|
|
8
|
+
ContemberEditor.ejectElement(editor, childPath);
|
|
9
|
+
Transforms.setNodes(editor, { type: listItemElementType }, { at: childPath });
|
|
10
|
+
}
|
|
11
|
+
} else {
|
|
12
|
+
Transforms.removeNodes(editor, {
|
|
13
|
+
at: path
|
|
14
|
+
});
|
|
15
|
+
return preventDefault();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
export {
|
|
20
|
+
normalizeListElement
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=normalizeListElement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeListElement.js","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/normalizeListElement.ts"],"sourcesContent":["import { Editor, Element as SlateElement, Node as SlateNode, Path as SlatePath, Transforms } from 'slate'\nimport { listItemElementType } from '../ListItemElement'\nimport { ContemberEditor } from '../../../../editor'\n\nexport const normalizeListElement = ({ editor, path, preventDefault }: { editor: Editor; path: SlatePath; preventDefault: () => void }) => {\n\tfor (const [child, childPath] of SlateNode.children(editor, path)) {\n\t\tif (SlateElement.isElement(child)) {\n\t\t\tif (child.type !== listItemElementType) {\n\t\t\t\tContemberEditor.ejectElement(editor, childPath)\n\t\t\t\tTransforms.setNodes(editor, { type: listItemElementType }, { at: childPath })\n\t\t\t}\n\t\t} else {\n\t\t\t// If a list contains non-element nodes, just remove it.\n\t\t\tTransforms.removeNodes(editor, {\n\t\t\t\tat: path,\n\t\t\t})\n\t\t\treturn preventDefault()\n\t\t}\n\t}\n}\n"],"names":["SlateNode","SlateElement"],"mappings":";;;AAIO,MAAM,uBAAuB,CAAC,EAAE,QAAQ,MAAM,qBAAsF;AAC1I,aAAW,CAAC,OAAO,SAAS,KAAKA,KAAU,SAAS,QAAQ,IAAI,GAAG;AAClE,QAAIC,QAAa,UAAU,KAAK,GAAG;AAClC,UAAI,MAAM,SAAS,qBAAqB;AACvC,wBAAgB,aAAa,QAAQ,SAAS;AAC9C,mBAAW,SAAS,QAAQ,EAAE,MAAM,uBAAuB,EAAE,IAAI,WAAW;AAAA,MAC7E;AAAA,IACD,OAAO;AAEN,iBAAW,YAAY,QAAQ;AAAA,QAC9B,IAAI;AAAA,MAAA,CACJ;AACD,aAAO,eAAA;AAAA,IACR;AAAA,EACD;AACD;"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Slate = require("slate");
|
|
4
|
+
const index = require("../../../../editor/index.cjs");
|
|
5
|
+
const ListItemElement = require("../ListItemElement.cjs");
|
|
6
|
+
const ListElement = require("../ListElement.cjs");
|
|
7
|
+
const toggleListElement = (editor, elementType, suchThat, otherKindOfList) => {
|
|
8
|
+
if (editor.isElementActive(elementType, suchThat)) {
|
|
9
|
+
const closestListEntry = index.ContemberEditor.closest(editor, {
|
|
10
|
+
match: (node) => Slate.Element.isElement(node) && node.type === elementType
|
|
11
|
+
});
|
|
12
|
+
if (!closestListEntry) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
return Slate.Editor.withoutNormalizing(editor, () => {
|
|
16
|
+
const [closestList, closestListPath] = closestListEntry;
|
|
17
|
+
for (let i = closestList.children.length - 1; i >= 0; i--) {
|
|
18
|
+
const currentItemPath = [...closestListPath, i];
|
|
19
|
+
if (Slate.Editor.hasInlines(editor, closestList.children[i])) {
|
|
20
|
+
Slate.Transforms.wrapNodes(editor, editor.createDefaultElement([]), {
|
|
21
|
+
at: currentItemPath
|
|
22
|
+
});
|
|
23
|
+
Slate.Transforms.unwrapNodes(editor, {
|
|
24
|
+
at: [...currentItemPath, 0]
|
|
25
|
+
});
|
|
26
|
+
} else {
|
|
27
|
+
Slate.Transforms.unwrapNodes(editor, { at: currentItemPath });
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
Slate.Transforms.unwrapNodes(editor, { at: closestListPath });
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
if (editor.isElementActive(elementType) || editor.isElementActive(otherKindOfList)) {
|
|
34
|
+
const closestListEntry = index.ContemberEditor.closest(editor, {
|
|
35
|
+
match: (node) => ListElement.isListElement(node)
|
|
36
|
+
});
|
|
37
|
+
if (!closestListEntry) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
return Slate.Editor.withoutNormalizing(editor, () => {
|
|
41
|
+
const [, closestListPath] = closestListEntry;
|
|
42
|
+
index.ContemberEditor.ejectElement(editor, closestListPath);
|
|
43
|
+
Slate.Transforms.setNodes(editor, { ...suchThat, type: elementType }, { at: closestListPath });
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
const selection = editor.selection;
|
|
47
|
+
if (!selection) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const closestViableParentEntry = index.ContemberEditor.closestViableBlockContainerEntry(editor);
|
|
51
|
+
if (!closestViableParentEntry) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
Slate.Editor.withoutNormalizing(editor, () => {
|
|
55
|
+
const [targetParent, targetParentPath] = closestViableParentEntry;
|
|
56
|
+
if (Slate.Element.isElement(targetParent) && Slate.Editor.hasInlines(editor, targetParent)) {
|
|
57
|
+
const listItemPath = [...targetParentPath, 0];
|
|
58
|
+
Slate.Transforms.insertNodes(editor, { type: ListItemElement.listItemElementType, children: [] }, { at: listItemPath });
|
|
59
|
+
Slate.Transforms.moveNodes(editor, {
|
|
60
|
+
to: [...listItemPath, 0],
|
|
61
|
+
match: (node) => Slate.Text.isText(node) || Slate.Element.isElement(node) && Slate.Editor.isInline(editor, node),
|
|
62
|
+
at: {
|
|
63
|
+
anchor: Slate.Editor.start(editor, [...targetParentPath, 1]),
|
|
64
|
+
focus: Slate.Editor.end(editor, [...targetParentPath, targetParent.children.length])
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
Slate.Transforms.wrapNodes(editor, { type: elementType, children: [] }, { at: listItemPath });
|
|
68
|
+
} else {
|
|
69
|
+
const [selectionStart, selectionEnd] = Slate.Editor.edges(editor, selection);
|
|
70
|
+
const relativeStartIndex = selectionStart.path[targetParentPath.length];
|
|
71
|
+
const relativeEndIndex = selectionEnd.path[targetParentPath.length];
|
|
72
|
+
for (let i = relativeStartIndex; i <= relativeEndIndex; i++) {
|
|
73
|
+
Slate.Transforms.wrapNodes(editor, { type: ListItemElement.listItemElementType, children: [] }, { at: [...targetParentPath, i] });
|
|
74
|
+
}
|
|
75
|
+
const emptyList = {
|
|
76
|
+
...suchThat,
|
|
77
|
+
type: elementType,
|
|
78
|
+
children: []
|
|
79
|
+
};
|
|
80
|
+
const listPath = [...targetParentPath, relativeStartIndex];
|
|
81
|
+
Slate.Transforms.insertNodes(editor, emptyList, { at: listPath });
|
|
82
|
+
for (let i = relativeStartIndex; i <= relativeEndIndex; i++) {
|
|
83
|
+
Slate.Transforms.moveNodes(editor, {
|
|
84
|
+
to: [...listPath, i - relativeStartIndex],
|
|
85
|
+
// The path doesn't depend on i because we keep moving the siblings away.
|
|
86
|
+
at: [...targetParentPath, relativeStartIndex + 1]
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
exports.toggleListElement = toggleListElement;
|
|
93
|
+
//# sourceMappingURL=toggleListElement.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleListElement.cjs","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/toggleListElement.ts"],"sourcesContent":["import { OrderedListElement, orderedListElementType } from '../OrderedListElement'\nimport { UnorderedListElement, unorderedListElementType } from '../UnorderedListElement'\nimport { Editor, Element as SlateElement, NodeEntry, Text, Transforms } from 'slate'\nimport { ContemberEditor } from '../../../../editor'\nimport { listItemElementType } from '../ListItemElement'\nimport { isListElement } from '../ListElement'\n\nexport const toggleListElement = <T extends OrderedListElement | UnorderedListElement>(\n\teditor: Editor,\n\telementType: T['type'],\n\tsuchThat: Partial<T> | undefined,\n\totherKindOfList: typeof orderedListElementType | typeof unorderedListElementType,\n) => {\n\tif (editor.isElementActive(elementType, suchThat)) {\n\t\tconst closestListEntry = ContemberEditor.closest(editor, {\n\t\t\tmatch: node => SlateElement.isElement(node) && node.type === elementType,\n\t\t}) as NodeEntry<UnorderedListElement | OrderedListElement>\n\t\tif (!closestListEntry) {\n\t\t\treturn\n\t\t}\n\t\treturn Editor.withoutNormalizing(editor, () => {\n\t\t\tconst [closestList, closestListPath] = closestListEntry\n\n\t\t\t// It's important that we iterate backwards because otherwise we'd mangle the paths.\n\t\t\t// We unwrap elements which may have more than one child.\n\t\t\tfor (let i = closestList.children.length - 1; i >= 0; i--) {\n\t\t\t\tconst currentItemPath = [...closestListPath, i]\n\t\t\t\tif (Editor.hasInlines(editor, closestList.children[i] as SlateElement)) {\n\t\t\t\t\tTransforms.wrapNodes(editor, editor.createDefaultElement([]), {\n\t\t\t\t\t\tat: currentItemPath,\n\t\t\t\t\t})\n\t\t\t\t\tTransforms.unwrapNodes(editor, {\n\t\t\t\t\t\tat: [...currentItemPath, 0],\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tTransforms.unwrapNodes(editor, { at: currentItemPath })\n\t\t\t\t}\n\t\t\t}\n\t\t\tTransforms.unwrapNodes(editor, { at: closestListPath })\n\t\t})\n\t}\n\tif (editor.isElementActive(elementType) || editor.isElementActive(otherKindOfList)) {\n\t\t// We're in a list but a different one. Note the lack of 'suchThat'\n\t\tconst closestListEntry = ContemberEditor.closest(editor, {\n\t\t\tmatch: node => isListElement(node),\n\t\t}) as NodeEntry<UnorderedListElement | OrderedListElement>\n\t\tif (!closestListEntry) {\n\t\t\treturn\n\t\t}\n\t\treturn Editor.withoutNormalizing(editor, () => {\n\t\t\tconst [, closestListPath] = closestListEntry\n\t\t\tContemberEditor.ejectElement(editor, closestListPath)\n\t\t\tTransforms.setNodes(editor, { ...suchThat, type: elementType }, { at: closestListPath })\n\t\t})\n\t}\n\n\tconst selection = editor.selection\n\n\tif (!selection) {\n\t\treturn\n\t}\n\n\tconst closestViableParentEntry = ContemberEditor.closestViableBlockContainerEntry(editor)\n\n\tif (!closestViableParentEntry) {\n\t\treturn\n\t}\n\n\tEditor.withoutNormalizing(editor, () => {\n\t\tconst [targetParent, targetParentPath] = closestViableParentEntry\n\n\t\tif (SlateElement.isElement(targetParent) && Editor.hasInlines(editor, targetParent)) {\n\t\t\t// We're deliberately widening the selection to include all the inlines.\n\t\t\tconst listItemPath = [...targetParentPath, 0]\n\n\t\t\t// Not using wrapNodes because it appears to exhibit rather unpredictable treatment of text nodes.\n\t\t\tTransforms.insertNodes(editor, { type: listItemElementType, children: [] }, { at: listItemPath })\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tto: [...listItemPath, 0],\n\t\t\t\tmatch: node => Text.isText(node) || SlateElement.isElement(node) && Editor.isInline(editor, node),\n\t\t\t\tat: {\n\t\t\t\t\tanchor: Editor.start(editor, [...targetParentPath, 1]),\n\t\t\t\t\tfocus: Editor.end(editor, [...targetParentPath, targetParent.children.length]),\n\t\t\t\t},\n\t\t\t})\n\t\t\tTransforms.wrapNodes(editor, { type: elementType, children: [] }, { at: listItemPath })\n\t\t} else {\n\t\t\tconst [selectionStart, selectionEnd] = Editor.edges(editor, selection)\n\t\t\tconst relativeStartIndex = selectionStart.path[targetParentPath.length]\n\t\t\tconst relativeEndIndex = selectionEnd.path[targetParentPath.length]\n\n\t\t\tfor (let i = relativeStartIndex; i <= relativeEndIndex; i++) {\n\t\t\t\tTransforms.wrapNodes(editor, { type: listItemElementType, children: [] }, { at: [...targetParentPath, i] })\n\t\t\t}\n\n\t\t\tconst emptyList: UnorderedListElement | OrderedListElement = {\n\t\t\t\t...suchThat,\n\t\t\t\ttype: elementType as (UnorderedListElement | OrderedListElement)['type'],\n\t\t\t\tchildren: [],\n\t\t\t}\n\t\t\tconst listPath = [...targetParentPath, relativeStartIndex]\n\t\t\tTransforms.insertNodes(editor, emptyList, { at: listPath })\n\n\t\t\tfor (let i = relativeStartIndex; i <= relativeEndIndex; i++) {\n\t\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\t\tto: [...listPath, i - relativeStartIndex],\n\t\t\t\t\t// The path doesn't depend on i because we keep moving the siblings away.\n\t\t\t\t\tat: [...targetParentPath, relativeStartIndex + 1],\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t})\n}\n"],"names":["ContemberEditor","SlateElement","Editor","Transforms","isListElement","listItemElementType","Text"],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Element, Editor, Transforms, Text } from "slate";
|
|
2
|
+
import { ContemberEditor } from "../../../../editor/index.js";
|
|
3
|
+
import { listItemElementType } from "../ListItemElement.js";
|
|
4
|
+
import { isListElement } from "../ListElement.js";
|
|
5
|
+
const toggleListElement = (editor, elementType, suchThat, otherKindOfList) => {
|
|
6
|
+
if (editor.isElementActive(elementType, suchThat)) {
|
|
7
|
+
const closestListEntry = ContemberEditor.closest(editor, {
|
|
8
|
+
match: (node) => Element.isElement(node) && node.type === elementType
|
|
9
|
+
});
|
|
10
|
+
if (!closestListEntry) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
return Editor.withoutNormalizing(editor, () => {
|
|
14
|
+
const [closestList, closestListPath] = closestListEntry;
|
|
15
|
+
for (let i = closestList.children.length - 1; i >= 0; i--) {
|
|
16
|
+
const currentItemPath = [...closestListPath, i];
|
|
17
|
+
if (Editor.hasInlines(editor, closestList.children[i])) {
|
|
18
|
+
Transforms.wrapNodes(editor, editor.createDefaultElement([]), {
|
|
19
|
+
at: currentItemPath
|
|
20
|
+
});
|
|
21
|
+
Transforms.unwrapNodes(editor, {
|
|
22
|
+
at: [...currentItemPath, 0]
|
|
23
|
+
});
|
|
24
|
+
} else {
|
|
25
|
+
Transforms.unwrapNodes(editor, { at: currentItemPath });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
Transforms.unwrapNodes(editor, { at: closestListPath });
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
if (editor.isElementActive(elementType) || editor.isElementActive(otherKindOfList)) {
|
|
32
|
+
const closestListEntry = ContemberEditor.closest(editor, {
|
|
33
|
+
match: (node) => isListElement(node)
|
|
34
|
+
});
|
|
35
|
+
if (!closestListEntry) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
return Editor.withoutNormalizing(editor, () => {
|
|
39
|
+
const [, closestListPath] = closestListEntry;
|
|
40
|
+
ContemberEditor.ejectElement(editor, closestListPath);
|
|
41
|
+
Transforms.setNodes(editor, { ...suchThat, type: elementType }, { at: closestListPath });
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
const selection = editor.selection;
|
|
45
|
+
if (!selection) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const closestViableParentEntry = ContemberEditor.closestViableBlockContainerEntry(editor);
|
|
49
|
+
if (!closestViableParentEntry) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
Editor.withoutNormalizing(editor, () => {
|
|
53
|
+
const [targetParent, targetParentPath] = closestViableParentEntry;
|
|
54
|
+
if (Element.isElement(targetParent) && Editor.hasInlines(editor, targetParent)) {
|
|
55
|
+
const listItemPath = [...targetParentPath, 0];
|
|
56
|
+
Transforms.insertNodes(editor, { type: listItemElementType, children: [] }, { at: listItemPath });
|
|
57
|
+
Transforms.moveNodes(editor, {
|
|
58
|
+
to: [...listItemPath, 0],
|
|
59
|
+
match: (node) => Text.isText(node) || Element.isElement(node) && Editor.isInline(editor, node),
|
|
60
|
+
at: {
|
|
61
|
+
anchor: Editor.start(editor, [...targetParentPath, 1]),
|
|
62
|
+
focus: Editor.end(editor, [...targetParentPath, targetParent.children.length])
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
Transforms.wrapNodes(editor, { type: elementType, children: [] }, { at: listItemPath });
|
|
66
|
+
} else {
|
|
67
|
+
const [selectionStart, selectionEnd] = Editor.edges(editor, selection);
|
|
68
|
+
const relativeStartIndex = selectionStart.path[targetParentPath.length];
|
|
69
|
+
const relativeEndIndex = selectionEnd.path[targetParentPath.length];
|
|
70
|
+
for (let i = relativeStartIndex; i <= relativeEndIndex; i++) {
|
|
71
|
+
Transforms.wrapNodes(editor, { type: listItemElementType, children: [] }, { at: [...targetParentPath, i] });
|
|
72
|
+
}
|
|
73
|
+
const emptyList = {
|
|
74
|
+
...suchThat,
|
|
75
|
+
type: elementType,
|
|
76
|
+
children: []
|
|
77
|
+
};
|
|
78
|
+
const listPath = [...targetParentPath, relativeStartIndex];
|
|
79
|
+
Transforms.insertNodes(editor, emptyList, { at: listPath });
|
|
80
|
+
for (let i = relativeStartIndex; i <= relativeEndIndex; i++) {
|
|
81
|
+
Transforms.moveNodes(editor, {
|
|
82
|
+
to: [...listPath, i - relativeStartIndex],
|
|
83
|
+
// The path doesn't depend on i because we keep moving the siblings away.
|
|
84
|
+
at: [...targetParentPath, relativeStartIndex + 1]
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
export {
|
|
91
|
+
toggleListElement
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=toggleListElement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleListElement.js","sources":["../../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/transforms/toggleListElement.ts"],"sourcesContent":["import { OrderedListElement, orderedListElementType } from '../OrderedListElement'\nimport { UnorderedListElement, unorderedListElementType } from '../UnorderedListElement'\nimport { Editor, Element as SlateElement, NodeEntry, Text, Transforms } from 'slate'\nimport { ContemberEditor } from '../../../../editor'\nimport { listItemElementType } from '../ListItemElement'\nimport { isListElement } from '../ListElement'\n\nexport const toggleListElement = <T extends OrderedListElement | UnorderedListElement>(\n\teditor: Editor,\n\telementType: T['type'],\n\tsuchThat: Partial<T> | undefined,\n\totherKindOfList: typeof orderedListElementType | typeof unorderedListElementType,\n) => {\n\tif (editor.isElementActive(elementType, suchThat)) {\n\t\tconst closestListEntry = ContemberEditor.closest(editor, {\n\t\t\tmatch: node => SlateElement.isElement(node) && node.type === elementType,\n\t\t}) as NodeEntry<UnorderedListElement | OrderedListElement>\n\t\tif (!closestListEntry) {\n\t\t\treturn\n\t\t}\n\t\treturn Editor.withoutNormalizing(editor, () => {\n\t\t\tconst [closestList, closestListPath] = closestListEntry\n\n\t\t\t// It's important that we iterate backwards because otherwise we'd mangle the paths.\n\t\t\t// We unwrap elements which may have more than one child.\n\t\t\tfor (let i = closestList.children.length - 1; i >= 0; i--) {\n\t\t\t\tconst currentItemPath = [...closestListPath, i]\n\t\t\t\tif (Editor.hasInlines(editor, closestList.children[i] as SlateElement)) {\n\t\t\t\t\tTransforms.wrapNodes(editor, editor.createDefaultElement([]), {\n\t\t\t\t\t\tat: currentItemPath,\n\t\t\t\t\t})\n\t\t\t\t\tTransforms.unwrapNodes(editor, {\n\t\t\t\t\t\tat: [...currentItemPath, 0],\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tTransforms.unwrapNodes(editor, { at: currentItemPath })\n\t\t\t\t}\n\t\t\t}\n\t\t\tTransforms.unwrapNodes(editor, { at: closestListPath })\n\t\t})\n\t}\n\tif (editor.isElementActive(elementType) || editor.isElementActive(otherKindOfList)) {\n\t\t// We're in a list but a different one. Note the lack of 'suchThat'\n\t\tconst closestListEntry = ContemberEditor.closest(editor, {\n\t\t\tmatch: node => isListElement(node),\n\t\t}) as NodeEntry<UnorderedListElement | OrderedListElement>\n\t\tif (!closestListEntry) {\n\t\t\treturn\n\t\t}\n\t\treturn Editor.withoutNormalizing(editor, () => {\n\t\t\tconst [, closestListPath] = closestListEntry\n\t\t\tContemberEditor.ejectElement(editor, closestListPath)\n\t\t\tTransforms.setNodes(editor, { ...suchThat, type: elementType }, { at: closestListPath })\n\t\t})\n\t}\n\n\tconst selection = editor.selection\n\n\tif (!selection) {\n\t\treturn\n\t}\n\n\tconst closestViableParentEntry = ContemberEditor.closestViableBlockContainerEntry(editor)\n\n\tif (!closestViableParentEntry) {\n\t\treturn\n\t}\n\n\tEditor.withoutNormalizing(editor, () => {\n\t\tconst [targetParent, targetParentPath] = closestViableParentEntry\n\n\t\tif (SlateElement.isElement(targetParent) && Editor.hasInlines(editor, targetParent)) {\n\t\t\t// We're deliberately widening the selection to include all the inlines.\n\t\t\tconst listItemPath = [...targetParentPath, 0]\n\n\t\t\t// Not using wrapNodes because it appears to exhibit rather unpredictable treatment of text nodes.\n\t\t\tTransforms.insertNodes(editor, { type: listItemElementType, children: [] }, { at: listItemPath })\n\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\tto: [...listItemPath, 0],\n\t\t\t\tmatch: node => Text.isText(node) || SlateElement.isElement(node) && Editor.isInline(editor, node),\n\t\t\t\tat: {\n\t\t\t\t\tanchor: Editor.start(editor, [...targetParentPath, 1]),\n\t\t\t\t\tfocus: Editor.end(editor, [...targetParentPath, targetParent.children.length]),\n\t\t\t\t},\n\t\t\t})\n\t\t\tTransforms.wrapNodes(editor, { type: elementType, children: [] }, { at: listItemPath })\n\t\t} else {\n\t\t\tconst [selectionStart, selectionEnd] = Editor.edges(editor, selection)\n\t\t\tconst relativeStartIndex = selectionStart.path[targetParentPath.length]\n\t\t\tconst relativeEndIndex = selectionEnd.path[targetParentPath.length]\n\n\t\t\tfor (let i = relativeStartIndex; i <= relativeEndIndex; i++) {\n\t\t\t\tTransforms.wrapNodes(editor, { type: listItemElementType, children: [] }, { at: [...targetParentPath, i] })\n\t\t\t}\n\n\t\t\tconst emptyList: UnorderedListElement | OrderedListElement = {\n\t\t\t\t...suchThat,\n\t\t\t\ttype: elementType as (UnorderedListElement | OrderedListElement)['type'],\n\t\t\t\tchildren: [],\n\t\t\t}\n\t\t\tconst listPath = [...targetParentPath, relativeStartIndex]\n\t\t\tTransforms.insertNodes(editor, emptyList, { at: listPath })\n\n\t\t\tfor (let i = relativeStartIndex; i <= relativeEndIndex; i++) {\n\t\t\t\tTransforms.moveNodes(editor, {\n\t\t\t\t\tto: [...listPath, i - relativeStartIndex],\n\t\t\t\t\t// The path doesn't depend on i because we keep moving the siblings away.\n\t\t\t\t\tat: [...targetParentPath, relativeStartIndex + 1],\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t})\n}\n"],"names":["SlateElement"],"mappings":"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"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Slate = require("slate");
|
|
4
|
+
const index = require("../../../editor/index.cjs");
|
|
5
|
+
const ListItemElement = require("./ListItemElement.cjs");
|
|
6
|
+
const OrderedListElement = require("./OrderedListElement.cjs");
|
|
7
|
+
const UnorderedListElement = require("./UnorderedListElement.cjs");
|
|
8
|
+
const ListElement = require("./ListElement.cjs");
|
|
9
|
+
const ListHtmlDeserializer = require("./ListHtmlDeserializer.cjs");
|
|
10
|
+
const dedentListItem = require("./transforms/dedentListItem.cjs");
|
|
11
|
+
const indentListItem = require("./transforms/indentListItem.cjs");
|
|
12
|
+
const withLists = ({ renderListItem, renderUnorderedList, renderOrderedList }) => (editor) => {
|
|
13
|
+
const {
|
|
14
|
+
insertBreak,
|
|
15
|
+
onKeyDown
|
|
16
|
+
} = editor;
|
|
17
|
+
editor.registerElement(ListItemElement.listItemElementPlugin({ render: renderListItem }));
|
|
18
|
+
editor.registerElement(OrderedListElement.orderedListElementPlugin({ render: renderOrderedList }));
|
|
19
|
+
editor.registerElement(UnorderedListElement.unorderedListElementPlugin({ render: renderUnorderedList }));
|
|
20
|
+
editor.htmlDeserializer.registerPlugin(ListHtmlDeserializer.listHtmlDeserializerFactory());
|
|
21
|
+
Object.assign(editor, {
|
|
22
|
+
insertBreak: () => {
|
|
23
|
+
const { selection } = editor;
|
|
24
|
+
if (!selection || !Slate.Range.isCollapsed(selection)) {
|
|
25
|
+
return insertBreak();
|
|
26
|
+
}
|
|
27
|
+
const closestBlockEntry = index.ContemberEditor.closestBlockEntry(editor);
|
|
28
|
+
if (closestBlockEntry === void 0) {
|
|
29
|
+
return insertBreak();
|
|
30
|
+
}
|
|
31
|
+
const [closestBlock, closestBlockPath] = closestBlockEntry;
|
|
32
|
+
let containingListItem;
|
|
33
|
+
let containingListItemPath;
|
|
34
|
+
if (!ListItemElement.isListItemElement(closestBlock)) {
|
|
35
|
+
if (closestBlockPath.length < 2) {
|
|
36
|
+
return insertBreak();
|
|
37
|
+
}
|
|
38
|
+
containingListItemPath = Slate.Path.parent(closestBlockPath);
|
|
39
|
+
const closestListItem = Slate.Node.get(editor, containingListItemPath);
|
|
40
|
+
if (!ListItemElement.isListItemElement(closestListItem)) {
|
|
41
|
+
return insertBreak();
|
|
42
|
+
}
|
|
43
|
+
containingListItem = closestListItem;
|
|
44
|
+
} else {
|
|
45
|
+
containingListItem = closestBlock;
|
|
46
|
+
containingListItemPath = closestBlockPath;
|
|
47
|
+
}
|
|
48
|
+
if (Slate.Node.string(containingListItem) !== "") {
|
|
49
|
+
return Slate.Transforms.splitNodes(editor, {
|
|
50
|
+
always: true,
|
|
51
|
+
at: selection.focus,
|
|
52
|
+
match: (node) => ListItemElement.isListItemElement(node)
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
const containingListPath = Slate.Path.parent(containingListItemPath);
|
|
56
|
+
const containingList = Slate.Node.get(editor, containingListPath);
|
|
57
|
+
if (!ListElement.isListElement(containingList)) {
|
|
58
|
+
return insertBreak();
|
|
59
|
+
}
|
|
60
|
+
const followingListItemPath = Slate.Path.next(containingListItemPath);
|
|
61
|
+
const hasFollowingListItem = Slate.Node.has(editor, followingListItemPath);
|
|
62
|
+
if (hasFollowingListItem) {
|
|
63
|
+
const followingListItemNode = Slate.Node.get(editor, followingListItemPath);
|
|
64
|
+
if (!ListItemElement.isListItemElement(followingListItemNode)) {
|
|
65
|
+
return insertBreak();
|
|
66
|
+
}
|
|
67
|
+
if (containingListItemPath[containingListItemPath.length - 1] === 0) {
|
|
68
|
+
Slate.Editor.withoutNormalizing(editor, () => {
|
|
69
|
+
Slate.Transforms.removeNodes(editor, { at: containingListItemPath });
|
|
70
|
+
Slate.Transforms.insertNodes(editor, editor.createDefaultElement([{ text: "" }]), { at: containingListPath, select: true });
|
|
71
|
+
});
|
|
72
|
+
} else {
|
|
73
|
+
Slate.Editor.withoutNormalizing(editor, () => {
|
|
74
|
+
Slate.Transforms.removeNodes(editor, { at: containingListItemPath });
|
|
75
|
+
Slate.Transforms.splitNodes(editor, { at: containingListItemPath });
|
|
76
|
+
const afterListParent = Slate.Path.next(containingListPath);
|
|
77
|
+
Slate.Transforms.insertNodes(editor, editor.createDefaultElement([{ text: "" }]), { at: afterListParent, select: true });
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
} else {
|
|
81
|
+
Slate.Editor.withoutNormalizing(editor, () => {
|
|
82
|
+
const afterListParent = Slate.Path.next(containingListPath);
|
|
83
|
+
Slate.Transforms.removeNodes(editor, { at: containingListItemPath });
|
|
84
|
+
Slate.Transforms.insertNodes(editor, editor.createDefaultElement([{ text: "" }]), { at: afterListParent, select: true });
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
onKeyDown: (event) => {
|
|
89
|
+
if (event.key !== "Tab" && event.key !== "Enter" || !editor.selection || !Slate.Range.isCollapsed(editor.selection)) {
|
|
90
|
+
return onKeyDown(event);
|
|
91
|
+
}
|
|
92
|
+
const selection = editor.selection;
|
|
93
|
+
const closestBlockEntry = index.ContemberEditor.closestBlockEntry(editor, { at: selection.focus });
|
|
94
|
+
if (closestBlockEntry === void 0) {
|
|
95
|
+
return onKeyDown(event);
|
|
96
|
+
}
|
|
97
|
+
let [closestBlockElement, closestBlockPath] = closestBlockEntry;
|
|
98
|
+
if (!Slate.Element.isElement(closestBlockElement)) {
|
|
99
|
+
return onKeyDown(event);
|
|
100
|
+
}
|
|
101
|
+
if (event.key === "Tab") {
|
|
102
|
+
if (editor.isDefaultElement(closestBlockElement)) {
|
|
103
|
+
[closestBlockElement, closestBlockPath] = Slate.Editor.parent(editor, closestBlockPath);
|
|
104
|
+
}
|
|
105
|
+
if (!ListItemElement.isListItemElement(closestBlockElement)) {
|
|
106
|
+
return onKeyDown(event);
|
|
107
|
+
}
|
|
108
|
+
const succeeded = event.shiftKey ? dedentListItem.dedentListItem(editor, closestBlockElement, closestBlockPath) : indentListItem.indentListItem(editor, closestBlockElement, closestBlockPath);
|
|
109
|
+
if (succeeded) {
|
|
110
|
+
return event.preventDefault();
|
|
111
|
+
}
|
|
112
|
+
} else if (event.key === "Enter" && event.shiftKey) {
|
|
113
|
+
if (editor.isDefaultElement(closestBlockElement)) {
|
|
114
|
+
const [listItem] = Slate.Editor.parent(editor, closestBlockPath);
|
|
115
|
+
if (!ListItemElement.isListItemElement(listItem)) {
|
|
116
|
+
return onKeyDown(event);
|
|
117
|
+
}
|
|
118
|
+
event.preventDefault();
|
|
119
|
+
return Slate.Transforms.splitNodes(editor, {
|
|
120
|
+
always: true,
|
|
121
|
+
at: selection.focus,
|
|
122
|
+
match: (node) => Slate.Element.isElement(node) && Slate.Editor.isBlock(editor, node) && editor.isDefaultElement(node)
|
|
123
|
+
});
|
|
124
|
+
} else if (ListItemElement.isListItemElement(closestBlockElement)) {
|
|
125
|
+
const [listItemStart, listItemEnd] = Slate.Editor.edges(editor, closestBlockPath);
|
|
126
|
+
event.preventDefault();
|
|
127
|
+
return Slate.Editor.withoutNormalizing(editor, () => {
|
|
128
|
+
Slate.Transforms.wrapNodes(editor, editor.createDefaultElement([]), {
|
|
129
|
+
match: (node) => Slate.Text.isText(node) || Slate.Element.isElement(node) && editor.isInline(node),
|
|
130
|
+
at: {
|
|
131
|
+
anchor: listItemStart,
|
|
132
|
+
focus: listItemEnd
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
const relative = Slate.Path.relative(selection.focus.path, closestBlockPath);
|
|
136
|
+
Slate.Transforms.splitNodes(editor, {
|
|
137
|
+
// The zero should be the newly created default element.
|
|
138
|
+
at: {
|
|
139
|
+
path: [...closestBlockPath, 0, ...relative],
|
|
140
|
+
offset: selection.focus.offset
|
|
141
|
+
},
|
|
142
|
+
always: true
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return onKeyDown(event);
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
return editor;
|
|
151
|
+
};
|
|
152
|
+
exports.withLists = withLists;
|
|
153
|
+
//# sourceMappingURL=withLists.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withLists.cjs","sources":["../../../../../../../packages/react-slate-editor-base/src/plugins/element/lists/withLists.ts"],"sourcesContent":["import { Editor, Element as SlateElement, Node as SlateNode, Path as SlatePath, Range as SlateRange, Text, Transforms } from 'slate'\nimport { ContemberEditor } from '../../../editor'\nimport { isListItemElement, ListItemElement, listItemElementPlugin } from './ListItemElement'\nimport { OrderedListElement, orderedListElementPlugin } from './OrderedListElement'\nimport { dedentListItem, indentListItem } from './transforms'\nimport { UnorderedListElement, unorderedListElementPlugin } from './UnorderedListElement'\nimport { isListElement } from './ListElement'\nimport { listHtmlDeserializerFactory } from './ListHtmlDeserializer'\nimport { ElementRenderer } from '../../../types'\n\nexport const withLists = ({ renderListItem, renderUnorderedList, renderOrderedList }: {\n\trenderListItem: ElementRenderer<ListItemElement>\n\trenderOrderedList: ElementRenderer<OrderedListElement>\n\trenderUnorderedList: ElementRenderer<UnorderedListElement>\n}) =>\n<E extends Editor>(editor: E): E => {\n\tconst {\n\t\tinsertBreak,\n\t\tonKeyDown,\n\t} = editor\n\n\teditor.registerElement(listItemElementPlugin({ render: renderListItem }))\n\teditor.registerElement(orderedListElementPlugin({ render: renderOrderedList }))\n\teditor.registerElement(unorderedListElementPlugin({ render: renderUnorderedList }))\n\n\teditor.htmlDeserializer.registerPlugin(listHtmlDeserializerFactory())\n\n\tObject.assign<Editor, Partial<Editor>>(editor, {\n\t\tinsertBreak: () => {\n\t\t\tconst { selection } = editor\n\n\t\t\tif (!selection || !SlateRange.isCollapsed(selection)) {\n\t\t\t\treturn insertBreak()\n\t\t\t}\n\t\t\tconst closestBlockEntry = ContemberEditor.closestBlockEntry(editor)\n\t\t\tif (closestBlockEntry === undefined) {\n\t\t\t\treturn insertBreak()\n\t\t\t}\n\t\t\tconst [closestBlock, closestBlockPath] = closestBlockEntry\n\n\t\t\tlet containingListItem: ListItemElement\n\t\t\tlet containingListItemPath: SlatePath\n\n\t\t\tif (!isListItemElement(closestBlock)) {\n\t\t\t\tif (closestBlockPath.length < 2) {\n\t\t\t\t\t// This block cannot be inside a list\n\t\t\t\t\treturn insertBreak()\n\t\t\t\t}\n\n\t\t\t\tcontainingListItemPath = SlatePath.parent(closestBlockPath)\n\t\t\t\tconst closestListItem = SlateNode.get(editor, containingListItemPath)\n\n\t\t\t\tif (!isListItemElement(closestListItem)) {\n\t\t\t\t\t// The block is not inside a list\n\t\t\t\t\treturn insertBreak()\n\t\t\t\t}\n\t\t\t\tcontainingListItem = closestListItem\n\t\t\t} else {\n\t\t\t\tcontainingListItem = closestBlock\n\t\t\t\tcontainingListItemPath = closestBlockPath\n\t\t\t}\n\n\t\t\tif (SlateNode.string(containingListItem) !== '') {\n\t\t\t\treturn Transforms.splitNodes(editor, {\n\t\t\t\t\talways: true,\n\t\t\t\t\tat: selection.focus,\n\t\t\t\t\tmatch: node => isListItemElement(node),\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// We're in a list and want to leave this list.\n\n\t\t\tconst containingListPath = SlatePath.parent(containingListItemPath)\n\t\t\tconst containingList = SlateNode.get(editor, containingListPath)\n\n\t\t\tif (!isListElement(containingList)) {\n\t\t\t\t// This shouldn't really happen. It's more of a sanity check.\n\t\t\t\treturn insertBreak()\n\t\t\t}\n\n\t\t\tconst followingListItemPath = SlatePath.next(containingListItemPath)\n\t\t\tconst hasFollowingListItem = SlateNode.has(editor, followingListItemPath)\n\n\t\t\tif (hasFollowingListItem) {\n\t\t\t\tconst followingListItemNode = SlateNode.get(editor, followingListItemPath)\n\t\t\t\tif (!isListItemElement(followingListItemNode)) {\n\t\t\t\t\t// This shouldn't really happen. It's more of a sanity check.\n\t\t\t\t\treturn insertBreak()\n\t\t\t\t}\n\t\t\t\tif (containingListItemPath[containingListItemPath.length - 1] === 0) {\n\t\t\t\t\t// We're at the beginning of a list\n\t\t\t\t\tEditor.withoutNormalizing(editor, () => {\n\t\t\t\t\t\t// Remove the trailing empty listItem\n\t\t\t\t\t\tTransforms.removeNodes(editor, { at: containingListItemPath })\n\t\t\t\t\t\tTransforms.insertNodes(editor, editor.createDefaultElement([{ text: '' }]), { at: containingListPath, select: true })\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\t// We're in the middle of a list.\n\t\t\t\t\tEditor.withoutNormalizing(editor, () => {\n\t\t\t\t\t\tTransforms.removeNodes(editor, { at: containingListItemPath })\n\t\t\t\t\t\tTransforms.splitNodes(editor, { at: containingListItemPath })\n\t\t\t\t\t\tconst afterListParent = SlatePath.next(containingListPath)\n\t\t\t\t\t\tTransforms.insertNodes(editor, editor.createDefaultElement([{ text: '' }]), { at: afterListParent, select: true })\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// We're at the end of a list.\n\t\t\t\tEditor.withoutNormalizing(editor, () => {\n\t\t\t\t\tconst afterListParent = SlatePath.next(containingListPath)\n\t\t\t\t\t// Remove the trailing empty listItem\n\t\t\t\t\tTransforms.removeNodes(editor, { at: containingListItemPath })\n\t\t\t\t\tTransforms.insertNodes(editor, editor.createDefaultElement([{ text: '' }]), { at: afterListParent, select: true })\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\t\tonKeyDown: event => {\n\t\t\t// TODO this should also work for expanded selections\n\t\t\tif (\n\t\t\t\t(event.key !== 'Tab' && event.key !== 'Enter')\n\t\t\t\t|| !editor.selection\n\t\t\t\t|| !SlateRange.isCollapsed(editor.selection)\n\t\t\t) {\n\t\t\t\treturn onKeyDown(event)\n\t\t\t}\n\t\t\tconst selection = editor.selection\n\t\t\tconst closestBlockEntry = ContemberEditor.closestBlockEntry(editor, { at: selection.focus })\n\n\t\t\tif (closestBlockEntry === undefined) {\n\t\t\t\treturn onKeyDown(event)\n\t\t\t}\n\t\t\tlet [closestBlockElement, closestBlockPath] = closestBlockEntry\n\t\t\tif (!SlateElement.isElement(closestBlockElement)) {\n\t\t\t\treturn onKeyDown(event)\n\t\t\t}\n\n\t\t\tif (event.key === 'Tab') {\n\t\t\t\tif (editor.isDefaultElement(closestBlockElement)) {\n\t\t\t\t\t;[closestBlockElement, closestBlockPath] = Editor.parent(editor, closestBlockPath)\n\t\t\t\t}\n\t\t\t\tif (!isListItemElement(closestBlockElement)) {\n\t\t\t\t\treturn onKeyDown(event)\n\t\t\t\t}\n\t\t\t\tconst succeeded = event.shiftKey\n\t\t\t\t\t? dedentListItem(editor, closestBlockElement, closestBlockPath)\n\t\t\t\t\t: indentListItem(editor, closestBlockElement, closestBlockPath)\n\n\t\t\t\tif (succeeded) {\n\t\t\t\t\treturn event.preventDefault()\n\t\t\t\t}\n\t\t\t} else if (event.key === 'Enter' && event.shiftKey) {\n\t\t\t\tif (editor.isDefaultElement(closestBlockElement)) {\n\t\t\t\t\tconst [listItem] = Editor.parent(editor, closestBlockPath)\n\t\t\t\t\tif (!isListItemElement(listItem)) {\n\t\t\t\t\t\treturn onKeyDown(event)\n\t\t\t\t\t}\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\treturn Transforms.splitNodes(editor, {\n\t\t\t\t\t\talways: true,\n\t\t\t\t\t\tat: selection.focus,\n\t\t\t\t\t\tmatch: node => SlateElement.isElement(node) && Editor.isBlock(editor, node) && editor.isDefaultElement(node),\n\t\t\t\t\t})\n\t\t\t\t} else if (isListItemElement(closestBlockElement)) {\n\t\t\t\t\t// We want to create a newline but the closest block is the list item.\n\t\t\t\t\t// This should mean that it only contains inlines. Hence we wrap them in a default element\n\t\t\t\t\t// and then split it.\n\t\t\t\t\tconst [listItemStart, listItemEnd] = Editor.edges(editor, closestBlockPath)\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\treturn Editor.withoutNormalizing(editor, () => {\n\t\t\t\t\t\tTransforms.wrapNodes(editor, editor.createDefaultElement([]), {\n\t\t\t\t\t\t\tmatch: node => Text.isText(node) || (SlateElement.isElement(node) && editor.isInline(node)),\n\t\t\t\t\t\t\tat: {\n\t\t\t\t\t\t\t\tanchor: listItemStart,\n\t\t\t\t\t\t\t\tfocus: listItemEnd,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tconst relative = SlatePath.relative(selection.focus.path, closestBlockPath)\n\t\t\t\t\t\tTransforms.splitNodes(editor, {\n\t\t\t\t\t\t\t// The zero should be the newly created default element.\n\t\t\t\t\t\t\tat: {\n\t\t\t\t\t\t\t\tpath: [...closestBlockPath, 0, ...relative],\n\t\t\t\t\t\t\t\toffset: selection.focus.offset,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\talways: true,\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn onKeyDown(event)\n\t\t},\n\t})\n\n\treturn editor\n}\n"],"names":["listItemElementPlugin","orderedListElementPlugin","unorderedListElementPlugin","listHtmlDeserializerFactory","SlateRange","ContemberEditor","isListItemElement","SlatePath","SlateNode","Transforms","isListElement","Editor","SlateElement","dedentListItem","indentListItem","Text"],"mappings":"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"}
|