@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
20 lines • 202 kB
JavaScript
import{$t as e,C as t,F as n,Ft as r,Ht as i,It as a,O as o,P as s,Pt as c,R as l,Rn as u,S as d,St as f,U as p,V as m,W as h,Xt as g,Zt as _,a as v,an as ee,at as y,dn as b,dt as x,et as S,f as te,fn as C,ft as w,g as ne,ht as re,i as T,in as ie,it as E,l as ae,m as D,mt as oe,o as O,p as se,pt as ce,qt as k,r as A,t as j,u as M,un as le,ut as ue,v as N,xt as de,y as fe,yt as pe}from"./ErrorBlock-CuwX01Wv.js";import{A as P,B as me,D as F,F as I,H as he,I as ge,M as L,S as R,T as z,U as _e,V as ve,X as ye,Y as B,a as V,b as be,c as H,d as U,h as xe,j as W,k as Se,m as G,o as Ce,q as we,r as Te,s as K,u as q,w as J,x as Y,y as Ee}from"./web-BWdORzMO.js";import{C as De,m as Oe,n as ke,p as Ae,t as je,w as Me,x as Ne}from"./userStore-BExk_Pfb.js";import{t as X}from"./permissions-kIH5Rv10.js";import{i as Pe,o as Fe,s as Ie}from"./Layout-4UKP18vE.js";import{$ as Le,A as Re,At as ze,B as Be,Bt as Ve,Ct as He,Dt as Ue,Et as We,F as Z,Ft as Ge,H as Ke,I as qe,It as Je,Jt as Ye,Kt as Xe,L as Ze,Lt as Qe,M as $e,Mt as et,Nt as tt,Ot as nt,Pt as rt,Q as it,Qt as at,R as ot,Rt as st,St as ct,Tt as lt,U as ut,V as dt,W as ft,X as pt,Xt as mt,Y as ht,Yt as gt,Z as _t,Zt as vt,_ as yt,_t as bt,a as xt,at as St,b as Ct,bt as wt,c as Tt,cn as Et,ct as Dt,d as Ot,dn as kt,en as At,et as jt,ft as Mt,g as Nt,h as Pt,ht as Ft,jt as It,kt as Lt,l as Rt,mt as zt,nn as Bt,o as Vt,p as Ht,pt as Ut,r as Wt,s as Gt,sn as Kt,st as qt,tn as Jt,tt as Yt,un as Xt,v as Zt,w as Qt,wt as $t,x as en,xt as tn,y as nn,yt as rn,z as an,zt as on}from"./Form-Cbz3dIAq.js";import{t as sn}from"./ContentLocaleSelect-BMDSZiBb.js";import{t as cn}from"./DetailsList-DtDwf5Eb.js";function ln(e){let t=on(),[n,r]=we(Kt({modal:!1},e),[`value`]),i=ge();return F(tt,me({get value(){return n.value??i}},Kt({id:t.generateId(`menubar-menu-${i}`)},r)))}function un(e){let t,[n,r]=we(Kt({id:`menubar-${ge()}`,loop:!0,orientation:`horizontal`},e),[`ref`,`value`,`defaultValue`,`onValueChange`,`loop`,`focusOnAlt`,`autoFocusMenu`,`onAutoFocusMenuChange`,`orientation`]),[i,a]=gt({value:()=>n.value,defaultValue:()=>n.defaultValue,onChange:e=>n.onValueChange?.(e)}),[o,s]=I(),[c,l]=I(new Map),[u,d]=gt({value:()=>n.autoFocusMenu,defaultValue:()=>!1,onChange:n.onAutoFocusMenuChange}),f=()=>i()&&u()&&!i()?.includes(`link-trigger-`),p={dataset:W(()=>({"data-expanded":f()?``:void 0,"data-closed":f()?void 0:``})),value:i,setValue:a,lastValue:o,setLastValue:s,menus:()=>new Set([...c().keys()]),menuRefs:()=>[...c().values()].flat(),menuRefMap:()=>c(),registerMenu:(e,t)=>{l(n=>{let r=new Map;return n.forEach((e,t)=>r.set(t,e)),r.set(e,t),r})},unregisterMenu:e=>{l(t=>{t.delete(e);let n=new Map;return t.forEach((e,t)=>n.set(t,e)),n})},nextMenu:()=>{let e=[...c().keys()];if(i()==null){a(e[0]);return}let t=e.indexOf(i());if(t===e.length-1){n.loop&&a(e[0]);return}a(e[t+1])},previousMenu:()=>{let e=[...c().keys()];if(i()==null){a(e[0]);return}let t=e.indexOf(i());if(t===0){n.loop&&a(e[e.length-1]);return}a(e[t-1])},closeMenu:()=>{d(!1),a(void 0)},autoFocusMenu:()=>u(),setAutoFocusMenu:d,generateId:Bt(()=>r.id),orientation:()=>n.orientation};P(()=>{i()??d(!1)}),Xe({onInteractOutside:()=>{p.closeMenu(),setTimeout(()=>p.closeMenu())},shouldExcludeElement:e=>[t,...c().values()].flat().some(t=>Jt(t,e))},()=>t);let m=e=>{e.key===`Alt`&&(e.preventDefault(),e.stopPropagation(),p.value()===void 0?p.nextMenu():p.closeMenu())};return P(()=>{n.focusOnAlt?window.addEventListener(`keydown`,m):window.removeEventListener(`keydown`,m),he(()=>{window.removeEventListener(`keydown`,m)})}),P(()=>{i()!=null&&s(i())}),F(st.Provider,{value:p,get children(){return F(at,me({as:`div`,ref(e){var r=Et(e=>t=e,n.ref);typeof r==`function`&&r(e)},role:`menubar`,get"data-orientation"(){return n.orientation},get"aria-orientation"(){return n.orientation}},r))}})}function dn(e){let t=on();return Ve()===void 0&&Object.hasOwn(e,`href`)?F(ln,{value:t.generateId(`link-trigger-`)+ge(),get children(){return F(Qe,e)}}):Qe(e)}var fn={};vt(fn,{Arrow:()=>Ye,CheckboxItem:()=>tn,Content:()=>ct,Group:()=>He,GroupLabel:()=>$t,Icon:()=>lt,Item:()=>We,ItemDescription:()=>Ue,ItemIndicator:()=>nt,ItemLabel:()=>Lt,Menu:()=>ln,Menubar:()=>pn,Portal:()=>ze,RadioGroup:()=>It,RadioItem:()=>et,Root:()=>un,Separator:()=>wt,Sub:()=>rt,SubContent:()=>Ge,SubTrigger:()=>Je,Trigger:()=>dn,useMenubarContext:()=>on});var pn=Object.assign(un,{Arrow:Ye,CheckboxItem:tn,Content:ct,Group:He,GroupLabel:$t,Icon:lt,Item:We,ItemDescription:Ue,ItemIndicator:nt,ItemLabel:Lt,Portal:ze,RadioGroup:It,RadioItem:et,Menu:ln,Separator:wt,Sub:rt,SubContent:Ge,SubTrigger:Je,Trigger:dn}),mn=G(`<li>`),hn=G(`<ul>`),gn={};vt(gn,{Ellipsis:()=>_n,Item:()=>bn,Items:()=>xn,Next:()=>Sn,Pagination:()=>Tn,Previous:()=>Cn,Root:()=>wn,usePaginationContext:()=>yn});function _n(e){return(()=>{var t=mn();return K(t,F(at,me({as:`div`},e))),t})()}var vn=Se();function yn(){let e=ye(vn);if(e===void 0)throw Error("[kobalte]: `usePaginationContext` must be used within a `Pagination` component");return e}function bn(e){let t=yn(),[n,r]=we(e,[`page`,`onClick`]),i=()=>t.page()===n.page,a=()=>{t.setPage(n.page)};return(()=>{var e=mn();return K(e,F(mt,me({get"aria-current"(){return i()?`page`:void 0},get"data-current"(){return i()?``:void 0},get onClick(){return At([n.onClick,a])}},r))),e})()}function xn(e){let t=yn(),n=W(()=>{let{count:e,siblingCount:n,page:r,fixedItems:i,showFirst:a,showLast:o}=t,s=e()<2*n()+(i()?6:4);if(s)return{renderItemsDirectly:s};let c=a()&&r()-1>n(),l=o()&&e()-r()>n(),u=r()-(a()?2:1)>n(),d=e()-r()-+!!o()>n(),f=Math.min(r()-1,n()),p=Math.min(e()-r(),n());if(i()!==!1){let t=f,s=p;f+=Math.max(n()-s,0),p+=Math.max(n()-t,0),c||p++,l||f++,i()===!0&&(u||p++,d||f++),r()-f-(a()?2:1)==1&&(u=!1,f++),e()-r()-p-+!!o()==1&&(d=!1,p++)}return{showFirst:c,showLast:l,showFirstEllipsis:u,showLastEllipsis:d,previousSiblingCount:f,nextSiblingCount:p,renderItemsDirectly:s}});return F(R,{get when(){return n().renderItemsDirectly},get fallback(){return[F(R,{get when(){return n().showFirst},get children(){return t.renderItem(1)}}),F(R,{get when(){return n().showFirstEllipsis},get children(){return t.renderEllipsis()}}),F(Ee,{get each(){return[...Array(n().previousSiblingCount).keys()].reverse()},children:e=>H(()=>t.renderItem(t.page()-(e+1)))}),H(()=>t.renderItem(t.page())),F(Ee,{get each(){return[...Array(n().nextSiblingCount).keys()]},children:e=>H(()=>t.renderItem(t.page()+(e+1)))}),F(R,{get when(){return n().showLastEllipsis},get children(){return t.renderEllipsis()}}),F(R,{get when(){return n().showLast},get children(){return t.renderItem(t.count())}})]},get children(){return F(Ee,{get each(){return[...Array(t.count()).keys()]},children:e=>H(()=>t.renderItem(e+1))})}})}function Sn(e){let t=yn(),[n,r]=we(e,[`onClick`]),i=()=>{t.setPage(t.page()+1)},a=()=>t.page()===t.count();return(()=>{var e=mn();return K(e,F(mt,me({get tabIndex(){return a()||t.page()===t.count()?-1:void 0},get disabled(){return a()},get"aria-disabled"(){return a()||void 0},get"data-disabled"(){return a()?``:void 0},get onClick(){return At([n.onClick,i])}},r))),e})()}function Cn(e){let t=yn(),[n,r]=we(e,[`onClick`]),i=()=>{t.setPage(t.page()-1)},a=()=>t.page()===1;return(()=>{var e=mn();return K(e,F(mt,me({get tabIndex(){return a()||t.page()===1?-1:void 0},get disabled(){return a()},get"aria-disabled"(){return a()||void 0},get"data-disabled"(){return a()?``:void 0},get onClick(){return At([n.onClick,i])}},r))),e})()}function wn(e){let[t,n]=we(Kt({id:`pagination-${ge()}`},e),[`page`,`defaultPage`,`onPageChange`,`count`,`siblingCount`,`showFirst`,`showLast`,`fixedItems`,`itemComponent`,`ellipsisComponent`,`disabled`,`children`]),r=gt({defaultValue:()=>t.defaultPage??1,onChange:t.onPageChange,value:()=>t.page}),i={count:()=>t.count,siblingCount:()=>t.siblingCount??1,showFirst:()=>t.showFirst??!0,showLast:()=>t.showLast??!0,fixedItems:()=>t.fixedItems??!1,isDisabled:()=>t.disabled??!1,renderItem:e=>t.itemComponent({page:e}),renderEllipsis:t.ellipsisComponent,page:()=>Math.min(r[0]()??1,t.count),setPage:r[1]};return F(vn.Provider,{value:i,get children(){return F(at,me({as:`nav`,get"data-disabled"(){return t.disabled?``:void 0}},n,{get children(){var e=hn();return K(e,()=>t.children),e}}))}})}var Tn=Object.assign(wn,{Ellipsis:_n,Item:bn,Items:xn,Next:Sn,Previous:Cn}),Q=u(b(),1),En=G(`<div>`),Dn=e=>e.children?(()=>{var t=En();return K(t,()=>e.children),L(()=>V(t,(0,Q.default)(`mt-4 md:mt-6 flex flex-wrap items-center justify-between gap-2 border-t border-border bg-card-base py-4 md:py-6`,{"-mx-4 px-4":e.padding===`16`,"-mx-4 px-4 md:-mx-6 md:px-6":e.padding===`24`},e.class))),t})():null,On=G(`<div>`),kn=G(`<div class="flex items-center h-full justify-center">`),An=G(`<h2 class="text-base font-semibold text-title">`),jn=G(`<p class="mt-1 text-sm text-body">`),Mn=G(`<span class=sr-only>`),Nn=G(`<div class=mt-2>`),Pn=G(`<div><div class="flex justify-between items-start gap-x-10"><div>`),Fn=G(`<div class=min-w-0>`),In=G(`<div class="flex min-w-max gap-2">`),Ln=G(`<form class="grow flex flex-col justify-between"><div>`),Rn=G(`<div class="fixed inset-x-4 bottom-0 top-5 [@media(min-height:500px)]:top-20 [@media(min-height:953px)]:top-56 flex items-end justify-center origin-bottom transition-transform duration-300 ease-out">`),zn=G(`<div class="grow flex flex-col justify-between"><div>`),Bn=Se(),Vn=e=>{let[t,n]=I(null),[r,i]=I(void 0),a=ye(Bn),o=Symbol(`bottom-panel`),[s,c]=I(new Set),l=(e,t)=>{c(n=>{if(n.has(e)===t)return n;let r=new Set(n);return t?r.add(e):r.delete(e),r})},u=()=>{if(!e.langauge?.useDefaultcontentLocale)return ae.get.contentLocale;let t=ae.get.locales.find(e=>e.isDefault);return t?t.code:ae.get.contentLocale},d=W(()=>e.langauge?.contentLocale===!0&&ae.get.locales.length>1),f=W(()=>e.nestedLevel??(a?.level()??-1)+1),p=W(()=>Math.min(Math.max(f(),0),6)),m=W(()=>s().size>0),h={level:f,setChildOpen:l},g=()=>e.children({contentLocale:r,setContentLocale:i});return P(()=>{a?.setChildOpen(o,e.state.open)}),he(()=>a?.setChildOpen(o,!1)),P(()=>{e.state.open&&(n(document.activeElement),i(u())),e.state.open===!1&&e.callbacks?.reset?.()}),P(()=>{let e=u();r()===void 0&&e!==void 0&&i(e)}),F(bt.Root,{get open(){return e.state.open},onOpenChange:()=>e.state.setOpen(!e.state.open),get children(){return F(bt.Portal,{get children(){return[F(bt.Overlay,{get class(){return(0,Q.default)(`fixed inset-0 animate-animate-overlay-hide cursor-pointer duration-200 transition-colors data-expanded:animate-animate-overlay-show`,{"bg-overlay-base":f()===0,"bg-transparent":f()>0})},get style(){return{"z-index":40+f()*2}}}),(()=>{var n=Rn();return K(n,F(bt.Content,{class:`w-full h-full relative flex flex-col rounded-t-xl scrollbar border border-border bg-background-base animate-animate-slide-from-bottom-out data-expanded:animate-animate-slide-from-bottom-in outline-hidden overflow-y-auto`,onPointerDownOutside:e=>{e.target.hasAttribute(`data-panel-ignore`)&&(e.stopPropagation(),e.preventDefault())},onCloseAutoFocus:()=>{let e=t();(e instanceof HTMLBodyElement||!e)&&(e=document.querySelector(`button:not([tabindex='-1']), a:not([tabindex='-1'])`)),e&&`focus`in e&&e.focus()},get children(){return F(J,{get children(){return[F(Y,{get when(){return!e.state.open||e.fetchState?.isLoading},get children(){var t=On();return L(()=>V(t,(0,Q.default)(`skeleton absolute rounded-xl overflow-hidden`,{"inset-4":e.options?.padding===`16`,"inset-6 md:inset-5":e.options?.padding===`24`}))),t}}),F(Y,{get when(){return e.fetchState?.isError},get children(){var t=kn();return K(t,F(j,{get content(){return{image:v,title:e.copy?.fetchError}}})),t}}),F(Y,{get when(){return e.state.open},get children(){return[(()=>{var t=Pn(),n=t.firstChild,a=n.firstChild;return K(a,F(R,{get when(){return e.copy?.title},get children(){var t=An();return K(t,()=>e.copy?.title),t}}),null),K(a,F(R,{get when(){return e.copy?.description},get children(){var t=jn();return K(t,()=>e.copy?.description),t}}),null),K(n,F(bt.CloseButton,{class:`flex items-center text-body hover:text-title w-6 h-6 min-w-6 rounded-full focus:outline-hidden focus-visible:ring-1 ring-primary-base bg-background-base justify-center`,get children(){return[F(le,{class:`text-current`}),(()=>{var e=Mn();return K(e,()=>C()(`common.back`)),e})()]}}),null),K(t,F(R,{get when(){return d()},get children(){var t=Nn();return K(t,F(sn,{get value(){return r()},setValue:i,get hasError(){return e.langauge?.hascontentLocaleError},showShortcut:!0})),t}}),null),L(()=>V(t,(0,Q.default)(`border-b border-border`,{"mx-4 py-4 mb-4":e.options?.padding===`16`,"mx-4 md:mx-6 py-4 md:pt-6 mb-4":e.options?.padding===`24`}))),t})(),F(R,{get when(){return e.callbacks?.onSubmit},get fallback(){return(()=>{var t=zn(),n=t.firstChild;return K(n,F(Bn.Provider,{value:h,get children(){return F(g,{})}})),K(t,F(R,{get when(){return!e.options?.hideFooter},get children(){var t=On();return K(t,F(Dn,{get padding(){return e.options?.padding},get children(){return[(()=>{var t=Fn();return K(t,F(R,{get when(){return e.mutateState?.errors?.message},get children(){return F($e,{theme:`basic`,get message(){return e.mutateState?.errors?.message}})}})),t})(),(()=>{var t=In();return K(t,F(A,{size:`medium`,theme:`border-outline`,type:`button`,onClick:()=>e.state.setOpen(!1),get children(){return C()(`common.close`)}}),null),K(t,F(R,{get when(){return e.copy?.submit},get children(){return F(A,{type:`submit`,theme:`primary`,size:`medium`,get loading(){return e.mutateState?.isLoading},get disabled(){return e.mutateState?.isDisabled},get children(){return e.copy?.submit}})}}),null),t})()]}})),L(()=>V(t,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`}))),t}}),null),L(()=>V(n,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`,grow:e.options?.growContent}))),t})()},get children(){var t=Ln(),n=t.firstChild;return t.addEventListener(`submit`,t=>{t.preventDefault(),e.callbacks?.onSubmit&&e.callbacks?.onSubmit()}),K(n,F(Bn.Provider,{value:h,get children(){return F(g,{})}})),K(t,F(R,{get when(){return!e.options?.hideFooter},get children(){var t=On();return K(t,F(Dn,{get padding(){return e.options?.padding},get children(){return[(()=>{var t=Fn();return K(t,F(R,{get when(){return e.mutateState?.errors?.message},get children(){return F($e,{theme:`basic`,get message(){return e.mutateState?.errors?.message}})}})),t})(),(()=>{var t=In();return K(t,F(A,{size:`medium`,theme:`border-outline`,type:`button`,onClick:()=>e.state.setOpen(!1),get children(){return C()(`common.close`)}}),null),K(t,F(R,{get when(){return e.copy?.submit},get children(){return F(A,{type:`submit`,theme:`primary`,size:`medium`,get loading(){return e.mutateState?.isLoading},get disabled(){return e.mutateState?.isDisabled},get children(){return e.copy?.submit}})}}),null),t})()]}})),L(()=>V(t,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`}))),t}}),null),L(()=>V(n,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`,grow:e.options?.growContent}))),t}})]}})]}})}})),L(e=>{var t=40+f()*2,r=`${p()*24}px`,i=m()?`rotate(${f()%2==0?-.1:.1}deg)`:`rotate(0deg)`,a=f(),o=m()?``:void 0;return t!==e.e&&U(n,`z-index`,e.e=t),r!==e.t&&U(n,`padding-top`,e.t=r),i!==e.a&&U(n,`transform`,e.a=i),a!==e.o&&q(n,`data-nested-level`,e.o=a),o!==e.i&&q(n,`data-covered`,e.i=o),e},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),n})()]}})}})},Hn=G(`<div>`),Un=G(`<div class="flex items-center h-full justify-center">`),Wn=G(`<h2 class="text-base font-semibold text-title">`),Gn=G(`<span class="mt-1.5 text-warning-base">`),Kn=G(`<p class="mt-1 flex items-start gap-2 text-sm text-body"><span>`),qn=G(`<span class=sr-only>`),Jn=G(`<div class=mt-2>`),Yn=G(`<div><div class="flex justify-between items-start gap-x-10"><div>`),Xn=G(`<div class=min-w-0>`),Zn=G(`<div class="flex min-w-max gap-2">`),Qn=G(`<form class="grow flex flex-col justify-between"><div>`),$n=G(`<div class="fixed inset-4 z-40 flex justify-end">`),er=G(`<div class="grow flex flex-col justify-between"><div>`),tr=e=>{let[t,n]=I(null),[r,i]=I(void 0),a=Pe(),o=()=>{if(!e.langauge?.useDefaultcontentLocale)return ae.get.contentLocale;let t=ae.get.locales.find(e=>e.isDefault);return t?t.code:ae.get.contentLocale},s=W(()=>e.langauge?.contentLocale===!0&&ae.get.locales.length>1);return P(()=>{e.state.open&&(n(document.activeElement),i(o())),e.state.open===!1&&e.callbacks?.reset?.()}),P(()=>{let e=o();r()===void 0&&e!==void 0&&i(e)}),F(bt.Root,{get open(){return e.state.open},onOpenChange:()=>e.state.setOpen(!e.state.open),get children(){return F(bt.Portal,{get children(){return[F(bt.Overlay,{class:`fixed inset-0 z-40 bg-overlay-base animate-animate-overlay-hide cursor-pointer duration-200 transition-colors data-expanded:animate-animate-overlay-show`}),(()=>{var n=$n();return K(n,F(bt.Content,{get class(){return(0,Q.default)(`w-full relative flex flex-col rounded-xl scrollbar border border-border max-w-200 bg-background-base outline-hidden overflow-y-auto`,{"animate-animate-slide-from-right-out data-expanded:animate-animate-slide-from-right-in":a.isLTR(),"animate-animate-slide-from-left-out data-expanded:animate-animate-slide-from-left-in":a.isRTL()})},onPointerDownOutside:e=>{e.target.hasAttribute(`data-panel-ignore`)&&(e.stopPropagation(),e.preventDefault())},onCloseAutoFocus:()=>{let e=t();(e instanceof HTMLBodyElement||!e)&&(e=document.querySelector(`button:not([tabindex='-1']), a:not([tabindex='-1'])`)),e&&`focus`in e&&e.focus()},get children(){return F(J,{get children(){return[F(Y,{get when(){return!e.state.open||e.fetchState?.isLoading},get children(){var t=Hn();return L(()=>V(t,(0,Q.default)(`skeleton absolute rounded-xl overflow-hidden`,{"inset-4":e.options?.padding===`16`,"inset-6 md:inset-5":e.options?.padding===`24`}))),t}}),F(Y,{get when(){return e.fetchState?.isError},get children(){var t=Un();return K(t,F(j,{get content(){return{image:v,title:e.copy?.fetchError}}})),t}}),F(Y,{get when(){return e.state.open},get children(){return[(()=>{var t=Yn(),n=t.firstChild,a=n.firstChild;return K(a,F(R,{get when(){return e.copy?.title},get children(){var t=Wn();return K(t,()=>e.copy?.title),t}}),null),K(a,F(R,{get when(){return e.copy?.description},get children(){var t=Kn(),n=t.firstChild;return K(t,F(R,{get when(){return e.copy?.descriptionIcon},get children(){var t=Gn();return K(t,()=>e.copy?.descriptionIcon),t}}),n),K(n,()=>e.copy?.description),t}}),null),K(n,F(bt.CloseButton,{class:`flex items-center text-body hover:text-title w-6 h-6 min-w-6 rounded-full focus:outline-hidden focus-visible:ring-1 ring-primary-base bg-background-base justify-center`,get children(){return[F(le,{class:`text-current`}),(()=>{var e=qn();return K(e,()=>C()(`common.back`)),e})()]}}),null),K(t,F(R,{get when(){return s()},get children(){var t=Jn();return K(t,F(sn,{get value(){return r()},setValue:i,get hasError(){return e.langauge?.hascontentLocaleError},showShortcut:!0})),t}}),null),L(()=>V(t,(0,Q.default)(`border-b border-border`,{"mx-4 py-4 mb-4":e.options?.padding===`16`,"mx-4 md:mx-6 py-4 md:pt-6 mb-4":e.options?.padding===`24`}))),t})(),F(R,{get when(){return e.callbacks?.onSubmit},get fallback(){return(()=>{var t=er(),n=t.firstChild;return K(n,()=>e.children({contentLocale:r,setContentLocale:i})),K(t,F(R,{get when(){return!e.options?.hideFooter},get children(){var t=Hn();return K(t,F(Dn,{get padding(){return e.options?.padding},get children(){return[(()=>{var t=Xn();return K(t,F(R,{get when(){return e.mutateState?.errors?.message},get children(){return F($e,{theme:`basic`,get message(){return e.mutateState?.errors?.message}})}})),t})(),(()=>{var t=Zn();return K(t,F(A,{size:`medium`,theme:`border-outline`,type:`button`,onClick:()=>e.state.setOpen(!1),get children(){return C()(`common.close`)}}),null),K(t,F(R,{get when(){return e.copy?.submit},get children(){return F(A,{type:`submit`,theme:`primary`,size:`medium`,get loading(){return e.mutateState?.isLoading},get disabled(){return e.mutateState?.isDisabled},get children(){return e.copy?.submit}})}}),null),t})()]}})),L(()=>V(t,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`}))),t}}),null),L(()=>V(n,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`,grow:e.options?.growContent}))),t})()},get children(){var t=Qn(),n=t.firstChild;return t.addEventListener(`submit`,t=>{t.preventDefault(),e.callbacks?.onSubmit&&e.callbacks?.onSubmit()}),K(n,()=>e.children({contentLocale:r,setContentLocale:i})),K(t,F(R,{get when(){return!e.options?.hideFooter},get children(){var t=Hn();return K(t,F(Dn,{get padding(){return e.options?.padding},get children(){return[(()=>{var t=Xn();return K(t,F(R,{get when(){return e.mutateState?.errors?.message},get children(){return F($e,{theme:`basic`,get message(){return e.mutateState?.errors?.message}})}})),t})(),(()=>{var t=Zn();return K(t,F(A,{size:`medium`,theme:`border-outline`,type:`button`,onClick:()=>e.state.setOpen(!1),get children(){return C()(`common.close`)}}),null),K(t,F(R,{get when(){return e.copy?.submit},get children(){return F(A,{type:`submit`,theme:`primary`,size:`medium`,get loading(){return e.mutateState?.isLoading},get disabled(){return e.mutateState?.isDisabled},get children(){return e.copy?.submit}})}}),null),t})()]}})),L(()=>V(t,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`}))),t}}),null),L(()=>V(n,(0,Q.default)({"px-4":e.options?.padding===`16`,"px-4 md:px-6":e.options?.padding===`24`,grow:e.options?.growContent}))),t}})]}})]}})}})),n})()]}})}})},nr=e=>te({url:`/lucid/api/v1/media/upload-session/${e}`,csrf:!0,config:{method:`GET`}}),rr=e=>te({url:`/lucid/api/v1/media/upload-session/${e.sessionId}/parts`,csrf:!0,config:{method:`POST`,body:{partNumbers:e.partNumbers}}}),ir=e=>te({url:`/lucid/api/v1/media/upload-session/${e.sessionId}/complete`,csrf:!0,config:{method:`POST`,body:{parts:e.parts}}}),ar=3,or=[0,1e3,3e3,5e3],sr=`lucid-upload-session`,cr=(e,t)=>`${sr}:${e}:${t.name}:${t.size}:${t.lastModified}`,lr=e=>{try{let t=localStorage.getItem(e);if(!t)return null;let n=JSON.parse(t);return new Date(n.expiresAt).getTime()<Date.now()?(localStorage.removeItem(e),null):n}catch{return localStorage.removeItem(e),null}},ur=(e,t)=>{localStorage.setItem(e,JSON.stringify(t))},dr=(e,t=500)=>({status:t,name:C()(`media.upload.error.title`),message:e}),fr=e=>e instanceof ne?e.errorRes:e instanceof Error?dr(e.message):dr(C()(`media.upload.error.description`)),pr=e=>new Promise(t=>{if(e.signal?.aborted){t({error:dr(C()(`media.upload.aborted`)),data:void 0});return}let n=new XMLHttpRequest,r=()=>{e.signal?.removeEventListener(`abort`,i)},i=()=>{n.abort(),r(),t({error:dr(C()(`media.upload.aborted`)),data:void 0})};e.signal?.addEventListener(`abort`,i,{once:!0}),n.open(`PUT`,e.url);for(let[t,r]of Object.entries(e.headers??{}))n.setRequestHeader(t,r);n.upload.onprogress=t=>{t.lengthComputable&&e.onProgress?.(t.loaded)},n.onload=()=>{if(r(),n.status>=200&&n.status<300){t({error:void 0,data:n});return}t({error:dr(n.responseText||n.statusText||C()(`media.upload.failed`)),data:void 0})},n.onerror=()=>{r(),t({error:dr(n.statusText||C()(`media.upload.failed`)),data:void 0})},n.onabort=()=>{r(),t({error:dr(C()(`media.upload.aborted`)),data:void 0})},n.send(e.body)}),mr=(e,t)=>{let n=t.toLowerCase(),r=e.getAllResponseHeaders().split(/\r?\n/).find(e=>e.toLowerCase().startsWith(`${n}:`));return r?r.slice(r.indexOf(`:`)+1).trim():null},hr=async e=>{let t;for(let n of or){n>0&&await new Promise(e=>setTimeout(e,n));let r=await e();if(!r.error)return r;t=r.error}return{error:t??dr(C()(`media.upload.failed`)),data:void 0}},gr=async(e,t)=>{let n=lr(e);if(n)try{let t=await nr(n.sessionId);if(t.data.canResume)return{mode:`resumable`,key:t.data.key,sessionId:t.data.sessionId,partSize:t.data.partSize,expiresAt:t.data.expiresAt,uploadedParts:t.data.uploadedParts};localStorage.removeItem(e)}catch{localStorage.removeItem(e)}let r=await t();return r.data.mode===`resumable`?ur(e,{sessionId:r.data.sessionId,key:r.data.key,expiresAt:r.data.expiresAt}):localStorage.removeItem(e),r.data},_r=async(e,t,n,r)=>{let i=new Map;for(let e of t.uploadedParts)i.set(e.partNumber,e);let a=Math.max(1,Math.ceil(e.size/t.partSize)),o=t.uploadedParts.reduce((e,n)=>e+(n.size??t.partSize),0),s=new Map,c=()=>{let t=Array.from(s.values()).reduce((e,t)=>e+t,0);n?.(Math.min((o+t)/e.size*100,99))},l=Array.from({length:a},(e,t)=>t+1).filter(e=>!i.has(e)),u=l.length>0?new Map((await rr({sessionId:t.sessionId,partNumbers:l})).data.parts.map(e=>[e.partNumber,e])):new Map,d=0,f=!1,p=async()=>{for(;d<l.length;){if(r?.aborted)return{error:dr(C()(`media.upload.aborted`)),data:void 0};let n=l[d];if(d+=1,n===void 0)continue;let a=(n-1)*t.partSize,p=Math.min(a+t.partSize,e.size),m=e.slice(a,p),h=u.get(n);if(!h)return{error:dr(C()(`media.upload.parts.url.missing`)),data:void 0};let g=await hr(()=>pr({url:h.url,body:m,headers:h.headers,signal:r,onProgress:e=>{s.set(n,e),c()}}));if(g.error)return g;s.delete(n);let _=mr(g.data,`etag`)?.replace(/"/g,``);_||(f=!0),o+=m.size,i.set(n,{partNumber:n,etag:_??``,size:m.size}),c()}return{error:void 0,data:void 0}},m=(await Promise.all(Array.from({length:Math.min(ar,l.length)},()=>p()))).find(e=>e.error)?.error;if(m)return{error:m,data:void 0};if(f||Array.from(i.values()).some(e=>e.etag.length===0)){let e=await nr(t.sessionId);if(!e.data.canResume)return{error:dr(C()(`media.upload.session.not.resumable`)),data:void 0};for(let t of e.data.uploadedParts)i.set(t.partNumber,t)}let h=Array.from(i.values()).sort((e,t)=>e.partNumber-t.partNumber);if(h.length!==a||h.some(e=>e.etag.length===0))return{error:dr(C()(`media.upload.parts.not.reconciled`)),data:void 0};let g=await ir({sessionId:t.sessionId,parts:h});return n?.(100),{error:void 0,data:g.data.key}},vr=async e=>{try{e.onProgress?.(0);let t=cr(e.scope,e.file),n=await gr(t,e.start);if(n.mode===`single`){let t=await pr({url:n.url,body:e.file,headers:{...e.file.type?{"content-type":e.file.type}:{},...n.headers},signal:e.signal,onProgress:t=>{e.onProgress?.(e.file.size===0?100:t/e.file.size*100)}});return t.error?{error:t.error,data:void 0}:(e.onProgress?.(100),{error:void 0,data:n.key})}let r=await _r(e.file,n,e.onProgress,e.signal);return r.error||localStorage.removeItem(t),r}catch(e){return{error:fr(e),data:void 0}}},yr=()=>{let[e,t]=I([]),[n,r]=I([]),[i,a]=I([]),[o,s]=I([]),[c,l]=I(),[u,d]=I(void 0),[f,p]=I(!0),[m,h]=I(),[g,_]=I(!1),[v,ee]=I(0),y=O.media.useCreateSingle(),b=O.media.useCreateUploadSession(),x=async(e,t,n=!0)=>{try{_(!0),ee(0);let r=await vr({file:e,scope:`media:create:${t}`,start:()=>b.action.mutateAsync({body:{fileName:e.name,mimeType:e.type,size:e.size,public:t}}),onProgress:ee});return r.error?(h(r.error),null):(n&&l(r.data),r.data)}catch(e){return h({status:500,name:C()(`media.upload.error.title`),message:e instanceof Error?e.message:C()(`media.upload.error.description`)}),null}finally{_(!1)}},S=async(t,r,a)=>{let s=c();if(t){let e=await x(t,a?.public??f());if(!e)return null;s=e}let l=a?.crop?await x(a.crop.file,a?.public??f(),!1):void 0;if(a?.crop&&!l)return null;let d=D.getMediaType(t?.type);return(await y.action.mutateAsync({key:s,fileName:t?.name,title:a?.title??e(),alt:d===`image`?a?.alt??n():void 0,description:d===`video`||d===`audio`?a?.description??i():void 0,summary:d===`document`?a?.summary??o():void 0,origin:a?.origin??`human`,aiGenerationRequestId:a?.aiGenerationRequestId,folderId:a?.folderId??u()??null,posterId:d===`video`?a?.posterId:void 0,isHidden:a?.isHidden,width:d===`image`?r?.width:void 0,height:d===`image`?r?.height:void 0,focalPoint:d===`image`?a?.focalPoint??void 0:void 0,blurHash:d===`image`?r?.blurHash:void 0,averageColor:d===`image`?r?.averageColor:void 0,base64:d===`image`?r?.base64:void 0,isDark:d===`image`?r?.isDark:void 0,isLight:d===`image`?r?.isLight:void 0,crop:d===`image`&&a?.crop&&l?{key:l,fileName:a.crop.file.name,width:a.crop.imageMeta?.width??1,height:a.crop.imageMeta?.height??1,focalPoint:a.crop.focalPoint,blurHash:a.crop.imageMeta?.blurHash,averageColor:a.crop.imageMeta?.averageColor,base64:a.crop.imageMeta?.base64,isDark:a.crop.imageMeta?.isDark,isLight:a.crop.imageMeta?.isLight,state:a.crop.state}:void 0})).data},te=W(()=>y.action.isPending||b.action.isPending||g());return{createMedia:S,setTitle:t,setAlt:r,setDescription:a,setSummary:s,setFolderId:d,setPublic:p,errors:W(()=>y.errors()||b.errors()||m()),isLoading:te,uploadProgress:v,state:{title:e,alt:n,description:i,summary:o,key:c,folderId:u,public:f,posterId:()=>void 0},reset:()=>{t([]),r([]),a([]),s([]),l(void 0),d(void 0),p(!0),h(),ee(0),y.reset()}}},br=e=>{let[t,n]=I([]),[r,i]=I([]),[a,o]=I([]),[s,c]=I([]),[l,u]=I(),[d,f]=I(void 0),[p,m]=I(!0),[h,g]=I(void 0),[_,v]=I(void 0),[ee,y]=I(),[b,x]=I(!1),[S,te]=I(0),w=O.media.useUpdateSingle(),ne=O.media.useCreateUploadSession(),re=async(t,n=!0)=>{try{x(!0),te(0);let r=await vr({file:t,scope:`media:update:${e()??`unknown`}:${p()}`,start:()=>ne.action.mutateAsync({body:{fileName:t.name,mimeType:t.type,size:t.size,public:p(),temporary:!0}}),onProgress:te});return r.error?(y(r.error),null):(n&&u(r.data),r.data)}catch(e){return y({status:500,name:C()(`media.upload.error.title`),message:e instanceof Error?e.message:C()(`media.upload.error.description`)}),null}finally{x(!1)}},T=async(n,i,o)=>{if(!e())return!1;let c=l();if(n){let e=await re(n);if(!e)return!1;c=e}let u=o?.crop?await re(o.crop.file,!1):void 0;if(o?.crop&&!u)return!1;let f=o?.type??`unknown`;return await w.action.mutateAsync({id:e(),body:{key:c,fileName:n?.name,title:t(),alt:f===`image`?r():void 0,description:f===`video`||f===`audio`?a():void 0,summary:f===`document`?s():void 0,origin:n?o?.origin??`human`:o?.origin,aiGenerationRequestId:o?.aiGenerationRequestId,folderId:d()??null,width:f===`image`?i?.width:void 0,height:f===`image`?i?.height:void 0,focalPoint:f===`image`?_():void 0,blurHash:f===`image`?i?.blurHash:void 0,averageColor:f===`image`?i?.averageColor:void 0,base64:f===`image`?i?.base64:void 0,isDark:f===`image`?i?.isDark:void 0,isLight:f===`image`?i?.isLight:void 0,public:p(),posterId:f===`video`?h():void 0,crop:o?.type===`image`&&o?.crop===null?null:o?.type===`image`&&o?.crop&&u?{key:u,fileName:o.crop.file.name,width:o.crop.imageMeta?.width??1,height:o.crop.imageMeta?.height??1,focalPoint:o.crop.focalPoint,blurHash:o.crop.imageMeta?.blurHash,averageColor:o.crop.imageMeta?.averageColor,base64:o.crop.imageMeta?.base64,isDark:o.crop.imageMeta?.isDark,isLight:o.crop.imageMeta?.isLight,state:o.crop.state}:void 0}}),!0},ie=W(()=>w.action.isPending||ne.action.isPending||b());return{updateMedia:T,setTitle:n,setAlt:i,setDescription:o,setSummary:c,setFolderId:f,setPublic:m,setPosterId:g,setFocalPoint:v,errors:W(()=>w.errors()||ne.errors()||ee()),isLoading:ie,uploadProgress:S,state:{title:t,alt:r,description:a,summary:s,key:l,folderId:d,public:p,posterId:h,focalPoint:_},reset:()=>{n([]),i([]),o([]),c([]),u(void 0),f(void 0),m(!0),g(void 0),v(void 0),y(),te(0),w.reset()}}},xr=G(`<div class="absolute top-0 right-full z-20 mr-1 flex h-5 items-center overflow-hidden rounded-md border border-primary-muted-border bg-primary-muted-bg/95 text-primary-base shadow-md backdrop-blur-sm"><span class="border-r border-primary-muted-border px-1.5 text-xs font-medium leading-none whitespace-nowrap"></span><div class="flex items-center"><button type=button class="flex h-5 min-w-5 items-center justify-center text-primary-base fill-primary-base transition-colors duration-200 hover:bg-primary-base hover:text-primary-contrast hover:fill-primary-contrast focus:outline-hidden focus-visible:ring-1 focus-visible:ring-primary-base disabled:cursor-not-allowed disabled:opacity-60"></button><button type=button class="flex h-5 min-w-5 items-center justify-center text-unfocused fill-unfocused transition-colors duration-200 hover:bg-error-base/15 hover:text-error-base hover:fill-error-base focus:outline-hidden focus-visible:ring-1 focus-visible:ring-error-base disabled:cursor-not-allowed disabled:opacity-60">`),Sr=e=>(()=>{var t=xr(),n=t.firstChild,r=n.nextSibling.firstChild,i=r.nextSibling;return K(n,()=>e.label),r.$$click=t=>{t.preventDefault(),t.stopPropagation(),e.onAccept()},K(r,F(m,{size:10,"aria-hidden":`true`})),i.$$click=t=>{t.preventDefault(),t.stopPropagation(),e.onReject()},K(i,F(le,{size:10,"aria-hidden":`true`})),L(t=>{var n=C()(`common.accept`),a=C()(`common.accept`),o=e.disabled,s=C()(`common.reject`),c=C()(`common.reject`),l=e.disabled;return n!==t.e&&q(r,`title`,t.e=n),a!==t.t&&q(r,`aria-label`,t.t=a),o!==t.a&&(r.disabled=t.a=o),s!==t.o&&q(i,`title`,t.o=s),c!==t.i&&q(i,`aria-label`,t.i=c),l!==t.n&&(i.disabled=t.n=l),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),t})();Ce([`click`]);var Cr=G(`<button type=button><span>`),wr=e=>(()=>{var t=Cr(),n=t.firstChild;return Te(t,`click`,e.onClick,!0),K(n,F(c,{get size(){return e.variant===`subtle`?11:13},"aria-hidden":`true`})),L(r=>{var i=(0,Q.default)(`ai-action-button group relative flex items-center justify-center rounded-md text-icon-fade fill-icon-fade transition-colors duration-200 hover:text-primary-base hover:fill-primary-base focus-visible:ring-1 focus-visible:ring-primary-base disabled:cursor-not-allowed disabled:opacity-60`,{"h-7 w-7":e.variant!==`subtle`,"h-5 w-5 before:absolute before:-inset-1 before:rounded-md before:content-['']":e.variant===`subtle`,"cursor-not-allowed opacity-60":e.disabled},e.class),a=e.disabled&&!e.disabledClickable||e.loading,o=e.label,s=e.disabled?`true`:void 0,c=e.loading?`true`:void 0,l=e.tooltip,u=(0,Q.default)(`ai-action-button__surface pointer-events-none flex items-center justify-center rounded-md border transition-colors duration-200`,{"h-7 w-7 border-border bg-input-base group-hover:border-primary-muted-border group-hover:bg-primary-muted-bg":e.variant!==`subtle`,"h-5 w-5 border-transparent bg-card-base":e.variant===`subtle`}),d=e.loading?`true`:void 0,f=e.quickActionActive?`true`:void 0,p=e.variant??`default`;return i!==r.e&&V(t,r.e=i),a!==r.t&&(t.disabled=r.t=a),o!==r.a&&q(t,`aria-label`,r.a=o),s!==r.o&&q(t,`aria-disabled`,r.o=s),c!==r.i&&q(t,`aria-busy`,r.i=c),l!==r.n&&q(t,`title`,r.n=l),u!==r.s&&V(n,r.s=u),d!==r.h&&q(n,`data-loading`,r.h=d),f!==r.r&&q(n,`data-quick-action-active`,r.r=f),p!==r.d&&q(n,`data-variant`,r.d=p),r},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),t})();Ce([`click`]);var[Tr,Er]=Ne({current:null,isLoading:!1,isApplying:!1});function Dr(e,t){Er(`current`,{type:e,data:t.data})}function Or(){Er(`current`,null),Er(`isLoading`,!1),Er(`isApplying`,!1)}function kr(){Or()}function Ar(e){return Tr.current?.type===e}function jr(e){if(Tr.current?.type===e)return Tr.current}function Mr(e){Er(`isLoading`,e)}function Nr(e){Er(`isApplying`,e)}var $={get:Tr,set:Er,open:Dr,close:Or,reset:kr,isOpen:Ar,getModal:jr,setLoading:Mr,setApplying:Nr},Pr=e=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result)),r.onerror=()=>n(r.error),r.readAsDataURL(e)}),Fr=e=>new Promise((t,n)=>{let r=URL.createObjectURL(e),i=new Image;i.decoding=`async`,i.onload=()=>{URL.revokeObjectURL(r),t(i)},i.onerror=()=>{URL.revokeObjectURL(r),n(Error(`Unable to read image.`))},i.src=r}),Ir=(e,t)=>new Promise((n,r)=>{e.toBlob(e=>{if(!e){r(Error(`Unable to convert image to WebP.`));return}n(e)},`image/webp`,t)}),Lr=async(e,t)=>{if(e.file)return e.file;if(!e.url)throw Error(`No image selected.`);let n=await fetch(e.url,{credentials:`include`,signal:t});if(!n.ok)throw Error(`Unable to fetch the selected image.`);return n.blob()},Rr=async(e,t={})=>{let n=t.maxEdge??1024,r=t.quality??.82,i=await Lr(e,t.signal);if(t.signal?.aborted)throw new DOMException(`Aborted`,`AbortError`);let a=await Fr(i);if(t.signal?.aborted)throw new DOMException(`Aborted`,`AbortError`);let o=a.naturalWidth||a.width,s=a.naturalHeight||a.height;if(o<=0||s<=0)throw Error(`Unable to read image dimensions.`);let c=Math.min(1,n/Math.max(o,s)),l=Math.max(1,Math.round(o*c)),u=Math.max(1,Math.round(s*c)),d=document.createElement(`canvas`);d.width=l,d.height=u;let f=d.getContext(`2d`);if(!f)throw Error(`Unable to prepare the selected image.`);if(f.drawImage(a,0,0,l,u),t.signal?.aborted)throw new DOMException(`Aborted`,`AbortError`);let p=await Ir(d,r);if(t.signal?.aborted)throw new DOMException(`Aborted`,`AbortError`);let m=await Pr(p);return{data:m.split(`,`)[1]??m,mimeType:`image/webp`,filename:e.filename??e.file?.name,width:l,height:u}},zr=e=>e.find(e=>e.isDefault)?.code??e[0]?.code??`en`,Br=e=>(e.length>0?e:[{code:zr(e),isDefault:!0}]).map(e=>({localeCode:e.code,value:null})),Vr=(e,t)=>Br(e).map(e=>({...e,value:e.localeCode?t?.[e.localeCode]??null:null})),Hr=e=>{let t=zr(e.locales);return Br(e.locales).map(n=>({...n,value:e.translations?.find(e=>e.localeCode===n.localeCode)?.value??(n.localeCode===t?e.fallbackValue??null:null)}))},Ur=(e,t)=>e?.find(e=>e.localeCode===t)?.value??null,Wr=(e,t)=>{e&&t&&e(e=>e.findIndex(e=>e.localeCode===t.localeCode)===-1?[...e,t]:e.map(e=>e.localeCode===t.localeCode?t:e))},Gr=()=>({disabled:!1,reason:void 0,title:void 0,message:void 0}),Kr=e=>W(()=>{if(!e.hasPermission())return{disabled:!0,reason:`no-permission`,title:C()(`toasts.common.no.permission.title`),message:C()(`toasts.common.no.permission.message`)};let t=e.license();return t?t.key?t.valid?t.ai.enabled?Gr():{disabled:!0,reason:`ai-disabled`,title:C()(`toasts.ai.features.disabled.license.title`),message:C()(`ai.features.disabled.license`)}:{disabled:!0,reason:`invalid-license`,title:C()(`toasts.ai.features.disabled.invalid.license.title`),message:t.errorMessage??C()(`toasts.ai.features.disabled.invalid.license.message`)}:{disabled:!0,reason:`no-license`,title:C()(`toasts.ai.features.disabled.no.license.title`),message:C()(`toasts.ai.features.disabled.no.license.message`)}:Gr()}),qr=e=>e.disabled?(fe({title:e.title,message:e.message,status:`warning`}),!0):!1,Jr=G(`<div class=relative>`),Yr=0,Xr=()=>(Yr+=1,`media-alt-generation-${Yr}`),Zr=e=>e.key===`Meta`||e.key===`OS`||e.code===`MetaLeft`||e.code===`MetaRight`||e.code===`OSLeft`||e.code===`OSRight`,Qr=()=>{let[e,t]=I(),[n,r]=I(),[i,a]=I(!1),o=O.ai.useMediaAltGenerate(),s=W(()=>M.get.isAiFeatureEnabled(`altGeneration`)),c=W(()=>je.get.hasPermission([X.AiAltGenerate]).all),l=Kr({hasPermission:c,license:()=>M.get.license??void 0}),u=W(()=>$.get.isLoading||$.get.isApplying),d=e=>{let t=e?.image();return!!(t?.file||t?.url)},f=e=>!e||!s()||l().disabled||!d(e)||e.locales().length===0||u()||n()!==void 0||e.disabled?.()===!0,p=e=>{if(!s())return C()(`ai.media.alt.generate.disabled`);let t=l();return t.disabled?t.message:d(e)?u()?C()(`ai.media.alt.generate.loading`):n()?C()(`ai.media.alt.generate.quick.review.tooltip`):C()(`ai.media.alt.generate.action`):C()(`ai.media.alt.generate.disabled.no.image`)},m=e=>$.getModal(`mediaAltGeneration`)?.data.targetId===e,h=e=>{if(!e)return;let t=e.reduce((e,t)=>(!t.localeCode||!t.value||(e[t.localeCode]=t.value),e),{});return Object.keys(t).length>0?t:void 0},g=(e,t)=>{let n=e.media().alt??[];return(e.locales().length>0?e.locales().map(e=>e.code):Object.keys(t)).map(e=>{let r=n.find(t=>t.localeCode===e);return{localeCode:e,value:t[e]??r?.value??null}})},_=async(e,n=Xr())=>{if(!s()||qr(l())||f(e))return;let i=e.image();if(i)try{let a=e.media().alt;o.reset(),t(n),$.setLoading(!0);let s=await Rr(i),c=e.media(),l=await o.action.mutateAsync({shouldToast:()=>!1,body:{image:{data:s.data,mimeType:s.mimeType,detail:`low`,filename:s.filename},media:{id:c.id,name:h(c.name),alt:h(c.alt)},locale:{source:zr(e.locales()),target:e.locales().map(e=>e.code)}}});$.setLoading(!1),$.setApplying(!0),await e.setAlt(g(e,l.data.output)),r({targetId:n,originalAlt:a}),fe({title:C()(`toasts.ai.media.alt.generate.success.title`),message:C()(`toasts.ai.media.alt.generate.quick.success.message`),status:`success`})}catch(e){let t=N(e);fe({title:t.name,message:t.message,status:`error`})}finally{$.setLoading(!1),$.setApplying(!1),t(void 0)}},v=()=>{r(void 0)},ee=async e=>{let t=n();if(t)try{$.setApplying(!0),await e.setAlt(t.originalAlt??[]),r(void 0)}finally{$.setApplying(!1)}},y=(e,t=Xr())=>{s()&&(qr(l())||f(e)||$.open(`mediaAltGeneration`,{data:{target:e,targetId:t}}))},b=t=>e()===t||$.get.isLoading&&m(t);return _e(()=>{let e=e=>{(e.metaKey||Zr(e))&&a(!0)},t=e=>{(Zr(e)||!e.metaKey)&&a(!1)},n=()=>a(!1);window.addEventListener(`keydown`,e),window.addEventListener(`keyup`,t),window.addEventListener(`blur`,n),document.addEventListener(`visibilitychange`,n),he(()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`keyup`,t),window.removeEventListener(`blur`,n),document.removeEventListener(`visibilitychange`,n)})}),{open:y,generateAndApply:_,createActionButton:e=>{let t=Xr();return()=>F(R,{get when(){return s()},get children(){var r=Jr();return K(r,F(wr,{get label(){return C()(`ai.media.alt.generate.action`)},get tooltip(){return p(e)},get disabled(){return f(e)},get disabledClickable(){return l().disabled},get loading(){return b(t)},get quickActionActive(){return H(()=>!!i())()&&!f(e)},variant:`subtle`,onClick:n=>{if(n.preventDefault(),n.stopPropagation(),n.metaKey||i()){_(e,t);return}y(e,t)}}),null),K(r,F(R,{get when(){return n()?.targetId===t},get children(){return F(Sr,{get label(){return C()(`ai.media.alt.generate.quick.review.label`)},get disabled(){return $.get.isApplying},onAccept:v,onReject:()=>{ee(e)}})}}),null),r}})},isFeatureEnabled:s,accessState:l,hasPermission:c,isDisabled:f,isLoading:u,isTargetLoading:b}},$r=0,ei=()=>($r+=1,`media-image-generation-${$r}`),ti=()=>{let e=W(()=>M.get.isAiFeatureEnabled(`imageGeneration`)),t=W(()=>je.get.hasPermission([X.AiImageGenerate]).all),n=Kr({hasPermission:t,license:()=>M.get.license??void 0}),r=W(()=>$.get.isLoading||$.get.isApplying),i=t=>!t||!e()||n().disabled||r()||t.disabled?.()===!0,a=t=>{if(!e())return C()(`ai.media.image.generate.disabled`);let i=n();return i.disabled?i.message:r()?C()(`ai.media.image.generate.loading`):t?.disabled?.()?C()(`ai.media.image.generate.disabled`):C()(`ai.media.image.generate.action`)},o=e=>$.getModal(`mediaImageGeneration`)?.data.targetId===e;return{open:(t,r=ei())=>{e()&&(qr(n())||i(t)||$.open(`mediaImageGeneration`,{data:{target:t,targetId:r}}))},isFeatureEnabled:e,accessState:n,hasPermission:t,isDisabled:i,isLoading:r,isTargetLoading:e=>$.get.isLoading&&o(e),getTooltip:a,getTargetId:ei}},ni=[`image/jpeg`,`image/png`,`image/webp`],ri={"image/jpeg":`jpg`,"image/png":`png`,"image/webp":`webp`},ii=e=>{if(!e)return null;let t=e.toLowerCase().split(`;`)[0]?.trim();return ni.includes(t)?t:null},ai=e=>ii(e)!==null,oi=e=>ii(e)??`image/png`,si=e=>{let t=e.split(/[\\/]/).pop()?.trim()||`image`,n=t.lastIndexOf(`.`);return n<=0?t:t.slice(0,n)},ci=(e,t)=>{let n=oi(t);return`${si(e)}.${ri[n]}`},li=e=>{let t=e.getContext(`2d`);if(!t||e.width<=0||e.height<=0)return!1;for(let n=0;n<e.height;n+=64){let r=Math.min(64,e.height-n),{data:i}=t.getImageData(0,n,e.width,r);for(let e=3;e<i.length;e+=4)if(i[e]<255)return!0}return!1},ui=(e,t)=>{let n=oi(t);return n===`image/jpeg`&&li(e)?`image/png`:n},di=async e=>{let t=ui(e.canvas,e.mimeType),n=await new Promise(n=>{e.canvas.toBlob(n,t,e.quality)});if(!n)throw Error(`Could not export image crop.`);let r=oi(n.type||t);return new File([n],ci(e.fileName,r),{type:r})},fi=G(`<div class="absolute inset-0 z-30 flex items-center justify-center bg-background-base/70">`),pi=G(`<div class="relative overflow-hidden bg-input-base rectangle-background"><div class="relative z-10"><div class=image-cropper-stage></div></div><div class="image-cropper-controls z-40 overflow-y-auto bg-background-base p-4"><div class=mb-4><h2 class="text-title text-base font-semibold"></h2><p class="text-body text-sm mt-1"></p></div><div class=space-y-4><div><div class="grid grid-cols-2 gap-2"></div></div><div><div class=space-y-3>`),mi=G(`<div>`),hi=G(`<div class="flex items-center justify-end gap-2">`),gi=G(`<p>`),_i=[`free`,`original`,`square`,`16:9`,`4:3`,`3:2`],vi=.92,yi=45,bi=`(min-width: 769px)`,xi=`
<cropper-canvas background scale-step="0.14">
<cropper-image rotatable scalable skewable translatable></cropper-image>
<cropper-shade hidden></cropper-shade>
<cropper-handle action="move" plain></cropper-handle>
<cropper-selection initial-coverage="0.5" movable resizable>
<cropper-grid role="grid" bordered covered></cropper-grid>
<cropper-crosshair centered></cropper-crosshair>
<cropper-handle action="move" theme-color="rgba(255, 255, 255, 0.35)"></cropper-handle>
<cropper-handle action="n-resize"></cropper-handle>
<cropper-handle action="e-resize"></cropper-handle>
<cropper-handle action="s-resize"></cropper-handle>
<cropper-handle action="w-resize"></cropper-handle>
<cropper-handle action="ne-resize"></cropper-handle>
<cropper-handle action="nw-resize"></cropper-handle>
<cropper-handle action="se-resize"></cropper-handle>
<cropper-handle action="sw-resize"></cropper-handle>
</cropper-selection>
</cropper-canvas>
`,Si=e=>e.includes(`?`)&&e.split(`?`)[0]||e,Ci=()=>new Promise(e=>{requestAnimationFrame(()=>e())}),wi=e=>{let[t,n]=I(),[r,i]=I(),[a,o]=I(!1),[s,c]=I(!1),[l,u]=I(!1),[d,f]=I(),[p,m]=I(`free`),[h,g]=I(null),[_,v]=I(0),[ee,y]=I(0),[b,x]=I(0),S,te,w,ne=W(()=>e.source?.name||`image`),re=W(()=>e.source?.provenance??{origin:`human`}),ie=W(()=>e.state.open&&s()&&!a()&&!l()&&e.source!==null);function E(){w?.destroy(),w=void 0,S&&(S.innerHTML=``)}function ae(e){return e===`free`?null:e===`original`?h():e===`square`?1:e===`16:9`?16/9:e===`4:3`?4/3:3/2}function D(e){if(!Number.isFinite(e))return _();let t=e%360;return t>180&&(t-=360),t<-180&&(t+=360),Math.round(t)}function oe(e){let t=D(e),n=D(t-_());if(n===0){v(t);return}w?.getCropperImage()?.$rotate(`${n}deg`),v(t)}function O(e){let t=w?.getCropperCanvas();if(!t||t.offsetWidth<=0||t.offsetHeight<=0)return null;let n=t.getBoundingClientRect(),r=n.width/t.offsetWidth,i=n.height/t.offsetHeight;if(!Number.isFinite(r)||!Number.isFinite(i)||r<=0||i<=0)return null;let a=e.getBoundingClientRect();return{x:(a.left-n.left)/r,y:(a.top-n.top)/i,width:a.width/r,height:a.height/i}}function se(){let e=w?.getCropperCanvas();if(!e||e.offsetWidth<=0||e.offsetHeight<=0)return null;let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth;if(!Number.isFinite(n)||n<=0)return null;let r=te&&window.matchMedia(bi).matches?Math.max(0,(te.getBoundingClientRect().right-t.left)/n):0;return{drawerWidth:r,visibleHeight:e.offsetHeight,visibleWidth:Math.max(1,e.offsetWidth-r)}}function ce(){let e=w?.getCropperImage(),t=se();if(!e||!t)return vi;let n=O(e);return!n||n.width<=0||n.height<=0?vi:Math.max(.05,Math.min(t.visibleWidth*vi/n.width,t.visibleHeight*vi/n.height))}function k(){let e=se(),t=w?.getCropperImage();if(!e||!t)return;t.$scale(ce());let n=O(t);if(!n)return;let r=e.drawerWidth+(e.visibleWidth-n.width)/2-n.x,i=(e.visibleHeight-n.height)/2-n.y;r===0&&i===0||(t.$move(r,i),w?.getCropperSelection()?.$move(r,i))}function j(e,t){return Number.isFinite(e)?Math.max(-45,Math.min(yi,Math.round(e))):t}function M(e,t){let n=ee(),r=b(),i=e===`x`?j(t,n):n,a=e===`y`?j(t,r):r,o=i-n,s=a-r;if(o===0&&s===0){y(i),x(a);return}w?.getCropperImage()?.$skew(`${o}deg`,`${s}deg`),y(i),x(a)}function le(e){let t=w?.getCropperSelection();if(!t)return;m(e);let n=ae(e);if(t.aspectRatio=n??NaN,!n||t.width===0||t.height===0)return;let r=t.width,i=t.height,a=r,o=r/n;o>i&&(o=i,a=i*n),t.$change(t.x+(r-a)/2,t.y+(i-o)/2,a,o,n,!0)}async function ue(){let e=w?.getCropperSelection(),t=w?.getCropperImage();if(!e||!t)return;await t.$ready();let[n,r,i,a]=t.$getTransform(),o=Math.sqrt(Math.abs(n*a-r*i));if(!(!Number.isFinite(o)||o<=0))return{width:Math.max(1,Math.round(e.width/o)),height:Math.max(1,Math.round(e.height/o))}}async function N(){let t=w?.getCropperSelection(),n=w?.getCropperImage();if(!(!t||!n||!e.source))try{u(!0),f(void 0);let i=await di({canvas:await t.$toCanvas(await ue()),fileName:ne(),mimeType:r()??e.source.mimeType,quality:.92}),a=n.getBoundingClientRect(),o=t.getBoundingClientRect();if(a.width<=0||a.height<=0)throw Error(C()(`media.crop.export.failed`));let s=Math.max(0,Math.min(1,(o.left-a.left)/a.width)),c=Math.max(0,Math.min(1,(o.top-a.top)/a.height)),l=Math.max(1e-6,Math.min(1-s,o.width/a.width)),d=Math.max(1e-6,Math.min(1-c,o.height/a.height));await e.onApply(i,re(),{x:s,y:c,width:l,height:d,rotation:_(),skewX:ee(),skewY:b()})!==!1&&e.state.setOpen(!1)}catch(e){f(e instanceof Error?e.message:C()(`media.crop.export.failed`))}finally{u(!1)}}return P(()=>{let t=e.source;if(!e.state.open||!t)return;let r=new AbortController,a;o(!0),c(!1),f(void 0),n(void 0),i(void 0),g(null),m(`free`),v(0),y(0),x(0),(async()=>{try{let e;if(t.file)e=t.file;else if(t.url){let n=await fetch(Si(t.url),{credentials:`include`,signal:r.signal});if(!n.ok)throw Error(C()(`media.crop.download.failed`));e=await n.blob()}else throw Error(C()(`media.crop.source.missing`));let s=e.type||t.mimeType||void 0;if(!ai(s))throw Error(C()(`media.crop.unsupported`));if(a=URL.createObjectURL(e),r.signal.aborted){URL.revokeObjectURL(a);return}i(s),n(a),o(!1)}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;f(e instanceof Error?e.message:C()(`media.crop.download.failed`)),o(!1)}})(),he(()=>{r.abort(),a&&URL.revokeObjectURL(a)})}),P(()=>{let n=t();if(!e.state.open||!n||!S)return;let r=!1;c(!1),(async()=>{let{default:t}=await Mt(async()=>{let{default:e}=await import(`./cropper.esm.raw-DxpQP2Hf.js`);return{default:e}},[]);if(r||!S)return;E();let i=new Image;i.src=n,i.alt=ne(),w=new t(i,{container:S,template:xi});let a=w.getCropperImage(),o=await a?.$ready();if(r||(o?.naturalWidth&&o.naturalHeight&&g(o.naturalWidth/o.naturalHeight),await Ci(),r))return;let s=e.source?.crop;if(!(s&&(oe(s.rotation),M(`x`,s.skewX),M(`y`,s.skewY),await Ci(),r))){if(k(),s){if(await Ci(),r)return;let e=w.getCropperSelection(),t=a?O(a):null;e&&t&&e.$change(t.x+s.x*t.width,t.y+s.y*t.height,s.width*t.width,s.height*t.height,NaN,!0)}c(!0)}})(),he(()=>{r=!0,E(),c(!1)})}),P(()=>{e.sta