@sparrowengg/twigs-editor-react 0.0.1
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/README.md +38 -0
- package/dist/cjs/_virtual/_commonjsHelpers.js +8 -0
- package/dist/cjs/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/cjs/_virtual/assertString.js +6 -0
- package/dist/cjs/_virtual/assertString.js.map +1 -0
- package/dist/cjs/_virtual/isFQDN.js +6 -0
- package/dist/cjs/_virtual/isFQDN.js.map +1 -0
- package/dist/cjs/_virtual/isIP.js +6 -0
- package/dist/cjs/_virtual/isIP.js.map +1 -0
- package/dist/cjs/_virtual/isURL.js +12 -0
- package/dist/cjs/_virtual/isURL.js.map +1 -0
- package/dist/cjs/_virtual/isURL2.js +6 -0
- package/dist/cjs/_virtual/isURL2.js.map +1 -0
- package/dist/cjs/_virtual/merge.js +6 -0
- package/dist/cjs/_virtual/merge.js.map +1 -0
- package/dist/cjs/components/base-dropdown/index.js +175 -0
- package/dist/cjs/components/base-dropdown/index.js.map +1 -0
- package/dist/cjs/components/dialog-link-editor/index.js +291 -0
- package/dist/cjs/components/dialog-link-editor/index.js.map +1 -0
- package/dist/cjs/components/dialog-link-editor/link-editor-dialog.js +199 -0
- package/dist/cjs/components/dialog-link-editor/link-editor-dialog.js.map +1 -0
- package/dist/cjs/components/dialog-link-editor/link-tooltip.js +122 -0
- package/dist/cjs/components/dialog-link-editor/link-tooltip.js.map +1 -0
- package/dist/cjs/components/floating-toolbar/floating-toolbar.js +302 -0
- package/dist/cjs/components/floating-toolbar/floating-toolbar.js.map +1 -0
- package/dist/cjs/components/rich-editor/index.js +142 -0
- package/dist/cjs/components/rich-editor/index.js.map +1 -0
- package/dist/cjs/components/toolbar/toolbar.js +76 -0
- package/dist/cjs/components/toolbar/toolbar.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/bold.js +52 -0
- package/dist/cjs/components/toolbar/tools/bold.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/code-block.js +79 -0
- package/dist/cjs/components/toolbar/tools/code-block.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/code.js +54 -0
- package/dist/cjs/components/toolbar/tools/code.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/commons.js +16 -0
- package/dist/cjs/components/toolbar/tools/commons.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/format.js +136 -0
- package/dist/cjs/components/toolbar/tools/format.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/italic.js +57 -0
- package/dist/cjs/components/toolbar/tools/italic.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/link.js +71 -0
- package/dist/cjs/components/toolbar/tools/link.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/ordered-list.js +62 -0
- package/dist/cjs/components/toolbar/tools/ordered-list.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/text-align.js +82 -0
- package/dist/cjs/components/toolbar/tools/text-align.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/underline.js +57 -0
- package/dist/cjs/components/toolbar/tools/underline.js.map +1 -0
- package/dist/cjs/components/toolbar/tools/unordered-list.js +62 -0
- package/dist/cjs/components/toolbar/tools/unordered-list.js.map +1 -0
- package/dist/cjs/components/toolbar-context/context.js +148 -0
- package/dist/cjs/components/toolbar-context/context.js.map +1 -0
- package/dist/cjs/components/toolbar-context/store.js +75 -0
- package/dist/cjs/components/toolbar-context/store.js.map +1 -0
- package/dist/cjs/components/toolbar-context/utils.js +6 -0
- package/dist/cjs/components/toolbar-context/utils.js.map +1 -0
- package/dist/cjs/editor.js +154 -0
- package/dist/cjs/editor.js.map +1 -0
- package/dist/cjs/index.js +86 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/nodes/emoji.js +86 -0
- package/dist/cjs/nodes/emoji.js.map +1 -0
- package/dist/cjs/nodes/hashtag.js +109 -0
- package/dist/cjs/nodes/hashtag.js.map +1 -0
- package/dist/cjs/nodes/image.js +215 -0
- package/dist/cjs/nodes/image.js.map +1 -0
- package/dist/cjs/nodes/kudos.js +110 -0
- package/dist/cjs/nodes/kudos.js.map +1 -0
- package/dist/cjs/nodes/mention.js +109 -0
- package/dist/cjs/nodes/mention.js.map +1 -0
- package/dist/cjs/nodes/variables.js +109 -0
- package/dist/cjs/nodes/variables.js.map +1 -0
- package/dist/cjs/plugins/data-management-plugin/index.js +40 -0
- package/dist/cjs/plugins/data-management-plugin/index.js.map +1 -0
- package/dist/cjs/plugins/emoji/emoji-list.js +16609 -0
- package/dist/cjs/plugins/emoji/emoji-list.js.map +1 -0
- package/dist/cjs/plugins/emoji/index.js +126 -0
- package/dist/cjs/plugins/emoji/index.js.map +1 -0
- package/dist/cjs/plugins/hashtag/index.js +100 -0
- package/dist/cjs/plugins/hashtag/index.js.map +1 -0
- package/dist/cjs/plugins/images/index.js +164 -0
- package/dist/cjs/plugins/images/index.js.map +1 -0
- package/dist/cjs/plugins/images/utils.js +10 -0
- package/dist/cjs/plugins/images/utils.js.map +1 -0
- package/dist/cjs/plugins/link/auto-link.js +21 -0
- package/dist/cjs/plugins/link/auto-link.js.map +1 -0
- package/dist/cjs/plugins/link/convert-selection-on-paste.js +34 -0
- package/dist/cjs/plugins/link/convert-selection-on-paste.js.map +1 -0
- package/dist/cjs/plugins/link/link.js +68 -0
- package/dist/cjs/plugins/link/link.js.map +1 -0
- package/dist/cjs/plugins/mentions/index.js +108 -0
- package/dist/cjs/plugins/mentions/index.js.map +1 -0
- package/dist/cjs/plugins/tab-focus/index.js +54 -0
- package/dist/cjs/plugins/tab-focus/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/_virtual/_commonjsHelpers.js +8 -0
- package/dist/cjs/react-components/dist/es/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/cjs/react-components/dist/es/_virtual/index.js +6 -0
- package/dist/cjs/react-components/dist/es/_virtual/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/_virtual/index2.js +6 -0
- package/dist/cjs/react-components/dist/es/_virtual/index2.js.map +1 -0
- package/dist/cjs/react-components/dist/es/_virtual/react-is.development.js +6 -0
- package/dist/cjs/react-components/dist/es/_virtual/react-is.development.js.map +1 -0
- package/dist/cjs/react-components/dist/es/_virtual/react-is.production.min.js +6 -0
- package/dist/cjs/react-components/dist/es/_virtual/react-is.production.min.js.map +1 -0
- package/dist/cjs/react-components/dist/es/box/box.js +47 -0
- package/dist/cjs/react-components/dist/es/box/box.js.map +1 -0
- package/dist/cjs/react-components/dist/es/button/button.js +774 -0
- package/dist/cjs/react-components/dist/es/button/button.js.map +1 -0
- package/dist/cjs/react-components/dist/es/button/icon-button.js +77 -0
- package/dist/cjs/react-components/dist/es/button/icon-button.js.map +1 -0
- package/dist/cjs/react-components/dist/es/button/side-element.js +199 -0
- package/dist/cjs/react-components/dist/es/button/side-element.js.map +1 -0
- package/dist/cjs/react-components/dist/es/button/utils.js +105 -0
- package/dist/cjs/react-components/dist/es/button/utils.js.map +1 -0
- package/dist/cjs/react-components/dist/es/dialog/dialog.js +197 -0
- package/dist/cjs/react-components/dist/es/dialog/dialog.js.map +1 -0
- package/dist/cjs/react-components/dist/es/dropdown/dropdown.js +195 -0
- package/dist/cjs/react-components/dist/es/dropdown/dropdown.js.map +1 -0
- package/dist/cjs/react-components/dist/es/flex/flex.js +98 -0
- package/dist/cjs/react-components/dist/es/flex/flex.js.map +1 -0
- package/dist/cjs/react-components/dist/es/form-helper-text/form-helper-text.js +76 -0
- package/dist/cjs/react-components/dist/es/form-helper-text/form-helper-text.js.map +1 -0
- package/dist/cjs/react-components/dist/es/form-label/form-label.js +176 -0
- package/dist/cjs/react-components/dist/es/form-label/form-label.js.map +1 -0
- package/dist/cjs/react-components/dist/es/input/form-input.js +159 -0
- package/dist/cjs/react-components/dist/es/input/form-input.js.map +1 -0
- package/dist/cjs/react-components/dist/es/input/input.js +377 -0
- package/dist/cjs/react-components/dist/es/input/input.js.map +1 -0
- package/dist/cjs/react-components/dist/es/link/link.js +58 -0
- package/dist/cjs/react-components/dist/es/link/link.js.map +1 -0
- package/dist/cjs/react-components/dist/es/loader/circle.js +204 -0
- package/dist/cjs/react-components/dist/es/loader/circle.js.map +1 -0
- package/dist/cjs/react-components/dist/es/loader/line.js +130 -0
- package/dist/cjs/react-components/dist/es/loader/line.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/extends.js +21 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +14 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +19 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +14 -0
- package/dist/cjs/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/core/dist/floating-ui.core.js +788 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +612 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +299 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +146 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +148 -0
- package/dist/cjs/react-components/dist/es/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/primitive/dist/index.js +14 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/primitive/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-arrow/dist/index.js +48 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-collection/dist/index.js +71 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-compose-refs/dist/index.js +41 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-context/dist/index.js +102 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-context/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dialog/dist/index.js +354 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dialog/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-direction/dist/index.js +33 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-direction/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +234 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +303 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-dropdown-menu/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-focus-guards/dist/index.js +48 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-focus-scope/dist/index.js +229 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-id/dist/index.js +37 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-id/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-label/dist/index.js +47 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-label/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-menu/dist/index.js +847 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-menu/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-popper/dist/index.js +309 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-portal/dist/index.js +39 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-presence/dist/index.js +142 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-presence/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-primitive/dist/index.js +65 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-roving-focus/dist/index.js +246 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-slot/dist/index.js +104 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-tooltip/dist/index.js +509 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-tooltip/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +34 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +68 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +40 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +29 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-size/dist/index.js +62 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-use-size/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-visually-hidden/dist/index.js +58 -0
- package/dist/cjs/react-components/dist/es/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/@stitches/react/dist/index.js +9 -0
- package/dist/cjs/react-components/dist/es/node_modules/@stitches/react/dist/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/aria-hidden/dist/es2015/index.js +134 -0
- package/dist/cjs/react-components/dist/es/node_modules/aria-hidden/dist/es2015/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/addClass.js +19 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/addClass.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/hasClass.js +17 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/hasClass.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/removeClass.js +27 -0
- package/dist/cjs/react-components/dist/es/node_modules/dom-helpers/esm/removeClass.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/get-nonce/dist/es2015/index.js +11 -0
- package/dist/cjs/react-components/dist/es/node_modules/get-nonce/dist/es2015/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/object-assign/index.js +102 -0
- package/dist/cjs/react-components/dist/es/node_modules/object-assign/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/checkPropTypes.js +118 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/factoryWithThrowingShims.js +77 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/factoryWithTypeCheckers.js +628 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/index.js +35 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/lib/ReactPropTypesSecret.js +24 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/lib/has.js +14 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/lib/has.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +193 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +29 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/index.js +22 -0
- package/dist/cjs/react-components/dist/es/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/Combination.js +34 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +184 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/UI.js +60 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +24 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +110 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/medium.js +8 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/medium.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/sidecar.js +12 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/sidecar.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/component.js +80 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +16 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +35 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/component.js +22 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/hook.js +47 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/singleton.js +54 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/CSSTransition.js +419 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/Transition.js +637 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/Transition.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/TransitionGroupContext.js +10 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/TransitionGroupContext.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/config.js +10 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/config.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/utils/PropTypes.js +25 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/utils/reflow.js +8 -0
- package/dist/cjs/react-components/dist/es/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/tslib/tslib.es6.js +55 -0
- package/dist/cjs/react-components/dist/es/node_modules/tslib/tslib.es6.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/assignRef.js +27 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +25 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useRef.js +45 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-sidecar/dist/es2015/exports.js +43 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-sidecar/dist/es2015/medium.js +80 -0
- package/dist/cjs/react-components/dist/es/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -0
- package/dist/cjs/react-components/dist/es/packages/react-components/node_modules/clsx/dist/clsx.js +9 -0
- package/dist/cjs/react-components/dist/es/packages/react-components/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/cjs/react-components/dist/es/packages/react-icons/dist/es/icons/info.js +97 -0
- package/dist/cjs/react-components/dist/es/packages/react-icons/dist/es/icons/info.js.map +1 -0
- package/dist/cjs/react-components/dist/es/stitches.config.js +392 -0
- package/dist/cjs/react-components/dist/es/stitches.config.js.map +1 -0
- package/dist/cjs/react-components/dist/es/text/text.js +117 -0
- package/dist/cjs/react-components/dist/es/text/text.js.map +1 -0
- package/dist/cjs/react-components/dist/es/tooltip/tooltip.js +156 -0
- package/dist/cjs/react-components/dist/es/tooltip/tooltip.js.map +1 -0
- package/dist/cjs/react-components/dist/es/utils/prefix-class-name.js +10 -0
- package/dist/cjs/react-components/dist/es/utils/prefix-class-name.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/clsx/dist/clsx.js +9 -0
- package/dist/cjs/react-editor/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isFQDN.js +75 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isFQDN.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isIP.js +58 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isIP.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isURL.js +163 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/isURL.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/util/assertString.js +16 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/util/assertString.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/util/merge.js +17 -0
- package/dist/cjs/react-editor/node_modules/validator/es/lib/util/merge.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isFQDN.js +93 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isFQDN.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isIP.js +75 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isIP.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isURL.js +182 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/isURL.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/util/assertString.js +32 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/util/assertString.js.map +1 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/util/merge.js +33 -0
- package/dist/cjs/react-editor/node_modules/validator/lib/util/merge.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/bold.js +86 -0
- package/dist/cjs/react-icons/dist/es/icons/bold.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/close.js +86 -0
- package/dist/cjs/react-icons/dist/es/icons/close.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/code-block.js +78 -0
- package/dist/cjs/react-icons/dist/es/icons/code-block.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/code.js +96 -0
- package/dist/cjs/react-icons/dist/es/icons/code.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/delete.js +116 -0
- package/dist/cjs/react-icons/dist/es/icons/delete.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/italics.js +96 -0
- package/dist/cjs/react-icons/dist/es/icons/italics.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/link.js +86 -0
- package/dist/cjs/react-icons/dist/es/icons/link.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/ordered-list.js +86 -0
- package/dist/cjs/react-icons/dist/es/icons/ordered-list.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/pencil.js +86 -0
- package/dist/cjs/react-icons/dist/es/icons/pencil.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-center.js +74 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-center.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-justify.js +74 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-justify.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-left.js +74 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-left.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-right.js +74 -0
- package/dist/cjs/react-icons/dist/es/icons/text-align-right.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/text-format.js +78 -0
- package/dist/cjs/react-icons/dist/es/icons/text-format.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/underline.js +77 -0
- package/dist/cjs/react-icons/dist/es/icons/underline.js.map +1 -0
- package/dist/cjs/react-icons/dist/es/icons/unordered-list.js +126 -0
- package/dist/cjs/react-icons/dist/es/icons/unordered-list.js.map +1 -0
- package/dist/cjs/utils/commands.js +8 -0
- package/dist/cjs/utils/commands.js.map +1 -0
- package/dist/cjs/utils/get-dom-range-rect.js +19 -0
- package/dist/cjs/utils/get-dom-range-rect.js.map +1 -0
- package/dist/cjs/utils/get-selected-node.js +21 -0
- package/dist/cjs/utils/get-selected-node.js.map +1 -0
- package/dist/cjs/utils/prefix-class-name.js +10 -0
- package/dist/cjs/utils/prefix-class-name.js.map +1 -0
- package/dist/cjs/utils/set-floating-elem-position-for-link-editor.js +30 -0
- package/dist/cjs/utils/set-floating-elem-position-for-link-editor.js.map +1 -0
- package/dist/cjs/utils/set-floating-elem-position.js +33 -0
- package/dist/cjs/utils/set-floating-elem-position.js.map +1 -0
- package/dist/cjs/utils/use-node-focus.js +35 -0
- package/dist/cjs/utils/use-node-focus.js.map +1 -0
- package/dist/es/_virtual/_commonjsHelpers.js +6 -0
- package/dist/es/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/es/_virtual/assertString.js +4 -0
- package/dist/es/_virtual/assertString.js.map +1 -0
- package/dist/es/_virtual/isFQDN.js +4 -0
- package/dist/es/_virtual/isFQDN.js.map +1 -0
- package/dist/es/_virtual/isIP.js +4 -0
- package/dist/es/_virtual/isIP.js.map +1 -0
- package/dist/es/_virtual/isURL.js +8 -0
- package/dist/es/_virtual/isURL.js.map +1 -0
- package/dist/es/_virtual/isURL2.js +4 -0
- package/dist/es/_virtual/isURL2.js.map +1 -0
- package/dist/es/_virtual/merge.js +4 -0
- package/dist/es/_virtual/merge.js.map +1 -0
- package/dist/es/components/base-dropdown/index.js +173 -0
- package/dist/es/components/base-dropdown/index.js.map +1 -0
- package/dist/es/components/dialog-link-editor/index.js +289 -0
- package/dist/es/components/dialog-link-editor/index.js.map +1 -0
- package/dist/es/components/dialog-link-editor/link-editor-dialog.js +197 -0
- package/dist/es/components/dialog-link-editor/link-editor-dialog.js.map +1 -0
- package/dist/es/components/dialog-link-editor/link-tooltip.js +120 -0
- package/dist/es/components/dialog-link-editor/link-tooltip.js.map +1 -0
- package/dist/es/components/floating-toolbar/floating-toolbar.js +300 -0
- package/dist/es/components/floating-toolbar/floating-toolbar.js.map +1 -0
- package/dist/es/components/rich-editor/index.js +140 -0
- package/dist/es/components/rich-editor/index.js.map +1 -0
- package/dist/es/components/toolbar/toolbar.js +74 -0
- package/dist/es/components/toolbar/toolbar.js.map +1 -0
- package/dist/es/components/toolbar/tools/bold.js +50 -0
- package/dist/es/components/toolbar/tools/bold.js.map +1 -0
- package/dist/es/components/toolbar/tools/code-block.js +77 -0
- package/dist/es/components/toolbar/tools/code-block.js.map +1 -0
- package/dist/es/components/toolbar/tools/code.js +52 -0
- package/dist/es/components/toolbar/tools/code.js.map +1 -0
- package/dist/es/components/toolbar/tools/commons.js +14 -0
- package/dist/es/components/toolbar/tools/commons.js.map +1 -0
- package/dist/es/components/toolbar/tools/format.js +134 -0
- package/dist/es/components/toolbar/tools/format.js.map +1 -0
- package/dist/es/components/toolbar/tools/italic.js +55 -0
- package/dist/es/components/toolbar/tools/italic.js.map +1 -0
- package/dist/es/components/toolbar/tools/link.js +69 -0
- package/dist/es/components/toolbar/tools/link.js.map +1 -0
- package/dist/es/components/toolbar/tools/ordered-list.js +60 -0
- package/dist/es/components/toolbar/tools/ordered-list.js.map +1 -0
- package/dist/es/components/toolbar/tools/text-align.js +80 -0
- package/dist/es/components/toolbar/tools/text-align.js.map +1 -0
- package/dist/es/components/toolbar/tools/underline.js +55 -0
- package/dist/es/components/toolbar/tools/underline.js.map +1 -0
- package/dist/es/components/toolbar/tools/unordered-list.js +60 -0
- package/dist/es/components/toolbar/tools/unordered-list.js.map +1 -0
- package/dist/es/components/toolbar-context/context.js +145 -0
- package/dist/es/components/toolbar-context/context.js.map +1 -0
- package/dist/es/components/toolbar-context/store.js +72 -0
- package/dist/es/components/toolbar-context/store.js.map +1 -0
- package/dist/es/components/toolbar-context/utils.js +4 -0
- package/dist/es/components/toolbar-context/utils.js.map +1 -0
- package/dist/es/editor.js +152 -0
- package/dist/es/editor.js.map +1 -0
- package/dist/es/index.js +34 -0
- package/dist/es/index.js.map +1 -0
- package/dist/es/nodes/emoji.js +82 -0
- package/dist/es/nodes/emoji.js.map +1 -0
- package/dist/es/nodes/hashtag.js +105 -0
- package/dist/es/nodes/hashtag.js.map +1 -0
- package/dist/es/nodes/image.js +211 -0
- package/dist/es/nodes/image.js.map +1 -0
- package/dist/es/nodes/kudos.js +106 -0
- package/dist/es/nodes/kudos.js.map +1 -0
- package/dist/es/nodes/mention.js +105 -0
- package/dist/es/nodes/mention.js.map +1 -0
- package/dist/es/nodes/variables.js +105 -0
- package/dist/es/nodes/variables.js.map +1 -0
- package/dist/es/plugins/data-management-plugin/index.js +38 -0
- package/dist/es/plugins/data-management-plugin/index.js.map +1 -0
- package/dist/es/plugins/emoji/emoji-list.js +16605 -0
- package/dist/es/plugins/emoji/emoji-list.js.map +1 -0
- package/dist/es/plugins/emoji/index.js +124 -0
- package/dist/es/plugins/emoji/index.js.map +1 -0
- package/dist/es/plugins/hashtag/index.js +98 -0
- package/dist/es/plugins/hashtag/index.js.map +1 -0
- package/dist/es/plugins/images/index.js +162 -0
- package/dist/es/plugins/images/index.js.map +1 -0
- package/dist/es/plugins/images/utils.js +7 -0
- package/dist/es/plugins/images/utils.js.map +1 -0
- package/dist/es/plugins/link/auto-link.js +19 -0
- package/dist/es/plugins/link/auto-link.js.map +1 -0
- package/dist/es/plugins/link/convert-selection-on-paste.js +32 -0
- package/dist/es/plugins/link/convert-selection-on-paste.js.map +1 -0
- package/dist/es/plugins/link/link.js +66 -0
- package/dist/es/plugins/link/link.js.map +1 -0
- package/dist/es/plugins/mentions/index.js +106 -0
- package/dist/es/plugins/mentions/index.js.map +1 -0
- package/dist/es/plugins/tab-focus/index.js +52 -0
- package/dist/es/plugins/tab-focus/index.js.map +1 -0
- package/dist/es/react-components/dist/es/_virtual/_commonjsHelpers.js +6 -0
- package/dist/es/react-components/dist/es/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/es/react-components/dist/es/_virtual/index.js +4 -0
- package/dist/es/react-components/dist/es/_virtual/index.js.map +1 -0
- package/dist/es/react-components/dist/es/_virtual/index2.js +4 -0
- package/dist/es/react-components/dist/es/_virtual/index2.js.map +1 -0
- package/dist/es/react-components/dist/es/_virtual/react-is.development.js +4 -0
- package/dist/es/react-components/dist/es/_virtual/react-is.development.js.map +1 -0
- package/dist/es/react-components/dist/es/_virtual/react-is.production.min.js +4 -0
- package/dist/es/react-components/dist/es/_virtual/react-is.production.min.js.map +1 -0
- package/dist/es/react-components/dist/es/box/box.js +45 -0
- package/dist/es/react-components/dist/es/box/box.js.map +1 -0
- package/dist/es/react-components/dist/es/button/button.js +772 -0
- package/dist/es/react-components/dist/es/button/button.js.map +1 -0
- package/dist/es/react-components/dist/es/button/icon-button.js +75 -0
- package/dist/es/react-components/dist/es/button/icon-button.js.map +1 -0
- package/dist/es/react-components/dist/es/button/side-element.js +197 -0
- package/dist/es/react-components/dist/es/button/side-element.js.map +1 -0
- package/dist/es/react-components/dist/es/button/utils.js +100 -0
- package/dist/es/react-components/dist/es/button/utils.js.map +1 -0
- package/dist/es/react-components/dist/es/dialog/dialog.js +193 -0
- package/dist/es/react-components/dist/es/dialog/dialog.js.map +1 -0
- package/dist/es/react-components/dist/es/dropdown/dropdown.js +190 -0
- package/dist/es/react-components/dist/es/dropdown/dropdown.js.map +1 -0
- package/dist/es/react-components/dist/es/flex/flex.js +96 -0
- package/dist/es/react-components/dist/es/flex/flex.js.map +1 -0
- package/dist/es/react-components/dist/es/form-helper-text/form-helper-text.js +74 -0
- package/dist/es/react-components/dist/es/form-helper-text/form-helper-text.js.map +1 -0
- package/dist/es/react-components/dist/es/form-label/form-label.js +174 -0
- package/dist/es/react-components/dist/es/form-label/form-label.js.map +1 -0
- package/dist/es/react-components/dist/es/input/form-input.js +157 -0
- package/dist/es/react-components/dist/es/input/form-input.js.map +1 -0
- package/dist/es/react-components/dist/es/input/input.js +374 -0
- package/dist/es/react-components/dist/es/input/input.js.map +1 -0
- package/dist/es/react-components/dist/es/link/link.js +56 -0
- package/dist/es/react-components/dist/es/link/link.js.map +1 -0
- package/dist/es/react-components/dist/es/loader/circle.js +202 -0
- package/dist/es/react-components/dist/es/loader/circle.js.map +1 -0
- package/dist/es/react-components/dist/es/loader/line.js +128 -0
- package/dist/es/react-components/dist/es/loader/line.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/extends.js +17 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +10 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +15 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +10 -0
- package/dist/es/react-components/dist/es/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/core/dist/floating-ui.core.js +777 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +600 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +269 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +123 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +129 -0
- package/dist/es/react-components/dist/es/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/primitive/dist/index.js +12 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/primitive/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-arrow/dist/index.js +26 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-collection/dist/index.js +69 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-compose-refs/dist/index.js +19 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-context/dist/index.js +80 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-context/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dialog/dist/index.js +318 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dialog/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-direction/dist/index.js +12 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-direction/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +212 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +254 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-dropdown-menu/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-focus-guards/dist/index.js +27 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-focus-scope/dist/index.js +208 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-id/dist/index.js +16 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-id/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-label/dist/index.js +25 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-label/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-menu/dist/index.js +796 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-menu/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-popper/dist/index.js +280 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-portal/dist/index.js +18 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-presence/dist/index.js +120 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-presence/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-primitive/dist/index.js +42 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-roving-focus/dist/index.js +221 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-slot/dist/index.js +82 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-tooltip/dist/index.js +476 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-tooltip/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +13 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +47 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +19 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +8 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-size/dist/index.js +41 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-use-size/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-visually-hidden/dist/index.js +36 -0
- package/dist/es/react-components/dist/es/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/@stitches/react/dist/index.js +6 -0
- package/dist/es/react-components/dist/es/node_modules/@stitches/react/dist/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/aria-hidden/dist/es2015/index.js +132 -0
- package/dist/es/react-components/dist/es/node_modules/aria-hidden/dist/es2015/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/addClass.js +15 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/addClass.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/hasClass.js +13 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/hasClass.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/removeClass.js +23 -0
- package/dist/es/react-components/dist/es/node_modules/dom-helpers/esm/removeClass.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/get-nonce/dist/es2015/index.js +9 -0
- package/dist/es/react-components/dist/es/node_modules/get-nonce/dist/es2015/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/object-assign/index.js +100 -0
- package/dist/es/react-components/dist/es/node_modules/object-assign/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/checkPropTypes.js +116 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/factoryWithThrowingShims.js +75 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/factoryWithTypeCheckers.js +626 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/index.js +31 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/lib/ReactPropTypesSecret.js +22 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/lib/has.js +12 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/lib/has.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +191 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +27 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/index.js +20 -0
- package/dist/es/react-components/dist/es/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/Combination.js +11 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +161 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/UI.js +39 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +22 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +107 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/medium.js +6 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/medium.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/sidecar.js +8 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll/dist/es2015/sidecar.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/component.js +57 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +11 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +32 -0
- package/dist/es/react-components/dist/es/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/component.js +20 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/hook.js +26 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/singleton.js +52 -0
- package/dist/es/react-components/dist/es/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/CSSTransition.js +415 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/Transition.js +628 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/Transition.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/TransitionGroupContext.js +6 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/TransitionGroupContext.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/config.js +6 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/config.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/utils/PropTypes.js +22 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/utils/reflow.js +6 -0
- package/dist/es/react-components/dist/es/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/tslib/tslib.es6.js +52 -0
- package/dist/es/react-components/dist/es/node_modules/tslib/tslib.es6.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/assignRef.js +25 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +23 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useRef.js +43 -0
- package/dist/es/react-components/dist/es/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/use-sidecar/dist/es2015/exports.js +22 -0
- package/dist/es/react-components/dist/es/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -0
- package/dist/es/react-components/dist/es/node_modules/use-sidecar/dist/es2015/medium.js +78 -0
- package/dist/es/react-components/dist/es/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -0
- package/dist/es/react-components/dist/es/packages/react-components/node_modules/clsx/dist/clsx.js +4 -0
- package/dist/es/react-components/dist/es/packages/react-components/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/es/react-components/dist/es/packages/react-icons/dist/es/icons/info.js +95 -0
- package/dist/es/react-components/dist/es/packages/react-icons/dist/es/icons/info.js.map +1 -0
- package/dist/es/react-components/dist/es/stitches.config.js +379 -0
- package/dist/es/react-components/dist/es/stitches.config.js.map +1 -0
- package/dist/es/react-components/dist/es/text/text.js +115 -0
- package/dist/es/react-components/dist/es/text/text.js.map +1 -0
- package/dist/es/react-components/dist/es/tooltip/tooltip.js +153 -0
- package/dist/es/react-components/dist/es/tooltip/tooltip.js.map +1 -0
- package/dist/es/react-components/dist/es/utils/prefix-class-name.js +8 -0
- package/dist/es/react-components/dist/es/utils/prefix-class-name.js.map +1 -0
- package/dist/es/react-editor/node_modules/clsx/dist/clsx.js +4 -0
- package/dist/es/react-editor/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isFQDN.js +71 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isFQDN.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isIP.js +54 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isIP.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isURL.js +159 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/isURL.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/util/assertString.js +12 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/util/assertString.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/util/merge.js +13 -0
- package/dist/es/react-editor/node_modules/validator/es/lib/util/merge.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/lib/isFQDN.js +91 -0
- package/dist/es/react-editor/node_modules/validator/lib/isFQDN.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/lib/isIP.js +73 -0
- package/dist/es/react-editor/node_modules/validator/lib/isIP.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/lib/isURL.js +180 -0
- package/dist/es/react-editor/node_modules/validator/lib/isURL.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/lib/util/assertString.js +30 -0
- package/dist/es/react-editor/node_modules/validator/lib/util/assertString.js.map +1 -0
- package/dist/es/react-editor/node_modules/validator/lib/util/merge.js +31 -0
- package/dist/es/react-editor/node_modules/validator/lib/util/merge.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/bold.js +84 -0
- package/dist/es/react-icons/dist/es/icons/bold.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/close.js +84 -0
- package/dist/es/react-icons/dist/es/icons/close.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/code-block.js +76 -0
- package/dist/es/react-icons/dist/es/icons/code-block.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/code.js +94 -0
- package/dist/es/react-icons/dist/es/icons/code.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/delete.js +114 -0
- package/dist/es/react-icons/dist/es/icons/delete.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/italics.js +94 -0
- package/dist/es/react-icons/dist/es/icons/italics.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/link.js +84 -0
- package/dist/es/react-icons/dist/es/icons/link.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/ordered-list.js +84 -0
- package/dist/es/react-icons/dist/es/icons/ordered-list.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/pencil.js +84 -0
- package/dist/es/react-icons/dist/es/icons/pencil.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/text-align-center.js +72 -0
- package/dist/es/react-icons/dist/es/icons/text-align-center.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/text-align-justify.js +72 -0
- package/dist/es/react-icons/dist/es/icons/text-align-justify.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/text-align-left.js +72 -0
- package/dist/es/react-icons/dist/es/icons/text-align-left.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/text-align-right.js +72 -0
- package/dist/es/react-icons/dist/es/icons/text-align-right.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/text-format.js +76 -0
- package/dist/es/react-icons/dist/es/icons/text-format.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/underline.js +75 -0
- package/dist/es/react-icons/dist/es/icons/underline.js.map +1 -0
- package/dist/es/react-icons/dist/es/icons/unordered-list.js +124 -0
- package/dist/es/react-icons/dist/es/icons/unordered-list.js.map +1 -0
- package/dist/es/utils/commands.js +6 -0
- package/dist/es/utils/commands.js.map +1 -0
- package/dist/es/utils/get-dom-range-rect.js +17 -0
- package/dist/es/utils/get-dom-range-rect.js.map +1 -0
- package/dist/es/utils/get-selected-node.js +19 -0
- package/dist/es/utils/get-selected-node.js.map +1 -0
- package/dist/es/utils/prefix-class-name.js +8 -0
- package/dist/es/utils/prefix-class-name.js.map +1 -0
- package/dist/es/utils/set-floating-elem-position-for-link-editor.js +28 -0
- package/dist/es/utils/set-floating-elem-position-for-link-editor.js.map +1 -0
- package/dist/es/utils/set-floating-elem-position.js +31 -0
- package/dist/es/utils/set-floating-elem-position.js.map +1 -0
- package/dist/es/utils/use-node-focus.js +33 -0
- package/dist/es/utils/use-node-focus.js.map +1 -0
- package/dist/index.d.ts +445 -0
- package/package.json +151 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"format.js","sources":["../../../../../src/components/toolbar/tools/format.tsx"],"sourcesContent":["import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { $createHeadingNode, HeadingTagType } from '@lexical/rich-text';\nimport { $setBlocksType } from '@lexical/selection';\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n IconButton\n} from '@sparrowengg/twigs-react';\nimport { TextFormatIcon } from '@sparrowengg/twigs-react-icons';\nimport {\n $createParagraphNode,\n $getSelection,\n $isRangeSelection\n} from 'lexical';\nimport React, { ComponentProps } from 'react';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { TextFormats } from '../../toolbar-context/utils';\nimport { RenderButtonProps, ToolbarButtonProps } from './commons';\n\nconst formatMapping = {\n paragraph: 'Paragraph',\n h1: 'Heading 1',\n h2: 'Heading 2',\n h3: 'Heading 3',\n h4: 'Heading 4',\n h5: 'Heading 5',\n h6: 'Heading 6'\n} as const;\n\nexport type FormatToolProps = Omit<ToolbarButtonProps, 'renderButton'> & {\n renderButton?: (\n props: Omit<RenderButtonProps, 'onChange' | 'active'> & {\n onChange: (type: keyof typeof formatMapping) => void;\n active: TextFormats;\n }\n ) => React.ReactNode;\n dropdownMenuProps?: Partial<ComponentProps<typeof DropdownMenu>>;\n dropdownMenuTriggerProps?: Partial<\n ComponentProps<typeof DropdownMenuTrigger>\n >;\n dropdownMenuTriggerButtonProps?: Partial<ComponentProps<typeof IconButton>>;\n dropdownMenuContentProps?: Partial<\n ComponentProps<typeof DropdownMenuContent>\n >;\n dropdownMenuItemProps?:\n | Partial<ComponentProps<typeof DropdownMenuItem>>\n | ((args: {\n type: keyof typeof formatMapping;\n formatText: (formatType: keyof typeof formatMapping) => void;\n }) => Partial<ComponentProps<typeof DropdownMenuItem>>);\n renderDropdownTrigger?: () => React.ReactNode;\n};\n\nexport const FormatTool = ({\n renderButton,\n dropdownMenuProps,\n dropdownMenuContentProps,\n dropdownMenuItemProps,\n dropdownMenuTriggerProps,\n dropdownMenuTriggerButtonProps,\n renderDropdownTrigger\n}: FormatToolProps) => {\n const [editor] = useLexicalComposerContext();\n const [format] = useToolbarStore((state) => state.data.format);\n\n const formatText = (type: keyof typeof formatMapping) => {\n if (type === 'paragraph') {\n formatParagraph();\n } else {\n formatHeading(type);\n }\n };\n\n const formatHeading = (headingSize: HeadingTagType) => {\n if (headingSize) {\n editor.update(() => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n $setBlocksType(selection, () => $createHeadingNode(headingSize));\n }\n });\n }\n };\n\n const formatParagraph = () => {\n editor.update(() => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n $setBlocksType(selection, () => $createParagraphNode());\n }\n });\n };\n\n const { paragraph, ...headings } = formatMapping;\n\n if (renderButton) {\n return renderButton({ editor, active: format, onChange: formatText });\n }\n\n return (\n <DropdownMenu {...dropdownMenuProps}>\n <DropdownMenuTrigger asChild {...dropdownMenuTriggerProps}>\n {renderDropdownTrigger ? (\n renderDropdownTrigger()\n ) : (\n <IconButton\n icon={<TextFormatIcon />}\n variant=\"ghost\"\n color=\"default\"\n className=\"twigs-editor-tool-button\"\n data-tool=\"format\"\n {...dropdownMenuTriggerButtonProps}\n />\n )}\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"twigs-editor-toolbar__format-options\"\n {...dropdownMenuContentProps}\n >\n <DropdownMenuItem\n onClick={formatParagraph}\n {...(typeof dropdownMenuItemProps === 'function'\n ? dropdownMenuItemProps({ type: 'paragraph', formatText })\n : dropdownMenuItemProps)}\n >\n {paragraph}\n </DropdownMenuItem>\n {(Object.keys(headings) as unknown as (keyof typeof headings)[]).map(\n (item) => (\n <DropdownMenuItem\n onClick={() => formatHeading(item)}\n key={item}\n {...(typeof dropdownMenuItemProps === 'function'\n ? dropdownMenuItemProps({ type: item, formatText })\n : dropdownMenuItemProps)}\n >\n {formatMapping[item]}\n </DropdownMenuItem>\n )\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n};\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
3
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
4
|
+
import { FORMAT_TEXT_COMMAND } from 'lexical';
|
5
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
6
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
7
|
+
import { ItalicsIcon } from '../../../react-icons/dist/es/icons/italics.js';
|
8
|
+
|
9
|
+
var __defProp = Object.defineProperty;
|
10
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
14
|
+
var __spreadValues = (a, b) => {
|
15
|
+
for (var prop in b || (b = {}))
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
18
|
+
if (__getOwnPropSymbols)
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
20
|
+
if (__propIsEnum.call(b, prop))
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
22
|
+
}
|
23
|
+
return a;
|
24
|
+
};
|
25
|
+
const ItalicTool = ({
|
26
|
+
renderButton,
|
27
|
+
buttonProps
|
28
|
+
}) => {
|
29
|
+
const [editor] = useLexicalComposerContext();
|
30
|
+
const [active] = useToolbarStore((state) => state.data.isItalic);
|
31
|
+
const handleClick = () => {
|
32
|
+
editor.dispatchCommand(FORMAT_TEXT_COMMAND, "italic");
|
33
|
+
};
|
34
|
+
if (renderButton) {
|
35
|
+
return renderButton({ editor, active, onChange: handleClick });
|
36
|
+
}
|
37
|
+
return /* @__PURE__ */ jsx(
|
38
|
+
IconButton,
|
39
|
+
__spreadValues({
|
40
|
+
icon: /* @__PURE__ */ jsx(ItalicsIcon, {}),
|
41
|
+
variant: active ? "solid" : "ghost",
|
42
|
+
color: "default",
|
43
|
+
className: clsx("twigs-editor-tool-button", {
|
44
|
+
"twigs-editor-tool-button--active": active
|
45
|
+
}),
|
46
|
+
onClick: handleClick,
|
47
|
+
title: active ? "Clear italics formatting" : "Format text to italics",
|
48
|
+
"data-tool": "italic",
|
49
|
+
"aria-label": active ? "Clear italics formatting" : "Format text to italics"
|
50
|
+
}, buttonProps)
|
51
|
+
);
|
52
|
+
};
|
53
|
+
|
54
|
+
export { ItalicTool };
|
55
|
+
//# sourceMappingURL=italic.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"italic.js","sources":["../../../../../src/components/toolbar/tools/italic.tsx"],"sourcesContent":["import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport { ItalicsIcon } from '@sparrowengg/twigs-react-icons';\nimport clsx from 'clsx';\nimport { FORMAT_TEXT_COMMAND } from 'lexical';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { ToolbarButtonProps } from './commons';\n\nexport const ItalicTool = ({\n renderButton,\n buttonProps\n}: ToolbarButtonProps) => {\n const [editor] = useLexicalComposerContext();\n const [active] = useToolbarStore((state) => state.data.isItalic);\n\n const handleClick = () => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'italic');\n };\n\n if (renderButton) {\n return renderButton({ editor, active, onChange: handleClick });\n }\n\n return (\n <IconButton\n icon={<ItalicsIcon />}\n variant={active ? 'solid' : 'ghost'}\n color=\"default\"\n className={clsx('twigs-editor-tool-button', {\n 'twigs-editor-tool-button--active': active\n })}\n onClick={handleClick}\n title={active ? 'Clear italics formatting' : 'Format text to italics'}\n data-tool=\"italic\"\n aria-label={\n active ? 'Clear italics formatting' : 'Format text to italics'\n }\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAQO,MAAM,aAAa,CAAC;AAAA,EACzB,YAAA;AAAA,EACA;AACF,CAA0B,KAAA;AACxB,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,CAAC,MAAM,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,QAAQ,CAAA;AAE/D,EAAA,MAAM,cAAc,MAAM;AACxB,IAAO,MAAA,CAAA,eAAA,CAAgB,qBAAqB,QAAQ,CAAA;AAAA,GACtD;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,MAAQ,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG/D,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,WAAY,EAAA,EAAA,CAAA;AAAA,MACnB,OAAA,EAAS,SAAS,OAAU,GAAA,OAAA;AAAA,MAC5B,KAAM,EAAA,SAAA;AAAA,MACN,SAAA,EAAW,KAAK,0BAA4B,EAAA;AAAA,QAC1C,kCAAoC,EAAA;AAAA,OACrC,CAAA;AAAA,MACD,OAAS,EAAA,WAAA;AAAA,MACT,KAAA,EAAO,SAAS,0BAA6B,GAAA,wBAAA;AAAA,MAC7C,WAAU,EAAA,QAAA;AAAA,MACV,YAAA,EACE,SAAS,0BAA6B,GAAA;AAAA,KAEpC,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { $createLinkNode, TOGGLE_LINK_COMMAND } from '@lexical/link';
|
3
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
4
|
+
import { ADD_BLANK_LINK } from '../../../utils/commands.js';
|
5
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
6
|
+
import { $getSelection, $isRangeSelection, $createTextNode, $insertNodes } from 'lexical';
|
7
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
8
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
9
|
+
import { LinkIcon } from '../../../react-icons/dist/es/icons/link.js';
|
10
|
+
|
11
|
+
var __defProp = Object.defineProperty;
|
12
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
14
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
15
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
16
|
+
var __spreadValues = (a, b) => {
|
17
|
+
for (var prop in b || (b = {}))
|
18
|
+
if (__hasOwnProp.call(b, prop))
|
19
|
+
__defNormalProp(a, prop, b[prop]);
|
20
|
+
if (__getOwnPropSymbols)
|
21
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
22
|
+
if (__propIsEnum.call(b, prop))
|
23
|
+
__defNormalProp(a, prop, b[prop]);
|
24
|
+
}
|
25
|
+
return a;
|
26
|
+
};
|
27
|
+
const LinkTool = ({ renderButton, buttonProps }) => {
|
28
|
+
const [editor] = useLexicalComposerContext();
|
29
|
+
const [active] = useToolbarStore((state) => state.data.isLink);
|
30
|
+
const handleClick = () => {
|
31
|
+
editor.update(() => {
|
32
|
+
const selection = $getSelection();
|
33
|
+
if (selection === null || $isRangeSelection(selection) && (selection == null ? void 0 : selection.isCollapsed())) {
|
34
|
+
const newLinkNode = $createLinkNode("");
|
35
|
+
newLinkNode.append($createTextNode(" "));
|
36
|
+
$insertNodes([newLinkNode]);
|
37
|
+
newLinkNode.selectStart();
|
38
|
+
editor.dispatchCommand(ADD_BLANK_LINK, void 0);
|
39
|
+
return;
|
40
|
+
}
|
41
|
+
if (!active) {
|
42
|
+
editor.dispatchCommand(TOGGLE_LINK_COMMAND, "");
|
43
|
+
} else {
|
44
|
+
editor.dispatchCommand(TOGGLE_LINK_COMMAND, null);
|
45
|
+
}
|
46
|
+
});
|
47
|
+
};
|
48
|
+
if (renderButton) {
|
49
|
+
return renderButton({ editor, active, onChange: handleClick });
|
50
|
+
}
|
51
|
+
return /* @__PURE__ */ jsx(
|
52
|
+
IconButton,
|
53
|
+
__spreadValues({
|
54
|
+
icon: /* @__PURE__ */ jsx(LinkIcon, {}),
|
55
|
+
variant: active ? "solid" : "ghost",
|
56
|
+
color: "default",
|
57
|
+
className: clsx("twigs-editor-tool-button", {
|
58
|
+
"twigs-editor-tool-button--active": active
|
59
|
+
}),
|
60
|
+
onClick: handleClick,
|
61
|
+
title: active ? "Remove link" : "Convert to link",
|
62
|
+
"aria-label": active ? "Remove link" : "Convert to link",
|
63
|
+
"data-tool": "link"
|
64
|
+
}, buttonProps)
|
65
|
+
);
|
66
|
+
};
|
67
|
+
|
68
|
+
export { LinkTool };
|
69
|
+
//# sourceMappingURL=link.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"link.js","sources":["../../../../../src/components/toolbar/tools/link.tsx"],"sourcesContent":["import { $createLinkNode, TOGGLE_LINK_COMMAND } from '@lexical/link';\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { LinkIcon } from '@sparrowengg/twigs-react-icons';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport { ADD_BLANK_LINK } from '@src/utils/commands';\nimport clsx from 'clsx';\nimport {\n $createTextNode,\n $getSelection,\n $insertNodes,\n $isRangeSelection\n} from 'lexical';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { ToolbarButtonProps } from './commons';\n\nexport const LinkTool = ({ renderButton, buttonProps }: ToolbarButtonProps) => {\n const [editor] = useLexicalComposerContext();\n const [active] = useToolbarStore((state) => state.data.isLink);\n\n const handleClick = () => {\n editor.update(() => {\n const selection = $getSelection();\n /**\n * Handle link insertion when there is no selection (cursor blinking at a single point)\n */\n if (\n selection === null\n || ($isRangeSelection(selection) && selection?.isCollapsed())\n ) {\n const newLinkNode = $createLinkNode('');\n\n // Completely empty string is not selectable, so we need to add a space.\n // This space will be trimmed in the editor modal\n newLinkNode.append($createTextNode(' '));\n\n $insertNodes([newLinkNode]);\n newLinkNode.selectStart();\n\n editor.dispatchCommand(ADD_BLANK_LINK, undefined);\n\n return;\n }\n\n if (!active) {\n editor.dispatchCommand(TOGGLE_LINK_COMMAND, '');\n } else {\n editor.dispatchCommand(TOGGLE_LINK_COMMAND, null);\n }\n });\n };\n\n if (renderButton) {\n return renderButton({ editor, active, onChange: handleClick });\n }\n\n return (\n <IconButton\n icon={<LinkIcon />}\n variant={active ? 'solid' : 'ghost'}\n color=\"default\"\n className={clsx('twigs-editor-tool-button', {\n 'twigs-editor-tool-button--active': active\n })}\n onClick={handleClick}\n title={active ? 'Remove link' : 'Convert to link'}\n aria-label={active ? 'Remove link' : 'Convert to link'}\n data-tool=\"link\"\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAeO,MAAM,QAAW,GAAA,CAAC,EAAE,YAAA,EAAc,aAAsC,KAAA;AAC7E,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,CAAC,MAAM,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,MAAM,CAAA;AAE7D,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,MAAA,CAAO,OAAO,MAAM;AAClB,MAAA,MAAM,YAAY,aAAc,EAAA;AAIhC,MAAA,IACE,cAAc,IACV,IAAA,iBAAA,CAAkB,SAAS,CAAA,KAAK,uCAAW,WAC/C,EAAA,CAAA,EAAA;AACA,QAAM,MAAA,WAAA,GAAc,gBAAgB,EAAE,CAAA;AAItC,QAAY,WAAA,CAAA,MAAA,CAAO,eAAgB,CAAA,GAAG,CAAC,CAAA;AAEvC,QAAa,YAAA,CAAA,CAAC,WAAW,CAAC,CAAA;AAC1B,QAAA,WAAA,CAAY,WAAY,EAAA;AAExB,QAAO,MAAA,CAAA,eAAA,CAAgB,gBAAgB,MAAS,CAAA;AAEhD,QAAA;AAAA;AAGF,MAAA,IAAI,CAAC,MAAQ,EAAA;AACX,QAAO,MAAA,CAAA,eAAA,CAAgB,qBAAqB,EAAE,CAAA;AAAA,OACzC,MAAA;AACL,QAAO,MAAA,CAAA,eAAA,CAAgB,qBAAqB,IAAI,CAAA;AAAA;AAClD,KACD,CAAA;AAAA,GACH;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,MAAQ,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG/D,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,QAAS,EAAA,EAAA,CAAA;AAAA,MAChB,OAAA,EAAS,SAAS,OAAU,GAAA,OAAA;AAAA,MAC5B,KAAM,EAAA,SAAA;AAAA,MACN,SAAA,EAAW,KAAK,0BAA4B,EAAA;AAAA,QAC1C,kCAAoC,EAAA;AAAA,OACrC,CAAA;AAAA,MACD,OAAS,EAAA,WAAA;AAAA,MACT,KAAA,EAAO,SAAS,aAAgB,GAAA,iBAAA;AAAA,MAChC,YAAA,EAAY,SAAS,aAAgB,GAAA,iBAAA;AAAA,MACrC,WAAU,EAAA;AAAA,KACN,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { INSERT_ORDERED_LIST_COMMAND } from '@lexical/list';
|
3
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
4
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
5
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
6
|
+
import { formatParagraph } from './commons.js';
|
7
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
8
|
+
import { OrderedListIcon } from '../../../react-icons/dist/es/icons/ordered-list.js';
|
9
|
+
|
10
|
+
var __defProp = Object.defineProperty;
|
11
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
12
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
13
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
14
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
15
|
+
var __spreadValues = (a, b) => {
|
16
|
+
for (var prop in b || (b = {}))
|
17
|
+
if (__hasOwnProp.call(b, prop))
|
18
|
+
__defNormalProp(a, prop, b[prop]);
|
19
|
+
if (__getOwnPropSymbols)
|
20
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
21
|
+
if (__propIsEnum.call(b, prop))
|
22
|
+
__defNormalProp(a, prop, b[prop]);
|
23
|
+
}
|
24
|
+
return a;
|
25
|
+
};
|
26
|
+
const OrderedListTool = ({
|
27
|
+
renderButton,
|
28
|
+
buttonProps
|
29
|
+
}) => {
|
30
|
+
const [editor] = useLexicalComposerContext();
|
31
|
+
const [active] = useToolbarStore((state) => state.data.isOrderedList);
|
32
|
+
const handleClick = () => {
|
33
|
+
if (!active) {
|
34
|
+
editor.dispatchCommand(INSERT_ORDERED_LIST_COMMAND, void 0);
|
35
|
+
} else {
|
36
|
+
formatParagraph(editor);
|
37
|
+
}
|
38
|
+
};
|
39
|
+
if (renderButton) {
|
40
|
+
return renderButton({ editor, active, onChange: handleClick });
|
41
|
+
}
|
42
|
+
return /* @__PURE__ */ jsx(
|
43
|
+
IconButton,
|
44
|
+
__spreadValues({
|
45
|
+
icon: /* @__PURE__ */ jsx(OrderedListIcon, {}),
|
46
|
+
variant: active ? "solid" : "ghost",
|
47
|
+
color: "default",
|
48
|
+
className: clsx("twigs-editor-tool-button", {
|
49
|
+
"twigs-editor-tool-button--active": active
|
50
|
+
}),
|
51
|
+
onClick: handleClick,
|
52
|
+
title: active ? "Change formatting from ordered list to paragraph" : "Change formatting to ordered list",
|
53
|
+
"aria-label": active ? "Change formatting from ordered list to paragraph" : "Change formatting to ordered list",
|
54
|
+
"data-tool": "ordered-list"
|
55
|
+
}, buttonProps)
|
56
|
+
);
|
57
|
+
};
|
58
|
+
|
59
|
+
export { OrderedListTool };
|
60
|
+
//# sourceMappingURL=ordered-list.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ordered-list.js","sources":["../../../../../src/components/toolbar/tools/ordered-list.tsx"],"sourcesContent":["import { INSERT_ORDERED_LIST_COMMAND } from '@lexical/list';\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { OrderedListIcon } from '@sparrowengg/twigs-react-icons';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport clsx from 'clsx';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { ToolbarButtonProps, formatParagraph } from './commons';\n\nexport const OrderedListTool = ({\n renderButton,\n buttonProps\n}: ToolbarButtonProps) => {\n const [editor] = useLexicalComposerContext();\n const [active] = useToolbarStore((state) => state.data.isOrderedList);\n\n const handleClick = () => {\n if (!active) {\n editor.dispatchCommand(INSERT_ORDERED_LIST_COMMAND, undefined);\n } else {\n formatParagraph(editor);\n }\n };\n\n if (renderButton) {\n return renderButton({ editor, active, onChange: handleClick });\n }\n\n return (\n <IconButton\n icon={<OrderedListIcon />}\n variant={active ? 'solid' : 'ghost'}\n color=\"default\"\n className={clsx('twigs-editor-tool-button', {\n 'twigs-editor-tool-button--active': active\n })}\n onClick={handleClick}\n title={\n active\n ? 'Change formatting from ordered list to paragraph'\n : 'Change formatting to ordered list'\n }\n aria-label={\n active\n ? 'Change formatting from ordered list to paragraph'\n : 'Change formatting to ordered list'\n }\n data-tool=\"ordered-list\"\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQO,MAAM,kBAAkB,CAAC;AAAA,EAC9B,YAAA;AAAA,EACA;AACF,CAA0B,KAAA;AACxB,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,CAAC,MAAM,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,aAAa,CAAA;AAEpE,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,IAAI,CAAC,MAAQ,EAAA;AACX,MAAO,MAAA,CAAA,eAAA,CAAgB,6BAA6B,MAAS,CAAA;AAAA,KACxD,MAAA;AACL,MAAA,eAAA,CAAgB,MAAM,CAAA;AAAA;AACxB,GACF;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,MAAQ,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG/D,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,eAAgB,EAAA,EAAA,CAAA;AAAA,MACvB,OAAA,EAAS,SAAS,OAAU,GAAA,OAAA;AAAA,MAC5B,KAAM,EAAA,SAAA;AAAA,MACN,SAAA,EAAW,KAAK,0BAA4B,EAAA;AAAA,QAC1C,kCAAoC,EAAA;AAAA,OACrC,CAAA;AAAA,MACD,OAAS,EAAA,WAAA;AAAA,MACT,KAAA,EACE,SACI,kDACA,GAAA,mCAAA;AAAA,MAEN,YAAA,EACE,SACI,kDACA,GAAA,mCAAA;AAAA,MAEN,WAAU,EAAA;AAAA,KACN,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,80 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
3
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
4
|
+
import { FORMAT_ELEMENT_COMMAND } from 'lexical';
|
5
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
6
|
+
import { textAlignments } from '../../toolbar-context/utils.js';
|
7
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
8
|
+
import { TextAlignJustifyIcon } from '../../../react-icons/dist/es/icons/text-align-justify.js';
|
9
|
+
import { TextAlignRightIcon } from '../../../react-icons/dist/es/icons/text-align-right.js';
|
10
|
+
import { TextAlignCenterIcon } from '../../../react-icons/dist/es/icons/text-align-center.js';
|
11
|
+
import { TextAlignLeftIcon } from '../../../react-icons/dist/es/icons/text-align-left.js';
|
12
|
+
|
13
|
+
var __defProp = Object.defineProperty;
|
14
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
15
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
16
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
17
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
18
|
+
var __spreadValues = (a, b) => {
|
19
|
+
for (var prop in b || (b = {}))
|
20
|
+
if (__hasOwnProp.call(b, prop))
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
22
|
+
if (__getOwnPropSymbols)
|
23
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
24
|
+
if (__propIsEnum.call(b, prop))
|
25
|
+
__defNormalProp(a, prop, b[prop]);
|
26
|
+
}
|
27
|
+
return a;
|
28
|
+
};
|
29
|
+
const IconMapping = {
|
30
|
+
left: /* @__PURE__ */ jsx(TextAlignLeftIcon, {}),
|
31
|
+
center: /* @__PURE__ */ jsx(TextAlignCenterIcon, {}),
|
32
|
+
right: /* @__PURE__ */ jsx(TextAlignRightIcon, {}),
|
33
|
+
justify: /* @__PURE__ */ jsx(TextAlignJustifyIcon, {})
|
34
|
+
};
|
35
|
+
const TextAlignTool = ({
|
36
|
+
renderButton,
|
37
|
+
buttonProps
|
38
|
+
}) => {
|
39
|
+
const [editor] = useLexicalComposerContext();
|
40
|
+
const [alignment] = useToolbarStore((state) => state.data.textAlign);
|
41
|
+
const getNextAlignment = (currentAlign) => {
|
42
|
+
let activeIndex = textAlignments.indexOf(currentAlign);
|
43
|
+
if (activeIndex === textAlignments.length - 1) {
|
44
|
+
activeIndex = 0;
|
45
|
+
} else {
|
46
|
+
activeIndex++;
|
47
|
+
}
|
48
|
+
return textAlignments[activeIndex];
|
49
|
+
};
|
50
|
+
const handleClick = () => {
|
51
|
+
editor.dispatchCommand(FORMAT_ELEMENT_COMMAND, getNextAlignment(alignment));
|
52
|
+
};
|
53
|
+
if (renderButton) {
|
54
|
+
return renderButton({ editor, active: alignment, onChange: handleClick });
|
55
|
+
}
|
56
|
+
const Icon = () => IconMapping[alignment];
|
57
|
+
return /* @__PURE__ */ jsx(
|
58
|
+
IconButton,
|
59
|
+
__spreadValues({
|
60
|
+
icon: /* @__PURE__ */ jsx(Icon, {}),
|
61
|
+
variant: "ghost",
|
62
|
+
color: "default",
|
63
|
+
className: clsx(
|
64
|
+
"twigs-editor-tool-button",
|
65
|
+
`twigs-editor-tool-button--${alignment}`
|
66
|
+
),
|
67
|
+
onClick: handleClick,
|
68
|
+
title: `Change text alignment from ${alignment} to ${getNextAlignment(
|
69
|
+
alignment
|
70
|
+
)}`,
|
71
|
+
"aria-label": `Change text alignment from ${alignment} to ${getNextAlignment(
|
72
|
+
alignment
|
73
|
+
)}`,
|
74
|
+
"data-tool": "text-align"
|
75
|
+
}, buttonProps)
|
76
|
+
);
|
77
|
+
};
|
78
|
+
|
79
|
+
export { TextAlignTool };
|
80
|
+
//# sourceMappingURL=text-align.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"text-align.js","sources":["../../../../../src/components/toolbar/tools/text-align.tsx"],"sourcesContent":["import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport {\n TextAlignCenterIcon,\n TextAlignJustifyIcon,\n TextAlignLeftIcon,\n TextAlignRightIcon\n} from '@sparrowengg/twigs-react-icons';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport clsx from 'clsx';\nimport { FORMAT_ELEMENT_COMMAND } from 'lexical';\nimport React, { ReactNode } from 'react';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { TextAlignments, textAlignments } from '../../toolbar-context/utils';\nimport { RenderButtonProps, ToolbarButtonProps } from './commons';\n\nconst IconMapping: Record<TextAlignments, ReactNode> = {\n left: <TextAlignLeftIcon />,\n center: <TextAlignCenterIcon />,\n right: <TextAlignRightIcon />,\n justify: <TextAlignJustifyIcon />\n};\n\nexport const TextAlignTool = ({\n renderButton,\n buttonProps\n}: Omit<ToolbarButtonProps, 'renderButton'> & {\n renderButton?: (\n props: Omit<RenderButtonProps, 'onChange' | 'active'> & {\n onChange: (alignment: TextAlignments) => void;\n active: TextAlignments;\n }\n ) => React.ReactNode;\n}) => {\n const [editor] = useLexicalComposerContext();\n const [alignment] = useToolbarStore((state) => state.data.textAlign);\n\n const getNextAlignment = (currentAlign: TextAlignments) => {\n let activeIndex = textAlignments.indexOf(currentAlign);\n if (activeIndex === textAlignments.length - 1) {\n activeIndex = 0;\n } else {\n activeIndex++;\n }\n\n return textAlignments[activeIndex];\n };\n\n const handleClick = () => {\n editor.dispatchCommand(FORMAT_ELEMENT_COMMAND, getNextAlignment(alignment));\n };\n\n if (renderButton) {\n return renderButton({ editor, active: alignment, onChange: handleClick });\n }\n\n const Icon = () => IconMapping[alignment];\n\n return (\n <IconButton\n icon={<Icon />}\n variant=\"ghost\"\n color=\"default\"\n className={clsx(\n 'twigs-editor-tool-button',\n `twigs-editor-tool-button--${alignment}`\n )}\n onClick={handleClick}\n title={`Change text alignment from ${alignment} to ${getNextAlignment(\n alignment\n )}`}\n aria-label={`Change text alignment from ${alignment} to ${getNextAlignment(\n alignment\n )}`}\n data-tool=\"text-align\"\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,MAAM,WAAiD,GAAA;AAAA,EACrD,IAAA,sBAAO,iBAAkB,EAAA,EAAA,CAAA;AAAA,EACzB,MAAA,sBAAS,mBAAoB,EAAA,EAAA,CAAA;AAAA,EAC7B,KAAA,sBAAQ,kBAAmB,EAAA,EAAA,CAAA;AAAA,EAC3B,OAAA,sBAAU,oBAAqB,EAAA,EAAA;AACjC,CAAA;AAEO,MAAM,gBAAgB,CAAC;AAAA,EAC5B,YAAA;AAAA,EACA;AACF,CAOM,KAAA;AACJ,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,SAAS,CAAA;AAEnE,EAAM,MAAA,gBAAA,GAAmB,CAAC,YAAiC,KAAA;AACzD,IAAI,IAAA,WAAA,GAAc,cAAe,CAAA,OAAA,CAAQ,YAAY,CAAA;AACrD,IAAI,IAAA,WAAA,KAAgB,cAAe,CAAA,MAAA,GAAS,CAAG,EAAA;AAC7C,MAAc,WAAA,GAAA,CAAA;AAAA,KACT,MAAA;AACL,MAAA,WAAA,EAAA;AAAA;AAGF,IAAA,OAAO,eAAe,WAAW,CAAA;AAAA,GACnC;AAEA,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,MAAA,CAAO,eAAgB,CAAA,sBAAA,EAAwB,gBAAiB,CAAA,SAAS,CAAC,CAAA;AAAA,GAC5E;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,QAAQ,SAAW,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG1E,EAAM,MAAA,IAAA,GAAO,MAAM,WAAA,CAAY,SAAS,CAAA;AAExC,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,IAAK,EAAA,EAAA,CAAA;AAAA,MACZ,OAAQ,EAAA,OAAA;AAAA,MACR,KAAM,EAAA,SAAA;AAAA,MACN,SAAW,EAAA,IAAA;AAAA,QACT,0BAAA;AAAA,QACA,6BAA6B,SAAS,CAAA;AAAA,OACxC;AAAA,MACA,OAAS,EAAA,WAAA;AAAA,MACT,KAAA,EAAO,CAA8B,2BAAA,EAAA,SAAS,CAAO,IAAA,EAAA,gBAAA;AAAA,QACnD;AAAA,OACD,CAAA,CAAA;AAAA,MACD,YAAA,EAAY,CAA8B,2BAAA,EAAA,SAAS,CAAO,IAAA,EAAA,gBAAA;AAAA,QACxD;AAAA,OACD,CAAA,CAAA;AAAA,MACD,WAAU,EAAA;AAAA,KACN,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
3
|
+
import { FORMAT_TEXT_COMMAND } from 'lexical';
|
4
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
5
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
6
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
7
|
+
import { UnderlineIcon } from '../../../react-icons/dist/es/icons/underline.js';
|
8
|
+
|
9
|
+
var __defProp = Object.defineProperty;
|
10
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
14
|
+
var __spreadValues = (a, b) => {
|
15
|
+
for (var prop in b || (b = {}))
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
18
|
+
if (__getOwnPropSymbols)
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
20
|
+
if (__propIsEnum.call(b, prop))
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
22
|
+
}
|
23
|
+
return a;
|
24
|
+
};
|
25
|
+
const UnderlineTool = ({
|
26
|
+
renderButton,
|
27
|
+
buttonProps
|
28
|
+
}) => {
|
29
|
+
const [editor] = useLexicalComposerContext();
|
30
|
+
const [active] = useToolbarStore((state) => state.data.isUnderline);
|
31
|
+
const handleClick = () => {
|
32
|
+
editor.dispatchCommand(FORMAT_TEXT_COMMAND, "underline");
|
33
|
+
};
|
34
|
+
if (renderButton) {
|
35
|
+
return renderButton({ editor, active, onChange: handleClick });
|
36
|
+
}
|
37
|
+
return /* @__PURE__ */ jsx(
|
38
|
+
IconButton,
|
39
|
+
__spreadValues({
|
40
|
+
icon: /* @__PURE__ */ jsx(UnderlineIcon, {}),
|
41
|
+
variant: active ? "solid" : "ghost",
|
42
|
+
color: "default",
|
43
|
+
onClick: handleClick,
|
44
|
+
className: clsx("twigs-editor-tool-button", {
|
45
|
+
"twigs-editor-tool-button--active": active
|
46
|
+
}),
|
47
|
+
title: active ? "Remove underline" : "Add underline",
|
48
|
+
"aria-label": active ? "Remove underline" : "Add underline",
|
49
|
+
"data-tool": "underline"
|
50
|
+
}, buttonProps)
|
51
|
+
);
|
52
|
+
};
|
53
|
+
|
54
|
+
export { UnderlineTool };
|
55
|
+
//# sourceMappingURL=underline.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"underline.js","sources":["../../../../../src/components/toolbar/tools/underline.tsx"],"sourcesContent":["import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { UnderlineIcon } from '@sparrowengg/twigs-react-icons';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport { FORMAT_TEXT_COMMAND } from 'lexical';\nimport clsx from 'clsx';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { ToolbarButtonProps } from './commons';\n\nexport const UnderlineTool = ({\n renderButton,\n buttonProps\n}: ToolbarButtonProps) => {\n const [editor] = useLexicalComposerContext();\n const [active] = useToolbarStore((state) => state.data.isUnderline);\n\n const handleClick = () => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'underline');\n };\n\n if (renderButton) {\n return renderButton({ editor, active, onChange: handleClick });\n }\n\n return (\n <IconButton\n icon={<UnderlineIcon />}\n variant={active ? 'solid' : 'ghost'}\n color=\"default\"\n onClick={handleClick}\n className={clsx('twigs-editor-tool-button', {\n 'twigs-editor-tool-button--active': active\n })}\n title={active ? 'Remove underline' : 'Add underline'}\n aria-label={active ? 'Remove underline' : 'Add underline'}\n data-tool=\"underline\"\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAQO,MAAM,gBAAgB,CAAC;AAAA,EAC5B,YAAA;AAAA,EACA;AACF,CAA0B,KAAA;AACxB,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,CAAC,MAAM,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,WAAW,CAAA;AAElE,EAAA,MAAM,cAAc,MAAM;AACxB,IAAO,MAAA,CAAA,eAAA,CAAgB,qBAAqB,WAAW,CAAA;AAAA,GACzD;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,MAAQ,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG/D,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,aAAc,EAAA,EAAA,CAAA;AAAA,MACrB,OAAA,EAAS,SAAS,OAAU,GAAA,OAAA;AAAA,MAC5B,KAAM,EAAA,SAAA;AAAA,MACN,OAAS,EAAA,WAAA;AAAA,MACT,SAAA,EAAW,KAAK,0BAA4B,EAAA;AAAA,QAC1C,kCAAoC,EAAA;AAAA,OACrC,CAAA;AAAA,MACD,KAAA,EAAO,SAAS,kBAAqB,GAAA,eAAA;AAAA,MACrC,YAAA,EAAY,SAAS,kBAAqB,GAAA,eAAA;AAAA,MAC1C,WAAU,EAAA;AAAA,KACN,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { INSERT_UNORDERED_LIST_COMMAND } from '@lexical/list';
|
3
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
4
|
+
import { clsx } from '../../../react-editor/node_modules/clsx/dist/clsx.js';
|
5
|
+
import { useToolbarStore } from '../../toolbar-context/store.js';
|
6
|
+
import { formatParagraph } from './commons.js';
|
7
|
+
import { IconButton } from '../../../react-components/dist/es/button/icon-button.js';
|
8
|
+
import { UnorderedListIcon } from '../../../react-icons/dist/es/icons/unordered-list.js';
|
9
|
+
|
10
|
+
var __defProp = Object.defineProperty;
|
11
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
12
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
13
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
14
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
15
|
+
var __spreadValues = (a, b) => {
|
16
|
+
for (var prop in b || (b = {}))
|
17
|
+
if (__hasOwnProp.call(b, prop))
|
18
|
+
__defNormalProp(a, prop, b[prop]);
|
19
|
+
if (__getOwnPropSymbols)
|
20
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
21
|
+
if (__propIsEnum.call(b, prop))
|
22
|
+
__defNormalProp(a, prop, b[prop]);
|
23
|
+
}
|
24
|
+
return a;
|
25
|
+
};
|
26
|
+
const UnorderedListTool = ({
|
27
|
+
renderButton,
|
28
|
+
buttonProps
|
29
|
+
}) => {
|
30
|
+
const [active] = useToolbarStore((state) => state.data.isUnOrderedList);
|
31
|
+
const [editor] = useLexicalComposerContext();
|
32
|
+
const handleClick = () => {
|
33
|
+
if (!active) {
|
34
|
+
editor.dispatchCommand(INSERT_UNORDERED_LIST_COMMAND, void 0);
|
35
|
+
} else {
|
36
|
+
formatParagraph(editor);
|
37
|
+
}
|
38
|
+
};
|
39
|
+
if (renderButton) {
|
40
|
+
return renderButton({ editor, active, onChange: handleClick });
|
41
|
+
}
|
42
|
+
return /* @__PURE__ */ jsx(
|
43
|
+
IconButton,
|
44
|
+
__spreadValues({
|
45
|
+
icon: /* @__PURE__ */ jsx(UnorderedListIcon, {}),
|
46
|
+
variant: active ? "solid" : "ghost",
|
47
|
+
color: "default",
|
48
|
+
onClick: handleClick,
|
49
|
+
title: active ? "Change formatting from unordered list to paragraph" : "Change formatting to unordered list",
|
50
|
+
"aria-label": active ? "Change formatting from unordered list to paragraph" : "Change formatting to unordered list",
|
51
|
+
className: clsx("twigs-editor-tool-button", {
|
52
|
+
"twigs-editor-tool-button--active": active
|
53
|
+
}),
|
54
|
+
"data-tool": "unordered-list"
|
55
|
+
}, buttonProps)
|
56
|
+
);
|
57
|
+
};
|
58
|
+
|
59
|
+
export { UnorderedListTool };
|
60
|
+
//# sourceMappingURL=unordered-list.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"unordered-list.js","sources":["../../../../../src/components/toolbar/tools/unordered-list.tsx"],"sourcesContent":["import { INSERT_UNORDERED_LIST_COMMAND } from '@lexical/list';\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { UnorderedListIcon } from '@sparrowengg/twigs-react-icons';\nimport { IconButton } from '@sparrowengg/twigs-react';\nimport clsx from 'clsx';\nimport { useToolbarStore } from '../../toolbar-context/store';\nimport { ToolbarButtonProps, formatParagraph } from './commons';\n\nexport const UnorderedListTool = ({\n renderButton,\n buttonProps\n}: ToolbarButtonProps) => {\n const [active] = useToolbarStore((state) => state.data.isUnOrderedList);\n const [editor] = useLexicalComposerContext();\n\n const handleClick = () => {\n if (!active) {\n editor.dispatchCommand(INSERT_UNORDERED_LIST_COMMAND, undefined);\n } else {\n formatParagraph(editor);\n }\n };\n\n if (renderButton) {\n return renderButton({ editor, active, onChange: handleClick });\n }\n\n return (\n <IconButton\n icon={<UnorderedListIcon />}\n variant={active ? 'solid' : 'ghost'}\n color=\"default\"\n onClick={handleClick}\n title={\n active\n ? 'Change formatting from unordered list to paragraph'\n : 'Change formatting to unordered list'\n }\n aria-label={\n active\n ? 'Change formatting from unordered list to paragraph'\n : 'Change formatting to unordered list'\n }\n className={clsx('twigs-editor-tool-button', {\n 'twigs-editor-tool-button--active': active\n })}\n data-tool=\"unordered-list\"\n {...buttonProps}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQO,MAAM,oBAAoB,CAAC;AAAA,EAChC,YAAA;AAAA,EACA;AACF,CAA0B,KAAA;AACxB,EAAM,MAAA,CAAC,MAAM,CAAI,GAAA,eAAA,CAAgB,CAAC,KAAU,KAAA,KAAA,CAAM,KAAK,eAAe,CAAA;AACtE,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAE3C,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,IAAI,CAAC,MAAQ,EAAA;AACX,MAAO,MAAA,CAAA,eAAA,CAAgB,+BAA+B,MAAS,CAAA;AAAA,KAC1D,MAAA;AACL,MAAA,eAAA,CAAgB,MAAM,CAAA;AAAA;AACxB,GACF;AAEA,EAAA,IAAI,YAAc,EAAA;AAChB,IAAA,OAAO,aAAa,EAAE,MAAA,EAAQ,MAAQ,EAAA,QAAA,EAAU,aAAa,CAAA;AAAA;AAG/D,EACE,uBAAA,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,IAAA,sBAAO,iBAAkB,EAAA,EAAA,CAAA;AAAA,MACzB,OAAA,EAAS,SAAS,OAAU,GAAA,OAAA;AAAA,MAC5B,KAAM,EAAA,SAAA;AAAA,MACN,OAAS,EAAA,WAAA;AAAA,MACT,KAAA,EACE,SACI,oDACA,GAAA,qCAAA;AAAA,MAEN,YAAA,EACE,SACI,oDACA,GAAA,qCAAA;AAAA,MAEN,SAAA,EAAW,KAAK,0BAA4B,EAAA;AAAA,QAC1C,kCAAoC,EAAA;AAAA,OACrC,CAAA;AAAA,MACD,WAAU,EAAA;AAAA,KACN,EAAA,WAAA;AAAA,GACN;AAEJ;;;;"}
|
@@ -0,0 +1,145 @@
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
2
|
+
import { $isCodeNode } from '@lexical/code';
|
3
|
+
import { $isLinkNode } from '@lexical/link';
|
4
|
+
import { $isListNode, ListNode } from '@lexical/list';
|
5
|
+
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
|
6
|
+
import { $isHeadingNode } from '@lexical/rich-text';
|
7
|
+
import { $getNearestNodeOfType, $findMatchingParent, mergeRegister } from '@lexical/utils';
|
8
|
+
import { $getSelection, $isRangeSelection, $isParagraphNode, $isElementNode, SELECTION_CHANGE_COMMAND, CAN_UNDO_COMMAND, CAN_REDO_COMMAND } from 'lexical';
|
9
|
+
import { useCallback, useEffect } from 'react';
|
10
|
+
import { getSelectedNode } from '../../utils/get-selected-node.js';
|
11
|
+
import { ToolbarStoreProvider, useToolbarStore } from './store.js';
|
12
|
+
import { textAlignments } from './utils.js';
|
13
|
+
|
14
|
+
const LowPriority = 1;
|
15
|
+
const ToolbarContextPlugin = ({
|
16
|
+
children
|
17
|
+
}) => {
|
18
|
+
return /* @__PURE__ */ jsx(ToolbarStoreProvider, { children: /* @__PURE__ */ jsx(ToolbarContextConsumer, { children }) });
|
19
|
+
};
|
20
|
+
const ToolbarContextConsumer = ({
|
21
|
+
children
|
22
|
+
}) => {
|
23
|
+
const [editor] = useLexicalComposerContext();
|
24
|
+
const [, updateData] = useToolbarStore((state) => state.data);
|
25
|
+
const updateToolbar = useCallback(() => {
|
26
|
+
const selection = $getSelection();
|
27
|
+
if ($isRangeSelection(selection)) {
|
28
|
+
const anchorNode = selection.anchor.getNode();
|
29
|
+
const element = anchorNode.getKey() === "root" ? anchorNode : anchorNode.getTopLevelElementOrThrow();
|
30
|
+
const elementKey = element.getKey();
|
31
|
+
const elementDOM = editor.getElementByKey(elementKey);
|
32
|
+
if (elementDOM !== null) {
|
33
|
+
if ($isListNode(element)) {
|
34
|
+
const parentList = $getNearestNodeOfType(anchorNode, ListNode);
|
35
|
+
const type = parentList ? parentList.getTag() : element.getTag();
|
36
|
+
if (type === "ul") {
|
37
|
+
updateData({
|
38
|
+
isUnOrderedList: true,
|
39
|
+
isOrderedList: false
|
40
|
+
});
|
41
|
+
} else if (type === "ol") {
|
42
|
+
updateData({
|
43
|
+
isUnOrderedList: false,
|
44
|
+
isOrderedList: true
|
45
|
+
});
|
46
|
+
}
|
47
|
+
} else {
|
48
|
+
updateData({
|
49
|
+
isUnOrderedList: false,
|
50
|
+
isOrderedList: false
|
51
|
+
});
|
52
|
+
}
|
53
|
+
if ($isHeadingNode(element)) {
|
54
|
+
const headingTag = element.getTag();
|
55
|
+
updateData({
|
56
|
+
format: headingTag
|
57
|
+
});
|
58
|
+
}
|
59
|
+
if ($isParagraphNode(element)) {
|
60
|
+
updateData({
|
61
|
+
format: "paragraph"
|
62
|
+
});
|
63
|
+
}
|
64
|
+
if ($isCodeNode(element)) {
|
65
|
+
updateData({
|
66
|
+
format: "code"
|
67
|
+
});
|
68
|
+
}
|
69
|
+
}
|
70
|
+
updateData({
|
71
|
+
isBold: selection.hasFormat("bold"),
|
72
|
+
isItalic: selection.hasFormat("italic"),
|
73
|
+
isUnderline: selection.hasFormat("underline"),
|
74
|
+
isStrikethrough: selection.hasFormat("strikethrough"),
|
75
|
+
isSubscript: selection.hasFormat("subscript"),
|
76
|
+
isSuperscript: selection.hasFormat("superscript"),
|
77
|
+
isCode: selection.hasFormat("code")
|
78
|
+
});
|
79
|
+
const node = getSelectedNode(selection);
|
80
|
+
const parent = node.getParent();
|
81
|
+
if ($isLinkNode(parent) || $isLinkNode(node)) {
|
82
|
+
updateData({
|
83
|
+
isLink: true
|
84
|
+
});
|
85
|
+
} else {
|
86
|
+
updateData({
|
87
|
+
isLink: false
|
88
|
+
});
|
89
|
+
}
|
90
|
+
let matchingParent;
|
91
|
+
if ($isLinkNode(parent)) {
|
92
|
+
matchingParent = $findMatchingParent(
|
93
|
+
node,
|
94
|
+
(parentNode) => $isElementNode(parentNode) && !parentNode.isInline()
|
95
|
+
);
|
96
|
+
}
|
97
|
+
let formatType = null;
|
98
|
+
if ($isElementNode(matchingParent)) {
|
99
|
+
formatType = matchingParent.getFormatType();
|
100
|
+
} else if ($isElementNode(node)) {
|
101
|
+
formatType = node.getFormatType();
|
102
|
+
} else {
|
103
|
+
formatType = parent == null ? void 0 : parent.getFormatType();
|
104
|
+
}
|
105
|
+
updateData({
|
106
|
+
textAlign: textAlignments.includes(formatType) ? formatType : "left"
|
107
|
+
});
|
108
|
+
}
|
109
|
+
}, []);
|
110
|
+
useEffect(() => {
|
111
|
+
return mergeRegister(
|
112
|
+
editor.registerUpdateListener(({ editorState }) => {
|
113
|
+
editorState.read(() => {
|
114
|
+
updateToolbar();
|
115
|
+
});
|
116
|
+
}),
|
117
|
+
editor.registerCommand(
|
118
|
+
SELECTION_CHANGE_COMMAND,
|
119
|
+
() => {
|
120
|
+
updateToolbar();
|
121
|
+
return false;
|
122
|
+
},
|
123
|
+
LowPriority
|
124
|
+
),
|
125
|
+
editor.registerCommand(
|
126
|
+
CAN_UNDO_COMMAND,
|
127
|
+
() => {
|
128
|
+
return false;
|
129
|
+
},
|
130
|
+
LowPriority
|
131
|
+
),
|
132
|
+
editor.registerCommand(
|
133
|
+
CAN_REDO_COMMAND,
|
134
|
+
() => {
|
135
|
+
return false;
|
136
|
+
},
|
137
|
+
LowPriority
|
138
|
+
)
|
139
|
+
);
|
140
|
+
}, [editor, updateToolbar]);
|
141
|
+
return children;
|
142
|
+
};
|
143
|
+
|
144
|
+
export { ToolbarContextConsumer, ToolbarContextPlugin };
|
145
|
+
//# sourceMappingURL=context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../../../src/components/toolbar-context/context.tsx"],"sourcesContent":["import { $isCodeNode } from '@lexical/code';\nimport { $isLinkNode } from '@lexical/link';\nimport { $isListNode, ListNode } from '@lexical/list';\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';\nimport { $isHeadingNode } from '@lexical/rich-text';\nimport {\n $findMatchingParent,\n $getNearestNodeOfType,\n mergeRegister\n} from '@lexical/utils';\nimport {\n $getSelection,\n $isElementNode,\n $isParagraphNode,\n $isRangeSelection,\n CAN_REDO_COMMAND,\n CAN_UNDO_COMMAND,\n ElementFormatType,\n SELECTION_CHANGE_COMMAND\n} from 'lexical';\nimport { ReactNode, useCallback, useEffect } from 'react';\nimport { getSelectedNode } from '../../utils/get-selected-node';\nimport { useToolbarStore, ToolbarStoreProvider } from './store';\nimport { TextAlignments, textAlignments } from './utils';\n\nconst LowPriority = 1;\n\nexport const ToolbarContextPlugin = ({\n children\n}: {\n children?: ReactNode;\n}) => {\n return (\n <ToolbarStoreProvider>\n <ToolbarContextConsumer>{children}</ToolbarContextConsumer>\n </ToolbarStoreProvider>\n );\n};\n\nexport const ToolbarContextConsumer = ({\n children\n}: {\n children?: ReactNode;\n}) => {\n const [editor] = useLexicalComposerContext();\n const [, updateData] = useToolbarStore((state) => state.data);\n\n const updateToolbar = useCallback(() => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n const anchorNode = selection.anchor.getNode();\n const element = anchorNode.getKey() === 'root'\n ? anchorNode\n : anchorNode.getTopLevelElementOrThrow();\n const elementKey = element.getKey();\n const elementDOM = editor.getElementByKey(elementKey);\n if (elementDOM !== null) {\n if ($isListNode(element)) {\n const parentList = $getNearestNodeOfType(anchorNode, ListNode);\n const type = parentList ? parentList.getTag() : element.getTag();\n if (type === 'ul') {\n updateData({\n isUnOrderedList: true,\n isOrderedList: false\n });\n } else if (type === 'ol') {\n updateData({\n isUnOrderedList: false,\n isOrderedList: true\n });\n }\n } else {\n updateData({\n isUnOrderedList: false,\n isOrderedList: false\n });\n }\n\n if ($isHeadingNode(element)) {\n const headingTag = element.getTag();\n updateData({\n format: headingTag\n });\n }\n\n if ($isParagraphNode(element)) {\n updateData({\n format: 'paragraph'\n });\n }\n\n if ($isCodeNode(element)) {\n updateData({\n format: 'code'\n });\n }\n }\n\n // Update text format\n updateData({\n isBold: selection.hasFormat('bold'),\n isItalic: selection.hasFormat('italic'),\n isUnderline: selection.hasFormat('underline'),\n isStrikethrough: selection.hasFormat('strikethrough'),\n isSubscript: selection.hasFormat('subscript'),\n isSuperscript: selection.hasFormat('superscript'),\n isCode: selection.hasFormat('code')\n });\n // Update links\n const node = getSelectedNode(selection);\n const parent = node.getParent();\n\n if ($isLinkNode(parent) || $isLinkNode(node)) {\n updateData({\n isLink: true\n });\n } else {\n updateData({\n isLink: false\n });\n }\n\n let matchingParent;\n if ($isLinkNode(parent)) {\n // If node is a link, we need to fetch the parent paragraph node to set format\n matchingParent = $findMatchingParent(\n node,\n (parentNode) => $isElementNode(parentNode) && !parentNode.isInline()\n );\n }\n\n let formatType: ElementFormatType | null | undefined = null;\n if ($isElementNode(matchingParent)) {\n formatType = matchingParent.getFormatType();\n } else if ($isElementNode(node)) {\n formatType = node.getFormatType();\n } else {\n formatType = parent?.getFormatType();\n }\n\n updateData({\n textAlign: textAlignments.includes(formatType as any)\n ? (formatType as TextAlignments)\n : 'left'\n });\n }\n }, []);\n\n useEffect(() => {\n return mergeRegister(\n editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n updateToolbar();\n });\n }),\n editor.registerCommand(\n SELECTION_CHANGE_COMMAND,\n () => {\n updateToolbar();\n return false;\n },\n LowPriority\n ),\n editor.registerCommand(\n CAN_UNDO_COMMAND,\n () => {\n return false;\n },\n LowPriority\n ),\n editor.registerCommand(\n CAN_REDO_COMMAND,\n () => {\n return false;\n },\n LowPriority\n )\n );\n }, [editor, updateToolbar]);\n\n return children;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAyBA,MAAM,WAAc,GAAA,CAAA;AAEb,MAAM,uBAAuB,CAAC;AAAA,EACnC;AACF,CAEM,KAAA;AACJ,EAAA,uBACG,GAAA,CAAA,oBAAA,EAAA,EACC,QAAC,kBAAA,GAAA,CAAA,sBAAA,EAAA,EAAwB,UAAS,CACpC,EAAA,CAAA;AAEJ;AAEO,MAAM,yBAAyB,CAAC;AAAA,EACrC;AACF,CAEM,KAAA;AACJ,EAAM,MAAA,CAAC,MAAM,CAAA,GAAI,yBAA0B,EAAA;AAC3C,EAAM,MAAA,GAAG,UAAU,CAAA,GAAI,gBAAgB,CAAC,KAAA,KAAU,MAAM,IAAI,CAAA;AAE5D,EAAM,MAAA,aAAA,GAAgB,YAAY,MAAM;AACtC,IAAA,MAAM,YAAY,aAAc,EAAA;AAChC,IAAI,IAAA,iBAAA,CAAkB,SAAS,CAAG,EAAA;AAChC,MAAM,MAAA,UAAA,GAAa,SAAU,CAAA,MAAA,CAAO,OAAQ,EAAA;AAC5C,MAAA,MAAM,UAAU,UAAW,CAAA,MAAA,OAAa,MACpC,GAAA,UAAA,GACA,WAAW,yBAA0B,EAAA;AACzC,MAAM,MAAA,UAAA,GAAa,QAAQ,MAAO,EAAA;AAClC,MAAM,MAAA,UAAA,GAAa,MAAO,CAAA,eAAA,CAAgB,UAAU,CAAA;AACpD,MAAA,IAAI,eAAe,IAAM,EAAA;AACvB,QAAI,IAAA,WAAA,CAAY,OAAO,CAAG,EAAA;AACxB,UAAM,MAAA,UAAA,GAAa,qBAAsB,CAAA,UAAA,EAAY,QAAQ,CAAA;AAC7D,UAAA,MAAM,OAAO,UAAa,GAAA,UAAA,CAAW,MAAO,EAAA,GAAI,QAAQ,MAAO,EAAA;AAC/D,UAAA,IAAI,SAAS,IAAM,EAAA;AACjB,YAAW,UAAA,CAAA;AAAA,cACT,eAAiB,EAAA,IAAA;AAAA,cACjB,aAAe,EAAA;AAAA,aAChB,CAAA;AAAA,WACH,MAAA,IAAW,SAAS,IAAM,EAAA;AACxB,YAAW,UAAA,CAAA;AAAA,cACT,eAAiB,EAAA,KAAA;AAAA,cACjB,aAAe,EAAA;AAAA,aAChB,CAAA;AAAA;AACH,SACK,MAAA;AACL,UAAW,UAAA,CAAA;AAAA,YACT,eAAiB,EAAA,KAAA;AAAA,YACjB,aAAe,EAAA;AAAA,WAChB,CAAA;AAAA;AAGH,QAAI,IAAA,cAAA,CAAe,OAAO,CAAG,EAAA;AAC3B,UAAM,MAAA,UAAA,GAAa,QAAQ,MAAO,EAAA;AAClC,UAAW,UAAA,CAAA;AAAA,YACT,MAAQ,EAAA;AAAA,WACT,CAAA;AAAA;AAGH,QAAI,IAAA,gBAAA,CAAiB,OAAO,CAAG,EAAA;AAC7B,UAAW,UAAA,CAAA;AAAA,YACT,MAAQ,EAAA;AAAA,WACT,CAAA;AAAA;AAGH,QAAI,IAAA,WAAA,CAAY,OAAO,CAAG,EAAA;AACxB,UAAW,UAAA,CAAA;AAAA,YACT,MAAQ,EAAA;AAAA,WACT,CAAA;AAAA;AACH;AAIF,MAAW,UAAA,CAAA;AAAA,QACT,MAAA,EAAQ,SAAU,CAAA,SAAA,CAAU,MAAM,CAAA;AAAA,QAClC,QAAA,EAAU,SAAU,CAAA,SAAA,CAAU,QAAQ,CAAA;AAAA,QACtC,WAAA,EAAa,SAAU,CAAA,SAAA,CAAU,WAAW,CAAA;AAAA,QAC5C,eAAA,EAAiB,SAAU,CAAA,SAAA,CAAU,eAAe,CAAA;AAAA,QACpD,WAAA,EAAa,SAAU,CAAA,SAAA,CAAU,WAAW,CAAA;AAAA,QAC5C,aAAA,EAAe,SAAU,CAAA,SAAA,CAAU,aAAa,CAAA;AAAA,QAChD,MAAA,EAAQ,SAAU,CAAA,SAAA,CAAU,MAAM;AAAA,OACnC,CAAA;AAED,MAAM,MAAA,IAAA,GAAO,gBAAgB,SAAS,CAAA;AACtC,MAAM,MAAA,MAAA,GAAS,KAAK,SAAU,EAAA;AAE9B,MAAA,IAAI,WAAY,CAAA,MAAM,CAAK,IAAA,WAAA,CAAY,IAAI,CAAG,EAAA;AAC5C,QAAW,UAAA,CAAA;AAAA,UACT,MAAQ,EAAA;AAAA,SACT,CAAA;AAAA,OACI,MAAA;AACL,QAAW,UAAA,CAAA;AAAA,UACT,MAAQ,EAAA;AAAA,SACT,CAAA;AAAA;AAGH,MAAI,IAAA,cAAA;AACJ,MAAI,IAAA,WAAA,CAAY,MAAM,CAAG,EAAA;AAEvB,QAAiB,cAAA,GAAA,mBAAA;AAAA,UACf,IAAA;AAAA,UACA,CAAC,UAAe,KAAA,cAAA,CAAe,UAAU,CAAK,IAAA,CAAC,WAAW,QAAS;AAAA,SACrE;AAAA;AAGF,MAAA,IAAI,UAAmD,GAAA,IAAA;AACvD,MAAI,IAAA,cAAA,CAAe,cAAc,CAAG,EAAA;AAClC,QAAA,UAAA,GAAa,eAAe,aAAc,EAAA;AAAA,OAC5C,MAAA,IAAW,cAAe,CAAA,IAAI,CAAG,EAAA;AAC/B,QAAA,UAAA,GAAa,KAAK,aAAc,EAAA;AAAA,OAC3B,MAAA;AACL,QAAA,UAAA,GAAa,MAAQ,IAAA,IAAA,GAAA,MAAA,GAAA,MAAA,CAAA,aAAA,EAAA;AAAA;AAGvB,MAAW,UAAA,CAAA;AAAA,QACT,SAAW,EAAA,cAAA,CAAe,QAAS,CAAA,UAAiB,IAC/C,UACD,GAAA;AAAA,OACL,CAAA;AAAA;AACH,GACF,EAAG,EAAE,CAAA;AAEL,EAAA,SAAA,CAAU,MAAM;AACd,IAAO,OAAA,aAAA;AAAA,MACL,MAAO,CAAA,sBAAA,CAAuB,CAAC,EAAE,aAAkB,KAAA;AACjD,QAAA,WAAA,CAAY,KAAK,MAAM;AACrB,UAAc,aAAA,EAAA;AAAA,SACf,CAAA;AAAA,OACF,CAAA;AAAA,MACD,MAAO,CAAA,eAAA;AAAA,QACL,wBAAA;AAAA,QACA,MAAM;AACJ,UAAc,aAAA,EAAA;AACd,UAAO,OAAA,KAAA;AAAA,SACT;AAAA,QACA;AAAA,OACF;AAAA,MACA,MAAO,CAAA,eAAA;AAAA,QACL,gBAAA;AAAA,QACA,MAAM;AACJ,UAAO,OAAA,KAAA;AAAA,SACT;AAAA,QACA;AAAA,OACF;AAAA,MACA,MAAO,CAAA,eAAA;AAAA,QACL,gBAAA;AAAA,QACA,MAAM;AACJ,UAAO,OAAA,KAAA;AAAA,SACT;AAAA,QACA;AAAA;AACF,KACF;AAAA,GACC,EAAA,CAAC,MAAQ,EAAA,aAAa,CAAC,CAAA;AAE1B,EAAO,OAAA,QAAA;AACT;;;;"}
|