@salla.sa/twilight-theme-engine 1.0.53 → 1.0.54

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 (119) hide show
  1. package/dist/{AddToCartForm-OJZB6Y5P.js → AddToCartForm-ZMGIDWJ2.js} +3 -3
  2. package/dist/{AddToCartForm-OJZB6Y5P.js.map → AddToCartForm-ZMGIDWJ2.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-UGJR2NXO.js → BlogAuthorPage-SPCVIGER.js} +6 -6
  4. package/dist/{BlogAuthorPage-UGJR2NXO.js.map → BlogAuthorPage-SPCVIGER.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-WZIVRIB3.js → BlogCategoryPage-2R2U4UVZ.js} +6 -6
  6. package/dist/{BlogCategoryPage-WZIVRIB3.js.map → BlogCategoryPage-2R2U4UVZ.js.map} +1 -1
  7. package/dist/{BlogPage-UT3PZB25.js → BlogPage-AJF5L5JE.js} +5 -5
  8. package/dist/{BlogPage-UT3PZB25.js.map → BlogPage-AJF5L5JE.js.map} +1 -1
  9. package/dist/{BlogSinglePage-MXXD37WY.js → BlogSinglePage-GPC7G5RZ.js} +5 -5
  10. package/dist/{BlogSinglePage-MXXD37WY.js.map → BlogSinglePage-GPC7G5RZ.js.map} +1 -1
  11. package/dist/{BlogTagPage-SEDNWGM5.js → BlogTagPage-SZPOZKYO.js} +6 -6
  12. package/dist/{BlogTagPage-SEDNWGM5.js.map → BlogTagPage-SZPOZKYO.js.map} +1 -1
  13. package/dist/{BrandsPage-OEIYLNCW.js → BrandsPage-7XTWLCMP.js} +5 -5
  14. package/dist/{BrandsPage-OEIYLNCW.js.map → BrandsPage-7XTWLCMP.js.map} +1 -1
  15. package/dist/{Breadcrumb-R6A477Q6.js → Breadcrumb-4YCGQ7QL.js} +5 -5
  16. package/dist/{Breadcrumb-R6A477Q6.js.map → Breadcrumb-4YCGQ7QL.js.map} +1 -1
  17. package/dist/{CartItem-HW2GNVAQ.js → CartItem-THEEFXBX.js} +5 -5
  18. package/dist/{CartItem-HW2GNVAQ.js.map → CartItem-THEEFXBX.js.map} +1 -1
  19. package/dist/{CartSummary-Q22O5TUI.js → CartSummary-DVDFJ2SO.js} +5 -5
  20. package/dist/{CartSummary-Q22O5TUI.js.map → CartSummary-DVDFJ2SO.js.map} +1 -1
  21. package/dist/{Copyright-7CHT2R4P.js → Copyright-CEYZUB3X.js} +3 -3
  22. package/dist/{Copyright-7CHT2R4P.js.map → Copyright-CEYZUB3X.js.map} +1 -1
  23. package/dist/{CustomerLayout-CQC34GVR.js → CustomerLayout-3TIIQDQ2.js} +5 -5
  24. package/dist/{CustomerLayout-CQC34GVR.js.map → CustomerLayout-3TIIQDQ2.js.map} +1 -1
  25. package/dist/{Footer-PBSW4VSO.js → Footer-M7LJ64A6.js} +5 -5
  26. package/dist/{Footer-PBSW4VSO.js.map → Footer-M7LJ64A6.js.map} +1 -1
  27. package/dist/{Header-QWCZVZFL.js → Header-JMWCXZHK.js} +4 -4
  28. package/dist/{Header-QWCZVZFL.js.map → Header-JMWCXZHK.js.map} +1 -1
  29. package/dist/{LoyaltyPage-HW25FHQR.js → LoyaltyPage-KRXUKUFF.js} +5 -5
  30. package/dist/{LoyaltyPage-HW25FHQR.js.map → LoyaltyPage-KRXUKUFF.js.map} +1 -1
  31. package/dist/{MainMenu-DQKQCGQF.js → MainMenu-WHF7ASUW.js} +3 -3
  32. package/dist/{MainMenu-DQKQCGQF.js.map → MainMenu-WHF7ASUW.js.map} +1 -1
  33. package/dist/{MasterLayout-U24X6WKI.js → MasterLayout-F3FXWM67.js} +5 -5
  34. package/dist/{MasterLayout-U24X6WKI.js.map → MasterLayout-F3FXWM67.js.map} +1 -1
  35. package/dist/{MobileMenu-UQ6KESL4.js → MobileMenu-ZCJYSGK6.js} +5 -5
  36. package/dist/{MobileMenu-UQ6KESL4.js.map → MobileMenu-ZCJYSGK6.js.map} +1 -1
  37. package/dist/{NotificationsPage-D35P2NEV.js → NotificationsPage-BYVSEORE.js} +5 -5
  38. package/dist/{NotificationsPage-D35P2NEV.js.map → NotificationsPage-BYVSEORE.js.map} +1 -1
  39. package/dist/{OrderSinglePage-6W4FVEGS.js → OrderSinglePage-JZBRALXE.js} +5 -5
  40. package/dist/{OrderSinglePage-6W4FVEGS.js.map → OrderSinglePage-JZBRALXE.js.map} +1 -1
  41. package/dist/{OrdersPage-ASZH2JRX.js → OrdersPage-Z274BZQB.js} +5 -5
  42. package/dist/{OrdersPage-ASZH2JRX.js.map → OrdersPage-Z274BZQB.js.map} +1 -1
  43. package/dist/{PageSingle-SDFKC6VY.js → PageSingle-GOR4L2V6.js} +3 -3
  44. package/dist/{PageSingle-SDFKC6VY.js.map → PageSingle-GOR4L2V6.js.map} +1 -1
  45. package/dist/{ProductDetails-7T5M3C2P.js → ProductDetails-5P26PWUH.js} +3 -3
  46. package/dist/{ProductDetails-7T5M3C2P.js.map → ProductDetails-5P26PWUH.js.map} +1 -1
  47. package/dist/{ProfilePage-IGCENTQF.js → ProfilePage-UCPWBRSG.js} +5 -5
  48. package/dist/{ProfilePage-IGCENTQF.js.map → ProfilePage-UCPWBRSG.js.map} +1 -1
  49. package/dist/{SeoCartWidget-TV4A2SVZ.js → SeoCartWidget-UUFUC5BA.js} +5 -5
  50. package/dist/{SeoCartWidget-TV4A2SVZ.js.map → SeoCartWidget-UUFUC5BA.js.map} +1 -1
  51. package/dist/{SettingsPage-NV6Z365N.js → SettingsPage-KUMSRMDA.js} +5 -5
  52. package/dist/{SettingsPage-NV6Z365N.js.map → SettingsPage-KUMSRMDA.js.map} +1 -1
  53. package/dist/{StoreClosedNotification-MVS4SQBL.js → StoreClosedNotification-ZADX6XF6.js} +6 -6
  54. package/dist/{StoreClosedNotification-MVS4SQBL.js.map → StoreClosedNotification-ZADX6XF6.js.map} +1 -1
  55. package/dist/{TestimonialsPage-O76YMQIX.js → TestimonialsPage-FIPHRYNP.js} +3 -3
  56. package/dist/{TestimonialsPage-O76YMQIX.js.map → TestimonialsPage-FIPHRYNP.js.map} +1 -1
  57. package/dist/{ThankYouPage-74P35UKO.js → ThankYouPage-RGBNBHOT.js} +5 -5
  58. package/dist/{ThankYouPage-74P35UKO.js.map → ThankYouPage-RGBNBHOT.js.map} +1 -1
  59. package/dist/{WalletPage-KFXBFAOR.js → WalletPage-OUCUFTEH.js} +5 -5
  60. package/dist/{WalletPage-KFXBFAOR.js.map → WalletPage-OUCUFTEH.js.map} +1 -1
  61. package/dist/{WishlistPage-7K4NK2SJ.js → WishlistPage-KEWT7Y5L.js} +10 -8
  62. package/dist/WishlistPage-KEWT7Y5L.js.map +1 -0
  63. package/dist/{chunk-UNOWC5CC.js → chunk-3NSG3KI6.js} +6 -6
  64. package/dist/{chunk-UNOWC5CC.js.map → chunk-3NSG3KI6.js.map} +1 -1
  65. package/dist/{chunk-EJ5AWIQM.js → chunk-57ZYZKCD.js} +4 -4
  66. package/dist/{chunk-EJ5AWIQM.js.map → chunk-57ZYZKCD.js.map} +1 -1
  67. package/dist/{chunk-U665Z7II.js → chunk-6DH255C3.js} +3 -3
  68. package/dist/{chunk-U665Z7II.js.map → chunk-6DH255C3.js.map} +1 -1
  69. package/dist/{chunk-2NRLAK2K.js → chunk-7ANJ7LGZ.js} +5 -5
  70. package/dist/{chunk-2NRLAK2K.js.map → chunk-7ANJ7LGZ.js.map} +1 -1
  71. package/dist/{chunk-IQGXZJ4Q.js → chunk-BCHT4NRD.js} +3 -3
  72. package/dist/{chunk-IQGXZJ4Q.js.map → chunk-BCHT4NRD.js.map} +1 -1
  73. package/dist/{chunk-I22P7IOF.js → chunk-EGQ6DXLD.js} +4 -4
  74. package/dist/{chunk-I22P7IOF.js.map → chunk-EGQ6DXLD.js.map} +1 -1
  75. package/dist/{chunk-UR7G7GK2.js → chunk-GLKBT6N6.js} +7 -7
  76. package/dist/{chunk-UR7G7GK2.js.map → chunk-GLKBT6N6.js.map} +1 -1
  77. package/dist/{chunk-QBO32Z5Z.js → chunk-IXD32BQX.js} +4 -4
  78. package/dist/{chunk-QBO32Z5Z.js.map → chunk-IXD32BQX.js.map} +1 -1
  79. package/dist/chunk-Q3QX22YI.js +14 -0
  80. package/dist/{chunk-WTCRNCHB.js.map → chunk-Q3QX22YI.js.map} +1 -1
  81. package/dist/{chunk-BTWIOWGZ.js → chunk-VDBTF3WC.js} +3 -3
  82. package/dist/{chunk-BTWIOWGZ.js.map → chunk-VDBTF3WC.js.map} +1 -1
  83. package/dist/{chunk-BUMZZZOP.js → chunk-ZFLU5EKG.js} +3 -3
  84. package/dist/{chunk-BUMZZZOP.js.map → chunk-ZFLU5EKG.js.map} +1 -1
  85. package/dist/components/cart/index.js +1 -1
  86. package/dist/components/common/index.js +1 -1
  87. package/dist/components/drawer/index.js +3 -3
  88. package/dist/components/home/index.js +5 -5
  89. package/dist/components/layout/index.js +5 -5
  90. package/dist/components/product/index.js +4 -4
  91. package/dist/components/store/index.js +5 -5
  92. package/dist/{document-class-TPSEERQA.js → document-class-OCA75GGE.js} +3 -3
  93. package/dist/{document-class-TPSEERQA.js.map → document-class-OCA75GGE.js.map} +1 -1
  94. package/dist/hooks/index.js +3 -3
  95. package/dist/hooks/useGtm.js +3 -3
  96. package/dist/hooks/useMoney.js +3 -3
  97. package/dist/hooks/useStore.js +3 -3
  98. package/dist/index.js +3 -3
  99. package/dist/{not-found-WRT6XEWY.js → not-found-RM4AHY6T.js} +5 -5
  100. package/dist/{not-found-WRT6XEWY.js.map → not-found-RM4AHY6T.js.map} +1 -1
  101. package/dist/providers/index.js +3 -3
  102. package/dist/routes/account/orders.js +1 -1
  103. package/dist/routes/account/wishlist/WishlistShare.d.ts.map +1 -1
  104. package/dist/routes/account.js +6 -6
  105. package/dist/routes/blog.js +5 -5
  106. package/dist/routes/brands.js +1 -1
  107. package/dist/routes/cart.js +7 -7
  108. package/dist/routes/home.js +6 -6
  109. package/dist/routes/loyalty.js +1 -1
  110. package/dist/routes/page.js +1 -1
  111. package/dist/routes/product-listing.js +5 -5
  112. package/dist/routes/product.js +5 -5
  113. package/dist/routes/testimonials.js +1 -1
  114. package/dist/routes/thank-you.js +1 -1
  115. package/dist/skeleton.js +6 -6
  116. package/dist/tanstack.js +2 -2
  117. package/package.json +1 -1
  118. package/dist/WishlistPage-7K4NK2SJ.js.map +0 -1
  119. package/dist/chunk-WTCRNCHB.js +0 -14
@@ -1,5 +1,5 @@
1
- export { useMoney } from '../chunk-UR7G7GK2.js';
2
- import '../chunk-2NRLAK2K.js';
1
+ export { useMoney } from '../chunk-GLKBT6N6.js';
2
+ import '../chunk-7ANJ7LGZ.js';
3
3
  import '../chunk-JKIRRMBU.js';
4
4
  import '../chunk-2JV6WZ6O.js';
5
5
  import '../chunk-6IATCGID.js';
@@ -30,7 +30,7 @@ import '../chunk-YMVLYYLU.js';
30
30
  import '../chunk-RJPPO3ET.js';
31
31
  import '../chunk-Q7VWURUR.js';
32
32
  import '../chunk-GU2KUQVD.js';
33
- import '../chunk-U665Z7II.js';
33
+ import '../chunk-6DH255C3.js';
34
34
  import '../chunk-AXW67SY7.js';
35
35
  import '../chunk-BYMOPN2S.js';
36
36
  import '../chunk-SKLEJJ6M.js';
@@ -1,5 +1,5 @@
1
- export { useStore } from '../chunk-UR7G7GK2.js';
2
- import '../chunk-2NRLAK2K.js';
1
+ export { useStore } from '../chunk-GLKBT6N6.js';
2
+ import '../chunk-7ANJ7LGZ.js';
3
3
  import '../chunk-JKIRRMBU.js';
4
4
  import '../chunk-2JV6WZ6O.js';
5
5
  import '../chunk-6IATCGID.js';
@@ -30,7 +30,7 @@ import '../chunk-YMVLYYLU.js';
30
30
  import '../chunk-RJPPO3ET.js';
31
31
  import '../chunk-Q7VWURUR.js';
32
32
  import '../chunk-GU2KUQVD.js';
33
- import '../chunk-U665Z7II.js';
33
+ import '../chunk-6DH255C3.js';
34
34
  import '../chunk-AXW67SY7.js';
35
35
  import '../chunk-BYMOPN2S.js';
36
36
  import '../chunk-SKLEJJ6M.js';
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { registry } from './chunk-342EPVXN.js';
2
2
  export { ComponentRegistry, registry } from './chunk-342EPVXN.js';
3
- export { TwilightProvider } from './chunk-UR7G7GK2.js';
4
- import './chunk-2NRLAK2K.js';
3
+ export { TwilightProvider } from './chunk-GLKBT6N6.js';
4
+ import './chunk-7ANJ7LGZ.js';
5
5
  import './chunk-JKIRRMBU.js';
6
6
  import './chunk-2JV6WZ6O.js';
7
7
  import './chunk-6IATCGID.js';
@@ -32,7 +32,7 @@ import './chunk-YMVLYYLU.js';
32
32
  import './chunk-RJPPO3ET.js';
33
33
  import './chunk-Q7VWURUR.js';
34
34
  import './chunk-GU2KUQVD.js';
35
- import './chunk-U665Z7II.js';
35
+ import './chunk-6DH255C3.js';
36
36
  import './chunk-AXW67SY7.js';
37
37
  import './chunk-BYMOPN2S.js';
38
38
  import './chunk-SKLEJJ6M.js';
@@ -1,6 +1,6 @@
1
1
  import { product } from './chunk-BVB75J3R.js';
2
- import './chunk-UR7G7GK2.js';
3
- import './chunk-2NRLAK2K.js';
2
+ import './chunk-GLKBT6N6.js';
3
+ import './chunk-7ANJ7LGZ.js';
4
4
  import './chunk-JKIRRMBU.js';
5
5
  import './chunk-2JV6WZ6O.js';
6
6
  import './chunk-6IATCGID.js';
@@ -31,7 +31,7 @@ import './chunk-YMVLYYLU.js';
31
31
  import './chunk-RJPPO3ET.js';
32
32
  import { HookSlot } from './chunk-Q7VWURUR.js';
33
33
  import './chunk-GU2KUQVD.js';
34
- import { LazyErrorPage } from './chunk-U665Z7II.js';
34
+ import { LazyErrorPage } from './chunk-6DH255C3.js';
35
35
  import './chunk-AXW67SY7.js';
36
36
  import './chunk-BYMOPN2S.js';
37
37
  import './chunk-SKLEJJ6M.js';
@@ -117,5 +117,5 @@ function NotFoundPage(props = {}) {
117
117
  }
118
118
 
119
119
  export { NotFoundPage };
120
- //# sourceMappingURL=not-found-WRT6XEWY.js.map
121
- //# sourceMappingURL=not-found-WRT6XEWY.js.map
120
+ //# sourceMappingURL=not-found-RM4AHY6T.js.map
121
+ //# sourceMappingURL=not-found-RM4AHY6T.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/routes/product-short-link.ts","../src/routes/not-found.tsx"],"names":[],"mappings":"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","file":"not-found-WRT6XEWY.js","sourcesContent":["import { useEffect, useState } from 'react';\nimport { product } from '../api/product';\nimport { isLocale } from '../providers/locale-constants';\nimport { useLocation, useNavigate } from '../providers/NavigationProvider';\n\n/** Short codes are 5-10 letters/digits (e.g. `lvXvzln`). */\nconst SHORT_CODE = /^[A-Za-z0-9]{5,10}$/;\n\n/**\n * The product short code in a path shaped `/{locale}/{code}` or `/{code}` (the\n * store base is already stripped from the router's location), plus the locale\n * segment to keep when redirecting. `null` for any other path.\n */\nexport function parseShortLinkPath(pathname: string): { code: string; locale?: string } | null {\n const segments = pathname.split('/').filter(Boolean);\n if (segments.length === 2 && isLocale(segments[0]) && SHORT_CODE.test(segments[1])) {\n return { code: segments[1], locale: segments[0] };\n }\n if (segments.length === 1 && !isLocale(segments[0]) && SHORT_CODE.test(segments[0])) {\n return { code: segments[0] };\n }\n return null;\n}\n\n/** The SEO slug from a product URL (`…/{slug}/p{id}`), `-` when it has none. */\nexport function slugFromProductUrl(url: string | undefined): string {\n try {\n const segments = new URL(url ?? '').pathname.split('/').filter(Boolean);\n const last = segments[segments.length - 1] ?? '';\n return /^p\\d+$/.test(last) && segments.length > 1 ? segments[segments.length - 2] : '-';\n } catch {\n return '-';\n }\n}\n\n/**\n * Resolves a product short link (`/ar/lvXvzln`) that matched no route: the\n * products API accepts the code as an id, so look it up and replace the URL with\n * the product's canonical page. Returns `true` while a lookup is in flight (so the\n * 404 isn't flashed); settles to `false` when the path isn't a short link or the\n * code doesn't resolve.\n */\nexport function useProductShortLink(): boolean {\n const { pathname } = useLocation();\n const navigate = useNavigate();\n const target = parseShortLinkPath(pathname);\n const code = target?.code;\n const locale = target?.locale;\n const [failedCode, setFailedCode] = useState<string | null>(null);\n\n useEffect(() => {\n if (!code) return;\n let cancelled = false;\n product\n .find(code)\n .then((found) => {\n if (cancelled) return;\n if (!found?.id) return setFailedCode(code);\n const prefix = locale ? `/${locale}` : '';\n navigate(`${prefix}/${slugFromProductUrl(found.url)}/p${found.id}`, { replace: true });\n })\n .catch(() => !cancelled && setFailedCode(code));\n return () => {\n cancelled = true;\n };\n }, [code, locale, navigate]);\n\n return !!code && failedCode !== code;\n}\n","import type { ComponentType, ReactNode } from 'react';\nimport { HookSlot } from '../hooks';\nimport { useTranslation } from '../providers/I18nProvider';\nimport { ErrorPage } from '../components/common';\nimport { useProductShortLink } from './product-short-link';\n\nexport interface NotFoundPageProps {\n title?: string;\n message?: string;\n showHomeLink?: boolean;\n homeLinkText?: string;\n LinkComponent?: ComponentType<{\n to: string;\n className?: string;\n style?: React.CSSProperties;\n children: ReactNode;\n }>;\n}\n\nexport function NotFoundPage(props: NotFoundPageProps = {}) {\n const { t } = useTranslation();\n // A product short link (`/ar/lvXvzln`) matches no route; resolve it instead of 404ing.\n const resolvingShortLink = useProductShortLink();\n\n const {\n title = t('common.errors.404') || 'Page Not Found',\n message = t('common.errors.error_occurred') ||\n 'The page you are looking for does not exist or has been moved.',\n showHomeLink = true,\n homeLinkText = t('common.elements.back_home') || 'Back to Home',\n LinkComponent,\n } = props;\n\n if (resolvingShortLink) return null;\n\n return (\n <ErrorPage\n code={404}\n title={title}\n message={message}\n showAction={showHomeLink}\n actionText={homeLinkText}\n LinkComponent={LinkComponent}\n >\n <HookSlot name=\"notfound:start\" />\n <HookSlot name=\"notfound:content\" />\n <HookSlot name=\"notfound:end\" />\n </ErrorPage>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/routes/product-short-link.ts","../src/routes/not-found.tsx"],"names":[],"mappings":"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","file":"not-found-RM4AHY6T.js","sourcesContent":["import { useEffect, useState } from 'react';\nimport { product } from '../api/product';\nimport { isLocale } from '../providers/locale-constants';\nimport { useLocation, useNavigate } from '../providers/NavigationProvider';\n\n/** Short codes are 5-10 letters/digits (e.g. `lvXvzln`). */\nconst SHORT_CODE = /^[A-Za-z0-9]{5,10}$/;\n\n/**\n * The product short code in a path shaped `/{locale}/{code}` or `/{code}` (the\n * store base is already stripped from the router's location), plus the locale\n * segment to keep when redirecting. `null` for any other path.\n */\nexport function parseShortLinkPath(pathname: string): { code: string; locale?: string } | null {\n const segments = pathname.split('/').filter(Boolean);\n if (segments.length === 2 && isLocale(segments[0]) && SHORT_CODE.test(segments[1])) {\n return { code: segments[1], locale: segments[0] };\n }\n if (segments.length === 1 && !isLocale(segments[0]) && SHORT_CODE.test(segments[0])) {\n return { code: segments[0] };\n }\n return null;\n}\n\n/** The SEO slug from a product URL (`…/{slug}/p{id}`), `-` when it has none. */\nexport function slugFromProductUrl(url: string | undefined): string {\n try {\n const segments = new URL(url ?? '').pathname.split('/').filter(Boolean);\n const last = segments[segments.length - 1] ?? '';\n return /^p\\d+$/.test(last) && segments.length > 1 ? segments[segments.length - 2] : '-';\n } catch {\n return '-';\n }\n}\n\n/**\n * Resolves a product short link (`/ar/lvXvzln`) that matched no route: the\n * products API accepts the code as an id, so look it up and replace the URL with\n * the product's canonical page. Returns `true` while a lookup is in flight (so the\n * 404 isn't flashed); settles to `false` when the path isn't a short link or the\n * code doesn't resolve.\n */\nexport function useProductShortLink(): boolean {\n const { pathname } = useLocation();\n const navigate = useNavigate();\n const target = parseShortLinkPath(pathname);\n const code = target?.code;\n const locale = target?.locale;\n const [failedCode, setFailedCode] = useState<string | null>(null);\n\n useEffect(() => {\n if (!code) return;\n let cancelled = false;\n product\n .find(code)\n .then((found) => {\n if (cancelled) return;\n if (!found?.id) return setFailedCode(code);\n const prefix = locale ? `/${locale}` : '';\n navigate(`${prefix}/${slugFromProductUrl(found.url)}/p${found.id}`, { replace: true });\n })\n .catch(() => !cancelled && setFailedCode(code));\n return () => {\n cancelled = true;\n };\n }, [code, locale, navigate]);\n\n return !!code && failedCode !== code;\n}\n","import type { ComponentType, ReactNode } from 'react';\nimport { HookSlot } from '../hooks';\nimport { useTranslation } from '../providers/I18nProvider';\nimport { ErrorPage } from '../components/common';\nimport { useProductShortLink } from './product-short-link';\n\nexport interface NotFoundPageProps {\n title?: string;\n message?: string;\n showHomeLink?: boolean;\n homeLinkText?: string;\n LinkComponent?: ComponentType<{\n to: string;\n className?: string;\n style?: React.CSSProperties;\n children: ReactNode;\n }>;\n}\n\nexport function NotFoundPage(props: NotFoundPageProps = {}) {\n const { t } = useTranslation();\n // A product short link (`/ar/lvXvzln`) matches no route; resolve it instead of 404ing.\n const resolvingShortLink = useProductShortLink();\n\n const {\n title = t('common.errors.404') || 'Page Not Found',\n message = t('common.errors.error_occurred') ||\n 'The page you are looking for does not exist or has been moved.',\n showHomeLink = true,\n homeLinkText = t('common.elements.back_home') || 'Back to Home',\n LinkComponent,\n } = props;\n\n if (resolvingShortLink) return null;\n\n return (\n <ErrorPage\n code={404}\n title={title}\n message={message}\n showAction={showHomeLink}\n actionText={homeLinkText}\n LinkComponent={LinkComponent}\n >\n <HookSlot name=\"notfound:start\" />\n <HookSlot name=\"notfound:content\" />\n <HookSlot name=\"notfound:end\" />\n </ErrorPage>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
- export { TwilightProvider, registerDocumentSync, routeDocumentSyncs } from '../chunk-UR7G7GK2.js';
2
- import '../chunk-2NRLAK2K.js';
1
+ export { TwilightProvider, registerDocumentSync, routeDocumentSyncs } from '../chunk-GLKBT6N6.js';
2
+ import '../chunk-7ANJ7LGZ.js';
3
3
  import '../chunk-JKIRRMBU.js';
4
4
  import '../chunk-2JV6WZ6O.js';
5
5
  import '../chunk-6IATCGID.js';
@@ -30,7 +30,7 @@ import '../chunk-YMVLYYLU.js';
30
30
  import '../chunk-RJPPO3ET.js';
31
31
  import '../chunk-Q7VWURUR.js';
32
32
  import '../chunk-GU2KUQVD.js';
33
- import '../chunk-U665Z7II.js';
33
+ import '../chunk-6DH255C3.js';
34
34
  import '../chunk-AXW67SY7.js';
35
35
  export { LinkProvider, LinkProviderError, createLinkWithAdapter, useLinkAdapter } from '../chunk-BYMOPN2S.js';
36
36
  import '../chunk-SKLEJJ6M.js';
@@ -1,4 +1,4 @@
1
- export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../../chunk-EJ5AWIQM.js';
1
+ export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../../chunk-57ZYZKCD.js';
2
2
  import '../../chunk-QM75GGXX.js';
3
3
  import '../../chunk-TZ3E5BN4.js';
4
4
  import '../../chunk-63GHZIAG.js';
@@ -1 +1 @@
1
- {"version":3,"file":"WishlistShare.d.ts","sourceRoot":"","sources":["../../../../src/routes/account/wishlist/WishlistShare.tsx"],"names":[],"mappings":"AAMA,KAAK,kBAAkB,GAAG,WAAW,GAAG;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,gBAAgB;;;;;;;;;;;;;yBAoDU,MAAM;;EAgC/C;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAErE,8GAA8G;AAC9G,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,WAAW,GACZ,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;CACtB,+BA2GA"}
1
+ {"version":3,"file":"WishlistShare.d.ts","sourceRoot":"","sources":["../../../../src/routes/account/wishlist/WishlistShare.tsx"],"names":[],"mappings":"AAQA,KAAK,kBAAkB,GAAG,WAAW,GAAG;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,gBAAgB;;;;;;;;;;;;;yBAoDU,MAAM;;EAgC/C;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAErE,8GAA8G;AAC9G,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,WAAW,GACZ,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;CACtB,+BAiHA"}
@@ -1,5 +1,5 @@
1
1
  import { wallet } from '../chunk-PZL3JWM2.js';
2
- export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../chunk-EJ5AWIQM.js';
2
+ export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../chunk-57ZYZKCD.js';
3
3
  import '../chunk-QM75GGXX.js';
4
4
  import { notification } from '../chunk-MENDTTOA.js';
5
5
  import { wishlist } from '../chunk-7XBSSGRK.js';
@@ -30,7 +30,7 @@ async function profileLoader(_ctx) {
30
30
 
31
31
  // src/routes/account/profile/index.tsx
32
32
  var LazyProfilePage = lazy(
33
- () => import('../ProfilePage-IGCENTQF.js').then((m) => ({ default: m.ProfilePage }))
33
+ () => import('../ProfilePage-UCPWBRSG.js').then((m) => ({ default: m.ProfilePage }))
34
34
  );
35
35
  var ProfilePage = LazyProfilePage;
36
36
  var Profile = {
@@ -71,7 +71,7 @@ async function wishlistLoader(ctx) {
71
71
 
72
72
  // src/routes/account/wishlist/index.tsx
73
73
  var LazyWishlistPage = lazy(
74
- () => import('../WishlistPage-7K4NK2SJ.js').then((m) => ({ default: m.WishlistPage }))
74
+ () => import('../WishlistPage-KEWT7Y5L.js').then((m) => ({ default: m.WishlistPage }))
75
75
  );
76
76
  var WishlistPage = LazyWishlistPage;
77
77
  var Wishlist = {
@@ -112,7 +112,7 @@ async function walletLoader(ctx) {
112
112
  }
113
113
 
114
114
  // src/routes/account/wallet/index.tsx
115
- var LazyWalletPage = lazy(() => import('../WalletPage-KFXBFAOR.js').then((m) => ({ default: m.WalletPage })));
115
+ var LazyWalletPage = lazy(() => import('../WalletPage-OUCUFTEH.js').then((m) => ({ default: m.WalletPage })));
116
116
  var WalletPage = LazyWalletPage;
117
117
  var Wallet = {
118
118
  id: RouteId.CUSTOMER_WALLET,
@@ -147,7 +147,7 @@ async function notificationsLoader(_ctx) {
147
147
 
148
148
  // src/routes/account/notifications/index.tsx
149
149
  var LazyNotificationsPage = lazy(
150
- () => import('../NotificationsPage-D35P2NEV.js').then((m) => ({ default: m.NotificationsPage }))
150
+ () => import('../NotificationsPage-BYVSEORE.js').then((m) => ({ default: m.NotificationsPage }))
151
151
  );
152
152
  var NotificationsPage = LazyNotificationsPage;
153
153
  var Notifications = {
@@ -179,7 +179,7 @@ async function settingsLoader(_ctx) {
179
179
 
180
180
  // src/routes/account/settings/index.tsx
181
181
  var LazySettingsPage = lazy(
182
- () => import('../SettingsPage-NV6Z365N.js').then((m) => ({ default: m.SettingsPage }))
182
+ () => import('../SettingsPage-KUMSRMDA.js').then((m) => ({ default: m.SettingsPage }))
183
183
  );
184
184
  var SettingsPage = LazySettingsPage;
185
185
  var Settings = {
@@ -134,18 +134,18 @@ async function blogTagLoader({
134
134
  }
135
135
 
136
136
  // src/routes/blog/index.tsx
137
- var LazyBlogPage = lazy(() => import('../BlogPage-UT3PZB25.js').then((m) => ({ default: m.BlogPage })));
137
+ var LazyBlogPage = lazy(() => import('../BlogPage-AJF5L5JE.js').then((m) => ({ default: m.BlogPage })));
138
138
  var LazyBlogSinglePage = lazy(
139
- () => import('../BlogSinglePage-MXXD37WY.js').then((m) => ({ default: m.BlogSinglePage }))
139
+ () => import('../BlogSinglePage-GPC7G5RZ.js').then((m) => ({ default: m.BlogSinglePage }))
140
140
  );
141
141
  var LazyBlogAuthorPage = lazy(
142
- () => import('../BlogAuthorPage-UGJR2NXO.js').then((m) => ({ default: m.BlogAuthorPage }))
142
+ () => import('../BlogAuthorPage-SPCVIGER.js').then((m) => ({ default: m.BlogAuthorPage }))
143
143
  );
144
144
  var LazyBlogCategoryPage = lazy(
145
- () => import('../BlogCategoryPage-WZIVRIB3.js').then((m) => ({ default: m.BlogCategoryPage }))
145
+ () => import('../BlogCategoryPage-2R2U4UVZ.js').then((m) => ({ default: m.BlogCategoryPage }))
146
146
  );
147
147
  var LazyBlogTagPage = lazy(
148
- () => import('../BlogTagPage-SEDNWGM5.js').then((m) => ({ default: m.BlogTagPage }))
148
+ () => import('../BlogTagPage-SZPOZKYO.js').then((m) => ({ default: m.BlogTagPage }))
149
149
  );
150
150
  var BlogPage = LazyBlogPage;
151
151
  var BlogSinglePage = LazyBlogSinglePage;
@@ -34,7 +34,7 @@ async function brandsLoader() {
34
34
  }
35
35
 
36
36
  // src/routes/brands/index.tsx
37
- var LazyBrandsPage = lazy(() => import('../BrandsPage-OEIYLNCW.js').then((m) => ({ default: m.BrandsPage })));
37
+ var LazyBrandsPage = lazy(() => import('../BrandsPage-7XTWLCMP.js').then((m) => ({ default: m.BrandsPage })));
38
38
  var BrandsPage = LazyBrandsPage;
39
39
  async function brandsLoaderWithExtend(_ctx, extend) {
40
40
  const data = await brandsLoader();
@@ -1,16 +1,16 @@
1
1
  import { cart } from '../chunk-QBIW266S.js';
2
2
  import { loyalty } from '../chunk-62SHHET3.js';
3
3
  import { CartSkeleton } from '../chunk-N7CCSGZF.js';
4
- import '../chunk-IQGXZJ4Q.js';
4
+ import '../chunk-BCHT4NRD.js';
5
5
  import '../chunk-P4DUWQU4.js';
6
6
  import { buildHreflangAlternates } from '../chunk-TZ3E5BN4.js';
7
- import '../chunk-QBO32Z5Z.js';
7
+ import '../chunk-IXD32BQX.js';
8
8
  import '../chunk-BVB75J3R.js';
9
- import { LazySeoCartWidget, LazyCartItem, LazyCartSummary } from '../chunk-WTCRNCHB.js';
10
- import '../chunk-UNOWC5CC.js';
9
+ import { LazySeoCartWidget, LazyCartItem, LazyCartSummary } from '../chunk-Q3QX22YI.js';
10
+ import '../chunk-3NSG3KI6.js';
11
11
  import '../chunk-342EPVXN.js';
12
- import '../chunk-UR7G7GK2.js';
13
- import '../chunk-2NRLAK2K.js';
12
+ import '../chunk-GLKBT6N6.js';
13
+ import '../chunk-7ANJ7LGZ.js';
14
14
  import '../chunk-JKIRRMBU.js';
15
15
  import '../chunk-2JV6WZ6O.js';
16
16
  import '../chunk-6IATCGID.js';
@@ -41,7 +41,7 @@ import '../chunk-YMVLYYLU.js';
41
41
  import '../chunk-RJPPO3ET.js';
42
42
  import { HookSlot } from '../chunk-Q7VWURUR.js';
43
43
  import '../chunk-GU2KUQVD.js';
44
- import { LazyBreadcrumb, LazyNoContent } from '../chunk-U665Z7II.js';
44
+ import { LazyBreadcrumb, LazyNoContent } from '../chunk-6DH255C3.js';
45
45
  import '../chunk-AXW67SY7.js';
46
46
  import '../chunk-BYMOPN2S.js';
47
47
  import '../chunk-SKLEJJ6M.js';
@@ -1,12 +1,12 @@
1
- export { Home, HomeSkeleton, homeLoader } from '../chunk-IQGXZJ4Q.js';
1
+ export { Home, HomeSkeleton, homeLoader } from '../chunk-BCHT4NRD.js';
2
2
  import '../chunk-P4DUWQU4.js';
3
3
  import '../chunk-TZ3E5BN4.js';
4
- export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-QBO32Z5Z.js';
4
+ export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-IXD32BQX.js';
5
5
  import '../chunk-BVB75J3R.js';
6
- import '../chunk-UNOWC5CC.js';
6
+ import '../chunk-3NSG3KI6.js';
7
7
  import '../chunk-342EPVXN.js';
8
- import '../chunk-UR7G7GK2.js';
9
- import '../chunk-2NRLAK2K.js';
8
+ import '../chunk-GLKBT6N6.js';
9
+ import '../chunk-7ANJ7LGZ.js';
10
10
  import '../chunk-JKIRRMBU.js';
11
11
  import '../chunk-2JV6WZ6O.js';
12
12
  import '../chunk-6IATCGID.js';
@@ -37,7 +37,7 @@ import '../chunk-YMVLYYLU.js';
37
37
  import '../chunk-RJPPO3ET.js';
38
38
  import '../chunk-Q7VWURUR.js';
39
39
  import '../chunk-GU2KUQVD.js';
40
- import '../chunk-U665Z7II.js';
40
+ import '../chunk-6DH255C3.js';
41
41
  import '../chunk-AXW67SY7.js';
42
42
  import '../chunk-BYMOPN2S.js';
43
43
  import '../chunk-SKLEJJ6M.js';
@@ -19,7 +19,7 @@ async function loyaltyLoader() {
19
19
 
20
20
  // src/routes/loyalty/index.tsx
21
21
  var LazyLoyaltyPage = lazy(
22
- () => import('../LoyaltyPage-HW25FHQR.js').then((m) => ({ default: m.LoyaltyPage }))
22
+ () => import('../LoyaltyPage-KRXUKUFF.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-SDFKC6VY.js').then((m) => ({ default: m.PageSingle })));
31
+ var LazyPageSingle = lazy(() => import('../PageSingle-GOR4L2V6.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-A2ZO3IR7.js';
3
3
  import { brand } from '../chunk-XEQ6ILIP.js';
4
4
  import { buildHreflangAlternates } from '../chunk-TZ3E5BN4.js';
5
- import { LazyTestimonials } from '../chunk-QBO32Z5Z.js';
5
+ import { LazyTestimonials } from '../chunk-IXD32BQX.js';
6
6
  import { product } from '../chunk-BVB75J3R.js';
7
7
  import { Drawer } from '../chunk-6TKIUG5C.js';
8
- import { ProductCard } from '../chunk-UNOWC5CC.js';
8
+ import { ProductCard } from '../chunk-3NSG3KI6.js';
9
9
  import '../chunk-342EPVXN.js';
10
- import { useStore } from '../chunk-UR7G7GK2.js';
11
- import '../chunk-2NRLAK2K.js';
10
+ import { useStore } from '../chunk-GLKBT6N6.js';
11
+ import '../chunk-7ANJ7LGZ.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-U665Z7II.js';
42
+ import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-6DH255C3.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-QBO32Z5Z.js';
2
+ import { ProductsSlider, LazyTestimonials } from '../chunk-IXD32BQX.js';
3
3
  import { product } from '../chunk-BVB75J3R.js';
4
- import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-UNOWC5CC.js';
4
+ import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-3NSG3KI6.js';
5
5
  import '../chunk-342EPVXN.js';
6
- import '../chunk-UR7G7GK2.js';
7
- import '../chunk-2NRLAK2K.js';
6
+ import '../chunk-GLKBT6N6.js';
7
+ import '../chunk-7ANJ7LGZ.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-U665Z7II.js';
38
+ import { LazyBreadcrumb, LazyRenderWhenVisible } from '../chunk-6DH255C3.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-O76YMQIX.js').then((m) => ({ default: m.TestimonialsPage }))
21
+ () => import('../TestimonialsPage-FIPHRYNP.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-74P35UKO.js').then((m) => ({ default: m.ThankYouPage }))
42
+ () => import('../ThankYouPage-RGBNBHOT.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-IQGXZJ4Q.js';
2
+ export { HomeSkeleton } from './chunk-BCHT4NRD.js';
3
3
  import './chunk-P4DUWQU4.js';
4
4
  import './chunk-TZ3E5BN4.js';
5
- import './chunk-QBO32Z5Z.js';
5
+ import './chunk-IXD32BQX.js';
6
6
  import './chunk-BVB75J3R.js';
7
- import './chunk-UNOWC5CC.js';
7
+ import './chunk-3NSG3KI6.js';
8
8
  import './chunk-342EPVXN.js';
9
- import './chunk-UR7G7GK2.js';
10
- import './chunk-2NRLAK2K.js';
9
+ import './chunk-GLKBT6N6.js';
10
+ import './chunk-7ANJ7LGZ.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-U665Z7II.js';
41
+ import './chunk-6DH255C3.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-BTWIOWGZ.js';
2
- export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-BTWIOWGZ.js';
1
+ import { rootHead } from './chunk-VDBTF3WC.js';
2
+ export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-VDBTF3WC.js';
3
3
  export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-NCGZMLBS.js';
4
4
  import './chunk-Z4Y55HWX.js';
5
5
  export { tanstackHeadAdapter as head, withHead } from './chunk-4D44TJ72.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.53",
3
+ "version": "1.0.54",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/routes/account/wishlist/WishlistShare.tsx","../src/routes/account/wishlist/WishlistPage.tsx"],"names":["jsxs","jsx","SallaButton","useRef"],"mappings":"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","file":"WishlistPage-7K4NK2SJ.js","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { SallaButton } from '@salla.sa/twilight-components-react/button';\nimport { SallaSocialShare } from '@salla.sa/twilight-components-react/social-share';\nimport { useTranslation } from '../../../providers/I18nProvider';\n\ntype ShareResponse = { data?: { url?: string }; url?: string } | undefined;\ntype SocialShareElement = HTMLElement & {\n url?: string;\n refresh?: () => Promise<void>;\n open?: () => Promise<void>;\n close?: () => Promise<void>;\n};\n\n/**\n * Share state for the wishlist page: the \"Share\" dropdown (share the whole list / share\n * specific items), the selection used by \"specific items\", and the share request itself.\n * Mirrors what the SDK's `<salla-wishlist-actions>` does, but drives the page's own React\n * list — that component needs a sibling `<salla-products-list>`, which this page doesn't render.\n */\nexport function useWishlistShare() {\n const [menuOpen, setMenuOpen] = useState(false);\n const [selecting, setSelecting] = useState(false);\n const [selectedIds, setSelectedIds] = useState<number[]>([]);\n const [sharing, setSharing] = useState(false);\n const [shareUrl, setShareUrl] = useState('');\n /** Ids of every product currently rendered (later cursor pages included), for \"select all\". */\n const loadedIdsRef = useRef<number[]>([]);\n const socialShareRef = useRef<SocialShareElement | null>(null);\n\n const share = useCallback(async (ids: number[], selectAll: boolean) => {\n if (!window.salla?.wishlist?.share) return;\n setSharing(true);\n try {\n const response = (await window.salla.wishlist.share(ids, selectAll)) as ShareResponse;\n const url = response?.data?.url || response?.url || '';\n if (!url) return;\n setShareUrl(url);\n const element = socialShareRef.current;\n if (element) {\n element.url = url;\n await element.refresh?.();\n await element.open?.();\n }\n } catch {\n // The SDK reports a failed share itself (notification); nothing to recover here.\n } finally {\n setSharing(false);\n }\n }, []);\n\n const shareAll = useCallback(() => {\n setMenuOpen(false);\n void share([], true);\n }, [share]);\n\n const shareSelected = useCallback(() => {\n if (selectedIds.length) void share(selectedIds, false);\n }, [share, selectedIds]);\n\n const startSelecting = useCallback(() => {\n setMenuOpen(false);\n setSelecting(true);\n }, []);\n\n const cancelSelecting = useCallback(() => {\n setSelecting(false);\n setSelectedIds([]);\n setShareUrl('');\n void socialShareRef.current?.close?.();\n }, []);\n\n const toggleSelected = useCallback((id: number) => {\n setShareUrl('');\n setSelectedIds((current) =>\n current.includes(id) ? current.filter((existing) => existing !== id) : [...current, id]\n );\n }, []);\n\n const toggleAll = useCallback(() => {\n setShareUrl('');\n setSelectedIds((current) =>\n current.length && current.length === loadedIdsRef.current.length\n ? []\n : [...loadedIdsRef.current]\n );\n }, []);\n\n return {\n menuOpen,\n setMenuOpen,\n selecting,\n selectedIds,\n sharing,\n shareUrl,\n loadedIdsRef,\n socialShareRef,\n shareAll,\n shareSelected,\n startSelecting,\n cancelSelecting,\n toggleSelected,\n toggleAll,\n };\n}\n\nexport type WishlistShareState = ReturnType<typeof useWishlistShare>;\n\n/** The bar above the wishlist: the \"Share\" dropdown, or — while picking products — the selection controls. */\nexport function WishlistShareBar({\n state,\n hasProducts,\n}: {\n state: WishlistShareState;\n hasProducts: boolean;\n}) {\n const { t } = useTranslation();\n const rootRef = useRef<HTMLDivElement>(null);\n const { menuOpen, setMenuOpen } = state;\n\n // Close the dropdown on an outside click or Escape.\n useEffect(() => {\n if (!menuOpen) return;\n const onPointerDown = (event: MouseEvent) => {\n if (!rootRef.current?.contains(event.target as Node)) setMenuOpen(false);\n };\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') setMenuOpen(false);\n };\n document.addEventListener('mousedown', onPointerDown);\n document.addEventListener('keydown', onKeyDown);\n return () => {\n document.removeEventListener('mousedown', onPointerDown);\n document.removeEventListener('keydown', onKeyDown);\n };\n }, [menuOpen, setMenuOpen]);\n\n const selectedCount = state.selectedIds.length;\n const allSelected = selectedCount > 0 && selectedCount === state.loadedIdsRef.current.length;\n\n return (\n <div ref={rootRef} className=\"s-wishlist-actions\">\n <div className=\"s-wishlist-actions-bar flex items-center justify-end gap-3 mb-3\">\n {state.selecting ? (\n <div className=\"s-wishlist-actions-selection flex items-center gap-3\">\n <label className=\"s-wishlist-actions-select-all inline-flex items-center gap-2 text-sm\">\n <input\n type=\"checkbox\"\n checked={allSelected}\n ref={(input) => {\n if (input) input.indeterminate = selectedCount > 0 && !allSelected;\n }}\n onChange={state.toggleAll}\n />\n {t('pages.wishlist.select_all', 'Select all')}\n </label>\n <SallaButton\n color=\"primary\"\n disabled={selectedCount === 0 || state.sharing}\n onClick={state.shareSelected}\n >\n {t('pages.wishlist.share', 'Share')}\n {selectedCount > 0 ? ` (${selectedCount})` : ''}\n </SallaButton>\n <SallaButton fill=\"outline\" color=\"light\" onClick={state.cancelSelecting}>\n {t('common.elements.cancel', 'Cancel')}\n </SallaButton>\n </div>\n ) : (\n <div className=\"s-wishlist-actions-dropdown relative\">\n <SallaButton\n color=\"primary\"\n fill=\"outline\"\n disabled={!hasProducts || state.sharing}\n aria-haspopup=\"true\"\n aria-expanded={menuOpen}\n onClick={() => setMenuOpen(!menuOpen)}\n >\n <span className=\"flex items-center justify-center gap-2\">\n <i className=\"sicon-share-alt\" aria-hidden=\"true\" />\n {t('pages.wishlist.share', 'Share')}\n <i className=\"sicon-keyboard_arrow_down\" aria-hidden=\"true\" />\n </span>\n </SallaButton>\n {menuOpen && (\n <ul\n role=\"menu\"\n className=\"s-wishlist-actions-menu absolute z-10 mt-2 min-w-48 rounded-md bg-white py-2 shadow-default rtl:right-0 ltr:left-0\"\n >\n <li role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n className=\"s-wishlist-actions-item block w-full px-4 py-2 text-start text-sm text-gray-700 hover:bg-gray-50\"\n onClick={state.shareAll}\n >\n {t('pages.wishlist.share_all', 'Share the list')}\n </button>\n </li>\n <li role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n className=\"s-wishlist-actions-item block w-full px-4 py-2 text-start text-sm text-gray-700 hover:bg-gray-50\"\n onClick={state.startSelecting}\n >\n {t('pages.wishlist.share_specific', 'Share specific items')}\n </button>\n </li>\n </ul>\n )}\n </div>\n )}\n </div>\n <SallaSocialShare\n ref={state.socialShareRef as never}\n url={state.shareUrl || undefined}\n modalTitle={t('pages.wishlist.share_list_title', 'Share wishlist')}\n className=\"s-wishlist-actions-share\"\n />\n </div>\n );\n}\n","import { useMemo, useRef } from 'react';\nimport { ItemsList } from '@salla.sa/twilight-components-react';\nimport { SallaAddProductButton } from '@salla.sa/twilight-components-react/add-product-button';\nimport { SallaButton } from '@salla.sa/twilight-components-react/button';\nimport { wishlist } from '../../../api/wishlist';\nimport type { Product } from '../../../types';\nimport { HookSlot, useWishlist, useMoney } from '../../../hooks';\nimport { useTranslation } from '../../../providers/I18nProvider';\nimport type { WishlistPageProps } from './types';\nimport { WishlistShareBar, useWishlistShare } from './WishlistShare';\nimport { NoContent, Image } from '../../../components/common';\nimport { useLocation } from '../../../providers/NavigationProvider';\n\ninterface WishlistCardSelection {\n /** \"Share specific items\" mode: the card shows a checkbox and toggles on click. */\n selecting: boolean;\n selected: boolean;\n onToggle: (id: number) => void;\n}\n\nfunction WishlistCard({\n product: prod,\n selection,\n}: {\n product: Product;\n selection?: WishlistCardSelection;\n}) {\n const { remove } = useWishlist();\n const { format } = useMoney();\n\n const handleRemove = () => {\n if (prod.id) {\n remove(Number(prod.id));\n }\n };\n\n const displayPrice = prod.sale_price ?? prod.price;\n const regularPrice = prod.regular_price;\n\n return (\n <div\n id={`wishlist-product-${prod.id}`}\n className={`product-entry product-entry--wishlist${selection?.selected ? ' is-selected' : ''}`}\n >\n {selection?.selecting && (\n <input\n type=\"checkbox\"\n className=\"s-wishlist-select shrink-0 rtl:ml-4 ltr:mr-4\"\n aria-label={prod.name}\n checked={selection.selected}\n onChange={() => selection.onToggle(Number(prod.id))}\n />\n )}\n <div className=\"flex items-center mb-4 sm:mb-0\">\n <a href={prod.url} className=\"product-entry__image\">\n <Image\n className=\"object-cover w-full h-full\"\n src={prod.image?.url}\n alt={prod.image?.alt ?? prod.name}\n aspectRatio=\"1/1\"\n />\n </a>\n <div className=\"flex-1 rtl:pr-5 ltr:pl-5\">\n <h3 className=\"text-sm text-gray-800 leading-6 mb-1.5 rtl:pl-5 ltr:pr-5 rtl:md:pl-8 ltr:md:pr-8 line-clamp-1\">\n <a href={prod.url}>{prod.name}</a>\n </h3>\n <div className=\"w-full center-between\">\n {prod.is_on_sale && regularPrice ? (\n <div className=\"space-x-1 rtl:space-x-reverse\">\n <h4 className=\"inline-block text-sm font-bold text-red-400\">\n {format(displayPrice)}\n </h4>\n <span className=\"text-sm text-gray-500 line-through\">{format(regularPrice)}</span>\n </div>\n ) : (\n <h4 className=\"text-sm font-bold\">{format(displayPrice)}</h4>\n )}\n </div>\n </div>\n </div>\n <div className=\"flex items-center space-x-4 rtl:space-x-reverse\">\n <SallaAddProductButton\n productStatus={prod.status}\n productId={prod.id}\n productType={prod.type}\n loaderPosition=\"center\"\n fill=\"outline\"\n className=\"flex-grow w-full sm:grow-0 md:w-40\"\n />\n <SallaButton\n loaderPosition=\"center\"\n shape=\"icon\"\n size=\"small\"\n color=\"danger\"\n className=\"btn--delete\"\n onClick={handleRemove}\n >\n <i className=\"sicon-cancel\" />\n </SallaButton>\n </div>\n </div>\n );\n}\n\nexport function WishlistPage({ query, products, pagination }: WishlistPageProps) {\n const { t } = useTranslation();\n const { pathname, searchStr } = useLocation();\n\n // Track the next page to load (starts at page 2 since page 1 is SSR)\n const nextPageRef = useRef(query.page + 1);\n const shareState = useWishlistShare();\n const selectedIdSet = useMemo(() => new Set(shareState.selectedIds), [shareState.selectedIds]);\n\n const loader = async () => {\n const pageToLoad = nextPageRef.current;\n const result = await wishlist.list({ page: pageToLoad });\n\n nextPageRef.current = pageToLoad + 1;\n\n return {\n items: result.items,\n next: result.next,\n };\n };\n\n return (\n <div className=\"space-y-5\" id=\"wishlist\">\n <HookSlot name=\"customer:wishlist.items.start\" />\n <WishlistShareBar state={shareState} hasProducts={products.length > 0} />\n <ItemsList<Product>\n items={products}\n loader={loader}\n mode={pagination?.next ? 'infinite' : 'static'}\n pageUrl={pathname + searchStr}\n className=\"s-products-list\"\n itemsClassName=\"s-products-list-wrapper s-products-list-row-cards\"\n empty={\n <div className=\"text-center py-16\">\n <NoContent\n icon=\"sicon-heart\"\n message={t('common.errors.no_wishlist', \"You don't have any wishes\")}\n actionLabel={t('pages.offer.continue_shopping', 'Continue shopping')}\n actionUrl=\"/\"\n />\n </div>\n }\n t={(key, fallback) => t(key, fallback || key)}\n >\n {(items) => {\n shareState.loadedIdsRef.current = items.map((item) => Number(item.id));\n return items.map((prod) => (\n <WishlistCard\n key={prod.id}\n product={prod}\n selection={{\n selecting: shareState.selecting,\n selected: selectedIdSet.has(Number(prod.id)),\n onToggle: shareState.toggleSelected,\n }}\n />\n ));\n }}\n </ItemsList>\n <HookSlot name=\"customer:wishlist.items.end\" />\n </div>\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-HW2GNVAQ.js').then((m) => ({ default: m.CartItem })));
5
- var LazyCartSummary = lazy(
6
- () => import('./CartSummary-Q22O5TUI.js').then((m) => ({ default: m.CartSummary }))
7
- );
8
- var LazySeoCartWidget = lazy(
9
- () => import('./SeoCartWidget-TV4A2SVZ.js').then((m) => ({ default: m.SeoCartWidget }))
10
- );
11
-
12
- export { LazyCartItem, LazyCartSummary, LazySeoCartWidget };
13
- //# sourceMappingURL=chunk-WTCRNCHB.js.map
14
- //# sourceMappingURL=chunk-WTCRNCHB.js.map