@shopify/create-hydrogen 4.3.13 → 5.0.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.
Files changed (127) hide show
  1. package/dist/assets/hydrogen/bundle/analyzer.html +2045 -0
  2. package/dist/assets/hydrogen/i18n/domains.ts +28 -0
  3. package/dist/assets/hydrogen/i18n/mock-i18n-types.ts +3 -0
  4. package/dist/assets/hydrogen/i18n/subdomains.ts +27 -0
  5. package/dist/assets/hydrogen/i18n/subfolders.ts +29 -0
  6. package/dist/assets/hydrogen/routes/locale-check.ts +16 -0
  7. package/dist/assets/hydrogen/starter/.eslintignore +5 -0
  8. package/dist/assets/hydrogen/starter/.eslintrc.cjs +19 -0
  9. package/dist/assets/hydrogen/starter/.graphqlrc.yml +12 -0
  10. package/dist/assets/hydrogen/starter/CHANGELOG.md +709 -0
  11. package/dist/assets/hydrogen/starter/README.md +45 -0
  12. package/dist/assets/hydrogen/starter/app/assets/favicon.svg +28 -0
  13. package/dist/assets/hydrogen/starter/app/components/AddToCartButton.tsx +37 -0
  14. package/dist/assets/hydrogen/starter/app/components/Aside.tsx +76 -0
  15. package/dist/assets/hydrogen/starter/app/components/CartLineItem.tsx +150 -0
  16. package/dist/assets/hydrogen/starter/app/components/CartMain.tsx +68 -0
  17. package/dist/assets/hydrogen/starter/app/components/CartSummary.tsx +101 -0
  18. package/dist/assets/hydrogen/starter/app/components/Footer.tsx +129 -0
  19. package/dist/assets/hydrogen/starter/app/components/Header.tsx +230 -0
  20. package/dist/assets/hydrogen/starter/app/components/PageLayout.tsx +126 -0
  21. package/dist/assets/hydrogen/starter/app/components/ProductForm.tsx +80 -0
  22. package/dist/assets/hydrogen/starter/app/components/ProductImage.tsx +23 -0
  23. package/dist/assets/hydrogen/starter/app/components/ProductPrice.tsx +27 -0
  24. package/dist/assets/hydrogen/starter/app/components/Search.tsx +514 -0
  25. package/dist/assets/hydrogen/starter/app/entry.client.tsx +12 -0
  26. package/dist/assets/hydrogen/starter/app/entry.server.tsx +47 -0
  27. package/dist/assets/hydrogen/starter/app/graphql/customer-account/CustomerAddressMutations.ts +61 -0
  28. package/dist/assets/hydrogen/starter/app/graphql/customer-account/CustomerDetailsQuery.ts +40 -0
  29. package/dist/assets/hydrogen/starter/app/graphql/customer-account/CustomerOrderQuery.ts +87 -0
  30. package/dist/assets/hydrogen/starter/app/graphql/customer-account/CustomerOrdersQuery.ts +58 -0
  31. package/dist/assets/hydrogen/starter/app/graphql/customer-account/CustomerUpdateMutation.ts +24 -0
  32. package/dist/assets/hydrogen/starter/app/lib/fragments.ts +174 -0
  33. package/dist/assets/hydrogen/starter/app/lib/search.ts +29 -0
  34. package/dist/assets/hydrogen/starter/app/lib/session.ts +72 -0
  35. package/dist/assets/hydrogen/starter/app/lib/variants.ts +46 -0
  36. package/dist/assets/hydrogen/starter/app/root.tsx +191 -0
  37. package/dist/assets/hydrogen/starter/app/routes/$.tsx +11 -0
  38. package/dist/assets/hydrogen/starter/app/routes/[robots.txt].tsx +118 -0
  39. package/dist/assets/hydrogen/starter/app/routes/[sitemap.xml].tsx +177 -0
  40. package/dist/assets/hydrogen/starter/app/routes/_index.tsx +182 -0
  41. package/dist/assets/hydrogen/starter/app/routes/account.$.tsx +8 -0
  42. package/dist/assets/hydrogen/starter/app/routes/account._index.tsx +5 -0
  43. package/dist/assets/hydrogen/starter/app/routes/account.addresses.tsx +513 -0
  44. package/dist/assets/hydrogen/starter/app/routes/account.orders.$id.tsx +195 -0
  45. package/dist/assets/hydrogen/starter/app/routes/account.orders._index.tsx +107 -0
  46. package/dist/assets/hydrogen/starter/app/routes/account.profile.tsx +136 -0
  47. package/dist/assets/hydrogen/starter/app/routes/account.tsx +88 -0
  48. package/dist/assets/hydrogen/starter/app/routes/account_.authorize.tsx +5 -0
  49. package/dist/assets/hydrogen/starter/app/routes/account_.login.tsx +5 -0
  50. package/dist/assets/hydrogen/starter/app/routes/account_.logout.tsx +10 -0
  51. package/dist/assets/hydrogen/starter/app/routes/api.predictive-search.tsx +318 -0
  52. package/dist/assets/hydrogen/starter/app/routes/blogs.$blogHandle.$articleHandle.tsx +113 -0
  53. package/dist/assets/hydrogen/starter/app/routes/blogs.$blogHandle._index.tsx +188 -0
  54. package/dist/assets/hydrogen/starter/app/routes/blogs._index.tsx +119 -0
  55. package/dist/assets/hydrogen/starter/app/routes/cart.$lines.tsx +69 -0
  56. package/dist/assets/hydrogen/starter/app/routes/cart.tsx +102 -0
  57. package/dist/assets/hydrogen/starter/app/routes/collections.$handle.tsx +225 -0
  58. package/dist/assets/hydrogen/starter/app/routes/collections._index.tsx +146 -0
  59. package/dist/assets/hydrogen/starter/app/routes/collections.all.tsx +185 -0
  60. package/dist/assets/hydrogen/starter/app/routes/discount.$code.tsx +47 -0
  61. package/dist/assets/hydrogen/starter/app/routes/pages.$handle.tsx +84 -0
  62. package/dist/assets/hydrogen/starter/app/routes/policies.$handle.tsx +93 -0
  63. package/dist/assets/hydrogen/starter/app/routes/policies._index.tsx +63 -0
  64. package/dist/assets/hydrogen/starter/app/routes/products.$handle.tsx +299 -0
  65. package/dist/assets/hydrogen/starter/app/routes/search.tsx +177 -0
  66. package/dist/assets/hydrogen/starter/app/styles/app.css +486 -0
  67. package/dist/assets/hydrogen/starter/app/styles/reset.css +129 -0
  68. package/dist/assets/hydrogen/starter/customer-accountapi.generated.d.ts +509 -0
  69. package/dist/assets/hydrogen/starter/env.d.ts +54 -0
  70. package/dist/assets/hydrogen/starter/package.json +50 -0
  71. package/dist/assets/hydrogen/starter/public/.gitkeep +0 -0
  72. package/dist/assets/hydrogen/starter/server.ts +119 -0
  73. package/dist/assets/hydrogen/starter/storefrontapi.generated.d.ts +1211 -0
  74. package/dist/assets/hydrogen/starter/tsconfig.json +23 -0
  75. package/dist/assets/hydrogen/starter/vite.config.ts +41 -0
  76. package/dist/assets/hydrogen/tailwind/package.json +8 -0
  77. package/dist/assets/hydrogen/tailwind/tailwind.css +6 -0
  78. package/dist/assets/hydrogen/vanilla-extract/package.json +8 -0
  79. package/dist/assets/hydrogen/virtual-routes/assets/debug-network.css +592 -0
  80. package/dist/assets/hydrogen/virtual-routes/assets/favicon-dark.svg +20 -0
  81. package/dist/assets/hydrogen/virtual-routes/assets/favicon.svg +28 -0
  82. package/dist/assets/hydrogen/virtual-routes/assets/inter-variable-font.woff2 +0 -0
  83. package/dist/assets/hydrogen/virtual-routes/assets/jetbrainsmono-variable-font.woff2 +0 -0
  84. package/dist/assets/hydrogen/virtual-routes/assets/styles.css +238 -0
  85. package/dist/assets/hydrogen/virtual-routes/components/FlameChartWrapper.jsx +123 -0
  86. package/dist/assets/hydrogen/virtual-routes/components/HydrogenLogoBaseBW.jsx +32 -0
  87. package/dist/assets/hydrogen/virtual-routes/components/HydrogenLogoBaseColor.jsx +47 -0
  88. package/dist/assets/hydrogen/virtual-routes/components/IconBanner.jsx +292 -0
  89. package/dist/assets/hydrogen/virtual-routes/components/IconClose.jsx +38 -0
  90. package/dist/assets/hydrogen/virtual-routes/components/IconDiscard.jsx +44 -0
  91. package/dist/assets/hydrogen/virtual-routes/components/IconError.jsx +61 -0
  92. package/dist/assets/hydrogen/virtual-routes/components/IconGithub.jsx +23 -0
  93. package/dist/assets/hydrogen/virtual-routes/components/IconTwitter.jsx +21 -0
  94. package/dist/assets/hydrogen/virtual-routes/components/PageLayout.jsx +7 -0
  95. package/dist/assets/hydrogen/virtual-routes/components/RequestDetails.jsx +178 -0
  96. package/dist/assets/hydrogen/virtual-routes/components/RequestTable.jsx +91 -0
  97. package/dist/assets/hydrogen/virtual-routes/components/RequestWaterfall.jsx +151 -0
  98. package/dist/assets/hydrogen/virtual-routes/lib/useDebugNetworkServer.jsx +178 -0
  99. package/dist/assets/hydrogen/virtual-routes/routes/graphiql.jsx +5 -0
  100. package/dist/assets/hydrogen/virtual-routes/routes/index.jsx +265 -0
  101. package/dist/assets/hydrogen/virtual-routes/routes/subrequest-profiler.jsx +243 -0
  102. package/dist/assets/hydrogen/virtual-routes/virtual-root.jsx +64 -0
  103. package/dist/assets/hydrogen/vite/package.json +14 -0
  104. package/dist/assets/hydrogen/vite/vite.config.js +41 -0
  105. package/dist/chokidar-2CKIHN27.js +12 -0
  106. package/dist/chunk-EO6F7WJJ.js +2 -0
  107. package/dist/chunk-FB327AH7.js +5 -0
  108. package/dist/chunk-FJPX4XUR.js +2 -0
  109. package/dist/chunk-JKOXGRAA.js +10 -0
  110. package/dist/chunk-LNQWGFTB.js +45 -0
  111. package/dist/chunk-M6JXYI3V.js +23 -0
  112. package/dist/chunk-MNT4XW23.js +2 -0
  113. package/dist/chunk-N7HFZHSO.js +1145 -0
  114. package/dist/chunk-PMDMUCNY.js +2 -0
  115. package/dist/chunk-QGLB6FFL.js +3 -0
  116. package/dist/chunk-VMIOG46Y.js +2 -0
  117. package/dist/create-app.js +1867 -34
  118. package/dist/del-CZGKV5SQ.js +11 -0
  119. package/dist/devtools-ZCRGQE64.js +8 -0
  120. package/dist/error-handler-GEQXZJ25.js +2 -0
  121. package/dist/lib-NJYCLW6W.js +22 -0
  122. package/dist/morph-ZJCCGFNC.js +30499 -0
  123. package/dist/multipart-parser-6HGDQWV7.js +3 -0
  124. package/dist/open-OD6DRFEG.js +2 -0
  125. package/dist/out-7KAQXZLP.js +2 -0
  126. package/dist/yoga.wasm +0 -0
  127. package/package.json +7 -3
@@ -0,0 +1,28 @@
1
+ import type {LanguageCode, CountryCode} from './mock-i18n-types.js';
2
+
3
+ export type I18nLocale = {language: LanguageCode; country: CountryCode};
4
+
5
+ /**
6
+ * @returns {I18nLocale}
7
+ */
8
+ function getLocaleFromRequest(request: Request): I18nLocale {
9
+ const defaultLocale: I18nLocale = {language: 'EN', country: 'US'};
10
+ const supportedLocales = {
11
+ ES: 'ES',
12
+ FR: 'FR',
13
+ DE: 'DE',
14
+ JP: 'JA',
15
+ } as Record<I18nLocale['country'], I18nLocale['language']>;
16
+
17
+ const url = new URL(request.url);
18
+ const domain = url.hostname
19
+ .split('.')
20
+ .pop()
21
+ ?.toUpperCase() as keyof typeof supportedLocales;
22
+
23
+ return domain && supportedLocales[domain]
24
+ ? {language: supportedLocales[domain], country: domain}
25
+ : defaultLocale;
26
+ }
27
+
28
+ export {getLocaleFromRequest};
@@ -0,0 +1,3 @@
1
+ // Mock types so we don't need to depend on Hydrogen React
2
+ export type CountryCode = 'US' | 'ES' | 'FR' | 'DE' | 'JP';
3
+ export type LanguageCode = 'EN' | 'ES' | 'FR' | 'DE' | 'JA';
@@ -0,0 +1,27 @@
1
+ import type {LanguageCode, CountryCode} from './mock-i18n-types.js';
2
+
3
+ export type I18nLocale = {language: LanguageCode; country: CountryCode};
4
+
5
+ /**
6
+ * @returns {I18nLocale}
7
+ */
8
+ function getLocaleFromRequest(request: Request): I18nLocale {
9
+ const defaultLocale: I18nLocale = {language: 'EN', country: 'US'};
10
+ const supportedLocales = {
11
+ ES: 'ES',
12
+ FR: 'FR',
13
+ DE: 'DE',
14
+ JP: 'JA',
15
+ } as Record<I18nLocale['country'], I18nLocale['language']>;
16
+
17
+ const url = new URL(request.url);
18
+ const firstSubdomain = url.hostname
19
+ .split('.')[0]
20
+ ?.toUpperCase() as keyof typeof supportedLocales;
21
+
22
+ return supportedLocales[firstSubdomain]
23
+ ? {language: supportedLocales[firstSubdomain], country: firstSubdomain}
24
+ : defaultLocale;
25
+ }
26
+
27
+ export {getLocaleFromRequest};
@@ -0,0 +1,29 @@
1
+ import type {LanguageCode, CountryCode} from './mock-i18n-types.js';
2
+
3
+ export type I18nLocale = {
4
+ language: LanguageCode;
5
+ country: CountryCode;
6
+ pathPrefix: string;
7
+ };
8
+
9
+ /**
10
+ * @returns {I18nLocale}
11
+ */
12
+ function getLocaleFromRequest(request: Request): I18nLocale {
13
+ const url = new URL(request.url);
14
+ const firstPathPart = url.pathname.split('/')[1]?.toUpperCase() ?? '';
15
+
16
+ type I18nFromUrl = [I18nLocale['language'], I18nLocale['country']];
17
+
18
+ let pathPrefix = '';
19
+ let [language, country]: I18nFromUrl = ['EN', 'US'];
20
+
21
+ if (/^[A-Z]{2}-[A-Z]{2}$/i.test(firstPathPart)) {
22
+ pathPrefix = '/' + firstPathPart;
23
+ [language, country] = firstPathPart.split('-') as I18nFromUrl;
24
+ }
25
+
26
+ return {language, country, pathPrefix};
27
+ }
28
+
29
+ export {getLocaleFromRequest};
@@ -0,0 +1,16 @@
1
+ import type {LoaderFunctionArgs} from '@shopify/remix-oxygen';
2
+
3
+ export async function loader({params, context}: LoaderFunctionArgs) {
4
+ const {language, country} = context.storefront.i18n;
5
+
6
+ if (
7
+ params.locale &&
8
+ params.locale.toLowerCase() !== `${language}-${country}`.toLowerCase()
9
+ ) {
10
+ // If the locale URL param is defined, yet we still are still at the default locale
11
+ // then the the locale param must be invalid, send to the 404 page
12
+ throw new Response(null, {status: 404});
13
+ }
14
+
15
+ return null;
16
+ }
@@ -0,0 +1,5 @@
1
+ build
2
+ node_modules
3
+ bin
4
+ *.d.ts
5
+ dist
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @type {import("@types/eslint").Linter.BaseConfig}
3
+ */
4
+ module.exports = {
5
+ extends: [
6
+ '@remix-run/eslint-config',
7
+ 'plugin:hydrogen/recommended',
8
+ 'plugin:hydrogen/typescript',
9
+ ],
10
+ rules: {
11
+ '@typescript-eslint/ban-ts-comment': 'off',
12
+ '@typescript-eslint/naming-convention': 'off',
13
+ 'hydrogen/prefer-image-component': 'off',
14
+ 'no-useless-escape': 'off',
15
+ '@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
16
+ 'no-case-declarations': 'off',
17
+ 'no-console': ['warn', {allow: ['warn', 'error']}],
18
+ },
19
+ };
@@ -0,0 +1,12 @@
1
+ projects:
2
+ default:
3
+ schema: 'node_modules/@shopify/hydrogen/storefront.schema.json'
4
+ documents:
5
+ - '!*.d.ts'
6
+ - '*.{ts,tsx,js,jsx}'
7
+ - 'app/**/*.{ts,tsx,js,jsx}'
8
+ - '!app/graphql/**/*.{ts,tsx,js,jsx}'
9
+ customer-account:
10
+ schema: 'node_modules/@shopify/hydrogen/customer-account.schema.json'
11
+ documents:
12
+ - 'app/graphql/customer-account/**/*.{ts,tsx,js,jsx}'