efficient-easel 25.1.0 → 26.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -4
- package/dist/chunk-2T22IY3J.js +2 -0
- package/dist/chunk-4FFDGEWA.js +1 -0
- package/dist/{chunk-KFV7N2DJ.js → chunk-56ID6FKZ.js} +1 -1
- package/dist/chunk-5OKOCRXT.js +11 -0
- package/dist/{chunk-ITIVCER6.js → chunk-5QUIXGQU.js} +1 -1
- package/dist/{chunk-6WTWYHC2.js → chunk-6BOOYHHK.js} +4 -4
- package/dist/{chunk-OXOUGEAT.js → chunk-7GGNFLHT.js} +1 -1
- package/dist/{chunk-XTDOSL2M.js → chunk-7PGO4K5M.js} +8 -8
- package/dist/chunk-BA5X67LQ.js +1 -0
- package/dist/chunk-BYONFJVQ.js +2 -0
- package/dist/chunk-CLAADE4J.js +14 -0
- package/dist/chunk-IMAN6IP5.js +4 -0
- package/dist/{chunk-LUHGBFOD.js → chunk-LSGKADNV.js} +3 -3
- package/dist/{chunk-UDWXBS46.js → chunk-O4DQ6O6W.js} +1 -1
- package/dist/{chunk-S6YOIRXQ.js → chunk-Q3VAJMXS.js} +1 -1
- package/dist/{chunk-KF3LT7J2.js → chunk-QAVA4V2C.js} +1 -1
- package/dist/{chunk-U3LTJSBU.js → chunk-R76XMEKT.js} +11 -11
- package/dist/{chunk-FEP6XMNX.js → chunk-STQDOTHF.js} +1 -1
- package/dist/{chunk-62UGN7VM.js → chunk-TOEJCZUO.js} +1 -1
- package/dist/chunk-TTCUC2Q3.js +1 -0
- package/dist/{chunk-IW5QXREH.js → chunk-VXAGXHKI.js} +40 -40
- package/dist/{chunk-XLC7HWW3.js → chunk-WOA775T4.js} +1 -1
- package/dist/fields/index.js +1 -1
- package/dist/panel/index.d.ts +63 -2
- package/dist/panel/index.js +1 -1
- package/dist/panel/panel.css +46 -0
- package/dist/pick/index.d.ts +16 -195
- package/dist/pick/index.js +1 -1
- package/dist/pick/pick.css +6 -196
- package/dist/screen/components/AddBlockRow.js +1 -1
- package/dist/screen/components/AddSidePanel.js +1 -1
- package/dist/screen/components/NodeContextMenu.js +1 -1
- package/dist/screen/components/PageEditGuardNotices.js +1 -1
- package/dist/screen/components/ScreenChrome.js +1 -1
- package/dist/screen/components/ScreenDocumentContext.js +1 -1
- package/dist/screen/components/ScreenMount.js +1 -1
- package/dist/screen/components/ScreenStoreProvider.js +1 -1
- package/dist/screen/components/SectionScreenShell.js +17 -17
- package/dist/screen/components/usePartBridge.js +1 -1
- package/dist/screen/index.js +1 -1
- package/dist/screen/lib/document/block-set-host.js +1 -1
- package/dist/screen/lib/document/box-fields.d.ts +44 -6
- package/dist/screen/lib/document/box-fields.js +1 -1
- package/dist/screen/lib/document/button-fields.d.ts +97 -0
- package/dist/screen/lib/document/button-fields.js +1 -0
- package/dist/screen/lib/document/device-fields.js +1 -1
- package/dist/screen/lib/document/image-fields.d.ts +118 -0
- package/dist/screen/lib/document/image-fields.js +5 -0
- package/dist/screen/lib/document/style-clipboard.js +1 -1
- package/dist/screen/lib/document/style-fields.d.ts +109 -0
- package/dist/screen/lib/document/style-fields.js +1 -0
- package/dist/screen/lib/document/use-section-ops.js +1 -1
- package/dist/screen/lib/screen-parts.js +1 -1
- package/dist/screen/words.d.ts +22 -1
- package/dist/screen/words.js +1 -1
- package/dist/strings/index.d.ts +12 -9
- package/dist/strings/index.js +2 -2
- package/dist/text-styles/index.d.ts +3 -3
- package/dist/text-styles/index.js +37 -37
- package/dist/{words-fbR9IwxH.d.ts → words-BrN08Fup.d.ts} +16 -1
- package/package.json +19 -1
- package/dist/chunk-ERB6FAZT.js +0 -2
- package/dist/chunk-H6BER2EU.js +0 -1
- package/dist/chunk-KVIEUWTX.js +0 -11
- package/dist/chunk-OFBZOI6W.js +0 -1
- package/dist/chunk-SC6E3UUS.js +0 -13
- package/dist/chunk-U6LJ5UKD.js +0 -6
- package/dist/words-DWvCJXwR.d.ts +0 -51
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{styleClipboardOf as e}from"./chunk-BA5X67LQ.js";import{markedTreeNodeId as n,revealSelectedTreeRow as t,sameSelector as o}from"./chunk-UMBNBCL4.js";import{cloneNodeWithFreshIds as r}from"./chunk-OXZDSOZV.js";import{dedupeSlotChildren as i}from"./chunk-7OCEPOEJ.js";import{scrollPreviewToSection as l,gotoPreviewSlide as s}from"./chunk-LUOY3A3Q.js";import{useEaselKeyTarget as d,useEaselUndoKeys as a,useEaselSaveKey as c,editorRootFocus as p}from"./chunk-UCZQWQNS.js";import{SlotChildActionsProvider as u}from"./chunk-KCBEE2MC.js";import{screenStorageKeys as f,DEFAULT_PANEL_W as h,clampPanelWidth as m}from"./chunk-6EDVZBUO.js";import{usePartBridge as g}from"./chunk-O4DQ6O6W.js";import{useSectionOps as y}from"./chunk-WOA775T4.js";import{PageEditGuardNotices as v}from"./chunk-TOEJCZUO.js";import{ScreenSaveIcon as b,ScreenMainButton as k}from"./chunk-PVBDKBJB.js";import{useBrowserOffline as S}from"./chunk-RKTF5XLP.js";import{useScreenDocument as w}from"./chunk-BYONFJVQ.js";import{requestMediaPick as x}from"./chunk-JIP5JNRB.js";import{AddChildRow as z}from"./chunk-5545A3PC.js";import{AddSidePanel as C}from"./chunk-7PGO4K5M.js";import{keepsSharedSections as O,sharedSectionsOf as B}from"./chunk-N3MJOHAG.js";import{PanelHideButton as N,SidePanelHead as I,PanelShowStrip as P}from"./chunk-SBVIW3KJ.js";import{offeredChoices as T}from"./chunk-RUQOIQWI.js";import{useScreenSaveSwitch as $,useScreenNodeKeys as M,useScreenPinned as j,useScreenDocumentLabel as A,useScreenCanvasFrame as L,useScreenInspectorPanel as E,useScreenDevices as R,useScreenPickFollowsSelection as D,useScreenLeftView as F,SELECTION_MODE as V,isSelectionMode as W,sameInspectorMode as H,useScreenBridges as U,useScreenBlockRules as J,useScreenBlockLook as Q,useScreenStorageNamespace as X,useScreenNotify as Y,useScreenCanvasHead as K,isSlotMode as G,useScreenStyleClipboard as Z,useScreenDocumentPass as _,useScreenCanvasDrag as q,ScreenCanvasTargetProvider as ee,isPinnedFirst as ne,isPinnedLast as te,screenSlotsOf as oe,shownChildSlotsOf as re}from"./chunk-LSGKADNV.js";import{MediaPopup as ie}from"./chunk-T2RINM7R.js";import{useMediaPanel as le,usePanelPick as se,useMediaBrowsing as de,useOpenMediaBrowse as ae,useMediaPlace as ce}from"./chunk-NCXYC7WI.js";import{useNodeClipboard as pe,useNodeContextMenu as ue}from"./chunk-STQDOTHF.js";import{useEaselSession as fe}from"./chunk-YM4UEGBV.js";import{useEaselHost as he,useHostEscape as me}from"./chunk-LX23TCTP.js";import{LayersIcon as ge,MediaIcon as ye}from"./chunk-XFYFKITX.js";import{DEFAULT_SCREEN_WORDS as ve}from"./chunk-Q3VAJMXS.js";import{heldStyle as be,styleShortcut as ke}from"./chunk-CWELHADJ.js";import{DEFAULT_STYLE_CLIPBOARD_WORDS as Se}from"./chunk-6WY6ZXJG.js";import{rootRowName as we,slotChildRowName as xe,slotChildRenameProp as ze,sectionRenameProp as Ce}from"./chunk-5NHQ452C.js";import{ROOT_ZONE as Oe,blockNodeActions as Be,TREE_MAX_DEPTH as Ne,childSlotsOf as Ie,slotFieldsOf as Pe,newNodeId as Te,slotChildrenIn as $e,nestsInTree as Me}from"./chunk-TCAAOYQY.js";import{useEasel as je,useEaselApi as Ae,CanvasPartsContext as Le,partHasOwnBox as Ee,CanvasPassThroughContext as Re,CanvasSharedContext as De}from"./chunk-BBD3FLU3.js";import{TreeRow as Fe,Subtree as Ve,LayersTree as We,TreeGroupLabel as He,TreeRowAction as Ue,TreeSeam as Je}from"./chunk-WHS6Y55E.js";import{DEFAULT_TREE_WORDS as Qe}from"./chunk-K56YDHYQ.js";import{DEFAULT_NODE_MENU_WORDS as Xe}from"./chunk-WK3AFPXY.js";import{toItemSelector as Ye,useNodeOps as Ke,clickPick as Ge}from"./chunk-QTHQPJWA.js";import{EaselTopBar as Ze,EaselIconButton as _e,TopBarCluster as qe,DeviceSwitch as en,InspectorIconButton as nn,PanelResizeHandle as tn,MAX_PANEL_W as on,MIN_PANEL_W_BY_SIDE as rn,panelWidthVars as ln}from"./chunk-VBEVZZTV.js";import{DEFAULT_NOTICE_WORDS as sn,DEFAULT_CHROME_WORDS as dn}from"./chunk-AJSDWWJW.js";import{holderOf as an,nameOrSomeone as cn}from"./chunk-YYD257TD.js";import{DEFAULT_LOCK_WORDS as pn}from"./chunk-RE4LP46F.js";import{useWords as un}from"./chunk-MFIRYGHW.js";import{insertSeams as fn,CanvasDragLayer as hn,CanvasInsert as mn}from"./chunk-SQTVXE5D.js";import{DEFAULT_DRAG_WORDS as gn}from"./chunk-TQ5Y6S2X.js";import{createDragSession as yn,useTreeDrag as vn,gapToMoveIndex as bn}from"./chunk-3XECMGXX.js";import{useCanvasFrame as kn,LIST_SELECTOR as Sn,BLOCK_SELECTOR as wn,useCanvasTyping as xn,useCanvasEvent as zn}from"./chunk-TOKMFZPB.js";import{nodeIdAt as Cn,frameRectToHost as On,BLOCK_ATTRIBUTE as Bn,drawnBox as Nn}from"./chunk-FR7EEKFF.js";import{queryMainCopy as In}from"./chunk-7UFKEX72.js";import{ROOT_ID as Pn,ROOT_SLOT as Tn,zoneKey as $n,parseZoneKey as Mn,find as jn,DataError as An}from"./chunk-EUFDQ4KL.js";import{useRef as Ln,useMemo as En,useState as Rn,useEffect as Dn,useCallback as Fn,useLayoutEffect as Vn,useContext as Wn,Fragment as Hn,useId as Un}from"react";import{ColoredBadge as Jn,Button as Qn,Tabs as Xn,toast as Yn,readMediaFileDrag as Kn,Tooltip as Gn,groupColors as Zn,Dialog as _n,FormField as qn,Input as et,MEDIA_FILE_DRAG_TYPE as nt}from"efficient-shell/ui";import{UndoIcon as tt,RedoIcon as ot,RefreshIcon as rt,AddIcon as it,TrashIcon as lt,EyeOffIcon as st,EyeIcon as dt,SharedIcon as at,DuplicateIcon as ct}from"efficient-shell/icons/efficient";import{jsx as pt,jsxs as ut,Fragment as ft}from"react/jsx-runtime";var ht="media-file";function mt({name:e,onMake:n,onCancel:t}){const o=un("screen",ve).shared,[r,i]=Rn(e),[l,s]=Rn(!1),d=Un(),a=Ln(null),c=async()=>{const e=r.trim();if(e&&!l){s(!0);try{await n(e)}finally{s(!1)}}};/* @__PURE__ */
|
|
2
2
|
return pt(_n,{open:!0,size:"sm",title:o.makeShared,description:o.makeSharedHint,onClose:t,initialFocus:a,footer:/* @__PURE__ */ut(ft,{children:[
|
|
3
|
-
/* @__PURE__ */pt(
|
|
4
|
-
/* @__PURE__ */pt(
|
|
5
|
-
/* @__PURE__ */pt(
|
|
6
|
-
/* @__PURE__ */pt("span",{className:"es-band-tab-mark",children:/* @__PURE__ */pt(at,{size:12})}),e.label]})}):/* @__PURE__ */pt(
|
|
3
|
+
/* @__PURE__ */pt(Qn,{variant:"secondary",onClick:t,children:o.cancel}),
|
|
4
|
+
/* @__PURE__ */pt(Qn,{variant:"primary",loading:l,disabled:!r.trim(),onClick:()=>{c()},children:o.makeShared})]}),children:/* @__PURE__ */pt("form",{onSubmit:e=>{e.preventDefault(),c()},children:/* @__PURE__ */pt(qn,{label:o.name,htmlFor:d,children:/* @__PURE__ */pt(et,{id:d,ref:a,value:r,onChange:e=>i(e.target.value)})})})})}var gt=/* @__PURE__ */new WeakSet;function yt(e,n,t){const o=jn(e,n,t);if(!o)return null;const r=o.path.find(e=>"root"!==e.parentId);return r?r.parentId:t}function vt({canvas:e,tabs:n,onSelect:t}){const o=Ln(null),[r,i]=Rn({}),l=n.map(e=>`${e.id}:${e.below?1:e.above?2:0}`).join("|");return Vn(()=>{const t=e?.document,r=e?.window,l=e?.frame;if(!t||!r||!l||0===n.length)return void i({});let s=0;const d=()=>{s=0;const e=o.current;if(!e)return;const d=On(l,{left:0,top:0,width:r.innerWidth,height:r.innerHeight},e),a={};for(const o of n){const n=In(t,`[${Bn}="${r.CSS?.escape?r.CSS.escape(o.id):o.id}"]`),i=n?Nn(n):null;if(!i||0===i.height){a[o.id]=null;continue}const s=On(l,{left:i.left,top:i.top,width:i.width,height:i.height},e),c=s.top+s.height;if(c<d.top||s.top>d.top+d.height){a[o.id]=null;continue}const p=!0===o.above&&s.top-4>d.top,u=o.below?c+4:p?s.top-4:Math.max(s.top,d.top)+6;a[o.id]={left:Math.max(s.left,d.left)+(o.above?0:6),top:u,above:p}}i(a)},a=()=>{s||(s=r.requestAnimationFrame(d))};d(),r.addEventListener("scroll",a,!0),r.addEventListener("resize",a);const c=new r.MutationObserver(a);return c.observe(t.body,{childList:!0,subtree:!0,attributes:!0}),()=>{s&&r.cancelAnimationFrame(s),r.removeEventListener("scroll",a,!0),r.removeEventListener("resize",a),c.disconnect()}},[e,l]),/* @__PURE__ */pt("div",{ref:o,className:"es-band-tabs","aria-hidden":"true",children:n.map(e=>{const n=r[e.id];return n?/* @__PURE__ */pt("span",{className:"es-band-tab"+(n.above?" is-above":""),"data-band-tab":e.id,style:{left:n.left,top:n.top},onClick:n=>{n.stopPropagation(),t(e.id)},children:e.reach?
|
|
5
|
+
/* @__PURE__ */pt(Gn,{content:e.reach,children:/* @__PURE__ */ut(Jn,{colorClass:Zn("success","solid"),size:"sm",children:[
|
|
6
|
+
/* @__PURE__ */pt("span",{className:"es-band-tab-mark",children:/* @__PURE__ */pt(at,{size:12})}),e.label]})}):/* @__PURE__ */pt(Jn,{colorClass:Zn("info","solid"),size:"sm",children:e.label})},e.id):null})})}function bt({expand:e}){/* @__PURE__ */
|
|
7
7
|
return pt("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,strokeLinecap:"round",strokeLinejoin:"round",children:/* @__PURE__ */ut(ft,e?{children:[
|
|
8
8
|
/* @__PURE__ */pt("path",{d:"M8 9l4-4 4 4"}),
|
|
9
9
|
/* @__PURE__ */pt("path",{d:"M8 15l4 4 4-4"})]}:{children:[
|
|
10
10
|
/* @__PURE__ */pt("path",{d:"M8 4l4 4 4-4"}),
|
|
11
11
|
/* @__PURE__ */pt("path",{d:"M8 20l4-4 4 4"}),
|
|
12
|
-
/* @__PURE__ */pt("path",{d:"M5 12h14"})]})})}var kt=`${Sn}, ${wn}`;function St(e,n,t){const o=t-n;if(o<6)return null;if(o<24)return{top:Math.round((n+t)/2),height:Math.round(o)};return{top:Math.round(Math.min(Math.max(e,n+12),t-12))}}var wt="__rungs",xt=e=>"template"===e.kind?e.template.id:"shared"===e.kind?e.section.id:"preset"===e.kind?e.preset.key:e.type;var zt="screen:band",Ct={duplicate:!0,delete:!0},
|
|
13
|
-
return new Set}});
|
|
14
|
-
return pt("input",{className:"es-tree-rename",defaultValue:o,autoFocus:!0,"aria-label":oo.rename,onClick:e=>e.stopPropagation(),onBlur:e=>r(e.currentTarget.value,!0),onKeyDown:e=>{"Enter"===e.key?(e.preventDefault(),r(e.currentTarget.value,!0)):"Escape"===e.key&&(e.preventDefault(),r("",!1))}},t)},
|
|
15
|
-
return pt(Ue,{kind:"eye",label:r?oo.showNamed({name:o}):oo.hideNamed({name:o}),onClick:()=>Sl(e,n,t),children:/* @__PURE__ */pt(r?st:dt,{size:14,strokeWidth:1.8,strokeLinecap:void 0,strokeLinejoin:void 0})})},kl=e=>nd(Be,e),Sl=(e,n,t)=>{bo.replaceComponent(e,n,{...t,props:{...t.props,_hidden:!t.props._hidden}})},wl=e=>Pe(Ut,e),xl=e=>Ie(Ut,e),zl=e=>gr.slotsOf?Ei(e).map(n=>({slot:n.slot,rung:n.rung?n:null,kids:Te(e,n.slot)})):[{slot:null,rung:null,kids:re(Ut,e)}],Cl=e=>gr.slotsOf?zl(e).flatMap(e=>e.kids):re(Ut,e),Bl=e=>Boolean(gr.slotsOf)&&Ei(e).some(e=>e.rung),Nl=(e,n,t)=>Sr(e.type,n,t??void 0,xr(e)),Ol=(e,n,t)=>{const o=Me(Ut,e.type,n)&&(t||Cl(e).length>0||Bl(e));return{collapsible:o,folded:o&&Ur(String(e.props.id))}},Il=(e,n,t)=>zl(e).flatMap(o=>{const r=o.rung?n+1:n,i=o.kids.flatMap(({child:e})=>Ol(e,r,t(e.type)).collapsible?[String(e.props.id),...Il(e,r+1,t)]:[]);return o.rung?[`${e.props.id}:${o.rung.slot}`,...i]:i}),Pl=e=>Cl(e).length>0||Bl(e)||Boolean(Sr(e.type)),$l=e=>Boolean(Sr(e)),Tl=(e,n,t,o)=>{if(or(V),Sr(o)?.spec?.slider){const t=e.split(":")[0];s(t,n),bo.select({index:n,zone:e}),l(t)}else bo.select({index:n,zone:e}),l(t)},Ml=(e,n,t,o,r)=>{const i=`${e}:${n}`;bo.insertComponent(i,t,o),Sr(r)?.spec?.slider?requestAnimationFrame(()=>{s(e,o),bo.select({index:o,zone:i})}):bo.select({index:o,zone:i})},jl=Ln(/* @__PURE__ */new Set);Fn(()=>{hi.forEach(e=>{const n=Sr(e.type)?.spec;if(!n)return;const t=e.props.id;if(jl.current.has(t))return;jl.current.add(t);if((Array.isArray(e.props[n.slot])?e.props[n.slot]:[]).length>0)return;if(n.skipSeed?.(e.props))return;const o=`${t}:${n.slot}`,r=n.legacy?.(e.props)??[];(r.length?r:n.seeds(Oi)).forEach((e,t)=>go.seedChild(o,t,n.childType,e))})},[hi,go,Oi]);const El=Ln(/* @__PURE__ */new Set);Fn(()=>{hi.forEach((e,n)=>{const t=e.props.id;if(El.current.has(t))return;const o=r(e,wl(e.type));El.current.add(t),o&&go.replaceComponent(Be,n,{...e,props:o})})},[hi,go]),_(go,Ut);const Ll=hi.findIndex(eo),Al=Ll>=0?hi[Ll]:null,Rl=no?hi.findIndex(qt):-1,Fl=Rl>=0?hi[Rl]:null,Dl=Xt.groupTab,Vl=An(()=>Dl?e=>Gt(e.type):void 0,[Dl]),Wl=Boolean(Xt.groupBadge),Hl=Xt.sharedReach,Ul=e=>Hl?.(e)??void 0,Xl=An(()=>Hl?new Set(hi.filter(e=>Ul(e)).map(e=>String(e.props.id))):null,[hi,Hl]),Yl=An(()=>Xl?e=>Xl.has(e):void 0,[Xl]),Jl=Xt.first?Hl?.({type:Xt.first,props:{id:""}})??void 0:void 0,Ql=Xt.groupBadge?/* @__PURE__ */pt("span",{className:"es-tree-group-badge",children:/* @__PURE__ */pt(Xn,{tone:"info",size:"xs",children:Xt.groupBadge})}):void 0,Gl=hi.find(e=>e.type===Jt)??null,Kl=hi.find(e=>e.type===Qt)??null,Zl=Ll>=0?Ll:hi.length,_l=[];hi.forEach(e=>{eo(e)||(Pl(e)&&_l.push(String(e.props.id)),_l.push(...Il(e,1,$l)))}),Al&&(_l.push(String(Al.props.id)),_l.push(...Il(Al,1,$l)));const ql=_l.length>0&&_l.every(e=>Ar.has(e)),es=e=>{const n=zr.blockRowName(e,Ni);return zr.rowName?zr.rowName(e,"block",n):n},ns=(e,n,t,o)=>{const r=Mi(e)[t];if(!r)return;const i={...Mn(e),index:t},l={...Mn(n),index:Math.min(Math.max(o,0),Mi(n).length)},s=bn(i,l);if(e!==n||s!==t)try{ki.move(String(r.props.id),{...l,index:s})}catch(e){if(!(e instanceof En))throw e}},ts=e=>{const n=/* @__PURE__ */new Set,t=e=>{for(const{child:o,zone:r}of xl(e))n.add(r),t(o)};for(const t of wl(e.type))n.add(`${e.props.id}:${t}`);return t(e),n},os=e=>{let n=e.slice(0,e.indexOf(":"));for(let e=0;e<64;e++){const e=$i.get(n);if(!e)return null;if(e.zone===Be)return n;n=e.zone.slice(0,e.zone.indexOf(":"))}return null},rs=e=>{const n=e.slice(0,e.indexOf(":")),t=hi.find(e=>Gt(e.type)&&String(e.props.id)===n);return t&&Kt(n)===e?t:null},is=(e,n)=>{const t=rs(e);return!t||(!Xt.groupAccepts||Xt.groupAccepts(t.type,n,Mi(e).length))},ls=(e,n,t)=>{if(e.rung){const t=ji(e.rung.nodeId),o=t?Ei(t).filter(e=>e.rung).length:0;return n.parentId===e.rung.nodeId&&n.slot===wt&&n.index>=0&&n.index<=o}if(n.slot===wt)return!1;if(e.add)return cs(e.add,n);const o=Tn(n);if(Gt(e.type))return!1;const r=rs(o),i=rs(e.zone);if(r||i)return!(!r||!i)&&(!(r!==i&&!is(o,e.type))&&(n.index>=0&&n.index<=Mi(o).length));if(e.zone===Be||o===Be){if(e.zone!==o)return!1;const{floor:t,cap:r}=mi();return n.index>=t&&n.index<=r}if(n.index<0||n.index>Mi(o).length)return!1;if(e.zone===o)return!0;const l=Al&&!Xt.lastIsOpen?String(Al.props.id):null;return(!l||os(e.zone)!==l&&os(o)!==l)&&((e,n,t,o)=>{if(e===n)return!0;const r=o??Mi(e)[t];if(!r)return!1;const i=n.split(":")[0],l=$i.get(i),s=l?Mi(l.zone)[l.index]:void 0;if(!s)return!1;if(!o&&ts(r).has(n))return!1;const d=Sr(s.type,br(Ft?.data,s.type,i),n.slice(n.lastIndexOf(":")+1),xr(s));return!!d&&(!!(d.choices?d.choices.some(e=>e.type===r.type):d.spec?.childType===r.type)&&!d.spec?.addBlocked?.(Mi(n),r))})(e.zone,o,e.index,t)},ss=(e,n)=>{const t=Tn(e.from),o=e.node;return t===Tn(n)?is(t,o.type):ls({id:String(o.props?.id??""),zone:t,index:-1,type:o.type},n,o)},ds=e=>{const n=e.slice(0,e.indexOf(":")),t=$i.get(n),o=t?Mi(t.zone)[t.index]:void 0;if(!t||!o)return null;const r=Sr(o.type,br(Ft?.data,o.type,n),e.slice(e.lastIndexOf(":")+1),xr(o));if(!r||`${n}:${r.slot}`!==e)return null;if("footer"===r.source)return null;const i=$(r.choices??(r.spec?[{type:r.spec.childType,label:Ni(r.spec.childType)}]:[])),l=Li(e);return{parent:o,parentId:n,target:r,choices:i,parentName:l?l.slot.label:fl(o,t.zone===Be)}},as=(e,n)=>{if("section"!==e.kind)return e;const t=Tn(n);return t===Be||rs(t)?e:ds(t)?.choices.some(n=>n.type===e.type)?{kind:"block",type:e.type}:e},cs=(e,n)=>{const t=as(e,n),o=Tn(n);if("shared"===t.kind){if(o!==Be||!Xt.shared?.nodeOf(t.section))return!1;const{floor:e,cap:r}=mi();return n.index>=e&&n.index<=r}if("block"!==t.kind){if(rs(o)){if("preset"===t.kind)return!1;const e="section"===t.kind?t.type:t.template.node.type;return is(o,e)&&n.index>=0&&n.index<=Mi(o).length}if(o!==Be)return!1;const{floor:e,cap:r}=mi();return n.index>=e&&n.index<=r}if(o===Be)return!1;const r=ds(o);return!(!r||!r.choices.some(e=>e.type===t.type))&&!r.target.spec?.addBlocked?.(Mi(o))},ps=(e,n)=>{const t=as(e,n);if("block"!==t.kind&&rs(Tn(n)))return void((e,n,t)=>{const o="section"===e.kind?e.type:"template"===e.kind?e.template.node.type:null;if(o&&is(n,o)){if("section"===e.kind)bo.insertComponent(n,e.type,t);else{if("template"!==e.kind)return;bo.insertNode(n,t,vi(e.template.node))}or(V),bo.select({index:t,zone:n})}})(t,Tn(n),n.index);if("section"===t.kind)return void al(t.type,n.index);if("template"===t.kind)return void((e,n,t)=>{const o=ll(t),r=bo.insertNode(Be,o,n);dl(o,r,e)})(t.template.name,vi(t.template.node),n.index);if("preset"===t.kind)return void((e,n,t)=>{const o=n({nodeDefaults:Oi,newNodeId:$e,sectionLabel:Ii,blockIsOffered:wr});if(!o)return;const r=ll(t),i=bo.insertNode(Be,r,o);dl(r,i,e)})(t.preset.label,t.preset.insert,n.index);if("shared"===t.kind){const e=Xt.shared?.nodeOf(t.section);if(!e)return;const o=ll(n.index);return void(ki.restore(e,{parentId:Pn,slot:$n,index:o})&&dl(o,e.props.id,t.section.title))}const o=Tn(n),r=ds(o);r&&(r.target.spec?Ml(r.parentId,r.target.slot,t.type,n.index,r.parent.type):((e,n,t)=>{bo.insertComponent(e,n,t),or(V),bo.select({index:t,zone:e})})(o,t.type,n.index))},us=(e,n)=>{e.media?function(e){const n=Ks();if(!n||!Js)return;_s(n).then(n=>{n&&function(e,n){if(!Js)return;const t=Js.create(e,{nodeDefaults:Oi,newNodeId:$e,sectionLabel:Ii,blockIsOffered:wr}),o=Tn(n);if(o===Be){const e=ll(n.index),o=bo.insertNode(Be,e,t);return void dl(e,o,Ii(t.type))}bo.insertNode(o,n.index,t),or(V),bo.select({index:n.index,zone:o})}(n,e)})}(n):e.rung?Wi(e.rung.nodeId,e.index,n.index):e.add?ps(e.add,n):e.zone===Be?sl(e.index,n.index):ns(e.zone,Tn(n),e.index,n.index)},[fs]=Rn(()=>yn()),hs=vn({keyOf:e=>e.id,readOnly:Boolean(Tt),session:fs,canDrop:ls,onDrop:us,onStep:(e,n)=>{e.rung?Wi(e.rung.nodeId,e.index,n<0?e.index-1:e.index+2):e.zone===Be?((e,n)=>{const t=Ii(hi[e]?.type??""),o=sl(e,n<0?e-1:e+2);if(!o.moved)return void Gr(n<0?oo.sectionFirst({name:t}):oo.sectionLast({name:t}));const{floor:r,cap:i}=mi();Gr(oo.sectionMoved({name:t,n:o.dest-r+1,total:i-r}))})(e.index,n):ns(e.zone,e.zone,e.index,n<0?e.index-1:e.index+2)}}),ms=Dn(e=>{const{floor:n,cap:t}=mi(),o=[];for(const r of e.nodes){const e=Tn(r.place),i=Mi(e)[r.place.index];if(!i||String(i.props.id)!==r.id)continue;if(qt(i)||eo(i)||yr(i.type,i))continue;if(Gt(i.type))continue;const l=Boolean(rs(e)),s=e===Be||l;e===Be&&t-n<2||o.push({key:r.id,item:{id:r.id,zone:e,index:r.place.index,type:i.type},box:r.box,label:s?Ii(i.type):Xi(i),from:r.place})}const r=e.zones.flatMap(e=>{const n=Tn(e.list);if(n===Be&&0===e.children.length)return[{...e,addLabel:oo.addSection,addAlways:!0}];const t=ds(n),o=t?.target.spec?.addLabel;return e.children.length>0||Boolean(t?.choices.length)||Boolean(rs(n))?[o?{...e,addLabel:o}:e]:[]}),i=r.flatMap(e=>{const n=Tn(e.list),t=n===Be||rs(n)?null:ds(n);return t?.choices.length?fn(e,t.target.spec?.addLabel??oo.addBlockHere):[]});return{sources:o,zones:r,seams:i}},[Ft.data]),gs=null==Wt?.props.id?null:String(Wt.props.id),ys=Wn(Le),vs=ys?.selected()&&Wo?.document&&gs?ys.selectedPart?.(Wo.document)??null:null,bs=vs&&gs&&Ae(Ft.data,Ut,gs,vs)?vs:null,ks=bs?.label?{element:bs.element,label:bs.label}:null,Ss=null!==bs,ws=Dn(e=>{const n=Ut,t=e=>!e.item.rung&&null!==jn(Ft.data,n,e.item.id),o=e[e.length-1];if(!t(o))return o;const r=n=>e.find(e=>t(e)&&e.item.id===n),i=r(gs);return i?Ss?null:i:r(Ke(Ft.data,n,o.item.id,gs,Vl))??o},[Ft.data,Ut,gs,Vl,Ss]),[xs,zs]=Rn(null),[Cs,Bs]=Rn(null),Ns=zr.canvasTab,Os=Boolean(Dl||Hl||Ns);zn(Wo,"mouseover",e=>{if(!Os)return;const n=Cn(e.target),t=n?yt(Ft.data,Ut,n):null;t!==xs&&zs(t),Ns&&n!==Cs&&Bs(n)}),zn(Wo,"mouseout",e=>{Os&&!e.relatedTarget&&(zs(null),Bs(null))});const Is=e=>qt(e)||eo(e)||Gt(e.type),Ps=e=>{const n=Gt(e.type)?Ni(e.type):qt(e)?oo.header:eo(e)?oo.footer:null;return null===n?Pi(e):zr.rowName?zr.rowName(e,"section",n):n},$s=[];if(Os){const e=gs?yt(Ft.data,Ut,gs):null;for(const n of/* @__PURE__ */new Set([e,xs])){const e=n?hi.find(e=>String(e.props.id)===n):void 0;if(!e)continue;const t=qt(e)||e.type===Jt,o=Ul(e);if(o){$s.push({id:String(e.props.id),label:Ps(e),below:t,reach:o});continue}if(!Dl||!Is(e))continue;const r=Dl(e);r&&$s.push({id:String(e.props.id),label:r,below:t})}for(const e of Ns?/* @__PURE__ */new Set([gs,Cs]):[]){const n=e?ji(e):void 0,t=n?Ns(n):null;t&&!$s.some(n=>n.id===e)&&$s.push({id:e,label:t,below:!1,above:!0})}}const Ts=fe(),Ms=Ln(null);Fn(()=>{const e=Xt.changeNotice;if(!e)return;const n=JSON.stringify(hi.filter(Is)),t=Ms.current;if(Ms.current={doc:Un,bands:n,index:Vt.index},!t||t.doc!==Un||t.bands===n)return;Vt.hasPast&&Vt.index>=t.index&&!gt.has(Ts)&&(gt.add(Ts),Gr(e,"success",{action:{label:oo.bar.undo,onClick:()=>Vt.back()},duration:8e3}))},[hi]);const js=e=>{or(V),bo.select(e.zone===Be?{index:e.index}:{index:e.index,zone:e.zone})},Es=q(),Ls=()=>({data:Ft.data,device:Oo,ops:bo,inspector:fr}),As=Es?.model,Rs=An(()=>As?e=>As(e,ms(e),Ls()):ms,[As,ms,Oo]),Fs=Es?.measure,Ds=Fs?(e,n)=>Fs(e,n,Ls()):void 0,Vs=Es?.canDrop,Ws=Vs?(e,n)=>Vs(e,n,ls,Ls()):ls,Hs=Es?.drop,Us=Hs?(e,n)=>Hs(e,n,us,Ls()):us,Xs=Es?.pick,Ys=Xs?e=>Xs(e,js,Ls()):js,Js=Es?.media??null,Qs=Ln(null),Gs=An(()=>Js?{id:ht,zone:"",index:-1,type:Js.adds.type,add:{kind:Js.adds.kind,type:Js.adds.type},media:!0}:null,[Js]);Fn(()=>{if(!Gs||Tt||"undefined"==typeof document)return;const e=e=>{(e=>Array.from(e.dataTransfer?.types??[]).includes(nt))(e)&&(Qs.current=null,fs.start({key:ht,item:Gs}))},n=e=>{fs.get()?.item.media&&(Qs.current=Gn(e.dataTransfer))},t=()=>{fs.get()?.item.media&&fs.end()};return document.addEventListener("dragstart",e),document.addEventListener("drop",n,!0),document.addEventListener("dragend",t,!0),()=>{document.removeEventListener("dragstart",e),document.removeEventListener("drop",n,!0),document.removeEventListener("dragend",t,!0)}},[Gs,Tt,fs]);const Ks=()=>{const e=Qs.current;return Qs.current=null,e},Zs=ce(),_s=async e=>{if(!Zs)return e;const n=await Zs(e);return n?{...e,id:n.id,url:n.url}:null};const qs=(e,n)=>{if(!Js)return;const t=jn(vo.getState().appState.data,gi,n);if(!t)return;const o=t.node;bo.replaceComponent(Tn(t.place),t.place.index,{...o,props:{...Js.replace(o,e),id:o.props.id}})},ed=e=>{const n=Tn(e),t=Li(n);t&&Di(t.node,t.slot,!1),pl(n,e.index)},nd=(e,n)=>/* @__PURE__ */pt(Xe,{...Tt?{}:hs.seam({place:{...Mn(e),index:n}})},`seam:${e}:${n}`),td={rowClick:hl,isCollapsed:Ur,toggleCollapse:Xr},od=e=>{const n=String(e.props.id),t=hi.findIndex(e=>String(e.props.id)===n),o=Kt(n),r=Mi(o),i=Ur(n),l=Ni(e.type),s=zr.rowName?zr.rowName(e,"section",l):l,d=e=>nd(o,e);/* @__PURE__ */
|
|
12
|
+
/* @__PURE__ */pt("path",{d:"M5 12h14"})]})})}var kt=`${Sn}, ${wn}`;function St(e,n,t){const o=t-n;if(o<6)return null;if(o<24)return{top:Math.round((n+t)/2),height:Math.round(o)};return{top:Math.round(Math.min(Math.max(e,n+12),t-12))}}var wt="__rungs",xt=e=>"template"===e.kind?e.template.id:"shared"===e.kind?e.section.id:"preset"===e.kind?e.preset.key:e.type;var zt="screen:band",Ct={duplicate:!0,delete:!0},Ot=()=>null;function Bt(){const Sn=he(),On=Sn.panels?.Toolbar,Bn=(Sn.panels?.useRight??Ot)(),{target:Nn,docId:Un,capabilities:Gn,currentSlug:Zn,siteId:_n,onPublish:qn,saveState:et,saveConflict:at,retrySave:Bt,toggleAutoSave:Nt,flushSave:It,access:Pt,saveUnreachable:Tt=!1,readOnly:$t,readOnlyReason:Mt=null}=w(),jt=$(),At=M(),{mediaEditing:Lt,hasEditGuard:Et,hasPinnedChrome:Rt}=Gn,{appState:Dt,dispatch:Ft,history:Vt,selectedItem:Wt,getSelectorForId:Ht,config:Ut}=je(e=>e),Jt=j(),{first:Qt,firstGroup:Xt,lastGroup:Yt,isSectionGroup:Kt,sectionGroupZone:Gt,panelOf:Zt}=Jt,_t=Zt(Qt),qt=e=>ne(Jt,e),eo=e=>te(Jt,e),no="node"===Jt.firstRow,to=Jt.band??null,oo=un("screen",ve),ro=un("tree",Qe),io=un("drag",gn),lo=un("notice",sn),so=un("lock",pn),ao=un("menu",Xe),co=un("styleClipboard",Se),po=un("chrome",dn),uo=A()??`/${Zn}`,fo=L(),ho=E(),mo=y({readOnly:$t}),go=y({readOnly:$t,foldIntoHistory:!0}),yo=Ln(null),vo=Ae(),bo=En(()=>({...mo,select:e=>{yo.current=e,mo.select(e)},commitDocument:(e,n)=>{if(void 0!==n){const t=vo.config;yo.current=Ye(e,t,n)}mo.commitDocument(e,n)}}),[mo,vo]),ko=Dt.ui,So=ko.leftSideBarVisible,wo=ko.rightSideBarVisible,{options:xo,widths:zo,initial:Co,fluid:Oo,fit:Bo}=R(),[No,Io]=Rn(Co),Po=le(),To=Lt&&null!==Po;se(),de();const $o=ae();D(Wt?.props.id);const{read:Mo,write:jo,forSelection:Ao}=F(),[Lo,Eo]=Rn(Mo);Dn(()=>{jo(Lo)},[Lo]);const[Ro,Do]=Rn(0),Fo=Ln(null),Vo=Ln(null),Wo=kn(Vo,{readySelector:kt}),Ho=xn(Wo),Uo=d(Vo);a(Vo,Wo);const Jo=S(),Qo=an(Pt),Xo={state:et,offline:Jo||et.failed&&Tt,readOnlyReason:Mt,editing:Qo?lo.editing({name:cn(Qo.name,so),noun:oo.noun}):null,conflict:null!=at,notSaving:oo.bar.notSaving},Yo=()=>{$t||(et.failed?Bt():It())};c(Vo,Wo,Yo);const[Ko,Go]=Rn(!1),Zo=Ln(!1),[_o,qo]=Rn(null),[er,nr]=Rn([]),[tr,or]=Rn(V);W(tr);const rr=n(tr,Wt?.props.id),[ir,lr]=Rn(null);Dn(()=>{ir&&(t(),lr(null))},[ir]);const sr=Ln(Ht);sr.current=Ht;const dr=Fn((e,{scroll:n})=>{Eo(n=>Ao(e,n)),n&&lr(e);const t=[];let o=e;for(let e=0;e<4;e++){const e=sr.current(o)?.zone;if(!e||!e.includes(":"))break;const n=e.split(":")[0];t.push(n),t.push(e),o=n}0!==t.length&&Rr(e=>{if(t.every(n=>!e.has(n)))return e;const n=new Set(e);return t.forEach(e=>n.delete(e)),n})},[]),ar=Ln(null);Dn(()=>{const e=ar.current;ar.current=null;const n=null==Wt?.props.id?null:String(Wt.props.id);or(t=>e&&e.id===n?e.mode:"part"===t.kind&&"nodeId"in t&&t.nodeId===n?t:Zt(Wt?.type)??V);const t=Wt?.props.id,r=yo.current;if(yo.current=null,!t)return;const i=Ht(t);dr(String(t),{scroll:!o(r,i??null,Oe)})},[Wt?.props.id,dr]);const cr=Fn(e=>{or(n=>H(n,e)?n:e),Ft({type:"setUi",ui:{rightSideBarVisible:!0}})},[Ft]),pr=Ln(()=>{});pr.current=(e,n)=>{const t=e?Mi(e.zone??Oe)[e.index]?.props.id:null,o=null==t?null:String(t),r=null==Wt?.props.id?null:String(Wt.props.id);or(e=>H(e,n)?e:n),o!==r&&(ar.current={id:o,mode:n},bo.select(e))};const ur=Fn((e,n)=>pr.current(e,n),[]),fr={kind:tr.kind,mode:tr,open:cr,show:e=>or(e),reveal:()=>{wo||Ft({type:"setUi",ui:{rightSideBarVisible:!0}})},select:ur},hr=U(fr,{data:Dt.data,selected:Wt??null,zoneOf:e=>Ht(e)?.zone,readOnly:Boolean($t),select:e=>{or(V),bo.select({index:e})},replace:(e,n)=>bo.replaceComponent(Oe,e,n),scrollTo:e=>l(e)},{device:No,refreshes:Ro},{setView:Eo,reveal:()=>{So||Ft({type:"setUi",ui:{leftSideBarVisible:!0}})}}),mr=hr.resolveLeftView?hr.resolveLeftView(Lo):"sections",gr=J(),{isLockedBlock:yr,duplicateBlocked:vr,nestDepth:br,newSectionNode:kr,canAddTo:Sr,blockIsOffered:wr}=gr,xr=e=>({id:String(e.props.id??""),data:Dt?.data}),zr=Q(),{labelAtLevel:Cr,Icon:Or,useProducts:Br}=zr,Nr=zr.rowName?(e,n,t)=>zr.rowName(e,n,t):void 0,Ir=Fn(e=>{Ft({type:"setUi",ui:{rightSideBarVisible:!0}}),l(e),dr(e,{scroll:!0})},[Ft,dr]),{selectNode:Pr,openPartId:Tr}=g({mode:tr,setMode:or,onOpenPart:Ir}),[$r,Mr]=Rn(null);me(null!==$r,()=>Mr(null));const jr=f(X()),Ar=jr.collapsed,Lr=jr.panelWidths,[Er,Rr]=Rn(()=>{if("undefined"==typeof window)/* @__PURE__ */return new Set;try{const e=window.localStorage.getItem(Ar);return new Set(e?JSON.parse(e):[])}catch{/* @__PURE__ */
|
|
13
|
+
return new Set}});Dn(()=>{try{window.localStorage.setItem(Ar,JSON.stringify([...Er]))}catch{}},[Er]);const[Dr,Fr]=Rn(()=>{if("undefined"==typeof window)return{...h};try{const e=window.localStorage.getItem(Lr);if(!e)return{...h};const n=JSON.parse(e);return{left:m(Number(n.left)||h.left,"left"),right:m(Number(n.right)||h.right,"right")}}catch{return{...h}}});Dn(()=>{const e=setTimeout(()=>{try{window.localStorage.setItem(Lr,JSON.stringify(Dr))}catch{}},300);return()=>clearTimeout(e)},[Dr]);const Vr=Fn((e,n)=>Fr(t=>{const o="function"==typeof n?n(t[e]):n;return t[e]===o?t:{...t,[e]:o}}),[]),Wr=Fn(e=>Vr("left",e),[Vr]),Hr=Fn(e=>Vr("right",e),[Vr]),Ur=e=>Er.has(e),Jr=e=>Rr(n=>{const t=new Set(n);return t.has(e)?t.delete(e):t.add(e),t}),Qr=Ln(!1),Xr=Ln(null);Dn(()=>{if(Qr.current&&!Ko){const e=Xr.current,n=e&&e.isConnected&&!e.closest('[aria-hidden="true"]')?e:null;(n??Vo.current?.querySelector(`button[aria-label="${CSS.escape(oo.add.title)}"]`))?.focus(),Xr.current=null}Qr.current=Ko},[Ko]),Dn(()=>{if(!Ko||!Uo)return;const e=e=>{"Escape"===e.key&&ul()};return Uo.addEventListener("keydown",e),()=>Uo.removeEventListener("keydown",e)},[Ko,Uo]),me(Ko,()=>ul()),Dn(()=>{!So&&Ko&&(Go(!1),qo(null),Zo.current=!1)},[So]);const Yr=Y(),Kr=(e,n="success",t)=>{if(Yr)return void(t?Yr(e,"error"===n?"error":"info",t):Yr(e,"error"===n?"error":"info"));const o={sound:!1,action:t?.action,onClose:t?.onClose};"error"===n?Yn.error(e,{...o,duration:t?.duration??3200}):Yn.success(e,{...o,duration:t?.duration??1900})},Gr=Ln(null),[Zr,_r]=Rn(0),[qr,ei]=Rn(0),ni=K(),ti=Ln(null),oi=e=>Math.max(0,e.clientHeight-(ti.current?.offsetHeight??0));Dn(()=>{const e=Gr.current;if(!e)return;const n=()=>{_r(e.clientWidth),ei(oi(e))};n();const t=new ResizeObserver(n);return t.observe(e),ti.current&&t.observe(ti.current),()=>t.disconnect()},[]),Vn(()=>{Gr.current&&(_r(Gr.current.clientWidth),ei(oi(Gr.current)))},[Dr,So,wo]);const ri=No===Oo?Zr>0?Zr:zo[Oo]:zo[No],ii=Zr>0?Math.min(Zr/ri,"shrink"===Bo?1:2):1,li=ri*ii,si=Zr>0&&li>Zr+1,di={width:li,height:qr||"100%",flex:"none",position:"relative"},ai={width:ri,height:qr?qr/ii:"100%",maxHeight:"none",transform:1!==ii?`scale(${ii})`:void 0,transformOrigin:"top left"},ci=()=>Ft({type:"setUi",ui:{leftSideBarVisible:!So}}),pi=()=>Ft({type:"setUi",ui:{rightSideBarVisible:!wo}}),ui=e=>{Ko&&(Go(!1),qo(null),Zo.current=!1,So&&Lo===e)||(Eo(e),So||Ft({type:"setUi",ui:{leftSideBarVisible:!0}}))},fi=()=>{or(_t??V),wo||Ft({type:"setUi",ui:{rightSideBarVisible:!0}})},hi=Dt.data.content??[],mi=()=>{const e=hi.findIndex(qt),n=hi.findIndex(eo);return{floor:e>=0?e+1:0,cap:n>=0?n:hi.length}},gi=Ut,yi=gr.stripCopy,vi=e=>r(e,yi),bi=pe(),ki=Ke({data:Dt.data,config:gi,readOnly:Boolean($t),clipboard:bi,strip:yi?e=>yi(e):void 0,afterRemove:"none",stepBounds:(e,n)=>{if(e.parentId!==Pn||e.slot!==Tn)return{min:0,max:n-1};const{floor:t,cap:o}=mi();return{min:t,max:o-1}},commit:(e,{select:n})=>{void 0!==n&&or(V);const t=void 0===n||"node"===n?.kind?n:null;bo.commitDocument(e,t)}}),Si=fe(),[wi,xi]=Rn(null),zi=e=>{const n=hi.find(n=>String(n.props.id)===e),t=Jt.shared;n&&t&&ki.swap(e,t.detach(n))},Ci=e=>{const n=jn(Dt.data,Ut,e);if(!n)return!1;const t=$n(n.place),o=n.node,r=t===Oe?Pi(o):Ji(o),i=t===Oe?Jt.shared?.usedOn(o):null;return!!ki.remove(e)&&(Kr(i?oo.shared.removed({count:Math.max(0,i.length-1)}):oo.deleted({name:r}),"success",{duration:8e3,action:{label:oo.bar.undo,onClick:()=>{ki.restore(n.node,n.place)}}}),!0)},Oi={...ki,remove:Ci},Bi=e=>Cr(e,"block",Ut.components[e]?.label??e),Ni=Fn(e=>Ut.components[e]?.defaultProps??{},[Ut]),Ii=e=>Cr(e,"section",Bi(e)),Pi=e=>we({type:e.type,props:e.props??{}},Ii(e.type),Nr),{nodeAddresses:Ti,zoneItems:$i}=En(()=>{const e=/* @__PURE__ */new Map,n=/* @__PURE__ */new Map,t=(o,r,i)=>{n.set(r,o),o.forEach((n,o)=>{const l=String(n.props?.id??"");if(l&&e.set(l,{zone:r,index:o}),i>=Ne)return;const s=/* @__PURE__ */new Map;for(const{child:e,zone:t}of Ie(Ut,n))s.set(t,[...s.get(t)??[],e]);for(const[e,n]of s)t(n,e,i+1)})};return t(hi,Oe,0),{nodeAddresses:e,zoneItems:n}},[hi,Ut]),Mi=Fn(e=>$i.get(e)??[],[$i]),ji=e=>{const n=Ti.get(e);return n?Mi(n.zone)[n.index]:void 0},Ai=e=>oe(gr,Ut,e),Li=e=>{if(!gr.slotsOf||e===Oe)return null;const n=e.lastIndexOf(":");if(n<=0)return null;const t=ji(e.slice(0,n));if(!t)return null;const o=Ai(t).filter(e=>e.rung),r=o.findIndex(t=>t.slot===e.slice(n+1));return r<0?null:{node:t,slot:o[r],position:r}},Ei=(()=>{if(!G(tr))return null;const e=`${tr.nodeId}:${tr.slot}`;return Li(e)?.slot.panel===tr.kind?e:null})(),Ri=Ln(null);Dn(()=>{const e=Ri.current;if(Ri.current=null,!Ei||!G(tr))return;const n=tr.nodeId;dr(n,{scroll:e!==Ei}),Rr(e=>{if(!e.has(n))return e;const t=new Set(e);return t.delete(n),t})},[tr]);const Di=e=>{const n=Ti.get(e);n&&(n.zone===Oe?il(n.index):$l(n.zone,n.index,e,ji(n.zone.slice(0,n.zone.lastIndexOf(":")))?.type??""))},Fi=(e,n,t)=>{const o=String(e.props.id);if(!n.panel)return void Di(o);const r={kind:n.panel,nodeId:o,slot:n.slot},i=`${o}:${n.slot}`;t&&Ei!==i&&(Ri.current=i),ur(null,r),wo||Ft({type:"setUi",ui:{rightSideBarVisible:!0}}),l(o)},Vi=(e,n,t)=>{const o=`${e}:${n}`;if(Rr(n=>{if(!n.has(o)&&!n.has(e))return n;const t=new Set(n);return t.delete(o),t.delete(e),t}),!t)return;Ei!==o&&(Ri.current=o);ur(null,{kind:t,nodeId:e,slot:n})},Wi=(e,n,t)=>{if($t||!gr.moveSlot)return;const o=ji(e),r=o?Ai(o).filter(e=>e.rung):[],i=r[n];if(!i)return;const l={parentId:e,slot:wt,index:n},s=bn(l,{...l,index:Math.min(Math.max(t,0),r.length)});if(s===n)return;const d=gr.moveSlot(e,n,s);"string"==typeof d&&Vi(e,d,i.panel)},Hi=Br(),Ui=En(()=>{const e=/* @__PURE__ */new Map;for(const n of Hi??[])e.set(n.slug,n.name);return e},[Hi]),Ji=e=>xe(e,Bi,zr.plainText,e=>Ui.get(e),zr.rowName),Qi=(e,n)=>{const t=Ut.components[e.type]?.fields,o=n===Oe||rs(n)?"section":"block",r=n===Oe&&(qt(e)||eo(e)||Kt(e.type)),i="block"===o?ze(t):r?null:Ce(t);return zr.renamePropOf?zr.renamePropOf(e,o,i):i},Xi=(e,n,t,o)=>{if(!(!$t&&$r?.zone===e&&$r.index===n))return;const r=(t,o)=>{Mr(null),o&&((e,n,t)=>{const o=Mi(e)[n];if(!o)return;const r=Qi(o,e);r&&bo.replaceComponent(e,n,{...o,props:{...o.props,[r]:t.trim()}})})(e,n,t)};/* @__PURE__ */
|
|
14
|
+
return pt("input",{className:"es-tree-rename",defaultValue:o,autoFocus:!0,"aria-label":oo.rename,onClick:e=>e.stopPropagation(),onBlur:e=>r(e.currentTarget.value,!0),onKeyDown:e=>{"Enter"===e.key?(e.preventDefault(),r(e.currentTarget.value,!0)):"Escape"===e.key&&(e.preventDefault(),r("",!1))}},t)},Yi=e(Z(),co),Ki=Yi.scope({target:Nn,siteId:_n,docId:Un}),Gi=Ut,Zi=(e,n)=>n===Oe?Ii(e):Bi(e),_i=(e,n,t)=>{const o=Yi.plan(Ki,t,Zi(t.type,e),Gi);o&&(o.changed&&bo.replaceComponent(e,n,{...t,props:{...o.props,id:t.props.id}}),Kr(o.message))},qi=ue({nodesIn:Mi,nodeAt:(e,n)=>Mi(e)[n]??null,labelOf:(e,n)=>n===Oe?Ii(e):Bi(e),renamePropOf:Qi,beginRename:(e,n)=>Mr({zone:e,index:n}),history:{hasPast:Vt.hasPast,hasFuture:Vt.hasFuture,back:()=>Vt.back(),forward:()=>Vt.forward()},openPageStyles:hr.openPageStyles,pageStylesLabel:oo.pageStyles,words:{menu:ao,styleClipboard:co,screen:oo.menu},readOnly:Boolean($t),collapseAll:()=>Rr(new Set(Mi(Oe).map(e=>String(e.props.id)))),onPasteRefused:e=>Kr(e?oo.pasteRefused({name:e.label}):oo.menu.clipboardRefused,"error"),canPasteAt:(e,n)=>ss(e,n),copyItem:hr.onCopyItem,menuRows:(e,n,t)=>{const o=hr.menuRows?.(e,n,t)??null,r=((e,n)=>{const t=Jt.shared;if(!t||n!==Oe)return null;const o=t.usedOn(e);if(o){const n={pick:[{label:oo.shared.onPages({count:o.length}),onClick:()=>{},children:o.map(e=>({label:e.title,onClick:()=>t.openPage(e)}))}]};return $t||yr(e.type,e)?n:{...n,change:[{label:oo.shared.detach,onClick:()=>zi(e.props.id)}],remove:[{label:oo.shared.removeFromPage,danger:!0,onClick:()=>{Ci(e.props.id)}}]}}return $t||qt(e)||eo(e)||Kt(e.type)?null:O(Si)?{change:[{label:oo.shared.makeShared,onClick:()=>xi({id:e.props.id,name:Pi(e)})}]}:null})(e,n);if(!r)return o;return Object.fromEntries(["pick","make","change","remove"].map(e=>[e,[...o?.[e]??[],...r[e]??[]]]).filter(([,e])=>e.length>0))},isLocked:e=>yr(e.type,e),duplicateBlocked:e=>vr(Dt.data,e),permits:e=>{const n=Be(Ut,e.type);return Jt.shared?.usedOn(e)?{...n,delete:!1}:n},nodeOps:Oi,isPinned:(e,n)=>n===Oe&&(qt(e)||eo(e)),sectionBand:mi,locate:e=>Ti.get(e)??null,rowNameOf:(e,n)=>n===Oe?Pi(e):Ji(e),selectAt:(e,n,t,o)=>{e===Oe?il(n):$l(e,n,t,o??"")},slotRung:e=>{const n=Li(e);return n?.slot.panel?{label:n.slot.label,select:()=>Fi(n.node,n.slot,!1)}:null},style:{held:()=>be(Ki),canCopy:e=>Yi.rows(Gi,e).some(e=>!1!==e.counted),copy:(e,n)=>Yi.copy(Ki,e,Zi(e.type,n),Gi),paste:(e,n,t)=>_i(e,n,t)},keys:At?{target:Uo,selected:()=>{const e=Dt.ui.itemSelector;return e?{zone:e.zone??Oe,index:e.index}:null},held:()=>bi.get(),readOnly:Boolean($t),onDone:({done:e,name:n})=>{"copied"===e&&Kr(oo.copied({name:n}))}}:void 0},Wo),el=Ln({copy:(e,n)=>{},paste:(e,n,t)=>{},at:()=>null,readOnly:!1});Dn(()=>{el.current={copy:(e,n)=>Yi.copy(Ki,e,Zi(e.type,n),Gi),paste:_i,at:()=>{const e=Dt.ui.itemSelector;if(!e)return null;const n=e.zone??Oe,t=Mi(n)[e.index];return t?{zone:n,index:e.index,node:t}:null},readOnly:Boolean($t)}});const nl=Fn(e=>{const n=ke(e);if(!n)return;const t=el.current,o=t.at();o&&(e.preventDefault(),"copy"===n?t.copy(o.node,o.zone):t.readOnly||t.paste(o.zone,o.index,o.node))},[]);Dn(()=>{if(!Uo)return;const e=e=>nl(e);return Uo.addEventListener("keydown",e),()=>Uo.removeEventListener("keydown",e)},[nl,Uo]),zn(Wo,"keydown",nl);const tl=hi.map(e=>e.props.id).join("|");Dn(()=>{const e=Wo?.document??null,n=Wo?.window??null;let t=0;const o=[],r=()=>{if(!e)return void nr(e=>e.length?[]:e);const n=hi.findIndex(eo),t=n>=0?n:hi.length,o=n=>{const t=hi[n]?.props?.id;return null==t?null:In(e,`[data-easel-block="${CSS.escape(String(t))}"]`)},r=e=>e?[...e.querySelectorAll(wn)].map(e=>e.getBoundingClientRect()).filter(e=>e.width>0||e.height>0):[],i=[];for(let e=hi.length>0&&!qt(hi[0])?0:1;e<=t;e++){const n=o(e),t=o(e-1),l=n?.getBoundingClientRect()??null,s=t?.getBoundingClientRect()??null;if(!l&&!s)continue;const d=St(l&&s?(s.bottom+l.top)/2:l?0===e?l.top+12:l.top:s.bottom,Math.max(0===e?0:-1/0,...r(t).map(e=>e.bottom)),Math.min(1/0,...r(n).map(e=>e.top)));d&&i.push({...d,index:e})}nr(e=>function(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(e[t].top!==n[t].top||e[t].index!==n[t].index||e[t].height!==n[t].height)return!1;return!0}(e,i)?e:i)},i=()=>{cancelAnimationFrame(t),t=requestAnimationFrame(r)};if(!e||!n)return void r();n.addEventListener("scroll",i,{passive:!0});const l=new ResizeObserver(i);return l.observe(e.documentElement),r(),o.push(setTimeout(r,150),setTimeout(r,450)),()=>{cancelAnimationFrame(t),o.forEach(clearTimeout),n.removeEventListener("scroll",i),l.disconnect()}},[Wo,tl,No,ii,So,wo,Wt?.props.id]);const ol=Wo?.document??null,rl=Wo?.window??null;Dn(()=>{const e=Fo.current;if(!e||!ol||!rl)return;const n=[],t=()=>{const n=In(ol,`[data-easel-block="${CSS.escape(e.id)}"]`);if(!n)return!1;const t=n.getBoundingClientRect().top-e.offset;return Math.abs(t)>1&&rl.scrollTo({left:rl.scrollX,top:rl.scrollY+t,behavior:"instant"}),!0};return Fo.current=null,t()&&n.push(setTimeout(t,150),setTimeout(t,450)),()=>n.forEach(clearTimeout)},[ol,rl]);const il=e=>{or(V),bo.select({index:e}),hr.sectionPressed?.(hi[e]);const n=hi[e]?.props?.id;n&&l(n)},ll=e=>{const{floor:n,cap:t}=mi(),o=e=>Math.min(Math.max(n,e),t);if("number"==typeof e)return o(e);const r=Wt&&tr.kind!==_t?.kind?hi.findIndex(e=>e.props.id===Wt.props.id):-1;return o(r>=0?r+1:t)},sl=(e,n)=>{const{floor:t,cap:o}=mi(),r=Math.min(Math.max(n,t),o),i=e<r?r-1:r;return i===e?{moved:!1,dest:e}:(bo.reorderComponent(Oe,e,i),bo.select({index:i}),{moved:!0,dest:i})},dl=(e,n,t,o)=>{or(V),bo.select(o?{index:o.index,zone:o.zone}:{index:e}),l(n),Kr(oo.sectionAdded({name:t}))},al=(e,n)=>{const t=ll(n),o=kr(e,{nodeDefaults:Ni,newNodeId:Te,sectionLabel:Ii,blockIsOffered:wr}),r=o?bo.insertNode(Oe,t,o):bo.insertSection(e,t);return dl(t,r,Ii(e),o?((e,n,t)=>{if(e.type===t)return null;const o={at:null},r=(e,n,i)=>{const l=i.filter(n=>n===e.type).length;for(const{child:s,zone:d,index:a}of Ie(Ut,e)){if(s.type===t&&(!o.at||n>o.at.depth)){const r=Sr(e.type,l,d.slice(d.lastIndexOf(":")+1),xr(e)),i=r?.choices??(r?.spec?[{type:r.spec.childType,label:r.spec.childType}]:[]);null!==r&&"footer"!==r.source&&`${e.props.id}:${r.slot}`===d&&i.some(e=>e.type===t)&&(o.at={zone:d,index:a,depth:n})}r(s,n+1,[...i,e.type])}};return r({type:e.type,props:{...e.props,id:n}},1,[]),o.at?{zone:o.at.zone,index:o.at.index}:null})(o,r,e):null),t},cl=e=>pl(Oe,e),pl=(e,n)=>{Xr.current=document.activeElement??null,qo(null===n?null:{zone:e,index:n}),Go(!0),So||(Zo.current=!0,Ft({type:"setUi",ui:{leftSideBarVisible:!0}}))},ul=()=>{Go(!1),qo(null),Zo.current&&Ft({type:"setUi",ui:{leftSideBarVisible:!1}}),Zo.current=!1},fl=(e,n)=>zr.rowName?n?qt(e)?zr.rowName(e,"section",oo.header):eo(e)?zr.rowName(e,"section",oo.footer):Kt(e.type)?zr.rowName(e,"section",Bi(e.type)):Pi(e):Ji(e):n?Ii(e.type):Bi(e.type),hl=e=>n=>{e()},ml=(e,n,t)=>{if($t)return null;const o=Mi(e)[n];return o&&!Be(Ut,o.type).delete||o&&yr(o.type,o)?null:/* @__PURE__ */pt(Ue,{kind:"delete",label:e===Oe&&o&&Jt.shared?.usedOn(o)?oo.shared.removeFromPage:oo.deleteNamed({name:t}),onClick:()=>((e,n)=>{const t=Mi(e)[n]?.props?.id;null!=t&&Ci(String(t))})(e,n),children:/* @__PURE__ */pt(lt,{size:15})})},gl=e=>zr.rowPreview?.(e)||void 0,yl=e=>zr.rowMarks?.(e)??void 0,vl=(e,n,t)=>zr.rowActions?.(e,n,t)??null,bl=(e,n,t,o)=>{if($t)return null;if(yr(t.type,t))return null;const r=Boolean(t.props._hidden);/* @__PURE__ */
|
|
15
|
+
return pt(Ue,{kind:"eye",label:r?oo.showNamed({name:o}):oo.hideNamed({name:o}),onClick:()=>Sl(e,n,t),children:/* @__PURE__ */pt(r?st:dt,{size:14,strokeWidth:1.8,strokeLinecap:void 0,strokeLinejoin:void 0})})},kl=e=>nd(Oe,e),Sl=(e,n,t)=>{bo.replaceComponent(e,n,{...t,props:{...t.props,_hidden:!t.props._hidden}})},wl=e=>Pe(Ut,e),xl=e=>Ie(Ut,e),zl=e=>gr.slotsOf?Ai(e).map(n=>({slot:n.slot,rung:n.rung?n:null,kids:$e(e,n.slot)})):[{slot:null,rung:null,kids:re(Ut,e)}],Cl=e=>gr.slotsOf?zl(e).flatMap(e=>e.kids):re(Ut,e),Ol=e=>Boolean(gr.slotsOf)&&Ai(e).some(e=>e.rung),Bl=(e,n,t)=>Sr(e.type,n,t??void 0,xr(e)),Nl=(e,n,t)=>{const o=Me(Ut,e.type,n)&&(t||Cl(e).length>0||Ol(e));return{collapsible:o,folded:o&&Ur(String(e.props.id))}},Il=(e,n,t)=>zl(e).flatMap(o=>{const r=o.rung?n+1:n,i=o.kids.flatMap(({child:e})=>Nl(e,r,t(e.type)).collapsible?[String(e.props.id),...Il(e,r+1,t)]:[]);return o.rung?[`${e.props.id}:${o.rung.slot}`,...i]:i}),Pl=e=>Cl(e).length>0||Ol(e)||Boolean(Sr(e.type)),Tl=e=>Boolean(Sr(e)),$l=(e,n,t,o)=>{if(or(V),Sr(o)?.spec?.slider){const t=e.split(":")[0];s(t,n),bo.select({index:n,zone:e}),l(t)}else bo.select({index:n,zone:e}),l(t)},Ml=(e,n,t,o,r)=>{const i=`${e}:${n}`;bo.insertComponent(i,t,o),Sr(r)?.spec?.slider?requestAnimationFrame(()=>{s(e,o),bo.select({index:o,zone:i})}):bo.select({index:o,zone:i})},jl=Ln(/* @__PURE__ */new Set);Dn(()=>{hi.forEach(e=>{const n=Sr(e.type)?.spec;if(!n)return;const t=e.props.id;if(jl.current.has(t))return;jl.current.add(t);if((Array.isArray(e.props[n.slot])?e.props[n.slot]:[]).length>0)return;if(n.skipSeed?.(e.props))return;const o=`${t}:${n.slot}`,r=n.legacy?.(e.props)??[];(r.length?r:n.seeds(Ni)).forEach((e,t)=>go.seedChild(o,t,n.childType,e))})},[hi,go,Ni]);const Al=Ln(/* @__PURE__ */new Set);Dn(()=>{hi.forEach((e,n)=>{const t=e.props.id;if(Al.current.has(t))return;const o=i(e,wl(e.type));Al.current.add(t),o&&go.replaceComponent(Oe,n,{...e,props:o})})},[hi,go]),_(go,Ut);const Ll=hi.findIndex(eo),El=Ll>=0?hi[Ll]:null,Rl=no?hi.findIndex(qt):-1,Dl=Rl>=0?hi[Rl]:null,Fl=Jt.groupTab,Vl=En(()=>Fl?e=>Kt(e.type):void 0,[Fl]),Wl=Boolean(Jt.groupBadge),Hl=Jt.sharedReach,Ul=e=>Hl?.(e)??void 0,Jl=En(()=>Hl?new Set(hi.filter(e=>Ul(e)).map(e=>String(e.props.id))):null,[hi,Hl]),Ql=En(()=>Jl?e=>Jl.has(e):void 0,[Jl]),Xl=Jt.first?Hl?.({type:Jt.first,props:{id:""}})??void 0:void 0,Yl=Jt.groupBadge?/* @__PURE__ */pt("span",{className:"es-tree-group-badge",children:/* @__PURE__ */pt(Jn,{tone:"info",size:"xs",children:Jt.groupBadge})}):void 0,Kl=hi.find(e=>e.type===Xt)??null,Gl=hi.find(e=>e.type===Yt)??null,Zl=Ll>=0?Ll:hi.length,_l=[];hi.forEach(e=>{eo(e)||(Pl(e)&&_l.push(String(e.props.id)),_l.push(...Il(e,1,Tl)))}),El&&(_l.push(String(El.props.id)),_l.push(...Il(El,1,Tl)));const ql=_l.length>0&&_l.every(e=>Er.has(e)),es=e=>{const n=zr.blockRowName(e,Bi);return zr.rowName?zr.rowName(e,"block",n):n},ns=(e,n,t,o)=>{const r=Mi(e)[t];if(!r)return;const i={...Mn(e),index:t},l={...Mn(n),index:Math.min(Math.max(o,0),Mi(n).length)},s=bn(i,l);if(e!==n||s!==t)try{ki.move(String(r.props.id),{...l,index:s})}catch(e){if(!(e instanceof An))throw e}},ts=e=>{const n=/* @__PURE__ */new Set,t=e=>{for(const{child:o,zone:r}of xl(e))n.add(r),t(o)};for(const t of wl(e.type))n.add(`${e.props.id}:${t}`);return t(e),n},os=e=>{let n=e.slice(0,e.indexOf(":"));for(let e=0;e<64;e++){const e=Ti.get(n);if(!e)return null;if(e.zone===Oe)return n;n=e.zone.slice(0,e.zone.indexOf(":"))}return null},rs=e=>{const n=e.slice(0,e.indexOf(":")),t=hi.find(e=>Kt(e.type)&&String(e.props.id)===n);return t&&Gt(n)===e?t:null},is=(e,n)=>{const t=rs(e);return!t||(!Jt.groupAccepts||Jt.groupAccepts(t.type,n,Mi(e).length))},ls=(e,n,t)=>{if(e.rung){const t=ji(e.rung.nodeId),o=t?Ai(t).filter(e=>e.rung).length:0;return n.parentId===e.rung.nodeId&&n.slot===wt&&n.index>=0&&n.index<=o}if(n.slot===wt)return!1;if(e.add)return cs(e.add,n);const o=$n(n);if(Kt(e.type))return!1;const r=rs(o),i=rs(e.zone);if(r||i)return!(!r||!i)&&(!(r!==i&&!is(o,e.type))&&(n.index>=0&&n.index<=Mi(o).length));if(e.zone===Oe||o===Oe){if(e.zone!==o)return!1;const{floor:t,cap:r}=mi();return n.index>=t&&n.index<=r}if(n.index<0||n.index>Mi(o).length)return!1;if(e.zone===o)return!0;const l=El&&!Jt.lastIsOpen?String(El.props.id):null;return(!l||os(e.zone)!==l&&os(o)!==l)&&((e,n,t,o)=>{if(e===n)return!0;const r=o??Mi(e)[t];if(!r)return!1;const i=n.split(":")[0],l=Ti.get(i),s=l?Mi(l.zone)[l.index]:void 0;if(!s)return!1;if(!o&&ts(r).has(n))return!1;const d=Sr(s.type,br(Dt?.data,s.type,i),n.slice(n.lastIndexOf(":")+1),xr(s));return!!d&&(!!(d.choices?d.choices.some(e=>e.type===r.type):d.spec?.childType===r.type)&&!d.spec?.addBlocked?.(Mi(n),r))})(e.zone,o,e.index,t)},ss=(e,n)=>{const t=$n(e.from),o=e.node;return t===$n(n)?is(t,o.type):ls({id:String(o.props?.id??""),zone:t,index:-1,type:o.type},n,o)},ds=e=>{const n=e.slice(0,e.indexOf(":")),t=Ti.get(n),o=t?Mi(t.zone)[t.index]:void 0;if(!t||!o)return null;const r=Sr(o.type,br(Dt?.data,o.type,n),e.slice(e.lastIndexOf(":")+1),xr(o));if(!r||`${n}:${r.slot}`!==e)return null;if("footer"===r.source)return null;const i=T(r.choices??(r.spec?[{type:r.spec.childType,label:Bi(r.spec.childType)}]:[])),l=Li(e);return{parent:o,parentId:n,target:r,choices:i,parentName:l?l.slot.label:fl(o,t.zone===Oe)}},as=(e,n)=>{if("section"!==e.kind)return e;const t=$n(n);return t===Oe||rs(t)?e:ds(t)?.choices.some(n=>n.type===e.type)?{kind:"block",type:e.type}:e},cs=(e,n)=>{const t=as(e,n),o=$n(n);if("shared"===t.kind){if(o!==Oe||!Jt.shared?.nodeOf(t.section))return!1;const{floor:e,cap:r}=mi();return n.index>=e&&n.index<=r}if("block"!==t.kind){if(rs(o)){if("preset"===t.kind)return!1;const e="section"===t.kind?t.type:t.template.node.type;return is(o,e)&&n.index>=0&&n.index<=Mi(o).length}if(o!==Oe)return!1;const{floor:e,cap:r}=mi();return n.index>=e&&n.index<=r}if(o===Oe)return!1;const r=ds(o);return!(!r||!r.choices.some(e=>e.type===t.type))&&!r.target.spec?.addBlocked?.(Mi(o))},ps=(e,n)=>{const t=as(e,n);if("block"!==t.kind&&rs($n(n)))return void((e,n,t)=>{const o="section"===e.kind?e.type:"template"===e.kind?e.template.node.type:null;if(o&&is(n,o)){if("section"===e.kind)bo.insertComponent(n,e.type,t);else{if("template"!==e.kind)return;bo.insertNode(n,t,vi(e.template.node))}or(V),bo.select({index:t,zone:n})}})(t,$n(n),n.index);if("section"===t.kind)return void al(t.type,n.index);if("template"===t.kind)return void((e,n,t)=>{const o=ll(t),r=bo.insertNode(Oe,o,n);dl(o,r,e)})(t.template.name,vi(t.template.node),n.index);if("preset"===t.kind)return void((e,n,t)=>{const o=n({nodeDefaults:Ni,newNodeId:Te,sectionLabel:Ii,blockIsOffered:wr});if(!o)return;const r=ll(t),i=bo.insertNode(Oe,r,o);dl(r,i,e)})(t.preset.label,t.preset.insert,n.index);if("shared"===t.kind){const e=Jt.shared?.nodeOf(t.section);if(!e)return;const o=ll(n.index);return void(ki.restore(e,{parentId:Pn,slot:Tn,index:o})&&dl(o,e.props.id,t.section.title))}const o=$n(n),r=ds(o);r&&(r.target.spec?Ml(r.parentId,r.target.slot,t.type,n.index,r.parent.type):((e,n,t)=>{bo.insertComponent(e,n,t),or(V),bo.select({index:t,zone:e})})(o,t.type,n.index))},us=(e,n)=>{e.media?function(e){const n=Gs();if(!n||!Xs)return;_s(n).then(n=>{n&&function(e,n){if(!Xs)return;const t=Xs.create(e,{nodeDefaults:Ni,newNodeId:Te,sectionLabel:Ii,blockIsOffered:wr}),o=$n(n);if(o===Oe){const e=ll(n.index),o=bo.insertNode(Oe,e,t);return void dl(e,o,Ii(t.type))}bo.insertNode(o,n.index,t),or(V),bo.select({index:n.index,zone:o})}(n,e)})}(n):e.rung?Wi(e.rung.nodeId,e.index,n.index):e.add?ps(e.add,n):e.zone===Oe?sl(e.index,n.index):ns(e.zone,$n(n),e.index,n.index)},[fs]=Rn(()=>yn()),hs=vn({keyOf:e=>e.id,readOnly:Boolean($t),session:fs,canDrop:ls,onDrop:us,onStep:(e,n)=>{e.rung?Wi(e.rung.nodeId,e.index,n<0?e.index-1:e.index+2):e.zone===Oe?((e,n)=>{const t=Ii(hi[e]?.type??""),o=sl(e,n<0?e-1:e+2);if(!o.moved)return void Kr(n<0?oo.sectionFirst({name:t}):oo.sectionLast({name:t}));const{floor:r,cap:i}=mi();Kr(oo.sectionMoved({name:t,n:o.dest-r+1,total:i-r}))})(e.index,n):ns(e.zone,e.zone,e.index,n<0?e.index-1:e.index+2)}}),ms=Fn(e=>{const{floor:n,cap:t}=mi(),o=[];for(const r of e.nodes){const e=$n(r.place),i=Mi(e)[r.place.index];if(!i||String(i.props.id)!==r.id)continue;if(qt(i)||eo(i)||yr(i.type,i))continue;if(Kt(i.type))continue;const l=Boolean(rs(e)),s=e===Oe||l;e===Oe&&t-n<2||o.push({key:r.id,item:{id:r.id,zone:e,index:r.place.index,type:i.type},box:r.box,label:s?Ii(i.type):Ji(i),from:r.place})}const r=e.zones.flatMap(e=>{const n=$n(e.list);if(n===Oe&&0===e.children.length)return[{...e,addLabel:oo.addSection,addAlways:!0}];const t=ds(n),o=t?.target.spec?.addLabel;return e.children.length>0||Boolean(t?.choices.length)||Boolean(rs(n))?[o?{...e,addLabel:o}:e]:[]}),i=r.flatMap(e=>{const n=$n(e.list),t=n===Oe||rs(n)?null:ds(n);return t?.choices.length?fn(e,t.target.spec?.addLabel??oo.addBlockHere):[]});return{sources:o,zones:r,seams:i}},[Dt.data]),gs=null==Wt?.props.id?null:String(Wt.props.id),ys=Wn(Le),vs=ys?.selected()&&Wo?.document&&gs?ys.selectedPart?.(Wo.document)??null:null,bs=vs&&gs&&Ee(Dt.data,Ut,gs,vs)?vs:null,ks=bs?.label?{element:bs.element,label:bs.label}:null,Ss=null!==bs,ws=Fn(e=>{const n=Ut,t=e=>!e.item.rung&&null!==jn(Dt.data,n,e.item.id),o=e[e.length-1];if(!t(o))return o;const r=n=>e.find(e=>t(e)&&e.item.id===n),i=r(gs);return i?Ss?null:i:r(Ge(Dt.data,n,o.item.id,gs,Vl))??o},[Dt.data,Ut,gs,Vl,Ss]),[xs,zs]=Rn(null),[Cs,Os]=Rn(null),Bs=zr.canvasTab,Ns=Boolean(Fl||Hl||Bs);zn(Wo,"mouseover",e=>{if(!Ns)return;const n=Cn(e.target),t=n?yt(Dt.data,Ut,n):null;t!==xs&&zs(t),Bs&&n!==Cs&&Os(n)}),zn(Wo,"mouseout",e=>{Ns&&!e.relatedTarget&&(zs(null),Os(null))});const Is=e=>qt(e)||eo(e)||Kt(e.type),Ps=e=>{const n=Kt(e.type)?Bi(e.type):qt(e)?oo.header:eo(e)?oo.footer:null;return null===n?Pi(e):zr.rowName?zr.rowName(e,"section",n):n},Ts=[];if(Ns){const e=gs?yt(Dt.data,Ut,gs):null;for(const n of/* @__PURE__ */new Set([e,xs])){const e=n?hi.find(e=>String(e.props.id)===n):void 0;if(!e)continue;const t=qt(e)||e.type===Xt,o=Ul(e);if(o){Ts.push({id:String(e.props.id),label:Ps(e),below:t,reach:o});continue}if(!Fl||!Is(e))continue;const r=Fl(e);r&&Ts.push({id:String(e.props.id),label:r,below:t})}for(const e of Bs?/* @__PURE__ */new Set([gs,Cs]):[]){const n=e?ji(e):void 0,t=n?Bs(n):null;t&&!Ts.some(n=>n.id===e)&&Ts.push({id:e,label:t,below:!1,above:!0})}}const $s=fe(),Ms=Ln(null);Dn(()=>{const e=Jt.changeNotice;if(!e)return;const n=JSON.stringify(hi.filter(Is)),t=Ms.current;if(Ms.current={doc:Un,bands:n,index:Vt.index},!t||t.doc!==Un||t.bands===n)return;Vt.hasPast&&Vt.index>=t.index&&!gt.has($s)&&(gt.add($s),Kr(e,"success",{action:{label:oo.bar.undo,onClick:()=>Vt.back()},duration:8e3}))},[hi]);const js=e=>{or(V),bo.select(e.zone===Oe?{index:e.index}:{index:e.index,zone:e.zone})},As=q(),Ls=()=>({data:Dt.data,device:No,ops:bo,inspector:fr}),Es=As?.model,Rs=En(()=>Es?e=>Es(e,ms(e),Ls()):ms,[Es,ms,No]),Ds=As?.measure,Fs=Ds?(e,n)=>Ds(e,n,Ls()):void 0,Vs=As?.canDrop,Ws=Vs?(e,n)=>Vs(e,n,ls,Ls()):ls,Hs=As?.drop,Us=Hs?(e,n)=>Hs(e,n,us,Ls()):us,Js=As?.pick,Qs=Js?e=>Js(e,js,Ls()):js,Xs=As?.media??null,Ys=Ln(null),Ks=En(()=>Xs?{id:ht,zone:"",index:-1,type:Xs.adds.type,add:{kind:Xs.adds.kind,type:Xs.adds.type},media:!0}:null,[Xs]);Dn(()=>{if(!Ks||$t||"undefined"==typeof document)return;const e=e=>{(e=>Array.from(e.dataTransfer?.types??[]).includes(nt))(e)&&(Ys.current=null,fs.start({key:ht,item:Ks}))},n=e=>{fs.get()?.item.media&&(Ys.current=Kn(e.dataTransfer))},t=()=>{fs.get()?.item.media&&fs.end()};return document.addEventListener("dragstart",e),document.addEventListener("drop",n,!0),document.addEventListener("dragend",t,!0),()=>{document.removeEventListener("dragstart",e),document.removeEventListener("drop",n,!0),document.removeEventListener("dragend",t,!0)}},[Ks,$t,fs]);const Gs=()=>{const e=Ys.current;return Ys.current=null,e},Zs=ce(),_s=async e=>{if(!Zs)return e;const n=await Zs(e);return n?{...e,id:n.id,url:n.url}:null};const qs=(e,n)=>{if(!Xs)return;const t=jn(vo.getState().appState.data,gi,n);if(!t)return;const o=t.node;bo.replaceComponent($n(t.place),t.place.index,{...o,props:{...Xs.replace(o,e),id:o.props.id}})},ed=e=>{const n=$n(e),t=Li(n);t&&Fi(t.node,t.slot,!1),pl(n,e.index)},nd=(e,n)=>/* @__PURE__ */pt(Je,{...$t?{}:hs.seam({place:{...Mn(e),index:n}})},`seam:${e}:${n}`),td={rowClick:hl,isCollapsed:Ur,toggleCollapse:Jr},od=e=>{const n=String(e.props.id),t=hi.findIndex(e=>String(e.props.id)===n),o=Gt(n),r=Mi(o),i=Ur(n),l=Bi(e.type),s=zr.rowName?zr.rowName(e,"section",l):l,d=e=>nd(o,e);/* @__PURE__ */
|
|
16
16
|
return ut(ft,{children:[
|
|
17
|
-
/* @__PURE__ */pt(
|
|
17
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:e.type,size:13}),name:s,preview:gl(e),marks:yl(e),onSelect:()=>il(t),nameSlot:Xi(Oe,t,n,s),selected:rr===n,badge:Ul(e)?void 0:Yl,shared:Ul(e),actions:vl(e,Oe,t)??void 0,rowProps:{"data-node-id":n,onClick:hl(()=>il(t))},fold:{open:!i,label:"section",onToggle:()=>Jr(n)}}),!i&&/* @__PURE__ */ut(Ve,{children:[r.map((n,t)=>{const r=String(n.props.id),i=Pi(n),l=Pl(n),s=l&&Ur(r),a=()=>$l(o,t,r,e.type),{rowProps:c,...p}=hs.row({item:{id:r,zone:o,index:t,type:n.type},place:{...Mn(o),index:t}},{"data-node-id":r,onClick:hl(a)});/* @__PURE__ */
|
|
18
18
|
return ut(Hn,{children:[d(t),
|
|
19
|
-
/* @__PURE__ */pt(
|
|
19
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:n.type,size:13}),name:i,preview:gl(n),marks:yl(n),onSelect:a,nameSlot:Xi(o,t,r,i),selected:rr===r,hidden:Boolean(n.props._hidden),...p,fold:l?{open:!s,label:"section",onToggle:()=>Jr(r)}:void 0,actions:/* @__PURE__ */ut(ft,{children:[ml(o,t,i),vl(n,o,t),bl(o,t,n,i)]}),rowProps:c}),l&&!s&&/* @__PURE__ */pt(Ve,{children:ld(n,2)})]},r)}),d(r.length)]})]})},rd=(e,n,t,o,r)=>{const i=String(e.props.id),l=`${i}:${n.slot}`,s=hs.dragging,d=!Ur(l)&&s?.rung?.nodeId!==i,a={...Mn(l),index:0},c=s&&!s.rung&&ls(s,a)?a:void 0,p=()=>Fi(e,n,!0),{rowProps:u,...f}=hs.row({item:{id:`rung:${l}`,zone:`${i}:${wt}`,index:t,type:e.type,rung:{nodeId:i,slot:n.slot}},place:{parentId:i,slot:wt,index:t},into:c,canDrag:Boolean(gr.moveSlot)&&!1!==n.movable&&o>1},{"data-slot-zone":l,onClick:hl(p)}),h=$t?null:gr.slotActions?.(e,n.slot);/* @__PURE__ */
|
|
20
20
|
return ut(Hn,{children:[n.heading,
|
|
21
|
-
/* @__PURE__ */pt(
|
|
22
|
-
return pt(ft,{children:t.map(t=>{const i=t.kids,l=t.rung?n+1:n,s=
|
|
21
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:n.glyph??null,name:n.label,badge:n.badge,onSelect:p,selected:Ei===l,...f,dragHint:n.dragHint,fold:{open:d,label:n.label,onToggle:()=>Jr(l)},actions:h&&h.length>0?/* @__PURE__ */pt(ft,{children:h.map((t,o)=>/* @__PURE__ */pt(Ue,{kind:"delete"===t.kind?"delete":"plain",label:t.label,disabled:t.disabled,onClick:()=>((e,n,t)=>{if($t||t.disabled)return;const o=String(e.props.id),r=e=>{"string"==typeof e&&Vi(o,e,n.panel)},i=t.run();i&&"function"==typeof i.then?i.then(r):r(i)})(e,n,t),children:"delete"===t.kind?/* @__PURE__ */pt(lt,{size:15}):/* @__PURE__ */pt(ct,{size:15})},`${o}:${t.kind}`))}):void 0,rowProps:u}),d&&/* @__PURE__ */pt(Ve,{children:r})]},l)},id=(e,n)=>{const t=zl(e),o=t.filter(e=>e.rung).length;let r=0;/* @__PURE__ */
|
|
22
|
+
return pt(ft,{children:t.map(t=>{const i=t.kids,l=t.rung?n+1:n,s=Bl(e,void 0,t.slot),d=s?`${e.props.id}:${s.slot}`:null,a=null===t.slot?null:`${e.props.id}:${t.slot}`,c=(e,n)=>nd(e,n),p=/* @__PURE__ */ut(ft,{children:[i.map(({child:n,zone:t,index:o})=>{const r=rr===String(n.props.id),{collapsible:i,folded:s}=Nl(n,l,Tl(n.type)),d=String(n.props.id),a=es(n),p=()=>$l(t,o,d,e.type),{rowProps:u,...f}=hs.row({item:{id:d,zone:t,index:o,type:n.type},place:{...Mn(t),index:o}},{"data-node-id":d,onClick:hl(p)});/* @__PURE__ */
|
|
23
23
|
return ut(Hn,{children:[0===o&&c(t,0),
|
|
24
|
-
/* @__PURE__ */pt(
|
|
25
|
-
return pt(ft,{children:o.map(o=>{const l=o.kids,s=o.rung?n+1:n,d=
|
|
24
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:n.type,size:13}),name:a,preview:gl(n),marks:yl(n),onSelect:p,nameSlot:Xi(t,o,d,a),selected:r,hidden:Boolean(n.props._hidden),...f,fold:i?{open:!s,label:"group",onToggle:()=>Jr(d)}:void 0,actions:/* @__PURE__ */ut(ft,{children:[ml(t,o,a),vl(n,t,o),bl(t,o,n,a)]}),rowProps:u}),i&&!s&&/* @__PURE__ */pt(Ve,{children:id(n,l+1)}),c(t,o+1)]},String(n.props.id??`${t}-${o}`))}),null===a?d&&!i.some(e=>e.zone===d)?c(d,0):null:0!==i.length||!t.rung&&d!==a?null:c(a,0)]});return t.rung?rd(e,t.rung,r++,o,p):/* @__PURE__ */pt(Hn,{children:p},t.slot??"")})})},ld=(e,n)=>{const t=br(Dt?.data,e.type,String(e.props.id)),o=zl(e),r=o.filter(e=>e.rung).length;let i=0;/* @__PURE__ */
|
|
25
|
+
return pt(ft,{children:o.map(o=>{const l=o.kids,s=o.rung?n+1:n,d=Bl(e,t,o.slot),a=d?.spec??null,c=a&&Array.isArray(e.props[a.slot])?e.props[a.slot]:[],p=d&&d.choices?{slot:d.slot,choices:d.choices}:null,u=String(e.props.id),f=a&&!a.fixed?`${u}:${a.slot}`:null,h=p?`${u}:${p.slot}`:null,m=(e,n)=>nd(e,n),g=null===o.slot?null:`${u}:${o.slot}`,y=Boolean(a&&!a.fixed&&(null===g||g===f)),v=/* @__PURE__ */ut(ft,{children:[l.map(({child:n,zone:t,index:o})=>{const r=rr===String(n.props.id),i=Ji(n),l=String(n.props.id),{collapsible:d,folded:a}=Nl(n,s,Tl(n.type)),c=wl(n.type),p=1===c.length?`${l}:${c[0]}`:null,u=p?{...Mn(p),index:Mi(p).length}:void 0,f=hs.dragging,h=u&&f&&ls(f,u)?u:void 0,g=()=>$l(t,o,l,e.type),{rowProps:y,...v}=hs.row({item:{id:l,zone:t,index:o,type:n.type},place:{...Mn(t),index:o},into:h,canDrag:!yr(n.type,n)},{"data-node-id":l,onClick:hl(g)});/* @__PURE__ */
|
|
26
26
|
return ut(Hn,{children:[0===o&&m(t,0),
|
|
27
|
-
/* @__PURE__ */pt(
|
|
28
|
-
/* @__PURE__ */pt(z,{small:!0,label:a.addLabel,blocked:a.addBlocked?.(c)??null,onAdd:()=>Ml(e.props.id,a.slot,a.childType,c.length,e.type)}),null===g?h&&!l.some(e=>e.zone===h)?m(h,0):null:0!==l.length||(o.rung?y:g!==h)?null:m(g,0)]});return o.rung?rd(e,o.rung,i++,r,v):/* @__PURE__ */pt(Hn,{children:v},o.slot??"")})})},sd=
|
|
27
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:n.type,size:13}),name:i,preview:gl(n),marks:yl(n),onSelect:g,nameSlot:Xi(t,o,l,i),selected:r,hidden:Boolean(n.props._hidden),...v,fold:d?{open:!a,label:"group",onToggle:()=>Jr(l)}:void 0,actions:yr(n.type,n)?vl(n,t,o)??void 0:/* @__PURE__ */ut(ft,{children:[ml(t,o,i),vl(n,t,o),bl(t,o,n,i)]}),rowProps:y}),d&&!a&&/* @__PURE__ */pt(Ve,{children:ld(n,s+1)}),m(t,o+1)]},String(n.props.id??`${t}-${o}`))}),y&&a&&
|
|
28
|
+
/* @__PURE__ */pt(z,{small:!0,label:a.addLabel,blocked:a.addBlocked?.(c)??null,onAdd:()=>Ml(e.props.id,a.slot,a.childType,c.length,e.type)}),null===g?h&&!l.some(e=>e.zone===h)?m(h,0):null:0!==l.length||(o.rung?y:g!==h)?null:m(g,0)]});return o.rung?rd(e,o.rung,i++,r,v):/* @__PURE__ */pt(Hn,{children:v},o.slot??"")})})},sd=Ko,dd=e=>"panel"in e?{id:e.id,label:e.label,icon:e.icon,active:So&&!sd&&mr===e.id,onSelect:()=>ui(e.id)}:e,ad=[...(hr.railLead??[]).map(dd),{id:"sections",label:oo.layers,icon:/* @__PURE__ */pt(ge,{}),active:So&&!sd&&"sections"===mr,onSelect:()=>ui("sections")},...(hr.railTrail??[]).map(dd)],cd=To?{onPress:$o}:Lt?{onPress:()=>{x(Sn,{accept:"image/*",title:po.mediaLibrary})}}:null,pd={value:ad.find(e=>!0===e.active)?.id??"",press:e=>{const n=ad.find(n=>n.id===e);n&&!n.disabled&&!0!==n.active&&n.onSelect?.()},items:ad.map(e=>({id:e.id,icon:e.icon,label:/* @__PURE__ */pt("span",{className:"sr-only",children:e.label}),tooltip:e.label,disabled:e.disabled}))},ud=[...hr.railLead??[],...hr.railTrail??[]].find(e=>"panel"in e&&e.id===mr),fd=Boolean(to?.foldable),hd=to?.label??(Et?oo.pageSections:oo.templateSections),md=fd&&Ur(zt),gd=/* @__PURE__ */ut(ft,{children:[hi.map((e,n)=>{if(qt(e)||eo(e)||Kt(e.type))return null;const t=rr===String(e.props.id),o=Boolean(e.props._hidden);xl(e);const r=String(e.props.id),i=hr.hasOwnRows?.(e)??!1,l=Pl(e)||i,s=l&&Ur(r),d=wl(e.type),a=1===d.length?`${r}:${d[0]}`:null,c=a?{...Mn(a),index:Mi(a).length}:void 0,p=hs.dragging,u=c&&p&&ls(p,c)?c:void 0,{rowProps:f,...h}=hs.row({item:{id:r,zone:Oe,index:n,type:e.type},place:{...Mn(Oe),index:n},into:u,canDrag:!yr(e.type,e)},{"data-node-id":r,onClick:hl(()=>il(n))});/* @__PURE__ */
|
|
29
29
|
return ut(Hn,{children:[n>0&&kl(n),
|
|
30
|
-
/* @__PURE__ */pt(
|
|
30
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:e.type,size:13}),name:Pi(e),preview:gl(e),marks:yl(e),shared:Ul(e),onSelect:()=>il(n),nameSlot:Xi(Oe,n,r,Pi(e)),selected:t,hidden:o,...h,fold:l?{open:!s,label:"section",onToggle:()=>Jr(r)}:void 0,actions:/* @__PURE__ */ut(ft,{children:[ml(Oe,n,Pi(e)),vl(e,Oe,n),bl(Oe,n,e,Pi(e))]}),rowProps:f}),Pl(e)&&!s&&/* @__PURE__ */ut(Ve,{children:[ld(e,1),hr.partRows?.(e,td)]}),i&&!s&&/* @__PURE__ */pt(Ve,{children:hr.ownRows?.(e,n,td)})]},String(e.props.id??n))}),Zl>0&&kl(Zl)]}),yd=(e,n,t)=>{const o=String(e.props.id),r=Cl(e).length>0||Ol(e)||Boolean(Sr(e.type)),i=r&&Ur(o),l="header"===t?oo.header:oo.footer,s=zr.rowName?zr.rowName(e,"section",l):l;/* @__PURE__ */
|
|
31
31
|
return ut(ft,{children:[
|
|
32
|
-
/* @__PURE__ */pt(
|
|
33
|
-
/* @__PURE__ */pt(ee,{target:Wo,children:/* @__PURE__ */ut("div",{ref:Vo,className:"sf-editor es-editor",style:ln(
|
|
32
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:t,size:13}),name:s,preview:gl(e),marks:yl(e),badge:Ul(e)?void 0:Yl,shared:Ul(e),onSelect:()=>il(n),nameSlot:Xi(Oe,n,o,s),selected:rr===String(e.props.id),fold:r?{open:!i,label:"section",onToggle:()=>Jr(o)}:void 0,actions:vl(e,Oe,n)??void 0,rowProps:{"data-node-id":o,onClick:hl(()=>il(n))}}),r&&!i&&/* @__PURE__ */pt(Ve,{children:id(e,1)})]})};return(hr.wrap??(e=>e))(
|
|
33
|
+
/* @__PURE__ */pt(ee,{target:Wo,children:/* @__PURE__ */ut("div",{ref:Vo,className:"sf-editor es-editor",style:ln(Dr),onContextMenu:qi.onEditorContextMenu,...p(Sn),children:[
|
|
34
34
|
/* @__PURE__ */ut(Ze,{children:[
|
|
35
|
-
/* @__PURE__ */ut("div",{className:"es-cluster es-cluster--left",children:[cd?/* @__PURE__ */pt(
|
|
36
|
-
/* @__PURE__ */pt(_e,{label:oo.bar.undo,disabled:Boolean(
|
|
37
|
-
/* @__PURE__ */pt(_e,{label:oo.bar.redo,disabled:Boolean(
|
|
35
|
+
/* @__PURE__ */ut("div",{className:"es-cluster es-cluster--left",children:[cd?/* @__PURE__ */pt(Qn,{variant:"secondary",className:"es-barbtn",leftIcon:/* @__PURE__ */pt(ye,{}),onClick:cd.onPress,children:oo.railMedia}):null,
|
|
36
|
+
/* @__PURE__ */pt(_e,{label:oo.bar.undo,disabled:Boolean($t)||!Vt.hasPast,onClick:()=>Vt.back(),children:/* @__PURE__ */pt(tt,{})}),
|
|
37
|
+
/* @__PURE__ */pt(_e,{label:oo.bar.redo,disabled:Boolean($t)||!Vt.hasFuture,onClick:()=>Vt.forward(),children:/* @__PURE__ */pt(ot,{})})]}),
|
|
38
38
|
/* @__PURE__ */ut(qe,{children:[
|
|
39
|
-
/* @__PURE__ */pt(en,{devices:xo,value:
|
|
40
|
-
/* @__PURE__ */pt(_e,{label:oo.bar.refresh,tip:oo.bar.refreshTip,onClick:()=>{
|
|
39
|
+
/* @__PURE__ */pt(en,{devices:xo,value:No,onChange:Io}),
|
|
40
|
+
/* @__PURE__ */pt(_e,{label:oo.bar.refresh,tip:oo.bar.refreshTip,onClick:()=>{Fo.current=(()=>{const e=Wo?.document;if(!e)return null;const n=hi.findIndex(eo),t=n>=0?n:hi.length;let o=null;for(let n=0;n<t;n++){const t=hi[n]?.props?.id;if(null==t)continue;const r=In(e,`[data-easel-block="${CSS.escape(String(t))}"]`);if(!r)continue;const i=r.getBoundingClientRect().top;i<=4&&(null===o||i>o.offset)&&(o={id:String(t),offset:i})}if(!o){const e=Wt?.props?.id??hi[0]?.props?.id;null!=e&&(o={id:String(e),offset:0})}return o})(),Do(e=>e+1)},children:/* @__PURE__ */pt(rt,{})}),hr.barView?.()]}),
|
|
41
41
|
/* @__PURE__ */ut(qe,{kind:"right",style:{minWidth:300},children:[
|
|
42
|
-
/* @__PURE__ */pt(b,{input:
|
|
42
|
+
/* @__PURE__ */pt(b,{input:Xo,words:oo.saveStatus}),On?/* @__PURE__ */pt(On,{}):null,hr.barLead?.(),hr.barTrail?.(),hr.mainAction||!hr.barMain?/* @__PURE__ */pt(k,{input:Xo,action:hr.mainAction??{label:oo.done,onPress:()=>{qn(Dt.data)}},readOnly:Boolean($t),saveSwitch:jt,onToggleAutoSave:Nt,onSaveNow:Yo,bar:oo.bar,words:oo.saveStatus}):hr.barMain()]})]}),
|
|
43
43
|
/* @__PURE__ */pt(v,{}),
|
|
44
44
|
/* @__PURE__ */ut("div",{className:"sf-body",children:[So?/* @__PURE__ */ut(ft,{children:[
|
|
45
45
|
/* @__PURE__ */ut("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left","aria-label":oo.leftPanel,children:[
|
|
46
46
|
/* @__PURE__ */ut("div",{className:"es-paneltabs es-paneltabs--with-hide",children:[
|
|
47
|
-
/* @__PURE__ */pt(
|
|
47
|
+
/* @__PURE__ */pt(N,{side:"left",onHide:ci}),
|
|
48
48
|
/* @__PURE__ */pt("span",{className:"es-paneltabs-divider","aria-hidden":"true"}),
|
|
49
|
-
/* @__PURE__ */pt(
|
|
50
|
-
/* @__PURE__ */pt(I,{icon:/* @__PURE__ */pt(ge,{}),title:oo.layers,context:uo,actions:/* @__PURE__ */ut(ft,{children:[
|
|
49
|
+
/* @__PURE__ */pt(Xn,{variant:"underline",block:!0,"aria-label":oo.bar.views,value:pd.value,onChange:pd.press,items:pd.items})]}),Ko?/* @__PURE__ */pt(C,{at:_o?{label:(e=>{const n=rs(e.zone);if(n)return oo.add.addingTo({name:zr.rowName?fl(n,!0):Bi(n.type)});if(e.zone===Oe){const n=hi[e.index];return n&&!eo(n)?oo.add.addingBefore({name:fl(n,!0)}):oo.add.addingAtEnd}const t=ds(e.zone);return t?oo.add.addingTo({name:t.parentName}):oo.add.addingHere})(_o),onClear:()=>qo(null)}:void 0,placeBlocks:_o&&_o.zone!==Oe?ds(_o.zone)?.choices:void 0,canTake:_o?e=>{if(!_o)return null;const n={...Mn(_o.zone),index:_o.index};if(cs(e,n))return null;if("shared"===e.kind&&_o.zone===Oe&&!Jt.shared?.nodeOf(e.section))return oo.shared.alreadyHere;const t=rs(_o.zone);if(t)return oo.add.notInside({name:fl(t,!0)});if(_o.zone===Oe)return oo.add.onlySections;const o=ds(_o.zone);return o?oo.add.notInside({name:o.parentName}):oo.add.onlySections}:void 0,onPick:_o?e=>{if(!_o)return;const n={...Mn(_o.zone),index:_o.index};cs(e,n)&&(ps(e,n),ul())}:void 0,itemFor:e=>({id:`new:${e.kind}:${xt(e)}`,zone:"",index:-1,type:"template"===e.kind?e.template.node.type:"shared"===e.kind?e.section.node.type:xt(e),add:e}),session:fs,siteWide:hr.addPanelRow?.(ul),onClose:ul,readOnly:Boolean($t)}):ud?ud.panel({onHide:ci,notify:Kr}):/* @__PURE__ */ut(ft,{children:[
|
|
50
|
+
/* @__PURE__ */pt(I,{icon:/* @__PURE__ */pt(ge,{}),title:oo.layers,context:uo,actions:/* @__PURE__ */ut(ft,{children:[!$t&&/* @__PURE__ */pt(nn,{label:oo.add.title,onClick:()=>cl(null),children:/* @__PURE__ */pt(it,{size:15})}),
|
|
51
51
|
/* @__PURE__ */pt(nn,{label:ql?oo.expandAll:oo.collapseAll,title:0===_l.length?oo.nothingToFold:void 0,disabled:0===_l.length,onClick:()=>Rr(e=>{const n=new Set(_l);return ql?new Set([...e].filter(e=>!n.has(e))):/* @__PURE__ */new Set([...e,..._l])}),children:/* @__PURE__ */pt(bt,{expand:ql})})]})}),
|
|
52
|
-
/* @__PURE__ */ut(We,{className:"sf-tree sf-scroll",words:ro,children:[
|
|
53
|
-
/* @__PURE__ */pt(
|
|
54
|
-
/* @__PURE__ */pt(tn,{side:"left",width:
|
|
55
|
-
/* @__PURE__ */ut("div",{ref:
|
|
52
|
+
/* @__PURE__ */ut(We,{className:"sf-tree sf-scroll",words:ro,children:[Kl&&/* @__PURE__ */ut(ft,{children:[!Wl&&/* @__PURE__ */pt(He,{children:oo.header}),od(Kl)]}),Rt&&!(Wl&&Kl)&&/* @__PURE__ */ut(ft,{children:[!Wl&&/* @__PURE__ */pt(He,{children:oo.header}),!no&&/* @__PURE__ */pt(Fe,{words:ro,icon:/* @__PURE__ */pt(Or,{type:"header",size:13}),name:oo.header,badge:Xl?void 0:Yl,shared:Xl,onSelect:fi,selected:tr.kind===_t?.kind,rowProps:{onClick:hl(fi)}})]}),Dl&&!(Wl&&Kl)&&yd(Dl,Rl,"header"),!fd&&/* @__PURE__ */pt(He,{children:hd}),fd?/* @__PURE__ */ut(ft,{children:[
|
|
53
|
+
/* @__PURE__ */pt(Fe,{words:ro,icon:null,name:hd,fold:{open:!md,label:hd,onToggle:()=>Jr(zt)}}),!md&&/* @__PURE__ */pt(Ve,{children:gd})]}):gd,Rt&&!Wl&&/* @__PURE__ */pt(He,{children:oo.footer}),El&&!(Wl&&Gl)&&yd(El,Ll,"footer"),Gl&&od(Gl),hr.treeFoot?.()]})]})]}),
|
|
54
|
+
/* @__PURE__ */pt(tn,{side:"left",width:Dr.left,min:rn.left,max:on,defaultWidth:h.left,label:oo.resizeLeftPanel,onResize:Wr})]}):/* @__PURE__ */pt(P,{side:"left",onShow:ci}),
|
|
55
|
+
/* @__PURE__ */ut("div",{ref:Gr,className:"sf-center sf-scroll","data-sf-canvas-head":ni?"":void 0,style:{overflowX:si?"auto":"hidden",overflowY:"hidden"},children:[ni&&/* @__PURE__ */pt("div",{ref:ti,className:"sf-canvas-head",children:/* @__PURE__ */pt(ni,{device:No})}),
|
|
56
56
|
/* @__PURE__ */ut("div",{className:"sf-frame-scaler",style:di,children:[
|
|
57
|
-
/* @__PURE__ */pt("div",{className:"sf-frame "+(Oo
|
|
58
|
-
/* @__PURE__ */pt(Re.Provider,{value:Vl,children:/* @__PURE__ */pt(
|
|
59
|
-
/* @__PURE__ */pt(hn,{canvas:Wo,session:fs,model:Rs,measure:
|
|
60
|
-
/* @__PURE__ */pt(mn,{index:e.index,label:oo.addSectionHere,onInsert:()=>cl(e.index),className:void 0===e.height?"sf-preview-gap":"sf-preview-gap sf-preview-gap--tight",style:void 0===e.height?{top:e.top}:{top:e.top,height:e.height}},e.index))})]})}),
|
|
61
|
-
/* @__PURE__ */pt("div",{className:"es-sidepanel es-sidepanel--right","data-es-host-panel":"",children:
|
|
62
|
-
/* @__PURE__ */pt(tn,{side:"right",width:
|
|
57
|
+
/* @__PURE__ */pt("div",{className:"sf-frame "+(No===Oo?"":`sf-frame--${No}`),style:ai,children:/* @__PURE__ */ut("div",{className:"sf-preview-host",children:[
|
|
58
|
+
/* @__PURE__ */pt(Re.Provider,{value:Vl,children:/* @__PURE__ */pt(De.Provider,{value:Ql,children:/* @__PURE__ */pt(fo,{},Ro)})}),
|
|
59
|
+
/* @__PURE__ */pt(hn,{canvas:Wo,session:fs,model:Rs,measure:Fs,canDrop:Ws,onDrop:Us,choose:ws,tag:ks,onPick:Qs,dropOn:Xs?{accepts:(e,n)=>{if(!e.media||!Xs||n.item.rung)return!1;const t=jn(Dt.data,gi,n.item.id);return null!==t&&Xs.takes(t.node)},onDrop:(e,n)=>(e=>{const n=Gs();n&&Xs&&_s(n).then(n=>{n&&qs(n,e.item.id)})})(n),label:()=>oo.canvasReplaceImage}:void 0,onZoneAdd:ed,onSeamAdd:ed,zoneAddLabel:oo.canvasAddBlock,words:io.canvas,readOnly:Boolean($t),revision:Dt.data}),er.length>0&&!Ho&&/* @__PURE__ */pt("div",{className:"sf-preview-gaps",children:er.map(e=>
|
|
60
|
+
/* @__PURE__ */pt(mn,{index:e.index,label:oo.addSectionHere,onInsert:()=>cl(e.index),className:void 0===e.height?"sf-preview-gap":"sf-preview-gap sf-preview-gap--tight",style:void 0===e.height?{top:e.top}:{top:e.top,height:e.height}},e.index))})]})}),Ns?/* @__PURE__ */pt(vt,{canvas:Wo,tabs:Ts,onSelect:Di}):null]})]}),wo?/* @__PURE__ */ut(ft,{children:[Bn?
|
|
61
|
+
/* @__PURE__ */pt("div",{className:"es-sidepanel es-sidepanel--right","data-es-host-panel":"",children:Bn}):/* @__PURE__ */pt(ft,{children:/* @__PURE__ */pt(u,{value:{selectChild:$l,addChild:Ml,childRowName:Ji,blockRowName:es},children:/* @__PURE__ */pt(ho,{mode:tr,onOpenWebsiteSettings:hr.openSettings??(()=>{}),onOpenSiteStyles:hr.openStyles,onOpenPageStyles:hr.openPageStyles,onSelectNode:Pr,onNotify:Kr,onHidePanel:pi,nodeActions:Wt?Be(Ut,Wt.type):Ct})})}),
|
|
62
|
+
/* @__PURE__ */pt(tn,{side:"right",width:Dr.right,min:rn.right,max:on,defaultWidth:h.right,label:oo.resizeSettingsPanel,onResize:Hr})]}):
|
|
63
63
|
/* @__PURE__ */pt(P,{side:"right",onShow:pi})]}),qi.menu,
|
|
64
|
-
/* @__PURE__ */pt(ie,{}),wi?/* @__PURE__ */pt(mt,{name:wi.name,onMake:e=>(async(e,n)=>{const t=hi.find(n=>String(n.props.id)===e),o=
|
|
64
|
+
/* @__PURE__ */pt(ie,{}),wi?/* @__PURE__ */pt(mt,{name:wi.name,onMake:e=>(async(e,n)=>{const t=hi.find(n=>String(n.props.id)===e),o=Jt.shared;if(!t||!o)return;let r;try{r=await B(Si).create(n,t)}catch{return void Kr(oo.shared.makeFailed,"error")}o.adopt(t,r),xi(null)})(wi.id,e),onCancel:()=>xi(null)}):null]})}))}export{Bt as ScreenChrome};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useScreenBlockRules as e}from"./chunk-
|
|
1
|
+
import{useScreenBlockRules as e}from"./chunk-LSGKADNV.js";import{newNodeId as t,ROOT_ZONE as n}from"./chunk-TCAAOYQY.js";import{useEasel as o,useEaselApi as r}from"./chunk-BBD3FLU3.js";import{useMemo as s}from"react";function i(i={}){const{dispatch:p}=o(e=>e),d=r(),c=!0===i.readOnly,a=e().resolveOnInsert,l=!0===(i.resolveOnInsert??a),m=!0===i.foldIntoHistory;return s(()=>{const e=m?e=>p({...e,recordHistory:!1}):p,o=(n,o,r)=>{const s=t(o);return c||e({type:"insert",componentType:o,destinationZone:n,destinationIndex:r,id:s}),s},r=e=>(l&&!c&&d.resolveNode(e,{trigger:"insert"}),e),s=(t,n,o)=>{c||e({type:"replace",destinationZone:t,destinationIndex:n,data:o})},i=(e,t,n)=>r(o(e,t,n));return{insertComponent:i,insertSection:(e,t)=>i(n,e,t),replaceComponent:s,seedChild:(e,t,n,i)=>{const p=o(e,n,t);s(e,t,{type:n,props:{id:p,...i}}),r(p)},insertNode:(e,t,n)=>{const i=o(e,n.type,t);return s(e,t,{type:n.type,props:{...n.props,id:i}}),r(i)},removeComponent:(t,n)=>{c||e({type:"remove",index:n,zone:t})},reorderComponent:(t,n,o)=>{c||e({type:"reorder",sourceIndex:n,destinationIndex:o,destinationZone:t})},duplicateComponent:(t,n)=>{c||e({type:"duplicate",sourceIndex:n,sourceZone:t})},select:e=>p({type:"setUi",ui:{itemSelector:e}}),setDocument:t=>{c||e({type:"setData",data:t})},commitDocument:(t,n)=>{c||(m?d.batch(()=>{e({type:"setData",data:t}),void 0!==n&&("slot"===n?.kind?d.selectSlot({parentId:n.parentId,slot:n.slot}):d.select(n?n.id:null))}):d.run({data:t,select:n}))}}},[p,c,l,d,m])}export{i as useSectionOps};
|
package/dist/fields/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{FieldText,Inspector,InspectorField,LinkPicker,ListField,bucketsOf,fieldShownInView,insertAt,labelOf,moveTo,planFields,removeAt}from"../chunk-
|
|
1
|
+
export{FieldText,Inspector,InspectorField,LinkPicker,ListField,bucketsOf,fieldShownInView,insertAt,labelOf,moveTo,planFields,removeAt}from"../chunk-R76XMEKT.js";export{fieldIsShown,showWhenOf,shownFields,withShowWhen}from"../chunk-BPXEFVSQ.js";import"../chunk-YCSZAP7T.js";export{FieldSlider}from"../chunk-ZEH6QLBH.js";import"../chunk-WHS6Y55E.js";import"../chunk-FM6JO4WF.js";import"../chunk-K56YDHYQ.js";import"../chunk-56ID6FKZ.js";export{useResolvedFields}from"../chunk-K53PQAMP.js";import"../chunk-FIVU2COQ.js";export{FieldNumber}from"../chunk-Y2T3JX7K.js";export{FieldSelect,optionFor}from"../chunk-KFWNGPW3.js";import"../chunk-MIX7EGRG.js";import"../chunk-DX3VILZ3.js";import"../chunk-JACEEVVF.js";import"../chunk-MFIRYGHW.js";import"../chunk-3XECMGXX.js";import"../chunk-P2VEMZH5.js";import"../chunk-EUFDQ4KL.js";import"../chunk-KXM6YRG2.js";
|
package/dist/panel/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { W as WordFit } from '../wordFit-7XpmhcaW.js';
|
|
4
|
-
import { P as PanelWords } from '../words-
|
|
4
|
+
import { P as PanelWords, C as ColourRowWords } from '../words-BrN08Fup.js';
|
|
5
|
+
import { ColorPreset } from 'efficient-shell/ui';
|
|
5
6
|
export { BorderInput as SettingsBorder, BorderLineStyle as SettingsBorderLineStyle, BorderInputProps as SettingsBorderProps, BorderValue as SettingsBorderValue, CornerOption as SettingsCornerPoint, CornersInput as SettingsCorners, CornersInputProps as SettingsCornersProps, AlignmentGrid as SettingsPlacement, AlignmentPoint as SettingsPlacementPoint, AlignmentGridProps as SettingsPlacementProps, SidesInput as SettingsSides, SidesEachToggle as SettingsSidesEach, SidesInputProps as SettingsSidesProps, SidesValue as SettingsSidesValue, borderSides, borderStartEach, sidesStartEach } from 'efficient-shell/ui';
|
|
6
7
|
export { a as DESIGN_GROUPS, D as DesignGroup, b as SETTINGS_BUCKETS, S as SettingsBucket } from '../buckets-_MGDYJlb.js';
|
|
7
8
|
|
|
@@ -714,6 +715,66 @@ declare function SettingsDefaultReset({ label, changed, onReset, detail, disable
|
|
|
714
715
|
*/
|
|
715
716
|
declare function SettingsDrill({ name, preview, offPage, status, onOpen, id, className, }: SettingsDrillProps): react.JSX.Element;
|
|
716
717
|
|
|
718
|
+
interface SettingsColourProps {
|
|
719
|
+
/** The row's name, in the host's words. */
|
|
720
|
+
label: string;
|
|
721
|
+
/** The stored colour, `#rrggbb` — or `""` while it has none of its own. */
|
|
722
|
+
value: string;
|
|
723
|
+
/** Called with a lower-case `#rrggbb`, and only when it differs from `value`. */
|
|
724
|
+
onChange: (hex: string) => void;
|
|
725
|
+
icon?: ReactNode;
|
|
726
|
+
hint?: ReactNode;
|
|
727
|
+
/** The swatch's DOM id, where the row's label points at it. */
|
|
728
|
+
id?: string;
|
|
729
|
+
/** The swatch's name where the row's visible label names something else. */
|
|
730
|
+
ariaLabel?: string;
|
|
731
|
+
/** The colours the window offers first: the site's theme colours, the
|
|
732
|
+
* email's palette. The host's; the row holds no colour of its own. */
|
|
733
|
+
presets?: readonly ColorPreset[];
|
|
734
|
+
/** The colour in force while `value` is `""`: the swatch paints it and the
|
|
735
|
+
* hex box shows it in grey. Nothing is written for it. */
|
|
736
|
+
inherited?: string;
|
|
737
|
+
/** A WORD in place of the hex box ("Theme 2", "Auto"): the state the colour
|
|
738
|
+
* is in rather than the colour. Not drawn when it IS the value's hex. */
|
|
739
|
+
caption?: string;
|
|
740
|
+
/** The colour's opacity, 0-100, and its write: the row becomes the shell's
|
|
741
|
+
* one-line picker with its `%` box. */
|
|
742
|
+
opacity?: number;
|
|
743
|
+
onOpacityChange?: (opacity: number) => void;
|
|
744
|
+
/** The row holds a value of its own: the label is marked and ↺ shows. */
|
|
745
|
+
changed?: boolean;
|
|
746
|
+
/** Given, the label line carries `SettingsDefaultReset`. */
|
|
747
|
+
onReset?: () => void;
|
|
748
|
+
/** What ↺ goes back to, for its tooltip. */
|
|
749
|
+
resetTo?: string;
|
|
750
|
+
/** A sent campaign: every part is drawn and none can be pressed. */
|
|
751
|
+
readOnly?: boolean;
|
|
752
|
+
/** The row's words, `useEaselStrings().colourRow`. English when left out. */
|
|
753
|
+
words?: Partial<ColourRowWords>;
|
|
754
|
+
/** The ↺'s words, `useEaselStrings().panel`. English when left out. */
|
|
755
|
+
resetWords?: SettingsDefaultResetProps['words'];
|
|
756
|
+
/** Drawn under the control line. */
|
|
757
|
+
children?: ReactNode;
|
|
758
|
+
}
|
|
759
|
+
/**
|
|
760
|
+
* THE COLOUR ROW of both editors (twins plan E3; the look is the website's,
|
|
761
|
+
* Lewis 2026-10-23 option 2, confirmed for both editors 2026-10-30). The label
|
|
762
|
+
* line holds the label and the row's ↺; the shell's `ColorPicker` swatch and
|
|
763
|
+
* its `HexInput` sit on their own line under it, both 32 (harness FT-6). On
|
|
764
|
+
* the label line at 32 a long label, the swatch and the box ran past a 220
|
|
765
|
+
* panel.
|
|
766
|
+
*
|
|
767
|
+
* What is written is one lower-case `#rrggbb`, from every way in, and nothing
|
|
768
|
+
* until the merchant moves something: a row that only SHOWS the colour it
|
|
769
|
+
* follows (`inherited`) never pins it from the hex box. The followed colour is the box's VALUE
|
|
770
|
+
* in grey, not a placeholder: it is the colour most often copied, and the
|
|
771
|
+
* shell's box writes only a hex that differs from what it shows.
|
|
772
|
+
*
|
|
773
|
+
* Hook-free, like the rest of `panel`: a host may call it as a function inside
|
|
774
|
+
* a field's render. The theme or palette is the host's to read and hand in.
|
|
775
|
+
*/
|
|
776
|
+
declare function SettingsColour({ label, value, onChange, icon, hint, id, ariaLabel, presets, inherited, caption, opacity, onOpacityChange, changed, onReset, resetTo, readOnly, words, resetWords, children, }: SettingsColourProps): react.JSX.Element;
|
|
777
|
+
|
|
717
778
|
/**
|
|
718
779
|
* A FULL-WIDTH BUTTON UNDER A GROUP'S ROWS THAT COMMITS A CHANGE.
|
|
719
780
|
*
|
|
@@ -858,4 +919,4 @@ interface SettingsContentWidthProps {
|
|
|
858
919
|
}
|
|
859
920
|
declare function SettingsContentWidth({ mode, onMode, number, changed, detail, onReset, fullClosed, disabled, hint, labelId, words, resetWords, }: SettingsContentWidthProps): react.JSX.Element;
|
|
860
921
|
|
|
861
|
-
export { BACKGROUND_WIDTHS, type BackgroundWidth, type BackgroundWidthWords, type ContentWidthWords, DEFAULT_BACKGROUND_WIDTH_WORDS, DEFAULT_CONTENT_WIDTH_WORDS, SettingsAction, type SettingsActionBaseProps, type SettingsActionNote, type SettingsActionProps, SettingsBackgroundWidth, type SettingsBackgroundWidthProps, SettingsContentWidth, type SettingsContentWidthProps, SettingsDefaultReset, type SettingsDefaultResetProps, SettingsDrill, type SettingsDrillProps, SettingsField, type SettingsFieldProps, SettingsGroup, SettingsGroupHead, type SettingsGroupHeadProps, type SettingsGroupProps, SettingsGroupSub, type SettingsGroupSubProps, SettingsSegmented, type SettingsSegmentedFit, type SettingsSegmentedOption, type SettingsSegmentedProps, SettingsSwitch, type SettingsSwitchBaseProps, type SettingsSwitchLabel, type SettingsSwitchProps };
|
|
922
|
+
export { BACKGROUND_WIDTHS, type BackgroundWidth, type BackgroundWidthWords, ColourRowWords, type ContentWidthWords, DEFAULT_BACKGROUND_WIDTH_WORDS, DEFAULT_CONTENT_WIDTH_WORDS, SettingsAction, type SettingsActionBaseProps, type SettingsActionNote, type SettingsActionProps, SettingsBackgroundWidth, type SettingsBackgroundWidthProps, SettingsColour, type SettingsColourProps, SettingsContentWidth, type SettingsContentWidthProps, SettingsDefaultReset, type SettingsDefaultResetProps, SettingsDrill, type SettingsDrillProps, SettingsField, type SettingsFieldProps, SettingsGroup, SettingsGroupHead, type SettingsGroupHeadProps, type SettingsGroupProps, SettingsGroupSub, type SettingsGroupSubProps, SettingsSegmented, type SettingsSegmentedFit, type SettingsSegmentedOption, type SettingsSegmentedProps, SettingsSwitch, type SettingsSwitchBaseProps, type SettingsSwitchLabel, type SettingsSwitchProps };
|
package/dist/panel/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{BACKGROUND_WIDTHS,DEFAULT_BACKGROUND_WIDTH_WORDS,DEFAULT_CONTENT_WIDTH_WORDS,SettingsAction,SettingsBackgroundWidth,BorderInput as SettingsBorder,SettingsContentWidth,CornersInput as SettingsCorners,
|
|
1
|
+
export{BACKGROUND_WIDTHS,DEFAULT_BACKGROUND_WIDTH_WORDS,DEFAULT_CONTENT_WIDTH_WORDS,SettingsAction,SettingsBackgroundWidth,BorderInput as SettingsBorder,SettingsColour,SettingsContentWidth,CornersInput as SettingsCorners,SettingsDrill,SettingsGroupHead,SettingsGroupSub,AlignmentGrid as SettingsPlacement,SidesInput as SettingsSides,SidesEachToggle as SettingsSidesEach,borderSides,borderStartEach,sidesStartEach}from"../chunk-CLAADE4J.js";export{SettingsDefaultReset}from"../chunk-2T22IY3J.js";export{DESIGN_GROUPS,SETTINGS_BUCKETS,SettingsGroup}from"../chunk-FM6JO4WF.js";import"../chunk-56ID6FKZ.js";export{SettingsSwitch}from"../chunk-OECWLNKJ.js";export{SettingsField}from"../chunk-MIX7EGRG.js";export{SettingsSegmented}from"../chunk-DX3VILZ3.js";
|
package/dist/panel/panel.css
CHANGED
|
@@ -769,3 +769,49 @@
|
|
|
769
769
|
width: 100%;
|
|
770
770
|
min-width: 0;
|
|
771
771
|
}
|
|
772
|
+
|
|
773
|
+
/* ── SettingsColour: the colour row of both editors (twins plan E3) ─────────
|
|
774
|
+
The swatch and the hex box have their own line under the label, both 32
|
|
775
|
+
(Lewis 2026-10-23, option 2). The hex box's width is the shell's: it is
|
|
776
|
+
never narrower than its seven characters. */
|
|
777
|
+
.es-colour {
|
|
778
|
+
display: flex;
|
|
779
|
+
align-items: center;
|
|
780
|
+
gap: var(--es-space-8);
|
|
781
|
+
min-width: 0;
|
|
782
|
+
}
|
|
783
|
+
.es-colour-hexwrap {
|
|
784
|
+
flex: none;
|
|
785
|
+
display: flex;
|
|
786
|
+
}
|
|
787
|
+
.es-colour-caption {
|
|
788
|
+
font-size: var(--text-xs, 12px);
|
|
789
|
+
color: var(--es-muted);
|
|
790
|
+
white-space: nowrap;
|
|
791
|
+
}
|
|
792
|
+
/* The colour a row FOLLOWS, in its box in grey: the grey says the setting has
|
|
793
|
+
no colour of its own. */
|
|
794
|
+
.es-colour input.es-colour-hex.is-inherited {
|
|
795
|
+
color: var(--es-muted);
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
/* ── The image row of both editors (twins plan E3) ──────────────────────────
|
|
799
|
+
`.es-field-ctl` lays its control out in a flex ROW, where the shell's media
|
|
800
|
+
box would shrink to its content: this column takes the row, with the
|
|
801
|
+
host's notes and the paste box under the box. */
|
|
802
|
+
.es-image-row {
|
|
803
|
+
flex: 1 1 auto;
|
|
804
|
+
display: flex;
|
|
805
|
+
flex-direction: column;
|
|
806
|
+
align-items: stretch;
|
|
807
|
+
gap: var(--es-space-8);
|
|
808
|
+
min-width: 0;
|
|
809
|
+
}
|
|
810
|
+
.es-image-row > button {
|
|
811
|
+
align-self: flex-start;
|
|
812
|
+
}
|
|
813
|
+
/* A template's slot: the words in place of the box. */
|
|
814
|
+
.es-image-row-note {
|
|
815
|
+
font-size: var(--text-xs, 12px);
|
|
816
|
+
color: var(--es-muted);
|
|
817
|
+
}
|