efficient-storefront-blocks 0.57.0 → 0.58.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1111) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/chunks/{EditorPreviewCheckout-7Y7WL5BM.js → EditorPreviewCheckout-4NGRJA3T.js} +1 -1
  3. package/dist/chunks/{SiteEditorProvider-5MWJMLLI.js → SiteEditorProvider-V5FE5UD6.js} +1 -1
  4. package/dist/chunks/{chunk-BPVXTVPM.js → chunk-4AKN63X5.js} +1 -1
  5. package/dist/chunks/chunk-K4AZ5SUU.js +1 -0
  6. package/dist/chunks/chunk-PHH7L5FJ.js +255 -0
  7. package/dist/chunks/{chunk-FSSCNRRE.js → chunk-SJQTKWV3.js} +1 -1
  8. package/dist/chunks/{fitment-data-UVMEA7WW.js → fitment-data-OIWU6HGJ.js} +1 -1
  9. package/dist/editor/components/BlogSource.d.ts +11 -0
  10. package/dist/editor/components/BlogSource.js +1 -0
  11. package/dist/editor/components/CategorySource.d.ts +7 -0
  12. package/dist/editor/components/CategorySource.js +1 -0
  13. package/dist/editor/components/CollectionPicker.d.ts +7 -0
  14. package/dist/editor/components/CollectionPicker.js +1 -0
  15. package/dist/editor/components/ConsentBannerLayoutTiles.d.ts +3 -0
  16. package/dist/editor/components/ConsentBannerLayoutTiles.js +1 -0
  17. package/dist/editor/components/CountryShowAsTiles.d.ts +5 -0
  18. package/dist/editor/components/CountryShowAsTiles.js +1 -0
  19. package/dist/editor/components/EditProductLink.d.ts +1 -0
  20. package/dist/editor/components/EditProductLink.js +1 -0
  21. package/dist/editor/components/EditorCurrencyProvider.d.ts +7 -0
  22. package/dist/editor/components/EditorCurrencyProvider.js +1 -0
  23. package/dist/editor/components/EditorPreviewChat.d.ts +1 -0
  24. package/dist/editor/components/EditorPreviewChat.js +11 -0
  25. package/dist/editor/components/EditorPreviewCheckout.d.ts +1 -0
  26. package/dist/editor/components/EditorPreviewCheckout.js +1 -0
  27. package/dist/editor/components/EditorPreviewSurface.d.ts +5 -0
  28. package/dist/editor/components/EditorPreviewSurface.js +1 -0
  29. package/dist/editor/components/FinishPicker.d.ts +6 -0
  30. package/dist/editor/components/FinishPicker.js +1 -0
  31. package/dist/editor/components/FooterColumnsField.d.ts +6 -0
  32. package/dist/editor/components/FooterColumnsField.js +1 -0
  33. package/dist/editor/components/FooterLogoFillField.d.ts +6 -0
  34. package/dist/editor/components/FooterLogoFillField.js +1 -0
  35. package/dist/editor/components/FooterLogoRowFillField.d.ts +6 -0
  36. package/dist/editor/components/FooterLogoRowFillField.js +1 -0
  37. package/dist/editor/components/FormPicker.d.ts +33 -0
  38. package/dist/editor/components/FormPicker.js +1 -0
  39. package/dist/editor/components/GalleryProductBinding.d.ts +7 -0
  40. package/dist/editor/components/GalleryProductBinding.js +1 -0
  41. package/dist/editor/components/GalleryShowcaseSource.d.ts +7 -0
  42. package/dist/editor/components/GalleryShowcaseSource.js +1 -0
  43. package/dist/editor/components/HeaderSection.d.ts +3 -0
  44. package/dist/editor/components/HeaderSection.js +1 -0
  45. package/dist/editor/components/HeaderSettingsPanel.d.ts +132 -0
  46. package/dist/editor/components/HeaderSettingsPanel.js +1 -0
  47. package/dist/editor/components/MenuLinkRangeField.d.ts +5 -0
  48. package/dist/editor/components/MenuLinkRangeField.js +1 -0
  49. package/dist/editor/components/MenuPicker.d.ts +7 -0
  50. package/dist/editor/components/MenuPicker.js +1 -0
  51. package/dist/editor/components/PerViewStepperField.d.ts +13 -0
  52. package/dist/editor/components/PerViewStepperField.js +1 -0
  53. package/dist/editor/components/PreviewHeader.d.ts +2 -0
  54. package/dist/editor/components/PreviewHeader.js +11 -0
  55. package/dist/editor/components/PreviewHeaderPrimer.d.ts +4 -0
  56. package/dist/editor/components/PreviewHeaderPrimer.js +1 -0
  57. package/dist/editor/components/PreviewMenusPrimer.d.ts +3 -0
  58. package/dist/editor/components/PreviewMenusPrimer.js +1 -0
  59. package/dist/editor/components/PreviewProductPicker.d.ts +20 -0
  60. package/dist/editor/components/PreviewProductPicker.js +1 -0
  61. package/dist/editor/components/ProductHeroSource.d.ts +19 -0
  62. package/dist/editor/components/ProductHeroSource.js +1 -0
  63. package/dist/editor/components/ProductPicker.d.ts +6 -0
  64. package/dist/editor/components/ProductPicker.js +1 -0
  65. package/dist/editor/components/SocialLinksDoor.d.ts +1 -0
  66. package/dist/editor/components/SocialLinksDoor.js +1 -0
  67. package/dist/editor/components/SpecTableSource.d.ts +7 -0
  68. package/dist/editor/components/SpecTableSource.js +1 -0
  69. package/dist/editor/components/StorefrontEditorFurniture.d.ts +6 -0
  70. package/dist/editor/components/StorefrontEditorFurniture.js +1 -0
  71. package/dist/editor/components/StorefrontHeaderPanel.d.ts +2 -0
  72. package/dist/editor/components/StorefrontHeaderPanel.js +1 -0
  73. package/dist/editor/components/StorefrontLinkRows.d.ts +5 -0
  74. package/dist/editor/components/StorefrontLinkRows.js +1 -0
  75. package/dist/editor/components/StorefrontShopRows.d.ts +2 -0
  76. package/dist/editor/components/StorefrontShopRows.js +1 -0
  77. package/dist/editor/components/SwitchToBoxHeader.d.ts +1 -0
  78. package/dist/editor/components/SwitchToBoxHeader.js +1 -0
  79. package/dist/editor/components/WheelsPerRowField.d.ts +6 -0
  80. package/dist/editor/components/WheelsPerRowField.js +1 -0
  81. package/dist/editor/components/useCategoryFilter.d.ts +11 -0
  82. package/dist/editor/components/useCategoryFilter.js +1 -0
  83. package/dist/editor/components/useGridSourceLock.d.ts +1 -0
  84. package/dist/editor/components/useGridSourceLock.js +1 -0
  85. package/dist/editor/components/useStorefrontCategories.d.ts +2 -0
  86. package/dist/editor/components/useStorefrontCategories.js +1 -0
  87. package/dist/editor/components/useStorefrontForms.d.ts +2 -0
  88. package/dist/editor/components/useStorefrontForms.js +1 -0
  89. package/dist/editor/components/useWheelMediaGroups.d.ts +2 -0
  90. package/dist/editor/components/useWheelMediaGroups.js +1 -0
  91. package/dist/editor/lib/api/section-templates.d.ts +43 -0
  92. package/dist/editor/lib/api/section-templates.js +1 -0
  93. package/dist/editor/lib/editor-currency-source.d.ts +11 -0
  94. package/dist/editor/lib/editor-currency-source.js +1 -0
  95. package/dist/editor/lib/efficient-backend.d.ts +21 -0
  96. package/dist/editor/lib/efficient-backend.js +1 -0
  97. package/dist/editor/lib/header-settings-source.d.ts +7 -0
  98. package/dist/editor/lib/header-settings-source.js +1 -0
  99. package/dist/editor/lib/puck/blocks/commerce/AccountBlock/fields.d.ts +2 -0
  100. package/dist/editor/lib/puck/blocks/commerce/AccountBlock/fields.js +1 -0
  101. package/dist/editor/lib/puck/blocks/commerce/AlloyWheelsListing/fields.d.ts +2 -0
  102. package/dist/editor/lib/puck/blocks/commerce/AlloyWheelsListing/fields.js +1 -0
  103. package/dist/editor/lib/puck/blocks/commerce/BundleOffer/fields.d.ts +2 -0
  104. package/dist/editor/lib/puck/blocks/commerce/BundleOffer/fields.js +1 -0
  105. package/dist/editor/lib/puck/blocks/commerce/CartBlock/fields.d.ts +2 -0
  106. package/dist/editor/lib/puck/blocks/commerce/CartBlock/fields.js +1 -0
  107. package/dist/editor/lib/puck/blocks/commerce/CatalogFilterBar/fields.d.ts +2 -0
  108. package/dist/editor/lib/puck/blocks/commerce/CatalogFilterBar/fields.js +1 -0
  109. package/dist/editor/lib/puck/blocks/commerce/CheckoutCTA/fields.d.ts +2 -0
  110. package/dist/editor/lib/puck/blocks/commerce/CheckoutCTA/fields.js +1 -0
  111. package/dist/editor/lib/puck/blocks/commerce/CollectionCard/fields.d.ts +2 -0
  112. package/dist/editor/lib/puck/blocks/commerce/CollectionCard/fields.js +1 -0
  113. package/dist/editor/lib/puck/blocks/commerce/Collections/fields.d.ts +2 -0
  114. package/dist/editor/lib/puck/blocks/commerce/Collections/fields.js +1 -0
  115. package/dist/editor/lib/puck/blocks/commerce/CompatibleTyres/fields.d.ts +2 -0
  116. package/dist/editor/lib/puck/blocks/commerce/CompatibleTyres/fields.js +1 -0
  117. package/dist/editor/lib/puck/blocks/commerce/CountrySwitchBlock/fields.d.ts +2 -0
  118. package/dist/editor/lib/puck/blocks/commerce/CountrySwitchBlock/fields.js +1 -0
  119. package/dist/editor/lib/puck/blocks/commerce/DeliveryOptions/fields.d.ts +2 -0
  120. package/dist/editor/lib/puck/blocks/commerce/DeliveryOptions/fields.js +1 -0
  121. package/dist/editor/lib/puck/blocks/commerce/DetailRows/fields.d.ts +2 -0
  122. package/dist/editor/lib/puck/blocks/commerce/DetailRows/fields.js +1 -0
  123. package/dist/editor/lib/puck/blocks/commerce/EuTyreLabel/fields.d.ts +2 -0
  124. package/dist/editor/lib/puck/blocks/commerce/EuTyreLabel/fields.js +1 -0
  125. package/dist/editor/lib/puck/blocks/commerce/FitmentFinder/fields.d.ts +2 -0
  126. package/dist/editor/lib/puck/blocks/commerce/FitmentFinder/fields.js +1 -0
  127. package/dist/editor/lib/puck/blocks/commerce/FitmentTable/fields.d.ts +2 -0
  128. package/dist/editor/lib/puck/blocks/commerce/FitmentTable/fields.js +1 -0
  129. package/dist/editor/lib/puck/blocks/commerce/Gallery/fields.d.ts +2 -0
  130. package/dist/editor/lib/puck/blocks/commerce/Gallery/fields.js +1 -0
  131. package/dist/editor/lib/puck/blocks/commerce/GalleryB/fields.d.ts +2 -0
  132. package/dist/editor/lib/puck/blocks/commerce/GalleryB/fields.js +1 -0
  133. package/dist/editor/lib/puck/blocks/commerce/GalleryItem/fields.d.ts +2 -0
  134. package/dist/editor/lib/puck/blocks/commerce/GalleryItem/fields.js +1 -0
  135. package/dist/editor/lib/puck/blocks/commerce/Header/fields.d.ts +2 -0
  136. package/dist/editor/lib/puck/blocks/commerce/Header/fields.js +1 -0
  137. package/dist/editor/lib/puck/blocks/commerce/ProductGrid/fields.d.ts +2 -0
  138. package/dist/editor/lib/puck/blocks/commerce/ProductGrid/fields.js +1 -0
  139. package/dist/editor/lib/puck/blocks/commerce/ProductHero/fields.d.ts +2 -0
  140. package/dist/editor/lib/puck/blocks/commerce/ProductHero/fields.js +1 -0
  141. package/dist/editor/lib/puck/blocks/commerce/ProductRef/fields.d.ts +2 -0
  142. package/dist/editor/lib/puck/blocks/commerce/ProductRef/fields.js +1 -0
  143. package/dist/editor/lib/puck/blocks/commerce/RelatedProducts/fields.d.ts +2 -0
  144. package/dist/editor/lib/puck/blocks/commerce/RelatedProducts/fields.js +1 -0
  145. package/dist/editor/lib/puck/blocks/commerce/SearchBlock/fields.d.ts +2 -0
  146. package/dist/editor/lib/puck/blocks/commerce/SearchBlock/fields.js +1 -0
  147. package/dist/editor/lib/puck/blocks/commerce/SpecTable/fields.d.ts +2 -0
  148. package/dist/editor/lib/puck/blocks/commerce/SpecTable/fields.js +1 -0
  149. package/dist/editor/lib/puck/blocks/commerce/ThemeSwitchBlock/fields.d.ts +2 -0
  150. package/dist/editor/lib/puck/blocks/commerce/ThemeSwitchBlock/fields.js +1 -0
  151. package/dist/editor/lib/puck/blocks/commerce/TyreFitment/fields.d.ts +2 -0
  152. package/dist/editor/lib/puck/blocks/commerce/TyreFitment/fields.js +1 -0
  153. package/dist/editor/lib/puck/blocks/commerce/TyreSizes/fields.d.ts +2 -0
  154. package/dist/editor/lib/puck/blocks/commerce/TyreSizes/fields.js +1 -0
  155. package/dist/editor/lib/puck/blocks/commerce/controls.d.ts +15 -0
  156. package/dist/editor/lib/puck/blocks/commerce/controls.js +1 -0
  157. package/dist/editor/lib/puck/blocks/commerce/index.d.ts +1 -0
  158. package/dist/editor/lib/puck/blocks/commerce/index.js +1 -0
  159. package/dist/editor/lib/puck/blocks/commerce/page-rules.d.ts +8 -0
  160. package/dist/editor/lib/puck/blocks/commerce/page-rules.js +1 -0
  161. package/dist/editor/lib/puck/blocks/commerce/shared-fields.d.ts +5 -0
  162. package/dist/editor/lib/puck/blocks/commerce/shared-fields.js +1 -0
  163. package/dist/editor/lib/puck/blocks/service/AppointmentBooking/fields.d.ts +2 -0
  164. package/dist/editor/lib/puck/blocks/service/AppointmentBooking/fields.js +1 -0
  165. package/dist/editor/lib/puck/blocks/service/BookingBox/fields.d.ts +2 -0
  166. package/dist/editor/lib/puck/blocks/service/BookingBox/fields.js +1 -0
  167. package/dist/editor/lib/puck/blocks/service/ContactRouting/fields.d.ts +2 -0
  168. package/dist/editor/lib/puck/blocks/service/ContactRouting/fields.js +1 -0
  169. package/dist/editor/lib/puck/blocks/service/Events/fields.d.ts +2 -0
  170. package/dist/editor/lib/puck/blocks/service/Events/fields.js +1 -0
  171. package/dist/editor/lib/puck/blocks/service/Footer/fields.d.ts +2 -0
  172. package/dist/editor/lib/puck/blocks/service/Footer/fields.js +1 -0
  173. package/dist/editor/lib/puck/blocks/service/FooterDivider/fields.d.ts +2 -0
  174. package/dist/editor/lib/puck/blocks/service/FooterDivider/fields.js +1 -0
  175. package/dist/editor/lib/puck/blocks/service/FooterEmailSignup/fields.d.ts +2 -0
  176. package/dist/editor/lib/puck/blocks/service/FooterEmailSignup/fields.js +1 -0
  177. package/dist/editor/lib/puck/blocks/service/FooterGroup/fields.d.ts +2 -0
  178. package/dist/editor/lib/puck/blocks/service/FooterGroup/fields.js +1 -0
  179. package/dist/editor/lib/puck/blocks/service/FooterLogo/fields.d.ts +2 -0
  180. package/dist/editor/lib/puck/blocks/service/FooterLogo/fields.js +1 -0
  181. package/dist/editor/lib/puck/blocks/service/FooterMenu/fields.d.ts +2 -0
  182. package/dist/editor/lib/puck/blocks/service/FooterMenu/fields.js +1 -0
  183. package/dist/editor/lib/puck/blocks/service/FooterSocial/fields.d.ts +2 -0
  184. package/dist/editor/lib/puck/blocks/service/FooterSocial/fields.js +1 -0
  185. package/dist/editor/lib/puck/blocks/service/FooterText/fields.d.ts +2 -0
  186. package/dist/editor/lib/puck/blocks/service/FooterText/fields.js +1 -0
  187. package/dist/editor/lib/puck/blocks/service/Form/fields.d.ts +2 -0
  188. package/dist/editor/lib/puck/blocks/service/Form/fields.js +1 -0
  189. package/dist/editor/lib/puck/blocks/service/LegalLineBlock/fields.d.ts +2 -0
  190. package/dist/editor/lib/puck/blocks/service/LegalLineBlock/fields.js +1 -0
  191. package/dist/editor/lib/puck/blocks/service/ReviewForm/fields.d.ts +2 -0
  192. package/dist/editor/lib/puck/blocks/service/ReviewForm/fields.js +1 -0
  193. package/dist/editor/lib/puck/blocks/service/Reviews/fields.d.ts +2 -0
  194. package/dist/editor/lib/puck/blocks/service/Reviews/fields.js +1 -0
  195. package/dist/editor/lib/puck/blocks/service/SiteFooter/fields.d.ts +2 -0
  196. package/dist/editor/lib/puck/blocks/service/SiteFooter/fields.js +1 -0
  197. package/dist/editor/lib/puck/blocks/service/SiteHeader/fields.d.ts +2 -0
  198. package/dist/editor/lib/puck/blocks/service/SiteHeader/fields.js +1 -0
  199. package/dist/editor/lib/puck/blocks/service/SubmitBox/fields.d.ts +2 -0
  200. package/dist/editor/lib/puck/blocks/service/SubmitBox/fields.js +1 -0
  201. package/dist/editor/lib/puck/blocks/service/SubmitBuild/fields.d.ts +2 -0
  202. package/dist/editor/lib/puck/blocks/service/SubmitBuild/fields.js +1 -0
  203. package/dist/editor/lib/puck/blocks/service/Subscribe/fields.d.ts +2 -0
  204. package/dist/editor/lib/puck/blocks/service/Subscribe/fields.js +1 -0
  205. package/dist/editor/lib/puck/blocks/service/SubscribeBlogs/fields.d.ts +2 -0
  206. package/dist/editor/lib/puck/blocks/service/SubscribeBlogs/fields.js +1 -0
  207. package/dist/editor/lib/puck/blocks/service/controls.d.ts +2 -0
  208. package/dist/editor/lib/puck/blocks/service/controls.js +1 -0
  209. package/dist/editor/lib/puck/blocks/service/index.d.ts +1 -0
  210. package/dist/editor/lib/puck/blocks/service/index.js +1 -0
  211. package/dist/editor/lib/puck/blocks/service/placeholders.d.ts +1 -0
  212. package/dist/editor/lib/puck/blocks/service/placeholders.js +1 -0
  213. package/dist/editor/lib/puck/box-header-for-site.d.ts +9 -0
  214. package/dist/editor/lib/puck/box-header-for-site.js +1 -0
  215. package/dist/editor/lib/puck/box-header.d.ts +52 -0
  216. package/dist/editor/lib/puck/box-header.js +1 -0
  217. package/dist/editor/lib/puck/config.d.ts +73 -0
  218. package/dist/editor/lib/puck/config.js +1 -0
  219. package/dist/editor/lib/say-with.d.ts +2 -0
  220. package/dist/editor/lib/say-with.js +1 -0
  221. package/dist/editor/lib/storefront-document.d.ts +2 -0
  222. package/dist/editor/lib/storefront-document.js +1 -0
  223. package/dist/editor/lib/storefront-editor-words.d.ts +693 -0
  224. package/dist/editor/lib/storefront-editor-words.js +1 -0
  225. package/dist/editor/lib/storefront-editor.d.ts +9 -0
  226. package/dist/editor/lib/storefront-editor.js +1 -0
  227. package/dist/editor/lib/storefront-shop-surfaces.d.ts +8 -0
  228. package/dist/editor/lib/storefront-shop-surfaces.js +1 -0
  229. package/dist/editor/lib/use-prime-and-refresh.d.ts +16 -0
  230. package/dist/editor/lib/use-prime-and-refresh.js +1 -0
  231. package/dist/editor.css +1 -1
  232. package/dist/index.d.ts +14 -0
  233. package/dist/index.js +69 -52
  234. package/dist/render/app/fonts/archivo/OFL.txt +93 -0
  235. package/dist/render/app/fonts/archivo/latin-ext-italic.woff2 +0 -0
  236. package/dist/render/app/fonts/archivo/latin-ext.woff2 +0 -0
  237. package/dist/render/app/fonts/archivo/latin-italic.woff2 +0 -0
  238. package/dist/render/app/fonts/archivo/latin.woff2 +0 -0
  239. package/dist/render/app/fonts/archivo/vietnamese-italic.woff2 +0 -0
  240. package/dist/render/app/fonts/archivo/vietnamese.woff2 +0 -0
  241. package/dist/render/app/fonts/assistant/OFL.txt +95 -0
  242. package/dist/render/app/fonts/assistant/hebrew.woff2 +0 -0
  243. package/dist/render/app/fonts/assistant/latin-ext.woff2 +0 -0
  244. package/dist/render/app/fonts/assistant/latin.woff2 +0 -0
  245. package/dist/render/app/fonts/big-shoulders/OFL.txt +93 -0
  246. package/dist/render/app/fonts/big-shoulders/latin-ext.woff2 +0 -0
  247. package/dist/render/app/fonts/big-shoulders/latin.woff2 +0 -0
  248. package/dist/render/app/fonts/big-shoulders/vietnamese.woff2 +0 -0
  249. package/dist/render/app/fonts/cormorant/OFL.txt +93 -0
  250. package/dist/render/app/fonts/cormorant/cyrillic-ext-italic.woff2 +0 -0
  251. package/dist/render/app/fonts/cormorant/cyrillic-ext.woff2 +0 -0
  252. package/dist/render/app/fonts/cormorant/cyrillic-italic.woff2 +0 -0
  253. package/dist/render/app/fonts/cormorant/cyrillic.woff2 +0 -0
  254. package/dist/render/app/fonts/cormorant/latin-ext-italic.woff2 +0 -0
  255. package/dist/render/app/fonts/cormorant/latin-ext.woff2 +0 -0
  256. package/dist/render/app/fonts/cormorant/latin-italic.woff2 +0 -0
  257. package/dist/render/app/fonts/cormorant/latin.woff2 +0 -0
  258. package/dist/render/app/fonts/cormorant/vietnamese-italic.woff2 +0 -0
  259. package/dist/render/app/fonts/cormorant/vietnamese.woff2 +0 -0
  260. package/dist/render/app/fonts/dm-sans/OFL.txt +93 -0
  261. package/dist/render/app/fonts/dm-sans/latin-ext-italic.woff2 +0 -0
  262. package/dist/render/app/fonts/dm-sans/latin-ext.woff2 +0 -0
  263. package/dist/render/app/fonts/dm-sans/latin-italic.woff2 +0 -0
  264. package/dist/render/app/fonts/dm-sans/latin.woff2 +0 -0
  265. package/dist/render/app/fonts/fallbacks.css +133 -0
  266. package/dist/render/app/fonts/fraunces/OFL.txt +93 -0
  267. package/dist/render/app/fonts/fraunces/latin-ext-italic.woff2 +0 -0
  268. package/dist/render/app/fonts/fraunces/latin-ext.woff2 +0 -0
  269. package/dist/render/app/fonts/fraunces/latin-italic.woff2 +0 -0
  270. package/dist/render/app/fonts/fraunces/latin.woff2 +0 -0
  271. package/dist/render/app/fonts/fraunces/vietnamese-italic.woff2 +0 -0
  272. package/dist/render/app/fonts/fraunces/vietnamese.woff2 +0 -0
  273. package/dist/render/app/fonts/inter/OFL.txt +93 -0
  274. package/dist/render/app/fonts/inter/cyrillic-ext-italic.woff2 +0 -0
  275. package/dist/render/app/fonts/inter/cyrillic-ext.woff2 +0 -0
  276. package/dist/render/app/fonts/inter/cyrillic-italic.woff2 +0 -0
  277. package/dist/render/app/fonts/inter/cyrillic.woff2 +0 -0
  278. package/dist/render/app/fonts/inter/greek-ext-italic.woff2 +0 -0
  279. package/dist/render/app/fonts/inter/greek-ext.woff2 +0 -0
  280. package/dist/render/app/fonts/inter/greek-italic.woff2 +0 -0
  281. package/dist/render/app/fonts/inter/greek.woff2 +0 -0
  282. package/dist/render/app/fonts/inter/latin-ext-italic.woff2 +0 -0
  283. package/dist/render/app/fonts/inter/latin-ext.woff2 +0 -0
  284. package/dist/render/app/fonts/inter/latin-italic.woff2 +0 -0
  285. package/dist/render/app/fonts/inter/latin.woff2 +0 -0
  286. package/dist/render/app/fonts/inter/vietnamese-italic.woff2 +0 -0
  287. package/dist/render/app/fonts/inter/vietnamese.woff2 +0 -0
  288. package/dist/render/app/fonts/jetbrains-mono/OFL.txt +93 -0
  289. package/dist/render/app/fonts/jetbrains-mono/cyrillic-ext-italic.woff2 +0 -0
  290. package/dist/render/app/fonts/jetbrains-mono/cyrillic-ext.woff2 +0 -0
  291. package/dist/render/app/fonts/jetbrains-mono/cyrillic-italic.woff2 +0 -0
  292. package/dist/render/app/fonts/jetbrains-mono/cyrillic.woff2 +0 -0
  293. package/dist/render/app/fonts/jetbrains-mono/greek-italic.woff2 +0 -0
  294. package/dist/render/app/fonts/jetbrains-mono/greek.woff2 +0 -0
  295. package/dist/render/app/fonts/jetbrains-mono/latin-ext-italic.woff2 +0 -0
  296. package/dist/render/app/fonts/jetbrains-mono/latin-ext.woff2 +0 -0
  297. package/dist/render/app/fonts/jetbrains-mono/latin-italic.woff2 +0 -0
  298. package/dist/render/app/fonts/jetbrains-mono/latin.woff2 +0 -0
  299. package/dist/render/app/fonts/jetbrains-mono/vietnamese-italic.woff2 +0 -0
  300. package/dist/render/app/fonts/jetbrains-mono/vietnamese.woff2 +0 -0
  301. package/dist/render/app/fonts/manrope/OFL.txt +93 -0
  302. package/dist/render/app/fonts/manrope/cyrillic-ext.woff2 +0 -0
  303. package/dist/render/app/fonts/manrope/cyrillic.woff2 +0 -0
  304. package/dist/render/app/fonts/manrope/greek.woff2 +0 -0
  305. package/dist/render/app/fonts/manrope/latin-ext.woff2 +0 -0
  306. package/dist/render/app/fonts/manrope/latin.woff2 +0 -0
  307. package/dist/render/app/fonts/manrope/vietnamese.woff2 +0 -0
  308. package/dist/render/app/fonts/michroma/OFL.txt +93 -0
  309. package/dist/render/app/fonts/michroma/latin-ext.woff2 +0 -0
  310. package/dist/render/app/fonts/michroma/latin.woff2 +0 -0
  311. package/dist/render/app/fonts/oswald/OFL.txt +93 -0
  312. package/dist/render/app/fonts/oswald/cyrillic-ext.woff2 +0 -0
  313. package/dist/render/app/fonts/oswald/cyrillic.woff2 +0 -0
  314. package/dist/render/app/fonts/oswald/latin-ext.woff2 +0 -0
  315. package/dist/render/app/fonts/oswald/latin.woff2 +0 -0
  316. package/dist/render/app/fonts/oswald/vietnamese.woff2 +0 -0
  317. package/dist/render/app/fonts/outfit/OFL.txt +93 -0
  318. package/dist/render/app/fonts/outfit/latin-ext.woff2 +0 -0
  319. package/dist/render/app/fonts/outfit/latin.woff2 +0 -0
  320. package/dist/render/app/fonts/playfair-display/OFL.txt +93 -0
  321. package/dist/render/app/fonts/playfair-display/cyrillic-italic.woff2 +0 -0
  322. package/dist/render/app/fonts/playfair-display/cyrillic.woff2 +0 -0
  323. package/dist/render/app/fonts/playfair-display/latin-ext-italic.woff2 +0 -0
  324. package/dist/render/app/fonts/playfair-display/latin-ext.woff2 +0 -0
  325. package/dist/render/app/fonts/playfair-display/latin-italic.woff2 +0 -0
  326. package/dist/render/app/fonts/playfair-display/latin.woff2 +0 -0
  327. package/dist/render/app/fonts/playfair-display/vietnamese-italic.woff2 +0 -0
  328. package/dist/render/app/fonts/playfair-display/vietnamese.woff2 +0 -0
  329. package/dist/render/app/fonts/poppins/OFL.txt +93 -0
  330. package/dist/render/app/fonts/poppins/devanagari-400.woff2 +0 -0
  331. package/dist/render/app/fonts/poppins/devanagari-500.woff2 +0 -0
  332. package/dist/render/app/fonts/poppins/devanagari-600.woff2 +0 -0
  333. package/dist/render/app/fonts/poppins/devanagari-italic-400.woff2 +0 -0
  334. package/dist/render/app/fonts/poppins/devanagari-italic-500.woff2 +0 -0
  335. package/dist/render/app/fonts/poppins/devanagari-italic-600.woff2 +0 -0
  336. package/dist/render/app/fonts/poppins/latin-400.woff2 +0 -0
  337. package/dist/render/app/fonts/poppins/latin-500.woff2 +0 -0
  338. package/dist/render/app/fonts/poppins/latin-600.woff2 +0 -0
  339. package/dist/render/app/fonts/poppins/latin-ext-400.woff2 +0 -0
  340. package/dist/render/app/fonts/poppins/latin-ext-500.woff2 +0 -0
  341. package/dist/render/app/fonts/poppins/latin-ext-600.woff2 +0 -0
  342. package/dist/render/app/fonts/poppins/latin-ext-italic-400.woff2 +0 -0
  343. package/dist/render/app/fonts/poppins/latin-ext-italic-500.woff2 +0 -0
  344. package/dist/render/app/fonts/poppins/latin-ext-italic-600.woff2 +0 -0
  345. package/dist/render/app/fonts/poppins/latin-italic-400.woff2 +0 -0
  346. package/dist/render/app/fonts/poppins/latin-italic-500.woff2 +0 -0
  347. package/dist/render/app/fonts/poppins/latin-italic-600.woff2 +0 -0
  348. package/dist/render/app/fonts/sora/OFL.txt +93 -0
  349. package/dist/render/app/fonts/sora/latin-ext.woff2 +0 -0
  350. package/dist/render/app/fonts/sora/latin.woff2 +0 -0
  351. package/dist/render/app/fonts/space-grotesk/OFL.txt +93 -0
  352. package/dist/render/app/fonts/space-grotesk/latin-ext.woff2 +0 -0
  353. package/dist/render/app/fonts/space-grotesk/latin.woff2 +0 -0
  354. package/dist/render/app/fonts/space-grotesk/vietnamese.woff2 +0 -0
  355. package/dist/render/app/globals.css +3264 -0
  356. package/dist/render/built-with.json +3 -0
  357. package/dist/render/components/AppointmentBooking.d.ts +14 -0
  358. package/dist/render/components/AppointmentBooking.js +1 -0
  359. package/dist/render/components/AssistantChatMount.d.ts +8 -0
  360. package/dist/render/components/AssistantChatMount.js +1 -0
  361. package/dist/render/components/AssistantChatPanel.d.ts +7 -0
  362. package/dist/render/components/AssistantChatPanel.js +1 -0
  363. package/dist/render/components/BoxHeaderBar.d.ts +10 -0
  364. package/dist/render/components/BoxHeaderBar.js +1 -0
  365. package/dist/render/components/BrandPlate.d.ts +4 -0
  366. package/dist/render/components/BrandPlate.js +1 -0
  367. package/dist/render/components/BundleCard.d.ts +6 -0
  368. package/dist/render/components/BundleCard.js +1 -0
  369. package/dist/render/components/CartContext.d.ts +91 -0
  370. package/dist/render/components/CartContext.js +1 -0
  371. package/dist/render/components/CartDrawer.d.ts +12 -0
  372. package/dist/render/components/CartDrawer.js +4 -0
  373. package/dist/render/components/CartLineThumbnail.d.ts +8 -0
  374. package/dist/render/components/CartLineThumbnail.js +1 -0
  375. package/dist/render/components/CatalogFilterBarSection.d.ts +12 -0
  376. package/dist/render/components/CatalogFilterBarSection.js +1 -0
  377. package/dist/render/components/ChatContext.d.ts +23 -0
  378. package/dist/render/components/ChatContext.js +1 -0
  379. package/dist/render/components/ChatLauncher.d.ts +18 -0
  380. package/dist/render/components/ChatLauncher.js +1 -0
  381. package/dist/render/components/ChatWidget.d.ts +12 -0
  382. package/dist/render/components/ChatWidget.js +1 -0
  383. package/dist/render/components/CheckoutCTA.d.ts +12 -0
  384. package/dist/render/components/CheckoutCTA.js +1 -0
  385. package/dist/render/components/CollectionCard.d.ts +27 -0
  386. package/dist/render/components/CollectionCard.js +1 -0
  387. package/dist/render/components/Collections.d.ts +17 -0
  388. package/dist/render/components/Collections.js +1 -0
  389. package/dist/render/components/CompatibleTyres.d.ts +23 -0
  390. package/dist/render/components/CompatibleTyres.js +1 -0
  391. package/dist/render/components/ConsentBanner.d.ts +20 -0
  392. package/dist/render/components/ConsentBanner.js +1 -0
  393. package/dist/render/components/ConsentContext.d.ts +22 -0
  394. package/dist/render/components/ConsentContext.js +1 -0
  395. package/dist/render/components/ConsentPanel.d.ts +15 -0
  396. package/dist/render/components/ConsentPanel.js +1 -0
  397. package/dist/render/components/ConsentProvider.d.ts +7 -0
  398. package/dist/render/components/ConsentProvider.js +1 -0
  399. package/dist/render/components/ContactRouting.d.ts +33 -0
  400. package/dist/render/components/ContactRouting.js +1 -0
  401. package/dist/render/components/CountrySelect.d.ts +7 -0
  402. package/dist/render/components/CountrySelect.js +1 -0
  403. package/dist/render/components/CouponField.d.ts +3 -0
  404. package/dist/render/components/CouponField.js +1 -0
  405. package/dist/render/components/CurrencyContext.d.ts +27 -0
  406. package/dist/render/components/CurrencyContext.js +1 -0
  407. package/dist/render/components/DeliveryOptions.d.ts +18 -0
  408. package/dist/render/components/DeliveryOptions.js +1 -0
  409. package/dist/render/components/DeliveryOptionsSource.d.ts +8 -0
  410. package/dist/render/components/DeliveryOptionsSource.js +1 -0
  411. package/dist/render/components/DetailRows.d.ts +22 -0
  412. package/dist/render/components/DetailRows.js +1 -0
  413. package/dist/render/components/DimensionArrowMarkers.d.ts +3 -0
  414. package/dist/render/components/DimensionArrowMarkers.js +1 -0
  415. package/dist/render/components/EditorCurrencyNoticeContext.d.ts +7 -0
  416. package/dist/render/components/EditorCurrencyNoticeContext.js +1 -0
  417. package/dist/render/components/EmailCaptureForm.d.ts +15 -0
  418. package/dist/render/components/EmailCaptureForm.js +1 -0
  419. package/dist/render/components/EnglishVariant.d.ts +7 -0
  420. package/dist/render/components/EnglishVariant.js +1 -0
  421. package/dist/render/components/EuTyreLabelCard.d.ts +4 -0
  422. package/dist/render/components/EuTyreLabelCard.js +1 -0
  423. package/dist/render/components/EuTyreLabels.d.ts +7 -0
  424. package/dist/render/components/EuTyreLabels.js +1 -0
  425. package/dist/render/components/Events.d.ts +62 -0
  426. package/dist/render/components/Events.js +1 -0
  427. package/dist/render/components/FinishSwatches.d.ts +14 -0
  428. package/dist/render/components/FinishSwatches.js +1 -0
  429. package/dist/render/components/FitmentTable.d.ts +17 -0
  430. package/dist/render/components/FitmentTable.js +1 -0
  431. package/dist/render/components/FooterDivider.d.ts +6 -0
  432. package/dist/render/components/FooterDivider.js +1 -0
  433. package/dist/render/components/FooterEmailSignup.d.ts +6 -0
  434. package/dist/render/components/FooterEmailSignup.js +1 -0
  435. package/dist/render/components/FooterGroup.d.ts +8 -0
  436. package/dist/render/components/FooterGroup.js +1 -0
  437. package/dist/render/components/FooterLogo.d.ts +13 -0
  438. package/dist/render/components/FooterLogo.js +1 -0
  439. package/dist/render/components/FooterMenu.d.ts +25 -0
  440. package/dist/render/components/FooterMenu.js +1 -0
  441. package/dist/render/components/FooterSection.d.ts +11 -0
  442. package/dist/render/components/FooterSection.js +1 -0
  443. package/dist/render/components/FooterSocial.d.ts +16 -0
  444. package/dist/render/components/FooterSocial.js +1 -0
  445. package/dist/render/components/FooterText.d.ts +7 -0
  446. package/dist/render/components/FooterText.js +1 -0
  447. package/dist/render/components/FormBlock.d.ts +19 -0
  448. package/dist/render/components/FormBlock.js +1 -0
  449. package/dist/render/components/GalleryCard.d.ts +28 -0
  450. package/dist/render/components/GalleryCard.js +1 -0
  451. package/dist/render/components/GalleryGrid.d.ts +20 -0
  452. package/dist/render/components/GalleryGrid.js +1 -0
  453. package/dist/render/components/GalleryItem.d.ts +41 -0
  454. package/dist/render/components/GalleryItem.js +1 -0
  455. package/dist/render/components/GalleryShowcase.d.ts +51 -0
  456. package/dist/render/components/GalleryShowcase.js +1 -0
  457. package/dist/render/components/Header.d.ts +13 -0
  458. package/dist/render/components/Header.js +1 -0
  459. package/dist/render/components/HeaderNavItem.d.ts +17 -0
  460. package/dist/render/components/HeaderNavItem.js +1 -0
  461. package/dist/render/components/HeaderToolBlocks.d.ts +18 -0
  462. package/dist/render/components/HeaderToolBlocks.js +1 -0
  463. package/dist/render/components/HeaderTools.d.ts +21 -0
  464. package/dist/render/components/HeaderTools.js +1 -0
  465. package/dist/render/components/LegalLine.d.ts +4 -0
  466. package/dist/render/components/LegalLine.js +1 -0
  467. package/dist/render/components/Lightbox.d.ts +19 -0
  468. package/dist/render/components/Lightbox.js +1 -0
  469. package/dist/render/components/LinkedProductHero.d.ts +34 -0
  470. package/dist/render/components/LinkedProductHero.js +1 -0
  471. package/dist/render/components/LiveSiteMapsProvider.d.ts +6 -0
  472. package/dist/render/components/LiveSiteMapsProvider.js +1 -0
  473. package/dist/render/components/MenuPlaceholderLabel.d.ts +1 -0
  474. package/dist/render/components/MenuPlaceholderLabel.js +1 -0
  475. package/dist/render/components/NoCurrencyNote.d.ts +4 -0
  476. package/dist/render/components/NoCurrencyNote.js +1 -0
  477. package/dist/render/components/PreOrderPanel.d.ts +5 -0
  478. package/dist/render/components/PreOrderPanel.js +1 -0
  479. package/dist/render/components/PreviewMenusContext.d.ts +13 -0
  480. package/dist/render/components/PreviewMenusContext.js +1 -0
  481. package/dist/render/components/ProductCard.d.ts +6 -0
  482. package/dist/render/components/ProductCard.js +1 -0
  483. package/dist/render/components/ProductCardChrome.d.ts +37 -0
  484. package/dist/render/components/ProductCardChrome.js +1 -0
  485. package/dist/render/components/ProductCardEyebrow.d.ts +14 -0
  486. package/dist/render/components/ProductCardEyebrow.js +1 -0
  487. package/dist/render/components/ProductGridSection.d.ts +65 -0
  488. package/dist/render/components/ProductGridSection.js +1 -0
  489. package/dist/render/components/ProductHeroPanel.d.ts +22 -0
  490. package/dist/render/components/ProductHeroPanel.js +1 -0
  491. package/dist/render/components/ProductLightbox.d.ts +5 -0
  492. package/dist/render/components/ProductLightbox.js +1 -0
  493. package/dist/render/components/ProductRef.d.ts +16 -0
  494. package/dist/render/components/ProductRef.js +1 -0
  495. package/dist/render/components/PublishedFooter.d.ts +16 -0
  496. package/dist/render/components/PublishedFooter.js +1 -0
  497. package/dist/render/components/PublishedHeader.d.ts +4 -0
  498. package/dist/render/components/PublishedHeader.js +1 -0
  499. package/dist/render/components/QuantityStepper.d.ts +7 -0
  500. package/dist/render/components/QuantityStepper.js +1 -0
  501. package/dist/render/components/QuoteLink.d.ts +4 -0
  502. package/dist/render/components/QuoteLink.js +1 -0
  503. package/dist/render/components/ReviewForm.d.ts +8 -0
  504. package/dist/render/components/ReviewForm.js +1 -0
  505. package/dist/render/components/Reviews.d.ts +12 -0
  506. package/dist/render/components/Reviews.js +1 -0
  507. package/dist/render/components/SearchContext.d.ts +13 -0
  508. package/dist/render/components/SearchContext.js +1 -0
  509. package/dist/render/components/SectionBand.d.ts +9 -0
  510. package/dist/render/components/SectionBand.js +1 -0
  511. package/dist/render/components/SectionFootnote.d.ts +5 -0
  512. package/dist/render/components/SectionFootnote.js +1 -0
  513. package/dist/render/components/SectionGroupBody.d.ts +9 -0
  514. package/dist/render/components/SectionGroupBody.js +1 -0
  515. package/dist/render/components/SectionNotice.d.ts +7 -0
  516. package/dist/render/components/SectionNotice.js +1 -0
  517. package/dist/render/components/SiteRecordContext.d.ts +17 -0
  518. package/dist/render/components/SiteRecordContext.js +1 -0
  519. package/dist/render/components/SiteSwitch.d.ts +10 -0
  520. package/dist/render/components/SiteSwitch.js +1 -0
  521. package/dist/render/components/SpecTable.d.ts +18 -0
  522. package/dist/render/components/SpecTable.js +1 -0
  523. package/dist/render/components/SpecTablePartBridge.d.ts +5 -0
  524. package/dist/render/components/SpecTablePartBridge.js +1 -0
  525. package/dist/render/components/StorefrontProviders.d.ts +15 -0
  526. package/dist/render/components/StorefrontProviders.js +1 -0
  527. package/dist/render/components/SubmitBuild.d.ts +23 -0
  528. package/dist/render/components/SubmitBuild.js +1 -0
  529. package/dist/render/components/Subscribe.d.ts +27 -0
  530. package/dist/render/components/Subscribe.js +1 -0
  531. package/dist/render/components/SubscribePopup.d.ts +19 -0
  532. package/dist/render/components/SubscribePopup.js +7 -0
  533. package/dist/render/components/SubscribePopupContext.d.ts +33 -0
  534. package/dist/render/components/SubscribePopupContext.js +1 -0
  535. package/dist/render/components/ThemeToggle.d.ts +1 -0
  536. package/dist/render/components/ThemeToggle.js +1 -0
  537. package/dist/render/components/ThemedSelect.d.ts +59 -0
  538. package/dist/render/components/ThemedSelect.js +1 -0
  539. package/dist/render/components/TyreCard.d.ts +19 -0
  540. package/dist/render/components/TyreCard.js +1 -0
  541. package/dist/render/components/TyreFitVerdicts.d.ts +7 -0
  542. package/dist/render/components/TyreFitVerdicts.js +1 -0
  543. package/dist/render/components/TyreImage.d.ts +10 -0
  544. package/dist/render/components/TyreImage.js +1 -0
  545. package/dist/render/components/TyrePlpCard.d.ts +19 -0
  546. package/dist/render/components/TyrePlpCard.js +1 -0
  547. package/dist/render/components/TyreRenderSvg.d.ts +7 -0
  548. package/dist/render/components/TyreRenderSvg.js +1 -0
  549. package/dist/render/components/TyreSummaryCard.d.ts +11 -0
  550. package/dist/render/components/TyreSummaryCard.js +1 -0
  551. package/dist/render/components/TyreVehicleFitment.d.ts +18 -0
  552. package/dist/render/components/TyreVehicleFitment.js +1 -0
  553. package/dist/render/components/ViewMoreLink.d.ts +4 -0
  554. package/dist/render/components/ViewMoreLink.js +1 -0
  555. package/dist/render/components/WebFormField.d.ts +17 -0
  556. package/dist/render/components/WebFormField.js +1 -0
  557. package/dist/render/components/WheelCardFrame.d.ts +67 -0
  558. package/dist/render/components/WheelCardFrame.js +1 -0
  559. package/dist/render/components/WheelImage.d.ts +20 -0
  560. package/dist/render/components/WheelImage.js +1 -0
  561. package/dist/render/components/WheelPlaceholder.d.ts +7 -0
  562. package/dist/render/components/WheelPlaceholder.js +1 -0
  563. package/dist/render/components/WheelSvg.d.ts +7 -0
  564. package/dist/render/components/WheelSvg.js +1 -0
  565. package/dist/render/components/WishlistContext.d.ts +13 -0
  566. package/dist/render/components/WishlistContext.js +1 -0
  567. package/dist/render/components/booking/BookingBox.d.ts +16 -0
  568. package/dist/render/components/booking/BookingBox.js +1 -0
  569. package/dist/render/components/booking/BookingFormState.d.ts +46 -0
  570. package/dist/render/components/booking/BookingFormState.js +1 -0
  571. package/dist/render/components/booking/BookingRegions.d.ts +16 -0
  572. package/dist/render/components/booking/BookingRegions.js +1 -0
  573. package/dist/render/components/buy-row.d.ts +1 -0
  574. package/dist/render/components/buy-row.js +1 -0
  575. package/dist/render/components/catalog/CatalogFilterBar.d.ts +55 -0
  576. package/dist/render/components/catalog/CatalogFilterBar.js +1 -0
  577. package/dist/render/components/catalog/CatalogFilterContext.d.ts +39 -0
  578. package/dist/render/components/catalog/CatalogFilterContext.js +1 -0
  579. package/dist/render/components/catalog/CatalogFilterLabels.d.ts +6 -0
  580. package/dist/render/components/catalog/CatalogFilterLabels.js +1 -0
  581. package/dist/render/components/catalog/CatalogVehiclePicker.d.ts +22 -0
  582. package/dist/render/components/catalog/CatalogVehiclePicker.js +1 -0
  583. package/dist/render/components/catalog/FilterPill.d.ts +25 -0
  584. package/dist/render/components/catalog/FilterPill.js +1 -0
  585. package/dist/render/components/catalog/SiteMenuLinks.d.ts +6 -0
  586. package/dist/render/components/catalog/SiteMenuLinks.js +1 -0
  587. package/dist/render/components/checkout/CheckoutPageClient.d.ts +25 -0
  588. package/dist/render/components/checkout/CheckoutPageClient.js +3 -0
  589. package/dist/render/components/fitment/FitmentFinder.d.ts +15 -0
  590. package/dist/render/components/fitment/FitmentFinder.js +1 -0
  591. package/dist/render/components/fitment/FitmentPickerGrid.d.ts +6 -0
  592. package/dist/render/components/fitment/FitmentPickerGrid.js +1 -0
  593. package/dist/render/components/fitment/FitmentRowFit.d.ts +4 -0
  594. package/dist/render/components/fitment/FitmentRowFit.js +1 -0
  595. package/dist/render/components/fitment/PickerField.d.ts +16 -0
  596. package/dist/render/components/fitment/PickerField.js +1 -0
  597. package/dist/render/components/fitment/StockFitmentCard.d.ts +8 -0
  598. package/dist/render/components/fitment/StockFitmentCard.js +1 -0
  599. package/dist/render/components/fitment/useFitmentCascade.d.ts +31 -0
  600. package/dist/render/components/fitment/useFitmentCascade.js +1 -0
  601. package/dist/render/components/fitment/useVehicleFit.d.ts +29 -0
  602. package/dist/render/components/fitment/useVehicleFit.js +1 -0
  603. package/dist/render/components/fitment/vehicle-control.d.ts +10 -0
  604. package/dist/render/components/fitment/vehicle-control.js +0 -0
  605. package/dist/render/components/fitment/vehicle-level-state.d.ts +14 -0
  606. package/dist/render/components/fitment/vehicle-level-state.js +1 -0
  607. package/dist/render/components/formSubmission.d.ts +32 -0
  608. package/dist/render/components/formSubmission.js +1 -0
  609. package/dist/render/components/pdp-dynamic/DynamicBundleOffer.d.ts +13 -0
  610. package/dist/render/components/pdp-dynamic/DynamicBundleOffer.js +1 -0
  611. package/dist/render/components/pdp-dynamic/DynamicDetailRows.d.ts +14 -0
  612. package/dist/render/components/pdp-dynamic/DynamicDetailRows.js +1 -0
  613. package/dist/render/components/pdp-dynamic/DynamicEuTyreLabel.d.ts +8 -0
  614. package/dist/render/components/pdp-dynamic/DynamicEuTyreLabel.js +1 -0
  615. package/dist/render/components/pdp-dynamic/DynamicFitmentTable.d.ts +16 -0
  616. package/dist/render/components/pdp-dynamic/DynamicFitmentTable.js +1 -0
  617. package/dist/render/components/pdp-dynamic/DynamicGalleryGrid.d.ts +18 -0
  618. package/dist/render/components/pdp-dynamic/DynamicGalleryGrid.js +1 -0
  619. package/dist/render/components/pdp-dynamic/DynamicProductHero.d.ts +25 -0
  620. package/dist/render/components/pdp-dynamic/DynamicProductHero.js +1 -0
  621. package/dist/render/components/pdp-dynamic/DynamicRelatedProducts.d.ts +31 -0
  622. package/dist/render/components/pdp-dynamic/DynamicRelatedProducts.js +1 -0
  623. package/dist/render/components/pdp-dynamic/DynamicSpecTable.d.ts +13 -0
  624. package/dist/render/components/pdp-dynamic/DynamicSpecTable.js +1 -0
  625. package/dist/render/components/pdp-dynamic/DynamicTyreFitment.d.ts +13 -0
  626. package/dist/render/components/pdp-dynamic/DynamicTyreFitment.js +1 -0
  627. package/dist/render/components/pdp-dynamic/DynamicTyreSizes.d.ts +11 -0
  628. package/dist/render/components/pdp-dynamic/DynamicTyreSizes.js +1 -0
  629. package/dist/render/components/pdp-dynamic/FitmentTableBlock.d.ts +7 -0
  630. package/dist/render/components/pdp-dynamic/FitmentTableBlock.js +1 -0
  631. package/dist/render/components/pdp-dynamic/KindGate.d.ts +8 -0
  632. package/dist/render/components/pdp-dynamic/KindGate.js +1 -0
  633. package/dist/render/components/pdp-dynamic/useSampleProduct.d.ts +5 -0
  634. package/dist/render/components/pdp-dynamic/useSampleProduct.js +1 -0
  635. package/dist/render/components/product-hero/TyreHeroFitment.d.ts +17 -0
  636. package/dist/render/components/product-hero/TyreHeroFitment.js +1 -0
  637. package/dist/render/components/product-hero/VehicleQuestion.d.ts +18 -0
  638. package/dist/render/components/product-hero/VehicleQuestion.js +1 -0
  639. package/dist/render/components/product-hero/WheelHeroFitment.d.ts +9 -0
  640. package/dist/render/components/product-hero/WheelHeroFitment.js +1 -0
  641. package/dist/render/components/product-hero/hero-content.d.ts +7 -0
  642. package/dist/render/components/product-hero/hero-content.js +1 -0
  643. package/dist/render/components/product-hero/hero-view.d.ts +37 -0
  644. package/dist/render/components/product-hero/hero-view.js +1 -0
  645. package/dist/render/components/product-hero/stage-photo.d.ts +10 -0
  646. package/dist/render/components/product-hero/stage-photo.js +3 -0
  647. package/dist/render/components/submit/SubmitBox.d.ts +19 -0
  648. package/dist/render/components/submit/SubmitBox.js +1 -0
  649. package/dist/render/components/submit/SubmitRegions.d.ts +17 -0
  650. package/dist/render/components/submit/SubmitRegions.js +1 -0
  651. package/dist/render/components/useEuTyreLabels.d.ts +3 -0
  652. package/dist/render/components/useEuTyreLabels.js +1 -0
  653. package/dist/render/components/useFinishSelection.d.ts +17 -0
  654. package/dist/render/components/useFinishSelection.js +1 -0
  655. package/dist/render/components/useHeaderBar.d.ts +9 -0
  656. package/dist/render/components/useHeaderBar.js +1 -0
  657. package/dist/render/components/useLightbox.d.ts +10 -0
  658. package/dist/render/components/useLightbox.js +1 -0
  659. package/dist/render/components/useModalDismiss.d.ts +8 -0
  660. package/dist/render/components/useModalDismiss.js +1 -0
  661. package/dist/render/components/useNewsletterSignup.d.ts +12 -0
  662. package/dist/render/components/useNewsletterSignup.js +1 -0
  663. package/dist/render/components/usePreOrderIntent.d.ts +14 -0
  664. package/dist/render/components/usePreOrderIntent.js +1 -0
  665. package/dist/render/components/useProductCatalog.d.ts +54 -0
  666. package/dist/render/components/useProductCatalog.js +1 -0
  667. package/dist/render/components/useProductSelection.d.ts +39 -0
  668. package/dist/render/components/useProductSelection.js +1 -0
  669. package/dist/render/components/useStockAlertSignup.d.ts +14 -0
  670. package/dist/render/components/useStockAlertSignup.js +1 -0
  671. package/dist/render/components/useStorefrontReviews.d.ts +2 -0
  672. package/dist/render/components/useStorefrontReviews.js +1 -0
  673. package/dist/render/components/useTyreCatalog.d.ts +2 -0
  674. package/dist/render/components/useTyreCatalog.js +1 -0
  675. package/dist/render/components/useTyreDetail.d.ts +6 -0
  676. package/dist/render/components/useTyreDetail.js +1 -0
  677. package/dist/render/components/useTyreFitAnswer.d.ts +5 -0
  678. package/dist/render/components/useTyreFitAnswer.js +1 -0
  679. package/dist/render/components/useWheelDetail.d.ts +6 -0
  680. package/dist/render/components/useWheelDetail.js +1 -0
  681. package/dist/render/components/wheels-plp/AlloyWheelsListing.d.ts +42 -0
  682. package/dist/render/components/wheels-plp/AlloyWheelsListing.js +1 -0
  683. package/dist/render/components/wheels-plp/PlpActiveChips.d.ts +9 -0
  684. package/dist/render/components/wheels-plp/PlpActiveChips.js +1 -0
  685. package/dist/render/components/wheels-plp/PlpCard.d.ts +27 -0
  686. package/dist/render/components/wheels-plp/PlpCard.js +1 -0
  687. package/dist/render/components/wheels-plp/PlpInStockToggle.d.ts +6 -0
  688. package/dist/render/components/wheels-plp/PlpInStockToggle.js +1 -0
  689. package/dist/render/components/wheels-plp/PlpNotifyMeDialog.d.ts +10 -0
  690. package/dist/render/components/wheels-plp/PlpNotifyMeDialog.js +1 -0
  691. package/dist/render/components/wheels-plp/PlpPagination.d.ts +5 -0
  692. package/dist/render/components/wheels-plp/PlpPagination.js +1 -0
  693. package/dist/render/components/wheels-plp/PlpSidebar.d.ts +25 -0
  694. package/dist/render/components/wheels-plp/PlpSidebar.js +1 -0
  695. package/dist/render/components/wheels-plp/PlpTypePicker.d.ts +7 -0
  696. package/dist/render/components/wheels-plp/PlpTypePicker.js +1 -0
  697. package/dist/render/components/wheels-plp/PlpTyreSizeBoxes.d.ts +9 -0
  698. package/dist/render/components/wheels-plp/PlpTyreSizeBoxes.js +1 -0
  699. package/dist/render/components/wheels-plp/PlpVehicleBar.d.ts +15 -0
  700. package/dist/render/components/wheels-plp/PlpVehicleBar.js +1 -0
  701. package/dist/render/components/wheels-plp/PlpVehicleGate.d.ts +10 -0
  702. package/dist/render/components/wheels-plp/PlpVehicleGate.js +1 -0
  703. package/dist/render/components/wheels-plp/usePlpCardSelection.d.ts +18 -0
  704. package/dist/render/components/wheels-plp/usePlpCardSelection.js +1 -0
  705. package/dist/render/components/wheels-plp/usePlpFiltersInUrl.d.ts +10 -0
  706. package/dist/render/components/wheels-plp/usePlpFiltersInUrl.js +1 -0
  707. package/dist/render/components/wheels-plp/useVehicleCatalog.d.ts +10 -0
  708. package/dist/render/components/wheels-plp/useVehicleCatalog.js +1 -0
  709. package/dist/render/components/wheels-plp/useWheelCardBottom.d.ts +20 -0
  710. package/dist/render/components/wheels-plp/useWheelCardBottom.js +1 -0
  711. package/dist/render/lib/api/chat.d.ts +31 -0
  712. package/dist/render/lib/api/chat.js +1 -0
  713. package/dist/render/lib/api/fitment-data.d.ts +18 -0
  714. package/dist/render/lib/api/fitment-data.js +1 -0
  715. package/dist/render/lib/api/gallery-builds-data.d.ts +4 -0
  716. package/dist/render/lib/api/gallery-builds-data.js +1 -0
  717. package/dist/render/lib/api/generated-upload-limits.d.ts +1292 -0
  718. package/dist/render/lib/api/generated-upload-limits.js +1 -0
  719. package/dist/render/lib/api/index.d.ts +806 -0
  720. package/dist/render/lib/api/index.js +1 -0
  721. package/dist/render/lib/api/origins.d.ts +2 -0
  722. package/dist/render/lib/api/origins.js +1 -0
  723. package/dist/render/lib/api/types.d.ts +3928 -0
  724. package/dist/render/lib/api/types.js +0 -0
  725. package/dist/render/lib/api/upload-limits.d.ts +10 -0
  726. package/dist/render/lib/api/upload-limits.js +1 -0
  727. package/dist/render/lib/assistant-chat.d.ts +35 -0
  728. package/dist/render/lib/assistant-chat.js +1 -0
  729. package/dist/render/lib/auth.d.ts +6 -0
  730. package/dist/render/lib/auth.js +1 -0
  731. package/dist/render/lib/booking/text-kinds.d.ts +11 -0
  732. package/dist/render/lib/booking/text-kinds.js +1 -0
  733. package/dist/render/lib/booking-dates.d.ts +23 -0
  734. package/dist/render/lib/booking-dates.js +1 -0
  735. package/dist/render/lib/cache-evict.d.ts +4 -0
  736. package/dist/render/lib/cache-evict.js +1 -0
  737. package/dist/render/lib/cart/coupon-preview.d.ts +12 -0
  738. package/dist/render/lib/cart/coupon-preview.js +1 -0
  739. package/dist/render/lib/cart/shipping-status.d.ts +12 -0
  740. package/dist/render/lib/cart/shipping-status.js +1 -0
  741. package/dist/render/lib/cart/snapshot-lines.d.ts +3 -0
  742. package/dist/render/lib/cart/snapshot-lines.js +1 -0
  743. package/dist/render/lib/catalog/from-tyre.d.ts +3 -0
  744. package/dist/render/lib/catalog/from-tyre.js +1 -0
  745. package/dist/render/lib/catalog/from-wheel.d.ts +7 -0
  746. package/dist/render/lib/catalog/from-wheel.js +1 -0
  747. package/dist/render/lib/catalog/listing-links.d.ts +11 -0
  748. package/dist/render/lib/catalog/listing-links.js +1 -0
  749. package/dist/render/lib/catalog/plp-item.d.ts +39 -0
  750. package/dist/render/lib/catalog/plp-item.js +1 -0
  751. package/dist/render/lib/catalog/plp-vehicle-copy.d.ts +20 -0
  752. package/dist/render/lib/catalog/plp-vehicle-copy.js +1 -0
  753. package/dist/render/lib/catalog/plp-vehicle-slice.d.ts +13 -0
  754. package/dist/render/lib/catalog/plp-vehicle-slice.js +1 -0
  755. package/dist/render/lib/catalog/product-options.d.ts +27 -0
  756. package/dist/render/lib/catalog/product-options.js +1 -0
  757. package/dist/render/lib/catalog/purchase.d.ts +46 -0
  758. package/dist/render/lib/catalog/purchase.js +1 -0
  759. package/dist/render/lib/catalog/related-cards.d.ts +12 -0
  760. package/dist/render/lib/catalog/related-cards.js +1 -0
  761. package/dist/render/lib/catalog/relationships.d.ts +28 -0
  762. package/dist/render/lib/catalog/relationships.js +1 -0
  763. package/dist/render/lib/catalog/store-product.d.ts +56 -0
  764. package/dist/render/lib/catalog/store-product.js +1 -0
  765. package/dist/render/lib/chat-socket.d.ts +8 -0
  766. package/dist/render/lib/chat-socket.js +1 -0
  767. package/dist/render/lib/checkout/wallet-return.d.ts +52 -0
  768. package/dist/render/lib/checkout/wallet-return.js +1 -0
  769. package/dist/render/lib/chrome-cache.d.ts +6 -0
  770. package/dist/render/lib/chrome-cache.js +1 -0
  771. package/dist/render/lib/chrome-load.d.ts +28 -0
  772. package/dist/render/lib/chrome-load.js +1 -0
  773. package/dist/render/lib/click-ids.d.ts +8 -0
  774. package/dist/render/lib/click-ids.js +1 -0
  775. package/dist/render/lib/commerce.d.ts +42 -0
  776. package/dist/render/lib/commerce.js +1 -0
  777. package/dist/render/lib/consent/choice.d.ts +35 -0
  778. package/dist/render/lib/consent/choice.js +1 -0
  779. package/dist/render/lib/consent/rules.d.ts +60 -0
  780. package/dist/render/lib/consent/rules.js +1 -0
  781. package/dist/render/lib/content/catalog-filter-labels.d.ts +6 -0
  782. package/dist/render/lib/content/catalog-filter-labels.js +1 -0
  783. package/dist/render/lib/content/country-show-as.d.ts +9 -0
  784. package/dist/render/lib/content/country-show-as.js +1 -0
  785. package/dist/render/lib/content/english-variant.d.ts +4 -0
  786. package/dist/render/lib/content/english-variant.js +1 -0
  787. package/dist/render/lib/content/field-usage.d.ts +35 -0
  788. package/dist/render/lib/content/field-usage.js +1 -0
  789. package/dist/render/lib/content/header-bar.d.ts +8 -0
  790. package/dist/render/lib/content/header-bar.js +1 -0
  791. package/dist/render/lib/content/header-theme.d.ts +7 -0
  792. package/dist/render/lib/content/header-theme.js +1 -0
  793. package/dist/render/lib/content/menu-placeholder.d.ts +8 -0
  794. package/dist/render/lib/content/menu-placeholder.js +1 -0
  795. package/dist/render/lib/content/menu-row.d.ts +9 -0
  796. package/dist/render/lib/content/menu-row.js +1 -0
  797. package/dist/render/lib/content/product-hero.d.ts +13 -0
  798. package/dist/render/lib/content/product-hero.js +1 -0
  799. package/dist/render/lib/content/site.d.ts +62 -0
  800. package/dist/render/lib/content/site.js +1 -0
  801. package/dist/render/lib/content/source-values.d.ts +43 -0
  802. package/dist/render/lib/content/source-values.js +0 -0
  803. package/dist/render/lib/content/stock-words.d.ts +10 -0
  804. package/dist/render/lib/content/stock-words.js +1 -0
  805. package/dist/render/lib/countries.d.ts +5 -0
  806. package/dist/render/lib/countries.js +1 -0
  807. package/dist/render/lib/editor-route.d.ts +3 -0
  808. package/dist/render/lib/editor-route.js +1 -0
  809. package/dist/render/lib/email-shape.d.ts +1 -0
  810. package/dist/render/lib/email-shape.js +1 -0
  811. package/dist/render/lib/font-table.json +2588 -0
  812. package/dist/render/lib/forwarded-for.d.ts +6 -0
  813. package/dist/render/lib/forwarded-for.js +1 -0
  814. package/dist/render/lib/google-tag.d.ts +37 -0
  815. package/dist/render/lib/google-tag.js +1 -0
  816. package/dist/render/lib/header-settings-fetch.d.ts +5 -0
  817. package/dist/render/lib/header-settings-fetch.js +1 -0
  818. package/dist/render/lib/links/link-rules.d.ts +80 -0
  819. package/dist/render/lib/links/link-rules.js +1 -0
  820. package/dist/render/lib/logo/surface-is-light.d.ts +1 -0
  821. package/dist/render/lib/logo/surface-is-light.js +1 -0
  822. package/dist/render/lib/menu-link.d.ts +1 -0
  823. package/dist/render/lib/menu-link.js +1 -0
  824. package/dist/render/lib/menu-source.d.ts +23 -0
  825. package/dist/render/lib/menu-source.js +1 -0
  826. package/dist/render/lib/meta-pixel.d.ts +19 -0
  827. package/dist/render/lib/meta-pixel.js +1 -0
  828. package/dist/render/lib/newsletter-signup.d.ts +16 -0
  829. package/dist/render/lib/newsletter-signup.js +1 -0
  830. package/dist/render/lib/next-fonts.d.ts +3 -0
  831. package/dist/render/lib/next-fonts.js +1 -0
  832. package/dist/render/lib/popup/popup-rules.d.ts +25 -0
  833. package/dist/render/lib/popup/popup-rules.js +1 -0
  834. package/dist/render/lib/popup/text-kind-style.d.ts +3 -0
  835. package/dist/render/lib/popup/text-kind-style.js +1 -0
  836. package/dist/render/lib/puck/blocks/commerce/AccountBlock/render.d.ts +2 -0
  837. package/dist/render/lib/puck/blocks/commerce/AccountBlock/render.js +1 -0
  838. package/dist/render/lib/puck/blocks/commerce/AlloyWheelsListing/render.d.ts +6 -0
  839. package/dist/render/lib/puck/blocks/commerce/AlloyWheelsListing/render.js +1 -0
  840. package/dist/render/lib/puck/blocks/commerce/BundleOffer/render.d.ts +2 -0
  841. package/dist/render/lib/puck/blocks/commerce/BundleOffer/render.js +1 -0
  842. package/dist/render/lib/puck/blocks/commerce/CartBlock/render.d.ts +2 -0
  843. package/dist/render/lib/puck/blocks/commerce/CartBlock/render.js +1 -0
  844. package/dist/render/lib/puck/blocks/commerce/CatalogFilterBar/render.d.ts +2 -0
  845. package/dist/render/lib/puck/blocks/commerce/CatalogFilterBar/render.js +1 -0
  846. package/dist/render/lib/puck/blocks/commerce/CheckoutCTA/render.d.ts +6 -0
  847. package/dist/render/lib/puck/blocks/commerce/CheckoutCTA/render.js +1 -0
  848. package/dist/render/lib/puck/blocks/commerce/CollectionCard/render.d.ts +2 -0
  849. package/dist/render/lib/puck/blocks/commerce/CollectionCard/render.js +1 -0
  850. package/dist/render/lib/puck/blocks/commerce/Collections/render.d.ts +7 -0
  851. package/dist/render/lib/puck/blocks/commerce/Collections/render.js +1 -0
  852. package/dist/render/lib/puck/blocks/commerce/CompatibleTyres/render.d.ts +9 -0
  853. package/dist/render/lib/puck/blocks/commerce/CompatibleTyres/render.js +1 -0
  854. package/dist/render/lib/puck/blocks/commerce/CountrySwitchBlock/render.d.ts +2 -0
  855. package/dist/render/lib/puck/blocks/commerce/CountrySwitchBlock/render.js +1 -0
  856. package/dist/render/lib/puck/blocks/commerce/DeliveryOptions/render.d.ts +6 -0
  857. package/dist/render/lib/puck/blocks/commerce/DeliveryOptions/render.js +1 -0
  858. package/dist/render/lib/puck/blocks/commerce/DetailRows/render.d.ts +9 -0
  859. package/dist/render/lib/puck/blocks/commerce/DetailRows/render.js +1 -0
  860. package/dist/render/lib/puck/blocks/commerce/EuTyreLabel/render.d.ts +2 -0
  861. package/dist/render/lib/puck/blocks/commerce/EuTyreLabel/render.js +1 -0
  862. package/dist/render/lib/puck/blocks/commerce/FitmentFinder/render.d.ts +8 -0
  863. package/dist/render/lib/puck/blocks/commerce/FitmentFinder/render.js +1 -0
  864. package/dist/render/lib/puck/blocks/commerce/FitmentTable/render.d.ts +9 -0
  865. package/dist/render/lib/puck/blocks/commerce/FitmentTable/render.js +1 -0
  866. package/dist/render/lib/puck/blocks/commerce/Gallery/render.d.ts +14 -0
  867. package/dist/render/lib/puck/blocks/commerce/Gallery/render.js +1 -0
  868. package/dist/render/lib/puck/blocks/commerce/GalleryB/render.d.ts +13 -0
  869. package/dist/render/lib/puck/blocks/commerce/GalleryB/render.js +1 -0
  870. package/dist/render/lib/puck/blocks/commerce/GalleryItem/render.d.ts +2 -0
  871. package/dist/render/lib/puck/blocks/commerce/GalleryItem/render.js +1 -0
  872. package/dist/render/lib/puck/blocks/commerce/Header/render.d.ts +2 -0
  873. package/dist/render/lib/puck/blocks/commerce/Header/render.js +1 -0
  874. package/dist/render/lib/puck/blocks/commerce/ProductGrid/render.d.ts +7 -0
  875. package/dist/render/lib/puck/blocks/commerce/ProductGrid/render.js +1 -0
  876. package/dist/render/lib/puck/blocks/commerce/ProductHero/render.d.ts +2 -0
  877. package/dist/render/lib/puck/blocks/commerce/ProductHero/render.js +1 -0
  878. package/dist/render/lib/puck/blocks/commerce/ProductRef/render.d.ts +2 -0
  879. package/dist/render/lib/puck/blocks/commerce/ProductRef/render.js +1 -0
  880. package/dist/render/lib/puck/blocks/commerce/RelatedProducts/render.d.ts +6 -0
  881. package/dist/render/lib/puck/blocks/commerce/RelatedProducts/render.js +1 -0
  882. package/dist/render/lib/puck/blocks/commerce/SearchBlock/render.d.ts +2 -0
  883. package/dist/render/lib/puck/blocks/commerce/SearchBlock/render.js +1 -0
  884. package/dist/render/lib/puck/blocks/commerce/SpecTable/render.d.ts +7 -0
  885. package/dist/render/lib/puck/blocks/commerce/SpecTable/render.js +1 -0
  886. package/dist/render/lib/puck/blocks/commerce/ThemeSwitchBlock/render.d.ts +2 -0
  887. package/dist/render/lib/puck/blocks/commerce/ThemeSwitchBlock/render.js +1 -0
  888. package/dist/render/lib/puck/blocks/commerce/TyreFitment/render.d.ts +2 -0
  889. package/dist/render/lib/puck/blocks/commerce/TyreFitment/render.js +1 -0
  890. package/dist/render/lib/puck/blocks/commerce/TyreSizes/render.d.ts +2 -0
  891. package/dist/render/lib/puck/blocks/commerce/TyreSizes/render.js +1 -0
  892. package/dist/render/lib/puck/blocks/commerce/placeholders.d.ts +4 -0
  893. package/dist/render/lib/puck/blocks/commerce/placeholders.js +1 -0
  894. package/dist/render/lib/puck/blocks/commerce/renders.d.ts +32 -0
  895. package/dist/render/lib/puck/blocks/commerce/renders.js +1 -0
  896. package/dist/render/lib/puck/blocks/service/AppointmentBooking/render.d.ts +8 -0
  897. package/dist/render/lib/puck/blocks/service/AppointmentBooking/render.js +1 -0
  898. package/dist/render/lib/puck/blocks/service/BookingBox/render.d.ts +2 -0
  899. package/dist/render/lib/puck/blocks/service/BookingBox/render.js +1 -0
  900. package/dist/render/lib/puck/blocks/service/ContactRouting/render.d.ts +2 -0
  901. package/dist/render/lib/puck/blocks/service/ContactRouting/render.js +1 -0
  902. package/dist/render/lib/puck/blocks/service/Events/render.d.ts +7 -0
  903. package/dist/render/lib/puck/blocks/service/Events/render.js +1 -0
  904. package/dist/render/lib/puck/blocks/service/Footer/render.d.ts +8 -0
  905. package/dist/render/lib/puck/blocks/service/Footer/render.js +1 -0
  906. package/dist/render/lib/puck/blocks/service/FooterDivider/render.d.ts +2 -0
  907. package/dist/render/lib/puck/blocks/service/FooterDivider/render.js +1 -0
  908. package/dist/render/lib/puck/blocks/service/FooterEmailSignup/render.d.ts +2 -0
  909. package/dist/render/lib/puck/blocks/service/FooterEmailSignup/render.js +1 -0
  910. package/dist/render/lib/puck/blocks/service/FooterGroup/render.d.ts +8 -0
  911. package/dist/render/lib/puck/blocks/service/FooterGroup/render.js +1 -0
  912. package/dist/render/lib/puck/blocks/service/FooterLogo/render.d.ts +2 -0
  913. package/dist/render/lib/puck/blocks/service/FooterLogo/render.js +1 -0
  914. package/dist/render/lib/puck/blocks/service/FooterMenu/render.d.ts +2 -0
  915. package/dist/render/lib/puck/blocks/service/FooterMenu/render.js +1 -0
  916. package/dist/render/lib/puck/blocks/service/FooterSocial/render.d.ts +2 -0
  917. package/dist/render/lib/puck/blocks/service/FooterSocial/render.js +1 -0
  918. package/dist/render/lib/puck/blocks/service/FooterText/render.d.ts +2 -0
  919. package/dist/render/lib/puck/blocks/service/FooterText/render.js +1 -0
  920. package/dist/render/lib/puck/blocks/service/Form/render.d.ts +2 -0
  921. package/dist/render/lib/puck/blocks/service/Form/render.js +1 -0
  922. package/dist/render/lib/puck/blocks/service/LegalLineBlock/render.d.ts +2 -0
  923. package/dist/render/lib/puck/blocks/service/LegalLineBlock/render.js +1 -0
  924. package/dist/render/lib/puck/blocks/service/ReviewForm/render.d.ts +6 -0
  925. package/dist/render/lib/puck/blocks/service/ReviewForm/render.js +1 -0
  926. package/dist/render/lib/puck/blocks/service/Reviews/render.d.ts +6 -0
  927. package/dist/render/lib/puck/blocks/service/Reviews/render.js +1 -0
  928. package/dist/render/lib/puck/blocks/service/SiteFooter/render.d.ts +7 -0
  929. package/dist/render/lib/puck/blocks/service/SiteFooter/render.js +1 -0
  930. package/dist/render/lib/puck/blocks/service/SiteHeader/render.d.ts +7 -0
  931. package/dist/render/lib/puck/blocks/service/SiteHeader/render.js +1 -0
  932. package/dist/render/lib/puck/blocks/service/SubmitBox/render.d.ts +2 -0
  933. package/dist/render/lib/puck/blocks/service/SubmitBox/render.js +1 -0
  934. package/dist/render/lib/puck/blocks/service/SubmitBuild/render.d.ts +8 -0
  935. package/dist/render/lib/puck/blocks/service/SubmitBuild/render.js +1 -0
  936. package/dist/render/lib/puck/blocks/service/Subscribe/render.d.ts +2 -0
  937. package/dist/render/lib/puck/blocks/service/Subscribe/render.js +1 -0
  938. package/dist/render/lib/puck/blocks/service/SubscribeBlogs/render.d.ts +17 -0
  939. package/dist/render/lib/puck/blocks/service/SubscribeBlogs/render.js +1 -0
  940. package/dist/render/lib/puck/blocks/service/renders.d.ts +26 -0
  941. package/dist/render/lib/puck/blocks/service/renders.js +1 -0
  942. package/dist/render/lib/puck/blocks/service/subscribe.d.ts +33 -0
  943. package/dist/render/lib/puck/blocks/service/subscribe.js +1 -0
  944. package/dist/render/lib/puck/blocks/text-part-shapes.json +1649 -0
  945. package/dist/render/lib/puck/current-product.d.ts +19 -0
  946. package/dist/render/lib/puck/current-product.js +1 -0
  947. package/dist/render/lib/puck/current-record.d.ts +44 -0
  948. package/dist/render/lib/puck/current-record.js +1 -0
  949. package/dist/render/lib/puck/fitment-table-dynamic.d.ts +4 -0
  950. package/dist/render/lib/puck/fitment-table-dynamic.js +1 -0
  951. package/dist/render/lib/puck/footer-page-blocks.d.ts +7 -0
  952. package/dist/render/lib/puck/footer-page-blocks.js +1 -0
  953. package/dist/render/lib/puck/preview-pick.d.ts +7 -0
  954. package/dist/render/lib/puck/preview-pick.js +1 -0
  955. package/dist/render/lib/puck/preview-product.d.ts +6 -0
  956. package/dist/render/lib/puck/preview-product.js +1 -0
  957. package/dist/render/lib/puck/render-client.d.ts +5 -0
  958. package/dist/render/lib/puck/render-client.js +1 -0
  959. package/dist/render/lib/puck/render-config.d.ts +4 -0
  960. package/dist/render/lib/puck/render-config.js +1 -0
  961. package/dist/render/lib/puck/slot-seeds.d.ts +3 -0
  962. package/dist/render/lib/puck/slot-seeds.js +1 -0
  963. package/dist/render/lib/puck/storefront-root.d.ts +18 -0
  964. package/dist/render/lib/puck/storefront-root.js +1 -0
  965. package/dist/render/lib/puck/subscribe-content-type.d.ts +10 -0
  966. package/dist/render/lib/puck/subscribe-content-type.js +1 -0
  967. package/dist/render/lib/puck/template-product-kind.d.ts +7 -0
  968. package/dist/render/lib/puck/template-product-kind.js +1 -0
  969. package/dist/render/lib/sections/card-image-sizes.d.ts +12 -0
  970. package/dist/render/lib/sections/card-image-sizes.js +1 -0
  971. package/dist/render/lib/sections/card-show-defaults.d.ts +10 -0
  972. package/dist/render/lib/sections/card-show-defaults.js +1 -0
  973. package/dist/render/lib/sections/catalog-filter-layout.d.ts +7 -0
  974. package/dist/render/lib/sections/catalog-filter-layout.js +1 -0
  975. package/dist/render/lib/sections/fill-row.d.ts +16 -0
  976. package/dist/render/lib/sections/fill-row.js +1 -0
  977. package/dist/render/lib/sections/hero-arrangement.d.ts +11 -0
  978. package/dist/render/lib/sections/hero-arrangement.js +1 -0
  979. package/dist/render/lib/sections/hero-gallery.d.ts +14 -0
  980. package/dist/render/lib/sections/hero-gallery.js +1 -0
  981. package/dist/render/lib/sections/hero-price-placement.d.ts +7 -0
  982. package/dist/render/lib/sections/hero-price-placement.js +1 -0
  983. package/dist/render/lib/select-keys.d.ts +18 -0
  984. package/dist/render/lib/select-keys.js +1 -0
  985. package/dist/render/lib/site-headers.d.ts +3 -0
  986. package/dist/render/lib/site-headers.js +1 -0
  987. package/dist/render/lib/storefront-page-groups.d.ts +16 -0
  988. package/dist/render/lib/storefront-page-groups.js +1 -0
  989. package/dist/render/lib/storefront-page-order.d.ts +3 -0
  990. package/dist/render/lib/storefront-page-order.js +1 -0
  991. package/dist/render/lib/submit/text-kinds.d.ts +11 -0
  992. package/dist/render/lib/submit/text-kinds.js +1 -0
  993. package/dist/render/lib/tyres/eu-tyre-label.d.ts +29 -0
  994. package/dist/render/lib/tyres/eu-tyre-label.js +1 -0
  995. package/dist/render/lib/tyres/placeholder-tyre.d.ts +2 -0
  996. package/dist/render/lib/tyres/placeholder-tyre.js +1 -0
  997. package/dist/render/lib/tyres/spec-sheet.d.ts +12 -0
  998. package/dist/render/lib/tyres/spec-sheet.js +1 -0
  999. package/dist/render/lib/tyres/tyre-brand-name.d.ts +2 -0
  1000. package/dist/render/lib/tyres/tyre-brand-name.js +1 -0
  1001. package/dist/render/lib/tyres/tyre-fit-copy.d.ts +3 -0
  1002. package/dist/render/lib/tyres/tyre-fit-copy.js +1 -0
  1003. package/dist/render/lib/tyres/tyre-page-path.d.ts +2 -0
  1004. package/dist/render/lib/tyres/tyre-page-path.js +1 -0
  1005. package/dist/render/lib/tyres/tyre-purchase.d.ts +12 -0
  1006. package/dist/render/lib/tyres/tyre-purchase.js +1 -0
  1007. package/dist/render/lib/tyres/tyre-size-fit.d.ts +12 -0
  1008. package/dist/render/lib/tyres/tyre-size-fit.js +1 -0
  1009. package/dist/render/lib/tyres/tyre-size.d.ts +11 -0
  1010. package/dist/render/lib/tyres/tyre-size.js +1 -0
  1011. package/dist/render/lib/tyres/tyre-vehicle-fitment.d.ts +17 -0
  1012. package/dist/render/lib/tyres/tyre-vehicle-fitment.js +1 -0
  1013. package/dist/render/lib/uuid.d.ts +1 -0
  1014. package/dist/render/lib/uuid.js +1 -0
  1015. package/dist/render/lib/wheels/applied-vehicle.d.ts +1 -0
  1016. package/dist/render/lib/wheels/applied-vehicle.js +1 -0
  1017. package/dist/render/lib/wheels/catalog-default-layout.d.ts +14 -0
  1018. package/dist/render/lib/wheels/catalog-default-layout.js +1 -0
  1019. package/dist/render/lib/wheels/catalog-filters-to-listing.d.ts +9 -0
  1020. package/dist/render/lib/wheels/catalog-filters-to-listing.js +1 -0
  1021. package/dist/render/lib/wheels/catalog-filters.d.ts +19 -0
  1022. package/dist/render/lib/wheels/catalog-filters.js +1 -0
  1023. package/dist/render/lib/wheels/collections.d.ts +22 -0
  1024. package/dist/render/lib/wheels/collections.js +1 -0
  1025. package/dist/render/lib/wheels/cover-rendering.d.ts +23 -0
  1026. package/dist/render/lib/wheels/cover-rendering.js +1 -0
  1027. package/dist/render/lib/wheels/detail-shots.d.ts +10 -0
  1028. package/dist/render/lib/wheels/detail-shots.js +1 -0
  1029. package/dist/render/lib/wheels/finish-colour-match.d.ts +4 -0
  1030. package/dist/render/lib/wheels/finish-colour-match.js +1 -0
  1031. package/dist/render/lib/wheels/finish-defaults.d.ts +16 -0
  1032. package/dist/render/lib/wheels/finish-defaults.js +1 -0
  1033. package/dist/render/lib/wheels/finish-photos.d.ts +2 -0
  1034. package/dist/render/lib/wheels/finish-photos.js +1 -0
  1035. package/dist/render/lib/wheels/fitment-columns.d.ts +9 -0
  1036. package/dist/render/lib/wheels/fitment-columns.js +1 -0
  1037. package/dist/render/lib/wheels/fitment-options.d.ts +18 -0
  1038. package/dist/render/lib/wheels/fitment-options.js +1 -0
  1039. package/dist/render/lib/wheels/fitment-row-fit.d.ts +17 -0
  1040. package/dist/render/lib/wheels/fitment-row-fit.js +1 -0
  1041. package/dist/render/lib/wheels/fitments.d.ts +13 -0
  1042. package/dist/render/lib/wheels/fitments.js +1 -0
  1043. package/dist/render/lib/wheels/grid-source.d.ts +12 -0
  1044. package/dist/render/lib/wheels/grid-source.js +1 -0
  1045. package/dist/render/lib/wheels/listable-wheels.d.ts +3 -0
  1046. package/dist/render/lib/wheels/listable-wheels.js +1 -0
  1047. package/dist/render/lib/wheels/lug-count.d.ts +10 -0
  1048. package/dist/render/lib/wheels/lug-count.js +1 -0
  1049. package/dist/render/lib/wheels/pdp-fit-verdict.d.ts +27 -0
  1050. package/dist/render/lib/wheels/pdp-fit-verdict.js +1 -0
  1051. package/dist/render/lib/wheels/picker-goes-to-the-shop.d.ts +10 -0
  1052. package/dist/render/lib/wheels/picker-goes-to-the-shop.js +1 -0
  1053. package/dist/render/lib/wheels/placeholder-wheel.d.ts +3 -0
  1054. package/dist/render/lib/wheels/placeholder-wheel.js +1 -0
  1055. package/dist/render/lib/wheels/plp-filters.d.ts +100 -0
  1056. package/dist/render/lib/wheels/plp-filters.js +1 -0
  1057. package/dist/render/lib/wheels/plp-fitment-match.d.ts +61 -0
  1058. package/dist/render/lib/wheels/plp-fitment-match.js +1 -0
  1059. package/dist/render/lib/wheels/plp-grid.d.ts +18 -0
  1060. package/dist/render/lib/wheels/plp-grid.js +1 -0
  1061. package/dist/render/lib/wheels/plp-hydrate.d.ts +21 -0
  1062. package/dist/render/lib/wheels/plp-hydrate.js +1 -0
  1063. package/dist/render/lib/wheels/plp-vehicle-params.d.ts +10 -0
  1064. package/dist/render/lib/wheels/plp-vehicle-params.js +1 -0
  1065. package/dist/render/lib/wheels/pre-order-intent.d.ts +3 -0
  1066. package/dist/render/lib/wheels/pre-order-intent.js +1 -0
  1067. package/dist/render/lib/wheels/pre-order.d.ts +7 -0
  1068. package/dist/render/lib/wheels/pre-order.js +1 -0
  1069. package/dist/render/lib/wheels/price-display.d.ts +47 -0
  1070. package/dist/render/lib/wheels/price-display.js +1 -0
  1071. package/dist/render/lib/wheels/render-fit.d.ts +3 -0
  1072. package/dist/render/lib/wheels/render-fit.js +1 -0
  1073. package/dist/render/lib/wheels/renderable-finishes.d.ts +6 -0
  1074. package/dist/render/lib/wheels/renderable-finishes.js +1 -0
  1075. package/dist/render/lib/wheels/selected-studs.d.ts +9 -0
  1076. package/dist/render/lib/wheels/selected-studs.js +1 -0
  1077. package/dist/render/lib/wheels/set-mode.d.ts +34 -0
  1078. package/dist/render/lib/wheels/set-mode.js +1 -0
  1079. package/dist/render/lib/wheels/size-range.d.ts +10 -0
  1080. package/dist/render/lib/wheels/size-range.js +1 -0
  1081. package/dist/render/lib/wheels/spec-format.d.ts +7 -0
  1082. package/dist/render/lib/wheels/spec-format.js +1 -0
  1083. package/dist/render/lib/wheels/spec-sheet.d.ts +58 -0
  1084. package/dist/render/lib/wheels/spec-sheet.js +1 -0
  1085. package/dist/render/lib/wheels/tyre-render.d.ts +34 -0
  1086. package/dist/render/lib/wheels/tyre-render.js +1 -0
  1087. package/dist/render/lib/wheels/variant-spec.d.ts +9 -0
  1088. package/dist/render/lib/wheels/variant-spec.js +1 -0
  1089. package/dist/render/lib/wheels/variants.d.ts +8 -0
  1090. package/dist/render/lib/wheels/variants.js +1 -0
  1091. package/dist/render/lib/wheels/vehicle-field-focus.d.ts +7 -0
  1092. package/dist/render/lib/wheels/vehicle-field-focus.js +1 -0
  1093. package/dist/render/lib/wheels/vehicle-memory.d.ts +25 -0
  1094. package/dist/render/lib/wheels/vehicle-memory.js +1 -0
  1095. package/dist/render/lib/wheels/wheel-name.d.ts +4 -0
  1096. package/dist/render/lib/wheels/wheel-name.js +1 -0
  1097. package/dist/render/lib/wheels/wheel-specs.d.ts +14 -0
  1098. package/dist/render/lib/wheels/wheel-specs.js +1 -0
  1099. package/dist/render/lib/wheels/wheel-summary-casing.d.ts +4 -0
  1100. package/dist/render/lib/wheels/wheel-summary-casing.js +1 -0
  1101. package/dist/render/lib/wheels/wheels.d.ts +38 -0
  1102. package/dist/render/lib/wheels/wheels.js +1 -0
  1103. package/dist/render/mocks/fitment-snapshot.json +3911 -0
  1104. package/dist/render/mocks/gallery-builds.json +213 -0
  1105. package/dist/words.d.ts +68 -7
  1106. package/dist/words.js +5 -5
  1107. package/package.json +37 -5
  1108. package/dist/chunks/chunk-BDITPYS5.js +0 -1
  1109. package/dist/chunks/chunk-EHKAKDFN.js +0 -255
  1110. /package/dist/chunks/{chunk-4NM2MDGN.js → chunk-76HTJBKU.js} +0 -0
  1111. /package/dist/chunks/{chunk-EHKAKDFN.js.LEGAL.txt → chunk-PHH7L5FJ.js.LEGAL.txt} +0 -0
@@ -0,0 +1,19 @@
1
+ import { type ReactNode } from "react";
2
+ import { type ProductSelection } from "../../components/useProductSelection.js";
3
+ import type { StoreProduct } from "../catalog/store-product.js";
4
+ import { type FieldUsageAnswer } from "../content/field-usage.js";
5
+ import type { WheelSummary } from "../api/index.js";
6
+ export interface CurrentProduct {
7
+ product: StoreProduct;
8
+ relatedWheels: WheelSummary[];
9
+ fieldUsage: readonly FieldUsageAnswer[];
10
+ selection: ProductSelection;
11
+ openLightbox: (src: string, alt: string) => void;
12
+ }
13
+ export declare function useCurrentProduct(): CurrentProduct | null;
14
+ export declare function CurrentProductProvider({ product, relatedWheels, fieldUsage, children, }: {
15
+ product: StoreProduct;
16
+ relatedWheels: WheelSummary[];
17
+ fieldUsage?: readonly FieldUsageAnswer[];
18
+ children: ReactNode;
19
+ }): import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ "use client";import{jsx as p,jsxs as d}from"react/jsx-runtime";import{useMemo as s}from"react";import f from"../../components/ProductLightbox.js";import{useLightbox as x}from"../../components/useLightbox.js";import{useProductSelection as a}from"../../components/useProductSelection.js";import{applyVariantAnswers as P}from"../content/field-usage.js";import{CurrentRecordProvider as C,PRODUCT_RECORD_TYPE as i,useCurrentRecordOf as h}from"./current-record.js";function g(){return h(i)?.value??null}const b=Object.freeze({});function y({product:o,relatedWheels:c,fieldUsage:r=[],children:m}){const t=s(()=>P(o.optionFields,r),[o.optionFields,r]),e=s(()=>t===o.optionFields?o:{...o,optionFields:t},[o,t]),u=a(e),n=x(),l={type:i,key:e.slug,title:e.name,fields:b,value:{product:e,relatedWheels:c,fieldUsage:r,selection:u,openLightbox:n.open}};return d(C,{record:l,children:[m,p(f,{item:n.item,onClose:n.close})]})}export{y as CurrentProductProvider,g as useCurrentProduct};
@@ -0,0 +1,44 @@
1
+ import { type ReactNode } from "react";
2
+ export interface CurrentRecord<TValue = unknown> {
3
+ type: string;
4
+ key: string;
5
+ title: string;
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
+ }
15
+ export interface RecordPicture {
16
+ url: string;
17
+ alt: string;
18
+ }
19
+ export declare function recordFieldSpecs(record: CurrentRecord | null | undefined): readonly RecordFieldSpec[];
20
+ export declare function recordPictures(record: CurrentRecord | null | undefined, { firstField }?: {
21
+ firstField?: boolean;
22
+ }): RecordPicture[];
23
+ export interface RecordFact {
24
+ label: string;
25
+ value: string;
26
+ }
27
+ export declare function recordFacts(record: CurrentRecord | null | undefined): RecordFact[];
28
+ export declare const PRODUCT_RECORD_TYPE = "product";
29
+ export declare function declaredRecordTypeOf(rootProps?: Record<string, unknown> | null): string;
30
+ export declare function editorPageDrawsOtherRecord(params: unknown): boolean;
31
+ export declare function DeclaredRecordTypeProvider({ type, children }: {
32
+ type: string;
33
+ children: ReactNode;
34
+ }): import("react").JSX.Element;
35
+ export declare function useDeclaredRecordType(): string;
36
+ export declare function useDrawsOtherRecord(editing: boolean): boolean;
37
+ export declare const SAMPLE_RECORD: CurrentRecord;
38
+ export declare const SAMPLE_PICTURE_COUNT = 4;
39
+ export declare function CurrentRecordProvider({ record, children, }: {
40
+ record: CurrentRecord;
41
+ children: ReactNode;
42
+ }): import("react").JSX.Element;
43
+ export declare function useCurrentRecord(): CurrentRecord | null;
44
+ export declare function useCurrentRecordOf<TValue = unknown>(type: string): CurrentRecord<TValue> | null;
@@ -0,0 +1 @@
1
+ "use client";import{jsx as p}from"react/jsx-runtime";import{createContext as y,useContext as a}from"react";import{say as o}from"efficient-web-builder/format/lib/editor-words";function g(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 R=/^\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)?x(r[0])?"rows":"images":typeof r=="string"?R.test(r)?"date":"text":null;return n?[{key:e,label:g(e),kind:n}]:[]}):[]}function D(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 s=t.fields[n.key];return Array.isArray(s)?s.flatMap(d=>{const u=d?.url;if(typeof u!="string"||!u)return[];const f=d.alt;return[{url:u,alt:typeof f=="string"?f:""}]}):[]})}function h(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 x(t){const e=t;return typeof e?.label=="string"&&!!e.label.trim()&&typeof e.value=="string"&&!!e.value.trim()}function P(t){return t?m(t).flatMap(e=>{const r=t.fields[e.key];return e.kind==="rows"?Array.isArray(r)?r.filter(x).map(({label:n,value:s})=>({label:n,value:s})):[]:e.kind!=="text"&&e.kind!=="date"?[]:typeof r!="string"||!r.trim()?[]:[{label:e.label,value:e.kind==="date"?h(r):r}]}):[]}const i="product",c=y(null);function C(t){const e=t?.recordType;return typeof e=="string"&&e.trim()||i}function b(t){const e=t?.appState?.data?.root;return C(e?.props)!==i}const l=y(i);function v({type:t,children:e}){return p(l.Provider,{value:t,children:e})}function O(){return a(l)}function _(t){const e=a(c),r=a(l);return e?e.type!==i:t&&r!==i}const w={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"}]}},S=4;function E({record:t,children:e}){return p(c.Provider,{value:t,children:e})}function M(){return a(c)}function U(t){const e=a(c);return e!==null&&e.type===t?e:null}export{E as CurrentRecordProvider,v as DeclaredRecordTypeProvider,i as PRODUCT_RECORD_TYPE,S as SAMPLE_PICTURE_COUNT,w as SAMPLE_RECORD,C as declaredRecordTypeOf,b as editorPageDrawsOtherRecord,P as recordFacts,m as recordFieldSpecs,D as recordPictures,M as useCurrentRecord,U as useCurrentRecordOf,O as useDeclaredRecordType,_ as useDrawsOtherRecord};
@@ -0,0 +1,4 @@
1
+ export declare function fitmentTableIsDynamic(props: {
2
+ dynamic?: unknown;
3
+ wheel?: unknown;
4
+ }, onDynamicPage: boolean): boolean;
@@ -0,0 +1 @@
1
+ function e(n,t){return t||n.dynamic===!0}export{e as fitmentTableIsDynamic};
@@ -0,0 +1,7 @@
1
+ export declare const PAGE_BLOCKS_FROM_FOOTER: {
2
+ readonly MenuBlock: "FooterMenu";
3
+ readonly EmailFormBlock: "FooterEmailSignup";
4
+ readonly SocialLogosBlock: "FooterSocial";
5
+ };
6
+ export declare const PAGE_MENU_DIRECTION_DEFAULT = "column";
7
+ export declare function addPageBlocksFromFooter(components: Record<string, object>): void;
@@ -0,0 +1 @@
1
+ import{jsx as u}from"react/jsx-runtime";import a from"../../components/FooterMenu.js";const d={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"},s="column";function f({menu:o,heading:e,accordionMobile:r,showDividers:n,direction:i,linkAlign:t,linkRange:l,puck:c}){return u(a,{menu:o,heading:e||void 0,accordionMobile:r,showDividers:n,layout:i==="row"?"row":"column",linkAlign:t,linkRange:l,editing:c?.isEditing})}function F(o){for(const[r,n]of Object.entries(d))o[r]={...o[n]};const e=o.MenuBlock;e.defaultProps={...e.defaultProps,direction:s},e.render=f}export{d as PAGE_BLOCKS_FROM_FOOTER,s as PAGE_MENU_DIRECTION_DEFAULT,F as addPageBlocksFromFooter};
@@ -0,0 +1,7 @@
1
+ export declare function previewPickKey(siteId: string | null, pageSlug: string | null): string;
2
+ export declare function readPreviewPick(key: string): string | undefined;
3
+ export declare function writePreviewPick(key: string, slug: string): void;
4
+ export declare function subscribePreviewPick(fn: () => void): () => void;
5
+ export declare function previewSlugFor(pick: string | undefined, legacy: string | null): string | null;
6
+ export declare function currentPreviewPickKey(): string;
7
+ export declare function useCurrentPreviewPick(): string | undefined;
@@ -0,0 +1 @@
1
+ "use client";import{useSyncExternalStore as s}from"react";import{safeLocalStorage as u}from"efficient-web-builder/format/lib/safe-storage";import{getEditorSiteId as p}from"efficient-web-builder/render/lib/editor-site";import{getEditorPageSlug as a}from"efficient-web-builder/format/lib/puck/editor-page-context";const f="sf-editor-preview-pick";let n=null;const o=new Set;function c(){if(n)return n;n={};const e=u.getItem(f);if(!e)return n;try{const r=JSON.parse(e);if(r&&typeof r=="object"&&!Array.isArray(r))for(const[t,i]of Object.entries(r))typeof i=="string"&&(n[t]=i)}catch{}return n}function d(){u.setItem(f,JSON.stringify(c()))}function l(e,r){return`${e??""}::${r??""}`}function m(e){return c()[e]}function g(e,r){const t=c();if(t[e]!==r){t[e]=r,d();for(const i of o)i()}}function w(e){return o.add(e),()=>o.delete(e)}function x(e,r){const t=e??r??"";return t.trim()?t:null}function P(){return l(p(),a())}function E(){const e=P();return s(w,()=>m(e),()=>{})}export{P as currentPreviewPickKey,l as previewPickKey,x as previewSlugFor,m as readPreviewPick,w as subscribePreviewPick,E as useCurrentPreviewPick,g as writePreviewPick};
@@ -0,0 +1,6 @@
1
+ import { type ReactNode } from "react";
2
+ export declare function PreviewProductProvider({ slug, children, }: {
3
+ slug?: string | null;
4
+ children: ReactNode;
5
+ }): import("react").JSX.Element;
6
+ export declare function usePreviewProductSlug(): string | null;
@@ -0,0 +1 @@
1
+ "use client";import{jsx as n}from"react/jsx-runtime";import{createContext as i,useContext as u}from"react";const r=i(null);function l({slug:e,children:t}){const o=typeof e=="string"&&e.trim()?e:null;return n(r.Provider,{value:o,children:t})}function s(){return u(r)}export{l as PreviewProductProvider,s as usePreviewProductSlug};
@@ -0,0 +1,5 @@
1
+ export default function RenderClient({ data, sectionBackgroundWidth, sectionContentWidth, }: {
2
+ data: unknown;
3
+ sectionBackgroundWidth?: unknown;
4
+ sectionContentWidth?: unknown;
5
+ }): import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ "use client";import{jsx as o}from"react/jsx-runtime";import{renderConfig as a}from"./render-config.js";import i from"efficient-web-builder/render/lib/puck/page-render";import{siteWidthsMetadata as n}from"efficient-web-builder/format/lib/content/section-width";function m({data:t,sectionBackgroundWidth:e,sectionContentWidth:r}){return o(i,{config:a(),data:t,metadata:n(e,r)})}export{m as default};
@@ -0,0 +1,4 @@
1
+ import type { Config } from "efficient-easel/blocks";
2
+ import "./slot-seeds.js";
3
+ export declare function renderConfig(): Config;
4
+ export declare function headerRenderConfig(): Config;
@@ -0,0 +1 @@
1
+ import{Fragment as u,jsx as d}from"react/jsx-runtime";import{generalRenderBlocks as E}from"efficient-web-builder/render/lib/puck/blocks/general/render-config";import{finishRenderRegistry as R}from"efficient-web-builder/render/lib/puck/render-registry";import{buildPuckCategories as g}from"efficient-web-builder/format/lib/puck/section-catalog";import{SITE_HEADER_TYPE as m}from"efficient-web-builder/format/lib/puck/section-groups";import"./slot-seeds.js";import{COMMERCE_RENDERS as h}from"./blocks/commerce/renders.js";import{SERVICE_RENDERS as b}from"./blocks/service/renders.js";import P from"./blocks/text-part-shapes.json";import{addPageBlocksFromFooter as S}from"./footer-page-blocks.js";import{drawPublishedStorefrontRoot as _}from"./storefront-root.js";const k=P,x=(t,e)=>{const o=k[t];return{...e,...o?{textParts:o}:null}};let f=null;function l(){if(f)return f;const t={...E()};for(const[o,n]of Object.entries({...h,...b}))t[o]=x(o,n);S(t);const e={root:{render:_},categories:g(),components:t};return R(e),f=e,e}function j(t=l()){const e=t.components,o=Object.keys(e),n=new Set([m]),i=[m];for(;i.length;){const p=i.shift();for(const c of Object.values(e[p]?.fields??{})){if(c?.type!=="slot")continue;const a=c.allow??o.filter(r=>!c.disallow?.includes(r));for(const r of a)n.has(r)||!(r in e)||(n.add(r),i.push(r))}}return[...n]}let s=null;function I(){if(s)return s;const t=l(),e=t.components;return s={...t,root:{render:({children:o})=>d(u,{children:o})},components:Object.fromEntries(j(t).map(o=>[o,e[o]]))},s}export{I as headerRenderConfig,l as renderConfig};
@@ -0,0 +1,3 @@
1
+ import type { SlotSectionSpec } from "efficient-easel/screen/lib/puck/slot-section-spec";
2
+ export declare const STOREFRONT_SLOT_SECTION_SPECS: Record<string, SlotSectionSpec>;
3
+ export { SLOT_SECTION_SPECS, buildSlotSeedChildren } from "efficient-web-builder/render/lib/puck/slot-specs";
@@ -0,0 +1 @@
1
+ import{COLLECTION_CARD_SEED_COUNT as r}from"../../components/CollectionCard.js";import{GALLERY_ITEM_SEEDS as t}from"../../components/GalleryItem.js";import{BOOKING_REGIONS as a,BOOKING_REGION_NAMES as s}from"../../components/booking/BookingBox.js";import{SUBMIT_REGIONS as l,SUBMIT_REGION_NAMES as i}from"../../components/submit/SubmitBox.js";import{registerSlotSectionSpecs as c}from"efficient-web-builder/render/lib/puck/slot-specs";import{say as d}from"efficient-web-builder/format/lib/editor-words";const m={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>a.map(e=>({region:e,name:s[e]})),addBlocked:()=>d("A Booking Form is these three boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},SubmitBuild:{slot:"boxes",childType:"SubmitBox",addLabel:"Add box",fixed:!0,seeds:()=>l.map(e=>({region:e,name:i[e]})),addBlocked:()=>d("A Submit-a-build section is these two boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},Collections:{slot:"cards",childType:"CollectionCard",addLabel:"Add card",seeds:()=>Array.from({length:r},()=>({collection:null}))},ProductGrid:{slot:"products",childType:"ProductRef",addLabel:"Add product",seeds:()=>[{code:""},{code:""},{code:""}],legacy:e=>Array.isArray(e.design_codes)?e.design_codes.map(o=>o?.code).filter(o=>!!o).map(o=>({code:o})):[]},GalleryB:{slot:"items",childType:"GalleryItem",addLabel:"Add image",seeds:()=>t.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(o=>({...o})):[]}};c(m);import{SLOT_SECTION_SPECS as A,buildSlotSeedChildren as O}from"efficient-web-builder/render/lib/puck/slot-specs";export{A as SLOT_SECTION_SPECS,m as STOREFRONT_SLOT_SECTION_SPECS,O as buildSlotSeedChildren};
@@ -0,0 +1,18 @@
1
+ import type { ReactElement, ReactNode } from "react";
2
+ export type StorefrontRootProps = {
3
+ children?: ReactNode;
4
+ puck?: {
5
+ isEditing?: boolean;
6
+ };
7
+ fullWidth?: boolean;
8
+ pageWidth?: number;
9
+ kind?: string;
10
+ previewProduct?: string;
11
+ [key: string]: unknown;
12
+ };
13
+ export declare function drawSystemPage(rootProps: StorefrontRootProps, note?: ReactNode): ReactElement | null;
14
+ export declare function StorefrontPageProviders({ rootProps, children }: {
15
+ rootProps: StorefrontRootProps;
16
+ children?: ReactNode;
17
+ }): import("react").JSX.Element;
18
+ export declare function drawPublishedStorefrontRoot(rootProps: StorefrontRootProps): ReactElement;
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as m}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{ProductHeroContentProvider as s}from"../../components/product-hero/hero-content.js";import{SubscribePopupView as g}from"../../components/SubscribePopup.js";import{ConsentBannerPreview as h}from"../../components/ConsentBanner.js";import{CART_DRAWER_KIND as v,resolveCartDrawerContent as P}from"efficient-web-builder/format/lib/content/cart-drawer";import{CONSENT_BANNER_KIND as C,resolveConsentBannerContent as b}from"efficient-web-builder/format/lib/content/consent-banner";import{SITE_FOOTER_KIND as k}from"efficient-web-builder/format/lib/content/footer";import{isPageBackgroundAuthored as y}from"efficient-web-builder/format/lib/content/page-background";import{resolveProductHeroContent as w}from"../content/product-hero.js";import{templateProductKind as _}from"efficient-web-builder/format/lib/content/product-page";import{resolveSubscribeContent as B,SUBSCRIBE_POPUP_KIND as R}from"efficient-web-builder/format/lib/content/subscribe";import{DeclaredRecordTypeProvider as S,declaredRecordTypeOf as D}from"./current-record.js";import{PublishedPageFrame as N}from"efficient-web-builder/render/lib/puck/page-frame";import{PreviewProductProvider as x}from"./preview-product.js";import{TemplateProductKindProvider as E}from"./template-product-kind.js";function K(r,t){const{kind:n}=r;if(n===R){const i=B(r);return m("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[t??null,e(g,{inline:!0,content:i})]})}if(n===v){const i=P(r);return m("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[t??null,e(p,{children:e(f,{preview:!0,children:e(a,{content:i})})})]})}return n===C?m("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[t??null,e(h,{layout:b(r).layout})]}):null}function T({rootProps:r,children:t}){const{kind:n,puck:i,previewProduct:d}=r,c=!!i?.isEditing,o=_(typeof n=="string"?n:"",r);return e(S,{type:D(r),children:e(E,{kind:o,children:e(s,{content:w(r),children:e(x,{slug:c?d:null,children:e(u,{children:t})})})})})}function $(r){const t=K(r);if(t)return t;const{children:n,widthMode:i,fullWidth:d,pageWidth:c,pageBackground:o,kind:l}=r;return e(N,{pageBackground:o,inheritBackground:l===k&&!y(o),w:{widthMode:i,fullWidth:d,pageWidth:c},children:e(T,{rootProps:r,children:n})})}export{T as StorefrontPageProviders,$ as drawPublishedStorefrontRoot,K as drawSystemPage};
@@ -0,0 +1,10 @@
1
+ export declare const SUBSCRIBE_CONTENT_TYPES: readonly ["issues", "posts"];
2
+ export type SubscribeContentType = (typeof SUBSCRIBE_CONTENT_TYPES)[number];
3
+ export declare const SUBSCRIBE_CONTENT_TYPE_OPTIONS: readonly {
4
+ label: string;
5
+ value: SubscribeContentType;
6
+ }[];
7
+ export declare const SUBSCRIBE_CONTENT_TYPE_DEFAULT: SubscribeContentType;
8
+ export declare function subscribeContentTypeOf(value: unknown): SubscribeContentType;
9
+ export declare const SUBSCRIBE_CONTENT_TYPE_FIELDS: Record<string, readonly SubscribeContentType[]>;
10
+ export declare function withSubscribeContentRules<T extends Record<string, unknown>>(fields: T): T;
@@ -0,0 +1 @@
1
+ import{shownForOption as p,withRowRules as i}from"efficient-web-builder/format/lib/puck/show-when-attach";const t=["issues","posts"],T=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],e="issues";function E(s){return t.includes(s)?s:e}const r={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function S(s){return i(s,Object.entries(r).map(([o,n])=>[[o],p("contentType",t,e,n)]))}export{t as SUBSCRIBE_CONTENT_TYPES,e as SUBSCRIBE_CONTENT_TYPE_DEFAULT,r as SUBSCRIBE_CONTENT_TYPE_FIELDS,T as SUBSCRIBE_CONTENT_TYPE_OPTIONS,E as subscribeContentTypeOf,S as withSubscribeContentRules};
@@ -0,0 +1,7 @@
1
+ import { type ReactNode } from "react";
2
+ import type { ProductKind } from "../api/index.js";
3
+ export declare function TemplateProductKindProvider({ kind, children, }: {
4
+ kind?: ProductKind | null;
5
+ children: ReactNode;
6
+ }): import("react").JSX.Element;
7
+ export declare function useTemplateProductKind(): ProductKind;
@@ -0,0 +1 @@
1
+ "use client";import{jsx as r}from"react/jsx-runtime";import{createContext as n,useContext as l}from"react";const e=n("alloy-wheel");function c({kind:t,children:o}){return r(e.Provider,{value:t??"alloy-wheel",children:o})}function d(){return l(e)}export{c as TemplateProductKindProvider,d as useTemplateProductKind};
@@ -0,0 +1,12 @@
1
+ import { type ViewTier } from "efficient-easel/screen/lib/content/view-tiers";
2
+ import { type PlpColumns } from "../wheels/plp-grid.js";
3
+ export declare const CARD_IMAGE_INSET = "4rem";
4
+ export interface CardImageStep {
5
+ below: number;
6
+ slot: string;
7
+ }
8
+ export declare function cardImageSlot(columns: number): string;
9
+ export declare function cardImageSizes(steps: readonly CardImageStep[], widest: string): string;
10
+ export declare function gridClassImageSizes(gridClass: string, cards?: number): string;
11
+ export declare const CARD_IMAGE_SIZES: string;
12
+ export declare function plpCardImageSizes(columns: PlpColumns, tier?: ViewTier | null): string;
@@ -0,0 +1 @@
1
+ import{VIEW_DESKTOP_MIN as m,VIEW_TABLET_MIN as I}from"efficient-easel/screen/lib/content/view-tiers";import{PLP_AUTO_MIN_CARD_PX as _,PLP_COLUMNS_AUTO as b,PLP_FIXED_MIN_CARD_PX as d}from"../wheels/plp-grid.js";import{fillRow as P,gridColumnsOf as f}from"./fill-row.js";const w="4rem";function r(t){return`calc(${t<=1?"100vw":`100vw / ${t}`} - ${w})`}function a(t,o){return[...[...t].sort((e,s)=>e.below-s.below).map(e=>`(max-width: ${e.below-.02}px) ${e.slot}`),o].join(", ")}function S(t,o){const l=f(t),{base:e,steps:s}=o===void 0?l:P(l,o);return a(s.map(i=>({below:i.below,slot:r(i.columns)})),r(e))}const E=a([{below:800,slot:r(1)},{below:1100,slot:r(2)}],r(4)),M={mobile:280,tablet:640,desktop:720},p=48,c=(t,o)=>Math.max(1,Math.floor((t+p)/(o+p)));function n(t,o){const l=M[t];if(o===b){const e=c(l,_);return e<2?r(1):`${Math.ceil(_*(e+1)/e)}px`}return r(Math.min(o,c(l,d)))}function C(t,o=null){return o?n(o,t[o]):a([{below:I,slot:n("mobile",t.mobile)},{below:m,slot:n("tablet",t.tablet)}],n("desktop",t.desktop))}export{w as CARD_IMAGE_INSET,E as CARD_IMAGE_SIZES,a as cardImageSizes,r as cardImageSlot,S as gridClassImageSizes,C as plpCardImageSizes};
@@ -0,0 +1,10 @@
1
+ export declare const LISTING_CARD_SHOW: {
2
+ readonly showCardSizes: true;
3
+ readonly showCardBuy: true;
4
+ readonly showCardPage: true;
5
+ };
6
+ export declare const GRID_CARD_SHOW: {
7
+ readonly showCardSizes: true;
8
+ readonly showCardBuy: false;
9
+ readonly showCardPage: false;
10
+ };
@@ -0,0 +1 @@
1
+ const e={showCardSizes:!0,showCardBuy:!0,showCardPage:!0},r={showCardSizes:!0,showCardBuy:!1,showCardPage:!1};export{r as GRID_CARD_SHOW,e as LISTING_CARD_SHOW};
@@ -0,0 +1,7 @@
1
+ export type FilterBarLayout = "pills" | "columns";
2
+ export declare const DEFAULT_FILTER_BAR_LAYOUT: FilterBarLayout;
3
+ export declare const FILTER_BAR_LAYOUT_OPTIONS: readonly {
4
+ label: string;
5
+ value: FilterBarLayout;
6
+ }[];
7
+ export declare function parseFilterBarLayout(value: unknown): FilterBarLayout;
@@ -0,0 +1 @@
1
+ import{parseOption as o}from"efficient-web-builder/format/lib/parse-option";const e="pills",r=[{label:"Pills",value:"pills"},{label:"Columns",value:"columns"}];function p(l){return o(r,e,l)}export{e as DEFAULT_FILTER_BAR_LAYOUT,r as FILTER_BAR_LAYOUT_OPTIONS,p as parseFilterBarLayout};
@@ -0,0 +1,16 @@
1
+ export interface GridColumnStep {
2
+ below: number;
3
+ columns: number;
4
+ }
5
+ export interface GridColumns {
6
+ base: number;
7
+ steps: GridColumnStep[];
8
+ }
9
+ export declare function gridColumnsOf(gridClass: string): GridColumns;
10
+ export declare function fillRowColumns(columns: number, cards: number): number;
11
+ export declare function fillRow(grid: GridColumns, cards: number): GridColumns;
12
+ export interface FillRowCards {
13
+ limit?: number;
14
+ cards?: number;
15
+ }
16
+ export declare function fillRowCss(cls: string, gridClass: string, { limit, cards }?: FillRowCards): string;
@@ -0,0 +1 @@
1
+ function h(o){const e=/(?:^|\s)grid-cols-(\d+)(?=\s|$)/.exec(o);if(!e)throw new Error(`gridColumnsOf: no base grid-cols-N in "${o}"`);const t=[...o.matchAll(/(?:^|\s)max-\[(\d+)px\]:grid-cols-(\d+)(?=\s|$)/g)].map(s=>({below:Number(s[1]),columns:Number(s[2])})).sort((s,i)=>i.below-s.below);return{base:Number(e[1]),steps:t}}function a(o,e){return Math.max(1,Math.min(o,Math.floor(e)))}function w(o,e){return{base:a(o.base,e),steps:o.steps.map(t=>({below:t.below,columns:a(t.columns,e)}))}}const p=o=>`grid-template-columns:repeat(${o},minmax(0,1fr))`;function $(o,e,{limit:t,cards:s}={}){const{base:i,steps:l}=h(e),r=typeof t=="number"&&t>0?t:void 0,b=Math.max(i,...l.map(n=>n.columns));if(s!==void 0&&Math.min(s,r??1/0)>=b)return"";const x=[{min:l[0]?.below,max:void 0,columns:i},...l.map((n,u)=>({min:l[u+1]?.below,max:n.below,columns:n.columns}))],d=[];for(const n of x){const u=r===void 0?n.columns:a(n.columns,r),m=[];u<n.columns&&m.push(`.${o}.${o}{${p(u)}}`);for(let c=u-1;c>=1;c--)m.push(`.${o}:not(:has(> :nth-child(${c+1}))){${p(c)}}`);if(m.length===0)continue;const f=n.min!==void 0&&n.max!==void 0?`(${n.min}px <= width < ${n.max}px)`:n.max!==void 0?`(width < ${n.max}px)`:n.min!==void 0?`(width >= ${n.min}px)`:void 0;d.push(f?`@media ${f}{${m.join("")}}`:m.join(""))}return d.join("")}export{w as fillRow,a as fillRowColumns,$ as fillRowCss,h as gridColumnsOf};
@@ -0,0 +1,11 @@
1
+ export type HeroLayout = "split" | "imageRight" | "stacked";
2
+ export declare const HERO_LAYOUTS: readonly ["split", "imageRight", "stacked"];
3
+ export declare const DEFAULT_HERO_LAYOUT: HeroLayout;
4
+ export declare function parseHeroLayout(v: unknown): HeroLayout;
5
+ export type HeroTextAlign = "left" | "center";
6
+ export declare const DEFAULT_HERO_TEXT_ALIGN: HeroTextAlign;
7
+ export declare function parseHeroTextAlign(v: unknown): HeroTextAlign;
8
+ export declare const HERO_RATIO_MIN = 35;
9
+ export declare const HERO_RATIO_MAX = 70;
10
+ export declare const DEFAULT_HERO_RATIO = 50;
11
+ export declare function parseHeroRatio(v: unknown): number;
@@ -0,0 +1 @@
1
+ const r=["split","imageRight","stacked"],n="split";function s(t){return r.includes(t)?t:n}const c="left";function u(t){return t==="center"?"center":"left"}const o=35,i=70,p=50;function _(t){const e=typeof t=="number"?t:Number(t);return Number.isFinite(e)?Math.min(i,Math.max(o,Math.round(e))):p}export{n as DEFAULT_HERO_LAYOUT,p as DEFAULT_HERO_RATIO,c as DEFAULT_HERO_TEXT_ALIGN,r as HERO_LAYOUTS,i as HERO_RATIO_MAX,o as HERO_RATIO_MIN,s as parseHeroLayout,_ as parseHeroRatio,u as parseHeroTextAlign};
@@ -0,0 +1,14 @@
1
+ import { type ImageFit } from "efficient-web-builder/format/lib/content/image-fit";
2
+ export type HeroGalleryMode = "main" | "thumbs" | "tiled";
3
+ export declare const HERO_GALLERY_MODES: readonly ["main", "thumbs", "tiled"];
4
+ export declare const DEFAULT_HERO_GALLERY_MODE: HeroGalleryMode;
5
+ export declare function parseHeroGalleryMode(v: unknown): HeroGalleryMode;
6
+ export type HeroImageFit = ImageFit;
7
+ export declare const HERO_IMAGE_FITS: readonly HeroImageFit[];
8
+ export declare const DEFAULT_HERO_IMAGE_FIT: HeroImageFit;
9
+ export declare function parseHeroImageFit(v: unknown): HeroImageFit;
10
+ export declare function heroImageFitOptions(): {
11
+ label: string;
12
+ value: HeroImageFit;
13
+ }[];
14
+ export declare function resolveHeroImageFit(fit: HeroImageFit, composed: boolean): HeroImageFit;
@@ -0,0 +1 @@
1
+ import{IMAGE_FIT_LABEL as o,parseImageFit as r}from"efficient-web-builder/format/lib/content/image-fit";const n=["main","thumbs","tiled"],i="thumbs";function c(t){return n.includes(t)?t:i}const p=["contain","cover"],E="contain";function s(t){return r(t,E)}function _(){return p.map(t=>({label:o[t],value:t}))}function m(t,e){return e?"contain":t}export{i as DEFAULT_HERO_GALLERY_MODE,E as DEFAULT_HERO_IMAGE_FIT,n as HERO_GALLERY_MODES,p as HERO_IMAGE_FITS,_ as heroImageFitOptions,c as parseHeroGalleryMode,s as parseHeroImageFit,m as resolveHeroImageFit};
@@ -0,0 +1,7 @@
1
+ export type HeroPricePlacement = "top" | "belowSpecs";
2
+ export declare const DEFAULT_HERO_PRICE_PLACEMENT: HeroPricePlacement;
3
+ export declare const HERO_PRICE_PLACEMENT_OPTIONS: readonly {
4
+ label: string;
5
+ value: HeroPricePlacement;
6
+ }[];
7
+ export declare function parseHeroPricePlacement(value: unknown): HeroPricePlacement;
@@ -0,0 +1 @@
1
+ import{parseOption as t}from"efficient-web-builder/format/lib/parse-option";const o="top",r=[{label:"Under the title",value:"top"},{label:"Below the specs",value:"belowSpecs"}];function l(e){return t(r,o,e)}export{o as DEFAULT_HERO_PRICE_PLACEMENT,r as HERO_PRICE_PLACEMENT_OPTIONS,l as parseHeroPricePlacement};
@@ -0,0 +1,18 @@
1
+ export interface KeyItem {
2
+ label: string;
3
+ disabled?: boolean;
4
+ }
5
+ export interface KeyState {
6
+ open: boolean;
7
+ focus: number;
8
+ typed: string;
9
+ }
10
+ export interface KeyStep {
11
+ state: KeyState;
12
+ commit?: number;
13
+ refocus?: boolean;
14
+ handled: boolean;
15
+ }
16
+ export declare const TYPEAHEAD_RESET_MS = 500;
17
+ export declare function firstFocus(items: readonly KeyItem[], chosen: number): number;
18
+ export declare function selectKey(state: KeyState, key: string, items: readonly KeyItem[]): KeyStep;
@@ -0,0 +1 @@
1
+ const h=500,d=(t,e)=>!!t[e]&&!t[e].disabled;function s(t,e,n){const a=t.length;for(let u=1;u<=a;u++){const r=((e+n*u)%a+a)%a;if(d(t,r))return r}return e}function c(t,e){return s(t,e===1?-1:t.length,e)}function w(t,e){return d(t,e)?e:Math.max(c(t,1),0)}function E(t,e,n){const{open:a,focus:u}=t,r=o=>({...t,...o});if(e.length===1&&/\S/.test(e)){const o=t.typed+e.toLowerCase(),f=n.findIndex((l,p)=>d(n,p)&&l.label.toLowerCase().startsWith(o));return{state:r({open:!0,typed:o,focus:f>=0?f:u}),handled:!0}}if(!a)return e==="ArrowDown"||e==="ArrowUp"||e==="Enter"||e===" "?{state:r({open:!0,typed:""}),handled:!0}:{state:t,handled:!1};switch(e){case"ArrowDown":return{state:r({focus:s(n,u,1)}),handled:!0};case"ArrowUp":return{state:r({focus:s(n,u,-1)}),handled:!0};case"Home":return{state:r({focus:c(n,1)}),handled:!0};case"End":return{state:r({focus:c(n,-1)}),handled:!0};case"Enter":case" ":return d(n,u)?{state:r({open:!1,typed:""}),commit:u,refocus:!0,handled:!0}:{state:t,handled:!0};case"Escape":return{state:r({open:!1,typed:""}),refocus:!0,handled:!0};case"Tab":return{state:r({open:!1,typed:""}),handled:!1};default:return{state:t,handled:!1}}}export{h as TYPEAHEAD_RESET_MS,w as firstFocus,E as selectKey};
@@ -0,0 +1,3 @@
1
+ export declare const SITE_SLUG_HEADER = "x-storefront-site";
2
+ export declare const SITE_HOST_HEADER = "x-storefront-host";
3
+ export declare const PREVIEW_TOKEN_HEADER = "x-storefront-preview";
@@ -0,0 +1 @@
1
+ const t="x-storefront-site",o="x-storefront-host",E="x-storefront-preview";export{E as PREVIEW_TOKEN_HEADER,o as SITE_HOST_HEADER,t as SITE_SLUG_HEADER};
@@ -0,0 +1,16 @@
1
+ import type { AdminStorefrontPage } from "./api/index.js";
2
+ export { DYNAMIC_PAGES_GROUP, DYNAMIC_PAGES_GROUP_KEY, DYNAMIC_PAGE_KIND, MAIN_PAGES_GROUP, bucketEditorPageRows, isDynamicPageRow, type EditorPageBucket, type EditorPageRowLike, } from "efficient-web-builder/format/lib/editor-page-rows";
3
+ export declare const LIGHTBOX_GROUP = "Popups";
4
+ export declare const SITE_GROUP = "Site";
5
+ export declare function pageAnswersAtOwnSlug(page: {
6
+ kind?: string | null;
7
+ layout: unknown;
8
+ }): boolean;
9
+ export declare function pageMenuLabel(page: AdminStorefrontPage): string;
10
+ export declare function pageGroup(page: AdminStorefrontPage): string | null;
11
+ export interface PageMenuGroup {
12
+ key: string;
13
+ group: string | null;
14
+ pages: AdminStorefrontPage[];
15
+ }
16
+ export declare function groupPagesForMenu(pages: AdminStorefrontPage[]): PageMenuGroup[];
@@ -0,0 +1 @@
1
+ import{SUBSCRIBE_POPUP_SLUG as _,isSystemPageSlug as i}from"efficient-web-builder/format/lib/content/subscribe";import{CART_DRAWER_SLUG as S}from"efficient-web-builder/format/lib/content/cart-drawer";import{CONSENT_BANNER_SLUG as E}from"efficient-web-builder/format/lib/content/consent-banner";import{layoutDeclaredProductKind as G}from"efficient-web-builder/format/lib/content/product-page";import{SITE_FOOTER_SLUG as A}from"efficient-web-builder/format/lib/content/footer";import{orderPages as R}from"./storefront-page-order.js";import{isDynamicPageRow as d}from"efficient-web-builder/format/lib/editor-page-rows";import{DYNAMIC_PAGES_GROUP as x,DYNAMIC_PAGES_GROUP_KEY as L,DYNAMIC_PAGE_KIND as h,MAIN_PAGES_GROUP as B,bucketEditorPageRows as Y,isDynamicPageRow as F}from"efficient-web-builder/format/lib/editor-page-rows";const g="Popups",f="Site";function C(e){return d(e)?!1:G(e.layout)===null}const c={[_]:{label:"Site popup",group:g},[A]:{label:"Footer",group:f},[S]:{label:"Cart drawer",group:f},[E]:{label:"Cookie banner",group:g}};function D(e){return c[e.slug]?.label||e.title||e.slug}function a(e){const t=e.group?.trim();return t||null}function P(e,t){const r=new Map;for(const s of e){const u=t(s),n=r.get(u);n?n.push(s):r.set(u,[s])}return r}function M(e){const t=R(e),r=[],s=t.filter(o=>!i(o.slug)),u=s.filter(o=>!a(o));u.length&&r.push({key:"top",group:null,pages:u});const n=s.filter(o=>a(o));for(const[o,p]of P(n,l=>a(l)))r.push({key:`folder:${o}`,group:o,pages:p});const m=t.filter(o=>i(o.slug));for(const[o,p]of P(m,l=>c[l.slug]?.group??g))r.push({key:`system:${o}`,group:o,pages:p});return r}export{x as DYNAMIC_PAGES_GROUP,L as DYNAMIC_PAGES_GROUP_KEY,h as DYNAMIC_PAGE_KIND,g as LIGHTBOX_GROUP,B as MAIN_PAGES_GROUP,f as SITE_GROUP,Y as bucketEditorPageRows,M as groupPagesForMenu,F as isDynamicPageRow,C as pageAnswersAtOwnSlug,a as pageGroup,D as pageMenuLabel};
@@ -0,0 +1,3 @@
1
+ import type { AdminStorefrontPage } from "./api/index.js";
2
+ export declare const PAGE_ORDER: string[];
3
+ export declare const orderPages: (pages: AdminStorefrontPage[]) => AdminStorefrontPage[];
@@ -0,0 +1 @@
1
+ const s=["home","products","gallery","about","contact"],a=r=>{const t=r.slug.trim().toLowerCase(),o=(r.title??"").trim().toLowerCase(),e=s.findIndex(n=>n===t||n===o);return e===-1?Number.POSITIVE_INFINITY:e},c=r=>r.map((t,o)=>({page:t,idx:o,rank:a(t)})).sort((t,o)=>t.rank-o.rank||t.idx-o.idx).map(t=>t.page);export{s as PAGE_ORDER,c as orderPages};
@@ -0,0 +1,11 @@
1
+ import { type FontRole } from "efficient-web-builder/format/lib/fonts";
2
+ export declare const SUBMIT_TEXT_KINDS: readonly ["field", "tick", "thanks"];
3
+ export type SubmitTextKind = (typeof SUBMIT_TEXT_KINDS)[number];
4
+ export declare const SUBMIT_TEXT_KIND_LABELS: Record<SubmitTextKind, string>;
5
+ export declare const SUBMIT_KIND_PROP: Record<SubmitTextKind, string>;
6
+ export declare const SUBMIT_KIND_VARS: Record<SubmitTextKind, {
7
+ font: string;
8
+ size: string;
9
+ }>;
10
+ export declare function submitKindRole(value: unknown): FontRole | null;
11
+ export declare function submitKindStyle(props: Record<string, unknown>): Record<string, string>;
@@ -0,0 +1 @@
1
+ import{FONT_ROLES as f}from"efficient-web-builder/format/lib/fonts";import{partStyleDeclarations as l}from"efficient-web-builder/render/lib/puck/part-styles";const c=["field","tick","thanks"],T={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},r={field:"styleField",tick:"styleTick",thanks:"styleThanks"},s={field:{font:"--sb-field-font",size:"--sb-field-size"},tick:{font:"--sb-tick-font",size:"--sb-tick-size"},thanks:{font:"--sb-thanks-font",size:"--sb-thanks-size"}};function a(t){return typeof t=="string"&&f.includes(t)?t:null}const k={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function _(t){const n={};for(const e of c){const o=a(t[r[e]]);if(!o)continue;const i=l({role:o},k);i.fontFamily&&(n[s[e].font]=i.fontFamily),i.fontSize&&(n[s[e].size]=i.fontSize)}return n}export{r as SUBMIT_KIND_PROP,s as SUBMIT_KIND_VARS,c as SUBMIT_TEXT_KINDS,T as SUBMIT_TEXT_KIND_LABELS,a as submitKindRole,_ as submitKindStyle};
@@ -0,0 +1,29 @@
1
+ import type { TyreVariant } from "../api/index.js";
2
+ export interface EuTyreLabel {
3
+ size: string;
4
+ registrationNumber: string;
5
+ fuelClass: string;
6
+ wetGripClass: string;
7
+ rollingNoiseDb: number | null;
8
+ rollingNoiseClass: string;
9
+ iceGrip: boolean;
10
+ severeSnow: boolean;
11
+ loadIndicator: string;
12
+ eprelUrl: string;
13
+ }
14
+ interface TyreCatalogueRow {
15
+ energy_class?: string | null;
16
+ wet_grip_class?: string | null;
17
+ external_rolling_noise_value?: number | null;
18
+ external_rolling_noise_class?: string | null;
19
+ ice_tire?: boolean | null;
20
+ severe_snow_tire?: boolean | null;
21
+ load_indicator?: string | null;
22
+ eprel_url?: string | null;
23
+ }
24
+ export declare function noiseLabel(label: EuTyreLabel): string | null;
25
+ export declare function tyreCatalogPath(registrationNumber: string): string;
26
+ export declare function toEuTyreLabel(size: string, registrationNumber: string, row: TyreCatalogueRow): EuTyreLabel | null;
27
+ export declare function loadEuTyreLabel(variant: TyreVariant): Promise<EuTyreLabel | null>;
28
+ export declare function loadEuTyreLabels(variants: TyreVariant[]): Promise<EuTyreLabel[]>;
29
+ export {};
@@ -0,0 +1 @@
1
+ import{API_URL as s,apiFetch as a}from"../api/index.js";function g(e){return e.rollingNoiseDb===null?null:e.rollingNoiseClass?`${e.rollingNoiseDb} dB (${e.rollingNoiseClass})`:`${e.rollingNoiseDb} dB`}function u(e){return`/api/tire-catalog/models/${encodeURIComponent(e)}/`}function c(e,l,r){const n=(r.eprel_url??"").trim();if(!n)return null;const t=(r.energy_class??"").trim(),i=(r.wet_grip_class??"").trim(),o=typeof r.external_rolling_noise_value=="number"?r.external_rolling_noise_value:null;return!t&&!i&&o===null?null:{size:e,registrationNumber:l,fuelClass:t,wetGripClass:i,rollingNoiseDb:o,rollingNoiseClass:(r.external_rolling_noise_class??"").trim(),iceGrip:r.ice_tire===!0,severeSnow:r.severe_snow_tire===!0,loadIndicator:(r.load_indicator??"").trim(),eprelUrl:n}}async function _(e){const l=(e.eprelRegistrationNumber??"").trim();if(!l)return null;try{const r=await a(u(l),{baseUrl:s});return c(e.size,l,r)}catch{return null}}async function m(e){return(await Promise.all(e.map(_))).filter(r=>r!==null)}export{_ as loadEuTyreLabel,m as loadEuTyreLabels,g as noiseLabel,c as toEuTyreLabel,u as tyreCatalogPath};
@@ -0,0 +1,2 @@
1
+ import type { Tyre } from "../api/index.js";
2
+ export declare const PLACEHOLDER_TYRE: Tyre;
@@ -0,0 +1 @@
1
+ const s={GBP:0,USD:0,AUD:0},o={loadIndex:"00",speedRating:"—",construction:"Radial",treadPattern:"Tread pattern",tireType:"Season"},t=["205/55 R16","225/45 R17","245/40 R19"],r={slug:"sample-tyre",name:"Tyre Model",brand:"Brand",designCode:"SAMPLE",description:"",shortDescription:"Tyre description — replace this with your own copy.",seoTitle:"",seoDescription:"",coverImage:null,inStock:!0,sizes:[...t],variants:t.map(e=>({sku:`SAMPLE-${e.replace(/[^0-9]/g,"")}`,size:e,specs:{...o},prices:{...s},image:null,inStock:!0,eprelRegistrationNumber:""})),mediaGroups:{photos:[],lifestyle:[],videos:[],accessories:[],others:[]},compatibleWheels:[],pdpTemplateSlug:null};export{r as PLACEHOLDER_TYRE};
@@ -0,0 +1,12 @@
1
+ import type { TyreVariant } from "../api/index.js";
2
+ import { type EuTyreLabel } from "./eu-tyre-label.js";
3
+ import type { SpecSheetRow } from "../wheels/spec-sheet.js";
4
+ export interface TyreSpecSheetSource {
5
+ brand: string;
6
+ variant: TyreVariant | null | undefined;
7
+ euLabel?: EuTyreLabel | null;
8
+ }
9
+ export interface TyreSpecSheet {
10
+ rows: SpecSheetRow[];
11
+ }
12
+ export declare function buildTyreSpecSheet(source: TyreSpecSheetSource): TyreSpecSheet;
@@ -0,0 +1 @@
1
+ import{noiseLabel as n}from"./eu-tyre-label.js";import{parseTyreSize as d}from"./tyre-size.js";function c(s){const{brand:a,variant:i,euLabel:e}=s;if(!i)return[];const t=d(i.size),r=i.specs,o=r;return[["size","Size",i.size],["section_width","Section Width",t?`${t.width} mm`:""],["aspect_ratio","Aspect Ratio",t?`${t.profile}`:""],["rim_diameter","Rim Diameter",t?`${t.rim}"`:""],["construction","Construction",r.construction],["load_index","Load Index",r.loadIndex],["speed_rating","Speed Rating",r.speedRating],["max_load_lbs","Max Load",o.maxLoad??""],["max_psi","Max Pressure",o.maxPressure??""],["tread_depth","Tread Depth",o.treadDepth??""],["overall_diameter","Overall Diameter",o.overallDiameter??""],["tread_pattern","Tread Pattern",r.treadPattern],["tire_type","Type",r.tireType],["brand","Manufacturer",a],["","Fuel Efficiency",e?.fuelClass??""],["","Wet Grip",e?.wetGripClass??""],["","Noise",e&&n(e)||""],["","Snow Grip",e?.severeSnow?"Yes":""],["","Ice Grip",e?.iceGrip?"Yes":""],["","Reinforced",e?.loadIndicator??""]]}function u(s){const a=[];for(const[i,e,t]of c(s)){const r=(t??"").trim();r&&a.push(i?{label:e,value:r,fieldKey:i}:{label:e,value:r})}return{rows:a}}export{u as buildTyreSpecSheet};
@@ -0,0 +1,2 @@
1
+ export declare function tyreHeading(brand: string, name: string): string;
2
+ export declare function tyreModelLine(brand: string, name: string): string;
@@ -0,0 +1 @@
1
+ function o(r,e){const t=e.trim(),n=r.trim();return n?t?i(t,n)?t:`${n} ${t}`:n:t}function l(r,e){const t=e.trim(),n=r.trim();return!n||!i(t,n)?t:t.slice(n.length).replace(/^[^\p{L}\p{N}]+/u,"")||t}function i(r,e){if(r.length<e.length||r.slice(0,e.length).toLowerCase()!==e.toLowerCase())return!1;const t=r[e.length];return t===void 0||!/[\p{L}\p{N}]/u.test(t)}export{o as tyreHeading,l as tyreModelLine};
@@ -0,0 +1,3 @@
1
+ import type { TyreFitAnswer, TyreFitStatus } from "./tyre-vehicle-fitment.js";
2
+ export declare function tyreFitHeadline(answer: TyreFitAnswer): string;
3
+ export declare const TYRE_FIT_LABEL: Record<TyreFitStatus, string>;
@@ -0,0 +1 @@
1
+ function o(t){const e=t.oemSizes.length>0?` Your car takes ${t.oemSizes.join(", ")}.`:"";return t.status==="fits"?`This tyre is made in a size your car takes.${e}`:t.status==="doesNotFit"?`This tyre is not made in a size your car takes.${e}`:"We don’t hold factory tyre sizes for this car, so we can’t tell you whether this tyre fits it. Please check your car’s door placard or ask us before ordering."}const s={fits:"Fits",doesNotFit:"Not your size",unknown:"Unknown"};export{s as TYRE_FIT_LABEL,o as tyreFitHeadline};
@@ -0,0 +1,2 @@
1
+ export declare const TYRE_PATH_PREFIX = "/tyres";
2
+ export declare function tyrePagePath(slug: string | null | undefined): string | null;
@@ -0,0 +1 @@
1
+ const r="/tyres";function e(t){return t?`${r}/${t}`:null}export{r as TYRE_PATH_PREFIX,e as tyrePagePath};
@@ -0,0 +1,12 @@
1
+ import { type PurchaseChoice, type SetComponent } from "../commerce.js";
2
+ import { type TyreFitAnswer } from "./tyre-vehicle-fitment.js";
3
+ import type { CartLine } from "../../components/CartContext.js";
4
+ import type { Tyre, TyreVariant } from "../api/index.js";
5
+ export declare function tyrePackComposition(variant: {
6
+ sku: string;
7
+ prices: Record<string, number | null>;
8
+ }, choice: PurchaseChoice): SetComponent[];
9
+ export declare function tyreCartLine(tyre: Pick<Tyre, "slug" | "name" | "brand">, variant: Pick<TyreVariant, "sku" | "size" | "prices">, pack: PurchaseChoice, qty: number): CartLine;
10
+ export declare function isTyreLine(line: Pick<CartLine, "kind">): boolean;
11
+ export declare function tyreFitWarning(answer: TyreFitAnswer | null, sku: string): string | null;
12
+ export declare function canOrderTyreVariant(variant: Pick<TyreVariant, "prices" | "inStock">, currency: string): boolean;
@@ -0,0 +1 @@
1
+ import{packComposition as o,packLabel as n}from"../commerce.js";import{variantFitStatus as s}from"./tyre-vehicle-fitment.js";import{tyrePagePath as u}from"./tyre-page-path.js";import{splitWheelName as c}from"../wheels/wheel-name.js";function m(e,t){return o({partNumber:e.sku,prices:e.prices},t)}const p="Tyre";function k(e,t,r,i){return{id:`${e.slug}|${t.sku}|${r.unit}|${r.spares>0?"spare":"no-spare"}`,slug:e.slug,name:c(e.name),process:e.brand||p,positionNo:"01",config:[{label:t.size},{label:n(r)}],finishName:"",size:t.size,components:m(t,r),qty:i,href:u(e.slug)??void 0,kind:"tyre",sku:t.sku,pack:r}}function g(e){return e.kind==="tyre"}function h(e,t){if(s(e,t)!=="doesNotFit")return null;const r=e.oemSizes;return`${r.length>0?`Your car takes ${r.join(", ")}.`:"It isn’t one of the sizes your car takes."} You can still order this size — check it suits your car first.`}function y(e,t){const r=e.prices?.[t];return typeof r!="number"||!Number.isFinite(r)||r<=0?!1:e.inStock}export{y as canOrderTyreVariant,g as isTyreLine,k as tyreCartLine,h as tyreFitWarning,m as tyrePackComposition};
@@ -0,0 +1,12 @@
1
+ import { type TyreFitAnswer, type TyreFitStatus } from "./tyre-vehicle-fitment.js";
2
+ import type { TyreVariant } from "../api/index.js";
3
+ export declare function tyreSizeFitStatus(answer: TyreFitAnswer | null, variants: readonly TyreVariant[], size: string): TyreFitStatus;
4
+ export declare const TYRE_FIT_CHIP: Record<TyreFitStatus, {
5
+ color: string | undefined;
6
+ dashed: boolean;
7
+ }>;
8
+ export interface TyreFitSizeChip {
9
+ size: string;
10
+ made: boolean;
11
+ }
12
+ export declare function tyreFitSizeChips(answer: TyreFitAnswer | null, variants: readonly TyreVariant[]): TyreFitSizeChip[];
@@ -0,0 +1 @@
1
+ import{variantFitStatus as p}from"./tyre-vehicle-fitment.js";import{parseTyreSize as h,tyreSizeLabel as z}from"./tyre-size.js";function m(o,u,i){if(!o)return"unknown";const r=u.filter(n=>n.size===i);if(r.length===0)return"unknown";const s=r.map(n=>p(o,n.sku));return s.includes("fits")?"fits":s.every(n=>n==="doesNotFit")?"doesNotFit":"unknown"}const k={fits:{color:"var(--accent)",dashed:!1},doesNotFit:{color:void 0,dashed:!1},unknown:{color:void 0,dashed:!0}};function y(o,u){if(!o)return[];const i=[];for(const e of u)i.includes(e.size)||i.push(e.size);const r=i.filter(e=>m(o,u,e)==="fits"),s=e=>{const t=h(e);return t?z(t):null},n=new Map;for(const e of r){const t=s(e);t!==null&&!n.has(t)&&n.set(t,e)}const f=[],c=new Set,d=new Set;for(const e of o.oemSizes){const t=s(e),l=t===null?void 0:n.get(t),a=l??e;c.has(a)||(c.add(a),t!==null&&d.add(t),f.push({size:a,made:l!==void 0}))}for(const e of r){const t=s(e);t!==null&&d.has(t)||c.has(e)||(c.add(e),f.push({size:e,made:!0}))}return f}export{k as TYRE_FIT_CHIP,y as tyreFitSizeChips,m as tyreSizeFitStatus};
@@ -0,0 +1,11 @@
1
+ export interface TyreSize {
2
+ width: number;
3
+ profile: number;
4
+ rim: number;
5
+ }
6
+ export declare const TYRE_SIZE_PARTS: readonly ["width", "profile", "rim"];
7
+ export type TyreSizePart = (typeof TYRE_SIZE_PARTS)[number];
8
+ export declare const TYRE_SIZE_PART_LABELS: Record<TyreSizePart, string>;
9
+ export declare function parseTyreSize(label: string | null | undefined): TyreSize | null;
10
+ export declare function tyreSizeLabel(size: Partial<TyreSize>): string;
11
+ export declare function tyreSizeLabels(size: TyreSize): string[];
@@ -0,0 +1 @@
1
+ const u=["width","profile","rim"],c={width:"Width",profile:"Profile",rim:"Rim"},d=/^\s*(\d{2,3})\s*\/\s*(\d{2,3})\s*[A-Za-z]*\s*(\d{2}(?:\.\d+)?)\s*$/,f={width:[100,500],profile:[20,100],rim:[10,30]};function m(r){const t=d.exec(r??"");if(!t)return null;const i={width:Number(t[1]),profile:Number(t[2]),rim:Number(t[3])};return u.every(n=>{const[o,l]=f[n];return i[n]>=o&&i[n]<=l})?i:null}function e(r){if(r.width==null)return"";if(r.profile==null)return String(r.width);const t=`${r.width}/${r.profile}`;return r.rim==null?t:`${t} R${r.rim}`}function w(r){return[e({width:r.width}),e({width:r.width,profile:r.profile}),e(r)]}export{u as TYRE_SIZE_PARTS,c as TYRE_SIZE_PART_LABELS,m as parseTyreSize,e as tyreSizeLabel,w as tyreSizeLabels};
@@ -0,0 +1,17 @@
1
+ import type { StockFitment, TyreVehicleFitment } from "../api/index.js";
2
+ import type { VehicleSelection } from "../wheels/fitment-options.js";
3
+ export type TyreFitStatus = TyreVehicleFitment["status"];
4
+ export type TyreFitAnswer = TyreVehicleFitment;
5
+ export interface TyreFitVehicleQuery {
6
+ make: string;
7
+ model: string;
8
+ year: number;
9
+ modification: string;
10
+ }
11
+ export declare function tyreFitQuery(vehicle: VehicleSelection | null | undefined): TyreFitVehicleQuery | null;
12
+ export declare function tyreVehicleFitmentPath(slug: string, vehicle: TyreFitVehicleQuery): string;
13
+ export declare function toTyreFitAnswer(vehicle: TyreFitVehicleQuery, raw: unknown): TyreFitAnswer;
14
+ export declare function loadTyreVehicleFitment(slug: string, vehicle: TyreFitVehicleQuery): Promise<TyreFitAnswer>;
15
+ export declare function oemTyreSizes(stock: StockFitment | null | undefined): string[];
16
+ export declare function oemBadgeSize(tyreSizes: readonly string[], oemSizes: readonly string[]): string | null;
17
+ export declare function variantFitStatus(answer: TyreFitAnswer | null, sku: string): TyreFitStatus;