efficient-storefront-blocks 0.32.1 → 0.32.3
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/CHANGELOG.md +56 -0
- package/dist/chunks/{PreviewFooter-3KWULEUT.js → PreviewFooter-75XBI3I3.js} +1 -1
- package/dist/chunks/chunk-YHLJWKG3.js +154 -0
- package/dist/chunks/{render-client-QD2X7XEJ.js → render-client-NWNOZCRO.js} +1 -1
- package/dist/index.js +2 -2
- package/dist/words.d.ts +1 -0
- package/dist/words.js +1 -1
- package/package.json +1 -1
- package/dist/chunks/chunk-NT4DZ7W3.js +0 -154
- /package/dist/chunks/{chunk-NT4DZ7W3.js.LEGAL.txt → chunk-YHLJWKG3.js.LEGAL.txt} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,61 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.32.3 — 2026-10-15
|
|
4
|
+
|
|
5
|
+
**Every lightbox opens above the header, and ✕ closes it** (card [ADD] INOVIT
|
|
6
|
+
And Hartes Metal US Websites). On hartesmetal.com's wheel pages the owner
|
|
7
|
+
photos ("Out there.", a Gallery B grid) opened a lightbox whose ✕ sat under the
|
|
8
|
+
fixed site header: pressing it hit the header's logo and opened the homepage,
|
|
9
|
+
at 1440 and on a 390 phone. The dialog said `z-[100]` and the header `z-50`,
|
|
10
|
+
but the dialog was drawn inside its section, which is `relative z-[2]`, and a
|
|
11
|
+
z-index only orders things inside one stacking context.
|
|
12
|
+
|
|
13
|
+
- **One lightbox frame**, `components/Lightbox` (+ `LightboxClose`). The three
|
|
14
|
+
lightboxes each had their own copy of the overlay: the wheel page's image
|
|
15
|
+
viewer (`ProductLightbox`), /gallery's (`GalleryShowcase`) and the
|
|
16
|
+
owner-photo grid's (`GalleryItem`). Each keeps its own content and look; the
|
|
17
|
+
frame now owns what they must do alike:
|
|
18
|
+
- drawn through a portal at the end of the themed `<main>`, out of every
|
|
19
|
+
section, and carrying its section's theme with it (on `<body>` the
|
|
20
|
+
site's accent and faces would be lost);
|
|
21
|
+
- its layer is the named token `--sf-layer-lightbox` (app/globals.css, a
|
|
22
|
+
step of 100; the value is the 100 they wrote by hand, so nothing
|
|
23
|
+
re-orders);
|
|
24
|
+
- ✕, Esc and a click on the backdrop close it; ◁ / ▷ keys flip photos;
|
|
25
|
+
- focus moves in, Tab cannot leave, and focus goes back to the tile that
|
|
26
|
+
opened it (none of the three did this before);
|
|
27
|
+
- the page behind does not scroll.
|
|
28
|
+
- `useLightbox` is state only now; its Esc and scroll lock moved into the frame.
|
|
29
|
+
- `react-dom` is a declared peer of the source (the npm package already had it).
|
|
30
|
+
- Guard: `scripts/test-lightbox-above-the-header.tsx` mounts all three inside a
|
|
31
|
+
`z-index: 2` section beside a fixed `z-index: 50` header.
|
|
32
|
+
|
|
33
|
+
## 0.32.2 — 2026-10-15
|
|
34
|
+
|
|
35
|
+
**A hand-picked Product Grid draws its wheels on the published page** (card
|
|
36
|
+
[FIX] Hand-Picked Grid Draws Its Wheels; plan
|
|
37
|
+
`_desk/plans/2026-10-15-hand-picked-grid.md`, PR 1 of 3). hartesmetal.com's
|
|
38
|
+
homepage grid (slots `754`, `711`, `747`) drew three grey boxes printing the
|
|
39
|
+
codes. The backend had found the wheels and put them on the GRID as
|
|
40
|
+
`props.wheels`; nothing handed them to the slots, and a slot matched its code
|
|
41
|
+
on `slug` alone (`754` is Crossbow's design code, its slug is `crossbow`).
|
|
42
|
+
|
|
43
|
+
- **One rule for a slot, editor and live alike**: `wheelForCode(pool, code)`
|
|
44
|
+
(`components/ProductRef`) — the wheel's `designCode` first, then its `slug`.
|
|
45
|
+
The editor's pool is the site's catalog, as before; the published page's is
|
|
46
|
+
the section's `props.wheels`, handed to the slots by the new
|
|
47
|
+
`SectionWheelsProvider`.
|
|
48
|
+
- **`WheelSummary.designCode`** (optional) in the generated API types — the
|
|
49
|
+
storefront's `openapi.yml` gains the same line in PR 2, which regenerates to
|
|
50
|
+
this file byte for byte. Until the backend sends it (PR 3), a slot holding a
|
|
51
|
+
SLUG draws now and one holding a design code draws once the backend ships.
|
|
52
|
+
- **On a published page, a slot whose code found no wheel draws nothing** (GG,
|
|
53
|
+
2026-10-15) — the backend drops a hidden, deleted or other-site code on
|
|
54
|
+
purpose, and a shopper must not see a box printing it. The editor keeps its
|
|
55
|
+
placeholder box.
|
|
56
|
+
- Guard: `scripts/test-hand-picked-grid-live.tsx`, over the grid exactly as
|
|
57
|
+
production served it (`scripts/fixtures/hartes-us-hand-picked-grid.json`).
|
|
58
|
+
|
|
3
59
|
## 0.32.1 — 2026-10-15
|
|
4
60
|
|
|
5
61
|
**A wheel card is the same card at rest and on hover** (card [FIX] Wheel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{ba as p,l as m}from"./chunk-
|
|
1
|
+
"use client";import{ba as p,l as m}from"./chunk-YHLJWKG3.js";import{Pc as u,Pd as d,jg as c}from"./chunk-QOXKQV6L.js";import"./chunk-GD6ZFQC7.js";import"./chunk-NEQXU52M.js";import{Ga as s,La as a,Ma as f,Qa as g}from"./chunk-IKG5YKP7.js";import"./chunk-VBQY6H55.js";import"./chunk-Y6SLVHK3.js";import{Render as P}from"efficient-easel/render";import{jsx as k}from"react/jsx-runtime";function i({footerBlock:r,rootProps:e,headerSettings:o,siteName:t,legalName:l,foundedYear:n,socialLinks:v}){let I=m({root:{props:{...e??{},kind:d}},content:[r],zones:{}});return k(s.Provider,{value:{logoUrl:o?.logoUrl??null,logoReversed:o?.logoReversed??null,logoInkIsDark:o?.logoInkIsDark??null,siteName:t,legalName:l??null,foundedYear:n??null,socialLinks:v??g},children:k(P,{config:p,data:I})})}import{jsx as h}from"react/jsx-runtime";function F(){let{footerBlock:r,editFooter:e}=c(),{settings:o,websiteName:t}=a();if(!r)return null;let l=o?{logoUrl:o.logoUrl,logoReversed:o.logoReversed??null,logoInkIsDark:o.logoInkIsDark??null}:null;return h("div",{className:"sf-preview-footer-pick",onClick:e?n=>{n.stopPropagation(),e()}:void 0,style:e?{cursor:"pointer"}:void 0,title:e?u("Edit the site footer \u2192"):void 0,children:h(i,{footerBlock:r,headerSettings:l,siteName:t?.trim()||f})})}export{F as default};
|