storefront-layouts 1.0.0 → 1.0.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/README.md CHANGED
@@ -2,9 +2,7 @@
2
2
 
3
3
  A comprehensive package of shared layout components, utilities, and services for Storefront applications. This package contains all layout components, UI components, hooks, contexts, and utility functions used across Payaza Storefront applications.
4
4
 
5
- **This is the production package** - built from the `main` branch and wired to Payaza's production checkout SDK. For testing/staging only, use [`storefront-layouts-staging`](https://www.npmjs.com/package/storefront-layouts-staging) (built from `development`) instead - do not use it in production. See [Releasing](#releasing) below for how the two relate.
6
-
7
- > An unrelated `payaza-storefront-layouts` package previously existed on npm, published from an account that wasn't authorized to represent this project. It is not affiliated with this repo - use `storefront-layouts` above.
5
+ **This is the staging package** - built from the `development` branch and wired to Payaza's staging checkout SDK. Do not use it in production; use [`storefront-layouts`](https://www.npmjs.com/package/storefront-layouts) (built from `main`) instead. See [Releasing](#releasing) below for how the two relate.
8
6
 
9
7
  ## Overview
10
8
 
@@ -533,7 +531,7 @@ Layouts are designed to work with dynamic data:
533
531
  ## Releasing
534
532
 
535
533
  - **Staging**: every push to `development` publishes a new `storefront-layouts-staging` prerelease automatically - no manual steps.
536
- - **Production**: on a PR into `development`, run `npx changeset add`, pick patch/minor/major, and write a one-line summary; commit the generated `.changeset/*.md` file with your PR. Once your change reaches `main` (via the `development` `main` promotion), a bot-authored "Version Packages" PR appears aggregating all pending changesets into a version bump and changelog entry. Merging that PR triggers the real `npm publish` to `storefront-layouts` (`latest` tag) - no manual version edits or `npm publish` needed.
534
+ - **Production**: every merge into `main` publishes a new patch version of `storefront-layouts` (`latest` tag) automatically - no manual version edits, changesets, or `npm publish` needed. The workflow reads the version currently on npm, bumps it by one patch, and publishes that. If you need a minor or major bump instead, run `npm version minor|major` on `main` yourself right after a merge - the next automated run will patch forward from whatever it finds published.
537
535
 
538
536
  Check current published versions with `npm view storefront-layouts dist-tags` / `npm view storefront-layouts-staging dist-tags`.
539
537
 
@@ -328,7 +328,7 @@ export function FoodHomePage({ storeConfig: initialConfig }) {
328
328
  { title: "We Cook It Fresh", description: "Our expert chefs prepare your order using the finest, freshest ingredients.", icon: "ChefHat" },
329
329
  { title: "Fast Delivery", description: "Receive your hot and delicious meal at your doorstep in record time.", icon: "Truck" }
330
330
  ];
331
- const steps = layoutConfig?.sections?.process?.steps || defaultSteps;
331
+ const steps = (layoutConfig?.sections?.process?.steps || defaultSteps).filter(Boolean);
332
332
  return steps.map((step, idx) => {
333
333
  return (_jsxs("div", { className: "flex flex-col items-center text-center group", children: [_jsxs("div", { className: "w-32 h-32 rounded-[2rem] bg-white flex items-center justify-center mb-8 shadow-[0_20px_50px_rgba(0,0,0,0.05)] group-hover:shadow-[0_20px_50px_rgba(249,115,22,0.15)] group-hover:-translate-y-2 transition-all duration-500 relative z-10 border border-gray-100", children: [_jsx("div", { className: "p-4 bg-orange-50 rounded-2xl group-hover:bg-orange-100 transition-colors duration-500", ...payazaIconBindingProps(!!isPreview, 'process', ['steps', String(idx), 'icon']), children: _jsx(DynamicIcon, { name: step.icon || 'Utensils', className: "h-10 w-10 text-orange-500 group-hover:scale-110 transition-transform duration-500" }) }), _jsx("div", { className: "absolute -top-3 -right-3 w-8 h-8 bg-orange-500 rounded-full flex items-center justify-center text-white font-bold text-sm shadow-lg", children: idx + 1 })] }), _jsx("h3", { className: "text-2xl font-bold text-gray-900 mb-4", "data-payaza-edit": payaza('process', ['steps', String(idx), 'title']), children: step.title }), _jsx("p", { className: "text-gray-500 leading-relaxed max-w-xs font-medium", "data-payaza-edit": payaza('process', ['steps', String(idx), 'description']), children: step.description })] }, idx));
334
334
  });
@@ -377,7 +377,7 @@ export function FoodHomePage({ storeConfig: initialConfig }) {
377
377
  { title: "Quick Confirmation", description: "Instant booking confirmation", icon: "Clock" },
378
378
  { title: "Special Occasions", description: "Perfect for celebrations", icon: "Award" }
379
379
  ];
380
- const features = layoutConfig?.sections?.reservation?.features || defaultFeatures;
380
+ const features = (layoutConfig?.sections?.reservation?.features || defaultFeatures).filter(Boolean);
381
381
  if (layoutConfig?.sections?.reservation?.showFeatures === false)
382
382
  return null;
383
383
  return features.map((feature, idx) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "storefront-layouts",
3
- "version": "1.0.0",
3
+ "version": "1.0.3",
4
4
  "lts": true,
5
5
  "type": "module",
6
6
  "description": "Shared layout components for Storefront applications",