@payloadcms/richtext-lexical 4.0.0-internal.a0ef1b8 → 4.0.0-internal.a2d053c
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/LICENSE.md +1 -1
- package/dist/exports/client/Field-334JNLRF.js +2 -0
- package/dist/exports/client/Field-334JNLRF.js.map +7 -0
- package/dist/exports/client/{RelationshipComponent-YCPAKOL7.js → RelationshipComponent-TVK6I4W4.js} +2 -2
- package/dist/exports/client/chunk-BEKGION5.js +2 -0
- package/dist/exports/client/chunk-BEKGION5.js.map +7 -0
- package/dist/exports/client/{chunk-WSAPGI3Z.js → chunk-EA5BHQ2T.js} +1 -1
- package/dist/exports/client/{chunk-WSAPGI3Z.js.map → chunk-EA5BHQ2T.js.map} +1 -1
- package/dist/exports/client/chunk-FAJJXXCW.js +2 -0
- package/dist/exports/client/chunk-FAJJXXCW.js.map +7 -0
- package/dist/exports/client/{chunk-5VIL27GI.js → chunk-IYBYNEKX.js} +1 -1
- package/dist/exports/client/{chunk-5VIL27GI.js.map → chunk-IYBYNEKX.js.map} +1 -1
- package/dist/exports/client/chunk-SE5IITBK.js +2 -0
- package/dist/exports/client/chunk-SE5IITBK.js.map +7 -0
- package/dist/exports/client/component-QENB4QTS.js +2 -0
- package/dist/exports/client/component-QENB4QTS.js.map +7 -0
- package/dist/exports/client/componentInline-AU7IBNY7.js +2 -0
- package/dist/exports/client/index.d.ts +1 -3
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +23 -24
- package/dist/exports/client/index.js.map +4 -4
- package/dist/features/align/client/index.js.map +1 -1
- package/dist/features/align/client/toolbarAlignGroup.d.ts.map +1 -1
- package/dist/features/blockquote/client/index.js +2 -2
- package/dist/features/blockquote/client/index.js.map +1 -1
- package/dist/features/blockquote/server/index.js +2 -2
- package/dist/features/blockquote/server/index.js.map +1 -1
- package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
- package/dist/features/blocks/client/component/BlockReordering/index.d.ts +11 -0
- package/dist/features/blocks/client/component/BlockReordering/index.d.ts.map +1 -0
- package/dist/features/blocks/client/component/BlockReordering/index.js +18 -0
- package/dist/features/blocks/client/component/BlockReordering/index.js.map +1 -0
- package/dist/features/blocks/client/component/components/BlockCollapsible.js.map +1 -1
- package/dist/features/blocks/client/component/components/BlockEditButton.js.map +1 -1
- package/dist/features/blocks/client/component/components/BlockRemoveButton.js.map +1 -1
- package/dist/features/blocks/client/component/index.css +2 -2
- package/dist/features/blocks/client/component/index.d.ts +0 -6
- package/dist/features/blocks/client/component/index.d.ts.map +1 -1
- package/dist/features/blocks/client/component/index.js +199 -108
- package/dist/features/blocks/client/component/index.js.map +1 -1
- package/dist/features/blocks/client/component/useBlockReordering.d.ts +16 -0
- package/dist/features/blocks/client/component/useBlockReordering.d.ts.map +1 -0
- package/dist/features/blocks/client/component/useBlockReordering.js +178 -0
- package/dist/features/blocks/client/component/useBlockReordering.js.map +1 -0
- package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.d.ts.map +1 -1
- package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js.map +1 -1
- package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js.map +1 -1
- package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js.map +1 -1
- package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js.map +1 -1
- package/dist/features/blocks/client/componentInline/index.css +8 -9
- package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
- package/dist/features/blocks/client/componentInline/index.js +34 -31
- package/dist/features/blocks/client/componentInline/index.js.map +1 -1
- package/dist/features/blocks/client/getBlockImageComponent.d.ts +1 -1
- package/dist/features/blocks/client/getCachedFormStateIfDataMatches.d.ts +9 -0
- package/dist/features/blocks/client/getCachedFormStateIfDataMatches.d.ts.map +1 -0
- package/dist/features/blocks/client/getCachedFormStateIfDataMatches.js +95 -0
- package/dist/features/blocks/client/getCachedFormStateIfDataMatches.js.map +1 -0
- package/dist/features/blocks/client/index.d.ts.map +1 -1
- package/dist/features/blocks/client/index.js +4 -2
- package/dist/features/blocks/client/index.js.map +1 -1
- package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts +1 -1
- package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts.map +1 -1
- package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +1 -1
- package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
- package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts +1 -1
- package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts.map +1 -1
- package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +5 -2
- package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
- package/dist/features/blocks/client/markdown/markdownTransformer.d.ts +1 -2
- package/dist/features/blocks/client/markdown/markdownTransformer.d.ts.map +1 -1
- package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
- package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
- package/dist/features/blocks/client/nodes/BlocksNode.js +0 -10
- package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
- package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
- package/dist/features/blocks/client/plugin/index.js.map +1 -1
- package/dist/features/blocks/premade/CodeBlock/Component/Block.js +121 -78
- package/dist/features/blocks/premade/CodeBlock/Component/Block.js.map +1 -1
- package/dist/features/blocks/premade/CodeBlock/Component/Code.js +142 -87
- package/dist/features/blocks/premade/CodeBlock/Component/Code.js.map +1 -1
- package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.css +1 -1
- package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.css +2 -4
- package/dist/features/blocks/premade/CodeBlock/Component/index.css +5 -5
- package/dist/features/blocks/server/graphQLPopulationPromise.d.ts.map +1 -1
- package/dist/features/blocks/server/index.d.ts.map +1 -1
- package/dist/features/blocks/server/index.js +6 -8
- package/dist/features/blocks/server/index.js.map +1 -1
- package/dist/features/blocks/server/markdown/markdownTransformer.d.ts +1 -1
- package/dist/features/blocks/server/markdown/markdownTransformer.d.ts.map +1 -1
- package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
- package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
- package/dist/features/blocks/server/nodes/BlocksNode.js +1 -12
- package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
- package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
- package/dist/features/blocks/server/nodes/InlineBlocksNode.js +2 -2
- package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
- package/dist/features/blocks/server/schema.d.ts +2 -0
- package/dist/features/blocks/server/schema.d.ts.map +1 -1
- package/dist/features/blocks/server/schema.js +10 -11
- package/dist/features/blocks/server/schema.js.map +1 -1
- package/dist/features/blocks/server/validate.d.ts.map +1 -1
- package/dist/features/blocks/server/validate.js +1 -1
- package/dist/features/blocks/server/validate.js.map +1 -1
- package/dist/features/converters/htmlToLexical/index.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/async/converters/heading.js +1 -1
- package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/async/converters/list.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/async/converters/list.js +4 -3
- package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/async/converters/upload.js +3 -3
- package/dist/features/converters/lexicalToHtml/async/converters/upload.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/shared/cssColors.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js +3 -2
- package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/converters/heading.js +1 -1
- package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/converters/list.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/converters/list.js +4 -3
- package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/converters/upload.js +3 -3
- package/dist/features/converters/lexicalToHtml/sync/converters/upload.js.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/types.d.ts.map +1 -1
- package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/heading.d.ts.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/heading.js +2 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/list.d.ts.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/list.js +2 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/upload.d.ts.map +1 -1
- package/dist/features/converters/lexicalToJSX/converter/converters/upload.js +4 -5
- package/dist/features/converters/lexicalToJSX/converter/converters/upload.js.map +1 -1
- package/dist/features/converters/lexicalToMarkdown/index.d.ts.map +1 -1
- package/dist/features/converters/lexicalToMarkdown/index.js +1 -1
- package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
- package/dist/features/converters/markdownToLexical/index.d.ts.map +1 -1
- package/dist/features/converters/markdownToLexical/index.js +5 -2
- package/dist/features/converters/markdownToLexical/index.js.map +1 -1
- package/dist/features/converters/utilities/payloadPopulateFn.d.ts.map +1 -1
- package/dist/features/converters/utilities/payloadPopulateFn.js +4 -2
- package/dist/features/converters/utilities/payloadPopulateFn.js.map +1 -1
- package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
- package/dist/features/debug/jsxConverter/client/plugin/style.css +2 -2
- package/dist/features/debug/testRecorder/client/plugin/index.css +0 -1
- package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
- package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
- package/dist/features/format/bold/feature.client.js +1 -1
- package/dist/features/format/bold/feature.client.js.map +1 -1
- package/dist/features/format/bold/feature.server.d.ts.map +1 -1
- package/dist/features/format/bold/feature.server.js +1 -1
- package/dist/features/format/bold/feature.server.js.map +1 -1
- package/dist/features/format/inlineCode/feature.client.js +1 -1
- package/dist/features/format/inlineCode/feature.client.js.map +1 -1
- package/dist/features/format/inlineCode/feature.server.d.ts.map +1 -1
- package/dist/features/format/inlineCode/feature.server.js +1 -1
- package/dist/features/format/inlineCode/feature.server.js.map +1 -1
- package/dist/features/format/italic/feature.client.js +1 -1
- package/dist/features/format/italic/feature.client.js.map +1 -1
- package/dist/features/format/italic/feature.server.d.ts.map +1 -1
- package/dist/features/format/italic/feature.server.js +1 -1
- package/dist/features/format/italic/feature.server.js.map +1 -1
- package/dist/features/format/shared/toolbarFormatGroup.d.ts.map +1 -1
- package/dist/features/format/strikethrough/feature.client.js +1 -1
- package/dist/features/format/strikethrough/feature.client.js.map +1 -1
- package/dist/features/format/strikethrough/feature.server.d.ts.map +1 -1
- package/dist/features/format/strikethrough/feature.server.js +1 -1
- package/dist/features/format/strikethrough/feature.server.js.map +1 -1
- package/dist/features/heading/client/index.js +2 -2
- package/dist/features/heading/client/index.js.map +1 -1
- package/dist/features/heading/constants.d.ts +2 -0
- package/dist/features/heading/constants.d.ts.map +1 -0
- package/dist/features/heading/constants.js +2 -0
- package/dist/features/heading/constants.js.map +1 -0
- package/dist/features/heading/markdownTransformer.d.ts +2 -2
- package/dist/features/heading/markdownTransformer.d.ts.map +1 -1
- package/dist/features/heading/markdownTransformer.js +6 -19
- package/dist/features/heading/markdownTransformer.js.map +1 -1
- package/dist/features/heading/server/index.d.ts.map +1 -1
- package/dist/features/heading/server/index.js +7 -3
- package/dist/features/heading/server/index.js.map +1 -1
- package/dist/features/heading/server/schema.d.ts.map +1 -1
- package/dist/features/heading/server/validate.d.ts +6 -0
- package/dist/features/heading/server/validate.d.ts.map +1 -0
- package/dist/features/heading/server/validate.js +15 -0
- package/dist/features/heading/server/validate.js.map +1 -0
- package/dist/features/horizontalRule/client/index.js +2 -2
- package/dist/features/horizontalRule/client/index.js.map +1 -1
- package/dist/features/horizontalRule/client/markdownTransformer.d.ts +2 -2
- package/dist/features/horizontalRule/client/markdownTransformer.d.ts.map +1 -1
- package/dist/features/horizontalRule/client/markdownTransformer.js +1 -1
- package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
- package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts +12 -2
- package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
- package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +18 -1
- package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
- package/dist/features/horizontalRule/client/plugin/index.css +2 -2
- package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
- package/dist/features/horizontalRule/server/index.js +2 -2
- package/dist/features/horizontalRule/server/index.js.map +1 -1
- package/dist/features/horizontalRule/server/markdownTransformer.d.ts +2 -2
- package/dist/features/horizontalRule/server/markdownTransformer.d.ts.map +1 -1
- package/dist/features/horizontalRule/server/markdownTransformer.js +1 -1
- package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
- package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts +1 -1
- package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
- package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +3 -3
- package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
- package/dist/features/horizontalRule/server/schema.d.ts +1 -0
- package/dist/features/horizontalRule/server/schema.d.ts.map +1 -1
- package/dist/features/horizontalRule/server/schema.js +6 -5
- package/dist/features/horizontalRule/server/schema.js.map +1 -1
- package/dist/features/indent/client/IndentPlugin.d.ts.map +1 -1
- package/dist/features/indent/client/IndentPlugin.js +122 -1
- package/dist/features/indent/client/IndentPlugin.js.map +1 -1
- package/dist/features/indent/client/index.d.ts.map +1 -1
- package/dist/features/indent/client/index.js +0 -2
- package/dist/features/indent/client/index.js.map +1 -1
- package/dist/features/indent/client/toolbarIndentGroup.d.ts.map +1 -1
- package/dist/features/indent/server/i18n.d.ts.map +1 -1
- package/dist/features/indent/server/i18n.js +74 -37
- package/dist/features/indent/server/i18n.js.map +1 -1
- package/dist/features/link/client/index.js +2 -2
- package/dist/features/link/client/index.js.map +1 -1
- package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
- package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +20 -9
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
- package/dist/features/link/client/plugins/floatingLinkEditor/index.css +7 -13
- package/dist/features/link/client/plugins/link/index.js.map +1 -1
- package/dist/features/link/markdownTransformer.d.ts +4 -4
- package/dist/features/link/markdownTransformer.d.ts.map +1 -1
- package/dist/features/link/markdownTransformer.js +4 -4
- package/dist/features/link/markdownTransformer.js.map +1 -1
- package/dist/features/link/nodes/AutoLinkNode.d.ts +1 -1
- package/dist/features/link/nodes/AutoLinkNode.d.ts.map +1 -1
- package/dist/features/link/nodes/AutoLinkNode.js +2 -10
- package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
- package/dist/features/link/nodes/LinkNode.d.ts +1 -1
- package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
- package/dist/features/link/nodes/LinkNode.js +2 -15
- package/dist/features/link/nodes/LinkNode.js.map +1 -1
- package/dist/features/link/server/baseFields.d.ts.map +1 -1
- package/dist/features/link/server/baseFields.js.map +1 -1
- package/dist/features/link/server/graphQLPopulationPromise.d.ts.map +1 -1
- package/dist/features/link/server/index.js +4 -4
- package/dist/features/link/server/index.js.map +1 -1
- package/dist/features/link/server/schema.d.ts.map +1 -1
- package/dist/features/link/server/schema.js +4 -2
- package/dist/features/link/server/schema.js.map +1 -1
- package/dist/features/link/server/validate.d.ts.map +1 -1
- package/dist/features/link/server/validate.js +1 -1
- package/dist/features/link/server/validate.js.map +1 -1
- package/dist/features/lists/checklist/client/index.js +1 -1
- package/dist/features/lists/checklist/client/index.js.map +1 -1
- package/dist/features/lists/checklist/server/index.d.ts.map +1 -1
- package/dist/features/lists/checklist/server/index.js +6 -3
- package/dist/features/lists/checklist/server/index.js.map +1 -1
- package/dist/features/lists/orderedList/client/index.js +1 -1
- package/dist/features/lists/orderedList/client/index.js.map +1 -1
- package/dist/features/lists/orderedList/server/index.d.ts.map +1 -1
- package/dist/features/lists/orderedList/server/index.js +6 -3
- package/dist/features/lists/orderedList/server/index.js.map +1 -1
- package/dist/features/lists/shared/constants.d.ts +2 -0
- package/dist/features/lists/shared/constants.d.ts.map +1 -0
- package/dist/features/lists/shared/constants.js +2 -0
- package/dist/features/lists/shared/constants.js.map +1 -0
- package/dist/features/lists/shared/schema.d.ts.map +1 -1
- package/dist/features/lists/shared/schema.js.map +1 -1
- package/dist/features/lists/shared/validate.d.ts +5 -0
- package/dist/features/lists/shared/validate.d.ts.map +1 -0
- package/dist/features/lists/shared/validate.js +15 -0
- package/dist/features/lists/shared/validate.js.map +1 -0
- package/dist/features/lists/unorderedList/client/index.js +1 -1
- package/dist/features/lists/unorderedList/client/index.js.map +1 -1
- package/dist/features/lists/unorderedList/server/index.d.ts.map +1 -1
- package/dist/features/lists/unorderedList/server/index.js +6 -3
- package/dist/features/lists/unorderedList/server/index.js.map +1 -1
- package/dist/features/relationship/client/components/index.css +3 -6
- package/dist/features/relationship/client/drawer/index.d.ts.map +1 -1
- package/dist/features/relationship/client/drawer/index.js.map +1 -1
- package/dist/features/relationship/client/index.d.ts +2 -2
- package/dist/features/relationship/client/index.d.ts.map +1 -1
- package/dist/features/relationship/client/index.js.map +1 -1
- package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
- package/dist/features/relationship/client/nodes/RelationshipNode.js +0 -3
- package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
- package/dist/features/relationship/client/plugins/index.d.ts +2 -2
- package/dist/features/relationship/client/plugins/index.d.ts.map +1 -1
- package/dist/features/relationship/client/plugins/index.js +27 -31
- package/dist/features/relationship/client/plugins/index.js.map +1 -1
- package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts +2 -4
- package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts.map +1 -1
- package/dist/features/relationship/client/utils/useEnabledRelationships.js +53 -20
- package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
- package/dist/features/relationship/server/graphQLPopulationPromise.d.ts +2 -2
- package/dist/features/relationship/server/graphQLPopulationPromise.d.ts.map +1 -1
- package/dist/features/relationship/server/graphQLPopulationPromise.js +2 -2
- package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
- package/dist/features/relationship/server/index.d.ts +8 -1
- package/dist/features/relationship/server/index.d.ts.map +1 -1
- package/dist/features/relationship/server/index.js +28 -11
- package/dist/features/relationship/server/index.js.map +1 -1
- package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
- package/dist/features/relationship/server/nodes/RelationshipNode.js +1 -5
- package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
- package/dist/features/relationship/server/schema.d.ts +6 -5
- package/dist/features/relationship/server/schema.d.ts.map +1 -1
- package/dist/features/relationship/server/schema.js +31 -17
- package/dist/features/relationship/server/schema.js.map +1 -1
- package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts +1 -6
- package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts.map +1 -1
- package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js +1 -5
- package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js.map +1 -1
- package/dist/features/shared/toolbar/addDropdownGroup.d.ts.map +1 -1
- package/dist/features/shared/toolbar/featureButtonsGroup.d.ts.map +1 -1
- package/dist/features/shared/toolbar/textDropdownGroup.d.ts.map +1 -1
- package/dist/features/table/client/index.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/client/index.js +2 -2
- package/dist/features/table/client/index.js.map +1 -0
- package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts +8 -0
- package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts.map +1 -0
- package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js +19 -0
- package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js.map +1 -0
- package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.css +1 -2
- package/dist/features/table/client/plugins/TableActionMenuPlugin/index.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.js +17 -44
- package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js.map +1 -0
- package/dist/features/table/client/plugins/TableCellResizerPlugin/index.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.js +47 -24
- package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js.map +1 -0
- package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +1 -0
- package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -0
- package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.css +0 -3
- package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +1 -0
- package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.js.map +1 -0
- package/dist/features/table/client/plugins/TablePlugin/index.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.js +54 -18
- package/dist/features/table/client/plugins/TablePlugin/index.js.map +1 -0
- package/dist/features/table/client/utils/debounce.d.ts.map +1 -0
- package/dist/features/table/client/utils/debounce.js.map +1 -0
- package/dist/features/table/client/utils/useDebounce.d.ts.map +1 -0
- package/dist/features/table/client/utils/useDebounce.js.map +1 -0
- package/dist/features/table/markdownTransformer.d.ts +5 -0
- package/dist/features/table/markdownTransformer.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/markdownTransformer.js +6 -3
- package/dist/features/table/markdownTransformer.js.map +1 -0
- package/dist/features/table/server/index.d.ts +3 -0
- package/dist/features/table/server/index.d.ts.map +1 -0
- package/dist/features/{experimental_table → table}/server/index.js +6 -6
- package/dist/features/table/server/index.js.map +1 -0
- package/dist/features/table/server/schema.d.ts.map +1 -0
- package/dist/features/table/server/schema.js.map +1 -0
- package/dist/features/textState/defaultColors.js +1 -1
- package/dist/features/textState/defaultColors.js.map +1 -1
- package/dist/features/textState/feature.client.js +1 -1
- package/dist/features/textState/feature.client.js.map +1 -1
- package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts +8 -0
- package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts.map +1 -0
- package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js +80 -0
- package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js.map +1 -0
- package/dist/features/toolbars/fixed/client/Toolbar/index.css +80 -8
- package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
- package/dist/features/toolbars/fixed/client/Toolbar/index.js +145 -71
- package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
- package/dist/features/toolbars/inline/client/Toolbar/index.css +2 -14
- package/dist/features/toolbars/inline/client/Toolbar/index.d.ts.map +1 -1
- package/dist/features/toolbars/inline/client/Toolbar/index.js +84 -37
- package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
- package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
- package/dist/features/toolbars/shared/ToolbarButton/index.js +27 -2
- package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +199 -81
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/index.css +23 -25
- package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/index.js +22 -6
- package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
- package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.d.ts +5 -0
- package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.d.ts.map +1 -0
- package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js +109 -0
- package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js.map +1 -0
- package/dist/features/toolbars/shared/useToolbarStates.d.ts.map +1 -1
- package/dist/features/toolbars/shared/useToolbarStates.js +3 -1
- package/dist/features/toolbars/shared/useToolbarStates.js.map +1 -1
- package/dist/features/typesClient.d.ts +1 -1
- package/dist/features/typesClient.d.ts.map +1 -1
- package/dist/features/typesClient.js.map +1 -1
- package/dist/features/typesServer.d.ts +19 -14
- package/dist/features/typesServer.d.ts.map +1 -1
- package/dist/features/typesServer.js.map +1 -1
- package/dist/features/upload/client/component/index.css +9 -11
- package/dist/features/upload/client/component/index.js +2 -1
- package/dist/features/upload/client/component/index.js.map +1 -1
- package/dist/features/upload/client/drawer/index.d.ts.map +1 -1
- package/dist/features/upload/client/drawer/index.js.map +1 -1
- package/dist/features/upload/client/index.d.ts +3 -2
- package/dist/features/upload/client/index.d.ts.map +1 -1
- package/dist/features/upload/client/index.js.map +1 -1
- package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
- package/dist/features/upload/client/nodes/UploadNode.js +0 -7
- package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
- package/dist/features/upload/client/plugin/index.d.ts.map +1 -1
- package/dist/features/upload/client/plugin/index.js +53 -56
- package/dist/features/upload/client/plugin/index.js.map +1 -1
- package/dist/features/upload/server/graphQLPopulationPromise.d.ts +2 -2
- package/dist/features/upload/server/graphQLPopulationPromise.d.ts.map +1 -1
- package/dist/features/upload/server/graphQLPopulationPromise.js +1 -1
- package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
- package/dist/features/upload/server/index.d.ts +7 -3
- package/dist/features/upload/server/index.d.ts.map +1 -1
- package/dist/features/upload/server/index.js +22 -18
- package/dist/features/upload/server/index.js.map +1 -1
- package/dist/features/upload/server/markdownTransformer.d.ts +2 -2
- package/dist/features/upload/server/markdownTransformer.d.ts.map +1 -1
- package/dist/features/upload/server/markdownTransformer.js +1 -1
- package/dist/features/upload/server/markdownTransformer.js.map +1 -1
- package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
- package/dist/features/upload/server/nodes/UploadNode.js +1 -9
- package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
- package/dist/features/upload/server/schema.d.ts +6 -18
- package/dist/features/upload/server/schema.d.ts.map +1 -1
- package/dist/features/upload/server/schema.js +34 -16
- package/dist/features/upload/server/schema.js.map +1 -1
- package/dist/features/upload/server/validate.d.ts +2 -2
- package/dist/features/upload/server/validate.d.ts.map +1 -1
- package/dist/features/upload/server/validate.js +4 -1
- package/dist/features/upload/server/validate.js.map +1 -1
- package/dist/field/Diff/converters/listitem/index.d.ts.map +1 -1
- package/dist/field/Diff/converters/listitem/index.js +2 -1
- package/dist/field/Diff/converters/listitem/index.js.map +1 -1
- package/dist/field/Diff/converters/relationship/index.css +0 -1
- package/dist/field/Diff/converters/unknown/index.css +1 -2
- package/dist/field/Diff/converters/upload/index.css +0 -1
- package/dist/field/Diff/converters/upload/index.js.map +1 -1
- package/dist/field/Diff/index.css +0 -2
- package/dist/field/Diff/index.d.ts +3 -2
- package/dist/field/Diff/index.d.ts.map +1 -1
- package/dist/field/Diff/index.js +3 -2
- package/dist/field/Diff/index.js.map +1 -1
- package/dist/field/Field.d.ts.map +1 -1
- package/dist/field/Field.js +26 -16
- package/dist/field/Field.js.map +1 -1
- package/dist/field/RenderLexical/index.d.ts +3 -1
- package/dist/field/RenderLexical/index.d.ts.map +1 -1
- package/dist/field/RenderLexical/index.js +23 -23
- package/dist/field/RenderLexical/index.js.map +1 -1
- package/dist/field/ViewSelector.css +1 -1
- package/dist/field/ViewSelector.d.ts.map +1 -1
- package/dist/field/ViewSelector.js +13 -4
- package/dist/field/ViewSelector.js.map +1 -1
- package/dist/field/bundled.css +1 -1
- package/dist/field/index.css +7 -5
- package/dist/field/index.js.map +1 -1
- package/dist/field/rscEntry.d.ts +2 -2
- package/dist/field/rscEntry.d.ts.map +1 -1
- package/dist/field/rscEntry.js.map +1 -1
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +112 -0
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -54
- package/dist/index.js.map +1 -1
- package/dist/lexical/LexicalEditor.css +30 -19
- package/dist/lexical/LexicalEditor.d.ts.map +1 -1
- package/dist/lexical/LexicalEditor.js +62 -99
- package/dist/lexical/LexicalEditor.js.map +1 -1
- package/dist/lexical/LexicalProvider.d.ts.map +1 -1
- package/dist/lexical/LexicalProvider.js +7 -22
- package/dist/lexical/LexicalProvider.js.map +1 -1
- package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
- package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
- package/dist/lexical/config/server/loader.d.ts +1 -1
- package/dist/lexical/config/server/loader.d.ts.map +1 -1
- package/dist/lexical/config/server/loader.js +2 -2
- package/dist/lexical/config/server/loader.js.map +1 -1
- package/dist/lexical/config/server/sanitize.d.ts +1 -1
- package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
- package/dist/lexical/config/server/sanitize.js +2 -2
- package/dist/lexical/config/server/sanitize.js.map +1 -1
- package/dist/lexical/plugins/ClipboardPlugin/index.js.map +1 -1
- package/dist/lexical/plugins/DecoratorPlugin/index.css +1 -1
- package/dist/lexical/plugins/DecoratorPlugin/index.d.ts.map +1 -1
- package/dist/lexical/plugins/DecoratorPlugin/index.js +24 -21
- package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
- package/dist/lexical/plugins/InsertParagraphAtEnd/index.css +18 -25
- package/dist/lexical/plugins/InsertParagraphAtEnd/index.d.ts.map +1 -1
- package/dist/lexical/plugins/InsertParagraphAtEnd/index.js +27 -14
- package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
- package/dist/lexical/plugins/MarkdownShortcut/index.d.ts.map +1 -1
- package/dist/lexical/plugins/MarkdownShortcut/index.js +1 -1
- package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
- package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts.map +1 -1
- package/dist/lexical/plugins/NodeViewOverridePlugin/index.js +21 -0
- package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -1
- package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +0 -1
- package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
- package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +236 -108
- package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
- package/dist/lexical/plugins/SlashMenu/index.css +1 -7
- package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js.map +1 -1
- package/dist/lexical/plugins/TextPlugin/index.js.map +1 -1
- package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.css +2 -1
- package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +2 -2
- package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +21 -3
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +140 -38
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.d.ts +7 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.d.ts.map +1 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.js +15 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.js.map +1 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.d.ts +7 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.d.ts.map +1 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js +62 -0
- package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js.map +1 -0
- package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.d.ts.map +1 -1
- package/dist/lexical/plugins/handles/utils/setHandlePosition.d.ts.map +1 -1
- package/dist/lexical/plugins/handles/utils/setHandlePosition.js +2 -0
- package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
- package/dist/lexical/theme/EditorTheme.css +18 -21
- package/dist/lexical/ui/ContentEditable.css +22 -17
- package/dist/lexical/ui/ContentEditable.d.ts +2 -1
- package/dist/lexical/ui/ContentEditable.d.ts.map +1 -1
- package/dist/lexical/ui/ContentEditable.js +32 -11
- package/dist/lexical/ui/ContentEditable.js.map +1 -1
- package/dist/lexical/ui/icons/H3/index.d.ts.map +1 -1
- package/dist/lexical/ui/icons/H3/index.js +13 -6
- package/dist/lexical/ui/icons/H3/index.js.map +1 -1
- package/dist/lexical/ui/icons/H4/index.d.ts.map +1 -1
- package/dist/lexical/ui/icons/H4/index.js +13 -6
- package/dist/lexical/ui/icons/H4/index.js.map +1 -1
- package/dist/lexical/ui/icons/H5/index.d.ts.map +1 -1
- package/dist/lexical/ui/icons/H5/index.js +13 -6
- package/dist/lexical/ui/icons/H5/index.js.map +1 -1
- package/dist/lexical/ui/icons/H6/index.d.ts.map +1 -1
- package/dist/lexical/ui/icons/H6/index.js +13 -6
- package/dist/lexical/ui/icons/H6/index.js.map +1 -1
- package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts +17 -0
- package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts.map +1 -0
- package/dist/lexical/utils/markdown/convertFromMarkdownString.js +27 -0
- package/dist/lexical/utils/markdown/convertFromMarkdownString.js.map +1 -0
- package/dist/lexical/utils/markdown/createBlockNode.d.ts +2 -2
- package/dist/lexical/utils/markdown/createBlockNode.d.ts.map +1 -1
- package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
- package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts +25 -0
- package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts.map +1 -0
- package/dist/lexical/utils/markdown/normalizeMarkdown.js +91 -0
- package/dist/lexical/utils/markdown/normalizeMarkdown.js.map +1 -0
- package/dist/lexical/utils/nodeFormat.d.ts.map +1 -1
- package/dist/lexical/utils/nodeFormat.js +0 -2
- package/dist/lexical/utils/nodeFormat.js.map +1 -1
- package/dist/lexical/utils/point.d.ts.map +1 -1
- package/dist/lexical/utils/rect.d.ts.map +1 -1
- package/dist/lexical/utils/url.d.ts.map +1 -1
- package/dist/lexical/utils/url.js +1 -1
- package/dist/lexical/utils/url.js.map +1 -1
- package/dist/lexical-proxy/@lexical-markdown.d.ts +1 -1
- package/dist/lexical-proxy/@lexical-markdown.d.ts.map +1 -1
- package/dist/lexical-proxy/@lexical-markdown.js +1 -1
- package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
- package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js +2 -0
- package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js +2 -0
- package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactExtension.js +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactExtension.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js +2 -0
- package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js +2 -0
- package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts.map +1 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js +2 -0
- package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js.map +1 -0
- package/dist/populateGraphQL/populate.js.map +1 -1
- package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts.map +1 -1
- package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.d.ts.map +1 -1
- package/dist/presets/llmInstructions.d.ts +2 -0
- package/dist/presets/llmInstructions.d.ts.map +1 -0
- package/dist/presets/llmInstructions.js +13 -0
- package/dist/presets/llmInstructions.js.map +1 -0
- package/dist/types/builtInNodes.d.ts +1 -1
- package/dist/types/builtInNodes.d.ts.map +1 -1
- package/dist/types/builtInNodes.js +8 -3
- package/dist/types/builtInNodes.js.map +1 -1
- package/dist/types/index.d.ts +4 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/jsonSchemaHelpers.d.ts +5 -1
- package/dist/types/jsonSchemaHelpers.d.ts.map +1 -1
- package/dist/types/jsonSchemaHelpers.js +7 -2
- package/dist/types/jsonSchemaHelpers.js.map +1 -1
- package/dist/types/nodeTypes.d.ts +6 -1
- package/dist/types/nodeTypes.d.ts.map +1 -1
- package/dist/types/nodeTypes.js.map +1 -1
- package/dist/types/schema.d.ts.map +1 -1
- package/dist/types/schema.js +12 -5
- package/dist/types/schema.js.map +1 -1
- package/dist/utilities/applyBaseFilterToFields.d.ts.map +1 -1
- package/dist/utilities/applyBaseFilterToFields.js +1 -2
- package/dist/utilities/applyBaseFilterToFields.js.map +1 -1
- package/dist/utilities/buildEditorState.d.ts.map +1 -1
- package/dist/utilities/buildEditorState.js.map +1 -1
- package/dist/utilities/buildInitialState.d.ts +3 -2
- package/dist/utilities/buildInitialState.d.ts.map +1 -1
- package/dist/utilities/buildInitialState.js +1 -0
- package/dist/utilities/buildInitialState.js.map +1 -1
- package/dist/utilities/createServerFeature.d.ts +1 -1
- package/dist/utilities/createServerFeature.d.ts.map +1 -1
- package/dist/utilities/createServerFeature.js +2 -2
- package/dist/utilities/createServerFeature.js.map +1 -1
- package/dist/utilities/editorConfigFactory.d.ts +6 -6
- package/dist/utilities/editorConfigFactory.d.ts.map +1 -1
- package/dist/utilities/editorConfigFactory.js +9 -9
- package/dist/utilities/editorConfigFactory.js.map +1 -1
- package/dist/utilities/fieldsDrawer/Drawer.js +36 -36
- package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
- package/dist/utilities/fieldsDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/utilities/fieldsDrawer/DrawerContent.js +6 -9
- package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
- package/dist/utilities/fieldsDrawer/index.css +4 -4
- package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts +1 -1
- package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts.map +1 -1
- package/dist/utilities/fieldsDrawer/useDrawerSubmit.js.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.d.ts.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalDrawer.d.ts.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalDrawer.js.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalListDrawer.d.ts.map +1 -1
- package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js.map +1 -1
- package/dist/utilities/generateImportMap.d.ts +3 -3
- package/dist/utilities/generateImportMap.d.ts.map +1 -1
- package/dist/utilities/generateImportMap.js +3 -7
- package/dist/utilities/generateImportMap.js.map +1 -1
- package/dist/utilities/generateSchemaMap.d.ts +1 -1
- package/dist/utilities/generateSchemaMap.d.ts.map +1 -1
- package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts +2 -2
- package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts.map +1 -1
- package/dist/utilities/getDefaultSanitizedEditorConfig.js +6 -17
- package/dist/utilities/getDefaultSanitizedEditorConfig.js.map +1 -1
- package/dist/utilities/initLexicalFeatures.d.ts.map +1 -1
- package/dist/utilities/initLexicalFeatures.js +38 -4
- package/dist/utilities/initLexicalFeatures.js.map +1 -1
- package/dist/utilities/recurseNodeTree.d.ts.map +1 -1
- package/dist/utilities/upgradeLexicalData/index.js +6 -3
- package/dist/utilities/upgradeLexicalData/index.js.map +1 -1
- package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts.map +1 -1
- package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js +1 -1
- package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
- package/dist/utilities/useLexicalFeature.d.ts.map +1 -1
- package/dist/utilities/useLexicalFeature.js +15 -6
- package/dist/utilities/useLexicalFeature.js.map +1 -1
- package/dist/utilities/useRunDeprioritized.js.map +1 -1
- package/dist/validate/hasText.d.ts +2 -2
- package/dist/validate/hasText.d.ts.map +1 -1
- package/dist/validate/hasText.js.map +1 -1
- package/dist/validate/index.d.ts +1 -1
- package/dist/validate/index.d.ts.map +1 -1
- package/package.json +124 -59
- package/dist/@types/assets.d.js +0 -2
- package/dist/@types/assets.d.js.map +0 -1
- package/dist/dependencyChecker.spec.js +0 -16
- package/dist/dependencyChecker.spec.js.map +0 -1
- package/dist/exports/client/Field-VYBSMSRY.js +0 -2
- package/dist/exports/client/Field-VYBSMSRY.js.map +0 -7
- package/dist/exports/client/bundled.css +0 -1
- package/dist/exports/client/chunk-LH634DPU.js +0 -12
- package/dist/exports/client/chunk-LH634DPU.js.map +0 -7
- package/dist/exports/client/chunk-UD4DQ4AK.js +0 -2
- package/dist/exports/client/chunk-UD4DQ4AK.js.map +0 -7
- package/dist/exports/client/chunk-ZYXHC5CY.js +0 -2
- package/dist/exports/client/chunk-ZYXHC5CY.js.map +0 -7
- package/dist/exports/client/component-PHZQBOJE.js +0 -2
- package/dist/exports/client/component-PHZQBOJE.js.map +0 -7
- package/dist/exports/client/componentInline-R3EPNYWF.js +0 -2
- package/dist/exports/server/rsc.browser.d.ts +0 -11
- package/dist/exports/server/rsc.browser.d.ts.map +0 -1
- package/dist/exports/server/rsc.browser.js +0 -10
- package/dist/exports/server/rsc.browser.js.map +0 -1
- package/dist/features/blockquote/markdownTransformer.d.ts +0 -3
- package/dist/features/blockquote/markdownTransformer.d.ts.map +0 -1
- package/dist/features/blockquote/markdownTransformer.js +0 -33
- package/dist/features/blockquote/markdownTransformer.js.map +0 -1
- package/dist/features/blocks/client/component/removeEmptyArrayValues.d.ts +0 -11
- package/dist/features/blocks/client/component/removeEmptyArrayValues.d.ts.map +0 -1
- package/dist/features/blocks/client/component/removeEmptyArrayValues.js +0 -20
- package/dist/features/blocks/client/component/removeEmptyArrayValues.js.map +0 -1
- package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js +0 -180
- package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +0 -1
- package/dist/features/experimental_table/client/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/index.js.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +0 -1
- package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.js.map +0 -1
- package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts.map +0 -1
- package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +0 -1
- package/dist/features/experimental_table/client/utils/debounce.d.ts.map +0 -1
- package/dist/features/experimental_table/client/utils/debounce.js.map +0 -1
- package/dist/features/experimental_table/client/utils/useDebounce.d.ts.map +0 -1
- package/dist/features/experimental_table/client/utils/useDebounce.js.map +0 -1
- package/dist/features/experimental_table/markdownTransformer.d.ts +0 -5
- package/dist/features/experimental_table/markdownTransformer.d.ts.map +0 -1
- package/dist/features/experimental_table/markdownTransformer.js.map +0 -1
- package/dist/features/experimental_table/server/index.d.ts +0 -3
- package/dist/features/experimental_table/server/index.d.ts.map +0 -1
- package/dist/features/experimental_table/server/index.js.map +0 -1
- package/dist/features/experimental_table/server/schema.d.ts.map +0 -1
- package/dist/features/experimental_table/server/schema.js.map +0 -1
- package/dist/features/format/bold/markdownTransformers.d.ts +0 -6
- package/dist/features/format/bold/markdownTransformers.d.ts.map +0 -1
- package/dist/features/format/bold/markdownTransformers.js +0 -23
- package/dist/features/format/bold/markdownTransformers.js.map +0 -1
- package/dist/features/format/inlineCode/markdownTransformers.d.ts +0 -3
- package/dist/features/format/inlineCode/markdownTransformers.d.ts.map +0 -1
- package/dist/features/format/inlineCode/markdownTransformers.js +0 -6
- package/dist/features/format/inlineCode/markdownTransformers.js.map +0 -1
- package/dist/features/format/italic/markdownTransformers.d.ts +0 -4
- package/dist/features/format/italic/markdownTransformers.d.ts.map +0 -1
- package/dist/features/format/italic/markdownTransformers.js +0 -12
- package/dist/features/format/italic/markdownTransformers.js.map +0 -1
- package/dist/features/format/strikethrough/markdownTransformers.d.ts +0 -3
- package/dist/features/format/strikethrough/markdownTransformers.d.ts.map +0 -1
- package/dist/features/format/strikethrough/markdownTransformers.js +0 -6
- package/dist/features/format/strikethrough/markdownTransformers.js.map +0 -1
- package/dist/features/link/markdownTransformer.spec.js +0 -195
- package/dist/features/link/markdownTransformer.spec.js.map +0 -1
- package/dist/features/lists/checklist/markdownTransformers.d.ts +0 -3
- package/dist/features/lists/checklist/markdownTransformers.d.ts.map +0 -1
- package/dist/features/lists/checklist/markdownTransformers.js +0 -12
- package/dist/features/lists/checklist/markdownTransformers.js.map +0 -1
- package/dist/features/lists/orderedList/markdownTransformer.d.ts +0 -3
- package/dist/features/lists/orderedList/markdownTransformer.d.ts.map +0 -1
- package/dist/features/lists/orderedList/markdownTransformer.js +0 -12
- package/dist/features/lists/orderedList/markdownTransformer.js.map +0 -1
- package/dist/features/lists/shared/markdown.d.ts +0 -6
- package/dist/features/lists/shared/markdown.d.ts.map +0 -1
- package/dist/features/lists/shared/markdown.js +0 -57
- package/dist/features/lists/shared/markdown.js.map +0 -1
- package/dist/features/lists/unorderedList/markdownTransformer.d.ts +0 -3
- package/dist/features/lists/unorderedList/markdownTransformer.d.ts.map +0 -1
- package/dist/features/lists/unorderedList/markdownTransformer.js +0 -12
- package/dist/features/lists/unorderedList/markdownTransformer.js.map +0 -1
- package/dist/field/clientEntry.d.ts +0 -29
- package/dist/field/clientEntry.d.ts.map +0 -1
- package/dist/field/clientEntry.js +0 -86
- package/dist/field/clientEntry.js.map +0 -1
- package/dist/lexical/utils/guard.d.ts +0 -5
- package/dist/lexical/utils/guard.d.ts.map +0 -1
- package/dist/lexical/utils/guard.js +0 -9
- package/dist/lexical/utils/guard.js.map +0 -1
- package/dist/lexical/utils/url.spec.js +0 -114
- package/dist/lexical/utils/url.spec.js.map +0 -1
- package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts +0 -2
- package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts.map +0 -1
- package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +0 -2
- package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownExport.d.ts +0 -14
- package/dist/packages/@lexical/markdown/MarkdownExport.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownExport.js +0 -213
- package/dist/packages/@lexical/markdown/MarkdownExport.js.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownImport.d.ts +0 -19
- package/dist/packages/@lexical/markdown/MarkdownImport.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownImport.js +0 -198
- package/dist/packages/@lexical/markdown/MarkdownImport.js.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts +0 -11
- package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +0 -304
- package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts +0 -147
- package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/MarkdownTransformers.js +0 -268
- package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +0 -1
- package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts +0 -22
- package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +0 -91
- package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +0 -1
- package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts +0 -21
- package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +0 -54
- package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +0 -1
- package/dist/packages/@lexical/markdown/importTextTransformers.d.ts +0 -18
- package/dist/packages/@lexical/markdown/importTextTransformers.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/importTextTransformers.js +0 -54
- package/dist/packages/@lexical/markdown/importTextTransformers.js.map +0 -1
- package/dist/packages/@lexical/markdown/index.d.ts +0 -29
- package/dist/packages/@lexical/markdown/index.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/index.js +0 -39
- package/dist/packages/@lexical/markdown/index.js.map +0 -1
- package/dist/packages/@lexical/markdown/utils.d.ts +0 -34
- package/dist/packages/@lexical/markdown/utils.d.ts.map +0 -1
- package/dist/packages/@lexical/markdown/utils.js +0 -267
- package/dist/packages/@lexical/markdown/utils.js.map +0 -1
- package/dist/utilities/jsx/jsx.spec.js +0 -178
- package/dist/utilities/jsx/jsx.spec.js.map +0 -1
- /package/dist/exports/client/{RelationshipComponent-YCPAKOL7.js.map → RelationshipComponent-TVK6I4W4.js.map} +0 -0
- /package/dist/exports/client/{componentInline-R3EPNYWF.js.map → componentInline-AU7IBNY7.js.map} +0 -0
- /package/dist/features/{experimental_table → table}/client/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.css +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.js +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.js +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.css +0 -0
- /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/utils/debounce.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/utils/debounce.js +0 -0
- /package/dist/features/{experimental_table → table}/client/utils/useDebounce.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/client/utils/useDebounce.js +0 -0
- /package/dist/features/{experimental_table → table}/server/schema.d.ts +0 -0
- /package/dist/features/{experimental_table → table}/server/schema.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$createParagraphNode","$createTextNode","$getRoot","getDOMSelection","React","useCallback","useEffect","useLayoutEffect","useRef","useState","IS_APPLE","copy","text","textArea","document","createElement","value","style","position","opacity","body","appendChild","focus","select","result","execCommand","console","log","error","removeChild","download","filename","a","setAttribute","encodeURIComponent","display","click","formatStep","step","formatOneStep","name","x","y","anchorPath","toString","anchorOffset","focusPath","focusOffset","formattedStep","count","join","isSelectAll","event","key","toLowerCase","metaKey","ctrlKey","sanitizeSelection","selection","anchorNode","focusNode","getPathFromNodeToEditor","node","rootElement","currentNode","path","undefined","unshift","Array","from","parentNode","childNodes","indexOf","keyPresses","Set","useTestRecorder","editor","steps","setSteps","isRecording","setIsRecording","setCurrentInnerHTML","templatedTest","setTemplatedTest","previousSelectionRef","skipNextSelectionChangeRef","preRef","getCurrentEditor","generateTestContent","getRootElement","browserSelection","_window","contains","map","pushStep","currentSteps","currentIndex","length","lastStep","slice","onKeyDown","has","onKeyUp","registerRootListener","prevRootElement","removeEventListener","addEventListener","current","scrollTo","scrollHeight","testContent","removeUpdateListener","registerUpdateListener","dirtyElements","dirtyLeaves","editorState","currentSelection","_selection","previousSelection","skipNextSelectionChange","size","innerHTML","toggleEditorSelection","currentEditor","update","root","clear","append","currentIsRecording","onSnapshotClick","onCopyClick","onDownloadClick","button","_jsx","className","id","onClick","e","preventDefault","title","type","output","_jsxs","ref","TestRecorderPlugin","$","testRecorderButton","testRecorderOutput","t0","Fragment","children"],"sources":["../../../../../../src/features/debug/testRecorder/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport type { BaseSelection, LexicalEditor } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $createParagraphNode, $createTextNode, $getRoot, getDOMSelection } from 'lexical'\nimport * as React from 'react'\nimport { type JSX, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react'\n\nimport type { PluginComponent } from '../../../../typesClient.js'\n\nimport { IS_APPLE } from '../../../../../lexical/utils/environment.js'\nimport './index.css'\n\nconst copy = (text: null | string) => {\n const textArea = document.createElement('textarea')\n textArea.value = text || ''\n textArea.style.position = 'absolute'\n textArea.style.opacity = '0'\n document.body?.appendChild(textArea)\n textArea.focus()\n textArea.select()\n try {\n const result = document.execCommand('copy')\n // eslint-disable-next-line no-console\n console.log(result)\n } catch (error) {\n console.error(error)\n }\n document.body?.removeChild(textArea)\n}\n\nconst download = (filename: string, text: null | string) => {\n const a = document.createElement('a')\n a.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text || ''))\n a.setAttribute('download', filename)\n a.style.display = 'none'\n document.body?.appendChild(a)\n a.click()\n document.body?.removeChild(a)\n}\n\nconst formatStep = (step: Step) => {\n const formatOneStep = (name: string, value: Step['value']) => {\n switch (name) {\n case 'click': {\n return ` await page.mouse.click(${value.x}, ${value.y});`\n }\n case 'keydown': {\n return ` await page.keyboard.keydown('${value}');`\n }\n case 'keyup': {\n return ` await page.keyboard.keyup('${value}');`\n }\n case 'press': {\n return ` await page.keyboard.press('${value}');`\n }\n case 'selectAll': {\n return ` await selectAll(page);`\n }\n case 'snapshot': {\n return ` await assertHTMLSnapshot(page);\n await assertSelection(page, {\n anchorPath: [${value.anchorPath.toString()}],\n anchorOffset: ${value.anchorOffset},\n focusPath: [${value.focusPath.toString()}],\n focusOffset: ${value.focusOffset},\n });\n`\n }\n case 'type': {\n return ` await page.keyboard.type('${value}');`\n }\n default:\n return ``\n }\n }\n const formattedStep = formatOneStep(step.name, step.value)\n switch (step.count) {\n case 1:\n return formattedStep\n case 2:\n return [formattedStep, formattedStep].join(`\\n`)\n default:\n return ` await repeat(${step.count}, async () => {\n ${formattedStep}\n );`\n }\n}\n\nexport function isSelectAll(event: KeyboardEvent): boolean {\n return event.key.toLowerCase() === 'a' && (IS_APPLE ? event.metaKey : event.ctrlKey)\n}\n\n// stolen from LexicalSelection-test\nfunction sanitizeSelection(selection: Selection) {\n const { anchorNode, focusNode } = selection\n let { anchorOffset, focusOffset } = selection\n if (anchorOffset !== 0) {\n anchorOffset--\n }\n if (focusOffset !== 0) {\n focusOffset--\n }\n return { anchorNode, anchorOffset, focusNode, focusOffset }\n}\n\nfunction getPathFromNodeToEditor(node: Node, rootElement: HTMLElement | null) {\n let currentNode: Node | null | undefined = node\n const path: number[] = []\n while (currentNode !== rootElement) {\n if (currentNode !== null && currentNode !== undefined) {\n path.unshift(\n Array.from(currentNode?.parentNode?.childNodes ?? []).indexOf(currentNode as ChildNode),\n )\n }\n currentNode = currentNode?.parentNode\n }\n return path\n}\n\nconst keyPresses = new Set([\n 'ArrowDown',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'Backspace',\n 'Delete',\n 'Enter',\n 'Escape',\n])\n\ntype Step = {\n count: number\n name: string\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any\n}\n\ntype Steps = Step[]\n\nfunction useTestRecorder(editor: LexicalEditor): [JSX.Element, JSX.Element | null] {\n const [steps, setSteps] = useState<Steps>([])\n const [isRecording, setIsRecording] = useState(false)\n const [, setCurrentInnerHTML] = useState('')\n const [templatedTest, setTemplatedTest] = useState('')\n const previousSelectionRef = useRef<BaseSelection | null>(null)\n const skipNextSelectionChangeRef = useRef(false)\n const preRef = useRef<HTMLPreElement>(null)\n\n const getCurrentEditor = useCallback(() => {\n return editor\n }, [editor])\n\n const generateTestContent = useCallback(() => {\n const rootElement = editor.getRootElement()\n const browserSelection = getDOMSelection(editor._window)\n\n if (\n rootElement == null ||\n browserSelection == null ||\n browserSelection.anchorNode == null ||\n browserSelection.focusNode == null ||\n !rootElement.contains(browserSelection.anchorNode) ||\n !rootElement.contains(browserSelection.focusNode)\n ) {\n return null\n }\n\n return `\nimport {\n initializeE2E,\n assertHTMLSnapshot,\n assertSelection,\n repeat,\n} from '../utils';\nimport {selectAll} from '../keyboardShortcuts';\nimport { RangeSelection } from 'lexical';\nimport { NodeSelection } from 'lexical';\n\ndescribe('Test case', () => {\n initializeE2E((e2e) => {\n it('Should pass this test', async () => {\n const {page} = e2e;\n\n await page.focus('div[contenteditable=\"true\"]');\n${steps.map(formatStep).join(`\\n`)}\n });\n});\n `\n }, [editor, steps])\n\n // just a wrapper around inserting new actions so that we can\n // coalesce some actions like insertText/moveNativeSelection\n const pushStep = useCallback(\n (name: string, value: Step['value']) => {\n setSteps((currentSteps) => {\n // trying to group steps\n const currentIndex = steps.length - 1\n const lastStep = steps[currentIndex]\n if (lastStep) {\n if (lastStep.name === name) {\n if (name === 'type') {\n // for typing events we just append the text\n return [\n ...steps.slice(0, currentIndex),\n { ...lastStep, value: lastStep.value + value },\n ]\n } else {\n // for other events we bump the counter if their values are the same\n if (lastStep.value === value) {\n return [...steps.slice(0, currentIndex), { ...lastStep, count: lastStep.count + 1 }]\n }\n }\n }\n }\n // could not group, just append a new one\n return [...currentSteps, { name, count: 1, value }]\n })\n },\n [steps, setSteps],\n )\n\n useLayoutEffect(() => {\n const onKeyDown = (event: KeyboardEvent) => {\n if (!isRecording) {\n return\n }\n const key = event.key\n if (isSelectAll(event)) {\n pushStep('selectAll', '')\n } else if (keyPresses.has(key)) {\n pushStep('press', event.key)\n } else if ([...key].length > 1) {\n pushStep('keydown', event.key)\n } else {\n pushStep('type', event.key)\n }\n }\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!isRecording) {\n return\n }\n const key = event.key\n if (!keyPresses.has(key) && [...key].length > 1) {\n pushStep('keyup', event.key)\n }\n }\n\n return editor.registerRootListener(\n (rootElement: HTMLElement | null, prevRootElement: HTMLElement | null) => {\n if (prevRootElement !== null) {\n prevRootElement.removeEventListener('keydown', onKeyDown)\n prevRootElement.removeEventListener('keyup', onKeyUp)\n }\n if (rootElement !== null) {\n rootElement.addEventListener('keydown', onKeyDown)\n rootElement.addEventListener('keyup', onKeyUp)\n }\n },\n )\n }, [editor, isRecording, pushStep])\n\n useLayoutEffect(() => {\n if (preRef.current) {\n preRef.current.scrollTo(0, preRef.current.scrollHeight)\n }\n }, [generateTestContent])\n\n useEffect(() => {\n if (steps) {\n const testContent = generateTestContent()\n if (testContent !== null) {\n setTemplatedTest(testContent)\n }\n if (preRef.current) {\n preRef.current.scrollTo(0, preRef.current.scrollHeight)\n }\n }\n }, [generateTestContent, steps])\n\n useEffect(() => {\n const removeUpdateListener = editor.registerUpdateListener(\n ({ dirtyElements, dirtyLeaves, editorState }) => {\n if (!isRecording) {\n return\n }\n const currentSelection = editorState._selection\n const previousSelection = previousSelectionRef.current\n const skipNextSelectionChange = skipNextSelectionChangeRef.current\n if (previousSelection !== currentSelection) {\n if (dirtyLeaves.size === 0 && dirtyElements.size === 0 && !skipNextSelectionChange) {\n const browserSelection = getDOMSelection(editor._window)\n if (\n browserSelection &&\n (browserSelection.anchorNode == null || browserSelection.focusNode == null)\n ) {\n return\n }\n }\n previousSelectionRef.current = currentSelection\n }\n skipNextSelectionChangeRef.current = false\n const testContent = generateTestContent()\n if (testContent !== null) {\n setTemplatedTest(testContent)\n }\n },\n )\n return removeUpdateListener\n }, [editor, generateTestContent, isRecording, pushStep])\n\n // save innerHTML\n useEffect(() => {\n if (!isRecording) {\n return\n }\n const removeUpdateListener = editor.registerUpdateListener(() => {\n const rootElement = editor.getRootElement()\n if (rootElement !== null) {\n setCurrentInnerHTML(rootElement?.innerHTML)\n }\n })\n return removeUpdateListener\n }, [editor, isRecording])\n\n // clear editor and start recording\n const toggleEditorSelection = useCallback(\n (currentEditor: LexicalEditor) => {\n if (!isRecording) {\n currentEditor.update(() => {\n const root = $getRoot()\n root.clear()\n const text = $createTextNode()\n root.append($createParagraphNode().append(text))\n text.select()\n })\n setSteps([])\n }\n setIsRecording((currentIsRecording) => !currentIsRecording)\n },\n [isRecording],\n )\n\n const onSnapshotClick = useCallback(() => {\n if (!isRecording) {\n return\n }\n const browserSelection = getDOMSelection(editor._window)\n if (\n browserSelection === null ||\n browserSelection.anchorNode == null ||\n browserSelection.focusNode == null\n ) {\n return\n }\n const { anchorNode, anchorOffset, focusNode, focusOffset } = sanitizeSelection(browserSelection)\n const rootElement = getCurrentEditor().getRootElement()\n let anchorPath\n if (anchorNode !== null) {\n anchorPath = getPathFromNodeToEditor(anchorNode, rootElement)\n }\n let focusPath\n if (focusNode !== null) {\n focusPath = getPathFromNodeToEditor(focusNode, rootElement)\n }\n pushStep('snapshot', {\n anchorNode,\n anchorOffset,\n anchorPath,\n focusNode,\n focusOffset,\n focusPath,\n })\n }, [pushStep, isRecording, getCurrentEditor])\n\n const onCopyClick = useCallback(() => {\n copy(generateTestContent())\n }, [generateTestContent])\n\n const onDownloadClick = useCallback(() => {\n download('test.js', generateTestContent())\n }, [generateTestContent])\n\n const button = (\n <button\n className={`editor-dev-button ${isRecording ? 'active' : ''}`}\n id=\"test-recorder-button\"\n onClick={(e) => {\n toggleEditorSelection(getCurrentEditor())\n e.preventDefault()\n }}\n title={isRecording ? 'Disable test recorder' : 'Enable test recorder'}\n type=\"button\"\n >\n {isRecording ? 'Disable test recorder' : 'Enable test recorder'}\n </button>\n )\n const output = isRecording ? (\n <div className=\"test-recorder-output\">\n <div className=\"test-recorder-toolbar\">\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-snapshot\"\n onClick={(e) => {\n onSnapshotClick()\n e.preventDefault()\n }}\n title=\"Insert snapshot\"\n type=\"button\"\n >\n Insert Snapshot\n </button>\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-copy\"\n onClick={(e) => {\n onCopyClick()\n e.preventDefault()\n }}\n title=\"Copy to clipboard\"\n type=\"button\"\n >\n Copy\n </button>\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-download\"\n onClick={(e) => {\n onDownloadClick()\n e.preventDefault()\n }}\n title=\"Download as a file\"\n type=\"button\"\n >\n Download\n </button>\n </div>\n <pre id=\"test-recorder\" ref={preRef}>\n {templatedTest}\n </pre>\n </div>\n ) : null\n\n return [button, output]\n}\nexport const TestRecorderPlugin: PluginComponent<undefined> = () => {\n const [editor] = useLexicalComposerContext()\n const [testRecorderButton, testRecorderOutput] = useTestRecorder(editor)\n\n return (\n <React.Fragment>\n <p>HI</p>\n {testRecorderButton}\n {testRecorderOutput}\n <p>DONE</p>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$createParagraphNode","$createTextNode","$getRoot","getDOMSelection","React","useCallback","useEffect","useLayoutEffect","useRef","useState","IS_APPLE","copy","text","textArea","document","createElement","value","style","position","opacity","body","appendChild","focus","select","result","execCommand","console","log","error","removeChild","download","filename","a","setAttribute","encodeURIComponent","display","click","formatStep","step","formatOneStep","name","x","y","anchorPath","toString","anchorOffset","focusPath","focusOffset","formattedStep","count","join","isSelectAll","event","key","toLowerCase","metaKey","ctrlKey","sanitizeSelection","selection","anchorNode","focusNode","getPathFromNodeToEditor","node","rootElement","currentNode","path","undefined","unshift","Array","from","parentNode","childNodes","indexOf","keyPresses","Set","useTestRecorder","editor","steps","setSteps","isRecording","setIsRecording","setCurrentInnerHTML","templatedTest","setTemplatedTest","previousSelectionRef","skipNextSelectionChangeRef","preRef","getCurrentEditor","generateTestContent","getRootElement","browserSelection","_window","contains","map","pushStep","currentSteps","currentIndex","length","lastStep","slice","onKeyDown","has","onKeyUp","registerRootListener","prevRootElement","removeEventListener","addEventListener","current","scrollTo","scrollHeight","testContent","removeUpdateListener","registerUpdateListener","dirtyElements","dirtyLeaves","editorState","currentSelection","_selection","previousSelection","skipNextSelectionChange","size","innerHTML","toggleEditorSelection","currentEditor","update","root","clear","append","currentIsRecording","onSnapshotClick","onCopyClick","onDownloadClick","button","_jsx","className","id","onClick","e","preventDefault","title","type","output","_jsxs","ref","TestRecorderPlugin","$","testRecorderButton","testRecorderOutput","t0","Fragment","children"],"sources":["../../../../../../src/features/debug/testRecorder/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport type { BaseSelection, LexicalEditor } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $createParagraphNode, $createTextNode, $getRoot, getDOMSelection } from 'lexical'\nimport * as React from 'react'\nimport { type JSX, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react'\n\nimport type { PluginComponent } from '../../../../typesClient.js'\n\nimport { IS_APPLE } from '../../../../../lexical/utils/environment.js'\nimport './index.css'\n\nconst copy = (text: null | string) => {\n const textArea = document.createElement('textarea')\n textArea.value = text || ''\n textArea.style.position = 'absolute'\n textArea.style.opacity = '0'\n document.body?.appendChild(textArea)\n textArea.focus()\n textArea.select()\n try {\n const result = document.execCommand('copy')\n // eslint-disable-next-line no-console\n console.log(result)\n } catch (error) {\n console.error(error)\n }\n document.body?.removeChild(textArea)\n}\n\nconst download = (filename: string, text: null | string) => {\n const a = document.createElement('a')\n a.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text || ''))\n a.setAttribute('download', filename)\n a.style.display = 'none'\n document.body?.appendChild(a)\n a.click()\n document.body?.removeChild(a)\n}\n\nconst formatStep = (step: Step) => {\n const formatOneStep = (name: string, value: Step['value']) => {\n switch (name) {\n case 'click': {\n return ` await page.mouse.click(${value.x}, ${value.y});`\n }\n case 'keydown': {\n return ` await page.keyboard.keydown('${value}');`\n }\n case 'keyup': {\n return ` await page.keyboard.keyup('${value}');`\n }\n case 'press': {\n return ` await page.keyboard.press('${value}');`\n }\n case 'selectAll': {\n return ` await selectAll(page);`\n }\n case 'snapshot': {\n return ` await assertHTMLSnapshot(page);\n await assertSelection(page, {\n anchorPath: [${value.anchorPath.toString()}],\n anchorOffset: ${value.anchorOffset},\n focusPath: [${value.focusPath.toString()}],\n focusOffset: ${value.focusOffset},\n });\n`\n }\n case 'type': {\n return ` await page.keyboard.type('${value}');`\n }\n default:\n return ``\n }\n }\n const formattedStep = formatOneStep(step.name, step.value)\n switch (step.count) {\n case 1:\n return formattedStep\n case 2:\n return [formattedStep, formattedStep].join(`\\n`)\n default:\n return ` await repeat(${step.count}, async () => {\n ${formattedStep}\n );`\n }\n}\n\nexport function isSelectAll(event: KeyboardEvent): boolean {\n return event.key.toLowerCase() === 'a' && (IS_APPLE ? event.metaKey : event.ctrlKey)\n}\n\n// stolen from LexicalSelection-test\nfunction sanitizeSelection(selection: Selection) {\n const { anchorNode, focusNode } = selection\n let { anchorOffset, focusOffset } = selection\n if (anchorOffset !== 0) {\n anchorOffset--\n }\n if (focusOffset !== 0) {\n focusOffset--\n }\n return { anchorNode, anchorOffset, focusNode, focusOffset }\n}\n\nfunction getPathFromNodeToEditor(node: Node, rootElement: HTMLElement | null) {\n let currentNode: Node | null | undefined = node\n const path: number[] = []\n while (currentNode !== rootElement) {\n if (currentNode !== null && currentNode !== undefined) {\n path.unshift(\n Array.from(currentNode?.parentNode?.childNodes ?? []).indexOf(currentNode as ChildNode),\n )\n }\n currentNode = currentNode?.parentNode\n }\n return path\n}\n\nconst keyPresses = new Set([\n 'ArrowDown',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'Backspace',\n 'Delete',\n 'Enter',\n 'Escape',\n])\n\ntype Step = {\n count: number\n name: string\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any\n}\n\ntype Steps = Step[]\n\nfunction useTestRecorder(editor: LexicalEditor): [JSX.Element, JSX.Element | null] {\n const [steps, setSteps] = useState<Steps>([])\n const [isRecording, setIsRecording] = useState(false)\n const [, setCurrentInnerHTML] = useState('')\n const [templatedTest, setTemplatedTest] = useState('')\n const previousSelectionRef = useRef<BaseSelection | null>(null)\n const skipNextSelectionChangeRef = useRef(false)\n const preRef = useRef<HTMLPreElement>(null)\n\n const getCurrentEditor = useCallback(() => {\n return editor\n }, [editor])\n\n const generateTestContent = useCallback(() => {\n const rootElement = editor.getRootElement()\n const browserSelection = getDOMSelection(editor._window)\n\n if (\n rootElement == null ||\n browserSelection == null ||\n browserSelection.anchorNode == null ||\n browserSelection.focusNode == null ||\n !rootElement.contains(browserSelection.anchorNode) ||\n !rootElement.contains(browserSelection.focusNode)\n ) {\n return null\n }\n\n return `\nimport {\n initializeE2E,\n assertHTMLSnapshot,\n assertSelection,\n repeat,\n} from '../utils';\nimport {selectAll} from '../keyboardShortcuts';\nimport { RangeSelection } from 'lexical';\nimport { NodeSelection } from 'lexical';\n\ndescribe('Test case', () => {\n initializeE2E((e2e) => {\n it('Should pass this test', async () => {\n const {page} = e2e;\n\n await page.focus('div[contenteditable=\"true\"]');\n${steps.map(formatStep).join(`\\n`)}\n });\n});\n `\n }, [editor, steps])\n\n // just a wrapper around inserting new actions so that we can\n // coalesce some actions like insertText/moveNativeSelection\n const pushStep = useCallback(\n (name: string, value: Step['value']) => {\n setSteps((currentSteps) => {\n // trying to group steps\n const currentIndex = steps.length - 1\n const lastStep = steps[currentIndex]\n if (lastStep) {\n if (lastStep.name === name) {\n if (name === 'type') {\n // for typing events we just append the text\n return [\n ...steps.slice(0, currentIndex),\n { ...lastStep, value: lastStep.value + value },\n ]\n } else {\n // for other events we bump the counter if their values are the same\n if (lastStep.value === value) {\n return [...steps.slice(0, currentIndex), { ...lastStep, count: lastStep.count + 1 }]\n }\n }\n }\n }\n // could not group, just append a new one\n return [...currentSteps, { name, count: 1, value }]\n })\n },\n [steps, setSteps],\n )\n\n useLayoutEffect(() => {\n const onKeyDown = (event: KeyboardEvent) => {\n if (!isRecording) {\n return\n }\n const key = event.key\n if (isSelectAll(event)) {\n pushStep('selectAll', '')\n } else if (keyPresses.has(key)) {\n pushStep('press', event.key)\n } else if ([...key].length > 1) {\n pushStep('keydown', event.key)\n } else {\n pushStep('type', event.key)\n }\n }\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!isRecording) {\n return\n }\n const key = event.key\n if (!keyPresses.has(key) && [...key].length > 1) {\n pushStep('keyup', event.key)\n }\n }\n\n return editor.registerRootListener(\n (rootElement: HTMLElement | null, prevRootElement: HTMLElement | null) => {\n if (prevRootElement !== null) {\n prevRootElement.removeEventListener('keydown', onKeyDown)\n prevRootElement.removeEventListener('keyup', onKeyUp)\n }\n if (rootElement !== null) {\n rootElement.addEventListener('keydown', onKeyDown)\n rootElement.addEventListener('keyup', onKeyUp)\n }\n },\n )\n }, [editor, isRecording, pushStep])\n\n useLayoutEffect(() => {\n if (preRef.current) {\n preRef.current.scrollTo(0, preRef.current.scrollHeight)\n }\n }, [generateTestContent])\n\n useEffect(() => {\n if (steps) {\n const testContent = generateTestContent()\n if (testContent !== null) {\n setTemplatedTest(testContent)\n }\n if (preRef.current) {\n preRef.current.scrollTo(0, preRef.current.scrollHeight)\n }\n }\n }, [generateTestContent, steps])\n\n useEffect(() => {\n const removeUpdateListener = editor.registerUpdateListener(\n ({ dirtyElements, dirtyLeaves, editorState }) => {\n if (!isRecording) {\n return\n }\n const currentSelection = editorState._selection\n const previousSelection = previousSelectionRef.current\n const skipNextSelectionChange = skipNextSelectionChangeRef.current\n if (previousSelection !== currentSelection) {\n if (dirtyLeaves.size === 0 && dirtyElements.size === 0 && !skipNextSelectionChange) {\n const browserSelection = getDOMSelection(editor._window)\n if (\n browserSelection &&\n (browserSelection.anchorNode == null || browserSelection.focusNode == null)\n ) {\n return\n }\n }\n previousSelectionRef.current = currentSelection\n }\n skipNextSelectionChangeRef.current = false\n const testContent = generateTestContent()\n if (testContent !== null) {\n setTemplatedTest(testContent)\n }\n },\n )\n return removeUpdateListener\n }, [editor, generateTestContent, isRecording, pushStep])\n\n // save innerHTML\n useEffect(() => {\n if (!isRecording) {\n return\n }\n const removeUpdateListener = editor.registerUpdateListener(() => {\n const rootElement = editor.getRootElement()\n if (rootElement !== null) {\n setCurrentInnerHTML(rootElement?.innerHTML)\n }\n })\n return removeUpdateListener\n }, [editor, isRecording])\n\n // clear editor and start recording\n const toggleEditorSelection = useCallback(\n (currentEditor: LexicalEditor) => {\n if (!isRecording) {\n currentEditor.update(() => {\n const root = $getRoot()\n root.clear()\n const text = $createTextNode()\n root.append($createParagraphNode().append(text))\n text.select()\n })\n setSteps([])\n }\n setIsRecording((currentIsRecording) => !currentIsRecording)\n },\n [isRecording],\n )\n\n const onSnapshotClick = useCallback(() => {\n if (!isRecording) {\n return\n }\n const browserSelection = getDOMSelection(editor._window)\n if (\n browserSelection === null ||\n browserSelection.anchorNode == null ||\n browserSelection.focusNode == null\n ) {\n return\n }\n const { anchorNode, anchorOffset, focusNode, focusOffset } = sanitizeSelection(browserSelection)\n const rootElement = getCurrentEditor().getRootElement()\n let anchorPath\n if (anchorNode !== null) {\n anchorPath = getPathFromNodeToEditor(anchorNode, rootElement)\n }\n let focusPath\n if (focusNode !== null) {\n focusPath = getPathFromNodeToEditor(focusNode, rootElement)\n }\n pushStep('snapshot', {\n anchorNode,\n anchorOffset,\n anchorPath,\n focusNode,\n focusOffset,\n focusPath,\n })\n }, [pushStep, isRecording, getCurrentEditor])\n\n const onCopyClick = useCallback(() => {\n copy(generateTestContent())\n }, [generateTestContent])\n\n const onDownloadClick = useCallback(() => {\n download('test.js', generateTestContent())\n }, [generateTestContent])\n\n const button = (\n <button\n className={`editor-dev-button ${isRecording ? 'active' : ''}`}\n id=\"test-recorder-button\"\n onClick={(e) => {\n toggleEditorSelection(getCurrentEditor())\n e.preventDefault()\n }}\n title={isRecording ? 'Disable test recorder' : 'Enable test recorder'}\n type=\"button\"\n >\n {isRecording ? 'Disable test recorder' : 'Enable test recorder'}\n </button>\n )\n const output = isRecording ? (\n <div className=\"test-recorder-output\">\n <div className=\"test-recorder-toolbar\">\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-snapshot\"\n onClick={(e) => {\n onSnapshotClick()\n e.preventDefault()\n }}\n title=\"Insert snapshot\"\n type=\"button\"\n >\n Insert Snapshot\n </button>\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-copy\"\n onClick={(e) => {\n onCopyClick()\n e.preventDefault()\n }}\n title=\"Copy to clipboard\"\n type=\"button\"\n >\n Copy\n </button>\n <button\n className=\"test-recorder-button\"\n id=\"test-recorder-button-download\"\n onClick={(e) => {\n onDownloadClick()\n e.preventDefault()\n }}\n title=\"Download as a file\"\n type=\"button\"\n >\n Download\n </button>\n </div>\n <pre id=\"test-recorder\" ref={preRef}>\n {templatedTest}\n </pre>\n </div>\n ) : null\n\n return [button, output]\n}\nexport const TestRecorderPlugin: PluginComponent<undefined> = () => {\n const [editor] = useLexicalComposerContext()\n const [testRecorderButton, testRecorderOutput] = useTestRecorder(editor)\n\n return (\n <React.Fragment>\n <p>HI</p>\n {testRecorderButton}\n {testRecorderOutput}\n <p>DONE</p>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","TreeView","React","TreeViewPlugin","$","editor","t0","_jsx","timeTravelButtonClassName","timeTravelPanelButtonClassName","timeTravelPanelClassName","timeTravelPanelSliderClassName","treeTypeButtonClassName","viewClassName"],"sources":["../../../../../../src/features/debug/treeView/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { TreeView } from '@lexical/react/LexicalTreeView.js'\nimport * as React from 'react'\n\nimport type { PluginComponent } from '../../../../typesClient.js'\n\nimport './index.css'\n\nexport const TreeViewPlugin: PluginComponent<undefined> = () => {\n const [editor] = useLexicalComposerContext()\n return (\n <TreeView\n editor={editor}\n timeTravelButtonClassName=\"debug-timetravel-button\"\n timeTravelPanelButtonClassName=\"debug-timetravel-panel-button\"\n timeTravelPanelClassName=\"debug-timetravel-panel\"\n timeTravelPanelSliderClassName=\"debug-timetravel-panel-slider\"\n treeTypeButtonClassName=\"debug-treetype-button\"\n viewClassName=\"tree-view-output\"\n />\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,QAAQ,QAAQ;AACzB,YAAYC,KAAA,MAAW;AAIvB,OAAO;AAEP,OAAO,MAAMC,cAAA,GAA6CA,CAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EACxD,OAAAM,MAAA,IAAiBL,yBAAA;EAAA,IAAAM,EAAA;EAAA,IAAAF,CAAA,QAAAC,MAAA;IAEfC,EAAA,GAAAC,IAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","TreeView","React","TreeViewPlugin","$","editor","t0","_jsx","timeTravelButtonClassName","timeTravelPanelButtonClassName","timeTravelPanelClassName","timeTravelPanelSliderClassName","treeTypeButtonClassName","viewClassName"],"sources":["../../../../../../src/features/debug/treeView/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { TreeView } from '@lexical/react/LexicalTreeView.js'\nimport * as React from 'react'\n\nimport type { PluginComponent } from '../../../../typesClient.js'\n\nimport './index.css'\n\nexport const TreeViewPlugin: PluginComponent<undefined> = () => {\n const [editor] = useLexicalComposerContext()\n return (\n <TreeView\n editor={editor}\n timeTravelButtonClassName=\"debug-timetravel-button\"\n timeTravelPanelButtonClassName=\"debug-timetravel-panel-button\"\n timeTravelPanelClassName=\"debug-timetravel-panel\"\n timeTravelPanelSliderClassName=\"debug-timetravel-panel-slider\"\n treeTypeButtonClassName=\"debug-treetype-button\"\n viewClassName=\"tree-view-output\"\n />\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,QAAQ,QAAQ;AACzB,YAAYC,KAAA,MAAW;AAIvB,OAAO;AAEP,OAAO,MAAMC,cAAA,GAA6CA,CAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EACxD,OAAAM,MAAA,IAAiBL,yBAAA;EAAA,IAAAM,EAAA;EAAA,IAAAF,CAAA,QAAAC,MAAA;IAEfC,EAAA,GAAAC,IAAA,CAACN,QAAA;MAAAI,MAAA;MAAAG,yBAAA,EAE2B;MAAAC,8BAAA,EACK;MAAAC,wBAAA,EACN;MAAAC,8BAAA,EACM;MAAAC,uBAAA,EACP;MAAAC,aAAA,EACV;;;;;;;SAPhBP,E;CAUJ","ignoreList":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { BOLD_ITALIC_STAR, BOLD_ITALIC_UNDERSCORE, BOLD_STAR, BOLD_UNDERSCORE } from '@lexical/markdown';
|
|
3
4
|
import { $isTableSelection } from '@lexical/table';
|
|
4
5
|
import { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical';
|
|
5
6
|
import { BoldIcon } from '../../../lexical/ui/icons/Bold/index.js';
|
|
6
7
|
import { createClientFeature } from '../../../utilities/createClientFeature.js';
|
|
7
8
|
import { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js';
|
|
8
|
-
import { BOLD_ITALIC_STAR, BOLD_ITALIC_UNDERSCORE, BOLD_STAR, BOLD_UNDERSCORE } from './markdownTransformers.js';
|
|
9
9
|
const toolbarGroups = [toolbarFormatGroupWithItems([{
|
|
10
10
|
ChildComponent: BoldIcon,
|
|
11
11
|
isActive: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.client.js","names":["
|
|
1
|
+
{"version":3,"file":"feature.client.js","names":["BOLD_ITALIC_STAR","BOLD_ITALIC_UNDERSCORE","BOLD_STAR","BOLD_UNDERSCORE","$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","BoldIcon","createClientFeature","toolbarFormatGroupWithItems","toolbarGroups","ChildComponent","isActive","selection","hasFormat","key","onSelect","editor","dispatchCommand","order","BoldFeatureClient","featureProviderMap","markdownTransformers","get","push","enableFormats","toolbarFixed","groups","toolbarInline"],"sources":["../../../../src/features/format/bold/feature.client.tsx"],"sourcesContent":["'use client'\nimport {\n BOLD_ITALIC_STAR,\n BOLD_ITALIC_UNDERSCORE,\n BOLD_STAR,\n BOLD_UNDERSCORE,\n} from '@lexical/markdown'\nimport { $isTableSelection } from '@lexical/table'\nimport { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical'\n\nimport type { ToolbarGroup } from '../../toolbars/types.js'\n\nimport { BoldIcon } from '../../../lexical/ui/icons/Bold/index.js'\nimport { createClientFeature } from '../../../utilities/createClientFeature.js'\nimport { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js'\n\nconst toolbarGroups: ToolbarGroup[] = [\n toolbarFormatGroupWithItems([\n {\n ChildComponent: BoldIcon,\n isActive: ({ selection }) => {\n if ($isRangeSelection(selection) || $isTableSelection(selection)) {\n return selection.hasFormat('bold')\n }\n return false\n },\n key: 'bold',\n onSelect: ({ editor }) => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'bold')\n },\n order: 1,\n },\n ]),\n]\n\nexport const BoldFeatureClient = createClientFeature(({ featureProviderMap }) => {\n const markdownTransformers = [BOLD_STAR, BOLD_UNDERSCORE]\n if (featureProviderMap.get('italic')) {\n markdownTransformers.push(BOLD_ITALIC_UNDERSCORE, BOLD_ITALIC_STAR)\n }\n\n return {\n enableFormats: ['bold'],\n markdownTransformers,\n toolbarFixed: {\n groups: toolbarGroups,\n },\n toolbarInline: {\n groups: toolbarGroups,\n },\n }\n})\n"],"mappings":"AAAA;;AACA,SACEA,gBAAgB,EAChBC,sBAAsB,EACtBC,SAAS,EACTC,eAAe,QACV;AACP,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ;AAIvD,SAASC,QAAQ,QAAQ;AACzB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,2BAA2B,QAAQ;AAE5C,MAAMC,aAAA,GAAgC,CACpCD,2BAAA,CAA4B,CAC1B;EACEE,cAAA,EAAgBJ,QAAA;EAChBK,QAAA,EAAUA,CAAC;IAAEC;EAAS,CAAE;IACtB,IAAIR,iBAAA,CAAkBQ,SAAA,KAAcT,iBAAA,CAAkBS,SAAA,GAAY;MAChE,OAAOA,SAAA,CAAUC,SAAS,CAAC;IAC7B;IACA,OAAO;EACT;EACAC,GAAA,EAAK;EACLC,QAAA,EAAUA,CAAC;IAAEC;EAAM,CAAE;IACnBA,MAAA,CAAOC,eAAe,CAACZ,mBAAA,EAAqB;EAC9C;EACAa,KAAA,EAAO;AACT,EACD,EACF;AAED,OAAO,MAAMC,iBAAA,GAAoBZ,mBAAA,CAAoB,CAAC;EAAEa;AAAkB,CAAE;EAC1E,MAAMC,oBAAA,GAAuB,CAACpB,SAAA,EAAWC,eAAA,CAAgB;EACzD,IAAIkB,kBAAA,CAAmBE,GAAG,CAAC,WAAW;IACpCD,oBAAA,CAAqBE,IAAI,CAACvB,sBAAA,EAAwBD,gBAAA;EACpD;EAEA,OAAO;IACLyB,aAAA,EAAe,CAAC,OAAO;IACvBH,oBAAA;IACAI,YAAA,EAAc;MACZC,MAAA,EAAQjB;IACV;IACAkB,aAAA,EAAe;MACbD,MAAA,EAAQjB;IACV;EACF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/bold/feature.server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/bold/feature.server.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,WAAW,+FActB,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { BOLD_ITALIC_STAR, BOLD_ITALIC_UNDERSCORE, BOLD_STAR, BOLD_UNDERSCORE } from '@lexical/markdown';
|
|
1
2
|
import { createServerFeature } from '../../../utilities/createServerFeature.js';
|
|
2
|
-
import { BOLD_ITALIC_STAR, BOLD_ITALIC_UNDERSCORE, BOLD_STAR, BOLD_UNDERSCORE } from './markdownTransformers.js';
|
|
3
3
|
export const BoldFeature = createServerFeature({
|
|
4
4
|
dependenciesSoft: ['italic'],
|
|
5
5
|
feature: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.js","names":["
|
|
1
|
+
{"version":3,"file":"feature.server.js","names":["BOLD_ITALIC_STAR","BOLD_ITALIC_UNDERSCORE","BOLD_STAR","BOLD_UNDERSCORE","createServerFeature","BoldFeature","dependenciesSoft","feature","featureProviderMap","markdownTransformers","get","push","ClientFeature","key"],"sources":["../../../../src/features/format/bold/feature.server.ts"],"sourcesContent":["import {\n BOLD_ITALIC_STAR,\n BOLD_ITALIC_UNDERSCORE,\n BOLD_STAR,\n BOLD_UNDERSCORE,\n} from '@lexical/markdown'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\n\nexport const BoldFeature = createServerFeature({\n dependenciesSoft: ['italic'],\n feature: ({ featureProviderMap }) => {\n const markdownTransformers = [BOLD_STAR, BOLD_UNDERSCORE]\n if (featureProviderMap.get('italic')) {\n markdownTransformers.push(BOLD_ITALIC_UNDERSCORE, BOLD_ITALIC_STAR)\n }\n\n return {\n ClientFeature: '@payloadcms/richtext-lexical/client#BoldFeatureClient',\n markdownTransformers,\n }\n },\n key: 'bold',\n})\n"],"mappings":"AAAA,SACEA,gBAAgB,EAChBC,sBAAsB,EACtBC,SAAS,EACTC,eAAe,QACV;AAEP,SAASC,mBAAmB,QAAQ;AAEpC,OAAO,MAAMC,WAAA,GAAcD,mBAAA,CAAoB;EAC7CE,gBAAA,EAAkB,CAAC,SAAS;EAC5BC,OAAA,EAASA,CAAC;IAAEC;EAAkB,CAAE;IAC9B,MAAMC,oBAAA,GAAuB,CAACP,SAAA,EAAWC,eAAA,CAAgB;IACzD,IAAIK,kBAAA,CAAmBE,GAAG,CAAC,WAAW;MACpCD,oBAAA,CAAqBE,IAAI,CAACV,sBAAA,EAAwBD,gBAAA;IACpD;IAEA,OAAO;MACLY,aAAA,EAAe;MACfH;IACF;EACF;EACAI,GAAA,EAAK;AACP","ignoreList":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { INLINE_CODE } from '@lexical/markdown';
|
|
3
4
|
import { $isTableSelection } from '@lexical/table';
|
|
4
5
|
import { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical';
|
|
5
6
|
import { CodeIcon } from '../../../lexical/ui/icons/Code/index.js';
|
|
6
7
|
import { createClientFeature } from '../../../utilities/createClientFeature.js';
|
|
7
8
|
import { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js';
|
|
8
|
-
import { INLINE_CODE } from './markdownTransformers.js';
|
|
9
9
|
const toolbarGroups = [toolbarFormatGroupWithItems([{
|
|
10
10
|
ChildComponent: CodeIcon,
|
|
11
11
|
isActive: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.client.js","names":["$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","CodeIcon","createClientFeature","toolbarFormatGroupWithItems","
|
|
1
|
+
{"version":3,"file":"feature.client.js","names":["INLINE_CODE","$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","CodeIcon","createClientFeature","toolbarFormatGroupWithItems","toolbarGroups","ChildComponent","isActive","selection","hasFormat","key","onSelect","editor","dispatchCommand","order","InlineCodeFeatureClient","enableFormats","markdownTransformers","toolbarFixed","groups","toolbarInline"],"sources":["../../../../src/features/format/inlineCode/feature.client.tsx"],"sourcesContent":["'use client'\n\nimport { INLINE_CODE } from '@lexical/markdown'\nimport { $isTableSelection } from '@lexical/table'\nimport { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical'\n\nimport type { ToolbarGroup } from '../../toolbars/types.js'\n\nimport { CodeIcon } from '../../../lexical/ui/icons/Code/index.js'\nimport { createClientFeature } from '../../../utilities/createClientFeature.js'\nimport { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js'\n\nconst toolbarGroups: ToolbarGroup[] = [\n toolbarFormatGroupWithItems([\n {\n ChildComponent: CodeIcon,\n isActive: ({ selection }) => {\n if ($isRangeSelection(selection) || $isTableSelection(selection)) {\n return selection.hasFormat('code')\n }\n return false\n },\n key: 'inlineCode',\n onSelect: ({ editor }) => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'code')\n },\n order: 7,\n },\n ]),\n]\n\nexport const InlineCodeFeatureClient = createClientFeature({\n enableFormats: ['code'],\n markdownTransformers: [INLINE_CODE],\n toolbarFixed: {\n groups: toolbarGroups,\n },\n toolbarInline: {\n groups: toolbarGroups,\n },\n})\n"],"mappings":"AAAA;;AAEA,SAASA,WAAW,QAAQ;AAC5B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ;AAIvD,SAASC,QAAQ,QAAQ;AACzB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,2BAA2B,QAAQ;AAE5C,MAAMC,aAAA,GAAgC,CACpCD,2BAAA,CAA4B,CAC1B;EACEE,cAAA,EAAgBJ,QAAA;EAChBK,QAAA,EAAUA,CAAC;IAAEC;EAAS,CAAE;IACtB,IAAIR,iBAAA,CAAkBQ,SAAA,KAAcT,iBAAA,CAAkBS,SAAA,GAAY;MAChE,OAAOA,SAAA,CAAUC,SAAS,CAAC;IAC7B;IACA,OAAO;EACT;EACAC,GAAA,EAAK;EACLC,QAAA,EAAUA,CAAC;IAAEC;EAAM,CAAE;IACnBA,MAAA,CAAOC,eAAe,CAACZ,mBAAA,EAAqB;EAC9C;EACAa,KAAA,EAAO;AACT,EACD,EACF;AAED,OAAO,MAAMC,uBAAA,GAA0BZ,mBAAA,CAAoB;EACzDa,aAAA,EAAe,CAAC,OAAO;EACvBC,oBAAA,EAAsB,CAACnB,WAAA,CAAY;EACnCoB,YAAA,EAAc;IACZC,MAAA,EAAQd;EACV;EACAe,aAAA,EAAe;IACbD,MAAA,EAAQd;EACV;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/inlineCode/feature.server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/inlineCode/feature.server.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iBAAiB,+FAM5B,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { INLINE_CODE } from '@lexical/markdown';
|
|
1
2
|
import { createServerFeature } from '../../../utilities/createServerFeature.js';
|
|
2
|
-
import { INLINE_CODE } from './markdownTransformers.js';
|
|
3
3
|
export const InlineCodeFeature = createServerFeature({
|
|
4
4
|
feature: {
|
|
5
5
|
ClientFeature: '@payloadcms/richtext-lexical/client#InlineCodeFeatureClient',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.js","names":["
|
|
1
|
+
{"version":3,"file":"feature.server.js","names":["INLINE_CODE","createServerFeature","InlineCodeFeature","feature","ClientFeature","markdownTransformers","key"],"sources":["../../../../src/features/format/inlineCode/feature.server.ts"],"sourcesContent":["import { INLINE_CODE } from '@lexical/markdown'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\n\nexport const InlineCodeFeature = createServerFeature({\n feature: {\n ClientFeature: '@payloadcms/richtext-lexical/client#InlineCodeFeatureClient',\n markdownTransformers: [INLINE_CODE],\n },\n key: 'inlineCode',\n})\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ;AAE5B,SAASC,mBAAmB,QAAQ;AAEpC,OAAO,MAAMC,iBAAA,GAAoBD,mBAAA,CAAoB;EACnDE,OAAA,EAAS;IACPC,aAAA,EAAe;IACfC,oBAAA,EAAsB,CAACL,WAAA;EACzB;EACAM,GAAA,EAAK;AACP","ignoreList":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { ITALIC_STAR, ITALIC_UNDERSCORE } from '@lexical/markdown';
|
|
3
4
|
import { $isTableSelection } from '@lexical/table';
|
|
4
5
|
import { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical';
|
|
5
6
|
import { ItalicIcon } from '../../../lexical/ui/icons/Italic/index.js';
|
|
6
7
|
import { createClientFeature } from '../../../utilities/createClientFeature.js';
|
|
7
8
|
import { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js';
|
|
8
|
-
import { ITALIC_STAR, ITALIC_UNDERSCORE } from './markdownTransformers.js';
|
|
9
9
|
const toolbarGroups = [toolbarFormatGroupWithItems([{
|
|
10
10
|
ChildComponent: ItalicIcon,
|
|
11
11
|
isActive: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.client.js","names":["$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","ItalicIcon","createClientFeature","toolbarFormatGroupWithItems","
|
|
1
|
+
{"version":3,"file":"feature.client.js","names":["ITALIC_STAR","ITALIC_UNDERSCORE","$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","ItalicIcon","createClientFeature","toolbarFormatGroupWithItems","toolbarGroups","ChildComponent","isActive","selection","hasFormat","key","onSelect","editor","dispatchCommand","order","ItalicFeatureClient","enableFormats","markdownTransformers","toolbarFixed","groups","toolbarInline"],"sources":["../../../../src/features/format/italic/feature.client.tsx"],"sourcesContent":["'use client'\n\nimport { ITALIC_STAR, ITALIC_UNDERSCORE } from '@lexical/markdown'\nimport { $isTableSelection } from '@lexical/table'\nimport { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical'\n\nimport type { ToolbarGroup } from '../../toolbars/types.js'\n\nimport { ItalicIcon } from '../../../lexical/ui/icons/Italic/index.js'\nimport { createClientFeature } from '../../../utilities/createClientFeature.js'\nimport { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js'\n\nconst toolbarGroups: ToolbarGroup[] = [\n toolbarFormatGroupWithItems([\n {\n ChildComponent: ItalicIcon,\n isActive: ({ selection }) => {\n if ($isRangeSelection(selection) || $isTableSelection(selection)) {\n return selection.hasFormat('italic')\n }\n return false\n },\n key: 'italic',\n onSelect: ({ editor }) => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'italic')\n },\n order: 2,\n },\n ]),\n]\n\nexport const ItalicFeatureClient = createClientFeature({\n enableFormats: ['italic'],\n markdownTransformers: [ITALIC_STAR, ITALIC_UNDERSCORE],\n toolbarFixed: {\n groups: toolbarGroups,\n },\n toolbarInline: {\n groups: toolbarGroups,\n },\n})\n"],"mappings":"AAAA;;AAEA,SAASA,WAAW,EAAEC,iBAAiB,QAAQ;AAC/C,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ;AAIvD,SAASC,UAAU,QAAQ;AAC3B,SAASC,mBAAmB,QAAQ;AACpC,SAASC,2BAA2B,QAAQ;AAE5C,MAAMC,aAAA,GAAgC,CACpCD,2BAAA,CAA4B,CAC1B;EACEE,cAAA,EAAgBJ,UAAA;EAChBK,QAAA,EAAUA,CAAC;IAAEC;EAAS,CAAE;IACtB,IAAIR,iBAAA,CAAkBQ,SAAA,KAAcT,iBAAA,CAAkBS,SAAA,GAAY;MAChE,OAAOA,SAAA,CAAUC,SAAS,CAAC;IAC7B;IACA,OAAO;EACT;EACAC,GAAA,EAAK;EACLC,QAAA,EAAUA,CAAC;IAAEC;EAAM,CAAE;IACnBA,MAAA,CAAOC,eAAe,CAACZ,mBAAA,EAAqB;EAC9C;EACAa,KAAA,EAAO;AACT,EACD,EACF;AAED,OAAO,MAAMC,mBAAA,GAAsBZ,mBAAA,CAAoB;EACrDa,aAAA,EAAe,CAAC,SAAS;EACzBC,oBAAA,EAAsB,CAACpB,WAAA,EAAaC,iBAAA,CAAkB;EACtDoB,YAAA,EAAc;IACZC,MAAA,EAAQd;EACV;EACAe,aAAA,EAAe;IACbD,MAAA,EAAQd;EACV;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/italic/feature.server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/italic/feature.server.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa,+FAMxB,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { ITALIC_STAR, ITALIC_UNDERSCORE } from '@lexical/markdown';
|
|
1
2
|
import { createServerFeature } from '../../../utilities/createServerFeature.js';
|
|
2
|
-
import { ITALIC_STAR, ITALIC_UNDERSCORE } from './markdownTransformers.js';
|
|
3
3
|
export const ItalicFeature = createServerFeature({
|
|
4
4
|
feature: {
|
|
5
5
|
ClientFeature: '@payloadcms/richtext-lexical/client#ItalicFeatureClient',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.js","names":["
|
|
1
|
+
{"version":3,"file":"feature.server.js","names":["ITALIC_STAR","ITALIC_UNDERSCORE","createServerFeature","ItalicFeature","feature","ClientFeature","markdownTransformers","key"],"sources":["../../../../src/features/format/italic/feature.server.ts"],"sourcesContent":["import { ITALIC_STAR, ITALIC_UNDERSCORE } from '@lexical/markdown'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\n\nexport const ItalicFeature = createServerFeature({\n feature: {\n ClientFeature: '@payloadcms/richtext-lexical/client#ItalicFeatureClient',\n markdownTransformers: [ITALIC_STAR, ITALIC_UNDERSCORE],\n },\n key: 'italic',\n})\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,iBAAiB,QAAQ;AAE/C,SAASC,mBAAmB,QAAQ;AAEpC,OAAO,MAAMC,aAAA,GAAgBD,mBAAA,CAAoB;EAC/CE,OAAA,EAAS;IACPC,aAAA,EAAe;IACfC,oBAAA,EAAsB,CAACN,WAAA,EAAaC,iBAAA;EACtC;EACAM,GAAA,EAAK;AACP","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolbarFormatGroup.d.ts","sourceRoot":"","sources":["../../../../src/features/format/shared/toolbarFormatGroup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE7E,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"toolbarFormatGroup.d.ts","sourceRoot":"","sources":["../../../../src/features/format/shared/toolbarFormatGroup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE7E,eAAO,MAAM,2BAA2B,UAAW,gBAAgB,EAAE,KAAG,YAOvE,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { STRIKETHROUGH } from '@lexical/markdown';
|
|
3
4
|
import { $isTableSelection } from '@lexical/table';
|
|
4
5
|
import { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical';
|
|
5
6
|
import { StrikethroughIcon } from '../../../lexical/ui/icons/Strikethrough/index.js';
|
|
6
7
|
import { createClientFeature } from '../../../utilities/createClientFeature.js';
|
|
7
8
|
import { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js';
|
|
8
|
-
import { STRIKETHROUGH } from './markdownTransformers.js';
|
|
9
9
|
const toolbarGroups = [toolbarFormatGroupWithItems([{
|
|
10
10
|
ChildComponent: StrikethroughIcon,
|
|
11
11
|
isActive: ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.client.js","names":["$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","StrikethroughIcon","createClientFeature","toolbarFormatGroupWithItems","
|
|
1
|
+
{"version":3,"file":"feature.client.js","names":["STRIKETHROUGH","$isTableSelection","$isRangeSelection","FORMAT_TEXT_COMMAND","StrikethroughIcon","createClientFeature","toolbarFormatGroupWithItems","toolbarGroups","ChildComponent","isActive","selection","hasFormat","key","onSelect","editor","dispatchCommand","order","StrikethroughFeatureClient","enableFormats","markdownTransformers","toolbarFixed","groups","toolbarInline"],"sources":["../../../../src/features/format/strikethrough/feature.client.tsx"],"sourcesContent":["'use client'\n\nimport { STRIKETHROUGH } from '@lexical/markdown'\nimport { $isTableSelection } from '@lexical/table'\nimport { $isRangeSelection, FORMAT_TEXT_COMMAND } from 'lexical'\n\nimport { StrikethroughIcon } from '../../../lexical/ui/icons/Strikethrough/index.js'\nimport { createClientFeature } from '../../../utilities/createClientFeature.js'\nimport { toolbarFormatGroupWithItems } from '../shared/toolbarFormatGroup.js'\n\nconst toolbarGroups = [\n toolbarFormatGroupWithItems([\n {\n ChildComponent: StrikethroughIcon,\n isActive: ({ selection }) => {\n if ($isRangeSelection(selection) || $isTableSelection(selection)) {\n return selection.hasFormat('strikethrough')\n }\n return false\n },\n key: 'strikethrough',\n onSelect: ({ editor }) => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'strikethrough')\n },\n order: 4,\n },\n ]),\n]\n\nexport const StrikethroughFeatureClient = createClientFeature({\n enableFormats: ['strikethrough'],\n markdownTransformers: [STRIKETHROUGH],\n toolbarFixed: {\n groups: toolbarGroups,\n },\n toolbarInline: {\n groups: toolbarGroups,\n },\n})\n"],"mappings":"AAAA;;AAEA,SAASA,aAAa,QAAQ;AAC9B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ;AAEvD,SAASC,iBAAiB,QAAQ;AAClC,SAASC,mBAAmB,QAAQ;AACpC,SAASC,2BAA2B,QAAQ;AAE5C,MAAMC,aAAA,GAAgB,CACpBD,2BAAA,CAA4B,CAC1B;EACEE,cAAA,EAAgBJ,iBAAA;EAChBK,QAAA,EAAUA,CAAC;IAAEC;EAAS,CAAE;IACtB,IAAIR,iBAAA,CAAkBQ,SAAA,KAAcT,iBAAA,CAAkBS,SAAA,GAAY;MAChE,OAAOA,SAAA,CAAUC,SAAS,CAAC;IAC7B;IACA,OAAO;EACT;EACAC,GAAA,EAAK;EACLC,QAAA,EAAUA,CAAC;IAAEC;EAAM,CAAE;IACnBA,MAAA,CAAOC,eAAe,CAACZ,mBAAA,EAAqB;EAC9C;EACAa,KAAA,EAAO;AACT,EACD,EACF;AAED,OAAO,MAAMC,0BAAA,GAA6BZ,mBAAA,CAAoB;EAC5Da,aAAA,EAAe,CAAC,gBAAgB;EAChCC,oBAAA,EAAsB,CAACnB,aAAA,CAAc;EACrCoB,YAAA,EAAc;IACZC,MAAA,EAAQd;EACV;EACAe,aAAA,EAAe;IACbD,MAAA,EAAQd;EACV;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/strikethrough/feature.server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../src/features/format/strikethrough/feature.server.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,+FAO/B,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { STRIKETHROUGH } from '@lexical/markdown';
|
|
1
2
|
import { createServerFeature } from '../../../utilities/createServerFeature.js';
|
|
2
|
-
import { STRIKETHROUGH } from './markdownTransformers.js';
|
|
3
3
|
export const StrikethroughFeature = createServerFeature({
|
|
4
4
|
feature: {
|
|
5
5
|
ClientFeature: '@payloadcms/richtext-lexical/client#StrikethroughFeatureClient',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.server.js","names":["
|
|
1
|
+
{"version":3,"file":"feature.server.js","names":["STRIKETHROUGH","createServerFeature","StrikethroughFeature","feature","ClientFeature","markdownTransformers","key"],"sources":["../../../../src/features/format/strikethrough/feature.server.ts"],"sourcesContent":["import { STRIKETHROUGH } from '@lexical/markdown'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\n\nexport const StrikethroughFeature = createServerFeature({\n feature: {\n ClientFeature: '@payloadcms/richtext-lexical/client#StrikethroughFeatureClient',\n\n markdownTransformers: [STRIKETHROUGH],\n },\n key: 'strikethrough',\n})\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ;AAE9B,SAASC,mBAAmB,QAAQ;AAEpC,OAAO,MAAMC,oBAAA,GAAuBD,mBAAA,CAAoB;EACtDE,OAAA,EAAS;IACPC,aAAA,EAAe;IAEfC,oBAAA,EAAsB,CAACL,aAAA;EACzB;EACAM,GAAA,EAAK;AACP","ignoreList":[]}
|
|
@@ -15,7 +15,7 @@ import { H6Icon } from '../../../lexical/ui/icons/H6/index.js';
|
|
|
15
15
|
import { createClientFeature } from '../../../utilities/createClientFeature.js';
|
|
16
16
|
import { slashMenuBasicGroupWithItems } from '../../shared/slashMenu/basicGroup.js';
|
|
17
17
|
import { toolbarTextDropdownGroupWithItems } from '../../shared/toolbar/textDropdownGroup.js';
|
|
18
|
-
import {
|
|
18
|
+
import { PAYLOAD_HEADING } from '../markdownTransformer.js';
|
|
19
19
|
const $setHeading = headingSize => {
|
|
20
20
|
const selection = $getSelection();
|
|
21
21
|
$setBlocksType(selection, () => $createHeadingNode(headingSize));
|
|
@@ -74,7 +74,7 @@ export const HeadingFeatureClient = createClientFeature(({
|
|
|
74
74
|
};
|
|
75
75
|
}))];
|
|
76
76
|
return {
|
|
77
|
-
markdownTransformers: [
|
|
77
|
+
markdownTransformers: [PAYLOAD_HEADING(enabledHeadingSizes)],
|
|
78
78
|
nodes: [HeadingNode],
|
|
79
79
|
plugins: [{
|
|
80
80
|
Component: HeadingPlugin,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$createHeadingNode","$isHeadingNode","HeadingNode","$setBlocksType","$getSelection","$isRangeSelection","useEffect","H1Icon","H2Icon","H3Icon","H4Icon","H5Icon","H6Icon","createClientFeature","slashMenuBasicGroupWithItems","toolbarTextDropdownGroupWithItems","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$createHeadingNode","$isHeadingNode","HeadingNode","$setBlocksType","$getSelection","$isRangeSelection","useEffect","H1Icon","H2Icon","H3Icon","H4Icon","H5Icon","H6Icon","createClientFeature","slashMenuBasicGroupWithItems","toolbarTextDropdownGroupWithItems","PAYLOAD_HEADING","$setHeading","headingSize","selection","iconImports","h1","h2","h3","h4","h5","h6","HeadingFeatureClient","props","enabledHeadingSizes","toolbarGroups","map","i","ChildComponent","isActive","node","getNodes","getTag","parent","getParent","key","label","i18n","t","headingLevel","charAt","onSelect","editor","update","order","markdownTransformers","nodes","plugins","Component","HeadingPlugin","position","sanitizedClientFeatureProps","slashMenu","groups","length","Icon","keywords","toolbarFixed","toolbarInline","t0","$","clientProps","t1","t2","undefined","t3","at","lowestAllowed","t4","t5","registerNodeTransform","includes","setTag"],"sources":["../../../../src/features/heading/client/index.tsx"],"sourcesContent":["'use client'\n\nimport type { HeadingTagType } from '@lexical/rich-text'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext'\nimport { $createHeadingNode, $isHeadingNode, HeadingNode } from '@lexical/rich-text'\nimport { $setBlocksType } from '@lexical/selection'\nimport { $getSelection, $isRangeSelection } from 'lexical'\nimport { useEffect } from 'react'\n\nimport type { ToolbarGroup } from '../../toolbars/types.js'\nimport type { PluginComponent } from '../../typesClient.js'\nimport type { HeadingFeatureProps } from '../server/index.js'\n\nimport { H1Icon } from '../../../lexical/ui/icons/H1/index.js'\nimport { H2Icon } from '../../../lexical/ui/icons/H2/index.js'\nimport { H3Icon } from '../../../lexical/ui/icons/H3/index.js'\nimport { H4Icon } from '../../../lexical/ui/icons/H4/index.js'\nimport { H5Icon } from '../../../lexical/ui/icons/H5/index.js'\nimport { H6Icon } from '../../../lexical/ui/icons/H6/index.js'\nimport { createClientFeature } from '../../../utilities/createClientFeature.js'\nimport { slashMenuBasicGroupWithItems } from '../../shared/slashMenu/basicGroup.js'\nimport { toolbarTextDropdownGroupWithItems } from '../../shared/toolbar/textDropdownGroup.js'\nimport { PAYLOAD_HEADING } from '../markdownTransformer.js'\n\nconst $setHeading = (headingSize: HeadingTagType) => {\n const selection = $getSelection()\n $setBlocksType(selection, () => $createHeadingNode(headingSize))\n}\n\nconst iconImports = {\n h1: H1Icon,\n h2: H2Icon,\n h3: H3Icon,\n h4: H4Icon,\n h5: H5Icon,\n h6: H6Icon,\n}\n\nexport const HeadingFeatureClient = createClientFeature<HeadingFeatureProps>(({ props }) => {\n const { enabledHeadingSizes = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] } = props\n\n const toolbarGroups: ToolbarGroup[] = [\n toolbarTextDropdownGroupWithItems(\n enabledHeadingSizes.map((headingSize, i) => {\n return {\n ChildComponent: iconImports[headingSize],\n isActive: ({ selection }) => {\n if (!$isRangeSelection(selection)) {\n return false\n }\n for (const node of selection.getNodes()) {\n if ($isHeadingNode(node) && node.getTag() === headingSize) {\n continue\n }\n\n const parent = node.getParent()\n if ($isHeadingNode(parent) && parent.getTag() === headingSize) {\n continue\n }\n\n return false\n }\n return true\n },\n key: headingSize,\n label: ({ i18n }) => {\n return i18n.t('lexical:heading:label', { headingLevel: headingSize.charAt(1) })\n },\n onSelect: ({ editor }) => {\n editor.update(() => {\n $setHeading(headingSize)\n })\n },\n order: i + 2,\n }\n }),\n ),\n ]\n\n return {\n markdownTransformers: [PAYLOAD_HEADING(enabledHeadingSizes)],\n nodes: [HeadingNode],\n plugins: [\n {\n Component: HeadingPlugin,\n position: 'normal',\n },\n ],\n sanitizedClientFeatureProps: props,\n slashMenu: {\n groups: enabledHeadingSizes?.length\n ? [\n slashMenuBasicGroupWithItems(\n enabledHeadingSizes.map((headingSize) => {\n return {\n Icon: iconImports[headingSize],\n key: `heading-${headingSize.charAt(1)}`,\n keywords: ['heading', headingSize],\n label: ({ i18n }) => {\n return i18n.t('lexical:heading:label', {\n headingLevel: headingSize.charAt(1),\n })\n },\n onSelect: ({ editor }) => {\n editor.update(() => {\n $setHeading(headingSize)\n })\n },\n }\n }),\n ),\n ]\n : [],\n },\n toolbarFixed: {\n groups: enabledHeadingSizes?.length ? toolbarGroups : [],\n },\n toolbarInline: {\n groups: enabledHeadingSizes?.length ? toolbarGroups : [],\n },\n }\n})\n\nconst HeadingPlugin: PluginComponent<HeadingFeatureProps> = ({ clientProps }) => {\n const { enabledHeadingSizes = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] } = clientProps\n const lowestAllowed = enabledHeadingSizes.at(-1)\n const [editor] = useLexicalComposerContext()\n\n useEffect(() => {\n if (!lowestAllowed || enabledHeadingSizes.length === 6) {\n return\n }\n return editor.registerNodeTransform(HeadingNode, (node) => {\n if (!enabledHeadingSizes.includes(node.getTag())) {\n node.setTag(lowestAllowed)\n }\n })\n }, [editor, enabledHeadingSizes, lowestAllowed])\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/features/heading/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,aAAgD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","names":["ALLOWED_HEADING_TAGS","Set"],"sources":["../../../src/features/heading/constants.ts"],"sourcesContent":["export const ALLOWED_HEADING_TAGS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6'])\n"],"mappings":"AAAA,OAAO,MAAMA,oBAAA,GAAuB,IAAIC,GAAA,CAAI,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
+
import type { ElementTransformer } from '@lexical/markdown';
|
|
1
2
|
import type { HeadingTagType } from '@lexical/rich-text';
|
|
2
|
-
|
|
3
|
-
export declare const MarkdownTransformer: (enabledHeadingSizes: HeadingTagType[]) => ElementTransformer;
|
|
3
|
+
export declare const PAYLOAD_HEADING: (enabledHeadingSizes: HeadingTagType[]) => ElementTransformer;
|
|
4
4
|
//# sourceMappingURL=markdownTransformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownTransformer.d.ts","sourceRoot":"","sources":["../../../src/features/heading/markdownTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"markdownTransformer.d.ts","sourceRoot":"","sources":["../../../src/features/heading/markdownTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAKxD,eAAO,MAAM,eAAe,EAAE,CAAC,mBAAmB,EAAE,cAAc,EAAE,KAAK,kBAaxE,CAAA"}
|
|
@@ -1,26 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
export const
|
|
1
|
+
// eslint-disable-next-line payload/no-conflicting-lexical-markdown-imports -- PAYLOAD_HEADING intentionally extends upstream HEADING, overriding only its regExp to respect the enabled heading levels
|
|
2
|
+
import { HEADING } from '@lexical/markdown';
|
|
3
|
+
export const PAYLOAD_HEADING = enabledHeadingSizes => {
|
|
4
4
|
// Convert enabledHeadingSizes to a list of numbers (1 for h1, 2 for h2, etc.)
|
|
5
5
|
const enabledSizes = enabledHeadingSizes.map(tag => Number(tag.slice(1)));
|
|
6
|
-
//
|
|
6
|
+
// Only the heading levels enabled in the config should be matched on import.
|
|
7
7
|
const pattern = `^(${enabledSizes.map(size => `#{${size}}`).join('|')})\\s`;
|
|
8
|
-
const regExp = new RegExp(pattern);
|
|
9
8
|
return {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export: (node, exportChildren) => {
|
|
13
|
-
if (!$isHeadingNode(node)) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
const level = Number(node.getTag().slice(1));
|
|
17
|
-
return '#'.repeat(level) + ' ' + exportChildren(node);
|
|
18
|
-
},
|
|
19
|
-
regExp,
|
|
20
|
-
replace: createBlockNode(match => {
|
|
21
|
-
const tag = 'h' + match[1]?.length;
|
|
22
|
-
return $createHeadingNode(tag);
|
|
23
|
-
})
|
|
9
|
+
...HEADING,
|
|
10
|
+
regExp: new RegExp(pattern)
|
|
24
11
|
};
|
|
25
12
|
};
|
|
26
13
|
//# sourceMappingURL=markdownTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownTransformer.js","names":["
|
|
1
|
+
{"version":3,"file":"markdownTransformer.js","names":["HEADING","PAYLOAD_HEADING","enabledHeadingSizes","enabledSizes","map","tag","Number","slice","pattern","size","join","regExp","RegExp"],"sources":["../../../src/features/heading/markdownTransformer.ts"],"sourcesContent":["import type { ElementTransformer } from '@lexical/markdown'\nimport type { HeadingTagType } from '@lexical/rich-text'\n\n// eslint-disable-next-line payload/no-conflicting-lexical-markdown-imports -- PAYLOAD_HEADING intentionally extends upstream HEADING, overriding only its regExp to respect the enabled heading levels\nimport { HEADING } from '@lexical/markdown'\n\nexport const PAYLOAD_HEADING: (enabledHeadingSizes: HeadingTagType[]) => ElementTransformer = (\n enabledHeadingSizes,\n) => {\n // Convert enabledHeadingSizes to a list of numbers (1 for h1, 2 for h2, etc.)\n const enabledSizes = enabledHeadingSizes.map((tag) => Number(tag.slice(1)))\n\n // Only the heading levels enabled in the config should be matched on import.\n const pattern = `^(${enabledSizes.map((size) => `#{${size}}`).join('|')})\\\\s`\n\n return {\n ...HEADING,\n regExp: new RegExp(pattern),\n }\n}\n"],"mappings":"AAGA;AACA,SAASA,OAAO,QAAQ;AAExB,OAAO,MAAMC,eAAA,GACXC,mBAAA;EAEA;EACA,MAAMC,YAAA,GAAeD,mBAAA,CAAoBE,GAAG,CAAEC,GAAA,IAAQC,MAAA,CAAOD,GAAA,CAAIE,KAAK,CAAC;EAEvE;EACA,MAAMC,OAAA,GAAU,KAAKL,YAAA,CAAaC,GAAG,CAAEK,IAAA,IAAS,KAAKA,IAAA,GAAO,EAAEC,IAAI,CAAC,UAAU;EAE7E,OAAO;IACL,GAAGV,OAAO;IACVW,MAAA,EAAQ,IAAIC,MAAA,CAAOJ,OAAA;EACrB;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/heading/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/heading/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAWxD,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,MAAM,MAAM,mBAAmB,GAAG;IAChC,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,cAAc,6HA+BzB,CAAA"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { HeadingNode } from '@lexical/rich-text';
|
|
2
2
|
import { createServerFeature } from '../../../utilities/createServerFeature.js';
|
|
3
3
|
import { createNode } from '../../typeUtilities.js';
|
|
4
|
-
import {
|
|
4
|
+
import { PAYLOAD_HEADING } from '../markdownTransformer.js';
|
|
5
5
|
import { i18n } from './i18n.js';
|
|
6
6
|
import { createHeadingJSONSchema } from './schema.js';
|
|
7
|
+
import { headingValidation } from './validate.js';
|
|
7
8
|
export const HeadingFeature = createServerFeature({
|
|
8
9
|
feature: ({
|
|
9
10
|
props
|
|
@@ -19,10 +20,13 @@ export const HeadingFeature = createServerFeature({
|
|
|
19
20
|
ClientFeature: '@payloadcms/richtext-lexical/client#HeadingFeatureClient',
|
|
20
21
|
clientFeatureProps: props,
|
|
21
22
|
i18n,
|
|
22
|
-
markdownTransformers: enabledHeadingSizes.length > 0 ? [
|
|
23
|
+
markdownTransformers: enabledHeadingSizes.length > 0 ? [PAYLOAD_HEADING(enabledHeadingSizes)] : [],
|
|
23
24
|
nodes: [createNode({
|
|
24
25
|
jsonSchema: createHeadingJSONSchema(enabledHeadingSizes),
|
|
25
|
-
node: HeadingNode
|
|
26
|
+
node: HeadingNode,
|
|
27
|
+
validations: [headingValidation({
|
|
28
|
+
enabledHeadingSizes
|
|
29
|
+
})]
|
|
26
30
|
})],
|
|
27
31
|
sanitizedServerFeatureProps: props
|
|
28
32
|
};
|