@frontify/guideline-blocks-settings 0.33.5 → 0.34.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Link/LinkSelector/LinkSelector.es.js +66 -58
- package/dist/components/Link/LinkSelector/LinkSelector.es.js.map +1 -1
- package/dist/components/Link/LinkSelector/SectionLink.es.js +3 -3
- package/dist/components/Link/LinkSelector/SectionLink.es.js.map +1 -1
- package/dist/components/Link/utils/getUrl.es.js +1 -1
- package/dist/components/Link/utils/getUrl.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js +24 -37
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js +21 -14
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js +19 -23
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js +23 -11
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js +21 -16
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js +12 -13
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js +31 -32
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js +2 -2
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js +21 -23
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js +14 -15
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js +7 -7
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js +19 -20
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js +26 -13
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js +31 -39
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js +40 -54
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js +12 -15
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js +7 -22
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js +4 -5
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js +25 -0
- package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js.map +1 -0
- package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js +26 -26
- package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js +13 -0
- package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js.map +1 -0
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js +12 -13
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js +12 -13
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js +12 -13
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js +9 -10
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js +9 -10
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js +9 -10
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js +9 -10
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js +12 -13
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js +17 -18
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js +16 -17
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js.map +1 -1
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js +20 -21
- package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js.map +1 -1
- package/dist/index.cjs.js +3 -3
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +30 -33
- package/dist/index.umd.js +3 -3
- package/dist/index.umd.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +3 -6
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButton.es.js +0 -25
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButton.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.es.js +0 -20
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.es.js +0 -26
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.es.js +0 -20
- package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js +0 -53
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.es.js +0 -29
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.es.js.map +0 -1
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js +0 -40
- package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js.map +0 -1
|
@@ -1,42 +1,41 @@
|
|
|
1
1
|
var m = Object.defineProperty;
|
|
2
|
-
var c = (t, e,
|
|
3
|
-
var
|
|
4
|
-
import { jsx as
|
|
5
|
-
import {
|
|
6
|
-
import { Plugin as p, MarkupElement as g, merge as k, alignmentClassnames as y, getColumnBreakClasses as d } from "@frontify/fondue";
|
|
2
|
+
var c = (t, e, s) => e in t ? m(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s;
|
|
3
|
+
var u = (t, e, s) => (c(t, typeof e != "symbol" ? e + "" : e, s), s);
|
|
4
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
5
|
+
import { Plugin as i, MarkupElement as p, merge as g, alignmentClassnames as k, getColumnBreakClasses as y, createPluginFactory as d } from "@frontify/fondue";
|
|
7
6
|
import { TextStyles as a, BlockStyles as q } from "../styles.es.js";
|
|
8
7
|
const x = "textstyle-quote-plugin";
|
|
9
|
-
class
|
|
10
|
-
constructor({ styles:
|
|
8
|
+
class f extends i {
|
|
9
|
+
constructor({ styles: s = q.quote, ...o } = {}) {
|
|
11
10
|
super(a.quote, {
|
|
12
11
|
label: "Quote",
|
|
13
12
|
markupElement: new E(),
|
|
14
|
-
...
|
|
13
|
+
...o
|
|
15
14
|
});
|
|
16
|
-
|
|
17
|
-
this.styles =
|
|
15
|
+
u(this, "styles", {});
|
|
16
|
+
this.styles = s;
|
|
18
17
|
}
|
|
19
18
|
plugins() {
|
|
20
19
|
return [Q(this.styles)];
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
|
-
class E extends
|
|
24
|
-
constructor(e = x,
|
|
25
|
-
super(e,
|
|
22
|
+
class E extends p {
|
|
23
|
+
constructor(e = x, s = l) {
|
|
24
|
+
super(e, s);
|
|
26
25
|
}
|
|
27
26
|
}
|
|
28
|
-
const l = ({ element: t, attributes: e, children:
|
|
27
|
+
const l = ({ element: t, attributes: e, children: s, styles: o }) => {
|
|
29
28
|
const n = t.align;
|
|
30
|
-
return /* @__PURE__ */
|
|
29
|
+
return /* @__PURE__ */ r(
|
|
31
30
|
"blockquote",
|
|
32
31
|
{
|
|
33
32
|
...e,
|
|
34
|
-
className:
|
|
35
|
-
style:
|
|
36
|
-
children:
|
|
33
|
+
className: g([n && k[n], y(t)]),
|
|
34
|
+
style: o,
|
|
35
|
+
children: s
|
|
37
36
|
}
|
|
38
37
|
);
|
|
39
|
-
}, Q = (t) =>
|
|
38
|
+
}, Q = (t) => d({
|
|
40
39
|
key: a.quote,
|
|
41
40
|
isElement: !0,
|
|
42
41
|
component: l,
|
|
@@ -44,11 +43,11 @@ const l = ({ element: t, attributes: e, children: o, styles: s }) => {
|
|
|
44
43
|
rules: [{ validNodeName: ["blockquote", "BLOCKQUOTE"] }]
|
|
45
44
|
}
|
|
46
45
|
})({
|
|
47
|
-
component: (e) => /* @__PURE__ */
|
|
46
|
+
component: (e) => /* @__PURE__ */ r(l, { ...e, styles: t })
|
|
48
47
|
});
|
|
49
48
|
export {
|
|
50
49
|
l as QuoteMarkupElementNode,
|
|
51
|
-
|
|
50
|
+
f as QuotePlugin,
|
|
52
51
|
Q as createQuotePlugin
|
|
53
52
|
};
|
|
54
53
|
//# sourceMappingURL=quotePlugin.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quotePlugin.es.js","sources":["../../../../../src/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {
|
|
1
|
+
{"version":3,"file":"quotePlugin.es.js","sources":["../../../../../src/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n MarkupElement,\n PlatePlugin,\n Plugin,\n PluginProps,\n TextStyleRenderElementProps,\n alignmentClassnames,\n createPluginFactory,\n getColumnBreakClasses,\n merge,\n} from '@frontify/fondue';\nimport type { CSSProperties } from 'react';\nimport { BlockStyles, TextStyles } from '../styles';\n\nconst ID = 'textstyle-quote-plugin';\n\nexport class QuotePlugin extends Plugin {\n public styles: CSSProperties = {};\n constructor({ styles = BlockStyles.quote, ...props }: PluginProps = {}) {\n super(TextStyles.quote, {\n label: 'Quote',\n markupElement: new QuoteMarkupElement(),\n ...props,\n });\n this.styles = styles;\n }\n\n plugins(): PlatePlugin[] {\n return [createQuotePlugin(this.styles)];\n }\n}\n\nclass QuoteMarkupElement extends MarkupElement {\n constructor(id = ID, node = QuoteMarkupElementNode) {\n super(id, node);\n }\n}\n\nexport const QuoteMarkupElementNode = ({ element, attributes, children, styles }: TextStyleRenderElementProps) => {\n const align = element.align as string;\n return (\n <blockquote\n {...attributes}\n className={merge([align && alignmentClassnames[align], getColumnBreakClasses(element)])}\n style={styles}\n >\n {children}\n </blockquote>\n );\n};\n\nexport const createQuotePlugin = (styles: CSSProperties): PlatePlugin =>\n createPluginFactory({\n key: TextStyles.quote,\n isElement: true,\n component: QuoteMarkupElementNode,\n deserializeHtml: {\n rules: [{ validNodeName: ['blockquote', 'BLOCKQUOTE'] }],\n },\n })({\n component: (props: TextStyleRenderElementProps) => <QuoteMarkupElementNode {...props} styles={styles} />,\n });\n"],"names":["ID","QuotePlugin","Plugin","styles","BlockStyles","props","TextStyles","QuoteMarkupElement","__publicField","createQuotePlugin","MarkupElement","id","node","QuoteMarkupElementNode","element","attributes","children","align","jsx","merge","alignmentClassnames","getColumnBreakClasses","createPluginFactory"],"mappings":";;;;;;AAgBA,MAAMA,IAAK;AAEJ,MAAMC,UAAoBC,EAAO;AAAA,EAEpC,YAAY,EAAE,QAAAC,IAASC,EAAY,OAAO,GAAGC,EAAuB,IAAA,IAAI;AACpE,UAAMC,EAAW,OAAO;AAAA,MACpB,OAAO;AAAA,MACP,eAAe,IAAIC,EAAmB;AAAA,MACtC,GAAGF;AAAA,IAAA,CACN;AANE,IAAAG,EAAA,gBAAwB,CAAA;AAO3B,SAAK,SAASL;AAAA,EAClB;AAAA,EAEA,UAAyB;AACrB,WAAO,CAACM,EAAkB,KAAK,MAAM,CAAC;AAAA,EAC1C;AACJ;AAEA,MAAMF,UAA2BG,EAAc;AAAA,EAC3C,YAAYC,IAAKX,GAAIY,IAAOC,GAAwB;AAChD,UAAMF,GAAIC,CAAI;AAAA,EAClB;AACJ;AAEO,MAAMC,IAAyB,CAAC,EAAE,SAAAC,GAAS,YAAAC,GAAY,UAAAC,GAAU,QAAAb,QAA0C;AAC9G,QAAMc,IAAQH,EAAQ;AAElB,SAAA,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAGH;AAAA,MACJ,WAAWI,EAAM,CAACF,KAASG,EAAoBH,CAAK,GAAGI,EAAsBP,CAAO,CAAC,CAAC;AAAA,MACtF,OAAOX;AAAA,MAEN,UAAAa;AAAA,IAAA;AAAA,EAAA;AAGb,GAEaP,IAAoB,CAACN,MAC9BmB,EAAoB;AAAA,EAChB,KAAKhB,EAAW;AAAA,EAChB,WAAW;AAAA,EACX,WAAWO;AAAA,EACX,iBAAiB;AAAA,IACb,OAAO,CAAC,EAAE,eAAe,CAAC,cAAc,YAAY,GAAG;AAAA,EAC3D;AACJ,CAAC,EAAE;AAAA,EACC,WAAW,CAACR,wBAAwCQ,GAAwB,EAAA,GAAGR,GAAO,QAAAF,GAAgB;AAC1G,CAAC;"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var vn=Object.defineProperty;var Cn=(e,n,t)=>n in e?vn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var N=(e,n,t)=>(Cn(e,typeof n!="symbol"?n+"":n,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@frontify/sidebar-settings"),s=require("react/jsx-runtime"),o=require("@frontify/fondue"),x=require("react"),K=require("@frontify/app-bridge"),E=require("@dnd-kit/core"),kn=require("@dnd-kit/modifiers"),de=require("@dnd-kit/sortable"),tt=require("@react-aria/focus"),i=require("@udecode/plate"),nt=require("slate-react"),Sn=require("@react-stately/overlays"),Pn=require("slate"),H=require("@ctrl/tinycolor"),U=e=>e.filter(Boolean).join(" "),En=({onDrop:e,label:n,icon:t,secondaryLabel:r,isLoading:a,fillParentContainer:l,onAssetChooseClick:u,onUploadClick:d,withMenu:c=!0,onClick:w,validFileType:h,verticalLayout:g})=>{const[f,p]=x.useState(!1),[C,v]=x.useState(),P=x.useRef(null),[B,R]=x.useState(void 0),F=S=>{if(S.preventDefault(),p(!1),!D(S.dataTransfer.files)){R("Invalid"),setTimeout(()=>{R(void 0)},1e3);return}e==null||e(S.dataTransfer.files)},D=S=>{if(!h)return!0;for(let A=0;A<S.length;A++){const M=S[A].name.split(".").pop()??"";if(!K.FileExtensionSets[h].includes(M))return!1}return!0},_=S=>{if(!P.current||a)return;const{left:A,top:M}=P.current.getBoundingClientRect(),ue=S.clientX-A,ce=S.clientY-M;v([ue,ce])};return s.jsxs("button",{ref:P,"data-test-id":"block-inject-button",className:U(["tw-font-body tw-relative tw-text-sm tw-leading-4 tw-border tw-flex tw-items-center tw-justify-center tw-cursor-pointer tw-gap-3 tw-w-full first:tw-rounded-tl last:tw-rounded-br",g?"[&:not(:first-child)]:tw-border-t-0 first:tw-rounded-tr last:tw-rounded-bl":"[&:not(:first-child)]:tw-border-l-0 first:tw-rounded-bl last:tw-rounded-tr",l?"tw-h-full":"tw-h-[72px]",f&&!a?"tw-border-dashed":"tw-border-solid",C&&"tw-bg-blank-state-pressed-inverse",f&&"tw-bg-blank-state-weak-inverse",B?"!tw-border-red-50 !tw-cursor-not-allowed":" tw-border-blank-state-line",a||C||f||B?"":"tw-text-text-weak hover:tw-text-blank-state-hover hover:tw-bg-blank-state-hover-inverse hover:tw-border-blank-state-line-hover active:tw-text-blank-state-pressed active:tw-bg-blank-state-pressed-inverse active:tw-border-blank-state-line-hover",(f||C)&&!B?"[&>*]:tw-pointer-events-none tw-border-blank-state-line-hover":"tw-bg-blank-state-shaded-inverse tw-text-blank-state-shaded"]),onDragEnter:e?S=>{var A;if(p(!0),h==="Images")for(const M of Array.from(S.dataTransfer.items))(A=M==null?void 0:M.type)!=null&&A.startsWith("image/")?R(void 0):R("Invalid")}:void 0,onDragLeave:e?()=>{p(!1),R(void 0)}:void 0,onDrop:e?F:void 0,onClick:S=>{c&&_(S),w==null||w()},children:[a?s.jsx(o.LoadingCircle,{}):B?s.jsxs("div",{className:" tw-flex tw-items-center tw-justify-center tw-text-red-60 tw-font-medium",children:[s.jsx(o.IconExclamationMarkTriangle,{}),B]}):s.jsxs(s.Fragment,{children:[t&&s.jsx("div",{children:t}),(n||r)&&s.jsxs("div",{className:"tw-flex tw-flex-col tw-items-start",children:[n&&s.jsx("div",{className:"tw-font-medium",children:n}),r&&s.jsx("div",{className:"tw-font-normal",children:r})]})]}),C&&s.jsx("div",{className:"tw-absolute tw-left-0 tw-top-full tw-z-20",style:{left:C[0],top:C[1]},children:s.jsx(o.Flyout,{onOpenChange:S=>!S&&v(void 0),isOpen:!0,fitContent:!0,hug:!1,legacyFooter:!1,trigger:s.jsx("div",{}),children:s.jsx(o.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[...d?[{id:"upload",size:o.MenuItemContentSize.XSmall,title:"Upload asset",onClick:()=>{d(),v(void 0)},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:s.jsx(o.IconArrowCircleUp20,{})})}]:[],...u?[{id:"asset",size:o.MenuItemContentSize.XSmall,title:"Browse asset",onClick:()=>{u(),v(void 0)},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:s.jsx(o.IconImageStack20,{})})}]:[]]}]})})})]})},Q=e=>{const n=r=>typeof r=="object"&&["red","green","blue"].every(l=>r.hasOwnProperty(l)),t=r=>{const a=typeof r.alpha=="number"?r.alpha:1;return{r:r.red,g:r.green,b:r.blue,a}};return n(e)?t(e):e},Tn=e=>typeof e=="object"&&["red","green","blue"].every(t=>e==null?void 0:e.hasOwnProperty(t)),In=(e,n)=>{const t=Tn(e)?Q(e):e,r=new H.TinyColor(t);return n?r.getBrightness()<n:r.isDark()||r.getAlpha()>.25&&r.getAlpha()<1},Bn=e=>new H.TinyColor(Q(e)).toHex8String(),jn=e=>new H.TinyColor(Q(e)).toHexString(),Ne=e=>new H.TinyColor(Q(e)).toRgbString(),Nn=(e,n)=>new H.TinyColor(n).setAlpha(e).toRgbString(),Ln=e=>{const{r:n,g:t,b:r,a}=new H.TinyColor(e);return{red:n,green:t,blue:r,alpha:a}},Ze=e=>typeof e=="object"&&["red","green","blue"].every(t=>e==null?void 0:e.hasOwnProperty(t)),An=(e,n)=>{const t=Ze(e)?Q(e):e,r=Ze(n)?Q(n):n;let a=new H.TinyColor(t);const l=new H.TinyColor(r);for(;H.readability(a,l)<4.5;)a=a.darken(1);return a.toRgbString()},Rn=(e,n,t)=>{const r=[...e],a=t<0?r.length+t:t;if(a>=0&&a<r.length){const l=r.splice(n,1)[0];r.splice(a,0,l)}return r},Fn=e=>({backgroundColor:Ne(e)});var O=(e=>(e.Solid="Solid",e.Dashed="Dashed",e.Dotted="Dotted",e))(O||{});const rt={Solid:"solid",Dotted:"dotted",Dashed:"dashed"};var V=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(V||{});const G={None:"0px",Small:"2px",Medium:"4px",Large:"12px"};var $=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))($||{});const J={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var W=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(W||{});const Z={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var X=(e=>(e.Global="Global",e.Custom="Custom",e))(X||{}),q=(e=>(e.Auto="Auto",e.S="S",e.M="M",e.L="L",e))(q||{});const st={Auto:"4px",S:"10px",M:"30px",L:"50px"},Mn={red:241,green:241,blue:241,alpha:1},at={red:234,green:235,blue:235,alpha:1},Dn="1px",ae="24px",oe="24px",On=(e=O.Solid,n="1px",t=at)=>({borderStyle:rt[e],borderWidth:n,borderColor:Ne(t)}),Un=(e,n=!1,t)=>({borderRadius:n?t:G[e]}),ot=x.createContext(!1),it=({children:e,isDragPreview:n})=>s.jsx(ot.Provider,{value:n,children:e}),ie=()=>x.useContext(ot),lt=x.createContext({openFlyoutIds:[],setOpenFlyoutIds:()=>console.error("No MultiFlyoutContext Provider found")}),ut=({children:e,openFlyoutIds:n,setOpenFlyoutIds:t})=>{const r=x.useMemo(()=>({openFlyoutIds:n,setOpenFlyoutIds:t}),[n,t]);return s.jsx(lt.Provider,{value:r,children:e})},ct=()=>x.useContext(lt),we=e=>{const{openFlyoutIds:n,setOpenFlyoutIds:t}=ct(),r=x.useCallback(a=>{t(l=>{const u=l.filter(d=>d!==e);return a?[...u,e]:u})},[e,t]);return{isOpen:n.includes(e),onOpenChange:r}},et=({children:e})=>s.jsx("div",{className:"tw-pointer-events-auto tw-flex tw-flex-shrink-0 tw-gap-px tw-px-px tw-h-[26px] tw-items-center tw-self-start tw-leading-none",children:e}),dt=(e,n)=>{const{blockAssets:t,addAssetIdsToKey:r,deleteAssetIdsFromKey:a,updateAssetIdsFromKey:l}=K.useBlockAssets(e),u=(t==null?void 0:t[n])||[];return{onAttachmentsAdd:async g=>{await r(n,g.map(f=>f.id))},onAttachmentDelete:async g=>{await a(n,[g.id])},onAttachmentReplace:async(g,f)=>{const p=u.map(C=>C.id===g.id?f.id:C.id);await l(n,p)},onAttachmentsSorted:async g=>{const f=g.map(p=>p.id);await l(n,f)},attachments:u,appBridge:e}},gt=x.createContext(null),mt=({appBridge:e,children:n,assetId:t})=>{const r=dt(e,t);return s.jsx(gt.Provider,{value:r,children:n})},ht=()=>{const e=x.useContext(gt);if(!e)throw new Error("No AttachmentsContext Provided. Component must be wrapped in an 'AttachmentsProvider' or the 'withAttachmentsProvider' HOC");return e},_n=(e,n)=>{const t=r=>s.jsx(mt,{appBridge:r.appBridge,assetId:n,children:s.jsx(e,{...r})});return t.displayName="withAttachmentsProvider",t},Hn=[E.KeyboardCode.Down,E.KeyboardCode.Right,E.KeyboardCode.Up,E.KeyboardCode.Left],ft=(e,n)=>(t,{currentCoordinates:r,context:{activeNode:a}})=>{if(t.preventDefault(),Hn.includes(t.code)){const l=(a==null?void 0:a.offsetWidth)??0,u=(a==null?void 0:a.offsetHeight)??0;switch(t.code){case E.KeyboardCode.Right:return{...r,x:r.x+l+e};case E.KeyboardCode.Left:return{...r,x:r.x-l-e};case E.KeyboardCode.Down:return{...r,y:r.y+u+n};case E.KeyboardCode.Up:return{...r,y:r.y-u-n}}}},Vn={start:["Space","Enter"],cancel:[],end:["Space","Enter","Escape"]},zn=(e=0,n=0)=>{const t=ft(e,n);return E.useSensors(E.useSensor(E.PointerSensor),E.useSensor(E.KeyboardSensor,{coordinateGetter:t,keyboardCodes:Vn}))},$n=e=>e==="IMAGE"?s.jsx(o.IconImage24,{}):e==="VIDEO"?s.jsx(o.IconPlayFrame24,{}):e==="AUDIO"?s.jsx(o.IconMusicNote24,{}):s.jsx(o.IconDocument24,{}),Le=x.forwardRef(({item:e,isEditing:n,draggableProps:t,transformStyle:r,isDragging:a,isOverlay:l,isLoading:u,onDelete:d,onReplaceWithBrowse:c,onReplaceWithUpload:w,onDownload:h},g)=>{const[f,p]=x.useState(),[C,{selectedFiles:v}]=K.useFileInput({multiple:!0,accept:"image/*"}),[P,{results:B,doneAll:R}]=K.useAssetUpload(),{focusProps:F,isFocusVisible:D}=tt.useFocusRing();x.useEffect(()=>{v&&P(v[0])},[v]),x.useEffect(()=>{R&&w(B[0])},[R,B]);const _=u||v&&!R;return s.jsxs("button",{"aria-label":"Download attachment","data-test-id":"attachments-item",onClick:()=>h==null?void 0:h(),ref:g,style:{...r,opacity:a&&!l?.3:1,fontFamily:"var(-f-theme-settings-body-font-family)"},className:U(["tw-cursor-pointer tw-text-left tw-w-full tw-relative tw-flex tw-gap-3 tw-px-5 tw-py-3 tw-items-center tw-group hover:tw-bg-box-neutral-hover",a?"tw-bg-box-neutral-hover":""]),children:[s.jsx("div",{className:"tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:_?s.jsx(o.LoadingCircle,{size:o.LoadingCircleSize.Small}):$n(e.objectType)}),s.jsxs("div",{className:"tw-text-s tw-flex-1 tw-min-w-0",children:[s.jsx("div",{className:"tw-whitespace-nowrap tw-overflow-hidden tw-text-ellipsis tw-font-bold tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:e.title}),s.jsx("div",{className:"tw-text-text-weak",children:`${e.fileSizeHumanReadable} - ${e.extension}`})]}),n&&s.jsxs("div",{"data-test-id":"attachments-actionbar",className:U(["tw-flex tw-gap-0.5 group-focus:tw-opacity-100 focus-visible:tw-opacity-100 focus-within:tw-opacity-100 group-hover:tw-opacity-100",l||(f==null?void 0:f.id)===e.id?"tw-opacity-100":"tw-opacity-0"]),children:[s.jsx("button",{...F,...t,"aria-label":"Drag attachment",className:U([" tw-border-button-border tw-bg-button-background active:tw-bg-button-background-pressed tw-group tw-border tw-box-box tw-relative tw-flex tw-items-center tw-justify-center tw-outline-none tw-font-medium tw-rounded tw-h-9 tw-w-9 ",a||l?"tw-cursor-grabbing tw-bg-button-background-pressed hover:tw-bg-button-background-pressed":"tw-cursor-grab hover:tw-bg-button-background-hover",D&&o.FOCUS_STYLE,D&&"tw-z-[2]"]),children:s.jsx(o.IconGrabHandle20,{})}),s.jsx("div",{"data-test-id":"attachments-actionbar-flyout",children:s.jsx(o.Flyout,{placement:o.FlyoutPlacement.Right,isOpen:(f==null?void 0:f.id)===e.id,fitContent:!0,legacyFooter:!1,onOpenChange:S=>p(S?e:void 0),trigger:(S,A)=>s.jsx(o.Button,{ref:A,icon:s.jsx(o.IconPen20,{}),emphasis:o.ButtonEmphasis.Default,onClick:()=>p(e)}),children:s.jsx(o.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[{id:"upload",size:o.MenuItemContentSize.XSmall,title:"Replace with upload",onClick:()=>{C(),p(void 0)},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:s.jsx(o.IconArrowCircleUp20,{})})},{id:"asset",size:o.MenuItemContentSize.XSmall,title:"Replace with asset",onClick:()=>{c(),p(void 0)},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:s.jsx(o.IconImageStack20,{})})}]},{id:"menu-delete",menuItems:[{id:"delete",size:o.MenuItemContentSize.XSmall,title:"Delete",style:o.MenuItemStyle.Danger,onClick:()=>{d(),p(void 0)},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:s.jsx(o.IconTrashBin20,{})})}]}]})})})]})]})});Le.displayName="AttachmentItem";const Wn=e=>{const{attributes:n,listeners:t,setNodeRef:r,transform:a,transition:l,isDragging:u}=de.useSortable({id:e.item.id}),d={transform:a?`translate(${a.x}px, ${a.y}px)`:"",transition:l,zIndex:u?2:1},c={...n,...t};return s.jsx(Le,{ref:r,isDragging:u,transformStyle:d,draggableProps:c,...e})},qn=({children:e,isFlyoutOpen:n,triggerProps:t,triggerRef:r})=>s.jsxs("button",{className:U(["tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",n?"tw-bg-box-neutral-pressed tw-text-box-neutral-inverse-pressed":"tw-bg-base hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed tw-text-box-neutral-inverse hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed"]),...t,ref:r,"data-test-id":"attachments-button-trigger",children:[s.jsx(o.IconPaperclip16,{}),e,s.jsx(o.IconCaretDown12,{})]}),xt=({items:e=[],onDelete:n,onReplaceWithBrowse:t,onReplaceWithUpload:r,onBrowse:a,onUpload:l,onSorted:u,appBridge:d,triggerComponent:c=qn,isOpen:w,onOpenChange:h})=>{const[g,f]=x.useState(e),[p,C]=x.useState(!1),v=E.useSensors(E.useSensor(E.PointerSensor),E.useSensor(E.KeyboardSensor)),[P,B]=x.useState(void 0),[R,F]=x.useState(!1),[D,_]=x.useState([]),[S,A]=x.useState(null),M=K.useEditorState(d),{openAssetChooser:ue,closeAssetChooser:ce}=K.useAssetChooser(d),Ge=w!==void 0,Ce=Ge?w:p,Y=g==null?void 0:g.find(b=>b.id===P),[fn,{results:Ke,doneAll:Xe}]=K.useAssetUpload({onUploadProgress:()=>!R&&F(!0)}),se=b=>{const I=Ge?h:C;I==null||I(b)};x.useEffect(()=>{f(e)},[e]),x.useEffect(()=>{S&&(F(!0),fn(S))},[S]),x.useEffect(()=>{(async()=>{Xe&&(await l(Ke),F(!1))})()},[Xe,Ke]);const xn=()=>{se(!1),ue(b=>{a(b),ce(),se(!0)},{multiSelection:!0,selectedValueIds:g.map(b=>b.id)})},Qe=b=>{se(!1),ue(async I=>{se(!0),ce(),_([...D,b.id]),await t(b,I[0]),_(D.filter(z=>z!==b.id))},{multiSelection:!1,selectedValueIds:g.map(I=>I.id)})},Ye=async(b,I)=>{_([...D,b.id]),await r(b,I),_(D.filter(z=>z!==b.id))},wn=b=>{const{active:I}=b;B(I.id)},pn=b=>{const{active:I,over:z}=b;if(z&&I.id!==z.id&&g){const yn=g.findIndex(ke=>ke.id===I.id),bn=g.findIndex(ke=>ke.id===z.id),Je=de.arrayMove(g,yn,bn);f(Je),u(Je)}B(void 0)};return M||((g==null?void 0:g.length)??0)>0?s.jsx(o.LegacyTooltip,{withArrow:!0,position:o.TooltipPosition.Top,content:"Attachments",disabled:Ce,enterDelay:500,triggerElement:s.jsx("div",{"data-test-id":"attachments-flyout-button",children:s.jsx(o.Flyout,{placement:o.FlyoutPlacement.BottomRight,onOpenChange:b=>se(Y?!0:b),isOpen:Ce,hug:!1,fitContent:!0,legacyFooter:!1,trigger:(b,I)=>s.jsx(c,{isFlyoutOpen:Ce,triggerProps:b,triggerRef:I,children:s.jsx("div",{children:e.length>0?e.length:"Add"})}),children:s.jsxs("div",{className:"tw-w-[300px]","data-test-id":"attachments-flyout-content",children:[g.length>0&&s.jsxs(E.DndContext,{sensors:v,collisionDetection:E.closestCenter,onDragStart:wn,onDragEnd:pn,modifiers:[kn.restrictToWindowEdges],children:[s.jsx(de.SortableContext,{items:g,strategy:de.rectSortingStrategy,children:s.jsx("div",{className:"tw-border-b tw-border-b-line",children:g.map(b=>s.jsx(Wn,{isEditing:M,isLoading:D.includes(b.id),item:b,onDelete:()=>n(b),onReplaceWithBrowse:()=>Qe(b),onReplaceWithUpload:I=>Ye(b,I),onDownload:()=>d.dispatch({name:"downloadAsset",payload:b})},b.id))})}),s.jsx(E.DragOverlay,{children:Y&&s.jsx(Le,{isOverlay:!0,isEditing:M,item:Y,isDragging:!0,onDelete:()=>n(Y),onReplaceWithBrowse:()=>Qe(Y),onReplaceWithUpload:b=>Ye(Y,b)},P)})]}),M&&s.jsxs("div",{className:"tw-px-5 tw-py-3",children:[s.jsx("div",{className:"tw-font-body tw-font-medium tw-text-text tw-text-s tw-my-4",children:"Add attachments"}),s.jsx(o.AssetInput,{isLoading:R,size:o.AssetInputSize.Small,onUploadClick:b=>A(b),onLibraryClick:xn})]})]})})})}):null},Gn=(e,n)=>{const t=[o.FOCUS_VISIBLE_STYLE,"tw-relative tw-inline-flex tw-items-center tw-justify-center","tw-h-6 tw-p-1","tw-rounded","tw-text-xs tw-font-medium","tw-gap-0.5","focus-visible:tw-z-10"];return n?t.push("tw-bg-box-neutral-pressed","tw-text-box-neutral-inverse-pressed",e==="grab"?"tw-cursor-grabbing":"tw-cursor-pointer"):t.push("hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed","tw-text-text-weak hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed",e==="grab"?"!tw-cursor-grab active:tw-cursor-grabbing":"tw-cursor-pointer"),U(t)},le=x.forwardRef(({onClick:e,children:n,forceActiveStyle:t,cursor:r="pointer","data-test-id":a="base-toolbar-button",...l},u)=>s.jsx("button",{onClick:e,className:Gn(r,t),"data-test-id":a,...l,ref:u,children:n}));le.displayName="BaseToolbarButton";const Kn=({children:e,isFlyoutOpen:n,triggerProps:t,triggerRef:r})=>s.jsxs(le,{forceActiveStyle:n,"data-test-id":"attachments-toolbar-button-trigger",...t,ref:r,children:[s.jsx(o.IconPaperclip16,{}),e,s.jsx(o.IconCaretDown12,{})]}),wt="attachments",pt=({flyoutId:e=wt})=>{const n=o.useMemoizedId(e),{appBridge:t,attachments:r,onAttachmentsAdd:a,onAttachmentDelete:l,onAttachmentReplace:u,onAttachmentsSorted:d}=ht(),{isOpen:c,onOpenChange:w}=we(n),h=ie();return s.jsx(xt,{onUpload:a,onDelete:l,onReplaceWithBrowse:u,onReplaceWithUpload:u,onSorted:d,onBrowse:a,items:r,appBridge:t,triggerComponent:Kn,isOpen:c&&!h,onOpenChange:w})},Ae=({open:e,content:n,children:t,disabled:r})=>s.jsx(o.LegacyTooltip,{withArrow:!0,hoverDelay:0,enterDelay:300,open:e,disabled:r,position:o.TooltipPosition.Top,content:s.jsx("div",{children:n}),triggerElement:t,"data-test-id":"toolbar-button-tooltip"}),Xn=({tooltip:e,icon:n,onClick:t})=>{const r=ie();return s.jsx(Ae,{disabled:r,content:e??"",children:s.jsx(le,{"data-test-id":"block-item-wrapper-toolbar-btn",onClick:t,children:n})})},yt="Drag or press ↵ to move",bt="Move with ↑↓←→ and confirm with ↵",vt=({tooltip:e,icon:n,setActivatorNodeRef:t,draggableProps:r})=>{const a=ie();return s.jsx(Ae,{open:a,content:s.jsx("div",{children:a?bt:e??yt}),children:s.jsx(le,{ref:t,"data-test-id":"block-item-wrapper-toolbar-btn",forceActiveStyle:a,cursor:"grab",...r,children:n})})},Re=({content:e,icon:n,tooltip:t,flyoutId:r,flyoutFooter:a,flyoutHeader:l})=>{const u=o.useMemoizedId(r),{isOpen:d,onOpenChange:c}=we(u),w=ie();return s.jsx(Ae,{disabled:w||d,content:t,children:s.jsx("div",{className:"tw-flex tw-flex-shrink-0 tw-flex-1 tw-h-6 tw-relative",children:s.jsx(o.Flyout,{isOpen:d&&!w,legacyFooter:!1,fixedFooter:a,fixedHeader:l,fitContent:!0,hug:!1,placement:o.FlyoutPlacement.BottomRight,onOpenChange:c,trigger:(h,g)=>s.jsx(le,{"data-test-id":"block-item-wrapper-toolbar-flyout",forceActiveStyle:d&&!w,...h,ref:g,children:n}),children:e})})})},Ct=({items:e,flyoutId:n})=>{const{onOpenChange:t}=we(n);return s.jsx(o.ActionMenu,{menuBlocks:e.map((r,a)=>({id:a.toString(),menuItems:r.map((l,u)=>({id:a.toString()+u.toString(),size:o.MenuItemContentSize.XSmall,title:l.title,style:l.style,onClick:()=>{t(!1),l.onClick()},initialValue:!0,decorator:s.jsx("div",{className:"tw-mr-2",children:l.icon})}))}))})},Fe="menu",kt=({items:e,flyoutId:n=Fe,tooltip:t="Options"})=>{const r=o.useMemoizedId(n);return s.jsx(Re,{icon:s.jsx(o.IconDotsHorizontal16,{}),tooltip:t,flyoutId:r,content:s.jsx(Ct,{items:e,flyoutId:r})})},St=({items:e,attachments:n})=>s.jsxs("div",{"data-test-id":"block-item-wrapper-toolbar",className:"tw-rounded-md tw-bg-base tw-border tw-border-line-strong tw-divide-x tw-divide-line-strong tw-shadow-lg tw-flex tw-flex-none tw-items-center tw-isolate",children:[n.isEnabled&&s.jsx(et,{children:s.jsx(pt,{})}),s.jsx(et,{children:e.map(t=>t.type==="dragHandle"?s.jsx(vt,{...t},t.tooltip+t.type):t.type==="menu"?s.jsx(kt,{...t},t.tooltip+t.type):t.type==="flyout"?s.jsx(Re,{...t},t.tooltip+t.type):s.jsx(Xn,{...t},t.tooltip+t.type))})]}),Qn=({children:e,toolbarItems:n,shouldHideWrapper:t,shouldHideComponent:r=!1,isDragging:a=!1,shouldFillContainer:l,outlineOffset:u=2,shouldBeShown:d=!1,showAttachments:c=!1})=>{const[w,h]=x.useState(d?[Fe]:[]),g=x.useRef(null);if(t)return s.jsx(s.Fragment,{children:e});const f=n==null?void 0:n.filter(C=>C!==void 0),p=w.length>0||d;return s.jsx(it,{isDragPreview:a,children:s.jsx(ut,{openFlyoutIds:w,setOpenFlyoutIds:h,children:s.jsxs("div",{ref:g,"data-test-id":"block-item-wrapper",style:{outlineOffset:u},className:U(["tw-relative tw-group tw-outline-1 tw-outline-box-selected-inverse",l&&"tw-flex-1 tw-h-full tw-w-full","hover:tw-outline focus-within:tw-outline",p&&"tw-outline",r&&"tw-opacity-0"]),children:[s.jsx("div",{style:{right:-1-u,bottom:`calc(100% - ${2+u}px)`},className:U(["tw-pointer-events-none tw-absolute tw-bottom-[calc(100%-4px)] tw-right-[-3px] tw-w-full tw-opacity-0 tw-z-[60]","group-hover:tw-opacity-100 group-focus:tw-opacity-100 focus-within:tw-opacity-100","tw-flex tw-justify-end",p&&"tw-opacity-100"]),children:s.jsx(St,{attachments:{isEnabled:c},items:f})}),e]})})})},Yn=({onDownload:e})=>{const{isFocused:n,focusProps:t}=tt.useFocusRing();return s.jsx(o.LegacyTooltip,{withArrow:!0,position:o.TooltipPosition.Top,content:"Download",enterDelay:500,triggerElement:s.jsx("button",{tabIndex:0,"aria-label":"Download",...t,className:U(["tw-outline-none tw-rounded",n&&o.FOCUS_STYLE]),onClick:e,onPointerDown:r=>r.preventDefault(),children:s.jsx("span",{"data-test-id":"download-button",className:"tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-bg-box-neutral-strong-inverse hover:tw-bg-box-neutral-strong-inverse-hover active:tw-bg-box-neutral-strong-inverse-pressed tw-text-box-neutral-strong tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",children:s.jsx(o.IconArrowCircleDown16,{})})})})},Jn=({value:e="",gap:n,columns:t,show:r=!0,plugins:a})=>{const[l,u]=x.useState(null);return x.useEffect(()=>{(async()=>u(await o.serializeRawToHtmlAsync(e,a,t,n)))()},[e,t,n,a]),!r||l==="<br />"?null:l!==null?s.jsx("div",{className:"tw-w-full tw-whitespace-pre-wrap","data-test-id":"rte-content-html",dangerouslySetInnerHTML:{__html:l}}):s.jsx("div",{className:"tw-rounded-sm tw-bg-base-alt tw-animate-pulse tw-h-full tw-min-h-[10px] tw-w-full"})},Pt=e=>{if(!e)return!1;const n=t=>t.some(r=>r.text?r.text!=="":r.children?n(r.children):!1);try{const t=JSON.parse(e);return n(t)}catch{return!1}},Zn=(e="p",n="",t)=>Pt(n)?n:JSON.stringify([{type:e,children:[{text:n,textStyle:e}],align:t}]),er=(e,n,t)=>e===X.Custom?n:t,tr=e=>e.map(Et),Et=e=>({id:e.id,title:e.name,colors:e.colors.map(rr)}),nr=e=>"revision"in e,rr=e=>{if(nr(e)){const{title:n,revision:t}=e;return{alpha:t.rgba.alpha?t.rgba.alpha/255:1,red:t.rgba.red??0,green:t.rgba.green??0,blue:t.rgba.blue??0,name:n??""}}return{alpha:e.alpha?e.alpha/255:1,red:e.red??0,green:e.green??0,blue:e.blue??0,name:e.name??""}},Me=(e,n)=>{const t=i.getAboveNode(e,{match:{type:i.ELEMENT_LINK}});return Array.isArray(t)?n(t[0]):""},Tt=e=>Me(e,n=>{var t,r;return((r=(t=n.chosenLink)==null?void 0:t.searchResult)==null?void 0:r.link)||""}),It=e=>Me(e,n=>n.url||""),Bt=e=>{var n,t;return e.url||((t=(n=e.chosenLink)==null?void 0:n.searchResult)==null?void 0:t.link)||""},jt=e=>Me(e,Bt),De=/^\/(document|r)\/\S+$/i,pe=e=>{if(De.test(e))return e;try{return new URL(e),e}catch{return`https://${e}`}},ye=e=>{if(De.test(e))return!0;try{const n=new URL(e);return["http:","https:","mailto:","tel:"].includes(n.protocol)&&n.pathname!==""}catch{return!1}},te=e=>ye(pe(e))||e==="",Nt=(e,{type:n})=>{const{apply:t,normalizeNode:r}=e;return e.apply=a=>{if(a.type!=="set_selection"){t(a);return}const l=a.newProperties;if(!(l!=null&&l.focus)||!l.anchor||!i.isCollapsed(l)){t(a);return}const u=i.getAboveNode(e,{at:l,match:{type:i.getPluginType(e,k)}});if(u){const[,d]=u;let c;i.isStartPoint(e,l.focus,d)&&(c=i.getPreviousNodeEndPoint(e,d)),i.isEndPoint(e,l.focus,d)&&(c=i.getNextNodeStartPoint(e,d)),c&&(a.newProperties={anchor:c,focus:c})}t(a)},e.normalizeNode=([a,l])=>{if(a.type===i.getPluginType(e,k)){const u=e.selection;if(u&&i.isCollapsed(u)&&i.isEndPoint(e,u.focus,l)){const d=i.getNextNodeStartPoint(e,l);if(d)i.select(e,d);else{const c=Pn.Path.next(l);i.insertNodes(e,{text:""},{at:c}),i.select(e,c)}}}r([a,l])},i.withRemoveEmptyNodes(e,i.mockPlugin({options:{types:n}}))},Lt=(e,n,t)=>{i.insertNodes(e,[Mt(e,n)],t)},Oe=i.createStore("floatingButton")({openEditorId:null,mouseDown:!1,updated:!1,url:"",text:"",buttonStyle:"primary",newTab:!1,mode:"",isEditing:!1}).extendActions(e=>({reset:()=>{e.url(""),e.text(""),e.buttonStyle("primary"),e.newTab(!1),e.mode(""),e.isEditing(!1)}})).extendActions(e=>({show:(n,t)=>{e.mode(n),e.isEditing(!1),e.openEditorId(t)},hide:()=>{e.reset(),e.openEditorId(null)}})).extendSelectors(e=>({isOpen:n=>e.openEditorId===n})),T=Oe.set,L=Oe.get,ne=()=>Oe.use,Ue=e=>{if(!e.selection)return;const{isUrl:n,forceSubmit:t}=i.getPluginOptions(e,k),r=L.url();if(!((n==null?void 0:n(r))||t))return;const l=L.text(),u=L.buttonStyle(),d=L.newTab()?void 0:"_self";return T.hide(),At(e,{url:r,text:l,buttonStyle:u,target:d,isUrl:c=>t||!n?!0:n(c)}),setTimeout(()=>{i.focusEditor(e,e.selection??void 0)},0),!0},re=(e,n)=>i.withoutNormalizing(e,()=>{var t,r,a,l,u,d;if(n!=null&&n.split){if(i.getAboveNode(e,{at:(t=e.selection)==null?void 0:t.anchor,match:{type:i.getPluginType(e,k)}}))return i.splitNodes(e,{at:(r=e.selection)==null?void 0:r.anchor,match:h=>i.isElement(h)&&h.type===i.getPluginType(e,k)}),re(e,{at:(a=e.selection)==null?void 0:a.anchor}),!0;if(i.getAboveNode(e,{at:(l=e.selection)==null?void 0:l.focus,match:{type:i.getPluginType(e,k)}}))return i.splitNodes(e,{at:(u=e.selection)==null?void 0:u.focus,match:h=>i.isElement(h)&&h.type===i.getPluginType(e,k)}),re(e,{at:(d=e.selection)==null?void 0:d.focus}),!0}i.unwrapNodes(e,{match:{type:i.getPluginType(e,k)},...n})}),At=(e,{url:n,text:t,buttonStyle:r,target:a,insertTextInButton:l,insertNodesOptions:u,isUrl:d=i.getPluginOptions(e,k).isUrl})=>{var B;const c=e.selection;if(!c)return;const w=i.getAboveNode(e,{at:c,match:{type:i.getPluginType(e,k)}});if(l&&w)return e.insertText(n),!0;if(!(d!=null&&d(n)))return;if(i.isDefined(t)&&t.length===0&&(t=n),w)return or(n,e,w,a,r,t),!0;const h=i.findNode(e,{at:c,match:{type:i.getPluginType(e,k)}}),[g,f]=h??[],p=sr(e,f,t);if(i.isExpanded(c))return ar(w,e,n,r,a,t),!0;p&&i.removeNodes(e,{at:f});const C=i.getNodeProps(g??{}),v=(B=e.selection)==null?void 0:B.focus.path;if(!v)return;const P=i.getNodeLeaf(e,v);return t!=null&&t.length||(t=n),Lt(e,{...C,url:n,target:a,children:[{...P,text:t}]},u),!0};function sr(e,n,t){return n&&(t==null?void 0:t.length)&&t!==i.getEditorString(e,n)}function ar(e,n,t,r,a,l){e?re(n,{at:e[1]}):re(n,{split:!0}),Rt(n,{url:t,buttonStyle:r,target:a}),_e(n,{url:t,target:a,text:l})}function or(e,n,t,r,a,l){var u,d,c;(e!==((u=t[0])==null?void 0:u.url)||r!==((d=t[0])==null?void 0:d.target)||a!==((c=t[0])==null?void 0:c.buttonStyle))&&i.setNodes(n,{url:e,target:r,buttonStyle:a},{at:t[1]}),_e(n,{url:e,text:l,target:r})}const _e=(e,{text:n})=>{const t=i.getAboveNode(e,{match:{type:i.getPluginType(e,k)}});if(t){const[r,a]=t;if(n!=null&&n.length&&n!==i.getEditorString(e,a)){const l=r.children[0];i.replaceNodeChildren(e,{at:a,nodes:{...l,text:n},insertOptions:{select:!0}})}}},Rt=(e,{url:n,buttonStyle:t,target:r,...a})=>{i.wrapNodes(e,{type:i.getPluginType(e,k),url:n,buttonStyle:t,target:r,children:[]},{split:!0,...a})},ir=(e,n)=>{const t=i.getAboveNode(e,{match:{type:k}});return Array.isArray(t)?n(t[0]):""},Ft=e=>ir(e,n=>n.url??""),Mt=(e,{url:n,text:t="",buttonStyle:r="primary",target:a,children:l})=>({type:i.getPluginType(e,k),url:n,target:a,buttonStyle:r,children:l??[{text:t}]}),Dt=(e,{focused:n}={})=>{if(L.mode()==="edit"){be(e);return}He(e,{focused:n})},be=e=>{const n=i.findNode(e,{match:{type:i.getPluginType(e,k)}});if(!n)return;const[t,r]=n;let a=i.getEditorString(e,r);T.url(t.url),T.newTab(t.target===void 0),a===t.url&&(a=""),T.text(a),T.isEditing(!0)},He=(e,{focused:n}={})=>{L.mode()||!n||i.isRangeAcrossBlocks(e,{at:e.selection})||i.someNode(e,{match:{type:i.getPluginType(e,k)}})||(T.text(i.getEditorString(e,e.selection)),T.show("insert",e.id))},ve={buttonPrimary:{fontFamily:"var(--f-theme-settings-button-primary-font-family)",fontSize:"var(--f-theme-settings-button-primary-font-size)",fontWeight:"var(--f-theme-settings-button-primary-font-weight)",lineHeight:"var(--f-theme-settings-button-primary-line-height)",paddingTop:"var(--f-theme-settings-button-primary-padding-top)",paddingRight:"var(--f-theme-settings-button-primary-padding-right)",paddingBottom:"var(--f-theme-settings-button-primary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-primary-padding-left)",fontStyle:"var(--f-theme-settings-button-primary-font-style)",textTransform:"var(--f-theme-settings-button-primary-text-transform)",backgroundColor:"var(--f-theme-settings-button-primary-background-color)",borderColor:"var(--f-theme-settings-button-primary-border-color)",borderRadius:"var(--f-theme-settings-button-primary-border-radius)",borderWidth:"var(--f-theme-settings-button-primary-border-width)",color:"var(--f-theme-settings-button-primary-color)",marginTop:"10px",marginBottom:"10px",display:"inline-block",hover:{backgroundColor:"var(--f-theme-settings-button-primary-background-color-hover)",borderColor:"var(--f-theme-settings-button-primary-border-color-hover)",color:"var(--f-theme-settings-button-primary-color-hover)"}},buttonSecondary:{fontFamily:"var(--f-theme-settings-button-secondary-font-family)",fontSize:"var(--f-theme-settings-button-secondary-font-size)",fontWeight:"var(--f-theme-settings-button-secondary-font-weight)",lineHeight:"var(--f-theme-settings-button-secondary-line-height)",paddingTop:"var(--f-theme-settings-button-secondary-padding-top)",paddingRight:"var(--f-theme-settings-button-secondary-padding-right)",paddingBottom:"var(--f-theme-settings-button-secondary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-secondary-padding-left)",fontStyle:"var(--f-theme-settings-button-secondary-font-style)",textTransform:"var(--f-theme-settings-button-secondary-text-transform)",backgroundColor:"var(--f-theme-settings-button-secondary-background-color)",borderColor:"var(--f-theme-settings-button-secondary-border-color)",borderRadius:"var(--f-theme-settings-button-secondary-border-radius)",borderWidth:"var(--f-theme-settings-button-secondary-border-width)",color:"var(--f-theme-settings-button-secondary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-secondary-background-color-hover)",borderColor:"var(--f-theme-settings-button-secondary-border-color-hover)",color:"var(--f-theme-settings-button-secondary-color-hover)"}},buttonTertiary:{fontFamily:"var(--f-theme-settings-button-tertiary-font-family)",fontSize:"var(--f-theme-settings-button-tertiary-font-size)",fontWeight:"var(--f-theme-settings-button-tertiary-font-weight)",lineHeight:"var(--f-theme-settings-button-tertiary-line-height)",paddingTop:"var(--f-theme-settings-button-tertiary-padding-top)",paddingRight:"var(--f-theme-settings-button-tertiary-padding-right)",paddingBottom:"var(--f-theme-settings-button-tertiary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-tertiary-padding-left)",fontStyle:"var(--f-theme-settings-button-tertiary-font-style)",textTransform:"var(--f-theme-settings-button-tertiary-text-transform)",backgroundColor:"var(--f-theme-settings-button-tertiary-background-color)",borderColor:"var(--f-theme-settings-button-tertiary-border-color)",borderRadius:"var(--f-theme-settings-button-tertiary-border-radius)",borderWidth:"var(--f-theme-settings-button-tertiary-border-width)",color:"var(--f-theme-settings-button-tertiary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-tertiary-background-color-hover)",borderColor:"var(--f-theme-settings-button-tertiary-border-color-hover)",color:"var(--f-theme-settings-button-tertiary-color-hover)"}}},lr=e=>({...i.useElementProps({...e,elementToAttributes:t=>({url:t.href,buttonStyle:t.buttonStyle||"primary",target:t.target||"_blank"})}),onMouseOver:t=>{t.stopPropagation()}}),ur=e=>{const{href:n,target:t,buttonStyle:r}=lr(e),{attributes:a,children:l}=e;return s.jsx(cr,{attributes:a,href:n,target:t,styles:ve[`button${r.charAt(0).toUpperCase()+r.slice(1)}`],children:l})},cr=({attributes:e,styles:n={hover:{}},children:t,href:r="#",target:a})=>{const[l,u]=x.useState(!1);return s.jsx("a",{...e,onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),href:r,target:a,style:l?{...n,...n.hover}:n,children:t})};class dr extends o.MarkupElement{constructor(n=k,t=ur){super(n,t)}}const gr=({type:e,...n})=>{const t=i.useEditorRef(),r=!!i.isRangeInSameBlock(t,{at:t.selection}),a=!!(t!=null&&t.selection)&&i.someNode(t,{match:{type:e}});return s.jsx(i.ToolbarButton,{tooltip:o.getTooltip(r?`Button
|
|
2
|
-
${o.getHotkeyByPlatform("Ctrl+Shift+K")}`:"Buttons can only be set for a single text block."),classNames:o.getButtonClassNames(r),active:a,onMouseDown:async l=>{t&&(l.preventDefault(),l.stopPropagation(),i.focusEditor(t,t.selection??t.prevSelection??void 0),setTimeout(()=>{Dt(t,{focused:!0})},0))},...n})},mr=({editor:e,id:n})=>s.jsx("div",{"data-plugin-id":n,children:s.jsx(gr,{type:i.getPluginType(e,k),icon:s.jsx("span",{className:"tw-p-2 tw-h-8 tw-justify-center tw-items-center tw-flex",children:s.jsx(o.IconButton16,{})}),styles:o.buttonStyles})}),hr=()=>{const e=Rr({});return s.jsx("div",{"data-test-id":"floating-button-edit",className:"tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:s.jsxs("span",{"data-test-id":"preview-button-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[s.jsx("span",{className:"tw-pointer-events-none",children:e.defaultValue}),s.jsxs("span",{className:"tw-flex tw-gap-2",children:[s.jsx("span",{role:"button",tabIndex:0,"data-test-id":"edit-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:s.jsx(me.EditButton,{children:s.jsx(o.IconPen16,{})})}),s.jsx("span",{role:"button",tabIndex:0,"data-test-id":"remove-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:s.jsx(me.UnlinkButton,{children:s.jsx(o.IconTrashBin16,{})})})]})]})})},fr=({section:e,selectedUrl:n,onSelectUrl:t})=>{const r=e.permanentLink===n;return s.jsx("button",{"data-test-id":"internal-link-selector-section-link",className:o.merge(["tw-py-2 tw-px-2.5 tw-pl-14 tw-leading-5 tw-cursor-pointer tw-w-full",r?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:s.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-h-6",children:[s.jsx(o.IconDocumentText16,{}),s.jsx("span",{className:"tw-text-s",children:e.title}),s.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Section"})]})})},xr=({page:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:a})=>{const[l,u]=x.useState(e.id===r.documentId),[d,c]=x.useState([]),w=e.permanentLink===n;x.useEffect(()=>{(async()=>{const p=await a(e.id);c(p)})()},[e.id,a]),x.useEffect(()=>{e.id===r.pageId&&u(!0)},[r,e.id]);const h=[...d.values()],g=h.length>0;return s.jsxs(s.Fragment,{children:[s.jsx("button",{"data-test-id":"internal-link-selector-page-link",className:o.merge(["tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-flex tw-w-full",g?"tw-pl-7":"tw-pl-12",w?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:s.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-1 tw-items-center tw-h-6",children:[g&&s.jsx("button",{"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>u(!l),children:s.jsx("div",{className:o.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",l?"tw-rotate-90":""])})}),s.jsx("span",{className:"tw-text-s",children:e.title}),s.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Page"})]},e.id)}),l&&h.length>0&&h.map(f=>s.jsx(fr,{section:f,selectedUrl:n,onSelectUrl:t},f.id))]})},Ot=()=>s.jsx("div",{className:"tw-flex tw-justify-center tw-h-10 tw-items-center",children:s.jsx(o.LoadingCircle,{size:o.LoadingCircleSize.Small})}),wr=({documentId:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:a,getDocumentPagesByDocumentId:l})=>{const[u,d]=x.useState([]),[c,w]=x.useState(!0),h=[...u.values()],g=!c&&h.length>0;return x.useEffect(()=>{l(e).then(f=>{const p=f.filter(v=>!!v.category).sort((v,P)=>v.category.sort===P.category.sort?v.sort-P.sort:v.category.sort-P.category.sort),C=f.filter(v=>!v.category).sort((v,P)=>v.sort-P.sort);d([...p,...C])}).finally(()=>{w(!1)})},[]),c?s.jsx(Ot,{}):g?s.jsx(s.Fragment,{children:h.map(f=>s.jsx(xr,{page:f,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:a},f.id))}):s.jsx("div",{className:"tw-h-10 tw-flex tw-items-center tw-pr-2.5 tw-pl-7 tw-leading-5 tw-text-s tw-text-text-weak",children:"This document does not contain any pages."})},pr=({document:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:a,getDocumentPagesByDocumentId:l})=>{const[u,d]=x.useState(e.id===r.documentId),c=e.permanentLink===n;return x.useEffect(()=>{e.id===r.documentId&&d(!0)},[r,e.id]),s.jsxs(s.Fragment,{children:[s.jsxs("button",{"data-test-id":"internal-link-selector-document-link",className:o.merge(["tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-w-full",c?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:[s.jsx("button",{role:"button",tabIndex:0,"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>d(!u),children:s.jsx("div",{className:o.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",u?"tw-rotate-90":""])})}),s.jsx(o.IconColorFan16,{}),s.jsx("span",{className:"tw-text-s",children:e.title}),s.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Document"})]}),u&&s.jsx(wr,{documentId:e.id,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:a,getDocumentPagesByDocumentId:l})]})},yr=({selectedUrl:e,onSelectUrl:n,getAllDocuments:t,getDocumentPagesByDocumentId:r,getDocumentSectionsByDocumentPageId:a})=>{const[l,u]=x.useState(!0),[d,c]=x.useState([]),[w,h]=x.useState({documentId:void 0,pageId:void 0}),g=[...d.values()];x.useEffect(()=>{e&&g.length>0&&f().then(p=>{h(p)})},[g.length]),x.useEffect(()=>{t().then(p=>{c(p)}).finally(()=>{u(!1)})},[]);const f=async()=>{const p={documentId:void 0,pageId:void 0};if(g.find(v=>v.permanentLink===e))return p;for(const v of g){const B=[...(await r(v.id)).values()];if(!!B.find(F=>F.permanentLink===e))return p.documentId=v.id,p;for(const F of B)if(!![...(await a(F.id)).values()].find(A=>A.permanentLink===e))return p.documentId=v.id,p.pageId=F.id,p}return p};return l?s.jsx(Ot,{}):s.jsx(s.Fragment,{children:g.map(p=>s.jsx(pr,{document:p,selectedUrl:e,onSelectUrl:n,itemsToExpandInitially:w,getDocumentSectionsByDocumentPageId:a,getDocumentPagesByDocumentId:r},p.id))})},Ut=({url:e,onUrlChange:n,buttonSize:t=o.ButtonSize.Medium,getAllDocuments:r,getDocumentPagesByDocumentId:a,getDocumentSectionsByDocumentPageId:l})=>{const{open:u,isOpen:d,close:c}=Sn.useOverlayTriggerState({}),[w,h]=x.useState(e),g=C=>{h(C)},f=C=>{C.key==="Enter"&&p()};x.useEffect(()=>{e&&!w&&h(e)},[e,w]);const p=()=>{n==null||n(w),c()};return s.jsxs("div",{"data-test-id":"internal-link-selector",onKeyDown:f,children:[s.jsx(o.Button,{icon:s.jsx(o.IconLink,{}),size:t,type:o.ButtonType.Button,style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default,onClick:()=>u(),children:"Internal link"}),s.jsxs(o.Modal,{zIndex:1001,onClose:()=>c(),isOpen:d,isDismissable:!0,children:[s.jsx(o.Modal.Header,{title:"Select internal link"}),s.jsx(o.Modal.Body,{children:s.jsx(yr,{selectedUrl:w,onSelectUrl:g,getAllDocuments:r,getDocumentPagesByDocumentId:a,getDocumentSectionsByDocumentPageId:l})}),s.jsx(o.Modal.Footer,{buttons:[{children:"Cancel",onClick:()=>c(),style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default},{children:"Choose",onClick:C=>{C==null||C.preventDefault(),p()},style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Strong,disabled:!w}]})]})]})},_t=({onUrlChange:e,onToggleTab:n,isValidUrlOrEmpty:t,appBridge:r,clearable:a,placeholder:l,newTab:u,openInNewTab:d,url:c="",required:w,info:h,label:g,buttonSize:f,hideInternalLinkButton:p})=>{const C=t?t(c):te(c),v=u??(d?o.CheckboxState.Checked:o.CheckboxState.Unchecked);return s.jsxs("div",{"data-test-id":"link-input",children:[s.jsx(o.FormControl,{label:{children:g,htmlFor:"url",required:w,tooltip:h?{content:h,position:o.TooltipPosition.Top}:void 0},children:s.jsx(o.TextInput,{id:"url",value:c,clearable:a,onChange:e,placeholder:l??"https://example.com",focusOnMount:!0})}),!C&&s.jsx("div",{className:"tw-text-text-negative tw-mt-1 tw-text-s",children:"Please enter a valid URL."}),!p&&s.jsx("div",{className:"tw-mt-3",children:s.jsx(Ut,{url:c,onUrlChange:e,buttonSize:f??o.ButtonSize.Medium,getAllDocuments:()=>r.getAllDocuments(),getDocumentPagesByDocumentId:P=>r.getDocumentPagesByDocumentId(P),getDocumentSectionsByDocumentPageId:P=>r.getDocumentSectionsByDocumentPageId(P)})}),s.jsx("div",{className:"tw-mt-3",children:s.jsx(o.Checkbox,{value:"new-tab",label:"Open in new tab",state:v,onChange:n})})]})},Ht=({state:e,onTextChange:n,onUrlChange:t,onToggleTab:r,onCancel:a,onSave:l,isValidUrlOrEmpty:u,hasValues:d,testId:c,appBridge:w,children:h})=>s.jsxs("div",{"data-test-id":c,className:"tw-bg-white tw-rounded tw-shadow tw-p-7 tw-min-w-[400px] tw-overflow-y-auto",children:[s.jsx(o.FormControl,{label:{children:"Text",htmlFor:"linkText",required:!0},children:s.jsx(o.TextInput,{id:"linkText",value:e.text,placeholder:"Link Text",onChange:n})}),h,s.jsx("div",{className:"tw-mt-5",children:s.jsx(_t,{url:e.url,newTab:e.newTab,onUrlChange:t,onToggleTab:r,isValidUrlOrEmpty:u,appBridge:w})}),s.jsx("div",{className:"tw-mt-3",children:s.jsxs("div",{className:"tw-pt-5 tw-flex tw-gap-x-3 tw-justify-end tw-border-t tw-border-t-black-10",children:[s.jsx(o.Button,{onClick:a,size:o.ButtonSize.Medium,style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default,children:"Cancel"}),s.jsx(o.Button,{onClick:l,size:o.ButtonSize.Medium,icon:s.jsx(o.IconCheckMark20,{}),disabled:!d||!u(e==null?void 0:e.url),children:"Save"})]})})]}),br=e=>{var t;const n=i.getAboveNode(e,{match:{type:k}});return Array.isArray(n)&&((t=n[0])==null?void 0:t.buttonStyle)||"primary"},vr={url:"",text:"",buttonStyle:"primary",newTab:o.CheckboxState.Unchecked},Cr=()=>{const[e,n]=x.useReducer((t,r)=>{const{type:a,payload:l}=r;switch(a){case"NEW_TAB":return{...t,newTab:o.CheckboxState.Checked};case"SAME_TAB":return{...t,newTab:o.CheckboxState.Unchecked};case"URL":case"TEXT":case"BUTTON_STYLE":case"INIT":return{...t,...l};default:return t}},vr);return[e,n]},kr=()=>{const e=i.useEditorRef(),[n,t]=Cr();x.useEffect(()=>{const g=br(e);t({type:"INIT",payload:{text:L.text(),buttonStyle:g,newTab:L.newTab()?o.CheckboxState.Checked:o.CheckboxState.Unchecked,url:L.url()}})},[t,e]);const r=g=>{t({type:"TEXT",payload:{text:g}})},a=g=>{t({type:"BUTTON_STYLE",payload:{buttonStyle:g}})},l=g=>{t({type:"URL",payload:{url:g}})},u=g=>{t(g?{type:"NEW_TAB"}:{type:"SAME_TAB"})},d=()=>{T.hide()},c=g=>{if(!te(n.url)||!w)return;const f=pe(n.url);T.text(n.text),T.url(f),T.buttonStyle(n.buttonStyle),T.newTab(n.newTab===o.CheckboxState.Checked),Ue(e)&&(g==null||g.preventDefault())},w=n.url!==""&&n.text!=="",{appBridge:h}=i.getPluginOptions(e,k);return i.useHotkeys("enter",c,{enableOnFormTags:["INPUT"]},[]),{state:n,onTextChange:r,onButtonStyleChange:a,onUrlChange:l,onToggleTab:u,onCancel:d,onSave:c,hasValues:w,isValidUrlOrEmpty:te,appBridge:h}},ge="link-plugin";var y=(e=>(e.heading1="heading1",e.heading2="heading2",e.heading3="heading3",e.heading4="heading4",e.custom1="custom1",e.custom2="custom2",e.custom3="custom3",e.quote="quote",e.imageCaption="imageCaption",e.imageTitle="imageTitle",e.p="p",e))(y||{});const j={heading1:{fontSize:"var(--f-theme-settings-heading1-font-size)",lineHeight:"var(--f-theme-settings-heading1-line-height)",marginTop:"var(--f-theme-settings-heading1-margin-top)",marginBottom:"var(--f-theme-settings-heading1-margin-bottom)",textDecoration:"var(--f-theme-settings-heading1-text-decoration)",fontStyle:"var(--f-theme-settings-heading1-font-style)",textTransform:"var(--f-theme-settings-heading1-text-transform)",letterSpacing:"var(--f-theme-settings-heading1-letter-spacing)",fontWeight:"var(--f-theme-settings-heading1-font-weight)",fontFamily:"var(--f-theme-settings-heading1-font-family)",color:"var(--f-theme-settings-heading1-color)"},heading2:{fontSize:"var(--f-theme-settings-heading2-font-size)",lineHeight:"var(--f-theme-settings-heading2-line-height)",marginTop:"var(--f-theme-settings-heading2-margin-top)",marginBottom:"var(--f-theme-settings-heading2-margin-bottom)",textDecoration:"var(--f-theme-settings-heading2-text-decoration)",fontStyle:"var(--f-theme-settings-heading2-font-style)",textTransform:"var(--f-theme-settings-heading2-text-transform)",letterSpacing:"var(--f-theme-settings-heading2-letter-spacing)",fontWeight:"var(--f-theme-settings-heading2-font-weight)",fontFamily:"var(--f-theme-settings-heading2-font-family)",color:"var(--f-theme-settings-heading2-color)"},heading3:{fontSize:"var(--f-theme-settings-heading3-font-size)",lineHeight:"var(--f-theme-settings-heading3-line-height)",marginTop:"var(--f-theme-settings-heading3-margin-top)",marginBottom:"var(--f-theme-settings-heading3-margin-bottom)",textDecoration:"var(--f-theme-settings-heading3-text-decoration)",fontStyle:"var(--f-theme-settings-heading3-font-style)",textTransform:"var(--f-theme-settings-heading3-text-transform)",letterSpacing:"var(--f-theme-settings-heading3-letter-spacing)",fontWeight:"var(--f-theme-settings-heading3-font-weight)",fontFamily:"var(--f-theme-settings-heading3-font-family)",color:"var(--f-theme-settings-heading3-color)"},heading4:{fontSize:"var(--f-theme-settings-heading4-font-size)",lineHeight:"var(--f-theme-settings-heading4-line-height)",marginTop:"var(--f-theme-settings-heading4-margin-top)",marginBottom:"var(--f-theme-settings-heading4-margin-bottom)",textDecoration:"var(--f-theme-settings-heading4-text-decoration)",fontStyle:"var(--f-theme-settings-heading4-font-style)",textTransform:"var(--f-theme-settings-heading4-text-transform)",letterSpacing:"var(--f-theme-settings-heading4-letter-spacing)",fontWeight:"var(--f-theme-settings-heading4-font-weight)",fontFamily:"var(--f-theme-settings-heading4-font-family)",color:"var(--f-theme-settings-heading4-color)"},custom1:{fontSize:"var(--f-theme-settings-custom1-font-size)",lineHeight:"var(--f-theme-settings-custom1-line-height)",marginTop:"var(--f-theme-settings-custom1-margin-top)",marginBottom:"var(--f-theme-settings-custom1-margin-bottom)",textDecoration:"var(--f-theme-settings-custom1-text-decoration)",fontStyle:"var(--f-theme-settings-custom1-font-style)",textTransform:"var(--f-theme-settings-custom1-text-transform)",letterSpacing:"var(--f-theme-settings-custom1-letter-spacing)",fontWeight:"var(--f-theme-settings-custom1-font-weight)",fontFamily:"var(--f-theme-settings-custom1-font-family)",color:"var(--f-theme-settings-custom1-color)"},custom2:{fontSize:"var(--f-theme-settings-custom2-font-size)",lineHeight:"var(--f-theme-settings-custom2-line-height)",marginTop:"var(--f-theme-settings-custom2-margin-top)",marginBottom:"var(--f-theme-settings-custom2-margin-bottom)",textDecoration:"var(--f-theme-settings-custom2-text-decoration)",fontStyle:"var(--f-theme-settings-custom2-font-style)",textTransform:"var(--f-theme-settings-custom2-text-transform)",letterSpacing:"var(--f-theme-settings-custom2-letter-spacing)",fontWeight:"var(--f-theme-settings-custom2-font-weight)",fontFamily:"var(--f-theme-settings-custom2-font-family)",color:"var(--f-theme-settings-custom2-color)"},custom3:{fontSize:"var(--f-theme-settings-custom3-font-size)",lineHeight:"var(--f-theme-settings-custom3-line-height)",marginTop:"var(--f-theme-settings-custom3-margin-top)",marginBottom:"var(--f-theme-settings-custom3-margin-bottom)",textDecoration:"var(--f-theme-settings-custom3-text-decoration)",fontStyle:"var(--f-theme-settings-custom3-font-style)",textTransform:"var(--f-theme-settings-custom3-text-transform)",letterSpacing:"var(--f-theme-settings-custom3-letter-spacing)",fontWeight:"var(--f-theme-settings-custom3-font-weight)",fontFamily:"var(--f-theme-settings-custom3-font-family)",color:"var(--f-theme-settings-custom3-color)"},p:{fontSize:"var(--f-theme-settings-body-font-size)",lineHeight:"var(--f-theme-settings-body-line-height)",marginTop:"var(--f-theme-settings-body-margin-top)",marginBottom:"var(--f-theme-settings-body-margin-bottom)",textDecoration:"var(--f-theme-settings-body-text-decoration)",fontStyle:"var(--f-theme-settings-body-font-style)",textTransform:"var(--f-theme-settings-body-text-transform)",letterSpacing:"var(--f-theme-settings-body-letter-spacing)",fontWeight:"var(--f-theme-settings-body-font-weight)",fontFamily:"var(--f-theme-settings-body-font-family)",color:"var(--f-theme-settings-body-color)"},quote:{fontSize:"var(--f-theme-settings-quote-font-size)",lineHeight:"var(--f-theme-settings-quote-line-height)",marginTop:"var(--f-theme-settings-quote-margin-top)",marginBottom:"var(--f-theme-settings-quote-margin-bottom)",textDecoration:"var(--f-theme-settings-quote-text-decoration)",fontStyle:"var(--f-theme-settings-quote-font-style)",textTransform:"var(--f-theme-settings-quote-text-transform)",letterSpacing:"var(--f-theme-settings-quote-letter-spacing)",fontWeight:"var(--f-theme-settings-quote-font-weight)",fontFamily:"var(--f-theme-settings-quote-font-family)",color:"var(--f-theme-settings-quote-color)"},imageCaption:{fontSize:"var(--f-theme-settings-image-caption-font-size)",lineHeight:"var(--f-theme-settings-image-caption-line-height)",marginTop:"var(--f-theme-settings-image-caption-margin-top)",marginBottom:"var(--f-theme-settings-image-caption-margin-bottom)",textDecoration:"var(--f-theme-settings-image-caption-text-decoration)",fontStyle:"var(--f-theme-settings-image-caption-font-style)",textTransform:"var(--f-theme-settings-image-caption-text-transform)",letterSpacing:"var(--f-theme-settings-image-caption-letter-spacing)",fontWeight:"var(--f-theme-settings-image-caption-font-weight)",fontFamily:"var(--f-theme-settings-image-caption-font-family)",color:"var(--f-theme-settings-image-caption-color)"},imageTitle:{fontSize:"var(--f-theme-settings-image-title-font-size)",lineHeight:"var(--f-theme-settings-image-title-line-height)",marginTop:"var(--f-theme-settings-image-title-margin-top)",marginBottom:"var(--f-theme-settings-image-title-margin-bottom)",textDecoration:"var(--f-theme-settings-image-title-text-decoration)",fontStyle:"var(--f-theme-settings-image-title-font-style)",textTransform:"var(--f-theme-settings-image-title-text-transform)",letterSpacing:"var(--f-theme-settings-image-title-letter-spacing)",fontWeight:"var(--f-theme-settings-image-title-font-weight)",fontFamily:"var(--f-theme-settings-image-title-font-family)",color:"var(--f-theme-settings-image-title-color)"},[ge]:{fontSize:"var(--f-theme-settings-link-font-size)",lineHeight:"var(--f-theme-settings-link-line-height)",marginTop:"var(--f-theme-settings-link-margin-top)",marginBottom:"var(--f-theme-settings-link-margin-bottom)",textDecoration:"var(--f-theme-settings-link-text-decoration)",fontStyle:"var(--f-theme-settings-link-font-style)",textTransform:"var(--f-theme-settings-link-text-transform)",letterSpacing:"var(--f-theme-settings-link-letter-spacing)",fontWeight:"var(--f-theme-settings-link-font-weight)",fontFamily:"var(--f-theme-settings-link-font-family)",color:"var(--f-theme-settings-link-color)"},...ve},Sr=()=>{const e=kr(),{state:n,onButtonStyleChange:t}=e;return s.jsx(Ht,{...e,testId:"floating-button-insert",children:s.jsx("div",{className:"tw-pt-5",children:s.jsxs(o.FormControl,{label:{children:"Button Style",htmlFor:"buttonStyle",required:!0},children:[s.jsx(Se,{id:"primary",styles:j.buttonPrimary,isActive:n.buttonStyle==="primary",onClick:()=>t("primary"),children:n.text||"Primary Button"}),s.jsx(Se,{id:"secondary",styles:j.buttonSecondary,isActive:n.buttonStyle==="secondary",onClick:()=>t("secondary"),children:n.text||"Secondary Button"}),s.jsx(Se,{id:"tertiary",styles:j.buttonTertiary,isActive:n.buttonStyle==="tertiary",onClick:()=>t("tertiary"),children:n.text||"Tertiary Button"})]})})})},Se=({id:e,styles:n,isActive:t,onClick:r,children:a})=>{const[l,u]=x.useState(!1),d=()=>n&&n.hover&&l?{...n,...n.hover}:n;return s.jsx("button",{"data-test-id":`floating-button-insert-${e}`,onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),onClick:r,style:{...d(),marginTop:0,marginBottom:0},className:t?"tw-outline tw-outline-1 tw-outline-violet-60 tw-outline-offset-2 tw-w-fit":"tw-w-fit",children:a})},Pr=()=>{const e=ne().isEditing(),n=s.jsx(Sr,{}),t=e?n:s.jsx(hr,{});return s.jsxs(s.Fragment,{children:[s.jsx(me.InsertRoot,{children:n}),s.jsx(me.EditRoot,{children:t})]})},k="button",Vt="button-plugin",zt=e=>i.createPluginFactory({key:k,isElement:!0,isInline:!0,props:({element:n})=>({nodeProps:{href:n==null?void 0:n.url,target:n==null?void 0:n.target}}),withOverrides:Nt,renderAfterEditable:Pr,options:{isUrl:ye,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingButtonHotkeys:"command+shift+k, ctrl+shift+k",appBridge:e},then:(n,{type:t})=>({deserializeHtml:{rules:[{validNodeName:"A",validClassName:"btn"}],getNode:r=>({type:t,url:r.getAttribute("href"),target:r.getAttribute("target")||"_blank"})}})})();class $t extends o.Plugin{constructor({styles:t=ve,...r}){super(Vt,{button:mr,markupElement:new dr,...r});N(this,"styles",{});N(this,"appBridge");this.styles=t,this.appBridge=r==null?void 0:r.appBridge}plugins(){return[zt(this.appBridge)]}}const Er=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=i.usePlateSelectors(t.id).keyEditor(),a=ne().mode(),l=ne().isOpen(t.id),{triggerFloatingButtonHotkeys:u}=i.getPluginOptions(t,k),d=x.useCallback(()=>{const f=i.getAboveNode(t,{match:{type:i.getPluginType(t,k)}});if(f){const[,p]=f;return i.getRangeBoundingClientRect(t,{anchor:i.getStartPoint(t,p),focus:i.getEndPoint(t,p)})}return i.getDefaultBoundingClientRect()},[t]),c=l&&a==="edit",{update:w,style:h,floating:g}=qt({open:c,getBoundingClientRect:d,...e});return x.useEffect(()=>{const f=Ft(t);if(f&&T.url(f),t.selection&&i.someNode(t,{match:{type:i.getPluginType(t,k)}})){T.show("edit",t.id),w();return}L.mode()==="edit"&&T.hide()},[t,r,w]),i.useHotkeys(u,f=>{f.preventDefault(),L.mode()==="edit"&&be(t)},{enableOnContentEditable:!0},[]),Fr(),Wt(),{style:{...h,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,g)}},Tr=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=nt.useFocused(),a=ne().mode(),l=ne().isOpen(t.id),{triggerFloatingButtonHotkeys:u}=i.getPluginOptions(t,k);i.useHotkeys(u,h=>{h.preventDefault(),He(t,{focused:r})},{enableOnContentEditable:!0},[r]);const{update:d,style:c,floating:w}=qt({open:l&&a==="insert",getBoundingClientRect:i.getSelectionBoundingClientRect,whileElementsMounted:void 0,...e});return x.useEffect(()=>{l&&d(),T.updated(l)},[l,d]),Wt(),{style:{...c,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,w)}},Ir=e=>{const n=i.useEditorRef();return{onClick:x.useCallback(()=>{be(n)},[n]),...e}},Br=i.createComponentAs(e=>{const n=Ir(e);return i.createElementAs("button",n)}),jr=e=>{const n=i.useEditorRef();return{onClick:x.useCallback(()=>{re(n),i.focusEditor(n,n.selection??void 0)},[n]),...e}},Nr=i.createComponentAs(e=>{const n=jr(e);return i.createElementAs(i.Button,n)}),Lr=i.createComponentAs(e=>{var t;const n=Er(e);return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),Ar=i.createComponentAs(e=>{var t;const n=Tr(e);return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),me={EditRoot:Lr,InsertRoot:Ar,EditButton:Br,UnlinkButton:Nr},Rr=e=>{const n=ne().updated(),t=x.useRef(null);x.useEffect(()=>{t.current&&n&&setTimeout(()=>{var a;(a=t.current)==null||a.focus()},0)},[n]);const r=x.useCallback(a=>{T.url(a.target.value)},[]);return i.mergeProps({onChange:r,defaultValue:L.url()},{...e,ref:i.useComposedRef(e.ref,t)})},Fr=()=>{const e=i.useEditorRef();i.useHotkeys("*",n=>{n.key==="Enter"&&Ue(e)&&n.preventDefault()},{enableOnFormTags:["INPUT"]},[])},Wt=()=>{const e=i.useEditorRef();i.useHotkeys("escape",()=>{if(L.mode()==="edit"){if(L.isEditing()){T.show("edit",e.id),i.focusEditor(e,e.selection??void 0);return}T.hide()}},{enableOnFormTags:["INPUT"],enableOnContentEditable:!0},[])},Mr=12,Dr=-22,Or=96,qt=e=>i.useVirtualFloating({placement:"bottom-start",middleware:[i.offset({mainAxis:Mr,alignmentAxis:Dr}),i.flip({padding:Or})],...e}),Ur=({id:e="rte",isEditing:n,value:t,columns:r,gap:a,placeholder:l,plugins:u,onTextChange:d,showSerializedText:c})=>{const[w,h]=x.useState(!1),g=f=>{d&&f!==t&&d(f),h(!1)};return x.useEffect(()=>{const f=p=>(p.preventDefault(),p.returnValue="Unprocessed changes");return w&&window.addEventListener("beforeunload",f),()=>window.removeEventListener("beforeunload",f)},[w]),n?s.jsx(o.RichTextEditor,{id:e,value:t,border:!1,placeholder:l,plugins:u,onValueChanged:()=>h(!0),onTextChange:g,hideExternalFloatingModals:f=>{L.isOpen(f)&&T.reset()}}):s.jsx(Jn,{value:t,columns:r,gap:a,show:c,plugins:u})},_r=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=nt.useFocused(),a=i.useFloatingLinkSelectors().mode(),l=i.useFloatingLinkSelectors().isOpen(t.id),{triggerFloatingLinkHotkeys:u}=i.getPluginOptions(t,i.ELEMENT_LINK);i.useHotkeys(u,h=>{i.triggerFloatingLinkInsert(t,{focused:r})&&h.preventDefault()},{enableOnContentEditable:!0},[r]);const{update:d,style:c,floating:w}=i.useVirtualFloatingLink({editorId:t.id,open:l&&a==="insert",getBoundingClientRect:i.getSelectionBoundingClientRect,whileElementsMounted:()=>{},...e});return x.useEffect(()=>{l?(d(),i.floatingLinkActions.updated(!0)):i.floatingLinkActions.updated(!1)},[l,d]),i.useFloatingLinkEscape(),{style:{...c,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,w)}},Hr=i.createComponentAs(e=>{var t;const n=_r({...e,floatingOptions:{strategy:"absolute"}});return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),Vr=i.createComponentAs(e=>{var t;const n=$r({...e,floatingOptions:{strategy:"absolute"}});return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)});i.FloatingLink.EditRoot=Vr;i.FloatingLink.InsertRoot=Hr;const he=i.FloatingLink,zr=()=>{const e=i.useFloatingLinkUrlInput({});return s.jsx("div",{"data-test-id":"floating-link-edit",className:"tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:s.jsxs("span",{"data-test-id":"preview-link-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[s.jsx("span",{className:"tw-pointer-events-none",children:e.defaultValue}),s.jsxs("span",{className:"tw-flex tw-gap-2",children:[s.jsx("span",{role:"button",tabIndex:0,"data-test-id":"edit-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:s.jsx(he.EditButton,{children:s.jsx(o.IconPen16,{})})}),s.jsx("span",{role:"button",tabIndex:0,"data-test-id":"remove-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:s.jsx(he.UnlinkButton,{children:s.jsx(o.IconTrashBin16,{})})})]})]})})},$r=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=i.usePlateSelectors().keyEditor(),a=i.useFloatingLinkSelectors().mode(),l=i.useFloatingLinkSelectors().isOpen(t.id),{triggerFloatingLinkHotkeys:u="command+k, ctrl+k"}=i.getPluginOptions(t,i.ELEMENT_LINK),d=x.useCallback(()=>{const f=i.getAboveNode(t,{match:{type:i.getPluginType(t,i.ELEMENT_LINK)}});if(f){const[,p]=f;return i.getRangeBoundingClientRect(t,{anchor:i.getStartPoint(t,p),focus:i.getEndPoint(t,p)})}return i.getDefaultBoundingClientRect()},[t]),c=l&&a==="edit",{update:w,style:h,floating:g}=i.useVirtualFloatingLink({editorId:t.id,open:c,getBoundingClientRect:d,...e});return x.useEffect(()=>{const f=jt(t);if(f&&i.floatingLinkActions.url(f),t.selection&&i.someNode(t,{match:{type:i.getPluginType(t,i.ELEMENT_LINK)}})){i.floatingLinkActions.show("edit",t.id),w();return}i.floatingLinkSelectors.mode()==="edit"&&i.floatingLinkActions.hide()},[t,r,w]),i.useHotkeys(u,f=>{f.preventDefault(),i.floatingLinkSelectors.mode()==="edit"&&i.triggerFloatingLinkEdit(t)},{enableOnContentEditable:!0},[]),i.useFloatingLinkEnter(),i.useFloatingLinkEscape(),{style:{...h,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,g)}},Wr={url:"",text:"",newTab:o.CheckboxState.Unchecked},qr=()=>{const[e,n]=x.useReducer((t,r)=>{const{type:a,payload:l}=r;switch(a){case"NEW_TAB":return{...t,newTab:o.CheckboxState.Checked};case"SAME_TAB":return{...t,newTab:o.CheckboxState.Unchecked};case"URL":case"TEXT":case"INIT":return{...t,...l};default:return t}},Wr);return[e,n]},Gr=()=>{const e=i.useEditorRef(),[n,t]=qr();x.useEffect(()=>{const h=Tt(e),g=It(e);t({type:"INIT",payload:{text:i.floatingLinkSelectors.text(),newTab:i.floatingLinkSelectors.newTab()?o.CheckboxState.Checked:o.CheckboxState.Unchecked,url:h&&g===""?h:i.floatingLinkSelectors.url()}})},[t,e]);const r=h=>{t({type:"TEXT",payload:{text:h}})},a=h=>{t({type:"URL",payload:{url:h}})},l=h=>{t(h?{type:"NEW_TAB"}:{type:"SAME_TAB"})},u=()=>{i.floatingLinkActions.hide()},d=h=>{if(!te(n.url)||!c)return;const g=pe(n.url);i.floatingLinkActions.text(n.text),i.floatingLinkActions.url(g),i.floatingLinkActions.newTab(n.newTab===o.CheckboxState.Checked),i.submitFloatingLink(e)&&(h==null||h.preventDefault())},c=n.url!==""&&n.text!=="",{appBridge:w}=i.getPluginOptions(e,i.ELEMENT_LINK);return i.useHotkeys("enter",d,{enableOnFormTags:["INPUT"]},[]),{state:n,onTextChange:r,onUrlChange:a,onToggleTab:l,onCancel:u,onSave:d,hasValues:c,isValidUrlOrEmpty:te,appBridge:w}},Kr=()=>s.jsx(Ht,{...Gr(),testId:"floating-link-insert"}),Xr=({readOnly:e})=>{const n=i.useFloatingLinkSelectors().isEditing();if(e)return null;const t=s.jsx(Kr,{}),r=n?t:s.jsx(zr,{});return s.jsxs(s.Fragment,{children:[s.jsx(he.InsertRoot,{children:t}),s.jsx(he.EditRoot,{children:r})]})},Qr=({id:e,editorId:n})=>{const t=i.usePlateEditorState(i.useEventPlateId(n)),r=!!i.isRangeInSameBlock(t,{at:t.selection});return s.jsx("div",{"data-plugin-id":e,children:s.jsx(i.LinkToolbarButton,{tooltip:o.getTooltip(r?`Link
|
|
3
|
-
${o.getHotkeyByPlatform("Ctrl+K")}`:"Links can only be set for a single text block."),icon:s.jsx("span",{className:"tw-p-2 tw-h-8 tw-justify-center tw-items-center tw-flex",children:s.jsx(o.IconLink,{size:o.IconSize.Size16})}),classNames:o.getButtonClassNames(r),styles:{root:{width:"24px",height:"24px"}},actionHandler:"onMouseDown"})})},Yr=e=>({...i.useElementProps({...e,elementToAttributes:t=>{var r,a;return{href:t.url||((a=(r=t.chosenLink)==null?void 0:r.searchResult)==null?void 0:a.link)||"",target:t.target||"_self"}}}),onMouseOver:t=>{t.stopPropagation()}}),Jr=e=>{const n=Yr(e),{attributes:t,children:r}=e;return s.jsx("a",{...t,href:n.href,target:n.target,style:j[ge],children:r})};class Zr extends o.MarkupElement{constructor(n=i.ELEMENT_LINK,t=Jr){super(n,t)}}const Gt=e=>i.createPluginFactory({...i.createLinkPlugin(),renderAfterEditable:Xr,options:{isUrl:ye,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingLinkHotkeys:"command+k, ctrl+k",appBridge:e}})();class Kt extends o.Plugin{constructor(t,r=j[ge]){super(ge,{button:Qr,markupElement:new Zr,...t});N(this,"appBridge");N(this,"styles",{});this.styles=r,this.appBridge=t==null?void 0:t.appBridge}plugins(){return[Gt(this.appBridge)]}}const es="textstyle-custom1-plugin";class Xt extends o.Plugin{constructor({styles:t=j.custom1,...r}={}){super(y.custom1,{label:"Custom 1",markupElement:new ts,...r});N(this,"styles",{});this.styles=t}plugins(){return[ns(this.styles)]}}class ts extends o.MarkupElement{constructor(n=es,t=Qt){super(n,t)}}const Qt=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("p",{...n,style:r,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),children:t})},ns=e=>i.createPluginFactory({key:y.custom1,isElement:!0,deserializeHtml:{rules:[{validClassName:y.custom1}]}})({component:n=>s.jsx(Qt,{...n,styles:e})}),rs="textstyle-custom2-plugin";class Yt extends o.Plugin{constructor({styles:t=j.custom2,...r}={}){super(y.custom2,{label:"Custom 2",markupElement:new ss,...r});N(this,"styles",{});this.styles=t}plugins(){return[as(this.styles)]}}class ss extends o.MarkupElement{constructor(n=rs,t=Jt){super(n,t)}}const Jt=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("p",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},as=e=>i.createPluginFactory({key:y.custom2,isElement:!0,deserializeHtml:{rules:[{validClassName:y.custom2}]}})({component:n=>s.jsx(Jt,{...n,styles:e})}),os="textstyle-custom3-plugin";class Zt extends o.Plugin{constructor({styles:t=j.custom3,...r}={}){super(o.TextStyles.custom3,{label:"Custom 3",markupElement:new is,...r});N(this,"styles",{});this.styles=t}plugins(){return[ls(this.styles)]}}class is extends o.MarkupElement{constructor(n=os,t=en){super(n,t)}}const en=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("p",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},ls=e=>i.createPluginFactory({key:o.TextStyles.custom3,isElement:!0,deserializeHtml:{rules:[{validClassName:o.TextStyles.custom3}]}})({component:n=>s.jsx(en,{...n,styles:e})}),us="textstyle-heading1-plugin";class tn extends o.Plugin{constructor({styles:t=j.heading1,...r}={}){super(y.heading1,{label:"Heading 1",markupElement:new cs,...r});N(this,"styles",{});this.styles=t}plugins(){return[ds(this.styles)]}}class cs extends o.MarkupElement{constructor(n=us,t=Pe){super(n,t)}}const Pe=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("h1",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},ds=e=>i.createPluginFactory({key:y.heading1,isElement:!0,component:Pe,deserializeHtml:{rules:[{validNodeName:["h1","H1"]}]}})({component:n=>s.jsx(Pe,{...n,styles:e})}),gs="textstyle-heading2-plugin";class nn extends o.Plugin{constructor({styles:t=j.heading2,...r}={}){super(y.heading2,{label:"Heading 2",markupElement:new ms,...r});N(this,"styles",{});this.styles=t}plugins(){return[hs(this.styles)]}}class ms extends o.MarkupElement{constructor(n=gs,t=Ee){super(n,t)}}const Ee=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("h2",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},hs=e=>i.createPluginFactory({key:y.heading2,isElement:!0,component:Ee,deserializeHtml:{rules:[{validNodeName:["h2","H2"]}]}})({component:n=>s.jsx(Ee,{...n,styles:e})}),fs="textstyle-heading3-plugin";class rn extends o.Plugin{constructor({styles:t=j.heading3,...r}={}){super(y.heading3,{label:"Heading 3",markupElement:new xs,...r});N(this,"styles",{});this.styles=t}plugins(){return[ws(this.styles)]}}class xs extends o.MarkupElement{constructor(n=fs,t=Te){super(n,t)}}const Te=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("h3",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},ws=e=>i.createPluginFactory({key:y.heading3,isElement:!0,component:Te,deserializeHtml:{rules:[{validNodeName:["h3","H3"]}]}})({component:n=>s.jsx(Te,{...n,styles:e})}),ps="textstyle-heading4-plugin";class sn extends o.Plugin{constructor({styles:t=j.heading4,...r}={}){super(y.heading4,{label:"Heading 4",markupElement:new ys,...r});N(this,"styles",{});this.styles=t}plugins(){return[bs(this.styles)]}}class ys extends o.MarkupElement{constructor(n=ps,t=Ie){super(n,t)}}const Ie=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("h4",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},bs=e=>i.createPluginFactory({key:y.heading4,isElement:!0,component:Ie,deserializeHtml:{rules:[{validNodeName:["h4","H4"]}]}})({component:n=>s.jsx(Ie,{...n,styles:e})}),vs="textstyle-imageCaption-plugin";class an extends o.Plugin{constructor({styles:t=j.imageCaption,...r}={}){super(y.imageCaption,{label:"Image Caption",markupElement:new Cs,...r});N(this,"styles",{});this.styles=t}plugins(){return[ks(this.styles)]}}class Cs extends o.MarkupElement{constructor(n=vs,t=Be){super(n,t)}}const Be=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("p",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},ks=e=>i.createPluginFactory({key:y.imageCaption,isElement:!0,component:Be,deserializeHtml:{rules:[{validClassName:y.imageCaption}]}})({component:n=>s.jsx(Be,{...n,styles:e})}),Ss="textstyle-imageTitle-plugin";class on extends o.Plugin{constructor({styles:t=j.imageTitle,...r}={}){super(y.imageTitle,{label:"Image Title",markupElement:new Ps,...r});N(this,"styles",{});this.styles=t}plugins(){return[Es(this.styles)]}}class Ps extends o.MarkupElement{constructor(n=Ss,t=je){super(n,t)}}const je=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("p",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},Es=e=>i.createPluginFactory({key:y.imageTitle,isElement:!0,component:je,deserializeHtml:{rules:[{validClassName:y.imageTitle}]}})({component:n=>s.jsx(je,{...n,styles:e})});class ln extends o.Plugin{constructor({styles:t=j.p,...r}={}){super(y.p,{markupElement:new cn,label:"Body Text",...r});N(this,"styles",{});this.styles=t}plugins(){return[dn(this.styles)]}}const un="tw-m-0 tw-px-0 tw-py-0",fe=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align,l=o.merge([a&&o.alignmentClassnames[a],un,o.getColumnBreakClasses(e)]);return s.jsx("p",{...n,className:l,style:r,children:t})};class cn extends o.MarkupElement{constructor(n=y.p,t=fe){super(n,t)}}const dn=e=>i.createPluginFactory({...i.createParagraphPlugin(),key:y.p,isElement:!0,component:fe})({component:n=>s.jsx(fe,{...n,styles:e})}),Ts="textstyle-quote-plugin";class gn extends o.Plugin{constructor({styles:t=j.quote,...r}={}){super(y.quote,{label:"Quote",markupElement:new Is,...r});N(this,"styles",{});this.styles=t}plugins(){return[mn(this.styles)]}}class Is extends o.MarkupElement{constructor(n=Ts,t=xe){super(n,t)}}const xe=({element:e,attributes:n,children:t,styles:r})=>{const a=e.align;return s.jsx("blockquote",{...n,className:o.merge([a&&o.alignmentClassnames[a],o.getColumnBreakClasses(e)]),style:r,children:t})},mn=e=>i.createPluginFactory({key:y.quote,isElement:!0,component:xe,deserializeHtml:{rules:[{validNodeName:["blockquote","BLOCKQUOTE"]}]}})({component:n=>s.jsx(xe,{...n,styles:e})}),Ve=[new tn,new nn,new rn,new sn,new Xt,new Yt,new Zt,new gn,new ln],ee=[y.heading1,y.heading2,y.heading3,y.heading4,y.custom1,y.custom2,y.custom3,y.quote,y.p],Bs=[...Ve,new an,new on],js=[...ee,y.imageCaption,y.imageTitle],Ns=e=>new o.PluginComposer().setPlugin(new o.SoftBreakPlugin,new o.TextStylePlugin({textStyles:Ve})).setPlugin([new o.BoldPlugin,new o.ItalicPlugin,new o.UnderlinePlugin,new o.StrikethroughPlugin,new Kt({appBridge:e}),new $t({appBridge:e}),new o.CodePlugin],[new o.AlignLeftPlugin({validTypes:ee}),new o.AlignCenterPlugin({validTypes:ee}),new o.AlignRightPlugin({validTypes:ee}),new o.AlignJustifyPlugin({validTypes:ee}),new o.UnorderedListPlugin,new o.CheckboxListPlugin,new o.OrderedListPlugin,new o.ResetFormattingPlugin,new o.AutoformatPlugin]),Ls="--f-theme-settings-",As=e=>{const n=e!=null&&e.id?`hasBackground${e.id}`:"hasBackground",t=e!=null&&e.id?`backgroundColor${e.id}`:"backgroundColor",r=e!=null&&e.preventDefaultColor?void 0:(e==null?void 0:e.defaultColor)||Mn,a=e!=null&&e.label?e.label:"Background",l=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:n,label:a,type:"switch",switchLabel:l,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:t,defaultValue:r,type:"colorInput"}]}},Rs=e=>{const n=e!=null&&e.id?`hasBorder_${e.id}`:"hasBorder",t=e!=null&&e.id?`borderSelection_${e.id}`:"borderSelection",r=e!=null&&e.id?`borderStyle_${e.id}`:"borderStyle",a=e!=null&&e.id?`borderWidth_${e.id}`:"borderWidth",l=e!=null&&e.id?`borderColor_${e.id}`:"borderColor",u=(e==null?void 0:e.defaultColor)||at,d=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:n,label:"Border",type:"switch",switchLabel:d,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:t,type:"multiInput",onChange:c=>m.appendUnit(c,a),layout:m.MultiInputLayout.Columns,lastItemFullWidth:!0,blocks:[{id:r,type:"dropdown",defaultValue:O.Solid,choices:[{value:O.Solid,label:O.Solid},{value:O.Dotted,label:O.Dotted},{value:O.Dashed,label:O.Dashed}]},{id:a,type:"input",defaultValue:Dn,rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)],placeholder:"e.g. 3px"},{id:l,type:"colorInput",defaultValue:u}]}],off:[]}},ze=(e,n=V.None)=>({id:e,type:"segmentedControls",defaultValue:n,choices:[{value:V.None,label:"None"},{value:V.Small,label:"S"},{value:V.Medium,label:"M"},{value:V.Large,label:"L"}]}),Fs=e=>{const n=e!=null&&e.id?`hasRadius_${e.id}`:"hasRadius",t=e!=null&&e.id?`radiusValue_${e.id}`:"radiusValue",r=e!=null&&e.id?`radiusChoice_${e.id}`:"radiusChoice",a=(e==null?void 0:e.defaultRadius)||V.None;return{id:n,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:l=>{var u;return e!=null&&e.dependentSettingId?!!((u=l.getBlock(e.dependentSettingId))!=null&&u.value):!0},onChange:l=>m.presetCustomValue(l,r,t,(e==null?void 0:e.radiusStyleMap)||G),on:[{id:t,type:"input",placeholder:"e.g. 10px",rules:[m.numericalOrPixelRule],onChange:l=>m.appendUnit(l,t)}],off:[ze(r,a)]}},Ms=e=>{const n=e!=null&&e.id?`hasExtendedCustomRadius_${e.id}`:"hasExtendedCustomRadius",t=e!=null&&e.id?`extendedRadiusValue_${e.id}`:"extendedRadiusValue",r=e!=null&&e.id?`extendedRadiusChoice_${e.id}`:"extendedRadiusChoice",a=e!=null&&e.id?`extendedRadiusTopLeft_${e.id}`:"extendedRadiusTopLeft",l=e!=null&&e.id?`extendedRadiusTopRight_${e.id}`:"extendedRadiusTopRight",u=e!=null&&e.id?`extendedRadiusBottomLeft_${e.id}`:"extendedRadiusBottomLeft",d=e!=null&&e.id?`extendedRadiusBottomRight_${e.id}`:"extendedRadiusBottomRight";return{id:n,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:c=>{var w;return e!=null&&e.dependentSettingId?!!((w=c.getBlock(e.dependentSettingId))!=null&&w.value):!0},onChange:c=>{m.presetCustomValue(c,r,a,G),m.presetCustomValue(c,r,l,G),m.presetCustomValue(c,r,u,G),m.presetCustomValue(c,r,d,G)},on:[{id:t,type:"multiInput",layout:m.MultiInputLayout.Columns,blocks:[{id:a,type:"input",label:"Top Left",rules:[m.numericalOrPixelRule],onChange:c=>m.appendUnit(c,a)},{id:l,type:"input",label:"Top Right",rules:[m.numericalOrPixelRule],onChange:c=>m.appendUnit(c,l)},{id:u,type:"input",label:"Bottom Left",rules:[m.numericalOrPixelRule],onChange:c=>m.appendUnit(c,u)},{id:d,type:"input",label:"Bottom Right",rules:[m.numericalOrPixelRule],onChange:c=>m.appendUnit(c,d)}]}],off:[ze(r,e==null?void 0:e.defaultValue)]}},Ds=e=>{const n=e!=null&&e.id?e.id:"hasCustomSpacing",t=e!=null&&e.dependentSettingId?e.dependentSettingId:"columns",r=e!=null&&e.spacingChoiceId?e.spacingChoiceId:"spacingChoice",a=e!=null&&e.spacingCustomId?e.spacingCustomId:"spacingCustom",l=e!=null&&e.defaultValueChoices?e.defaultValueChoices:q.M;return{id:n,type:"switch",defaultValue:!1,switchLabel:"Custom",label:"Gutter",info:"An official nerds term for ‘gap’",onChange:u=>m.presetCustomValue(u,r,a,st),show:u=>{var d;return((d=u.getBlock(t))==null?void 0:d.value)!=="1"},on:[{id:a,type:"input",rules:[m.numericalOrPixelRule],onChange:u=>m.appendUnit(u,a)}],off:[{id:r,type:"slider",defaultValue:l,choices:[{value:q.Auto,label:"Auto"},{value:q.S,label:"S"},{value:q.M,label:"M"},{value:q.L,label:"L"}]}]}},$e=e=>({id:e,type:"segmentedControls",defaultValue:W.None,choices:[{value:W.None,label:"None"},{value:W.Small,label:"S"},{value:W.Medium,label:"M"},{value:W.Large,label:"L"}]}),Os=e=>{const n=e!=null&&e.id?`hasCustomMarginValue_${e==null?void 0:e.id}`:"hasCustomMarginValue",t=e!=null&&e.id?`marginValue_${e==null?void 0:e.id}`:"marginValue",r=e!=null&&e.id?`marginChoice_${e==null?void 0:e.id}`:"marginChoice";return{id:n,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more space",onChange:a=>m.presetCustomValue(a,r,t,(e==null?void 0:e.marginStyleMap)||Z),on:[{id:t,type:"input",placeholder:oe,rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)],onChange:a=>m.appendUnit(a,t)}],off:[$e(r)]}},Us=e=>{const n=e!=null&&e.id?`hasExtendedCustomMargin_${e==null?void 0:e.id}`:"hasExtendedCustomMargin",t=e!=null&&e.id?`extendedMarginValues_${e==null?void 0:e.id}`:"extendedMarginValues",r=e!=null&&e.id?`extendedMarginChoice_${e==null?void 0:e.id}`:"extendedMarginChoice",a=e!=null&&e.id?`extendedMarginTop_${e==null?void 0:e.id}`:"extendedMarginTop",l=e!=null&&e.id?`extendedMarginLeft_${e==null?void 0:e.id}`:"extendedMarginLeft",u=e!=null&&e.id?`extendedMarginRight_${e==null?void 0:e.id}`:"extendedMarginRight",d=e!=null&&e.id?`extendedMarginBottom_${e==null?void 0:e.id}`:"extendedMarginBottom";return{id:n,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:c=>{m.presetCustomValue(c,r,a,Z),m.presetCustomValue(c,r,l,Z),m.presetCustomValue(c,r,u,Z),m.presetCustomValue(c,r,d,Z)},on:[{id:t,type:"multiInput",layout:m.MultiInputLayout.Spider,blocks:[{id:a,type:"input",label:"Top",placeholder:oe,onChange:c=>m.appendUnit(c,a),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:l,type:"input",label:"Left",placeholder:oe,onChange:c=>m.appendUnit(c,l),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:u,type:"input",label:"Right",placeholder:oe,onChange:c=>m.appendUnit(c,u),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:d,type:"input",label:"Bottom",placeholder:oe,onChange:c=>m.appendUnit(c,d),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[$e(r)]}},We=e=>({id:e,type:"segmentedControls",defaultValue:$.Small,choices:[{value:$.None,label:"None"},{value:$.Small,label:"S"},{value:$.Medium,label:"M"},{value:$.Large,label:"L"}]}),_s=e=>{const n=e!=null&&e.id?`hasCustomPaddingValue_${e==null?void 0:e.id}`:"hasCustomPaddingValue",t=e!=null&&e.id?`paddingValue_${e==null?void 0:e.id}`:"paddingValue",r=e!=null&&e.id?`paddingChoice_${e==null?void 0:e.id}`:"paddingChoice";return{id:n,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:a=>m.presetCustomValue(a,r,t,(e==null?void 0:e.paddingStyleMap)||J),on:[{id:t,type:"input",placeholder:ae,rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)],onChange:a=>m.appendUnit(a,t)}],off:[We(r)]}},Hs=e=>{const n=e!=null&&e.id?`hasExtendedCustomPadding_${e==null?void 0:e.id}`:"hasExtendedCustomPadding",t=e!=null&&e.id?`extendedPaddingValues_${e==null?void 0:e.id}`:"extendedPaddingValues",r=e!=null&&e.id?`extendedPaddingChoice_${e==null?void 0:e.id}`:"extendedPaddingChoice",a=e!=null&&e.id?`extendedPaddingTop_${e==null?void 0:e.id}`:"extendedPaddingTop",l=e!=null&&e.id?`extendedPaddingLeft_${e==null?void 0:e.id}`:"extendedPaddingLeft",u=e!=null&&e.id?`extendedPaddingRight_${e==null?void 0:e.id}`:"extendedPaddingRight",d=e!=null&&e.id?`extendedPaddingBottom_${e==null?void 0:e.id}`:"extendedPaddingBottom";return{id:n,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:c=>{m.presetCustomValue(c,r,a,J),m.presetCustomValue(c,r,l,J),m.presetCustomValue(c,r,u,J),m.presetCustomValue(c,r,d,J)},on:[{id:t,type:"multiInput",layout:m.MultiInputLayout.Spider,blocks:[{id:a,type:"input",label:"Top",placeholder:ae,onChange:c=>m.appendUnit(c,a),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:l,type:"input",label:"Left",placeholder:ae,onChange:c=>m.appendUnit(c,l),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:u,type:"input",label:"Right",placeholder:ae,onChange:c=>m.appendUnit(c,u),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]},{id:d,type:"input",label:"Bottom",placeholder:ae,onChange:c=>m.appendUnit(c,d),rules:[m.numericalOrPixelRule,m.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[We(r)]}},Vs=e=>{const n=qe(e==null?void 0:e.globalControlId);return{id:e!=null&&e.id?e.id:"downloadable",type:"switch",defaultValue:!1,label:"Downloadable",show:t=>{var r;return((r=t.getBlock(n))==null?void 0:r.value)===X.Custom}}},qe=e=>e||"security",zs=e=>[{id:qe(e),type:"segmentedControls",defaultValue:X.Global,choices:[{value:X.Global,label:"Global Settings"},{value:X.Custom,label:"Custom"}]},{id:"globalSettingsInfo",type:"notification",footer:m.createFooter({label:"Change global settings [here].",replace:{here:{event:"general-settings.open"}}})}];var hn=(e=>(e.Main="main",e.Basics="basics",e.Layout="layout",e.Style="style",e.Security="security",e.Targets="targets",e))(hn||{});const $s=e=>e,Ws=e=>e;exports.AllTextStylePlugins=Bs;exports.AllTextStyles=js;exports.Attachments=xt;exports.AttachmentsProvider=mt;exports.AttachmentsToolbarButton=pt;exports.BUTTON_PLUGIN=Vt;exports.BlockButtonStyles=ve;exports.BlockInjectButton=En;exports.BlockItemWrapper=Qn;exports.BlockStyles=j;exports.BorderStyle=O;exports.ButtonPlugin=$t;exports.Custom1Plugin=Xt;exports.Custom2Plugin=Yt;exports.Custom3Plugin=Zt;exports.DEFAULT_ATTACHMENTS_BUTTON_ID=wt;exports.DEFAULT_DRAGGING_TOOLTIP=bt;exports.DEFAULT_DRAG_TOOLTIP=yt;exports.DEFAULT_MENU_BUTTON_ID=Fe;exports.DownloadButton=Yn;exports.DragHandleToolbarButton=vt;exports.DragPreviewContextProvider=it;exports.ELEMENT_BUTTON=k;exports.FlyoutToolbarButton=Re;exports.GutterSpacing=q;exports.Heading1Plugin=tn;exports.Heading2Plugin=nn;exports.Heading3Plugin=rn;exports.Heading4Plugin=sn;exports.ImageCaptionPlugin=an;exports.ImageTitlePlugin=on;exports.LinkInput=_t;exports.LinkPlugin=Kt;exports.LinkSelector=Ut;exports.Margin=W;exports.MenuToolbarButton=kt;exports.MultiFlyoutContextProvider=ut;exports.PARAGRAPH_CLASSES=un;exports.Padding=$;exports.ParagraphMarkupElement=cn;exports.ParagraphMarkupElementNode=fe;exports.ParagraphPlugin=ln;exports.QuoteMarkupElementNode=xe;exports.QuotePlugin=gn;exports.Radius=V;exports.RichTextEditor=Ur;exports.Sections=hn;exports.Security=X;exports.THEME_PREFIX=Ls;exports.TextStylePluginsWithoutImage=Ve;exports.TextStyles=y;exports.TextStylesWithoutImage=ee;exports.Toolbar=St;exports.ToolbarFlyoutMenu=Ct;exports.addHttps=pe;exports.borderStyleMap=rt;exports.convertToRteValue=Zn;exports.createButtonNode=Mt;exports.createButtonPlugin=zt;exports.createLinkPlugin=Gt;exports.createParagraphPlugin=dn;exports.createQuotePlugin=mn;exports.customCoordinatesGetterFactory=ft;exports.defineBlock=$s;exports.defineSettings=Ws;exports.getBackgroundColorStyles=Fn;exports.getBackgroundSettings=As;exports.getBorderRadiusSettings=Fs;exports.getBorderRadiusSlider=ze;exports.getBorderSettings=Rs;exports.getBorderStyles=On;exports.getDefaultPluginsWithLinkChooser=Ns;exports.getExtendedBorderRadiusSettings=Ms;exports.getGutterSettings=Ds;exports.getLegacyUrl=Tt;exports.getLinkFromEditor=jt;exports.getMarginExtendedSettings=Us;exports.getMarginSettings=Os;exports.getMarginSlider=$e;exports.getPaddingExtendedSettings=Hs;exports.getPaddingSettings=_s;exports.getPaddingSlider=We;exports.getRadiusStyles=Un;exports.getReadableColor=An;exports.getSecurityDownloadableSetting=Vs;exports.getSecurityGlobalControlId=qe;exports.getSecurityGlobalControlSetting=zs;exports.getUrl=It;exports.getUrlFromEditor=Ft;exports.getUrlFromLinkOrLegacyLink=Bt;exports.gutterSpacingStyleMap=st;exports.hasRichTextValue=Pt;exports.insertButton=Lt;exports.isDark=In;exports.isDownloadable=er;exports.isValidUrl=ye;exports.isValidUrlOrEmpty=te;exports.joinClassNames=U;exports.mapAppBridgeColorPaletteToFonduePalette=Et;exports.mapAppBridgeColorPalettesToFonduePalettes=tr;exports.marginStyleMap=Z;exports.moveItemInArray=Rn;exports.paddingStyleMap=J;exports.radiusStyleMap=G;exports.relativeUrlRegex=De;exports.setAlpha=Nn;exports.submitFloatingButton=Ue;exports.toColorObject=Ln;exports.toHex8String=Bn;exports.toHexString=jn;exports.toRgbaString=Ne;exports.toShortRgba=Q;exports.triggerFloatingButton=Dt;exports.triggerFloatingButtonEdit=be;exports.triggerFloatingButtonInsert=He;exports.unwrapButton=re;exports.upsertButton=At;exports.upsertButtonText=_e;exports.useAttachments=dt;exports.useAttachmentsContext=ht;exports.useDndSensors=zn;exports.useDragPreviewContext=ie;exports.useMultiFlyoutContext=ct;exports.useMultiFlyoutState=we;exports.withAttachmentsProvider=_n;exports.withButton=Nt;exports.wrapButton=Rt;Object.keys(m).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:()=>m[e]})});
|
|
1
|
+
"use strict";var bn=Object.defineProperty;var yn=(e,t,n)=>t in e?bn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var B=(e,t,n)=>(yn(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("@frontify/sidebar-settings"),a=require("react/jsx-runtime"),r=require("@frontify/fondue"),f=require("react"),G=require("@frontify/app-bridge"),T=require("@dnd-kit/core"),vn=require("@dnd-kit/modifiers"),ue=require("@dnd-kit/sortable"),tt=require("@react-aria/focus"),Cn=require("@react-stately/overlays"),_=require("@ctrl/tinycolor"),O=e=>e.filter(Boolean).join(" "),Sn=({onDrop:e,label:t,icon:n,secondaryLabel:s,isLoading:o,fillParentContainer:i,onAssetChooseClick:l,onUploadClick:u,withMenu:c=!0,onClick:h,validFileType:m,verticalLayout:d})=>{const[x,w]=f.useState(!1),[y,v]=f.useState(),k=f.useRef(null),[E,A]=f.useState(void 0),R=S=>{if(S.preventDefault(),w(!1),!D(S.dataTransfer.files)){A("Invalid"),setTimeout(()=>{A(void 0)},1e3);return}e==null||e(S.dataTransfer.files)},D=S=>{if(!m)return!0;for(let L=0;L<S.length;L++){const M=S[L].name.split(".").pop()??"";if(!G.FileExtensionSets[m].includes(M))return!1}return!0},U=S=>{if(!k.current||o)return;const{left:L,top:M}=k.current.getBoundingClientRect(),le=S.clientX-L,ce=S.clientY-M;v([le,ce])};return a.jsxs("button",{ref:k,"data-test-id":"block-inject-button",className:O(["tw-font-body tw-relative tw-text-sm tw-leading-4 tw-border tw-flex tw-items-center tw-justify-center tw-cursor-pointer tw-gap-3 tw-w-full first:tw-rounded-tl last:tw-rounded-br",d?"[&:not(:first-child)]:tw-border-t-0 first:tw-rounded-tr last:tw-rounded-bl":"[&:not(:first-child)]:tw-border-l-0 first:tw-rounded-bl last:tw-rounded-tr",i?"tw-h-full":"tw-h-[72px]",x&&!o?"tw-border-dashed":"tw-border-solid",y&&"tw-bg-blank-state-pressed-inverse",x&&"tw-bg-blank-state-weak-inverse",E?"!tw-border-red-50 !tw-cursor-not-allowed":" tw-border-blank-state-line",o||y||x||E?"":"tw-text-text-weak hover:tw-text-blank-state-hover hover:tw-bg-blank-state-hover-inverse hover:tw-border-blank-state-line-hover active:tw-text-blank-state-pressed active:tw-bg-blank-state-pressed-inverse active:tw-border-blank-state-line-hover",(x||y)&&!E?"[&>*]:tw-pointer-events-none tw-border-blank-state-line-hover":"tw-bg-blank-state-shaded-inverse tw-text-blank-state-shaded"]),onDragEnter:e?S=>{var L;if(w(!0),m==="Images")for(const M of Array.from(S.dataTransfer.items))(L=M==null?void 0:M.type)!=null&&L.startsWith("image/")?A(void 0):A("Invalid")}:void 0,onDragLeave:e?()=>{w(!1),A(void 0)}:void 0,onDrop:e?R:void 0,onClick:S=>{c&&U(S),h==null||h()},children:[o?a.jsx(r.LoadingCircle,{}):E?a.jsxs("div",{className:" tw-flex tw-items-center tw-justify-center tw-text-red-60 tw-font-medium",children:[a.jsx(r.IconExclamationMarkTriangle,{}),E]}):a.jsxs(a.Fragment,{children:[n&&a.jsx("div",{children:n}),(t||s)&&a.jsxs("div",{className:"tw-flex tw-flex-col tw-items-start",children:[t&&a.jsx("div",{className:"tw-font-medium",children:t}),s&&a.jsx("div",{className:"tw-font-normal",children:s})]})]}),y&&a.jsx("div",{className:"tw-absolute tw-left-0 tw-top-full tw-z-20",style:{left:y[0],top:y[1]},children:a.jsx(r.Flyout,{onOpenChange:S=>!S&&v(void 0),isOpen:!0,fitContent:!0,hug:!1,legacyFooter:!1,trigger:a.jsx("div",{}),children:a.jsx(r.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[...u?[{id:"upload",size:r.MenuItemContentSize.XSmall,title:"Upload asset",onClick:()=>{u(),v(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(r.IconArrowCircleUp20,{})})}]:[],...l?[{id:"asset",size:r.MenuItemContentSize.XSmall,title:"Browse asset",onClick:()=>{l(),v(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(r.IconImageStack20,{})})}]:[]]}]})})})]})},X=e=>{const t=s=>typeof s=="object"&&["red","green","blue"].every(i=>s.hasOwnProperty(i)),n=s=>{const o=typeof s.alpha=="number"?s.alpha:1;return{r:s.red,g:s.green,b:s.blue,a:o}};return t(e)?n(e):e},kn=e=>typeof e=="object"&&["red","green","blue"].every(n=>e==null?void 0:e.hasOwnProperty(n)),Tn=(e,t)=>{const n=kn(e)?X(e):e,s=new _.TinyColor(n);return t?s.getBrightness()<t:s.isDark()||s.getAlpha()>.25&&s.getAlpha()<1},Pn=e=>new _.TinyColor(X(e)).toHex8String(),In=e=>new _.TinyColor(X(e)).toHexString(),Ee=e=>new _.TinyColor(X(e)).toRgbString(),En=(e,t)=>new _.TinyColor(t).setAlpha(e).toRgbString(),Bn=e=>{const{r:t,g:n,b:s,a:o}=new _.TinyColor(e);return{red:t,green:n,blue:s,alpha:o}},Ye=e=>typeof e=="object"&&["red","green","blue"].every(n=>e==null?void 0:e.hasOwnProperty(n)),jn=(e,t)=>{const n=Ye(e)?X(e):e,s=Ye(t)?X(t):t;let o=new _.TinyColor(n);const i=new _.TinyColor(s);for(;_.readability(o,i)<4.5;)o=o.darken(1);return o.toRgbString()},Nn=(e,t,n)=>{const s=[...e],o=n<0?s.length+n:n;if(o>=0&&o<s.length){const i=s.splice(t,1)[0];s.splice(o,0,i)}return s},Ln=e=>({backgroundColor:Ee(e)});var F=(e=>(e.Solid="Solid",e.Dashed="Dashed",e.Dotted="Dotted",e))(F||{});const nt={Solid:"solid",Dotted:"dotted",Dashed:"dashed"};var H=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(H||{});const q={None:"0px",Small:"2px",Medium:"4px",Large:"12px"};var z=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(z||{});const Y={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var $=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))($||{});const J={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var K=(e=>(e.Global="Global",e.Custom="Custom",e))(K||{}),W=(e=>(e.Auto="Auto",e.S="S",e.M="M",e.L="L",e))(W||{});const rt={Auto:"4px",S:"10px",M:"30px",L:"50px"},An={red:241,green:241,blue:241,alpha:1},st={red:234,green:235,blue:235,alpha:1},Rn="1px",re="24px",se="24px",Mn=(e=F.Solid,t="1px",n=st)=>({borderStyle:nt[e],borderWidth:t,borderColor:Ee(n)}),Dn=(e,t=!1,n)=>({borderRadius:t?n:q[e]}),at=f.createContext(!1),ot=({children:e,isDragPreview:t})=>a.jsx(at.Provider,{value:t,children:e}),oe=()=>f.useContext(at),it=f.createContext({openFlyoutIds:[],setOpenFlyoutIds:()=>console.error("No MultiFlyoutContext Provider found")}),lt=({children:e,openFlyoutIds:t,setOpenFlyoutIds:n})=>{const s=f.useMemo(()=>({openFlyoutIds:t,setOpenFlyoutIds:n}),[t,n]);return a.jsx(it.Provider,{value:s,children:e})},ct=()=>f.useContext(it),he=e=>{const{openFlyoutIds:t,setOpenFlyoutIds:n}=ct(),s=f.useCallback(o=>{n(i=>{const l=i.filter(u=>u!==e);return o?[...l,e]:l})},[e,n]);return{isOpen:t.includes(e),onOpenChange:s}},Je=({children:e})=>a.jsx("div",{className:"tw-pointer-events-auto tw-flex tw-flex-shrink-0 tw-gap-px tw-px-px tw-h-[26px] tw-items-center tw-self-start tw-leading-none",children:e}),ut=(e,t)=>{const{blockAssets:n,addAssetIdsToKey:s,deleteAssetIdsFromKey:o,updateAssetIdsFromKey:i}=G.useBlockAssets(e),l=(n==null?void 0:n[t])||[];return{onAttachmentsAdd:async d=>{await s(t,d.map(x=>x.id))},onAttachmentDelete:async d=>{await o(t,[d.id])},onAttachmentReplace:async(d,x)=>{const w=l.map(y=>y.id===d.id?x.id:y.id);await i(t,w)},onAttachmentsSorted:async d=>{const x=d.map(w=>w.id);await i(t,x)},attachments:l,appBridge:e}},dt=f.createContext(null),gt=({appBridge:e,children:t,assetId:n})=>{const s=ut(e,n);return a.jsx(dt.Provider,{value:s,children:t})},mt=()=>{const e=f.useContext(dt);if(!e)throw new Error("No AttachmentsContext Provided. Component must be wrapped in an 'AttachmentsProvider' or the 'withAttachmentsProvider' HOC");return e},Fn=(e,t)=>{const n=s=>a.jsx(gt,{appBridge:s.appBridge,assetId:t,children:a.jsx(e,{...s})});return n.displayName="withAttachmentsProvider",n},On=[T.KeyboardCode.Down,T.KeyboardCode.Right,T.KeyboardCode.Up,T.KeyboardCode.Left],ht=(e,t)=>(n,{currentCoordinates:s,context:{activeNode:o}})=>{if(n.preventDefault(),On.includes(n.code)){const i=(o==null?void 0:o.offsetWidth)??0,l=(o==null?void 0:o.offsetHeight)??0;switch(n.code){case T.KeyboardCode.Right:return{...s,x:s.x+i+e};case T.KeyboardCode.Left:return{...s,x:s.x-i-e};case T.KeyboardCode.Down:return{...s,y:s.y+l+t};case T.KeyboardCode.Up:return{...s,y:s.y-l-t}}}},Un={start:["Space","Enter"],cancel:[],end:["Space","Enter","Escape"]},_n=(e=0,t=0)=>{const n=ht(e,t);return T.useSensors(T.useSensor(T.PointerSensor),T.useSensor(T.KeyboardSensor,{coordinateGetter:n,keyboardCodes:Un}))},Hn=e=>e==="IMAGE"?a.jsx(r.IconImage24,{}):e==="VIDEO"?a.jsx(r.IconPlayFrame24,{}):e==="AUDIO"?a.jsx(r.IconMusicNote24,{}):a.jsx(r.IconDocument24,{}),Be=f.forwardRef(({item:e,isEditing:t,draggableProps:n,transformStyle:s,isDragging:o,isOverlay:i,isLoading:l,onDelete:u,onReplaceWithBrowse:c,onReplaceWithUpload:h,onDownload:m},d)=>{const[x,w]=f.useState(),[y,{selectedFiles:v}]=G.useFileInput({multiple:!0,accept:"image/*"}),[k,{results:E,doneAll:A}]=G.useAssetUpload(),{focusProps:R,isFocusVisible:D}=tt.useFocusRing();f.useEffect(()=>{v&&k(v[0])},[v]),f.useEffect(()=>{A&&h(E[0])},[A,E]);const U=l||v&&!A;return a.jsxs("button",{"aria-label":"Download attachment","data-test-id":"attachments-item",onClick:()=>m==null?void 0:m(),ref:d,style:{...s,opacity:o&&!i?.3:1,fontFamily:"var(-f-theme-settings-body-font-family)"},className:O(["tw-cursor-pointer tw-text-left tw-w-full tw-relative tw-flex tw-gap-3 tw-px-5 tw-py-3 tw-items-center tw-group hover:tw-bg-box-neutral-hover",o?"tw-bg-box-neutral-hover":""]),children:[a.jsx("div",{className:"tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:U?a.jsx(r.LoadingCircle,{size:r.LoadingCircleSize.Small}):Hn(e.objectType)}),a.jsxs("div",{className:"tw-text-s tw-flex-1 tw-min-w-0",children:[a.jsx("div",{className:"tw-whitespace-nowrap tw-overflow-hidden tw-text-ellipsis tw-font-bold tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:e.title}),a.jsx("div",{className:"tw-text-text-weak",children:`${e.fileSizeHumanReadable} - ${e.extension}`})]}),t&&a.jsxs("div",{"data-test-id":"attachments-actionbar",className:O(["tw-flex tw-gap-0.5 group-focus:tw-opacity-100 focus-visible:tw-opacity-100 focus-within:tw-opacity-100 group-hover:tw-opacity-100",i||(x==null?void 0:x.id)===e.id?"tw-opacity-100":"tw-opacity-0"]),children:[a.jsx("button",{...R,...n,"aria-label":"Drag attachment",className:O([" tw-border-button-border tw-bg-button-background active:tw-bg-button-background-pressed tw-group tw-border tw-box-box tw-relative tw-flex tw-items-center tw-justify-center tw-outline-none tw-font-medium tw-rounded tw-h-9 tw-w-9 ",o||i?"tw-cursor-grabbing tw-bg-button-background-pressed hover:tw-bg-button-background-pressed":"tw-cursor-grab hover:tw-bg-button-background-hover",D&&r.FOCUS_STYLE,D&&"tw-z-[2]"]),children:a.jsx(r.IconGrabHandle20,{})}),a.jsx("div",{"data-test-id":"attachments-actionbar-flyout",children:a.jsx(r.Flyout,{placement:r.FlyoutPlacement.Right,isOpen:(x==null?void 0:x.id)===e.id,fitContent:!0,legacyFooter:!1,onOpenChange:S=>w(S?e:void 0),trigger:(S,L)=>a.jsx(r.Button,{ref:L,icon:a.jsx(r.IconPen20,{}),emphasis:r.ButtonEmphasis.Default,onClick:()=>w(e)}),children:a.jsx(r.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[{id:"upload",size:r.MenuItemContentSize.XSmall,title:"Replace with upload",onClick:()=>{y(),w(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(r.IconArrowCircleUp20,{})})},{id:"asset",size:r.MenuItemContentSize.XSmall,title:"Replace with asset",onClick:()=>{c(),w(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(r.IconImageStack20,{})})}]},{id:"menu-delete",menuItems:[{id:"delete",size:r.MenuItemContentSize.XSmall,title:"Delete",style:r.MenuItemStyle.Danger,onClick:()=>{u(),w(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(r.IconTrashBin20,{})})}]}]})})})]})]})});Be.displayName="AttachmentItem";const Vn=e=>{const{attributes:t,listeners:n,setNodeRef:s,transform:o,transition:i,isDragging:l}=ue.useSortable({id:e.item.id}),u={transform:o?`translate(${o.x}px, ${o.y}px)`:"",transition:i,zIndex:l?2:1},c={...t,...n};return a.jsx(Be,{ref:s,isDragging:l,transformStyle:u,draggableProps:c,...e})},zn=({children:e,isFlyoutOpen:t,triggerProps:n,triggerRef:s})=>a.jsxs("button",{className:O(["tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",t?"tw-bg-box-neutral-pressed tw-text-box-neutral-inverse-pressed":"tw-bg-base hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed tw-text-box-neutral-inverse hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed"]),...n,ref:s,"data-test-id":"attachments-button-trigger",children:[a.jsx(r.IconPaperclip16,{}),e,a.jsx(r.IconCaretDown12,{})]}),ft=({items:e=[],onDelete:t,onReplaceWithBrowse:n,onReplaceWithUpload:s,onBrowse:o,onUpload:i,onSorted:l,appBridge:u,triggerComponent:c=zn,isOpen:h,onOpenChange:m})=>{const[d,x]=f.useState(e),[w,y]=f.useState(!1),v=T.useSensors(T.useSensor(T.PointerSensor),T.useSensor(T.KeyboardSensor)),[k,E]=f.useState(void 0),[A,R]=f.useState(!1),[D,U]=f.useState([]),[S,L]=f.useState(null),M=G.useEditorState(u),{openAssetChooser:le,closeAssetChooser:ce}=G.useAssetChooser(u),We=h!==void 0,be=We?h:w,Q=d==null?void 0:d.find(b=>b.id===k),[mn,{results:qe,doneAll:Ge}]=G.useAssetUpload({onUploadProgress:()=>!A&&R(!0)}),ne=b=>{const I=We?m:y;I==null||I(b)};f.useEffect(()=>{x(e)},[e]),f.useEffect(()=>{S&&(R(!0),mn(S))},[S]),f.useEffect(()=>{(async()=>{Ge&&(await i(qe),R(!1))})()},[Ge,qe]);const hn=()=>{ne(!1),le(b=>{o(b),ce(),ne(!0)},{multiSelection:!0,selectedValueIds:d.map(b=>b.id)})},Ke=b=>{ne(!1),le(async I=>{ne(!0),ce(),U([...D,b.id]),await n(b,I[0]),U(D.filter(V=>V!==b.id))},{multiSelection:!1,selectedValueIds:d.map(I=>I.id)})},Xe=async(b,I)=>{U([...D,b.id]),await s(b,I),U(D.filter(V=>V!==b.id))},fn=b=>{const{active:I}=b;E(I.id)},xn=b=>{const{active:I,over:V}=b;if(V&&I.id!==V.id&&d){const wn=d.findIndex(ye=>ye.id===I.id),pn=d.findIndex(ye=>ye.id===V.id),Qe=ue.arrayMove(d,wn,pn);x(Qe),l(Qe)}E(void 0)};return M||((d==null?void 0:d.length)??0)>0?a.jsx(r.LegacyTooltip,{withArrow:!0,position:r.TooltipPosition.Top,content:"Attachments",disabled:be,enterDelay:500,triggerElement:a.jsx("div",{"data-test-id":"attachments-flyout-button",children:a.jsx(r.Flyout,{placement:r.FlyoutPlacement.BottomRight,onOpenChange:b=>ne(Q?!0:b),isOpen:be,hug:!1,fitContent:!0,legacyFooter:!1,trigger:(b,I)=>a.jsx(c,{isFlyoutOpen:be,triggerProps:b,triggerRef:I,children:a.jsx("div",{children:e.length>0?e.length:"Add"})}),children:a.jsxs("div",{className:"tw-w-[300px]","data-test-id":"attachments-flyout-content",children:[d.length>0&&a.jsxs(T.DndContext,{sensors:v,collisionDetection:T.closestCenter,onDragStart:fn,onDragEnd:xn,modifiers:[vn.restrictToWindowEdges],children:[a.jsx(ue.SortableContext,{items:d,strategy:ue.rectSortingStrategy,children:a.jsx("div",{className:"tw-border-b tw-border-b-line",children:d.map(b=>a.jsx(Vn,{isEditing:M,isLoading:D.includes(b.id),item:b,onDelete:()=>t(b),onReplaceWithBrowse:()=>Ke(b),onReplaceWithUpload:I=>Xe(b,I),onDownload:()=>u.dispatch({name:"downloadAsset",payload:b})},b.id))})}),a.jsx(T.DragOverlay,{children:Q&&a.jsx(Be,{isOverlay:!0,isEditing:M,item:Q,isDragging:!0,onDelete:()=>t(Q),onReplaceWithBrowse:()=>Ke(Q),onReplaceWithUpload:b=>Xe(Q,b)},k)})]}),M&&a.jsxs("div",{className:"tw-px-5 tw-py-3",children:[a.jsx("div",{className:"tw-font-body tw-font-medium tw-text-text tw-text-s tw-my-4",children:"Add attachments"}),a.jsx(r.AssetInput,{isLoading:A,size:r.AssetInputSize.Small,onUploadClick:b=>L(b),onLibraryClick:hn})]})]})})})}):null},$n=(e,t)=>{const n=[r.FOCUS_VISIBLE_STYLE,"tw-relative tw-inline-flex tw-items-center tw-justify-center","tw-h-6 tw-p-1","tw-rounded","tw-text-xs tw-font-medium","tw-gap-0.5","focus-visible:tw-z-10"];return t?n.push("tw-bg-box-neutral-pressed","tw-text-box-neutral-inverse-pressed",e==="grab"?"tw-cursor-grabbing":"tw-cursor-pointer"):n.push("hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed","tw-text-text-weak hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed",e==="grab"?"!tw-cursor-grab active:tw-cursor-grabbing":"tw-cursor-pointer"),O(n)},ie=f.forwardRef(({onClick:e,children:t,forceActiveStyle:n,cursor:s="pointer","data-test-id":o="base-toolbar-button",...i},l)=>a.jsx("button",{onClick:e,className:$n(s,n),"data-test-id":o,...i,ref:l,children:t}));ie.displayName="BaseToolbarButton";const Wn=({children:e,isFlyoutOpen:t,triggerProps:n,triggerRef:s})=>a.jsxs(ie,{forceActiveStyle:t,"data-test-id":"attachments-toolbar-button-trigger",...n,ref:s,children:[a.jsx(r.IconPaperclip16,{}),e,a.jsx(r.IconCaretDown12,{})]}),xt="attachments",wt=({flyoutId:e=xt})=>{const t=r.useMemoizedId(e),{appBridge:n,attachments:s,onAttachmentsAdd:o,onAttachmentDelete:i,onAttachmentReplace:l,onAttachmentsSorted:u}=mt(),{isOpen:c,onOpenChange:h}=he(t),m=oe();return a.jsx(ft,{onUpload:o,onDelete:i,onReplaceWithBrowse:l,onReplaceWithUpload:l,onSorted:u,onBrowse:o,items:s,appBridge:n,triggerComponent:Wn,isOpen:c&&!m,onOpenChange:h})},je=({open:e,content:t,children:n,disabled:s})=>a.jsx(r.LegacyTooltip,{withArrow:!0,hoverDelay:0,enterDelay:300,open:e,disabled:s,position:r.TooltipPosition.Top,content:a.jsx("div",{children:t}),triggerElement:n,"data-test-id":"toolbar-button-tooltip"}),qn=({tooltip:e,icon:t,onClick:n})=>{const s=oe();return a.jsx(je,{disabled:s,content:e??"",children:a.jsx(ie,{"data-test-id":"block-item-wrapper-toolbar-btn",onClick:n,children:t})})},pt="Drag or press ↵ to move",bt="Move with ↑↓←→ and confirm with ↵",yt=({tooltip:e,icon:t,setActivatorNodeRef:n,draggableProps:s})=>{const o=oe();return a.jsx(je,{open:o,content:a.jsx("div",{children:o?bt:e??pt}),children:a.jsx(ie,{ref:n,"data-test-id":"block-item-wrapper-toolbar-btn",forceActiveStyle:o,cursor:"grab",...s,children:t})})},Ne=({content:e,icon:t,tooltip:n,flyoutId:s,flyoutFooter:o,flyoutHeader:i})=>{const l=r.useMemoizedId(s),{isOpen:u,onOpenChange:c}=he(l),h=oe();return a.jsx(je,{disabled:h||u,content:n,children:a.jsx("div",{className:"tw-flex tw-flex-shrink-0 tw-flex-1 tw-h-6 tw-relative",children:a.jsx(r.Flyout,{isOpen:u&&!h,legacyFooter:!1,fixedFooter:o,fixedHeader:i,fitContent:!0,hug:!1,placement:r.FlyoutPlacement.BottomRight,onOpenChange:c,trigger:(m,d)=>a.jsx(ie,{"data-test-id":"block-item-wrapper-toolbar-flyout",forceActiveStyle:u&&!h,...m,ref:d,children:t}),children:e})})})},vt=({items:e,flyoutId:t})=>{const{onOpenChange:n}=he(t);return a.jsx(r.ActionMenu,{menuBlocks:e.map((s,o)=>({id:o.toString(),menuItems:s.map((i,l)=>({id:o.toString()+l.toString(),size:r.MenuItemContentSize.XSmall,title:i.title,style:i.style,onClick:()=>{n(!1),i.onClick()},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:i.icon})}))}))})},Le="menu",Ct=({items:e,flyoutId:t=Le,tooltip:n="Options"})=>{const s=r.useMemoizedId(t);return a.jsx(Ne,{icon:a.jsx(r.IconDotsHorizontal16,{}),tooltip:n,flyoutId:s,content:a.jsx(vt,{items:e,flyoutId:s})})},St=({items:e,attachments:t})=>a.jsxs("div",{"data-test-id":"block-item-wrapper-toolbar",className:"tw-rounded-md tw-bg-base tw-border tw-border-line-strong tw-divide-x tw-divide-line-strong tw-shadow-lg tw-flex tw-flex-none tw-items-center tw-isolate",children:[t.isEnabled&&a.jsx(Je,{children:a.jsx(wt,{})}),a.jsx(Je,{children:e.map(n=>n.type==="dragHandle"?a.jsx(yt,{...n},n.tooltip+n.type):n.type==="menu"?a.jsx(Ct,{...n},n.tooltip+n.type):n.type==="flyout"?a.jsx(Ne,{...n},n.tooltip+n.type):a.jsx(qn,{...n},n.tooltip+n.type))})]}),Gn=({children:e,toolbarItems:t,shouldHideWrapper:n,shouldHideComponent:s=!1,isDragging:o=!1,shouldFillContainer:i,outlineOffset:l=2,shouldBeShown:u=!1,showAttachments:c=!1})=>{const[h,m]=f.useState(u?[Le]:[]),d=f.useRef(null);if(n)return a.jsx(a.Fragment,{children:e});const x=t==null?void 0:t.filter(y=>y!==void 0),w=h.length>0||u;return a.jsx(ot,{isDragPreview:o,children:a.jsx(lt,{openFlyoutIds:h,setOpenFlyoutIds:m,children:a.jsxs("div",{ref:d,"data-test-id":"block-item-wrapper",style:{outlineOffset:l},className:O(["tw-relative tw-group tw-outline-1 tw-outline-box-selected-inverse",i&&"tw-flex-1 tw-h-full tw-w-full","hover:tw-outline focus-within:tw-outline",w&&"tw-outline",s&&"tw-opacity-0"]),children:[a.jsx("div",{style:{right:-1-l,bottom:`calc(100% - ${2+l}px)`},className:O(["tw-pointer-events-none tw-absolute tw-bottom-[calc(100%-4px)] tw-right-[-3px] tw-w-full tw-opacity-0 tw-z-[60]","group-hover:tw-opacity-100 group-focus:tw-opacity-100 focus-within:tw-opacity-100","tw-flex tw-justify-end",w&&"tw-opacity-100"]),children:a.jsx(St,{attachments:{isEnabled:c},items:x})}),e]})})})},Kn=({onDownload:e})=>{const{isFocused:t,focusProps:n}=tt.useFocusRing();return a.jsx(r.LegacyTooltip,{withArrow:!0,position:r.TooltipPosition.Top,content:"Download",enterDelay:500,triggerElement:a.jsx("button",{tabIndex:0,"aria-label":"Download",...n,className:O(["tw-outline-none tw-rounded",t&&r.FOCUS_STYLE]),onClick:e,onPointerDown:s=>s.preventDefault(),children:a.jsx("span",{"data-test-id":"download-button",className:"tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-bg-box-neutral-strong-inverse hover:tw-bg-box-neutral-strong-inverse-hover active:tw-bg-box-neutral-strong-inverse-pressed tw-text-box-neutral-strong tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",children:a.jsx(r.IconArrowCircleDown16,{})})})})},Xn=({value:e="",gap:t,columns:n,show:s=!0,plugins:o})=>{const[i,l]=f.useState(null);return f.useEffect(()=>{(async()=>l(await r.serializeRawToHtmlAsync(e,o,n,t)))()},[e,n,t,o]),!s||i==="<br />"?null:i!==null?a.jsx("div",{className:"tw-w-full tw-whitespace-pre-wrap","data-test-id":"rte-content-html",dangerouslySetInnerHTML:{__html:i}}):a.jsx("div",{className:"tw-rounded-sm tw-bg-base-alt tw-animate-pulse tw-h-full tw-min-h-[10px] tw-w-full"})},Ae=r.createStore("floatingButton")({openEditorId:null,mouseDown:!1,updated:!1,url:"",text:"",buttonStyle:"primary",newTab:!1,mode:"",isEditing:!1}).extendActions(e=>({reset:()=>{e.url(""),e.text(""),e.buttonStyle("primary"),e.newTab(!1),e.mode(""),e.isEditing(!1)}})).extendActions(e=>({show:(t,n)=>{e.mode(t),e.isEditing(!1),e.openEditorId(n)},hide:()=>{e.reset(),e.openEditorId(null)}})).extendSelectors(e=>({isOpen:t=>e.openEditorId===t})),P=Ae.set,N=Ae.get,ae=()=>Ae.use,kt=e=>{if(!e)return!1;const t=n=>n.some(s=>s.text?s.text!=="":s.children?t(s.children):!1);try{const n=JSON.parse(e);return t(n)}catch{return!1}},Qn=(e="p",t="",n)=>kt(t)?t:JSON.stringify([{type:e,children:[{text:t,textStyle:e}],align:n}]),Yn=(e,t,n)=>e===K.Custom?t:n,Jn=e=>e.map(Tt),Tt=e=>({id:e.id,title:e.name,colors:e.colors.map(er)}),Zn=e=>"revision"in e,er=e=>{if(Zn(e)){const{title:t,revision:n}=e;return{alpha:n.rgba.alpha?n.rgba.alpha/255:1,red:n.rgba.red??0,green:n.rgba.green??0,blue:n.rgba.blue??0,name:t??""}}return{alpha:e.alpha?e.alpha/255:1,red:e.red??0,green:e.green??0,blue:e.blue??0,name:e.name??""}},Re=(e,t)=>{const n=r.getAboveNode(e,{match:{type:r.ELEMENT_LINK}});return Array.isArray(n)?t(n[0]):""},tr=e=>Re(e,t=>{var n,s;return((s=(n=t.chosenLink)==null?void 0:n.searchResult)==null?void 0:s.link)||""}),nr=e=>Re(e,t=>t.url||""),Me=e=>{var t,n;return e.url||((n=(t=e.chosenLink)==null?void 0:t.searchResult)==null?void 0:n.link)||""},rr=e=>Re(e,Me),De=/^\/(document|r)\/\S+$/i,fe=e=>{if(De.test(e))return e;try{return new URL(e),e}catch{return`https://${e}`}},xe=e=>{if(De.test(e))return!0;try{const t=new URL(e);return["http:","https:","mailto:","tel:"].includes(t.protocol)&&t.pathname!==""}catch{return!1}},ee=e=>xe(fe(e))||e==="",Pt=(e,{type:t})=>{const{apply:n,normalizeNode:s}=e;return e.apply=o=>{if(o.type!=="set_selection"){n(o);return}const i=o.newProperties;if(!(i!=null&&i.focus)||!i.anchor||!r.isCollapsed(i)){n(o);return}const l=r.getAboveNode(e,{at:i,match:{type:r.getPluginType(e,C)}});if(l){const[,u]=l;let c;r.isStartPoint(e,i.focus,u)&&(c=r.getPreviousNodeEndPoint(e,u)),r.isEndPoint(e,i.focus,u)&&(c=r.getNextNodeStartPoint(e,u)),c&&(o.newProperties={anchor:c,focus:c})}n(o)},e.normalizeNode=([o,i])=>{if(o.type===r.getPluginType(e,C)){const l=e.selection;if(l&&r.isCollapsed(l)&&r.isEndPoint(e,l.focus,i)){const u=r.getNextNodeStartPoint(e,i);if(u)r.select(e,u);else{const c=r.Path.next(i);r.insertNodes(e,{text:""},{at:c}),r.select(e,c)}}}s([o,i])},r.withRemoveEmptyNodes(e,r.mockPlugin({options:{types:t}}))},It=(e,t,n)=>{r.insertNodes(e,[Nt(e,t)],n)},Fe=e=>{if(!e.selection)return;const{isUrl:t,forceSubmit:n}=r.getPluginOptions(e,C),s=N.url();if(!((t==null?void 0:t(s))||n))return;const i=N.text(),l=N.buttonStyle(),u=N.newTab()?void 0:"_self";return P.reset(),Et(e,{url:s,text:i,buttonStyle:l,target:u,isUrl:c=>n||!t?!0:t(c)}),setTimeout(()=>{r.focusEditor(e,e.selection??void 0)},0),!0},te=(e,t)=>r.withoutNormalizing(e,()=>{var n,s,o,i,l,u;if(t!=null&&t.split){if(r.getAboveNode(e,{at:(n=e.selection)==null?void 0:n.anchor,match:{type:r.getPluginType(e,C)}}))return r.splitNodes(e,{at:(s=e.selection)==null?void 0:s.anchor,match:m=>r.isElement(m)&&m.type===r.getPluginType(e,C)}),te(e,{at:(o=e.selection)==null?void 0:o.anchor}),!0;if(r.getAboveNode(e,{at:(i=e.selection)==null?void 0:i.focus,match:{type:r.getPluginType(e,C)}}))return r.splitNodes(e,{at:(l=e.selection)==null?void 0:l.focus,match:m=>r.isElement(m)&&m.type===r.getPluginType(e,C)}),te(e,{at:(u=e.selection)==null?void 0:u.focus}),!0}r.unwrapNodes(e,{match:{type:r.getPluginType(e,C)},...t})}),Et=(e,{url:t,text:n,buttonStyle:s,target:o,insertTextInButton:i,insertNodesOptions:l,isUrl:u=r.getPluginOptions(e,C).isUrl})=>{var E;const c=e.selection;if(!c)return;const h=r.getAboveNode(e,{at:c,match:{type:r.getPluginType(e,C)}});if(i&&h)return e.insertText(t),!0;if(!(u!=null&&u(t)))return;if(r.isDefined(n)&&n.length===0&&(n=t),h)return or(t,e,h,o,s,n),!0;const m=r.findNode(e,{at:c,match:{type:r.getPluginType(e,C)}}),[d,x]=m??[],w=sr(e,x,n);if(r.isExpanded(c))return ar(h,e,t,s,o,n),!0;w&&r.removeNodes(e,{at:x});const y=r.getNodeProps(d??{}),v=(E=e.selection)==null?void 0:E.focus.path;if(!v)return;const k=r.getNodeLeaf(e,v);return n!=null&&n.length||(n=t),It(e,{...y,url:t,target:o,children:[{...k,text:n}]},l),!0};function sr(e,t,n){return t&&(n==null?void 0:n.length)&&n!==r.getEditorString(e,t)}function ar(e,t,n,s,o,i){e?te(t,{at:e[1]}):te(t,{split:!0}),Bt(t,{url:n,buttonStyle:s,target:o}),Oe(t,{url:n,target:o,text:i})}function or(e,t,n,s,o,i){var l,u,c;(e!==((l=n[0])==null?void 0:l.url)||s!==((u=n[0])==null?void 0:u.target)||o!==((c=n[0])==null?void 0:c.buttonStyle))&&r.setNodes(t,{url:e,target:s,buttonStyle:o},{at:n[1]}),Oe(t,{url:e,text:i,target:s})}const Oe=(e,{text:t})=>{const n=r.getAboveNode(e,{match:{type:r.getPluginType(e,C)}});if(n){const[s,o]=n;if(t!=null&&t.length&&t!==r.getEditorString(e,o)){const i=s.children[0];r.replaceNodeChildren(e,{at:o,nodes:{...i,text:t},insertOptions:{select:!0}})}}},Bt=(e,{url:t,buttonStyle:n,target:s,...o})=>{r.wrapNodes(e,{type:r.getPluginType(e,C),url:t,buttonStyle:n,target:s,children:[]},{split:!0,...o})},ir=(e,t)=>{const n=r.getAboveNode(e,{match:{type:C}});return Array.isArray(n)?t(n[0]):""},jt=e=>ir(e,t=>t.url??""),Nt=(e,{url:t,text:n="",buttonStyle:s="primary",target:o,children:i})=>({type:r.getPluginType(e,C),url:t,target:o,buttonStyle:s,children:i??[{text:n}]}),Lt=(e,{focused:t}={})=>{if(N.mode()==="edit"){we(e);return}Ue(e,{focused:t})},we=e=>{const t=r.findNode(e,{match:{type:r.getPluginType(e,C)}});if(!t)return;const[n,s]=t;let o=r.getEditorString(e,s);P.url(n.url),P.newTab(n.target===void 0),o===n.url&&(o=""),P.text(o),P.isEditing(!0)},Ue=(e,{focused:t}={})=>{N.mode()||!t||r.isRangeAcrossBlocks(e,{at:e.selection})||r.someNode(e,{match:{type:r.getPluginType(e,C)}})||(P.text(r.getEditorString(e,e.selection)),P.show("insert",e.id))},pe={buttonPrimary:{fontFamily:"var(--f-theme-settings-button-primary-font-family)",fontSize:"var(--f-theme-settings-button-primary-font-size)",fontWeight:"var(--f-theme-settings-button-primary-font-weight)",lineHeight:"var(--f-theme-settings-button-primary-line-height)",paddingTop:"var(--f-theme-settings-button-primary-padding-top)",paddingRight:"var(--f-theme-settings-button-primary-padding-right)",paddingBottom:"var(--f-theme-settings-button-primary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-primary-padding-left)",fontStyle:"var(--f-theme-settings-button-primary-font-style)",textTransform:"var(--f-theme-settings-button-primary-text-transform)",backgroundColor:"var(--f-theme-settings-button-primary-background-color)",borderColor:"var(--f-theme-settings-button-primary-border-color)",borderRadius:"var(--f-theme-settings-button-primary-border-radius)",borderWidth:"var(--f-theme-settings-button-primary-border-width)",color:"var(--f-theme-settings-button-primary-color)",marginTop:"10px",marginBottom:"10px",display:"inline-block",hover:{backgroundColor:"var(--f-theme-settings-button-primary-background-color-hover)",borderColor:"var(--f-theme-settings-button-primary-border-color-hover)",color:"var(--f-theme-settings-button-primary-color-hover)"}},buttonSecondary:{fontFamily:"var(--f-theme-settings-button-secondary-font-family)",fontSize:"var(--f-theme-settings-button-secondary-font-size)",fontWeight:"var(--f-theme-settings-button-secondary-font-weight)",lineHeight:"var(--f-theme-settings-button-secondary-line-height)",paddingTop:"var(--f-theme-settings-button-secondary-padding-top)",paddingRight:"var(--f-theme-settings-button-secondary-padding-right)",paddingBottom:"var(--f-theme-settings-button-secondary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-secondary-padding-left)",fontStyle:"var(--f-theme-settings-button-secondary-font-style)",textTransform:"var(--f-theme-settings-button-secondary-text-transform)",backgroundColor:"var(--f-theme-settings-button-secondary-background-color)",borderColor:"var(--f-theme-settings-button-secondary-border-color)",borderRadius:"var(--f-theme-settings-button-secondary-border-radius)",borderWidth:"var(--f-theme-settings-button-secondary-border-width)",color:"var(--f-theme-settings-button-secondary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-secondary-background-color-hover)",borderColor:"var(--f-theme-settings-button-secondary-border-color-hover)",color:"var(--f-theme-settings-button-secondary-color-hover)"}},buttonTertiary:{fontFamily:"var(--f-theme-settings-button-tertiary-font-family)",fontSize:"var(--f-theme-settings-button-tertiary-font-size)",fontWeight:"var(--f-theme-settings-button-tertiary-font-weight)",lineHeight:"var(--f-theme-settings-button-tertiary-line-height)",paddingTop:"var(--f-theme-settings-button-tertiary-padding-top)",paddingRight:"var(--f-theme-settings-button-tertiary-padding-right)",paddingBottom:"var(--f-theme-settings-button-tertiary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-tertiary-padding-left)",fontStyle:"var(--f-theme-settings-button-tertiary-font-style)",textTransform:"var(--f-theme-settings-button-tertiary-text-transform)",backgroundColor:"var(--f-theme-settings-button-tertiary-background-color)",borderColor:"var(--f-theme-settings-button-tertiary-border-color)",borderRadius:"var(--f-theme-settings-button-tertiary-border-radius)",borderWidth:"var(--f-theme-settings-button-tertiary-border-width)",color:"var(--f-theme-settings-button-tertiary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-tertiary-background-color-hover)",borderColor:"var(--f-theme-settings-button-tertiary-border-color-hover)",color:"var(--f-theme-settings-button-tertiary-color-hover)"}}},lr=e=>{var l,u;const{attributes:t,children:n}=e,s=e.element.url||((u=(l=e.element.chosenLink)==null?void 0:l.searchResult)==null?void 0:u.link)||"",o=e.element.target||"_self",i=String(e.element.buttonStyle)||"primary";return a.jsx(cr,{attributes:t,href:s,target:o,styles:pe[`button${i.charAt(0).toUpperCase()+i.slice(1)}`],children:n})},cr=({attributes:e,styles:t={hover:{}},children:n,href:s="#",target:o})=>{const[i,l]=f.useState(!1);return a.jsx("a",{...e,onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),href:s,target:o,style:i?{...t,...t.hover}:t,children:n})};class ur extends r.MarkupElement{constructor(t=C,n=lr){super(t,n)}}const At=f.forwardRef((e,t)=>{const n=r.useEditorRef();return a.jsx(r.ToolbarButton,{ref:t,...e,onMouseDown:()=>{r.focusEditor(n,n.selection??n.prevSelection??void 0)},onClick:()=>{Lt(n,{focused:!0})},children:a.jsx(r.IconStylingWrapper,{icon:a.jsx(r.IconButton16,{})})})});At.displayName="ButtonToolbarButton";const dr=({editorId:e,id:t})=>{const n=r.useEditorState(r.useEventPlateId(e)),s=!!r.isRangeInSameBlock(n,{at:n.selection}),o=r.getPluginType(n,C),i=!!(n!=null&&n.selection)&&r.someNode(n,{match:{type:o}});return a.jsx("div",{"data-plugin-id":t,children:a.jsx(At,{pressed:i,disabled:!s,tooltip:r.getTooltip(s?`Button
|
|
2
|
+
${r.getHotkeyByPlatform("Ctrl+Shift+K")}`:"Buttons can only be set for a single text block.")})})},gr=()=>{const e=r.useEditorRef();return a.jsx("div",{"data-test-id":"floating-button-edit",className:"tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:a.jsxs("span",{"data-test-id":"preview-button-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[a.jsx("span",{className:"tw-pointer-events-none",children:N.url()}),a.jsxs("span",{className:"tw-flex tw-gap-2",children:[a.jsx("button",{onClick:()=>{we(e)},tabIndex:0,"data-test-id":"edit-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(r.IconPen16,{})}),a.jsx("button",{onClick:()=>{te(e),r.focusEditor(e,e.selection??void 0)},tabIndex:0,"data-test-id":"remove-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(r.IconTrashBin16,{})})]})]})})},mr=({section:e,selectedUrl:t,onSelectUrl:n})=>{const s=e.permanentLink===t;return a.jsx("button",{"data-test-id":"internal-link-selector-section-link",className:r.merge(["tw-py-2 tw-pr-2.5 tw-pl-14 tw-leading-5 tw-cursor-pointer tw-w-full",s?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>n(e.permanentLink),children:a.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-h-6",children:[a.jsx(r.IconDocumentText16,{}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Section"})]})})},hr=({page:e,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:s,getDocumentSectionsByDocumentPageId:o})=>{const[i,l]=f.useState(e.id===s.documentId),[u,c]=f.useState([]),h=e.permanentLink===t;f.useEffect(()=>{(async()=>{const w=await o(e.id);c(w)})()},[e.id,o]),f.useEffect(()=>{e.id===s.pageId&&l(!0)},[s,e.id]);const m=[...u.values()],d=m.length>0;return a.jsxs(a.Fragment,{children:[a.jsx("button",{"data-test-id":"internal-link-selector-page-link",className:r.merge(["tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-flex tw-w-full",d?"tw-pl-7":"tw-pl-12",h?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>n(e.permanentLink),children:a.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-1 tw-items-center tw-h-6",children:[d&&a.jsx("button",{"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>l(!i),children:a.jsx("div",{className:r.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",i?"tw-rotate-90":""])})}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Page"})]},e.id)}),i&&m.length>0&&m.map(x=>a.jsx(mr,{section:x,selectedUrl:t,onSelectUrl:n},x.id))]})},Rt=()=>a.jsx("div",{className:"tw-flex tw-justify-center tw-h-10 tw-items-center",children:a.jsx(r.LoadingCircle,{size:r.LoadingCircleSize.Small})}),fr=({documentId:e,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:s,getDocumentSectionsByDocumentPageId:o,getDocumentPagesByDocumentId:i})=>{const[l,u]=f.useState([]),[c,h]=f.useState(!0),m=[...l.values()],d=!c&&m.length>0;return f.useEffect(()=>{i(e).then(x=>{const w=x.filter(v=>!!v.category).sort((v,k)=>v.category.sort===k.category.sort?v.sort-k.sort:v.category.sort-k.category.sort),y=x.filter(v=>!v.category).sort((v,k)=>v.sort-k.sort);u([...w,...y])}).finally(()=>{h(!1)})},[]),c?a.jsx(Rt,{}):d?a.jsx(a.Fragment,{children:m.map(x=>a.jsx(hr,{page:x,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:s,getDocumentSectionsByDocumentPageId:o},x.id))}):a.jsx("div",{className:"tw-h-10 tw-flex tw-items-center tw-pr-2.5 tw-pl-7 tw-leading-5 tw-text-s tw-text-text-weak",children:"This document does not contain any pages."})},xr=({document:e,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:s,getDocumentSectionsByDocumentPageId:o,getDocumentPagesByDocumentId:i})=>{const[l,u]=f.useState(e.id===s.documentId),c=e.permanentLink===t;return f.useEffect(()=>{e.id===s.documentId&&u(!0)},[s,e.id]),a.jsxs(a.Fragment,{children:[a.jsxs("button",{"data-test-id":"internal-link-selector-document-link",className:r.merge(["tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-w-full",c?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>n(e.permanentLink),children:[a.jsx("button",{role:"button",tabIndex:0,"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>u(!l),children:a.jsx("div",{className:r.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",l?"tw-rotate-90":""])})}),a.jsx(r.IconColorFan16,{}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Document"})]}),l&&a.jsx(fr,{documentId:e.id,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:s,getDocumentSectionsByDocumentPageId:o,getDocumentPagesByDocumentId:i})]})},wr=({selectedUrl:e,onSelectUrl:t,getAllDocuments:n,getDocumentPagesByDocumentId:s,getDocumentSectionsByDocumentPageId:o})=>{const[i,l]=f.useState(!0),[u,c]=f.useState([]),[h,m]=f.useState({documentId:void 0,pageId:void 0}),d=[...u.values()];f.useEffect(()=>{e&&d.length>0&&x().then(w=>{m(w)})},[d.length]),f.useEffect(()=>{n().then(w=>{c(w)}).finally(()=>{l(!1)})},[]);const x=async()=>{const w={documentId:void 0,pageId:void 0};if(d.find(v=>v.permanentLink===e))return w;for(const v of d){const E=[...(await s(v.id)).values()];if(!!E.find(R=>R.permanentLink===e))return w.documentId=v.id,w;for(const R of E)if(!![...(await o(R.id)).values()].find(L=>L.permanentLink===e))return w.documentId=v.id,w.pageId=R.id,w}return w};return i?a.jsx(Rt,{}):a.jsx(a.Fragment,{children:d.map(w=>a.jsx(xr,{document:w,selectedUrl:e,onSelectUrl:t,itemsToExpandInitially:h,getDocumentSectionsByDocumentPageId:o,getDocumentPagesByDocumentId:s},w.id))})},Mt=({url:e,onUrlChange:t,buttonSize:n=r.ButtonSize.Medium,getAllDocuments:s,getDocumentPagesByDocumentId:o,getDocumentSectionsByDocumentPageId:i})=>{const{open:l,isOpen:u,close:c}=Cn.useOverlayTriggerState({}),[h,m]=f.useState(e),d=y=>{m(y)},x=y=>{y.key==="Enter"&&w()};f.useEffect(()=>{e&&!h&&m(e)},[e,h]);const w=()=>{t==null||t(h),c()};return a.jsxs("div",{onPointerDown:y=>y.preventDefault(),"data-test-id":"internal-link-selector",onKeyDown:x,children:[a.jsx(r.Button,{icon:a.jsx(r.IconLink,{}),size:n,type:r.ButtonType.Button,style:r.ButtonStyle.Default,emphasis:r.ButtonEmphasis.Default,onClick:()=>l(),children:"Internal link"}),a.jsxs(r.Modal,{zIndex:1001,onClose:()=>c(),isOpen:u,isDismissable:!0,children:[a.jsx(r.Modal.Header,{title:"Select internal link"}),a.jsx(r.Modal.Body,{children:a.jsx(wr,{selectedUrl:h,onSelectUrl:d,getAllDocuments:s,getDocumentPagesByDocumentId:o,getDocumentSectionsByDocumentPageId:i})}),a.jsx(r.Modal.Footer,{buttons:[{children:"Cancel",onClick:()=>c(),style:r.ButtonStyle.Default,emphasis:r.ButtonEmphasis.Default},{children:"Choose",onClick:y=>{y==null||y.preventDefault(),w()},style:r.ButtonStyle.Default,emphasis:r.ButtonEmphasis.Strong,disabled:!h}]})]})]})},Dt=({onUrlChange:e,onToggleTab:t,isValidUrlOrEmpty:n,appBridge:s,clearable:o,placeholder:i,newTab:l,openInNewTab:u,url:c="",required:h,info:m,label:d,buttonSize:x,hideInternalLinkButton:w})=>{const y=n?n(c):ee(c),v=l??(u?r.CheckboxState.Checked:r.CheckboxState.Unchecked);return a.jsxs("div",{"data-test-id":"link-input",children:[a.jsx(r.FormControl,{label:{children:d,htmlFor:"url",required:h,tooltip:m?{content:m,position:r.TooltipPosition.Top}:void 0},children:a.jsx(r.TextInput,{id:"url",value:c,clearable:o,onChange:e,placeholder:i??"https://example.com",focusOnMount:!0})}),!y&&a.jsx("div",{className:"tw-text-text-negative tw-mt-1 tw-text-s",children:"Please enter a valid URL."}),!w&&a.jsx("div",{className:"tw-mt-3",children:a.jsx(Mt,{url:c,onUrlChange:e,buttonSize:x??r.ButtonSize.Medium,getAllDocuments:()=>s.getAllDocuments(),getDocumentPagesByDocumentId:k=>s.getDocumentPagesByDocumentId(k),getDocumentSectionsByDocumentPageId:k=>s.getDocumentSectionsByDocumentPageId(k)})}),a.jsx("div",{className:"tw-mt-3",children:a.jsx(r.Checkbox,{value:"new-tab",label:"Open in new tab",state:v,onChange:t})})]})},Ft=({state:e,onTextChange:t,onUrlChange:n,onToggleTab:s,onCancel:o,onSave:i,isValidUrlOrEmpty:l,hasValues:u,testId:c,appBridge:h,children:m})=>a.jsxs("div",{"data-test-id":c,className:"tw-bg-white tw-rounded tw-shadow tw-p-7 tw-min-w-[400px] tw-overflow-y-auto",children:[a.jsx(r.FormControl,{label:{children:"Text",htmlFor:"linkText",required:!0},children:a.jsx(r.TextInput,{id:"linkText",value:e.text,placeholder:"Link Text",onChange:t})}),m,a.jsx("div",{className:"tw-mt-5",children:a.jsx(Dt,{url:e.url,newTab:e.newTab,onUrlChange:n,onToggleTab:s,isValidUrlOrEmpty:l,appBridge:h})}),a.jsx("div",{className:"tw-mt-3",children:a.jsxs("div",{className:"tw-pt-5 tw-flex tw-gap-x-3 tw-justify-end tw-border-t tw-border-t-black-10",children:[a.jsx(r.Button,{onClick:o,size:r.ButtonSize.Medium,style:r.ButtonStyle.Default,emphasis:r.ButtonEmphasis.Default,children:"Cancel"}),a.jsx(r.Button,{onClick:i,size:r.ButtonSize.Medium,icon:a.jsx(r.IconCheckMark20,{}),disabled:!l(e==null?void 0:e.url)||!u,children:"Save"})]})})]}),pr=e=>{var n;const t=r.getAboveNode(e,{match:{type:C}});return Array.isArray(t)&&((n=t[0])==null?void 0:n.buttonStyle)||"primary"},br={url:"",text:"",buttonStyle:"primary",newTab:r.CheckboxState.Unchecked},yr=()=>{const[e,t]=f.useReducer((n,s)=>{const{type:o,payload:i}=s;switch(o){case"NEW_TAB":return{...n,newTab:r.CheckboxState.Checked};case"SAME_TAB":return{...n,newTab:r.CheckboxState.Unchecked};case"URL":case"TEXT":case"BUTTON_STYLE":case"INIT":return{...n,...i};default:return n}},br);return[e,t]},vr=()=>{const e=r.useEditorRef(),[t,n]=yr();f.useEffect(()=>{const d=pr(e);n({type:"INIT",payload:{text:N.text(),buttonStyle:d,newTab:N.newTab()?r.CheckboxState.Checked:r.CheckboxState.Unchecked,url:N.url()}})},[n,e]);const s=d=>{n({type:"TEXT",payload:{text:d}})},o=d=>{n({type:"BUTTON_STYLE",payload:{buttonStyle:d}})},i=d=>{n({type:"URL",payload:{url:d}})},l=d=>{n(d?{type:"NEW_TAB"}:{type:"SAME_TAB"})},u=()=>{P.reset()},c=d=>{if(!ee(t.url)||!h)return;const x=fe(t.url);P.text(t.text),P.url(x),P.buttonStyle(t.buttonStyle),P.newTab(t.newTab===r.CheckboxState.Checked),Fe(e)&&(d==null||d.preventDefault())},h=t.url!==""&&t.text!=="",{appBridge:m}=r.getPluginOptions(e,C);return r.useHotkeys("enter",c,{enableOnFormTags:["INPUT"]},[]),{state:t,onTextChange:s,onButtonStyleChange:o,onUrlChange:i,onToggleTab:l,onCancel:u,onSave:c,hasValues:h,isValidUrlOrEmpty:ee,appBridge:m}},de="link-plugin";var p=(e=>(e.heading1="heading1",e.heading2="heading2",e.heading3="heading3",e.heading4="heading4",e.custom1="custom1",e.custom2="custom2",e.custom3="custom3",e.quote="quote",e.imageCaption="imageCaption",e.imageTitle="imageTitle",e.p="p",e))(p||{});const j={heading1:{fontSize:"var(--f-theme-settings-heading1-font-size)",lineHeight:"var(--f-theme-settings-heading1-line-height)",marginTop:"var(--f-theme-settings-heading1-margin-top)",marginBottom:"var(--f-theme-settings-heading1-margin-bottom)",textDecoration:"var(--f-theme-settings-heading1-text-decoration)",fontStyle:"var(--f-theme-settings-heading1-font-style)",textTransform:"var(--f-theme-settings-heading1-text-transform)",letterSpacing:"var(--f-theme-settings-heading1-letter-spacing)",fontWeight:"var(--f-theme-settings-heading1-font-weight)",fontFamily:"var(--f-theme-settings-heading1-font-family)",color:"var(--f-theme-settings-heading1-color)"},heading2:{fontSize:"var(--f-theme-settings-heading2-font-size)",lineHeight:"var(--f-theme-settings-heading2-line-height)",marginTop:"var(--f-theme-settings-heading2-margin-top)",marginBottom:"var(--f-theme-settings-heading2-margin-bottom)",textDecoration:"var(--f-theme-settings-heading2-text-decoration)",fontStyle:"var(--f-theme-settings-heading2-font-style)",textTransform:"var(--f-theme-settings-heading2-text-transform)",letterSpacing:"var(--f-theme-settings-heading2-letter-spacing)",fontWeight:"var(--f-theme-settings-heading2-font-weight)",fontFamily:"var(--f-theme-settings-heading2-font-family)",color:"var(--f-theme-settings-heading2-color)"},heading3:{fontSize:"var(--f-theme-settings-heading3-font-size)",lineHeight:"var(--f-theme-settings-heading3-line-height)",marginTop:"var(--f-theme-settings-heading3-margin-top)",marginBottom:"var(--f-theme-settings-heading3-margin-bottom)",textDecoration:"var(--f-theme-settings-heading3-text-decoration)",fontStyle:"var(--f-theme-settings-heading3-font-style)",textTransform:"var(--f-theme-settings-heading3-text-transform)",letterSpacing:"var(--f-theme-settings-heading3-letter-spacing)",fontWeight:"var(--f-theme-settings-heading3-font-weight)",fontFamily:"var(--f-theme-settings-heading3-font-family)",color:"var(--f-theme-settings-heading3-color)"},heading4:{fontSize:"var(--f-theme-settings-heading4-font-size)",lineHeight:"var(--f-theme-settings-heading4-line-height)",marginTop:"var(--f-theme-settings-heading4-margin-top)",marginBottom:"var(--f-theme-settings-heading4-margin-bottom)",textDecoration:"var(--f-theme-settings-heading4-text-decoration)",fontStyle:"var(--f-theme-settings-heading4-font-style)",textTransform:"var(--f-theme-settings-heading4-text-transform)",letterSpacing:"var(--f-theme-settings-heading4-letter-spacing)",fontWeight:"var(--f-theme-settings-heading4-font-weight)",fontFamily:"var(--f-theme-settings-heading4-font-family)",color:"var(--f-theme-settings-heading4-color)"},custom1:{fontSize:"var(--f-theme-settings-custom1-font-size)",lineHeight:"var(--f-theme-settings-custom1-line-height)",marginTop:"var(--f-theme-settings-custom1-margin-top)",marginBottom:"var(--f-theme-settings-custom1-margin-bottom)",textDecoration:"var(--f-theme-settings-custom1-text-decoration)",fontStyle:"var(--f-theme-settings-custom1-font-style)",textTransform:"var(--f-theme-settings-custom1-text-transform)",letterSpacing:"var(--f-theme-settings-custom1-letter-spacing)",fontWeight:"var(--f-theme-settings-custom1-font-weight)",fontFamily:"var(--f-theme-settings-custom1-font-family)",color:"var(--f-theme-settings-custom1-color)"},custom2:{fontSize:"var(--f-theme-settings-custom2-font-size)",lineHeight:"var(--f-theme-settings-custom2-line-height)",marginTop:"var(--f-theme-settings-custom2-margin-top)",marginBottom:"var(--f-theme-settings-custom2-margin-bottom)",textDecoration:"var(--f-theme-settings-custom2-text-decoration)",fontStyle:"var(--f-theme-settings-custom2-font-style)",textTransform:"var(--f-theme-settings-custom2-text-transform)",letterSpacing:"var(--f-theme-settings-custom2-letter-spacing)",fontWeight:"var(--f-theme-settings-custom2-font-weight)",fontFamily:"var(--f-theme-settings-custom2-font-family)",color:"var(--f-theme-settings-custom2-color)"},custom3:{fontSize:"var(--f-theme-settings-custom3-font-size)",lineHeight:"var(--f-theme-settings-custom3-line-height)",marginTop:"var(--f-theme-settings-custom3-margin-top)",marginBottom:"var(--f-theme-settings-custom3-margin-bottom)",textDecoration:"var(--f-theme-settings-custom3-text-decoration)",fontStyle:"var(--f-theme-settings-custom3-font-style)",textTransform:"var(--f-theme-settings-custom3-text-transform)",letterSpacing:"var(--f-theme-settings-custom3-letter-spacing)",fontWeight:"var(--f-theme-settings-custom3-font-weight)",fontFamily:"var(--f-theme-settings-custom3-font-family)",color:"var(--f-theme-settings-custom3-color)"},p:{fontSize:"var(--f-theme-settings-body-font-size)",lineHeight:"var(--f-theme-settings-body-line-height)",marginTop:"var(--f-theme-settings-body-margin-top)",marginBottom:"var(--f-theme-settings-body-margin-bottom)",textDecoration:"var(--f-theme-settings-body-text-decoration)",fontStyle:"var(--f-theme-settings-body-font-style)",textTransform:"var(--f-theme-settings-body-text-transform)",letterSpacing:"var(--f-theme-settings-body-letter-spacing)",fontWeight:"var(--f-theme-settings-body-font-weight)",fontFamily:"var(--f-theme-settings-body-font-family)",color:"var(--f-theme-settings-body-color)"},quote:{fontSize:"var(--f-theme-settings-quote-font-size)",lineHeight:"var(--f-theme-settings-quote-line-height)",marginTop:"var(--f-theme-settings-quote-margin-top)",marginBottom:"var(--f-theme-settings-quote-margin-bottom)",textDecoration:"var(--f-theme-settings-quote-text-decoration)",fontStyle:"var(--f-theme-settings-quote-font-style)",textTransform:"var(--f-theme-settings-quote-text-transform)",letterSpacing:"var(--f-theme-settings-quote-letter-spacing)",fontWeight:"var(--f-theme-settings-quote-font-weight)",fontFamily:"var(--f-theme-settings-quote-font-family)",color:"var(--f-theme-settings-quote-color)"},imageCaption:{fontSize:"var(--f-theme-settings-image-caption-font-size)",lineHeight:"var(--f-theme-settings-image-caption-line-height)",marginTop:"var(--f-theme-settings-image-caption-margin-top)",marginBottom:"var(--f-theme-settings-image-caption-margin-bottom)",textDecoration:"var(--f-theme-settings-image-caption-text-decoration)",fontStyle:"var(--f-theme-settings-image-caption-font-style)",textTransform:"var(--f-theme-settings-image-caption-text-transform)",letterSpacing:"var(--f-theme-settings-image-caption-letter-spacing)",fontWeight:"var(--f-theme-settings-image-caption-font-weight)",fontFamily:"var(--f-theme-settings-image-caption-font-family)",color:"var(--f-theme-settings-image-caption-color)"},imageTitle:{fontSize:"var(--f-theme-settings-image-title-font-size)",lineHeight:"var(--f-theme-settings-image-title-line-height)",marginTop:"var(--f-theme-settings-image-title-margin-top)",marginBottom:"var(--f-theme-settings-image-title-margin-bottom)",textDecoration:"var(--f-theme-settings-image-title-text-decoration)",fontStyle:"var(--f-theme-settings-image-title-font-style)",textTransform:"var(--f-theme-settings-image-title-text-transform)",letterSpacing:"var(--f-theme-settings-image-title-letter-spacing)",fontWeight:"var(--f-theme-settings-image-title-font-weight)",fontFamily:"var(--f-theme-settings-image-title-font-family)",color:"var(--f-theme-settings-image-title-color)"},[de]:{fontSize:"var(--f-theme-settings-link-font-size)",lineHeight:"var(--f-theme-settings-link-line-height)",marginTop:"var(--f-theme-settings-link-margin-top)",marginBottom:"var(--f-theme-settings-link-margin-bottom)",textDecoration:"var(--f-theme-settings-link-text-decoration)",fontStyle:"var(--f-theme-settings-link-font-style)",textTransform:"var(--f-theme-settings-link-text-transform)",letterSpacing:"var(--f-theme-settings-link-letter-spacing)",fontWeight:"var(--f-theme-settings-link-font-weight)",fontFamily:"var(--f-theme-settings-link-font-family)",color:"var(--f-theme-settings-link-color)"},...pe},Cr=()=>{const e=vr(),{state:t,onButtonStyleChange:n}=e;return a.jsx(Ft,{...e,testId:"floating-button-insert",children:a.jsx("div",{className:"tw-pt-5",children:a.jsxs(r.FormControl,{label:{children:"Button Style",htmlFor:"buttonStyle",required:!0},children:[a.jsx(ve,{id:"primary",styles:j.buttonPrimary,isActive:t.buttonStyle==="primary",onClick:()=>n("primary"),children:t.text||"Primary Button"}),a.jsx(ve,{id:"secondary",styles:j.buttonSecondary,isActive:t.buttonStyle==="secondary",onClick:()=>n("secondary"),children:t.text||"Secondary Button"}),a.jsx(ve,{id:"tertiary",styles:j.buttonTertiary,isActive:t.buttonStyle==="tertiary",onClick:()=>n("tertiary"),children:t.text||"Tertiary Button"})]})})})},ve=({id:e,styles:t,isActive:n,onClick:s,children:o})=>{const[i,l]=f.useState(!1),u=()=>t&&t.hover&&i?{...t,...t.hover}:t;return a.jsx("button",{"data-test-id":`floating-button-insert-${e}`,onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),onClick:s,style:{...u(),marginTop:0,marginBottom:0},className:n?"tw-outline tw-outline-1 tw-outline-violet-60 tw-outline-offset-2 tw-w-fit":"tw-w-fit",children:o})},Ze={placement:"bottom-start",strategy:"absolute",middleware:[r.offset(12),r.flip({padding:12,fallbackPlacements:["bottom-end","top-start","top-end"]})]},Sr=()=>{const{ref:e,...t}=Pr(Ze),{ref:n,...s}=kr(Ze),o=r.useEditorRef(),i=ae(),l=i.isOpen(o.id),u=i.isEditing(),c=i.mode(),h=a.jsx(Cr,{}),m=u?h:a.jsx(gr,{});return a.jsxs(a.Fragment,{children:[l&&c==="insert"&&a.jsx("div",{ref:e,...t,children:h}),l&&c==="edit"&&a.jsx("div",{ref:n,...s,children:m})]})},C="button",Ot="button-plugin",Ut=e=>r.createPluginFactory({key:C,isElement:!0,isInline:!0,props:({element:t})=>({nodeProps:{href:t==null?void 0:t.url,target:t==null?void 0:t.target}}),withOverrides:Pt,renderAfterEditable:Sr,options:{isUrl:xe,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingButtonHotkeys:"command+shift+k, ctrl+shift+k",appBridge:e},then:(t,{type:n})=>({deserializeHtml:{rules:[{validNodeName:"A",validClassName:"btn"}],getNode:s=>({type:n,url:s.getAttribute("href"),target:s.getAttribute("target")||"_blank"})}})})();class _t extends r.Plugin{constructor({styles:n=pe,...s}){super(Ot,{button:dr,markupElement:new ur,...s});B(this,"styles",{});B(this,"appBridge");this.styles=n,this.appBridge=s==null?void 0:s.appBridge}plugins(){return[Ut(this.appBridge)]}}const kr=e=>{const t=r.useEditorRef(),n=ae().mode(),s=ae().isOpen(t.id),o=r.useEditorVersion(),{triggerFloatingButtonHotkeys:i}=r.getPluginOptions(t,C),l=f.useCallback(()=>{const d=r.getAboveNode(t,{match:{type:r.getPluginType(t,C)}});if(d){const[,x]=d;return r.getRangeBoundingClientRect(t,{anchor:r.getStartPoint(t,x),focus:r.getEndPoint(t,x)})}return r.getDefaultBoundingClientRect()},[t]),u=s&&n==="edit",{update:c,style:h,floating:m}=Vt({open:u,getBoundingClientRect:l,...e});return f.useEffect(()=>{const d=jt(t);if(d&&P.url(d),t.selection&&r.someNode(t,{match:{type:r.getPluginType(t,C)}})){P.show("edit",t.id),c();return}N.mode()==="edit"&&P.reset()},[t,o,c]),r.useHotkeys(i,d=>{d.preventDefault(),N.mode()==="edit"&&we(t)},{enableOnContentEditable:!0},[]),Tr(),Ht(),{style:{...h,zIndex:1e3},ref:r.useComposedRef(m)}},Tr=()=>{const e=r.useEditorRef();r.useHotkeys("*",t=>{t.key==="Enter"&&Fe(e)&&t.preventDefault()},{enableOnFormTags:["INPUT"]},[])},Ht=()=>{const e=r.useEditorRef();r.useHotkeys("escape",()=>{if(N.mode()==="edit"){if(N.isEditing()){P.show("edit",e.id),r.focusEditor(e,e.selection??void 0);return}P.reset()}},{enableOnFormTags:["INPUT"],enableOnContentEditable:!0},[])},Pr=e=>{const t=r.useEditorRef(),n=r.useFocused(),s=ae().mode(),o=ae().isOpen(t.id),{triggerFloatingButtonHotkeys:i}=r.getPluginOptions(t,C);r.useHotkeys(i,h=>{h.preventDefault(),Ue(t,{focused:n})},{enableOnContentEditable:!0},[n]);const{update:l,style:u,floating:c}=Vt({open:o&&s==="insert",getBoundingClientRect:r.getSelectionBoundingClientRect,whileElementsMounted:void 0,...e});return f.useEffect(()=>{o&&l(),P.updated(o)},[o,l]),Ht(),{style:{...u,zIndex:1e3},ref:r.useComposedRef(c)}},Ir=12,Er=-22,Br=96,Vt=e=>r.useVirtualFloating({placement:"bottom-start",middleware:[r.offset({mainAxis:Ir,alignmentAxis:Er}),r.flip({padding:Br})],...e}),jr=({id:e="rte",isEditing:t,value:n,columns:s,gap:o,placeholder:i,plugins:l,onTextChange:u,showSerializedText:c})=>{const[h,m]=f.useState(!1),d=x=>{u&&x!==n&&u(x),m(!1)};return f.useEffect(()=>{const x=w=>(w.preventDefault(),w.returnValue="Unprocessed changes");return h&&window.addEventListener("beforeunload",x),()=>window.removeEventListener("beforeunload",x)},[h]),t?a.jsx(r.RichTextEditor,{id:e,value:n,border:!1,placeholder:i,plugins:l,onValueChanged:()=>m(!0),onTextChange:d,hideExternalFloatingModals:x=>{N.isOpen(x)&&P.reset()}}):a.jsx(Xn,{value:n,columns:s,gap:o,show:c,plugins:l})},Nr=({editButtonProps:e,unlinkButtonProps:t})=>{const{element:n}=r.useLinkOpenButtonState(),s=n?Me(n):"";return a.jsx("div",{"data-test-id":"floating-link-edit",className:"tw-bg-white tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:a.jsxs("span",{"data-test-id":"preview-link-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[a.jsx("span",{className:"tw-pointer-events-none",children:s}),a.jsxs("span",{className:"tw-flex tw-gap-2",children:[a.jsx("button",{tabIndex:0,"data-test-id":"edit-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",...e,children:a.jsx(r.IconPen16,{})}),a.jsx("button",{tabIndex:0,"data-test-id":"remove-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",...t,children:a.jsx(r.IconTrashBin16,{})})]})]})})},zt=(e,t)=>{const n=r.getAboveNode(e,{match:{type:r.ELEMENT_LINK}});return Array.isArray(n)?t(n[0]):""},Lr=e=>zt(e,t=>{var n,s;return((s=(n=t.chosenLink)==null?void 0:n.searchResult)==null?void 0:s.link)||""}),Ar=e=>zt(e,t=>t.url||""),Rr={url:"",text:"",newTab:r.CheckboxState.Unchecked},Mr=()=>{const[e,t]=f.useReducer((n,s)=>{const{type:o,payload:i}=s;switch(o){case"NEW_TAB":return{...n,newTab:r.CheckboxState.Checked};case"SAME_TAB":return{...n,newTab:r.CheckboxState.Unchecked};case"URL":case"TEXT":case"INIT":return{...n,...i};default:return n}},Rr);return[e,t]},Dr=()=>{const e=r.useEditorRef(),[t,n]=Mr();f.useEffect(()=>{const m=Lr(e),d=Ar(e),x=r.floatingLinkSelectors.newTab();n({type:"INIT",payload:{text:r.floatingLinkSelectors.text(),newTab:x?r.CheckboxState.Checked:r.CheckboxState.Unchecked,url:m&&d===""?m:r.floatingLinkSelectors.url()}})},[n,e]);const s=m=>{n({type:"TEXT",payload:{text:m}})},o=m=>{n({type:"URL",payload:{url:m}})},i=m=>{n(m?{type:"NEW_TAB"}:{type:"SAME_TAB"})},l=()=>{r.floatingLinkActions.reset()},u=m=>{!ee(t.url)||!c||(r.floatingLinkActions.text(t.text),r.floatingLinkActions.url(fe(t.url)),r.floatingLinkActions.newTab(t.newTab===r.CheckboxState.Checked),r.submitFloatingLink(e)&&(m==null||m.preventDefault()))},c=t.url!==""&&t.text!=="",{appBridge:h}=r.getPluginOptions(e,r.ELEMENT_LINK);return r.useHotkeys("enter",u,{enableOnFormTags:["INPUT"]},[]),{state:t,onTextChange:s,onUrlChange:o,onToggleTab:i,onCancel:l,onSave:u,hasValues:c,isValidUrlOrEmpty:ee,appBridge:h}},Fr=()=>a.jsx(Ft,{...Dr(),testId:"floating-link-insert"}),et={placement:"bottom-start",strategy:"absolute",middleware:[r.offset(12),r.flip({padding:12,fallbackPlacements:["bottom-end","top-start","top-end"]})]},Or=()=>{const e=r.useFloatingLinkInsertState({floatingOptions:et}),{props:t,ref:n,hidden:s}=r.useFloatingLinkInsert(e),o=r.useFloatingLinkEditState({floatingOptions:et}),{props:i,ref:l,editButtonProps:u,unlinkButtonProps:c}=r.useFloatingLinkEdit(o);if(s)return null;const h=a.jsx(Fr,{}),m=o.isEditing?h:a.jsx(Nr,{editButtonProps:u,unlinkButtonProps:c});return a.jsxs(a.Fragment,{children:[e.isOpen&&!o.isOpen&&a.jsx("div",{ref:n,...t,style:{...t.style,zIndex:1e3},children:h}),o.isOpen&&a.jsx("div",{ref:l,...i,style:{...i.style,zIndex:1e3},children:m})]})},$t=f.forwardRef((e,t)=>{const n=r.useEditorRef(),s=r.useLinkToolbarButtonState(),{props:o}=r.useLinkToolbarButton(s);return a.jsx(r.ToolbarButton,{onMouseDown:()=>{r.focusEditor(n,n.selection??n.prevSelection??void 0)},ref:t,...o,...e,children:a.jsx(r.IconStylingWrapper,{icon:a.jsx(r.IconLink16,{})})})});$t.displayName="LinkToolbarButton";const Ur=({id:e,editorId:t})=>{const n=r.useEditorState(r.useEventPlateId(t)),s=!!r.isRangeInSameBlock(n,{at:n.selection});return a.jsx("div",{"data-plugin-id":e,children:a.jsx($t,{disabled:!s,tooltip:r.getTooltip(s?`Link
|
|
3
|
+
${r.getHotkeyByPlatform("Ctrl+K")}`:"Links can only be set for a single text block.")})})},_r=e=>{var l,u;const{attributes:t,children:n}=e,{styles:s}=r.useRichTextEditorContext(),o=e.element.url||((u=(l=e.element.chosenLink)==null?void 0:l.searchResult)==null?void 0:u.link)||"",i=e.element.target||"_self";return a.jsx("a",{...t,href:o,target:i,style:s[de],children:n})};class Hr extends r.MarkupElement{constructor(t=r.ELEMENT_LINK,n=_r){super(t,n)}}const Wt=e=>r.createPluginFactory({...r.createLinkPlugin(),renderAfterEditable:Or,options:{isUrl:xe,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingLinkHotkeys:"meta+k, ctrl+k",keepSelectedTextOnPaste:!0,appBridge:e}})();class qt extends r.Plugin{constructor({styles:n=j[de],...s}){super(de,{button:Ur,markupElement:new Hr,...s});B(this,"styles",{});B(this,"appBridge");this.styles=n,this.appBridge=s.appBridge}plugins(){return[Wt(this.appBridge)]}}const Vr="textstyle-custom1-plugin";class Gt extends r.Plugin{constructor({styles:n=j.custom1,...s}={}){super(p.custom1,{label:"Custom 1",markupElement:new zr,...s});B(this,"styles",{});this.styles=n}plugins(){return[$r(this.styles)]}}class zr extends r.MarkupElement{constructor(t=Vr,n=Kt){super(t,n)}}const Kt=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("p",{...t,style:s,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),children:n})},$r=e=>r.createPluginFactory({key:p.custom1,isElement:!0,deserializeHtml:{rules:[{validClassName:p.custom1}]}})({component:t=>a.jsx(Kt,{...t,styles:e})}),Wr="textstyle-custom2-plugin";class Xt extends r.Plugin{constructor({styles:n=j.custom2,...s}={}){super(p.custom2,{label:"Custom 2",markupElement:new qr,...s});B(this,"styles",{});this.styles=n}plugins(){return[Gr(this.styles)]}}class qr extends r.MarkupElement{constructor(t=Wr,n=Qt){super(t,n)}}const Qt=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("p",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},Gr=e=>r.createPluginFactory({key:p.custom2,isElement:!0,deserializeHtml:{rules:[{validClassName:p.custom2}]}})({component:t=>a.jsx(Qt,{...t,styles:e})}),Kr="textstyle-custom3-plugin";class Yt extends r.Plugin{constructor({styles:n=j.custom3,...s}={}){super(r.TextStyles.custom3,{label:"Custom 3",markupElement:new Xr,...s});B(this,"styles",{});this.styles=n}plugins(){return[Qr(this.styles)]}}class Xr extends r.MarkupElement{constructor(t=Kr,n=Jt){super(t,n)}}const Jt=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("p",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},Qr=e=>r.createPluginFactory({key:r.TextStyles.custom3,isElement:!0,deserializeHtml:{rules:[{validClassName:r.TextStyles.custom3}]}})({component:t=>a.jsx(Jt,{...t,styles:e})}),Yr="textstyle-heading1-plugin";class Zt extends r.Plugin{constructor({styles:n=j.heading1,...s}={}){super(p.heading1,{label:"Heading 1",markupElement:new Jr,...s});B(this,"styles",{});this.styles=n}plugins(){return[Zr(this.styles)]}}class Jr extends r.MarkupElement{constructor(t=Yr,n=Ce){super(t,n)}}const Ce=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("h1",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},Zr=e=>r.createPluginFactory({key:p.heading1,isElement:!0,component:Ce,deserializeHtml:{rules:[{validNodeName:["h1","H1"]}]}})({component:t=>a.jsx(Ce,{...t,styles:e})}),es="textstyle-heading2-plugin";class en extends r.Plugin{constructor({styles:n=j.heading2,...s}={}){super(p.heading2,{label:"Heading 2",markupElement:new ts,...s});B(this,"styles",{});this.styles=n}plugins(){return[ns(this.styles)]}}class ts extends r.MarkupElement{constructor(t=es,n=Se){super(t,n)}}const Se=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("h2",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},ns=e=>r.createPluginFactory({key:p.heading2,isElement:!0,component:Se,deserializeHtml:{rules:[{validNodeName:["h2","H2"]}]}})({component:t=>a.jsx(Se,{...t,styles:e})}),rs="textstyle-heading3-plugin";class tn extends r.Plugin{constructor({styles:n=j.heading3,...s}={}){super(p.heading3,{label:"Heading 3",markupElement:new ss,...s});B(this,"styles",{});this.styles=n}plugins(){return[as(this.styles)]}}class ss extends r.MarkupElement{constructor(t=rs,n=ke){super(t,n)}}const ke=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("h3",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},as=e=>r.createPluginFactory({key:p.heading3,isElement:!0,component:ke,deserializeHtml:{rules:[{validNodeName:["h3","H3"]}]}})({component:t=>a.jsx(ke,{...t,styles:e})}),os="textstyle-heading4-plugin";class nn extends r.Plugin{constructor({styles:n=j.heading4,...s}={}){super(p.heading4,{label:"Heading 4",markupElement:new is,...s});B(this,"styles",{});this.styles=n}plugins(){return[ls(this.styles)]}}class is extends r.MarkupElement{constructor(t=os,n=Te){super(t,n)}}const Te=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("h4",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},ls=e=>r.createPluginFactory({key:p.heading4,isElement:!0,component:Te,deserializeHtml:{rules:[{validNodeName:["h4","H4"]}]}})({component:t=>a.jsx(Te,{...t,styles:e})}),cs="textstyle-imageCaption-plugin";class rn extends r.Plugin{constructor({styles:n=j.imageCaption,...s}={}){super(p.imageCaption,{label:"Image Caption",markupElement:new us,...s});B(this,"styles",{});this.styles=n}plugins(){return[ds(this.styles)]}}class us extends r.MarkupElement{constructor(t=cs,n=Pe){super(t,n)}}const Pe=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("p",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},ds=e=>r.createPluginFactory({key:p.imageCaption,isElement:!0,component:Pe,deserializeHtml:{rules:[{validClassName:p.imageCaption}]}})({component:t=>a.jsx(Pe,{...t,styles:e})}),gs="textstyle-imageTitle-plugin";class sn extends r.Plugin{constructor({styles:n=j.imageTitle,...s}={}){super(p.imageTitle,{label:"Image Title",markupElement:new ms,...s});B(this,"styles",{});this.styles=n}plugins(){return[hs(this.styles)]}}class ms extends r.MarkupElement{constructor(t=gs,n=Ie){super(t,n)}}const Ie=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("p",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},hs=e=>r.createPluginFactory({key:p.imageTitle,isElement:!0,component:Ie,deserializeHtml:{rules:[{validClassName:p.imageTitle}]}})({component:t=>a.jsx(Ie,{...t,styles:e})});class an extends r.Plugin{constructor({styles:n=j.p,...s}={}){super(p.p,{markupElement:new ln,label:"Body Text",...s});B(this,"styles",{});this.styles=n}plugins(){return[cn(this.styles)]}}const on="tw-m-0 tw-px-0 tw-py-0",ge=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align,i=r.merge([o&&r.alignmentClassnames[o],on,r.getColumnBreakClasses(e)]);return a.jsx("p",{...t,className:i,style:s,children:n})};class ln extends r.MarkupElement{constructor(t=p.p,n=ge){super(t,n)}}const cn=e=>r.createPluginFactory({...r.createParagraphPlugin(),key:p.p,isElement:!0,component:ge})({component:t=>a.jsx(ge,{...t,styles:e})}),fs="textstyle-quote-plugin";class un extends r.Plugin{constructor({styles:n=j.quote,...s}={}){super(p.quote,{label:"Quote",markupElement:new xs,...s});B(this,"styles",{});this.styles=n}plugins(){return[dn(this.styles)]}}class xs extends r.MarkupElement{constructor(t=fs,n=me){super(t,n)}}const me=({element:e,attributes:t,children:n,styles:s})=>{const o=e.align;return a.jsx("blockquote",{...t,className:r.merge([o&&r.alignmentClassnames[o],r.getColumnBreakClasses(e)]),style:s,children:n})},dn=e=>r.createPluginFactory({key:p.quote,isElement:!0,component:me,deserializeHtml:{rules:[{validNodeName:["blockquote","BLOCKQUOTE"]}]}})({component:t=>a.jsx(me,{...t,styles:e})}),_e=[new Zt,new en,new tn,new nn,new Gt,new Xt,new Yt,new un,new an],Z=[p.heading1,p.heading2,p.heading3,p.heading4,p.custom1,p.custom2,p.custom3,p.quote,p.p],ws=[..._e,new rn,new sn],ps=[...Z,p.imageCaption,p.imageTitle],bs=e=>new r.PluginComposer().setPlugin(new r.SoftBreakPlugin,new r.TextStylePlugin({textStyles:_e})).setPlugin([new r.BoldPlugin,new r.ItalicPlugin,new r.UnderlinePlugin,new r.StrikethroughPlugin,new qt({appBridge:e}),new _t({appBridge:e}),new r.CodePlugin],[new r.AlignLeftPlugin({validTypes:Z}),new r.AlignCenterPlugin({validTypes:Z}),new r.AlignRightPlugin({validTypes:Z}),new r.AlignJustifyPlugin({validTypes:Z}),new r.UnorderedListPlugin,new r.CheckboxListPlugin,new r.OrderedListPlugin,new r.ResetFormattingPlugin,new r.AutoformatPlugin]),ys="--f-theme-settings-",vs=e=>{const t=e!=null&&e.id?`hasBackground${e.id}`:"hasBackground",n=e!=null&&e.id?`backgroundColor${e.id}`:"backgroundColor",s=e!=null&&e.preventDefaultColor?void 0:(e==null?void 0:e.defaultColor)||An,o=e!=null&&e.label?e.label:"Background",i=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:t,label:o,type:"switch",switchLabel:i,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:n,defaultValue:s,type:"colorInput"}]}},Cs=e=>{const t=e!=null&&e.id?`hasBorder_${e.id}`:"hasBorder",n=e!=null&&e.id?`borderSelection_${e.id}`:"borderSelection",s=e!=null&&e.id?`borderStyle_${e.id}`:"borderStyle",o=e!=null&&e.id?`borderWidth_${e.id}`:"borderWidth",i=e!=null&&e.id?`borderColor_${e.id}`:"borderColor",l=(e==null?void 0:e.defaultColor)||st,u=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:t,label:"Border",type:"switch",switchLabel:u,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:n,type:"multiInput",onChange:c=>g.appendUnit(c,o),layout:g.MultiInputLayout.Columns,lastItemFullWidth:!0,blocks:[{id:s,type:"dropdown",defaultValue:F.Solid,choices:[{value:F.Solid,label:F.Solid},{value:F.Dotted,label:F.Dotted},{value:F.Dashed,label:F.Dashed}]},{id:o,type:"input",defaultValue:Rn,rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)],placeholder:"e.g. 3px"},{id:i,type:"colorInput",defaultValue:l}]}],off:[]}},He=(e,t=H.None)=>({id:e,type:"segmentedControls",defaultValue:t,choices:[{value:H.None,label:"None"},{value:H.Small,label:"S"},{value:H.Medium,label:"M"},{value:H.Large,label:"L"}]}),Ss=e=>{const t=e!=null&&e.id?`hasRadius_${e.id}`:"hasRadius",n=e!=null&&e.id?`radiusValue_${e.id}`:"radiusValue",s=e!=null&&e.id?`radiusChoice_${e.id}`:"radiusChoice",o=(e==null?void 0:e.defaultRadius)||H.None;return{id:t,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:i=>{var l;return e!=null&&e.dependentSettingId?!!((l=i.getBlock(e.dependentSettingId))!=null&&l.value):!0},onChange:i=>g.presetCustomValue(i,s,n,(e==null?void 0:e.radiusStyleMap)||q),on:[{id:n,type:"input",placeholder:"e.g. 10px",rules:[g.numericalOrPixelRule],onChange:i=>g.appendUnit(i,n)}],off:[He(s,o)]}},ks=e=>{const t=e!=null&&e.id?`hasExtendedCustomRadius_${e.id}`:"hasExtendedCustomRadius",n=e!=null&&e.id?`extendedRadiusValue_${e.id}`:"extendedRadiusValue",s=e!=null&&e.id?`extendedRadiusChoice_${e.id}`:"extendedRadiusChoice",o=e!=null&&e.id?`extendedRadiusTopLeft_${e.id}`:"extendedRadiusTopLeft",i=e!=null&&e.id?`extendedRadiusTopRight_${e.id}`:"extendedRadiusTopRight",l=e!=null&&e.id?`extendedRadiusBottomLeft_${e.id}`:"extendedRadiusBottomLeft",u=e!=null&&e.id?`extendedRadiusBottomRight_${e.id}`:"extendedRadiusBottomRight";return{id:t,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:c=>{var h;return e!=null&&e.dependentSettingId?!!((h=c.getBlock(e.dependentSettingId))!=null&&h.value):!0},onChange:c=>{g.presetCustomValue(c,s,o,q),g.presetCustomValue(c,s,i,q),g.presetCustomValue(c,s,l,q),g.presetCustomValue(c,s,u,q)},on:[{id:n,type:"multiInput",layout:g.MultiInputLayout.Columns,blocks:[{id:o,type:"input",label:"Top Left",rules:[g.numericalOrPixelRule],onChange:c=>g.appendUnit(c,o)},{id:i,type:"input",label:"Top Right",rules:[g.numericalOrPixelRule],onChange:c=>g.appendUnit(c,i)},{id:l,type:"input",label:"Bottom Left",rules:[g.numericalOrPixelRule],onChange:c=>g.appendUnit(c,l)},{id:u,type:"input",label:"Bottom Right",rules:[g.numericalOrPixelRule],onChange:c=>g.appendUnit(c,u)}]}],off:[He(s,e==null?void 0:e.defaultValue)]}},Ts=e=>{const t=e!=null&&e.id?e.id:"hasCustomSpacing",n=e!=null&&e.dependentSettingId?e.dependentSettingId:"columns",s=e!=null&&e.spacingChoiceId?e.spacingChoiceId:"spacingChoice",o=e!=null&&e.spacingCustomId?e.spacingCustomId:"spacingCustom",i=e!=null&&e.defaultValueChoices?e.defaultValueChoices:W.M;return{id:t,type:"switch",defaultValue:!1,switchLabel:"Custom",label:"Gutter",info:"An official nerds term for ‘gap’",onChange:l=>g.presetCustomValue(l,s,o,rt),show:l=>{var u;return((u=l.getBlock(n))==null?void 0:u.value)!=="1"},on:[{id:o,type:"input",rules:[g.numericalOrPixelRule],onChange:l=>g.appendUnit(l,o)}],off:[{id:s,type:"slider",defaultValue:i,choices:[{value:W.Auto,label:"Auto"},{value:W.S,label:"S"},{value:W.M,label:"M"},{value:W.L,label:"L"}]}]}},Ve=e=>({id:e,type:"segmentedControls",defaultValue:$.None,choices:[{value:$.None,label:"None"},{value:$.Small,label:"S"},{value:$.Medium,label:"M"},{value:$.Large,label:"L"}]}),Ps=e=>{const t=e!=null&&e.id?`hasCustomMarginValue_${e==null?void 0:e.id}`:"hasCustomMarginValue",n=e!=null&&e.id?`marginValue_${e==null?void 0:e.id}`:"marginValue",s=e!=null&&e.id?`marginChoice_${e==null?void 0:e.id}`:"marginChoice";return{id:t,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more space",onChange:o=>g.presetCustomValue(o,s,n,(e==null?void 0:e.marginStyleMap)||J),on:[{id:n,type:"input",placeholder:se,rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)],onChange:o=>g.appendUnit(o,n)}],off:[Ve(s)]}},Is=e=>{const t=e!=null&&e.id?`hasExtendedCustomMargin_${e==null?void 0:e.id}`:"hasExtendedCustomMargin",n=e!=null&&e.id?`extendedMarginValues_${e==null?void 0:e.id}`:"extendedMarginValues",s=e!=null&&e.id?`extendedMarginChoice_${e==null?void 0:e.id}`:"extendedMarginChoice",o=e!=null&&e.id?`extendedMarginTop_${e==null?void 0:e.id}`:"extendedMarginTop",i=e!=null&&e.id?`extendedMarginLeft_${e==null?void 0:e.id}`:"extendedMarginLeft",l=e!=null&&e.id?`extendedMarginRight_${e==null?void 0:e.id}`:"extendedMarginRight",u=e!=null&&e.id?`extendedMarginBottom_${e==null?void 0:e.id}`:"extendedMarginBottom";return{id:t,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:c=>{g.presetCustomValue(c,s,o,J),g.presetCustomValue(c,s,i,J),g.presetCustomValue(c,s,l,J),g.presetCustomValue(c,s,u,J)},on:[{id:n,type:"multiInput",layout:g.MultiInputLayout.Spider,blocks:[{id:o,type:"input",label:"Top",placeholder:se,onChange:c=>g.appendUnit(c,o),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:i,type:"input",label:"Left",placeholder:se,onChange:c=>g.appendUnit(c,i),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:l,type:"input",label:"Right",placeholder:se,onChange:c=>g.appendUnit(c,l),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:u,type:"input",label:"Bottom",placeholder:se,onChange:c=>g.appendUnit(c,u),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[Ve(s)]}},ze=e=>({id:e,type:"segmentedControls",defaultValue:z.Small,choices:[{value:z.None,label:"None"},{value:z.Small,label:"S"},{value:z.Medium,label:"M"},{value:z.Large,label:"L"}]}),Es=e=>{const t=e!=null&&e.id?`hasCustomPaddingValue_${e==null?void 0:e.id}`:"hasCustomPaddingValue",n=e!=null&&e.id?`paddingValue_${e==null?void 0:e.id}`:"paddingValue",s=e!=null&&e.id?`paddingChoice_${e==null?void 0:e.id}`:"paddingChoice";return{id:t,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:o=>g.presetCustomValue(o,s,n,(e==null?void 0:e.paddingStyleMap)||Y),on:[{id:n,type:"input",placeholder:re,rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)],onChange:o=>g.appendUnit(o,n)}],off:[ze(s)]}},Bs=e=>{const t=e!=null&&e.id?`hasExtendedCustomPadding_${e==null?void 0:e.id}`:"hasExtendedCustomPadding",n=e!=null&&e.id?`extendedPaddingValues_${e==null?void 0:e.id}`:"extendedPaddingValues",s=e!=null&&e.id?`extendedPaddingChoice_${e==null?void 0:e.id}`:"extendedPaddingChoice",o=e!=null&&e.id?`extendedPaddingTop_${e==null?void 0:e.id}`:"extendedPaddingTop",i=e!=null&&e.id?`extendedPaddingLeft_${e==null?void 0:e.id}`:"extendedPaddingLeft",l=e!=null&&e.id?`extendedPaddingRight_${e==null?void 0:e.id}`:"extendedPaddingRight",u=e!=null&&e.id?`extendedPaddingBottom_${e==null?void 0:e.id}`:"extendedPaddingBottom";return{id:t,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:c=>{g.presetCustomValue(c,s,o,Y),g.presetCustomValue(c,s,i,Y),g.presetCustomValue(c,s,l,Y),g.presetCustomValue(c,s,u,Y)},on:[{id:n,type:"multiInput",layout:g.MultiInputLayout.Spider,blocks:[{id:o,type:"input",label:"Top",placeholder:re,onChange:c=>g.appendUnit(c,o),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:i,type:"input",label:"Left",placeholder:re,onChange:c=>g.appendUnit(c,i),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:l,type:"input",label:"Right",placeholder:re,onChange:c=>g.appendUnit(c,l),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]},{id:u,type:"input",label:"Bottom",placeholder:re,onChange:c=>g.appendUnit(c,u),rules:[g.numericalOrPixelRule,g.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[ze(s)]}},js=e=>{const t=$e(e==null?void 0:e.globalControlId);return{id:e!=null&&e.id?e.id:"downloadable",type:"switch",defaultValue:!1,label:"Downloadable",show:n=>{var s;return((s=n.getBlock(t))==null?void 0:s.value)===K.Custom}}},$e=e=>e||"security",Ns=e=>[{id:$e(e),type:"segmentedControls",defaultValue:K.Global,choices:[{value:K.Global,label:"Global Settings"},{value:K.Custom,label:"Custom"}]},{id:"globalSettingsInfo",type:"notification",footer:g.createFooter({label:"Change global settings [here].",replace:{here:{event:"general-settings.open"}}})}];var gn=(e=>(e.Main="main",e.Basics="basics",e.Layout="layout",e.Style="style",e.Security="security",e.Targets="targets",e))(gn||{});const Ls=e=>e,As=e=>e;exports.AllTextStylePlugins=ws;exports.AllTextStyles=ps;exports.Attachments=ft;exports.AttachmentsProvider=gt;exports.AttachmentsToolbarButton=wt;exports.BUTTON_PLUGIN=Ot;exports.BlockButtonStyles=pe;exports.BlockInjectButton=Sn;exports.BlockItemWrapper=Gn;exports.BlockStyles=j;exports.BorderStyle=F;exports.ButtonPlugin=_t;exports.Custom1Plugin=Gt;exports.Custom2Plugin=Xt;exports.Custom3Plugin=Yt;exports.DEFAULT_ATTACHMENTS_BUTTON_ID=xt;exports.DEFAULT_DRAGGING_TOOLTIP=bt;exports.DEFAULT_DRAG_TOOLTIP=pt;exports.DEFAULT_MENU_BUTTON_ID=Le;exports.DownloadButton=Kn;exports.DragHandleToolbarButton=yt;exports.DragPreviewContextProvider=ot;exports.ELEMENT_BUTTON=C;exports.FlyoutToolbarButton=Ne;exports.GutterSpacing=W;exports.Heading1Plugin=Zt;exports.Heading2Plugin=en;exports.Heading3Plugin=tn;exports.Heading4Plugin=nn;exports.ImageCaptionPlugin=rn;exports.ImageTitlePlugin=sn;exports.LinkInput=Dt;exports.LinkPlugin=qt;exports.LinkSelector=Mt;exports.Margin=$;exports.MenuToolbarButton=Ct;exports.MultiFlyoutContextProvider=lt;exports.PARAGRAPH_CLASSES=on;exports.Padding=z;exports.ParagraphMarkupElement=ln;exports.ParagraphMarkupElementNode=ge;exports.ParagraphPlugin=an;exports.QuoteMarkupElementNode=me;exports.QuotePlugin=un;exports.Radius=H;exports.RichTextEditor=jr;exports.Sections=gn;exports.Security=K;exports.THEME_PREFIX=ys;exports.TextStylePluginsWithoutImage=_e;exports.TextStyles=p;exports.TextStylesWithoutImage=Z;exports.Toolbar=St;exports.ToolbarFlyoutMenu=vt;exports.addHttps=fe;exports.borderStyleMap=nt;exports.convertToRteValue=Qn;exports.createButtonNode=Nt;exports.createButtonPlugin=Ut;exports.createLinkPlugin=Wt;exports.createParagraphPlugin=cn;exports.createQuotePlugin=dn;exports.customCoordinatesGetterFactory=ht;exports.defineBlock=Ls;exports.defineSettings=As;exports.getBackgroundColorStyles=Ln;exports.getBackgroundSettings=vs;exports.getBorderRadiusSettings=Ss;exports.getBorderRadiusSlider=He;exports.getBorderSettings=Cs;exports.getBorderStyles=Mn;exports.getDefaultPluginsWithLinkChooser=bs;exports.getExtendedBorderRadiusSettings=ks;exports.getGutterSettings=Ts;exports.getLegacyUrl=tr;exports.getLinkFromEditor=rr;exports.getMarginExtendedSettings=Is;exports.getMarginSettings=Ps;exports.getMarginSlider=Ve;exports.getPaddingExtendedSettings=Bs;exports.getPaddingSettings=Es;exports.getPaddingSlider=ze;exports.getRadiusStyles=Dn;exports.getReadableColor=jn;exports.getSecurityDownloadableSetting=js;exports.getSecurityGlobalControlId=$e;exports.getSecurityGlobalControlSetting=Ns;exports.getUrl=nr;exports.getUrlFromEditor=jt;exports.getUrlFromLinkOrLegacyLink=Me;exports.gutterSpacingStyleMap=rt;exports.hasRichTextValue=kt;exports.insertButton=It;exports.isDark=Tn;exports.isDownloadable=Yn;exports.isValidUrl=xe;exports.isValidUrlOrEmpty=ee;exports.joinClassNames=O;exports.mapAppBridgeColorPaletteToFonduePalette=Tt;exports.mapAppBridgeColorPalettesToFonduePalettes=Jn;exports.marginStyleMap=J;exports.moveItemInArray=Nn;exports.paddingStyleMap=Y;exports.radiusStyleMap=q;exports.relativeUrlRegex=De;exports.setAlpha=En;exports.submitFloatingButton=Fe;exports.toColorObject=Bn;exports.toHex8String=Pn;exports.toHexString=In;exports.toRgbaString=Ee;exports.toShortRgba=X;exports.triggerFloatingButton=Lt;exports.triggerFloatingButtonEdit=we;exports.triggerFloatingButtonInsert=Ue;exports.unwrapButton=te;exports.upsertButton=Et;exports.upsertButtonText=Oe;exports.useAttachments=ut;exports.useAttachmentsContext=mt;exports.useDndSensors=_n;exports.useDragPreviewContext=oe;exports.useMultiFlyoutContext=ct;exports.useMultiFlyoutState=he;exports.withAttachmentsProvider=Fn;exports.withButton=Pt;exports.wrapButton=Bt;Object.keys(g).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:()=>g[e]})});
|
|
4
4
|
//# sourceMappingURL=index.cjs.js.map
|