@kaizen/components 1.33.0 → 1.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Input/Input/types.cjs +7 -0
- package/dist/cjs/Input/Input/types.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/EditableRichTextContent/EditableRichTextContent.cjs +47 -0
- package/dist/cjs/RichTextEditor/EditableRichTextContent/EditableRichTextContent.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss.cjs +8 -0
- package/dist/cjs/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextContent/RichTextContent.cjs +61 -0
- package/dist/cjs/RichTextEditor/RichTextContent/RichTextContent.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextContent/RichTextContent.module.scss.cjs +7 -0
- package/dist/cjs/RichTextEditor/RichTextContent/RichTextContent.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/RichTextEditor.cjs +177 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/RichTextEditor.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/RichTextEditor.module.scss.cjs +32 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/RichTextEditor.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/schema.cjs +88 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/schema.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.cjs +43 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.cjs +14 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.cjs +71 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss.cjs +7 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.cjs +16 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss.cjs +7 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/controlmap.cjs +274 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/controlmap.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/inputrules.cjs +50 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/inputrules.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/keymap.cjs +108 -0
- package/dist/cjs/RichTextEditor/RichTextEditor/utils/keymap.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/constants.cjs +5 -0
- package/dist/cjs/RichTextEditor/constants.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/addMark.cjs +21 -0
- package/dist/cjs/RichTextEditor/utils/commands/addMark.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/getMarkAttrs.cjs +26 -0
- package/dist/cjs/RichTextEditor/utils/commands/getMarkAttrs.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/getMarkRange.cjs +44 -0
- package/dist/cjs/RichTextEditor/utils/commands/getMarkRange.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/listIsActive.cjs +9 -0
- package/dist/cjs/RichTextEditor/utils/commands/listIsActive.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/markContainsSelection.cjs +17 -0
- package/dist/cjs/RichTextEditor/utils/commands/markContainsSelection.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/markIsActive.cjs +15 -0
- package/dist/cjs/RichTextEditor/utils/commands/markIsActive.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/removeMark.cjs +40 -0
- package/dist/cjs/RichTextEditor/utils/commands/removeMark.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/updateMark.cjs +38 -0
- package/dist/cjs/RichTextEditor/utils/commands/updateMark.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/commands/validateAndRemoveMarks.cjs +36 -0
- package/dist/cjs/RichTextEditor/utils/commands/validateAndRemoveMarks.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/core/createRichTextEditor.cjs +53 -0
- package/dist/cjs/RichTextEditor/utils/core/createRichTextEditor.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/core/hooks/useRichTextEditor.cjs +76 -0
- package/dist/cjs/RichTextEditor/utils/core/hooks/useRichTextEditor.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/core/inputrules.cjs +26 -0
- package/dist/cjs/RichTextEditor/utils/core/inputrules.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/core/state.cjs +41 -0
- package/dist/cjs/RichTextEditor/utils/core/state.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/LinkManager.cjs +136 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/LinkManager.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.cjs +62 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.cjs +68 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.cjs +58 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss.cjs +11 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.cjs +43 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.cjs +52 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/validation.cjs +16 -0
- package/dist/cjs/RichTextEditor/utils/plugins/LinkManager/validation.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/schema/marks.cjs +73 -0
- package/dist/cjs/RichTextEditor/utils/schema/marks.cjs.map +1 -0
- package/dist/cjs/RichTextEditor/utils/schema/nodes.cjs +35 -0
- package/dist/cjs/RichTextEditor/utils/schema/nodes.cjs.map +1 -0
- package/dist/cjs/TextField/TextField.cjs +3 -1
- package/dist/cjs/TextField/TextField.cjs.map +1 -1
- package/dist/cjs/dts/Input/Input/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/EditableRichTextContent/EditableRichTextContent.d.ts +15 -0
- package/dist/cjs/dts/RichTextEditor/EditableRichTextContent/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/RichTextContent/RichTextContent.d.ts +10 -0
- package/dist/cjs/dts/RichTextEditor/RichTextContent/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/RichTextEditor.d.ts +43 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/index.d.ts +4 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/schema.d.ts +4 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.d.ts +17 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/types.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.d.ts +11 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/Toolbar/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.d.ts +8 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/utils/controlmap.d.ts +14 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/utils/inputrules.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/RichTextEditor/utils/keymap.d.ts +6 -0
- package/dist/cjs/dts/RichTextEditor/constants.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/index.d.ts +9 -0
- package/dist/cjs/dts/RichTextEditor/types.d.ts +12 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/addMark.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/fixtures/helpers.d.ts +8 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/fixtures/test-state.d.ts +17 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/getMarkAttrs.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/getMarkRange.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/index.d.ts +9 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/listIsActive.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/markContainsSelection.d.ts +4 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/markIsActive.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/removeMark.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/updateMark.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/commands/validateAndRemoveMarks.d.ts +12 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/createRichTextEditor.d.ts +21 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/fixtures/testState.d.ts +21 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/hooks/useRichTextEditor.d.ts +23 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/index.d.ts +5 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/inputrules.d.ts +4 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/state.d.ts +19 -0
- package/dist/cjs/dts/RichTextEditor/utils/core/types.d.ts +28 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/LinkManager.d.ts +12 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.d.ts +19 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.d.ts +13 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.d.ts +12 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/components/index.d.ts +3 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.d.ts +10 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/index.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/types.d.ts +13 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/LinkManager/validation.d.ts +6 -0
- package/dist/cjs/dts/RichTextEditor/utils/plugins/index.d.ts +1 -0
- package/dist/cjs/dts/RichTextEditor/utils/prosemirror/index.d.ts +7 -0
- package/dist/cjs/dts/RichTextEditor/utils/schema/index.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/utils/schema/marks.d.ts +2 -0
- package/dist/cjs/dts/RichTextEditor/utils/schema/nodes.d.ts +2 -0
- package/dist/cjs/dts/TextField/TextField.d.ts +2 -2
- package/dist/cjs/dts/index.d.ts +1 -0
- package/dist/cjs/index.cjs +95 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.css +14 -7
- package/dist/esm/Input/Input/types.mjs +4 -0
- package/dist/esm/Input/Input/types.mjs.map +1 -0
- package/dist/esm/RichTextEditor/EditableRichTextContent/EditableRichTextContent.mjs +45 -0
- package/dist/esm/RichTextEditor/EditableRichTextContent/EditableRichTextContent.mjs.map +1 -0
- package/dist/esm/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss.mjs +6 -0
- package/dist/esm/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextContent/RichTextContent.mjs +39 -0
- package/dist/esm/RichTextEditor/RichTextContent/RichTextContent.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextContent/RichTextContent.module.scss.mjs +5 -0
- package/dist/esm/RichTextEditor/RichTextContent/RichTextContent.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/RichTextEditor.mjs +152 -0
- package/dist/esm/RichTextEditor/RichTextEditor/RichTextEditor.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/RichTextEditor.module.scss.mjs +30 -0
- package/dist/esm/RichTextEditor/RichTextEditor/RichTextEditor.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/schema.mjs +66 -0
- package/dist/esm/RichTextEditor/RichTextEditor/schema.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.mjs +41 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.mjs +12 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.mjs +69 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss.mjs +5 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.mjs +14 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss.mjs +5 -0
- package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/controlmap.mjs +252 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/controlmap.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/inputrules.mjs +29 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/inputrules.mjs.map +1 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/keymap.mjs +84 -0
- package/dist/esm/RichTextEditor/RichTextEditor/utils/keymap.mjs.map +1 -0
- package/dist/esm/RichTextEditor/constants.mjs +3 -0
- package/dist/esm/RichTextEditor/constants.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/addMark.mjs +19 -0
- package/dist/esm/RichTextEditor/utils/commands/addMark.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/getMarkAttrs.mjs +24 -0
- package/dist/esm/RichTextEditor/utils/commands/getMarkAttrs.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/getMarkRange.mjs +42 -0
- package/dist/esm/RichTextEditor/utils/commands/getMarkRange.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/listIsActive.mjs +7 -0
- package/dist/esm/RichTextEditor/utils/commands/listIsActive.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/markContainsSelection.mjs +15 -0
- package/dist/esm/RichTextEditor/utils/commands/markContainsSelection.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/markIsActive.mjs +13 -0
- package/dist/esm/RichTextEditor/utils/commands/markIsActive.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/removeMark.mjs +38 -0
- package/dist/esm/RichTextEditor/utils/commands/removeMark.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/updateMark.mjs +36 -0
- package/dist/esm/RichTextEditor/utils/commands/updateMark.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/commands/validateAndRemoveMarks.mjs +34 -0
- package/dist/esm/RichTextEditor/utils/commands/validateAndRemoveMarks.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/core/createRichTextEditor.mjs +51 -0
- package/dist/esm/RichTextEditor/utils/core/createRichTextEditor.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/core/hooks/useRichTextEditor.mjs +74 -0
- package/dist/esm/RichTextEditor/utils/core/hooks/useRichTextEditor.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/core/inputrules.mjs +23 -0
- package/dist/esm/RichTextEditor/utils/core/inputrules.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/core/state.mjs +37 -0
- package/dist/esm/RichTextEditor/utils/core/state.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/LinkManager.mjs +134 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/LinkManager.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.mjs +60 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.mjs +66 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.mjs +56 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss.mjs +9 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.mjs +41 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.mjs +50 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/validation.mjs +14 -0
- package/dist/esm/RichTextEditor/utils/plugins/LinkManager/validation.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/schema/marks.mjs +71 -0
- package/dist/esm/RichTextEditor/utils/schema/marks.mjs.map +1 -0
- package/dist/esm/RichTextEditor/utils/schema/nodes.mjs +33 -0
- package/dist/esm/RichTextEditor/utils/schema/nodes.mjs.map +1 -0
- package/dist/esm/TextField/TextField.mjs +3 -1
- package/dist/esm/TextField/TextField.mjs.map +1 -1
- package/dist/esm/dts/Input/Input/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/EditableRichTextContent/EditableRichTextContent.d.ts +15 -0
- package/dist/esm/dts/RichTextEditor/EditableRichTextContent/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/RichTextContent/RichTextContent.d.ts +10 -0
- package/dist/esm/dts/RichTextEditor/RichTextContent/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/RichTextEditor.d.ts +43 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/index.d.ts +4 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/schema.d.ts +4 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.d.ts +17 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/types.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.d.ts +11 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/Toolbar/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.d.ts +8 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/utils/controlmap.d.ts +14 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/utils/inputrules.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/RichTextEditor/utils/keymap.d.ts +6 -0
- package/dist/esm/dts/RichTextEditor/constants.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/index.d.ts +9 -0
- package/dist/esm/dts/RichTextEditor/types.d.ts +12 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/addMark.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/fixtures/helpers.d.ts +8 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/fixtures/test-state.d.ts +17 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/getMarkAttrs.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/getMarkRange.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/index.d.ts +9 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/listIsActive.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/markContainsSelection.d.ts +4 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/markIsActive.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/removeMark.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/updateMark.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/commands/validateAndRemoveMarks.d.ts +12 -0
- package/dist/esm/dts/RichTextEditor/utils/core/createRichTextEditor.d.ts +21 -0
- package/dist/esm/dts/RichTextEditor/utils/core/fixtures/testState.d.ts +21 -0
- package/dist/esm/dts/RichTextEditor/utils/core/hooks/useRichTextEditor.d.ts +23 -0
- package/dist/esm/dts/RichTextEditor/utils/core/index.d.ts +5 -0
- package/dist/esm/dts/RichTextEditor/utils/core/inputrules.d.ts +4 -0
- package/dist/esm/dts/RichTextEditor/utils/core/state.d.ts +19 -0
- package/dist/esm/dts/RichTextEditor/utils/core/types.d.ts +28 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/LinkManager.d.ts +12 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/LinkEditor.d.ts +19 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkEditor/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.d.ts +13 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.d.ts +12 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/components/index.d.ts +3 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.d.ts +10 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/index.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/types.d.ts +13 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/LinkManager/validation.d.ts +6 -0
- package/dist/esm/dts/RichTextEditor/utils/plugins/index.d.ts +1 -0
- package/dist/esm/dts/RichTextEditor/utils/prosemirror/index.d.ts +7 -0
- package/dist/esm/dts/RichTextEditor/utils/schema/index.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/utils/schema/marks.d.ts +2 -0
- package/dist/esm/dts/RichTextEditor/utils/schema/nodes.d.ts +2 -0
- package/dist/esm/dts/TextField/TextField.d.ts +2 -2
- package/dist/esm/dts/index.d.ts +1 -0
- package/dist/esm/index.css +11 -4
- package/dist/esm/index.mjs +40 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/index.d.ts +304 -3
- package/dist/styles.css +1 -1
- package/locales/cy.json +1 -1
- package/locales/ht.json +1 -1
- package/locales/km-KH.json +1 -1
- package/locales/si-LK.json +1 -1
- package/locales/sk.json +1 -1
- package/package.json +15 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import React, { useState, useRef } from 'react';
|
|
2
|
+
import '../../../../../../Modal/ConfirmationModal/ConfirmationModal.mjs';
|
|
3
|
+
import '../../../../../../Modal/ContextModal/ContextModal.mjs';
|
|
4
|
+
import '../../../../../../Modal/GenericModal/GenericModal.mjs';
|
|
5
|
+
import '../../../../../../Modal/GenericModal/context/ModalContext.mjs';
|
|
6
|
+
import '../../../../../../Modal/GenericModal/subcomponents/ModalAccessibleDescription/ModalAccessibleDescription.mjs';
|
|
7
|
+
import '../../../../../../Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.mjs';
|
|
8
|
+
import '../../../../../../Modal/GenericModal/subcomponents/ModalHeader/ModalHeader.mjs';
|
|
9
|
+
import '../../../../../../Modal/GenericModal/subcomponents/ModalAccessibleLabel/ModalAccessibleLabel.mjs';
|
|
10
|
+
import '../../../../../../Modal/GenericModal/subcomponents/ModalBody/ModalBody.mjs';
|
|
11
|
+
import { InputEditModal } from '../../../../../../Modal/InputEditModal/InputEditModal.mjs';
|
|
12
|
+
import { TextField } from '../../../../../../TextField/TextField.mjs';
|
|
13
|
+
import { validateLink } from '../../validation.mjs';
|
|
14
|
+
const LinkModal = /*#__PURE__*/function () {
|
|
15
|
+
const LinkModal = function (_a) {
|
|
16
|
+
var onSubmit = _a.onSubmit,
|
|
17
|
+
onDismiss = _a.onDismiss,
|
|
18
|
+
onAfterLeave = _a.onAfterLeave,
|
|
19
|
+
isOpen = _a.isOpen,
|
|
20
|
+
defaultHref = _a.defaultHref;
|
|
21
|
+
var _b = useState(defaultHref || ""),
|
|
22
|
+
href = _b[0],
|
|
23
|
+
setHref = _b[1];
|
|
24
|
+
var _c = useState({
|
|
25
|
+
status: "default"
|
|
26
|
+
}),
|
|
27
|
+
validationStatus = _c[0],
|
|
28
|
+
setValidationStatus = _c[1];
|
|
29
|
+
var inputRef = useRef(null);
|
|
30
|
+
var handleSubmit = function () {
|
|
31
|
+
var _a;
|
|
32
|
+
var validation = validateLink(href);
|
|
33
|
+
if (validation.status !== "success") {
|
|
34
|
+
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
35
|
+
setValidationStatus(validation);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
onSubmit(href);
|
|
39
|
+
};
|
|
40
|
+
return /*#__PURE__*/React.createElement(InputEditModal, {
|
|
41
|
+
submitLabel: defaultHref ? "Save" : "Add",
|
|
42
|
+
mood: "positive",
|
|
43
|
+
isOpen: isOpen,
|
|
44
|
+
title: defaultHref ? "Edit link" : "Add link",
|
|
45
|
+
onSubmit: handleSubmit,
|
|
46
|
+
onDismiss: onDismiss,
|
|
47
|
+
onAfterLeave: onAfterLeave
|
|
48
|
+
}, /*#__PURE__*/React.createElement(TextField, {
|
|
49
|
+
id: "href",
|
|
50
|
+
type: "text",
|
|
51
|
+
defaultValue: href !== null && href !== void 0 ? href : "",
|
|
52
|
+
labelText: "Link URL",
|
|
53
|
+
inputRef: inputRef,
|
|
54
|
+
validationMessage: validationStatus.message,
|
|
55
|
+
status: validationStatus.status,
|
|
56
|
+
onChange: function (e) {
|
|
57
|
+
setHref(e.target.value);
|
|
58
|
+
},
|
|
59
|
+
inline: true
|
|
60
|
+
}));
|
|
61
|
+
};
|
|
62
|
+
LinkModal.displayName = "LinkModal";
|
|
63
|
+
return LinkModal;
|
|
64
|
+
}();
|
|
65
|
+
export { LinkModal };
|
|
66
|
+
//# sourceMappingURL=LinkModal.mjs.map
|
package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkModal.mjs","sources":["../../../../../../../../src/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.tsx"],"sourcesContent":["import React, { useRef, useState } from \"react\"\nimport { InputEditModal } from \"~components/Modal\"\nimport { TextField } from \"~components/TextField\"\nimport { ValidationResponse, validateLink } from \"../../validation\"\n\ntype LinkModalProps = {\n onSubmit: (href: string) => void\n onDismiss: () => void\n onAfterLeave: () => void\n isOpen: boolean\n defaultHref?: string\n}\n\nexport const LinkModal = ({\n onSubmit,\n onDismiss,\n onAfterLeave,\n isOpen,\n defaultHref,\n}: LinkModalProps): JSX.Element => {\n const [href, setHref] = useState<string>(defaultHref || \"\")\n const [validationStatus, setValidationStatus] = useState<ValidationResponse>({\n status: \"default\",\n })\n const inputRef = useRef<HTMLInputElement>(null)\n\n const handleSubmit = (): void => {\n const validation = validateLink(href)\n if (validation.status !== \"success\") {\n inputRef.current?.focus()\n setValidationStatus(validation)\n return\n }\n\n onSubmit(href)\n }\n\n return (\n <InputEditModal\n submitLabel={defaultHref ? \"Save\" : \"Add\"}\n mood=\"positive\"\n isOpen={isOpen}\n title={defaultHref ? \"Edit link\" : \"Add link\"}\n onSubmit={handleSubmit}\n onDismiss={onDismiss}\n onAfterLeave={onAfterLeave}\n >\n <TextField\n id=\"href\"\n type=\"text\"\n defaultValue={href ?? \"\"}\n labelText=\"Link URL\"\n inputRef={inputRef}\n validationMessage={validationStatus.message}\n status={validationStatus.status}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => {\n setHref(e.target.value)\n }}\n inline\n />\n </InputEditModal>\n )\n}\n\nLinkModal.displayName = \"LinkModal\"\n"],"names":["LinkModal","_a","onSubmit","onDismiss","onAfterLeave","isOpen","defaultHref","_b","useState","href","setHref","_c","status","validationStatus","setValidationStatus","inputRef","useRef","handleSubmit","validation","validateLink","current","focus","React","InputEditModal","submitLabel","mood","title","createElement","TextField","id","type","defaultValue","labelText","validationMessage","message","onChange","e","target","value","inline","displayName"],"mappings":";;;;;;;;;;;;;MAaaA,SAAS;EAAA,MAATA,SAAS,GAAG,SAAAA,CAACC,EAMT,EAAA;IALf,IAAAC,QAAQ,GAAAD,EAAA,CAAAC,QAAA;MACRC,SAAS,GAAAF,EAAA,CAAAE,SAAA;MACTC,YAAY,GAAAH,EAAA,CAAAG,YAAA;MACZC,MAAM,GAAAJ,EAAA,CAAAI,MAAA;MACNC,WAAW,GAAAL,EAAA,CAAAK,WAAA;IAEL,IAAAC,EAAkB,GAAAC,QAAQ,CAASF,WAAW,IAAI,EAAE,CAAC;MAApDG,IAAI,GAAAF,EAAA,CAAA,CAAA,CAAA;MAAEG,OAAO,QAAuC;IACrD,IAAAC,EAAA,GAA0CH,QAAQ,CAAqB;QAC3EI,MAAM,EAAE;MACT,CAAA,CAAC;MAFKC,gBAAgB,GAAAF,EAAA,CAAA,CAAA,CAAA;MAAEG,mBAAmB,QAE1C;IACF,IAAMC,QAAQ,GAAGC,MAAM,CAAmB,IAAI,CAAC;IAE/C,IAAMC,YAAY,GAAG,SAAAA,CAAA,EAAA;;MACnB,IAAMC,UAAU,GAAGC,YAAY,CAACV,IAAI,CAAC;MACrC,IAAIS,UAAU,CAACN,MAAM,KAAK,SAAS,EAAE;QACnC,CAAAX,EAAA,GAAAc,QAAQ,CAACK,OAAO,MAAE,IAAA,IAAAnB,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAoB,KAAK,CAAA,CAAE;QACzBP,mBAAmB,CAACI,UAAU,CAAC;QAC/B;MACD;MAEDhB,QAAQ,CAACO,IAAI,CAAC;IAChB,CAAC;IAED,oBACEa,oBAACC,cAAc,EAAA;MACbC,WAAW,EAAElB,WAAW,GAAG,MAAM,GAAG,KAAK;MACzCmB,IAAI,EAAC,UAAU;MACfpB,MAAM,EAAEA,MAAM;MACdqB,KAAK,EAAEpB,WAAW,GAAG,WAAW,GAAG,UAAU;MAC7CJ,QAAQ,EAAEe,YAAY;MACtBd,SAAS,EAAEA,SAAS;MACpBC,YAAY,EAAEA;IAAY,CAAA,eAE1BkB,KAAA,CAAAK,aAAA,CAACC,SAAS,EACR;MAAAC,EAAE,EAAC,MAAM;MACTC,IAAI,EAAC,MAAM;MACXC,YAAY,EAAEtB,IAAI,KAAJ,IAAA,IAAAA,IAAI,cAAJA,IAAI,GAAI,EAAE;MACxBuB,SAAS,EAAC,UAAU;MACpBjB,QAAQ,EAAEA,QAAQ;MAClBkB,iBAAiB,EAAEpB,gBAAgB,CAACqB,OAAO;MAC3CtB,MAAM,EAAEC,gBAAgB,CAACD,MAAM;MAC/BuB,QAAQ,EAAE,SAAAA,CAACC,CAAsC,EAAA;QAC/C1B,OAAO,CAAC0B,CAAC,CAACC,MAAM,CAACC,KAAK,CAAC;MACzB,CAAC;MACDC,MAAM,EACN;IAAA,CAAA,CAAA,CACa;EAErB,CAAC;EAEDvC,SAAS,CAACwC,WAAW,GAAG,WAAW;EAAA,OAnDtBxC,SAAS;AAAA;"}
|
package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.mjs
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { __assign } from 'tslib';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import 'uuid';
|
|
4
|
+
import '../../../../../../Icon/subcomponents/SVG/SVG.mjs';
|
|
5
|
+
import { EditIcon } from '../../../../../../Icon/EditIcon.mjs';
|
|
6
|
+
import { ExternalLinkIcon } from '../../../../../../Icon/ExternalLinkIcon.mjs';
|
|
7
|
+
import { RemoveLinkIcon } from '../../../../../../Icon/RemoveLinkIcon.mjs';
|
|
8
|
+
import { usePopover } from '../../../../../../Popover/Popover.mjs';
|
|
9
|
+
import { Text } from '../../../../../../Text/Text.mjs';
|
|
10
|
+
import { Positioner } from './Positioner.mjs';
|
|
11
|
+
import styles from './LinkPopover.module.scss.mjs';
|
|
12
|
+
const LinkPopover = /*#__PURE__*/function () {
|
|
13
|
+
const LinkPopover = function (_a) {
|
|
14
|
+
var href = _a.href,
|
|
15
|
+
onRemove = _a.onRemove,
|
|
16
|
+
onEdit = _a.onEdit,
|
|
17
|
+
selectionPosition = _a.selectionPosition;
|
|
18
|
+
var _b = usePopover(),
|
|
19
|
+
ElementRef = _b[0],
|
|
20
|
+
Popover = _b[1];
|
|
21
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Positioner, __assign({
|
|
22
|
+
ref: ElementRef
|
|
23
|
+
}, selectionPosition)), /*#__PURE__*/React.createElement(Popover, {
|
|
24
|
+
size: "large"
|
|
25
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
26
|
+
className: styles.popoverContent
|
|
27
|
+
}, /*#__PURE__*/React.createElement(ExternalLinkIcon, {
|
|
28
|
+
role: "presentation"
|
|
29
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
30
|
+
className: styles.popoverLinkContainer
|
|
31
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
32
|
+
variant: "body",
|
|
33
|
+
tag: "div",
|
|
34
|
+
classNameOverride: styles.paragraphFlex
|
|
35
|
+
}, /*#__PURE__*/React.createElement("a", {
|
|
36
|
+
className: styles.popoverLink,
|
|
37
|
+
href: href != null ? href : undefined,
|
|
38
|
+
target: "_blank",
|
|
39
|
+
rel: "noopener noreferrer"
|
|
40
|
+
}, href))), /*#__PURE__*/React.createElement("div", {
|
|
41
|
+
className: styles.popoverActions
|
|
42
|
+
}, /*#__PURE__*/React.createElement(EditIcon, {
|
|
43
|
+
role: "img",
|
|
44
|
+
onClick: onEdit,
|
|
45
|
+
"aria-label": "Edit link"
|
|
46
|
+
})), /*#__PURE__*/React.createElement(RemoveLinkIcon, {
|
|
47
|
+
role: "img",
|
|
48
|
+
onClick: onRemove,
|
|
49
|
+
"aria-label": "Remove link"
|
|
50
|
+
}))));
|
|
51
|
+
};
|
|
52
|
+
LinkPopover.displayName = "LinkPopover";
|
|
53
|
+
return LinkPopover;
|
|
54
|
+
}();
|
|
55
|
+
export { LinkPopover };
|
|
56
|
+
//# sourceMappingURL=LinkPopover.mjs.map
|
package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkPopover.mjs","sources":["../../../../../../../../src/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.tsx"],"sourcesContent":["import React from \"react\"\nimport { EditIcon, ExternalLinkIcon, RemoveLinkIcon } from \"~components/Icon\"\nimport { usePopover } from \"~components/Popover\"\nimport { Text } from \"~components/Text\"\nimport { SelectionPosition } from \"../../types\"\nimport { Positioner } from \"./Positioner\"\nimport styles from \"./LinkPopover.module.scss\"\n\nexport type LinkPopoverProps = {\n href?: string\n onRemove: () => void\n onEdit: () => void\n selectionPosition: SelectionPosition\n}\n\nexport const LinkPopover = ({\n href,\n onRemove,\n onEdit,\n selectionPosition,\n}: LinkPopoverProps): JSX.Element => {\n const [ElementRef, Popover] = usePopover()\n\n return (\n <>\n <Positioner ref={ElementRef} {...selectionPosition} />\n <Popover size=\"large\">\n <div className={styles.popoverContent}>\n <ExternalLinkIcon role=\"presentation\" />\n <div className={styles.popoverLinkContainer}>\n <Text\n variant=\"body\"\n tag=\"div\"\n classNameOverride={styles.paragraphFlex}\n >\n <a\n className={styles.popoverLink}\n href={href != null ? href : undefined}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {href}\n </a>\n </Text>\n </div>\n <div className={styles.popoverActions}>\n <EditIcon role=\"img\" onClick={onEdit} aria-label=\"Edit link\" />\n </div>\n <RemoveLinkIcon\n role=\"img\"\n onClick={onRemove}\n aria-label=\"Remove link\"\n />\n </div>\n </Popover>\n </>\n )\n}\n\nLinkPopover.displayName = \"LinkPopover\"\n"],"names":["LinkPopover","_a","href","onRemove","onEdit","selectionPosition","_b","usePopover","ElementRef","Popover","React","createElement","Fragment","Positioner","__assign","ref","size","className","styles","popoverContent","ExternalLinkIcon","role","popoverLinkContainer","Text","variant","tag","classNameOverride","paragraphFlex","popoverLink","undefined","target","rel","popoverActions","EditIcon","onClick","RemoveLinkIcon","displayName"],"mappings":";;;;;;;;;;;MAeaA,WAAW;EAAA,MAAXA,WAAW,GAAG,SAAAA,CAACC,EAKT,EAAA;QAJjBC,IAAI,GAAAD,EAAA,CAAAC,IAAA;MACJC,QAAQ,GAAAF,EAAA,CAAAE,QAAA;MACRC,MAAM,GAAAH,EAAA,CAAAG,MAAA;MACNC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAAA;IAEX,IAAAC,EAAA,GAAwBC,UAAU,CAAE,CAAA;MAAnCC,UAAU,GAAAF,EAAA,CAAA,CAAA,CAAA;MAAEG,OAAO,GAAAH,EAAA,CAAA,CAAA,CAAgB;IAE1C,oBACEI,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAE,QAAA,EAAA,IAAA,eACEF,KAAA,CAAAC,aAAA,CAACE,UAAU,EAACC,QAAA,CAAA;MAAAC,GAAG,EAAEP;IAAU,CAAA,EAAMH,iBAAiB,CAAI,CAAA,eACtDK,KAAA,CAAAC,aAAA,CAACF,OAAO,EAAA;MAACO,IAAI,EAAC;IAAO,CAAA,eACnBN,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MAAKM,SAAS,EAAEC,MAAM,CAACC;IAAc,CAAA,eACnCT,KAAA,CAAAC,aAAA,CAACS,gBAAgB,EAAA;MAACC,IAAI,EAAC;IAAc,CAAG,CAAA,eACxCX,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MAAKM,SAAS,EAAEC,MAAM,CAACI;IAAoB,CAAA,eACzCZ,KAAA,CAAAC,aAAA,CAACY,IAAI,EAAA;MACHC,OAAO,EAAC,MAAM;MACdC,GAAG,EAAC,KAAK;MACTC,iBAAiB,EAAER,MAAM,CAACS;IAAa,CAAA,eAEvCjB,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;MACEM,SAAS,EAAEC,MAAM,CAACU,WAAW;MAC7B1B,IAAI,EAAEA,IAAI,IAAI,IAAI,GAAGA,IAAI,GAAG2B,SAAS;MACrCC,MAAM,EAAC,QAAQ;MACfC,GAAG,EAAC;IAAqB,CAAA,EAExB7B,IAAI,CACH,CACC,CACH,eACNQ,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MAAKM,SAAS,EAAEC,MAAM,CAACc;IAAc,CAAA,eACnCtB,KAAA,CAAAC,aAAA,CAACsB,QAAQ,EAAA;MAACZ,IAAI,EAAC,KAAK;MAACa,OAAO,EAAE9B,MAAM;MAAA,YAAA,EAAa;IAAW,CAAA,CAAG,CAC3D,eACNM,KAAA,CAAAC,aAAA,CAACwB,cAAc,EACb;MAAAd,IAAI,EAAC,KAAK;MACVa,OAAO,EAAE/B,QAAQ;MAAA,YAAA,EACN;KACX,CAAA,CACE,CACE,CACT;EAEP,CAAC;EAEDH,WAAW,CAACoC,WAAW,GAAG,aAAa;EAAA,OA5C1BpC,WAAW;AAAA;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var styles = {
|
|
2
|
+
"popoverContent": "LinkPopover-module_popoverContent__qGPyp",
|
|
3
|
+
"popoverLinkContainer": "LinkPopover-module_popoverLinkContainer__6H0PQ",
|
|
4
|
+
"popoverLink": "LinkPopover-module_popoverLink__p1BTG",
|
|
5
|
+
"paragraphFlex": "LinkPopover-module_paragraphFlex__PKECm",
|
|
6
|
+
"popoverActions": "LinkPopover-module_popoverActions__QuW1-"
|
|
7
|
+
};
|
|
8
|
+
export { styles as default };
|
|
9
|
+
//# sourceMappingURL=LinkPopover.module.scss.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkPopover.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.mjs
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React, { forwardRef, useState, useRef, useEffect } from 'react';
|
|
2
|
+
import { createPortal } from 'react-dom';
|
|
3
|
+
import debounce from 'lodash.debounce';
|
|
4
|
+
const Positioner = /*#__PURE__*/function () {
|
|
5
|
+
const Positioner = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
6
|
+
var top = _a.top,
|
|
7
|
+
left = _a.left,
|
|
8
|
+
height = _a.height,
|
|
9
|
+
width = _a.width;
|
|
10
|
+
var _b = useState([window.scrollX, window.scrollY]),
|
|
11
|
+
windowScroll = _b[0],
|
|
12
|
+
setWindowScroll = _b[1];
|
|
13
|
+
var onResize = useRef(debounce(function () {
|
|
14
|
+
return setWindowScroll([window.scrollX, window.scrollY]);
|
|
15
|
+
}, 15));
|
|
16
|
+
useEffect(function () {
|
|
17
|
+
var resizeCurrent = onResize.current;
|
|
18
|
+
window.addEventListener("resize", resizeCurrent);
|
|
19
|
+
return function () {
|
|
20
|
+
window.removeEventListener("resize", resizeCurrent);
|
|
21
|
+
};
|
|
22
|
+
}, [setWindowScroll, onResize]);
|
|
23
|
+
var x = windowScroll[0],
|
|
24
|
+
y = windowScroll[1];
|
|
25
|
+
return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement("div", {
|
|
26
|
+
ref: ref,
|
|
27
|
+
style: {
|
|
28
|
+
height: "".concat(height, "px"),
|
|
29
|
+
left: "".concat(left + x, "px"),
|
|
30
|
+
pointerEvents: "none",
|
|
31
|
+
position: "absolute",
|
|
32
|
+
top: "".concat(top + y, "px"),
|
|
33
|
+
width: "".concat(width, "px")
|
|
34
|
+
}
|
|
35
|
+
}), document.body);
|
|
36
|
+
});
|
|
37
|
+
Positioner.displayName = "Positioner";
|
|
38
|
+
return Positioner;
|
|
39
|
+
}();
|
|
40
|
+
export { Positioner };
|
|
41
|
+
//# sourceMappingURL=Positioner.mjs.map
|
package/dist/esm/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Positioner.mjs","sources":["../../../../../../../../src/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/Positioner.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from \"react\"\nimport { createPortal } from \"react-dom\"\nimport debounce from \"lodash.debounce\"\nimport { SelectionPosition } from \"../../types\"\n\nexport const Positioner = forwardRef(\n (\n { top, left, height, width }: SelectionPosition,\n ref: React.Ref<HTMLElement>\n ) => {\n const [windowScroll, setWindowScroll] = useState<[number, number]>([\n window.scrollX,\n window.scrollY,\n ])\n\n const onResize = useRef(\n debounce(() => setWindowScroll([window.scrollX, window.scrollY]), 15)\n )\n\n useEffect(() => {\n const resizeCurrent = onResize.current\n window.addEventListener(\"resize\", resizeCurrent)\n return () => {\n window.removeEventListener(\"resize\", resizeCurrent)\n }\n }, [setWindowScroll, onResize])\n\n const [x, y] = windowScroll\n\n return createPortal(\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n style={{\n height: `${height}px`,\n left: `${left + x}px`,\n pointerEvents: \"none\",\n position: \"absolute\",\n top: `${top + y}px`,\n width: `${width}px`,\n }}\n />,\n document.body\n )\n }\n)\n\nPositioner.displayName = \"Positioner\"\n"],"names":["Positioner","forwardRef","_a","ref","top","left","height","width","_b","useState","window","scrollX","scrollY","windowScroll","setWindowScroll","onResize","useRef","debounce","useEffect","resizeCurrent","current","addEventListener","removeEventListener","x","y","createPortal","React","createElement","style","concat","pointerEvents","position","document","body","displayName"],"mappings":";;;MAKaA,UAAU;EAAA,MAAVA,UAAU,gBAAGC,UAAU,CAClC,UACEC,EAA+C,EAC/CC,GAA2B,EAAA;QADzBC,GAAG,GAAAF,EAAA,CAAAE,GAAA;MAAEC,IAAI,GAAAH,EAAA,CAAAG,IAAA;MAAEC,MAAM,GAAAJ,EAAA,CAAAI,MAAA;MAAEC,KAAK,GAAAL,EAAA,CAAAK,KAAA;IAGpB,IAAAC,EAAA,GAAkCC,QAAQ,CAAmB,CACjEC,MAAM,CAACC,OAAO,EACdD,MAAM,CAACE,OAAO,CACf,CAAC;MAHKC,YAAY,GAAAL,EAAA,CAAA,CAAA,CAAA;MAAEM,eAAe,QAGlC;IAEF,IAAMC,QAAQ,GAAGC,MAAM,CACrBC,QAAQ,CAAC,YAAA;MAAM,OAAAH,eAAe,CAAC,CAACJ,MAAM,CAACC,OAAO,EAAED,MAAM,CAACE,OAAO,CAAC,CAAC;IAAjD,CAAiD,EAAE,EAAE,CAAC,CACtE;IAEDM,SAAS,CAAC,YAAA;MACR,IAAMC,aAAa,GAAGJ,QAAQ,CAACK,OAAO;MACtCV,MAAM,CAACW,gBAAgB,CAAC,QAAQ,EAAEF,aAAa,CAAC;MAChD,OAAO,YAAA;QACLT,MAAM,CAACY,mBAAmB,CAAC,QAAQ,EAAEH,aAAa,CAAC;MACrD,CAAC;IACH,CAAC,EAAE,CAACL,eAAe,EAAEC,QAAQ,CAAC,CAAC;IAExB,IAAAQ,CAAC,GAAOV,YAAY,CAAA,CAAA,CAAnB;MAAEW,CAAC,GAAIX,YAAY,CAAA,CAAA,CAAhB;IAEX,oBAAOY,YAAY,eACjBC,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;MAAAxB,GAAG,EAAEA,GAAgC;MACrCyB,KAAK,EAAE;QACLtB,MAAM,EAAE,EAAG,CAAAuB,MAAA,CAAAvB,MAAM,EAAI,IAAA,CAAA;QACrBD,IAAI,EAAE,EAAA,CAAAwB,MAAA,CAAGxB,IAAI,GAAGkB,CAAC,EAAI,IAAA,CAAA;QACrBO,aAAa,EAAE,MAAM;QACrBC,QAAQ,EAAE,UAAU;QACpB3B,GAAG,EAAE,EAAA,CAAAyB,MAAA,CAAGzB,GAAG,GAAGoB,CAAC,EAAI,IAAA,CAAA;QACnBjB,KAAK,EAAE,EAAG,CAAAsB,MAAA,CAAAtB,KAAK,EAAI,IAAA;MACpB;KAAA,CACD,EACFyB,QAAQ,CAACC,IAAI,CACd;EACH,CAAC,CACF;EAEDjC,UAAU,CAACkC,WAAW,GAAG,YAAY;EAAA,OAzCxBlC,UAAU;AAAA;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { __assign } from 'tslib';
|
|
2
|
+
import React, { useState, useEffect } from 'react';
|
|
3
|
+
import Nanobus from 'nanobus';
|
|
4
|
+
import { createRoot } from 'react-dom/client';
|
|
5
|
+
var Wrapper = function (_a) {
|
|
6
|
+
var emitter = _a.emitter,
|
|
7
|
+
componentProps = _a.componentProps,
|
|
8
|
+
Component = _a.Component;
|
|
9
|
+
var _b = useState(componentProps),
|
|
10
|
+
localComponentProps = _b[0],
|
|
11
|
+
setLocalComponentProps = _b[1];
|
|
12
|
+
useEffect(function () {
|
|
13
|
+
var onUpdate = function (newComponentProps) {
|
|
14
|
+
setLocalComponentProps(newComponentProps);
|
|
15
|
+
};
|
|
16
|
+
emitter.addListener("update", onUpdate);
|
|
17
|
+
return function () {
|
|
18
|
+
emitter.removeListener("update", onUpdate);
|
|
19
|
+
};
|
|
20
|
+
}, [emitter]);
|
|
21
|
+
return /*#__PURE__*/React.createElement(Component, __assign({}, localComponentProps));
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Create a wrapping connector for rendering a React element into a separate
|
|
25
|
+
* part of the DOM while being able to update it without remounting.
|
|
26
|
+
*/
|
|
27
|
+
var createReactTooltipWrapper = function (parentNode, Component, componentProps) {
|
|
28
|
+
var emitter = new Nanobus();
|
|
29
|
+
var container = document.createElement("div");
|
|
30
|
+
parentNode.appendChild(container);
|
|
31
|
+
var root = createRoot(container);
|
|
32
|
+
root.render( /*#__PURE__*/React.createElement(Wrapper, {
|
|
33
|
+
componentProps: componentProps,
|
|
34
|
+
Component: Component,
|
|
35
|
+
emitter: emitter
|
|
36
|
+
}));
|
|
37
|
+
function destroy() {
|
|
38
|
+
root.unmount();
|
|
39
|
+
emitter.removeAllListeners("*");
|
|
40
|
+
}
|
|
41
|
+
function update(props) {
|
|
42
|
+
emitter.emit("update", props);
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
destroy: destroy,
|
|
46
|
+
update: update
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
export { createReactTooltipWrapper };
|
|
50
|
+
//# sourceMappingURL=createReactTooltipWrapper.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createReactTooltipWrapper.mjs","sources":["../../../../../../src/RichTextEditor/utils/plugins/LinkManager/createReactTooltipWrapper.tsx"],"sourcesContent":["import React, { ElementType, useEffect, useState } from \"react\"\nimport Nanobus from \"nanobus\"\nimport { createRoot } from \"react-dom/client\"\nimport { LinkEditorProps } from \"./components\"\n\nconst Wrapper = ({\n emitter,\n componentProps,\n Component,\n}: {\n emitter: Nanobus\n componentProps: LinkEditorProps\n Component: ElementType\n}): JSX.Element => {\n const [localComponentProps, setLocalComponentProps] =\n useState<LinkEditorProps>(componentProps)\n\n useEffect(() => {\n const onUpdate = (newComponentProps: LinkEditorProps): void => {\n setLocalComponentProps(newComponentProps)\n }\n emitter.addListener(\"update\", onUpdate)\n\n return () => {\n emitter.removeListener(\"update\", onUpdate)\n }\n }, [emitter])\n\n return <Component {...localComponentProps} />\n}\n\n/**\n * Create a wrapping connector for rendering a React element into a separate\n * part of the DOM while being able to update it without remounting.\n */\nexport const createReactTooltipWrapper = (\n parentNode: HTMLElement,\n Component: ElementType,\n componentProps: LinkEditorProps\n): {\n destroy: () => void\n update: (props: LinkEditorProps) => void\n} => {\n const emitter = new Nanobus()\n const container = document.createElement(\"div\")\n parentNode.appendChild(container)\n const root = createRoot(container)\n\n root.render(\n <Wrapper\n componentProps={componentProps}\n Component={Component}\n emitter={emitter}\n />\n )\n\n function destroy(): void {\n root.unmount()\n emitter.removeAllListeners(\"*\")\n }\n\n function update(props: LinkEditorProps): void {\n emitter.emit(\"update\", props)\n }\n\n return { destroy, update }\n}\n"],"names":["Wrapper","_a","emitter","componentProps","Component","_b","useState","localComponentProps","setLocalComponentProps","useEffect","onUpdate","newComponentProps","addListener","removeListener","React","createElement","__assign","createReactTooltipWrapper","parentNode","Nanobus","container","document","appendChild","root","createRoot","render","destroy","unmount","removeAllListeners","update","props","emit"],"mappings":";;;;AAKA,IAAMA,OAAO,GAAG,SAAAA,CAACC,EAQhB,EAAA;EAPC,IAAAC,OAAO,aAAA;IACPC,cAAc,GAAAF,EAAA,CAAAE,cAAA;IACdC,SAAS,GAAAH,EAAA,CAAAG,SAAA;EAMH,IAAAC,EAAA,GACJC,QAAQ,CAAkBH,cAAc,CAAC;IADpCI,mBAAmB,GAAAF,EAAA,CAAA,CAAA,CAAA;IAAEG,sBAAsB,GAAAH,EAAA,CAAA,CAAA,CACP;EAE3CI,SAAS,CAAC,YAAA;IACR,IAAMC,QAAQ,GAAG,SAAAA,CAACC,iBAAkC,EAAA;MAClDH,sBAAsB,CAACG,iBAAiB,CAAC;IAC3C,CAAC;IACDT,OAAO,CAACU,WAAW,CAAC,QAAQ,EAAEF,QAAQ,CAAC;IAEvC,OAAO,YAAA;MACLR,OAAO,CAACW,cAAc,CAAC,QAAQ,EAAEH,QAAQ,CAAC;IAC5C,CAAC;EACH,CAAC,EAAE,CAACR,OAAO,CAAC,CAAC;EAEb,oBAAOY,KAAC,CAAAC,aAAA,CAAAX,SAAS,EAAKY,QAAA,CAAA,CAAA,CAAA,EAAAT,mBAAmB,EAAI;AAC/C,CAAC;AAED;;;AAGG;IACUU,yBAAyB,GAAG,SAAAA,CACvCC,UAAuB,EACvBd,SAAsB,EACtBD,cAA+B,EAAA;EAK/B,IAAMD,OAAO,GAAG,IAAIiB,OAAO,EAAE;EAC7B,IAAMC,SAAS,GAAGC,QAAQ,CAACN,aAAa,CAAC,KAAK,CAAC;EAC/CG,UAAU,CAACI,WAAW,CAACF,SAAS,CAAC;EACjC,IAAMG,IAAI,GAAGC,UAAU,CAACJ,SAAS,CAAC;EAElCG,IAAI,CAACE,MAAM,eACTX,oBAACd,OAAO,EAAA;IACNG,cAAc,EAAEA,cAAc;IAC9BC,SAAS,EAAEA,SAAS;IACpBF,OAAO,EAAEA;EAAO,CAAA,CAChB,CACH;EAED,SAASwB,OAAOA,CAAA,EAAA;IACdH,IAAI,CAACI,OAAO,CAAA,CAAE;IACdzB,OAAO,CAAC0B,kBAAkB,CAAC,GAAG,CAAC;EAChC;EAED,SAASC,MAAMA,CAACC,KAAsB,EAAA;IACpC5B,OAAO,CAAC6B,IAAI,CAAC,QAAQ,EAAED,KAAK,CAAC;EAC9B;EAED,OAAO;IAAEJ,OAAO,EAAAA,OAAA;IAAEG,MAAM,EAAAA;EAAA,CAAE;AAC5B,CAAA;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
var validateLink = function (href) {
|
|
2
|
+
var isValidLink = /^https?:\/\//.test(href);
|
|
3
|
+
if (!isValidLink) {
|
|
4
|
+
return {
|
|
5
|
+
status: "error",
|
|
6
|
+
message: "Please enter a valid URL"
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
return {
|
|
10
|
+
status: "success"
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export { validateLink };
|
|
14
|
+
//# sourceMappingURL=validation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.mjs","sources":["../../../../../../src/RichTextEditor/utils/plugins/LinkManager/validation.ts"],"sourcesContent":["export type ValidationResponse = {\n status: \"success\" | \"error\" | \"default\"\n message?: React.ReactNode\n}\n\nexport const validateLink = (href: string): ValidationResponse => {\n const isValidLink = /^https?:\\/\\//.test(href)\n\n if (!isValidLink) {\n return {\n status: \"error\",\n message: \"Please enter a valid URL\",\n }\n }\n\n return {\n status: \"success\",\n }\n}\n"],"names":["validateLink","href","isValidLink","test","status","message"],"mappings":"AAKO,IAAMA,YAAY,GAAG,SAAAA,CAACC,IAAY,EAAA;EACvC,IAAMC,WAAW,GAAG,cAAc,CAACC,IAAI,CAACF,IAAI,CAAC;EAE7C,IAAI,CAACC,WAAW,EAAE;IAChB,OAAO;MACLE,MAAM,EAAE,OAAO;MACfC,OAAO,EAAE;KACV;EACF;EAED,OAAO;IACLD,MAAM,EAAE;GACT;AACH,CAAA;"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { __assign } from 'tslib';
|
|
2
|
+
import { marks } from 'prosemirror-schema-basic';
|
|
3
|
+
import { validateLink } from '../plugins/LinkManager/validation.mjs';
|
|
4
|
+
var getMarks = function () {
|
|
5
|
+
return __assign(__assign({}, marks), {
|
|
6
|
+
// An underline mark. Rendered as a `<u>` element. Has parse rules that also
|
|
7
|
+
// matches `font-style: underline`.
|
|
8
|
+
underline: {
|
|
9
|
+
parseDOM: [{
|
|
10
|
+
tag: "u"
|
|
11
|
+
}, {
|
|
12
|
+
style: "font-style=underline"
|
|
13
|
+
}],
|
|
14
|
+
toDOM: function () {
|
|
15
|
+
return ["u", 0];
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
// A link. Rendered and parsed as an `<a>` element.
|
|
19
|
+
link: {
|
|
20
|
+
attrs: {
|
|
21
|
+
href: {
|
|
22
|
+
"default": null
|
|
23
|
+
},
|
|
24
|
+
_metadata: {
|
|
25
|
+
"default": {
|
|
26
|
+
added: true
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
target: {
|
|
30
|
+
"default": "_blank"
|
|
31
|
+
},
|
|
32
|
+
rel: {
|
|
33
|
+
"default": "noreferrer"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
inclusive: false,
|
|
37
|
+
parseDOM: [{
|
|
38
|
+
tag: "a[href]",
|
|
39
|
+
getAttrs: function (dom) {
|
|
40
|
+
return {
|
|
41
|
+
href: getAttributeWithDefault(dom, "href"),
|
|
42
|
+
target: getAttributeWithDefault(dom, "target"),
|
|
43
|
+
rel: getAttributeWithDefault(dom, "rel"),
|
|
44
|
+
_metadata: null
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}],
|
|
48
|
+
toDOM: function (node) {
|
|
49
|
+
var _a = node.attrs,
|
|
50
|
+
href = _a.href,
|
|
51
|
+
target = _a.target,
|
|
52
|
+
rel = _a.rel;
|
|
53
|
+
var validationStatus = validateLink(href);
|
|
54
|
+
if (validationStatus.status === "error") {
|
|
55
|
+
return ["span", 0];
|
|
56
|
+
}
|
|
57
|
+
return ["a", {
|
|
58
|
+
href: href,
|
|
59
|
+
target: target,
|
|
60
|
+
rel: rel
|
|
61
|
+
}, 0];
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
var getAttributeWithDefault = function (node, attributeName) {
|
|
67
|
+
var value = node.getAttribute(attributeName);
|
|
68
|
+
return value && value !== "" ? value : null;
|
|
69
|
+
};
|
|
70
|
+
export { getMarks };
|
|
71
|
+
//# sourceMappingURL=marks.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marks.mjs","sources":["../../../../../src/RichTextEditor/utils/schema/marks.ts"],"sourcesContent":["import { MarkSpec, Node } from \"prosemirror-model\"\nimport { marks as proseMarks } from \"prosemirror-schema-basic\"\nimport { validateLink } from \"../plugins/LinkManager/validation\"\n\nexport const getMarks = (): MarkSpec => ({\n ...proseMarks,\n\n // An underline mark. Rendered as a `<u>` element. Has parse rules that also\n // matches `font-style: underline`.\n underline: {\n parseDOM: [{ tag: \"u\" }, { style: \"font-style=underline\" }],\n toDOM() {\n return [\"u\", 0]\n },\n },\n\n // A link. Rendered and parsed as an `<a>` element.\n link: {\n attrs: {\n href: { default: null },\n _metadata: { default: { added: true } },\n target: { default: \"_blank\" },\n rel: { default: \"noreferrer\" },\n },\n inclusive: false,\n parseDOM: [\n {\n tag: \"a[href]\",\n getAttrs(dom: HTMLAnchorElement) {\n return {\n href: getAttributeWithDefault(dom, \"href\"),\n target: getAttributeWithDefault(dom, \"target\"),\n rel: getAttributeWithDefault(dom, \"rel\"),\n _metadata: null,\n }\n },\n },\n ],\n toDOM(node: Node) {\n const { href, target, rel } = node.attrs\n const validationStatus = validateLink(href)\n\n if (validationStatus.status === \"error\") {\n return [\"span\", 0]\n }\n\n return [\"a\", { href, target, rel }, 0]\n },\n },\n})\n\nconst getAttributeWithDefault = (\n node: HTMLElement,\n attributeName: string\n): string | null => {\n const value = node.getAttribute(attributeName)\n return value && value !== \"\" ? value : null\n}\n"],"names":["getMarks","proseMarks","underline","parseDOM","tag","style","toDOM","link","attrs","href","_metadata","added","target","rel","inclusive","getAttrs","dom","getAttributeWithDefault","node","_a","validationStatus","validateLink","status","attributeName","value","getAttribute"],"mappings":";;;AAIa,IAAAA,QAAQ,GAAG,SAAAA,CAAA,EAAgB;EAAA,6BACnCC,KAAU,CAAA,EAAA;;;IAIbC,SAAS,EAAE;MACTC,QAAQ,EAAE,CAAC;QAAEC,GAAG,EAAE;MAAK,CAAA,EAAE;QAAEC,KAAK,EAAE;OAAwB,CAAC;MAC3DC,KAAK,EAAA,SAAAA,CAAA,EAAA;QACH,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;MAChB;IACF,CAAA;;IAGDC,IAAI,EAAE;MACJC,KAAK,EAAE;QACLC,IAAI,EAAE;UAAE,SAAO,EAAE;QAAM,CAAA;QACvBC,SAAS,EAAE;UAAE,SAAO,EAAE;YAAEC,KAAK,EAAE;UAAI;QAAI,CAAA;QACvCC,MAAM,EAAE;UAAE,SAAO,EAAE;QAAU,CAAA;QAC7BC,GAAG,EAAE;UAAE,SAAO,EAAE;QAAc;MAC/B,CAAA;MACDC,SAAS,EAAE,KAAK;MAChBX,QAAQ,EAAE,CACR;QACEC,GAAG,EAAE,SAAS;QACdW,QAAQ,YAACC,GAAsB,EAAA;UAC7B,OAAO;YACLP,IAAI,EAAEQ,uBAAuB,CAACD,GAAG,EAAE,MAAM,CAAC;YAC1CJ,MAAM,EAAEK,uBAAuB,CAACD,GAAG,EAAE,QAAQ,CAAC;YAC9CH,GAAG,EAAEI,uBAAuB,CAACD,GAAG,EAAE,KAAK,CAAC;YACxCN,SAAS,EAAE;WACZ;QACF;MACF,CAAA,CACF;MACDJ,KAAK,YAACY,IAAU,EAAA;QACR,IAAAC,EAAwB,GAAAD,IAAI,CAACV,KAAK;UAAhCC,IAAI,GAAAU,EAAA,CAAAV,IAAA;UAAEG,MAAM,GAAAO,EAAA,CAAAP,MAAA;UAAEC,GAAG,SAAe;QACxC,IAAMO,gBAAgB,GAAGC,YAAY,CAACZ,IAAI,CAAC;QAE3C,IAAIW,gBAAgB,CAACE,MAAM,KAAK,OAAO,EAAE;UACvC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACnB;QAED,OAAO,CAAC,GAAG,EAAE;UAAEb,IAAI,MAAA;UAAEG,MAAM,EAAAA,MAAA;UAAEC,GAAG,EAAAA;SAAE,EAAE,CAAC,CAAC;MACvC;IACF;EAAA,CACD,CAAA;AAAA,CAAA;AAEF,IAAMI,uBAAuB,GAAG,SAAAA,CAC9BC,IAAiB,EACjBK,aAAqB,EAAA;EAErB,IAAMC,KAAK,GAAGN,IAAI,CAACO,YAAY,CAACF,aAAa,CAAC;EAC9C,OAAOC,KAAK,IAAIA,KAAK,KAAK,EAAE,GAAGA,KAAK,GAAG,IAAI;AAC7C,CAAC;"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { __rest, __assign } from 'tslib';
|
|
2
|
+
import { nodes } from 'prosemirror-schema-basic';
|
|
3
|
+
import { orderedList, bulletList, listItem } from 'prosemirror-schema-list';
|
|
4
|
+
var getNodes = function () {
|
|
5
|
+
// We use camel case names instead of ProseMirror's snake case, so we remove any snake case properties here before spreading
|
|
6
|
+
var hardBreak = nodes.hard_break,
|
|
7
|
+
horizontalRule = nodes.horizontal_rule,
|
|
8
|
+
codeBlock = nodes.code_block,
|
|
9
|
+
proseNodesNoSnakeCase = __rest(nodes
|
|
10
|
+
// ...and then add them back in manually
|
|
11
|
+
, ["hard_break", "horizontal_rule", "code_block"]);
|
|
12
|
+
// ...and then add them back in manually
|
|
13
|
+
var proseNodesWithCamelCase = __assign(__assign({}, proseNodesNoSnakeCase), {
|
|
14
|
+
hardBreak: hardBreak,
|
|
15
|
+
horizontalRule: horizontalRule,
|
|
16
|
+
codeBlock: codeBlock
|
|
17
|
+
});
|
|
18
|
+
return __assign(__assign({}, proseNodesWithCamelCase), {
|
|
19
|
+
orderedList: __assign(__assign({}, orderedList), {
|
|
20
|
+
content: "listItem+",
|
|
21
|
+
group: "block"
|
|
22
|
+
}),
|
|
23
|
+
bulletList: __assign(__assign({}, bulletList), {
|
|
24
|
+
content: "listItem+",
|
|
25
|
+
group: "block"
|
|
26
|
+
}),
|
|
27
|
+
listItem: __assign(__assign({}, listItem), {
|
|
28
|
+
content: "paragraph block*"
|
|
29
|
+
})
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
export { getNodes };
|
|
33
|
+
//# sourceMappingURL=nodes.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodes.mjs","sources":["../../../../../src/RichTextEditor/utils/schema/nodes.ts"],"sourcesContent":["import { NodeSpec } from \"prosemirror-model\"\nimport { nodes as proseNodes } from \"prosemirror-schema-basic\"\nimport { bulletList, listItem, orderedList } from \"prosemirror-schema-list\"\n\nexport const getNodes = (): NodeSpec => {\n // We use camel case names instead of ProseMirror's snake case, so we remove any snake case properties here before spreading\n const {\n hard_break: hardBreak,\n horizontal_rule: horizontalRule,\n code_block: codeBlock,\n ...proseNodesNoSnakeCase\n } = proseNodes\n\n // ...and then add them back in manually\n const proseNodesWithCamelCase = {\n ...proseNodesNoSnakeCase,\n hardBreak,\n horizontalRule,\n codeBlock,\n }\n\n return {\n ...proseNodesWithCamelCase,\n orderedList: {\n ...orderedList,\n content: \"listItem+\",\n group: \"block\",\n },\n bulletList: {\n ...bulletList,\n content: \"listItem+\",\n group: \"block\",\n },\n listItem: {\n ...listItem,\n content: \"paragraph block*\",\n },\n }\n}\n"],"names":["getNodes","hardBreak","proseNodes","hard_break","horizontalRule","horizontal_rule","codeBlock","proseNodesNoSnakeCase","proseNodesWithCamelCase","__assign","orderedList","content","group","bulletList","listItem"],"mappings":";;;AAIa,IAAAA,QAAQ,GAAG,SAAAA,CAAA,EAAA;;EAGpB,IAAYC,SAAS,GAInBC,KAAU,CAJSC,UAAA;IACJC,cAAc,GAG7BF,KAAU,CAHmBG,eAAA;IACnBC,SAAS,GAEnBJ,KAAU,WAFS;IAClBK,qBAAqB,UACtBL;;MALE,CAAA,YAAA,EAAA,iBAAA,EAAA,YAAA,CAKL,CADyB;;EAI1B,IAAMM,uBAAuB,GAAAC,QAAA,CAAAA,QAAA,CAAA,CAAA,CAAA,EACxBF,qBAAqB,CAAA,EAAA;IACxBN,SAAS,EAAAA,SAAA;IACTG,cAAc,EAAAA,cAAA;IACdE,SAAS,EAAAA;IACV;EAED,OAAAG,QAAA,CAAAA,QAAA,CAAA,CAAA,CAAA,EACKD,uBAAuB,CAAA,EAAA;IAC1BE,WAAW,EAAAD,QAAA,CAAAA,QAAA,CAAA,CAAA,CAAA,EACNC,WAAW,CACd,EAAA;MAAAC,OAAO,EAAE,WAAW;MACpBC,KAAK,EAAE;;IAETC,UAAU,EAAAJ,QAAA,CAAAA,QAAA,CAAA,CAAA,CAAA,EACLI,UAAU,CAAA,EAAA;MACbF,OAAO,EAAE,WAAW;MACpBC,KAAK,EAAE;IAAO,CAEhB,CAAA;IAAAE,QAAQ,wBACHA,QAAQ,CAAA,EAAA;MACXH,OAAO,EAAE;IAAkB,CAE9B;EAAA,CAAA,CAAA;AACH,CAAA;"}
|
|
@@ -3,12 +3,14 @@ import React, { useId } from 'react';
|
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { FieldGroup } from '../FieldGroup/FieldGroup.mjs';
|
|
5
5
|
import { FieldMessage } from '../FieldMessage/FieldMessage.mjs';
|
|
6
|
+
import 'uuid';
|
|
7
|
+
import '../Icon/subcomponents/SVG/SVG.mjs';
|
|
8
|
+
import { SuccessIcon } from '../Icon/SuccessIcon.mjs';
|
|
6
9
|
import { Input } from '../Input/Input/Input.mjs';
|
|
7
10
|
import '../Input/InputRange/InputRange.mjs';
|
|
8
11
|
import '../Input/InputSearch/InputSearch.mjs';
|
|
9
12
|
import { Label } from '../Label/Label.mjs';
|
|
10
13
|
import styles from './TextField.module.scss.mjs';
|
|
11
|
-
import { SuccessIcon } from '../Icon/SuccessIcon.mjs';
|
|
12
14
|
|
|
13
15
|
/**
|
|
14
16
|
* {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081928705/Text+Field Guidance} |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.mjs","sources":["../../../src/TextField/TextField.tsx"],"sourcesContent":["import React, { useId } from \"react\"\nimport classnames from \"classnames\"\nimport { FieldGroup } from \"~components/FieldGroup\"\nimport { FieldMessage } from \"~components/FieldMessage\"\nimport {
|
|
1
|
+
{"version":3,"file":"TextField.mjs","sources":["../../../src/TextField/TextField.tsx"],"sourcesContent":["import React, { useId } from \"react\"\nimport classnames from \"classnames\"\nimport { FieldGroup } from \"~components/FieldGroup\"\nimport { FieldMessage } from \"~components/FieldMessage\"\nimport { SuccessIcon } from \"~components/Icon\"\nimport { Input, InputProps } from \"~components/Input\"\nimport { Label } from \"~components/Label\"\nimport styles from \"./TextField.module.scss\"\n\ntype OmittedInputProps =\n | \"startIconAdornment\"\n | \"endIconAdornment\"\n | \"ariaDescribedBy\"\n | \"ariaLabel\"\n\nexport type TextFieldProps = {\n /**\n * A short example of input text. For context or additional information use the `description` prop\n */\n labelText: React.ReactNode\n inline?: boolean\n icon?: JSX.Element\n /**\n * A descriptive message for `error` or `caution` states\n */\n validationMessage?: string | React.ReactNode\n /**\n * A description that provides context for the text field\n */\n description?: string | React.ReactNode\n} & Omit<InputProps, OmittedInputProps>\n\n/**\n * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081928705/Text+Field Guidance} |\n * {@link https://cultureamp.design/?path=/docs/components-text-field--docs Storybook}\n */\nexport const TextField = ({\n id: propsId,\n labelText,\n inline = false,\n icon,\n validationMessage,\n description,\n status,\n reversed = false,\n disabled,\n ...restProps\n}: TextFieldProps): JSX.Element => {\n const id = propsId ?? useId()\n const validationMessageAria = validationMessage\n ? `${id}-field-validation-message`\n : \"\"\n const descriptionAria = description ? `${id}-field-description` : \"\"\n\n const ariaDescribedBy = [validationMessageAria, descriptionAria].reduce(\n (prev, curr) => (curr ? [curr, prev].join(\" \") : prev),\n \"\"\n )\n\n return (\n <FieldGroup\n id={`${id}-field-group`}\n data-testid={`${id}-field-group`}\n inline={inline}\n classNameOverride={classnames(\n styles.withLabel,\n disabled && styles.withDisabled\n )}\n >\n <Label\n id={`${id}-field-label`}\n data-testid={`${id}-field-label`}\n htmlFor={`${id}-field-input`}\n labelText={labelText}\n reversed={reversed}\n disabled={disabled}\n />\n <Input\n id={`${id}-field-input`}\n data-testid={`${id}-field-input`}\n aria-describedby={ariaDescribedBy}\n classNameOverride={styles.input}\n disabled={disabled}\n reversed={reversed}\n status={status}\n startIconAdornment={icon}\n endIconAdornment={\n status === \"success\" && (\n <div\n className={classnames(\n styles.success,\n disabled && styles.disabled\n )}\n >\n <SuccessIcon role=\"presentation\" />\n </div>\n )\n }\n {...restProps}\n />\n\n {validationMessage && (\n <div\n className={classnames(styles.message, disabled && styles.disabled)}\n >\n <FieldMessage\n id={validationMessageAria}\n message={validationMessage}\n status={status}\n reversed={reversed}\n />\n </div>\n )}\n\n {description && (\n <div\n className={classnames(styles.message, disabled && styles.disabled)}\n >\n <FieldMessage\n id={descriptionAria}\n message={description}\n reversed={reversed}\n />\n </div>\n )}\n </FieldGroup>\n )\n}\n\nTextField.displayName = \"TextField\"\n"],"names":["TextField","_a","propsId","id","labelText","_b","inline","icon","validationMessage","description","status","_c","reversed","disabled","restProps","__rest","useId","validationMessageAria","concat","descriptionAria","ariaDescribedBy","reduce","prev","curr","join","React","createElement","FieldGroup","classNameOverride","classnames","styles","withLabel","withDisabled","Label","htmlFor","Input","__assign","input","startIconAdornment","endIconAdornment","className","success","SuccessIcon","role","message","FieldMessage","displayName"],"mappings":";;;;;;;;;;;;;;AAgCA;;;AAGG;AAHH,MAIaA,SAAS;EAAA,MAATA,SAAS,GAAG,SAAAA,CAACC,EAWT,EAAA;IAVf,IAAIC,OAAO,GAAAD,EAAA,CAAAE,EAAA;MACXC,SAAS,GAAAH,EAAA,CAAAG,SAAA;MACTC,EAAc,GAAAJ,EAAA,CAAAK,MAAA;MAAdA,MAAM,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;MACdE,IAAI,GAAAN,EAAA,CAAAM,IAAA;MACJC,iBAAiB,GAAAP,EAAA,CAAAO,iBAAA;MACjBC,WAAW,GAAAR,EAAA,CAAAQ,WAAA;MACXC,MAAM,GAAAT,EAAA,CAAAS,MAAA;MACNC,EAAA,GAAAV,EAAA,CAAAW,QAAgB;MAAhBA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;MAChBE,QAAQ,GAAAZ,EAAA,CAAAY,QAAA;MACLC,SAAS,GAAAC,MAAA,CAAAd,EAAA,EAVY,2GAWzB,CADa;IAEZ,IAAME,EAAE,GAAGD,OAAO,KAAP,IAAA,IAAAA,OAAO,cAAPA,OAAO,GAAIc,KAAK,EAAE;IAC7B,IAAMC,qBAAqB,GAAGT,iBAAiB,GAC3C,EAAG,CAAAU,MAAA,CAAAf,EAAE,EAA2B,2BAAA,CAAA,GAChC,EAAE;IACN,IAAMgB,eAAe,GAAGV,WAAW,GAAG,EAAG,CAAAS,MAAA,CAAAf,EAAE,EAAoB,oBAAA,CAAA,GAAG,EAAE;IAEpE,IAAMiB,eAAe,GAAG,CAACH,qBAAqB,EAAEE,eAAe,CAAC,CAACE,MAAM,CACrE,UAACC,IAAI,EAAEC,IAAI;MAAK,OAACA,IAAI,GAAG,CAACA,IAAI,EAAED,IAAI,CAAC,CAACE,IAAI,CAAC,GAAG,CAAC,GAAGF,IAAI;KAAC,EACtD,EAAE,CACH;IAED,oBACEG,KAAA,CAAAC,aAAA,CAACC,UAAU,EAAA;MACTxB,EAAE,EAAE,EAAG,CAAAe,MAAA,CAAAf,EAAE,EAAc,cAAA,CAAA;MAAA,aAAA,EACV,EAAG,CAAAe,MAAA,CAAAf,EAAE,iBAAc;MAChCG,MAAM,EAAEA,MAAM;MACdsB,iBAAiB,EAAEC,UAAU,CAC3BC,MAAM,CAACC,SAAS,EAChBlB,QAAQ,IAAIiB,MAAM,CAACE,YAAY;IAChC,CAAA,eAEDP,KAAA,CAAAC,aAAA,CAACO,KAAK,EAAA;MACJ9B,EAAE,EAAE,EAAG,CAAAe,MAAA,CAAAf,EAAE,EAAc,cAAA,CAAA;MAAA,aAAA,EACV,EAAG,CAAAe,MAAA,CAAAf,EAAE,EAAc,cAAA,CAAA;MAChC+B,OAAO,EAAE,EAAG,CAAAhB,MAAA,CAAAf,EAAE,EAAc,cAAA,CAAA;MAC5BC,SAAS,EAAEA,SAAS;MACpBQ,QAAQ,EAAEA,QAAQ;MAClBC,QAAQ,EAAEA;IAAQ,CAClB,CAAA,eACFY,KAAC,CAAAC,aAAA,CAAAS,KAAK,EACJC,QAAA,CAAA;MAAAjC,EAAE,EAAE,EAAA,CAAAe,MAAA,CAAGf,EAAE,EAAA,cAAA,CAAc;MACV,aAAA,EAAA,EAAA,CAAAe,MAAA,CAAGf,EAAE,EAAA,cAAA,CAAc;MACd,kBAAA,EAAAiB,eAAe;MACjCQ,iBAAiB,EAAEE,MAAM,CAACO,KAAK;MAC/BxB,QAAQ,EAAEA,QAAQ;MAClBD,QAAQ,EAAEA,QAAQ;MAClBF,MAAM,EAAEA,MAAM;MACd4B,kBAAkB,EAAE/B,IAAI;MACxBgC,gBAAgB,EACd7B,MAAM,KAAK,SAAS,iBAClBe,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;QAAAc,SAAS,EAAEX,UAAU,CACnBC,MAAM,CAACW,OAAO,EACd5B,QAAQ,IAAIiB,MAAM,CAACjB,QAAQ;MAC5B,CAAA,eAEDY,KAAC,CAAAC,aAAA,CAAAgB,WAAW,EAAC;QAAAC,IAAI,EAAC;MAAc,EAAG;KAIrC,EAAA7B,SAAS,CACb,CAAA,EAEDN,iBAAiB,iBAChBiB,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MACEc,SAAS,EAAEX,UAAU,CAACC,MAAM,CAACc,OAAO,EAAE/B,QAAQ,IAAIiB,MAAM,CAACjB,QAAQ;IAAC,CAAA,eAElEY,KAAA,CAAAC,aAAA,CAACmB,YAAY,EACX;MAAA1C,EAAE,EAAEc,qBAAqB;MACzB2B,OAAO,EAAEpC,iBAAiB;MAC1BE,MAAM,EAAEA,MAAM;MACdE,QAAQ,EAAEA;IAAQ,CAAA,CAClB,CAEL,EAEAH,WAAW,iBACVgB,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MACEc,SAAS,EAAEX,UAAU,CAACC,MAAM,CAACc,OAAO,EAAE/B,QAAQ,IAAIiB,MAAM,CAACjB,QAAQ;IAAC,CAAA,eAElEY,KAAA,CAAAC,aAAA,CAACmB,YAAY,EACX;MAAA1C,EAAE,EAAEgB,eAAe;MACnByB,OAAO,EAAEnC,WAAW;MACpBG,QAAQ,EAAEA;KAAQ,CAClB,CAEL,CACU;EAEjB,CAAC;EAEDZ,SAAS,CAAC8C,WAAW,GAAG,WAAW;EAAA,OA7FtB9C,SAAS;AAAA;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { MouseEvent, HTMLAttributes } from "react";
|
|
2
|
+
import { OverrideClassName } from "../../types/OverrideClassName";
|
|
3
|
+
import { RichTextContentProps } from "../RichTextContent";
|
|
4
|
+
import { EditorContentArray } from "../types";
|
|
5
|
+
export type EditableRichTextContentProps = {
|
|
6
|
+
onClick: (event: MouseEvent<HTMLElement>) => void;
|
|
7
|
+
content: EditorContentArray;
|
|
8
|
+
labelText: string;
|
|
9
|
+
isLabelHidden?: boolean;
|
|
10
|
+
contentProps?: Omit<RichTextContentProps, "content">;
|
|
11
|
+
} & OverrideClassName<Omit<HTMLAttributes<HTMLDivElement>, "onClick" | "content">>;
|
|
12
|
+
export declare const EditableRichTextContent: {
|
|
13
|
+
({ onClick, content, classNameOverride, labelText, isLabelHidden, contentProps, ...restProps }: EditableRichTextContentProps): JSX.Element;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./EditableRichTextContent";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
import { OverrideClassName } from "../../types/OverrideClassName";
|
|
3
|
+
import { EditorContentArray } from "../types";
|
|
4
|
+
export type RichTextContentProps = {
|
|
5
|
+
content: EditorContentArray;
|
|
6
|
+
} & OverrideClassName<Omit<HTMLAttributes<HTMLDivElement>, "content">>;
|
|
7
|
+
export declare const RichTextContent: {
|
|
8
|
+
(props: RichTextContentProps): JSX.Element;
|
|
9
|
+
displayName: string;
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./RichTextContent";
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React, { HTMLAttributes, ReactNode } from "react";
|
|
2
|
+
import { OverrideClassName } from "../../types/OverrideClassName";
|
|
3
|
+
import { ToolbarItems, EditorContentArray, EditorRows } from "../types";
|
|
4
|
+
import { ProseMirrorState } from "../utils/prosemirror";
|
|
5
|
+
type BaseRichTextEditorProps = {
|
|
6
|
+
onChange: (content: ProseMirrorState.EditorState) => void;
|
|
7
|
+
defaultValue: EditorContentArray;
|
|
8
|
+
controls?: ToolbarItems[];
|
|
9
|
+
/**
|
|
10
|
+
* Sets a default min-height for the editable area in units of body paragraph line height, similar to the 'rows' attribute on <textarea>.
|
|
11
|
+
* The editable area will autogrow, so this only affects the component when the content doesn't exceed this height.
|
|
12
|
+
*/
|
|
13
|
+
rows?: EditorRows;
|
|
14
|
+
dataError?: React.ReactElement;
|
|
15
|
+
onDataError?: () => void;
|
|
16
|
+
status?: "default" | "error" | "caution";
|
|
17
|
+
/**
|
|
18
|
+
* A descriptive message for `error` or `caution` states
|
|
19
|
+
*/
|
|
20
|
+
validationMessage?: React.ReactNode;
|
|
21
|
+
/**
|
|
22
|
+
* A description that provides context
|
|
23
|
+
*/
|
|
24
|
+
description?: React.ReactNode;
|
|
25
|
+
} & OverrideClassName<Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue">>;
|
|
26
|
+
type WithLabelText = {
|
|
27
|
+
labelText: ReactNode;
|
|
28
|
+
"aria-labelledby"?: never;
|
|
29
|
+
};
|
|
30
|
+
type WithLabelledBy = {
|
|
31
|
+
labelText?: never;
|
|
32
|
+
"aria-labelledby": string;
|
|
33
|
+
};
|
|
34
|
+
export type RichTextEditorProps = BaseRichTextEditorProps & (WithLabelText | WithLabelledBy);
|
|
35
|
+
/**
|
|
36
|
+
* {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081896752/Rich+Text+Editor Guidance} |
|
|
37
|
+
* {@link https://cultureamp.design/?path=/docs/components-richtexteditor--docs Storybook}
|
|
38
|
+
*/
|
|
39
|
+
export declare const RichTextEditor: {
|
|
40
|
+
({ onChange, defaultValue, labelText, "aria-labelledby": labelledBy, classNameOverride, controls, rows, dataError, onDataError, validationMessage, description, status, ...restProps }: RichTextEditorProps): JSX.Element;
|
|
41
|
+
displayName: string;
|
|
42
|
+
};
|
|
43
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ToolbarItems } from "../types";
|
|
2
|
+
import { ProseMirrorModel } from "../utils/prosemirror";
|
|
3
|
+
export declare const createSchemaFromControls: (controls?: ToolbarItems[]) => ProseMirrorModel.Schema<string>;
|
|
4
|
+
export declare const createSchemaWithAll: () => ProseMirrorModel.Schema<string>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { OverrideClassName } from "../../../../types/OverrideClassName";
|
|
3
|
+
import { ToggleIconButtonMoods } from "./types";
|
|
4
|
+
export type ToggleIconButtonProps = {
|
|
5
|
+
icon: JSX.Element;
|
|
6
|
+
label: string;
|
|
7
|
+
isActive?: boolean;
|
|
8
|
+
mood?: ToggleIconButtonMoods;
|
|
9
|
+
} & OverrideClassName<React.ButtonHTMLAttributes<HTMLButtonElement>>;
|
|
10
|
+
export declare const ToggleIconButton: React.ForwardRefExoticComponent<{
|
|
11
|
+
icon: JSX.Element;
|
|
12
|
+
label: string;
|
|
13
|
+
isActive?: boolean | undefined;
|
|
14
|
+
mood?: "default" | "primary" | "destructive" | "secondary" | "secondary-destructive" | undefined;
|
|
15
|
+
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
|
|
16
|
+
classNameOverride?: string | undefined;
|
|
17
|
+
} & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ToggleIconButton";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { OverrideClassName } from "../../../../types/OverrideClassName";
|
|
3
|
+
export type ToolbarProps = {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
"aria-controls": string;
|
|
6
|
+
"aria-label": string;
|
|
7
|
+
} & OverrideClassName<React.HTMLAttributes<HTMLElement>>;
|
|
8
|
+
export declare const Toolbar: {
|
|
9
|
+
(props: ToolbarProps): JSX.Element;
|
|
10
|
+
displayName: string;
|
|
11
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Toolbar";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ToolbarSection";
|