POST https://edouk.com/

Query Metrics

27 Database Queries
12 Different statements
1940.08 ms Query time
0 Invalid entities
6 Managed entities

Queries

Group similar statements

# Time Info
1 62.59 ms
SELECT t0.id AS id_1, t0.user_reference AS user_reference_2, t0.reference AS reference_3, t0.slug AS slug_4, t0.status AS status_5, t0.theme AS theme_6, t0.brand AS brand_7, t0.colors AS colors_8, t0.contact AS contact_9, t0.fonts AS fonts_10, t0.free_delivery AS free_delivery_11, t0.meta AS meta_12, t0.network AS network_13, t0.products AS products_14, t0.web AS web_15, t0.application AS application_16, t0.config AS config_17, t0.addon AS addon_18, t0.is_for_preview AS is_for_preview_19, t0.website_onboarded AS website_onboarded_20, t0.plan AS plan_21, t0.version AS version_22, t0.created_at AS created_at_23, t0.edited_at AS edited_at_24, t0.expire_at AS expire_at_25, t0.user_id AS user_id_26 FROM website t0 WHERE t0.slug = ? LIMIT 1
Parameters:
[
  "ed240os"
]
2 62.55 ms
SELECT t0.id AS id_1, t0.user_reference AS user_reference_2, t0.reference AS reference_3, t0.slug AS slug_4, t0.status AS status_5, t0.theme AS theme_6, t0.brand AS brand_7, t0.colors AS colors_8, t0.contact AS contact_9, t0.fonts AS fonts_10, t0.free_delivery AS free_delivery_11, t0.meta AS meta_12, t0.network AS network_13, t0.products AS products_14, t0.web AS web_15, t0.application AS application_16, t0.config AS config_17, t0.addon AS addon_18, t0.is_for_preview AS is_for_preview_19, t0.website_onboarded AS website_onboarded_20, t0.plan AS plan_21, t0.version AS version_22, t0.created_at AS created_at_23, t0.edited_at AS edited_at_24, t0.expire_at AS expire_at_25, t0.user_id AS user_id_26 FROM website t0 WHERE t0.slug = ? LIMIT 1
Parameters:
[
  "edhun6a"
]
3 62.60 ms
SELECT t0.id AS id_1, t0.user_reference AS user_reference_2, t0.reference AS reference_3, t0.slug AS slug_4, t0.status AS status_5, t0.theme AS theme_6, t0.brand AS brand_7, t0.colors AS colors_8, t0.contact AS contact_9, t0.fonts AS fonts_10, t0.free_delivery AS free_delivery_11, t0.meta AS meta_12, t0.network AS network_13, t0.products AS products_14, t0.web AS web_15, t0.application AS application_16, t0.config AS config_17, t0.addon AS addon_18, t0.is_for_preview AS is_for_preview_19, t0.website_onboarded AS website_onboarded_20, t0.plan AS plan_21, t0.version AS version_22, t0.created_at AS created_at_23, t0.edited_at AS edited_at_24, t0.expire_at AS expire_at_25, t0.user_id AS user_id_26 FROM website t0 WHERE t0.slug = ? LIMIT 1
Parameters:
[
  "ed1u67w"
]
4 62.25 ms
"START TRANSACTION"
Parameters:
[]
5 63.29 ms
INSERT INTO `user` (email, phone, roles, password, user_reference, firstname, lastname, country, login_count, last_ip, reset_token, reset_token_expires_at, credits, last_login_at, created_at, edited_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Parameters:
[
  "user14727275@edouk.com"
  null
  "["ROLE_ADMIN"]"
  "$2y$13$9v8ebisygqlii6HIVJb1l.NIUiphOmD3lHjUCaLIBgF7AInExqppq"
  87321331
  null
  null
  null
  0
  null
  null
  null
  200
  null
  "2026-04-01 23:04:24"
  null
]
6 133.31 ms
INSERT INTO setting (user_reference, base, delivery, created_at, edited_at, user_id) VALUES (?, ?, ?, ?, ?, ?)
Parameters:
[
  87321331
  "{"version":1,"user":{"country":{"active":"dz","available":["dz","tn","ma","eg","ae","sa","qa","om","jo","bh","kw"]}},"cart":{"multi":false,"active":"form","available":["form","cart","checkout"],"setup":{"country":false,"town":true,"city":true,"coupon":false,"address":false,"relay":false,"email":false,"phone":true,"name":{"active":"fullname","available":["fullname","standard"]},"user":{"mode":"disabled","available":["optional","required","disabled"]},"purchase":{"mode":"cod","multi":false,"available":["cod","stripe","checkout","paypal"]}}},"delivery":{"dz":{"zrexpress":{"token":"","key":"","enable":false},"ecomdelivery":{"token":"","key":"","enable":false},"yalidine":{"id":"","token":"","wilaya":"","enable":false},"yalitic":{"id":"","token":"","wilaya":"","enable":false},"guepex":{"id":"","token":"","wilaya":"","enable":false}},"tn":[],"ma":[],"eg":[],"ae":[],"sa":[],"qa":[],"om":[],"jo":[],"bh":[],"kw":[]},"telegram":{"config":[],"enable":false}}"
  "{"version":1,"data":{"dz":{"wilaya":{"adrar":{"active":true,"details":{"code":"01","label":{"en":"Adrar","fr":"Adrar","ar":"\u0623\u062f\u0631\u0627\u0631"},"price":{"home":700,"relay":350}}},"chlef":{"active":true,"details":{"code":"02","label":{"en":"Chlef","fr":"Chlef","ar":"\u0627\u0644\u0634\u0644\u0641"},"price":{"home":700,"relay":350}}},"laghouat":{"active":true,"details":{"code":"03","label":{"en":"Laghouat","fr":"Laghouat","ar":"\u0627\u0644\u0623\u063a\u0648\u0627\u0637"},"price":{"home":700,"relay":350}}},"oumElBouaghi":{"active":true,"details":{"code":"04","label":{"en":"Oum El Bouaghi","fr":"Oum El Bouaghi","ar":"\u0623\u0645 \u0627\u0644\u0628\u0648\u0627\u0642\u064a"},"price":{"home":700,"relay":350}}},"batna":{"active":true,"details":{"code":"05","label":{"en":"Batna","fr":"Batna","ar":"\u0628\u0627\u062a\u0646\u0629"},"price":{"home":700,"relay":350}}},"bejaia":{"active":true,"details":{"code":"06","label":{"en":"Bejaia","fr":"B\u00e9ja\u00efa","ar":"\u0628\u062c\u0627\u064a\u0629"},"price":{"home":700,"relay":350}}},"biskra":{"active":true,"details":{"code":"07","label":{"en":"Biskra","fr":"Biskra","ar":"\u0628\u0633\u0643\u0631\u0629"},"price":{"home":700,"relay":350}}},"bechar":{"active":true,"details":{"code":"08","label":{"en":"Bechar","fr":"B\u00e9char","ar":"\u0628\u0634\u0627\u0631"},"price":{"home":700,"relay":350}}},"blida":{"active":true,"details":{"code":"09","label":{"en":"Blida","fr":"Blida","ar":"\u0627\u0644\u0628\u0644\u064a\u062f\u0629"},"price":{"home":700,"relay":350}}},"bouira":{"active":true,"details":{"code":"10","label":{"en":"Bouira","fr":"Bouira","ar":"\u0627\u0644\u0628\u0648\u064a\u0631\u0629"},"price":{"home":700,"relay":350}}},"tamanrasset":{"active":true,"details":{"code":"11","label":{"en":"Tamanrasset","fr":"Tamanrasset","ar":"\u062a\u0645\u0646\u0631\u0627\u0633\u062a"},"price":{"home":700,"relay":350}}},"tebessa":{"active":true,"details":{"code":"12","label":{"en":"Tebessa","fr":"T\u00e9bessa","ar":"\u062a\u0628\u0633\u0629"},"price":{"home":700,"relay":350}}},"tlemcen":{"active":true,"details":{"code":"13","label":{"en":"Tlemcen","fr":"Tlemcen","ar":"\u062a\u0644\u0645\u0633\u0627\u0646"},"price":{"home":700,"relay":350}}},"tiaret":{"active":true,"details":{"code":"14","label":{"en":"Tiaret","fr":"Tiaret","ar":"\u062a\u064a\u0627\u0631\u062a"},"price":{"home":700,"relay":350}}},"tiziOuzou":{"active":true,"details":{"code":"15","label":{"en":"Tizi Ouzou","fr":"Tizi Ouzou","ar":"\u062a\u064a\u0632\u064a \u0648\u0632\u0648"},"price":{"home":700,"relay":350}}},"alger":{"active":true,"details":{"code":"16","label":{"en":"Algiers","fr":"Alger","ar":"\u0627\u0644\u062c\u0632\u0627\u0626\u0631"},"price":{"home":700,"relay":350}}},"djelfa":{"active":true,"details":{"code":"17","label":{"en":"Djelfa","fr":"Djelfa","ar":"\u0627\u0644\u062c\u0644\u0641\u0629"},"price":{"home":700,"relay":350}}},"jijel":{"active":true,"details":{"code":"18","label":{"en":"Jijel","fr":"Jijel","ar":"\u062c\u064a\u062c\u0644"},"price":{"home":700,"relay":350}}},"setif":{"active":true,"details":{"code":"19","label":{"en":"Setif","fr":"S\u00e9tif","ar":"\u0633\u0637\u064a\u0641"},"price":{"home":700,"relay":350}}},"saida":{"active":true,"details":{"code":"20","label":{"en":"Saida","fr":"Sa\u00efda","ar":"\u0633\u0639\u064a\u062f\u0629"},"price":{"home":700,"relay":350}}},"skikda":{"active":true,"details":{"code":"21","label":{"en":"Skikda","fr":"Skikda","ar":"\u0633\u0637\u0650\u0642\u064e\u0629"},"price":{"home":700,"relay":350}}},"sidiBelAbbes":{"active":true,"details":{"code":"22","label":{"en":"Sidi Bel Abbes","fr":"Sidi Bel Abb\u00e8s","ar":"\u0633\u064a\u062f\u064a \u0628\u0644\u0639\u0628\u0627\u0633"},"price":{"home":700,"relay":350}}},"annaba":{"active":true,"details":{"code":"23","label":{"en":"Annaba","fr":"Annaba","ar":"\u0639\u0646\u0627\u0628\u0629"},"price":{"home":700,"relay":350}}},"guelma":{"active":true,"details":{"code":"24","label":{"en":"Guelma","fr":"Guelma","ar":"\u0642\u0627\u0644\u0645\u0629"},"price":{"home":700,"relay":350}}},"constantine":{"active":true,"details":{"code":"25","label":{"en":"Constantine","fr":"Constantine","ar":"\u0642\u0633\u0646\u0637\u064a\u0646\u0629"},"price":{"home":700,"relay":350}}},"medea":{"active":true,"details":{"code":"26","label":{"en":"Medea","fr":"M\u00e9d\u00e9a","ar":"\u0627\u0644\u0645\u062f\u064a\u0629"},"price":{"home":700,"relay":350}}},"mostaganem":{"active":true,"details":{"code":"27","label":{"en":"Mostaganem","fr":"Mostaganem","ar":"\u0645\u0639\u0633\u0643\u0631"},"price":{"home":700,"relay":350}}},"msila":{"active":true,"details":{"code":"28","label":{"en":"M sila","fr":"M Sila","ar":"\u0627\u0644\u0645\u0633\u064a\u0644\u0629"},"price":{"home":700,"relay":350}}},"mascara":{"active":true,"details":{"code":"29","label":{"en":"Mascara","fr":"Mascara","ar":"\u0645\u0639\u0633\u0643\u0631"},"price":{"home":700,"relay":350}}},"ouargla":{"active":true,"details":{"code":"30","label":{"en":"Ouargla","fr":"Ouargla","ar":"\u0648\u0631\u0642\u0644\u0629"},"price":{"home":700,"relay":350}}},"oran":{"active":true,"details":{"code":"31","label":{"en":"Oran","fr":"Oran","ar":"\u0648\u0647\u0631\u0627\u0646"},"price":{"home":700,"relay":350}}},"elBayadh":{"active":true,"details":{"code":"32","label":{"en":"El Bayadh","fr":"El Bayadh","ar":"\u0627\u0644\u0628\u064a\u0636"},"price":{"home":700,"relay":350}}},"illizi":{"active":true,"details":{"code":"33","label":{"en":"Illizi","fr":"Illizi","ar":"\u0625\u0644\u064a\u0632\u064a"},"price":{"home":700,"relay":350}}},"bordjBouArreridj":{"active":true,"details":{"code":"34","label":{"en":"Bordj Bou Arreridj","fr":"Bordj Bou Arreridj","ar":"\u0628\u0631\u062c \u0628\u0648\u0639\u0631\u064a\u0631\u064a\u062c"},"price":{"home":700,"relay":350}}},"boumerdes":{"active":true,"details":{"code":"35","label":{"en":"Boumerdes","fr":"Boumerd\u00e8s","ar":"\u0628\u0648\u0645\u0631\u062f\u0627\u0633"},"price":{"home":700,"relay":350}}},"elTarf":{"active":true,"details":{"code":"36","label":{"en":"El Tarf","fr":"El Tarf","ar":"\u0627\u0644\u0637\u0627\u0631\u0641"},"price":{"home":700,"relay":350}}},"tindouf":{"active":true,"details":{"code":"37","label":{"en":"Tindouf","fr":"Tindouf","ar":"\u062a\u0646\u062f\u0648\u0641"},"price":{"home":700,"relay":350}}},"tissemsilt":{"active":true,"details":{"code":"38","label":{"en":"Tissemsilt","fr":"Tissemsilt","ar":"\u062a\u064a\u0633\u0645\u0633\u064a\u0644\u062a"},"price":{"home":700,"relay":350}}},"elOued":{"active":true,"details":{"code":"39","label":{"en":"El Oued","fr":"El Oued","ar":"\u0627\u0644\u0648\u0627\u062f\u064a"},"price":{"home":700,"relay":350}}},"khenchela":{"active":true,"details":{"code":"40","label":{"en":"Khenchela","fr":"Khenchela","ar":"\u062e\u0646\u0634\u0644\u0629"},"price":{"home":700,"relay":350}}},"soukAhras":{"active":true,"details":{"code":"41","label":{"en":"Souk Ahras","fr":"Souk Ahras","ar":"\u0633\u0648\u0642 \u0623\u0647\u0631\u0627\u0633"},"price":{"home":700,"relay":350}}},"tipaza":{"active":true,"details":{"code":"42","label":{"en":"Tipaza","fr":"Tipaza","ar":"\u062a\u064a\u0628\u0627\u0632\u0629"},"price":{"home":700,"relay":350}}},"mila":{"active":true,"details":{"code":"43","label":{"en":"Mila","fr":"Mila","ar":"\u0645\u064a\u0644\u0629"},"price":{"home":700,"relay":350}}},"ainDefla":{"active":true,"details":{"code":"44","label":{"en":"Ain Defla","fr":"A\u00efn Defla","ar":"\u0639\u064a\u0646 \u0627\u0644\u062f\u0641\u0644\u0649"},"price":{"home":700,"relay":350}}},"naama":{"active":true,"details":{"code":"45","label":{"en":"Naama","fr":"Na\u00e2ma","ar":"\u0627\u0644\u0646\u0639\u0627\u0645\u0629"},"price":{"home":700,"relay":350}}},"ainTemouchent":{"active":true,"details":{"code":"46","label":{"en":"Ain Temouchent","fr":"A\u00efn T\u00e9mouchent","ar":"\u0639\u064a\u0646 \u062a\u0645\u0648\u0634\u0646\u062a"},"price":{"home":700,"relay":350}}},"ghardaia":{"active":true,"details":{"code":"47","label":{"en":"Ghardaia","fr":"Gharda\u00efa","ar":"\u063a\u0631\u062f\u0627\u064a\u0629"},"price":{"home":700,"relay":350}}},"relizane":{"active":true,"details":{"code":"48","label":{"en":"Relizane","fr":"Relizane","ar":"\u063a\u0644\u064a\u0632\u0627\u0646"},"price":{"home":700,"relay":350}}},"timimoun":{"active":true,"details":{"code":"49","label":{"en":"Timimoun","fr":"Timimoun","ar":"\u062a\u064a\u0645\u064a\u0645\u0648\u0646"},"price":{"home":700,"relay":350}}},"bordjBadjiMokhtar":{"active":true,"details":{"code":"50","label":{"en":"Bordj Badji Mokhtar","fr":"Bordj Badji Mokhtar","ar":"\u0628\u0631\u062c \u0628\u0627\u062c\u064a \u0645\u062e\u062a\u0627\u0631"},"price":{"home":700,"relay":350}}},"ouledDjellal":{"active":true,"details":{"code":"51","label":{"en":"Ouled Djellal","fr":"Ouled Djellal","ar":"\u0623\u0648\u0644\u0627\u062f \u062c\u0644\u0627\u0644"},"price":{"home":700,"relay":350}}},"beniAbbes":{"active":true,"details":{"code":"52","label":{"en":"Beni Abbes","fr":"B\u00e9ni Abb\u00e8s","ar":"\u0628\u0646\u064a \u0639\u0628\u0627\u0633"},"price":{"home":700,"relay":350}}},"inSalah":{"active":true,"details":{"code":"53","label":{"en":"In Salah","fr":"In Salah","ar":"\u0625\u0646 \u0635\u0627\u0644\u062d"},"price":{"home":700,"relay":350}}},"inGuezzam":{"active":true,"details":{"code":"54","label":{"en":"In Guezzam","fr":"In Guezzam","ar":"\u0625\u0646 \u0642\u0632\u0627\u0645"},"price":{"home":700,"relay":350}}},"touggourt":{"active":true,"details":{"code":"55","label":{"en":"Touggourt","fr":"Touggourt","ar":"\u062a\u0642\u0631\u062a"},"price":{"home":700,"relay":350}}},"djanet":{"active":true,"details":{"code":"56","label":{"en":"Djanet","fr":"Djanet","ar":"\u062c\u0627\u0646\u062a"},"price":{"home":700,"relay":350}}},"elMghair":{"active":true,"details":{"code":"57","label":{"en":"El M Ghair","fr":"El M Ghair","ar":"\u0627\u0644\u0645\u063a\u064a\u0631"},"price":{"home":700,"relay":350}}},"elMeniaa":{"active":true,"details":{"code":"58","label":{"en":"El Meniaa","fr":"El Meniaa","ar":"\u0627\u0644\u0645\u0646\u064a\u0639\u0629"},"price":{"home":700,"relay":350}}}}},"tn":{"wilaya":{"tunis":{"active":true,"details":{"code":"01","label":{"en":"Tunis","fr":"Tunis","ar":"\u062a\u0648\u0646\u0633"},"price":{"home":700,"relay":350}}},"ariana":{"active":true,"details":{"code":"02","label":{"en":"Ariana","fr":"Ariana","ar":"\u0623\u0631\u064a\u0627\u0646\u0629"},"price":{"home":700,"relay":350}}},"benArous":{"active":true,"details":{"code":"03","label":{"en":"Ben Arous","fr":"Ben Arous","ar":"\u0628\u0646 \u0639\u0631\u0648\u0633"},"price":{"home":700,"relay":350}}},"manouba":{"active":true,"details":{"code":"04","label":{"en":"Manouba","fr":"Manouba","ar":"\u0645\u0646\u0648\u0628\u0629"},"price":{"home":700,"relay":350}}},"nabeul":{"active":true,"details":{"code":"05","label":{"en":"Nabeul","fr":"Nabeul","ar":"\u0646\u0627\u0628\u0644"},"price":{"home":700,"relay":350}}},"zaghouan":{"active":true,"details":{"code":"06","label":{"en":"Zaghouan","fr":"Zaghouan","ar":"\u0632\u063a\u0648\u0627\u0646"},"price":{"home":700,"relay":350}}},"bizerte":{"active":true,"details":{"code":"07","label":{"en":"Bizerte","fr":"Bizerte","ar":"\u0628\u0646\u0632\u0631\u062a"},"price":{"home":700,"relay":350}}},"beja":{"active":true,"details":{"code":"08","label":{"en":"Beja","fr":"B\u00e9ja","ar":"\u0628\u0627\u062c\u0629"},"price":{"home":700,"relay":350}}},"jendouba":{"active":true,"details":{"code":"09","label":{"en":"Jendouba","fr":"Jendouba","ar":"\u062c\u0646\u062f\u0648\u0628\u0629"},"price":{"home":700,"relay":350}}},"kef":{"active":true,"details":{"code":"10","label":{"en":"Kef","fr":"Le Kef","ar":"\u0627\u0644\u0643\u0627\u0641"},"price":{"home":700,"relay":350}}},"siliana":{"active":true,"details":{"code":"11","label":{"en":"Siliana","fr":"Siliana","ar":"\u0633\u0644\u064a\u0627\u0646\u0629"},"price":{"home":700,"relay":350}}},"sousse":{"active":true,"details":{"code":"12","label":{"en":"Sousse","fr":"Sousse","ar":"\u0633\u0648\u0633\u0629"},"price":{"home":700,"relay":350}}},"monastir":{"active":true,"details":{"code":"13","label":{"en":"Monastir","fr":"Monastir","ar":"\u0627\u0644\u0645\u0646\u0633\u062a\u064a\u0631"},"price":{"home":700,"relay":350}}},"mahdia":{"active":true,"details":{"code":"14","label":{"en":"Mahdia","fr":"Mahdia","ar":"\u0627\u0644\u0645\u0647\u062f\u064a\u0629"},"price":{"home":700,"relay":350}}},"sfax":{"active":true,"details":{"code":"15","label":{"en":"Sfax","fr":"Sfax","ar":"\u0635\u0641\u0627\u0642\u0633"},"price":{"home":700,"relay":350}}},"kairouan":{"active":true,"details":{"code":"16","label":{"en":"Kairouan","fr":"Kairouan","ar":"\u0627\u0644\u0642\u064a\u0631\u0648\u0627\u0646"},"price":{"home":700,"relay":350}}},"kasserine":{"active":true,"details":{"code":"17","label":{"en":"Kasserine","fr":"Kasserine","ar":"\u0627\u0644\u0642\u0635\u0631\u064a\u0646"},"price":{"home":700,"relay":350}}},"sidiBouzid":{"active":true,"details":{"code":"18","label":{"en":"Sidi Bouzid","fr":"Sidi Bouzid","ar":"\u0633\u064a\u062f\u064a \u0628\u0648\u0632\u064a\u062f"},"price":{"home":700,"relay":350}}},"gabes":{"active":true,"details":{"code":"19","label":{"en":"Gabes","fr":"Gab\u00e8s","ar":"\u0642\u0627\u0628\u0633"},"price":{"home":700,"relay":350}}},"medenine":{"active":true,"details":{"code":"20","label":{"en":"Medenine","fr":"M\u00e9denine","ar":"\u0645\u062f\u0646\u064a\u0646"},"price":{"home":700,"relay":350}}},"tataouine":{"active":true,"details":{"code":"21","label":{"en":"Tataouine","fr":"Tataouine","ar":"\u062a\u0637\u0627\u0648\u064a\u0646"},"price":{"home":700,"relay":350}}},"gafsa":{"active":true,"details":{"code":"22","label":{"en":"Gafsa","fr":"Gafsa","ar":"\u0642\u0641\u0635\u0629"},"price":{"home":700,"relay":350}}},"tozeur":{"active":true,"details":{"code":"23","label":{"en":"Tozeur","fr":"Tozeur","ar":"\u062a\u0648\u0632\u0631"},"price":{"home":700,"relay":350}}},"kebili":{"active":true,"details":{"code":"24","label":{"en":"Kebili","fr":"K\u00e9bili","ar":"\u0642\u0628\u0644\u064a"},"price":{"home":700,"relay":350}}}}},"ma":{"wilaya":{"tangerTetouan":{"active":true,"details":{"code":"01","label":{"en":"Tanger-Tetouan-Al Hoceima","fr":"Tanger-T\u00e9touan-Al Hoce\u00efma","ar":"\u0637\u0646\u062c\u0629 \u062a\u0637\u0648\u0627\u0646 \u0627\u0644\u062d\u0633\u064a\u0645\u0629"},"price":{"home":700,"relay":350}}},"oriental":{"active":true,"details":{"code":"02","label":{"en":"Oriental","fr":"Oriental","ar":"\u0627\u0644\u0634\u0631\u0642"},"price":{"home":700,"relay":350}}},"fesMeknes":{"active":true,"details":{"code":"03","label":{"en":"Fes-Meknes","fr":"F\u00e8s-Mekn\u00e8s","ar":"\u0641\u0627\u0633 \u0645\u0643\u0646\u0627\u0633"},"price":{"home":700,"relay":350}}},"rabatSaleKenitra":{"active":true,"details":{"code":"04","label":{"en":"Rabat-Sale-Kenitra","fr":"Rabat-Sal\u00e9-K\u00e9nitra","ar":"\u0627\u0644\u0631\u0628\u0627\u0637 \u0633\u0644\u0627 \u0627\u0644\u0642\u0646\u064a\u0637\u0631\u0629"},"price":{"home":700,"relay":350}}},"beniMellalKhenifra":{"active":true,"details":{"code":"05","label":{"en":"Beni Mellal-Khenifra","fr":"B\u00e9ni Mellal-Kh\u00e9nifra","ar":"\u0628\u0646\u064a \u0645\u0644\u0627\u0644 \u062e\u0646\u064a\u0641\u0631\u0629"},"price":{"home":700,"relay":350}}},"casablancaSettat":{"active":true,"details":{"code":"06","label":{"en":"Casablanca-Settat","fr":"Casablanca-Settat","ar":"\u0627\u0644\u062f\u0627\u0631 \u0627\u0644\u0628\u064a\u0636\u0627\u0621 \u0633\u0637\u0627\u062a"},"price":{"home":700,"relay":350}}},"marrakechSafi":{"active":true,"details":{"code":"07","label":{"en":"Marrakech-Safi","fr":"Marrakech-Safi","ar":"\u0645\u0631\u0627\u0643\u0634 \u0622\u0633\u0641\u064a"},"price":{"home":700,"relay":350}}},"draaTafilalet":{"active":true,"details":{"code":"08","label":{"en":"Draa-Tafilalet","fr":"Dr\u00e2a-Tafilalet","ar":"\u062f\u0631\u0639\u0629 \u062a\u0627\u0641\u064a\u0644\u0627\u0644\u062a"},"price":{"home":700,"relay":350}}},"soussaMassa":{"active":true,"details":{"code":"09","label":{"en":"Souss-Massa","fr":"Souss-Massa","ar":"\u0633\u0648\u0633 \u0645\u0627\u0633\u0629"},"price":{"home":700,"relay":350}}},"guelmimOuedNoun":{"active":true,"details":{"code":"10","label":{"en":"Guelmim-Oued Noun","fr":"Guelmim-Oued Noun","ar":"\u0643\u0644\u0645\u064a\u0645 \u0648\u0627\u062f \u0646\u0648\u0646"},"price":{"home":700,"relay":350}}},"laayouneSakiaElHamra":{"active":true,"details":{"code":"11","label":{"en":"Laayoune-Sakia El Hamra","fr":"La\u00e2youne-Sakia El Hamra","ar":"\u0627\u0644\u0639\u064a\u0648\u0646 \u0627\u0644\u0633\u0627\u0642\u064a\u0629 \u0627\u0644\u062d\u0645\u0631\u0627\u0621"},"price":{"home":700,"relay":350}}},"dakhliaOuedEdDahab":{"active":true,"details":{"code":"12","label":{"en":"Dakhla-Oued Ed-Dahab","fr":"Dakhla-Oued Ed-Dahab","ar":"\u0627\u0644\u062f\u0627\u062e\u0644\u0629 \u0648\u0627\u062f\u064a \u0627\u0644\u0630\u0647\u0628"},"price":{"home":700,"relay":350}}}}},"ae":{"wilaya":{"abuDhabi":{"active":true,"details":{"code":"01","label":{"en":"Abu Dhabi","fr":"Abou Dabi","ar":"\u0623\u0628\u0648 \u0638\u0628\u064a"},"price":{"home":700,"relay":350}}},"dubai":{"active":true,"details":{"code":"02","label":{"en":"Dubai","fr":"Duba\u00ef","ar":"\u062f\u0628\u064a"},"price":{"home":700,"relay":350}}},"sharjah":{"active":true,"details":{"code":"03","label":{"en":"Sharjah","fr":"Charjah","ar":"\u0627\u0644\u0634\u0627\u0631\u0642\u0629"},"price":{"home":700,"relay":350}}},"ajman":{"active":true,"details":{"code":"04","label":{"en":"Ajman","fr":"Ajman","ar":"\u0639\u062c\u0645\u0627\u0646"},"price":{"home":700,"relay":350}}},"ummAlQuwain":{"active":true,"details":{"code":"05","label":{"en":"Umm Al Quwain","fr":"Oumm al Qa\u00efwa\u00efn","ar":"\u0623\u0645 \u0627\u0644\u0642\u064a\u0648\u064a\u0646"},"price":{"home":700,"relay":350}}},"rasAlKhaimah":{"active":true,"details":{"code":"06","label":{"en":"Ras Al Khaimah","fr":"Ras el Kha\u00efmah","ar":"\u0631\u0623\u0633 \u0627\u0644\u062e\u064a\u0645\u0629"},"price":{"home":700,"relay":350}}},"fujairah":{"active":true,"details":{"code":"07","label":{"en":"Fujairah","fr":"Fuja\u00efrah","ar":"\u0627\u0644\u0641\u062c\u064a\u0631\u0629"},"price":{"home":700,"relay":350}}}}},"qa":{"wilaya":{"doha":{"active":true,"details":{"code":"01","label":{"en":"Doha","fr":"Doha","ar":"\u0627\u0644\u062f\u0648\u062d\u0629"},"price":{"home":700,"relay":350}}},"alRayyan":{"active":true,"details":{"code":"02","label":{"en":"Al Rayyan","fr":"Al Rayyan","ar":"\u0627\u0644\u0631\u064a\u0627\u0646"},"price":{"home":700,"relay":350}}},"alWakrah":{"active":true,"details":{"code":"03","label":{"en":"Al Wakrah","fr":"Al Wakrah","ar":"\u0627\u0644\u0648\u0643\u0631\u0629"},"price":{"home":700,"relay":350}}},"alKhor":{"active":true,"details":{"code":"04","label":{"en":"Al Khor","fr":"Al Khor","ar":"\u0627\u0644\u062e\u0648\u0631"},"price":{"home":700,"relay":350}}},"alShamal":{"active":true,"details":{"code":"05","label":{"en":"Al Shamal","fr":"Al Shamal","ar":"\u0627\u0644\u0634\u0645\u0627\u0644"},"price":{"home":700,"relay":350}}},"alDaayen":{"active":true,"details":{"code":"06","label":{"en":"Al Daayen","fr":"Al Daayen","ar":"\u0627\u0644\u0636\u0639\u0627\u064a\u0646"},"price":{"home":700,"relay":350}}},"ummSalal":{"active":true,"details":{"code":"07","label":{"en":"Umm Salal","fr":"Umm Salal","ar":"\u0623\u0645 \u0635\u0644\u0627\u0644"},"price":{"home":700,"relay":350}}},"alSheehaniya":{"active":true,"details":{"code":"08","label":{"en":"Al Sheehaniya","fr":"Al Sheehaniya","ar":"\u0627\u0644\u0634\u064a\u062d\u0627\u0646\u064a\u0629"},"price":{"home":700,"relay":350}}}}},"kw":{"wilaya":{"alAsimah":{"active":true,"details":{"code":"01","label":{"en":"Al Asimah","fr":"Al Asimah","ar":"\u0627\u0644\u0639\u0627\u0635\u0645\u0629"},"price":{"home":700,"relay":350}}},"hawalli":{"active":true,"details":{"code":"02","label":{"en":"Hawalli","fr":"Hawalli","ar":"\u062d\u0648\u0644\u064a"},"price":{"home":700,"relay":350}}},"alFarwaniyah":{"active":true,"details":{"code":"03","label":{"en":"Al Farwaniyah","fr":"Al Farwaniyah","ar":"\u0627\u0644\u0641\u0631\u0648\u0627\u0646\u064a\u0629"},"price":{"home":700,"relay":350}}},"mubarakAlKabeer":{"active":true,"details":{"code":"04","label":{"en":"Mubarak Al-Kabeer","fr":"Moubarak Al-Kabir","ar":"\u0645\u0628\u0627\u0631\u0643 \u0627\u0644\u0643\u0628\u064a\u0631"},"price":{"home":700,"relay":350}}},"alAhmadi":{"active":true,"details":{"code":"05","label":{"en":"Al Ahmadi","fr":"Al Ahmadi","ar":"\u0627\u0644\u0623\u062d\u0645\u062f\u064a"},"price":{"home":700,"relay":350}}},"alJahra":{"active":true,"details":{"code":"06","label":{"en":"Al Jahra","fr":"Al Jahra","ar":"\u0627\u0644\u062c\u0647\u0631\u0627\u0621"},"price":{"home":700,"relay":350}}}}},"bh":{"wilaya":{"capital":{"active":true,"details":{"code":"01","label":{"en":"Capital","fr":"Capitale","ar":"\u0627\u0644\u0639\u0627\u0635\u0645\u0629"},"price":{"home":700,"relay":350}}},"muharraq":{"active":true,"details":{"code":"02","label":{"en":"Muharraq","fr":"Muharraq","ar":"\u0627\u0644\u0645\u062d\u0631\u0642"},"price":{"home":700,"relay":350}}},"northern":{"active":true,"details":{"code":"03","label":{"en":"Northern","fr":"Nord","ar":"\u0627\u0644\u0634\u0645\u0627\u0644\u064a\u0629"},"price":{"home":700,"relay":350}}},"southern":{"active":true,"details":{"code":"04","label":{"en":"Southern","fr":"Sud","ar":"\u0627\u0644\u062c\u0646\u0648\u0628\u064a\u0629"},"price":{"home":700,"relay":350}}}}},"eg":{"wilaya":{"cairo":{"active":true,"details":{"code":"01","label":{"en":"Cairo","fr":"Le Caire","ar":"\u0627\u0644\u0642\u0627\u0647\u0631\u0629"},"price":{"home":700,"relay":350}}},"alexandria":{"active":true,"details":{"code":"02","label":{"en":"Alexandria","fr":"Alexandrie","ar":"\u0627\u0644\u0625\u0633\u0643\u0646\u062f\u0631\u064a\u0629"},"price":{"home":700,"relay":350}}},"portSaid":{"active":true,"details":{"code":"03","label":{"en":"Port Said","fr":"Port-Sa\u00efd","ar":"\u0628\u0648\u0631\u0633\u0639\u064a\u062f"},"price":{"home":700,"relay":350}}},"suez":{"active":true,"details":{"code":"04","label":{"en":"Suez","fr":"Suez","ar":"\u0627\u0644\u0633\u0648\u064a\u0633"},"price":{"home":700,"relay":350}}},"damietta":{"active":true,"details":{"code":"05","label":{"en":"Damietta","fr":"Damiette","ar":"\u062f\u0645\u064a\u0627\u0637"},"price":{"home":700,"relay":350}}},"dakahlia":{"active":true,"details":{"code":"06","label":{"en":"Dakahlia","fr":"Dakahlia","ar":"\u0627\u0644\u062f\u0642\u0647\u0644\u064a\u0629"},"price":{"home":700,"relay":350}}},"sharqia":{"active":true,"details":{"code":"07","label":{"en":"Sharqia","fr":"Charqiya","ar":"\u0627\u0644\u0634\u0631\u0642\u064a\u0629"},"price":{"home":700,"relay":350}}},"qalyubia":{"active":true,"details":{"code":"08","label":{"en":"Qalyubia","fr":"Qalyoubia","ar":"\u0627\u0644\u0642\u0644\u064a\u0648\u0628\u064a\u0629"},"price":{"home":700,"relay":350}}},"kafrElSheikh":{"active":true,"details":{"code":"09","label":{"en":"Kafr El Sheikh","fr":"Kafr el-Cheikh","ar":"\u0643\u0641\u0631 \u0627\u0644\u0634\u064a\u062e"},"price":{"home":700,"relay":350}}},"gharbia":{"active":true,"details":{"code":"10","label":{"en":"Gharbia","fr":"Gharbiya","ar":"\u0627\u0644\u063a\u0631\u0628\u064a\u0629"},"price":{"home":700,"relay":350}}},"monufia":{"active":true,"details":{"code":"11","label":{"en":"Monufia","fr":"Monoufia","ar":"\u0627\u0644\u0645\u0646\u0648\u0641\u064a\u0629"},"price":{"home":700,"relay":350}}},"beheira":{"active":true,"details":{"code":"12","label":{"en":"Beheira","fr":"Beheira","ar":"\u0627\u0644\u0628\u062d\u064a\u0631\u0629"},"price":{"home":700,"relay":350}}},"ismailia":{"active":true,"details":{"code":"13","label":{"en":"Ismailia","fr":"Isma\u00eflia","ar":"\u0627\u0644\u0625\u0633\u0645\u0627\u0639\u064a\u0644\u064a\u0629"},"price":{"home":700,"relay":350}}},"giza":{"active":true,"details":{"code":"14","label":{"en":"Giza","fr":"Gizeh","ar":"\u0627\u0644\u062c\u064a\u0632\u0629"},"price":{"home":700,"relay":350}}},"beniSuef":{"active":true,"details":{"code":"15","label":{"en":"Beni Suef","fr":"Beni Souef","ar":"\u0628\u0646\u064a \u0633\u0648\u064a\u0641"},"price":{"home":700,"relay":350}}},"fayoum":{"active":true,"details":{"code":"16","label":{"en":"Fayoum","fr":"Fayoum","ar":"\u0627\u0644\u0641\u064a\u0648\u0645"},"price":{"home":700,"relay":350}}},"minya":{"active":true,"details":{"code":"17","label":{"en":"Minya","fr":"Minya","ar":"\u0627\u0644\u0645\u0646\u064a\u0627"},"price":{"home":700,"relay":350}}},"asyut":{"active":true,"details":{"code":"18","label":{"en":"Asyut","fr":"Assiout","ar":"\u0623\u0633\u064a\u0648\u0637"},"price":{"home":700,"relay":350}}},"sohag":{"active":true,"details":{"code":"19","label":{"en":"Sohag","fr":"Sohag","ar":"\u0633\u0648\u0647\u0627\u062c"},"price":{"home":700,"relay":350}}},"qena":{"active":true,"details":{"code":"20","label":{"en":"Qena","fr":"Qena","ar":"\u0642\u0646\u0627"},"price":{"home":700,"relay":350}}},"aswan":{"active":true,"details":{"code":"21","label":{"en":"Aswan","fr":"Assouan","ar":"\u0623\u0633\u0648\u0627\u0646"},"price":{"home":700,"relay":350}}},"luxor":{"active":true,"details":{"code":"22","label":{"en":"Luxor","fr":"Louxor","ar":"\u0627\u0644\u0623\u0642\u0635\u0631"},"price":{"home":700,"relay":350}}},"redSea":{"active":true,"details":{"code":"23","label":{"en":"Red Sea","fr":"Mer Rouge","ar":"\u0627\u0644\u0628\u062d\u0631 \u0627\u0644\u0623\u062d\u0645\u0631"},"price":{"home":700,"relay":350}}},"newValley":{"active":true,"details":{"code":"24","label":{"en":"New Valley","fr":"Nouvelle-Vall\u00e9e","ar":"\u0627\u0644\u0648\u0627\u062f\u064a \u0627\u0644\u062c\u062f\u064a\u062f"},"price":{"home":700,"relay":350}}},"matruh":{"active":true,"details":{"code":"25","label":{"en":"Matruh","fr":"Matrouh","ar":"\u0645\u0637\u0631\u0648\u062d"},"price":{"home":700,"relay":350}}},"northSinai":{"active":true,"details":{"code":"26","label":{"en":"North Sinai","fr":"Sina\u00ef Nord","ar":"\u0634\u0645\u0627\u0644 \u0633\u064a\u0646\u0627\u0621"},"price":{"home":700,"relay":350}}},"southSinai":{"active":true,"details":{"code":"27","label":{"en":"South Sinai","fr":"Sina\u00ef Sud","ar":"\u062c\u0646\u0648\u0628 \u0633\u064a\u0646\u0627\u0621"},"price":{"home":700,"relay":350}}}}},"sa":{"wilaya":{"riyadh":{"active":true,"details":{"code":"01","label":{"en":"Riyadh","fr":"Riyad","ar":"\u0627\u0644\u0631\u064a\u0627\u0636"},"price":{"home":700,"relay":350}}},"makkah":{"active":true,"details":{"code":"02","label":{"en":"Makkah","fr":"La Mecque","ar":"\u0645\u0643\u0629 \u0627\u0644\u0645\u0643\u0631\u0645\u0629"},"price":{"home":700,"relay":350}}},"madinah":{"active":true,"details":{"code":"03","label":{"en":"Madinah","fr":"M\u00e9dine","ar":"\u0627\u0644\u0645\u062f\u064a\u0646\u0629 \u0627\u0644\u0645\u0646\u0648\u0631\u0629"},"price":{"home":700,"relay":350}}},"eastern":{"active":true,"details":{"code":"04","label":{"en":"Eastern","fr":"Province orientale","ar":"\u0627\u0644\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u0634\u0631\u0642\u064a\u0629"},"price":{"home":700,"relay":350}}},"qassim":{"active":true,"details":{"code":"05","label":{"en":"Qassim","fr":"Qassim","ar":"\u0627\u0644\u0642\u0635\u064a\u0645"},"price":{"home":700,"relay":350}}},"hail":{"active":true,"details":{"code":"06","label":{"en":"Hail","fr":"Ha\u00efl","ar":"\u062d\u0627\u0626\u0644"},"price":{"home":700,"relay":350}}},"tabuk":{"active":true,"details":{"code":"07","label":{"en":"Tabuk","fr":"Tabuk","ar":"\u062a\u0628\u0648\u0643"},"price":{"home":700,"relay":350}}},"northernBorders":{"active":true,"details":{"code":"08","label":{"en":"Northern Borders","fr":"Fronti\u00e8res du Nord","ar":"\u0627\u0644\u062d\u062f\u0648\u062f \u0627\u0644\u0634\u0645\u0627\u0644\u064a\u0629"},"price":{"home":700,"relay":350}}},"jazan":{"active":true,"details":{"code":"09","label":{"en":"Jazan","fr":"Jizan","ar":"\u062c\u0627\u0632\u0627\u0646"},"price":{"home":700,"relay":350}}},"najran":{"active":true,"details":{"code":"10","label":{"en":"Najran","fr":"Najran","ar":"\u0646\u062c\u0631\u0627\u0646"},"price":{"home":700,"relay":350}}},"bahah":{"active":true,"details":{"code":"11","label":{"en":"Al Bahah","fr":"Al Bahah","ar":"\u0627\u0644\u0628\u0627\u062d\u0629"},"price":{"home":700,"relay":350}}},"jouf":{"active":true,"details":{"code":"12","label":{"en":"Al Jouf","fr":"Al Jawf","ar":"\u0627\u0644\u062c\u0648\u0641"},"price":{"home":700,"relay":350}}},"asir":{"active":true,"details":{"code":"13","label":{"en":"Asir","fr":"Assir","ar":"\u0639\u0633\u064a\u0631"},"price":{"home":700,"relay":350}}}}},"om":{"wilaya":{"muscat":{"active":true,"details":{"code":"01","label":{"en":"Muscat","fr":"Mascate","ar":"\u0645\u0633\u0642\u0637"},"price":{"home":700,"relay":350}}},"dhofar":{"active":true,"details":{"code":"02","label":{"en":"Dhofar","fr":"Dhofar","ar":"\u0638\u0641\u0627\u0631"},"price":{"home":700,"relay":350}}},"musandam":{"active":true,"details":{"code":"03","label":{"en":"Musandam","fr":"Musandam","ar":"\u0645\u0633\u0646\u062f\u0645"},"price":{"home":700,"relay":350}}},"buraimi":{"active":true,"details":{"code":"04","label":{"en":"Al Buraimi","fr":"Al Buraimi","ar":"\u0627\u0644\u0628\u0631\u064a\u0645\u064a"},"price":{"home":700,"relay":350}}},"dakhiliyah":{"active":true,"details":{"code":"05","label":{"en":"Ad Dakhiliyah","fr":"Ad Dakhiliyah","ar":"\u0627\u0644\u062f\u0627\u062e\u0644\u064a\u0629"},"price":{"home":700,"relay":350}}},"northBatinah":{"active":true,"details":{"code":"06","label":{"en":"North Al Batinah","fr":"Al Batinah Nord","ar":"\u0634\u0645\u0627\u0644 \u0627\u0644\u0628\u0627\u0637\u0646\u0629"},"price":{"home":700,"relay":350}}},"southBatinah":{"active":true,"details":{"code":"07","label":{"en":"South Al Batinah","fr":"Al Batinah Sud","ar":"\u062c\u0646\u0648\u0628 \u0627\u0644\u0628\u0627\u0637\u0646\u0629"},"price":{"home":700,"relay":350}}},"northSharqiyah":{"active":true,"details":{"code":"08","label":{"en":"North Ash Sharqiyah","fr":"Ash Sharqiyah Nord","ar":"\u0634\u0645\u0627\u0644 \u0627\u0644\u0634\u0631\u0642\u064a\u0629"},"price":{"home":700,"relay":350}}},"southSharqiyah":{"active":true,"details":{"code":"09","label":{"en":"South Ash Sharqiyah","fr":"Ash Sharqiyah Sud","ar":"\u062c\u0646\u0648\u0628 \u0627\u0644\u0634\u0631\u0642\u064a\u0629"},"price":{"home":700,"relay":350}}},"dhahirah":{"active":true,"details":{"code":"10","label":{"en":"Ad Dhahirah","fr":"Ad Dhahirah","ar":"\u0627\u0644\u0638\u0627\u0647\u0631\u0629"},"price":{"home":700,"relay":350}}},"wusta":{"active":true,"details":{"code":"11","label":{"en":"Al Wusta","fr":"Al Wusta","ar":"\u0627\u0644\u0648\u0633\u0637\u0649"},"price":{"home":700,"relay":350}}}}},"jo":{"wilaya":{"amman":{"active":true,"details":{"code":"01","label":{"en":"Amman","fr":"Amman","ar":"\u0639\u0645\u0651\u0627\u0646"},"price":{"home":700,"relay":350}}},"irbid":{"active":true,"details":{"code":"02","label":{"en":"Irbid","fr":"Irbid","ar":"\u0625\u0631\u0628\u062f"},"price":{"home":700,"relay":350}}},"zarqa":{"active":true,"details":{"code":"03","label":{"en":"Zarqa","fr":"Zarqa","ar":"\u0627\u0644\u0632\u0631\u0642\u0627\u0621"},"price":{"home":700,"relay":350}}},"mafraq":{"active":true,"details":{"code":"04","label":{"en":"Mafraq","fr":"Mafraq","ar":"\u0627\u0644\u0645\u0641\u0631\u0642"},"price":{"home":700,"relay":350}}},"ajloun":{"active":true,"details":{"code":"05","label":{"en":"Ajloun","fr":"Ajloun","ar":"\u0639\u062c\u0644\u0648\u0646"},"price":{"home":700,"relay":350}}},"jerash":{"active":true,"details":{"code":"06","label":{"en":"Jerash","fr":"Jerash","ar":"\u062c\u0631\u0634"},"price":{"home":700,"relay":350}}},"balqa":{"active":true,"details":{"code":"07","label":{"en":"Balqa","fr":"Balqa","ar":"\u0627\u0644\u0628\u0644\u0642\u0627\u0621"},"price":{"home":700,"relay":350}}},"madaba":{"active":true,"details":{"code":"08","label":{"en":"Madaba","fr":"Madaba","ar":"\u0645\u0627\u062f\u0628\u0627"},"price":{"home":700,"relay":350}}},"karak":{"active":true,"details":{"code":"09","label":{"en":"Karak","fr":"Karak","ar":"\u0627\u0644\u0643\u0631\u0643"},"price":{"home":700,"relay":350}}},"tafilah":{"active":true,"details":{"code":"10","label":{"en":"Tafilah","fr":"Tafilah","ar":"\u0627\u0644\u0637\u0641\u064a\u0644\u0629"},"price":{"home":700,"relay":350}}},"maan":{"active":true,"details":{"code":"11","label":{"en":"Ma'an","fr":"Ma'an","ar":"\u0645\u0639\u0627\u0646"},"price":{"home":700,"relay":350}}},"aqaba":{"active":true,"details":{"code":"12","label":{"en":"Aqaba","fr":"Aqaba","ar":"\u0627\u0644\u0639\u0642\u0628\u0629"},"price":{"home":700,"relay":350}}}}}}}"
  "2026-04-01 23:04:24"
  null
  118
]
7 63.70 ms
INSERT INTO website (user_reference, reference, slug, status, theme, brand, colors, contact, fonts, free_delivery, meta, network, products, web, application, config, addon, is_for_preview, website_onboarded, plan, version, created_at, edited_at, expire_at, user_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Parameters:
[
  87321331
  17205796
  "ed240os"
  1
  "max"
  "{"version":1,"data":{"name":{"en":"Shop","fr":"Boutique","ar":"\u0645\u062a\u062c\u0631"},"logo":{"url":"","alt":"Logo"},"favicon":{"url":"","alt":"Favicon"}}}"
  "{"version":1,"data":{"default":"","accent":"","primary":"","primaryText":"","secondary":"","secondaryText":"","background":"","primaryBackground":"","secondaryBackground":""}}"
  "{"version":1,"data":{"address":{"en":"Store address","fr":"Adresse de la boutique","ar":"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0645\u062a\u062c\u0631"},"email":"contact@edouk.com","phone":"+213 697 00 22 11"}}"
  "{"version":1,"data":{"en":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}},"ar":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}}}}"
  "{"version":1,"data":{"active":false,"amount":0}}"
  "{"version":1,"data":{"title":{"en":"","fr":"","ar":""},"description":{"en":"","fr":"","ar":""},"cover":{"img":""}}}"
  "{"version":1,"data":{"facebook":{"url":"","active":true},"instagram":{"url":"","active":true},"tiktok":{"url":"","active":true},"x":{"url":"","active":false},"whatsapp":{"url":"","active":false},"telegram":{"url":"","active":false},"viber":{"url":"","active":false},"linkedin":{"url":"","active":true}}}"
  "{"version":1,"data":[]}"
  "{"version":1,"data":{"home":[],"products":[],"thankyou":[]}}"
  "{"version":1,"data":{"facebookpixel":{"pixel":"","domain":"","config":[],"active":false},"facebookapi":{"api":"","token":"","testcode":"","active":false},"recaptchav3":{"id":"","config":[],"active":false,"score":0.5},"googletag":{"id":"","active":false}}}"
  "{"version":1,"data":{"country":{"active":"dz","multi":false,"available":{"dz":{"active":true,"name":"Algeria","code":"DZ","currency":{"code":"DZD","name":"Algerian dinar","symbol":"DA","symbolAr":"\u062f\u062c","vat":0,"rate":1}},"tn":{"active":false,"name":"Tunisia","code":"TN","currency":{"code":"TND","name":"Tunisian dinar","symbol":"DT","symbolAr":"\u062f.\u062a","vat":0,"rate":1}},"ma":{"active":false,"name":"Morocco","code":"MA","currency":{"code":"MAD","name":"Moroccan dirham","symbol":"DH","symbolAr":"\u062f.\u0645.","vat":0,"rate":1}},"eg":{"active":false,"name":"Egypt","code":"EG","currency":{"code":"EGP","name":"Egyptian pound","symbol":"E\u00a3","symbolAr":"\u062c.\u0645","vat":0,"rate":1}},"ae":{"active":false,"name":"UAE","code":"AE","currency":{"code":"AED","name":"UAE dirham","symbol":"AED","symbolAr":"\u062f.\u0625","vat":0,"rate":1}},"sa":{"active":false,"name":"Saudi Arabia","code":"SA","currency":{"code":"SAR","name":"Saudi riyal","symbol":"SAR","symbolAr":"\u0631.\u0633","vat":0,"rate":1}},"qa":{"active":false,"name":"Qatar","code":"QA","currency":{"code":"QAR","name":"Qatari riyal","symbol":"QAR","symbolAr":"\u0631.\u0642","vat":0,"rate":1}},"om":{"active":false,"name":"Oman","code":"OM","currency":{"code":"OMR","name":"Omani rial","symbol":"OMR","symbolAr":"\u0631.\u0639.","vat":0,"rate":1}},"jo":{"active":false,"name":"Jordan","code":"JO","currency":{"code":"JOD","name":"Jordanian dinar","symbol":"JD","symbolAr":"\u062f.\u0623","vat":0,"rate":1}},"bh":{"active":false,"name":"Bahrain","code":"BH","currency":{"code":"BHD","name":"Bahraini dinar","symbol":"BD","symbolAr":"\u062f.\u0628","vat":0,"rate":1}},"kw":{"active":false,"name":"Kuwait","code":"KW","currency":{"code":"KWD","name":"Kuwaiti dinar","symbol":"KD","symbolAr":"\u062f.\u0643","vat":0,"rate":1}}}},"languages":{"active":"en","multilangue":true,"available":{"en":{"name":"English","active":true},"fr":{"name":"Fran\u00e7ais","active":true},"ar":{"name":"\u0627\u0644\u0639\u0631\u0628\u064a\u0629","active":true}}},"product":{"active":"physical","available":["physical","digital"]}}}"
  "{"version":1,"data":{"callbutton":{"phone":"","config":[],"active":false},"whatsappbutton":{"phone":"","config":[],"active":false}}}"
  0
  0
  "silver"
  1
  "2026-04-01 23:04:24"
  null
  "2026-04-08 23:04:24"
  118
]
8 62.83 ms
INSERT INTO website (user_reference, reference, slug, status, theme, brand, colors, contact, fonts, free_delivery, meta, network, products, web, application, config, addon, is_for_preview, website_onboarded, plan, version, created_at, edited_at, expire_at, user_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Parameters:
[
  87321331
  14569791
  "edhun6a"
  1
  "speedy"
  "{"version":1,"data":{"name":{"en":"Shop","fr":"Boutique","ar":"\u0645\u062a\u062c\u0631"},"logo":{"url":"","alt":"Logo"},"favicon":{"url":"","alt":"Favicon"}}}"
  "{"version":1,"data":{"default":"","accent":"","primary":"","primaryText":"","secondary":"","secondaryText":"","background":"","primaryBackground":"","secondaryBackground":""}}"
  "{"version":1,"data":{"address":{"en":"Store address","fr":"Adresse de la boutique","ar":"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0645\u062a\u062c\u0631"},"email":"contact@edouk.com","phone":"+213 697 00 22 11"}}"
  "{"version":1,"data":{"en":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}},"ar":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}}}}"
  "{"version":1,"data":{"active":false,"amount":0}}"
  "{"version":1,"data":{"title":{"en":"","fr":"","ar":""},"description":{"en":"","fr":"","ar":""},"cover":{"img":""}}}"
  "{"version":1,"data":{"facebook":{"url":"","active":true},"instagram":{"url":"","active":true},"tiktok":{"url":"","active":true},"x":{"url":"","active":false},"whatsapp":{"url":"","active":false},"telegram":{"url":"","active":false},"viber":{"url":"","active":false},"linkedin":{"url":"","active":true}}}"
  "{"version":1,"data":[]}"
  "{"version":1,"data":{"home":[],"products":[],"thankyou":[]}}"
  "{"version":1,"data":{"facebookpixel":{"pixel":"","domain":"","config":[],"active":false},"facebookapi":{"api":"","token":"","testcode":"","active":false},"recaptchav3":{"id":"","config":[],"active":false,"score":0.5},"googletag":{"id":"","active":false}}}"
  "{"version":1,"data":{"country":{"active":"dz","multi":false,"available":{"dz":{"active":true,"name":"Algeria","code":"DZ","currency":{"code":"DZD","name":"Algerian dinar","symbol":"DA","symbolAr":"\u062f\u062c","vat":0,"rate":1}},"tn":{"active":false,"name":"Tunisia","code":"TN","currency":{"code":"TND","name":"Tunisian dinar","symbol":"DT","symbolAr":"\u062f.\u062a","vat":0,"rate":1}},"ma":{"active":false,"name":"Morocco","code":"MA","currency":{"code":"MAD","name":"Moroccan dirham","symbol":"DH","symbolAr":"\u062f.\u0645.","vat":0,"rate":1}},"eg":{"active":false,"name":"Egypt","code":"EG","currency":{"code":"EGP","name":"Egyptian pound","symbol":"E\u00a3","symbolAr":"\u062c.\u0645","vat":0,"rate":1}},"ae":{"active":false,"name":"UAE","code":"AE","currency":{"code":"AED","name":"UAE dirham","symbol":"AED","symbolAr":"\u062f.\u0625","vat":0,"rate":1}},"sa":{"active":false,"name":"Saudi Arabia","code":"SA","currency":{"code":"SAR","name":"Saudi riyal","symbol":"SAR","symbolAr":"\u0631.\u0633","vat":0,"rate":1}},"qa":{"active":false,"name":"Qatar","code":"QA","currency":{"code":"QAR","name":"Qatari riyal","symbol":"QAR","symbolAr":"\u0631.\u0642","vat":0,"rate":1}},"om":{"active":false,"name":"Oman","code":"OM","currency":{"code":"OMR","name":"Omani rial","symbol":"OMR","symbolAr":"\u0631.\u0639.","vat":0,"rate":1}},"jo":{"active":false,"name":"Jordan","code":"JO","currency":{"code":"JOD","name":"Jordanian dinar","symbol":"JD","symbolAr":"\u062f.\u0623","vat":0,"rate":1}},"bh":{"active":false,"name":"Bahrain","code":"BH","currency":{"code":"BHD","name":"Bahraini dinar","symbol":"BD","symbolAr":"\u062f.\u0628","vat":0,"rate":1}},"kw":{"active":false,"name":"Kuwait","code":"KW","currency":{"code":"KWD","name":"Kuwaiti dinar","symbol":"KD","symbolAr":"\u062f.\u0643","vat":0,"rate":1}}}},"languages":{"active":"en","multilangue":true,"available":{"en":{"name":"English","active":true},"fr":{"name":"Fran\u00e7ais","active":true},"ar":{"name":"\u0627\u0644\u0639\u0631\u0628\u064a\u0629","active":true}}},"product":{"active":"physical","available":["physical","digital"]}}}"
  "{"version":1,"data":{"callbutton":{"phone":"","config":[],"active":false},"whatsappbutton":{"phone":"","config":[],"active":false}}}"
  1
  0
  "silver"
  1
  "2026-04-01 23:04:24"
  null
  "2026-04-08 23:04:24"
  118
]
9 62.90 ms
INSERT INTO website (user_reference, reference, slug, status, theme, brand, colors, contact, fonts, free_delivery, meta, network, products, web, application, config, addon, is_for_preview, website_onboarded, plan, version, created_at, edited_at, expire_at, user_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Parameters:
[
  87321331
  33425170
  "ed1u67w"
  1
  "convert"
  "{"version":1,"data":{"name":{"en":"Shop","fr":"Boutique","ar":"\u0645\u062a\u062c\u0631"},"logo":{"url":"","alt":"Logo"},"favicon":{"url":"","alt":"Favicon"}}}"
  "{"version":1,"data":{"default":"","accent":"","primary":"","primaryText":"","secondary":"","secondaryText":"","background":"","primaryBackground":"","secondaryBackground":""}}"
  "{"version":1,"data":{"address":{"en":"Store address","fr":"Adresse de la boutique","ar":"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0645\u062a\u062c\u0631"},"email":"contact@edouk.com","phone":"+213 697 00 22 11"}}"
  "{"version":1,"data":{"en":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}},"ar":{"primary":{"name":"","link":""},"secondary":{"name":"","link":""}}}}"
  "{"version":1,"data":{"active":false,"amount":0}}"
  "{"version":1,"data":{"title":{"en":"","fr":"","ar":""},"description":{"en":"","fr":"","ar":""},"cover":{"img":""}}}"
  "{"version":1,"data":{"facebook":{"url":"","active":true},"instagram":{"url":"","active":true},"tiktok":{"url":"","active":true},"x":{"url":"","active":false},"whatsapp":{"url":"","active":false},"telegram":{"url":"","active":false},"viber":{"url":"","active":false},"linkedin":{"url":"","active":true}}}"
  "{"version":1,"data":[]}"
  "{"version":1,"data":{"home":[],"products":[],"thankyou":[]}}"
  "{"version":1,"data":{"facebookpixel":{"pixel":"","domain":"","config":[],"active":false},"facebookapi":{"api":"","token":"","testcode":"","active":false},"recaptchav3":{"id":"","config":[],"active":false,"score":0.5},"googletag":{"id":"","active":false}}}"
  "{"version":1,"data":{"country":{"active":"dz","multi":false,"available":{"dz":{"active":true,"name":"Algeria","code":"DZ","currency":{"code":"DZD","name":"Algerian dinar","symbol":"DA","symbolAr":"\u062f\u062c","vat":0,"rate":1}},"tn":{"active":false,"name":"Tunisia","code":"TN","currency":{"code":"TND","name":"Tunisian dinar","symbol":"DT","symbolAr":"\u062f.\u062a","vat":0,"rate":1}},"ma":{"active":false,"name":"Morocco","code":"MA","currency":{"code":"MAD","name":"Moroccan dirham","symbol":"DH","symbolAr":"\u062f.\u0645.","vat":0,"rate":1}},"eg":{"active":false,"name":"Egypt","code":"EG","currency":{"code":"EGP","name":"Egyptian pound","symbol":"E\u00a3","symbolAr":"\u062c.\u0645","vat":0,"rate":1}},"ae":{"active":false,"name":"UAE","code":"AE","currency":{"code":"AED","name":"UAE dirham","symbol":"AED","symbolAr":"\u062f.\u0625","vat":0,"rate":1}},"sa":{"active":false,"name":"Saudi Arabia","code":"SA","currency":{"code":"SAR","name":"Saudi riyal","symbol":"SAR","symbolAr":"\u0631.\u0633","vat":0,"rate":1}},"qa":{"active":false,"name":"Qatar","code":"QA","currency":{"code":"QAR","name":"Qatari riyal","symbol":"QAR","symbolAr":"\u0631.\u0642","vat":0,"rate":1}},"om":{"active":false,"name":"Oman","code":"OM","currency":{"code":"OMR","name":"Omani rial","symbol":"OMR","symbolAr":"\u0631.\u0639.","vat":0,"rate":1}},"jo":{"active":false,"name":"Jordan","code":"JO","currency":{"code":"JOD","name":"Jordanian dinar","symbol":"JD","symbolAr":"\u062f.\u0623","vat":0,"rate":1}},"bh":{"active":false,"name":"Bahrain","code":"BH","currency":{"code":"BHD","name":"Bahraini dinar","symbol":"BD","symbolAr":"\u062f.\u0628","vat":0,"rate":1}},"kw":{"active":false,"name":"Kuwait","code":"KW","currency":{"code":"KWD","name":"Kuwaiti dinar","symbol":"KD","symbolAr":"\u062f.\u0643","vat":0,"rate":1}}}},"languages":{"active":"en","multilangue":true,"available":{"en":{"name":"English","active":true},"fr":{"name":"Fran\u00e7ais","active":true},"ar":{"name":"\u0627\u0644\u0639\u0631\u0628\u064a\u0629","active":true}}},"product":{"active":"physical","available":["physical","digital"]}}}"
  "{"version":1,"data":{"callbutton":{"phone":"","config":[],"active":false},"whatsappbutton":{"phone":"","config":[],"active":false}}}"
  1
  0
  "silver"
  1
  "2026-04-01 23:04:24"
  null
  "2026-04-08 23:04:24"
  118
]
10 67.29 ms
"COMMIT"
Parameters:
[]
11 62.21 ms
"START TRANSACTION"
Parameters:
[]
12 62.58 ms
UPDATE `user` SET login_count = ?, last_ip = ?, last_login_at = ?, edited_at = ? WHERE id = ?
Parameters:
[
  1
  "105.99.109.127"
  "2026-04-01 23:04:25"
  "2026-04-01 23:04:25"
  118
]
13 66.42 ms
"COMMIT"
Parameters:
[]
14 62.26 ms
"START TRANSACTION"
Parameters:
[]
15 62.37 ms
UPDATE `user` SET credits = ?, edited_at = ? WHERE id = ?
Parameters:
[
  194
  "2026-04-01 23:04:28"
  118
]
16 66.49 ms
"COMMIT"
Parameters:
[]
17 62.23 ms
"START TRANSACTION"
Parameters:
[]
18 62.57 ms
INSERT INTO agent (user_reference, agent_type, model, prompt_version, input, output, tokens_used, credits_deducted, execution_time, validator_status, user_note, user_feedback, metadata, created_at, user_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Parameters:
[
  87321331
  "register"
  "gpt-5.1-chat-latest"
  "v2"
  "{"image":"Screenshot_20260327_150524_Video Player.jpg"}"
  "{"productName":{"fr":"Sweat \u00e0 Capuche Graphique Beige","en":"Beige Graphic Hoodie","ar":"\u0647\u0648\u062f\u064a \u0628\u064a\u062c \u0628\u0637\u0628\u0627\u0639\u0629 \u062c\u0631\u0627\u0641\u064a\u0643"},"productDescription":{"fr":"Style moderne avec imprim\u00e9 inspirant au dos","en":"Modern style with an inspiring back graphic","ar":"\u0623\u0633\u0644\u0648\u0628 \u0639\u0635\u0631\u064a \u0645\u0639 \u0637\u0628\u0627\u0639\u0629 \u0645\u062d\u0641\u0632\u0629 \u0639\u0644\u0649 \u0627\u0644\u0638\u0647\u0631"},"productType":"physical","colors":{"default":"#151515","accent":"#4D4D4D","primary":"#7A0F1A","primaryText":"#ffffff","secondary":"#1A2A3C","secondaryText":"#ffffff","background":"#ffffff","primaryBackground":"#F4EAEA","secondaryBackground":"#ECEFF3"}}"
  1927
  6
  3251.22
  "success"
  null
  null
  null
  "2026-04-01 23:04:28"
  118
]
19 66.48 ms
"COMMIT"
Parameters:
[]
20 62.25 ms
"START TRANSACTION"
Parameters:
[]
21 196.95 ms
UPDATE website SET colors = ?, products = ?, web = ?, edited_at = ? WHERE id = ?
Parameters:
[
  "{"version":1,"data":{"default":"#151515","accent":"#4D4D4D","primary":"#7A0F1A","primaryText":"#ffffff","secondary":"#1A2A3C","secondaryText":"#ffffff","background":"#ffffff","primaryBackground":"#F4EAEA","secondaryBackground":"#ECEFF3"}}"
  "{"version":1,"data":{"83783390":{"active":true,"identity":{"name":{"fr":"Sweat \u00e0 Capuche Graphique Beige","en":"Beige Graphic Hoodie","ar":"\u0647\u0648\u062f\u064a \u0628\u064a\u062c \u0628\u0637\u0628\u0627\u0639\u0629 \u062c\u0631\u0627\u0641\u064a\u0643"},"description":{"fr":"Style moderne avec imprim\u00e9 inspirant au dos","en":"Modern style with an inspiring back graphic","ar":"\u0623\u0633\u0644\u0648\u0628 \u0639\u0635\u0631\u064a \u0645\u0639 \u0637\u0628\u0627\u0639\u0629 \u0645\u062d\u0641\u0632\u0629 \u0639\u0644\u0649 \u0627\u0644\u0638\u0647\u0631"}},"pricing":{"price":10000,"promotion":{"active":true,"percentage":10,"end":"2026-04-08T23:04:28"},"offers":{"2":{"active":false,"price":0},"3":{"active":false,"price":0},"4":{"active":false,"price":0}}},"inventory":{"stock":10000,"sold":0},"analytics":{"view":0},"variants":{"sizes":{"1":{"name":"","upsell":0,"position":1},"2":{"name":"","upsell":0,"position":2},"3":{"name":"","upsell":0,"position":3},"4":{"name":"","upsell":0,"position":4},"5":{"name":"","upsell":0,"position":5},"6":{"name":"","upsell":0,"position":6}},"colors":{"1":{"hex":"","upsell":0,"position":1},"2":{"hex":"","upsell":0,"position":2},"3":{"hex":"","upsell":0,"position":3},"4":{"hex":"","upsell":0,"position":4},"5":{"hex":"","upsell":0,"position":5},"6":{"hex":"","upsell":0,"position":6}}},"media":{"images":{"1":{"url":"\/uploads\/83783390_1775084668_d091bf2e.jpg","alt":""},"2":{"url":"","alt":""},"3":{"url":"","alt":""},"4":{"url":"","alt":""},"5":{"url":"","alt":""},"6":{"url":"","alt":""}}}}}}"
  "{"version":1,"data":{"home":[],"products":[{"name":"carousel","label":"Max Carousel","icon":"fa-light fa-images","category":"product","version":"1.0.0","componentId":"8beea2a0daee_1775084668","theme":"max","languages":["en","fr","ar"],"details":{"note":"Product carousel using Swiper.js with thumbnail navigation. Main slider shows one image at a time, synced with scrollable thumb strip below.","allowed":"Modify: style\/breakpoints (CSS properties)."},"edk":"UI element (carousel), this element is a product image gallery with a main slider showing one image at a time and clickable thumbnail navigation below. It includes previous\/next navigation arrows. The user can easily modify the style of this component, just call agent designer !","template":{"carousel":{"tag":"div","editable":true,"parent":null,"role":"Root carousel container. Contains main-swiper and thumb-swiper vertically stacked with gap.","content":[],"style":{"position":"relative","width":"100%","display":"flex","flex-direction":"column","gap":"15px","padding":"var(--space)","background-color":"transparent","margin-top":"30px"},"breakpoints":{"tablet":{"gap":"20px"},"desktop":{"gap":"25px"}}},"main-swiper":{"tag":"div","editable":true,"parent":"carousel","role":"Main Swiper.js slider container. Rounded corners, overflow hidden. Max-height on tablet\/desktop to prevent images from taking full screen.","content":{"slidesPerView":1,"spaceBetween":0,"loop":true},"style":{"width":"100%","border-radius":"12px","overflow":"hidden"},"breakpoints":{"tablet":{"border-radius":"14px","max-height":"420px"},"desktop":{"border-radius":"16px","max-height":"480px"}}},"slide":{"tag":"div","editable":true,"parent":"main-swiper","role":"Individual slide. Centers image content within constrained height.","content":[],"style":{"display":"flex","align-items":"center","justify-content":"center","overflow":"hidden"},"breakpoints":{"tablet":[],"desktop":[]}},"image":{"tag":"img","editable":true,"parent":"slide","role":"Product image in main slider. Scales down within max-height using max-width\/max-height to preserve aspect ratio.","content":[],"style":{"max-width":"100%","height":"auto","object-fit":"contain","border-radius":"12px","object-position":"center","display":"block"},"breakpoints":{"tablet":{"max-height":"420px"},"desktop":{"max-height":"480px"}}},"nav-prev":{"tag":"div","editable":true,"parent":"main-swiper","role":"Previous slide navigation button. Core layout handled by Swiper CSS + inline styles. Only editable appearance properties here.","content":[],"style":{"background":"var(--secondary-background)","border-radius":"50%","color":"#222"},"breakpoints":{"tablet":[],"desktop":[]}},"nav-next":{"tag":"div","editable":true,"parent":"main-swiper","role":"Next slide navigation button. Core layout handled by Swiper CSS + inline styles. Only editable appearance properties here.","content":[],"style":{"background":"var(--secondary-background)","border-radius":"50%","color":"#222"},"breakpoints":{"tablet":[],"desktop":[]}},"thumb-swiper":{"tag":"div","editable":true,"parent":"carousel","role":"Thumbnail Swiper.js container below main slider. Horizontal scrollable strip of small clickable thumbnails synced with main slider.","content":{"slidesPerView":4,"spaceBetween":8,"breakpoints":{"768":{"slidesPerView":5,"spaceBetween":14},"992":{"slidesPerView":6,"spaceBetween":16}}},"style":{"width":"100%","overflow":"hidden"},"breakpoints":{"tablet":[],"desktop":[]}},"thumb-slide":{"tag":"div","editable":true,"parent":"thumb-swiper","role":"Individual thumbnail slide. Swiper controls the width via slidesPerView \u2014 do NOT set fixed width here. Border highlights active thumb.","content":[],"style":{"aspect-ratio":"1","border-radius":"8px","overflow":"hidden","cursor":"pointer","border":"2px solid transparent","background":"var(--primary-background)","transition":"border-color 0.2s ease, opacity 0.2s ease"},"breakpoints":{"tablet":{"border-radius":"10px"},"desktop":{"border-radius":"10px"}}},"thumb-image":{"tag":"img","editable":true,"parent":"thumb-slide","role":"Thumbnail image. Object-fit cover to fill the square thumb cleanly.","content":[],"style":{"width":"100%","height":"100%","object-fit":"cover","object-position":"center","display":"block"},"breakpoints":{"tablet":[],"desktop":[]}}}},{"name":"product","label":"Product","icon":"fa-light fa-info","category":"product","version":"1.0.0","componentId":"e93057acdf25_1775084668","theme":"max","languages":["en","fr","ar"],"details":{"note":"Product information display section with name, pricing, badges, stock status, and description. Shows promotion badges, calculates discounted prices, and displays stock availability with icons.","allowed":"Modify: content (text, icons), style\/hover\/breakpoints (add\/remove CSS lines)."},"edk":"UI element (product), this element displays all product information. It contains: product name as main heading, promotional badge showing discount percentage (like -20%), customizable text badge (like Limited Offer), countdown timer with days\/hours\/minutes\/seconds when promotion has end date, price display showing current price and old price crossed out if promotion active, stock status indicator with icon and text (in stock or out of stock), product description paragraph. The user can easily modify the text or style of this component, just call agent designer !","template":{"product":{"tag":"section","editable":true,"parent":null,"role":"Root product information section. Vertical flex column displaying: name (h1), badges (promo + badge), countdown timer, pricing (current + old price), stock status, and description. Gradient background.","content":[],"style":{"padding":"var(--space)","background":"linear-gradient(to bottom, #ffffff 0%, var(--primary-background) 100%)","width":"100%","display":"flex","flex-direction":"column","padding-top":"35px","gap":"15px"},"breakpoints":{"tablet":[],"desktop":[]}},"name":{"tag":"h1","editable":true,"parent":"product","role":"Product name heading (h1). Text set dynamically from product data (product.name[locale]). content.text is empty \u2014 filled at runtime by the system.","content":{"text":{"en":"","fr":"","ar":""}},"style":{"margin":"0","padding":"0","font-size":"var(--font-xl)","font-weight":"600","color":"var(--default-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"badges":{"tag":"div","editable":true,"parent":"product","role":"Container for promotional badges. Horizontal flex row with wrapping. Contains promo (percentage badge) and badge (static text badge) side by side.","content":[],"style":{"display":"flex","align-items":"center","gap":"12px","flex-wrap":"wrap"},"breakpoints":{"tablet":[],"desktop":[]}},"promo":{"tag":"span","editable":true,"parent":"badges","role":"Promotion percentage badge (span). Only displayed when product.promotion > 0. Shows '-X%' text calculated from product.promotion value. Uses secondary-color background.","content":[],"style":{"background-color":"var(--secondary-color)","color":"var(--secondaryText-color)","padding":"6px 12px","border-radius":"4px","font-size":"var(--font-s)","font-weight":"600","text-transform":"uppercase"},"breakpoints":{"tablet":[],"desktop":[]}},"badge":{"tag":"span","editable":true,"parent":"badges","role":"Static product badge with customizable text. content.text contains multilingual text (default: 'Limited Offer'). To change badge text, modify content.text for each language.","content":{"text":{"en":"Limited Offer","fr":"Offre Limit\u00e9e","ar":"\u0639\u0631\u0636 \u0645\u062d\u062f\u0648\u062f"}},"style":{"border-radius":"4px","padding":"0px 12px","height":"30px","font-size":"calc(var(--font-m) - 2px)","font-weight":"500","display":"flex","align-items":"center","justify-content":"center","background-color":"var(--secondary-background)","color":"var(--secondary-color)","border":"solid 2px white","box-shadow":"0 1px 3px rgba(0, 0, 0, 0.08)"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown":{"tag":"div","editable":true,"parent":"product","role":"Countdown timer container. Shows days\/hours\/minutes\/seconds until promotion ends (product.endPromotion). Hidden when endPromotion date is past. Contains 4 countdown-item elements. JS updates values in real-time.","content":[],"style":{"display":"flex","align-items":"center","gap":"10px"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-item":{"tag":"div","editable":true,"parent":"countdown","role":"Individual countdown unit box. Contains countdown-value (number) and countdown-label (text). 4 instances: days, hours, minutes, seconds. Card-style with box-shadow.","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","justify-content":"center","border-radius":"4px","padding":"8px 12px","box-shadow":"0 1px 3px rgba(0, 0, 0, 0.08)","border":"solid 2px white","min-width":"50px"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-value":{"tag":"span","editable":true,"parent":"countdown-item","role":"Numeric value for countdown unit (span). Updated dynamically via JS. Bold secondary-color text. Displays the remaining number for its time unit.","content":[],"style":{"font-size":"var(--font-m)","font-weight":"700","color":"var(--secondary-color)","line-height":"1"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-label":{"tag":"span","editable":true,"parent":"countdown-item","role":"Text label below countdown number. content.text maps: days \u2192 'Days', hours \u2192 'Hours', minutes \u2192 'Min', seconds \u2192 'Sec'. Multilingual. To change labels, modify content.text keys.","content":{"text":{"days":{"en":"Days","fr":"Jours","ar":"\u0623\u064a\u0627\u0645"},"hours":{"en":"Hours","fr":"Heures","ar":"\u0633\u0627\u0639\u0627\u062a"},"minutes":{"en":"Min","fr":"Min","ar":"\u062f\u0642\u0627\u0626\u0642"},"seconds":{"en":"Sec","fr":"Sec","ar":"\u062b\u0648\u0627\u0646\u064a"}}},"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-transform":"uppercase","margin-top":"4px"},"breakpoints":{"tablet":[],"desktop":[]}},"pricing":{"tag":"div","editable":true,"parent":"product","role":"Price display container. Horizontal flex row showing price (current\/discounted) and optionally price-old (original with strikethrough) when promotion is active.","content":[],"style":{"display":"flex","align-items":"center","gap":"15px"},"breakpoints":{"tablet":[],"desktop":[]}},"price":{"tag":"span","editable":true,"parent":"pricing","role":"Current\/discounted price (span). Calculated at runtime: product.price minus promotion percentage. Direction: ltr for consistent number display. Primary-color text.","content":[],"style":{"font-size":"var(--font-xl)","font-weight":"600","margin":"0","padding":"0","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"price-old":{"tag":"span","editable":true,"parent":"pricing","role":"Original price with strikethrough (span). Only displayed when product.promotion > 0. Shows full price before discount. Gray (#999) text with line-through.","content":[],"style":{"font-size":"var(--font-xl)","color":"#999","text-decoration":"line-through"},"breakpoints":{"tablet":[],"desktop":[]}},"stock":{"tag":"div","editable":true,"parent":"product","role":"Stock status indicator container. Displays stock-icon + stock-text. Green (primary-color) when product.stock > 0, red (#d32f2f via disabled state) when product.stock <= 0.","content":[],"style":{"display":"flex","align-items":"center","gap":"10px","color":"var(--primary-color, #509C2C)","background-color":"white","box-shadow":"0 1px 3px rgba(0, 0, 0, 0.08)","padding":"5px 7px","border-radius":"4px","font-size":"var(--font-s)"},"disabled":{"color":"#d32f2f"},"breakpoints":{"tablet":[],"desktop":[]}},"stock-icon":{"tag":"i","editable":true,"parent":"stock","role":"Stock status icon (i tag). content.icon_in_stock \u2192 fa-solid fa-check (shown when stock > 0). content.icon_out_stock \u2192 fa-solid fa-xmark (shown when stock <= 0). To change icons, modify content values.","content":{"icon_in_stock":"fa-solid fa-check","icon_out_stock":"fa-solid fa-xmark"},"style":{"font-size":"inherit","color":"inherit"},"breakpoints":{"tablet":[],"desktop":[]}},"stock-text":{"tag":"span","editable":true,"parent":"stock","role":"Stock status text (span). content.text.in_stock \u2192 shown when product.stock > 0. content.text.out_stock \u2192 shown when product.stock <= 0. Multilingual. To change messages, modify corresponding keys in content.text.","content":{"text":{"in_stock":{"en":"In stock and ready to ship","fr":"En stock et pr\u00eat \u00e0 \u00eatre exp\u00e9di\u00e9","ar":"\u0645\u062a\u0648\u0641\u0631 \u0641\u064a \u0627\u0644\u0645\u062e\u0632\u0648\u0646 \u0648\u062c\u0627\u0647\u0632 \u0644\u0644\u0634\u062d\u0646"},"out_stock":{"en":"Out of stock","fr":"Rupture de stock","ar":"\u063a\u064a\u0631 \u0645\u062a\u0648\u0641\u0631 \u0641\u064a \u0627\u0644\u0645\u062e\u0632\u0648\u0646"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"description":{"tag":"p","editable":true,"parent":"product","role":"Product description paragraph (p tag). Text set dynamically from product data (product.description[locale]). content.text is empty \u2014 filled at runtime by the system.","content":{"text":{"en":"","fr":"","ar":""}},"style":{"margin":"10px 0","display":"flex","flex-direction":"column","color":"var(--accent-color)","line-height":"1.65","font-size":"var(--font-m)"},"breakpoints":{"tablet":[],"desktop":[]}}}},{"name":"form","label":"Checkout Form","icon":"fa-light fa-receipt","category":"checkout","version":"1.0.0","languages":["en","fr","ar"],"componentId":"d364764d3199_1775084668","theme":"max","details":{"note":"Complete checkout form with product selection, delivery options, and customer information. Includes Stimulus controllers for dynamic price calculation, city loading based on wilaya, and form submission. Supports size\/color upsells, quantity selection, and optional address field.","allowed":"Modify: content (labels, placeholders, delivery options), style\/hover\/focus\/breakpoints (add\/remove CSS lines)."},"edk":"UI element (form), this is the checkout form where customers place their orders. It contains: color selection with circular color swatches and optional price supplement displayed below each color, size selection with size buttons and optional price supplement displayed below each size, offer packs section with 3 options (pack 1 single unit without badge, pack 2 with promotional badge like Popular, pack 3 with promotional badge like Best Value), each pack card displays product thumbnail image, pack name, price and quantity multiplier. Quantity selector with minus button, quantity input field, and plus button. Customer information fields: input fields for firstname, lastname or fullname, phone number, select dropdown for wilaya, select dropdown for city, select for delivery type (home delivery or relay point), textarea for address. Price summary section showing subtotal line, delivery cost line, divider, and total line. Coupon section with input field and apply button. Submit button to place order. Out of stock message with title and description displayed when product is unavailable. The user can easily modify the text or style of this component, just call agent designer !","template":{"form":{"tag":"form","editable":true,"parent":null,"role":"Root form container for checkout process. Vertical flex column with gap. Contains: size\/color swatches, offer packs, quantity stepper, customer info fields (name, phone, wilaya, city, delivery, address), price summary, coupon, and submit button. Stimulus controllers handle dynamic pricing and form submission.","content":[],"style":{"gap":"15px","display":"flex","flex-direction":"column","padding":"var(--space)","padding-top":"35px","padding-bottom":"35px","background":"linear-gradient(to bottom, var(--primary-background) 0%, #ffffff 50%, var(--primary-background) 100%)"},"breakpoints":{"tablet":[],"desktop":[]}},"row":{"tag":"div","editable":true,"parent":"form","role":"Horizontal row container (flex). Splits content 50\/50 side by side. Used for firstname+lastname and wilaya+city field pairs. Contains two group-half children.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","gap":"21px"},"breakpoints":{"tablet":[],"desktop":[]}},"group":{"tag":"div","editable":true,"parent":"form","role":"Full-width vertical group (flex column). Contains label on top and field below (input, select, textarea, radios, color-swatches, size-swatches, offer-swatches, or quantity-stepper).","content":[],"style":{"display":"flex","flex-direction":"column","gap":"8px"},"breakpoints":{"tablet":[],"desktop":[]}},"group-half":{"tag":"div","editable":true,"parent":"row","role":"Half-width vertical group (50%) inside a row. Contains label on top and field below. Used for side-by-side field pairs like firstname+lastname and wilaya+city.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"8px","width":"calc(50% - 10.5px)"},"breakpoints":{"tablet":[],"desktop":[]}},"label":{"tag":"label","editable":true,"parent":"group","role":"Text label (label tag) above a field. content.text maps keys to multilingual labels: size, quantity, color, form_info, wilaya, city, delivery, fullname, firstname, lastname, phone, address, offer. To change a label, modify the corresponding key in content.text.","content":{"text":{"size":{"en":"Size","fr":"Taille","ar":"\u0627\u0644\u062d\u062c\u0645"},"quantity":{"en":"Quantity","fr":"Quantit\u00e9","ar":"\u0627\u0644\u0643\u0645\u064a\u0629"},"color":{"en":"Color","fr":"Couleur","ar":"\u0627\u0644\u0644\u0648\u0646"},"form_info":{"en":"Fill in your information","fr":"Remplissez vos informations","ar":"\u0627\u0645\u0644\u0623 \u0645\u0639\u0644\u0648\u0645\u0627\u062a\u0643"},"wilaya":{"en":"Wilaya","fr":"Wilaya","ar":"\u0627\u0644\u0648\u0644\u0627\u064a\u0629"},"city":{"en":"City","fr":"Ville","ar":"\u0627\u0644\u0645\u062f\u064a\u0646\u0629"},"delivery":{"en":"Delivery","fr":"Livraison","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644"},"fullname":{"en":"Full Name","fr":"Nom complet","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0643\u0627\u0645\u0644"},"firstname":{"en":"First Name","fr":"Pr\u00e9nom","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0623\u0648\u0644"},"lastname":{"en":"Last Name","fr":"Nom de famille","ar":"\u0627\u0633\u0645 \u0627\u0644\u0639\u0627\u0626\u0644\u0629"},"phone":{"en":"Phone","fr":"T\u00e9l\u00e9phone","ar":"\u0627\u0644\u0647\u0627\u062a\u0641"},"address":{"en":"Address","fr":"Adresse","ar":"\u0627\u0644\u0639\u0646\u0648\u0627\u0646"},"offer":{"en":"Our offers","fr":"Nos offres","ar":"\u0639\u0631\u0648\u0636\u0646\u0627"}}},"style":{"font-size":"var(--font-m)","font-weight":"500","margin-bottom":"7px","color":"var(--default-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"select":{"tag":"select","editable":true,"parent":"group","role":"Dropdown select field. content.placeholders maps: wilaya, city (multilingual). content.delivery_options maps: home \u2192 'Home delivery', relay \u2192 'Relay point' (multilingual). Shares visual style with input element via hardcoded CSS.","content":{"placeholders":{"wilaya":{"en":"Wilaya","fr":"Wilaya","ar":"\u0627\u0644\u0648\u0644\u0627\u064a\u0629"},"city":{"en":"City","fr":"Ville","ar":"\u0627\u0644\u0645\u062f\u064a\u0646\u0629"}},"delivery_options":{"home":{"en":"Home delivery","fr":"Livraison \u00e0 domicile","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644 \u0644\u0644\u0645\u0646\u0632\u0644"},"relay":{"en":"Relay point","fr":"Point relais","ar":"\u0646\u0642\u0637\u0629 \u0627\u0644\u062a\u0648\u0635\u064a\u0644"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"input":{"tag":"input","editable":true,"parent":"group","role":"Text input field (input tag). Defines the shared visual style for all form inputs (input, select, textarea, email, country). content.placeholders maps: firstname, lastname, fullname, phone (multilingual). Style, focus, and breakpoints are shared via hardcoded CSS to select\/textarea\/email\/country.","content":{"placeholders":{"firstname":{"en":"First Name","fr":"Pr\u00e9nom","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0623\u0648\u0644"},"lastname":{"en":"Last Name","fr":"Nom de famille","ar":"\u0627\u0633\u0645 \u0627\u0644\u0639\u0627\u0626\u0644\u0629"},"fullname":{"en":"Full Name","fr":"Nom complet","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0643\u0627\u0645\u0644"},"phone":{"en":"Phone Number","fr":"T\u00e9l\u00e9phone","ar":"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062a\u0641"}}},"style":{"padding":"10px 12px","border":"1.5px solid #e0e0e0","box-shadow":"0 1px 3px rgba(0,0,0,0.08)","border-radius":"4px","font-size":"var(--font-m)","font-family":"inherit","color":"var(--default-color)","background-color":"white","transition":"all 0.2s","width":"100%","box-sizing":"border-box"},"focus":{"outline":"none","border-color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"textarea":{"tag":"textarea","editable":true,"parent":"group","role":"Multi-line text input (textarea tag). content.placeholders maps: address (multilingual). Shares visual style with input element via hardcoded CSS. Used for the address field.","content":{"placeholders":{"address":{"en":"Enter your address","fr":"Entrez votre adresse","ar":"\u0623\u062f\u062e\u0644 \u0639\u0646\u0648\u0627\u0646\u0643"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"radios":{"tag":"div","editable":true,"parent":"group","role":"Container for delivery radio button options. Horizontal flex row with wrapping. Contains radio elements for delivery type selection (home delivery, relay point).","content":[],"style":{"display":"flex","gap":"20px","flex-wrap":"wrap"},"breakpoints":{"tablet":[],"desktop":[]}},"radio":{"tag":"label","editable":true,"parent":"radios","role":"Single radio button option (label tag wrapping native radio input + text). Used for delivery type options. Cursor pointer for clickability.","content":[],"style":{"display":"flex","align-items":"center","gap":"8px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"color-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for color swatch options. Horizontal flex row with wrapping. Contains color-swatch elements, one per available product color. Only displayed when product has color upsells.","content":[],"style":{"display":"flex","flex-wrap":"wrap","gap":"12px"},"breakpoints":{"tablet":[],"desktop":[]}},"color-swatch":{"tag":"label","editable":true,"parent":"color-swatches","role":"Individual color swatch (label tag). Contains hidden radio input + color-circle (visual indicator) + color-label (text name). One per product color option.","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"6px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"color-circle":{"tag":"span","editable":true,"parent":"color-swatch","role":"Outer circular border for color indicator. Contains color-circle-inner which shows the actual color. Border changes to primary-color when checked (input:checked + sibling selector in CSS).","content":[],"style":{"width":"36px","height":"36px","border-radius":"50%","border":"1.5px solid #e0e0e0","padding":"4px","box-shadow":"0 1px 3px rgba(0,0,0,0.08)","transition":"all 0.2s","box-sizing":"border-box"},"hover":{"border-color":"#bbb"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"width":"40px","height":"40px"},"desktop":[]}},"color-circle-inner":{"tag":"span","editable":true,"parent":"color-circle","role":"Inner span showing the actual color (span). Background-color set inline via product color data (e.g. background-color: #FF0000). Inherits border-radius from parent color-circle for circular shape.","content":[],"style":{"display":"block","width":"100%","height":"100%","border-radius":"inherit"},"breakpoints":{"tablet":[],"desktop":[]}},"color-label":{"tag":"span","editable":true,"parent":"color-swatch","role":"Text label below color circle showing the color name (e.g. 'Red', 'Blue'). Text set dynamically from product color data. Truncated with ellipsis if too long (max-width 50px).","content":[],"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-align":"center","max-width":"50px","overflow":"hidden","text-overflow":"ellipsis","white-space":"nowrap"},"breakpoints":{"tablet":[],"desktop":[]}},"size-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for size swatch options. Horizontal flex row with wrapping. Contains size-swatch elements, one per available product size. Only displayed when product has size upsells.","content":[],"style":{"display":"flex","flex-wrap":"wrap","gap":"10px"},"breakpoints":{"tablet":[],"desktop":[]}},"size-swatch":{"tag":"label","editable":true,"parent":"size-swatches","role":"Individual size swatch (label tag). Contains hidden radio input + size-value (text box showing size) + size-label (upsell price). One per product size option.","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"4px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"size-value":{"tag":"span","editable":true,"parent":"size-swatch","role":"Size value display (span). Shows size text (e.g. 'S', 'M', 'L', 'XL'). Border changes to primary-color when checked (input:checked + sibling selector in CSS). Responsive padding.","content":[],"style":{"padding":"10px 16px","border-radius":"8px","border":"1.5px solid #e0e0e0","background":"white","font-size":"var(--font-m)","font-weight":"500","color":"var(--default-color)","box-shadow":"0 1px 3px rgba(0,0,0,0.08)","transition":"all 0.2s","white-space":"nowrap"},"hover":{"border-color":"#bbb"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"padding":"12px 18px"},"desktop":[]}},"size-label":{"tag":"span","editable":true,"parent":"size-swatch","role":"Upsell price label below size value (span). Shows additional cost for this size option (e.g. '+200 DA'). Text set dynamically from product upsell data.","content":[],"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-align":"center"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for offer\/pack cards. Contains 3 cards: pack 1 (single, no badge), pack 2 (content.text.popular badge), pack 3 (content.text.best badge). Each card is an offer-card label with radio input + offer-card-inner.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"10px","width":"100%"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card":{"tag":"label","editable":true,"parent":"offer-swatches","role":"Individual offer card label. Wraps hidden radio input + offer-card-inner. 3 instances: pack 1 (value='', single, no badge), pack 2 (value='2', popular badge), pack 3 (value='3', best badge).","content":[],"style":{"display":"block","cursor":"pointer","position":"relative"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-inner":{"tag":"div","editable":true,"parent":"offer-card","role":"Visual card container inside offer-card. Sibling of hidden radio input \u2014 border-color changes to primary-color when radio is checked (input:checked + .offer-card-inner CSS selector). Contains: offer-card-badge-popular (pack 2) or offer-card-badge-best (pack 3), offer-card-img, offer-card-details, offer-card-qty.","content":[],"style":{"display":"flex","align-items":"center","gap":"14px","padding":"16px","border":"1.5px solid #e0e0e0","border-radius":"16px","background":"#ffffff","transition":"all 0.2s ease","position":"relative","overflow":"hidden","box-shadow":"0 1px 3px rgba(0,0,0,0.04)"},"hover":{"border-color":"var(--primary-color)","box-shadow":"0 4px 12px rgba(0,0,0,0.07)","transform":"translateY(-1px)"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"padding":"18px"},"desktop":[]}},"offer-card-badge-popular":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Badge label for Pack 2 card (span). Positioned absolute top-right corner of offer-card-inner. Displays content.text (multilingual: Special offer). Secondary-color background with secondaryText color, uppercase text.","content":{"text":{"en":"Special offer","fr":"Offre sp\u00e9ciale","ar":"\u0639\u0631\u0636 \u062e\u0627\u0635"}},"style":{"position":"absolute","top":"0","right":"0","background":"var(--secondary-color)","color":"var(--secondaryText-color)","font-size":"9px","font-weight":"700","padding":"4px 10px","text-transform":"uppercase","letter-spacing":"0.8px","z-index":"1"},"breakpoints":{"tablet":{"font-size":"10px","padding":"5px 12px"},"desktop":[]}},"offer-card-badge-best":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Badge label for Pack 3 card (span). Positioned absolute top-right corner of offer-card-inner. Displays content.text (multilingual). Secondary-color background with uppercase text.","content":{"text":{"en":"Best Value","fr":"Meilleur Prix","ar":"\u0623\u0641\u0636\u0644 \u0642\u064a\u0645\u0629"}},"style":{"position":"absolute","top":"0","right":"0","background":"var(--secondary-color)","color":"var(--secondaryText-color)","font-size":"9px","font-weight":"700","padding":"4px 10px","text-transform":"uppercase","letter-spacing":"0.8px","z-index":"1"},"breakpoints":{"tablet":{"font-size":"10px","padding":"5px 12px"},"desktop":[]}},"offer-card-img":{"tag":"div","editable":true,"parent":"offer-card-inner","role":"Product image thumbnail wrapper inside offer card (div). Rounded container with overflow hidden. Contains offer-card-image (img). Responsive sizing: 56px mobile \u2192 62px tablet \u2192 66px desktop.","content":[],"style":{"width":"56px","height":"56px","border-radius":"8px","overflow":"hidden","flex-shrink":"0","background":"var(--primary-background)"},"breakpoints":{"tablet":{"width":"62px","height":"62px"},"desktop":{"width":"66px","height":"66px"}}},"offer-card-image":{"tag":"img","editable":true,"parent":"offer-card-img","role":"Product image (img tag) inside offer card thumbnail. Source set dynamically from first product image. Object-fit cover to fill the thumbnail wrapper.","content":[],"style":{"width":"100%","height":"100%","object-fit":"cover","display":"block"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-details":{"tag":"div","editable":true,"parent":"offer-card-inner","role":"Text details container inside offer card. Vertical flex column with offer-card-name (pack name) and offer-card-price (price). Flex: 1 to fill available space.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"4px","flex":"1","min-width":"0"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-name":{"tag":"span","editable":true,"parent":"offer-card-details","role":"Pack\/offer name text (span). Pack 1 uses content.text.single (e.g. '1 Unit'). Pack 2 uses content.text.pack2 (e.g. 'Pack of 2'). Pack 3 uses content.text.pack3 (e.g. 'Pack of 3'). content.text.currency \u2192 currency label after price.","content":{"text":{"single":{"en":"1 Unit","fr":"1 Unit\u00e9","ar":"\u0642\u0637\u0639\u0629 \u0648\u0627\u062d\u062f\u0629"},"pack2":{"en":"Pack of 2","fr":"Pack de 2","ar":"\u0642\u0637\u0639\u062a\u0627\u0646"},"pack3":{"en":"Pack of 3","fr":"Pack de 3","ar":"\u062b\u0644\u0627\u062b \u0642\u0637\u0639"},"currency":{"en":"DA","fr":"DA","ar":"\u062f.\u062c"}}},"style":{"font-size":"var(--font-m)","font-weight":"700","color":"var(--default-color)","letter-spacing":"0.2px"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-price":{"tag":"span","editable":true,"parent":"offer-card-details","role":"Price display in offer card (span). Shows calculated price for this pack (unit price \u00d7 quantity). Value set dynamically at runtime via JS. Accent-color text.","content":[],"style":{"font-size":"var(--font-s)","font-weight":"600","color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-qty":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Quantity multiplier badge. Displays x1 for pack 1, x2 for pack 2, x3 for pack 3. Hardcoded in template HTML.","content":[],"style":{"background":"var(--primary-background)","color":"var(--primary-color)","font-size":"14px","font-weight":"800","padding":"8px 14px","border-radius":"8px","flex-shrink":"0","min-width":"44px","text-align":"center"},"breakpoints":{"tablet":{"font-size":"15px","padding":"9px 16px"},"desktop":[]}},"quantity-stepper":{"tag":"div","editable":true,"parent":"group","role":"Quantity stepper container. Inline flex row with: qty-btn (minus), qty-input (number field), qty-btn (plus). Controls product quantity for checkout.","content":[],"style":{"display":"inline-flex","align-items":"center","border-radius":"8px","overflow":"hidden","background":"white"},"breakpoints":{"tablet":[],"desktop":[]}},"qty-btn":{"tag":"button","editable":true,"parent":"quantity-stepper","role":"Increment (+) or decrement (\u2212) button for quantity stepper. Two instances: minus button and plus button. Primary-color background. Disabled state (opacity 0.4, cursor not-allowed) when quantity is at min\/max.","content":[],"style":{"width":"44px","height":"44px","border":"none","background":"#f5f5f5","font-size":"var(--font-xl)","font-weight":"500","background-color":"var(--primary-color)","color":"var(--primaryText-color)","cursor":"pointer","transition":"background 0.15s","display":"flex","align-items":"center","justify-content":"center","padding-bottom":"5px"},"disabled":{"opacity":"0.4","cursor":"not-allowed"},"breakpoints":{"tablet":[],"desktop":[]}},"qty-input":{"tag":"input","editable":true,"parent":"quantity-stepper","role":"Numeric input field between +\/- buttons. Shows current quantity value. Centered text, no spin buttons (hidden via CSS). Width fills remaining space between two qty-btn buttons.","content":[],"style":{"width":"calc(100% - 88px)","height":"44px","border":"none","border-left":"1px solid #e0e0e0","border-right":"1px solid #e0e0e0","text-align":"center","font-size":"var(--font-m)","font-weight":"600","color":"var(--default-color)","background":"#ffffffc9"},"focus":{"outline":"none"},"breakpoints":{"tablet":[],"desktop":[]}},"price-summary":{"tag":"div","editable":true,"parent":"form","role":"Price summary box. Contains price-row (subtotal), price-row (delivery), price-divider, and price-total. content.text maps: subtotal, delivery, total (multilingual labels). Values calculated dynamically via JS.","content":{"text":{"subtotal":{"en":"Subtotal","fr":"Sous-total","ar":"\u0627\u0644\u0645\u062c\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064a"},"delivery":{"en":"Delivery","fr":"Livraison","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644"},"total":{"en":"Total","fr":"Total","ar":"\u0627\u0644\u0645\u062c\u0645\u0648\u0639"}}},"style":{"padding":"15px","box-shadow":"0 1px 3px rgba(0, 0, 0, 0.08)","margin-top":"15px","border-radius":"8px","background":"#ffffffc9"},"breakpoints":{"tablet":[],"desktop":[]}},"price-row":{"tag":"div","editable":true,"parent":"price-summary","role":"Single price row inside price-summary. Flex row with label (left) and value (right). Used for subtotal and delivery rows. Accent-color text.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","margin-bottom":"10px","font-size":"var(--font-m)","color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"price-divider":{"tag":"div","editable":true,"parent":"price-summary","role":"Horizontal divider line inside price-summary. Separates subtotal\/delivery rows from the total row. 1px gray line.","content":[],"style":{"height":"1px","background":"#e0e0e0","margin":"12px 0"},"breakpoints":{"tablet":[],"desktop":[]}},"price-total":{"tag":"div","editable":true,"parent":"price-summary","role":"Final total row inside price-summary. Flex row with 'Total' label (left) and total amount (right). Bold primary-color text, larger font than other rows.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","font-size":"var(--font-l)","font-weight":"700","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"coupon":{"tag":"div","editable":true,"parent":"form","role":"Coupon section container. Flex row with input field and apply button. content.text maps: label \u2192 field label, placeholder \u2192 input placeholder, apply \u2192 button text, success \u2192 success message, error \u2192 error message. All multilingual. JS handles validation.","content":{"text":{"label":{"en":"Coupon Code","fr":"Code promo","ar":"\u0631\u0645\u0632 \u0627\u0644\u0642\u0633\u064a\u0645\u0629"},"placeholder":{"en":"Enter your code","fr":"Entrez votre code","ar":"\u0623\u062f\u062e\u0644 \u0627\u0644\u0631\u0645\u0632"},"apply":{"en":"Apply","fr":"Appliquer","ar":"\u062a\u0637\u0628\u064a\u0642"},"success":{"en":"Coupon applied!","fr":"Code appliqu\u00e9!","ar":"\u062a\u0645 \u062a\u0637\u0628\u064a\u0642 \u0627\u0644\u0642\u0633\u064a\u0645\u0629!"},"error":{"en":"Invalid code","fr":"Code invalide","ar":"\u0631\u0645\u0632 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d"}}},"style":{"display":"flex","gap":"10px","align-items":"flex-end"},"breakpoints":{"tablet":[],"desktop":[]}},"email":{"tag":"input","editable":true,"parent":"group","role":"Email input field (input type=email). For customer contact email. Shares visual style with input element via hardcoded CSS. Only displayed when email collection is enabled.","content":[],"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"country":{"tag":"select","editable":true,"parent":"group","role":"Country selection dropdown (select tag). For multi-country support. Lists available countries. Shares visual style with input element via hardcoded CSS. Only displayed when multi-country is enabled.","content":[],"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"submit":{"tag":"button","editable":true,"parent":"form","role":"Submit button (button tag). Places the order. content.text.checkout \u2192 button text (multilingual, default: 'Order Now'). Has pulse animation (max-cta-pulse keyframe). Disabled state when form is submitting (opacity 0.5, no animation). Full width, uppercase, primary-color background.","content":{"text":{"checkout":{"en":"Order Now","fr":"Commander","ar":"\u0627\u0637\u0644\u0628 \u0627\u0644\u0622\u0646"}}},"style":{"padding":"18px 28px","background-color":"var(--primary-color)","color":"var(--primaryText-color)","border":"none","border-radius":"12px","font-size":"var(--font-l)","font-weight":"700","cursor":"pointer","transition":"all 0.2s","text-transform":"uppercase","width":"100%","letter-spacing":"1px","box-shadow":"0 4px 15px rgba(0,0,0,0.2)","animation":"max-cta-pulse 2s ease-in-out infinite","display":"flex","align-items":"center","justify-content":"center","gap":"10px"},"keyframes":{"max-cta-pulse":{"0":{"box-shadow":"0 4px 15px rgba(0,0,0,0.2)","transform":"translateY(0)"},"50":{"box-shadow":"0 8px 30px rgba(0,0,0,0.35)","transform":"translateY(-3px)"},"100":{"box-shadow":"0 4px 15px rgba(0,0,0,0.2)","transform":"translateY(0)"}}},"hover":{"opacity":"0.9","transform":"translateY(-2px)","animation":"none"},"disabled":{"opacity":"0.5","cursor":"not-allowed","animation":"none"},"breakpoints":{"tablet":[],"desktop":[]}},"out-of-stock":{"tag":"div","editable":true,"parent":null,"role":"Out-of-stock container. Replaces the entire form when product.stock <= 0. Centered layout with dashed border. Contains out-of-stock-title and out-of-stock-subtext. content.text \u2192 main message, content.subtext \u2192 secondary message. Multilingual.","content":{"text":{"en":"This product is currently unavailable","fr":"Ce produit est actuellement indisponible","ar":"\u0647\u0630\u0627 \u0627\u0644\u0645\u0646\u062a\u062c \u063a\u064a\u0631 \u0645\u062a\u0648\u0641\u0631 \u062d\u0627\u0644\u064a\u0627\u064b"},"subtext":{"en":"Please check back later or browse our other products","fr":"Veuillez revenir plus tard ou parcourir nos autres produits","ar":"\u064a\u0631\u062c\u0649 \u0627\u0644\u0645\u062d\u0627\u0648\u0644\u0629 \u0644\u0627\u062d\u0642\u0627\u064b \u0623\u0648 \u062a\u0635\u0641\u062d \u0645\u0646\u062a\u062c\u0627\u062a\u0646\u0627 \u0627\u0644\u0623\u062e\u0631\u0649"}},"style":{"display":"flex","flex-direction":"column","align-items":"center","justify-content":"center","gap":"20px","padding":"50px 25px","background":"linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%)","border":"2px dashed #cbd5e1","border-radius":"16px","text-align":"center","margin-top":"20px"},"breakpoints":{"tablet":{"padding":"60px 40px","gap":"24px"},"desktop":{"padding":"70px 50px","gap":"28px"}}},"out-of-stock-title":{"tag":"span","editable":true,"parent":"out-of-stock","role":"Main title text for out-of-stock message (span). Displays content.text from parent out-of-stock element. Bold, large text.","content":[],"style":{"font-size":"var(--font-xl)","font-weight":"700","color":"var(--default-color)","letter-spacing":"-0.025em"},"breakpoints":{"tablet":[],"desktop":[]}},"out-of-stock-subtext":{"tag":"p","editable":true,"parent":"out-of-stock","role":"Secondary description for out-of-stock message (p tag). Displays content.subtext from parent out-of-stock element. Lighter accent-color text, smaller font.","content":[],"style":{"font-size":"var(--font-m)","font-weight":"400","color":"var(--accent-color)","margin":"0","max-width":"300px","line-height":"1.5"},"breakpoints":{"tablet":{"max-width":"350px"},"desktop":{"max-width":"400px"}}}}}],"thankyou":[{"name":"thankyou","label":"Max Thank You","icon":"fa-light fa-circle-check","category":"checkout","version":"1.0.0","componentId":"064382f6beff_1775084668","theme":"max","languages":["en","fr","ar"],"details":{"note":"Clean order confirmation page with gradient accents and subtle animations. Displays order details.","allowed":"Modify: content (text), style\/breakpoints (CSS)."},"edk":"UI element (thankyou), this element is the order confirmation page displayed after successful checkout. It contains: animated success badge circle with checkmark icon inside, confirmation heading with gradient text (like Order Confirmed!), order details card showing order reference number, order date, total amount, delivery location (wilaya and city), customer phone number - each on its own row with label and value, thank you message paragraph explaining that customer will be contacted within 24 hours. The user can easily modify the text or style of this component, just call agent designer !","template":{"thankyou":{"tag":"div","editable":true,"parent":null,"role":"Root container for order confirmation page. Centered column layout with max-width 600px. Contains: success-badge (animated circle), heading (gradient text), order-card (order details), and message (confirmation text).","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"32px","padding":"48px 20px","max-width":"600px","margin":"0 auto"},"breakpoints":{"tablet":{"padding":"64px 24px","gap":"40px"},"desktop":{"padding":"80px 32px"}}},"success-badge":{"tag":"div","editable":true,"parent":"thankyou","role":"Animated circular badge at top of page. Gradient background (primary \u2192 secondary color). Pulse animation via max-pulse keyframe. Contains success-icon (checkmark). Responsive sizing: 100px \u2192 120px \u2192 140px.","content":[],"style":{"width":"100px","height":"100px","border-radius":"50%","background":"linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%)","display":"flex","align-items":"center","justify-content":"center","box-shadow":"0 8px 24px rgba(79, 70, 229, 0.3)","animation":"max-pulse 2s ease-in-out infinite"},"keyframes":{"max-pulse":{"0":{"transform":"scale(1)","box-shadow":"0 8px 24px rgba(79, 70, 229, 0.3)"},"50":{"transform":"scale(1.05)","box-shadow":"0 12px 32px rgba(79, 70, 229, 0.4)"},"100":{"transform":"scale(1)","box-shadow":"0 8px 24px rgba(79, 70, 229, 0.3)"}}},"breakpoints":{"tablet":{"width":"120px","height":"120px"},"desktop":{"width":"140px","height":"140px"}}},"success-icon":{"tag":"i","editable":true,"parent":"success-badge","role":"White checkmark icon inside success-badge circle. content.icon \u2192 fa-solid fa-check. To change the icon, modify content.icon. Responsive font-size: 48px \u2192 56px \u2192 64px.","content":{"icon":"fa-solid fa-check"},"style":{"color":"#FFFFFF","font-size":"48px"},"breakpoints":{"tablet":{"font-size":"56px"},"desktop":{"font-size":"64px"}}},"heading":{"tag":"h1","editable":true,"parent":"thankyou","role":"Main confirmation heading (h1) with gradient text effect (primary \u2192 secondary color). content.text contains multilingual text (default: 'Order Confirmed!'). To change heading, modify content.text for each language.","content":{"text":{"en":"Order Confirmed!","fr":"Commande Confirm\u00e9e!","ar":"\u062a\u0645 \u062a\u0623\u0643\u064a\u062f \u0627\u0644\u0637\u0644\u0628!"}},"style":{"margin":"0","font-size":"var(--font-xxl)","font-weight":"800","text-align":"center","background":"linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%)","background-clip":"text"},"breakpoints":{"tablet":[],"desktop":[]}},"order-card":{"tag":"div","editable":true,"parent":"thankyou","role":"Card container for order information. White background with rounded corners and shadow. Contains multiple info-row elements displaying: reference, date, total, delivery type, wilaya, commune, address, phone.","content":[],"style":{"width":"100%","background":"#FFFFFF","border-radius":"16px","padding":"28px","box-shadow":"0 4px 12px rgba(0, 0, 0, 0.08)","display":"flex","flex-direction":"column","gap":"16px"},"breakpoints":{"tablet":{"padding":"32px","gap":"20px"},"desktop":{"padding":"36px"}}},"info-row":{"tag":"div","editable":true,"parent":"order-card","role":"Single info row inside order-card. Flex row with label (left) and value (right). Bottom border separates rows. Repeated for each order detail (reference, date, total, delivery, wilaya, commune, address, phone).","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","padding-bottom":"16px","border-bottom":"1px solid #F3F4F6","font-size":"var(--font-m)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-label":{"tag":"span","editable":true,"parent":"info-row","role":"Label text inside info-row. Displays the field name (Order Number, Date, Total, etc.). Semi-bold weight with default color.","content":[],"style":{"font-weight":"600","color":"var(--default-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-value":{"tag":"span","editable":true,"parent":"info-row","role":"Value text inside info-row for standard fields (date, delivery address, phone). Accent color.","content":[],"style":{"color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-value-highlight":{"tag":"span","editable":true,"parent":"info-row","role":"Value text inside info-row for highlighted fields (order reference, total). Bold primary color for emphasis.","content":[],"style":{"font-weight":"700","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"message":{"tag":"p","editable":true,"parent":"thankyou","role":"Final confirmation message below order card (p tag). content.text contains multilingual message about 24h contact for delivery confirmation. To change message, modify content.text for each language.","content":{"text":{"en":"We will contact you within 24 hours to confirm delivery. Thank you for your order!","fr":"Nous vous contacterons sous 24h pour confirmer la livraison. Merci pour votre commande!","ar":"\u0633\u0646\u062a\u0635\u0644 \u0628\u0643 \u062e\u0644\u0627\u0644 24 \u0633\u0627\u0639\u0629 \u0644\u062a\u0623\u0643\u064a\u062f \u0627\u0644\u062a\u0648\u0635\u064a\u0644. \u0634\u0643\u0631\u0627\u064b \u0644\u0637\u0644\u0628\u0643!"}},"style":{"text-align":"center","color":"var(--accent-color)","font-size":"var(--font-m)","line-height":"1.6","max-width":"500px"},"breakpoints":{"tablet":[],"desktop":[]}}}}]}}"
  "2026-04-01 23:04:29"
  166
]
22 63.91 ms
UPDATE website SET colors = ?, products = ?, edited_at = ? WHERE id = ?
Parameters:
[
  "{"version":1,"data":{"default":"#151515","accent":"#4D4D4D","primary":"#7A0F1A","primaryText":"#ffffff","secondary":"#1A2A3C","secondaryText":"#ffffff","background":"#ffffff","primaryBackground":"#F4EAEA","secondaryBackground":"#ECEFF3"}}"
  "{"version":1,"data":{"83783390":{"active":true,"identity":{"name":{"fr":"Sweat \u00e0 Capuche Graphique Beige","en":"Beige Graphic Hoodie","ar":"\u0647\u0648\u062f\u064a \u0628\u064a\u062c \u0628\u0637\u0628\u0627\u0639\u0629 \u062c\u0631\u0627\u0641\u064a\u0643"},"description":{"fr":"Style moderne avec imprim\u00e9 inspirant au dos","en":"Modern style with an inspiring back graphic","ar":"\u0623\u0633\u0644\u0648\u0628 \u0639\u0635\u0631\u064a \u0645\u0639 \u0637\u0628\u0627\u0639\u0629 \u0645\u062d\u0641\u0632\u0629 \u0639\u0644\u0649 \u0627\u0644\u0638\u0647\u0631"}},"pricing":{"price":10000,"promotion":{"active":true,"percentage":10,"end":"2026-04-08T23:04:28"},"offers":{"2":{"active":false,"price":0},"3":{"active":false,"price":0},"4":{"active":false,"price":0}}},"inventory":{"stock":10000,"sold":0},"analytics":{"view":0},"variants":{"sizes":{"1":{"name":"","upsell":0,"position":1},"2":{"name":"","upsell":0,"position":2},"3":{"name":"","upsell":0,"position":3},"4":{"name":"","upsell":0,"position":4},"5":{"name":"","upsell":0,"position":5},"6":{"name":"","upsell":0,"position":6}},"colors":{"1":{"hex":"","upsell":0,"position":1},"2":{"hex":"","upsell":0,"position":2},"3":{"hex":"","upsell":0,"position":3},"4":{"hex":"","upsell":0,"position":4},"5":{"hex":"","upsell":0,"position":5},"6":{"hex":"","upsell":0,"position":6}}},"media":{"images":{"1":{"url":"\/uploads\/83783390_1775084668_d091bf2e.jpg","alt":""},"2":{"url":"","alt":""},"3":{"url":"","alt":""},"4":{"url":"","alt":""},"5":{"url":"","alt":""},"6":{"url":"","alt":""}}}}}}"
  "2026-04-01 23:04:29"
  167
]
23 67.32 ms
UPDATE website SET colors = ?, products = ?, web = ?, edited_at = ? WHERE id = ?
Parameters:
[
  "{"version":1,"data":{"default":"#151515","accent":"#4D4D4D","primary":"#7A0F1A","primaryText":"#ffffff","secondary":"#1A2A3C","secondaryText":"#ffffff","background":"#ffffff","primaryBackground":"#F4EAEA","secondaryBackground":"#ECEFF3"}}"
  "{"version":1,"data":{"83783390":{"active":true,"identity":{"name":{"fr":"Sweat \u00e0 Capuche Graphique Beige","en":"Beige Graphic Hoodie","ar":"\u0647\u0648\u062f\u064a \u0628\u064a\u062c \u0628\u0637\u0628\u0627\u0639\u0629 \u062c\u0631\u0627\u0641\u064a\u0643"},"description":{"fr":"Style moderne avec imprim\u00e9 inspirant au dos","en":"Modern style with an inspiring back graphic","ar":"\u0623\u0633\u0644\u0648\u0628 \u0639\u0635\u0631\u064a \u0645\u0639 \u0637\u0628\u0627\u0639\u0629 \u0645\u062d\u0641\u0632\u0629 \u0639\u0644\u0649 \u0627\u0644\u0638\u0647\u0631"}},"pricing":{"price":10000,"promotion":{"active":true,"percentage":10,"end":"2026-04-08T23:04:28"},"offers":{"2":{"active":false,"price":0},"3":{"active":false,"price":0},"4":{"active":false,"price":0}}},"inventory":{"stock":10000,"sold":0},"analytics":{"view":0},"variants":{"sizes":{"1":{"name":"","upsell":0,"position":1},"2":{"name":"","upsell":0,"position":2},"3":{"name":"","upsell":0,"position":3},"4":{"name":"","upsell":0,"position":4},"5":{"name":"","upsell":0,"position":5},"6":{"name":"","upsell":0,"position":6}},"colors":{"1":{"hex":"","upsell":0,"position":1},"2":{"hex":"","upsell":0,"position":2},"3":{"hex":"","upsell":0,"position":3},"4":{"hex":"","upsell":0,"position":4},"5":{"hex":"","upsell":0,"position":5},"6":{"hex":"","upsell":0,"position":6}}},"media":{"images":{"1":{"url":"\/uploads\/83783390_1775084668_d091bf2e.jpg","alt":""},"2":{"url":"","alt":""},"3":{"url":"","alt":""},"4":{"url":"","alt":""},"5":{"url":"","alt":""},"6":{"url":"","alt":""}}}}}}"
  "{"version":1,"data":{"home":[],"products":[{"name":"carousel","label":"Convert Carousel","icon":"fa-light fa-images","category":"product","version":"1.0.0","componentId":"9c2c8e34972c_1775084668","theme":"convert","languages":["en","fr","ar"],"details":{"note":"Product carousel using Swiper.js with thumbnail navigation. Main slider shows one image at a time, synced with scrollable thumb strip below.","allowed":"Modify: style\/breakpoints (CSS properties)."},"edk":"UI element (carousel), this element is a product image gallery with a main slider showing one image at a time and clickable thumbnail navigation below. It includes previous\/next navigation arrows. The user can easily modify the style of this component, just call agent designer !","template":{"carousel":{"tag":"div","editable":true,"parent":null,"role":"Root carousel container. Contains main-swiper and thumb-swiper vertically stacked with gap.","content":[],"style":{"position":"relative","width":"100%","display":"flex","flex-direction":"column","gap":"0px","padding":"var(--space)","background-color":"transparent","margin-top":"20px"},"breakpoints":{"tablet":{"gap":"0px"},"desktop":{"gap":"0px"}}},"main-swiper":{"tag":"div","editable":true,"parent":"carousel","role":"Main Swiper.js slider container. Rounded corners, overflow hidden. Max-height on tablet\/desktop to prevent images from taking full screen.","content":{"slidesPerView":1,"spaceBetween":0,"loop":true},"style":{"width":"100%","border-radius":"0px","overflow":"hidden"},"breakpoints":{"tablet":{"border-radius":"0px","max-height":"420px"},"desktop":{"border-radius":"0px","max-height":"480px"}}},"slide":{"tag":"div","editable":true,"parent":"main-swiper","role":"Individual slide. Centers image content within constrained height.","content":[],"style":{"display":"flex","align-items":"center","justify-content":"center","overflow":"hidden"},"breakpoints":{"tablet":[],"desktop":[]}},"image":{"tag":"img","editable":true,"parent":"slide","role":"Product image in main slider. Scales down within max-height using max-width\/max-height to preserve aspect ratio.","content":[],"style":{"max-width":"100%","height":"auto","object-fit":"contain","border-radius":"0px","object-position":"center","display":"block"},"breakpoints":{"tablet":{"max-height":"420px"},"desktop":{"max-height":"480px"}}},"nav-prev":{"tag":"div","editable":true,"parent":"main-swiper","role":"Previous slide navigation button. Core layout handled by Swiper CSS + inline styles. Only editable appearance properties here.","content":[],"style":{"background":"transparent","border-radius":"0px","color":"#111"},"breakpoints":{"tablet":[],"desktop":[]}},"nav-next":{"tag":"div","editable":true,"parent":"main-swiper","role":"Next slide navigation button. Core layout handled by Swiper CSS + inline styles. Only editable appearance properties here.","content":[],"style":{"background":"transparent","border-radius":"0px","color":"#111"},"breakpoints":{"tablet":[],"desktop":[]}},"thumb-swiper":{"tag":"div","editable":true,"parent":"carousel","role":"Thumbnail Swiper.js container below main slider. Horizontal scrollable strip of small clickable thumbnails synced with main slider.","content":{"slidesPerView":4,"spaceBetween":8,"breakpoints":{"768":{"slidesPerView":5,"spaceBetween":14},"992":{"slidesPerView":6,"spaceBetween":16}}},"style":{"width":"100%","overflow":"hidden"},"breakpoints":{"tablet":[],"desktop":[]}},"thumb-slide":{"tag":"div","editable":true,"parent":"thumb-swiper","role":"Individual thumbnail slide. Swiper controls the width via slidesPerView \u2014 do NOT set fixed width here. Border highlights active thumb.","content":[],"style":{"aspect-ratio":"1","border-radius":"0px","overflow":"hidden","cursor":"pointer","border":"1px solid transparent","background":"#f5f5f5","transition":"border-color 0.15s ease, opacity 0.15s ease"},"breakpoints":{"tablet":{"border-radius":"0px"},"desktop":{"border-radius":"0px"}}},"thumb-image":{"tag":"img","editable":true,"parent":"thumb-slide","role":"Thumbnail image. Object-fit cover to fill the square thumb cleanly.","content":[],"style":{"width":"100%","height":"100%","object-fit":"cover","object-position":"center","display":"block"},"breakpoints":{"tablet":[],"desktop":[]}}}},{"name":"product","label":"Product","icon":"fa-light fa-info","category":"product","version":"1.0.0","componentId":"30cec89447d7_1775084668","theme":"convert","languages":["en","fr","ar"],"details":{"note":"Product information display section with name, pricing, badges, stock status, and description. Shows promotion badges, calculates discounted prices, and displays stock availability with icons.","allowed":"Modify: content (text, icons), style\/hover\/breakpoints (add\/remove CSS lines)."},"edk":"UI element (product), this element displays all product information. It contains: product name as main heading, promotional badge showing discount percentage (like -20%), customizable text badge (like Limited Offer), countdown timer with days\/hours\/minutes\/seconds when promotion has end date, price display showing current price and old price crossed out if promotion active, stock status indicator with icon and text (in stock or out of stock), product description paragraph. The user can easily modify the text or style of this component, just call agent designer !","template":{"product":{"tag":"section","editable":true,"parent":null,"role":"Root product information section. Vertical flex column displaying: name (h1), badges (promo + badge), countdown timer, pricing (current + old price), stock status, and description. Gradient background.","content":[],"style":{"padding":"var(--space)","background":"#ffffff","width":"100%","display":"flex","flex-direction":"column","padding-top":"24px","gap":"10px"},"breakpoints":{"tablet":[],"desktop":[]}},"name":{"tag":"h1","editable":true,"parent":"product","role":"Product name heading (h1). Text set dynamically from product data (product.name[locale]). content.text is empty \u2014 filled at runtime by the system.","content":{"text":{"en":"","fr":"","ar":""}},"style":{"margin":"0","padding":"0","font-size":"var(--font-xxl)","font-weight":"800","color":"var(--default-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"badges":{"tag":"div","editable":true,"parent":"product","role":"Container for promotional badges. Horizontal flex row with wrapping. Contains promo (percentage badge) and badge (static text badge) side by side.","content":[],"style":{"display":"flex","align-items":"center","gap":"12px","flex-wrap":"wrap"},"breakpoints":{"tablet":[],"desktop":[]}},"promo":{"tag":"span","editable":true,"parent":"badges","role":"Promotion percentage badge (span). Only displayed when product.promotion > 0. Shows '-X%' text calculated from product.promotion value. Uses secondary-color background.","content":[],"style":{"background-color":"transparent","color":"var(--secondary-color)","padding":"0px","border-radius":"0px","font-size":"var(--font-s)","font-weight":"800","text-transform":"uppercase"},"breakpoints":{"tablet":[],"desktop":[]}},"badge":{"tag":"span","editable":true,"parent":"badges","role":"Static product badge with customizable text. content.text contains multilingual text (default: 'Limited Offer'). To change badge text, modify content.text for each language.","content":{"text":{"en":"Limited Offer","fr":"Offre Limit\u00e9e","ar":"\u0639\u0631\u0636 \u0645\u062d\u062f\u0648\u062f"}},"style":{"border-radius":"0px","padding":"0px","height":"auto","font-size":"calc(var(--font-m) - 2px)","font-weight":"700","display":"flex","align-items":"center","justify-content":"center","background-color":"transparent","color":"var(--secondary-color)","border":"none","box-shadow":"none"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown":{"tag":"div","editable":true,"parent":"product","role":"Countdown timer container. Shows days\/hours\/minutes\/seconds until promotion ends (product.endPromotion). Hidden when endPromotion date is past. Contains 4 countdown-item elements. JS updates values in real-time.","content":[],"style":{"display":"flex","align-items":"center","gap":"6px"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-item":{"tag":"div","editable":true,"parent":"countdown","role":"Individual countdown unit box. Contains countdown-value (number) and countdown-label (text). 4 instances: days, hours, minutes, seconds. Card-style with box-shadow.","content":[],"style":{"display":"flex","flex-direction":"row","align-items":"center","justify-content":"center","border-radius":"0px","padding":"0px","box-shadow":"none","border":"none","min-width":"auto","gap":"3px"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-value":{"tag":"span","editable":true,"parent":"countdown-item","role":"Numeric value for countdown unit (span). Updated dynamically via JS. Bold secondary-color text. Displays the remaining number for its time unit.","content":[],"style":{"font-size":"var(--font-m)","font-weight":"800","color":"var(--secondary-color)","line-height":"1"},"breakpoints":{"tablet":[],"desktop":[]}},"countdown-label":{"tag":"span","editable":true,"parent":"countdown-item","role":"Text label below countdown number. content.text maps: days \u2192 'Days', hours \u2192 'Hours', minutes \u2192 'Min', seconds \u2192 'Sec'. Multilingual. To change labels, modify content.text keys.","content":{"text":{"days":{"en":"Days","fr":"Jours","ar":"\u0623\u064a\u0627\u0645"},"hours":{"en":"Hours","fr":"Heures","ar":"\u0633\u0627\u0639\u0627\u062a"},"minutes":{"en":"Min","fr":"Min","ar":"\u062f\u0642\u0627\u0626\u0642"},"seconds":{"en":"Sec","fr":"Sec","ar":"\u062b\u0648\u0627\u0646\u064a"}}},"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-transform":"none","margin-top":"0px"},"breakpoints":{"tablet":[],"desktop":[]}},"pricing":{"tag":"div","editable":true,"parent":"product","role":"Price display container. Horizontal flex row showing price (current\/discounted) and optionally price-old (original with strikethrough) when promotion is active.","content":[],"style":{"display":"flex","align-items":"center","gap":"12px"},"breakpoints":{"tablet":[],"desktop":[]}},"price":{"tag":"span","editable":true,"parent":"pricing","role":"Current\/discounted price (span). Calculated at runtime: product.price minus promotion percentage. Direction: ltr for consistent number display. Primary-color text.","content":[],"style":{"font-size":"var(--font-xxl)","font-weight":"900","margin":"0","padding":"0","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"price-old":{"tag":"span","editable":true,"parent":"pricing","role":"Original price with strikethrough (span). Only displayed when product.promotion > 0. Shows full price before discount. Gray (#999) text with line-through.","content":[],"style":{"font-size":"var(--font-xl)","color":"#999","text-decoration":"line-through"},"breakpoints":{"tablet":[],"desktop":[]}},"stock":{"tag":"div","editable":true,"parent":"product","role":"Stock status indicator container. Displays stock-icon + stock-text. Green (primary-color) when product.stock > 0, red (#d32f2f via disabled state) when product.stock <= 0.","content":[],"style":{"display":"flex","align-items":"center","gap":"10px","color":"var(--primary-color, #509C2C)","background-color":"transparent","box-shadow":"none","padding":"0px","border-radius":"0px","font-size":"var(--font-s)"},"disabled":{"color":"#d32f2f"},"breakpoints":{"tablet":[],"desktop":[]}},"stock-icon":{"tag":"i","editable":true,"parent":"stock","role":"Stock status icon (i tag). content.icon_in_stock \u2192 fa-solid fa-check (shown when stock > 0). content.icon_out_stock \u2192 fa-solid fa-xmark (shown when stock <= 0). To change icons, modify content values.","content":{"icon_in_stock":"fa-solid fa-check","icon_out_stock":"fa-solid fa-xmark"},"style":{"font-size":"inherit","color":"inherit"},"breakpoints":{"tablet":[],"desktop":[]}},"stock-text":{"tag":"span","editable":true,"parent":"stock","role":"Stock status text (span). content.text.in_stock \u2192 shown when product.stock > 0. content.text.out_stock \u2192 shown when product.stock <= 0. Multilingual. To change messages, modify corresponding keys in content.text.","content":{"text":{"in_stock":{"en":"In stock and ready to ship","fr":"En stock et pr\u00eat \u00e0 \u00eatre exp\u00e9di\u00e9","ar":"\u0645\u062a\u0648\u0641\u0631 \u0641\u064a \u0627\u0644\u0645\u062e\u0632\u0648\u0646 \u0648\u062c\u0627\u0647\u0632 \u0644\u0644\u0634\u062d\u0646"},"out_stock":{"en":"Out of stock","fr":"Rupture de stock","ar":"\u063a\u064a\u0631 \u0645\u062a\u0648\u0641\u0631 \u0641\u064a \u0627\u0644\u0645\u062e\u0632\u0648\u0646"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"description":{"tag":"p","editable":true,"parent":"product","role":"Product description paragraph (p tag). Text set dynamically from product data (product.description[locale]). content.text is empty \u2014 filled at runtime by the system.","content":{"text":{"en":"","fr":"","ar":""}},"style":{"margin":"6px 0","display":"flex","flex-direction":"column","color":"var(--accent-color)","line-height":"1.65","font-size":"var(--font-m)"},"breakpoints":{"tablet":[],"desktop":[]}}}},{"name":"form","label":"Checkout Form","icon":"fa-light fa-receipt","category":"checkout","version":"1.0.0","languages":["en","fr","ar"],"componentId":"6ce83b1e30bf_1775084669","theme":"convert","details":{"note":"Complete checkout form with product selection, delivery options, and customer information. Includes Stimulus controllers for dynamic price calculation, city loading based on wilaya, and form submission. Supports size\/color upsells, quantity selection, and optional address field.","allowed":"Modify: content (labels, placeholders, delivery options), style\/hover\/focus\/breakpoints (add\/remove CSS lines)."},"edk":"UI element (form), this is the checkout form where customers place their orders. It contains: color selection with circular color swatches and optional price supplement displayed below each color, size selection with size buttons and optional price supplement displayed below each size, offer packs section with 3 options (pack 1 single unit without badge, pack 2 with promotional badge like Popular, pack 3 with promotional badge like Best Value), each pack card displays product thumbnail image, pack name, price and quantity multiplier. Quantity selector with minus button, quantity input field, and plus button. Customer information fields: input fields for firstname, lastname or fullname, phone number, select dropdown for wilaya, select dropdown for city, select for delivery type (home delivery or relay point), textarea for address. Price summary section showing subtotal line, delivery cost line, divider, and total line. Coupon section with input field and apply button. Submit button to place order. Out of stock message with title and description displayed when product is unavailable. The user can easily modify the text or style of this component, just call agent designer !","template":{"form":{"tag":"form","editable":true,"parent":null,"role":"Root form container for checkout process. Vertical flex column with gap. Contains: size\/color swatches, offer packs, quantity stepper, customer info fields (name, phone, wilaya, city, delivery, address), price summary, coupon, and submit button. Stimulus controllers handle dynamic pricing and form submission.","content":[],"style":{"gap":"10px","display":"flex","flex-direction":"column","padding":"var(--space)","padding-top":"20px","padding-bottom":"20px","background":"#ffffff"},"breakpoints":{"tablet":[],"desktop":[]}},"row":{"tag":"div","editable":true,"parent":"form","role":"Horizontal row container (flex). Splits content 50\/50 side by side. Used for firstname+lastname and wilaya+city field pairs. Contains two group-half children.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","gap":"21px"},"breakpoints":{"tablet":[],"desktop":[]}},"group":{"tag":"div","editable":true,"parent":"form","role":"Full-width vertical group (flex column). Contains label on top and field below (input, select, textarea, radios, color-swatches, size-swatches, offer-swatches, or quantity-stepper).","content":[],"style":{"display":"flex","flex-direction":"column","gap":"5px"},"breakpoints":{"tablet":[],"desktop":[]}},"group-half":{"tag":"div","editable":true,"parent":"row","role":"Half-width vertical group (50%) inside a row. Contains label on top and field below. Used for side-by-side field pairs like firstname+lastname and wilaya+city.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"5px","width":"calc(50% - 10.5px)"},"breakpoints":{"tablet":[],"desktop":[]}},"label":{"tag":"label","editable":true,"parent":"group","role":"Text label (label tag) above a field. content.text maps keys to multilingual labels: size, quantity, color, form_info, wilaya, city, delivery, fullname, firstname, lastname, phone, address, offer. To change a label, modify the corresponding key in content.text.","content":{"text":{"size":{"en":"Size","fr":"Taille","ar":"\u0627\u0644\u062d\u062c\u0645"},"quantity":{"en":"Quantity","fr":"Quantit\u00e9","ar":"\u0627\u0644\u0643\u0645\u064a\u0629"},"color":{"en":"Color","fr":"Couleur","ar":"\u0627\u0644\u0644\u0648\u0646"},"form_info":{"en":"Fill in your information","fr":"Remplissez vos informations","ar":"\u0627\u0645\u0644\u0623 \u0645\u0639\u0644\u0648\u0645\u0627\u062a\u0643"},"wilaya":{"en":"Wilaya","fr":"Wilaya","ar":"\u0627\u0644\u0648\u0644\u0627\u064a\u0629"},"city":{"en":"City","fr":"Ville","ar":"\u0627\u0644\u0645\u062f\u064a\u0646\u0629"},"delivery":{"en":"Delivery","fr":"Livraison","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644"},"fullname":{"en":"Full Name","fr":"Nom complet","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0643\u0627\u0645\u0644"},"firstname":{"en":"First Name","fr":"Pr\u00e9nom","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0623\u0648\u0644"},"lastname":{"en":"Last Name","fr":"Nom de famille","ar":"\u0627\u0633\u0645 \u0627\u0644\u0639\u0627\u0626\u0644\u0629"},"phone":{"en":"Phone","fr":"T\u00e9l\u00e9phone","ar":"\u0627\u0644\u0647\u0627\u062a\u0641"},"address":{"en":"Address","fr":"Adresse","ar":"\u0627\u0644\u0639\u0646\u0648\u0627\u0646"},"offer":{"en":"Our offers","fr":"Nos offres","ar":"\u0639\u0631\u0648\u0636\u0646\u0627"}}},"style":{"font-size":"var(--font-s)","font-weight":"600","margin-bottom":"3px","color":"var(--default-color)","text-transform":"uppercase","letter-spacing":"0.5px"},"breakpoints":{"tablet":[],"desktop":[]}},"select":{"tag":"select","editable":true,"parent":"group","role":"Dropdown select field. content.placeholders maps: wilaya, city (multilingual). content.delivery_options maps: home \u2192 'Home delivery', relay \u2192 'Relay point' (multilingual). Shares visual style with input element via hardcoded CSS.","content":{"placeholders":{"wilaya":{"en":"Wilaya","fr":"Wilaya","ar":"\u0627\u0644\u0648\u0644\u0627\u064a\u0629"},"city":{"en":"City","fr":"Ville","ar":"\u0627\u0644\u0645\u062f\u064a\u0646\u0629"}},"delivery_options":{"home":{"en":"Home delivery","fr":"Livraison \u00e0 domicile","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644 \u0644\u0644\u0645\u0646\u0632\u0644"},"relay":{"en":"Relay point","fr":"Point relais","ar":"\u0646\u0642\u0637\u0629 \u0627\u0644\u062a\u0648\u0635\u064a\u0644"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"input":{"tag":"input","editable":true,"parent":"group","role":"Text input field (input tag). Defines the shared visual style for all form inputs (input, select, textarea, email, country). content.placeholders maps: firstname, lastname, fullname, phone (multilingual). Style, focus, and breakpoints are shared via hardcoded CSS to select\/textarea\/email\/country.","content":{"placeholders":{"firstname":{"en":"First Name","fr":"Pr\u00e9nom","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0623\u0648\u0644"},"lastname":{"en":"Last Name","fr":"Nom de famille","ar":"\u0627\u0633\u0645 \u0627\u0644\u0639\u0627\u0626\u0644\u0629"},"fullname":{"en":"Full Name","fr":"Nom complet","ar":"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0643\u0627\u0645\u0644"},"phone":{"en":"Phone Number","fr":"T\u00e9l\u00e9phone","ar":"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062a\u0641"}}},"style":{"padding":"8px 0px","border":"none","box-shadow":"none","border-radius":"0px","font-size":"var(--font-m)","font-family":"inherit","color":"var(--default-color)","background-color":"transparent","transition":"border-color 0.15s","width":"100%","box-sizing":"border-box","border-bottom":"1.5px solid #d0d0d0"},"focus":{"outline":"none","border-bottom-color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"textarea":{"tag":"textarea","editable":true,"parent":"group","role":"Multi-line text input (textarea tag). content.placeholders maps: address (multilingual). Shares visual style with input element via hardcoded CSS. Used for the address field.","content":{"placeholders":{"address":{"en":"Enter your address","fr":"Entrez votre adresse","ar":"\u0623\u062f\u062e\u0644 \u0639\u0646\u0648\u0627\u0646\u0643"}}},"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"radios":{"tag":"div","editable":true,"parent":"group","role":"Container for delivery radio button options. Horizontal flex row with wrapping. Contains radio elements for delivery type selection (home delivery, relay point).","content":[],"style":{"display":"flex","gap":"20px","flex-wrap":"wrap"},"breakpoints":{"tablet":[],"desktop":[]}},"radio":{"tag":"label","editable":true,"parent":"radios","role":"Single radio button option (label tag wrapping native radio input + text). Used for delivery type options. Cursor pointer for clickability.","content":[],"style":{"display":"flex","align-items":"center","gap":"8px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"color-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for color swatch options. Horizontal flex row with wrapping. Contains color-swatch elements, one per available product color. Only displayed when product has color upsells.","content":[],"style":{"display":"flex","flex-wrap":"wrap","gap":"12px"},"breakpoints":{"tablet":[],"desktop":[]}},"color-swatch":{"tag":"label","editable":true,"parent":"color-swatches","role":"Individual color swatch (label tag). Contains hidden radio input + color-circle (visual indicator) + color-label (text name). One per product color option.","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"6px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"color-circle":{"tag":"span","editable":true,"parent":"color-swatch","role":"Outer circular border for color indicator. Contains color-circle-inner which shows the actual color. Border changes to primary-color when checked (input:checked + sibling selector in CSS).","content":[],"style":{"width":"36px","height":"36px","border-radius":"50%","border":"1.5px solid #ccc","padding":"4px","box-shadow":"none","transition":"all 0.15s","box-sizing":"border-box"},"hover":{"border-color":"#bbb"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"width":"40px","height":"40px"},"desktop":[]}},"color-circle-inner":{"tag":"span","editable":true,"parent":"color-circle","role":"Inner span showing the actual color (span). Background-color set inline via product color data (e.g. background-color: #FF0000). Inherits border-radius from parent color-circle for circular shape.","content":[],"style":{"display":"block","width":"100%","height":"100%","border-radius":"inherit"},"breakpoints":{"tablet":[],"desktop":[]}},"color-label":{"tag":"span","editable":true,"parent":"color-swatch","role":"Text label below color circle showing the color name (e.g. 'Red', 'Blue'). Text set dynamically from product color data. Truncated with ellipsis if too long (max-width 50px).","content":[],"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-align":"center","max-width":"50px","overflow":"hidden","text-overflow":"ellipsis","white-space":"nowrap"},"breakpoints":{"tablet":[],"desktop":[]}},"size-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for size swatch options. Horizontal flex row with wrapping. Contains size-swatch elements, one per available product size. Only displayed when product has size upsells.","content":[],"style":{"display":"flex","flex-wrap":"wrap","gap":"10px"},"breakpoints":{"tablet":[],"desktop":[]}},"size-swatch":{"tag":"label","editable":true,"parent":"size-swatches","role":"Individual size swatch (label tag). Contains hidden radio input + size-value (text box showing size) + size-label (upsell price). One per product size option.","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"4px","cursor":"pointer"},"breakpoints":{"tablet":[],"desktop":[]}},"size-value":{"tag":"span","editable":true,"parent":"size-swatch","role":"Size value display (span). Shows size text (e.g. 'S', 'M', 'L', 'XL'). Border changes to primary-color when checked (input:checked + sibling selector in CSS). Responsive padding.","content":[],"style":{"padding":"8px 14px","border-radius":"0px","border":"1.5px solid #e0e0e0","background":"white","font-size":"var(--font-m)","font-weight":"500","color":"var(--default-color)","box-shadow":"none","transition":"all 0.15s","white-space":"nowrap"},"hover":{"border-color":"#bbb"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"padding":"10px 16px"},"desktop":[]}},"size-label":{"tag":"span","editable":true,"parent":"size-swatch","role":"Upsell price label below size value (span). Shows additional cost for this size option (e.g. '+200 DA'). Text set dynamically from product upsell data.","content":[],"style":{"font-size":"var(--font-s)","color":"var(--accent-color)","text-align":"center"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-swatches":{"tag":"div","editable":true,"parent":"group","role":"Container for offer\/pack cards. Contains 3 cards: pack 1 (single, no badge), pack 2 (content.text.popular badge), pack 3 (content.text.best badge). Each card is an offer-card label with radio input + offer-card-inner.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"6px","width":"100%"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card":{"tag":"label","editable":true,"parent":"offer-swatches","role":"Individual offer card label. Wraps hidden radio input + offer-card-inner. 3 instances: pack 1 (value='', single, no badge), pack 2 (value='2', popular badge), pack 3 (value='3', best badge).","content":[],"style":{"display":"block","cursor":"pointer","position":"relative"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-inner":{"tag":"div","editable":true,"parent":"offer-card","role":"Visual card container inside offer-card. Sibling of hidden radio input \u2014 border-color changes to primary-color when radio is checked (input:checked + .offer-card-inner CSS selector). Contains: offer-card-badge-popular (pack 2) or offer-card-badge-best (pack 3), offer-card-img, offer-card-details, offer-card-qty.","content":[],"style":{"display":"flex","align-items":"center","gap":"10px","padding":"10px 12px","border":"1px solid #ddd","border-radius":"0px","background":"#ffffff","transition":"all 0.15s ease","position":"relative","overflow":"hidden","box-shadow":"none"},"hover":{"border-color":"var(--primary-color)"},"checked":{"border-color":"var(--primary-color)"},"breakpoints":{"tablet":{"padding":"12px 14px"},"desktop":[]}},"offer-card-badge-popular":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Badge label for Pack 2 card (span). Positioned absolute top-right corner of offer-card-inner. Displays content.text (multilingual: Special offer). Secondary-color background with secondaryText color, uppercase text.","content":{"text":{"en":"Special offer","fr":"Offre sp\u00e9ciale","ar":"\u0639\u0631\u0636 \u062e\u0627\u0635"}},"style":{"position":"absolute","top":"0","right":"0","background":"var(--secondary-color)","color":"var(--secondaryText-color)","font-size":"9px","font-weight":"700","padding":"3px 8px","text-transform":"uppercase","letter-spacing":"0.8px","z-index":"1"},"breakpoints":{"tablet":{"font-size":"9px","padding":"3px 10px"},"desktop":[]}},"offer-card-badge-best":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Badge label for Pack 3 card (span). Positioned absolute top-right corner of offer-card-inner. Displays content.text (multilingual). Secondary-color background with uppercase text.","content":{"text":{"en":"Best Value","fr":"Meilleur Prix","ar":"\u0623\u0641\u0636\u0644 \u0642\u064a\u0645\u0629"}},"style":{"position":"absolute","top":"0","right":"0","background":"var(--secondary-color)","color":"var(--secondaryText-color)","font-size":"9px","font-weight":"700","padding":"3px 8px","text-transform":"uppercase","letter-spacing":"0.8px","z-index":"1"},"breakpoints":{"tablet":{"font-size":"9px","padding":"3px 10px"},"desktop":[]}},"offer-card-img":{"tag":"div","editable":true,"parent":"offer-card-inner","role":"Product image thumbnail wrapper inside offer card (div). Rounded container with overflow hidden. Contains offer-card-image (img). Responsive sizing: 56px mobile \u2192 62px tablet \u2192 66px desktop.","content":[],"style":{"width":"44px","height":"44px","border-radius":"0px","overflow":"hidden","flex-shrink":"0","background":"var(--primary-background)"},"breakpoints":{"tablet":{"width":"48px","height":"48px"},"desktop":{"width":"52px","height":"52px"}}},"offer-card-image":{"tag":"img","editable":true,"parent":"offer-card-img","role":"Product image (img tag) inside offer card thumbnail. Source set dynamically from first product image. Object-fit cover to fill the thumbnail wrapper.","content":[],"style":{"width":"100%","height":"100%","object-fit":"cover","display":"block"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-details":{"tag":"div","editable":true,"parent":"offer-card-inner","role":"Text details container inside offer card. Vertical flex column with offer-card-name (pack name) and offer-card-price (price). Flex: 1 to fill available space.","content":[],"style":{"display":"flex","flex-direction":"column","gap":"4px","flex":"1","min-width":"0"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-name":{"tag":"span","editable":true,"parent":"offer-card-details","role":"Pack\/offer name text (span). Pack 1 uses content.text.single (e.g. '1 Unit'). Pack 2 uses content.text.pack2 (e.g. 'Pack of 2'). Pack 3 uses content.text.pack3 (e.g. 'Pack of 3'). content.text.currency \u2192 currency label after price.","content":{"text":{"single":{"en":"1 Unit","fr":"1 Unit\u00e9","ar":"\u0642\u0637\u0639\u0629 \u0648\u0627\u062d\u062f\u0629"},"pack2":{"en":"Pack of 2","fr":"Pack de 2","ar":"\u0642\u0637\u0639\u062a\u0627\u0646"},"pack3":{"en":"Pack of 3","fr":"Pack de 3","ar":"\u062b\u0644\u0627\u062b \u0642\u0637\u0639"},"currency":{"en":"DA","fr":"DA","ar":"\u062f.\u062c"}}},"style":{"font-size":"var(--font-m)","font-weight":"700","color":"var(--default-color)","letter-spacing":"0.2px"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-price":{"tag":"span","editable":true,"parent":"offer-card-details","role":"Price display in offer card (span). Shows calculated price for this pack (unit price \u00d7 quantity). Value set dynamically at runtime via JS. Accent-color text.","content":[],"style":{"font-size":"var(--font-s)","font-weight":"600","color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"offer-card-qty":{"tag":"span","editable":true,"parent":"offer-card-inner","role":"Quantity multiplier badge. Displays x1 for pack 1, x2 for pack 2, x3 for pack 3. Hardcoded in template HTML.","content":[],"style":{"background":"var(--primary-background)","color":"var(--primary-color)","font-size":"14px","font-weight":"800","padding":"6px 10px","border-radius":"0px","flex-shrink":"0","min-width":"44px","text-align":"center"},"breakpoints":{"tablet":{"font-size":"15px","padding":"7px 12px"},"desktop":[]}},"quantity-stepper":{"tag":"div","editable":true,"parent":"group","role":"Quantity stepper container. Inline flex row with: qty-btn (minus), qty-input (number field), qty-btn (plus). Controls product quantity for checkout.","content":[],"style":{"display":"inline-flex","align-items":"center","border-radius":"0px","overflow":"hidden","background":"white"},"breakpoints":{"tablet":[],"desktop":[]}},"qty-btn":{"tag":"button","editable":true,"parent":"quantity-stepper","role":"Increment (+) or decrement (\u2212) button for quantity stepper. Two instances: minus button and plus button. Primary-color background. Disabled state (opacity 0.4, cursor not-allowed) when quantity is at min\/max.","content":[],"style":{"width":"36px","height":"36px","border":"none","background":"#f5f5f5","font-size":"var(--font-xl)","font-weight":"500","background-color":"var(--primary-color)","color":"var(--primaryText-color)","cursor":"pointer","transition":"background 0.15s","display":"flex","align-items":"center","justify-content":"center","padding-bottom":"5px"},"disabled":{"opacity":"0.4","cursor":"not-allowed"},"breakpoints":{"tablet":[],"desktop":[]}},"qty-input":{"tag":"input","editable":true,"parent":"quantity-stepper","role":"Numeric input field between +\/- buttons. Shows current quantity value. Centered text, no spin buttons (hidden via CSS). Width fills remaining space between two qty-btn buttons.","content":[],"style":{"width":"calc(100% - 72px)","height":"36px","border":"none","border-left":"1px solid #e0e0e0","border-right":"1px solid #e0e0e0","text-align":"center","font-size":"var(--font-m)","font-weight":"600","color":"var(--default-color)","background":"#ffffffc9"},"focus":{"outline":"none"},"breakpoints":{"tablet":[],"desktop":[]}},"price-summary":{"tag":"div","editable":true,"parent":"form","role":"Price summary box. Contains price-row (subtotal), price-row (delivery), price-divider, and price-total. content.text maps: subtotal, delivery, total (multilingual labels). Values calculated dynamically via JS.","content":{"text":{"subtotal":{"en":"Subtotal","fr":"Sous-total","ar":"\u0627\u0644\u0645\u062c\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064a"},"delivery":{"en":"Delivery","fr":"Livraison","ar":"\u0627\u0644\u062a\u0648\u0635\u064a\u0644"},"total":{"en":"Total","fr":"Total","ar":"\u0627\u0644\u0645\u062c\u0645\u0648\u0639"}}},"style":{"padding":"12px 0px","box-shadow":"none","margin-top":"10px","border-radius":"0px","background":"transparent","border-top":"1px solid #e0e0e0"},"breakpoints":{"tablet":[],"desktop":[]}},"price-row":{"tag":"div","editable":true,"parent":"price-summary","role":"Single price row inside price-summary. Flex row with label (left) and value (right). Used for subtotal and delivery rows. Accent-color text.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","margin-bottom":"10px","font-size":"var(--font-m)","color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"price-divider":{"tag":"div","editable":true,"parent":"price-summary","role":"Horizontal divider line inside price-summary. Separates subtotal\/delivery rows from the total row. 1px gray line.","content":[],"style":{"height":"1px","background":"#e0e0e0","margin":"12px 0"},"breakpoints":{"tablet":[],"desktop":[]}},"price-total":{"tag":"div","editable":true,"parent":"price-summary","role":"Final total row inside price-summary. Flex row with 'Total' label (left) and total amount (right). Bold primary-color text, larger font than other rows.","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","font-size":"var(--font-l)","font-weight":"700","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"coupon":{"tag":"div","editable":true,"parent":"form","role":"Coupon section container. Flex row with input field and apply button. content.text maps: label \u2192 field label, placeholder \u2192 input placeholder, apply \u2192 button text, success \u2192 success message, error \u2192 error message. All multilingual. JS handles validation.","content":{"text":{"label":{"en":"Coupon Code","fr":"Code promo","ar":"\u0631\u0645\u0632 \u0627\u0644\u0642\u0633\u064a\u0645\u0629"},"placeholder":{"en":"Enter your code","fr":"Entrez votre code","ar":"\u0623\u062f\u062e\u0644 \u0627\u0644\u0631\u0645\u0632"},"apply":{"en":"Apply","fr":"Appliquer","ar":"\u062a\u0637\u0628\u064a\u0642"},"success":{"en":"Coupon applied!","fr":"Code appliqu\u00e9!","ar":"\u062a\u0645 \u062a\u0637\u0628\u064a\u0642 \u0627\u0644\u0642\u0633\u064a\u0645\u0629!"},"error":{"en":"Invalid code","fr":"Code invalide","ar":"\u0631\u0645\u0632 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d"}}},"style":{"display":"flex","gap":"10px","align-items":"flex-end"},"breakpoints":{"tablet":[],"desktop":[]}},"email":{"tag":"input","editable":true,"parent":"group","role":"Email input field (input type=email). For customer contact email. Shares visual style with input element via hardcoded CSS. Only displayed when email collection is enabled.","content":[],"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"country":{"tag":"select","editable":true,"parent":"group","role":"Country selection dropdown (select tag). For multi-country support. Lists available countries. Shares visual style with input element via hardcoded CSS. Only displayed when multi-country is enabled.","content":[],"style":[],"breakpoints":{"tablet":[],"desktop":[]}},"submit":{"tag":"button","editable":true,"parent":"form","role":"Submit button (button tag). Places the order. content.text.checkout \u2192 button text (multilingual, default: 'Order Now'). Has pulse animation (max-cta-pulse keyframe). Disabled state when form is submitting (opacity 0.5, no animation). Full width, uppercase, primary-color background.","content":{"text":{"checkout":{"en":"Order Now","fr":"Commander","ar":"\u0627\u0637\u0644\u0628 \u0627\u0644\u0622\u0646"}}},"style":{"padding":"14px 24px","background-color":"var(--primary-color)","color":"var(--primaryText-color)","border":"none","border-radius":"0px","font-size":"var(--font-l)","font-weight":"800","cursor":"pointer","transition":"opacity 0.15s","text-transform":"uppercase","width":"100%","letter-spacing":"1.5px","box-shadow":"none","animation":"none","display":"flex","align-items":"center","justify-content":"center","gap":"10px"},"keyframes":[],"hover":{"opacity":"0.85"},"disabled":{"opacity":"0.5","cursor":"not-allowed"},"breakpoints":{"tablet":[],"desktop":[]}},"out-of-stock":{"tag":"div","editable":true,"parent":null,"role":"Out-of-stock container. Replaces the entire form when product.stock <= 0. Centered layout with dashed border. Contains out-of-stock-title and out-of-stock-subtext. content.text \u2192 main message, content.subtext \u2192 secondary message. Multilingual.","content":{"text":{"en":"This product is currently unavailable","fr":"Ce produit est actuellement indisponible","ar":"\u0647\u0630\u0627 \u0627\u0644\u0645\u0646\u062a\u062c \u063a\u064a\u0631 \u0645\u062a\u0648\u0641\u0631 \u062d\u0627\u0644\u064a\u0627\u064b"},"subtext":{"en":"Please check back later or browse our other products","fr":"Veuillez revenir plus tard ou parcourir nos autres produits","ar":"\u064a\u0631\u062c\u0649 \u0627\u0644\u0645\u062d\u0627\u0648\u0644\u0629 \u0644\u0627\u062d\u0642\u0627\u064b \u0623\u0648 \u062a\u0635\u0641\u062d \u0645\u0646\u062a\u062c\u0627\u062a\u0646\u0627 \u0627\u0644\u0623\u062e\u0631\u0649"}},"style":{"display":"flex","flex-direction":"column","align-items":"center","justify-content":"center","gap":"14px","padding":"40px 20px","background":"#fafafa","border":"1px solid #e0e0e0","border-radius":"0px","text-align":"center","margin-top":"20px"},"breakpoints":{"tablet":{"padding":"50px 30px","gap":"18px"},"desktop":{"padding":"60px 40px","gap":"20px"}}},"out-of-stock-title":{"tag":"span","editable":true,"parent":"out-of-stock","role":"Main title text for out-of-stock message (span). Displays content.text from parent out-of-stock element. Bold, large text.","content":[],"style":{"font-size":"var(--font-xl)","font-weight":"700","color":"var(--default-color)","letter-spacing":"-0.025em"},"breakpoints":{"tablet":[],"desktop":[]}},"out-of-stock-subtext":{"tag":"p","editable":true,"parent":"out-of-stock","role":"Secondary description for out-of-stock message (p tag). Displays content.subtext from parent out-of-stock element. Lighter accent-color text, smaller font.","content":[],"style":{"font-size":"var(--font-m)","font-weight":"400","color":"var(--accent-color)","margin":"0","max-width":"300px","line-height":"1.5"},"breakpoints":{"tablet":{"max-width":"350px"},"desktop":{"max-width":"400px"}}}}}],"thankyou":[{"name":"thankyou","label":"Convert Thank You","icon":"fa-light fa-circle-check","category":"checkout","version":"1.0.0","componentId":"601ef3dbd75f_1775084669","theme":"convert","languages":["en","fr","ar"],"details":{"note":"Clean order confirmation page with minimal design. Displays order details.","allowed":"Modify: content (text), style\/breakpoints (CSS)."},"edk":"UI element (thankyou), this element is the order confirmation page displayed after successful checkout. It contains: animated success badge circle with checkmark icon inside, confirmation heading with gradient text (like Order Confirmed!), order details card showing order reference number, order date, total amount, delivery location (wilaya and city), customer phone number - each on its own row with label and value, thank you message paragraph explaining that customer will be contacted within 24 hours. The user can easily modify the text or style of this component, just call agent designer !","template":{"thankyou":{"tag":"div","editable":true,"parent":null,"role":"Root container for order confirmation page. Centered column layout with max-width 600px. Contains: success-badge (animated circle), heading (gradient text), order-card (order details), and message (confirmation text).","content":[],"style":{"display":"flex","flex-direction":"column","align-items":"center","gap":"24px","padding":"36px 16px","max-width":"600px","margin":"0 auto"},"breakpoints":{"tablet":{"padding":"48px 20px","gap":"30px"},"desktop":{"padding":"60px 24px"}}},"success-badge":{"tag":"div","editable":true,"parent":"thankyou","role":"Circular badge at top of page. Flat primary color background. Contains success-icon (checkmark). Responsive sizing: 72px \u2192 84px \u2192 96px.","content":[],"style":{"width":"72px","height":"72px","border-radius":"50%","background":"var(--primary-color)","display":"flex","align-items":"center","justify-content":"center","box-shadow":"none","animation":"none"},"keyframes":[],"breakpoints":{"tablet":{"width":"84px","height":"84px"},"desktop":{"width":"96px","height":"96px"}}},"success-icon":{"tag":"i","editable":true,"parent":"success-badge","role":"White checkmark icon inside success-badge circle. content.icon \u2192 fa-solid fa-check. To change the icon, modify content.icon. Responsive font-size: 32px \u2192 38px \u2192 44px.","content":{"icon":"fa-solid fa-check"},"style":{"color":"#FFFFFF","font-size":"32px"},"breakpoints":{"tablet":{"font-size":"38px"},"desktop":{"font-size":"44px"}}},"heading":{"tag":"h1","editable":true,"parent":"thankyou","role":"Main confirmation heading (h1) with primary color text. content.text contains multilingual text (default: 'Order Confirmed!'). To change heading, modify content.text for each language.","content":{"text":{"en":"Order Confirmed!","fr":"Commande Confirm\u00e9e!","ar":"\u062a\u0645 \u062a\u0623\u0643\u064a\u062f \u0627\u0644\u0637\u0644\u0628!"}},"style":{"margin":"0","font-size":"var(--font-xxl)","font-weight":"800","text-align":"center","background":"var(--primary-color)","background-clip":"text"},"breakpoints":{"tablet":[],"desktop":[]}},"order-card":{"tag":"div","editable":true,"parent":"thankyou","role":"Card container for order information. Transparent background with top\/bottom borders. Contains multiple info-row elements displaying: reference, date, total, delivery type, wilaya, commune, address, phone.","content":[],"style":{"width":"100%","background":"transparent","border-radius":"0px","padding":"20px 0px","box-shadow":"none","display":"flex","flex-direction":"column","gap":"16px","border-top":"1px solid #e0e0e0","border-bottom":"1px solid #e0e0e0"},"breakpoints":{"tablet":{"padding":"24px 0px","gap":"20px"},"desktop":{"padding":"28px 0px"}}},"info-row":{"tag":"div","editable":true,"parent":"order-card","role":"Single info row inside order-card. Flex row with label (left) and value (right). Bottom border separates rows. Repeated for each order detail (reference, date, total, delivery, wilaya, commune, address, phone).","content":[],"style":{"display":"flex","justify-content":"space-between","align-items":"center","padding-bottom":"12px","border-bottom":"1px solid #e8e8e8","font-size":"var(--font-m)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-label":{"tag":"span","editable":true,"parent":"info-row","role":"Label text inside info-row. Displays the field name (Order Number, Date, Total, etc.). Semi-bold weight with default color.","content":[],"style":{"font-weight":"600","color":"var(--default-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-value":{"tag":"span","editable":true,"parent":"info-row","role":"Value text inside info-row for standard fields (date, delivery address, phone). Accent color.","content":[],"style":{"color":"var(--accent-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"info-value-highlight":{"tag":"span","editable":true,"parent":"info-row","role":"Value text inside info-row for highlighted fields (order reference, total). Bold primary color for emphasis.","content":[],"style":{"font-weight":"700","color":"var(--primary-color)"},"breakpoints":{"tablet":[],"desktop":[]}},"message":{"tag":"p","editable":true,"parent":"thankyou","role":"Final confirmation message below order card (p tag). content.text contains multilingual message about 24h contact for delivery confirmation. To change message, modify content.text for each language.","content":{"text":{"en":"We will contact you within 24 hours to confirm delivery. Thank you for your order!","fr":"Nous vous contacterons sous 24h pour confirmer la livraison. Merci pour votre commande!","ar":"\u0633\u0646\u062a\u0635\u0644 \u0628\u0643 \u062e\u0644\u0627\u0644 24 \u0633\u0627\u0639\u0629 \u0644\u062a\u0623\u0643\u064a\u062f \u0627\u0644\u062a\u0648\u0635\u064a\u0644. \u0634\u0643\u0631\u0627\u064b \u0644\u0637\u0644\u0628\u0643!"}},"style":{"text-align":"center","color":"var(--accent-color)","font-size":"var(--font-m)","line-height":"1.6","max-width":"460px"},"breakpoints":{"tablet":[],"desktop":[]}}}}]}}"
  "2026-04-01 23:04:29"
  168
]
24 67.42 ms
"COMMIT"
Parameters:
[]
25 62.33 ms
"START TRANSACTION"
Parameters:
[]
26 76.34 ms
INSERT INTO messenger_messages (body, headers, queue_name, created_at, available_at) VALUES(?, ?, ?, ?, ?)
Parameters:
[
  "O:36:\"Symfony\\Component\\Messenger\\Envelope\":2:{s:44:\"\0Symfony\\Component\\Messenger\\Envelope\0stamps\";a:2:{s:44:\"Symfony\\Component\\Messenger\\Stamp\\DelayStamp\";a:1:{i:0;O:44:\"Symfony\\Component\\Messenger\\Stamp\\DelayStamp\":1:{s:51:\"\0Symfony\\Component\\Messenger\\Stamp\\DelayStamp\0delay\";i:30000;}}s:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\";a:1:{i:0;O:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\":1:{s:55:\"\0Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\0busName\";s:21:\"messenger.bus.default\";}}}s:45:\"\0Symfony\\Component\\Messenger\\Envelope\0message\";O:40:\"App\\Messenger\\Message\\UploadImageMessage\":5:{s:9:\"websiteId\";i:166;s:16:\"productReference\";i:83783390;s:13:\"localFilePath\";s:88:\"/var/www/vhosts/edouk.com/httpdocs/edouk/public/uploads/83783390_1775084668_d091bf2e.jpg\";s:9:\"imageSlot\";i:1;s:13:\"userReference\";i:87321331;}}"
  "[]"
  "default"
  "2026-04-01 23:04:29"
  "2026-04-01 23:04:59"
]
27 66.64 ms
"COMMIT"
Parameters:
[]

Database Connections

Name Service
default doctrine.dbal.default_connection

Entity Managers

Name Service
default doctrine.orm.default_entity_manager

Second Level Cache

Second Level Cache is not enabled.

Managed Entities

default entity manager

Class Amount of managed objects
Core\Entity\Website 3
Core\Entity\User 1
Core\Entity\Setting 1
Core\Entity\Agent 1

Entities Mapping

Class Mapping errors
Core\Entity\Website No errors.
Core\Entity\User No errors.
Core\Entity\Setting No errors.
Core\Entity\Agent No errors.