@shopify/create-hydrogen 5.0.11 → 5.0.13

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 (27) hide show
  1. package/dist/assets/hydrogen/starter/CHANGELOG.md +814 -0
  2. package/dist/assets/hydrogen/starter/app/components/Aside.tsx +1 -1
  3. package/dist/assets/hydrogen/starter/app/components/PaginatedResourceSection.tsx +3 -4
  4. package/dist/assets/hydrogen/starter/app/components/ProductForm.tsx +114 -44
  5. package/dist/assets/hydrogen/starter/app/components/SearchResults.tsx +8 -3
  6. package/dist/assets/hydrogen/starter/app/components/SearchResultsPredictive.tsx +6 -5
  7. package/dist/assets/hydrogen/starter/app/lib/variants.ts +3 -3
  8. package/dist/assets/hydrogen/starter/app/routes/account_.logout.tsx +1 -1
  9. package/dist/assets/hydrogen/starter/app/routes/cart.tsx +9 -16
  10. package/dist/assets/hydrogen/starter/app/routes/collections.$handle.tsx +1 -10
  11. package/dist/assets/hydrogen/starter/app/routes/collections.all.tsx +1 -10
  12. package/dist/assets/hydrogen/starter/app/routes/products.$handle.tsx +50 -119
  13. package/dist/assets/hydrogen/starter/app/routes/search.tsx +42 -38
  14. package/dist/assets/hydrogen/starter/app/styles/app.css +25 -1
  15. package/dist/assets/hydrogen/starter/guides/predictiveSearch/predictiveSearch.md +23 -20
  16. package/dist/assets/hydrogen/starter/guides/search/search.md +27 -25
  17. package/dist/assets/hydrogen/starter/package.json +3 -3
  18. package/dist/assets/hydrogen/starter/storefrontapi.generated.d.ts +177 -194
  19. package/dist/assets/hydrogen/tailwind/tailwind.css +1 -1
  20. package/dist/chunk-C2DNSDMB.js +3 -0
  21. package/dist/{chunk-VXN7NK7B.js → chunk-SLVYPPXU.js} +412 -412
  22. package/dist/create-app.js +209 -208
  23. package/dist/{del-QYPDQ7XQ.js → del-EAAITCBR.js} +4 -4
  24. package/dist/{error-handler-ICJOKWYN.js → error-handler-IG42X6FN.js} +1 -1
  25. package/dist/{morph-7M6DKEEJ.js → morph-ZB67FQMB.js} +4 -4
  26. package/package.json +1 -1
  27. package/dist/chunk-H55SNOVV.js +0 -3
@@ -494,13 +494,6 @@ export type ProductItemFragment = Pick<
494
494
  minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
495
495
  maxVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
496
496
  };
497
- variants: {
498
- nodes: Array<{
499
- selectedOptions: Array<
500
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
501
- >;
502
- }>;
503
- };
504
497
  };
505
498
 
506
499
  export type CollectionQueryVariables = StorefrontAPI.Exact<{
@@ -542,13 +535,6 @@ export type CollectionQuery = {
542
535
  'amount' | 'currencyCode'
543
536
  >;
544
537
  };
545
- variants: {
546
- nodes: Array<{
547
- selectedOptions: Array<
548
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
549
- >;
550
- }>;
551
- };
552
538
  }
553
539
  >;
554
540
  pageInfo: Pick<
@@ -634,13 +620,6 @@ export type CatalogQuery = {
634
620
  'amount' | 'currencyCode'
635
621
  >;
636
622
  };
637
- variants: {
638
- nodes: Array<{
639
- selectedOptions: Array<
640
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
641
- >;
642
- }>;
643
- };
644
623
  }
645
624
  >;
646
625
  pageInfo: Pick<
@@ -750,14 +729,81 @@ export type ProductVariantFragment = Pick<
750
729
 
751
730
  export type ProductFragment = Pick<
752
731
  StorefrontAPI.Product,
753
- 'id' | 'title' | 'vendor' | 'handle' | 'descriptionHtml' | 'description'
732
+ | 'id'
733
+ | 'title'
734
+ | 'vendor'
735
+ | 'handle'
736
+ | 'descriptionHtml'
737
+ | 'description'
738
+ | 'encodedVariantExistence'
739
+ | 'encodedVariantAvailability'
754
740
  > & {
755
741
  options: Array<
756
742
  Pick<StorefrontAPI.ProductOption, 'name'> & {
757
- optionValues: Array<Pick<StorefrontAPI.ProductOptionValue, 'name'>>;
743
+ optionValues: Array<
744
+ Pick<StorefrontAPI.ProductOptionValue, 'name'> & {
745
+ firstSelectableVariant?: StorefrontAPI.Maybe<
746
+ Pick<
747
+ StorefrontAPI.ProductVariant,
748
+ 'availableForSale' | 'id' | 'sku' | 'title'
749
+ > & {
750
+ compareAtPrice?: StorefrontAPI.Maybe<
751
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
752
+ >;
753
+ image?: StorefrontAPI.Maybe<
754
+ {__typename: 'Image'} & Pick<
755
+ StorefrontAPI.Image,
756
+ 'id' | 'url' | 'altText' | 'width' | 'height'
757
+ >
758
+ >;
759
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
760
+ product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
761
+ selectedOptions: Array<
762
+ Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
763
+ >;
764
+ unitPrice?: StorefrontAPI.Maybe<
765
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
766
+ >;
767
+ }
768
+ >;
769
+ swatch?: StorefrontAPI.Maybe<
770
+ Pick<StorefrontAPI.ProductOptionValueSwatch, 'color'> & {
771
+ image?: StorefrontAPI.Maybe<{
772
+ previewImage?: StorefrontAPI.Maybe<
773
+ Pick<StorefrontAPI.Image, 'url'>
774
+ >;
775
+ }>;
776
+ }
777
+ >;
778
+ }
779
+ >;
758
780
  }
759
781
  >;
760
- selectedVariant?: StorefrontAPI.Maybe<
782
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
783
+ Pick<
784
+ StorefrontAPI.ProductVariant,
785
+ 'availableForSale' | 'id' | 'sku' | 'title'
786
+ > & {
787
+ compareAtPrice?: StorefrontAPI.Maybe<
788
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
789
+ >;
790
+ image?: StorefrontAPI.Maybe<
791
+ {__typename: 'Image'} & Pick<
792
+ StorefrontAPI.Image,
793
+ 'id' | 'url' | 'altText' | 'width' | 'height'
794
+ >
795
+ >;
796
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
797
+ product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
798
+ selectedOptions: Array<
799
+ Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
800
+ >;
801
+ unitPrice?: StorefrontAPI.Maybe<
802
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
803
+ >;
804
+ }
805
+ >;
806
+ adjacentVariants: Array<
761
807
  Pick<
762
808
  StorefrontAPI.ProductVariant,
763
809
  'availableForSale' | 'id' | 'sku' | 'title'
@@ -781,32 +827,6 @@ export type ProductFragment = Pick<
781
827
  >;
782
828
  }
783
829
  >;
784
- variants: {
785
- nodes: Array<
786
- Pick<
787
- StorefrontAPI.ProductVariant,
788
- 'availableForSale' | 'id' | 'sku' | 'title'
789
- > & {
790
- compareAtPrice?: StorefrontAPI.Maybe<
791
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
792
- >;
793
- image?: StorefrontAPI.Maybe<
794
- {__typename: 'Image'} & Pick<
795
- StorefrontAPI.Image,
796
- 'id' | 'url' | 'altText' | 'width' | 'height'
797
- >
798
- >;
799
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
800
- product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
801
- selectedOptions: Array<
802
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
803
- >;
804
- unitPrice?: StorefrontAPI.Maybe<
805
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
806
- >;
807
- }
808
- >;
809
- };
810
830
  seo: Pick<StorefrontAPI.Seo, 'description' | 'title'>;
811
831
  };
812
832
 
@@ -823,14 +843,57 @@ export type ProductQuery = {
823
843
  product?: StorefrontAPI.Maybe<
824
844
  Pick<
825
845
  StorefrontAPI.Product,
826
- 'id' | 'title' | 'vendor' | 'handle' | 'descriptionHtml' | 'description'
846
+ | 'id'
847
+ | 'title'
848
+ | 'vendor'
849
+ | 'handle'
850
+ | 'descriptionHtml'
851
+ | 'description'
852
+ | 'encodedVariantExistence'
853
+ | 'encodedVariantAvailability'
827
854
  > & {
828
855
  options: Array<
829
856
  Pick<StorefrontAPI.ProductOption, 'name'> & {
830
- optionValues: Array<Pick<StorefrontAPI.ProductOptionValue, 'name'>>;
857
+ optionValues: Array<
858
+ Pick<StorefrontAPI.ProductOptionValue, 'name'> & {
859
+ firstSelectableVariant?: StorefrontAPI.Maybe<
860
+ Pick<
861
+ StorefrontAPI.ProductVariant,
862
+ 'availableForSale' | 'id' | 'sku' | 'title'
863
+ > & {
864
+ compareAtPrice?: StorefrontAPI.Maybe<
865
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
866
+ >;
867
+ image?: StorefrontAPI.Maybe<
868
+ {__typename: 'Image'} & Pick<
869
+ StorefrontAPI.Image,
870
+ 'id' | 'url' | 'altText' | 'width' | 'height'
871
+ >
872
+ >;
873
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
874
+ product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
875
+ selectedOptions: Array<
876
+ Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
877
+ >;
878
+ unitPrice?: StorefrontAPI.Maybe<
879
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
880
+ >;
881
+ }
882
+ >;
883
+ swatch?: StorefrontAPI.Maybe<
884
+ Pick<StorefrontAPI.ProductOptionValueSwatch, 'color'> & {
885
+ image?: StorefrontAPI.Maybe<{
886
+ previewImage?: StorefrontAPI.Maybe<
887
+ Pick<StorefrontAPI.Image, 'url'>
888
+ >;
889
+ }>;
890
+ }
891
+ >;
892
+ }
893
+ >;
831
894
  }
832
895
  >;
833
- selectedVariant?: StorefrontAPI.Maybe<
896
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
834
897
  Pick<
835
898
  StorefrontAPI.ProductVariant,
836
899
  'availableForSale' | 'id' | 'sku' | 'title'
@@ -854,76 +917,7 @@ export type ProductQuery = {
854
917
  >;
855
918
  }
856
919
  >;
857
- variants: {
858
- nodes: Array<
859
- Pick<
860
- StorefrontAPI.ProductVariant,
861
- 'availableForSale' | 'id' | 'sku' | 'title'
862
- > & {
863
- compareAtPrice?: StorefrontAPI.Maybe<
864
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
865
- >;
866
- image?: StorefrontAPI.Maybe<
867
- {__typename: 'Image'} & Pick<
868
- StorefrontAPI.Image,
869
- 'id' | 'url' | 'altText' | 'width' | 'height'
870
- >
871
- >;
872
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
873
- product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
874
- selectedOptions: Array<
875
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
876
- >;
877
- unitPrice?: StorefrontAPI.Maybe<
878
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
879
- >;
880
- }
881
- >;
882
- };
883
- seo: Pick<StorefrontAPI.Seo, 'description' | 'title'>;
884
- }
885
- >;
886
- };
887
-
888
- export type ProductVariantsFragment = {
889
- variants: {
890
- nodes: Array<
891
- Pick<
892
- StorefrontAPI.ProductVariant,
893
- 'availableForSale' | 'id' | 'sku' | 'title'
894
- > & {
895
- compareAtPrice?: StorefrontAPI.Maybe<
896
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
897
- >;
898
- image?: StorefrontAPI.Maybe<
899
- {__typename: 'Image'} & Pick<
900
- StorefrontAPI.Image,
901
- 'id' | 'url' | 'altText' | 'width' | 'height'
902
- >
903
- >;
904
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
905
- product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
906
- selectedOptions: Array<
907
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
908
- >;
909
- unitPrice?: StorefrontAPI.Maybe<
910
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
911
- >;
912
- }
913
- >;
914
- };
915
- };
916
-
917
- export type ProductVariantsQueryVariables = StorefrontAPI.Exact<{
918
- country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
919
- language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
920
- handle: StorefrontAPI.Scalars['String']['input'];
921
- }>;
922
-
923
- export type ProductVariantsQuery = {
924
- product?: StorefrontAPI.Maybe<{
925
- variants: {
926
- nodes: Array<
920
+ adjacentVariants: Array<
927
921
  Pick<
928
922
  StorefrontAPI.ProductVariant,
929
923
  'availableForSale' | 'id' | 'sku' | 'title'
@@ -947,31 +941,30 @@ export type ProductVariantsQuery = {
947
941
  >;
948
942
  }
949
943
  >;
950
- };
951
- }>;
944
+ seo: Pick<StorefrontAPI.Seo, 'description' | 'title'>;
945
+ }
946
+ >;
952
947
  };
953
948
 
954
949
  export type SearchProductFragment = {__typename: 'Product'} & Pick<
955
950
  StorefrontAPI.Product,
956
951
  'handle' | 'id' | 'publishedAt' | 'title' | 'trackingParameters' | 'vendor'
957
952
  > & {
958
- variants: {
959
- nodes: Array<
960
- Pick<StorefrontAPI.ProductVariant, 'id'> & {
961
- image?: StorefrontAPI.Maybe<
962
- Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
963
- >;
964
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
965
- compareAtPrice?: StorefrontAPI.Maybe<
966
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
967
- >;
968
- selectedOptions: Array<
969
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
970
- >;
971
- product: Pick<StorefrontAPI.Product, 'handle' | 'title'>;
972
- }
973
- >;
974
- };
953
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
954
+ Pick<StorefrontAPI.ProductVariant, 'id'> & {
955
+ image?: StorefrontAPI.Maybe<
956
+ Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
957
+ >;
958
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
959
+ compareAtPrice?: StorefrontAPI.Maybe<
960
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
961
+ >;
962
+ selectedOptions: Array<
963
+ Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
964
+ >;
965
+ product: Pick<StorefrontAPI.Product, 'handle' | 'title'>;
966
+ }
967
+ >;
975
968
  };
976
969
 
977
970
  export type SearchPageFragment = {__typename: 'Page'} & Pick<
@@ -1031,26 +1024,24 @@ export type RegularSearchQuery = {
1031
1024
  | 'trackingParameters'
1032
1025
  | 'vendor'
1033
1026
  > & {
1034
- variants: {
1035
- nodes: Array<
1036
- Pick<StorefrontAPI.ProductVariant, 'id'> & {
1037
- image?: StorefrontAPI.Maybe<
1038
- Pick<
1039
- StorefrontAPI.Image,
1040
- 'url' | 'altText' | 'width' | 'height'
1041
- >
1042
- >;
1043
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1044
- compareAtPrice?: StorefrontAPI.Maybe<
1045
- Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
1046
- >;
1047
- selectedOptions: Array<
1048
- Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
1049
- >;
1050
- product: Pick<StorefrontAPI.Product, 'handle' | 'title'>;
1051
- }
1052
- >;
1053
- };
1027
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
1028
+ Pick<StorefrontAPI.ProductVariant, 'id'> & {
1029
+ image?: StorefrontAPI.Maybe<
1030
+ Pick<
1031
+ StorefrontAPI.Image,
1032
+ 'url' | 'altText' | 'width' | 'height'
1033
+ >
1034
+ >;
1035
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1036
+ compareAtPrice?: StorefrontAPI.Maybe<
1037
+ Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
1038
+ >;
1039
+ selectedOptions: Array<
1040
+ Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
1041
+ >;
1042
+ product: Pick<StorefrontAPI.Product, 'handle' | 'title'>;
1043
+ }
1044
+ >;
1054
1045
  }
1055
1046
  >;
1056
1047
  pageInfo: Pick<
@@ -1088,16 +1079,14 @@ export type PredictiveProductFragment = {__typename: 'Product'} & Pick<
1088
1079
  StorefrontAPI.Product,
1089
1080
  'id' | 'title' | 'handle' | 'trackingParameters'
1090
1081
  > & {
1091
- variants: {
1092
- nodes: Array<
1093
- Pick<StorefrontAPI.ProductVariant, 'id'> & {
1094
- image?: StorefrontAPI.Maybe<
1095
- Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
1096
- >;
1097
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1098
- }
1099
- >;
1100
- };
1082
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
1083
+ Pick<StorefrontAPI.ProductVariant, 'id'> & {
1084
+ image?: StorefrontAPI.Maybe<
1085
+ Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
1086
+ >;
1087
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1088
+ }
1089
+ >;
1101
1090
  };
1102
1091
 
1103
1092
  export type PredictiveQueryFragment = {
@@ -1153,19 +1142,17 @@ export type PredictiveSearchQuery = {
1153
1142
  StorefrontAPI.Product,
1154
1143
  'id' | 'title' | 'handle' | 'trackingParameters'
1155
1144
  > & {
1156
- variants: {
1157
- nodes: Array<
1158
- Pick<StorefrontAPI.ProductVariant, 'id'> & {
1159
- image?: StorefrontAPI.Maybe<
1160
- Pick<
1161
- StorefrontAPI.Image,
1162
- 'url' | 'altText' | 'width' | 'height'
1163
- >
1164
- >;
1165
- price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1166
- }
1167
- >;
1168
- };
1145
+ selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
1146
+ Pick<StorefrontAPI.ProductVariant, 'id'> & {
1147
+ image?: StorefrontAPI.Maybe<
1148
+ Pick<
1149
+ StorefrontAPI.Image,
1150
+ 'url' | 'altText' | 'width' | 'height'
1151
+ >
1152
+ >;
1153
+ price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
1154
+ }
1155
+ >;
1169
1156
  }
1170
1157
  >;
1171
1158
  queries: Array<
@@ -1210,7 +1197,7 @@ interface GeneratedQueryTypes {
1210
1197
  return: BlogsQuery;
1211
1198
  variables: BlogsQueryVariables;
1212
1199
  };
1213
- '#graphql\n #graphql\n fragment MoneyProductItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment ProductItem on Product {\n id\n handle\n title\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n maxVariantPrice {\n ...MoneyProductItem\n }\n }\n variants(first: 1) {\n nodes {\n selectedOptions {\n name\n value\n }\n }\n }\n }\n\n query Collection(\n $handle: String!\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n collection(handle: $handle) {\n id\n handle\n title\n description\n products(\n first: $first,\n last: $last,\n before: $startCursor,\n after: $endCursor\n ) {\n nodes {\n ...ProductItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n endCursor\n startCursor\n }\n }\n }\n }\n': {
1200
+ '#graphql\n #graphql\n fragment MoneyProductItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment ProductItem on Product {\n id\n handle\n title\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n maxVariantPrice {\n ...MoneyProductItem\n }\n }\n }\n\n query Collection(\n $handle: String!\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n collection(handle: $handle) {\n id\n handle\n title\n description\n products(\n first: $first,\n last: $last,\n before: $startCursor,\n after: $endCursor\n ) {\n nodes {\n ...ProductItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n endCursor\n startCursor\n }\n }\n }\n }\n': {
1214
1201
  return: CollectionQuery;
1215
1202
  variables: CollectionQueryVariables;
1216
1203
  };
@@ -1218,7 +1205,7 @@ interface GeneratedQueryTypes {
1218
1205
  return: StoreCollectionsQuery;
1219
1206
  variables: StoreCollectionsQueryVariables;
1220
1207
  };
1221
- '#graphql\n query Catalog(\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n products(first: $first, last: $last, before: $startCursor, after: $endCursor) {\n nodes {\n ...ProductItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n startCursor\n endCursor\n }\n }\n }\n #graphql\n fragment MoneyProductItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment ProductItem on Product {\n id\n handle\n title\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n maxVariantPrice {\n ...MoneyProductItem\n }\n }\n variants(first: 1) {\n nodes {\n selectedOptions {\n name\n value\n }\n }\n }\n }\n\n': {
1208
+ '#graphql\n query Catalog(\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n products(first: $first, last: $last, before: $startCursor, after: $endCursor) {\n nodes {\n ...ProductItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n startCursor\n endCursor\n }\n }\n }\n #graphql\n fragment MoneyProductItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment ProductItem on Product {\n id\n handle\n title\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n maxVariantPrice {\n ...MoneyProductItem\n }\n }\n }\n\n': {
1222
1209
  return: CatalogQuery;
1223
1210
  variables: CatalogQueryVariables;
1224
1211
  };
@@ -1234,19 +1221,15 @@ interface GeneratedQueryTypes {
1234
1221
  return: PoliciesQuery;
1235
1222
  variables: PoliciesQueryVariables;
1236
1223
  };
1237
- '#graphql\n query Product(\n $country: CountryCode\n $handle: String!\n $language: LanguageCode\n $selectedOptions: [SelectedOptionInput!]!\n ) @inContext(country: $country, language: $language) {\n product(handle: $handle) {\n ...Product\n }\n }\n #graphql\n fragment Product on Product {\n id\n title\n vendor\n handle\n descriptionHtml\n description\n options {\n name\n optionValues {\n name\n }\n }\n selectedVariant: variantBySelectedOptions(selectedOptions: $selectedOptions, ignoreUnknownOptions: true, caseInsensitiveMatch: true) {\n ...ProductVariant\n }\n variants(first: 1) {\n nodes {\n ...ProductVariant\n }\n }\n seo {\n description\n title\n }\n }\n #graphql\n fragment ProductVariant on ProductVariant {\n availableForSale\n compareAtPrice {\n amount\n currencyCode\n }\n id\n image {\n __typename\n id\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n product {\n title\n handle\n }\n selectedOptions {\n name\n value\n }\n sku\n title\n unitPrice {\n amount\n currencyCode\n }\n }\n\n\n': {
1224
+ '#graphql\n query Product(\n $country: CountryCode\n $handle: String!\n $language: LanguageCode\n $selectedOptions: [SelectedOptionInput!]!\n ) @inContext(country: $country, language: $language) {\n product(handle: $handle) {\n ...Product\n }\n }\n #graphql\n fragment Product on Product {\n id\n title\n vendor\n handle\n descriptionHtml\n description\n encodedVariantExistence\n encodedVariantAvailability\n options {\n name\n optionValues {\n name\n firstSelectableVariant {\n ...ProductVariant\n }\n swatch {\n color\n image {\n previewImage {\n url\n }\n }\n }\n }\n }\n selectedOrFirstAvailableVariant(selectedOptions: $selectedOptions, ignoreUnknownOptions: true, caseInsensitiveMatch: true) {\n ...ProductVariant\n }\n adjacentVariants (selectedOptions: $selectedOptions) {\n ...ProductVariant\n }\n seo {\n description\n title\n }\n }\n #graphql\n fragment ProductVariant on ProductVariant {\n availableForSale\n compareAtPrice {\n amount\n currencyCode\n }\n id\n image {\n __typename\n id\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n product {\n title\n handle\n }\n selectedOptions {\n name\n value\n }\n sku\n title\n unitPrice {\n amount\n currencyCode\n }\n }\n\n\n': {
1238
1225
  return: ProductQuery;
1239
1226
  variables: ProductQueryVariables;
1240
1227
  };
1241
- '#graphql\n #graphql\n fragment ProductVariants on Product {\n variants(first: 250) {\n nodes {\n ...ProductVariant\n }\n }\n }\n #graphql\n fragment ProductVariant on ProductVariant {\n availableForSale\n compareAtPrice {\n amount\n currencyCode\n }\n id\n image {\n __typename\n id\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n product {\n title\n handle\n }\n selectedOptions {\n name\n value\n }\n sku\n title\n unitPrice {\n amount\n currencyCode\n }\n }\n\n\n query ProductVariants(\n $country: CountryCode\n $language: LanguageCode\n $handle: String!\n ) @inContext(country: $country, language: $language) {\n product(handle: $handle) {\n ...ProductVariants\n }\n }\n': {
1242
- return: ProductVariantsQuery;
1243
- variables: ProductVariantsQueryVariables;
1244
- };
1245
- '#graphql\n query RegularSearch(\n $country: CountryCode\n $endCursor: String\n $first: Int\n $language: LanguageCode\n $last: Int\n $term: String!\n $startCursor: String\n ) @inContext(country: $country, language: $language) {\n articles: search(\n query: $term,\n types: [ARTICLE],\n first: $first,\n ) {\n nodes {\n ...on Article {\n ...SearchArticle\n }\n }\n }\n pages: search(\n query: $term,\n types: [PAGE],\n first: $first,\n ) {\n nodes {\n ...on Page {\n ...SearchPage\n }\n }\n }\n products: search(\n after: $endCursor,\n before: $startCursor,\n first: $first,\n last: $last,\n query: $term,\n sortKey: RELEVANCE,\n types: [PRODUCT],\n unavailableProducts: HIDE,\n ) {\n nodes {\n ...on Product {\n ...SearchProduct\n }\n }\n pageInfo {\n ...PageInfoFragment\n }\n }\n }\n #graphql\n fragment SearchProduct on Product {\n __typename\n handle\n id\n publishedAt\n title\n trackingParameters\n vendor\n variants(first: 1) {\n nodes {\n id\n image {\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n compareAtPrice {\n amount\n currencyCode\n }\n selectedOptions {\n name\n value\n }\n product {\n handle\n title\n }\n }\n }\n }\n\n #graphql\n fragment SearchPage on Page {\n __typename\n handle\n id\n title\n trackingParameters\n }\n\n #graphql\n fragment SearchArticle on Article {\n __typename\n handle\n id\n title\n trackingParameters\n }\n\n #graphql\n fragment PageInfoFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n\n': {
1228
+ '#graphql\n query RegularSearch(\n $country: CountryCode\n $endCursor: String\n $first: Int\n $language: LanguageCode\n $last: Int\n $term: String!\n $startCursor: String\n ) @inContext(country: $country, language: $language) {\n articles: search(\n query: $term,\n types: [ARTICLE],\n first: $first,\n ) {\n nodes {\n ...on Article {\n ...SearchArticle\n }\n }\n }\n pages: search(\n query: $term,\n types: [PAGE],\n first: $first,\n ) {\n nodes {\n ...on Page {\n ...SearchPage\n }\n }\n }\n products: search(\n after: $endCursor,\n before: $startCursor,\n first: $first,\n last: $last,\n query: $term,\n sortKey: RELEVANCE,\n types: [PRODUCT],\n unavailableProducts: HIDE,\n ) {\n nodes {\n ...on Product {\n ...SearchProduct\n }\n }\n pageInfo {\n ...PageInfoFragment\n }\n }\n }\n #graphql\n fragment SearchProduct on Product {\n __typename\n handle\n id\n publishedAt\n title\n trackingParameters\n vendor\n selectedOrFirstAvailableVariant(\n selectedOptions: []\n ignoreUnknownOptions: true\n caseInsensitiveMatch: true\n ) {\n id\n image {\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n compareAtPrice {\n amount\n currencyCode\n }\n selectedOptions {\n name\n value\n }\n product {\n handle\n title\n }\n }\n }\n\n #graphql\n fragment SearchPage on Page {\n __typename\n handle\n id\n title\n trackingParameters\n }\n\n #graphql\n fragment SearchArticle on Article {\n __typename\n handle\n id\n title\n trackingParameters\n }\n\n #graphql\n fragment PageInfoFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n\n': {
1246
1229
  return: RegularSearchQuery;
1247
1230
  variables: RegularSearchQueryVariables;
1248
1231
  };
1249
- '#graphql\n query PredictiveSearch(\n $country: CountryCode\n $language: LanguageCode\n $limit: Int!\n $limitScope: PredictiveSearchLimitScope!\n $term: String!\n $types: [PredictiveSearchType!]\n ) @inContext(country: $country, language: $language) {\n predictiveSearch(\n limit: $limit,\n limitScope: $limitScope,\n query: $term,\n types: $types,\n ) {\n articles {\n ...PredictiveArticle\n }\n collections {\n ...PredictiveCollection\n }\n pages {\n ...PredictivePage\n }\n products {\n ...PredictiveProduct\n }\n queries {\n ...PredictiveQuery\n }\n }\n }\n #graphql\n fragment PredictiveArticle on Article {\n __typename\n id\n title\n handle\n blog {\n handle\n }\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictiveCollection on Collection {\n __typename\n id\n title\n handle\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictivePage on Page {\n __typename\n id\n title\n handle\n trackingParameters\n }\n\n #graphql\n fragment PredictiveProduct on Product {\n __typename\n id\n title\n handle\n trackingParameters\n variants(first: 1) {\n nodes {\n id\n image {\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n }\n }\n }\n\n #graphql\n fragment PredictiveQuery on SearchQuerySuggestion {\n __typename\n text\n styledText\n trackingParameters\n }\n\n': {
1232
+ '#graphql\n query PredictiveSearch(\n $country: CountryCode\n $language: LanguageCode\n $limit: Int!\n $limitScope: PredictiveSearchLimitScope!\n $term: String!\n $types: [PredictiveSearchType!]\n ) @inContext(country: $country, language: $language) {\n predictiveSearch(\n limit: $limit,\n limitScope: $limitScope,\n query: $term,\n types: $types,\n ) {\n articles {\n ...PredictiveArticle\n }\n collections {\n ...PredictiveCollection\n }\n pages {\n ...PredictivePage\n }\n products {\n ...PredictiveProduct\n }\n queries {\n ...PredictiveQuery\n }\n }\n }\n #graphql\n fragment PredictiveArticle on Article {\n __typename\n id\n title\n handle\n blog {\n handle\n }\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictiveCollection on Collection {\n __typename\n id\n title\n handle\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictivePage on Page {\n __typename\n id\n title\n handle\n trackingParameters\n }\n\n #graphql\n fragment PredictiveProduct on Product {\n __typename\n id\n title\n handle\n trackingParameters\n selectedOrFirstAvailableVariant(\n selectedOptions: []\n ignoreUnknownOptions: true\n caseInsensitiveMatch: true\n ) {\n id\n image {\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n }\n }\n\n #graphql\n fragment PredictiveQuery on SearchQuerySuggestion {\n __typename\n text\n styledText\n trackingParameters\n }\n\n': {
1250
1233
  return: PredictiveSearchQuery;
1251
1234
  variables: PredictiveSearchQueryVariables;
1252
1235
  };
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Configure Tailwind v4 in this file using CSS variables and directives:
3
- * https://tailwindcss.com/blog/tailwindcss-v4-alpha#css-first-configuration
3
+ * https://tailwindcss.com/blog/tailwindcss-v4-alpha#css-first-configuration
4
4
  */
5
5
 
6
6
  @import 'tailwindcss';
@@ -0,0 +1,3 @@
1
+ import { createRequire as __createRequire } from 'module';globalThis.require = __createRequire(import.meta.url);
2
+ import{a as bt,b as Oe}from"./chunk-7NPI5OH3.js";import{a as I,c as N,i as h}from"./chunk-MNT4XW23.js";var Te=N((Sr,Fe)=>{"use strict";h();Fe.exports=e=>{let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}});var Re=N((_r,Pe)=>{"use strict";h();Pe.exports=(...e)=>[...new Set([].concat(...e))]});var Ae=N(q=>{"use strict";h();var{promisify:xt}=I("util"),$e=I("fs");async function ie(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await xt($e[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function oe(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return $e[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}q.isFile=ie.bind(null,"stat","isFile");q.isDirectory=ie.bind(null,"stat","isDirectory");q.isSymlink=ie.bind(null,"lstat","isSymbolicLink");q.isFileSync=oe.bind(null,"statSync","isFile");q.isDirectorySync=oe.bind(null,"statSync","isDirectory");q.isSymlinkSync=oe.bind(null,"lstatSync","isSymbolicLink")});var je=N((Fr,ce)=>{"use strict";h();var M=I("path"),Le=Ae(),Ne=e=>e.length>1?`{${e.join(",")}}`:e[0],De=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return M.isAbsolute(r)?r:M.join(t,r)},Ot=(e,t)=>M.extname(e)?`**/${e}`:`**/${e}.${Ne(t)}`,Ie=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>M.posix.join(e,Ot(r,t.extensions))):t.files?t.files.map(r=>M.posix.join(e,`**/${r}`)):t.extensions?[M.posix.join(e,`**/*.${Ne(t.extensions)}`)]:[M.posix.join(e,"**")]};ce.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await Le.isDirectory(De(n,t.cwd))?Ie(n,t):n));return[].concat.apply([],r)};ce.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>Le.isDirectorySync(De(n,t.cwd))?Ie(n,t):n);return[].concat.apply([],r)}});var Ue=N((Pr,Ke)=>{"use strict";h();function Ge(e){return Array.isArray(e)?e:[e]}var We="",Ce=" ",se="\\",Ft=/^\s+$/,Tt=/(?:[^\\]|^)\\$/,Pt=/^\\!/,Rt=/^\\#/,$t=/\r?\n/g,At=/^\.*\/|^\.+$/,ae="/",ke="node-ignore";typeof Symbol<"u"&&(ke=Symbol.for("node-ignore"));var qe=ke,Lt=(e,t,r)=>Object.defineProperty(e,t,{value:r}),Nt=/([0-z])-([0-z])/g,Ye=()=>!1,Dt=e=>e.replace(Nt,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:We),It=e=>{let{length:t}=e;return e.slice(0,t-t%2)},jt=[[/\\?\s+$/,e=>e.indexOf("\\")===0?Ce:We],[/\\\s/g,()=>Ce],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6<r.length?"(?:\\/[^\\/]+)*":"\\/.+"],[/(^|[^\\]+)(\\\*)+(?=.+)/g,(e,t,r)=>{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>se],[/\\\\/g,()=>se],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,o)=>t===se?`\\[${r}${It(n)}${o}`:o==="]"&&n.length%2===0?`[${Dt(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],Me=Object.create(null),Gt=(e,t)=>{let r=Me[e];return r||(r=jt.reduce((n,o)=>n.replace(o[0],o[1].bind(e)),e),Me[e]=r),t?new RegExp(r,"i"):new RegExp(r)},fe=e=>typeof e=="string",Ct=e=>e&&fe(e)&&!Ft.test(e)&&!Tt.test(e)&&e.indexOf("#")!==0,qt=e=>e.split($t),ue=class{constructor(t,r,n,o){this.origin=t,this.pattern=r,this.negative=n,this.regex=o}},Mt=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(Pt,"!").replace(Rt,"#");let o=Gt(e,t);return new ue(r,e,n,o)},Wt=(e,t)=>{throw new t(e)},j=(e,t,r)=>fe(e)?e?j.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),Xe=e=>At.test(e);j.isNotRelative=Xe;j.convert=e=>e;var le=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){Lt(this,qe,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[qe]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(Ct(t)){let r=Mt(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,Ge(fe(t)?qt(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,o=!1;return this._rules.forEach(s=>{let{negative:d}=s;if(o===d&&n!==o||d&&!n&&!o&&!r)return;s.regex.test(t)&&(n=!d,o=d)}),{ignored:n,unignored:o}}_test(t,r,n,o){let s=t&&j.convert(t);return j(s,t,this._allowRelativePaths?Ye:Wt),this._t(s,r,n,o)}_t(t,r,n,o){if(t in r)return r[t];if(o||(o=t.split(ae)),o.pop(),!o.length)return r[t]=this._testOne(t,n);let s=this._t(o.join(ae)+ae,r,n,o);return r[t]=s.ignored?s:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return Ge(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},U=e=>new le(e),kt=e=>j(e&&j.convert(e),e,Ye);U.isPathValid=kt;U.default=U;Ke.exports=U;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");j.convert=e;let t=/^[a-z]:\//i;j.isNotRelative=r=>t.test(r)||Xe(r)}});var Ze=N(($r,de)=>{"use strict";h();var{promisify:Yt}=I("util"),Be=I("fs"),G=I("path"),ze=Oe(),Xt=Ue(),K=Te(),He=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],Kt=Yt(Be.readFile),Ut=e=>t=>t.startsWith("!")?"!"+G.posix.join(e,t.slice(1)):G.posix.join(e,t),Bt=(e,t)=>{let r=K(G.relative(t.cwd,G.dirname(t.fileName)));return e.split(/\r?\n/).filter(Boolean).filter(n=>!n.startsWith("#")).map(Ut(r))},Ve=e=>{let t=Xt();for(let r of e)t.add(Bt(r.content,{cwd:r.cwd,fileName:r.filePath}));return t},zt=(e,t)=>{if(e=K(e),G.isAbsolute(t)){if(K(t).startsWith(e))return t;throw new Error(`Path ${t} is not in cwd ${e}`)}return G.join(e,t)},Qe=(e,t)=>r=>e.ignores(K(G.relative(t,zt(t,r.path||r)))),Ht=async(e,t)=>{let r=G.join(t,e),n=await Kt(r,"utf8");return{cwd:t,filePath:r,content:n}},Vt=(e,t)=>{let r=G.join(t,e),n=Be.readFileSync(r,"utf8");return{cwd:t,filePath:r,content:n}},Je=({ignore:e=[],cwd:t=K(process.cwd())}={})=>({ignore:e,cwd:t});de.exports=async e=>{e=Je(e);let t=await ze("**/.gitignore",{ignore:He.concat(e.ignore),cwd:e.cwd}),r=await Promise.all(t.map(o=>Ht(o,e.cwd))),n=Ve(r);return Qe(n,e.cwd)};de.exports.sync=e=>{e=Je(e);let r=ze.sync("**/.gitignore",{ignore:He.concat(e.ignore),cwd:e.cwd}).map(o=>Vt(o,e.cwd)),n=Ve(r);return Qe(n,e.cwd)}});var tt=N((Lr,et)=>{"use strict";h();var{Transform:Qt}=I("stream"),B=class extends Qt{constructor(){super({objectMode:!0})}},pe=class extends B{constructor(t){super(),this._filter=t}_transform(t,r,n){this._filter(t)&&this.push(t),n()}},ye=class extends B{constructor(){super(),this._pushed=new Set}_transform(t,r,n){this._pushed.has(t)||(this.push(t),this._pushed.add(t)),n()}};et.exports={FilterStream:pe,UniqueStream:ye}});var or=N((Dr,W)=>{"use strict";h();var nt=I("fs"),z=Re(),Jt=bt(),H=Oe(),V=je(),he=Ze(),{FilterStream:Zt,UniqueStream:er}=tt(),it=()=>!1,rt=e=>e[0]==="!",tr=e=>{if(!e.every(t=>typeof t=="string"))throw new TypeError("Patterns must be a string or an array of strings")},rr=(e={})=>{if(!e.cwd)return;let t;try{t=nt.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},nr=e=>e.stats instanceof nt.Stats?e.path:e,Q=(e,t)=>{e=z([].concat(e)),tr(e),rr(t);let r=[];t={ignore:[],expandDirectories:!0,...t};for(let[n,o]of e.entries()){if(rt(o))continue;let s=e.slice(n).filter(p=>rt(p)).map(p=>p.slice(1)),d={...t,ignore:t.ignore.concat(s)};r.push({pattern:o,options:d})}return r},ir=(e,t)=>{let r={};return e.options.cwd&&(r.cwd=e.options.cwd),Array.isArray(e.options.expandDirectories)?r={...r,files:e.options.expandDirectories}:typeof e.options.expandDirectories=="object"&&(r={...r,...e.options.expandDirectories}),t(e.pattern,r)},ge=(e,t)=>e.options.expandDirectories?ir(e,t):[e.pattern],ot=e=>e&&e.gitignore?he.sync({cwd:e.cwd,ignore:e.ignore}):it,me=e=>t=>{let{options:r}=e;return r.ignore&&Array.isArray(r.ignore)&&r.expandDirectories&&(r.ignore=V.sync(r.ignore)),{pattern:t,options:r}};W.exports=async(e,t)=>{let r=Q(e,t),n=async()=>t&&t.gitignore?he({cwd:t.cwd,ignore:t.ignore}):it,o=async()=>{let O=await Promise.all(r.map(async A=>{let i=await ge(A,V);return Promise.all(i.map(me(A)))}));return z(...O)},[s,d]=await Promise.all([n(),o()]),p=await Promise.all(d.map(O=>H(O.pattern,O.options)));return z(...p).filter(O=>!s(nr(O)))};W.exports.sync=(e,t)=>{let r=Q(e,t),n=[];for(let d of r){let p=ge(d,V.sync).map(me(d));n.push(...p)}let o=ot(t),s=[];for(let d of n)s=z(s,H.sync(d.pattern,d.options));return s.filter(d=>!o(d))};W.exports.stream=(e,t)=>{let r=Q(e,t),n=[];for(let p of r){let O=ge(p,V.sync).map(me(p));n.push(...O)}let o=ot(t),s=new Zt(p=>!o(p)),d=new er;return Jt(n.map(p=>H.stream(p.pattern,p.options))).pipe(s).pipe(d)};W.exports.generateGlobTasks=Q;W.exports.hasMagic=(e,t)=>[].concat(e).some(r=>H.isDynamicPattern(r,t));W.exports.gitignore=he});var st=N((jr,ct)=>{"use strict";h();var C=I("constants"),cr=process.cwd,J=null,sr=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return J||(J=cr.call(process)),J};try{process.cwd()}catch{}typeof process.chdir=="function"&&(we=process.chdir,process.chdir=function(e){J=null,we.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,we));var we;ct.exports=ar;function ar(e){C.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=s(e.chown),e.fchown=s(e.fchown),e.lchown=s(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=d(e.chownSync),e.fchownSync=d(e.fchownSync),e.lchownSync=d(e.lchownSync),e.chmodSync=o(e.chmodSync),e.fchmodSync=o(e.fchmodSync),e.lchmodSync=o(e.lchmodSync),e.stat=p(e.stat),e.fstat=p(e.fstat),e.lstat=p(e.lstat),e.statSync=O(e.statSync),e.fstatSync=O(e.fstatSync),e.lstatSync=O(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(i,f,u){u&&process.nextTick(u)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(i,f,u,c){c&&process.nextTick(c)},e.lchownSync=function(){}),sr==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(i){function f(u,c,l){var E=Date.now(),m=0;i(u,c,function v(D){if(D&&(D.code==="EACCES"||D.code==="EPERM")&&Date.now()-E<6e4){setTimeout(function(){e.stat(c,function(L,X){L&&L.code==="ENOENT"?i(u,c,v):l(D)})},m),m<100&&(m+=10);return}l&&l(D)})}return Object.setPrototypeOf&&Object.setPrototypeOf(f,i),f}(e.rename)),e.read=typeof e.read!="function"?e.read:function(i){function f(u,c,l,E,m,v){var D;if(v&&typeof v=="function"){var L=0;D=function(X,be,xe){if(X&&X.code==="EAGAIN"&&L<10)return L++,i.call(e,u,c,l,E,m,D);v.apply(this,arguments)}}return i.call(e,u,c,l,E,m,D)}return Object.setPrototypeOf&&Object.setPrototypeOf(f,i),f}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(i){return function(f,u,c,l,E){for(var m=0;;)try{return i.call(e,f,u,c,l,E)}catch(v){if(v.code==="EAGAIN"&&m<10){m++;continue}throw v}}}(e.readSync);function t(i){i.lchmod=function(f,u,c){i.open(f,C.O_WRONLY|C.O_SYMLINK,u,function(l,E){if(l){c&&c(l);return}i.fchmod(E,u,function(m){i.close(E,function(v){c&&c(m||v)})})})},i.lchmodSync=function(f,u){var c=i.openSync(f,C.O_WRONLY|C.O_SYMLINK,u),l=!0,E;try{E=i.fchmodSync(c,u),l=!1}finally{if(l)try{i.closeSync(c)}catch{}else i.closeSync(c)}return E}}function r(i){C.hasOwnProperty("O_SYMLINK")&&i.futimes?(i.lutimes=function(f,u,c,l){i.open(f,C.O_SYMLINK,function(E,m){if(E){l&&l(E);return}i.futimes(m,u,c,function(v){i.close(m,function(D){l&&l(v||D)})})})},i.lutimesSync=function(f,u,c){var l=i.openSync(f,C.O_SYMLINK),E,m=!0;try{E=i.futimesSync(l,u,c),m=!1}finally{if(m)try{i.closeSync(l)}catch{}else i.closeSync(l)}return E}):i.futimes&&(i.lutimes=function(f,u,c,l){l&&process.nextTick(l)},i.lutimesSync=function(){})}function n(i){return i&&function(f,u,c){return i.call(e,f,u,function(l){A(l)&&(l=null),c&&c.apply(this,arguments)})}}function o(i){return i&&function(f,u){try{return i.call(e,f,u)}catch(c){if(!A(c))throw c}}}function s(i){return i&&function(f,u,c,l){return i.call(e,f,u,c,function(E){A(E)&&(E=null),l&&l.apply(this,arguments)})}}function d(i){return i&&function(f,u,c){try{return i.call(e,f,u,c)}catch(l){if(!A(l))throw l}}}function p(i){return i&&function(f,u,c){typeof u=="function"&&(c=u,u=null);function l(E,m){m&&(m.uid<0&&(m.uid+=4294967296),m.gid<0&&(m.gid+=4294967296)),c&&c.apply(this,arguments)}return u?i.call(e,f,u,l):i.call(e,f,l)}}function O(i){return i&&function(f,u){var c=u?i.call(e,f,u):i.call(e,f);return c&&(c.uid<0&&(c.uid+=4294967296),c.gid<0&&(c.gid+=4294967296)),c}}function A(i){if(!i||i.code==="ENOSYS")return!0;var f=!process.getuid||process.getuid()!==0;return!!(f&&(i.code==="EINVAL"||i.code==="EPERM"))}}});var lt=N((Cr,ut)=>{"use strict";h();var at=I("stream").Stream;ut.exports=ur;function ur(e){return{ReadStream:t,WriteStream:r};function t(n,o){if(!(this instanceof t))return new t(n,o);at.call(this);var s=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,o=o||{};for(var d=Object.keys(o),p=0,O=d.length;p<O;p++){var A=d[p];this[A]=o[A]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}e.open(this.path,this.flags,this.mode,function(i,f){if(i){s.emit("error",i),s.readable=!1;return}s.fd=f,s.emit("open",f),s._read()})}function r(n,o){if(!(this instanceof r))return new r(n,o);at.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,o=o||{};for(var s=Object.keys(o),d=0,p=s.length;d<p;d++){var O=s[d];this[O]=o[O]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var dt=N((Mr,ft)=>{"use strict";h();ft.exports=fr;var lr=Object.getPrototypeOf||function(e){return e.__proto__};function fr(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:lr(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var gr=N((kr,ve)=>{"use strict";h();var b=I("fs"),dr=st(),pr=lt(),yr=dt(),Z=I("util"),$,te;typeof Symbol=="function"&&typeof Symbol.for=="function"?($=Symbol.for("graceful-fs.queue"),te=Symbol.for("graceful-fs.previous")):($="___graceful-fs.queue",te="___graceful-fs.previous");function hr(){}function ht(e,t){Object.defineProperty(e,$,{get:function(){return t}})}var k=hr;Z.debuglog?k=Z.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(k=function(){var e=Z.format.apply(Z,arguments);e="GFS4: "+e.split(/\n/).join(`
3
+ GFS4: `),console.error(e)});b[$]||(pt=global[$]||[],ht(b,pt),b.close=function(e){function t(r,n){return e.call(b,r,function(o){o||yt(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,te,{value:e}),t}(b.close),b.closeSync=function(e){function t(r){e.apply(b,arguments),yt()}return Object.defineProperty(t,te,{value:e}),t}(b.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){k(b[$]),I("assert").equal(b[$].length,0)}));var pt;global[$]||ht(global,b[$]);ve.exports=Ee(yr(b));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!b.__patched&&(ve.exports=Ee(b),b.__patched=!0);function Ee(e){dr(e),e.gracefulify=Ee,e.createReadStream=be,e.createWriteStream=xe;var t=e.readFile;e.readFile=r;function r(a,g,y){return typeof g=="function"&&(y=g,g=null),T(a,g,y);function T(P,F,_,x){return t(P,F,function(w){w&&(w.code==="EMFILE"||w.code==="ENFILE")?Y([T,[P,F,_],w,x||Date.now(),Date.now()]):typeof _=="function"&&_.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=o;function o(a,g,y,T){return typeof y=="function"&&(T=y,y=null),P(a,g,y,T);function P(F,_,x,w,R){return n(F,_,x,function(S){S&&(S.code==="EMFILE"||S.code==="ENFILE")?Y([P,[F,_,x,w],S,R||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var s=e.appendFile;s&&(e.appendFile=d);function d(a,g,y,T){return typeof y=="function"&&(T=y,y=null),P(a,g,y,T);function P(F,_,x,w,R){return s(F,_,x,function(S){S&&(S.code==="EMFILE"||S.code==="ENFILE")?Y([P,[F,_,x,w],S,R||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var p=e.copyFile;p&&(e.copyFile=O);function O(a,g,y,T){return typeof y=="function"&&(T=y,y=0),P(a,g,y,T);function P(F,_,x,w,R){return p(F,_,x,function(S){S&&(S.code==="EMFILE"||S.code==="ENFILE")?Y([P,[F,_,x,w],S,R||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var A=e.readdir;e.readdir=f;var i=/^v[0-5]\./;function f(a,g,y){typeof g=="function"&&(y=g,g=null);var T=i.test(process.version)?function(_,x,w,R){return A(_,P(_,x,w,R))}:function(_,x,w,R){return A(_,x,P(_,x,w,R))};return T(a,g,y);function P(F,_,x,w){return function(R,S){R&&(R.code==="EMFILE"||R.code==="ENFILE")?Y([T,[F,_,x],R,w||Date.now(),Date.now()]):(S&&S.sort&&S.sort(),typeof x=="function"&&x.call(this,R,S))}}}if(process.version.substr(0,4)==="v0.8"){var u=pr(e);v=u.ReadStream,L=u.WriteStream}var c=e.ReadStream;c&&(v.prototype=Object.create(c.prototype),v.prototype.open=D);var l=e.WriteStream;l&&(L.prototype=Object.create(l.prototype),L.prototype.open=X),Object.defineProperty(e,"ReadStream",{get:function(){return v},set:function(a){v=a},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return L},set:function(a){L=a},enumerable:!0,configurable:!0});var E=v;Object.defineProperty(e,"FileReadStream",{get:function(){return E},set:function(a){E=a},enumerable:!0,configurable:!0});var m=L;Object.defineProperty(e,"FileWriteStream",{get:function(){return m},set:function(a){m=a},enumerable:!0,configurable:!0});function v(a,g){return this instanceof v?(c.apply(this,arguments),this):v.apply(Object.create(v.prototype),arguments)}function D(){var a=this;ne(a.path,a.flags,a.mode,function(g,y){g?(a.autoClose&&a.destroy(),a.emit("error",g)):(a.fd=y,a.emit("open",y),a.read())})}function L(a,g){return this instanceof L?(l.apply(this,arguments),this):L.apply(Object.create(L.prototype),arguments)}function X(){var a=this;ne(a.path,a.flags,a.mode,function(g,y){g?(a.destroy(),a.emit("error",g)):(a.fd=y,a.emit("open",y))})}function be(a,g){return new e.ReadStream(a,g)}function xe(a,g){return new e.WriteStream(a,g)}var _t=e.open;e.open=ne;function ne(a,g,y,T){return typeof y=="function"&&(T=y,y=null),P(a,g,y,T);function P(F,_,x,w,R){return _t(F,_,x,function(S,Er){S&&(S.code==="EMFILE"||S.code==="ENFILE")?Y([P,[F,_,x,w],S,R||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}return e}function Y(e){k("ENQUEUE",e[0].name,e[1]),b[$].push(e),Se()}var ee;function yt(){for(var e=Date.now(),t=0;t<b[$].length;++t)b[$][t].length>2&&(b[$][t][3]=e,b[$][t][4]=e);Se()}function Se(){if(clearTimeout(ee),ee=void 0,b[$].length!==0){var e=b[$].shift(),t=e[0],r=e[1],n=e[2],o=e[3],s=e[4];if(o===void 0)k("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-o>=6e4){k("TIMEOUT",t.name,r);var d=r.pop();typeof d=="function"&&d.call(null,n)}else{var p=Date.now()-s,O=Math.max(s-o,1),A=Math.min(O*1.2,100);p>=A?(k("RETRY",t.name,r),t.apply(null,r.concat([o]))):b[$].push(e)}ee===void 0&&(ee=setTimeout(Se,0))}}});var mr=N((Xr,gt)=>{"use strict";h();gt.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Et=N((Ur,wt)=>{"use strict";h();wt.exports=mt;function mt(e,t){if(e&&t)return mt(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),o=0;o<n.length;o++)n[o]=arguments[o];var s=e.apply(this,n),d=n[n.length-1];return typeof s=="function"&&s!==d&&Object.keys(d).forEach(function(p){s[p]=d[p]}),s}}});var wr=N((zr,_e)=>{"use strict";h();var St=Et();_e.exports=St(re);_e.exports.strict=St(vt);re.proto=re(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return re(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return vt(this)},configurable:!0})});function re(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function vt(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});export{mr as a,Te as b,or as c,gr as d,Et as e,wr as f};