@salla.sa/twilight-theme-engine 1.0.47 → 1.0.49

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 (126) hide show
  1. package/dist/{AddToCartForm-NICDUAS3.js → AddToCartForm-KU2UVYWT.js} +3 -3
  2. package/dist/{AddToCartForm-NICDUAS3.js.map → AddToCartForm-KU2UVYWT.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-NKPS4CQ2.js → BlogAuthorPage-FJQ76FYU.js} +6 -6
  4. package/dist/{BlogAuthorPage-NKPS4CQ2.js.map → BlogAuthorPage-FJQ76FYU.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-FSCFBS36.js → BlogCategoryPage-G3NUPFQG.js} +6 -6
  6. package/dist/{BlogCategoryPage-FSCFBS36.js.map → BlogCategoryPage-G3NUPFQG.js.map} +1 -1
  7. package/dist/{BlogPage-OZTHYA3G.js → BlogPage-7C6IWCBB.js} +5 -5
  8. package/dist/{BlogPage-OZTHYA3G.js.map → BlogPage-7C6IWCBB.js.map} +1 -1
  9. package/dist/{BlogSinglePage-KC67IUL7.js → BlogSinglePage-JD73WQ4N.js} +5 -5
  10. package/dist/{BlogSinglePage-KC67IUL7.js.map → BlogSinglePage-JD73WQ4N.js.map} +1 -1
  11. package/dist/{BlogTagPage-N7JLIRKV.js → BlogTagPage-R5NF3YLM.js} +6 -6
  12. package/dist/{BlogTagPage-N7JLIRKV.js.map → BlogTagPage-R5NF3YLM.js.map} +1 -1
  13. package/dist/{BrandsPage-5SC62L6S.js → BrandsPage-6HOFLIDG.js} +5 -5
  14. package/dist/{BrandsPage-5SC62L6S.js.map → BrandsPage-6HOFLIDG.js.map} +1 -1
  15. package/dist/{Breadcrumb-W64WMO56.js → Breadcrumb-V5UW4TPJ.js} +5 -5
  16. package/dist/{Breadcrumb-W64WMO56.js.map → Breadcrumb-V5UW4TPJ.js.map} +1 -1
  17. package/dist/{CartItem-UOVSSW5O.js → CartItem-ROKMQFVJ.js} +5 -5
  18. package/dist/{CartItem-UOVSSW5O.js.map → CartItem-ROKMQFVJ.js.map} +1 -1
  19. package/dist/{CartSummary-4V3L56U7.js → CartSummary-EDAXR4VQ.js} +5 -5
  20. package/dist/{CartSummary-4V3L56U7.js.map → CartSummary-EDAXR4VQ.js.map} +1 -1
  21. package/dist/{Copyright-OCQCOUFS.js → Copyright-VRCRWG7U.js} +3 -3
  22. package/dist/{Copyright-OCQCOUFS.js.map → Copyright-VRCRWG7U.js.map} +1 -1
  23. package/dist/{CustomerLayout-PLJTAXCP.js → CustomerLayout-BT7RWQCX.js} +5 -5
  24. package/dist/{CustomerLayout-PLJTAXCP.js.map → CustomerLayout-BT7RWQCX.js.map} +1 -1
  25. package/dist/{Footer-QD7ASWFT.js → Footer-GXA4V3L3.js} +5 -5
  26. package/dist/{Footer-QD7ASWFT.js.map → Footer-GXA4V3L3.js.map} +1 -1
  27. package/dist/{Header-M5GOR6XZ.js → Header-VYEA3QT7.js} +4 -4
  28. package/dist/{Header-M5GOR6XZ.js.map → Header-VYEA3QT7.js.map} +1 -1
  29. package/dist/{LoyaltyPage-C7FKYLIW.js → LoyaltyPage-G3BDWISN.js} +5 -5
  30. package/dist/{LoyaltyPage-C7FKYLIW.js.map → LoyaltyPage-G3BDWISN.js.map} +1 -1
  31. package/dist/{MainMenu-MMAYRKYE.js → MainMenu-XZZDDKQI.js} +3 -3
  32. package/dist/{MainMenu-MMAYRKYE.js.map → MainMenu-XZZDDKQI.js.map} +1 -1
  33. package/dist/{MasterLayout-SCTQ42ID.js → MasterLayout-TAH3WY75.js} +5 -5
  34. package/dist/{MasterLayout-SCTQ42ID.js.map → MasterLayout-TAH3WY75.js.map} +1 -1
  35. package/dist/{MobileMenu-J34MVD6W.js → MobileMenu-G2G4BA35.js} +5 -5
  36. package/dist/{MobileMenu-J34MVD6W.js.map → MobileMenu-G2G4BA35.js.map} +1 -1
  37. package/dist/{NotificationsPage-KF6AIPK3.js → NotificationsPage-PL3HYLDH.js} +5 -5
  38. package/dist/{NotificationsPage-KF6AIPK3.js.map → NotificationsPage-PL3HYLDH.js.map} +1 -1
  39. package/dist/{OrderSinglePage-LP7FUHKL.js → OrderSinglePage-TDMSKXVM.js} +5 -5
  40. package/dist/{OrderSinglePage-LP7FUHKL.js.map → OrderSinglePage-TDMSKXVM.js.map} +1 -1
  41. package/dist/{OrdersPage-A3K5BDBZ.js → OrdersPage-RGP3F6ZR.js} +5 -5
  42. package/dist/{OrdersPage-A3K5BDBZ.js.map → OrdersPage-RGP3F6ZR.js.map} +1 -1
  43. package/dist/{PageSingle-FHHC5QDA.js → PageSingle-HYNH3QYU.js} +3 -3
  44. package/dist/{PageSingle-FHHC5QDA.js.map → PageSingle-HYNH3QYU.js.map} +1 -1
  45. package/dist/{ProductDetails-AF3I5FQQ.js → ProductDetails-35OUOV32.js} +3 -3
  46. package/dist/{ProductDetails-AF3I5FQQ.js.map → ProductDetails-35OUOV32.js.map} +1 -1
  47. package/dist/{ProfilePage-RXQIUTU4.js → ProfilePage-JKAR5TWA.js} +5 -5
  48. package/dist/{ProfilePage-RXQIUTU4.js.map → ProfilePage-JKAR5TWA.js.map} +1 -1
  49. package/dist/{SeoCartWidget-72U3UQKH.js → SeoCartWidget-XQLDKKSF.js} +5 -5
  50. package/dist/{SeoCartWidget-72U3UQKH.js.map → SeoCartWidget-XQLDKKSF.js.map} +1 -1
  51. package/dist/{SettingsPage-65CZ2LNG.js → SettingsPage-UDWYTMHZ.js} +5 -5
  52. package/dist/{SettingsPage-65CZ2LNG.js.map → SettingsPage-UDWYTMHZ.js.map} +1 -1
  53. package/dist/{StoreClosedNotification-4KJVEGPE.js → StoreClosedNotification-V5OSQJFG.js} +6 -6
  54. package/dist/{StoreClosedNotification-4KJVEGPE.js.map → StoreClosedNotification-V5OSQJFG.js.map} +1 -1
  55. package/dist/{TestimonialsPage-NGCHKB4F.js → TestimonialsPage-WJEVEKPA.js} +3 -3
  56. package/dist/{TestimonialsPage-NGCHKB4F.js.map → TestimonialsPage-WJEVEKPA.js.map} +1 -1
  57. package/dist/{ThankYouPage-A7IWCMXJ.js → ThankYouPage-MRJZCNKI.js} +5 -5
  58. package/dist/{ThankYouPage-A7IWCMXJ.js.map → ThankYouPage-MRJZCNKI.js.map} +1 -1
  59. package/dist/{WalletPage-FNGL7Z3Z.js → WalletPage-CO4F3XWH.js} +5 -5
  60. package/dist/{WalletPage-FNGL7Z3Z.js.map → WalletPage-CO4F3XWH.js.map} +1 -1
  61. package/dist/{WishlistPage-KDLBETWD.js → WishlistPage-THOWE6KB.js} +7 -7
  62. package/dist/{WishlistPage-KDLBETWD.js.map → WishlistPage-THOWE6KB.js.map} +1 -1
  63. package/dist/api/product.d.ts +6 -1
  64. package/dist/api/product.d.ts.map +1 -1
  65. package/dist/api/product.js +1 -1
  66. package/dist/api/wishlist.js +2 -2
  67. package/dist/{chunk-DTWFNS3F.js → chunk-44G4RAUR.js} +7 -7
  68. package/dist/{chunk-DTWFNS3F.js.map → chunk-44G4RAUR.js.map} +1 -1
  69. package/dist/{chunk-UQRLBMIO.js → chunk-C7RST4KQ.js} +7 -7
  70. package/dist/{chunk-UQRLBMIO.js.map → chunk-C7RST4KQ.js.map} +1 -1
  71. package/dist/{chunk-CPQXPECC.js → chunk-CBNUZ7LI.js} +24 -12
  72. package/dist/chunk-CBNUZ7LI.js.map +1 -0
  73. package/dist/{chunk-WITIL2MK.js → chunk-HGNZIUZK.js} +5 -5
  74. package/dist/{chunk-WITIL2MK.js.map → chunk-HGNZIUZK.js.map} +1 -1
  75. package/dist/chunk-IBU4RNK5.js +14 -0
  76. package/dist/{chunk-HNSZ6VBK.js.map → chunk-IBU4RNK5.js.map} +1 -1
  77. package/dist/{chunk-AVPIY3Y4.js → chunk-L3CR2OAD.js} +4 -4
  78. package/dist/{chunk-AVPIY3Y4.js.map → chunk-L3CR2OAD.js.map} +1 -1
  79. package/dist/{chunk-QVPMWMPP.js → chunk-O2RQTN7B.js} +4 -4
  80. package/dist/{chunk-QVPMWMPP.js.map → chunk-O2RQTN7B.js.map} +1 -1
  81. package/dist/{chunk-65Z2ZDKZ.js → chunk-OWNULELS.js} +5 -5
  82. package/dist/{chunk-65Z2ZDKZ.js.map → chunk-OWNULELS.js.map} +1 -1
  83. package/dist/{chunk-LKBWIN26.js → chunk-QFJPYDY5.js} +3 -3
  84. package/dist/{chunk-LKBWIN26.js.map → chunk-QFJPYDY5.js.map} +1 -1
  85. package/dist/{chunk-WL5CWJVZ.js → chunk-SSMBRYI5.js} +3 -3
  86. package/dist/{chunk-WL5CWJVZ.js.map → chunk-SSMBRYI5.js.map} +1 -1
  87. package/dist/{chunk-U325BK62.js → chunk-TP3CKPCJ.js} +4 -4
  88. package/dist/{chunk-U325BK62.js.map → chunk-TP3CKPCJ.js.map} +1 -1
  89. package/dist/{chunk-3XIITSKM.js → chunk-VSBG4G2C.js} +3 -3
  90. package/dist/{chunk-3XIITSKM.js.map → chunk-VSBG4G2C.js.map} +1 -1
  91. package/dist/{chunk-L42W6YS3.js → chunk-YZPS7GOM.js} +3 -3
  92. package/dist/{chunk-L42W6YS3.js.map → chunk-YZPS7GOM.js.map} +1 -1
  93. package/dist/components/cart/index.js +1 -1
  94. package/dist/components/common/index.js +1 -1
  95. package/dist/components/drawer/index.js +3 -3
  96. package/dist/components/home/index.js +6 -6
  97. package/dist/components/layout/index.js +5 -5
  98. package/dist/components/product/index.js +4 -4
  99. package/dist/components/store/index.js +5 -5
  100. package/dist/{document-class-IESLLQCD.js → document-class-FVJTJ6MF.js} +4 -4
  101. package/dist/{document-class-IESLLQCD.js.map → document-class-FVJTJ6MF.js.map} +1 -1
  102. package/dist/hooks/index.js +3 -3
  103. package/dist/hooks/useGtm.js +3 -3
  104. package/dist/hooks/useMoney.js +3 -3
  105. package/dist/hooks/useStore.js +3 -3
  106. package/dist/index.js +3 -3
  107. package/dist/{not-found-3OWRDBD3.js → not-found-XAFDC4TX.js} +5 -5
  108. package/dist/{not-found-3OWRDBD3.js.map → not-found-XAFDC4TX.js.map} +1 -1
  109. package/dist/providers/index.js +3 -3
  110. package/dist/routes/account/orders.js +1 -1
  111. package/dist/routes/account.js +8 -8
  112. package/dist/routes/blog.js +5 -5
  113. package/dist/routes/brands.js +1 -1
  114. package/dist/routes/cart.js +8 -8
  115. package/dist/routes/home.js +7 -7
  116. package/dist/routes/loyalty.js +1 -1
  117. package/dist/routes/page.js +1 -1
  118. package/dist/routes/product-listing.js +6 -6
  119. package/dist/routes/product.js +6 -6
  120. package/dist/routes/testimonials.js +1 -1
  121. package/dist/routes/thank-you.js +1 -1
  122. package/dist/skeleton.js +7 -7
  123. package/dist/tanstack.js +3 -3
  124. package/package.json +1 -1
  125. package/dist/chunk-CPQXPECC.js.map +0 -1
  126. package/dist/chunk-HNSZ6VBK.js +0 -14
@@ -19,7 +19,7 @@ async function loyaltyLoader() {
19
19
 
20
20
  // src/routes/loyalty/index.tsx
21
21
  var LazyLoyaltyPage = lazy(
22
- () => import('../LoyaltyPage-C7FKYLIW.js').then((m) => ({ default: m.LoyaltyPage }))
22
+ () => import('../LoyaltyPage-G3BDWISN.js').then((m) => ({ default: m.LoyaltyPage }))
23
23
  );
24
24
  var LoyaltyPage = LazyLoyaltyPage;
25
25
  async function loader(_ctx, extend) {
@@ -28,7 +28,7 @@ async function pageSingleLoader({ params }) {
28
28
  }
29
29
 
30
30
  // src/routes/page/index.tsx
31
- var LazyPageSingle = lazy(() => import('../PageSingle-FHHC5QDA.js').then((m) => ({ default: m.PageSingle })));
31
+ var LazyPageSingle = lazy(() => import('../PageSingle-HYNH3QYU.js').then((m) => ({ default: m.PageSingle })));
32
32
  var PageSingleLazy = LazyPageSingle;
33
33
  async function loader(ctx, extend) {
34
34
  const data = await pageSingleLoader({ params: ctx.params });
@@ -2,13 +2,13 @@ import { sortOptions } from '../chunk-6Z4MOC4S.js';
2
2
  import { category } from '../chunk-WHOWSSX4.js';
3
3
  import { brand } from '../chunk-IH3TQ3LD.js';
4
4
  import { buildHreflangAlternates } from '../chunk-TZ3E5BN4.js';
5
- import { LazyTestimonials } from '../chunk-WITIL2MK.js';
6
- import { product } from '../chunk-CPQXPECC.js';
5
+ import { LazyTestimonials } from '../chunk-HGNZIUZK.js';
6
+ import { product } from '../chunk-CBNUZ7LI.js';
7
7
  import { Drawer } from '../chunk-6TKIUG5C.js';
8
- import { ProductCard } from '../chunk-UQRLBMIO.js';
8
+ import { ProductCard } from '../chunk-C7RST4KQ.js';
9
9
  import '../chunk-342EPVXN.js';
10
- import { useStore } from '../chunk-DTWFNS3F.js';
11
- import '../chunk-65Z2ZDKZ.js';
10
+ import { useStore } from '../chunk-44G4RAUR.js';
11
+ import '../chunk-OWNULELS.js';
12
12
  import '../chunk-JKIRRMBU.js';
13
13
  import '../chunk-2JV6WZ6O.js';
14
14
  import '../chunk-6IATCGID.js';
@@ -39,7 +39,7 @@ import '../chunk-YMVLYYLU.js';
39
39
  import '../chunk-RJPPO3ET.js';
40
40
  import { HookSlot } from '../chunk-Q7VWURUR.js';
41
41
  import '../chunk-GU2KUQVD.js';
42
- import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-LKBWIN26.js';
42
+ import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-QFJPYDY5.js';
43
43
  import '../chunk-AXW67SY7.js';
44
44
  import '../chunk-BYMOPN2S.js';
45
45
  import '../chunk-SKLEJJ6M.js';
@@ -1,10 +1,10 @@
1
1
  import { buildHreflangAlternates } from '../chunk-TZ3E5BN4.js';
2
- import { ProductsSlider, LazyTestimonials } from '../chunk-WITIL2MK.js';
3
- import { product } from '../chunk-CPQXPECC.js';
4
- import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-UQRLBMIO.js';
2
+ import { ProductsSlider, LazyTestimonials } from '../chunk-HGNZIUZK.js';
3
+ import { product } from '../chunk-CBNUZ7LI.js';
4
+ import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-C7RST4KQ.js';
5
5
  import '../chunk-342EPVXN.js';
6
- import '../chunk-DTWFNS3F.js';
7
- import '../chunk-65Z2ZDKZ.js';
6
+ import '../chunk-44G4RAUR.js';
7
+ import '../chunk-OWNULELS.js';
8
8
  import '../chunk-JKIRRMBU.js';
9
9
  import '../chunk-2JV6WZ6O.js';
10
10
  import '../chunk-6IATCGID.js';
@@ -35,7 +35,7 @@ import { useComments } from '../chunk-YMVLYYLU.js';
35
35
  import '../chunk-RJPPO3ET.js';
36
36
  import { HookSlot } from '../chunk-Q7VWURUR.js';
37
37
  import '../chunk-GU2KUQVD.js';
38
- import { LazyBreadcrumb, LazyRenderWhenVisible } from '../chunk-LKBWIN26.js';
38
+ import { LazyBreadcrumb, LazyRenderWhenVisible } from '../chunk-QFJPYDY5.js';
39
39
  import '../chunk-AXW67SY7.js';
40
40
  import '../chunk-BYMOPN2S.js';
41
41
  import '../chunk-SKLEJJ6M.js';
@@ -18,7 +18,7 @@ async function testimonialsLoader(_ctx) {
18
18
 
19
19
  // src/routes/testimonials/index.tsx
20
20
  var LazyTestimonialsPage = lazy(
21
- () => import('../TestimonialsPage-NGCHKB4F.js').then((m) => ({ default: m.TestimonialsPage }))
21
+ () => import('../TestimonialsPage-WJEVEKPA.js').then((m) => ({ default: m.TestimonialsPage }))
22
22
  );
23
23
  var TestimonialsPage = LazyTestimonialsPage;
24
24
  async function loader(ctx, extend) {
@@ -39,7 +39,7 @@ async function thankYouLoader({
39
39
 
40
40
  // src/routes/thank-you/index.tsx
41
41
  var LazyThankYouPage = lazy(
42
- () => import('../ThankYouPage-A7IWCMXJ.js').then((m) => ({ default: m.ThankYouPage }))
42
+ () => import('../ThankYouPage-MRJZCNKI.js').then((m) => ({ default: m.ThankYouPage }))
43
43
  );
44
44
  var ThankYouPage = LazyThankYouPage;
45
45
  async function loader(ctx, extend) {
package/dist/skeleton.js CHANGED
@@ -1,13 +1,13 @@
1
1
  export { BlogSkeleton, BreadcrumbSkeleton, CartSkeleton, CustomerLayoutSkeleton, CustomerPageSkeleton, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, SkeletonPulse } from './chunk-N7CCSGZF.js';
2
- export { HomeSkeleton } from './chunk-L42W6YS3.js';
2
+ export { HomeSkeleton } from './chunk-YZPS7GOM.js';
3
3
  import './chunk-P4DUWQU4.js';
4
4
  import './chunk-TZ3E5BN4.js';
5
- import './chunk-WITIL2MK.js';
6
- import './chunk-CPQXPECC.js';
7
- import './chunk-UQRLBMIO.js';
5
+ import './chunk-HGNZIUZK.js';
6
+ import './chunk-CBNUZ7LI.js';
7
+ import './chunk-C7RST4KQ.js';
8
8
  import './chunk-342EPVXN.js';
9
- import './chunk-DTWFNS3F.js';
10
- import './chunk-65Z2ZDKZ.js';
9
+ import './chunk-44G4RAUR.js';
10
+ import './chunk-OWNULELS.js';
11
11
  import './chunk-JKIRRMBU.js';
12
12
  import './chunk-2JV6WZ6O.js';
13
13
  import './chunk-6IATCGID.js';
@@ -38,7 +38,7 @@ import './chunk-YMVLYYLU.js';
38
38
  import './chunk-RJPPO3ET.js';
39
39
  import './chunk-Q7VWURUR.js';
40
40
  import './chunk-GU2KUQVD.js';
41
- import './chunk-LKBWIN26.js';
41
+ import './chunk-QFJPYDY5.js';
42
42
  import './chunk-AXW67SY7.js';
43
43
  import './chunk-BYMOPN2S.js';
44
44
  import './chunk-SKLEJJ6M.js';
package/dist/tanstack.js CHANGED
@@ -1,5 +1,5 @@
1
- import { rootHead } from './chunk-QVPMWMPP.js';
2
- export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-QVPMWMPP.js';
1
+ import { rootHead } from './chunk-O2RQTN7B.js';
2
+ export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-O2RQTN7B.js';
3
3
  export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-QUUSMVCP.js';
4
4
  import './chunk-Z4Y55HWX.js';
5
5
  export { tanstackHeadAdapter as head, withHead } from './chunk-4D44TJ72.js';
@@ -8,7 +8,7 @@ import './chunk-B3EFOE57.js';
8
8
  import './chunk-WMSOSA74.js';
9
9
  import './chunk-KT2MUSRN.js';
10
10
  import './chunk-TZ3E5BN4.js';
11
- import './chunk-CPQXPECC.js';
11
+ import './chunk-CBNUZ7LI.js';
12
12
  import './chunk-6IATCGID.js';
13
13
  import './chunk-3MHDV5JS.js';
14
14
  import './chunk-JD4J2ZB6.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.47",
3
+ "version": "1.0.49",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/api/product.ts"],"names":["product"],"mappings":"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","file":"chunk-CPQXPECC.js","sourcesContent":["import { queryOptions, defaultShouldDehydrateQuery } from '@tanstack/react-query';\nimport { api, getActiveScope } from './client';\nimport type { Product } from '../types';\nimport type { Pagination, PaginatedResult } from './types';\nimport { orThrow } from '../providers/NavigationProvider';\nimport { getTwilightContext } from '../twilight/context';\nimport type { ActiveScope } from '../utils/cookies';\n\n// ===== Filter Types =====\n\nexport interface FilterValue {\n key?: string;\n count?: number;\n value?: string;\n from?: number | '*';\n to?: number | '*';\n}\n\nexport interface Filter {\n key?: string;\n label?: string;\n type?: string;\n values?: FilterValue[];\n max?: number;\n min?: number;\n}\n\n// ===== Product List Types =====\n\nexport type ProductsListSource =\n | 'brands'\n | 'categories'\n | 'json'\n | 'landing-page'\n | 'latest'\n | 'offers'\n | 'recently'\n | 'related'\n | 'selected'\n | 'tags'\n | 'top-rated'\n | 'wishlist'\n | 'search'\n | 'sales'\n | 'reorder'\n | 'best_selling';\n\nexport interface ProductsListParams {\n /** Source type (wishlist, latest, brands, etc.) */\n source: ProductsListSource;\n /** Source value (brand_id, category_id, tag_id, search keyword, or JSON array of product IDs) */\n sourceValue?: string | number | number[] | null;\n /** Page number for offset-based pagination */\n page?: number;\n /** Cursor for cursor-based pagination (from previous response) */\n cursor?: string | null;\n /** Items per page (default: 15) */\n perPage?: number;\n /** Sort option */\n sort?: string;\n /** Enable filters on the response */\n filterable?: boolean;\n /** Abort signal for cancellation */\n signal?: AbortSignal;\n}\n\nexport type ProductsListResult = PaginatedResult<Product> & {\n filters?: Filter[];\n};\n\nexport interface ProductsListResponse {\n data: Product[];\n cursor?: Pagination;\n filters?: Filter[];\n}\n\n// ===== List-card preview cache =====\n// List payloads are a subset of details (one `image`, no `options` / `images[]`).\n// They live on a separate query key so they can paint a sheet/quick-view without\n// being treated as a successful `products/{id}/details` fetch.\n\nfunction queryClientOrNull() {\n try {\n const queryClient = getTwilightContext().queryClient;\n return queryClient && typeof queryClient.setQueryData === 'function' ? queryClient : null;\n } catch {\n return null;\n }\n}\n\nexport function productPreviewQueryKey(id: string) {\n return ['products', 'preview', String(id), { scope: getActiveScope() }] as const;\n}\n\nexport function productDetailQueryKey(id: string) {\n return ['products', 'detail', id, { scope: getActiveScope() }] as const;\n}\n\n/** True when this query is a list-card stand-in — skip it when dehydrating SSR. */\nexport function isProductPreviewQuery(query: { queryKey: readonly unknown[] }): boolean {\n return query.queryKey[0] === 'products' && query.queryKey[1] === 'preview';\n}\n\n/**\n * Default dehydrate policy (success) plus pending SSR-stream queries, minus\n * list-card stand-ins. Replacing the default wholesale would ship error states.\n */\nexport function shouldDehydrateQuery(\n query: Parameters<typeof defaultShouldDehydrateQuery>[0]\n): boolean {\n return (\n !isProductPreviewQuery(query) &&\n (defaultShouldDehydrateQuery(query) || query.state.status === 'pending')\n );\n}\n\n/**\n * Remember a list/card product so `product.queries.detail(id)` can use it as\n * `placeholderData` while details load. No-op if details for this id are already\n * cached. Themes that fetch products outside `product.list` should call this.\n */\nexport function rememberProductPreview(product: Product): void {\n const queryClient = queryClientOrNull();\n if (!queryClient || product?.id == null) return;\n const id = String(product.id);\n if (queryClient.getQueryState(productDetailQueryKey(id))?.status === 'success') return;\n queryClient.setQueryData(productPreviewQueryKey(id), product);\n}\n\nfunction scopeFromQueryKey(queryKey: readonly unknown[]): ActiveScope | null | undefined {\n const last = queryKey[queryKey.length - 1];\n if (last == null || typeof last !== 'object' || !('scope' in last)) return undefined;\n return (last as { scope: ActiveScope | null }).scope;\n}\n\nfunction isSameScope(a: ActiveScope | null | undefined, b: ActiveScope | null): boolean {\n if (a === undefined) return false;\n if (a === b) return true;\n if (a == null || b == null) return a == null && b == null;\n return (\n a.id === b.id &&\n a.type === b.type &&\n a.allocation_id === b.allocation_id &&\n a.allocation_type === b.allocation_type\n );\n}\n\nconst LIST_QUERY_PREFIXES = [\n ['products', 'list'],\n ['wishlist', 'list'],\n] as const;\n\n/**\n * Rebuild the scoped preview index from hydrated list/wishlist queries (SSR\n * dehydrate drops preview keys). Subsequent lookups hit `productPreviewQueryKey`.\n */\nfunction findProductInScopedLists(\n queryClient: NonNullable<ReturnType<typeof queryClientOrNull>>,\n id: string\n): Product | undefined {\n const scope = getActiveScope();\n let found: Product | undefined;\n for (const prefix of LIST_QUERY_PREFIXES) {\n for (const [queryKey, data] of queryClient.getQueriesData<ProductsListResult>({\n queryKey: prefix,\n })) {\n if (!isSameScope(scopeFromQueryKey(queryKey), scope)) continue;\n for (const item of data?.items ?? []) {\n if (item?.id == null) continue;\n rememberProductPreview(item);\n if (!found && String(item.id) === id) found = item;\n }\n }\n }\n return found;\n}\n\n/**\n * List-card product for `placeholderData`. Prefers the preview key; if that was\n * dropped on SSR dehydrate, rebuilds it from the current-scope list/wishlist.\n */\nexport function getProductPreview(id: string): Product | undefined {\n const queryClient = queryClientOrNull();\n if (!queryClient) return undefined;\n const key = String(id);\n return (\n queryClient.getQueryData(productPreviewQueryKey(key)) ??\n findProductInScopedLists(queryClient, key)\n );\n}\n\nfunction rememberProductPreviews(items: Product[]): void {\n for (const item of items) rememberProductPreview(item);\n}\n\n// ===== API Functions =====\n\nexport const product = {\n find: async (id: string): Promise<Product> => {\n const endpoint = `products/${id}/details?with[]=images&with[]=category&with[]=rating&with[]=notify_availability&with[]=tags&with[]=brand&with[]=options&with[]=skus&with[]=skus_availability&with[]=included_products&with[]=bundle&with[]=sold_quantity`;\n const { data } = await api.get(endpoint).json<{ data: Product }>();\n return data;\n },\n\n findOrThrow: (id: string): Promise<Product> => orThrow(product.find(id)),\n\n /**\n * Fetch products list with pagination support\n * Used by native ProductsList component for SSR loaders\n *\n * API pattern: GET /products?source=wishlist&page=1\n */\n list: async (params: ProductsListParams): Promise<ProductsListResult> => {\n const { source, sourceValue, page, cursor, perPage = 16, sort, filterable, signal } = params;\n\n // Build URL with query parameters\n const searchParams = new URLSearchParams();\n searchParams.set('source', source);\n // Only send page when explicitly provided — cursor-based callers omit it entirely\n if (page !== undefined) searchParams.set('page', String(page));\n searchParams.set('per_page', String(perPage));\n\n // Add source_value[] parameter (brand_id, category_id, tag_id, etc.)\n // For search source, use keyword parameter instead\n if (sourceValue !== undefined) {\n if (source === 'search') {\n searchParams.set('keyword', String(sourceValue));\n } else if (Array.isArray(sourceValue)) {\n sourceValue.forEach((val) => searchParams.append('source_value[]', String(val)));\n } else {\n searchParams.append('source_value[]', String(sourceValue));\n }\n }\n\n // Add filterable parameter\n if (filterable !== undefined) {\n searchParams.set('filterable', filterable ? '1' : '0');\n }\n\n // Add sort parameter\n if (sort) {\n searchParams.set('sort', sort);\n }\n\n // Add cursor for cursor-based pagination\n if (cursor) {\n searchParams.set('cursor', cursor);\n }\n\n // Make the request\n const options: Record<string, unknown> = {};\n if (signal) options.signal = signal;\n\n const response = await api\n .get(`products?${searchParams.toString()}`, options as any)\n .json<ProductsListResponse>();\n\n const items = response.data ?? [];\n rememberProductPreviews(items);\n\n return {\n items,\n next: response.cursor?.next ?? null,\n filters: response.filters,\n };\n },\n\n queries: {\n detail: (id: string) =>\n queryOptions({\n // Stock and availability are resolved per branch allocation — same as the list.\n queryKey: productDetailQueryKey(id),\n queryFn: () => product.find(id),\n // List-card product, if one was remembered. Not written as the detail\n // cache entry — `queryFn` still hits products/{id}/details.\n placeholderData: () => getProductPreview(id),\n }),\n list: (params: Omit<ProductsListParams, 'signal'>) =>\n queryOptions({\n // Scope (branch) varies product availability — key must include it.\n queryKey: ['products', 'list', params, { scope: getActiveScope() }],\n queryFn: ({ signal }) => product.list({ ...params, signal }),\n }),\n },\n};\n"]}
@@ -1,14 +0,0 @@
1
- import { lazy } from 'react';
2
-
3
- // src/components/cart/lazy.ts
4
- var LazyCartItem = lazy(() => import('./CartItem-UOVSSW5O.js').then((m) => ({ default: m.CartItem })));
5
- var LazyCartSummary = lazy(
6
- () => import('./CartSummary-4V3L56U7.js').then((m) => ({ default: m.CartSummary }))
7
- );
8
- var LazySeoCartWidget = lazy(
9
- () => import('./SeoCartWidget-72U3UQKH.js').then((m) => ({ default: m.SeoCartWidget }))
10
- );
11
-
12
- export { LazyCartItem, LazyCartSummary, LazySeoCartWidget };
13
- //# sourceMappingURL=chunk-HNSZ6VBK.js.map
14
- //# sourceMappingURL=chunk-HNSZ6VBK.js.map