@frontify/fondue 12.0.0-beta.14 → 12.0.0-beta.17

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 (77) hide show
  1. package/dist/components/DatePicker/DatePickerTrigger.es.js +17 -16
  2. package/dist/components/DatePicker/DatePickerTrigger.es.js.map +1 -1
  3. package/dist/components/Dropdown/Dropdown.es.js +41 -40
  4. package/dist/components/Dropdown/Dropdown.es.js.map +1 -1
  5. package/dist/components/LoadingBar/LoadingBar.d.ts +24 -0
  6. package/dist/components/LoadingBar/LoadingBar.es.js +50 -0
  7. package/dist/components/LoadingBar/LoadingBar.es.js.map +1 -0
  8. package/dist/components/LoadingBar/index.d.ts +1 -0
  9. package/dist/components/OverflowMenu/OverflowMenu.d.ts +6 -0
  10. package/dist/components/OverflowMenu/OverflowMenu.es.js +1721 -0
  11. package/dist/components/OverflowMenu/OverflowMenu.es.js.map +1 -0
  12. package/dist/components/OverflowMenu/OverflowMenuItem.d.ts +11 -0
  13. package/dist/components/OverflowMenu/OverflowMenuItem.es.js +1763 -0
  14. package/dist/components/OverflowMenu/OverflowMenuItem.es.js.map +1 -0
  15. package/dist/components/OverflowMenu/index.d.ts +1 -0
  16. package/dist/components/OverflowMenu/useOverflowMenuKeyboardNavigation.d.ts +1 -0
  17. package/dist/components/OverflowMenu/useOverflowMenuKeyboardNavigation.es.js +29 -0
  18. package/dist/components/OverflowMenu/useOverflowMenuKeyboardNavigation.es.js.map +1 -0
  19. package/dist/components/RichTextEditor/Plugins/CheckboxListPlugin/CheckboxListButton/CheckboxListToolbarButton.es.js +8 -8
  20. package/dist/components/RichTextEditor/Plugins/CheckboxListPlugin/CheckboxListButton/CheckboxListToolbarButton.es.js.map +1 -1
  21. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js +4 -2
  22. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js.map +1 -1
  23. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js +32 -27
  24. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js.map +1 -1
  25. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/FloatingLink.es.js +13 -6
  26. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/FloatingLink.es.js.map +1 -1
  27. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/InsertLinkModal/index.d.ts +1 -0
  28. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.d.ts +2 -0
  29. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js +38 -0
  30. package/dist/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js.map +1 -0
  31. package/dist/components/RichTextEditor/Plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js.map +1 -1
  32. package/dist/components/RichTextEditor/serializer/utils/serializeLeafToHtml.d.ts +1 -2
  33. package/dist/components/RichTextEditor/serializer/utils/serializeLeafToHtml.es.js.map +1 -1
  34. package/dist/components/RichTextEditor/serializer/utils/serializeNodeToHtmlRecursive.d.ts +1 -2
  35. package/dist/components/RichTextEditor/serializer/utils/serializeNodeToHtmlRecursive.es.js +23 -19
  36. package/dist/components/RichTextEditor/serializer/utils/serializeNodeToHtmlRecursive.es.js.map +1 -1
  37. package/dist/components/Tooltip/Tooltip.d.ts +2 -1
  38. package/dist/components/Tooltip/Tooltip.es.js +97 -92
  39. package/dist/components/Tooltip/Tooltip.es.js.map +1 -1
  40. package/dist/components/Tree/Node.d.ts +4 -2
  41. package/dist/components/Tree/Node.es.js +105 -99
  42. package/dist/components/Tree/Node.es.js.map +1 -1
  43. package/dist/components/Tree/Tree.d.ts +2 -0
  44. package/dist/components/Tree/Tree.es.js +39 -35
  45. package/dist/components/Tree/Tree.es.js.map +1 -1
  46. package/dist/components/index.d.ts +2 -0
  47. package/dist/index.cjs.js +10 -4
  48. package/dist/index.cjs.js.map +1 -1
  49. package/dist/index.es.js +3608 -3600
  50. package/dist/index.es.js.map +1 -1
  51. package/dist/index.umd.js +10 -4
  52. package/dist/index.umd.js.map +1 -1
  53. package/dist/node_modules/@udecode/plate-core/dist/index.es.es.js +1482 -0
  54. package/dist/node_modules/@udecode/plate-core/dist/index.es.es.js.map +1 -0
  55. package/dist/node_modules/@udecode/plate-floating/dist/index.es.es.js +21 -0
  56. package/dist/node_modules/@udecode/plate-floating/dist/index.es.es.js.map +1 -0
  57. package/dist/node_modules/@udecode/zustood/dist/index.es.es.js +439 -0
  58. package/dist/node_modules/@udecode/zustood/dist/index.es.es.js.map +1 -0
  59. package/dist/node_modules/@udecode/zustood/node_modules/react-tracked/dist/index.modern.es.js +21 -0
  60. package/dist/node_modules/@udecode/zustood/node_modules/react-tracked/dist/index.modern.es.js.map +1 -0
  61. package/dist/node_modules/hotkeys-js/dist/hotkeys.esm.es.js +275 -0
  62. package/dist/node_modules/hotkeys-js/dist/hotkeys.esm.es.js.map +1 -0
  63. package/dist/node_modules/jotai/esm/index.es.js +418 -0
  64. package/dist/node_modules/jotai/esm/index.es.js.map +1 -0
  65. package/dist/node_modules/proxy-compare/dist/index.modern.es.js +74 -0
  66. package/dist/node_modules/proxy-compare/dist/index.modern.es.js.map +1 -0
  67. package/dist/node_modules/react-hotkeys-hook/dist/react-hotkeys-hook.esm.es.js +7 -0
  68. package/dist/node_modules/react-hotkeys-hook/dist/react-hotkeys-hook.esm.es.js.map +1 -0
  69. package/dist/node_modules/zustand/esm/index.es.js +62 -0
  70. package/dist/node_modules/zustand/esm/index.es.js.map +1 -0
  71. package/dist/node_modules/zustand/esm/middleware.es.js +219 -0
  72. package/dist/node_modules/zustand/esm/middleware.es.js.map +1 -0
  73. package/dist/node_modules/zustand/esm/vanilla.es.js +26 -0
  74. package/dist/node_modules/zustand/esm/vanilla.es.js.map +1 -0
  75. package/dist/styles.css +1 -1
  76. package/dist/utilities/dnd/DndWrapper.es.js.map +1 -1
  77. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverflowMenuItem.es.js","sources":["../../../src/components/OverflowMenu/OverflowMenuItem.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport React, { MouseEvent, ReactElement } from 'react';\nimport { IconProps } from '@foundation/Icon/IconProps';\nimport { MenuItem } from '..';\nimport { getItemElementType } from '@utilities/elements';\n\nexport interface OverflowMenuItemProps {\n id?: string;\n label: string;\n link?: string;\n onClick?: (event: MouseEvent<HTMLButtonElement>) => void;\n decorator?: ReactElement<IconProps>;\n disabled?: boolean;\n}\n\nexport const OverflowMenuItem = ({\n id = 'overflow-menu-item',\n label,\n link,\n onClick,\n disabled = false,\n}: OverflowMenuItemProps) => {\n const contentElementType = getItemElementType(link, onClick);\n\n const menuItemElement = <MenuItem title={label} disabled={disabled} />;\n\n return (\n <li id={id} data-test-id=\"overflow-menu-item\">\n {contentElementType === 'a' && <a href={link}>{menuItemElement}</a>}\n {contentElementType === 'button' && (\n <button onClick={onClick} type=\"button\" disabled={disabled}>\n {menuItemElement}\n </button>\n )}\n {contentElementType === 'span' && <span>{menuItemElement}</span>}\n </li>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBO,MAAM,KAAmB,CAAC;AAAA,EAC7B,QAAK;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAW;AAAA,MACc;AACnB,QAAA,IAAqB,EAAmB,GAAM,CAAO,GAErD,IAAmB,kBAAA,cAAA,GAAA;AAAA,IAAS,OAAO;AAAA,IAAO;AAAA,EAAA,CAAoB;AAEpE,SACK,kBAAA,cAAA,MAAA;AAAA,IAAG;AAAA,IAAQ,gBAAa;AAAA,EACpB,GAAA,MAAuB,OAAQ,kBAAA,cAAA,KAAA;AAAA,IAAE,MAAM;AAAA,EAAA,GAAO,CAAgB,GAC9D,MAAuB,YACnB,kBAAA,cAAA,UAAA;AAAA,IAAO;AAAA,IAAkB,MAAK;AAAA,IAAS;AAAA,EAAA,GACnC,CACL,GAEH,MAAuB,UAAW,kBAAA,cAAA,QAAA,MAAM,CAAgB,CAC7D;AAER;"}
@@ -0,0 +1 @@
1
+ export * from './OverflowMenu';
@@ -0,0 +1 @@
1
+ export declare const useOverflowMenuKeyboardNavigation: (isMenuOpened: boolean, menuContainerRef: HTMLElement | null, focusableElementsSelector?: string) => string;
@@ -0,0 +1,29 @@
1
+ import { useState as a, useCallback as k, useEffect as c } from "react";
2
+ const E = (r, i, f = "li > button:not(:disabled)") => {
3
+ const [s, n] = a(0), [t, l] = a(), [d, u] = a(""), y = k((o) => {
4
+ if (!t || !["Tab", "ArrowDown", "ArrowUp", "Escape"].includes(o.key))
5
+ return;
6
+ const e = o.key === "Tab" && !o.shiftKey, b = o.key === "Tab" && o.shiftKey, h = o.key === "Escape", m = e || o.key === "ArrowDown", w = b || o.key === "ArrowUp";
7
+ if (b && s <= 0 || e && s >= t.length - 1 || h) {
8
+ u("CLOSE_MENU");
9
+ return;
10
+ }
11
+ m ? n(Math.min(s + 1, t.length - 1)) : w && n(Math.max(s - 1, 0)), o.preventDefault();
12
+ }, [t, s]);
13
+ return c(() => {
14
+ if (!r || !i)
15
+ return;
16
+ const o = i.querySelectorAll(f);
17
+ for (const e of o)
18
+ e.onkeydown = y;
19
+ t || l(o);
20
+ }, [r, i, t, y, f]), c(() => {
21
+ !t || t[s] && t[s].focus();
22
+ }, [s, t]), c(() => {
23
+ r || (l(void 0), u("")), n(0);
24
+ }, [r]), d;
25
+ };
26
+ export {
27
+ E as useOverflowMenuKeyboardNavigation
28
+ };
29
+ //# sourceMappingURL=useOverflowMenuKeyboardNavigation.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOverflowMenuKeyboardNavigation.es.js","sources":["../../../src/components/OverflowMenu/useOverflowMenuKeyboardNavigation.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\n\nexport const useOverflowMenuKeyboardNavigation = (\n isMenuOpened: boolean,\n menuContainerRef: HTMLElement | null,\n focusableElementsSelector = 'li > button:not(:disabled)',\n) => {\n const [currentItemIndex, setCurrentItemIndex] = useState(0);\n const [itemsElements, setItemsElements] = useState<NodeList>();\n const [menuKeyboardNavigationAction, setMenuKeyboardNavigationAction] = useState('');\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (!itemsElements || !['Tab', 'ArrowDown', 'ArrowUp', 'Escape'].includes(event.key)) {\n return;\n }\n\n const isTab = event.key === 'Tab' && !event.shiftKey;\n const isShiftTab = event.key === 'Tab' && event.shiftKey;\n const isEsc = event.key === 'Escape';\n const shouldMoveDown = isTab || event.key === 'ArrowDown';\n const shouldMoveUp = isShiftTab || event.key === 'ArrowUp';\n\n if (\n (isShiftTab && currentItemIndex <= 0) ||\n (isTab && currentItemIndex >= itemsElements.length - 1) ||\n isEsc\n ) {\n setMenuKeyboardNavigationAction('CLOSE_MENU');\n return;\n }\n\n if (shouldMoveDown) {\n setCurrentItemIndex(Math.min(currentItemIndex + 1, itemsElements.length - 1));\n } else if (shouldMoveUp) {\n setCurrentItemIndex(Math.max(currentItemIndex - 1, 0));\n }\n\n event.preventDefault();\n },\n [itemsElements, currentItemIndex],\n );\n\n useEffect(() => {\n if (!isMenuOpened || !menuContainerRef) {\n return;\n }\n\n const focusableItems = menuContainerRef.querySelectorAll(focusableElementsSelector);\n\n for (const item of focusableItems) {\n (item as HTMLButtonElement | HTMLAnchorElement).onkeydown = handleKeyDown;\n }\n\n if (!itemsElements) {\n setItemsElements(focusableItems);\n }\n }, [isMenuOpened, menuContainerRef, itemsElements, handleKeyDown, focusableElementsSelector]);\n\n useEffect(() => {\n if (!itemsElements) {\n return;\n }\n\n if (itemsElements[currentItemIndex]) {\n (itemsElements[currentItemIndex] as HTMLButtonElement).focus();\n }\n }, [currentItemIndex, itemsElements]);\n\n useEffect(() => {\n if (!isMenuOpened) {\n setItemsElements(undefined);\n setMenuKeyboardNavigationAction('');\n }\n\n setCurrentItemIndex(0);\n }, [isMenuOpened]);\n\n return menuKeyboardNavigationAction;\n};\n"],"names":[],"mappings":";AAEO,MAAM,IAAoC,CAC7C,GACA,GACA,IAA4B,iCAC3B;AACD,QAAM,CAAC,GAAkB,KAAuB,EAAS,CAAC,GACpD,CAAC,GAAe,KAAoB,EAAmB,GACvD,CAAC,GAA8B,KAAmC,EAAS,EAAE,GAE7E,IAAgB,EAClB,CAAC,MAAyB;AACtB,QAAI,CAAC,KAAiB,CAAC,CAAC,OAAO,aAAa,WAAW,QAAQ,EAAE,SAAS,EAAM,GAAG;AAC/E;AAGJ,UAAM,IAAQ,EAAM,QAAQ,SAAS,CAAC,EAAM,UACtC,IAAa,EAAM,QAAQ,SAAS,EAAM,UAC1C,IAAQ,EAAM,QAAQ,UACtB,IAAiB,KAAS,EAAM,QAAQ,aACxC,IAAe,KAAc,EAAM,QAAQ;AAG5C,QAAA,KAAc,KAAoB,KAClC,KAAS,KAAoB,EAAc,SAAS,KACrD,GACF;AACE,QAAgC,YAAY;AAC5C;AAAA,IACJ;AAEA,IAAI,IACA,EAAoB,KAAK,IAAI,IAAmB,GAAG,EAAc,SAAS,CAAC,CAAC,IACrE,KACP,EAAoB,KAAK,IAAI,IAAmB,GAAG,CAAC,CAAC,GAGzD,EAAM,eAAe;AAAA,EAAA,GAEzB,CAAC,GAAe,CAAgB,CACpC;AAEA,WAAU,MAAM;AACR,QAAA,CAAC,KAAgB,CAAC;AAClB;AAGE,UAAA,IAAiB,EAAiB,iBAAiB,CAAyB;AAElF,eAAW,KAAQ;AACd,QAA+C,YAAY;AAGhE,IAAK,KACD,EAAiB,CAAc;AAAA,EACnC,GACD,CAAC,GAAc,GAAkB,GAAe,GAAe,CAAyB,CAAC,GAE5F,EAAU,MAAM;AACZ,IAAI,CAAC,KAID,EAAc,MACb,EAAc,GAAwC;EAC3D,GACD,CAAC,GAAkB,CAAa,CAAC,GAEpC,EAAU,MAAM;AACZ,IAAK,KACD,GAAiB,MAAS,GAC1B,EAAgC,EAAE,IAGtC,EAAoB,CAAC;AAAA,EAAA,GACtB,CAAC,CAAY,CAAC,GAEV;AACX;"}
@@ -1,11 +1,11 @@
1
- import { withPlateEventProvider as i, usePlateEditorState as u, useEventPlateId as c, someNode as m, ToolbarButton as d, unwrapList as f, getPreventDefaultHandler as p, toggleNodeType as P } from "@udecode/plate";
2
- import E from "react";
3
- const g = i(({ id: r, type: o, inactiveType: s, active: t, ...l }) => {
4
- const e = u(c(r)), n = t != null ? t : !!(e != null && e.selection) && m(e, { match: { type: o } });
5
- return /* @__PURE__ */ E.createElement(d, {
6
- active: n,
1
+ import { withPlateProvider as i, usePlateEditorState as u, useEventPlateId as c, someNode as m, ToolbarButton as d, unwrapList as f, getPreventDefaultHandler as p, toggleNodeType as P } from "@udecode/plate";
2
+ import T from "react";
3
+ const h = i(({ id: n, type: o, inactiveType: s, active: t, ...l }) => {
4
+ const e = u(c(n)), r = t != null ? t : !!(e != null && e.selection) && m(e, { match: { type: o } });
5
+ return /* @__PURE__ */ T.createElement(d, {
6
+ active: r,
7
7
  onMouseDown: (a) => {
8
- !e || !e.selection || (n || f(e, {}), p(P, e, {
8
+ !e || !e.selection || (r || f(e, {}), p(P, e, {
9
9
  activeType: o,
10
10
  inactiveType: s
11
11
  })(a));
@@ -14,6 +14,6 @@ const g = i(({ id: r, type: o, inactiveType: s, active: t, ...l }) => {
14
14
  });
15
15
  });
16
16
  export {
17
- g as CheckboxListToolbarButton
17
+ h as CheckboxListToolbarButton
18
18
  };
19
19
  //# sourceMappingURL=CheckboxListToolbarButton.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxListToolbarButton.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/CheckboxListPlugin/CheckboxListButton/CheckboxListToolbarButton.tsx"],"sourcesContent":["import {\n BlockToolbarButtonProps,\n ToolbarButton,\n getPreventDefaultHandler,\n someNode,\n toggleNodeType,\n unwrapList,\n useEventPlateId,\n usePlateEditorState,\n withPlateEventProvider,\n} from '@udecode/plate';\nimport React from 'react';\n\nexport const CheckboxListToolbarButton = withPlateEventProvider(\n ({ id, type, inactiveType, active, ...props }: BlockToolbarButtonProps) => {\n const editor = usePlateEditorState(useEventPlateId(id));\n\n const isActive = active ?? (!!editor?.selection && someNode(editor, { match: { type } }));\n\n return (\n <ToolbarButton\n active={isActive}\n onMouseDown={(event) => {\n if (!editor || !editor.selection) {\n return;\n }\n\n if (!isActive) {\n unwrapList(editor, {});\n }\n\n getPreventDefaultHandler(toggleNodeType, editor, {\n activeType: type,\n inactiveType,\n })(event);\n }}\n {...props}\n />\n );\n },\n);\n"],"names":[],"mappings":";;AAaa,MAAA,IAA4B,EACrC,CAAC,EAAE,OAAI,SAAM,iBAAc,cAAW,QAAqC;AACvE,QAAM,IAAS,EAAoB,EAAgB,CAAE,CAAC,GAEhD,IAAW,gBAAY,CAAA,CAAC,gBAAQ,cAAa,EAAS,GAAQ,EAAE,OAAO,EAAE,WAAQ;AAEvF,SACK,kBAAA,cAAA,GAAA;AAAA,IACG,QAAQ;AAAA,IACR,aAAa,CAAC,MAAU;AACpB,MAAI,CAAC,KAAU,CAAC,EAAO,aAIlB,MACU,EAAA,GAAQ,CAAA,CAAE,GAGzB,EAAyB,GAAgB,GAAQ;AAAA,QAC7C,YAAY;AAAA,QACZ;AAAA,MAAA,CACH,EAAE,CAAK;AAAA,IACZ;AAAA,IACC,GAAG;AAAA,EAAA,CACR;AAER,CACJ;"}
1
+ {"version":3,"file":"CheckboxListToolbarButton.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/CheckboxListPlugin/CheckboxListButton/CheckboxListToolbarButton.tsx"],"sourcesContent":["import {\n BlockToolbarButtonProps,\n ToolbarButton,\n getPreventDefaultHandler,\n someNode,\n toggleNodeType,\n unwrapList,\n useEventPlateId,\n usePlateEditorState,\n withPlateProvider,\n} from '@udecode/plate';\nimport React from 'react';\n\nexport const CheckboxListToolbarButton = withPlateProvider(\n ({ id, type, inactiveType, active, ...props }: BlockToolbarButtonProps) => {\n const editor = usePlateEditorState(useEventPlateId(id));\n\n const isActive = active ?? (!!editor?.selection && someNode(editor, { match: { type } }));\n\n return (\n <ToolbarButton\n active={isActive}\n onMouseDown={(event) => {\n if (!editor || !editor.selection) {\n return;\n }\n\n if (!isActive) {\n unwrapList(editor, {});\n }\n\n getPreventDefaultHandler(toggleNodeType, editor, {\n activeType: type,\n inactiveType,\n })(event);\n }}\n {...props}\n />\n );\n },\n);\n"],"names":[],"mappings":";;AAaa,MAAA,IAA4B,EACrC,CAAC,EAAE,OAAI,SAAM,iBAAc,cAAW,QAAqC;AACvE,QAAM,IAAS,EAAoB,EAAgB,CAAE,CAAC,GAEhD,IAAW,gBAAY,CAAA,CAAC,gBAAQ,cAAa,EAAS,GAAQ,EAAE,OAAO,EAAE,WAAQ;AAEvF,SACK,kBAAA,cAAA,GAAA;AAAA,IACG,QAAQ;AAAA,IACR,aAAa,CAAC,MAAU;AACpB,MAAI,CAAC,KAAU,CAAC,EAAO,aAIlB,MACU,EAAA,GAAQ,CAAA,CAAE,GAGzB,EAAyB,GAAgB,GAAQ;AAAA,QAC7C,YAAY;AAAA,QACZ;AAAA,MAAA,CACH,EAAE,CAAK;AAAA,IACZ;AAAA,IACC,GAAG;AAAA,EAAA,CACR;AAER,CACJ;"}
@@ -3,11 +3,13 @@ import { useFloatingLinkSelectors as i } from "@udecode/plate";
3
3
  import { FloatingLink as n } from "./FloatingLink.es.js";
4
4
  import { EditModal as l } from "./EditLinkModal/EditModal.es.js";
5
5
  import { InsertModal as m } from "./InsertLinkModal/InsertModal.es.js";
6
- const d = () => {
6
+ import "../../../../../node_modules/@udecode/plate-core/dist/index.es.es.js";
7
+ import "slate-react";
8
+ const g = () => {
7
9
  const o = i().isEditing(), e = /* @__PURE__ */ t.createElement(m, null), r = o ? e : /* @__PURE__ */ t.createElement(l, null);
8
10
  return /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(n.InsertRoot, null, e), /* @__PURE__ */ t.createElement(n.EditRoot, null, r));
9
11
  };
10
12
  export {
11
- d as CustomFloatingLink
13
+ g as CustomFloatingLink
12
14
  };
13
15
  //# sourceMappingURL=CustomFloatingLink.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFloatingLink.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/CustomFloatingLink.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport React from 'react';\nimport { useFloatingLinkSelectors } from '@udecode/plate';\nimport { FloatingLink } from './FloatingLink';\nimport { EditModal } from './EditLinkModal';\nimport { InsertModal } from './InsertLinkModal';\n\nexport const CustomFloatingLink = () => {\n const isEditing = useFloatingLinkSelectors().isEditing();\n\n const input = <InsertModal />;\n const editContent = !isEditing ? <EditModal /> : input;\n\n return (\n <>\n <FloatingLink.InsertRoot>{input}</FloatingLink.InsertRoot>\n\n <FloatingLink.EditRoot>{editContent}</FloatingLink.EditRoot>\n </>\n );\n};\n"],"names":[],"mappings":";;;;;AAQO,MAAM,IAAqB,MAAM;AAC9B,QAAA,IAAY,IAA2B,aAEvC,oCAAS,GAAY,IAAA,GACrB,IAAc,AAAC,IAA4B,IAAhB,kBAAA,cAAC,OAAU;AAE5C,SAEQ,kBAAA,cAAA,EAAA,UAAA,MAAA,kBAAA,cAAC,EAAa,YAAb,MAAyB,CAAM,GAEhC,kBAAA,cAAC,EAAa,UAAb,MAAuB,CAAY,CACxC;AAER;"}
1
+ {"version":3,"file":"CustomFloatingLink.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/CustomFloatingLink.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport React from 'react';\nimport { useFloatingLinkSelectors } from '@udecode/plate';\nimport { FloatingLink } from './FloatingLink';\nimport { EditModal } from './EditLinkModal';\nimport { InsertModal } from './InsertLinkModal';\n\nexport const CustomFloatingLink = () => {\n const isEditing = useFloatingLinkSelectors().isEditing();\n\n const input = <InsertModal />;\n const editContent = !isEditing ? <EditModal /> : input;\n\n return (\n <>\n <FloatingLink.InsertRoot>{input}</FloatingLink.InsertRoot>\n\n <FloatingLink.EditRoot>{editContent}</FloatingLink.EditRoot>\n </>\n );\n};\n"],"names":[],"mappings":";;;;;;;AAQO,MAAM,IAAqB,MAAM;AAC9B,QAAA,IAAY,IAA2B,aAEvC,oCAAS,GAAY,IAAA,GACrB,IAAc,AAAC,IAA4B,IAAhB,kBAAA,cAAC,OAAU;AAE5C,SAEQ,kBAAA,cAAA,EAAA,UAAA,MAAA,kBAAA,cAAC,EAAa,YAAb,MAAyB,CAAM,GAEhC,kBAAA,cAAC,EAAa,UAAb,MAAuB,CAAY,CACxC;AAER;"}
@@ -1,43 +1,48 @@
1
- import { useCallback as k, useEffect as y } from "react";
2
- import { useEditorRef as L, usePlateSelectors as h, useFloatingLinkSelectors as s, getAboveNode as R, getPluginType as c, ELEMENT_LINK as l, getRangeBoundingClientRect as C, getStartPoint as F, getEndPoint as N, getDefaultBoundingClientRect as P, useVirtualFloatingLink as S, floatingLinkActions as o, someNode as B, floatingLinkSelectors as b, useComposedRef as x } from "@udecode/plate";
3
- import { getUrlFromEditor as A } from "../../utils/getUrl.es.js";
4
- const w = ({ floatingOptions: d, ...n }) => {
5
- const e = L(), u = h(e.id).keyEditor(), g = s().mode(), a = s().open(), f = k(() => {
6
- const t = R(e, {
7
- match: { type: c(e, l) }
1
+ import { useCallback as y, useEffect as F } from "react";
2
+ import { useEditorRef as h, usePlateSelectors as C, useFloatingLinkSelectors as l, getPluginOptions as R, ELEMENT_LINK as n, getAboveNode as P, getPluginType as d, getRangeBoundingClientRect as b, getStartPoint as N, getEndPoint as O, getDefaultBoundingClientRect as S, useVirtualFloatingLink as B, floatingLinkActions as o, someNode as I, floatingLinkSelectors as g, useHotkeys as v, triggerFloatingLinkEdit as x, useFloatingLinkEnter as A, useFloatingLinkEscape as D, useComposedRef as H } from "@udecode/plate";
3
+ import { getUrlFromEditor as T } from "../../utils/getUrl.es.js";
4
+ const M = ({ floatingOptions: u, ...i }) => {
5
+ const e = h(), c = C().keyEditor(), a = l().mode(), f = l().isOpen(e.id), { triggerFloatingLinkHotkeys: m } = R(e, n), p = y(() => {
6
+ const t = P(e, {
7
+ match: { type: d(e, n) }
8
8
  });
9
9
  if (t) {
10
- const [, r] = t;
11
- return C(e, {
12
- anchor: F(e, r),
13
- focus: N(e, r)
10
+ const [, s] = t;
11
+ return b(e, {
12
+ anchor: N(e, s),
13
+ focus: O(e, s)
14
14
  });
15
15
  }
16
- return P();
17
- }, [e]), m = a && g === "edit", { update: i, style: p, floating: E } = S({
18
- open: m,
19
- getBoundingClientRect: f,
20
- ...d
16
+ return S();
17
+ }, [e]), k = f && a === "edit", { update: r, style: E, floating: L } = B({
18
+ editorId: e.id,
19
+ open: k,
20
+ getBoundingClientRect: p,
21
+ ...u
21
22
  });
22
- return y(() => {
23
- const t = A(e);
24
- if (t && o.url(t), e.selection && B(e, {
25
- match: { type: c(e, l) }
23
+ return F(() => {
24
+ const t = T(e);
25
+ if (t && o.url(t), e.selection && I(e, {
26
+ match: { type: d(e, n) }
26
27
  })) {
27
- o.show("edit"), i();
28
+ o.show("edit", e.id), r();
28
29
  return;
29
30
  }
30
- b.mode() === "edit" && o.hide();
31
- }, [e, u, i]), {
31
+ g.mode() === "edit" && o.hide();
32
+ }, [e, c, r]), v(m, (t) => {
33
+ t.preventDefault(), g.mode() === "edit" && x(e);
34
+ }, {
35
+ enableOnContentEditable: !0
36
+ }, []), A(), D(), {
32
37
  style: {
33
- ...p,
38
+ ...E,
34
39
  zIndex: 1
35
40
  },
36
- ...n,
37
- ref: x(n.ref, E)
41
+ ...i,
42
+ ref: H(i.ref, L)
38
43
  };
39
44
  };
40
45
  export {
41
- w as useFloatingLinkEdit
46
+ M as useFloatingLinkEdit
42
47
  };
43
48
  //# sourceMappingURL=useFloatingLinkEdit.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFloatingLinkEdit.es.js","sources":["../../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useCallback, useEffect } from 'react';\nimport {\n ELEMENT_LINK,\n FloatingLinkProps,\n HTMLPropsAs,\n floatingLinkActions,\n floatingLinkSelectors,\n getAboveNode,\n getDefaultBoundingClientRect,\n getEndPoint,\n getPluginType,\n getRangeBoundingClientRect,\n getStartPoint,\n someNode,\n useComposedRef,\n useEditorRef,\n useFloatingLinkSelectors,\n usePlateSelectors,\n useVirtualFloatingLink,\n} from '@udecode/plate';\nimport { getUrlFromEditor } from '../../utils';\n\nexport const useFloatingLinkEdit = ({ floatingOptions, ...props }: FloatingLinkProps): HTMLPropsAs<'div'> => {\n const editor = useEditorRef();\n const keyEditor = usePlateSelectors(editor.id).keyEditor();\n const mode = useFloatingLinkSelectors().mode();\n const open = useFloatingLinkSelectors().open();\n\n const getBoundingClientRect = useCallback(() => {\n const entry = getAboveNode(editor, {\n match: { type: getPluginType(editor, ELEMENT_LINK) },\n });\n\n if (entry) {\n const [, path] = entry;\n return getRangeBoundingClientRect(editor, {\n anchor: getStartPoint(editor, path),\n focus: getEndPoint(editor, path),\n });\n }\n\n return getDefaultBoundingClientRect();\n }, [editor]);\n\n const isOpen = open && mode === 'edit';\n\n const { update, style, floating } = useVirtualFloatingLink({\n open: isOpen,\n getBoundingClientRect,\n ...floatingOptions,\n });\n\n useEffect(() => {\n const url = getUrlFromEditor(editor);\n if (url) {\n floatingLinkActions.url(url);\n }\n if (\n editor.selection &&\n someNode(editor, {\n match: { type: getPluginType(editor, ELEMENT_LINK) },\n })\n ) {\n floatingLinkActions.show('edit');\n\n update();\n return;\n }\n\n if (floatingLinkSelectors.mode() === 'edit') {\n floatingLinkActions.hide();\n }\n }, [editor, keyEditor, update]);\n\n return {\n style: {\n ...style,\n zIndex: 1,\n },\n ...props,\n ref: useComposedRef<HTMLElement | null>(props.ref, floating),\n };\n};\n"],"names":[],"mappings":";;;AAwBO,MAAM,IAAsB,CAAC,EAAE,uBAAoB,QAAmD;AACzG,QAAM,IAAS,KACT,IAAY,EAAkB,EAAO,EAAE,EAAE,UAAU,GACnD,IAAO,IAA2B,QAClC,IAAO,IAA2B,QAElC,IAAwB,EAAY,MAAM;AACtC,UAAA,IAAQ,EAAa,GAAQ;AAAA,MAC/B,OAAO,EAAE,MAAM,EAAc,GAAQ,CAAY,EAAE;AAAA,IAAA,CACtD;AAED,QAAI,GAAO;AACD,YAAA,CAAG,EAAA,KAAQ;AACjB,aAAO,EAA2B,GAAQ;AAAA,QACtC,QAAQ,EAAc,GAAQ,CAAI;AAAA,QAClC,OAAO,EAAY,GAAQ,CAAI;AAAA,MAAA,CAClC;AAAA,IACL;AAEA,WAAO,EAA6B;AAAA,EAAA,GACrC,CAAC,CAAM,CAAC,GAEL,IAAS,KAAQ,MAAS,QAE1B,EAAE,WAAQ,UAAO,gBAAa,EAAuB;AAAA,IACvD,MAAM;AAAA,IACN;AAAA,IACA,GAAG;AAAA,EAAA,CACN;AAED,WAAU,MAAM;AACN,UAAA,IAAM,EAAiB,CAAM;AAK/B,QAJA,KACA,EAAoB,IAAI,CAAG,GAG3B,EAAO,aACP,EAAS,GAAQ;AAAA,MACb,OAAO,EAAE,MAAM,EAAc,GAAQ,CAAY,EAAE;AAAA,IAAA,CACtD,GACH;AACE,QAAoB,KAAK,MAAM,GAExB;AACP;AAAA,IACJ;AAEI,IAAA,EAAsB,KAAK,MAAM,UACjC,EAAoB,KAAK;AAAA,EAE9B,GAAA,CAAC,GAAQ,GAAW,CAAM,CAAC,GAEvB;AAAA,IACH,OAAO;AAAA,MACH,GAAG;AAAA,MACH,QAAQ;AAAA,IACZ;AAAA,IACA,GAAG;AAAA,IACH,KAAK,EAAmC,EAAM,KAAK,CAAQ;AAAA,EAAA;AAEnE;"}
1
+ {"version":3,"file":"useFloatingLinkEdit.es.js","sources":["../../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useCallback, useEffect } from 'react';\nimport {\n ELEMENT_LINK,\n FloatingLinkProps,\n HTMLPropsAs,\n LinkPlugin,\n floatingLinkActions,\n floatingLinkSelectors,\n getAboveNode,\n getDefaultBoundingClientRect,\n getEndPoint,\n getPluginOptions,\n getPluginType,\n getRangeBoundingClientRect,\n getStartPoint,\n someNode,\n triggerFloatingLinkEdit,\n useComposedRef,\n useEditorRef,\n useFloatingLinkEnter,\n useFloatingLinkEscape,\n useFloatingLinkSelectors,\n useHotkeys,\n usePlateSelectors,\n useVirtualFloatingLink,\n} from '@udecode/plate';\nimport { getUrlFromEditor } from '../../utils';\n\nexport const useFloatingLinkEdit = ({ floatingOptions, ...props }: FloatingLinkProps): HTMLPropsAs<'div'> => {\n const editor = useEditorRef();\n const keyEditor = usePlateSelectors().keyEditor();\n const mode = useFloatingLinkSelectors().mode();\n const open = useFloatingLinkSelectors().isOpen(editor.id);\n\n const { triggerFloatingLinkHotkeys } = getPluginOptions<LinkPlugin>(editor, ELEMENT_LINK);\n\n const getBoundingClientRect = useCallback(() => {\n const entry = getAboveNode(editor, {\n match: { type: getPluginType(editor, ELEMENT_LINK) },\n });\n\n if (entry) {\n const [, path] = entry;\n return getRangeBoundingClientRect(editor, {\n anchor: getStartPoint(editor, path),\n focus: getEndPoint(editor, path),\n });\n }\n\n return getDefaultBoundingClientRect();\n }, [editor]);\n\n const isOpen = open && mode === 'edit';\n\n const { update, style, floating } = useVirtualFloatingLink({\n editorId: editor.id,\n open: isOpen,\n getBoundingClientRect,\n ...floatingOptions,\n });\n\n useEffect(() => {\n const url = getUrlFromEditor(editor);\n if (url) {\n floatingLinkActions.url(url);\n }\n\n if (\n editor.selection &&\n someNode(editor, {\n match: { type: getPluginType(editor, ELEMENT_LINK) },\n })\n ) {\n floatingLinkActions.show('edit', editor.id);\n update();\n return;\n }\n\n if (floatingLinkSelectors.mode() === 'edit') {\n floatingLinkActions.hide();\n }\n }, [editor, keyEditor, update]);\n\n useHotkeys(\n triggerFloatingLinkHotkeys!,\n (e) => {\n e.preventDefault();\n\n if (floatingLinkSelectors.mode() === 'edit') {\n triggerFloatingLinkEdit(editor);\n }\n },\n {\n enableOnContentEditable: true,\n },\n [],\n );\n\n useFloatingLinkEnter();\n\n useFloatingLinkEscape();\n\n return {\n style: {\n ...style,\n zIndex: 1,\n },\n ...props,\n ref: useComposedRef<HTMLElement | null>(props.ref, floating),\n };\n};\n"],"names":[],"mappings":";;;AA8BO,MAAM,IAAsB,CAAC,EAAE,uBAAoB,QAAmD;AACzG,QAAM,IAAS,KACT,IAAY,IAAoB,aAChC,IAAO,IAA2B,QAClC,IAAO,EAA2B,EAAA,OAAO,EAAO,EAAE,GAElD,EAAE,kCAA+B,EAA6B,GAAQ,CAAY,GAElF,IAAwB,EAAY,MAAM;AACtC,UAAA,IAAQ,EAAa,GAAQ;AAAA,MAC/B,OAAO,EAAE,MAAM,EAAc,GAAQ,CAAY,EAAE;AAAA,IAAA,CACtD;AAED,QAAI,GAAO;AACD,YAAA,CAAG,EAAA,KAAQ;AACjB,aAAO,EAA2B,GAAQ;AAAA,QACtC,QAAQ,EAAc,GAAQ,CAAI;AAAA,QAClC,OAAO,EAAY,GAAQ,CAAI;AAAA,MAAA,CAClC;AAAA,IACL;AAEA,WAAO,EAA6B;AAAA,EAAA,GACrC,CAAC,CAAM,CAAC,GAEL,IAAS,KAAQ,MAAS,QAE1B,EAAE,WAAQ,UAAO,gBAAa,EAAuB;AAAA,IACvD,UAAU,EAAO;AAAA,IACjB,MAAM;AAAA,IACN;AAAA,IACA,GAAG;AAAA,EAAA,CACN;AAED,WAAU,MAAM;AACN,UAAA,IAAM,EAAiB,CAAM;AAM/B,QALA,KACA,EAAoB,IAAI,CAAG,GAI3B,EAAO,aACP,EAAS,GAAQ;AAAA,MACb,OAAO,EAAE,MAAM,EAAc,GAAQ,CAAY,EAAE;AAAA,IAAA,CACtD,GACH;AACsB,QAAA,KAAK,QAAQ,EAAO,EAAE,GACnC;AACP;AAAA,IACJ;AAEI,IAAA,EAAsB,KAAK,MAAM,UACjC,EAAoB,KAAK;AAAA,EAE9B,GAAA,CAAC,GAAQ,GAAW,CAAM,CAAC,GAG1B,EAAA,GACA,CAAC,MAAM;AACH,MAAE,eAAe,GAEb,EAAsB,KAAK,MAAM,UACjC,EAAwB,CAAM;AAAA,EAClC,GAEJ;AAAA,IACI,yBAAyB;AAAA,EAC7B,GACA,CACJ,CAAA,GAEqB,KAEC,KAEf;AAAA,IACH,OAAO;AAAA,MACH,GAAG;AAAA,MACH,QAAQ;AAAA,IACZ;AAAA,IACA,GAAG;AAAA,IACH,KAAK,EAAmC,EAAM,KAAK,CAAQ;AAAA,EAAA;AAEnE;"}
@@ -1,4 +1,4 @@
1
- import { createComponentAs as m, useFloatingLinkInsert as n, createElementAs as p, FloatingLink as r } from "@udecode/plate";
1
+ import { createComponentAs as m, createElementAs as p, FloatingLink as r } from "@udecode/plate";
2
2
  import "react";
3
3
  import "../../../../../foundation/Icon/Generated/IconAdobeCreativeCloud.es.js";
4
4
  import "../../../../../foundation/Icon/Generated/IconAdobeCreativeCloud12.es.js";
@@ -1662,20 +1662,27 @@ import "../../../../../foundation/Icon/Generated/IconWorkflowShapes24.es.js";
1662
1662
  import "../../../../../foundation/Icon/Generated/IconWorkflowShapes32.es.js";
1663
1663
  import "../../../../../foundation/Icon/IconsMap.es.js";
1664
1664
  import "../../../context/RichTextEditorContext.es.js";
1665
- import { useFloatingLinkEdit as e } from "./EditLinkModal/useFloatingLinkEdit.es.js";
1665
+ import { useFloatingLinkEdit as n } from "./EditLinkModal/useFloatingLinkEdit.es.js";
1666
+ import "../../../../Button/Button.es.js";
1667
+ import "../../../../Checkbox/Checkbox.es.js";
1668
+ import "../../../../FormControl/FormControl.es.js";
1669
+ import "@react-aria/focus";
1670
+ import "../../../../../utilities/focusStyle.es.js";
1671
+ import "./InsertLinkModal/useInsertModal.es.js";
1672
+ import { useFloatingLinkInsert as e } from "./InsertLinkModal/useFloatingLinkInsert.es.js";
1666
1673
  const s = m((i) => {
1667
1674
  var o;
1668
- const t = n(i);
1675
+ const t = e(i);
1669
1676
  return ((o = t.style) == null ? void 0 : o.display) === "none" ? null : p("div", t);
1670
1677
  }), l = m((i) => {
1671
1678
  var o;
1672
- const t = e(i);
1679
+ const t = n(i);
1673
1680
  return ((o = t.style) == null ? void 0 : o.display) === "none" ? null : p("div", t);
1674
1681
  });
1675
1682
  r.EditRoot = l;
1676
1683
  r.InsertRoot = s;
1677
- const m$ = r;
1684
+ const u$ = r;
1678
1685
  export {
1679
- m$ as FloatingLink
1686
+ u$ as FloatingLink
1680
1687
  };
1681
1688
  //# sourceMappingURL=FloatingLink.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingLink.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/FloatingLink.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n FloatingLinkProps,\n FloatingLink as PlateFloatingLink,\n createComponentAs,\n createElementAs,\n useFloatingLinkInsert,\n} from '@udecode/plate';\nimport { useFloatingLinkEdit } from './EditLinkModal';\n\nconst FloatingLinkInsertRoot = createComponentAs<FloatingLinkProps>((props) => {\n const htmlProps = useFloatingLinkInsert(props);\n\n if (htmlProps.style?.display === 'none') {\n return null;\n }\n\n return createElementAs('div', htmlProps);\n});\n\nconst FloatingLinkEditRoot = createComponentAs<FloatingLinkProps>((props) => {\n const htmlProps = useFloatingLinkEdit(props);\n\n if (htmlProps.style?.display === 'none') {\n return null;\n }\n\n return createElementAs('div', htmlProps);\n});\n\nPlateFloatingLink.EditRoot = FloatingLinkEditRoot;\nPlateFloatingLink.InsertRoot = FloatingLinkInsertRoot;\n\nexport const FloatingLink = PlateFloatingLink;\n"],"names":["PlateFloatingLink"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,IAAyB,EAAqC,CAAC,MAAU;;AACrE,QAAA,IAAY,EAAsB,CAAK;AAEzC,SAAA,QAAU,UAAV,kBAAiB,aAAY,SACtB,OAGJ,EAAgB,OAAO,CAAS;AAC3C,CAAC,GAEK,IAAuB,EAAqC,CAAC,MAAU;;AACnE,QAAA,IAAY,EAAoB,CAAK;AAEvC,SAAA,QAAU,UAAV,kBAAiB,aAAY,SACtB,OAGJ,EAAgB,OAAO,CAAS;AAC3C,CAAC;AAEDA,EAAkB,WAAW;AAC7BA,EAAkB,aAAa;AAExB,MAAM,KAAeA;"}
1
+ {"version":3,"file":"FloatingLink.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/FloatingLink.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n FloatingLinkProps,\n FloatingLink as PlateFloatingLink,\n createComponentAs,\n createElementAs,\n} from '@udecode/plate';\nimport { useFloatingLinkEdit } from './EditLinkModal';\nimport { useFloatingLinkInsert } from './InsertLinkModal';\n\nconst FloatingLinkInsertRoot = createComponentAs<FloatingLinkProps>((props) => {\n const htmlProps = useFloatingLinkInsert(props);\n\n if (htmlProps.style?.display === 'none') {\n return null;\n }\n\n return createElementAs('div', htmlProps);\n});\n\nconst FloatingLinkEditRoot = createComponentAs<FloatingLinkProps>((props) => {\n const htmlProps = useFloatingLinkEdit(props);\n\n if (htmlProps.style?.display === 'none') {\n return null;\n }\n\n return createElementAs('div', htmlProps);\n});\n\nPlateFloatingLink.EditRoot = FloatingLinkEditRoot;\nPlateFloatingLink.InsertRoot = FloatingLinkInsertRoot;\n\nexport const FloatingLink = PlateFloatingLink;\n"],"names":["PlateFloatingLink"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,IAAyB,EAAqC,CAAC,MAAU;;AACrE,QAAA,IAAY,EAAsB,CAAK;AAEzC,SAAA,QAAU,UAAV,kBAAiB,aAAY,SACtB,OAGJ,EAAgB,OAAO,CAAS;AAC3C,CAAC,GAEK,IAAuB,EAAqC,CAAC,MAAU;;AACnE,QAAA,IAAY,EAAoB,CAAK;AAEvC,SAAA,QAAU,UAAV,kBAAiB,aAAY,SACtB,OAGJ,EAAgB,OAAO,CAAS;AAC3C,CAAC;AAEDA,EAAkB,WAAW;AAC7BA,EAAkB,aAAa;AAExB,MAAM,KAAeA;"}
@@ -1 +1,2 @@
1
1
  export * from './InsertModal';
2
+ export * from './useFloatingLinkInsert';
@@ -0,0 +1,2 @@
1
+ import { FloatingLinkProps, HTMLPropsAs } from '@udecode/plate';
2
+ export declare const useFloatingLinkInsert: ({ floatingOptions, ...props }: FloatingLinkProps) => HTMLPropsAs<'div'>;
@@ -0,0 +1,38 @@
1
+ import { useEffect as m } from "react";
2
+ import { useEditorRef as p, useFloatingLinkSelectors as r, getPluginOptions as k, ELEMENT_LINK as L, useHotkeys as E, triggerFloatingLinkInsert as F, useOnClickOutside as C, floatingLinkSelectors as I, floatingLinkActions as n, focusEditor as O, useVirtualFloatingLink as y, useFloatingLinkEscape as R, useComposedRef as S } from "@udecode/plate";
3
+ import { getSelectionBoundingClientRect as b } from "../../../../../../node_modules/@udecode/plate-floating/dist/index.es.es.js";
4
+ import { useFocused as h } from "slate-react";
5
+ const N = ({ floatingOptions: l, ...o }) => {
6
+ const e = p(), i = h(), u = r().mode(), t = r().isOpen(e.id), { triggerFloatingLinkHotkeys: d } = k(e, L);
7
+ E(d, (a) => {
8
+ a.preventDefault(), F(e, {
9
+ focused: i
10
+ });
11
+ }, {
12
+ enableOnContentEditable: !0
13
+ }, [i]);
14
+ const c = C(() => {
15
+ I.mode() === "insert" && t && (n.hide(), O(e, e.selection));
16
+ }), { update: s, style: f, floating: g } = y({
17
+ editorId: e.id,
18
+ open: t && u === "insert",
19
+ getBoundingClientRect: b,
20
+ whileElementsMounted: () => {
21
+ },
22
+ ...l
23
+ });
24
+ return m(() => {
25
+ t ? (s(), n.updated(!0)) : n.updated(!1);
26
+ }, [t, s]), R(), {
27
+ style: {
28
+ ...f,
29
+ zIndex: 1
30
+ },
31
+ ...o,
32
+ ref: S(o.ref, g, c)
33
+ };
34
+ };
35
+ export {
36
+ N as useFloatingLinkInsert
37
+ };
38
+ //# sourceMappingURL=useFloatingLinkInsert.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFloatingLinkInsert.es.js","sources":["../../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.ts"],"sourcesContent":["import { useEffect } from 'react';\nimport {\n ELEMENT_LINK,\n FloatingLinkProps,\n HTMLPropsAs,\n LinkPlugin,\n floatingLinkActions,\n floatingLinkSelectors,\n focusEditor,\n getPluginOptions,\n triggerFloatingLinkInsert,\n useComposedRef,\n useEditorRef,\n useFloatingLinkEscape,\n useFloatingLinkSelectors,\n useHotkeys,\n useOnClickOutside,\n useVirtualFloatingLink,\n} from '@udecode/plate';\nimport { getSelectionBoundingClientRect } from '@udecode/plate-floating';\nimport { useFocused } from 'slate-react';\n\nexport const useFloatingLinkInsert = ({ floatingOptions, ...props }: FloatingLinkProps): HTMLPropsAs<'div'> => {\n const editor = useEditorRef();\n const focused = useFocused();\n const mode = useFloatingLinkSelectors().mode();\n const open = useFloatingLinkSelectors().isOpen(editor.id);\n\n const { triggerFloatingLinkHotkeys } = getPluginOptions<LinkPlugin>(editor, ELEMENT_LINK);\n\n useHotkeys(\n triggerFloatingLinkHotkeys!,\n (e) => {\n e.preventDefault();\n\n triggerFloatingLinkInsert(editor, {\n focused,\n });\n },\n {\n enableOnContentEditable: true,\n },\n [focused],\n );\n\n const ref = useOnClickOutside(() => {\n if (floatingLinkSelectors.mode() === 'insert' && open) {\n floatingLinkActions.hide();\n focusEditor(editor, editor.selection!);\n }\n });\n\n const { update, style, floating } = useVirtualFloatingLink({\n editorId: editor.id,\n open: open && mode === 'insert',\n getBoundingClientRect: getSelectionBoundingClientRect,\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n whileElementsMounted: () => {},\n ...floatingOptions,\n });\n\n // wait for update before focusing input\n useEffect(() => {\n if (open) {\n update();\n floatingLinkActions.updated(true);\n } else {\n floatingLinkActions.updated(false);\n }\n }, [open, update]);\n\n useFloatingLinkEscape();\n\n return {\n style: {\n ...style,\n zIndex: 1,\n },\n ...props,\n ref: useComposedRef<HTMLElement | null>(props.ref, floating, ref),\n };\n};\n"],"names":[],"mappings":";;;;AAsBO,MAAM,IAAwB,CAAC,EAAE,uBAAoB,QAAmD;AAC3G,QAAM,IAAS,KACT,IAAU,KACV,IAAO,IAA2B,QAClC,IAAO,EAA2B,EAAA,OAAO,EAAO,EAAE,GAElD,EAAE,kCAA+B,EAA6B,GAAQ,CAAY;AAGpF,IAAA,GACA,CAAC,MAAM;AACH,MAAE,eAAe,GAEjB,EAA0B,GAAQ;AAAA,MAC9B;AAAA,IAAA,CACH;AAAA,EAAA,GAEL;AAAA,IACI,yBAAyB;AAAA,EAAA,GAE7B,CAAC,CAAO,CACZ;AAEM,QAAA,IAAM,EAAkB,MAAM;AAChC,IAAI,EAAsB,WAAW,YAAY,KAC7C,GAAoB,KAAK,GACb,EAAA,GAAQ,EAAO,SAAU;AAAA,EACzC,CACH,GAEK,EAAE,WAAQ,UAAO,gBAAa,EAAuB;AAAA,IACvD,UAAU,EAAO;AAAA,IACjB,MAAM,KAAQ,MAAS;AAAA,IACvB,uBAAuB;AAAA,IAEvB,sBAAsB,MAAM;AAAA,IAAC;AAAA,IAC7B,GAAG;AAAA,EAAA,CACN;AAGD,WAAU,MAAM;AACZ,IAAI,IACO,MACP,EAAoB,QAAQ,EAAI,KAEhC,EAAoB,QAAQ,EAAK;AAAA,EACrC,GACD,CAAC,GAAM,CAAM,CAAC,GAEK,KAEf;AAAA,IACH,OAAO;AAAA,MACH,GAAG;AAAA,MACH,QAAQ;AAAA,IACZ;AAAA,IACA,GAAG;AAAA,IACH,KAAK,EAAmC,EAAM,KAAK,GAAU,CAAG;AAAA,EAAA;AAExE;"}
@@ -1 +1 @@
1
- {"version":3,"file":"LinkMarkupElementNode.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport React from 'react';\nimport { HTMLPropsAs, LinkRootProps, useElementProps } from '@udecode/plate';\nimport { getUrlFromLinkOrLegacyLink } from '../utils';\nimport { TLinkElement } from '../types';\nimport { useRichTextEditorContext } from '@components/RichTextEditor/context/RichTextEditorContext';\n\nconst useLink = (props: LinkRootProps): HTMLPropsAs<'a'> => {\n const _props = useElementProps<TLinkElement, 'a'>({\n ...props,\n elementToAttributes: (element) => ({\n href: getUrlFromLinkOrLegacyLink(element),\n target: element.target || '_blank',\n }),\n });\n\n return {\n ..._props,\n // quick fix: hovering <a> with href loses the editor focus\n onMouseOver: (e: MouseEvent) => {\n e.stopPropagation();\n },\n };\n};\n\nexport const LinkMarkupElementNode = (props: LinkRootProps) => {\n const htmlProps = useLink(props);\n const { designTokens } = useRichTextEditorContext();\n const { attributes, children } = props;\n\n return (\n <a {...attributes} href={htmlProps.href} target={htmlProps.target} style={designTokens.link}>\n {children}\n </a>\n );\n};\n"],"names":[],"mappings":";;;;AAQA,MAAM,IAAU,CAAC,MASN;AAAA,EACH,GATW,EAAmC;AAAA,IAC9C,GAAG;AAAA,IACH,qBAAqB,CAAC,MAAa;AAAA,MAC/B,MAAM,EAA2B,CAAO;AAAA,MACxC,QAAQ,EAAQ,UAAU;AAAA,IAAA;AAAA,EAC9B,CACH;AAAA,EAKG,aAAa,CAAC,MAAkB;AAC5B,MAAE,gBAAgB;AAAA,EACtB;AAAA,IAIK,IAAwB,CAAC,MAAyB;AACrD,QAAA,IAAY,EAAQ,CAAK,GACzB,EAAE,oBAAiB,KACnB,EAAE,eAAY,gBAAa;AAEjC,SACK,kBAAA,cAAA,KAAA;AAAA,IAAG,GAAG;AAAA,IAAY,MAAM,EAAU;AAAA,IAAM,QAAQ,EAAU;AAAA,IAAQ,OAAO,EAAa;AAAA,EAAA,GAClF,CACL;AAER;"}
1
+ {"version":3,"file":"LinkMarkupElementNode.es.js","sources":["../../../../../../src/components/RichTextEditor/Plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport React, { MouseEvent } from 'react';\nimport { HTMLPropsAs, LinkRootProps, useElementProps } from '@udecode/plate';\nimport { getUrlFromLinkOrLegacyLink } from '../utils';\nimport { TLinkElement } from '../types';\nimport { useRichTextEditorContext } from '@components/RichTextEditor/context/RichTextEditorContext';\n\nconst useLink = (props: LinkRootProps): HTMLPropsAs<'a'> => {\n const _props = useElementProps<TLinkElement, 'a'>({\n ...props,\n elementToAttributes: (element) => ({\n href: getUrlFromLinkOrLegacyLink(element),\n target: element.target || '_blank',\n }),\n });\n\n return {\n ..._props,\n // quick fix: hovering <a> with href loses the editor focus\n onMouseOver: (e: MouseEvent) => {\n e.stopPropagation();\n },\n };\n};\n\nexport const LinkMarkupElementNode = (props: LinkRootProps) => {\n const htmlProps = useLink(props);\n const { designTokens } = useRichTextEditorContext();\n const { attributes, children } = props;\n\n return (\n <a {...attributes} href={htmlProps.href} target={htmlProps.target} style={designTokens.link}>\n {children}\n </a>\n );\n};\n"],"names":[],"mappings":";;;;AAQA,MAAM,IAAU,CAAC,MASN;AAAA,EACH,GATW,EAAmC;AAAA,IAC9C,GAAG;AAAA,IACH,qBAAqB,CAAC,MAAa;AAAA,MAC/B,MAAM,EAA2B,CAAO;AAAA,MACxC,QAAQ,EAAQ,UAAU;AAAA,IAAA;AAAA,EAC9B,CACH;AAAA,EAKG,aAAa,CAAC,MAAkB;AAC5B,MAAE,gBAAgB;AAAA,EACtB;AAAA,IAIK,IAAwB,CAAC,MAAyB;AACrD,QAAA,IAAY,EAAQ,CAAK,GACzB,EAAE,oBAAiB,KACnB,EAAE,eAAY,gBAAa;AAEjC,SACK,kBAAA,cAAA,KAAA;AAAA,IAAG,GAAG;AAAA,IAAY,MAAM,EAAU;AAAA,IAAM,QAAQ,EAAU;AAAA,IAAQ,OAAO,EAAa;AAAA,EAAA,GAClF,CACL;AAER;"}
@@ -1,2 +1 @@
1
- import { TDescendant } from '@udecode/plate';
2
- export declare const serializeLeafToHtml: (node: TDescendant) => string;
1
+ export declare const serializeLeafToHtml: (node: any) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"serializeLeafToHtml.es.js","sources":["../../../../../src/components/RichTextEditor/serializer/utils/serializeLeafToHtml.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { TDescendant } from '@udecode/plate';\nimport {\n BOLD_CLASSES,\n CODE_CLASSES,\n ITALIC_CLASSES,\n STRIKETHROUGH_CLASSES,\n UNDERLINE_CLASSES,\n} from '@components/RichTextEditor/Plugins';\nimport escapeHtml from 'escape-html';\n\nexport const serializeLeafToHtml = (node: TDescendant): string => {\n let string = escapeHtml(node.text);\n if (node.bold) {\n string = `<span class=\"${BOLD_CLASSES}\">${string}</span>`;\n }\n if (node.italic) {\n string = `<span class=\"${ITALIC_CLASSES}\">${string}</span>`;\n }\n if (node.underline) {\n string = `<span class=\"${UNDERLINE_CLASSES}\">${string}</span>`;\n }\n if (node.strikethrough) {\n string = `<span class=\"${STRIKETHROUGH_CLASSES}\">${string}</span>`;\n }\n if (node.code) {\n string = `<span class=\"${CODE_CLASSES}\">${string}</span>`;\n }\n return string;\n};\n"],"names":["escapeHtml"],"mappings":";;;;;;;AAYa,MAAA,IAAsB,CAAC,MAA8B;AAC1D,MAAA,IAASA,EAAW,EAAK,IAAI;AACjC,SAAI,EAAK,QACL,KAAS,gBAAgB,MAAiB,aAE1C,EAAK,UACL,KAAS,gBAAgB,MAAmB,aAE5C,EAAK,aACL,KAAS,gBAAgB,MAAsB,aAE/C,EAAK,iBACL,KAAS,gBAAgB,MAA0B,aAEnD,EAAK,QACL,KAAS,gBAAgB,MAAiB,aAEvC;AACX;"}
1
+ {"version":3,"file":"serializeLeafToHtml.es.js","sources":["../../../../../src/components/RichTextEditor/serializer/utils/serializeLeafToHtml.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n BOLD_CLASSES,\n CODE_CLASSES,\n ITALIC_CLASSES,\n STRIKETHROUGH_CLASSES,\n UNDERLINE_CLASSES,\n} from '@components/RichTextEditor/Plugins';\nimport escapeHtml from 'escape-html';\n\nexport const serializeLeafToHtml = (node: any): string => {\n let string = escapeHtml(node.text);\n if (node.bold) {\n string = `<span class=\"${BOLD_CLASSES}\">${string}</span>`;\n }\n if (node.italic) {\n string = `<span class=\"${ITALIC_CLASSES}\">${string}</span>`;\n }\n if (node.underline) {\n string = `<span class=\"${UNDERLINE_CLASSES}\">${string}</span>`;\n }\n if (node.strikethrough) {\n string = `<span class=\"${STRIKETHROUGH_CLASSES}\">${string}</span>`;\n }\n if (node.code) {\n string = `<span class=\"${CODE_CLASSES}\">${string}</span>`;\n }\n return string;\n};\n"],"names":["escapeHtml"],"mappings":";;;;;;;AAWa,MAAA,IAAsB,CAAC,MAAsB;AAClD,MAAA,IAASA,EAAW,EAAK,IAAI;AACjC,SAAI,EAAK,QACL,KAAS,gBAAgB,MAAiB,aAE1C,EAAK,UACL,KAAS,gBAAgB,MAAmB,aAE5C,EAAK,aACL,KAAS,gBAAgB,MAAsB,aAE/C,EAAK,iBACL,KAAS,gBAAgB,MAA0B,aAEnD,EAAK,QACL,KAAS,gBAAgB,MAAiB,aAEvC;AACX;"}
@@ -1,3 +1,2 @@
1
- import { TDescendant } from '@udecode/plate';
2
1
  import { DesignTokens } from '../../../RichTextEditor/types';
3
- export declare const serializeNodeToHtmlRecursive: (node: TDescendant, designTokens: DesignTokens) => string;
2
+ export declare const serializeNodeToHtmlRecursive: (node: any, designTokens: DesignTokens) => string;
@@ -1,6 +1,6 @@
1
- import { ELEMENT_LINK as c, ELEMENT_LI as i, ELEMENT_OL as m, ELEMENT_UL as s, ELEMENT_PARAGRAPH as $ } from "@udecode/plate";
1
+ import { ELEMENT_LINK as c, ELEMENT_LI as m, ELEMENT_OL as i, ELEMENT_UL as s, ELEMENT_PARAGRAPH as $ } from "@udecode/plate";
2
2
  import "../../Plugins/index.es.js";
3
- import { TextStyles as l } from "../../Plugins/TextStylePlugin/TextStyles/textStyles.es.js";
3
+ import { TextStyles as E } from "../../Plugins/TextStylePlugin/TextStyles/textStyles.es.js";
4
4
  import "../../Plugins/TextStylePlugin/TextStyles/Custom1Plugin/createCustom1Plugin.es.js";
5
5
  import "../../Plugins/TextStylePlugin/TextStyles/Custom2Plugin/createCustom2Plugin.es.js";
6
6
  import "../../Plugins/TextStylePlugin/TextStyles/Custom3Plugin/createCustom3Plugin.es.js";
@@ -9,43 +9,47 @@ import "../../Plugins/TextStylePlugin/TextStyles/Heading2Plugin/createHeading2Pl
9
9
  import "../../Plugins/TextStylePlugin/TextStyles/Heading3Plugin/createHeading3Plugin.es.js";
10
10
  import "../../Plugins/TextStylePlugin/TextStyles/Heading4Plugin/createHeading4Plugin.es.js";
11
11
  import "../../Plugins/TextStylePlugin/TextStyles/Quote/createQuotePlugin.es.js";
12
- import a from "../../../../node_modules/escape-html/index.es.js";
12
+ import p from "../../../../node_modules/escape-html/index.es.js";
13
13
  import { reactCssPropsToCss as e } from "./reactCssPropsToCss.es.js";
14
14
  import { serializeLeafToHtml as o } from "./serializeLeafToHtml.es.js";
15
15
  import { ELEMENT_CHECK_ITEM as u } from "../../Plugins/CheckboxListPlugin/id.es.js";
16
16
  import { OL_CLASSES as L } from "../../Plugins/ListPlugin/OrderedListPlugin/OrderedListMarkupElement.es.js";
17
17
  import { UL_CLASSES as h } from "../../Plugins/ListPlugin/UnorderedListPlugin/UnorderedListMarkupElement.es.js";
18
- const N = (E, t) => {
19
- if (!E.children)
20
- return o(E);
21
- const r = E.children.map((p) => N(p, t)).join("");
22
- switch (E.type) {
23
- case l.ELEMENT_HEADING1:
18
+ const N = (l, t) => {
19
+ if (!l.children)
20
+ return o(l);
21
+ const r = l.children.map((a) => N(a, t)).join("");
22
+ switch (l.type) {
23
+ case E.ELEMENT_HEADING1:
24
24
  return `<h1 style="${e(t.heading1)}">${r}</h1>`;
25
- case l.ELEMENT_HEADING2:
25
+ case E.ELEMENT_HEADING2:
26
26
  return `<h2 style="${e(t.heading2)}">${r}</h2>`;
27
- case l.ELEMENT_HEADING3:
27
+ case E.ELEMENT_HEADING3:
28
28
  return `<h3 style="${e(t.heading3)}">${r}</h3>`;
29
- case l.ELEMENT_HEADING4:
29
+ case E.ELEMENT_HEADING4:
30
30
  return `<h4 style="${e(t.heading4)}">${r}</h4>`;
31
- case l.ELEMENT_CUSTOM1:
31
+ case E.ELEMENT_CUSTOM1:
32
32
  return `<p style="${e(t.custom1)}">${r}</p>`;
33
- case l.ELEMENT_CUSTOM2:
33
+ case E.ELEMENT_CUSTOM2:
34
34
  return `<p style="${e(t.custom2)}">${r}</p>`;
35
- case l.ELEMENT_CUSTOM3:
35
+ case E.ELEMENT_CUSTOM3:
36
36
  return `<p style="${e(t.custom3)}">${r}</p>`;
37
- case l.ELEMENT_QUOTE:
37
+ case E.ELEMENT_QUOTE:
38
38
  return `<p style="${e(t.quote)}">${r}</p>`;
39
39
  case $:
40
40
  return `<p>${r}</p>`;
41
41
  case s:
42
42
  return `<ul class="${h}">${r}</ul>`;
43
- case m:
44
- return `<ol class="${L}">${r}</ol>`;
45
43
  case i:
44
+ return `<ol class="${L}">${r}</ol>`;
45
+ case m:
46
46
  return `<li>${r}</li>`;
47
47
  case c:
48
- return E.chosenLink ? `<a style="${e(t.link)}" target=${E.chosenLink.openInNewTab ? "_blank" : "_self"} href="${a(E.chosenLink.searchResult.link)}">${r}</a>` : `<a style="${e(t.link)}" href="${a(E.url)}">${r}</a>`;
48
+ if (l.chosenLink) {
49
+ const { chosenLink: a } = l;
50
+ return `<a style="${e(t.link)}" target=${a.openInNewTab ? "_blank" : "_self"} href="${p(a.searchResult.link)}">${r}</a>`;
51
+ }
52
+ return `<a style="${e(t.link)}" href="${p(l.url)}">${r}</a>`;
49
53
  case u:
50
54
  return `<input type="checkbox"/><label>${r}</label>`;
51
55
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"serializeNodeToHtmlRecursive.es.js","sources":["../../../../../src/components/RichTextEditor/serializer/utils/serializeNodeToHtmlRecursive.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { ELEMENT_LI, ELEMENT_LINK, ELEMENT_OL, ELEMENT_PARAGRAPH, ELEMENT_UL, TDescendant } from '@udecode/plate';\nimport { ELEMENT_CHECK_ITEM, OL_CLASSES, UL_CLASSES } from '@components/RichTextEditor/Plugins';\nimport { DesignTokens } from '@components/RichTextEditor/types';\nimport { TextStyles } from '@components/RichTextEditor/Plugins/TextStylePlugin/TextStyles';\nimport escapeHtml from 'escape-html';\nimport { reactCssPropsToCss } from './reactCssPropsToCss';\nimport { serializeLeafToHtml } from './serializeLeafToHtml';\n\nexport const serializeNodeToHtmlRecursive = (node: TDescendant, designTokens: DesignTokens): string => {\n if (!node.children) {\n return serializeLeafToHtml(node);\n }\n\n const children = node.children.map((n: TDescendant) => serializeNodeToHtmlRecursive(n, designTokens)).join('');\n\n switch (node.type) {\n case TextStyles.ELEMENT_HEADING1:\n return `<h1 style=\"${reactCssPropsToCss(designTokens.heading1)}\">${children}</h1>`;\n case TextStyles.ELEMENT_HEADING2:\n return `<h2 style=\"${reactCssPropsToCss(designTokens.heading2)}\">${children}</h2>`;\n case TextStyles.ELEMENT_HEADING3:\n return `<h3 style=\"${reactCssPropsToCss(designTokens.heading3)}\">${children}</h3>`;\n case TextStyles.ELEMENT_HEADING4:\n return `<h4 style=\"${reactCssPropsToCss(designTokens.heading4)}\">${children}</h4>`;\n case TextStyles.ELEMENT_CUSTOM1:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom1)}\">${children}</p>`;\n case TextStyles.ELEMENT_CUSTOM2:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom2)}\">${children}</p>`;\n case TextStyles.ELEMENT_CUSTOM3:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom3)}\">${children}</p>`;\n case TextStyles.ELEMENT_QUOTE:\n return `<p style=\"${reactCssPropsToCss(designTokens.quote)}\">${children}</p>`;\n case ELEMENT_PARAGRAPH:\n return `<p>${children}</p>`;\n case ELEMENT_UL:\n return `<ul class=\"${UL_CLASSES}\">${children}</ul>`;\n case ELEMENT_OL:\n return `<ol class=\"${OL_CLASSES}\">${children}</ol>`;\n case ELEMENT_LI:\n return `<li>${children}</li>`;\n case ELEMENT_LINK:\n if (node.chosenLink) {\n return `<a style=\"${reactCssPropsToCss(designTokens.link)}\" target=${\n node.chosenLink.openInNewTab ? '_blank' : '_self'\n } href=\"${escapeHtml(node.chosenLink.searchResult.link)}\">${children}</a>`;\n }\n return `<a style=\"${reactCssPropsToCss(designTokens.link)}\" href=\"${escapeHtml(node.url)}\">${children}</a>`;\n case ELEMENT_CHECK_ITEM:\n return `<input type=\"checkbox\"/><label>${children}</label>`;\n\n default:\n return children;\n }\n};\n"],"names":["escapeHtml"],"mappings":";;;;;;;;;;;;;;;;;AAUa,MAAA,IAA+B,CAAC,GAAmB,MAAuC;AAC/F,MAAA,CAAC,EAAK;AACN,WAAO,EAAoB,CAAI;AAGnC,QAAM,IAAW,EAAK,SAAS,IAAI,CAAC,MAAmB,EAA6B,GAAG,CAAY,CAAC,EAAE,KAAK,EAAE;AAE7G,UAAQ,EAAK;AAAA,SACJ,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,KAAK,MAAM;AAAA,SAC9D;AACD,aAAO,MAAM;AAAA,SACZ;AACD,aAAO,cAAc,MAAe;AAAA,SACnC;AACD,aAAO,cAAc,MAAe;AAAA,SACnC;AACD,aAAO,OAAO;AAAA,SACb;AACD,aAAI,EAAK,aACE,aAAa,EAAmB,EAAa,IAAI,aACpD,EAAK,WAAW,eAAe,WAAW,iBACpCA,EAAW,EAAK,WAAW,aAAa,IAAI,MAAM,UAEzD,aAAa,EAAmB,EAAa,IAAI,YAAYA,EAAW,EAAK,GAAG,MAAM;AAAA,SAC5F;AACD,aAAO,kCAAkC;AAAA;AAGlC,aAAA;AAAA;AAEnB;"}
1
+ {"version":3,"file":"serializeNodeToHtmlRecursive.es.js","sources":["../../../../../src/components/RichTextEditor/serializer/utils/serializeNodeToHtmlRecursive.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { ELEMENT_LI, ELEMENT_LINK, ELEMENT_OL, ELEMENT_PARAGRAPH, ELEMENT_UL, TDescendant } from '@udecode/plate';\nimport { ELEMENT_CHECK_ITEM, OL_CLASSES, UL_CLASSES } from '@components/RichTextEditor/Plugins';\nimport { DesignTokens } from '@components/RichTextEditor/types';\nimport { TextStyles } from '@components/RichTextEditor/Plugins/TextStylePlugin/TextStyles';\nimport escapeHtml from 'escape-html';\nimport { reactCssPropsToCss } from './reactCssPropsToCss';\nimport { serializeLeafToHtml } from './serializeLeafToHtml';\n\nexport const serializeNodeToHtmlRecursive = (node: any, designTokens: DesignTokens): string => {\n if (!node.children) {\n return serializeLeafToHtml(node);\n }\n const children = node.children.map((n: TDescendant) => serializeNodeToHtmlRecursive(n, designTokens)).join('');\n\n switch (node.type) {\n case TextStyles.ELEMENT_HEADING1:\n return `<h1 style=\"${reactCssPropsToCss(designTokens.heading1)}\">${children}</h1>`;\n case TextStyles.ELEMENT_HEADING2:\n return `<h2 style=\"${reactCssPropsToCss(designTokens.heading2)}\">${children}</h2>`;\n case TextStyles.ELEMENT_HEADING3:\n return `<h3 style=\"${reactCssPropsToCss(designTokens.heading3)}\">${children}</h3>`;\n case TextStyles.ELEMENT_HEADING4:\n return `<h4 style=\"${reactCssPropsToCss(designTokens.heading4)}\">${children}</h4>`;\n case TextStyles.ELEMENT_CUSTOM1:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom1)}\">${children}</p>`;\n case TextStyles.ELEMENT_CUSTOM2:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom2)}\">${children}</p>`;\n case TextStyles.ELEMENT_CUSTOM3:\n return `<p style=\"${reactCssPropsToCss(designTokens.custom3)}\">${children}</p>`;\n case TextStyles.ELEMENT_QUOTE:\n return `<p style=\"${reactCssPropsToCss(designTokens.quote)}\">${children}</p>`;\n case ELEMENT_PARAGRAPH:\n return `<p>${children}</p>`;\n case ELEMENT_UL:\n return `<ul class=\"${UL_CLASSES}\">${children}</ul>`;\n case ELEMENT_OL:\n return `<ol class=\"${OL_CLASSES}\">${children}</ol>`;\n case ELEMENT_LI:\n return `<li>${children}</li>`;\n case ELEMENT_LINK:\n if (node.chosenLink) {\n const { chosenLink } = node;\n return `<a style=\"${reactCssPropsToCss(designTokens.link)}\" target=${\n chosenLink.openInNewTab ? '_blank' : '_self'\n } href=\"${escapeHtml(chosenLink.searchResult.link)}\">${children}</a>`;\n }\n return `<a style=\"${reactCssPropsToCss(designTokens.link)}\" href=\"${escapeHtml(node.url)}\">${children}</a>`;\n case ELEMENT_CHECK_ITEM:\n return `<input type=\"checkbox\"/><label>${children}</label>`;\n\n default:\n return children;\n }\n};\n"],"names":["escapeHtml"],"mappings":";;;;;;;;;;;;;;;;;AAUa,MAAA,IAA+B,CAAC,GAAW,MAAuC;AACvF,MAAA,CAAC,EAAK;AACN,WAAO,EAAoB,CAAI;AAEnC,QAAM,IAAW,EAAK,SAAS,IAAI,CAAC,MAAmB,EAA6B,GAAG,CAAY,CAAC,EAAE,KAAK,EAAE;AAE7G,UAAQ,EAAK;AAAA,SACJ,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,cAAc,EAAmB,EAAa,QAAQ,MAAM;AAAA,SAClE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,OAAO,MAAM;AAAA,SAChE,EAAW;AACZ,aAAO,aAAa,EAAmB,EAAa,KAAK,MAAM;AAAA,SAC9D;AACD,aAAO,MAAM;AAAA,SACZ;AACD,aAAO,cAAc,MAAe;AAAA,SACnC;AACD,aAAO,cAAc,MAAe;AAAA,SACnC;AACD,aAAO,OAAO;AAAA,SACb;AACD,UAAI,EAAK,YAAY;AACjB,cAAM,EAAE,kBAAe;AACvB,eAAO,aAAa,EAAmB,EAAa,IAAI,aACpD,EAAW,eAAe,WAAW,iBAC/BA,EAAW,EAAW,aAAa,IAAI,MAAM;AAAA,MAC3D;AACO,aAAA,aAAa,EAAmB,EAAa,IAAI,YAAYA,EAAW,EAAK,GAAG,MAAM;AAAA,SAC5F;AACD,aAAO,kCAAkC;AAAA;AAGlC,aAAA;AAAA;AAEnB;"}
@@ -20,6 +20,7 @@ export declare type TooltipProps = PropsWithChildren<{
20
20
  flip?: boolean;
21
21
  withArrow?: boolean;
22
22
  hoverDelay?: number;
23
+ enterDelay?: number;
23
24
  open?: boolean;
24
25
  disabled?: boolean;
25
26
  hidden?: boolean;
@@ -35,4 +36,4 @@ export declare enum TooltipAlignment {
35
36
  Middle = "Middle",
36
37
  End = "End"
37
38
  }
38
- export declare const Tooltip: ({ content, tooltipIcon, heading, headingIcon, linkUrl, linkLabel, brightHeader, buttons, children, position, alignment, withArrow, flip, triggerElement, hoverDelay, open, disabled, hidden, }: TooltipProps) => JSX.Element;
39
+ export declare const Tooltip: ({ content, tooltipIcon, heading, headingIcon, linkUrl, linkLabel, brightHeader, buttons, children, position, alignment, withArrow, flip, triggerElement, hoverDelay, enterDelay, open, disabled, hidden, }: TooltipProps) => JSX.Element;