@nd-storybook/storybook 0.3.96 → 0.3.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -105,7 +105,7 @@ Valid keys: `+JSON.stringify(Object.keys(a),null," "));var y=q(T,z,S,V,W+"."+z,
105
105
  .artikel-cadeau-badge-gray [class*="bg-background-brand"] {
106
106
  background-color: #9ca3af !important;
107
107
  }
108
- `}),g.jsx(LA,{isOpen:e,onClose:l,heading:"Artikel delen",children:g.jsx(g.Fragment,{children:g.jsxs("div",{className:"flex flex-col gap-m bg-background-default text-text-default",children:[g.jsxs("div",{className:"grid grid-cols-2 gap-s",children:[g.jsx(hA,{variant:"card",label:"Door abonnees te lezen",heading:"Standaard delen",name:"shareType",value:"standard",checked:n==="standard",onChange:()=>i("standard")}),g.jsx("div",{className:r<=0?"artikel-cadeau-badge-gray":"",children:g.jsx(hA,{variant:"card",label:"Door iedereen te lezen",heading:"Als cadeau",badgeText:r.toString(),name:"shareType",value:"gift",checked:n==="gift",onChange:()=>i("gift")})})]}),g.jsx("div",{className:"text-body-light text-text-default",children:n==="gift"?r<=0?g.jsx("p",{children:"Je hebt deze maand al je artikelen cadeau gegeven."}):g.jsxs(g.Fragment,{children:[g.jsxs("p",{children:["Geef ",g.jsx("span",{className:"text-body-bold",children:"7 dagen"})," gratis toegang tot dit artikel."]}),g.jsxs("p",{children:["Je kunt deze maand nog ",g.jsxs("span",{className:"text-body-bold",children:[r," artikelen"]})," cadeau geven."]})]}):g.jsx("p",{children:"Deel dit artikel met een ND-abonnee. Niet-abonnees krijgen een betaalmuur te zien."})}),g.jsx("div",{className:"grid grid-cols-2 gap-xs",children:w.map((v,b)=>g.jsxs("button",{onClick:()=>h(v.platform),disabled:x,className:`flex items-center gap-s p-xs border transition-colors ${x?"border-border-gray-subtle bg-background-default cursor-not-allowed opacity-50":"border-border-gray-subtle hover:border-border-brand bg-background-default"}`,children:[g.jsx($,{name:v.iconName,size:"s",color:"default",variant:"outline"}),g.jsx("span",{className:"text-body-light text-text-default",children:v.label})]},b))})]})})}),g.jsx(ug,{message:u.message,visible:u.visible,onClose:s})]})},le=({isBookmarked:A,likeCount:C,commentCount:E,shareCount:B,commentsTargetId:Q="comments",showListen:I=!0,audioSrc:e,onBookmark:t,onGift:n,onShare:i,onListen:r,onComment:o,remainingGifts:u,onShareAsGift:d,onShareAsStandard:s,showLikes:l=!0,showComments:w=!0,showShare:x=!0,showGift:h=!0,showBookmark:v=!0,isLiked:b,onLike:f,giftLimit:p,className:F})=>{const[Y,k]=c.useState(!1),[D,R]=c.useState(!1),[H,G]=c.useState(!1),[O,M]=c.useState(!1),[P,K]=c.useState("standard"),[L,J]=c.useState(0),a=c.useRef(null),m=A??Y,N=()=>{const q=!m;A===void 0&&k(q),t==null||t(q)},U=()=>{var q;(q=document.getElementById(Q))==null||q.scrollIntoView({behavior:"smooth"}),o==null||o()},S=()=>{G(q=>!q),r==null||r()},V=()=>{K("standard"),J(q=>q+1),M(!0),i==null||i()},W=()=>{K("gift"),J(q=>q+1),M(!0),n==null||n()};c.useEffect(()=>{if(!D)return;const q=CA=>{a.current&&!a.current.contains(CA.target)&&R(!1)},y=CA=>{CA.key==="Escape"&&R(!1)};return document.addEventListener("mousedown",q),document.addEventListener("keydown",y),()=>{document.removeEventListener("mousedown",q),document.removeEventListener("keydown",y)}},[D]);const T=()=>{w?U():l&&(f==null||f())},Z=l||w?g.jsx(_,{variant:"pill",iconLeft:"heart",iconLeftVariant:b?"fill":"outline",iconRight:w?"arrow-down":void 0,isActive:b??!1,onClick:T,"aria-label":`Ga naar reacties (${C??0} likes, ${E??0} reacties)`,className:"max-[339px]:!px-xs",label:g.jsxs("span",{className:"inline-flex items-center gap-xs max-[339px]:gap-xxs",children:[l&&C!==void 0&&g.jsx("span",{children:C}),w&&g.jsxs(g.Fragment,{children:[g.jsx($,{name:"chat",size:"s",color:"gray",variant:"outline"}),E!==void 0&&g.jsx("span",{children:E})]})]})}):null,z=x?g.jsx(_,{variant:"pill",iconLeft:"share",iconOnly:B===void 0,isActive:!1,onClick:V,"aria-label":"Deel",className:"max-[339px]:!px-xs",label:B!==void 0?g.jsx("span",{children:B}):"Deel"}):null;return g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:`hidden md:flex flex-wrap items-center gap-xxs ${F??""}`,children:[I&&g.jsx(_,{variant:"pill",iconLeft:"headphones",label:"Luister",isActive:H,onClick:S}),Z,z,h&&g.jsx(_,{variant:"pill",iconLeft:"gift",label:"Cadeau",isActive:!1,onClick:W}),v&&g.jsx(_,{variant:"pill",iconLeft:"bookmark",label:m?"Opgeslagen":"Leeslijst",isActive:m,onToggle:N})]}),g.jsxs("div",{className:`flex md:hidden flex-wrap items-center gap-xxs ${F??""}`,children:[I&&g.jsxs(g.Fragment,{children:[g.jsx(_,{variant:"pill",iconLeft:"headphones",label:"Luister",isActive:H,onClick:S,className:"max-[399px]:hidden"}),g.jsx(_,{variant:"pill",iconLeft:"headphones",iconOnly:!0,label:"Luister",isActive:H,onClick:S,className:"min-[400px]:hidden"})]}),Z,z,(h||v)&&g.jsxs("div",{className:"relative ml-auto",ref:a,children:[g.jsx(_,{variant:"pill",iconLeft:"dots-vertical",iconLeftVariant:"fill",iconOnly:!0,label:"Meer acties",isActive:D,onClick:()=>R(q=>!q),"aria-haspopup":"menu","aria-expanded":D,"aria-label":"Meer acties"}),D&&g.jsxs("div",{role:"menu",className:"absolute right-0 z-10 mt-xxs min-w-[180px] flex flex-col rounded-m border-s border-border-gray-subtle bg-background-default shadow-lg py-xxs",children:[h&&g.jsxs("button",{role:"menuitem",onClick:()=>{W(),R(!1)},className:"flex items-center gap-s px-s py-xs text-body-light text-text-default hover:bg-background-gray-subtle transition-colors",children:[g.jsx($,{name:"gift",size:"s",color:"gray",variant:"outline"}),g.jsx("span",{children:"Geef cadeau"})]}),v&&g.jsxs("button",{role:"menuitem",onClick:()=>{N(),R(!1)},className:"flex items-center gap-s px-s py-xs text-body-light text-text-default hover:bg-background-gray-subtle transition-colors",children:[g.jsx($,{name:"bookmark",size:"s",color:"gray",variant:m?"fill":"outline"}),g.jsx("span",{children:m?"Opgeslagen":"Leeslijst"})]})]})]})]}),H&&e&&g.jsx(kC,{src:e,variant:"plain",className:"mt-s"}),g.jsx(YE,{isOpen:O,defaultMode:P,onClose:()=>M(!1),remainingGifts:u,onShareAsGift:d,onShareAsStandard:s},L)]})},ce=6,ue=({searchTerm:A,categories:C,selectedFilters:E=[],onFilterSelect:B,onFilterRemove:Q,sortOptions:I=[],sortValue:e,onSortChange:t,maxVisible:n=ce})=>{const[i,r]=c.useState(!1),[o,u]=c.useState(!1),[d,s]=c.useState({}),l=h=>{r(h),h&&u(!1)},w=h=>{u(h),h&&r(!1)},x=h=>{s(v=>({...v,[h]:!v[h]}))};return g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("h1",{className:"text-heading-xl text-text-default",children:["Zoekresultaten voor: ",g.jsx("span",{className:"text-heading-light",children:A})]}),g.jsxs("div",{className:"flex gap-xs",children:[g.jsx(_,{variant:"pill",label:"Filteren",iconLeft:"funnel",isActive:i,onToggle:l}),g.jsx(yA,{variant:"pill",label:"Sorteren",options:I,value:e,onChange:t,isOpen:o,onOpenChange:w})]}),i&&g.jsx(aA,{borderColor:"gray-subtle",padding:"m",children:g.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-l",children:C.map(h=>{const v=d[h.name]??!1,b=v?h.options:h.options.slice(0,n),f=h.options.length>n;return g.jsxs("div",{className:"flex flex-col gap-xs",children:[g.jsx("span",{className:"text-heading-m text-text-default",children:h.name}),b.map(p=>{const F=E.includes(p.label);return g.jsxs("button",{onClick:()=>B==null?void 0:B(p.label),className:"flex items-center justify-between gap-xs text-left hover:text-text-brand",children:[g.jsx("span",{className:F?"text-body-bold text-text-default":"text-body-light text-text-default",children:p.label}),g.jsx(FA,{variant:"default",label:p.count.toString()})]},p.label)}),f&&g.jsxs("button",{onClick:()=>x(h.name),className:"flex items-center gap-xxs text-meta-regular text-text-gray hover:text-text-default",children:[g.jsx("span",{children:v?"Minder tonen":"Meer tonen"}),g.jsx($,{name:"caret-down",size:"s",color:"gray",className:`transition-transform duration-200 ${v?"rotate-180":""}`})]})]},h.name)})})}),E.length>0&&g.jsx("div",{className:"flex flex-wrap gap-xs",children:E.map(h=>g.jsx(LE,{label:h,onRemove:()=>Q==null?void 0:Q(h)},h))})]})},de=[{label:"Geen krant ontvangen",value:"geen-krant"},{label:"Krant te laat bezorgd",value:"te-laat"},{label:"Verkeerde krant bezorgd",value:"verkeerde-krant"},{label:"Beschadigde krant",value:"beschadigd"}],NE=[0,7];function fe(A){const C=A.split("/");if(C.length!==3)return!1;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())||NE.includes(I.getMonth())||I.getDay()!==6?!1:I.getDate()<=7}function we(A,C){const E=new Date(A,C,1);for(;E.getDay()!==6;)E.setDate(E.getDate()+1);return E}function ve(A){const C=[],E=new Date;let B=E.getFullYear(),Q=E.getMonth();for(;C.length<A;){if(!NE.includes(Q)){const I=we(B,Q);(Q===6||Q===11)&&I.setDate(I.getDate()+7),I<=E&&C.push(I)}Q--,Q<0&&(Q=11,B--)}return C.map(I=>{const e=I.getFullYear(),t=String(I.getMonth()+1).padStart(2,"0"),n=String(I.getDate()).padStart(2,"0");return{label:I.toLocaleDateString("nl-NL",{day:"numeric",month:"long",year:"numeric"}),value:`${e}-${t}-${n}T00:00:00.000Z`}})}const he=ve(3),xe=({onSubmit:A})=>{const[C,E]=c.useState("krant"),[B,Q]=c.useState(""),[I,e]=c.useState(""),[t,n]=c.useState(!1),[i,r]=c.useState(!1),[o,u]=c.useState(!1),[d,s]=c.useState(!1),[l,w]=c.useState(""),[x,h]=c.useState({});c.useEffect(()=>{function p(F){s(!1),F.detail.success?(u(!0),w("")):w(F.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("bezorgklacht-result",p),()=>window.removeEventListener("bezorgklacht-result",p)},[]);const v=fe(B);function b(){const p={};if(C==="krant"&&(B||(p.datum="Vul een editiedatum in."),I||(p.klacht="Selecteer een klacht.")),C==="dnk"&&(B||(p.datum="Selecteer een editie.")),Object.keys(p).length>0){h(p);return}s(!0),w("");const F=C==="krant"?{melding:C,datum:B,klacht:I,verlengen:t,perPost:i}:{melding:C,datum:B,perPost:i};window.dispatchEvent(new CustomEvent("bezorgklacht-submit",{detail:F})),A==null||A(F)}function f(){E("krant"),Q(""),e(""),n(!1),r(!1),h({}),w(""),u(!1)}return o?g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx(QA,{children:"Hartelijk dank voor je melding. Wij nemen je klacht serieus en hebben deze direct doorgegeven aan onze bezorgdienst. Onze excuses voor het ongemak."}),g.jsx("div",{children:g.jsx(_,{variant:"secondary",label:"Nieuwe melding",iconLeft:"plus",onClick:f})})]}):g.jsxs("div",{className:"flex flex-col gap-l",children:[g.jsxs("p",{className:"text-body-light text-text-default [&_a]:underline",children:["Is je krant of De Nieuwe Koers niet (goed) bezorgd? Dat is vervelend en niet de bedoeling. Onze excuses daarvoor. Lees hier ",C==="dnk"?g.jsx("a",{href:"https://www.nd.nl/reader?tab=dnk",children:"De Nieuwe Koers"}):i?g.jsxs(g.Fragment,{children:["de ",g.jsx("a",{href:"https://www.nd.nl/reader",children:"krant"})," en ",g.jsx("a",{href:"https://www.nd.nl/reader?tab=dnk",children:"De Nieuwe Koers"})]}):g.jsxs(g.Fragment,{children:["de ",g.jsx("a",{href:"https://www.nd.nl/reader",children:"krant"})]})," digitaal of geef via onderstaand formulier een bezorgmelding door. Wij sturen je bezorgmelding direct door naar onze bezorgdienst om de bezorging te verbeteren."]}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("span",{className:"text-body-bold text-text-default",children:"Mijn melding gaat over"}),g.jsxs("div",{className:"grid grid-cols-2 gap-s",children:[g.jsx(hA,{variant:"card",heading:"De krant",label:"Eventueel in combinatie met De Nieuwe Koers",checked:C==="krant",onChange:()=>{E("krant"),Q("")}}),g.jsx(hA,{variant:"card",heading:"De Nieuwe Koers",label:"De krant is wel goed bezorgd",checked:C==="dnk",onChange:()=>E("dnk")})]})]}),C==="krant"&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Editiedatum",value:B,setValue:p=>{Q(p),h(F=>({...F,datum:void 0}))},datePicker:!0,maxDate:new Date,errors:x.datum?[x.datum]:null}),g.jsx(yA,{label:"Selecteer je klacht",options:de,value:I,onChange:p=>{e(p),h(F=>({...F,klacht:void 0}))},errors:x.klacht?[x.klacht]:null}),(I==="geen-krant"||I==="verkeerde-krant")&&g.jsxs(g.Fragment,{children:[g.jsx($A,{label:"Ik wil mijn abonnement met een dag verlengen",checked:t,onChange:p=>{const F=p.target.checked;n(F),F&&r(!1)}}),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx($A,{label:v?"Ik wil de krant en De Nieuwe Koers per post ontvangen":"Ik wil de krant per post ontvangen",checked:i,onChange:p=>{const F=p.target.checked;r(F),F&&n(!1)}}),i&&g.jsx(QA,{children:'Let op: levering kan enkele dagen duren. De <a href="https://www.nd.nl/reader">digitale krant</a> is direct beschikbaar indien dit onderdeel is van je abonnement.'})]})]})]}),C==="dnk"&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(yA,{label:"Gemiste editie",options:he,value:B,onChange:p=>{Q(p),h(F=>({...F,datum:void 0}))},errors:x.datum?[x.datum]:null}),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx($A,{label:"Ik wil deze editie per post ontvangen.",checked:i,onChange:p=>r(p.target.checked)}),i&&g.jsx(QA,{children:'Let op: levering kan enkele dagen duren. <a href="https://www.nd.nl/reader?tab=dnk">De Nieuwe Koers</a> is ook digitaal beschikbaar indien dit onderdeel is van je abonnement.'})]})]}),l&&g.jsx(QA,{variant:"warning",children:l}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:b,disabled:d})})]})},pe=({onSubmit:A})=>g.jsx(eC,{variant:"large",items:[{label:"Bezorgklacht doorgeven",content:g.jsx(xe,{onSubmit:A})}]}),me=["Minimaal 5 aaneengesloten dagen","Digitale krant blijft altijd beschikbaar","De betaling van het abonnementstarief loopt ongewijzigd door"];function NB(A){const C=A.split("/");if(C.length!==3)return null;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())?null:I}function OB(A,C){const E=new Date(A);return E.setDate(E.getDate()+C),E}const SB=({label:A,value:C})=>g.jsxs("div",{className:"flex flex-col sm:flex-row sm:gap-m",children:[g.jsx("span",{className:"text-body-light text-text-default sm:w-32 sm:flex-shrink-0",children:A}),g.jsx("span",{className:"text-body-regular text-text-default",children:C})]}),De=({data:A,onVerwijderen:C})=>g.jsx(aA,{padding:"s",children:g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-row items-center justify-between gap-s",children:[g.jsx("span",{className:"text-heading-s text-text-default",children:"Tijdelijke stopzetting"}),C&&g.jsx(_,{variant:"pill",label:"Verwijderen",iconLeft:"trash",onClick:C})]}),g.jsx(SB,{label:"Ingangsdatum",value:A.ingangsDatum}),g.jsx(SB,{label:"Einddatum",value:A.eindDatum})]})}),be=({onSubmit:A,onSuccess:C})=>{const[E,B]=c.useState(""),[Q,I]=c.useState(""),[e,t]=c.useState(!1),[n,i]=c.useState(""),[r,o]=c.useState({}),[u,d]=c.useState(null);c.useEffect(()=>{function h(v){t(!1),v.detail.success&&u?(C({...u,toekMutNo:v.detail.toekMutNo}),d(null)):i(v.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("bezorging-stopzetten-result",h),()=>window.removeEventListener("bezorging-stopzetten-result",h)},[u,C]);const s=E?NB(E)??new Date:new Date,l=OB(s,5),w=new Date(s.getFullYear(),s.getMonth()+1,s.getDate());function x(){const h={};if(E||(h.ingangsDatum="Vul een ingangsdatum in."),!Q)h.eindDatum="Vul een einddatum in.";else if(E){const b=NB(Q)??new Date;b<l?h.eindDatum="De einddatum moet minimaal 5 dagen na de ingangsdatum liggen.":b>w&&(h.eindDatum="De einddatum mag maximaal een maand na de ingangsdatum liggen.")}if(Object.keys(h).length>0){o(h);return}const v={ingangsDatum:E,eindDatum:Q};d(v),t(!0),i(""),window.dispatchEvent(new CustomEvent("bezorging-stopzetten-submit",{detail:v})),A==null||A(v)}return g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Vul hieronder de periode in waarover je geen krant wilt ontvangen."}),g.jsxs("p",{className:"text-body-light text-text-default",children:["Wil je langer dan een maand je abonnement tijdelijk stopzetten? Neem dan ",g.jsx("a",{href:"https://nd.nl/service/contact",className:"underline",children:"contact"})," op met onze abonneeservice voor de mogelijkheden."]})]}),g.jsx(aA,{background:"gray",padding:"m",children:g.jsx("div",{className:"flex flex-col gap-xs",children:me.map((h,v)=>g.jsx(kA,{icon:"square",text:h},v))})}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Ingangsdatum",value:E,setValue:h=>{B(h),I(""),o(v=>({...v,ingangsDatum:void 0,eindDatum:void 0}))},datePicker:!0,minDate:OB(new Date,4),errors:r.ingangsDatum?[r.ingangsDatum]:null}),g.jsx(gA,{label:"Einddatum",value:Q,setValue:h=>{I(h),o(v=>({...v,eindDatum:void 0}))},datePicker:!0,minDate:l,maxDate:w,errors:r.eindDatum?[r.eindDatum]:null})]}),n&&g.jsx(QA,{variant:"warning",children:n}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:x,disabled:e})})]})},Le=({onSubmit:A,onDelete:C,initialData:E,initialPreviousSubmissions:B})=>{const[Q,I]=c.useState(!1),[e,t]=c.useState(E??null),[n,i]=c.useState(B??[]),[r,o]=c.useState(!1),[u,d]=c.useState(null),[s,l]=c.useState(!1),[w,x]=c.useState("");function h(Y){i(k=>e?[e,...k]:k),t(Y),o(!0),I(!0)}c.useEffect(()=>{function Y(k){l(!1),u&&(k.detail.success?(t(null),o(!1),d(null),x("")):x(k.detail.message||"Er is iets misgegaan. Probeer het later opnieuw."))}return window.addEventListener("bezorging-stopzetten-delete-result",Y),()=>window.removeEventListener("bezorging-stopzetten-delete-result",Y)},[u,n]);function v(Y,k){d({data:Y,slot:k}),x("")}function b(){u&&(l(!0),x(""),window.dispatchEvent(new CustomEvent("bezorging-stopzetten-delete",{detail:u.data})),C==null||C(u.data))}function f(){d(null),x("")}const p=r?g.jsx(QA,{children:'Dank je wel voor het doorgeven van je wijziging. Wij verwerken deze in ons systeem. Heb je nog vragen of opmerkingen? Dan kun je <a href="https://nd.nl/service/contact" class="underline">hier contact met ons opnemen</a>.'}):null,F=e?g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[p,g.jsx(De,{data:e,onVerwijderen:e.toekMutNo?()=>v(e,"current"):void 0})]}):g.jsx(be,{onSubmit:A,onSuccess:h});return g.jsxs(g.Fragment,{children:[g.jsx(TA,{variant:"large",label:"Bezorging tijdelijk stopzetten",isOpen:Q,onToggle:()=>I(!Q),content:F}),g.jsx(LA,{isOpen:u!==null,onClose:f,heading:"Melding verwijderen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet je zeker dat je deze melding wilt verwijderen?"}),w&&g.jsx(QA,{variant:"warning",children:w}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Verwijderen",onClick:b,disabled:s}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:f,disabled:s})]})]})})]})},je=["Minimaal 5 aaneengesloten bezorgdagen","Digitale krant blijft altijd beschikbaar","Verzending naar het buitenland niet mogelijk","Bezorging op Terschelling niet mogelijk","De betaling van het abonnementstarief loopt ongewijzigd door"];function yB(A){const C=A.split("/");if(C.length!==3)return null;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())?null:I}function tg(A,C){const E=new Date(A);return E.setDate(E.getDate()+C),E}const OA=({label:A,value:C})=>g.jsxs("div",{className:"flex flex-col sm:flex-row sm:gap-m",children:[g.jsx("span",{className:"text-body-light text-text-default sm:w-32 sm:flex-shrink-0",children:A}),g.jsx("span",{className:"text-body-regular text-text-default",children:C})]}),Fe=({data:A,onVerwijderen:C})=>{const E=[A.naamVerblijf,A.kamernummer].filter(Boolean).join(" "),B=[A.straat,A.huisnummer,A.toevoeging].filter(Boolean).join(" ");return g.jsx(aA,{padding:"s",children:g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-row items-center justify-between gap-s",children:[g.jsx("span",{className:"text-heading-s text-text-default",children:"Tijdelijk bezorgadres"}),C&&g.jsx(_,{variant:"pill",label:"Verwijderen",iconLeft:"trash",onClick:C})]}),E&&g.jsx(OA,{label:"Verblijf",value:E}),B&&g.jsx(OA,{label:"Adres",value:B}),g.jsx(OA,{label:"Postcode",value:A.postcode}),g.jsx(OA,{label:"Plaats",value:A.plaats}),g.jsx(OA,{label:"Ingangsdatum",value:A.ingangsDatum}),g.jsx(OA,{label:"Einddatum",value:A.eindDatum})]})})},Pe=({onSubmit:A,onLookupAdres:C,onSuccess:E,voorwaarden:B})=>{const[Q,I]=c.useState(""),[e,t]=c.useState(""),[n,i]=c.useState(""),[r,o]=c.useState(""),[u,d]=c.useState(""),[s,l]=c.useState(""),[w,x]=c.useState(""),[h,v]=c.useState(""),[b,f]=c.useState(""),[p,F]=c.useState(!1),[Y,k]=c.useState(""),[D,R]=c.useState({}),[H,G]=c.useState(null);c.useEffect(()=>{function P(K){F(!1),K.detail.success&&H?(E({...H,toekMutNo:K.detail.toekMutNo}),G(null)):k(K.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("afwijkend-bezorgadres-result",P),()=>window.removeEventListener("afwijkend-bezorgadres-result",P)},[H,E]),c.useEffect(()=>{var P;if(!n||!r){l(""),x("");return}(P=C==null?void 0:C(n,r))==null||P.then(({straat:K,plaats:L})=>{l(K),x(L)})},[n,r]);const O=tg(h?yB(h)??new Date:new Date,5);function M(){const P={};if(n||(P.postcode="Vul een postcode in."),r||(P.huisnummer="Vul een huisnummer in."),h||(P.ingangsDatum="Vul een ingangsdatum in."),b?h&&(yB(b)??new Date)<O&&(P.eindDatum="De einddatum moet minimaal 5 dagen na de ingangsdatum liggen."):P.eindDatum="Vul een einddatum in.",Object.keys(P).length>0){R(P);return}const K={naamVerblijf:Q,kamernummer:e,postcode:n,huisnummer:r,toevoeging:u,straat:s,plaats:w,ingangsDatum:h,eindDatum:b};G(K),F(!0),k(""),window.dispatchEvent(new CustomEvent("afwijkend-bezorgadres-submit",{detail:K})),A==null||A(K)}return g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Ga je op vakantie of wil je de krant tijdelijk op een ander adres ontvangen? Vul hieronder het afwijkende bezorgadres en de gewenste periode in."}),g.jsx(aA,{background:"gray",padding:"m",children:g.jsx("div",{className:"flex flex-col gap-xs",children:B.map((P,K)=>g.jsx(kA,{icon:"square",text:P},K))})}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-s",children:[g.jsx(gA,{label:"Naam verblijf",value:Q,setValue:I}),g.jsx(gA,{label:"Kamernummer",value:e,setValue:t})]}),g.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-s",children:[g.jsx("div",{className:"col-span-2",children:g.jsx(gA,{label:"Postcode *",value:n,setValue:P=>{i(P),R(K=>({...K,postcode:void 0}))},errors:D.postcode?[D.postcode]:null})}),g.jsx(gA,{label:"Huisnummer *",value:r,setValue:P=>{o(P),R(K=>({...K,huisnummer:void 0}))},errors:D.huisnummer?[D.huisnummer]:null}),g.jsx(gA,{label:"Toevoeging",value:u,setValue:d})]}),g.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-s",children:[g.jsx(gA,{label:"Straat",value:s,setValue:()=>{},disabled:!0}),g.jsx(gA,{label:"Plaats",value:w,setValue:()=>{},disabled:!0})]}),g.jsxs("div",{className:"flex flex-col gap-s pt-7",children:[g.jsx(gA,{label:"Ingangsdatum *",value:h,setValue:P=>{v(P),f(""),R(K=>({...K,ingangsDatum:void 0,eindDatum:void 0}))},datePicker:!0,minDate:tg(new Date,4),errors:D.ingangsDatum?[D.ingangsDatum]:null}),g.jsx(gA,{label:"Einddatum *",value:b,setValue:P=>{f(P),R(K=>({...K,eindDatum:void 0}))},datePicker:!0,minDate:O,errors:D.eindDatum?[D.eindDatum]:null})]})]}),Y&&g.jsx(QA,{variant:"warning",children:Y}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:M,disabled:p})})]})},He=({onSubmit:A,onDelete:C,onLookupAdres:E,initialEntries:B,voorwaarden:Q=je})=>{const[I,e]=c.useState(!1),[t,n]=c.useState(B??[]),[i,r]=c.useState(t.length===0),[o,u]=c.useState(!1),[d,s]=c.useState(null),[l,w]=c.useState(!1),[x,h]=c.useState("");function v(k){n(D=>[...D,k]),r(!1),u(!0),e(!0)}c.useEffect(()=>{function k(D){w(!1),d&&(D.detail.success?(n(R=>R.filter((H,G)=>G!==d.index)),u(!1),s(null),h("")):h(D.detail.message||"Er is iets misgegaan. Probeer het later opnieuw."))}return window.addEventListener("afwijkend-bezorgadres-delete-result",k),()=>window.removeEventListener("afwijkend-bezorgadres-delete-result",k)},[d]);function b(k,D){s({data:k,index:D}),h("")}function f(){d&&(w(!0),h(""),window.dispatchEvent(new CustomEvent("afwijkend-bezorgadres-delete",{detail:d.data})),C==null||C(d.data))}function p(){s(null),h("")}const F=o?g.jsx(QA,{children:'Dank je wel voor het doorgeven van je wijziging. Wij verwerken deze in ons systeem en sturen je vervolgens een bevestiging per e-mail. Heb je nog vragen of opmerkingen? Dan kun je <a href="https://nd.nl/service/contact" class="underline">hier contact met ons opnemen</a>.'}):null,Y=g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[F,t.length>0&&g.jsx("div",{className:"flex flex-col gap-s",children:t.map((k,D)=>g.jsx(Fe,{data:k,onVerwijderen:k.canDelete!==!1&&k.toekMutNo?()=>b(k,D):void 0},k.toekMutNo||D))}),i?g.jsx(Pe,{onSubmit:A,onLookupAdres:E,onSuccess:v,voorwaarden:Q}):g.jsx("div",{children:g.jsx(_,{variant:"secondary",label:"Nieuwe toevoegen",iconLeft:"plus",onClick:()=>r(!0)})})]});return g.jsxs(g.Fragment,{children:[g.jsx(TA,{variant:"large",label:"Bezorgen op een ander (vakantie) adres",isOpen:I,onToggle:()=>e(!I),content:Y}),g.jsx(LA,{isOpen:d!==null,onClose:p,heading:"Melding verwijderen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet je zeker dat je deze melding wilt verwijderen?"}),x&&g.jsx(QA,{variant:"warning",children:x}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Verwijderen",onClick:f,disabled:l}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:p,disabled:l})]})]})})]})},OE=({value:A,setValue:C,label:E,help:B,errors:Q,rows:I=5,...e})=>g.jsxs("div",{className:"flex flex-col gap-xxs text-body-regular text-text-default",children:[E&&g.jsx("label",{className:"text-body-light",children:E}),g.jsx("textarea",{value:A,onChange:t=>C(t.target.value),rows:I,className:`w-full px-3 py-2 border bg-background-default focus:outline-none focus:border-border-brand resize-none ${Q!=null&&Q.length?"border-border-warning":"border-border-gray"}`,...e}),(B||(Q==null?void 0:Q.length))&&g.jsxs("div",{className:"flex flex-col",children:[B&&g.jsx("span",{className:"text-text-gray text-meta-regular",children:B}),Q==null?void 0:Q.map((t,n)=>g.jsx("span",{className:"text-text-warning text-meta-regular",children:t},n))]})]}),Re=({isOpen:A,onClose:C,heading:E,body:B,mediaUrl:Q,mediaType:I="image",metaText:e})=>g.jsx(LA,{isOpen:A,onClose:C,heading:Q?void 0:E,children:g.jsxs("div",{className:"flex flex-col gap-m",children:[Q&&(I==="video"?g.jsx("video",{src:Q,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"w-full"}):g.jsx("img",{src:Q,alt:"",className:"w-full"})),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("div",{className:"flex flex-col gap-xs",children:[Q&&g.jsx("h2",{className:"text-heading-m text-text-default",children:E}),g.jsx("p",{className:"text-body-light text-text-default",children:B})]}),e&&g.jsx("p",{className:"text-meta-light text-text-default italic",children:e})]})]})}),Mg=({features:A})=>{var B;const[C,E]=c.useState(null);return A.length===0?null:g.jsxs(g.Fragment,{children:[g.jsx("ul",{className:"flex flex-col flex-1 gap-xs justify-center",children:A.map((Q,I)=>g.jsxs("li",{className:"flex items-start justify-between gap-xs",children:[g.jsxs("div",{className:"flex items-start gap-xs",children:[g.jsx("span",{className:"flex-shrink-0",children:g.jsx($,{name:Q.included?"check":"x-mark",variant:"outline",size:"s",color:Q.included?"brand":"gray"})}),g.jsx("button",{type:"button",className:`text-meta-light text-left ${Q.included?"text-text-default":"text-text-disabled !line-through"} ${Q.modalBody?"cursor-pointer":"cursor-default"}`,onClick:()=>Q.modalBody&&E(I),children:Q.label})]}),Q.modalBody&&g.jsx("button",{type:"button",className:"flex-shrink-0 transition-colors",onClick:()=>E(I),children:g.jsx($,{name:"info",variant:"outline",size:"s",color:"default"})})]},I))}),C!==null&&((B=A[C])==null?void 0:B.modalBody)&&g.jsx(Re,{isOpen:!0,heading:A[C].label,body:A[C].modalBody,mediaUrl:A[C].modalMediaUrl,mediaType:A[C].modalMediaType,metaText:A[C].modalMetaText,onClose:()=>E(null)})]})};var xC={exports:{}},ke=xC.exports,VB;function SE(){return VB||(VB=1,(function(A,C){(function(E,B){A.exports=B()})(ke,(function(){var E=1e3,B=6e4,Q=36e5,I="millisecond",e="second",t="minute",n="hour",i="day",r="week",o="month",u="quarter",d="year",s="date",l="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,x=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(O){var M=["th","st","nd","rd"],P=O%100;return"["+O+(M[(P-20)%10]||M[P]||M[0])+"]"}},v=function(O,M,P){var K=String(O);return!K||K.length>=M?O:""+Array(M+1-K.length).join(P)+O},b={s:v,z:function(O){var M=-O.utcOffset(),P=Math.abs(M),K=Math.floor(P/60),L=P%60;return(M<=0?"+":"-")+v(K,2,"0")+":"+v(L,2,"0")},m:function O(M,P){if(M.date()<P.date())return-O(P,M);var K=12*(P.year()-M.year())+(P.month()-M.month()),L=M.clone().add(K,o),J=P-L<0,a=M.clone().add(K+(J?-1:1),o);return+(-(K+(P-L)/(J?L-a:a-L))||0)},a:function(O){return O<0?Math.ceil(O)||0:Math.floor(O)},p:function(O){return{M:o,y:d,w:r,d:i,D:s,h:n,m:t,s:e,ms:I,Q:u}[O]||String(O||"").toLowerCase().replace(/s$/,"")},u:function(O){return O===void 0}},f="en",p={};p[f]=h;var F="$isDayjsObject",Y=function(O){return O instanceof H||!(!O||!O[F])},k=function O(M,P,K){var L;if(!M)return f;if(typeof M=="string"){var J=M.toLowerCase();p[J]&&(L=J),P&&(p[J]=P,L=J);var a=M.split("-");if(!L&&a.length>1)return O(a[0])}else{var m=M.name;p[m]=M,L=m}return!K&&L&&(f=L),L||!K&&f},D=function(O,M){if(Y(O))return O.clone();var P=typeof M=="object"?M:{};return P.date=O,P.args=arguments,new H(P)},R=b;R.l=k,R.i=Y,R.w=function(O,M){return D(O,{locale:M.$L,utc:M.$u,x:M.$x,$offset:M.$offset})};var H=(function(){function O(P){this.$L=k(P.locale,null,!0),this.parse(P),this.$x=this.$x||P.x||{},this[F]=!0}var M=O.prototype;return M.parse=function(P){this.$d=(function(K){var L=K.date,J=K.utc;if(L===null)return new Date(NaN);if(R.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var a=L.match(w);if(a){var m=a[2]-1||0,N=(a[7]||"0").substring(0,3);return J?new Date(Date.UTC(a[1],m,a[3]||1,a[4]||0,a[5]||0,a[6]||0,N)):new Date(a[1],m,a[3]||1,a[4]||0,a[5]||0,a[6]||0,N)}}return new Date(L)})(P),this.init()},M.init=function(){var P=this.$d;this.$y=P.getFullYear(),this.$M=P.getMonth(),this.$D=P.getDate(),this.$W=P.getDay(),this.$H=P.getHours(),this.$m=P.getMinutes(),this.$s=P.getSeconds(),this.$ms=P.getMilliseconds()},M.$utils=function(){return R},M.isValid=function(){return this.$d.toString()!==l},M.isSame=function(P,K){var L=D(P);return this.startOf(K)<=L&&L<=this.endOf(K)},M.isAfter=function(P,K){return D(P)<this.startOf(K)},M.isBefore=function(P,K){return this.endOf(K)<D(P)},M.$g=function(P,K,L){return R.u(P)?this[K]:this.set(L,P)},M.unix=function(){return Math.floor(this.valueOf()/1e3)},M.valueOf=function(){return this.$d.getTime()},M.startOf=function(P,K){var L=this,J=!!R.u(K)||K,a=R.p(P),m=function(Z,z){var q=R.w(L.$u?Date.UTC(L.$y,z,Z):new Date(L.$y,z,Z),L);return J?q:q.endOf(i)},N=function(Z,z){return R.w(L.toDate()[Z].apply(L.toDate("s"),(J?[0,0,0,0]:[23,59,59,999]).slice(z)),L)},U=this.$W,S=this.$M,V=this.$D,W="set"+(this.$u?"UTC":"");switch(a){case d:return J?m(1,0):m(31,11);case o:return J?m(1,S):m(0,S+1);case r:var T=this.$locale().weekStart||0,X=(U<T?U+7:U)-T;return m(J?V-X:V+(6-X),S);case i:case s:return N(W+"Hours",0);case n:return N(W+"Minutes",1);case t:return N(W+"Seconds",2);case e:return N(W+"Milliseconds",3);default:return this.clone()}},M.endOf=function(P){return this.startOf(P,!1)},M.$set=function(P,K){var L,J=R.p(P),a="set"+(this.$u?"UTC":""),m=(L={},L[i]=a+"Date",L[s]=a+"Date",L[o]=a+"Month",L[d]=a+"FullYear",L[n]=a+"Hours",L[t]=a+"Minutes",L[e]=a+"Seconds",L[I]=a+"Milliseconds",L)[J],N=J===i?this.$D+(K-this.$W):K;if(J===o||J===d){var U=this.clone().set(s,1);U.$d[m](N),U.init(),this.$d=U.set(s,Math.min(this.$D,U.daysInMonth())).$d}else m&&this.$d[m](N);return this.init(),this},M.set=function(P,K){return this.clone().$set(P,K)},M.get=function(P){return this[R.p(P)]()},M.add=function(P,K){var L,J=this;P=Number(P);var a=R.p(K),m=function(S){var V=D(J);return R.w(V.date(V.date()+Math.round(S*P)),J)};if(a===o)return this.set(o,this.$M+P);if(a===d)return this.set(d,this.$y+P);if(a===i)return m(1);if(a===r)return m(7);var N=(L={},L[t]=B,L[n]=Q,L[e]=E,L)[a]||1,U=this.$d.getTime()+P*N;return R.w(U,this)},M.subtract=function(P,K){return this.add(-1*P,K)},M.format=function(P){var K=this,L=this.$locale();if(!this.isValid())return L.invalidDate||l;var J=P||"YYYY-MM-DDTHH:mm:ssZ",a=R.z(this),m=this.$H,N=this.$m,U=this.$M,S=L.weekdays,V=L.months,W=L.meridiem,T=function(z,q,y,CA){return z&&(z[q]||z(K,J))||y[q].slice(0,CA)},X=function(z){return R.s(m%12||12,z,"0")},Z=W||function(z,q,y){var CA=z<12?"AM":"PM";return y?CA.toLowerCase():CA};return J.replace(x,(function(z,q){return q||(function(y){switch(y){case"YY":return String(K.$y).slice(-2);case"YYYY":return R.s(K.$y,4,"0");case"M":return U+1;case"MM":return R.s(U+1,2,"0");case"MMM":return T(L.monthsShort,U,V,3);case"MMMM":return T(V,U);case"D":return K.$D;case"DD":return R.s(K.$D,2,"0");case"d":return String(K.$W);case"dd":return T(L.weekdaysMin,K.$W,S,2);case"ddd":return T(L.weekdaysShort,K.$W,S,3);case"dddd":return S[K.$W];case"H":return String(m);case"HH":return R.s(m,2,"0");case"h":return X(1);case"hh":return X(2);case"a":return Z(m,N,!0);case"A":return Z(m,N,!1);case"m":return String(N);case"mm":return R.s(N,2,"0");case"s":return String(K.$s);case"ss":return R.s(K.$s,2,"0");case"SSS":return R.s(K.$ms,3,"0");case"Z":return a}return null})(z)||a.replace(":","")}))},M.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},M.diff=function(P,K,L){var J,a=this,m=R.p(K),N=D(P),U=(N.utcOffset()-this.utcOffset())*B,S=this-N,V=function(){return R.m(a,N)};switch(m){case d:J=V()/12;break;case o:J=V();break;case u:J=V()/3;break;case r:J=(S-U)/6048e5;break;case i:J=(S-U)/864e5;break;case n:J=S/Q;break;case t:J=S/B;break;case e:J=S/E;break;default:J=S}return L?J:R.a(J)},M.daysInMonth=function(){return this.endOf(o).$D},M.$locale=function(){return p[this.$L]},M.locale=function(P,K){if(!P)return this.$L;var L=this.clone(),J=k(P,K,!0);return J&&(L.$L=J),L},M.clone=function(){return R.w(this.$d,this)},M.toDate=function(){return new Date(this.valueOf())},M.toJSON=function(){return this.isValid()?this.toISOString():null},M.toISOString=function(){return this.$d.toISOString()},M.toString=function(){return this.$d.toUTCString()},O})(),G=H.prototype;return D.prototype=G,[["$ms",I],["$s",e],["$m",t],["$H",n],["$W",i],["$M",o],["$y",d],["$D",s]].forEach((function(O){G[O[1]]=function(M){return this.$g(M,O[0],O[1])}})),D.extend=function(O,M){return O.$i||(O(M,H,D),O.$i=!0),D},D.locale=k,D.isDayjs=Y,D.unix=function(O){return D(1e3*O)},D.en=p[f],D.Ls=p,D.p={},D}))})(xC)),xC.exports}var Ue=SE();const dg=hE(Ue);var pC={exports:{}},Me=pC.exports,GB;function Ke(){return GB||(GB=1,(function(A,C){(function(E,B){A.exports=B(SE())})(Me,(function(E){function B(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var Q=B(E),I={name:"nl",weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),ordinal:function(e){return"["+e+(e===1||e===8||e>=20?"ste":"de")+"]"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"een minuut",mm:"%d minuten",h:"een uur",hh:"%d uur",d:"een dag",dd:"%d dagen",M:"een maand",MM:"%d maanden",y:"een jaar",yy:"%d jaar"}};return Q.default.locale(I,null,!0),I}))})(pC)),pC.exports}var Ye=Ke();const Ne=hE(Ye),Kg=A=>A?dg(A).locale(Ne).format("D MMMM YYYY"):null,JB=4,Oe=A=>{const C=new Date;return C.setHours(0,0,0,0),C.setDate(C.getDate()+A),C},Se=A=>{const C=new Date(A);return C.setHours(0,0,0,0),C},ye=A=>A>=5?"grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5":A===4?"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4":A===3?"grid-cols-1 sm:grid-cols-3 max-w-lg":A===2?"grid-cols-1 sm:grid-cols-2 max-w-sm":"grid-cols-1 max-w-xs",Ve='Dank u wel voor het doorgeven van uw wijziging. Wij verwerken deze in ons systeem en sturen u vervolgens een bevestiging per e-mail. Heeft u nog vragen of opmerkingen? Dan kunt u <a href="https://nd.nl/service/contact" class="underline">hier</a> contact met ons opnemen.',Yg=({abonnementen:A,currentSubscription:C,bezorgDagen:E=[],actieAbonnement:B,minStartdatum:Q,submitLabel:I="Abonnement wijzigen",submittingLabel:e="Bezig met wijzigen...",successMessage:t=Ve,onSelect:n,onSubmit:i,onSuccess:r})=>{var N;const[o,u]=c.useState(A.length===1?A[0].id:C),[d,s]=c.useState(""),[l,w]=c.useState(),[x,h]=c.useState(!1),[v,b]=c.useState(!1),[f,p]=c.useState(),[F,Y]=c.useState(!1),k=A.find(U=>U.id===o),D=(k==null?void 0:k.papier)===!0,R=D&&!(k!=null&&k.bezorgDag)&&E.length>0,H=Oe(D?JB:0),G=Q?Se(Q):void 0,O=G!==void 0&&G>H,M=O?G:H,P=O?`Uw abonnement kan op zijn vroegst ingaan op ${Kg(M.toISOString())}.`:D?`Een papieren abonnement kan op zijn vroegst over ${JB} dagen ingaan.`:void 0,K=(k==null?void 0:k.bezorgDag)??l,L=(N=E.find(U=>U.value===K))==null?void 0:N.label,J=U=>{u(U),s(""),w(void 0),p(void 0),Y(!1),n==null||n(U)},a=()=>{Y(!1),m()},m=async()=>{if(!(!o||!d)){p(void 0),b(!0);try{i&&await i({subscription:o,startdatum:d,bezorgDag:(k==null?void 0:k.bezorgDag)??l}),h(!0),r==null||r()}catch(U){p(U instanceof Error?U.message:"Er is iets misgegaan bij het wijzigen van uw abonnement. Probeer het later opnieuw.")}finally{b(!1)}}};return x?g.jsx(QA,{children:t}):g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"flex flex-col gap-m",children:[B&&g.jsx(QA,{variant:"warning",children:"U heeft een actie-abonnement met een vaste looptijd. Wanneer u uw abonnement wijzigt, gaat deze pas in na de einddatum van uw huidige abonnement."}),g.jsx("div",{className:`grid gap-xs md:gap-s ${ye(A.length)}`,children:A.map(U=>{const S=C===U.id,V=o===U.id;return g.jsx("button",{type:"button",className:"flex flex-col p-0 border-0 bg-transparent cursor-pointer text-left w-full min-w-0",onClick:()=>J(U.id),children:g.jsxs(aA,{borderColor:V?"brand":"gray-subtle",padding:"none",className:`h-full flex flex-col w-full transition-[border-color] duration-200 ease-in-out ${V?"":"hover:border-border-brand"}`,children:[S&&g.jsx("div",{className:"text-meta-uppercase text-text-brand bg-background-brand-subtle px-xs md:px-s py-xxs text-center break-words",children:"Huidig abonnement"}),g.jsxs("div",{className:"p-xs md:p-s flex flex-col gap-xxs text-center flex-1 justify-center",children:[g.jsx("span",{className:"text-heading-s text-text-default break-words",children:U.title}),g.jsxs("span",{className:"text-meta-light text-text-default break-words",children:[U.prijs??"€....,—",U.prijsPeriode??"/maand"]})]})]})},U.id)})}),(k==null?void 0:k.features)&&k.features.length>0&&g.jsx(Mg,{features:k.features}),o&&o!==C&&g.jsxs("div",{className:"flex flex-col gap-m",children:[R&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("h2",{className:"text-heading-s text-text-default",children:"Op welke dag wilt u de papieren krant ontvangen?"}),g.jsx("div",{className:"flex flex-col gap-xs",children:E.map(U=>g.jsx(hA,{variant:"card",layout:"horizontal",heading:U.label,label:U.description,priceLabel:U.price,name:"bezorgDag",value:U.value,checked:l===U.value,onChange:()=>w(U.value)},U.value))})]}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Gewenste startdatum",value:d,setValue:s,datePicker:!0,minDate:M,help:P}),f&&g.jsx(QA,{variant:"warning",children:f}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:v?e:I,onClick:()=>Y(!0),disabled:!d||R&&!l||v})})]})]})]}),g.jsx(LA,{isOpen:F,onClose:()=>Y(!1),heading:I,children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("p",{className:"text-body-light text-text-default",children:["Weet u zeker dat u wilt overstappen naar ",k==null?void 0:k.title,"?"]}),g.jsxs("div",{className:"flex flex-col gap-xxs text-body-light text-text-default",children:[g.jsxs("span",{children:["Ingangsdatum: ",d]}),L&&g.jsxs("span",{children:["Bezorgdag: ",L]})]}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:I,onClick:a,disabled:v}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:()=>Y(!1),disabled:v})]})]})})]})};function Ge(A,C,E){const B=E?A.findIndex(I=>I.id===E):-1,Q=new Set(C);return B>=0&&Q.add(A[B].id),A.filter((I,e)=>Q.has(I.id)&&(B<0||e<=B))}const yE=14;function Je(A,C=new Date){if(!A)return!1;const E=dg(A).startOf("day").add(yE,"day");return dg(C).startOf("day").isBefore(E)}const TB=[{label:"Financieel",value:"financieel",stopcode:20,flow:"aanbod",toelichting:"We begrijpen dat kosten een rol kunnen spelen. Daarom bieden we u graag een goedkoper abonnement aan, zodat u kunt blijven genieten van uw krant."},{label:"Tijdgebrek",value:"tijdgebrek",stopcode:7,flow:"aanbod",toelichting:"We begrijpen dat u te weinig toekomt aan de krant. We hebben abonnementen die beter passen bij een druk leven, minder dan u nu betaalt, maar toch lekker blijven lezen wanneer het u uitkomt."},{label:"Inhoudelijke reden",value:"inhoudelijke-reden",stopcode:37,flow:"feedback",toelichting:"We vinden het jammer dat de inhoud niet (meer) aansluit bij wat u zoekt. Wilt u ons in een paar woorden vertellen wat u mist? Uw reactie nemen we serieus en uw feedback helpt ons om de krant beter te maken."},{label:"Wilde een artikel lezen",value:"wilde-lezen",stopcode:14,flow:"direct"},{label:"Persoonlijke omstandigheden",value:"persoonlijke-omstandigheden",stopcode:71,flow:"direct",toelichting:"We begrijpen dat er soms persoonlijke omstandigheden zijn die een rol spelen. We regelen de opzegging zorgvuldig voor u af."},{label:"Overig",value:"overig",stopcode:70,flow:"aanbod",toelichting:"We hebben verschillende abonnementen en oplossingen die misschien beter aansluiten bij uw situatie."}],Te=[{id:"digitaal-basis",title:"Digitaal Basis"},{id:"digitaal-plus",title:"Digitaal Plus"},{id:"papier-zaterdag",title:"Digitaal + Papier zaterdag",papier:!0,bezorgDag:"zat"},{id:"papier-vrijdag-zaterdag",title:"Digitaal + Papier vrijdag en zaterdag",papier:!0,bezorgDag:"vrij-zat"},{id:"papier-maandag-zaterdag",title:"Digitaal + Papier maandag t/m zaterdag",papier:!0,bezorgDag:"ma-zat"}],ze='Kunt u de volle abonnementsprijs niet betalen? Dan kunt u een Fondsabonnement aanvragen bij het <a href="https://nd.nl/service/ndfonds">ND Fonds</a>: een zelfstandige stichting die, dankzij giften van andere lezers, de helft van de abonnementsprijs voor u betaalt. Bij een aanvraag kijkt het Fonds alleen naar uw inkomen, gezinssituatie en woonsituatie.',Xe=`U zit nog in de bedenktijd van ${yE} dagen na de ingangsdatum van uw abonnement. Uw opzegging gaat daarom direct in, ook al heeft u een actie-abonnement met een vaste looptijd.`,We=A=>A?`U heeft een actie-abonnement met een vaste looptijd tot ${A}. U kunt hieronder opzeggen of overstappen, maar dat gaat pas na die datum in.`:"U heeft een actie-abonnement met een vaste looptijd. U kunt hieronder opzeggen of overstappen, maar dat gaat pas in na de einddatum van uw huidige looptijd.",qe=(A,C)=>`${A?C?`Uw opzegging is geregistreerd en gaat in op ${C}, de einddatum van de looptijd van uw actie-abonnement.`:"Uw opzegging is geregistreerd en gaat in per einddatum van de looptijd van uw actie-abonnement.":"Uw opzegging is verwerkt."} U ontvangt een bevestiging per e-mail. Mocht u ooit van gedachten veranderen, u bent altijd welkom terug.`,zB="Fijn dat u blijft lezen. Wij verwerken uw wijziging in ons systeem en sturen u vervolgens een bevestiging per e-mail. Uw opzegging hebben wij niet doorgevoerd.",Ze=({abonnementen:A=Te,aanbod:C,currentSubscription:E,bezorgDagen:B,actieAbonnement:Q,actieAbonnementEinddatum:I,abonnementStartdatum:e,homepageHref:t="https://nd.nl",onSubmit:n,onOverstappen:i})=>{const[r,o]=c.useState(""),[u,d]=c.useState(""),[s,l]=c.useState(!1),[w,x]=c.useState(!1),[h,v]=c.useState(!1),[b,f]=c.useState(""),[p,F]=c.useState({}),[Y,k]=c.useState(!1),D=TB.find(m=>m.value===r),R=I?Kg(I.toISOString()):null,H=Je(e),G=Q===!0&&!H,O=(D==null?void 0:D.flow)==="aanbod"?Ge(A,(C==null?void 0:C[D.value])??A.map(m=>m.id),E):[],P=O.filter(m=>m.id!==E).length>0,K=(D==null?void 0:D.value)==="financieel"&&!P;c.useEffect(()=>{function m(N){v(!1),N.detail.success?(l(!0),f("")):f(N.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("abo-opzeggen-result",m),()=>window.removeEventListener("abo-opzeggen-result",m)},[]);function L(m){o(m),d(""),f(""),k(!1),F(N=>({...N,reden:void 0}))}function J(){if(!D){F({reden:"Selecteer een reden."});return}k(!0)}function a(){if(k(!1),!D){F({reden:"Selecteer een reden."});return}const m={value:D.value,stopcode:D.stopcode,...D.flow==="feedback"&&u.trim()?{feedback:u.trim()}:{}};v(!0),f(""),window.dispatchEvent(new CustomEvent("abo-opzeggen-submit",{detail:m})),n==null||n(m)}return w?g.jsx(QA,{children:zB}):s?g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx(QA,{children:qe(G,R)}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Terug naar de homepage",href:t})})]}):g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"flex flex-col gap-m",children:[G&&g.jsx(QA,{variant:"warning",children:We(R)}),Q&&H&&g.jsx(QA,{children:Xe}),g.jsx("p",{className:"text-body-light text-text-default",children:"Jammer dat u uw abonnement wilt opzeggen. We zijn benieuwd naar uw reden. Misschien kunnen we u nog helpen en anders nemen we uw feedback graag mee."}),g.jsx("div",{className:"flex flex-col gap-s",children:g.jsx(yA,{label:"Waarom wilt u uw abonnement opzeggen?",options:TB,value:r,onChange:L,errors:p.reden?[p.reden]:null})}),(D==null?void 0:D.toelichting)&&g.jsx("p",{className:"text-body-light text-text-default",children:D.toelichting}),K&&g.jsx(QA,{children:ze}),P&&D&&g.jsx(Yg,{abonnementen:O,currentSubscription:E,bezorgDagen:B,minStartdatum:G?I:void 0,submitLabel:"Overstappen",submittingLabel:"Bezig met overstappen...",successMessage:zB,onSubmit:m=>i==null?void 0:i(m,D.value),onSuccess:()=>x(!0)},D.value),(D==null?void 0:D.flow)==="feedback"&&g.jsx(OE,{label:"Wat had u anders verwacht van onze inhoud?",help:"Optioneel. Uw feedback helpt ons de krant te verbeteren.",value:u,setValue:d}),b&&g.jsx(QA,{variant:"warning",children:b}),g.jsx("div",{children:g.jsx(_,{variant:P?"secondary":"primary",label:P?"Toch opzeggen":"Abonnement stopzetten",onClick:J,disabled:h})})]}),g.jsx(LA,{isOpen:Y,onClose:()=>k(!1),heading:"Abonnement opzeggen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet u zeker dat u uw abonnement wilt opzeggen?"}),G&&g.jsx("p",{className:"text-body-light text-text-default",children:R?`Uw opzegging gaat in op ${R}, de einddatum van de looptijd van uw actie-abonnement.`:"Uw opzegging gaat in per einddatum van de looptijd van uw actie-abonnement."}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Abonnement opzeggen",onClick:a,disabled:h}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:()=>k(!1),disabled:h})]})]})})]})},_e=A=>g.jsx(eC,{variant:"large",items:[{label:"Abonnement opzeggen",content:g.jsx(Ze,{...A})}]}),$e=({imageUrl:A,alt:C,title:E,description:B,metaText:Q,href:I})=>{const e=g.jsxs("div",{className:"flex flex-row sm:flex-col sm:pt-s sm:px-s h-full",children:[g.jsx("div",{className:"shrink-0 w-1/3 aspect-square self-start sm:w-full sm:self-auto overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col p-xxs pl-s sm:pl-0 sm:py-s flex-1 min-w-0 justify-center sm:justify-between",children:[g.jsxs("div",{className:"flex flex-col gap-xxs",children:[g.jsx("h2",{className:"text-heading-m text-text-default",children:E}),B&&g.jsx("span",{className:"text-meta-light text-text-default line-clamp-3",children:B})]}),Q&&g.jsxs("a",{href:I,className:"text-meta-light text-text-gray mt-xxs sm:mt-0 sm:pt-s",children:[Q," >"]})]})]});return I?g.jsx("a",{href:I,className:"flex flex-col group border border-width-default border-border-gray-subtle hover:border-border-brand",children:e}):g.jsx("div",{className:"flex flex-col border border-width-default border-border-gray-subtle hover:border-border-brand",children:e})},A3=({series:A})=>g.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-s sm:gap-m lg:gap-l",children:A.map((C,E)=>g.jsx($e,{...C},E))}),C3=({episode:A})=>{const{title:C,seriesTitle:E,duration:B,publishedAt:Q,href:I}=A,e=g.jsxs("div",{className:"flex flex-col gap-xxs w-[16rem] h-full border border-width-s border-border-gray-subtle hover:border-border-brand transition-[border-color] duration-200 ease-in-out bg-background-default p-s",children:[E&&g.jsx("span",{className:"text-meta-uppercase text-text-brand",children:E}),g.jsx("h3",{className:"text-body-gulliver-semibold text-text-default line-clamp-5",children:C}),g.jsxs("div",{className:"flex flex-col gap-xxs mt-auto pt-xs",children:[Q&&g.jsx("span",{className:"text-meta-light text-text-default",children:Q}),B&&g.jsxs("div",{className:"flex items-center gap-xxs",children:[g.jsx($,{name:"play-circle",variant:"fill",size:"s",color:"brand"}),g.jsx("span",{className:"text-meta-light text-text-default",children:B})]})]})]});return I?g.jsx("a",{href:I,draggable:!1,className:"h-full",children:e}):g.jsx("div",{children:e})},g3=({episodes:A,title:C,showButton:E=!1,buttonLabel:B="",buttonUrl:Q,onButtonClick:I,onScrollEnd:e,className:t=""})=>A.length===0?null:g.jsx(tC,{title:C,showButton:E,buttonLabel:B,buttonUrl:Q,onButtonClick:I,onScrollEnd:e,className:t,children:A.map((n,i)=>g.jsx("div",{className:"flex-shrink-0","data-index":i,children:g.jsx(C3,{episode:n})},i))}),B3=({imageUrl:A,alt:C,title:E,description:B,trailerUrl:Q,trailerLabel:I="Luister de trailer"})=>g.jsxs("div",{className:"flex flex-col sm:flex-row gap-xs md:gap-l mt-m md:mt-xl",children:[g.jsx("div",{className:"w-full p-m sm:p-0 sm:shrink-0 sm:w-1/3 aspect-square self-center sm:self-start overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-l xl:gap-xl justify-center sm:flex-1 sm:min-w-0",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("h1",{className:"text-heading-xl text-text-default",children:E}),B&&g.jsx("p",{className:"text-body-light text-text-default",dangerouslySetInnerHTML:{__html:B}})]}),Q&&g.jsx(kC,{src:Q,label:I})]})]}),E3=({imageUrl:A,alt:C,seriesName:E,seriesUrl:B,title:Q,date:I,duration:e,audioUrl:t})=>g.jsxs("div",{className:"flex flex-col sm:flex-row gap-xs md:gap-l mt-m md:mt-xl",children:[g.jsx("div",{className:"w-full p-m sm:p-0 sm:shrink-0 sm:w-1/4 aspect-square self-center sm:self-start overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-l xl:gap-xl justify-center sm:flex-1 sm:min-w-0",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-col gap-xxs",children:[B?g.jsx("a",{href:B,className:"w-fit text-body-uppercase-bold text-text-brand hover:text-text-brand-hover hover:underline",children:E}):g.jsx("p",{className:"text-body-uppercase-bold text-text-brand",children:E}),g.jsx("h1",{className:"text-heading-xl text-text-default",children:Q})]}),(I||e)&&g.jsxs("div",{className:"flex items-center gap-xxs text-meta-light text-text-default",children:[I&&g.jsx("span",{children:I}),I&&e&&g.jsx($,{name:"square-small",variant:"fill",size:"s",color:"default"}),e&&g.jsxs("span",{className:"flex items-center gap-xxs",children:[g.jsx($,{name:"clock",size:"s",color:"default"}),e]})]})]}),t&&g.jsx(kC,{src:t,variant:"filled"})]})]}),Q3=({sectionTitle:A="Laatste aflevering",videoId:C,articleTitle:E,intro:B,articleUrl:Q,buttonLabel:I="Lees het artikel over deze aflevering"})=>g.jsxs("div",{className:"flex flex-col gap-m md:gap-l",children:[g.jsx(bA,{variant:"lined",children:A}),g.jsxs("div",{className:"flex flex-col-reverse sm:flex-row gap-m",children:[g.jsxs("div",{className:"flex flex-col gap-m justify-center sm:flex-1 sm:min-w-0",children:[g.jsx(bA,{intro:B,children:E}),g.jsx(_,{variant:"pill",iconRight:"caret-right",label:I,href:Q,className:"w-fit"})]}),C&&g.jsx("div",{className:"w-full sm:w-1/2 sm:shrink-0 self-start overflow-hidden bg-background-gray",style:{aspectRatio:"16 / 9"},children:g.jsx("iframe",{src:`https://www.youtube.com/embed/${C}?rel=0&modestbranding=1`,title:E,className:"w-full h-full",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0})})]})]}),I3=({sectionTitle:A="De makers",hosts:C})=>g.jsxs("div",{className:"flex flex-col gap-m md:gap-l",children:[g.jsx(bA,{variant:"lined",children:A}),g.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-m md:gap-l",children:C.map((E,B)=>g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("div",{className:"w-full aspect-square overflow-hidden bg-background-gray",children:E.image?g.jsx("div",{className:"w-full h-full",dangerouslySetInnerHTML:{__html:E.image}}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-xxs lg:gap-xs",children:[g.jsx("h3",{className:"text-heading-m text-text-default",dangerouslySetInnerHTML:{__html:E.name}}),E.description&&g.jsx("p",{className:"text-body-light text-text-default",dangerouslySetInnerHTML:{__html:E.description}})]})]},B))})]}),XB=A=>{const C=A.toLowerCase();return C==="mobile"?"mobile":C==="tablet"?"tablet":"desktop"},e3=({isOpen:A,onClose:C,currentDeviceName:E="Dit apparaat",currentDeviceFormFactor:B="Desktop",signInTicket:Q="",activeDevices:I=[],onSignInSuccess:e})=>{const[t,n]=c.useState(A??!1),[i,r]=c.useState(Q),[o,u]=c.useState(I.map(p=>({device:p,state:"active"}))),[d,s]=c.useState(null),[l,w]=c.useState(!1),x=o.some(p=>p.state==="kicked"),h=o.some(p=>p.state==="kicking");c.useEffect(()=>{A!==void 0&&n(A)},[A]),c.useEffect(()=>(window.openDeviceLimitModal=p=>{r(p.signInTicket),u(p.activeDevices.map(F=>({device:F,state:"active"}))),s(null),w(!1),requestAnimationFrame(()=>{n(!0)})},()=>{window.openDeviceLimitModal=void 0}),[]),c.useEffect(()=>{const p=F=>{F.detail&&(r(F.detail.signInTicket),u(F.detail.activeDevices.map(Y=>({device:Y,state:"active"})))),s(null),w(!1),n(!0)};return window.addEventListener("open-device-limit",p),()=>window.removeEventListener("open-device-limit",p)},[]);const v=c.useCallback(()=>{n(!1),C==null||C(),window.location.href="/login"},[C]),b=async p=>{s(null),u(F=>F.map(Y=>Y.device.fingerprint===p?{...Y,state:"kicking"}:Y));try{const F=await fetch("/api/device/invalidate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signInTicket:i,deviceId:p})});if(F.status===401){window.location.href="/login?expired=1";return}if(!F.ok){s("Er ging iets mis. Probeer het opnieuw."),u(Y=>Y.map(k=>k.device.fingerprint===p?{...k,state:"active"}:k));return}u(Y=>Y.map(k=>k.device.fingerprint===p?{...k,state:"kicked"}:k))}catch{s("Verbinding mislukt. Controleer je internetverbinding."),u(F=>F.map(Y=>Y.device.fingerprint===p?{...Y,state:"active"}:Y))}},f=async()=>{s(null),w(!0);try{const p=await fetch("/api/device/retry-signin",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signInTicket:i})});if(p.status===401){window.location.href="/login?expired=1";return}const F=await p.json();if(F.success){const Y=F.commonDomainRedirect||"/";e?e(Y):window.location.href=Y;return}if(F.reason==="TooManyDevices"){u((F.activeDevices||[]).map(Y=>({device:Y,state:"active"}))),s("Er zijn nog te veel apparaten actief. Log er nog een uit.");return}s("Er ging iets mis. Probeer opnieuw in te loggen.")}catch{s("Verbinding mislukt. Controleer je internetverbinding.")}finally{w(!1)}};return t?g.jsx(LA,{isOpen:t,onClose:v,heading:"Je bent op teveel apparaten ingelogd",children:g.jsxs("div",{className:"flex flex-col gap-m text-text-default",children:[g.jsx("p",{className:"text-body-light",children:"Je bent al ingelogd op het maximale aantal apparaten. Log één van onderstaande apparaten uit om op dit apparaat verder te gaan."}),d&&g.jsx(QA,{variant:"warning",children:d}),g.jsxs("div",{className:"flex flex-col gap-xs",children:[g.jsx(aA,{borderColor:"brand",padding:"s",background:"brand-subtle",children:g.jsxs("div",{className:"flex items-center gap-s",children:[g.jsx($,{name:XB(B),color:"brand"}),g.jsx("span",{className:"flex-1 text-body-bold text-text-default",children:E}),g.jsx(FA,{variant:"default",label:"Dit apparaat"})]})}),o.map(({device:p,state:F})=>g.jsx(aA,{borderColor:"gray-subtle",padding:"s",children:g.jsxs("div",{className:"flex items-center gap-s",children:[g.jsx($,{name:XB(p.formFactor),color:"gray"}),g.jsxs("div",{className:"flex-1",children:[g.jsx("span",{className:`block text-body-bold ${F==="kicked"?"text-text-disabled":"text-text-default"}`,children:p.completeDeviceName}),p.lastActivity&&g.jsx("span",{className:`block text-body-light ${F==="kicked"?"text-text-disabled":"text-text-subtle"}`,children:`Actief op ${p.lastActivity}`})]}),F==="active"&&g.jsx(_,{variant:"pill",label:"Uitloggen",iconLeft:"sign-out",onClick:()=>b(p.fingerprint),disabled:h}),F==="kicking"&&g.jsx(_,{variant:"pill",label:"Bezig...",disabled:!0}),F==="kicked"&&g.jsx(_,{variant:"pill",label:"Uitgelogd",disabled:!0})]})},p.fingerprint))]}),g.jsx(_,{variant:"primary",label:l?"Inloggen...":"Doorgaan",onClick:f,disabled:!x||l||h,className:"justify-center"})]})}):null},VE=({steps:A,currentStep:C})=>{const E=B=>{const Q=B+1;return Q<C?"completed":Q===C?"active":"upcoming"};return g.jsxs("div",{className:"w-full",children:[g.jsx("div",{className:"flex items-center",children:A.map((B,Q)=>{const I=B.state??E(Q),e=Q===A.length-1,t=I==="completed"&&(!!B.href||!!B.onClick),n=g.jsx("div",{className:`
108
+ `}),g.jsx(LA,{isOpen:e,onClose:l,heading:"Artikel delen",children:g.jsx(g.Fragment,{children:g.jsxs("div",{className:"flex flex-col gap-m bg-background-default text-text-default",children:[g.jsxs("div",{className:"grid grid-cols-2 gap-s",children:[g.jsx(hA,{variant:"card",label:"Door abonnees te lezen",heading:"Standaard delen",name:"shareType",value:"standard",checked:n==="standard",onChange:()=>i("standard")}),g.jsx("div",{className:r<=0?"artikel-cadeau-badge-gray":"",children:g.jsx(hA,{variant:"card",label:"Door iedereen te lezen",heading:"Als cadeau",badgeText:r.toString(),name:"shareType",value:"gift",checked:n==="gift",onChange:()=>i("gift")})})]}),g.jsx("div",{className:"text-body-light text-text-default",children:n==="gift"?r<=0?g.jsx("p",{children:"Je hebt deze maand al je artikelen cadeau gegeven."}):g.jsxs(g.Fragment,{children:[g.jsxs("p",{children:["Geef ",g.jsx("span",{className:"text-body-bold",children:"7 dagen"})," gratis toegang tot dit artikel."]}),g.jsxs("p",{children:["Je kunt deze maand nog ",g.jsxs("span",{className:"text-body-bold",children:[r," artikelen"]})," cadeau geven."]})]}):g.jsx("p",{children:"Deel dit artikel met een ND-abonnee. Niet-abonnees krijgen een betaalmuur te zien."})}),g.jsx("div",{className:"grid grid-cols-2 gap-xs",children:w.map((v,b)=>g.jsxs("button",{onClick:()=>h(v.platform),disabled:x,className:`flex items-center gap-s p-xs border transition-colors ${x?"border-border-gray-subtle bg-background-default cursor-not-allowed opacity-50":"border-border-gray-subtle hover:border-border-brand bg-background-default"}`,children:[g.jsx($,{name:v.iconName,size:"s",color:"default",variant:"outline"}),g.jsx("span",{className:"text-body-light text-text-default",children:v.label})]},b))})]})})}),g.jsx(ug,{message:u.message,visible:u.visible,onClose:s})]})},le=({isBookmarked:A,likeCount:C,commentCount:E,shareCount:B,commentsTargetId:Q="comments",showListen:I=!0,audioSrc:e,onBookmark:t,onGift:n,onShare:i,onListen:r,onComment:o,remainingGifts:u,onShareAsGift:d,onShareAsStandard:s,showLikes:l=!0,showComments:w=!0,showShare:x=!0,showGift:h=!0,showBookmark:v=!0,isLiked:b,onLike:f,giftLimit:p,className:F})=>{const[Y,k]=c.useState(!1),[D,R]=c.useState(!1),[H,G]=c.useState(!1),[O,M]=c.useState(!1),[P,K]=c.useState("standard"),[L,J]=c.useState(0),a=c.useRef(null),m=A??Y,N=()=>{const q=!m;A===void 0&&k(q),t==null||t(q)},U=()=>{var q;(q=document.getElementById(Q))==null||q.scrollIntoView({behavior:"smooth"}),o==null||o()},S=()=>{G(q=>!q),r==null||r()},V=()=>{K("standard"),J(q=>q+1),M(!0),i==null||i()},W=()=>{K("gift"),J(q=>q+1),M(!0),n==null||n()};c.useEffect(()=>{if(!D)return;const q=CA=>{a.current&&!a.current.contains(CA.target)&&R(!1)},y=CA=>{CA.key==="Escape"&&R(!1)};return document.addEventListener("mousedown",q),document.addEventListener("keydown",y),()=>{document.removeEventListener("mousedown",q),document.removeEventListener("keydown",y)}},[D]);const T=()=>{w?U():l&&(f==null||f())},Z=l||w?g.jsx(_,{variant:"pill",iconLeft:l?"heart":w?"chat":void 0,iconLeftVariant:l&&b?"fill":"outline",iconRight:w&&!l||w?"arrow-down":void 0,isActive:b??!1,onClick:T,"aria-label":`Ga naar reacties (${C??0} likes, ${E??0} reacties)`,className:"max-[339px]:!px-xs",label:g.jsxs("span",{className:"inline-flex items-center gap-xs max-[339px]:gap-xxs",children:[l&&C!==void 0&&g.jsx("span",{children:C}),w&&g.jsxs(g.Fragment,{children:[l&&g.jsx($,{name:"chat",size:"s",color:"gray",variant:"outline"}),E!==void 0&&g.jsx("span",{children:E})]})]})}):null,z=x?g.jsx(_,{variant:"pill",iconLeft:"share",iconOnly:B===void 0,isActive:!1,onClick:V,"aria-label":"Deel",className:"max-[339px]:!px-xs",label:B!==void 0?g.jsx("span",{children:B}):"Deel"}):null;return g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:`hidden md:flex flex-wrap items-center gap-xxs ${F??""}`,children:[I&&g.jsx(_,{variant:"pill",iconLeft:"headphones",label:"Luister",isActive:H,onClick:S}),Z,z,h&&g.jsx(_,{variant:"pill",iconLeft:"gift",label:"Cadeau",isActive:!1,onClick:W}),v&&g.jsx(_,{variant:"pill",iconLeft:"bookmark",label:m?"Opgeslagen":"Leeslijst",isActive:m,onToggle:N})]}),g.jsxs("div",{className:`flex md:hidden flex-wrap items-center gap-xxs ${F??""}`,children:[I&&g.jsxs(g.Fragment,{children:[g.jsx(_,{variant:"pill",iconLeft:"headphones",label:"Luister",isActive:H,onClick:S,className:"max-[399px]:hidden"}),g.jsx(_,{variant:"pill",iconLeft:"headphones",iconOnly:!0,label:"Luister",isActive:H,onClick:S,className:"min-[400px]:hidden"})]}),Z,z,(h||v)&&g.jsxs("div",{className:"relative ml-auto",ref:a,children:[g.jsx(_,{variant:"pill",iconLeft:"dots-vertical",iconLeftVariant:"fill",iconOnly:!0,label:"Meer acties",isActive:D,onClick:()=>R(q=>!q),"aria-haspopup":"menu","aria-expanded":D,"aria-label":"Meer acties"}),D&&g.jsxs("div",{role:"menu",className:"absolute right-0 z-10 mt-xxs min-w-[180px] flex flex-col rounded-m border-s border-border-gray-subtle bg-background-default shadow-lg py-xxs",children:[h&&g.jsxs("button",{role:"menuitem",onClick:()=>{W(),R(!1)},className:"flex items-center gap-s px-s py-xs text-body-light text-text-default hover:bg-background-gray-subtle transition-colors",children:[g.jsx($,{name:"gift",size:"s",color:"gray",variant:"outline"}),g.jsx("span",{children:"Geef cadeau"})]}),v&&g.jsxs("button",{role:"menuitem",onClick:()=>{N(),R(!1)},className:"flex items-center gap-s px-s py-xs text-body-light text-text-default hover:bg-background-gray-subtle transition-colors",children:[g.jsx($,{name:"bookmark",size:"s",color:"gray",variant:m?"fill":"outline"}),g.jsx("span",{children:m?"Opgeslagen":"Leeslijst"})]})]})]})]}),H&&e&&g.jsx(kC,{src:e,variant:"plain",className:"mt-s"}),g.jsx(YE,{isOpen:O,defaultMode:P,onClose:()=>M(!1),remainingGifts:u,onShareAsGift:d,onShareAsStandard:s},L)]})},ce=6,ue=({searchTerm:A,categories:C,selectedFilters:E=[],onFilterSelect:B,onFilterRemove:Q,sortOptions:I=[],sortValue:e,onSortChange:t,maxVisible:n=ce})=>{const[i,r]=c.useState(!1),[o,u]=c.useState(!1),[d,s]=c.useState({}),l=h=>{r(h),h&&u(!1)},w=h=>{u(h),h&&r(!1)},x=h=>{s(v=>({...v,[h]:!v[h]}))};return g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("h1",{className:"text-heading-xl text-text-default",children:["Zoekresultaten voor: ",g.jsx("span",{className:"text-heading-light",children:A})]}),g.jsxs("div",{className:"flex gap-xs",children:[g.jsx(_,{variant:"pill",label:"Filteren",iconLeft:"funnel",isActive:i,onToggle:l}),g.jsx(yA,{variant:"pill",label:"Sorteren",options:I,value:e,onChange:t,isOpen:o,onOpenChange:w})]}),i&&g.jsx(aA,{borderColor:"gray-subtle",padding:"m",children:g.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-l",children:C.map(h=>{const v=d[h.name]??!1,b=v?h.options:h.options.slice(0,n),f=h.options.length>n;return g.jsxs("div",{className:"flex flex-col gap-xs",children:[g.jsx("span",{className:"text-heading-m text-text-default",children:h.name}),b.map(p=>{const F=E.includes(p.label);return g.jsxs("button",{onClick:()=>B==null?void 0:B(p.label),className:"flex items-center justify-between gap-xs text-left hover:text-text-brand",children:[g.jsx("span",{className:F?"text-body-bold text-text-default":"text-body-light text-text-default",children:p.label}),g.jsx(FA,{variant:"default",label:p.count.toString()})]},p.label)}),f&&g.jsxs("button",{onClick:()=>x(h.name),className:"flex items-center gap-xxs text-meta-regular text-text-gray hover:text-text-default",children:[g.jsx("span",{children:v?"Minder tonen":"Meer tonen"}),g.jsx($,{name:"caret-down",size:"s",color:"gray",className:`transition-transform duration-200 ${v?"rotate-180":""}`})]})]},h.name)})})}),E.length>0&&g.jsx("div",{className:"flex flex-wrap gap-xs",children:E.map(h=>g.jsx(LE,{label:h,onRemove:()=>Q==null?void 0:Q(h)},h))})]})},de=[{label:"Geen krant ontvangen",value:"geen-krant"},{label:"Krant te laat bezorgd",value:"te-laat"},{label:"Verkeerde krant bezorgd",value:"verkeerde-krant"},{label:"Beschadigde krant",value:"beschadigd"}],NE=[0,7];function fe(A){const C=A.split("/");if(C.length!==3)return!1;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())||NE.includes(I.getMonth())||I.getDay()!==6?!1:I.getDate()<=7}function we(A,C){const E=new Date(A,C,1);for(;E.getDay()!==6;)E.setDate(E.getDate()+1);return E}function ve(A){const C=[],E=new Date;let B=E.getFullYear(),Q=E.getMonth();for(;C.length<A;){if(!NE.includes(Q)){const I=we(B,Q);(Q===6||Q===11)&&I.setDate(I.getDate()+7),I<=E&&C.push(I)}Q--,Q<0&&(Q=11,B--)}return C.map(I=>{const e=I.getFullYear(),t=String(I.getMonth()+1).padStart(2,"0"),n=String(I.getDate()).padStart(2,"0");return{label:I.toLocaleDateString("nl-NL",{day:"numeric",month:"long",year:"numeric"}),value:`${e}-${t}-${n}T00:00:00.000Z`}})}const he=ve(3),xe=({onSubmit:A})=>{const[C,E]=c.useState("krant"),[B,Q]=c.useState(""),[I,e]=c.useState(""),[t,n]=c.useState(!1),[i,r]=c.useState(!1),[o,u]=c.useState(!1),[d,s]=c.useState(!1),[l,w]=c.useState(""),[x,h]=c.useState({});c.useEffect(()=>{function p(F){s(!1),F.detail.success?(u(!0),w("")):w(F.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("bezorgklacht-result",p),()=>window.removeEventListener("bezorgklacht-result",p)},[]);const v=fe(B);function b(){const p={};if(C==="krant"&&(B||(p.datum="Vul een editiedatum in."),I||(p.klacht="Selecteer een klacht.")),C==="dnk"&&(B||(p.datum="Selecteer een editie.")),Object.keys(p).length>0){h(p);return}s(!0),w("");const F=C==="krant"?{melding:C,datum:B,klacht:I,verlengen:t,perPost:i}:{melding:C,datum:B,perPost:i};window.dispatchEvent(new CustomEvent("bezorgklacht-submit",{detail:F})),A==null||A(F)}function f(){E("krant"),Q(""),e(""),n(!1),r(!1),h({}),w(""),u(!1)}return o?g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx(QA,{children:"Hartelijk dank voor je melding. Wij nemen je klacht serieus en hebben deze direct doorgegeven aan onze bezorgdienst. Onze excuses voor het ongemak."}),g.jsx("div",{children:g.jsx(_,{variant:"secondary",label:"Nieuwe melding",iconLeft:"plus",onClick:f})})]}):g.jsxs("div",{className:"flex flex-col gap-l",children:[g.jsxs("p",{className:"text-body-light text-text-default [&_a]:underline",children:["Is je krant of De Nieuwe Koers niet (goed) bezorgd? Dat is vervelend en niet de bedoeling. Onze excuses daarvoor. Lees hier ",C==="dnk"?g.jsx("a",{href:"https://www.nd.nl/reader?tab=dnk",children:"De Nieuwe Koers"}):i?g.jsxs(g.Fragment,{children:["de ",g.jsx("a",{href:"https://www.nd.nl/reader",children:"krant"})," en ",g.jsx("a",{href:"https://www.nd.nl/reader?tab=dnk",children:"De Nieuwe Koers"})]}):g.jsxs(g.Fragment,{children:["de ",g.jsx("a",{href:"https://www.nd.nl/reader",children:"krant"})]})," digitaal of geef via onderstaand formulier een bezorgmelding door. Wij sturen je bezorgmelding direct door naar onze bezorgdienst om de bezorging te verbeteren."]}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("span",{className:"text-body-bold text-text-default",children:"Mijn melding gaat over"}),g.jsxs("div",{className:"grid grid-cols-2 gap-s",children:[g.jsx(hA,{variant:"card",heading:"De krant",label:"Eventueel in combinatie met De Nieuwe Koers",checked:C==="krant",onChange:()=>{E("krant"),Q("")}}),g.jsx(hA,{variant:"card",heading:"De Nieuwe Koers",label:"De krant is wel goed bezorgd",checked:C==="dnk",onChange:()=>E("dnk")})]})]}),C==="krant"&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Editiedatum",value:B,setValue:p=>{Q(p),h(F=>({...F,datum:void 0}))},datePicker:!0,maxDate:new Date,errors:x.datum?[x.datum]:null}),g.jsx(yA,{label:"Selecteer je klacht",options:de,value:I,onChange:p=>{e(p),h(F=>({...F,klacht:void 0}))},errors:x.klacht?[x.klacht]:null}),(I==="geen-krant"||I==="verkeerde-krant")&&g.jsxs(g.Fragment,{children:[g.jsx($A,{label:"Ik wil mijn abonnement met een dag verlengen",checked:t,onChange:p=>{const F=p.target.checked;n(F),F&&r(!1)}}),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx($A,{label:v?"Ik wil de krant en De Nieuwe Koers per post ontvangen":"Ik wil de krant per post ontvangen",checked:i,onChange:p=>{const F=p.target.checked;r(F),F&&n(!1)}}),i&&g.jsx(QA,{children:'Let op: levering kan enkele dagen duren. De <a href="https://www.nd.nl/reader">digitale krant</a> is direct beschikbaar indien dit onderdeel is van je abonnement.'})]})]})]}),C==="dnk"&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(yA,{label:"Gemiste editie",options:he,value:B,onChange:p=>{Q(p),h(F=>({...F,datum:void 0}))},errors:x.datum?[x.datum]:null}),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx($A,{label:"Ik wil deze editie per post ontvangen.",checked:i,onChange:p=>r(p.target.checked)}),i&&g.jsx(QA,{children:'Let op: levering kan enkele dagen duren. <a href="https://www.nd.nl/reader?tab=dnk">De Nieuwe Koers</a> is ook digitaal beschikbaar indien dit onderdeel is van je abonnement.'})]})]}),l&&g.jsx(QA,{variant:"warning",children:l}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:b,disabled:d})})]})},pe=({onSubmit:A})=>g.jsx(eC,{variant:"large",items:[{label:"Bezorgklacht doorgeven",content:g.jsx(xe,{onSubmit:A})}]}),me=["Minimaal 5 aaneengesloten dagen","Digitale krant blijft altijd beschikbaar","De betaling van het abonnementstarief loopt ongewijzigd door"];function NB(A){const C=A.split("/");if(C.length!==3)return null;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())?null:I}function OB(A,C){const E=new Date(A);return E.setDate(E.getDate()+C),E}const SB=({label:A,value:C})=>g.jsxs("div",{className:"flex flex-col sm:flex-row sm:gap-m",children:[g.jsx("span",{className:"text-body-light text-text-default sm:w-32 sm:flex-shrink-0",children:A}),g.jsx("span",{className:"text-body-regular text-text-default",children:C})]}),De=({data:A,onVerwijderen:C})=>g.jsx(aA,{padding:"s",children:g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-row items-center justify-between gap-s",children:[g.jsx("span",{className:"text-heading-s text-text-default",children:"Tijdelijke stopzetting"}),C&&g.jsx(_,{variant:"pill",label:"Verwijderen",iconLeft:"trash",onClick:C})]}),g.jsx(SB,{label:"Ingangsdatum",value:A.ingangsDatum}),g.jsx(SB,{label:"Einddatum",value:A.eindDatum})]})}),be=({onSubmit:A,onSuccess:C})=>{const[E,B]=c.useState(""),[Q,I]=c.useState(""),[e,t]=c.useState(!1),[n,i]=c.useState(""),[r,o]=c.useState({}),[u,d]=c.useState(null);c.useEffect(()=>{function h(v){t(!1),v.detail.success&&u?(C({...u,toekMutNo:v.detail.toekMutNo}),d(null)):i(v.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("bezorging-stopzetten-result",h),()=>window.removeEventListener("bezorging-stopzetten-result",h)},[u,C]);const s=E?NB(E)??new Date:new Date,l=OB(s,5),w=new Date(s.getFullYear(),s.getMonth()+1,s.getDate());function x(){const h={};if(E||(h.ingangsDatum="Vul een ingangsdatum in."),!Q)h.eindDatum="Vul een einddatum in.";else if(E){const b=NB(Q)??new Date;b<l?h.eindDatum="De einddatum moet minimaal 5 dagen na de ingangsdatum liggen.":b>w&&(h.eindDatum="De einddatum mag maximaal een maand na de ingangsdatum liggen.")}if(Object.keys(h).length>0){o(h);return}const v={ingangsDatum:E,eindDatum:Q};d(v),t(!0),i(""),window.dispatchEvent(new CustomEvent("bezorging-stopzetten-submit",{detail:v})),A==null||A(v)}return g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Vul hieronder de periode in waarover je geen krant wilt ontvangen."}),g.jsxs("p",{className:"text-body-light text-text-default",children:["Wil je langer dan een maand je abonnement tijdelijk stopzetten? Neem dan ",g.jsx("a",{href:"https://nd.nl/service/contact",className:"underline",children:"contact"})," op met onze abonneeservice voor de mogelijkheden."]})]}),g.jsx(aA,{background:"gray",padding:"m",children:g.jsx("div",{className:"flex flex-col gap-xs",children:me.map((h,v)=>g.jsx(kA,{icon:"square",text:h},v))})}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Ingangsdatum",value:E,setValue:h=>{B(h),I(""),o(v=>({...v,ingangsDatum:void 0,eindDatum:void 0}))},datePicker:!0,minDate:OB(new Date,4),errors:r.ingangsDatum?[r.ingangsDatum]:null}),g.jsx(gA,{label:"Einddatum",value:Q,setValue:h=>{I(h),o(v=>({...v,eindDatum:void 0}))},datePicker:!0,minDate:l,maxDate:w,errors:r.eindDatum?[r.eindDatum]:null})]}),n&&g.jsx(QA,{variant:"warning",children:n}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:x,disabled:e})})]})},Le=({onSubmit:A,onDelete:C,initialData:E,initialPreviousSubmissions:B})=>{const[Q,I]=c.useState(!1),[e,t]=c.useState(E??null),[n,i]=c.useState(B??[]),[r,o]=c.useState(!1),[u,d]=c.useState(null),[s,l]=c.useState(!1),[w,x]=c.useState("");function h(Y){i(k=>e?[e,...k]:k),t(Y),o(!0),I(!0)}c.useEffect(()=>{function Y(k){l(!1),u&&(k.detail.success?(t(null),o(!1),d(null),x("")):x(k.detail.message||"Er is iets misgegaan. Probeer het later opnieuw."))}return window.addEventListener("bezorging-stopzetten-delete-result",Y),()=>window.removeEventListener("bezorging-stopzetten-delete-result",Y)},[u,n]);function v(Y,k){d({data:Y,slot:k}),x("")}function b(){u&&(l(!0),x(""),window.dispatchEvent(new CustomEvent("bezorging-stopzetten-delete",{detail:u.data})),C==null||C(u.data))}function f(){d(null),x("")}const p=r?g.jsx(QA,{children:'Dank je wel voor het doorgeven van je wijziging. Wij verwerken deze in ons systeem. Heb je nog vragen of opmerkingen? Dan kun je <a href="https://nd.nl/service/contact" class="underline">hier contact met ons opnemen</a>.'}):null,F=e?g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[p,g.jsx(De,{data:e,onVerwijderen:e.toekMutNo?()=>v(e,"current"):void 0})]}):g.jsx(be,{onSubmit:A,onSuccess:h});return g.jsxs(g.Fragment,{children:[g.jsx(TA,{variant:"large",label:"Bezorging tijdelijk stopzetten",isOpen:Q,onToggle:()=>I(!Q),content:F}),g.jsx(LA,{isOpen:u!==null,onClose:f,heading:"Melding verwijderen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet je zeker dat je deze melding wilt verwijderen?"}),w&&g.jsx(QA,{variant:"warning",children:w}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Verwijderen",onClick:b,disabled:s}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:f,disabled:s})]})]})})]})},je=["Minimaal 5 aaneengesloten bezorgdagen","Digitale krant blijft altijd beschikbaar","Verzending naar het buitenland niet mogelijk","Bezorging op Terschelling niet mogelijk","De betaling van het abonnementstarief loopt ongewijzigd door"];function yB(A){const C=A.split("/");if(C.length!==3)return null;const[E,B,Q]=C.map(Number),I=new Date(Q,B-1,E);return isNaN(I.getTime())?null:I}function tg(A,C){const E=new Date(A);return E.setDate(E.getDate()+C),E}const OA=({label:A,value:C})=>g.jsxs("div",{className:"flex flex-col sm:flex-row sm:gap-m",children:[g.jsx("span",{className:"text-body-light text-text-default sm:w-32 sm:flex-shrink-0",children:A}),g.jsx("span",{className:"text-body-regular text-text-default",children:C})]}),Fe=({data:A,onVerwijderen:C})=>{const E=[A.naamVerblijf,A.kamernummer].filter(Boolean).join(" "),B=[A.straat,A.huisnummer,A.toevoeging].filter(Boolean).join(" ");return g.jsx(aA,{padding:"s",children:g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-row items-center justify-between gap-s",children:[g.jsx("span",{className:"text-heading-s text-text-default",children:"Tijdelijk bezorgadres"}),C&&g.jsx(_,{variant:"pill",label:"Verwijderen",iconLeft:"trash",onClick:C})]}),E&&g.jsx(OA,{label:"Verblijf",value:E}),B&&g.jsx(OA,{label:"Adres",value:B}),g.jsx(OA,{label:"Postcode",value:A.postcode}),g.jsx(OA,{label:"Plaats",value:A.plaats}),g.jsx(OA,{label:"Ingangsdatum",value:A.ingangsDatum}),g.jsx(OA,{label:"Einddatum",value:A.eindDatum})]})})},Pe=({onSubmit:A,onLookupAdres:C,onSuccess:E,voorwaarden:B})=>{const[Q,I]=c.useState(""),[e,t]=c.useState(""),[n,i]=c.useState(""),[r,o]=c.useState(""),[u,d]=c.useState(""),[s,l]=c.useState(""),[w,x]=c.useState(""),[h,v]=c.useState(""),[b,f]=c.useState(""),[p,F]=c.useState(!1),[Y,k]=c.useState(""),[D,R]=c.useState({}),[H,G]=c.useState(null);c.useEffect(()=>{function P(K){F(!1),K.detail.success&&H?(E({...H,toekMutNo:K.detail.toekMutNo}),G(null)):k(K.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("afwijkend-bezorgadres-result",P),()=>window.removeEventListener("afwijkend-bezorgadres-result",P)},[H,E]),c.useEffect(()=>{var P;if(!n||!r){l(""),x("");return}(P=C==null?void 0:C(n,r))==null||P.then(({straat:K,plaats:L})=>{l(K),x(L)})},[n,r]);const O=tg(h?yB(h)??new Date:new Date,5);function M(){const P={};if(n||(P.postcode="Vul een postcode in."),r||(P.huisnummer="Vul een huisnummer in."),h||(P.ingangsDatum="Vul een ingangsdatum in."),b?h&&(yB(b)??new Date)<O&&(P.eindDatum="De einddatum moet minimaal 5 dagen na de ingangsdatum liggen."):P.eindDatum="Vul een einddatum in.",Object.keys(P).length>0){R(P);return}const K={naamVerblijf:Q,kamernummer:e,postcode:n,huisnummer:r,toevoeging:u,straat:s,plaats:w,ingangsDatum:h,eindDatum:b};G(K),F(!0),k(""),window.dispatchEvent(new CustomEvent("afwijkend-bezorgadres-submit",{detail:K})),A==null||A(K)}return g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Ga je op vakantie of wil je de krant tijdelijk op een ander adres ontvangen? Vul hieronder het afwijkende bezorgadres en de gewenste periode in."}),g.jsx(aA,{background:"gray",padding:"m",children:g.jsx("div",{className:"flex flex-col gap-xs",children:B.map((P,K)=>g.jsx(kA,{icon:"square",text:P},K))})}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-s",children:[g.jsx(gA,{label:"Naam verblijf",value:Q,setValue:I}),g.jsx(gA,{label:"Kamernummer",value:e,setValue:t})]}),g.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-s",children:[g.jsx("div",{className:"col-span-2",children:g.jsx(gA,{label:"Postcode *",value:n,setValue:P=>{i(P),R(K=>({...K,postcode:void 0}))},errors:D.postcode?[D.postcode]:null})}),g.jsx(gA,{label:"Huisnummer *",value:r,setValue:P=>{o(P),R(K=>({...K,huisnummer:void 0}))},errors:D.huisnummer?[D.huisnummer]:null}),g.jsx(gA,{label:"Toevoeging",value:u,setValue:d})]}),g.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-s",children:[g.jsx(gA,{label:"Straat",value:s,setValue:()=>{},disabled:!0}),g.jsx(gA,{label:"Plaats",value:w,setValue:()=>{},disabled:!0})]}),g.jsxs("div",{className:"flex flex-col gap-s pt-7",children:[g.jsx(gA,{label:"Ingangsdatum *",value:h,setValue:P=>{v(P),f(""),R(K=>({...K,ingangsDatum:void 0,eindDatum:void 0}))},datePicker:!0,minDate:tg(new Date,4),errors:D.ingangsDatum?[D.ingangsDatum]:null}),g.jsx(gA,{label:"Einddatum *",value:b,setValue:P=>{f(P),R(K=>({...K,eindDatum:void 0}))},datePicker:!0,minDate:O,errors:D.eindDatum?[D.eindDatum]:null})]})]}),Y&&g.jsx(QA,{variant:"warning",children:Y}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Verzenden",onClick:M,disabled:p})})]})},He=({onSubmit:A,onDelete:C,onLookupAdres:E,initialEntries:B,voorwaarden:Q=je})=>{const[I,e]=c.useState(!1),[t,n]=c.useState(B??[]),[i,r]=c.useState(t.length===0),[o,u]=c.useState(!1),[d,s]=c.useState(null),[l,w]=c.useState(!1),[x,h]=c.useState("");function v(k){n(D=>[...D,k]),r(!1),u(!0),e(!0)}c.useEffect(()=>{function k(D){w(!1),d&&(D.detail.success?(n(R=>R.filter((H,G)=>G!==d.index)),u(!1),s(null),h("")):h(D.detail.message||"Er is iets misgegaan. Probeer het later opnieuw."))}return window.addEventListener("afwijkend-bezorgadres-delete-result",k),()=>window.removeEventListener("afwijkend-bezorgadres-delete-result",k)},[d]);function b(k,D){s({data:k,index:D}),h("")}function f(){d&&(w(!0),h(""),window.dispatchEvent(new CustomEvent("afwijkend-bezorgadres-delete",{detail:d.data})),C==null||C(d.data))}function p(){s(null),h("")}const F=o?g.jsx(QA,{children:'Dank je wel voor het doorgeven van je wijziging. Wij verwerken deze in ons systeem en sturen je vervolgens een bevestiging per e-mail. Heb je nog vragen of opmerkingen? Dan kun je <a href="https://nd.nl/service/contact" class="underline">hier contact met ons opnemen</a>.'}):null,Y=g.jsxs("div",{className:"flex flex-col gap-m lg:gap-l",children:[F,t.length>0&&g.jsx("div",{className:"flex flex-col gap-s",children:t.map((k,D)=>g.jsx(Fe,{data:k,onVerwijderen:k.canDelete!==!1&&k.toekMutNo?()=>b(k,D):void 0},k.toekMutNo||D))}),i?g.jsx(Pe,{onSubmit:A,onLookupAdres:E,onSuccess:v,voorwaarden:Q}):g.jsx("div",{children:g.jsx(_,{variant:"secondary",label:"Nieuwe toevoegen",iconLeft:"plus",onClick:()=>r(!0)})})]});return g.jsxs(g.Fragment,{children:[g.jsx(TA,{variant:"large",label:"Bezorgen op een ander (vakantie) adres",isOpen:I,onToggle:()=>e(!I),content:Y}),g.jsx(LA,{isOpen:d!==null,onClose:p,heading:"Melding verwijderen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet je zeker dat je deze melding wilt verwijderen?"}),x&&g.jsx(QA,{variant:"warning",children:x}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Verwijderen",onClick:f,disabled:l}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:p,disabled:l})]})]})})]})},OE=({value:A,setValue:C,label:E,help:B,errors:Q,rows:I=5,...e})=>g.jsxs("div",{className:"flex flex-col gap-xxs text-body-regular text-text-default",children:[E&&g.jsx("label",{className:"text-body-light",children:E}),g.jsx("textarea",{value:A,onChange:t=>C(t.target.value),rows:I,className:`w-full px-3 py-2 border bg-background-default focus:outline-none focus:border-border-brand resize-none ${Q!=null&&Q.length?"border-border-warning":"border-border-gray"}`,...e}),(B||(Q==null?void 0:Q.length))&&g.jsxs("div",{className:"flex flex-col",children:[B&&g.jsx("span",{className:"text-text-gray text-meta-regular",children:B}),Q==null?void 0:Q.map((t,n)=>g.jsx("span",{className:"text-text-warning text-meta-regular",children:t},n))]})]}),Re=({isOpen:A,onClose:C,heading:E,body:B,mediaUrl:Q,mediaType:I="image",metaText:e})=>g.jsx(LA,{isOpen:A,onClose:C,heading:Q?void 0:E,children:g.jsxs("div",{className:"flex flex-col gap-m",children:[Q&&(I==="video"?g.jsx("video",{src:Q,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"w-full"}):g.jsx("img",{src:Q,alt:"",className:"w-full"})),g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("div",{className:"flex flex-col gap-xs",children:[Q&&g.jsx("h2",{className:"text-heading-m text-text-default",children:E}),g.jsx("p",{className:"text-body-light text-text-default",children:B})]}),e&&g.jsx("p",{className:"text-meta-light text-text-default italic",children:e})]})]})}),Mg=({features:A})=>{var B;const[C,E]=c.useState(null);return A.length===0?null:g.jsxs(g.Fragment,{children:[g.jsx("ul",{className:"flex flex-col flex-1 gap-xs justify-center",children:A.map((Q,I)=>g.jsxs("li",{className:"flex items-start justify-between gap-xs",children:[g.jsxs("div",{className:"flex items-start gap-xs",children:[g.jsx("span",{className:"flex-shrink-0",children:g.jsx($,{name:Q.included?"check":"x-mark",variant:"outline",size:"s",color:Q.included?"brand":"gray"})}),g.jsx("button",{type:"button",className:`text-meta-light text-left ${Q.included?"text-text-default":"text-text-disabled !line-through"} ${Q.modalBody?"cursor-pointer":"cursor-default"}`,onClick:()=>Q.modalBody&&E(I),children:Q.label})]}),Q.modalBody&&g.jsx("button",{type:"button",className:"flex-shrink-0 transition-colors",onClick:()=>E(I),children:g.jsx($,{name:"info",variant:"outline",size:"s",color:"default"})})]},I))}),C!==null&&((B=A[C])==null?void 0:B.modalBody)&&g.jsx(Re,{isOpen:!0,heading:A[C].label,body:A[C].modalBody,mediaUrl:A[C].modalMediaUrl,mediaType:A[C].modalMediaType,metaText:A[C].modalMetaText,onClose:()=>E(null)})]})};var xC={exports:{}},ke=xC.exports,VB;function SE(){return VB||(VB=1,(function(A,C){(function(E,B){A.exports=B()})(ke,(function(){var E=1e3,B=6e4,Q=36e5,I="millisecond",e="second",t="minute",n="hour",i="day",r="week",o="month",u="quarter",d="year",s="date",l="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,x=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(O){var M=["th","st","nd","rd"],P=O%100;return"["+O+(M[(P-20)%10]||M[P]||M[0])+"]"}},v=function(O,M,P){var K=String(O);return!K||K.length>=M?O:""+Array(M+1-K.length).join(P)+O},b={s:v,z:function(O){var M=-O.utcOffset(),P=Math.abs(M),K=Math.floor(P/60),L=P%60;return(M<=0?"+":"-")+v(K,2,"0")+":"+v(L,2,"0")},m:function O(M,P){if(M.date()<P.date())return-O(P,M);var K=12*(P.year()-M.year())+(P.month()-M.month()),L=M.clone().add(K,o),J=P-L<0,a=M.clone().add(K+(J?-1:1),o);return+(-(K+(P-L)/(J?L-a:a-L))||0)},a:function(O){return O<0?Math.ceil(O)||0:Math.floor(O)},p:function(O){return{M:o,y:d,w:r,d:i,D:s,h:n,m:t,s:e,ms:I,Q:u}[O]||String(O||"").toLowerCase().replace(/s$/,"")},u:function(O){return O===void 0}},f="en",p={};p[f]=h;var F="$isDayjsObject",Y=function(O){return O instanceof H||!(!O||!O[F])},k=function O(M,P,K){var L;if(!M)return f;if(typeof M=="string"){var J=M.toLowerCase();p[J]&&(L=J),P&&(p[J]=P,L=J);var a=M.split("-");if(!L&&a.length>1)return O(a[0])}else{var m=M.name;p[m]=M,L=m}return!K&&L&&(f=L),L||!K&&f},D=function(O,M){if(Y(O))return O.clone();var P=typeof M=="object"?M:{};return P.date=O,P.args=arguments,new H(P)},R=b;R.l=k,R.i=Y,R.w=function(O,M){return D(O,{locale:M.$L,utc:M.$u,x:M.$x,$offset:M.$offset})};var H=(function(){function O(P){this.$L=k(P.locale,null,!0),this.parse(P),this.$x=this.$x||P.x||{},this[F]=!0}var M=O.prototype;return M.parse=function(P){this.$d=(function(K){var L=K.date,J=K.utc;if(L===null)return new Date(NaN);if(R.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var a=L.match(w);if(a){var m=a[2]-1||0,N=(a[7]||"0").substring(0,3);return J?new Date(Date.UTC(a[1],m,a[3]||1,a[4]||0,a[5]||0,a[6]||0,N)):new Date(a[1],m,a[3]||1,a[4]||0,a[5]||0,a[6]||0,N)}}return new Date(L)})(P),this.init()},M.init=function(){var P=this.$d;this.$y=P.getFullYear(),this.$M=P.getMonth(),this.$D=P.getDate(),this.$W=P.getDay(),this.$H=P.getHours(),this.$m=P.getMinutes(),this.$s=P.getSeconds(),this.$ms=P.getMilliseconds()},M.$utils=function(){return R},M.isValid=function(){return this.$d.toString()!==l},M.isSame=function(P,K){var L=D(P);return this.startOf(K)<=L&&L<=this.endOf(K)},M.isAfter=function(P,K){return D(P)<this.startOf(K)},M.isBefore=function(P,K){return this.endOf(K)<D(P)},M.$g=function(P,K,L){return R.u(P)?this[K]:this.set(L,P)},M.unix=function(){return Math.floor(this.valueOf()/1e3)},M.valueOf=function(){return this.$d.getTime()},M.startOf=function(P,K){var L=this,J=!!R.u(K)||K,a=R.p(P),m=function(Z,z){var q=R.w(L.$u?Date.UTC(L.$y,z,Z):new Date(L.$y,z,Z),L);return J?q:q.endOf(i)},N=function(Z,z){return R.w(L.toDate()[Z].apply(L.toDate("s"),(J?[0,0,0,0]:[23,59,59,999]).slice(z)),L)},U=this.$W,S=this.$M,V=this.$D,W="set"+(this.$u?"UTC":"");switch(a){case d:return J?m(1,0):m(31,11);case o:return J?m(1,S):m(0,S+1);case r:var T=this.$locale().weekStart||0,X=(U<T?U+7:U)-T;return m(J?V-X:V+(6-X),S);case i:case s:return N(W+"Hours",0);case n:return N(W+"Minutes",1);case t:return N(W+"Seconds",2);case e:return N(W+"Milliseconds",3);default:return this.clone()}},M.endOf=function(P){return this.startOf(P,!1)},M.$set=function(P,K){var L,J=R.p(P),a="set"+(this.$u?"UTC":""),m=(L={},L[i]=a+"Date",L[s]=a+"Date",L[o]=a+"Month",L[d]=a+"FullYear",L[n]=a+"Hours",L[t]=a+"Minutes",L[e]=a+"Seconds",L[I]=a+"Milliseconds",L)[J],N=J===i?this.$D+(K-this.$W):K;if(J===o||J===d){var U=this.clone().set(s,1);U.$d[m](N),U.init(),this.$d=U.set(s,Math.min(this.$D,U.daysInMonth())).$d}else m&&this.$d[m](N);return this.init(),this},M.set=function(P,K){return this.clone().$set(P,K)},M.get=function(P){return this[R.p(P)]()},M.add=function(P,K){var L,J=this;P=Number(P);var a=R.p(K),m=function(S){var V=D(J);return R.w(V.date(V.date()+Math.round(S*P)),J)};if(a===o)return this.set(o,this.$M+P);if(a===d)return this.set(d,this.$y+P);if(a===i)return m(1);if(a===r)return m(7);var N=(L={},L[t]=B,L[n]=Q,L[e]=E,L)[a]||1,U=this.$d.getTime()+P*N;return R.w(U,this)},M.subtract=function(P,K){return this.add(-1*P,K)},M.format=function(P){var K=this,L=this.$locale();if(!this.isValid())return L.invalidDate||l;var J=P||"YYYY-MM-DDTHH:mm:ssZ",a=R.z(this),m=this.$H,N=this.$m,U=this.$M,S=L.weekdays,V=L.months,W=L.meridiem,T=function(z,q,y,CA){return z&&(z[q]||z(K,J))||y[q].slice(0,CA)},X=function(z){return R.s(m%12||12,z,"0")},Z=W||function(z,q,y){var CA=z<12?"AM":"PM";return y?CA.toLowerCase():CA};return J.replace(x,(function(z,q){return q||(function(y){switch(y){case"YY":return String(K.$y).slice(-2);case"YYYY":return R.s(K.$y,4,"0");case"M":return U+1;case"MM":return R.s(U+1,2,"0");case"MMM":return T(L.monthsShort,U,V,3);case"MMMM":return T(V,U);case"D":return K.$D;case"DD":return R.s(K.$D,2,"0");case"d":return String(K.$W);case"dd":return T(L.weekdaysMin,K.$W,S,2);case"ddd":return T(L.weekdaysShort,K.$W,S,3);case"dddd":return S[K.$W];case"H":return String(m);case"HH":return R.s(m,2,"0");case"h":return X(1);case"hh":return X(2);case"a":return Z(m,N,!0);case"A":return Z(m,N,!1);case"m":return String(N);case"mm":return R.s(N,2,"0");case"s":return String(K.$s);case"ss":return R.s(K.$s,2,"0");case"SSS":return R.s(K.$ms,3,"0");case"Z":return a}return null})(z)||a.replace(":","")}))},M.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},M.diff=function(P,K,L){var J,a=this,m=R.p(K),N=D(P),U=(N.utcOffset()-this.utcOffset())*B,S=this-N,V=function(){return R.m(a,N)};switch(m){case d:J=V()/12;break;case o:J=V();break;case u:J=V()/3;break;case r:J=(S-U)/6048e5;break;case i:J=(S-U)/864e5;break;case n:J=S/Q;break;case t:J=S/B;break;case e:J=S/E;break;default:J=S}return L?J:R.a(J)},M.daysInMonth=function(){return this.endOf(o).$D},M.$locale=function(){return p[this.$L]},M.locale=function(P,K){if(!P)return this.$L;var L=this.clone(),J=k(P,K,!0);return J&&(L.$L=J),L},M.clone=function(){return R.w(this.$d,this)},M.toDate=function(){return new Date(this.valueOf())},M.toJSON=function(){return this.isValid()?this.toISOString():null},M.toISOString=function(){return this.$d.toISOString()},M.toString=function(){return this.$d.toUTCString()},O})(),G=H.prototype;return D.prototype=G,[["$ms",I],["$s",e],["$m",t],["$H",n],["$W",i],["$M",o],["$y",d],["$D",s]].forEach((function(O){G[O[1]]=function(M){return this.$g(M,O[0],O[1])}})),D.extend=function(O,M){return O.$i||(O(M,H,D),O.$i=!0),D},D.locale=k,D.isDayjs=Y,D.unix=function(O){return D(1e3*O)},D.en=p[f],D.Ls=p,D.p={},D}))})(xC)),xC.exports}var Ue=SE();const dg=hE(Ue);var pC={exports:{}},Me=pC.exports,GB;function Ke(){return GB||(GB=1,(function(A,C){(function(E,B){A.exports=B(SE())})(Me,(function(E){function B(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var Q=B(E),I={name:"nl",weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),ordinal:function(e){return"["+e+(e===1||e===8||e>=20?"ste":"de")+"]"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"een minuut",mm:"%d minuten",h:"een uur",hh:"%d uur",d:"een dag",dd:"%d dagen",M:"een maand",MM:"%d maanden",y:"een jaar",yy:"%d jaar"}};return Q.default.locale(I,null,!0),I}))})(pC)),pC.exports}var Ye=Ke();const Ne=hE(Ye),Kg=A=>A?dg(A).locale(Ne).format("D MMMM YYYY"):null,JB=4,Oe=A=>{const C=new Date;return C.setHours(0,0,0,0),C.setDate(C.getDate()+A),C},Se=A=>{const C=new Date(A);return C.setHours(0,0,0,0),C},ye=A=>A>=5?"grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5":A===4?"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4":A===3?"grid-cols-1 sm:grid-cols-3 max-w-lg":A===2?"grid-cols-1 sm:grid-cols-2 max-w-sm":"grid-cols-1 max-w-xs",Ve='Dank u wel voor het doorgeven van uw wijziging. Wij verwerken deze in ons systeem en sturen u vervolgens een bevestiging per e-mail. Heeft u nog vragen of opmerkingen? Dan kunt u <a href="https://nd.nl/service/contact" class="underline">hier</a> contact met ons opnemen.',Yg=({abonnementen:A,currentSubscription:C,bezorgDagen:E=[],actieAbonnement:B,minStartdatum:Q,submitLabel:I="Abonnement wijzigen",submittingLabel:e="Bezig met wijzigen...",successMessage:t=Ve,onSelect:n,onSubmit:i,onSuccess:r})=>{var N;const[o,u]=c.useState(A.length===1?A[0].id:C),[d,s]=c.useState(""),[l,w]=c.useState(),[x,h]=c.useState(!1),[v,b]=c.useState(!1),[f,p]=c.useState(),[F,Y]=c.useState(!1),k=A.find(U=>U.id===o),D=(k==null?void 0:k.papier)===!0,R=D&&!(k!=null&&k.bezorgDag)&&E.length>0,H=Oe(D?JB:0),G=Q?Se(Q):void 0,O=G!==void 0&&G>H,M=O?G:H,P=O?`Uw abonnement kan op zijn vroegst ingaan op ${Kg(M.toISOString())}.`:D?`Een papieren abonnement kan op zijn vroegst over ${JB} dagen ingaan.`:void 0,K=(k==null?void 0:k.bezorgDag)??l,L=(N=E.find(U=>U.value===K))==null?void 0:N.label,J=U=>{u(U),s(""),w(void 0),p(void 0),Y(!1),n==null||n(U)},a=()=>{Y(!1),m()},m=async()=>{if(!(!o||!d)){p(void 0),b(!0);try{i&&await i({subscription:o,startdatum:d,bezorgDag:(k==null?void 0:k.bezorgDag)??l}),h(!0),r==null||r()}catch(U){p(U instanceof Error?U.message:"Er is iets misgegaan bij het wijzigen van uw abonnement. Probeer het later opnieuw.")}finally{b(!1)}}};return x?g.jsx(QA,{children:t}):g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"flex flex-col gap-m",children:[B&&g.jsx(QA,{variant:"warning",children:"U heeft een actie-abonnement met een vaste looptijd. Wanneer u uw abonnement wijzigt, gaat deze pas in na de einddatum van uw huidige abonnement."}),g.jsx("div",{className:`grid gap-xs md:gap-s ${ye(A.length)}`,children:A.map(U=>{const S=C===U.id,V=o===U.id;return g.jsx("button",{type:"button",className:"flex flex-col p-0 border-0 bg-transparent cursor-pointer text-left w-full min-w-0",onClick:()=>J(U.id),children:g.jsxs(aA,{borderColor:V?"brand":"gray-subtle",padding:"none",className:`h-full flex flex-col w-full transition-[border-color] duration-200 ease-in-out ${V?"":"hover:border-border-brand"}`,children:[S&&g.jsx("div",{className:"text-meta-uppercase text-text-brand bg-background-brand-subtle px-xs md:px-s py-xxs text-center break-words",children:"Huidig abonnement"}),g.jsxs("div",{className:"p-xs md:p-s flex flex-col gap-xxs text-center flex-1 justify-center",children:[g.jsx("span",{className:"text-heading-s text-text-default break-words",children:U.title}),g.jsxs("span",{className:"text-meta-light text-text-default break-words",children:[U.prijs??"€....,—",U.prijsPeriode??"/maand"]})]})]})},U.id)})}),(k==null?void 0:k.features)&&k.features.length>0&&g.jsx(Mg,{features:k.features}),o&&o!==C&&g.jsxs("div",{className:"flex flex-col gap-m",children:[R&&g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("h2",{className:"text-heading-s text-text-default",children:"Op welke dag wilt u de papieren krant ontvangen?"}),g.jsx("div",{className:"flex flex-col gap-xs",children:E.map(U=>g.jsx(hA,{variant:"card",layout:"horizontal",heading:U.label,label:U.description,priceLabel:U.price,name:"bezorgDag",value:U.value,checked:l===U.value,onChange:()=>w(U.value)},U.value))})]}),g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx(gA,{label:"Gewenste startdatum",value:d,setValue:s,datePicker:!0,minDate:M,help:P}),f&&g.jsx(QA,{variant:"warning",children:f}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:v?e:I,onClick:()=>Y(!0),disabled:!d||R&&!l||v})})]})]})]}),g.jsx(LA,{isOpen:F,onClose:()=>Y(!1),heading:I,children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsxs("p",{className:"text-body-light text-text-default",children:["Weet u zeker dat u wilt overstappen naar ",k==null?void 0:k.title,"?"]}),g.jsxs("div",{className:"flex flex-col gap-xxs text-body-light text-text-default",children:[g.jsxs("span",{children:["Ingangsdatum: ",d]}),L&&g.jsxs("span",{children:["Bezorgdag: ",L]})]}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:I,onClick:a,disabled:v}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:()=>Y(!1),disabled:v})]})]})})]})};function Ge(A,C,E){const B=E?A.findIndex(I=>I.id===E):-1,Q=new Set(C);return B>=0&&Q.add(A[B].id),A.filter((I,e)=>Q.has(I.id)&&(B<0||e<=B))}const yE=14;function Je(A,C=new Date){if(!A)return!1;const E=dg(A).startOf("day").add(yE,"day");return dg(C).startOf("day").isBefore(E)}const TB=[{label:"Financieel",value:"financieel",stopcode:20,flow:"aanbod",toelichting:"We begrijpen dat kosten een rol kunnen spelen. Daarom bieden we u graag een goedkoper abonnement aan, zodat u kunt blijven genieten van uw krant."},{label:"Tijdgebrek",value:"tijdgebrek",stopcode:7,flow:"aanbod",toelichting:"We begrijpen dat u te weinig toekomt aan de krant. We hebben abonnementen die beter passen bij een druk leven, minder dan u nu betaalt, maar toch lekker blijven lezen wanneer het u uitkomt."},{label:"Inhoudelijke reden",value:"inhoudelijke-reden",stopcode:37,flow:"feedback",toelichting:"We vinden het jammer dat de inhoud niet (meer) aansluit bij wat u zoekt. Wilt u ons in een paar woorden vertellen wat u mist? Uw reactie nemen we serieus en uw feedback helpt ons om de krant beter te maken."},{label:"Wilde een artikel lezen",value:"wilde-lezen",stopcode:14,flow:"direct"},{label:"Persoonlijke omstandigheden",value:"persoonlijke-omstandigheden",stopcode:71,flow:"direct",toelichting:"We begrijpen dat er soms persoonlijke omstandigheden zijn die een rol spelen. We regelen de opzegging zorgvuldig voor u af."},{label:"Overig",value:"overig",stopcode:70,flow:"aanbod",toelichting:"We hebben verschillende abonnementen en oplossingen die misschien beter aansluiten bij uw situatie."}],Te=[{id:"digitaal-basis",title:"Digitaal Basis"},{id:"digitaal-plus",title:"Digitaal Plus"},{id:"papier-zaterdag",title:"Digitaal + Papier zaterdag",papier:!0,bezorgDag:"zat"},{id:"papier-vrijdag-zaterdag",title:"Digitaal + Papier vrijdag en zaterdag",papier:!0,bezorgDag:"vrij-zat"},{id:"papier-maandag-zaterdag",title:"Digitaal + Papier maandag t/m zaterdag",papier:!0,bezorgDag:"ma-zat"}],ze='Kunt u de volle abonnementsprijs niet betalen? Dan kunt u een Fondsabonnement aanvragen bij het <a href="https://nd.nl/service/ndfonds">ND Fonds</a>: een zelfstandige stichting die, dankzij giften van andere lezers, de helft van de abonnementsprijs voor u betaalt. Bij een aanvraag kijkt het Fonds alleen naar uw inkomen, gezinssituatie en woonsituatie.',Xe=`U zit nog in de bedenktijd van ${yE} dagen na de ingangsdatum van uw abonnement. Uw opzegging gaat daarom direct in, ook al heeft u een actie-abonnement met een vaste looptijd.`,We=A=>A?`U heeft een actie-abonnement met een vaste looptijd tot ${A}. U kunt hieronder opzeggen of overstappen, maar dat gaat pas na die datum in.`:"U heeft een actie-abonnement met een vaste looptijd. U kunt hieronder opzeggen of overstappen, maar dat gaat pas in na de einddatum van uw huidige looptijd.",qe=(A,C)=>`${A?C?`Uw opzegging is geregistreerd en gaat in op ${C}, de einddatum van de looptijd van uw actie-abonnement.`:"Uw opzegging is geregistreerd en gaat in per einddatum van de looptijd van uw actie-abonnement.":"Uw opzegging is verwerkt."} U ontvangt een bevestiging per e-mail. Mocht u ooit van gedachten veranderen, u bent altijd welkom terug.`,zB="Fijn dat u blijft lezen. Wij verwerken uw wijziging in ons systeem en sturen u vervolgens een bevestiging per e-mail. Uw opzegging hebben wij niet doorgevoerd.",Ze=({abonnementen:A=Te,aanbod:C,currentSubscription:E,bezorgDagen:B,actieAbonnement:Q,actieAbonnementEinddatum:I,abonnementStartdatum:e,homepageHref:t="https://nd.nl",onSubmit:n,onOverstappen:i})=>{const[r,o]=c.useState(""),[u,d]=c.useState(""),[s,l]=c.useState(!1),[w,x]=c.useState(!1),[h,v]=c.useState(!1),[b,f]=c.useState(""),[p,F]=c.useState({}),[Y,k]=c.useState(!1),D=TB.find(m=>m.value===r),R=I?Kg(I.toISOString()):null,H=Je(e),G=Q===!0&&!H,O=(D==null?void 0:D.flow)==="aanbod"?Ge(A,(C==null?void 0:C[D.value])??A.map(m=>m.id),E):[],P=O.filter(m=>m.id!==E).length>0,K=(D==null?void 0:D.value)==="financieel"&&!P;c.useEffect(()=>{function m(N){v(!1),N.detail.success?(l(!0),f("")):f(N.detail.message||"Er is iets misgegaan. Probeer het later opnieuw.")}return window.addEventListener("abo-opzeggen-result",m),()=>window.removeEventListener("abo-opzeggen-result",m)},[]);function L(m){o(m),d(""),f(""),k(!1),F(N=>({...N,reden:void 0}))}function J(){if(!D){F({reden:"Selecteer een reden."});return}k(!0)}function a(){if(k(!1),!D){F({reden:"Selecteer een reden."});return}const m={value:D.value,stopcode:D.stopcode,...D.flow==="feedback"&&u.trim()?{feedback:u.trim()}:{}};v(!0),f(""),window.dispatchEvent(new CustomEvent("abo-opzeggen-submit",{detail:m})),n==null||n(m)}return w?g.jsx(QA,{children:zB}):s?g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx(QA,{children:qe(G,R)}),g.jsx("div",{children:g.jsx(_,{variant:"primary",label:"Terug naar de homepage",href:t})})]}):g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"flex flex-col gap-m",children:[G&&g.jsx(QA,{variant:"warning",children:We(R)}),Q&&H&&g.jsx(QA,{children:Xe}),g.jsx("p",{className:"text-body-light text-text-default",children:"Jammer dat u uw abonnement wilt opzeggen. We zijn benieuwd naar uw reden. Misschien kunnen we u nog helpen en anders nemen we uw feedback graag mee."}),g.jsx("div",{className:"flex flex-col gap-s",children:g.jsx(yA,{label:"Waarom wilt u uw abonnement opzeggen?",options:TB,value:r,onChange:L,errors:p.reden?[p.reden]:null})}),(D==null?void 0:D.toelichting)&&g.jsx("p",{className:"text-body-light text-text-default",children:D.toelichting}),K&&g.jsx(QA,{children:ze}),P&&D&&g.jsx(Yg,{abonnementen:O,currentSubscription:E,bezorgDagen:B,minStartdatum:G?I:void 0,submitLabel:"Overstappen",submittingLabel:"Bezig met overstappen...",successMessage:zB,onSubmit:m=>i==null?void 0:i(m,D.value),onSuccess:()=>x(!0)},D.value),(D==null?void 0:D.flow)==="feedback"&&g.jsx(OE,{label:"Wat had u anders verwacht van onze inhoud?",help:"Optioneel. Uw feedback helpt ons de krant te verbeteren.",value:u,setValue:d}),b&&g.jsx(QA,{variant:"warning",children:b}),g.jsx("div",{children:g.jsx(_,{variant:P?"secondary":"primary",label:P?"Toch opzeggen":"Abonnement stopzetten",onClick:J,disabled:h})})]}),g.jsx(LA,{isOpen:Y,onClose:()=>k(!1),heading:"Abonnement opzeggen",children:g.jsxs("div",{className:"flex flex-col gap-m",children:[g.jsx("p",{className:"text-body-light text-text-default",children:"Weet u zeker dat u uw abonnement wilt opzeggen?"}),G&&g.jsx("p",{className:"text-body-light text-text-default",children:R?`Uw opzegging gaat in op ${R}, de einddatum van de looptijd van uw actie-abonnement.`:"Uw opzegging gaat in per einddatum van de looptijd van uw actie-abonnement."}),g.jsxs("div",{className:"flex flex-row gap-s",children:[g.jsx(_,{variant:"primary",label:"Abonnement opzeggen",onClick:a,disabled:h}),g.jsx(_,{variant:"secondary",label:"Annuleren",onClick:()=>k(!1),disabled:h})]})]})})]})},_e=A=>g.jsx(eC,{variant:"large",items:[{label:"Abonnement opzeggen",content:g.jsx(Ze,{...A})}]}),$e=({imageUrl:A,alt:C,title:E,description:B,metaText:Q,href:I})=>{const e=g.jsxs("div",{className:"flex flex-row sm:flex-col sm:pt-s sm:px-s h-full",children:[g.jsx("div",{className:"shrink-0 w-1/3 aspect-square self-start sm:w-full sm:self-auto overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col p-xxs pl-s sm:pl-0 sm:py-s flex-1 min-w-0 justify-center sm:justify-between",children:[g.jsxs("div",{className:"flex flex-col gap-xxs",children:[g.jsx("h2",{className:"text-heading-m text-text-default",children:E}),B&&g.jsx("span",{className:"text-meta-light text-text-default line-clamp-3",children:B})]}),Q&&g.jsxs("a",{href:I,className:"text-meta-light text-text-gray mt-xxs sm:mt-0 sm:pt-s",children:[Q," >"]})]})]});return I?g.jsx("a",{href:I,className:"flex flex-col group border border-width-default border-border-gray-subtle hover:border-border-brand",children:e}):g.jsx("div",{className:"flex flex-col border border-width-default border-border-gray-subtle hover:border-border-brand",children:e})},A3=({series:A})=>g.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-s sm:gap-m lg:gap-l",children:A.map((C,E)=>g.jsx($e,{...C},E))}),C3=({episode:A})=>{const{title:C,seriesTitle:E,duration:B,publishedAt:Q,href:I}=A,e=g.jsxs("div",{className:"flex flex-col gap-xxs w-[16rem] h-full border border-width-s border-border-gray-subtle hover:border-border-brand transition-[border-color] duration-200 ease-in-out bg-background-default p-s",children:[E&&g.jsx("span",{className:"text-meta-uppercase text-text-brand",children:E}),g.jsx("h3",{className:"text-body-gulliver-semibold text-text-default line-clamp-5",children:C}),g.jsxs("div",{className:"flex flex-col gap-xxs mt-auto pt-xs",children:[Q&&g.jsx("span",{className:"text-meta-light text-text-default",children:Q}),B&&g.jsxs("div",{className:"flex items-center gap-xxs",children:[g.jsx($,{name:"play-circle",variant:"fill",size:"s",color:"brand"}),g.jsx("span",{className:"text-meta-light text-text-default",children:B})]})]})]});return I?g.jsx("a",{href:I,draggable:!1,className:"h-full",children:e}):g.jsx("div",{children:e})},g3=({episodes:A,title:C,showButton:E=!1,buttonLabel:B="",buttonUrl:Q,onButtonClick:I,onScrollEnd:e,className:t=""})=>A.length===0?null:g.jsx(tC,{title:C,showButton:E,buttonLabel:B,buttonUrl:Q,onButtonClick:I,onScrollEnd:e,className:t,children:A.map((n,i)=>g.jsx("div",{className:"flex-shrink-0","data-index":i,children:g.jsx(C3,{episode:n})},i))}),B3=({imageUrl:A,alt:C,title:E,description:B,trailerUrl:Q,trailerLabel:I="Luister de trailer"})=>g.jsxs("div",{className:"flex flex-col sm:flex-row gap-xs md:gap-l mt-m md:mt-xl",children:[g.jsx("div",{className:"w-full p-m sm:p-0 sm:shrink-0 sm:w-1/3 aspect-square self-center sm:self-start overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-l xl:gap-xl justify-center sm:flex-1 sm:min-w-0",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("h1",{className:"text-heading-xl text-text-default",children:E}),B&&g.jsx("p",{className:"text-body-light text-text-default",dangerouslySetInnerHTML:{__html:B}})]}),Q&&g.jsx(kC,{src:Q,label:I})]})]}),E3=({imageUrl:A,alt:C,seriesName:E,seriesUrl:B,title:Q,date:I,duration:e,audioUrl:t})=>g.jsxs("div",{className:"flex flex-col sm:flex-row gap-xs md:gap-l mt-m md:mt-xl",children:[g.jsx("div",{className:"w-full p-m sm:p-0 sm:shrink-0 sm:w-1/4 aspect-square self-center sm:self-start overflow-hidden",children:A?g.jsx("img",{src:A,alt:C,className:"w-full h-full object-cover"}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-l xl:gap-xl justify-center sm:flex-1 sm:min-w-0",children:[g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsxs("div",{className:"flex flex-col gap-xxs",children:[B?g.jsx("a",{href:B,className:"w-fit text-body-uppercase-bold text-text-brand hover:text-text-brand-hover hover:underline",children:E}):g.jsx("p",{className:"text-body-uppercase-bold text-text-brand",children:E}),g.jsx("h1",{className:"text-heading-xl text-text-default",children:Q})]}),(I||e)&&g.jsxs("div",{className:"flex items-center gap-xxs text-meta-light text-text-default",children:[I&&g.jsx("span",{children:I}),I&&e&&g.jsx($,{name:"square-small",variant:"fill",size:"s",color:"default"}),e&&g.jsxs("span",{className:"flex items-center gap-xxs",children:[g.jsx($,{name:"clock",size:"s",color:"default"}),e]})]})]}),t&&g.jsx(kC,{src:t,variant:"filled"})]})]}),Q3=({sectionTitle:A="Laatste aflevering",videoId:C,articleTitle:E,intro:B,articleUrl:Q,buttonLabel:I="Lees het artikel over deze aflevering"})=>g.jsxs("div",{className:"flex flex-col gap-m md:gap-l",children:[g.jsx(bA,{variant:"lined",children:A}),g.jsxs("div",{className:"flex flex-col-reverse sm:flex-row gap-m",children:[g.jsxs("div",{className:"flex flex-col gap-m justify-center sm:flex-1 sm:min-w-0",children:[g.jsx(bA,{intro:B,children:E}),g.jsx(_,{variant:"pill",iconRight:"caret-right",label:I,href:Q,className:"w-fit"})]}),C&&g.jsx("div",{className:"w-full sm:w-1/2 sm:shrink-0 self-start overflow-hidden bg-background-gray",style:{aspectRatio:"16 / 9"},children:g.jsx("iframe",{src:`https://www.youtube.com/embed/${C}?rel=0&modestbranding=1`,title:E,className:"w-full h-full",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0})})]})]}),I3=({sectionTitle:A="De makers",hosts:C})=>g.jsxs("div",{className:"flex flex-col gap-m md:gap-l",children:[g.jsx(bA,{variant:"lined",children:A}),g.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-m md:gap-l",children:C.map((E,B)=>g.jsxs("div",{className:"flex flex-col gap-s",children:[g.jsx("div",{className:"w-full aspect-square overflow-hidden bg-background-gray",children:E.image?g.jsx("div",{className:"w-full h-full",dangerouslySetInnerHTML:{__html:E.image}}):g.jsx("div",{className:"w-full h-full bg-background-gray"})}),g.jsxs("div",{className:"flex flex-col gap-xxs lg:gap-xs",children:[g.jsx("h3",{className:"text-heading-m text-text-default",dangerouslySetInnerHTML:{__html:E.name}}),E.description&&g.jsx("p",{className:"text-body-light text-text-default",dangerouslySetInnerHTML:{__html:E.description}})]})]},B))})]}),XB=A=>{const C=A.toLowerCase();return C==="mobile"?"mobile":C==="tablet"?"tablet":"desktop"},e3=({isOpen:A,onClose:C,currentDeviceName:E="Dit apparaat",currentDeviceFormFactor:B="Desktop",signInTicket:Q="",activeDevices:I=[],onSignInSuccess:e})=>{const[t,n]=c.useState(A??!1),[i,r]=c.useState(Q),[o,u]=c.useState(I.map(p=>({device:p,state:"active"}))),[d,s]=c.useState(null),[l,w]=c.useState(!1),x=o.some(p=>p.state==="kicked"),h=o.some(p=>p.state==="kicking");c.useEffect(()=>{A!==void 0&&n(A)},[A]),c.useEffect(()=>(window.openDeviceLimitModal=p=>{r(p.signInTicket),u(p.activeDevices.map(F=>({device:F,state:"active"}))),s(null),w(!1),requestAnimationFrame(()=>{n(!0)})},()=>{window.openDeviceLimitModal=void 0}),[]),c.useEffect(()=>{const p=F=>{F.detail&&(r(F.detail.signInTicket),u(F.detail.activeDevices.map(Y=>({device:Y,state:"active"})))),s(null),w(!1),n(!0)};return window.addEventListener("open-device-limit",p),()=>window.removeEventListener("open-device-limit",p)},[]);const v=c.useCallback(()=>{n(!1),C==null||C(),window.location.href="/login"},[C]),b=async p=>{s(null),u(F=>F.map(Y=>Y.device.fingerprint===p?{...Y,state:"kicking"}:Y));try{const F=await fetch("/api/device/invalidate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signInTicket:i,deviceId:p})});if(F.status===401){window.location.href="/login?expired=1";return}if(!F.ok){s("Er ging iets mis. Probeer het opnieuw."),u(Y=>Y.map(k=>k.device.fingerprint===p?{...k,state:"active"}:k));return}u(Y=>Y.map(k=>k.device.fingerprint===p?{...k,state:"kicked"}:k))}catch{s("Verbinding mislukt. Controleer je internetverbinding."),u(F=>F.map(Y=>Y.device.fingerprint===p?{...Y,state:"active"}:Y))}},f=async()=>{s(null),w(!0);try{const p=await fetch("/api/device/retry-signin",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signInTicket:i})});if(p.status===401){window.location.href="/login?expired=1";return}const F=await p.json();if(F.success){const Y=F.commonDomainRedirect||"/";e?e(Y):window.location.href=Y;return}if(F.reason==="TooManyDevices"){u((F.activeDevices||[]).map(Y=>({device:Y,state:"active"}))),s("Er zijn nog te veel apparaten actief. Log er nog een uit.");return}s("Er ging iets mis. Probeer opnieuw in te loggen.")}catch{s("Verbinding mislukt. Controleer je internetverbinding.")}finally{w(!1)}};return t?g.jsx(LA,{isOpen:t,onClose:v,heading:"Je bent op teveel apparaten ingelogd",children:g.jsxs("div",{className:"flex flex-col gap-m text-text-default",children:[g.jsx("p",{className:"text-body-light",children:"Je bent al ingelogd op het maximale aantal apparaten. Log één van onderstaande apparaten uit om op dit apparaat verder te gaan."}),d&&g.jsx(QA,{variant:"warning",children:d}),g.jsxs("div",{className:"flex flex-col gap-xs",children:[g.jsx(aA,{borderColor:"brand",padding:"s",background:"brand-subtle",children:g.jsxs("div",{className:"flex items-center gap-s",children:[g.jsx($,{name:XB(B),color:"brand"}),g.jsx("span",{className:"flex-1 text-body-bold text-text-default",children:E}),g.jsx(FA,{variant:"default",label:"Dit apparaat"})]})}),o.map(({device:p,state:F})=>g.jsx(aA,{borderColor:"gray-subtle",padding:"s",children:g.jsxs("div",{className:"flex items-center gap-s",children:[g.jsx($,{name:XB(p.formFactor),color:"gray"}),g.jsxs("div",{className:"flex-1",children:[g.jsx("span",{className:`block text-body-bold ${F==="kicked"?"text-text-disabled":"text-text-default"}`,children:p.completeDeviceName}),p.lastActivity&&g.jsx("span",{className:`block text-body-light ${F==="kicked"?"text-text-disabled":"text-text-subtle"}`,children:`Actief op ${p.lastActivity}`})]}),F==="active"&&g.jsx(_,{variant:"pill",label:"Uitloggen",iconLeft:"sign-out",onClick:()=>b(p.fingerprint),disabled:h}),F==="kicking"&&g.jsx(_,{variant:"pill",label:"Bezig...",disabled:!0}),F==="kicked"&&g.jsx(_,{variant:"pill",label:"Uitgelogd",disabled:!0})]})},p.fingerprint))]}),g.jsx(_,{variant:"primary",label:l?"Inloggen...":"Doorgaan",onClick:f,disabled:!x||l||h,className:"justify-center"})]})}):null},VE=({steps:A,currentStep:C})=>{const E=B=>{const Q=B+1;return Q<C?"completed":Q===C?"active":"upcoming"};return g.jsxs("div",{className:"w-full",children:[g.jsx("div",{className:"flex items-center",children:A.map((B,Q)=>{const I=B.state??E(Q),e=Q===A.length-1,t=I==="completed"&&(!!B.href||!!B.onClick),n=g.jsx("div",{className:`
109
109
  w-m h-m flex-shrink-0 flex items-center justify-center text-meta-regular
110
110
  ${I==="active"?"bg-background-brand text-text-inverse":""}
111
111
  ${I==="completed"?"bg-background-brand text-text-inverse":""}