@frontify/guideline-blocks-settings 3.0.5 → 3.0.7
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/Attachments/AttachmentItem.es.js +5 -3
- package/dist/components/Attachments/AttachmentItem.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +19 -19
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@frontify/app-bridge"),require("@frontify/fondue/components"),require("@frontify/fondue/icons"),require("react"),require("react/jsx-runtime"),require("@ctrl/tinycolor"),require("@dnd-kit/core"),require("@dnd-kit/modifiers"),require("@dnd-kit/sortable"),require("@frontify/fondue"),require("@frontify/fondue/rte"),require("react-dom")):typeof define==`function`&&define.amd?define([`exports`,`@frontify/app-bridge`,`@frontify/fondue/components`,`@frontify/fondue/icons`,`react`,`react/jsx-runtime`,`@ctrl/tinycolor`,`@dnd-kit/core`,`@dnd-kit/modifiers`,`@dnd-kit/sortable`,`@frontify/fondue`,`@frontify/fondue/rte`,`react-dom`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.GuidelineBlocksSettings={},e._frontify_app_bridge,e._frontify_fondue_components,e._frontify_fondue_icons,e.React,e.react_jsx_runtime,e._ctrl_tinycolor,e._dnd_kit_core,e._dnd_kit_modifiers,e._dnd_kit_sortable,e._frontify_fondue,e._frontify_fondue_rte,e.ReactDOM))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var p=Object.defineProperty,m=Object.getOwnPropertyDescriptor,h=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,_=(e,t)=>{let n={};for(var r in e)p(n,r,{get:e[r],enumerable:!0});return t||p(n,Symbol.toStringTag,{value:`Module`}),n},v=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=h(t),a=0,o=i.length,s;a<o;a++)s=i[a],!g.call(e,s)&&s!==n&&p(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=m(t,s))||r.enumerable});return e},y=(e,t,n)=>(v(e,t,`default`),n&&v(n,t,`default`)),b=e=>e.filter(Boolean).join(` `),x=({onDrop:e,label:o,icon:s,secondaryLabel:c,isLoading:l,fillParentContainer:u,onAssetChooseClick:d,onUploadClick:f,withMenu:p=!0,onClick:m,validFileType:h,verticalLayout:g})=>{let[_,v]=(0,i.useState)(!1),[y,x]=(0,i.useState)(),S=(0,i.useRef)(null),[C,w]=(0,i.useState)(void 0),T=t=>{if(t.preventDefault(),v(!1),!ee(t.dataTransfer.files)){w(`Invalid`),setTimeout(()=>{w(void 0)},1e3);return}e?.(t.dataTransfer.files)},ee=e=>{if(!h)return!0;for(let n=0;n<e.length;n++){let r=e[n].name.split(`.`).pop()??``;if(!t.FileExtensionSets[h].includes(r))return!1}return!0},E=e=>{if(!S.current||l)return;let{clientX:t,clientY:n}=e,r=t===0&&n===0,{left:i,top:a,width:o,height:s}=S.current.getBoundingClientRect(),c=r?o/2:t-i,u=r?s/2:n-a;x([c,u])},D=(0,i.useCallback)(e=>{e(),x(void 0)},[]),te=(0,i.useMemo)(()=>{let e=[];return f&&e.push({onSelect:()=>D(f),title:`Upload asset`,icon:(0,a.jsx)(r.IconArrowCircleUp,{size:`20`})}),d&&e.push({onSelect:()=>D(d),title:`Browse asset`,icon:(0,a.jsx)(r.IconImageStack,{size:`20`})}),e},[d,f,D]);return(0,a.jsxs)(`button`,{type:`button`,ref:S,"data-test-id":`block-inject-button`,className:b([`tw-body-medium tw-relative 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`,u?`tw-h-full`:`tw-h-[72px]`,_&&!l?`tw-border-dashed`:`tw-border-solid`,y&&`tw-bg-surface-hover`,_&&`tw-bg-surface`,C?`!tw-border-red-50 !tw-cursor-not-allowed`:` tw-border-line-mid`,l||y||_||C?``:`tw-text-secondary hover:tw-text-primary hover:tw-bg-surface hover:tw-border-line-strong active:tw-text-primary active:tw-bg-surface-hover active:tw-border-line-strong`,(_||y)&&!C?`[&>*]:tw-pointer-events-none tw-border-line-strong`:`tw-bg-surface-dim tw-text-secondary`]),onDragEnter:e?e=>{if(v(!0),h===`Images`)for(let t of Array.from(e.dataTransfer.items))t?.type?.startsWith(`image/`)?w(void 0):w(`Invalid`)}:void 0,onDragOver:e?e=>{e.preventDefault()}:void 0,onDragLeave:e?()=>{v(!1),w(void 0)}:void 0,onDrop:e?T:void 0,onClick:e=>{p&&!y&&E(e),m?.()},children:[l?(0,a.jsx)(n.LoadingCircle,{}):C?(0,a.jsxs)(`div`,{className:` tw-flex tw-items-center tw-justify-center tw-text-red-60 tw-font-medium`,children:[(0,a.jsx)(r.IconExclamationMarkTriangle,{size:`16`}),C]}):(0,a.jsxs)(a.Fragment,{children:[s&&(0,a.jsx)(`div`,{children:s}),(o||c)&&(0,a.jsxs)(`div`,{className:`tw-flex tw-flex-col tw-items-start`,children:[o&&(0,a.jsx)(`div`,{className:`tw-font-medium`,children:o}),c&&(0,a.jsx)(`div`,{className:`tw-font-normal`,children:c})]})]}),y&&(0,a.jsx)(`div`,{className:`tw-absolute tw-left-0 tw-top-full tw-z-20`,style:{left:y[0],top:y[1]},children:(0,a.jsxs)(n.Flyout.Root,{open:!0,onOpenChange:e=>!e&&x(void 0),children:[(0,a.jsx)(n.Flyout.Trigger,{children:(0,a.jsx)(`div`,{})}),(0,a.jsx)(n.Flyout.Content,{triggerOffset:`compact`,children:(0,a.jsxs)(n.Dropdown.Root,{open:!0,children:[(0,a.jsx)(n.Dropdown.Trigger,{children:(0,a.jsx)(`div`,{})}),(0,a.jsx)(n.Dropdown.Content,{triggerOffset:`compact`,children:te.map(e=>(0,a.jsxs)(n.Dropdown.Item,{onSelect:e.onSelect,children:[e.icon,e.title]},e.title))})]})})]})})]})},S=e=>(e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e.hasOwnProperty(t)))(e)?(e=>{let t=typeof e.alpha==`number`?e.alpha:1;return{r:e.red,g:e.green,b:e.blue,a:t}})(e):e,C=e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e?.hasOwnProperty(t)),w=(e,t)=>{let n=C(e)?S(e):e,r=new o.TinyColor(n);return t?r.getBrightness()<t:r.isDark()||r.getAlpha()>.25&&r.getAlpha()<1},T=e=>new o.TinyColor(S(e)).toHex8String(),ee=e=>new o.TinyColor(S(e)).toHexString(),E=e=>new o.TinyColor(S(e)).toRgbString(),D=(e,t)=>new o.TinyColor(t).setAlpha(e).toRgbString(),te=e=>{let{r:t,g:n,b:r,a:i}=new o.TinyColor(e);return{red:t,green:n,blue:r,alpha:i}},O=e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e?.hasOwnProperty(t)),k=(e,t)=>{let n=O(e)?S(e):e,r=O(t)?S(t):t,i=new o.TinyColor(n),a=new o.TinyColor(r);for(;(0,o.readability)(i,a)<4.5;)i=i.darken(1);return i.toRgbString()},ne=e=>({backgroundColor:E(e)}),re={red:241,green:241,blue:241,alpha:1},ie={red:234,green:235,blue:235,alpha:1},A=`24px`,j=`24px`,M=function(e){return e.Solid=`Solid`,e.Dashed=`Dashed`,e.Dotted=`Dotted`,e}({}),ae={Solid:`solid`,Dotted:`dotted`,Dashed:`dashed`},N=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),P={None:`0px`,Small:`2px`,Medium:`4px`,Large:`12px`},F=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),I={None:`0px`,Small:`24px`,Medium:`36px`,Large:`60px`},L=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),R={None:`0px`,Small:`24px`,Medium:`36px`,Large:`60px`},z=function(e){return e.Global=`Global`,e.Custom=`Custom`,e}({}),B=function(e){return e.Auto=`Auto`,e.S=`S`,e.M=`M`,e.L=`L`,e}({}),oe={Auto:`4px`,S:`10px`,M:`30px`,L:`50px`},se=(e=M.Solid,t=`1px`,n=ie)=>({borderStyle:ae[e],borderWidth:t,borderColor:E(n)}),ce=(e,t=!1,n)=>({borderRadius:t?n:P[e]}),le=(0,i.createContext)(!1);le.displayName=`DragPreviewContext`;var ue=({children:e,isDragPreview:t})=>(0,a.jsx)(le.Provider,{value:t,children:e}),V=()=>(0,i.useContext)(le),de=(0,i.createContext)({openFlyoutIds:[],setOpenFlyoutIds:()=>console.error(`No MultiFlyoutContext Provider found`)});de.displayName=`MultiFlyoutContext`;var fe=({children:e,openFlyoutIds:t,setOpenFlyoutIds:n})=>{let r=(0,i.useMemo)(()=>({openFlyoutIds:t,setOpenFlyoutIds:n}),[t,n]);return(0,a.jsx)(de.Provider,{value:r,children:e})},pe=()=>(0,i.useContext)(de),me=e=>{let{openFlyoutIds:t,setOpenFlyoutIds:n}=pe(),r=(0,i.useCallback)(t=>{n(n=>{let r=n.filter(t=>t!==e);return t?[...r,e]:r})},[e,n]);return{isOpen:t.includes(e),onOpenChange:r}},he=(e,t)=>{let{blockAssets:n,addAssetIdsToKey:r,deleteAssetIdsFromKey:i,updateAssetIdsFromKey:a}=t,o=n?.[e]||[];return{onAttachmentsAdd:async t=>{await r(e,t.map(e=>e.id))},onAttachmentDelete:async t=>{await i(e,[t.id])},onAttachmentReplace:async(t,n)=>{let r=o.map(e=>e.id===t.id?n.id:e.id);await a(e,r)},onAttachmentsSorted:async t=>{let n=t.map(e=>e.id);await a(e,n)},attachments:o}},ge=(e,n)=>{let{onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:a,onAttachmentsSorted:o,attachments:s}=he(n,(0,t.useBlockAssets)(e));return{onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:a,onAttachmentsSorted:o,attachments:s,appBridge:e}},_e=(0,i.createContext)(null);_e.displayName=`AttachmentsContext`;var ve=({appBridge:e,children:t,assetId:n})=>{let r=ge(e,n);return(0,a.jsx)(_e.Provider,{value:r,children:t})},ye=({blockAssetBundle:e,appBridge:t,children:n,assetId:r})=>{let i=he(r,e);return(0,a.jsx)(_e.Provider,{value:{...i,appBridge:t},children:n})},be=()=>{let e=(0,i.useContext)(_e);if(!e)throw Error(`No AttachmentsContext Provided. Component must be wrapped in an 'AttachmentsProvider' or the 'withAttachmentsProvider' HOC`);return e},xe=(e,t)=>{let n=n=>(0,a.jsx)(ve,{appBridge:n.appBridge,assetId:t,children:(0,a.jsx)(e,{...n})});return n.displayName=`withAttachmentsProvider`,n},Se=e=>e===`IMAGE`?(0,a.jsx)(r.IconImage,{size:`24`}):e===`VIDEO`?(0,a.jsx)(r.IconPlayFrame,{size:`24`}):e===`AUDIO`?(0,a.jsx)(r.IconMusicNote,{size:`24`}):(0,a.jsx)(r.IconDocument,{size:`24`}),Ce=(0,i.forwardRef)(({item:e,isEditing:o,draggableProps:s,transformStyle:c,isDragging:l,isOverlay:u,isLoading:d,onDelete:f,onReplaceWithBrowse:p,onReplaceWithUpload:m,onDownload:h},g)=>{let[_,v]=(0,i.useState)(),[y,{selectedFiles:x}]=(0,t.useFileInput)({multiple:!0,accept:`image/*`}),[S,{results:C,doneAll:w}]=(0,t.useAssetUpload)();(0,i.useEffect)(()=>{x&&S(x[0])},[x]),(0,i.useEffect)(()=>{w&&m(C[0])},[w,C]);let T=d||x&&!w;return(0,a.jsxs)(`button`,{type:`button`,"aria-label":`Download attachment`,"data-test-id":`attachments-item`,onClick:()=>!_&&h?.(),ref:g,style:{...c,opacity:l&&!u?.3:1,fontFamily:`var(-f-theme-settings-body-font-family)`},className:b([`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-surface-hover focus-visible:tw-outline focus-visible:!-tw-outline-offset-4`,l?`tw-bg-surface-hover`:``]),children:[(0,a.jsx)(`div`,{className:`tw-text-secondary group-hover:tw-text-container-secondary-on-secondary-container`,children:T?(0,a.jsx)(n.LoadingCircle,{size:`small`}):Se(e.objectType)}),(0,a.jsxs)(`div`,{className:`tw-text-small tw-flex-1 tw-min-w-0`,children:[(0,a.jsx)(`div`,{className:`tw-whitespace-nowrap tw-overflow-hidden tw-text-ellipsis tw-font-bold tw-text-secondary group-hover:tw-text-container-secondary-on-secondary-container`,children:e.title}),(0,a.jsx)(`div`,{className:`tw-text-secondary`,children:`${e.fileSizeHumanReadable} - ${e.extension}`})]}),o&&(0,a.jsxs)(`div`,{"data-test-id":`attachments-actionbar`,className:b([`tw-flex tw-gap-0.5 group-hover:tw-opacity-100 group-focus-visible:tw-opacity-100 has-[:focus-visible]:tw-opacity-100`,u||_?.id===e.id?`tw-opacity-100`:`tw-opacity-0`]),children:[(0,a.jsx)(n.Button,{aspect:`square`,emphasis:`weak`,"aria-label":`Drag attachment`,className:b([l||u?`tw-cursor-grabbing`:`tw-cursor-grab`,`focus-visible:tw-z-[2]`]),...s,children:(0,a.jsx)(r.IconGrabHandle,{})}),(0,a.jsx)(`div`,{"data-test-id":`attachments-actionbar-flyout`,children:(0,a.jsxs)(n.Dropdown.Root,{open:_?.id===e.id,onOpenChange:t=>v(t?e:void 0),children:[(0,a.jsx)(n.Dropdown.Trigger,{children:(0,a.jsx)(n.Button,{aspect:`square`,emphasis:_?.id===e.id?`default`:`weak`,onPress:e=>{e?.stopPropagation(),e?.preventDefault()},children:(0,a.jsx)(r.IconPen,{size:`20`})})}),(0,a.jsxs)(n.Dropdown.Content,{side:`right`,children:[(0,a.jsxs)(n.Dropdown.Group,{children:[(0,a.jsxs)(n.Dropdown.Item,{"data-test-id":`menu-item`,onSelect:e=>{e?.stopPropagation(),y(),v(void 0)},children:[(0,a.jsx)(r.IconArrowCircleUp,{size:`20`}),`Replace with upload`]}),(0,a.jsxs)(n.Dropdown.Item,{onSelect:e=>{e?.stopPropagation(),p(),v(void 0)},children:[(0,a.jsx)(r.IconImageStack,{size:`20`}),`Replace with asset`]})]}),(0,a.jsx)(n.Dropdown.Group,{children:(0,a.jsxs)(n.Dropdown.Item,{emphasis:`danger`,onSelect:e=>{e?.stopPropagation(),f(),v(void 0)},children:[(0,a.jsx)(r.IconTrashBin,{size:`20`}),`Delete`]})})]})]})})]})]})});Ce.displayName=`AttachmentItem`;var we=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:i,transition:o,isDragging:s}=(0,l.useSortable)({id:e.item.id}),c={transform:i?`translate(${i.x}px, ${i.y}px)`:``,transition:o,zIndex:s?2:1},u={...t,...n};return(0,a.jsx)(Ce,{ref:r,isDragging:s,transformStyle:c,draggableProps:u,...e})},Te=(0,i.forwardRef)(({children:e,...t},i)=>(0,a.jsxs)(n.Button,{ref:i,size:`small`,rounding:`full`,emphasis:`default`,"data-test-id":`attachments-button-trigger`,className:`tw-body-medium`,...t,"aria-haspopup":`menu`,children:[(0,a.jsx)(r.IconPaperclip,{size:`16`}),e,(0,a.jsx)(r.IconCaretDown,{size:`12`})]}));Te.displayName=`AttachmentsButtonTrigger`;var Ee=({items:e=[],onDelete:o,onReplaceWithBrowse:u,onReplaceWithUpload:d,onBrowse:f,onUpload:p,onSorted:m,appBridge:h,triggerComponent:g=Te,isOpen:_,onOpenChange:v})=>{let[y,b]=(0,i.useState)(e),[x,S]=(0,i.useState)(!1),C=(0,s.useSensors)((0,s.useSensor)(s.PointerSensor),(0,s.useSensor)(s.KeyboardSensor)),[w,T]=(0,i.useState)(void 0),[ee,E]=(0,i.useState)(!1),[D,te]=(0,i.useState)(!1),[O,k]=(0,i.useState)([]),[ne,re]=(0,i.useState)(null),ie=(0,t.useEditorState)(h),{openAssetChooser:A,closeAssetChooser:j}=(0,t.useAssetChooser)(h),M=_!==void 0,ae=M?_:x,N=y?.find(e=>e.id===w),P=e.length,F=P>0?`Open attachments, ${P} ${P===1?`attachment`:`attachments`}`:`Add attachments`,[I,{results:L,doneAll:R}]=(0,t.useAssetUpload)({onUploadProgress:()=>!ee&&E(!0)}),z=e=>{(M?v:S)?.(e)};(0,i.useEffect)(()=>{b(e)},[e]),(0,i.useEffect)(()=>{ne&&(E(!0),I(ne))},[ne]),(0,i.useEffect)(()=>{(async()=>{R&&(await p(L),E(!1))})()},[R,L]);let B=()=>{z(!1),A(async e=>{j(),z(!0),te(!0),await f(e),te(!1)},{multiSelection:!0,selectedValueIds:y.map(e=>e.id)})},oe=e=>{z(!1),A(async t=>{z(!0),j(),k([...O,e.id]),await u(e,t[0]),k(O.filter(t=>t!==e.id))},{multiSelection:!1,selectedValueIds:y.map(e=>e.id)})},se=async(e,t)=>{k([...O,e.id]),await d(e,t),k(O.filter(t=>t!==e.id))};return ie||(y?.length??0)>0?(0,a.jsx)(`div`,{"data-test-id":`attachments-flyout-button`,children:(0,a.jsx)(n.Flyout.Root,{open:ae,onOpenChange:e=>z(N?!0:e),children:(0,a.jsxs)(n.Tooltip.Root,{enterDelay:500,children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:(0,a.jsx)(n.Flyout.Trigger,{asChild:!0,"data-test-id":`attachments-button-trigger`,children:(0,a.jsx)(g,{isFlyoutOpen:ae,"aria-label":F,children:(0,a.jsx)(`div`,{"aria-hidden":`true`,children:P>0?P:`Add`})})})}),(0,a.jsx)(n.Flyout.Content,{side:`bottom`,align:`end`,width:`300px`,onEscapeKeyDown:e=>{e.stopPropagation(),z(!1)},children:(0,a.jsxs)(`div`,{className:`tw-w-full`,"data-test-id":`attachments-flyout-content`,children:[y.length>0&&(0,a.jsx)(s.DndContext,{sensors:C,collisionDetection:s.closestCenter,onDragStart:e=>{let{active:t}=e;T(t.id)},onDragEnd:e=>{let{active:t,over:n}=e;if(n&&t.id!==n.id&&y){let e=y.findIndex(e=>e.id===t.id),r=y.findIndex(e=>e.id===n.id),i=(0,l.arrayMove)(y,e,r);b(i),m(i)}T(void 0)},modifiers:[c.restrictToParentElement],children:(0,a.jsx)(l.SortableContext,{items:y,strategy:l.rectSortingStrategy,children:(0,a.jsx)(`div`,{className:`tw-border-b tw-border-b-line tw-relative`,children:y.map(e=>(0,a.jsx)(we,{isEditing:ie,isLoading:O.includes(e.id),item:e,onDelete:()=>o(e),onReplaceWithBrowse:()=>oe(e),onReplaceWithUpload:t=>se(e,t),onDownload:()=>h.dispatch({name:`downloadAsset`,payload:e})},e.id))})})}),ie&&(0,a.jsxs)(`div`,{className:`tw-px-5 tw-py-3`,"data-test-id":`asset-input-placeholder`,children:[(0,a.jsx)(`div`,{className:`tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4`,children:`Add attachments`}),ee||D?(0,a.jsxs)(n.AssetInput.Root,{orientation:`horizontal`,children:[(0,a.jsx)(n.AssetInput.Preview,{children:(0,a.jsx)(n.AssetInput.PreviewLoading,{})}),(0,a.jsx)(n.AssetInput.Title,{children:`Asset`}),(0,a.jsx)(n.AssetInput.Metadata,{children:(0,a.jsx)(n.AssetInput.MetadataItem,{children:(0,a.jsxs)(n.Flex,{align:`center`,gap:.5,children:[D?(0,a.jsx)(r.IconImageStack,{size:16}):(0,a.jsx)(r.IconArrowCircleUp,{size:16}),D?`Loading`:`Uploading`]})})})]}):(0,a.jsxs)(n.AssetInput.Placeholder,{children:[(0,a.jsx)(n.AssetInput.UploadInput,{allowMultiple:!0,onSelect:e=>re(e.target.files)}),(0,a.jsx)(n.AssetInput.BrowseInput,{onBrowse:B})]})]})]})}),(0,a.jsx)(n.Tooltip.Content,{side:`top`,children:`Attachments`})]})})}):null},De=(e,t)=>{let n=[u.FOCUS_VISIBLE_STYLE,`tw-relative tw-inline-flex tw-items-center tw-justify-center`,`tw-h-6 tw-p-1`,`tw-rounded-medium`,`tw-body-medium`,`tw-gap-0.5`,`focus-visible:tw-z-10`];return t?n.push(`tw-bg-container-secondary-active`,`tw-text-container-secondary-on-secondary-container`,e===`grab`?`tw-cursor-grabbing`:`tw-cursor-pointer`):n.push(`hover:tw-bg-container-secondary-hover active:tw-bg-container-secondary-active`,`tw-text-secondary hover:tw-text-container-secondary-on-secondary-container active:tw-text-container-secondary-on-secondary-container`,e===`grab`?`!tw-cursor-grab active:tw-cursor-grabbing`:`tw-cursor-pointer`),b(n)},H=(0,i.forwardRef)(({onClick:e,children:t,forceActiveStyle:n,cursor:r=`pointer`,"data-test-id":i=`base-toolbar-button`,...o},s)=>(0,a.jsx)(`button`,{onClick:e,className:De(r,n),"data-test-id":i,...o,ref:s,children:t}));H.displayName=`BaseToolbarButton`;var Oe=(0,i.forwardRef)(({children:e,isFlyoutOpen:t,...n},i)=>(0,a.jsxs)(H,{forceActiveStyle:t,"data-test-id":`attachments-toolbar-button-trigger`,ref:i,...n,"aria-haspopup":`menu`,children:[(0,a.jsx)(r.IconPaperclip,{size:`16`}),e,(0,a.jsx)(r.IconCaretDown,{size:`12`})]}));Oe.displayName=`AttachmentsToolbarButtonTrigger`;var ke=`attachments`,Ae=({flyoutId:e=ke})=>{let{appBridge:t,attachments:n,onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:o,onAttachmentsSorted:s}=be(),{isOpen:c,onOpenChange:l}=me(e),u=V();return(0,a.jsx)(Ee,{onUpload:r,onDelete:i,onReplaceWithBrowse:o,onReplaceWithUpload:o,onSorted:s,onBrowse:r,items:n,appBridge:t,triggerComponent:Oe,isOpen:c&&!u,onOpenChange:l})},je=`Drag or press ↵ to move`,Me=`Move with ↑↓←→ and confirm with ↵`,Ne=({content:e,children:t,open:r,disabled:i})=>i?t:(0,a.jsxs)(n.Tooltip.Root,{enterDelay:300,open:r,children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:t}),(0,a.jsx)(n.Tooltip.Content,{side:`top`,children:(0,a.jsx)(`div`,{children:e})})]}),Pe=({tooltip:e,icon:t,setActivatorNodeRef:n,draggableProps:r})=>{let i=V(),{activatorEvent:o}=(0,s.useDndContext)(),c=o instanceof KeyboardEvent;return(0,a.jsx)(Ne,{...i&&{open:c},content:(0,a.jsx)(`div`,{children:i?Me:e??`Drag or press ↵ to move`}),children:(0,a.jsx)(H,{ref:n,"data-test-id":`block-item-wrapper-toolbar-btn`,forceActiveStyle:i,cursor:`grab`,...r,children:t})})},Fe=({content:e,icon:t,tooltip:r,flyoutId:i,flyoutFooter:o,flyoutHeader:s})=>{let{isOpen:c,onOpenChange:l}=me(i),u=V();return(0,a.jsx)(Ne,{disabled:u||c,content:r,children:(0,a.jsx)(`div`,{className:`tw-flex tw-flex-shrink-0 tw-flex-1 tw-h-6 tw-relative`,children:(0,a.jsxs)(n.Flyout.Root,{open:c&&!u,onOpenChange:l,children:[(0,a.jsx)(n.Flyout.Trigger,{asChild:!0,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-flyout`,forceActiveStyle:c&&!u,children:t})}),(0,a.jsxs)(n.Flyout.Content,{side:`bottom`,align:`end`,padding:`comfortable`,children:[s?(0,a.jsx)(n.Flyout.Header,{children:s}):null,(0,a.jsx)(n.Flyout.Body,{children:e}),o?(0,a.jsx)(n.Flyout.Footer,{children:o}):null]})]})})})},Ie=`menu`,Le=({items:e,flyoutId:t=Ie,tooltip:i=`Options`})=>{let{isOpen:o,onOpenChange:s}=me(t),c=V();return(0,a.jsx)(n.Dropdown.Root,{open:o&&!c,onOpenChange:s,children:(0,a.jsxs)(n.Tooltip.Root,{children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:(0,a.jsx)(n.Dropdown.Trigger,{asChild:!0,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-flyout`,children:(0,a.jsx)(r.IconDotsHorizontal,{size:`16`})})})}),(0,a.jsx)(n.Dropdown.Content,{children:e.map((e,t)=>(0,a.jsx)(n.Dropdown.Group,{children:e.map((e,r)=>(0,a.jsxs)(n.Dropdown.Item,{"data-test-id":`menu-item`,onSelect:()=>{s(!1),e.onClick()},emphasis:e.style||`default`,children:[(0,a.jsx)(`div`,{className:`tw-mr-2`,children:e.icon}),(0,a.jsx)(`span`,{children:e.title})]},`${t}-${r}`))},t))}),(0,a.jsx)(n.Tooltip.Content,{children:i})]})})},Re=({tooltip:e,icon:t,onClick:n})=>{let r=V();return(0,a.jsx)(Ne,{disabled:r,content:e??``,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-btn`,onClick:n,children:t})})},ze=({children:e})=>(0,a.jsx)(`div`,{"data-test-id":`block-item-wrapper-toolbar-segment`,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}),Be=({items:e,attachments:t})=>(0,a.jsxs)(`div`,{"data-test-id":`block-item-wrapper-toolbar`,className:`tw-rounded-md tw-bg-surface tw-border tw-border-line-mid tw-divide-x tw-divide-line-mid tw-shadow-lg tw-flex tw-flex-none tw-items-center tw-isolate`,children:[t.isEnabled&&(0,a.jsx)(ze,{children:(0,a.jsx)(Ae,{})}),e.length>0&&(0,a.jsx)(ze,{children:e.map(e=>{switch(e.type){case`dragHandle`:return(0,a.jsx)(Pe,{...e},e.tooltip+e.type);case`menu`:return(0,a.jsx)(Le,{...e},e.tooltip+e.type);case`flyout`:return(0,a.jsx)(Fe,{...e},e.tooltip+e.type);default:return(0,a.jsx)(Re,{...e},e.tooltip+e.type)}})})]}),Ve=(0,i.memo)(({children:e,toolbarItems:t,shouldHideWrapper:n,shouldHideComponent:r=!1,isDragging:o=!1,shouldFillContainer:s,outlineOffset:c=0,shouldBeShown:l=!1,showAttachments:u=!1})=>{let[d,f]=(0,i.useState)(l?[Ie]:[]),p=(0,i.useRef)(null);if(n)return(0,a.jsx)(a.Fragment,{children:e});let m=t?.filter(e=>e!==void 0),h=d.length>0||l;return(0,a.jsx)(ue,{isDragPreview:o,children:(0,a.jsx)(fe,{openFlyoutIds:d,setOpenFlyoutIds:f,children:(0,a.jsxs)(`div`,{ref:p,"data-test-id":`block-item-wrapper`,style:{outlineOffset:c},className:b([`tw-relative tw-group`,s&&`tw-flex-1 tw-h-full tw-w-full`,`hover:tw-outline hover:tw-outline-1 hover:tw-outline-container-highlight-on-highlight-container focus-within:tw-outline focus-within:tw-outline-1 focus-within:tw-outline-container-highlight-on-highlight-container`,h&&`tw-outline tw-outline-1 tw-outline-container-highlight-on-highlight-container`,r&&`tw-opacity-0`]),children:[(0,a.jsx)(`div`,{style:{right:-1-c,bottom:`calc(100% - ${2+c}px)`},className:b([`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`,h&&`tw-opacity-100`]),children:(0,a.jsx)(Be,{attachments:{isEnabled:u},items:m})}),e]})})})});Ve.displayName=`BlockItemWrapper`;var He=({ref:e,disabled:t,onChange:n})=>{(0,i.useEffect)(()=>{if(t||!e.current)return;let r=!1,i=new IntersectionObserver(([e])=>{e.isIntersecting!==r&&(r=e.isIntersecting,n(e.isIntersecting))});return i.observe(e.current),()=>{i.disconnect()}},[e,t,n])},Ue=(0,d.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})),U=Ue.set,W=Ue.get,We=()=>Ue.use,Ge=e=>{if(!e)return!1;let t=e=>e.some(e=>e.text?e.text!==``:e.children?t(e.children):!1);try{return t(JSON.parse(e))}catch{return!1}},Ke=(e=`p`,t=``,n)=>Ge(t)?t:JSON.stringify([{type:e,children:[{text:t,textStyle:e}],align:n}]),qe=(e,t,n)=>e===z.Custom?t:n,Je=(e,t)=>{let n=(0,d.getAboveNode)(e,{match:{type:d.ELEMENT_LINK}});return Array.isArray(n)?t(n[0]):``},Ye=e=>Je(e,e=>e.chosenLink?.searchResult?.link||``),Xe=e=>Je(e,e=>e.url||``),Ze=e=>e.url||e.chosenLink?.searchResult?.link||``,Qe=e=>Je(e,Ze),$e=/^\/(?!\/)\S*$/,G=e=>{if($e.test(e))return e;try{return new URL(e),e}catch{return`https://${e}`}},et=e=>{if($e.test(e))return!0;try{let t=new URL(e);return[`http:`,`https:`,`mailto:`,`tel:`].includes(t.protocol)&&t.pathname!==``}catch{return!1}},K=e=>et(G(e))||e===``,tt=(e,{type:t})=>{let{apply:n,normalizeNode:r}=e;return e.apply=t=>{if(t.type!==`set_selection`){n(t);return}let r=t.newProperties;if(!r?.focus||!r.anchor||!(0,d.isCollapsed)(r)){n(t);return}let i=(0,d.getAboveNode)(e,{at:r,match:{type:(0,d.getPluginType)(e,Z)}});if(i){let[,n]=i,a;(0,d.isStartPoint)(e,r.focus,n)&&(a=(0,d.getPreviousNodeEndPoint)(e,n)),(0,d.isEndPoint)(e,r.focus,n)&&(a=(0,d.getNextNodeStartPoint)(e,n)),a&&(t.newProperties={anchor:a,focus:a})}n(t)},e.normalizeNode=([t,n])=>{if(t.type===(0,d.getPluginType)(e,`button`)){let t=e.selection;if(t&&(0,d.isCollapsed)(t)&&(0,d.isEndPoint)(e,t.focus,n)){let t=(0,d.getNextNodeStartPoint)(e,n);if(t)(0,d.select)(e,t);else{let t=d.Path.next(n);(0,d.insertNodes)(e,{text:``},{at:t}),(0,d.select)(e,t)}}}r([t,n])},(0,d.withRemoveEmptyNodes)(e,(0,d.mockPlugin)({options:{types:t}}))},nt=(e,t,n)=>{(0,d.insertNodes)(e,[ft(e,t)],n)},rt=e=>{if(!e.selection)return;let{isUrl:t,forceSubmit:n}=(0,d.getPluginOptions)(e,Z),r=W.url();if(!(t?.(r)||n))return;let i=W.text(),a=W.buttonStyle(),o=W.newTab()?void 0:`_self`;return U.reset(),it(e,{url:r,text:i,buttonStyle:a,target:o,isUrl:e=>n||!t?!0:t(e)}),setTimeout(()=>{(0,d.focusEditor)(e,e.selection??void 0)},0),!0},q=(e,t)=>(0,d.withoutNormalizing)(e,()=>{if(t?.split){if((0,d.getAboveNode)(e,{at:e.selection?.anchor,match:{type:(0,d.getPluginType)(e,`button`)}}))return(0,d.splitNodes)(e,{at:e.selection?.anchor,match:t=>(0,d.isElement)(t)&&t.type===(0,d.getPluginType)(e,`button`)}),q(e,{at:e.selection?.anchor}),!0;if((0,d.getAboveNode)(e,{at:e.selection?.focus,match:{type:(0,d.getPluginType)(e,`button`)}}))return(0,d.splitNodes)(e,{at:e.selection?.focus,match:t=>(0,d.isElement)(t)&&t.type===(0,d.getPluginType)(e,`button`)}),q(e,{at:e.selection?.focus}),!0}(0,d.unwrapNodes)(e,{match:{type:(0,d.getPluginType)(e,Z)},...t})}),it=(e,{url:t,text:n,buttonStyle:r,target:i,insertTextInButton:a,insertNodesOptions:o,isUrl:s=(0,d.getPluginOptions)(e,Z).isUrl})=>{let c=e.selection;if(!c)return;let l=(0,d.getAboveNode)(e,{at:c,match:{type:(0,d.getPluginType)(e,Z)}});if(a&&l)return e.insertText(t),!0;if(!s?.(t))return;if((0,d.isDefined)(n)&&n.length===0&&(n=t),l)return st(t,e,l,i,r,n),!0;let[u,f]=(0,d.findNode)(e,{at:c,match:{type:(0,d.getPluginType)(e,`button`)}})??[],p=at(e,f,n);if((0,d.isExpanded)(c))return ot(l,e,t,r,i,n),!0;p&&(0,d.removeNodes)(e,{at:f});let m=(0,d.getNodeProps)(u??{}),h=e.selection?.focus.path;if(!h)return;let g=(0,d.getNodeLeaf)(e,h);return n?.length||(n=t),nt(e,{...m,url:t,target:i,children:[{...g,text:n}]},o),!0};function at(e,t,n){return t&&n?.length&&n!==(0,d.getEditorString)(e,t)}function ot(e,t,n,r,i,a){e?q(t,{at:e[1]}):q(t,{split:!0}),lt(t,{url:n,buttonStyle:r,target:i}),ct(t,{url:n,target:i,text:a})}function st(e,t,n,r,i,a){(e!==n[0]?.url||r!==n[0]?.target||i!==n[0]?.buttonStyle)&&(0,d.setNodes)(t,{url:e,target:r,buttonStyle:i},{at:n[1]}),ct(t,{url:e,text:a,target:r})}var ct=(e,{text:t})=>{let n=(0,d.getAboveNode)(e,{match:{type:(0,d.getPluginType)(e,Z)}});if(n){let[r,i]=n;if(t?.length&&t!==(0,d.getEditorString)(e,i)){let n=r.children[0];(0,d.replaceNodeChildren)(e,{at:i,nodes:{...n,text:t},insertOptions:{select:!0}})}}},lt=(e,{url:t,buttonStyle:n,target:r,...i})=>{(0,d.wrapNodes)(e,{type:(0,d.getPluginType)(e,Z),url:t,buttonStyle:n,target:r,children:[]},{split:!0,...i})},ut=(e,t)=>{let n=(0,d.getAboveNode)(e,{match:{type:Z}});return Array.isArray(n)?t(n[0]):``},dt=e=>ut(e,e=>e.url??``),ft=(e,{url:t,text:n=``,buttonStyle:r=`primary`,target:i,children:a})=>({type:(0,d.getPluginType)(e,Z),url:t,target:i,buttonStyle:r,children:a??[{text:n}]}),pt=(e,{focused:t}={})=>{if(W.mode()===`edit`){mt(e);return}ht(e,{focused:t})},mt=e=>{let t=(0,d.findNode)(e,{match:{type:(0,d.getPluginType)(e,Z)}});if(!t)return;let[n,r]=t,i=(0,d.getEditorString)(e,r);U.url(n.url),U.newTab(n.target===void 0),i===n.url&&(i=``),U.text(i),U.isEditing(!0)},ht=(e,{focused:t}={})=>{W.mode()||t&&((0,d.isRangeAcrossBlocks)(e,{at:e.selection})||(0,d.someNode)(e,{match:{type:(0,d.getPluginType)(e,`button`)}})||(U.text((0,d.getEditorString)(e,e.selection)),U.show(`insert`,e.id)))},gt={marginTop:`10px`,marginBottom:`10px`,display:`inline-block`,overflow:`hidden`,textOverflow:`ellipsis`,maxWidth:`100%`,verticalAlign:`middle`,boxSizing:`border-box`,overflowWrap:`normal`},_t={buttonPrimary:{...gt,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)`,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:{...gt,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)`,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:{...gt,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)`,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)`}}},vt=e=>{let{attributes:t,children:n}=e,r=e.element.url||e.element.chosenLink?.searchResult?.link||``,i=e.element.target||`_self`,o=String(e.element.buttonStyle)||`primary`;return(0,a.jsx)(yt,{attributes:t,href:r,target:i,styles:_t[`button${o.charAt(0).toUpperCase()+o.slice(1)}`],children:n})},yt=({attributes:e,styles:t={hover:{}},children:n,href:r=`#`,target:o})=>{let[s,c]=(0,i.useState)(!1);return(0,a.jsx)(`a`,{...e,onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),href:r,target:o,style:s?{...t,...t.hover}:t,children:n})},bt=class extends d.MarkupElement{constructor(e=Z,t=vt){super(e,t)}},xt=(0,i.forwardRef)((e,t)=>{let n=(0,d.useEditorRef)();return(0,a.jsx)(d.ToolbarButton,{ref:t,...e,onMouseDown:e=>{e.preventDefault(),(0,d.focusEditor)(n,n.selection??n.prevSelection??void 0)},onClick:()=>{pt(n,{focused:!0})},children:(0,a.jsx)(d.IconStylingWrapper,{icon:(0,a.jsx)(r.IconButton,{size:16})})})});xt.displayName=`ButtonToolbarButton`;var St=({editorId:e,id:t})=>{let n=(0,d.useEditorState)((0,d.useEventPlateId)(e)),r=!!(0,d.isRangeInSameBlock)(n,{at:n.selection}),i=(0,d.getPluginType)(n,Z),o=!!n?.selection&&(0,d.someNode)(n,{match:{type:i}});return(0,a.jsx)(`div`,{"data-plugin-id":t,children:(0,a.jsx)(xt,{pressed:o,disabled:!r,tooltip:(0,d.getTooltip)(r?`Button\n${(0,d.getHotkeyByPlatform)(`Ctrl+Shift+K`)}`:`Buttons can only be set for a single text block.`)})})},J=`link-plugin`,Y=function(e){return 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}({}),X={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)`},[J]:{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)`},..._t},Ct=()=>{let e=(0,d.useEditorRef)();return(0,a.jsx)(d.FloatingModalWrapper,{padding:`16px`,minWidth:`400px`,"data-test-id":`floating-button-edit`,children:(0,a.jsxs)(`span`,{"data-test-id":`preview-button-flyout`,className:`tw-flex tw-justify-between tw-items-center tw-gap-2`,children:[(0,a.jsx)(`a`,{"data-test-id":`floating-button-edit-url`,href:W.url(),target:`_blank`,rel:`noopener noreferrer`,style:X[J],className:`tw-break-all`,children:W.url()}),(0,a.jsxs)(`span`,{className:`tw-flex tw-gap-2`,children:[(0,a.jsx)(`button`,{onClick:()=>{mt(e)},tabIndex:0,"data-test-id":`edit-button-button`,className:`tw-transition tw-cursor-pointer tw-rounded-medium hover:tw-bg-black-10 tw-p-1`,children:(0,a.jsx)(r.IconPen,{size:16})}),(0,a.jsx)(`button`,{onClick:()=>{q(e),(0,d.focusEditor)(e,e.selection??void 0)},tabIndex:0,"data-test-id":`remove-button-button`,className:`tw-transition tw-cursor-pointer tw-rounded-medium hover:tw-bg-black-10 tw-p-1`,children:(0,a.jsx)(r.IconTrashBin,{size:16})})]})]})})},wt=e=>e.filter(e=>!!e.title?.trim()),Tt=()=>(0,a.jsx)(`div`,{className:`tw-flex tw-justify-center tw-h-10 tw-items-center`,children:(0,a.jsx)(n.LoadingCircle,{size:`small`})}),Et=({section:e,selectedUrl:t,onSelectUrl:n})=>{let i=e.permanentLink===t;return(0,a.jsx)(`button`,{"data-test-id":`internal-link-selector-section-link`,type:`button`,"data-is-active":i,className:`
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@frontify/app-bridge"),require("@frontify/fondue/components"),require("@frontify/fondue/icons"),require("react"),require("react/jsx-runtime"),require("@ctrl/tinycolor"),require("@dnd-kit/core"),require("@dnd-kit/modifiers"),require("@dnd-kit/sortable"),require("@frontify/fondue"),require("@frontify/fondue/rte"),require("react-dom")):typeof define==`function`&&define.amd?define([`exports`,`@frontify/app-bridge`,`@frontify/fondue/components`,`@frontify/fondue/icons`,`react`,`react/jsx-runtime`,`@ctrl/tinycolor`,`@dnd-kit/core`,`@dnd-kit/modifiers`,`@dnd-kit/sortable`,`@frontify/fondue`,`@frontify/fondue/rte`,`react-dom`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.GuidelineBlocksSettings={},e._frontify_app_bridge,e._frontify_fondue_components,e._frontify_fondue_icons,e.React,e.react_jsx_runtime,e._ctrl_tinycolor,e._dnd_kit_core,e._dnd_kit_modifiers,e._dnd_kit_sortable,e._frontify_fondue,e._frontify_fondue_rte,e.ReactDOM))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var p=Object.defineProperty,m=Object.getOwnPropertyDescriptor,h=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,_=(e,t)=>{let n={};for(var r in e)p(n,r,{get:e[r],enumerable:!0});return t||p(n,Symbol.toStringTag,{value:`Module`}),n},v=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=h(t),a=0,o=i.length,s;a<o;a++)s=i[a],!g.call(e,s)&&s!==n&&p(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=m(t,s))||r.enumerable});return e},y=(e,t,n)=>(v(e,t,`default`),n&&v(n,t,`default`)),b=e=>e.filter(Boolean).join(` `),x=({onDrop:e,label:o,icon:s,secondaryLabel:c,isLoading:l,fillParentContainer:u,onAssetChooseClick:d,onUploadClick:f,withMenu:p=!0,onClick:m,validFileType:h,verticalLayout:g})=>{let[_,v]=(0,i.useState)(!1),[y,x]=(0,i.useState)(),S=(0,i.useRef)(null),[C,w]=(0,i.useState)(void 0),T=t=>{if(t.preventDefault(),v(!1),!ee(t.dataTransfer.files)){w(`Invalid`),setTimeout(()=>{w(void 0)},1e3);return}e?.(t.dataTransfer.files)},ee=e=>{if(!h)return!0;for(let n=0;n<e.length;n++){let r=e[n].name.split(`.`).pop()??``;if(!t.FileExtensionSets[h].includes(r))return!1}return!0},E=e=>{if(!S.current||l)return;let{clientX:t,clientY:n}=e,r=t===0&&n===0,{left:i,top:a,width:o,height:s}=S.current.getBoundingClientRect(),c=r?o/2:t-i,u=r?s/2:n-a;x([c,u])},D=(0,i.useCallback)(e=>{e(),x(void 0)},[]),te=(0,i.useMemo)(()=>{let e=[];return f&&e.push({onSelect:()=>D(f),title:`Upload asset`,icon:(0,a.jsx)(r.IconArrowCircleUp,{size:`20`})}),d&&e.push({onSelect:()=>D(d),title:`Browse asset`,icon:(0,a.jsx)(r.IconImageStack,{size:`20`})}),e},[d,f,D]);return(0,a.jsxs)(`button`,{type:`button`,ref:S,"data-test-id":`block-inject-button`,className:b([`tw-body-medium tw-relative 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`,u?`tw-h-full`:`tw-h-[72px]`,_&&!l?`tw-border-dashed`:`tw-border-solid`,y&&`tw-bg-surface-hover`,_&&`tw-bg-surface`,C?`!tw-border-red-50 !tw-cursor-not-allowed`:` tw-border-line-mid`,l||y||_||C?``:`tw-text-secondary hover:tw-text-primary hover:tw-bg-surface hover:tw-border-line-strong active:tw-text-primary active:tw-bg-surface-hover active:tw-border-line-strong`,(_||y)&&!C?`[&>*]:tw-pointer-events-none tw-border-line-strong`:`tw-bg-surface-dim tw-text-secondary`]),onDragEnter:e?e=>{if(v(!0),h===`Images`)for(let t of Array.from(e.dataTransfer.items))t?.type?.startsWith(`image/`)?w(void 0):w(`Invalid`)}:void 0,onDragOver:e?e=>{e.preventDefault()}:void 0,onDragLeave:e?()=>{v(!1),w(void 0)}:void 0,onDrop:e?T:void 0,onClick:e=>{p&&!y&&E(e),m?.()},children:[l?(0,a.jsx)(n.LoadingCircle,{}):C?(0,a.jsxs)(`div`,{className:` tw-flex tw-items-center tw-justify-center tw-text-red-60 tw-font-medium`,children:[(0,a.jsx)(r.IconExclamationMarkTriangle,{size:`16`}),C]}):(0,a.jsxs)(a.Fragment,{children:[s&&(0,a.jsx)(`div`,{children:s}),(o||c)&&(0,a.jsxs)(`div`,{className:`tw-flex tw-flex-col tw-items-start`,children:[o&&(0,a.jsx)(`div`,{className:`tw-font-medium`,children:o}),c&&(0,a.jsx)(`div`,{className:`tw-font-normal`,children:c})]})]}),y&&(0,a.jsx)(`div`,{className:`tw-absolute tw-left-0 tw-top-full tw-z-20`,style:{left:y[0],top:y[1]},children:(0,a.jsxs)(n.Flyout.Root,{open:!0,onOpenChange:e=>!e&&x(void 0),children:[(0,a.jsx)(n.Flyout.Trigger,{children:(0,a.jsx)(`div`,{})}),(0,a.jsx)(n.Flyout.Content,{triggerOffset:`compact`,children:(0,a.jsxs)(n.Dropdown.Root,{open:!0,children:[(0,a.jsx)(n.Dropdown.Trigger,{children:(0,a.jsx)(`div`,{})}),(0,a.jsx)(n.Dropdown.Content,{triggerOffset:`compact`,children:te.map(e=>(0,a.jsxs)(n.Dropdown.Item,{onSelect:e.onSelect,children:[e.icon,e.title]},e.title))})]})})]})})]})},S=e=>(e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e.hasOwnProperty(t)))(e)?(e=>{let t=typeof e.alpha==`number`?e.alpha:1;return{r:e.red,g:e.green,b:e.blue,a:t}})(e):e,C=e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e?.hasOwnProperty(t)),w=(e,t)=>{let n=C(e)?S(e):e,r=new o.TinyColor(n);return t?r.getBrightness()<t:r.isDark()||r.getAlpha()>.25&&r.getAlpha()<1},T=e=>new o.TinyColor(S(e)).toHex8String(),ee=e=>new o.TinyColor(S(e)).toHexString(),E=e=>new o.TinyColor(S(e)).toRgbString(),D=(e,t)=>new o.TinyColor(t).setAlpha(e).toRgbString(),te=e=>{let{r:t,g:n,b:r,a:i}=new o.TinyColor(e);return{red:t,green:n,blue:r,alpha:i}},O=e=>typeof e==`object`&&[`red`,`green`,`blue`].every(t=>e?.hasOwnProperty(t)),k=(e,t)=>{let n=O(e)?S(e):e,r=O(t)?S(t):t,i=new o.TinyColor(n),a=new o.TinyColor(r);for(;(0,o.readability)(i,a)<4.5;)i=i.darken(1);return i.toRgbString()},ne=e=>({backgroundColor:E(e)}),re={red:241,green:241,blue:241,alpha:1},ie={red:234,green:235,blue:235,alpha:1},A=`24px`,j=`24px`,M=function(e){return e.Solid=`Solid`,e.Dashed=`Dashed`,e.Dotted=`Dotted`,e}({}),ae={Solid:`solid`,Dotted:`dotted`,Dashed:`dashed`},N=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),P={None:`0px`,Small:`2px`,Medium:`4px`,Large:`12px`},F=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),I={None:`0px`,Small:`24px`,Medium:`36px`,Large:`60px`},L=function(e){return e.None=`None`,e.Small=`Small`,e.Medium=`Medium`,e.Large=`Large`,e}({}),R={None:`0px`,Small:`24px`,Medium:`36px`,Large:`60px`},z=function(e){return e.Global=`Global`,e.Custom=`Custom`,e}({}),B=function(e){return e.Auto=`Auto`,e.S=`S`,e.M=`M`,e.L=`L`,e}({}),oe={Auto:`4px`,S:`10px`,M:`30px`,L:`50px`},se=(e=M.Solid,t=`1px`,n=ie)=>({borderStyle:ae[e],borderWidth:t,borderColor:E(n)}),ce=(e,t=!1,n)=>({borderRadius:t?n:P[e]}),le=(0,i.createContext)(!1);le.displayName=`DragPreviewContext`;var ue=({children:e,isDragPreview:t})=>(0,a.jsx)(le.Provider,{value:t,children:e}),V=()=>(0,i.useContext)(le),de=(0,i.createContext)({openFlyoutIds:[],setOpenFlyoutIds:()=>console.error(`No MultiFlyoutContext Provider found`)});de.displayName=`MultiFlyoutContext`;var fe=({children:e,openFlyoutIds:t,setOpenFlyoutIds:n})=>{let r=(0,i.useMemo)(()=>({openFlyoutIds:t,setOpenFlyoutIds:n}),[t,n]);return(0,a.jsx)(de.Provider,{value:r,children:e})},pe=()=>(0,i.useContext)(de),me=e=>{let{openFlyoutIds:t,setOpenFlyoutIds:n}=pe(),r=(0,i.useCallback)(t=>{n(n=>{let r=n.filter(t=>t!==e);return t?[...r,e]:r})},[e,n]);return{isOpen:t.includes(e),onOpenChange:r}},he=(e,t)=>{let{blockAssets:n,addAssetIdsToKey:r,deleteAssetIdsFromKey:i,updateAssetIdsFromKey:a}=t,o=n?.[e]||[];return{onAttachmentsAdd:async t=>{await r(e,t.map(e=>e.id))},onAttachmentDelete:async t=>{await i(e,[t.id])},onAttachmentReplace:async(t,n)=>{let r=o.map(e=>e.id===t.id?n.id:e.id);await a(e,r)},onAttachmentsSorted:async t=>{let n=t.map(e=>e.id);await a(e,n)},attachments:o}},ge=(e,n)=>{let{onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:a,onAttachmentsSorted:o,attachments:s}=he(n,(0,t.useBlockAssets)(e));return{onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:a,onAttachmentsSorted:o,attachments:s,appBridge:e}},_e=(0,i.createContext)(null);_e.displayName=`AttachmentsContext`;var ve=({appBridge:e,children:t,assetId:n})=>{let r=ge(e,n);return(0,a.jsx)(_e.Provider,{value:r,children:t})},ye=({blockAssetBundle:e,appBridge:t,children:n,assetId:r})=>{let i=he(r,e);return(0,a.jsx)(_e.Provider,{value:{...i,appBridge:t},children:n})},be=()=>{let e=(0,i.useContext)(_e);if(!e)throw Error(`No AttachmentsContext Provided. Component must be wrapped in an 'AttachmentsProvider' or the 'withAttachmentsProvider' HOC`);return e},xe=(e,t)=>{let n=n=>(0,a.jsx)(ve,{appBridge:n.appBridge,assetId:t,children:(0,a.jsx)(e,{...n})});return n.displayName=`withAttachmentsProvider`,n},Se=e=>e===`IMAGE`?(0,a.jsx)(r.IconImage,{size:`24`}):e===`VIDEO`?(0,a.jsx)(r.IconPlayFrame,{size:`24`}):e===`AUDIO`?(0,a.jsx)(r.IconMusicNote,{size:`24`}):(0,a.jsx)(r.IconDocument,{size:`24`}),Ce=(0,i.forwardRef)(({item:e,isEditing:o,draggableProps:s,transformStyle:c,isDragging:l,isOverlay:u,isLoading:d,onDelete:f,onReplaceWithBrowse:p,onReplaceWithUpload:m,onDownload:h},g)=>{let[_,v]=(0,i.useState)(),[y,{selectedFiles:x}]=(0,t.useFileInput)({multiple:!0,accept:`image/*`}),[S,{results:C,doneAll:w}]=(0,t.useAssetUpload)();(0,i.useEffect)(()=>{x&&S(x[0])},[x]),(0,i.useEffect)(()=>{w&&m(C[0])},[w,C]);let T=d||x&&!w;return(0,a.jsxs)(`button`,{type:`button`,"data-test-id":`attachments-item`,onClick:()=>!_&&h?.(),ref:g,style:{...c,opacity:l&&!u?.3:1,fontFamily:`var(-f-theme-settings-body-font-family)`},className:b([`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-surface-hover focus-visible:tw-outline focus-visible:!-tw-outline-offset-4`,l?`tw-bg-surface-hover`:``]),children:[(0,a.jsx)(`div`,{className:`tw-text-secondary group-hover:tw-text-container-secondary-on-secondary-container`,children:T?(0,a.jsx)(n.LoadingCircle,{size:`small`}):Se(e.objectType)}),(0,a.jsxs)(`div`,{className:`tw-text-small tw-flex-1 tw-min-w-0`,children:[(0,a.jsxs)(`div`,{className:`tw-whitespace-nowrap tw-overflow-hidden tw-text-ellipsis tw-font-bold tw-text-secondary group-hover:tw-text-container-secondary-on-secondary-container`,children:[(0,a.jsx)(`span`,{className:`tw-sr-only`,children:`Download attachment `}),e.title]}),(0,a.jsx)(`div`,{className:`tw-text-secondary`,children:`${e.fileSizeHumanReadable} - ${e.extension}`})]}),o&&(0,a.jsxs)(`div`,{"data-test-id":`attachments-actionbar`,className:b([`tw-flex tw-gap-0.5 group-hover:tw-opacity-100 group-focus-visible:tw-opacity-100 has-[:focus-visible]:tw-opacity-100`,u||_?.id===e.id?`tw-opacity-100`:`tw-opacity-0`]),children:[(0,a.jsx)(n.Button,{aspect:`square`,emphasis:`weak`,"aria-label":`Drag attachment`,className:b([l||u?`tw-cursor-grabbing`:`tw-cursor-grab`,`focus-visible:tw-z-[2]`]),...s,children:(0,a.jsx)(r.IconGrabHandle,{})}),(0,a.jsx)(`div`,{"data-test-id":`attachments-actionbar-flyout`,children:(0,a.jsxs)(n.Dropdown.Root,{open:_?.id===e.id,onOpenChange:t=>v(t?e:void 0),children:[(0,a.jsx)(n.Dropdown.Trigger,{children:(0,a.jsx)(n.Button,{aspect:`square`,emphasis:_?.id===e.id?`default`:`weak`,onPress:e=>{e?.stopPropagation(),e?.preventDefault()},children:(0,a.jsx)(r.IconPen,{size:`20`})})}),(0,a.jsxs)(n.Dropdown.Content,{side:`right`,children:[(0,a.jsxs)(n.Dropdown.Group,{children:[(0,a.jsxs)(n.Dropdown.Item,{"data-test-id":`menu-item`,onSelect:e=>{e?.stopPropagation(),y(),v(void 0)},children:[(0,a.jsx)(r.IconArrowCircleUp,{size:`20`}),`Replace with upload`]}),(0,a.jsxs)(n.Dropdown.Item,{onSelect:e=>{e?.stopPropagation(),p(),v(void 0)},children:[(0,a.jsx)(r.IconImageStack,{size:`20`}),`Replace with asset`]})]}),(0,a.jsx)(n.Dropdown.Group,{children:(0,a.jsxs)(n.Dropdown.Item,{emphasis:`danger`,onSelect:e=>{e?.stopPropagation(),f(),v(void 0)},children:[(0,a.jsx)(r.IconTrashBin,{size:`20`}),`Delete`]})})]})]})})]})]})});Ce.displayName=`AttachmentItem`;var we=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:i,transition:o,isDragging:s}=(0,l.useSortable)({id:e.item.id}),c={transform:i?`translate(${i.x}px, ${i.y}px)`:``,transition:o,zIndex:s?2:1},u={...t,...n};return(0,a.jsx)(Ce,{ref:r,isDragging:s,transformStyle:c,draggableProps:u,...e})},Te=(0,i.forwardRef)(({children:e,...t},i)=>(0,a.jsxs)(n.Button,{ref:i,size:`small`,rounding:`full`,emphasis:`default`,"data-test-id":`attachments-button-trigger`,className:`tw-body-medium`,...t,"aria-haspopup":`menu`,children:[(0,a.jsx)(r.IconPaperclip,{size:`16`}),e,(0,a.jsx)(r.IconCaretDown,{size:`12`})]}));Te.displayName=`AttachmentsButtonTrigger`;var Ee=({items:e=[],onDelete:o,onReplaceWithBrowse:u,onReplaceWithUpload:d,onBrowse:f,onUpload:p,onSorted:m,appBridge:h,triggerComponent:g=Te,isOpen:_,onOpenChange:v})=>{let[y,b]=(0,i.useState)(e),[x,S]=(0,i.useState)(!1),C=(0,s.useSensors)((0,s.useSensor)(s.PointerSensor),(0,s.useSensor)(s.KeyboardSensor)),[w,T]=(0,i.useState)(void 0),[ee,E]=(0,i.useState)(!1),[D,te]=(0,i.useState)(!1),[O,k]=(0,i.useState)([]),[ne,re]=(0,i.useState)(null),ie=(0,t.useEditorState)(h),{openAssetChooser:A,closeAssetChooser:j}=(0,t.useAssetChooser)(h),M=_!==void 0,ae=M?_:x,N=y?.find(e=>e.id===w),P=e.length,F=P>0?`Open attachments, ${P} ${P===1?`attachment`:`attachments`}`:`Add attachments`,[I,{results:L,doneAll:R}]=(0,t.useAssetUpload)({onUploadProgress:()=>!ee&&E(!0)}),z=e=>{(M?v:S)?.(e)};(0,i.useEffect)(()=>{b(e)},[e]),(0,i.useEffect)(()=>{ne&&(E(!0),I(ne))},[ne]),(0,i.useEffect)(()=>{(async()=>{R&&(await p(L),E(!1))})()},[R,L]);let B=()=>{z(!1),A(async e=>{j(),z(!0),te(!0),await f(e),te(!1)},{multiSelection:!0,selectedValueIds:y.map(e=>e.id)})},oe=e=>{z(!1),A(async t=>{z(!0),j(),k([...O,e.id]),await u(e,t[0]),k(O.filter(t=>t!==e.id))},{multiSelection:!1,selectedValueIds:y.map(e=>e.id)})},se=async(e,t)=>{k([...O,e.id]),await d(e,t),k(O.filter(t=>t!==e.id))};return ie||(y?.length??0)>0?(0,a.jsx)(`div`,{"data-test-id":`attachments-flyout-button`,children:(0,a.jsx)(n.Flyout.Root,{open:ae,onOpenChange:e=>z(N?!0:e),children:(0,a.jsxs)(n.Tooltip.Root,{enterDelay:500,children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:(0,a.jsx)(n.Flyout.Trigger,{asChild:!0,"data-test-id":`attachments-button-trigger`,children:(0,a.jsx)(g,{isFlyoutOpen:ae,"aria-label":F,children:(0,a.jsx)(`div`,{"aria-hidden":`true`,children:P>0?P:`Add`})})})}),(0,a.jsx)(n.Flyout.Content,{side:`bottom`,align:`end`,width:`300px`,onEscapeKeyDown:e=>{e.stopPropagation(),z(!1)},children:(0,a.jsxs)(`div`,{className:`tw-w-full`,"data-test-id":`attachments-flyout-content`,children:[y.length>0&&(0,a.jsx)(s.DndContext,{sensors:C,collisionDetection:s.closestCenter,onDragStart:e=>{let{active:t}=e;T(t.id)},onDragEnd:e=>{let{active:t,over:n}=e;if(n&&t.id!==n.id&&y){let e=y.findIndex(e=>e.id===t.id),r=y.findIndex(e=>e.id===n.id),i=(0,l.arrayMove)(y,e,r);b(i),m(i)}T(void 0)},modifiers:[c.restrictToParentElement],children:(0,a.jsx)(l.SortableContext,{items:y,strategy:l.rectSortingStrategy,children:(0,a.jsx)(`div`,{className:`tw-border-b tw-border-b-line tw-relative`,children:y.map(e=>(0,a.jsx)(we,{isEditing:ie,isLoading:O.includes(e.id),item:e,onDelete:()=>o(e),onReplaceWithBrowse:()=>oe(e),onReplaceWithUpload:t=>se(e,t),onDownload:()=>h.dispatch({name:`downloadAsset`,payload:e})},e.id))})})}),ie&&(0,a.jsxs)(`div`,{className:`tw-px-5 tw-py-3`,"data-test-id":`asset-input-placeholder`,children:[(0,a.jsx)(`div`,{className:`tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4`,children:`Add attachments`}),ee||D?(0,a.jsxs)(n.AssetInput.Root,{orientation:`horizontal`,children:[(0,a.jsx)(n.AssetInput.Preview,{children:(0,a.jsx)(n.AssetInput.PreviewLoading,{})}),(0,a.jsx)(n.AssetInput.Title,{children:`Asset`}),(0,a.jsx)(n.AssetInput.Metadata,{children:(0,a.jsx)(n.AssetInput.MetadataItem,{children:(0,a.jsxs)(n.Flex,{align:`center`,gap:.5,children:[D?(0,a.jsx)(r.IconImageStack,{size:16}):(0,a.jsx)(r.IconArrowCircleUp,{size:16}),D?`Loading`:`Uploading`]})})})]}):(0,a.jsxs)(n.AssetInput.Placeholder,{children:[(0,a.jsx)(n.AssetInput.UploadInput,{allowMultiple:!0,onSelect:e=>re(e.target.files)}),(0,a.jsx)(n.AssetInput.BrowseInput,{onBrowse:B})]})]})]})}),(0,a.jsx)(n.Tooltip.Content,{side:`top`,children:`Attachments`})]})})}):null},De=(e,t)=>{let n=[u.FOCUS_VISIBLE_STYLE,`tw-relative tw-inline-flex tw-items-center tw-justify-center`,`tw-h-6 tw-p-1`,`tw-rounded-medium`,`tw-body-medium`,`tw-gap-0.5`,`focus-visible:tw-z-10`];return t?n.push(`tw-bg-container-secondary-active`,`tw-text-container-secondary-on-secondary-container`,e===`grab`?`tw-cursor-grabbing`:`tw-cursor-pointer`):n.push(`hover:tw-bg-container-secondary-hover active:tw-bg-container-secondary-active`,`tw-text-secondary hover:tw-text-container-secondary-on-secondary-container active:tw-text-container-secondary-on-secondary-container`,e===`grab`?`!tw-cursor-grab active:tw-cursor-grabbing`:`tw-cursor-pointer`),b(n)},H=(0,i.forwardRef)(({onClick:e,children:t,forceActiveStyle:n,cursor:r=`pointer`,"data-test-id":i=`base-toolbar-button`,...o},s)=>(0,a.jsx)(`button`,{onClick:e,className:De(r,n),"data-test-id":i,...o,ref:s,children:t}));H.displayName=`BaseToolbarButton`;var Oe=(0,i.forwardRef)(({children:e,isFlyoutOpen:t,...n},i)=>(0,a.jsxs)(H,{forceActiveStyle:t,"data-test-id":`attachments-toolbar-button-trigger`,ref:i,...n,"aria-haspopup":`menu`,children:[(0,a.jsx)(r.IconPaperclip,{size:`16`}),e,(0,a.jsx)(r.IconCaretDown,{size:`12`})]}));Oe.displayName=`AttachmentsToolbarButtonTrigger`;var ke=`attachments`,Ae=({flyoutId:e=ke})=>{let{appBridge:t,attachments:n,onAttachmentsAdd:r,onAttachmentDelete:i,onAttachmentReplace:o,onAttachmentsSorted:s}=be(),{isOpen:c,onOpenChange:l}=me(e),u=V();return(0,a.jsx)(Ee,{onUpload:r,onDelete:i,onReplaceWithBrowse:o,onReplaceWithUpload:o,onSorted:s,onBrowse:r,items:n,appBridge:t,triggerComponent:Oe,isOpen:c&&!u,onOpenChange:l})},je=`Drag or press ↵ to move`,Me=`Move with ↑↓←→ and confirm with ↵`,Ne=({content:e,children:t,open:r,disabled:i})=>i?t:(0,a.jsxs)(n.Tooltip.Root,{enterDelay:300,open:r,children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:t}),(0,a.jsx)(n.Tooltip.Content,{side:`top`,children:(0,a.jsx)(`div`,{children:e})})]}),Pe=({tooltip:e,icon:t,setActivatorNodeRef:n,draggableProps:r})=>{let i=V(),{activatorEvent:o}=(0,s.useDndContext)(),c=o instanceof KeyboardEvent;return(0,a.jsx)(Ne,{...i&&{open:c},content:(0,a.jsx)(`div`,{children:i?Me:e??`Drag or press ↵ to move`}),children:(0,a.jsx)(H,{ref:n,"data-test-id":`block-item-wrapper-toolbar-btn`,forceActiveStyle:i,cursor:`grab`,...r,children:t})})},Fe=({content:e,icon:t,tooltip:r,flyoutId:i,flyoutFooter:o,flyoutHeader:s})=>{let{isOpen:c,onOpenChange:l}=me(i),u=V();return(0,a.jsx)(Ne,{disabled:u||c,content:r,children:(0,a.jsx)(`div`,{className:`tw-flex tw-flex-shrink-0 tw-flex-1 tw-h-6 tw-relative`,children:(0,a.jsxs)(n.Flyout.Root,{open:c&&!u,onOpenChange:l,children:[(0,a.jsx)(n.Flyout.Trigger,{asChild:!0,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-flyout`,forceActiveStyle:c&&!u,children:t})}),(0,a.jsxs)(n.Flyout.Content,{side:`bottom`,align:`end`,padding:`comfortable`,children:[s?(0,a.jsx)(n.Flyout.Header,{children:s}):null,(0,a.jsx)(n.Flyout.Body,{children:e}),o?(0,a.jsx)(n.Flyout.Footer,{children:o}):null]})]})})})},Ie=`menu`,Le=({items:e,flyoutId:t=Ie,tooltip:i=`Options`})=>{let{isOpen:o,onOpenChange:s}=me(t),c=V();return(0,a.jsx)(n.Dropdown.Root,{open:o&&!c,onOpenChange:s,children:(0,a.jsxs)(n.Tooltip.Root,{children:[(0,a.jsx)(n.Tooltip.Trigger,{asChild:!0,children:(0,a.jsx)(n.Dropdown.Trigger,{asChild:!0,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-flyout`,children:(0,a.jsx)(r.IconDotsHorizontal,{size:`16`})})})}),(0,a.jsx)(n.Dropdown.Content,{children:e.map((e,t)=>(0,a.jsx)(n.Dropdown.Group,{children:e.map((e,r)=>(0,a.jsxs)(n.Dropdown.Item,{"data-test-id":`menu-item`,onSelect:()=>{s(!1),e.onClick()},emphasis:e.style||`default`,children:[(0,a.jsx)(`div`,{className:`tw-mr-2`,children:e.icon}),(0,a.jsx)(`span`,{children:e.title})]},`${t}-${r}`))},t))}),(0,a.jsx)(n.Tooltip.Content,{children:i})]})})},Re=({tooltip:e,icon:t,onClick:n})=>{let r=V();return(0,a.jsx)(Ne,{disabled:r,content:e??``,children:(0,a.jsx)(H,{"data-test-id":`block-item-wrapper-toolbar-btn`,onClick:n,children:t})})},ze=({children:e})=>(0,a.jsx)(`div`,{"data-test-id":`block-item-wrapper-toolbar-segment`,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}),Be=({items:e,attachments:t})=>(0,a.jsxs)(`div`,{"data-test-id":`block-item-wrapper-toolbar`,className:`tw-rounded-md tw-bg-surface tw-border tw-border-line-mid tw-divide-x tw-divide-line-mid tw-shadow-lg tw-flex tw-flex-none tw-items-center tw-isolate`,children:[t.isEnabled&&(0,a.jsx)(ze,{children:(0,a.jsx)(Ae,{})}),e.length>0&&(0,a.jsx)(ze,{children:e.map(e=>{switch(e.type){case`dragHandle`:return(0,a.jsx)(Pe,{...e},e.tooltip+e.type);case`menu`:return(0,a.jsx)(Le,{...e},e.tooltip+e.type);case`flyout`:return(0,a.jsx)(Fe,{...e},e.tooltip+e.type);default:return(0,a.jsx)(Re,{...e},e.tooltip+e.type)}})})]}),Ve=(0,i.memo)(({children:e,toolbarItems:t,shouldHideWrapper:n,shouldHideComponent:r=!1,isDragging:o=!1,shouldFillContainer:s,outlineOffset:c=0,shouldBeShown:l=!1,showAttachments:u=!1})=>{let[d,f]=(0,i.useState)(l?[Ie]:[]),p=(0,i.useRef)(null);if(n)return(0,a.jsx)(a.Fragment,{children:e});let m=t?.filter(e=>e!==void 0),h=d.length>0||l;return(0,a.jsx)(ue,{isDragPreview:o,children:(0,a.jsx)(fe,{openFlyoutIds:d,setOpenFlyoutIds:f,children:(0,a.jsxs)(`div`,{ref:p,"data-test-id":`block-item-wrapper`,style:{outlineOffset:c},className:b([`tw-relative tw-group`,s&&`tw-flex-1 tw-h-full tw-w-full`,`hover:tw-outline hover:tw-outline-1 hover:tw-outline-container-highlight-on-highlight-container focus-within:tw-outline focus-within:tw-outline-1 focus-within:tw-outline-container-highlight-on-highlight-container`,h&&`tw-outline tw-outline-1 tw-outline-container-highlight-on-highlight-container`,r&&`tw-opacity-0`]),children:[(0,a.jsx)(`div`,{style:{right:-1-c,bottom:`calc(100% - ${2+c}px)`},className:b([`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`,h&&`tw-opacity-100`]),children:(0,a.jsx)(Be,{attachments:{isEnabled:u},items:m})}),e]})})})});Ve.displayName=`BlockItemWrapper`;var He=({ref:e,disabled:t,onChange:n})=>{(0,i.useEffect)(()=>{if(t||!e.current)return;let r=!1,i=new IntersectionObserver(([e])=>{e.isIntersecting!==r&&(r=e.isIntersecting,n(e.isIntersecting))});return i.observe(e.current),()=>{i.disconnect()}},[e,t,n])},Ue=(0,d.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})),U=Ue.set,W=Ue.get,We=()=>Ue.use,Ge=e=>{if(!e)return!1;let t=e=>e.some(e=>e.text?e.text!==``:e.children?t(e.children):!1);try{return t(JSON.parse(e))}catch{return!1}},Ke=(e=`p`,t=``,n)=>Ge(t)?t:JSON.stringify([{type:e,children:[{text:t,textStyle:e}],align:n}]),qe=(e,t,n)=>e===z.Custom?t:n,Je=(e,t)=>{let n=(0,d.getAboveNode)(e,{match:{type:d.ELEMENT_LINK}});return Array.isArray(n)?t(n[0]):``},Ye=e=>Je(e,e=>e.chosenLink?.searchResult?.link||``),Xe=e=>Je(e,e=>e.url||``),Ze=e=>e.url||e.chosenLink?.searchResult?.link||``,Qe=e=>Je(e,Ze),$e=/^\/(?!\/)\S*$/,G=e=>{if($e.test(e))return e;try{return new URL(e),e}catch{return`https://${e}`}},et=e=>{if($e.test(e))return!0;try{let t=new URL(e);return[`http:`,`https:`,`mailto:`,`tel:`].includes(t.protocol)&&t.pathname!==``}catch{return!1}},K=e=>et(G(e))||e===``,tt=(e,{type:t})=>{let{apply:n,normalizeNode:r}=e;return e.apply=t=>{if(t.type!==`set_selection`){n(t);return}let r=t.newProperties;if(!r?.focus||!r.anchor||!(0,d.isCollapsed)(r)){n(t);return}let i=(0,d.getAboveNode)(e,{at:r,match:{type:(0,d.getPluginType)(e,Z)}});if(i){let[,n]=i,a;(0,d.isStartPoint)(e,r.focus,n)&&(a=(0,d.getPreviousNodeEndPoint)(e,n)),(0,d.isEndPoint)(e,r.focus,n)&&(a=(0,d.getNextNodeStartPoint)(e,n)),a&&(t.newProperties={anchor:a,focus:a})}n(t)},e.normalizeNode=([t,n])=>{if(t.type===(0,d.getPluginType)(e,`button`)){let t=e.selection;if(t&&(0,d.isCollapsed)(t)&&(0,d.isEndPoint)(e,t.focus,n)){let t=(0,d.getNextNodeStartPoint)(e,n);if(t)(0,d.select)(e,t);else{let t=d.Path.next(n);(0,d.insertNodes)(e,{text:``},{at:t}),(0,d.select)(e,t)}}}r([t,n])},(0,d.withRemoveEmptyNodes)(e,(0,d.mockPlugin)({options:{types:t}}))},nt=(e,t,n)=>{(0,d.insertNodes)(e,[ft(e,t)],n)},rt=e=>{if(!e.selection)return;let{isUrl:t,forceSubmit:n}=(0,d.getPluginOptions)(e,Z),r=W.url();if(!(t?.(r)||n))return;let i=W.text(),a=W.buttonStyle(),o=W.newTab()?void 0:`_self`;return U.reset(),it(e,{url:r,text:i,buttonStyle:a,target:o,isUrl:e=>n||!t?!0:t(e)}),setTimeout(()=>{(0,d.focusEditor)(e,e.selection??void 0)},0),!0},q=(e,t)=>(0,d.withoutNormalizing)(e,()=>{if(t?.split){if((0,d.getAboveNode)(e,{at:e.selection?.anchor,match:{type:(0,d.getPluginType)(e,`button`)}}))return(0,d.splitNodes)(e,{at:e.selection?.anchor,match:t=>(0,d.isElement)(t)&&t.type===(0,d.getPluginType)(e,`button`)}),q(e,{at:e.selection?.anchor}),!0;if((0,d.getAboveNode)(e,{at:e.selection?.focus,match:{type:(0,d.getPluginType)(e,`button`)}}))return(0,d.splitNodes)(e,{at:e.selection?.focus,match:t=>(0,d.isElement)(t)&&t.type===(0,d.getPluginType)(e,`button`)}),q(e,{at:e.selection?.focus}),!0}(0,d.unwrapNodes)(e,{match:{type:(0,d.getPluginType)(e,Z)},...t})}),it=(e,{url:t,text:n,buttonStyle:r,target:i,insertTextInButton:a,insertNodesOptions:o,isUrl:s=(0,d.getPluginOptions)(e,Z).isUrl})=>{let c=e.selection;if(!c)return;let l=(0,d.getAboveNode)(e,{at:c,match:{type:(0,d.getPluginType)(e,Z)}});if(a&&l)return e.insertText(t),!0;if(!s?.(t))return;if((0,d.isDefined)(n)&&n.length===0&&(n=t),l)return st(t,e,l,i,r,n),!0;let[u,f]=(0,d.findNode)(e,{at:c,match:{type:(0,d.getPluginType)(e,`button`)}})??[],p=at(e,f,n);if((0,d.isExpanded)(c))return ot(l,e,t,r,i,n),!0;p&&(0,d.removeNodes)(e,{at:f});let m=(0,d.getNodeProps)(u??{}),h=e.selection?.focus.path;if(!h)return;let g=(0,d.getNodeLeaf)(e,h);return n?.length||(n=t),nt(e,{...m,url:t,target:i,children:[{...g,text:n}]},o),!0};function at(e,t,n){return t&&n?.length&&n!==(0,d.getEditorString)(e,t)}function ot(e,t,n,r,i,a){e?q(t,{at:e[1]}):q(t,{split:!0}),lt(t,{url:n,buttonStyle:r,target:i}),ct(t,{url:n,target:i,text:a})}function st(e,t,n,r,i,a){(e!==n[0]?.url||r!==n[0]?.target||i!==n[0]?.buttonStyle)&&(0,d.setNodes)(t,{url:e,target:r,buttonStyle:i},{at:n[1]}),ct(t,{url:e,text:a,target:r})}var ct=(e,{text:t})=>{let n=(0,d.getAboveNode)(e,{match:{type:(0,d.getPluginType)(e,Z)}});if(n){let[r,i]=n;if(t?.length&&t!==(0,d.getEditorString)(e,i)){let n=r.children[0];(0,d.replaceNodeChildren)(e,{at:i,nodes:{...n,text:t},insertOptions:{select:!0}})}}},lt=(e,{url:t,buttonStyle:n,target:r,...i})=>{(0,d.wrapNodes)(e,{type:(0,d.getPluginType)(e,Z),url:t,buttonStyle:n,target:r,children:[]},{split:!0,...i})},ut=(e,t)=>{let n=(0,d.getAboveNode)(e,{match:{type:Z}});return Array.isArray(n)?t(n[0]):``},dt=e=>ut(e,e=>e.url??``),ft=(e,{url:t,text:n=``,buttonStyle:r=`primary`,target:i,children:a})=>({type:(0,d.getPluginType)(e,Z),url:t,target:i,buttonStyle:r,children:a??[{text:n}]}),pt=(e,{focused:t}={})=>{if(W.mode()===`edit`){mt(e);return}ht(e,{focused:t})},mt=e=>{let t=(0,d.findNode)(e,{match:{type:(0,d.getPluginType)(e,Z)}});if(!t)return;let[n,r]=t,i=(0,d.getEditorString)(e,r);U.url(n.url),U.newTab(n.target===void 0),i===n.url&&(i=``),U.text(i),U.isEditing(!0)},ht=(e,{focused:t}={})=>{W.mode()||t&&((0,d.isRangeAcrossBlocks)(e,{at:e.selection})||(0,d.someNode)(e,{match:{type:(0,d.getPluginType)(e,`button`)}})||(U.text((0,d.getEditorString)(e,e.selection)),U.show(`insert`,e.id)))},gt={marginTop:`10px`,marginBottom:`10px`,display:`inline-block`,overflow:`hidden`,textOverflow:`ellipsis`,maxWidth:`100%`,verticalAlign:`middle`,boxSizing:`border-box`,overflowWrap:`normal`},_t={buttonPrimary:{...gt,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)`,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:{...gt,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)`,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:{...gt,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)`,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)`}}},vt=e=>{let{attributes:t,children:n}=e,r=e.element.url||e.element.chosenLink?.searchResult?.link||``,i=e.element.target||`_self`,o=String(e.element.buttonStyle)||`primary`;return(0,a.jsx)(yt,{attributes:t,href:r,target:i,styles:_t[`button${o.charAt(0).toUpperCase()+o.slice(1)}`],children:n})},yt=({attributes:e,styles:t={hover:{}},children:n,href:r=`#`,target:o})=>{let[s,c]=(0,i.useState)(!1);return(0,a.jsx)(`a`,{...e,onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),href:r,target:o,style:s?{...t,...t.hover}:t,children:n})},bt=class extends d.MarkupElement{constructor(e=Z,t=vt){super(e,t)}},xt=(0,i.forwardRef)((e,t)=>{let n=(0,d.useEditorRef)();return(0,a.jsx)(d.ToolbarButton,{ref:t,...e,onMouseDown:e=>{e.preventDefault(),(0,d.focusEditor)(n,n.selection??n.prevSelection??void 0)},onClick:()=>{pt(n,{focused:!0})},children:(0,a.jsx)(d.IconStylingWrapper,{icon:(0,a.jsx)(r.IconButton,{size:16})})})});xt.displayName=`ButtonToolbarButton`;var St=({editorId:e,id:t})=>{let n=(0,d.useEditorState)((0,d.useEventPlateId)(e)),r=!!(0,d.isRangeInSameBlock)(n,{at:n.selection}),i=(0,d.getPluginType)(n,Z),o=!!n?.selection&&(0,d.someNode)(n,{match:{type:i}});return(0,a.jsx)(`div`,{"data-plugin-id":t,children:(0,a.jsx)(xt,{pressed:o,disabled:!r,tooltip:(0,d.getTooltip)(r?`Button\n${(0,d.getHotkeyByPlatform)(`Ctrl+Shift+K`)}`:`Buttons can only be set for a single text block.`)})})},J=`link-plugin`,Y=function(e){return 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}({}),X={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)`},[J]:{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)`},..._t},Ct=()=>{let e=(0,d.useEditorRef)();return(0,a.jsx)(d.FloatingModalWrapper,{padding:`16px`,minWidth:`400px`,"data-test-id":`floating-button-edit`,children:(0,a.jsxs)(`span`,{"data-test-id":`preview-button-flyout`,className:`tw-flex tw-justify-between tw-items-center tw-gap-2`,children:[(0,a.jsx)(`a`,{"data-test-id":`floating-button-edit-url`,href:W.url(),target:`_blank`,rel:`noopener noreferrer`,style:X[J],className:`tw-break-all`,children:W.url()}),(0,a.jsxs)(`span`,{className:`tw-flex tw-gap-2`,children:[(0,a.jsx)(`button`,{onClick:()=>{mt(e)},tabIndex:0,"data-test-id":`edit-button-button`,className:`tw-transition tw-cursor-pointer tw-rounded-medium hover:tw-bg-black-10 tw-p-1`,children:(0,a.jsx)(r.IconPen,{size:16})}),(0,a.jsx)(`button`,{onClick:()=>{q(e),(0,d.focusEditor)(e,e.selection??void 0)},tabIndex:0,"data-test-id":`remove-button-button`,className:`tw-transition tw-cursor-pointer tw-rounded-medium hover:tw-bg-black-10 tw-p-1`,children:(0,a.jsx)(r.IconTrashBin,{size:16})})]})]})})},wt=e=>e.filter(e=>!!e.title?.trim()),Tt=()=>(0,a.jsx)(`div`,{className:`tw-flex tw-justify-center tw-h-10 tw-items-center`,children:(0,a.jsx)(n.LoadingCircle,{size:`small`})}),Et=({section:e,selectedUrl:t,onSelectUrl:n})=>{let i=e.permanentLink===t;return(0,a.jsx)(`button`,{"data-test-id":`internal-link-selector-section-link`,type:`button`,"data-is-active":i,className:`
|
|
2
2
|
tw-py-2 tw-pr-2.5 tw-pl-14 tw-leading-5 tw-cursor-pointer tw-w-full
|
|
3
3
|
${i?`tw-bg-highlight tw-text-highlight-on-highlight hover:tw-bg-highlight-hover:hover hover:tw-text-highlight-on-highlight:hover`:`hover:tw-bg-container-secondary-hover hover:tw-text-container-secondary-on-secondary-container`}`,onClick:()=>n(e.permanentLink),children:(0,a.jsxs)(`div`,{className:`tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-h-6`,children:[(0,a.jsx)(r.IconDocumentText,{size:16}),(0,a.jsx)(`span`,{className:`tw-text-small`,children:e.title}),(0,a.jsx)(`span`,{className:`tw-flex-auto tw-font-sans tw-text-x-small tw-text-right`,children:`Section`})]})})},Dt=({page:e,selectedUrl:t,onSelectUrl:n,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:o})=>{let[s,c]=(0,i.useState)(e.id===r.documentId),[l,u]=(0,i.useState)([]),d=e.permanentLink===t;(0,i.useEffect)(()=>{(async()=>{let t=wt(await o(e.id));u(t)})()},[e.id,o]),(0,i.useEffect)(()=>{e.id===r.pageId&&c(!0)},[r,e.id]);let f=l.length>0;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(`button`,{type:`button`,"data-test-id":`internal-link-selector-page-link`,className:`
|
|
4
4
|
tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-flex tw-w-full
|