@multiplatform.one/rich-text 6.0.0
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 +201 -0
- package/dist/cjs/RichEditor.cjs +132 -0
- package/dist/cjs/RichEditor.native.js +120 -0
- package/dist/cjs/RichEditor.native.js.map +1 -0
- package/dist/cjs/RichEditor.stories.cjs +327 -0
- package/dist/cjs/RichEditor.stories.native.js +342 -0
- package/dist/cjs/RichEditor.stories.native.js.map +1 -0
- package/dist/cjs/RichTextEditor/index.cjs +148 -0
- package/dist/cjs/RichTextEditor/index.native.js +160 -0
- package/dist/cjs/RichTextEditor/index.native.js.map +1 -0
- package/dist/cjs/constants.cjs +135 -0
- package/dist/cjs/constants.native.js +138 -0
- package/dist/cjs/constants.native.js.map +1 -0
- package/dist/cjs/context.cjs +33 -0
- package/dist/cjs/context.native.js +36 -0
- package/dist/cjs/context.native.js.map +1 -0
- package/dist/cjs/editor/BlockDragHandle.cjs +137 -0
- package/dist/cjs/editor/BlockDragHandle.native.js +142 -0
- package/dist/cjs/editor/BlockDragHandle.native.js.map +1 -0
- package/dist/cjs/editor/MarkdownPaste.cjs +65 -0
- package/dist/cjs/editor/MarkdownPaste.native.js +68 -0
- package/dist/cjs/editor/MarkdownPaste.native.js.map +1 -0
- package/dist/cjs/editor/SlashCommands.cjs +369 -0
- package/dist/cjs/editor/SlashCommands.native.js +424 -0
- package/dist/cjs/editor/SlashCommands.native.js.map +1 -0
- package/dist/cjs/editor/TentapEditor.native.js +242 -0
- package/dist/cjs/editor/TentapEditor.native.js.map +1 -0
- package/dist/cjs/editor/TiptapEditor.cjs +578 -0
- package/dist/cjs/editor/TiptapEditor.native.js +661 -0
- package/dist/cjs/editor/TiptapEditor.native.js.map +1 -0
- package/dist/cjs/editor/editorStyles.cjs +272 -0
- package/dist/cjs/editor/editorStyles.native.js +276 -0
- package/dist/cjs/editor/editorStyles.native.js.map +1 -0
- package/dist/cjs/editor/index.cjs +33 -0
- package/dist/cjs/editor/index.native.js +36 -0
- package/dist/cjs/editor/index.native.js.map +1 -0
- package/dist/cjs/editor/types.cjs +54 -0
- package/dist/cjs/editor/types.native.js +57 -0
- package/dist/cjs/editor/types.native.js.map +1 -0
- package/dist/cjs/editor/useEditorState.cjs +129 -0
- package/dist/cjs/editor/useEditorState.native.js +135 -0
- package/dist/cjs/editor/useEditorState.native.js.map +1 -0
- package/dist/cjs/index.cjs +30 -0
- package/dist/cjs/index.native.js +33 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/styled.cjs +173 -0
- package/dist/cjs/styled.native.js +185 -0
- package/dist/cjs/styled.native.js.map +1 -0
- package/dist/cjs/toolbar/BubbleToolbar.cjs +130 -0
- package/dist/cjs/toolbar/BubbleToolbar.native.js +159 -0
- package/dist/cjs/toolbar/BubbleToolbar.native.js.map +1 -0
- package/dist/cjs/toolbar/CodeBlockBubble.cjs +211 -0
- package/dist/cjs/toolbar/CodeBlockBubble.native.js +228 -0
- package/dist/cjs/toolbar/CodeBlockBubble.native.js.map +1 -0
- package/dist/cjs/toolbar/ColorPicker.cjs +217 -0
- package/dist/cjs/toolbar/ColorPicker.native.js +234 -0
- package/dist/cjs/toolbar/ColorPicker.native.js.map +1 -0
- package/dist/cjs/toolbar/FixedToolbar.cjs +221 -0
- package/dist/cjs/toolbar/FixedToolbar.native.js +322 -0
- package/dist/cjs/toolbar/FixedToolbar.native.js.map +1 -0
- package/dist/cjs/toolbar/HeadingPicker.cjs +158 -0
- package/dist/cjs/toolbar/HeadingPicker.native.js +167 -0
- package/dist/cjs/toolbar/HeadingPicker.native.js.map +1 -0
- package/dist/cjs/toolbar/ImageBubble.cjs +156 -0
- package/dist/cjs/toolbar/ImageBubble.native.js +165 -0
- package/dist/cjs/toolbar/ImageBubble.native.js.map +1 -0
- package/dist/cjs/toolbar/ImageDialog.cjs +115 -0
- package/dist/cjs/toolbar/ImageDialog.native.js +122 -0
- package/dist/cjs/toolbar/ImageDialog.native.js.map +1 -0
- package/dist/cjs/toolbar/LinkBubble.cjs +195 -0
- package/dist/cjs/toolbar/LinkBubble.native.js +204 -0
- package/dist/cjs/toolbar/LinkBubble.native.js.map +1 -0
- package/dist/cjs/toolbar/LinkDialog.cjs +138 -0
- package/dist/cjs/toolbar/LinkDialog.native.js +146 -0
- package/dist/cjs/toolbar/LinkDialog.native.js.map +1 -0
- package/dist/cjs/toolbar/ListPicker.cjs +117 -0
- package/dist/cjs/toolbar/ListPicker.native.js +124 -0
- package/dist/cjs/toolbar/ListPicker.native.js.map +1 -0
- package/dist/cjs/toolbar/MoreDropdown.cjs +201 -0
- package/dist/cjs/toolbar/MoreDropdown.native.js +224 -0
- package/dist/cjs/toolbar/MoreDropdown.native.js.map +1 -0
- package/dist/cjs/toolbar/ResizeHandle.cjs +105 -0
- package/dist/cjs/toolbar/ResizeHandle.native.js +109 -0
- package/dist/cjs/toolbar/ResizeHandle.native.js.map +1 -0
- package/dist/cjs/toolbar/StatusBar.cjs +91 -0
- package/dist/cjs/toolbar/StatusBar.native.js +100 -0
- package/dist/cjs/toolbar/StatusBar.native.js.map +1 -0
- package/dist/cjs/toolbar/TableBubble.cjs +232 -0
- package/dist/cjs/toolbar/TableBubble.native.js +273 -0
- package/dist/cjs/toolbar/TableBubble.native.js.map +1 -0
- package/dist/cjs/toolbar/ToolbarButton.cjs +105 -0
- package/dist/cjs/toolbar/ToolbarButton.native.js +97 -0
- package/dist/cjs/toolbar/ToolbarButton.native.js.map +1 -0
- package/dist/cjs/toolbar/ToolbarGroup.cjs +41 -0
- package/dist/cjs/toolbar/ToolbarGroup.native.js +45 -0
- package/dist/cjs/toolbar/ToolbarGroup.native.js.map +1 -0
- package/dist/cjs/toolbar/icons.cjs +601 -0
- package/dist/cjs/toolbar/icons.native.js +165 -0
- package/dist/cjs/toolbar/icons.native.js.map +1 -0
- package/dist/cjs/toolbar/shortcuts.cjs +62 -0
- package/dist/cjs/toolbar/shortcuts.native.js +66 -0
- package/dist/cjs/toolbar/shortcuts.native.js.map +1 -0
- package/dist/cjs/toolbar/useHorizontalScroll.cjs +250 -0
- package/dist/cjs/toolbar/useHorizontalScroll.native.js +260 -0
- package/dist/cjs/toolbar/useHorizontalScroll.native.js.map +1 -0
- package/dist/cjs/types.cjs +56 -0
- package/dist/cjs/types.native.js +59 -0
- package/dist/cjs/types.native.js.map +1 -0
- package/dist/esm/RichEditor.mjs +107 -0
- package/dist/esm/RichEditor.mjs.map +1 -0
- package/dist/esm/RichEditor.native.js +92 -0
- package/dist/esm/RichEditor.native.js.map +1 -0
- package/dist/esm/RichEditor.stories.mjs +291 -0
- package/dist/esm/RichEditor.stories.mjs.map +1 -0
- package/dist/esm/RichEditor.stories.native.js +303 -0
- package/dist/esm/RichEditor.stories.native.js.map +1 -0
- package/dist/esm/RichTextEditor/index.mjs +123 -0
- package/dist/esm/RichTextEditor/index.mjs.map +1 -0
- package/dist/esm/RichTextEditor/index.native.js +132 -0
- package/dist/esm/RichTextEditor/index.native.js.map +1 -0
- package/dist/esm/constants.mjs +108 -0
- package/dist/esm/constants.mjs.map +1 -0
- package/dist/esm/constants.native.js +108 -0
- package/dist/esm/constants.native.js.map +1 -0
- package/dist/esm/context.mjs +8 -0
- package/dist/esm/context.mjs.map +1 -0
- package/dist/esm/context.native.js +8 -0
- package/dist/esm/context.native.js.map +1 -0
- package/dist/esm/editor/BlockDragHandle.mjs +112 -0
- package/dist/esm/editor/BlockDragHandle.mjs.map +1 -0
- package/dist/esm/editor/BlockDragHandle.native.js +114 -0
- package/dist/esm/editor/BlockDragHandle.native.js.map +1 -0
- package/dist/esm/editor/MarkdownPaste.mjs +40 -0
- package/dist/esm/editor/MarkdownPaste.mjs.map +1 -0
- package/dist/esm/editor/MarkdownPaste.native.js +40 -0
- package/dist/esm/editor/MarkdownPaste.native.js.map +1 -0
- package/dist/esm/editor/SlashCommands.mjs +333 -0
- package/dist/esm/editor/SlashCommands.mjs.map +1 -0
- package/dist/esm/editor/SlashCommands.native.js +385 -0
- package/dist/esm/editor/SlashCommands.native.js.map +1 -0
- package/dist/esm/editor/TentapEditor.native.js +214 -0
- package/dist/esm/editor/TentapEditor.native.js.map +1 -0
- package/dist/esm/editor/TiptapEditor.mjs +542 -0
- package/dist/esm/editor/TiptapEditor.mjs.map +1 -0
- package/dist/esm/editor/TiptapEditor.native.js +622 -0
- package/dist/esm/editor/TiptapEditor.native.js.map +1 -0
- package/dist/esm/editor/editorStyles.mjs +247 -0
- package/dist/esm/editor/editorStyles.mjs.map +1 -0
- package/dist/esm/editor/editorStyles.native.js +248 -0
- package/dist/esm/editor/editorStyles.native.js.map +1 -0
- package/dist/esm/editor/index.mjs +5 -0
- package/dist/esm/editor/index.mjs.map +1 -0
- package/dist/esm/editor/index.native.js +5 -0
- package/dist/esm/editor/index.native.js.map +1 -0
- package/dist/esm/editor/types.mjs +29 -0
- package/dist/esm/editor/types.mjs.map +1 -0
- package/dist/esm/editor/types.native.js +29 -0
- package/dist/esm/editor/types.native.js.map +1 -0
- package/dist/esm/editor/useEditorState.mjs +102 -0
- package/dist/esm/editor/useEditorState.mjs.map +1 -0
- package/dist/esm/editor/useEditorState.native.js +105 -0
- package/dist/esm/editor/useEditorState.native.js.map +1 -0
- package/dist/esm/index.mjs +4 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +4 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/styled.mjs +144 -0
- package/dist/esm/styled.mjs.map +1 -0
- package/dist/esm/styled.native.js +153 -0
- package/dist/esm/styled.native.js.map +1 -0
- package/dist/esm/toolbar/BubbleToolbar.mjs +105 -0
- package/dist/esm/toolbar/BubbleToolbar.mjs.map +1 -0
- package/dist/esm/toolbar/BubbleToolbar.native.js +131 -0
- package/dist/esm/toolbar/BubbleToolbar.native.js.map +1 -0
- package/dist/esm/toolbar/CodeBlockBubble.mjs +186 -0
- package/dist/esm/toolbar/CodeBlockBubble.mjs.map +1 -0
- package/dist/esm/toolbar/CodeBlockBubble.native.js +200 -0
- package/dist/esm/toolbar/CodeBlockBubble.native.js.map +1 -0
- package/dist/esm/toolbar/ColorPicker.mjs +191 -0
- package/dist/esm/toolbar/ColorPicker.mjs.map +1 -0
- package/dist/esm/toolbar/ColorPicker.native.js +205 -0
- package/dist/esm/toolbar/ColorPicker.native.js.map +1 -0
- package/dist/esm/toolbar/FixedToolbar.mjs +196 -0
- package/dist/esm/toolbar/FixedToolbar.mjs.map +1 -0
- package/dist/esm/toolbar/FixedToolbar.native.js +294 -0
- package/dist/esm/toolbar/FixedToolbar.native.js.map +1 -0
- package/dist/esm/toolbar/HeadingPicker.mjs +133 -0
- package/dist/esm/toolbar/HeadingPicker.mjs.map +1 -0
- package/dist/esm/toolbar/HeadingPicker.native.js +139 -0
- package/dist/esm/toolbar/HeadingPicker.native.js.map +1 -0
- package/dist/esm/toolbar/ImageBubble.mjs +131 -0
- package/dist/esm/toolbar/ImageBubble.mjs.map +1 -0
- package/dist/esm/toolbar/ImageBubble.native.js +137 -0
- package/dist/esm/toolbar/ImageBubble.native.js.map +1 -0
- package/dist/esm/toolbar/ImageDialog.mjs +90 -0
- package/dist/esm/toolbar/ImageDialog.mjs.map +1 -0
- package/dist/esm/toolbar/ImageDialog.native.js +94 -0
- package/dist/esm/toolbar/ImageDialog.native.js.map +1 -0
- package/dist/esm/toolbar/LinkBubble.mjs +170 -0
- package/dist/esm/toolbar/LinkBubble.mjs.map +1 -0
- package/dist/esm/toolbar/LinkBubble.native.js +176 -0
- package/dist/esm/toolbar/LinkBubble.native.js.map +1 -0
- package/dist/esm/toolbar/LinkDialog.mjs +112 -0
- package/dist/esm/toolbar/LinkDialog.mjs.map +1 -0
- package/dist/esm/toolbar/LinkDialog.native.js +117 -0
- package/dist/esm/toolbar/LinkDialog.native.js.map +1 -0
- package/dist/esm/toolbar/ListPicker.mjs +92 -0
- package/dist/esm/toolbar/ListPicker.mjs.map +1 -0
- package/dist/esm/toolbar/ListPicker.native.js +96 -0
- package/dist/esm/toolbar/ListPicker.native.js.map +1 -0
- package/dist/esm/toolbar/MoreDropdown.mjs +176 -0
- package/dist/esm/toolbar/MoreDropdown.mjs.map +1 -0
- package/dist/esm/toolbar/MoreDropdown.native.js +196 -0
- package/dist/esm/toolbar/MoreDropdown.native.js.map +1 -0
- package/dist/esm/toolbar/ResizeHandle.mjs +80 -0
- package/dist/esm/toolbar/ResizeHandle.mjs.map +1 -0
- package/dist/esm/toolbar/ResizeHandle.native.js +81 -0
- package/dist/esm/toolbar/ResizeHandle.native.js.map +1 -0
- package/dist/esm/toolbar/StatusBar.mjs +66 -0
- package/dist/esm/toolbar/StatusBar.mjs.map +1 -0
- package/dist/esm/toolbar/StatusBar.native.js +72 -0
- package/dist/esm/toolbar/StatusBar.native.js.map +1 -0
- package/dist/esm/toolbar/TableBubble.mjs +207 -0
- package/dist/esm/toolbar/TableBubble.mjs.map +1 -0
- package/dist/esm/toolbar/TableBubble.native.js +245 -0
- package/dist/esm/toolbar/TableBubble.native.js.map +1 -0
- package/dist/esm/toolbar/ToolbarButton.mjs +79 -0
- package/dist/esm/toolbar/ToolbarButton.mjs.map +1 -0
- package/dist/esm/toolbar/ToolbarButton.native.js +68 -0
- package/dist/esm/toolbar/ToolbarButton.native.js.map +1 -0
- package/dist/esm/toolbar/ToolbarGroup.mjs +16 -0
- package/dist/esm/toolbar/ToolbarGroup.mjs.map +1 -0
- package/dist/esm/toolbar/ToolbarGroup.native.js +17 -0
- package/dist/esm/toolbar/ToolbarGroup.native.js.map +1 -0
- package/dist/esm/toolbar/icons.mjs +554 -0
- package/dist/esm/toolbar/icons.mjs.map +1 -0
- package/dist/esm/toolbar/icons.native.js +115 -0
- package/dist/esm/toolbar/icons.native.js.map +1 -0
- package/dist/esm/toolbar/shortcuts.mjs +36 -0
- package/dist/esm/toolbar/shortcuts.mjs.map +1 -0
- package/dist/esm/toolbar/shortcuts.native.js +37 -0
- package/dist/esm/toolbar/shortcuts.native.js.map +1 -0
- package/dist/esm/toolbar/useHorizontalScroll.mjs +223 -0
- package/dist/esm/toolbar/useHorizontalScroll.mjs.map +1 -0
- package/dist/esm/toolbar/useHorizontalScroll.native.js +230 -0
- package/dist/esm/toolbar/useHorizontalScroll.native.js.map +1 -0
- package/dist/esm/types.mjs +31 -0
- package/dist/esm/types.mjs.map +1 -0
- package/dist/esm/types.native.js +31 -0
- package/dist/esm/types.native.js.map +1 -0
- package/dist/jsx/RichEditor.mjs +107 -0
- package/dist/jsx/RichEditor.mjs.map +1 -0
- package/dist/jsx/RichEditor.native.js +120 -0
- package/dist/jsx/RichEditor.native.js.map +1 -0
- package/dist/jsx/RichEditor.stories.mjs +291 -0
- package/dist/jsx/RichEditor.stories.mjs.map +1 -0
- package/dist/jsx/RichEditor.stories.native.js +342 -0
- package/dist/jsx/RichEditor.stories.native.js.map +1 -0
- package/dist/jsx/RichTextEditor/index.mjs +123 -0
- package/dist/jsx/RichTextEditor/index.mjs.map +1 -0
- package/dist/jsx/RichTextEditor/index.native.js +160 -0
- package/dist/jsx/RichTextEditor/index.native.js.map +1 -0
- package/dist/jsx/constants.mjs +108 -0
- package/dist/jsx/constants.mjs.map +1 -0
- package/dist/jsx/constants.native.js +138 -0
- package/dist/jsx/constants.native.js.map +1 -0
- package/dist/jsx/context.mjs +8 -0
- package/dist/jsx/context.mjs.map +1 -0
- package/dist/jsx/context.native.js +36 -0
- package/dist/jsx/context.native.js.map +1 -0
- package/dist/jsx/editor/BlockDragHandle.mjs +112 -0
- package/dist/jsx/editor/BlockDragHandle.mjs.map +1 -0
- package/dist/jsx/editor/BlockDragHandle.native.js +142 -0
- package/dist/jsx/editor/BlockDragHandle.native.js.map +1 -0
- package/dist/jsx/editor/MarkdownPaste.mjs +40 -0
- package/dist/jsx/editor/MarkdownPaste.mjs.map +1 -0
- package/dist/jsx/editor/MarkdownPaste.native.js +68 -0
- package/dist/jsx/editor/MarkdownPaste.native.js.map +1 -0
- package/dist/jsx/editor/SlashCommands.mjs +333 -0
- package/dist/jsx/editor/SlashCommands.mjs.map +1 -0
- package/dist/jsx/editor/SlashCommands.native.js +424 -0
- package/dist/jsx/editor/SlashCommands.native.js.map +1 -0
- package/dist/jsx/editor/TentapEditor.native.js +242 -0
- package/dist/jsx/editor/TentapEditor.native.js.map +1 -0
- package/dist/jsx/editor/TiptapEditor.mjs +542 -0
- package/dist/jsx/editor/TiptapEditor.mjs.map +1 -0
- package/dist/jsx/editor/TiptapEditor.native.js +661 -0
- package/dist/jsx/editor/TiptapEditor.native.js.map +1 -0
- package/dist/jsx/editor/editorStyles.mjs +247 -0
- package/dist/jsx/editor/editorStyles.mjs.map +1 -0
- package/dist/jsx/editor/editorStyles.native.js +276 -0
- package/dist/jsx/editor/editorStyles.native.js.map +1 -0
- package/dist/jsx/editor/index.mjs +5 -0
- package/dist/jsx/editor/index.mjs.map +1 -0
- package/dist/jsx/editor/index.native.js +36 -0
- package/dist/jsx/editor/index.native.js.map +1 -0
- package/dist/jsx/editor/types.mjs +29 -0
- package/dist/jsx/editor/types.mjs.map +1 -0
- package/dist/jsx/editor/types.native.js +57 -0
- package/dist/jsx/editor/types.native.js.map +1 -0
- package/dist/jsx/editor/useEditorState.mjs +102 -0
- package/dist/jsx/editor/useEditorState.mjs.map +1 -0
- package/dist/jsx/editor/useEditorState.native.js +135 -0
- package/dist/jsx/editor/useEditorState.native.js.map +1 -0
- package/dist/jsx/index.js +4 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/index.mjs +4 -0
- package/dist/jsx/index.mjs.map +1 -0
- package/dist/jsx/index.native.js +33 -0
- package/dist/jsx/index.native.js.map +1 -0
- package/dist/jsx/styled.mjs +144 -0
- package/dist/jsx/styled.mjs.map +1 -0
- package/dist/jsx/styled.native.js +185 -0
- package/dist/jsx/styled.native.js.map +1 -0
- package/dist/jsx/toolbar/BubbleToolbar.mjs +105 -0
- package/dist/jsx/toolbar/BubbleToolbar.mjs.map +1 -0
- package/dist/jsx/toolbar/BubbleToolbar.native.js +159 -0
- package/dist/jsx/toolbar/BubbleToolbar.native.js.map +1 -0
- package/dist/jsx/toolbar/CodeBlockBubble.mjs +186 -0
- package/dist/jsx/toolbar/CodeBlockBubble.mjs.map +1 -0
- package/dist/jsx/toolbar/CodeBlockBubble.native.js +228 -0
- package/dist/jsx/toolbar/CodeBlockBubble.native.js.map +1 -0
- package/dist/jsx/toolbar/ColorPicker.mjs +191 -0
- package/dist/jsx/toolbar/ColorPicker.mjs.map +1 -0
- package/dist/jsx/toolbar/ColorPicker.native.js +234 -0
- package/dist/jsx/toolbar/ColorPicker.native.js.map +1 -0
- package/dist/jsx/toolbar/FixedToolbar.mjs +196 -0
- package/dist/jsx/toolbar/FixedToolbar.mjs.map +1 -0
- package/dist/jsx/toolbar/FixedToolbar.native.js +322 -0
- package/dist/jsx/toolbar/FixedToolbar.native.js.map +1 -0
- package/dist/jsx/toolbar/HeadingPicker.mjs +133 -0
- package/dist/jsx/toolbar/HeadingPicker.mjs.map +1 -0
- package/dist/jsx/toolbar/HeadingPicker.native.js +167 -0
- package/dist/jsx/toolbar/HeadingPicker.native.js.map +1 -0
- package/dist/jsx/toolbar/ImageBubble.mjs +131 -0
- package/dist/jsx/toolbar/ImageBubble.mjs.map +1 -0
- package/dist/jsx/toolbar/ImageBubble.native.js +165 -0
- package/dist/jsx/toolbar/ImageBubble.native.js.map +1 -0
- package/dist/jsx/toolbar/ImageDialog.mjs +90 -0
- package/dist/jsx/toolbar/ImageDialog.mjs.map +1 -0
- package/dist/jsx/toolbar/ImageDialog.native.js +122 -0
- package/dist/jsx/toolbar/ImageDialog.native.js.map +1 -0
- package/dist/jsx/toolbar/LinkBubble.mjs +170 -0
- package/dist/jsx/toolbar/LinkBubble.mjs.map +1 -0
- package/dist/jsx/toolbar/LinkBubble.native.js +204 -0
- package/dist/jsx/toolbar/LinkBubble.native.js.map +1 -0
- package/dist/jsx/toolbar/LinkDialog.mjs +112 -0
- package/dist/jsx/toolbar/LinkDialog.mjs.map +1 -0
- package/dist/jsx/toolbar/LinkDialog.native.js +146 -0
- package/dist/jsx/toolbar/LinkDialog.native.js.map +1 -0
- package/dist/jsx/toolbar/ListPicker.mjs +92 -0
- package/dist/jsx/toolbar/ListPicker.mjs.map +1 -0
- package/dist/jsx/toolbar/ListPicker.native.js +124 -0
- package/dist/jsx/toolbar/ListPicker.native.js.map +1 -0
- package/dist/jsx/toolbar/MoreDropdown.mjs +176 -0
- package/dist/jsx/toolbar/MoreDropdown.mjs.map +1 -0
- package/dist/jsx/toolbar/MoreDropdown.native.js +224 -0
- package/dist/jsx/toolbar/MoreDropdown.native.js.map +1 -0
- package/dist/jsx/toolbar/ResizeHandle.mjs +80 -0
- package/dist/jsx/toolbar/ResizeHandle.mjs.map +1 -0
- package/dist/jsx/toolbar/ResizeHandle.native.js +109 -0
- package/dist/jsx/toolbar/ResizeHandle.native.js.map +1 -0
- package/dist/jsx/toolbar/StatusBar.mjs +66 -0
- package/dist/jsx/toolbar/StatusBar.mjs.map +1 -0
- package/dist/jsx/toolbar/StatusBar.native.js +100 -0
- package/dist/jsx/toolbar/StatusBar.native.js.map +1 -0
- package/dist/jsx/toolbar/TableBubble.mjs +207 -0
- package/dist/jsx/toolbar/TableBubble.mjs.map +1 -0
- package/dist/jsx/toolbar/TableBubble.native.js +273 -0
- package/dist/jsx/toolbar/TableBubble.native.js.map +1 -0
- package/dist/jsx/toolbar/ToolbarButton.mjs +79 -0
- package/dist/jsx/toolbar/ToolbarButton.mjs.map +1 -0
- package/dist/jsx/toolbar/ToolbarButton.native.js +97 -0
- package/dist/jsx/toolbar/ToolbarButton.native.js.map +1 -0
- package/dist/jsx/toolbar/ToolbarGroup.mjs +16 -0
- package/dist/jsx/toolbar/ToolbarGroup.mjs.map +1 -0
- package/dist/jsx/toolbar/ToolbarGroup.native.js +45 -0
- package/dist/jsx/toolbar/ToolbarGroup.native.js.map +1 -0
- package/dist/jsx/toolbar/icons.mjs +554 -0
- package/dist/jsx/toolbar/icons.mjs.map +1 -0
- package/dist/jsx/toolbar/icons.native.js +165 -0
- package/dist/jsx/toolbar/icons.native.js.map +1 -0
- package/dist/jsx/toolbar/shortcuts.mjs +36 -0
- package/dist/jsx/toolbar/shortcuts.mjs.map +1 -0
- package/dist/jsx/toolbar/shortcuts.native.js +66 -0
- package/dist/jsx/toolbar/shortcuts.native.js.map +1 -0
- package/dist/jsx/toolbar/useHorizontalScroll.mjs +223 -0
- package/dist/jsx/toolbar/useHorizontalScroll.mjs.map +1 -0
- package/dist/jsx/toolbar/useHorizontalScroll.native.js +260 -0
- package/dist/jsx/toolbar/useHorizontalScroll.native.js.map +1 -0
- package/dist/jsx/types.mjs +31 -0
- package/dist/jsx/types.mjs.map +1 -0
- package/dist/jsx/types.native.js +59 -0
- package/dist/jsx/types.native.js.map +1 -0
- package/package.json +117 -0
- package/src/RichEditor.native.tsx +161 -0
- package/src/RichEditor.stories.tsx +324 -0
- package/src/RichEditor.tsx +185 -0
- package/src/RichTextEditor/index.tsx +245 -0
- package/src/RichTextEditor/richTextEditor.spec.tsx +239 -0
- package/src/constants.ts +100 -0
- package/src/context.spec.ts +9 -0
- package/src/context.ts +16 -0
- package/src/editor/BlockDragHandle.ts +141 -0
- package/src/editor/MarkdownPaste.ts +50 -0
- package/src/editor/SlashCommands.tsx +357 -0
- package/src/editor/TentapEditor.native.tsx +269 -0
- package/src/editor/TiptapEditor.tsx +616 -0
- package/src/editor/editorStyles.spec.ts +24 -0
- package/src/editor/editorStyles.ts +260 -0
- package/src/editor/index.ts +10 -0
- package/src/editor/tentapEditor.spec.ts +125 -0
- package/src/editor/tiptapEditor.spec.tsx +169 -0
- package/src/editor/types.ts +142 -0
- package/src/editor/useEditorState.spec.ts +93 -0
- package/src/editor/useEditorState.ts +125 -0
- package/src/exports.spec.ts +128 -0
- package/src/index.ts +13 -0
- package/src/integration.spec.tsx +430 -0
- package/src/richEditor.spec.tsx +169 -0
- package/src/styled.spec.tsx +42 -0
- package/src/styled.ts +177 -0
- package/src/toolbar/BubbleToolbar.tsx +151 -0
- package/src/toolbar/CodeBlockBubble.tsx +141 -0
- package/src/toolbar/ColorPicker.tsx +211 -0
- package/src/toolbar/FixedToolbar.native.tsx +381 -0
- package/src/toolbar/FixedToolbar.tsx +252 -0
- package/src/toolbar/HeadingPicker.tsx +169 -0
- package/src/toolbar/ImageBubble.tsx +126 -0
- package/src/toolbar/ImageDialog.tsx +93 -0
- package/src/toolbar/LinkBubble.tsx +166 -0
- package/src/toolbar/LinkDialog.tsx +124 -0
- package/src/toolbar/ListPicker.tsx +121 -0
- package/src/toolbar/MoreDropdown.tsx +185 -0
- package/src/toolbar/ResizeHandle.tsx +80 -0
- package/src/toolbar/StatusBar.tsx +76 -0
- package/src/toolbar/TableBubble.tsx +197 -0
- package/src/toolbar/ToolbarButton.native.tsx +105 -0
- package/src/toolbar/ToolbarButton.tsx +114 -0
- package/src/toolbar/ToolbarGroup.tsx +38 -0
- package/src/toolbar/bubbleToolbar.spec.tsx +93 -0
- package/src/toolbar/fixedToolbar.spec.tsx +127 -0
- package/src/toolbar/icons.native.tsx +112 -0
- package/src/toolbar/icons.tsx +417 -0
- package/src/toolbar/shortcuts.ts +42 -0
- package/src/toolbar/toolbarPrimitives.spec.tsx +118 -0
- package/src/toolbar/toolbarSubComponents.spec.tsx +115 -0
- package/src/toolbar/useHorizontalScroll.tsx +270 -0
- package/src/types.spec.ts +102 -0
- package/src/types.ts +217 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
3
|
+
import { View } from "tamagui";
|
|
4
|
+
import { LinearGradient } from "@tamagui/linear-gradient";
|
|
5
|
+
import { CaretLeftIcon, CaretRightIcon } from "@phosphor-icons/react";
|
|
6
|
+
var scrollArrowThreshold = 8;
|
|
7
|
+
function useHorizontalScroll(ref) {
|
|
8
|
+
useEffect(function () {
|
|
9
|
+
var el = ref.current;
|
|
10
|
+
if (!el) return;
|
|
11
|
+
var handleWheel = function handleWheel2(e) {
|
|
12
|
+
var delta = e.deltaY !== 0 ? e.deltaY : e.deltaX;
|
|
13
|
+
if (delta !== 0 && el.scrollWidth > el.clientWidth) {
|
|
14
|
+
e.preventDefault();
|
|
15
|
+
el.scrollLeft += delta;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
var isDown = false;
|
|
19
|
+
var isDragging = false;
|
|
20
|
+
var startX = 0;
|
|
21
|
+
var scrollLeft = 0;
|
|
22
|
+
var handleMouseDown = function handleMouseDown2(e) {
|
|
23
|
+
if (e.button !== 0) return;
|
|
24
|
+
isDown = true;
|
|
25
|
+
isDragging = false;
|
|
26
|
+
startX = e.clientX;
|
|
27
|
+
scrollLeft = el.scrollLeft;
|
|
28
|
+
};
|
|
29
|
+
var handleMouseUp = function handleMouseUp2(e) {
|
|
30
|
+
if (isDragging) {
|
|
31
|
+
e.preventDefault();
|
|
32
|
+
e.stopPropagation();
|
|
33
|
+
}
|
|
34
|
+
isDown = false;
|
|
35
|
+
isDragging = false;
|
|
36
|
+
};
|
|
37
|
+
var handleMouseMove = function handleMouseMove2(e) {
|
|
38
|
+
if (!isDown) return;
|
|
39
|
+
var x = e.clientX;
|
|
40
|
+
var diff = Math.abs(x - startX);
|
|
41
|
+
if (diff > 5) {
|
|
42
|
+
isDragging = true;
|
|
43
|
+
e.preventDefault();
|
|
44
|
+
var walk = x - startX;
|
|
45
|
+
el.scrollLeft = scrollLeft - walk;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
el.addEventListener("wheel", handleWheel, {
|
|
49
|
+
passive: false
|
|
50
|
+
});
|
|
51
|
+
el.addEventListener("mousedown", handleMouseDown, {
|
|
52
|
+
capture: true
|
|
53
|
+
});
|
|
54
|
+
el.addEventListener("mouseup", handleMouseUp, {
|
|
55
|
+
capture: true
|
|
56
|
+
});
|
|
57
|
+
el.addEventListener("mousemove", handleMouseMove);
|
|
58
|
+
document.addEventListener("mouseup", function () {
|
|
59
|
+
isDown = false;
|
|
60
|
+
isDragging = false;
|
|
61
|
+
});
|
|
62
|
+
return function () {
|
|
63
|
+
el.removeEventListener("wheel", handleWheel);
|
|
64
|
+
el.removeEventListener("mousedown", handleMouseDown, {
|
|
65
|
+
capture: true
|
|
66
|
+
});
|
|
67
|
+
el.removeEventListener("mouseup", handleMouseUp, {
|
|
68
|
+
capture: true
|
|
69
|
+
});
|
|
70
|
+
el.removeEventListener("mousemove", handleMouseMove);
|
|
71
|
+
};
|
|
72
|
+
}, [ref]);
|
|
73
|
+
}
|
|
74
|
+
function useHorizontalScrollArrows() {
|
|
75
|
+
var [arrowLeft, setArrowLeft] = useState(false);
|
|
76
|
+
var [arrowRight, setArrowRight] = useState(false);
|
|
77
|
+
var arrowScrollDirRef = useRef(null);
|
|
78
|
+
var updateArrows = useCallback(function (element) {
|
|
79
|
+
var left = element.scrollLeft > scrollArrowThreshold;
|
|
80
|
+
var right = element.scrollLeft < element.scrollWidth - element.clientWidth - scrollArrowThreshold;
|
|
81
|
+
setArrowLeft(function (prev) {
|
|
82
|
+
return prev !== left ? left : prev;
|
|
83
|
+
});
|
|
84
|
+
setArrowRight(function (prev) {
|
|
85
|
+
return prev !== right ? right : prev;
|
|
86
|
+
});
|
|
87
|
+
}, []);
|
|
88
|
+
return {
|
|
89
|
+
arrowLeft,
|
|
90
|
+
arrowRight,
|
|
91
|
+
arrowScrollDirRef,
|
|
92
|
+
updateArrows
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
function HorizontalScrollArrow(param) {
|
|
96
|
+
var {
|
|
97
|
+
direction,
|
|
98
|
+
scrollRef,
|
|
99
|
+
visible,
|
|
100
|
+
arrowScrollDirRef,
|
|
101
|
+
transition
|
|
102
|
+
} = param;
|
|
103
|
+
var isLeft = direction === "left";
|
|
104
|
+
var animationFrameRef = useRef(0);
|
|
105
|
+
var lastTimeRef = useRef(0);
|
|
106
|
+
var resumeTimerRef = useRef(null);
|
|
107
|
+
var hoveringRef = useRef(false);
|
|
108
|
+
var activeRef = useRef(false);
|
|
109
|
+
var selfScrollingRef = useRef(false);
|
|
110
|
+
var resumeDelay = 100;
|
|
111
|
+
var stopLoop = useCallback(function () {
|
|
112
|
+
activeRef.current = false;
|
|
113
|
+
cancelAnimationFrame(animationFrameRef.current);
|
|
114
|
+
animationFrameRef.current = 0;
|
|
115
|
+
}, []);
|
|
116
|
+
var startLoop = useCallback(function () {
|
|
117
|
+
if (activeRef.current || !hoveringRef.current) return;
|
|
118
|
+
activeRef.current = true;
|
|
119
|
+
lastTimeRef.current = performance.now();
|
|
120
|
+
var tick = function tick1() {
|
|
121
|
+
var el = scrollRef.current;
|
|
122
|
+
if (!el || !hoveringRef.current || !activeRef.current) {
|
|
123
|
+
activeRef.current = false;
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
var now = performance.now();
|
|
127
|
+
var elapsed = now - lastTimeRef.current;
|
|
128
|
+
lastTimeRef.current = now;
|
|
129
|
+
var px = Math.min(elapsed / 2, Math.max(isLeft ? el.scrollLeft : el.scrollWidth - el.clientWidth - el.scrollLeft, 0));
|
|
130
|
+
if (px > 0) {
|
|
131
|
+
selfScrollingRef.current = true;
|
|
132
|
+
arrowScrollDirRef.current = isLeft ? "left" : "right";
|
|
133
|
+
el.scrollLeft += isLeft ? -px : px;
|
|
134
|
+
}
|
|
135
|
+
animationFrameRef.current = requestAnimationFrame(tick);
|
|
136
|
+
};
|
|
137
|
+
animationFrameRef.current = requestAnimationFrame(tick);
|
|
138
|
+
}, [isLeft, scrollRef, arrowScrollDirRef]);
|
|
139
|
+
var openTimestampRef = useRef(0);
|
|
140
|
+
useEffect(function () {
|
|
141
|
+
openTimestampRef.current = performance.now();
|
|
142
|
+
}, [visible]);
|
|
143
|
+
var handlePointerEnter = useCallback(function () {
|
|
144
|
+
hoveringRef.current = true;
|
|
145
|
+
var elapsed = performance.now() - openTimestampRef.current;
|
|
146
|
+
var wasOverOnOpen = elapsed < 80;
|
|
147
|
+
if (wasOverOnOpen) {
|
|
148
|
+
if (resumeTimerRef.current) clearTimeout(resumeTimerRef.current);
|
|
149
|
+
resumeTimerRef.current = setTimeout(function () {
|
|
150
|
+
resumeTimerRef.current = null;
|
|
151
|
+
if (hoveringRef.current) startLoop();
|
|
152
|
+
}, 600);
|
|
153
|
+
} else {
|
|
154
|
+
startLoop();
|
|
155
|
+
}
|
|
156
|
+
}, [startLoop]);
|
|
157
|
+
var handlePointerLeave = useCallback(function () {
|
|
158
|
+
hoveringRef.current = false;
|
|
159
|
+
if (resumeTimerRef.current) {
|
|
160
|
+
clearTimeout(resumeTimerRef.current);
|
|
161
|
+
resumeTimerRef.current = null;
|
|
162
|
+
}
|
|
163
|
+
stopLoop();
|
|
164
|
+
}, [stopLoop]);
|
|
165
|
+
useEffect(function () {
|
|
166
|
+
var el = scrollRef.current;
|
|
167
|
+
if (!el || !visible) return;
|
|
168
|
+
var onScroll = function onScroll2() {
|
|
169
|
+
if (selfScrollingRef.current) {
|
|
170
|
+
selfScrollingRef.current = false;
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
if (!hoveringRef.current) return;
|
|
174
|
+
stopLoop();
|
|
175
|
+
if (resumeTimerRef.current) clearTimeout(resumeTimerRef.current);
|
|
176
|
+
resumeTimerRef.current = setTimeout(function () {
|
|
177
|
+
resumeTimerRef.current = null;
|
|
178
|
+
if (hoveringRef.current) startLoop();
|
|
179
|
+
}, resumeDelay);
|
|
180
|
+
};
|
|
181
|
+
el.addEventListener("scroll", onScroll, {
|
|
182
|
+
passive: true
|
|
183
|
+
});
|
|
184
|
+
return function () {
|
|
185
|
+
return el.removeEventListener("scroll", onScroll);
|
|
186
|
+
};
|
|
187
|
+
}, [scrollRef, visible, startLoop, stopLoop]);
|
|
188
|
+
useEffect(function () {
|
|
189
|
+
return function () {
|
|
190
|
+
handlePointerLeave();
|
|
191
|
+
};
|
|
192
|
+
}, [handlePointerLeave]);
|
|
193
|
+
var Icon = isLeft ? CaretLeftIcon : CaretRightIcon;
|
|
194
|
+
return /* @__PURE__ */_jsxs(View, {
|
|
195
|
+
position: "absolute",
|
|
196
|
+
[isLeft ? "left" : "right"]: 0,
|
|
197
|
+
top: 0,
|
|
198
|
+
bottom: 0,
|
|
199
|
+
width: 28,
|
|
200
|
+
alignItems: "center",
|
|
201
|
+
justifyContent: "center",
|
|
202
|
+
zIndex: 2,
|
|
203
|
+
pointerEvents: visible ? "auto" : "none",
|
|
204
|
+
opacity: visible ? 1 : 0,
|
|
205
|
+
...(transition ? {
|
|
206
|
+
animation: transition
|
|
207
|
+
} : void 0),
|
|
208
|
+
onPointerEnter: visible ? handlePointerEnter : void 0,
|
|
209
|
+
onPointerLeave: handlePointerLeave,
|
|
210
|
+
"data-testid": `toolbar-scroll-arrow-${direction}`,
|
|
211
|
+
children: [/* @__PURE__ */_jsx(LinearGradient, {
|
|
212
|
+
position: "absolute",
|
|
213
|
+
top: 0,
|
|
214
|
+
left: 0,
|
|
215
|
+
right: 0,
|
|
216
|
+
bottom: 0,
|
|
217
|
+
colors: isLeft ? ["$color3", "transparent"] : ["transparent", "$color3"],
|
|
218
|
+
start: isLeft ? [0, 0] : [0.6, 0],
|
|
219
|
+
end: isLeft ? [0.6, 0] : [1, 0]
|
|
220
|
+
}), /* @__PURE__ */_jsx(View, {
|
|
221
|
+
position: "relative",
|
|
222
|
+
zIndex: 1,
|
|
223
|
+
children: /* @__PURE__ */_jsx(Icon, {
|
|
224
|
+
size: 16
|
|
225
|
+
})
|
|
226
|
+
})]
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
export { HorizontalScrollArrow, useHorizontalScroll, useHorizontalScrollArrows };
|
|
230
|
+
//# sourceMappingURL=useHorizontalScroll.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useCallback","useEffect","useRef","useState","View","LinearGradient","CaretLeftIcon","CaretRightIcon","scrollArrowThreshold","useHorizontalScroll","ref","el","current","handleWheel","handleWheel2","e","delta","deltaY","deltaX","scrollWidth","clientWidth","preventDefault","scrollLeft","isDown","isDragging","startX","handleMouseDown","handleMouseDown2","button","clientX","handleMouseUp","handleMouseUp2","stopPropagation","handleMouseMove","handleMouseMove2","x","diff","Math","abs","walk","addEventListener","passive","capture","document","removeEventListener","useHorizontalScrollArrows","arrowLeft","setArrowLeft","arrowRight","setArrowRight","arrowScrollDirRef","updateArrows","element","left","right","prev","HorizontalScrollArrow","param","direction","scrollRef","visible","transition","isLeft","animationFrameRef","lastTimeRef","resumeTimerRef","hoveringRef","activeRef","selfScrollingRef","resumeDelay","stopLoop","cancelAnimationFrame","startLoop","performance","now","tick","tick1","elapsed","px","min","max","requestAnimationFrame","openTimestampRef","handlePointerEnter","wasOverOnOpen","clearTimeout","setTimeout","handlePointerLeave","onScroll","onScroll2","Icon","position"],"sources":["../../../src/toolbar/useHorizontalScroll.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
const defaultEditorState = {
|
|
2
|
+
isBold: false,
|
|
3
|
+
isItalic: false,
|
|
4
|
+
isUnderline: false,
|
|
5
|
+
isStrike: false,
|
|
6
|
+
isCode: false,
|
|
7
|
+
isSubscript: false,
|
|
8
|
+
isSuperscript: false,
|
|
9
|
+
isHeading1: false,
|
|
10
|
+
isHeading2: false,
|
|
11
|
+
isHeading3: false,
|
|
12
|
+
isHeading4: false,
|
|
13
|
+
isHeading5: false,
|
|
14
|
+
isHeading6: false,
|
|
15
|
+
isParagraph: true,
|
|
16
|
+
isBulletList: false,
|
|
17
|
+
isOrderedList: false,
|
|
18
|
+
isTaskList: false,
|
|
19
|
+
isBlockquote: false,
|
|
20
|
+
isCodeBlock: false,
|
|
21
|
+
isLink: false,
|
|
22
|
+
canUndo: false,
|
|
23
|
+
canRedo: false,
|
|
24
|
+
textAlign: "left",
|
|
25
|
+
textColor: null,
|
|
26
|
+
highlightColor: null,
|
|
27
|
+
wordCount: 0,
|
|
28
|
+
characterCount: 0
|
|
29
|
+
};
|
|
30
|
+
export { defaultEditorState };
|
|
31
|
+
//# sourceMappingURL=types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["defaultEditorState","isBold","isItalic","isUnderline","isStrike","isCode","isSubscript","isSuperscript","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isParagraph","isBulletList","isOrderedList","isTaskList","isBlockquote","isCodeBlock","isLink","canUndo","canRedo","textAlign","textColor","highlightColor","wordCount","characterCount"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AA8FO,MAAMA,kBAAA,GAAkC;EAC7CC,MAAA,EAAQ;EACRC,QAAA,EAAU;EACVC,WAAA,EAAa;EACbC,QAAA,EAAU;EACVC,MAAA,EAAQ;EACRC,WAAA,EAAa;EACbC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,YAAA,EAAc;EACdC,WAAA,EAAa;EACbC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,SAAA,EAAW;EACXC,SAAA,EAAW;EACXC,cAAA,EAAgB;EAChBC,SAAA,EAAW;EACXC,cAAA,EAAgB;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var defaultEditorState = {
|
|
2
|
+
isBold: false,
|
|
3
|
+
isItalic: false,
|
|
4
|
+
isUnderline: false,
|
|
5
|
+
isStrike: false,
|
|
6
|
+
isCode: false,
|
|
7
|
+
isSubscript: false,
|
|
8
|
+
isSuperscript: false,
|
|
9
|
+
isHeading1: false,
|
|
10
|
+
isHeading2: false,
|
|
11
|
+
isHeading3: false,
|
|
12
|
+
isHeading4: false,
|
|
13
|
+
isHeading5: false,
|
|
14
|
+
isHeading6: false,
|
|
15
|
+
isParagraph: true,
|
|
16
|
+
isBulletList: false,
|
|
17
|
+
isOrderedList: false,
|
|
18
|
+
isTaskList: false,
|
|
19
|
+
isBlockquote: false,
|
|
20
|
+
isCodeBlock: false,
|
|
21
|
+
isLink: false,
|
|
22
|
+
canUndo: false,
|
|
23
|
+
canRedo: false,
|
|
24
|
+
textAlign: "left",
|
|
25
|
+
textColor: null,
|
|
26
|
+
highlightColor: null,
|
|
27
|
+
wordCount: 0,
|
|
28
|
+
characterCount: 0
|
|
29
|
+
};
|
|
30
|
+
export { defaultEditorState };
|
|
31
|
+
//# sourceMappingURL=types.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["defaultEditorState","isBold","isItalic","isUnderline","isStrike","isCode","isSubscript","isSuperscript","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isParagraph","isBulletList","isOrderedList","isTaskList","isBlockquote","isCodeBlock","isLink","canUndo","canRedo","textAlign","textColor","highlightColor","wordCount","characterCount"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AA8FO,IAAAA,kBAAM;EACXC,MAAA,EAAQ;EACRC,QAAA,EAAU;EACVC,WAAA,EAAa;EACbC,QAAA,EAAU;EACVC,MAAA,EAAQ;EACRC,WAAA,EAAa;EACbC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,YAAA,EAAc;EACdC,WAAA,EAAa;EACbC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,SAAA,EAAW;EACXC,SAAA,EAAW;EACXC,cAAA,EAAgB;EAChBC,SAAA,EAAW;EACXC,cAAA,EAAgB;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, useState } from "react";
|
|
2
|
+
import { getConfig, withStaticProperties } from "tamagui";
|
|
3
|
+
import { useResolvedKnobs } from "@multiplatform.one/theme";
|
|
4
|
+
import { clampRadiusForLargeComponent } from "@multiplatform.one/forms";
|
|
5
|
+
import { defaultEditorState } from "./types.mjs";
|
|
6
|
+
import { RichEditorContext } from "./context.mjs";
|
|
7
|
+
import { EditorFrame } from "./styled.mjs";
|
|
8
|
+
import { TiptapEditor } from "./editor/TiptapEditor.mjs";
|
|
9
|
+
import { FixedToolbar } from "./toolbar/FixedToolbar.mjs";
|
|
10
|
+
import { BubbleToolbar } from "./toolbar/BubbleToolbar.mjs";
|
|
11
|
+
import { ResizeHandle } from "./toolbar/ResizeHandle.mjs";
|
|
12
|
+
import { StatusBar } from "./toolbar/StatusBar.mjs";
|
|
13
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
const RichEditorImpl = forwardRef(({
|
|
15
|
+
size,
|
|
16
|
+
compact = false,
|
|
17
|
+
showToolbar = true,
|
|
18
|
+
showBubbleToolbar = false,
|
|
19
|
+
resizable = true,
|
|
20
|
+
showStatusBar = true,
|
|
21
|
+
sections,
|
|
22
|
+
hasError,
|
|
23
|
+
editable = true,
|
|
24
|
+
onStateChange,
|
|
25
|
+
...editorProps
|
|
26
|
+
}, ref) => {
|
|
27
|
+
const internalRef = useRef(null);
|
|
28
|
+
const frameRef = useRef(null);
|
|
29
|
+
const [editorState, setEditorState] = useState(defaultEditorState);
|
|
30
|
+
const [editorMode, setEditorMode] = useState("richtext");
|
|
31
|
+
const {
|
|
32
|
+
knobProps
|
|
33
|
+
} = useResolvedKnobs({
|
|
34
|
+
component: "RichEditor",
|
|
35
|
+
size,
|
|
36
|
+
compact
|
|
37
|
+
});
|
|
38
|
+
const handleStateChange = useCallback(state => {
|
|
39
|
+
setEditorState(state);
|
|
40
|
+
onStateChange?.(state);
|
|
41
|
+
}, [onStateChange]);
|
|
42
|
+
useImperativeHandle(ref, () => internalRef.current, []);
|
|
43
|
+
const cappedRadius = clampRadiusForLargeComponent(knobProps.borderRadius.borderRadius, 4);
|
|
44
|
+
const {
|
|
45
|
+
bodyFontFamily,
|
|
46
|
+
headingFontFamily
|
|
47
|
+
} = useMemo(() => {
|
|
48
|
+
const fonts = getConfig()?.fonts;
|
|
49
|
+
const resolve = token => {
|
|
50
|
+
if (!token) return void 0;
|
|
51
|
+
const key = token.startsWith("$") ? token.slice(1) : token;
|
|
52
|
+
return fonts?.[key]?.family;
|
|
53
|
+
};
|
|
54
|
+
return {
|
|
55
|
+
bodyFontFamily: resolve(knobProps.body?.fontFamily),
|
|
56
|
+
headingFontFamily: resolve(knobProps.heading?.fontFamily)
|
|
57
|
+
};
|
|
58
|
+
}, [knobProps.body?.fontFamily, knobProps.heading?.fontFamily]);
|
|
59
|
+
const disabled = !editable;
|
|
60
|
+
return /* @__PURE__ */jsx(RichEditorContext.Provider, {
|
|
61
|
+
size: knobProps.sizeToken ?? "$true",
|
|
62
|
+
compact,
|
|
63
|
+
disabled,
|
|
64
|
+
children: /* @__PURE__ */jsxs(EditorFrame, {
|
|
65
|
+
ref: frameRef,
|
|
66
|
+
hasError,
|
|
67
|
+
borderRadius: cappedRadius,
|
|
68
|
+
borderWidth: knobProps.borderRadius.borderWidth,
|
|
69
|
+
borderColor: hasError ? "$red10" : "$color6",
|
|
70
|
+
backgroundColor: knobProps.inputBackground ?? "$color2",
|
|
71
|
+
disabled,
|
|
72
|
+
position: "relative",
|
|
73
|
+
children: [showToolbar && !disabled && editorMode === "richtext" && /* @__PURE__ */jsx(FixedToolbar, {
|
|
74
|
+
editorRef: internalRef,
|
|
75
|
+
state: editorState,
|
|
76
|
+
sections,
|
|
77
|
+
hasError
|
|
78
|
+
}), /* @__PURE__ */jsx(TiptapEditor, {
|
|
79
|
+
ref: internalRef,
|
|
80
|
+
...editorProps,
|
|
81
|
+
editable,
|
|
82
|
+
onStateChange: handleStateChange,
|
|
83
|
+
hasError: false,
|
|
84
|
+
showBubbleToolbar,
|
|
85
|
+
bodyFontFamily,
|
|
86
|
+
headingFontFamily,
|
|
87
|
+
editorMode
|
|
88
|
+
}), showStatusBar && /* @__PURE__ */jsx(StatusBar, {
|
|
89
|
+
state: editorState,
|
|
90
|
+
mode: editorMode,
|
|
91
|
+
onModeChange: setEditorMode
|
|
92
|
+
}), resizable && !disabled && /* @__PURE__ */jsx(ResizeHandle, {
|
|
93
|
+
containerRef: frameRef,
|
|
94
|
+
minHeight: editorProps.minHeight ?? 150,
|
|
95
|
+
maxHeight: editorProps.maxHeight
|
|
96
|
+
})]
|
|
97
|
+
})
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
RichEditorImpl.displayName = "RichEditor";
|
|
101
|
+
const RichEditor = withStaticProperties(RichEditorImpl, {
|
|
102
|
+
FixedToolbar,
|
|
103
|
+
BubbleToolbar,
|
|
104
|
+
Editor: TiptapEditor
|
|
105
|
+
});
|
|
106
|
+
export { RichEditor };
|
|
107
|
+
//# sourceMappingURL=RichEditor.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useImperativeHandle","useMemo","useRef","useState","getConfig","withStaticProperties","useResolvedKnobs","clampRadiusForLargeComponent","defaultEditorState","RichEditorContext","EditorFrame","TiptapEditor","FixedToolbar","BubbleToolbar","ResizeHandle","StatusBar","jsx","jsxs","RichEditorImpl","size","compact","showToolbar","showBubbleToolbar","resizable","showStatusBar","sections","hasError","editable","onStateChange","editorProps","ref","internalRef","frameRef","editorState","setEditorState","editorMode","setEditorMode","knobProps","component","handleStateChange","state","current","cappedRadius","borderRadius","bodyFontFamily","headingFontFamily","fonts","resolve","token","key","startsWith","slice","family","body","fontFamily","heading","disabled","Provider","sizeToken","children","borderWidth","borderColor","backgroundColor","inputBackground","position","editorRef","mode","onModeChange","containerRef","minHeight","maxHeight","displayName","RichEditor","Editor"],"sources":["../../src/RichEditor.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var RichEditor_native_exports = {};
|
|
26
|
+
__export(RichEditor_native_exports, {
|
|
27
|
+
RichEditor: () => RichEditor
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(RichEditor_native_exports);
|
|
30
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
+
var import_react = require("react");
|
|
32
|
+
var import_tamagui = require("tamagui");
|
|
33
|
+
var import_theme = require("@multiplatform.one/theme");
|
|
34
|
+
var import_forms = require("@multiplatform.one/forms");
|
|
35
|
+
var import_types = require("./types.native.js");
|
|
36
|
+
var import_context = require("./context.native.js");
|
|
37
|
+
var import_styled = require("./styled.native.js");
|
|
38
|
+
var import_FixedToolbar = require("./toolbar/FixedToolbar.native.js");
|
|
39
|
+
function NativeBubbleToolbar() {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
var TentapEditor = null;
|
|
43
|
+
try {
|
|
44
|
+
TentapEditor = require("./editor/TentapEditor.native").TentapEditor;
|
|
45
|
+
} catch (unused) {}
|
|
46
|
+
var RichEditorImpl = /* @__PURE__ */(0, import_react.forwardRef)(function (param, ref) {
|
|
47
|
+
var {
|
|
48
|
+
size,
|
|
49
|
+
compact = false,
|
|
50
|
+
showToolbar = true,
|
|
51
|
+
showBubbleToolbar: _showBubbleToolbar,
|
|
52
|
+
sections,
|
|
53
|
+
hasError,
|
|
54
|
+
editable = true,
|
|
55
|
+
onStateChange,
|
|
56
|
+
minHeight = 150,
|
|
57
|
+
...editorProps
|
|
58
|
+
} = param;
|
|
59
|
+
var _knobProps_sizeToken;
|
|
60
|
+
var internalRef = (0, import_react.useRef)(null);
|
|
61
|
+
var [editorState, setEditorState] = (0, import_react.useState)(import_types.defaultEditorState);
|
|
62
|
+
var {
|
|
63
|
+
knobProps
|
|
64
|
+
} = (0, import_theme.useResolvedKnobs)({
|
|
65
|
+
component: "RichEditor",
|
|
66
|
+
size,
|
|
67
|
+
compact
|
|
68
|
+
});
|
|
69
|
+
var handleStateChange = (0, import_react.useCallback)(function (state) {
|
|
70
|
+
setEditorState(state);
|
|
71
|
+
onStateChange === null || onStateChange === void 0 ? void 0 : onStateChange(state);
|
|
72
|
+
}, [onStateChange]);
|
|
73
|
+
(0, import_react.useImperativeHandle)(ref, function () {
|
|
74
|
+
return internalRef.current;
|
|
75
|
+
}, []);
|
|
76
|
+
var cappedRadius = (0, import_forms.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius, 4);
|
|
77
|
+
var disabled = !editable;
|
|
78
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.RichEditorContext.Provider, {
|
|
79
|
+
size: (_knobProps_sizeToken = knobProps.sizeToken) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : "$true",
|
|
80
|
+
compact,
|
|
81
|
+
disabled,
|
|
82
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_styled.EditorFrame, {
|
|
83
|
+
hasError,
|
|
84
|
+
borderRadius: cappedRadius,
|
|
85
|
+
borderWidth: knobProps.borderRadius.borderWidth,
|
|
86
|
+
borderColor: hasError ? "$red10" : "$color6",
|
|
87
|
+
disabled,
|
|
88
|
+
children: [showToolbar && !disabled && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FixedToolbar.FixedToolbar, {
|
|
89
|
+
editorRef: internalRef,
|
|
90
|
+
state: editorState,
|
|
91
|
+
sections,
|
|
92
|
+
hasError
|
|
93
|
+
}), TentapEditor ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(TentapEditor, {
|
|
94
|
+
ref: internalRef,
|
|
95
|
+
minHeight,
|
|
96
|
+
...editorProps,
|
|
97
|
+
editable,
|
|
98
|
+
onStateChange: handleStateChange,
|
|
99
|
+
hasError: false
|
|
100
|
+
}) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
101
|
+
minHeight,
|
|
102
|
+
padding: knobProps.panelPadding.padding,
|
|
103
|
+
justifyContent: "center",
|
|
104
|
+
alignItems: "center",
|
|
105
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
106
|
+
color: "$colorSubtle",
|
|
107
|
+
fontSize: knobProps.sizeToken,
|
|
108
|
+
children: "Rich text editor requires a development build"
|
|
109
|
+
})
|
|
110
|
+
})]
|
|
111
|
+
})
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
RichEditorImpl.displayName = "RichEditor";
|
|
115
|
+
var RichEditor = (0, import_tamagui.withStaticProperties)(RichEditorImpl, {
|
|
116
|
+
FixedToolbar: import_FixedToolbar.FixedToolbar,
|
|
117
|
+
BubbleToolbar: NativeBubbleToolbar,
|
|
118
|
+
Editor: TentapEditor !== null && TentapEditor !== void 0 ? TentapEditor : import_tamagui.View
|
|
119
|
+
});
|
|
120
|
+
//# sourceMappingURL=RichEditor.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["RichEditor_native_exports","__export","RichEditor","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_tamagui","import_theme","import_forms","import_types","import_context","import_styled","import_FixedToolbar","NativeBubbleToolbar","TentapEditor","unused","RichEditorImpl","forwardRef","param","ref","size","compact","showToolbar","showBubbleToolbar","_showBubbleToolbar","sections","hasError","editable","onStateChange","minHeight","editorProps","_knobProps_sizeToken","internalRef","useRef","editorState","setEditorState","useState","defaultEditorState","knobProps","useResolvedKnobs","component","handleStateChange","useCallback","state","useImperativeHandle","current","cappedRadius","clampRadiusForLargeComponent","borderRadius","disabled","jsx","RichEditorContext","Provider","sizeToken","children","jsxs","EditorFrame","borderWidth","borderColor","FixedToolbar","editorRef","View","padding","panelPadding","justifyContent","alignItems","Text","color","fontSize","displayName","withStaticProperties","BubbleToolbar","Editor"],"sources":["../../src/RichEditor.native.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,yBAAA;AAAAC,QAAA,CAAAD,yBAAA;EAAAE,UAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAC,YAAA,CAAAL,yBAAA;AAAA,IAAAM,kBAAA,GAA2CC,OAAA;AAUvC,IAAAC,YAAA,GAA+ED,OAAA;AACnF,IAAAE,cAAA,GAAiDF,OAAA;AACjD,IAAAG,YAAA,GAAiCH,OAAA;AACjC,IAAAI,YAAA,GAA6CJ,OAAA;AAC7C,IAAAK,YAAA,GAAmCL,OAAA;AACnC,IAAAM,cAAA,GAAkCN,OAAA;AAClC,IAAAO,aAAA,GAA4BP,OAAA;AAC5B,IAAAQ,mBAAA,GAA6BR,OAAA;AAOkD,SAASS,oBAAA,EAAsB;EAC1G,OAAO;AACX;AAIA,IAAIC,YAAA,GAAe;AACnB,IAAI;EACAA,YAAA,GAAeV,OAAA,CAAQ,8BAA8B,EAAEU,YAAA;AAC3D,SAASC,MAAA,EAAQ,CAAC;AAKlB,IAAIC,cAAA,GAA+B,mBAAAX,YAAA,CAAAY,UAAA,EAAW,UAASC,KAAA,EAAOC,GAAA,EAAK;EAC/D,IAAI;IAAEC,IAAA;IAAMC,OAAA,GAAU;IAAOC,WAAA,GAAc;IAAMC,iBAAA,EAAmBC,kBAAA;IAAoBC,QAAA;IAAUC,QAAA;IAAUC,QAAA,GAAW;IAAMC,aAAA;IAAeC,SAAA,GAAY;IAAK,GAAGC;EAAY,IAAIZ,KAAA;EAChL,IAAIa,oBAAA;EACJ,IAAIC,WAAA,OAAc3B,YAAA,CAAA4B,MAAA,EAAO,IAAI;EAC7B,IAAI,CAACC,WAAA,EAAaC,cAAc,QAAI9B,YAAA,CAAA+B,QAAA,EAAS3B,YAAA,CAAA4B,kBAAkB;EAC/D,IAAI;IAAEC;EAAU,QAAI/B,YAAA,CAAAgC,gBAAA,EAAiB;IACjCC,SAAA,EAAW;IACXpB,IAAA;IACAC;EACJ,CAAC;EACD,IAAIoB,iBAAA,OAAoBpC,YAAA,CAAAqC,WAAA,EAAY,UAASC,KAAA,EAAO;IAChDR,cAAA,CAAeQ,KAAK;IACpBf,aAAA,KAAkB,QAAQA,aAAA,KAAkB,SAAS,SAASA,aAAA,CAAce,KAAK;EACrF,GAAG,CACCf,aAAA,CACH;EACD,IAAAvB,YAAA,CAAAuC,mBAAA,EAAoBzB,GAAA,EAAK,YAAW;IAChC,OAAOa,WAAA,CAAYa,OAAA;EACvB,GAAG,EAAE;EACL,IAAIC,YAAA,OAAetC,YAAA,CAAAuC,4BAAA,EAA6BT,SAAA,CAAUU,YAAA,CAAaA,YAAA,EAAc,CAAC;EACtF,IAAIC,QAAA,GAAW,CAACtB,QAAA;EAChB,OAAqB,mBAAAxB,kBAAA,CAAA+C,GAAA,EAAKxC,cAAA,CAAAyC,iBAAA,CAAkBC,QAAA,EAAU;IAClDhC,IAAA,GAAOW,oBAAA,GAAuBO,SAAA,CAAUe,SAAA,MAAe,QAAQtB,oBAAA,KAAyB,SAASA,oBAAA,GAAuB;IACxHV,OAAA;IACA4B,QAAA;IACAK,QAAA,EAAwB,mBAAAnD,kBAAA,CAAAoD,IAAA,EAAM5C,aAAA,CAAA6C,WAAA,EAAa;MACvC9B,QAAA;MACAsB,YAAA,EAAcF,YAAA;MACdW,WAAA,EAAanB,SAAA,CAAUU,YAAA,CAAaS,WAAA;MACpCC,WAAA,EAAahC,QAAA,GAAW,WAAW;MACnCuB,QAAA;MACAK,QAAA,EAAU,CACNhC,WAAA,IAAe,CAAC2B,QAAA,IAA0B,mBAAA9C,kBAAA,CAAA+C,GAAA,EAAKtC,mBAAA,CAAA+C,YAAA,EAAc;QACzDC,SAAA,EAAW5B,WAAA;QACXW,KAAA,EAAOT,WAAA;QACPT,QAAA;QACAC;MACJ,CAAC,GACDZ,YAAA,GAA6B,mBAAAX,kBAAA,CAAA+C,GAAA,EAAKpC,YAAA,EAAc;QAC5CK,GAAA,EAAKa,WAAA;QACLH,SAAA;QACA,GAAGC,WAAA;QACHH,QAAA;QACAC,aAAA,EAAea,iBAAA;QACff,QAAA,EAAU;MACd,CAAC,IAAkB,mBAAAvB,kBAAA,CAAA+C,GAAA,EAAK5C,cAAA,CAAAuD,IAAA,EAAM;QAC1BhC,SAAA;QACAiC,OAAA,EAASxB,SAAA,CAAUyB,YAAA,CAAaD,OAAA;QAChCE,cAAA,EAAgB;QAChBC,UAAA,EAAY;QACZX,QAAA,EAAwB,mBAAAnD,kBAAA,CAAA+C,GAAA,EAAK5C,cAAA,CAAA4D,IAAA,EAAM;UAC/BC,KAAA,EAAO;UACPC,QAAA,EAAU9B,SAAA,CAAUe,SAAA;UACpBC,QAAA,EAAU;QACd,CAAC;MACL,CAAC;IAET,CAAC;EACL,CAAC;AACL,CAAC;AACDtC,cAAA,CAAeqD,WAAA,GAAc;AAItB,IAAItE,UAAA,OAAaO,cAAA,CAAAgE,oBAAA,EAAqBtD,cAAA,EAAgB;EACzD2C,YAAA,EAAA/C,mBAAA,CAAA+C,YAAA;EACAY,aAAA,EAAe1D,mBAAA;EACf2D,MAAA,EAAQ1D,YAAA,KAAiB,QAAQA,YAAA,KAAiB,SAASA,YAAA,GAAeR,cAAA,CAAAuD;AAC9E,CAAC","ignoreList":[]}
|