PageSourceSearch

https://malimo.no/_next/static/chunks/59357e0e654d897a.js?dpl=dpl_4VWtAJUoCrMPGk9E4vChgtZasCrM

js malimo.no collected 2026-09-24 11:29:53 UTC 49,516 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,706773,e=>{"use strict";let r=(0,e.i(198631).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["default",()=>r])},488026,e=>{"use strict";let r=(0,e.i(198631).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["default",()=>r])},142431,e=>{"use strict";var r=e.i(187519),t=e.i(818969);function a(e,{label:a,preset:i="full",editorMinHeightClassName:o}){return{type:"custom",label:a,render:l=>(0,r.jsx)(t.PageBuilderRichTextField,{...l,label:l.label??l.field.label??a,toolbarPreset:i,editorMinHeightClassName:o,placeholder:e("fields.richTextPlaceholder","Start typing...")})}}e.s(["createPageBuilderRichTextField",()=>a])},325269,e=>{"use strict";let r=(0,e.i(198631).default)("image-plus",[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]]);e.s(["default",()=>r])},319036,e=>{"use strict";var r=e.i(187519),t=e.i(786646),a=e.i(291967),i=e.i(226099),o=e.i(780600),l=e.i(254856),s=e.i(236763),n=e.i(827238),d=e.i(83812),c="Switch",[g,m]=(0,o.createContextScope)(c),[u,p]=g(c),f=t.forwardRef((e,o)=>{let{__scopeSwitch:s,name:n,checked:g,defaultChecked:m,required:p,disabled:f,value:h="on",onCheckedChange:b,form:v,...k}=e,[C,j]=t.useState(null),S=(0,i.useComposedRefs)(o,e=>j(e)),T=t.useRef(!1),P=!C||v||!!C.closest("form"),[w,F]=(0,l.useControllableState)({prop:g,defaultProp:m??!1,onChange:b,caller:c});return(0,r.jsxs)(u,{scope:s,checked:w,disabled:f,children:[(0,r.jsx)(d.Primitive.button,{type:"button",role:"switch","aria-checked":w,"aria-required":p,"data-state":x(w),"data-disabled":f?"":void 0,disabled:f,value:h,...k,ref:S,onClick:(0,a.composeEventHandlers)(e.onClick,e=>{F(e=>!e),P&&(T.current=e.isPropagationStopped(),T.current||e.stopPropagation())})}),P&&(0,r.jsx)(y,{control:C,bubbles:!T.current,name:n,value:h,checked:w,required:p,disabled:f,form:v,style:{transform:"translateX(-100%)"}})]})});f.displayName=c;var h="SwitchThumb",b=t.forwardRef((e,t)=>{let{__scopeSwitch:a,...i}=e,o=p(h,a);return(0,r.jsx)(d.Primitive.span,{"data-state":x(o.checked),"data-disabled":o.disabled?"":void 0,...i,ref:t})});b.displayName=h;var y=t.forwardRef(({__scopeSwitch:e,control:a,checked:o,bubbles:l=!0,...d},c)=>{let g=t.useRef(null),m=(0,i.useComposedRefs)(g,c),u=(0,s.usePrevious)(o),p=(0,n.use
1Size)(a);return t.useEffect(()=>{let e=g.current;if(!e)return;let r=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(u!==o&&r){let t=new Event("click",{bubbles:l});r.call(e,o),e.dispatchEvent(t)}},[u,o,l]),(0,r.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:o,...d,tabIndex:-1,ref:m,style:{...d.style,...p,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function x(e){return e?"checked":"unchecked"}y.displayName="SwitchBubbleInput",e.s(["Root",()=>f,"Switch",()=>f,"SwitchThumb",()=>b,"Thumb",()=>b,"createSwitchScope",()=>m],643173);var v=e.i(643173),v=v,k=e.i(647163);function C({className:e,...t}){return(0,r.jsx)(v.Root,{"data-slot":"switch",className:(0,k.cn)("peer inline-flex h-5 w-9 shrink-0 items-center rounded-full border border-transparent shadow-xs outline-none transition-colors focus-visible:ring-[3px] focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-malimo-blue/45 data-[state=unchecked]:bg-muted",e),...t,children:(0,r.jsx)(v.Thumb,{"data-slot":"switch-thumb",className:(0,k.cn)("pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[16px] data-[state=unchecked]:translate-x-[2px] data-[state=checked]:bg-malimo-blue data-[state=unchecked]:bg-white")})})}e.s(["Switch",()=>C],319036)},703018,e=>{"use strict";var r=e.i(901524);e.s(["Trash2Icon",()=>r.default])},213406,e=>{e.v({root:{props:{title:"Lisensinformasjon | Malimo",seoDescription:"Se lisensinformasjon og abonnementspriser for Malimo.no, inkludert enkeltbruker, team, skole, kommune og barnehage.",licenseInfoPresentationVersion:3}},content:[{type:"Section",props:{id:"license-intro-section",title:"",showTitle:!1,spacing:"none",background:"default",backgroundColor:"#faf5e8",contentPadding:"roomy",sectionRadius:"lg",content:[{type:"Columns",props:{id:"license-intro-columns",columnCount:2,gap:"wide",columnRatio:"fixedMedia",column1:[{type:"PhotoBlock",props:{id:"license-intro-image",imageUrl:"/images/landing/shopLisenserPencil.jpg",altText:"To blyanter som symboliserer Malimo-abonnement",ariaLabel:"To blyanter som symboliserer Malimo-abonnement",imageRadius:"full",imageFit:"cover",aspectRatio:"square",imageWidth:"normal",align:"center",verticalAlign:"top"}}],column2:[{type:"TextBlock",props:{id:"license-intro-copy",eyebrow:"",title:"<h1>Full tilgang pÃ¥ Malimo.no</h1>",body:'<p>Abonnement gir tilgang til alt digitalt materiell pÃ¥ Malimo.no pÃ¥ Ã¥rs- eller mÃ¥nedsbasis.</p><ul><li>Alternativer for enkeltbruker, et tilpasset antall brukere, hel skole og barnehage.</li><li>Årsbaserte abonnement løper fra dato man bestiller til samme dato Ã¥ret etter.</li><li>MÃ¥nedsabonnement har 12mnd bindingstid.</li></ul><p>Man administrerer selv abonnementet, og for Ã¥ bestille følger du knappen under. Abonnement bestilles og administreres inne pÃ¥ brukerdelen av siden, ikke her i butikken. Ta gjerne kontakt pÃ¥ <a href="mailto:[email protected]">[email protected]</a> ved eventuelle spørsmÃ¥l.</p>',textColor:"#5a5a5a",titleAlign:"left",bodyAlign:"left",align:"left",verticalAlign:"top"}}]}}]}},{type:"Section",props:{id:"license-cards-section",title:"",showTitle:!1,spacing:"none",content:[{type:"TileGridBlock",props:{id:"license-card-grid",columns:3,gap:"normal",rowHeight:"normal",tiles:[{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1},{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1},{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1},{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1},{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1},{backgroundColor:"#ffffff",cornerRadius:"none",colSpan:1,rowSpan:1}],tile1:[{type:"LicenseCardBlock",props:{id:"license-monthly",title:"MÃ¥nedsabonnement",price:"395,-",period:"mnd",vat:"(ink.mva)",bullets:[{text:"MÃ¥nedsabonnementet gir full tilgang til alt digitalt materiell pÃ¥ Malimo.no i abonnementsperioden."},{text:"MÃ¥nedsabonnementet har 12mnd bindingstid."},{text:"Ved kansellering av abonnement opphører tilgangen pÃ¥ materiellet lastet ned via abonnementet."},{text:"Tilgangen er kun gyldig for én person."}
1],accentColor:"#1f6f78",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}],tile2:[{type:"LicenseCardBlock",props:{id:"license-single-user",title:"Enkeltbruker - årsabonnement",price:"3.400,-",period:"år",vat:"(eks.mva)",bullets:[{text:"Enkeltbruker-abonnement gir full tilgang til å laste ned alt materiell på Malimo.no i abonnementsperioden."},{text:"Det fornyes automatisk etter ett år."},{text:"Ved kansellering av abonnement opphører tilgangen på materiellet lastet ned via abonnementet."},{text:"Tilgangen er kun gyldig for én bruker, materiell kan ikke deles med andre."}],accentColor:"#1f5f8e",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}],tile3:[{type:"LicenseCardBlock",props:{id:"license-team",title:"Teamtilgang - tilpasset antall brukere - årsabonnement",price:"Pris etter antall",period:"",vat:"",bullets:[{text:"Det er mulig å kjøpe årsabonnement for et selvvalgt antall medlemmer."},{text:"Helskolelisens dekker for 25 brukere og oppover."},{text:"Årsabonnement har ingen bindingstid."},{text:"Det fornyes automatisk etter ett år ved aktivt abonnement."}],accentColor:"#2f7a36",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}],tile4:[{type:"LicenseCardBlock",props:{id:"license-school",title:"Skolelisens - årsabonnement",price:"56.000,-",period:"år",vat:"(eks.mva)",bullets:[{text:"Skolelisens gir full tilgang til å laste ned alt materiell på Malimo.no for alle ansatte på skolen."},{text:"Abonnement med lisens for hele skolen har ingen bindingstid."},{text:"Det fornyes automatisk etter ett år ved aktivt abonnement."},{text:"Ved kansellering av abonnement opphører tilgangen på materiellet lastet ned via abonnementet."}],accentColor:"#8a3f70",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}],tile5:[{type:"LicenseCardBlock",props:{id:"license-municipality",title:"Kommunelisens",price:"Pris etter antall",period:"",vat:"",bullets:[{text:"Vi skreddersyr tilbud til kommuner i alle størrelser."},{text:"En kommunelisens kan inkludere skoler, barnehager, bibliotek, sykehjem og mer."},{text:"Ta kontakt for å få et godt tilbud."},{text:"Løsningen tilpasses ønsket antall brukere."}],accentColor:"#16609a",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}],tile6:[{type:"LicenseCardBlock",props:{id:"license-kindergarten",title:"Barnehagelisens - årsabonnement",price:"9.000,-",period:"år",vat:"(eks.mva)",bullets:[{text:"Barnehagelisens gir full tilgang til å laste ned alt materiell på Malimo.no for alle ansatte i barnehagen."},{text:"Abonnementet for barnehager har ingen bindingstid."},{text:"Det fornyes automatisk etter ett år."},{text:"Ved kansellering av abonnement opphører tilgangen på materiellet lastet ned via abonnementet."}],accentColor:"#5f7f26",cardBackgroundColor:"#ececec",textColor:"#333333",priceTextColor:"#ffffff",priceBorderColor:"#ffffff",headerStyle:"diagonal",titleSize:"md",bodySize:"md",cardPadding:"md",titleAlign:"center",bodyAlign:"left",cardRadius:"lg",priceSize:"md",minHeight:"normal",visible:!0}}]}}]}},{type:"Section",props:{id:"license-cta-section",title:"",showTitle:!1,spacing:"none",content:[{type:"ButtonBlock",props:{id:"license-cta",label:"Klikk her for å logge inn og bestille (eller send e-post)",href:"/account-settings/subscriptions",backgroundColor:"#0077b6",textColor:"#ffffff",shape:"rectangle",align:"center",verticalAlign:"top"}}]}}]})},715682,e=>{"use strict";var r=e.i(488026);e.s(["ExternalLink",()=>r.default])},22335,e=>{"use strict";var r=e.i(213406);function t(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function a(e,r,t={}){return{type:e,props:{id:r,...t}}}function i(e,r){return a("Section",e,{title:"",showTitle:!1,spacing:"none",content:[r]})}function o(e){return JSON.parse(JSON.stringify(e))}
1function l(e,r){if(Array.isArray(e))return void e.forEach(e=>l(e,r));if(!t(e))return;let a=t(e.props)?e.props:null;if("Section"===e.type&&a){let e="string"==typeof a.id?a.id:"",t=e.startsWith("license-");t&&(r||void 0===a.contentPadding)&&(a.contentPadding="license-intro-section"===e?"roomy":"none",a.spacing="none"),t&&(r||void 0===a.sectionRadius)&&(a.sectionRadius="license-intro-section"===e?"lg":"none"),r&&"license-intro-section"===e&&(a.hideOnMobile=!1)}"TextBlock"===e.type&&a?.id==="license-intro-copy"&&(r||void 0===a.textColor)&&(a.textColor="#5a5a5a"),"PhotoBlock"===e.type&&a?.id==="license-intro-image"&&(r||void 0===a.imageWidth)&&(a.imageWidth="normal"),r&&"Columns"===e.type&&a?.id==="license-intro-columns"&&(a.columnRatio="fixedMedia"),r&&"ButtonBlock"===e.type&&a?.id==="license-cta"&&"Klikk her for å logge inn og bestille"===a.label&&(a.label="Klikk her for å logge inn og bestille (eller send e-post)"),"LicenseCardBlock"===e.type&&a&&(r||void 0===a.headerStyle)&&(a.headerStyle="diagonal"),r&&"LicenseCardBlock"===e.type&&a&&(a.cardRadius="lg"),Object.values(e).forEach(e=>l(e,r))}let s={root:{},content:[a("HomeHeroBlock","home-hero"),a("HomePedagogikBlock","home-pedagogik"),a("HomeIdebankBlock","home-idebank"),a("HomeResourceLibraryBlock","home-resource-library"),a("HomeUserReviewsBlock","home-user-reviews"),a("HomeMalimoTeamBlock","home-malimo-team"),a("HomeNewsletterBlock","home-newsletter")]},n={root:{},content:[a("ShopHeroCarouselBlock","shop-hero-carousel"),a("ShopNewestProductsBlock","shop-newest-products"),a("ShopFeaturedCategoriesBlock","shop-featured-categories"),a("ShopAllProductsLinkBlock","shop-all-products-link")]};function d({showFilters:e=!1,showPagination:r=!1}={}){return{root:{},content:[i("category-info-section",a("CategoryInfoBlock","category-info",{categorySlug:"",showTitle:!0,showImage:!0,showDescription:!0,showChildren:!1})),i("category-sub-categories-section",a("CategorySubCategoriesBlock","category-sub-categories",{categorySlug:"",title:"",showTitle:!1,columns:6})),i("category-products-section",a("CategoryProductsListingBlock","category-product-listing",{categorySlug:"",showFilters:e,showPagination:r,showPageSizeSelector:!1,columns:4}))]}}let c=d(),g=d({showFilters:!0,showPagination:!0});function m(e){Array.isArray(e)?e.forEach(m):t(e)&&("CategoryProductsListingBlock"===e.type&&(e.props={...t(e.props)?e.props:{},showFilters:!0,showPagination:!0}),t(e.props)&&Object.values(e.props).forEach(m))}let u={home:s,shop:n,category:c,about:{root:{},content:[i("about-heading-section",a("TextBlock","about-heading",{eyebrow:"",title:"Ny side",body:"<p>Legg til innhold for denne siden.</p>",headingLevel:"h1",titleScale:"large",titleAlign:"left",bodyAlign:"left",align:"left",verticalAlign:"top"}))]},idebank:{root:{},content:[]},"license-info":r.default};function p(e){return o(u[e])}function f(e){let r=o(e),a=t(r.root)?r.root:{},i=t(a.props)?a.props:{},s=3!==i.licenseInfoPresentationVersion;return a.props={..."string"==typeof a.title?{title:a.title}:{},..."string"==typeof a.seoDescription?{seoDescription:a.seoDescription}:{},...i,licenseInfoPresentationVersion:3},r.root=a,l(r.content,s),l(r.zones,s),r}function h(){return o(g)}function b(e){let r=o(e);return m(r.content),m(r.zones),r}e.s(["createDefaultPageBuilderData",()=>p,"createStandardCategoryPageBuilderData",()=>h,"withLicenseInfoPresentationDefaults",()=>f,"withStandardCategoryProductListingControls",()=>b])},275117,e=>{"use strict";var r=e.i(187519),t=e.i(86914),a=(e.i(706773),e.i(841024)),i=e.i(647163);function o({...e}){return(0,r.jsx)("nav",{"aria-label":"breadcrumb","data-slot":"breadcrumb",...e})}function l({className:e,...t}){return(0,r.jsx)("ol",{"data-slot":"breadcrumb-list",className:(0,i.cn)("flex flex-wrap items-center gap-1.5 text-sm break-words text-muted-foreground sm:gap-2.5",e),...t})}function s({className:e,...t}){return(0,r.jsx)("li",{"data-slot":"breadcrumb-item",className:(0,i.cn)("inline-flex items-center gap-1.5",e),...t})}function n({asChild:e,className:t,...o}){let l=e?a.Slot.Root:"a";return(0,r.jsx)(l,{"data-slot":"breadcrumb-link",className:(0,i.cn)("inline-flex min-h-6 items-center transition-colors hover:text-foreground",t),...o})}function d({className:e,...t}){return(0,r.jsx)("span",{"data-slot":"breadcrumb-page",role:"link","aria-disabled":"true","aria-current":"page",className:(0,i.cn)("inline-flex min-h-6 items-center font-normal text-foreground",e),...t})}function c({children:e,className:a,...o}){return(0,r.jsx)("li",{"data-slot":"breadcrumb-separator",role:"presentation","aria-hidden":"true",className:(0,i.cn)("[&>svg]:size-3.5",a),...o,children:e??(0,r.jsx)(t.ChevronRight,{})})}e.s(["Breadcrumb",()=>o,"BreadcrumbItem",()=>s,"BreadcrumbLink",()=>n,"BreadcrumbList",()=>l,"BreadcrumbPage",()=>d,"BreadcrumbSeparator",()=>c],275117)},631055,e=>{"use strict";
1var r=e.i(187519),t=e.i(786646),a=e.i(990420),i=e.i(666021),o=e.i(393202),l=e.i(754219),s=e.i(167881),n=e.i(625959),d=e.i(630374),c=e.i(986530),g=e.i(23750),m=e.i(10708),u=e.i(581582),p=e.i(319036),f=e.i(449339),h=e.i(207761),b=e.i(325269),b=b,y=e.i(703018),x=e.i(647163),v=e.i(832356);let k=["image1","image2","image3","image4","image5"],C=["image/png","image/jpeg","image/jpg","image/webp"],j=[".png",".jpg",".jpeg",".webp"],S=/^https?:\/\/\S+/i,T=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,P=/^https?:\/\/\S+/i;function w(e){return"image2"===e||"image3"===e||"image4"===e||"image5"===e}function F(e){return"image1"===e||"image2"===e?1:"image3"===e||"image4"===e?2:3}let M=v.z.object({name:v.z.string().trim().min(1,"categoryTagPage.categories.form.validation.nameRequired"),slug:v.z.string().trim().optional().or(v.z.literal("")),isLink:v.z.boolean(),linkUrl:v.z.string().trim().optional().or(v.z.literal("")),template:v.z.enum(k,{errorMap:()=>({message:"categoryTagPage.categories.form.validation.templateRequired"})}),description:v.z.str
1ing().optional().or(v.z.literal("")),description2:v.z.string().optional().or(v.z.literal("")),description3:v.z.string().optional().or(v.z.literal("")),mediaUrl:v.z.string().trim().optional().or(v.z.literal("")),featuredOrder:v.z.number({invalid_type_error:"categoryTagPage.categories.form.validation.numberMin"}).int("categoryTagPage.categories.form.validation.numberMin").min(0,"categoryTagPage.categories.form.validation.numberMin"),shopListOrder:v.z.number({invalid_type_error:"categoryTagPage.categories.form.validation.numberMin"}).int("categoryTagPage.categories.form.validation.numberMin").min(0,"categoryTagPage.categories.form.validation.numberMin"),shopListMobileOrder:v.z.number({invalid_type_error:"categoryTagPage.categories.form.validation.numberMin"}).int("categoryTagPage.categories.form.validation.numberMin").min(0,"categoryTagPage.categories.form.validation.numberMin"),showImageInShop:v.z.boolean(),imageFile:v.z.custom(e=>null===e||e instanceof File,{message:"categoryTagPage.categories.form.validation.imageInvalid"}),removeImage:v.z.boolean(),existingImageUrl:v.z.string().nullable(),templateMediaFile:v.z.custom(e=>null===e||e instanceof File,{message:"categoryTagPage.categories.form.validation.imageInvalid"}),removeTemplateMedia:v.z.boolean(),existingTemplateMediaUrl:v.z.string().nullable()});function D(e){return e.trim().toLocaleLowerCase()}function L({file:e,isCompact:a,className:i}){let[o,l]=(0,t.useState)(null);(0,t.useEffect)(()=>{let r=!1,t=new FileReader;return t.onload=()=>{if(r)return;let e=t.result;"string"==typeof e&&l(e)},t.onerror=()=>{r||l(null)},t.readAsDataURL(e),()=>{r=!0}},[e]);let s=(0,x.cn)("shrink-0 rounded-md border border-border/50 bg-background object-cover shadow-sm",a?"h-14 w-20":"h-20 w-28",i);return o?(0,r.jsx)("img",{src:o,alt:"","aria-hidden":"true",className:s}):(0,r.jsx)("div",{className:(0,x.cn)(s,"animate-pulse bg-muted/50 bg-none"),"aria-hidden":"true"})}function I({file:e,existingImageUrl:t,onRemove:a,disabled:i=!1,shopVisibilityControl:o,variant:l="default"}){let{t:n}=(0,h.useI18n)(),d="compact"===l;return e||t?(0,r.jsx)("div",{className:"w-full",children:(0,r.jsxs)("div",{className:(0,x.cn)("flex flex-wrap items-center gap-3 rounded-lg border border-border/70 bg-muted/15 sm:flex-nowrap",d?"gap-2 p-2":"p-3"),children:[e?(0,r.jsx)(L,{file:e,isCompact:d},`${e.name}-${e.size}-${e.lastModified}`):(0,r.jsx)("img",{src:t??"",alt:"","aria-hidden":"true",className:(0,x.cn)("shrink-0 rounded-md border border-border/50 bg-background object-cover shadow-sm",d?"h-14 w-20":"h-20 w-28")}),(0,r.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col justify-center gap-2",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"truncate text-sm font-medium text-foreground",children:e?.name??n("categoryTagPage.categories.form.image.currentImage")}),e?(0,r.jsxs)("p",{className:"text-xs text-muted-foreground",children:[Math.round(e.size/1024)," KB"]}):null]}),o?(0,r.jsx)("div",{className:"flex items-center gap-2",children:o}):null]}),(0,r.jsx)(s.Button,{type:"button",variant:"ghost",size:"icon",className:"shrink-0 text-destructive hover:bg-destructive/10 hover:text-destructive",onClick:a,"aria-label":n("categoryTagPage.categories.form.image.remove"),disabled:i,children:(0,r.jsx)(y.Trash2Icon,{className:"size-4","aria-hidden":"true"})})]})}):null}function N({file:e,existingImageUrl:a,onFileChange:i,onRemoveExisting:o,onValidationError:l,disabled:n=!1,shopVisibilityControl:d,variant:c="default",showPreview:g=!0}){let{t:m}=(0,h.useI18n)(),u="compact"===c,p=(0,t.useRef)(null),[f,y]=(0,t.useState)(!1),v=g&&(!!e||!!a),k=(0,t.useMemo)(()=>C.join(","),[]),S=e=>{let r,t,a;if(!e||0===e.length)return;let o=e[0];r=C.includes(o.type),t=o.name.toLowerCase(),a=j.some(e=>t.endsWith(e)),(r||a?o.size>0x1400000&&(l("categoryTagPage.categories.form.image.sizeExceeded"),1):(l("categoryTagPage.categories.form.image.invalidType"),1))||i(o)},T=m(u?"categoryTagPage.categories.form.image.templateMediaDropzoneAriaLabel":"categoryTagPage.categories.form.image.dropzoneLabel"),P=m(u?"categoryTagPage.categories.form.image.templateMediaDropzoneLabel":"categoryTagPage.categories.form.image.dropzoneLabel");return(0,r.jsxs)("div",{className:(0,x.cn)("flex flex-col",u?"gap-2":"gap-3"),children:[(0,r.jsxs)("div",{role:"region","aria-label":T,onDrop:e=>{e.preventDefault(),y(!1),n||S(e.dataTransfer.files)},onDragOver:e=>{e.preventDefault(),n||y(!0)},onDragLeave:e=>{e.preventDefault(),y(!1)},className:(0,x.cn)("flex flex-col items-center justify-center rounded-md border border-dashed bg-muted/20 text-center transition-colors",u?"px-2 py-3":"px-4 py-6",f?"border-primary bg-primary/5":"border-border hover:border-primary/50",n&&"opacity-60"),children:[(0,r.jsx)("p",{className:(0,x.cn)("text-muted-foreground",u?"text-xs leading-snug":"text-sm"),children:P}),(0,r.jsxs)(s.Button,{type:"button",variant:"outline",size:"sm",className:(0,x.cn)("mt-2",u&&"h-8 text-xs"),onClick:()=>{n||p.current?.click()},disabled:n,children:[(0,r.jsx)(b.default,{className:(0,x.cn)("mr-1",u?"size-3.5":"size-4"),"aria-hidden":"true"}),m("categoryTagPage.categories.form.image.browse")]}),(0,r.jsx)("input",{ref:p,type:"file",accept:k,className:"sr-only",onChange:e=>{S(e.target.files),e.target.value=""},"aria-label":m("categoryTagPage.categories.form.image.browse")}),(0,r.jsx)("p",{className:(0,x.cn)("mt-2 text-muted-foreground",u?"text-[10px] leading-tight":"text-xs"),children:m("categoryTagPage.categories.form.image.hint")})]}),v?(0,r.jsx)(I,{file:e,existingImageUrl:a,onRemove:()=>
1{if(!n){if(e){i(null),p.current&&(p.current.value="");return}a&&o()}},disabled:n,shopVisibilityControl:d,variant:c}):null]})}var B=e.i(940173);function U({value:e,onChange:a,disabled:i=!1}){let{t:o}=(0,h.useI18n)(),l=(0,t.useRef)([]);return(0,r.jsx)("div",{role:"radiogroup","aria-label":o("categoryTagPage.categories.form.templatePicker.ariaLabel"),className:"grid w-full grid-cols-5 gap-2",children:k.map((t,s)=>{let n=t===e,d=s+1,c=o("categoryTagPage.categories.form.templatePicker.optionLabel",{number:d});return(0,r.jsxs)("button",{ref:e=>{l.current[s]=e},type:"button",role:"radio","aria-checked":n,"aria-label":c,tabIndex:n?0:-1,disabled:i,onClick:()=>a(t),onKeyDown:e=>((e,r)=>{if(i)return;let t=k.length-1,o=r;if("ArrowRight"===e.key||"ArrowDown"===e.key)e.preventDefault(),o=r===t?0:r+1;else if("ArrowLeft"===e.key||"ArrowUp"===e.key)e.preventDefault(),o=0===r?t:r-1;else if("Home"===e.key)e.preventDefault(),o=0;else{if("End"!==e.key)return;e.preventDefault(),o=t}a(k[o]),l.current[o]?.focus()})(e,s),className:(0,x.cn)("relative h-20 w-full min-w-0 overflow-hidden rounded-md border bg-muted/30 p-0.5 transition-colors sm:h-24","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",n?"border-primary ring-2 ring-primary/30":"border-border hover:border-primary/50",i&&"cursor-not-allowed opacity-60"),children:[(0,r.jsx)(B.default,{src:`/images/category/${d}.png`,alt:"","aria-hidden":"true",fill:!0,sizes:"(max-width: 640px) 20vw, 18vw",className:"object-contain object-center"}),(0,r.jsx)("span",{className:"sr-only",children:c})]},t)})})}var R=e.i(360446);function z(e,r,t=[]){if(!e)return"";for(let a of[r,...t]){let r=e[a];if("string"==typeof r)return r}return""}function A({mode:e,open:b,onOpenChange:y,parentId:x,currentLevel:k,flat:C,initialCategory:j,onSaveSuccess:L,skipShopCachesInvalidation:B}){let{t:A}=(0,h.useI18n)(),E=(0,o.useQueryClient)(),V=(0,t.useMemo)(()=>{var r;return r={mode:e},M.superRefine((e,t)=>{if(e.isLink){let r=(e.linkUrl??"").trim();r?S.test(r)||t.addIssue({code:v.z.ZodIssueCode.custom,path:["linkUrl"],message:"categoryTagPage.categories.form.validation.linkUrlFormat"}):t.addIssue({code:v.z.ZodIssueCode.custom,path:["linkUrl"],message:"categoryTagPage.categories.form.validation.linkUrlRequired"})}if("edit"===r.mode){let r=(e.slug??"").trim();r?T.test(r)||t.addIssue({code:v.z.ZodIssueCode.custom,path:["slug"],message:"categoryTagPage.categories.form.validation.slugFormat"}):t.addIssue({code:v.z.ZodIssueCode.custom,path:["slug"],message:"categoryTagPage.categories.form.validation.slugRequired"})}if(!e.isLink){let r=(e.mediaUrl??"").trim();if(w(e.template)){let a=e.templateMediaFile instanceof File,i=r.length>0&&P.test(r),o=!e.removeTemplateMedia&&(e.existingTemplateMediaUrl??"").trim().length>0;r.length>0&&!P.test(r)?t.addIssue({code:v.z.ZodIssueCode.custom,path:["mediaUrl"],message:"categoryTagPage.categories.form.validation.mediaUrlFormat"}):a||i||o||t.addIssue({code:v.z.ZodIssueCode.custom,path:["mediaUrl"],message:"categoryTagPage.categories.form.validation.templateMediaRequired"})}}})},[e]),O=(0,t.useMemo)(()=>(function(e,r){if("edit"===e&&r){let e=r.isLink?"image1":r.template??"image1",t=z(r.templateData,"mediaUrl",[]),a=function(e,r){if(!e)return"";for(let t of r){let r=e[t];if("string"==typeof r)return r;if(r&&"object"==typeof r){if("string"==typeof r.url&&r.url.length>0)return r.url;if("string"==typeof r.path&&r.path.length>0)return r.path}}return""}(r.templateData,["descriptionCImage","description_C_image","templateMedia"]);return{name:r.name,slug:r.slug,isLink:r.isLink,linkUrl:r.linkUrl??"",template:e,description:r.description??"",description2:z(r.templateData,"description2",["descriptionB","description_B"]),description3:z(r.templateData,"description3",["descriptionC","description_C"]),mediaUrl:t,featuredOrder:r.featuredOrder,shopListOrder:r.shopListOrder,shopListMobileOrder:r.shopListMobileOrder,showImageInShop:r.showImageInShop,imageFile:null,removeImage:!1,existingImageUrl:r.imageUrl,templateMediaFile:null,removeTemplateMedia:!1,existingTemplateMediaUrl:a.trim().length>0?a:null}}return{name:"",slug:"",isLink:!1,linkUrl:"",template:"image1",description:"",description2:"",description3:"",mediaUrl:"",featuredOrder:999,shopListOrder:999,shopListMobileOrder:999,showImageInShop:!1,imageFile:null,removeImage:!1,existingImageUrl:null,templateMediaFile:null,removeTemplateMedia:!1,existingTemplateMediaUrl:null}})(e,j),[e,j]),H=(0,a.useForm)({resolver:(0,i.zodResolver)(V),defaultValues:O,mode:"onSubmit"});(0,t.useEffect)(()=>{b&&H.reset(O)},[O,H,b]);let _=(0,a.useWatch)({control:H.control,name:"template"}),K=(0,a.useWatch)({control:H.control,name:"isLink"}),W=(0,a.useWatch)({control:H.control,name:"name"}),q=(0,a.useWatch)({control:H.control,name:"slug"}),Q=(0,a.useWatch)({control:H.control,name:"linkUrl"}),$=(0,a.useWatch)({control:H.control,name:"removeTemplateMedia"}),G=(0,a.useWatch)({control:H.control,name:"description"}),Z=(0,a.useWatch)({control:H.control,name:"description2"}),X=(0,a.useWatch)({control:H.control,name:"description3"}),Y=(0,a.useWatch)({control:H.control,name:"imageFile"}),J=(0,a.useWatch)({control:H.control,name:"existingImageUrl"}),ee=(0,a.useWatch)({control:H.control,name:"templateMediaFile"}),er=(0,a.useWatch)({control:H.control,name:"mediaUrl"}),et=(0,a.useWatch)({control:H.control,name:"existingTemplateMediaUrl"}),ea=(0,a.useWatch)({control:H.control,name:"showImageInShop"}),{isValid:ei}=(0,a.useFormState)({control:H.control});(0,t.useEffect)(()=>{b&&H.trigger()},[b,e,W,q,K,Q,_,G,Z,X,er,ee,et,$,H]);let eo=(0,t.useMemo)(()=>ee||(er??"").trim().length>0?null:et,[ee,er,et]),el=(er??"").trim().length>0,es=ee instanceof File,en=(0,t.useRef)(null);(0,t.useEffect)(()=>
1{if(!b){en.current=null;return}let e=en.current;null===e||e===_||w(_)||(H.setValue("templateMediaFile",null,{shouldDirty:!0}),H.setValue("removeTemplateMedia",!1,{shouldDirty:!0}),H.setValue("mediaUrl","",{shouldDirty:!0}),H.setValue("existingTemplateMediaUrl",null,{shouldDirty:!0})),en.current=_},[H,b,_]);let ed="create"===e&&k>R.MAX_CATEGORY_DEPTH,ec=(0,f.useCreateCategory)(),eg=(0,f.useUpdateCategory)(),em=ec.isPending||eg.isPending,eu="edit"===e?j?.parentId??null:x,ep=(0,t.useCallback)(r=>{let t=D(r);return!!t&&C.some(r=>("edit"!==e||!j||r.id!==j.id)&&(r.parentId??null)===(eu??null)&&D(r.name)===t)},[eu,C,j,e]),ef=(0,t.useCallback)((e,r)=>{switch(function(e){if(e&&"object"==typeof e&&"errorCode"in e){let r=e.errorCode;if("string"==typeof r&&r.length>0)return r}}(e)){case"SLUG_CONFLICT":l.toast.error(A("categoryTagPage.categories.form.errors.slugConflict"));return;case"CATEGORY_NAME_CONFLICT":l.toast.error(A("categoryTagPage.categories.errors.nameConflict"));return;case"MAX_CATEGORY_DEPTH_EXCEEDED":l.toast.error(A("categoryTagPage.categories.errors.maxDepth"));return;case"LINK_URL_REQUIRED":l.toast.error(A("categoryTagPage.categories.form.errors.linkUrlRequired"));return;case"INVALID_IMAGE_TYPE":l.toast.error(A("categoryTagPage.categories.form.errors.invalidImageType"));return;case"IMAGE_SIZE_EXCEEDED":l.toast.error(A("categoryTagPage.categories.form.errors.imageSizeExceeded"));return;case"CATEGORY_NOT_FOUND":l.toast.error(A("categoryTagPage.categories.errors.notFound"));return;default:l.toast.error(A(r))}},[A]),eh=(0,t.useCallback)(e=>{l.toast.error(A(e))},[A]),eb=e=>{em||y(e)},ey=H.handleSubmit(async r=>{var t;let a,i;if(ed)return void l.toast.error(A("categoryTagPage.categories.errors.maxDepth"));if(ep(r.name))return void H.setError("name",{type:"manual",message:"categoryTagPage.categories.form.validation.duplicateName"});let o=r.isLink?void 0:(a=F((t=r).template),i={},(a>=2&&(i.description2=t.description2??""),a>=3&&(i.description3=t.description3??""),w(t.template)&&(t.templateMediaFile instanceof File||t.removeTemplateMedia||(i.mediaUrl=(t.mediaUrl??"").trim())),0===Object.keys(i).length)?w(t.template)&&t.removeTemplateMedia?{}:void 0:i),s=!r.isLink&&w(r.template),n={name:r.name.trim(),description:r.description?.trim()?r.description:null,isLink:r.isLink,linkUrl:r.isLink&&(r.linkUrl??"").trim()||null,template:r.isLink?"image1":r.template,templateData:o,featuredOrder:r.featuredOrder,shopListOrder:r.shopListOrder,shopListMobileOrder:r.shopListMobileOrder,showImageInShop:r.showImageInShop,image:r.imageFile,templateMedia:s&&r.templateMediaFile instanceof File?r.templateMediaFile:void 0,removeTemplateMedia:!!s&&!!r.removeTemplateMedia||void 0};try{if("create"===e){await ec.mutateAsync({...n,name:r.name.trim(),parentId:x,featured:!1}),l.toast.success(A("categoryTagPage.categories.form.messages.createSuccess")),y(!1),(0,f.invalidateCategoriesQueries)(E,B?{skipShopCaches:!0}:void 0);return}if(!j)return;let t=await eg.mutateAsync({...n,id:j.id,slug:(r.slug??"").trim()||void 0,removeImage:r.removeImage||void 0});L?.(t),l.toast.success(A("categoryTagPage.categories.form.messages.updateSuccess")),y(!1),(0,f.invalidateCategoriesQueries)(E,B?{skipShopCaches:!0}:void 0)}catch(r){ef(r,"create"===e?"categoryTagPage.categories.form.errors.createFailed":"categoryTagPage.categories.form.errors.updateFailed")}}),ex="create"===e?A("categoryTagPage.categories.form.createTitle"):A("categoryTagPage.categories.form.editTitle"),ev="create"===e?A("categoryTagPage.categories.form.createDescription",{level:String(k)}):A("categoryTagPage.categories.form.editDescription"),ek=F(_),eC="image2"===_||"image4"===_,ej="image3"===_||"image5"===_,eS=(0,r.jsxs)(c.Field,{children:[(0,r.jsx)(c.FieldLabel,{children:A("categoryTagPage.categories.form.fields.image")}),(0,r.jsx)(c.FieldContent,{children:(0,r.jsx)(N,{file:Y,existingImageUrl:J,onFileChange:e=>{H.setValue("imageFile",e,{shouldDirty:!0,shouldValidate:!1}),e?H.setValue("removeImage",!1,{shouldDirty:!0}):H.setValue("showImageInShop",!1,{shouldDirty:!0})},onRemoveExisting:()=>{H.setValue("existingImageUrl",null,{shouldDirty:!0}),H.setValue("removeImage",!0,{shouldDirty:!0}),H.setValue("showImageInShop",!1,{shouldDirty:!0})},onValidationError:eh,disabled:em,shopVisibilityControl:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(p.Switch,{id:"category-form-show-image",checked:ea,onCheckedChange:e=>H.setValue("showImageInShop",e,{shouldDirty:!0}),disabled:em}),(0,r.jsx)(m.Label,{htmlFor:"category-form-show-image",className:"cursor-pointer text-xs font-normal leading-snug text-muted-foreground",children:A("categoryTagPage.categories.form.fields.showImageInShop")})]})})})]});return(0,r.jsx)(d.Dialog,{open:b,onOpenChange:eb,children:(0,r.jsxs)(d.DialogContent,{className:"flex max-h-[90vh] w-[min(960px,calc(100vw-2rem))] flex-col overflow-hidden p-0",children:[(0,r.jsxs)(d.DialogHeader,{className:"px-6 pt-6",children:[(0,r.jsx)(d.DialogTitle,{children:ex}),(0,r.jsx)(d.DialogDescription,{children:ev})]}),(0,r.jsxs)("form",{onSubmit:ey,className:"flex min-h-0 flex-1 flex-col",noValidate:!0,children:[(0,r.jsx)("div",{className:"flex-1 overflow-y-auto px-6 py-4",children:(0,r.jsxs)("div",{className:"flex flex-col gap-5",children:[ed?(0,r.jsx)("div",{role:"alert",className:"rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:A("categoryTagPage.categories.errors.maxDepth")}):null,(0,r.jsxs)(c.Field,{children:[(0,r.jsxs)(c.FieldLabel,{htmlFor:"category-form-name",children:[A("categoryTagPage.categories.form.fields.name"),(0,r.jsx)("span",{"aria-hidden":"true",className:"text-destructive",children:" *"})]}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-name",autoComplete:"off","aria-invalid":!!H.formState.errors.name,...H.register("name"),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.name?.message?[{message:A(H.formState.errors.name.message)}]:[]})]})]}),"edit"===e?(0,r.jsxs)(c.Field,{children:[(0,r.jsxs)(c.FieldLabel,{htmlFor:"category-form-slug",children:[A("categoryTagPage.categories.form.fields.slug"),(0,r.jsx)("span",{"aria-hidden":"true",className:"text-destructive",children:" *"})]}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-slug",autoComplete:"off","aria-invalid":!!H.formState.errors.slug,...H.register("slug",{onChange:e=>{H.setValue("slug",e.target.value.toLowerCase().trim().normalize("NFKD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,""),{shouldValidate:!1})}}),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.slug?.message?[{message:A(H.formState.errors.slug.message)}]:[]})]})]}):null,(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(n.Checkbox,{id:"category-form-is-link",checked:K,onCheckedChange:e=>{let r=!0===e;H.setValue("isLink",r,{shouldValidate:!1}),r&&H.setValue("template","image1",{shouldValidate:!1})},disabled:em}),(0,r.jsx)(m.Label,{htmlFor:"category-form-is-link",className:"text-sm font-normal",children:A("categoryTagPage.categories.form.fields.isLink")})]}),K?(0,r.jsxs)(c.Field,{children:[(0,r.jsxs)(c.FieldLabel,{htmlFor:"category-form-link-url",children:[A("categoryTagPage.categories.form.fields.linkUrl"),(0,r.jsx)("span",{"aria-hidden":"true",className:"text-destructive",children:" *"})]}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-link-url",type:"url",inputMode:"url",autoComplete:"off",placeholder:"https://","aria-invalid":!!H.formState.errors.linkUrl,...H.register("linkUrl"),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.linkUrl?.message?[{message:A(H.formState.errors.linkUrl.message)}]:[]})]})]}):null,K?null:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(c.Field,{children:[(0,r.jsx)(c.FieldLabel,{children:A("categoryTagPage.categories.form.fields.template")}
1),(0,r.jsx)(c.FieldContent,{children:(0,r.jsx)(U,{value:_,onChange:e=>H.setValue("template",e,{shouldDirty:!0,shouldValidate:!1}),disabled:em})})]}),(0,r.jsx)("div",{className:"flex flex-col gap-5",children:Array.from({length:ek},(t,a)=>(t=>{let a,i,o,l=1===t,s=2===t,n=1===t?"description":2===t?"description2":"description3",d=1===t?G:2===t?Z:X,m=1===t?H.formState.errors.description?.message:2===t?H.formState.errors.description2?.message:H.formState.errors.description3?.message,p=(0,r.jsxs)(c.Field,{children:[(0,r.jsxs)(c.FieldLabel,{children:[A(1===t?"categoryTagPage.categories.form.fields.description":2===t?"categoryTagPage.categories.form.fields.description2":"categoryTagPage.categories.form.fields.description3"),null]}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(u.RichTextEditor,{value:d||"",onChange:e=>H.setValue(n,e,{shouldDirty:!0,shouldValidate:!1}),placeholder:A("categoryTagPage.categories.form.placeholders.description"),disabled:em}),(0,r.jsx)(c.FieldError,{errors:m?[{message:A(m)}]:[]})]})]});return(l?eC:!!s&&ej)?(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-[minmax(0,1.5fr)_minmax(0,1fr)] lg:items-stretch",children:[(0,r.jsx)("div",{className:"min-h-0",children:p}),(0,r.jsx)("div",{className:"flex min-h-0 flex-col justify-center lg:h-full lg:min-h-0",children:(a=!!ee||!!eo,i=el&&!es?A("categoryTagPage.categories.form.image.uploadDisabledBecauseUrl"):es?A("categoryTagPage.categories.form.image.urlDisabledBecauseFile"):A("categoryTagPage.categories.form.image.mediaUrlEmptyHint"),o=w(_),(0,r.jsxs)(c.Field,{className:"w-full min-h-0 gap-1",children:[(0,r.jsxs)(c.FieldLabel,{htmlFor:"category-form-template-media-url",className:"leading-snug",children:[A("categoryTagPage.categories.form.fields.mediaUrl"),o?(0,r.jsx)("span",{"aria-hidden":"true",className:"text-destructive",children:" *"}):null]}),(0,r.jsxs)(c.FieldContent,{className:"min-h-0 flex flex-col gap-2",children:[(0,r.jsx)(g.Input,{id:"category-form-template-media-url",type:"url",inputMode:"url",placeholder:"https://","aria-invalid":!!H.formState.errors.mediaUrl,...H.register("mediaUrl",{onChange:e=>{let r=e.target.value;H.setValue("mediaUrl",r,{shouldDirty:!0,shouldValidate:!1}),r.trim().length>0&&(H.setValue("templateMediaFile",null,{shouldDirty:!0,shouldValidate:!1}),H.setValue("removeTemplateMedia",!1,{shouldDirty:!0}))}}),disabled:em||es}),(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:i}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.mediaUrl?.message?[{message:A(H.formState.errors.mediaUrl.message)}]:[]}),(0,r.jsxs)("p",{className:"text-sm font-medium text-foreground",children:[A("categoryTagPage.categories.form.image.templateMediaSectionTitle"),o?(0,r.jsx)("span",{"aria-hidden":"true",className:"text-destructive",children:" *"}):null]}),(0,r.jsx)(N,{variant:"compact",showPreview:!1,file:ee,existingImageUrl:eo,onFileChange:e=>{H.setValue("templateMediaFile",e,{shouldDirty:!0,shouldValidate:!1}),H.setValue("removeTemplateMedia",!1,{shouldDirty:!0}),e&&(H.setValue("mediaUrl","",{shouldDirty:!0}),H.setValue("existingTemplateMediaUrl",null,{shouldDirty:!0}))},onRemoveExisting:()=>{H.setValue("templateMediaFile",null,{shouldDirty:!0}),H.setValue("mediaUrl","",{shouldDirty:!0}),H.setValue("existingTemplateMediaUrl",null,{shouldDirty:!0}),"edit"===e&&H.setValue("removeTemplateMedia",!0,{shouldDirty:!0})},onValidationError:eh,disabled:em||el}),a?(0,r.jsx)("div",{className:"mt-3 border-t border-border/60 pt-3",children:(0,r.jsx)(I,{variant:"compact",file:ee??null,existingImageUrl:eo,onRemove:()=>{ee instanceof File?H.setValue("templateMediaFile",null,{shouldDirty:!0,shouldValidate:!1}):(H.setValue("templateMediaFile",null,{shouldDirty:!0,shouldValidate:!1}),H.setValue("mediaUrl","",{shouldDirty:!0}),H.setValue("existingTemplateMediaUrl",null,{shouldDirty:!0}),"edit"===e&&H.setValue("removeTemplateMedia",!0,{shouldDirty:!0}))},disabled:em})}):null]})]}))})]},t):(0,r.jsx)("div",{children:p},t)})(a+1))})]}),K?eS:null,(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-3",children:[(0,r.jsxs)(c.Field,{children:[(0,r.jsx)(c.FieldLabel,{htmlFor:"category-form-shop-order",children:A("categoryTagPage.categories.form.fields.shopListOrder")}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-shop-order",type:"number",min:0,inputMode:"numeric","aria-invalid":!!H.formState.errors.shopListOrder,...H.register("shopListOrder",{valueAsNumber:!0}),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.shopListOrder?.message?[{message:A(H.formState.errors.shopListOrder.message)}]:[]})]})]}),(0,r.jsxs)(c.Field,{children:[(0,r.jsx)(c.FieldLabel,{htmlFor:"category-form-mobile-order",children:A("categoryTagPage.categories.form.fields.shopListMobileOrder")}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-mobile-order",type:"number",min:0,inputMode:"numeric","aria-invalid":!!H.formState.errors.shopListMobileOrder,...H.register("shopListMobileOrder",{valueAsNumber:!0}),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.shopListMobileOrder?.message?[{message:A(H.formState.errors.shopListMobileOrder.message)}]:[]})]})]}),(0,r.jsxs)(c.Field,{children:[(0,r.jsx)(c.FieldLabel,{htmlFor:"category-form-featured-order",children:A("categoryTagPage.categories.form.fields.featuredOrder")}),(0,r.jsxs)(c.FieldContent,{children:[(0,r.jsx)(g.Input,{id:"category-form-featured-order",type:"number",min:0,inputMode:"numeric","aria-invalid":!!H.formState.errors.featuredOrder,...H.register("featuredOrder",{valueAsNumber:!0}),disabled:em}),(0,r.jsx)(c.FieldError,{errors:H.formState.errors.featuredOrder?.message?[{message:A(H.formState.errors.featuredOrder.message)}]:[]})]})]})]}),K?null:eS]})}),(0,r.jsxs)(d.DialogFooter,{className:"border-t px-6 py-4",children:[(0,r.jsx)(s.Button,{type:"button",variant:"outline",onClick:()=>eb(!1),disabled:em,children:A("categoryTagPage.categories.common.cancel")}),(0,r.jsx)(s.Button,{type:"submit",disabled:em||ed||!ei,children:"create"===e?A("categoryTagPage.categories.form.submit.create"):A("categoryTagPage.categories.form.submit.save")})]})]})]})})}e.s(["CategoriesFormDialog",()=>A],631055)},697235,e=>{"use strict";var r=e.i(187519);e.i(977617);var t=e.i(234662),a=e.i(849329),i=e.i(393202),o=e.i(621370),l=e.i(987208),s=e.i(786646),n=e.i(754219),d=e.i(631055),c=e.i(167881),g=e.i(275117),m=e.i(162539),u=e.i(449339),p=e.i(722722),f=e.i(847294),h=e.i(808301),b=e.i(399578),y=e.i(207761),x=e.i(800100),v=e.i(22335),k=e.i(77426),C=e.i(910209),j=e.i(993226),S=e.i(596882),T=e.i(472311);function P({slug:e,initialCategory:P=null,initialCategoryName:w="",pageDesign:F=null,
1standardCategoryFallback:M=!1,reusableComponentsById:D={}}){let{t:L}=(0,y.useI18n)(),I=(0,l.useRouter)(),N=(0,l.useSearchParams)(),B=(0,i.useQueryClient)(),U=(0,h.useAuthHydration)(),R=(0,j.useAuthStore)(e=>e.accessToken),z=(0,j.useAuthStore)(e=>e.isAuthenticated&&!!e.accessToken),A=(0,j.useAuthStore)(e=>e.role),E=(0,S.useProfileStore)(e=>e.isLoading),V=(0,S.useProfileStore)(e=>e.me?.role),[O]=(0,s.useState)(()=>P?Date.now():void 0),H=(0,a.useQuery)({queryKey:(0,p.getShopCategoryBySlugQueryKey)(e),queryFn:({signal:r})=>(0,p.getShopCategoryBySlug)(e,{signal:r}),enabled:e.length>0,retry:!1,initialData:P??void 0,initialDataUpdatedAt:O}),_=H.data,K="string"==typeof V?V:null,W=R?(0,b.getRoleFromAccessToken)(R)??A??K:K,q=W===T.UserRole.SUPERADMIN||W===T.UserRole.ADMIN||W===T.UserRole.EDITOR,Q=U&&z&&!!R&&!E&&q,$=Q&&W===T.UserRole.SUPERADMIN,{data:G,isPending:Z}=(0,u.useCategoriesFlat)({enabled:Q&&!!_?.id&&e.length>0&&H.isSuccess}),X=(0,s.useMemo)(()=>G??[],[G]),Y=(0,s.useMemo)(()=>_?.id?X.find(e=>e.id===_.id)??null:null,[_,X]),[J,ee]=(0,s.useState)(!1),er=(0,s.useRef)(!1);(0,s.useEffect)(()=>{if(!H.isSuccess||!_||!_.isLink||!_.linkUrl?.trim())return;let e=_.linkUrl.trim();e.startsWith("http://")||e.startsWith("https://")?window.location.assign(e):e.startsWith("/")&&I.replace(e)},[H.isSuccess,_,I]);let et=(0,s.useCallback)(()=>{B.invalidateQueries({queryKey:(0,u.getCategoriesFlatQueryKey)()}),B.invalidateQueries({queryKey:(0,p.getShopCategoryBySlugQueryKey)(e)}),B.invalidateQueries({queryKey:(0,f.getShopCategoriesQueryKey)()}),B.invalidateQueries({predicate:r=>{let t=r.queryKey;return Array.isArray(t)&&"shop"===t[0]&&"categories"===t[1]&&t[2]===e&&"products"===t[3]}})},[B,e]),ea=(0,s.useCallback)(e=>{e&&(B.removeQueries({queryKey:(0,p.getShopCategoryBySlugQueryKey)(e)}),B.removeQueries({predicate:r=>{let t=r.queryKey;return Array.isArray(t)&&"shop"===t[0]&&"categories"===t[1]&&t[2]===e&&"products"===t[3]}}))},[B]),ei=(0,s.useCallback)(r=>{let t=r.slug.trim();if(!t||t===e)return void et();er.current=!0,ea(e),B.invalidateQueries({queryKey:(0,f.getShopCategoriesQueryKey)()});let a=N.toString(),i=a?`/shop/categories/${encodeURIComponent(t)}?${a}`:`/shop/categories/${encodeURIComponent(t)}`;I.replace(i,{scroll:!1})},[et,B,ea,I,N,er,e]),eo=(0,s.useCallback)(e=>{if(ee(e),!e){if(er.current){er.current=!1;return}et()}},[et,ee,er]);e||(0,l.notFound)(),H.isFetched&&H.isError&&(0,p.isShopCategoryNotFoundApiError)(H.error)&&(0,l.notFound)();let el={pageType:"category",categorySlug:e,categoryName:_?.name??"",categoryId:_?.id??"",reusableComponentsById:D},es=(0,s.useMemo)(()=>F&&M?(0,v.withStandardCategoryProductListingControls)(F):F,[F,M]),en=es?(0,k.filterPublicPageBuilderData)(es,el):null,ed=en?.content.length?en:(0,k.filterPublicPageBuilderData)((0,v.createStandardCategoryPageBuilderData)(),el),ec=w.trim()||_?.name?.trim()||e.replaceAll("-"," ").trim()||e;return(0,r.jsxs)(r.Fragment,{children:[ec?(0,r.jsx)("h1",{className:"sr-only",children:ec}):null,(0,r.jsx)(m.QueryStateHandler,{isLoading:H.isPending,isError:H.isError&&!(0,p.isShopCategoryNotFoundApiError)(H.error),onRetry:()=>H.refetch(),loadingLabel:L("shopCategoryDetail.loadingCategory"),errorLabel:L("shopCategoryDetail.loadCategoryError"),variant:"page",children:_?(0,r.jsxs)("div",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-6 sm:pt-8 lg:px-8",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-x-4 gap-y-2",children:[(0,r.jsx)("div",{className:"min-w-0 flex-1",children:(0,r.jsx)(g.Breadcrumb,{"aria-label":L("shopCategoriesPage.breadcrumbAriaLabel"),children:(0,r.jsx)(g.BreadcrumbList,{children:_.breadcrumbs.map((e,t)=>{let a=t===_.breadcrumbs.length-1,i=(0,C.resolveShopSameTabHref)(e.url);return(0,r.jsxs)(s.Fragment,{children:[(0,r.jsx)(g.BreadcrumbItem,{children:a?(0,r.jsx)(g.BreadcrumbPage,{children:e.label}):(0,C.isAppRelativeShopHref)(i)?(0,r.jsx)(g.BreadcrumbLink,{asChild:!0,className:"text-malimo-blue hover:text-malimo-blue/80",children:(0,r.jsx)(o.default,{href:i,children:e.label})}):(0,r.jsx)(g.BreadcrumbLink,{asChild:!0,className:"text-malimo-blue hover:text-malimo-blue/80",children:(0,r.jsx)("a",{href:i,className:"transition-colors",rel:"noreferrer",children:e.label})})}),a?null:(0,r.jsx)(g.BreadcrumbSeparator,{})]},`${e.url}-${t}`)})})})}),Q||$?(0,r.jsxs)("div",{className:"flex shrink-0 flex-wrap items-start gap-2 self
1-start",children:[Q?(0,r.jsx)(c.Button,{type:"button",variant:"outline",className:"shrink-0",disabled:Z,onClick:()=>{if(!Z){if(!Y)return void n.toast.error(L("shopCategoryDetail.editLoadError"));ee(!0)}},children:L("shopCategoryDetail.edit")}):null,$?(0,r.jsx)(c.Button,{asChild:!0,variant:"outline",className:"shrink-0",children:(0,r.jsx)(o.default,{href:`/admin/page-designs/category?scopeKey=${encodeURIComponent(e)}`,"aria-label":L("shopCategoryDetail.editPageDesignAriaLabel",{category:_.name}),children:L("shopCategoryDetail.editPageDesign")})}):null]}):null]}),(0,r.jsx)(t.Render,{config:x.pageBuilderConfig,data:ed,metadata:el}),Q&&Y?(0,r.jsx)(d.CategoriesFormDialog,{mode:"edit",open:J,onOpenChange:eo,parentId:Y.parentId,currentLevel:Y.level,flat:X,initialCategory:Y,onSaveSuccess:ei,skipShopCachesInvalidation:!0}):null]}):null})]})}e.s(["ShopCategoryDetailPageContent",()=>P])},933363,e=>{e.v(r=>Promise.all(["static/chunks/862447283bcb8b9d.js"].map(r=>e.l(r))).then(()=>r(201310)))},528265,e=>{e.v(r=>Promise.all(["static/chunks/df255510542756b4.js"].map(r=>e.l(r))).then(()=>r(928732)))},556287,e=>{e.v(r=>Promise.all(["static/chunks/632d22d5425302de.js"].map(r=>e.l(r))).then(()=>r(349734)))},335651,e=>{e.v(r=>Promise.all(["static/chunks/a7eb94be2f0566bd.js"].map(r=>e.l(r))).then(()=>r(634437)))},231701,e=>{e.v(r=>Promise.all(["static/chunks/3e35ac3e38b6d7f1.js"].map(r=>e.l(r))).then(()=>r(350564)))},888968,e=>{e.v(r=>Promise.all(["static/chunks/1f7306ea4ce19025.js"].map(r=>e.l(r))).then(()=>r(941938)))}]);

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.