2024-10-02

This commit is contained in:
gcch 2024-10-02 23:54:52 +02:00
commit 93a452ec4a
42 changed files with 895 additions and 207 deletions

View file

@ -186,6 +186,7 @@ button.bouton-case-pleine {
}
button[disabled] {
cursor: not-allowed;
background: repeating-conic-gradient(var(--couleur-noir) 0% 25%, transparent 0% 100%) 1px 0.5px/2px 2px;
}
/**

View file

@ -1 +1 @@
{"version":3,"sourceRoot":"","sources":["../../src/sass/base/polices/_lato.scss","../../src/sass/base/polices/_myriad.scss","../../src/sass/abstracts/_variables.scss","../../src/sass/base/_base.scss","../../src/sass/base/_typographie.scss","../../src/sass/base/elements/_boutons.scss","../../src/sass/base/elements/_images.scss","../../src/sass/base/elements/_liens.scss","../../src/sass/base/elements/_listes.scss","../../src/sass/layouts/_en-tete.scss","../../src/sass/layouts/_menu-categories-produits.scss","../../src/sass/layouts/_colonnes-photos.scss","../../src/sass/layouts/_grille-produits.scss","../../src/sass/layouts/_informations-produit.scss","../../src/sass/layouts/_produits-similaires.scss","../../src/sass/layouts/_pied-de-page.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AChGJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AChBJ;AACE;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;ACnBF;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;AAGF;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;ACtDF;EACE;EACA;EACA;;;AAGF;EACE;;;ACPF;AAAA;AAAA;AAGA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;ACfJ;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;ACbF;AAAA;AAAA;AAAA;AAAA;AAKA;AACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA,YACE,kHAK4B;EAE9B;AAEA;AAMA;AAAA;AAAA;;AALA;EAEE;;AAMF;AACE;EACA;EACA;AAEA;EACA;EAEA;EACA;AAEA;AAMA;AAKA;;AAVA;EAEE;;AAIF;EACE;;AAIF;EACE;IACE;;;AAMJ;EACE;IACE;;;;AClER;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAMA;AACE;EACA;AAEA;EACA;AAEA;EACA;;AAEA;EACE;EACA,qLAEkE;;;AC5BxE;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAWA;;AATA;EACE;;AAEA;AAAA;EAEE;;AAKJ;EACE;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAYF;AACE;EACA;EACA;EACA;AAEA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;IACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;ACvGR;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAOA;EACE;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAYA;AAAA;AAAA;AAAA;AAAA;;AATE;EACE;;AAIJ;EACE;;AAQF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;IACE;IACA;;;AAKN;EACE;;AAGF;EACE;;;ACrFR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EACA;AAEA;EACA;EACA;AAAA;AAAA;AAIA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGA;EACE;;AAMF;EACE;EACA;;;AC7CR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAMR;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC3FN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EAEA;EAGA;EACA;EAGA;EAEA;EACA;EACA;EACA;EACA;AAuGA;AAyGA;;AA9MA;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;;AASN;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;AAEA;AAMA;AAwCA;AAqBA;;AAlEA;EACE;EACA;;AAIF;EACE;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEI;IACE;IACA;;;AAKN;EAEI;IACE;IACA;;;AAOR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;;;AAKN;EACE;;AAeJ;EACE;;AAKJ;EACE;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;AAEA;;AAEE;EACE;IACE;;;;AAQZ;EACE;IACE;;EAGF;IACE;;;AC3QJ;EACE;EACA;EACA;EACA,qBACE;EAEF;EACA;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;;AC7FZ;AAAA;AAAA;AAGA;AACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA","file":"main.css"}
{"version":3,"sourceRoot":"","sources":["../../src/sass/base/polices/_lato.scss","../../src/sass/base/polices/_myriad.scss","../../src/sass/abstracts/_variables.scss","../../src/sass/base/_base.scss","../../src/sass/base/_typographie.scss","../../src/sass/base/elements/_boutons.scss","../../src/sass/base/elements/_images.scss","../../src/sass/base/elements/_liens.scss","../../src/sass/base/elements/_listes.scss","../../src/sass/layouts/_en-tete.scss","../../src/sass/layouts/_menu-categories-produits.scss","../../src/sass/layouts/_colonnes-photos.scss","../../src/sass/layouts/_grille-produits.scss","../../src/sass/layouts/_informations-produit.scss","../../src/sass/layouts/_produits-similaires.scss","../../src/sass/layouts/_pied-de-page.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AChGJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AChBJ;AACE;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;ACnBF;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;AAGF;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;ACtDF;EACE;EACA;EACA;;;AAGF;EACE;;;ACPF;AAAA;AAAA;AAGA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EAGA;;;AClBJ;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;ACbF;AAAA;AAAA;AAAA;AAAA;AAKA;AACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA,YACE,kHAK4B;EAE9B;AAEA;AAMA;AAAA;AAAA;;AALA;EAEE;;AAMF;AACE;EACA;EACA;AAEA;EACA;EAEA;EACA;AAEA;AAMA;AAKA;;AAVA;EAEE;;AAIF;EACE;;AAIF;EACE;IACE;;;AAMJ;EACE;IACE;;;;AClER;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAMA;AACE;EACA;AAEA;EACA;AAEA;EACA;;AAEA;EACE;EACA,qLAEkE;;;AC5BxE;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAWA;;AATA;EACE;;AAEA;AAAA;EAEE;;AAKJ;EACE;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAYF;AACE;EACA;EACA;EACA;AAEA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;IACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;ACvGR;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAOA;EACE;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAYA;AAAA;AAAA;AAAA;AAAA;;AATE;EACE;;AAIJ;EACE;;AAQF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;IACE;IACA;;;AAKN;EACE;;AAGF;EACE;;;ACrFR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EACA;AAEA;EACA;EACA;AAAA;AAAA;AAIA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGA;EACE;;AAMF;EACE;EACA;;;AC7CR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAMR;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC3FN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EAEA;EAGA;EACA;EAGA;EAEA;EACA;EACA;EACA;EACA;AAuGA;AAyGA;;AA9MA;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;;AASN;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;AAEA;AAMA;AAwCA;AAqBA;;AAlEA;EACE;EACA;;AAIF;EACE;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEI;IACE;IACA;;;AAKN;EAEI;IACE;IACA;;;AAOR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;;;AAKN;EACE;;AAeJ;EACE;;AAKJ;EACE;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;AAEA;;AAEE;EACE;IACE;;;;AAQZ;EACE;IACE;;EAGF;IACE;;;AC3QJ;EACE;EACA;EACA;EACA,qBACE;EAEF;EACA;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;;AC7FZ;AAAA;AAAA;AAGA;AACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA","file":"main.css"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,41 +1,49 @@
{
"_Either.DDEPhGsy.js": {
"file": "Either.DDEPhGsy.js",
"name": "Either"
"name": "Either",
"integrity": "sha512-k/7Wk+b5oar670iV1x2NAJ/yh+VTLPUJYVhdjoBAuNyWdc8ZcRqV+iyEaYUZRq7WCxiga+Xkz63qaApLpZ4lFw=="
},
"_chunk-7BKSRZNG.F4GWJRq9.js": {
"file": "chunk-7BKSRZNG.F4GWJRq9.js",
"name": "chunk-7BKSRZNG"
"name": "chunk-7BKSRZNG",
"integrity": "sha512-CM4zAemmzkH8eePsFpJsdTc4IE2wJMlJwIfivLBSAbYuwQjWAmOH28ZFnpki3QBlU1XqR3G7q+ph5etbxY47XA=="
},
"_exports.dP04ITJc.js": {
"file": "exports.dP04ITJc.js",
"name": "exports"
"_exports.BNibT8R5.js": {
"file": "exports.BNibT8R5.js",
"name": "exports",
"integrity": "sha512-cnJ9asFTTBn16nlJir9fEVx89P0ONlgU81/G7E/WOy1e/FGT5P7dOdJuw3XGK1+r0cMQZqs2d5N6HqUOGgUBVA=="
},
"_index.C9ScFdVV.js": {
"file": "index.C9ScFdVV.js",
"name": "index"
"name": "index",
"integrity": "sha512-6+iQXPHL5BUtZ6P2Qn4BQ2HuADyCmrRqhaCjODdUrT9RsyUsEYdXKVGdr4vK4lULTx2TRGuxN6wi5m+HaKihog=="
},
"_index.Dxgx1GXj.js": {
"file": "index.Dxgx1GXj.js",
"name": "index"
"name": "index",
"integrity": "sha512-GGfzSZw92exTZSoSvThNg+1I+xjW6xmPxRfVzkflEtiHUE2p7t4dviPe6gUT+QJr7VVWIxOcs1ZiL9/Jq7uf5g=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts": {
"file": "api2.js",
"name": "api",
"src": "web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts",
"isEntry": true
"isEntry": true,
"integrity": "sha512-ld0nEHk+UTouQa2rIsEGfWTdBegMl3fKv8S6MHRG7xkLDwXLk8687de2nZ1/2Fk6pLoKMa07zJc7qF2AayoQNQ=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/dom.ts": {
"file": "dom.js",
"name": "dom",
"src": "web/app/themes/haiku-atelier-2024/src/scripts/constantes/dom.ts",
"isEntry": true
"isEntry": true,
"integrity": "sha512-YR8sQCH9oywG8bKZXi1E4mwI15m9IsC5yMwIO41beqOuQGuD7nZU1dZ2qrApcPtH/nh1uMPhNU7R/MB3BFZICA=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/messages.ts": {
"file": "messages3.js",
"name": "messages",
"src": "web/app/themes/haiku-atelier-2024/src/scripts/constantes/messages.ts",
"isEntry": true
"isEntry": true,
"integrity": "sha512-QCu+ssDbDBnkSH60hxK6bA8Uc6GMPEZt1OTFNr9IdL1ZTUkj/5dIrvALlI/ZpAd63Rx4V6upFgkRpYizBYvEJg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/gaffe.ts": {
"file": "gaffe.js",
@ -45,8 +53,9 @@
"imports": [
"_chunk-7BKSRZNG.F4GWJRq9.js",
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts",
"_exports.dP04ITJc.js"
]
"_exports.BNibT8R5.js"
],
"integrity": "sha512-XTh6W0Xs7w3dLOvTEsH34ngi8skKFWV/yMSp9iPnswMi+gju/mwerleCuqE93Mu6F++H7x3wt7snw4z8A732vQ=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/api.ts": {
"file": "api.js",
@ -56,7 +65,8 @@
"imports": [
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts",
"_Either.DDEPhGsy.js"
]
],
"integrity": "sha512-SqB8dgsNWcDfK+us02BHRxw+Ok3QkAMqt9Lo4G71Fy8mGhotbXfDpvPObdMvxaYEiDY4H+UXxzwSDKFlrQBXJg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/dom.ts": {
"file": "dom2.js",
@ -67,8 +77,9 @@
"_chunk-7BKSRZNG.F4GWJRq9.js",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
"_Either.DDEPhGsy.js",
"_exports.dP04ITJc.js"
]
"_exports.BNibT8R5.js"
],
"integrity": "sha512-qrZ+WIkbmKsNYTJ2//onxS1HzLggo4qK7sRTk/Hst5izujybuIJpe+e7gPWa3yI8OCmt+g7hipt78oWL3Pf6+A=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts": {
"file": "erreurs.js",
@ -76,14 +87,16 @@
"src": "web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
"isEntry": true,
"imports": [
"_exports.dP04ITJc.js"
]
"_exports.BNibT8R5.js"
],
"integrity": "sha512-JylcVjXlYn3U3P34joLUS3SnsE0BP4nuM7DtiJHIPCREaYSmqQpWV7Nd6+aOr9Bv5NEDRUphwHLF5DeffwW2Vw=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/gardes.ts": {
"file": "gardes.js",
"name": "gardes",
"src": "web/app/themes/haiku-atelier-2024/src/scripts/lib/gardes.ts",
"isEntry": true
"isEntry": true,
"integrity": "sha512-vqaGTRWcx2Y2S6rNQNWQAUaPwBGUWEGkauq3HpF2UFDLtWeYPq0fhSyD9B7iMx+YZwSsgjv4laCOu8ihsUVYzg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/gestion-panier.ts": {
"file": "gestion-panier.js",
@ -93,7 +106,8 @@
"imports": [
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts",
"_Either.DDEPhGsy.js"
]
],
"integrity": "sha512-44H494vXGGg9FqI+hSj2UXzFd8TFAmpUIcQDCKXmcJ/0UaCj59/dWW/9wyJe1xzuoc9PQ3dLEcgN/hE04Y4cKg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/messages.ts": {
"file": "messages.js",
@ -105,9 +119,10 @@
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/messages.ts",
"_Either.DDEPhGsy.js",
"_exports.dP04ITJc.js",
"_exports.BNibT8R5.js",
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/messages.ts"
]
],
"integrity": "sha512-b9pltMriGAcDypqE6hQDZ67XSFtZLp2GhS64H/7PCraBqpD3KKqxErPWvVlsy0u5JoT7tAh233kSnFNWZ7BcBg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/reseau.ts": {
"file": "reseau.js",
@ -116,7 +131,8 @@
"isEntry": true,
"imports": [
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/api.ts"
]
],
"integrity": "sha512-Nt9jnR9hXjtYxufmQp1G6MOoNnuWh4HtgiSt8LHlF8rOF+XZ89of+KUQvvfksxcgJ7W8tKYxDs68B7ebaGTCtw=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart-add-item.ts": {
"file": "cart-add-item.js",
@ -125,7 +141,8 @@
"isEntry": true,
"imports": [
"_index.C9ScFdVV.js"
]
],
"integrity": "sha512-aj77TJ3YhBCfWuPdIrU4cP5/jjOGUskdCvUjdF1z9UgKnCKfKjQcV9829AfPDlJj43pd8hmZBvBa6RIcRDGuVg=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart-remove-item.ts": {
"file": "cart-remove-item.js",
@ -134,7 +151,8 @@
"isEntry": true,
"imports": [
"_index.C9ScFdVV.js"
]
],
"integrity": "sha512-ksb8zxVH1SqC+HlC+Y5LUNYI2CZTpLyc1K8akl8dpH8IlVeGcmtVAL+oJyuZ3I6wOzxpTicKj0LmzP5YT2KiwQ=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart.ts": {
"file": "cart.js",
@ -143,7 +161,8 @@
"isEntry": true,
"imports": [
"_index.C9ScFdVV.js"
]
],
"integrity": "sha512-2CHat7wLZuNa2589dZpLckXxQhNo8YzMFBBbiBpRqaDgDyps8Y8hnwOwlo/gf2blPV8lhkQMaVzn3RM14TIeoA=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/erreurs.ts": {
"file": "erreurs2.js",
@ -152,7 +171,8 @@
"isEntry": true,
"imports": [
"_index.C9ScFdVV.js"
]
],
"integrity": "sha512-eI8yOqOBdmtFY3SAR+IWBaj7FhNuKDpbrAg1K8OKl5QlrU+m78xejcTpDt8+FqTdXTDS2LY2EySpDuBT8kBfng=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/messages.ts": {
"file": "messages2.js",
@ -162,7 +182,8 @@
"imports": [
"_index.C9ScFdVV.js",
"web/app/themes/haiku-atelier-2024/src/scripts/constantes/messages.ts"
]
],
"integrity": "sha512-xXCa4oCcnuvDew93KLXCOvVh1JN4vgCS5AeP1fhgbu97RH98rWl1/MQF8+c5YedTtvKQNfeId5LfQM4uCCcHew=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/lib/utils.ts": {
"file": "utils.js",
@ -173,9 +194,10 @@
"web/app/themes/haiku-atelier-2024/src/scripts/lib/dom.ts",
"_chunk-7BKSRZNG.F4GWJRq9.js",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
"_exports.dP04ITJc.js",
"_exports.BNibT8R5.js",
"_Either.DDEPhGsy.js"
]
],
"integrity": "sha512-yN0a8PmVmEmLg4ULsJDr9zEzH9JnozImw4wnopOueDzl5yN6xrm+GBcT/dgYH8jdpmQ1GYtTKvCrsIcB0zHyLA=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/scripts-bouton-panier.ts": {
"file": "scripts-bouton-panier.js",
@ -190,11 +212,12 @@
"web/app/themes/haiku-atelier-2024/src/scripts/lib/messages.ts",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/utils.ts",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
"_exports.dP04ITJc.js",
"_exports.BNibT8R5.js",
"_Either.DDEPhGsy.js",
"_index.C9ScFdVV.js",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/messages.ts"
]
],
"integrity": "sha512-oL/TP1nUTL2L0Cd8s+1q8U47Xyx4J2x2HpvlNx9l5155QpKD/ppBrXhngffiXe+GjC6iv+Rytfa+kMCMaauzPw=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/scripts-page-panier.ts": {
"file": "scripts-page-panier.js",
@ -218,9 +241,10 @@
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/erreurs.ts",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/utils.ts",
"_Either.DDEPhGsy.js",
"_exports.dP04ITJc.js",
"_exports.BNibT8R5.js",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/messages.ts"
]
],
"integrity": "sha512-21LRx7In3xsKuO6+J+UAlwL/NphWXhHdwa+J3rA0te4UJIi2MSleiFiqHk/fXytM6+dfalEzwuBuASeF1glbRQ=="
},
"web/app/themes/haiku-atelier-2024/src/scripts/scripts-page-produit.ts": {
"file": "scripts-page-produit.js",
@ -242,7 +266,8 @@
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/erreurs.ts",
"web/app/themes/haiku-atelier-2024/src/scripts/lib/utils.ts",
"_Either.DDEPhGsy.js",
"_exports.dP04ITJc.js"
]
"_exports.BNibT8R5.js"
],
"integrity": "sha512-a87nfnaiYWWa/g6YZEHRbQ8vx0xM1EhhiOoIkZTUcl3CEyJtRM5hsIA2FkxgsVcRO2w3FrSKHRuZF4jOmx01EQ=="
}
}

View file

@ -1,2 +1,2 @@
const E="aria-selected",T="hidden",a="data-contient-articles",s="disabled",t="data-cle-panier",_="#page-panier",e=".compte-panier a[rel='cart']",n="#selecteur-variation",o="#bouton-ajout-panier",R="a[role='tab']",c="section[role='tabpanel']",N="article",S="button.detail-produit__actions__suppression";export{a as A,e as S,N as a,_ as b,t as c,S as d,o as e,n as f,R as g,c as h,E as i,T as j,s as k};
const E="aria-selected",T="hidden",t="data-contient-articles",a="disabled",s="data-cle-panier",_="#page-panier",o=".compte-panier a[rel='cart']",n="#selecteur-variation",c="#bouton-ajout-panier",e="a[role='tab']",R="section[role='tabpanel']",U="article",N="button.detail-produit__actions__suppression",S="button.detail-produit__actions__soustraction",i="input";export{t as A,o as S,U as a,_ as b,s as c,N as d,S as e,i as f,c as g,n as h,e as i,R as j,E as k,T as l,a as m};
//# sourceMappingURL=dom.js.map

View file

@ -1 +1 @@
{"version":3,"file":"dom.js","sources":["../../src/scripts/constantes/dom.ts"],"sourcesContent":["/** Constantes de valeurs pour la manipulation du DOM : sélecteurs et attributs. */\n\nexport const ATTRIBUT_ARIA_SELECTED = \"aria-selected\";\nexport const ATTRIBUT_ARIA_HIDDEN = \"aria-hidden\";\nexport const ATTRIBUT_HIDDEN = \"hidden\";\nexport const ATTRIBUT_CONTIENT_ARTICLES = \"data-contient-articles\";\nexport const ATTRIBUT_DESACTIVE = \"disabled\";\nexport const ATTRIBUT_CLE_PANIER = \"data-cle-panier\";\n\nexport const SELECTEUR_CONTENEUR_PANIER = \"#page-panier\";\nexport const SELECTEUR_BOUTON_PANIER = \".compte-panier a[rel='cart']\";\nexport const SELECTEUR_SELECTEUR_QUANTITE = \"#selecteur-variation\";\nexport const SELECTEUR_BOUTON_AJOUT_PANIER = \"#bouton-ajout-panier\";\nexport const SELECTEUR_LIENS_ONGLETS = \"a[role='tab']\";\nexport const SELECTEUR_SECTIONS_CONTENUS = \"section[role='tabpanel']\";\n\n// Panier\nexport const SELECTEUR_ENTREES_PANIER = \"article\";\nexport const SELECTEUR_BOUTON_SUPPRESSION_PANIER = \"button.detail-produit__actions__suppression\";\n"],"names":["ATTRIBUT_ARIA_SELECTED","ATTRIBUT_HIDDEN","ATTRIBUT_CONTIENT_ARTICLES","ATTRIBUT_DESACTIVE","ATTRIBUT_CLE_PANIER","SELECTEUR_CONTENEUR_PANIER","SELECTEUR_BOUTON_PANIER","SELECTEUR_SELECTEUR_QUANTITE","SELECTEUR_BOUTON_AJOUT_PANIER","SELECTEUR_LIENS_ONGLETS","SELECTEUR_SECTIONS_CONTENUS","SELECTEUR_ENTREES_PANIER","SELECTEUR_BOUTON_SUPPRESSION_PANIER"],"mappings":"AAEO,MAAMA,EAAyB,gBAEzBC,EAAkB,SAClBC,EAA6B,yBAC7BC,EAAqB,WACrBC,EAAsB,kBAEtBC,EAA6B,eAC7BC,EAA0B,+BAC1BC,EAA+B,uBAC/BC,EAAgC,uBAChCC,EAA0B,gBAC1BC,EAA8B,2BAG9BC,EAA2B,UAC3BC,EAAsC"}
{"version":3,"file":"dom.js","sources":["../../src/scripts/constantes/dom.ts"],"sourcesContent":["/** Constantes de valeurs pour la manipulation du DOM : sélecteurs et attributs. */\n\nexport const ATTRIBUT_ARIA_SELECTED = \"aria-selected\";\nexport const ATTRIBUT_ARIA_HIDDEN = \"aria-hidden\";\nexport const ATTRIBUT_HIDDEN = \"hidden\";\nexport const ATTRIBUT_CONTIENT_ARTICLES = \"data-contient-articles\";\nexport const ATTRIBUT_DESACTIVE = \"disabled\";\nexport const ATTRIBUT_CLE_PANIER = \"data-cle-panier\";\n\nexport const SELECTEUR_CONTENEUR_PANIER = \"#page-panier\";\nexport const SELECTEUR_BOUTON_PANIER = \".compte-panier a[rel='cart']\";\nexport const SELECTEUR_SELECTEUR_QUANTITE = \"#selecteur-variation\";\nexport const SELECTEUR_BOUTON_AJOUT_PANIER = \"#bouton-ajout-panier\";\nexport const SELECTEUR_LIENS_ONGLETS = \"a[role='tab']\";\nexport const SELECTEUR_SECTIONS_CONTENUS = \"section[role='tabpanel']\";\n\n// Panier\nexport const SELECTEUR_ENTREES_PANIER = \"article\";\nexport const SELECTEUR_BOUTON_SUPPRESSION_PANIER = \"button.detail-produit__actions__suppression\";\nexport const SELECTEUR_BOUTON_SOUSTRACTION_QUANTITE = \"button.detail-produit__actions__soustraction\";\nexport const SELECTEUR_BOUTON_ADDITION_QUANTITE = \"button.detail-produit__actions__addition\";\nexport const SELECTEUR_CHAMP_QUANTITE = \"input\";\n"],"names":["ATTRIBUT_ARIA_SELECTED","ATTRIBUT_HIDDEN","ATTRIBUT_CONTIENT_ARTICLES","ATTRIBUT_DESACTIVE","ATTRIBUT_CLE_PANIER","SELECTEUR_CONTENEUR_PANIER","SELECTEUR_BOUTON_PANIER","SELECTEUR_SELECTEUR_QUANTITE","SELECTEUR_BOUTON_AJOUT_PANIER","SELECTEUR_LIENS_ONGLETS","SELECTEUR_SECTIONS_CONTENUS","SELECTEUR_ENTREES_PANIER","SELECTEUR_BOUTON_SUPPRESSION_PANIER","SELECTEUR_BOUTON_SOUSTRACTION_QUANTITE","SELECTEUR_CHAMP_QUANTITE"],"mappings":"AAEO,MAAMA,EAAyB,gBAEzBC,EAAkB,SAClBC,EAA6B,yBAC7BC,EAAqB,WACrBC,EAAsB,kBAEtBC,EAA6B,eAC7BC,EAA0B,+BAC1BC,EAA+B,uBAC/BC,EAAgC,uBAChCC,EAA0B,gBAC1BC,EAA8B,2BAG9BC,EAA2B,UAC3BC,EAAsC,8CACtCC,EAAyC,+CAEzCC,EAA2B"}

View file

@ -1,2 +1,2 @@
import{x as m}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{e as n,f as a,g as c,h as o}from"./erreurs.js";import{E as s,r as E,l as i}from"./Either.DDEPhGsy.js";import"./exports.dP04ITJc.js";function p(e){return e!==null}function l(e){return e===void 0?!0:typeof e=="string"||Array.isArray(e)?e.length===0:Object.keys(e).length===0}const f=e=>e,L=e=>r=>s.encase(()=>e.querySelector(r)).mapLeft(t=>n(c(r))).chain(t=>p(t)?E(t):i(n(o(r)))),R=e=>r=>s.encase(()=>m(e.querySelectorAll(r),Array.from)).mapLeft(t=>n(c(r))).chain(t=>l(t)?i(n(o(r))):E(t)),S=e=>e.caseOf({Left:a,Right:f}),g=e=>e.caseOf({Left:a,Right:f});export{g as a,L as b,R as c,S as r};
import{x as m}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{e as n,f as a,g as c,h as o}from"./erreurs.js";import{E as s,r as E,l as i}from"./Either.DDEPhGsy.js";import"./exports.BNibT8R5.js";function p(e){return e!==null}function l(e){return e===void 0?!0:typeof e=="string"||Array.isArray(e)?e.length===0:Object.keys(e).length===0}const f=e=>e,L=e=>r=>s.encase(()=>e.querySelector(r)).mapLeft(t=>n(c(r))).chain(t=>p(t)?E(t):i(n(o(r)))),R=e=>r=>s.encase(()=>m(e.querySelectorAll(r),Array.from)).mapLeft(t=>n(c(r))).chain(t=>l(t)?i(n(o(r))):E(t)),S=e=>e.caseOf({Left:a,Right:f}),g=e=>e.caseOf({Left:a,Right:f});export{g as a,L as b,R as c,S as r};
//# sourceMappingURL=dom2.js.map

View file

@ -1,2 +1,2 @@
import{$ as o}from"./exports.dP04ITJc.js";const u=r=>`Le selecteur "${r}" est invalide`,d=r=>`La requête "${r}" n'a retourné aucun Élément.`,i=r=>new SyntaxError(r);class s extends Error{constructor(e="400 BadRequestError"){super(e),this.name="BadRequestError"}}class t extends Error{constructor(e="401 UnauthorizedError"){super(e),this.name="UnauthorizedError"}}class n extends Error{constructor(e="404 NotFoundError"){super(e),this.name="NotFoundError"}}class E extends Error{constructor(e="500 ServerError"){super(e),this.name="ServerError"}}class a extends Error{constructor(e){super(JSON.stringify(e)),this.name="UnknownError"}}class l extends Error{constructor(e){super(JSON.stringify(e)),this.name="DOMElementAbsentError"}}const h=r=>new a(r),m=r=>{throw r},w=r=>{throw new s(`(${r.code}) ${r.message}`)},p=r=>{throw new t(`(${r.code}) ${r.message}`)},v=r=>{throw new n(`(${r.code}) ${r.message}`)},R=r=>{throw new E(r)},S=r=>(console.error(r),o(r)),x=r=>{throw o(r),r};export{l as D,h as E,w as a,p as b,v as c,m as d,i as e,x as f,u as g,d as h,R as l,S as r};
import{$ as o}from"./exports.BNibT8R5.js";const u=r=>`Le selecteur "${r}" est invalide`,d=r=>`La requête "${r}" n'a retourné aucun Élément.`,i=r=>new SyntaxError(r);class s extends Error{constructor(e="400 BadRequestError"){super(e),this.name="BadRequestError"}}class t extends Error{constructor(e="401 UnauthorizedError"){super(e),this.name="UnauthorizedError"}}class n extends Error{constructor(e="404 NotFoundError"){super(e),this.name="NotFoundError"}}class E extends Error{constructor(e="500 ServerError"){super(e),this.name="ServerError"}}class a extends Error{constructor(e){super(JSON.stringify(e)),this.name="UnknownError"}}class l extends Error{constructor(e){super(JSON.stringify(e)),this.name="DOMElementAbsentError"}}const h=r=>new a(r),m=r=>{throw r},w=r=>{throw new s(`(${r.code}) ${r.message}`)},p=r=>{throw new t(`(${r.code}) ${r.message}`)},v=r=>{throw new n(`(${r.code}) ${r.message}`)},R=r=>{throw new E(r)},S=r=>(console.error(r),o(r)),x=r=>{throw o(r),r};export{l as D,h as E,w as a,p as b,v as c,m as d,i as e,x as f,u as g,d as h,R as l,S as r};
//# sourceMappingURL=erreurs.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
import{x as _t}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{E as me,a as ge}from"./api2.js";import{i as J,t as yt,c as Ge,D as ae,l as f,g as Et,G as h,C as vt,f as O,o as _e,a as C,b as We,d as V,r as Ye,S as Ke,e as k,h as ce,n as St,j as Xe,k as g,u as bt,m as B,p as ye,q as ue,s as Ee,v as kt,w as It,x as ze,y as Tt,z as Z,A as Je,B as ve,E as y,F as wt,H as Se,I as q,J as Ve,K as be,L as Rt,M as ke,N as le,O as Nt,P as Ct,Q as P,R as Ot,U as $,T as $t,V as Pt,W as Ie,X as Dt,Y as G,Z as Ft,_ as xt}from"./exports.dP04ITJc.js";function Ht(t,e,n=250,r,s,o,i){if(!o.exception||!o.exception.values||!i||!J(i.originalException,Error))return;const a=o.exception.values.length>0?o.exception.values[o.exception.values.length-1]:void 0;a&&(o.exception.values=Lt(Q(t,e,s,i.originalException,r,o.exception.values,a,0),n))}function Q(t,e,n,r,s,o,i,a){if(o.length>=n+1)return o;let c=[...o];if(J(r[s],Error)){Te(i,a);const u=t(e,r[s]),d=c.length;we(u,s,d,a),c=Q(t,e,n,r[s],s,[u,...c],u,d)}return Array.isArray(r.errors)&&r.errors.forEach((u,d)=>{if(J(u,Error)){Te(i,a);const l=t(e,u),m=c.length;we(l,`errors[${d}]`,m,a),c=Q(t,e,n,u,s,[l,...c],l,m)}}),c}function Te(t,e){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism={...t.mechanism,...t.type==="AggregateError"&&{is_exception_group:!0},exception_id:e}}function we(t,e,n,r){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism={...t.mechanism,type:"chained",source:e,exception_id:n,parent_id:r}}function Lt(t,e){return t.map(n=>(n.value&&(n.value=yt(n.value,e)),n))}function Ze(t){if(t!==void 0)return t>=400&&t<500?"warning":t>=500?"error":void 0}const Mt=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Ut(t){return t==="http"||t==="https"}function W(t,e=!1){const{host:n,path:r,pass:s,port:o,projectId:i,protocol:a,publicKey:c}=t;return`${a}://${c}${e&&s?`:${s}`:""}@${n}${o?`:${o}`:""}/${r&&`${r}/`}${i}`}function jt(t){const e=Mt.exec(t);if(!e){Ge(()=>{console.error(`Invalid Sentry Dsn: ${t}`)});return}const[n,r,s="",o="",i="",a=""]=e.slice(1);let c="",u=a;const d=u.split("/");if(d.length>1&&(c=d.slice(0,-1).join("/"),u=d.pop()),u){const l=u.match(/^\d+/);l&&(u=l[0])}return Qe({host:o,pass:s,path:c,projectId:u,port:i,protocol:n,publicKey:r})}function Qe(t){return{protocol:t.protocol,publicKey:t.publicKey||"",pass:t.pass||"",host:t.host,port:t.port||"",path:t.path||"",projectId:t.projectId}}function Bt(t){if(!ae)return!0;const{port:e,projectId:n,protocol:r}=t;return["protocol","publicKey","host","projectId"].find(i=>t[i]?!1:(f.error(`Invalid Sentry Dsn: ${i} missing`),!0))?!1:n.match(/^\d+$/)?Ut(r)?e&&isNaN(parseInt(e,10))?(f.error(`Invalid Sentry Dsn: Invalid port ${e}`),!1):!0:(f.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(f.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function At(t){const e=typeof t=="string"?jt(t):Qe(t);if(!(!e||!Bt(e)))return e}class b extends Error{constructor(e,n="warn"){super(e),this.message=e,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=n}}const A={},Re={};function w(t,e){A[t]=A[t]||[],A[t].push(e)}function R(t,e){Re[t]||(e(),Re[t]=!0)}function S(t,e){const n=t&&A[t];if(n)for(const r of n)try{r(e)}catch(s){ae&&f.error(`Error while triggering instrumentation handler.
import{x as _t}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{E as me,a as ge}from"./api2.js";import{i as J,t as yt,c as Ge,D as ae,l as f,g as Et,G as h,C as vt,f as O,o as _e,a as C,b as We,d as V,r as Ye,S as Ke,e as k,h as ce,n as St,j as Xe,k as g,u as bt,m as B,p as ye,q as ue,s as Ee,v as kt,w as It,x as ze,y as Tt,z as Z,A as Je,B as ve,E as y,F as wt,H as Se,I as q,J as Ve,K as be,L as Rt,M as ke,N as le,O as Nt,P as Ct,Q as P,R as Ot,U as $,T as $t,V as Pt,W as Ie,X as Dt,Y as G,Z as Ft,_ as xt}from"./exports.BNibT8R5.js";function Ht(t,e,n=250,r,s,o,i){if(!o.exception||!o.exception.values||!i||!J(i.originalException,Error))return;const a=o.exception.values.length>0?o.exception.values[o.exception.values.length-1]:void 0;a&&(o.exception.values=Lt(Q(t,e,s,i.originalException,r,o.exception.values,a,0),n))}function Q(t,e,n,r,s,o,i,a){if(o.length>=n+1)return o;let c=[...o];if(J(r[s],Error)){Te(i,a);const u=t(e,r[s]),d=c.length;we(u,s,d,a),c=Q(t,e,n,r[s],s,[u,...c],u,d)}return Array.isArray(r.errors)&&r.errors.forEach((u,d)=>{if(J(u,Error)){Te(i,a);const l=t(e,u),m=c.length;we(l,`errors[${d}]`,m,a),c=Q(t,e,n,u,s,[l,...c],l,m)}}),c}function Te(t,e){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism={...t.mechanism,...t.type==="AggregateError"&&{is_exception_group:!0},exception_id:e}}function we(t,e,n,r){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism={...t.mechanism,type:"chained",source:e,exception_id:n,parent_id:r}}function Lt(t,e){return t.map(n=>(n.value&&(n.value=yt(n.value,e)),n))}function Ze(t){if(t!==void 0)return t>=400&&t<500?"warning":t>=500?"error":void 0}const Mt=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Ut(t){return t==="http"||t==="https"}function W(t,e=!1){const{host:n,path:r,pass:s,port:o,projectId:i,protocol:a,publicKey:c}=t;return`${a}://${c}${e&&s?`:${s}`:""}@${n}${o?`:${o}`:""}/${r&&`${r}/`}${i}`}function jt(t){const e=Mt.exec(t);if(!e){Ge(()=>{console.error(`Invalid Sentry Dsn: ${t}`)});return}const[n,r,s="",o="",i="",a=""]=e.slice(1);let c="",u=a;const d=u.split("/");if(d.length>1&&(c=d.slice(0,-1).join("/"),u=d.pop()),u){const l=u.match(/^\d+/);l&&(u=l[0])}return Qe({host:o,pass:s,path:c,projectId:u,port:i,protocol:n,publicKey:r})}function Qe(t){return{protocol:t.protocol,publicKey:t.publicKey||"",pass:t.pass||"",host:t.host,port:t.port||"",path:t.path||"",projectId:t.projectId}}function Bt(t){if(!ae)return!0;const{port:e,projectId:n,protocol:r}=t;return["protocol","publicKey","host","projectId"].find(i=>t[i]?!1:(f.error(`Invalid Sentry Dsn: ${i} missing`),!0))?!1:n.match(/^\d+$/)?Ut(r)?e&&isNaN(parseInt(e,10))?(f.error(`Invalid Sentry Dsn: Invalid port ${e}`),!1):!0:(f.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(f.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function At(t){const e=typeof t=="string"?jt(t):Qe(t);if(!(!e||!Bt(e)))return e}class b extends Error{constructor(e,n="warn"){super(e),this.message=e,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=n}}const A={},Re={};function w(t,e){A[t]=A[t]||[],A[t].push(e)}function R(t,e){Re[t]||(e(),Re[t]=!0)}function S(t,e){const n=t&&A[t];if(n)for(const r of n)try{r(e)}catch(s){ae&&f.error(`Error while triggering instrumentation handler.
Type: ${t}
Name: ${Et(r)}
Error:`,s)}}function qt(t){const e="console";w(e,t),R(e,Gt)}function Gt(){"console"in h&&vt.forEach(function(t){t in h.console&&O(h.console,t,function(e){return _e[t]=e,function(...n){S("console",{args:n,level:t});const s=_e[t];s&&s.apply(h.console,n)}})})}const ee=h;function Wt(){if(!("fetch"in ee))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function Ne(t){return t&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(t.toString())}function et(){if(typeof EdgeRuntime=="string")return!0;if(!Wt())return!1;if(Ne(ee.fetch))return!0;let t=!1;const e=ee.document;if(e&&typeof e.createElement=="function")try{const n=e.createElement("iframe");n.hidden=!0,e.head.appendChild(n),n.contentWindow&&n.contentWindow.fetch&&(t=Ne(n.contentWindow.fetch)),e.head.removeChild(n)}catch(n){ae&&f.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return t}function tt(t,e){const n="fetch";w(n,t),R(n,()=>Yt(void 0,e))}function Yt(t,e=!1){e&&!et()||O(h,"fetch",function(n){return function(...r){const{method:s,url:o}=Kt(r),i={args:r,fetchData:{method:s,url:o},startTimestamp:C()*1e3};S("fetch",{...i});const a=new Error().stack;return n.apply(h,r).then(async c=>(S("fetch",{...i,endTimestamp:C()*1e3,response:c}),c),c=>{throw S("fetch",{...i,endTimestamp:C()*1e3,error:c}),We(c)&&c.stack===void 0&&(c.stack=a,V(c,"framesToPop",1)),c})}})}function te(t,e){return!!t&&typeof t=="object"&&!!t[e]}function Ce(t){return typeof t=="string"?t:t?te(t,"url")?t.url:t.toString?t.toString():"":""}function Kt(t){if(t.length===0)return{method:"GET",url:""};if(t.length===2){const[n,r]=t;return{url:Ce(n),method:te(r,"method")?String(r.method).toUpperCase():"GET"}}const e=t[0];return{url:Ce(e),method:te(e,"method")?String(e.method).toUpperCase():"GET"}}let H=null;function Xt(t){const e="error";w(e,t),R(e,zt)}function zt(){H=h.onerror,h.onerror=function(t,e,n,r,s){return S("error",{column:r,error:s,line:n,msg:t,url:e}),H&&!H.__SENTRY_LOADER__?H.apply(this,arguments):!1},h.onerror.__SENTRY_INSTRUMENTED__=!0}let L=null;function Jt(t){const e="unhandledrejection";w(e,t),R(e,Vt)}function Vt(){L=h.onunhandledrejection,h.onunhandledrejection=function(t){return S("unhandledrejection",t),L&&!L.__SENTRY_LOADER__?L.apply(this,arguments):!0},h.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function Zt(){return"npm"}function Qt(t){const e=[];function n(){return t===void 0||e.length<t}function r(i){return e.splice(e.indexOf(i),1)[0]||Promise.resolve(void 0)}function s(i){if(!n())return Ye(new b("Not adding Promise because buffer limit was reached."));const a=i();return e.indexOf(a)===-1&&e.push(a),a.then(()=>r(a)).then(null,()=>r(a).then(null,()=>{})),a}function o(i){return new Ke((a,c)=>{let u=e.length;if(!u)return a(!0);const d=setTimeout(()=>{i&&i>0&&a(!1)},i);e.forEach(l=>{k(l).then(()=>{--u||(clearTimeout(d),a(!0))},c)})})}return{$:e,add:s,drain:o}}function X(t){if(!t)return{};const e=t.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!e)return{};const n=e[6]||"",r=e[8]||"";return{host:e[4],path:e[5],protocol:e[2],search:n,hash:r,relative:e[5]+n+r}}const en=["fatal","error","warning","log","info","debug"];function tn(t){return t==="warn"?"warning":en.includes(t)?t:"log"}function D(t,e=[]){return[t,e]}function nn(t,e){const[n,r]=t;return[n,[...r,e]]}function Oe(t,e){const n=t[1];for(const r of n){const s=r[0].type;if(e(r,s))return!0}return!1}function ne(t){return h.__SENTRY__&&h.__SENTRY__.encodePolyfill?h.__SENTRY__.encodePolyfill(t):new TextEncoder().encode(t)}function rn(t){const[e,n]=t;let r=JSON.stringify(e);function s(o){typeof r=="string"?r=typeof o=="string"?r+o:[ne(r),o]:r.push(typeof o=="string"?ne(o):o)}for(const o of n){const[i,a]=o;if(s(`

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
import{p as a}from"./index.C9ScFdVV.js";import{r as o}from"./erreurs.js";import{M as i}from"./messages2.js";import{E as s}from"./Either.DDEPhGsy.js";import"./exports.dP04ITJc.js";import"./messages3.js";const E=r=>s.of(a(i,r.data)).ifLeft(e=>{o(e)});export{E as v};
import{p as a}from"./index.C9ScFdVV.js";import{r as o}from"./erreurs.js";import{M as i}from"./messages2.js";import{E as s}from"./Either.DDEPhGsy.js";import"./exports.BNibT8R5.js";import"./messages3.js";const E=r=>s.of(a(i,r.data)).ifLeft(e=>{o(e)});export{E as v};
//# sourceMappingURL=messages.js.map

View file

@ -1,2 +1,2 @@
import{x as n}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{S as i,A as m}from"./dom.js";import{N as a}from"./messages3.js";import{r as s}from"./dom2.js";import{v as N}from"./messages.js";import{r as p}from"./utils.js";import"./erreurs.js";import"./exports.dP04ITJc.js";import"./Either.DDEPhGsy.js";import"./index.C9ScFdVV.js";import"./messages2.js";const E=()=>{const t=n(p(i),s),r=new BroadcastChannel(a);r.onmessage=o=>{N(o).ifRight(e=>{t.textContent=`cart (${String(e.donnees)})`,t.setAttribute(m,String(e.donnees>0))})}};document.addEventListener("DOMContentLoaded",()=>{E()});
import{x as n}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{S as i,A as m}from"./dom.js";import{N as a}from"./messages3.js";import{r as s}from"./dom2.js";import{v as N}from"./messages.js";import{r as p}from"./utils.js";import"./erreurs.js";import"./exports.BNibT8R5.js";import"./Either.DDEPhGsy.js";import"./index.C9ScFdVV.js";import"./messages2.js";console.debug("mdr");const E=()=>{const e=n(p(i),s),o=new BroadcastChannel(a);o.onmessage=r=>{N(r).ifRight(t=>{e.textContent=`cart (${String(t.donnees)})`,e.setAttribute(m,String(t.donnees>0))})}};document.addEventListener("DOMContentLoaded",()=>{E()});
//# sourceMappingURL=scripts-bouton-panier.js.map

View file

@ -1 +1 @@
{"version":3,"file":"scripts-bouton-panier.js","sources":["../../src/scripts/scripts-bouton-panier.ts"],"sourcesContent":["/**\n * Scripts pour la mise à jour trans-fenêtres/trans-onglets du Bouton du Panier.\n */\n\nimport { pipe } from \"remeda\";\n\nimport type { MiseAJourPanierMessage } from \"./lib/types/messages\";\n\nimport { ATTRIBUT_CONTIENT_ARTICLES, SELECTEUR_BOUTON_PANIER } from \"./constantes/dom.ts\";\nimport { NOM_CANAL_BOUTON_PANIER } from \"./constantes/messages.ts\";\nimport { recupereElementOuLeve } from \"./lib/dom.ts\";\nimport { valideMessageMajPanier } from \"./lib/messages.ts\";\nimport { recupereElementDocumentEither } from \"./lib/utils.ts\";\n\nconst initialiseBoutonPanier = (): void => {\n /** Le « Bouton » vers le Panier dont le texte est un indicateur du nombre de Produits dedans. */\n const BOUTON_PANIER: HTMLAnchorElement = pipe(\n recupereElementDocumentEither<HTMLAnchorElement>(SELECTEUR_BOUTON_PANIER),\n recupereElementOuLeve,\n );\n const CANAL_BOUTON_PANIER: BroadcastChannel = new BroadcastChannel(NOM_CANAL_BOUTON_PANIER);\n\n CANAL_BOUTON_PANIER.onmessage = (evenementMessage: MessageEvent<unknown>): void => {\n valideMessageMajPanier(evenementMessage)\n // Met à jour le Bouton du Panier\n .ifRight((message: MiseAJourPanierMessage) => {\n BOUTON_PANIER.textContent = `cart (${String(message.donnees)})`;\n BOUTON_PANIER.setAttribute(ATTRIBUT_CONTIENT_ARTICLES, String(message.donnees > 0));\n });\n };\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n initialiseBoutonPanier();\n});\n"],"names":["initialiseBoutonPanier","BOUTON_PANIER","pipe","recupereElementDocumentEither","SELECTEUR_BOUTON_PANIER","recupereElementOuLeve","CANAL_BOUTON_PANIER","NOM_CANAL_BOUTON_PANIER","evenementMessage","valideMessageMajPanier","message","ATTRIBUT_CONTIENT_ARTICLES"],"mappings":"0VAcA,MAAMA,EAAyB,IAAY,CAEzC,MAAMC,EAAmCC,EACvCC,EAAiDC,CAAuB,EACxEC,CAAA,EAEIC,EAAwC,IAAI,iBAAiBC,CAAuB,EAEtED,EAAA,UAAaE,GAAkD,CACjFC,EAAuBD,CAAgB,EAEpC,QAASE,GAAoC,CAC5CT,EAAc,YAAc,SAAS,OAAOS,EAAQ,OAAO,CAAC,IAC5DT,EAAc,aAAaU,EAA4B,OAAOD,EAAQ,QAAU,CAAC,CAAC,CAAA,CACnF,CAAA,CAEP,EAEA,SAAS,iBAAiB,mBAAoB,IAAM,CAC3BV,GACzB,CAAC"}
{"version":3,"file":"scripts-bouton-panier.js","sources":["../../src/scripts/scripts-bouton-panier.ts"],"sourcesContent":["/**\n * Scripts pour la mise à jour trans-fenêtres/trans-onglets du Bouton du Panier.\n */\n\nimport { pipe } from \"remeda\";\n\nimport type { MiseAJourPanierMessage } from \"./lib/types/messages\";\n\nimport { ATTRIBUT_CONTIENT_ARTICLES, SELECTEUR_BOUTON_PANIER } from \"./constantes/dom.ts\";\nimport { NOM_CANAL_BOUTON_PANIER } from \"./constantes/messages.ts\";\nimport { recupereElementOuLeve } from \"./lib/dom.ts\";\nimport { valideMessageMajPanier } from \"./lib/messages.ts\";\nimport { recupereElementDocumentEither } from \"./lib/utils.ts\";\n\nconsole.debug(\"mdr\");\n\nconst initialiseBoutonPanier = (): void => {\n /** Le « Bouton » vers le Panier dont le texte est un indicateur du nombre de Produits dedans. */\n const BOUTON_PANIER: HTMLAnchorElement = pipe(\n recupereElementDocumentEither<HTMLAnchorElement>(SELECTEUR_BOUTON_PANIER),\n recupereElementOuLeve,\n );\n const CANAL_BOUTON_PANIER: BroadcastChannel = new BroadcastChannel(NOM_CANAL_BOUTON_PANIER);\n\n CANAL_BOUTON_PANIER.onmessage = (evenementMessage: MessageEvent<unknown>): void => {\n valideMessageMajPanier(evenementMessage)\n // Met à jour le Bouton du Panier\n .ifRight((message: MiseAJourPanierMessage) => {\n BOUTON_PANIER.textContent = `cart (${String(message.donnees)})`;\n BOUTON_PANIER.setAttribute(ATTRIBUT_CONTIENT_ARTICLES, String(message.donnees > 0));\n });\n };\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n initialiseBoutonPanier();\n});\n"],"names":["x","SELECTEUR_BOUTON_PANIER","ATTRIBUT_CONTIENT_ARTICLES","NOM_CANAL_BOUTON_PANIER","recupereElementOuLeve","valideMessageMajPanier","recupereElementDocumentEither","initialiseBoutonPanier","BOUTON_PANIER","pipe","CANAL_BOUTON_PANIER","evenementMessage","message"],"mappings":"AAcA,OAAA,KAAAA,MAAA,+BAAA,OAAA,KAAAC,EAAA,KAAAC,MAAA,WAAA,OAAA,KAAAC,MAAA,iBAAA,OAAA,KAAAC,MAAA,YAAA,OAAA,KAAAC,MAAA,gBAAA,OAAA,KAAAC,MAAA,aAAA,MAAA,eAAA,MAAA,wBAAA,MAAA,uBAAA,MAAA,sBAAA,MAAA,iBAAA,QAAQ,MAAM,KAAK,EAEnB,MAAMC,EAAyB,IAAY,CAEzC,MAAMC,EAAmCC,EACvCH,EAAiDL,CAAuB,EACxEG,CAAA,EAEIM,EAAwC,IAAI,iBAAiBP,CAAuB,EAEtEO,EAAA,UAAaC,GAAkD,CACjFN,EAAuBM,CAAgB,EAEpC,QAASC,GAAoC,CAC5CJ,EAAc,YAAc,SAAS,OAAOI,EAAQ,OAAO,CAAC,IAC5DJ,EAAc,aAAaN,EAA4B,OAAOU,EAAQ,QAAU,CAAC,CAAC,CAAA,CACnF,CAAA,CAEP,EAEA,SAAS,iBAAiB,mBAAoB,IAAM,CAC3BL,GACzB,CAAC"}

View file

@ -1,2 +1,2 @@
import{r as _,p as R,z as u,N as E}from"./index.Dxgx1GXj.js";import{x as t}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{p as m}from"./index.C9ScFdVV.js";import{R as l}from"./api2.js";import{a as T,b as C,c as f,d as I,A as S}from"./dom.js";import{N,T as P}from"./messages3.js";import{a as d,r as O,b as h}from"./dom2.js";import{r as c,D as L,l as v,a as U,b as g,c as B,E as b,d as M}from"./erreurs.js";import{e as w,a as y}from"./gardes.js";import{v as D}from"./messages.js";import{p as W}from"./reseau.js";import{W as k}from"./cart-remove-item.js";import{W as j}from"./cart.js";import{i}from"./erreurs2.js";import{a as x,r as z}from"./utils.js";import{M as G,E as J}from"./Either.DDEPhGsy.js";import"./exports.dP04ITJc.js";import"./messages2.js";const X=_etats,q=t(x(T),d),F=t(z(C),O),Y=()=>{q.forEach(r=>{const o=G.fromNullable(r.getAttribute(f));h(r)(I).ifLeft(()=>t(new L(`L'entrée « ${o.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de suppression.`),c)).ifRight(s=>{s.addEventListener("click",()=>{const p=o.ifNothing(()=>{r.remove()}).orDefault("CLE_PANIER_INEXISTANTE");s.textContent="C= C= C= C= C=┌(;・ω・)┘",J.encase(()=>m(k,{key:p})).map(A=>{W({corps:JSON.stringify(A),nonce:X.nonce,route:l}).then(async e=>{w(e)&&v("500 Server Error"),t(await e.json(),n=>u(n).with({body:E.select(),status:400},i,U).with({body:E.select(),status:401},i,g).with({body:E.select(),status:404},i,B).with(E._,a=>m(j,a)).otherwise(a=>t(a,b,M)),R("items_count"),_(n=>{new BroadcastChannel(N).postMessage({donnees:n,type:P.MiseAJourPanier}),r.remove()}))}).catch(e=>{y(e)?(c(e),console.error(e)):console.error("e n'est pas une Erreur ?!",e)})})})})})},$=()=>{const r=new BroadcastChannel(N);r.onmessage=o=>{D(o).ifRight(s=>{F.setAttribute(S,String(s.donnees!==0))})}};document.addEventListener("DOMContentLoaded",()=>{Y(),$()});
import{r as u,p as C,z as l,N as E}from"./index.Dxgx1GXj.js";import{x as t}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{p as c}from"./index.C9ScFdVV.js";import{R as f}from"./api2.js";import{a as I,b as S,c as d,d as P,e as L,f as O,A as U}from"./dom.js";import{N as T,T as h}from"./messages3.js";import{a as v,r as _,b as i}from"./dom2.js";import{r as m,D as A,l as B,a as g,b as M,c as b,E as w,d as y}from"./erreurs.js";import{e as D,a as W}from"./gardes.js";import{v as k}from"./messages.js";import{p as j}from"./reseau.js";import{W as X}from"./cart-remove-item.js";import{W as x}from"./cart.js";import{i as N}from"./erreurs2.js";import{a as z,r as G}from"./utils.js";import{M as J,E as Q}from"./Either.DDEPhGsy.js";import"./exports.BNibT8R5.js";import"./messages2.js";const $=_etats,q=t(z(I),v),F=t(G(S),_),H=()=>{q.forEach(e=>{const s=J.fromNullable(e.getAttribute(d));i(e)(P).ifLeft(()=>t(new A(`L'entrée « ${s.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de suppression.`),m)).ifRight(o=>{o.addEventListener("click",()=>{const p=s.ifNothing(()=>{e.remove()}).orDefault("CLE_PANIER_INEXISTANTE");o.textContent="C= C= C= C= C=┌(;・ω・)┘",Q.encase(()=>c(X,{key:p})).map(R=>{j({corps:JSON.stringify(R),nonce:$.nonce,route:f}).then(async r=>{D(r)&&B("500 Server Error"),t(await r.json(),n=>l(n).with({body:E.select(),status:400},N,g).with({body:E.select(),status:401},N,M).with({body:E.select(),status:404},N,b).with(E._,a=>c(x,a)).otherwise(a=>t(a,w,y)),C("items_count"),u(n=>{new BroadcastChannel(T).postMessage({donnees:n,type:h.MiseAJourPanier}),e.remove()}))}).catch(r=>{W(r)?(m(r),console.error(r)):console.error("e n'est pas une Erreur ?!",r)})})})}),i(e)(L).ifLeft(()=>t(new A(`L'entrée « ${s.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de soustraction.`),m)).ifRight(o=>{o.addEventListener("click",()=>{t(i(e)(O),_)})})})},Y=()=>{const e=new BroadcastChannel(T);e.onmessage=s=>{k(s).ifRight(o=>{F.setAttribute(U,String(o.donnees!==0))})}};document.addEventListener("DOMContentLoaded",()=>{H(),Y()});
//# sourceMappingURL=scripts-page-panier.js.map

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
import{r as A,p as C,z as O,N as n}from"./index.Dxgx1GXj.js";import{x as o}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{p as f}from"./index.C9ScFdVV.js";import{b as I,c as L}from"./api2.js";import{S as U,e as R,f as g,g as h,h as v,i as u,j as T,k as p}from"./dom.js";import{N as b,T as P}from"./messages3.js";import{r as m,a as l}from"./dom2.js";import{l as w,a as y,b as B,c as D,E as M,d as J,r as j}from"./erreurs.js";import{b as x,e as W,a as G}from"./gardes.js";import{p as k}from"./cart-add-item.js";import{W as q}from"./cart.js";import{i as c}from"./erreurs2.js";import{r as d,a as N}from"./utils.js";import{M as z,E as H}from"./Either.DDEPhGsy.js";import"./exports.dP04ITJc.js";const V=_etats,F=a=>{a.forEach(e=>{e[0].setAttribute(u,"false"),e[1].setAttribute(T,"true")})};o(d(U),m);const s=o(d(R),m),i=o(d(g),m),Q=o(N(h),l),Y=o(N(v),l),K=()=>{const a=new Map;Q.forEach((e,t)=>{const r=e.getAttribute("id"),E=Y[t];if(!r)throw new Error("Le lien ne dispose pas d'ID !");if(!E)throw new Error("Le lien ne dispose pas de section correspondante !");a.set(r,[e,E]),e.addEventListener("click",_=>{_.preventDefault();const S=e.getAttribute(u)==="true";F(o(a.values(),Array.from)),!S&&(e.setAttribute(u,"true"),E.removeAttribute(T))})}),i.addEventListener("change",e=>{o(e.target,z.fromNullable,t=>t.filter(x),t=>t.map(r=>r.validity.valid),t=>t.ifJust(r=>s.toggleAttribute(p,!r)))}),s.addEventListener("click",e=>X())},X=()=>{s.textContent="Adding...",H.encase(()=>k({id:Number(i.value),quantity:1})).map(a=>{fetch(I,{body:JSON.stringify(a),credentials:"same-origin",headers:{Accept:"application/json","Content-Type":"application/json",[L]:V.nonce},method:"POST",mode:"same-origin",signal:AbortSignal.timeout(5e3)}).then(async e=>{W(e)&&w("500 Server Error"),o(await e.json(),t=>O(t).with({body:n.select(),status:400},c,y).with({body:n.select(),status:401},c,B).with({body:n.select(),status:404},c,D).with(n._,r=>f(q,r)).otherwise(r=>o(r,M,J)),A(t=>console.debug("Panier",t)),C("items_count"),A(t=>{s.textContent="Added to cart!",new BroadcastChannel(b).postMessage({donnees:t,type:P.MiseAJourPanier}),setTimeout(()=>{i.value=i.options.item(0)?.value??"--",s.toggleAttribute(p,!0),s.textContent="Add to cart"},3e3)}))}).catch(e=>{G(e)?(j(e),console.error(e)):console.error("e n'est pas une Erreur ?!",e),s.textContent="Add to cart"})})};document.addEventListener("DOMContentLoaded",()=>{K()});
import{r as u,p as C,z as f,N as n}from"./index.Dxgx1GXj.js";import{x as o}from"./chunk-7BKSRZNG.F4GWJRq9.js";import{p as O}from"./index.C9ScFdVV.js";import{b as I,c as L}from"./api2.js";import{g,h,i as U,j as v,k as m,l as d,m as A}from"./dom.js";import{N as R,T as b}from"./messages3.js";import{r as T,a as p}from"./dom2.js";import{l as P,a as w,b as y,c as B,E as D,d as M,r as J}from"./erreurs.js";import{b as j,e as x,a as W}from"./gardes.js";import{p as G}from"./cart-add-item.js";import{W as k}from"./cart.js";import{i as c}from"./erreurs2.js";import{r as l,a as N}from"./utils.js";import{M as q,E as z}from"./Either.DDEPhGsy.js";import"./exports.BNibT8R5.js";const H=_etats,V=a=>{a.forEach(e=>{e[0].setAttribute(m,"false"),e[1].setAttribute(d,"true")})},s=o(l(g),T),i=o(l(h),T),F=o(N(U),p),Q=o(N(v),p),Y=()=>{const a=new Map;F.forEach((e,t)=>{const r=e.getAttribute("id"),E=Q[t];if(!r)throw new Error("Le lien ne dispose pas d'ID !");if(!E)throw new Error("Le lien ne dispose pas de section correspondante !");a.set(r,[e,E]),e.addEventListener("click",_=>{_.preventDefault();const S=e.getAttribute(m)==="true";V(o(a.values(),Array.from)),!S&&(e.setAttribute(m,"true"),E.removeAttribute(d))})}),i.addEventListener("change",e=>{o(e.target,q.fromNullable,t=>t.filter(j),t=>t.map(r=>r.validity.valid),t=>t.ifJust(r=>s.toggleAttribute(A,!r)))}),s.addEventListener("click",e=>K())},K=()=>{s.textContent="Adding...",z.encase(()=>G({id:Number(i.value),quantity:1})).map(a=>{fetch(I,{body:JSON.stringify(a),credentials:"same-origin",headers:{Accept:"application/json","Content-Type":"application/json",[L]:H.nonce},method:"POST",mode:"same-origin",signal:AbortSignal.timeout(5e3)}).then(async e=>{x(e)&&P("500 Server Error"),o(await e.json(),t=>f(t).with({body:n.select(),status:400},c,w).with({body:n.select(),status:401},c,y).with({body:n.select(),status:404},c,B).with(n._,r=>O(k,r)).otherwise(r=>o(r,D,M)),u(t=>console.debug("Panier",t)),C("items_count"),u(t=>{s.textContent="Added to cart!",new BroadcastChannel(R).postMessage({donnees:t,type:b.MiseAJourPanier}),setTimeout(()=>{i.value=i.options.item(0)?.value??"--",s.toggleAttribute(A,!0),s.textContent="Add to cart"},3e3)}))}).catch(e=>{W(e)?(J(e),console.error(e)):console.error("e n'est pas une Erreur ?!",e),s.textContent="Add to cart"})})};document.addEventListener("DOMContentLoaded",()=>{Y()});
//# sourceMappingURL=scripts-page-produit.js.map

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
import{c as e,b as r}from"./dom2.js";import"./chunk-7BKSRZNG.F4GWJRq9.js";import"./erreurs.js";import"./exports.dP04ITJc.js";import"./Either.DDEPhGsy.js";const p=e(document),u=r(document);export{p as a,u as r};
import{c as e,b as r}from"./dom2.js";import"./chunk-7BKSRZNG.F4GWJRq9.js";import"./erreurs.js";import"./exports.BNibT8R5.js";import"./Either.DDEPhGsy.js";const p=e(document),u=r(document);export{p as a,u as r};
//# sourceMappingURL=utils.js.map

View file

@ -4,6 +4,7 @@ declare(strict_types=1);
use Carbon_Fields\Carbon_Fields;
use HaikuAtelier\StarterSite;
use Idleberg\WordPress\ViteAssets\Assets;
use Timber\Timber;
// Récupère les dépendances Composer
@ -156,3 +157,12 @@ function charge_carbon_fields(): void {
Carbon_Fields::boot();
}
add_action("after_setup_theme", "charge_carbon_fields");
/**
* Vite
*/
$baseUrl = get_stylesheet_directory_uri();
$manifest = get_template_directory() . "/assets/js/.vite/manifest.json";
$viteAssets = new Assets(manifestFile: $manifest, basePath: $baseUrl, algorithm: "sha512");
// print_r($viteAssets);
// $viteAssets->inject($entryPoint);

View file

@ -31,6 +31,7 @@ foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
),
"prix" => $cart_item["data"]?->get_price(),
"quantite" => $cart_item["quantity"],
"url" => $cart_item["data"]?->get_permalink(),
"titre" => $cart_item["data"]?->get_title(),
];
}

View file

@ -16,5 +16,6 @@ button {
&[disabled] {
cursor: not-allowed;
background: repeating-conic-gradient(var(--couleur-noir) 0% 25%, transparent 0% 100%) 1px 0.5px / 2px 2px;
}
}

View file

@ -17,3 +17,6 @@ export const SELECTEUR_SECTIONS_CONTENUS = "section[role='tabpanel']";
// Panier
export const SELECTEUR_ENTREES_PANIER = "article";
export const SELECTEUR_BOUTON_SUPPRESSION_PANIER = "button.detail-produit__actions__suppression";
export const SELECTEUR_BOUTON_SOUSTRACTION_QUANTITE = "button.detail-produit__actions__soustraction";
export const SELECTEUR_BOUTON_ADDITION_QUANTITE = "button.detail-produit__actions__addition";
export const SELECTEUR_CHAMP_QUANTITE = "input";

View file

@ -10,12 +10,19 @@ import { ROUTE_API_RETIRE_ARTICLE_PANIER } from "./constantes/api.ts";
import {
ATTRIBUT_CLE_PANIER,
ATTRIBUT_CONTIENT_ARTICLES,
SELECTEUR_BOUTON_SOUSTRACTION_QUANTITE,
SELECTEUR_BOUTON_SUPPRESSION_PANIER,
SELECTEUR_CHAMP_QUANTITE,
SELECTEUR_CONTENEUR_PANIER,
SELECTEUR_ENTREES_PANIER,
} from "./constantes/dom.ts";
import { NOM_CANAL_BOUTON_PANIER, TYPES_MESSAGES } from "./constantes/messages.ts";
import { recupereElementAvecSelecteur, recupereElementOuLeve, recupereElementsOuLeve } from "./lib/dom.ts";
import {
recupereElementAvecSelecteur,
recupereElementOuLeve,
recupereElementsAvecSelecteur,
recupereElementsOuLeve,
} from "./lib/dom.ts";
import {
DOMElementAbsentError,
ErreurInconnue,
@ -154,10 +161,30 @@ const initialiseScriptsPagePanier = (): void => {
);
});
});
recupereElementAvecSelecteur(entree)<HTMLButtonElement>(SELECTEUR_BOUTON_SOUSTRACTION_QUANTITE)
// Remplace la SyntaxError par une Erreur plus détaillée et parlante
.ifLeft(() =>
pipe(
new DOMElementAbsentError(
`L'entrée « ${maybeClePanier.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de soustraction.`,
),
reporteErreur,
)
)
.ifRight((bouton: HTMLButtonElement) => {
bouton.addEventListener("click", () => {
const champQuantite: HTMLInputElement = pipe(
recupereElementAvecSelecteur(entree)<HTMLInputElement>(SELECTEUR_CHAMP_QUANTITE),
recupereElementOuLeve,
);
const valeur: number = champQuantite.valueAsNumber;
});
});
});
};
const initialisePagePanier = (): void => {
const initialiseMajConteneurPanier = (): void => {
const CANAL_BOUTON_PANIER: BroadcastChannel = new BroadcastChannel(NOM_CANAL_BOUTON_PANIER);
CANAL_BOUTON_PANIER.onmessage = (evenementMessage: MessageEvent<unknown>): void => {
valideMessageMajPanier(evenementMessage)
@ -170,5 +197,5 @@ const initialisePagePanier = (): void => {
document.addEventListener("DOMContentLoaded", () => {
initialiseScriptsPagePanier();
initialisePagePanier();
initialiseMajConteneurPanier();
});

View file

@ -62,11 +62,6 @@ const deplieToutesSections = (ensembleLiensContenus: Array<EnsembleLienContenu>)
};
// Éléments d'intérêt
/** Le « Bouton » vers le Panier dont le texte est un indicateur du nombre de Produits dedans. */
const BOUTON_PANIER: HTMLAnchorElement = pipe(
recupereElementDocumentEither<HTMLAnchorElement>(SELECTEUR_BOUTON_PANIER),
recupereElementOuLeve,
);
/** Le Bouton permettant l'ajout d'un Produit dans le Panier. */
const BOUTON_AJOUT_PANIER: HTMLButtonElement = pipe(
recupereElementDocumentEither<HTMLButtonElement>(SELECTEUR_BOUTON_AJOUT_PANIER),

View file

@ -27,11 +27,14 @@
{% for produit in produits_panier %}
<article class="panneau__grille-produits__produit" data-cle-panier="{{ produit.cle }}">
<div class="panneau__grille-produits__produit__illustratif">
{{ produit.image }}
<a href="{{ produit.url }}">{{ produit.image }}</a>
</div>
<div class="panneau__grille-produits__produit__textuel detail-produit">
<h3 class="detail-produit__nom-prix">{{ produit.titre }}. <span>{{ produit.prix }} €</span></h3>
<h3 class="detail-produit__nom-prix">
<a href="{{ produit.url }}">{{ produit.titre }}.</a>
<span>{{ produit.prix }} €</span>
</h3>
<p class="detail-produit__description">
{# Affiche tous les attributs relevants pour la variation choisie #}
{% for attribut in produit.attributs %}
@ -42,9 +45,15 @@
</p>
<div class="detail-produit__actions">
<button type="button">-</button>
<input min="0" type="number" value="{{ produit.quantite }}" />
<button type="button">+</button>
<button
class="detail-produit__actions__soustraction"
{{ produit.quantite > 1 ? "" : "disabled" }}
type="button"
>
-
</button>
<input min="1" type="number" value="{{ produit.quantite }}" />
<button class="detail-produit__actions__addition" type="button">+</button>
<button class="detail-produit__actions__suppression" type="button">Remove</button>
</div>