1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,86108,e=>{"use strict";var i=e.i(43476),s=e.i(71645),t=e.i(56420);let o=(0,t.default)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);var a=e.i(6537);let r=(0,t.default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]),n=(0,t.default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);var d=e.i(63676),l=e.i(43687),c=e.i(532),m=e.i(52921),h=e.i(75679),u=e.i(18668),p=e.i(94883),v=e.i(13092);let x=[{id:"canape3",name:"Canapé 3 places",room:"salon",vol:3,weight:45,dims:"200 à 90 à 85 cm"},{id:"canape2",name:"Canapé 2 places",room:"salon",vol:2,weight:32,dims:"160 à 85 à 85 cm"},{id:"fauteuil",name:"Fauteuil",room:"salon",vol:1,weight:20,dims:"85 à 85 à 90 cm"},{id:"tablebasse",name:"Table basse",room:"salon",vol:.3,weight:15,dims:"110 à 60 à 45 cm"},{id:"meubletv",name:"Meuble TV",room:"salon",vol:.4,weight:30,dims:"150 à 45 à 50 cm"},{id:"tv",name:"Téléviseur",room:"salon",vol:.08,weight:15,dims:"120 à 10 à 70 cm"},{id:"biblio",name:"Bibliothèque",room:"salon",vol:.8,weight:45,dims:"90 à 35 à 200 cm"},{id:"frigo",name:"Réfrigérateur",room:"cuisine",vol:.8,weight:70,dims:"70 à 70 à 180 cm"},{id:"lavevaisselle",name:"Lave-vaisselle",room:"cuisine",vol:.4,weight:45,dims:"60 à 60 à 85 cm"},{id:"four",name:"Four / Micro-ondes",room:"cuisine",vol:.2,weight:28,dims:"55 à 45 à 40 cm"},{id:"tablecuisine",name:"Table de cuisine",room:"cuisine",vol:.8,weight:30,dims:"120 à 80 à 75 cm"},{id:"chaise",name:"Chaise",room:"cuisine",vol:.2,weight:6,dims:"45 à 45 à 90 cm"},{id:"litdouble",name:"Lit double",room:"chambre",vol:1.5,weight:50,dims:"160 à 200 à 40 cm"},{id:"matelas",name:"Matelas",room:"chambre",vol:.6,weight:25,dims:"160 à 200 à 25 cm"},{id:"armoire",name:"Armoire",room:"chambre",vol:2,weight:60,dims:"150 à 60 à 220 cm"},{id:"commode",name:"Commode",room:"chambre",vol:.5,weight:35,dims:"100 à 50 à 90 cm"},{id:"chevet",name:"Table de chevet",room:"chambre",vol:.15,weight:10,dims:"45 à 40 à 50 cm"},{id:"machine",name:"Machine à laver",room:"sdb",vol:.4,weight:65,dims:"60 à 60 à 85 cm"},{id:"vasque",name:"Meuble vasque",room:"sdb",vol:.35,weight:30,dims:"80 à 50 à 60 cm"},{id:"carton",name:"Carton standard",room:"cave",vol:.1,weight:15,dims:"55 à 35 à 30 cm"},{id:"velo",name:"Vélo",room:"cave",vol:.75,weight:15,dims:"170 à 60 à 100 cm"},{id:"etabli",name:"Ãtabli",room:"cave",vol:1.5,weight:40,dims:"150 à 60 à 90 cm"},{id:"salonjardin",name:"Salon de jardin",room:"exterieur",vol:3,weight:40,dims:"â"},{id:"barbecue",name:"Barbecue",room:"exterieur",vol:.5,weight:35,dims:"120 à 60 à 110 cm"},{id:"bureau",name:"Bureau",room:"cave",vol:.8,weight:35,dims:"140 à 70 à 75 cm"},{id:"fauteuilbureau",name:"Fauteuil de bureau",room:"cave",vol:.5,weight:12,dims:"60 à 60 à 110 cm"},{id:"canape_convertible_3p",name:"Canapé convertible 3 places",room:"salon",vol:3.5,weight:85,dims:"220 à 90 à 90 cm"},{id:"canape_angle",name:"Canapé d'angle",room:"salon",vol:4,weight:110,dims:"280 à 180 à 85 cm"},{id:"meridienne",name:"Méridienne",room:"salon",vol:1.5,weight:35,dims:"170 à 80 à 80 cm"},{id:"table_salon_ovale",name:"Table de salon ovale",room:"salon",vol:.3,weight:18,dims:"120 à 70 à 45 cm"},{id:"console_entree",name:"Console d'entrée",room:"salon",vol:.4,weight:20,dims:"120 à 35 à 80 cm"},{id:"meuble_tv_suspendu",name:"Meuble TV suspendu",room:"salon",vol:.25,weight:30,dims:"180 à 30 à 40 cm"},{id:"cave_a_vin",name:"Bar / Cave à vin",room:"salon",vol:.3,weight:40,dims:"60 à 45 à 85 cm"},{id:"tapis_salon",name:"Tapis de salon (grand)",room:"salon",vol:.15,weight:8,dims:"250 à 170 à 1 cm"}
1,{id:"lampadaire",name:"Lampadaire",room:"salon",vol:.1,weight:5,dims:"30 à 30 à 180 cm"},{id:"tableau_grand",name:"Tableau grand format",room:"salon",vol:.15,weight:8,dims:"150 à 5 à 100 cm"},{id:"pendule_murale",name:"Pendule / Horloge murale",room:"salon",vol:.05,weight:5,dims:"50 à 10 à 50 cm"},{id:"vitrine_collection",name:"Vitrine de collection",room:"salon",vol:.7,weight:45,dims:"80 à 35 à 180 cm"},{id:"buffet_bas_2p",name:"Buffet bas 2 portes",room:"salon",vol:.6,weight:40,dims:"120 à 45 à 75 cm"},{id:"buffet_bas_3p",name:"Buffet bas 3 portes",room:"salon",vol:.8,weight:55,dims:"160 à 45 à 75 cm"},{id:"buffet_bas_4p",name:"Buffet bas 4 portes",room:"salon",vol:1,weight:70,dims:"200 à 45 à 75 cm"},{id:"buffet_haut_2p",name:"Buffet haut vitrine 2 portes",room:"salon",vol:1,weight:60,dims:"100 à 40 à 190 cm"},{id:"buffet_haut_4p",name:"Buffet haut vitrine 4 portes",room:"salon",vol:1.5,weight:90,dims:"160 à 40 à 190 cm"},{id:"enfilade_vintage",name:"Enfilade vintage",room:"salon",vol:.8,weight:65,dims:"200 à 45 à 75 cm"},{id:"piano_droit",name:"Piano droit",room:"salon",vol:2,weight:220,dims:"155 à 65 à 120 cm"},{id:"piano_numerique",name:"Piano numérique",room:"salon",vol:.8,weight:35,dims:"140 à 40 à 85 cm"},{id:"frigo_americain",name:"Réfrigérateur américain",room:"cuisine",vol:1.5,weight:100,dims:"90 à 75 à 180 cm"},{id:"frigo_combine",name:"Réfrigérateur combiné",room:"cuisine",vol:.9,weight:65,dims:"60 à 65 à 185 cm"},{id:"congelateur_coffre",name:"Congélateur coffre",room:"cuisine",vol:.9,weight:55,dims:"120 à 75 à 85 cm"},{id:"congelateur_armoire",name:"Congélateur armoire",room:"cuisine",vol:.7,weight:50,dims:"60 à 65 à 145 cm"},{id:"lave_linge",name:"Lave-linge",room:"cuisine",vol:.4,weight:70,dims:"60 à 55 à 85 cm"},{id:"seche_linge",name:"Sèche-linge",room:"cuisine",vol:.4,weight:35,dims:"60 à 55 à 85 cm"},{id:"lave_linge_sechant",name:"Lave-linge séchant",room:"cuisine",vol:.4,weight:80,dims:"60 à 60 à 85 cm"},{id:"tabouret_bar",name:"Tabouret de bar",room:"cuisine",vol:.15,weight:5,dims:"40 à 40 à 75 cm"},{id:"ilot_cuisine",name:"Ãlot de cuisine",room:"cuisine",vol:1.2,weight:50,dims:"150 à 80 à 90 cm"},{id:"meuble_cuisine_bas",name:"Meuble cuisine bas",room:"cuisine",vol:.4,weight:20,dims:"80 à 55 à 85 cm"},{id:"meuble_cuisine_haut",name:"Meuble cuisine haut",room:"cuisine",vol:.25,weight:15,dims:"80 à 35 à 70 cm"},{id:"colonne_cuisine",name:"Colonne de cuisine",room:"cuisine",vol:.7,weight:30,dims:"60 à 55 à 200 cm"},{id:"robot_cuisine",name:"Robot de cuisine",room:"cuisine",vol:.05,weight:6,dims:"40 à 25 à 40 cm"},{id:"cafetiere_expresso",name:"Cafetière expresso",room:"cuisine",vol:.04,weight:5,dims:"35 à 25 à 35 cm"},{id:"table_4p",name:"Table à manger 4 personnes",room:"salleamanger",vol:.8,weight:30,dims:"120 à 80 à 75 cm"},{id:"table_6p",name:"Table à manger 6 personnes",room:"salleamanger",vol:1.2,weight:45,dims:"180 à 90 à 75 cm"},{id:"table_8p",name:"Table à manger 8 personnes",room:"salleamanger",vol:1.8,weight:65,dims:"240 à 100 à 75 cm"},{id:"chaise_accoudoirs",name:"Chaise avec accoudoirs",room:"salleamanger",vol:.25,weight:7,dims:"55 à 55 à 90 cm"},{id:"banc_table",name:"Banc de table",room:"salleamanger",vol:.3,weight:15,dims:"160 à 40 à 45 cm"},{id:"lit_simple",name:"Lit simple",room:"chambre",vol:1,weight:30,dims:"200 à 90 à 50 cm"},{id:"lit_queen",name:"Lit queen size",room:"chambre",vol:1.8,weight:50,dims:"200 à 160 à 50 cm"},{id:"lit_king",name:"Lit king size",room:"chambre",vol:2,weight:60,dims:"200 à 180 à 50 cm"},{id:"lit_superpose",name:"Lit superposé",room:"chambre",vol:2.5,weight:50,dims:"200 à 90 à 160 cm"},{id:"lit_bebe",name:"Lit bébé à barreaux",room:"chambre",vol:.8,weight:20,dims:"140 à 70 à 90 cm"},{id:"sommier_simple",name:"Sommier lit simple",room:"chambre",vol:.3,weight:12,dims:"200 à 90 à 15 cm"},{id:"sommier_double",name:"Sommier lit double",room:"chambre",vol:.45,weight:18,dims:"200 à 140 à 15 cm"},{id:"tete_lit_simple",name:"Tête de lit simple",room:"chambre",vol:.1,weight:8,dims:"100 à 10 à 90 cm"},{id:"tete_lit_double",name:"Tête de lit double",room:"chambre",vol:.15,weight:12,dims:"160 à 10 à 90 cm"},{id:"armoire_2p",name:"Armoire 2 portes",room:"chambre",vol:1.5,weight:65,dims:"100 à 55 à 200 cm"},{id:"armoire_3p",name:"Armoire 3 portes",room:"chambre",vol:2,weight:90,dims:"150 à 55 à 200 cm"},{id:"armoire_4p",name:"Armoire 4 portes",room:"chambre",vol:2.5,weight:120,dims:"200 à 55 à 200 cm"},{id:"dressing",name:"Dressing",room:"chambre",vol:3,weight:70,dims:"200 à 55 à 220 cm"},{id:"garde_robe",name:"Garde-robe penderie",room:"chambre",vol:1.8,weight:40,dims:"120 à 60 à 200 cm"},{id:"coiffeuse",name:"Coiffeuse",room:"chambre",vol:.4,weight:25,dims:"100 à 45 à 75 cm"},{id:"commode_3t",name:"Commode 3 tiroirs",room:"chambre",vol:.4,weight:25,dims:"90 à 45 à 80 cm"},{id:"commode_5t",name:"Commode 5 tiroirs",room:"chambre",vol:.6,weight:35,dims:"90 à 45 à 120 cm"},{id:"bureau_enfant",name:"Bureau enfant",room:"chambre",vol:.6,weight:25,dims:"120 à 60 à 75 cm"},{id:"bureau_adulte",name:"Bureau adulte",room:"chambre",vol:1,weight:45,dims:"160 à 80 à 75 cm"},{id:"chaise_bureau",name:"Chaise de bureau",room:"chambre",vol:.5,weight:12,dims:"60 à 60 à 110 cm"},{id:"baignoire",name:"Baignoire",room:"sdb",vol:1,weight:60,dims:"170 à 75 à 60 cm"},{id:"baignoire_ilot",name:"Baignoire îlot",room:"sdb",vol:1.2,weight:80,dims:"180 à 90 à 60 cm"},{id:"receveur_douche",name:"Receveur de douche",room:"sdb",vol:.1,weight:20,dims:"90 à 90 à 10 cm"},{id:"colonne_sdb",name:"Colonne salle de bain",room:"sdb",vol:.25,weight:25,dims:"35 à 35 à 180 cm"},{id:"miroir_sdb",name:"Miroir salle de bain",room:"sdb",vol:.05,weight:4,dims:"80 à 5 à 60 cm"},{id:"porte_serviettes",name:"Porte-serviettes",room:"sdb",vol:.08,weight:3,dims:"60 à 15 à 80 cm"},{id:"wc_suspendu",name:"WC suspendu",room:"sdb",vol:.1,weight:20,dims:"55 à 35 à 40 cm"},{id:"radiateur_seche",name:"Radiateur sèche-serviette",room:"sdb",vol:.08,weight:8,dims:"50 à 10 à 120 cm"},{id:"etabli_travail",name:"Ãtabli de travail",room:"cave",vol:1.2,weight:30,dims:"150 à 70 à 85 cm"},{id:"servante_outils",name:"Servante à outils",room:"cave",vol:.4,weight:35,dims:"60 à 45 à 100 cm"},{id:"compresseur",name:"Compresseur d'air",room:"cave",vol:.2,weight:20,dims:"60 à 35 à 55 cm"},{id:"karcher",name:"Karcher haute pression",room:"cave",vol:.15,weight:15,dims:"40 à 30 à 80 cm"},{id:"escabeau_3",name:"Escabeau 3 marches",room:"cave",vol:.3,weight:5,dims:"55 à 55 à 110 cm"},{id:"escabeau_6",name:"Escabeau 6 marches",room:"cave",vol:.5,weight:8,dims:"60 à 60 à 180 cm"},{id:"echelle_pliante",name:"Ãchelle pliante 4 m",room:"cave",vol:.25,weight:10,dims:"210 à 50 à 20 cm"},{id:"velo_adulte",name:"Vélo adulte",room:"cave",vol:.75,weight:12,dims:"180 à 60 à 110 cm"},{id:"velo_enfant",name:"Vélo enfant",room:"cave",vol:.5,weight:7,dims:"120 à 40 à 80 cm"},{id:"velo_cargo",name:"Vélo cargo",room:"cave",vol:1.5,weight:30,dims:"220 à 90 à 120 cm"},{id:"trottinette_elec",name:"Trottinette électrique",room:"cave",vol:.5,weight:15,dims:"120 à 45 à 120 cm"},{id:"tondeuse_robot",name:"Tondeuse robot",room:"cave",vol:.1,weight:5,dims:"60 à 50 à 30 cm"},{id:"coffre_fort",name:"Coffre-fort",room:"cave",vol:.15,weight:50,dims:"50 à 40 à 40 cm"},{id:"pneus_lot4",name:"Pneus voiture (lot de 4)",room:"cave",vol:.3,weight:30,dims:"60 à 20 à 60 cm"},{id:"groupe_electrogene",name:"Groupe électrogène",room:"cave",vol:.25,weight:30,dims:"70 à 45 à 50 cm"},{id:"table_ping_pong",name:"Table de ping-pong pliée",room:"cave",vol:1.5,weight:55,dims:"75 à 155 à 150 cm"},{id:"baby_foot",name:"Baby-foot",room:"cave",vol:1,weight:35,dims:"140 à 75 à 90 cm"},{id:"billard",name:"Billard",room:"cave",vol:3,weight:250,dims:"240 à 130 à 80 cm"},{id:"kayak",name:"Kayak",room:"cave",vol:1.2,weight:18,dims:"400 à 60 à 35 cm"}
1,{id:"salon_jardin_4p",name:"Salon de jardin 4 places",room:"exterieur",vol:3,weight:35,dims:"180 à 180 à 80 cm"},{id:"salon_jardin_6p",name:"Salon de jardin 6 places",room:"exterieur",vol:4,weight:50,dims:"220 à 180 à 80 cm"},{id:"chaise_jardin",name:"Chaise de jardin",room:"exterieur",vol:.25,weight:5,dims:"55 à 55 à 85 cm"},{id:"chaise_longue",name:"Chaise longue",room:"exterieur",vol:.5,weight:8,dims:"200 à 70 à 35 cm"},{id:"parasol_jardin",name:"Parasol jardin",room:"exterieur",vol:.25,weight:6,dims:"30 à 30 à 250 cm"},{id:"barbecue_charbon",name:"Barbecue à charbon",room:"exterieur",vol:.5,weight:12,dims:"80 à 55 à 100 cm"},{id:"barbecue_gaz",name:"Barbecue à gaz",room:"exterieur",vol:1,weight:30,dims:"130 à 60 à 120 cm"},{id:"plancha",name:"Plancha",room:"exterieur",vol:.15,weight:12,dims:"80 à 50 à 20 cm"},{id:"trampoline",name:"Trampoline jardin (plié)",room:"exterieur",vol:.8,weight:25,dims:"200 à 50 à 50 cm"},{id:"toboggan",name:"Toboggan jardin",room:"exterieur",vol:2,weight:18,dims:"200 à 80 à 150 cm"},{id:"balancoire",name:"Balançoire démontée",room:"exterieur",vol:.8,weight:25,dims:"200 à 120 à 30 cm"},{id:"tondeuse_gazon",name:"Tondeuse à gazon",room:"exterieur",vol:1.25,weight:22,dims:"170 à 55 à 110 cm"},{id:"jardiniere",name:"Jardinière grande",room:"exterieur",vol:.2,weight:15,dims:"100 à 40 à 40 cm"},{id:"niche_jardin",name:"Niche de jardin",room:"exterieur",vol:.6,weight:15,dims:"90 à 80 à 70 cm"},{id:"table_camping",name:"Table de camping",room:"exterieur",vol:.4,weight:6,dims:"100 à 60 à 70 cm"},{id:"chaise_camping",name:"Chaise pliante camping",room:"exterieur",vol:.2,weight:2,dims:"50 à 50 à 80 cm"}],g=Object.fromEntries(x.map(e=>[e.id,e])),b=["canape3","armoire","litdouble","matelas","frigo","machine","carton","tablecuisine","commode","biblio"],j=[{key:"chambre",menuLabel:"Chambre supplémentaire",base:"chambre",labelize:e=>`Chambre ${e}`},{key:"sdb",menuLabel:"Salle de bain supplémentaire",base:"sdb",labelize:e=>`SdB ${e}`},{key:"bureau",menuLabel:"Bureau",base:"chambre",labelize:e=>1===e?"Bureau":`Bureau ${e}`},{key:"debarras",menuLabel:"Débarras / Cave",base:"cave",labelize:e=>1===e?"Débarras":`D\xe9barras ${e}`},{key:"buanderie",menuLabel:"Buanderie",base:"cuisine",labelize:e=>1===e?"Buanderie":`Buanderie ${e}`},{key:"perso",menuLabel:"Pièce personnalisée",base:"custom",labelize:()=>""}],f=["Rez-de-chaussée","Ãtage avec ascenseur","Ãtage sans ascenseur","Monte-meuble","Hayon nécessaire","Accès camion difficile"],y={"Rez-de-chaussée":0,"Ãtage avec ascenseur":45,"Ãtage sans ascenseur":120,"Monte-meuble":250,"Hayon nécessaire":90,"Accès camion difficile":110},k={"Transport seul":0,"Manutention chargement":190,"Emballage inclus":360,"Aide chauffeur livraison":150},w=["Date fixe","± 1 semaine","± 1 mois","Flexible"],N=["Piano","Moto","Véhicule","Åuvre d'art","Cave à vin","Batterie lithium","Congélateur plein"],C={step:1,rooms:[{id:"salon",base:"salon",label:"Salon",removable:!1},{id:"cuisine",base:"cuisine",label:"Cuisine",removable:!1},{id:"salleamanger",base:"salleamanger",label:"Salle à manger",removable:!1},{id:"chambre",base:"chambre",label:"Chambre",removable:!1},{id:"sdb",base:"sdb",label:"Salle de bain",removable:!1},{id:"cave",base:"cave",label:"Cave / Garage",removable:!1},{id:"exterieur",base:"exterieur",label:"Extérieur",removable:!1}],activeRoomId:null,search:"",from:{addr:"",zip:"",city:"",country:"",countryCode:"",etage:"",code:"",selected:!1},to:{addr:"",zip:"",city:"",country:"",countryCode:"",etage:"",code:"",selected:!1},distance:0,inventory:{},accessDepart:"Ãtage sans ascenseur",accessArrivee:"Ãtage sans ascenseur",service:"Manutention chargement",dateOption:"± 1 mois",specials:{},showFromExtra:!1,showToExtra:!1,contact:{name:"",email:"",phone:"",comment:"",mutationPro:!1},submitting:!1,submitted:!1,submitError:null};function z(e,i){switch(i.t){case"patch":return{...e,...i.p};case"step":return{...e,step:i.v};case"next":return{...e,step:Math.min(4,e.step+1)};case"prev":return{...e,step:Math.max(1,e.step-1)};case"qty":{let s={...e.inventory[i.roomId]||{}},t=Math.max(0,(s[i.id]||0)+i.d);0===t?delete s[i.id]:s[i.id]=t;let o={...e.inventory};return 0===Object.keys(s).length?delete o[i.roomId]:o[i.roomId]=s,{...e,inventory:o}}case"addRoom":return{...e,rooms:[...e.rooms,i.room],activeRoomId:i.room.id};case"removeRoom":{let s={...e.inventory};return delete s[i.roomId],{...e,rooms:e.rooms.filter(e=>e.id!==i.roomId),inventory:s,activeRoomId:e.activeRoomId===i.roomId?null:e.activeRoomId}}case"swap":return{...e,from:e.to,to:e.from};case"patchFrom":return{...e,from:{...e.from,...i.p}};case"patchTo":return{...e,to:{...e.to,...i.p}};case"toggleSpec":return{...e,specials:{...e.specials,[i.k]:!e.specials[i.k]}};case"patchContact":return{...e,contact:{...e.contact,...i.p}}}}let _=e=>
1Math.round(e).toLocaleString("fr-FR"),M=e=>(Math.round(10*e)/10).toLocaleString("fr-FR",{maximumFractionDigits:1})+" m³",B=e=>e.toLocaleString("fr-FR",{minimumFractionDigits:2,maximumFractionDigits:2})+" m³",L=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??24,height:e.size??24,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,i.jsx)("path",{d:"M3 12h18"}),(0,i.jsx)("path",{d:"M12 3a15 15 0 0 1 0 18a15 15 0 0 1 0-18"})]}),S=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??24,height:e.size??24,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z"}),(0,i.jsx)("circle",{cx:"12",cy:"10",r:"3"})]}),T=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??18,height:e.size??18,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"m17 4 4 4-4 4"}),(0,i.jsx)("path",{d:"M21 8H7"}),(0,i.jsx)("path",{d:"m7 20-4-4 4-4"}),(0,i.jsx)("path",{d:"M3 16h14"})]}),R=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??14,height:e.size??14,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,i.jsx)("path",{d:"m6 9 6 6 6-6"})}),E=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??23,height:e.size??23,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M21 8 12 3 3 8v8l9 5 9-5Z"}),(0,i.jsx)("path",{d:"m3 8 9 5 9-5"}),(0,i.jsx)("path",{d:"M12 13v8"})]}),D=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??24,height:e.size??24,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M3 10.5 12 3l9 7.5"}),(0,i.jsx)("path",{d:"M5 9.5V20h14V9.5"}),(0,i.jsx)("path",{d:"M10 20v-5h4v5"})]}),F=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??23,height:e.size??23,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M3 6h11v9H3Z"}),(0,i.jsx)("path",{d:"M14 9h4l3 3v3h-7Z"}),(0,i.jsx)("circle",{cx:"7",cy:"18",r:"1.7"}),(0,i.jsx)("circle",{cx:"17",cy:"18",r:"1.7"})]}),W=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??18,height:e.size??18,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M5 3v18"}),(0,i.jsx)("path",{d:"M5 4h11l-2 3 2 3H5"})]}),A=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??24,height:e.size??24,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:(0,i.jsx)("path",{d:"M4 9v6M7 7v10M17 7v10M20 9v6M7 12h10"})}),I=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??23,height:e.size??23,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("circle",{cx:"12",cy:"8",r:"3.4"}),(0,i.jsx)("path",{d:"M4.5 20c0-3.8 3.4-6.5 7.5-6.5s7.5 2.7 7.5 6.5"})]}),$=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??19,height:e.size??19,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("rect",{x:"4",y:"5",width:"16",height:"16",rx:"2"}),(0,i.jsx)("path",{d:"M8 3v4M16 3v4M4 10h16"})]}),q=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??19,height:e.size??19,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M12 4 2 20h20L12 4Z"}),(0,i.jsx)("path",{d:"M12 10v5M12 18h.01"})]}),V=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??20,height:e.size??20,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M12 3 5 6v5c0 4 3 7 7 9 4-2 7-5 7-9V6Z"}),(0,i.jsx)("path",{d:"m9 11 2 2 4-4"})]}),P=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??19,height:e.size??19,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("circle",{cx:"11",cy:"11",r:"7"}),(0,i.jsx)("path",{d:"m21 21-4-4"})]}),O=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??11,height:e.size??11,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M14 5l5 5"}),(0,i.jsx)("path",{d:"M4 20l1-4L16 5l3 3L8 19Z"})]}),H=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??22,height:e.size??22,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:(0,i.jsx)("path",{d:"M4 12h3l2 5 4-12 2 7h5"})}),Z=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??17,height:e.size??17,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,i.jsx)("path",{d:"m5 12 4 4 10-10"})}),U=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??18,height:e.size??18,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M5 12h14"}),(0,i.jsx)("path",{d:"m13 6 6 6-6 6"})]}),G=(e={})=>(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:e.size??16,height:e.size??16,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M19 12H5"}),(0,i.jsx)("path",{d:"m11 18-6-6 6-6"})]}),K=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??15,height:e.size??15,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2.2",strokeLinecap:"round",children:(0,i.jsx)("path",{d:"M5 12h14"})}),Q=(e={})=>(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:e.size??15,height:e.size??15,fill:"none",stroke:e.stroke??"currentColor",strokeWidth:"2.2",strokeLinecap:"round",children:(0,i.jsx)("path",{d:"M12 5v14M5 12h14"})}),J={salon:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M4 11V8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3"}),(0,i.jsx)("path",{d:"M3 12a2 2 0 0 1 2 2v4h14v-4a2 2 0 0 1 2-2"}),(0,i.jsx)("path",{d:"M6 18v2M18 18v2"})]}),cuisine:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M5 3v6a2 2 0 0 0 2 2 2 2 0 0 0 2-2V3M7 3v8M7 11v10"}),(0,i.jsx)("path",{d:"M17 3c-1.7 0-3 2.7-3 6s1.3 4 3 4v8"})]}),salleamanger:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("ellipse",{cx:"12",cy:"7",rx:"5",ry:"1.6"}),(0,i.jsx)("path",{d:"M3 12h18"}),(0,i.jsx)("path",{d:"M5 12v8"}),(0,i.jsx)("path",{d:"M19 12v8"})]}),chambre:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M3 18v-7h18v7"}),(0,i.jsx)("path",{d:"M3 18v3M21 18v3"}),(0,i.jsx)("path",{d:"M5 11V8a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v3"})]}),sdb:(0,i.jsx)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:(0,i.jsx)("path",{d:"M12 3s6 6 6 10a6 6 0 0 1-12 0c0-4 6-10 6-10Z"})}),cave:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M21 8 12 3 3 8v8l9 5 9-5Z"}),(0,i.jsx)("path",{d:"m3 8 9 5 9-5"}),(0,i.jsx)("path",{d:"M12 13v8"})]}),exterieur:(0,i.jsxs)("svg",{viewBox:"0 0 24 24",width:"23",height:"23",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("path",{d:"M12 3 6 12h3l-3 5h12l-3-5h3L12 3Z"}),(0,i.jsx)("path",{d:"M12 17v4"})]})};function X({icon:e,label:s,value:t,sub:o,onEdit:a,last:r}){return(0,i.jsxs)("div",{className:"dm-sum-row",style:{borderBottom:r?"none":void 0},children:[(0,i.jsxs)("div",{className:"dm-sum-row-l",children:[(0,i.jsx)("span",{className:"dm-sum-row-icon",children:e}),(0,i.jsx)("span",{className:"dm-sum-row-label",children:s})]}),(0,i.jsxs)("div",{className:"dm-sum-row-r",children:[(0,i.jsx)("div",{className:"dm-sum-row-value",children:t}),o&&(0,i.jsx)("div",{className:"dm-sum-row-sub",children:o}),a&&(0,i.jsxs)("button",{type:"button",className:"dm-edit-btn",onClick:a,children:["Modifier ",(0,i.jsx)(O,{})]})]})]})}function Y({state:e,dispatch:s,routeError:t}){return(0,i.jsxs)("div",{className:"dm-card",children:[(0,i.jsxs)("div",{className:"dm-card-head",children:[(0,i.jsx)("span",{className:"dm-card-icon",children:(0,i.jsx)(S,{size:23})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:"dm-card-title",children:"Où déménagez-vous ?"}),(0,i.jsx)("p",{className:"dm-card-sub",children:"Indiquez vos adresses de départ et de livraison."})]})]}),(0,i.jsx)("div",{className:"dm-addr-row",children:(0,i.jsxs)("div",{className:"dm-addr-block",children:[(0,i.jsxs)("div",{className:"dm-addr-card",children:[(0,i.jsxs)("div",{className:"dm-addr-head",children:[(0,i.jsx)("span",{className:"dm-addr-h",children:"Ville de départ"}),e.from.country&&(0,i.jsx)("span",{className:"dm-addr-flag dm-addr-flag-v",children:e.from.country.toUpperCase()})]}),(0,i.jsxs)("div",{className:"dm-addr-input-wrap",children:[(0,i.jsx)("span",{className:"dm-addr-pin",style:{color:"#714B67"},children:(0,i.jsx)(S,{size:18})}),(0,i.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,i.jsx)(l.PlacesAutocomplete,{value:e.from.addr,onChange:e=>s({t:"patchFrom",p:{addr:e,lat:void 0,lon:void 0,countryCode:"",selected:!1}}),onSelect:e=>{s({t:"patchFrom",p:{addr:e.formattedAddress,zip:`${e.city}, ${e.country}`,city:e.city,country:e.country,countryCode:e.countryCode,lat:e.lat,lon:e.lng,selected:!0}})},bias:{south:41.3,west:-5.2,north:51.1,east:9.6},invalid:e.from.addr.trim().length>=2&&!e.from.selected,placeholder:"Ville ou adresse de départ",emptyLabel:"Aucun résultat"}),e.from.addr.trim().length>=2&&!e.from.selected&&(0,i.jsx)("small",{style:{display:"block",fontSize:"12px",color:"#c95757",marginTop:"4px",lineHeight:1.4},children:"Veuillez sélectionner une adresse dans la liste"}),e.from.city&&(0,i.jsxs)("div",{className:"dm-addr-zip",children:[e.from.city,", ",e.from.country]})]})]}),(0,i.jsxs)("button",{type:"button",className:"dm-addr-toggle",onClick:()=>s({t:"patch",p:{showFromExtra:!e.showFromExtra}}),children:["+ Informations complémentaires ",(0,i.jsx)(R,{})]}),e.showFromExtra&&(0,i.jsxs)("div",{className:"dm-addr-extra",children:[(0,i.jsx)("input",{className:"dm-addr-mini",value:e.from.etage,onChange:e=>s({t:"patchFrom",p:{etage:e.target.value}}),placeholder:"Ãtage"}),(0,i.jsx)("input",{className:"dm-addr-mini",value:e.from.code,onChange:e=>s({t:"patchFrom",p:{code:e.target.value}}),placeholder:"Digicode"})]})]}),(0,i.jsx)("button",{type:"button",className:"dm-swap",onClick:()=>s({t:"swap"}),title:"Inverser",children:(0,i.jsx)(T,{})}),(0,i.jsxs)("div",{className:"dm-addr-card",children:[(0,i.jsxs)("div",{className:"dm-addr-head",children:[(0,i.jsx)("span",{className:"dm-addr-h",children:"Ville d'arrivée"}),e.to.country&&(0,i.jsx)("span",{className:"dm-addr-flag dm-addr-flag-g",children:e.to.country.toUpperCase()})]}),(0,i.jsxs)("div",{className:"dm-addr-input-wrap",children:[(0,i.jsx)("span",{className:"dm-addr-pin",style:{color:"#C99A4E"},children:(0,i.jsx)(S,{size:18})}),(0,i.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,i.jsx)(l.PlacesAutocomplete,{value:e.to.addr,onChange:e=>s({t:"patchTo",p:{addr:e,lat:void 0,lon:void 0,countryCode:"",selected:!1}}),onSelect:e=>{s({t:"patchTo",p:{addr:e.formattedAddress,zip:`${e.city}, ${e.country}`,city:e.city,country:e.country,countryCode:e.countryCode,lat:e.lat,lon:e.lng,selected:!0}})},invalid:e.to.addr.trim().length>=2&&!e.to.selected,placeholder:"Ville ou adresse de destination",emptyLabel:"Aucun résultat"}),e.to.addr.trim().length>=2&&!e.to.selected&&(0,i.jsx)("small",{style:{display:"block",fontSize:"12px",color:"#c95757",marginTop:"4px",lineHeight:1.4},children:"Veuillez sélectionner une adresse dans la liste"}),e.to.city&&(0,i.jsxs)("div",{className:"dm-addr-zip",children:[e.to.city,", ",e.to.country]})]})]}),(0,i.jsxs)("button",{type:"button",className:"dm-addr-toggle",onClick:()=>s({t:"patch",p:{showToExtra:!e.showToExtra}}),children:["+ Informations complémentaires ",(0,i.jsx)(R,{})]}),e.showToExtra&&(0,i.jsxs)("div",{className:"dm-addr-extra",children:[(0,i.jsx)("input",{className:"dm-addr-mini",value:e.to.etage,onChange:e=>s({t:"patchTo",p:{etage:e.target.value}}),placeholder:"Ãtage"}
1),(0,i.jsx)("input",{className:"dm-addr-mini",value:e.to.code,onChange:e=>s({t:"patchTo",p:{code:e.target.value}}),placeholder:"Digicode"})]})]})]})}),e.from.city&&e.to.city&&(0,i.jsxs)("div",{className:"dm-route-bar",children:[(0,i.jsxs)("div",{className:"dm-route-item",children:[(0,i.jsx)("span",{style:{color:"#714B67"},children:(0,i.jsx)(L,{})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-route-label",children:"Trajet estimé"}),(0,i.jsxs)("div",{className:"dm-route-val",children:[e.from.city," (",e.from.country,") â ",e.to.city," (",e.to.country,")"]})]})]}),(0,i.jsxs)("div",{className:"dm-route-item",children:[(0,i.jsx)("span",{style:{color:"#714B67"},children:(0,i.jsx)(H,{})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-route-label",children:"Distance"}),(0,i.jsx)("div",{className:"dm-route-val",children:t?"Sur devis":e.distance>0?`${_(e.distance)} km`:"â"})]})]})]})]})}function ee({state:e,dispatch:t,volume:o,weight:a,flatInv:l,objList:c,roomCount:m,resolveTargetRoom:h,itemLookup:u,customObjects:p,setCustomObjects:v}){let x=(0,s.useCallback)((e,i)=>{t({t:"qty",roomId:h(e),id:e,d:i})},[t,h]),[g,b]=(0,s.useState)(!1),[f,y]=(0,s.useState)(""),[k,w]=(0,s.useState)(null),N=(0,s.useCallback)((i,s)=>{let o,a=e.rooms.filter(e=>"chambre"===i.key?"chambre"===e.base:"sdb"===i.key?"sdb"===e.base:"bureau"===i.key?e.label.startsWith("Bureau"):"debarras"===i.key?e.label.startsWith("Débarras"):"buanderie"===i.key&&e.label.startsWith("Buanderie")).length;if("perso"===i.key){let e=(s??"").trim();if(!e)return void w("Nom de la pièce obligatoire.");o=e}else o="chambre"===i.key?`Chambre ${a+1}`:"sdb"===i.key?`SdB ${a+1}`:i.labelize(a+1);t({t:"addRoom",room:{id:`${i.key}_${Date.now()}_${Math.random().toString(36).slice(2,6)}`,base:i.base,label:o,removable:!0}}),b(!1),y(""),w(null)},[t,e.rooms]),[C,z]=(0,s.useState)(!1),[L,S]=(0,s.useState)(""),[T,R]=(0,s.use
1State)(""),[D,F]=(0,s.useState)(""),[W,A]=(0,s.useState)(""),[I,$]=(0,s.useState)(""),[q,V]=(0,s.useState)(null),O=(0,s.useMemo)(()=>{let e=parseFloat(T),i=parseFloat(D),s=parseFloat(W);return!Number.isFinite(e)||e<=0||!Number.isFinite(i)||i<=0||!Number.isFinite(s)||s<=0?null:Math.round(e*i*s/1e4)/100},[T,D,W]),H=(0,s.useCallback)(()=>{S(""),R(""),F(""),A(""),$(""),V(null)},[]),Z=(0,s.useCallback)(()=>{let i=L.trim(),s=parseFloat(T),o=parseFloat(D),a=parseFloat(W),r=parseFloat(I);if(!i)return void V("Le nom de l'objet est obligatoire.");if(![s,o,a].every(e=>Number.isFinite(e)&&e>0))return void V("Les 3 dimensions (L à l à H) sont obligatoires et > 0.");if([s,o,a].some(e=>e>1e3))return void V("Les dimensions doivent être inférieures à 1 000 cm.");let n=`perso_${Date.now()}_${Math.random().toString(36).slice(2,7)}`,d=Math.round(s*o*a/1e4)/100,l={id:n,nom:i,longueur:s,largeur:o,hauteur:a,poids:Number.isFinite(r)&&r>0?r:0,volume:d};v(e=>[...e,l]),t({t:"qty",roomId:e.activeRoomId??"salon",id:n,d:1}),H(),z(!1)},[L,T,D,W,I,t,v,H,e.activeRoomId]),U=(0,s.useCallback)(i=>{for(let s of(v(e=>e.filter(e=>e.id!==i)),Object.keys(e.inventory)))e.inventory[s]?.[i]&&t({t:"qty",roomId:s,id:i,d:-999})},[t,v,e.inventory]);return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"dm-card",children:[(0,i.jsxs)("div",{className:"dm-card-head",children:[(0,i.jsx)("span",{className:"dm-card-icon",children:(0,i.jsx)(E,{})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:"dm-card-title",children:"Estimez votre volume"}),(0,i.jsx)("p",{className:"dm-card-sub",children:"Sélectionnez une pièce ou utilisez la recherche pour ajouter vos objets."})]})]}),(0,i.jsx)("div",{className:"dm-homes",style:{marginTop:22},children:e.rooms.map(s=>{let o=m(s.id),a="custom"===s.base?"salon":s.base;return(0,i.jsxs)("button",{type:"button",className:`dm-home${e.activeRoomId===s.id?" is-active":""}`,onClick:()=>t({t:"patch",p:{activeRoomId:s.id}}),children:[J[a],(0,i.jsx)("span",{className:"dm-home-name",children:s.label}),(0,i.jsx)("span",{className:`dm-room-count${o>0?" is-on":""}`,children:o}),s.removable&&(0,i.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),t({t:"removeRoom",roomId:s.id})},title:"Supprimer cette pièce","aria-label":`Supprimer ${s.label}`,style:{position:"absolute",top:8,left:8,width:22,height:22,borderRadius:999,background:"#fff",border:"1.5px solid rgba(13,27,46,0.18)",color:"rgba(13,27,46,0.55)",cursor:"pointer",padding:0,display:"inline-flex",alignItems:"center",justifyContent:"center"},children:(0,i.jsx)(d.X,{size:12,strokeWidth:2.5})})]},s.id)})}),(0,i.jsxs)("div",{style:{marginTop:14},children:[!g&&(0,i.jsxs)("button",{type:"button",onClick:()=>b(!0),style:{display:"inline-flex",alignItems:"center",gap:8,background:"transparent",color:"#714B67",border:"2px dashed #714B67",borderRadius:12,padding:"12px 16px",fontFamily:"inherit",fontSize:14.5,fontWeight:700,cursor:"pointer",transition:"background 0.15s"},children:[(0,i.jsx)(r,{size:16,strokeWidth:2.4})," Ajouter une pièce"]}),g&&(0,i.jsxs)("div",{style:{background:"#fff",border:"1px solid rgba(113,75,103,0.20)",borderRadius:12,padding:14,display:"flex",flexDirection:"column",gap:8,maxWidth:380},children:[(0,i.jsx)("div",{style:{fontSize:12,fontWeight:700,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.04em",marginBottom:4},children:"Type de pièce"}),j.filter(e=>"perso"!==e.key).map(e=>(0,i.jsx)("button",{type:"button",onClick:()=>N(e),style:{textAlign:"left",background:"#FFF8EE",border:"1px solid rgba(113,75,103,0.15)",borderRadius:10,padding:"10px 14px",fontFamily:"inherit",fontSize:14,fontWeight:600,color:"#0D1B2E",cursor:"pointer"},children:e.menuLabel},e.key)),(0,i.jsxs)("div",{style:{borderTop:"1px solid rgba(113,75,103,0.12)",paddingTop:10,marginTop:4,display:"flex",flexDirection:"column",gap:6},children:[(0,i.jsx)("label",{style:{fontSize:12,fontWeight:700,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.04em"},children:"Pièce personnalisée"}),(0,i.jsx)("input",{type:"text",value:f,onChange:e=>{y(e.target.value),w(null)}
1,placeholder:"Nom (ex : Atelier, Vérandaâ¦)",style:{width:"100%",height:42,padding:"0 12px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:14.5,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}}),(0,i.jsx)("button",{type:"button",onClick:()=>{N(j.find(e=>"perso"===e.key),f)},style:{background:"#714B67",color:"white",border:0,borderRadius:10,fontFamily:"inherit",fontSize:13.5,fontWeight:700,padding:"10px 14px",cursor:"pointer"},children:"Ajouter cette pièce"}),k&&(0,i.jsx)("div",{style:{color:"#B23E2C",fontSize:12.5,fontWeight:600},children:k})]}),(0,i.jsx)("button",{type:"button",onClick:()=>{b(!1),y(""),w(null)},style:{background:"transparent",border:0,color:"rgba(13,27,46,0.55)",fontFamily:"inherit",fontSize:13,fontWeight:600,padding:"6px 0 0",cursor:"pointer",textAlign:"right"},children:"Fermer"})]})]}),(0,i.jsxs)("div",{className:"dm-search",children:[(0,i.jsx)(P,{}),(0,i.jsx)("input",{value:e.search,onChange:e=>t({t:"patch",p:{search:e.target.value}}),placeholder:"Rechercher un objet (canapé, armoire, cartonâ¦)"})]}),(0,i.jsx)("div",{className:"dm-objgrid",children:c.map(s=>{let t=e.activeRoomId?e.inventory[e.activeRoomId]?.[s.id]??0:Object.values(e.inventory).reduce((e,i)=>e+(i[s.id]??0),0);return(0,i.jsxs)("div",{className:`dm-obj${t>0?" is-on":""}`,children:[(0,i.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,i.jsx)("div",{className:"dm-obj-name",children:s.name}),(0,i.jsxs)("div",{className:"dm-obj-meta",children:["Volume ",B(s.vol)," · ",s.weight," kg"]}),(0,i.jsx)("div",{className:"dm-obj-dims",children:s.dims})]}),(0,i.jsxs)("div",{className:"dm-obj-qty",children:[(0,i.jsx)("button",{type:"button",className:"dm-obj-minus",onClick:()=>x(s.id,-1),style:{opacity:0===t?.4:1},children:(0,i.jsx)(K,{})}),(0,i.jsx)("span",{className:"dm-obj-q",children:t}),(0,i.jsx)("button",{type:"button",className:"dm-obj-plus",onClick:()=>x(s.id,1),children:(0,i.jsx)(Q,{})})]})]},s.id)})}),p.length>0&&(0,i.jsxs)("div",{style:{marginTop:22},children:[(0,i.jsx)("div",{style:{fontSize:14,fontWeight:800,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.04em",marginBottom:10},children:"Mes objets personnalisés"}),(0,i.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(260px, 1fr))",gap:12},children:p.map(s=>{let t=e.activeRoomId?e.inventory[e.activeRoomId]?.[s.id]??0:Object.values(e.inventory).reduce((e,i)=>e+(i[s.id]??0),0);return(0,i.jsxs)("div",{className:`dm-obj${t>0?" is-on":""}`,children:[(0,i.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,i.jsx)("div",{className:"dm-obj-name",children:s.nom}),(0,i.jsxs)("div",{className:"dm-obj-meta",children:["Volume ",B(s.volume)," m³",s.poids>0?` \xb7 ${s.poids} kg`:""]}),(0,i.jsxs)("div",{className:"dm-obj-dims",children:[s.longueur," à ",s.largeur," à ",s.hauteur," cm"]})]}),(0,i.jsxs)("div",{className:"dm-obj-qty",children:[(0,i.jsx)("button",{type:"button",className:"dm-obj-minus",onClick:()=>x(s.id,-1),style:{opacity:0===t?.4:1},children:(0,i.jsx)(K,{})}),(0,i.jsx)("span",{className:"dm-obj-q",children:t}),(0,i.jsx)("button",{type:"button",className:"dm-obj-plus",onClick:()=>x(s.id,1),children:(0,i.jsx)(Q,{})}),(0,i.jsx)("button",{type:"button",onClick:()=>U(s.id),title:"Supprimer cet objet","aria-label":`Supprimer ${s.nom}`,style:{width:30,height:30,borderRadius:8,background:"#fff",border:"1.5px solid rgba(13,27,46,0.15)",color:"rgba(13,27,46,0.55)",cursor:"pointer",display:"inline-flex",alignItems:"center",justifyContent:"center",marginLeft:4,padding:0,transition:"background 0.15s, color 0.15s, border-color 0.15s"},children:(0,i.jsx)(n,{size:14,strokeWidth:2})})]})]},s.id)})})]}),(0,i.jsxs)("div",{style:{marginTop:22},children:[!C&&(0,i.jsxs)("button",{type:"button",onClick:()=>z(!0),style:{width:"100%",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:8,background:"transparent",color:"#714B67",border:"2px dashed #714B67",borderRadius:12,padding:16,fontFamily:"inherit",fontSize:15,fontWeight:700,cursor:"pointer",transition:"background 0.15s"},children:[(0,i.jsx)(r,{size:18,strokeWidth:2})," Ajouter un objet aux dimensions personnalisées"]}),C&&(0,i.jsxs)("div",{style:{background:"#fff",border:"1px solid rgba(113,75,103,0.20)",borderRadius:14,padding:22,display:"flex",flexDirection:"column",gap:14,marginTop:4},children:[(0,i.jsx)("div",{style:{fontFamily:"var(--font-playfair, serif)",fontSize:18,fontWeight:700,color:"#0D1B2E"},children:"Objet personnalisé"}),(0,i.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,i.jsx)("label",{htmlFor:"custom-nom",style:{fontSize:12,fontWeight:600,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.4px"},children:"Nom de l'objet *"}),(0,i.jsx)("input",{id:"custom-nom",type:"text",value:L,onChange:e=>S(e.target.value),placeholder:"Ex : Piano droit, Meuble sur mesureâ¦",style:{width:"100%",height:48,padding:"0 14px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:16,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}})]}),(0,i.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12},children:[(0,i.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,i.jsx)("label",{htmlFor:"custom-l",style:{fontSize:12,fontWeight:600,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.4px"},children:"Longueur (cm) *"}),(0,i.jsx)("input",{id:"custom-l",type:"number",min:1,max:1e3,value:T,onChange:e=>R(e.target.value),placeholder:"120",style:{width:"100%",height:48,padding:"0 14px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:16,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}})]}),(0,i.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,i.jsx)("label",{htmlFor:"custom-la",style:{fontSize:12,fontWeight:600,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.4px"},children:"Largeur (cm) *"}),(0,i.jsx)("input",{id:"custom-la",type:"number",min:1,max:1e3,value:D,onChange:e=>F(e.target.value),placeholder:"60",style:{width:"100%",height:48,padding:"0 14px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:16,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}})]}),(0,i.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,i.jsx)("label",{htmlFor:"custom-h",style:{fontSize:12,fontWeight:600,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.4px"},children:"Hauteur (cm) *"}),(0,i.jsx)("input",{id:"custom-h",type:"number",min:1,max:1e3,value:W,onChange:e=>A(e.target.value),placeholder:"80",style:{width:"100%",height:48,padding:"0 14px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:16,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}})]})]}),(0,i.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,i.jsx)("label",{htmlFor:"custom-p",style:{fontSize:12,fontWeight:600,color:"#714B67",textTransform:"uppercase",letterSpacing:"0.4px"},children:"Poids (kg) â optionnel"}
1),(0,i.jsx)("input",{id:"custom-p",type:"number",min:0,value:I,onChange:e=>$(e.target.value),placeholder:"Optionnel",style:{width:"100%",height:48,padding:"0 14px",border:"1.5px solid rgba(113,75,103,0.18)",borderRadius:10,fontSize:16,fontFamily:"inherit",color:"#0D1B2E",outline:"none",background:"#fff"}})]}),(0,i.jsxs)("div",{style:{background:"#FFF8EE",border:"1px solid rgba(255,214,153,0.55)",borderRadius:10,padding:"12px 14px",fontSize:14,color:"#0D1B2E",fontWeight:500},children:["Volume calculé : ",(0,i.jsx)("strong",{style:{color:"#714B67",fontSize:15.5,fontWeight:700},children:null!=O?`${B(O)} m\xb3`:"â"})]}),q&&(0,i.jsx)("div",{style:{background:"rgba(192,74,58,0.08)",border:"1px solid rgba(192,74,58,0.3)",color:"#B23E2C",borderRadius:10,padding:"10px 14px",fontSize:13.5,fontWeight:500},children:q}),(0,i.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:10,marginTop:4},children:[(0,i.jsx)("button",{type:"button",onClick:()=>{z(!1),H()},style:{background:"transparent",border:0,color:"rgba(13,27,46,0.6)",fontFamily:"inherit",fontSize:14,fontWeight:600,padding:"11px 16px",cursor:"pointer",borderRadius:10},children:"Annuler"}),(0,i.jsx)("button",{type:"button",onClick:Z,style:{background:"#714B67",color:"white",border:0,borderRadius:10,fontFamily:"inherit",fontSize:14.5,fontWeight:700,padding:"11px 22px",cursor:"pointer"},children:"Ajouter à mon inventaire"})]})]})]})]}),(0,i.jsxs)("div",{className:"dm-card dm-inv",children:[(0,i.jsxs)("div",{className:"dm-inv-head",children:[(0,i.jsx)("h3",{children:"Votre inventaire"}),(0,i.jsxs)("span",{className:"dm-inv-badge",children:[l.length," objets"]})]}),(0,i.jsxs)("div",{className:"dm-inv-cols",children:[(0,i.jsx)("div",{children:"Objet"}),(0,i.jsx)("div",{style:{textAlign:"center"},children:"Quantité"}),(0,i.jsx)("div",{style:{textAlign:"right"},children:"Poids"}),(0,i.jsx)("div",{style:{textAlign:"right"},children:"Volume"})]}),0===l.length&&(0,i.jsx)("div",{className:"dm-inv-empty",children:"Aucun objet ajouté â sélectionnez une pièce ou utilisez la recherche ci-dessus."}),l.map(({roomId:s,itemId:o,qty:a})=>{let r=u.get(o);if(!r)return null;let n=e.rooms.find(e=>e.id===s)?.label;return(0,i.jsxs)("div",{className:"dm-inv-row",children:[(0,i.jsxs)("div",{className:"dm-inv-name",children:[r.name,n&&(0,i.jsxs)("span",{style:{fontWeight:500,color:"rgba(13,27,46,0.55)",fontSize:12.5,marginLeft:6},children:["· ",n]})]}),(0,i.jsxs)("div",{className:"dm-inv-qty",children:[(0,i.jsx)("button",{type:"button",className:"dm-inv-q-btn",onClick:()=>t({t:"qty",roomId:s,id:o,d:-1}),children:(0,i.jsx)(K,{size:13})}),(0,i.jsx)("span",{className:"dm-inv-q",children:a}),(0,i.jsx)("button",{type:"button",className:"dm-inv-q-btn dm-inv-q-add",onClick:()=>t({t:"qty",roomId:s,id:o,d:1}),children:(0,i.jsx)(Q,{size:13})})]}),(0,i.jsxs)("div",{className:"dm-inv-w",children:[_(r.weight*a)," kg"]}),(0,i.jsx)("div",{className:"dm-inv-v",children:M(r.vol*a)})]},`${s}::${o}`)}),(0,i.jsxs)("div",{className:"dm-inv-total",children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-inv-label",children:"Poids total"}),(0,i.jsxs)("div",{className:"dm-inv-tot",children:[_(a)," kg"]})]}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-inv-label",children:"Volume total"}),(0,i.jsx)("div",{className:"dm-inv-tot",style:{color:"#714B67"},children:M(o)})]})]})]})]})}function ei({state:e,dispatch:s}){return(0,i.jsxs)("div",{className:"dm-card",children:[(0,i.jsxs)("div",{className:"dm-card-head",children:[(0,i.jsx)("span",{className:"dm-card-icon",children:(0,i.jsx)(F,{})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:"dm-card-title",children:"Conditions d'accès"}),(0,i.jsx)("p",{className:"dm-card-sub",children:"Sélectionnez les conditions de chargement et de déchargement."})]})]}),(0,i.jsxs)("div",{className:"dm-acces-grid",children:[(0,i.jsxs)("div",{className:"dm-acces-block",children:[(0,i.jsxs)("div",{className:"dm-acces-h",children:[(0,i.jsx)("span",{style:{color:"#714B67"},children:(0,i.jsx)(D,{size:18})})," Chargement â accès départ"]}),(0,i.jsx)("div",{className:"dm-chips",children:f.map(t=>(0,i.jsx)("button",{type:"button",className:`dm-chip${e.accessDepart===t?" is-on":""}`,onClick:()=>s({t:"patch",p:{accessDepart:t}}),children:t},t))})]}),(0,i.jsxs)("div",{className:"dm-acces-block",children:[(0,i.jsxs)("div",{className:"dm-acces-h",children:[(0,i.jsx)("span",{style:{color:"#C99A4E"},children:(0,i.jsx)(W,{size:18})})," Déchargement â accès arrivée"]}),(0,i.jsx)("div",{className:"dm-chips",children:f.map(t=>(0,i.jsx)("button",{type:"button",className:`dm-chip dm-chip-g${e.accessArrivee===t?" is-on":""}`,onClick:()=>s({t:"patch",p:{accessArrivee:t}}),children:t},t))})]})]}),(0,i.jsxs)("div",{className:"dm-svc-section",children:[(0,i.jsx)("div",{className:"dm-svc-title",children:"Niveau de service souhaité"}),(0,i.jsx)("div",{className:"dm-svc-grid",children:[{id:"Transport seul",icon:(0,i.jsx)(F,{size:24}
1),desc:"Vous chargez et déchargez vous-même."},{id:"Manutention chargement",icon:(0,i.jsx)(A,{size:24}),desc:"Notre équipe charge votre mobilier."},{id:"Emballage inclus",icon:(0,i.jsx)(E,{size:24}),desc:"Cartons et protection pris en charge."},{id:"Aide chauffeur livraison",icon:(0,i.jsx)(I,{size:24}),desc:"Assistance au déchargement à l'arrivée."}].map(t=>(0,i.jsxs)("button",{type:"button",className:`dm-svc${e.service===t.id?" is-on":""}`,onClick:()=>s({t:"patch",p:{service:t.id}}),children:[(0,i.jsx)("span",{style:{color:"#714B67",flex:"none"},children:t.icon}),(0,i.jsxs)("span",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{className:"dm-svc-name",children:t.id}),(0,i.jsx)("span",{className:"dm-svc-desc",children:t.desc})]})]},t.id))})]}),(0,i.jsxs)("div",{className:"dm-date-section",children:[(0,i.jsxs)("div",{className:"dm-svc-title",children:[(0,i.jsx)("span",{style:{color:"#714B67"},children:(0,i.jsx)($,{})})," Date souhaitée du déménagement"]}),(0,i.jsx)("div",{className:"dm-chips",children:w.map(t=>(0,i.jsx)("button",{type:"button",className:`dm-chip${e.dateOption===t?" is-on":""}`,onClick:()=>s({t:"patch",p:{dateOption:t}}),children:t},t))})]}),(0,i.jsxs)("div",{className:"dm-date-section",children:[(0,i.jsxs)("div",{className:"dm-svc-title",children:[(0,i.jsx)("span",{style:{color:"#C99A4E"},children:(0,i.jsx)(q,{})})," Objets particuliers"]}),(0,i.jsx)("p",{className:"dm-card-sub",style:{marginTop:4},children:"Sélectionnez les objets nécessitant une manutention spécifique."}),(0,i.jsx)("div",{className:"dm-chips",style:{marginTop:14},children:N.map(t=>(0,i.jsx)("button",{type:"button",className:`dm-chip dm-chip-g${e.specials[t]?" is-on":""}`,onClick:()=>s({t:"toggleSpec",k:t}),children:t},t))})]})]})}function es({state:e,dispatch:s}){return(0,i.jsxs)("div",{className:"dm-card",children:[(0,i.jsxs)("div",{className:"dm-card-head",children:[(0,i.jsx)("span",{className:"dm-card-icon",children:(0,i.jsx)(I,{})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:"dm-card-title",children:"Vos coordonnées"}),(0,i.jsx)("p",{className:"dm-card-sub",children:"Recevez votre estimation détaillée et l'accompagnement d'un expert dédié."})]})]}),(0,i.jsxs)("div",{className:"dm-contact",children:[(0,i.jsxs)("div",{style:{gridColumn:"1 / -1"},children:[(0,i.jsx)("label",{className:"dm-label",children:"Nom complet"}),(0,i.jsx)("input",{className:"dm-input",value:e.contact.name,onChange:e=>s({t:"patchContact",p:{name:e.target.value}}),placeholder:"Jean Dupont"})]}),(0,i.jsxs)("label",{style:{gridColumn:"1 / -1",display:"flex",alignItems:"center",gap:"12px",backgroundColor:"#ffffff",border:"2px solid #714B67",borderRadius:"12px",padding:"16px",cursor:"pointer",marginBottom:"16px"},children:[(0,i.jsx)("input",{type:"checkbox",style:{width:"20px",height:"20px",accentColor:"#714B67",cursor:"pointer",flexShrink:0},checked:e.contact.mutationPro,onChange:e=>s({t:"patchContact",p:{mutationPro:e.target.checked}})}),(0,i.jsx)("span",{style:{color:"#0D1B2E",fontWeight:500,fontSize:"14px"},children:"Il s'agit d'une mutation professionnelle"})]}),(0,i.jsxs)("div",{children:[(0,i.jsx)("label",{className:"dm-label",children:"Email"}),(0,i.jsx)("input",{className:"dm-input",type:"email",value:e.contact.email,onChange:e=>s({t:"patchContact",p:{email:e.target.value}}),placeholder:"[email protected]"}),(0,i.jsx)("small",{style:{display:"block",fontSize:"12px",color:"rgba(113, 75, 103, 0.65)",marginTop:"4px",lineHeight:1.4},children:"Votre estimation sera envoyée à cette adresse immédiatement"})]}),(0,i.jsxs)("div",{children:[(0,i.jsx)("label",{className:"dm-label",children:"Téléphone"}),(0,i.jsx)("input",{className:"dm-input",type:"tel",value:e.contact.phone,onChange:e=>s({t:"patchContact",p:{phone:e.target.value}}),placeholder:"+33 6 12 34 56 78"}),(0,i.jsx)("small",{style:{display:"block",fontSize:"12px",color:"rgba(113, 75, 103, 0.65)",marginTop:"4px",lineHeight:1.4},children:"Un conseiller vous rappelle sous 24h pour affiner votre devis"})]}),(0,i.jsxs)("div",{style:{gridColumn:"1 / -1"},children:[(0,i.jsx)("label",{className:"dm-label",children:"Commentaire (optionnel)"}),(0,i.jsx)("textarea",{className:"dm-input",value:e.contact.comment,onChange:e=>s({t:"patchContact",p:{comment:e.target.value}}),placeholder:"Précisez vos contraintes, dates ou objets particuliersâ¦",rows:4})]})]}),(0,i.jsxs)("div",{className:"dm-privacy",children:[(0,i.jsx)("span",{style:{color:"#714B67",flex:"none"},children:(0,i.jsx)(V,{size:20})}),(0,i.jsxs)("span",{children:["Vos données sont utilisées uniquement pour traiter votre demande de devis et vous recontacter. Conformément au RGPD, vou
1s disposez d'un droit d'accès et de suppression de vos données : ",(0,i.jsx)("a",{href:"mailto:[email protected]",children:"[email protected]"})]})]}),(0,i.jsx)(et,{state:e})]})}function et({state:e}){return(0,m.isDomesticFranceRoute)(e.from.countryCode||e.from.country,e.to.countryCode||e.to.country)?(0,i.jsx)(i.Fragment,{children:(0,i.jsxs)("div",{style:{fontSize:"14px",lineHeight:1.55,color:"#0D1B2E",background:"rgba(113, 75, 103, 0.06)",borderLeft:"3px solid #714B67",padding:"12px 14px",borderRadius:"8px",marginTop:"12px"},children:["Nous réalisons uniquement des déménagements internationaux. Pour un déménagement en France, nous transmettons votre demande à des déménageurs partenaires spécialistes du national, qui vous adresseront jusqu'à quatre devis gratuits et sans engagement."," ",(0,i.jsx)("a",{href:"/politique-de-confidentialite#transmission-demenageurs-partenaires",target:"_blank",rel:"noopener",style:{color:"#714B67",textDecoration:"underline"},children:"En savoir plus."})]})}):null}e.s(["Calculateur4Etapes",0,function(){let[e,t]=(0,s.useReducer)(z,C),[r,n]=(0,s.useState)(!1),d=(0,s.useRef)(""),[l,j]=(0,s.useState)([]),[f,w]=(0,s.useState)(!1),N=(0,s.useMemo)(()=>{let e=new Map;for(let i of x)e.set(i.id,{vol:i.vol,weight:i.weight,name:i.name});for(let i of l)e.set(i.id,{vol:i.volume,weight:i.poids,name:i.nom});return e},[l]);(0,s.useEffect)(()=>{try{window.localStorage.removeItem("dm_quote_v3")}catch{}},[]),(0,s.useEffect)(()=>{let i=null!=e.from.lat&&null!=e.from.lon,s=null!=e.to.lat&&null!=e.to.lon;if(!i||!s)return;let o=`${e.from.lat},${e.from.lon}|${e.to.lat},${e.to.lon}`;if(o===d.current)return;d.current=o;let a=new AbortController;n(!1);let r={lat:e.from.lat,lon:e.from.lon},l={lat:e.to.lat,lon:e.to.lon};return(0,u.fetchDrivingRoute)(r,l,a.signal).then(e=>{t({t:"patch",p:{distance:Math.round(e.distanceKm)}})}).catch(e=>{let i,s,o;e?.name!=="AbortError"&&(t({t:"patch",p:{distance:Math.round(1.25*(s=(i=e=>e*Math.PI/180)(l.lat-r.lat),o=i(l.lon-r.lon),12742*Math.asin(Math.sqrt(Math.sin(s/2)**2+Math.cos(i(r.lat))*Math.cos(i(l.lat))*Math.sin(o/2)**2))))}}),n(!0))}),()=>a.abort()},[e.from.lat,e.from.lon,e.to.lat,e.to.lon]);let B=(0,s.useMemo)(()=>{let i=[];for(let[s,t]of Object.entries(e.inventory))for(let[e,o]of Object.entries(t))o>0&&N.has(e)&&i.push({roomId:s,itemId:e,qty:o});return i},[e.inventory,N]),{volume:T,weight:R}=(0,s.useMemo)(()=>{let e=0,i=0;for(let s of B){let t=N.get(s.itemId);t&&(e+=t.vol*s.qty,i+=t.weight*s.qty)}return{volume:e,weight:i}},[B,N]),{price:F,isQuote:I}=(0,s.useMemo)(()=>{if(T<=0||e.distance<=0)return{price:2450,isQuote:!1};let i=(0,p.isEuropeanRoadDestination)(`${e.to.country} ${e.to.zip}`),s=(0,p.estimatePrice)({km:e.distance,volume:T,isEurope:i});if("quote"===s.type)return{price:0,isQuote:!0};let t=s.low,o=Object.entries(e.specials).filter(([,e])=>e).reduce((e,[i])=>e+("Piano"===i?420:130),0);return{price:50*Math.round((t+((y[e.accessDepart]||0)+(y[e.accessArrivee]||0)+(k[e.service]||0)+o))/50),isQuote:!1}},[T,e.distance,e.to.country,e.to.zip,e.accessDepart,e.accessArrivee,e.service,e.specials]),q=(0,s.useMemo)(()=>{let i=e.search.trim().toLowerCase();if(i)return x.filter(e=>e.name.toLowerCase().includes(i));if(e.activeRoomId){let i=e.rooms.find(i=>i.id===e.activeRoomId);if(i)return"custom"===i.base?x:x.filter(e=>e.room===i.base)}return b.map(e=>g[e]).filter(Boolean)},[e.search,e.activeRoomId,e.rooms]),P=(0,s.useCallback)(i=>{let s=e.inventory[i];if(!s)return 0;let t=0;for(let e of Object.values(s))t+=e;return t},[e.inventory]),O=(0,s.useCallback)(i=>{if(e.activeRoomId)return e.activeRoomId;let s=g[i];return s?s.room:"salon"},[e.activeRoomId]),H=(0,s.useCallback)(async()=>{if(e.submitting||!e.contact.email.trim()||!e.contact.phone.trim()||!e.contact.name.trim()||!e.from.selected||!e.to.selected)return;let i=e.contact.email.includes("@"),s=e.contact.phone.trim().length>8;i&&s&&w(!0),t({t:"patch",p:{submitting:!0,submitError:null}});try{let i=B.map(({roomId:i,itemId:s,qty:t})=>{let o=N.get(s),a=e.rooms.find(e=>e.id===i);return{piece:a?.label??i,nom:o.name,qte:t,vol_m3:o.vol,poids_kg:o.weight}}),s={acces_depart:e.accessDepart,acces_arrivee:e.accessArrivee,service:e.service,date_souhaitee:e.dateOption,objets_speciaux:Object.entries(e.specials).filter(([,e])=>e).map(([e])=>e),from_etage:e.from.etage||void 0,from_digicode:e.from.code||void 0,to_etage:e.to.etage||void 0,to_digicode:e.to.co
1de||void 0},o=I||T<=0?"Sur devis":F,a=I||T<=0?{estimation:"sur devis"}:{estimationBasse:F,estimationHaute:50*Math.round(1.15*F/50)};await (0,c.saveLead)({nom:e.contact.name||"",email:e.contact.email,telephone:e.contact.phone,depart:`${e.from.addr}, ${e.from.zip}`,destination:`${e.to.addr}, ${e.to.zip}`,villeDepart:e.from.city,villeDestination:e.to.city,paysDepart:e.from.countryCode||e.from.country||"",paysDestination:e.to.countryCode||e.to.country||"",paysDepartNom:e.from.country||void 0,paysDestinationNom:e.to.country||void 0,latDepart:e.from.lat,lngDepart:e.from.lon,latDestination:e.to.lat,lngDestination:e.to.lon,volume:Math.round(10*T)/10,distance:e.distance||0,distanceKm:e.distance,prixEstime:o,...a,message:e.contact.comment||void 0,mutationPro:e.contact.mutationPro||void 0,consentGiven:(0,m.isDomesticFranceRoute)(e.from.countryCode||e.from.country,e.to.countryCode||e.to.country),inventaire:JSON.stringify({objets:i,options:s}),langue:"fr"},"devis-demenagement-international"),(0,h.gtagAdsConversion)(),t({t:"patch",p:{submitting:!1,submitted:!0}})}catch{t({t:"patch",p:{submitting:!1,submitted:!0}})}},[e,T,F,B,N]),K=(0,s.useCallback)(()=>{4===e.step?H():(t({t:"next"}),window.scrollTo({top:0,behavior:"smooth"}))},[e.step,H]),Q=(0,s.useCallback)(()=>{t({t:"prev"}),window.scrollTo({top:0,behavior:"smooth"})},[]),J=(0,s.useCallback)(e=>{t({t:"step",v:e}),window.scrollTo({top:0,behavior:"smooth"})},[]);(0,m.isDomesticFranceRoute)(e.from.countryCode||e.from.country,e.to.countryCode||e.to.country);let et={1:"Continuer vers les objets",2:"Continuer vers les accès",3:"Continuer vers vos coordonnées",4:e.submitting?"Envoiâ¦":"Obtenir mon estimation détaillée"}[e.step],eo={1:"Ãtape suivante : Définir votre volume",2:"Ãtape suivante : Conditions d'accès",3:"Ãtape suivante : Vos coordonnées",4:"Un expert vous recontacte sous 24h"}[e.step];return(0,i.jsx)("div",{className:"dm-root",children:(0,i.jsxs)("div",{className:"dm-wrap",children:[(0,i.jsxs)("div",{className:"dm-badge",children:[(0,i.jsx)(L,{size:15})," DÃMÃNAGEMENT INTERNATIONAL"]}),(0,i.jsx)("h1",{className:"dm-h1",children:"Estimez le prix de votre déménagement"}),(0,i.jsx)("p",{className:"dm-lead",children:"Obtenez une première estimation selon votre volume, vos adresses, vos accès et vos besoins logistiques."}),(0,i.jsx)("div",{className:"dm-stepper",children:[{n:1,title:"Trajet",sub:"Adresses"},{n:2,title:"Volume",sub:"Objets & pièces"},{n:3,title:"Accès & services",sub:"Chargement & déchargement"},{n:4,title:"Vos coordonnées",sub:"Devis personnalisé"}].map((s,t,o)=>(0,i.jsxs)("div",{style:{display:"flex",alignItems:"center",flex:"none",gap:10},children:[(0,i.jsxs)("button",{type:"button",className:"dm-step-btn",onClick:()=>J(s.n),children:[(0,i.jsx)("span",{className:`dm-step-circle${e.step===s.n?" is-active":""}${s.n<e.step?" is-done":""}`,children:s.n<e.step?(0,i.jsx)(Z,{}):s.n}),(0,i.jsxs)("span",{children:[(0,i.jsx)("span",{className:`dm-step-title${e.step===s.n?" is-active":""}${s.n<e.step?" is-done":""}`,children:s.title}),(0,i.jsx)("span",{className:"dm-step-sub",children:s.sub})]})]}),t<o.length-1&&(0,i.jsx)("span",{className:`dm-step-conn${e.step>s.n?" is-passed":""}`})]},s.n))}),(0,i.jsxs)("div",{className:"dm-grid",children:[(0,i.jsxs)("div",{children:[1===e.step&&(0,i.jsx)(Y,{state:e,dispatch:t,routeError:r}),2===e.step&&(0,i.jsx)(ee,{state:e,dispatch:t,volume:T,weight:R,flatInv:B,objList:q,roomCount:P,resolveTargetRoom:O,itemLookup:N,customObjects:l,setCustomObjects:j}),3===e.step&&(0,i.jsx)(ei,{state:e,dispatch:t}),4===e.step&&(0,i.jsx)(es,{state:e,dispatch:t}),(0,i.jsxs)("div",{className:"dm-nav",children:[e.step>1?(0,i.jsxs)("button",{type:"button",className:"dm-prev",onClick:Q,children:[(0,i.jsx)(G,{})," Précédent"]}):(0,i.jsx)("span",{}),(0,i.jsxs)("span",{className:"dm-step-of",children:["Ãtape ",e.step," sur 4"]}),e.submitted?(0,i.jsx)("span",{}):(0,i.jsxs)("button",{type:"button",className:"dm-next-btn",onClick:K,disabled:e.submitting||4===e.step&&(!e.contact.name.trim()||!e.contact.email.trim()||!e.contact.phone.trim()||!e.from.selected||!e.to.selected),children:[4===e.step?e.submitting?"Envoiâ¦":"Envoyer":"Suivant"," ",(0,i.jsx)(U,{})]})]})]}),(0,i.jsxs)("aside",{className:"dm-summary",children:[(0,i.jsxs)("div",{className:"dm-sum-head",children:[(0,i.jsx)("div",{className:"dm-sum-title",children:"RÃSUMà DE VOTRE ESTIMATION"}),(0,i.jsxs)("div",{className:"dm-sum-live",children:[(0,i.jsx)("span",{className:"dm-sum-dot"})," Mise à jour en temps réel"]})]}),(0,i.jsxs)("div",{className:"dm-sum-body",children:[(0,i.jsx)(X,{icon:(0,i.jsx)(E,{size:18}),label:"Volume estimé",value:M(T),onEdit:()=>J(2)}),(0,i.jsx)(X,{icon:(0,i.jsx)(S,{size:18}),label:"Trajet",value:e.from.city&&e.to.city?`${e.from.city} â ${e.to.city}`:"â",sub:e.distance>0?`${_(e.distance)} km`:void 0}),(0,i.jsx)(X,{icon:(0,i.jsx)(D,{size:18}),label:"Accès départ",value:e.accessDepart,onEdit:()=>J(3)}),(0,i.jsx)(X,{icon:(0,i.jsx)(W,{size:18}),label:"Accès arrivée",value:e.accessArrivee,onEdit:()=>J(3)}),(0,i.jsx)(X,{icon:(0,i.jsx)(A,{size:18}),label:"Niveau de service",value:e.service,onEdit:()=>J(3)}),(0,i.jsx)(X,{icon:(0,i.jsx)($,{size:18}),label:"Date souhaitée",value:e.dateOption,onEdit:()=>J(3),last:!0})]}),(0,i.jsxs)("div",{className:"dm-price-box",children:[(0,i.jsx)("div",{className:"dm-price-tag",children:"ESTIMATION INDICATIVE"}),f?(0,i.jsx)("div",{className:"dm-price-content dm-price-reveal",children:T>0?I?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("div",{className:"dm-price-val",children:"Sur devis"}),(0,i.jsx)("div",{className:"dm-price-sub",children:"Les petits volumes font l'objet d'une tarification personnalisée selon la destination et les options choisies."})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"dm-price-val",children:["à partir de ",_(F)," â¬"]}),(0,i.jsxs)("div",{className:"dm-price-sub",children:["Prix estimé pour ",M(T)]})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("div",{className:"dm-price-val",children:"à partir de 2 450 â¬"}),(0,i.jsx)("div",{className:"dm-price-sub",children:"Sélectionnez votre logement ou vos objets"})]})}):(0,i.jsxs)("div",{className:"dm-price-lock",children:[(0,i.jsx)(a.Lock,{size:28,strokeWidth:2}),(0,i.jsx)("div",{className:"dm-price-lock-msg",children:"Votre estimation est prête"}),(0,i.jsx)("div",{className:"dm-price-lock-sub",children:"Renseignez vos coordonnées ci-dessous pour la recevoir"})]})]}),(0,i.jsxs)("div",{className:"dm-budget-hint",children:[(0,i.jsx)(o,{className:"dm-budget-hint-icon",size:16,strokeWidth:2}),(0,i.jsxs)("div",{children:[(0,i.jsx)("p",{className:"dm-budget-hint-title",children:"Ce budget ne vous convient pas ?"}),(0,i.jsx)("p",{className:"dm-budget-hint-text",children:"Dites-nous ce que vous pouvez investir â nos conseillers étudient avec vous les solutions adaptées : groupage, dates flexibles, volume optimisé."})]})]}),(0,i.jsxs)("div",{className:"dm-reassure",children:[(0,i.jsx)("span",{className:"dm-reassure-icon",children:(0,i.jsx)(V,{size:20})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-reassure-h",children:"Estimation gratuite & sans engagement"}),(0,i.jsx)("div",{className:"dm-reassure-p",children:"Un expert dédié vous contacte sous 24h pour affiner votre devis."})]})]}),(0,i.jsxs)("div",{className:"dm-cta-wrap",children:[e.submitted?(0,i.jsxs)("div",{className:"dm-success",children:[(0,i.jsx)(Z,{size:20})," Votre demande a bien été envoyée ! Un conseiller vous contacte sous 24h."]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("button",{type:"button",className:"dm-cta",onClick:K,disabled:e.submitting||4===e.step&&(!e.contact.name.trim()||!e.contact.email.trim()||!e.contact.phone.trim()||!e.from.selected||!e.to.selected),children:[et," ",(0,i.jsx)(U,{})]}),(0,i.jsx)("div",{className:"dm-cta-sub",children:eo}),e.submitError&&(0,i.jsxs)("div",{className:"dm-err",children:["Erreur : ",e.submitError]})]}),(0,i.jsx)(v.TrustpilotBadge,{})]})]})]}),(0,i.jsxs)("div",{className:"dm-tr-bar",children:[(0,i.jsxs)("div",{className:"dm-tr-left",children:[(0,i.jsx)("div",{className:"dm-tr-icon",children:(0,i.jsx)(V,{size:22})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"dm-tr-h",children:"Vos biens sont entre de bonnes mains"}),(0,i.jsx)("div",{className:"dm-tr-p",children:"Transport assuré, équipes professionnelles, suivi personnalisé à chaque étape."})]})]}),(0,i.jsx)("div",{className:"dm-tr-pills",children:["Assurance incluse","Experts à votre écoute","Paiement sécurisé"].map(e=>(0,i.jsxs)("div",{className:"dm-tr-pill",children:[(0,i.jsx)("span",{style:{color:"#C99A4E"},children:(0,i.jsx)(Z,{})})," ",e]},e))})]})]})})}],86108)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.