efficient-easel 21.1.0 → 22.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 (165) hide show
  1. package/README.md +27 -34
  2. package/dist/{CanvasDragLayer-CFUcBbgc.d.ts → CanvasDragLayer-B6Yn9S8T.d.ts} +4 -4
  3. package/dist/{ScreenDocumentContext-1RgtGKWR.d.ts → ScreenDocumentContext-BIK3uWtF.d.ts} +4 -4
  4. package/dist/blocks/index.d.ts +16 -18
  5. package/dist/{buckets-Sw94ll9I.d.ts → buckets-_MGDYJlb.d.ts} +1 -1
  6. package/dist/canvas/index.d.ts +8 -10
  7. package/dist/canvas/index.js +1 -1
  8. package/dist/{chunk-2L6KWUBC.js → chunk-4LGROS5L.js} +1 -1
  9. package/dist/{chunk-WJJ7H42G.js → chunk-CUZQ2HMA.js} +15 -15
  10. package/dist/chunk-GHBK7BKL.js +1 -0
  11. package/dist/{chunk-MLQKNED6.js → chunk-IROEWITG.js} +1 -1
  12. package/dist/{chunk-YVFYWAYU.js → chunk-IYYE7VJN.js} +30 -30
  13. package/dist/chunk-KN2TIXUT.js +1 -0
  14. package/dist/{chunk-GWYNMSIP.js → chunk-RY5AWQ63.js} +1 -1
  15. package/dist/chunk-SJMS247S.js +5 -0
  16. package/dist/{chunk-DNQ7AF6K.js → chunk-TLN5ZT76.js} +1 -1
  17. package/dist/chunk-TXR7GC5A.js +8 -0
  18. package/dist/{chunk-U5DNBT63.js → chunk-UMBNBCL4.js} +1 -1
  19. package/dist/{chunk-TUXLORVR.js → chunk-WJSEWAWK.js} +13 -13
  20. package/dist/{chunk-I67UW5UG.js → chunk-XWKQP6AE.js} +1 -1
  21. package/dist/{chunk-U7TFWHST.js → chunk-YC6KLSW3.js} +1 -1
  22. package/dist/{chunk-PFFH7ASD.js → chunk-YHFKWV7H.js} +13 -13
  23. package/dist/copy/index.d.ts +2 -2
  24. package/dist/copy/index.js +11 -11
  25. package/dist/data/index.d.ts +21 -21
  26. package/dist/drag/index.d.ts +5 -5
  27. package/dist/drag/index.js +1 -1
  28. package/dist/draw/index.d.ts +1 -1
  29. package/dist/easel/easel.css +5 -7
  30. package/dist/easel/index.d.ts +57 -57
  31. package/dist/easel/index.js +1 -1
  32. package/dist/edit-lock/index.d.ts +5 -5
  33. package/dist/fields/fields.css +1 -1
  34. package/dist/fields/index.d.ts +17 -17
  35. package/dist/fields/index.js +1 -1
  36. package/dist/node-ops/index.d.ts +3 -3
  37. package/dist/panel/index.d.ts +4 -4
  38. package/dist/panel/panel.css +1 -1
  39. package/dist/{plan-CZS902DV.d.ts → plan-CRUh2kVK.d.ts} +5 -5
  40. package/dist/render/index.d.ts +19 -19
  41. package/dist/render/index.js +5 -5
  42. package/dist/{repeat-BNgSq2Nw.d.ts → repeat-D65bJS8d.d.ts} +1 -1
  43. package/dist/{resolve-D68pb3Bx.d.ts → resolve-AJ6WF4EL.d.ts} +5 -5
  44. package/dist/screen/components/AddBlockRow.js +1 -1
  45. package/dist/screen/components/AddSidePanel.d.ts +2 -2
  46. package/dist/screen/components/AddSidePanel.js +1 -1
  47. package/dist/screen/components/NodeContextMenu.d.ts +11 -11
  48. package/dist/screen/components/NodeContextMenu.js +1 -1
  49. package/dist/screen/components/PreviewDeviceContext.d.ts +1 -1
  50. package/dist/screen/components/PreviewPartsContext.d.ts +2 -2
  51. package/dist/screen/components/SaveControls.d.ts +8 -8
  52. package/dist/screen/components/ScreenChrome.js +1 -1
  53. package/dist/screen/components/ScreenDocumentContext.d.ts +5 -5
  54. package/dist/screen/components/ScreenMount.d.ts +8 -8
  55. package/dist/screen/components/ScreenMount.js +1 -1
  56. package/dist/screen/components/ScreenStoreProvider.d.ts +12 -12
  57. package/dist/screen/components/ScreenStoreProvider.js +1 -1
  58. package/dist/screen/components/SectionScreenShell.js +17 -17
  59. package/dist/screen/components/usePartBridge.d.ts +10 -10
  60. package/dist/screen/components/usePartBridge.js +1 -1
  61. package/dist/screen/index.d.ts +8 -8
  62. package/dist/screen/index.js +1 -1
  63. package/dist/screen/lib/admin-bridge.d.ts +4 -4
  64. package/dist/screen/lib/document/add-target-types.js +0 -1
  65. package/dist/screen/lib/document/content-tree.d.ts +7 -7
  66. package/dist/screen/lib/document/device-fields.d.ts +7 -7
  67. package/dist/screen/lib/document/field-buckets.d.ts +1 -1
  68. package/dist/screen/lib/document/field-markers.d.ts +5 -5
  69. package/dist/screen/lib/document/palette-sections.d.ts +5 -5
  70. package/dist/screen/lib/document/panel-fields.d.ts +6 -6
  71. package/dist/screen/lib/document/panel-no-control-mark.d.ts +4 -5
  72. package/dist/screen/lib/document/part-id.d.ts +1 -1
  73. package/dist/screen/lib/document/preview-events.d.ts +2 -2
  74. package/dist/screen/lib/document/preview-selection-context.d.ts +2 -2
  75. package/dist/screen/lib/document/section-doc.d.ts +5 -5
  76. package/dist/screen/lib/document/slot-child-name.d.ts +1 -1
  77. package/dist/screen/lib/document/slot-section-spec.d.ts +1 -1
  78. package/dist/screen/lib/document/slot-section-spec.js +0 -1
  79. package/dist/screen/lib/document/style-clipboard.d.ts +8 -8
  80. package/dist/screen/lib/document/tree-reveal.d.ts +6 -6
  81. package/dist/screen/lib/document/tree-reveal.js +1 -1
  82. package/dist/screen/lib/document/use-section-ops.d.ts +6 -6
  83. package/dist/screen/lib/document/use-section-ops.js +1 -1
  84. package/dist/screen/lib/document-addressing.d.ts +5 -5
  85. package/dist/screen/lib/document-hooks.d.ts +4 -4
  86. package/dist/screen/lib/host.d.ts +5 -5
  87. package/dist/screen/lib/key-scope.d.ts +1 -1
  88. package/dist/screen/lib/key-scope.js +1 -1
  89. package/dist/screen/lib/media-panel.d.ts +5 -5
  90. package/dist/screen/lib/media-picker.d.ts +6 -6
  91. package/dist/screen/lib/page-lock.d.ts +4 -4
  92. package/dist/screen/lib/screen-parts.d.ts +13 -16
  93. package/dist/screen/lib/screen-parts.js +1 -1
  94. package/dist/screen/lib/section-templates.d.ts +4 -4
  95. package/dist/screen/lib/session-context.d.ts +4 -4
  96. package/dist/screen/lib/session.d.ts +5 -5
  97. package/dist/screen/lib/shared-sections.d.ts +4 -4
  98. package/dist/screen/screen.css +15 -15
  99. package/dist/{session-DSQFmIvx.d.ts → session-CrWwDt7Z.d.ts} +1 -1
  100. package/dist/strings/index.d.ts +2 -2
  101. package/dist/strings/index.js +1 -1
  102. package/dist/style-clipboard/index.d.ts +2 -2
  103. package/dist/text-styles/index.js +21 -21
  104. package/dist/{types-B8NwXKlE.d.ts → types-BFd8FqQw.d.ts} +3 -3
  105. package/dist/{types-Cq53lL8d.d.ts → types-DFxBChE3.d.ts} +18 -18
  106. package/dist/{types-41704JE4.d.ts → types-DlQIM1YO.d.ts} +8 -8
  107. package/dist/{useNodeOps-fIDWzftn.d.ts → useNodeOps-C_nisDHh.d.ts} +2 -2
  108. package/dist/{watch-D8xZow3y.d.ts → watch-D0bNZRtU.d.ts} +3 -3
  109. package/dist/{words-CmEnDoOe.d.ts → words-fbR9IwxH.d.ts} +1 -1
  110. package/package.json +3 -147
  111. package/dist/chunk-2C7W64S5.js +0 -8
  112. package/dist/chunk-4FD7TAOE.js +0 -1
  113. package/dist/chunk-67HCYOW4.js +0 -1
  114. package/dist/chunk-A2VVB4RH.js +0 -0
  115. package/dist/chunk-OHZHYROJ.js +0 -5
  116. package/dist/chunk-PRHBWA5V.js +0 -0
  117. package/dist/chunk-YIUE4US7.js +0 -0
  118. package/dist/screen/lib/puck/add-target-types.d.ts +0 -3
  119. package/dist/screen/lib/puck/add-target-types.js +0 -1
  120. package/dist/screen/lib/puck/block-choice.d.ts +0 -1
  121. package/dist/screen/lib/puck/block-choice.js +0 -1
  122. package/dist/screen/lib/puck/block-types-in.d.ts +0 -1
  123. package/dist/screen/lib/puck/block-types-in.js +0 -1
  124. package/dist/screen/lib/puck/content-tree.d.ts +0 -1
  125. package/dist/screen/lib/puck/content-tree.js +0 -1
  126. package/dist/screen/lib/puck/device-fields.d.ts +0 -4
  127. package/dist/screen/lib/puck/device-fields.js +0 -1
  128. package/dist/screen/lib/puck/field-buckets.d.ts +0 -2
  129. package/dist/screen/lib/puck/field-buckets.js +0 -1
  130. package/dist/screen/lib/puck/field-markers.d.ts +0 -2
  131. package/dist/screen/lib/puck/field-markers.js +0 -1
  132. package/dist/screen/lib/puck/hidable.d.ts +0 -1
  133. package/dist/screen/lib/puck/hidable.js +0 -1
  134. package/dist/screen/lib/puck/palette-sections.d.ts +0 -8
  135. package/dist/screen/lib/puck/palette-sections.js +0 -1
  136. package/dist/screen/lib/puck/panel-fields.d.ts +0 -1
  137. package/dist/screen/lib/puck/panel-fields.js +0 -1
  138. package/dist/screen/lib/puck/panel-no-control-mark.d.ts +0 -2
  139. package/dist/screen/lib/puck/panel-no-control-mark.js +0 -1
  140. package/dist/screen/lib/puck/part-id.d.ts +0 -1
  141. package/dist/screen/lib/puck/part-id.js +0 -1
  142. package/dist/screen/lib/puck/preview-click.d.ts +0 -1
  143. package/dist/screen/lib/puck/preview-click.js +0 -1
  144. package/dist/screen/lib/puck/preview-dom.d.ts +0 -1
  145. package/dist/screen/lib/puck/preview-dom.js +0 -1
  146. package/dist/screen/lib/puck/preview-events.d.ts +0 -1
  147. package/dist/screen/lib/puck/preview-events.js +0 -1
  148. package/dist/screen/lib/puck/preview-selection-context.d.ts +0 -2
  149. package/dist/screen/lib/puck/preview-selection-context.js +0 -1
  150. package/dist/screen/lib/puck/section-doc.d.ts +0 -9
  151. package/dist/screen/lib/puck/section-doc.js +0 -1
  152. package/dist/screen/lib/puck/slot-child-name.d.ts +0 -1
  153. package/dist/screen/lib/puck/slot-child-name.js +0 -1
  154. package/dist/screen/lib/puck/slot-heal.d.ts +0 -2
  155. package/dist/screen/lib/puck/slot-heal.js +0 -1
  156. package/dist/screen/lib/puck/slot-section-spec.d.ts +0 -1
  157. package/dist/screen/lib/puck/slot-section-spec.js +0 -1
  158. package/dist/screen/lib/puck/style-clipboard.d.ts +0 -42
  159. package/dist/screen/lib/puck/style-clipboard.js +0 -1
  160. package/dist/screen/lib/puck/text-control-kinds.d.ts +0 -1
  161. package/dist/screen/lib/puck/text-control-kinds.js +0 -1
  162. package/dist/screen/lib/puck/tree-reveal.d.ts +0 -1
  163. package/dist/screen/lib/puck/tree-reveal.js +0 -1
  164. package/dist/screen/lib/puck/use-section-ops.d.ts +0 -9
  165. package/dist/screen/lib/puck/use-section-ops.js +0 -1
@@ -1,15 +1,15 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { S as SettingsBucket } from '../buckets-Sw94ll9I.js';
4
- export { D as DesignGroup } from '../buckets-Sw94ll9I.js';
3
+ import { S as SettingsBucket } from '../buckets-_MGDYJlb.js';
4
+ export { D as DesignGroup } from '../buckets-_MGDYJlb.js';
5
5
  import { ShowWhenContext } from 'efficient-shell/format';
6
6
  export { ShowWhenContext, ShowWhenRule, showWhenOf, withShowWhen } from 'efficient-shell/format';
7
- import { a as InspectorFieldDef, b as FieldRenderer, I as InspectorFields, c as FieldTextProps, d as FieldNumberProps, e as FieldSliderProps, f as FieldSelectManyProps, g as FieldSelectOneProps, F as FieldOption } from '../types-B8NwXKlE.js';
8
- export { A as ArrayFieldDef, C as CustomFieldDef, h as CustomFieldRenderProps, i as FieldSelectProps, N as NumberFieldDef, O as ObjectFieldDef, R as RadioFieldDef, S as SelectFieldDef, j as SlotFieldDef, T as TextFieldDef, k as TextareaFieldDef } from '../types-B8NwXKlE.js';
9
- import { R as ResolvableItem } from '../resolve-D68pb3Bx.js';
7
+ import { a as InspectorFieldDef, b as FieldRenderer, I as InspectorFields, c as FieldTextProps, d as FieldNumberProps, e as FieldSliderProps, f as FieldSelectManyProps, g as FieldSelectOneProps, F as FieldOption } from '../types-BFd8FqQw.js';
8
+ export { A as ArrayFieldDef, C as CustomFieldDef, h as CustomFieldRenderProps, i as FieldSelectProps, N as NumberFieldDef, O as ObjectFieldDef, R as RadioFieldDef, S as SelectFieldDef, j as SlotFieldDef, T as TextFieldDef, k as TextareaFieldDef } from '../types-BFd8FqQw.js';
9
+ import { R as ResolvableItem } from '../resolve-AJ6WF4EL.js';
10
10
  export { F as FieldsWords } from '../words-CFkb8XtN.js';
11
11
  export { LinkFilter, LinkFilterField, LinkKindChoice, LinkOption, LinkOptionGroup, LinkPicker, LinkPickerProps, LinkRules, LinkTarget } from 'efficient-shell/ui';
12
- import '../types-41704JE4.js';
12
+ import '../types-DlQIM1YO.js';
13
13
 
14
14
  /**
15
15
  * A SETTINGS ROW'S SHOW-WHEN, read by the panel (SSOT batch 1, Lewis
@@ -81,12 +81,12 @@ interface InspectorFieldProps {
81
81
  }
82
82
  /** A heading level a settings group may draw at. */
83
83
  type HeadingLevel = 2 | 3 | 4 | 5 | 6;
84
- /** The label a row shows: the field's own, else its key, as Puck did. */
84
+ /** The label a row shows: the field's own, else its key, as the old editor did. */
85
85
  declare const labelOf: (field: InspectorFieldDef, name: string) => string;
86
86
  /**
87
- * ONE FIELD, drawn by its type — what Puck's `AutoField` was (blueprint 4.1).
87
+ * ONE FIELD, drawn by its type — what the old editor's `AutoField` was (blueprint 4.1).
88
88
  *
89
- * custom the field's own render, called with Puck's props plus `context`;
89
+ * custom the field's own render, called with the old editor's props plus `context`;
90
90
  * text, textarea, number, select
91
91
  * a SettingsField row (quiet label, control under it) holding the
92
92
  * shell's own control, never the browser's;
@@ -221,7 +221,7 @@ interface InspectorProps {
221
221
  headingLevel?: HeadingLevel;
222
222
  }
223
223
  /**
224
- * THE SETTINGS PANEL'S BODY (blueprint step 4.1) — what `<Puck.Fields>` was in
224
+ * THE SETTINGS PANEL'S BODY (blueprint step 4.1) — what `the old editor's fields panel` was in
225
225
  * both editors, without the hashed class names both had to hunt.
226
226
  *
227
227
  * - THE TABS ARE THE FIELDS' OWN. Which tab a field opens is said on the field
@@ -238,7 +238,7 @@ interface InspectorProps {
238
238
  * re-bakes its colours from a field on a tab you are not looking at; taking
239
239
  * the row out of the tree would stop that.
240
240
  * - EVERY ROW IS ONE `.es-insp-row` WITH ITS NAME ON IT (`data-field`), a
241
- * public class an app may style, where Puck's wrapper had a hashed one. A row
241
+ * public class an app may style, where the old editor's wrapper had a hashed one. A row
242
242
  * that draws nothing takes no space (`:empty`).
243
243
  * - THE SPACING IS THE PANEL'S (panel.css `--es-rhythm-*`): a row adds none of
244
244
  * its own, so the rhythm is defined once for both editors.
@@ -279,11 +279,11 @@ interface ResolvedFieldsInput {
279
279
  block: FieldsBlock | undefined;
280
280
  /** The node that holds it, or null at the top. */
281
281
  parent?: ResolvableItem | null;
282
- /** What a resolver is told about the editor (Puck's public `{ data, ui }`). */
282
+ /** What a resolver is told about the editor (the old editor's public `{ data, ui }`). */
283
283
  appState?: unknown;
284
284
  }
285
285
  /**
286
- * A NODE'S FIELDS, RESOLVED AS PUCK RESOLVES THEM — `useRegisterFieldsSlice`
286
+ * A NODE'S FIELDS, RESOLVED AS THE OLD EDITOR RESOLVED THEM — `useRegisterFieldsSlice`
287
287
  * in Puck 0.20, which both editors' `resolveFields` were written against.
288
288
  *
289
289
  * - A new selection starts from the block's DECLARED fields (`lastFields` is
@@ -296,7 +296,7 @@ interface ResolvedFieldsInput {
296
296
  * - `loading` turns on only when an answer takes longer than 50 ms.
297
297
  *
298
298
  * `appState` and `parent` are read when a resolution starts, never watched:
299
- * Puck re-resolved on the node's change alone.
299
+ * The old editor re-resolved on the node's change alone.
300
300
  */
301
301
  declare function useResolvedFields({ id, node, block, parent, appState }: ResolvedFieldsInput): {
302
302
  fields: InspectorFields;
@@ -350,9 +350,9 @@ interface ListFieldProps<T> {
350
350
  noun?: string;
351
351
  items: readonly T[];
352
352
  onChange: (next: T[]) => void;
353
- /** A fresh item for "+" (Puck's `defaultItemProps`, copied). */
353
+ /** A fresh item for "+" (the old editor's `defaultItemProps`, copied). */
354
354
  newItem: () => T;
355
- /** The words after an item's name in its row (Puck's `getItemSummary`). */
355
+ /** The words after an item's name in its row (the old editor's `getItemSummary`). */
356
356
  summary?: (item: T, index: number) => ReactNode;
357
357
  /** An item's own name; default "<Noun> <n>". */
358
358
  itemName?: (item: T, index: number) => string;
@@ -401,7 +401,7 @@ declare function moveTo<T>(items: readonly T[], from: number, to: number): T[];
401
401
  declare function removeAt<T>(items: readonly T[], index: number): T[];
402
402
  /**
403
403
  * A copy of an item: a deep copy of plain data, so editing the copy never
404
- * writes through to the original (a list item is JSON — Puck stored it so).
404
+ * writes through to the original (a list item is JSON — the old editor stored it so).
405
405
  */
406
406
  declare function copyItem<T>(item: T): T;
407
407
  declare function ListField<T>({ label, icon, noun: ownNoun, items, onChange, newItem, summary, itemName, thumb, min, max, readOnly, open, onOpen, renderItem, renderRow, canRemove: removable, lockedReason, fixed, removeOnRow, canDuplicate, above, head, }: ListFieldProps<T>): react.JSX.Element;
@@ -1 +1 @@
1
- export{FieldText,Inspector,InspectorField,LinkPicker,ListField,bucketsOf,copyItem,insertAt,labelOf,moveTo,planFields,removeAt}from"../chunk-PFFH7ASD.js";export{fieldIsShown,showWhenOf,shownFields,withShowWhen}from"../chunk-BPXEFVSQ.js";export{FieldSlider}from"../chunk-ZEH6QLBH.js";import"../chunk-FM6JO4WF.js";import"../chunk-KFV7N2DJ.js";import"../chunk-WHS6Y55E.js";import"../chunk-K56YDHYQ.js";export{useResolvedFields}from"../chunk-IWCKVZHS.js";import"../chunk-FIVU2COQ.js";export{FieldNumber}from"../chunk-Y2T3JX7K.js";export{FieldSelect,optionFor}from"../chunk-KFWNGPW3.js";import"../chunk-S3DUFDQ6.js";import"../chunk-JACEEVVF.js";import"../chunk-MFIRYGHW.js";import"../chunk-3S5N4HLJ.js";import"../chunk-P2VEMZH5.js";import"../chunk-K7BTCBWD.js";import"../chunk-L55YIXDC.js";
1
+ export{FieldText,Inspector,InspectorField,LinkPicker,ListField,bucketsOf,copyItem,insertAt,labelOf,moveTo,planFields,removeAt}from"../chunk-YHFKWV7H.js";export{fieldIsShown,showWhenOf,shownFields,withShowWhen}from"../chunk-BPXEFVSQ.js";import"../chunk-WHS6Y55E.js";import"../chunk-K56YDHYQ.js";export{FieldSlider}from"../chunk-ZEH6QLBH.js";export{useResolvedFields}from"../chunk-IWCKVZHS.js";import"../chunk-FIVU2COQ.js";import"../chunk-FM6JO4WF.js";import"../chunk-KFV7N2DJ.js";export{FieldNumber}from"../chunk-Y2T3JX7K.js";export{FieldSelect,optionFor}from"../chunk-KFWNGPW3.js";import"../chunk-JACEEVVF.js";import"../chunk-S3DUFDQ6.js";import"../chunk-MFIRYGHW.js";import"../chunk-3S5N4HLJ.js";import"../chunk-P2VEMZH5.js";import"../chunk-K7BTCBWD.js";import"../chunk-L55YIXDC.js";
@@ -1,9 +1,9 @@
1
- export { A as AfterRemove, I as ItemSelector, N as NodeSelection, P as PassThrough, a as Planned, S as StepBounds, c as canStep, b as clickPick, d as clickPickPart, f as fromItemSelector, n as nextInChain, e as nodeChain, p as parentStep, g as planDuplicate, h as planMove, i as planPaste, j as planRemove, k as planRestore, l as planSetProps, m as planStep, o as planSwap, t as toItemSelector } from '../plan-CZS902DV.js';
2
- export { C as ClipboardEntry, N as NodeClipboard, a as NodeOps, b as NodeOpsHost, c as createNodeClipboard, u as useNodeOps } from '../useNodeOps-fIDWzftn.js';
1
+ export { A as AfterRemove, I as ItemSelector, N as NodeSelection, P as PassThrough, a as Planned, S as StepBounds, c as canStep, b as clickPick, d as clickPickPart, f as fromItemSelector, n as nextInChain, e as nodeChain, p as parentStep, g as planDuplicate, h as planMove, i as planPaste, j as planRemove, k as planRestore, l as planSetProps, m as planStep, o as planSwap, t as toItemSelector } from '../plan-CRUh2kVK.js';
2
+ export { C as ClipboardEntry, N as NodeClipboard, a as NodeOps, b as NodeOpsHost, c as createNodeClipboard, u as useNodeOps } from '../useNodeOps-C_nisDHh.js';
3
3
  import { ReactNode } from 'react';
4
4
  import { E as EaselContextMenuItem } from '../types-BbOBWXMP.js';
5
5
  import { N as NodeMenuWords } from '../words-DMG4dYq2.js';
6
- import '../types-41704JE4.js';
6
+ import '../types-DlQIM1YO.js';
7
7
 
8
8
  /**
9
9
  * nodeMenuItems — the right-click rows for a block, ONE list for both editors.
@@ -1,9 +1,9 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
3
  import { W as WordFit } from '../wordFit-7XpmhcaW.js';
4
- import { P as PanelWords } from '../words-CmEnDoOe.js';
4
+ import { P as PanelWords } from '../words-fbR9IwxH.js';
5
5
  export { BorderInput as SettingsBorder, BorderLineStyle as SettingsBorderLineStyle, BorderInputProps as SettingsBorderProps, BorderValue as SettingsBorderValue, CornerOption as SettingsCornerPoint, CornersInput as SettingsCorners, CornersInputProps as SettingsCornersProps, AlignmentGrid as SettingsPlacement, AlignmentPoint as SettingsPlacementPoint, AlignmentGridProps as SettingsPlacementProps, SidesInput as SettingsSides, SidesEachToggle as SettingsSidesEach, SidesInputProps as SettingsSidesProps, SidesValue as SettingsSidesValue, borderSides, borderStartEach, sidesStartEach } from 'efficient-shell/ui';
6
- export { a as DESIGN_GROUPS, D as DesignGroup, b as SETTINGS_BUCKETS, S as SettingsBucket } from '../buckets-Sw94ll9I.js';
6
+ export { a as DESIGN_GROUPS, D as DesignGroup, b as SETTINGS_BUCKETS, S as SettingsBucket } from '../buckets-_MGDYJlb.js';
7
7
 
8
8
  /**
9
9
  * The settings-panel primitives — the shared grammar BOTH editors' inspector
@@ -98,7 +98,7 @@ type SettingsSegmentedFit = WordFit;
98
98
  * it — which is the one thing card 66303 was not allowed to do.
99
99
  *
100
100
  * `V` UNCONSTRAINED and not `T extends string`, because the shop stores a
101
- * choice as a boolean: `reverse` at `efficient-storefront/lib/puck/config.tsx:6747` is
101
+ * choice as a boolean: `reverse` at the storefront's old block config is
102
102
  * `false` = image left and `true` = image right on every published page across
103
103
  * every tenant. `T extends string` cannot hold it, and giving that row the house
104
104
  * strip by storing "left"/"right" would be a migration of live customer data
@@ -621,7 +621,7 @@ declare function SettingsSegmented<V = string>({ options, value, onChange, ariaL
621
621
  declare function SettingsGroup({ title, open, onToggle, count, level, id, children, className, }: SettingsGroupProps): react.JSX.Element;
622
622
 
623
623
  /**
624
- * A group heading with NO group under it — the band on its own, for Puck's
624
+ * A group heading with NO group under it — the band on its own, for the old editor's
625
625
  * flat inspector list, where a heading cannot wrap the rows that follow it. A
626
626
  * HEADING, not a control: no button, no sign, no count. THE SHELL'S
627
627
  * `AccordionHeading` (B2 plan C, Lewis 2026-10-26); this name stays because
@@ -32,7 +32,7 @@
32
32
  token behind any of them: there was nowhere to change it once, and no floor
33
33
  under any of it.
34
34
 
35
- ON `.es-editor`, because the panel HAS no root of its own. Puck lays the
35
+ ON `.es-editor`, because the panel HAS no root of its own. The old editor lays the
36
36
  inspector out as a flat sibling list, so the primitives render no wrapper —
37
37
  and `.es-editor` is the chrome root both editors already put on their own
38
38
  chrome and the root every colour in this sheet is already read from. A host
@@ -1,12 +1,12 @@
1
- import { N as Node, P as Place, D as Data, a as DataConfig } from './types-41704JE4.js';
1
+ import { N as Node, P as Place, D as Data, a as DataConfig } from './types-DlQIM1YO.js';
2
2
 
3
3
  /**
4
4
  * Every node operation the two editors offer, as ONE pure step: a document in,
5
5
  * the next document and what to select out.
6
6
  *
7
- * Why one step. On Puck, the editors built these out of several dispatches —
7
+ * Why one step. On the old editor, the editors built these out of several dispatches —
8
8
  * the storefront's delete was three (remove, reset the inspector, clear the
9
- * selection), its cross-slot move three undo steps, its paste two — and Puck's
9
+ * selection), its cross-slot move three undo steps, its paste two — and the old editor's
10
10
  * selection is a POSITION, so after a delete it quietly pointed at whatever slid
11
11
  * into the gap. Here each operation is computed whole, on `efficient-easel/data`,
12
12
  * and the host commits it in one write (see ./useNodeOps). One action, one undo.
@@ -145,9 +145,9 @@ interface ItemSelector {
145
145
  zone?: string;
146
146
  index: number;
147
147
  }
148
- /** A node selection as Puck's `itemSelector`; `null` for nothing or a slot. */
148
+ /** A node selection as the old editor's `itemSelector`; `null` for nothing or a slot. */
149
149
  declare function toItemSelector(data: Data, config: DataConfig, selection: NodeSelection): ItemSelector | null;
150
- /** Puck's `itemSelector` as a node selection; `null` when it points at nothing. */
150
+ /** The old editor's `itemSelector` as a node selection; `null` when it points at nothing. */
151
151
  declare function fromItemSelector(data: Data, config: DataConfig, selector: ItemSelector | null | undefined): NodeSelection;
152
152
 
153
153
  export { type AfterRemove as A, type ItemSelector as I, type NodeSelection as N, type PassThrough as P, type StepBounds as S, type Planned as a, clickPick as b, canStep as c, clickPickPart as d, nodeChain as e, fromItemSelector as f, planDuplicate as g, planMove as h, planPaste as i, planRemove as j, planRestore as k, planSetProps as l, planStep as m, nextInChain as n, planSwap as o, parentStep as p, toItemSelector as t };
@@ -1,17 +1,17 @@
1
1
  import { CSSProperties, ReactNode, ReactElement } from 'react';
2
- import { B as BlockShape, D as Data } from '../types-41704JE4.js';
2
+ import { B as BlockShape, D as Data } from '../types-DlQIM1YO.js';
3
3
 
4
4
  /**
5
5
  * efficient-easel/render — draw a saved document, the published way.
6
6
  *
7
- * Step 1.2 of the engine that replaces Puck (blueprint "Puck From The Ground
7
+ * Step 1.2 of the engine that replaces the old editor (blueprint "From The Ground
8
8
  * Up For Efficient Editor", 2026-09-29). The published storefront draws every
9
- * page through Puck's `<Render>` today (efficient-storefront `lib/document/render-client.tsx`
9
+ * page through the old editor's `<Render>` today (efficient-storefront `lib/document/render-client.tsx`
10
10
  * and `components/PublishedFooter.tsx`); this is the drop-in for it: the same
11
- * config, the same document, THE SAME HTML — `tests/render-puck-parity.test.tsx`
11
+ * config, the same document, THE SAME HTML — `tests/render-document-parity.test.tsx`
12
12
  * renders both and compares the markup byte for byte.
13
13
  *
14
- * WHAT IS DIFFERENT IS WHAT IT IS MADE OF. Puck's `<Render>` reaches the
14
+ * WHAT IS DIFFERENT IS WHAT IT IS MADE OF. The old editor's `<Render>` reaches the
15
15
  * document through a React context and builds each block's props in hooks, so
16
16
  * it can only run as a client component. This is a plain function: no hook, no
17
17
  * context, no state, no browser global. It runs in a server component, in a
@@ -20,27 +20,27 @@ import { B as BlockShape, D as Data } from '../types-41704JE4.js';
20
20
  * the blocks (the storefront's are client components today; blueprint default
21
21
  * #4 keeps that wrapper until they are moved one by one).
22
22
  *
23
- * THE BLOCK AUTHORING SHAPE IS PUCK'S (blueprint default #3), so an app hands
23
+ * THE BLOCK AUTHORING SHAPE IS THE OLD EDITOR'S (blueprint default #3), so an app hands
24
24
  * in the config it has:
25
25
  *
26
- * - a block's `render` receives its props, plus `puck`, plus each SLOT as a
26
+ * - a block's `render` receives its props, plus `editor`, plus each SLOT as a
27
27
  * component: `render: ({ content: Content }) => <Content className="…" />`.
28
- * A slot draws `<div className style>` around its blocks, as Puck's does,
28
+ * A slot draws `<div className style>` around its blocks, as the old editor's does,
29
29
  * and says how many it draws in `Content.blockCount` (the editor's
30
30
  * canvas gives the same number);
31
- * - the root's `render` receives the root props, `puck`, `title` (`''` when
32
- * unset), `editMode: false`, `id: 'puck-root'`, and the page as `children`;
31
+ * - the root's `render` receives the root props, `editor`, `title` (`''` when
32
+ * unset), `editMode: false`, `id: 'page-root'`, and the page as `children`;
33
33
  * - a block type the config does not know draws nothing.
34
34
  *
35
35
  * Three details are copied exactly because a block can observe them, not
36
36
  * because they are good design:
37
37
  *
38
38
  * 1. The top-level list is wrapped in one plain `<div>`, root render or not.
39
- * (Puck's own SERVER `<Render>` uses a fragment there instead, so Puck's
39
+ * (the old editor's own SERVER `<Render>` uses a fragment there instead, so the old editor's
40
40
  * two renderers disagree; the client one is what is published.) A host
41
41
  * that needs to reach that wrapper from its stylesheet passes `className`
42
- * (0.95.0); left out, the `<div>` is as bare as Puck's.
43
- * 2. `puck` differs by level. The root gets
42
+ * (0.95.0); left out, the `<div>` is as bare as the old editor's.
43
+ * 2. `editor` differs by level. The root gets
44
44
  * `{ renderDropZone, isEditing: false, dragRef: null, metadata }`; a
45
45
  * top-level block gets `{ renderDropZone, metadata: { ...metadata,
46
46
  * ...block.metadata } }`; a block inside a slot gets `{ metadata }` only.
@@ -49,7 +49,7 @@ import { B as BlockShape, D as Data } from '../types-41704JE4.js';
49
49
  *
50
50
  * `renderDropZone` draws a legacy `zones` entry. Neither editor writes zones,
51
51
  * so it draws an empty `<div>` in practice; it exists so a block that still
52
- * calls it gets what Puck gave it.
52
+ * calls it gets what the old editor gave it.
53
53
  *
54
54
  * LEAF DISCIPLINE: imports React's JSX runtime and this package's own data
55
55
  * layer, nothing else (`tests/render-leaf-safety.test.ts`).
@@ -77,7 +77,7 @@ type SlotComponent = ((props?: SlotProps) => ReactElement) & {
77
77
  interface DropZoneProps extends SlotProps {
78
78
  zone: string;
79
79
  }
80
- /** The `editor` prop (and `puck`, its deprecated twin). Which keys are present depends on the level (see above). */
80
+ /** The `editor` prop. Which keys are present depends on the level (see above). */
81
81
  interface RenderContext {
82
82
  renderDropZone?: (props: DropZoneProps) => ReactElement;
83
83
  isEditing?: boolean;
@@ -97,10 +97,10 @@ interface RenderConfig {
97
97
  }
98
98
  /**
99
99
  * What `Render` draws: a saved document, as loosely as the renderer reads it.
100
- * `root.props` is OPTIONAL here, as it is in Puck's own `Data` type — a root
101
- * that holds its props directly (the older format) is drawn the way Puck draws
100
+ * `root.props` is OPTIONAL here, as it is in the old editor's own `Data` type — a root
101
+ * that holds its props directly (the older format) is drawn the way the old editor draws
102
102
  * it, and a document with no root or no content draws an empty page. So a
103
- * Puck-typed document is passed as it is, with no cast.
103
+ * old-editor-typed document is passed as it is, with no cast.
104
104
  */
105
105
  interface RenderData {
106
106
  root?: {
@@ -117,7 +117,7 @@ interface RenderProps {
117
117
  /**
118
118
  * A class for the `<div>` around the top-level list — that wrapper, and
119
119
  * nothing else. OPT-IN: left out (or empty) the wrapper carries no attribute
120
- * at all, and the markup is Puck's, byte for byte.
120
+ * at all, and the markup is the old editor's, byte for byte.
121
121
  */
122
122
  className?: string;
123
123
  }
@@ -1,5 +1,5 @@
1
- import{isRecord as t,fieldsFrom as n,slotLocations as e,setIn as o,drawnBlockCount as r,isNode as a}from"../chunk-L55YIXDC.js";import{jsx as c}from"react/jsx-runtime";function i({config:e,data:o,metadata:r={},className:a}){const i=Array.isArray(o?.content)?o.content:[],u=t(o?.root)?o.root:{},p="props"in u?u.props:u,m={config:e,content:i,zones:t(o?.zones)?o.zones:{},metadata:r},f={renderDropZone:l(m,"root"),isEditing:!1,dragRef:null,metadata:r},y={...p,editor:f,puck:f,title:p?.title||"",editMode:!1,id:"puck-root"},g=s(m,n(e.root),y),k=i.map(t=>d(m,t)),h=/* @__PURE__ */c("div",a?{className:a,children:k}:{children:k}),z=e.root?.render;return z?/* @__PURE__ */c(z,{...g,children:h}):h}function s(t,n,r){let a=r;for(const c of e(r,n))a=o(a,c.segments,u(t,c.content));return a}function u(t,e){return Object.assign(function(o={}){/* @__PURE__ */
2
- return c("div",{className:o.className,style:o.style,children:e.map(e=>function(t,e){if(!a(e))return null;const o=t.config.components[e.type];if(!o)return null;const r=s(t,n(o),e.props),i=o.render,u={...r.puck,metadata:t.metadata||{}};/* @__PURE__ */
3
- return c(i,{...r,editor:u,puck:u},r.id)}(t,e))})},{blockCount:r(e,t.config.components)})}function d(t,e){if(!a(e))return null;const o=t.config.components[e.type];if(!o)return null;const r=s(t,n(o),e.props),i=o.render,u={...r.puck,renderDropZone:l(t,r.id),metadata:{...t.metadata,...o.metadata}};/* @__PURE__ */
4
- return c(i,{...r,editor:u,puck:u},r.id)}function l(t,n){return function({zone:e,className:o,style:r}){const a=`${n}:${e}`,i="root:default-zone"===a?t.content:t.zones[a],s=Array.isArray(i)?i:[];/* @__PURE__ */
5
- return c("div",{className:o,style:r,children:s.map(n=>d(t,n))})}}export{i as Render};
1
+ import{isRecord as t,fieldsFrom as n,slotLocations as e,setIn as o,drawnBlockCount as r,isNode as a}from"../chunk-L55YIXDC.js";import{jsx as i}from"react/jsx-runtime";function c({config:e,data:o,metadata:r={},className:a}){const c=Array.isArray(o?.content)?o.content:[],d=t(o?.root)?o.root:{},m="props"in d?d.props:d,f={config:e,content:c,zones:t(o?.zones)?o.zones:{},metadata:r},p={renderDropZone:u(f,"root"),isEditing:!1,dragRef:null,metadata:r},g={...m,editor:p,title:m?.title||"",editMode:!1,id:"page-root"},y=s(f,n(e.root),g),h=c.map(t=>l(f,t)),z=/* @__PURE__ */i("div",a?{className:a,children:h}:{children:h}),N=e.root?.render;return N?/* @__PURE__ */i(N,{...y,children:z}):z}function s(t,n,r){let a=r;for(const i of e(r,n))a=o(a,i.segments,d(t,i.content));return a}function d(t,e){return Object.assign(function(o={}){/* @__PURE__ */
2
+ return i("div",{className:o.className,style:o.style,children:e.map(e=>function(t,e){if(!a(e))return null;const o=t.config.components[e.type];if(!o)return null;const r=s(t,n(o),e.props),c=o.render,d={...r.editor,metadata:t.metadata||{}};/* @__PURE__ */
3
+ return i(c,{...r,editor:d},r.id)}(t,e))})},{blockCount:r(e,t.config.components)})}function l(t,e){if(!a(e))return null;const o=t.config.components[e.type];if(!o)return null;const r=s(t,n(o),e.props),c=o.render,d={...r.editor,renderDropZone:u(t,r.id),metadata:{...t.metadata,...o.metadata}};/* @__PURE__ */
4
+ return i(c,{...r,editor:d},r.id)}function u(t,n){return function({zone:e,className:o,style:r}){const a=`${n}:${e}`,c="root:default-zone"===a?t.content:t.zones[a],s=Array.isArray(c)?c:[];/* @__PURE__ */
5
+ return i("div",{className:o,style:r,children:s.map(n=>l(t,n))})}}export{c as Render};
@@ -8,7 +8,7 @@
8
8
  * <div data-sf-repeat="<ownerId>:template" data-sf-repeat-index={i}>
9
9
  *
10
10
  * Index 0 is the MAIN copy. The blocks inside keep their real
11
- * `data-puck-component` / `data-easel-dnd` ids in every copy, so a click on any
11
+ * `data-easel-block` / `data-easel-dnd` ids in every copy, so a click on any
12
12
  * copy selects the template block. What the canvas does with the copies:
13
13
  * - the hover and the selected outline are drawn on every copy;
14
14
  * - only the main copy's lists are drop targets (the others are pictures);
@@ -1,20 +1,20 @@
1
- import { a as DataConfig } from './types-41704JE4.js';
1
+ import { a as DataConfig } from './types-DlQIM1YO.js';
2
2
 
3
3
  /**
4
- * A BLOCK'S `resolveData`, RUN AS PUCK RUNS IT — `resolveComponentData` in Puck
4
+ * A BLOCK'S `resolveData`, RUN AS THE OLD EDITOR RAN IT — `resolveComponentData` in the old editor
5
5
  * 0.20 (`lib/resolve-component-data.ts`), because the documents both editors
6
6
  * hold were resolved by it and must go on resolving the same way.
7
7
  *
8
8
  * - It runs only when the item differs from the last one resolved for that id
9
9
  * (deep-equal), unless the trigger is "force"; the last answer is reused.
10
10
  * - `changed` names every prop of the new item with whether it differs from
11
- * the last one resolved (`changedProps`, Puck's `getChanged`).
11
+ * the last one resolved (`changedProps`, the old editor's `getChanged`).
12
12
  * - The block's own `metadata` is spread over the host's.
13
13
  * - The answer's `props` are spread OVER the item's, and its `readOnly` kept
14
14
  * when it has any key.
15
15
  * - Then every slot's children are resolved the same way, in order.
16
16
  *
17
- * What differs from Puck is only where the memory lives: Puck kept the last
17
+ * What differs from the old editor is only where the memory lives: the old editor kept the last
18
18
  * change per id in a module-level object shared by every editor on the page;
19
19
  * here the host hands in its own (`createResolveCache`), one per editor.
20
20
  *
@@ -43,7 +43,7 @@ interface ResolveOptions {
43
43
  }
44
44
  /** Deep equality of JSON-shaped values, as `fast-deep-equal` answers it for them. */
45
45
  declare function deepEqual(a: unknown, b: unknown): boolean;
46
- /** Every prop of `next`, and whether it differs from `last` (Puck's `getChanged`). */
46
+ /** Every prop of `next`, and whether it differs from `last` (the old editor's `getChanged`). */
47
47
  declare function changedProps(next: ResolvableItem | null | undefined, last: ResolvableItem | null | undefined): Record<string, boolean>;
48
48
  /**
49
49
  * Resolve one item and everything in its slots. `didChange` says whether the
@@ -1 +1 @@
1
- export{AddBlockRow as default}from"../../chunk-U7TFWHST.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-OHZHYROJ.js";import"../../chunk-PRHBWA5V.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-TUXLORVR.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-PFFH7ASD.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-4FD7TAOE.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
1
+ export{AddBlockRow as default}from"../../chunk-YC6KLSW3.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-SJMS247S.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-WJSEWAWK.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-YHFKWV7H.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-GHBK7BKL.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -1,10 +1,10 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { D as DragSession } from '../../session-DSQFmIvx.js';
3
+ import { D as DragSession } from '../../session-CrWwDt7Z.js';
4
4
  import { SectionTemplate } from '../lib/section-template-types.js';
5
5
  import { SharedSection } from '../lib/shared-section-types.js';
6
6
  import { BlockChoice } from '../lib/document/block-choice.js';
7
- import '../../types-41704JE4.js';
7
+ import '../../types-DlQIM1YO.js';
8
8
  import '../lib/document/content-tree.js';
9
9
 
10
10
  /** What a tile adds, parsed back out of its key. */
@@ -1 +1 @@
1
- export{blockKey,AddSidePanel as default,sectionKey,sharedKey,templateKey}from"../../chunk-2C7W64S5.js";import"../../chunk-VKPOH6MK.js";import"../../chunk-CPL43ZLJ.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-OHZHYROJ.js";import"../../chunk-PRHBWA5V.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-TUXLORVR.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-PFFH7ASD.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.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-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-WJJ7H42G.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-4FD7TAOE.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
1
+ export{blockKey,AddSidePanel as default,sectionKey,sharedKey,templateKey}from"../../chunk-TXR7GC5A.js";import"../../chunk-VKPOH6MK.js";import"../../chunk-CPL43ZLJ.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-SJMS247S.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-WJSEWAWK.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-YHFKWV7H.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-IWCKVZHS.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-KFV7N2DJ.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-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-CUZQ2HMA.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-GHBK7BKL.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -1,26 +1,26 @@
1
1
  import * as react from 'react';
2
2
  import { E as EaselContextMenuItem } from '../../types-BbOBWXMP.js';
3
- import { P as Place } from '../../types-41704JE4.js';
4
- import { N as NodeClipboard, C as ClipboardEntry, a as NodeOps } from '../../useNodeOps-fIDWzftn.js';
3
+ import { P as Place } from '../../types-DlQIM1YO.js';
4
+ import { N as NodeClipboard, C as ClipboardEntry, a as NodeOps } from '../../useNodeOps-C_nisDHh.js';
5
5
  import { N as NodeMenuWords } from '../../words-DMG4dYq2.js';
6
6
  import { StyleSnapshot } from '../../style-clipboard/index.js';
7
7
  import { S as StyleClipboardWords } from '../../words-CnnHb9jo.js';
8
8
  import { ScreenMenuWords } from '../words.js';
9
- import { C as CanvasTarget } from '../../watch-D8xZow3y.js';
9
+ import { C as CanvasTarget } from '../../watch-D0bNZRtU.js';
10
10
  import { ScreenMenuRows } from '../lib/screen-parts.js';
11
11
  import { EaselSession } from '../lib/session.js';
12
- import '../../plan-CZS902DV.js';
12
+ import '../../plan-CRUh2kVK.js';
13
13
  import '../../blocks/index.js';
14
- import '../../types-Cq53lL8d.js';
14
+ import '../../types-DFxBChE3.js';
15
15
  import '../../data/index.js';
16
- import '../../resolve-D68pb3Bx.js';
16
+ import '../../resolve-AJ6WF4EL.js';
17
17
  import '../../types-B3iSHX-w.js';
18
18
  import '../../types-Cy7rdmXt.js';
19
19
  import '../../wordFit-7XpmhcaW.js';
20
20
  import '../../edit-lock/index.js';
21
21
  import '../../panelWidths-DgQXiPXU.js';
22
- import '../../CanvasDragLayer-CFUcBbgc.js';
23
- import '../../session-DSQFmIvx.js';
22
+ import '../../CanvasDragLayer-B6Yn9S8T.js';
23
+ import '../../session-CrWwDt7Z.js';
24
24
  import '../../words-SD4neL0n.js';
25
25
  import '../../types-DBy3L69b.js';
26
26
  import 'efficient-shell/ui';
@@ -30,7 +30,7 @@ import '../lib/section-template-types.js';
30
30
  import '../lib/document/content-tree.js';
31
31
  import '../lib/shared-section-types.js';
32
32
  import '../lib/document/block-choice.js';
33
- import '../../ScreenDocumentContext-1RgtGKWR.js';
33
+ import '../../ScreenDocumentContext-BIK3uWtF.js';
34
34
  import '../lib/document-contract.js';
35
35
  import '../lib/document-switch.js';
36
36
  import '../../engine-CvXpFE86.js';
@@ -316,7 +316,7 @@ type NodeMenuHost = {
316
316
  * A top-level node goes through `selectIndex` (inspector mode, the Locations
317
317
  * focus reset, scroll the preview to it); a slot child goes through
318
318
  * `selectChild`, which for a SLIDER parent must move the carousel to that
319
- * slide BEFORE selecting, or Puck measures its overlay on an off-screen slide
319
+ * slide BEFORE selecting, or the old editor measures its overlay on an off-screen slide
320
320
  * and the canvas grows a horizontal scrollbar. Neither is restated here. The
321
321
  * `parentType` is what the slider question is asked of, so the chain hands it
322
322
  * down rather than the chrome looking it up a second time.
@@ -569,7 +569,7 @@ declare function textMenuItems(host: NodeMenuHost, el: TextEl): EaselContextMenu
569
569
  * render. Per-row handlers are deliberately gone — see {@link onTreeContextMenu}.
570
570
  *
571
571
  * `canvas` is the editor's canvas frame (`efficient-easel/canvas`
572
- * `useCanvasFrame`, found once by the chrome) — null until Puck has drawn into
572
+ * `useCanvasFrame`, found once by the chrome) — null until the old editor has drawn into
573
573
  * it. The canvas half below listens on it.
574
574
  */
575
575
  declare function useNodeContextMenu(host: NodeMenuHost, canvas: CanvasTarget | null): {
@@ -1 +1 @@
1
- export{EASEL_NODE_CLIPBOARD,ancestorChain,nodeClipboardOf,nodeClipboardRules,nodeMenuItems,nodeShortcut,pageMenuItems,pastePlace,runNodeShortcut,textMenuItems,useNodeClipboard,useNodeContextMenu}from"../../chunk-2L6KWUBC.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-4FD7TAOE.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
1
+ export{EASEL_NODE_CLIPBOARD,ancestorChain,nodeClipboardOf,nodeClipboardRules,nodeMenuItems,nodeShortcut,pageMenuItems,pastePlace,runNodeShortcut,textMenuItems,useNodeClipboard,useNodeContextMenu}from"../../chunk-4LGROS5L.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-BSHIQIZC.js";import"../../chunk-GHBK7BKL.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";
@@ -6,7 +6,7 @@ import { ViewTier } from '../lib/content/view-tiers.js';
6
6
  *
7
7
  * The storefront editor chrome (ScreenChrome) owns a Desktop / Tablet
8
8
  * / Mobile switcher in its top bar (local `device` state, rendered at logical
9
- * widths 2000 / 800 / 390). That switcher — NOT Puck's built-in viewports — is
9
+ * widths 2000 / 800 / 390). That switcher — NOT the old editor's built-in viewports — is
10
10
  * what resizes the preview iframe, so viewport-aware inspector fields must read
11
11
  * IT to know which view the merchant is editing. The chrome lends its live
12
12
  * `device` to the website layer, which provides it here
@@ -13,7 +13,7 @@ import * as react from 'react';
13
13
  * than listed.
14
14
  *
15
15
  * That is also why it is a fourth context and not a rewrite of the three: their
16
- * regions carry NO Puck fields at all (a HeroSingle's copy and a Hero's ticker
16
+ * regions carry NO the old editor fields at all (a HeroSingle's copy and a Hero's ticker
17
17
  * items are props with bespoke panels and no field declarations), so a
18
18
  * field-derived bridge cannot see them and the two mechanisms provably never
19
19
  * claim the same element. See the card report for why retiring them is its own
@@ -22,7 +22,7 @@ import * as react from 'react';
22
22
  * The payload is ONE string — `"<nodeId>::<propKey>"`, or `"<nodeId>::"` for the
23
23
  * whole section — so the shared {@link createPreviewSelectionContext} factory
24
24
  * fits unchanged; `encodePartId`/`decodePartId` own that spelling. Provider sits
25
- * ABOVE <Puck> so its value reaches BOTH the chrome (which registers the select
25
+ * ABOVE the old editor root so its value reaches BOTH the chrome (which registers the select
26
26
  * handler and mirrors the open panel back) AND the portaled preview iframe.
27
27
  */
28
28
  declare const PreviewPartsProvider: ({ children }: {
@@ -9,14 +9,14 @@ import '../../wordFit-7XpmhcaW.js';
9
9
  import '../../edit-lock/index.js';
10
10
  import '../../panelWidths-DgQXiPXU.js';
11
11
  import '../../blocks/index.js';
12
- import '../../types-Cq53lL8d.js';
12
+ import '../../types-DFxBChE3.js';
13
13
  import '../../data/index.js';
14
- import '../../types-41704JE4.js';
15
- import '../../resolve-D68pb3Bx.js';
16
- import '../../plan-CZS902DV.js';
17
- import '../../watch-D8xZow3y.js';
18
- import '../../CanvasDragLayer-CFUcBbgc.js';
19
- import '../../session-DSQFmIvx.js';
14
+ import '../../types-DlQIM1YO.js';
15
+ import '../../resolve-AJ6WF4EL.js';
16
+ import '../../plan-CRUh2kVK.js';
17
+ import '../../watch-D0bNZRtU.js';
18
+ import '../../CanvasDragLayer-B6Yn9S8T.js';
19
+ import '../../session-CrWwDt7Z.js';
20
20
  import '../../words-SD4neL0n.js';
21
21
  import '../../types-BbOBWXMP.js';
22
22
  import '../../style-clipboard/index.js';
@@ -29,7 +29,7 @@ import '../lib/section-template-types.js';
29
29
  import '../lib/document/content-tree.js';
30
30
  import '../lib/shared-section-types.js';
31
31
  import '../lib/document/block-choice.js';
32
- import '../../ScreenDocumentContext-1RgtGKWR.js';
32
+ import '../../ScreenDocumentContext-BIK3uWtF.js';
33
33
  import '../lib/document-contract.js';
34
34
  import '../lib/document-switch.js';
35
35
  import '../lib/admin-bridge.js';
@@ -1 +1 @@
1
- export{ScreenChrome as default}from"../../chunk-YVFYWAYU.js";import"../../chunk-BDSLF5BR.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-SWBADIQT.js";import"../../chunk-U5DNBT63.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-KWLHKKZO.js";import"../../chunk-INRERJU4.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-DDH2DYQP.js";import"../../chunk-DNQ7AF6K.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-C56MPJBH.js";import"../../chunk-67HCYOW4.js";import"../../chunk-MLQKNED6.js";import"../../chunk-PY7OOQEZ.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-5545A3PC.js";import"../../chunk-2C7W64S5.js";import"../../chunk-VKPOH6MK.js";import"../../chunk-CPL43ZLJ.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-OHZHYROJ.js";import"../../chunk-PRHBWA5V.js";import"../../chunk-2G6MAXPY.js";import"../../chunk-2L6KWUBC.js";import"../../chunk-ZOSEBPAI.js";import"../../chunk-BTDI7JAA.js";import"../../chunk-77IWWW6X.js";import"../../chunk-ERR437B5.js";import"../../chunk-UNVKPVZW.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-BIK3AO2V.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-XFYFKITX.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-SSRYU3YG.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-TUXLORVR.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-PFFH7ASD.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-KFV7N2DJ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.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-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-WJJ7H42G.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-4FD7TAOE.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";import"../../chunk-BSPCSC45.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
1
+ export{ScreenChrome as default}from"../../chunk-IYYE7VJN.js";import"../../chunk-BDSLF5BR.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-SWBADIQT.js";import"../../chunk-UMBNBCL4.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-KWLHKKZO.js";import"../../chunk-INRERJU4.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-DDH2DYQP.js";import"../../chunk-TLN5ZT76.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-C56MPJBH.js";import"../../chunk-KN2TIXUT.js";import"../../chunk-IROEWITG.js";import"../../chunk-PY7OOQEZ.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-5545A3PC.js";import"../../chunk-TXR7GC5A.js";import"../../chunk-VKPOH6MK.js";import"../../chunk-CPL43ZLJ.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SINAM2IT.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-SJMS247S.js";import"../../chunk-2G6MAXPY.js";import"../../chunk-4LGROS5L.js";import"../../chunk-ZOSEBPAI.js";import"../../chunk-BTDI7JAA.js";import"../../chunk-77IWWW6X.js";import"../../chunk-ERR437B5.js";import"../../chunk-UNVKPVZW.js";import"../../chunk-GMCZXMOV.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-HNKB2ZYR.js";import"../../chunk-CLOS6SSX.js";import"../../chunk-BIK3AO2V.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-FHCKFOCD.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-MQA7OFRA.js";import"../../chunk-XFYFKITX.js";import"../../chunk-EB6NI2VK.js";import"../../chunk-V7U33NF2.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-SSRYU3YG.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-WJSEWAWK.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-YHFKWV7H.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-K56YDHYQ.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-FM6JO4WF.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-MZ5GSSZ3.js";import"../../chunk-KRL3IUV3.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-S3DUFDQ6.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-CUZQ2HMA.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3S5N4HLJ.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-GHBK7BKL.js";import"../../chunk-LF3FUSCQ.js";import"../../chunk-K7BTCBWD.js";import"../../chunk-L55YIXDC.js";import"../../chunk-BSPCSC45.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
@@ -1,16 +1,16 @@
1
1
  import 'react';
2
2
  import '../../blocks/index.js';
3
- export { p as AnyScreenTarget, q as DocumentTarget, r as ScreenDocumentContext, s as ScreenDocumentProvider, t as ScreenDocumentValue, v as ScreenTarget, w as useScreenDocument } from '../../ScreenDocumentContext-1RgtGKWR.js';
3
+ export { p as AnyScreenTarget, q as DocumentTarget, r as ScreenDocumentContext, s as ScreenDocumentProvider, t as ScreenDocumentValue, v as ScreenTarget, w as useScreenDocument } from '../../ScreenDocumentContext-BIK3uWtF.js';
4
4
  import '../lib/document-contract.js';
5
5
  export { SaveStatus } from '../lib/document-switch.js';
6
6
  import '../lib/admin-bridge.js';
7
7
  import '../../edit-lock/index.js';
8
8
  import '../../engine-CvXpFE86.js';
9
- import '../../types-Cq53lL8d.js';
9
+ import '../../types-DFxBChE3.js';
10
10
  import '../../data/index.js';
11
- import '../../types-41704JE4.js';
12
- import '../../resolve-D68pb3Bx.js';
13
- import '../../plan-CZS902DV.js';
11
+ import '../../types-DlQIM1YO.js';
12
+ import '../../resolve-AJ6WF4EL.js';
13
+ import '../../plan-CRUh2kVK.js';
14
14
  import '../lib/session.js';
15
15
  import '../lib/backend-error.js';
16
16
  import '../lib/host-chrome.js';