@shopify/create-hydrogen 5.0.30 → 5.0.31
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/dist/assets/hydrogen/starter/CHANGELOG.md +13 -0
- package/dist/assets/hydrogen/starter/app/components/PaginatedResourceSection.tsx +24 -4
- package/dist/assets/hydrogen/starter/app/components/ProductPrice.tsx +1 -1
- package/dist/assets/hydrogen/starter/app/routes/account.addresses.tsx +1 -1
- package/dist/assets/hydrogen/starter/package.json +3 -3
- package/dist/assets/hydrogen/starter/storefrontapi.generated.d.ts +0 -11
- package/package.json +1 -1
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# skeleton
|
|
2
2
|
|
|
3
|
+
## 2026.1.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Improve screen reader experience for paginated product grids by hiding decorative arrow characters from assistive technology. ([#3557](https://github.com/Shopify/hydrogen/pull/3557)) by [@itsjustriley](https://github.com/itsjustriley)
|
|
8
|
+
|
|
9
|
+
- Fix broken `aria-label` on territory code input in address form. The label was the raw developer string `"territoryCode"` instead of a human-readable `"Country code"`. ([#3607](https://github.com/Shopify/hydrogen/pull/3607)) by [@itsjustriley](https://github.com/itsjustriley)
|
|
10
|
+
|
|
11
|
+
- Add aria-label to ProductPrice for improved screen reader accessibility ([#3558](https://github.com/Shopify/hydrogen/pull/3558)) by [@itsjustriley](https://github.com/itsjustriley)
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [[`108243003a7f36349a446478f4e8ab0cade3e13a`](https://github.com/Shopify/hydrogen/commit/108243003a7f36349a446478f4e8ab0cade3e13a)]:
|
|
14
|
+
- @shopify/hydrogen@2026.1.3
|
|
15
|
+
|
|
3
16
|
## 2026.1.2
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -2,15 +2,17 @@ import * as React from 'react';
|
|
|
2
2
|
import {Pagination} from '@shopify/hydrogen';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
* <PaginatedResourceSection
|
|
5
|
+
* <PaginatedResourceSection> encapsulates the previous and next pagination behaviors throughout your application.
|
|
6
6
|
*/
|
|
7
7
|
export function PaginatedResourceSection<NodesType>({
|
|
8
8
|
connection,
|
|
9
9
|
children,
|
|
10
|
+
ariaLabel,
|
|
10
11
|
resourcesClassName,
|
|
11
12
|
}: {
|
|
12
13
|
connection: React.ComponentProps<typeof Pagination<NodesType>>['connection'];
|
|
13
14
|
children: React.FunctionComponent<{node: NodesType; index: number}>;
|
|
15
|
+
ariaLabel?: string;
|
|
14
16
|
resourcesClassName?: string;
|
|
15
17
|
}) {
|
|
16
18
|
return (
|
|
@@ -23,15 +25,33 @@ export function PaginatedResourceSection<NodesType>({
|
|
|
23
25
|
return (
|
|
24
26
|
<div>
|
|
25
27
|
<PreviousLink>
|
|
26
|
-
{isLoading ?
|
|
28
|
+
{isLoading ? (
|
|
29
|
+
'Loading...'
|
|
30
|
+
) : (
|
|
31
|
+
<span>
|
|
32
|
+
<span aria-hidden="true">↑</span> Load previous
|
|
33
|
+
</span>
|
|
34
|
+
)}
|
|
27
35
|
</PreviousLink>
|
|
28
36
|
{resourcesClassName ? (
|
|
29
|
-
<div
|
|
37
|
+
<div
|
|
38
|
+
aria-label={ariaLabel}
|
|
39
|
+
className={resourcesClassName}
|
|
40
|
+
role={ariaLabel ? 'region' : undefined}
|
|
41
|
+
>
|
|
42
|
+
{resourcesMarkup}
|
|
43
|
+
</div>
|
|
30
44
|
) : (
|
|
31
45
|
resourcesMarkup
|
|
32
46
|
)}
|
|
33
47
|
<NextLink>
|
|
34
|
-
{isLoading ?
|
|
48
|
+
{isLoading ? (
|
|
49
|
+
'Loading...'
|
|
50
|
+
) : (
|
|
51
|
+
<span>
|
|
52
|
+
Load more <span aria-hidden="true">↓</span>
|
|
53
|
+
</span>
|
|
54
|
+
)}
|
|
35
55
|
</NextLink>
|
|
36
56
|
</div>
|
|
37
57
|
);
|
|
@@ -9,7 +9,7 @@ export function ProductPrice({
|
|
|
9
9
|
compareAtPrice?: MoneyV2 | null;
|
|
10
10
|
}) {
|
|
11
11
|
return (
|
|
12
|
-
<div className="product-price">
|
|
12
|
+
<div aria-label="Price" className="product-price" role="group">
|
|
13
13
|
{compareAtPrice ? (
|
|
14
14
|
<div className="product-price-on-sale">
|
|
15
15
|
{price ? <Money data={price} /> : null}
|
|
@@ -468,7 +468,7 @@ export function AddressForm({
|
|
|
468
468
|
/>
|
|
469
469
|
<label htmlFor="territoryCode">Country Code*</label>
|
|
470
470
|
<input
|
|
471
|
-
aria-label="
|
|
471
|
+
aria-label="Country code"
|
|
472
472
|
autoComplete="country"
|
|
473
473
|
defaultValue={address?.territoryCode ?? ''}
|
|
474
474
|
id="territoryCode"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "skeleton",
|
|
3
3
|
"private": true,
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "2026.1.
|
|
5
|
+
"version": "2026.1.3",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "shopify hydrogen build --codegen",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
},
|
|
15
15
|
"prettier": "@shopify/prettier-config",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@shopify/hydrogen": "2026.1.
|
|
17
|
+
"@shopify/hydrogen": "2026.1.3",
|
|
18
18
|
"graphql": "^16.10.0",
|
|
19
19
|
"graphql-tag": "^2.12.6",
|
|
20
20
|
"isbot": "^5.1.22",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"@react-router/fs-routes": "7.12.0",
|
|
33
33
|
"@shopify/cli": "3.91.1",
|
|
34
34
|
"@shopify/hydrogen-codegen": "0.3.3",
|
|
35
|
-
"@shopify/mini-oxygen": "4.0.
|
|
35
|
+
"@shopify/mini-oxygen": "4.0.2",
|
|
36
36
|
"@shopify/oxygen-workers-types": "^4.1.6",
|
|
37
37
|
"@shopify/prettier-config": "^1.1.2",
|
|
38
38
|
"@total-typescript/ts-reset": "^0.6.1",
|
|
@@ -377,13 +377,6 @@ export type FooterQuery = {
|
|
|
377
377
|
>;
|
|
378
378
|
};
|
|
379
379
|
|
|
380
|
-
export type StoreRobotsQueryVariables = StorefrontAPI.Exact<{
|
|
381
|
-
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
|
|
382
|
-
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
|
|
383
|
-
}>;
|
|
384
|
-
|
|
385
|
-
export type StoreRobotsQuery = {shop: Pick<StorefrontAPI.Shop, 'id'>};
|
|
386
|
-
|
|
387
380
|
export type FeaturedCollectionFragment = Pick<
|
|
388
381
|
StorefrontAPI.Collection,
|
|
389
382
|
'id' | 'title' | 'handle'
|
|
@@ -1283,10 +1276,6 @@ interface GeneratedQueryTypes {
|
|
|
1283
1276
|
return: FooterQuery;
|
|
1284
1277
|
variables: FooterQueryVariables;
|
|
1285
1278
|
};
|
|
1286
|
-
'#graphql\n query StoreRobots($country: CountryCode, $language: LanguageCode)\n @inContext(country: $country, language: $language) {\n shop {\n id\n }\n }\n': {
|
|
1287
|
-
return: StoreRobotsQuery;
|
|
1288
|
-
variables: StoreRobotsQueryVariables;
|
|
1289
|
-
};
|
|
1290
1279
|
'#graphql\n fragment FeaturedCollection on Collection {\n id\n title\n image {\n id\n url\n altText\n width\n height\n }\n handle\n }\n query FeaturedCollection($country: CountryCode, $language: LanguageCode)\n @inContext(country: $country, language: $language) {\n collections(first: 1, sortKey: UPDATED_AT, reverse: true) {\n nodes {\n ...FeaturedCollection\n }\n }\n }\n': {
|
|
1291
1280
|
return: FeaturedCollectionQuery;
|
|
1292
1281
|
variables: FeaturedCollectionQueryVariables;
|