efficient-easel 25.1.0 → 26.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.
- package/README.md +3 -4
- package/dist/chunk-2S7PJZWH.js +1 -0
- package/dist/chunk-2T22IY3J.js +2 -0
- package/dist/chunk-4FFDGEWA.js +1 -0
- package/dist/{chunk-BBD3FLU3.js → chunk-53ME3GAI.js} +14 -14
- package/dist/{chunk-KFV7N2DJ.js → chunk-56ID6FKZ.js} +1 -1
- package/dist/{chunk-OXOUGEAT.js → chunk-7GGNFLHT.js} +1 -1
- package/dist/chunk-BYONFJVQ.js +2 -0
- package/dist/chunk-CLAADE4J.js +14 -0
- package/dist/{chunk-FEP6XMNX.js → chunk-CP6KQP5A.js} +1 -1
- package/dist/chunk-FIH23CB7.js +1 -0
- package/dist/chunk-FT3O7X6U.js +5 -0
- package/dist/{chunk-UCZQWQNS.js → chunk-FYV6GZXP.js} +1 -1
- package/dist/{chunk-6WTWYHC2.js → chunk-I3KB7LH7.js} +4 -4
- package/dist/{chunk-IW5QXREH.js → chunk-IHXQZDDW.js} +39 -39
- package/dist/chunk-JYVQ62TL.js +1 -0
- package/dist/{chunk-XLC7HWW3.js → chunk-LDXYMHYW.js} +1 -1
- package/dist/chunk-LUG22U5L.js +1 -0
- package/dist/chunk-M5IKANJ5.js +13 -0
- package/dist/{chunk-SQTVXE5D.js → chunk-MBEUSPIN.js} +4 -4
- package/dist/{chunk-S6YOIRXQ.js → chunk-Q3VAJMXS.js} +1 -1
- package/dist/{chunk-U3LTJSBU.js → chunk-R76XMEKT.js} +11 -11
- package/dist/{chunk-62UGN7VM.js → chunk-TOEJCZUO.js} +1 -1
- package/dist/{chunk-ITIVCER6.js → chunk-WQXAAVCE.js} +1 -1
- package/dist/chunk-X3EMJ2EX.js +1 -0
- package/dist/{chunk-KF3LT7J2.js → chunk-YDJZX2XS.js} +1 -1
- package/dist/{chunk-XTDOSL2M.js → chunk-ZIEINXSZ.js} +6 -6
- package/dist/chunk-ZJRMB5KN.js +4 -0
- package/dist/drag/index.js +1 -1
- package/dist/draw/index.d.ts +1 -0
- package/dist/draw/index.js +1 -1
- package/dist/easel/index.js +1 -1
- package/dist/fields/index.js +1 -1
- package/dist/panel/index.d.ts +63 -2
- package/dist/panel/index.js +1 -1
- package/dist/panel/panel.css +46 -0
- package/dist/pick/index.d.ts +16 -195
- package/dist/pick/index.js +1 -1
- package/dist/pick/pick.css +6 -196
- package/dist/screen/components/AddBlockRow.js +1 -1
- package/dist/screen/components/AddSidePanel.js +1 -1
- package/dist/screen/components/NodeContextMenu.js +1 -1
- package/dist/screen/components/PageEditGuardNotices.js +1 -1
- package/dist/screen/components/ScreenChrome.js +1 -1
- package/dist/screen/components/ScreenDocumentContext.js +1 -1
- package/dist/screen/components/ScreenMount.js +1 -1
- package/dist/screen/components/ScreenStoreProvider.js +1 -1
- package/dist/screen/components/SectionScreenShell.js +17 -17
- package/dist/screen/components/usePartBridge.js +1 -1
- package/dist/screen/index.js +1 -1
- package/dist/screen/lib/content/block-size.d.ts +74 -0
- package/dist/screen/lib/content/block-size.js +1 -0
- package/dist/screen/lib/document/block-set-host.js +1 -1
- package/dist/screen/lib/document/block-size-fields.d.ts +48 -0
- package/dist/screen/lib/document/block-size-fields.js +1 -0
- package/dist/screen/lib/document/box-fields.d.ts +58 -10
- package/dist/screen/lib/document/box-fields.js +1 -1
- package/dist/screen/lib/document/button-fields.d.ts +97 -0
- package/dist/screen/lib/document/button-fields.js +1 -0
- package/dist/screen/lib/document/device-fields.js +1 -1
- package/dist/screen/lib/document/image-fields.d.ts +118 -0
- package/dist/screen/lib/document/image-fields.js +5 -0
- package/dist/screen/lib/document/style-clipboard.js +1 -1
- package/dist/screen/lib/document/style-fields.d.ts +109 -0
- package/dist/screen/lib/document/style-fields.js +1 -0
- package/dist/screen/lib/document/use-section-ops.js +1 -1
- package/dist/screen/lib/key-scope.js +1 -1
- package/dist/screen/lib/screen-parts.js +1 -1
- package/dist/screen/words.d.ts +22 -1
- package/dist/screen/words.js +1 -1
- package/dist/strings/index.d.ts +12 -9
- package/dist/strings/index.js +2 -2
- package/dist/text-styles/index.d.ts +3 -3
- package/dist/text-styles/index.js +37 -37
- package/dist/{words-fbR9IwxH.d.ts → words-BrN08Fup.d.ts} +16 -1
- package/package.json +31 -1
- package/dist/chunk-ERB6FAZT.js +0 -2
- package/dist/chunk-H6BER2EU.js +0 -1
- package/dist/chunk-JQQFB7EZ.js +0 -1
- package/dist/chunk-KVIEUWTX.js +0 -11
- package/dist/chunk-LUHGBFOD.js +0 -5
- package/dist/chunk-OFBZOI6W.js +0 -1
- package/dist/chunk-SC6E3UUS.js +0 -13
- package/dist/chunk-U6LJ5UKD.js +0 -6
- package/dist/chunk-UDWXBS46.js +0 -1
- package/dist/words-DWvCJXwR.d.ts +0 -51
package/dist/pick/pick.css
CHANGED
|
@@ -1,197 +1,7 @@
|
|
|
1
|
-
/* efficient-easel/pick — the
|
|
2
|
-
4.6). Drawn on the panel's own tokens, so both editors' panels get the same
|
|
3
|
-
picker without a line of their own CSS. The swatch and the window it opens
|
|
4
|
-
are efficient-shell's (`Popover`, `ColorPickerPanel`, `colorSwatchClasses`;
|
|
5
|
-
easel#199 step 4, harness UI-24) and draw from the shell's CSS: nothing
|
|
6
|
-
here styles them but where the swatch sits in the row. */
|
|
1
|
+
/* efficient-easel/pick.css — kept for the hosts that import it.
|
|
7
2
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
--es-pick-readout-w: 68px;
|
|
14
|
-
}
|
|
15
|
-
.es-pick-colour-row {
|
|
16
|
-
/* The tag is placed against the row. */
|
|
17
|
-
position: relative;
|
|
18
|
-
display: flex;
|
|
19
|
-
align-items: center;
|
|
20
|
-
gap: 8px;
|
|
21
|
-
}
|
|
22
|
-
/* THE HEX'S SLOT (Lewis 2026-10-07, option E): 68px, and down to 36px when
|
|
23
|
-
the line is short of room — after the label has given way to its 56px. The
|
|
24
|
-
hex or the word that stands in for it fills it. */
|
|
25
|
-
.es-pick-hexwrap {
|
|
26
|
-
position: relative;
|
|
27
|
-
display: flex;
|
|
28
|
-
align-items: center;
|
|
29
|
-
flex: 0 1 var(--es-pick-readout-w);
|
|
30
|
-
max-width: var(--es-pick-readout-w);
|
|
31
|
-
min-width: 36px;
|
|
32
|
-
}
|
|
33
|
-
.es-pick-hex {
|
|
34
|
-
box-sizing: border-box;
|
|
35
|
-
width: 100%;
|
|
36
|
-
min-width: 0;
|
|
37
|
-
padding: 4px 8px;
|
|
38
|
-
border: 1px solid transparent;
|
|
39
|
-
border-radius: var(--radius-md);
|
|
40
|
-
background: transparent;
|
|
41
|
-
color: var(--es-text);
|
|
42
|
-
font: 500 11px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace;
|
|
43
|
-
letter-spacing: 0.02em;
|
|
44
|
-
}
|
|
45
|
-
.es-pick-hex:hover {
|
|
46
|
-
border-color: var(--es-input-border);
|
|
47
|
-
}
|
|
48
|
-
.es-pick-hex:focus {
|
|
49
|
-
outline: none;
|
|
50
|
-
border-color: var(--es-accent);
|
|
51
|
-
background: var(--es-panel);
|
|
52
|
-
}
|
|
53
|
-
/* The hex a row FOLLOWS, in the row's box: grey at rest, so it does not read
|
|
54
|
-
as a value of its own; normal ink while it is edited (GG for Lewis,
|
|
55
|
-
2026-10-07: pressed to copy it, or to paste over it). */
|
|
56
|
-
.es-pick-hex.is-inherited {
|
|
57
|
-
color: var(--es-muted);
|
|
58
|
-
}
|
|
59
|
-
.es-pick-hex.is-inherited:focus {
|
|
60
|
-
color: var(--es-text);
|
|
61
|
-
}
|
|
62
|
-
/* The inherited hex, while nothing is stored: grey, so it does not read as a
|
|
63
|
-
value. */
|
|
64
|
-
.es-pick-hex::placeholder {
|
|
65
|
-
color: var(--es-muted);
|
|
66
|
-
opacity: 1;
|
|
67
|
-
}
|
|
68
|
-
.es-pick-caption {
|
|
69
|
-
box-sizing: border-box;
|
|
70
|
-
width: 100%;
|
|
71
|
-
min-width: 0;
|
|
72
|
-
overflow: hidden;
|
|
73
|
-
padding: 0 8px;
|
|
74
|
-
white-space: nowrap;
|
|
75
|
-
font-size: var(--text-xs, 12px);
|
|
76
|
-
color: var(--es-muted);
|
|
77
|
-
}
|
|
78
|
-
/* Cut text fades at its end, never cut hard. `data-clipped` is MEASURED
|
|
79
|
-
(ColourPicker): text that fits is never faded. */
|
|
80
|
-
.es-pick-hex[data-clipped],
|
|
81
|
-
.es-pick-caption[data-clipped] {
|
|
82
|
-
-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 16px), transparent);
|
|
83
|
-
mask-image: linear-gradient(to right, #000 calc(100% - 16px), transparent);
|
|
84
|
-
}
|
|
85
|
-
/* EDITED IN PLACE: a press widens the hex to seven characters (`#RRGGBB`
|
|
86
|
-
with its letter-spacing, the 8px insets and the 1px border), from its own
|
|
87
|
-
left edge, so the text does not jump and the swatch and the label do not
|
|
88
|
-
move; never past the row's end (`--es-pick-edit-room`, measured). */
|
|
89
|
-
.es-pick-colour-row .es-pick-hex:focus {
|
|
90
|
-
position: absolute;
|
|
91
|
-
z-index: 2;
|
|
92
|
-
left: 0;
|
|
93
|
-
top: 50%;
|
|
94
|
-
transform: translateY(-50%);
|
|
95
|
-
width: calc(7ch + 0.14em + 18px);
|
|
96
|
-
max-width: var(--es-pick-edit-room, none);
|
|
97
|
-
-webkit-mask-image: none;
|
|
98
|
-
mask-image: none;
|
|
99
|
-
box-shadow: 0 0 0 2px var(--es-accent-tint);
|
|
100
|
-
}
|
|
101
|
-
/* 4px from the hex to the part after it (the reset): the row's 8px, less 4. */
|
|
102
|
-
.es-pick-colour-row > .es-pick-hexwrap + * {
|
|
103
|
-
margin-left: -4px;
|
|
104
|
-
}
|
|
105
|
-
/* The part after the hex steps aside ONLY when the edit box reaches it. */
|
|
106
|
-
.es-pick-colour-row[data-editing='over'] > .es-pick-hexwrap ~ * {
|
|
107
|
-
visibility: hidden;
|
|
108
|
-
}
|
|
109
|
-
/* The tag over a cut label or hex: the whole text, small and dark, above it. */
|
|
110
|
-
.es-pick-tag {
|
|
111
|
-
position: absolute;
|
|
112
|
-
z-index: 3;
|
|
113
|
-
transform: translateY(calc(-100% - 6px));
|
|
114
|
-
padding: 4px 8px;
|
|
115
|
-
border-radius: var(--radius-md);
|
|
116
|
-
background: var(--es-toast-bg, var(--status-draft-solid));
|
|
117
|
-
color: var(--es-on-accent, var(--status-on-solid));
|
|
118
|
-
font-size: var(--text-xs, 12px);
|
|
119
|
-
font-weight: 500;
|
|
120
|
-
line-height: 1.3;
|
|
121
|
-
white-space: nowrap;
|
|
122
|
-
pointer-events: none;
|
|
123
|
-
box-shadow: 0 4px 12px rgb(0 0 0 / 0.2);
|
|
124
|
-
}
|
|
125
|
-
/* ── A line that holds the picker ───────────────────────────────────────── */
|
|
126
|
-
/* BOTH EDITORS HOLD THE PICKER IN A LINE: `SettingsField`'s `action` slot
|
|
127
|
-
(`.es-field-head`, this package's own class), or a colour SUB-row inside one
|
|
128
|
-
setting (the email's Logo "Color 1" / "Color 2", a button's Fill / Border /
|
|
129
|
-
Text), which is not a SettingsField and takes `.es-pick-line`: the host's
|
|
130
|
-
label first, then the picker.
|
|
131
|
-
|
|
132
|
-
The picker's own box steps aside (`display: contents`), so the swatch and
|
|
133
|
-
the hex become items of that line, at its end (`margin-left: auto`). The
|
|
134
|
-
window they open floats (the shell's Popover), so nothing here makes room
|
|
135
|
-
for it.
|
|
136
|
-
|
|
137
|
-
Moved here from the storefront's stylesheet (2026-10-06), so the email does
|
|
138
|
-
not copy it: one rule for both editors. The shop's `.sf-field--row` can move
|
|
139
|
-
onto `.es-pick-line` later. */
|
|
140
|
-
.es-pick-line {
|
|
141
|
-
display: flex;
|
|
142
|
-
flex-wrap: wrap;
|
|
143
|
-
align-items: center;
|
|
144
|
-
gap: 8px;
|
|
145
|
-
}
|
|
146
|
-
/* The sub-row's label. A host may use its own instead. */
|
|
147
|
-
.es-pick-line-label {
|
|
148
|
-
min-width: 0;
|
|
149
|
-
font-size: var(--text-xs, 12px);
|
|
150
|
-
color: var(--es-text-secondary);
|
|
151
|
-
}
|
|
152
|
-
.es-field-head > .es-pick-colour,
|
|
153
|
-
.es-pick-line > .es-pick-colour {
|
|
154
|
-
display: contents;
|
|
155
|
-
}
|
|
156
|
-
/* ONE LINE (Lewis 2026-10-07, option E). The row steps aside too, so the
|
|
157
|
-
label, the swatch, the hex's slot and the part after it are items of ONE
|
|
158
|
-
line, sized by rule and never by how wide their text is:
|
|
159
|
-
- the hex's slot is laid out at its 36px (so the line never wraps) and
|
|
160
|
-
grows FIRST, to its 68px;
|
|
161
|
-
- the label takes what is left, never under 56px, so it gives way first;
|
|
162
|
-
- the swatch is pushed to the end with what follows it, so a column of
|
|
163
|
-
rows lines up. The tag is placed against the line. */
|
|
164
|
-
.es-field-head:has(> .es-pick-colour),
|
|
165
|
-
.es-pick-line:has(> .es-pick-colour) {
|
|
166
|
-
position: relative;
|
|
167
|
-
}
|
|
168
|
-
.es-field-head > .es-pick-colour > .es-pick-colour-row,
|
|
169
|
-
.es-pick-line > .es-pick-colour > .es-pick-colour-row {
|
|
170
|
-
display: contents;
|
|
171
|
-
}
|
|
172
|
-
.es-field-head > .es-pick-colour > .es-pick-colour-row > .es-pick-swatch-wrap,
|
|
173
|
-
.es-pick-line > .es-pick-colour > .es-pick-colour-row > .es-pick-swatch-wrap {
|
|
174
|
-
margin-left: auto;
|
|
175
|
-
}
|
|
176
|
-
.es-field-head > .es-pick-colour > .es-pick-colour-row > .es-pick-hexwrap,
|
|
177
|
-
.es-pick-line > .es-pick-colour > .es-pick-colour-row > .es-pick-hexwrap {
|
|
178
|
-
flex: 1000 1 0;
|
|
179
|
-
}
|
|
180
|
-
/* The label: whatever is left, never under 56px, fading at its end when cut. */
|
|
181
|
-
.es-field-head:has(> .es-pick-colour) > .es-field-name,
|
|
182
|
-
.es-pick-line:has(> .es-pick-colour) > .es-pick-line-label {
|
|
183
|
-
flex: 1 1 0;
|
|
184
|
-
min-width: 56px;
|
|
185
|
-
overflow: hidden;
|
|
186
|
-
white-space: nowrap;
|
|
187
|
-
}
|
|
188
|
-
.es-field-head:has(> .es-pick-colour) .es-field-label {
|
|
189
|
-
min-width: 0;
|
|
190
|
-
overflow: hidden;
|
|
191
|
-
white-space: nowrap;
|
|
192
|
-
}
|
|
193
|
-
.es-field-head:has(> .es-pick-colour) .es-field-label[data-clipped],
|
|
194
|
-
.es-pick-line > .es-pick-line-label[data-clipped] {
|
|
195
|
-
-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
|
|
196
|
-
mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
|
|
197
|
-
}
|
|
3
|
+
It holds no rules now. The colour row it styled (`ColourPicker`) is gone:
|
|
4
|
+
the panel's one colour row is `SettingsColour` (`efficient-easel/panel`,
|
|
5
|
+
drawn by panel.css). The colour window is the shell's `ColorPickerPanel`
|
|
6
|
+
and draws from the shell's CSS; `es-pick-window` is only the text-styles
|
|
7
|
+
row's hook on it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{AddBlockRow as default}from"../../chunk-
|
|
1
|
+
export{AddBlockRow as default}from"../../chunk-WQXAAVCE.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{blockKey,AddSidePanel as default,presetKey,sectionKey,sharedKey,templateKey}from"../../chunk-
|
|
1
|
+
export{blockKey,AddSidePanel as default,presetKey,sectionKey,sharedKey,templateKey}from"../../chunk-ZIEINXSZ.js";import"../../chunk-GDO4QJ4G.js";import"../../chunk-IZGFJWH4.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SBVIW3KJ.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-VBEVZZTV.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-MBEUSPIN.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{EASEL_NODE_CLIPBOARD,ancestorChain,nodeClipboardOf,nodeClipboardRules,nodeMenuItems,nodeShortcut,pageMenuItems,pastePlace,runNodeShortcut,textMenuItems,useNodeClipboard,useNodeContextMenu}from"../../chunk-
|
|
1
|
+
export{EASEL_NODE_CLIPBOARD,ancestorChain,nodeClipboardOf,nodeClipboardRules,nodeMenuItems,nodeShortcut,pageMenuItems,pastePlace,runNodeShortcut,textMenuItems,useNodeClipboard,useNodeContextMenu}from"../../chunk-CP6KQP5A.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-CWELHADJ.js";import"../../chunk-6WY6ZXJG.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-LUG22U5L.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{PageEditGuardNotices as default}from"../../chunk-
|
|
1
|
+
export{PageEditGuardNotices as default}from"../../chunk-TOEJCZUO.js";import"../../chunk-BYONFJVQ.js";import"../../chunk-QZJKWKGH.js";import"../../chunk-ERR437B5.js";import"../../chunk-JIP5JNRB.js";import"../../chunk-GR3XRILS.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6ATIYLUL.js";import"../../chunk-KO47WAWR.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"../../chunk-LX23TCTP.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-VBEVZZTV.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{ScreenChrome as default}from"../../chunk-
|
|
1
|
+
export{ScreenChrome as default}from"../../chunk-IHXQZDDW.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-JYVQ62TL.js";import"../../chunk-UMBNBCL4.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-OXZDSOZV.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-7GGNFLHT.js";import"../../chunk-22I55W37.js";import"../../chunk-LUOY3A3Q.js";import"../../chunk-FYV6GZXP.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-6EDVZBUO.js";import"../../chunk-2S7PJZWH.js";import"../../chunk-LDXYMHYW.js";import"../../chunk-TOEJCZUO.js";import"../../chunk-PVBDKBJB.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-BYONFJVQ.js";import"../../chunk-QZJKWKGH.js";import"../../chunk-ERR437B5.js";import"../../chunk-JIP5JNRB.js";import"../../chunk-GR3XRILS.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6ATIYLUL.js";import"../../chunk-KO47WAWR.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-5545A3PC.js";import"../../chunk-ZIEINXSZ.js";import"../../chunk-GDO4QJ4G.js";import"../../chunk-IZGFJWH4.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SBVIW3KJ.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-CP6KQP5A.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-XFYFKITX.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-CWELHADJ.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-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-VBEVZZTV.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-MBEUSPIN.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.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 +1 @@
|
|
|
1
|
-
export{ScreenDocumentContext,ScreenDocumentProvider,useScreenDocument}from"../../chunk-
|
|
1
|
+
export{ScreenDocumentContext,ScreenDocumentProvider,useScreenDocument}from"../../chunk-BYONFJVQ.js";import"../../chunk-QZJKWKGH.js";import"../../chunk-ERR437B5.js";import"../../chunk-JIP5JNRB.js";import"../../chunk-GR3XRILS.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6ATIYLUL.js";import"../../chunk-KO47WAWR.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"../../chunk-LX23TCTP.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{DocumentScreen,ScreenMount as default}from"../../chunk-
|
|
1
|
+
export{DocumentScreen,ScreenMount as default}from"../../chunk-I3KB7LH7.js";import"../../chunk-GXQCZJOP.js";import"../../chunk-YDJZX2XS.js";import"../../chunk-IHXQZDDW.js";import"../../chunk-7OCEPOEJ.js";import"../../chunk-JYVQ62TL.js";import"../../chunk-UMBNBCL4.js";import"../../chunk-5XL2RXFU.js";import"../../chunk-OXZDSOZV.js";import"../../chunk-3QB2ZQXK.js";import"../../chunk-7GGNFLHT.js";import"../../chunk-22I55W37.js";import"../../chunk-LUOY3A3Q.js";import"../../chunk-FYV6GZXP.js";import"../../chunk-KCBEE2MC.js";import"../../chunk-6EDVZBUO.js";import"../../chunk-2S7PJZWH.js";import"../../chunk-LDXYMHYW.js";import"../../chunk-TOEJCZUO.js";import"../../chunk-PVBDKBJB.js";import"../../chunk-RKTF5XLP.js";import"../../chunk-BYONFJVQ.js";import"../../chunk-QZJKWKGH.js";import"../../chunk-ERR437B5.js";import"../../chunk-JIP5JNRB.js";import"../../chunk-GR3XRILS.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6ATIYLUL.js";import"../../chunk-KO47WAWR.js";import"../../chunk-NQW6XCAY.js";import"../../chunk-LOMEH6DG.js";import"../../chunk-5545A3PC.js";import"../../chunk-ZIEINXSZ.js";import"../../chunk-GDO4QJ4G.js";import"../../chunk-IZGFJWH4.js";import"../../chunk-N7E6264U.js";import"../../chunk-N3MJOHAG.js";import"../../chunk-SBVIW3KJ.js";import"../../chunk-UMDQ6CLQ.js";import"../../chunk-KCOBHPN6.js";import"../../chunk-RUQOIQWI.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-T2RINM7R.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-CP6KQP5A.js";import"../../chunk-YM4UEGBV.js";import"../../chunk-SNF5764Q.js";import"../../chunk-LX23TCTP.js";import"../../chunk-XFYFKITX.js";import"../../chunk-Q3VAJMXS.js";import"../../chunk-CWELHADJ.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-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-ZKY45F5G.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-P5VYGWYO.js";import"../../chunk-WK3AFPXY.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-NDRZP6YR.js";import"../../chunk-H6DDIBQ4.js";import"../../chunk-VBEVZZTV.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-MBEUSPIN.js";import"../../chunk-TQ5Y6S2X.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.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 +1 @@
|
|
|
1
|
-
export{ScreenStoreProvider as default}from"../../chunk-
|
|
1
|
+
export{ScreenStoreProvider as default}from"../../chunk-YDJZX2XS.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import{AddBlockRow as e}from"../../chunk-
|
|
2
|
-
return
|
|
3
|
-
return
|
|
4
|
-
/* @__PURE__ */
|
|
5
|
-
return
|
|
6
|
-
/* @__PURE__ */
|
|
7
|
-
/* @__PURE__ */
|
|
8
|
-
/* @__PURE__ */
|
|
9
|
-
/* @__PURE__ */
|
|
10
|
-
/* @__PURE__ */
|
|
11
|
-
return
|
|
12
|
-
/* @__PURE__ */
|
|
13
|
-
/* @__PURE__ */
|
|
14
|
-
/* @__PURE__ */
|
|
15
|
-
/* @__PURE__ */
|
|
16
|
-
/* @__PURE__ */
|
|
17
|
-
/* @__PURE__ */
|
|
1
|
+
import{AddBlockRow as e}from"../../chunk-WQXAAVCE.js";import{scrollPreviewToSection as n,gotoPreviewSlide as o}from"../../chunk-LUOY3A3Q.js";import{useEaselUndoKeys as r}from"../../chunk-FYV6GZXP.js";import{SlotChildActionsProvider as t}from"../../chunk-KCBEE2MC.js";import{DEFAULT_PANEL_W as s}from"../../chunk-6EDVZBUO.js";import{usePartBridge as i}from"../../chunk-2S7PJZWH.js";import{useSectionOps as c}from"../../chunk-LDXYMHYW.js";import{useScreenDocument as p}from"../../chunk-BYONFJVQ.js";import"../../chunk-QZJKWKGH.js";import"../../chunk-ERR437B5.js";import"../../chunk-JIP5JNRB.js";import"../../chunk-GR3XRILS.js";import"../../chunk-RLBXE4EU.js";import"../../chunk-6ATIYLUL.js";import"../../chunk-KO47WAWR.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 A}from"../../chunk-FT3O7X6U.js";import{MediaPopup as N}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-Q3VAJMXS.js";import{slotChildRowName as E}from"../../chunk-5NHQ452C.js";import"../../chunk-AJ2SUSET.js";import"../../chunk-6UAEFOJ4.js";import"../../chunk-ANPOR6EY.js";import"../../chunk-R4AUZVA3.js";import{slotFieldsOf as C,nestsInTree as P}from"../../chunk-TCAAOYQY.js";import{useEasel as x}from"../../chunk-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import{LayersTree as R,Subtree as Y,TreeRow as F,TreeRowAction as M,TreeSeam as O}from"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import{DEFAULT_TREE_WORDS as W}from"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-NDRZP6YR.js";import{DEFAULT_SAVE_WORDS as g,saveIndicator as I}from"../../chunk-H6DDIBQ4.js";import{SaveState as Q,panelWidthVars as T}from"../../chunk-VBEVZZTV.js";import"../../chunk-MJM6SFD3.js";import"../../chunk-AJSDWWJW.js";import"../../chunk-2OAZYSWJ.js";import"../../chunk-YYD257TD.js";import"../../chunk-RE4LP46F.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import{useWords as v}from"../../chunk-MFIRYGHW.js";import"../../chunk-MBEUSPIN.js";import"../../chunk-TQ5Y6S2X.js";import{useTreeDrag as B}from"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import{zoneKey as X,parseZoneKey as b}from"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.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 V,useEffect as w,useCallback as D,Fragment as Z}from"react";import{Tooltip as K}from"efficient-shell/ui";import{TrashIcon as H}from"efficient-shell/icons/efficient";import{jsxs as J,jsx as L,Fragment as U}from"react/jsx-runtime";var G=e=>n=>{n.target.closest("button, input")||e()},$={rowClick:G};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,Ae=je?.type===de,Ne=V(null),ye=V(null);r(ye),a(re?.props.id),w(()=>{fe&&Ne.current!==fe&&(Ne.current=fe,Se?ie(ae??l):re||ne.select({index:0}))},[fe,re,ne,Se]);const Ee=D(e=>ie(n=>h(n,e)?n:e),[]),Ce=k({kind:se.kind,mode:se,open:Ee,show:e=>ie(e),reveal:()=>{},select:(e,n)=>{ie(e=>h(e,n)?e:n),ne.select(e)}}),{selectNode:Pe}=i({mode:se,setMode:ie,onOpenPart:n}),xe=j(),{labelAtLevel:Re,Icon:Ye}=xe,{canAddTo:Fe}=f(),Me=e=>Re(e,"block",te.components[e]?.label??e),Oe=e=>Re(e,"section",Me(e)),We=!Se&&S(se)&&re?.props.id===fe,ge=je?Fe(je.type)?.spec??null:null,Ie=je&&ge?`${je.props.id}:${ge.slot}`:null,Qe=je&&ge&&Array.isArray(je.props[ge.slot])?je.props[ge.slot]:[],Te=e=>E(e,Me,xe.plainText),ve=(e,r)=>{je&&ge&&Ie&&(ie(l),ge.slider?(o(String(je.props.id),e),ne.select({index:e,zone:Ie}),n(String(je.props.id))):(ne.select({index:e,zone:Ie}),n(r)))},Be=()=>{if(!je||!ge||!Ie)return;const e=Qe.length;ne.insertComponent(Ie,ge.childType,e),ie(l),ge.slider?requestAnimationFrame(()=>{o(String(je.props.id),e),ne.select({index:e,zone:Ie})}):ne.select({index:e,zone:Ie})},Xe=e=>C(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 Xe(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}))},Ve=B({keyOf:e=>e.id,readOnly:Boolean(_),canDrop:(e,n)=>X(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__ */L(O,{..._?{}:Ve.seam({place:{...b(e),index:n}})},`seam:${e}:${n}`),De=e=>xe.blockRowName(e,Me),Ze=(e,o,r)=>{ie(l),ne.select({index:o,zone:e}),n(r)},Ke=(e,n,o)=>{ne.insertComponent(e,n,o),ie(l),ne.select({index:o,zone:e})},He=(n,o,r)=>/* @__PURE__ */L(e,{choices:r,onPick:e=>Ke(n,e,o)}),Je=(e,n)=>{const o=A(te,e);const r=Fe(e.type,void 0,void 0,{id:String(e.props.id??""),data:oe.data}),t=r?.choices??null,s="footer"===r?.source?De:Te;/* @__PURE__ */
|
|
2
|
+
return J(U,{children:[o.map(({child:e,zone:o,index:r})=>{const t=re?.props.id===e.props.id,i=P(te,e.type,n),c=s(e),p=String(e.props.id),m=()=>Ze(o,r,p),{rowProps:d,...u}=Ve.row({item:{id:p,zone:o,index:r},place:{...b(o),index:r}},{onClick:G(m)});/* @__PURE__ */
|
|
3
|
+
return J(Z,{children:[0===r&&we(o,0),
|
|
4
|
+
/* @__PURE__ */L(F,{words:pe,icon:/* @__PURE__ */L(Ye,{type:e.type,size:13}),name:c,selected:t,onSelect:m,...u,actions:/* @__PURE__ */L(M,{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__ */L(H,{size:13})}),rowProps:d}),i&&/* @__PURE__ */L(Y,{children:Je(e,n+1)}),we(o,r+1)]},String(e.props.id??`${o}-${r}`))}),r&&t?He(`${e.props.id}:${r.slot}`,o.length,t):null]})},Le="HeroSingle"===je?.type,Ue=Boolean(je)&&(Boolean(Fe(je.type))||Xe(je.type).length>0),Ge=Boolean(je)&&(Boolean(ge)||Ae||Se||Le||Ue);/* @__PURE__ */
|
|
5
|
+
return J("div",{ref:ye,className:"sf-editor es-editor",style:T(s),children:[
|
|
6
|
+
/* @__PURE__ */L("div",{className:"sf-section-bar",children:/* @__PURE__ */L(Q,null!==ee?{tone:"off",label:ee,role:"status"}:{...I(q,le),role:"status"})}),
|
|
7
|
+
/* @__PURE__ */J("div",{className:"sf-body",children:[Ge&&je&&/* @__PURE__ */J("aside",{className:"es-sidepanel es-sidepanel--left sf-panel sf-panel--left",children:[
|
|
8
|
+
/* @__PURE__ */L("div",{className:"sf-panel-head",children:/* @__PURE__ */L(K,{content:Se?ce.headerSettings:ce.sectionSettings({name:Oe(je.type)}),side:"bottom",children:/* @__PURE__ */L("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:Oe(je.type)})})}),
|
|
9
|
+
/* @__PURE__ */L(R,{className:"sf-tree sf-scroll",rootProps:Ve.rootProps(),words:pe,children:/* @__PURE__ */L(Y,{children:Se?
|
|
10
|
+
/* @__PURE__ */L(F,{words:pe,icon:/* @__PURE__ */L(Ye,{type:"header",size:13}),name:ce.headerSettings,selected:se.kind===ae?.kind,onSelect:()=>ie(ae??l),rowProps:{onClick:G(()=>ie(ae??l))}}):ge?/* @__PURE__ */J(U,{children:[Qe.map((e,n)=>{const o=re?.props.id===e.props.id,r=Te(e),t=String(e.props.id),s=()=>ve(n,t),{rowProps:i,...c}=Ve.row({item:{id:t,zone:Ie,index:n},place:{...b(Ie),index:n}},{onClick:G(s)});/* @__PURE__ */
|
|
11
|
+
return J(Z,{children:[0===n&&we(Ie,0),
|
|
12
|
+
/* @__PURE__ */L(F,{words:pe,icon:/* @__PURE__ */L(Ye,{type:e.type,size:13}),name:r,selected:o,onSelect:s,...c,actions:/* @__PURE__ */L(M,{kind:"delete",label:ce.deleteNamed({name:r}),onClick:()=>{return e=n,void(Ie&&(ne.removeComponent(Ie,e),ie(l),ne.select(null)));var e},children:/* @__PURE__ */L(H,{size:13})}),rowProps:i}),we(Ie,n+1)]},String(e.props.id??n))}),
|
|
13
|
+
/* @__PURE__ */J("button",{type:"button",className:"sf-add-card",onClick:Be,children:[
|
|
14
|
+
/* @__PURE__ */L("span",{className:"sf-plus sf-plus--sm",children:"+"}),ge.addLabel]}),fe?Ce.partRows?.(je,$):null]}):Je(je,1)})})]}),
|
|
15
|
+
/* @__PURE__ */L("div",{className:"sf-center",children:/* @__PURE__ */L("div",{className:"sf-preview-host",children:/* @__PURE__ */L(he,{})})}),
|
|
16
|
+
/* @__PURE__ */L(t,{value:{selectChild:(e,n,o,r)=>"section"===Fe(r)?.source?ve(n,o):Ze(e,n,o),addChild:(e,n,o,r,t)=>"section"===Fe(t)?.source?Be():Ke(`${e}:${n}`,o,r),childRowName:Te,blockRowName:De},children:/* @__PURE__ */L(ke,{mode:se,onOpenWebsiteSettings:Ce.openSettings??(()=>{}),onSelectNode:Pe,hideNodeActions:!0})})]}),
|
|
17
|
+
/* @__PURE__ */L(N,{})]})}export{q as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{usePartBridge}from"../../chunk-
|
|
1
|
+
export{usePartBridge}from"../../chunk-2S7PJZWH.js";import"../../chunk-LDXYMHYW.js";import"../../chunk-FT3O7X6U.js";import"../../chunk-NCXYC7WI.js";import"../../chunk-LX23TCTP.js";import"../../chunk-R4AUZVA3.js";import"../../chunk-TCAAOYQY.js";import"../../chunk-53ME3GAI.js";import"../../chunk-LUG22U5L.js";import"../../chunk-TBY3DFKS.js";import"../../chunk-R76XMEKT.js";import"../../chunk-BPXEFVSQ.js";import"../../chunk-YCSZAP7T.js";import"../../chunk-ZEH6QLBH.js";import"../../chunk-WHS6Y55E.js";import"../../chunk-FM6JO4WF.js";import"../../chunk-K56YDHYQ.js";import"../../chunk-56ID6FKZ.js";import"../../chunk-K53PQAMP.js";import"../../chunk-FIVU2COQ.js";import"../../chunk-QTHQPJWA.js";import"../../chunk-HZSZT3BE.js";import"../../chunk-PMRN5Z3T.js";import"../../chunk-Y2T3JX7K.js";import"../../chunk-KFWNGPW3.js";import"../../chunk-MIX7EGRG.js";import"../../chunk-DX3VILZ3.js";import"../../chunk-JACEEVVF.js";import"../../chunk-MFIRYGHW.js";import"../../chunk-3XECMGXX.js";import"../../chunk-P2VEMZH5.js";import"../../chunk-EUFDQ4KL.js";import"../../chunk-KXM6YRG2.js";import"../../chunk-TOKMFZPB.js";import"../../chunk-FR7EEKFF.js";import"../../chunk-7UFKEX72.js";import"../../chunk-467WWV4I.js";import"../../chunk-TIAWIOGD.js";import"../../chunk-MGVI67QV.js";
|
package/dist/screen/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-
|
|
1
|
+
import"../chunk-GZO72N3Q.js";export{DocumentScreen,ScreenMount}from"../chunk-I3KB7LH7.js";import"../chunk-GXQCZJOP.js";export{ScreenStoreProvider}from"../chunk-YDJZX2XS.js";import"../chunk-IHXQZDDW.js";import"../chunk-7OCEPOEJ.js";import"../chunk-JYVQ62TL.js";import"../chunk-UMBNBCL4.js";import"../chunk-5XL2RXFU.js";import"../chunk-OXZDSOZV.js";import"../chunk-3QB2ZQXK.js";import"../chunk-7GGNFLHT.js";import"../chunk-22I55W37.js";import"../chunk-LUOY3A3Q.js";import"../chunk-FYV6GZXP.js";import"../chunk-KCBEE2MC.js";import"../chunk-6EDVZBUO.js";import"../chunk-2S7PJZWH.js";import"../chunk-LDXYMHYW.js";import"../chunk-TOEJCZUO.js";import"../chunk-PVBDKBJB.js";import"../chunk-RKTF5XLP.js";import"../chunk-BYONFJVQ.js";import"../chunk-QZJKWKGH.js";import"../chunk-ERR437B5.js";import"../chunk-JIP5JNRB.js";import"../chunk-GR3XRILS.js";export{NO_DOCUMENT_ADDRESSING}from"../chunk-RLBXE4EU.js";import"../chunk-6ATIYLUL.js";import"../chunk-KO47WAWR.js";import"../chunk-NQW6XCAY.js";import"../chunk-LOMEH6DG.js";import"../chunk-5545A3PC.js";import"../chunk-ZIEINXSZ.js";import"../chunk-GDO4QJ4G.js";import"../chunk-IZGFJWH4.js";import"../chunk-N7E6264U.js";import"../chunk-N3MJOHAG.js";import"../chunk-SBVIW3KJ.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-FT3O7X6U.js";import"../chunk-T2RINM7R.js";import"../chunk-NCXYC7WI.js";import"../chunk-CP6KQP5A.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-Q3VAJMXS.js";import"../chunk-CWELHADJ.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-53ME3GAI.js";import"../chunk-LUG22U5L.js";import"../chunk-TBY3DFKS.js";import"../chunk-R76XMEKT.js";import"../chunk-BPXEFVSQ.js";import"../chunk-YCSZAP7T.js";import"../chunk-ZEH6QLBH.js";import"../chunk-WHS6Y55E.js";import"../chunk-FM6JO4WF.js";import"../chunk-K56YDHYQ.js";import"../chunk-56ID6FKZ.js";import"../chunk-K53PQAMP.js";import"../chunk-ZKY45F5G.js";import"../chunk-FIVU2COQ.js";import"../chunk-P5VYGWYO.js";import"../chunk-WK3AFPXY.js";import"../chunk-QTHQPJWA.js";import"../chunk-NDRZP6YR.js";import"../chunk-H6DDIBQ4.js";import"../chunk-VBEVZZTV.js";import"../chunk-MJM6SFD3.js";import"../chunk-AJSDWWJW.js";import"../chunk-2OAZYSWJ.js";import"../chunk-YYD257TD.js";import"../chunk-RE4LP46F.js";import"../chunk-HZSZT3BE.js";import"../chunk-PMRN5Z3T.js";import"../chunk-Y2T3JX7K.js";import"../chunk-KFWNGPW3.js";import"../chunk-MIX7EGRG.js";import"../chunk-DX3VILZ3.js";import"../chunk-JACEEVVF.js";import"../chunk-MFIRYGHW.js";import"../chunk-MBEUSPIN.js";import"../chunk-TQ5Y6S2X.js";import"../chunk-3XECMGXX.js";import"../chunk-P2VEMZH5.js";import"../chunk-EUFDQ4KL.js";import"../chunk-KXM6YRG2.js";import"../chunk-TOKMFZPB.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";
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Block size — the values the Size group and the Text group's `When the text
|
|
3
|
+
* does not fit` row store on a block, ONE copy for both editors and for the
|
|
4
|
+
* page that draws them (plan [PLAN] Fill Editor Gaps Both Ways, step E-S).
|
|
5
|
+
*
|
|
6
|
+
* Lewis approved the design on 2026-10-29 (mockup c25-gaps-2026-10-29, row 4).
|
|
7
|
+
* Every block a Box holds has:
|
|
8
|
+
*
|
|
9
|
+
* Width Fit content / Fill / Fixed (`widthFit`; `width` px when Fixed)
|
|
10
|
+
* Min width the narrowest the block gets (`minWidth`)
|
|
11
|
+
* Content width the widest it gets (`maxWidth`, N10.1: never "max width")
|
|
12
|
+
* When the text does not fit Wrap / Shrink to fit (`textFit`)
|
|
13
|
+
* Min font size the smallest Shrink to fit goes (`minFont`)
|
|
14
|
+
*
|
|
15
|
+
* The email Button's Width and Min width are this group too (Lewis
|
|
16
|
+
* 2026-10-30, "Button width = web Size group").
|
|
17
|
+
*
|
|
18
|
+
* PURE: no React, no import. A host's published render code reads it through
|
|
19
|
+
* `efficient-easel/draw`; the rows are `screen/lib/document/block-size-fields`.
|
|
20
|
+
* What each value DRAWS (classes, custom properties) stays the host's.
|
|
21
|
+
*/
|
|
22
|
+
/** The Width row's three choices. `fit` is what every block already draws. */
|
|
23
|
+
declare const BLOCK_WIDTH_FIT_POINTS: readonly [{
|
|
24
|
+
readonly label: "Fit content";
|
|
25
|
+
readonly value: "fit";
|
|
26
|
+
}, {
|
|
27
|
+
readonly label: "Fill";
|
|
28
|
+
readonly value: "fill";
|
|
29
|
+
}, {
|
|
30
|
+
readonly label: "Fixed";
|
|
31
|
+
readonly value: "fixed";
|
|
32
|
+
}];
|
|
33
|
+
type BlockWidthFit = (typeof BLOCK_WIDTH_FIT_POINTS)[number]['value'];
|
|
34
|
+
/** What an unset Width draws. */
|
|
35
|
+
declare const BLOCK_WIDTH_FIT_DEFAULT: BlockWidthFit;
|
|
36
|
+
/** A stored Width, or `undefined` for nothing (or a word nobody knows). */
|
|
37
|
+
declare function parseBlockWidthFit(value: unknown): BlockWidthFit | undefined;
|
|
38
|
+
/** The Fixed px row: its track, and the number a Fixed block with no number
|
|
39
|
+
* draws (and the knob rests on), 480 as the approved mockup shows. */
|
|
40
|
+
declare const BLOCK_FIXED_WIDTH: {
|
|
41
|
+
readonly min: 40;
|
|
42
|
+
readonly max: 2000;
|
|
43
|
+
readonly step: 10;
|
|
44
|
+
readonly fallback: 480;
|
|
45
|
+
};
|
|
46
|
+
/** The Min width and Content width rows' track. 2000 is the widest page. */
|
|
47
|
+
declare const BLOCK_WIDTH_LIMIT: {
|
|
48
|
+
readonly min: 40;
|
|
49
|
+
readonly max: 2000;
|
|
50
|
+
readonly step: 10;
|
|
51
|
+
};
|
|
52
|
+
/** The text-fit row's two choices. */
|
|
53
|
+
declare const TEXT_FIT_POINTS: readonly [{
|
|
54
|
+
readonly label: "Wrap";
|
|
55
|
+
readonly value: "wrap";
|
|
56
|
+
}, {
|
|
57
|
+
readonly label: "Shrink to fit";
|
|
58
|
+
readonly value: "shrink";
|
|
59
|
+
}];
|
|
60
|
+
type TextFit = (typeof TEXT_FIT_POINTS)[number]['value'];
|
|
61
|
+
/** A stored text fit, or `undefined`. */
|
|
62
|
+
declare function parseTextFit(value: unknown): TextFit | undefined;
|
|
63
|
+
/** The Min font size row. 16 is the word fit's own floor. */
|
|
64
|
+
declare const TEXT_FIT_MIN_FONT: {
|
|
65
|
+
readonly min: 8;
|
|
66
|
+
readonly max: 120;
|
|
67
|
+
readonly step: 1;
|
|
68
|
+
readonly fallback: 16;
|
|
69
|
+
};
|
|
70
|
+
/** The stored keys, desktop names (each has its phone twin). */
|
|
71
|
+
declare const BLOCK_SIZE_KEYS: readonly ["widthFit", "width", "minWidth", "maxWidth", "textFit", "minFont"];
|
|
72
|
+
type BlockSizeKey = (typeof BLOCK_SIZE_KEYS)[number];
|
|
73
|
+
|
|
74
|
+
export { BLOCK_FIXED_WIDTH, BLOCK_SIZE_KEYS, BLOCK_WIDTH_FIT_DEFAULT, BLOCK_WIDTH_FIT_POINTS, BLOCK_WIDTH_LIMIT, type BlockSizeKey, type BlockWidthFit, TEXT_FIT_MIN_FONT, TEXT_FIT_POINTS, type TextFit, parseBlockWidthFit, parseTextFit };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{BLOCK_FIXED_WIDTH,BLOCK_SIZE_KEYS,BLOCK_WIDTH_FIT_DEFAULT,BLOCK_WIDTH_FIT_POINTS,BLOCK_WIDTH_LIMIT,TEXT_FIT_MIN_FONT,TEXT_FIT_POINTS,parseBlockWidthFit,parseTextFit}from"../../../chunk-X3EMJ2EX.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{boxFieldSet as o}from"../../../chunk-
|
|
1
|
+
import{buttonFieldSet as e}from"../../../chunk-FIH23CB7.js";import"../../../chunk-ZJRMB5KN.js";import{boxFieldSet as o}from"../../../chunk-M5IKANJ5.js";import"../../../chunk-CLAADE4J.js";import"../../../chunk-2T22IY3J.js";import"../../../chunk-7GGNFLHT.js";import"../../../chunk-22I55W37.js";import"../../../chunk-LX23TCTP.js";import"../../../chunk-Q3VAJMXS.js";import"../../../chunk-CWELHADJ.js";import"../../../chunk-6WY6ZXJG.js";import{phoneKey as t}from"../../../chunk-E52W3M5I.js";import{foldMetaOf as n}from"../../../chunk-ANPOR6EY.js";import"../../../chunk-53ME3GAI.js";import"../../../chunk-LUG22U5L.js";import"../../../chunk-TBY3DFKS.js";import"../../../chunk-YCSZAP7T.js";import"../../../chunk-FM6JO4WF.js";import"../../../chunk-56ID6FKZ.js";import"../../../chunk-K53PQAMP.js";import"../../../chunk-QTHQPJWA.js";import"../../../chunk-OECWLNKJ.js";import"../../../chunk-HZSZT3BE.js";import"../../../chunk-PMRN5Z3T.js";import"../../../chunk-KFWNGPW3.js";import"../../../chunk-MIX7EGRG.js";import"../../../chunk-DX3VILZ3.js";import"../../../chunk-JACEEVVF.js";import"../../../chunk-MFIRYGHW.js";import"../../../chunk-EUFDQ4KL.js";import"../../../chunk-KXM6YRG2.js";import"../../../chunk-TOKMFZPB.js";import"../../../chunk-FR7EEKFF.js";import"../../../chunk-7UFKEX72.js";import"../../../chunk-BSPCSC45.js";function s(e){return Object.keys(e).filter(o=>{return t=e[o],!(null!==n(t));var t})}function r(e,o){const t=o.off??{},s=o.keys??{};for(const[e,o]of Object.entries(t))if(!o.trim())throw new Error(`blockSetFor: off row "${e}" needs a reason.`);for(const o of[...Object.keys(t),...Object.keys(s)]){if(!Object.hasOwn(e,o))throw new Error(`blockSetFor: the set has no row "${o}".`);if(Object.hasOwn(t,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=n(c);if(a){i=i.filter(([,e])=>n(e).level<a.level),i.push([o,c]);continue}if(Object.hasOwn(t,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=>[t(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};
|