@bigbinary/neeto-editor-frontend 2.0.10 → 2.1.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/.ready +1 -1
- package/dist/Editor.js +7 -6
- package/dist/Editor.js.map +1 -1
- package/dist/EditorContent.js +4 -3
- package/dist/EditorContent.js.map +1 -1
- package/dist/FormikEditor.js +7 -6
- package/dist/FormikEditor.js.map +1 -1
- package/dist/Menu.js +5 -4
- package/dist/Menu.js.map +1 -1
- package/dist/{chunk-DxmX0drN.js → chunk-7ioLE0kx.js} +2 -2
- package/dist/{chunk-DxmX0drN.js.map → chunk-7ioLE0kx.js.map} +1 -1
- package/dist/{chunk-MLCxAQf7.js → chunk-BNyLNMnb.js} +3 -3
- package/dist/{chunk-MLCxAQf7.js.map → chunk-BNyLNMnb.js.map} +1 -1
- package/dist/{cjs/chunk-Crp27WMe.cjs.js → chunk-BpMZjml2.js} +147 -3234
- package/dist/chunk-BpMZjml2.js.map +1 -0
- package/dist/{chunk-C_P2M3zF.js → chunk-Br5h7rjn.js} +7 -3
- package/dist/chunk-Br5h7rjn.js.map +1 -0
- package/dist/{chunk-Di3ipdfT.js → chunk-CRUXOawK.js} +3 -2
- package/dist/{chunk-Di3ipdfT.js.map → chunk-CRUXOawK.js.map} +1 -1
- package/dist/chunk-DN9pYQV5.js +3210 -0
- package/dist/chunk-DN9pYQV5.js.map +1 -0
- package/dist/{chunk-DbtYYDYF.js → chunk-DYRpf9PJ.js} +3 -3
- package/dist/{chunk-DbtYYDYF.js.map → chunk-DYRpf9PJ.js.map} +1 -1
- package/dist/{chunk-CTLN7kYv.js → chunk-DfH1lF5p.js} +3 -17
- package/dist/chunk-DfH1lF5p.js.map +1 -0
- package/dist/{chunk-Byc0nnPW.js → chunk-YhV82e9I.js} +8 -4
- package/dist/chunk-YhV82e9I.js.map +1 -0
- package/dist/{chunk-BAjN56q8.js → chunk-lEnpEBRB.js} +5 -4
- package/dist/{chunk-BAjN56q8.js.map → chunk-lEnpEBRB.js.map} +1 -1
- package/dist/{chunk-CrQm8ki8.js → chunk-sn8HEeT6.js} +4 -3
- package/dist/{chunk-CrQm8ki8.js.map → chunk-sn8HEeT6.js.map} +1 -1
- package/dist/cjs/Editor.cjs.js +8 -7
- package/dist/cjs/Editor.cjs.js.map +1 -1
- package/dist/cjs/EditorContent.cjs.js +4 -3
- package/dist/cjs/EditorContent.cjs.js.map +1 -1
- package/dist/cjs/FormikEditor.cjs.js +7 -6
- package/dist/cjs/FormikEditor.cjs.js.map +1 -1
- package/dist/cjs/Menu.cjs.js +5 -4
- package/dist/cjs/Menu.cjs.js.map +1 -1
- package/dist/cjs/{chunk-CwtiYxqr.cjs.js → chunk-78VpxO0R.cjs.js} +4 -3
- package/dist/cjs/{chunk-CwtiYxqr.cjs.js.map → chunk-78VpxO0R.cjs.js.map} +1 -1
- package/dist/{chunk-DgZGzqPs.js → cjs/chunk-BPJBeVDI.cjs.js} +166 -3206
- package/dist/cjs/chunk-BPJBeVDI.cjs.js.map +1 -0
- package/dist/cjs/{chunk-Ty2BpOZ5.cjs.js → chunk-CBswWnmM.cjs.js} +10 -6
- package/dist/cjs/chunk-CBswWnmM.cjs.js.map +1 -0
- package/dist/cjs/{chunk-Bsk_FDUA.cjs.js → chunk-CQLQEN5P.cjs.js} +5 -22
- package/dist/cjs/chunk-CQLQEN5P.cjs.js.map +1 -0
- package/dist/cjs/{chunk-CohcWDmm.cjs.js → chunk-CwY6UgZq.cjs.js} +78 -77
- package/dist/cjs/{chunk-CohcWDmm.cjs.js.map → chunk-CwY6UgZq.cjs.js.map} +1 -1
- package/dist/cjs/chunk-DRnP2LQe.cjs.js +3231 -0
- package/dist/cjs/chunk-DRnP2LQe.cjs.js.map +1 -0
- package/dist/cjs/{chunk-D9InNR1-.cjs.js → chunk-QnVNXaqt.cjs.js} +11 -7
- package/dist/cjs/chunk-QnVNXaqt.cjs.js.map +1 -0
- package/dist/cjs/{chunk-D53HfRZd.cjs.js → chunk-V1V-Gqfy.cjs.js} +3 -3
- package/dist/cjs/{chunk-D53HfRZd.cjs.js.map → chunk-V1V-Gqfy.cjs.js.map} +1 -1
- package/dist/cjs/{chunk-CkdAygKd.cjs.js → chunk-bfmPXyQJ.cjs.js} +3 -3
- package/dist/cjs/{chunk-CkdAygKd.cjs.js.map → chunk-bfmPXyQJ.cjs.js.map} +1 -1
- package/dist/cjs/{chunk-BwE6pvh2.cjs.js → chunk-bxP1kilM.cjs.js} +2 -2
- package/dist/cjs/{chunk-BwE6pvh2.cjs.js.map → chunk-bxP1kilM.cjs.js.map} +1 -1
- package/dist/cjs/{chunk-BAEoAF1o.cjs.js → chunk-j4T5BDua.cjs.js} +23 -22
- package/dist/cjs/{chunk-BAEoAF1o.cjs.js.map → chunk-j4T5BDua.cjs.js.map} +1 -1
- package/dist/cjs/index.cjs.js +9 -8
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/utils.cjs.js +7 -6
- package/dist/cjs/utils.cjs.js.map +1 -1
- package/dist/cjs/v2/Editor.cjs.js +7 -6
- package/dist/cjs/v2/Editor.cjs.js.map +1 -1
- package/dist/cjs/v2/EditorContent.cjs.js +4 -3
- package/dist/cjs/v2/EditorContent.cjs.js.map +1 -1
- package/dist/cjs/v2/FormikEditor.cjs.js +6 -5
- package/dist/cjs/v2/FormikEditor.cjs.js.map +1 -1
- package/dist/cjs/v2/Menu.cjs.js +4 -3
- package/dist/cjs/v2/Menu.cjs.js.map +1 -1
- package/dist/cjs/v2/index.cjs.js +8 -7
- package/dist/cjs/v2/index.cjs.js.map +1 -1
- package/dist/cjs/v2/utils.cjs.js +7 -6
- package/dist/cjs/v2/utils.cjs.js.map +1 -1
- package/dist/editor-stats.html +2 -2
- package/dist/index.js +9 -8
- package/dist/index.js.map +1 -1
- package/dist/utils.js +7 -6
- package/dist/utils.js.map +1 -1
- package/dist/v2/Editor.js +6 -5
- package/dist/v2/Editor.js.map +1 -1
- package/dist/v2/EditorContent.js +4 -3
- package/dist/v2/EditorContent.js.map +1 -1
- package/dist/v2/FormikEditor.js +6 -5
- package/dist/v2/FormikEditor.js.map +1 -1
- package/dist/v2/Menu.js +4 -3
- package/dist/v2/Menu.js.map +1 -1
- package/dist/v2/index.js +8 -7
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/utils.js +7 -6
- package/dist/v2/utils.js.map +1 -1
- package/package.json +7 -5
- package/dist/chunk-Byc0nnPW.js.map +0 -1
- package/dist/chunk-CTLN7kYv.js.map +0 -1
- package/dist/chunk-C_P2M3zF.js.map +0 -1
- package/dist/chunk-DgZGzqPs.js.map +0 -1
- package/dist/cjs/chunk-Bsk_FDUA.cjs.js.map +0 -1
- package/dist/cjs/chunk-Crp27WMe.cjs.js.map +0 -1
- package/dist/cjs/chunk-D9InNR1-.cjs.js.map +0 -1
- package/dist/cjs/chunk-Ty2BpOZ5.cjs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-D53HfRZd.cjs.js","sources":["../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/constants.js","../../app/javascript/src/components/Editor/CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu.jsx","../../app/javascript/src/components/Editor/CustomExtensions/Embeds/utils.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/Button.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/CalloutIcon.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/CalloutTypeOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/RenderCalloutOptions.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/SecondaryMenuTarget.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/EmojiOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/LinkOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/TableOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/utils.jsx","../../app/javascript/src/components/Editor/CustomExtensions/Mention/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/TextColorOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/Options.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/index.jsx","../../app/javascript/src/components/Editor/Menu/EmptyMenu.jsx","../../app/javascript/src/components/Editor/MediaUploader/Progress.jsx","../../app/javascript/src/components/Editor/MediaUploader/LocalUploader.jsx","../../app/javascript/src/components/Editor/MediaUploader/VideoEmbedForm.jsx","../../app/javascript/src/components/Editor/MediaUploader/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/LinkAddPopOver.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/MoreMenu.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/hooks/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/hooks/useEditorState.js","../../app/javascript/src/components/Editor/Menu/DynamicVariables.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/index.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/UI/Button.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/UI/Dropdown.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/Emoji.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/index.jsx","../../app/javascript/src/components/Editor/Menu/Headless/utils.js","../../app/javascript/src/components/Editor/Menu/Headless/index.jsx","../../app/javascript/src/components/Editor/Menu/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/FontSizeOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/ColorDot.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/TableOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/utils.js","../../app/javascript/src/components/Editor/Menu/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Info, Warning, Danger, Megaphone, Success } from \"neetoicons/misc\";\n\nexport const CALLOUT_TYPES = [\n {\n type: \"default\",\n label: t(\"neetoEditor.menu.calloutDefault\"),\n icon: Megaphone,\n bgColor: \"--neeto-editor-gray-100\",\n },\n {\n type: \"info\",\n label: t(\"neetoEditor.menu.calloutInfo\"),\n icon: Info,\n bgColor: \"--neeto-editor-info-100\",\n },\n {\n type: \"warning\",\n label: t(\"neetoEditor.menu.calloutWarning\"),\n icon: Warning,\n bgColor: \"--neeto-editor-warning-100\",\n },\n {\n type: \"error\",\n label: t(\"neetoEditor.menu.calloutError\"),\n icon: Danger,\n bgColor: \"--neeto-editor-error-100\",\n },\n {\n type: \"success\",\n label: t(\"neetoEditor.menu.calloutSuccess\"),\n icon: Success,\n bgColor: \"--neeto-editor-success-100\",\n },\n];\n","import React from \"react\";\n\nimport { Picker } from \"emoji-mart\";\nimport PropTypes from \"prop-types\";\n\nimport emojiPickerApi from \"apis/emoji_picker\";\n\nclass EmojiPickerMenu extends React.Component {\n ref = React.createRef();\n\n componentDidMount() {\n new Picker({\n ...this.props,\n onEmojiSelect: this.handleSelect,\n style: { maxWidth: \"100%\" },\n theme: \"light\",\n native: true,\n previewPosition: \"none\",\n showSkinTones: false,\n data: this.fetchEmojiData,\n ref: this.ref,\n });\n }\n\n fetchEmojiData = async () => {\n try {\n const { data } = await emojiPickerApi.fetch();\n\n return data;\n } catch {\n return {};\n }\n };\n\n onKeyDown = ({ event }) => {\n if (event.key === \"Escape\") {\n this.props.editor.chain().focus().deleteRange(this.props.range).run();\n\n return true;\n }\n\n return false;\n };\n\n handleSelect = emoji => {\n this.props.editor\n .chain()\n .focus()\n .deleteRange(this.props.range)\n .setEmoji(emoji)\n .run();\n this.props.setActive?.(false);\n };\n\n render() {\n return (\n <div\n data-testid=\"neeto-editor-emoji-picker\"\n ref={this.ref}\n style={{ minWidth: \"350px\" }}\n />\n );\n }\n}\n\nEmojiPickerMenu.defaultProps = { editor: {}, range: {} };\n\nEmojiPickerMenu.propTypes = {\n editor: PropTypes.object.isRequired,\n range: PropTypes.object,\n};\n\nexport default EmojiPickerMenu;\n","import { URL_VALIDATORS } from \"common/constants\";\n\nexport const validateUrl = url => {\n if (!url) return false;\n\n for (const validator of Object.values(URL_VALIDATORS)) {\n const result = validator(url);\n if (result) return result;\n }\n\n return false;\n};\n","import { memo } from \"react\";\n\nimport { Button } from \"neetoui\";\n\nimport useEditorStore from \"src/stores/useEditorStore\";\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nimport { renderTooltipContent } from \"../utils.js\";\n\nconst MenuButton = ({\n icon,\n command,\n optionName,\n highlight,\n disabled: isButtonDisabled = false,\n label,\n}) => {\n const { isActive, disabled = isButtonDisabled } = useEditorStore.pick([\n \"marksState\",\n optionName,\n ]);\n\n return (\n <Button\n {...{ disabled, icon }}\n className=\"neeto-editor-fixed-menu__item\"\n data-testid={`neeto-editor-fixed-menu-${optionName}-option`}\n style={isActive ? \"secondary\" : \"text\"}\n tabIndex=\"-1\"\n tooltipProps={{\n content: renderTooltipContent(label, optionName),\n position: \"bottom\",\n }}\n onClick={command}\n {...generateFocusProps(highlight)}\n />\n );\n};\n\nexport default memo(MenuButton);\n","import { Flag } from \"neetoicons\";\n\nconst CalloutIcon = ({ currentType }) => {\n if (currentType?.icon) {\n const Icon = currentType.icon;\n\n return (\n <span className=\"neeto-editor-callout-dropdown__current-emoji\">\n <Icon size={22} />\n </span>\n );\n }\n\n return <Flag size={16} />;\n};\n\nexport default CalloutIcon;\n","import classNames from \"classnames\";\nimport { Typography } from \"neetoui\";\n\nconst CalloutTypeOption = ({ calloutType, isSelected, onClick }) => {\n const optionClass = classNames(\"neeto-editor-callout-dropdown__type-option\", {\n \"neeto-editor-callout-dropdown__type-option--selected\": isSelected,\n });\n const Icon = calloutType.icon;\n\n return (\n <div {...{ onClick }} className={optionClass}>\n <span\n className=\"neeto-editor-callout-dropdown__type-emoji\"\n data-testid=\"callout-type-emoji\"\n >\n <Icon />\n </span>\n <Typography\n className=\"neeto-editor-callout-dropdown__type-label\"\n style=\"body2\"\n weight=\"medium\"\n >\n {calloutType.label}\n </Typography>\n </div>\n );\n};\n\nexport default CalloutTypeOption;\n","import CalloutTypeOption from \"./CalloutTypeOption\";\nimport { CALLOUT_TYPES } from \"./constants\";\n\nconst RenderCalloutOptions = ({\n isInCallout,\n currentCalloutAttrs,\n handleCalloutTypeClick,\n}) =>\n CALLOUT_TYPES.map((calloutType, idx) => (\n <CalloutTypeOption\n {...{ calloutType }}\n isSelected={isInCallout && currentCalloutAttrs?.type === calloutType.type}\n key={idx}\n onClick={() => handleCalloutTypeClick(calloutType)}\n />\n ));\n\nexport default RenderCalloutOptions;\n","import React, { useRef } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography, Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CalloutIcon from \"./CalloutIcon\";\nimport { CALLOUT_TYPES } from \"./constants\";\nimport RenderCalloutOptions from \"./RenderCalloutOptions\";\n\nconst CalloutDropdown = ({ editor, label, tooltipContent }) => {\n const { t } = useTranslation();\n const dropdownRef = useRef(null);\n\n const isInCallout = editor.isActive(\"callout\");\n const currentCalloutAttrs = isInCallout\n ? editor.getAttributes(\"callout\")\n : null;\n\n const currentType =\n findBy({ type: currentCalloutAttrs?.type }, CALLOUT_TYPES) ||\n CALLOUT_TYPES[0];\n\n const handleCalloutTypeClick = calloutType => {\n const editorChain = editor.chain().focus();\n const isSameType =\n isInCallout && currentCalloutAttrs?.type === calloutType.type;\n\n if (isSameType) {\n editorChain.lift(\"callout\").run();\n } else if (isInCallout) {\n editorChain\n .updateAttributes(\"callout\", {\n type: calloutType.type,\n emoji: calloutType.emoji,\n })\n .run();\n } else {\n editorChain\n .setCallout({ type: calloutType.type, emoji: calloutType.emoji })\n .run();\n }\n };\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: () => (\n <CalloutIcon currentType={isInCallout ? currentType : null} />\n ),\n iconPosition: \"left\",\n iconSize: 20,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-callout-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: isInCallout ? \"secondary\" : \"text\",\n size: \"small\",\n className: \"neeto-editor-fixed-menu__item\",\n }}\n >\n <Dropdown.Menu className=\"neeto-editor-callout-dropdown\">\n <div className=\"neeto-editor-callout-dropdown__section\">\n <Typography\n className=\"neeto-editor-callout-dropdown__section-title\"\n style=\"body2\"\n weight=\"normal\"\n >\n {t(\"neetoEditor.menu.selectCalloutType\")}\n </Typography>\n <div className=\"neeto-editor-callout-dropdown__options-grid\">\n <RenderCalloutOptions\n {...{ currentCalloutAttrs, handleCalloutTypeClick, isInCallout }}\n />\n </div>\n </div>\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default CalloutDropdown;\n","import { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst SecondaryMenuTarget = ({ icon: Icon, label }) => (\n <MenuItem.Button\n data-testid={`neeto-editor-fixed-menu-${hyphenate(label)}-option`}\n >\n <Icon /> {label}\n </MenuItem.Button>\n);\n\nexport default SecondaryMenuTarget;\n","import { memo } from \"react\";\n\nimport { Smiley } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nimport EmojiPickerMenu from \"../../../CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu\";\n\nconst EmojiOption = ({\n editor,\n isActive,\n setActive,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => (\n <Dropdown\n buttonStyle=\"text\"\n closeOnSelect={false}\n icon={Smiley}\n isOpen={isActive}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n strategy=\"fixed\"\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n \"data-testid\": \"neeto-editor-fixed-menu-emoji-option\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Smiley} />\n }\n dropdownProps={{\n classNames: \"neeto-editor-fixed-menu__emoji-dropdown\",\n onClick: e => isSecondaryMenu && e.stopPropagation(),\n }}\n onClose={() => setActive(false)}\n onClick={e => {\n setActive(active => !active);\n isSecondaryMenu && e.stopPropagation();\n }}\n >\n <EmojiPickerMenu {...{ editor, setActive }} />\n </Dropdown>\n);\n\nexport default memo(EmojiOption);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_PROTOCOL_URL_REGEXP } from \"common/constants\";\nimport { validateAndFormatUrl } from \"components/Editor/utils\";\n\nconst LinkOption = ({ editor, handleClose, handleAnimateInvalidLink }) => {\n const { t } = useTranslation();\n\n const [link, setLink] = useState(\"\");\n\n useEffect(() => {\n setLink(editor.getAttributes(\"link\").href || \"\");\n }, [editor]);\n\n const handleKeyDown = event => {\n if (event.key === \"Escape\") {\n handleClose();\n } else if (event.key === \"Enter\") {\n handleSubmit();\n }\n };\n\n const handleSubmit = () => {\n if (ALL_PROTOCOL_URL_REGEXP.test(link)) {\n editor.chain().focus().setLink({ href: link }).run();\n handleClose();\n } else if (isNotPresent(link)) {\n editor.chain().focus().unsetLink().run();\n handleClose();\n } else {\n setLink(\"\");\n handleAnimateInvalidLink();\n }\n };\n\n const handleReset = () => {\n if (link) {\n setLink(\"\");\n editor.chain().focus().unsetLink().run();\n } else {\n handleClose();\n }\n };\n\n return (\n <div className=\"neeto-editor-bubble-menu__link\" onKeyDown={handleKeyDown}>\n <input\n autoFocus\n className=\"neeto-editor-bubble-menu-link__input\"\n data-testid=\"neeto-editor-link-input\"\n name=\"url\"\n placeholder={t(\"neetoEditor.placeholders.linkInput\")}\n value={link}\n onChange={({ target: { value } }) =>\n setLink(validateAndFormatUrl(value))\n }\n />\n <Button\n data-testid=\"neeto-editor-link-cancel-button\"\n icon={Close}\n size=\"small\"\n style=\"secondary\"\n onClick={handleReset}\n />\n </div>\n );\n};\n\nexport default LinkOption;\n","import { useState } from \"react\";\n\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TableOption = ({ editor, handleClose }) => {\n const { t } = useTranslation();\n\n const [rows, setRows] = useState(3);\n const [columns, setColumns] = useState(3);\n\n const handleSubmit = () => {\n editor\n .chain()\n .focus()\n .insertTable({ rows, cols: columns, withHeaderRow: true })\n .run(),\n setRows(3);\n setColumns(3);\n handleClose();\n };\n\n return (\n <div className=\"neeto-editor-bubble-menu__table\">\n <div className=\"neeto-editor-bubble-menu__table__menu-item\">\n <Label className=\"neeto-editor-bubble-menu__table__input-label\">\n {t(\"neetoEditor.menu.rows\")}\n </Label>\n <input\n autoFocus\n data-testid=\"neeto-editor-bubble-menu-table-rows-input\"\n min=\"1\"\n type=\"number\"\n value={rows}\n onChange={withEventTargetValue(setRows)}\n />\n </div>\n <div className=\"neeto-editor-bubble-menu__table__menu-item\">\n <Label className=\"neeto-editor-bubble-menu__table__input-label\">\n {t(\"neetoEditor.menu.columns\")}\n </Label>\n <input\n data-testid=\"neeto-editor-bubble-menu-table-option-input\"\n min=\"1\"\n type=\"number\"\n value={columns}\n onChange={withEventTargetValue(setColumns)}\n />\n </div>\n <div className=\"neeto-editor-bubble-menu__table__buttons\">\n <Button\n data-testid=\"neeto-editor-bubble-menu-table-option-create-button\"\n icon={Check}\n size=\"small\"\n style=\"secondary\"\n onClick={handleSubmit}\n />\n <Button\n data-testid=\"neeto-editor-bubble-menu-table-option-close-button\"\n icon={Close}\n size=\"small\"\n style=\"secondary\"\n onClick={handleClose}\n />\n </div>\n </div>\n );\n};\n\nexport default TableOption;\n","import { t } from \"i18next\";\nimport {\n Quote,\n Attachment,\n CodeBlock,\n Code,\n Highlight,\n Link,\n TextBold,\n TextCross,\n TextItalic,\n Underline,\n ListDot,\n ListNumber,\n ImageUpload,\n Video,\n Undo,\n Redo,\n TextP,\n TextH1,\n TextH2,\n TextH3,\n} from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { assoc, fromPairs, not, prop } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nexport const createMenuOptions = ({\n tooltips,\n editor,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n}) => ({\n font: [\n {\n Icon: TextBold,\n command: () => editor.chain().focus().toggleBold().run(),\n active: editor.isActive(\"bold\"),\n optionName: \"bold\",\n tooltip: tooltips.bold || t(\"neetoEditor.menu.bold\"),\n },\n {\n Icon: TextItalic,\n command: () => editor.chain().focus().toggleItalic().run(),\n active: editor.isActive(\"italic\"),\n optionName: \"italic\",\n tooltip: tooltips.italic || t(\"neetoEditor.menu.italic\"),\n },\n {\n Icon: Underline,\n command: () => editor.chain().focus().toggleUnderline().run(),\n active: editor.isActive(\"underline\"),\n optionName: \"underline\",\n tooltip: tooltips.underline || t(\"neetoEditor.menu.underline\"),\n },\n {\n Icon: Link,\n command: () => setIsAddLinkActive(not),\n optionName: \"link\",\n tooltip: \"Link\",\n },\n {\n Icon: TextCross,\n command: () => editor.chain().focus().toggleStrike().run(),\n active: editor.isActive(\"strike\"),\n optionName: \"strike\",\n tooltip: tooltips.strike || t(\"neetoEditor.menu.strike\"),\n },\n {\n Icon: Highlight,\n command: () => editor.chain().focus().toggleHighlight().run(),\n active: editor.isActive(\"highlight\"),\n optionName: \"highlight\",\n tooltip: tooltips.highlight || t(\"neetoEditor.menu.highlight\"),\n },\n ],\n block: [\n {\n Icon: Quote,\n command: () => editor.chain().focus().toggleBlockquote().run(),\n active: editor.isActive(\"blockquote\"),\n optionName: \"block-quote\",\n highlight: true,\n tooltip: tooltips.blockQuote || t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n Icon: Code,\n command: () => editor.chain().focus().toggleCode().run(),\n active: editor.isActive(\"code\"),\n optionName: \"code\",\n tooltip: tooltips.code || t(\"neetoEditor.menu.code\"),\n },\n {\n Icon: CodeBlock,\n command: () => editor.chain().focus().toggleCodeBlock().run(),\n active: editor.isActive(\"codeBlock\"),\n optionName: \"code-block\",\n tooltip: tooltips.codeBlock || t(\"neetoEditor.menu.codeBlock\"),\n },\n ],\n list: [\n {\n Icon: ListDot,\n command: () => editor.chain().focus().toggleBulletList().run(),\n active: editor.isActive(\"bulletList\"),\n optionName: \"bullet-list\",\n highlight: true,\n tooltip: tooltips.bulletList || t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n Icon: ListNumber,\n command: () => editor.chain().focus().toggleOrderedList().run(),\n active: editor.isActive(\"orderedList\"),\n optionName: \"ordered-list\",\n highlight: true,\n tooltip: tooltips.orderedList || t(\"neetoEditor.menu.orderedList\"),\n },\n ],\n misc: [\n {\n Icon: Attachment,\n command: attachmentProps?.handleUploadAttachments,\n disabled: attachmentProps?.isDisabled,\n active: false,\n optionName: \"attachments\",\n tooltip: tooltips.attachments || t(\"neetoEditor.menu.attachments\"),\n },\n {\n Icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n optionName: \"image-upload\",\n tooltip: tooltips.imageUpload || t(\"neetoEditor.menu.imageUpload\"),\n },\n {\n Icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n optionName: \"video-upload\",\n tooltip: tooltips.videoUpload || t(\"neetoEditor.menu.videoUpload\"),\n },\n ],\n right: [\n {\n Icon: Undo,\n command: () => editor.chain().focus().undo().run(),\n active: false,\n disabled: !editor.can().undo(),\n optionName: \"undo\",\n tooltip: tooltips.undo || t(\"neetoEditor.menu.undo\"),\n },\n {\n Icon: Redo,\n command: () => editor.chain().focus().redo().run(),\n active: false,\n disabled: !editor.can().redo(),\n optionName: \"redo\",\n tooltip: tooltips.redo || t(\"neetoEditor.menu.redo\"),\n },\n ],\n});\n\nexport const buildBubbleMenuOptions = ({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n}) => {\n const menuOptions = createMenuOptions({\n tooltips,\n editor,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n });\n\n return fromPairs(\n [\"font\", \"block\", \"list\", \"misc\", \"right\"].map(option => [\n option,\n menuOptions[option].filter(item => options.includes(item.optionName)),\n ])\n );\n};\n\nexport const getTextMenuDropdownOptions = ({ editor, options }) => {\n const textOptions = {\n [EDITOR_OPTIONS.H1]: {\n optionName: \"Heading 1\",\n icon: TextH1,\n active: editor.isActive(\"heading\", { level: 1 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 1 }).run(),\n },\n [EDITOR_OPTIONS.H2]: {\n optionName: \"Heading 2\",\n icon: TextH2,\n active: editor.isActive(\"heading\", { level: 2 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 2 }).run(),\n },\n [EDITOR_OPTIONS.H3]: {\n optionName: \"Heading 3\",\n icon: TextH3,\n active: editor.isActive(\"heading\", { level: 3 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 3 }).run(),\n },\n [EDITOR_OPTIONS.PARAGRAPH]: {\n optionName: \"Text\",\n icon: TextP,\n active: editor.isActive(\"paragraph\"),\n command: () => editor.chain().focus().setNode(\"paragraph\").run(),\n },\n };\n\n const result = [];\n options.forEach(option => {\n if (!textOptions[option]) return;\n result.push(textOptions[option]);\n });\n\n return result;\n};\n\nexport const getNodeIcon = options =>\n options.find(prop(\"active\"))?.icon || TextP;\n\nexport const renderOptionButton = ({\n tooltip,\n Icon,\n command,\n active,\n optionName,\n highlight,\n}) => (\n <Button\n className=\"neeto-editor-bubble-menu__item\"\n data-testid={`neeto-editor-bubble-menu-${optionName}-option`}\n icon={Icon}\n key={optionName}\n size=\"medium\"\n style={active ? \"secondary\" : \"text\"}\n tooltipProps={{\n content: tooltip,\n position: \"bottom\",\n theme: \"dark\",\n }}\n onClick={command}\n {...generateFocusProps(highlight)}\n />\n);\n","import { memo } from \"react\";\n\nimport { Email } from \"neetoicons\";\nimport { Avatar, Dropdown, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport SecondaryMenuTarget from \"components/Editor/Menu/Fixed/components/SecondaryMenuTarget\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Mentions = ({\n editor,\n mentions,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n if (isEmpty(mentions)) return null;\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n data-testid=\"neeto-editor-mention-option\"\n icon={Email}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n strategy=\"fixed\"\n buttonProps={{\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Email} />\n }\n onClick={e => isSecondaryMenu && e.stopPropagation()}\n >\n <Menu>\n {mentions.map(({ key, name, imageUrl }) => (\n <MenuItem.Button\n data-testid={`neeto-editor-mention-option-${key}`}\n key={key}\n onClick={() => editor.commands.setMention({ id: key, label: name })}\n >\n <Avatar size=\"small\" user={{ name, imageUrl }} />\n <Typography style=\"body2\">{name}</Typography>\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(Mentions);\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Check, Close, Customize, Refresh } from \"neetoicons\";\nimport { Button, Dropdown, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { HexColorPicker } from \"react-colorful\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nconst TextColorOption = ({\n editor,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [color, setColor] = useState(null);\n\n const dropdownWrapperRef = useRef(null);\n const { t } = useTranslation();\n\n const handleSave = () => {\n editor.chain().focus().setColor(color).run();\n setIsOpen(false);\n };\n\n const handleUnset = () => {\n editor.chain().focus().unsetColor().run();\n setColor(null);\n setIsOpen(false);\n };\n\n useOnClickOutside(dropdownWrapperRef, event => {\n if (!isOpen) return;\n event.preventDefault();\n editor.commands.focus();\n setIsOpen(false);\n });\n\n useEffect(() => {\n setColor(editor.getAttributes(\"textStyle\").color);\n }, [isOpen, editor.getAttributes(\"textStyle\").color]);\n\n const openColorPicker = e => {\n isSecondaryMenu && e.stopPropagation();\n setColor(editor.getAttributes(\"textStyle\").color);\n setIsOpen(not);\n };\n\n return (\n <Dropdown\n {...{ isOpen }}\n buttonStyle={isOpen || color ? \"secondary\" : \"text\"}\n icon={Customize}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className:\n \"neeto-editor-fixed-menu__item neeto-editor-text-color-option\",\n \"data-testid\": \"neeto-editor-fixed-menu-text-color-option\",\n }}\n customTarget={\n isSecondaryMenu && (\n <SecondaryMenuTarget {...{ label }} icon={Customize} />\n )\n }\n onClick={openColorPicker}\n >\n <div\n ref={dropdownWrapperRef}\n style={{ \"min-width\": \"236px\" }}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <HexColorPicker color={color || \"#000000\"} onChange={setColor} />\n <div className=\"neeto-editor-text-color-option__options-group\">\n <Input\n autoFocus\n className=\"neeto-editor-text-color-option__options-group__input\"\n placeholder={t(\"neetoEditor.placeholders.pickColor\")}\n size=\"small\"\n value={color}\n onChange={withEventTargetValue(setColor)}\n onClick={event => event.stopPropagation()}\n />\n <Button icon={Check} size=\"small\" onClick={handleSave} />\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => {\n editor.commands.focus();\n setIsOpen(false);\n }}\n />\n <Button\n icon={Refresh}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoEditor.common.resetToDefault\"),\n position: \"top\",\n }}\n onClick={handleUnset}\n />\n </div>\n </div>\n </Dropdown>\n );\n};\n\nexport default TextColorOption;\n","import { Link, Column, Down } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport LinkOption from \"./LinkOption\";\nimport TableOption from \"./TableOption\";\nimport {\n getNodeIcon,\n getTextMenuDropdownOptions,\n renderOptionButton,\n buildBubbleMenuOptions,\n} from \"./utils\";\n\nimport Mentions from \"../../CustomExtensions/Mention\";\nimport EmojiOption from \"../Fixed/components/EmojiOption\";\nimport TextColorOption from \"../Fixed/components/TextColorOption\";\n\nconst Options = ({\n editor,\n options,\n mentions,\n tooltips,\n setIsInvalidLink,\n isLinkOptionActive,\n isTableOptionActive,\n setIsLinkOptionActive,\n setIsTableOptionActive,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const { t } = useTranslation();\n const { Menu, MenuItem } = Dropdown;\n\n const dropdownOptions = getTextMenuDropdownOptions({ editor, options });\n const Icon = getNodeIcon(dropdownOptions);\n const isEmojiActive = options.includes(EDITOR_OPTIONS.EMOJI);\n const isTextColorOptionActive = options.includes(EDITOR_OPTIONS.TEXT_COLOR);\n const isLinkActive = options.includes(EDITOR_OPTIONS.LINK);\n const isTableActive = options.includes(EDITOR_OPTIONS.TABLE);\n\n const {\n font: fontStyleOptions,\n block: blockStyleOptions,\n list: listStyleOptions,\n } = buildBubbleMenuOptions({\n editor,\n options,\n setMediaUploader,\n tooltips,\n attachmentProps,\n setIsAddLinkActive: setIsLinkOptionActive,\n });\n\n const handleAnimateInvalidLink = () => {\n setIsInvalidLink(true);\n setTimeout(() => {\n setIsInvalidLink(false);\n }, 1000);\n };\n\n if (isLinkOptionActive) {\n return (\n <LinkOption\n {...{ editor, handleAnimateInvalidLink }}\n handleClose={() => setIsLinkOptionActive(false)}\n />\n );\n }\n\n if (isTableOptionActive) {\n return (\n <TableOption\n {...{ editor }}\n handleClose={() => setIsTableOptionActive(false)}\n />\n );\n }\n\n return (\n <>\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"text\"\n label={Icon}\n strategy=\"fixed\"\n buttonProps={{\n icon: Icon,\n iconPosition: \"left\",\n iconSize: 22,\n label: <Down size={12} />,\n \"data-testid\": \"neeto-editor-fixed-menu-font-size-option\",\n style: \"text\",\n size: \"small\",\n className:\n \"neeto-editor-bubble-menu__item neeto-editor-font-size__wrapper\",\n }}\n >\n <Menu className=\"neeto-ui-flex neeto-ui-gap-1 neeto-editor-menu-font-size-options\">\n {dropdownOptions.map(({ optionName, command, icon: Icon }) => (\n <MenuItem.Button\n className=\"neeto-editor-menu-font-size-options__item-btn\"\n key={optionName}\n tooltipProps={{ content: optionName, position: \"bottom\" }}\n onClick={command}\n >\n <Icon size={22} />\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n {fontStyleOptions.map(renderOptionButton)}\n {blockStyleOptions.map(renderOptionButton)}\n {isTextColorOptionActive && (\n <TextColorOption\n {...{ editor }}\n tooltipContent={tooltips.textColor || t(\"neetoEditor.menu.textColor\")}\n />\n )}\n {isEmojiActive && (\n <EmojiOption\n {...{ editor }}\n isActive={isEmojiPickerActive}\n setActive={setIsEmojiPickerActive}\n tooltipContent={tooltips.emoji || t(\"neetoEditor.menu.emoji\")}\n />\n )}\n {listStyleOptions.map(renderOptionButton)}\n {isLinkActive &&\n renderOptionButton({\n Icon: Link,\n command: () => setIsLinkOptionActive(true),\n active: editor.isActive(\"link\"),\n optionName: \"link\",\n highlight: false,\n tooltip: tooltips.link || t(\"neetoEditor.menu.link\"),\n })}\n {isTableActive &&\n renderOptionButton({\n Icon: Column,\n command: () => setIsTableOptionActive(true),\n active: editor.isActive(\"table\"),\n optionName: \"table\",\n highlight: false,\n tooltip: tooltips.table || t(\"neetoEditor.menu.table\"),\n })}\n <Mentions\n {...{ editor, mentions }}\n tooltipContent={tooltips.mention || t(\"neetoEditor.menu.mention\")}\n />\n </>\n );\n};\n\nexport default Options;\n","import { useState } from \"react\";\n\nimport { BubbleMenu as BubbleMenuTipTap } from \"@tiptap/react/menus\";\nimport classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport Options from \"./Options\";\n\nconst Bubble = ({\n editor,\n options: textOptions,\n mentions = [],\n setMediaUploader,\n tooltips = {},\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const [isInvalidLink, setIsInvalidLink] = useState(false);\n const [isLinkOptionActive, setIsLinkOptionActive] = useState(false);\n const [isTableOptionActive, setIsTableOptionActive] = useState(false);\n const selectedNode = editor && editor.view.state.selection.node;\n const isImageNodeSelected =\n selectedNode && selectedNode.type.name === \"image\";\n\n const bubbleMenuOptions = [\n EDITOR_OPTIONS.BOLD,\n EDITOR_OPTIONS.ITALIC,\n EDITOR_OPTIONS.UNDERLINE,\n EDITOR_OPTIONS.STRIKETHROUGH,\n EDITOR_OPTIONS.LINK,\n ];\n\n const noTextOptions = isNotPresent(\n textOptions.filter(option => bubbleMenuOptions.includes(option))\n );\n\n if (!editor || (!isImageNodeSelected && noTextOptions)) {\n return null;\n }\n\n return (\n <div>\n <BubbleMenuTipTap\n {...{ editor }}\n style={{ zIndex: 99999, maxWidth: 500 }}\n className={classnames(\"neeto-editor-bubble-menu\", {\n \"neeto-editor-bubble-menu-animate-shake\": isInvalidLink,\n })}\n options={{\n offset: 10,\n onHide: () => {\n setIsLinkOptionActive(false);\n setIsTableOptionActive(false);\n },\n }}\n >\n <Options\n {...{\n attachmentProps,\n editor,\n isEmojiPickerActive,\n isLinkOptionActive,\n isTableOptionActive,\n mentions,\n setIsEmojiPickerActive,\n setIsInvalidLink,\n setIsLinkOptionActive,\n setIsTableOptionActive,\n setMediaUploader,\n tooltips,\n }}\n options={textOptions}\n />\n </BubbleMenuTipTap>\n </div>\n );\n};\n\nexport default Bubble;\n","const EmptyMenu = () => <div />;\n\nexport default EmptyMenu;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\n\nimport FileIcon from \"../../Common/FileIcon\";\n\nconst Progress = withT(({ t, queuedFiles, cancelUpload }) => (\n <div className=\"ne-media-uploader__wrapper\">\n {queuedFiles.map(({ id, filename, progress = 0 }) => (\n <div className=\"ne-media-uploader__media\" key={id}>\n <div className=\"ne-media-uploader__media__cancel-button-wrapper\">\n <Button\n data-testid=\"neeto-editor-image-upload-cancel-button\"\n icon={Close}\n iconSize={18}\n size=\"small\"\n style=\"text\"\n onClick={() => cancelUpload(id)}\n />\n </div>\n <FileIcon\n className=\"ne-media-uploader__media__info__icon\"\n fileName={filename}\n />\n <div className=\"ne-media-uploader__media__info\">\n <Typography style=\"nano\">\n {progress === 100 && t(\"neetoEditor.localUploader.completed\")}\n {progress !== 100 && <>{progress}%</>}\n </Typography>\n <div className=\"ne-media-uploader__media__progress\">\n <div\n className=\"ne-media-uploader__media__progress-bar\"\n style={{ width: `${progress}%` }}\n />\n </div>\n <Tooltip content={filename} position=\"top\">\n <Typography style=\"body3\">{filename}</Typography>\n </Tooltip>\n </div>\n </div>\n ))}\n </div>\n));\n\nexport default Progress;\n","import { useRef } from \"react\";\n\nimport { ImageUpload } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDropFiles from \"hooks/useDropFiles\";\nimport useFileUploader from \"hooks/useFileUploader\";\n\nimport {\n ALLOWED_IMAGE_TYPES,\n ALLOWED_VIDEO_TYPES,\n DEFAULT_IMAGE_UPLOAD_CONFIG,\n DEFAULT_VIDEO_UPLOAD_CONFIG,\n} from \"./constants\";\nimport Progress from \"./Progress\";\nimport { convertToFileSize } from \"./utils\";\n\nconst LocalUploader = ({\n isImage,\n onClose,\n insertMediaToEditor,\n setIsUploading,\n}) => {\n const { t } = useTranslation();\n\n const uploadConfig = isImage\n ? DEFAULT_IMAGE_UPLOAD_CONFIG\n : DEFAULT_VIDEO_UPLOAD_CONFIG;\n\n const fileInputRef = useRef(null);\n const dropTargetRef = useRef(null);\n\n const { addFiles, uploadFiles, queuedFiles, cancelUpload, isUploading } =\n useFileUploader({\n config: uploadConfig,\n setIsUploadingOnHost: setIsUploading,\n });\n\n const handleFilesDrop = async files => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n uploadedFiles.forEach(insertMediaToEditor);\n onClose();\n };\n\n useDropFiles({ dropTargetRef, onDrop: handleFilesDrop });\n\n setIsUploading(isUploading);\n\n const handleAddFile = async ({ target: { files } }) => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n uploadedFiles.forEach(insertMediaToEditor);\n onClose();\n };\n\n return !isEmpty(queuedFiles) || isUploading ? (\n <Progress {...{ cancelUpload, queuedFiles }} />\n ) : (\n <div\n className=\"ne-media-uploader__dnd\"\n data-testid=\"neeto-editor-media-uploader-dnd\"\n ref={dropTargetRef}\n tabIndex={0}\n onClick={() => fileInputRef.current?.click()}\n >\n <input\n multiple\n className=\"ne-media-uploader__dnd-input\"\n data-testid=\"neeto-editor-media-uploader-input\"\n ref={fileInputRef}\n type=\"file\"\n accept={\n isImage\n ? ALLOWED_IMAGE_TYPES.join(\",\")\n : ALLOWED_VIDEO_TYPES.join(\",\")\n }\n onChange={handleAddFile}\n />\n <ImageUpload className=\"ne-media-uploader__dnd-icon\" size={24} />\n <Typography style=\"body2\">\n {t(\"neetoEditor.localUploader.dropFilesHere\")}\n </Typography>\n <Typography style=\"body3\">\n {t(\"neetoEditor.localUploader.maxFileSize\", {\n entity: convertToFileSize(uploadConfig.restrictions.maxFileSize),\n })}\n </Typography>\n </div>\n );\n};\n\nexport default LocalUploader;\n","import { Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { VIDEO_EMBED_FORM_VALIDATION_SCHEMA } from \"./constants\";\n\nimport { validateUrl } from \"../CustomExtensions/Embeds/utils\";\n\nconst VideoEmbedForm = ({ onEmbedVideo, onAttachVideo, onClose }) => {\n const { t } = useTranslation();\n\n const initialValues = { url: \"\" };\n\n const onSubmit = ({ url }) => {\n const embedUrl = validateUrl(url); // False when current url is not \"embeddable\"\n if (embedUrl) onEmbedVideo(url, embedUrl);\n else onAttachVideo(url);\n onClose();\n };\n\n return (\n <div className=\"ne-video-embed-form\">\n <Form\n formikProps={{\n initialValues,\n validationSchema: VIDEO_EMBED_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n {({ dirty, isSubmitting, resetForm }) => (\n <>\n <div className=\"ne-video-embed-form__content\">\n <Input\n autoFocus\n unlimitedChars\n data-testid=\"neeto-editor-video-embed-input\"\n label={t(\"neetoEditor.common.videoUrl\")}\n name=\"url\"\n placeholder={t(\"neetoEditor.placeholders.embedUrl\")}\n size=\"medium\"\n type=\"text\"\n />\n </div>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"neeto-editor-video-embed-cancel\",\n label: t(\"neetoEditor.common.cancel\"),\n size: \"small\",\n onClick: () => {\n resetForm();\n onClose();\n },\n }}\n submitButtonProps={{\n \"data-testid\": \"neeto-editor-video-embed-submit\",\n disabled: !dirty,\n label: t(\"neetoEditor.common.saveChanges\"),\n loading: isSubmitting,\n size: \"small\",\n }}\n />\n </>\n )}\n </Form>\n </div>\n );\n};\n\nexport default VideoEmbedForm;\n","import { useEffect, useState } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { ImageUploader } from \"neetoimageuploader\";\nimport { Modal, Tab, Toastr } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\n\nimport LocalUploader from \"./LocalUploader\";\nimport { getTabs } from \"./utils\";\nimport VideoEmbedForm from \"./VideoEmbedForm\";\n\nconst MediaUploader = ({\n mediaUploader,\n onClose,\n editor,\n showAssetLibrary = true,\n}) => {\n const { t } = useTranslation();\n\n const [activeTab, setActiveTab] = useState(\"local\");\n const [isUploading, setIsUploading] = useState(false);\n const isOpen = mediaUploader.image || mediaUploader.video;\n const [tabs, setTabs] = useState([]);\n\n useEffect(() => {\n isOpen && setTabs(getTabs(mediaUploader));\n }, [mediaUploader]);\n\n const handleClose = () => {\n onClose();\n setActiveTab(\"local\");\n editor.commands.focus();\n };\n\n const insertMediaToEditor = file => {\n if (!editor) return;\n const { url, filename = \"image\", caption = \"\" } = file;\n const mediaAttrs = { src: url, caption, alt: filename };\n const setMedia = mediaUploader.image\n ? editor.chain().setFigure(mediaAttrs)\n : editor.chain().setVideo(mediaAttrs);\n\n setMedia\n .focus()\n .command(({ tr, commands }) => {\n const { doc, selection } = tr;\n const position = doc.resolve(selection.to).end() + 1;\n const safePosition = Math.min(position, doc.content.size);\n\n return commands.insertContentAt(safePosition, \"<p></p>\");\n })\n .run();\n };\n\n const onUploadComplete = async file => {\n if (isNotPresent(file.id) && isNotPresent(file.signedId)) return;\n\n try {\n await directUploadsApi.attach({ id: file.id, signed_id: file.signedId });\n insertMediaToEditor(file);\n handleClose();\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n const onAttachVideo = url => {\n const file = { url, alt: \"image\" };\n insertMediaToEditor(file);\n };\n\n const onEmbedVideo = (originalUrl, embedUrl) => {\n if (!editor) return;\n editor\n .chain()\n .focus()\n .setExternalVideo({ src: embedUrl, originalUrl })\n .run();\n };\n\n return (\n <Modal\n {...{ isOpen }}\n className=\"ne-media-uploader-modal\"\n closeButton={not(isUploading)}\n closeOnOutsideClick={not(isUploading)}\n onClose={handleClose}\n >\n <div className=\"ne-media-uploader\">\n {(mediaUploader.video || mediaUploader.image) && (\n <div className=\"ne-media-uploader__header\">\n <h2 className=\"ne-media-uploader__header-title\">\n {mediaUploader.video && t(\"neetoEditor.menu.addVideo\")}\n {mediaUploader.image && t(\"neetoEditor.menu.addImage\")}\n </h2>\n </div>\n )}\n {!isNotPresent(tabs) && (\n <Tab>\n {tabs.map(({ key, title }) => (\n <Tab.Item\n active={activeTab === key}\n data-testid={`neeto-editor-media-uploader-${key}-tab`}\n key={key}\n onClick={() => setActiveTab(key)}\n >\n {title}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <div className=\"ne-media-uploader__content\">\n {mediaUploader.image && (\n <ImageUploader\n {...{ onUploadComplete, showAssetLibrary }}\n className=\"ne-media-uploader__image-uploader\"\n />\n )}\n {mediaUploader.video && (\n <>\n {activeTab === \"local\" && (\n <LocalUploader\n {...{ insertMediaToEditor, setIsUploading }}\n isImage={false}\n onClose={handleClose}\n />\n )}\n {activeTab === \"embed\" && (\n <VideoEmbedForm\n {...{ onAttachVideo, onEmbedVideo }}\n onClose={handleClose}\n />\n )}\n </>\n )}\n </div>\n </div>\n </Modal>\n );\n};\n\nexport default MediaUploader;\n","import { useState, useEffect, useRef } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Button, Checkbox, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { createPortal } from \"react-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { validateAndFormatUrl } from \"components/Editor/utils\";\nimport { ALL_PROTOCOL_URL_REGEXP } from \"src/common/constants\";\n\nimport { getLinkPopoverPosition, getCursorPos } from \"../utils\";\n\nconst LinkAddPopOver = ({\n isAddLinkActive,\n setIsAddLinkActive,\n editor,\n openLinkInNewTab,\n}) => {\n const { from, to } = editor.state.selection;\n const text = editor.state.doc.textBetween(from, to, \"\");\n\n const [linkText, setLinkText] = useState(text);\n const [linkUrl, setLinkUrl] = useState(\"\");\n const [openInNewTab, setOpenInNewTab] = useState(openLinkInNewTab);\n const [error, setError] = useState(\"\");\n const [popoverPosition, setPopoverPosition] = useState(\n getCursorPos(editor, to)\n );\n const [arrowPosition, setArrowPosition] = useState({ top: 0, left: 0 });\n\n const popoverRef = useRef(null);\n\n const { t } = useTranslation();\n\n const isLinkTextPresent = !isNotPresent(linkText);\n const isLinlUrlPresent = !isNotPresent(linkUrl);\n const isSubmitDisabled = !isLinkTextPresent || !isLinlUrlPresent;\n\n const popoverStyle = {\n display: \"block\",\n position: \"fixed\",\n top: popoverPosition.top,\n left: popoverPosition.left,\n transform: \"translateY(52px) translateX(8px)\",\n };\n\n const handleAddLink = () => {\n const { state, dispatch } = editor.view;\n const { from, to } = state.selection;\n const formattedUrl = validateAndFormatUrl(linkUrl);\n\n if (!ALL_PROTOCOL_URL_REGEXP.test(formattedUrl)) {\n setError(t(\"neetoEditor.error.invalidUrl\"));\n\n return;\n }\n\n const attrs = {\n href: formattedUrl,\n target: openInNewTab ? \"_blank\" : \"_self\",\n };\n\n const linkMark = state.schema.marks.link.create(attrs);\n const linkTextWithMark = state.schema.text(linkText, [linkMark]);\n\n const tr = state.tr.replaceWith(from, to, linkTextWithMark);\n dispatch(tr);\n removePopover();\n };\n\n const removePopover = () => {\n editor.view.focus();\n setIsAddLinkActive(false);\n };\n\n const handleKeyDown = e => {\n e.stopPropagation();\n if (e.key === \"Enter\") {\n e.preventDefault();\n handleAddLink();\n } else if (e.key === \"Escape\") {\n removePopover();\n }\n };\n\n const updatePopoverPosition = () => {\n const { arrowPosition, popoverPosition } = getLinkPopoverPosition(\n editor,\n popoverRef\n );\n setPopoverPosition(popoverPosition);\n setArrowPosition(arrowPosition);\n };\n\n useOnClickOutside(popoverRef, removePopover);\n\n useEffect(() => {\n if (editor && isAddLinkActive) {\n updatePopoverPosition();\n }\n window.addEventListener(\"resize\", removePopover);\n window.addEventListener(\"wheel\", removePopover);\n\n return () => {\n window.removeEventListener(\"resize\", removePopover);\n window.removeEventListener(\"wheel\", removePopover);\n };\n }, []);\n\n return isAddLinkActive\n ? createPortal(\n <>\n <div\n className=\"ne-link-arrow fade-in\"\n style={{ top: arrowPosition.top, left: arrowPosition.left }}\n />\n <div\n className=\"ne-link-popover fade-in\"\n id=\"ne-link-add-popover\"\n ref={popoverRef}\n style={popoverStyle}\n >\n <Input\n required\n autoFocus={!isLinkTextPresent}\n data-testid=\"neeto-editor-add-link-text-input\"\n label={t(\"neetoEditor.common.text\")}\n placeholder={t(\"neetoEditor.placeholders.enterText\")}\n size=\"small\"\n style={{ width: \"250px\" }}\n value={linkText}\n onChange={({ target: { value } }) => setLinkText(value)}\n onKeyDown={handleKeyDown}\n />\n <Input\n {...{ error }}\n required\n autoFocus={isLinkTextPresent}\n className=\"ne-link-popover__url-input\"\n data-testid=\"neeto-editor-add-link-url-input\"\n label={t(\"neetoEditor.common.url\")}\n placeholder={t(\"neetoEditor.placeholders.url\")}\n size=\"small\"\n style={{ width: \"250px\" }}\n value={linkUrl}\n onChange={({ target: { value } }) => setLinkUrl(value)}\n onFocus={() => setError(\"\")}\n onKeyDown={handleKeyDown}\n />\n <Checkbox\n checked={openInNewTab}\n className=\"ne-link-popover__checkbox\"\n data-testid=\"neeto-editor-add-link-open-in-new-tab-switch\"\n label={t(\"neetoEditor.common.openInNewTab\")}\n onChange={() => setOpenInNewTab(not)}\n />\n <div className=\"ne-link-popover__edit-prompt-buttons\">\n <Button\n data-testid=\"neeto-editor-add-link\"\n disabled={isSubmitDisabled}\n label={t(\"neetoEditor.common.done\")}\n size=\"small\"\n onClick={handleAddLink}\n />\n <Button\n data-testid=\"neeto-editor-link-popover-cancel\"\n label={t(\"neetoEditor.common.cancel\")}\n size=\"small\"\n style=\"text\"\n onClick={removePopover}\n />\n </div>\n </div>\n </>,\n document.body\n )\n : null;\n};\n\nexport default LinkAddPopOver;\n","import { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nimport { MENU_ELEMENTS, MENU_ELEMENT_TYPES } from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst MoreMenu = ({ groups, editor }) => (\n <Dropdown\n buttonProps={{ className: \"flex-shrink-0\" }}\n buttonStyle=\"text\"\n icon={MenuHorizontal}\n strategy=\"fixed\"\n >\n <Menu>\n {groups.map(group =>\n group.map(({ type, ...props }) => {\n const Component = MENU_ELEMENTS[type];\n\n if (type === MENU_ELEMENT_TYPES.BUTTON) {\n const { icon: Icon } = props;\n\n return (\n <MenuItem.Button\n data-testid={`neeto-editor-fixed-menu-${props.optionName}-option`}\n isActive={editor.isActive(props.optionName)}\n key={props.optionName}\n tabIndex=\"-1\"\n onClick={props.command}\n {...{\n ...generateFocusProps(props.highlight),\n ...props,\n editor,\n }}\n >\n <Icon /> {props.label}\n </MenuItem.Button>\n );\n }\n\n return (\n <Component\n key={props.optionName}\n {...{ ...props, editor, ...generateFocusProps(props.highlight) }}\n isSecondaryMenu\n />\n );\n })\n )}\n </Menu>\n </Dropdown>\n);\n\nexport default MoreMenu;\n","import { EDITOR_OPTIONS } from \"src/common/constants\";\n\nexport const EDITOR_MARKS = [\n EDITOR_OPTIONS.UNDO,\n EDITOR_OPTIONS.REDO,\n \"fontSizeOptions\",\n EDITOR_OPTIONS.BOLD,\n EDITOR_OPTIONS.ITALIC,\n EDITOR_OPTIONS.UNDERLINE,\n EDITOR_OPTIONS.LINK,\n EDITOR_OPTIONS.STRIKETHROUGH,\n EDITOR_OPTIONS.HIGHLIGHT,\n EDITOR_OPTIONS.CALLOUT,\n \"bulletList\",\n \"orderedList\",\n \"todoList\",\n \"blockquote\",\n EDITOR_OPTIONS.CODE,\n \"codeBlock\",\n EDITOR_OPTIONS.TABLE,\n EDITOR_OPTIONS.ATTACHMENTS,\n EDITOR_OPTIONS.IMAGE_UPLOAD,\n EDITOR_OPTIONS.VIDEO_UPLOAD,\n EDITOR_OPTIONS.TEXT_COLOR,\n EDITOR_OPTIONS.EMOJI,\n EDITOR_OPTIONS.NEETO_KB_ARTICLE,\n \"mentions\",\n];\n","import { useCallback, useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { last } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\nimport useEditorStore from \"src/stores/useEditorStore\";\n\nimport { EDITOR_MARKS } from \"./constants\";\n\nimport { FONT_SIZE_OPTIONS } from \"../../constants\";\n\nconst useEditorState = ({ editor, neetoKbArticleState }) => {\n const { setMarksState, marksState } = useEditorStore.pick();\n\n const handleSelectionUpdate = useCallback(\n ({ editor }) => {\n const activeMarks = {};\n\n EDITOR_MARKS.forEach(mark => {\n if (mark === EDITOR_OPTIONS.NEETO_KB_ARTICLE) {\n activeMarks[mark] = {\n isActive: neetoKbArticleState?.active || false,\n };\n } else {\n activeMarks[mark] = { isActive: editor.isActive(mark) };\n }\n });\n\n const activeFontSizeOption =\n FONT_SIZE_OPTIONS.find(({ value: level }) =>\n editor.isActive(\"heading\", { level })\n ) || last(FONT_SIZE_OPTIONS);\n\n activeMarks[\"fontSizeOption\"] = activeFontSizeOption;\n\n setMarksState(activeMarks);\n },\n [setMarksState, neetoKbArticleState?.active]\n );\n\n const updateHistoryOptionsState = useCallback(\n ({ editor }) => {\n const undoOptionState = { disabled: !editor.can().undo() };\n const redoOptionState = { disabled: !editor.can().redo() };\n\n const updatedMarksState = {\n ...marksState,\n [EDITOR_OPTIONS.UNDO]: undoOptionState,\n [EDITOR_OPTIONS.REDO]: redoOptionState,\n };\n setMarksState(updatedMarksState);\n },\n [marksState, setMarksState]\n );\n\n useEffect(() => {\n if (!editor) return noop;\n\n updateHistoryOptionsState({ editor });\n\n editor.on(\"selectionUpdate\", handleSelectionUpdate);\n editor.on(\"update\", handleSelectionUpdate);\n editor.on(\"transaction\", handleSelectionUpdate);\n\n return () => {\n editor.off(\"selectionUpdate\", handleSelectionUpdate);\n editor.off(\"update\", handleSelectionUpdate);\n editor.off(\"transaction\", handleSelectionUpdate);\n };\n }, [editor, handleSelectionUpdate]);\n\n // Update editor state when neetoKbArticleState changes\n useEffect(() => {\n if (!editor) return;\n\n handleSelectionUpdate({ editor });\n }, [editor, neetoKbArticleState?.active, handleSelectionUpdate]);\n};\n\nexport default useEditorState;\n","import classnames from \"classnames\";\nimport DynamicVariables from \"neetomolecules/DynamicVariables\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst MenuDynamicVariables = ({\n editor,\n variables = [],\n standalone = false,\n}) => {\n const { t } = useTranslation();\n\n if (isEmpty(variables)) return null;\n\n const handleVariableClick = item => {\n const { category, categoryLabel, key, label } = item;\n const variableName = category ? `${category}.${key}` : key;\n const variableLabel = category\n ? `${categoryLabel || category}:${label}`\n : label;\n\n editor\n .chain()\n .focus()\n .setVariable({ id: variableName, label: variableLabel })\n .run();\n };\n\n return (\n <div\n data-testid=\"neeto-editor-fixed-menu-variables\"\n className={classnames(\"neeto-editor-fixed-menu__variables\", {\n \"neeto-editor-fixed-menu__variables--standalone\": standalone,\n })}\n >\n <DynamicVariables\n {...{ variables }}\n dropdownProps={{\n buttonSize: \"small\",\n buttonProps: {\n tooltipProps: {\n content: t(\"neetoEditor.menu.dynamicVariables\"),\n position: \"bottom\",\n },\n },\n }}\n onVariableClick={handleVariableClick}\n />\n </div>\n );\n};\n\nexport default MenuDynamicVariables;\n","import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\nimport MediaUploader from \"components/Editor/MediaUploader\";\n\nimport LinkAddPopOver from \"./components/LinkAddPopOver\";\nimport MoreMenu from \"./components/MoreMenu\";\nimport { MENU_ELEMENTS } from \"./constants\";\nimport useEditorState from \"./hooks/useEditorState\";\nimport { reGroupMenuItems, buildMenuOptions } from \"./utils\";\n\nimport MenuDynamicVariables from \"../DynamicVariables\";\n\nconst Fixed = ({\n editor,\n options,\n mentions,\n variables = [],\n setMediaUploader,\n mediaUploader,\n addonCommands = [],\n isIndependant = true,\n className,\n tooltips = {},\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n openLinkInNewTab,\n setIsNeetoKbArticleActive,\n neetoKbArticleState,\n showAssetLibrary = true,\n}) => {\n const [focusedButtonIndex, setFocusedButtonIndex] = useState(0);\n const [isAddLinkActive, setIsAddLinkActive] = useState(false);\n const [menuItems, setMenuItems] = useState([]);\n const [moreMenuItems, setMoreMenuItems] = useState([]);\n\n useEditorState({ editor, neetoKbArticleState });\n\n const editorRef = useRef(editor);\n\n useEffect(() => {\n editorRef.current = editor;\n }, [editor]);\n\n const menuRef = useRef(null);\n const menuContainerRef = useRef(null);\n\n const runEditorCommand = useCallback(\n command => () => command(editorRef.current),\n []\n );\n\n const handleArrowNavigation = event => {\n if (event.key === \"ArrowRight\") {\n event.preventDefault();\n setFocusedButtonIndex(prevIndex => (prevIndex + 1) % menuButtons.length);\n } else if (event.key === \"ArrowLeft\") {\n event.preventDefault();\n setFocusedButtonIndex(\n prevIndex => (prevIndex - 1 + menuButtons.length) % menuButtons.length\n );\n }\n };\n\n const menuButtons = useMemo(\n () => menuRef.current?.querySelectorAll(\".neeto-editor-fixed-menu__item\"),\n [menuRef.current]\n );\n\n useEffect(() => {\n menuButtons?.[focusedButtonIndex].focus();\n }, [focusedButtonIndex]);\n\n useEffect(() => {\n menuButtons?.forEach(menuItem =>\n menuItem.addEventListener(\"keydown\", handleArrowNavigation)\n );\n\n return () =>\n menuButtons?.forEach(menuItem =>\n menuItem.removeEventListener(\"keydown\", handleArrowNavigation)\n );\n }, [menuButtons]);\n\n const menuGroups = useMemo(\n () =>\n buildMenuOptions({\n tooltips,\n runEditorCommand,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n mentions,\n addonCommands,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n editor,\n setIsNeetoKbArticleActive,\n }),\n [isEmojiPickerActive, mentions]\n );\n\n const handleResize = useCallback(() => {\n if (!menuRef.current) return;\n const { visibleMenuGroups, invisibleMenuGroups } = reGroupMenuItems(\n menuRef,\n menuGroups\n );\n setMenuItems(visibleMenuGroups);\n setMoreMenuItems(invisibleMenuGroups);\n }, [setMenuItems, menuGroups, menuRef.current]);\n\n useEffect(() => {\n handleResize();\n\n const menuContainer = menuContainerRef.current;\n const resizeObserver = new ResizeObserver(handleResize);\n if (menuContainer) {\n resizeObserver.observe(menuContainer);\n }\n\n return () => {\n if (menuContainer) resizeObserver.unobserve(menuContainer);\n };\n }, [menuContainerRef.current, handleResize, menuGroups]);\n\n if (!editor) return null;\n\n const isMediaUploaderActive =\n options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD) ||\n options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD);\n\n return (\n <div\n ref={menuContainerRef}\n className={classNames(\"neeto-editor-fixed-menu\", {\n \"neeto-editor-fixed-menu--independant\": isIndependant,\n [className]: className,\n })}\n >\n <div\n className=\"neeto-editor-fixed-menu__wrapper\"\n data-testid=\"neeto-editor-fixed-menu-wrapper\"\n ref={menuRef}\n >\n {menuItems.map(group =>\n group.map(({ type, ...props }) => {\n const Component = MENU_ELEMENTS[type];\n\n if (!Component) return null;\n\n return (\n <Component\n key={props.optionName}\n {...{ ...props, editor, options }}\n />\n );\n })\n )}\n {isNotEmpty(moreMenuItems) && (\n <MoreMenu {...{ editor }} groups={moreMenuItems} />\n )}\n </div>\n <MenuDynamicVariables {...{ editor, variables }} />\n {isAddLinkActive && (\n <LinkAddPopOver\n {...{\n editor,\n isAddLinkActive,\n openLinkInNewTab,\n setIsAddLinkActive,\n }}\n />\n )}\n {isMediaUploaderActive && (\n <MediaUploader\n {...{ editor, mediaUploader, showAssetLibrary }}\n onClose={() => setMediaUploader({ image: false, video: false })}\n />\n )}\n </div>\n );\n};\n\nexport default Fixed;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\n\nconst Button = ({\n icon = null,\n onClick = noop,\n disabled = false,\n className,\n tooltipProps,\n ...otherProps\n}) => {\n const Icon = icon;\n\n return (\n <Tooltip\n disabled={!tooltipProps}\n onClick={() => onClick()}\n {...tooltipProps}\n >\n <button\n className={classnames(\"ne-headless-btn\", { [className]: className })}\n type=\"button\"\n {...{ disabled, onClick, ...otherProps }}\n >\n {icon && <Icon aria-hidden=\"true\" key=\"2\" size={18} />}\n </button>\n </Tooltip>\n );\n};\n\nexport default Button;\n","import { useState } from \"react\";\n\nimport Tippy from \"@tippyjs/react\";\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\n\nimport Button from \"./Button\";\n\nconst hideOnEsc = {\n name: \"hideOnEsc\",\n defaultValue: true,\n fn({ hide, props: { hideOnEsc, onClose } }) {\n function onKeyDown(event) {\n if (!(event.key.toLowerCase() === \"escape\" && hideOnEsc)) return;\n onClose();\n hide();\n }\n\n return {\n onShow() {\n document.addEventListener(\"keydown\", onKeyDown);\n },\n onHide() {\n document.removeEventListener(\"keydown\", onKeyDown);\n },\n };\n },\n};\n\nconst Dropdown = ({\n icon,\n isOpen,\n onClose = noop,\n children,\n className,\n onClick,\n buttonProps = {},\n ...otherProps\n}) => {\n const [mounted, setMounted] = useState(false);\n\n return (\n <Tippy\n {...{ onClose }}\n hideOnEsc\n interactive\n animation={false}\n arrow={false}\n duration={0}\n hideOnClick={false}\n maxWidth=\"none\"\n offset={0}\n plugins={[hideOnEsc]}\n popperOptions={{ strategy: \"fixed\" }}\n role=\"dropdown\"\n theme=\"light\"\n trigger=\"click\"\n visible={isOpen}\n className={classnames(\"ne-headless-dropdown\", {\n [className]: className,\n })}\n content={\n mounted && <div className=\"ne-headless-dropdown__popup\">{children}</div>\n }\n onClickOutside={onClose}\n onHidden={() => setMounted(false)}\n onMount={() => setMounted(true)}\n {...otherProps}\n >\n <span>\n <Button {...{ icon, onClick, ...buttonProps }} />\n </span>\n </Tippy>\n );\n};\n\nexport default Dropdown;\n","import { Smiley } from \"neetoicons\";\n\nimport EmojiPicker from \"components/Editor/CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu\";\n\nimport Dropdown from \"./UI/Dropdown\";\n\nconst Emoji = ({ editor, isActive, setActive, tooltipContent }) => (\n <Dropdown\n className=\"ne-headless__emoji\"\n icon={Smiley}\n isOpen={isActive}\n buttonProps={{\n tooltipProps: {\n content: tooltipContent,\n delay: [500],\n position: \"bottom\",\n },\n \"data-testid\": \"ne-emoji-picker\",\n }}\n onClick={() => setActive(active => !active)}\n onClose={() => setActive(false)}\n >\n <EmojiPicker {...{ editor, setActive }} />\n </Dropdown>\n);\nexport default Emoji;\n","import classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport Emoji from \"./Emoji\";\nimport Button from \"./UI/Button\";\n\nconst Option = ({\n editor,\n optionName,\n command,\n disabled,\n Icon,\n isActive,\n setActive,\n tooltip,\n}) => {\n if (optionName === EDITOR_OPTIONS.EMOJI) {\n return (\n <Emoji\n {...{ editor, isActive, setActive }}\n tooltipContent={tooltip || \"Emoji\"}\n />\n );\n }\n\n return (\n <Button\n {...{ disabled }}\n className={classnames({ \"ne-headless-btn--active\": isActive })}\n data-testid={hyphenate(optionName)}\n icon={Icon}\n tooltipProps={{\n content: tooltip,\n delay: [500],\n position: \"bottom\",\n }}\n onClick={command}\n />\n );\n};\n\nexport default Option;\n","import i18n from \"i18next\";\nimport { findBy, noop } from \"neetocist\";\nimport {\n TextBold,\n TextItalic,\n Underline,\n TextCross,\n Highlight,\n Quote,\n Code,\n ListDot,\n ListNumber,\n ImageUpload,\n Undo,\n Redo,\n Smiley,\n File,\n Video,\n Column,\n CodeBlock,\n} from \"neetoicons\";\nimport { assoc } from \"ramda\";\n\nconst { t } = i18n;\n\nconst createMenuOptions = ({\n editor,\n tooltips,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => [\n {\n Icon: TextBold,\n command: () => editor.chain().focus().toggleBold().run(),\n active: editor.isActive(\"bold\"),\n optionName: \"bold\",\n tooltip: tooltips.bold || t(\"neetoEditor.menu.bold\"),\n },\n {\n Icon: TextItalic,\n command: () => editor.chain().focus().toggleItalic().run(),\n active: editor.isActive(\"italic\"),\n optionName: \"italic\",\n tooltip: tooltips.italic || t(\"neetoEditor.menu.italic\"),\n },\n {\n Icon: Underline,\n command: () => editor.chain().focus().toggleUnderline().run(),\n active: editor.isActive(\"underline\"),\n optionName: \"underline\",\n tooltip: tooltips.underline || t(\"neetoEditor.menu.underline\"),\n },\n {\n Icon: TextCross,\n command: () => editor.chain().focus().toggleStrike().run(),\n active: editor.isActive(\"strike\"),\n optionName: \"strike\",\n tooltip: tooltips.strike || t(\"neetoEditor.menu.strike\"),\n },\n {\n Icon: Highlight,\n command: () => editor.chain().focus().toggleHighlight().run(),\n active: editor.isActive(\"highlight\"),\n optionName: \"highlight\",\n tooltip: tooltips.highlight || t(\"neetoEditor.menu.highlight\"),\n },\n {\n Icon: Quote,\n command: () => editor.chain().focus().toggleBlockquote().run(),\n active: editor.isActive(\"blockquote\"),\n optionName: \"block-quote\",\n tooltip: tooltips.blockQuote || t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n Icon: Code,\n command: () => editor.chain().focus().toggleCode().run(),\n active: editor.isActive(\"code\"),\n optionName: \"code\",\n tooltip: tooltips.code || t(\"neetoEditor.menu.code\"),\n },\n {\n Icon: CodeBlock,\n command: () => editor.chain().focus().toggleCodeBlock().run(),\n active: editor.isActive(\"codeBlock\"),\n optionName: \"code-block\",\n tooltip: tooltips.codeBlock || t(\"neetoEditor.menu.codeBlock\"),\n },\n {\n Icon: ListDot,\n command: () => editor.chain().focus().toggleBulletList().run(),\n active: editor.isActive(\"bulletList\"),\n optionName: \"bullet-list\",\n tooltip: tooltips.bulletList || t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n Icon: ListNumber,\n command: () => editor.chain().focus().toggleOrderedList().run(),\n active: editor.isActive(\"orderedList\"),\n optionName: \"ordered-list\",\n tooltip: tooltips.orderedList || t(\"neetoEditor.menu.orderedList\"),\n },\n {\n Icon: File,\n command: attachmentProps?.handleUploadAttachments,\n disabled: attachmentProps?.isDisabled,\n optionName: \"attachments\",\n tooltip: tooltips.attachments || t(\"neetoEditor.menu.attachments\"),\n },\n {\n Icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n optionName: \"image-upload\",\n tooltip: tooltips.imageUpload || t(\"neetoEditor.menu.imageUpload\"),\n },\n {\n Icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n optionName: \"video-upload\",\n tooltip: tooltips.videoUpload || t(\"neetoEditor.menu.videoUpload\"),\n },\n {\n Icon: Smiley,\n command: noop,\n optionName: \"emoji\",\n tooltip: tooltips.emoji || t(\"neetoEditor.menu.emoji\"),\n isActive: isEmojiPickerActive,\n setActive: setIsEmojiPickerActive,\n },\n {\n Icon: Column,\n command: () =>\n editor\n .chain()\n .focus()\n .insertTable({ rows: 3, cols: 3, withHeaderRow: true })\n .run(),\n optionName: \"table\",\n tooltip: tooltips.table || t(\"neetoEditor.menu.table\"),\n },\n {\n Icon: Undo,\n command: () => editor.chain().focus().undo().run(),\n disabled: !editor.can().undo(),\n optionName: \"undo\",\n tooltip: tooltips.undo || t(\"neetoEditor.menu.undo\"),\n },\n {\n Icon: Redo,\n command: () => editor.chain().focus().redo().run(),\n disabled: !editor.can().redo(),\n optionName: \"redo\",\n tooltip: tooltips.redo || t(\"neetoEditor.menu.redo\"),\n },\n];\n\nexport const buildOptionsFromAddonCommands = ({ editor, commands }) => {\n const { to } = editor.state.selection;\n\n return commands.map(option => ({\n ...option,\n active: option.active?.({ editor }),\n command: () => option.command?.({ editor, range: { from: to, to } }),\n }));\n};\n\nexport const buildMenuOptions = ({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const menuOptions = createMenuOptions({\n editor,\n tooltips,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n });\n\n return options\n .map(option => findBy({ optionName: option }, menuOptions))\n .filter(Boolean);\n};\n","import classnames from \"classnames\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\nimport MediaUploader from \"components/Editor/MediaUploader\";\n\nimport Option from \"./Option\";\nimport { buildOptionsFromAddonCommands, buildMenuOptions } from \"./utils\";\n\nconst Headless = ({\n editor,\n options,\n tooltips = {},\n setMediaUploader,\n mediaUploader,\n addonCommands = [],\n className,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n showAssetLibrary = true,\n}) => {\n if (!editor) {\n return null;\n }\n\n const isMediaUploaderActive =\n options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD) ||\n options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD);\n\n const menuOptions = buildMenuOptions({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n });\n\n const addonCommandOptions = buildOptionsFromAddonCommands({\n editor,\n commands: addonCommands,\n });\n const allOptions = [...menuOptions, ...addonCommandOptions];\n\n return (\n <div className={classnames(\"ne-headless\", { [className]: className })}>\n {allOptions.map(option => (\n <Option {...{ editor }} key={option.optionName} {...option} />\n ))}\n {isMediaUploaderActive && (\n <MediaUploader\n {...{ editor, mediaUploader, showAssetLibrary }}\n onClose={() => setMediaUploader({ image: false, video: false })}\n />\n )}\n </div>\n );\n};\n\nexport default Headless;\n","import { t } from \"i18next\";\nimport { TextH1, TextH2, TextH3, TextH4, TextH5, TextP } from \"neetoicons\";\n\nimport BubbleMenu from \"./Bubble\";\nimport EmptyMenu from \"./EmptyMenu\";\nimport FixedMenu from \"./Fixed\";\nimport HeadlessMenu from \"./Headless\";\n\nexport const FONT_SIZE_OPTIONS = [\n { label: t(\"neetoEditor.menu.heading1\"), value: 1, key: \"h1\", icon: TextH1 },\n { label: t(\"neetoEditor.menu.heading2\"), value: 2, key: \"h2\", icon: TextH2 },\n { label: t(\"neetoEditor.menu.heading3\"), value: 3, key: \"h3\", icon: TextH3 },\n { label: t(\"neetoEditor.menu.heading4\"), value: 4, key: \"h4\", icon: TextH4 },\n { label: t(\"neetoEditor.menu.heading5\"), value: 5, key: \"h5\", icon: TextH5 },\n {\n label: t(\"neetoEditor.menu.normalText\"),\n value: 0,\n key: \"body2\",\n icon: TextP,\n },\n];\n\nexport const MENU_COMPONENTS = {\n fixed: FixedMenu,\n bubble: BubbleMenu,\n headless: HeadlessMenu,\n none: EmptyMenu,\n};\n","import { memo, useRef } from \"react\";\n\nimport { filterBy } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { last } from \"ramda\";\n\nimport useEditorStore from \"src/stores/useEditorStore\";\n\nimport { FONT_SIZE_OPTIONS } from \"../../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst FontSizeOption = ({\n runEditorCommand,\n tooltipContent,\n label,\n options = [],\n}) => {\n const dropdownRef = useRef(null);\n\n const lastOption = last(FONT_SIZE_OPTIONS);\n const { fontSizeOption: activeOption = lastOption } =\n useEditorStore.pick(\"marksState\");\n\n const handleClick = level =>\n level\n ? runEditorCommand(editor =>\n editor.chain().focus().toggleHeading({ level }).run()\n )()\n : runEditorCommand(editor =>\n editor.chain().focus().setNode(\"paragraph\").run()\n )();\n\n const menuOptions = [\n ...filterBy({ key: key => options.includes(key) }, FONT_SIZE_OPTIONS),\n FONT_SIZE_OPTIONS[FONT_SIZE_OPTIONS.length - 1],\n ];\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: activeOption?.icon,\n iconPosition: \"left\",\n iconSize: 22,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-font-size-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: \"text\",\n size: \"small\",\n className:\n \"neeto-editor-fixed-menu__item neeto-editor-font-size__wrapper\",\n }}\n >\n <Menu className=\"neeto-ui-flex neeto-ui-gap-1 neeto-editor-menu-font-size-options\">\n {menuOptions.map(({ label, icon: Icon, value, key }) => (\n <MenuItem.Button\n className=\"neeto-editor-menu-font-size-options__item-btn\"\n data-testid={`neeto-editor-fixed-menu-font-size-option-${key}`}\n key={value}\n tooltipProps={{ content: label, position: \"bottom\" }}\n onClick={() => handleClick(value)}\n >\n <Icon size={22} />\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(FontSizeOption);\n","import classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils\";\n\nconst ColorDot = ({ colorVar, isSelected, onClick, isTextColor }) => {\n const dotClass = classNames(\"neeto-editor-highlight-dropdown__color-dot\", {\n \"neeto-editor-highlight-dropdown__color-dot--selected\": isSelected,\n });\n\n const dotStyle = { backgroundColor: `var(${colorVar})` };\n\n const colorNumber = colorVar.match(/\\d+$/)?.[0] || colorVar;\n\n return (\n <div\n {...{ onClick }}\n className={dotClass}\n style={dotStyle}\n data-testid={`neeto-editor-highlight-${hyphenize(\n isTextColor ? \"text\" : \"background\"\n )}-color-dot-${colorNumber}`}\n />\n );\n};\n\nexport default ColorDot;\n","export const COLORS = {\n recent: [\"--neeto-editor-highlight-bg-yellow-light\"],\n text: [\n \"--neeto-editor-highlight-text-1\",\n \"--neeto-editor-highlight-text-2\",\n \"--neeto-editor-highlight-text-3\",\n \"--neeto-editor-highlight-text-4\",\n \"--neeto-editor-highlight-text-5\",\n \"--neeto-editor-highlight-text-6\",\n \"--neeto-editor-highlight-text-7\",\n \"--neeto-editor-highlight-text-8\",\n \"--neeto-editor-highlight-text-9\",\n \"--neeto-editor-highlight-text-10\",\n \"--neeto-editor-highlight-text-11\",\n \"--neeto-editor-highlight-text-12\",\n \"--neeto-editor-highlight-text-13\",\n \"--neeto-editor-highlight-text-14\",\n \"--neeto-editor-highlight-text-15\",\n \"--neeto-editor-highlight-text-16\",\n ],\n background: [\n \"--neeto-editor-highlight-bg-1\",\n \"--neeto-editor-highlight-bg-2\",\n \"--neeto-editor-highlight-bg-3\",\n \"--neeto-editor-highlight-bg-4\",\n \"--neeto-editor-highlight-bg-5\",\n \"--neeto-editor-highlight-bg-6\",\n \"--neeto-editor-highlight-bg-7\",\n \"--neeto-editor-highlight-bg-8\",\n \"--neeto-editor-highlight-bg-9\",\n \"--neeto-editor-highlight-bg-10\",\n \"--neeto-editor-highlight-bg-11\",\n \"--neeto-editor-highlight-bg-12\",\n \"--neeto-editor-highlight-bg-13\",\n \"--neeto-editor-highlight-bg-14\",\n \"--neeto-editor-highlight-bg-15\",\n \"--neeto-editor-highlight-bg-16\",\n ],\n};\n","import React, { useRef } from \"react\";\n\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Down, Highlight } from \"neetoicons\";\nimport { Typography, Dropdown } from \"neetoui\";\n\nimport ColorDot from \"./ColorDot\";\nimport { COLORS } from \"./constants\";\n\nconst colorSections = [\n { title: \"Text color\", colors: COLORS.text, isTextColor: true },\n { title: \"Background color\", colors: COLORS.background, isTextColor: false },\n];\n\nconst HighlightDropdown = ({\n editor,\n label,\n tooltipContent,\n runEditorCommand,\n}) => {\n const dropdownRef = useRef(null);\n const textColor = editor.getAttributes(\"textStyle\").color;\n const backgroundColor = editor.getAttributes(\"textStyle\").backgroundColor;\n\n const updateBackgroundColor = value => {\n runEditorCommand(editor =>\n editor\n .chain()\n .focus()\n .setMark(\"textStyle\", { backgroundColor: value })\n .run()\n )();\n };\n\n const handleBackgroundColorClick = (colorVar, event) => {\n event.stopPropagation();\n if (backgroundColor === `var(${colorVar})`) {\n updateBackgroundColor(null);\n } else {\n updateBackgroundColor(`var(${colorVar})`);\n }\n };\n\n const handleTextColorClick = (colorVar, event) => {\n event.stopPropagation();\n if (textColor === `var(${colorVar})`) {\n editor.chain().focus().unsetColor().run();\n } else {\n editor.chain().focus().setColor(`var(${colorVar})`).run();\n }\n };\n\n const renderColorDots = (colorList, isTextColor = false) =>\n colorList.map((colorVar, idx) => (\n <ColorDot\n {...{ colorVar, isTextColor }}\n key={idx}\n isSelected={\n isTextColor\n ? textColor === `var(${colorVar})`\n : backgroundColor === `var(${colorVar})`\n }\n onClick={event =>\n isTextColor\n ? handleTextColorClick(colorVar, event)\n : handleBackgroundColorClick(colorVar, event)\n }\n />\n ));\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: () => <Highlight size={18} />,\n iconPosition: \"left\",\n iconSize: 16,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-highlight-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: \"text\",\n size: \"small\",\n className: \"neeto-editor-fixed-menu__item\",\n }}\n >\n <Dropdown.Menu className=\"neeto-editor-highlight-dropdown\">\n {colorSections.map(({ title, colors, isTextColor }) => (\n <div className=\"neeto-editor-highlight-dropdown__section\" key={title}>\n <Typography\n className=\"neeto-editor-highlight-dropdown__section-title\"\n style=\"body2\"\n weight=\"medium\"\n >\n {title}\n </Typography>\n <div\n className=\"neeto-editor-highlight-dropdown__color-grid\"\n data-testid={`neeto-editor-highlight-${hyphenize(title)}-grid`}\n >\n {renderColorDots(colors, isTextColor)}\n </div>\n </div>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default HighlightDropdown;\n","import { memo, useState } from \"react\";\n\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Column } from \"neetoicons\";\nimport { Button, Dropdown, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nconst { Menu } = Dropdown;\n\nconst TableOption = ({\n editor,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useState(false);\n const [rows, setRows] = useState(3);\n const [columns, setColumns] = useState(3);\n\n const handleClose = () => {\n setRows(3);\n setColumns(3);\n setIsOpen(false);\n };\n\n const handleSubmit = () => {\n editor\n .chain()\n .focus()\n .insertTable({ rows, cols: columns, withHeaderRow: true })\n .run();\n handleClose();\n };\n\n const handleDropdownClick = e => {\n isSecondaryMenu && e.stopPropagation();\n setIsOpen(not);\n };\n\n return (\n <Dropdown\n {...{ isOpen }}\n buttonStyle={isOpen ? \"secondary\" : \"text\"}\n closeOnSelect={false}\n data-testid=\"neeto-editor-fixed-menu-link-option\"\n icon={Column}\n position={isSecondaryMenu ? \"left-start\" : \"bottom\"}\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n \"data-testid\": \"neeto-editor-fixed-menu-table-option\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Column} />\n }\n onClick={handleDropdownClick}\n onClose={handleClose}\n >\n <Menu className=\"neeto-editor-table__item\">\n <Input\n autoFocus\n data-testid=\"neeto-editor-fixed-menu-table-rows-input\"\n label={t(\"neetoEditor.menu.rows\")}\n min=\"1\"\n placeholder={t(\"neetoEditor.placeholders.rows\")}\n size=\"small\"\n type=\"number\"\n value={rows}\n onChange={withEventTargetValue(setRows)}\n />\n <Input\n data-testid=\"neeto-editor-fixed-menu-table-columns-input\"\n label={t(\"neetoEditor.menu.columns\")}\n min=\"1\"\n placeholder={t(\"neetoEditor.placeholders.rows\")}\n size=\"small\"\n type=\"number\"\n value={columns}\n onChange={withEventTargetValue(setColumns)}\n />\n <div className=\"neeto-editor-table-menu__button\">\n <Button\n className=\"mt-auto\"\n data-testid=\"neeto-editor-fixed-menu-table-option-create-button\"\n label={t(\"neetoEditor.common.create\")}\n size=\"small\"\n onClick={handleSubmit}\n />\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(TableOption);\n","import { EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport MenuButton from \"./components/Button\";\nimport CalloutDropdown from \"./components/CalloutDropdown\";\nimport EmojiOption from \"./components/EmojiOption\";\nimport FontSizeOption from \"./components/FontSizeOption\";\nimport HighlightDropdown from \"./components/HighlightDropdown/index.jsx\";\nimport TableOption from \"./components/TableOption\";\nimport TextColorOption from \"./components/TextColorOption\";\n\nimport Mentions from \"../../CustomExtensions/Mention\";\n\nexport const MENU_ELEMENT_TYPES = {\n BUTTON: \"button\",\n CALLOUT: \"callout\",\n FONT_SIZE: \"fontSize\",\n TABLE: \"table\",\n TEXT_COLOR: \"textColor\",\n EMOJI: \"emoji\",\n MENTIONS: \"mentions\",\n HIGHLIGHT: \"highlight\",\n};\n\nexport const MENU_TYPES = {\n HISTORY: \"history\",\n FONT: \"font\",\n LIST: \"list\",\n BLOCK: \"block\",\n MISC: \"misc\",\n EXTRAS: \"extras\",\n CUSTOM: \"custom\",\n};\n\nexport const SHORTCUTS = {\n [EDITOR_OPTIONS.BOLD]: { mac: \"⌘B\", win: \"Ctrl+B\" },\n [EDITOR_OPTIONS.ITALIC]: { mac: \"⌘I\", win: \"Ctrl+I\" },\n [EDITOR_OPTIONS.UNDERLINE]: { mac: \"⌘U\", win: \"Ctrl+U\" },\n [EDITOR_OPTIONS.STRIKETHROUGH]: {\n mac: \"⌘⇧S or ⌘⇧X\",\n win: \"Ctrl+Shift+S or Ctrl+Shift+X\",\n },\n [EDITOR_OPTIONS.CODE]: { mac: \"⌘E\", win: \"Ctrl+E\" },\n [EDITOR_OPTIONS.UNDO]: { mac: \"⌘Z\", win: \"Ctrl+Z\" },\n [EDITOR_OPTIONS.REDO]: { mac: \"⌘⇧Z\", win: \"Ctrl+Shift+Z\" },\n [EDITOR_OPTIONS.LINK]: { mac: \"⌘K\", win: \"Ctrl+K\" },\n [EDITOR_OPTIONS.HIGHLIGHT]: { mac: \"⌘⇧H\", win: \"Ctrl+Shift+H\" },\n bulletList: { mac: \"⌘⇧8\", win: \"Ctrl+Shift+8\" },\n orderedList: { mac: \"⌘⇧7\", win: \"Ctrl+Shift+7\" },\n todoList: { mac: \"⌘⇧9\", win: \"Ctrl+Shift+9\" },\n};\n\nexport const MENU_ELEMENTS = {\n [MENU_ELEMENT_TYPES.BUTTON]: MenuButton,\n [MENU_ELEMENT_TYPES.CALLOUT]: CalloutDropdown,\n [MENU_ELEMENT_TYPES.FONT_SIZE]: FontSizeOption,\n [MENU_ELEMENT_TYPES.TABLE]: TableOption,\n [MENU_ELEMENT_TYPES.TEXT_COLOR]: TextColorOption,\n [MENU_ELEMENT_TYPES.EMOJI]: EmojiOption,\n [MENU_ELEMENT_TYPES.MENTIONS]: Mentions,\n [MENU_ELEMENT_TYPES.HIGHLIGHT]: HighlightDropdown,\n};\n\nexport const MENU_ELEMENT_WIDTHS = {\n [MENU_ELEMENT_TYPES.BUTTON]: 36,\n [MENU_ELEMENT_TYPES.CALLOUT]: 23,\n [MENU_ELEMENT_TYPES.FONT_SIZE]: 103,\n [MENU_ELEMENT_TYPES.TABLE]: 36,\n [MENU_ELEMENT_TYPES.TEXT_COLOR]: 36,\n [MENU_ELEMENT_TYPES.EMOJI]: 36,\n [MENU_ELEMENT_TYPES.MENTIONS]: 36,\n [MENU_ELEMENT_TYPES.HIGHLIGHT]: 103,\n};\n","import { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport {\n TextBold,\n TextItalic,\n Underline,\n TextCross,\n Highlight,\n Code,\n ListDot,\n ListNumber,\n Checkbox,\n ImageUpload,\n Quote,\n Undo,\n Redo,\n Video,\n CodeBlock,\n Attachment,\n Link,\n File,\n} from \"neetoicons\";\nimport { prop, not, assoc } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport {\n MENU_ELEMENT_WIDTHS,\n MENU_ELEMENT_TYPES,\n SHORTCUTS,\n} from \"./constants.js\";\n\nconst createMenuOptions = ({\n tooltips,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n options,\n mentions,\n addonCommandOptions,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n}) => {\n const fontSizeOptions = options.filter(option => option.match(/^h[1-6]$/));\n\n return [\n // font\n [\n {\n type: MENU_ELEMENT_TYPES.FONT_SIZE,\n options: fontSizeOptions,\n label: tooltips.fontSize ?? t(\"neetoEditor.menu.fontSize\"),\n isEnabled: isNotEmpty(fontSizeOptions),\n optionName: \"fontSizeOptions\",\n runEditorCommand,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextBold,\n isEnabled: options.includes(EDITOR_OPTIONS.BOLD),\n command: runEditorCommand(editor =>\n editor?.chain().focus().toggleBold().run()\n ),\n optionName: EDITOR_OPTIONS.BOLD,\n label: tooltips.bold ?? t(\"neetoEditor.menu.bold\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextItalic,\n isEnabled: options.includes(EDITOR_OPTIONS.ITALIC),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleItalic().run()\n ),\n optionName: EDITOR_OPTIONS.ITALIC,\n label: tooltips.italic ?? t(\"neetoEditor.menu.italic\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Link,\n isEnabled: options.includes(EDITOR_OPTIONS.LINK),\n command: () => setIsAddLinkActive(not),\n optionName: EDITOR_OPTIONS.LINK,\n label: tooltips.link ?? t(\"neetoEditor.menu.link\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextCross,\n isEnabled: options.includes(EDITOR_OPTIONS.STRIKETHROUGH),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleStrike().run()\n ),\n optionName: EDITOR_OPTIONS.STRIKETHROUGH,\n label: tooltips.strike ?? t(\"neetoEditor.menu.strike\"),\n },\n {\n type: MENU_ELEMENT_TYPES.HIGHLIGHT,\n icon: Highlight,\n label: tooltips.highlight ?? t(\"neetoEditor.menu.highlight\"),\n isEnabled: options.includes(EDITOR_OPTIONS.HIGHLIGHT),\n optionName: EDITOR_OPTIONS.HIGHLIGHT,\n editor,\n runEditorCommand,\n tooltipContent: tooltips.highlight ?? t(\"neetoEditor.menu.highlight\"),\n },\n ],\n // list\n [\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ListDot,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleBulletList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.LIST_BULLETS),\n optionName: \"bulletList\",\n highlight: true,\n label: tooltips.bulletList ?? t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ListNumber,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleOrderedList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.LIST_ORDERED),\n optionName: \"orderedList\",\n highlight: true,\n label: tooltips.orderedList ?? t(\"neetoEditor.menu.orderedList\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Checkbox,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleTaskList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.TODO_LIST),\n optionName: \"todoList\",\n highlight: true,\n label: tooltips.todoList ?? t(\"neetoEditor.menu.todoList\"),\n },\n ],\n // block\n [\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Quote,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleBlockquote().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.BLOCKQUOTE),\n optionName: \"blockquote\",\n highlight: true,\n label: tooltips.blockQuote ?? t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n type: MENU_ELEMENT_TYPES.CALLOUT,\n label: tooltips.callout ?? t(\"neetoEditor.menu.callout\"),\n isEnabled: options.includes(EDITOR_OPTIONS.CALLOUT),\n optionName: EDITOR_OPTIONS.CALLOUT,\n editor,\n runEditorCommand,\n tooltipContent: tooltips.callout ?? t(\"neetoEditor.menu.callout\"),\n },\n ],\n // misc\n [\n {\n type: MENU_ELEMENT_TYPES.TABLE,\n label: tooltips.table ?? t(\"neetoEditor.menu.table\"),\n isEnabled: options.includes(EDITOR_OPTIONS.TABLE),\n optionName: EDITOR_OPTIONS.TABLE,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Attachment,\n command: () => attachmentProps?.handleUploadAttachments(),\n disabled: attachmentProps?.isDisabled,\n isEnabled: options.includes(EDITOR_OPTIONS.ATTACHMENTS),\n optionName: EDITOR_OPTIONS.ATTACHMENTS,\n label: tooltips.attachments ?? t(\"neetoEditor.menu.attachments\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: File,\n command: () => {\n if (!editor || !setIsNeetoKbArticleActive) return;\n\n const { from, to } = editor.state.selection;\n const cursorPos = editor.view.coordsAtPos(from);\n\n setIsNeetoKbArticleActive({\n active: true,\n editor,\n range: { from, to },\n cursorPos,\n });\n },\n isEnabled: options.includes(EDITOR_OPTIONS.NEETO_KB_ARTICLE),\n optionName: EDITOR_OPTIONS.NEETO_KB_ARTICLE,\n label:\n tooltips.neetoKbArticle ?? t(\"neetoEditor.menu.linkToNeetoKbArticle\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n isEnabled: options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD),\n optionName: EDITOR_OPTIONS.IMAGE_UPLOAD,\n label: tooltips.imageUpload ?? t(\"neetoEditor.menu.imageUpload\"),\n },\n ],\n // extras\n [\n {\n type: MENU_ELEMENT_TYPES.TEXT_COLOR,\n label: tooltips.textColor ?? t(\"neetoEditor.menu.textColor\"),\n isEnabled: options.includes(EDITOR_OPTIONS.TEXT_COLOR),\n optionName: EDITOR_OPTIONS.TEXT_COLOR,\n },\n {\n type: MENU_ELEMENT_TYPES.EMOJI,\n label: tooltips.emoji ?? t(\"neetoEditor.menu.emoji\"),\n isEnabled: options.includes(EDITOR_OPTIONS.EMOJI),\n optionName: EDITOR_OPTIONS.EMOJI,\n setActive: setIsEmojiPickerActive,\n isActive: isEmojiPickerActive,\n },\n {\n type: MENU_ELEMENT_TYPES.MENTIONS,\n label: tooltips.mention ?? t(\"neetoEditor.menu.mention\"),\n isEnabled: isNotEmpty(mentions),\n optionName: \"mentions\",\n mentions,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Code,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleCode().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.CODE),\n optionName: EDITOR_OPTIONS.CODE,\n label: tooltips.code ?? t(\"neetoEditor.menu.code\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: CodeBlock,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleCodeBlock().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.CODE_BLOCK),\n optionName: \"codeBlock\",\n label: tooltips.codeBlock ?? t(\"neetoEditor.menu.codeBlock\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n isEnabled: options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD),\n optionName: EDITOR_OPTIONS.VIDEO_UPLOAD,\n label: tooltips.videoUpload ?? t(\"neetoEditor.menu.videoUpload\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Underline,\n isEnabled: options.includes(EDITOR_OPTIONS.UNDERLINE),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleUnderline().run()\n ),\n optionName: EDITOR_OPTIONS.UNDERLINE,\n label: tooltips.underline ?? t(\"neetoEditor.menu.underline\"),\n },\n ],\n //addons\n [...addonCommandOptions],\n // history\n [\n {\n icon: Undo,\n command: runEditorCommand(editor =>\n editor.chain().focus().undo().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.UNDO),\n optionName: EDITOR_OPTIONS.UNDO,\n label: tooltips.undo ?? t(\"neetoEditor.menu.undo\"),\n type: MENU_ELEMENT_TYPES.BUTTON,\n },\n {\n icon: Redo,\n command: runEditorCommand(editor =>\n editor.chain().focus().redo().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.REDO),\n optionName: EDITOR_OPTIONS.REDO,\n label: tooltips.redo ?? t(\"neetoEditor.menu.redo\"),\n type: MENU_ELEMENT_TYPES.BUTTON,\n },\n ],\n ];\n};\n\nexport const buildOptionsFromAddonCommands = ({ commands, runEditorCommand }) =>\n commands.map(option => ({\n ...option,\n type: MENU_ELEMENT_TYPES.BUTTON,\n command: runEditorCommand(editor =>\n option.command?.({\n editor,\n range: {\n from: editor.state?.selection?.to,\n to: editor.state?.selection.to,\n },\n })\n ),\n }));\n\nexport const buildMenuOptions = ({\n tooltips,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n mentions = [],\n addonCommands,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n}) => {\n const addonCommandOptions = buildOptionsFromAddonCommands({\n commands: addonCommands,\n runEditorCommand,\n });\n\n const menuOptions = createMenuOptions({\n tooltips,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n options,\n mentions,\n addonCommandOptions,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n });\n\n return menuOptions.map(option => option.filter(prop(\"isEnabled\")));\n};\n\nexport const getCursorPos = (editor, to) => editor?.view.coordsAtPos(to);\n\nexport const reGroupMenuItems = (menuRef, menuGroups) => {\n const toolbarWidth = menuRef.current.offsetWidth;\n let totalWidth = 0;\n const visibleMenuGroups = [];\n const invisibleMenuGroups = [];\n menuGroups.forEach((group, groupIndex) => {\n group.forEach((item, itemIndex) => {\n const width = MENU_ELEMENT_WIDTHS[item.type];\n if (totalWidth + width < toolbarWidth) {\n totalWidth += width;\n visibleMenuGroups[groupIndex] = visibleMenuGroups[groupIndex] ?? [];\n visibleMenuGroups[groupIndex][itemIndex] = item;\n } else {\n const visibleMenuGroupsLength = visibleMenuGroups.length;\n const index = groupIndex - visibleMenuGroupsLength + 1;\n invisibleMenuGroups[index] = invisibleMenuGroups[index] ?? [];\n invisibleMenuGroups[index][itemIndex] = item;\n }\n });\n });\n\n return { visibleMenuGroups, invisibleMenuGroups };\n};\n\nexport const getLinkPopoverPosition = (editor, popoverRef) => {\n const {\n selection: {\n $to: { pos: selectionEnd },\n $from: { pos: selectionStart },\n },\n } = editor.view.state;\n const selectionLength = selectionEnd - selectionStart;\n let offset = 0;\n if (selectionLength > 1) offset = Math.round(selectionLength / 2);\n\n if (selectionLength === 1) offset = 1;\n\n // Calculate the arrow position\n const arrowCoords = editor.view.coordsAtPos(selectionStart + offset);\n const arrowPosition = {\n top: `${arrowCoords.top + 21}px`,\n left: `${arrowCoords.left - 8.5}px`,\n };\n\n // Calculate the popover position\n const popoverCoords = editor.view.coordsAtPos(selectionStart);\n let adjustedLeft = popoverCoords?.left,\n adjustedTop = popoverCoords?.top;\n if (popoverRef?.current) {\n const popoverRect = popoverRef.current?.getBoundingClientRect();\n\n const screenWidth = window.innerWidth;\n const screenHeight = window.innerHeight;\n\n const maxLeft = screenWidth - popoverRect.width;\n const maxTop = screenHeight - popoverRect.height - 50;\n\n adjustedLeft = popoverCoords?.left\n ? Math.min(popoverCoords.left - 50, maxLeft)\n : 0;\n\n adjustedTop = popoverCoords?.top\n ? Math.min(popoverCoords.top - 22, maxTop)\n : 0;\n } else {\n adjustedLeft = popoverCoords.left - 50;\n adjustedTop = popoverCoords.top - 22;\n }\n\n const popoverPosition = {\n top: `${adjustedTop}px`,\n left: `${adjustedLeft}px`,\n };\n\n return { arrowPosition, popoverPosition };\n};\n\nexport function renderTooltipContent(label, optionName) {\n const shortcut = SHORTCUTS[optionName];\n if (!shortcut) return label;\n\n const isMac = () =>\n typeof window !== \"undefined\" &&\n /Mac|iPod|iPhone|iPad/.test(window.navigator.userAgent);\n\n const key = isMac() ? shortcut.mac : shortcut.win;\n\n return `${label} (${key})`;\n}\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { assoc, isEmpty, not } from \"ramda\";\n\nimport \"src/styles/editor/menu.scss\";\n\nimport { MENU_COMPONENTS } from \"./constants\";\n\nimport { DEFAULT_EDITOR_OPTIONS } from \"../constants\";\n\nconst Menu = props => {\n const [isEmojiPickerActive, setIsEmojiPickerActive] = useState(false);\n const [mediaUploader, setMediaUploader] = useState({\n image: false,\n video: false,\n });\n\n const {\n menuType = \"fixed\",\n addons = [],\n options = [],\n editorSecrets = {},\n attachmentProps,\n defaults = DEFAULT_EDITOR_OPTIONS,\n } = props;\n\n const MenuComponent = useMemo(() => MENU_COMPONENTS[menuType], [menuType]);\n const menuOptions = isEmpty(options) ? [...defaults, ...addons] : options;\n\n useEffect(() => {\n const handleKeyDown = e => {\n if ((e.metaKey || e.ctrlKey) && e.altKey) {\n if (e.code === \"KeyE\") {\n setIsEmojiPickerActive(prevState => !prevState);\n } else if (e.code === \"KeyA\") {\n not(attachmentProps?.isDisabled) &&\n attachmentProps?.handleUploadAttachments();\n } else if (e.code === \"KeyK\") {\n setMediaUploader(assoc(\"image\", true));\n } else if (e.code === \"KeyV\") {\n setMediaUploader(assoc(\"video\", true));\n }\n }\n };\n if (menuType !== \"none\") {\n document.addEventListener(\"keydown\", handleKeyDown);\n }\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, []);\n\n return (\n <MenuComponent\n {...{\n ...props,\n attachmentProps,\n isEmojiPickerActive,\n mediaUploader,\n setIsEmojiPickerActive,\n setMediaUploader,\n }}\n options={menuOptions}\n unsplashApiKey={editorSecrets.unsplash}\n />\n );\n};\n\nexport default Menu;\n"],"names":["CALLOUT_TYPES","type","label","t","icon","Megaphone","bgColor","Info","Warning","Danger","Success","_regenerator","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","valueOf","EmojiPickerMenu","_React$Component","_this","_classCallCheck","_len","arguments","args","Array","_key","concat","_defineProperty","React","createRef","_asyncToGenerator","_callee","_yield$emojiPickerApi","data","_context","emojiPickerApi","fetch","_ref2","event","key","props","editor","chain","focus","deleteRange","range","run","emoji","_this$props$setActive","_this$props","setEmoji","setActive","_inherits","_createClass","componentDidMount","Picker","_objectSpread","onEmojiSelect","handleSelect","style","maxWidth","theme","previewPosition","showSkinTones","fetchEmojiData","ref","render","_jsx","minWidth","Component","defaultProps","validateUrl","url","_i","_Object$values","values","URL_VALIDATORS","validator","result","MenuButton","_ref","command","optionName","highlight","_ref$disabled","disabled","isButtonDisabled","_useEditorStore","useEditorStore","useShallow","store","_store$marksState","_store$marksState2","isActive","_useEditorStore$disab","Button","className","tabIndex","tooltipProps","content","renderTooltipContent","position","onClick","generateFocusProps","memo","CalloutIcon","currentType","Icon","children","size","Flag","CalloutTypeOption","calloutType","isSelected","optionClass","classNames","_jsxs","Typography","weight","RenderCalloutOptions","isInCallout","currentCalloutAttrs","handleCalloutTypeClick","map","idx","_createElement","CalloutDropdown","tooltipContent","_useTranslation","useTranslation","dropdownRef","useRef","getAttributes","findBy","editorChain","isSameType","lift","updateAttributes","setCallout","Dropdown","autoWidth","placement","strategy","buttonProps","iconPosition","iconSize","Down","onKeyDown","_dropdownRef$current","current","click","Menu","MenuItem","SecondaryMenuTarget","hyphenate","EmojiOption","_ref$isSecondaryMenu","isSecondaryMenu","buttonStyle","closeOnSelect","Smiley","isOpen","customTarget","dropdownProps","stopPropagation","onClose","active","LinkOption","handleClose","handleAnimateInvalidLink","_useState","useState","_useState2","_slicedToArray","link","setLink","useEffect","href","handleKeyDown","handleSubmit","ALL_PROTOCOL_URL_REGEXP","test","isNotPresent","unsetLink","handleReset","autoFocus","name","placeholder","onChange","target","validateAndFormatUrl","Close","TableOption","rows","setRows","_useState3","_useState4","columns","setColumns","insertTable","cols","withHeaderRow","Label","min","withEventTargetValue","Check","createMenuOptions","tooltips","setMediaUploader","attachmentProps","setIsAddLinkActive","font","TextBold","toggleBold","tooltip","bold","TextItalic","toggleItalic","italic","Underline","toggleUnderline","underline","Link","not","TextCross","toggleStrike","strike","Highlight","toggleHighlight","block","Quote","toggleBlockquote","blockQuote","Code","toggleCode","code","CodeBlock","toggleCodeBlock","codeBlock","list","ListDot","toggleBulletList","bulletList","ListNumber","toggleOrderedList","orderedList","misc","Attachment","handleUploadAttachments","isDisabled","attachments","ImageUpload","assoc","imageUpload","Video","videoUpload","right","Undo","undo","can","Redo","redo","buildBubbleMenuOptions","options","menuOptions","fromPairs","option","filter","item","includes","getTextMenuDropdownOptions","_ref3","textOptions","EDITOR_OPTIONS","H1","TextH1","level","setNode","H2","TextH2","H3","TextH3","PARAGRAPH","TextP","forEach","push","getNodeIcon","_options$find","find","prop","renderOptionButton","_ref4","Mentions","mentions","isEmpty","Email","imageUrl","commands","setMention","id","Avatar","user","TextColorOption","setIsOpen","color","setColor","dropdownWrapperRef","handleSave","handleUnset","unsetColor","useOnClickOutside","preventDefault","openColorPicker","Customize","HexColorPicker","Input","Refresh","Options","setIsInvalidLink","isLinkOptionActive","isTableOptionActive","setIsLinkOptionActive","setIsTableOptionActive","isEmojiPickerActive","setIsEmojiPickerActive","dropdownOptions","isEmojiActive","EMOJI","isTextColorOptionActive","TEXT_COLOR","isLinkActive","LINK","isTableActive","TABLE","_buildBubbleMenuOptio","fontStyleOptions","blockStyleOptions","listStyleOptions","setTimeout","_Fragment","buttonSize","textColor","Column","table","mention","Bubble","_ref$mentions","_ref$tooltips","isInvalidLink","_useState5","_useState6","selectedNode","view","state","selection","node","isImageNodeSelected","bubbleMenuOptions","BOLD","ITALIC","UNDERLINE","STRIKETHROUGH","noTextOptions","BubbleMenuTipTap","zIndex","classnames","offset","onHide","EmptyMenu","Progress","withT","queuedFiles","cancelUpload","filename","_ref2$progress","progress","FileIcon","fileName","width","Tooltip","LocalUploader","isImage","insertMediaToEditor","setIsUploading","uploadConfig","DEFAULT_IMAGE_UPLOAD_CONFIG","DEFAULT_VIDEO_UPLOAD_CONFIG","fileInputRef","dropTargetRef","_useFileUploader","useFileUploader","config","setIsUploadingOnHost","addFiles","uploadFiles","isUploading","handleFilesDrop","files","uploadedFiles","_x","useDropFiles","onDrop","handleAddFile","_callee2","_context2","_x2","_fileInputRef$current","multiple","accept","ALLOWED_IMAGE_TYPES","join","ALLOWED_VIDEO_TYPES","entity","convertToFileSize","restrictions","maxFileSize","VideoEmbedForm","onEmbedVideo","onAttachVideo","initialValues","onSubmit","embedUrl","Form","formikProps","validationSchema","VIDEO_EMBED_FORM_VALIDATION_SCHEMA","dirty","isSubmitting","resetForm","unlimitedChars","ActionBlock","cancelButtonProps","submitButtonProps","loading","MediaUploader","mediaUploader","_ref$showAssetLibrary","showAssetLibrary","activeTab","setActiveTab","image","video","tabs","setTabs","getTabs","file","_file$filename","_file$caption","caption","mediaAttrs","src","alt","setMedia","setFigure","setVideo","tr","doc","resolve","to","end","safePosition","Math","insertContentAt","onUploadComplete","_t","signedId","directUploadsApi","attach","signed_id","Toastr","error","originalUrl","setExternalVideo","Modal","closeButton","closeOnOutsideClick","Tab","title","Item","ImageUploader","LinkAddPopOver","isAddLinkActive","openLinkInNewTab","_editor$state$selecti","from","text","textBetween","linkText","setLinkText","linkUrl","setLinkUrl","openInNewTab","setOpenInNewTab","_useState7","_useState8","setError","_useState9","getCursorPos","_useState0","popoverPosition","setPopoverPosition","_useState1","top","left","_useState10","arrowPosition","setArrowPosition","popoverRef","isLinkTextPresent","isLinlUrlPresent","isSubmitDisabled","popoverStyle","display","transform","handleAddLink","_editor$view","dispatch","_state$selection","formattedUrl","attrs","linkMark","schema","marks","linkTextWithMark","replaceWith","removePopover","updatePopoverPosition","_getLinkPopoverPositi","getLinkPopoverPosition","window","addEventListener","removeEventListener","createPortal","required","onFocus","Checkbox","checked","document","body","MoreMenu","groups","MenuHorizontal","group","_objectWithoutProperties","_excluded","MENU_ELEMENTS","MENU_ELEMENT_TYPES","BUTTON","EDITOR_MARKS","UNDO","REDO","HIGHLIGHT","CALLOUT","CODE","ATTACHMENTS","IMAGE_UPLOAD","VIDEO_UPLOAD","NEETO_KB_ARTICLE","useEditorState","neetoKbArticleState","setMarksState","marksState","handleSelectionUpdate","useCallback","activeMarks","mark","activeFontSizeOption","FONT_SIZE_OPTIONS","last","updateHistoryOptionsState","undoOptionState","redoOptionState","updatedMarksState","noop","on","off","MenuDynamicVariables","_ref$variables","variables","_ref$standalone","standalone","handleVariableClick","category","categoryLabel","variableName","variableLabel","setVariable","DynamicVariables","onVariableClick","Fixed","_ref$addonCommands","addonCommands","_ref$isIndependant","isIndependant","setIsNeetoKbArticleActive","focusedButtonIndex","setFocusedButtonIndex","menuItems","setMenuItems","moreMenuItems","setMoreMenuItems","editorRef","menuRef","menuContainerRef","runEditorCommand","handleArrowNavigation","prevIndex","menuButtons","useMemo","_menuRef$current","querySelectorAll","menuItem","menuGroups","buildMenuOptions","handleResize","_reGroupMenuItems","reGroupMenuItems","visibleMenuGroups","invisibleMenuGroups","menuContainer","resizeObserver","ResizeObserver","observe","unobserve","isMediaUploaderActive","isNotEmpty","_ref$icon","_ref$onClick","otherProps","hideOnEsc","defaultValue","fn","hide","_ref$props","toLowerCase","onShow","_ref2$onClose","_ref2$buttonProps","mounted","setMounted","Tippy","interactive","animation","arrow","duration","hideOnClick","plugins","popperOptions","role","trigger","visible","onClickOutside","onHidden","onMount","Emoji","delay","EmojiPicker","Option","i18n","File","buildOptionsFromAddonCommands","_option$active","_option$command","Headless","addonCommandOptions","allOptions","_toConsumableArray","TextH4","TextH5","MENU_COMPONENTS","fixed","FixedMenu","bubble","BubbleMenu","headless","HeadlessMenu","none","FontSizeOption","_ref$options","lastOption","fontSizeOption","_useEditorStore$fontS","activeOption","handleClick","toggleHeading","filterBy","ColorDot","_colorVar$match","colorVar","isTextColor","dotClass","dotStyle","backgroundColor","colorNumber","match","hyphenize","COLORS","background","colorSections","colors","HighlightDropdown","updateBackgroundColor","setMark","handleBackgroundColorClick","handleTextColorClick","renderColorDots","colorList","undefined","handleDropdownClick","FONT_SIZE","MENTIONS","SHORTCUTS","_SHORTCUTS","mac","win","MENU_ELEMENT_WIDTHS","_tooltips$fontSize","_tooltips$bold","_tooltips$italic","_tooltips$link","_tooltips$strike","_tooltips$highlight","_tooltips$highlight2","_tooltips$bulletList","_tooltips$orderedList","_tooltips$todoList","_tooltips$blockQuote","_tooltips$callout","_tooltips$callout2","_tooltips$table","_tooltips$attachments","_tooltips$neetoKbArti","_tooltips$imageUpload","_tooltips$textColor","_tooltips$emoji","_tooltips$mention","_tooltips$code","_tooltips$codeBlock","_tooltips$videoUpload","_tooltips$underline","_tooltips$undo","_tooltips$redo","fontSizeOptions","fontSize","isEnabled","LIST_BULLETS","LIST_ORDERED","toggleTaskList","TODO_LIST","todoList","BLOCKQUOTE","callout","cursorPos","coordsAtPos","neetoKbArticle","CODE_BLOCK","_editor$state","_editor$state2","_ref3$mentions","toolbarWidth","offsetWidth","totalWidth","groupIndex","itemIndex","_visibleMenuGroups$gr","_invisibleMenuGroups$","visibleMenuGroupsLength","index","_editor$view$state$se","selectionEnd","$to","pos","selectionStart","$from","selectionLength","round","arrowCoords","popoverCoords","adjustedLeft","adjustedTop","_popoverRef$current","popoverRect","getBoundingClientRect","screenWidth","innerWidth","screenHeight","innerHeight","maxLeft","maxTop","height","shortcut","isMac","navigator","userAgent","_props$menuType","menuType","_props$addons","addons","_props$options","_props$editorSecrets","editorSecrets","_props$defaults","defaults","DEFAULT_EDITOR_OPTIONS","MenuComponent","metaKey","ctrlKey","altKey","prevState","unsplashApiKey","unsplash"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chunk-V1V-Gqfy.cjs.js","sources":["../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/constants.js","../../app/javascript/src/components/Editor/CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu.jsx","../../app/javascript/src/components/Editor/CustomExtensions/Embeds/utils.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/Button.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/CalloutIcon.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/CalloutTypeOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/RenderCalloutOptions.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/CalloutDropdown/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/SecondaryMenuTarget.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/EmojiOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/LinkOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/TableOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/utils.jsx","../../app/javascript/src/components/Editor/CustomExtensions/Mention/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/TextColorOption.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/Options.jsx","../../app/javascript/src/components/Editor/Menu/Bubble/index.jsx","../../app/javascript/src/components/Editor/Menu/EmptyMenu.jsx","../../app/javascript/src/components/Editor/MediaUploader/Progress.jsx","../../app/javascript/src/components/Editor/MediaUploader/LocalUploader.jsx","../../app/javascript/src/components/Editor/MediaUploader/VideoEmbedForm.jsx","../../app/javascript/src/components/Editor/MediaUploader/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/LinkAddPopOver.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/MoreMenu.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/hooks/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/hooks/useEditorState.js","../../app/javascript/src/components/Editor/Menu/DynamicVariables.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/index.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/UI/Button.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/UI/Dropdown.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/Emoji.jsx","../../app/javascript/src/components/Editor/Menu/Headless/Option/index.jsx","../../app/javascript/src/components/Editor/Menu/Headless/utils.js","../../app/javascript/src/components/Editor/Menu/Headless/index.jsx","../../app/javascript/src/components/Editor/Menu/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/FontSizeOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/ColorDot.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/components/HighlightDropdown/index.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/components/TableOption.jsx","../../app/javascript/src/components/Editor/Menu/Fixed/constants.js","../../app/javascript/src/components/Editor/Menu/Fixed/utils.js","../../app/javascript/src/components/Editor/Menu/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Info, Warning, Danger, Megaphone, Success } from \"neetoicons/misc\";\n\nexport const CALLOUT_TYPES = [\n {\n type: \"default\",\n label: t(\"neetoEditor.menu.calloutDefault\"),\n icon: Megaphone,\n bgColor: \"--neeto-editor-gray-100\",\n },\n {\n type: \"info\",\n label: t(\"neetoEditor.menu.calloutInfo\"),\n icon: Info,\n bgColor: \"--neeto-editor-info-100\",\n },\n {\n type: \"warning\",\n label: t(\"neetoEditor.menu.calloutWarning\"),\n icon: Warning,\n bgColor: \"--neeto-editor-warning-100\",\n },\n {\n type: \"error\",\n label: t(\"neetoEditor.menu.calloutError\"),\n icon: Danger,\n bgColor: \"--neeto-editor-error-100\",\n },\n {\n type: \"success\",\n label: t(\"neetoEditor.menu.calloutSuccess\"),\n icon: Success,\n bgColor: \"--neeto-editor-success-100\",\n },\n];\n","import React from \"react\";\n\nimport { Picker } from \"emoji-mart\";\nimport PropTypes from \"prop-types\";\n\nimport emojiPickerApi from \"apis/emoji_picker\";\n\nclass EmojiPickerMenu extends React.Component {\n ref = React.createRef();\n\n componentDidMount() {\n new Picker({\n ...this.props,\n onEmojiSelect: this.handleSelect,\n style: { maxWidth: \"100%\" },\n theme: \"light\",\n native: true,\n previewPosition: \"none\",\n showSkinTones: false,\n data: this.fetchEmojiData,\n ref: this.ref,\n });\n }\n\n fetchEmojiData = async () => {\n try {\n const { data } = await emojiPickerApi.fetch();\n\n return data;\n } catch {\n return {};\n }\n };\n\n onKeyDown = ({ event }) => {\n if (event.key === \"Escape\") {\n this.props.editor.chain().focus().deleteRange(this.props.range).run();\n\n return true;\n }\n\n return false;\n };\n\n handleSelect = emoji => {\n this.props.editor\n .chain()\n .focus()\n .deleteRange(this.props.range)\n .setEmoji(emoji)\n .run();\n this.props.setActive?.(false);\n };\n\n render() {\n return (\n <div\n data-testid=\"neeto-editor-emoji-picker\"\n ref={this.ref}\n style={{ minWidth: \"350px\" }}\n />\n );\n }\n}\n\nEmojiPickerMenu.defaultProps = { editor: {}, range: {} };\n\nEmojiPickerMenu.propTypes = {\n editor: PropTypes.object.isRequired,\n range: PropTypes.object,\n};\n\nexport default EmojiPickerMenu;\n","import { URL_VALIDATORS } from \"common/constants\";\n\nexport const validateUrl = url => {\n if (!url) return false;\n\n for (const validator of Object.values(URL_VALIDATORS)) {\n const result = validator(url);\n if (result) return result;\n }\n\n return false;\n};\n","import { memo } from \"react\";\n\nimport { Button } from \"neetoui\";\n\nimport useEditorStore from \"src/stores/useEditorStore\";\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nimport { renderTooltipContent } from \"../utils.js\";\n\nconst MenuButton = ({\n icon,\n command,\n optionName,\n highlight,\n disabled: isButtonDisabled = false,\n label,\n}) => {\n const { isActive, disabled = isButtonDisabled } = useEditorStore.pick([\n \"marksState\",\n optionName,\n ]);\n\n return (\n <Button\n {...{ disabled, icon }}\n className=\"neeto-editor-fixed-menu__item\"\n data-testid={`neeto-editor-fixed-menu-${optionName}-option`}\n style={isActive ? \"secondary\" : \"text\"}\n tabIndex=\"-1\"\n tooltipProps={{\n content: renderTooltipContent(label, optionName),\n position: \"bottom\",\n }}\n onClick={command}\n {...generateFocusProps(highlight)}\n />\n );\n};\n\nexport default memo(MenuButton);\n","import { Flag } from \"neetoicons\";\n\nconst CalloutIcon = ({ currentType }) => {\n if (currentType?.icon) {\n const Icon = currentType.icon;\n\n return (\n <span className=\"neeto-editor-callout-dropdown__current-emoji\">\n <Icon size={22} />\n </span>\n );\n }\n\n return <Flag size={16} />;\n};\n\nexport default CalloutIcon;\n","import classNames from \"classnames\";\nimport { Typography } from \"neetoui\";\n\nconst CalloutTypeOption = ({ calloutType, isSelected, onClick }) => {\n const optionClass = classNames(\"neeto-editor-callout-dropdown__type-option\", {\n \"neeto-editor-callout-dropdown__type-option--selected\": isSelected,\n });\n const Icon = calloutType.icon;\n\n return (\n <div {...{ onClick }} className={optionClass}>\n <span\n className=\"neeto-editor-callout-dropdown__type-emoji\"\n data-testid=\"callout-type-emoji\"\n >\n <Icon />\n </span>\n <Typography\n className=\"neeto-editor-callout-dropdown__type-label\"\n style=\"body2\"\n weight=\"medium\"\n >\n {calloutType.label}\n </Typography>\n </div>\n );\n};\n\nexport default CalloutTypeOption;\n","import CalloutTypeOption from \"./CalloutTypeOption\";\nimport { CALLOUT_TYPES } from \"./constants\";\n\nconst RenderCalloutOptions = ({\n isInCallout,\n currentCalloutAttrs,\n handleCalloutTypeClick,\n}) =>\n CALLOUT_TYPES.map((calloutType, idx) => (\n <CalloutTypeOption\n {...{ calloutType }}\n isSelected={isInCallout && currentCalloutAttrs?.type === calloutType.type}\n key={idx}\n onClick={() => handleCalloutTypeClick(calloutType)}\n />\n ));\n\nexport default RenderCalloutOptions;\n","import React, { useRef } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography, Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CalloutIcon from \"./CalloutIcon\";\nimport { CALLOUT_TYPES } from \"./constants\";\nimport RenderCalloutOptions from \"./RenderCalloutOptions\";\n\nconst CalloutDropdown = ({ editor, label, tooltipContent }) => {\n const { t } = useTranslation();\n const dropdownRef = useRef(null);\n\n const isInCallout = editor.isActive(\"callout\");\n const currentCalloutAttrs = isInCallout\n ? editor.getAttributes(\"callout\")\n : null;\n\n const currentType =\n findBy({ type: currentCalloutAttrs?.type }, CALLOUT_TYPES) ||\n CALLOUT_TYPES[0];\n\n const handleCalloutTypeClick = calloutType => {\n const editorChain = editor.chain().focus();\n const isSameType =\n isInCallout && currentCalloutAttrs?.type === calloutType.type;\n\n if (isSameType) {\n editorChain.lift(\"callout\").run();\n } else if (isInCallout) {\n editorChain\n .updateAttributes(\"callout\", {\n type: calloutType.type,\n emoji: calloutType.emoji,\n })\n .run();\n } else {\n editorChain\n .setCallout({ type: calloutType.type, emoji: calloutType.emoji })\n .run();\n }\n };\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: () => (\n <CalloutIcon currentType={isInCallout ? currentType : null} />\n ),\n iconPosition: \"left\",\n iconSize: 20,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-callout-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: isInCallout ? \"secondary\" : \"text\",\n size: \"small\",\n className: \"neeto-editor-fixed-menu__item\",\n }}\n >\n <Dropdown.Menu className=\"neeto-editor-callout-dropdown\">\n <div className=\"neeto-editor-callout-dropdown__section\">\n <Typography\n className=\"neeto-editor-callout-dropdown__section-title\"\n style=\"body2\"\n weight=\"normal\"\n >\n {t(\"neetoEditor.menu.selectCalloutType\")}\n </Typography>\n <div className=\"neeto-editor-callout-dropdown__options-grid\">\n <RenderCalloutOptions\n {...{ currentCalloutAttrs, handleCalloutTypeClick, isInCallout }}\n />\n </div>\n </div>\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default CalloutDropdown;\n","import { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst SecondaryMenuTarget = ({ icon: Icon, label }) => (\n <MenuItem.Button\n data-testid={`neeto-editor-fixed-menu-${hyphenate(label)}-option`}\n >\n <Icon /> {label}\n </MenuItem.Button>\n);\n\nexport default SecondaryMenuTarget;\n","import { memo } from \"react\";\n\nimport { Smiley } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nimport EmojiPickerMenu from \"../../../CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu\";\n\nconst EmojiOption = ({\n editor,\n isActive,\n setActive,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => (\n <Dropdown\n buttonStyle=\"text\"\n closeOnSelect={false}\n icon={Smiley}\n isOpen={isActive}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n strategy=\"fixed\"\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n \"data-testid\": \"neeto-editor-fixed-menu-emoji-option\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Smiley} />\n }\n dropdownProps={{\n classNames: \"neeto-editor-fixed-menu__emoji-dropdown\",\n onClick: e => isSecondaryMenu && e.stopPropagation(),\n }}\n onClose={() => setActive(false)}\n onClick={e => {\n setActive(active => !active);\n isSecondaryMenu && e.stopPropagation();\n }}\n >\n <EmojiPickerMenu {...{ editor, setActive }} />\n </Dropdown>\n);\n\nexport default memo(EmojiOption);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_PROTOCOL_URL_REGEXP } from \"common/constants\";\nimport { validateAndFormatUrl } from \"components/Editor/utils\";\n\nconst LinkOption = ({ editor, handleClose, handleAnimateInvalidLink }) => {\n const { t } = useTranslation();\n\n const [link, setLink] = useState(\"\");\n\n useEffect(() => {\n setLink(editor.getAttributes(\"link\").href || \"\");\n }, [editor]);\n\n const handleKeyDown = event => {\n if (event.key === \"Escape\") {\n handleClose();\n } else if (event.key === \"Enter\") {\n handleSubmit();\n }\n };\n\n const handleSubmit = () => {\n if (ALL_PROTOCOL_URL_REGEXP.test(link)) {\n editor.chain().focus().setLink({ href: link }).run();\n handleClose();\n } else if (isNotPresent(link)) {\n editor.chain().focus().unsetLink().run();\n handleClose();\n } else {\n setLink(\"\");\n handleAnimateInvalidLink();\n }\n };\n\n const handleReset = () => {\n if (link) {\n setLink(\"\");\n editor.chain().focus().unsetLink().run();\n } else {\n handleClose();\n }\n };\n\n return (\n <div className=\"neeto-editor-bubble-menu__link\" onKeyDown={handleKeyDown}>\n <input\n autoFocus\n className=\"neeto-editor-bubble-menu-link__input\"\n data-testid=\"neeto-editor-link-input\"\n name=\"url\"\n placeholder={t(\"neetoEditor.placeholders.linkInput\")}\n value={link}\n onChange={({ target: { value } }) =>\n setLink(validateAndFormatUrl(value))\n }\n />\n <Button\n data-testid=\"neeto-editor-link-cancel-button\"\n icon={Close}\n size=\"small\"\n style=\"secondary\"\n onClick={handleReset}\n />\n </div>\n );\n};\n\nexport default LinkOption;\n","import { useState } from \"react\";\n\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TableOption = ({ editor, handleClose }) => {\n const { t } = useTranslation();\n\n const [rows, setRows] = useState(3);\n const [columns, setColumns] = useState(3);\n\n const handleSubmit = () => {\n editor\n .chain()\n .focus()\n .insertTable({ rows, cols: columns, withHeaderRow: true })\n .run(),\n setRows(3);\n setColumns(3);\n handleClose();\n };\n\n return (\n <div className=\"neeto-editor-bubble-menu__table\">\n <div className=\"neeto-editor-bubble-menu__table__menu-item\">\n <Label className=\"neeto-editor-bubble-menu__table__input-label\">\n {t(\"neetoEditor.menu.rows\")}\n </Label>\n <input\n autoFocus\n data-testid=\"neeto-editor-bubble-menu-table-rows-input\"\n min=\"1\"\n type=\"number\"\n value={rows}\n onChange={withEventTargetValue(setRows)}\n />\n </div>\n <div className=\"neeto-editor-bubble-menu__table__menu-item\">\n <Label className=\"neeto-editor-bubble-menu__table__input-label\">\n {t(\"neetoEditor.menu.columns\")}\n </Label>\n <input\n data-testid=\"neeto-editor-bubble-menu-table-option-input\"\n min=\"1\"\n type=\"number\"\n value={columns}\n onChange={withEventTargetValue(setColumns)}\n />\n </div>\n <div className=\"neeto-editor-bubble-menu__table__buttons\">\n <Button\n data-testid=\"neeto-editor-bubble-menu-table-option-create-button\"\n icon={Check}\n size=\"small\"\n style=\"secondary\"\n onClick={handleSubmit}\n />\n <Button\n data-testid=\"neeto-editor-bubble-menu-table-option-close-button\"\n icon={Close}\n size=\"small\"\n style=\"secondary\"\n onClick={handleClose}\n />\n </div>\n </div>\n );\n};\n\nexport default TableOption;\n","import { t } from \"i18next\";\nimport {\n Quote,\n Attachment,\n CodeBlock,\n Code,\n Highlight,\n Link,\n TextBold,\n TextCross,\n TextItalic,\n Underline,\n ListDot,\n ListNumber,\n ImageUpload,\n Video,\n Undo,\n Redo,\n TextP,\n TextH1,\n TextH2,\n TextH3,\n} from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { assoc, fromPairs, not, prop } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nexport const createMenuOptions = ({\n tooltips,\n editor,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n}) => ({\n font: [\n {\n Icon: TextBold,\n command: () => editor.chain().focus().toggleBold().run(),\n active: editor.isActive(\"bold\"),\n optionName: \"bold\",\n tooltip: tooltips.bold || t(\"neetoEditor.menu.bold\"),\n },\n {\n Icon: TextItalic,\n command: () => editor.chain().focus().toggleItalic().run(),\n active: editor.isActive(\"italic\"),\n optionName: \"italic\",\n tooltip: tooltips.italic || t(\"neetoEditor.menu.italic\"),\n },\n {\n Icon: Underline,\n command: () => editor.chain().focus().toggleUnderline().run(),\n active: editor.isActive(\"underline\"),\n optionName: \"underline\",\n tooltip: tooltips.underline || t(\"neetoEditor.menu.underline\"),\n },\n {\n Icon: Link,\n command: () => setIsAddLinkActive(not),\n optionName: \"link\",\n tooltip: \"Link\",\n },\n {\n Icon: TextCross,\n command: () => editor.chain().focus().toggleStrike().run(),\n active: editor.isActive(\"strike\"),\n optionName: \"strike\",\n tooltip: tooltips.strike || t(\"neetoEditor.menu.strike\"),\n },\n {\n Icon: Highlight,\n command: () => editor.chain().focus().toggleHighlight().run(),\n active: editor.isActive(\"highlight\"),\n optionName: \"highlight\",\n tooltip: tooltips.highlight || t(\"neetoEditor.menu.highlight\"),\n },\n ],\n block: [\n {\n Icon: Quote,\n command: () => editor.chain().focus().toggleBlockquote().run(),\n active: editor.isActive(\"blockquote\"),\n optionName: \"block-quote\",\n highlight: true,\n tooltip: tooltips.blockQuote || t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n Icon: Code,\n command: () => editor.chain().focus().toggleCode().run(),\n active: editor.isActive(\"code\"),\n optionName: \"code\",\n tooltip: tooltips.code || t(\"neetoEditor.menu.code\"),\n },\n {\n Icon: CodeBlock,\n command: () => editor.chain().focus().toggleCodeBlock().run(),\n active: editor.isActive(\"codeBlock\"),\n optionName: \"code-block\",\n tooltip: tooltips.codeBlock || t(\"neetoEditor.menu.codeBlock\"),\n },\n ],\n list: [\n {\n Icon: ListDot,\n command: () => editor.chain().focus().toggleBulletList().run(),\n active: editor.isActive(\"bulletList\"),\n optionName: \"bullet-list\",\n highlight: true,\n tooltip: tooltips.bulletList || t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n Icon: ListNumber,\n command: () => editor.chain().focus().toggleOrderedList().run(),\n active: editor.isActive(\"orderedList\"),\n optionName: \"ordered-list\",\n highlight: true,\n tooltip: tooltips.orderedList || t(\"neetoEditor.menu.orderedList\"),\n },\n ],\n misc: [\n {\n Icon: Attachment,\n command: attachmentProps?.handleUploadAttachments,\n disabled: attachmentProps?.isDisabled,\n active: false,\n optionName: \"attachments\",\n tooltip: tooltips.attachments || t(\"neetoEditor.menu.attachments\"),\n },\n {\n Icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n optionName: \"image-upload\",\n tooltip: tooltips.imageUpload || t(\"neetoEditor.menu.imageUpload\"),\n },\n {\n Icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n optionName: \"video-upload\",\n tooltip: tooltips.videoUpload || t(\"neetoEditor.menu.videoUpload\"),\n },\n ],\n right: [\n {\n Icon: Undo,\n command: () => editor.chain().focus().undo().run(),\n active: false,\n disabled: !editor.can().undo(),\n optionName: \"undo\",\n tooltip: tooltips.undo || t(\"neetoEditor.menu.undo\"),\n },\n {\n Icon: Redo,\n command: () => editor.chain().focus().redo().run(),\n active: false,\n disabled: !editor.can().redo(),\n optionName: \"redo\",\n tooltip: tooltips.redo || t(\"neetoEditor.menu.redo\"),\n },\n ],\n});\n\nexport const buildBubbleMenuOptions = ({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n}) => {\n const menuOptions = createMenuOptions({\n tooltips,\n editor,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n });\n\n return fromPairs(\n [\"font\", \"block\", \"list\", \"misc\", \"right\"].map(option => [\n option,\n menuOptions[option].filter(item => options.includes(item.optionName)),\n ])\n );\n};\n\nexport const getTextMenuDropdownOptions = ({ editor, options }) => {\n const textOptions = {\n [EDITOR_OPTIONS.H1]: {\n optionName: \"Heading 1\",\n icon: TextH1,\n active: editor.isActive(\"heading\", { level: 1 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 1 }).run(),\n },\n [EDITOR_OPTIONS.H2]: {\n optionName: \"Heading 2\",\n icon: TextH2,\n active: editor.isActive(\"heading\", { level: 2 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 2 }).run(),\n },\n [EDITOR_OPTIONS.H3]: {\n optionName: \"Heading 3\",\n icon: TextH3,\n active: editor.isActive(\"heading\", { level: 3 }),\n command: () =>\n editor.chain().focus().setNode(\"heading\", { level: 3 }).run(),\n },\n [EDITOR_OPTIONS.PARAGRAPH]: {\n optionName: \"Text\",\n icon: TextP,\n active: editor.isActive(\"paragraph\"),\n command: () => editor.chain().focus().setNode(\"paragraph\").run(),\n },\n };\n\n const result = [];\n options.forEach(option => {\n if (!textOptions[option]) return;\n result.push(textOptions[option]);\n });\n\n return result;\n};\n\nexport const getNodeIcon = options =>\n options.find(prop(\"active\"))?.icon || TextP;\n\nexport const renderOptionButton = ({\n tooltip,\n Icon,\n command,\n active,\n optionName,\n highlight,\n}) => (\n <Button\n className=\"neeto-editor-bubble-menu__item\"\n data-testid={`neeto-editor-bubble-menu-${optionName}-option`}\n icon={Icon}\n key={optionName}\n size=\"medium\"\n style={active ? \"secondary\" : \"text\"}\n tooltipProps={{\n content: tooltip,\n position: \"bottom\",\n theme: \"dark\",\n }}\n onClick={command}\n {...generateFocusProps(highlight)}\n />\n);\n","import { memo } from \"react\";\n\nimport { Email } from \"neetoicons\";\nimport { Avatar, Dropdown, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport SecondaryMenuTarget from \"components/Editor/Menu/Fixed/components/SecondaryMenuTarget\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Mentions = ({\n editor,\n mentions,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n if (isEmpty(mentions)) return null;\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n data-testid=\"neeto-editor-mention-option\"\n icon={Email}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n strategy=\"fixed\"\n buttonProps={{\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Email} />\n }\n onClick={e => isSecondaryMenu && e.stopPropagation()}\n >\n <Menu>\n {mentions.map(({ key, name, imageUrl }) => (\n <MenuItem.Button\n data-testid={`neeto-editor-mention-option-${key}`}\n key={key}\n onClick={() => editor.commands.setMention({ id: key, label: name })}\n >\n <Avatar size=\"small\" user={{ name, imageUrl }} />\n <Typography style=\"body2\">{name}</Typography>\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(Mentions);\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Check, Close, Customize, Refresh } from \"neetoicons\";\nimport { Button, Dropdown, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { HexColorPicker } from \"react-colorful\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nconst TextColorOption = ({\n editor,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [color, setColor] = useState(null);\n\n const dropdownWrapperRef = useRef(null);\n const { t } = useTranslation();\n\n const handleSave = () => {\n editor.chain().focus().setColor(color).run();\n setIsOpen(false);\n };\n\n const handleUnset = () => {\n editor.chain().focus().unsetColor().run();\n setColor(null);\n setIsOpen(false);\n };\n\n useOnClickOutside(dropdownWrapperRef, event => {\n if (!isOpen) return;\n event.preventDefault();\n editor.commands.focus();\n setIsOpen(false);\n });\n\n useEffect(() => {\n setColor(editor.getAttributes(\"textStyle\").color);\n }, [isOpen, editor.getAttributes(\"textStyle\").color]);\n\n const openColorPicker = e => {\n isSecondaryMenu && e.stopPropagation();\n setColor(editor.getAttributes(\"textStyle\").color);\n setIsOpen(not);\n };\n\n return (\n <Dropdown\n {...{ isOpen }}\n buttonStyle={isOpen || color ? \"secondary\" : \"text\"}\n icon={Customize}\n position={isSecondaryMenu ? \"left-start\" : \"bottom-start\"}\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className:\n \"neeto-editor-fixed-menu__item neeto-editor-text-color-option\",\n \"data-testid\": \"neeto-editor-fixed-menu-text-color-option\",\n }}\n customTarget={\n isSecondaryMenu && (\n <SecondaryMenuTarget {...{ label }} icon={Customize} />\n )\n }\n onClick={openColorPicker}\n >\n <div\n ref={dropdownWrapperRef}\n style={{ \"min-width\": \"236px\" }}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <HexColorPicker color={color || \"#000000\"} onChange={setColor} />\n <div className=\"neeto-editor-text-color-option__options-group\">\n <Input\n autoFocus\n className=\"neeto-editor-text-color-option__options-group__input\"\n placeholder={t(\"neetoEditor.placeholders.pickColor\")}\n size=\"small\"\n value={color}\n onChange={withEventTargetValue(setColor)}\n onClick={event => event.stopPropagation()}\n />\n <Button icon={Check} size=\"small\" onClick={handleSave} />\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => {\n editor.commands.focus();\n setIsOpen(false);\n }}\n />\n <Button\n icon={Refresh}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoEditor.common.resetToDefault\"),\n position: \"top\",\n }}\n onClick={handleUnset}\n />\n </div>\n </div>\n </Dropdown>\n );\n};\n\nexport default TextColorOption;\n","import { Link, Column, Down } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport LinkOption from \"./LinkOption\";\nimport TableOption from \"./TableOption\";\nimport {\n getNodeIcon,\n getTextMenuDropdownOptions,\n renderOptionButton,\n buildBubbleMenuOptions,\n} from \"./utils\";\n\nimport Mentions from \"../../CustomExtensions/Mention\";\nimport EmojiOption from \"../Fixed/components/EmojiOption\";\nimport TextColorOption from \"../Fixed/components/TextColorOption\";\n\nconst Options = ({\n editor,\n options,\n mentions,\n tooltips,\n setIsInvalidLink,\n isLinkOptionActive,\n isTableOptionActive,\n setIsLinkOptionActive,\n setIsTableOptionActive,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const { t } = useTranslation();\n const { Menu, MenuItem } = Dropdown;\n\n const dropdownOptions = getTextMenuDropdownOptions({ editor, options });\n const Icon = getNodeIcon(dropdownOptions);\n const isEmojiActive = options.includes(EDITOR_OPTIONS.EMOJI);\n const isTextColorOptionActive = options.includes(EDITOR_OPTIONS.TEXT_COLOR);\n const isLinkActive = options.includes(EDITOR_OPTIONS.LINK);\n const isTableActive = options.includes(EDITOR_OPTIONS.TABLE);\n\n const {\n font: fontStyleOptions,\n block: blockStyleOptions,\n list: listStyleOptions,\n } = buildBubbleMenuOptions({\n editor,\n options,\n setMediaUploader,\n tooltips,\n attachmentProps,\n setIsAddLinkActive: setIsLinkOptionActive,\n });\n\n const handleAnimateInvalidLink = () => {\n setIsInvalidLink(true);\n setTimeout(() => {\n setIsInvalidLink(false);\n }, 1000);\n };\n\n if (isLinkOptionActive) {\n return (\n <LinkOption\n {...{ editor, handleAnimateInvalidLink }}\n handleClose={() => setIsLinkOptionActive(false)}\n />\n );\n }\n\n if (isTableOptionActive) {\n return (\n <TableOption\n {...{ editor }}\n handleClose={() => setIsTableOptionActive(false)}\n />\n );\n }\n\n return (\n <>\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"text\"\n label={Icon}\n strategy=\"fixed\"\n buttonProps={{\n icon: Icon,\n iconPosition: \"left\",\n iconSize: 22,\n label: <Down size={12} />,\n \"data-testid\": \"neeto-editor-fixed-menu-font-size-option\",\n style: \"text\",\n size: \"small\",\n className:\n \"neeto-editor-bubble-menu__item neeto-editor-font-size__wrapper\",\n }}\n >\n <Menu className=\"neeto-ui-flex neeto-ui-gap-1 neeto-editor-menu-font-size-options\">\n {dropdownOptions.map(({ optionName, command, icon: Icon }) => (\n <MenuItem.Button\n className=\"neeto-editor-menu-font-size-options__item-btn\"\n key={optionName}\n tooltipProps={{ content: optionName, position: \"bottom\" }}\n onClick={command}\n >\n <Icon size={22} />\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n {fontStyleOptions.map(renderOptionButton)}\n {blockStyleOptions.map(renderOptionButton)}\n {isTextColorOptionActive && (\n <TextColorOption\n {...{ editor }}\n tooltipContent={tooltips.textColor || t(\"neetoEditor.menu.textColor\")}\n />\n )}\n {isEmojiActive && (\n <EmojiOption\n {...{ editor }}\n isActive={isEmojiPickerActive}\n setActive={setIsEmojiPickerActive}\n tooltipContent={tooltips.emoji || t(\"neetoEditor.menu.emoji\")}\n />\n )}\n {listStyleOptions.map(renderOptionButton)}\n {isLinkActive &&\n renderOptionButton({\n Icon: Link,\n command: () => setIsLinkOptionActive(true),\n active: editor.isActive(\"link\"),\n optionName: \"link\",\n highlight: false,\n tooltip: tooltips.link || t(\"neetoEditor.menu.link\"),\n })}\n {isTableActive &&\n renderOptionButton({\n Icon: Column,\n command: () => setIsTableOptionActive(true),\n active: editor.isActive(\"table\"),\n optionName: \"table\",\n highlight: false,\n tooltip: tooltips.table || t(\"neetoEditor.menu.table\"),\n })}\n <Mentions\n {...{ editor, mentions }}\n tooltipContent={tooltips.mention || t(\"neetoEditor.menu.mention\")}\n />\n </>\n );\n};\n\nexport default Options;\n","import { useState } from \"react\";\n\nimport { BubbleMenu as BubbleMenuTipTap } from \"@tiptap/react/menus\";\nimport classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport Options from \"./Options\";\n\nconst Bubble = ({\n editor,\n options: textOptions,\n mentions = [],\n setMediaUploader,\n tooltips = {},\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const [isInvalidLink, setIsInvalidLink] = useState(false);\n const [isLinkOptionActive, setIsLinkOptionActive] = useState(false);\n const [isTableOptionActive, setIsTableOptionActive] = useState(false);\n const selectedNode = editor && editor.view.state.selection.node;\n const isImageNodeSelected =\n selectedNode && selectedNode.type.name === \"image\";\n\n const bubbleMenuOptions = [\n EDITOR_OPTIONS.BOLD,\n EDITOR_OPTIONS.ITALIC,\n EDITOR_OPTIONS.UNDERLINE,\n EDITOR_OPTIONS.STRIKETHROUGH,\n EDITOR_OPTIONS.LINK,\n ];\n\n const noTextOptions = isNotPresent(\n textOptions.filter(option => bubbleMenuOptions.includes(option))\n );\n\n if (!editor || (!isImageNodeSelected && noTextOptions)) {\n return null;\n }\n\n return (\n <div>\n <BubbleMenuTipTap\n {...{ editor }}\n style={{ zIndex: 99999, maxWidth: 500 }}\n className={classnames(\"neeto-editor-bubble-menu\", {\n \"neeto-editor-bubble-menu-animate-shake\": isInvalidLink,\n })}\n options={{\n offset: 10,\n onHide: () => {\n setIsLinkOptionActive(false);\n setIsTableOptionActive(false);\n },\n }}\n >\n <Options\n {...{\n attachmentProps,\n editor,\n isEmojiPickerActive,\n isLinkOptionActive,\n isTableOptionActive,\n mentions,\n setIsEmojiPickerActive,\n setIsInvalidLink,\n setIsLinkOptionActive,\n setIsTableOptionActive,\n setMediaUploader,\n tooltips,\n }}\n options={textOptions}\n />\n </BubbleMenuTipTap>\n </div>\n );\n};\n\nexport default Bubble;\n","const EmptyMenu = () => <div />;\n\nexport default EmptyMenu;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\n\nimport FileIcon from \"../../Common/FileIcon\";\n\nconst Progress = withT(({ t, queuedFiles, cancelUpload }) => (\n <div className=\"ne-media-uploader__wrapper\">\n {queuedFiles.map(({ id, filename, progress = 0 }) => (\n <div className=\"ne-media-uploader__media\" key={id}>\n <div className=\"ne-media-uploader__media__cancel-button-wrapper\">\n <Button\n data-testid=\"neeto-editor-image-upload-cancel-button\"\n icon={Close}\n iconSize={18}\n size=\"small\"\n style=\"text\"\n onClick={() => cancelUpload(id)}\n />\n </div>\n <FileIcon\n className=\"ne-media-uploader__media__info__icon\"\n fileName={filename}\n />\n <div className=\"ne-media-uploader__media__info\">\n <Typography style=\"nano\">\n {progress === 100 && t(\"neetoEditor.localUploader.completed\")}\n {progress !== 100 && <>{progress}%</>}\n </Typography>\n <div className=\"ne-media-uploader__media__progress\">\n <div\n className=\"ne-media-uploader__media__progress-bar\"\n style={{ width: `${progress}%` }}\n />\n </div>\n <Tooltip content={filename} position=\"top\">\n <Typography style=\"body3\">{filename}</Typography>\n </Tooltip>\n </div>\n </div>\n ))}\n </div>\n));\n\nexport default Progress;\n","import { useRef } from \"react\";\n\nimport { ImageUpload } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDropFiles from \"hooks/useDropFiles\";\nimport useFileUploader from \"hooks/useFileUploader\";\n\nimport {\n ALLOWED_IMAGE_TYPES,\n ALLOWED_VIDEO_TYPES,\n DEFAULT_IMAGE_UPLOAD_CONFIG,\n DEFAULT_VIDEO_UPLOAD_CONFIG,\n} from \"./constants\";\nimport Progress from \"./Progress\";\nimport { convertToFileSize } from \"./utils\";\n\nconst LocalUploader = ({\n isImage,\n onClose,\n insertMediaToEditor,\n setIsUploading,\n}) => {\n const { t } = useTranslation();\n\n const uploadConfig = isImage\n ? DEFAULT_IMAGE_UPLOAD_CONFIG\n : DEFAULT_VIDEO_UPLOAD_CONFIG;\n\n const fileInputRef = useRef(null);\n const dropTargetRef = useRef(null);\n\n const { addFiles, uploadFiles, queuedFiles, cancelUpload, isUploading } =\n useFileUploader({\n config: uploadConfig,\n setIsUploadingOnHost: setIsUploading,\n });\n\n const handleFilesDrop = async files => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n uploadedFiles.forEach(insertMediaToEditor);\n onClose();\n };\n\n useDropFiles({ dropTargetRef, onDrop: handleFilesDrop });\n\n setIsUploading(isUploading);\n\n const handleAddFile = async ({ target: { files } }) => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n uploadedFiles.forEach(insertMediaToEditor);\n onClose();\n };\n\n return !isEmpty(queuedFiles) || isUploading ? (\n <Progress {...{ cancelUpload, queuedFiles }} />\n ) : (\n <div\n className=\"ne-media-uploader__dnd\"\n data-testid=\"neeto-editor-media-uploader-dnd\"\n ref={dropTargetRef}\n tabIndex={0}\n onClick={() => fileInputRef.current?.click()}\n >\n <input\n multiple\n className=\"ne-media-uploader__dnd-input\"\n data-testid=\"neeto-editor-media-uploader-input\"\n ref={fileInputRef}\n type=\"file\"\n accept={\n isImage\n ? ALLOWED_IMAGE_TYPES.join(\",\")\n : ALLOWED_VIDEO_TYPES.join(\",\")\n }\n onChange={handleAddFile}\n />\n <ImageUpload className=\"ne-media-uploader__dnd-icon\" size={24} />\n <Typography style=\"body2\">\n {t(\"neetoEditor.localUploader.dropFilesHere\")}\n </Typography>\n <Typography style=\"body3\">\n {t(\"neetoEditor.localUploader.maxFileSize\", {\n entity: convertToFileSize(uploadConfig.restrictions.maxFileSize),\n })}\n </Typography>\n </div>\n );\n};\n\nexport default LocalUploader;\n","import { Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { VIDEO_EMBED_FORM_VALIDATION_SCHEMA } from \"./constants\";\n\nimport { validateUrl } from \"../CustomExtensions/Embeds/utils\";\n\nconst VideoEmbedForm = ({ onEmbedVideo, onAttachVideo, onClose }) => {\n const { t } = useTranslation();\n\n const initialValues = { url: \"\" };\n\n const onSubmit = ({ url }) => {\n const embedUrl = validateUrl(url); // False when current url is not \"embeddable\"\n if (embedUrl) onEmbedVideo(url, embedUrl);\n else onAttachVideo(url);\n onClose();\n };\n\n return (\n <div className=\"ne-video-embed-form\">\n <Form\n formikProps={{\n initialValues,\n validationSchema: VIDEO_EMBED_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n {({ dirty, isSubmitting, resetForm }) => (\n <>\n <div className=\"ne-video-embed-form__content\">\n <Input\n autoFocus\n unlimitedChars\n data-testid=\"neeto-editor-video-embed-input\"\n label={t(\"neetoEditor.common.videoUrl\")}\n name=\"url\"\n placeholder={t(\"neetoEditor.placeholders.embedUrl\")}\n size=\"medium\"\n type=\"text\"\n />\n </div>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"neeto-editor-video-embed-cancel\",\n label: t(\"neetoEditor.common.cancel\"),\n size: \"small\",\n onClick: () => {\n resetForm();\n onClose();\n },\n }}\n submitButtonProps={{\n \"data-testid\": \"neeto-editor-video-embed-submit\",\n disabled: !dirty,\n label: t(\"neetoEditor.common.saveChanges\"),\n loading: isSubmitting,\n size: \"small\",\n }}\n />\n </>\n )}\n </Form>\n </div>\n );\n};\n\nexport default VideoEmbedForm;\n","import { useEffect, useState } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { ImageUploader } from \"neetoimageuploader\";\nimport { Modal, Tab, Toastr } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\n\nimport LocalUploader from \"./LocalUploader\";\nimport { getTabs } from \"./utils\";\nimport VideoEmbedForm from \"./VideoEmbedForm\";\n\nconst MediaUploader = ({\n mediaUploader,\n onClose,\n editor,\n showAssetLibrary = true,\n}) => {\n const { t } = useTranslation();\n\n const [activeTab, setActiveTab] = useState(\"local\");\n const [isUploading, setIsUploading] = useState(false);\n const isOpen = mediaUploader.image || mediaUploader.video;\n const [tabs, setTabs] = useState([]);\n\n useEffect(() => {\n isOpen && setTabs(getTabs(mediaUploader));\n }, [mediaUploader]);\n\n const handleClose = () => {\n onClose();\n setActiveTab(\"local\");\n editor.commands.focus();\n };\n\n const insertMediaToEditor = file => {\n if (!editor) return;\n const { url, filename = \"image\", caption = \"\" } = file;\n const mediaAttrs = { src: url, caption, alt: filename };\n const setMedia = mediaUploader.image\n ? editor.chain().setFigure(mediaAttrs)\n : editor.chain().setVideo(mediaAttrs);\n\n setMedia\n .focus()\n .command(({ tr, commands }) => {\n const { doc, selection } = tr;\n const position = doc.resolve(selection.to).end() + 1;\n const safePosition = Math.min(position, doc.content.size);\n\n return commands.insertContentAt(safePosition, \"<p></p>\");\n })\n .run();\n };\n\n const onUploadComplete = async file => {\n if (isNotPresent(file.id) && isNotPresent(file.signedId)) return;\n\n try {\n await directUploadsApi.attach({ id: file.id, signed_id: file.signedId });\n insertMediaToEditor(file);\n handleClose();\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n const onAttachVideo = url => {\n const file = { url, alt: \"image\" };\n insertMediaToEditor(file);\n };\n\n const onEmbedVideo = (originalUrl, embedUrl) => {\n if (!editor) return;\n editor\n .chain()\n .focus()\n .setExternalVideo({ src: embedUrl, originalUrl })\n .run();\n };\n\n return (\n <Modal\n {...{ isOpen }}\n className=\"ne-media-uploader-modal\"\n closeButton={not(isUploading)}\n closeOnOutsideClick={not(isUploading)}\n onClose={handleClose}\n >\n <div className=\"ne-media-uploader\">\n {(mediaUploader.video || mediaUploader.image) && (\n <div className=\"ne-media-uploader__header\">\n <h2 className=\"ne-media-uploader__header-title\">\n {mediaUploader.video && t(\"neetoEditor.menu.addVideo\")}\n {mediaUploader.image && t(\"neetoEditor.menu.addImage\")}\n </h2>\n </div>\n )}\n {!isNotPresent(tabs) && (\n <Tab>\n {tabs.map(({ key, title }) => (\n <Tab.Item\n active={activeTab === key}\n data-testid={`neeto-editor-media-uploader-${key}-tab`}\n key={key}\n onClick={() => setActiveTab(key)}\n >\n {title}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <div className=\"ne-media-uploader__content\">\n {mediaUploader.image && (\n <ImageUploader\n {...{ onUploadComplete, showAssetLibrary }}\n className=\"ne-media-uploader__image-uploader\"\n />\n )}\n {mediaUploader.video && (\n <>\n {activeTab === \"local\" && (\n <LocalUploader\n {...{ insertMediaToEditor, setIsUploading }}\n isImage={false}\n onClose={handleClose}\n />\n )}\n {activeTab === \"embed\" && (\n <VideoEmbedForm\n {...{ onAttachVideo, onEmbedVideo }}\n onClose={handleClose}\n />\n )}\n </>\n )}\n </div>\n </div>\n </Modal>\n );\n};\n\nexport default MediaUploader;\n","import { useState, useEffect, useRef } from \"react\";\n\nimport { isNotPresent } from \"neetocist\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Button, Checkbox, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { createPortal } from \"react-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { validateAndFormatUrl } from \"components/Editor/utils\";\nimport { ALL_PROTOCOL_URL_REGEXP } from \"src/common/constants\";\n\nimport { getLinkPopoverPosition, getCursorPos } from \"../utils\";\n\nconst LinkAddPopOver = ({\n isAddLinkActive,\n setIsAddLinkActive,\n editor,\n openLinkInNewTab,\n}) => {\n const { from, to } = editor.state.selection;\n const text = editor.state.doc.textBetween(from, to, \"\");\n\n const [linkText, setLinkText] = useState(text);\n const [linkUrl, setLinkUrl] = useState(\"\");\n const [openInNewTab, setOpenInNewTab] = useState(openLinkInNewTab);\n const [error, setError] = useState(\"\");\n const [popoverPosition, setPopoverPosition] = useState(\n getCursorPos(editor, to)\n );\n const [arrowPosition, setArrowPosition] = useState({ top: 0, left: 0 });\n\n const popoverRef = useRef(null);\n\n const { t } = useTranslation();\n\n const isLinkTextPresent = !isNotPresent(linkText);\n const isLinlUrlPresent = !isNotPresent(linkUrl);\n const isSubmitDisabled = !isLinkTextPresent || !isLinlUrlPresent;\n\n const popoverStyle = {\n display: \"block\",\n position: \"fixed\",\n top: popoverPosition.top,\n left: popoverPosition.left,\n transform: \"translateY(52px) translateX(8px)\",\n };\n\n const handleAddLink = () => {\n const { state, dispatch } = editor.view;\n const { from, to } = state.selection;\n const formattedUrl = validateAndFormatUrl(linkUrl);\n\n if (!ALL_PROTOCOL_URL_REGEXP.test(formattedUrl)) {\n setError(t(\"neetoEditor.error.invalidUrl\"));\n\n return;\n }\n\n const attrs = {\n href: formattedUrl,\n target: openInNewTab ? \"_blank\" : \"_self\",\n };\n\n const linkMark = state.schema.marks.link.create(attrs);\n const linkTextWithMark = state.schema.text(linkText, [linkMark]);\n\n const tr = state.tr.replaceWith(from, to, linkTextWithMark);\n dispatch(tr);\n removePopover();\n };\n\n const removePopover = () => {\n editor.view.focus();\n setIsAddLinkActive(false);\n };\n\n const handleKeyDown = e => {\n e.stopPropagation();\n if (e.key === \"Enter\") {\n e.preventDefault();\n handleAddLink();\n } else if (e.key === \"Escape\") {\n removePopover();\n }\n };\n\n const updatePopoverPosition = () => {\n const { arrowPosition, popoverPosition } = getLinkPopoverPosition(\n editor,\n popoverRef\n );\n setPopoverPosition(popoverPosition);\n setArrowPosition(arrowPosition);\n };\n\n useOnClickOutside(popoverRef, removePopover);\n\n useEffect(() => {\n if (editor && isAddLinkActive) {\n updatePopoverPosition();\n }\n window.addEventListener(\"resize\", removePopover);\n window.addEventListener(\"wheel\", removePopover);\n\n return () => {\n window.removeEventListener(\"resize\", removePopover);\n window.removeEventListener(\"wheel\", removePopover);\n };\n }, []);\n\n return isAddLinkActive\n ? createPortal(\n <>\n <div\n className=\"ne-link-arrow fade-in\"\n style={{ top: arrowPosition.top, left: arrowPosition.left }}\n />\n <div\n className=\"ne-link-popover fade-in\"\n id=\"ne-link-add-popover\"\n ref={popoverRef}\n style={popoverStyle}\n >\n <Input\n required\n autoFocus={!isLinkTextPresent}\n data-testid=\"neeto-editor-add-link-text-input\"\n label={t(\"neetoEditor.common.text\")}\n placeholder={t(\"neetoEditor.placeholders.enterText\")}\n size=\"small\"\n style={{ width: \"250px\" }}\n value={linkText}\n onChange={({ target: { value } }) => setLinkText(value)}\n onKeyDown={handleKeyDown}\n />\n <Input\n {...{ error }}\n required\n autoFocus={isLinkTextPresent}\n className=\"ne-link-popover__url-input\"\n data-testid=\"neeto-editor-add-link-url-input\"\n label={t(\"neetoEditor.common.url\")}\n placeholder={t(\"neetoEditor.placeholders.url\")}\n size=\"small\"\n style={{ width: \"250px\" }}\n value={linkUrl}\n onChange={({ target: { value } }) => setLinkUrl(value)}\n onFocus={() => setError(\"\")}\n onKeyDown={handleKeyDown}\n />\n <Checkbox\n checked={openInNewTab}\n className=\"ne-link-popover__checkbox\"\n data-testid=\"neeto-editor-add-link-open-in-new-tab-switch\"\n label={t(\"neetoEditor.common.openInNewTab\")}\n onChange={() => setOpenInNewTab(not)}\n />\n <div className=\"ne-link-popover__edit-prompt-buttons\">\n <Button\n data-testid=\"neeto-editor-add-link\"\n disabled={isSubmitDisabled}\n label={t(\"neetoEditor.common.done\")}\n size=\"small\"\n onClick={handleAddLink}\n />\n <Button\n data-testid=\"neeto-editor-link-popover-cancel\"\n label={t(\"neetoEditor.common.cancel\")}\n size=\"small\"\n style=\"text\"\n onClick={removePopover}\n />\n </div>\n </div>\n </>,\n document.body\n )\n : null;\n};\n\nexport default LinkAddPopOver;\n","import { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport { generateFocusProps } from \"utils/focusHighlighter\";\n\nimport { MENU_ELEMENTS, MENU_ELEMENT_TYPES } from \"../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst MoreMenu = ({ groups, editor }) => (\n <Dropdown\n buttonProps={{ className: \"flex-shrink-0\" }}\n buttonStyle=\"text\"\n icon={MenuHorizontal}\n strategy=\"fixed\"\n >\n <Menu>\n {groups.map(group =>\n group.map(({ type, ...props }) => {\n const Component = MENU_ELEMENTS[type];\n\n if (type === MENU_ELEMENT_TYPES.BUTTON) {\n const { icon: Icon } = props;\n\n return (\n <MenuItem.Button\n data-testid={`neeto-editor-fixed-menu-${props.optionName}-option`}\n isActive={editor.isActive(props.optionName)}\n key={props.optionName}\n tabIndex=\"-1\"\n onClick={props.command}\n {...{\n ...generateFocusProps(props.highlight),\n ...props,\n editor,\n }}\n >\n <Icon /> {props.label}\n </MenuItem.Button>\n );\n }\n\n return (\n <Component\n key={props.optionName}\n {...{ ...props, editor, ...generateFocusProps(props.highlight) }}\n isSecondaryMenu\n />\n );\n })\n )}\n </Menu>\n </Dropdown>\n);\n\nexport default MoreMenu;\n","import { EDITOR_OPTIONS } from \"src/common/constants\";\n\nexport const EDITOR_MARKS = [\n EDITOR_OPTIONS.UNDO,\n EDITOR_OPTIONS.REDO,\n \"fontSizeOptions\",\n EDITOR_OPTIONS.BOLD,\n EDITOR_OPTIONS.ITALIC,\n EDITOR_OPTIONS.UNDERLINE,\n EDITOR_OPTIONS.LINK,\n EDITOR_OPTIONS.STRIKETHROUGH,\n EDITOR_OPTIONS.HIGHLIGHT,\n EDITOR_OPTIONS.CALLOUT,\n \"bulletList\",\n \"orderedList\",\n \"todoList\",\n \"blockquote\",\n EDITOR_OPTIONS.CODE,\n \"codeBlock\",\n EDITOR_OPTIONS.TABLE,\n EDITOR_OPTIONS.ATTACHMENTS,\n EDITOR_OPTIONS.IMAGE_UPLOAD,\n EDITOR_OPTIONS.VIDEO_UPLOAD,\n EDITOR_OPTIONS.TEXT_COLOR,\n EDITOR_OPTIONS.EMOJI,\n EDITOR_OPTIONS.NEETO_KB_ARTICLE,\n \"mentions\",\n];\n","import { useCallback, useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { last } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\nimport useEditorStore from \"src/stores/useEditorStore\";\n\nimport { EDITOR_MARKS } from \"./constants\";\n\nimport { FONT_SIZE_OPTIONS } from \"../../constants\";\n\nconst useEditorState = ({ editor, neetoKbArticleState }) => {\n const { setMarksState, marksState } = useEditorStore.pick();\n\n const handleSelectionUpdate = useCallback(\n ({ editor }) => {\n const activeMarks = {};\n\n EDITOR_MARKS.forEach(mark => {\n if (mark === EDITOR_OPTIONS.NEETO_KB_ARTICLE) {\n activeMarks[mark] = {\n isActive: neetoKbArticleState?.active || false,\n };\n } else {\n activeMarks[mark] = { isActive: editor.isActive(mark) };\n }\n });\n\n const activeFontSizeOption =\n FONT_SIZE_OPTIONS.find(({ value: level }) =>\n editor.isActive(\"heading\", { level })\n ) || last(FONT_SIZE_OPTIONS);\n\n activeMarks[\"fontSizeOption\"] = activeFontSizeOption;\n\n setMarksState(activeMarks);\n },\n [setMarksState, neetoKbArticleState?.active]\n );\n\n const updateHistoryOptionsState = useCallback(\n ({ editor }) => {\n const undoOptionState = { disabled: !editor.can().undo() };\n const redoOptionState = { disabled: !editor.can().redo() };\n\n const updatedMarksState = {\n ...marksState,\n [EDITOR_OPTIONS.UNDO]: undoOptionState,\n [EDITOR_OPTIONS.REDO]: redoOptionState,\n };\n setMarksState(updatedMarksState);\n },\n [marksState, setMarksState]\n );\n\n useEffect(() => {\n if (!editor) return noop;\n\n updateHistoryOptionsState({ editor });\n\n editor.on(\"selectionUpdate\", handleSelectionUpdate);\n editor.on(\"update\", handleSelectionUpdate);\n editor.on(\"transaction\", handleSelectionUpdate);\n\n return () => {\n editor.off(\"selectionUpdate\", handleSelectionUpdate);\n editor.off(\"update\", handleSelectionUpdate);\n editor.off(\"transaction\", handleSelectionUpdate);\n };\n }, [editor, handleSelectionUpdate]);\n\n // Update editor state when neetoKbArticleState changes\n useEffect(() => {\n if (!editor) return;\n\n handleSelectionUpdate({ editor });\n }, [editor, neetoKbArticleState?.active, handleSelectionUpdate]);\n};\n\nexport default useEditorState;\n","import classnames from \"classnames\";\nimport DynamicVariables from \"neetomolecules/DynamicVariables\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst MenuDynamicVariables = ({\n editor,\n variables = [],\n standalone = false,\n}) => {\n const { t } = useTranslation();\n\n if (isEmpty(variables)) return null;\n\n const handleVariableClick = item => {\n const { category, categoryLabel, key, label } = item;\n const variableName = category ? `${category}.${key}` : key;\n const variableLabel = category\n ? `${categoryLabel || category}:${label}`\n : label;\n\n editor\n .chain()\n .focus()\n .setVariable({ id: variableName, label: variableLabel })\n .run();\n };\n\n return (\n <div\n data-testid=\"neeto-editor-fixed-menu-variables\"\n className={classnames(\"neeto-editor-fixed-menu__variables\", {\n \"neeto-editor-fixed-menu__variables--standalone\": standalone,\n })}\n >\n <DynamicVariables\n {...{ variables }}\n dropdownProps={{\n buttonSize: \"small\",\n buttonProps: {\n tooltipProps: {\n content: t(\"neetoEditor.menu.dynamicVariables\"),\n position: \"bottom\",\n },\n },\n }}\n onVariableClick={handleVariableClick}\n />\n </div>\n );\n};\n\nexport default MenuDynamicVariables;\n","import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\nimport MediaUploader from \"components/Editor/MediaUploader\";\n\nimport LinkAddPopOver from \"./components/LinkAddPopOver\";\nimport MoreMenu from \"./components/MoreMenu\";\nimport { MENU_ELEMENTS } from \"./constants\";\nimport useEditorState from \"./hooks/useEditorState\";\nimport { reGroupMenuItems, buildMenuOptions } from \"./utils\";\n\nimport MenuDynamicVariables from \"../DynamicVariables\";\n\nconst Fixed = ({\n editor,\n options,\n mentions,\n variables = [],\n setMediaUploader,\n mediaUploader,\n addonCommands = [],\n isIndependant = true,\n className,\n tooltips = {},\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n openLinkInNewTab,\n setIsNeetoKbArticleActive,\n neetoKbArticleState,\n showAssetLibrary = true,\n}) => {\n const [focusedButtonIndex, setFocusedButtonIndex] = useState(0);\n const [isAddLinkActive, setIsAddLinkActive] = useState(false);\n const [menuItems, setMenuItems] = useState([]);\n const [moreMenuItems, setMoreMenuItems] = useState([]);\n\n useEditorState({ editor, neetoKbArticleState });\n\n const editorRef = useRef(editor);\n\n useEffect(() => {\n editorRef.current = editor;\n }, [editor]);\n\n const menuRef = useRef(null);\n const menuContainerRef = useRef(null);\n\n const runEditorCommand = useCallback(\n command => () => command(editorRef.current),\n []\n );\n\n const handleArrowNavigation = event => {\n if (event.key === \"ArrowRight\") {\n event.preventDefault();\n setFocusedButtonIndex(prevIndex => (prevIndex + 1) % menuButtons.length);\n } else if (event.key === \"ArrowLeft\") {\n event.preventDefault();\n setFocusedButtonIndex(\n prevIndex => (prevIndex - 1 + menuButtons.length) % menuButtons.length\n );\n }\n };\n\n const menuButtons = useMemo(\n () => menuRef.current?.querySelectorAll(\".neeto-editor-fixed-menu__item\"),\n [menuRef.current]\n );\n\n useEffect(() => {\n menuButtons?.[focusedButtonIndex].focus();\n }, [focusedButtonIndex]);\n\n useEffect(() => {\n menuButtons?.forEach(menuItem =>\n menuItem.addEventListener(\"keydown\", handleArrowNavigation)\n );\n\n return () =>\n menuButtons?.forEach(menuItem =>\n menuItem.removeEventListener(\"keydown\", handleArrowNavigation)\n );\n }, [menuButtons]);\n\n const menuGroups = useMemo(\n () =>\n buildMenuOptions({\n tooltips,\n runEditorCommand,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n mentions,\n addonCommands,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n editor,\n setIsNeetoKbArticleActive,\n }),\n [isEmojiPickerActive, mentions]\n );\n\n const handleResize = useCallback(() => {\n if (!menuRef.current) return;\n const { visibleMenuGroups, invisibleMenuGroups } = reGroupMenuItems(\n menuRef,\n menuGroups\n );\n setMenuItems(visibleMenuGroups);\n setMoreMenuItems(invisibleMenuGroups);\n }, [setMenuItems, menuGroups, menuRef.current]);\n\n useEffect(() => {\n handleResize();\n\n const menuContainer = menuContainerRef.current;\n const resizeObserver = new ResizeObserver(handleResize);\n if (menuContainer) {\n resizeObserver.observe(menuContainer);\n }\n\n return () => {\n if (menuContainer) resizeObserver.unobserve(menuContainer);\n };\n }, [menuContainerRef.current, handleResize, menuGroups]);\n\n if (!editor) return null;\n\n const isMediaUploaderActive =\n options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD) ||\n options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD);\n\n return (\n <div\n ref={menuContainerRef}\n className={classNames(\"neeto-editor-fixed-menu\", {\n \"neeto-editor-fixed-menu--independant\": isIndependant,\n [className]: className,\n })}\n >\n <div\n className=\"neeto-editor-fixed-menu__wrapper\"\n data-testid=\"neeto-editor-fixed-menu-wrapper\"\n ref={menuRef}\n >\n {menuItems.map(group =>\n group.map(({ type, ...props }) => {\n const Component = MENU_ELEMENTS[type];\n\n if (!Component) return null;\n\n return (\n <Component\n key={props.optionName}\n {...{ ...props, editor, options }}\n />\n );\n })\n )}\n {isNotEmpty(moreMenuItems) && (\n <MoreMenu {...{ editor }} groups={moreMenuItems} />\n )}\n </div>\n <MenuDynamicVariables {...{ editor, variables }} />\n {isAddLinkActive && (\n <LinkAddPopOver\n {...{\n editor,\n isAddLinkActive,\n openLinkInNewTab,\n setIsAddLinkActive,\n }}\n />\n )}\n {isMediaUploaderActive && (\n <MediaUploader\n {...{ editor, mediaUploader, showAssetLibrary }}\n onClose={() => setMediaUploader({ image: false, video: false })}\n />\n )}\n </div>\n );\n};\n\nexport default Fixed;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\n\nconst Button = ({\n icon = null,\n onClick = noop,\n disabled = false,\n className,\n tooltipProps,\n ...otherProps\n}) => {\n const Icon = icon;\n\n return (\n <Tooltip\n disabled={!tooltipProps}\n onClick={() => onClick()}\n {...tooltipProps}\n >\n <button\n className={classnames(\"ne-headless-btn\", { [className]: className })}\n type=\"button\"\n {...{ disabled, onClick, ...otherProps }}\n >\n {icon && <Icon aria-hidden=\"true\" key=\"2\" size={18} />}\n </button>\n </Tooltip>\n );\n};\n\nexport default Button;\n","import { useState } from \"react\";\n\nimport Tippy from \"@tippyjs/react\";\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\n\nimport Button from \"./Button\";\n\nconst hideOnEsc = {\n name: \"hideOnEsc\",\n defaultValue: true,\n fn({ hide, props: { hideOnEsc, onClose } }) {\n function onKeyDown(event) {\n if (!(event.key.toLowerCase() === \"escape\" && hideOnEsc)) return;\n onClose();\n hide();\n }\n\n return {\n onShow() {\n document.addEventListener(\"keydown\", onKeyDown);\n },\n onHide() {\n document.removeEventListener(\"keydown\", onKeyDown);\n },\n };\n },\n};\n\nconst Dropdown = ({\n icon,\n isOpen,\n onClose = noop,\n children,\n className,\n onClick,\n buttonProps = {},\n ...otherProps\n}) => {\n const [mounted, setMounted] = useState(false);\n\n return (\n <Tippy\n {...{ onClose }}\n hideOnEsc\n interactive\n animation={false}\n arrow={false}\n duration={0}\n hideOnClick={false}\n maxWidth=\"none\"\n offset={0}\n plugins={[hideOnEsc]}\n popperOptions={{ strategy: \"fixed\" }}\n role=\"dropdown\"\n theme=\"light\"\n trigger=\"click\"\n visible={isOpen}\n className={classnames(\"ne-headless-dropdown\", {\n [className]: className,\n })}\n content={\n mounted && <div className=\"ne-headless-dropdown__popup\">{children}</div>\n }\n onClickOutside={onClose}\n onHidden={() => setMounted(false)}\n onMount={() => setMounted(true)}\n {...otherProps}\n >\n <span>\n <Button {...{ icon, onClick, ...buttonProps }} />\n </span>\n </Tippy>\n );\n};\n\nexport default Dropdown;\n","import { Smiley } from \"neetoicons\";\n\nimport EmojiPicker from \"components/Editor/CustomExtensions/Emoji/EmojiPicker/EmojiPickerMenu\";\n\nimport Dropdown from \"./UI/Dropdown\";\n\nconst Emoji = ({ editor, isActive, setActive, tooltipContent }) => (\n <Dropdown\n className=\"ne-headless__emoji\"\n icon={Smiley}\n isOpen={isActive}\n buttonProps={{\n tooltipProps: {\n content: tooltipContent,\n delay: [500],\n position: \"bottom\",\n },\n \"data-testid\": \"ne-emoji-picker\",\n }}\n onClick={() => setActive(active => !active)}\n onClose={() => setActive(false)}\n >\n <EmojiPicker {...{ editor, setActive }} />\n </Dropdown>\n);\nexport default Emoji;\n","import classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\n\nimport Emoji from \"./Emoji\";\nimport Button from \"./UI/Button\";\n\nconst Option = ({\n editor,\n optionName,\n command,\n disabled,\n Icon,\n isActive,\n setActive,\n tooltip,\n}) => {\n if (optionName === EDITOR_OPTIONS.EMOJI) {\n return (\n <Emoji\n {...{ editor, isActive, setActive }}\n tooltipContent={tooltip || \"Emoji\"}\n />\n );\n }\n\n return (\n <Button\n {...{ disabled }}\n className={classnames({ \"ne-headless-btn--active\": isActive })}\n data-testid={hyphenate(optionName)}\n icon={Icon}\n tooltipProps={{\n content: tooltip,\n delay: [500],\n position: \"bottom\",\n }}\n onClick={command}\n />\n );\n};\n\nexport default Option;\n","import i18n from \"i18next\";\nimport { findBy, noop } from \"neetocist\";\nimport {\n TextBold,\n TextItalic,\n Underline,\n TextCross,\n Highlight,\n Quote,\n Code,\n ListDot,\n ListNumber,\n ImageUpload,\n Undo,\n Redo,\n Smiley,\n File,\n Video,\n Column,\n CodeBlock,\n} from \"neetoicons\";\nimport { assoc } from \"ramda\";\n\nconst { t } = i18n;\n\nconst createMenuOptions = ({\n editor,\n tooltips,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => [\n {\n Icon: TextBold,\n command: () => editor.chain().focus().toggleBold().run(),\n active: editor.isActive(\"bold\"),\n optionName: \"bold\",\n tooltip: tooltips.bold || t(\"neetoEditor.menu.bold\"),\n },\n {\n Icon: TextItalic,\n command: () => editor.chain().focus().toggleItalic().run(),\n active: editor.isActive(\"italic\"),\n optionName: \"italic\",\n tooltip: tooltips.italic || t(\"neetoEditor.menu.italic\"),\n },\n {\n Icon: Underline,\n command: () => editor.chain().focus().toggleUnderline().run(),\n active: editor.isActive(\"underline\"),\n optionName: \"underline\",\n tooltip: tooltips.underline || t(\"neetoEditor.menu.underline\"),\n },\n {\n Icon: TextCross,\n command: () => editor.chain().focus().toggleStrike().run(),\n active: editor.isActive(\"strike\"),\n optionName: \"strike\",\n tooltip: tooltips.strike || t(\"neetoEditor.menu.strike\"),\n },\n {\n Icon: Highlight,\n command: () => editor.chain().focus().toggleHighlight().run(),\n active: editor.isActive(\"highlight\"),\n optionName: \"highlight\",\n tooltip: tooltips.highlight || t(\"neetoEditor.menu.highlight\"),\n },\n {\n Icon: Quote,\n command: () => editor.chain().focus().toggleBlockquote().run(),\n active: editor.isActive(\"blockquote\"),\n optionName: \"block-quote\",\n tooltip: tooltips.blockQuote || t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n Icon: Code,\n command: () => editor.chain().focus().toggleCode().run(),\n active: editor.isActive(\"code\"),\n optionName: \"code\",\n tooltip: tooltips.code || t(\"neetoEditor.menu.code\"),\n },\n {\n Icon: CodeBlock,\n command: () => editor.chain().focus().toggleCodeBlock().run(),\n active: editor.isActive(\"codeBlock\"),\n optionName: \"code-block\",\n tooltip: tooltips.codeBlock || t(\"neetoEditor.menu.codeBlock\"),\n },\n {\n Icon: ListDot,\n command: () => editor.chain().focus().toggleBulletList().run(),\n active: editor.isActive(\"bulletList\"),\n optionName: \"bullet-list\",\n tooltip: tooltips.bulletList || t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n Icon: ListNumber,\n command: () => editor.chain().focus().toggleOrderedList().run(),\n active: editor.isActive(\"orderedList\"),\n optionName: \"ordered-list\",\n tooltip: tooltips.orderedList || t(\"neetoEditor.menu.orderedList\"),\n },\n {\n Icon: File,\n command: attachmentProps?.handleUploadAttachments,\n disabled: attachmentProps?.isDisabled,\n optionName: \"attachments\",\n tooltip: tooltips.attachments || t(\"neetoEditor.menu.attachments\"),\n },\n {\n Icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n optionName: \"image-upload\",\n tooltip: tooltips.imageUpload || t(\"neetoEditor.menu.imageUpload\"),\n },\n {\n Icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n optionName: \"video-upload\",\n tooltip: tooltips.videoUpload || t(\"neetoEditor.menu.videoUpload\"),\n },\n {\n Icon: Smiley,\n command: noop,\n optionName: \"emoji\",\n tooltip: tooltips.emoji || t(\"neetoEditor.menu.emoji\"),\n isActive: isEmojiPickerActive,\n setActive: setIsEmojiPickerActive,\n },\n {\n Icon: Column,\n command: () =>\n editor\n .chain()\n .focus()\n .insertTable({ rows: 3, cols: 3, withHeaderRow: true })\n .run(),\n optionName: \"table\",\n tooltip: tooltips.table || t(\"neetoEditor.menu.table\"),\n },\n {\n Icon: Undo,\n command: () => editor.chain().focus().undo().run(),\n disabled: !editor.can().undo(),\n optionName: \"undo\",\n tooltip: tooltips.undo || t(\"neetoEditor.menu.undo\"),\n },\n {\n Icon: Redo,\n command: () => editor.chain().focus().redo().run(),\n disabled: !editor.can().redo(),\n optionName: \"redo\",\n tooltip: tooltips.redo || t(\"neetoEditor.menu.redo\"),\n },\n];\n\nexport const buildOptionsFromAddonCommands = ({ editor, commands }) => {\n const { to } = editor.state.selection;\n\n return commands.map(option => ({\n ...option,\n active: option.active?.({ editor }),\n command: () => option.command?.({ editor, range: { from: to, to } }),\n }));\n};\n\nexport const buildMenuOptions = ({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n}) => {\n const menuOptions = createMenuOptions({\n editor,\n tooltips,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n });\n\n return options\n .map(option => findBy({ optionName: option }, menuOptions))\n .filter(Boolean);\n};\n","import classnames from \"classnames\";\n\nimport { EDITOR_OPTIONS } from \"common/constants\";\nimport MediaUploader from \"components/Editor/MediaUploader\";\n\nimport Option from \"./Option\";\nimport { buildOptionsFromAddonCommands, buildMenuOptions } from \"./utils\";\n\nconst Headless = ({\n editor,\n options,\n tooltips = {},\n setMediaUploader,\n mediaUploader,\n addonCommands = [],\n className,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n showAssetLibrary = true,\n}) => {\n if (!editor) {\n return null;\n }\n\n const isMediaUploaderActive =\n options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD) ||\n options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD);\n\n const menuOptions = buildMenuOptions({\n tooltips,\n editor,\n options,\n setMediaUploader,\n attachmentProps,\n isEmojiPickerActive,\n setIsEmojiPickerActive,\n });\n\n const addonCommandOptions = buildOptionsFromAddonCommands({\n editor,\n commands: addonCommands,\n });\n const allOptions = [...menuOptions, ...addonCommandOptions];\n\n return (\n <div className={classnames(\"ne-headless\", { [className]: className })}>\n {allOptions.map(option => (\n <Option {...{ editor }} key={option.optionName} {...option} />\n ))}\n {isMediaUploaderActive && (\n <MediaUploader\n {...{ editor, mediaUploader, showAssetLibrary }}\n onClose={() => setMediaUploader({ image: false, video: false })}\n />\n )}\n </div>\n );\n};\n\nexport default Headless;\n","import { t } from \"i18next\";\nimport { TextH1, TextH2, TextH3, TextH4, TextH5, TextP } from \"neetoicons\";\n\nimport BubbleMenu from \"./Bubble\";\nimport EmptyMenu from \"./EmptyMenu\";\nimport FixedMenu from \"./Fixed\";\nimport HeadlessMenu from \"./Headless\";\n\nexport const FONT_SIZE_OPTIONS = [\n { label: t(\"neetoEditor.menu.heading1\"), value: 1, key: \"h1\", icon: TextH1 },\n { label: t(\"neetoEditor.menu.heading2\"), value: 2, key: \"h2\", icon: TextH2 },\n { label: t(\"neetoEditor.menu.heading3\"), value: 3, key: \"h3\", icon: TextH3 },\n { label: t(\"neetoEditor.menu.heading4\"), value: 4, key: \"h4\", icon: TextH4 },\n { label: t(\"neetoEditor.menu.heading5\"), value: 5, key: \"h5\", icon: TextH5 },\n {\n label: t(\"neetoEditor.menu.normalText\"),\n value: 0,\n key: \"body2\",\n icon: TextP,\n },\n];\n\nexport const MENU_COMPONENTS = {\n fixed: FixedMenu,\n bubble: BubbleMenu,\n headless: HeadlessMenu,\n none: EmptyMenu,\n};\n","import { memo, useRef } from \"react\";\n\nimport { filterBy } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { last } from \"ramda\";\n\nimport useEditorStore from \"src/stores/useEditorStore\";\n\nimport { FONT_SIZE_OPTIONS } from \"../../constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst FontSizeOption = ({\n runEditorCommand,\n tooltipContent,\n label,\n options = [],\n}) => {\n const dropdownRef = useRef(null);\n\n const lastOption = last(FONT_SIZE_OPTIONS);\n const { fontSizeOption: activeOption = lastOption } =\n useEditorStore.pick(\"marksState\");\n\n const handleClick = level =>\n level\n ? runEditorCommand(editor =>\n editor.chain().focus().toggleHeading({ level }).run()\n )()\n : runEditorCommand(editor =>\n editor.chain().focus().setNode(\"paragraph\").run()\n )();\n\n const menuOptions = [\n ...filterBy({ key: key => options.includes(key) }, FONT_SIZE_OPTIONS),\n FONT_SIZE_OPTIONS[FONT_SIZE_OPTIONS.length - 1],\n ];\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: activeOption?.icon,\n iconPosition: \"left\",\n iconSize: 22,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-font-size-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: \"text\",\n size: \"small\",\n className:\n \"neeto-editor-fixed-menu__item neeto-editor-font-size__wrapper\",\n }}\n >\n <Menu className=\"neeto-ui-flex neeto-ui-gap-1 neeto-editor-menu-font-size-options\">\n {menuOptions.map(({ label, icon: Icon, value, key }) => (\n <MenuItem.Button\n className=\"neeto-editor-menu-font-size-options__item-btn\"\n data-testid={`neeto-editor-fixed-menu-font-size-option-${key}`}\n key={value}\n tooltipProps={{ content: label, position: \"bottom\" }}\n onClick={() => handleClick(value)}\n >\n <Icon size={22} />\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(FontSizeOption);\n","import classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils\";\n\nconst ColorDot = ({ colorVar, isSelected, onClick, isTextColor }) => {\n const dotClass = classNames(\"neeto-editor-highlight-dropdown__color-dot\", {\n \"neeto-editor-highlight-dropdown__color-dot--selected\": isSelected,\n });\n\n const dotStyle = { backgroundColor: `var(${colorVar})` };\n\n const colorNumber = colorVar.match(/\\d+$/)?.[0] || colorVar;\n\n return (\n <div\n {...{ onClick }}\n className={dotClass}\n style={dotStyle}\n data-testid={`neeto-editor-highlight-${hyphenize(\n isTextColor ? \"text\" : \"background\"\n )}-color-dot-${colorNumber}`}\n />\n );\n};\n\nexport default ColorDot;\n","export const COLORS = {\n recent: [\"--neeto-editor-highlight-bg-yellow-light\"],\n text: [\n \"--neeto-editor-highlight-text-1\",\n \"--neeto-editor-highlight-text-2\",\n \"--neeto-editor-highlight-text-3\",\n \"--neeto-editor-highlight-text-4\",\n \"--neeto-editor-highlight-text-5\",\n \"--neeto-editor-highlight-text-6\",\n \"--neeto-editor-highlight-text-7\",\n \"--neeto-editor-highlight-text-8\",\n \"--neeto-editor-highlight-text-9\",\n \"--neeto-editor-highlight-text-10\",\n \"--neeto-editor-highlight-text-11\",\n \"--neeto-editor-highlight-text-12\",\n \"--neeto-editor-highlight-text-13\",\n \"--neeto-editor-highlight-text-14\",\n \"--neeto-editor-highlight-text-15\",\n \"--neeto-editor-highlight-text-16\",\n ],\n background: [\n \"--neeto-editor-highlight-bg-1\",\n \"--neeto-editor-highlight-bg-2\",\n \"--neeto-editor-highlight-bg-3\",\n \"--neeto-editor-highlight-bg-4\",\n \"--neeto-editor-highlight-bg-5\",\n \"--neeto-editor-highlight-bg-6\",\n \"--neeto-editor-highlight-bg-7\",\n \"--neeto-editor-highlight-bg-8\",\n \"--neeto-editor-highlight-bg-9\",\n \"--neeto-editor-highlight-bg-10\",\n \"--neeto-editor-highlight-bg-11\",\n \"--neeto-editor-highlight-bg-12\",\n \"--neeto-editor-highlight-bg-13\",\n \"--neeto-editor-highlight-bg-14\",\n \"--neeto-editor-highlight-bg-15\",\n \"--neeto-editor-highlight-bg-16\",\n ],\n};\n","import React, { useRef } from \"react\";\n\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Down, Highlight } from \"neetoicons\";\nimport { Typography, Dropdown } from \"neetoui\";\n\nimport ColorDot from \"./ColorDot\";\nimport { COLORS } from \"./constants\";\n\nconst colorSections = [\n { title: \"Text color\", colors: COLORS.text, isTextColor: true },\n { title: \"Background color\", colors: COLORS.background, isTextColor: false },\n];\n\nconst HighlightDropdown = ({\n editor,\n label,\n tooltipContent,\n runEditorCommand,\n}) => {\n const dropdownRef = useRef(null);\n const textColor = editor.getAttributes(\"textStyle\").color;\n const backgroundColor = editor.getAttributes(\"textStyle\").backgroundColor;\n\n const updateBackgroundColor = value => {\n runEditorCommand(editor =>\n editor\n .chain()\n .focus()\n .setMark(\"textStyle\", { backgroundColor: value })\n .run()\n )();\n };\n\n const handleBackgroundColorClick = (colorVar, event) => {\n event.stopPropagation();\n if (backgroundColor === `var(${colorVar})`) {\n updateBackgroundColor(null);\n } else {\n updateBackgroundColor(`var(${colorVar})`);\n }\n };\n\n const handleTextColorClick = (colorVar, event) => {\n event.stopPropagation();\n if (textColor === `var(${colorVar})`) {\n editor.chain().focus().unsetColor().run();\n } else {\n editor.chain().focus().setColor(`var(${colorVar})`).run();\n }\n };\n\n const renderColorDots = (colorList, isTextColor = false) =>\n colorList.map((colorVar, idx) => (\n <ColorDot\n {...{ colorVar, isTextColor }}\n key={idx}\n isSelected={\n isTextColor\n ? textColor === `var(${colorVar})`\n : backgroundColor === `var(${colorVar})`\n }\n onClick={event =>\n isTextColor\n ? handleTextColorClick(colorVar, event)\n : handleBackgroundColorClick(colorVar, event)\n }\n />\n ));\n\n return (\n <Dropdown\n autoWidth\n placement=\"bottom-start\"\n strategy=\"fixed\"\n buttonProps={{\n icon: () => <Highlight size={18} />,\n iconPosition: \"left\",\n iconSize: 16,\n label: <Down size={12} />,\n ref: dropdownRef,\n \"data-testid\": \"neeto-editor-fixed-menu-highlight-option\",\n onKeyDown: event =>\n event.key === \"ArrowDown\" && dropdownRef.current?.click(),\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n style: \"text\",\n size: \"small\",\n className: \"neeto-editor-fixed-menu__item\",\n }}\n >\n <Dropdown.Menu className=\"neeto-editor-highlight-dropdown\">\n {colorSections.map(({ title, colors, isTextColor }) => (\n <div className=\"neeto-editor-highlight-dropdown__section\" key={title}>\n <Typography\n className=\"neeto-editor-highlight-dropdown__section-title\"\n style=\"body2\"\n weight=\"medium\"\n >\n {title}\n </Typography>\n <div\n className=\"neeto-editor-highlight-dropdown__color-grid\"\n data-testid={`neeto-editor-highlight-${hyphenize(title)}-grid`}\n >\n {renderColorDots(colors, isTextColor)}\n </div>\n </div>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default HighlightDropdown;\n","import { memo, useState } from \"react\";\n\nimport { withEventTargetValue } from \"neetocommons/utils\";\nimport { Column } from \"neetoicons\";\nimport { Button, Dropdown, Input } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SecondaryMenuTarget from \"./SecondaryMenuTarget\";\n\nconst { Menu } = Dropdown;\n\nconst TableOption = ({\n editor,\n tooltipContent,\n isSecondaryMenu = false,\n label,\n}) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useState(false);\n const [rows, setRows] = useState(3);\n const [columns, setColumns] = useState(3);\n\n const handleClose = () => {\n setRows(3);\n setColumns(3);\n setIsOpen(false);\n };\n\n const handleSubmit = () => {\n editor\n .chain()\n .focus()\n .insertTable({ rows, cols: columns, withHeaderRow: true })\n .run();\n handleClose();\n };\n\n const handleDropdownClick = e => {\n isSecondaryMenu && e.stopPropagation();\n setIsOpen(not);\n };\n\n return (\n <Dropdown\n {...{ isOpen }}\n buttonStyle={isOpen ? \"secondary\" : \"text\"}\n closeOnSelect={false}\n data-testid=\"neeto-editor-fixed-menu-link-option\"\n icon={Column}\n position={isSecondaryMenu ? \"left-start\" : \"bottom\"}\n buttonProps={{\n tabIndex: -1,\n tooltipProps: { content: tooltipContent ?? label, position: \"bottom\" },\n className: \"neeto-editor-fixed-menu__item\",\n \"data-testid\": \"neeto-editor-fixed-menu-table-option\",\n }}\n customTarget={\n isSecondaryMenu && <SecondaryMenuTarget {...{ label }} icon={Column} />\n }\n onClick={handleDropdownClick}\n onClose={handleClose}\n >\n <Menu className=\"neeto-editor-table__item\">\n <Input\n autoFocus\n data-testid=\"neeto-editor-fixed-menu-table-rows-input\"\n label={t(\"neetoEditor.menu.rows\")}\n min=\"1\"\n placeholder={t(\"neetoEditor.placeholders.rows\")}\n size=\"small\"\n type=\"number\"\n value={rows}\n onChange={withEventTargetValue(setRows)}\n />\n <Input\n data-testid=\"neeto-editor-fixed-menu-table-columns-input\"\n label={t(\"neetoEditor.menu.columns\")}\n min=\"1\"\n placeholder={t(\"neetoEditor.placeholders.rows\")}\n size=\"small\"\n type=\"number\"\n value={columns}\n onChange={withEventTargetValue(setColumns)}\n />\n <div className=\"neeto-editor-table-menu__button\">\n <Button\n className=\"mt-auto\"\n data-testid=\"neeto-editor-fixed-menu-table-option-create-button\"\n label={t(\"neetoEditor.common.create\")}\n size=\"small\"\n onClick={handleSubmit}\n />\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nexport default memo(TableOption);\n","import { EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport MenuButton from \"./components/Button\";\nimport CalloutDropdown from \"./components/CalloutDropdown\";\nimport EmojiOption from \"./components/EmojiOption\";\nimport FontSizeOption from \"./components/FontSizeOption\";\nimport HighlightDropdown from \"./components/HighlightDropdown/index.jsx\";\nimport TableOption from \"./components/TableOption\";\nimport TextColorOption from \"./components/TextColorOption\";\n\nimport Mentions from \"../../CustomExtensions/Mention\";\n\nexport const MENU_ELEMENT_TYPES = {\n BUTTON: \"button\",\n CALLOUT: \"callout\",\n FONT_SIZE: \"fontSize\",\n TABLE: \"table\",\n TEXT_COLOR: \"textColor\",\n EMOJI: \"emoji\",\n MENTIONS: \"mentions\",\n HIGHLIGHT: \"highlight\",\n};\n\nexport const MENU_TYPES = {\n HISTORY: \"history\",\n FONT: \"font\",\n LIST: \"list\",\n BLOCK: \"block\",\n MISC: \"misc\",\n EXTRAS: \"extras\",\n CUSTOM: \"custom\",\n};\n\nexport const SHORTCUTS = {\n [EDITOR_OPTIONS.BOLD]: { mac: \"⌘B\", win: \"Ctrl+B\" },\n [EDITOR_OPTIONS.ITALIC]: { mac: \"⌘I\", win: \"Ctrl+I\" },\n [EDITOR_OPTIONS.UNDERLINE]: { mac: \"⌘U\", win: \"Ctrl+U\" },\n [EDITOR_OPTIONS.STRIKETHROUGH]: {\n mac: \"⌘⇧S or ⌘⇧X\",\n win: \"Ctrl+Shift+S or Ctrl+Shift+X\",\n },\n [EDITOR_OPTIONS.CODE]: { mac: \"⌘E\", win: \"Ctrl+E\" },\n [EDITOR_OPTIONS.UNDO]: { mac: \"⌘Z\", win: \"Ctrl+Z\" },\n [EDITOR_OPTIONS.REDO]: { mac: \"⌘⇧Z\", win: \"Ctrl+Shift+Z\" },\n [EDITOR_OPTIONS.LINK]: { mac: \"⌘K\", win: \"Ctrl+K\" },\n [EDITOR_OPTIONS.HIGHLIGHT]: { mac: \"⌘⇧H\", win: \"Ctrl+Shift+H\" },\n bulletList: { mac: \"⌘⇧8\", win: \"Ctrl+Shift+8\" },\n orderedList: { mac: \"⌘⇧7\", win: \"Ctrl+Shift+7\" },\n todoList: { mac: \"⌘⇧9\", win: \"Ctrl+Shift+9\" },\n};\n\nexport const MENU_ELEMENTS = {\n [MENU_ELEMENT_TYPES.BUTTON]: MenuButton,\n [MENU_ELEMENT_TYPES.CALLOUT]: CalloutDropdown,\n [MENU_ELEMENT_TYPES.FONT_SIZE]: FontSizeOption,\n [MENU_ELEMENT_TYPES.TABLE]: TableOption,\n [MENU_ELEMENT_TYPES.TEXT_COLOR]: TextColorOption,\n [MENU_ELEMENT_TYPES.EMOJI]: EmojiOption,\n [MENU_ELEMENT_TYPES.MENTIONS]: Mentions,\n [MENU_ELEMENT_TYPES.HIGHLIGHT]: HighlightDropdown,\n};\n\nexport const MENU_ELEMENT_WIDTHS = {\n [MENU_ELEMENT_TYPES.BUTTON]: 36,\n [MENU_ELEMENT_TYPES.CALLOUT]: 23,\n [MENU_ELEMENT_TYPES.FONT_SIZE]: 103,\n [MENU_ELEMENT_TYPES.TABLE]: 36,\n [MENU_ELEMENT_TYPES.TEXT_COLOR]: 36,\n [MENU_ELEMENT_TYPES.EMOJI]: 36,\n [MENU_ELEMENT_TYPES.MENTIONS]: 36,\n [MENU_ELEMENT_TYPES.HIGHLIGHT]: 103,\n};\n","import { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport {\n TextBold,\n TextItalic,\n Underline,\n TextCross,\n Highlight,\n Code,\n ListDot,\n ListNumber,\n Checkbox,\n ImageUpload,\n Quote,\n Undo,\n Redo,\n Video,\n CodeBlock,\n Attachment,\n Link,\n File,\n} from \"neetoicons\";\nimport { prop, not, assoc } from \"ramda\";\n\nimport { EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport {\n MENU_ELEMENT_WIDTHS,\n MENU_ELEMENT_TYPES,\n SHORTCUTS,\n} from \"./constants.js\";\n\nconst createMenuOptions = ({\n tooltips,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n options,\n mentions,\n addonCommandOptions,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n}) => {\n const fontSizeOptions = options.filter(option => option.match(/^h[1-6]$/));\n\n return [\n // font\n [\n {\n type: MENU_ELEMENT_TYPES.FONT_SIZE,\n options: fontSizeOptions,\n label: tooltips.fontSize ?? t(\"neetoEditor.menu.fontSize\"),\n isEnabled: isNotEmpty(fontSizeOptions),\n optionName: \"fontSizeOptions\",\n runEditorCommand,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextBold,\n isEnabled: options.includes(EDITOR_OPTIONS.BOLD),\n command: runEditorCommand(editor =>\n editor?.chain().focus().toggleBold().run()\n ),\n optionName: EDITOR_OPTIONS.BOLD,\n label: tooltips.bold ?? t(\"neetoEditor.menu.bold\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextItalic,\n isEnabled: options.includes(EDITOR_OPTIONS.ITALIC),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleItalic().run()\n ),\n optionName: EDITOR_OPTIONS.ITALIC,\n label: tooltips.italic ?? t(\"neetoEditor.menu.italic\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Link,\n isEnabled: options.includes(EDITOR_OPTIONS.LINK),\n command: () => setIsAddLinkActive(not),\n optionName: EDITOR_OPTIONS.LINK,\n label: tooltips.link ?? t(\"neetoEditor.menu.link\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: TextCross,\n isEnabled: options.includes(EDITOR_OPTIONS.STRIKETHROUGH),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleStrike().run()\n ),\n optionName: EDITOR_OPTIONS.STRIKETHROUGH,\n label: tooltips.strike ?? t(\"neetoEditor.menu.strike\"),\n },\n {\n type: MENU_ELEMENT_TYPES.HIGHLIGHT,\n icon: Highlight,\n label: tooltips.highlight ?? t(\"neetoEditor.menu.highlight\"),\n isEnabled: options.includes(EDITOR_OPTIONS.HIGHLIGHT),\n optionName: EDITOR_OPTIONS.HIGHLIGHT,\n editor,\n runEditorCommand,\n tooltipContent: tooltips.highlight ?? t(\"neetoEditor.menu.highlight\"),\n },\n ],\n // list\n [\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ListDot,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleBulletList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.LIST_BULLETS),\n optionName: \"bulletList\",\n highlight: true,\n label: tooltips.bulletList ?? t(\"neetoEditor.menu.bulletedList\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ListNumber,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleOrderedList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.LIST_ORDERED),\n optionName: \"orderedList\",\n highlight: true,\n label: tooltips.orderedList ?? t(\"neetoEditor.menu.orderedList\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Checkbox,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleTaskList().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.TODO_LIST),\n optionName: \"todoList\",\n highlight: true,\n label: tooltips.todoList ?? t(\"neetoEditor.menu.todoList\"),\n },\n ],\n // block\n [\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Quote,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleBlockquote().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.BLOCKQUOTE),\n optionName: \"blockquote\",\n highlight: true,\n label: tooltips.blockQuote ?? t(\"neetoEditor.menu.blockQuote\"),\n },\n {\n type: MENU_ELEMENT_TYPES.CALLOUT,\n label: tooltips.callout ?? t(\"neetoEditor.menu.callout\"),\n isEnabled: options.includes(EDITOR_OPTIONS.CALLOUT),\n optionName: EDITOR_OPTIONS.CALLOUT,\n editor,\n runEditorCommand,\n tooltipContent: tooltips.callout ?? t(\"neetoEditor.menu.callout\"),\n },\n ],\n // misc\n [\n {\n type: MENU_ELEMENT_TYPES.TABLE,\n label: tooltips.table ?? t(\"neetoEditor.menu.table\"),\n isEnabled: options.includes(EDITOR_OPTIONS.TABLE),\n optionName: EDITOR_OPTIONS.TABLE,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Attachment,\n command: () => attachmentProps?.handleUploadAttachments(),\n disabled: attachmentProps?.isDisabled,\n isEnabled: options.includes(EDITOR_OPTIONS.ATTACHMENTS),\n optionName: EDITOR_OPTIONS.ATTACHMENTS,\n label: tooltips.attachments ?? t(\"neetoEditor.menu.attachments\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: File,\n command: () => {\n if (!editor || !setIsNeetoKbArticleActive) return;\n\n const { from, to } = editor.state.selection;\n const cursorPos = editor.view.coordsAtPos(from);\n\n setIsNeetoKbArticleActive({\n active: true,\n editor,\n range: { from, to },\n cursorPos,\n });\n },\n isEnabled: options.includes(EDITOR_OPTIONS.NEETO_KB_ARTICLE),\n optionName: EDITOR_OPTIONS.NEETO_KB_ARTICLE,\n label:\n tooltips.neetoKbArticle ?? t(\"neetoEditor.menu.linkToNeetoKbArticle\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: ImageUpload,\n command: () => setMediaUploader(assoc(\"image\", true)),\n isEnabled: options.includes(EDITOR_OPTIONS.IMAGE_UPLOAD),\n optionName: EDITOR_OPTIONS.IMAGE_UPLOAD,\n label: tooltips.imageUpload ?? t(\"neetoEditor.menu.imageUpload\"),\n },\n ],\n // extras\n [\n {\n type: MENU_ELEMENT_TYPES.TEXT_COLOR,\n label: tooltips.textColor ?? t(\"neetoEditor.menu.textColor\"),\n isEnabled: options.includes(EDITOR_OPTIONS.TEXT_COLOR),\n optionName: EDITOR_OPTIONS.TEXT_COLOR,\n },\n {\n type: MENU_ELEMENT_TYPES.EMOJI,\n label: tooltips.emoji ?? t(\"neetoEditor.menu.emoji\"),\n isEnabled: options.includes(EDITOR_OPTIONS.EMOJI),\n optionName: EDITOR_OPTIONS.EMOJI,\n setActive: setIsEmojiPickerActive,\n isActive: isEmojiPickerActive,\n },\n {\n type: MENU_ELEMENT_TYPES.MENTIONS,\n label: tooltips.mention ?? t(\"neetoEditor.menu.mention\"),\n isEnabled: isNotEmpty(mentions),\n optionName: \"mentions\",\n mentions,\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Code,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleCode().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.CODE),\n optionName: EDITOR_OPTIONS.CODE,\n label: tooltips.code ?? t(\"neetoEditor.menu.code\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: CodeBlock,\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleCodeBlock().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.CODE_BLOCK),\n optionName: \"codeBlock\",\n label: tooltips.codeBlock ?? t(\"neetoEditor.menu.codeBlock\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Video,\n command: () => setMediaUploader(assoc(\"video\", true)),\n isEnabled: options.includes(EDITOR_OPTIONS.VIDEO_UPLOAD),\n optionName: EDITOR_OPTIONS.VIDEO_UPLOAD,\n label: tooltips.videoUpload ?? t(\"neetoEditor.menu.videoUpload\"),\n },\n {\n type: MENU_ELEMENT_TYPES.BUTTON,\n icon: Underline,\n isEnabled: options.includes(EDITOR_OPTIONS.UNDERLINE),\n command: runEditorCommand(editor =>\n editor.chain().focus().toggleUnderline().run()\n ),\n optionName: EDITOR_OPTIONS.UNDERLINE,\n label: tooltips.underline ?? t(\"neetoEditor.menu.underline\"),\n },\n ],\n //addons\n [...addonCommandOptions],\n // history\n [\n {\n icon: Undo,\n command: runEditorCommand(editor =>\n editor.chain().focus().undo().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.UNDO),\n optionName: EDITOR_OPTIONS.UNDO,\n label: tooltips.undo ?? t(\"neetoEditor.menu.undo\"),\n type: MENU_ELEMENT_TYPES.BUTTON,\n },\n {\n icon: Redo,\n command: runEditorCommand(editor =>\n editor.chain().focus().redo().run()\n ),\n isEnabled: options.includes(EDITOR_OPTIONS.REDO),\n optionName: EDITOR_OPTIONS.REDO,\n label: tooltips.redo ?? t(\"neetoEditor.menu.redo\"),\n type: MENU_ELEMENT_TYPES.BUTTON,\n },\n ],\n ];\n};\n\nexport const buildOptionsFromAddonCommands = ({ commands, runEditorCommand }) =>\n commands.map(option => ({\n ...option,\n type: MENU_ELEMENT_TYPES.BUTTON,\n command: runEditorCommand(editor =>\n option.command?.({\n editor,\n range: {\n from: editor.state?.selection?.to,\n to: editor.state?.selection.to,\n },\n })\n ),\n }));\n\nexport const buildMenuOptions = ({\n tooltips,\n options,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n mentions = [],\n addonCommands,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n}) => {\n const addonCommandOptions = buildOptionsFromAddonCommands({\n commands: addonCommands,\n runEditorCommand,\n });\n\n const menuOptions = createMenuOptions({\n tooltips,\n setMediaUploader,\n attachmentProps,\n setIsAddLinkActive,\n options,\n mentions,\n addonCommandOptions,\n setIsEmojiPickerActive,\n isEmojiPickerActive,\n runEditorCommand,\n editor,\n setIsNeetoKbArticleActive,\n });\n\n return menuOptions.map(option => option.filter(prop(\"isEnabled\")));\n};\n\nexport const getCursorPos = (editor, to) => editor?.view.coordsAtPos(to);\n\nexport const reGroupMenuItems = (menuRef, menuGroups) => {\n const toolbarWidth = menuRef.current.offsetWidth;\n let totalWidth = 0;\n const visibleMenuGroups = [];\n const invisibleMenuGroups = [];\n menuGroups.forEach((group, groupIndex) => {\n group.forEach((item, itemIndex) => {\n const width = MENU_ELEMENT_WIDTHS[item.type];\n if (totalWidth + width < toolbarWidth) {\n totalWidth += width;\n visibleMenuGroups[groupIndex] = visibleMenuGroups[groupIndex] ?? [];\n visibleMenuGroups[groupIndex][itemIndex] = item;\n } else {\n const visibleMenuGroupsLength = visibleMenuGroups.length;\n const index = groupIndex - visibleMenuGroupsLength + 1;\n invisibleMenuGroups[index] = invisibleMenuGroups[index] ?? [];\n invisibleMenuGroups[index][itemIndex] = item;\n }\n });\n });\n\n return { visibleMenuGroups, invisibleMenuGroups };\n};\n\nexport const getLinkPopoverPosition = (editor, popoverRef) => {\n const {\n selection: {\n $to: { pos: selectionEnd },\n $from: { pos: selectionStart },\n },\n } = editor.view.state;\n const selectionLength = selectionEnd - selectionStart;\n let offset = 0;\n if (selectionLength > 1) offset = Math.round(selectionLength / 2);\n\n if (selectionLength === 1) offset = 1;\n\n // Calculate the arrow position\n const arrowCoords = editor.view.coordsAtPos(selectionStart + offset);\n const arrowPosition = {\n top: `${arrowCoords.top + 21}px`,\n left: `${arrowCoords.left - 8.5}px`,\n };\n\n // Calculate the popover position\n const popoverCoords = editor.view.coordsAtPos(selectionStart);\n let adjustedLeft = popoverCoords?.left,\n adjustedTop = popoverCoords?.top;\n if (popoverRef?.current) {\n const popoverRect = popoverRef.current?.getBoundingClientRect();\n\n const screenWidth = window.innerWidth;\n const screenHeight = window.innerHeight;\n\n const maxLeft = screenWidth - popoverRect.width;\n const maxTop = screenHeight - popoverRect.height - 50;\n\n adjustedLeft = popoverCoords?.left\n ? Math.min(popoverCoords.left - 50, maxLeft)\n : 0;\n\n adjustedTop = popoverCoords?.top\n ? Math.min(popoverCoords.top - 22, maxTop)\n : 0;\n } else {\n adjustedLeft = popoverCoords.left - 50;\n adjustedTop = popoverCoords.top - 22;\n }\n\n const popoverPosition = {\n top: `${adjustedTop}px`,\n left: `${adjustedLeft}px`,\n };\n\n return { arrowPosition, popoverPosition };\n};\n\nexport function renderTooltipContent(label, optionName) {\n const shortcut = SHORTCUTS[optionName];\n if (!shortcut) return label;\n\n const isMac = () =>\n typeof window !== \"undefined\" &&\n /Mac|iPod|iPhone|iPad/.test(window.navigator.userAgent);\n\n const key = isMac() ? shortcut.mac : shortcut.win;\n\n return `${label} (${key})`;\n}\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { assoc, isEmpty, not } from \"ramda\";\n\nimport \"src/styles/editor/menu.scss\";\n\nimport { MENU_COMPONENTS } from \"./constants\";\n\nimport { DEFAULT_EDITOR_OPTIONS } from \"../constants\";\n\nconst Menu = props => {\n const [isEmojiPickerActive, setIsEmojiPickerActive] = useState(false);\n const [mediaUploader, setMediaUploader] = useState({\n image: false,\n video: false,\n });\n\n const {\n menuType = \"fixed\",\n addons = [],\n options = [],\n editorSecrets = {},\n attachmentProps,\n defaults = DEFAULT_EDITOR_OPTIONS,\n } = props;\n\n const MenuComponent = useMemo(() => MENU_COMPONENTS[menuType], [menuType]);\n const menuOptions = isEmpty(options) ? [...defaults, ...addons] : options;\n\n useEffect(() => {\n const handleKeyDown = e => {\n if ((e.metaKey || e.ctrlKey) && e.altKey) {\n if (e.code === \"KeyE\") {\n setIsEmojiPickerActive(prevState => !prevState);\n } else if (e.code === \"KeyA\") {\n not(attachmentProps?.isDisabled) &&\n attachmentProps?.handleUploadAttachments();\n } else if (e.code === \"KeyK\") {\n setMediaUploader(assoc(\"image\", true));\n } else if (e.code === \"KeyV\") {\n setMediaUploader(assoc(\"video\", true));\n }\n }\n };\n if (menuType !== \"none\") {\n document.addEventListener(\"keydown\", handleKeyDown);\n }\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, []);\n\n return (\n <MenuComponent\n {...{\n ...props,\n attachmentProps,\n isEmojiPickerActive,\n mediaUploader,\n setIsEmojiPickerActive,\n setMediaUploader,\n }}\n options={menuOptions}\n unsplashApiKey={editorSecrets.unsplash}\n />\n );\n};\n\nexport default Menu;\n"],"names":["CALLOUT_TYPES","type","label","t","icon","Megaphone","bgColor","Info","Warning","Danger","Success","_regenerator","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","valueOf","EmojiPickerMenu","_React$Component","_this","_classCallCheck","_len","arguments","args","Array","_key","concat","_defineProperty","React","createRef","_asyncToGenerator","_callee","_yield$emojiPickerApi","data","_context","emojiPickerApi","fetch","_ref2","event","key","props","editor","chain","focus","deleteRange","range","run","emoji","_this$props$setActive","_this$props","setEmoji","setActive","_inherits","_createClass","componentDidMount","Picker","_objectSpread","onEmojiSelect","handleSelect","style","maxWidth","theme","previewPosition","showSkinTones","fetchEmojiData","ref","render","_jsx","minWidth","Component","defaultProps","validateUrl","url","_i","_Object$values","values","URL_VALIDATORS","validator","result","MenuButton","_ref","command","optionName","highlight","_ref$disabled","disabled","isButtonDisabled","_useEditorStore","useEditorStore","useShallow","store","_store$marksState","_store$marksState2","isActive","_useEditorStore$disab","Button","className","tabIndex","tooltipProps","content","renderTooltipContent","position","onClick","generateFocusProps","memo","CalloutIcon","currentType","Icon","children","size","Flag","CalloutTypeOption","calloutType","isSelected","optionClass","classNames","_jsxs","Typography","weight","RenderCalloutOptions","isInCallout","currentCalloutAttrs","handleCalloutTypeClick","map","idx","_createElement","CalloutDropdown","tooltipContent","_useTranslation","useTranslation","dropdownRef","useRef","getAttributes","findBy","editorChain","isSameType","lift","updateAttributes","setCallout","Dropdown","autoWidth","placement","strategy","buttonProps","iconPosition","iconSize","Down","onKeyDown","_dropdownRef$current","current","click","Menu","MenuItem","SecondaryMenuTarget","hyphenate","EmojiOption","_ref$isSecondaryMenu","isSecondaryMenu","buttonStyle","closeOnSelect","Smiley","isOpen","customTarget","dropdownProps","stopPropagation","onClose","active","LinkOption","handleClose","handleAnimateInvalidLink","_useState","useState","_useState2","_slicedToArray","link","setLink","useEffect","href","handleKeyDown","handleSubmit","ALL_PROTOCOL_URL_REGEXP","test","isNotPresent","unsetLink","handleReset","autoFocus","name","placeholder","onChange","target","validateAndFormatUrl","Close","TableOption","rows","setRows","_useState3","_useState4","columns","setColumns","insertTable","cols","withHeaderRow","Label","min","withEventTargetValue","Check","createMenuOptions","tooltips","setMediaUploader","attachmentProps","setIsAddLinkActive","font","TextBold","toggleBold","tooltip","bold","TextItalic","toggleItalic","italic","Underline","toggleUnderline","underline","Link","not","TextCross","toggleStrike","strike","Highlight","toggleHighlight","block","Quote","toggleBlockquote","blockQuote","Code","toggleCode","code","CodeBlock","toggleCodeBlock","codeBlock","list","ListDot","toggleBulletList","bulletList","ListNumber","toggleOrderedList","orderedList","misc","Attachment","handleUploadAttachments","isDisabled","attachments","ImageUpload","assoc","imageUpload","Video","videoUpload","right","Undo","undo","can","Redo","redo","buildBubbleMenuOptions","options","menuOptions","fromPairs","option","filter","item","includes","getTextMenuDropdownOptions","_ref3","textOptions","EDITOR_OPTIONS","H1","TextH1","level","setNode","H2","TextH2","H3","TextH3","PARAGRAPH","TextP","forEach","push","getNodeIcon","_options$find","find","prop","renderOptionButton","_ref4","Mentions","mentions","isEmpty","Email","imageUrl","commands","setMention","id","Avatar","user","TextColorOption","setIsOpen","color","setColor","dropdownWrapperRef","handleSave","handleUnset","unsetColor","useOnClickOutside","preventDefault","openColorPicker","Customize","HexColorPicker","Input","Refresh","Options","setIsInvalidLink","isLinkOptionActive","isTableOptionActive","setIsLinkOptionActive","setIsTableOptionActive","isEmojiPickerActive","setIsEmojiPickerActive","dropdownOptions","isEmojiActive","EMOJI","isTextColorOptionActive","TEXT_COLOR","isLinkActive","LINK","isTableActive","TABLE","_buildBubbleMenuOptio","fontStyleOptions","blockStyleOptions","listStyleOptions","setTimeout","_Fragment","buttonSize","textColor","Column","table","mention","Bubble","_ref$mentions","_ref$tooltips","isInvalidLink","_useState5","_useState6","selectedNode","view","state","selection","node","isImageNodeSelected","bubbleMenuOptions","BOLD","ITALIC","UNDERLINE","STRIKETHROUGH","noTextOptions","BubbleMenuTipTap","zIndex","classnames","offset","onHide","EmptyMenu","Progress","withT","queuedFiles","cancelUpload","filename","_ref2$progress","progress","FileIcon","fileName","width","Tooltip","LocalUploader","isImage","insertMediaToEditor","setIsUploading","uploadConfig","DEFAULT_IMAGE_UPLOAD_CONFIG","DEFAULT_VIDEO_UPLOAD_CONFIG","fileInputRef","dropTargetRef","_useFileUploader","useFileUploader","config","setIsUploadingOnHost","addFiles","uploadFiles","isUploading","handleFilesDrop","files","uploadedFiles","_x","useDropFiles","onDrop","handleAddFile","_callee2","_context2","_x2","_fileInputRef$current","multiple","accept","ALLOWED_IMAGE_TYPES","join","ALLOWED_VIDEO_TYPES","entity","convertToFileSize","restrictions","maxFileSize","VideoEmbedForm","onEmbedVideo","onAttachVideo","initialValues","onSubmit","embedUrl","Form","formikProps","validationSchema","VIDEO_EMBED_FORM_VALIDATION_SCHEMA","dirty","isSubmitting","resetForm","unlimitedChars","ActionBlock","cancelButtonProps","submitButtonProps","loading","MediaUploader","mediaUploader","_ref$showAssetLibrary","showAssetLibrary","activeTab","setActiveTab","image","video","tabs","setTabs","getTabs","file","_file$filename","_file$caption","caption","mediaAttrs","src","alt","setMedia","setFigure","setVideo","tr","doc","resolve","to","end","safePosition","Math","insertContentAt","onUploadComplete","_t","signedId","directUploadsApi","attach","signed_id","Toastr","error","originalUrl","setExternalVideo","Modal","closeButton","closeOnOutsideClick","Tab","title","Item","ImageUploader","LinkAddPopOver","isAddLinkActive","openLinkInNewTab","_editor$state$selecti","from","text","textBetween","linkText","setLinkText","linkUrl","setLinkUrl","openInNewTab","setOpenInNewTab","_useState7","_useState8","setError","_useState9","getCursorPos","_useState0","popoverPosition","setPopoverPosition","_useState1","top","left","_useState10","arrowPosition","setArrowPosition","popoverRef","isLinkTextPresent","isLinlUrlPresent","isSubmitDisabled","popoverStyle","display","transform","handleAddLink","_editor$view","dispatch","_state$selection","formattedUrl","attrs","linkMark","schema","marks","linkTextWithMark","replaceWith","removePopover","updatePopoverPosition","_getLinkPopoverPositi","getLinkPopoverPosition","window","addEventListener","removeEventListener","createPortal","required","onFocus","Checkbox","checked","document","body","MoreMenu","groups","MenuHorizontal","group","_objectWithoutProperties","_excluded","MENU_ELEMENTS","MENU_ELEMENT_TYPES","BUTTON","EDITOR_MARKS","UNDO","REDO","HIGHLIGHT","CALLOUT","CODE","ATTACHMENTS","IMAGE_UPLOAD","VIDEO_UPLOAD","NEETO_KB_ARTICLE","useEditorState","neetoKbArticleState","setMarksState","marksState","handleSelectionUpdate","useCallback","activeMarks","mark","activeFontSizeOption","FONT_SIZE_OPTIONS","last","updateHistoryOptionsState","undoOptionState","redoOptionState","updatedMarksState","noop","on","off","MenuDynamicVariables","_ref$variables","variables","_ref$standalone","standalone","handleVariableClick","category","categoryLabel","variableName","variableLabel","setVariable","DynamicVariables","onVariableClick","Fixed","_ref$addonCommands","addonCommands","_ref$isIndependant","isIndependant","setIsNeetoKbArticleActive","focusedButtonIndex","setFocusedButtonIndex","menuItems","setMenuItems","moreMenuItems","setMoreMenuItems","editorRef","menuRef","menuContainerRef","runEditorCommand","handleArrowNavigation","prevIndex","menuButtons","useMemo","_menuRef$current","querySelectorAll","menuItem","menuGroups","buildMenuOptions","handleResize","_reGroupMenuItems","reGroupMenuItems","visibleMenuGroups","invisibleMenuGroups","menuContainer","resizeObserver","ResizeObserver","observe","unobserve","isMediaUploaderActive","isNotEmpty","_ref$icon","_ref$onClick","otherProps","hideOnEsc","defaultValue","fn","hide","_ref$props","toLowerCase","onShow","_ref2$onClose","_ref2$buttonProps","mounted","setMounted","Tippy","interactive","animation","arrow","duration","hideOnClick","plugins","popperOptions","role","trigger","visible","onClickOutside","onHidden","onMount","Emoji","delay","EmojiPicker","Option","i18n","File","buildOptionsFromAddonCommands","_option$active","_option$command","Headless","addonCommandOptions","allOptions","_toConsumableArray","TextH4","TextH5","MENU_COMPONENTS","fixed","FixedMenu","bubble","BubbleMenu","headless","HeadlessMenu","none","FontSizeOption","_ref$options","lastOption","fontSizeOption","_useEditorStore$fontS","activeOption","handleClick","toggleHeading","filterBy","ColorDot","_colorVar$match","colorVar","isTextColor","dotClass","dotStyle","backgroundColor","colorNumber","match","hyphenize","COLORS","background","colorSections","colors","HighlightDropdown","updateBackgroundColor","setMark","handleBackgroundColorClick","handleTextColorClick","renderColorDots","colorList","undefined","handleDropdownClick","FONT_SIZE","MENTIONS","SHORTCUTS","_SHORTCUTS","mac","win","MENU_ELEMENT_WIDTHS","_tooltips$fontSize","_tooltips$bold","_tooltips$italic","_tooltips$link","_tooltips$strike","_tooltips$highlight","_tooltips$highlight2","_tooltips$bulletList","_tooltips$orderedList","_tooltips$todoList","_tooltips$blockQuote","_tooltips$callout","_tooltips$callout2","_tooltips$table","_tooltips$attachments","_tooltips$neetoKbArti","_tooltips$imageUpload","_tooltips$textColor","_tooltips$emoji","_tooltips$mention","_tooltips$code","_tooltips$codeBlock","_tooltips$videoUpload","_tooltips$underline","_tooltips$undo","_tooltips$redo","fontSizeOptions","fontSize","isEnabled","LIST_BULLETS","LIST_ORDERED","toggleTaskList","TODO_LIST","todoList","BLOCKQUOTE","callout","cursorPos","coordsAtPos","neetoKbArticle","CODE_BLOCK","_editor$state","_editor$state2","_ref3$mentions","toolbarWidth","offsetWidth","totalWidth","groupIndex","itemIndex","_visibleMenuGroups$gr","_invisibleMenuGroups$","visibleMenuGroupsLength","index","_editor$view$state$se","selectionEnd","$to","pos","selectionStart","$from","selectionLength","round","arrowCoords","popoverCoords","adjustedLeft","adjustedTop","_popoverRef$current","popoverRect","getBoundingClientRect","screenWidth","innerWidth","screenHeight","innerHeight","maxLeft","maxTop","height","shortcut","isMac","navigator","userAgent","_props$menuType","menuType","_props$addons","addons","_props$options","_props$editorSecrets","editorSecrets","_props$defaults","defaults","DEFAULT_EDITOR_OPTIONS","MenuComponent","metaKey","ctrlKey","altKey","prevState","unsplashApiKey","unsplash"],"mappings":"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"}
|