efficient-storefront-blocks 0.84.0 → 0.86.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 +23 -0
- package/dist/chunks/{EditorPreviewCheckout-3NVDTH56.js → EditorPreviewCheckout-4LNXFNN7.js} +1 -1
- package/dist/chunks/{SiteEditorProvider-77K7CGYZ.js → SiteEditorProvider-A2HMVDKS.js} +1 -1
- package/dist/chunks/{chunk-F3MB7QCR.js → chunk-ALMIS7CK.js} +1 -1
- package/dist/chunks/{chunk-VYOK2XBF.js → chunk-EUKK2IN6.js} +1 -1
- package/dist/chunks/chunk-FJRKNPNN.js +340 -0
- package/dist/chunks/chunk-SLRULFYY.js +1 -0
- package/dist/chunks/{chunk-VJLQXB7I.js → chunk-TGBNREUJ.js} +1 -1
- package/dist/chunks/{fitment-data-PWXEDMOA.js → fitment-data-TSYW6AFA.js} +1 -1
- package/dist/contract.js +2 -2
- package/dist/editor/lib/document/blocks/commerce/DetailRows/fields.js +1 -1
- package/dist/editor/lib/document/blocks/commerce/FitmentPicker/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/commerce/FitmentPicker/fields.js +1 -0
- package/dist/editor/lib/document/blocks/commerce/FitmentTable/fields.js +1 -1
- package/dist/editor/lib/document/blocks/commerce/ProductGrid/fields.js +1 -1
- package/dist/editor/lib/document/blocks/commerce/SpecTable/fields.js +1 -1
- package/dist/editor/lib/document/blocks/commerce/StockFitment/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/commerce/StockFitment/fields.js +1 -0
- package/dist/editor/lib/document/blocks/commerce/index.d.ts +1 -1
- package/dist/editor/lib/document/blocks/commerce/index.js +1 -1
- package/dist/editor/lib/document/blocks/commerce/page-rules.d.ts +5 -0
- package/dist/editor/lib/document/blocks/commerce/page-rules.js +1 -1
- package/dist/editor/lib/document/blocks/service/ArticleBody/fields.d.ts +2 -0
- package/dist/editor/lib/document/blocks/service/ArticleBody/fields.js +1 -0
- package/dist/editor/lib/document/blocks/service/SiteFooter/fields.js +1 -1
- package/dist/editor/lib/document/blocks/service/SiteHeader/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/box-header.d.ts +1 -1
- package/dist/editor/lib/document/box-header.js +1 -1
- package/dist/editor/lib/document/config.d.ts +1 -0
- package/dist/editor/lib/document/config.js +1 -1
- package/dist/editor/lib/document/popup-look-fields.d.ts +4 -0
- package/dist/editor/lib/document/popup-look-fields.js +1 -0
- package/dist/editor/lib/efficient-backend.js +1 -1
- package/dist/editor/lib/efficient-block-sources.js +1 -1
- package/dist/editor/lib/storefront-editor-words.d.ts +21 -1
- package/dist/editor/lib/storefront-editor-words.js +1 -1
- package/dist/editor.css +1 -1
- package/dist/index.js +134 -58
- package/dist/render/app/globals.css +156 -0
- package/dist/render/built-with.json +1 -1
- package/dist/render/components/ArticleBody.d.ts +7 -0
- package/dist/render/components/ArticleBody.js +1 -0
- package/dist/render/components/BoxHeaderBar.d.ts +2 -1
- package/dist/render/components/BoxHeaderBar.js +1 -1
- package/dist/render/components/CartContext.d.ts +1 -0
- package/dist/render/components/CartContext.js +1 -1
- package/dist/render/components/CartDrawer.d.ts +4 -3
- package/dist/render/components/CartDrawer.js +1 -4
- package/dist/render/components/DetailRows.d.ts +6 -1
- package/dist/render/components/DetailRows.js +1 -1
- package/dist/render/components/PopupFrame.d.ts +10 -1
- package/dist/render/components/PopupFrame.js +5 -1
- package/dist/render/components/ProductGridSection.d.ts +2 -1
- package/dist/render/components/ProductGridSection.js +1 -1
- package/dist/render/components/PublishedHeader.js +1 -1
- package/dist/render/components/Reviews.d.ts +1 -0
- package/dist/render/components/Reviews.js +1 -1
- package/dist/render/components/SectionBand.d.ts +2 -1
- package/dist/render/components/SectionBand.js +1 -1
- package/dist/render/components/SectionBandChoice.d.ts +2 -1
- package/dist/render/components/SectionBandChoice.js +1 -1
- package/dist/render/components/SectionGroupBody.d.ts +2 -2
- package/dist/render/components/SectionGroupBody.js +1 -1
- package/dist/render/components/SpecTable.d.ts +3 -1
- package/dist/render/components/SpecTable.js +1 -1
- package/dist/render/components/TyreSizeGrid.d.ts +17 -0
- package/dist/render/components/TyreSizeGrid.js +1 -0
- package/dist/render/components/fitment/FitmentPickerGrid.d.ts +5 -1
- package/dist/render/components/fitment/FitmentPickerGrid.js +1 -1
- package/dist/render/components/fitment/FitmentPickerPart.d.ts +8 -0
- package/dist/render/components/fitment/FitmentPickerPart.js +1 -0
- package/dist/render/components/fitment/StockFitmentPart.d.ts +4 -0
- package/dist/render/components/fitment/StockFitmentPart.js +1 -0
- package/dist/render/components/fitment/useVehicleFit.d.ts +2 -1
- package/dist/render/components/fitment/useVehicleFit.js +1 -1
- package/dist/render/components/pdp-dynamic/DynamicDetailRows.d.ts +2 -0
- package/dist/render/components/pdp-dynamic/DynamicDetailRows.js +1 -1
- package/dist/render/components/pdp-dynamic/DynamicFitmentTable.d.ts +5 -0
- package/dist/render/components/pdp-dynamic/DynamicFitmentTable.js +1 -1
- package/dist/render/components/pdp-dynamic/DynamicSpecTable.d.ts +1 -0
- package/dist/render/components/pdp-dynamic/DynamicSpecTable.js +1 -1
- package/dist/render/components/pdp-dynamic/DynamicTyreSizes.js +1 -1
- package/dist/render/components/pdp-dynamic/FitmentTableBlock.d.ts +3 -1
- package/dist/render/components/pdp-dynamic/FitmentTableBlock.js +1 -1
- package/dist/render/lib/content/article-body-seed.d.ts +9 -0
- package/dist/render/lib/content/article-body-seed.js +1 -0
- package/dist/render/lib/content/article-body.d.ts +8 -0
- package/dist/render/lib/content/article-body.js +5 -0
- package/dist/render/lib/content/article-page-seed.d.ts +12 -0
- package/dist/render/lib/content/article-page-seed.js +1 -0
- package/dist/render/lib/document/blocks/commerce/DetailRows/meta.d.ts +6 -0
- package/dist/render/lib/document/blocks/commerce/DetailRows/meta.js +1 -1
- package/dist/render/lib/document/blocks/commerce/DetailRows/render.js +1 -1
- package/dist/render/lib/document/blocks/commerce/FitmentPicker/meta.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/FitmentPicker/meta.js +1 -0
- package/dist/render/lib/document/blocks/commerce/FitmentPicker/render.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/FitmentPicker/render.js +1 -0
- package/dist/render/lib/document/blocks/commerce/FitmentTable/meta.js +1 -1
- package/dist/render/lib/document/blocks/commerce/FitmentTable/render.js +1 -1
- package/dist/render/lib/document/blocks/commerce/ProductGrid/render.js +1 -1
- package/dist/render/lib/document/blocks/commerce/SpecTable/render.js +1 -1
- package/dist/render/lib/document/blocks/commerce/StockFitment/meta.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/StockFitment/meta.js +1 -0
- package/dist/render/lib/document/blocks/commerce/StockFitment/render.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/StockFitment/render.js +1 -0
- package/dist/render/lib/document/blocks/commerce/metas.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/metas.js +1 -1
- package/dist/render/lib/document/blocks/commerce/renders.d.ts +2 -0
- package/dist/render/lib/document/blocks/commerce/renders.js +1 -1
- package/dist/render/lib/document/blocks/service/ArticleBody/meta.d.ts +8 -0
- package/dist/render/lib/document/blocks/service/ArticleBody/meta.js +1 -0
- package/dist/render/lib/document/blocks/service/ArticleBody/render.d.ts +2 -0
- package/dist/render/lib/document/blocks/service/ArticleBody/render.js +1 -0
- package/dist/render/lib/document/blocks/service/SiteFooter/render.js +1 -1
- package/dist/render/lib/document/blocks/service/SiteHeader/render.js +1 -1
- package/dist/render/lib/document/blocks/service/metas.d.ts +1 -0
- package/dist/render/lib/document/blocks/service/metas.js +1 -1
- package/dist/render/lib/document/blocks/service/renders.d.ts +1 -0
- package/dist/render/lib/document/blocks/service/renders.js +1 -1
- package/dist/render/lib/document/card-templates.js +1 -1
- package/dist/render/lib/document/current-record.d.ts +4 -15
- package/dist/render/lib/document/current-record.js +1 -1
- package/dist/render/lib/document/lazy-draws.js +1 -1
- package/dist/render/lib/document/render-config.d.ts +1 -0
- package/dist/render/lib/document/render-config.js +1 -1
- package/dist/render/lib/document/section-to-box-rows-detail.d.ts +2 -0
- package/dist/render/lib/document/section-to-box-rows-detail.js +1 -0
- package/dist/render/lib/document/section-to-box-rows-reviews.js +1 -1
- package/dist/render/lib/document/section-to-box-rows-spec.js +1 -1
- package/dist/render/lib/document/storefront-root.js +1 -1
- package/dist/render/lib/sections/product-grid-columns.d.ts +5 -0
- package/dist/render/lib/sections/product-grid-columns.js +1 -0
- package/dist/render/lib/sections/section-band.d.ts +6 -0
- package/dist/render/lib/sections/section-band.js +1 -1
- package/dist/render/lib/sections/spec-table-band.d.ts +4 -0
- package/dist/render/lib/sections/spec-table-band.js +1 -0
- package/dist/render/lib/wheels/vehicle-memory.d.ts +13 -0
- package/dist/render/lib/wheels/vehicle-memory.js +1 -1
- package/dist/words.d.ts +58 -12
- package/dist/words.js +5 -5
- package/package.json +5 -4
- package/dist/chunks/chunk-5EQD5D3L.js +0 -340
- package/dist/chunks/chunk-DQFD2BJD.js +0 -1
- /package/dist/chunks/{chunk-5EQD5D3L.js.LEGAL.txt → chunk-FJRKNPNN.js.LEGAL.txt} +0 -0
|
@@ -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{
|
|
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{ArticleBodyRender as t}from"./ArticleBody/render.js";import{BookingBoxRender as i}from"./BookingBox/render.js";import{ContactRoutingRender as m}from"./ContactRouting/render.js";import{EventsRender as n}from"./Events/render.js";import{FooterRender as R}from"./Footer/render.js";import{FooterDividerRender as p}from"./FooterDivider/render.js";import{FooterEmailSignupRender as d}from"./FooterEmailSignup/render.js";import{FooterGroupRender as f}from"./FooterGroup/render.js";import{FooterLogoRender as a}from"./FooterLogo/render.js";import{FooterMenuRender as g}from"./FooterMenu/render.js";import{FooterSocialRender as F}from"./FooterSocial/render.js";import{FooterPaymentRender as s}from"./FooterPayment/render.js";import{FooterTextRender as u}from"./FooterText/render.js";import{FormRender as l}from"./Form/render.js";import{LegalLineBlockRender as B}from"./LegalLineBlock/render.js";import{MenuLinkBlockRender as c}from"./MenuLinkBlock/render.js";import{OpeningHoursRender as S}from"./OpeningHours/render.js";import{RateTableRender as E}from"./RateTable/render.js";import{MessagingCardsRender as b}from"./MessagingCards/render.js";import{FooterMessagingRender as k}from"./FooterMessaging/render.js";import{ContactCardsRender as C}from"./ContactCards/render.js";import{RatingBlockRender as T}from"./RatingBlock/render.js";import{ReviewFormRender as v}from"./ReviewForm/render.js";import{ReviewsRender as L}from"./Reviews/render.js";import{SiteFooterRender as M}from"./SiteFooter/render.js";import{SiteHeaderRender as x}from"./SiteHeader/render.js";import{SubmitBoxRender as A}from"./SubmitBox/render.js";import{SubmitBuildRender as _}from"./SubmitBuild/render.js";import{SubscribeRender as w}from"./Subscribe/render.js";import{SubscribeBlogsRender as y}from"./SubscribeBlogs/render.js";const go={AppointmentBooking:e,BookingBox:i,ContactRouting:m,Events:n,Footer:R,FooterDivider:p,FooterEmailSignup:d,FooterGroup:f,FooterLogo:a,FooterMenu:g,ArticleBody:t,FooterSocial:F,FooterPayment:s,FooterText:u,Form:l,LegalLineBlock:B,MenuLinkBlock:c,OpeningHours:S,RateTable:E,MessagingCards:b,FooterMessaging:k,ContactCards:C,RatingBlock:T,ReviewForm:v,Reviews:L,[o]:M,[r]:x,SubmitBox:A,SubmitBuild:_,Subscribe:w,SubscribeBlogs:y};export{go as SERVICE_RENDERS};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{registerCardTemplates as l}from"efficient-web-builder/format/lib/content/card-template";import{HERO_PRICE_BLOCK as a,withHeroPriceTemplate as
|
|
1
|
+
import{registerCardTemplates as l}from"efficient-web-builder/format/lib/content/card-template";import{HERO_PRICE_BLOCK as a,withHeroPriceTemplate as t}from"../content/hero-price-seed.js";import{MENU_LINK_BLOCK as i,withMenuTemplate as o}from"../content/menu-card-seed.js";import{ARTICLE_BODY_BLOCK as b,withArticleBodyTemplate as k}from"../content/article-body-seed.js";const e={fields:[{key:"label",label:"Label"},{key:"href",label:"Link",kind:"link"}],blocks:[{type:i,label:"Menu link"}],seed:o},r=[{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"}]},{block:"SpecTable",fields:[{key:"label",label:"Label"},{key:"value",label:"Value"}]},{block:"DetailRows",fields:[{key:"eyebrow",label:"Eyebrow"},{key:"title",label:"Title"},{key:"copy",label:"Body",multiline:!0},{key:"image",label:"Image",kind:"image",alt:"title"},{key:"tag",label:"Image tag"}]},{block:"FooterMenu",...e},{block:"MenuBlock",...e},{block:"ProductHero",fields:[],blocks:[{type:a,label:"Price"}],seed:t},{block:b,fields:[{key:"heading",label:"Subhead"},{key:"paragraph",label:"Paragraph",multiline:!0}],seed:k}];l(r);export{r as STOREFRONT_CARD_TEMPLATES};
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
import { type ReactNode } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
fields: Readonly<Record<string, unknown>>;
|
|
7
|
-
value: TValue;
|
|
8
|
-
schema?: readonly RecordFieldSpec[];
|
|
9
|
-
}
|
|
10
|
-
export interface RecordFieldSpec {
|
|
11
|
-
key: string;
|
|
12
|
-
label: string;
|
|
13
|
-
kind: string;
|
|
14
|
-
}
|
|
2
|
+
import { useCurrentRecord, useCurrentRecordOf, type CurrentRecord, type RecordSchemaField } from "efficient-web-builder/render/components/CurrentRecord";
|
|
3
|
+
export type { CurrentRecord };
|
|
4
|
+
export { useCurrentRecord, useCurrentRecordOf };
|
|
5
|
+
export type RecordFieldSpec = RecordSchemaField;
|
|
15
6
|
export interface RecordPicture {
|
|
16
7
|
url: string;
|
|
17
8
|
alt: string;
|
|
@@ -39,5 +30,3 @@ export declare function CurrentRecordProvider({ record, children, }: {
|
|
|
39
30
|
record: CurrentRecord;
|
|
40
31
|
children: ReactNode;
|
|
41
32
|
}): import("react").JSX.Element;
|
|
42
|
-
export declare function useCurrentRecord(): CurrentRecord | null;
|
|
43
|
-
export declare function useCurrentRecordOf<TValue = unknown>(type: string): CurrentRecord<TValue> | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as
|
|
1
|
+
"use client";import{jsx as f}from"react/jsx-runtime";import{createContext as R,useContext as p}from"react";import{say as o}from"efficient-web-builder/format/lib/editor-words";import{declaredRecordType as h,PRODUCT_RECORD_TYPE as a}from"efficient-web-builder/format/lib/content/record-types";import{CurrentRecordProvider as k,useCurrentRecord as y,useCurrentRecordOf as C}from"efficient-web-builder/render/components/CurrentRecord";function A(t){const e=t.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").trim().toLowerCase();return e?e[0].toUpperCase()+e.slice(1):t}const v=/^\d{4}-\d{2}-\d{2}$/;function m(t){return t?t.schema?.length?t.schema.filter(e=>typeof e?.key=="string"&&e.key in t.fields):Object.entries(t.fields).flatMap(([e,r])=>{const n=Array.isArray(r)?g(r[0])?"rows":"images":typeof r=="string"?v.test(r)?"date":"text":null;return n?[{key:e,label:A(e),kind:n}]:[]}):[]}function _(t,{firstField:e=!1}={}){if(!t)return[];const r=m(t).filter(n=>n.kind==="images");return(e?r.slice(0,1):r).flatMap(n=>{const i=t.fields[n.key];return Array.isArray(i)?i.flatMap(s=>{const d=s?.url;if(typeof d!="string"||!d)return[];const u=s.alt,c=s.video;return[{url:d,alt:typeof u=="string"?u:"",...typeof c=="string"&&c?{video:c}:{}}]}):[]})}function x(t){const e=new Date(`${t}T00:00:00Z`);return Number.isNaN(e.getTime())?t:e.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric",timeZone:"UTC"})}function g(t){const e=t;return typeof e?.label=="string"&&!!e.label.trim()&&typeof e.value=="string"&&!!e.value.trim()}function w(t){return t?m(t).flatMap(e=>{const r=t.fields[e.key];return e.kind==="rows"?Array.isArray(r)?r.filter(g).map(({label:n,value:i})=>({label:n,value:i})):[]:e.kind!=="text"&&e.kind!=="date"?[]:typeof r!="string"||!r.trim()?[]:[{label:e.label,value:e.kind==="date"?x(r):r}]}):[]}function S(t){const e=t?.appState?.data?.root;return h(e?.props)!==a}const l=R(a);function E({type:t,children:e}){return f(l.Provider,{value:t,children:e})}function M(){return p(l)}function U(t){const e=y(),r=p(l);return e?e.type!==a:t&&r!==a}const B={type:"sample",key:"sample",get title(){return o("Record title")},get fields(){return{first:o("A detail of this record"),second:o("Another detail"),third:o("A third")}},value:void 0,get schema(){return[{key:"first",label:o("First detail"),kind:"text"},{key:"second",label:o("Second detail"),kind:"text"},{key:"third",label:o("Third detail"),kind:"text"}]}},F=4;function L({record:t,children:e}){return f(k,{record:t,dateWords:x,children:e})}export{L as CurrentRecordProvider,E as DeclaredRecordTypeProvider,F as SAMPLE_PICTURE_COUNT,B as SAMPLE_RECORD,S as editorPageDrawsOtherRecord,w as recordFacts,m as recordFieldSpecs,_ as recordPictures,y as useCurrentRecord,C as useCurrentRecordOf,M as useDeclaredRecordType,U as useDrawsOtherRecord};
|
|
@@ -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))),Contents:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Contents/render").then(e=>r(e.ContentsRender))),ContactLocations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ContactLocations/render").then(e=>r(e.ContactLocationsRender))),LocationMap:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LocationMap/render").then(e=>r(e.LocationMapRender))),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))),ProductPrice:t(()=>import("./blocks/commerce/ProductPrice/render.js").then(e=>r(e.ProductPriceRender))),ProductColour:t(()=>import("./blocks/commerce/ProductColour/render.js").then(e=>r(e.ProductColourRender))),ProductSize:t(()=>import("./blocks/commerce/ProductSize/render.js").then(e=>r(e.ProductSizeRender))),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))),MenuLinkBlock:t(()=>import("./blocks/service/MenuLinkBlock/render.js").then(e=>r(e.MenuLinkBlockRender))),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,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))),Contents:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/Contents/render").then(e=>r(e.ContentsRender))),ContactLocations:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/ContactLocations/render").then(e=>r(e.ContactLocationsRender))),LocationMap:t(()=>import("efficient-web-builder/render/lib/document/blocks/general/LocationMap/render").then(e=>r(e.LocationMapRender))),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))),ProductPrice:t(()=>import("./blocks/commerce/ProductPrice/render.js").then(e=>r(e.ProductPriceRender))),ProductColour:t(()=>import("./blocks/commerce/ProductColour/render.js").then(e=>r(e.ProductColourRender))),ProductSize:t(()=>import("./blocks/commerce/ProductSize/render.js").then(e=>r(e.ProductSizeRender))),FitmentPicker:t(()=>import("./blocks/commerce/FitmentPicker/render.js").then(e=>r(e.FitmentPickerRender))),StockFitment:t(()=>import("./blocks/commerce/StockFitment/render.js").then(e=>r(e.StockFitmentRender))),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))),ArticleBody:t(()=>import("./blocks/service/ArticleBody/render.js").then(e=>r(e.ArticleBodyRender))),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))),MenuLinkBlock:t(()=>import("./blocks/service/MenuLinkBlock/render.js").then(e=>r(e.MenuLinkBlockRender))),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)))},c=Object.fromEntries(Object.entries(p).map(([e,o])=>[e,n=>i(o,{...n})]));export{c as LAZY_DRAWS};
|
|
@@ -3,5 +3,6 @@ import "./slot-seeds.js";
|
|
|
3
3
|
import "./card-templates.js";
|
|
4
4
|
import "./section-to-box-rows-reviews.js";
|
|
5
5
|
import "./section-to-box-rows-spec.js";
|
|
6
|
+
import "./section-to-box-rows-detail.js";
|
|
6
7
|
export declare function renderConfig(): Config;
|
|
7
8
|
export declare function headerRenderConfig(): Config;
|
|
@@ -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
|
|
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 f}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"./section-to-box-rows-spec.js";import"./section-to-box-rows-detail.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 p}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 m=null;function l(){if(m)return m;const o={},r=E();for(const e of Object.keys(r))o[e]={...r[e],render:p[e]};const t={...y,...S};for(const e of Object.keys(t))o[e]=k(e,{...t[e],render:p[e]});b(o);const n={root:{render:T},categories:R(),components:o};return h(n),m=n,n}function x(o=l()){const r=o.components,t=Object.keys(r),n=new Set([f]),e=[f];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 W(){if(i)return i;const o=l(),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{W as headerRenderConfig,l as renderConfig};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{SECTION_BOX_SLOT as o,SECTION_BOX_TYPE as i,registerSectionToBox as g}from"efficient-web-builder/render/lib/sections/section-to-box";import{DIM as a,INNER_BOX as r,NO_PAD as m,SAME_KEYS as y,SECTION_BOX as S,TEXT as p}from"efficient-web-builder/render/lib/document/blocks/general/section-to-box-row-parts";import{token as n}from"efficient-web-builder/render/lib/document/blocks/general/section-head-looks";import{CARD_ROW_FIELD_PROP as s}from"efficient-web-builder/format/lib/content/card-template";const c=e=>({textStyle:"body-5",...n("label",e),letterSpacing:.2,case:"upper"}),t=(e,l,d)=>({type:"Text",props:{...l,[s]:e,_partStyles:{text:d}}}),P=e=>({type:i,props:{...r,name:"Row",mirrorCards:e?"odd":"even",direction:"row",share:"equal",align:"center",gap:48,sectionPaddingTop:60,sectionPaddingBottom:60,sectionPaddingTopPhone:60,sectionPaddingBottomPhone:60},slots:{[o]:[{type:i,props:{...r,name:"Words",direction:"column",gap:16},slots:{[o]:[t("eyebrow",p,{...c(13),color:"accent"}),t("title",p,{textStyle:"heading-2",...n("headingMedium",42,28),lineHeight:1.1,letterSpacing:-.02}),t("copy",a,{textStyle:"body-1",...n("body",15),lineHeight:1.6})]}},{type:i,props:{...r,name:"Picture",direction:"column",gap:12},slots:{[o]:[{type:"ImageBlock",props:{[s]:"image",aspect:"1/1",fit:"contain"}},t("tag",{...a,align:"right"},{...c(11),align:"right"})]}}]}}),_={name:"Feature Rows",boxProps:{...S,...m,direction:"column",gap:0},box:y,parts:[{kind:"core",keep:"rest",slots:e=>({template:[P(e.startLeft===!0)]})}]};g({DetailRows:_});export{P as detailRowSeed};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SECTION_BOX_SLOT as
|
|
1
|
+
import{SECTION_BOX_SLOT as s,SECTION_BOX_TYPE as n,headParts as c,registerSectionToBox as m}from"efficient-web-builder/render/lib/sections/section-to-box";import{DIM as a,DROP_COMMON as h,DROP_SIDE_PADDING as g,INNER_BOX as o,SAME_KEYS as P,SECTION_BOX as T,TEXT as e,headingCaseOf as O,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 _}from"efficient-web-builder/format/lib/content/card-template";import{FRAME_OWN_BOX as b}from"../../components/Reviews.js";import{bandRoomBelow as x}from"../sections/section-band.js";const p=x(b),r={top:84,bottom:p.bottom,topPhone:84,bottomPhone:p.bottomPhone},[w,E]=c("Testimonials"),i=(t,d,l)=>({type:"Text",props:{...d,[_]:t,_partStyles:{text:l}}}),R={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:{[s]:[{type:"Text",props:{...e,text:"“",_partStyles:{text:{textStyle:"heading-2",color:"accent",lineHeight:1}}}},i("quote",a,{size:16,lineHeight:1.6}),{type:n,props:{...o,name:"Name",gap:4,sectionPaddingTop:20,sectionBorder:{top:1}},slots:{[s]:[i("name",e,{textStyle:"body-5",weight:500,case:"upper",letterSpacing:.04}),i("role",a,{textStyle:"body-5"})]}}]}},B={name:"Testimonials",boxProps:t=>({...T,direction:"column",gap:44,sectionBorder:{top:1},...y(t,r)}),box:[...P,...S(r)],parts:[{kind:"group",name:"Heading",props:{...o,gap:16},parts:[{...w,props:e},{...E,props:e,style:{textStyle:"heading-2",lineHeight:1,letterSpacing:-.02}}]},{kind:"core",as:"Reviews",keep:["items","columns"],slots:{template:[R]}}],site:O("title"),drop:{...h,...g,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"}};m({Testimonials:B});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SECTION_BOX_SLOT as
|
|
1
|
+
import{SECTION_BOX_SLOT as a,SECTION_BOX_TYPE as m,registerSectionToBox as c}from"efficient-web-builder/render/lib/sections/section-to-box";import{headOnlyRow as l}from"efficient-web-builder/render/lib/document/blocks/general/section-to-box-rows-head";import{DIM as P,INNER_BOX as d,TEXT as g,lineSides as B}from"efficient-web-builder/render/lib/document/blocks/general/section-to-box-row-parts";import{bandRoomBelow as E}from"../sections/section-band.js";import{SPEC_TABLE_BAND as _}from"../sections/spec-table-band.js";import{token as b}from"efficient-web-builder/render/lib/document/blocks/general/section-head-looks";import{CARD_ROW_FIELD_PROP as S}from"efficient-web-builder/format/lib/content/card-template";import{phoneKey as i}from"efficient-easel/draw";const r={textStyle:"body-5",...b("label",14),letterSpacing:.05,lineHeight:1.5},s=(t,e,p)=>({type:"Text",props:{...e,[S]:t,_partStyles:{text:p}}}),T={type:m,props:{...d,name:"Row",direction:"row",justify:"between",align:"start",share:"content",phoneRow:2,[i("share")]:"content",[i("wrap")]:!1,gap:24,sectionPaddingTop:16,sectionPaddingBottom:16,sectionPaddingTopPhone:16,sectionPaddingBottomPhone:16},slots:{[a]:[s("label",P,{...r,case:"upper"}),s("value",{...g,align:"right"},{...r,align:"right"})]}},o=l("SpecTable",{slots:{template:[T]}}),n=E(_.ownBox),h={...o,boxProps:(t,e)=>({...typeof o.boxProps=="function"?o.boxProps(t,e):o.boxProps,sectionPaddingBottom:n.bottom,sectionPaddingBottomPhone:n.bottomPhone,...n.line?{sectionBorder:B({bottom:1})}:{}})};c({SpecTable:h});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as l}from"react/jsx-runtime";import{CatalogFilterProvider as u}from"../../components/catalog/CatalogFilterContext.js";import a from"../../components/CartDrawer.js";import{CartProvider as
|
|
1
|
+
import{jsx as e,jsxs as l}from"react/jsx-runtime";import{CatalogFilterProvider as u}from"../../components/catalog/CatalogFilterContext.js";import a from"../../components/CartDrawer.js";import{CartProvider as f}from"../../components/CartContext.js";import{CurrencyProvider as p}from"../../components/CurrencyContext.js";import{SubscribePopupView as s}from"../../components/SubscribePopup.js";import{ConsentBannerPreview as g}from"../../components/ConsentBanner.js";import{CART_DRAWER_KIND as h,resolveCartDrawerContent as v,resolveCartDrawerLook as P}from"efficient-web-builder/format/lib/content/cart-drawer";import{CONSENT_BANNER_KIND as k,resolveConsentBannerContent as b}from"efficient-web-builder/format/lib/content/consent-banner";import{SITE_FOOTER_KIND as y}from"efficient-web-builder/format/lib/content/footer";import{isPageBackgroundAuthored as C}from"efficient-web-builder/format/lib/content/page-background";import{templateProductKind as _}from"efficient-web-builder/format/lib/content/product-page";import{resolveSubscribeContent as w,SUBSCRIBE_POPUP_KIND as D}from"efficient-web-builder/format/lib/content/subscribe";import{DeclaredRecordTypeProvider as B}from"./current-record.js";import{declaredRecordType as N}from"efficient-web-builder/format/lib/content/record-types";import{PublishedPageFrame as R}from"efficient-web-builder/render/lib/document/page-frame";import{POPUP_PAGE_KIND as S,resolvePopupLook as x}from"efficient-web-builder/format/lib/popup/look";import E from"../../components/PopupFrame.js";import{PreviewProductProvider as K}from"./preview-product.js";import{TemplateProductKindProvider as I}from"./template-product-kind.js";function T(r,n){const{kind:t}=r;if(t===D){const i=w(r);return l("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[n??null,e(s,{inline:!0,content:i})]})}if(t===h){const i=v(r);return l("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[n??null,e(p,{children:e(f,{preview:!0,children:e(a,{content:i,look:P(r)})})})]})}return t===k?l("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[n??null,e(g,{layout:b(r).layout})]}):null}function A(r,n){if(r.kind!==S)return null;const t=e(c,{rootProps:r,children:r.children});if(!n)return t;const i=typeof r.title=="string"&&r.title.trim()?r.title:"Popup";return e(E,{inline:!0,look:x(r),label:i,children:t})}function c({rootProps:r,children:n}){const{kind:t,editor:i,previewProduct:o}=r,d=!!i?.isEditing,m=_(typeof t=="string"?t:"",r);return e(B,{type:N(r),children:e(I,{kind:m,children:e(K,{slug:d?o:null,children:e(u,{children:n})})})})}function tr(r){const n=A(r,!1);if(n)return n;const t=T(r);if(t)return t;const{children:i,pageBackground:o,kind:d}=r;return e(R,{pageBackground:o,inheritBackground:d===y&&!C(o),children:e(c,{rootProps:r,children:i})})}export{c as StorefrontPageProviders,A as drawPopupPage,tr as drawPublishedStorefrontRoot,T as drawSystemPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const s={1:"grid-cols-1",2:"grid-cols-2 max-view-wide:grid-cols-1",3:"grid-cols-3 max-view-wide:grid-cols-1",4:"grid-cols-4 max-view-desktop:grid-cols-2 max-view-wide:grid-cols-1",5:"grid-cols-5 max-view-desktop:grid-cols-2 max-view-wide:grid-cols-1",6:"grid-cols-6 max-view-desktop:grid-cols-3 max-view-wide:grid-cols-1"},c={1:"max-view-wide:grid-cols-1",2:"max-view-wide:grid-cols-2",3:"max-view-wide:grid-cols-3"},d={min:1,max:3};function w(i,e){const t=typeof i=="number"&&Number.isFinite(i)?Math.round(i):4,r=s[Math.min(6,Math.max(1,t))]??s[4];if(typeof e!="number"||!Number.isFinite(e))return r;const o=Math.min(d.max,Math.max(d.min,Math.round(e)));return`${r.split(" ").filter(a=>!a.startsWith("max-view-wide:")).join(" ")} ${c[o]}`}export{d as PRODUCT_GRID_PHONE_COLUMNS,w as productGridColumnsClass};
|
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
export declare const BAND_CAP = "mx-auto max-w-[var(--sf-site-width,1600px)]";
|
|
2
2
|
export declare function bandClassesInBox(classes: string): string;
|
|
3
|
+
export type BandRoomBelow = {
|
|
4
|
+
bottom: number;
|
|
5
|
+
bottomPhone: number;
|
|
6
|
+
line: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare function bandRoomBelow(classes: string): BandRoomBelow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const b="mx-auto max-w-[var(--sf-site-width,1600px)]",l=[/^border(-[tblrxy])?$/,/^border-line$/,/^bg-/,/^mx-auto$/,/^max-w-\[var\(--sf-site-width/,/--sf-site-gutter/,/^p[xytblr]?-(\d+(\.\d+)?|px|\[\d+(\.\d+)?px\])$/];function c(t){const e=t.lastIndexOf(":");return e<0?t:t.slice(e+1)}function p(t){return t.split(/\s+/).filter(e=>e&&!l.some(n=>n.test(c(e)))).join(" ")}const u=new Set(["max-view-desktop","max-view-wide"]);function a(t){const e=/^\[(\d+(?:\.\d+)?)px\]$/.exec(t);return e?Number(e[1]):t==="px"?1:/^\d+(\.\d+)?$/.test(t)?Number(t)*4:void 0}function m(t){let e=0,n,i=!1;for(const o of t.split(/\s+/)){if(!o)continue;const d=o.lastIndexOf(":"),s=d<0?"":o.slice(0,d),f=c(o);!s&&/^border-[by]$/.test(f)&&(i=!0);const x=/^p[by]-(.+)$/.exec(f),r=x?a(x[1]):void 0;r!==void 0&&(s?u.has(s)&&(n=r):e=r)}return{bottom:e,bottomPhone:n??e,line:i}}export{b as BAND_CAP,p as bandClassesInBox,m as bandRoomBelow};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e={inline:"border-b border-line py-[120px] max-view-desktop:py-20",ownBox:"border-b border-line pt-0 pb-[120px] max-view-desktop:pt-0 max-view-desktop:pb-20"};export{e as SPEC_TABLE_BAND};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type StorageLike } from "efficient-web-builder/format/lib/safe-storage";
|
|
2
|
+
import type { StockFitment } from "../api/index.js";
|
|
2
3
|
import { type VehicleSelection } from "./fitment-options.js";
|
|
3
4
|
export declare const VEHICLE_STORAGE_KEY = "storefront-vehicle";
|
|
4
5
|
export interface RememberedVehicleLabels {
|
|
@@ -10,16 +11,28 @@ export interface RememberedVehicle {
|
|
|
10
11
|
vehicle: VehicleSelection;
|
|
11
12
|
labels: RememberedVehicleLabels;
|
|
12
13
|
}
|
|
14
|
+
export interface SharedStockFitment {
|
|
15
|
+
vehicle: VehicleSelection;
|
|
16
|
+
stock: StockFitment | null;
|
|
17
|
+
loading: boolean;
|
|
18
|
+
error: string | null;
|
|
19
|
+
}
|
|
13
20
|
export type VehicleStorage = StorageLike;
|
|
14
21
|
export declare function createVehicleMemory(getStorage: () => VehicleStorage | null): {
|
|
15
22
|
read: () => RememberedVehicle | null;
|
|
16
23
|
write: (value: RememberedVehicle) => void;
|
|
17
24
|
clear: () => void;
|
|
18
25
|
subscribe: (listener: () => void) => () => void;
|
|
26
|
+
readStock: () => SharedStockFitment | null;
|
|
27
|
+
writeStock: (value: SharedStockFitment | null) => void;
|
|
28
|
+
subscribeStock: (listener: () => void) => () => void;
|
|
19
29
|
};
|
|
20
30
|
export declare const storefrontVehicleMemory: {
|
|
21
31
|
read: () => RememberedVehicle | null;
|
|
22
32
|
write: (value: RememberedVehicle) => void;
|
|
23
33
|
clear: () => void;
|
|
24
34
|
subscribe: (listener: () => void) => () => void;
|
|
35
|
+
readStock: () => SharedStockFitment | null;
|
|
36
|
+
writeStock: (value: SharedStockFitment | null) => void;
|
|
37
|
+
subscribeStock: (listener: () => void) => () => void;
|
|
25
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{safeLocalStorage as
|
|
1
|
+
import{safeLocalStorage as a}from"efficient-web-builder/format/lib/safe-storage";import{DEFAULT_VEHICLE as f}from"./fitment-options.js";import{isCompleteVehicle as m}from"./plp-vehicle-params.js";const l="storefront-vehicle";function u(n){if(!n||typeof n!="object")return null;const t=n,o={...f,...t.vehicle??{}};return m(o)?{vehicle:o,labels:{make:t.labels?.make??o.make,model:t.labels?.model??o.model,modification:t.labels?.modification??o.modification}}:null}function d(n){let t;const o=new Set;let r=null;const c=new Set,i=()=>{for(const e of[...c])e()},s=()=>{for(const e of[...o])e()};return{read(){if(t!==void 0)return t;try{const e=n()?.getItem(l);t=e?u(JSON.parse(e)):null}catch{t=null}return t},write(e){t=e;try{n()?.setItem(l,JSON.stringify(e))}catch{}s()},clear(){t=null;try{n()?.removeItem(l)}catch{}s(),r!==null&&(r=null,i())},subscribe(e){return o.add(e),()=>{o.delete(e)}},readStock(){return r},writeStock(e){e!==r&&(r=e,i())},subscribeStock(e){return c.add(e),()=>{c.delete(e)}}}}const k=d(()=>a);export{l as VEHICLE_STORAGE_KEY,d as createVehicleMemory,k as storefrontVehicleMemory};
|