efficient-easel 19.3.0 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/README.md +40 -3
  2. package/dist/{ScreenDocumentContext-D55vIrG3.d.ts → ScreenDocumentContext-RxVWWWHq.d.ts} +104 -1
  3. package/dist/blocks/index.d.ts +13 -2
  4. package/dist/canvas/index.d.ts +2 -0
  5. package/dist/canvas/index.js +1 -1
  6. package/dist/{chunk-FMZGR7EG.js → chunk-2A7HLAI5.js} +1 -1
  7. package/dist/chunk-2E2SXDYQ.js +1 -0
  8. package/dist/{chunk-67GNT6PF.js → chunk-3S5N4HLJ.js} +1 -1
  9. package/dist/chunk-A42LPWNM.js +1 -0
  10. package/dist/chunk-BC5KJNHN.js +63 -0
  11. package/dist/{chunk-X3TYRF5V.js → chunk-BSHIQIZC.js} +1 -1
  12. package/dist/{chunk-KWE5U6CE.js → chunk-BW5COX42.js} +1 -1
  13. package/dist/chunk-CBICQ4J3.js +5 -0
  14. package/dist/chunk-EW6XAMDZ.js +8 -0
  15. package/dist/chunk-HK6I3NVO.js +1 -0
  16. package/dist/{chunk-YRLPFZW3.js → chunk-IWCKVZHS.js} +1 -1
  17. package/dist/{chunk-KRXQM65X.js → chunk-K7BTCBWD.js} +1 -1
  18. package/dist/{chunk-A6CY3TQ5.js → chunk-KC24D76S.js} +1 -1
  19. package/dist/chunk-L55YIXDC.js +1 -0
  20. package/dist/chunk-LDEEFLE3.js +18 -0
  21. package/dist/chunk-LF3FUSCQ.js +1 -0
  22. package/dist/{chunk-7OKL7HDV.js → chunk-NHY5L3SE.js} +1 -1
  23. package/dist/chunk-OECWLNKJ.js +2 -0
  24. package/dist/{chunk-YOXKBOZX.js → chunk-QALW2ECZ.js} +1 -1
  25. package/dist/chunk-ROPYFLNZ.js +15 -0
  26. package/dist/{chunk-ME4V6PML.js → chunk-RR4VIAHP.js} +3 -3
  27. package/dist/chunk-SK3P56FS.js +21 -0
  28. package/dist/chunk-VANKQVOW.js +8 -0
  29. package/dist/chunk-XFYFKITX.js +1 -0
  30. package/dist/{chunk-XWFH2NHZ.js → chunk-ZEH6QLBH.js} +2 -2
  31. package/dist/copy/copy.css +1 -1
  32. package/dist/copy/index.js +13 -13
  33. package/dist/data/index.js +1 -1
  34. package/dist/drag/index.js +1 -1
  35. package/dist/draw/index.d.ts +2 -1
  36. package/dist/draw/index.js +1 -1
  37. package/dist/easel/index.js +1 -1
  38. package/dist/fields/index.js +1 -1
  39. package/dist/gold/gold.css +4 -1
  40. package/dist/node-ops/index.js +1 -1
  41. package/dist/panel/index.d.ts +7 -8
  42. package/dist/panel/index.js +9 -9
  43. package/dist/rail/index.d.ts +2 -2
  44. package/dist/rail/index.js +1 -1
  45. package/dist/rail/rail.css +1 -1
  46. package/dist/render/index.d.ts +12 -3
  47. package/dist/render/index.js +5 -5
  48. package/dist/repeat-Czi-6zPX.d.ts +49 -0
  49. package/dist/screen/components/AddBlockRow.js +1 -1
  50. package/dist/screen/components/AddSidePanel.js +1 -1
  51. package/dist/screen/components/NodeContextMenu.d.ts +1 -1
  52. package/dist/screen/components/NodeContextMenu.js +1 -1
  53. package/dist/screen/components/SaveControls.d.ts +1 -1
  54. package/dist/screen/components/ScreenChrome.js +1 -1
  55. package/dist/screen/components/ScreenDocumentContext.d.ts +1 -1
  56. package/dist/screen/components/ScreenMount.d.ts +1 -1
  57. package/dist/screen/components/ScreenMount.js +1 -1
  58. package/dist/screen/components/ScreenStoreProvider.d.ts +1 -1
  59. package/dist/screen/components/ScreenStoreProvider.js +1 -1
  60. package/dist/screen/components/SectionScreenShell.js +16 -16
  61. package/dist/screen/components/usePartBridge.d.ts +1 -1
  62. package/dist/screen/components/usePartBridge.js +1 -1
  63. package/dist/screen/index.d.ts +1 -1
  64. package/dist/screen/index.js +1 -1
  65. package/dist/screen/lib/content/view-tiers.d.ts +81 -1
  66. package/dist/screen/lib/content/view-tiers.js +1 -1
  67. package/dist/screen/lib/document-addressing.d.ts +1 -1
  68. package/dist/screen/lib/document-contract.d.ts +12 -5
  69. package/dist/screen/lib/host.d.ts +1 -1
  70. package/dist/screen/lib/key-scope.js +1 -1
  71. package/dist/screen/lib/media-panel.d.ts +1 -1
  72. package/dist/screen/lib/media-picker.d.ts +1 -1
  73. package/dist/screen/lib/puck/preview-dom.js +1 -1
  74. package/dist/screen/lib/puck/style-clipboard.d.ts +1 -1
  75. package/dist/screen/lib/puck/use-section-ops.js +1 -1
  76. package/dist/screen/lib/screen-parts.d.ts +1 -1
  77. package/dist/screen/lib/screen-parts.js +1 -1
  78. package/dist/shell/shell.css +4 -2
  79. package/dist/strings/index.js +1 -1
  80. package/dist/text-styles/index.js +36 -36
  81. package/dist/text-styles/model.d.ts +8 -0
  82. package/package.json +3 -3
  83. package/dist/chunk-36LVP5WD.js +0 -9
  84. package/dist/chunk-4ES5JGGX.js +0 -1
  85. package/dist/chunk-4VJATVVR.js +0 -1
  86. package/dist/chunk-CNKVVHDA.js +0 -63
  87. package/dist/chunk-DWIOHQG7.js +0 -1
  88. package/dist/chunk-H5YLVKGA.js +0 -1
  89. package/dist/chunk-KOVJODTY.js +0 -14
  90. package/dist/chunk-NKB3KVAB.js +0 -1
  91. package/dist/chunk-OGBYHQE6.js +0 -5
  92. package/dist/chunk-U6LF5YVK.js +0 -8
  93. package/dist/chunk-VULUDKA3.js +0 -21
  94. package/dist/chunk-ZO3UUK45.js +0 -18
  95. /package/dist/{chunk-X4T6JT3M.js → chunk-QIDRJH3S.js} +0 -0
@@ -1 +1 @@
1
- export{DocumentScreen,ScreenMount as default}from"../../chunk-ME4V6PML.js";import"../../chunk-GXQCZJOP.js";import"../../chunk-CNKVVHDA.js";import"../../chunk-2GVCAIPX.js";import"../../chunk-26OOWIJJ.js";import"../../chunk-JBOSEHIX.js";import"../../chunk-FGNR22NY.js";import"../../chunk-LER7RKTO.js";import"../../chunk-FGYJ5DJY.js";import"../../chunk-7F52SZOI.js";import"../../chunk-MQNBD6AB.js";import"../../chunk-4ES5JGGX.js";import"../../chunk-A6CY3TQ5.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-C56MPJBH.js";import"../../chunk-H5YLVKGA.js";import"../../chunk-7OKL7HDV.js";import"../../chunk-PY7OOQEZ.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-KWE5U6CE.js";import"../../chunk-5545A3PC.js";import"../../chunk-U6LF5YVK.js";import"../../chunk-PA3PNTVV.js";import"../../chunk-5ZBY24K7.js";import"../../chunk-BVN33R76.js";import"../../chunk-43AEUUNQ.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-M2Z775ZC.js";import"../../chunk-OGBYHQE6.js";import"../../chunk-MS2U6MV5.js";import"../../chunk-YOXKBOZX.js";import"../../chunk-5DPIGWUL.js";import"../../chunk-M62P4IQK.js";import"../../chunk-EZG3TGQ7.js";import"../../chunk-ERR437B5.js";import"../../chunk-RYNBSKE7.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-VPFNZ7TB.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-O7Q4DDJT.js";import"../../chunk-RSCMJIWS.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-4VJATVVR.js";import"../../chunk-23DYNW6S.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-BHRC3ASL.js";import"../../chunk-6W7WLPZH.js";import"../../chunk-IQ5TA7AM.js";import"../../chunk-DUVRZ456.js";import"../../chunk-IYT6NN2J.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-VULUDKA3.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-XWFH2NHZ.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-RC25EGHD.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-ZG6PVMC3.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-THWO5YVZ.js";import"../../chunk-RE4LP46F.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-36LVP5WD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-ZO3UUK45.js";import"../../chunk-KAML3KQH.js";import"../../chunk-67GNT6PF.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-X4T6JT3M.js";import"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";import"../../chunk-BSPCSC45.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";
1
+ export{DocumentScreen,ScreenMount as default}from"../../chunk-RR4VIAHP.js";import"../../chunk-GXQCZJOP.js";import"../../chunk-BC5KJNHN.js";import"../../chunk-2GVCAIPX.js";import"../../chunk-26OOWIJJ.js";import"../../chunk-JBOSEHIX.js";import"../../chunk-FGNR22NY.js";import"../../chunk-LER7RKTO.js";import"../../chunk-FGYJ5DJY.js";import"../../chunk-7F52SZOI.js";import"../../chunk-MQNBD6AB.js";import"../../chunk-2E2SXDYQ.js";import"../../chunk-KC24D76S.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-C56MPJBH.js";import"../../chunk-A42LPWNM.js";import"../../chunk-NHY5L3SE.js";import"../../chunk-PY7OOQEZ.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-BW5COX42.js";import"../../chunk-5545A3PC.js";import"../../chunk-EW6XAMDZ.js";import"../../chunk-PA3PNTVV.js";import"../../chunk-5ZBY24K7.js";import"../../chunk-BVN33R76.js";import"../../chunk-43AEUUNQ.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-M2Z775ZC.js";import"../../chunk-CBICQ4J3.js";import"../../chunk-MS2U6MV5.js";import"../../chunk-QALW2ECZ.js";import"../../chunk-5DPIGWUL.js";import"../../chunk-M62P4IQK.js";import"../../chunk-EZG3TGQ7.js";import"../../chunk-ERR437B5.js";import"../../chunk-RYNBSKE7.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-VPFNZ7TB.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-O7Q4DDJT.js";import"../../chunk-RSCMJIWS.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-XFYFKITX.js";import"../../chunk-23DYNW6S.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-BHRC3ASL.js";import"../../chunk-6W7WLPZH.js";import"../../chunk-IQ5TA7AM.js";import"../../chunk-DUVRZ456.js";import"../../chunk-IYT6NN2J.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SK3P56FS.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-RC25EGHD.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-ZG6PVMC3.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-THWO5YVZ.js";import"../../chunk-RE4LP46F.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-VANKQVOW.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-LDEEFLE3.js";import"../../chunk-KAML3KQH.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";import"../../chunk-BSPCSC45.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";
@@ -27,7 +27,7 @@ import '../lib/section-template-types.js';
27
27
  import '../lib/puck/content-tree.js';
28
28
  import '../lib/shared-section-types.js';
29
29
  import '../lib/puck/block-choice.js';
30
- import '../../ScreenDocumentContext-D55vIrG3.js';
30
+ import '../../ScreenDocumentContext-RxVWWWHq.js';
31
31
  import '../lib/document-contract.js';
32
32
  import '../lib/document-switch.js';
33
33
  import '../../engine-CvXpFE86.js';
@@ -1 +1 @@
1
- export{ScreenStoreProvider as default}from"../../chunk-KWE5U6CE.js";import"../../chunk-OGBYHQE6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-VULUDKA3.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-XWFH2NHZ.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-RC25EGHD.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-36LVP5WD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-67GNT6PF.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-X4T6JT3M.js";import"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";
1
+ export{ScreenStoreProvider as default}from"../../chunk-BW5COX42.js";import"../../chunk-CBICQ4J3.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SK3P56FS.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-RC25EGHD.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-VANKQVOW.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -1,17 +1,17 @@
1
- import{AddBlockRow as e}from"../../chunk-FMZGR7EG.js";import{scrollPreviewToSection as n,gotoPreviewSlide as o}from"../../chunk-4ES5JGGX.js";import{useEaselUndoKeys as r}from"../../chunk-A6CY3TQ5.js";import{SlotChildActionsProvider as t}from"../../chunk-KCBEE2MC.js";import{DEFAULT_PANEL_W as s}from"../../chunk-C56MPJBH.js";import{usePartBridge as i}from"../../chunk-H5YLVKGA.js";import{useSectionOps as c}from"../../chunk-7OKL7HDV.js";import"../../chunk-M2Z775ZC.js";import{SELECTION_MODE as p,useScreenPinned as l,useScreenCanvasFrame as m,useScreenInspectorPanel as d,useScreenPickFollowsSelection as a,sameInspectorMode as u,useStandaloneScreenBridges as h,useScreenBlockLook as k,useScreenBlockRules as j}from"../../chunk-OGBYHQE6.js";import{MediaPopup as f}from"../../chunk-MS2U6MV5.js";import{useScreenDocument as S}from"../../chunk-M62P4IQK.js";import"../../chunk-EZG3TGQ7.js";import"../../chunk-ERR437B5.js";import"../../chunk-RYNBSKE7.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-VPFNZ7TB.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-O7Q4DDJT.js";import"../../chunk-RSCMJIWS.js";import"../../chunk-U3JP4VGF.js";import{DEFAULT_SCREEN_WORDS as y}from"../../chunk-23DYNW6S.js";import{slotChildRowName as N}from"../../chunk-BHRC3ASL.js";import"../../chunk-6W7WLPZH.js";import"../../chunk-IQ5TA7AM.js";import"../../chunk-DUVRZ456.js";import"../../chunk-IYT6NN2J.js";import{slotFieldsOf as C,nestsInTree as x}from"../../chunk-PLVEGYK6.js";import{useEasel as M}from"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-VULUDKA3.js";import"../../chunk-BPXEFVSQ.js";import{LayersTree as P,Subtree as R,TreeRow as A,TreeRowAction as D,TreeSeam as O}from"../../chunk-A6Z4SD3I.js";import{DEFAULT_TREE_WORDS as K}from"../../chunk-K56YDHYQ.js";import"../../chunk-XWFH2NHZ.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-RC25EGHD.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-NDRZP6YR.js";import{DEFAULT_SAVE_WORDS as V,saveIndicator as g}from"../../chunk-H6DDIBQ4.js";import{SaveState as B,panelWidthVars as v}from"../../chunk-ZG6PVMC3.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-THWO5YVZ.js";import"../../chunk-RE4LP46F.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-36LVP5WD.js";import{useWords as z}from"../../chunk-MFIRYGHW.js";import"../../chunk-ZO3UUK45.js";import"../../chunk-KAML3KQH.js";import{useTreeDrag as H}from"../../chunk-67GNT6PF.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-X4T6JT3M.js";import{zoneKey as Y,parseZoneKey as Z}from"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";import{useState as b,useRef as E,useEffect as w,useCallback as L,Fragment as T}from"react";import{Tooltip as F}from"efficient-shell/ui";import{TrashIcon as G}from"efficient-shell/icons/efficient";import{jsxs as W,jsx as J,Fragment as I}from"react/jsx-runtime";var X=e=>n=>{n.target.closest("button, input")||e()},Q={rowClick:X};function U(){const{saveState:U,readOnly:$,readOnlyReason:q=null}=S(),_=c(),{appState:ee,selectedItem:ne,config:oe}=M(e=>e),[re,te]=b(p),se=z("screen",y),ie=z("tree",K),ce=z("save",V),{first:pe,last:le,panelOf:me}=l(),de=me(pe),ae=m(),ue=d(),he=ee.data.content?.[0]??null,ke=he?.props.id??null,je=he?.type===pe,fe=he?.type===le,Se=E(null),ye=E(null);r(ye),a(ne?.props.id),w(()=>{ke&&Se.current!==ke&&(Se.current=ke,je?te(de??p):ne||_.select({index:0}))},[ke,ne,_,je]);const Ne=L(e=>te(n=>u(n,e)?n:e),[]),Ce=h({kind:re.kind,mode:re,open:Ne,show:e=>te(e),reveal:()=>{},select:(e,n)=>{te(e=>u(e,n)?e:n),_.select(e)}}),{selectNode:xe}=i({mode:re,setMode:te,onOpenPart:n}),Me=k(),{labelAtLevel:Pe,Icon:Re}=Me,{canAddTo:Ae}=j(),De=e=>Pe(e,"block",oe.components[e]?.label??e),Oe=e=>Pe(e,"section",De(e)),Ke=!je&&"puck"===re.kind&&ne?.props.id===ke,Ve=he?Ae(he.type)?.spec??null:null,ge=he&&Ve?`${he.props.id}:${Ve.slot}`:null,Be=he&&Ve&&Array.isArray(he.props[Ve.slot])?he.props[Ve.slot]:[],ve=e=>N(e,De,Me.plainText),ze=(e,r)=>{he&&Ve&&ge&&(te(p),Ve.slider?(o(String(he.props.id),e),_.select({index:e,zone:ge}),n(String(he.props.id))):(_.select({index:e,zone:ge}),n(r)))},He=()=>{if(!he||!Ve||!ge)return;const e=Be.length;_.insertComponent(ge,Ve.childType,e),te(p),Ve.slider?requestAnimationFrame(()=>{o(String(he.props.id),e),_.select({index:e,zone:ge})}):_.select({index:e,zone:ge})},Ye=e=>C(oe,e),Ze=e=>{const{parentId:n,slot:o}=Z(e),r=e=>{if(!e)return null;if(String(e.props.id)===n)return e;for(const n of Ye(e.type)){const o=Array.isArray(e.props[n])?e.props[n]:[];for(const e of o){const n=r(e);if(n)return n}}return null},t=r(he)?.props[o];return Array.isArray(t)?t.length:0},be=(e,n,o)=>{const r=Math.min(Math.max(o,0),Ze(e)),t=n<r?r-1:r;t!==n&&(_.reorderComponent(e,n,t),te(p),_.select({index:t,zone:e}))},Ee=H({keyOf:e=>e.id,readOnly:Boolean($),canDrop:(e,n)=>Y(n)===e.zone&&n.index>=0&&n.index<=Ze(e.zone),onDrop:(e,n)=>be(e.zone,e.index,n.index),onStep:(e,n)=>be(e.zone,e.index,n<0?e.index-1:e.index+2)}),we=(e,n)=>/* @__PURE__ */J(O,{...$?{}:Ee.seam({place:{...Z(e),index:n}})},`seam:${e}:${n}`),Le=e=>Me.blockRowName(e,De),Te=(e,o,r)=>{te(p),_.select({index:o,zone:e}),n(r)},Fe=(e,n,o)=>{_.insertComponent(e,n,o),te(p),_.select({index:o,zone:e})},Ge=(n,o,r)=>/* @__PURE__ */J(e,{choices:r,onPick:e=>Fe(n,e,o)}),We=(e,n)=>{const o=Ye((r=e).type).flatMap(e=>(Array.isArray(r.props[e])?r.props[e]:[]).map((n,o)=>({child:n,zone:`${r.props.id}:${e}`,index:o})));var r;const t=Ae(e.type),s=t?.choices??null,i="footer"===t?.source?Le:ve;/* @__PURE__ */
2
- return W(I,{children:[o.map(({child:e,zone:o,index:r})=>{const t=ne?.props.id===e.props.id,s=x(oe,e.type,n),c=i(e),l=String(e.props.id),m=()=>Te(o,r,l),{rowProps:d,...a}=Ee.row({item:{id:l,zone:o,index:r},place:{...Z(o),index:r}},{onClick:X(m)});/* @__PURE__ */
3
- return W(T,{children:[0===r&&we(o,0),
4
- /* @__PURE__ */J(A,{words:ie,icon:/* @__PURE__ */J(Re,{type:e.type,size:13}),name:c,selected:t,onSelect:m,...a,actions:/* @__PURE__ */J(D,{kind:"delete",label:se.deleteNamed({name:c}),onClick:()=>{return e=o,n=r,_.removeComponent(e,n),te(p),void _.select(null);var e,n},children:/* @__PURE__ */J(G,{size:13})}),rowProps:d}),s&&/* @__PURE__ */J(R,{children:We(e,n+1)}),we(o,r+1)]},String(e.props.id??`${o}-${r}`))}),t&&s?Ge(`${e.props.id}:${t.slot}`,o.length,s):null]})},Je="HeroSingle"===he?.type,Ie=Boolean(he)&&(Boolean(Ae(he.type))||Ye(he.type).length>0),Xe=Boolean(he)&&(Boolean(Ve)||fe||je||Je||Ie);/* @__PURE__ */
5
- return W("div",{ref:ye,className:"sf-editor es-editor",style:v(s),children:[
6
- /* @__PURE__ */J("div",{className:"sf-section-bar",children:/* @__PURE__ */J(B,null!==q?{tone:"off",label:q,role:"status"}:{...g(U,ce),role:"status"})}),
7
- /* @__PURE__ */W("div",{className:"sf-body",children:[Xe&&he&&/* @__PURE__ */W("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left",children:[
8
- /* @__PURE__ */J("div",{className:"sf-panel-head",children:/* @__PURE__ */J(F,{content:je?se.headerSettings:se.sectionSettings({name:Oe(he.type)}),side:"bottom",children:/* @__PURE__ */J("button",{type:"button",className:"sf-panel-title sf-panel-title--btn "+(Ke?"is-selected":""),"aria-pressed":Ke,onClick:()=>{je?te(de??p):(te(p),_.select({index:0}))},children:Oe(he.type)})})}),
9
- /* @__PURE__ */J(P,{className:"sf-tree sf-scroll",rootProps:Ee.rootProps(),words:ie,children:/* @__PURE__ */J(R,{children:je?
10
- /* @__PURE__ */J(A,{words:ie,icon:/* @__PURE__ */J(Re,{type:"header",size:13}),name:se.headerSettings,selected:re.kind===de?.kind,onSelect:()=>te(de??p),rowProps:{onClick:X(()=>te(de??p))}}):Ve?/* @__PURE__ */W(I,{children:[Be.map((e,n)=>{const o=ne?.props.id===e.props.id,r=ve(e),t=String(e.props.id),s=()=>ze(n,t),{rowProps:i,...c}=Ee.row({item:{id:t,zone:ge,index:n},place:{...Z(ge),index:n}},{onClick:X(s)});/* @__PURE__ */
11
- return W(T,{children:[0===n&&we(ge,0),
12
- /* @__PURE__ */J(A,{words:ie,icon:/* @__PURE__ */J(Re,{type:e.type,size:13}),name:r,selected:o,onSelect:s,...c,actions:/* @__PURE__ */J(D,{kind:"delete",label:se.deleteNamed({name:r}),onClick:()=>{return e=n,void(ge&&(_.removeComponent(ge,e),te(p),_.select(null)));var e},children:/* @__PURE__ */J(G,{size:13})}),rowProps:i}),we(ge,n+1)]},String(e.props.id??n))}),
13
- /* @__PURE__ */W("button",{type:"button",className:"sf-add-card",onClick:He,children:[
14
- /* @__PURE__ */J("span",{className:"sf-plus sf-plus--sm",children:"+"}),Ve.addLabel]}),ke?Ce.partRows?.(he,Q):null]}):We(he,1)})})]}),
1
+ import{AddBlockRow as e}from"../../chunk-2A7HLAI5.js";import{scrollPreviewToSection as n,gotoPreviewSlide as o}from"../../chunk-2E2SXDYQ.js";import{useEaselUndoKeys as r}from"../../chunk-KC24D76S.js";import{SlotChildActionsProvider as t}from"../../chunk-KCBEE2MC.js";import{DEFAULT_PANEL_W as s}from"../../chunk-C56MPJBH.js";import{usePartBridge as i}from"../../chunk-A42LPWNM.js";import{useSectionOps as c}from"../../chunk-NHY5L3SE.js";import"../../chunk-M2Z775ZC.js";import{SELECTION_MODE as p,useScreenPinned as l,useScreenCanvasFrame as m,useScreenInspectorPanel as d,useScreenPickFollowsSelection as a,sameInspectorMode as u,useStandaloneScreenBridges as h,useScreenBlockLook as k,useScreenBlockRules as j}from"../../chunk-CBICQ4J3.js";import{MediaPopup as f}from"../../chunk-MS2U6MV5.js";import{useScreenDocument as S}from"../../chunk-M62P4IQK.js";import"../../chunk-EZG3TGQ7.js";import"../../chunk-ERR437B5.js";import"../../chunk-RYNBSKE7.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-VPFNZ7TB.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-O7Q4DDJT.js";import"../../chunk-RSCMJIWS.js";import"../../chunk-U3JP4VGF.js";import{DEFAULT_SCREEN_WORDS as C}from"../../chunk-23DYNW6S.js";import{slotChildRowName as N}from"../../chunk-BHRC3ASL.js";import"../../chunk-6W7WLPZH.js";import"../../chunk-IQ5TA7AM.js";import"../../chunk-DUVRZ456.js";import"../../chunk-IYT6NN2J.js";import{slotFieldsOf as y,nestsInTree as x}from"../../chunk-PLVEGYK6.js";import{useEasel as D}from"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SK3P56FS.js";import"../../chunk-BPXEFVSQ.js";import{LayersTree as P,Subtree as A,TreeRow as M,TreeRowAction as R,TreeSeam as B}from"../../chunk-A6Z4SD3I.js";import"../../chunk-RC25EGHD.js";import{DEFAULT_TREE_WORDS as H}from"../../chunk-K56YDHYQ.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-NDRZP6YR.js";import{DEFAULT_SAVE_WORDS as L,saveIndicator as E}from"../../chunk-H6DDIBQ4.js";import{SaveState as g,panelWidthVars as I}from"../../chunk-ZG6PVMC3.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-THWO5YVZ.js";import"../../chunk-RE4LP46F.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-VANKQVOW.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import{useWords as v}from"../../chunk-MFIRYGHW.js";import"../../chunk-LDEEFLE3.js";import"../../chunk-KAML3KQH.js";import{useTreeDrag as z}from"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import{zoneKey as O,parseZoneKey as Z}from"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";import{useState as b,useRef as K,useEffect as w,useCallback as V,Fragment as Y}from"react";import{Tooltip as F}from"efficient-shell/ui";import{TrashIcon as Q}from"efficient-shell/icons/efficient";import{jsxs as W,jsx as J,Fragment as T}from"react/jsx-runtime";var $=e=>n=>{n.target.closest("button, input")||e()},G={rowClick:$};function X(){const{saveState:X,readOnly:U,readOnlyReason:q=null}=S(),_=c(),{appState:ee,selectedItem:ne,config:oe}=D(e=>e),[re,te]=b(p),se=v("screen",C),ie=v("tree",H),ce=v("save",L),{first:pe,last:le,panelOf:me}=l(),de=me(pe),ae=m(),ue=d(),he=ee.data.content?.[0]??null,ke=he?.props.id??null,je=he?.type===pe,fe=he?.type===le,Se=K(null),Ce=K(null);r(Ce),a(ne?.props.id),w(()=>{ke&&Se.current!==ke&&(Se.current=ke,je?te(de??p):ne||_.select({index:0}))},[ke,ne,_,je]);const Ne=V(e=>te(n=>u(n,e)?n:e),[]),ye=h({kind:re.kind,mode:re,open:Ne,show:e=>te(e),reveal:()=>{},select:(e,n)=>{te(e=>u(e,n)?e:n),_.select(e)}}),{selectNode:xe}=i({mode:re,setMode:te,onOpenPart:n}),De=k(),{labelAtLevel:Pe,Icon:Ae}=De,{canAddTo:Me}=j(),Re=e=>Pe(e,"block",oe.components[e]?.label??e),Be=e=>Pe(e,"section",Re(e)),He=!je&&"puck"===re.kind&&ne?.props.id===ke,Le=he?Me(he.type)?.spec??null:null,Ee=he&&Le?`${he.props.id}:${Le.slot}`:null,ge=he&&Le&&Array.isArray(he.props[Le.slot])?he.props[Le.slot]:[],Ie=e=>N(e,Re,De.plainText),ve=(e,r)=>{he&&Le&&Ee&&(te(p),Le.slider?(o(String(he.props.id),e),_.select({index:e,zone:Ee}),n(String(he.props.id))):(_.select({index:e,zone:Ee}),n(r)))},ze=()=>{if(!he||!Le||!Ee)return;const e=ge.length;_.insertComponent(Ee,Le.childType,e),te(p),Le.slider?requestAnimationFrame(()=>{o(String(he.props.id),e),_.select({index:e,zone:Ee})}):_.select({index:e,zone:Ee})},Oe=e=>y(oe,e),Ze=e=>{const{parentId:n,slot:o}=Z(e),r=e=>{if(!e)return null;if(String(e.props.id)===n)return e;for(const n of Oe(e.type)){const o=Array.isArray(e.props[n])?e.props[n]:[];for(const e of o){const n=r(e);if(n)return n}}return null},t=r(he)?.props[o];return Array.isArray(t)?t.length:0},be=(e,n,o)=>{const r=Math.min(Math.max(o,0),Ze(e)),t=n<r?r-1:r;t!==n&&(_.reorderComponent(e,n,t),te(p),_.select({index:t,zone:e}))},Ke=z({keyOf:e=>e.id,readOnly:Boolean(U),canDrop:(e,n)=>O(n)===e.zone&&n.index>=0&&n.index<=Ze(e.zone),onDrop:(e,n)=>be(e.zone,e.index,n.index),onStep:(e,n)=>be(e.zone,e.index,n<0?e.index-1:e.index+2)}),we=(e,n)=>/* @__PURE__ */J(B,{...U?{}:Ke.seam({place:{...Z(e),index:n}})},`seam:${e}:${n}`),Ve=e=>De.blockRowName(e,Re),Ye=(e,o,r)=>{te(p),_.select({index:o,zone:e}),n(r)},Fe=(e,n,o)=>{_.insertComponent(e,n,o),te(p),_.select({index:o,zone:e})},Qe=(n,o,r)=>/* @__PURE__ */J(e,{choices:r,onPick:e=>Fe(n,e,o)}),We=(e,n)=>{const o=Oe((r=e).type).flatMap(e=>(Array.isArray(r.props[e])?r.props[e]:[]).map((n,o)=>({child:n,zone:`${r.props.id}:${e}`,index:o})));var r;const t=Me(e.type),s=t?.choices??null,i="footer"===t?.source?Ve:Ie;/* @__PURE__ */
2
+ return W(T,{children:[o.map(({child:e,zone:o,index:r})=>{const t=ne?.props.id===e.props.id,s=x(oe,e.type,n),c=i(e),l=String(e.props.id),m=()=>Ye(o,r,l),{rowProps:d,...a}=Ke.row({item:{id:l,zone:o,index:r},place:{...Z(o),index:r}},{onClick:$(m)});/* @__PURE__ */
3
+ return W(Y,{children:[0===r&&we(o,0),
4
+ /* @__PURE__ */J(M,{words:ie,icon:/* @__PURE__ */J(Ae,{type:e.type,size:13}),name:c,selected:t,onSelect:m,...a,actions:/* @__PURE__ */J(R,{kind:"delete",label:se.deleteNamed({name:c}),onClick:()=>{return e=o,n=r,_.removeComponent(e,n),te(p),void _.select(null);var e,n},children:/* @__PURE__ */J(Q,{size:13})}),rowProps:d}),s&&/* @__PURE__ */J(A,{children:We(e,n+1)}),we(o,r+1)]},String(e.props.id??`${o}-${r}`))}),t&&s?Qe(`${e.props.id}:${t.slot}`,o.length,s):null]})},Je="HeroSingle"===he?.type,Te=Boolean(he)&&(Boolean(Me(he.type))||Oe(he.type).length>0),$e=Boolean(he)&&(Boolean(Le)||fe||je||Je||Te);/* @__PURE__ */
5
+ return W("div",{ref:Ce,className:"sf-editor es-editor",style:I(s),children:[
6
+ /* @__PURE__ */J("div",{className:"sf-section-bar",children:/* @__PURE__ */J(g,null!==q?{tone:"off",label:q,role:"status"}:{...E(X,ce),role:"status"})}),
7
+ /* @__PURE__ */W("div",{className:"sf-body",children:[$e&&he&&/* @__PURE__ */W("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left",children:[
8
+ /* @__PURE__ */J("div",{className:"sf-panel-head",children:/* @__PURE__ */J(F,{content:je?se.headerSettings:se.sectionSettings({name:Be(he.type)}),side:"bottom",children:/* @__PURE__ */J("button",{type:"button",className:"sf-panel-title sf-panel-title--btn "+(He?"is-selected":""),"aria-pressed":He,onClick:()=>{je?te(de??p):(te(p),_.select({index:0}))},children:Be(he.type)})})}),
9
+ /* @__PURE__ */J(P,{className:"sf-tree sf-scroll",rootProps:Ke.rootProps(),words:ie,children:/* @__PURE__ */J(A,{children:je?
10
+ /* @__PURE__ */J(M,{words:ie,icon:/* @__PURE__ */J(Ae,{type:"header",size:13}),name:se.headerSettings,selected:re.kind===de?.kind,onSelect:()=>te(de??p),rowProps:{onClick:$(()=>te(de??p))}}):Le?/* @__PURE__ */W(T,{children:[ge.map((e,n)=>{const o=ne?.props.id===e.props.id,r=Ie(e),t=String(e.props.id),s=()=>ve(n,t),{rowProps:i,...c}=Ke.row({item:{id:t,zone:Ee,index:n},place:{...Z(Ee),index:n}},{onClick:$(s)});/* @__PURE__ */
11
+ return W(Y,{children:[0===n&&we(Ee,0),
12
+ /* @__PURE__ */J(M,{words:ie,icon:/* @__PURE__ */J(Ae,{type:e.type,size:13}),name:r,selected:o,onSelect:s,...c,actions:/* @__PURE__ */J(R,{kind:"delete",label:se.deleteNamed({name:r}),onClick:()=>{return e=n,void(Ee&&(_.removeComponent(Ee,e),te(p),_.select(null)));var e},children:/* @__PURE__ */J(Q,{size:13})}),rowProps:i}),we(Ee,n+1)]},String(e.props.id??n))}),
13
+ /* @__PURE__ */W("button",{type:"button",className:"sf-add-card",onClick:ze,children:[
14
+ /* @__PURE__ */J("span",{className:"sf-plus sf-plus--sm",children:"+"}),Le.addLabel]}),ke?ye.partRows?.(he,G):null]}):We(he,1)})})]}),
15
15
  /* @__PURE__ */J("div",{className:"sf-center",children:/* @__PURE__ */J("div",{className:"sf-preview-host",children:/* @__PURE__ */J(ae,{})})}),
16
- /* @__PURE__ */J(t,{value:{selectChild:(e,n,o,r)=>"section"===Ae(r)?.source?ze(n,o):Te(e,n,o),addChild:(e,n,o,r,t)=>"section"===Ae(t)?.source?He():Fe(`${e}:${n}`,o,r),childRowName:ve,blockRowName:Le},children:/* @__PURE__ */J(ue,{mode:re,onOpenWebsiteSettings:Ce.openSettings??(()=>{}),onSelectNode:xe,hideNodeActions:!0})})]}),
17
- /* @__PURE__ */J(f,{})]})}export{U as default};
16
+ /* @__PURE__ */J(t,{value:{selectChild:(e,n,o,r)=>"section"===Me(r)?.source?ve(n,o):Ye(e,n,o),addChild:(e,n,o,r,t)=>"section"===Me(t)?.source?ze():Fe(`${e}:${n}`,o,r),childRowName:Ie,blockRowName:Ve},children:/* @__PURE__ */J(ue,{mode:re,onOpenWebsiteSettings:ye.openSettings??(()=>{}),onSelectNode:xe,hideNodeActions:!0})})]}),
17
+ /* @__PURE__ */J(f,{})]})}export{X as default};
@@ -26,7 +26,7 @@ import '../lib/section-template-types.js';
26
26
  import '../lib/puck/content-tree.js';
27
27
  import '../lib/shared-section-types.js';
28
28
  import '../lib/puck/block-choice.js';
29
- import '../../ScreenDocumentContext-D55vIrG3.js';
29
+ import '../../ScreenDocumentContext-RxVWWWHq.js';
30
30
  import '../lib/document-contract.js';
31
31
  import '../lib/document-switch.js';
32
32
  import '../../engine-CvXpFE86.js';
@@ -1 +1 @@
1
- export{usePartBridge}from"../../chunk-H5YLVKGA.js";import"../../chunk-7OKL7HDV.js";import"../../chunk-OGBYHQE6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-IYT6NN2J.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-VULUDKA3.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-XWFH2NHZ.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-RC25EGHD.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-36LVP5WD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-67GNT6PF.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-X4T6JT3M.js";import"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";
1
+ export{usePartBridge}from"../../chunk-A42LPWNM.js";import"../../chunk-NHY5L3SE.js";import"../../chunk-CBICQ4J3.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-IYT6NN2J.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SK3P56FS.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-RC25EGHD.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-VANKQVOW.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";import"../../chunk-I54UCYOU.js";import"../../chunk-GOTN2KY4.js";import"../../chunk-R5L2E7JX.js";
@@ -3,7 +3,7 @@ export { default as ScreenStoreProvider } from './components/ScreenStoreProvider
3
3
  export { NodeDefaults, SELECTION_MODE, ScreenBlockLook, ScreenBlockRules, ScreenBridges, ScreenCanvas, ScreenCanvasDrag, ScreenCanvasDragContext, ScreenCanvasHeadProps, ScreenCanvasTargetProvider, ScreenDevices, ScreenDocumentOps, ScreenDragItem, ScreenInspector, ScreenInspectorMode, ScreenInspectorPanelProps, ScreenLeftPanel, ScreenLeftView, ScreenLeftViewFrame, ScreenLeftViewRules, ScreenMainAction, ScreenMediaDrop, ScreenMediaFile, ScreenMenuItem, ScreenMenuRows, ScreenNewNode, ScreenNode, ScreenNodeActions, ScreenNodeLevel, ScreenNodeMaker, ScreenPartMode, ScreenParts, ScreenPartsProvider, ScreenPinnedBand, ScreenPinnedNodes, ScreenRailItem, ScreenSelector, ScreenSharedSections, ScreenSlot, ScreenSlotAction, ScreenSlotMode, ScreenStyleClipboard, ScreenStyleDocument, ScreenStylePastePlan, ScreenToastExtra, ScreenTree, ScreenTreeFolds, ScreenTreeRows, isPinnedFirst, isPinnedLast, isSlotMode, sameInspectorMode, screenSlotsOf, useScreenBlockLook, useScreenBlockRules, useScreenBridges, useScreenCanvasDrag, useScreenCanvasFrame, useScreenCanvasHead, useScreenCanvasTarget, useScreenDevices, useScreenDocumentLabel, useScreenDocumentPass, useScreenInspectorPanel, useScreenLeftView, useScreenNodeKeys, useScreenNotify, useScreenOwnerName, useScreenParts, useScreenPickFollowsSelection, useScreenPinned, useScreenSaveSwitch, useScreenStorageNamespace, useScreenStyleClipboard, useStandaloneScreenBridges } from './lib/screen-parts.js';
4
4
  export { DefaultBackend, EFFICIENT_BACKEND, EaselSession, SessionBackend, SessionBlocks, activateEaselSession, backendOf, createEaselSession, currentEaselSession, deactivateEaselSession, efficientClientOpen, isEfficientBackend, provideDefaultBackend, resetAmbientEaselSession, sessionRegistry, setSessionBridgedSite, setSessionDocumentSite } from './lib/session.js';
5
5
  export { EaselSessionProvider, useEaselSession } from './lib/session-context.js';
6
- export { A as AnyDocumentAddressing, D as DETACHED_EASEL_HOST, a as DocumentAddressing, E as EaselHost, b as EaselHostAddress, c as EaselHostContext, d as EaselHostProvider, e as EaselMessageType, f as EaselToHostMessage, H as HostPickedMedia, g as HostToEaselMessage, I as InboundHostMessage, N as NO_DOCUMENT_ADDRESSING, P as PickedMediaSource, S as SectionScreenTarget, h as SendToHost, i as createEaselHost, u as useEaselHost, j as useHostEscape } from '../ScreenDocumentContext-D55vIrG3.js';
6
+ export { A as AnyDocumentAddressing, D as DETACHED_EASEL_HOST, a as DocumentAddressing, E as EaselBlockType, b as EaselFieldDescription, c as EaselHost, d as EaselHostAddress, e as EaselHostContext, f as EaselHostProvider, g as EaselMessageType, h as EaselSelection, i as EaselToHostMessage, H as HostPickedMedia, j as HostToEaselMessage, I as InboundHostMessage, N as NO_DOCUMENT_ADDRESSING, P as PageEditOp, k as PickedMediaSource, S as SectionScreenTarget, l as SendToHost, m as createEaselHost, u as useEaselHost, n as useHostEscape } from '../ScreenDocumentContext-RxVWWWHq.js';
7
7
  export { EaselCapabilities, EaselDocument, EaselDocumentAdapter, EaselPageRow, SiteRecord, SiteRecordPatch, WebsiteEditLock } from './lib/document-contract.js';
8
8
  import 'react';
9
9
  import '../blocks/index.js';
@@ -1 +1 @@
1
- import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-ME4V6PML.js";import"../chunk-GXQCZJOP.js";import"../chunk-CNKVVHDA.js";import"../chunk-2GVCAIPX.js";import"../chunk-26OOWIJJ.js";import"../chunk-JBOSEHIX.js";import"../chunk-FGNR22NY.js";import"../chunk-LER7RKTO.js";import"../chunk-FGYJ5DJY.js";import"../chunk-7F52SZOI.js";import"../chunk-MQNBD6AB.js";import"../chunk-4ES5JGGX.js";import"../chunk-A6CY3TQ5.js";import"../chunk-KCBEE2MC.js";import"../chunk-C56MPJBH.js";import"../chunk-H5YLVKGA.js";import"../chunk-7OKL7HDV.js";import"../chunk-PY7OOQEZ.js";import"../chunk-RKTF5XLP.js";export{ScreenStoreProvider}from"../chunk-KWE5U6CE.js";import"../chunk-5545A3PC.js";import"../chunk-U6LF5YVK.js";import"../chunk-PA3PNTVV.js";import"../chunk-5ZBY24K7.js";import"../chunk-BVN33R76.js";import"../chunk-43AEUUNQ.js";import"../chunk-SINAM2IT.js";import"../chunk-UMDQ6CLQ.js";import"../chunk-M2Z775ZC.js";export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSlotMode,sameInspectorMode,screenSlotsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../chunk-OGBYHQE6.js";import"../chunk-MS2U6MV5.js";import"../chunk-YOXKBOZX.js";import"../chunk-5DPIGWUL.js";import"../chunk-M62P4IQK.js";import"../chunk-EZG3TGQ7.js";import"../chunk-ERR437B5.js";import"../chunk-RYNBSKE7.js";import"../chunk-GMCZXMOV.js";export{NO_DOCUMENT_ADDRESSING}from"../chunk-RLBXE4EU.js";import"../chunk-HNKB2ZYR.js";import"../chunk-CLOS6SSX.js";import"../chunk-VPFNZ7TB.js";import"../chunk-LOMEH6DG.js";import"../chunk-KCOBHPN6.js";import"../chunk-LNHT2KPX.js";export{EaselSessionProvider,useEaselSession}from"../chunk-O7Q4DDJT.js";export{EFFICIENT_BACKEND,activateEaselSession,backendOf,createEaselSession,currentEaselSession,deactivateEaselSession,efficientClientOpen,isEfficientBackend,provideDefaultBackend,resetAmbientEaselSession,sessionRegistry,setSessionBridgedSite,setSessionDocumentSite}from"../chunk-RSCMJIWS.js";export{DETACHED_EASEL_HOST,EaselHostContext,EaselHostProvider,createEaselHost,useEaselHost,useHostEscape}from"../chunk-U3JP4VGF.js";import"../chunk-4VJATVVR.js";import"../chunk-23DYNW6S.js";import"../chunk-V7U33NF2.js";import"../chunk-6WY6ZXJG.js";import"../chunk-BHRC3ASL.js";import"../chunk-6W7WLPZH.js";import"../chunk-IQ5TA7AM.js";import"../chunk-DUVRZ456.js";import"../chunk-IYT6NN2J.js";import"../chunk-PLVEGYK6.js";import"../chunk-KOVJODTY.js";import"../chunk-TBY3DFKS.js";import"../chunk-VULUDKA3.js";import"../chunk-BPXEFVSQ.js";import"../chunk-A6Z4SD3I.js";import"../chunk-K56YDHYQ.js";import"../chunk-XWFH2NHZ.js";import"../chunk-YRLPFZW3.js";import"../chunk-ZKY45F5G.js";import"../chunk-FIVU2COQ.js";import"../chunk-P5VYGWYO.js";import"../chunk-WK3AFPXY.js";import"../chunk-X3TYRF5V.js";import"../chunk-RC25EGHD.js";import"../chunk-KFV7N2DJ.js";import"../chunk-NDRZP6YR.js";import"../chunk-H6DDIBQ4.js";import"../chunk-ZG6PVMC3.js";import"../chunk-MJM6SFD3.js";import"../chunk-AJSDWWJW.js";import"../chunk-2OAZYSWJ.js";import"../chunk-THWO5YVZ.js";import"../chunk-RE4LP46F.js";import"../chunk-23VM4PMV.js";import"../chunk-KRL3IUV3.js";import"../chunk-ZOBSIXRD.js";import"../chunk-QAJAEWCZ.js";import"../chunk-WRFD4EXD.js";import"../chunk-36LVP5WD.js";import"../chunk-MFIRYGHW.js";import"../chunk-ZO3UUK45.js";import"../chunk-KAML3KQH.js";import"../chunk-67GNT6PF.js";import"../chunk-P2VEMZH5.js";import"../chunk-X4T6JT3M.js";import"../chunk-KRXQM65X.js";import"../chunk-NKB3KVAB.js";import"../chunk-BSPCSC45.js";import"../chunk-I54UCYOU.js";import"../chunk-GOTN2KY4.js";import"../chunk-R5L2E7JX.js";
1
+ import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-RR4VIAHP.js";import"../chunk-GXQCZJOP.js";import"../chunk-BC5KJNHN.js";import"../chunk-2GVCAIPX.js";import"../chunk-26OOWIJJ.js";import"../chunk-JBOSEHIX.js";import"../chunk-FGNR22NY.js";import"../chunk-LER7RKTO.js";import"../chunk-FGYJ5DJY.js";import"../chunk-7F52SZOI.js";import"../chunk-MQNBD6AB.js";import"../chunk-2E2SXDYQ.js";import"../chunk-KC24D76S.js";import"../chunk-KCBEE2MC.js";import"../chunk-C56MPJBH.js";import"../chunk-A42LPWNM.js";import"../chunk-NHY5L3SE.js";import"../chunk-PY7OOQEZ.js";import"../chunk-RKTF5XLP.js";export{ScreenStoreProvider}from"../chunk-BW5COX42.js";import"../chunk-5545A3PC.js";import"../chunk-EW6XAMDZ.js";import"../chunk-PA3PNTVV.js";import"../chunk-5ZBY24K7.js";import"../chunk-BVN33R76.js";import"../chunk-43AEUUNQ.js";import"../chunk-SINAM2IT.js";import"../chunk-UMDQ6CLQ.js";import"../chunk-M2Z775ZC.js";export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSlotMode,sameInspectorMode,screenSlotsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../chunk-CBICQ4J3.js";import"../chunk-MS2U6MV5.js";import"../chunk-QALW2ECZ.js";import"../chunk-5DPIGWUL.js";import"../chunk-M62P4IQK.js";import"../chunk-EZG3TGQ7.js";import"../chunk-ERR437B5.js";import"../chunk-RYNBSKE7.js";import"../chunk-GMCZXMOV.js";export{NO_DOCUMENT_ADDRESSING}from"../chunk-RLBXE4EU.js";import"../chunk-HNKB2ZYR.js";import"../chunk-CLOS6SSX.js";import"../chunk-VPFNZ7TB.js";import"../chunk-LOMEH6DG.js";import"../chunk-KCOBHPN6.js";import"../chunk-LNHT2KPX.js";export{EaselSessionProvider,useEaselSession}from"../chunk-O7Q4DDJT.js";export{EFFICIENT_BACKEND,activateEaselSession,backendOf,createEaselSession,currentEaselSession,deactivateEaselSession,efficientClientOpen,isEfficientBackend,provideDefaultBackend,resetAmbientEaselSession,sessionRegistry,setSessionBridgedSite,setSessionDocumentSite}from"../chunk-RSCMJIWS.js";export{DETACHED_EASEL_HOST,EaselHostContext,EaselHostProvider,createEaselHost,useEaselHost,useHostEscape}from"../chunk-U3JP4VGF.js";import"../chunk-XFYFKITX.js";import"../chunk-23DYNW6S.js";import"../chunk-V7U33NF2.js";import"../chunk-6WY6ZXJG.js";import"../chunk-BHRC3ASL.js";import"../chunk-6W7WLPZH.js";import"../chunk-IQ5TA7AM.js";import"../chunk-DUVRZ456.js";import"../chunk-IYT6NN2J.js";import"../chunk-PLVEGYK6.js";import"../chunk-ROPYFLNZ.js";import"../chunk-TBY3DFKS.js";import"../chunk-SK3P56FS.js";import"../chunk-BPXEFVSQ.js";import"../chunk-A6Z4SD3I.js";import"../chunk-RC25EGHD.js";import"../chunk-K56YDHYQ.js";import"../chunk-KFV7N2DJ.js";import"../chunk-ZEH6QLBH.js";import"../chunk-IWCKVZHS.js";import"../chunk-ZKY45F5G.js";import"../chunk-FIVU2COQ.js";import"../chunk-P5VYGWYO.js";import"../chunk-WK3AFPXY.js";import"../chunk-BSHIQIZC.js";import"../chunk-NDRZP6YR.js";import"../chunk-H6DDIBQ4.js";import"../chunk-ZG6PVMC3.js";import"../chunk-MJM6SFD3.js";import"../chunk-AJSDWWJW.js";import"../chunk-2OAZYSWJ.js";import"../chunk-THWO5YVZ.js";import"../chunk-RE4LP46F.js";import"../chunk-23VM4PMV.js";import"../chunk-KRL3IUV3.js";import"../chunk-ZOBSIXRD.js";import"../chunk-VANKQVOW.js";import"../chunk-QAJAEWCZ.js";import"../chunk-WRFD4EXD.js";import"../chunk-MFIRYGHW.js";import"../chunk-LDEEFLE3.js";import"../chunk-KAML3KQH.js";import"../chunk-3S5N4HLJ.js";import"../chunk-P2VEMZH5.js";import"../chunk-QIDRJH3S.js";import"../chunk-LF3FUSCQ.js";import"../chunk-K7BTCBWD.js";import"../chunk-L55YIXDC.js";import"../chunk-BSPCSC45.js";import"../chunk-I54UCYOU.js";import"../chunk-GOTN2KY4.js";import"../chunk-R5L2E7JX.js";
@@ -21,5 +21,85 @@ declare const VIEW_TABLET_MIN = 720;
21
21
  declare const VIEW_DESKTOP_MIN = 1100;
22
22
  /** Which tier a viewport width falls in. */
23
23
  declare function viewTierForWidth(width: number): ViewTier;
24
+ /** The key a TABLET value is stored under: `paddingTop` → `paddingTopTablet`.
25
+ * Derived, so the pair can never be spelled two ways. */
26
+ declare function tabletKey(desktopKey: string): string;
27
+ /** The key a PHONE value is stored under: `paddingTop` → `paddingTopPhone`.
28
+ * The same key web-builder's `lib/puck/phone-override` stores today, so every
29
+ * stored phone value keeps its meaning; that copy goes once web-builder reads
30
+ * this one. */
31
+ declare function phoneKey(desktopKey: string): string;
32
+ /**
33
+ * Is a view's stored value AUTO — nothing stored, so the view follows its
34
+ * parent? Only an absent value is: `0` is "no padding" and `""` is an answer,
35
+ * never "follow".
36
+ *
37
+ * ⚠️ Pass the STORED value, never a resolved one: a resolved number always
38
+ * answers "stored", and auto becomes unreachable (shop #1177, the site gap).
39
+ * Clearing a view's value writes `undefined`, never a copy of its parent.
40
+ */
41
+ declare function isAuto(stored: unknown): stored is undefined | null;
42
+ /** What kind of value a setting holds, which decides its auto rule. */
43
+ type ViewValueKind =
44
+ /** padding, gap, margin (px) */
45
+ "spacing"
46
+ /** a grid's columns per row */
47
+ | "columns"
48
+ /** side by side or stacked: `"side-by-side"` | `"stacked"` */
49
+ | "stack"
50
+ /** a text size (px): a text style's size, or a section's own */
51
+ | "textSize"
52
+ /** how a section's height is set: `"fit"` | `"screen"` (Screen %) | `"px"` */
53
+ | "heightMode"
54
+ /** a section's height in px, when its mode is `"px"` */
55
+ | "heightPx"
56
+ /** colour, corners, image, show / hide: the same in every view */
57
+ | "same";
58
+ /**
59
+ * One auto rule: how a view works its value out from its parent's.
60
+ *
61
+ * `tablet` gets the desktop value, `phone` the tablet's. Both work on the EXACT
62
+ * parent (a rule's own result before it is rounded), so a chain of two steps
63
+ * rounds once: Phone's text size is 0.7 of Desktop's, not 0.7 of a rounded
64
+ * Tablet. `round` puts an auto number on its scale; a stored value is never
65
+ * rounded or changed.
66
+ */
67
+ interface AutoRule {
68
+ tablet: (desktop: unknown) => unknown;
69
+ phone: (tablet: unknown) => unknown;
70
+ round?: (exact: number) => number;
71
+ }
72
+ /**
73
+ * The auto rules, by kind — the one table (Lewis's 10-09 draft, the plan's §3):
74
+ *
75
+ * | kind | Tablet (from Desktop) | Phone (from Tablet) |
76
+ * |------------|------------------------------|-------------------------------------|
77
+ * | spacing | × 0.75, to the 4px scale | × 2/3 (= × 0.5 of Desktop), to 4px |
78
+ * | columns | min(n, 2) | 1 |
79
+ * | stack | the same | stacked |
80
+ * | textSize | × 0.85, to 1px | × 0.7 of Desktop, to 1px |
81
+ * | heightMode | the same | Screen % stays; px → fit content |
82
+ * | heightPx | × 0.75, to 1px | the same as Tablet |
83
+ * | same | the same | the same |
84
+ *
85
+ * Example: padding 80 → 60 → 40; 120 → 88 → 60; gap 32 → 24 → 16.
86
+ */
87
+ declare const AUTO_RULES: Record<ViewValueKind, AutoRule>;
88
+ /** What each view draws. */
89
+ interface ViewValues<T> {
90
+ desktop: T;
91
+ tablet: T;
92
+ phone: T;
93
+ }
94
+ /**
95
+ * The value each view draws: its stored value, or — AUTO — its parent's value
96
+ * through `AUTO_RULES[kind]`. Phone's parent is Tablet (stored or auto);
97
+ * Tablet's parent is Desktop. A desktop value nobody set stays unset in every
98
+ * auto view, so the host's default applies there as it does on Desktop.
99
+ *
100
+ * DISPLAY ONLY: never store what this returns for an auto view — that turns
101
+ * auto into a copy that stops following its parent.
102
+ */
103
+ declare function resolveViewValue<T>(kind: ViewValueKind, desktop: T, tablet?: T | null, phone?: T | null): ViewValues<T>;
24
104
 
25
- export { VIEW_DESKTOP_MIN, VIEW_TABLET_MIN, VIEW_TIERS, VIEW_TIER_LABEL, type ViewTier, viewTierForWidth };
105
+ export { AUTO_RULES, type AutoRule, VIEW_DESKTOP_MIN, VIEW_TABLET_MIN, VIEW_TIERS, VIEW_TIER_LABEL, type ViewTier, type ViewValueKind, type ViewValues, isAuto, phoneKey, resolveViewValue, tabletKey, viewTierForWidth };
@@ -1 +1 @@
1
- export{VIEW_DESKTOP_MIN,VIEW_TABLET_MIN,VIEW_TIERS,VIEW_TIER_LABEL,viewTierForWidth}from"../../../chunk-DWIOHQG7.js";
1
+ export{AUTO_RULES,VIEW_DESKTOP_MIN,VIEW_TABLET_MIN,VIEW_TIERS,VIEW_TIER_LABEL,isAuto,phoneKey,resolveViewValue,tabletKey,viewTierForWidth}from"../../../chunk-HK6I3NVO.js";
@@ -1,4 +1,4 @@
1
- export { A as AnyDocumentAddressing, a as DocumentAddressing, N as NO_DOCUMENT_ADDRESSING } from '../../ScreenDocumentContext-D55vIrG3.js';
1
+ export { A as AnyDocumentAddressing, a as DocumentAddressing, N as NO_DOCUMENT_ADDRESSING } from '../../ScreenDocumentContext-RxVWWWHq.js';
2
2
  import './document-contract.js';
3
3
  import './session.js';
4
4
  import 'react';
@@ -59,12 +59,17 @@ interface SiteRecord {
59
59
  name: string;
60
60
  /** Its public slug, where it has one. */
61
61
  slug?: string | null;
62
- /** The site-wide Google Maps browser key the canvas's map blocks draw with. */
62
+ /** The site-wide Google Maps browser key the canvas's map blocks drew with.
63
+ * @deprecated Every website map is efficient-shell's since efficient-web-builder 34 and needs no Google key or style, so nothing reads it (Victor Mau, 2026-10-23: remove them). Removed in efficient-easel's next major. */
63
64
  mapsApiKey?: string | null;
64
- /** The site-wide Google Maps cloud style. */
65
+ /** The site-wide Google Maps cloud style.
66
+ * @deprecated Every website map is efficient-shell's since efficient-web-builder 34 and needs no Google key or style, so nothing reads it (Victor Mau, 2026-10-23: remove them). Removed in efficient-easel's next major. */
65
67
  mapsMapId?: string | null;
66
68
  }
67
- /** The part of the site record the editor writes. */
69
+ /** The part of the site record the editor writes: only the Maps key, which
70
+ * nothing writes any more.
71
+ * @deprecated The save seam (`SiteRecordPatch`, `updateSite`,
72
+ * `canEditSiteRecord`) existed only for the Maps key. Every website map is efficient-shell's since efficient-web-builder 34 and needs no Google key or style, so nothing reads it (Victor Mau, 2026-10-23: remove them). Removed in efficient-easel's next major. */
68
73
  type SiteRecordPatch = {
69
74
  mapsApiKey?: string;
70
75
  };
@@ -126,7 +131,8 @@ type EaselCapabilities = {
126
131
  * key. False for a template, and for an EFFICIENT page opened without a
127
132
  * site id — a site row IS its id. */
128
133
  hasSiteRecord: boolean;
129
- /** …and its Maps key written (`site.update`). */
134
+ /** …and its Maps key written (`site.update`).
135
+ * @deprecated With `SiteRecordPatch`: removed in efficient-easel's next major. */
130
136
  canEditSiteRecord: boolean;
131
137
  /** The top bar's Preview link has an address: `preview.href`, or the
132
138
  * storefront's own rule under the EFFICIENT backend. */
@@ -231,7 +237,8 @@ interface EaselDocumentAdapter {
231
237
  }): Promise<void>;
232
238
  /** The website's record (`capabilities.hasSiteRecord`). */
233
239
  site?(): Promise<SiteRecord>;
234
- /** Save the website's Maps key (`capabilities.canEditSiteRecord`). */
240
+ /** Save the website's Maps key (`capabilities.canEditSiteRecord`).
241
+ * @deprecated With `SiteRecordPatch`: removed in efficient-easel's next major. */
235
242
  updateSite?(patch: SiteRecordPatch): Promise<SiteRecord>;
236
243
  /** The name of the template this document is a page of (template mode) —
237
244
  * the canvas header's wordmark while it is edited. */
@@ -1,5 +1,5 @@
1
1
  import 'react';
2
- export { D as DETACHED_EASEL_HOST, E as EaselHost, b as EaselHostAddress, c as EaselHostContext, d as EaselHostProvider, e as EaselMessageType, f as EaselToHostMessage, H as HostPickedMedia, g as HostToEaselMessage, I as InboundHostMessage, P as PickedMediaSource, S as SectionScreenTarget, h as SendToHost, i as createEaselHost, u as useEaselHost, j as useHostEscape } from '../../ScreenDocumentContext-D55vIrG3.js';
2
+ export { D as DETACHED_EASEL_HOST, E as EaselBlockType, b as EaselFieldDescription, c as EaselHost, d as EaselHostAddress, e as EaselHostContext, f as EaselHostProvider, g as EaselMessageType, h as EaselSelection, i as EaselToHostMessage, H as HostPickedMedia, j as HostToEaselMessage, I as InboundHostMessage, P as PageEditOp, k as PickedMediaSource, S as SectionScreenTarget, l as SendToHost, m as createEaselHost, u as useEaselHost, n as useHostEscape } from '../../ScreenDocumentContext-RxVWWWHq.js';
3
3
  import '../../blocks/index.js';
4
4
  import '../../types-Cq53lL8d.js';
5
5
  import '../../data/index.js';
@@ -1 +1 @@
1
- export{editorRootFocus,isSaveShortcut,useEaselKeyTarget,useEaselSaveKey,useEaselUndoKeys}from"../../chunk-A6CY3TQ5.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-X4T6JT3M.js";import"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";
1
+ export{editorRootFocus,isSaveShortcut,useEaselKeyTarget,useEaselSaveKey,useEaselUndoKeys}from"../../chunk-KC24D76S.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
2
  import { ComponentType, ReactNode } from 'react';
3
- import { H as HostPickedMedia, E as EaselHost } from '../../ScreenDocumentContext-D55vIrG3.js';
3
+ import { H as HostPickedMedia, c as EaselHost } from '../../ScreenDocumentContext-RxVWWWHq.js';
4
4
  import '../../blocks/index.js';
5
5
  import '../../types-Cq53lL8d.js';
6
6
  import '../../data/index.js';
@@ -1,4 +1,4 @@
1
- import { H as HostPickedMedia, E as EaselHost } from '../../ScreenDocumentContext-D55vIrG3.js';
1
+ import { H as HostPickedMedia, c as EaselHost } from '../../ScreenDocumentContext-RxVWWWHq.js';
2
2
  import 'react';
3
3
  import '../../blocks/index.js';
4
4
  import '../../types-Cq53lL8d.js';
@@ -1 +1 @@
1
- export{gotoPreviewSlide,pinPreviewToBottom,pinPreviewToSection,previewFrame,scrollPreviewToSection,scrollPreviewToTop}from"../../../chunk-4ES5JGGX.js";import"../../../chunk-IQ5TA7AM.js";import"../../../chunk-R5L2E7JX.js";
1
+ export{gotoPreviewSlide,pinPreviewToBottom,pinPreviewToSection,previewFrame,scrollPreviewToSection,scrollPreviewToTop}from"../../../chunk-2E2SXDYQ.js";import"../../../chunk-IQ5TA7AM.js";import"../../../chunk-LF3FUSCQ.js";import"../../../chunk-R5L2E7JX.js";
@@ -27,7 +27,7 @@ import '../section-template-types.js';
27
27
  import './content-tree.js';
28
28
  import '../shared-section-types.js';
29
29
  import './block-choice.js';
30
- import '../../../ScreenDocumentContext-D55vIrG3.js';
30
+ import '../../../ScreenDocumentContext-RxVWWWHq.js';
31
31
  import '../document-contract.js';
32
32
  import '../document-switch.js';
33
33
  import '../../../engine-CvXpFE86.js';
@@ -1 +1 @@
1
- export{useSectionOps}from"../../../chunk-7OKL7HDV.js";import"../../../chunk-OGBYHQE6.js";import"../../../chunk-LNHT2KPX.js";import"../../../chunk-U3JP4VGF.js";import"../../../chunk-PLVEGYK6.js";import"../../../chunk-KOVJODTY.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-VULUDKA3.js";import"../../../chunk-BPXEFVSQ.js";import"../../../chunk-A6Z4SD3I.js";import"../../../chunk-K56YDHYQ.js";import"../../../chunk-XWFH2NHZ.js";import"../../../chunk-YRLPFZW3.js";import"../../../chunk-FIVU2COQ.js";import"../../../chunk-X3TYRF5V.js";import"../../../chunk-RC25EGHD.js";import"../../../chunk-KFV7N2DJ.js";import"../../../chunk-23VM4PMV.js";import"../../../chunk-KRL3IUV3.js";import"../../../chunk-ZOBSIXRD.js";import"../../../chunk-QAJAEWCZ.js";import"../../../chunk-WRFD4EXD.js";import"../../../chunk-36LVP5WD.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-67GNT6PF.js";import"../../../chunk-P2VEMZH5.js";import"../../../chunk-X4T6JT3M.js";import"../../../chunk-KRXQM65X.js";import"../../../chunk-NKB3KVAB.js";
1
+ export{useSectionOps}from"../../../chunk-NHY5L3SE.js";import"../../../chunk-CBICQ4J3.js";import"../../../chunk-LNHT2KPX.js";import"../../../chunk-U3JP4VGF.js";import"../../../chunk-PLVEGYK6.js";import"../../../chunk-ROPYFLNZ.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-SK3P56FS.js";import"../../../chunk-BPXEFVSQ.js";import"../../../chunk-A6Z4SD3I.js";import"../../../chunk-RC25EGHD.js";import"../../../chunk-K56YDHYQ.js";import"../../../chunk-KFV7N2DJ.js";import"../../../chunk-ZEH6QLBH.js";import"../../../chunk-IWCKVZHS.js";import"../../../chunk-FIVU2COQ.js";import"../../../chunk-BSHIQIZC.js";import"../../../chunk-23VM4PMV.js";import"../../../chunk-KRL3IUV3.js";import"../../../chunk-ZOBSIXRD.js";import"../../../chunk-VANKQVOW.js";import"../../../chunk-QAJAEWCZ.js";import"../../../chunk-WRFD4EXD.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-3S5N4HLJ.js";import"../../../chunk-P2VEMZH5.js";import"../../../chunk-QIDRJH3S.js";import"../../../chunk-LF3FUSCQ.js";import"../../../chunk-K7BTCBWD.js";import"../../../chunk-L55YIXDC.js";
@@ -10,7 +10,7 @@ import { E as EaselRailItem } from '../../types-Cy7rdmXt.js';
10
10
  import { StyleRow } from '../../style-clipboard/index.js';
11
11
  import { T as TreeRowMark } from '../../types-Bqq6ya0y.js';
12
12
  import { AddKey } from '../components/AddSidePanel.js';
13
- import { k as AnyScreenTarget } from '../../ScreenDocumentContext-D55vIrG3.js';
13
+ import { o as AnyScreenTarget } from '../../ScreenDocumentContext-RxVWWWHq.js';
14
14
  import { HostProduct } from './host-chrome.js';
15
15
  import { EaselSession } from './session.js';
16
16
  import { SharedSectionUse, SharedSection } from './shared-section-types.js';
@@ -1 +1 @@
1
- export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSlotMode,sameInspectorMode,screenSlotsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../../chunk-OGBYHQE6.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-KOVJODTY.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-VULUDKA3.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-XWFH2NHZ.js";import"../../chunk-YRLPFZW3.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-X3TYRF5V.js";import"../../chunk-RC25EGHD.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-36LVP5WD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-67GNT6PF.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-X4T6JT3M.js";import"../../chunk-KRXQM65X.js";import"../../chunk-NKB3KVAB.js";
1
+ export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSlotMode,sameInspectorMode,screenSlotsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../../chunk-CBICQ4J3.js";import"../../chunk-LNHT2KPX.js";import"../../chunk-U3JP4VGF.js";import"../../chunk-PLVEGYK6.js";import"../../chunk-ROPYFLNZ.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SK3P56FS.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-A6Z4SD3I.js";import"../../chunk-RC25EGHD.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-23VM4PMV.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-ZOBSIXRD.js";import"../../chunk-VANKQVOW.js";import"../../chunk-QAJAEWCZ.js";import"../../chunk-WRFD4EXD.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-QIDRJH3S.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -153,8 +153,10 @@
153
153
  --es-space-16: var(--space-16, 16px);
154
154
  --es-space-32: var(--space-32, 32px);
155
155
 
156
- /* — shadows: black at an alpha (no shell elevation token yet) — */
157
- --es-panel-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 10px 30px rgba(0, 0, 0, 0.06);
156
+ /* — shadows — the side panel is the shell's panel elevation (shell 6.0 added
157
+ `--elevation-panel` for this panel). The top bar and a raised card have no
158
+ shell level of their own yet: black at an alpha until one is ruled. */
159
+ --es-panel-shadow: var(--elevation-panel);
158
160
  --es-topbar-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
159
161
  --es-raised-shadow: 0 1px 2px rgba(16, 24, 40, 0.1);
160
162
 
@@ -1,2 +1,2 @@
1
- import{DEFAULT_SCREEN_WORDS as r}from"../chunk-23DYNW6S.js";import{DEFAULT_STYLE_CLIPBOARD_WORDS as o}from"../chunk-6WY6ZXJG.js";import{DEFAULT_TEXT_STYLES_WORDS as n}from"../chunk-OGH6CC3E.js";import{DEFAULT_PICK_WORDS as t}from"../chunk-OFBZOI6W.js";import{DEFAULT_CANVAS_WORDS as c}from"../chunk-TBY3DFKS.js";import{DEFAULT_TREE_WORDS as e}from"../chunk-K56YDHYQ.js";import{DEFAULT_NODE_MENU_WORDS as m}from"../chunk-WK3AFPXY.js";import{DEFAULT_PANEL_WORDS as i}from"../chunk-KFV7N2DJ.js";import{DEFAULT_SAVE_WORDS as s}from"../chunk-H6DDIBQ4.js";import{DEFAULT_CHROME_WORDS as u,DEFAULT_NOTICE_WORDS as f}from"../chunk-AJSDWWJW.js";import{DEFAULT_RAIL_WORDS as p}from"../chunk-2OAZYSWJ.js";import{DEFAULT_LOCK_WORDS as l}from"../chunk-RE4LP46F.js";import{DEFAULT_COPY_WORDS as h}from"../chunk-KRL3IUV3.js";import{DEFAULT_FIELDS_WORDS as j}from"../chunk-WRFD4EXD.js";import{stringsContext as k}from"../chunk-MFIRYGHW.js";import{DEFAULT_DRAG_WORDS as a}from"../chunk-KAML3KQH.js";import{useContext as W,useMemo as D}from"react";import{jsx as Y}from"react/jsx-runtime";var y={notice:f,lock:l,save:s,chrome:u,rail:p,tree:e,panel:i,fields:j,pick:t,drag:a,menu:m,styleClipboard:o,copy:h,canvas:c,textStyles:n,screen:r},F=r=>"object"==typeof r&&null!==r;function K(r,o){const n={};for(const t of Object.keys(r)){const c=r[t],e=o[t];null==e?n[t]=c:F(c)?n[t]=F(e)?K(c,e):c:n[t]=typeof e==typeof c?e:c}return n}function d(r,o){return o?K(r,o):r}function v({value:r,locale:o,children:n}){const t=k(),c=W(t),e=c?.strings??y,m=o??c?.locale??"en",i=D(()=>({strings:d(e,r),locale:m}),[e,r,m]);/* @__PURE__ */
1
+ import{DEFAULT_SCREEN_WORDS as r}from"../chunk-23DYNW6S.js";import{DEFAULT_STYLE_CLIPBOARD_WORDS as o}from"../chunk-6WY6ZXJG.js";import{DEFAULT_TEXT_STYLES_WORDS as n}from"../chunk-OGH6CC3E.js";import{DEFAULT_CANVAS_WORDS as t}from"../chunk-TBY3DFKS.js";import{DEFAULT_TREE_WORDS as c}from"../chunk-K56YDHYQ.js";import{DEFAULT_PANEL_WORDS as e}from"../chunk-KFV7N2DJ.js";import{DEFAULT_NODE_MENU_WORDS as m}from"../chunk-WK3AFPXY.js";import{DEFAULT_PICK_WORDS as i}from"../chunk-OFBZOI6W.js";import{DEFAULT_SAVE_WORDS as s}from"../chunk-H6DDIBQ4.js";import{DEFAULT_CHROME_WORDS as u,DEFAULT_NOTICE_WORDS as f}from"../chunk-AJSDWWJW.js";import{DEFAULT_RAIL_WORDS as p}from"../chunk-2OAZYSWJ.js";import{DEFAULT_LOCK_WORDS as l}from"../chunk-RE4LP46F.js";import{DEFAULT_COPY_WORDS as h}from"../chunk-KRL3IUV3.js";import{DEFAULT_FIELDS_WORDS as j}from"../chunk-WRFD4EXD.js";import{stringsContext as k}from"../chunk-MFIRYGHW.js";import{DEFAULT_DRAG_WORDS as a}from"../chunk-KAML3KQH.js";import{useContext as W,useMemo as D}from"react";import{jsx as Y}from"react/jsx-runtime";var y={notice:f,lock:l,save:s,chrome:u,rail:p,tree:c,panel:e,fields:j,pick:i,drag:a,menu:m,styleClipboard:o,copy:h,canvas:t,textStyles:n,screen:r},F=r=>"object"==typeof r&&null!==r;function K(r,o){const n={};for(const t of Object.keys(r)){const c=r[t],e=o[t];null==e?n[t]=c:F(c)?n[t]=F(e)?K(c,e):c:n[t]=typeof e==typeof c?e:c}return n}function d(r,o){return o?K(r,o):r}function v({value:r,locale:o,children:n}){const t=k(),c=W(t),e=c?.strings??y,m=o??c?.locale??"en",i=D(()=>({strings:d(e,r),locale:m}),[e,r,m]);/* @__PURE__ */
2
2
  return Y(t.Provider,{value:i,children:n})}function H(){return W(k())?.strings??y}function J(){return W(k())?.locale??"en"}export{y as DEFAULT_EASEL_STRINGS,v as EaselStringsProvider,d as mergeEaselStrings,J as useEaselLocale,H as useEaselStrings};