efficient-easel 27.1.0 → 27.2.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 (73) hide show
  1. package/dist/AddSidePanel-DoCx-ZrM.d.ts +1994 -0
  2. package/dist/{ScreenDocumentContext-DPW_6gOC.d.ts → ScreenDocumentContext-JQr4hTeP.d.ts} +7 -5
  3. package/dist/{chunk-P3HXHLES.js → chunk-2Y4CAWZQ.js} +3 -3
  4. package/dist/{chunk-RTMDZJNE.js → chunk-3RGHXL5V.js} +1 -1
  5. package/dist/chunk-64NREOML.js +1 -0
  6. package/dist/chunk-DCBUJ36Q.js +5 -0
  7. package/dist/{chunk-SEC6NV6Y.js → chunk-DQSRGKSM.js} +4 -4
  8. package/dist/{chunk-L36E2WCO.js → chunk-HGTDDSFJ.js} +15 -15
  9. package/dist/{chunk-LAJYMOY3.js → chunk-I4Z75MCX.js} +1 -1
  10. package/dist/{chunk-QPNNWQ24.js → chunk-JI7GUM3C.js} +1 -1
  11. package/dist/chunk-LK56FUFT.js +1 -0
  12. package/dist/chunk-M5UCPD66.js +1 -0
  13. package/dist/{chunk-XESNAMI3.js → chunk-MMHYTIUY.js} +3 -3
  14. package/dist/chunk-OSF2H3LO.js +1 -0
  15. package/dist/{chunk-3FANFZ4D.js → chunk-PTTQWCD7.js} +1 -1
  16. package/dist/{chunk-WL57KM5C.js → chunk-SR2535CN.js} +17 -17
  17. package/dist/{chunk-SEH3Q3EL.js → chunk-XGTO4LHI.js} +1 -1
  18. package/dist/chunk-YCYGY54I.js +8 -0
  19. package/dist/chunk-ZSP4ZAQ2.js +64 -0
  20. package/dist/drag/index.js +1 -1
  21. package/dist/easel/index.js +1 -1
  22. package/dist/screen/components/AddBlockRow.js +1 -1
  23. package/dist/screen/components/AddSidePanel.d.ts +2 -4
  24. package/dist/screen/components/AddSidePanel.js +1 -1
  25. package/dist/screen/components/NodeContextMenu.d.ts +2 -4
  26. package/dist/screen/components/NodeContextMenu.js +1 -1
  27. package/dist/screen/components/SaveControls.d.ts +2 -4
  28. package/dist/screen/components/ScreenChrome.js +1 -1
  29. package/dist/screen/components/ScreenDocumentContext.d.ts +1 -1
  30. package/dist/screen/components/ScreenMount.d.ts +2 -4
  31. package/dist/screen/components/ScreenMount.js +1 -1
  32. package/dist/screen/components/ScreenStoreProvider.d.ts +2 -4
  33. package/dist/screen/components/ScreenStoreProvider.js +1 -1
  34. package/dist/screen/components/SectionScreenShell.js +17 -17
  35. package/dist/screen/components/usePartBridge.d.ts +2 -4
  36. package/dist/screen/components/usePartBridge.js +1 -1
  37. package/dist/screen/index.d.ts +2 -4
  38. package/dist/screen/index.js +1 -1
  39. package/dist/screen/lib/document/add-target-types.d.ts +37 -55
  40. package/dist/screen/lib/document/block-set-host.js +1 -1
  41. package/dist/screen/lib/document/block-size-fields.d.ts +1 -1
  42. package/dist/screen/lib/document/block-size-fields.js +1 -1
  43. package/dist/screen/lib/document/box-fields.d.ts +1 -1
  44. package/dist/screen/lib/document/box-fields.js +1 -1
  45. package/dist/screen/lib/document/button-fields.d.ts +1 -1
  46. package/dist/screen/lib/document/button-fields.js +1 -1
  47. package/dist/screen/lib/document/image-fields.d.ts +1 -1
  48. package/dist/screen/lib/document/image-fields.js +4 -4
  49. package/dist/screen/lib/document/new-child.d.ts +58 -0
  50. package/dist/screen/lib/document/new-child.js +1 -0
  51. package/dist/screen/lib/document/palette-sections.d.ts +2 -4
  52. package/dist/screen/lib/document/shadow-fields.d.ts +1 -1
  53. package/dist/screen/lib/document/shadow-fields.js +2 -2
  54. package/dist/screen/lib/document/slot-section-spec.d.ts +37 -96
  55. package/dist/screen/lib/document/style-clipboard.d.ts +2 -4
  56. package/dist/screen/lib/document/style-clipboard.js +1 -1
  57. package/dist/screen/lib/document/style-fields.d.ts +1 -1
  58. package/dist/screen/lib/document/style-fields.js +1 -1
  59. package/dist/screen/lib/document/use-section-ops.js +1 -1
  60. package/dist/screen/lib/document-addressing.d.ts +1 -1
  61. package/dist/screen/lib/host.d.ts +1 -1
  62. package/dist/screen/lib/key-scope.js +1 -1
  63. package/dist/screen/lib/media-panel.d.ts +1 -1
  64. package/dist/screen/lib/media-picker.d.ts +1 -1
  65. package/dist/screen/lib/screen-parts.d.ts +20 -1827
  66. package/dist/screen/lib/screen-parts.js +1 -1
  67. package/package.json +7 -1
  68. package/dist/chunk-DTEYSPJE.js +0 -64
  69. package/dist/chunk-GJ427TZL.js +0 -8
  70. package/dist/chunk-J5VPNHOW.js +0 -1
  71. package/dist/chunk-TUIBPB77.js +0 -5
  72. package/dist/chunk-WW24O7HT.js +0 -1
  73. package/dist/chunk-XT75WETI.js +0 -1
@@ -1 +1 @@
1
- export{DocumentScreen,ScreenMount as default}from"../../chunk-P3HXHLES.js";import"../../chunk-GXQCZJOP.js";import"../../chunk-QPNNWQ24.js";import"../../chunk-DTEYSPJE.js";import"../../chunk-UMBNBCL4.js";import"../../chunk-OXZDSOZV.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-VNUXFD4X.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-ZNLODQD4.js";import"../../chunk-22I55W37.js";import"../../chunk-LUOY3A3Q.js";import"../../chunk-RTMDZJNE.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-TQUEVJOO.js";import"../../chunk-J5VPNHOW.js";import"../../chunk-3FANFZ4D.js";import"../../chunk-XV5D4V2T.js";import"../../chunk-2EEYFRQM.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-OB4KI2AN.js";import"../../chunk-JUJEVGLY.js";import"../../chunk-ERR437B5.js";import"../../chunk-5HYVOOH3.js";import"../../chunk-A5USZ6Z6.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6V6LC7QV.js";import"../../chunk-7YXWWMBM.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-5545A3PC.js";import"../../chunk-GJ427TZL.js";import"../../chunk-GDO4QJ4G.js";import"../../chunk-IZGFJWH4.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-MTWQYLJE.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-TUIBPB77.js";import"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-WW24O7HT.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-XFYFKITX.js";import"../../chunk-G2VZ4DET.js";import"../../chunk-3OOYGEJY.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-5NHQ452C.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-L36E2WCO.js";import"../../chunk-XT75WETI.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-VTY7OQB5.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-G7J6SGMF.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-SEC6NV6Y.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-BSPCSC45.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
1
+ export{DocumentScreen,ScreenMount as default}from"../../chunk-2Y4CAWZQ.js";import"../../chunk-GXQCZJOP.js";import"../../chunk-JI7GUM3C.js";import"../../chunk-ZSP4ZAQ2.js";import"../../chunk-UMBNBCL4.js";import"../../chunk-OXZDSOZV.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-VNUXFD4X.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-ZNLODQD4.js";import"../../chunk-22I55W37.js";import"../../chunk-64NREOML.js";import"../../chunk-LUOY3A3Q.js";import"../../chunk-3RGHXL5V.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-TQUEVJOO.js";import"../../chunk-OSF2H3LO.js";import"../../chunk-PTTQWCD7.js";import"../../chunk-XV5D4V2T.js";import"../../chunk-2EEYFRQM.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-OB4KI2AN.js";import"../../chunk-JUJEVGLY.js";import"../../chunk-ERR437B5.js";import"../../chunk-5HYVOOH3.js";import"../../chunk-A5USZ6Z6.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6V6LC7QV.js";import"../../chunk-7YXWWMBM.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-5545A3PC.js";import"../../chunk-YCYGY54I.js";import"../../chunk-GDO4QJ4G.js";import"../../chunk-IZGFJWH4.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-MTWQYLJE.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-DCBUJ36Q.js";import"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-M5UCPD66.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-XFYFKITX.js";import"../../chunk-3OOYGEJY.js";import"../../chunk-G2VZ4DET.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-5NHQ452C.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-HGTDDSFJ.js";import"../../chunk-LK56FUFT.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-VTY7OQB5.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-G7J6SGMF.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-DQSRGKSM.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-BSPCSC45.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
3
  import { Data } from '../../blocks/index.js';
4
4
  import { P as Permissions } from '../../types-BljCVdzR.js';
5
- import { ScreenParts } from '../lib/screen-parts.js';
5
+ import { G as ScreenParts } from '../../AddSidePanel-DoCx-ZrM.js';
6
6
  import '../../data/index.js';
7
7
  import '../../types-Dq180WRV.js';
8
8
  import '../../phone-order-CRKvsTsz.js';
@@ -26,7 +26,7 @@ import '../../words-CnnHb9jo.js';
26
26
  import '../../types-CoUTWUwB.js';
27
27
  import 'efficient-shell/ui';
28
28
  import '../../words-Cl9xMUYY.js';
29
- import '../../ScreenDocumentContext-DPW_6gOC.js';
29
+ import '../../ScreenDocumentContext-JQr4hTeP.js';
30
30
  import '../lib/document-contract.js';
31
31
  import '../lib/document-switch.js';
32
32
  import '../../engine-CvXpFE86.js';
@@ -36,8 +36,6 @@ import '../lib/backend-error.js';
36
36
  import '../lib/host-chrome.js';
37
37
  import '../lib/links/link-filters.js';
38
38
  import '../lib/document-hooks.js';
39
- import '../lib/document/add-target-types.js';
40
- import '../lib/document/slot-section-spec.js';
41
39
 
42
40
  /**
43
41
  * THE EDITOR'S STORE, and the screen's parts under it: the engine's store over
@@ -1 +1 @@
1
- export{ScreenStoreProvider as default}from"../../chunk-QPNNWQ24.js";import"../../chunk-TUIBPB77.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-L36E2WCO.js";import"../../chunk-XT75WETI.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";
1
+ export{ScreenStoreProvider as default}from"../../chunk-JI7GUM3C.js";import"../../chunk-DCBUJ36Q.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-HGTDDSFJ.js";import"../../chunk-LK56FUFT.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";
@@ -1,17 +1,17 @@
1
- import{AddBlockRow as e}from"../../chunk-SEH3Q3EL.js";import{scrollPreviewToSection as n,gotoPreviewSlide as o}from"../../chunk-LUOY3A3Q.js";import{useEaselUndoKeys as r}from"../../chunk-RTMDZJNE.js";import{SlotChildActionsProvider as t}from"../../chunk-KCBEE2MC.js";import{DEFAULT_PANEL_W as s}from"../../chunk-TQUEVJOO.js";import{usePartBridge as i}from"../../chunk-J5VPNHOW.js";import{useSectionOps as c}from"../../chunk-3FANFZ4D.js";import{useScreenDocument as p}from"../../chunk-OB4KI2AN.js";import"../../chunk-JUJEVGLY.js";import"../../chunk-ERR437B5.js";import"../../chunk-5HYVOOH3.js";import"../../chunk-A5USZ6Z6.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6V6LC7QV.js";import"../../chunk-7YXWWMBM.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import{SELECTION_MODE as l,useScreenPinned as m,useScreenCanvasFrame as d,useScreenInspectorPanel as u,useScreenPickFollowsSelection as a,sameInspectorMode as h,useStandaloneScreenBridges as k,useScreenBlockLook as j,useScreenBlockRules as f,isSelectionMode as S,shownChildSlotsOf as N}from"../../chunk-TUIBPB77.js";import{MediaPopup as E}from"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import{DEFAULT_SCREEN_WORDS as y}from"../../chunk-G2VZ4DET.js";import{slotChildRowName as C}from"../../chunk-5NHQ452C.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-R4AUZVA3.js";import{slotFieldsOf as A,nestsInTree as O}from"../../chunk-TCAAOYQY.js";import{useEasel as x}from"../../chunk-L36E2WCO.js";import"../../chunk-XT75WETI.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import{LayersTree as T,Subtree as R,TreeRow as Y,TreeRowAction as B,TreeSeam as P}from"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import{DEFAULT_TREE_WORDS as W}from"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-NDRZP6YR.js";import{DEFAULT_SAVE_WORDS as g,saveIndicator as D}from"../../chunk-H6DDIBQ4.js";import{SaveState as I,panelWidthVars as Q}from"../../chunk-VTY7OQB5.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-G7J6SGMF.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import{useWords as V}from"../../chunk-MFIRYGHW.js";import"../../chunk-SEC6NV6Y.js";import"../../chunk-TQ5Y6S2X.js";import{useTreeDrag as v}from"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import{zoneKey as M,parseZoneKey as b}from"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";import{useState as z,useRef as F,useEffect as w,useCallback as U,Fragment as X}from"react";import{Tooltip as H}from"efficient-shell/ui";import{TrashIcon as L}from"efficient-shell/icons/efficient";import{jsxs as Z,jsx as G,Fragment as J}from"react/jsx-runtime";var K=e=>n=>{n.target.closest("button, input")||e()},$={rowClick:K};function q(){const{saveState:q,readOnly:_,readOnlyReason:ee=null}=p(),ne=c(),{appState:oe,selectedItem:re,config:te}=x(e=>e),[se,ie]=z(l),ce=V("screen",y),pe=V("tree",W),le=V("save",g),{first:me,last:de,panelOf:ue}=m(),ae=ue(me),he=d(),ke=u(),je=oe.data.content?.[0]??null,fe=je?.props.id??null,Se=je?.type===me,Ne=je?.type===de,Ee=F(null),ye=F(null);r(ye),a(re?.props.id),w(()=>{fe&&Ee.current!==fe&&(Ee.current=fe,Se?ie(ae??l):re||ne.select({index:0}))},[fe,re,ne,Se]);const Ce=U(e=>ie(n=>h(n,e)?n:e),[]),Ae=k({kind:se.kind,mode:se,open:Ce,show:e=>ie(e),reveal:()=>{},select:(e,n)=>{ie(e=>h(e,n)?e:n),ne.select(e)}}),{selectNode:Oe}=i({mode:se,setMode:ie,onOpenPart:n}),xe=j(),{labelAtLevel:Te,Icon:Re}=xe,{canAddTo:Ye}=f(),Be=e=>Te(e,"block",te.components[e]?.label??e),Pe=e=>Te(e,"section",Be(e)),We=!Se&&S(se)&&re?.props.id===fe,ge=je?Ye(je.type)?.spec??null:null,De=je&&ge?`${je.props.id}:${ge.slot}`:null,Ie=je&&ge&&Array.isArray(je.props[ge.slot])?je.props[ge.slot]:[],Qe=e=>C(e,Be,xe.plainText),Ve=(e,r)=>{je&&ge&&De&&(ie(l),ge.slider?(o(String(je.props.id),e),ne.select({index:e,zone:De}),n(String(je.props.id))):(ne.select({index:e,zone:De}),n(r)))},ve=()=>{if(!je||!ge||!De)return;const e=Ie.length;ne.insertComponent(De,ge.childType,e),ie(l),ge.slider?requestAnimationFrame(()=>{o(String(je.props.id),e),ne.select({index:e,zone:De})}):ne.select({index:e,zone:De})},Me=e=>A(te,e),be=e=>{const{parentId:n,slot:o}=b(e),r=e=>{if(!e)return null;if(String(e.props.id)===n)return e;for(const n of Me(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(je)?.props[o];return Array.isArray(t)?t.length:0},ze=(e,n,o)=>{const r=Math.min(Math.max(o,0),be(e)),t=n<r?r-1:r;t!==n&&(ne.reorderComponent(e,n,t),ie(l),ne.select({index:t,zone:e}))},Fe=v({keyOf:e=>e.id,readOnly:Boolean(_),canDrop:(e,n)=>M(n)===e.zone&&n.index>=0&&n.index<=be(e.zone),onDrop:(e,n)=>ze(e.zone,e.index,n.index),onStep:(e,n)=>ze(e.zone,e.index,n<0?e.index-1:e.index+2)}),we=(e,n)=>/* @__PURE__ */G(P,{..._?{}:Fe.seam({place:{...b(e),index:n}})},`seam:${e}:${n}`),Ue=e=>xe.blockRowName(e,Be),Xe=(e,o,r)=>{ie(l),ne.select({index:o,zone:e}),n(r)},He=(e,n,o)=>{ne.insertComponent(e,n,o),ie(l),ne.select({index:o,zone:e})},Le=(n,o,r)=>/* @__PURE__ */G(e,{choices:r,onPick:e=>He(n,e,o)}),Ze=(e,n)=>{const o=N(te,e);const r=Ye(e.type,void 0,void 0,{id:String(e.props.id??""),data:oe.data}),t=r?.choices??null,s="footer"===r?.source?Ue:Qe;/* @__PURE__ */
2
- return Z(J,{children:[o.map(({child:e,zone:o,index:r})=>{const t=re?.props.id===e.props.id,i=O(te,e.type,n),c=s(e),p=String(e.props.id),m=()=>Xe(o,r,p),{rowProps:d,...u}=Fe.row({item:{id:p,zone:o,index:r},place:{...b(o),index:r}},{onClick:K(m)});/* @__PURE__ */
3
- return Z(X,{children:[0===r&&we(o,0),
4
- /* @__PURE__ */G(Y,{words:pe,icon:/* @__PURE__ */G(Re,{type:e.type,size:13}),name:c,selected:t,onSelect:m,...u,actions:/* @__PURE__ */G(B,{kind:"delete",label:ce.deleteNamed({name:c}),onClick:()=>{return e=o,n=r,ne.removeComponent(e,n),ie(l),void ne.select(null);var e,n},children:/* @__PURE__ */G(L,{size:13})}),rowProps:d}),i&&/* @__PURE__ */G(R,{children:Ze(e,n+1)}),we(o,r+1)]},String(e.props.id??`${o}-${r}`))}),r&&t?Le(`${e.props.id}:${r.slot}`,o.length,t):null]})},Ge="HeroSingle"===je?.type,Je=Boolean(je)&&(Boolean(Ye(je.type))||Me(je.type).length>0),Ke=Boolean(je)&&(Boolean(ge)||Ne||Se||Ge||Je);/* @__PURE__ */
5
- return Z("div",{ref:ye,className:"sf-editor es-editor",style:Q(s),children:[
6
- /* @__PURE__ */G("div",{className:"sf-section-bar",children:/* @__PURE__ */G(I,null!==ee?{tone:"off",label:ee,role:"status"}:{...D(q,le),role:"status"})}),
7
- /* @__PURE__ */Z("div",{className:"sf-body",children:[Ke&&je&&/* @__PURE__ */Z("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left",children:[
8
- /* @__PURE__ */G("div",{className:"sf-panel-head",children:/* @__PURE__ */G(H,{content:Se?ce.headerSettings:ce.sectionSettings({name:Pe(je.type)}),side:"bottom",children:/* @__PURE__ */G("button",{type:"button",className:"sf-panel-title sf-panel-title--btn "+(We?"is-selected":""),"aria-pressed":We,onClick:()=>{Se?ie(ae??l):(ie(l),ne.select({index:0}))},children:Pe(je.type)})})}),
9
- /* @__PURE__ */G(T,{className:"sf-tree sf-scroll",rootProps:Fe.rootProps(),words:pe,children:/* @__PURE__ */G(R,{children:Se?
10
- /* @__PURE__ */G(Y,{words:pe,icon:/* @__PURE__ */G(Re,{type:"header",size:13}),name:ce.headerSettings,selected:se.kind===ae?.kind,onSelect:()=>ie(ae??l),rowProps:{onClick:K(()=>ie(ae??l))}}):ge?/* @__PURE__ */Z(J,{children:[Ie.map((e,n)=>{const o=re?.props.id===e.props.id,r=Qe(e),t=String(e.props.id),s=()=>Ve(n,t),{rowProps:i,...c}=Fe.row({item:{id:t,zone:De,index:n},place:{...b(De),index:n}},{onClick:K(s)});/* @__PURE__ */
11
- return Z(X,{children:[0===n&&we(De,0),
12
- /* @__PURE__ */G(Y,{words:pe,icon:/* @__PURE__ */G(Re,{type:e.type,size:13}),name:r,selected:o,onSelect:s,...c,actions:/* @__PURE__ */G(B,{kind:"delete",label:ce.deleteNamed({name:r}),onClick:()=>{return e=n,void(De&&(ne.removeComponent(De,e),ie(l),ne.select(null)));var e},children:/* @__PURE__ */G(L,{size:13})}),rowProps:i}),we(De,n+1)]},String(e.props.id??n))}),
13
- /* @__PURE__ */Z("button",{type:"button",className:"sf-add-card",onClick:ve,children:[
14
- /* @__PURE__ */G("span",{className:"sf-plus sf-plus--sm",children:"+"}),ge.addLabel]}),fe?Ae.partRows?.(je,$):null]}):Ze(je,1)})})]}),
15
- /* @__PURE__ */G("div",{className:"sf-center",children:/* @__PURE__ */G("div",{className:"sf-preview-host",children:/* @__PURE__ */G(he,{})})}),
16
- /* @__PURE__ */G(t,{value:{selectChild:(e,n,o,r)=>"section"===Ye(r)?.source?Ve(n,o):Xe(e,n,o),addChild:(e,n,o,r,t)=>"section"===Ye(t)?.source?ve():He(`${e}:${n}`,o,r),childRowName:Qe,blockRowName:Ue},children:/* @__PURE__ */G(ke,{mode:se,onOpenWebsiteSettings:Ae.openSettings??(()=>{}),onSelectNode:Oe,hideNodeActions:!0})})]}),
17
- /* @__PURE__ */G(E,{})]})}export{q as default};
1
+ import{AddBlockRow as e}from"../../chunk-XGTO4LHI.js";import{configNodeDefaults as n,newChildOf as o}from"../../chunk-64NREOML.js";import{scrollPreviewToSection as t,gotoPreviewSlide as r}from"../../chunk-LUOY3A3Q.js";import{useEaselUndoKeys as s}from"../../chunk-3RGHXL5V.js";import{SlotChildActionsProvider as i}from"../../chunk-KCBEE2MC.js";import{DEFAULT_PANEL_W as c}from"../../chunk-TQUEVJOO.js";import{usePartBridge as p}from"../../chunk-OSF2H3LO.js";import{useSectionOps as l}from"../../chunk-PTTQWCD7.js";import{useScreenDocument as m}from"../../chunk-OB4KI2AN.js";import"../../chunk-JUJEVGLY.js";import"../../chunk-ERR437B5.js";import"../../chunk-5HYVOOH3.js";import"../../chunk-A5USZ6Z6.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6V6LC7QV.js";import"../../chunk-7YXWWMBM.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import{SELECTION_MODE as d,useScreenPinned as a,useScreenCanvasFrame as u,useScreenInspectorPanel as h,useScreenPickFollowsSelection as k,sameInspectorMode as j,useStandaloneScreenBridges as f,useScreenBlockLook as S,useScreenBlockRules as N,isSelectionMode as y,shownChildSlotsOf as O}from"../../chunk-DCBUJ36Q.js";import{MediaPopup as C}from"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import{DEFAULT_SCREEN_WORDS as E}from"../../chunk-G2VZ4DET.js";import{slotChildRowName as A}from"../../chunk-5NHQ452C.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-R4AUZVA3.js";import{newNodeId as D,slotFieldsOf as x,nestsInTree as R}from"../../chunk-TCAAOYQY.js";import{useEasel as T}from"../../chunk-HGTDDSFJ.js";import"../../chunk-LK56FUFT.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import{LayersTree as I,Subtree as Q,TreeRow as B,TreeRowAction as Y,TreeSeam as b}from"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import{DEFAULT_TREE_WORDS as g}from"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-NDRZP6YR.js";import{DEFAULT_SAVE_WORDS as M,saveIndicator as P}from"../../chunk-H6DDIBQ4.js";import{SaveState as F,panelWidthVars as V}from"../../chunk-VTY7OQB5.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-G7J6SGMF.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import{useWords as W}from"../../chunk-MFIRYGHW.js";import"../../chunk-DQSRGKSM.js";import"../../chunk-TQ5Y6S2X.js";import{useTreeDrag as v}from"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import{zoneKey as w,parseZoneKey as z}from"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";import{useState as L,useRef as G,useEffect as H,useCallback as U,useMemo as X,Fragment as J}from"react";import{Tooltip as K}from"efficient-shell/ui";import{TrashIcon as Z}from"efficient-shell/icons/efficient";import{jsxs as $,jsx as q,Fragment as _}from"react/jsx-runtime";var ee=e=>n=>{n.target.closest("button, input")||e()},ne={rowClick:ee};function oe(){const{saveState:oe,readOnly:te,readOnlyReason:re=null}=m(),se=l({readOnly:Boolean(te)}),{appState:ie,selectedItem:ce,config:pe}=T(e=>e),[le,me]=L(d),de=W("screen",E),ae=W("tree",g),ue=W("save",M),{first:he,last:ke,panelOf:je}=a(),fe=je(he),Se=u(),Ne=h(),ye=ie.data.content?.[0]??null,Oe=ye?.props.id??null,Ce=ye?.type===he,Ee=ye?.type===ke,Ae=G(null),De=G(null);s(De),k(ce?.props.id),H(()=>{Oe&&Ae.current!==Oe&&(Ae.current=Oe,Ce?me(fe??d):ce||se.select({index:0}))},[Oe,ce,se,Ce]);const xe=U(e=>me(n=>j(n,e)?n:e),[]),Re=f({kind:le.kind,mode:le,open:xe,show:e=>me(e),reveal:()=>{},select:(e,n)=>{me(e=>j(e,n)?e:n),se.select(e)}}),{selectNode:Te}=p({mode:le,setMode:me,onOpenPart:t}),Ie=S(),{labelAtLevel:Qe,Icon:Be}=Ie,{canAddTo:Ye,blockIsOffered:be,nestDepth:ge}=N(),Me=(e,n,o)=>Ye(n,ge(ie.data,n,e),o,{id:e,data:ie.data}),Pe=e=>Qe(e,"block",pe.components[e]?.label??e),Fe=e=>Qe(e,"section",Pe(e)),Ve={nodeDefaults:X(()=>n(pe),[pe]),newNodeId:D,sectionLabel:Fe,blockIsOffered:be},We=!Ce&&y(le)&&ce?.props.id===Oe,ve=ye?Ye(ye.type)?.spec??null:null,we=ye&&ve?`${ye.props.id}:${ve.slot}`:null,ze=ye&&ve&&Array.isArray(ye.props[ve.slot])?ye.props[ve.slot]:[],Le=e=>A(e,Pe,Ie.plainText),Ge=(e,n)=>{ye&&ve&&we&&(me(d),ve.slider?(r(String(ye.props.id),e),se.select({index:e,zone:we}),t(String(ye.props.id))):(se.select({index:e,zone:we}),t(n)))},He=(e,n,t,s,i)=>{const c=`${e}:${n}`,p=Me(e,i,n),l="section"===p?.source&&p.slot===n?p.spec:null,m=o(l,t,Ve);m?se.insertNode(c,s,m):se.insertComponent(c,t,s),me(d),l?.slider?requestAnimationFrame(()=>{r(e,s),se.select({index:s,zone:c})}):se.select({index:s,zone:c})},Ue=e=>x(pe,e),Xe=e=>{const{parentId:n,slot:o}=z(e),t=e=>{if(!e)return null;if(String(e.props.id)===n)return e;for(const n of Ue(e.type)){const o=Array.isArray(e.props[n])?e.props[n]:[];for(const e of o){const n=t(e);if(n)return n}}return null},r=t(ye)?.props[o];return Array.isArray(r)?r.length:0},Je=(e,n,o)=>{const t=Math.min(Math.max(o,0),Xe(e)),r=n<t?t-1:t;r!==n&&(se.reorderComponent(e,n,r),me(d),se.select({index:r,zone:e}))},Ke=v({keyOf:e=>e.id,readOnly:Boolean(te),canDrop:(e,n)=>w(n)===e.zone&&n.index>=0&&n.index<=Xe(e.zone),onDrop:(e,n)=>Je(e.zone,e.index,n.index),onStep:(e,n)=>Je(e.zone,e.index,n<0?e.index-1:e.index+2)}),Ze=(e,n)=>/* @__PURE__ */q(b,{...te?{}:Ke.seam({place:{...z(e),index:n}})},`seam:${e}:${n}`),$e=e=>Ie.blockRowName(e,Pe),qe=(e,n,o)=>{me(d),se.select({index:n,zone:e}),t(o)},_e=(e,n,o)=>{se.insertComponent(e,n,o),me(d),se.select({index:o,zone:e})},en=(n,o,t)=>/* @__PURE__ */q(e,{choices:t,onPick:e=>_e(n,e,o)}),nn=(e,n)=>{const o=O(pe,e);const t=Me(String(e.props.id??""),e.type),r=t?.choices??null,s="footer"===t?.source?$e:Le;/* @__PURE__ */
2
+ return $(_,{children:[o.map(({child:e,zone:o,index:t})=>{const r=ce?.props.id===e.props.id,i=R(pe,e.type,n),c=s(e),p=String(e.props.id),l=()=>qe(o,t,p),{rowProps:m,...a}=Ke.row({item:{id:p,zone:o,index:t},place:{...z(o),index:t}},{onClick:ee(l)});/* @__PURE__ */
3
+ return $(J,{children:[0===t&&Ze(o,0),
4
+ /* @__PURE__ */q(B,{words:ae,icon:/* @__PURE__ */q(Be,{type:e.type,size:13}),name:c,selected:r,onSelect:l,...a,actions:/* @__PURE__ */q(Y,{kind:"delete",label:de.deleteNamed({name:c}),onClick:()=>{return e=o,n=t,se.removeComponent(e,n),me(d),void se.select(null);var e,n},children:/* @__PURE__ */q(Z,{size:13})}),rowProps:m}),i&&/* @__PURE__ */q(Q,{children:nn(e,n+1)}),Ze(o,t+1)]},String(e.props.id??`${o}-${t}`))}),t&&r?en(`${e.props.id}:${t.slot}`,o.length,r):null]})},on="HeroSingle"===ye?.type,tn=Boolean(ye)&&(Boolean(Ye(ye.type))||Ue(ye.type).length>0),rn=Boolean(ye)&&(Boolean(ve)||Ee||Ce||on||tn);/* @__PURE__ */
5
+ return $("div",{ref:De,className:"sf-editor es-editor",style:V(c),children:[
6
+ /* @__PURE__ */q("div",{className:"sf-section-bar",children:/* @__PURE__ */q(F,null!==re?{tone:"off",label:re,role:"status"}:{...P(oe,ue),role:"status"})}),
7
+ /* @__PURE__ */$("div",{className:"sf-body",children:[rn&&ye&&/* @__PURE__ */$("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left",children:[
8
+ /* @__PURE__ */q("div",{className:"sf-panel-head",children:/* @__PURE__ */q(K,{content:Ce?de.headerSettings:de.sectionSettings({name:Fe(ye.type)}),side:"bottom",children:/* @__PURE__ */q("button",{type:"button",className:"sf-panel-title sf-panel-title--btn "+(We?"is-selected":""),"aria-pressed":We,onClick:()=>{Ce?me(fe??d):(me(d),se.select({index:0}))},children:Fe(ye.type)})})}),
9
+ /* @__PURE__ */q(I,{className:"sf-tree sf-scroll",rootProps:Ke.rootProps(),words:ae,children:/* @__PURE__ */q(Q,{children:Ce?
10
+ /* @__PURE__ */q(B,{words:ae,icon:/* @__PURE__ */q(Be,{type:"header",size:13}),name:de.headerSettings,selected:le.kind===fe?.kind,onSelect:()=>me(fe??d),rowProps:{onClick:ee(()=>me(fe??d))}}):ve?/* @__PURE__ */$(_,{children:[ze.map((e,n)=>{const o=ce?.props.id===e.props.id,t=Le(e),r=String(e.props.id),s=()=>Ge(n,r),{rowProps:i,...c}=Ke.row({item:{id:r,zone:we,index:n},place:{...z(we),index:n}},{onClick:ee(s)});/* @__PURE__ */
11
+ return $(J,{children:[0===n&&Ze(we,0),
12
+ /* @__PURE__ */q(B,{words:ae,icon:/* @__PURE__ */q(Be,{type:e.type,size:13}),name:t,selected:o,onSelect:s,...c,actions:/* @__PURE__ */q(Y,{kind:"delete",label:de.deleteNamed({name:t}),onClick:()=>{return e=n,void(we&&(se.removeComponent(we,e),me(d),se.select(null)));var e},children:/* @__PURE__ */q(Z,{size:13})}),rowProps:i}),Ze(we,n+1)]},String(e.props.id??n))}),
13
+ /* @__PURE__ */$("button",{type:"button",className:"sf-add-card",onClick:()=>{ye&&ve&&He(String(ye.props.id),ve.slot,ve.childType,ze.length,ye.type)},children:[
14
+ /* @__PURE__ */q("span",{className:"sf-plus sf-plus--sm",children:"+"}),ve.addLabel]}),Oe?Re.partRows?.(ye,ne):null]}):nn(ye,1)})})]}),
15
+ /* @__PURE__ */q("div",{className:"sf-center",children:/* @__PURE__ */q("div",{className:"sf-preview-host",children:/* @__PURE__ */q(Se,{})})}),
16
+ /* @__PURE__ */q(i,{value:{selectChild:(e,n,o,t)=>{const{parentId:r,slot:s}=z(e);return"section"===Me(r,t,s)?.source?Ge(n,o):qe(e,n,o)},addChild:(e,n,o,t,r)=>"section"===Me(e,r,n)?.source?He(e,n,o,t,r):_e(`${e}:${n}`,o,t),childRowName:Le,blockRowName:$e},children:/* @__PURE__ */q(Ne,{mode:le,onOpenWebsiteSettings:Re.openSettings??(()=>{}),onSelectNode:Te,hideNodeActions:!0})})]}),
17
+ /* @__PURE__ */q(C,{})]})}export{oe as default};
@@ -1,4 +1,4 @@
1
- import { ScreenInspectorMode } from '../lib/screen-parts.js';
1
+ import { n as ScreenInspectorMode } from '../../AddSidePanel-DoCx-ZrM.js';
2
2
  import 'react';
3
3
  import '../../CanvasDragLayer-DXeQGrwJ.js';
4
4
  import '../../watch-Unf6SfUf.js';
@@ -25,7 +25,7 @@ import '../../words-CnnHb9jo.js';
25
25
  import '../../types-CoUTWUwB.js';
26
26
  import 'efficient-shell/ui';
27
27
  import '../../words-Cl9xMUYY.js';
28
- import '../../ScreenDocumentContext-DPW_6gOC.js';
28
+ import '../../ScreenDocumentContext-JQr4hTeP.js';
29
29
  import '../lib/document-contract.js';
30
30
  import '../lib/document-switch.js';
31
31
  import '../../engine-CvXpFE86.js';
@@ -35,8 +35,6 @@ import '../lib/backend-error.js';
35
35
  import '../lib/host-chrome.js';
36
36
  import '../lib/links/link-filters.js';
37
37
  import '../lib/document-hooks.js';
38
- import '../lib/document/add-target-types.js';
39
- import '../lib/document/slot-section-spec.js';
40
38
 
41
39
  /**
42
40
  * The editor-chrome half of the click→part bridge, in ONE place because both
@@ -1 +1 @@
1
- export{usePartBridge}from"../../chunk-J5VPNHOW.js";import"../../chunk-3FANFZ4D.js";import"../../chunk-TUIBPB77.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-L36E2WCO.js";import"../../chunk-XT75WETI.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
1
+ export{usePartBridge}from"../../chunk-OSF2H3LO.js";import"../../chunk-PTTQWCD7.js";import"../../chunk-DCBUJ36Q.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-HGTDDSFJ.js";import"../../chunk-LK56FUFT.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-SDSBXW3V.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-TDEBPOWV.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-D4TH4QQR.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-LDHUPZBK.js";import"../../chunk-TF6NAIV7.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-MNQDOSAX.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-ANBPE45L.js";import"../../chunk-C63IB4VW.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-UMTUKSE6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-QEEW4X64.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-6GJEOER4.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-YDTEYXQW.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
@@ -1,9 +1,9 @@
1
1
  export { DocumentScreen, default as ScreenMount } from './components/ScreenMount.js';
2
2
  export { default as ScreenStoreProvider } from './components/ScreenStoreProvider.js';
3
- export { CopyItemAction, CopyItemRequest, 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, ScreenNodeAt, ScreenNodeLevel, ScreenNodeMaker, ScreenPartMode, ScreenParts, ScreenPartsProvider, ScreenPinnedBand, ScreenPinnedNodes, ScreenRailItem, ScreenSelector, ScreenSharedSections, ScreenSlot, ScreenSlotAction, ScreenSlotMode, ScreenStyleClipboard, ScreenStyleDocument, ScreenStylePastePlan, ScreenToastExtra, ScreenTree, ScreenTreeFolds, ScreenTreeRows, isPinnedFirst, isPinnedLast, isSelectionMode, isSlotMode, sameInspectorMode, screenSlotsOf, shownChildSlotsOf, shownSlotFieldsOf, 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';
3
+ export { C as CopyItemAction, a as CopyItemRequest, N as NodeDefaults, S as SELECTION_MODE, b as ScreenBlockLook, c as ScreenBlockRules, d as ScreenBridges, e as ScreenCanvas, f as ScreenCanvasDrag, g as ScreenCanvasDragContext, h as ScreenCanvasHeadProps, i as ScreenCanvasTargetProvider, j as ScreenDevices, k as ScreenDocumentOps, l as ScreenDragItem, m as ScreenInspector, n as ScreenInspectorMode, o as ScreenInspectorPanelProps, p as ScreenLeftPanel, q as ScreenLeftView, r as ScreenLeftViewFrame, s as ScreenLeftViewRules, t as ScreenMainAction, u as ScreenMediaDrop, v as ScreenMediaFile, w as ScreenMenuItem, x as ScreenMenuRows, y as ScreenNewNode, z as ScreenNode, A as ScreenNodeActions, B as ScreenNodeAt, D as ScreenNodeLevel, E as ScreenNodeMaker, F as ScreenPartMode, G as ScreenParts, H as ScreenPartsProvider, I as ScreenPinnedBand, J as ScreenPinnedNodes, K as ScreenRailItem, L as ScreenSelector, M as ScreenSharedSections, O as ScreenSlot, P as ScreenSlotAction, Q as ScreenSlotMode, R as ScreenStyleClipboard, T as ScreenStyleDocument, U as ScreenStylePastePlan, V as ScreenToastExtra, W as ScreenTree, X as ScreenTreeFolds, Y as ScreenTreeRows, Z as isPinnedFirst, _ as isPinnedLast, $ as isSelectionMode, a0 as isSlotMode, a1 as sameInspectorMode, a2 as screenSlotsOf, a3 as shownChildSlotsOf, a4 as shownSlotFieldsOf, a5 as useScreenBlockLook, a6 as useScreenBlockRules, a7 as useScreenBridges, a8 as useScreenCanvasDrag, a9 as useScreenCanvasFrame, aa as useScreenCanvasHead, ab as useScreenCanvasTarget, ac as useScreenDevices, ad as useScreenDocumentLabel, ae as useScreenDocumentPass, af as useScreenInspectorPanel, ag as useScreenLeftView, ah as useScreenNodeKeys, ai as useScreenNotify, aj as useScreenOwnerName, ak as useScreenParts, al as useScreenPickFollowsSelection, am as useScreenPinned, an as useScreenSaveSwitch, ao as useScreenStorageNamespace, ap as useScreenStyleClipboard, aq as useStandaloneScreenBridges } from '../AddSidePanel-DoCx-ZrM.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 EaselBlockType, b as EaselFieldDescription, c as EaselHost, d as EaselHostAddress, e as EaselHostContext, f as EaselHostPanels, g as EaselHostProvider, h as EaselMessageType, i as EaselSelection, j as EaselToHostMessage, F as FIELD_DESCRIPTION_MARKER, H as HostPickedMedia, k as HostToEaselMessage, I as InboundHostMessage, N as NO_DOCUMENT_ADDRESSING, P as PageEditOp, l as PickedMediaSource, S as SectionScreenTarget, m as SendToHost, n as createEaselHost, o as describedAs, u as useEaselHost, p as useHostEscape } from '../ScreenDocumentContext-DPW_6gOC.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 EaselHostPanels, g as EaselHostProvider, h as EaselMessageType, i as EaselSelection, j as EaselToHostMessage, F as FIELD_DESCRIPTION_MARKER, H as HostPickedMedia, k as HostToEaselMessage, I as InboundHostMessage, N as NO_DOCUMENT_ADDRESSING, P as PageEditOp, l as PickedMediaSource, S as SectionScreenTarget, m as SendToHost, n as createEaselHost, o as describedAs, u as useEaselHost, p as useHostEscape } from '../ScreenDocumentContext-JQr4hTeP.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';
@@ -33,8 +33,6 @@ import 'efficient-shell/ui';
33
33
  import '../words-Cl9xMUYY.js';
34
34
  import './lib/host-chrome.js';
35
35
  import './lib/links/link-filters.js';
36
- import './lib/document/add-target-types.js';
37
- import './lib/document/slot-section-spec.js';
38
36
  import './lib/backend-error.js';
39
37
  import './lib/document-hooks.js';
40
38
  import './lib/document-switch.js';
@@ -1 +1 @@
1
- import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-P3HXHLES.js";import"../chunk-GXQCZJOP.js";export{ScreenStoreProvider}from"../chunk-QPNNWQ24.js";import"../chunk-DTEYSPJE.js";import"../chunk-UMBNBCL4.js";import"../chunk-OXZDSOZV.js";import"../chunk-7OCEPOEJ.js";import"../chunk-VNUXFD4X.js";import"../chunk-5XL2RXFU.js";import"../chunk-3QB2ZQXK.js";import"../chunk-ZNLODQD4.js";import"../chunk-22I55W37.js";import"../chunk-LUOY3A3Q.js";import"../chunk-RTMDZJNE.js";import"../chunk-KCBEE2MC.js";import"../chunk-TQUEVJOO.js";import"../chunk-J5VPNHOW.js";import"../chunk-3FANFZ4D.js";import"../chunk-XV5D4V2T.js";import"../chunk-2EEYFRQM.js";import"../chunk-RKTF5XLP.js";import"../chunk-OB4KI2AN.js";import"../chunk-JUJEVGLY.js";import"../chunk-ERR437B5.js";import"../chunk-5HYVOOH3.js";import"../chunk-A5USZ6Z6.js";export{NO_DOCUMENT_ADDRESSING}from"../chunk-RLBXE4EU.js";import"../chunk-6V6LC7QV.js";import"../chunk-7YXWWMBM.js";import"../chunk-NQW6XCAY.js";import"../chunk-LOMEH6DG.js";import"../chunk-5545A3PC.js";import"../chunk-GJ427TZL.js";import"../chunk-GDO4QJ4G.js";import"../chunk-IZGFJWH4.js";import"../chunk-N7E6264U.js";import"../chunk-N3MJOHAG.js";import"../chunk-MTWQYLJE.js";import"../chunk-UMDQ6CLQ.js";import"../chunk-KCOBHPN6.js";import"../chunk-RUQOIQWI.js";export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSelectionMode,isSlotMode,sameInspectorMode,screenSlotsOf,shownChildSlotsOf,shownSlotFieldsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../chunk-TUIBPB77.js";import"../chunk-T2RINM7R.js";import"../chunk-NCXYC7WI.js";import"../chunk-WW24O7HT.js";export{EaselSessionProvider,useEaselSession}from"../chunk-YM4UEGBV.js";export{EFFICIENT_BACKEND,activateEaselSession,backendOf,createEaselSession,currentEaselSession,deactivateEaselSession,efficientClientOpen,isEfficientBackend,provideDefaultBackend,resetAmbientEaselSession,sessionRegistry,setSessionBridgedSite,setSessionDocumentSite}from"../chunk-SNF5764Q.js";export{DETACHED_EASEL_HOST,EaselHostContext,EaselHostProvider,FIELD_DESCRIPTION_MARKER,createEaselHost,describedAs,useEaselHost,useHostEscape}from"../chunk-LX23TCTP.js";import"../chunk-XFYFKITX.js";import"../chunk-G2VZ4DET.js";import"../chunk-3OOYGEJY.js";import"../chunk-6WY6ZXJG.js";import"../chunk-5NHQ452C.js";import"../chunk-AJ2SUSET.js";import"../chunk-6UAEFOJ4.js";import"../chunk-ANPOR6EY.js";import"../chunk-R4AUZVA3.js";import"../chunk-TCAAOYQY.js";import"../chunk-L36E2WCO.js";import"../chunk-XT75WETI.js";import"../chunk-TBY3DFKS.js";import"../chunk-SDSBXW3V.js";import"../chunk-BPXEFVSQ.js";import"../chunk-YCSZAP7T.js";import"../chunk-TDEBPOWV.js";import"../chunk-WHS6Y55E.js";import"../chunk-D4TH4QQR.js";import"../chunk-K56YDHYQ.js";import"../chunk-56ID6FKZ.js";import"../chunk-LDHUPZBK.js";import"../chunk-ZKY45F5G.js";import"../chunk-FIVU2COQ.js";import"../chunk-P5VYGWYO.js";import"../chunk-WK3AFPXY.js";import"../chunk-TF6NAIV7.js";import"../chunk-NDRZP6YR.js";import"../chunk-H6DDIBQ4.js";import"../chunk-VTY7OQB5.js";import"../chunk-MJM6SFD3.js";import"../chunk-AJSDWWJW.js";import"../chunk-2OAZYSWJ.js";import"../chunk-G7J6SGMF.js";import"../chunk-RE4LP46F.js";import"../chunk-MNQDOSAX.js";import"../chunk-PMRN5Z3T.js";import"../chunk-ANBPE45L.js";import"../chunk-C63IB4VW.js";import"../chunk-DX3VILZ3.js";import"../chunk-MIX7EGRG.js";import"../chunk-UMTUKSE6.js";import"../chunk-MFIRYGHW.js";import"../chunk-SEC6NV6Y.js";import"../chunk-TQ5Y6S2X.js";import"../chunk-QEEW4X64.js";import"../chunk-P2VEMZH5.js";import"../chunk-YDTEYXQW.js";import"../chunk-KXM6YRG2.js";import"../chunk-6GJEOER4.js";import"../chunk-FR7EEKFF.js";import"../chunk-7UFKEX72.js";import"../chunk-BSPCSC45.js";import"../chunk-467WWV4I.js";import"../chunk-TIAWIOGD.js";import"../chunk-MGVI67QV.js";
1
+ import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-2Y4CAWZQ.js";import"../chunk-GXQCZJOP.js";export{ScreenStoreProvider}from"../chunk-JI7GUM3C.js";import"../chunk-ZSP4ZAQ2.js";import"../chunk-UMBNBCL4.js";import"../chunk-OXZDSOZV.js";import"../chunk-7OCEPOEJ.js";import"../chunk-VNUXFD4X.js";import"../chunk-5XL2RXFU.js";import"../chunk-3QB2ZQXK.js";import"../chunk-ZNLODQD4.js";import"../chunk-22I55W37.js";import"../chunk-64NREOML.js";import"../chunk-LUOY3A3Q.js";import"../chunk-3RGHXL5V.js";import"../chunk-KCBEE2MC.js";import"../chunk-TQUEVJOO.js";import"../chunk-OSF2H3LO.js";import"../chunk-PTTQWCD7.js";import"../chunk-XV5D4V2T.js";import"../chunk-2EEYFRQM.js";import"../chunk-RKTF5XLP.js";import"../chunk-OB4KI2AN.js";import"../chunk-JUJEVGLY.js";import"../chunk-ERR437B5.js";import"../chunk-5HYVOOH3.js";import"../chunk-A5USZ6Z6.js";export{NO_DOCUMENT_ADDRESSING}from"../chunk-RLBXE4EU.js";import"../chunk-6V6LC7QV.js";import"../chunk-7YXWWMBM.js";import"../chunk-NQW6XCAY.js";import"../chunk-LOMEH6DG.js";import"../chunk-5545A3PC.js";import"../chunk-YCYGY54I.js";import"../chunk-GDO4QJ4G.js";import"../chunk-IZGFJWH4.js";import"../chunk-N7E6264U.js";import"../chunk-N3MJOHAG.js";import"../chunk-MTWQYLJE.js";import"../chunk-UMDQ6CLQ.js";import"../chunk-KCOBHPN6.js";import"../chunk-RUQOIQWI.js";export{SELECTION_MODE,ScreenCanvasTargetProvider,ScreenPartsProvider,isPinnedFirst,isPinnedLast,isSelectionMode,isSlotMode,sameInspectorMode,screenSlotsOf,shownChildSlotsOf,shownSlotFieldsOf,useScreenBlockLook,useScreenBlockRules,useScreenBridges,useScreenCanvasDrag,useScreenCanvasFrame,useScreenCanvasHead,useScreenCanvasTarget,useScreenDevices,useScreenDocumentLabel,useScreenDocumentPass,useScreenInspectorPanel,useScreenLeftView,useScreenNodeKeys,useScreenNotify,useScreenOwnerName,useScreenParts,useScreenPickFollowsSelection,useScreenPinned,useScreenSaveSwitch,useScreenStorageNamespace,useScreenStyleClipboard,useStandaloneScreenBridges}from"../chunk-DCBUJ36Q.js";import"../chunk-T2RINM7R.js";import"../chunk-NCXYC7WI.js";import"../chunk-M5UCPD66.js";export{EaselSessionProvider,useEaselSession}from"../chunk-YM4UEGBV.js";export{EFFICIENT_BACKEND,activateEaselSession,backendOf,createEaselSession,currentEaselSession,deactivateEaselSession,efficientClientOpen,isEfficientBackend,provideDefaultBackend,resetAmbientEaselSession,sessionRegistry,setSessionBridgedSite,setSessionDocumentSite}from"../chunk-SNF5764Q.js";export{DETACHED_EASEL_HOST,EaselHostContext,EaselHostProvider,FIELD_DESCRIPTION_MARKER,createEaselHost,describedAs,useEaselHost,useHostEscape}from"../chunk-LX23TCTP.js";import"../chunk-XFYFKITX.js";import"../chunk-3OOYGEJY.js";import"../chunk-G2VZ4DET.js";import"../chunk-6WY6ZXJG.js";import"../chunk-5NHQ452C.js";import"../chunk-AJ2SUSET.js";import"../chunk-6UAEFOJ4.js";import"../chunk-ANPOR6EY.js";import"../chunk-R4AUZVA3.js";import"../chunk-TCAAOYQY.js";import"../chunk-HGTDDSFJ.js";import"../chunk-LK56FUFT.js";import"../chunk-TBY3DFKS.js";import"../chunk-SDSBXW3V.js";import"../chunk-BPXEFVSQ.js";import"../chunk-YCSZAP7T.js";import"../chunk-TDEBPOWV.js";import"../chunk-WHS6Y55E.js";import"../chunk-D4TH4QQR.js";import"../chunk-K56YDHYQ.js";import"../chunk-56ID6FKZ.js";import"../chunk-LDHUPZBK.js";import"../chunk-P5VYGWYO.js";import"../chunk-WK3AFPXY.js";import"../chunk-TF6NAIV7.js";import"../chunk-ZKY45F5G.js";import"../chunk-FIVU2COQ.js";import"../chunk-NDRZP6YR.js";import"../chunk-H6DDIBQ4.js";import"../chunk-VTY7OQB5.js";import"../chunk-MJM6SFD3.js";import"../chunk-AJSDWWJW.js";import"../chunk-2OAZYSWJ.js";import"../chunk-G7J6SGMF.js";import"../chunk-RE4LP46F.js";import"../chunk-MNQDOSAX.js";import"../chunk-PMRN5Z3T.js";import"../chunk-ANBPE45L.js";import"../chunk-C63IB4VW.js";import"../chunk-DX3VILZ3.js";import"../chunk-MIX7EGRG.js";import"../chunk-UMTUKSE6.js";import"../chunk-MFIRYGHW.js";import"../chunk-DQSRGKSM.js";import"../chunk-TQ5Y6S2X.js";import"../chunk-QEEW4X64.js";import"../chunk-P2VEMZH5.js";import"../chunk-6GJEOER4.js";import"../chunk-FR7EEKFF.js";import"../chunk-7UFKEX72.js";import"../chunk-YDTEYXQW.js";import"../chunk-KXM6YRG2.js";import"../chunk-BSPCSC45.js";import"../chunk-467WWV4I.js";import"../chunk-TIAWIOGD.js";import"../chunk-MGVI67QV.js";
@@ -1,55 +1,37 @@
1
- import { BlockChoice } from './block-choice.js';
2
- import { SlotSectionSpec } from './slot-section-spec.js';
3
-
4
- /** Which registry answered — the discriminator three of the four decisions read. */
5
- type AddTargetSource = "section" | "footer" | "container";
6
- /**
7
- * What a parent can take, and everything the four decisions below need to act on
8
- * it.
9
- *
10
- * ⚠️ THE LOOKUP DECIDES FOUR THINGS, NOT ONE. Wiring only the choice list ships
11
- * a menu with wrong row names, wrong handlers, and unreachable on an empty
12
- * container — which is why this returns a record rather than a list:
13
- *
14
- * 1 the CHOICE LIST — {@link AddTarget.choices}, what the Add menu offers, or
15
- * `null` where the parent adds ONE child type from a button instead.
16
- * 2 the ROW NAME — `rowNamerFor` (components/SlotChildRows) reads
17
- * {@link AddTarget.source} to pick the FOOTER's block-label rule over
18
- * lib/document/slot-child-name.ts. It must ask "is this a FOOTER block", NOT
19
- * "does this parent use a menu": a Box adds from a menu too and
20
- * keeps the slot-child rule, or its Headings, Texts and Buttons all fall
21
- * through to a rule that reads a heading, a bound menu and first-words.
22
- * 3 WHICH HANDLERS — SectionScreenShell's adapter reads `source` to choose
23
- * which pair of host handlers a row presses. Keyed the other way round it
24
- * answered null for a Box, whose rows then pressed and did nothing.
25
- * 4 REACHABILITY — `Boolean(canAddTo(type))` feeds `nestState`, and a row
26
- * folds open only if it has children OR an add affordance. An EMPTY
27
- * container with no caret cannot be opened to reach its own menu — and
28
- * empty is exactly the state a merchant is in when adding the first block.
29
- */
30
- interface AddTarget {
31
- /** Which of the three registries answered. */
32
- source: AddTargetSource;
33
- /**
34
- * The slot this parent keeps its children on.
35
- *
36
- * RETURNED rather than defaulted, so a caller can never reach it by falling
37
- * through another mechanism's constant — the rule container-blocks states for
38
- * its own lookup, kept here because this is now the one that is asked. A Flex
39
- * listed on the Footer's `blocks` would draw its rows off `undefined`.
40
- */
41
- slot: string;
42
- /** The registry's own choice list, or `null` for a single-type "Add …" button. */
43
- choices: BlockChoice[] | null;
44
- /**
45
- * The section's own spec — its `addLabel`, `childType`, `seeds`, `addBlocked`,
46
- * `notice` and `slider`. Non-null exactly when `source === "section"`.
47
- *
48
- * Carried so a caller that needs a section's own arithmetic (the Hero slide's
49
- * anchor cap, the seed-on-load effect) reaches it through this one seam rather
50
- * than importing the registry beside it and gaining a second opinion.
51
- */
52
- spec: SlotSectionSpec | null;
53
- }
54
-
55
- export type { AddTarget, AddTargetSource };
1
+ import './block-choice.js';
2
+ export { at as AddTarget, au as AddTargetSource } from '../../../AddSidePanel-DoCx-ZrM.js';
3
+ import 'react';
4
+ import '../../../CanvasDragLayer-DXeQGrwJ.js';
5
+ import '../../../watch-Unf6SfUf.js';
6
+ import '../../../types-Dq180WRV.js';
7
+ import '../../../words-SD4neL0n.js';
8
+ import '../section-template-types.js';
9
+ import './content-tree.js';
10
+ import '../shared-section-types.js';
11
+ import '../../../blocks/index.js';
12
+ import '../../../types-BljCVdzR.js';
13
+ import '../../../data/index.js';
14
+ import '../../../phone-order-CRKvsTsz.js';
15
+ import '../../../plan-D0DgSLnY.js';
16
+ import '../../../types-SrGNzYeO.js';
17
+ import '../../../types-Cy7rdmXt.js';
18
+ import '../../../wordFit-7XpmhcaW.js';
19
+ import '../../../edit-lock/index.js';
20
+ import '../../../panelWidths-DgQXiPXU.js';
21
+ import '../../../copy-place-CQIemdtU.js';
22
+ import '../../../types-BbOBWXMP.js';
23
+ import '../../../style-clipboard/index.js';
24
+ import '../../../words-CnnHb9jo.js';
25
+ import '../../../types-CoUTWUwB.js';
26
+ import 'efficient-shell/ui';
27
+ import '../../../words-Cl9xMUYY.js';
28
+ import '../../../ScreenDocumentContext-JQr4hTeP.js';
29
+ import '../document-contract.js';
30
+ import '../document-switch.js';
31
+ import '../../../engine-CvXpFE86.js';
32
+ import '../admin-bridge.js';
33
+ import '../session.js';
34
+ import '../backend-error.js';
35
+ import '../host-chrome.js';
36
+ import '../links/link-filters.js';
37
+ import '../document-hooks.js';
@@ -1 +1 @@
1
- import{buttonFieldSet as e}from"../../../chunk-LAJYMOY3.js";import"../../../chunk-XESNAMI3.js";import{boxFieldSet as o}from"../../../chunk-WL57KM5C.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-6WY6ZXJG.js";import"../../../chunk-PLTTPHK5.js";import{foldMetaOf as t}from"../../../chunk-ANPOR6EY.js";import"../../../chunk-L36E2WCO.js";import"../../../chunk-XT75WETI.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import{phoneKey as n}from"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-BSPCSC45.js";function s(e){return Object.keys(e).filter(o=>{return n=e[o],!(null!==t(n));var n})}function r(e,o){const n=o.off??{},s=o.keys??{};for(const[e,o]of Object.entries(n))if(!o.trim())throw new Error(`blockSetFor: off row "${e}" needs a reason.`);for(const o of[...Object.keys(n),...Object.keys(s)]){if(!Object.hasOwn(e,o))throw new Error(`blockSetFor: the set has no row "${o}".`);if(Object.hasOwn(n,o)&&Object.hasOwn(s,o))throw new Error(`blockSetFor: row "${o}" is both off and renamed.`)}const r={};let i=[];for(const[o,c]of Object.entries(e)){const a=t(c);if(a){i=i.filter(([,e])=>t(e).level<a.level),i.push([o,c]);continue}if(Object.hasOwn(n,o))continue;for(const[e,o]of i)r[e]=o;i=[];const u=Object.hasOwn(s,o)?s[o]:o;if(Object.hasOwn(r,u)||u!==o&&Object.hasOwn(e,u))throw new Error(`blockSetFor: renamed key "${u}" is already a row.`);r[u]=c}return r}function i(e){const o=e.build();r(o,e.email),r(o,e.website);const t=s(o),n=e=>new Set(Object.keys(e.off??{})),i=n(e.email),c=n(e.website),a=[];for(const o of t)i.has(o)&&!c.has(o)&&a.push({row:o,only:"website",reason:e.email.off[o]}),c.has(o)&&!i.has(o)&&a.push({row:o,only:"email",reason:e.website.off[o]});return a}var c=["button","image","box","divider","logo","text","section","social"],a={useFill:()=>"",useText:()=>"",useBorder:()=>({width:0,color:""}),useCorners:()=>0},u={button:{build:()=>e({follows:a,padding:{fallback:{}}}),email:{editor:"email"},website:{editor:"website"}},box:{build:()=>o(),email:{editor:"email",keys:{gap:"itemGap"},off:Object.fromEntries(["sectionPaddingTop","sectionPaddingRight","sectionPaddingBottom","sectionPaddingLeft"].map(e=>[n(e),"email: a Banner Box draws in the desktop view only (admin inBannerFields)"]))},website:{editor:"website"}}},h={button:"the set is in easel; admin (A-B) and web-builder (W-B) still build their own rows (plan group 1)",image:"no easel set yet (plan group 2)",box:"the set is in easel and the email Banner Box imports it; the website Flex builds its own rows (plan group 3)",divider:"no easel set yet (plan group 4)",logo:"no easel set yet (plan group 5)",text:"no easel set yet (plan group 6)",section:"no easel set yet (plan group 7)",social:"no easel set yet (plan group 7)"};export{c as BLOCK_KINDS,h as BLOCK_SETS_STILL_TWO_COPIES,u as BLOCK_SET_PAIRS,i as blockSetDifferences,r as blockSetFor,s as blockSetRowKeys};
1
+ import{buttonFieldSet as e}from"../../../chunk-I4Z75MCX.js";import"../../../chunk-MMHYTIUY.js";import{boxFieldSet as o}from"../../../chunk-SR2535CN.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-6WY6ZXJG.js";import"../../../chunk-PLTTPHK5.js";import{foldMetaOf as t}from"../../../chunk-ANPOR6EY.js";import"../../../chunk-HGTDDSFJ.js";import"../../../chunk-LK56FUFT.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import{phoneKey as n}from"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-BSPCSC45.js";function s(e){return Object.keys(e).filter(o=>{return n=e[o],!(null!==t(n));var n})}function r(e,o){const n=o.off??{},s=o.keys??{};for(const[e,o]of Object.entries(n))if(!o.trim())throw new Error(`blockSetFor: off row "${e}" needs a reason.`);for(const o of[...Object.keys(n),...Object.keys(s)]){if(!Object.hasOwn(e,o))throw new Error(`blockSetFor: the set has no row "${o}".`);if(Object.hasOwn(n,o)&&Object.hasOwn(s,o))throw new Error(`blockSetFor: row "${o}" is both off and renamed.`)}const r={};let i=[];for(const[o,c]of Object.entries(e)){const a=t(c);if(a){i=i.filter(([,e])=>t(e).level<a.level),i.push([o,c]);continue}if(Object.hasOwn(n,o))continue;for(const[e,o]of i)r[e]=o;i=[];const u=Object.hasOwn(s,o)?s[o]:o;if(Object.hasOwn(r,u)||u!==o&&Object.hasOwn(e,u))throw new Error(`blockSetFor: renamed key "${u}" is already a row.`);r[u]=c}return r}function i(e){const o=e.build();r(o,e.email),r(o,e.website);const t=s(o),n=e=>new Set(Object.keys(e.off??{})),i=n(e.email),c=n(e.website),a=[];for(const o of t)i.has(o)&&!c.has(o)&&a.push({row:o,only:"website",reason:e.email.off[o]}),c.has(o)&&!i.has(o)&&a.push({row:o,only:"email",reason:e.website.off[o]});return a}var c=["button","image","box","divider","logo","text","section","social"],a={useFill:()=>"",useText:()=>"",useBorder:()=>({width:0,color:""}),useCorners:()=>0},u={button:{build:()=>e({follows:a,padding:{fallback:{}}}),email:{editor:"email"},website:{editor:"website"}},box:{build:()=>o(),email:{editor:"email",keys:{gap:"itemGap"},off:Object.fromEntries(["sectionPaddingTop","sectionPaddingRight","sectionPaddingBottom","sectionPaddingLeft"].map(e=>[n(e),"email: a Banner Box draws in the desktop view only (admin inBannerFields)"]))},website:{editor:"website"}}},h={button:"the set is in easel; admin (A-B) and web-builder (W-B) still build their own rows (plan group 1)",image:"no easel set yet (plan group 2)",box:"the set is in easel and the email Banner Box imports it; the website Flex builds its own rows (plan group 3)",divider:"no easel set yet (plan group 4)",logo:"no easel set yet (plan group 5)",text:"no easel set yet (plan group 6)",section:"no easel set yet (plan group 7)",social:"no easel set yet (plan group 7)"};export{c as BLOCK_KINDS,h as BLOCK_SETS_STILL_TWO_COPIES,u as BLOCK_SET_PAIRS,i as blockSetDifferences,r as blockSetFor,s as blockSetRowKeys};
@@ -7,7 +7,7 @@ import '../../../types-BYxYJQMa.js';
7
7
  import '../../../wordFit-7XpmhcaW.js';
8
8
  import '../../../words-BgeDGDKn.js';
9
9
  import '../../../buckets-BYQBBVgO.js';
10
- import '../../../ScreenDocumentContext-DPW_6gOC.js';
10
+ import '../../../ScreenDocumentContext-JQr4hTeP.js';
11
11
  import '../../../blocks/index.js';
12
12
  import '../../../types-BljCVdzR.js';
13
13
  import '../../../data/index.js';
@@ -1 +1 @@
1
- import{noGlyph as t,boxFieldBuilders as i,PHONE_KEY_ACCESS as n,group as o,phoneTwinFields as r}from"../../../chunk-WL57KM5C.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-6WY6ZXJG.js";import{BLOCK_WIDTH_LIMIT as h,BLOCK_FIXED_WIDTH as m,BLOCK_WIDTH_FIT_POINTS as e,BLOCK_WIDTH_FIT_DEFAULT as s,TEXT_FIT_MIN_FONT as c,TEXT_FIT_POINTS as p}from"../../../chunk-XH4BP64C.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-L36E2WCO.js";import"../../../chunk-XT75WETI.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-BSPCSC45.js";import{WidthIcon as u,TextLinesIcon as k}from"efficient-shell/icons/efficient";import{jsx as j}from"react/jsx-runtime";var d=t("a value or limit row under the Width and text-fit choices; drawn bare in the approved design (owner 2026-10-29, c25 row 4); no shell glyph names a min, max or fixed width");function a(t={}){const a=i(t.say),T=t.phone??n,x=(t,i)=>r(t,i,T),W=(t,i,n,o,r)=>x(t,a.slider(i,d,n.min,n.max,n.step,o,"px",{clear:r?{hint:o,emptyLabel:r}:{hint:o}}));return{size:{_gBlockSize:o("Size"),...x("widthFit",a.segmented("Width",/* @__PURE__ */j(u,{}),[...e],s)),...W("width","Fixed width",m,m.fallback),...W("minWidth","Min width",h,h.min,"None"),...W("maxWidth","Content width",h,h.min,"None")},text:t.textFit?{_gText:o("Text"),...x("textFit",a.segmented("When the text does not fit",/* @__PURE__ */j(k,{}),[...p],t.textFit)),...W("minFont","Min font size",c,c.fallback)}:{}}}export{a as blockSizeFieldSet};
1
+ import{noGlyph as t,boxFieldBuilders as i,PHONE_KEY_ACCESS as n,group as o,phoneTwinFields as r}from"../../../chunk-SR2535CN.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-6WY6ZXJG.js";import{BLOCK_WIDTH_LIMIT as h,BLOCK_FIXED_WIDTH as m,BLOCK_WIDTH_FIT_POINTS as e,BLOCK_WIDTH_FIT_DEFAULT as s,TEXT_FIT_MIN_FONT as c,TEXT_FIT_POINTS as p}from"../../../chunk-XH4BP64C.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-HGTDDSFJ.js";import"../../../chunk-LK56FUFT.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-BSPCSC45.js";import{WidthIcon as u,TextLinesIcon as k}from"efficient-shell/icons/efficient";import{jsx as j}from"react/jsx-runtime";var d=t("a value or limit row under the Width and text-fit choices; drawn bare in the approved design (owner 2026-10-29, c25 row 4); no shell glyph names a min, max or fixed width");function a(t={}){const a=i(t.say),T=t.phone??n,F=(t,i)=>r(t,i,T),x=(t,i,n,o,r)=>F(t,a.slider(i,d,n.min,n.max,n.step,o,"px",{clear:r?{hint:o,emptyLabel:r}:{hint:o}}));return{size:{_gBlockSize:o("Size"),...F("widthFit",a.segmented("Width",/* @__PURE__ */j(u,{}),[...e],s)),...x("width","Fixed width",m,m.fallback),...x("minWidth","Min width",h,h.min,"None"),...x("maxWidth","Content width",h,h.min,"None")},text:t.textFit?{_gText:o("Text"),...F("textFit",a.segmented("When the text does not fit",/* @__PURE__ */j(k,{}),[...p],t.textFit)),...x("minFont","Min font size",c,c.fallback)}:{}}}export{a as blockSizeFieldSet};
@@ -3,7 +3,7 @@ import { ReactElement, ReactNode } from 'react';
3
3
  import { ShowWhenRule } from 'efficient-shell/format';
4
4
  import { TextAlign, PositionValue, SidesValue } from 'efficient-shell/ui';
5
5
  import { S as SettingsDefaultResetProps } from '../../../types-BYxYJQMa.js';
6
- export { F as FIELD_DESCRIPTION_MARKER, o as describedAs } from '../../../ScreenDocumentContext-DPW_6gOC.js';
6
+ export { F as FIELD_DESCRIPTION_MARKER, o as describedAs } from '../../../ScreenDocumentContext-JQr4hTeP.js';
7
7
  import '../../../wordFit-7XpmhcaW.js';
8
8
  import '../../../words-BgeDGDKn.js';
9
9
  import '../../../buckets-BYQBBVgO.js';
@@ -1 +1 @@
1
- export{ANCHOR_LABELS,AlignmentStrip,BOX_ALIGN_POINTS,BOX_DIRECTIONS,BOX_DIRECTION_LABEL,BOX_GAP,BOX_JUSTIFY_POINTS,BOX_NUDGE_LIMIT,BOX_PLACEMENTS,BOX_PLACEMENT_DEFAULT,BOX_WIDTH,BOX_WRAP_LABEL,BOX_WRAP_POINTS,BlockAlignmentStrip,FLAT_ACCESS,OPEN_PLACEMENT_POINTS,PHONE_KEY_ACCESS,PlacementGridView,SIDE_PAD_KEYS,Segmented,SliderControl,VIEW_KEY_ACCESS,alignmentField,alignmentFields,blockAlignmentField,blockAlignmentFields,boxAlignField,boxFieldBuilders,boxFieldSet,boxJustifyField,boxWrapField,directionField,gapField,group,iconOf,isNoGlyph,noGlyph,normaliseBoxPlacement,objectAccess,onDesktopWords,phoneObjectAccess,phoneTwinFields,placementField,positionFields,positionPatch,section,segmented,select,sharedStyleKinds,sidesFromObject,sidesPaddingFields,sidesPaddingPatch,sidesToObject,slider,useAccessPatch,useAccessValue}from"../../../chunk-WL57KM5C.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";export{FIELD_DESCRIPTION_MARKER,describedAs}from"../../../chunk-LX23TCTP.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-6WY6ZXJG.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-L36E2WCO.js";import"../../../chunk-XT75WETI.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-BSPCSC45.js";
1
+ export{ANCHOR_LABELS,AlignmentStrip,BOX_ALIGN_POINTS,BOX_DIRECTIONS,BOX_DIRECTION_LABEL,BOX_GAP,BOX_JUSTIFY_POINTS,BOX_NUDGE_LIMIT,BOX_PLACEMENTS,BOX_PLACEMENT_DEFAULT,BOX_WIDTH,BOX_WRAP_LABEL,BOX_WRAP_POINTS,BlockAlignmentStrip,FLAT_ACCESS,OPEN_PLACEMENT_POINTS,PHONE_KEY_ACCESS,PlacementGridView,SIDE_PAD_KEYS,Segmented,SliderControl,VIEW_KEY_ACCESS,alignmentField,alignmentFields,blockAlignmentField,blockAlignmentFields,boxAlignField,boxFieldBuilders,boxFieldSet,boxJustifyField,boxWrapField,directionField,gapField,group,iconOf,isNoGlyph,noGlyph,normaliseBoxPlacement,objectAccess,onDesktopWords,phoneObjectAccess,phoneTwinFields,placementField,positionFields,positionPatch,section,segmented,select,sharedStyleKinds,sidesFromObject,sidesPaddingFields,sidesPaddingPatch,sidesToObject,slider,useAccessPatch,useAccessValue}from"../../../chunk-SR2535CN.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";export{FIELD_DESCRIPTION_MARKER,describedAs}from"../../../chunk-LX23TCTP.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-6WY6ZXJG.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-HGTDDSFJ.js";import"../../../chunk-LK56FUFT.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-BSPCSC45.js";
@@ -8,7 +8,7 @@ import '../../../types-BYxYJQMa.js';
8
8
  import '../../../wordFit-7XpmhcaW.js';
9
9
  import '../../../words-BgeDGDKn.js';
10
10
  import '../../../buckets-BYQBBVgO.js';
11
- import '../../../ScreenDocumentContext-DPW_6gOC.js';
11
+ import '../../../ScreenDocumentContext-JQr4hTeP.js';
12
12
  import '../../../blocks/index.js';
13
13
  import '../../../types-BljCVdzR.js';
14
14
  import '../../../data/index.js';
@@ -1 +1 @@
1
- export{buttonFieldSet}from"../../../chunk-LAJYMOY3.js";import"../../../chunk-XESNAMI3.js";import"../../../chunk-WL57KM5C.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-6WY6ZXJG.js";export{BUTTON_PAD_KEYS,BUTTON_STYLE_KEYS}from"../../../chunk-PLTTPHK5.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-L36E2WCO.js";import"../../../chunk-XT75WETI.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-BSPCSC45.js";
1
+ export{buttonFieldSet}from"../../../chunk-I4Z75MCX.js";import"../../../chunk-MMHYTIUY.js";import"../../../chunk-SR2535CN.js";import"../../../chunk-XWTQTANN.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-ZNLODQD4.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-3OOYGEJY.js";import"../../../chunk-G2VZ4DET.js";import"../../../chunk-6WY6ZXJG.js";export{BUTTON_PAD_KEYS,BUTTON_STYLE_KEYS}from"../../../chunk-PLTTPHK5.js";import"../../../chunk-ANPOR6EY.js";import"../../../chunk-HGTDDSFJ.js";import"../../../chunk-LK56FUFT.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-D4TH4QQR.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-C63IB4VW.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-UMTUKSE6.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-BSPCSC45.js";
@@ -7,7 +7,7 @@ import '../../../types-BYxYJQMa.js';
7
7
  import '../../../wordFit-7XpmhcaW.js';
8
8
  import '../../../words-BgeDGDKn.js';
9
9
  import '../../../buckets-BYQBBVgO.js';
10
- import '../../../ScreenDocumentContext-DPW_6gOC.js';
10
+ import '../../../ScreenDocumentContext-JQr4hTeP.js';
11
11
  import '../../../blocks/index.js';
12
12
  import '../../../types-BljCVdzR.js';
13
13
  import '../../../data/index.js';
@@ -1,5 +1,5 @@
1
- import{SettingsDefaultReset as e}from"../../../chunk-2T22IY3J.js";import{ScreenDocumentContext as n}from"../../../chunk-OB4KI2AN.js";import"../../../chunk-JUJEVGLY.js";import"../../../chunk-ERR437B5.js";import{requestMediaPick as o}from"../../../chunk-5HYVOOH3.js";import"../../../chunk-A5USZ6Z6.js";import"../../../chunk-RLBXE4EU.js";import"../../../chunk-6V6LC7QV.js";import"../../../chunk-7YXWWMBM.js";import"../../../chunk-NQW6XCAY.js";import"../../../chunk-LOMEH6DG.js";import"../../../chunk-KCOBHPN6.js";import"../../../chunk-NCXYC7WI.js";import"../../../chunk-YM4UEGBV.js";import"../../../chunk-SNF5764Q.js";import{useEaselHost as t}from"../../../chunk-LX23TCTP.js";import{DEFAULT_IMAGE_ROW_WORDS as r}from"../../../chunk-G2VZ4DET.js";import{MEDIA_FIELD_MARKER as i}from"../../../chunk-ANPOR6EY.js";import{useSelectedHost as c}from"../../../chunk-L36E2WCO.js";import"../../../chunk-XT75WETI.js";import"../../../chunk-TBY3DFKS.js";import{DEFAULT_PANEL_WORDS as s}from"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-NDRZP6YR.js";import"../../../chunk-H6DDIBQ4.js";import"../../../chunk-G7J6SGMF.js";import"../../../chunk-RE4LP46F.js";import{phoneKey as a}from"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import{SettingsField as m}from"../../../chunk-MIX7EGRG.js";import{useWords as l}from"../../../chunk-MFIRYGHW.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import{usePreviewDevice as u}from"../../../chunk-BSPCSC45.js";import{useContext as p,useState as h}from"react";import{FOCAL_DEFAULT as f}from"efficient-shell/format";import{MediaUploadField as k,Button as d,Input as j}from"efficient-shell/ui";import{jsx as g,jsxs as v}from"react/jsx-runtime";function C(e){return"string"==typeof e?e:e&&"object"==typeof e&&"string"==typeof e.src?e.src:""}function y({src:e,onChange:n,tidy:o,name:t}){const[r,i]=h(null),c=!r||e!==r.text&&e!==r.from?e:r.text;/* @__PURE__ */
2
- return g(j,{size:"md",type:"url",inputMode:"url",autoComplete:"off",spellCheck:!1,value:c,placeholder:"https://…","aria-label":t,onChange:o=>{const t=o.target.value;i(n=>({text:t,from:!n||e!==n.text&&e!==n.from?e:n.from})),n(t)},onBlur:e=>{const t=e.target.value,r=o?o(t):t;r!==t&&n(r),i(null)},onKeyDown:e=>{"Enter"===e.key&&e.currentTarget.blur()}})}function E({label:i,icon:j,hint:E,value:R,onChange:O,name:b,readOnly:B,canPick:M=!0,kind:Y="image",accept:D,acceptHint:N,pickOptions:F,maxSizeBytes:L,height:S,placeholder:T,removeLabel:G,paste:K,focusKey:P,focusWhen:X,frameKey:I,note:W}){const w=l("imageRow",r),H=l("panel",s),x=t(),V=c(),U=p(n),Z="video"===Y,A=function(e,n){const o=c(),t="mobile"===u();if(!e||!o)return null;const r=o.values??{};if(n&&!n(r))return null;const i="string"==typeof r[e]&&r[e]?String(r[e]):f,s=a(e),m="string"==typeof r[s]&&r[s]?String(r[s]):void 0;return{phone:t,desktop:i,own:m,focus:t?m??i:i,set:n=>o.onChange(t?s:e,n),clear:()=>o.onChange(s,void 0)}}(Z?void 0:P,X),[Q,J]=h(!1),z=!0===B||!0===V?.readOnly,q=M&&!z;if(U&&!U.capabilities.mediaEditing)/* @__PURE__ */
3
- return g(m,{label:i,icon:j,hint:E,children:/* @__PURE__ */g("div",{className:"es-image-row-note",children:Z?w.templateVideo:w.template})});const $=I&&b?{video:b,frame:I}:null,_=$?e=>e?O(e):V?.onChangeMany({[$.video]:"",[$.frame]:""}):O,ee=$?e=>V?.onChangeMany({[$.video]:e,[$.frame]:""}):O,ne=C(R),oe=A?.phone&&ne?/* @__PURE__ */g(e,{words:H,label:w.focus,changed:Boolean(A.own),detail:w.onDesktop(A.desktop),onReset:A.clear,disabled:z}):void 0,te=K&&!z&&(K.open||Q);/* @__PURE__ */
1
+ import{SettingsDefaultReset as e}from"../../../chunk-2T22IY3J.js";import{ScreenDocumentContext as n}from"../../../chunk-OB4KI2AN.js";import"../../../chunk-JUJEVGLY.js";import"../../../chunk-ERR437B5.js";import{requestMediaPick as o}from"../../../chunk-5HYVOOH3.js";import"../../../chunk-A5USZ6Z6.js";import"../../../chunk-RLBXE4EU.js";import"../../../chunk-6V6LC7QV.js";import"../../../chunk-7YXWWMBM.js";import"../../../chunk-NQW6XCAY.js";import"../../../chunk-LOMEH6DG.js";import"../../../chunk-KCOBHPN6.js";import"../../../chunk-NCXYC7WI.js";import"../../../chunk-YM4UEGBV.js";import"../../../chunk-SNF5764Q.js";import{useEaselHost as t}from"../../../chunk-LX23TCTP.js";import{DEFAULT_IMAGE_ROW_WORDS as r}from"../../../chunk-G2VZ4DET.js";import{MEDIA_FIELD_MARKER as i}from"../../../chunk-ANPOR6EY.js";import{useSelectedHost as c}from"../../../chunk-HGTDDSFJ.js";import"../../../chunk-LK56FUFT.js";import"../../../chunk-TBY3DFKS.js";import{DEFAULT_PANEL_WORDS as s}from"../../../chunk-56ID6FKZ.js";import"../../../chunk-LDHUPZBK.js";import"../../../chunk-TF6NAIV7.js";import"../../../chunk-NDRZP6YR.js";import"../../../chunk-H6DDIBQ4.js";import"../../../chunk-G7J6SGMF.js";import"../../../chunk-RE4LP46F.js";import{phoneKey as a}from"../../../chunk-DIOTWSCO.js";import"../../../chunk-MNQDOSAX.js";import"../../../chunk-PMRN5Z3T.js";import{SettingsField as m}from"../../../chunk-MIX7EGRG.js";import{useWords as l}from"../../../chunk-MFIRYGHW.js";import"../../../chunk-6GJEOER4.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-YDTEYXQW.js";import"../../../chunk-KXM6YRG2.js";import{usePreviewDevice as u}from"../../../chunk-BSPCSC45.js";import{useContext as p,useState as h}from"react";import{FOCAL_DEFAULT as f}from"efficient-shell/format";import{MediaUploadField as k,Button as d,Input as j}from"efficient-shell/ui";import{jsx as g,jsxs as v}from"react/jsx-runtime";function C(e){return"string"==typeof e?e:e&&"object"==typeof e&&"string"==typeof e.src?e.src:""}function y({src:e,onChange:n,tidy:o,name:t}){const[r,i]=h(null),c=!r||e!==r.text&&e!==r.from?e:r.text;/* @__PURE__ */
2
+ return g(j,{size:"md",type:"url",inputMode:"url",autoComplete:"off",spellCheck:!1,value:c,placeholder:"https://…","aria-label":t,onChange:o=>{const t=o.target.value;i(n=>({text:t,from:!n||e!==n.text&&e!==n.from?e:n.from})),n(t)},onBlur:e=>{const t=e.target.value,r=o?o(t):t;r!==t&&n(r),i(null)},onKeyDown:e=>{"Enter"===e.key&&e.currentTarget.blur()}})}function E({label:i,icon:j,hint:E,value:R,onChange:b,name:D,readOnly:F,canPick:O=!0,kind:B="image",accept:M,acceptHint:Y,pickOptions:N,maxSizeBytes:S,height:G,placeholder:K,removeLabel:L,paste:T,focusKey:P,focusWhen:H,frameKey:X,note:w}){const I=l("imageRow",r),x=l("panel",s),U=t(),V=c(),W=p(n),Z="video"===B,A=function(e,n){const o=c(),t="mobile"===u();if(!e||!o)return null;const r=o.values??{};if(n&&!n(r))return null;const i="string"==typeof r[e]&&r[e]?String(r[e]):f,s=a(e),m="string"==typeof r[s]&&r[s]?String(r[s]):void 0;return{phone:t,desktop:i,own:m,focus:t?m??i:i,set:n=>o.onChange(t?s:e,n),clear:()=>o.onChange(s,void 0)}}(Z?void 0:P,H),[J,Q]=h(!1),z=!0===F||!0===V?.readOnly,q=O&&!z;if(W&&!W.capabilities.mediaEditing)/* @__PURE__ */
3
+ return g(m,{label:i,icon:j,hint:E,children:/* @__PURE__ */g("div",{className:"es-image-row-note",children:Z?I.templateVideo:I.template})});const $=X&&D?{video:D,frame:X}:null,_=$?e=>e?b(e):V?.onChangeMany({[$.video]:"",[$.frame]:""}):b,ee=$?e=>V?.onChangeMany({[$.video]:e,[$.frame]:""}):b,ne=C(R),oe=A?.phone&&ne?/* @__PURE__ */g(e,{words:x,label:I.focus,changed:Boolean(A.own),detail:I.onDesktop(A.desktop),onReset:A.clear,disabled:z}):void 0,te=T&&!z&&(T.open||J);/* @__PURE__ */
4
4
  return g(m,{label:i,icon:j,hint:E,action:oe,children:/* @__PURE__ */v("div",{className:"es-image-row",children:[
5
- /* @__PURE__ */g(k,{value:ne,onChange:_,onPick:e=>{if(q)return $&&!V?Promise.resolve(null):o(x,{accept:D??(Z?"video/*":"image/*"),title:i,...e?{file:e}:{},...F?{options:F}:{}}).then(e=>e&&$?(V?.onChangeMany({[$.video]:e.url,[$.frame]:e.posterUrl??""}),null):e?.url??null)},accept:D??(Z?"video/*":"image/*"),acceptHint:N,kind:Y,maxSizeBytes:L,height:S,placeholder:T,removeLabel:G,allowReplace:q,allowRemove:!z,disabled:z||!q&&!ne,focusLabel:w.focus,...A&&!z?{focus:A.focus,onFocusChange:A.set}:A?{focus:A.focus}:{}}),W?.(ne),K&&!z?te?/* @__PURE__ */g(y,{src:ne,onChange:ee,tidy:K.tidy,name:w.pasteName}):/* @__PURE__ */g(d,{variant:"link",size:"sm",onClick:()=>J(!0),children:w.pasteLink}):null]})})}function R(e,n,o={}){return{type:"custom",[i]:!0,render:t=>/* @__PURE__ */g(E,{...o,label:e,icon:n,value:t.value,onChange:e=>t.onChange(e),name:t.name,readOnly:t.readOnly})}}export{E as ImageRow,R as imageField,C as imageValueSrc};
5
+ /* @__PURE__ */g(k,{value:ne,onChange:_,onPick:e=>{if(q)return $&&!V?Promise.resolve(null):o(U,{accept:M??(Z?"video/*":"image/*"),title:i,...e?{file:e}:{},...N?{options:N}:{}}).then(e=>e&&$?(V?.onChangeMany({[$.video]:e.url,[$.frame]:e.posterUrl??""}),null):e?.url??null)},accept:M??(Z?"video/*":"image/*"),acceptHint:Y,kind:B,maxSizeBytes:S,height:G,placeholder:K,removeLabel:L,allowReplace:q,allowRemove:!z,disabled:z||!q&&!ne,focusLabel:I.focus,...A&&!z?{focus:A.focus,onFocusChange:A.set}:A?{focus:A.focus}:{}}),w?.(ne),T&&!z?te?/* @__PURE__ */g(y,{src:ne,onChange:ee,tidy:T.tidy,name:I.pasteName}):/* @__PURE__ */g(d,{variant:"link",size:"sm",onClick:()=>Q(!0),children:I.pasteLink}):null]})})}function R(e,n,o={}){return{type:"custom",[i]:!0,render:t=>/* @__PURE__ */g(E,{...o,label:e,icon:n,value:t.value,onChange:e=>t.onChange(e),name:t.name,readOnly:t.readOnly})}}export{E as ImageRow,R as imageField,C as imageValueSrc};
@@ -0,0 +1,58 @@
1
+ import { N as NodeDefaults, ar as SlotSectionSpec, E as ScreenNodeMaker, y as ScreenNewNode } from '../../../AddSidePanel-DoCx-ZrM.js';
2
+ import 'react';
3
+ import '../../../CanvasDragLayer-DXeQGrwJ.js';
4
+ import '../../../watch-Unf6SfUf.js';
5
+ import '../../../types-Dq180WRV.js';
6
+ import '../../../words-SD4neL0n.js';
7
+ import '../section-template-types.js';
8
+ import './content-tree.js';
9
+ import '../shared-section-types.js';
10
+ import './block-choice.js';
11
+ import '../../../blocks/index.js';
12
+ import '../../../types-BljCVdzR.js';
13
+ import '../../../data/index.js';
14
+ import '../../../phone-order-CRKvsTsz.js';
15
+ import '../../../plan-D0DgSLnY.js';
16
+ import '../../../types-SrGNzYeO.js';
17
+ import '../../../types-Cy7rdmXt.js';
18
+ import '../../../wordFit-7XpmhcaW.js';
19
+ import '../../../edit-lock/index.js';
20
+ import '../../../panelWidths-DgQXiPXU.js';
21
+ import '../../../copy-place-CQIemdtU.js';
22
+ import '../../../types-BbOBWXMP.js';
23
+ import '../../../style-clipboard/index.js';
24
+ import '../../../words-CnnHb9jo.js';
25
+ import '../../../types-CoUTWUwB.js';
26
+ import 'efficient-shell/ui';
27
+ import '../../../words-Cl9xMUYY.js';
28
+ import '../../../ScreenDocumentContext-JQr4hTeP.js';
29
+ import '../document-contract.js';
30
+ import '../document-switch.js';
31
+ import '../../../engine-CvXpFE86.js';
32
+ import '../admin-bridge.js';
33
+ import '../session.js';
34
+ import '../backend-error.js';
35
+ import '../host-chrome.js';
36
+ import '../links/link-filters.js';
37
+ import '../document-hooks.js';
38
+
39
+ /**
40
+ * A type's own default props, looked up in the config the screen holds — the
41
+ * `nodeDefaults` a `ScreenNodeMaker` lends. The data layer's one lookup
42
+ * (`blockOf` + `defaultsFrom`); `{}` for a type the config does not hold.
43
+ */
44
+ declare function configNodeDefaults(config: unknown): NodeDefaults;
45
+ /**
46
+ * The prepared node one Add of `childType` into a slot lays down, or null when
47
+ * the slot's spec has none (`SlotSectionSpec.newChild`) or the choice is not
48
+ * the spec's own child type: the caller then inserts the type, as before.
49
+ */
50
+ declare function newChildOf(spec: SlotSectionSpec | null | undefined, childType: string, make: ScreenNodeMaker): ScreenNewNode | null;
51
+ /**
52
+ * What the Add panel's tile for `childType` is called at a place in a slot
53
+ * whose spec prepares its child: the spec's `childLabel`. Null for every other
54
+ * slot and choice, and when the spec names none: those keep the type's word.
55
+ */
56
+ declare function newChildName(spec: SlotSectionSpec | null | undefined, childType: string): string | null;
57
+
58
+ export { configNodeDefaults, newChildName, newChildOf };
@@ -0,0 +1 @@
1
+ export{configNodeDefaults,newChildName,newChildOf}from"../../../chunk-64NREOML.js";import"../../../chunk-KXM6YRG2.js";