From f14cd851789e31bd40c84c3231795d07806a3bb0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2026 20:35:48 +0000 Subject: [PATCH] Version Packages --- .changeset/storefront-extensibility.md | 12 ------------ packages/commerce-storefront/CHANGELOG.md | 13 +++++++++++++ packages/commerce-storefront/package.json | 2 +- 3 files changed, 14 insertions(+), 13 deletions(-) delete mode 100644 .changeset/storefront-extensibility.md diff --git a/.changeset/storefront-extensibility.md b/.changeset/storefront-extensibility.md deleted file mode 100644 index 93f8f3f5..00000000 --- a/.changeset/storefront-extensibility.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"@godaddy/gd-commerce-storefront": minor ---- - -Make the storefront parts more extensible without reimplementing their rules. - -- `ProductDetailsRoot` takes a `productId` prop, which falls back to the route's `:productId`, so a product can render in a quick view or outside its route. `urlState={false}` keeps that root's selection out of the page URL, so two roots on one page no longer share a selection. `loading`, `notFound` and `error` replace those states. A root with no product ID now shows the not-found state without requesting `/products/`, and warns in development. -- `CatalogRoot` and `Catalog` take `pageSize`, which defaults to 6. `CatalogRoot` takes `urlState={false}` for a second catalog on a page. `CatalogEmpty` renders a custom empty state, like `CartEmpty`. -- `CartButton`, `AddToCartButton`, `ProductDetailsAddToCart`, `ProductCardAction`, `CartCheckout`, `CartItemRemove`, `CartTitle`, `CartDescription` and `ProductDetailsBackLink` take replacement text as children, or a function of the part's state, such as `({ busy }) => …`. The controls keep their behavior, and a replaced label stays the start of the accessible name. `CartItemRemove` now names its line with visually hidden text instead of `aria-label`; its accessible name is unchanged. -- `CommerceProvider` and `CommerceStorefront` take `locale` for price formatting, which defaults to `en-US`; an invalid tag falls back to it. `locale` only formats; localized UI text will be a separate opt-in prop. `useMoney()` formats prices in that locale for custom parts, `money()` takes an optional locale, and `ProductImage` is exported. `ProductImage` now loads a new `url` after an earlier one failed, instead of keeping the placeholder. -- `onEvent` reports `item-added`, `quantity-changed`, `item-removed`, `discount-applied`, `checkout-started` and `error` events. A host callback that throws or rejects, including `onItemAdded`, is now logged instead of failing the cart operation and showing its message as a cart error. -- Every part's outer element has a stable `data-commerce-part` attribute, such as `cart-checkout`, documented as a styling hook. No elements are added or removed. diff --git a/packages/commerce-storefront/CHANGELOG.md b/packages/commerce-storefront/CHANGELOG.md index 0daa1072..57e2f01e 100644 --- a/packages/commerce-storefront/CHANGELOG.md +++ b/packages/commerce-storefront/CHANGELOG.md @@ -1,5 +1,18 @@ # @godaddy/gd-commerce-storefront +## 0.6.0 + +### Minor Changes + +- 1958f0a: Make the storefront parts more extensible without reimplementing their rules. + + - `ProductDetailsRoot` takes a `productId` prop, which falls back to the route's `:productId`, so a product can render in a quick view or outside its route. `urlState={false}` keeps that root's selection out of the page URL, so two roots on one page no longer share a selection. `loading`, `notFound` and `error` replace those states. A root with no product ID now shows the not-found state without requesting `/products/`, and warns in development. + - `CatalogRoot` and `Catalog` take `pageSize`, which defaults to 6. `CatalogRoot` takes `urlState={false}` for a second catalog on a page. `CatalogEmpty` renders a custom empty state, like `CartEmpty`. + - `CartButton`, `AddToCartButton`, `ProductDetailsAddToCart`, `ProductCardAction`, `CartCheckout`, `CartItemRemove`, `CartTitle`, `CartDescription` and `ProductDetailsBackLink` take replacement text as children, or a function of the part's state, such as `({ busy }) => …`. The controls keep their behavior, and a replaced label stays the start of the accessible name. `CartItemRemove` now names its line with visually hidden text instead of `aria-label`; its accessible name is unchanged. + - `CommerceProvider` and `CommerceStorefront` take `locale` for price formatting, which defaults to `en-US`; an invalid tag falls back to it. `locale` only formats; localized UI text will be a separate opt-in prop. `useMoney()` formats prices in that locale for custom parts, `money()` takes an optional locale, and `ProductImage` is exported. `ProductImage` now loads a new `url` after an earlier one failed, instead of keeping the placeholder. + - `onEvent` reports `item-added`, `quantity-changed`, `item-removed`, `discount-applied`, `checkout-started` and `error` events. A host callback that throws or rejects, including `onItemAdded`, is now logged instead of failing the cart operation and showing its message as a cart error. + - Every part's outer element has a stable `data-commerce-part` attribute, such as `cart-checkout`, documented as a styling hook. No elements are added or removed. + ## 0.5.0 ### Minor Changes diff --git a/packages/commerce-storefront/package.json b/packages/commerce-storefront/package.json index b4a22591..8f2f97ef 100644 --- a/packages/commerce-storefront/package.json +++ b/packages/commerce-storefront/package.json @@ -1,6 +1,6 @@ { "name": "@godaddy/gd-commerce-storefront", - "version": "0.5.0", + "version": "0.6.0", "description": "Opinionated React storefront templates for GoDaddy Commerce", "type": "module", "license": "MIT",