efficient-storefront-blocks 0.90.0 → 0.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/chunks/{EditorPreviewCheckout-M4LID5YF.js → EditorPreviewCheckout-NFLTZCIQ.js} +1 -1
  3. package/dist/chunks/{SiteEditorProvider-2JWQZN2Q.js → SiteEditorProvider-UWRLDKJS.js} +1 -1
  4. package/dist/chunks/chunk-4VRLGKYU.js +387 -0
  5. package/dist/chunks/{chunk-3XIZADE6.js → chunk-HRTZ7SYX.js} +1 -1
  6. package/dist/chunks/{chunk-JMUP4FBL.js → chunk-PHQQRGQZ.js} +1 -1
  7. package/dist/chunks/{chunk-U6UPMVSX.js → chunk-YL2HPWVT.js} +1 -1
  8. package/dist/chunks/{fitment-data-3VLLTJW6.js → fitment-data-6KHIA3AT.js} +1 -1
  9. package/dist/contract.js +1 -9
  10. package/dist/editor/components/GalleryShowcaseSource.js +1 -1
  11. package/dist/editor/lib/document/block-align-row.js +1 -1
  12. package/dist/editor/lib/document/blocks/commerce/GalleryItem/fields.js +1 -1
  13. package/dist/editor/lib/document/blocks/service/index.d.ts +1 -1
  14. package/dist/editor/lib/document/config.js +1 -1
  15. package/dist/editor/lib/efficient-block-sources.js +1 -1
  16. package/dist/editor/lib/storefront-editor-words-kept.js +1 -1
  17. package/dist/editor/lib/storefront-editor-words.d.ts +6 -0
  18. package/dist/editor/lib/storefront-editor-words.js +1 -1
  19. package/dist/index.js +32 -32
  20. package/dist/render/app/globals.css +10 -1
  21. package/dist/render/built-with.json +1 -1
  22. package/dist/render/components/FooterMenu.d.ts +3 -1
  23. package/dist/render/components/FooterMenu.js +1 -1
  24. package/dist/render/components/FooterPayment.js +1 -1
  25. package/dist/render/components/FooterSocial.js +1 -1
  26. package/dist/render/components/PublishedFooter.js +1 -1
  27. package/dist/render/components/pdp-dynamic/DynamicGalleryGrid.js +1 -1
  28. package/dist/render/components/pdp-dynamic/RecordPhotoGallery.d.ts +2 -1
  29. package/dist/render/components/pdp-dynamic/RecordPhotoGallery.js +1 -1
  30. package/dist/render/lib/content/menu-card-seed.d.ts +4 -0
  31. package/dist/render/lib/content/menu-card-seed.js +1 -1
  32. package/dist/render/lib/content/menu-entry-type.d.ts +2 -0
  33. package/dist/render/lib/content/menu-entry-type.js +1 -0
  34. package/dist/render/lib/document/footer-page-blocks.js +1 -1
  35. package/dist/render/lib/sections/product-pictures.d.ts +2 -1
  36. package/dist/render/lib/sections/product-pictures.js +1 -1
  37. package/dist/words.d.ts +7 -0
  38. package/dist/words.js +2 -2
  39. package/package.json +2 -2
  40. package/dist/chunks/chunk-6TDIG6W3.js +0 -395
  41. package/dist/render/lib/content/legacy-block-align.d.ts +0 -2
  42. package/dist/render/lib/content/legacy-block-align.js +0 -1
  43. /package/dist/chunks/{chunk-6TDIG6W3.js.LEGAL.txt → chunk-4VRLGKYU.js.LEGAL.txt} +0 -0
  44. /package/dist/chunks/{chunk-N445XY3W.js → chunk-XMTQMRA3.js} +0 -0
@@ -1 +1 @@
1
- import{a as d,b as p,c as S,p as b,r as T}from"./chunk-U6UPMVSX.js";import"./chunk-N445XY3W.js";import"./chunk-Y6SLVHK3.js";var v={generatedAt:"2026-06-28T04:33:14.721Z",region:"audm",upstreamHits:80,makes:[{slug:"abarth",name:"Abarth"},{slug:"aion",name:"Aion"},{slug:"alfa-romeo",name:"Alfa Romeo"},{slug:"alpine",name:"Alpine"},{slug:"aston-martin",name:"Aston Martin"},{slug:"audi",name:"Audi"},{slug:"bentley",name:"Bentley"},{slug:"bmw",name:"BMW"},{slug:"bmw-alpina",name:"BMW Alpina"},{slug:"byd",name:"BYD"},{slug:"cadillac",name:"Cadillac"},{slug:"chery",name:"Chery"},{slug:"citroen",name:"Citro\xEBn"},{slug:"cupra",name:"Cupra"},{slug:"daihatsu",name:"Daihatsu"},{slug:"datsun",name:"Datsun"},{slug:"deepal",name:"Deepal"},{slug:"denza",name:"Denza"},{slug:"dodge",name:"Dodge"},{slug:"ds",name:"DS"},{slug:"ferrari",name:"Ferrari"},{slug:"fiat",name:"Fiat"},{slug:"ford",name:"Ford"},{slug:"foton",name:"Foton"},{slug:"geely",name:"Geely"},{slug:"genesis",name:"Genesis"},{slug:"great-wall",name:"Great Wall (GWM)"},{slug:"haval",name:"Haval"},{slug:"holden",name:"Holden"},{slug:"honda",name:"Honda"},{slug:"hyundai",name:"Hyundai"},{slug:"ineos",name:"Ineos"},{slug:"isuzu",name:"Isuzu"},{slug:"iveco",name:"Iveco"},{slug:"jac",name:"JAC"},{slug:"jaecoo",name:"Jaecoo"},{slug:"jaguar",name:"Jaguar"},{slug:"jeep",name:"Jeep"},{slug:"kg-mobility",name:"KGM"},{slug:"kia",name:"Kia"},{slug:"lamborghini",name:"Lamborghini"},{slug:"land-rover",name:"Land Rover"},{slug:"ldv",name:"LDV"},{slug:"leapmotor",name:"Leapmotor"},{slug:"lexus",name:"Lexus"},{slug:"lotus",name:"Lotus"},{slug:"mahindra",name:"Mahindra"},{slug:"maserati",name:"Maserati"},{slug:"mazda",name:"Mazda"},{slug:"mclaren",name:"McLaren"},{slug:"mercedes",name:"Mercedes-Benz"},{slug:"mercedes-maybach",name:"Mercedes-Maybach"},{slug:"mg",name:"MG"},{slug:"mini",name:"MINI"},{slug:"mitsubishi",name:"Mitsubishi"},{slug:"nissan",name:"Nissan"},{slug:"omoda",name:"Omoda"},{slug:"opel",name:"Opel"},{slug:"ora",name:"Ora"},{slug:"peugeot",name:"Peugeot"},{slug:"polaris",name:"Polaris"},{slug:"polestar",name:"Polestar"},{slug:"porsche",name:"Porsche"},{slug:"proton",name:"Proton"},{slug:"ram",name:"Ram"},{slug:"renault",name:"Renault"},{slug:"seat",name:"Seat"},{slug:"skoda",name:"Skoda"},{slug:"smart",name:"Smart"},{slug:"ssangyong",name:"SsangYong"},{slug:"subaru",name:"Subaru"},{slug:"suzuki",name:"Suzuki"},{slug:"tank",name:"Tank"},{slug:"tesla",name:"Tesla"},{slug:"toyota",name:"Toyota"},{slug:"triumph",name:"Triumph"},{slug:"volkswagen",name:"Volkswagen"},{slug:"volvo",name:"Volvo"},{slug:"zeekr",name:"Zeekr"}],models:{abarth:[{slug:"500e",name:"500e"},{slug:"695",name:"695"},{slug:"695c",name:"695C"}],aion:[{slug:"ut",name:"UT"}],"alfa-romeo":[{slug:"giulia",name:"Giulia"},{slug:"junior",name:"Junior"},{slug:"stelvio",name:"Stelvio"},{slug:"tonale",name:"Tonale"}],alpine:[{slug:"a110",name:"A110"},{slug:"a390",name:"A390"}],"aston-martin":[{slug:"db11",name:"DB11"},{slug:"db12",name:"DB12"},{slug:"dbs-770-ultimate",name:"DBS 770 Ultimate"},{slug:"dbs-superleggera",name:"DBS Superleggera"},{slug:"dbx",name:"DBX"},{slug:"dbx-s",name:"DBX S"},{slug:"dbx707",name:"DBX707"},{slug:"v12-vantage",name:"V12 Vantage"},{slug:"valhalla",name:"Valhalla"},{slug:"valour",name:"Valour"},{slug:"vanquish",name:"Vanquish"},{slug:"vantage",name:"Vantage"},{slug:"vantage-s",name:"Vantage S"}],audi:[{slug:"5-5",name:"5+5"},{slug:"a1",name:"A1"},{slug:"a3",name:"A3"},{slug:"a4",name:"A4"},{slug:"a4-allroad",name:"A4 Allroad"},{slug:"a5",name:"A5"},{slug:"a6",name:"A6"},{slug:"a6-allroad",name:"A6 Allroad"},{slug:"a7",name:"A7"},{slug:"a8",name:"A8"},{slug:"allroad",name:"Allroad"},{slug:"e-tron",name:"e-tron"},{slug:"e-tron-gt",name:"e-tron GT"},{slug:"e-tron-s",name:"e-tron S"},{slug:"e-tron-s-sportback",name:"e-tron S Sportback"},{slug:"e-tron-sportback",name:"e-tron Sportback"},{slug:"q2",name:"Q2"},{slug:"q3",name:"Q3"},{slug:"q3-sportback",name:"Q3 Sportback"},{slug:"q4",name:"Q4 e-tron"},{slug:"q4-sportback",name:"Q4 Sportback e-tron"},{slug:"q5",name:"Q5"},{slug:"q5-sportback",name:"Q5 Sportback"},{slug:"q6-e-tron",name:"Q6 e-tron"},{slug:"q7",name:"Q7"},{slug:"q8",name:"Q8"},{slug:"q8-e-tron",name:"Q8 e-tron"},{slug:"q8-sportback-e-tron",name:"Q8 Sportback e-tron"},{slug:"r8",name:"R8"},{slug:"rs-e-tron-gt",name:"RS e-tron GT"},{slug:"rs-q3",name:"RS Q3"},{slug:"rs-q3-sportback",name:"RS Q3 Sportback"},{slug:"rs-q8",name:"RS Q8"},{slug:"rs3",name:"RS3"},{slug:"rs4",name:"RS4"},{slug:"rs5",name:"RS5"},{slug:"rs6",name:"RS6"},{slug:"rs7",name:"RS7"},{slug:"s-e-tron-gt",name:"S e-tron GT"},{slug:"s1",name:"S1"},{slug:"s3",name:"S3"},{slug:"s4",name:"S4"},{slug:"s5",name:"S5"},{slug:"s6",name:"S6"},{slug:"s7",name:"S7"},{slug:"s8",name:"S8"},{slug:"sq2",name:"SQ2"},{slug:"sq5",name:"SQ5"},{slug:"sq5-sportback",name:"SQ5 Sportback"},{slug:"sq6-e-tron",name:"SQ6 e-tron"},{slug:"sq7",name:"SQ7"},{slug:"sq8",name:"SQ8"},{slug:"sq8-e-tron",name:"SQ8 e-tron"},{slug:"sq8-sportback-e-tron",name:"SQ8 Sportback e-tron"},{slug:"tt",name:"TT"},{slug:"tt-rs",name:"TT RS"},{slug:"tts",name:"TT S"}],bentley:[{slug:"bentayga",name:"Bentayga"},{slug:"continental-gt",name:"Continental GT"},{slug:"continental-gtc",name:"Continental GTC"},{slug:"flying-spur",name:"Flying Spur"}],bmw:[{slug:"1-series",name:"1 Series"},{slug:"2-series",name:"2 Series"},{slug:"2-series-active-tourer",name:"2 Series Active Tourer"},{slug:"2-series-gran-coupe",name:"2 Series Gran Coupe"},{slug:"3-series",name:"3 Series"},{slug:"3-series-gran-turismo",name:"3 Series Gran Turismo"},{slug:"4-series",name:"4 Series"},{slug:"4-series-gran-coupe",name:"4 Series Gran Coupe"},{slug:"5-series",name:"5 Series"},{slug:"5-series-gran-turismo",name:"5 Series Gran Turismo"},{slug:"6-series",name:"6 Series"},{slug:"7-series",name:"7 Series"},{slug:"8-series",name:"8 Series"},{slug:"i4",name:"i4"},{slug:"i5",name:"i5"},{slug:"i7",name:"i7"},{slug:"ix",name:"iX"},{slug:"ix1",name:"iX1"},{slug:"ix2",name:"iX2"},{slug:"ix3",name:"iX3"},{slug:"m2",name:"M2"},{slug:"m3",name:"M3"},{slug:"m4",name:"M4"},{slug:"m5",name:"M5"},{slug:"m8",name:"M8"},{slug:"x1",name:"X1"},{slug:"x2",name:"X2"},{slug:"x3",name:"X3"},{slug:"x3-m",name:"X3 M"},{slug:"x4",name:"X4"},{slug:"x4-m",name:"X4 M"},{slug:"x5",name:"X5"},{slug:"x5-m",name:"X5 M"},{slug:"x6",name:"X6"},{slug:"x6-m",name:"X6 M"},{slug:"x7",name:"X7"},{slug:"xm",name:"XM"},{slug:"z4",name:"Z4"}],"bmw-alpina":[{slug:"b10",name:"B10"},{slug:"b3",name:"B3"},{slug:"b4",name:"B4"},{slug:"b8",name:"B8"},{slug:"xb7",name:"XB7"},{slug:"xd3",name:"XD3"}],byd:[{slug:"atto-1",name:"Atto 1"},{slug:"atto-3",name:"Atto 3"},{slug:"sea-lion-6",name:"Sealion 6"},{slug:"seal",name:"Seal"},{slug:"sealion-5",name:"Sealion 5"},{slug:"sealion-7",name:"Sealion 7"},{slug:"sealion-8",name:"Sealion 8"},{slug:"shark-6",name:"Shark 6"}],cadillac:[{slug:"lyriq",name:"Lyriq"}],chery:[{slug:"j1",name:"J1"},{slug:"j11",name:"J11"},{slug:"j3",name:"J3"},{slug:"omoda-5",name:"Omoda 5"},{slug:"omoda-5-gt",name:"Omoda 5 GT"},{slug:"omoda-e5",name:"Omoda E5"},{slug:"tiggo-4",name:"Tiggo 4"},{slug:"tiggo-4-pro",name:"Tiggo 4 Pro"},{slug:"tiggo-7",name:"Tiggo 7"},{slug:"tiggo-7-pro",name:"Tiggo 7 Pro"},{slug:"tiggo-8",name:"Tiggo 8"},{slug:"tiggo-8-pro-max",name:"Tiggo 8 Pro Max"}],citroen:[{slug:"c3",name:"C3"},{slug:"c3-aircross",name:"C3 Aircross"},{slug:"c4",name:"C4"},{slug:"c5-aircross",name:"C5 Aircross"}],cupra:[{slug:"ateca",name:"Ateca"},{slug:"born",name:"Born"},{slug:"formentor",name:"Formentor"},{slug:"leon",name:"Leon"},{slug:"tavascan",name:"Tavascan"},{slug:"terramar",name:"Terramar"}],daihatsu:[{slug:"charade",name:"Charade"}],datsun:[{slug:"240z",name:"240Z"},{slug:"260z",name:"260Z"},{slug:"280z",name:"280Z"},{slug:"280zx",name:"280ZX"}],deepal:[{slug:"e07",name:"E07"},{slug:"s07",name:"S07"}],denza:[{slug:"b5",name:"B5"},{slug:"b8",name:"B8"},{slug:"d9",name:"D9"}],dodge:[{slug:"avenger",name:"Avenger"}],ds:[{slug:"ds-3",name:"DS 3"},{slug:"ds-4",name:"DS 4"},{slug:"ds-7",name:"DS 7"}],ferrari:[{slug:"12cilindri",name:"12Cilindri"},{slug:"12cilindri-spider",name:"12Cilindri Spider"},{slug:"296-gt3",name:"296 GT3"},{slug:"296-gtb",name:"296 GTB"},{slug:"296-gts",name:"296 GTS"},{slug:"296-speciale",name:"296 Speciale"},{slug:"296-speciale-a",name:"296 Speciale A"},{slug:"458-italia",name:"458 Italia"},{slug:"458-speciale",name:"458 Speciale"},{slug:"458-speciale-a",name:"458 Speciale A"},{slug:"458-spider",name:"458 Spider"},{slug:"488-gtb",name:"488 GTB"},{slug:"488-pista",name:"488 Pista"},{slug:"488-pista-spider",name:"488 Pista Spider"},{slug:"488-spider",name:"488 Spider"},{slug:"812-competizione",name:"812 Competizione"},{slug:"812-competizione-a",name:"812 Competizione A"},{slug:"812-gts",name:"812 GTS"},{slug:"812-superfast",name:"812 Superfast"},{slug:"849-testarossa",name:"849 Testarossa"},{slug:"amalfi",name:"Amalfi"},{slug:"daytona-sp3",name:"Daytona SP3"},{slug:"f8-spider",name:"F8 Spider"},{slug:"f8-tributo",name:"F8 Tributo"},{slug:"f80",name:"F80"},{slug:"ff",name:"FF"},{slug:"gtc4-lusso",name:"GTC4Lusso"},{slug:"monza-sp1",name:"Monza SP1"},{slug:"monza-sp2",name:"Monza SP2"},{slug:"portofino",name:"Portofino"},{slug:"roma",name:"Roma"},{slug:"sf90-spider",name:"SF90 Spider"},{slug:"sf90-stradale",name:"SF90 Stradale"},{slug:"sf90-xx-spider",name:"SF90 XX Spider"},{slug:"sf90-xx-stradale",name:"SF90 XX Stradale"}],fiat:[{slug:"500",name:"500"},{slug:"500c",name:"500C"},{slug:"500e",name:"500e"},{slug:"595",name:"595"},{slug:"695",name:"695"},{slug:"ducato",name:"Ducato"},{slug:"ritmo",name:"Ritmo"}],ford:[{slug:"capri",name:"Capri"},{slug:"cougar",name:"Cougar"},{slug:"courier",name:"Courier"},{slug:"e-transit",name:"E-Transit"},{slug:"endura",name:"Endura"},{slug:"escape",name:"Escape"},{slug:"everest",name:"Everest"},{slug:"f-150",name:"F-150"},{slug:"fairlane",name:"Fairlane"},{slug:"fairmont",name:"Fairmont"},{slug:"falcon",name:"Falcon"},{slug:"fiesta",name:"Fiesta"},{slug:"laser",name:"Laser"},{slug:"ltd",name:"LTD"},{slug:"mustang",name:"Mustang"},{slug:"mustang-mach-e",name:"Mustang Mach-E"},{slug:"probe",name:"Probe"},{slug:"puma",name:"Puma"},{slug:"ranger",name:"Ranger"},{slug:"taurus",name:"Taurus"},{slug:"territory",name:"Territory"},{slug:"tourneo-custom",name:"Tourneo Custom"},{slug:"transit",name:"Transit"},{slug:"transit-custom",name:"Transit Custom"}],foton:[{slug:"tunland",name:"Tunland"}],geely:[{slug:"ex5",name:"EX5"},{slug:"riddara-rd6",name:"Riddara RD6"},{slug:"starray-em-i",name:"Starray EM-i"}],genesis:[{slug:"g70",name:"G70"},{slug:"g80",name:"G80"},{slug:"gv60",name:"GV60"},{slug:"gv70",name:"GV70"},{slug:"gv80",name:"GV80"}],"great-wall":[{slug:"cannon",name:"Cannon"},{slug:"cannon-alpha",name:"Cannon Alpha"},{slug:"ora",name:"Ora"},{slug:"steed",name:"Steed"},{slug:"ute",name:"Ute"}],haval:[{slug:"h6",name:"H6"},{slug:"h6gt",name:"H6 GT"},{slug:"jolion",name:"Jolion"},{slug:"jolion-s",name:"Jolion S"}],holden:[{slug:"acadia",name:"Acadia"},{slug:"adventra",name:"Adventra"},{slug:"apollo",name:"Apollo"},{slug:"astra",name:"Astra"},{slug:"astra-gtc",name:"Astra GTC"},{slug:"astra-vxr",name:"Astra VXR"},{slug:"barina",name:"Barina"},{slug:"barina-spark",name:"Barina Spark"},{slug:"caprice",name:"Caprice"},{slug:"captiva",name:"Captiva"},{slug:"captiva-5",name:"Captiva 5"},{slug:"captiva-7",name:"Captiva 7"},{slug:"cascada",name:"Cascada"},{slug:"colorado",name:"Colorado"},{slug:"colorado-7",name:"Colorado 7"},{slug:"commodore",name:"Commodore"},{slug:"crewman",name:"Crewman"},{slug:"cruze",name:"Cruze"},{slug:"equinox",name:"Equinox"},{slug:"frontera",name:"Frontera"},{slug:"insignia-vxr",name:"Insignia VXR"},{slug:"jackaroo",name:"Jackaroo"},{slug:"malibu",name:"Malibu"},{slug:"monaro",name:"Monaro"},{slug:"one-tonner",name:"One Tonner"},{slug:"rodeo",name:"Rodeo"},{slug:"spark",name:"Spark"},{slug:"suburban",name:"Suburban"},{slug:"tigra",name:"Tigra"},{slug:"trailblazer",name:"Trailblazer"},{slug:"trax",name:"Trax"},{slug:"ute",name:"Ute"},{slug:"vectra",name:"Vectra"},{slug:"viva",name:"Viva"},{slug:"volt",name:"Volt"},{slug:"zafira",name:"Zafira"}],honda:[{slug:"accord",name:"Accord"},{slug:"accord-euro",name:"Accord Euro"},{slug:"city",name:"City"},{slug:"civic",name:"Civic"},{slug:"civic-5d",name:"Civic 5d"},{slug:"civic-type-r",name:"Civic Type R"},{slug:"cr-v",name:"CR-V"},{slug:"hr-v",name:"HR-V"},{slug:"jazz",name:"Jazz"},{slug:"jazz-crosstar",name:"Jazz Crosstar"},{slug:"legend",name:"Legend"},{slug:"odyssey",name:"Odyssey"},{slug:"s2000",name:"S2000"},{slug:"zr-v",name:"ZR-V"}],hyundai:[{slug:"accent",name:"Accent"},{slug:"elantra",name:"Elantra"},{slug:"elantra-lavita",name:"Elantra LaVita"},{slug:"i20-n",name:"i20 N"},{slug:"i30",name:"i30"},{slug:"i30-fastback-n",name:"i30 Fastback N"},{slug:"i30-n",name:"i30 N"},{slug:"i30-sedan",name:"i30 Sedan"},{slug:"i30-sedan-n",name:"i30 Sedan N"},{slug:"i45",name:"i45"},{slug:"iload",name:"iLoad"},{slug:"imax",name:"iMax"},{slug:"inster",name:"Inster"},{slug:"ioniq",name:"IONIQ"},{slug:"ioniq-5",name:"IONIQ 5"},{slug:"ioniq-5-n",name:"IONIQ 5 N"},{slug:"ioniq-6",name:"IONIQ 6"},{slug:"ioniq-6-n",name:"IONIQ 6 N"},{slug:"ioniq-9",name:"IONIQ 9"},{slug:"ix35",name:"ix35"},{slug:"kona",name:"Kona"},{slug:"kona-n",name:"Kona N"},{slug:"mighty",name:"Mighty"},{slug:"nexo",name:"Nexo"},{slug:"palisade",name:"Palisade"},{slug:"santa-fe",name:"Santa Fe"},{slug:"sonata",name:"Sonata"},{slug:"staria",name:"Staria"},{slug:"tucson",name:"Tucson"},{slug:"venue",name:"Venue"}],ineos:[{slug:"grenadier",name:"Grenadier"}],isuzu:[{slug:"d-max",name:"D-MAX"},{slug:"mu-x",name:"mu-X"}],iveco:[{slug:"daily",name:"Daily"}],jac:[{slug:"t9",name:"T9"}],jaecoo:[{slug:"j5",name:"J5"},{slug:"j7",name:"J7"}],jaguar:[{slug:"e-pace",name:"E-Pace"},{slug:"f-pace",name:"F-Pace"},{slug:"f-type",name:"F-Type"},{slug:"i-pace",name:"I-Pace"},{slug:"xe",name:"XE"},{slug:"xf",name:"XF"}],jeep:[{slug:"avenger",name:"Avenger"},{slug:"cherokee",name:"Cherokee"},{slug:"compass",name:"Compass"},{slug:"gladiator",name:"Gladiator"},{slug:"grand-cherokee",name:"Grand Cherokee"},{slug:"grand-cherokee-l",name:"Grand Cherokee L"},{slug:"renegade",name:"Renegade"},{slug:"wrangler",name:"Wrangler"}],"kg-mobility":[{slug:"actyon",name:"Actyon"},{slug:"korando",name:"Korando"},{slug:"musso",name:"Musso"},{slug:"musso-ev",name:"Musso EV"},{slug:"rexton",name:"Rexton"},{slug:"torres",name:"Torres"}],kia:[{slug:"carnival",name:"Carnival"},{slug:"cerato",name:"Cerato"},{slug:"ev3",name:"EV3"},{slug:"ev4",name:"EV4"},{slug:"ev5",name:"EV5"},{slug:"ev6",name:"EV6"},{slug:"ev9",name:"EV9"},{slug:"grand-carnival",name:"Grand Carnival"},{slug:"k4",name:"K4"},{slug:"mentor",name:"Mentor"},{slug:"niro",name:"Niro"},{slug:"niro-plus",name:"Niro Plus"},{slug:"optima",name:"Optima"},{slug:"picanto",name:"Picanto"},{slug:"picanto-x-line",name:"Picanto X-Line"},{slug:"rio",name:"Rio"},{slug:"rondo",name:"Rondo"},{slug:"seltos",name:"Seltos"},{slug:"sorento",name:"Sorento"},{slug:"sportage",name:"Sportage"},{slug:"stinger",name:"Stinger"},{slug:"stonic",name:"Stonic"},{slug:"tasman",name:"Tasman"}],lamborghini:[{slug:"aventador",name:"Aventador"},{slug:"countach",name:"Countach"},{slug:"huracan",name:"Huracan"},{slug:"revuelto",name:"Revuelto"},{slug:"sian",name:"Sian"},{slug:"temerario",name:"Temerario"},{slug:"urus",name:"Urus"}],"land-rover":[{slug:"defender",name:"Defender"},{slug:"discovery-5",name:"Discovery 5"},{slug:"discovery-sport",name:"Discovery Sport"},{slug:"range-rover",name:"Range Rover"},{slug:"range-rover-evoque",name:"Range Rover Evoque"},{slug:"range-rover-sport",name:"Range Rover Sport"},{slug:"range-rover-velar",name:"Range Rover Velar"}],ldv:[{slug:"d90",name:"D90"},{slug:"deliver-7",name:"Deliver 7"},{slug:"deliver-9",name:"Deliver 9"},{slug:"edeliver-3",name:"eDeliver 3"},{slug:"edeliver-7",name:"eDeliver 7"},{slug:"edeliver-9",name:"eDeliver 9"},{slug:"et60",name:"eT60"},{slug:"g10",name:"G10"},{slug:"mifa",name:"Mifa People Mover"},{slug:"mifa-9",name:"Mifa 9"},{slug:"t60",name:"T60"},{slug:"terron-9",name:"Terron 9"},{slug:"v80",name:"V80"}],leapmotor:[{slug:"b10",name:"B10"},{slug:"c10",name:"C10"}],lexus:[{slug:"es",name:"ES"},{slug:"gx",name:"GX"},{slug:"is",name:"IS"},{slug:"lbx",name:"LBX"},{slug:"lc",name:"LC"},{slug:"lm",name:"LM"},{slug:"ls",name:"LS"},{slug:"lx",name:"LX"},{slug:"nx",name:"NX"},{slug:"rc-f",name:"RC F"},{slug:"rx",name:"RX"},{slug:"rz",name:"RZ"},{slug:"ux",name:"UX"}],lotus:[{slug:"eletre",name:"Eletre"},{slug:"emeya",name:"Emeya"},{slug:"emira",name:"Emira"},{slug:"evija",name:"Evija"}],mahindra:[{slug:"genio",name:"Genio"},{slug:"pik-up",name:"Pik Up"},{slug:"scorpio-n",name:"Scorpio-N"},{slug:"xuv500",name:"XUV500"},{slug:"xuv700",name:"XUV700"}],maserati:[{slug:"ghibli",name:"Ghibli"},{slug:"gran-turismo",name:"GranTurismo"},{slug:"grancabrio",name:"GranCabrio"},{slug:"grecale",name:"Grecale"},{slug:"gt2-stradale",name:"GT2 Stradale"},{slug:"levante",name:"Levante"},{slug:"mc20",name:"MC20"},{slug:"mcpura",name:"MCPura"},{slug:"quattroporte",name:"Quattroporte"}],mazda:[{slug:"6e",name:"6e"},{slug:"929",name:"929"},{slug:"bravo",name:"Bravo"},{slug:"bt-50",name:"BT-50"},{slug:"cx-3",name:"CX-3"},{slug:"cx-30",name:"CX-30"},{slug:"cx-5",name:"CX-5"},{slug:"cx-60",name:"CX-60"},{slug:"cx-70",name:"CX-70"},{slug:"cx-8",name:"CX-8"},{slug:"cx-80",name:"CX-80"},{slug:"cx-9",name:"CX-9"},{slug:"cx-90",name:"CX-90"},{slug:"mazda2",name:"Mazda2"},{slug:"mazda3",name:"Mazda3"},{slug:"mazda3-mps",name:"Mazda3 MPS"},{slug:"mazda6",name:"Mazda6"},{slug:"mx-30",name:"MX-30"},{slug:"mx-5",name:"MX-5"},{slug:"mx-5-rf",name:"MX-5 RF"},{slug:"rx-7",name:"RX-7"}],mclaren:[{slug:"720s",name:"720S"},{slug:"720s-spider",name:"720S Spider"},{slug:"750s",name:"750S"},{slug:"765lt",name:"765LT"},{slug:"765lt-spider",name:"765LT Spider"},{slug:"artura",name:"Artura"},{slug:"gt",name:"GT"},{slug:"gts",name:"GTS"},{slug:"mp4-12c",name:"Mp4-12C"},{slug:"senna",name:"Senna"},{slug:"speedtail",name:"Speedtail"},{slug:"w1",name:"W1"}],mercedes:[{slug:"a-class",name:"A-Class"},{slug:"a-class-amg",name:"A-Class AMG"},{slug:"c-class",name:"C-Class"},{slug:"c-class-amg",name:"C-Class AMG"},{slug:"cla-class",name:"CLA-Class"},{slug:"cla-class-amg",name:"CLA-Class AMG"},{slug:"cle-class",name:"CLE-Class"},{slug:"cls-class-amg",name:"CLS-Class AMG"},{slug:"e-class",name:"E-Class"},{slug:"e-class-amg",name:"E-Class AMG"},{slug:"e-class-cabrio",name:"E-Class Cabriolet"},{slug:"e-class-coupe",name:"E-Class Coupe"},{slug:"eqa",name:"EQA"},{slug:"eqb",name:"EQB"},{slug:"eqc",name:"EQC"},{slug:"eqe",name:"EQE"},{slug:"eqe-amg",name:"EQE AMG"},{slug:"eqe-suv",name:"EQE SUV"},{slug:"eqe-suv-amg",name:"EQE SUV AMG"},{slug:"eqs",name:"EQS"},{slug:"eqs-amg",name:"EQS AMG"},{slug:"eqs-suv",name:"EQS SUV"},{slug:"eqv",name:"EQV"},{slug:"g-class",name:"G-Class"},{slug:"g-class-amg",name:"G-Class AMG"},{slug:"gla",name:"GLA-Class"},{slug:"gla-class-amg",name:"GLA-Class AMG"},{slug:"glb",name:"GLB-Class"},{slug:"glb-class-amg",name:"GLB-Class AMG"},{slug:"glc",name:"GLC-Class"},{slug:"glc-class-amg",name:"GLC-Class AMG"},{slug:"glc-class-coupe",name:"GLC-Class Coupe"},{slug:"glc-class-coupe-amg",name:"GLC-Class Coupe AMG"},{slug:"gle-class",name:"GLE-Class"},{slug:"gle-class-amg",name:"GLE-Class AMG"},{slug:"gle-class-coupe",name:"GLE-Class Coupe"},{slug:"gle-class-coupe-amg",name:"GLE-Class Coupe AMG"},{slug:"gls-class",name:"GLS-Class"},{slug:"gls-class-amg",name:"GLS-Class AMG"},{slug:"s-class",name:"S-Class"},{slug:"sprinter",name:"Sprinter"},{slug:"v-class",name:"V-Class"},{slug:"x-class",name:"X-Class"}],"mercedes-maybach":[{slug:"eqs",name:"EQS"},{slug:"gls-class",name:"GLS-Class"},{slug:"s-class",name:"S-Class"}],mg:[{slug:"3",name:"3"},{slug:"350",name:"350"},{slug:"4",name:"4"},{slug:"5",name:"5"},{slug:"6",name:"6"},{slug:"cyberster",name:"Cyberster"},{slug:"gs",name:"GS"},{slug:"hs",name:"HS"},{slug:"im5",name:"IM5"},{slug:"im6",name:"IM6"},{slug:"qs",name:"QS"},{slug:"s5",name:"S5"},{slug:"u9",name:"MGU9"},{slug:"zs",name:"ZS"},{slug:"zs-ev",name:"ZS EV"},{slug:"zst",name:"ZST"}],mini:[{slug:"aceman",name:"Aceman"},{slug:"clubman",name:"Clubman"},{slug:"convertible",name:"Convertible"},{slug:"cooper",name:"Cooper"},{slug:"countryman",name:"Countryman"},{slug:"hatch",name:"Hatch"}],mitsubishi:[{slug:"asx",name:"ASX"},{slug:"challenger",name:"Challenger"},{slug:"eclipse-cross",name:"Eclipse Cross"},{slug:"express",name:"Express"},{slug:"l200",name:"L200"},{slug:"magna",name:"Magna"},{slug:"mirage",name:"Mirage"},{slug:"nimbus",name:"Nimbus"},{slug:"outlander",name:"Outlander"},{slug:"pajero-sport",name:"Pajero Sport"},{slug:"triton",name:"Triton"},{slug:"verada",name:"Verada"}],nissan:[{slug:"200sx",name:"200SX"},{slug:"280zx",name:"280ZX"},{slug:"300zx",name:"300ZX"},{slug:"370z",name:"370Z"},{slug:"almera",name:"Almera"},{slug:"altima",name:"Altima"},{slug:"ariya",name:"Ariya"},{slug:"bluebird",name:"Bluebird"},{slug:"dualis",name:"Dualis"},{slug:"dualis-2",name:"Dualis+2"},{slug:"gt-r",name:"GT-R"},{slug:"juke",name:"Juke"},{slug:"leaf",name:"Leaf"},{slug:"maxima",name:"Maxima"},{slug:"micra",name:"Micra"},{slug:"navara",name:"Navara"},{slug:"np300-navara",name:"NP300 Navara"},{slug:"pathfinder",name:"Pathfinder"},{slug:"patrol",name:"Patrol"},{slug:"patrol-cab-chassis",name:"Patrol Cab Chassis"},{slug:"pulsar",name:"Pulsar"},{slug:"qashqai",name:"Qashqai"},{slug:"x-trail",name:"X-Trail"},{slug:"z",name:"Z"}],omoda:[{slug:"9",name:"9"},{slug:"c5",name:"C5"},{slug:"e5",name:"E5"}],opel:[{slug:"astra",name:"Astra"},{slug:"grandland",name:"Grandland"},{slug:"mokka",name:"Mokka"}],ora:[{slug:"03",name:"03"}],peugeot:[{slug:"2008",name:"2008"},{slug:"208",name:"208"},{slug:"3008",name:"3008"},{slug:"308",name:"308"},{slug:"408",name:"408"},{slug:"5008",name:"5008"},{slug:"508",name:"508"},{slug:"boxer",name:"Boxer"},{slug:"expert",name:"Expert"},{slug:"partner",name:"Partner"}],polaris:[{slug:"general-xp",name:"General XP 1000"},{slug:"general-xp-4",name:"General XP 4 1000"},{slug:"ranger-crew-xd",name:"Ranger Crew XD 1500"},{slug:"ranger-crew-xp",name:"Ranger Crew XP 1000"},{slug:"ranger-xd",name:"Ranger XD 1500"},{slug:"ranger-xp",name:"Ranger XP 1000"},{slug:"rzr-pro-r",name:"RZR Pro R"},{slug:"rzr-pro-r-4",name:"RZR Pro R 4"},{slug:"rzr-pro-xp",name:"RZR Pro XP"},{slug:"rzr-xp",name:"RZR XP 1000"},{slug:"rzr-xp-4",name:"RZR XP 4 1000"},{slug:"xpedition-adv",name:"Xpedition ADV"},{slug:"xpedition-adv-5",name:"Xpedition ADV 5"},{slug:"xpedition-xp",name:"Xpedition XP"},{slug:"xpedition-xp-5",name:"Xpedition XP 5"}],polestar:[{slug:"polestar-1",name:"Polestar 1"},{slug:"polestar-2",name:"Polestar 2"},{slug:"polestar-3",name:"Polestar 3"},{slug:"polestar-4",name:"Polestar 4"},{slug:"polestar-5",name:"Polestar 5"}],porsche:[{slug:"718",name:"718"},{slug:"911",name:"911"},{slug:"928",name:"928"},{slug:"cayenne",name:"Cayenne"},{slug:"macan",name:"Macan"},{slug:"panamera",name:"Panamera"},{slug:"taycan",name:"Taycan"}],proton:[{slug:"exora",name:"Exora"},{slug:"gen-2",name:"Gen-2"},{slug:"jumbuck",name:"Jumbuck"},{slug:"persona",name:"Persona"},{slug:"preve",name:"Preve"},{slug:"s16",name:"S16"},{slug:"satria",name:"Satria"},{slug:"savvy",name:"Savvy"},{slug:"suprima",name:"Suprima S"},{slug:"waja",name:"Waja"}],ram:[{slug:"1500",name:"1500"},{slug:"1500-classic",name:"1500 Classic"},{slug:"1500-trx",name:"1500 TRX"},{slug:"2500",name:"2500"},{slug:"3500",name:"3500"}],renault:[{slug:"arkana",name:"Arkana"},{slug:"captur",name:"Captur"},{slug:"duster",name:"Duster"},{slug:"kangoo",name:"Kangoo"},{slug:"kangoo-van",name:"Kangoo Van"},{slug:"koleos",name:"Koleos"},{slug:"latitude",name:"Latitude"},{slug:"master",name:"Master"},{slug:"megane-e-tech",name:"Megane E-Tech"},{slug:"scenic-e-tech",name:"Scenic E-Tech"},{slug:"trafic",name:"Trafic"}],seat:[{slug:"arona",name:"Arona"},{slug:"ateca",name:"Ateca"},{slug:"leon",name:"Leon"},{slug:"tarraco",name:"Tarraco"}],skoda:[{slug:"elroq",name:"Elroq"},{slug:"enyaq-iv",name:"Enyaq"},{slug:"fabia",name:"Fabia"},{slug:"kamiq",name:"Kamiq"},{slug:"karoq",name:"Karoq"},{slug:"kodiaq",name:"Kodiaq"},{slug:"octavia",name:"Octavia"},{slug:"rapid",name:"Rapid"},{slug:"scala",name:"Scala"},{slug:"superb",name:"Superb"},{slug:"superb-scout",name:"Superb Scout"},{slug:"yeti",name:"Yeti"}],smart:[{slug:"1",name:"#1"},{slug:"3",name:"#3"},{slug:"roadster",name:"Roadster"}],ssangyong:[{slug:"korando",name:"Korando"},{slug:"kyron",name:"Kyron"},{slug:"musso",name:"Musso"},{slug:"rexton",name:"Rexton"},{slug:"rhino",name:"Rhino"},{slug:"stavic",name:"Stavic"},{slug:"tivoli",name:"Tivoli"}],subaru:[{slug:"brz",name:"BRZ"},{slug:"crosstrek",name:"Crosstrek"},{slug:"forester",name:"Forester"},{slug:"impreza",name:"Impreza"},{slug:"liberty",name:"Liberty"},{slug:"outback",name:"Outback"},{slug:"solterra",name:"Solterra"},{slug:"wrx",name:"WRX"},{slug:"wrx-sti",name:"WRX STI"},{slug:"xv",name:"XV"}],suzuki:[{slug:"baleno",name:"Baleno"},{slug:"fronx",name:"Fronx"},{slug:"ignis",name:"Ignis"},{slug:"jimny",name:"Jimny"},{slug:"s-cross",name:"S-Cross"},{slug:"swift",name:"Swift"},{slug:"swift-sport",name:"Swift Sport"},{slug:"vitara",name:"Vitara"}],tank:[{slug:"300",name:"300"},{slug:"500",name:"500"}],tesla:[{slug:"cybertruck",name:"Cybertruck"},{slug:"model-3",name:"Model 3"},{slug:"model-s",name:"Model S"},{slug:"model-x",name:"Model X"},{slug:"model-y",name:"Model Y"}],toyota:[{slug:"86",name:"86"},{slug:"aurion",name:"Aurion"},{slug:"avalon",name:"Avalon"},{slug:"avensis-verso",name:"Avensis Verso"},{slug:"bz4x",name:"bZ4X"},{slug:"c-hr",name:"C-HR"},{slug:"camry",name:"Camry"},{slug:"corolla",name:"Corolla"},{slug:"corolla-cross",name:"Corolla Cross"},{slug:"echo",name:"Echo"},{slug:"fortuner",name:"Fortuner"},{slug:"gr-corolla",name:"GR Corolla"},{slug:"gr-yaris",name:"GR Yaris"},{slug:"gr86",name:"GR86"},{slug:"granvia",name:"Granvia"},{slug:"hiace",name:"Hiace"},{slug:"hilux",name:"Hilux"},{slug:"kluger",name:"Kluger"},{slug:"land-cruiser",name:"Land Cruiser"},{slug:"land-cruiser-prado",name:"Land Cruiser Prado"},{slug:"prius",name:"Prius"},{slug:"prius-c",name:"Prius c"},{slug:"prius-v",name:"Prius v"},{slug:"rav4",name:"RAV4"},{slug:"rukus",name:"Rukus"},{slug:"supra",name:"Supra"},{slug:"tarago",name:"Tarago"},{slug:"tundra",name:"Tundra"},{slug:"vienta",name:"Vienta"},{slug:"yaris",name:"Yaris"},{slug:"yaris-cross",name:"Yaris Cross"}],triumph:[{slug:"tr7",name:"TR7"}],volkswagen:[{slug:"amarok",name:"Amarok"},{slug:"beetle",name:"Beetle"},{slug:"caddy",name:"Caddy"},{slug:"california",name:"California"},{slug:"caravelle",name:"Caravelle"},{slug:"cc",name:"CC"},{slug:"crafter",name:"Crafter"},{slug:"golf",name:"Golf"},{slug:"golf-alltrack",name:"Golf Alltrack"},{slug:"golf-gti",name:"Golf GTI"},{slug:"golf-r",name:"Golf R"},{slug:"grand-california",name:"Grand California"},{slug:"id-buzz",name:"ID. Buzz"},{slug:"id4",name:"ID.4"},{slug:"id5",name:"ID.5"},{slug:"multivan",name:"Multivan"},{slug:"passat",name:"Passat"},{slug:"passat-alltrack",name:"Passat Alltrack"},{slug:"polo",name:"Polo"},{slug:"polo-gti",name:"Polo GTI"},{slug:"t-cross",name:"T-Cross"},{slug:"t-roc",name:"T-Roc"},{slug:"t-roc-r",name:"T-Roc R"},{slug:"tiguan",name:"Tiguan"},{slug:"tiguan-allspace",name:"Tiguan Allspace"},{slug:"touareg",name:"Touareg"},{slug:"transporter",name:"Transporter"}],volvo:[{slug:"c40",name:"C40"},{slug:"es90",name:"ES90"},{slug:"ex30",name:"EX30"},{slug:"ex40",name:"EX40"},{slug:"ex90",name:"EX90"},{slug:"s60",name:"S60"},{slug:"s60-cross-country",name:"S60 Cross Country"},{slug:"s90",name:"S90"},{slug:"v60-cross-country",name:"V60 Cross Country"},{slug:"v90-cross-country",name:"V90 Cross Country"},{slug:"xc40",name:"XC40"},{slug:"xc60",name:"XC60"},{slug:"xc90",name:"XC90"}],zeekr:[{slug:"009",name:"009"},{slug:"x",name:"X"}]},years:{"audi/rs6":[2026,2025,2024,2023,2022,2021,2020],"bmw/m3":[2026,2025,2024,2023,2022,2021,2020,2018,2017,2016,2015,2014],"ferrari/296-gtb":[2026,2025,2024,2023,2022],"lamborghini/huracan":[2024,2023,2022,2021,2020,2019],"mclaren/750s":[2026,2025,2024,2023],"mercedes/c-class-amg":[2026,2025,2024,2023,2022,2021,2020,2019,2018,2017,2016],"nissan/gt-r":[2023,2022,2021,2020,2019,2018,2017,2016],"tesla/model-3":[2026,2025,2024,2023,2022,2021,2020,2019,2018,2017],"toyota/supra":[2026,2025,2024,2023,2022,2021,1993,1992,1991,1990,1989,1988,1987,1986]},modifications:{"audi/rs6/2024":[{slug:"a28ff79ddf",name:"4.0 TFSi quattro",trim:"4.0 TFSi quattro",body:null}],"bmw/m3/2024":[{slug:"0aaf0bb46d",name:"M3",trim:"M3",body:null},{slug:"402e65e913",name:"M3 Competition",trim:"M3 Competition",body:null},{slug:"4c760df5c5",name:"M3 Competition xDrive",trim:"M3 Competition xDrive",body:null},{slug:"6250847bc8",name:"M3 Competition xDrive",trim:"M3 Competition xDrive",body:null},{slug:"82f59cadb0",name:"M3",trim:"M3",body:null}],"ferrari/296-gtb/2024":[{slug:"c412dafd12",name:"3.0",trim:"3.0",body:null}],"lamborghini/huracan/2024":[{slug:"aab49a3dae",name:"Evo 5.2",trim:"Evo 5.2",body:null},{slug:"f81a37ca20",name:"Evo 5.2",trim:"Evo 5.2",body:null}],"mclaren/750s/2024":[{slug:"f8f346c327",name:"4.0T",trim:"4.0T",body:null}],"mercedes/c-class-amg/2024":[{slug:"038122904b",name:"C 43 4Matic",trim:"C 43 4Matic",body:null},{slug:"a403e6b64c",name:"C 63 S E",trim:"C 63 S E",body:null}],"nissan/gt-r/2024":[],"tesla/model-3/2024":[{slug:"026e4ab9d6",name:"Long Range",trim:"Long Range",body:null},{slug:"4296c050a9",name:"Performance",trim:"Performance",body:null},{slug:"50f0c93d66",name:"Performance",trim:"Performance",body:null},{slug:"be5b2b9767",name:"Standard Range",trim:"Standard Range",body:null},{slug:"d4960b3833",name:"Long Range",trim:"Long Range",body:null}],"toyota/supra/2024":[{slug:"eabbd747b7",name:"3.0i",trim:"3.0i",body:null}]},meta:{modelsFetchedAt:{abarth:"2026-06-28T04:33:00.474Z",aion:"2026-06-28T04:33:01.415Z","alfa-romeo":"2026-06-28T04:33:02.355Z",alpine:"2026-06-28T04:33:03.290Z","aston-martin":"2026-06-28T04:33:04.229Z",audi:"2026-06-28T04:33:05.195Z",bentley:"2026-06-28T04:33:06.135Z",bmw:"2026-06-28T04:33:07.112Z","bmw-alpina":"2026-06-28T04:33:08.062Z",byd:"2026-06-28T04:33:09.004Z",cadillac:"2026-06-28T04:33:09.958Z",chery:"2026-06-28T04:33:10.944Z",citroen:"2026-06-28T04:33:11.887Z",cupra:"2026-06-28T04:33:12.827Z",daihatsu:"2026-06-28T04:33:13.770Z",datsun:"2026-06-28T04:33:14.721Z",deepal:"2026-06-27T04:23:59.381Z",denza:"2026-06-27T04:24:00.200Z",dodge:"2026-06-27T04:24:01.018Z",ds:"2026-06-27T04:24:01.843Z",ferrari:"2026-06-27T04:24:02.667Z",fiat:"2026-06-27T04:24:03.492Z",ford:"2026-06-27T04:24:04.311Z",foton:"2026-06-27T04:24:05.129Z",geely:"2026-06-27T04:24:05.946Z",genesis:"2026-06-27T04:24:06.764Z","great-wall":"2026-06-27T04:24:07.584Z",haval:"2026-06-27T04:24:08.402Z",holden:"2026-06-27T04:24:09.221Z",honda:"2026-06-27T04:24:10.039Z",hyundai:"2026-06-27T04:24:10.861Z",ineos:"2026-06-27T04:24:11.677Z",isuzu:"2026-06-27T04:24:12.495Z",iveco:"2026-06-28T04:32:51.940Z",jac:"2026-06-27T04:24:13.314Z",jaecoo:"2026-06-28T04:32:17.949Z",jaguar:"2026-06-28T04:32:18.902Z",jeep:"2026-06-28T04:32:19.838Z","kg-mobility":"2026-06-28T04:32:20.769Z",kia:"2026-06-28T04:32:21.710Z",lamborghini:"2026-06-28T04:32:22.641Z","land-rover":"2026-06-28T04:32:23.589Z",ldv:"2026-06-28T04:32:24.525Z",leapmotor:"2026-06-28T04:32:25.463Z",lexus:"2026-06-28T04:32:26.401Z",lotus:"2026-06-28T04:32:27.336Z",mahindra:"2026-06-28T04:32:28.278Z",maserati:"2026-06-28T04:32:29.225Z",mazda:"2026-06-28T04:32:30.189Z",mclaren:"2026-06-28T04:32:31.133Z",mercedes:"2026-06-28T04:32:32.103Z","mercedes-maybach":"2026-06-28T04:32:33.041Z",mg:"2026-06-28T04:32:33.991Z",mini:"2026-06-28T04:32:34.935Z",mitsubishi:"2026-06-28T04:32:35.884Z",nissan:"2026-06-28T04:32:36.836Z",omoda:"2026-06-28T04:32:37.789Z",opel:"2026-06-28T04:32:38.731Z",ora:"2026-06-28T04:32:39.684Z",peugeot:"2026-06-28T04:32:40.631Z",polaris:"2026-06-28T04:32:52.902Z",polestar:"2026-06-28T04:32:41.575Z",porsche:"2026-06-28T04:32:42.516Z",proton:"2026-06-28T04:32:43.459Z",ram:"2026-06-28T04:32:44.398Z",renault:"2026-06-28T04:32:45.351Z",seat:"2026-06-28T04:32:46.297Z",skoda:"2026-06-28T04:32:47.233Z",smart:"2026-06-28T04:32:48.178Z",ssangyong:"2026-06-28T04:32:49.114Z",subaru:"2026-06-28T04:32:50.052Z",suzuki:"2026-06-28T04:32:50.996Z",tank:"2026-06-28T04:32:53.840Z",tesla:"2026-06-28T04:32:54.775Z",toyota:"2026-06-28T04:32:55.749Z",triumph:"2026-06-28T04:32:56.677Z",volkswagen:"2026-06-28T04:32:57.635Z",volvo:"2026-06-28T04:32:58.582Z",zeekr:"2026-06-28T04:32:59.524Z"},popularFetchedAt:"2026-06-28T04:32:16.984Z",coverage:{covered:79,total:79}}};var u=v,k=(d||""||"http://localhost:8000").replace(/\/+$/,""),M=3600,Z="x-efficient-shop-hop",C="".trim();async function g(a,e){let s=new URLSearchParams;for(let[h,i]of Object.entries(e))i!==void 0&&i!==""&&s.set(h,String(i));let n=s.toString(),l=`${k}/api/fitment${a}${n?`?${n}`:""}`,m={next:{revalidate:M}},[f,y]=await Promise.all([b(),T()]),o=p(f,y,S(m));C&&(o[Z]=C);let t=await fetch(l,{...m,...Object.keys(o).length>0?{headers:o}:{}});if(!t.ok)throw new Error(`backend fitment ${t.status} on ${a}`);let c=await t.text();return c?JSON.parse(c):null}function r(a){return a!==void 0&&u.region===a&&(u.makes?.length??0)>0}function A(a){if(!a)return null;let e=a.et_range;return{pcd:a.pcd||void 0,boltPattern:a.bolt_pattern||void 0,centreBore:a.centre_bore??void 0,frontWheels:a.front_wheels??[],rearWheels:a.rear_wheels??[],frontTyres:a.front_tyres??[],rearTyres:a.rear_tyres??[],etRange:e&&e[0]!==null&&e[1]!==null?[e[0],e[1]]:void 0}}var z={async makes(a){try{return await g("/makes/",{region:a})}catch(e){if(r(a))return u.makes;throw e}},async models(a,e){try{return await g("/models/",{make:a,region:e})}catch(s){let n=r(e)?u.models[a]:void 0;if(n)return n;throw s}},async years(a,e,s){try{return await g("/years/",{make:a,model:e,region:s})}catch(n){let l=r(s)?u.years[`${a}/${e}`]:void 0;if(l)return l;throw n}},async modifications(a,e,s,n){try{return await g("/modifications/",{make:a,model:e,year:s,region:n})}catch(l){let m=r(n)?u.modifications[`${a}/${e}/${s}`]:void 0;if(m)return m;throw l}},async stockFitment(a,e,s,n,l){return A(await g("/stock-fitment/",{make:a,model:e,year:s,modification:n,region:l}))}};export{z as fitmentData};
1
+ import{a as d,b as p,c as S,p as b,r as T}from"./chunk-YL2HPWVT.js";import"./chunk-XMTQMRA3.js";import"./chunk-Y6SLVHK3.js";var v={generatedAt:"2026-06-28T04:33:14.721Z",region:"audm",upstreamHits:80,makes:[{slug:"abarth",name:"Abarth"},{slug:"aion",name:"Aion"},{slug:"alfa-romeo",name:"Alfa Romeo"},{slug:"alpine",name:"Alpine"},{slug:"aston-martin",name:"Aston Martin"},{slug:"audi",name:"Audi"},{slug:"bentley",name:"Bentley"},{slug:"bmw",name:"BMW"},{slug:"bmw-alpina",name:"BMW Alpina"},{slug:"byd",name:"BYD"},{slug:"cadillac",name:"Cadillac"},{slug:"chery",name:"Chery"},{slug:"citroen",name:"Citro\xEBn"},{slug:"cupra",name:"Cupra"},{slug:"daihatsu",name:"Daihatsu"},{slug:"datsun",name:"Datsun"},{slug:"deepal",name:"Deepal"},{slug:"denza",name:"Denza"},{slug:"dodge",name:"Dodge"},{slug:"ds",name:"DS"},{slug:"ferrari",name:"Ferrari"},{slug:"fiat",name:"Fiat"},{slug:"ford",name:"Ford"},{slug:"foton",name:"Foton"},{slug:"geely",name:"Geely"},{slug:"genesis",name:"Genesis"},{slug:"great-wall",name:"Great Wall (GWM)"},{slug:"haval",name:"Haval"},{slug:"holden",name:"Holden"},{slug:"honda",name:"Honda"},{slug:"hyundai",name:"Hyundai"},{slug:"ineos",name:"Ineos"},{slug:"isuzu",name:"Isuzu"},{slug:"iveco",name:"Iveco"},{slug:"jac",name:"JAC"},{slug:"jaecoo",name:"Jaecoo"},{slug:"jaguar",name:"Jaguar"},{slug:"jeep",name:"Jeep"},{slug:"kg-mobility",name:"KGM"},{slug:"kia",name:"Kia"},{slug:"lamborghini",name:"Lamborghini"},{slug:"land-rover",name:"Land Rover"},{slug:"ldv",name:"LDV"},{slug:"leapmotor",name:"Leapmotor"},{slug:"lexus",name:"Lexus"},{slug:"lotus",name:"Lotus"},{slug:"mahindra",name:"Mahindra"},{slug:"maserati",name:"Maserati"},{slug:"mazda",name:"Mazda"},{slug:"mclaren",name:"McLaren"},{slug:"mercedes",name:"Mercedes-Benz"},{slug:"mercedes-maybach",name:"Mercedes-Maybach"},{slug:"mg",name:"MG"},{slug:"mini",name:"MINI"},{slug:"mitsubishi",name:"Mitsubishi"},{slug:"nissan",name:"Nissan"},{slug:"omoda",name:"Omoda"},{slug:"opel",name:"Opel"},{slug:"ora",name:"Ora"},{slug:"peugeot",name:"Peugeot"},{slug:"polaris",name:"Polaris"},{slug:"polestar",name:"Polestar"},{slug:"porsche",name:"Porsche"},{slug:"proton",name:"Proton"},{slug:"ram",name:"Ram"},{slug:"renault",name:"Renault"},{slug:"seat",name:"Seat"},{slug:"skoda",name:"Skoda"},{slug:"smart",name:"Smart"},{slug:"ssangyong",name:"SsangYong"},{slug:"subaru",name:"Subaru"},{slug:"suzuki",name:"Suzuki"},{slug:"tank",name:"Tank"},{slug:"tesla",name:"Tesla"},{slug:"toyota",name:"Toyota"},{slug:"triumph",name:"Triumph"},{slug:"volkswagen",name:"Volkswagen"},{slug:"volvo",name:"Volvo"},{slug:"zeekr",name:"Zeekr"}],models:{abarth:[{slug:"500e",name:"500e"},{slug:"695",name:"695"},{slug:"695c",name:"695C"}],aion:[{slug:"ut",name:"UT"}],"alfa-romeo":[{slug:"giulia",name:"Giulia"},{slug:"junior",name:"Junior"},{slug:"stelvio",name:"Stelvio"},{slug:"tonale",name:"Tonale"}],alpine:[{slug:"a110",name:"A110"},{slug:"a390",name:"A390"}],"aston-martin":[{slug:"db11",name:"DB11"},{slug:"db12",name:"DB12"},{slug:"dbs-770-ultimate",name:"DBS 770 Ultimate"},{slug:"dbs-superleggera",name:"DBS Superleggera"},{slug:"dbx",name:"DBX"},{slug:"dbx-s",name:"DBX S"},{slug:"dbx707",name:"DBX707"},{slug:"v12-vantage",name:"V12 Vantage"},{slug:"valhalla",name:"Valhalla"},{slug:"valour",name:"Valour"},{slug:"vanquish",name:"Vanquish"},{slug:"vantage",name:"Vantage"},{slug:"vantage-s",name:"Vantage S"}],audi:[{slug:"5-5",name:"5+5"},{slug:"a1",name:"A1"},{slug:"a3",name:"A3"},{slug:"a4",name:"A4"},{slug:"a4-allroad",name:"A4 Allroad"},{slug:"a5",name:"A5"},{slug:"a6",name:"A6"},{slug:"a6-allroad",name:"A6 Allroad"},{slug:"a7",name:"A7"},{slug:"a8",name:"A8"},{slug:"allroad",name:"Allroad"},{slug:"e-tron",name:"e-tron"},{slug:"e-tron-gt",name:"e-tron GT"},{slug:"e-tron-s",name:"e-tron S"},{slug:"e-tron-s-sportback",name:"e-tron S Sportback"},{slug:"e-tron-sportback",name:"e-tron Sportback"},{slug:"q2",name:"Q2"},{slug:"q3",name:"Q3"},{slug:"q3-sportback",name:"Q3 Sportback"},{slug:"q4",name:"Q4 e-tron"},{slug:"q4-sportback",name:"Q4 Sportback e-tron"},{slug:"q5",name:"Q5"},{slug:"q5-sportback",name:"Q5 Sportback"},{slug:"q6-e-tron",name:"Q6 e-tron"},{slug:"q7",name:"Q7"},{slug:"q8",name:"Q8"},{slug:"q8-e-tron",name:"Q8 e-tron"},{slug:"q8-sportback-e-tron",name:"Q8 Sportback e-tron"},{slug:"r8",name:"R8"},{slug:"rs-e-tron-gt",name:"RS e-tron GT"},{slug:"rs-q3",name:"RS Q3"},{slug:"rs-q3-sportback",name:"RS Q3 Sportback"},{slug:"rs-q8",name:"RS Q8"},{slug:"rs3",name:"RS3"},{slug:"rs4",name:"RS4"},{slug:"rs5",name:"RS5"},{slug:"rs6",name:"RS6"},{slug:"rs7",name:"RS7"},{slug:"s-e-tron-gt",name:"S e-tron GT"},{slug:"s1",name:"S1"},{slug:"s3",name:"S3"},{slug:"s4",name:"S4"},{slug:"s5",name:"S5"},{slug:"s6",name:"S6"},{slug:"s7",name:"S7"},{slug:"s8",name:"S8"},{slug:"sq2",name:"SQ2"},{slug:"sq5",name:"SQ5"},{slug:"sq5-sportback",name:"SQ5 Sportback"},{slug:"sq6-e-tron",name:"SQ6 e-tron"},{slug:"sq7",name:"SQ7"},{slug:"sq8",name:"SQ8"},{slug:"sq8-e-tron",name:"SQ8 e-tron"},{slug:"sq8-sportback-e-tron",name:"SQ8 Sportback e-tron"},{slug:"tt",name:"TT"},{slug:"tt-rs",name:"TT RS"},{slug:"tts",name:"TT S"}],bentley:[{slug:"bentayga",name:"Bentayga"},{slug:"continental-gt",name:"Continental GT"},{slug:"continental-gtc",name:"Continental GTC"},{slug:"flying-spur",name:"Flying Spur"}],bmw:[{slug:"1-series",name:"1 Series"},{slug:"2-series",name:"2 Series"},{slug:"2-series-active-tourer",name:"2 Series Active Tourer"},{slug:"2-series-gran-coupe",name:"2 Series Gran Coupe"},{slug:"3-series",name:"3 Series"},{slug:"3-series-gran-turismo",name:"3 Series Gran Turismo"},{slug:"4-series",name:"4 Series"},{slug:"4-series-gran-coupe",name:"4 Series Gran Coupe"},{slug:"5-series",name:"5 Series"},{slug:"5-series-gran-turismo",name:"5 Series Gran Turismo"},{slug:"6-series",name:"6 Series"},{slug:"7-series",name:"7 Series"},{slug:"8-series",name:"8 Series"},{slug:"i4",name:"i4"},{slug:"i5",name:"i5"},{slug:"i7",name:"i7"},{slug:"ix",name:"iX"},{slug:"ix1",name:"iX1"},{slug:"ix2",name:"iX2"},{slug:"ix3",name:"iX3"},{slug:"m2",name:"M2"},{slug:"m3",name:"M3"},{slug:"m4",name:"M4"},{slug:"m5",name:"M5"},{slug:"m8",name:"M8"},{slug:"x1",name:"X1"},{slug:"x2",name:"X2"},{slug:"x3",name:"X3"},{slug:"x3-m",name:"X3 M"},{slug:"x4",name:"X4"},{slug:"x4-m",name:"X4 M"},{slug:"x5",name:"X5"},{slug:"x5-m",name:"X5 M"},{slug:"x6",name:"X6"},{slug:"x6-m",name:"X6 M"},{slug:"x7",name:"X7"},{slug:"xm",name:"XM"},{slug:"z4",name:"Z4"}],"bmw-alpina":[{slug:"b10",name:"B10"},{slug:"b3",name:"B3"},{slug:"b4",name:"B4"},{slug:"b8",name:"B8"},{slug:"xb7",name:"XB7"},{slug:"xd3",name:"XD3"}],byd:[{slug:"atto-1",name:"Atto 1"},{slug:"atto-3",name:"Atto 3"},{slug:"sea-lion-6",name:"Sealion 6"},{slug:"seal",name:"Seal"},{slug:"sealion-5",name:"Sealion 5"},{slug:"sealion-7",name:"Sealion 7"},{slug:"sealion-8",name:"Sealion 8"},{slug:"shark-6",name:"Shark 6"}],cadillac:[{slug:"lyriq",name:"Lyriq"}],chery:[{slug:"j1",name:"J1"},{slug:"j11",name:"J11"},{slug:"j3",name:"J3"},{slug:"omoda-5",name:"Omoda 5"},{slug:"omoda-5-gt",name:"Omoda 5 GT"},{slug:"omoda-e5",name:"Omoda E5"},{slug:"tiggo-4",name:"Tiggo 4"},{slug:"tiggo-4-pro",name:"Tiggo 4 Pro"},{slug:"tiggo-7",name:"Tiggo 7"},{slug:"tiggo-7-pro",name:"Tiggo 7 Pro"},{slug:"tiggo-8",name:"Tiggo 8"},{slug:"tiggo-8-pro-max",name:"Tiggo 8 Pro Max"}],citroen:[{slug:"c3",name:"C3"},{slug:"c3-aircross",name:"C3 Aircross"},{slug:"c4",name:"C4"},{slug:"c5-aircross",name:"C5 Aircross"}],cupra:[{slug:"ateca",name:"Ateca"},{slug:"born",name:"Born"},{slug:"formentor",name:"Formentor"},{slug:"leon",name:"Leon"},{slug:"tavascan",name:"Tavascan"},{slug:"terramar",name:"Terramar"}],daihatsu:[{slug:"charade",name:"Charade"}],datsun:[{slug:"240z",name:"240Z"},{slug:"260z",name:"260Z"},{slug:"280z",name:"280Z"},{slug:"280zx",name:"280ZX"}],deepal:[{slug:"e07",name:"E07"},{slug:"s07",name:"S07"}],denza:[{slug:"b5",name:"B5"},{slug:"b8",name:"B8"},{slug:"d9",name:"D9"}],dodge:[{slug:"avenger",name:"Avenger"}],ds:[{slug:"ds-3",name:"DS 3"},{slug:"ds-4",name:"DS 4"},{slug:"ds-7",name:"DS 7"}],ferrari:[{slug:"12cilindri",name:"12Cilindri"},{slug:"12cilindri-spider",name:"12Cilindri Spider"},{slug:"296-gt3",name:"296 GT3"},{slug:"296-gtb",name:"296 GTB"},{slug:"296-gts",name:"296 GTS"},{slug:"296-speciale",name:"296 Speciale"},{slug:"296-speciale-a",name:"296 Speciale A"},{slug:"458-italia",name:"458 Italia"},{slug:"458-speciale",name:"458 Speciale"},{slug:"458-speciale-a",name:"458 Speciale A"},{slug:"458-spider",name:"458 Spider"},{slug:"488-gtb",name:"488 GTB"},{slug:"488-pista",name:"488 Pista"},{slug:"488-pista-spider",name:"488 Pista Spider"},{slug:"488-spider",name:"488 Spider"},{slug:"812-competizione",name:"812 Competizione"},{slug:"812-competizione-a",name:"812 Competizione A"},{slug:"812-gts",name:"812 GTS"},{slug:"812-superfast",name:"812 Superfast"},{slug:"849-testarossa",name:"849 Testarossa"},{slug:"amalfi",name:"Amalfi"},{slug:"daytona-sp3",name:"Daytona SP3"},{slug:"f8-spider",name:"F8 Spider"},{slug:"f8-tributo",name:"F8 Tributo"},{slug:"f80",name:"F80"},{slug:"ff",name:"FF"},{slug:"gtc4-lusso",name:"GTC4Lusso"},{slug:"monza-sp1",name:"Monza SP1"},{slug:"monza-sp2",name:"Monza SP2"},{slug:"portofino",name:"Portofino"},{slug:"roma",name:"Roma"},{slug:"sf90-spider",name:"SF90 Spider"},{slug:"sf90-stradale",name:"SF90 Stradale"},{slug:"sf90-xx-spider",name:"SF90 XX Spider"},{slug:"sf90-xx-stradale",name:"SF90 XX Stradale"}],fiat:[{slug:"500",name:"500"},{slug:"500c",name:"500C"},{slug:"500e",name:"500e"},{slug:"595",name:"595"},{slug:"695",name:"695"},{slug:"ducato",name:"Ducato"},{slug:"ritmo",name:"Ritmo"}],ford:[{slug:"capri",name:"Capri"},{slug:"cougar",name:"Cougar"},{slug:"courier",name:"Courier"},{slug:"e-transit",name:"E-Transit"},{slug:"endura",name:"Endura"},{slug:"escape",name:"Escape"},{slug:"everest",name:"Everest"},{slug:"f-150",name:"F-150"},{slug:"fairlane",name:"Fairlane"},{slug:"fairmont",name:"Fairmont"},{slug:"falcon",name:"Falcon"},{slug:"fiesta",name:"Fiesta"},{slug:"laser",name:"Laser"},{slug:"ltd",name:"LTD"},{slug:"mustang",name:"Mustang"},{slug:"mustang-mach-e",name:"Mustang Mach-E"},{slug:"probe",name:"Probe"},{slug:"puma",name:"Puma"},{slug:"ranger",name:"Ranger"},{slug:"taurus",name:"Taurus"},{slug:"territory",name:"Territory"},{slug:"tourneo-custom",name:"Tourneo Custom"},{slug:"transit",name:"Transit"},{slug:"transit-custom",name:"Transit Custom"}],foton:[{slug:"tunland",name:"Tunland"}],geely:[{slug:"ex5",name:"EX5"},{slug:"riddara-rd6",name:"Riddara RD6"},{slug:"starray-em-i",name:"Starray EM-i"}],genesis:[{slug:"g70",name:"G70"},{slug:"g80",name:"G80"},{slug:"gv60",name:"GV60"},{slug:"gv70",name:"GV70"},{slug:"gv80",name:"GV80"}],"great-wall":[{slug:"cannon",name:"Cannon"},{slug:"cannon-alpha",name:"Cannon Alpha"},{slug:"ora",name:"Ora"},{slug:"steed",name:"Steed"},{slug:"ute",name:"Ute"}],haval:[{slug:"h6",name:"H6"},{slug:"h6gt",name:"H6 GT"},{slug:"jolion",name:"Jolion"},{slug:"jolion-s",name:"Jolion S"}],holden:[{slug:"acadia",name:"Acadia"},{slug:"adventra",name:"Adventra"},{slug:"apollo",name:"Apollo"},{slug:"astra",name:"Astra"},{slug:"astra-gtc",name:"Astra GTC"},{slug:"astra-vxr",name:"Astra VXR"},{slug:"barina",name:"Barina"},{slug:"barina-spark",name:"Barina Spark"},{slug:"caprice",name:"Caprice"},{slug:"captiva",name:"Captiva"},{slug:"captiva-5",name:"Captiva 5"},{slug:"captiva-7",name:"Captiva 7"},{slug:"cascada",name:"Cascada"},{slug:"colorado",name:"Colorado"},{slug:"colorado-7",name:"Colorado 7"},{slug:"commodore",name:"Commodore"},{slug:"crewman",name:"Crewman"},{slug:"cruze",name:"Cruze"},{slug:"equinox",name:"Equinox"},{slug:"frontera",name:"Frontera"},{slug:"insignia-vxr",name:"Insignia VXR"},{slug:"jackaroo",name:"Jackaroo"},{slug:"malibu",name:"Malibu"},{slug:"monaro",name:"Monaro"},{slug:"one-tonner",name:"One Tonner"},{slug:"rodeo",name:"Rodeo"},{slug:"spark",name:"Spark"},{slug:"suburban",name:"Suburban"},{slug:"tigra",name:"Tigra"},{slug:"trailblazer",name:"Trailblazer"},{slug:"trax",name:"Trax"},{slug:"ute",name:"Ute"},{slug:"vectra",name:"Vectra"},{slug:"viva",name:"Viva"},{slug:"volt",name:"Volt"},{slug:"zafira",name:"Zafira"}],honda:[{slug:"accord",name:"Accord"},{slug:"accord-euro",name:"Accord Euro"},{slug:"city",name:"City"},{slug:"civic",name:"Civic"},{slug:"civic-5d",name:"Civic 5d"},{slug:"civic-type-r",name:"Civic Type R"},{slug:"cr-v",name:"CR-V"},{slug:"hr-v",name:"HR-V"},{slug:"jazz",name:"Jazz"},{slug:"jazz-crosstar",name:"Jazz Crosstar"},{slug:"legend",name:"Legend"},{slug:"odyssey",name:"Odyssey"},{slug:"s2000",name:"S2000"},{slug:"zr-v",name:"ZR-V"}],hyundai:[{slug:"accent",name:"Accent"},{slug:"elantra",name:"Elantra"},{slug:"elantra-lavita",name:"Elantra LaVita"},{slug:"i20-n",name:"i20 N"},{slug:"i30",name:"i30"},{slug:"i30-fastback-n",name:"i30 Fastback N"},{slug:"i30-n",name:"i30 N"},{slug:"i30-sedan",name:"i30 Sedan"},{slug:"i30-sedan-n",name:"i30 Sedan N"},{slug:"i45",name:"i45"},{slug:"iload",name:"iLoad"},{slug:"imax",name:"iMax"},{slug:"inster",name:"Inster"},{slug:"ioniq",name:"IONIQ"},{slug:"ioniq-5",name:"IONIQ 5"},{slug:"ioniq-5-n",name:"IONIQ 5 N"},{slug:"ioniq-6",name:"IONIQ 6"},{slug:"ioniq-6-n",name:"IONIQ 6 N"},{slug:"ioniq-9",name:"IONIQ 9"},{slug:"ix35",name:"ix35"},{slug:"kona",name:"Kona"},{slug:"kona-n",name:"Kona N"},{slug:"mighty",name:"Mighty"},{slug:"nexo",name:"Nexo"},{slug:"palisade",name:"Palisade"},{slug:"santa-fe",name:"Santa Fe"},{slug:"sonata",name:"Sonata"},{slug:"staria",name:"Staria"},{slug:"tucson",name:"Tucson"},{slug:"venue",name:"Venue"}],ineos:[{slug:"grenadier",name:"Grenadier"}],isuzu:[{slug:"d-max",name:"D-MAX"},{slug:"mu-x",name:"mu-X"}],iveco:[{slug:"daily",name:"Daily"}],jac:[{slug:"t9",name:"T9"}],jaecoo:[{slug:"j5",name:"J5"},{slug:"j7",name:"J7"}],jaguar:[{slug:"e-pace",name:"E-Pace"},{slug:"f-pace",name:"F-Pace"},{slug:"f-type",name:"F-Type"},{slug:"i-pace",name:"I-Pace"},{slug:"xe",name:"XE"},{slug:"xf",name:"XF"}],jeep:[{slug:"avenger",name:"Avenger"},{slug:"cherokee",name:"Cherokee"},{slug:"compass",name:"Compass"},{slug:"gladiator",name:"Gladiator"},{slug:"grand-cherokee",name:"Grand Cherokee"},{slug:"grand-cherokee-l",name:"Grand Cherokee L"},{slug:"renegade",name:"Renegade"},{slug:"wrangler",name:"Wrangler"}],"kg-mobility":[{slug:"actyon",name:"Actyon"},{slug:"korando",name:"Korando"},{slug:"musso",name:"Musso"},{slug:"musso-ev",name:"Musso EV"},{slug:"rexton",name:"Rexton"},{slug:"torres",name:"Torres"}],kia:[{slug:"carnival",name:"Carnival"},{slug:"cerato",name:"Cerato"},{slug:"ev3",name:"EV3"},{slug:"ev4",name:"EV4"},{slug:"ev5",name:"EV5"},{slug:"ev6",name:"EV6"},{slug:"ev9",name:"EV9"},{slug:"grand-carnival",name:"Grand Carnival"},{slug:"k4",name:"K4"},{slug:"mentor",name:"Mentor"},{slug:"niro",name:"Niro"},{slug:"niro-plus",name:"Niro Plus"},{slug:"optima",name:"Optima"},{slug:"picanto",name:"Picanto"},{slug:"picanto-x-line",name:"Picanto X-Line"},{slug:"rio",name:"Rio"},{slug:"rondo",name:"Rondo"},{slug:"seltos",name:"Seltos"},{slug:"sorento",name:"Sorento"},{slug:"sportage",name:"Sportage"},{slug:"stinger",name:"Stinger"},{slug:"stonic",name:"Stonic"},{slug:"tasman",name:"Tasman"}],lamborghini:[{slug:"aventador",name:"Aventador"},{slug:"countach",name:"Countach"},{slug:"huracan",name:"Huracan"},{slug:"revuelto",name:"Revuelto"},{slug:"sian",name:"Sian"},{slug:"temerario",name:"Temerario"},{slug:"urus",name:"Urus"}],"land-rover":[{slug:"defender",name:"Defender"},{slug:"discovery-5",name:"Discovery 5"},{slug:"discovery-sport",name:"Discovery Sport"},{slug:"range-rover",name:"Range Rover"},{slug:"range-rover-evoque",name:"Range Rover Evoque"},{slug:"range-rover-sport",name:"Range Rover Sport"},{slug:"range-rover-velar",name:"Range Rover Velar"}],ldv:[{slug:"d90",name:"D90"},{slug:"deliver-7",name:"Deliver 7"},{slug:"deliver-9",name:"Deliver 9"},{slug:"edeliver-3",name:"eDeliver 3"},{slug:"edeliver-7",name:"eDeliver 7"},{slug:"edeliver-9",name:"eDeliver 9"},{slug:"et60",name:"eT60"},{slug:"g10",name:"G10"},{slug:"mifa",name:"Mifa People Mover"},{slug:"mifa-9",name:"Mifa 9"},{slug:"t60",name:"T60"},{slug:"terron-9",name:"Terron 9"},{slug:"v80",name:"V80"}],leapmotor:[{slug:"b10",name:"B10"},{slug:"c10",name:"C10"}],lexus:[{slug:"es",name:"ES"},{slug:"gx",name:"GX"},{slug:"is",name:"IS"},{slug:"lbx",name:"LBX"},{slug:"lc",name:"LC"},{slug:"lm",name:"LM"},{slug:"ls",name:"LS"},{slug:"lx",name:"LX"},{slug:"nx",name:"NX"},{slug:"rc-f",name:"RC F"},{slug:"rx",name:"RX"},{slug:"rz",name:"RZ"},{slug:"ux",name:"UX"}],lotus:[{slug:"eletre",name:"Eletre"},{slug:"emeya",name:"Emeya"},{slug:"emira",name:"Emira"},{slug:"evija",name:"Evija"}],mahindra:[{slug:"genio",name:"Genio"},{slug:"pik-up",name:"Pik Up"},{slug:"scorpio-n",name:"Scorpio-N"},{slug:"xuv500",name:"XUV500"},{slug:"xuv700",name:"XUV700"}],maserati:[{slug:"ghibli",name:"Ghibli"},{slug:"gran-turismo",name:"GranTurismo"},{slug:"grancabrio",name:"GranCabrio"},{slug:"grecale",name:"Grecale"},{slug:"gt2-stradale",name:"GT2 Stradale"},{slug:"levante",name:"Levante"},{slug:"mc20",name:"MC20"},{slug:"mcpura",name:"MCPura"},{slug:"quattroporte",name:"Quattroporte"}],mazda:[{slug:"6e",name:"6e"},{slug:"929",name:"929"},{slug:"bravo",name:"Bravo"},{slug:"bt-50",name:"BT-50"},{slug:"cx-3",name:"CX-3"},{slug:"cx-30",name:"CX-30"},{slug:"cx-5",name:"CX-5"},{slug:"cx-60",name:"CX-60"},{slug:"cx-70",name:"CX-70"},{slug:"cx-8",name:"CX-8"},{slug:"cx-80",name:"CX-80"},{slug:"cx-9",name:"CX-9"},{slug:"cx-90",name:"CX-90"},{slug:"mazda2",name:"Mazda2"},{slug:"mazda3",name:"Mazda3"},{slug:"mazda3-mps",name:"Mazda3 MPS"},{slug:"mazda6",name:"Mazda6"},{slug:"mx-30",name:"MX-30"},{slug:"mx-5",name:"MX-5"},{slug:"mx-5-rf",name:"MX-5 RF"},{slug:"rx-7",name:"RX-7"}],mclaren:[{slug:"720s",name:"720S"},{slug:"720s-spider",name:"720S Spider"},{slug:"750s",name:"750S"},{slug:"765lt",name:"765LT"},{slug:"765lt-spider",name:"765LT Spider"},{slug:"artura",name:"Artura"},{slug:"gt",name:"GT"},{slug:"gts",name:"GTS"},{slug:"mp4-12c",name:"Mp4-12C"},{slug:"senna",name:"Senna"},{slug:"speedtail",name:"Speedtail"},{slug:"w1",name:"W1"}],mercedes:[{slug:"a-class",name:"A-Class"},{slug:"a-class-amg",name:"A-Class AMG"},{slug:"c-class",name:"C-Class"},{slug:"c-class-amg",name:"C-Class AMG"},{slug:"cla-class",name:"CLA-Class"},{slug:"cla-class-amg",name:"CLA-Class AMG"},{slug:"cle-class",name:"CLE-Class"},{slug:"cls-class-amg",name:"CLS-Class AMG"},{slug:"e-class",name:"E-Class"},{slug:"e-class-amg",name:"E-Class AMG"},{slug:"e-class-cabrio",name:"E-Class Cabriolet"},{slug:"e-class-coupe",name:"E-Class Coupe"},{slug:"eqa",name:"EQA"},{slug:"eqb",name:"EQB"},{slug:"eqc",name:"EQC"},{slug:"eqe",name:"EQE"},{slug:"eqe-amg",name:"EQE AMG"},{slug:"eqe-suv",name:"EQE SUV"},{slug:"eqe-suv-amg",name:"EQE SUV AMG"},{slug:"eqs",name:"EQS"},{slug:"eqs-amg",name:"EQS AMG"},{slug:"eqs-suv",name:"EQS SUV"},{slug:"eqv",name:"EQV"},{slug:"g-class",name:"G-Class"},{slug:"g-class-amg",name:"G-Class AMG"},{slug:"gla",name:"GLA-Class"},{slug:"gla-class-amg",name:"GLA-Class AMG"},{slug:"glb",name:"GLB-Class"},{slug:"glb-class-amg",name:"GLB-Class AMG"},{slug:"glc",name:"GLC-Class"},{slug:"glc-class-amg",name:"GLC-Class AMG"},{slug:"glc-class-coupe",name:"GLC-Class Coupe"},{slug:"glc-class-coupe-amg",name:"GLC-Class Coupe AMG"},{slug:"gle-class",name:"GLE-Class"},{slug:"gle-class-amg",name:"GLE-Class AMG"},{slug:"gle-class-coupe",name:"GLE-Class Coupe"},{slug:"gle-class-coupe-amg",name:"GLE-Class Coupe AMG"},{slug:"gls-class",name:"GLS-Class"},{slug:"gls-class-amg",name:"GLS-Class AMG"},{slug:"s-class",name:"S-Class"},{slug:"sprinter",name:"Sprinter"},{slug:"v-class",name:"V-Class"},{slug:"x-class",name:"X-Class"}],"mercedes-maybach":[{slug:"eqs",name:"EQS"},{slug:"gls-class",name:"GLS-Class"},{slug:"s-class",name:"S-Class"}],mg:[{slug:"3",name:"3"},{slug:"350",name:"350"},{slug:"4",name:"4"},{slug:"5",name:"5"},{slug:"6",name:"6"},{slug:"cyberster",name:"Cyberster"},{slug:"gs",name:"GS"},{slug:"hs",name:"HS"},{slug:"im5",name:"IM5"},{slug:"im6",name:"IM6"},{slug:"qs",name:"QS"},{slug:"s5",name:"S5"},{slug:"u9",name:"MGU9"},{slug:"zs",name:"ZS"},{slug:"zs-ev",name:"ZS EV"},{slug:"zst",name:"ZST"}],mini:[{slug:"aceman",name:"Aceman"},{slug:"clubman",name:"Clubman"},{slug:"convertible",name:"Convertible"},{slug:"cooper",name:"Cooper"},{slug:"countryman",name:"Countryman"},{slug:"hatch",name:"Hatch"}],mitsubishi:[{slug:"asx",name:"ASX"},{slug:"challenger",name:"Challenger"},{slug:"eclipse-cross",name:"Eclipse Cross"},{slug:"express",name:"Express"},{slug:"l200",name:"L200"},{slug:"magna",name:"Magna"},{slug:"mirage",name:"Mirage"},{slug:"nimbus",name:"Nimbus"},{slug:"outlander",name:"Outlander"},{slug:"pajero-sport",name:"Pajero Sport"},{slug:"triton",name:"Triton"},{slug:"verada",name:"Verada"}],nissan:[{slug:"200sx",name:"200SX"},{slug:"280zx",name:"280ZX"},{slug:"300zx",name:"300ZX"},{slug:"370z",name:"370Z"},{slug:"almera",name:"Almera"},{slug:"altima",name:"Altima"},{slug:"ariya",name:"Ariya"},{slug:"bluebird",name:"Bluebird"},{slug:"dualis",name:"Dualis"},{slug:"dualis-2",name:"Dualis+2"},{slug:"gt-r",name:"GT-R"},{slug:"juke",name:"Juke"},{slug:"leaf",name:"Leaf"},{slug:"maxima",name:"Maxima"},{slug:"micra",name:"Micra"},{slug:"navara",name:"Navara"},{slug:"np300-navara",name:"NP300 Navara"},{slug:"pathfinder",name:"Pathfinder"},{slug:"patrol",name:"Patrol"},{slug:"patrol-cab-chassis",name:"Patrol Cab Chassis"},{slug:"pulsar",name:"Pulsar"},{slug:"qashqai",name:"Qashqai"},{slug:"x-trail",name:"X-Trail"},{slug:"z",name:"Z"}],omoda:[{slug:"9",name:"9"},{slug:"c5",name:"C5"},{slug:"e5",name:"E5"}],opel:[{slug:"astra",name:"Astra"},{slug:"grandland",name:"Grandland"},{slug:"mokka",name:"Mokka"}],ora:[{slug:"03",name:"03"}],peugeot:[{slug:"2008",name:"2008"},{slug:"208",name:"208"},{slug:"3008",name:"3008"},{slug:"308",name:"308"},{slug:"408",name:"408"},{slug:"5008",name:"5008"},{slug:"508",name:"508"},{slug:"boxer",name:"Boxer"},{slug:"expert",name:"Expert"},{slug:"partner",name:"Partner"}],polaris:[{slug:"general-xp",name:"General XP 1000"},{slug:"general-xp-4",name:"General XP 4 1000"},{slug:"ranger-crew-xd",name:"Ranger Crew XD 1500"},{slug:"ranger-crew-xp",name:"Ranger Crew XP 1000"},{slug:"ranger-xd",name:"Ranger XD 1500"},{slug:"ranger-xp",name:"Ranger XP 1000"},{slug:"rzr-pro-r",name:"RZR Pro R"},{slug:"rzr-pro-r-4",name:"RZR Pro R 4"},{slug:"rzr-pro-xp",name:"RZR Pro XP"},{slug:"rzr-xp",name:"RZR XP 1000"},{slug:"rzr-xp-4",name:"RZR XP 4 1000"},{slug:"xpedition-adv",name:"Xpedition ADV"},{slug:"xpedition-adv-5",name:"Xpedition ADV 5"},{slug:"xpedition-xp",name:"Xpedition XP"},{slug:"xpedition-xp-5",name:"Xpedition XP 5"}],polestar:[{slug:"polestar-1",name:"Polestar 1"},{slug:"polestar-2",name:"Polestar 2"},{slug:"polestar-3",name:"Polestar 3"},{slug:"polestar-4",name:"Polestar 4"},{slug:"polestar-5",name:"Polestar 5"}],porsche:[{slug:"718",name:"718"},{slug:"911",name:"911"},{slug:"928",name:"928"},{slug:"cayenne",name:"Cayenne"},{slug:"macan",name:"Macan"},{slug:"panamera",name:"Panamera"},{slug:"taycan",name:"Taycan"}],proton:[{slug:"exora",name:"Exora"},{slug:"gen-2",name:"Gen-2"},{slug:"jumbuck",name:"Jumbuck"},{slug:"persona",name:"Persona"},{slug:"preve",name:"Preve"},{slug:"s16",name:"S16"},{slug:"satria",name:"Satria"},{slug:"savvy",name:"Savvy"},{slug:"suprima",name:"Suprima S"},{slug:"waja",name:"Waja"}],ram:[{slug:"1500",name:"1500"},{slug:"1500-classic",name:"1500 Classic"},{slug:"1500-trx",name:"1500 TRX"},{slug:"2500",name:"2500"},{slug:"3500",name:"3500"}],renault:[{slug:"arkana",name:"Arkana"},{slug:"captur",name:"Captur"},{slug:"duster",name:"Duster"},{slug:"kangoo",name:"Kangoo"},{slug:"kangoo-van",name:"Kangoo Van"},{slug:"koleos",name:"Koleos"},{slug:"latitude",name:"Latitude"},{slug:"master",name:"Master"},{slug:"megane-e-tech",name:"Megane E-Tech"},{slug:"scenic-e-tech",name:"Scenic E-Tech"},{slug:"trafic",name:"Trafic"}],seat:[{slug:"arona",name:"Arona"},{slug:"ateca",name:"Ateca"},{slug:"leon",name:"Leon"},{slug:"tarraco",name:"Tarraco"}],skoda:[{slug:"elroq",name:"Elroq"},{slug:"enyaq-iv",name:"Enyaq"},{slug:"fabia",name:"Fabia"},{slug:"kamiq",name:"Kamiq"},{slug:"karoq",name:"Karoq"},{slug:"kodiaq",name:"Kodiaq"},{slug:"octavia",name:"Octavia"},{slug:"rapid",name:"Rapid"},{slug:"scala",name:"Scala"},{slug:"superb",name:"Superb"},{slug:"superb-scout",name:"Superb Scout"},{slug:"yeti",name:"Yeti"}],smart:[{slug:"1",name:"#1"},{slug:"3",name:"#3"},{slug:"roadster",name:"Roadster"}],ssangyong:[{slug:"korando",name:"Korando"},{slug:"kyron",name:"Kyron"},{slug:"musso",name:"Musso"},{slug:"rexton",name:"Rexton"},{slug:"rhino",name:"Rhino"},{slug:"stavic",name:"Stavic"},{slug:"tivoli",name:"Tivoli"}],subaru:[{slug:"brz",name:"BRZ"},{slug:"crosstrek",name:"Crosstrek"},{slug:"forester",name:"Forester"},{slug:"impreza",name:"Impreza"},{slug:"liberty",name:"Liberty"},{slug:"outback",name:"Outback"},{slug:"solterra",name:"Solterra"},{slug:"wrx",name:"WRX"},{slug:"wrx-sti",name:"WRX STI"},{slug:"xv",name:"XV"}],suzuki:[{slug:"baleno",name:"Baleno"},{slug:"fronx",name:"Fronx"},{slug:"ignis",name:"Ignis"},{slug:"jimny",name:"Jimny"},{slug:"s-cross",name:"S-Cross"},{slug:"swift",name:"Swift"},{slug:"swift-sport",name:"Swift Sport"},{slug:"vitara",name:"Vitara"}],tank:[{slug:"300",name:"300"},{slug:"500",name:"500"}],tesla:[{slug:"cybertruck",name:"Cybertruck"},{slug:"model-3",name:"Model 3"},{slug:"model-s",name:"Model S"},{slug:"model-x",name:"Model X"},{slug:"model-y",name:"Model Y"}],toyota:[{slug:"86",name:"86"},{slug:"aurion",name:"Aurion"},{slug:"avalon",name:"Avalon"},{slug:"avensis-verso",name:"Avensis Verso"},{slug:"bz4x",name:"bZ4X"},{slug:"c-hr",name:"C-HR"},{slug:"camry",name:"Camry"},{slug:"corolla",name:"Corolla"},{slug:"corolla-cross",name:"Corolla Cross"},{slug:"echo",name:"Echo"},{slug:"fortuner",name:"Fortuner"},{slug:"gr-corolla",name:"GR Corolla"},{slug:"gr-yaris",name:"GR Yaris"},{slug:"gr86",name:"GR86"},{slug:"granvia",name:"Granvia"},{slug:"hiace",name:"Hiace"},{slug:"hilux",name:"Hilux"},{slug:"kluger",name:"Kluger"},{slug:"land-cruiser",name:"Land Cruiser"},{slug:"land-cruiser-prado",name:"Land Cruiser Prado"},{slug:"prius",name:"Prius"},{slug:"prius-c",name:"Prius c"},{slug:"prius-v",name:"Prius v"},{slug:"rav4",name:"RAV4"},{slug:"rukus",name:"Rukus"},{slug:"supra",name:"Supra"},{slug:"tarago",name:"Tarago"},{slug:"tundra",name:"Tundra"},{slug:"vienta",name:"Vienta"},{slug:"yaris",name:"Yaris"},{slug:"yaris-cross",name:"Yaris Cross"}],triumph:[{slug:"tr7",name:"TR7"}],volkswagen:[{slug:"amarok",name:"Amarok"},{slug:"beetle",name:"Beetle"},{slug:"caddy",name:"Caddy"},{slug:"california",name:"California"},{slug:"caravelle",name:"Caravelle"},{slug:"cc",name:"CC"},{slug:"crafter",name:"Crafter"},{slug:"golf",name:"Golf"},{slug:"golf-alltrack",name:"Golf Alltrack"},{slug:"golf-gti",name:"Golf GTI"},{slug:"golf-r",name:"Golf R"},{slug:"grand-california",name:"Grand California"},{slug:"id-buzz",name:"ID. Buzz"},{slug:"id4",name:"ID.4"},{slug:"id5",name:"ID.5"},{slug:"multivan",name:"Multivan"},{slug:"passat",name:"Passat"},{slug:"passat-alltrack",name:"Passat Alltrack"},{slug:"polo",name:"Polo"},{slug:"polo-gti",name:"Polo GTI"},{slug:"t-cross",name:"T-Cross"},{slug:"t-roc",name:"T-Roc"},{slug:"t-roc-r",name:"T-Roc R"},{slug:"tiguan",name:"Tiguan"},{slug:"tiguan-allspace",name:"Tiguan Allspace"},{slug:"touareg",name:"Touareg"},{slug:"transporter",name:"Transporter"}],volvo:[{slug:"c40",name:"C40"},{slug:"es90",name:"ES90"},{slug:"ex30",name:"EX30"},{slug:"ex40",name:"EX40"},{slug:"ex90",name:"EX90"},{slug:"s60",name:"S60"},{slug:"s60-cross-country",name:"S60 Cross Country"},{slug:"s90",name:"S90"},{slug:"v60-cross-country",name:"V60 Cross Country"},{slug:"v90-cross-country",name:"V90 Cross Country"},{slug:"xc40",name:"XC40"},{slug:"xc60",name:"XC60"},{slug:"xc90",name:"XC90"}],zeekr:[{slug:"009",name:"009"},{slug:"x",name:"X"}]},years:{"audi/rs6":[2026,2025,2024,2023,2022,2021,2020],"bmw/m3":[2026,2025,2024,2023,2022,2021,2020,2018,2017,2016,2015,2014],"ferrari/296-gtb":[2026,2025,2024,2023,2022],"lamborghini/huracan":[2024,2023,2022,2021,2020,2019],"mclaren/750s":[2026,2025,2024,2023],"mercedes/c-class-amg":[2026,2025,2024,2023,2022,2021,2020,2019,2018,2017,2016],"nissan/gt-r":[2023,2022,2021,2020,2019,2018,2017,2016],"tesla/model-3":[2026,2025,2024,2023,2022,2021,2020,2019,2018,2017],"toyota/supra":[2026,2025,2024,2023,2022,2021,1993,1992,1991,1990,1989,1988,1987,1986]},modifications:{"audi/rs6/2024":[{slug:"a28ff79ddf",name:"4.0 TFSi quattro",trim:"4.0 TFSi quattro",body:null}],"bmw/m3/2024":[{slug:"0aaf0bb46d",name:"M3",trim:"M3",body:null},{slug:"402e65e913",name:"M3 Competition",trim:"M3 Competition",body:null},{slug:"4c760df5c5",name:"M3 Competition xDrive",trim:"M3 Competition xDrive",body:null},{slug:"6250847bc8",name:"M3 Competition xDrive",trim:"M3 Competition xDrive",body:null},{slug:"82f59cadb0",name:"M3",trim:"M3",body:null}],"ferrari/296-gtb/2024":[{slug:"c412dafd12",name:"3.0",trim:"3.0",body:null}],"lamborghini/huracan/2024":[{slug:"aab49a3dae",name:"Evo 5.2",trim:"Evo 5.2",body:null},{slug:"f81a37ca20",name:"Evo 5.2",trim:"Evo 5.2",body:null}],"mclaren/750s/2024":[{slug:"f8f346c327",name:"4.0T",trim:"4.0T",body:null}],"mercedes/c-class-amg/2024":[{slug:"038122904b",name:"C 43 4Matic",trim:"C 43 4Matic",body:null},{slug:"a403e6b64c",name:"C 63 S E",trim:"C 63 S E",body:null}],"nissan/gt-r/2024":[],"tesla/model-3/2024":[{slug:"026e4ab9d6",name:"Long Range",trim:"Long Range",body:null},{slug:"4296c050a9",name:"Performance",trim:"Performance",body:null},{slug:"50f0c93d66",name:"Performance",trim:"Performance",body:null},{slug:"be5b2b9767",name:"Standard Range",trim:"Standard Range",body:null},{slug:"d4960b3833",name:"Long Range",trim:"Long Range",body:null}],"toyota/supra/2024":[{slug:"eabbd747b7",name:"3.0i",trim:"3.0i",body:null}]},meta:{modelsFetchedAt:{abarth:"2026-06-28T04:33:00.474Z",aion:"2026-06-28T04:33:01.415Z","alfa-romeo":"2026-06-28T04:33:02.355Z",alpine:"2026-06-28T04:33:03.290Z","aston-martin":"2026-06-28T04:33:04.229Z",audi:"2026-06-28T04:33:05.195Z",bentley:"2026-06-28T04:33:06.135Z",bmw:"2026-06-28T04:33:07.112Z","bmw-alpina":"2026-06-28T04:33:08.062Z",byd:"2026-06-28T04:33:09.004Z",cadillac:"2026-06-28T04:33:09.958Z",chery:"2026-06-28T04:33:10.944Z",citroen:"2026-06-28T04:33:11.887Z",cupra:"2026-06-28T04:33:12.827Z",daihatsu:"2026-06-28T04:33:13.770Z",datsun:"2026-06-28T04:33:14.721Z",deepal:"2026-06-27T04:23:59.381Z",denza:"2026-06-27T04:24:00.200Z",dodge:"2026-06-27T04:24:01.018Z",ds:"2026-06-27T04:24:01.843Z",ferrari:"2026-06-27T04:24:02.667Z",fiat:"2026-06-27T04:24:03.492Z",ford:"2026-06-27T04:24:04.311Z",foton:"2026-06-27T04:24:05.129Z",geely:"2026-06-27T04:24:05.946Z",genesis:"2026-06-27T04:24:06.764Z","great-wall":"2026-06-27T04:24:07.584Z",haval:"2026-06-27T04:24:08.402Z",holden:"2026-06-27T04:24:09.221Z",honda:"2026-06-27T04:24:10.039Z",hyundai:"2026-06-27T04:24:10.861Z",ineos:"2026-06-27T04:24:11.677Z",isuzu:"2026-06-27T04:24:12.495Z",iveco:"2026-06-28T04:32:51.940Z",jac:"2026-06-27T04:24:13.314Z",jaecoo:"2026-06-28T04:32:17.949Z",jaguar:"2026-06-28T04:32:18.902Z",jeep:"2026-06-28T04:32:19.838Z","kg-mobility":"2026-06-28T04:32:20.769Z",kia:"2026-06-28T04:32:21.710Z",lamborghini:"2026-06-28T04:32:22.641Z","land-rover":"2026-06-28T04:32:23.589Z",ldv:"2026-06-28T04:32:24.525Z",leapmotor:"2026-06-28T04:32:25.463Z",lexus:"2026-06-28T04:32:26.401Z",lotus:"2026-06-28T04:32:27.336Z",mahindra:"2026-06-28T04:32:28.278Z",maserati:"2026-06-28T04:32:29.225Z",mazda:"2026-06-28T04:32:30.189Z",mclaren:"2026-06-28T04:32:31.133Z",mercedes:"2026-06-28T04:32:32.103Z","mercedes-maybach":"2026-06-28T04:32:33.041Z",mg:"2026-06-28T04:32:33.991Z",mini:"2026-06-28T04:32:34.935Z",mitsubishi:"2026-06-28T04:32:35.884Z",nissan:"2026-06-28T04:32:36.836Z",omoda:"2026-06-28T04:32:37.789Z",opel:"2026-06-28T04:32:38.731Z",ora:"2026-06-28T04:32:39.684Z",peugeot:"2026-06-28T04:32:40.631Z",polaris:"2026-06-28T04:32:52.902Z",polestar:"2026-06-28T04:32:41.575Z",porsche:"2026-06-28T04:32:42.516Z",proton:"2026-06-28T04:32:43.459Z",ram:"2026-06-28T04:32:44.398Z",renault:"2026-06-28T04:32:45.351Z",seat:"2026-06-28T04:32:46.297Z",skoda:"2026-06-28T04:32:47.233Z",smart:"2026-06-28T04:32:48.178Z",ssangyong:"2026-06-28T04:32:49.114Z",subaru:"2026-06-28T04:32:50.052Z",suzuki:"2026-06-28T04:32:50.996Z",tank:"2026-06-28T04:32:53.840Z",tesla:"2026-06-28T04:32:54.775Z",toyota:"2026-06-28T04:32:55.749Z",triumph:"2026-06-28T04:32:56.677Z",volkswagen:"2026-06-28T04:32:57.635Z",volvo:"2026-06-28T04:32:58.582Z",zeekr:"2026-06-28T04:32:59.524Z"},popularFetchedAt:"2026-06-28T04:32:16.984Z",coverage:{covered:79,total:79}}};var u=v,k=(d||""||"http://localhost:8000").replace(/\/+$/,""),M=3600,Z="x-efficient-shop-hop",C="".trim();async function g(a,e){let s=new URLSearchParams;for(let[h,i]of Object.entries(e))i!==void 0&&i!==""&&s.set(h,String(i));let n=s.toString(),l=`${k}/api/fitment${a}${n?`?${n}`:""}`,m={next:{revalidate:M}},[f,y]=await Promise.all([b(),T()]),o=p(f,y,S(m));C&&(o[Z]=C);let t=await fetch(l,{...m,...Object.keys(o).length>0?{headers:o}:{}});if(!t.ok)throw new Error(`backend fitment ${t.status} on ${a}`);let c=await t.text();return c?JSON.parse(c):null}function r(a){return a!==void 0&&u.region===a&&(u.makes?.length??0)>0}function A(a){if(!a)return null;let e=a.et_range;return{pcd:a.pcd||void 0,boltPattern:a.bolt_pattern||void 0,centreBore:a.centre_bore??void 0,frontWheels:a.front_wheels??[],rearWheels:a.rear_wheels??[],frontTyres:a.front_tyres??[],rearTyres:a.rear_tyres??[],etRange:e&&e[0]!==null&&e[1]!==null?[e[0],e[1]]:void 0}}var z={async makes(a){try{return await g("/makes/",{region:a})}catch(e){if(r(a))return u.makes;throw e}},async models(a,e){try{return await g("/models/",{make:a,region:e})}catch(s){let n=r(e)?u.models[a]:void 0;if(n)return n;throw s}},async years(a,e,s){try{return await g("/years/",{make:a,model:e,region:s})}catch(n){let l=r(s)?u.years[`${a}/${e}`]:void 0;if(l)return l;throw n}},async modifications(a,e,s,n){try{return await g("/modifications/",{make:a,model:e,year:s,region:n})}catch(l){let m=r(n)?u.modifications[`${a}/${e}/${s}`]:void 0;if(m)return m;throw l}},async stockFitment(a,e,s,n,l){return A(await g("/stock-fitment/",{make:a,model:e,year:s,modification:n,region:l}))}};export{z as fitmentData};
package/dist/contract.js CHANGED
@@ -20,15 +20,7 @@ WHAT REPLACES IT: a Cards section with Card style set to Label only. It draws th
20
20
 
21
21
  WHAT A MERCHANT LOSES on a NEW Label only section: nothing this section had. It GAINS the Cards head split (its head can move into a box of its own), which Key Features never had: that head draws the shared \`simple\` head, eyebrow ABOVE the heading, where Key Features drew it beside.
22
22
 
23
- THE TYPE KEY STAYS AND SO DOES THE COMPONENT. Every page holding a Key Features still renders through it and can still be edited; no document is rewritten and NO MIGRATION RUNS.`,DeliveryOptions:`Lewis, 2026-10-10 (section-merges.md group 4, approved): one Cards section holds the five card grids \u2014 Cards, Key Features, Document Detail Cards, Recurring Columns and Delivery Options. Card content = Manual / Delivery options; the card's parts are Display chips; one Highlighted card row with its Highlight badge. Retired by card [MERGE] Delivery Options, Detail Cards And Recurring Columns Into Cards (M3, 2026-11-04).
24
-
25
- WHAT REPLACES IT: Cards with Card content set to Delivery options, drawn from its card template: the backend's \`delivery-options\` rows (name, price, time, note), one card each, in the website's own currency. The one Highlighted card row and the Highlight badge replace the per-option Highlight switch.
26
-
27
- WHAT A MERCHANT LOSES: more than one highlighted option (Lewis approved ONE Highlighted card row, 2026-10-10). No stored node held two.
28
-
29
- NO CONVERTER ROW: 0 DeliveryOptions nodes on the US sites, draft or published (read only, 2026-11-04). This entry is its reason in the guard (\`scripts/test-section-to-box.tsx\` \xA75).
30
-
31
- THE TYPE KEY STAYS AND SO DOES THE COMPONENT (efficient-storefront-blocks). A Delivery Options anywhere still renders through it and can still be edited; no document is rewritten.`,Series:`Lewis, 2026-10-10 (section-merges.md group 4, approved): one Cards section holds the five card grids \u2014 Cards, Key Features, Document Detail Cards, Recurring Columns and Delivery Options. Card content = Manual / Delivery options; the card's parts are Display chips; one Highlighted card row with its Highlight badge. Retired by card [MERGE] Delivery Options, Detail Cards And Recurring Columns Into Cards (M3, 2026-11-04).
23
+ THE TYPE KEY STAYS AND SO DOES THE COMPONENT. Every page holding a Key Features still renders through it and can still be edited; no document is rewritten and NO MIGRATION RUNS.`,DeliveryOptions:"Lewis, 2026-10-10 (section-merges.md group 4, approved): one Cards section holds the five card grids \u2014 Cards, Key Features, Document Detail Cards, Recurring Columns and Delivery Options. Card content = Manual / Delivery options; the card's parts are Display chips; one Highlighted card row with its Highlight badge. Retired by card [MERGE] Delivery Options, Detail Cards And Recurring Columns Into Cards (M3, 2026-11-04).\n\nWHAT REPLACES IT: Cards with Card content set to Delivery options, drawn from its card template: the backend's `delivery-options` rows (name, price, time, note), one card each, in the website's own currency. The one Highlighted card row and the Highlight badge replace the per-option Highlight switch.\n\nWHAT A MERCHANT LOSES: more than one highlighted option (Lewis approved ONE Highlighted card row, 2026-10-10). No stored node held two.\n\nNO CONVERTER ROW: 0 DeliveryOptions nodes on the US sites, draft or published (read only, 2026-11-04). This entry is its reason in the guard (`scripts/test-section-to-box.tsx` \xA75).\n\nTHE TYPE KEY STAYS AND SO DOES THE COMPONENT (efficient-storefront-blocks). A Delivery Options anywhere still renders through it and can still be edited; no document is rewritten.\n\nDELETE DATE 2026-12-18: the retired component in efficient-storefront-blocks (`components/DeliveryOptions`, `DeliveryOptionsSource`, `blocks/commerce/DeliveryOptions`) goes then, in a storefront-blocks follow-up. 0 stored DeliveryOptions nodes on the 34 US pages, draft or published (read only, 2026-11-08), and no converter row is coming.",Series:`Lewis, 2026-10-10 (section-merges.md group 4, approved): one Cards section holds the five card grids \u2014 Cards, Key Features, Document Detail Cards, Recurring Columns and Delivery Options. Card content = Manual / Delivery options; the card's parts are Display chips; one Highlighted card row with its Highlight badge. Retired by card [MERGE] Delivery Options, Detail Cards And Recurring Columns Into Cards (M3, 2026-11-04).
32
24
 
33
25
  WHAT REPLACES IT: Cards drawn from its card template. A column's number is Number, its "Right Top Text" Corner note, its title Card title, its words Card body, its count and label one Count, and the one \`viewLabel\` a plain Text typed once in the template, so every card shows it; the background is the Box's. The converter row (\`section-to-box-rows-cards.ts\`, OFF) lays down that Cards inside a Box.
34
26
 
@@ -1 +1 @@
1
- "use client";import{jsx as G,jsxs as J}from"react/jsx-runtime";import{mediaGroupVehicle as K}from"../../render/lib/content/source-values.js";import{useEffect as R,useMemo as Q,useRef as b,useState as k}from"react";import{storefrontAdmin as U}from"../../render/lib/api/index.js";import{useEaselHost as X}from"efficient-easel/screen/lib/host";import{getEditorToken as Y}from"efficient-web-builder/render/lib/editor-auth";import{getEditorSiteId as Z}from"efficient-web-builder/render/lib/editor-site";import{loadProductCatalog as F}from"../../render/components/useProductCatalog.js";import{loadStorefrontCategories as v}from"./useStorefrontCategories.js";import{useCategoryFilter as ee}from"./useCategoryFilter.js";import te from"./CategoryProductFields.js";import{snapshotChanged as re}from"efficient-web-builder/editor/components/useSnapshotSource";import se from"efficient-web-builder/editor/components/SourceStatus";import{say as n,sayCount as H}from"efficient-web-builder/format/lib/editor-words";const a="__all__";function oe(e,r){return r===a?e:e.filter(o=>o.process===r)}function m(e,r){return e.map(o=>({image:o.items[0]?.url,photos:o.items.map(s=>({src:s.url})),href:`/wheels/${r.slug}`,process:r.process,eyebrow:K(o),name:r.name,meta:o.finish})).filter(o=>!!o.image)}function W(e){const r=Y();return r?U.getWheelDetail(r,e,{siteId:Z()}):Promise.reject(new Error("editor not authenticated"))}async function ne(e){const r=await W(e),o={slug:r.slug,name:r.name,process:r.process},s=r.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};return{...o,vehicleCards:m(s.lifestyle??[],o),wheelCards:m(s.photos??[],o),othersCards:m(s.others??[],o)}}async function ae(e,r){const o=await Promise.all(e.map(i=>W(i.slug).catch(()=>null))),s=[],h=[],p=[];for(const i of o){if(!i)continue;const l={slug:i.slug,name:i.name,process:i.process},d=i.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};s.push(...m(d.lifestyle??[],l)),h.push(...m(d.photos??[],l)),p.push(...m(d.others??[],l))}return{slug:a,name:r===a?"All products":r,process:"",vehicleCards:s,wheelCards:h,othersCards:p,category:r}}function ie({value:e,onChange:r}){const o=X(),[s,h]=k(null),[p,i]=k(null),[l,d]=k(!1),[L,P]=k(!1),u=b(!0),g=b(e);g.current=e;const O=b(r);O.current=r;const x=(t,f=!1)=>{d(!0),f||P(!1),t().then(B=>{u.current&&(re(B,g.current)&&O.current(B),P(!1))}).catch(()=>{u.current&&!f&&P(!0)}).finally(()=>{u.current&&d(!1)})},A=(t,f=!1)=>x(()=>ne(t),f),y=(t,f=!1)=>x(()=>ae(oe(s??[],t),t),f);R(()=>(u.current=!0,F().then(t=>{u.current&&h(t)}),v().then(t=>{u.current&&i(t)}),()=>{u.current=!1}),[]);const C=b(!1);R(()=>{if(C.current)return;const t=g.current;if(!t?.slug){C.current=!0;return}if(t.slug===a){if(s===null)return;C.current=!0,y(t.category??a,!0)}else C.current=!0,A(t.slug,!0)},[s]);const c=e?.slug===a,w=Q(()=>s&&e?.slug&&!c?s.find(t=>t.slug===e.slug)??null:null,[s,e?.slug,c]),{category:N,setCategory:E,categoryNames:D,filtered:T}=ee(s,p);R(()=>{c?e?.category&&E(e.category):w?.process&&E(w.process)},[w,c,e?.category]);const S=s===null,_=!!e?.slug&&!c&&s!==null&&!w,I=t=>{if(!t){r(null);return}if(t===a){y(N);return}A(t)},M=t=>{E(t),g.current?.slug===a&&y(t)},V=()=>{e?.slug&&(F(!0).then(t=>{u.current&&h(t)}),c?y(e.category??a):A(e.slug))},$=()=>{e?.slug&&o.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},j=(e?.vehicleCards.length??0)+(e?.wheelCards.length??0)+(e?.othersCards?.length??0),q=L?"error":l?"loading":"idle",z=L?n("Couldn’t reach the product catalog."):l?n("Syncing media from the catalog…"):_?n("Linked to “{name}” — no longer in the catalog.",{name:e?.name??""}):c?H("Linked to “{name}” · {n} card from all products’ media groups.","Linked to “{name}” · {n} cards from all products’ media groups.",j,{name:e?.name??""}):H("Linked to “{name}” · {n} card from its media groups.","Linked to “{name}” · {n} cards from its media groups.",j,{name:e?.name??""});return J("div",{children:[G(te,{category:N,onChange:M,categoryNames:D,readOnly:S,products:T,allProducts:s??[],product:e?.slug??"",onProductChange:I,productReadOnly:S||l,emptyLabel:S?n("Loading…"):n("None (write the cards yourself)"),extraOptions:[{label:n("All products"),value:a},..._?[{label:n("{name} (unavailable)",{name:e.name}),value:e.slug}]:[]]}),e?.slug?G(se,{status:q,statusText:z,onRefresh:V,busy:l,edit:c?void 0:{label:n("Edit product ✎"),onClick:$},hint:c?n("Pools every product’s grouped media: each one’s Relative / lifestyle photos feed Gallery A, its Product photos Gallery B and its Others the Others gallery. Every media group becomes a card, attributed to its own product (title, link and tag). Narrow the set with the Category filter above. Headings, intro copy and stats stay yours."):n("Gallery A comes from the product’s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others — edit those in the product’s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card’s title is the product name and its tag the category. Headings, intro copy and stats stay yours.")}):G("p",{className:"es-field-hint",children:n("Pick a product — or All products — to build the galleries from media groups, or keep “None” to author the cards yourself.")})]})}export{ie as default};
1
+ "use client";import{jsx as A,jsxs as $}from"react/jsx-runtime";import{mediaGroupVehicle as q}from"../../render/lib/content/source-values.js";import{useEffect as _,useMemo as J,useRef as E,useState as C}from"react";import{storefrontAdmin as K}from"../../render/lib/api/index.js";import{useEaselHost as Q}from"efficient-easel/screen/lib/host";import{getEditorToken as X}from"efficient-web-builder/render/lib/editor-auth";import{getEditorSiteId as Y}from"efficient-web-builder/render/lib/editor-site";import{loadProductCatalog as j}from"../../render/components/useProductCatalog.js";import{loadStorefrontCategories as Z}from"./useStorefrontCategories.js";import{useCategoryFilter as v}from"./useCategoryFilter.js";import ee from"./CategoryProductFields.js";import{snapshotChanged as te}from"efficient-web-builder/editor/components/useSnapshotSource";import re from"efficient-web-builder/editor/components/SourceStatus";import{say as l,sayCount as F}from"efficient-web-builder/format/lib/editor-words";const f="__all__";function se(e,t){return t===f?e:e.filter(o=>o.process===t)}function m(e,t){return e.map(o=>({image:o.items[0]?.url,photos:o.items.map(r=>({src:r.url})),href:`/wheels/${t.slug}`,process:t.process,eyebrow:q(o),name:t.name,meta:o.finish})).filter(o=>!!o.image)}function oe(e,t){if(!t)return e;const o=c=>[c.image,...(c.photos??[]).map(u=>u.src)].filter(u=>!!u),r=(c,u)=>{const a=new Map;for(const n of u??[])if(n.eyebrow)for(const i of o(n))a.has(i)||a.set(i,n.eyebrow);return a.size===0?c:c.map(n=>{if(n.eyebrow)return n;const i=o(n).find(p=>a.has(p));return i?{...n,eyebrow:a.get(i)}:n})};return{...e,vehicleCards:r(e.vehicleCards,t.vehicleCards),wheelCards:r(e.wheelCards,t.wheelCards),othersCards:r(e.othersCards,t.othersCards)}}function x(e){const t=X();return t?K.getWheelDetail(t,e,{siteId:Y()}):Promise.reject(new Error("editor not authenticated"))}async function ne(e){const t=await x(e),o={slug:t.slug,name:t.name,process:t.process},r=t.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};return{...o,vehicleCards:m(r.lifestyle??[],o),wheelCards:m(r.photos??[],o),othersCards:m(r.others??[],o)}}async function ae(e,t){const o=await Promise.all(e.map(a=>x(a.slug).catch(()=>null))),r=[],c=[],u=[];for(const a of o){if(!a)continue;const n={slug:a.slug,name:a.name,process:a.process},i=a.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};r.push(...m(i.lifestyle??[],n)),c.push(...m(i.photos??[],n)),u.push(...m(i.others??[],n))}return{slug:f,name:t===f?"All products":t,process:"",vehicleCards:r,wheelCards:c,othersCards:u,category:t}}function ie({value:e,onChange:t}){const o=Q(),[r,c]=C(null),[u,a]=C(null),[n,i]=C(!1),[p,w]=C(!1),h=E(!0),g=E(e);g.current=e;const S=E(t);S.current=t;const G=s=>{i(!0),w(!1),s().then(V=>{if(!h.current)return;const N=oe(V,g.current);te(N,g.current)&&S.current(N),w(!1)}).catch(()=>{h.current&&w(!0)}).finally(()=>{h.current&&i(!1)})},O=s=>G(()=>ne(s)),b=s=>G(()=>ae(se(r??[],s),s));_(()=>(h.current=!0,j().then(s=>{h.current&&c(s)}),Z().then(s=>{h.current&&a(s)}),()=>{h.current=!1}),[]);const d=e?.slug===f,y=J(()=>r&&e?.slug&&!d?r.find(s=>s.slug===e.slug)??null:null,[r,e?.slug,d]),{category:R,setCategory:k,categoryNames:H,filtered:W}=v(r,u);_(()=>{d?e?.category&&k(e.category):y?.process&&k(y.process)},[y,d,e?.category]);const P=r===null,L=!!e?.slug&&!d&&r!==null&&!y,M=s=>{if(!s){t(null);return}if(s===f){b(R);return}O(s)},T=s=>{k(s),g.current?.slug===f&&b(s)},D=()=>{e?.slug&&(j(!0).then(s=>{h.current&&c(s)}),d?b(e.category??f):O(e.slug))},I=()=>{e?.slug&&o.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},B=(e?.vehicleCards.length??0)+(e?.wheelCards.length??0)+(e?.othersCards?.length??0),z=p?"error":n?"loading":"idle",U=p?l("Couldn’t reach the product catalog."):n?l("Syncing media from the catalog…"):L?l("Linked to “{name}” — no longer in the catalog.",{name:e?.name??""}):d?F("Linked to “{name}” · {n} card from all products’ media groups.","Linked to “{name}” · {n} cards from all products’ media groups.",B,{name:e?.name??""}):F("Linked to “{name}” · {n} card from its media groups.","Linked to “{name}” · {n} cards from its media groups.",B,{name:e?.name??""});return $("div",{children:[A(ee,{category:R,onChange:T,categoryNames:H,readOnly:P,products:W,allProducts:r??[],product:e?.slug??"",onProductChange:M,productReadOnly:P||n,emptyLabel:P?l("Loading…"):l("None (write the cards yourself)"),extraOptions:[{label:l("All products"),value:f},...L?[{label:l("{name} (unavailable)",{name:e.name}),value:e.slug}]:[]]}),e?.slug?A(re,{status:z,statusText:U,onRefresh:D,busy:n,edit:d?void 0:{label:l("Edit product ✎"),onClick:I},hint:d?l("Pools every product’s grouped media: each one’s Relative / lifestyle photos feed Gallery A, its Product photos Gallery B and its Others the Others gallery. Every media group becomes a card, attributed to its own product (title, link and tag). Narrow the set with the Category filter above. Headings, intro copy and stats stay yours."):l("Gallery A comes from the product’s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others — edit those in the product’s Media tab and refresh. Each media group is a card: the car set on the group is the eyebrow (a card keeps its caption when the group has no car), its finish the meta line; the card’s title is the product name and its tag the category. Headings, intro copy and stats stay yours.")}):A("p",{className:"es-field-hint",children:l("Pick a product — or All products — to build the galleries from media groups, or keep “None” to author the cards yourself.")})]})}export{ie as default};
@@ -1 +1 @@
1
- import{blockAlignmentField as o}from"efficient-easel/screen/lib/document/box-fields";import{legacyBlockAlignOf as r}from"../../../render/lib/content/legacy-block-align.js";function c(n){const l=o(n);return{...l,render:e=>l.render({...e,value:r(e.value)??e.value})}}export{c as blockAlignRow};
1
+ import{blockAlignmentField as o}from"efficient-easel/screen/lib/document/box-fields";import{legacyBlockAlignOf as r}from"efficient-web-builder/format/lib/content/block-align";function c(n){const l=o(n);return{...l,render:e=>l.render({...e,value:r(e.value)??e.value})}}export{c as blockAlignRow};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import u from"../../../../../components/GalleryProductBinding.js";import{ProductFieldIcon as s,SquareIcon as n,PlacementIcon as p}from"efficient-easel/icons";import{upload as l,text as a,linkField as c}from"efficient-web-builder/editor/lib/document/controls";import{group as o}from"efficient-easel/screen/lib/document/box-fields";import{segmented as d,select as i}from"efficient-web-builder/editor/lib/document/box-fields";import{withRowRules as g}from"efficient-web-builder/render/lib/document/show-when";const m={field:"fromProduct",is:!0},P={fields:g({_gSource:o("Content source"),fromProduct:d("Image content",e(s,{}),[{label:"Manual",value:!1},{label:"Choose a product",value:!0}],!1),product:{type:"custom",render:({value:t,onChange:r})=>e(u,{value:t,onChange:r})},_gMedia:o("Media"),image:l("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:l("Image","image/*")},getItemSummary:(t,r)=>`Image ${(r??0)+1}`},_gText:o("Text"),process:a("Tag"),eyebrow:a("Eyebrow"),name:a("Title"),meta:a("Meta"),_gLink:o("Link"),href:c("Product link"),ratio:i("Shape",e(n,{}),[{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"},{label:"Landscape (4:3)",value:"landscape"},{label:"Portrait (4:5)",value:"portrait"},{label:"The photo's own shape",value:"auto"}],"square"),captionPlace:i("Card text",e(p,{}),[{label:"On the photo",value:"overlay"},{label:"Below the photo",value:"below"}],"overlay")},[[["_gMedia","image","photos","_gText","process","eyebrow","name","meta","_gLink","href"],{not:m}],[["product"],m]])};export{P as GalleryItemFields};
1
+ import{jsx as e}from"react/jsx-runtime";import u from"../../../../../components/GalleryProductBinding.js";import{ProductFieldIcon as n,SquareIcon as s,PlacementIcon as p}from"efficient-easel/icons";import{upload as l,text as a,linkField as c}from"efficient-web-builder/editor/lib/document/controls";import{group as o}from"efficient-easel/screen/lib/document/box-fields";import{segmented as d,select as i}from"efficient-web-builder/editor/lib/document/box-fields";import{withRowRules as g}from"efficient-web-builder/render/lib/document/show-when";const m={field:"fromProduct",is:!0},f={context:"parent.layout",set:!0},P={fields:g({_gSource:o("Content source"),fromProduct:d("Image content",e(n,{}),[{label:"Manual",value:!1},{label:"Choose a product",value:!0}],!1),product:{type:"custom",render:({value:r,onChange:t})=>e(u,{value:r,onChange:t})},_gMedia:o("Media"),image:l("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:l("Image","image/*")},getItemSummary:(r,t)=>`Image ${(t??0)+1}`},_gText:o("Text"),process:a("Tag"),eyebrow:a("Eyebrow"),name:a("Title"),meta:a("Meta"),_gLink:o("Link"),href:c("Product link"),ratio:i("Shape",e(s,{}),[{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"},{label:"Landscape (4:3)",value:"landscape"},{label:"Portrait (4:5)",value:"portrait"},{label:"The photo's own shape",value:"auto"}],"square"),captionPlace:i("Card text",e(p,{}),[{label:"On the photo",value:"overlay"},{label:"Below the photo",value:"below"}],"overlay")},[[["_gMedia","image","photos","_gText","process","eyebrow","name","meta","_gLink","href"],{not:m}],[["product"],m],[["ratio"],{not:f}]])};export{P as GalleryItemFields};
@@ -1 +1 @@
1
- export declare const serviceBlocks: Record<"Form" | "Reviews" | "Footer" | "FooterGroup" | "Events" | "MenuLinkBlock" | "ArticleBody" | "FooterMenu" | "SiteHeader" | "SiteFooter" | "AppointmentBooking" | "BookingBox" | "SubmitBuild" | "SubmitBox" | "FooterLogo" | "FooterDivider" | "FooterText" | "FooterEmailSignup" | "FooterSocial" | "FooterPayment" | "Subscribe" | "OpeningHours" | "RateTable" | "MessagingCards" | "FooterMessaging" | "ReviewForm" | "ContactRouting" | "LegalLineBlock" | "ContactCards" | "RatingBlock" | "SubscribeBlogs", import("efficient-easel/blocks").ComponentConfig<any, any, Omit<import("efficient-easel/blocks").ComponentData<any, string, Record<string, import("efficient-easel/blocks").DefaultComponentProps>>, "type">>>;
1
+ export declare const serviceBlocks: Record<"Form" | "MenuLinkBlock" | "Reviews" | "Footer" | "FooterGroup" | "Events" | "ArticleBody" | "FooterMenu" | "SiteHeader" | "SiteFooter" | "AppointmentBooking" | "BookingBox" | "SubmitBuild" | "SubmitBox" | "FooterLogo" | "FooterDivider" | "FooterText" | "FooterEmailSignup" | "FooterSocial" | "FooterPayment" | "Subscribe" | "OpeningHours" | "RateTable" | "MessagingCards" | "FooterMessaging" | "ReviewForm" | "ContactRouting" | "LegalLineBlock" | "ContactCards" | "RatingBlock" | "SubscribeBlogs", import("efficient-easel/blocks").ComponentConfig<any, any, Omit<import("efficient-easel/blocks").ComponentData<any, string, Record<string, import("efficient-easel/blocks").DefaultComponentProps>>, "type">>>;
@@ -1 +1 @@
1
- import{jsx as l,Fragment as Y,jsxs as j}from"react/jsx-runtime";import{assignSectionGroups as L,reseatBucketTabs as O}from"efficient-web-builder/editor/lib/document/field-groups";import{buildBlockCategories as q}from"efficient-web-builder/format/lib/document/section-catalog";import{FONT_ROLES as z,FONT_ROLE_LABELS as V}from"efficient-web-builder/format/lib/fonts";import{CONTAINER_DIRECTION_LABELS as C}from"efficient-web-builder/format/lib/content/container-direction";import{SITE_FOOTER_TYPE as X,SITE_HEADER_TYPE as Q}from"efficient-web-builder/format/lib/document/section-groups";import J from"../../components/MenuLinkRangeField.js";import Z from"../../components/EditorPreviewChat.js";import $ from"../../components/EditorPreviewSurface.js";import{isSystemPageSlug as ee,POPUP_DAYS_RANGE as R,POPUP_DELAY_RANGE as A,POPUP_HIDE_AFTER as te,POPUP_SCROLL_RANGE as v,POPUP_SHOW_ON as oe,POPUP_TRIGGERS as w,SUBSCRIBE_POPUP_DEFAULTS as re,SUBSCRIBE_POPUP_KIND as ie}from"efficient-web-builder/format/lib/content/subscribe";import{shownForOption as b,withRowRules as ae,withShowWhen as y}from"efficient-web-builder/render/lib/document/show-when";import{POPUP_KIND_PROP as le,POPUP_TEXT_KIND_LABELS as D,POPUP_TEXT_KINDS as ne}from"efficient-web-builder/format/lib/popup/text-kinds";import{loadPages as se}from"efficient-web-builder/editor/components/StorefrontLinkField";import{pagePath as ce}from"../../../render/lib/links/link-rules.js";import{getEditorSiteId as me}from"efficient-web-builder/render/lib/editor-site";import{CART_DRAWER_DEFAULTS as ue,CART_DRAWER_KIND as T}from"efficient-web-builder/format/lib/content/cart-drawer";import{POPUP_PAGE_KIND as I}from"efficient-web-builder/format/lib/popup/look";import{popupLookFields as de}from"./popup-look-fields.js";import{CONSENT_BANNER_KIND as N}from"efficient-web-builder/format/lib/content/consent-banner";import{consentBannerLayoutField as pe}from"../../components/ConsentBannerLayoutTiles.js";import{CategoryIcon as ge,CheckIcon as Pe,ClockIcon as B,ColumnsIcon as fe,DirectionIcon as be,EyeIcon as Se,ListIcon as he,PageIcon as ye,PlacementIcon as Te,ScrollPointIcon as Be,TabsIcon as ke,TriggerIcon as Ee}from"efficient-easel/icons";import{deviceField as x}from"efficient-easel/screen/lib/document/device-fields";import{FieldGlyph as Fe}from"efficient-web-builder/editor/components/FieldGlyph";import{DisplayRow as _e,multiSelect as Le,panelNote as Oe,plainText as a,plainTextarea as p,sectionShapeFields as Ce,sectionThemeFields as Re,textList as k,toggle as H}from"efficient-web-builder/editor/lib/document/controls";import{group as c}from"efficient-easel/screen/lib/document/box-fields";import{segmented as g,select as M,slider as E}from"efficient-web-builder/editor/lib/document/box-fields";import{blockAlignRow as Ae}from"./block-align-row.js";import{formPicker as ve}from"./blocks/service/controls.js";import{SECTION_THEME_FOLLOW_LABEL as we}from"efficient-web-builder/editor/components/SectionThemePicker";import{nestedAccentValue as De}from"efficient-web-builder/format/lib/content/section-surface";import{isEditorOnDynamicPage as Ie}from"efficient-web-builder/format/lib/document/editor-page-context";import{TEMPLATE_PRODUCT_TYPE_PROP as Ne}from"efficient-web-builder/format/lib/content/product-page";import{PRODUCT_KIND_OPTIONS as xe}from"../../../render/lib/catalog/plp-item.js";import{PH as F}from"efficient-web-builder/format/lib/document/blocks/placeholders";import{textKindGlyph as He}from"efficient-web-builder/editor/lib/document/blocks/shared-fields";import"../efficient-backend.js";import"../../../render/lib/document/slot-seeds.js";import"../../../render/lib/document/card-templates.js";import"../../../render/lib/document/section-to-box-rows-reviews.js";import"../../../render/lib/document/section-to-box-rows-spec.js";import"../../../render/lib/document/section-to-box-rows-productgrid.js";import"../../../render/lib/document/section-to-box-rows-detail.js";import"./section-text-regions.js";import{generalBlocks as e}from"efficient-web-builder/editor/lib/document/blocks/general/index";import{commerceBlocks as t}from"./blocks/commerce/index.js";import{serviceBlocks as i}from"./blocks/service/index.js";import{EditorThemedBody as Me,suppressPreviewNav as Ge}from"efficient-web-builder/editor/lib/document/page-root";import Ue from"../../components/HeaderSection.js";import{addPageBlocksFromFooter as Ke,PAGE_MENU_DIRECTION_DEFAULT as _}from"../../../render/lib/document/footer-page-blocks.js";import{MENU_STYLE_PLAIN as G,MENU_STYLE_TABS as U}from"../../../render/components/FooterMenu.js";import{drawPopupPage as We,drawPublishedStorefrontRoot as Ye,drawSystemPage as je,StorefrontPageProviders as qe}from"../../../render/lib/document/storefront-root.js";import{GENERAL_ROOT_FIELDS as ze}from"efficient-web-builder/editor/lib/document/page-root-fields";import{finishRegistry as Ve}from"efficient-web-builder/editor/lib/document/registry";const Xe="Newsletter (built in)",Qe=[{id:"currentPage",label:"Current page"}],lo=[{value:"00",label:F.label},{value:"00",label:F.label},{value:"00",label:F.label}],r=re,P={field:"autoOpen",is:!0},Je={all:[b("hideAfter",te,r.hideAfter,["days"]),{not:{all:[{field:"hideAfter",is:null,default:null},{field:"oncePerSession",in:[!0,!1]}]}}]},Ze=[[["trigger","showOn","hideAfter"],P],[["autoOpenDelaySec"],{all:[P,b("trigger",w,r.trigger,["delay","exit"])]}],[["scrollPercent"],{all:[P,b("trigger",w,r.trigger,["scroll"])]}],[["showOnPages"],{all:[P,b("showOn",oe,r.showOn,["chosen"])]}],[["hideDays"],{all:[P,Je]}]],$e=ae({formSlug:ve(void 0,Xe),_gLeft:c("Left panel"),metaLabel:a("Meta label",r.metaLabel),issueLabel:a("Issue label",r.issueLabel),issueNumber:a("Issue number",r.issueNumber),kicker:a("Eyebrow",r.kicker),heading:p("Heading",r.heading),deck:p("Deck",r.deck),stats:{type:"array",label:"Stats",arrayFields:{label:a("Label"),value:a("Value")},getItemSummary:o=>o?.label||o?.value||"Stat"},_gForm:c("Right panel · form"),formLabel:a("Section label",r.formLabel),formHeading:a("Heading",r.formHeading),formIntro:p("Intro",r.formIntro),firstNameLabel:a("First-name label",r.firstNameLabel),firstNamePlaceholder:a("First-name placeholder",r.firstNamePlaceholder),emailLabel:a("Email label",r.emailLabel),emailPlaceholder:a("Email placeholder",r.emailPlaceholder),_gChoices:c("Right panel · choices"),interestsLabel:a("Interests label",r.interestsLabel),interests:k("Interest chips",l(Fe,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:a("Frequency label",r.frequencyLabel),frequencies:k("Frequency options",l(he,{}),"Option label","verbatim"),_gActions:c("Right panel · actions"),submitText:a("Submit button",r.submitText),finePrint:a("Fine print",r.finePrint),dismissText:a("Dismiss link",r.dismissText),emailInvalidText:a("Invalid-email error",r.emailInvalidText),submitErrorText:a("Submit-failed error",r.submitErrorText),_gSuccess:c("Success state"),successHeading:a("Heading",r.successHeading),successBody:p("Message",r.successBody),keepBrowsingText:a("Dismiss button",r.keepBrowsingText),...Re(De,we),...Ce(),_gTextStyle:c("Text style"),...Object.fromEntries(ne.map(o=>[le[o],M(D[o],He(D[o]),[{label:"Popup's own",value:""},...z.map(n=>({label:V[n],value:n}))],"")])),_gBehaviour:c("Behavior"),autoOpen:H("Show by itself",r.autoOpen,l(Se,{})),trigger:g("Trigger",l(Ee,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],r.trigger),autoOpenDelaySec:E("Delay",l(B,{}),A.min,A.max,1,r.autoOpenDelaySec,"s"),scrollPercent:E("Scroll",l(Be,{}),v.min,v.max,5,r.scrollPercent,"%"),showOn:g("Pages",l(ye,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],r.showOn),showOnPages:Le("Chosen pages",[],"None"),hideAfter:g("After close",l(B,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],r.hideAfter),hideDays:E("Days",l(B,{}),R.min,R.max,1,r.hideDays),_gArrangement:c("Arrangement"),formSide:g("Form side",l(Te,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],r.formSide),_gPhone:x("mobile",c("On a phone")),valuePanelOnPhone:x("mobile",H("Left panel",r.valuePanelOnPhone,l(fe,{})))},Ze),K=L($e,"SubscribePopup");async function et(){return(await se(me()??"")).filter(n=>!ee(n.slug)).map(n=>({label:n.label,value:ce(n.slug)}))}async function tt(){return O({...K,showOnPages:{...K.showOnPages,options:await et().catch(()=>[])}})}const u=ue,ot={_gHeader:c("Header"),kickerBadge:a("Eyebrow badge",u.kickerBadge),kickerText:a("Eyebrow text",u.kickerText),titleLead:a("Heading",u.titleLead),titleAccent:a("Heading accent",u.titleAccent),subtitleEmpty:p("Sub-line · empty",u.subtitleEmpty),subtitleOne:p("Sub-line · one set",u.subtitleOne),subtitleMany:p("Sub-line · several sets",u.subtitleMany,"{count} becomes the number of sets"),_gStatus:c("Status rail"),leadTimeValue:a("Lead time",u.leadTimeValue),shipsToFallback:a("Ships to · fallback",u.shipsToFallback,"Shown only while the site serves no countries — otherwise the site's default country is stated"),_gPromises:c("Promise row"),promises:k("Trust markers",l(Pe,{}),"Marker","verbatim"),_gEmpty:c("Empty basket"),emptyKicker:a("Eyebrow",u.emptyKicker),emptyBody:p("Message",u.emptyBody)},W=(o,n,m)=>O({...o,...L(de(n),m)}),rt=W(ot,T,"CartDrawer"),it={layout:pe,_nConsentWhere:Oe("The banner's words follow each visitor's country. Turn consent on or off, and pick the privacy page, in Admin › Storefront › Marketing › Privacy.")};function at({kind:o}){return l("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim)",borderBottom:"1px solid var(--site-line)"},children:o===T?"This is the cart drawer — edit its copy in the Settings panel →":o===N?"This is the cookie banner — pick its layout in the Settings panel →":"This is the site popup — edit it in the Settings panel →"})}const f={root:{fields:{...ze},resolveFields:async(o,{fields:n})=>{if(o?.props?.kind===ie)return tt();if(o?.props?.kind===I)return W(n,I,"PopupPage");if(o?.props?.kind===T)return rt;if(o?.props?.kind===N)return it;const m=n;return Ie()?{[Ne]:M("Product type",l(ge,{}),xe,"alloy-wheel"),...m}:m},render:o=>{const{editor:n,pageBackground:m,theme:s,fonts:d}=o;if(!n?.isEditing)return Ye(o);const S=je(o,l(at,{kind:o.kind}));if(S)return S;const h=We(o,!0);return l(Me,{propsTheme:s,propsFonts:d,pageBackground:typeof m=="string"?m:void 0,suppressPreviewNav:Ge,overlay:j(Y,{children:[l(Z,{}),l($,{})]}),children:h??l(qe,{rootProps:o,children:o.children})})}},categories:q(),components:{Heading:e.Heading,Text:e.Text,Eyebrow:e.Eyebrow,ImageBlock:e.ImageBlock,LogoBlock:e.LogoBlock,ButtonBlock:e.ButtonBlock,Spacer:e.Spacer,Divider:e.Divider,Grid:e.Grid,Flex:e.Flex,Breadcrumb:e.Breadcrumb,Masthead:e.Masthead,CategoryBar:e.CategoryBar,FeaturedCover:e.FeaturedCover,LongRead:e.LongRead,Series:e.Series,Subscribe:i.Subscribe,SubscribeBlogs:i.SubscribeBlogs,Banner:e.Banner,ParagraphsA:e.ParagraphsA,StatsParagraph:e.StatsParagraph,Timeline:e.Timeline,Footprint:e.Footprint,TimelineTrack:e.TimelineTrack,TitleWithButtons:e.TitleWithButtons,Stats:e.Stats,Integrations:e.Integrations,Mockup:e.Mockup,Chart:e.Chart,KeyFeatures:e.KeyFeatures,Testimonials:e.Testimonials,Reviews:i.Reviews,RatingBlock:i.RatingBlock,Prose:e.Prose,Cards:e.Cards,Logos:e.Logos,Ticker:e.Ticker,ContactRouting:i.ContactRouting,ContactLocations:e.ContactLocations,HeroSingle:e.HeroSingle,Hero:e.Hero,HeroSlide:e.HeroSlide,HeroGroup:e.HeroGroup,Collections:t.Collections,CollectionCard:t.CollectionCard,Events:i.Events,RateTable:i.RateTable,MessagingCards:i.MessagingCards,ContactCards:i.ContactCards,OpeningHours:i.OpeningHours,PostCard:e.PostCard,DocMetaCards:e.DocMetaCards,DocTabs:e.DocTabs,DocMasthead:e.DocMasthead,DocBody:e.DocBody,Contents:e.Contents,ListSearch:e.ListSearch,FAQ:e.FAQ,Gallery:t.Gallery,GalleryB:t.GalleryB,SpecStrip:e.SpecStrip,GalleryItem:t.GalleryItem,Manifesto:e.Manifesto,SectionHeader:e.SectionHeader,IntroBleed:e.IntroBleed,Split:e.Split,SubmitBuild:i.SubmitBuild,SubmitBox:i.SubmitBox,ReviewForm:i.ReviewForm,Form:i.Form,AppointmentBooking:i.AppointmentBooking,BookingBox:i.BookingBox,CatalogFilterBar:t.CatalogFilterBar,AlloyWheelsListing:t.AlloyWheelsListing,ProductGrid:t.ProductGrid,ProductHero:t.ProductHero,ProductGallery:t.ProductGallery,SpecTable:t.SpecTable,ProcessSteps:e.ProcessSteps,DetailRows:t.DetailRows,FitmentTable:t.FitmentTable,RelatedProducts:t.RelatedProducts,BundleOffer:t.BundleOffer,CompatibleTyres:t.CompatibleTyres,TyreSizes:t.TyreSizes,TyreFitment:t.TyreFitment,EuTyreLabel:t.EuTyreLabel,EuTyreLabelBlock:t.EuTyreLabelBlock,ProductSize:t.ProductSize,ProductColour:t.ProductColour,ProductPrice:t.ProductPrice,ProductBuyButton:t.ProductBuyButton,FilterBlock:t.FilterBlock,FilterChipsBlock:t.FilterChipsBlock,ProductPicture:t.ProductPicture,ProductSpecs:t.ProductSpecs,ProductBuy:t.ProductBuy,ProductEyebrow:t.ProductEyebrow,ProductName:t.ProductName,FitmentFinder:t.FitmentFinder,FitmentPicker:t.FitmentPicker,StockFitment:t.StockFitment,OrderSummary:e.OrderSummary,DeliveryOptions:t.DeliveryOptions,PaymentBadges:e.PaymentBadges,CheckoutCTA:t.CheckoutCTA,ProductRef:t.ProductRef,CustomHTML:e.CustomHTML,CardList:e.CardList,Header:t.Header,Footer:i.Footer,FooterLogo:i.FooterLogo,FooterMenu:i.FooterMenu,ArticleBody:i.ArticleBody,MenuLinkBlock:i.MenuLinkBlock,FooterDivider:i.FooterDivider,FooterGroup:i.FooterGroup,FooterText:i.FooterText,FooterEmailSignup:i.FooterEmailSignup,FooterSocial:i.FooterSocial,FooterMessaging:i.FooterMessaging,FooterPayment:i.FooterPayment,LegalLineBlock:i.LegalLineBlock,SearchBlock:t.SearchBlock,CartBlock:t.CartBlock,CountrySwitchBlock:t.CountrySwitchBlock,AccountBlock:t.AccountBlock,ThemeSwitchBlock:t.ThemeSwitchBlock,[Q]:i.SiteHeader,[X]:i.SiteFooter}};Ke(f.components);{const o=f.components.MenuBlock;o.fields={...o.fields,direction:g("Direction",l(be,{}),[{label:C.column,value:"column"},{label:C.row,value:"row"}],_)};const n={type:"custom",render:({value:s,onChange:d})=>l(J,{value:s,onChange:d})},m=y({type:"custom",render:({value:s,onChange:d})=>l(_e,{parts:Qe,changed:s===!0,shown:()=>s===!0,onPress:(S,h)=>d(h),onReset:()=>d(void 0)})},{not:{field:"direction",is:"column",default:_}});o.fields=Object.fromEntries(Object.entries(o.fields).flatMap(([s,d])=>s==="menu"?[[s,d],["linkRange",n],["currentPage",m]]:[[s,d]])),o.fields={...o.fields,linkAlign:Ae({label:"Link alignment"}),menuStyle:y(g("Menu style",l(ke,{}),[{label:"Plain",value:G},{label:"Tabs",value:U}],G),{not:{field:"direction",is:"column",default:_}})};for(const s of["linkRange","linkAlign"])o.fields[s]=y(o.fields[s],{not:{field:"menuStyle",is:U}})}{const o=f.components.Header,n=o.render;o.render=m=>m.editor?.isEditing?l(Ue,{editing:!0}):n(m)}const lt=Ve(f),no=lt.sectionGroupAllow;var so=f;export{no as SECTION_GROUP_ALLOW,f as config,so as default,$e as subscribePopupFields};
1
+ import{jsx as l,Fragment as j,jsxs as q}from"react/jsx-runtime";import{assignSectionGroups as L,reseatBucketTabs as O}from"efficient-web-builder/editor/lib/document/field-groups";import{buildBlockCategories as z}from"efficient-web-builder/format/lib/document/section-catalog";import{FONT_ROLES as V,FONT_ROLE_LABELS as X}from"efficient-web-builder/format/lib/fonts";import{CONTAINER_DIRECTION_LABELS as C}from"efficient-web-builder/format/lib/content/container-direction";import{SITE_FOOTER_TYPE as Q,SITE_HEADER_TYPE as J}from"efficient-web-builder/format/lib/document/section-groups";import Z from"../../components/MenuLinkRangeField.js";import $ from"../../components/EditorPreviewChat.js";import ee from"../../components/EditorPreviewSurface.js";import{isSystemPageSlug as te,POPUP_DAYS_RANGE as R,POPUP_DELAY_RANGE as v,POPUP_HIDE_AFTER as oe,POPUP_SCROLL_RANGE as A,POPUP_SHOW_ON as re,POPUP_TRIGGERS as w,SUBSCRIBE_POPUP_DEFAULTS as ie,SUBSCRIBE_POPUP_KIND as ae}from"efficient-web-builder/format/lib/content/subscribe";import{shownForOption as h,withRowRules as le,withShowWhen as y}from"efficient-web-builder/render/lib/document/show-when";import{POPUP_KIND_PROP as ne,POPUP_TEXT_KIND_LABELS as D,POPUP_TEXT_KINDS as se}from"efficient-web-builder/format/lib/popup/text-kinds";import{loadPages as ce}from"efficient-web-builder/editor/components/StorefrontLinkField";import{pagePath as me}from"../../../render/lib/links/link-rules.js";import{getEditorSiteId as ue}from"efficient-web-builder/render/lib/editor-site";import{CART_DRAWER_DEFAULTS as de,CART_DRAWER_KIND as T}from"efficient-web-builder/format/lib/content/cart-drawer";import{POPUP_PAGE_KIND as I}from"efficient-web-builder/format/lib/popup/look";import{popupLookFields as pe}from"./popup-look-fields.js";import{CONSENT_BANNER_KIND as N}from"efficient-web-builder/format/lib/content/consent-banner";import{consentBannerLayoutField as ge}from"../../components/ConsentBannerLayoutTiles.js";import{CategoryIcon as Pe,CheckIcon as fe,ClockIcon as B,ColumnsIcon as be,DirectionIcon as Se,EyeIcon as he,ListIcon as ye,PageIcon as Te,PlacementIcon as Be,ScrollPointIcon as ke,TabsIcon as Fe,TriggerIcon as Ee}from"efficient-easel/icons";import{deviceField as x}from"efficient-easel/screen/lib/document/device-fields";import{FieldGlyph as _e}from"efficient-web-builder/editor/components/FieldGlyph";import{DisplayRow as Le,multiSelect as Oe,panelNote as Ce,plainText as a,plainTextarea as p,sectionShapeFields as Re,sectionThemeFields as ve,textList as k,toggle as H}from"efficient-web-builder/editor/lib/document/controls";import{group as m}from"efficient-easel/screen/lib/document/box-fields";import{segmented as g,select as M,slider as F}from"efficient-web-builder/editor/lib/document/box-fields";import{blockAlignRow as Ae}from"./block-align-row.js";import{formPicker as we}from"./blocks/service/controls.js";import{SECTION_THEME_FOLLOW_LABEL as De}from"efficient-web-builder/editor/components/SectionThemePicker";import{nestedAccentValue as Ie}from"efficient-web-builder/format/lib/content/section-surface";import{isEditorOnDynamicPage as Ne}from"efficient-web-builder/format/lib/document/editor-page-context";import{TEMPLATE_PRODUCT_TYPE_PROP as xe}from"efficient-web-builder/format/lib/content/product-page";import{PRODUCT_KIND_OPTIONS as He}from"../../../render/lib/catalog/plp-item.js";import{PH as E}from"efficient-web-builder/format/lib/document/blocks/placeholders";import{textKindGlyph as Me}from"efficient-web-builder/editor/lib/document/blocks/shared-fields";import{NO_BLOCK_SOURCE as Ge,blockSourceField as Ue,blockSourceFields as Ke}from"efficient-web-builder/editor/lib/document/block-source-fields";import{menuTemplateFollowsContent as We}from"../../../render/lib/content/menu-card-seed.js";import"../efficient-backend.js";import"../../../render/lib/document/slot-seeds.js";import"../../../render/lib/document/card-templates.js";import"../../../render/lib/document/section-to-box-rows-reviews.js";import"../../../render/lib/document/section-to-box-rows-spec.js";import"../../../render/lib/document/section-to-box-rows-productgrid.js";import"../../../render/lib/document/section-to-box-rows-detail.js";import"./section-text-regions.js";import{generalBlocks as e}from"efficient-web-builder/editor/lib/document/blocks/general/index";import{commerceBlocks as t}from"./blocks/commerce/index.js";import{serviceBlocks as i}from"./blocks/service/index.js";import{EditorThemedBody as Ye,suppressPreviewNav as je}from"efficient-web-builder/editor/lib/document/page-root";import qe from"../../components/HeaderSection.js";import{addPageBlocksFromFooter as ze,PAGE_MENU_DIRECTION_DEFAULT as _}from"../../../render/lib/document/footer-page-blocks.js";import{MENU_STYLE_PLAIN as G,MENU_STYLE_TABS as U}from"../../../render/components/FooterMenu.js";import{drawPopupPage as Ve,drawPublishedStorefrontRoot as Xe,drawSystemPage as Qe,StorefrontPageProviders as Je}from"../../../render/lib/document/storefront-root.js";import{GENERAL_ROOT_FIELDS as Ze}from"efficient-web-builder/editor/lib/document/page-root-fields";import{finishRegistry as $e}from"efficient-web-builder/editor/lib/document/registry";const et="Newsletter (built in)",tt=[{id:"currentPage",label:"Current page"}],Po=[{value:"00",label:E.label},{value:"00",label:E.label},{value:"00",label:E.label}],r=ie,P={field:"autoOpen",is:!0},ot={all:[h("hideAfter",oe,r.hideAfter,["days"]),{not:{all:[{field:"hideAfter",is:null,default:null},{field:"oncePerSession",in:[!0,!1]}]}}]},rt=[[["trigger","showOn","hideAfter"],P],[["autoOpenDelaySec"],{all:[P,h("trigger",w,r.trigger,["delay","exit"])]}],[["scrollPercent"],{all:[P,h("trigger",w,r.trigger,["scroll"])]}],[["showOnPages"],{all:[P,h("showOn",re,r.showOn,["chosen"])]}],[["hideDays"],{all:[P,ot]}]],it=le({formSlug:we(void 0,et),_gLeft:m("Left panel"),metaLabel:a("Meta label",r.metaLabel),issueLabel:a("Issue label",r.issueLabel),issueNumber:a("Issue number",r.issueNumber),kicker:a("Eyebrow",r.kicker),heading:p("Heading",r.heading),deck:p("Deck",r.deck),stats:{type:"array",label:"Stats",arrayFields:{label:a("Label"),value:a("Value")},getItemSummary:o=>o?.label||o?.value||"Stat"},_gForm:m("Right panel · form"),formLabel:a("Section label",r.formLabel),formHeading:a("Heading",r.formHeading),formIntro:p("Intro",r.formIntro),firstNameLabel:a("First-name label",r.firstNameLabel),firstNamePlaceholder:a("First-name placeholder",r.firstNamePlaceholder),emailLabel:a("Email label",r.emailLabel),emailPlaceholder:a("Email placeholder",r.emailPlaceholder),_gChoices:m("Right panel · choices"),interestsLabel:a("Interests label",r.interestsLabel),interests:k("Interest chips",l(_e,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:a("Frequency label",r.frequencyLabel),frequencies:k("Frequency options",l(ye,{}),"Option label","verbatim"),_gActions:m("Right panel · actions"),submitText:a("Submit button",r.submitText),finePrint:a("Fine print",r.finePrint),dismissText:a("Dismiss link",r.dismissText),emailInvalidText:a("Invalid-email error",r.emailInvalidText),submitErrorText:a("Submit-failed error",r.submitErrorText),_gSuccess:m("Success state"),successHeading:a("Heading",r.successHeading),successBody:p("Message",r.successBody),keepBrowsingText:a("Dismiss button",r.keepBrowsingText),...ve(Ie,De),...Re(),_gTextStyle:m("Text style"),...Object.fromEntries(se.map(o=>[ne[o],M(D[o],Me(D[o]),[{label:"Popup's own",value:""},...V.map(n=>({label:X[n],value:n}))],"")])),_gBehaviour:m("Behavior"),autoOpen:H("Show by itself",r.autoOpen,l(he,{})),trigger:g("Trigger",l(Ee,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],r.trigger),autoOpenDelaySec:F("Delay",l(B,{}),v.min,v.max,1,r.autoOpenDelaySec,"s"),scrollPercent:F("Scroll",l(ke,{}),A.min,A.max,5,r.scrollPercent,"%"),showOn:g("Pages",l(Te,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],r.showOn),showOnPages:Oe("Chosen pages",[],"None"),hideAfter:g("After close",l(B,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],r.hideAfter),hideDays:F("Days",l(B,{}),R.min,R.max,1,r.hideDays),_gArrangement:m("Arrangement"),formSide:g("Form side",l(Be,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],r.formSide),_gPhone:x("mobile",m("On a phone")),valuePanelOnPhone:x("mobile",H("Left panel",r.valuePanelOnPhone,l(be,{})))},rt),K=L(it,"SubscribePopup");async function at(){return(await ce(ue()??"")).filter(n=>!te(n.slug)).map(n=>({label:n.label,value:me(n.slug)}))}async function lt(){return O({...K,showOnPages:{...K.showOnPages,options:await at().catch(()=>[])}})}const d=de,nt={_gHeader:m("Header"),kickerBadge:a("Eyebrow badge",d.kickerBadge),kickerText:a("Eyebrow text",d.kickerText),titleLead:a("Heading",d.titleLead),titleAccent:a("Heading accent",d.titleAccent),subtitleEmpty:p("Sub-line · empty",d.subtitleEmpty),subtitleOne:p("Sub-line · one set",d.subtitleOne),subtitleMany:p("Sub-line · several sets",d.subtitleMany,"{count} becomes the number of sets"),_gStatus:m("Status rail"),leadTimeValue:a("Lead time",d.leadTimeValue),shipsToFallback:a("Ships to · fallback",d.shipsToFallback,"Shown only while the site serves no countries — otherwise the site's default country is stated"),_gPromises:m("Promise row"),promises:k("Trust markers",l(fe,{}),"Marker","verbatim"),_gEmpty:m("Empty basket"),emptyKicker:a("Eyebrow",d.emptyKicker),emptyBody:p("Message",d.emptyBody)},W=(o,n,u)=>O({...o,...L(pe(n),u)}),st=W(nt,T,"CartDrawer"),ct={layout:ge,_nConsentWhere:Ce("The banner's words follow each visitor's country. Turn consent on or off, and pick the privacy page, in Admin › Storefront › Marketing › Privacy.")};function mt({kind:o}){return l("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim)",borderBottom:"1px solid var(--site-line)"},children:o===T?"This is the cart drawer — edit its copy in the Settings panel →":o===N?"This is the cookie banner — pick its layout in the Settings panel →":"This is the site popup — edit it in the Settings panel →"})}const f={root:{fields:{...Ze},resolveFields:async(o,{fields:n})=>{if(o?.props?.kind===ae)return lt();if(o?.props?.kind===I)return W(n,I,"PopupPage");if(o?.props?.kind===T)return st;if(o?.props?.kind===N)return ct;const u=n;return Ne()?{[xe]:M("Product type",l(Pe,{}),He,"alloy-wheel"),...u}:u},render:o=>{const{editor:n,pageBackground:u,theme:b,fonts:S}=o;if(!n?.isEditing)return Xe(o);const s=Qe(o,l(mt,{kind:o.kind}));if(s)return s;const c=Ve(o,!0);return l(Ye,{propsTheme:b,propsFonts:S,pageBackground:typeof u=="string"?u:void 0,suppressPreviewNav:je,overlay:q(j,{children:[l($,{}),l(ee,{})]}),children:c??l(Je,{rootProps:o,children:o.children})})}},categories:z(),components:{Heading:e.Heading,Text:e.Text,Eyebrow:e.Eyebrow,ImageBlock:e.ImageBlock,LogoBlock:e.LogoBlock,ButtonBlock:e.ButtonBlock,Spacer:e.Spacer,Divider:e.Divider,Grid:e.Grid,Flex:e.Flex,Breadcrumb:e.Breadcrumb,Masthead:e.Masthead,CategoryBar:e.CategoryBar,FeaturedCover:e.FeaturedCover,LongRead:e.LongRead,Series:e.Series,Subscribe:i.Subscribe,SubscribeBlogs:i.SubscribeBlogs,Banner:e.Banner,ParagraphsA:e.ParagraphsA,StatsParagraph:e.StatsParagraph,Timeline:e.Timeline,Footprint:e.Footprint,TimelineTrack:e.TimelineTrack,TitleWithButtons:e.TitleWithButtons,Stats:e.Stats,Integrations:e.Integrations,Mockup:e.Mockup,Chart:e.Chart,KeyFeatures:e.KeyFeatures,Testimonials:e.Testimonials,Reviews:i.Reviews,RatingBlock:i.RatingBlock,Prose:e.Prose,Cards:e.Cards,Logos:e.Logos,Ticker:e.Ticker,ContactRouting:i.ContactRouting,ContactLocations:e.ContactLocations,HeroSingle:e.HeroSingle,Hero:e.Hero,HeroSlide:e.HeroSlide,HeroGroup:e.HeroGroup,Collections:t.Collections,CollectionCard:t.CollectionCard,Events:i.Events,RateTable:i.RateTable,MessagingCards:i.MessagingCards,ContactCards:i.ContactCards,OpeningHours:i.OpeningHours,PostCard:e.PostCard,DocMetaCards:e.DocMetaCards,DocTabs:e.DocTabs,DocMasthead:e.DocMasthead,DocBody:e.DocBody,Contents:e.Contents,ListSearch:e.ListSearch,FAQ:e.FAQ,Gallery:t.Gallery,GalleryB:t.GalleryB,SpecStrip:e.SpecStrip,GalleryItem:t.GalleryItem,Manifesto:e.Manifesto,SectionHeader:e.SectionHeader,IntroBleed:e.IntroBleed,Split:e.Split,SubmitBuild:i.SubmitBuild,SubmitBox:i.SubmitBox,ReviewForm:i.ReviewForm,Form:i.Form,AppointmentBooking:i.AppointmentBooking,BookingBox:i.BookingBox,CatalogFilterBar:t.CatalogFilterBar,AlloyWheelsListing:t.AlloyWheelsListing,ProductGrid:t.ProductGrid,ProductHero:t.ProductHero,ProductGallery:t.ProductGallery,SpecTable:t.SpecTable,ProcessSteps:e.ProcessSteps,DetailRows:t.DetailRows,FitmentTable:t.FitmentTable,RelatedProducts:t.RelatedProducts,BundleOffer:t.BundleOffer,CompatibleTyres:t.CompatibleTyres,TyreSizes:t.TyreSizes,TyreFitment:t.TyreFitment,EuTyreLabel:t.EuTyreLabel,EuTyreLabelBlock:t.EuTyreLabelBlock,ProductSize:t.ProductSize,ProductColour:t.ProductColour,ProductPrice:t.ProductPrice,ProductBuyButton:t.ProductBuyButton,FilterBlock:t.FilterBlock,FilterChipsBlock:t.FilterChipsBlock,ProductPicture:t.ProductPicture,ProductSpecs:t.ProductSpecs,ProductBuy:t.ProductBuy,ProductEyebrow:t.ProductEyebrow,ProductName:t.ProductName,FitmentFinder:t.FitmentFinder,FitmentPicker:t.FitmentPicker,StockFitment:t.StockFitment,OrderSummary:e.OrderSummary,DeliveryOptions:t.DeliveryOptions,PaymentBadges:e.PaymentBadges,CheckoutCTA:t.CheckoutCTA,ProductRef:t.ProductRef,CustomHTML:e.CustomHTML,CardList:e.CardList,Header:t.Header,Footer:i.Footer,FooterLogo:i.FooterLogo,FooterMenu:i.FooterMenu,ArticleBody:i.ArticleBody,MenuLinkBlock:i.MenuLinkBlock,FooterDivider:i.FooterDivider,FooterGroup:i.FooterGroup,FooterText:i.FooterText,FooterEmailSignup:i.FooterEmailSignup,FooterSocial:i.FooterSocial,FooterMessaging:i.FooterMessaging,FooterPayment:i.FooterPayment,LegalLineBlock:i.LegalLineBlock,SearchBlock:t.SearchBlock,CartBlock:t.CartBlock,CountrySwitchBlock:t.CountrySwitchBlock,AccountBlock:t.AccountBlock,ThemeSwitchBlock:t.ThemeSwitchBlock,[J]:i.SiteHeader,[Q]:i.SiteFooter}};ze(f.components);{const o=f.components.MenuBlock;o.fields={...o.fields,direction:g("Direction",l(Se,{}),[{label:C.column,value:"column"},{label:C.row,value:"row"}],_)};const n={type:"custom",render:({value:s,onChange:c})=>l(Z,{value:s,onChange:c})},u=y({type:"custom",render:({value:s,onChange:c})=>l(Le,{parts:tt,changed:s===!0,shown:()=>s===!0,onPress:(dt,Y)=>c(Y),onReset:()=>c(void 0)})},{not:{field:"direction",is:"column",default:_}});o.fields=Object.fromEntries(Object.entries(o.fields).flatMap(([s,c])=>s==="menu"?[["dataSource",Ue("Menu content","Manual")],[s,c],["linkRange",n],["currentPage",u]]:[[s,c]]));const b=o;b.resolveFields=(s,{fields:c})=>Ke("MenuBlock",c,s.props,{hides:["menu"]}),b.resolveData=s=>{const c=We(s.props);return c===s.props?s:{...s,props:c}},o.fields={...o.fields,linkAlign:Ae({label:"Link alignment"}),menuStyle:y(g("Menu style",l(Fe,{}),[{label:"Plain",value:G},{label:"Tabs",value:U}],G),{not:{field:"direction",is:"column",default:_}})};const S={not:{field:"menuStyle",is:U}};o.fields.linkRange=y(o.fields.linkRange,{all:[S,Ge]}),o.fields.linkAlign=y(o.fields.linkAlign,S)}{const o=f.components.Header,n=o.render;o.render=u=>u.editor?.isEditing?l(qe,{editing:!0}):n(u)}const ut=$e(f),fo=ut.sectionGroupAllow;var bo=f;export{fo as SECTION_GROUP_ALLOW,f as config,bo as default,it as subscribePopupFields};
@@ -1 +1 @@
1
- import{registerBlockSources as p}from"efficient-web-builder/format/lib/content/block-sources";import{cardTemplateFields as u,hasCardTemplate as h}from"efficient-web-builder/format/lib/content/card-template";import{say as e}from"efficient-web-builder/format/lib/editor-words";import{OPENING_SAMPLE_WEEK as f}from"../../render/lib/sections/opening-hours.js";import{PRODUCT_REVIEWS_SOURCE as y}from"../../render/lib/sections/reviews.js";const k=[{key:"group-offices",label:"Group offices",blocks:["Footprint"]},{key:y,label:"Product reviews",blocks:["Reviews"]}];p(k);const c="+00 000 0000",S={rooms:()=>[{key:"sample-1",title:e("First room"),excerpt:e("What this room has.")},{key:"sample-2",title:e("Second room"),excerpt:e("What this room has.")},{key:"sample-3",title:e("Third room"),excerpt:e("What this room has.")}],"location-contact":()=>[{key:"location",name:e("Location name"),address:e("Street address"),state:e("State"),country:e("Country"),phone:c,hours:e("Opening hours")}],"location-cards":()=>[{key:"where",name:e("Address"),note:e("Street address")},{key:"hours",name:e("Opening hours"),note:e("A line about it appears here.")},{key:"call",name:e("Phone"),note:c}],"location-footer":()=>[{text:e("Street address")},{text:c},{text:e("Opening hours")}],"location-rate-table":()=>{const t=o=>JSON.stringify([{column:e("Standard"),amount:"$000",standard:!1},{column:e("VIP"),amount:"$000",standard:o}]);return[{group:e("In-house"),label:e("Session · 60 min"),cells:t(!1)},{group:e("In-house"),label:e("Session · 60 min · Night"),cells:t(!0)},{group:e("Away"),label:e("Session · 60 min"),cells:t(!1)}]},"location-opening":()=>[{week:f,zone:"Australia/Sydney",hours:""}],"site-messaging":()=>[{app:"wechat",name:"WeChat",handle:"yourvenue",href:"",qr:"https://u.wechat.com/yourvenue"},{app:"telegram",name:"Telegram",handle:"@yourvenue",href:"https://t.me/yourvenue",qr:"https://t.me/yourvenue"},{app:"whatsapp",name:"WhatsApp",handle:"0400 000 000",href:"https://wa.me/61400000000",qr:"https://wa.me/61400000000"},{app:"line",name:"LINE",handle:"yourvenue",href:"https://line.me/ti/p/~yourvenue",qr:"https://line.me/ti/p/~yourvenue"}],"location-payment-methods":()=>[{label:e("Cash"),kind:"cash"},{label:e("Card"),kind:"card"}],"shop-payment-methods":()=>[{label:"Visa / Mastercard / American Express",kind:"card"},{label:"PayPal",kind:""},{label:e("Bank transfer"),kind:"wire"}]},m=new Set(["Cards"]),b={name:()=>e("Name"),note:()=>e("Note"),price:()=>e("Price"),time:()=>e("Time")},g=t=>t.replace(/_([a-z0-9])/g,(o,a)=>a.toUpperCase());function E(t){const o=Array.isArray(t.blocks)?t.blocks:[];if(!o.some(n=>m.has(n))||o.some(n=>!m.has(n)&&h(n))||!Array.isArray(t.fields))return;const a=o.filter(n=>m.has(n)).flatMap(n=>u(n)),r=[];for(const n of t.fields){if(typeof n!="string"||!n.trim())continue;const s=g(n.trim());if(s==="key"||r.some(l=>l.key===s))continue;const i=a.find(l=>l.key===s),d=i?.kind==="image"||i?.kind==="link"?i.kind:void 0;r.push({key:s,label:i?.label??b[s]?.()??s,...d?{kind:d}:{}})}return r.length?r:void 0}function P(t){if(Array.isArray(t))for(const o of t){const a=typeof o?.key=="string"?S[o.key]?.():void 0;try{const r=E(o);p([{key:o.key,label:o.label,blocks:o.blocks,...a?{sample:a}:{},...r?{fields:r}:{}}])}catch{}}}export{k as EFFICIENT_BLOCK_SOURCES,P as registerServedBlockSources};
1
+ import{registerBlockSources as u}from"efficient-web-builder/format/lib/content/block-sources";import{cardTemplateFields as h,hasCardTemplate as f}from"efficient-web-builder/format/lib/content/card-template";import{say as e}from"efficient-web-builder/format/lib/editor-words";import{OPENING_SAMPLE_WEEK as y}from"../../render/lib/sections/opening-hours.js";import{PRODUCT_REVIEWS_SOURCE as k}from"../../render/lib/sections/reviews.js";import{MENU_BLOG_CATEGORIES_SOURCE as S,MENU_COUNT_FIELD as i}from"../../render/lib/content/menu-card-seed.js";const E=[{key:"group-offices",label:"Group offices",blocks:["Footprint"]},{key:k,label:"Product reviews",blocks:["Reviews"]}];u(E);const m="+00 000 0000",b={rooms:()=>[{key:"sample-1",title:e("First room"),excerpt:e("What this room has.")},{key:"sample-2",title:e("Second room"),excerpt:e("What this room has.")},{key:"sample-3",title:e("Third room"),excerpt:e("What this room has.")}],"location-contact":()=>[{key:"location",name:e("Location name"),address:e("Street address"),state:e("State"),country:e("Country"),phone:m,hours:e("Opening hours")}],"location-cards":()=>[{key:"where",name:e("Address"),note:e("Street address")},{key:"hours",name:e("Opening hours"),note:e("A line about it appears here.")},{key:"call",name:e("Phone"),note:m}],"location-footer":()=>[{text:e("Street address")},{text:m},{text:e("Opening hours")}],"location-rate-table":()=>{const t=o=>JSON.stringify([{column:e("Standard"),amount:"$000",standard:!1},{column:e("VIP"),amount:"$000",standard:o}]);return[{group:e("In-house"),label:e("Session · 60 min"),cells:t(!1)},{group:e("In-house"),label:e("Session · 60 min · Night"),cells:t(!0)},{group:e("Away"),label:e("Session · 60 min"),cells:t(!1)}]},"location-opening":()=>[{week:y,zone:"Australia/Sydney",hours:""}],"site-messaging":()=>[{app:"wechat",name:"WeChat",handle:"yourvenue",href:"",qr:"https://u.wechat.com/yourvenue"},{app:"telegram",name:"Telegram",handle:"@yourvenue",href:"https://t.me/yourvenue",qr:"https://t.me/yourvenue"},{app:"whatsapp",name:"WhatsApp",handle:"0400 000 000",href:"https://wa.me/61400000000",qr:"https://wa.me/61400000000"},{app:"line",name:"LINE",handle:"yourvenue",href:"https://line.me/ti/p/~yourvenue",qr:"https://line.me/ti/p/~yourvenue"}],[S]:()=>[{label:e("First category"),href:"/journal",[i]:"12"},{label:e("Second category"),href:"/journal",[i]:"8"},{label:e("Third category"),href:"/journal",[i]:"3"}],"location-payment-methods":()=>[{label:e("Cash"),kind:"cash"},{label:e("Card"),kind:"card"}],"shop-payment-methods":()=>[{label:"Visa / Mastercard / American Express",kind:"card"},{label:"PayPal",kind:""},{label:e("Bank transfer"),kind:"wire"}]},d=new Set(["Cards","MenuBlock"]),g={[i]:()=>e("Count"),name:()=>e("Name"),note:()=>e("Note"),price:()=>e("Price"),time:()=>e("Time")},_=t=>t.replace(/_([a-z0-9])/g,(o,a)=>a.toUpperCase());function C(t){const o=Array.isArray(t.blocks)?t.blocks:[];if(!o.some(r=>d.has(r))||o.some(r=>!d.has(r)&&f(r))||!Array.isArray(t.fields))return;const a=o.filter(r=>d.has(r)).flatMap(r=>h(r)),n=[];for(const r of t.fields){if(typeof r!="string"||!r.trim())continue;const s=_(r.trim());if(s==="key"||n.some(c=>c.key===s))continue;const l=a.find(c=>c.key===s),p=l?.kind==="image"||l?.kind==="link"?l.kind:void 0;n.push({key:s,label:l?.label??g[s]?.()??s,...p?{kind:p}:{}})}return n.length?n:void 0}function v(t){if(Array.isArray(t))for(const o of t){const a=typeof o?.key=="string"?b[o.key]?.():void 0;try{const n=C(o);u([{key:o.key,label:o.label,blocks:o.blocks,...a?{sample:a}:{},...n?{fields:n}:{}}])}catch{}}}export{E as EFFICIENT_BLOCK_SOURCES,v as registerServedBlockSources};
@@ -1 +1 @@
1
- const l={galleryItemFillFromProduct:"Fill from a product"};export{l as KEPT_EDITOR_PHRASES};
1
+ const t={galleryItemFillFromProduct:"Fill from a product",tabbedGalleryProductHint:"Gallery A comes from the product’s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others — edit those in the product’s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card’s title is the product name and its tag the category. Headings, intro copy and stats stay yours."};export{t as KEPT_EDITOR_PHRASES};
@@ -226,6 +226,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
226
226
  readonly "Find your *match.*": "Find your *match.*";
227
227
  readonly Finish: "Finish";
228
228
  readonly "First card": "First card";
229
+ readonly "First category": "First category";
229
230
  readonly "First detail": "First detail";
230
231
  readonly "First image on the left": "First image on the left";
231
232
  readonly "First name": "First name";
@@ -258,6 +259,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
258
259
  readonly Gallery: "Gallery";
259
260
  readonly "Gallery A": "Gallery A";
260
261
  readonly "Gallery A comes from the product\u2019s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others \u2014 edit those in the product\u2019s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card\u2019s title is the product name and its tag the category. Headings, intro copy and stats stay yours.": "Gallery A comes from the product’s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others — edit those in the product’s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card’s title is the product name and its tag the category. Headings, intro copy and stats stay yours.";
262
+ readonly "Gallery A comes from the product\u2019s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others \u2014 edit those in the product\u2019s Media tab and refresh. Each media group is a card: the car set on the group is the eyebrow (a card keeps its caption when the group has no car), its finish the meta line; the card\u2019s title is the product name and its tag the category. Headings, intro copy and stats stay yours.": "Gallery A comes from the product’s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others — edit those in the product’s Media tab and refresh. Each media group is a card: the car set on the group is the eyebrow (a card keeps its caption when the group has no car), its finish the meta line; the card’s title is the product name and its tag the category. Headings, intro copy and stats stay yours.";
261
263
  readonly "Gallery B": "Gallery B";
262
264
  readonly "Gallery Item": "Gallery Item";
263
265
  readonly "Gallery link": "Gallery link";
@@ -365,6 +367,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
365
367
  readonly Max: "Max";
366
368
  readonly "Media group": "Media group";
367
369
  readonly "Menu Item": "Menu Item";
370
+ readonly "Menu content": "Menu content";
368
371
  readonly "Menu link": "Menu link";
369
372
  readonly "Menu row": "Menu row";
370
373
  readonly "Menu style": "Menu style";
@@ -423,6 +426,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
423
426
  readonly "None \u2014 this section will be empty": "None — this section will be empty";
424
427
  readonly "Not authorized yet \u2014 reopen once the editor has loaded.": "Not authorized yet — reopen once the editor has loaded.";
425
428
  readonly "Not your size": "Not your size";
429
+ readonly "Nothing to show yet: this menu's entries come from its Menu content.": "Nothing to show yet: this menu's entries come from its Menu content.";
426
430
  readonly "Number or ID": "Number or ID";
427
431
  readonly "OEM front": "OEM front";
428
432
  readonly "OEM front tyres": "OEM front tyres";
@@ -542,6 +546,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
542
546
  readonly "Search forms\u2026": "Search forms…";
543
547
  readonly "Search your catalog\u2026": "Search your catalog…";
544
548
  readonly "Second card": "Second card";
549
+ readonly "Second category": "Second category";
545
550
  readonly "Second detail": "Second detail";
546
551
  readonly "Second place": "Second place";
547
552
  readonly "Second rate": "Second rate";
@@ -664,6 +669,7 @@ export declare const STOREFRONT_BLOCKS_WORDS: {
664
669
  readonly "The week": "The week";
665
670
  readonly "The whole hero comes from the product record \u2014 title, price, pictures, options and Add to Cart. Edit the product in the Products database and this hero updates to match.": "The whole hero comes from the product record — title, price, pictures, options and Add to Cart. Edit the product in the Products database and this hero updates to match.";
666
671
  readonly "Third card": "Third card";
672
+ readonly "Third category": "Third category";
667
673
  readonly "Third detail": "Third detail";
668
674
  readonly "Third room": "Third room";
669
675
  readonly "This column isn't linked to a menu, so the preview shows placeholder links. Pick a menu above.": "This column isn't linked to a menu, so the preview shows placeholder links. Pick a menu above.";