@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.
Files changed (103) hide show
  1. package/dist/.ready +1 -1
  2. package/dist/Editor.js +7 -6
  3. package/dist/Editor.js.map +1 -1
  4. package/dist/EditorContent.js +4 -3
  5. package/dist/EditorContent.js.map +1 -1
  6. package/dist/FormikEditor.js +7 -6
  7. package/dist/FormikEditor.js.map +1 -1
  8. package/dist/Menu.js +5 -4
  9. package/dist/Menu.js.map +1 -1
  10. package/dist/{chunk-DxmX0drN.js → chunk-7ioLE0kx.js} +2 -2
  11. package/dist/{chunk-DxmX0drN.js.map → chunk-7ioLE0kx.js.map} +1 -1
  12. package/dist/{chunk-MLCxAQf7.js → chunk-BNyLNMnb.js} +3 -3
  13. package/dist/{chunk-MLCxAQf7.js.map → chunk-BNyLNMnb.js.map} +1 -1
  14. package/dist/{cjs/chunk-Crp27WMe.cjs.js → chunk-BpMZjml2.js} +147 -3234
  15. package/dist/chunk-BpMZjml2.js.map +1 -0
  16. package/dist/{chunk-C_P2M3zF.js → chunk-Br5h7rjn.js} +7 -3
  17. package/dist/chunk-Br5h7rjn.js.map +1 -0
  18. package/dist/{chunk-Di3ipdfT.js → chunk-CRUXOawK.js} +3 -2
  19. package/dist/{chunk-Di3ipdfT.js.map → chunk-CRUXOawK.js.map} +1 -1
  20. package/dist/chunk-DN9pYQV5.js +3210 -0
  21. package/dist/chunk-DN9pYQV5.js.map +1 -0
  22. package/dist/{chunk-DbtYYDYF.js → chunk-DYRpf9PJ.js} +3 -3
  23. package/dist/{chunk-DbtYYDYF.js.map → chunk-DYRpf9PJ.js.map} +1 -1
  24. package/dist/{chunk-CTLN7kYv.js → chunk-DfH1lF5p.js} +3 -17
  25. package/dist/chunk-DfH1lF5p.js.map +1 -0
  26. package/dist/{chunk-Byc0nnPW.js → chunk-YhV82e9I.js} +8 -4
  27. package/dist/chunk-YhV82e9I.js.map +1 -0
  28. package/dist/{chunk-BAjN56q8.js → chunk-lEnpEBRB.js} +5 -4
  29. package/dist/{chunk-BAjN56q8.js.map → chunk-lEnpEBRB.js.map} +1 -1
  30. package/dist/{chunk-CrQm8ki8.js → chunk-sn8HEeT6.js} +4 -3
  31. package/dist/{chunk-CrQm8ki8.js.map → chunk-sn8HEeT6.js.map} +1 -1
  32. package/dist/cjs/Editor.cjs.js +8 -7
  33. package/dist/cjs/Editor.cjs.js.map +1 -1
  34. package/dist/cjs/EditorContent.cjs.js +4 -3
  35. package/dist/cjs/EditorContent.cjs.js.map +1 -1
  36. package/dist/cjs/FormikEditor.cjs.js +7 -6
  37. package/dist/cjs/FormikEditor.cjs.js.map +1 -1
  38. package/dist/cjs/Menu.cjs.js +5 -4
  39. package/dist/cjs/Menu.cjs.js.map +1 -1
  40. package/dist/cjs/{chunk-CwtiYxqr.cjs.js → chunk-78VpxO0R.cjs.js} +4 -3
  41. package/dist/cjs/{chunk-CwtiYxqr.cjs.js.map → chunk-78VpxO0R.cjs.js.map} +1 -1
  42. package/dist/{chunk-DgZGzqPs.js → cjs/chunk-BPJBeVDI.cjs.js} +166 -3206
  43. package/dist/cjs/chunk-BPJBeVDI.cjs.js.map +1 -0
  44. package/dist/cjs/{chunk-Ty2BpOZ5.cjs.js → chunk-CBswWnmM.cjs.js} +10 -6
  45. package/dist/cjs/chunk-CBswWnmM.cjs.js.map +1 -0
  46. package/dist/cjs/{chunk-Bsk_FDUA.cjs.js → chunk-CQLQEN5P.cjs.js} +5 -22
  47. package/dist/cjs/chunk-CQLQEN5P.cjs.js.map +1 -0
  48. package/dist/cjs/{chunk-CohcWDmm.cjs.js → chunk-CwY6UgZq.cjs.js} +78 -77
  49. package/dist/cjs/{chunk-CohcWDmm.cjs.js.map → chunk-CwY6UgZq.cjs.js.map} +1 -1
  50. package/dist/cjs/chunk-DRnP2LQe.cjs.js +3231 -0
  51. package/dist/cjs/chunk-DRnP2LQe.cjs.js.map +1 -0
  52. package/dist/cjs/{chunk-D9InNR1-.cjs.js → chunk-QnVNXaqt.cjs.js} +11 -7
  53. package/dist/cjs/chunk-QnVNXaqt.cjs.js.map +1 -0
  54. package/dist/cjs/{chunk-D53HfRZd.cjs.js → chunk-V1V-Gqfy.cjs.js} +3 -3
  55. package/dist/cjs/{chunk-D53HfRZd.cjs.js.map → chunk-V1V-Gqfy.cjs.js.map} +1 -1
  56. package/dist/cjs/{chunk-CkdAygKd.cjs.js → chunk-bfmPXyQJ.cjs.js} +3 -3
  57. package/dist/cjs/{chunk-CkdAygKd.cjs.js.map → chunk-bfmPXyQJ.cjs.js.map} +1 -1
  58. package/dist/cjs/{chunk-BwE6pvh2.cjs.js → chunk-bxP1kilM.cjs.js} +2 -2
  59. package/dist/cjs/{chunk-BwE6pvh2.cjs.js.map → chunk-bxP1kilM.cjs.js.map} +1 -1
  60. package/dist/cjs/{chunk-BAEoAF1o.cjs.js → chunk-j4T5BDua.cjs.js} +23 -22
  61. package/dist/cjs/{chunk-BAEoAF1o.cjs.js.map → chunk-j4T5BDua.cjs.js.map} +1 -1
  62. package/dist/cjs/index.cjs.js +9 -8
  63. package/dist/cjs/index.cjs.js.map +1 -1
  64. package/dist/cjs/utils.cjs.js +7 -6
  65. package/dist/cjs/utils.cjs.js.map +1 -1
  66. package/dist/cjs/v2/Editor.cjs.js +7 -6
  67. package/dist/cjs/v2/Editor.cjs.js.map +1 -1
  68. package/dist/cjs/v2/EditorContent.cjs.js +4 -3
  69. package/dist/cjs/v2/EditorContent.cjs.js.map +1 -1
  70. package/dist/cjs/v2/FormikEditor.cjs.js +6 -5
  71. package/dist/cjs/v2/FormikEditor.cjs.js.map +1 -1
  72. package/dist/cjs/v2/Menu.cjs.js +4 -3
  73. package/dist/cjs/v2/Menu.cjs.js.map +1 -1
  74. package/dist/cjs/v2/index.cjs.js +8 -7
  75. package/dist/cjs/v2/index.cjs.js.map +1 -1
  76. package/dist/cjs/v2/utils.cjs.js +7 -6
  77. package/dist/cjs/v2/utils.cjs.js.map +1 -1
  78. package/dist/editor-stats.html +2 -2
  79. package/dist/index.js +9 -8
  80. package/dist/index.js.map +1 -1
  81. package/dist/utils.js +7 -6
  82. package/dist/utils.js.map +1 -1
  83. package/dist/v2/Editor.js +6 -5
  84. package/dist/v2/Editor.js.map +1 -1
  85. package/dist/v2/EditorContent.js +4 -3
  86. package/dist/v2/EditorContent.js.map +1 -1
  87. package/dist/v2/FormikEditor.js +6 -5
  88. package/dist/v2/FormikEditor.js.map +1 -1
  89. package/dist/v2/Menu.js +4 -3
  90. package/dist/v2/Menu.js.map +1 -1
  91. package/dist/v2/index.js +8 -7
  92. package/dist/v2/index.js.map +1 -1
  93. package/dist/v2/utils.js +7 -6
  94. package/dist/v2/utils.js.map +1 -1
  95. package/package.json +7 -5
  96. package/dist/chunk-Byc0nnPW.js.map +0 -1
  97. package/dist/chunk-CTLN7kYv.js.map +0 -1
  98. package/dist/chunk-C_P2M3zF.js.map +0 -1
  99. package/dist/chunk-DgZGzqPs.js.map +0 -1
  100. package/dist/cjs/chunk-Bsk_FDUA.cjs.js.map +0 -1
  101. package/dist/cjs/chunk-Crp27WMe.cjs.js.map +0 -1
  102. package/dist/cjs/chunk-D9InNR1-.cjs.js.map +0 -1
  103. package/dist/cjs/chunk-Ty2BpOZ5.cjs.js.map +0 -1
@@ -10,9 +10,10 @@ import { createRoot } from 'react-dom/client';
10
10
  import { a as EDITOR_SIZES } from './chunk-UwzgbfZD.js';
11
11
  import { n } from './chunk-C2dztUxs.js';
12
12
  import '@bigbinary/neeto-cist';
13
+ import './chunk-BpMZjml2.js';
13
14
  import './chunk-CNIDH-FD.js';
14
- import { c as convertPlainTextToHtml, s as substituteVariables, a as applySyntaxHighlightingAndLineNumbers, b as applyLineHighlighting } from './chunk-DbtYYDYF.js';
15
- import { r as removeEmptyTags, E as EDITOR_CONTENT_DEFAULT_CONFIGURATION, S as SANITIZE_OPTIONS, b as EDITOR_CONTENT_CLASS_NAME } from './chunk-CTLN7kYv.js';
15
+ import { c as convertPlainTextToHtml, s as substituteVariables, a as applySyntaxHighlightingAndLineNumbers, b as applyLineHighlighting } from './chunk-DYRpf9PJ.js';
16
+ import { r as removeEmptyTags, E as EDITOR_CONTENT_DEFAULT_CONFIGURATION, S as SANITIZE_OPTIONS, b as EDITOR_CONTENT_CLASS_NAME } from './chunk-DfH1lF5p.js';
16
17
  import { useOnClickOutside } from '@bigbinary/neeto-commons-frontend/react-utils';
17
18
  import Close from '@bigbinary/neeto-icons/Close';
18
19
  import Button from '@bigbinary/neetoui/Button';
@@ -22,7 +23,7 @@ import { useTranslation } from 'react-i18next';
22
23
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
23
24
  import 'i18next';
24
25
  import 'yup';
25
- import './chunk-DxmX0drN.js';
26
+ import './chunk-7ioLE0kx.js';
26
27
  import './chunk-BFTU3MAI.js';
27
28
  import 'react-dom/server';
28
29
  import '@babel/runtime/helpers/toConsumableArray';
@@ -1 +1 @@
1
- {"version":3,"file":"EditorContent.js","sources":["../app/javascript/src/components/EditorContent/ImagePreview.jsx","../app/javascript/src/components/EditorContent/utils/headers.js","../app/javascript/src/components/EditorContent/utils/todoCheckbox.js","../app/javascript/src/components/EditorContent/index.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport { createPortal } from \"react-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ImagePreview = ({ imagePreviewDetails, setImagePreviewDetails }) => {\n const [isLoading, setIsLoading] = useState(true);\n\n const { t } = useTranslation();\n\n const imagePreviewRef = useRef(null);\n\n useOnClickOutside(imagePreviewRef, () => setImagePreviewDetails(null), {\n enabled: true,\n });\n\n useEffect(() => {\n if (!imagePreviewRef.current) return;\n\n imagePreviewRef.current.setAttribute(\"tabindex\", \"-1\");\n imagePreviewRef.current.focus();\n }, []);\n\n const handleKeyDown = e => {\n e.stopPropagation();\n e.key === \"Escape\" && setImagePreviewDetails(null);\n };\n\n return createPortal(\n <div className=\"ne-image-preview-wrapper active\">\n {isLoading && <Spinner className=\"ne-image-preview-wrapper__spinner\" />}\n {!isLoading && (\n <div className=\"close-button\">\n <Button\n icon={Close}\n style=\"secondary\"\n onClick={() => setImagePreviewDetails(null)}\n />\n </div>\n )}\n <div\n className={classnames(\"ne-image-preview\", {\n \"image-loaded\": !isLoading,\n })}\n >\n <img\n alt={t(\"neetoEditor.editorContent.imagePreviewAltText\")}\n ref={imagePreviewRef}\n src={imagePreviewDetails.src}\n onKeyDown={handleKeyDown}\n onLoad={() => setIsLoading(false)}\n />\n {imagePreviewDetails && (\n <p className=\"ne-image-preview__caption\">\n {imagePreviewDetails.caption}\n </p>\n )}\n </div>\n </div>,\n document.body\n );\n};\n\nexport default ImagePreview;\n","const buildLinkSVG = () => {\n const svgNS = \"http://www.w3.org/2000/svg\";\n\n const svgWrapper = document.createElement(\"span\");\n svgWrapper.classList.add(\"header-link-icon-wrapper\");\n const svg = document.createElementNS(svgNS, \"svg\");\n svg.setAttribute(\"aria-hidden\", \"true\");\n svg.setAttribute(\"height\", \"20\");\n svg.setAttribute(\"viewBox\", \"0 0 16 16\");\n svg.setAttribute(\"width\", \"20\");\n\n const path = document.createElementNS(svgNS, \"path\");\n path.setAttribute(\n \"d\",\n \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n );\n\n svg.appendChild(path);\n svgWrapper.appendChild(svg);\n\n return svgWrapper;\n};\n\nconst convertTextToId = text =>\n text\n .trim()\n .toLowerCase()\n .replace(/[^a-z0-9\\s]/g, \"\")\n .replace(/\\s+/g, \"-\");\n\nexport const buildHeaderLinks = editorContentNode => {\n const headerTags = editorContentNode.querySelectorAll(\n \"h1, h2, h3, h4, h5, h6\"\n );\n const usedIds = new Map();\n\n headerTags.forEach(heading => {\n if (heading.getAttribute(\"data-link\") === \"false\") {\n return;\n }\n\n let headingId = convertTextToId(heading.textContent);\n if (usedIds.has(headingId)) {\n const count = usedIds.get(headingId);\n usedIds.set(headingId, count + 1);\n headingId = `${headingId}-${count}`;\n } else usedIds.set(headingId, 1);\n\n heading.setAttribute(\"id\", headingId);\n\n const wrapper = document.createElement(\"div\");\n const anchor = document.createElement(\"a\");\n\n wrapper.classList.add(\"header-wrapper\");\n anchor.setAttribute(\"href\", `#${headingId}`);\n anchor.classList.add(\"header-wrapper__link\");\n anchor.appendChild(buildLinkSVG());\n\n wrapper.appendChild(heading.cloneNode(true));\n wrapper.appendChild(anchor);\n heading.replaceWith(wrapper);\n });\n};\n","export const handleTodoCheckboxClick = (event, editorContentRef, onChange) => {\n if (\n !(\n event.target.type === \"checkbox\" &&\n event.target.closest('ul[data-type=\"todoList\"] li[data-type=\"taskItem\"]')\n )\n ) {\n return;\n }\n\n const checkbox = event.target;\n const listItem = checkbox.closest(\"li\");\n\n if (listItem) {\n listItem.setAttribute(\"data-checked\", checkbox.checked.toString());\n\n if (checkbox.checked) {\n checkbox.setAttribute(\"checked\", \"checked\");\n } else {\n checkbox.removeAttribute(\"checked\");\n }\n\n onChange?.(editorContentRef?.innerHTML);\n }\n};\n\nexport const syncTodoCheckboxStates = editorContentRef => {\n if (!editorContentRef) return;\n\n const todoItems = editorContentRef.querySelectorAll(\n `ul[data-type=\"todoList\"] li[data-type=\"taskItem\"]`\n );\n\n todoItems.forEach(listItem => {\n const isChecked = listItem.getAttribute(\"data-checked\") === \"true\";\n const checkbox = listItem.querySelector('input[type=\"checkbox\"]');\n\n if (checkbox) {\n checkbox.checked = isChecked;\n\n if (isChecked) {\n checkbox.setAttribute(\"checked\", \"checked\");\n } else {\n checkbox.removeAttribute(\"checked\");\n }\n }\n });\n};\n","import { memo, useEffect, useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport DOMPurify from \"dompurify\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { isNil } from \"ramda\";\nimport { createRoot } from \"react-dom/client\";\n\nimport { EDITOR_SIZES } from \"src/common/constants\";\nimport \"src/styles/editor/editor-content.scss\";\nimport { removeEmptyTags } from \"utils\";\n\nimport {\n EDITOR_CONTENT_CLASS_NAME,\n EDITOR_CONTENT_DEFAULT_CONFIGURATION,\n SANITIZE_OPTIONS,\n} from \"./constants\";\nimport ImagePreview from \"./ImagePreview\";\nimport {\n substituteVariables,\n applyLineHighlighting,\n applySyntaxHighlightingAndLineNumbers,\n convertPlainTextToHtml,\n} from \"./utils\";\nimport { buildHeaderLinks } from \"./utils/headers\";\nimport {\n handleTodoCheckboxClick,\n syncTodoCheckboxStates,\n} from \"./utils/todoCheckbox\";\n\nconst EditorContent = ({\n content = \"\",\n variables = [],\n className,\n size = EDITOR_SIZES.SMALL,\n configuration = EDITOR_CONTENT_DEFAULT_CONFIGURATION,\n onChange,\n onClick,\n ...otherProps\n}) => {\n const [imagePreviewDetails, setImagePreviewDetails] = useState(null);\n const editorContentRef = useRef(null);\n\n const htmlContent = convertPlainTextToHtml(\n substituteVariables(\n applySyntaxHighlightingAndLineNumbers(removeEmptyTags(content)),\n variables\n )\n );\n const sanitize = DOMPurify.sanitize;\n\n const handleContentClick = event => {\n handleTodoCheckboxClick(event, editorContentRef.current, onChange);\n\n onClick?.(event);\n };\n\n const injectCopyButtonToCodeBlocks = () => {\n const preTags = editorContentRef.current?.querySelectorAll(\n `.${EDITOR_CONTENT_CLASS_NAME} pre`\n );\n\n preTags.forEach(preTag => {\n const button = document.createElement(\"div\");\n button.className = \"neeto-editor-codeblock-options\";\n const root = createRoot(button);\n root.render(\n <CopyToClipboardButton\n size=\"small\"\n style=\"tertiary\"\n value={preTag.textContent}\n />\n );\n preTag.appendChild(button);\n });\n };\n\n const bindImageClickListener = () => {\n const figureTags = editorContentRef.current?.querySelectorAll(\n `.${EDITOR_CONTENT_CLASS_NAME} figure`\n );\n\n figureTags.forEach(figureTag => {\n const image = figureTag.querySelector(\"img\");\n const link = figureTag.querySelector(\"a\");\n if (isNil(image) || isNil(link)) return;\n\n figureTag.addEventListener(\"click\", event => {\n event.preventDefault();\n const caption = figureTag.querySelector(\"figcaption\")?.innerText;\n setImagePreviewDetails({ src: image.src, caption });\n });\n });\n };\n\n useEffect(() => {\n injectCopyButtonToCodeBlocks();\n bindImageClickListener();\n syncTodoCheckboxStates(editorContentRef.current);\n applyLineHighlighting(editorContentRef.current);\n configuration.enableHeaderLinks &&\n buildHeaderLinks(editorContentRef.current);\n }, [content]);\n\n return (\n <>\n <div\n data-testid=\"neeto-editor-content\"\n ref={editorContentRef}\n className={classnames(EDITOR_CONTENT_CLASS_NAME, {\n [className]: className,\n [`neeto-editor-size--${size}`]: true,\n })}\n dangerouslySetInnerHTML={{\n __html: sanitize(htmlContent, SANITIZE_OPTIONS),\n }}\n onClick={handleContentClick}\n {...otherProps}\n />\n {imagePreviewDetails && (\n <ImagePreview {...{ imagePreviewDetails, setImagePreviewDetails }} />\n )}\n </>\n );\n};\n\nexport default memo(EditorContent);\n"],"names":["ImagePreview","_ref","imagePreviewDetails","setImagePreviewDetails","_useState","useState","_useState2","_slicedToArray","isLoading","setIsLoading","_useTranslation","useTranslation","t","imagePreviewRef","useRef","useOnClickOutside","enabled","useEffect","current","setAttribute","focus","handleKeyDown","e","stopPropagation","key","createPortal","_jsxs","className","children","_jsx","Spinner","Button","icon","Close","style","onClick","classnames","alt","ref","src","onKeyDown","onLoad","caption","document","body","buildLinkSVG","svgNS","svgWrapper","createElement","classList","add","svg","createElementNS","path","appendChild","convertTextToId","text","trim","toLowerCase","replace","buildHeaderLinks","editorContentNode","headerTags","querySelectorAll","usedIds","Map","forEach","heading","getAttribute","headingId","textContent","has","count","get","set","concat","wrapper","anchor","cloneNode","replaceWith","handleTodoCheckboxClick","event","editorContentRef","onChange","target","type","closest","checkbox","listItem","checked","toString","removeAttribute","innerHTML","syncTodoCheckboxStates","todoItems","isChecked","querySelector","EditorContent","_ref$content","content","_ref$variables","variables","_ref$size","size","EDITOR_SIZES","SMALL","_ref$configuration","configuration","EDITOR_CONTENT_DEFAULT_CONFIGURATION","otherProps","_objectWithoutProperties","_excluded","htmlContent","convertPlainTextToHtml","substituteVariables","applySyntaxHighlightingAndLineNumbers","removeEmptyTags","sanitize","DOMPurify","handleContentClick","injectCopyButtonToCodeBlocks","_editorContentRef$cur","preTags","EDITOR_CONTENT_CLASS_NAME","preTag","button","root","createRoot","render","CopyToClipboardButton","value","bindImageClickListener","_editorContentRef$cur2","figureTags","figureTag","image","link","isNil","addEventListener","_figureTag$querySelec","preventDefault","innerText","applyLineHighlighting","enableHeaderLinks","_Fragment","_objectSpread","_defineProperty","dangerouslySetInnerHTML","__html","SANITIZE_OPTIONS","memo"],"mappings":"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"}
1
+ {"version":3,"file":"EditorContent.js","sources":["../app/javascript/src/components/EditorContent/ImagePreview.jsx","../app/javascript/src/components/EditorContent/utils/headers.js","../app/javascript/src/components/EditorContent/utils/todoCheckbox.js","../app/javascript/src/components/EditorContent/index.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport { createPortal } from \"react-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ImagePreview = ({ imagePreviewDetails, setImagePreviewDetails }) => {\n const [isLoading, setIsLoading] = useState(true);\n\n const { t } = useTranslation();\n\n const imagePreviewRef = useRef(null);\n\n useOnClickOutside(imagePreviewRef, () => setImagePreviewDetails(null), {\n enabled: true,\n });\n\n useEffect(() => {\n if (!imagePreviewRef.current) return;\n\n imagePreviewRef.current.setAttribute(\"tabindex\", \"-1\");\n imagePreviewRef.current.focus();\n }, []);\n\n const handleKeyDown = e => {\n e.stopPropagation();\n e.key === \"Escape\" && setImagePreviewDetails(null);\n };\n\n return createPortal(\n <div className=\"ne-image-preview-wrapper active\">\n {isLoading && <Spinner className=\"ne-image-preview-wrapper__spinner\" />}\n {!isLoading && (\n <div className=\"close-button\">\n <Button\n icon={Close}\n style=\"secondary\"\n onClick={() => setImagePreviewDetails(null)}\n />\n </div>\n )}\n <div\n className={classnames(\"ne-image-preview\", {\n \"image-loaded\": !isLoading,\n })}\n >\n <img\n alt={t(\"neetoEditor.editorContent.imagePreviewAltText\")}\n ref={imagePreviewRef}\n src={imagePreviewDetails.src}\n onKeyDown={handleKeyDown}\n onLoad={() => setIsLoading(false)}\n />\n {imagePreviewDetails && (\n <p className=\"ne-image-preview__caption\">\n {imagePreviewDetails.caption}\n </p>\n )}\n </div>\n </div>,\n document.body\n );\n};\n\nexport default ImagePreview;\n","const buildLinkSVG = () => {\n const svgNS = \"http://www.w3.org/2000/svg\";\n\n const svgWrapper = document.createElement(\"span\");\n svgWrapper.classList.add(\"header-link-icon-wrapper\");\n const svg = document.createElementNS(svgNS, \"svg\");\n svg.setAttribute(\"aria-hidden\", \"true\");\n svg.setAttribute(\"height\", \"20\");\n svg.setAttribute(\"viewBox\", \"0 0 16 16\");\n svg.setAttribute(\"width\", \"20\");\n\n const path = document.createElementNS(svgNS, \"path\");\n path.setAttribute(\n \"d\",\n \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n );\n\n svg.appendChild(path);\n svgWrapper.appendChild(svg);\n\n return svgWrapper;\n};\n\nconst convertTextToId = text =>\n text\n .trim()\n .toLowerCase()\n .replace(/[^a-z0-9\\s]/g, \"\")\n .replace(/\\s+/g, \"-\");\n\nexport const buildHeaderLinks = editorContentNode => {\n const headerTags = editorContentNode.querySelectorAll(\n \"h1, h2, h3, h4, h5, h6\"\n );\n const usedIds = new Map();\n\n headerTags.forEach(heading => {\n if (heading.getAttribute(\"data-link\") === \"false\") {\n return;\n }\n\n let headingId = convertTextToId(heading.textContent);\n if (usedIds.has(headingId)) {\n const count = usedIds.get(headingId);\n usedIds.set(headingId, count + 1);\n headingId = `${headingId}-${count}`;\n } else usedIds.set(headingId, 1);\n\n heading.setAttribute(\"id\", headingId);\n\n const wrapper = document.createElement(\"div\");\n const anchor = document.createElement(\"a\");\n\n wrapper.classList.add(\"header-wrapper\");\n anchor.setAttribute(\"href\", `#${headingId}`);\n anchor.classList.add(\"header-wrapper__link\");\n anchor.appendChild(buildLinkSVG());\n\n wrapper.appendChild(heading.cloneNode(true));\n wrapper.appendChild(anchor);\n heading.replaceWith(wrapper);\n });\n};\n","export const handleTodoCheckboxClick = (event, editorContentRef, onChange) => {\n if (\n !(\n event.target.type === \"checkbox\" &&\n event.target.closest('ul[data-type=\"todoList\"] li[data-type=\"taskItem\"]')\n )\n ) {\n return;\n }\n\n const checkbox = event.target;\n const listItem = checkbox.closest(\"li\");\n\n if (listItem) {\n listItem.setAttribute(\"data-checked\", checkbox.checked.toString());\n\n if (checkbox.checked) {\n checkbox.setAttribute(\"checked\", \"checked\");\n } else {\n checkbox.removeAttribute(\"checked\");\n }\n\n onChange?.(editorContentRef?.innerHTML);\n }\n};\n\nexport const syncTodoCheckboxStates = editorContentRef => {\n if (!editorContentRef) return;\n\n const todoItems = editorContentRef.querySelectorAll(\n `ul[data-type=\"todoList\"] li[data-type=\"taskItem\"]`\n );\n\n todoItems.forEach(listItem => {\n const isChecked = listItem.getAttribute(\"data-checked\") === \"true\";\n const checkbox = listItem.querySelector('input[type=\"checkbox\"]');\n\n if (checkbox) {\n checkbox.checked = isChecked;\n\n if (isChecked) {\n checkbox.setAttribute(\"checked\", \"checked\");\n } else {\n checkbox.removeAttribute(\"checked\");\n }\n }\n });\n};\n","import { memo, useEffect, useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport DOMPurify from \"dompurify\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { isNil } from \"ramda\";\nimport { createRoot } from \"react-dom/client\";\n\nimport { EDITOR_SIZES } from \"src/common/constants\";\nimport \"src/styles/editor/editor-content.scss\";\nimport { removeEmptyTags } from \"utils\";\n\nimport {\n EDITOR_CONTENT_CLASS_NAME,\n EDITOR_CONTENT_DEFAULT_CONFIGURATION,\n SANITIZE_OPTIONS,\n} from \"./constants\";\nimport ImagePreview from \"./ImagePreview\";\nimport {\n substituteVariables,\n applyLineHighlighting,\n applySyntaxHighlightingAndLineNumbers,\n convertPlainTextToHtml,\n} from \"./utils\";\nimport { buildHeaderLinks } from \"./utils/headers\";\nimport {\n handleTodoCheckboxClick,\n syncTodoCheckboxStates,\n} from \"./utils/todoCheckbox\";\n\nconst EditorContent = ({\n content = \"\",\n variables = [],\n className,\n size = EDITOR_SIZES.SMALL,\n configuration = EDITOR_CONTENT_DEFAULT_CONFIGURATION,\n onChange,\n onClick,\n ...otherProps\n}) => {\n const [imagePreviewDetails, setImagePreviewDetails] = useState(null);\n const editorContentRef = useRef(null);\n\n const htmlContent = convertPlainTextToHtml(\n substituteVariables(\n applySyntaxHighlightingAndLineNumbers(removeEmptyTags(content)),\n variables\n )\n );\n const sanitize = DOMPurify.sanitize;\n\n const handleContentClick = event => {\n handleTodoCheckboxClick(event, editorContentRef.current, onChange);\n\n onClick?.(event);\n };\n\n const injectCopyButtonToCodeBlocks = () => {\n const preTags = editorContentRef.current?.querySelectorAll(\n `.${EDITOR_CONTENT_CLASS_NAME} pre`\n );\n\n preTags.forEach(preTag => {\n const button = document.createElement(\"div\");\n button.className = \"neeto-editor-codeblock-options\";\n const root = createRoot(button);\n root.render(\n <CopyToClipboardButton\n size=\"small\"\n style=\"tertiary\"\n value={preTag.textContent}\n />\n );\n preTag.appendChild(button);\n });\n };\n\n const bindImageClickListener = () => {\n const figureTags = editorContentRef.current?.querySelectorAll(\n `.${EDITOR_CONTENT_CLASS_NAME} figure`\n );\n\n figureTags.forEach(figureTag => {\n const image = figureTag.querySelector(\"img\");\n const link = figureTag.querySelector(\"a\");\n if (isNil(image) || isNil(link)) return;\n\n figureTag.addEventListener(\"click\", event => {\n event.preventDefault();\n const caption = figureTag.querySelector(\"figcaption\")?.innerText;\n setImagePreviewDetails({ src: image.src, caption });\n });\n });\n };\n\n useEffect(() => {\n injectCopyButtonToCodeBlocks();\n bindImageClickListener();\n syncTodoCheckboxStates(editorContentRef.current);\n applyLineHighlighting(editorContentRef.current);\n configuration.enableHeaderLinks &&\n buildHeaderLinks(editorContentRef.current);\n }, [content]);\n\n return (\n <>\n <div\n data-testid=\"neeto-editor-content\"\n ref={editorContentRef}\n className={classnames(EDITOR_CONTENT_CLASS_NAME, {\n [className]: className,\n [`neeto-editor-size--${size}`]: true,\n })}\n dangerouslySetInnerHTML={{\n __html: sanitize(htmlContent, SANITIZE_OPTIONS),\n }}\n onClick={handleContentClick}\n {...otherProps}\n />\n {imagePreviewDetails && (\n <ImagePreview {...{ imagePreviewDetails, setImagePreviewDetails }} />\n )}\n </>\n );\n};\n\nexport default memo(EditorContent);\n"],"names":["ImagePreview","_ref","imagePreviewDetails","setImagePreviewDetails","_useState","useState","_useState2","_slicedToArray","isLoading","setIsLoading","_useTranslation","useTranslation","t","imagePreviewRef","useRef","useOnClickOutside","enabled","useEffect","current","setAttribute","focus","handleKeyDown","e","stopPropagation","key","createPortal","_jsxs","className","children","_jsx","Spinner","Button","icon","Close","style","onClick","classnames","alt","ref","src","onKeyDown","onLoad","caption","document","body","buildLinkSVG","svgNS","svgWrapper","createElement","classList","add","svg","createElementNS","path","appendChild","convertTextToId","text","trim","toLowerCase","replace","buildHeaderLinks","editorContentNode","headerTags","querySelectorAll","usedIds","Map","forEach","heading","getAttribute","headingId","textContent","has","count","get","set","concat","wrapper","anchor","cloneNode","replaceWith","handleTodoCheckboxClick","event","editorContentRef","onChange","target","type","closest","checkbox","listItem","checked","toString","removeAttribute","innerHTML","syncTodoCheckboxStates","todoItems","isChecked","querySelector","EditorContent","_ref$content","content","_ref$variables","variables","_ref$size","size","EDITOR_SIZES","SMALL","_ref$configuration","configuration","EDITOR_CONTENT_DEFAULT_CONFIGURATION","otherProps","_objectWithoutProperties","_excluded","htmlContent","convertPlainTextToHtml","substituteVariables","applySyntaxHighlightingAndLineNumbers","removeEmptyTags","sanitize","DOMPurify","handleContentClick","injectCopyButtonToCodeBlocks","_editorContentRef$cur","preTags","EDITOR_CONTENT_CLASS_NAME","preTag","button","root","createRoot","render","CopyToClipboardButton","value","bindImageClickListener","_editorContentRef$cur2","figureTags","figureTag","image","link","isNil","addEventListener","_figureTag$querySelec","preventDefault","innerText","applyLineHighlighting","enableHeaderLinks","_Fragment","_objectSpread","_defineProperty","dangerouslySetInnerHTML","__html","SANITIZE_OPTIONS","memo"],"mappings":"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"}
@@ -8,30 +8,31 @@ import Editor from './Editor.js';
8
8
  import { jsx } from 'react/jsx-runtime';
9
9
  import '@babel/runtime/helpers/toConsumableArray';
10
10
  import '@babel/runtime/helpers/slicedToArray';
11
- import './chunk-Di3ipdfT.js';
11
+ import './chunk-CRUXOawK.js';
12
12
  import 'axios';
13
- import './chunk-DgZGzqPs.js';
13
+ import './chunk-DN9pYQV5.js';
14
+ import './chunk-BpMZjml2.js';
14
15
  import 'react-dom';
15
16
  import '@bigbinary/neeto-commons-frontend/react-utils';
16
17
  import 'zustand';
17
18
  import 'classnames';
18
19
  import '@bigbinary/neetoui/Label';
19
20
  import './chunk-UwzgbfZD.js';
20
- import './chunk-BAjN56q8.js';
21
- import './chunk-CTLN7kYv.js';
21
+ import './chunk-lEnpEBRB.js';
22
+ import './chunk-DfH1lF5p.js';
22
23
  import './chunk-BFTU3MAI.js';
23
24
  import '@bigbinary/neeto-commons-frontend/initializers';
24
25
  import '@babel/runtime/helpers/asyncToGenerator';
25
26
  import '@tanstack/react-query';
26
27
  import 'yjs';
27
28
  import './chunk-C2dztUxs.js';
28
- import './chunk-C_P2M3zF.js';
29
+ import './chunk-Br5h7rjn.js';
29
30
  import './chunk-CNIDH-FD.js';
30
31
  import 'i18next';
31
32
  import 'yup';
32
33
  import 'react-dom/server';
33
34
  import '@bigbinary/neeto-icons/misc/Megaphone';
34
- import './chunk-MLCxAQf7.js';
35
+ import './chunk-BNyLNMnb.js';
35
36
  import '@bigbinary/neeto-icons/TextH1';
36
37
  import '@bigbinary/neeto-icons/TextH2';
37
38
  import '@bigbinary/neeto-icons/TextH3';
@@ -1 +1 @@
1
- {"version":3,"file":"FormikEditor.js","sources":["../app/javascript/src/components/Editor/FormikEditor.jsx"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport { FastField } from \"formik\";\nimport { noop } from \"neetocist\";\nimport { path, pluck } from \"ramda\";\n\nimport Editor from \".\";\n\nconst FormikEditor = (\n {\n name,\n onChange = noop,\n shouldUpdate,\n attachments = [],\n mentions = [],\n variables = [],\n ...otherProps\n },\n ref\n) => {\n // Similar to the `shouldComponentUpdate` logic of FastField component.\n // https://github.com/jaredpalmer/formik/blob/main/packages/formik/src/FastField.tsx#L75-L93\n // Additionally calls the shouldUpdate function passed from the host application and compares to\n // the rest of the values.\n const internalShouldUpdate = (prevProps, nextProps) => {\n const prevFormikProps = prevProps.formik;\n const nextFormikProps = nextProps.formik;\n\n const pathParts = name.split(\".\");\n const prevError = path(pathParts, prevFormikProps.errors);\n const nextError = path(pathParts, nextFormikProps.errors);\n const prevTouched = path(pathParts, prevFormikProps.touched);\n const nextTouched = path(pathParts, nextFormikProps.touched);\n const prevAttachments = pluck(\"signedId\", prevProps.attachments).join(\"|\");\n const nextAttachments = pluck(\"signedId\", nextProps.attachments).join(\"|\");\n\n return (\n prevError !== nextError ||\n prevTouched !== nextTouched ||\n Object.keys(nextProps).length !== Object.keys(prevProps).length ||\n prevFormikProps.isSubmitting !== nextFormikProps.isSubmitting ||\n prevAttachments !== nextAttachments ||\n Boolean(shouldUpdate?.(prevProps, nextProps))\n );\n };\n\n return (\n <FastField\n {...{ attachments, mentions, name, variables }}\n shouldUpdate={internalShouldUpdate}\n >\n {({ field, form, meta }) => (\n <Editor\n {...{ attachments, mentions, name, ref, variables }}\n error={meta.touched ? meta.error : \"\"}\n initialValue={field.value}\n onBlur={() => {\n form.setFieldTouched(name, true);\n }}\n onChange={value => {\n form.setFieldValue(name, value);\n onChange?.(value);\n }}\n {...otherProps}\n />\n )}\n </FastField>\n );\n};\n\nFormikEditor.displayName = \"FormikNeetoEditor\";\n\nexport default memo(forwardRef(FormikEditor));\n"],"names":["FormikEditor","_ref","ref","name","_ref$onChange","onChange","noop","shouldUpdate","_ref$attachments","attachments","_ref$mentions","mentions","_ref$variables","variables","otherProps","_objectWithoutProperties","_excluded","internalShouldUpdate","prevProps","nextProps","prevFormikProps","formik","nextFormikProps","pathParts","split","prevError","path","errors","nextError","prevTouched","touched","nextTouched","prevAttachments","pluck","join","nextAttachments","Object","keys","length","isSubmitting","Boolean","_jsx","FastField","children","_ref2","field","form","meta","Editor","_objectSpread","error","initialValue","value","onBlur","setFieldTouched","setFieldValue","displayName","memo","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"FormikEditor.js","sources":["../app/javascript/src/components/Editor/FormikEditor.jsx"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport { FastField } from \"formik\";\nimport { noop } from \"neetocist\";\nimport { path, pluck } from \"ramda\";\n\nimport Editor from \".\";\n\nconst FormikEditor = (\n {\n name,\n onChange = noop,\n shouldUpdate,\n attachments = [],\n mentions = [],\n variables = [],\n ...otherProps\n },\n ref\n) => {\n // Similar to the `shouldComponentUpdate` logic of FastField component.\n // https://github.com/jaredpalmer/formik/blob/main/packages/formik/src/FastField.tsx#L75-L93\n // Additionally calls the shouldUpdate function passed from the host application and compares to\n // the rest of the values.\n const internalShouldUpdate = (prevProps, nextProps) => {\n const prevFormikProps = prevProps.formik;\n const nextFormikProps = nextProps.formik;\n\n const pathParts = name.split(\".\");\n const prevError = path(pathParts, prevFormikProps.errors);\n const nextError = path(pathParts, nextFormikProps.errors);\n const prevTouched = path(pathParts, prevFormikProps.touched);\n const nextTouched = path(pathParts, nextFormikProps.touched);\n const prevAttachments = pluck(\"signedId\", prevProps.attachments).join(\"|\");\n const nextAttachments = pluck(\"signedId\", nextProps.attachments).join(\"|\");\n\n return (\n prevError !== nextError ||\n prevTouched !== nextTouched ||\n Object.keys(nextProps).length !== Object.keys(prevProps).length ||\n prevFormikProps.isSubmitting !== nextFormikProps.isSubmitting ||\n prevAttachments !== nextAttachments ||\n Boolean(shouldUpdate?.(prevProps, nextProps))\n );\n };\n\n return (\n <FastField\n {...{ attachments, mentions, name, variables }}\n shouldUpdate={internalShouldUpdate}\n >\n {({ field, form, meta }) => (\n <Editor\n {...{ attachments, mentions, name, ref, variables }}\n error={meta.touched ? meta.error : \"\"}\n initialValue={field.value}\n onBlur={() => {\n form.setFieldTouched(name, true);\n }}\n onChange={value => {\n form.setFieldValue(name, value);\n onChange?.(value);\n }}\n {...otherProps}\n />\n )}\n </FastField>\n );\n};\n\nFormikEditor.displayName = \"FormikNeetoEditor\";\n\nexport default memo(forwardRef(FormikEditor));\n"],"names":["FormikEditor","_ref","ref","name","_ref$onChange","onChange","noop","shouldUpdate","_ref$attachments","attachments","_ref$mentions","mentions","_ref$variables","variables","otherProps","_objectWithoutProperties","_excluded","internalShouldUpdate","prevProps","nextProps","prevFormikProps","formik","nextFormikProps","pathParts","split","prevError","path","errors","nextError","prevTouched","touched","nextTouched","prevAttachments","pluck","join","nextAttachments","Object","keys","length","isSubmitting","Boolean","_jsx","FastField","children","_ref2","field","form","meta","Editor","_objectSpread","error","initialValue","value","onBlur","setFieldTouched","setFieldValue","displayName","memo","forwardRef"],"mappings":"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"}
package/dist/Menu.js CHANGED
@@ -3,7 +3,7 @@ import '@babel/runtime/helpers/toConsumableArray';
3
3
  import '@babel/runtime/helpers/slicedToArray';
4
4
  import 'react';
5
5
  import 'ramda';
6
- export { M as default } from './chunk-MLCxAQf7.js';
6
+ export { M as default } from './chunk-BNyLNMnb.js';
7
7
  import './chunk-CNIDH-FD.js';
8
8
  import 'react/jsx-runtime';
9
9
  import './chunk-C2dztUxs.js';
@@ -14,9 +14,10 @@ import '@bigbinary/neeto-icons/TextH3';
14
14
  import '@bigbinary/neeto-icons/TextH4';
15
15
  import '@bigbinary/neeto-icons/TextH5';
16
16
  import '@bigbinary/neeto-icons/TextP';
17
- import './chunk-Di3ipdfT.js';
17
+ import './chunk-CRUXOawK.js';
18
18
  import 'axios';
19
- import './chunk-DgZGzqPs.js';
19
+ import './chunk-DN9pYQV5.js';
20
+ import './chunk-BpMZjml2.js';
20
21
  import 'react-dom';
21
22
  import '@bigbinary/neeto-commons-frontend/react-utils';
22
23
  import 'zustand';
@@ -30,7 +31,7 @@ import '@bigbinary/neetoui/Dropdown';
30
31
  import 'react-i18next';
31
32
  import '@bigbinary/neeto-icons/Close';
32
33
  import '@bigbinary/neetoui/Button';
33
- import './chunk-C_P2M3zF.js';
34
+ import './chunk-Br5h7rjn.js';
34
35
  import '@bigbinary/neeto-commons-frontend/utils';
35
36
  import '@bigbinary/neeto-icons/Check';
36
37
  import '@bigbinary/neetoui/Label';
package/dist/Menu.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Menu.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { g as getDefaultExportFromCjs } from './chunk-BFTU3MAI.js';
2
- import { c as core } from './chunk-CTLN7kYv.js';
2
+ import { c as core } from './chunk-DfH1lF5p.js';
3
3
 
4
4
  /*
5
5
  Language: HTML, XML
@@ -12507,4 +12507,4 @@ var common = hljs;
12507
12507
  var HighlightJS = /*@__PURE__*/getDefaultExportFromCjs(common);
12508
12508
 
12509
12509
  export { HighlightJS as H };
12510
- //# sourceMappingURL=chunk-DxmX0drN.js.map
12510
+ //# sourceMappingURL=chunk-7ioLE0kx.js.map