efficient-storefront-blocks 0.70.0 → 0.74.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/dist/chunks/EditorPreviewCheckout-YQ3F5MSG.js +4 -0
- package/dist/chunks/{SiteEditorProvider-3GKJZDL5.js → SiteEditorProvider-Z33JB5BA.js} +1 -1
- package/dist/chunks/chunk-5OFEWRWI.js +1 -0
- package/dist/chunks/{chunk-TXTTPEQA.js → chunk-BZDVZUF4.js} +1 -1
- package/dist/chunks/{chunk-QWHNN7GF.js → chunk-QJDTP7K6.js} +1 -1
- package/dist/chunks/chunk-UGXNUQRA.js +246 -0
- package/dist/chunks/chunk-UJW4B64R.js +1 -0
- package/dist/chunks/{fitment-data-6GK7QQQI.js → fitment-data-DHKRLKNI.js} +1 -1
- package/dist/contract.js +2 -2
- package/dist/editor/components/CategorySource.js +1 -1
- package/dist/editor/components/HeaderSettingsPanel.js +1 -1
- package/dist/editor/components/PreviewHeader.d.ts +0 -1
- package/dist/editor/components/PreviewHeader.js +1 -11
- package/dist/editor/lib/document/blocks/service/ContactCards/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/service/ContactCards/fields.js +1 -0
- package/dist/editor/lib/document/blocks/service/ContactRouting/fields.js +1 -1
- package/dist/editor/lib/document/blocks/service/FooterMessaging/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/service/FooterMessaging/fields.js +1 -0
- package/dist/editor/lib/document/blocks/service/FooterPayment/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/service/FooterPayment/fields.js +1 -0
- package/dist/editor/lib/document/blocks/service/MessagingCards/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/service/MessagingCards/fields.js +1 -0
- package/dist/editor/lib/document/blocks/service/Reviews/fields.js +1 -1
- package/dist/editor/lib/document/blocks/service/index.d.ts +1 -1
- package/dist/editor/lib/document/blocks/service/index.js +1 -1
- package/dist/editor/lib/document/config.d.ts +2 -0
- package/dist/editor/lib/document/config.js +1 -1
- package/dist/editor/lib/efficient-block-sources.js +1 -1
- package/dist/editor/lib/header-settings-source.d.ts +2 -1
- package/dist/editor/lib/header-settings-source.js +1 -1
- package/dist/editor/lib/storefront-editor-words.d.ts +17 -2
- package/dist/editor/lib/storefront-editor-words.js +1 -1
- package/dist/editor.css +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +97 -200
- package/dist/links.d.ts +0 -2
- package/dist/links.js +1 -1
- package/dist/render/built-with.json +1 -1
- package/dist/render/components/ChatLauncher.js +1 -1
- package/dist/render/components/ContactCards.d.ts +13 -0
- package/dist/render/components/ContactCards.js +1 -0
- package/dist/render/components/CopyText.d.ts +4 -0
- package/dist/render/components/CopyText.js +1 -0
- package/dist/render/components/Events.d.ts +3 -0
- package/dist/render/components/Events.js +1 -1
- package/dist/render/components/FooterMessaging.d.ts +5 -0
- package/dist/render/components/FooterMessaging.js +1 -0
- package/dist/render/components/FooterPayment.d.ts +11 -0
- package/dist/render/components/FooterPayment.js +1 -0
- package/dist/render/components/GalleryItem.js +1 -1
- package/dist/render/components/GalleryShowcase.js +1 -1
- package/dist/render/components/Header.d.ts +2 -1
- package/dist/render/components/Header.js +1 -1
- package/dist/render/components/HeaderCallButton.d.ts +9 -0
- package/dist/render/components/HeaderCallButton.js +1 -0
- package/dist/render/components/MessagingCards.d.ts +9 -0
- package/dist/render/components/MessagingCards.js +1 -0
- package/dist/render/components/QrCode.d.ts +5 -0
- package/dist/render/components/QrCode.js +1 -0
- package/dist/render/components/Reviews.d.ts +14 -4
- package/dist/render/components/Reviews.js +1 -1
- package/dist/render/components/checkout/CheckoutPageClient.d.ts +2 -25
- package/dist/render/components/checkout/CheckoutPageClient.js +1 -3
- package/dist/render/components/checkout/checkout-parts.d.ts +5 -0
- package/dist/render/components/checkout/checkout-parts.js +1 -0
- package/dist/render/components/checkout/checkout-state.d.ts +169 -0
- package/dist/render/components/checkout/checkout-state.js +3 -0
- package/dist/render/lib/api/index.d.ts +1 -0
- package/dist/render/lib/api/types.d.ts +3 -0
- package/dist/render/lib/document/blocks/service/ContactCards/meta.d.ts +7 -0
- package/dist/render/lib/document/blocks/service/ContactCards/meta.js +1 -0
- package/dist/render/lib/document/blocks/service/ContactCards/render.d.ts +4 -0
- package/dist/render/lib/document/blocks/service/ContactCards/render.js +1 -0
- package/dist/render/lib/document/blocks/service/Events/render.js +1 -1
- package/dist/render/lib/document/blocks/service/Footer/meta.js +1 -1
- package/dist/render/lib/document/blocks/service/FooterGroup/meta.js +1 -1
- package/dist/render/lib/document/blocks/service/FooterMessaging/meta.d.ts +2 -0
- package/dist/render/lib/document/blocks/service/FooterMessaging/meta.js +1 -0
- package/dist/render/lib/document/blocks/service/FooterMessaging/render.d.ts +2 -0
- package/dist/render/lib/document/blocks/service/FooterMessaging/render.js +1 -0
- package/dist/render/lib/document/blocks/service/FooterPayment/meta.d.ts +3 -0
- package/dist/render/lib/document/blocks/service/FooterPayment/meta.js +1 -0
- package/dist/render/lib/document/blocks/service/FooterPayment/render.d.ts +2 -0
- package/dist/render/lib/document/blocks/service/FooterPayment/render.js +1 -0
- package/dist/render/lib/document/blocks/service/MessagingCards/meta.d.ts +2 -0
- package/dist/render/lib/document/blocks/service/MessagingCards/meta.js +1 -0
- package/dist/render/lib/document/blocks/service/MessagingCards/render.d.ts +4 -0
- package/dist/render/lib/document/blocks/service/MessagingCards/render.js +1 -0
- package/dist/render/lib/document/blocks/service/Reviews/meta.d.ts +6 -0
- package/dist/render/lib/document/blocks/service/Reviews/meta.js +1 -1
- package/dist/render/lib/document/blocks/service/Reviews/render.js +1 -1
- package/dist/render/lib/document/blocks/service/metas.d.ts +4 -0
- package/dist/render/lib/document/blocks/service/metas.js +1 -1
- package/dist/render/lib/document/blocks/service/renders.d.ts +4 -0
- package/dist/render/lib/document/blocks/service/renders.js +1 -1
- package/dist/render/lib/document/blocks/text-part-shapes.json +137 -6
- package/dist/render/lib/document/card-templates.d.ts +2 -0
- package/dist/render/lib/document/card-templates.js +1 -0
- package/dist/render/lib/document/footer-page-blocks.d.ts +1 -0
- package/dist/render/lib/document/footer-page-blocks.js +1 -1
- package/dist/render/lib/document/lazy-draws.js +1 -1
- package/dist/render/lib/document/render-config.d.ts +2 -0
- package/dist/render/lib/document/render-config.js +1 -1
- package/dist/render/lib/document/section-to-box-rows-reviews.d.ts +1 -0
- package/dist/render/lib/document/section-to-box-rows-reviews.js +1 -0
- package/dist/render/lib/links/link-rules.d.ts +1 -1
- package/dist/render/lib/links/link-rules.js +1 -1
- package/dist/render/lib/qr.d.ts +5 -0
- package/dist/render/lib/qr.js +1 -0
- package/dist/render/lib/sections/messaging.d.ts +45 -0
- package/dist/render/lib/sections/messaging.js +1 -0
- package/dist/render/lib/sections/reviews.d.ts +1 -0
- package/dist/render/lib/sections/reviews.js +1 -0
- package/dist/render/lib/wheels/catalog-default-layout.js +1 -1
- package/dist/render/lib/wheels/collections.js +1 -1
- package/dist/words.d.ts +40 -7
- package/dist/words.js +4 -4
- package/package.json +4 -4
- package/dist/chunks/EditorPreviewCheckout-XI4VULPL.js +0 -4
- package/dist/chunks/chunk-RPLNV3WM.js +0 -1
- package/dist/chunks/chunk-SQH6XBRG.js +0 -1
- package/dist/chunks/chunk-XF2ZAVNU.js +0 -262
- package/dist/render/components/useStorefrontReviews.d.ts +0 -2
- package/dist/render/components/useStorefrontReviews.js +0 -1
- /package/dist/chunks/{chunk-XF2ZAVNU.js.LEGAL.txt → chunk-UGXNUQRA.js.LEGAL.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as s}from"react/jsx-runtime";import f from"../../../../../components/Reviews.js";import{CardTemplateRows as y}from"efficient-web-builder/render/components/CardRowContext";import{cardRow as h}from"efficient-web-builder/format/lib/content/card-template";import{declaredBlockSource as p,sourcedRows as b}from"efficient-web-builder/format/lib/content/block-sources";import{parseSectionHeadPlacement as R}from"efficient-web-builder/format/lib/sections/section-head-placement";import{parseSectionEyebrowLook as g}from"efficient-web-builder/format/lib/sections/section-eyebrow-look";import{phHide as c}from"efficient-web-builder/render/lib/document/blocks/scaffold";import{say as i}from"efficient-web-builder/format/lib/editor-words";import{ReviewsMeta as k,REVIEWS_PH as d}from"./meta.js";const w=()=>[{key:"sample-review-1",name:i("Sample reviewer"),rating:"5",title:i("Sample review title"),quote:i("Approved customer reviews appear here automatically — this card is only a preview of the section's shape.")},{key:"sample-review-2",name:i("Sample reviewer"),rating:"4",title:"",quote:i("Reviews are collected by the Review Form section and wait for your approval before they show.")},{key:"sample-review-3",name:i("Sample reviewer"),rating:"5",title:i("Another sample"),quote:i("Set a product design code on this section to show one product's reviews; leave it blank for the whole store.")}],S=(e,o)=>{const a=Number.parseFloat(e.rating??"");return{key:e.key||`review-${o}`,quote:e.quote??"",title:e.title??"",name:e.name??"",meta:e.dateLabel||e.role||"",...Number.isFinite(a)?{rating:a}:{}}},q=e=>(Array.isArray(e)?e:[]).map(h).filter(o=>(o.quote??"").trim()),I={...k,render:e=>{const o=R(e.headPlacement)==="own-box",a=t=>o?void 0:t,m=!!e.editor?.isEditing;let r,l=!1;if(p(e)!==""){const t=b(e,m,w()),u=typeof e.limit=="number"&&e.limit>0?e.limit:6;r=t.sample?t.rows:t.rows.slice(0,u),l=t.sample}else r=q(e.items),!r.length&&m&&(r=w(),l=!0);const v=r.map(S),n=t=>s(f,{look:g(e.eyebrowLook,"Reviews"),eyebrow:a(c(e.eyebrow,d.eyebrow,e.editor)),title:a(c(e.title,d.title,e.editor)),omitHead:o,columns:e.columns,rows:v,sample:l,editing:m,cards:t});return s(y,{ownerId:String(e.id??""),ownerType:"Reviews",Template:e.template,rows:r,fallback:n(),children:t=>n(t)})}};export{I as ReviewsRender};
|
|
@@ -11,11 +11,15 @@ export declare const SERVICE_METAS: {
|
|
|
11
11
|
FooterLogo: Omit<BlockRender, "render">;
|
|
12
12
|
FooterMenu: Omit<BlockRender, "render">;
|
|
13
13
|
FooterSocial: Omit<BlockRender, "render">;
|
|
14
|
+
FooterPayment: Omit<BlockRender, "render">;
|
|
14
15
|
FooterText: Omit<BlockRender, "render">;
|
|
15
16
|
Form: Omit<BlockRender, "render">;
|
|
16
17
|
LegalLineBlock: Omit<BlockRender, "render">;
|
|
17
18
|
OpeningHours: Omit<BlockRender, "render">;
|
|
18
19
|
RateTable: Omit<BlockRender, "render">;
|
|
20
|
+
MessagingCards: Omit<BlockRender, "render">;
|
|
21
|
+
FooterMessaging: Omit<BlockRender, "render">;
|
|
22
|
+
ContactCards: Omit<BlockRender, "render">;
|
|
19
23
|
RatingBlock: Omit<BlockRender, "render">;
|
|
20
24
|
ReviewForm: Omit<BlockRender, "render">;
|
|
21
25
|
Reviews: Omit<BlockRender, "render">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SITE_FOOTER_TYPE as o,SITE_HEADER_TYPE as t}from"efficient-web-builder/format/lib/document/section-groups";import{AppointmentBookingMeta as r}from"./AppointmentBooking/meta.js";import{BookingBoxMeta as e}from"./BookingBox/meta.js";import{ContactRoutingMeta as i}from"./ContactRouting/meta.js";import{EventsMeta as m}from"./Events/meta.js";import{FooterDividerMeta as a}from"./FooterDivider/meta.js";import{FooterEmailSignupMeta as p}from"./FooterEmailSignup/meta.js";import{FooterGroupMeta as M}from"./FooterGroup/meta.js";import{FooterLogoMeta as n}from"./FooterLogo/meta.js";import{FooterMenuMeta as f}from"./FooterMenu/meta.js";import{FooterMeta as
|
|
1
|
+
import{SITE_FOOTER_TYPE as o,SITE_HEADER_TYPE as t}from"efficient-web-builder/format/lib/document/section-groups";import{AppointmentBookingMeta as r}from"./AppointmentBooking/meta.js";import{BookingBoxMeta as e}from"./BookingBox/meta.js";import{ContactRoutingMeta as i}from"./ContactRouting/meta.js";import{EventsMeta as m}from"./Events/meta.js";import{FooterDividerMeta as a}from"./FooterDivider/meta.js";import{FooterEmailSignupMeta as p}from"./FooterEmailSignup/meta.js";import{FooterGroupMeta as M}from"./FooterGroup/meta.js";import{FooterLogoMeta as n}from"./FooterLogo/meta.js";import{FooterMenuMeta as f}from"./FooterMenu/meta.js";import{FooterMeta as g}from"./Footer/meta.js";import{FooterSocialMeta as F}from"./FooterSocial/meta.js";import{FooterPaymentMeta as s}from"./FooterPayment/meta.js";import{FooterTextMeta as u}from"./FooterText/meta.js";import{FormMeta as S}from"./Form/meta.js";import{LegalLineBlockMeta as l}from"./LegalLineBlock/meta.js";import{OpeningHoursMeta as B}from"./OpeningHours/meta.js";import{RateTableMeta as c}from"./RateTable/meta.js";import{MessagingCardsMeta as b}from"./MessagingCards/meta.js";import{FooterMessagingMeta as E}from"./FooterMessaging/meta.js";import{ContactCardsMeta as R}from"./ContactCards/meta.js";import{RatingBlockMeta as T}from"./RatingBlock/meta.js";import{ReviewFormMeta as d}from"./ReviewForm/meta.js";import{ReviewsMeta as C}from"./Reviews/meta.js";import{SiteFooterMeta as k}from"./SiteFooter/meta.js";import{SiteHeaderMeta as v}from"./SiteHeader/meta.js";import{SubmitBoxMeta as x}from"./SubmitBox/meta.js";import{SubmitBuildMeta as L}from"./SubmitBuild/meta.js";import{SubscribeBlogsMeta as _}from"./SubscribeBlogs/meta.js";import{SubscribeMeta as w}from"./Subscribe/meta.js";const po={AppointmentBooking:r,BookingBox:e,ContactRouting:i,Events:m,Footer:g,FooterDivider:a,FooterEmailSignup:p,FooterGroup:M,FooterLogo:n,FooterMenu:f,FooterSocial:F,FooterPayment:s,FooterText:u,Form:S,LegalLineBlock:l,OpeningHours:B,RateTable:c,MessagingCards:b,FooterMessaging:E,ContactCards:R,RatingBlock:T,ReviewForm:d,Reviews:C,[o]:k,[t]:v,SubmitBox:x,SubmitBuild:L,Subscribe:w,SubscribeBlogs:_};export{po as SERVICE_METAS};
|
|
@@ -11,11 +11,15 @@ export declare const SERVICE_RENDERS: {
|
|
|
11
11
|
FooterLogo: BlockRender;
|
|
12
12
|
FooterMenu: BlockRender;
|
|
13
13
|
FooterSocial: BlockRender;
|
|
14
|
+
FooterPayment: BlockRender;
|
|
14
15
|
FooterText: BlockRender;
|
|
15
16
|
Form: BlockRender;
|
|
16
17
|
LegalLineBlock: BlockRender;
|
|
17
18
|
OpeningHours: BlockRender;
|
|
18
19
|
RateTable: BlockRender;
|
|
20
|
+
MessagingCards: BlockRender;
|
|
21
|
+
FooterMessaging: BlockRender;
|
|
22
|
+
ContactCards: BlockRender;
|
|
19
23
|
RatingBlock: BlockRender;
|
|
20
24
|
ReviewForm: BlockRender;
|
|
21
25
|
Reviews: BlockRender;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SITE_FOOTER_TYPE as o,SITE_HEADER_TYPE as r}from"efficient-web-builder/format/lib/document/section-groups";import{AppointmentBookingRender as e}from"./AppointmentBooking/render.js";import{BookingBoxRender as t}from"./BookingBox/render.js";import{ContactRoutingRender as i}from"./ContactRouting/render.js";import{EventsRender as m}from"./Events/render.js";import{FooterRender as n}from"./Footer/render.js";import{FooterDividerRender as R}from"./FooterDivider/render.js";import{FooterEmailSignupRender as p}from"./FooterEmailSignup/render.js";import{FooterGroupRender as d}from"./FooterGroup/render.js";import{FooterLogoRender as f}from"./FooterLogo/render.js";import{FooterMenuRender as
|
|
1
|
+
import{SITE_FOOTER_TYPE as o,SITE_HEADER_TYPE as r}from"efficient-web-builder/format/lib/document/section-groups";import{AppointmentBookingRender as e}from"./AppointmentBooking/render.js";import{BookingBoxRender as t}from"./BookingBox/render.js";import{ContactRoutingRender as i}from"./ContactRouting/render.js";import{EventsRender as m}from"./Events/render.js";import{FooterRender as n}from"./Footer/render.js";import{FooterDividerRender as R}from"./FooterDivider/render.js";import{FooterEmailSignupRender as p}from"./FooterEmailSignup/render.js";import{FooterGroupRender as d}from"./FooterGroup/render.js";import{FooterLogoRender as f}from"./FooterLogo/render.js";import{FooterMenuRender as a}from"./FooterMenu/render.js";import{FooterSocialRender as g}from"./FooterSocial/render.js";import{FooterPaymentRender as F}from"./FooterPayment/render.js";import{FooterTextRender as s}from"./FooterText/render.js";import{FormRender as u}from"./Form/render.js";import{LegalLineBlockRender as S}from"./LegalLineBlock/render.js";import{OpeningHoursRender as l}from"./OpeningHours/render.js";import{RateTableRender as B}from"./RateTable/render.js";import{MessagingCardsRender as c}from"./MessagingCards/render.js";import{FooterMessagingRender as E}from"./FooterMessaging/render.js";import{ContactCardsRender as b}from"./ContactCards/render.js";import{RatingBlockRender as C}from"./RatingBlock/render.js";import{ReviewFormRender as T}from"./ReviewForm/render.js";import{ReviewsRender as k}from"./Reviews/render.js";import{SiteFooterRender as v}from"./SiteFooter/render.js";import{SiteHeaderRender as x}from"./SiteHeader/render.js";import{SubmitBoxRender as L}from"./SubmitBox/render.js";import{SubmitBuildRender as M}from"./SubmitBuild/render.js";import{SubscribeRender as _}from"./Subscribe/render.js";import{SubscribeBlogsRender as w}from"./SubscribeBlogs/render.js";const Ro={AppointmentBooking:e,BookingBox:t,ContactRouting:i,Events:m,Footer:n,FooterDivider:R,FooterEmailSignup:p,FooterGroup:d,FooterLogo:f,FooterMenu:a,FooterSocial:g,FooterPayment:F,FooterText:s,Form:u,LegalLineBlock:S,OpeningHours:l,RateTable:B,MessagingCards:c,FooterMessaging:E,ContactCards:b,RatingBlock:C,ReviewForm:T,Reviews:k,[o]:v,[r]:x,SubmitBox:L,SubmitBuild:M,Subscribe:_,SubscribeBlogs:w};export{Ro as SERVICE_RENDERS};
|
|
@@ -1233,6 +1233,29 @@
|
|
|
1233
1233
|
}
|
|
1234
1234
|
}
|
|
1235
1235
|
},
|
|
1236
|
+
"FooterPayment": {
|
|
1237
|
+
"lead": {
|
|
1238
|
+
"type": "custom",
|
|
1239
|
+
"__text": {
|
|
1240
|
+
"control": "text",
|
|
1241
|
+
"label": "Lead",
|
|
1242
|
+
"placeholder": "We accept"
|
|
1243
|
+
}
|
|
1244
|
+
},
|
|
1245
|
+
"methods": {
|
|
1246
|
+
"type": "array",
|
|
1247
|
+
"label": "Payment methods",
|
|
1248
|
+
"arrayFields": {
|
|
1249
|
+
"label": {
|
|
1250
|
+
"type": "custom",
|
|
1251
|
+
"__text": {
|
|
1252
|
+
"control": "copyText",
|
|
1253
|
+
"label": "Name"
|
|
1254
|
+
}
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
}
|
|
1258
|
+
},
|
|
1236
1259
|
"FooterText": {
|
|
1237
1260
|
"text": {
|
|
1238
1261
|
"type": "custom",
|
|
@@ -1311,6 +1334,74 @@
|
|
|
1311
1334
|
}
|
|
1312
1335
|
}
|
|
1313
1336
|
},
|
|
1337
|
+
"MessagingCards": {
|
|
1338
|
+
"title": {
|
|
1339
|
+
"type": "custom",
|
|
1340
|
+
"__text": {
|
|
1341
|
+
"control": "textarea",
|
|
1342
|
+
"label": "Heading",
|
|
1343
|
+
"placeholder": "Message us"
|
|
1344
|
+
}
|
|
1345
|
+
},
|
|
1346
|
+
"description": {
|
|
1347
|
+
"type": "custom",
|
|
1348
|
+
"__text": {
|
|
1349
|
+
"control": "textarea",
|
|
1350
|
+
"label": "Body",
|
|
1351
|
+
"placeholder": ""
|
|
1352
|
+
}
|
|
1353
|
+
}
|
|
1354
|
+
},
|
|
1355
|
+
"FooterMessaging": {
|
|
1356
|
+
"heading": {
|
|
1357
|
+
"type": "custom",
|
|
1358
|
+
"__text": {
|
|
1359
|
+
"control": "text",
|
|
1360
|
+
"label": "Heading",
|
|
1361
|
+
"placeholder": "Message us"
|
|
1362
|
+
}
|
|
1363
|
+
}
|
|
1364
|
+
},
|
|
1365
|
+
"ContactCards": {
|
|
1366
|
+
"title": {
|
|
1367
|
+
"type": "custom",
|
|
1368
|
+
"__text": {
|
|
1369
|
+
"control": "textarea",
|
|
1370
|
+
"label": "Heading",
|
|
1371
|
+
"placeholder": "Who to ask"
|
|
1372
|
+
}
|
|
1373
|
+
},
|
|
1374
|
+
"description": {
|
|
1375
|
+
"type": "custom",
|
|
1376
|
+
"__text": {
|
|
1377
|
+
"control": "textarea",
|
|
1378
|
+
"label": "Body",
|
|
1379
|
+
"placeholder": ""
|
|
1380
|
+
}
|
|
1381
|
+
},
|
|
1382
|
+
"contacts": {
|
|
1383
|
+
"type": "array",
|
|
1384
|
+
"label": "Contacts",
|
|
1385
|
+
"arrayFields": {
|
|
1386
|
+
"name": {
|
|
1387
|
+
"type": "custom",
|
|
1388
|
+
"__text": {
|
|
1389
|
+
"control": "copyText",
|
|
1390
|
+
"label": "Name",
|
|
1391
|
+
"placeholder": "Who to ask for"
|
|
1392
|
+
}
|
|
1393
|
+
},
|
|
1394
|
+
"value": {
|
|
1395
|
+
"type": "custom",
|
|
1396
|
+
"__text": {
|
|
1397
|
+
"control": "copyText",
|
|
1398
|
+
"label": "Number or ID",
|
|
1399
|
+
"placeholder": "A number, @name or an ID"
|
|
1400
|
+
}
|
|
1401
|
+
}
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
},
|
|
1314
1405
|
"ReviewForm": {
|
|
1315
1406
|
"eyebrow": {
|
|
1316
1407
|
"type": "custom",
|
|
@@ -1354,12 +1445,52 @@
|
|
|
1354
1445
|
"placeholder": "From our *customers.*"
|
|
1355
1446
|
}
|
|
1356
1447
|
},
|
|
1357
|
-
"
|
|
1358
|
-
"type": "
|
|
1359
|
-
"
|
|
1360
|
-
|
|
1361
|
-
"
|
|
1362
|
-
|
|
1448
|
+
"items": {
|
|
1449
|
+
"type": "array",
|
|
1450
|
+
"label": "Typed reviews",
|
|
1451
|
+
"arrayFields": {
|
|
1452
|
+
"quote": {
|
|
1453
|
+
"type": "custom",
|
|
1454
|
+
"__text": {
|
|
1455
|
+
"control": "plainTextarea",
|
|
1456
|
+
"label": "Quote"
|
|
1457
|
+
}
|
|
1458
|
+
},
|
|
1459
|
+
"title": {
|
|
1460
|
+
"type": "custom",
|
|
1461
|
+
"__text": {
|
|
1462
|
+
"control": "plainText",
|
|
1463
|
+
"label": "Title"
|
|
1464
|
+
}
|
|
1465
|
+
},
|
|
1466
|
+
"name": {
|
|
1467
|
+
"type": "custom",
|
|
1468
|
+
"__text": {
|
|
1469
|
+
"control": "plainText",
|
|
1470
|
+
"label": "Name"
|
|
1471
|
+
}
|
|
1472
|
+
},
|
|
1473
|
+
"role": {
|
|
1474
|
+
"type": "custom",
|
|
1475
|
+
"__text": {
|
|
1476
|
+
"control": "plainText",
|
|
1477
|
+
"label": "Role · location"
|
|
1478
|
+
}
|
|
1479
|
+
}
|
|
1480
|
+
}
|
|
1481
|
+
},
|
|
1482
|
+
"dataSourceOptions": {
|
|
1483
|
+
"type": "object",
|
|
1484
|
+
"label": "Product",
|
|
1485
|
+
"objectFields": {
|
|
1486
|
+
"designCode": {
|
|
1487
|
+
"type": "custom",
|
|
1488
|
+
"__text": {
|
|
1489
|
+
"control": "plainText",
|
|
1490
|
+
"label": "Design code",
|
|
1491
|
+
"placeholder": "e.g. D00123 · blank = the whole store"
|
|
1492
|
+
}
|
|
1493
|
+
}
|
|
1363
1494
|
}
|
|
1364
1495
|
}
|
|
1365
1496
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{registerCardTemplates as e}from"efficient-web-builder/format/lib/content/card-template";const l=[{block:"Reviews",fields:[{key:"quote",label:"Quote"},{key:"title",label:"Title"},{key:"name",label:"Name"},{key:"role",label:"Role · location"},{key:"rating",label:"Rating"},{key:"dateLabel",label:"Date"}]}];e(l);export{l as STOREFRONT_CARD_TEMPLATES};
|
|
@@ -2,6 +2,7 @@ export declare const PAGE_BLOCKS_FROM_FOOTER: {
|
|
|
2
2
|
readonly MenuBlock: "FooterMenu";
|
|
3
3
|
readonly EmailFormBlock: "FooterEmailSignup";
|
|
4
4
|
readonly SocialLogosBlock: "FooterSocial";
|
|
5
|
+
readonly PaymentLogosBlock: "FooterPayment";
|
|
5
6
|
};
|
|
6
7
|
export declare const PAGE_MENU_DIRECTION_DEFAULT = "column";
|
|
7
8
|
export declare function addPageBlocksFromFooter(components: Record<string, object>): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as a}from"react/jsx-runtime";import u from"../../components/FooterMenu.js";const d={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial",PaymentLogosBlock:"FooterPayment"},s="column";function m({menu:o,heading:e,accordionMobile:n,showDividers:r,direction:t,linkAlign:i,linkRange:l,editor:c}){return a(u,{menu:o,heading:e||void 0,accordionMobile:n,showDividers:r,layout:t==="row"?"row":"column",linkAlign:i,linkRange:l,editing:c?.isEditing})}function f(o){for(const[n,r]of Object.entries(d))o[n]={...o[r]};const e=o.MenuBlock;e.defaultProps={...e.defaultProps,direction:s},e.render=m}export{d as PAGE_BLOCKS_FROM_FOOTER,s as PAGE_MENU_DIRECTION_DEFAULT,f as addPageBlocksFromFooter};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as i}from"react/jsx-runtime";import t from"next/dynamic";import{SITE_FOOTER_TYPE as d,SITE_HEADER_TYPE as m}from"efficient-web-builder/format/lib/document/section-groups";function r(e){return function(o){return e.render(o)}}const p={Banner:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Banner/render").then(e=>r(e.BannerRender))),Breadcrumb:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Breadcrumb/render").then(e=>r(e.BreadcrumbRender))),ButtonBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ButtonBlock/render").then(e=>r(e.ButtonBlockRender))),Cards:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Cards/render").then(e=>r(e.CardsRender))),CategoryBar:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/CategoryBar/render").then(e=>r(e.CategoryBarRender))),Chart:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Chart/render").then(e=>r(e.ChartRender))),ContactLocations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ContactLocations/render").then(e=>r(e.ContactLocationsRender))),CustomHTML:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/CustomHTML/render").then(e=>r(e.CustomHTMLRender))),Divider:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Divider/render").then(e=>r(e.DividerRender))),DocBody:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocBody/render").then(e=>r(e.DocBodyRender))),DocMasthead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocMasthead/render").then(e=>r(e.DocMastheadRender))),DocMetaCards:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocMetaCards/render").then(e=>r(e.DocMetaCardsRender))),DocTabs:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocTabs/render").then(e=>r(e.DocTabsRender))),Eyebrow:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Eyebrow/render").then(e=>r(e.EyebrowRender))),FAQ:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/FAQ/render").then(e=>r(e.FAQRender))),FeaturedCover:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/FeaturedCover/render").then(e=>r(e.FeaturedCoverRender))),Flex:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Flex/render").then(e=>r(e.FlexRender))),Footprint:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Footprint/render").then(e=>r(e.FootprintRender))),Grid:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Grid/render").then(e=>r(e.GridRender))),Heading:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Heading/render").then(e=>r(e.HeadingRender))),Hero:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Hero/render").then(e=>r(e.HeroRender))),HeroGroup:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroGroup/render").then(e=>r(e.HeroGroupRender))),HeroSingle:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroSingle/render").then(e=>r(e.HeroSingleRender))),HeroSlide:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroSlide/render").then(e=>r(e.HeroSlideRender))),ImageBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ImageBlock/render").then(e=>r(e.ImageBlockRender))),Integrations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Integrations/render").then(e=>r(e.IntegrationsRender))),IntroBleed:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/IntroBleed/render").then(e=>r(e.IntroBleedRender))),Countdown:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Countdown/render").then(e=>r(e.CountdownRender))),KeyFeatures:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/KeyFeatures/render").then(e=>r(e.KeyFeaturesRender))),LogoBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LogoBlock/render").then(e=>r(e.LogoBlockRender))),Logos:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Logos/render").then(e=>r(e.LogosRender))),LongRead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LongRead/render").then(e=>r(e.LongReadRender))),Manifesto:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Manifesto/render").then(e=>r(e.ManifestoRender))),Masthead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Masthead/render").then(e=>r(e.MastheadRender))),Mockup:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Mockup/render").then(e=>r(e.MockupRender))),OrderSummary:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/OrderSummary/render").then(e=>r(e.OrderSummaryRender))),ParagraphsA:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ParagraphsA/render").then(e=>r(e.ParagraphsARender))),PaymentBadges:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/PaymentBadges/render").then(e=>r(e.PaymentBadgesRender))),PostCard:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/PostCard/render").then(e=>r(e.PostCardRender))),ProcessSteps:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ProcessSteps/render").then(e=>r(e.ProcessStepsRender))),Prose:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Prose/render").then(e=>r(e.ProseRender))),SectionHeader:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/SectionHeader/render").then(e=>r(e.SectionHeaderRender))),Series:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Series/render").then(e=>r(e.SeriesRender))),Spacer:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Spacer/render").then(e=>r(e.SpacerRender))),SpecStrip:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/SpecStrip/render").then(e=>r(e.SpecStripRender))),Split:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Split/render").then(e=>r(e.SplitRender))),Stats:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Stats/render").then(e=>r(e.StatsRender))),StatsParagraph:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/StatsParagraph/render").then(e=>r(e.StatsParagraphRender))),Testimonials:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Testimonials/render").then(e=>r(e.TestimonialsRender))),Text:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Text/render").then(e=>r(e.TextRender))),Ticker:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Ticker/render").then(e=>r(e.TickerRender))),Timeline:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Timeline/render").then(e=>r(e.TimelineRender))),TimelineTrack:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/TimelineTrack/render").then(e=>r(e.TimelineTrackRender))),TitleWithButtons:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/TitleWithButtons/render").then(e=>r(e.TitleWithButtonsRender))),AccountBlock:t(()=>import("./blocks/commerce/AccountBlock/render.js").then(e=>r(e.AccountBlockRender))),AlloyWheelsListing:t(()=>import("./blocks/commerce/AlloyWheelsListing/render.js").then(e=>r(e.AlloyWheelsListingRender))),BundleOffer:t(()=>import("./blocks/commerce/BundleOffer/render.js").then(e=>r(e.BundleOfferRender))),CartBlock:t(()=>import("./blocks/commerce/CartBlock/render.js").then(e=>r(e.CartBlockRender))),CatalogFilterBar:t(()=>import("./blocks/commerce/CatalogFilterBar/render.js").then(e=>r(e.CatalogFilterBarRender))),CheckoutCTA:t(()=>import("./blocks/commerce/CheckoutCTA/render.js").then(e=>r(e.CheckoutCTARender))),CollectionCard:t(()=>import("./blocks/commerce/CollectionCard/render.js").then(e=>r(e.CollectionCardRender))),Collections:t(()=>import("./blocks/commerce/Collections/render.js").then(e=>r(e.CollectionsRender))),CompatibleTyres:t(()=>import("./blocks/commerce/CompatibleTyres/render.js").then(e=>r(e.CompatibleTyresRender))),CountrySwitchBlock:t(()=>import("./blocks/commerce/CountrySwitchBlock/render.js").then(e=>r(e.CountrySwitchBlockRender))),DeliveryOptions:t(()=>import("./blocks/commerce/DeliveryOptions/render.js").then(e=>r(e.DeliveryOptionsRender))),DetailRows:t(()=>import("./blocks/commerce/DetailRows/render.js").then(e=>r(e.DetailRowsRender))),EuTyreLabel:t(()=>import("./blocks/commerce/EuTyreLabel/render.js").then(e=>r(e.EuTyreLabelRender))),EuTyreLabelBlock:t(()=>import("./blocks/commerce/EuTyreLabelBlock/render.js").then(e=>r(e.EuTyreLabelBlockRender))),FitmentFinder:t(()=>import("./blocks/commerce/FitmentFinder/render.js").then(e=>r(e.FitmentFinderRender))),FitmentTable:t(()=>import("./blocks/commerce/FitmentTable/render.js").then(e=>r(e.FitmentTableRender))),Gallery:t(()=>import("./blocks/commerce/Gallery/render.js").then(e=>r(e.GalleryRender))),GalleryB:t(()=>import("./blocks/commerce/GalleryB/render.js").then(e=>r(e.GalleryBRender))),GalleryItem:t(()=>import("./blocks/commerce/GalleryItem/render.js").then(e=>r(e.GalleryItemRender))),Header:t(()=>import("./blocks/commerce/Header/render.js").then(e=>r(e.HeaderRender))),ProductGrid:t(()=>import("./blocks/commerce/ProductGrid/render.js").then(e=>r(e.ProductGridRender))),ProductGallery:t(()=>import("./blocks/commerce/ProductGallery/render.js").then(e=>r(e.ProductGalleryRender))),ProductHero:t(()=>import("./blocks/commerce/ProductHero/render.js").then(e=>r(e.ProductHeroRender))),ProductRef:t(()=>import("./blocks/commerce/ProductRef/render.js").then(e=>r(e.ProductRefRender))),RelatedProducts:t(()=>import("./blocks/commerce/RelatedProducts/render.js").then(e=>r(e.RelatedProductsRender))),SearchBlock:t(()=>import("./blocks/commerce/SearchBlock/render.js").then(e=>r(e.SearchBlockRender))),SpecTable:t(()=>import("./blocks/commerce/SpecTable/render.js").then(e=>r(e.SpecTableRender))),ThemeSwitchBlock:t(()=>import("./blocks/commerce/ThemeSwitchBlock/render.js").then(e=>r(e.ThemeSwitchBlockRender))),TyreFitment:t(()=>import("./blocks/commerce/TyreFitment/render.js").then(e=>r(e.TyreFitmentRender))),TyreSizes:t(()=>import("./blocks/commerce/TyreSizes/render.js").then(e=>r(e.TyreSizesRender))),AppointmentBooking:t(()=>import("./blocks/service/AppointmentBooking/render.js").then(e=>r(e.AppointmentBookingRender))),BookingBox:t(()=>import("./blocks/service/BookingBox/render.js").then(e=>r(e.BookingBoxRender))),ContactRouting:t(()=>import("./blocks/service/ContactRouting/render.js").then(e=>r(e.ContactRoutingRender))),Events:t(()=>import("./blocks/service/Events/render.js").then(e=>r(e.EventsRender))),Footer:t(()=>import("./blocks/service/Footer/render.js").then(e=>r(e.FooterRender))),FooterDivider:t(()=>import("./blocks/service/FooterDivider/render.js").then(e=>r(e.FooterDividerRender))),FooterEmailSignup:t(()=>import("./blocks/service/FooterEmailSignup/render.js").then(e=>r(e.FooterEmailSignupRender))),FooterGroup:t(()=>import("./blocks/service/FooterGroup/render.js").then(e=>r(e.FooterGroupRender))),FooterLogo:t(()=>import("./blocks/service/FooterLogo/render.js").then(e=>r(e.FooterLogoRender))),FooterMenu:t(()=>import("./blocks/service/FooterMenu/render.js").then(e=>r(e.FooterMenuRender))),FooterSocial:t(()=>import("./blocks/service/FooterSocial/render.js").then(e=>r(e.FooterSocialRender))),FooterText:t(()=>import("./blocks/service/FooterText/render.js").then(e=>r(e.FooterTextRender))),Form:t(()=>import("./blocks/service/Form/render.js").then(e=>r(e.FormRender))),LegalLineBlock:t(()=>import("./blocks/service/LegalLineBlock/render.js").then(e=>r(e.LegalLineBlockRender))),OpeningHours:t(()=>import("./blocks/service/OpeningHours/render.js").then(e=>r(e.OpeningHoursRender))),RateTable:t(()=>import("./blocks/service/RateTable/render.js").then(e=>r(e.RateTableRender))),RatingBlock:t(()=>import("./blocks/service/RatingBlock/render.js").then(e=>r(e.RatingBlockRender))),ReviewForm:t(()=>import("./blocks/service/ReviewForm/render.js").then(e=>r(e.ReviewFormRender))),Reviews:t(()=>import("./blocks/service/Reviews/render.js").then(e=>r(e.ReviewsRender))),[d]:t(()=>import("./blocks/service/SiteFooter/render.js").then(e=>r(e.SiteFooterRender))),[m]:t(()=>import("./blocks/service/SiteHeader/render.js").then(e=>r(e.SiteHeaderRender))),SubmitBox:t(()=>import("./blocks/service/SubmitBox/render.js").then(e=>r(e.SubmitBoxRender))),SubmitBuild:t(()=>import("./blocks/service/SubmitBuild/render.js").then(e=>r(e.SubmitBuildRender))),Subscribe:t(()=>import("./blocks/service/Subscribe/render.js").then(e=>r(e.SubscribeRender))),SubscribeBlogs:t(()=>import("./blocks/service/SubscribeBlogs/render.js").then(e=>r(e.SubscribeBlogsRender)))},l=Object.fromEntries(Object.entries(p).map(([e,n])=>[e,o=>i(n,{...o})]));export{l as LAZY_DRAWS};
|
|
1
|
+
import{jsx as i}from"react/jsx-runtime";import t from"next/dynamic";import{SITE_FOOTER_TYPE as d,SITE_HEADER_TYPE as m}from"efficient-web-builder/format/lib/document/section-groups";function r(e){return function(n){return e.render(n)}}const p={Banner:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Banner/render").then(e=>r(e.BannerRender))),Breadcrumb:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Breadcrumb/render").then(e=>r(e.BreadcrumbRender))),ButtonBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ButtonBlock/render").then(e=>r(e.ButtonBlockRender))),Cards:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Cards/render").then(e=>r(e.CardsRender))),CategoryBar:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/CategoryBar/render").then(e=>r(e.CategoryBarRender))),Chart:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Chart/render").then(e=>r(e.ChartRender))),ContactLocations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ContactLocations/render").then(e=>r(e.ContactLocationsRender))),CustomHTML:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/CustomHTML/render").then(e=>r(e.CustomHTMLRender))),Divider:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Divider/render").then(e=>r(e.DividerRender))),DocBody:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocBody/render").then(e=>r(e.DocBodyRender))),DocMasthead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocMasthead/render").then(e=>r(e.DocMastheadRender))),DocMetaCards:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocMetaCards/render").then(e=>r(e.DocMetaCardsRender))),DocTabs:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/DocTabs/render").then(e=>r(e.DocTabsRender))),Eyebrow:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Eyebrow/render").then(e=>r(e.EyebrowRender))),FAQ:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/FAQ/render").then(e=>r(e.FAQRender))),FeaturedCover:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/FeaturedCover/render").then(e=>r(e.FeaturedCoverRender))),Flex:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Flex/render").then(e=>r(e.FlexRender))),Footprint:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Footprint/render").then(e=>r(e.FootprintRender))),Grid:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Grid/render").then(e=>r(e.GridRender))),Heading:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Heading/render").then(e=>r(e.HeadingRender))),Hero:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Hero/render").then(e=>r(e.HeroRender))),HeroGroup:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroGroup/render").then(e=>r(e.HeroGroupRender))),HeroSingle:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroSingle/render").then(e=>r(e.HeroSingleRender))),HeroSlide:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/HeroSlide/render").then(e=>r(e.HeroSlideRender))),ImageBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ImageBlock/render").then(e=>r(e.ImageBlockRender))),Integrations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Integrations/render").then(e=>r(e.IntegrationsRender))),IntroBleed:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/IntroBleed/render").then(e=>r(e.IntroBleedRender))),Countdown:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Countdown/render").then(e=>r(e.CountdownRender))),KeyFeatures:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/KeyFeatures/render").then(e=>r(e.KeyFeaturesRender))),LogoBlock:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LogoBlock/render").then(e=>r(e.LogoBlockRender))),Logos:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Logos/render").then(e=>r(e.LogosRender))),LongRead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LongRead/render").then(e=>r(e.LongReadRender))),Manifesto:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Manifesto/render").then(e=>r(e.ManifestoRender))),Masthead:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Masthead/render").then(e=>r(e.MastheadRender))),Mockup:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Mockup/render").then(e=>r(e.MockupRender))),OrderSummary:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/OrderSummary/render").then(e=>r(e.OrderSummaryRender))),ParagraphsA:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ParagraphsA/render").then(e=>r(e.ParagraphsARender))),PaymentBadges:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/PaymentBadges/render").then(e=>r(e.PaymentBadgesRender))),PostCard:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/PostCard/render").then(e=>r(e.PostCardRender))),ProcessSteps:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ProcessSteps/render").then(e=>r(e.ProcessStepsRender))),Prose:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Prose/render").then(e=>r(e.ProseRender))),SectionHeader:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/SectionHeader/render").then(e=>r(e.SectionHeaderRender))),Series:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Series/render").then(e=>r(e.SeriesRender))),Spacer:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Spacer/render").then(e=>r(e.SpacerRender))),SpecStrip:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/SpecStrip/render").then(e=>r(e.SpecStripRender))),Split:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Split/render").then(e=>r(e.SplitRender))),Stats:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Stats/render").then(e=>r(e.StatsRender))),StatsParagraph:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/StatsParagraph/render").then(e=>r(e.StatsParagraphRender))),Testimonials:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Testimonials/render").then(e=>r(e.TestimonialsRender))),Text:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Text/render").then(e=>r(e.TextRender))),Ticker:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Ticker/render").then(e=>r(e.TickerRender))),Timeline:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Timeline/render").then(e=>r(e.TimelineRender))),TimelineTrack:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/TimelineTrack/render").then(e=>r(e.TimelineTrackRender))),TitleWithButtons:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/TitleWithButtons/render").then(e=>r(e.TitleWithButtonsRender))),AccountBlock:t(()=>import("./blocks/commerce/AccountBlock/render.js").then(e=>r(e.AccountBlockRender))),AlloyWheelsListing:t(()=>import("./blocks/commerce/AlloyWheelsListing/render.js").then(e=>r(e.AlloyWheelsListingRender))),BundleOffer:t(()=>import("./blocks/commerce/BundleOffer/render.js").then(e=>r(e.BundleOfferRender))),CartBlock:t(()=>import("./blocks/commerce/CartBlock/render.js").then(e=>r(e.CartBlockRender))),CatalogFilterBar:t(()=>import("./blocks/commerce/CatalogFilterBar/render.js").then(e=>r(e.CatalogFilterBarRender))),CheckoutCTA:t(()=>import("./blocks/commerce/CheckoutCTA/render.js").then(e=>r(e.CheckoutCTARender))),CollectionCard:t(()=>import("./blocks/commerce/CollectionCard/render.js").then(e=>r(e.CollectionCardRender))),Collections:t(()=>import("./blocks/commerce/Collections/render.js").then(e=>r(e.CollectionsRender))),CompatibleTyres:t(()=>import("./blocks/commerce/CompatibleTyres/render.js").then(e=>r(e.CompatibleTyresRender))),CountrySwitchBlock:t(()=>import("./blocks/commerce/CountrySwitchBlock/render.js").then(e=>r(e.CountrySwitchBlockRender))),DeliveryOptions:t(()=>import("./blocks/commerce/DeliveryOptions/render.js").then(e=>r(e.DeliveryOptionsRender))),DetailRows:t(()=>import("./blocks/commerce/DetailRows/render.js").then(e=>r(e.DetailRowsRender))),EuTyreLabel:t(()=>import("./blocks/commerce/EuTyreLabel/render.js").then(e=>r(e.EuTyreLabelRender))),EuTyreLabelBlock:t(()=>import("./blocks/commerce/EuTyreLabelBlock/render.js").then(e=>r(e.EuTyreLabelBlockRender))),FitmentFinder:t(()=>import("./blocks/commerce/FitmentFinder/render.js").then(e=>r(e.FitmentFinderRender))),FitmentTable:t(()=>import("./blocks/commerce/FitmentTable/render.js").then(e=>r(e.FitmentTableRender))),Gallery:t(()=>import("./blocks/commerce/Gallery/render.js").then(e=>r(e.GalleryRender))),GalleryB:t(()=>import("./blocks/commerce/GalleryB/render.js").then(e=>r(e.GalleryBRender))),GalleryItem:t(()=>import("./blocks/commerce/GalleryItem/render.js").then(e=>r(e.GalleryItemRender))),Header:t(()=>import("./blocks/commerce/Header/render.js").then(e=>r(e.HeaderRender))),ProductGrid:t(()=>import("./blocks/commerce/ProductGrid/render.js").then(e=>r(e.ProductGridRender))),ProductGallery:t(()=>import("./blocks/commerce/ProductGallery/render.js").then(e=>r(e.ProductGalleryRender))),ProductHero:t(()=>import("./blocks/commerce/ProductHero/render.js").then(e=>r(e.ProductHeroRender))),ProductRef:t(()=>import("./blocks/commerce/ProductRef/render.js").then(e=>r(e.ProductRefRender))),RelatedProducts:t(()=>import("./blocks/commerce/RelatedProducts/render.js").then(e=>r(e.RelatedProductsRender))),SearchBlock:t(()=>import("./blocks/commerce/SearchBlock/render.js").then(e=>r(e.SearchBlockRender))),SpecTable:t(()=>import("./blocks/commerce/SpecTable/render.js").then(e=>r(e.SpecTableRender))),ThemeSwitchBlock:t(()=>import("./blocks/commerce/ThemeSwitchBlock/render.js").then(e=>r(e.ThemeSwitchBlockRender))),TyreFitment:t(()=>import("./blocks/commerce/TyreFitment/render.js").then(e=>r(e.TyreFitmentRender))),TyreSizes:t(()=>import("./blocks/commerce/TyreSizes/render.js").then(e=>r(e.TyreSizesRender))),AppointmentBooking:t(()=>import("./blocks/service/AppointmentBooking/render.js").then(e=>r(e.AppointmentBookingRender))),BookingBox:t(()=>import("./blocks/service/BookingBox/render.js").then(e=>r(e.BookingBoxRender))),ContactRouting:t(()=>import("./blocks/service/ContactRouting/render.js").then(e=>r(e.ContactRoutingRender))),Events:t(()=>import("./blocks/service/Events/render.js").then(e=>r(e.EventsRender))),Footer:t(()=>import("./blocks/service/Footer/render.js").then(e=>r(e.FooterRender))),FooterDivider:t(()=>import("./blocks/service/FooterDivider/render.js").then(e=>r(e.FooterDividerRender))),FooterEmailSignup:t(()=>import("./blocks/service/FooterEmailSignup/render.js").then(e=>r(e.FooterEmailSignupRender))),FooterGroup:t(()=>import("./blocks/service/FooterGroup/render.js").then(e=>r(e.FooterGroupRender))),FooterLogo:t(()=>import("./blocks/service/FooterLogo/render.js").then(e=>r(e.FooterLogoRender))),FooterMenu:t(()=>import("./blocks/service/FooterMenu/render.js").then(e=>r(e.FooterMenuRender))),FooterSocial:t(()=>import("./blocks/service/FooterSocial/render.js").then(e=>r(e.FooterSocialRender))),FooterPayment:t(()=>import("./blocks/service/FooterPayment/render.js").then(e=>r(e.FooterPaymentRender))),FooterText:t(()=>import("./blocks/service/FooterText/render.js").then(e=>r(e.FooterTextRender))),Form:t(()=>import("./blocks/service/Form/render.js").then(e=>r(e.FormRender))),LegalLineBlock:t(()=>import("./blocks/service/LegalLineBlock/render.js").then(e=>r(e.LegalLineBlockRender))),OpeningHours:t(()=>import("./blocks/service/OpeningHours/render.js").then(e=>r(e.OpeningHoursRender))),RateTable:t(()=>import("./blocks/service/RateTable/render.js").then(e=>r(e.RateTableRender))),MessagingCards:t(()=>import("./blocks/service/MessagingCards/render.js").then(e=>r(e.MessagingCardsRender))),FooterMessaging:t(()=>import("./blocks/service/FooterMessaging/render.js").then(e=>r(e.FooterMessagingRender))),ContactCards:t(()=>import("./blocks/service/ContactCards/render.js").then(e=>r(e.ContactCardsRender))),RatingBlock:t(()=>import("./blocks/service/RatingBlock/render.js").then(e=>r(e.RatingBlockRender))),ReviewForm:t(()=>import("./blocks/service/ReviewForm/render.js").then(e=>r(e.ReviewFormRender))),Reviews:t(()=>import("./blocks/service/Reviews/render.js").then(e=>r(e.ReviewsRender))),[d]:t(()=>import("./blocks/service/SiteFooter/render.js").then(e=>r(e.SiteFooterRender))),[m]:t(()=>import("./blocks/service/SiteHeader/render.js").then(e=>r(e.SiteHeaderRender))),SubmitBox:t(()=>import("./blocks/service/SubmitBox/render.js").then(e=>r(e.SubmitBoxRender))),SubmitBuild:t(()=>import("./blocks/service/SubmitBuild/render.js").then(e=>r(e.SubmitBuildRender))),Subscribe:t(()=>import("./blocks/service/Subscribe/render.js").then(e=>r(e.SubscribeRender))),SubscribeBlogs:t(()=>import("./blocks/service/SubscribeBlogs/render.js").then(e=>r(e.SubscribeBlogsRender)))},l=Object.fromEntries(Object.entries(p).map(([e,o])=>[e,n=>i(o,{...n})]));export{l as LAZY_DRAWS};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Fragment as u,jsx as g}from"react/jsx-runtime";import{generalRenderMetas as E}from"efficient-web-builder/format/lib/document/blocks/general/metas";import{finishRenderRegistry as h}from"efficient-web-builder/render/lib/document/render-registry";import{buildBlockCategories as R}from"efficient-web-builder/format/lib/document/section-catalog";import{SITE_HEADER_TYPE as m}from"efficient-web-builder/format/lib/document/section-groups";import"./slot-seeds.js";import{COMMERCE_METAS as y}from"./blocks/commerce/metas.js";import{SERVICE_METAS as S}from"./blocks/service/metas.js";import _ from"./blocks/text-part-shapes.json";import{addPageBlocksFromFooter as b}from"./footer-page-blocks.js";import{LAZY_DRAWS as l}from"./lazy-draws.js";import{drawPublishedStorefrontRoot as T}from"./storefront-root.js";const j=_,k=(o,r)=>{const t=j[o];return{...r,...t?{textParts:t}:null}};let f=null;function
|
|
1
|
+
import{Fragment as u,jsx as g}from"react/jsx-runtime";import{generalRenderMetas as E}from"efficient-web-builder/format/lib/document/blocks/general/metas";import{finishRenderRegistry as h}from"efficient-web-builder/render/lib/document/render-registry";import{buildBlockCategories as R}from"efficient-web-builder/format/lib/document/section-catalog";import{SITE_HEADER_TYPE as m}from"efficient-web-builder/format/lib/document/section-groups";import"./slot-seeds.js";import"./card-templates.js";import"./section-to-box-rows-reviews.js";import{COMMERCE_METAS as y}from"./blocks/commerce/metas.js";import{SERVICE_METAS as S}from"./blocks/service/metas.js";import _ from"./blocks/text-part-shapes.json";import{addPageBlocksFromFooter as b}from"./footer-page-blocks.js";import{LAZY_DRAWS as l}from"./lazy-draws.js";import{drawPublishedStorefrontRoot as T}from"./storefront-root.js";const j=_,k=(o,r)=>{const t=j[o];return{...r,...t?{textParts:t}:null}};let f=null;function p(){if(f)return f;const o={},r=E();for(const e of Object.keys(r))o[e]={...r[e],render:l[e]};const t={...y,...S};for(const e of Object.keys(t))o[e]=k(e,{...t[e],render:l[e]});b(o);const n={root:{render:T},categories:R(),components:o};return h(n),f=n,n}function x(o=p()){const r=o.components,t=Object.keys(r),n=new Set([m]),e=[m];for(;e.length;){const a=e.shift();for(const c of Object.values(r[a]?.fields??{})){if(c?.type!=="slot")continue;const d=c.allow??t.filter(s=>!c.disallow?.includes(s));for(const s of d)n.has(s)||!(s in r)||(n.add(s),e.push(s))}}return[...n]}let i=null;function L(){if(i)return i;const o=p(),r=o.components;return i={...o,root:{render:({children:t})=>g(u,{children:t})},components:Object.fromEntries(x(o).map(t=>[t,r[t]]))},i}export{L as headerRenderConfig,p as renderConfig};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{SECTION_BOX_SLOT as i,SECTION_BOX_TYPE as n,headParts as l,registerSectionToBox as c}from"efficient-web-builder/render/lib/sections/section-to-box";import{DIM as a,DROP_COMMON as g,DROP_SIDE_PADDING as h,INNER_BOX as o,SAME_KEYS as P,SECTION_BOX as m,TEXT as e,headingCaseOf as T,wrapperPad as y,wrapperPadKeys as S}from"efficient-web-builder/render/lib/document/blocks/general/section-to-box-row-parts";import{CARD_ROW_FIELD_PROP as O}from"efficient-web-builder/format/lib/content/card-template";const p={top:84,bottom:0,topPhone:84,bottomPhone:0},[x,_]=l("Testimonials"),s=(t,r,d)=>({type:"Text",props:{...r,[O]:t,_partStyles:{text:d}}}),b={type:n,props:{...o,name:"Card",gap:20,sectionPaddingTop:36,sectionPaddingBottom:36,sectionPaddingLeft:36,sectionPaddingRight:36,sectionPaddingTopPhone:28,sectionPaddingBottomPhone:28,sectionPaddingLeftPhone:28,sectionPaddingRightPhone:28,sectionAccent:0},slots:{[i]:[{type:"Text",props:{...e,text:"“",_partStyles:{text:{textStyle:"heading-2",color:"accent",lineHeight:1}}}},s("quote",a,{size:16,lineHeight:1.6}),{type:n,props:{...o,name:"Name",gap:4,sectionPaddingTop:20,sectionBorder:{top:1}},slots:{[i]:[s("name",e,{textStyle:"body-5",weight:500,case:"upper",letterSpacing:.04}),s("role",a,{textStyle:"body-5"})]}}]}},w={name:"Testimonials",on:!1,boxProps:t=>({...m,direction:"column",gap:44,sectionBorder:{top:1},...y(t,p)}),box:[...P,...S(p)],parts:[{kind:"group",name:"Heading",props:{...o,gap:16},parts:[{...x,props:e},{..._,props:e,style:{textStyle:"heading-2",lineHeight:1,letterSpacing:-.02}}]},{kind:"core",as:"Reviews",keep:["items","columns"],slots:{template:[b]}}],site:T("title"),drop:{...g,...h,eyebrowLook:"the eyebrow Text wears the plain eyebrow's start look (Testimonials' default); a stored `filled` look needs a filled Text look",headPlacement:"the head is the Text blocks above the Reviews block, which is always own-box here"}};c({Testimonials:w});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type PlpItem } from "../catalog/plp-item.js";
|
|
2
2
|
import { type LinkFilters, type LinkPickerPage, type LinkPickerSetup as BuilderLinkPickerSetup } from "efficient-web-builder/format/lib/links/link-picker-setup";
|
|
3
3
|
import { type LinkKind } from "efficient-web-builder/format/lib/links/page-link-rules";
|
|
4
|
-
export { LINK_KINDS, anchorPath, linkPagePath, linkKindsFor, pageAnchors, pagePath, postPath,
|
|
4
|
+
export { LINK_KINDS, anchorPath, linkPagePath, linkKindsFor, pageAnchors, pagePath, postPath, wheelPath, type LinkKind, } from "efficient-web-builder/format/lib/links/page-link-rules";
|
|
5
5
|
export declare function isSafeLink(url: string): boolean;
|
|
6
6
|
export declare const BUILT_IN_LISTING_PATH = "/wheels";
|
|
7
7
|
export declare const LISTING_PAGE_LABEL = "Products";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isSafeLinkHref as
|
|
1
|
+
import{isSafeLinkHref as x}from"efficient-shell/markup";import{itemKind as m,PLP_KIND_LABELS as A,PLP_KINDS as I,resolvePlpKinds as y}from"../catalog/plp-item.js";import{inferLinkKind as S,linkPickerSetup as F}from"efficient-web-builder/format/lib/links/link-picker-setup";import{pagePath as c,wheelPath as b}from"efficient-web-builder/format/lib/links/page-link-rules";import{buildPlpFacets as E,EMPTY_PLP_FILTERS as R,listingHiddenFacets as T,PLP_PARAM as g,PLP_TYPE_PARAM as P}from"../wheels/plp-filters.js";import{ALLOY_WHEELS_LISTING_TYPE as U}from"../wheels/plp-hydrate.js";import{LINK_KINDS as Z,anchorPath as ee,linkPagePath as te,linkKindsFor as ne,pageAnchors as re,pagePath as ie,postPath as se,wheelPath as oe}from"efficient-web-builder/format/lib/links/page-link-rules";function v(e){return x(e.trim())}const u="/wheels",p="Products";function N(e,t){return t>1?`${p} · ${e}`:p}function h(...e){for(const t of e){const n=(t?.content??[]).find(r=>r?.type===U);if(n)return n.props??{}}return null}function d(...e){return h(...e)!==null}function C(e,t){const n=e.filter(r=>d(...r.docs)).map(r=>c(r.slug));return n.length===0&&t.fallback?[u]:n}const L=[P,...Object.entries(g).filter(([e])=>e!=="tyreSizes").map(([,e])=>e)];function k(e){const t=e.indexOf("#"),n=t===-1?"":e.slice(t),r=t===-1?e:e.slice(0,t),s=r.indexOf("?");return{path:s===-1?r:r.slice(0,s),query:s===-1?"":r.slice(s+1),hash:n}}function K(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return e}}function O(e){const t=new URLSearchParams(k(e).query);for(const n of L){const r=t.get(n);if(r)return{param:n,value:r}}return null}function _(e,t){const{path:n,query:r,hash:s}=k(e),l=r.split("&").filter(o=>o&&!L.includes(K(o.split("=")[0])));return t?.value&&l.push(`${encodeURIComponent(t.param)}=${encodeURIComponent(t.value)}`),`${n}${l.length?`?${l.join("&")}`:""}${s}`}function $(e,t){const n=_(e,null);return t.includes(n)?n:e}function w(e,t,n=[]){return S(e,t,{listingPaths:n,targetOf:r=>$(r,n)})}function J(e){return Array.isArray(e)?e.filter(t=>typeof t?.kind=="string"&&typeof t.field_key=="string").map(t=>({kind:t.kind,fieldKey:t.field_key,...typeof t.filter=="boolean"?{filter:t.filter}:{},filterOrder:t.filter_order??null})):[]}const D="Product type",Y="AUD";function G(e,t){const n=t.listing??{},r=y(n.kinds),s=e.filter(i=>r.includes(m(i))),l=T(n),o=E(s,R,Y,r,t.fieldUsage).filter(i=>!l.includes(i.key)).map(i=>({param:g[i.key],label:i.label,values:i.options.filter(f=>!f.value.includes(",")).map(f=>({value:f.value,label:f.label}))})).filter(i=>i.values.length>0),a=I.filter(i=>r.includes(i)&&s.some(f=>m(f)===i));return a.length>1&&o.unshift({param:P,label:D,values:a.map(i=>({value:i,label:A[i]}))}),o}function q(e){return t=>{const n=C(t,{fallback:e.offersCommerce}),r=t.filter(s=>d(...s.docs)).length;return{listingPaths:n,pageOptions:s=>{const l=s.map(o=>{const a=t.find(i=>c(i.slug)===o.value);return a&&d(...a.docs)?{...o,label:N(a.title,r)}:o});return r===0&&e.offersCommerce&&!l.some(o=>o.value===u)&&l.push({value:u,label:p}),l},filtersFor:s=>{if(!n.includes(s))return null;const l=t.find(o=>c(o.slug)===s);return G(e.catalogue,{listing:l?h(...l.docs):null,fieldUsage:e.fieldUsage})},readFilter:O,withFilter:_}}}function Q(e){const t=q({catalogue:e.catalogue,fieldUsage:e.fieldUsage,offersCommerce:e.offers.offersCommerce})(e.pages),n=F({pages:e.pages,posts:e.posts,products:e.products.map(r=>({href:b(r.slug),name:r.name||r.slug})),offers:e.offers},t);return{...n,rules:{...n.rules,isSafe:v},filtersFor:n.filtersFor??(()=>null)}}export{u as BUILT_IN_LISTING_PATH,Z as LINK_KINDS,L as LISTING_FILTER_PARAMS,p as LISTING_PAGE_LABEL,D as PRODUCT_TYPE_FILTER_LABEL,ee as anchorPath,J as fieldUsageFromAdminRows,w as inferLinkKind,d as isProductListingPage,v as isSafeLink,ne as linkKindsFor,te as linkPagePath,Q as linkPickerSetup,G as listingFilterFields,h as listingNode,N as listingPageLabel,$ as listingTarget,re as pageAnchors,ie as pagePath,se as postPath,C as productListingPaths,O as readListingFilter,q as storefrontLinkFilters,oe as wheelPath,_ as withListingFilter};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{create as c}from"qrcode/lib/core/qrcode";const s=4;function h(l){if(!l)return null;let r;try{({modules:r}=c(l,{errorCorrectionLevel:"M"}))}catch{return null}const o=r.size;let i="";for(let e=0;e<o;e++){let t=0;for(;t<o;){if(!r.get(e,t)){t++;continue}const n=t;for(;t<o&&r.get(e,t);)t++;i+=`M${n} ${e}h${t-n}v1H${n}z`}}return{path:i,size:o}}export{s as QR_QUIET,h as qrPath};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { SourceRow } from "efficient-web-builder/format/lib/content/block-sources";
|
|
2
|
+
export declare const MESSAGING_SOURCE = "site-messaging";
|
|
3
|
+
export declare const MESSAGING_APPS: readonly ["wechat", "telegram", "whatsapp", "line"];
|
|
4
|
+
export type MessagingApp = (typeof MESSAGING_APPS)[number];
|
|
5
|
+
export interface MessagingChannel {
|
|
6
|
+
app: MessagingApp;
|
|
7
|
+
name: string;
|
|
8
|
+
handle: string;
|
|
9
|
+
href: string;
|
|
10
|
+
qr: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const MESSAGING_WORDS: {
|
|
13
|
+
open: (name: string) => string;
|
|
14
|
+
opensApp: string;
|
|
15
|
+
copyId: string;
|
|
16
|
+
copied: string;
|
|
17
|
+
scanWith: (name: string) => string;
|
|
18
|
+
searchFor: (name: string) => string;
|
|
19
|
+
qrLabel: (name: string, handle: string) => string;
|
|
20
|
+
};
|
|
21
|
+
export declare const MESSAGING_ACTION = "inline-flex items-center gap-1.5 text-[14px] font-medium text-accent underline-offset-4 hover:underline";
|
|
22
|
+
export declare function messagingChannels(rows: readonly SourceRow[]): MessagingChannel[];
|
|
23
|
+
export declare const CONTACTS_MAX = 8;
|
|
24
|
+
export declare const CONTACT_KINDS: readonly ["phone", "email", "whatsapp", "line", "telegram", "wechat", "kakaotalk"];
|
|
25
|
+
export type ContactKind = (typeof CONTACT_KINDS)[number];
|
|
26
|
+
export declare const CONTACT_KIND_NAMES: Record<ContactKind, string>;
|
|
27
|
+
export interface ContactEntry {
|
|
28
|
+
name?: unknown;
|
|
29
|
+
kind?: unknown;
|
|
30
|
+
value?: unknown;
|
|
31
|
+
}
|
|
32
|
+
export interface ContactView {
|
|
33
|
+
name: string;
|
|
34
|
+
kind: ContactKind;
|
|
35
|
+
way: string;
|
|
36
|
+
handle: string;
|
|
37
|
+
href: string;
|
|
38
|
+
qr: string;
|
|
39
|
+
}
|
|
40
|
+
export declare function readTelegram(typed: string): string | null;
|
|
41
|
+
export declare function readWhatsApp(typed: string): string | null;
|
|
42
|
+
export declare function readLine(typed: string): string | null;
|
|
43
|
+
export declare function formatPhone(value: string): string;
|
|
44
|
+
export declare function contactView(entry: ContactEntry): ContactView | null;
|
|
45
|
+
export declare function contactViews(raw: unknown): ContactView[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{phoneHref as l}from"efficient-web-builder/format/lib/links/phone-href";const G="site-messaging",p=["wechat","telegram","whatsapp","line"],D={open:t=>`Open ${t}`,opensApp:"(opens the app)",copyId:"Copy ID",copied:"Copied",scanWith:t=>`Scan with ${t}`,searchFor:t=>`Search for this ID in ${t}`,qrLabel:(t,e)=>e?`${t} QR code, ${e}`:`${t} QR code`},L="inline-flex items-center gap-1.5 text-[14px] font-medium text-accent underline-offset-4 hover:underline",h=t=>typeof t=="string"&&p.includes(t),a=t=>typeof t=="string"&&/^https?:\/\/\S+$/i.test(t.trim())?t.trim():"",o=t=>typeof t=="string"?t.trim():"";function R(t){const e=new Set,s=[];for(const n of t){if(!h(n.app)||e.has(n.app))continue;const r={app:n.app,name:o(n.name)||f[n.app],handle:o(n.handle),href:n.app==="wechat"?"":a(n.href),qr:a(n.qr)};!r.handle&&!r.qr||(e.add(n.app),s.push(r))}return s}const f={wechat:"WeChat",telegram:"Telegram",whatsapp:"WhatsApp",line:"LINE"},m=8,u=["phone","email","whatsapp","line","telegram","wechat","kakaotalk"],d={phone:"Phone",email:"Email",whatsapp:"WhatsApp",line:"LINE",telegram:"Telegram",wechat:"WeChat",kakaotalk:"KakaoTalk"},$=200,A=40,g=/^[A-Za-z][A-Za-z0-9_]{3,31}$/,w=/^\+[1-9][0-9]{7,14}$/,S=/^@?[a-z0-9._-]{3,20}$/,x=/^[A-Za-z0-9_-]{2,40}$/,E=/^[A-Za-z0-9._-]{2,40}$/,N=/^[^\s@<>()",;:]+@[^\s@<>()",;:]+\.[^\s@<>()",;:]{2,}$/;function _(t){const e=t.trim().replace(/^(?:https?:\/\/)?(?:www\.)?(?:t\.me|telegram\.me|telegram\.dog)\//i,"").replace(/^@/,"").replace(/\/+$/,"");return g.test(e)?e:null}function I(t){const e=t.trim(),s=e.match(/^(?:https?:\/\/)?(?:www\.)?wa\.me\/(\d+)\/?$/i);let n=s?`+${s[1]}`:e.replace(/[\s().\-/]/g,"");return n.startsWith("00")&&(n=`+${n.slice(2)}`),n=n.replace(/^\+610/,"+61"),/^0[2-478]\d{8}$/.test(n)?n=`+61${n.slice(1)}`:/^61[2-478]\d{8}$/.test(n)&&(n=`+${n}`),w.test(n)?n:null}function k(t){const e=t.trim(),s=e.match(/^(?:https?:\/\/)?line\.me\/(?:R\/)?ti\/p\/(.+?)\/?$/i);let n=e;if(s){const r=s[1];if(r.startsWith("~"))n=r.slice(1);else if(/^(?:@|%40)/i.test(r))n=`@${r.replace(/^(?:@|%40)/i,"")}`;else return null}return n=n.toLowerCase(),S.test(n)?n:null}function M(t){const e=t.trim().replace(/\s+/g," ");if(e.length>40||!/^\+?[\d\s().-]+$/.test(e))return null;const s=e.replace(/\D/g,"").length;return s>=8&&s<=15?e:null}function c(t){let e=t.replace(/\D/g,"");if(t.trim().startsWith("+")){if(!e.startsWith("61"))return t.trim();e=`0${e.slice(2)}`}return/^04\d{8}$/.test(e)?`${e.slice(0,4)} ${e.slice(4,7)} ${e.slice(7)}`:/^0[2378]\d{8}$/.test(e)?`(${e.slice(0,2)}) ${e.slice(2,6)} ${e.slice(6)}`:t.trim()}const T=t=>t.startsWith("@")?`https://line.me/R/ti/p/%40${t.slice(1)}`:`https://line.me/ti/p/~${t}`,C=t=>typeof t=="string"&&u.includes(t);function W(t){if(!C(t.kind)||typeof t.value!="string")return null;const e=t.value;if(!e.trim()||e.length>$)return null;const s=t.kind,n={name:typeof t.name=="string"?t.name.trim().slice(0,A):"",kind:s,way:d[s]};switch(s){case"phone":{const r=M(e);return r?{...n,handle:c(r),href:l(r)??"",qr:""}:null}case"email":{const r=e.trim();return r.length<=120&&N.test(r)?{...n,handle:r,href:`mailto:${r}`,qr:""}:null}case"whatsapp":{const r=I(e);if(!r)return null;const i=`https://wa.me/${r.slice(1)}`;return{...n,handle:c(r),href:i,qr:i}}case"telegram":{const r=_(e);if(!r)return null;const i=`https://t.me/${r}`;return{...n,handle:`@${r}`,href:i,qr:i}}case"line":{const r=k(e);if(!r)return null;const i=T(r);return{...n,handle:r,href:i,qr:i}}case"wechat":{const r=e.trim();return x.test(r)?{...n,handle:r,href:"",qr:""}:null}case"kakaotalk":{const r=e.trim().replace(/^@/,"");return E.test(r)?{...n,handle:r,href:"",qr:""}:null}}}function O(t){return Array.isArray(t)?t.flatMap(e=>{if(!e||typeof e!="object")return[];const s=W(e);return s?[s]:[]}).slice(0,m):[]}export{m as CONTACTS_MAX,u as CONTACT_KINDS,d as CONTACT_KIND_NAMES,L as MESSAGING_ACTION,p as MESSAGING_APPS,G as MESSAGING_SOURCE,D as MESSAGING_WORDS,W as contactView,O as contactViews,c as formatPhone,R as messagingChannels,k as readLine,_ as readTelegram,I as readWhatsApp};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const PRODUCT_REVIEWS_SOURCE = "product-reviews";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e="product-reviews";export{e as PRODUCT_REVIEWS_SOURCE};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{slugify as u}from"efficient-shell/format";import{COLLECTIONS as p,collectionsForCatalog as f,siteProcesses as m}from"./collections.js";import{FOOTER_TYPE as c,HEADER_TYPE as a}from"efficient-easel/screen/lib/document/content-tree";import{CARD_IMAGE_BG_OFF as E}from"efficient-web-builder/format/lib/content/card-image-background";import{PAGE_WIDTH as C}from"efficient-web-builder/format/lib/content/page-width";import{DEFAULT_TITLE_SIZE as d}from"../sections/product-grid-title.js";const h="wheels",T="collection:",F={content:[],root:{},zones:{}};function g(){return{type:"CatalogFilterBar",props:{id:"CatalogFilterBar-wheels-seed",showProcess:!0,showLugs:!0,showPrice:!0,showCount:!0,showSort:!0}}}function P(t,e){const r=u(t);return{type:"ProductGrid",props:{id:`ProductGrid-wheels-${r}`,dynamic:!1,num:e,title:t,titleSize:d,padTop:100,description:"",linkText:"Explore the collection",linkHref:`/wheels/collections/${r}`,columns:4,showAll:!0,limit:8,imageBackground:E,spinOnHover:!0,source:{slug:`${T}${r}`,name:t,process:t},fullWidth:!0,pageWidth:C.default,products:[]}}}function _(t){const e=t?f(t):p;return[g(),...e.map(r=>P(r.key,r.num))]}function y(t){return t.every(e=>e?.type===a||e?.type===c)}function I(t,e,r){if(t!==h)return e;const n=e?.content??[];if(!y(n))return e;const s=_(r),o=n.findIndex(l=>l?.type===c),i=o===-1?[...n,...s]:[...n.slice(0,o),...s,...n.slice(o)];return{...e,content:i}}function S(t,e){const r=t?.content??[],n=m(e),s=r.map(o=>{const i=o?.props?.source;return o?.type==="CatalogFilterBar"?{...o,props:{...o.props,processOptions:n}}:o?.type!=="ProductGrid"||!i?.process||n.includes(i.process)?o:null}).filter(o=>o!==null);return{...t,content:s}}export{F as EMPTY_CATALOG_DATA,h as WHEELS_PAGE_SLUG,_ as buildCatalogSections,I as ensureWheelsCatalogSections,S as scopeCatalogSections};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as a,jsxs as f}from"react/jsx-runtime";import{Fragment as m}from"react";import g from"efficient-web-builder/render/components/RMark";import{slugify as
|
|
1
|
+
import{jsx as a,jsxs as f}from"react/jsx-runtime";import{Fragment as m}from"react";import g from"efficient-web-builder/render/components/RMark";import{slugify as u}from"efficient-shell/format";const s=["FusionForge®","Precision Forged","Monoblock Cast"];function C(t){return u(t)}function p(t){const n=t.split("®");return n.length===1?t:n.map((e,o)=>f(m,{children:[e,o<n.length-1&&a(g,{})]},o))}const O=s.map((t,n)=>({key:t,num:String(n+1).padStart(2,"0"),title:p(t)}));function l(t){if(t.length===0)return[...s];const n=new Set(t.map(e=>e.process));return s.filter(e=>n.has(e))}function j(t){return l(t).map((n,e)=>({key:n,num:String(e+1).padStart(2,"0"),title:p(n)}))}function k(t){const n=l(t),e=t.map(r=>r.process).filter(r=>!!r&&!s.includes(r)),o=new Set,c=[];for(const r of[...n,...e]){const i=u(r);!i||o.has(i)||(o.add(i),c.push({key:r,slug:i,num:String(c.length+1).padStart(2,"0"),title:p(r)}))}return c}const y=Object.fromEntries(s.map(t=>[t,u(t)]));export{O as COLLECTIONS,y as COLLECTION_ANCHORS,j as collectionsForCatalog,k as siteCollections,l as siteProcesses,C as slugifyProcess};
|