@salla.sa/twilight-theme-engine 1.0.83 → 1.0.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AddToCartForm-37APRET4.js → AddToCartForm-JUMFLSKN.js} +3 -3
- package/dist/{AddToCartForm-37APRET4.js.map → AddToCartForm-JUMFLSKN.js.map} +1 -1
- package/dist/{BlogAuthorPage-562MX2LO.js → BlogAuthorPage-LFAUMKC7.js} +7 -7
- package/dist/{BlogAuthorPage-562MX2LO.js.map → BlogAuthorPage-LFAUMKC7.js.map} +1 -1
- package/dist/{BlogCategoryPage-Q5H5OKLS.js → BlogCategoryPage-NWYFFPCD.js} +7 -7
- package/dist/{BlogCategoryPage-Q5H5OKLS.js.map → BlogCategoryPage-NWYFFPCD.js.map} +1 -1
- package/dist/{BlogPage-DTNPNV2B.js → BlogPage-BOHXFV7E.js} +6 -6
- package/dist/{BlogPage-DTNPNV2B.js.map → BlogPage-BOHXFV7E.js.map} +1 -1
- package/dist/{BlogSinglePage-T7P5I4C3.js → BlogSinglePage-FYEXQPMB.js} +6 -6
- package/dist/{BlogSinglePage-T7P5I4C3.js.map → BlogSinglePage-FYEXQPMB.js.map} +1 -1
- package/dist/{BlogTagPage-K5IPJ7V2.js → BlogTagPage-DAM3RNVA.js} +7 -7
- package/dist/{BlogTagPage-K5IPJ7V2.js.map → BlogTagPage-DAM3RNVA.js.map} +1 -1
- package/dist/{BrandsPage-TSLY4GNB.js → BrandsPage-GAKQCE6O.js} +6 -6
- package/dist/{BrandsPage-TSLY4GNB.js.map → BrandsPage-GAKQCE6O.js.map} +1 -1
- package/dist/{Breadcrumb-2WAXVVO4.js → Breadcrumb-NAYSZNRV.js} +6 -6
- package/dist/{Breadcrumb-2WAXVVO4.js.map → Breadcrumb-NAYSZNRV.js.map} +1 -1
- package/dist/{CartItem-QST2C243.js → CartItem-ZRVLIZT3.js} +6 -6
- package/dist/{CartItem-QST2C243.js.map → CartItem-ZRVLIZT3.js.map} +1 -1
- package/dist/{CartSummary-IFZI2NFE.js → CartSummary-U2TVLG35.js} +6 -6
- package/dist/{CartSummary-IFZI2NFE.js.map → CartSummary-U2TVLG35.js.map} +1 -1
- package/dist/{chunk-JKIRRMBU.js → Copyright-2LSBADZD.js} +7 -2
- package/dist/Copyright-2LSBADZD.js.map +1 -0
- package/dist/{CustomerLayout-HADICNS2.js → CustomerLayout-WSKXWI7D.js} +6 -6
- package/dist/{CustomerLayout-HADICNS2.js.map → CustomerLayout-WSKXWI7D.js.map} +1 -1
- package/dist/Footer-ONNRJU4G.js +15 -0
- package/dist/{Footer-TTGSSHPD.js.map → Footer-ONNRJU4G.js.map} +1 -1
- package/dist/{Header-W232GUVN.js → Header-C6VXLLUC.js} +4 -4
- package/dist/{Header-W232GUVN.js.map → Header-C6VXLLUC.js.map} +1 -1
- package/dist/{LoyaltyPage-GV37IVB5.js → LoyaltyPage-IG5KSYNO.js} +6 -6
- package/dist/{LoyaltyPage-GV37IVB5.js.map → LoyaltyPage-IG5KSYNO.js.map} +1 -1
- package/dist/{LoyaltyPointsPage-XWPUI5XG.js → LoyaltyPointsPage-RKO56ZER.js} +3 -3
- package/dist/{LoyaltyPointsPage-XWPUI5XG.js.map → LoyaltyPointsPage-RKO56ZER.js.map} +1 -1
- package/dist/{MainMenu-3D6TQ5MX.js → MainMenu-USOYTKPU.js} +3 -3
- package/dist/{MainMenu-3D6TQ5MX.js.map → MainMenu-USOYTKPU.js.map} +1 -1
- package/dist/{Footer-TTGSSHPD.js → MasterLayout-2W24ACEK.js} +6 -6
- package/dist/{MasterLayout-X3SRGN7P.js.map → MasterLayout-2W24ACEK.js.map} +1 -1
- package/dist/{MobileMenu-GZNQH3NF.js → MobileMenu-E4X2GOZ3.js} +6 -6
- package/dist/{MobileMenu-GZNQH3NF.js.map → MobileMenu-E4X2GOZ3.js.map} +1 -1
- package/dist/{NotificationsPage-ZWX7URQ6.js → NotificationsPage-BJ5XVWEG.js} +6 -6
- package/dist/{NotificationsPage-ZWX7URQ6.js.map → NotificationsPage-BJ5XVWEG.js.map} +1 -1
- package/dist/{OrderSinglePage-HADHBSZF.js → OrderSinglePage-544E36FJ.js} +6 -6
- package/dist/{OrderSinglePage-HADHBSZF.js.map → OrderSinglePage-544E36FJ.js.map} +1 -1
- package/dist/{OrdersPage-JMR5PSPX.js → OrdersPage-AFBWVTZU.js} +6 -6
- package/dist/{OrdersPage-JMR5PSPX.js.map → OrdersPage-AFBWVTZU.js.map} +1 -1
- package/dist/{PageSingle-FYN6UCT5.js → PageSingle-H2EJIL74.js} +3 -3
- package/dist/{PageSingle-FYN6UCT5.js.map → PageSingle-H2EJIL74.js.map} +1 -1
- package/dist/{ProductDetails-QONKMMI6.js → ProductDetails-SDZHALU6.js} +3 -3
- package/dist/{ProductDetails-QONKMMI6.js.map → ProductDetails-SDZHALU6.js.map} +1 -1
- package/dist/{ProfilePage-DBKJZEII.js → ProfilePage-V5KV6GQK.js} +6 -6
- package/dist/{ProfilePage-DBKJZEII.js.map → ProfilePage-V5KV6GQK.js.map} +1 -1
- package/dist/{ReviewsPage-6Y57FGOZ.js → ReviewsPage-CXKJABXP.js} +3 -3
- package/dist/{ReviewsPage-6Y57FGOZ.js.map → ReviewsPage-CXKJABXP.js.map} +1 -1
- package/dist/{SeoCartWidget-YSCC2V65.js → SeoCartWidget-JAV6M3X5.js} +6 -6
- package/dist/{SeoCartWidget-YSCC2V65.js.map → SeoCartWidget-JAV6M3X5.js.map} +1 -1
- package/dist/{SettingsPage-EJG4JMOK.js → SettingsPage-43SUCLQR.js} +6 -6
- package/dist/{SettingsPage-EJG4JMOK.js.map → SettingsPage-43SUCLQR.js.map} +1 -1
- package/dist/{StoreClosedNotification-4F3KJTA4.js → StoreClosedNotification-MINBJOGZ.js} +7 -7
- package/dist/{StoreClosedNotification-4F3KJTA4.js.map → StoreClosedNotification-MINBJOGZ.js.map} +1 -1
- package/dist/{TestimonialsPage-RAMT7OZ4.js → TestimonialsPage-RLLIDLOA.js} +3 -3
- package/dist/{TestimonialsPage-RAMT7OZ4.js.map → TestimonialsPage-RLLIDLOA.js.map} +1 -1
- package/dist/{ThankYouPage-IODVASK5.js → ThankYouPage-52SSZ7FV.js} +6 -6
- package/dist/{ThankYouPage-IODVASK5.js.map → ThankYouPage-52SSZ7FV.js.map} +1 -1
- package/dist/{WalletPage-Q2M55EB2.js → WalletPage-4AN4UJ52.js} +6 -6
- package/dist/{WalletPage-Q2M55EB2.js.map → WalletPage-4AN4UJ52.js.map} +1 -1
- package/dist/{WishlistPage-YUPZ5JDV.js → WishlistPage-L6IYJUJZ.js} +8 -8
- package/dist/{WishlistPage-YUPZ5JDV.js.map → WishlistPage-L6IYJUJZ.js.map} +1 -1
- package/dist/api/product.d.ts +19 -0
- package/dist/api/product.d.ts.map +1 -1
- package/dist/api/product.js +1 -1
- package/dist/api/wishlist.js +2 -2
- package/dist/{chunk-6QMYSKUE.js → chunk-3PWARKZX.js} +5 -5
- package/dist/{chunk-6QMYSKUE.js.map → chunk-3PWARKZX.js.map} +1 -1
- package/dist/chunk-4EA56R6I.js +14 -0
- package/dist/{chunk-5RAADM2K.js.map → chunk-4EA56R6I.js.map} +1 -1
- package/dist/{chunk-TWJXVT6S.js → chunk-556OT3BN.js} +14 -3
- package/dist/chunk-556OT3BN.js.map +1 -0
- package/dist/{chunk-3NLO5SK3.js → chunk-CCUE2FMU.js} +3 -3
- package/dist/{chunk-3NLO5SK3.js.map → chunk-CCUE2FMU.js.map} +1 -1
- package/dist/{chunk-IBDMGZ23.js → chunk-EFF2WO6W.js} +8 -127
- package/dist/chunk-EFF2WO6W.js.map +1 -0
- package/dist/{chunk-ID5SIAGH.js → chunk-FFWSQJLV.js} +3 -3
- package/dist/{chunk-ID5SIAGH.js.map → chunk-FFWSQJLV.js.map} +1 -1
- package/dist/{chunk-5SD7BUSA.js → chunk-I4LYRR2O.js} +3 -3
- package/dist/{chunk-5SD7BUSA.js.map → chunk-I4LYRR2O.js.map} +1 -1
- package/dist/{chunk-LJUFGTG2.js → chunk-IC6XW3PD.js} +7 -7
- package/dist/{chunk-LJUFGTG2.js.map → chunk-IC6XW3PD.js.map} +1 -1
- package/dist/{chunk-ZUAR7FWG.js → chunk-MECSOKS7.js} +4 -4
- package/dist/{chunk-ZUAR7FWG.js.map → chunk-MECSOKS7.js.map} +1 -1
- package/dist/{chunk-UHAI6CIG.js → chunk-R54GSKJS.js} +5 -5
- package/dist/{chunk-UHAI6CIG.js.map → chunk-R54GSKJS.js.map} +1 -1
- package/dist/{chunk-5FGZZON5.js → chunk-R5BQDCDK.js} +4 -4
- package/dist/{chunk-5FGZZON5.js.map → chunk-R5BQDCDK.js.map} +1 -1
- package/dist/{chunk-37EW45F4.js → chunk-RRGEASAL.js} +6 -6
- package/dist/{chunk-37EW45F4.js.map → chunk-RRGEASAL.js.map} +1 -1
- package/dist/{chunk-YNIALL22.js → chunk-UNEZZMQA.js} +4 -4
- package/dist/{chunk-YNIALL22.js.map → chunk-UNEZZMQA.js.map} +1 -1
- package/dist/{chunk-R42T7UL7.js → chunk-WSRVPR7V.js} +3 -3
- package/dist/{chunk-R42T7UL7.js.map → chunk-WSRVPR7V.js.map} +1 -1
- package/dist/chunk-YFQUSAET.js +268 -0
- package/dist/chunk-YFQUSAET.js.map +1 -0
- package/dist/components/cart/index.js +1 -1
- package/dist/components/common/index.js +1 -1
- package/dist/components/drawer/index.js +4 -4
- package/dist/components/home/index.js +7 -7
- package/dist/components/layout/Footer.d.ts +27 -1
- package/dist/components/layout/Footer.d.ts.map +1 -1
- package/dist/components/layout/index.js +1 -1
- package/dist/components/product/index.js +5 -5
- package/dist/components/store/index.js +6 -6
- package/dist/{document-class-HEO4N5Z5.js → document-class-SD6BUMZN.js} +4 -4
- package/dist/{document-class-HEO4N5Z5.js.map → document-class-SD6BUMZN.js.map} +1 -1
- package/dist/hooks/index.js +4 -4
- package/dist/hooks/useGtm.js +4 -4
- package/dist/hooks/useMoney.js +4 -4
- package/dist/hooks/useStore.js +4 -4
- package/dist/index.js +4 -4
- package/dist/{not-found-NHSV2Q5D.js → not-found-TUU7WQLL.js} +7 -7
- package/dist/{not-found-NHSV2Q5D.js.map → not-found-TUU7WQLL.js.map} +1 -1
- package/dist/providers/index.js +4 -4
- package/dist/routes/account/orders.js +1 -1
- package/dist/routes/account/wishlist/WishlistPage.d.ts.map +1 -1
- package/dist/routes/account.js +8 -8
- package/dist/routes/blog.js +5 -5
- package/dist/routes/brands.js +1 -1
- package/dist/routes/cart.js +9 -9
- package/dist/routes/home.js +8 -8
- package/dist/routes/loyalty.js +2 -2
- package/dist/routes/page.js +1 -1
- package/dist/routes/product-listing/ProductListPage.d.ts.map +1 -1
- package/dist/routes/product-listing.js +9 -10
- package/dist/routes/product-listing.js.map +1 -1
- package/dist/routes/product.js +7 -7
- package/dist/routes/testimonials.js +2 -2
- package/dist/routes/thank-you.js +1 -1
- package/dist/skeleton.js +8 -8
- package/dist/tanstack.js +2 -2
- package/package.json +1 -1
- package/dist/Copyright-J7OL7EZS.js +0 -10
- package/dist/Copyright-J7OL7EZS.js.map +0 -1
- package/dist/MasterLayout-X3SRGN7P.js +0 -49
- package/dist/chunk-5RAADM2K.js +0 -14
- package/dist/chunk-IBDMGZ23.js.map +0 -1
- package/dist/chunk-JKIRRMBU.js.map +0 -1
- package/dist/chunk-TWJXVT6S.js.map +0 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { useTranslation } from './chunk-TYNZ5B2B.js';
|
|
2
|
+
import { HookSlot } from './chunk-5XDPAKF5.js';
|
|
3
|
+
import { Image } from './chunk-CCUE2FMU.js';
|
|
4
|
+
import { Link } from './chunk-AXW67SY7.js';
|
|
5
|
+
import { LazyImageModal } from './chunk-7V5HOZW4.js';
|
|
6
|
+
import { useTwilight } from './chunk-DF6FBKDN.js';
|
|
7
|
+
import { useState } from 'react';
|
|
8
|
+
import { SallaAppsIcons } from '@salla.sa/twilight-components-react/apps-icons';
|
|
9
|
+
import { SallaSocial } from '@salla.sa/twilight-components-react/social';
|
|
10
|
+
import { SallaMenu } from '@salla.sa/twilight-components-react/menu';
|
|
11
|
+
import { SallaTrustBadges } from '@salla.sa/twilight-components-react/trust-badges';
|
|
12
|
+
import { SallaPayments } from '@salla.sa/twilight-components-react/payments';
|
|
13
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
14
|
+
|
|
15
|
+
var TAX_ICON_URL = "https://cdn.salla.network/cdn-cgi/image/fit=scale-down,width=70,height=70,onerror=redirect,format=auto/images/tax.png?v=2.0.5";
|
|
16
|
+
function FooterTax({ dark }) {
|
|
17
|
+
const { store } = useTwilight();
|
|
18
|
+
const { t } = useTranslation();
|
|
19
|
+
const [open, setOpen] = useState(false);
|
|
20
|
+
const number = store.settings?.tax?.number;
|
|
21
|
+
const certificate = store.settings?.tax?.certificate;
|
|
22
|
+
if (!number) return null;
|
|
23
|
+
return /* @__PURE__ */ jsxs(
|
|
24
|
+
"div",
|
|
25
|
+
{
|
|
26
|
+
"data-testid": "store-footer-tax",
|
|
27
|
+
className: "store-footer__tax flex items-end gap-2 rtl:space-x-reverse",
|
|
28
|
+
children: [
|
|
29
|
+
certificate && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
30
|
+
/* @__PURE__ */ jsx(
|
|
31
|
+
"button",
|
|
32
|
+
{
|
|
33
|
+
type: "button",
|
|
34
|
+
"data-testid": "store-footer-tax-certificate",
|
|
35
|
+
className: "store-footer__tax-cert shrink-0",
|
|
36
|
+
"aria-label": t("common.elements.tax_certificate", "Tax Certificate"),
|
|
37
|
+
"aria-haspopup": "dialog",
|
|
38
|
+
onClick: () => setOpen(true),
|
|
39
|
+
children: /* @__PURE__ */ jsx(
|
|
40
|
+
"img",
|
|
41
|
+
{
|
|
42
|
+
src: TAX_ICON_URL,
|
|
43
|
+
alt: t("common.elements.tax_certificate", "Tax Certificate"),
|
|
44
|
+
width: 40,
|
|
45
|
+
height: 50,
|
|
46
|
+
loading: "lazy",
|
|
47
|
+
decoding: "async",
|
|
48
|
+
className: "w-10 rounded-sm transition-opacity hover:opacity-80"
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
}
|
|
52
|
+
),
|
|
53
|
+
/* @__PURE__ */ jsx(
|
|
54
|
+
LazyImageModal,
|
|
55
|
+
{
|
|
56
|
+
isOpen: open,
|
|
57
|
+
onClose: () => setOpen(false),
|
|
58
|
+
src: certificate,
|
|
59
|
+
alt: t("common.elements.tax_certificate", "Tax Certificate"),
|
|
60
|
+
title: t("common.elements.tax_certificate", "Tax Certificate")
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
] }),
|
|
64
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
65
|
+
/* @__PURE__ */ jsx("p", { className: `mb-1 text-sm opacity-70 ${dark ? "text-white" : ""}`, children: t("common.elements.tax_number", "Tax Number") }),
|
|
66
|
+
/* @__PURE__ */ jsx("b", { className: "text-sm", children: number })
|
|
67
|
+
] })
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
var SBC_ICON_URL = "https://cdn.salla.network/images/sbc.png?v=2.0.5";
|
|
73
|
+
function FooterSbc({ dark }) {
|
|
74
|
+
const { store } = useTwilight();
|
|
75
|
+
const { t } = useTranslation();
|
|
76
|
+
const id = store.settings?.certificate?.id;
|
|
77
|
+
if (!id) return null;
|
|
78
|
+
return /* @__PURE__ */ jsxs(
|
|
79
|
+
"a",
|
|
80
|
+
{
|
|
81
|
+
href: `https://eauthenticate.saudibusiness.gov.sa/certificate-details/${encodeURIComponent(id)}`,
|
|
82
|
+
target: "_blank",
|
|
83
|
+
rel: "noopener noreferrer",
|
|
84
|
+
"data-testid": "store-footer-sbc",
|
|
85
|
+
className: "store-footer__sbc flex items-center gap-2.5 transition-opacity hover:opacity-75",
|
|
86
|
+
children: [
|
|
87
|
+
/* @__PURE__ */ jsx(
|
|
88
|
+
"img",
|
|
89
|
+
{
|
|
90
|
+
src: SBC_ICON_URL,
|
|
91
|
+
alt: `SBC ${id}`,
|
|
92
|
+
width: 56,
|
|
93
|
+
height: 40,
|
|
94
|
+
loading: "lazy",
|
|
95
|
+
decoding: "async",
|
|
96
|
+
className: "h-10 w-14 rounded-sm"
|
|
97
|
+
}
|
|
98
|
+
),
|
|
99
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
100
|
+
/* @__PURE__ */ jsx("p", { className: `text-xs opacity-70 ${dark ? "text-white" : ""}`, children: t("blocks.footer.sbc_trusted_by", "Trusted by") }),
|
|
101
|
+
/* @__PURE__ */ jsx("b", { className: "text-sm", children: t("blocks.footer.sbc_platform", "Business Platform") })
|
|
102
|
+
] })
|
|
103
|
+
]
|
|
104
|
+
}
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
function FooterTrust({ dark, centered }) {
|
|
108
|
+
return /* @__PURE__ */ jsxs(
|
|
109
|
+
"div",
|
|
110
|
+
{
|
|
111
|
+
"data-testid": "store-footer-trust",
|
|
112
|
+
className: `store-footer__trust flex flex-wrap items-end gap-x-6 gap-y-3${centered ? " justify-center" : ""}`,
|
|
113
|
+
children: [
|
|
114
|
+
/* @__PURE__ */ jsx(FooterTax, { dark }),
|
|
115
|
+
/* @__PURE__ */ jsx(FooterSbc, { dark }),
|
|
116
|
+
/* @__PURE__ */ jsx(SallaTrustBadges, { ...dark ? { dark: true } : {} })
|
|
117
|
+
]
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
function FooterLinksMenu({
|
|
122
|
+
inSheet,
|
|
123
|
+
className,
|
|
124
|
+
heading,
|
|
125
|
+
dark
|
|
126
|
+
}) {
|
|
127
|
+
if (inSheet) return null;
|
|
128
|
+
const menu = /* @__PURE__ */ jsx(SallaMenu, { source: "footer", useReactLink: true, className, suppressHydrationWarning: true });
|
|
129
|
+
if (!heading) return menu;
|
|
130
|
+
return /* @__PURE__ */ jsxs("div", { className: "store-footer__links", children: [
|
|
131
|
+
/* @__PURE__ */ jsx("h3", { className: `mb-3 text-lg font-bold lg:mb-5 ${dark ? "text-white" : "text-gray-900"}`, children: heading }),
|
|
132
|
+
menu
|
|
133
|
+
] });
|
|
134
|
+
}
|
|
135
|
+
function FooterLogo({ className }) {
|
|
136
|
+
const { store } = useTwilight();
|
|
137
|
+
return /* @__PURE__ */ jsx(
|
|
138
|
+
Link,
|
|
139
|
+
{
|
|
140
|
+
to: "/",
|
|
141
|
+
className: `store-footer__logo inline-flex items-center m-0 transition-opacity hover:opacity-75 ${className}`,
|
|
142
|
+
children: /* @__PURE__ */ jsx(
|
|
143
|
+
Image,
|
|
144
|
+
{
|
|
145
|
+
src: store.logo,
|
|
146
|
+
alt: store.name || "Store",
|
|
147
|
+
width: 150,
|
|
148
|
+
height: 44,
|
|
149
|
+
objectFit: "contain",
|
|
150
|
+
className: "h-11 w-auto max-w-[180px]"
|
|
151
|
+
}
|
|
152
|
+
)
|
|
153
|
+
}
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
function FooterDescription({ className }) {
|
|
157
|
+
const { store } = useTwilight();
|
|
158
|
+
if (!store.description) return null;
|
|
159
|
+
return /* @__PURE__ */ jsx(
|
|
160
|
+
"div",
|
|
161
|
+
{
|
|
162
|
+
className: `store-footer__desc opacity-80 ${className}`,
|
|
163
|
+
dangerouslySetInnerHTML: { __html: store.description }
|
|
164
|
+
}
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
function FooterCenteredBody({ inSheet, isDark }) {
|
|
168
|
+
const { store } = useTwilight();
|
|
169
|
+
const { t } = useTranslation();
|
|
170
|
+
return /* @__PURE__ */ jsxs("div", { className: "container mx-auto flex max-w-2xl flex-col items-center gap-6 text-center", children: [
|
|
171
|
+
/* @__PURE__ */ jsx(FooterLogo, { className: "" }),
|
|
172
|
+
/* @__PURE__ */ jsx(FooterDescription, { className: "" }),
|
|
173
|
+
/* @__PURE__ */ jsx(SallaSocial, {}),
|
|
174
|
+
/* @__PURE__ */ jsx(
|
|
175
|
+
FooterLinksMenu,
|
|
176
|
+
{
|
|
177
|
+
inSheet,
|
|
178
|
+
className: "store-footer__menu store-footer__menu--inline",
|
|
179
|
+
dark: isDark
|
|
180
|
+
}
|
|
181
|
+
),
|
|
182
|
+
/* @__PURE__ */ jsx(FooterTrust, { dark: isDark, centered: true }),
|
|
183
|
+
/* @__PURE__ */ jsx("div", { className: "store-footer__apps flex flex-col items-center gap-3", children: /* @__PURE__ */ jsx(
|
|
184
|
+
SallaAppsIcons,
|
|
185
|
+
{
|
|
186
|
+
apps: store.apps,
|
|
187
|
+
appsTitle: t("blocks.footer.download_apps", "Get our apps")
|
|
188
|
+
}
|
|
189
|
+
) })
|
|
190
|
+
] });
|
|
191
|
+
}
|
|
192
|
+
function FooterColumnsBody({ inSheet, isDark }) {
|
|
193
|
+
const { store } = useTwilight();
|
|
194
|
+
const { t } = useTranslation();
|
|
195
|
+
return /* @__PURE__ */ jsxs("div", { className: "container grid grid-cols-1 gap-10 sm:grid-cols-2 lg:grid-cols-4 lg:gap-16", children: [
|
|
196
|
+
/* @__PURE__ */ jsxs("div", { className: "store-footer__brand rtl:lg:pl-16 ltr:lg:pr-16 sm:col-span-2", children: [
|
|
197
|
+
/* @__PURE__ */ jsx(FooterLogo, { className: "mb-5" }),
|
|
198
|
+
/* @__PURE__ */ jsx(FooterDescription, { className: "max-w-sm leading-6 my-5" }),
|
|
199
|
+
/* @__PURE__ */ jsx(SallaSocial, { className: "block mb-6" }),
|
|
200
|
+
/* @__PURE__ */ jsx(FooterTrust, { dark: isDark, centered: false })
|
|
201
|
+
] }),
|
|
202
|
+
/* @__PURE__ */ jsx(
|
|
203
|
+
FooterLinksMenu,
|
|
204
|
+
{
|
|
205
|
+
inSheet,
|
|
206
|
+
className: "store-footer__menu store-footer__menu--stacked",
|
|
207
|
+
heading: t("blocks.footer.important_links", "Important links"),
|
|
208
|
+
dark: isDark
|
|
209
|
+
}
|
|
210
|
+
),
|
|
211
|
+
/* @__PURE__ */ jsx("div", { className: "store-footer__apps", children: /* @__PURE__ */ jsx(
|
|
212
|
+
SallaAppsIcons,
|
|
213
|
+
{
|
|
214
|
+
apps: store.apps,
|
|
215
|
+
appsTitle: t("blocks.footer.download_apps", "Get our apps")
|
|
216
|
+
}
|
|
217
|
+
) })
|
|
218
|
+
] });
|
|
219
|
+
}
|
|
220
|
+
function Footer({ inSheet = false } = {}) {
|
|
221
|
+
const { store, theme } = useTwilight();
|
|
222
|
+
const { t } = useTranslation();
|
|
223
|
+
const year = (/* @__PURE__ */ new Date()).getFullYear();
|
|
224
|
+
const isCentered = theme.settings?.footer_layout === "centered";
|
|
225
|
+
const isDark = !!theme.settings?.footer_is_dark;
|
|
226
|
+
const Root = inSheet ? "div" : "footer";
|
|
227
|
+
return /* @__PURE__ */ jsxs(
|
|
228
|
+
Root,
|
|
229
|
+
{
|
|
230
|
+
className: `store-footer store-footer--${isCentered ? "centered" : "columns"}${inSheet ? " store-footer--sheet" : ""} relative mt-8 sm:mt-16 ${isDark ? "bg-[#0E0F0F] text-white" : "bg-[#F4F7F2] text-gray-600"}`,
|
|
231
|
+
suppressHydrationWarning: true,
|
|
232
|
+
children: [
|
|
233
|
+
!inSheet && /* @__PURE__ */ jsx(HookSlot, { name: "footer:start" }),
|
|
234
|
+
/* @__PURE__ */ jsx(
|
|
235
|
+
"div",
|
|
236
|
+
{
|
|
237
|
+
"aria-label": "footer",
|
|
238
|
+
className: `store-footer__inner border-b py-8 lg:py-16 ${isDark ? "bg-[#1D1F1F] border-dashed border-white/10" : "bg-transparent border-gray-200"}`,
|
|
239
|
+
children: isCentered ? /* @__PURE__ */ jsx(FooterCenteredBody, { inSheet, isDark }) : /* @__PURE__ */ jsx(FooterColumnsBody, { inSheet, isDark })
|
|
240
|
+
}
|
|
241
|
+
),
|
|
242
|
+
/* @__PURE__ */ jsxs("div", { className: "store-footer__bottom container md:flex items-center justify-between gap-4 py-4 lg:py-7 text-center", children: [
|
|
243
|
+
/* @__PURE__ */ jsx("span", { className: `text-sm copyright-text ${isDark ? "text-gray-400" : "text-gray-700"}`, children: /* @__PURE__ */ jsx(
|
|
244
|
+
HookSlot,
|
|
245
|
+
{
|
|
246
|
+
name: "copyright",
|
|
247
|
+
context: { storeName: store.name },
|
|
248
|
+
fallback: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
249
|
+
t("blocks.footer.copyright", "All rights reserved"),
|
|
250
|
+
" ",
|
|
251
|
+
/* @__PURE__ */ jsx(Link, { to: "/", className: "transition-opacity hover:opacity-75 hover:text-primary", children: store.name }),
|
|
252
|
+
" ",
|
|
253
|
+
"\xA9 ",
|
|
254
|
+
year
|
|
255
|
+
] })
|
|
256
|
+
}
|
|
257
|
+
) }),
|
|
258
|
+
/* @__PURE__ */ jsx(SallaPayments, {})
|
|
259
|
+
] }),
|
|
260
|
+
!inSheet && /* @__PURE__ */ jsx(HookSlot, { name: "footer:end" })
|
|
261
|
+
]
|
|
262
|
+
}
|
|
263
|
+
);
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
export { Footer };
|
|
267
|
+
//# sourceMappingURL=chunk-YFQUSAET.js.map
|
|
268
|
+
//# sourceMappingURL=chunk-YFQUSAET.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/layout/Footer.tsx"],"names":[],"mappings":"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","file":"chunk-YFQUSAET.js","sourcesContent":["import { useState } from 'react';\nimport { SallaAppsIcons } from '@salla.sa/twilight-components-react/apps-icons';\nimport { SallaSocial } from '@salla.sa/twilight-components-react/social';\nimport { SallaMenu } from '@salla.sa/twilight-components-react/menu';\nimport { SallaTrustBadges } from '@salla.sa/twilight-components-react/trust-badges';\nimport { SallaPayments } from '@salla.sa/twilight-components-react/payments';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport { HookSlot } from '../../hooks/HookSlot';\nimport { Link, Image } from '../common';\nimport { ImageModal } from '../modal';\n\n/** Salla's value-added-tax badge icon (70×70, CDN-resized) — a platform\n * asset shared by every store, not specific to any one theme. */\nconst TAX_ICON_URL =\n 'https://cdn.salla.network/cdn-cgi/image/fit=scale-down,width=70,height=70,onerror=redirect,format=auto/images/tax.png?v=2.0.5';\n\n/**\n * The store's value-added-tax registration: the tax number, plus the certificate as\n * the tax icon that opens the certificate image full size in a modal. Nothing shows\n * when the store has no tax number.\n */\nfunction FooterTax({ dark }: { dark: boolean }) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const [open, setOpen] = useState(false);\n const number = store.settings?.tax?.number;\n const certificate = store.settings?.tax?.certificate;\n if (!number) return null;\n\n return (\n <div\n data-testid=\"store-footer-tax\"\n className=\"store-footer__tax flex items-end gap-2 rtl:space-x-reverse\"\n >\n {certificate && (\n <>\n <button\n type=\"button\"\n data-testid=\"store-footer-tax-certificate\"\n className=\"store-footer__tax-cert shrink-0\"\n aria-label={t('common.elements.tax_certificate', 'Tax Certificate')}\n aria-haspopup=\"dialog\"\n onClick={() => setOpen(true)}\n >\n <img\n src={TAX_ICON_URL}\n alt={t('common.elements.tax_certificate', 'Tax Certificate')}\n width={40}\n height={50}\n loading=\"lazy\"\n decoding=\"async\"\n className=\"w-10 rounded-sm transition-opacity hover:opacity-80\"\n />\n </button>\n <ImageModal\n isOpen={open}\n onClose={() => setOpen(false)}\n src={certificate}\n alt={t('common.elements.tax_certificate', 'Tax Certificate')}\n title={t('common.elements.tax_certificate', 'Tax Certificate')}\n />\n </>\n )}\n <div>\n <p className={`mb-1 text-sm opacity-70 ${dark ? 'text-white' : ''}`}>\n {t('common.elements.tax_number', 'Tax Number')}\n </p>\n <b className=\"text-sm\">{number}</b>\n </div>\n </div>\n );\n}\n\n/** Saudi Business Center (SBC) logo, CDN-versioned like the tax icon -- also a\n * platform asset, not theme-specific. */\nconst SBC_ICON_URL = 'https://cdn.salla.network/images/sbc.png?v=2.0.5';\n\n/**\n * The store's Saudi Business Center certificate: a \"Trusted by Business Platform\" badge that\n * opens the certificate's page on the SBC site so visitors can verify the merchant. Nothing\n * shows when the store has no certificate.\n */\nfunction FooterSbc({ dark }: { dark: boolean }) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const id = store.settings?.certificate?.id;\n if (!id) return null;\n\n return (\n <a\n href={`https://eauthenticate.saudibusiness.gov.sa/certificate-details/${encodeURIComponent(id)}`}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n data-testid=\"store-footer-sbc\"\n className=\"store-footer__sbc flex items-center gap-2.5 transition-opacity hover:opacity-75\"\n >\n <img\n src={SBC_ICON_URL}\n alt={`SBC ${id}`}\n width={56}\n height={40}\n loading=\"lazy\"\n decoding=\"async\"\n className=\"h-10 w-14 rounded-sm\"\n />\n <div>\n <p className={`text-xs opacity-70 ${dark ? 'text-white' : ''}`}>\n {t('blocks.footer.sbc_trusted_by', 'Trusted by')}\n </p>\n <b className=\"text-sm\">{t('blocks.footer.sbc_platform', 'Business Platform')}</b>\n </div>\n </a>\n );\n}\n\n/** Trust badges, the tax registration and the SBC badge, side by side (wrapping on narrow columns). */\nfunction FooterTrust({ dark, centered }: { dark: boolean; centered: boolean }) {\n return (\n <div\n data-testid=\"store-footer-trust\"\n className={`store-footer__trust flex flex-wrap items-end gap-x-6 gap-y-3${centered ? ' justify-center' : ''}`}\n >\n <FooterTax dark={dark} />\n <FooterSbc dark={dark} />\n <SallaTrustBadges {...(dark ? { dark: true } : {})} />\n </div>\n );\n}\n\n/**\n * The footer's own menu of (\"important\") links -- skipped entirely when\n * `inSheet`, for a theme that opens it from somewhere else of its own (a\n * mobile account sheet, a dedicated links screen, …) instead; showing it\n * again down here would just be a redundant second copy. `heading` wraps it\n * in the grid layout's own `.store-footer__links` column; the centered\n * layout's inline row has none.\n */\nfunction FooterLinksMenu({\n inSheet,\n className,\n heading,\n dark,\n}: {\n inSheet: boolean;\n className: string;\n heading?: string;\n dark: boolean;\n}) {\n if (inSheet) return null;\n\n const menu = (\n <SallaMenu source=\"footer\" useReactLink className={className} suppressHydrationWarning />\n );\n if (!heading) return menu;\n\n return (\n <div className=\"store-footer__links\">\n <h3 className={`mb-3 text-lg font-bold lg:mb-5 ${dark ? 'text-white' : 'text-gray-900'}`}>\n {heading}\n </h3>\n {menu}\n </div>\n );\n}\n\n/** The logo link, same shape in both layouts -- only its own spacing differs. */\nfunction FooterLogo({ className }: { className: string }) {\n const { store } = useTwilight();\n return (\n <Link\n to=\"/\"\n className={`store-footer__logo inline-flex items-center m-0 transition-opacity hover:opacity-75 ${className}`}\n >\n <Image\n src={store.logo}\n alt={store.name || 'Store'}\n width={150}\n height={44}\n objectFit=\"contain\"\n className=\"h-11 w-auto max-w-[180px]\"\n />\n </Link>\n );\n}\n\n/** Merchant-authored description HTML -- mirrors the Twig theme's\n * `store.description|raw`. Renders nothing when the store has none set. */\nfunction FooterDescription({ className }: { className: string }) {\n const { store } = useTwilight();\n if (!store.description) return null;\n return (\n <div\n className={`store-footer__desc opacity-80 ${className}`}\n dangerouslySetInnerHTML={{ __html: store.description }}\n />\n );\n}\n\n/** Centered layout: logo, description, social, footer menu, trust badges and\n * app buttons stacked as one centered column. */\nfunction FooterCenteredBody({ inSheet, isDark }: { inSheet: boolean; isDark: boolean }) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n\n return (\n <div className=\"container mx-auto flex max-w-2xl flex-col items-center gap-6 text-center\">\n <FooterLogo className=\"\" />\n <FooterDescription className=\"\" />\n <SallaSocial />\n\n <FooterLinksMenu\n inSheet={inSheet}\n className=\"store-footer__menu store-footer__menu--inline\"\n dark={isDark}\n />\n\n <FooterTrust dark={isDark} centered />\n\n <div className=\"store-footer__apps flex flex-col items-center gap-3\">\n <SallaAppsIcons\n apps={store.apps}\n appsTitle={t('blocks.footer.download_apps', 'Get our apps')}\n />\n </div>\n </div>\n );\n}\n\n/** Columns layout: brand (logo / description / social / trust) and app\n * buttons side by side, with the footer menu as its own labeled column. */\nfunction FooterColumnsBody({ inSheet, isDark }: { inSheet: boolean; isDark: boolean }) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n\n return (\n <div className=\"container grid grid-cols-1 gap-10 sm:grid-cols-2 lg:grid-cols-4 lg:gap-16\">\n <div className=\"store-footer__brand rtl:lg:pl-16 ltr:lg:pr-16 sm:col-span-2\">\n <FooterLogo className=\"mb-5\" />\n <FooterDescription className=\"max-w-sm leading-6 my-5\" />\n <SallaSocial className=\"block mb-6\" />\n <FooterTrust dark={isDark} centered={false} />\n </div>\n\n <FooterLinksMenu\n inSheet={inSheet}\n className=\"store-footer__menu store-footer__menu--stacked\"\n heading={t('blocks.footer.important_links', 'Important links')}\n dark={isDark}\n />\n\n <div className=\"store-footer__apps\">\n <SallaAppsIcons\n apps={store.apps}\n appsTitle={t('blocks.footer.download_apps', 'Get our apps')}\n />\n </div>\n </div>\n );\n}\n\nexport interface FooterProps {\n /**\n * Renders as a plain `<div>` (no second `<footer>` landmark) with the\n * `footer:start` / `footer:end` hook slots skipped -- for a theme that\n * repeats these widgets somewhere other than the page's own footer (a\n * mobile sheet, for example) rather than rendering the real page footer a\n * second time.\n */\n inSheet?: boolean;\n}\n\n/**\n * Storefront footer.\n *\n * Two layouts, chosen by the `footer_layout` theme setting:\n * - **columns** (default): logo / description / social / trust badges, the\n * footer menu (\"important links\"), and app-store buttons, side by side.\n * - **centered**: the same pieces stacked as one centered column, with the\n * footer menu laid out as an inline, pipe-separated row.\n *\n * Styling for the handful of pieces rendered by web components this owns no\n * markup for (`<salla-social>`'s `.social-link` icons, `<salla-menu>`'s\n * `.s-menu-footer-item` rows, `<salla-payments>`'s `.s-payments-list-item`\n * icons) is the consuming theme's own responsibility, the same way\n * `inSheet`'s own presentation is -- this component owns structure and data,\n * not every pixel.\n */\nexport function Footer({ inSheet = false }: FooterProps = {}) {\n const { store, theme } = useTwilight();\n const { t } = useTranslation();\n const year = new Date().getFullYear();\n const isCentered = theme.settings?.footer_layout === 'centered';\n const isDark = !!theme.settings?.footer_is_dark;\n\n const Root = inSheet ? 'div' : 'footer';\n\n return (\n <Root\n className={`store-footer store-footer--${isCentered ? 'centered' : 'columns'}${\n inSheet ? ' store-footer--sheet' : ''\n } relative mt-8 sm:mt-16 ${isDark ? 'bg-[#0E0F0F] text-white' : 'bg-[#F4F7F2] text-gray-600'}`}\n suppressHydrationWarning\n >\n {!inSheet && <HookSlot name=\"footer:start\" />}\n\n <div\n aria-label=\"footer\"\n className={`store-footer__inner border-b py-8 lg:py-16 ${\n isDark ? 'bg-[#1D1F1F] border-dashed border-white/10' : 'bg-transparent border-gray-200'\n }`}\n >\n {isCentered ? (\n <FooterCenteredBody inSheet={inSheet} isDark={isDark} />\n ) : (\n <FooterColumnsBody inSheet={inSheet} isDark={isDark} />\n )}\n </div>\n\n <div className=\"store-footer__bottom container md:flex items-center justify-between gap-4 py-4 lg:py-7 text-center\">\n <span className={`text-sm copyright-text ${isDark ? 'text-gray-400' : 'text-gray-700'}`}>\n <HookSlot\n name=\"copyright\"\n context={{ storeName: store.name }}\n fallback={\n <>\n {t('blocks.footer.copyright', 'All rights reserved')}{' '}\n <Link to=\"/\" className=\"transition-opacity hover:opacity-75 hover:text-primary\">\n {store.name}\n </Link>{' '}\n © {year}\n </>\n }\n />\n </span>\n\n <SallaPayments />\n </div>\n\n {!inSheet && <HookSlot name=\"footer:end\" />}\n </Root>\n );\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { LazyCartItem as CartItem, LazyCartSummary as CartSummary, LazySeoCartWidget as SeoCartWidget } from '../../chunk-
|
|
1
|
+
export { LazyCartItem as CartItem, LazyCartSummary as CartSummary, LazySeoCartWidget as SeoCartWidget } from '../../chunk-4EA56R6I.js';
|
|
2
2
|
import '../../chunk-DGUM43GV.js';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { BlogSkeleton, LazyBreadcrumb as Breadcrumb, BreadcrumbSkeleton, LazyCurrencySymbol as CurrencySymbol, CustomerLayoutSkeleton, CustomerPageSkeleton, DeferredData, LazyErrorPage as ErrorPage, Image, LazyNoContent as NoContent, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, LazyRenderWhenVisible as RenderWhenVisible, SkeletonPulse, resolveDeferred } from '../../chunk-
|
|
1
|
+
export { BlogSkeleton, LazyBreadcrumb as Breadcrumb, BreadcrumbSkeleton, LazyCurrencySymbol as CurrencySymbol, CustomerLayoutSkeleton, CustomerPageSkeleton, DeferredData, LazyErrorPage as ErrorPage, Image, LazyNoContent as NoContent, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, LazyRenderWhenVisible as RenderWhenVisible, SkeletonPulse, resolveDeferred } from '../../chunk-CCUE2FMU.js';
|
|
2
2
|
export { Link } from '../../chunk-AXW67SY7.js';
|
|
3
3
|
import '../../chunk-SKLEJJ6M.js';
|
|
4
4
|
import '../../chunk-BYMOPN2S.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { Drawer } from '../../chunk-6TKIUG5C.js';
|
|
2
|
-
import '../../chunk-
|
|
3
|
-
import '../../chunk-
|
|
4
|
-
import '../../chunk-
|
|
2
|
+
import '../../chunk-EFF2WO6W.js';
|
|
3
|
+
import '../../chunk-YFQUSAET.js';
|
|
4
|
+
import '../../chunk-3PWARKZX.js';
|
|
5
5
|
import '../../chunk-2JV6WZ6O.js';
|
|
6
6
|
import '../../chunk-22SH7OVF.js';
|
|
7
7
|
import '../../chunk-RV54D2D7.js';
|
|
@@ -31,7 +31,7 @@ import '../../chunk-TYNZ5B2B.js';
|
|
|
31
31
|
import '../../chunk-V2ZDTY6H.js';
|
|
32
32
|
import '../../chunk-5XDPAKF5.js';
|
|
33
33
|
import '../../chunk-GCPEMNSU.js';
|
|
34
|
-
import '../../chunk-
|
|
34
|
+
import '../../chunk-CCUE2FMU.js';
|
|
35
35
|
import '../../chunk-AXW67SY7.js';
|
|
36
36
|
import '../../chunk-SKLEJJ6M.js';
|
|
37
37
|
import '../../chunk-BYMOPN2S.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { BundleComponent, ComponentErrorBoundary, DefaultHomeComponents, FeaturedProductsStyle1, FeaturedProductsStyle2, FeaturedProductsStyle3, FixedBanner, FixedProducts, HomeComponentRenderer, PageBlocks, ParallaxBackground, PhotosSlider, ProductsSlider, ReorderProducts, SquarePhotos, StoreFeatures, LazyTestimonials as Testimonials, Youtube, registerHomeComponentConfig, registerHomeComponents, useReorderButtons } from '../../chunk-
|
|
1
|
+
export { BundleComponent, ComponentErrorBoundary, DefaultHomeComponents, FeaturedProductsStyle1, FeaturedProductsStyle2, FeaturedProductsStyle3, FixedBanner, FixedProducts, HomeComponentRenderer, PageBlocks, ParallaxBackground, PhotosSlider, ProductsSlider, ReorderProducts, SquarePhotos, StoreFeatures, LazyTestimonials as Testimonials, Youtube, registerHomeComponentConfig, registerHomeComponents, useReorderButtons } from '../../chunk-R54GSKJS.js';
|
|
2
2
|
import '../../chunk-FZYR4BA2.js';
|
|
3
|
-
import '../../chunk-
|
|
4
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-556OT3BN.js';
|
|
4
|
+
import '../../chunk-RRGEASAL.js';
|
|
5
5
|
import '../../chunk-Y32RHCOH.js';
|
|
6
|
-
import '../../chunk-
|
|
7
|
-
import '../../chunk-
|
|
8
|
-
import '../../chunk-
|
|
6
|
+
import '../../chunk-EFF2WO6W.js';
|
|
7
|
+
import '../../chunk-YFQUSAET.js';
|
|
8
|
+
import '../../chunk-3PWARKZX.js';
|
|
9
9
|
import '../../chunk-2JV6WZ6O.js';
|
|
10
10
|
import '../../chunk-22SH7OVF.js';
|
|
11
11
|
import '../../chunk-RV54D2D7.js';
|
|
@@ -35,7 +35,7 @@ import '../../chunk-TYNZ5B2B.js';
|
|
|
35
35
|
import '../../chunk-V2ZDTY6H.js';
|
|
36
36
|
import '../../chunk-5XDPAKF5.js';
|
|
37
37
|
import '../../chunk-GCPEMNSU.js';
|
|
38
|
-
import '../../chunk-
|
|
38
|
+
import '../../chunk-CCUE2FMU.js';
|
|
39
39
|
import '../../chunk-AXW67SY7.js';
|
|
40
40
|
import '../../chunk-SKLEJJ6M.js';
|
|
41
41
|
import '../../chunk-BYMOPN2S.js';
|
|
@@ -1,2 +1,28 @@
|
|
|
1
|
-
export
|
|
1
|
+
export interface FooterProps {
|
|
2
|
+
/**
|
|
3
|
+
* Renders as a plain `<div>` (no second `<footer>` landmark) with the
|
|
4
|
+
* `footer:start` / `footer:end` hook slots skipped -- for a theme that
|
|
5
|
+
* repeats these widgets somewhere other than the page's own footer (a
|
|
6
|
+
* mobile sheet, for example) rather than rendering the real page footer a
|
|
7
|
+
* second time.
|
|
8
|
+
*/
|
|
9
|
+
inSheet?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Storefront footer.
|
|
13
|
+
*
|
|
14
|
+
* Two layouts, chosen by the `footer_layout` theme setting:
|
|
15
|
+
* - **columns** (default): logo / description / social / trust badges, the
|
|
16
|
+
* footer menu ("important links"), and app-store buttons, side by side.
|
|
17
|
+
* - **centered**: the same pieces stacked as one centered column, with the
|
|
18
|
+
* footer menu laid out as an inline, pipe-separated row.
|
|
19
|
+
*
|
|
20
|
+
* Styling for the handful of pieces rendered by web components this owns no
|
|
21
|
+
* markup for (`<salla-social>`'s `.social-link` icons, `<salla-menu>`'s
|
|
22
|
+
* `.s-menu-footer-item` rows, `<salla-payments>`'s `.s-payments-list-item`
|
|
23
|
+
* icons) is the consuming theme's own responsibility, the same way
|
|
24
|
+
* `inSheet`'s own presentation is -- this component owns structure and data,
|
|
25
|
+
* not every pixel.
|
|
26
|
+
*/
|
|
27
|
+
export declare function Footer({ inSheet }?: FooterProps): import("react").JSX.Element;
|
|
2
28
|
//# sourceMappingURL=Footer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Footer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Footer.tsx"],"names":[],"mappings":"AAqQA,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,MAAM,CAAC,EAAE,OAAe,EAAE,GAAE,WAAgB,+BAsD3D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { LazyCopyright as Copyright, LazyCustomerLayout as CustomerLayout, LazyFooter as Footer, LazyHeader as Header, LazyMasterLayout as MasterLayout, LazyWidgetHead as WidgetHead } from '../../chunk-
|
|
1
|
+
export { LazyCopyright as Copyright, LazyCustomerLayout as CustomerLayout, LazyFooter as Footer, LazyHeader as Header, LazyMasterLayout as MasterLayout, LazyWidgetHead as WidgetHead } from '../../chunk-IC6XW3PD.js';
|
|
2
2
|
export { pushEqualHeightConfig } from '../../chunk-V2ZDTY6H.js';
|
|
3
3
|
import '../../chunk-5XDPAKF5.js';
|
|
4
4
|
import '../../chunk-GCPEMNSU.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { LazyAddToCartForm as AddToCartForm, ProductCard, LazyProductDetails as ProductDetails, ProductGallery } from '../../chunk-
|
|
1
|
+
export { LazyAddToCartForm as AddToCartForm, ProductCard, LazyProductDetails as ProductDetails, ProductGallery } from '../../chunk-RRGEASAL.js';
|
|
2
2
|
import '../../chunk-Y32RHCOH.js';
|
|
3
|
-
import '../../chunk-
|
|
4
|
-
import '../../chunk-
|
|
5
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-EFF2WO6W.js';
|
|
4
|
+
import '../../chunk-YFQUSAET.js';
|
|
5
|
+
import '../../chunk-3PWARKZX.js';
|
|
6
6
|
import '../../chunk-2JV6WZ6O.js';
|
|
7
7
|
import '../../chunk-22SH7OVF.js';
|
|
8
8
|
import '../../chunk-RV54D2D7.js';
|
|
@@ -32,7 +32,7 @@ import '../../chunk-TYNZ5B2B.js';
|
|
|
32
32
|
import '../../chunk-V2ZDTY6H.js';
|
|
33
33
|
import '../../chunk-5XDPAKF5.js';
|
|
34
34
|
import '../../chunk-GCPEMNSU.js';
|
|
35
|
-
import '../../chunk-
|
|
35
|
+
import '../../chunk-CCUE2FMU.js';
|
|
36
36
|
import '../../chunk-AXW67SY7.js';
|
|
37
37
|
import '../../chunk-SKLEJJ6M.js';
|
|
38
38
|
import '../../chunk-BYMOPN2S.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { StoreClosedNotification } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
3
|
-
import '../../chunk-
|
|
4
|
-
import '../../chunk-
|
|
1
|
+
export { StoreClosedNotification } from '../../chunk-WSRVPR7V.js';
|
|
2
|
+
import '../../chunk-EFF2WO6W.js';
|
|
3
|
+
import '../../chunk-YFQUSAET.js';
|
|
4
|
+
import '../../chunk-3PWARKZX.js';
|
|
5
5
|
import '../../chunk-2JV6WZ6O.js';
|
|
6
6
|
import '../../chunk-22SH7OVF.js';
|
|
7
7
|
import '../../chunk-RV54D2D7.js';
|
|
@@ -31,7 +31,7 @@ import '../../chunk-TYNZ5B2B.js';
|
|
|
31
31
|
import '../../chunk-V2ZDTY6H.js';
|
|
32
32
|
import '../../chunk-5XDPAKF5.js';
|
|
33
33
|
import '../../chunk-GCPEMNSU.js';
|
|
34
|
-
import '../../chunk-
|
|
34
|
+
import '../../chunk-CCUE2FMU.js';
|
|
35
35
|
import '../../chunk-AXW67SY7.js';
|
|
36
36
|
import '../../chunk-SKLEJJ6M.js';
|
|
37
37
|
import '../../chunk-BYMOPN2S.js';
|
|
@@ -49,7 +49,7 @@ import '../../chunk-DGUM43GV.js';
|
|
|
49
49
|
import { lazy } from 'react';
|
|
50
50
|
|
|
51
51
|
var LazyStoreClosedNotification = lazy(
|
|
52
|
-
() => import('../../StoreClosedNotification-
|
|
52
|
+
() => import('../../StoreClosedNotification-MINBJOGZ.js').then((m) => ({
|
|
53
53
|
default: m.StoreClosedNotification
|
|
54
54
|
}))
|
|
55
55
|
);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { RouteDocumentSync, TanStackDocumentSync, tanstackDocumentAdapter, useTanstackDocumentAttrs } from './chunk-
|
|
1
|
+
export { RouteDocumentSync, TanStackDocumentSync, tanstackDocumentAdapter, useTanstackDocumentAttrs } from './chunk-UNEZZMQA.js';
|
|
2
2
|
import './chunk-Z4Y55HWX.js';
|
|
3
3
|
import './chunk-3LXB4VFK.js';
|
|
4
4
|
import './chunk-MKVCFBVF.js';
|
|
5
5
|
import './chunk-BNI6SKFL.js';
|
|
6
6
|
import './chunk-OH2L4U2C.js';
|
|
7
|
-
import './chunk-
|
|
7
|
+
import './chunk-556OT3BN.js';
|
|
8
8
|
import './chunk-22SH7OVF.js';
|
|
9
9
|
import './chunk-RV54D2D7.js';
|
|
10
10
|
import './chunk-ZVZGLEZ6.js';
|
|
@@ -22,5 +22,5 @@ import './chunk-N2S25NXP.js';
|
|
|
22
22
|
import './chunk-T72DAX7R.js';
|
|
23
23
|
import './chunk-DF6FBKDN.js';
|
|
24
24
|
import './chunk-DGUM43GV.js';
|
|
25
|
-
//# sourceMappingURL=document-class-
|
|
26
|
-
//# sourceMappingURL=document-class-
|
|
25
|
+
//# sourceMappingURL=document-class-SD6BUMZN.js.map
|
|
26
|
+
//# sourceMappingURL=document-class-SD6BUMZN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"document-class-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"document-class-SD6BUMZN.js"}
|
package/dist/hooks/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { registerDefaultHooks, useBreadcrumbs, useDate, useGtm, useMoney, useNumber, useOpeningHours, usePageConfig, useStore } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { registerDefaultHooks, useBreadcrumbs, useDate, useGtm, useMoney, useNumber, useOpeningHours, usePageConfig, useStore } from '../chunk-EFF2WO6W.js';
|
|
2
|
+
import '../chunk-YFQUSAET.js';
|
|
3
|
+
import '../chunk-3PWARKZX.js';
|
|
4
4
|
import '../chunk-2JV6WZ6O.js';
|
|
5
5
|
import '../chunk-22SH7OVF.js';
|
|
6
6
|
import '../chunk-RV54D2D7.js';
|
|
@@ -30,7 +30,7 @@ import '../chunk-TYNZ5B2B.js';
|
|
|
30
30
|
import '../chunk-V2ZDTY6H.js';
|
|
31
31
|
export { HookSlot, useIsClient } from '../chunk-5XDPAKF5.js';
|
|
32
32
|
export { HookRegistry, defineHooks, hookRegistry } from '../chunk-GCPEMNSU.js';
|
|
33
|
-
import '../chunk-
|
|
33
|
+
import '../chunk-CCUE2FMU.js';
|
|
34
34
|
import '../chunk-AXW67SY7.js';
|
|
35
35
|
import '../chunk-SKLEJJ6M.js';
|
|
36
36
|
import '../chunk-BYMOPN2S.js';
|
package/dist/hooks/useGtm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { useGtm } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { useGtm } from '../chunk-EFF2WO6W.js';
|
|
2
|
+
import '../chunk-YFQUSAET.js';
|
|
3
|
+
import '../chunk-3PWARKZX.js';
|
|
4
4
|
import '../chunk-2JV6WZ6O.js';
|
|
5
5
|
import '../chunk-22SH7OVF.js';
|
|
6
6
|
import '../chunk-RV54D2D7.js';
|
|
@@ -30,7 +30,7 @@ import '../chunk-TYNZ5B2B.js';
|
|
|
30
30
|
import '../chunk-V2ZDTY6H.js';
|
|
31
31
|
import '../chunk-5XDPAKF5.js';
|
|
32
32
|
import '../chunk-GCPEMNSU.js';
|
|
33
|
-
import '../chunk-
|
|
33
|
+
import '../chunk-CCUE2FMU.js';
|
|
34
34
|
import '../chunk-AXW67SY7.js';
|
|
35
35
|
import '../chunk-SKLEJJ6M.js';
|
|
36
36
|
import '../chunk-BYMOPN2S.js';
|
package/dist/hooks/useMoney.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { useMoney } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { useMoney } from '../chunk-EFF2WO6W.js';
|
|
2
|
+
import '../chunk-YFQUSAET.js';
|
|
3
|
+
import '../chunk-3PWARKZX.js';
|
|
4
4
|
import '../chunk-2JV6WZ6O.js';
|
|
5
5
|
import '../chunk-22SH7OVF.js';
|
|
6
6
|
import '../chunk-RV54D2D7.js';
|
|
@@ -30,7 +30,7 @@ import '../chunk-TYNZ5B2B.js';
|
|
|
30
30
|
import '../chunk-V2ZDTY6H.js';
|
|
31
31
|
import '../chunk-5XDPAKF5.js';
|
|
32
32
|
import '../chunk-GCPEMNSU.js';
|
|
33
|
-
import '../chunk-
|
|
33
|
+
import '../chunk-CCUE2FMU.js';
|
|
34
34
|
import '../chunk-AXW67SY7.js';
|
|
35
35
|
import '../chunk-SKLEJJ6M.js';
|
|
36
36
|
import '../chunk-BYMOPN2S.js';
|
package/dist/hooks/useStore.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { useStore } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { useStore } from '../chunk-EFF2WO6W.js';
|
|
2
|
+
import '../chunk-YFQUSAET.js';
|
|
3
|
+
import '../chunk-3PWARKZX.js';
|
|
4
4
|
import '../chunk-2JV6WZ6O.js';
|
|
5
5
|
import '../chunk-22SH7OVF.js';
|
|
6
6
|
import '../chunk-RV54D2D7.js';
|
|
@@ -30,7 +30,7 @@ import '../chunk-TYNZ5B2B.js';
|
|
|
30
30
|
import '../chunk-V2ZDTY6H.js';
|
|
31
31
|
import '../chunk-5XDPAKF5.js';
|
|
32
32
|
import '../chunk-GCPEMNSU.js';
|
|
33
|
-
import '../chunk-
|
|
33
|
+
import '../chunk-CCUE2FMU.js';
|
|
34
34
|
import '../chunk-AXW67SY7.js';
|
|
35
35
|
import '../chunk-SKLEJJ6M.js';
|
|
36
36
|
import '../chunk-BYMOPN2S.js';
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { registry } from './chunk-Y32RHCOH.js';
|
|
2
2
|
export { ComponentRegistry, registry } from './chunk-Y32RHCOH.js';
|
|
3
|
-
export { TwilightProvider } from './chunk-
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
3
|
+
export { TwilightProvider } from './chunk-EFF2WO6W.js';
|
|
4
|
+
import './chunk-YFQUSAET.js';
|
|
5
|
+
import './chunk-3PWARKZX.js';
|
|
6
6
|
import './chunk-2JV6WZ6O.js';
|
|
7
7
|
import './chunk-22SH7OVF.js';
|
|
8
8
|
import './chunk-RV54D2D7.js';
|
|
@@ -32,7 +32,7 @@ import './chunk-TYNZ5B2B.js';
|
|
|
32
32
|
import './chunk-V2ZDTY6H.js';
|
|
33
33
|
import './chunk-5XDPAKF5.js';
|
|
34
34
|
import './chunk-GCPEMNSU.js';
|
|
35
|
-
import './chunk-
|
|
35
|
+
import './chunk-CCUE2FMU.js';
|
|
36
36
|
import './chunk-AXW67SY7.js';
|
|
37
37
|
import './chunk-SKLEJJ6M.js';
|
|
38
38
|
import './chunk-BYMOPN2S.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { product } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-
|
|
1
|
+
import { product } from './chunk-556OT3BN.js';
|
|
2
|
+
import './chunk-EFF2WO6W.js';
|
|
3
|
+
import './chunk-YFQUSAET.js';
|
|
4
|
+
import './chunk-3PWARKZX.js';
|
|
5
5
|
import './chunk-2JV6WZ6O.js';
|
|
6
6
|
import './chunk-22SH7OVF.js';
|
|
7
7
|
import './chunk-RV54D2D7.js';
|
|
@@ -31,7 +31,7 @@ import { useTranslation } from './chunk-TYNZ5B2B.js';
|
|
|
31
31
|
import './chunk-V2ZDTY6H.js';
|
|
32
32
|
import { HookSlot } from './chunk-5XDPAKF5.js';
|
|
33
33
|
import './chunk-GCPEMNSU.js';
|
|
34
|
-
import { LazyErrorPage } from './chunk-
|
|
34
|
+
import { LazyErrorPage } from './chunk-CCUE2FMU.js';
|
|
35
35
|
import './chunk-AXW67SY7.js';
|
|
36
36
|
import './chunk-SKLEJJ6M.js';
|
|
37
37
|
import './chunk-BYMOPN2S.js';
|
|
@@ -147,5 +147,5 @@ function NotFoundPage(props = {}) {
|
|
|
147
147
|
}
|
|
148
148
|
|
|
149
149
|
export { NotFoundPage };
|
|
150
|
-
//# sourceMappingURL=not-found-
|
|
151
|
-
//# sourceMappingURL=not-found-
|
|
150
|
+
//# sourceMappingURL=not-found-TUU7WQLL.js.map
|
|
151
|
+
//# sourceMappingURL=not-found-TUU7WQLL.js.map
|