PageSourceSearch

https://gourmetta.de/assets/AdBoxCampaignEdit-C3C5gq-X.js

js gourmetta.de collected 2026-10-10 00:54:12 UTC 170,867 bytes, 1 lines download raw bytes

1import{j as e,ah as t,a9 as i,ac as l,O as s,r as a,n,z as r,o,E as c,ae as d,ai as x,aa as u,ab as m,c as g,a8 as h,S as p,aj as b,a4 as v,a7 as f,H as j,ak as F,al as S,am as y,an as C,M as k,a as N,b as w,ao as T,ap as z,aq as U,ar as A,as as D,at as B,au as P,av as M,aw as L}from"./ui-DiBXrVWY.js";import{r as $,i as I,u as H}from"./vendor-i84kFR9k.js";import{B as _,a as V,S as E,C as G,k as R,l as W,o as K,b as O,z as q,i as Q}from"./index-DGjqdn0y.js";import{I as Z}from"./input-CBcrDd9S.js";import{L as J}from"./label-t-Dw-ftm.js";import{T as Y}from"./textarea-Bhw0-hCB.js";import{B as X}from"./badge-DyWo03mc.js";import{S as ee}from"./switch-Ce260Jkj.js";import{C as te}from"./checkbox-DYO7abda.js";import{T as ie,a as le,b as se,c as ae}from"./tabs-BRxviqjj.js";import{P as ne,a as re,b as oe,C as ce,c as de,d as xe,e as ue,f as me,g as ge}from"./command-DxIWGJXJ.js";import{P as he}from"./ProtectedAdminRoute-tzkaRuuz.js";import{t as pe}from"./toast-DSLqDRWK.js";import{D as be,b as ve,c as fe,d as je,e as Fe}from"./dialog-G9AX6ePn.js";import{I as Se}from"./ImageUploadField-CyEqBrE1.js";import{g as ye,i as Ce,a as ke,b as Ne,c as we,d as Te,e as ze,f as Ue,h as Ae,j as De,k as Be,l as Pe,L as Me}from"./login-banner-shared-p5TrPznf.js";import"./index-DDeruQ3_.js";import"./index-CfZnpEm1.js";import"./index-DSHwMnMA.js";import"./index-CMZTD8vN.js";import"./Combination-ChvFGuds.js";import"./index-B_YsZjQY.js";function Le(e){return new Date(e).toLocaleDateString("de-DE",{day:"2-digit",month:"2-digit",year:"numeric",hour:"2-digit",minute:"2-digit"})}function $e(e,t){return"number"==typeof e&&"number"==typeof t?`${e.toLocaleString("de-DE")} x ${t.toLocaleString("de-DE")} px`:"Abmessungen unbekannt"}const Ie={desktop:"Desktop",tablet:"Tablet",mobile:"Mobile",split:"Split-Screen",landscape:"Querformat",portrait:"Hochformat",split_portrait:"Split-Screen Hochformat"},He={order_app:"Order App",syncplay:"SyncPlay",login_page:"Login Page",homepage_slider:"Startseite",menuservice_homepage_slider:"Menuservice-Startseite",speiseplan_slider:"Speiseplanseite",action_side_by_side:"Aktions-Side-by-Side"},_e={schule:"Schule",menuservice:"Menüservice",individual_action:"Individuelle Aktion"};function Ve({open:o,onOpenChange:c,onSelect:d,expectedWidth:x,expectedHeight:u,minSquareSize:m}){const g="number"==typeof x&&"number"==typeof u,h="number"==typeof m,p=g||h,[b,v]=$.useState("adbox"),[f,j]=$.useState("all"),[F,S]=$.useState("all"),[y,C]=$.useState(p),[k,N]=$.useState(""),[w,T]=$.useState(null),[z,U]=$.useState(null),[A,D]=$.useState(null);$.useEffect(()=>{o&&C(p)},[o,p]);const B=V.useUtils(),{data:P,isLoading:M}=V.adbox.listMediaFiles.useQuery(void 0,{enabled:o&&"adbox"===b}),{data:L,isLoading:I}=V.meals.listImagesForMediaLibrary.useQuery(void 0,{enabled:o&&"meals"===b}),H="adbox"===b?M:I,E=V.adbox.deleteMediaFile.useMutation({onSuccess:()=>{pe.success("Datei gelöscht"),B.adbox.listMediaFiles.invalidate(),T(null),U(null)},onError:e=>{pe.error(e.message),T(null),U(null)}}),G=$.useMemo(()=>P?P.filter(e=>{if("all"!==f&&e.targetSystem!==f)return!1;if("used"===F&&0===e.usedBy.length)return!1;if("unused"===F&&e.usedBy.length>0)return!1;if(y){if(g&&(e.width!==x||e.height!==u))return!1;if(h&&("number"!=typeof e.width||"number"!=typeof e.height||e.width!==e.height||e.width<m))return!1}if(k){const t=k.toLowerCase(),i=e.key.replace(/^adbox\//,"").toLowerCase(),l=e.usedBy.map(e=>e.campaignTitle.toLowerCase()).join(" ");if(!i.includes(t)&&!l.includes(t))return!1}return!0}).sort((e,t)=>new Date(t.lastModified).getTime()-new Date(e.lastModified).getTime()):[],[P,f,F,y,g,x,u,h,m,k]),R=$.useMemo(()=>L?L.filter(e=>{if(y){if(g&&(e.width!==x||e.height!==u))return!1;if(h&&("number"!=typeof e.width||"number"!=typeof e.height||e.width!==e.height||e.width<m))return!1}if(k){const t=k.toLowerCase();if(!e.name.toLowerCase().includes(t)&&!e.slug.toLowerCase().includes(t))return!1}return!0}).sort((e,t)=>e.name.localeCompare(t.name,"de-DE")):[],[L,y,g,x,u,h,m,k]),W=$.useCallback((e,t)=>{if(!p)return d(t),void c(!1);D(e);const i=new window.Image;i.onload=()=>{D(null);
1const e=i.naturalWidth,l=i.naturalHeight;g?e===x&&l===u?(d(t),c(!1)):pe.error(`Falsches Format: Dieses Bild ist ${e.toLocaleString("de-DE")} x ${l.toLocaleString("de-DE")} px. Benötigt wird ${x.toLocaleString("de-DE")} x ${u.toLocaleString("de-DE")} px.`):h?e===l&&e>=m?(d(t),c(!1)):pe.error(`Falsches Format: Dieses Bild ist ${e.toLocaleString("de-DE")} x ${l.toLocaleString("de-DE")} px. Benötigt wird ein quadratisches Bild mit mindestens ${m.toLocaleString("de-DE")} x ${m.toLocaleString("de-DE")} px.`):(d(t),c(!1))},i.onerror=()=>{D(null),pe.error("Bild konnte nicht geladen werden.")},i.src=t},[p,g,h,x,u,m,d,c]);return e.jsx(be,{open:o,onOpenChange:c,children:e.jsxs(ve,{className:"sm:max-w-4xl !flex !flex-col max-h-[85vh] overflow-hidden",children:[e.jsxs(fe,{className:"shrink-0",children:[e.jsxs(je,{className:"flex items-center gap-2",children:[e.jsx(t,{className:"h-5 w-5"}),"Mediathek"]}),e.jsxs(Fe,{children:["adbox"===b?"Alle hochgeladenen AdBox-Bilder. Klicke auf ein Bild um es auszuwählen.":"Aktive Gerichte mit Bild. Nur passende Abmessungen sind auswählbar.",g&&e.jsxs("span",{className:"ml-1 font-medium",children:["Gesucht: ",x.toLocaleString("de-DE")," x"," ",u.toLocaleString("de-DE")," px"]}),!g&&h&&e.jsxs("span",{className:"ml-1 font-medium",children:["Gesucht: quadratisch, mind."," ",m.toLocaleString("de-DE")," x"," ",m.toLocaleString("de-DE")," px"]})]})]}),e.jsxs("div",{className:"shrink-0 flex flex-wrap gap-2 items-center",children:[e.jsxs("div",{className:"relative flex-1 min-w-[200px]",children:[e.jsx(i,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(Z,{placeholder:"Suchen...",value:k,onChange:e=>N(e.target.value),className:"pl-9 h-9"})]}),e.jsxs("div",{className:"flex gap-1",children:[e.jsxs(_,{size:"sm",variant:"adbox"===b?"default":"outline",onClick:()=>v("adbox"),className:"h-9",title:"AdBox-Mediathek",children:[e.jsx(t,{className:"h-3 w-3 mr-1"}),"AdBox"]}),e.jsxs(_,{size:"sm",variant:"meals"===b?"default":"outline",onClick:()=>v("meals"),className:"h-9",title:"Bilder aus Gerichten",children:[e.jsx(l,{className:"h-3 w-3 mr-1"}),"Gerichte"]})]}),e.jsx("div",{className:"flex gap-1",children:e.jsx(_,{size:"sm",variant:y?"default":"outline",onClick:()=>p&&C(e=>!e),className:"h-9",disabled:!p,"aria-pressed":y,title:g?"Nur Bilder mit passender Breite und Höhe anzeigen":h?`Nur quadratische Bilder mit mind. ${m} x ${m} px anzeigen`:"Keine Zielabmessungen für diesen Kontext verfügbar",children:"Passende Abmessungen"})}),"adbox"===b&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex gap-1",children:[["all","Alle"],["order_app","Order App"],["syncplay","SyncPlay"],["login_page","Login Page"],["homepage_slider","Startseite"],["menuservice_homepage_slider","Menuservice-Startseite"],["speiseplan_slider","Speiseplanseite"],["action_side_by_side","Aktions-Side-by-Side"]].map(([t,i])=>e.jsx(_,{size:"sm",variant:f===t?"default":"outline",onClick:()=>j(t),className:"h-9",children:i},t))}),e.jsx("div",{className:"flex gap-1",children:[["all","Alle"],["used","Verwendet"],["unused","Unbenutzt"]].map(([t,i])=>e.jsx(_,{size:"sm",variant:F===t?"default":"outline",onClick:()=>S(t),className:"h-9",children:i},t))})]})]}),e.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto border-t pt-4",children:H?e.jsxs("div",{className:"flex items-center justify-center py-16 text-muted-foreground",children:[e.jsx(s,{className:"h-6 w-6 animate-spin mr-2"}),"Lade Dateien..."]}):"meals"===b?0===R.length?e.jsxs("div",{className:"flex flex-col items-center justify-center py-16 text-muted-foreground",children:[e.jsx(a,{className:"h-10 w-10 mb-2"}),e.jsx("p",{children:"Keine passenden Gerichte gefunden"})]}):e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 pb-4",children:R.map(t=>{const i=`meal:${t.mealId}`,a=A===i;return e.jsxs("div",{className:"group relative rounded-lg border bg-card overflow-hidden hover:ring-2 hover:ring-primary/50 transition-all",children:[e.jsxs("button",{type:"button",className:"block w-full aspect-video bg-muted relative overflow-hidden cursor-pointer",disabled:a,onClick:()=>W(i,t.url),children:[e.jsx("img",{src:t.url,alt:t.name,className:"w-full h-full object-cover",loading:"lazy"}),e.jsx("div",{className:"absolute inset-0 bg-black/0 group-hover:bg-black/20 transition-colors flex items-center justify-center",children:a?e.jsx(s,{className:"h-8 w-8 text-white animate-spin drop-shadow-lg"}):e.jsx(n,{className:"h-8 w-8 text-white opacity-0 group-hover:opacity-100 transition-opacity drop-shadow-lg"})})]}),e.jsxs("div",{className:"p-2 space-y-1.5",children:[e.jsx("div",{className:"flex items-center gap-1 flex-wrap",children:e.jsxs(X,{variant:"secondary",className:"text-[10px] px-1 py-0",children:[e.jsx(l,{className:"h-2.5 w-2.5 mr-1"}
1),"Gericht"]})}),e.jsx("div",{className:"text-[11px] font-medium text-foreground truncate",title:t.name,children:t.name}),e.jsx("div",{className:"text-[11px] font-medium text-foreground tabular-nums",children:$e(t.width,t.height)}),e.jsx("div",{className:"text-[11px] text-muted-foreground",children:Le(t.updatedAt)})]})]},t.mealId)})}):0===G.length?e.jsxs("div",{className:"flex flex-col items-center justify-center py-16 text-muted-foreground",children:[e.jsx(a,{className:"h-10 w-10 mb-2"}),e.jsx("p",{children:"Keine Dateien gefunden"})]}):e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 pb-4",children:G.map(t=>{const i=t.usedBy.length>0,l=w===t.key,a=z===t.key,o=A===t.key;return e.jsxs("div",{className:"group relative rounded-lg border bg-card overflow-hidden hover:ring-2 hover:ring-primary/50 transition-all",children:[e.jsxs("button",{type:"button",className:"block w-full aspect-video bg-muted relative overflow-hidden cursor-pointer",disabled:o,onClick:()=>W(t.key,t.url),children:[e.jsx("img",{src:t.url,alt:t.key,className:"w-full h-full object-cover",loading:"lazy"}),e.jsx("div",{className:"absolute inset-0 bg-black/0 group-hover:bg-black/20 transition-colors flex items-center justify-center",children:o?e.jsx(s,{className:"h-8 w-8 text-white animate-spin drop-shadow-lg"}):e.jsx(n,{className:"h-8 w-8 text-white opacity-0 group-hover:opacity-100 transition-opacity drop-shadow-lg"})})]}),e.jsxs("div",{className:"p-2 space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-1 flex-wrap",children:[t.targetSystem&&e.jsx(X,{variant:"secondary",className:"text-[10px] px-1 py-0",children:He[t.targetSystem]??t.targetSystem}),t.customerGroup&&e.jsx(X,{variant:"outline",className:"text-[10px] px-1 py-0",children:_e[t.customerGroup]??t.customerGroup}),t.variant&&e.jsx(X,{variant:"outline",className:"text-[10px] px-1 py-0",children:Ie[t.variant]??t.variant})]}),e.jsx("div",{className:"text-[11px] font-medium text-foreground tabular-nums",children:$e(t.width,t.height)}),e.jsxs("div",{className:"flex items-center justify-between text-[11px] text-muted-foreground",children:[e.jsx("span",{children:(c=t.size,c<1024?`${c} B`:c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1048576).toFixed(1)} MB`)}),e.jsx("span",{children:Le(t.lastModified)})]}),i?e.jsxs("div",{className:"text-[11px]",children:[e.jsx("span",{className:"text-green-600 font-medium",children:"Verwendet in:"}),t.usedBy.map((t,i)=>e.jsxs("span",{className:"text-muted-foreground",children:[i>0&&","," ",t.campaignTitle]},i))]}):e.jsxs("div",{children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsx("span",{className:"text-[11px] text-amber-600 font-medium",children:"Nicht verwendet"})}),a?e.jsxs("div",{className:"flex items-center gap-1 mt-1",children:[e.jsxs(_,{variant:"destructive",size:"sm",className:"h-6 text-[11px] px-2 flex-1",disabled:l,onClick:e=>{var i;e.stopPropagation(),i=t.key,T(i),E.mutate({key:i})},children:[l?e.jsx(s,{className:"h-3 w-3 animate-spin mr-1"}):e.jsx(r,{className:"h-3 w-3 mr-1"}),"Löschen"]}),e.jsx(_,{variant:"outline",size:"sm",className:"h-6 text-[11px] px-2",onClick:e=>{e.stopPropagation(),U(null)},children:"Abbrechen"})]}):e.jsxs(_,{variant:"ghost",size:"sm",className:"h-6 text-[11px] px-2 mt-1 text-destructive hover:text-destructive hover:bg-destructive/10",onClick:e=>{e.stopPropagation(),U(t.key)},children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Löschen"]})]})]})]},t.key);var c})})}),"adbox"===b&&P&&e.jsxs("div",{className:"shrink-0 text-xs text-muted-foreground border-t pt-3",children:[G.length," von ",P.length," Dateien",P.length>0&&e.jsxs("span",{children:[" ","· ",P.filter(e=>e.usedBy.length>0).length," ","verwendet, ",P.filter(e=>0===e.usedBy.length).length," ","unbenutzt"]})]}),"meals"===b&&L&&e.jsxs("div",{className:"shrink-0 text-xs text-muted-foreground border-t pt-3",children:[R.length," von ",L.length," Gerichten"]})]})})}function Ee({onSelect:i,expectedWidth:l,expectedHeight:s,minSquareSize:a,size:n,variant:r,className:o}){const[c,d]=$.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsxs(_,{size:n??"sm",variant:r??"outline",className:o,onClick:()=>d(!0),title:"Mediathek öffnen",children:[e.jsx(t,{className:"h-3 w-3 mr-1"}),"Mediathek"]}),e.jsx(Ve,{open:c,onOpenChange:d,onSelect:i,expectedWidth:l,expectedHeight:s,minSquareSize:a})]})}const Ge="Europe/Berlin",Re=new Map;function We(e,t){const i=e.find(e=>e.type===t)?.value;if(!i)throw new Error(`Fehlender Datumsbestandteil: ${t}`);return function(e,t){const i=Number.parseInt(e,10);if(Number.isNaN(i))throw new Error(`Ungültiger ${t}-Wert`);return i}(i,t)}function Ke(e,t=Ge){const i=function(e){const t=Re.get(e);if(t)return t;
1const i=new Intl.DateTimeFormat("en-CA",{timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hourCycle:"h23"});return Re.set(e,i),i}(t),l=i.formatToParts(e);return{year:We(l,"year"),month:We(l,"month"),day:We(l,"day"),hour:We(l,"hour"),minute:We(l,"minute"),second:We(l,"second")}}function Oe(e){return String(e).padStart(2,"0")}function qe(e){if(!e)return"";const t="string"==typeof e?new Date(e):e;if(!function(e){return Number.isFinite(e.getTime())}(t))return"";const i=Ke(t,Ge);return`${i.year}-${Oe(i.month)}-${Oe(i.day)}T${Oe(i.hour)}:${Oe(i.minute)}`}function Qe(e){return"variant_1"===e}function Ze(e){return"individual_action"===e}function Je(e){return!function(e){return Boolean(e.imageDesktopUrl||e.imageTabletUrl||e.imageMobileUrl||e.title||e.subtitle||e.tagline||e.buttonText||e.assetId)}(e)||e.labelText.trim().length>0}const Ye=[{group:"menuservice",label:"Kantine"},{group:"schule",label:"Schule"}],Xe=["split","splitPortrait","landscape","portrait"],et={split:"split",landscape:"landscape",portrait:"portrait",splitPortrait:"split-portrait"};function tt(e){const t=e?.trim();return t&&/^https?:\/\//i.test(t)?t.replace(/\/+$/,""):null}const it={desktop:{width:2608,height:300,label:"Desktop",bannerWidth:2608,previewHeight:150,viewportHint:"ab 1024px"},tablet:{width:1456,height:190,label:"Tablet",bannerWidth:1456,previewHeight:95,viewportHint:"769px bis 1023px"},mobile:{width:700,height:190,label:"Mobile",bannerWidth:700,previewHeight:95,viewportHint:"bis 768px"}},lt={variant_1:{desktop:{width:1512,height:1512,label:"Desktop",bannerWidth:2608,previewHeight:150,viewportHint:"ab 1024px"},tablet:{width:1512,height:1512,label:"Tablet",bannerWidth:1456,previewHeight:95,viewportHint:"769px bis 1023px"},mobile:{width:1512,height:1512,label:"Mobile",bannerWidth:700,previewHeight:95,viewportHint:"bis 768px"}},variant_2:it},st=it;function at(e,t){return lt[e][t]}const nt={width:3840,height:2160,label:"Startseiten-Slider"},rt={width:3840,height:2160},ot={width:3840,height:2160},ct={width:3840,height:2160},dt={split:{width:1920,height:2160,screenWidth:3840,screenHeight:2160,label:"Split-Screen",description:"Rechte Hälfte — links Menüplan"},splitPortrait:{width:2160,height:1920,screenWidth:2160,screenHeight:3840,label:"Split-Screen Hochformat",description:"Untere Hälfte — oben Menüplan"},landscape:{width:3840,height:2160,screenWidth:3840,screenHeight:2160,label:"Fullscreen Querformat",description:"4K Querformat — Vollbild"},portrait:{width:2160,height:3840,screenWidth:2160,screenHeight:3840,label:"Fullscreen Hochformat",description:"4K Hochformat — Display gedreht"}},xt={variant_1:{desktop:{width:1512,height:1512,label:"Desktop",description:"Farbfläche mit quadratischem Bild"},tablet:{width:560,height:560,label:"Tablet",description:"Farbfläche mit quadratischem Bild"},mobile:{width:520,height:520,label:"Mobile",description:"Farbfläche mit quadratischem Bild"}},variant_2:{desktop:{width:1512,height:2032,label:"Desktop",description:"Vollflächiges Hintergrundbild (linke Seite)"},tablet:{width:1536,height:560,label:"Tablet",description:"Banner unterhalb des Logins"},mobile:{width:780,height:520,label:"Mobile",description:"Banner oberhalb des Logins"}}};function ut(e,t){return xt[e][t]}const mt={split:{uploadVariant:"desktop",imageField:"imageDesktopUrl",stateKey:"imageSplitUrl"},landscape:{uploadVariant:"tablet",imageField:"imageTabletUrl",stateKey:"imageLandscapeUrl"},portrait:{uploadVariant:"mobile",imageField:"imageMobileUrl",stateKey:"imagePortraitUrl"},splitPortrait:{uploadVariant:"split_portrait",imageField:"imageSplitPortraitUrl",stateKey:"imageSplitPortraitUrl"}},gt=[{label:"Aktionswochen & Salate",url:"/menuservice/speiseplaene#aktionswochen-section"},{label:"Unsere aktuellen Gerichte",url:"/menuservice/speiseplaene#aktuelle-gerichte-section"}];function ht({onSelect:t,compact:i=!1}){const[l,s]=$.useState(!1);return e.jsxs(ne,{open:l,onOpenChange:s,children:[e.jsx(re,{asChild:!0,children:e.jsxs(_,{type:"button",variant:"outline",size:"sm",className:i?"h-7 px-2 text-[10px] shrink-0":"shrink-0",children:["Vorlage",e.jsx(g,{className:i?"ml-1 h-3 w-3":"ml-1 h-4 w-4"})]})}),e.jsx(oe,{align:"end",className:"w-80 p-1",children:e.jsx("div",{className:"flex flex-col",children:gt.map(i=>e.jsxs("button",{type:"button",onClick:()=>{t(i.url),s(!1)},className:"w-full rounded-sm px-2 py-1.5 text-left hover:bg-accent",children:[e.jsx("div",{className:"text-sm font-medium",children:i.label}),e.jsx("div",{className:"text-xs text-gray-500 truncate",children:i.url})]},i.url))})})]})}function pt(e){const t={calories:e.nutritionPer100gCalories.trim(),protein:e.nutritionPer100gProtein.trim(),fat:e.nutritionPer100gFat.trim(),saturatedFat:e.nutritionPer100gSaturatedFat.trim(),carbs:e.nutritionPer100gCarbs.trim(),sugar:e.nutritionPer100gSugar.trim(),fiber:e.nutritionPer100gFiber.trim(),salt:e.nutritionPer100gSalt.trim()};return Object.values(t).some(e=>e.length>0)?JSON.stringify(t):null}function bt(e){const t=[];return 1===e.isFitMe&&t.push("FitMe"),1===e.isSalate&&t.push("Salat"),t.length>0?t.join(" · "):null}const vt=["top-left","top-center","top-right","middle-left","middle-center","middle-right","bottom-left","bottom-center","bottom-right"];function ft(e){return"string"==typeof e&&vt.includes(e)}function jt(e,t){return e&&ft(e.desktop)&&ft(e.tablet)&&ft(e.mobile)?{desktop:e.desktop,tablet:e.tablet,mobile:e.mobile}:t}function Ft(e){return Number.isInteger(e)&&Number(e)>0}function St(e,t){if(!e)return t;if(Ft(e))return{desktop:e,tablet:t.tablet,mobile:t.mobile};if("string"==typeof e){const i=e.trim();if(!i)return t;if(/^\d+$/.test(i)){const e=Number(i);return Ft(e)?{desktop:e,tablet:t.tablet,mobile:t.mobile}:t}try{return St(JSON.parse(i),t)}catch{return t}}if("object"!=typeof e)return t;const i=e;return Ft(i.desktop)&&Ft(i.tablet)&&Ft(i.mobile)?{desktop:i.desktop,tablet:i.tablet,mobile:i.mobile}:Ft(i.split)&&Ft(i.landscape)&&Ft(i.portrait)?{desktop:i.split,tablet:i.landscape,mobile:i.portrait}:Ft(i.desktopLeft)&&Ft(i.tabletBelowLogin)&&Ft(i.mobileAboveLogin)?{desktop:i.desktopLeft,tablet:i.tabletBelowLogin,mobile:i.mobileAboveLogin}
1:Ft(i.desktop)&&Ft(i.tablet)&&Ft(i.mobile)?{desktop:i.desktop,tablet:i.tablet,mobile:i.mobile}:t}function yt(e,t){return St(e,{desktop:t,tablet:t,mobile:t}).desktop}function Ct(e){return"string"==typeof e&&/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(e.trim())}function kt(e,t){return e&&Ct(e.desktop)&&Ct(e.tablet)&&Ct(e.mobile)?{desktop:e.desktop.toUpperCase(),tablet:e.tablet.toUpperCase(),mobile:e.mobile.toUpperCase()}:t}function Nt(e,t,i){return{desktop:e,tablet:t,mobile:i}}function wt(e){return jt(e,{desktop:"middle-center",tablet:"middle-left",mobile:"middle-left"})}function Tt(e,t,i){return{desktop:e,tablet:t,mobile:i}}function zt(e,t){const i={desktop:ye(t.desktop),tablet:ye(t.tablet),mobile:ye(t.mobile)};return e&&Ce(e.desktop)&&Ce(e.tablet)&&Ce(e.mobile)?{desktop:e.desktop,tablet:e.tablet,mobile:e.mobile}:i}function Ut(e,t,i){return{desktop:e,tablet:t,mobile:i}}function At(e,t){return St(e,t)}function Dt(e){return kt(e,{desktop:"#FFFFFF",tablet:"#FFFFFF",mobile:"#FFFFFF"})}function Bt(e,t,i,l){return{desktop:e,tablet:t,mobile:i,splitPortrait:l}}function Pt(e){const t=jt(e,{desktop:"bottom-left",tablet:"bottom-left",mobile:"bottom-left"});return{split:t.desktop,landscape:t.tablet,portrait:t.mobile,splitPortrait:ft(e?.splitPortrait)?e.splitPortrait:t.desktop}}function Mt(e,t,i,l){return{desktop:e,tablet:t,mobile:i,splitPortrait:l}}function Lt(e,t){const i=St(e,{desktop:t.split,tablet:t.landscape,mobile:t.portrait});return{split:i.desktop,landscape:i.tablet,portrait:i.mobile,splitPortrait:Ft(e?.splitPortrait)?e.splitPortrait:i.desktop}}function $t(e){const t=kt(e,{desktop:"#FFFFFF",tablet:"#FFFFFF",mobile:"#FFFFFF"}),i=kt("string"==typeof e?.splitPortrait?{desktop:e.splitPortrait,tablet:e.splitPortrait,mobile:e.splitPortrait}:null,{desktop:t.desktop,tablet:t.desktop,mobile:t.desktop}).desktop;return{split:t.desktop,landscape:t.tablet,portrait:t.mobile,splitPortrait:i}}function It({imageUrl:t,title:i,subtitle:l,buttonText:s,linkUrl:a,textColor:n,buttonBgColor:r,buttonTextColor:o,alt:c}){const d=n||"#FFFFFF",x=function(e){const t=e.trim().toLowerCase();if("white"===t||"#fff"===t||"#ffffff"===t)return!1;if("black"===t||"#000"===t||"#000000"===t)return!0;if(/^#([0-9a-f]{3}|[0-9a-f]{6})$/.test(t)){const e=4===t.length?t.slice(1).split("").map(e=>`${e}${e}`).join(""):t.slice(1);return(.2126*Number.parseInt(e.slice(0,2),16)+.7152*Number.parseInt(e.slice(2,4),16)+.0722*Number.parseInt(e.slice(4,6),16))/255<.5}return!1}(d),u=x?"0 1px 8px rgba(255,255,255,0.3)":"0 1px 8px rgba(0,0,0,0.5)",m=x?"0 1px 6px rgba(255,255,255,0.2)":"0 1px 6px rgba(0,0,0,0.3)";return e.jsxs("div",{className:"relative w-full max-w-[560px] overflow-hidden rounded-md border bg-gray-100",children:[e.jsx("img",{src:t,alt:c,className:"block w-full h-auto object-cover"}),e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx("div",{className:"w-full px-5 md:px-7",children:e.jsxs("div",{className:"max-w-[65%] space-y-2",children:[i&&e.jsx("div",{className:"text-[22px] md:text-[26px] font-bold leading-tight",style:{color:d,textShadow:u},children:i}),l&&e.jsx("div",{className:"text-[11px] md:text-[12px] leading-snug",style:{color:d,textShadow:m},children:l}),s&&a&&e.jsx("div",{className:"pt-1",children:e.jsx("span",{className:"inline-block px-3 py-1.5 text-[10px] md:text-[11px] font-black rounded-full",style:{backgroundColor:r||"#FFC800",color:o||"#34342C"},children:s})})]})})})]})}function Ht({label:t,value:i,defaultColor:l,onChange:s}){return e.jsxs("div",{children:[e.jsx(J,{children:t}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[e.jsx("input",{type:"color",value:i||l,onChange:e=>s(e.target.value.toUpperCase()),className:"h-9 w-9 rounded border cursor-pointer shrink-0"}),e.jsx(Z,{value:i,onChange:e=>s(e.target.value),placeholder:`Standard (${l})`,className:"h-9 max-w-[180px] text-sm font-mono"}),i&&e.jsx(_,{type:"button",variant:"outline",size:"sm",onClick:()=>s(""),title:"Auf Standard zurücksetzen",children:e.jsx(r,{className:"h-4 w-4"})})]})]})}function _t(e){return jt(e,{desktop:"bottom-left",tablet:"bottom-left",mobile:"bottom-left"})}function Vt(e,t,i){return{desktop:e,tablet:t,mobile:i}}function Et(e,t,i){return{desktop:e,tablet:t,mobile:i}}function Gt(e,t){return St(e,t)}function Rt(e){return"variant_1"===e?"#FFFFFF":"#000000"}function Wt(e,t){const i=Rt(t);return kt(e,{desktop:i,tablet:i,mobile:i})}function Kt(e,t,i){return{desktop:e,tablet:t,mobile:i}}function Ot(e,t){const i={desktop:ye(t.desktop),tablet:ye(t.tablet),mobile:ye(t.mobile)};return e&&Ce(e.desktop)&&Ce(e.tablet)&&Ce(e.mobile)?{desktop:e.desktop,tablet:e.tablet,mobile:e.mobile}:i}const qt=1e3;function Qt(e,t,i){return new Promise(l=>{const s=new window.Image;s.onload=()=>
1{URL.revokeObjectURL(s.src),l({valid:s.naturalWidth===t&&s.naturalHeight===i,actualWidth:s.naturalWidth,actualHeight:s.naturalHeight})},s.onerror=()=>{URL.revokeObjectURL(s.src),l({valid:!1,actualWidth:0,actualHeight:0})},s.src=URL.createObjectURL(e)})}async function Zt(e,t){const i=await function(e){return new Promise(t=>{const i=new window.Image;i.onload=()=>{URL.revokeObjectURL(i.src),t({width:i.naturalWidth,height:i.naturalHeight})},i.onerror=()=>{URL.revokeObjectURL(i.src),t(null)},i.src=URL.createObjectURL(e)})}(e);return i?{valid:i.width===i.height&&i.width>=t,actualWidth:i.width,actualHeight:i.height}:{valid:!1,actualWidth:0,actualHeight:0}}function Jt(e){return e.width===e.height}function Yt(e){return new Promise((t,i)=>{const l=new FileReader;l.onload=()=>{const e=l.result;t(e.split(",")[1])},l.onerror=i,l.readAsDataURL(e)})}const Xt={"top-left":{justify:"justify-start",self:"self-start",textAlign:"text-left"},"top-center":{justify:"justify-start",self:"self-center",textAlign:"text-center"},"top-right":{justify:"justify-start",self:"self-end",textAlign:"text-right"},"middle-left":{justify:"justify-center",self:"self-start",textAlign:"text-left"},"middle-center":{justify:"justify-center",self:"self-center",textAlign:"text-center"},"middle-right":{justify:"justify-center",self:"self-end",textAlign:"text-right"},"bottom-left":{justify:"justify-end",self:"self-start",textAlign:"text-left"},"bottom-center":{justify:"justify-end",self:"self-center",textAlign:"text-center"},"bottom-right":{justify:"justify-end",self:"self-end",textAlign:"text-right"}};function ei({value:t,onChange:i,compact:l,className:s}){const a={"top-left":L,"top-center":M,"top-right":P,"middle-left":c,"middle-center":B,"middle-right":D,"bottom-left":A,"bottom-center":U,"bottom-right":z},n=l?"w-6 h-6":"w-7 h-7",r=l?14:16;return e.jsx("div",{className:`inline-grid grid-cols-3 gap-0.5 border rounded-lg ${l?"p-1":"p-1.5"} bg-gray-50 ${s||""}`,children:["top-left","top-center","top-right","middle-left","middle-center","middle-right","bottom-left","bottom-center","bottom-right"].map(l=>{const s=a[l];return e.jsx("button",{type:"button",onClick:()=>i(l),className:`${n} rounded font-bold transition-colors inline-flex items-center justify-center ${t===l?"bg-[#FFC800] text-[#34342C]":"bg-white border hover:bg-gray-100 text-gray-500"}`,children:e.jsx(s,{size:r})},l)})})}function ti({variant:t,displayVariant:i,imageUrl:s,textColor:n,bgColor:c,title:d,subtitle:x,titleFontSize:u,subtitleFontSize:m,titleFont:h,subtitleFont:p,onTextColorChange:b,textPosition:v,onTextPositionChange:f,textAlignment:j,onTextAlignmentChange:F,onTitleFontSizeChange:S,onSubtitleFontSizeChange:y,uploading:C,onUpload:z,onSelectFromLibrary:U,onRemoveImage:A}){const D=at(i,t),B="variant_1"===i,P=$.useRef(null),M=e=>"lato"===e?"font-lato":"font-oswald",L=Math.max(8,u),I=Math.max(7,m),H="desktop"===t,V="tablet"===t,E=H?5:V?4:3,G=["Mo","Di","Mi","Do","Fr"],R=Math.round(D.bannerWidth/2),W=R+24,K=H?48:32,O=D.previewHeight-K,q=B?D.width:D.bannerWidth,Q=B?O:R,Y=B?O:D.previewHeight,X=H?"p-6":"p-5",ee=H?"py-6":"py-4",te=H?"p-6":"p-4",ie=v.startsWith("middle"),le=Xt[v],se="left"===j?"text-left":"right"===j?"text-right":"text-center",ae={color:n,backgroundColor:"#ffffff",borderRadius:"12px",padding:H?"1rem":"0.5rem 0.75rem",boxShadow:"0 4px 16px rgba(0, 0, 0, 0.18)",...ie?{flex:"1 1 auto",display:"flex",flexDirection:"column",justifyContent:"center"}:{}},ne=()=>P.current?.click(),re=e=>{e.preventDefault(),e.stopPropagation()};return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs(J,{className:"font-bold",children:[D.label,"-Banner"]}),e.jsxs("p",{className:"text-xs text-gray-500 mt-0.5",children:[Jt(D)?`Upload-Bild: quadratisch, mind. ${qt.toLocaleString("de-DE")} x ${qt.toLocaleString("de-DE")} px`:`Upload-Bild: ${q.toLocaleString("de-DE")} x ${D.height}px (Retina-Datei)`," · ","Bannergröße in der App:"," ",Q.toLocaleString("de-DE")," x ",Y,"px"]})]}),e.jsx("div",{className:"rounded-md border bg-gray-50 px-2 py-1.5",children:e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Schriftfarbe"}),e.jsx("input",{type:"color",value:n,onChange:e=>b(e.target.value),className:"h-7 w-7 rounded border cursor-pointer"}),e.jsx(Z,{value:n,onChange:e=>b(e.target.value),className:"w-24 h-7 text-xs font-mono"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Größe Titel"}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:u,onChange:e=>S(parseInt(e.target.value)||u),className:"w-24 h-7 text-xs text-center tabular-nums"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Größe Untert."}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:m,onChange:e=>y(parseInt(e.target.value)||m),className:"w-24 h-7 text-xs text-center tabular-nums"})]})]}),e.jsx("div",{className:"min-h-[96px] flex items-stretch",children:e.jsxs("div",{className:"space-y-1 h-full place-content-center",children:[e.jsx(ei,{value:v,onCh
1ange:f}),e.jsx("div",{className:"flex items-center justify-center gap-1",children:["left","center","right"].map(t=>e.jsx("button",{type:"button",className:"h-6 w-7 rounded border text-[10px] font-bold transition-colors "+(j===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-500 border-gray-300 hover:bg-gray-50"),onClick:()=>F(t),title:`Textausrichtung: ${t}`,children:"left"===t?"L":"center"===t?"C":"R"},t))})]})})]})})]}),e.jsxs("div",{className:"rounded-xl border bg-gray-100 overflow-hidden w-full mx-auto",style:{width:`${W}px`,maxWidth:"100%"},children:[e.jsxs("div",{className:"px-3 py-2 bg-white border-b flex flex-wrap items-center justify-between gap-2",children:[e.jsx("div",{className:"text-[11px] font-medium text-gray-700",children:"Order-App Kontextvorschau"}),e.jsxs("div",{className:"text-[10px] text-gray-500",children:[D.label," (",D.viewportHint,")"]})]}),e.jsxs("div",{className:"px-3 pt-4 pb-2 bg-white",children:[e.jsx("p",{className:"text-[28px] leading-none font-black text-black",children:"Hallo"}),e.jsx("div",{className:"mt-1 min-w-0",children:e.jsx("p",{className:"text-[28px] leading-none font-black text-black truncate",children:"Max Mustermann"})}),e.jsx("p",{className:"mt-1 text-xs font-bold text-[#bebebe]",children:"Schön, Sie zu sehen."})]}),e.jsxs("div",{className:"px-3 pb-3 space-y-2",children:[e.jsx("div",{className:"rounded-[15px] bg-[#f7f7f7] py-2",children:e.jsxs("div",{className:"group/slot relative mx-auto rounded-lg ring-1 ring-[#d9d9d9] overflow-hidden bg-gray-200",style:{width:`${R}px`,height:`${D.previewHeight}px`},children:[B?e.jsxs("div",{className:"relative h-full w-full",children:[e.jsx("div",{className:`absolute inset-y-0 left-0 w-1/3 flex flex-col ${X} ${le.justify}`,style:{backgroundColor:c,color:n},children:e.jsxs("div",{className:`${le.self} ${se}`,children:[d?e.jsx("p",{className:`font-black break-words ${M(h)}`,style:{fontSize:`${L}px`,lineHeight:"110%"},children:d}):null,x?e.jsx("p",{className:`mt-2 font-semibold break-words ${M(p)}`,style:{fontSize:`${I}px`,lineHeight:"120%"},children:x}):null,d||x?null:e.jsx("p",{className:"text-xs opacity-70",children:"Titel / Untertitel"})]})}),e.jsx("div",{className:`absolute inset-y-0 right-0 w-2/3 flex items-center justify-center ${ee}`,style:{backgroundColor:c},children:s?e.jsx("img",{src:s,alt:`${D.label} Banner`,className:"h-full object-contain",style:{aspectRatio:"1 / 1"}}):e.jsxs("div",{className:"flex items-center justify-center text-white/80 text-[11px]",children:[e.jsx(a,{className:"h-4 w-4 mr-1"}),"Kein Bild"]})})]}):H?e.jsxs("div",{className:"relative w-full h-full",children:[s?e.jsx("img",{src:s,alt:`${D.label} Banner`,className:"w-full h-full object-cover"}):e.jsxs("div",{className:"w-full h-full flex items-center justify-center text-white/80 text-[11px]",style:{backgroundColor:c},children:[e.jsx(a,{className:"h-4 w-4 mr-1"}),"Kein Bild"]}),e.jsx("div",{className:`absolute inset-0 flex flex-col ${te} ${le.justify}`,children:e.jsxs("div",{className:`${le.self} ${se} max-w-[33.3333%]`,style:ae,children:[d?e.jsx("p",{className:`font-black break-words ${M(h)}`,style:{fontSize:`${L}px`,lineHeight:"110%"},children:d}):null,x?e.jsx("p",{className:`mt-2 font-semibold break-words ${M(p)}`,style:{fontSize:`${I}px`,lineHeight:"120%"},children:x}):null,d||x?null:e.jsx("p",{className:"text-xs opacity-70",children:"Titel / Untertitel"})]})})]}):e.jsxs("div",{className:"relative w-full h-full",children:[s?e.jsx("img",{src:s,alt:`${D.label} Banner`,className:"w-full h-full object-cover"}):e.jsxs("div",{className:"w-full h-full flex items-center justify-center text-white/80 text-[11px]",style:{backgroundColor:c},children:[e.jsx(a,{className:"h-4 w-4 mr-1"}),"Kein Bild"]}),e.jsx("div",{className:`absolute inset-0 flex flex-col ${te} ${le.justify}`,children:e.jsxs("div",{className:`${le.self} ${se} ${V?"max-w-[33.3333%]":"max-w-[50%]"}`,style:ae,children:[d?e.jsx("p",{className:`font-black break-words ${M(h)}`,style:{fontSize:`${L}px`,lineHeight:"110%"},children:d}):null,x?e.jsx("p",{className:`mt-2 font-semibold break-words ${M(p)}`,style:{fontSize:`${I}px`,lineHeight:"120%"},children:x}):null,d||x?null:e.jsx("p",{className:"text-xs opacity-70",children:"Titel / Untertitel"})]})})]}),e.jsx("button",{type:"button",className:"absolute inset-0 z-10",onClick:ne,disabled:C,"aria-label":`${D.label}-Banner Bild auswählen`}),e.jsx("div",{className:"absolute top-1.5 left-1.5 bg-black/65 text-white text-[8px] px-1.5 py-0.5 rounded-full backdrop-blur-sm z-20 pointer-events-none",children:D.label}),e.jsxs("div",{className:"absolute inset-0 z-20 bg-black/0 group-hover/slot:bg-black/55 transition-colors opacity-0 group-hover/slot:opacity-100 pointer-events-none group-hover/slot:pointer-events-auto flex flex-col items-center justify-center gap-1.5",children:[e.jsxs("p",{className:"text-white/85 text-[9px] font-medium",children:[Q.toLocaleStr
1ing("de-DE")," ×"," ",Y.toLocaleString("de-DE")," px"]}),e.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-1.5",children:[e.jsxs(_,{type:"button",size:"sm",variant:"secondary",className:"h-6 text-[10px] px-2",disabled:C,onClick:e=>{re(e),ne()},children:[C?e.jsx(o,{className:"h-3 w-3 animate-spin mr-1"}):e.jsx(a,{className:"h-3 w-3 mr-1"}),s?"Bild ändern":"Bild auswählen"]}),e.jsx("div",{onClick:e=>e.stopPropagation(),children:e.jsx(Ee,{onSelect:U,expectedWidth:Jt(D)?void 0:D.width,expectedHeight:Jt(D)?void 0:D.height,minSquareSize:Jt(D)?qt:void 0,size:"sm",variant:"secondary",className:"h-6 text-[10px] px-2"})}),s?e.jsxs(_,{type:"button",size:"sm",variant:"destructive",className:"h-6 text-[10px] px-2",disabled:C,onClick:e=>{re(e),A()},children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Bild entfernen"]}):null]})]}),C?e.jsx("div",{className:"absolute inset-0 z-30 bg-black/35 flex items-center justify-center",children:e.jsx(o,{className:"h-5 w-5 text-white animate-spin"})}):null,e.jsx("input",{ref:P,type:"file",accept:"image/webp,image/jpeg,image/png",className:"hidden",onChange:e=>{const t=e.target.files?.[0];t&&z(t),e.target.value=""}})]})}),e.jsx("div",{className:"rounded-[15px] bg-[#f7f7f7] border border-[#ececec] overflow-hidden",children:e.jsxs("div",{className:"flex items-center justify-between px-3 py-2",children:[e.jsx("span",{className:"text-[13px] font-black text-black",children:"Kategorien"}),e.jsx("span",{className:"inline-flex h-5 w-5 items-center justify-center text-[#34342c]",children:e.jsx(g,{className:"h-3.5 w-3.5"})})]})}),e.jsx("div",{className:"rounded-[15px] bg-[#f7f7f7] border border-[#ececec] overflow-hidden",children:e.jsx("div",{className:"flex items-center justify-between px-3 py-2",children:e.jsx("span",{className:"text-[13px] font-black text-black",children:"Speiseplan"})})}),e.jsxs("div",{className:"rounded-[15px] bg-[#f7f7f7] px-3 py-2 border border-[#ececec] flex items-center justify-between",children:[e.jsx("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-black text-[11px] font-black text-white",children:e.jsx(N,{className:"h-3 w-3"})}),e.jsxs("p",{className:"text-[12px] text-[#2f2f2f]",children:[e.jsx("span",{className:"font-bold",children:"KW 14"})," / 30.03. - 03.04.2026"]}),e.jsx("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-black text-[11px] font-black text-white",children:e.jsx(w,{className:"h-3 w-3"})})]}),e.jsx("div",{className:"space-y-2",children:Array.from({length:E}).map((t,i)=>e.jsxs("div",{className:"rounded-[15px] border border-[#ececec] bg-[#f7f7f7] p-2.5",children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("span",{className:"text-[11px] font-black text-black",children:G[i]||"Tag"}),e.jsx("span",{className:"inline-flex h-5 w-5 items-center justify-center text-[#34342c]",children:e.jsx(g,{className:"h-3.5 w-3.5"})})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("div",{className:"h-2 rounded bg-white border border-[#ececec]"}),e.jsx("div",{className:"h-2 rounded bg-white border border-[#ececec] w-4/5"}),e.jsx("div",{className:"h-2 rounded bg-white border border-[#ececec] w-2/3"})]})]},`day-${i}`))})]}),e.jsx("div",{className:"px-3 pb-4 pt-3 bg-white border-t border-[#ececec]",children:e.jsx("div",{className:"rounded-[15px] border border-[#ececec] bg-white px-3 py-2 shadow-[0_0_15px_rgba(190,190,190,0.35)]",children:e.jsxs("div",{className:"grid grid-cols-3",children:[e.jsxs("div",{className:"flex flex-col items-center justify-center gap-1 py-1",children:[e.jsx(l,{className:"h-4 w-4 text-black"}),e.jsx("span",{className:"text-[10px] font-bold text-black",children:"Speiseplan"})]}),e.jsxs("div",{className:"relative flex flex-col items-center justify-center gap-1 py-1",children:[e.jsx(T,{className:"h-4 w-4 text-black"}),e.jsx("span",{className:"text-[10px] font-bold text-black",children:"Warenkorb"})]}),e.jsxs("div",{className:"flex flex-col items-center justify-center gap-1 py-1",children:[e.jsx(k,{className:"h-4 w-4 text-black"}),e.jsx("span",{className:"text-[10px] font-bold text-black",children:"Menü"})]})]})})})]})]})}
1function ii({campaignId:t,customerGroup:i,state:l,onChange:s,onImageUpload:a,uploadingVariant:n,onSelectFromLibrary:r,onRemoveImage:o}){const c=(t,i)=>e.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[e.jsx("button",{type:"button",className:"h-9 px-2 text-xs rounded border transition-colors "+("oswald"===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>i("oswald"),children:"Oswald"}),e.jsx("button",{type:"button",className:"h-9 px-2 text-xs rounded border transition-colors "+("lato"===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>i("lato"),children:"Lato"})]}),d="variant_1"===l.displayVariant;return e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Darstellungsvariante"}),e.jsxs("div",{className:"mt-1 flex items-center gap-1",children:[e.jsx("button",{type:"button",className:"text-[10px] px-2 py-1 rounded border "+(d?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>s({...l,displayVariant:"variant_1"}),children:"Variante 1 (Farbfläche + Quadratbild)"}),e.jsx("button",{type:"button",className:"text-[10px] px-2 py-1 rounded border "+(d?"bg-white text-gray-600 border-gray-300 hover:bg-gray-50":"bg-gray-800 text-white border-gray-800"),onClick:()=>s({...l,displayVariant:"variant_2"}),children:"Variante 2 (Vollbild)"})]})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:d?"Hintergrundfarbe (Farbfläche)":"Hintergrundfarbe (Fallback)"}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[e.jsx("input",{type:"color",value:l.bgColor,onChange:e=>s({...l,bgColor:e.target.value}),className:"h-9 w-9 rounded border cursor-pointer"}),e.jsx(Z,{value:l.bgColor,onChange:e=>s({...l,bgColor:e.target.value}),className:"h-9 text-sm font-mono"})]})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Titel"}),e.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[e.jsx(Z,{value:l.title,onChange:e=>s({...l,title:e.target.value}),placeholder:"z.B. Griechische Woche",className:"flex-1"}),c(l.titleFont,e=>s({...l,titleFont:e}))]})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Untertitel"}),e.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[e.jsx(Z,{value:l.subtitle,onChange:e=>s({...l,subtitle:e.target.value}),placeholder:"z.B. Täglich wechselndes Gericht",className:"flex-1"}),c(l.subtitleFont,e=>s({...l,subtitleFont:e}))]})]})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Link-URL (optional)"}),e.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[e.jsx(Z,{value:l.linkUrl,onChange:e=>s({...l,linkUrl:e.target.value}),placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>s({...l,linkUrl:e})})]})]}),e.jsx(ti,{variant:"desktop",displayVariant:l.displayVariant,imageUrl:l.imageDesktopUrl,textColor:l.textColorDesktop,onTextColorChange:e=>s({...l,textColorDesktop:e}),bgColor:l.bgColor,title:l.title,subtitle:l.subtitle,titleFontSize:l.titleFontSizeDesktop,subtitleFontSize:l.subtitleFontSizeDesktop,titleFont:l.titleFont,subtitleFont:l.subtitleFont,textPosition:l.textPositionDesktop,onTextPositionChange:e=>s({...l,textPositionDesktop:e}),textAlignment:l.textAlignmentDesktop,onTextAlignmentChange:e=>s({...l,textAlignmentDesktop:e}),onTitleFontSizeChange:e=>s({...l,titleFontSizeDesktop:e}),onSubtitleFontSizeChange:e=>s({...l,subtitleFontSizeDesktop:e}),uploading:"desktop"===n,onUpload:e=>a("desktop",e),onSelectFromLibrary:e=>r("desktop",e),onRemoveImage:()=>o("desktop")}),e.jsx(ti,{variant:"tablet",displayVariant:l.displayVariant,imageUrl:l.imageTabletUrl,textColor:l.textColorTablet,onTextColorChange:e=>s({...l,textColorTablet:e}),bgColor:l.bgColor,title:l.title,subtitle:l.subtitle,titleFontSize:l.titleFontSizeTablet,subtitleFontSize:l.subtitleFontSizeTablet,titleFont:l.titleFont,subtitleFont:l.subtitleFont,textPosition:l.textPositionTablet,onTextPositionChange:e=>s({...l,textPositionTablet:e}),textAlignment:l.textAlignmentTablet,onTextAlignmentChange:e=>s({...l,textAlignmentTablet:e}),onTitleFontSizeChange:e=>s({...l,titleFontSizeTablet:e}),onSubtitleFontSizeChange:e=>s({...l,subtitleFontSizeTablet:e}),uploading:"tablet"===n,onUpload:e=>a("tablet",e),onSelectFromLibrary:e=>r("tablet",e),onRemoveImage:()=>o("tablet")}),e.jsx(ti,{variant:"mobile",displayVariant:l.displayVariant,imageUrl:l.imageMobileUrl,textColor:l.textColorMobile,onTextColorChange:e=>s({...l,textColorMobile:e}),bgColor:l.bgColor,title:l.title,subtitle:l.subtitle,titleFontSize:l.titleFontSizeMobile,subtitleFontSize:l.subtitleFontSizeMobile,titleFont:l.titleFont,subtitleFont:l.subtitleFont,textPosition:l.textPositionMobile,onTextPositionChange:e=>s({...l,textPositionMobile:e}),textAlignment:l.textAlignmentMobile,onTextAlignmentChange:e=>s({...l,textAlignmentMobile:e}),onTitleFontSizeChange:e=>s({...l,titleFontSizeMobile:e}),onSubtitleFontSizeChange:e=>s({...l,subtitleFontSizeMobile:e}),uploading:"mobile"===n,onUpload:e=>a("mobile",e),onSelectFromLibrary:e=>r("mobile",e),onRemoveImage:()=>o("mobile")})]})}
1function li({title:t,subtitle:i,titleFontSize:l,subtitleFontSize:s,titleFont:a,subtitleFont:n,textPosition:r,textColor:o,scale:c}){if(!t&&!i)return null;const d=Math.round(l*c),x=Math.round(s*c),u=e=>"lato"===e?"font-lato":"font-oswald";return e.jsx("div",{className:`absolute inset-0 flex flex-col p-4 ${Xt[r].justify}`,style:{color:o},children:e.jsxs("div",{className:`${Xt[r].self} ${Xt[r].textAlign}`,children:[t&&e.jsx("p",{className:`font-black drop-shadow-lg ${u(a)}`,style:{fontSize:`${d}px`,lineHeight:"130%"},children:t}),i&&e.jsx("p",{className:`mt-1 drop-shadow-lg opacity-90 ${u(n)}`,style:{fontSize:`${x}px`,lineHeight:"130%"},children:i})]})})}function si({spVariant:t,imageUrl:i,textColor:l,title:s,subtitle:n,titleFontSize:c,subtitleFontSize:d,titleFont:x,subtitleFont:u,onTextColorChange:m,textPosition:g,onTextPositionChange:h,onTitleFontSizeChange:p,onSubtitleFontSizeChange:b,uploading:v,onUpload:f,onSelectFromLibrary:j,onRemoveImage:F}){const S=dt[t],y=$.useRef(null),C=$.useRef(null),k=S.screenWidth/S.screenHeight,N="split"===t,w="splitPortrait"===t,T=N||w,z=S.screenHeight>S.screenWidth,U=z?"500px":"400px",A=z?1.9:N?2.2:2,D=z?.28:N?.42:.34,[B,P]=$.useState(Math.max(D,(z?500:400)/S.screenHeight*A));return $.useEffect(()=>{const e=C.current;if(!e)return;const t=()=>{const t=e.getBoundingClientRect().height;if(t<=0)return;const i=Math.max(D,t/S.screenHeight*A);P(e=>Math.abs(e-i)<.001?e:i)};t();const i=new ResizeObserver(()=>{t()});return i.observe(e),()=>i.disconnect()},[S.screenHeight,A,D]),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx(J,{className:"font-bold",children:S.label}),e.jsxs("p",{className:"text-xs text-gray-500 mt-0.5",children:[S.description," — ",S.screenWidth.toLocaleString("de-DE")," x"," ",S.screenHeight.toLocaleString("de-DE")," px",N&&e.jsx(e.Fragment,{children:" — Bildfläche rechte Hälfte"}),w&&e.jsx(e.Fragment,{children:" — Bildfläche untere Hälfte"})," — Bild muss exakt"," ",S.width.toLocaleString("de-DE")," x"," ",S.height.toLocaleString("de-DE")," px sein"]})]}),e.jsx("div",{className:"rounded-md border bg-gray-50 px-2 py-1.5",children:e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Schriftfarbe"}),e.jsx("input",{type:"color",value:l,onChange:e=>m(e.target.value),className:"h-7 w-7 rounded border cursor-pointer"}),e.jsx(Z,{value:l,onChange:e=>m(e.target.value),className:"w-24 h-7 text-xs font-mono"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Größe Titel"}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:c,onChange:e=>p(parseInt(e.target.value)||c),className:"w-24 h-7 text-xs text-center tabular-nums"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-[10px] text-gray-500 w-20",children:"Größe Untert."}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:d,onChange:e=>b(parseInt(e.target.value)||d),className:"w-24 h-7 text-xs text-center tabular-nums"})]})]}),e.jsx("div",{className:"min-h-[96px] flex items-stretch",children:e.jsx(ei,{value:g,onChange:h,className:"h-full place-content-center"})})]})}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(_,{size:"sm",variant:"outline",onClick:()=>y.current?.click(),disabled:v,children:[v?e.jsx(o,{className:"h-3 w-3 animate-spin mr-1"}):e.jsx(a,{className:"h-3 w-3 mr-1"}),i?"Bild ändern":"Bild hochladen"]}),i?e.jsxs(_,{size:"sm",variant:"outline",onClick:F,disabled:v,className:"text-red-600 border-red-200 hover:text-red-700 hover:bg-red-50",children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Bild entfernen"]}):null,e.jsx(Ee,{onSelect:j,expectedWidth:S.width,expectedHeight:S.height})]}),e.jsx("input",{ref:y,type:"file",accept:"image/webp,image/jpeg,image/png",className:"hidden",onChange:e=>{const t=e.target.files?.[0];t&&f(t),e.target.value=""}})]}),e.jsx("div",{ref:C,className:"rounded-lg overflow-hidden border bg-gray-900",style:{aspectRatio:`${k}`,maxHeight:U},children:T?e.jsxs("div",{className:"flex h-full w-full "+(w?"flex-col":""),children:[e.jsxs("div",{className:"flex-1 relative overflow-hidden",style:{background:"linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%)"},children:[e.jsxs("div",{className:"absolute inset-0 p-4 flex flex-col text-white",children:[e.jsx("div",{className:"mb-3",children:e.jsx("p",{className:"font-black text-base leading-none tracking-tight",children:"Menüplan"})}),e.jsx("div",{className:"space-y-2 flex-1",children:["Menü 1","Menü 2","Menü 3","Menü 4"].map((t,i)=>e.jsxs("div",{children:[e.jsx("p",{className:"text-[7px] text-gray-400",children:t}
1),e.jsx("div",{className:"h-1.5 bg-gray-700 rounded w-3/4 mt-0.5"}),e.jsx("div",{className:"h-1 bg-gray-800 rounded w-1/2 mt-0.5"})]},i))}),e.jsx("p",{className:"text-[5px] text-gray-500 mt-auto",children:"Bei Fragen zu Allergenen wende Dich an unser Personal."})]}),e.jsx("div",{className:"absolute bottom-1 left-1 right-1 bg-black/70 backdrop-blur-sm rounded px-2 py-1 text-center",children:e.jsx("p",{className:"text-[7px] text-amber-400 font-medium",children:"Menüplan — wird von SyncPlay gesteuert"})})]}),e.jsx("div",{className:"flex-1",children:i?e.jsxs("div",{className:"relative w-full h-full",children:[e.jsx("img",{src:i,alt:"SyncPlay Split",className:"w-full h-full object-cover"}),e.jsx(li,{title:s,subtitle:n,titleFontSize:c,subtitleFontSize:d,titleFont:x,subtitleFont:u,textPosition:g,textColor:l,scale:B})]}):e.jsx("button",{onClick:()=>y.current?.click(),disabled:v,className:"w-full h-full flex flex-col items-center justify-center text-gray-500 hover:text-gray-300 transition-colors bg-gray-800",children:v?e.jsx(o,{className:"h-8 w-8 animate-spin"}):e.jsxs(e.Fragment,{children:[e.jsx(a,{className:"h-10 w-10 mb-2"}),e.jsxs("span",{className:"text-sm",children:[S.width.toLocaleString("de-DE")," x"," ",S.height.toLocaleString("de-DE")," px"]})]})})})]}):i?e.jsxs("div",{className:"relative w-full h-full",children:[e.jsx("img",{src:i,alt:`SyncPlay ${S.label}`,className:"w-full h-full object-cover"}),e.jsx(li,{title:s,subtitle:n,titleFontSize:c,subtitleFontSize:d,titleFont:x,subtitleFont:u,textPosition:g,textColor:l,scale:B})]}):e.jsx("button",{onClick:()=>y.current?.click(),disabled:v,className:"w-full h-full flex flex-col items-center justify-center text-gray-500 hover:text-gray-300 transition-colors",children:v?e.jsx(o,{className:"h-8 w-8 animate-spin"}):e.jsxs(e.Fragment,{children:[e.jsx(a,{className:"h-10 w-10 mb-2"}),e.jsxs("span",{className:"text-sm",children:[S.width.toLocaleString("de-DE")," x"," ",S.height.toLocaleString("de-DE")," px"]})]})})})]})}function ai({state:t,onChange:i,onImageUpload:l,uploadingVariant:s,onSelectFromLibrary:a,onRemoveImage:n}){const r=(t,i)=>e.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[e.jsx("button",{type:"button",className:"h-9 px-2 text-xs rounded border transition-colors "+("oswald"===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>i("oswald"),children:"Oswald"}),e.jsx("button",{type:"button",className:"h-9 px-2 text-xs rounded border transition-colors "+("lato"===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>i("lato"),children:"Lato"})]});return e.jsxs("div",{className:"space-y-8",children:[e.jsx("div",{className:"flex gap-6 items-start",children:e.jsxs("div",{className:"flex-1 space-y-4",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Titel"}),e.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[e.jsx(Z,{value:t.title,onChange:e=>i({...t,title:e.target.value}),placeholder:"z.B. Griechische Woche",className:"flex-1"}),r(t.titleFont,e=>i({...t,titleFont:e}))]})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-sm",children:"Untertitel"}),e.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[e.jsx(Z,{value:t.subtitle,onChange:e=>i({...t,subtitle:e.target.value}),placeholder:"z.B. Täglich wechselndes Gericht",className:"flex-1"}),r(t.subtitleFont,e=>i({...t,subtitleFont:e}))]})]})]})}),e.jsx(si,{spVariant:"split",imageUrl:t.imageSplitUrl,textColor:t.textColorSplit,onTextColorChange:e=>i({...t,textColorSplit:e}),title:t.title,subtitle:t.subtitle,titleFontSize:t.titleFontSizeSplit,subtitleFontSize:t.subtitleFontSizeSplit,titleFont:t.titleFont,subtitleFont:t.subtitleFont,textPosition:t.textPositionSplit,onTextPositionChange:e=>i({...t,textPositionSplit:e}),onTitleFontSizeChange:e=>i({...t,titleFontSizeSplit:e}),onSubtitleFontSizeChange:e=>i({...t,subtitleFontSizeSplit:e}),uploading:"split"===s,onUpload:e=>l("split",e),onSelectFromLibrary:e=>a("split",e),onRemoveImage:()=>n("split")}
1),e.jsx(si,{spVariant:"splitPortrait",imageUrl:t.imageSplitPortraitUrl,textColor:t.textColorSplitPortrait,onTextColorChange:e=>i({...t,textColorSplitPortrait:e}),title:t.title,subtitle:t.subtitle,titleFontSize:t.titleFontSizeSplitPortrait,subtitleFontSize:t.subtitleFontSizeSplitPortrait,titleFont:t.titleFont,subtitleFont:t.subtitleFont,textPosition:t.textPositionSplitPortrait,onTextPositionChange:e=>i({...t,textPositionSplitPortrait:e}),onTitleFontSizeChange:e=>i({...t,titleFontSizeSplitPortrait:e}),onSubtitleFontSizeChange:e=>i({...t,subtitleFontSizeSplitPortrait:e}),uploading:"splitPortrait"===s,onUpload:e=>l("splitPortrait",e),onSelectFromLibrary:e=>a("splitPortrait",e),onRemoveImage:()=>n("splitPortrait")}),e.jsx(si,{spVariant:"landscape",imageUrl:t.imageLandscapeUrl,textColor:t.textColorLandscape,onTextColorChange:e=>i({...t,textColorLandscape:e}),title:t.title,subtitle:t.subtitle,titleFontSize:t.titleFontSizeLandscape,subtitleFontSize:t.subtitleFontSizeLandscape,titleFont:t.titleFont,subtitleFont:t.subtitleFont,textPosition:t.textPositionLandscape,onTextPositionChange:e=>i({...t,textPositionLandscape:e}),onTitleFontSizeChange:e=>i({...t,titleFontSizeLandscape:e}),onSubtitleFontSizeChange:e=>i({...t,subtitleFontSizeLandscape:e}),uploading:"landscape"===s,onUpload:e=>l("landscape",e),onSelectFromLibrary:e=>a("landscape",e),onRemoveImage:()=>n("landscape")}),e.jsx(si,{spVariant:"portrait",imageUrl:t.imagePortraitUrl,textColor:t.textColorPortrait,onTextColorChange:e=>i({...t,textColorPortrait:e}),title:t.title,subtitle:t.subtitle,titleFontSize:t.titleFontSizePortrait,
1subtitleFontSize:t.subtitleFontSizePortrait,titleFont:t.titleFont,subtitleFont:t.subtitleFont,textPosition:t.textPositionPortrait,onTextPositionChange:e=>i({...t,textPositionPortrait:e}),onTitleFontSizeChange:e=>i({...t,titleFontSizePortrait:e}),onSubtitleFontSizeChange:e=>i({...t,subtitleFontSizePortrait:e}),uploading:"portrait"===s,onUpload:e=>l("portrait",e),onSelectFromLibrary:e=>a("portrait",e),onRemoveImage:()=>n("portrait")})]})}function ni({imageUrl:t,fallbackUrl:i,variant:l,displayVariant:s,backgroundColor:n,scale:c,bannerAreaHeightPx:d,skipColoredBox:x,uploading:u,onUpload:m,onSelectFromLibrary:g,onRemoveImage:h}){const p=$.useRef(null),b=ut(s,l),v=l,f=Qe(s),j=ke(v)*c,F=Ne(v),S="string"==typeof F.width&&F.width.endsWith("px")?parseFloat(F.width)*c+"px":F.width,y=f&&"desktop"===v&&null!=d&&d>0?we({bannerAreaHeightPx:d,scale:c}):null,C=f?{width:S,aspectRatio:"1 / 1",overflow:"hidden",maxWidth:`${F.maxPercent}%`,maxHeight:y?`min(${F.maxPercent}%, ${y.maxImageHeightPx}px)`:`${F.maxPercent}%`,transform:"center"===F.anchor?"translate(-50%, -50%)":"translateY(-50%)",to
1p:"50%"}:{inset:0},k=y?{position:"absolute",top:0,right:0,left:0,bottom:`${y.reservedBottomPx}px`}:void 0;f&&("center"===F.anchor?C.left="50%":"left"===F.anchor?C.left=F.offsetPx*c+"px":C.right=F.offsetPx*c+"px");const N=()=>p.current?.click(),w=f?"object-contain":"object-cover",T=f?{maxWidth:428*c+"px",marginLeft:"auto",marginRight:"auto"}:void 0,z=e.jsx(e.Fragment,{children:t?e.jsx("img",{src:t,alt:b.label,className:`w-full h-full ${w}`,style:T}):i?e.jsx("img",{src:i,alt:`${b.label} fallback`,className:`w-full h-full ${w} opacity-50`,style:T}):null}),U=e.jsxs(e.Fragment,{children:[t?null:e.jsxs("div",{className:"absolute inset-0 z-50 border-2 border-dashed border-white/45 bg-black/35 flex flex-col items-center justify-center gap-1.5",children:[e.jsx(a,{className:"h-5 w-5 text-white/85"}),e.jsx("p",{className:"text-white text-[10px] font-medium",children:"Kein Bild ausgewählt"}),i?e.jsx("p",{className:"text-white/80 text-[9px]",children:"Desktop-Fallback aktiv"}):null,e.jsxs(_,{type:"button",size:"sm",variant:"secondary",className:"h-6 text-[10px] px-2",onClick:N,disabled:u,children:[u?e.jsx(o,{className:"h-3 w-3 animate-spin mr-1"}):e.jsx(a,{className:"h-3 w-3 mr-1"}),"Bild auswählen"]})]}),t?e.jsxs(_,{type:"button",size:"sm",variant:"destructive",className:"absolute top-1.5 right-1.5 z-50 h-6 text-[10px] px-2",onClick:h,disabled:u,children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Bild entfernen"]}):null,e.jsxs("div",{className:"absolute inset-0 z-50 bg-black/0 group-hover/slot:bg-black/50 transition-colors flex flex-col items-center justify-center gap-1.5 opacity-0 group-hover/slot:opacity-100",children:[e.jsx("p",{className:"text-white/80 text-[9px] font-medium mb-0.5",children:Jt(b)?`quadratisch, mind. ${qt.toLocaleString("de-DE")} × ${qt.toLocaleString("de-DE")} px`:`${b.width.toLocaleString("de-DE")} × ${b.height.toLocaleString("de-DE")} px`}),e.jsxs(_,{size:"sm",variant:"secondary",className:"h-6 text-[10px] px-2",onClick:N,disabled:u,children:[u?e.jsx(o,{className:"h-3 w-3 animate-spin mr-1"}):e.jsx(a,{className:"h-3 w-3 mr-1"}),t?"Bild ändern":"Hochladen"]}),t?e.jsxs(_,{type:"button",size:"sm",variant:"destructive",className:"h-6 text-[10px] px-2",onClick:h,disabled:u,children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Bild entfernen"]}):null,e.jsx(Ee,{onSelect:g,expectedWidth:Jt(b)?void 0:b.width,expectedHeight:Jt(b)?void 0:b.height,minSquareSize:Jt(b)?qt:void 0,size:"sm",variant:"secondary",className:"h-6 text-[10px] px-2"})]})]});return e.jsxs("div",{className:"absolute inset-0",children:[f&&!x?e.jsx("div",{className:"absolute overflow-hidden",style:{top:`${j}px`,right:`${j}px`,bottom:`${j}px`,left:`${j}px`,backgroundColor:n||"#3D3D3D"},children:k?e.jsxs("div",{style:k,children:[e.jsx("div",{className:"absolute z-20",style:C,children:z}),e.jsx("div",{className:"group/slot absolute z-50",style:C,children:U})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"absolute z-20",style:C,children:z}),e.jsx("div",{className:"group/slot absolute z-50",style:C,children:U})]})}):f?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"absolute z-20",style:C,children:z}),e.jsx("div",{className:"group/slot absolute inset-0 z-50",children:U})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"absolute inset-0 z-20",children:z}),e.jsx("div",{className:"group/slot absolute inset-0 z-50",children:U})]}),e.jsx("input",{ref:p,type:"file",accept:"image/webp,image/jpeg,image/png",className:"hidden",onChange:e=>{const t=e.target.files?.[0];t&&m(t),e.target.value=""}})]})}function ri({title:t,subtitle:i,tagline:l,subtitleAboveTitle:s,titleFontSize:a,subtitleFontSize:n,taglineFontSize:r,titleFont:o,subtitleFont:c,taglineFont:d,textPosition:x,textAlignment:u,textColor:m,breakpoint:g,scale:h,buttonText:p,buttonBgColor:b,buttonTextColor:v,transparent:f,overlay:j,flex:F}){const{justify:S,align:y,marginTop:C,marginBottom:k}=Te(x),N=j?De(g,"variant_2"):Be(g),w=j?Ue(g):null,T=x.startsWith("top"),z=x.startsWith("bottom"),U=j&&T?Pe(g,"top"):N.vertical,A=j&&z?Pe(g,"bottom"):N.vertical,D=j||"desktop"!==g?N.vertical:Me,B=e=>"lato"===e?"font-lato":"font-oswald",P=ze(g),M=P.fontSize*h,L=P.lineHeight*h,$=P.paddingY*h,I=P.paddingX*h,H=w?w.variantTwoButtonGap:P.marginTop,_=j?{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:30,display:"flex",flexDirection:"column",justifyContent:S,alignItems:y,pointerEvents:"none",overflow:"hidden",paddingTop:U*h,paddingRight:N.horizontal*h,paddingBottom:A*h,paddingLeft:N.horizontal*h,boxSizing:"border-box"}:{flex:F??"0 0 50%",minWidth:0,minHeight:0,backgroundColor:f?"transparent":"#FFFFFF",display:"flex",flexDirection:"column",justifyContent:S,alignItems:y,paddingTop:N.vertical*h,paddingRight:N.horizontal*h,paddingBottom:D*h,paddingLeft:N.horizontal*h,boxSizing:"border-box"},V=j&&w?{width:"100%",maxWidth:Ae(g,h),minWidth:"min-content",textAlign:u,marginTop:C,marginBottom:k,alignSelf:y,backgroundColor:"#FFFFFF",borderRadius:w.variantTwoRadius*h+"px",padding:`${w.variantTwoPaddingY*h}px ${w.variantTwoPaddingX*h}px`,boxShadow:w.variantTwoShadow,overflowWrap:"break-word",wordBreak:"break-word",hyphens:"auto"}:{maxWidth:"100%",textAlign:u,alignSelf:y,overflowWrap:"break-word",wordBreak:"break-word",hyphens:"auto"};return e.jsx("div",{className:"overflow-hidden",style:_,children:(l||t||i||p)&&e.jsxs("div",{style:V,children:[(l||t||i)&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10*h+"px"},children:[l&&e.jsx("div",{className:`${B(d)} font-medium`,style:{fontSize:(r||14)*h+"px",lineHeight:"130%",color:m},children:l}),s?e.jsxs(e.Fragment,{children:[i&&e.jsx("div",{className:`${B(c)} font-black`,style:{fontSize:n*h+"px",lineHeight:"130%",color:m},children:i}),t&&e.jsx("div",{className:`${B(o)} font-bold`,style:{fontSize:a*h+"px",lineHeight:"130%",color:m},children:t})]}):e.jsxs(e.Fragment,{children:[t&&e.jsx("div",{className:`${B(o)} font-bold`,style:{fontSize:a*h+"px",lineHeight:"130%",color:m},children:t}),i&&e.jsx("div",{className:`${B(c)} font-black`,style:{fontSize:n*h+"px",lineHeight:"130%",color:m},children:i})]})]}),p&&e.jsx("div",{className:"font-lato font-black rounded-full inline-block whitespace-nowrap tracking-[0.01em]",style:{marginTop:H*h+"px",fontSize:`${M}px`,lineHeight:`${L}px`,backgroundColor:b||"#2e9d51",color:v||"#ffffff",padding:`${$}px ${I}px`},children:p})]})})}function oi({groupKey:t,state:i,onChange:l,onImageUpload:s,uploadingVariant:a,onSelectFromLibrary:n,onRemoveImage:r}){const o=$.useRef({variant_1:"variant_1"===i.displayVariant?{desktop:i.imageDesktopUrl,tablet:i.imageTabletUrl,mobile:i.imageMobileUrl}:null,variant_2:"variant_2"===i.displayVariant?{desktop:i.imageDesktopUrl,tablet:i.imageTabletUrl,mobile:i.imageMobileUrl}:null});$.useEffect(()=>{o.current[i.displayVariant]={desktop:i.imageDesktopUrl,tablet:i.imageTabletUrl,mobile:i.imageMobileUrl}},[i.displayVariant,i.imageDesktopUrl,i.imageTabletUrl,i.imageMobileUrl]);const c=e.jsx("div",{className:"bg-white flex flex-col justify-center items-center p-4 h-full",children:e.jsxs("div",{className:"w-full max-w-[120px]",children:[e.jsx("div",{className:"text-sm font-bold text-[#34342C] text-center mb-2",children:"Hallo!"}),e.jsx("div",{className:"h-4 bg-gray-200 rounded-full mb-1.5 w-full"}),e.jsx("div",{className:"h-5 bg-[#2e9d51] rounded-full w-full"})]})}),d=e.jsxs("div",{className:"bg-[#34342C] px-3 py-2 mt-auto shrink-0",children:[e.jsxs("div",{className:"flex gap-4 mb-1.5",children:[e.jsx("div",{className:"h-1 bg-white/20 rounded w-8"}),e.jsx("div",{className:"h-1 bg-white/20 rounded w-10"}),e.jsx("div",{className:"h-1 bg-white/20 rounded w-6"})]}),e.jsx("div",{className:"h-[1px] bg-white/10 my-1"}),e.jsx("div",{className:"h-1 bg-white/10 rounded w-16"})]}),x=xt[i.displayVariant],[u]=["banner","login"],m="variant_1"===i.displayVariant,g=m?"0 0 170px":"272 0 0%",h=m?"0 0 150px":"260 0 0%",v="variant_2"===i.displayVariant?"#3d3d3d":"transparent",f=e=>({variant:e,displayVariant:i.displayVariant,backgroundColor:i.bgColor,uploading:a===e,onUpload:t=>s(e,t),onSelectFromLibrary:t=>n(e,t),onRemoveImage:()=>r(e)}),j=e=>{if(i.displayVariant===e)return;const t=i.displayVariant;o.current[t]={desktop:i.imageDesktopUrl,tablet:i.imageTabletUrl,mobile:i.imageMobileUrl};const s=o.current[e],a=Rt(e);
1l({...i,displayVariant:e,imageDesktopUrl:s?.desktop||"",imageTabletUrl:s?.tablet||"",imageMobileUrl:s?.mobile||"",textColorDesktop:a,textColorTablet:a,textColorMobile:a})},F=(t,s,a,n)=>e.jsxs("div",{children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:t}),e.jsxs("div",{className:"flex items-center gap-1 mt-0.5",children:[e.jsx("input",{type:"color",value:s||"#000000",onChange:e=>l({...i,[a]:e.target.value}),className:"h-7 w-7 rounded border cursor-pointer shrink-0"}),e.jsx(Z,{value:s,onChange:e=>l({...i,[a]:e.target.value}),placeholder:n,className:"h-7 text-[11px] font-mono"})]})]}),S=(t,s,a,n,r,o,c,d,x)=>{return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:t}),(u=r,m=n,e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{type:"button",className:"text-[9px] px-1.5 py-0.5 rounded border "+("oswald"===u?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-500 border-gray-300 hover:bg-gray-50"),onClick:()=>l({...i,[m]:"oswald"}),children:"Oswald"}),e.jsx("button",{type:"button",className:"text-[9px] px-1.5 py-0.5 rounded border "+("lato"===u?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-500 border-gray-300 hover:bg-gray-50"),onClick:()=>l({...i,[m]:"lato"}),children:"Lato"})]}))]}),e.jsxs("div",{className:"flex gap-1.5 mt-0.5",children:[e.jsx(Z,{value:a,onChange:e=>l({...i,[s]:e.target.value}),placeholder:o,className:"h-7 text-[11px] flex-1"}),null]})]});var u,m},y=(t,l,s,a,n,r,o,c,d,x,u,m,g,h)=>e.jsx("div",{className:"rounded-md border bg-gray-50 px-2 py-1.5",children:e.jsxs("div",{className:"flex items-start justify-between gap-3 text-[10px]",children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-gray-500 w-20",children:"Schriftfarbe"}),e.jsx("input",{type:"color",value:t,onChange:e=>l(e.target.value),className:"h-7 w-7 rounded border cursor-pointer"}),e.jsx(Z,{value:t,onChange:e=>l(e.target.value),className:"h-7 w-24 text-[11px] font-mono"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-gray-500 w-20",children:"Größe Tagline"}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:d,onChange:e=>m(parseInt(e.target.value)||d),className:"h-7 w-24 text-[11px] text-center tabular-nums"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-gray-500 w-20",children:"Größe Titel"}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:o,onChange:e=>x(parseInt(e.target.value)||o),className:"h-7 w-24 text-[11px] text-center tabular-nums"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("span",{className:"text-gray-500 w-20",children:"Größe Untert."}),e.jsx("span",{className:"w-7"}),e.jsx(Z,{type:"number",min:8,max:120,value:c,onChange:e=>u(parseInt(e.target.value)||c),className:"h-7 w-24 text-[11px] text-center tabular-nums"})]}),"variant_1"===i.displayVariant?e.jsxs("div",{className:"flex items-center justify-between rounded-md border bg-white px-2 py-1",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Reihenfolge"}),e.jsx("p",{className:"text-[9px] text-gray-400 mt-0.5",children:g?"Bild · Text":"Text · Bild"})]}),e.jsx(ee,{checked:g,onCheckedChange:h})]}):null]}),e.jsx("div",{className:"min-h-[128px] flex items-stretch",children:e.jsxs("div",{className:"space-y-1 h-full place-content-center",children:[e.jsx(ei,{value:s,onChange:a}),e.jsx("div",{className:"flex items-center justify-center gap-1",children:["left","center","right"].map(t=>e.jsx("button",{type:"button",className:"h-6 w-7 rounded border text-[10px] font-bold transition-colors "+(n===t?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-500 border-gray-300 hover:bg-gray-50"),onClick:()=>r(t),title:`Textausrichtung: ${t}`,children:"left"===t?"L":"center"===t?"C":"R"},t))})]})})]})}),C=e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Anzeigevariante"}),e.jsxs("div",{className:"flex gap-1",children:[e.jsx("button",{type:"button",className:"text-[10px] px-2 py-1 rounded border "+("variant_1"===i.displayVariant?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>j("variant_1"),children:"Variante 1 (Farbfläche + Quadratbild)"}),e.jsx("button",{type:"button",className:"text-[10px] px-2 py-1 rounded border "+("variant_2"===i.displayVariant?"bg-gray-800 text-white border-gray-800":"bg-white text-gray-600 border-gray-300 hover:bg-gray-50"),onClick:()=>j("variant_2"),children:"Variante 2 (Vollbild)"})]})]}),Ze(t)?e.jsxs("div",{children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Label-Text *"}),e.jsx(Z,{value:i.labelText,onChange:e=>l({...i,labelText:e.target.value}),placeholder:"z.B. Frühlingsaktion",className:"h-7 text-[11px] mt-0.5"})]}):null,Qe(i.displayVariant)?e.jsx("div",{className:"grid grid-cols-1 gap-3",children:F("Hintergrundfarbe",i.bgColor,"bgColor","optional")}):null,S("Tagline","tagline",i.tagline,"taglineFont",i.taglineFont,"z.B. Entdecke die neuen"),S("Titel","title",i.title,"titleFont",i.titleFont,"z.B. WINTER"),S("Untertitel","subtitle",i.subtitle,"subtitleFont",i.subtitleFont,"z.B. SALATE & CO."),e.jsxs("div",{className:"flex items-center justify-between rounded-md border px-2 py-1.5",children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Untertitel über Titel anzeigen"}),e.jsx(ee,{checked:i.subtitleAboveTitle,onCheckedChange:e=>l({...i,subtitleAboveTitle:e})})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Link-URL"}),e.jsxs("div",{className:"mt-0.5 flex items-center gap-1.5",children:[e.jsx(Z,{value:i.linkUrl,onChange:e=>l({...i,linkUrl:e.target.value}),placeholder:"https://...",className:"h-7 text-[11px] flex-1"}),e.jsx(ht,{compact:!0,onSelect:e=>l({...i,linkUrl:e})})]})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-[10px] text-gray-500",children:"Button-Text"}),e.jsx(Z,{value:i.buttonText,onChange:e=>l({...i,buttonText:e.target.value}),placeholder:"z.B. Mehr erfahren",className:"h-7 text-[11px] mt-0.5"})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[F("Button-Farbe",i.buttonBgColor,"buttonBgColor"),F("Button-Schrift",i.buttonTextColor,"buttonTextColor")
1]})]});return e.jsxs("div",{className:"space-y-3",children:[C,e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"min-w-0 space-y-1",children:[e.jsxs("p",{className:"text-[10px] text-gray-400 flex items-center gap-1",children:[e.jsx(b,{className:"h-3 w-3"})," Desktop —"," ",x.desktop.description]}),e.jsxs("div",{className:"flex gap-3 items-start",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsx("div",{className:"border rounded overflow-hidden bg-gray-100",style:{height:720},children:e.jsxs("div",{className:"flex h-full",children:[e.jsx("div",{className:"w-1/2 flex h-full",children:"variant_1"===i.displayVariant?e.jsx("div",{style:{flex:1,height:"100%",padding:.62*ke("desktop")+"px",boxSizing:"border-box",display:"flex"},children:e.jsx("div",{style:{flex:1,height:"100%",backgroundColor:i.bgColor||"#3D3D3D",display:"flex",flexDirection:"column",overflow:"hidden"},children:i.imageFirstDesktop?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative overflow-hidden",style:{flex:"2 1 0%",width:"100%",minHeight:0},children:e.jsx(ni,{imageUrl:i.imageDesktopUrl,scale:.62,skipColoredBox:!0,...f("desktop")})}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeDesktop,subtitleFontSize:i.subtitleFontSizeDesktop,taglineFontSize:i.taglineFontSizeDesktop,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorDesktop,textPosition:i.textPositionDesktop,textAlignment:i.textAlignmentDesktop,breakpoint:"desktop",scale:.62,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0,flex:"1 1 0%"})]}):e.jsxs(e.Fragment,{children:[e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeDesktop,subtitleFontSize:i.subtitleFontSizeDesktop,taglineFontSize:i.taglineFontSizeDesktop,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorDesktop,textPosition:i.textPositionDesktop,textAlignment:i.textAlignmentDesktop,breakpoint:"desktop",scale:.62,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0,flex:"1 1 0%"}),e.jsx("div",{className:"relative overflow-hidden",style:{flex:"2 1 0%",width:"100%",minHeight:0},children:e.jsx(ni,{imageUrl:i.imageDesktopUrl,scale:.62,skipColoredBox:!0,...f("desktop")})})]})})}):e.jsxs("div",{className:"relative overflow-hidden",style:{flex:1,height:"100%",backgroundColor:v},children:[e.jsx(ni,{imageUrl:i.imageDesktopUrl,scale:.62,...f("desktop")}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeDesktop,subtitleFontSize:i.subtitleFontSizeDesktop,taglineFontSize:i.taglineFontSizeDesktop,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorDesktop,textPosition:i.textPositionDesktop,textAlignment:i.textAlignmentDesktop,breakpoint:"desktop",scale:.62,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,overlay:!0})]})}),e.jsx("div",{className:"w-1/2",children:c})]})})}),e.jsx("div",{className:"shrink-0",children:y(i.textColorDesktop,e=>l({...i,textColorDesktop:e}),i.textPositionDesktop,e=>l({...i,textPositionDesktop:e}),i.textAlignmentDesktop,e=>l({...i,textAlignmentDesktop:e}),i.titleFontSizeDesktop,i.subtitleFontSizeDesktop,i.taglineFontSizeDesktop,e=>l({...i,titleFontSizeDesktop:e}),e=>l({...i,subtitleFontSizeDesktop:e}),e=>l({...i,taglineFontSizeDesktop:e}),i.imageFirstDesktop,e=>l({...i,imageFirstDesktop:e}))})]})]}),e.jsxs("div",{className:"grid grid-cols-1 2xl:grid-cols-5 gap-3",children:[e.jsxs("div",{className:"min-w-0 space-y-1 2xl:col-span-3",children:[e.jsxs("p",{className:"text-[10px] text-gray-400 flex items-center gap-1",children:[e.jsx(p,{className:"h-3 w-3"})," Tablet —"," ",x.tablet.description]}),e.jsxs("div",{className:"flex gap-3 items-start",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsxs("div",{className:"border rounded overflow-hidden bg-gray-100 flex flex-col",style:{height:720},children:["banner"===u?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{flex:g,minHeight:0},className:"flex overflow-hidden",children:"variant_1"===i.displayVariant?e.jsx("div",{style:{flex:1,height:"100%",padding:.38*ke("tablet")+"px",boxSizing:"border-box",display:"flex"},children:e.jsx("div",{style:{flex:1,height:"100%",backgroundColor:i.bgColor||"#3D3D3D",display:"flex",overflow:"hidden"},children:i.imageFirstTablet?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,skipColoredBox:!0,...f("tablet")})}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0})]}):e.jsxs(e.Fragment,{children:[e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0}),e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,skipColoredBox:!0,...f("tablet")})})]})})}):e.jsxs("div",{className:"relative overflow-hidden",style:{flex:1,height:"100%",backgroundColor:v},children:[e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,...f("tablet")}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,overlay:!0})]})}),e.jsx("div",{style:{flex:"426 0 0%"},className:"bg-white overflow-hidden",children:c})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{flex:"426 0 0%"},className:"bg-white overflow-hidden",children:c}),e.jsx("div",{style:{flex:g,minHeight:0},className:"flex overflow-hidden",children:"variant_1"===i.displayVariant?e.jsx("div",{style:{flex:1,height:"100%",padding:.38*ke("tablet")+"px",boxSizing:"border-box",display:"flex"},children:e.jsx("div",{style:{flex:1,height:"100%",backgroundColor:i.bgColor||"#3D3D3D",display:"flex",overflow:"hidden"},children:i.imageFirstTablet?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,skipColoredBox:!0,...f("tablet")})}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0})]}):e.jsxs(e.Fragment,{children:[e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0}),e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,skipColoredBox:!0,...f("tablet")})})]})})}):e.jsxs("div",{className:"relative overflow-hidden",style:{flex:1,height:"100%",backgroundColor:v},children:[e.jsx(ni,{imageUrl:i.imageTabletUrl,fallbackUrl:i.imageDesktopUrl,scale:.38,...f("tablet")}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeTablet,subtitleFontSize:i.subtitleFontSizeTablet,taglineFontSize:i.taglineFontSizeTablet,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorTablet,textPosition:i.textPositionTablet,textAlignment:i.textAlignmentTablet,breakpoint:"tablet",scale:.38,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,overlay:!0})]})})]}),d]})}),e.jsx("div",{className:"shrink-0",children:y(i.textColorTablet,e=>l({...i,textColorTablet:e}),i.textPositionTablet,e=>l({...i,textPositionTablet:e}),i.textAlignmentTablet,e=>l({...i,textAlignmentTablet:e}),i.titleFontSizeTablet,i.subtitleFontSizeTablet,i.taglineFontSizeTablet,e=>l({...i,titleFontSizeTablet:e}),e=>l({...i,subtitleFontSizeTablet:e}),e=>l({...i,taglineFontSizeTablet:e}),i.imageFirstTablet,e=>l({...i,imageFirstTablet:e}))})]})]}),e.jsxs("div",{className:"min-w-0 space-y-1 xl:col-span-2",children:[e.jsxs("p",{className:"text-[10px] text-gray-400 flex items-center gap-1",children:[e.jsx(p,{className:"h-3 w-3"})," Mobile —"," ",x.mobile.description]}),e.jsxs("div",{className:"flex gap-3 items-start",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsxs("div",{className:"border rounded overflow-hidden bg-gray-100 flex flex-col",style:{height:720},children:[e.jsx("div",{style:{flex:h,minHeight:0},className:"flex overflow-hidden",children:"variant_1"===i.displayVariant?e.jsx("div",{style:{flex:1,height:"100%",padding:.34*ke("mobile")+"px",boxSizing:"border-box",display:"flex"},children:e.jsx("div",{style:{flex:1,height:"100%",backgroundColor:i.bgColor||"#3D3D3D",display:"flex",overflow:"hidden"},children:i.imageFirstMobile?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageMobileUrl,fallbackUrl:i.imageTabletUrl||i.imageDesktopUrl,scale:.34,skipColoredBox:!0,...f("mobile")})}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeMobile,subtitleFontSize:i.subtitleFontSizeMobile,taglineFontSize:i.taglineFontSizeMobile,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorMobile,textPosition:i.textPositionMobile,textAlignment:i.textAlignmentMobile,breakpoint:"mobile",scale:.34,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0})]}):e.jsxs(e.Fragment,{children:[e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeMobile,subtitleFontSize:i.subtitleFontSizeMobile,taglineFontSize:i.taglineFontSizeMobile,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorMobile,textPosition:i.textPositionMobile,textAlignment:i.textAlignmentMobile,breakpoint:"mobile",scale:.34,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,transparent:!0}),e.jsx("div",{className:"relative overflow-hidden",style:{flex:"0 0 50%",height:"100%"},children:e.jsx(ni,{imageUrl:i.imageMobileUrl,fallbackUrl:i.imageTabletUrl||i.imageDesktopUrl,scale:.34,skipColoredBox:!0,...f("mobile")})})]})})}):e.jsxs("div",{className:"relative overflow-hidden",style:{flex:1,height:"100%",backgroundColor:v},children:[e.jsx(ni,{imageUrl:i.imageMobileUrl,fallbackUrl:i.imageTabletUrl||i.imageDesktopUrl,scale:.34,...f("mobile")}),e.jsx(ri,{title:i.title,subtitle:i.subtitle,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline,titleFontSize:i.titleFontSizeMobile,subtitleFontSize:i.subtitleFontSizeMobile,taglineFontSize:i.taglineFontSizeMobile,titleFont:i.titleFont,subtitleFont:i.subtitleFont,taglineFont:i.taglineFont,textColor:i.textColorMobile,textPosition:i.textPositionMobile,textAlignment:i.textAlignmentMobile,breakpoint:"mobile",scale:.34,buttonText:i.buttonText,buttonBgColor:i.buttonBgColor,buttonTextColor:i.buttonTextColor,overlay:!0})]})}),e.jsx("div",{style:{flex:"390 0 0%"},className:"bg-white overflow-hidden",children:c}),d]})}),e.jsx("div",{className:"shrink-0",children:y(i.textColorMobile,e=>l({...i,textColorMobile:e}),i.textPositionMobile,e=>l({...i,textPositionMobile:e}),i.textAlignmentMobile,e=>l({...i,textAlignmentMobile:e}),i.titleFontSizeMobile,i.subtitleFontSizeMobile,i.taglineFontSizeMobile,e=>l({...i,titleFontSizeMobile:e}),e=>l({...i,subtitleFontSizeMobile:e}),e=>l({...i,taglineFontSizeMobile:e}),i.imageFirstMobile,e=>l({...i,imageFirstMobile:e}))})]})]})]})]})]})}function ci({state:t,onChange:i,onImageUpload:l,uploadingVariant:s,onSelectFromLibrary:a,onRemoveImage:n,groupKey:r}){return e.jsx(oi,{groupKey:r,state:t,onChange:i,onImageUpload:l,uploadingVariant:s,onSelectFromLibrary:a,onRemoveImage:n})}function di(){const t=I(),[,i]=H(),s=!t.id||"new"===t.id,n=s?null:parseInt(t.id,10),N=s&&function(){if("undefined"==typeof navigator)return!1;const e=navigator.userAgent,t=/Safari/i.test(e),i=/(Chrome|CriOS|Chromium|Edg|OPR|Android)/i.test(e);return t&&!i}(),w=V.useUtils(),{data:T,isLoading:z}=V.adbox.getCampaign.useQuery({id:n},{enabled:null!==n}),{data:U}=V.meals.adminGetAll.useQuery(void 0,{enabled:null!==n}),A=V.adbox.createCampaign.useMutation({onError:e=>pe.error(e.message)}),D=V.adbox.updateCampaign.useMutation({onError:e=>pe.error(e.message)}),B=V.adbox.createAsset.useMutation({onError:e=>pe.error(e.message)}),P=V.adbox.updateAsset.useMutation({onError:e=>pe.error(e.message)}),M=V.adbox.uploadAssetImage.useMutation({onError:e=>pe.error(e.message)}),L=V.adbox.assignMealToCampaign.useMutation({onError:e=>pe.error(e.message)}),be=V.adbox.removeMealFromCampaign.useMutation({onError:e=>pe.error(e.message)}),ve=V.meals.create.useMutation({onError:e=>pe.error(e.message)}),fe=V.meals.uploadImage.useMutation(),[je,Fe]=$.useState(""),[ye,Ce]=$.useState(""),[ke,Ne]=$.useState(""),[we,Te]=$.useState(""),[ze,Ue]=$.useState(""),[Ae,De]=$.useState(!1),[Be,Pe]=$.useState(!0),[Me,Le]=$.useState(!0),[$e,Ie]=$.useState(!0),[He,_e]=$.useState(!1),[Ve,Ge]=$.useState(!1),[Re,We]=$.useState(!1),[Ke,Oe]=$.useState(!1),[Ze,it]=$.useState(!1),[lt,xt]=$.useState(!1),[gt,vt]=$.useState(!1),[ft,jt]=$.useState(!1),[Ft,St]=$.useState(!1),[Ct,kt]=$.useState(""),[Rt,Xt]=$.useState(""),[ei,ti]=$.useState(""),[li,si]=$.useState(""),[ni,ri]=$.useState("#FFC800"),[oi,di]=$.useState("#34342C"),[xi,ui]=$.useState(""),[mi,gi]=$.useState({displayVariant:"variant_2",imageDesktopUrl:"",imageTabletUrl:"",imageMobileUrl:"",textColorDesktop:"#FFFFFF",textColorTablet:"#FFFFFF",textColorMobile:"#FFFFFF",bgColor:"#FF7067",t
1itle:"",subtitle:"",tagline:"",titleFontSizeDesktop:24,titleFontSizeTablet:20,titleFontSizeMobile:18,subtitleFontSizeDesktop:14,subtitleFontSizeTablet:12,subtitleFontSizeMobile:11,taglineFontSize:14,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",linkUrl:"",textPositionDesktop:"middle-center",textPositionTablet:"middle-left",textPositionMobile:"middle-left",textAlignmentDesktop:"center",textAlignmentTablet:"left",textAlignmentMobile:"left",isActive:!0,assetId:null}),[hi,pi]=$.useState({displayVariant:"variant_2",imageDesktopUrl:"",imageTabletUrl:"",imageMobileUrl:"",textColorDesktop:"#FFFFFF",textColorTablet:"#FFFFFF",textColorMobile:"#FFFFFF",bgColor:"#FF7067",title:"",subtitle:"",tagline:"",titleFontSizeDesktop:24,titleFontSizeTablet:20,titleFontSizeMobile:18,subtitleFontSizeDesktop:14,subtitleFontSizeTablet:12,subtitleFontSizeMobile:11,taglineFontSize:14,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",linkUrl:"",textPositionDesktop:"middle-center",textPositionTablet:"middle-left",textPositionMobile:"middle-left",textAlignmentDesktop:"center",textAlignmentTablet:"left",textAlignmentMobile:"left",isActive:!0,assetId:null}),[bi,vi]=$.useState(null),[fi,ji]=$.useState({imageSplitUrl:"",imageLandscapeUrl:"",imagePortraitUrl:"",imageSplitPortraitUrl:"",textColorSplit:"#FFFFFF",textColorLandscape:"#FFFFFF",textColorPortrait:"#FFFFFF",textColorSplitPortrait:"#FFFFFF",title:"",subtitle:"",tagline:"",titleFontSizeSplit:32,titleFontSizeLandscape:36,titleFontSizePortrait:30,titleFontSizeSplitPortrait:32,subtitleFontSizeSplit:18,subtitleFontSizeLandscape:20,subtitleFontSizePortrait:17,subtitleFontSizeSplitPortrait:18,taglineFontSize:16,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",textPositionSplit:"bottom-left",textPositionLandscape:"bottom-left",textPositionPortrait:"bottom-left",textPositionSplitPortrait:"bottom-left",isActive:!0,assetId:null}),[Fi,Si]=$.useState({imageSplitUrl:"",imageLandscapeUrl:"",imagePortraitUrl:"",imageSplitPortraitUrl:"",textColorSplit:"#FFFFFF",textColorLandscape:"#FFFFFF",textColorPortrait:"#FFFFFF",textColorSplitPortrait:"#FFFFFF",title:"",subtitle:"",tagline:"",titleFontSizeSplit:32,titleFontSizeLandscape:36,titleFontSizePortrait:30,titleFontSizeSplitPortrait:32,subtitleFontSizeSplit:18,subtitleFontSizeLandscape:20,subtitleFontSizePortrait:17,subtitleFontSizeSplitPortrait:18,taglineFontSize:16,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",textPositionSplit:"bottom-left",textPositionLandscape:"bottom-left",textPositionPortrait:"bottom-left",textPositionSplitPortrait:"bottom-left",isActive:!0,assetId:null}),[yi,Ci]=$.useState(null),[ki,Ni]=$.useState(!1),[wi,Ti]=$.useState({displayVariant:"variant_2",labelText:"",imageDesktopUrl:"",imageTabletUrl:"",imageMobileUrl:"",textColorDesktop:"#000000",textColorTablet:"#000000",textColorMobile:"#000000",bgColor:"",title:"",subtitle:"",subtitleAboveTitle:!1,tagline:"",titleFontSizeDesktop:32,titleFontSizeTablet:26,titleFontSizeMobile:22,subtitleFontSizeDesktop:18,subtitleFontSizeTablet:16,subtitleFontSizeMobile:14,taglineFontSizeDesktop:14,taglineFontSizeTablet:14,taglineFontSizeMobile:14,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",textAlignmentDesktop:"left",textAlignmentTablet:"left",textAlignmentMobile:"left",textPositionDesktop:"bottom-left",textPositionTablet:"bottom-left",textPositionMobile:"bottom-left",linkUrl:"",buttonText:"",buttonBgColor:"#2e9d51",buttonTextColor:"#ffffff",imageFirstDesktop:!1,imageFirstTablet:!1,imageFirstMobile:!1,isActive:!0,assetId:null}),[zi,Ui]=$.useState({displayVariant:"variant_2",labelText:"",imageDesktopUrl:"",imageTabletUrl:"",imageMobileUrl:"",textColorDesktop:"#000000",textColorTablet:"#000000",textColorMobile:"#000000",bgColor:"",title:"",subtitle:"",subtitleAboveTitle:!1,tagline:"",titleFontSizeDesktop:32,titleFontSizeTablet:26,titleFontSizeMobile:22,subtitleFontSizeDesktop:18,subtitleFontSizeTablet:16,subtitleFontSizeMobile:14,taglineFontSizeDesktop:14,taglineFontSizeTablet:14,taglineFontSizeMobile:14,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",textAlignmentDesktop:"left",textAlignmentTablet:"left",textAlignmentMobile:"left",textPositionDesktop:"bottom-left",textPositionTablet:"bottom-left",textPositionMobile:"bottom-left",linkUrl:"",buttonText:"",buttonBgColor:"#2e9d51",buttonTextColor:"#ffffff",imageFirstDesktop:!1,imageFirstTablet:!1,imageFirstMobile:!1,isActive:!0,assetId:null}),[Ai,Di]=$.useState({displayVariant:"variant_2",labelText:"",imageDesktopUrl:"",imageTabletUrl:"",imageMobileUrl:"",textColorDesktop:"#000000",textColorTablet:"#000000",textColorMobile:"#000000",bgColor:"",title:"",subtitle:"",subtitleAboveTitle:!1,tagline:"",titleFontSizeDesktop:32,titleFontSizeTablet:26,titleFontSizeMobile:22,subt
1itleFontSizeDesktop:18,subtitleFontSizeTablet:16,subtitleFontSizeMobile:14,taglineFontSizeDesktop:14,taglineFontSizeTablet:14,taglineFontSizeMobile:14,titleFont:"oswald",subtitleFont:"oswald",taglineFont:"lato",textAlignmentDesktop:"left",textAlignmentTablet:"left",textAlignmentMobile:"left",textPositionDesktop:"bottom-left",textPositionTablet:"bottom-left",textPositionMobile:"bottom-left",linkUrl:"",buttonText:"",buttonBgColor:"#2e9d51",buttonTextColor:"#ffffff",imageFirstDesktop:!1,imageFirstTablet:!1,imageFirstMobile:!1,isActive:!0,assetId:null}),[Bi,Pi]=$.useState(null),[Mi,Li]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[$i,Ii]=$.useState(!1),[Hi,_i]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[Vi,Ei]=$.useState(!1),[Gi,Ri]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[Wi,Ki]=$.useState(!1),[Oi,qi]=$.useState({imageDesktopUrl:"",title:"",description:"",buttonText:"",linkUrl:"",imageFirst:!1,bgColor:"",textColor:"",buttonBgColor:"",buttonTextColor:"",isActive:!0,assetId:null}),[Qi,Zi]=$.useState(!1),[Ji,Yi]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[Xi,el]=$.useState(!1),[tl,il]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[ll,sl]=$.useState(!1),[al,nl]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[rl,ol]=$.useState(!1),[cl,dl]=$.useState({imageDesktopUrl:"",title:"",subtitle:"",buttonText:"",linkUrl:"",textColor:"#FFFFFF",buttonBgColor:"#FFC800",buttonTextColor:"#34342C",isActive:!0,assetId:null}),[xl,ul]=$.useState(!1),[ml,gl]=$.useState(!1),[hl,pl]=$.useState(!1),[bl,vl]=$.useState(s),[fl,jl]=$.useState(!1),[Fl,Sl]=$.useState(""),[yl,Cl]=$.useState(!1),[kl,Nl]=$.useState(!1),[wl,Tl]=$.useState({name:"",isFitMe:!1,isSalate:!1,description:"",price:"",portionSize:"",nutritionCalories:"",nutritionProtein:"",nutritionFat:"",nutritionSaturatedFat:"",nutritionCarbs:"",nutritionSugar:"",nutritionFiber:"",nutritionSalt:"",nutritionPer100gCalories:"",nutritionPer100gProtein:"",nutritionPer100gFat:"",nutritionPer100gSaturatedFat:"",nutritionPer100gCarbs:"",nutritionPer100gSugar:"",nutritionPer100gFiber:"",nutritionPer100gSalt:""}),[zl,Ul]=$.useState(null),[Al,Dl]=$.useState(null),[Bl,Pl]=$.useState(!1),Ml=()=>jl(!0),Ll=$.useMemo(()=>[...T?.assignedMeals??[]].sort((e,t)=>e.name.localeCompare(t.name,"de")),[T?.assignedMeals]),$l=$.useMemo(()=>{if(!U)return[];const e=new Set(Ll.map(e=>e.id));return U.filter(t=>!e.has(t.id)).sort((e,t)=>e.name.localeCompare(t.name,"de"))},[U,Ll]);$.useEffect(()=>{if(T&&!bl){Fe(T.title),Ce(qe(T.validFrom)),Ne(qe(T.validUntil)),Te(qe(T.displayFrom)),Ue(qe(T.displayUntil)),De(!!T.isActive),Pe(!!T.isActiveOrderApp),Le(!!T.isActiveSyncplay),Ie(!!T.isActiveLoginPage),_e(!!T.isActiveHomepageSlider),Ge(!!T.isActiveMenuserviceHomepageSlider),We(!!T.isActiveSpeiseplanSlider),Oe(!!T.isActiveActionSideBySide),it(!!T.isActiveCateringSlider),xt(!!T.isActiveKitaKrippeSlider),vt(!!T.isActiveSchuleSlider),jt(!!T.isActiveBetriebsrestaurantSlider),St(!!T.isLongTerm),kt(T.defaultImageUrl??""),Xt(T.defaultTitle??""),ti(T.defaultSubtitle??""),si(T.defaultButtonText??""),ri(T.defaultButtonBgColor??"#FFC800"),di(T.defaultButtonTextColor??"#34342C"),ui(T.defaultLinkUrl??"");for(const e of T.assets)if("order_app"===e.targetSystem){const t=wt(e.textPosition||null),i=zt(e.textAlignment?e.textAlignment??null:null,t),l=Dt(e.textColor||null),s=At(e.titleFontSize,{desktop:24,tablet:20,mobile:18}),a=At(e.subtitleFontSize,{desktop:14,tablet:12,mobile:11}),n={displayVariant:"variant_1"===e.displayVariant?"variant_1":"variant_2",imageDesktopUrl:e.imageDesktopUrl||"",imageTabletUrl:e.imageTabletUrl||"",imageMobileUrl:e.imageMobileUrl||"",textColorDesktop:l.desktop,textColorTablet:l.tablet,textColorMobile:l.mobile,bgColor:e.bgColor||"#FF7067",t
1itle:e.title||"",subtitle:e.subtitle||"",tagline:e.tagline||"",titleFontSizeDesktop:s.desktop,titleFontSizeTablet:s.tablet,titleFontSizeMobile:s.mobile,subtitleFontSizeDesktop:a.desktop,subtitleFontSizeTablet:a.tablet,subtitleFontSizeMobile:a.mobile,taglineFontSize:yt(e.taglineFontSize,14),titleFont:e.titleFont||"oswald",subtitleFont:e.subtitleFont||"oswald",taglineFont:e.taglineFont||"lato",linkUrl:e.linkUrl||"",textPositionDesktop:t.desktop,textPositionTablet:t.tablet,textPositionMobile:t.mobile,textAlignmentDesktop:i.desktop,textAlignmentTablet:i.tablet,textAlignmentMobile:i.mobile,isActive:1===e.isActive,assetId:e.id};"schule"===e.customerGroup&&gi(n),"menuservice"===e.customerGroup&&pi(n)}else if("syncplay"===e.targetSystem){const t=Pt(e.textPosition||null),i=$t(e.textColor||null),l=Lt(e.titleFontSize,{split:32,landscape:36,portrait:30}),s=Lt(e.subtitleFontSize,{split:18,landscape:20,portrait:17}),a={imageSplitUrl:e.imageDesktopUrl||"",imageLandscapeUrl:e.imageTabletUrl||"",imagePortraitUrl:e.imageMobileUrl||"",imageSplitPortraitUrl:e.imageSplitPortraitUrl||"",textColorSplit:i.split,textColorLandscape:i.landscape,textColorPortrait:i.portrait,textColorSplitPortrait:i.splitPortrait,title:e.title||"",subtitle:e.subtitle||"",tagline:e.tagline||"",titleFontSizeSplit:l.split,titleFontSizeLandscape:l.landscape,titleFontSizePortrait:l.portrait,titleFontSizeSplitPortrait:l.splitPortrait,subtitleFontSizeSplit:s.split,subtitleFontSizeLandscape:s.landscape,subtitleFontSizePortrait:s.portrait,subtitleFontSizeSplitPortrait:s.splitPortrait,taglineFontSize:yt(e.taglineFontSize,16),titleFont:e.titleFont||"oswald",subtitleFont:e.subtitleFont||"oswald",taglineFont:e.taglineFont||"lato",textPositionSplit:t.split,textPositionLandscape:t.landscape,textPositionPortrait:t.portrait,textPositionSplitPortrait:t.splitPortrait,isActive:1===e.isActive,assetId:e.id};"schule"===e.customerGroup&&ji(a),"menuservice"===e.customerGroup&&Si(a)}else if("login_page"===e.targetSystem){const t=_t(e.textPosition||null),i=Ot(e.textAlignment||null,t),l="variant_1"===e.displayVariant?"variant_1":"variant_2",s=Wt(e.textColor||null,l),a=Gt(e.titleFontSize,{desktop:32,tablet:26,mobile:22}),n=Gt(e.subtitleFontSize,{desktop:18,tablet:16,mobile:14}),r=Gt(e.taglineFontSize,{desktop:14,tablet:14,mobile:14}),o={displayVariant:l,labelText:e.labelText||"",imageDesktopUrl:e.imageDesktopUrl||"",imageTabletUrl:e.imageTabletUrl||"",imageMobileUrl:e.imageMobileUrl||"",textColorDesktop:s.desktop,textColorTablet:s.tablet,textColorMobile:s.mobile,bgColor:e.bgColor||"",title:e.title||"",subtitle:e.subtitle||"",subtitleAboveTitle:1===e.subtitleAboveTitle,tagline:e.tagline||"",titleFontSizeDesktop:a.desktop,titleFontSizeTablet:a.tablet,titleFontSizeMobile:a.mobile,subtitleFontSizeDesktop:n.desktop,subtitleFontSizeTablet:n.tablet,subtitleFontSizeMobile:n.mobile,taglineFontSizeDesktop:r.desktop,taglineFontSizeTablet:r.tablet,taglineFontSizeMobile:r.mobile,titleFont:e.titleFont||"oswald",subtitleFont:e.subtitleFont||"oswald",taglineFont:e.taglineFont||"lato",textAlignmentDesktop:i.desktop,textAlignmentTablet:i.tablet,textAlignmentMobile:i.mobile,textPositionDesktop:t.desktop,textPositionTablet:t.tablet,textPositionMobile:t.mobile,linkUrl:e.linkUrl||"",buttonText:e.buttonText||"",buttonBgColor:e.buttonBgColor||"#2e9d51",buttonTextColor:e.buttonTextColor||"#ffffff",imageFirstDesktop:1===e.imageFirst,imageFirstTablet:1===e.imageFirstTablet,imageFirstMobile:1===e.imageFirstMobile,isActive:1===e.isActive,assetId:e.id};"schule"===e.customerGroup&&Ti(o),"menuservice"===e.customerGroup&&Ui(o),"individual_action"===e.customerGroup&&Di(o)}else if("homepage_slider"===e.targetSystem)Li({imageDesktopUrl:e.imageDesktopUrl||"",title:e.title||"",subtitle:e.subtitle||"",buttonText:e.buttonText||"",linkUrl:e.linkUrl||"",textColor:e.textColor?.desktop||"#FFFFFF",buttonBgColor:e.buttonBgColor||"#FFC800",buttonTextColor:e.buttonTextColor||"#34342C",isActive:1===e.isActive,assetId:e.id});else if("menuservice_homepage_slider"===e.targetSystem)_i({imageDesktopUrl:e.imageDesktopUrl||"",title:e.title||"",subtitle:e.subtitle||"",buttonText:e.buttonText||"",linkUrl:e.linkUrl||"",textColor:e.textColor?.desktop||"#FFFFFF",buttonBgColor:e.buttonBgColor||"#FFC800",buttonTextColor:e.buttonTextColor||"#34342C",isActive:1===e.isActive,assetId:e.id});else if("speiseplan_slider"===e.targetSystem)Ri({imageDesktopUrl:e.imageDesktopUrl||"",title:e.title||"",subtitle:e.subtitle||"",buttonText:e.buttonText||"",linkUrl:e.linkUrl||"",textColor:e.textColor?.desktop||"#FFFFFF",buttonBgColor:e.buttonBgColor||"#FFC800",buttonTextColor:e.buttonTextColor||"#34342C",isActive:1===e.isActive,assetId:e.id});else if("action_side_by_side"===e.targetSystem)qi({imageDesktopUrl:e.imageDesktopUrl||"",title:e.title||"",description:e.subtitle||"",buttonText:e.buttonText||"",linkUrl:e.linkUrl||"",imageFirst:1===e.imageFirst,bgColor:e.bgColor||"",textColor:e.textColor?.desktop||"",buttonBgColor:e.buttonBgColor||"",buttonTextColor:e.buttonTextColor||"",isActive:1===e.isActive,assetId:e.id});else if("catering_slider"===e.targetSystem||"kita_krippe_slider"===e.targetSystem||"schule_slider"===e.targetSystem||"betriebsrestaurant_slider"===e.targetSystem){const t={imageDesktopUrl:e.imageDesktopUrl||"",title:e.title||"",subtitle:e.subtitle||"",buttonText:e.buttonText||"",linkUrl:e.linkUrl||"",textColor:e.textColor?.desktop||"#FFFFFF",buttonBgColor:e.buttonBgColor||"#FFC800",buttonTextColor:e.buttonTextColor||"#34342C",isActive:1===e.isActive,assetId:e.id};"catering_slider"===e.targetSystem?Yi(t):"kita_krippe_slider"===e.targetSystem?il(t):"schule_slider"===e.targetSystem?nl(t):dl(t)}vl(!0),jl(!1)}},[T,bl]),$.useEffect(()=>{document.title=s?"Neue Aktion - AdBox":"Aktion bearbeiten - AdBox"},[s]),$.useEffect(()=>{if(!fl)return;const e=e=>{e.preventDefault()};return window.addEventListener("beforeunload",e),()=>window.removeEventListener("beforeunload",e)},[fl]);const Il=async(e,t,i)=>{const l="schule"===e?mi:hi,s=at(l.displayVariant,t),a=Jt(s)?await Zt(i,qt):await Qt(i,s.width,s.height);if(a.valid){vi({group:e,variant:t});try{const a=await Yt(i),r=await M.mutateAsync({campaignId:n||0,targetSystem:"order_app",customerGroup:e,variant:t,displayVariant:l.displayVariant,fileData:a,filename:i.name,contentType:i.type}),o="desktop"===t?"imageDesktopUrl":"tablet"===t?"imageTabletUrl":"imageMobileUrl";("schule"===e?gi:pi)(e=>({...e,[o]:r.url})),Ml(),pe.success(`${s.label}-Bild hochgeladen`)}catch{}finally{vi(null)}}else pe.error(Jt(s)?`Bild muss quadratisch und mindestens 1000 x 1000 px groß sein. Hochgeladen: ${a.actualWidth} x ${a.actualHeight} px`:`Bild muss exakt ${s.width} x ${s.height} px groß sein. Hochgeladen: ${a.actualWidth} x ${a.actualHeight} px`)},Hl=async(e,t,i)=>{const l=dt[t],s=await Qt(i,l.width,l.height);if(!s.valid)return void pe.error(`Bild muss exakt ${l.width.toLocaleStr
1ing("de-DE")} x ${l.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${s.actualWidth.toLocaleString("de-DE")} x ${s.actualHeight.toLocaleString("de-DE")} px`);const{uploadVariant:a,imageField:r,stateKey:o}=mt[t],c="schule"===e?fi:Fi;Ci({group:e,spVariant:t});try{const t=await Yt(i),s=await M.mutateAsync({campaignId:n||0,targetSystem:"syncplay",customerGroup:e,variant:a,fileData:t,filename:i.name,contentType:i.type});c.assetId&&await P.mutateAsync({id:c.assetId,[r]:s.url});("schule"===e?ji:Si)(e=>({...e,[o]:s.url})),c.assetId?pe.success(`${l.label}-Bild hochgeladen und gespeichert`):(Ml(),pe.success(`${l.label}-Bild hochgeladen (noch nicht gespeichert)`))}catch{}finally{Ci(null)}},_l=async(e,t,i)=>{const l="schule"===e?wi:"menuservice"===e?zi:Ai,s=ut(l.displayVariant,t),a=Jt(s)?await Zt(i,qt):await Qt(i,s.width,s.height);if(a.valid){Pi({group:e,variant:t});try{const a=await Yt(i),r=await M.mutateAsync({campaignId:n||0,targetSystem:"login_page",customerGroup:e,variant:t,displayVariant:l.displayVariant,fileData:a,filename:i.name,contentType:i.type}),o="desktop"===t?"imageDesktopUrl":"tablet"===t?"imageTabletUrl":"imageMobileUrl";("schule"===e?Ti:"menuservice"===e?Ui:Di)(e=>({...e,[o]:r.url})),Ml(),pe.success(`${s.label}-Bild hochgeladen`)}catch{}finally{Pi(null)}}else pe.error(Jt(s)?`Bild muss quadratisch und mindestens 1000 x 1000 px groß sein. Hochgeladen: ${a.actualWidth.toLocaleString("de-DE")} x ${a.actualHeight.toLocaleString("de-DE")} px`:`Bild muss exakt ${s.width.toLocaleString("de-DE")} x ${s.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${a.actualWidth.toLocaleString("de-DE")} x ${a.actualHeight.toLocaleString("de-DE")} px`)},Vl=(e,t)=>{const i="desktop"===t?"imageDesktopUrl":"tablet"===t?"imageTabletUrl":"imageMobileUrl";("schule"===e?gi:pi)(e=>({...e,[i]:""})),Ml(),pe.success(`${st[t].label}-Bild entfernt`)},El=(e,t)=>{const i="schule"===e?ji:Si,{stateKey:l}=mt[t];i(e=>({...e,[l]:""})),Ml(),pe.success(`${dt[t].label}-Bild entfernt`)},Gl=null!==n&&Number.isInteger(n)&&n>0,Rl=(e,t)=>{const i=Gl?function(e,t,i,l){const s=tt(e);return s?!Number.isInteger(t)||t<=0?null:`${s}/${i}-${et[l]}?campaign=${t}`:null}(Q.SYNCPLAY_PREVIEW_BASE_URL,n,e,t):null;Ni(!1),i?window.open(i,"_blank","noopener,noreferrer"):pe.error("SyncPlay-Vorschau konnte nicht geöffnet werden. Aktion speichern und Konfiguration prüfen.")},Wl=(e,t)=>{const i="schule"===e?wi:"menuservice"===e?zi:Ai,l="desktop"===t?"imageDesktopUrl":"tablet"===t?"imageTabletUrl":"imageMobileUrl";("schule"===e?Ti:"menuservice"===e?Ui:Di)(e=>({...e,[l]:""})),Ml(),pe.success(`${ut(i.displayVariant,t).label}-Bild entfernt`)},Kl=()=>{Ul(null),Dl(null)},Ol=(e,t)=>{if(!(e.imageDesktopUrl||e.imageTabletUrl||e.imageMobileUrl))return null;return e.imageDesktopUrl&&e.imageTabletUrl&&e.imageMobileUrl?null:`${t}: Wenn ein Bild hochgeladen wird, müssen alle 3 Größen (Desktop, Tablet, Mobile) gepflegt werden.`},ql=(e,t,i)=>{if(!i)return null;return e.imageDesktopUrl||e.title.trim()||e.subtitle.trim()||e.buttonText.trim()||e.linkUrl.trim()?e.imageDesktopUrl?null:`${t}: Hintergrundbild ist erforderlich.`:null},Ql=e=>{const t=(t,i)=>e?i||t:t.trim().length>0?t:i,i=t=>Ct?e?Ct:t.length>0?t:Ct:t,l=(s=xi)&&s.startsWith("/")?`https://gourmetta.de${s}`:s;var s;const a=e=>({...e,imageDesktopUrl:"variant_1"===e.displayVariant?i(e.imageDesktopUrl):e.imageDesktopUrl,imageTabletUrl:"variant_1"===e.displayVariant?i(e.imageTabletUrl):e.imageTabletUrl,imageMobileUrl:"variant_1"===e.displayVariant?i(e.imageMobileUrl):e.imageMobileUrl,title:t(e.title,Rt),subtitle:t(e.subtitle,ei),linkUrl:t(e.linkUrl,l)}),n=l=>({...l,imageDesktopUrl:"variant_1"===l.displayVariant?i(l.imageDesktopUrl):l.imageDesktopUrl,imageTabletUrl:"variant_1"===l.displayVariant?i(l.imageTabletUrl):l.imageTabletUrl,imageMobileUrl:"variant_1"===l.displayVariant?i(l.imageMobileUrl):l.imageMobileUrl,title:t(l.title,Rt),subtitle:t(l.subtitle,ei),linkUrl:t(l.linkUrl,xi),buttonText:t(l.buttonText,li),buttonBgColor:e&&ni||l.buttonBgColor,buttonTextColor:e&&oi||l.buttonTextColor}),r=e=>({...e,title:t(e.title,Rt),subtitle:t(e.subtitle,ei)}),o=l=>({...l,imageDesktopUrl:i(l.imageDesktopUrl),title:t(l.title,Rt),subtitle:t(l.subtitle,ei),buttonText:t(l.buttonText,li),linkUrl:t(l.linkUrl,xi),buttonBgColor:e&&ni||l.buttonBgColor,buttonTextColor:e&&oi||l.buttonTextColor});
1gi(a),pi(a),ji(r),Si(r),Ti(n),Ui(n),Di(n),Li(o),_i(o),Ri(o),Yi(o),il(o),nl(o),dl(o),qi(l=>({...l,imageDesktopUrl:i(l.imageDesktopUrl),title:t(l.title,Rt),description:t(l.description,ei),buttonText:t(l.buttonText,li),linkUrl:t(l.linkUrl,xi),buttonBgColor:e&&ni||l.buttonBgColor,buttonTextColor:e&&oi||l.buttonTextColor})),Ml(),pe.success(e?"Standardwerte in alle Module übernommen":"Leere Felder mit Standardwerten gefüllt")},Zl=ye&&ke&&ke<=ye?"Gültigkeit bis muss nach Gültigkeit von liegen":null,Jl=we&&ze&&ze<=we?"Anzeigezeitraum bis muss nach Anzeigezeitraum von liegen":null,Yl=async(e=!1)=>{if(!je.trim())return void pe.error("Titel ist erforderlich");if(Zl)return void pe.error(Zl);if(Jl)return void pe.error(Jl);const t=Ol(mi,"Schule"),l=Ol(hi,"Menüservice");if(t)return void pe.error(t);if(l)return void pe.error(l);const a=ql(Mi,"Slider auf Startseite",He);if(a)return void pe.error(a);const r=ql(Hi,"Slider auf Menuservice-Startseite",Ve);if(r)return void pe.error(r);const o=ql(Gi,"Slider auf Speiseplanseite",Re);if(o)return void pe.error(o);const c=[[Ji,"Slider auf Catering-Seite",Ze],[tl,"Slider auf Krippe & Kita-Seite",lt],[al,"Slider auf Schule-Seite",gt],[cl,"Slider auf Betriebsrestaurant-Seite",ft]];for(const[i,s,n]of c){const e=ql(i,s,n);if(e)return void pe.error(e)}const d=(x=Oi,Ke&&x.isActive?x.imageDesktopUrl?x.buttonText.trim().length>0!=x.linkUrl.trim().length>0?"Aktions-Side-by-Side: CTA benötigt immer Text und Linkziel.":null:"Aktions-Side-by-Side: Bild ist erforderlich.":null);var x;if(d)pe.error(d);else if(!Ai.isActive||Je(Ai)){gl(!0),e&&pl(!0);try{let t=n;if(s){const e=await A.mutateAsync({title:je,validFrom:ye||null,validUntil:ke||null,displayFrom:we||null,displayUntil:ze||null,isActive:Ae,isActiveOrderApp:Be,isActiveSyncplay:Me,isActiveLoginPage:$e,isActiveHomepageSlider:He,isActiveMenuserviceHomepageSlider:Ve,isActiveSpeiseplanSlider:Re,isActiveActionSideBySide:Ke,isActiveCateringSlider:Ze,isActiveKitaKrippeSlider:lt,isActiveSchuleSlider:gt,isActiveBetriebsrestaurantSlider:ft,isLongTerm:Ft,defaultImageUrl:Ct||null,defaultTitle:Rt||null,defaultSubtitle:ei||null,defaultButtonText:li||null,defaultButtonBgColor:ni||null,defaultButtonTextColor:oi||null,defaultLinkUrl:xi||null});t=e.id}else await D.mutateAsync({id:t,title:je,validFrom:ye||null,validUntil:ke||null,displayFrom:we||null,displayUntil:ze||null,isActive:Ae,isActiveOrderApp:Be,isActiveSyncplay:Me,isActiveLoginPage:$e,isActiveHomepageSlider:He,isActiveMenuserviceHomepageSlider:Ve,isActiveSpeiseplanSlider:Re,isActiveActionSideBySide:Ke,isActiveCateringSlider:Ze,isActiveKitaKrippeSlider:lt,isActiveSchuleSlider:gt,isActiveBetriebsrestaurantSlider:ft,isLongTerm:Ft,defaultImageUrl:Ct||null,defaultTitle:Rt||null,defaultSubtitle:ei||null,defaultButtonText:li||null,defaultButtonBgColor:ni||null,defaultButtonTextColor:oi||null,defaultLinkUrl:xi||null});const l=async(e,i)=>{if(!(i.imageDesktopUrl||i.imageTabletUrl||i.imageMobileUrl||i.title)&&!i.assetId)return;const l={imageDesktopUrl:i.imageDesktopUrl||null,imageTabletUrl:i.imageTabletUrl||null,imageMobileUrl:i.imageMobileUrl||null,displayVariant:i.displayVariant,textColor:(s=i.textColorDesktop,a=i.textColorTablet,n=i.textColorMobile,{desktop:s,tablet:a,mobile:n}),bgColor:i.bgColor||null,title:i.title||null,subtitle:i.subtitle||null,tagline:i.tagline||null,titleFontSize:Ut(i.titleFontSizeDesktop,i.titleFontSizeTablet,i.titleFontSizeMobile),subtitleFontSize:Ut(i.subtitleFontSizeDesktop,i.subtitleFontSizeTablet,i.subtitleFontSizeMobile),taglineFontSize:i.taglineFontSize,titleFont:i.titleFont||null,subtitleFont:i.subtitleFont||null,taglineFont:i.taglineFont||null,linkUrl:i.linkUrl||null,isActive:i.isActive,textPosition:Nt(i.textPositionDesktop,i.textPositionTablet,i.textPositionMobile),textAlignment:Tt(i.textAlignmentDesktop,i.textAlignmentTablet,i.textAlignmentMobile)};var s,a,n;if(i.assetId)await P.mutateAsync({id:i.assetId,...l});else{const i=await B.mutateAsync({campaignId:t,targetSystem:"order_app",customerGroup:e,...l});("schule"===e?gi:pi)(e=>({...e,assetId:i.id}))}};await l("schule",mi),await l("menuservice",hi);const a=async(e,i)=>{if(!(i.imageSplitUrl||i.imageLandscapeUrl||i.imagePortraitUrl||i.imageSplitPortraitUrl||i.title||i.assetId))return;const l={imageDesktopUrl:i.imageSplitUrl||null,imageTabletUrl:i.imageLandscapeUrl||null,imageMobileUrl:i.imagePortraitUrl||null,imageSplitPortraitUrl:i.imageSplitPortraitUrl||null,textColor:(s=i.textColorSplit,a=i.textColorLandscape,n=i.textColorPortrait,r=i.textColorSplitPortrait,{desktop:s,tablet:a,mobile:n,splitPortrait:r}),title:i.title||null,subtitle:i.subtitle||null,tagline:i.tagline||null,titleFontSize:Mt(i.titleFontSizeSplit,i.titleFontSizeLandscape,i.titleFontSizePortrait,i.titleFontSizeSplitPortrait),subtitleFontSize:Mt(i.subtitleFontSizeSplit,i.subtitleFontSizeLandscape,i.subtitleFontSizePortrait,i.subtitleFontSizeSplitPortrait),taglineFontSize:i.taglineFontSize,titleFont:i.titleFont||null,subtitleFont:i.subtitleFont||null,taglineFont:i.taglineFont||null,linkUrl:null,isActive:i.isActive,textPosition:Bt(i.textPositionSplit,i.textPositionLandscape,i.textPositionPortrait,i.textPositionSplitPortrait)};var s,a,n,r;if(i.assetId)await P.mutateAsync({id:i.assetId,...l});else{const i=await B.mutateAsync({campaignId:t,targetSystem:"syncplay",customerGroup:e,...l});("schule"===e?ji:Si)(e=>({...e,assetId:i.id}))}};await a("schule",fi),await a("menuservice",Fi);const r=async(e,i)=>{if(!(i.imageDesktopUrl||i.imageTabletUrl||i.imageMobileUrl||i.assetId))return;const l={imageDesktopUrl:i.imageDesktopUrl||null,imageTabletUrl:i.imageTabletUrl||null,imageMobileUrl:i.imageMobileUrl||null,linkUrl:i.linkUrl||null,displayVariant:i.displayVariant,labelText:"individual_action"===e&&i.labelText.trim()||null,textColor:(s=i.textColorDesktop,a=i.textColorTablet,n=i.textColorMobile,{desktop:s,tablet:a,mobile:n}),bgColor:Qe(i.displayVariant)&&i.bgColor||null,title:i.title||null,subtitle:i.subtitle||null,subtitleAboveTitle:i.subtitleAboveTitle,tagline:i.tagline||null,titleFontSize:Et(i.titleFontSizeDesktop,i.titleFontSizeTablet,i.titleFontSizeMobile),subtitleFontSize:Et(i.subtitleFontSizeDesktop,i.subtitleFontSizeTablet,i.subtitleFontSizeMobile),taglineFontSize:Et(i.taglineFontSizeDesktop,i.taglineFontSizeTablet,i.taglineFontSizeMobile),titleFont:i.titleFont||null,subtitleFont:i.subtitleFont||null,taglineFont:i.taglineFont||null,textPosition:Vt(i.textPositionDesktop,i.textPositionTablet,i.textPositionMobile),textAlignment:Kt(i.textAlignmentDesktop,i.textAlignmentTablet,i.textAlignmentMobile),buttonText:i.buttonText||null,buttonBgColor:i.buttonBgColor||null,buttonTextColor:i.buttonTextColor||null,imageFirst:i.imageFirstDesktop,imageFirstTablet:i.imageFirstTablet,imageFirstMobile:i.imageFirstMobile,isActive:i.isActive};var s,a,n;if(i.assetId)await P.mutateAsync({id:i.assetId,...l});else{const i=await B.mutateAsync({campaignId:t,targetSystem:"login_page",customerGroup:e,...l});("schule"===e?Ti:"menuservice"===e?Ui:Di)(e=>({...e,assetId:i.id}))}};await r("schule",wi),await r("menuservice",zi),await r("individual_action",Ai);const o=async(e,i,l)=>{if(!e.imageDesktopUrl&&!e.assetId)return;const s={imageDesktopUrl:e.imageDesktopUrl||null,title:e.title||null,subtitle:e.subtitle||null,buttonText:e.buttonText||null,linkUrl:e.linkUrl||null,textColor:e.textColor||null,buttonBgColor:e.buttonBgColor||null,buttonTextColor:e.buttonTextColor||null,isActive:e.isActive,sortOrder:0};if(e.assetId)await P.mutateAsync({id:e.assetId,...s});else{const e=await B.mutateAsync({campaignId:t,targetSystem:i,customerGroup:"menuservice",...s});l(t=>({...t,assetId:e.id}))}};await o(Mi,"homepage_slider",Li),await o(Hi,"menuservice_homepage_slider",_i),await o(Gi,"speiseplan_slider",Ri),await o(Ji,"catering_slider",Yi),await o(tl,"kita_krippe_slider",il),await o(al,"schule_slider",nl),await o(cl,"betriebsrestaurant_slider",dl);const c=async e=>{if(!e.imageDesktopUrl&&!e.assetId)return;const i={imageDesktopUrl:e.imageDesktopUrl||null,title:e.title||null,subtitle:e.description||null,buttonText:e.buttonText||null,linkUrl:e.linkUrl||null,imageFirst:e.imageFirst,bgColor:e.bgColor.trim()||null,textColor:e.textColor.trim()||null,buttonBgColor:e.buttonBgColor.trim()||null,buttonTextColor:e.buttonTextColor.trim()||null,isActive:e.isActive,sortOrder:0};if(e.assetId)await P.mutateAsync({id:e.assetId,...i});else{const e=await B.mutateAsync({campaignId:t,targetSystem:"action_side_by_side",customerGroup:"menuservice",...i});qi(t=>({...t,assetId:e.id}))}};await c(Oi),w.adbox.listCampaigns.invalidate(),t&&w.adbox.getCampaign.invalidate({id:t}),pe.success(s?"Aktion erstellt":"Aktion aktualisiert"),jl(!1),e?i("/admin/adbox"):s&&t&&i(`/admin/adbox/${t}`)}catch{}finally{gl(!1),pl(!1)}}else pe.error("Label-Text ist für 'individuelle Aktion' erforderlich.")};return!s&&z?e.jsx(he,{children:e.jsx("div",{className:"min-h-screen bg-gradient-to-br from-gray-50 to-gray-100 flex items-center justify-center",children:e.jsx(o,{className:"h-8 w-8 animate-spin text-gray-400"})})}):e.jsxs(he,{children:[e.jsx(E,{title:s?"Neue Aktion":"Aktion bearbeiten",description:"AdBox Aktion pflegen"}),e.jsxs("div",{className:"min-h-screen bg-gradient-to-br from-gray-50 to-gray-100",children:[e.jsx("div",{className:"bg-white border-b sticky top-0 z-10",children:e.jsx("div",{className:"container mx-auto px-4 py-4",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs(_,{variant:"ghost",size:"sm",onClick:()=>{fl&&!window.confirm("Es gibt ungespeicherte Änderungen. Möchtest du die Seite wirklich verlassen?")||i("/admin/adbox")},children:[e.jsx(c,{className:"h-4 w-4 mr-2"}),"Zurück"]}),e.jsx("h1",{className:"text-xl font-bold text-[#34342C]",children:s?"Neue Aktion":"Aktion bearbeiten"})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(_,{onClick:()=>Yl(!1),disabled:ml||!fl,variant:fl?"default":"outline",className:fl?"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]":"",children:[ml&&!hl?e.jsx(o,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(d,{className:"h-4 w-4 mr-2"}),"Speichern"]}),e.jsxs(_,{onClick:()=>Yl(!0),disabled:ml,variant:fl?"default":"outline",className:fl?"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]":"",children:[hl?e.jsx(o,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(d,{className:"h-4 w-4 mr-2"}),"Speichern & Schließen"]})]})]})})}),e.jsxs("div",{className:"container mx-auto px-4 py-8 space-y-8",children:[e.jsxs(G,{children:[e.jsxs(R,{children:[e.jsx(W,{children:"Aktionsdaten"}),e.jsx(K,{children:"Grundlegende Informationen und Zeiträume"})]}),e.jsxs(O,{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:je,onChange:e=>{Fe(e.target.value),Ml()},placeholder:"z.B. Griechische Woche",className:"mt-1"})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Gültigkeit von"}),e.jsx(Z,{type:"datetime-local",value:ye,onChange:e=>{Ce(e.target.value),Ml()},autoComplete:"off",className:"mt-1 "+(N&&""===ye?"safari-datetime-empty":"")})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Gültigkeit bis"}),e.jsx(Z,{type:"datetime-local",value:ke,onChange:e=>{Ne(e.target.value),Ml()},autoComplete:"off",className:`mt-1 ${Zl?"border-red-500":""} ${N&&""===ke?"safari-datetime-empty":""}`}),Zl&&e.jsx("p",{className:"text-xs text-red-600 mt-1",children:Zl})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Anzeigezeitraum von"}),e.jsx(Z,{type:"datetime-local",value:we,onChange:e=>{Te(e.target.value),Ml()},autoComplete:"off",className:"mt-1 "+(N&&""===we?"safari-datetime-empty":"")})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Anzeigezeitraum bis"}),e.jsx(Z,{type:"datetime-local",value:ze,onChange:e=>{Ue(e.target.value),Ml()},autoComplete:"off",className:`mt-1 ${Jl?"border-red-500":""} ${N&&""===ze?"safari-datetime-empty":""}`}),Jl&&e.jsx("p",{className:"text-xs text-red-600 mt-1",children:Jl})]})]}),e.jsxs("div",{className:"flex items-center gap-3 pt-2",children:[e.jsx(ee,{checked:Ae,onCheckedChange:e=>{De(e),Ml()}}),e.jsx(J,{children:"Aktiv"})]}),e.jsxs("div",{className:"flex items-start gap-3 pt-2",children:[e.jsx(ee,{checked:Ft,onCheckedChange:e=>{St(e),Ml()}}),e.jsxs("div",{children:[e.jsx(J,{children:"Langzeitaktion"}),e.jsx("p",{className:"text-xs text-gray-500 mt-0.5",children:"In den Slidern werden Kurzzeitaktionen zuerst ausgespielt, Langzeitaktionen rutsc
1hen nach hinten."})]})]})]})]}),e.jsxs(G,{children:[e.jsxs(R,{children:[e.jsx(W,{children:"Standardwerte"}),e.jsx(K,{children:"Quadratbild und Texte als Standard für alle Module. Bei Bedarf mit den Buttons unten auf alle Module übertragen."})]}),e.jsxs(O,{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsxs(J,{children:["Standard-Bild (quadratisch, mind. ",qt,"x",qt,"px)"]}),e.jsxs("div",{className:"mt-1 flex flex-wrap items-start gap-3",children:[Ct?e.jsx("img",{src:Ct,alt:"Standard-Bild",className:"w-24 h-24 object-cover rounded border",loading:"lazy"}):e.jsx("div",{className:"w-24 h-24 rounded border bg-gray-100 flex items-center justify-center",children:e.jsx(a,{className:"h-8 w-8 text-gray-400"})}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Ee,{onSelect:e=>{kt(e),Ml()},minSquareSize:qt}),Ct?e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{kt(""),Ml()},className:"text-red-600 border-red-200 hover:text-red-700 hover:bg-red-50",children:[e.jsx(r,{className:"h-3 w-3 mr-1"}),"Bild entfernen"]}):null]})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:Rt,onChange:e=>{Xt(e.target.value),Ml()},className:"mt-1"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Untertitel"}),e.jsx(Z,{value:ei,onChange:e=>{ti(e.target.value),Ml()},className:"mt-1"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Link-URL"}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsx(Z,{value:xi,onChange:e=>{ui(e.target.value),Ml()},placeholder:"/menuservice/..."}),e.jsx(ht,{onSelect:e=>{ui(e),Ml()}})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Text"}),e.jsx(Z,{value:li,onChange:e=>{si(e.target.value),Ml()},className:"mt-1"})]}),e.jsxs("div",{className:"flex items-end gap-3",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-xs",children:"Button-Farbe"}),e.jsx("input",{type:"color",value:ni,onChange:e=>{ri(e.target.value),Ml()},className:"mt-1 h-9 w-14 rounded border cursor-pointer"})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-xs",children:"Button-Textfarbe"}),e.jsx("input",{type:"color",value:oi,onChange:e=>{di(e.target.value),Ml()},className:"mt-1 h-9 w-14 rounded border cursor-pointer"})]})]})]}),e.jsxs("div",{className:"flex flex-wrap gap-2 pt-2 border-t",children:[e.jsx(_,{type:"button",variant:"outline",onClick:()=>Ql(!1),children:"Nur leere Felder füllen"}),e.jsx(_,{type:"button",variant:"default",className:"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]",onClick:()=>Ql(!0),children:"Override all"})]})]})]}),e.jsxs(G,{children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(l,{className:"h-5 w-5"}),"Zugeordnete Gerichte"]}),e.jsx(K,{children:"Bestehende Gerichte hinzufügen oder neue Gerichte direkt in dieser Aktion anlegen"})]}),e.jsx(O,{className:"space-y-6",children:null===n?e.jsx("div",{className:"rounded-md border bg-gray-50 p-4 text-sm text-gray-600",children:"Speichere die Aktion zuerst, um Gerichte zuordnen zu können."}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"rounded-lg border border-gray-200 bg-white p-4 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(l,{className:"h-4 w-4 text-gray-600"}),e.jsx(J,{className:"text-base font-bold text-[#34342C]",children:"Zugeordnete Gerichte"}),Ll.length>0&&e.jsx(X,{variant:"secondary",className:"ml-1",children:Ll.length})]}),0===Ll.length?e.jsx("p",{className:"text-sm text-gray-500",children:"Noch keine Gerichte zugeordnet."}):e.jsx("div",{className:"space-y-2",children:Ll.map(t=>e.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md border bg-white p-3",children:[e.jsxs("div",{className:"min-w-0 flex items-center gap-3",children:[t.image?e.jsx("img",{src:t.image,alt:t.name,className:"w-12 h-12 object-cover rounded flex-shrink-0",loading:"lazy",onError:e=>{e.target.src="/placeholder-meal.png"}}):e.jsx("div",{className:"w-12 h-12 bg-gray-100 rounded flex items-center justify-center flex-shrink-0",children:e.jsx(a,{className:"h-5 w-5 text-gray-400"})}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"font-medium text-[#34342C] truncate",children:t.name}),(()=>{const i=bt(t);return e.jsxs("p",{className:"text-xs "+(i?"text-gray-500":"text-gray-400 italic"),children:["Kategorien:"," ",i??"keine Kategorie zugeordnet"]})})()]})]}),e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>(async e=>
1{n&&(await be.mutateAsync({campaignId:n,mealId:e}),await Promise.all([w.adbox.getCampaign.invalidate({id:n}),w.meals.adminGetAll.invalidate()]),pe.success("Gericht aus Aktion entfernt"))})(t.id),disabled:be.isPending,children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]},t.id))})]}),e.jsxs("div",{className:"relative flex items-center py-1",children:[e.jsx("div",{className:"flex-grow border-t border-gray-200"}),e.jsx("span",{className:"mx-4 text-xs uppercase tracking-wider text-gray-400",children:"Gericht zuordnen"}),e.jsx("div",{className:"flex-grow border-t border-gray-200"})]}),e.jsxs("div",{className:"rounded-lg border border-gray-200 bg-gray-50 p-4 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(x,{className:"h-4 w-4 text-gray-600"}),e.jsx(J,{className:"text-base font-bold text-[#34342C]",children:"Bestehendes Gericht hinzufügen"})]}),e.jsx("p",{className:"text-xs text-gray-500",children:"Wähle ein bereits vorhandenes Gericht aus und ordne es dieser Aktion zu."}),e.jsxs("div",{className:"flex flex-col md:flex-row gap-3",children:[e.jsxs(ne,{open:yl,onOpenChange:Cl,children:[e.jsx(re,{asChild:!0,children:e.jsxs(_,{type:"button",variant:"outline",role:"combobox","aria-expanded":yl,className:"md:flex-1 justify-between bg-white font-normal",children:[(()=>{const t=$l.find(e=>String(e.id)===Fl);return t?e.jsxs("span",{className:"truncate",children:[t.name," · Kategorien:"," ",bt(t)??"keine Kategorie zugeordnet"]}):e.jsx("span",{className:"text-muted-foreground",children:"Gericht auswählen"})})(),e.jsx(u,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(oe,{className:"p-0",align:"start",style:{width:"var(--radix-popover-trigger-width)"},children:e.jsxs(ce,{filter:(e,t)=>{const i=e.toLowerCase(),l=t.trim().toLowerCase();return l?i.includes(l)?1:0:1},children:[e.jsx(de,{placeholder:"Gericht suchen…"}),e.jsxs(xe,{children:[e.jsx(ue,{children:"Kein Gericht gefunden."}),e.jsx(me,{children:$l.map(t=>{const i=t.campaigns??[],l=i.length>0?i.map(e=>e.title).join(", "):"keiner Aktion zugeordnet",s=bt(t),a=[t.name,s??"",...i.map(e=>e.title)].join(" "),n=String(t.id)===Fl;return e.jsxs(ge,{value:a,onSelect:()=>{Sl(String(t.id)),Cl(!1)},className:"items-start",children:[e.jsx(m,{className:"mr-2 mt-0.5 h-4 w-4 shrink-0 "+(n?"opacity-100":"opacity-0")}),e.jsxs("div",{className:"flex flex-col min-w-0",children:[e.jsx("span",{className:"truncate",children:t.name}),e.jsxs("span",{className:"text-xs truncate "+(s?"text-muted-foreground":"text-muted-foreground/70 italic"),children:["Kategorien:"," ",s??"keine Kategorie zugeordnet"]}),e.jsxs("span",{className:"text-xs truncate "+(i.length>0?"text-muted-foreground":"text-muted-foreground/70 italic"),children:["Aktion: ",l]})]})]},t.id)})})]})]})})]}),e.jsx(_,{onClick:async()=>{if(!n)return;const e=Number(Fl);e?(await L.mutateAsync({campaignId:n,mealId:e}),Sl(""),await Promise.all([w.adbox.getCampaign.invalidate({id:n}),w.meals.adminGetAll.invalidate()]),pe.success("Gericht zur Aktion hinzugefügt")):pe.error("Bitte ein Gericht auswählen")},disabled:!Fl||L.isPending,className:"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]",children:"Hinzufügen"})]})]}),e.jsxs("button",{type:"button",onClick:()=>Nl(e=>!e),className:"w-full flex items-center gap-3 py-1 text-left",children:[e.jsx("div",{className:"flex-grow border-t border-gray-200"}),e.jsx("span",{className:"text-xs uppercase tracking-wider text-gray-500",children:"Neues Gericht anlegen"}),e.jsx(g,{className:"h-4 w-4 text-gray-500 transition-transform "+(kl?"rotate-180":"")}),e.jsx("div",{className:"flex-grow border-t border-gray-200"})]}),kl&&e.jsxs("div",{className:"rounded-lg border border-[#FFC800]/40 bg-[#FFFBEB] p-4 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(h,{className:"h-4 w-4 text-[#34342C]"}),e.jsx(J,{className:"text-base font-bold text-[#34342C]",children:"Neues Gericht in Aktion anlegen"})]}),e.jsx("p",{className:"text-xs text-gray-500",children:"Erstelle ein neues Gericht direkt im Kontext dieser Aktion."}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 [&_input]:bg-white",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{children:"Name *"}),e.jsx(Z,{value:wl.name,onChange:e=>Tl(t=>({...t,name:e.target.value})),placeholder:"z.B. Mediterrane Bowl"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{children:"Zuordnung auf der Website"}),e.jsx("p",{className:"text-xs text-gray-500",children:"Optional. Ohne Auswahl erscheint das Gericht nur über diese Aktion."}),e.jsxs("div",{className:"grid gap-2",children:[e.jsxs("label",{className:"flex items-center gap-2 text-sm cursor-pointer",children:[e.jsx(te,{className:"bg-white",checked:wl.isFitMe,onCheckedChange:e=>Tl(t=>({...t,isFitMe:!0===e}))}),e.jsx("span",{children:"FitMe-Gericht"})]}),e.jsxs("label",{className:"flex items-center gap-2 text-sm cursor-pointer",children:[e.jsx(te,{className:"bg-white",checked:wl.isSalate,onCheckedChange:e=>Tl(t=>({...t,isSalate:!0===e}))}),e.jsx("span",{children:"Salat"})]})]})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{children:"Beschreibung"}),e.jsx(Z,{value:wl.description,onChange:e=>Tl(t=>({...t,description:e.target.value})),placeholder:"Kurzbeschreibung"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{children:"Preis"}),e.jsx(Z,{value:wl.price,onChange:e=>Tl(t=>({...t,price:e.target.value})),placeholder:"z.B. 9,90 €"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(J,{children:"Portionsgröße"}),e.jsx(Z,{value:wl.portionSize,onChange:e=>Tl(t=>({...t,portionSize:e.target.value})),placeholder:"z.B. 550 g"})]}),e.jsxs("div",{className:"space-y-2 md:col-span-2",children:[e.jsx(J,{children:"Nährwerte pro Portion"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[e.jsx(Z,{value:wl.nutritionCalories,onChange:e=>Tl(t=>({...t,nutritionCalories:e.target.value})),placeholder:"Brennwert (z. B. 2139kJ/511 kcal)"}),e.jsx(Z,{value:wl.nutritionProtein,onChange:e=>Tl(t=>({...t,nutritionProtein:e.target.value})),placeholder:"Eiweiß (z. B. 36,2 g)"}),e.jsx(Z,{value:wl.nutritionFat,onChange:e=>Tl(t=>({...t,nutritionFat:e.target.value})),placeholder:"Fett (z. B. 17,2 g)"}),e.jsx(Z,{value:wl.nutritionSaturatedFat,onChange:e=>Tl(t=>({...t,nutritionSaturatedFat:e.target.value})),placeholder:"davon gesättigte Fettsäuren (z. B. 3,8 g)"}),e.jsx(Z,{value:wl.nutritionCarbs,onChange:e=>Tl(t=>({...t,nutritionCarbs:e.target.value})),placeholder:"Kohlenhydrate (z. B. 46,7 g)"}),e.jsx(Z,{value:wl.nutritionSugar,onChange:e=>Tl(t=>({...t,nutritionSugar:e.target.value})),placeholder:"davon Zucker (z. B. 13,7 g)"}),e.jsx(Z,{value:wl.nutritionFiber,onChange:e=>Tl(t=>({...t,nutritionFiber:e.target.value})),placeholder:"Ballaststoffe (z. B. 5,0 g)"}),e.jsx(Z,{value:wl.nutritionSalt,onChange:e=>Tl(t=>({...t,nutritionSalt:e.target.value})),placeholder:"Salz (z. B. 1,1 g)"})]})]}),e.jsxs("div",{className:"space-y-2 md:col-span-2",children:[e.jsx(J,{children:"Nährwerte pro 100 g"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[e.jsx(Z,{value:wl.nutritionPer100gCalories,onChange:e=>Tl(t=>({...t,nutritionPer100gCalories:e.target.value})),placeholder:"Brennwert (z. B. 369kJ/88 kcal)"}),e.jsx(Z,{value:wl.nutritionPer100gProtein,onChange:e=>Tl(t=>({...t,nutritionPer100gProtein:e.target.value})),placeholder:"Eiweiß (z. B. 6,2 g)"}),e.jsx(Z,{value:wl.nutritionPer100gFat,onChange:e=>Tl(t=>({...t,nutritionPer100gFat:e.target.value})),placeholder:"Fett (z. B. 3,0 g)"}),e.jsx(Z,{value:wl.nutritionPer100gSaturatedFat,onChange:e=>Tl(t=>({...t,nutritionPer100gSaturatedFat:e.target.value})),placeholder:"davon gesättigte Fettsäuren (z. B. 0,7 g)"}),e.jsx(Z,{value:wl.nutritionPer100gCarbs,onChange:e=>Tl(t=>({...t,nutritionPer100gCarbs:e.target.value})),placeholder:"Kohlenhydrate (z. B. 8,1 g)"}),e.jsx(Z,{value:wl.nutritionPer100gSugar,onChange:e=>Tl(t=>({...t,nutritionPer100gSugar:e.target.value})),placeholder:"davon Zucker (z. B. 2,4 g)"}),e.jsx(Z,{value:wl.nutritionPer100gFiber,onChange:e=>Tl(t=>({...t,nutritionPer100gFiber:e.target.value})),placeholder:"Ballaststoffe (z. B. 0,9 g)"}),e.jsx(Z,{value:wl.nutritionPer100gSalt,onChange:e=>Tl(t=>({...t,nutritionPer100gSalt:e.target.value})),placeholder:"Salz (z. B. 0,2 g)"})]})]}),e.jsxs("div",{className:"space-y-1 md:col-span-2",children:[e.jsx(J,{children:"Bild"}),e.jsx("div",{className:"rounded-md border bg-white p-3",children:e.jsx(Se,{imageUrl:Al,onFileSelected:async e=>{if(!e.type.startsWith("image/"))return void pe.error("Bitte nur Bilddateien hochladen");const t=await Zt(e,qt);if(!t.valid)return void pe.error(`Bild muss quadratisch und mindestens 1000 x 1000 px groß sein. Hochgeladen: ${t.actualWidth} x ${t.actualHeight} px`);Ul(e);const i=new FileReader;i.onload=()=>Dl(i.result),i.readAsDataURL(e)},onRemove:Kl,disabled:Bl,previewAlt:"Gericht-Vorschau",previewClassName:"w-16 h-16 object-cover rounded border",helperText:"Quadratisch, WebP oder PNG, mind. 1000x1000px"})})]})]}),e.jsx(_,{onClick:async()=>
1{if(!n)return;if(!wl.name.trim())return void pe.error("Bitte einen Namen für das Gericht eingeben");const e=(U??[]).reduce((e,t)=>t.sortOrder>e?t.sortOrder:e,-1);Pl(!0);try{const i=await ve.mutateAsync({name:wl.name.trim(),isFitMe:wl.isFitMe,isSalate:wl.isSalate,campaignIds:[n],description:wl.description.trim()||null,price:wl.price.trim()||null,portionSize:wl.portionSize.trim()||null,nutritionCalories:wl.nutritionCalories.trim()||null,nutritionProtein:wl.nutritionProtein.trim()||null,nutritionFat:wl.nutritionFat.trim()||null,nutritionSaturatedFat:wl.nutritionSaturatedFat.trim()||null,nutritionCarbs:wl.nutritionCarbs.trim()||null,nutritionSugar:wl.nutritionSugar.trim()||null,nutritionFiber:wl.nutritionFiber.trim()||null,nutritionSalt:wl.nutritionSalt.trim()||null,nutritionPer100g:pt(wl),sortOrder:e+1,isActive:!0});let l=!1;if(zl)try{await(async(e,t)=>{const i=await new Promise((e,i)=>{const l=new FileReader;l.onload=()=>{const t=l.result;if("string"!=typeof t)return void i(new Error("Datei konnte nicht gelesen werden"));const s=t.split(",")[1];s?e(s):i(new Error("Datei konnte nicht verarbeitet werden"))},l.onerror=()=>i(new Error("Datei konnte nicht gelesen werden")),l.readAsDataURL(t)});await fe.mutateAsync({mealId:e,fileData:i,filename:t.name,contentType:t.type})})(i.id,zl)}catch(t){l=!0,pe.error("Gericht erstellt, aber Bild-Upload fehlgeschlagen")}Tl({name:"",isFitMe:!1,isSalate:!1,description:"",price:"",portionSize:"",nutritionCalories:"",nutritionProtein:"",nutritionFat:"",nutritionSaturatedFat:"",nutritionCarbs:"",nutritionSugar:"",nutritionFiber:"",nutritionSalt:"",nutritionPer100gCalories:"",nutritionPer100gProtein:"",nutritionPer100gFat:"",nutritionPer100gSaturatedFat:"",nutritionPer100gCarbs:"",nutritionPer100gSugar:"",nutritionPer100gFiber:"",nutritionPer100gSalt:""}),Kl(),await Promise.all([w.adbox.getCampaign.invalidate({id:n}),w.meals.adminGetAll.invalidate()]),pe.success(l?"Gericht erstellt und Aktion zugeordnet (ohne Bild)":"Gericht erstellt und Aktion zugeordnet")}finally{Pl(!1)}},disabled:Bl,className:"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]",children:Bl?"Gericht wird erstellt...":"Gericht erstellen & zuordnen"})]})]})})]}),e.jsxs(G,{className:Be?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(p,{className:"h-5 w-5"}),"Order-App"]}),e.jsx(K,{children:"bestellung.gourmetta.de — 3 Bannergrößen pro Kundengruppe"}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-xs font-medium "+(Be?"text-green-600":"text-gray-400"),children:Be?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:Be,onCheckedChange:e=>{Pe(e),Ml()}})]})})]}),Be&&e.jsx(O,{children:e.jsxs(ie,{defaultValue:"menuservice",children:[e.jsx("div",{className:"flex items-center gap-4 mb-6",children:e.jsxs(le,{children:[e.jsx(se,{value:"menuservice",children:"Menüservice"}),e.jsx(se,{value:"schule",children:"Schule"})]})}),e.jsxs(ae,{value:"menuservice",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:hi.isActive,onCheckedChange:e=>{pi(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(hi.isActive?"text-green-600":"text-gray-400"),children:hi.isActive?"Menüservice aktiv":"Menüservice inaktiv"})]}),hi.isActive&&e.jsx("div",{children:e.jsx(ii,{campaignId:n,customerGroup:"menuservice",state:hi,onChange:e=>{pi(e),Ml()},onImageUpload:(e,t)=>Il("menuservice",e,t),uploadingVariant:"menuservice"===bi?.group?bi.variant:null,onSelectFromLibrary:(e,t)=>{const i="desktop"===e?"imageDesktopUrl":"tablet"===e?"imageTabletUrl":"imageMobileUrl";pi(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>Vl("menuservice",e)})})]}),e.jsxs(ae,{value:"schule",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:mi.isActive,onCheckedChange:e=>{gi(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(mi.isActive?"text-green-600":"text-gray-400"),children:mi.isActive?"Schule aktiv":"Schule inaktiv"})]}),mi.isActive&&e.jsx("div",{children:e.jsx(ii,{campaignId:n,customerGroup:"schule",state:mi,onChange:e=>{gi(e),Ml()},onImageUpload:(e,t)=>Il("schule",e,t),uploadingVariant:"schule"===bi?.group?bi.variant:null,onSelectFromLibrary:(e,t)=>{const i="desktop"===e?"imageDesktopUrl":"tablet"===e?"imageTabletUrl":"imageMobileUrl";gi(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>Vl("schule",e)})})]})]})})]}
1),e.jsxs(G,{className:Me?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(b,{className:"h-5 w-5"}),"SyncPlay"]}),e.jsx(K,{children:"Digital Signage — 3 Darstellungsvarianten: Split-Screen, Fullscreen Querformat, Fullscreen Hochformat"}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[Gl&&(Xl=Q.SYNCPLAY_PREVIEW_BASE_URL,null!==tt(Xl))&&e.jsxs(ne,{open:ki,onOpenChange:Ni,children:[e.jsx(re,{asChild:!0,children:e.jsxs(_,{type:"button",variant:"outline",size:"sm",children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Vorschau",e.jsx(g,{className:"ml-1 h-4 w-4"})]})}),e.jsxs(oe,{align:"end",className:"w-72 p-2",children:[e.jsx("p",{className:"px-2 pb-2 text-xs text-gray-500",children:"Öffnet die Aktion auf einem SyncPlay-Vorschau-Display — unabhängig von Anzeige- und Gültigkeitszeitraum."}),fl&&e.jsx("p",{className:"mb-2 rounded-sm bg-amber-50 px-2 py-1.5 text-xs text-amber-700",children:"Ungespeicherte Änderungen sind in der Vorschau nicht enthalten."}),e.jsx("div",{className:"flex flex-col gap-3",children:Ye.map(t=>{return e.jsxs("div",{children:[e.jsxs("div",{className:"px-2 pb-1 text-xs font-medium text-gray-500",children:[t.label,(i=t.group,!("schule"===i?fi.isActive:Fi.isActive)&&e.jsx("span",{className:"ml-1 text-gray-400",children:"(inaktiv)"}))]}),Xe.map(i=>e.jsxs("button",{type:"button",onClick:()=>Rl(t.group,i),className:"flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-sm hover:bg-accent",children:[e.jsx(v,{className:"h-3.5 w-3.5 text-gray-400"}),dt[i].label]},i))]},t.group);var i})})]})]}),e.jsx("span",{className:"text-xs font-medium "+(Me?"text-green-600":"text-gray-400"),children:Me?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:Me,onCheckedChange:e=>{Le(e),Ml()}})]})})]}),Me&&e.jsx(O,{children:e.jsxs(ie,{defaultValue:"menuservice",children:[e.jsx("div",{className:"flex items-center gap-4 mb-6",children:e.jsxs(le,{children:[e.jsx(se,{value:"menuservice",children:"Kantine"}),e.jsx(se,{value:"schule",children:"Schule"})]})}),e.jsxs(ae,{value:"menuservice",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:Fi.isActive,onCheckedChange:e=>{Si(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(Fi.isActive?"text-green-600":"text-gray-400"),children:Fi.isActive?"Kantine aktiv":"Kantine inaktiv"})]}),Fi.isActive&&e.jsx("div",{children:e.jsx(ai,{state:Fi,onChange:e=>{Si(e),Ml()},onImageUpload:(e,t)=>Hl("menuservice",e,t),uploadingVariant:"menuservice"===yi?.group?yi.spVariant:null,onSelectFromLibrary:(e,t)=>{const{stateKey:i}=mt[e];Si(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>El("menuservice",e)})})]}),e.jsxs(ae,{value:"schule",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:fi.isActive,onCheckedChange:e=>{ji(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(fi.isActive?"text-green-600":"text-gray-400"),children:fi.isActive?"Schule aktiv":"Schule inaktiv"})]}),fi.isActive&&e.jsx("div",{children:e.jsx(ai,{state:fi,onChange:e=>{ji(e),Ml()},onImageUpload:(e,t)=>Hl("schule",e,t),uploadingVariant:"schule"===yi?.group?yi.spVariant:null,onSelectFromLibrary:(e,t)=>{const{stateKey:i}=mt[e];ji(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>El("schule",e)})})]})]})})]}),e.jsxs(G,{className:$e?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(f,{className:"h-5 w-5"}),"Login Page"]}),e.jsx(K,{children:"gourmetta.de/jetzt-bestellen — Variante 1 (Farbfläche + Quadratbild) oder Variante 2 (Vollbild), jeweils mit 3 responsiven Formaten"}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[null!==n&&e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>window.open(`/admin/adbox/${n}/preview-login`,"_blank"),children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Neuer Tab"]}),e.jsx("span",{className:"text-xs font-medium "+($e?"text-green-600":"text-gray-400"),children:$e?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:$e,onCheckedChange:e=>{Ie(e),Ml()}})]})})]}),$e&&e.jsx(O,{children:e.jsxs(ie,{defaultValue:"menuservice",children:[e.jsx("div",{className:"flex items-center gap-4 mb-6",children:e.jsxs(le,{children:[e.jsx(se,{value:"menuservice",children:"Menüservice"}),e.jsx(se,{value:"schule",children:"Schule"}),e.jsx(se,{value:"individual_action",children:"Individuelle Aktion"})]})}),e.jsxs(ae,{value:"menuservice",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:zi.isActive,onCheckedChange:e=>{Ui(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(zi.isActive?"text-green-600":"text-gray-400"),children:zi.isActive?"Menüservice aktiv":"Menüservice inaktiv"})]}),zi.isActive&&e.jsx("div",{children:e.jsx(ci,{state:zi,onChange:e=>{Ui(e),Ml()},onImageUpload:(e,t)=>_l("menuservice",e,t),uploadingVariant:"menuservice"===Bi?.group?Bi.variant:null,onSelectFromLibrary:(e,t)=>{const i="desktop"===e?"imageDesktopUrl":"tablet"===e?"imageTabletUrl":"imageMobileUrl";Ui(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>Wl("menuservice",e),groupKey:"menuservice"})})]}),e.jsxs(ae,{value:"schule",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:wi.isActive,onCheckedChange:e=>{Ti(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(wi.isActive?"text-green-600":"text-gray-400"),children:wi.isActive?"Schule aktiv":"Schule inaktiv"})]}),wi.isActive&&e.jsx("div",{children:e.jsx(ci,{state:wi,onChange:e=>{Ti(e),Ml()},onImageUpload:(e,t)=>_l("schule",e,t),uploadingVariant:"schule"===Bi?.group?Bi.variant:null,onSelectFromLibrary:(e,t)=>{const i="desktop"===e?"imageDesktopUrl":"tablet"===e?"imageTabletUrl":"imageMobileUrl";Ti(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>Wl("schule",e),groupKey:"schule"})})]}),e.jsxs(ae,{value:"individual_action",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(ee,{checked:Ai.isActive,onCheckedChange:e=>{Di(t=>({...t,isActive:e})),Ml()}}),e.jsx("span",{className:"text-xs font-medium "+(Ai.isActive?"text-green-600":"text-gray-400"),children:Ai.isActive?"Individuelle Aktion aktiv":"Individuelle Aktion inaktiv"})]}),Ai.isActive&&e.jsx("div",{children:e.jsx(ci,{state:Ai,onChange:e=>{Di(e),Ml()},onImageUpload:(e,t)=>_l("individual_action",e,t),uploadingVariant:"individual_action"===Bi?.group?Bi.variant:null,onSelectFromLibrary:(e,t)=>{const i="desktop"===e?"imageDesktopUrl":"tablet"===e?"imageTabletUrl":"imageMobileUrl";Di(e=>({...e,[i]:t})),Ml()},onRemoveImage:e=>Wl("individual_action",e),groupKey:"individual_action"})})]})]})})]}
1),e.jsxs(G,{className:He?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(j,{className:"h-5 w-5"}),"Slider auf Startseite"]}),e.jsx(K,{children:"gourmetta.de — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden auf der Startseite vor Standard-Slides ausgespielt."}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[null!==n&&e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>window.open(`/admin/adbox/${n}/preview-homepage-slider`,"_blank"),children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Neuer Tab"]}),e.jsx("span",{className:"text-xs font-medium "+(He?"text-green-600":"text-gray-400"),children:He?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:He,onCheckedChange:e=>{_e(e),Ml()}})]})})]}),He&&e.jsxs(O,{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs(J,{children:["Hintergrundbild (gemäß bestehender"," ",nt.label,"-Bildgrößen, ",nt.width," x"," ",nt.height,"px)"]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Z,{type:"file",accept:"image/*",onChange:e=>{const t=e.target.files?.[0];t&&(async e=>{const t=await Qt(e,nt.width,nt.height);if(t.valid){Ii(!0);try{const t=await Yt(e),i=await M.mutateAsync({campaignId:n||0,targetSystem:"homepage_slider",customerGroup:"menuservice",variant:"desktop",fileData:t,filename:e.name,contentType:e.type});Li(e=>({...e,imageDesktopUrl:i.url})),Ml(),pe.success("Startseiten-Slider-Bild hochgeladen")}catch{}finally{Ii(!1)}}else pe.error(`Bild muss exakt ${nt.width.toLocaleString("de-DE")} x ${nt.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${t.actualWidth.toLocaleString("de-DE")} x ${t.actualHeight.toLocaleString("de-DE")} px`)})(t),e.currentTarget.value=""},disabled:$i,className:"max-w-xs"}),e.jsx(Ee,{onSelect:e=>{Li(t=>({...t,imageDesktopUrl:e})),Ml()},expectedWidth:nt.width,expectedHeight:nt.height}),Mi.imageDesktopUrl&&e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{Li(e=>({...e,imageDesktopUrl:""})),Ml(),pe.success("Startseiten-Slider-Bild entfernt")},children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]}),Mi.imageDesktopUrl?e.jsx(It,{imageUrl:Mi.imageDesktopUrl,title:Mi.title,subtitle:Mi.subtitle,buttonText:Mi.buttonText,linkUrl:Mi.linkUrl,textColor:Mi.textColor,buttonBgColor:Mi.buttonBgColor,buttonTextColor:Mi.buttonTextColor,alt:"Startseiten-Slider Vorschau"}):e.jsx("p",{className:"text-xs text-gray-500",children:"Noch kein Bild ausgewählt."})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Textfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Mi.textColor,onChange:e=>{Li(t=>({...t,textColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Mi.textColor,onChange:e=>{Li(t=>({...t,textColor:e.target.value})),Ml()},placeholder:"#FFFFFF",className:"max-w-[140px]"})]}),e.jsx("p",{className:"text-xs text-gray-500 mt-1",children:"Farbe für Titel und Beschreibung. Auf hellen Bildern z. B. #34342C verwenden."})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:Mi.title,onChange:e=>{Li(t=>({...t,title:e.target.value})),Ml()},placeholder:"Titel für den Slide"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Beschreibung"}),e.jsx(Z,{value:Mi.subtitle,onChange:e=>{Li(t=>({...t,subtitle:e.target.value})),Ml()},placeholder:"Kurze Beschreibung"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Text"}),e.jsx(Z,{value:Mi.buttonText,onChange:e=>{Li(t=>({...t,buttonText:e.target.value})),Ml()},placeholder:"z. B. Jetzt bestellen"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Link"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{value:Mi.linkUrl,onChange:e=>{Li(t=>({...t,linkUrl:e.target.value})),Ml()},placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>{Li(t=>({...t,linkUrl:e})),Ml()}})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Hintergrundfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Mi.buttonBgColor,onChange:e=>{Li(t=>({...t,buttonBgColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Mi.buttonBgColor,onChange:e=>{Li(t=>({...t,buttonBgColor:e.target.value})),Ml()},placeholder:"#FFC800",className:"max-w-[140px]"})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Schriftfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Mi.buttonTextColor,onChange:e=>{Li(t=>({...t,buttonTextColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Mi.buttonTextColor,onChange:e=>{Li(t=>({...t,buttonTextColor:e.target.value})),Ml()},placeholder:"#34342C",className:"max-w-[140px]"})]})]})]})]})]}
1),e.jsxs(G,{className:Ve?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(j,{className:"h-5 w-5"}),"Slider auf Menuservice-Startseite"]}),e.jsx(K,{children:"/menuservice/ueberblick — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt."}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[null!==n&&e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>window.open(`/admin/adbox/${n}/preview-menuservice-homepage-slider`,"_blank"),children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Neuer Tab"]}),e.jsx("span",{className:"text-xs font-medium "+(Ve?"text-green-600":"text-gray-400"),children:Ve?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:Ve,onCheckedChange:e=>{Ge(e),Ml()}})]})})]}),Ve&&e.jsxs(O,{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs(J,{children:["Hintergrundbild (",rt.width," x"," ",rt.height,"px)"]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Z,{type:"file",accept:"image/*",onChange:e=>{const t=e.target.files?.[0];t&&(async e=>{const t=await Qt(e,rt.width,rt.height);if(t.valid){Ei(!0);try{const t=await Yt(e),i=await M.mutateAsync({campaignId:n||0,targetSystem:"menuservice_homepage_slider",customerGroup:"menuservice",variant:"desktop",fileData:t,filename:e.name,contentType:e.type});_i(e=>({...e,imageDesktopUrl:i.url})),Ml(),pe.success("Menuservice-Startseiten-Slider-Bild hochgeladen")}catch{}finally{Ei(!1)}}else pe.error(`Bild muss exakt ${rt.width.toLocaleString("de-DE")} x ${rt.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${t.actualWidth.toLocaleString("de-DE")} x ${t.actualHeight.toLocaleString("de-DE")} px`)})(t),e.currentTarget.value=""},disabled:Vi,className:"max-w-xs"}),e.jsx(Ee,{onSelect:e=>{_i(t=>({...t,imageDesktopUrl:e})),Ml()},expectedWidth:rt.width,expectedHeight:rt.height}),Hi.imageDesktopUrl&&e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{_i(e=>({...e,imageDesktopUrl:""})),Ml(),pe.success("Menuservice-Startseiten-Slider-Bild entfernt")},children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]}),Hi.imageDesktopUrl?e.jsx(It,{imageUrl:Hi.imageDesktopUrl,title:Hi.title,subtitle:Hi.subtitle,buttonText:Hi.buttonText,linkUrl:Hi.linkUrl,textColor:Hi.textColor,buttonBgColor:Hi.buttonBgColor,buttonTextColor:Hi.buttonTextColor,alt:"Menuservice-Startseiten-Slider Vorschau"}):e.jsx("p",{className:"text-xs text-gray-500",children:"Noch kein Bild ausgewählt."})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Textfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Hi.textColor,onChange:e=>{_i(t=>({...t,textColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Hi.textColor,onChange:e=>{_i(t=>({...t,textColor:e.target.value})),Ml()},placeholder:"#FFFFFF",className:"max-w-[140px]"})]}),e.jsx("p",{className:"text-xs text-gray-500 mt-1",children:"Farbe für Titel und Beschreibung. Auf hellen Bildern z. B. #34342C verwenden."})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:Hi.title,onChange:e=>{_i(t=>({...t,title:e.target.value})),Ml()},placeholder:"Titel für den Slide"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Beschreibung"}),e.jsx(Z,{value:Hi.subtitle,onChange:e=>{_i(t=>({...t,subtitle:e.target.value})),Ml()},placeholder:"Kurze Beschreibung"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Text"}),e.jsx(Z,{value:Hi.buttonText,onChange:e=>{_i(t=>({...t,buttonText:e.target.value})),Ml()},placeholder:"z. B. Jetzt bestellen"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Link"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{value:Hi.linkUrl,onChange:e=>{_i(t=>({...t,linkUrl:e.target.value})),Ml()},placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>{_i(t=>({...t,linkUrl:e})),Ml()}})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Hintergrundfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Hi.buttonBgColor,onChange:e=>{_i(t=>({...t,buttonBgColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Hi.buttonBgColor,onChange:e=>{_i(t=>({...t,buttonBgColor:e.target.value})),Ml()},placeholder:"#FFC800",className:"max-w-[140px]"})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Schriftfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Hi.buttonTextColor,onChange:e=>{_i(t=>({...t,buttonTextColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Hi.buttonTextColor,onChange:e=>{_i(t=>({...t,buttonTextColor:e.target.value})),Ml()},placeholder:"#34342C",className:"max-w-[140px]"})]})]})]})]})]}
1),e.jsxs(G,{className:Re?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(l,{className:"h-5 w-5"}),"Slider auf Speiseplanseite"]}),e.jsx(K,{children:"/menuservice/speiseplaene — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt."}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[null!==n&&e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>window.open(`/admin/adbox/${n}/preview-speiseplan-slider`,"_blank"),children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Neuer Tab"]}),e.jsx("span",{className:"text-xs font-medium "+(Re?"text-green-600":"text-gray-400"),children:Re?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:Re,onCheckedChange:e=>{We(e),Ml()}})]})})]}),Re&&e.jsxs(O,{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs(J,{children:["Hintergrundbild (",ot.width," x"," ",ot.height,"px)"]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Z,{type:"file",accept:"image/*",onChange:e=>{const t=e.target.files?.[0];t&&(async e=>{const t=await Qt(e,ot.width,ot.height);if(t.valid){Ki(!0);try{const t=await Yt(e),i=await M.mutateAsync({campaignId:n||0,targetSystem:"speiseplan_slider",customerGroup:"menuservice",variant:"desktop",fileData:t,filename:e.name,contentType:e.type});Ri(e=>({...e,imageDesktopUrl:i.url})),Ml(),pe.success("Speiseplan-Slider-Bild hochgeladen")}catch{}finally{Ki(!1)}}else pe.error(`Bild muss exakt ${ot.width.toLocaleString("de-DE")} x ${ot.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${t.actualWidth.toLocaleString("de-DE")} x ${t.actualHeight.toLocaleString("de-DE")} px`)})(t),e.currentTarget.value=""},disabled:Wi,className:"max-w-xs"}),e.jsx(Ee,{onSelect:e=>{Ri(t=>({...t,imageDesktopUrl:e})),Ml()},expectedWidth:ot.width,expectedHeight:ot.height}),Gi.imageDesktopUrl&&e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{Ri(e=>({...e,imageDesktopUrl:""})),Ml(),pe.success("Speiseplan-Slider-Bild entfernt")},children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]}),Gi.imageDesktopUrl?e.jsx(It,{imageUrl:Gi.imageDesktopUrl,title:Gi.title,subtitle:Gi.subtitle,buttonText:Gi.buttonText,linkUrl:Gi.linkUrl,textColor:Gi.textColor,buttonBgColor:Gi.buttonBgColor,buttonTextColor:Gi.buttonTextColor,alt:"Speiseplan-Slider Vorschau"}):e.jsx("p",{className:"text-xs text-gray-500",children:"Noch kein Bild ausgewählt."})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Textfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Gi.textColor,onChange:e=>{Ri(t=>({...t,textColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Gi.textColor,onChange:e=>{Ri(t=>({...t,textColor:e.target.value})),Ml()},placeholder:"#FFFFFF",className:"max-w-[140px]"})]}),e.jsx("p",{className:"text-xs text-gray-500 mt-1",children:"Farbe für Titel und Beschreibung. Auf hellen Bildern z. B. #34342C verwenden."})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:Gi.title,onChange:e=>{Ri(t=>({...t,title:e.target.value})),Ml()},placeholder:"Titel für den Slide"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Beschreibung"}),e.jsx(Z,{value:Gi.subtitle,onChange:e=>{Ri(t=>({...t,subtitle:e.target.value})),Ml()},placeholder:"Kurze Beschreibung"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Text"}),e.jsx(Z,{value:Gi.buttonText,onChange:e=>{Ri(t=>({...t,buttonText:e.target.value})),Ml()},placeholder:"z. B. Jetzt bestellen"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Link"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{value:Gi.linkUrl,onChange:e=>{Ri(t=>({...t,linkUrl:e.target.value})),Ml()},placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>{Ri(t=>({...t,linkUrl:e})),Ml()}})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Hintergrundfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Gi.buttonBgColor,onChange:e=>{Ri(t=>({...t,buttonBgColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Gi.buttonBgColor,onChange:e=>{Ri(t=>({...t,buttonBgColor:e.target.value})),Ml()},placeholder:"#FFC800",className:"max-w-[140px]"})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Schriftfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:Gi.buttonTextColor,onChange:e=>{Ri(t=>({...t,buttonTextColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:Gi.buttonTextColor,onChange:e=>{Ri(t=>({...t,buttonTextColor:e.target.value})),Ml()},placeholder:"#34342C",className:"max-w-[140px]"})]})]})]})]})]}),[{key:"catering",title:"Slider auf Catering-Seite",description:"/catering — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt.",icon:e.jsx(F,{className:"h-5 w-5"}),isActive:Ze,setIsActive:it,asset:Ji,setAsset:Yi,uploading:Xi,setUploading:el,targetSystem:"catering_slider"},{key:"kitaKrippe",title:"Slider auf Krippe & Kita-Seite",description:"/kita-krippe — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt.",icon:e.jsx(S,{className:"h-5 w-5"}),isActive:lt,setIsActive:xt,asset:tl,setAsset:il,uploading:ll,setUploading:sl,targetSystem:"kita_krippe_slider"},{key:"schule",title:"Slider auf Schule-Seite",description:"/schule — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt.",icon:e.jsx(y,{className:"h-5 w-5"}),isActive:gt,setIsActive:vt,asset:al,setAsset:nl,uploading:rl,setUploading:ol,targetSystem:"schule_slider"},{key:"betriebsrestaurant",title:"Slider auf Betriebsrestaurant-Seite",description:"/betriebsrestaurant — 1 Hintergrundbild mit CTA für den Hero-Slider. Aktions-Slides werden vor Standard-Slides ausgespielt.",icon:e.jsx(C,{className:"h-5 w-5"}),isActive:ft,setIsActive:jt,asset:cl,setAsset:dl,uploading:xl,setUploading:ul,targetSystem:"betriebsrestaurant_slider"}].map(t=>e.jsxs(G,{className:t.isActive?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[t.icon,t.title]}),e.jsx(K,{children:t.description}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-xs font-medium "+(t.isActive?"text-green-600":"text-gray-400"),children:t.isActive?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:t.isActive,onCheckedChange:e=>{t.setIsActive(e),Ml()}})]})})]}),t.isActive&&e.jsxs(O,{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs(J,{children:["Hintergrundbild (",ct.width," x"," ",ct.height,"px)"]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Z,{type:"file",accept:"image/*",onChange:e=>{const i=e.target.files?.[0];i&&(async(e,t,i,l,s)=>{const a=await Qt(e,ct.width,ct.height);if(a.valid){l(!0);try{const l=await Yt(e),a=await M.mutateAsync({campaignId:n||0,targetSystem:t,customerGroup:"menuservice",variant:"desktop",fileData:l,filename:e.name,contentType:e.type});i(e=>({...e,imageDesktopUrl:a.url})),Ml(),pe.success(`${s} – Bild hochgeladen`)}catch{}finally{l(!1)}}
1else pe.error(`Bild muss exakt ${ct.width.toLocaleString("de-DE")} x ${ct.height.toLocaleString("de-DE")} px groß sein. Hochgeladen: ${a.actualWidth.toLocaleString("de-DE")} x ${a.actualHeight.toLocaleString("de-DE")} px`)})(i,t.targetSystem,t.setAsset,t.setUploading,t.title),e.currentTarget.value=""},disabled:t.uploading,className:"max-w-xs"}),e.jsx(Ee,{onSelect:e=>{t.setAsset(t=>({...t,imageDesktopUrl:e})),Ml()},expectedWidth:ct.width,expectedHeight:ct.height}),t.asset.imageDesktopUrl&&e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{return e=t.setAsset,i=t.title,e(e=>({...e,imageDesktopUrl:""})),Ml(),void pe.success(`${i} – Bild entfernt`);var e,i},children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]}),t.asset.imageDesktopUrl?e.jsx(It,{imageUrl:t.asset.imageDesktopUrl,title:t.asset.title,subtitle:t.asset.subtitle,buttonText:t.asset.buttonText,linkUrl:t.asset.linkUrl,textColor:t.asset.textColor,buttonBgColor:t.asset.buttonBgColor,buttonTextColor:t.asset.buttonTextColor,alt:`${t.title} Vorschau`}):e.jsx("p",{className:"text-xs text-gray-500",children:"Noch kein Bild ausgewählt."})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Textfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:t.asset.textColor,onChange:e=>{t.setAsset(t=>({...t,textColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:t.asset.textColor,onChange:e=>{t.setAsset(t=>({...t,textColor:e.target.value})),Ml()},placeholder:"#FFFFFF",className:"max-w-[140px]"})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel"}),e.jsx(Z,{value:t.asset.title,onChange:e=>{t.setAsset(t=>({...t,title:e.target.value})),Ml()},placeholder:"Titel für den Slide"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Beschreibung"}),e.jsx(Z,{value:t.asset.subtitle,onChange:e=>{t.setAsset(t=>({...t,subtitle:e.target.value})),Ml()},placeholder:"Kurze Beschreibung"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Text"}),e.jsx(Z,{value:t.asset.buttonText,onChange:e=>{t.setAsset(t=>({...t,buttonText:e.target.value})),Ml()},placeholder:"z. B. Jetzt anfragen"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Link"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{value:t.asset.linkUrl,onChange:e=>{t.setAsset(t=>({...t,linkUrl:e.target.value})),Ml()},placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>{t.setAsset(t=>({...t,linkUrl:e})),Ml()}})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Hintergrundfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:t.asset.buttonBgColor,onChange:e=>{t.setAsset(t=>({...t,buttonBgColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:t.asset.buttonBgColor,onChange:e=>{t.setAsset(t=>({...t,buttonBgColor:e.target.value})),Ml()},placeholder:"#FFC800",className:"max-w-[140px]"})]})]}),e.jsxs("div",{children:[e.jsx(J,{children:"Button-Schriftfarbe"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{type:"color",value:t.asset.buttonTextColor,onChange:e=>{t.setAsset(t=>({...t,buttonTextColor:e.target.value.toUpperCase()})),Ml()},className:"h-10 w-16 p-1"}),e.jsx(Z,{value:t.asset.buttonTextColor,onChange:e=>{t.setAsset(t=>({...t,buttonTextColor:e.target.value})),Ml()},placeholder:"#34342C",className:"max-w-[140px]"})]})]})]})]})]},t.key)),e.jsxs(G,{className:Ke?"":"opacity-60",children:[e.jsxs(R,{children:[e.jsxs(W,{className:"flex items-center gap-2",children:[e.jsx(k,{className:"h-5 w-5"}),"Aktions-Side-by-Side"]}),e.jsx(K,{children:"Menüservice / Speisepläne: Darstellung unter „Unsere Themen- und Aktionswochen“. Bild ist Pflicht, Titel/Beschreibung/CTA sind optional."}),e.jsx(q,{children:e.jsxs("div",{className:"flex items-center gap-2",children:[null!==n&&e.jsxs(_,{variant:"outline",size:"sm",onClick:()=>window.open(`/admin/adbox/${n}/preview-action-side-by-side`,"_blank"),children:[e.jsx(v,{className:"h-4 w-4 mr-1.5"}),"Neuer Tab"]}),e.jsx("span",{className:"text-xs font-medium "+(Ke?"text-green-600":"text-gray-400"),children:Ke?"Aktiv":"Inaktiv"}),e.jsx(ee,{checked:Ke,onCheckedChange:e=>{Oe(e),Ml()}})]})})]}),Ke&&e.jsxs(O,{className:"space-y-6",children:[e.jsxs("div",{className:"flex items-center justify-between rounded-md border bg-gray-50 px-3 py-2",children:[e.jsxs("div",{children:[e.jsx(J,{className:"text-xs text-gray-600",children:"Anordnung (Desktop)"}),e.jsx("p",{className:"text-[11px] text-gray-500 mt-0.5",children:Oi.imageFirst?"Bild links · Text rechts":"Text links · Bild rechts"})]}),e.jsx(ee,{checked:Oi.imageFirst,onCheckedChange:e=>{qi(t=>({...t,imageFirst:e})),Ml()}})]}),e.jsxs("div",{children:[e.jsx(J,{className:"text-xs text-gray-600",children:"Farben (optional)"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mt-2",children:[e.jsx(Ht,{label:"Hintergrundfarbe der Sektion",value:Oi.bgColor,defaultColor:"#F9F8F6",onChange:e=>{qi(t=>({...t,bgColor:e})),Ml()}}),e.jsx(Ht,{label:"Schriftfarbe",value:Oi.textColor,defaultColor:"#34342C",onChange:e=>{qi(t=>({...t,textColor:e})),Ml()}}),e.jsx(Ht,{label:"Button-Hintergrundfarbe",value:Oi.buttonBgColor,defaultColor:"#FFC800",onChange:e=>{qi(t=>({...t,buttonBgColor:e})),Ml()}}),e.jsx(Ht,{label:"Button-Schriftfarbe",value:Oi.buttonTextColor,defaultColor:"#34342C",onChange:e=>{qi(t=>({...t,buttonTextColor:e})),Ml()}})]}),e.jsx("p",{className:"mt-2 text-xs text-gray-500",children:"Leer lassen für die Standardfarben. Bei eigener Hintergrundfarbe auf ausreichenden Kontrast von Schrift und Button achten."})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs(J,{children:["Bild (quadratisch, mind. ",qt," x"," ",qt,"px)"]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(Z,{type:"file",accept:"image/*",onChange:e=>{const t=e.target.files?.[0];t&&(async e=>{const t=await Zt(e,qt);if(t.valid){Zi(!0);try{const t=await Yt(e),i=await M.mutateAsync({campaignId:n||0,targetSystem:"action_side_by_side",customerGroup:"menuservice",variant:"desktop",fileData:t,filename:e.name,contentType:e.type});qi(e=>({...e,imageDesktopUrl:i.url})),Ml(),pe.success("Aktions-Side-by-Side-Bild hochgeladen")}catch{}finally{Zi(!1)}}else pe.error(`Bild muss quadratisch und mindestens 1000 x 1000 px groß sein. Hochgeladen: ${t.actualWidth.toLocaleStr
1ing("de-DE")} x ${t.actualHeight.toLocaleString("de-DE")} px`)})(t),e.currentTarget.value=""},disabled:Qi,className:"max-w-xs"}),e.jsx(Ee,{onSelect:e=>{qi(t=>({...t,imageDesktopUrl:e})),Ml()},minSquareSize:qt}),Oi.imageDesktopUrl&&e.jsxs(_,{type:"button",variant:"outline",size:"sm",onClick:()=>{qi(e=>({...e,imageDesktopUrl:""})),Ml(),pe.success("Aktions-Side-by-Side-Bild entfernt")},children:[e.jsx(r,{className:"h-4 w-4 mr-1.5"}),"Entfernen"]})]}),Oi.imageDesktopUrl?e.jsx("div",{className:"relative w-full max-w-[420px] overflow-hidden rounded-md border bg-gray-100",children:e.jsx("img",{src:Oi.imageDesktopUrl,alt:"Aktions-Side-by-Side Vorschau",className:"w-full h-auto object-cover"})}):e.jsx("p",{className:"text-xs text-gray-500",children:"Noch kein Bild ausgewählt."})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Titel (optional)"}),e.jsx(Z,{value:Oi.title,onChange:e=>{qi(t=>({...t,title:e.target.value})),Ml()},placeholder:"Titel"})]}),e.jsxs("div",{children:[e.jsx(J,{children:"CTA Text (optional)"}),e.jsx(Z,{value:Oi.buttonText,onChange:e=>{qi(t=>({...t,buttonText:e.target.value})),Ml()},placeholder:"z. B. Jetzt bestellen"})]}),e.jsxs("div",{className:"md:col-span-2",children:[e.jsx(J,{children:"Beschreibung (optional)"}),e.jsx(Y,{value:Oi.description,onChange:e=>{qi(t=>({...t,description:e.target.value})),Ml()},placeholder:"Einfacher Text, Zeilenumbrüche erlaubt",rows:5}),e.jsx("p",{className:"mt-1 text-xs text-gray-500",children:"Nur einfacher Text, keine weiteren Formatierungen."})]}),e.jsxs("div",{className:"md:col-span-2",children:[e.jsx(J,{children:"CTA Link (optional)"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Z,{value:Oi.linkUrl,onChange:e=>{qi(t=>({...t,linkUrl:e.target.value})),Ml()},placeholder:"https://...",className:"flex-1"}),e.jsx(ht,{onSelect:e=>{qi(t=>({...t,linkUrl:e})),Ml()}})]})]})]})]})]}),e.jsxs("div",{className:"flex justify-end gap-2 pb-8",children:[e.jsxs(_,{onClick:()=>Yl(!1),disabled:ml||!fl,size:"lg",variant:fl?"default":"outline",className:fl?"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]":"",children:[ml&&!hl?e.jsx(o,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(d,{className:"h-4 w-4 mr-2"}),"Speichern"]}),e.jsxs(_,{onClick:()=>Yl(!0),disabled:ml,size:"lg",variant:fl?"default":"outline",className:fl?"bg-[#FFC800] hover:bg-[#e6b500] text-[#34342C]":"",children:[hl?e.jsx(o,{className:"h-4 w-4 animate-spin mr-2"}):e.jsx(d,{className:"h-4 w-4 mr-2"}),"Speichern & Schließen"]})]})]})]})]});var Xl}export{di as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.