4 lines
32 KiB
JavaScript
4 lines
32 KiB
JavaScript
;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="f25eeb88-a5d4-ef6d-09ec-36d1fd8c24ac")}catch(e){}}();
|
|
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,252342,e=>{"use strict";var t=e.i(785316),a=e.i(638857),i=e.i(138452),r=e.i(907358);e.s(["AccountClient",0,()=>{let e,n,l=(0,t.c)(4),{setStepNav:s}=(0,a.useStepNav)(),{t:o}=(0,i.useTranslation)();return l[0]!==s||l[1]!==o?(e=()=>{let e=[];e.push({label:o("authentication:account"),url:"/account"}),s(e)},n=[s,o],l[0]=s,l[1]=o,l[2]=e,l[3]=n):(e=l[2],n=l[3]),r.default.useEffect(e,n),null}])},648258,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(55686),n=e.i(138452),l=e.i(713465),s=e.i(559626),o=e.i(907358);let d="confirm-reset-modal";e.s(["ResetPreferences",0,e=>{let u,c,m,h=(0,t.c)(9),{user:f}=e,{openModal:g}=(0,i.useModal)(),{t:p}=(0,n.useTranslation)(),{config:b}=(0,r.useConfig)(),{routes:w}=b,{api:x}=w;h[0]!==x||h[1]!==f?(u=async()=>{if(!f)return;let e=s.stringify({depth:0,where:{"user.value":{equals:f.id}}},{addQueryPrefix:!0});try{let t=await fetch((0,l.formatAdminURL)({apiRoute:x,path:`/payload-preferences${e}`}),{credentials:"include",headers:{"Content-Type":"application/json"},method:"DELETE"}),a=(await t.json()).message;t.ok?i.toast.success(a):i.toast.error(a)}catch(e){}},h[0]=x,h[1]=f,h[2]=u):u=h[2];let v=u;return h[3]!==g?(c=()=>g(d),h[3]=g,h[4]=c):c=h[4],h[5]!==v||h[6]!==p||h[7]!==c?(m=(0,a.jsxs)(o.Fragment,{children:[(0,a.jsx)("div",{children:(0,a.jsx)(i.Button,{buttonStyle:"secondary",onClick:c,children:p("general:resetPreferences")})}),(0,a.jsx)(i.ConfirmationModal,{body:p("general:resetPreferencesDescription"),confirmingLabel:p("general:resettingPreferences"),heading:p("general:resetPreferences"),modalSlug:d,onConfirm:v})]}),h[5]=v,h[6]=p,h[7]=c,h[8]=m):m=h[8],m}])},836964,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(624503),r=r,n=e.i(138452);e.i(907358),e.s(["ToggleTheme",0,()=>{let e,l,s=(0,t.c)(7),{autoMode:o,setTheme:d,theme:u}=(0,r.j)(),{t:c}=(0,n.useTranslation)();s[0]!==d?(e=e=>{d(e)},s[0]=d,s[1]=e):e=s[1];let m=e;return s[2]!==o||s[3]!==m||s[4]!==c||s[5]!==u?(l=(0,a.jsx)(i.RadioGroupField,{disableModifyingForm:!0,field:{name:"theme",label:c("general:adminTheme"),options:[{label:c("general:automatic"),value:"auto"},{label:c("general:light"),value:"light"},{label:c("general:dark"),value:"dark"}]},onChange:m,path:"theme",value:o?"auto":u}),s[2]=o,s[3]=m,s[4]=c,s[5]=u,s[6]=l):l=s[6],l}],836964)},258947,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(138452);e.i(907358),e.s(["LanguageSelector",0,e=>{let n,l,s=(0,t.c)(8),{languageOptions:o}=e,{i18n:d,switchLanguage:u}=(0,r.useTranslation)();if(s[0]!==u?(n=async e=>{await u(e.value)},s[0]=u,s[1]=n):n=s[1],s[2]!==d||s[3]!==o||s[4]!==n){let e;s[6]!==d?(e=e=>e.value===d.language,s[6]=d,s[7]=e):e=s[7],l=(0,a.jsx)(i.ReactSelect,{inputId:"language-select",isClearable:!1,onChange:n,options:o,value:o.find(e)}),s[2]=d,s[3]=o,s[4]=n,s[5]=l}else l=s[5];return l}])},659374,e=>{"use strict";var t=e.i(452797),a=e.i(638857),i=e.i(55686),r=e.i(138452),n=e.i(226150),l=e.i(713465),s=e.i(907358);e.s(["CreateFirstUserClient",0,({docPermissions:e,docPreferences:o,initialState:d,loginWithUsername:u,userSlug:c})=>{let{config:{routes:{admin:m,api:h}},getEntityConfig:f}=(0,i.useConfig)(),{getFormState:g}=(0,a.useServerFunctions)(),{t:p}=(0,r.useTranslation)(),{setUser:b}=(0,a.useAuth)(),w=s.default.useRef(null),x=f({collectionSlug:c}),v=s.default.useCallback(async({formState:t,submitted:a})=>{let i=(0,n.handleAbortRef)(w),r=await g({collectionSlug:c,docPermissions:e,docPreferences:o,formState:t,operation:"create",schemaPath:c,signal:i.signal,skipValidation:!a});if(w.current=null,r&&r.state)return r.state},[c,g,e,o]);return(0,s.useEffect)(()=>{let e=w.current;return()=>{(0,n.abortAndIgnore)(e)}},[]),(0,t.jsxs)(a.Form,{action:(0,l.formatAdminURL)({apiRoute:h,path:`/${c}/first-register`}),initialState:{...d,"confirm-password":{...d["confirm-password"],valid:d["confirm-password"].valid||!1,value:d["confirm-password"].value||""}},method:"POST",onChange:[v],onSuccess:e=>{b(e)},redirect:m,validationOperation:"create",children:[(0,t.jsx)(a.EmailAndUsernameFields,{className:"emailAndUsername",loginWithUsername:u,operation:"create",readOnly:!1,t:p}),(0,t.jsx)(a.PasswordField,{autoComplete:"off",field:{name:"password",label:p("authentication:newPassword"),required:!0},path:"password"}),(0,t.jsx)(a.ConfirmPasswordField,{}),(0,t.jsx)(a.RenderFields,{fields:x.fields,forceRender:!0,parentIndexPath:"",parentPath:"",parentSchemaPath:c,permissions:!0,readOnly:!1}),(0,t.jsx)(a.FormSubmit,{size:"large",children:p("general:create")})]})}])},966563,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(720247),r=e.i(67013),n=e.i(638857),l=e.i(138452),s=e.i(830487),s=s,o=e.i(907358);function d(e){let i,r,s,d=(0,t.c)(15),{addWidget:c,cancel:m,isEditing:h,resetLayout:f,saveLayout:g,setIsEditing:p,widgets:b}=e,{t:w}=(0,l.useTranslation)(),{setStepNav:x}=(0,n.useStepNav)(),v=(0,o.useId)(),y=`widgets-drawer-${v}`;return d[0]!==m||d[1]!==y||d[2]!==h||d[3]!==f||d[4]!==g||d[5]!==p||d[6]!==x?(i=()=>{x([{label:(0,a.jsx)(u,{isEditing:h,onCancel:m,onEditClick:()=>p(!0),onResetLayout:f,onSaveChanges:g,widgetsDrawerSlug:y})}])},r=[h,y,m,f,g,p,x],d[0]=m,d[1]=y,d[2]=h,d[3]=f,d[4]=g,d[5]=p,d[6]=x,d[7]=i,d[8]=r):(i=d[7],r=d[8]),(0,o.useEffect)(i,r),d[9]!==c||d[10]!==y||d[11]!==h||d[12]!==w||d[13]!==b?(s=(0,a.jsx)(a.Fragment,{children:h&&(0,a.jsx)(n.ItemsDrawer,{drawerSlug:y,items:b,onItemClick:e=>c(e.slug),searchPlaceholder:w("dashboard:searchWidgets"),title:w("dashboard:addWidget")})}),d[9]=c,d[10]=y,d[11]=h,d[12]=w,d[13]=b,d[14]=s):s=d[14],s}function u(e){let i,r=(0,t.c)(12),{isEditing:s,onCancel:o,onEditClick:d,onResetLayout:u,onSaveChanges:c,widgetsDrawerSlug:m}=e,{t:h}=(0,l.useTranslation)();if(s){let e;return r[0]!==o||r[1]!==c||r[2]!==h||r[3]!==m?(e=(0,a.jsxs)("div",{className:"dashboard-breadcrumb-dropdown__editing",children:[(0,a.jsx)("span",{children:h("dashboard:editingDashboard")}),(0,a.jsxs)("div",{className:"dashboard-breadcrumb-dropdown__actions",children:[(0,a.jsx)(n.DrawerToggler,{className:"drawer-toggler--unstyled",slug:m,children:(0,a.jsx)(n.Button,{buttonStyle:"pill",el:"span",size:"small",children:h("dashboard:addButton")})}),(0,a.jsx)(n.Button,{buttonStyle:"pill",onClick:c,size:"small",children:h("fields:saveChanges")}),(0,a.jsx)(n.Button,{buttonStyle:"pill",onClick:o,size:"small",children:h("general:cancel")})]})]}),r[0]=o,r[1]=c,r[2]=h,r[3]=m,r[4]=e):e=r[4],e}if(r[5]!==d||r[6]!==u||r[7]!==h){let e,t=[{label:h("dashboard:editDashboard"),value:"edit"},{label:h("dashboard:resetLayout"),value:"reset"}];r[9]!==d||r[10]!==u?(e=e=>{let t=Array.isArray(e)?e[0]:e;t?.value==="edit"?d():t?.value==="reset"&&u()},r[9]=d,r[10]=u,r[11]=e):e=r[11];let l=e;i=(0,a.jsx)(n.ReactSelect,{className:"dashboard-breadcrumb-select",isClearable:!1,isSearchable:!1,menuIsOpen:void 0,onChange:l,options:t,placeholder:h("general:dashboard"),value:{label:h("general:dashboard"),value:"dashboard"}}),r[5]=d,r[6]=u,r[7]=h,r[8]=i}else i=r[8];return i}i.KeyboardCode.Down,i.KeyboardCode.Right,i.KeyboardCode.Up,i.KeyboardCode.Left;var c=e.i(55686),m=e.i(11396),h=e.i(4497);let f=e=>{let i,r,l,s,d=(0,t.c)(10),{widgetData:u,widgetId:c}=e,[m,f]=o.default.useState(null),{serverFunction:g}=(0,n.useServerFunctions)(),p=(0,o.useRef)(0);d[0]!==g||d[1]!==u||d[2]!==c?(i=()=>{!async function(){let e=p.current=p.current+1;f(null);try{let t=c.slice(0,c.lastIndexOf("-")),a=await g({name:"render-widget",args:{widgetData:u,widgetSlug:t}});if(e!==p.current)return;f(a.component)}catch(t){if(e!==p.current)return;f(o.default.createElement("div",{style:{background:"var(--theme-error-50)",border:"1px solid var(--theme-error-200)",borderRadius:"4px",color:"var(--theme-error-text)",padding:"20px",textAlign:"center"}},"Failed to load widget. Please try again later."))}}()},d[0]=g,d[1]=u,d[2]=c,d[3]=i):i=d[3];let b=i;if(d[4]!==b?(r=()=>{b()},l=[b],d[4]=b,d[5]=r,d[6]=l):(r=d[5],l=d[6]),(0,o.useEffect)(r,l),!m){let e;return d[7]===Symbol.for("react.memo_cache_sentinel")?(e=(0,a.jsx)(h.ShimmerEffect,{height:"100%"}),d[7]=e):e=d[7],e}return d[8]!==m?(s=(0,a.jsx)(a.Fragment,{children:m}),d[8]=m,d[9]=s):s=d[9],s},g=e=>{let t,a,i=[];if(e.pointerCoordinates)t=e.pointerCoordinates.x,a=e.pointerCoordinates.y;else{if(!e.collisionRect)return[];t=e.collisionRect.left+e.collisionRect.width/2,a=e.collisionRect.top+e.collisionRect.height/2}for(let r of e.droppableContainers){let n=e.droppableRects.get(r.id);if(n&&a>=n.top&&a<=n.bottom){let e=Math.abs(t-(n.left+n.width/2));i.push({id:String(r.id),data:{value:e}})}}return i.sort((e,t)=>e.data.value-t.data.value)};var p=i;function b(e,t,a){let i=-1,r=1/0;for(let n=0;n<e.length;n++){let l=e[n];if(l.row===t){let e=Math.abs(l.centerX-a);e<r&&(r=e,i=n)}}return -1===i?null:{droppable:e[i],index:i}}let w=(e,{context:t,currentCoordinates:a})=>{let{collisionRect:i}=t,{code:r}=e;if(!i||!["ArrowDown","ArrowLeft","ArrowRight","ArrowUp"].includes(r))return a;e.preventDefault(),t.scrollableAncestors&&(t.scrollableAncestors.length=0);let n=function(){let e=[],t=0,a=null,i=Array.from(document.querySelectorAll(".droppable-widget"));for(let r=0;r<i.length;r++){let n=i[r],l=n.getBoundingClientRect();if(0===l.width||0===l.height)continue;let s=l.left+l.width/2,o=l.top+l.height/2,d=(n.getAttribute("data-testid")||"").endsWith("-before");d&&i.some((e,t)=>{if(t===r)return!1;let a=e.getBoundingClientRect(),i=a.left+a.width/2,n=a.top+a.height/2;return 5>Math.abs(i-s)&&5>Math.abs(n-o)})||(null===a?a=o:Math.abs(o-a)>=10&&(t++,a=o),e.push({centerX:s,centerY:o,element:n,isBeforeDroppable:d,rect:l,row:t}))}return e}();if(0===n.length)return a;let l=i.left+i.width/2,s=i.top+i.height/2,o=function(e,t,a,i){let r=function(e,t){if(0===e.length)return null;let a=e[0].row,i=1/0;for(let r of e){let e=Math.abs(r.centerY-t);e<i&&(i=e,a=r.row)}return a}(e,a);if(null===r)return null;let n=b(e,r,t);if(!n)return null;let{index:l}=n;switch(i){case"ArrowDown":return b(e,r+1,t)?.droppable||null;case"ArrowLeft":return e[l-1]||null;case"ArrowRight":return e[l+1]||null;case"ArrowUp":return b(e,r-1,t)?.droppable||null;default:return null}}(n,l,s,r);if(o){let e=window.innerHeight,t=o.rect,i=t.top<20,r=t.bottom>e-20;if(i){let e=t.top-20;window.scrollBy({behavior:"instant",top:e})}else if(r){let a=t.bottom-e+20;window.scrollBy({behavior:"instant",top:a})}let n=o.element.getBoundingClientRect(),d=n.left+n.width/2,u=n.top+n.height/2,c=d-l,m=u-s;return{x:a.x+c,y:a.y+m}}return a};class x extends p.KeyboardSensor{static activators=[{eventName:"onKeyDown",handler:(e,{keyboardCodes:t={cancel:[p.KeyboardCode.Esc],end:[p.KeyboardCode.Space,p.KeyboardCode.Enter],start:[p.KeyboardCode.Space,p.KeyboardCode.Enter]},onActivation:a},{active:i})=>{let{code:r}=e.nativeEvent;return e.target===i.node.current&&!!t.start.includes(r)&&(e.preventDefault(),a?.({event:e.nativeEvent}),!0)}}]}var v=e.i(226150),y=e.i(503144),j=e.i(866347);function S(e){return"localized"in e&&!!e.localized}function C(e){return"object"!=typeof e||null===e||Array.isArray(e)?{}:e}let A={fields:{}};function P({drawerSlug:e,onSave:t,widget:i,widgetData:r}){let{closeModal:s,modalState:d}=(0,n.useModal)(),{getFormState:u}=(0,n.useServerFunctions)(),{t:c}=(0,l.useTranslation)(),m=(0,n.useLocale)(),f=m?.code??"en",g=(0,o.useRef)(null),[p,b]=(0,o.useState)(!1),w=!!d?.[e]?.isOpen,x=(0,o.useMemo)(()=>(0,y.v4)(),[]),P=(0,o.useMemo)(()=>"string"==typeof i.label?i.label:i.slug,[i.label,i.slug]),R=(0,o.useMemo)(()=>i.fields??[],[i.fields]);(0,o.useEffect)(()=>{if(!w||0===R.length)return void b(!1);let e=new AbortController;return(async()=>{let t=function e(t,a,i){let r={};for(let n of i){if("tabs"===n.type){for(let i of n.tabs){let n=i.fields;(0,j.tabHasName)(i)?r[i.name]=e(C(t[i.name]),a,n):Object.assign(r,e(t,a,n))}continue}if((0,j.fieldHasSubFields)(n)&&!(0,j.fieldAffectsData)(n)){Object.assign(r,e(t,a,n.fields));continue}if(!(0,j.fieldAffectsData)(n))continue;let{name:i}=n,l=t[i];if((0,j.fieldHasSubFields)(n)){r[i]=e(C(l),a,n.fields);continue}S(n)&&void 0!==l&&"object"==typeof l&&null!==l&&!Array.isArray(l)?r[i]=l[a]:r[i]=l}return r}(r??{},f,R),{state:a}=await u({data:t,docPermissions:{fields:!0},docPreferences:A,locale:f,operation:"update",renderAllFields:!0,schemaPath:i.slug,signal:e.signal,widgetSlug:i.slug});a&&b(a)})(),()=>{(0,v.abortAndIgnore)(e)}},[R,u,w,f,i.slug,r]);let F=(0,o.useCallback)(async({formState:e})=>{(0,v.abortAndIgnore)(g.current);let t=new AbortController;g.current=t;let{state:a}=await u({docPermissions:{fields:!0},docPreferences:A,formState:e,operation:"update",schemaPath:i.slug,signal:t.signal,widgetSlug:i.slug});return a||e},[u,i.slug]);return(0,o.useEffect)(()=>()=>{(0,v.abortAndIgnore)(g.current)},[]),(0,a.jsx)(n.Drawer,{slug:e,title:`${c("general:edit")} ${P}`,children:!1===p?(0,a.jsx)(h.ShimmerEffect,{height:"250px"}):(0,a.jsx)(n.OperationProvider,{operation:"update",children:(0,a.jsxs)(n.Form,{fields:R,initialState:p,onChange:[F],onSubmit:(a,i)=>{t(function e(t,a,i,r){let n={...t};for(let t of r){if("tabs"===t.type){for(let r of t.tabs){let t=r.fields;(0,j.tabHasName)(r)?n[r.name]=e(C(n[r.name]),C(a[r.name]),i,t):Object.assign(n,e(n,a,i,t))}continue}if((0,j.fieldHasSubFields)(t)&&!(0,j.fieldAffectsData)(t)){Object.assign(n,e(n,a,i,t.fields));continue}if(!(0,j.fieldAffectsData)(t))continue;let{name:r}=t;if((0,j.fieldHasSubFields)(t)){n[r]=e(C(n[r]),C(a[r]),i,t.fields);continue}S(t)?n[r]={...C(n[r]),[i]:a[r]}:n[r]=a[r]}return n}(r??{},i,f,R)),s(e)},uuid:x,children:[(0,a.jsx)(n.RenderFields,{fields:R,forceRender:!0,parentIndexPath:"",parentPath:"",parentSchemaPath:i.slug,permissions:!0,readOnly:!1}),(0,a.jsx)(n.FormSubmit,{children:c("fields:saveChanges")})]})})})}function R(e){let i,r,s,d=(0,t.c)(7),{onSave:u,widgetData:m,widgetID:h}=e,{t:f}=(0,l.useTranslation)(),{openModal:g}=(0,n.useModal)(),{widgets:p}=(0,c.useConfig)().config.admin.dashboard??{};if(d[0]!==h)i=h.slice(0,h.lastIndexOf("-")),d[0]=h,d[1]=i;else i=d[1];let b=i;d[2]!==b?(r=e=>e.slug===b,d[2]=b,d[3]=r):r=d[3];let w=(void 0===p?[]:p).find(r),x=!!w?.fields?.length,v=(0,o.useId)(),y=`widget-editor-${v}`;return x?(d[4]!==y||d[5]!==g?(s=()=>{g(y)},d[4]=y,d[5]=g,d[6]=s):s=d[6],(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("button",{className:"widget-wrapper__edit-btn",onClick:s,type:"button",children:[(0,a.jsxs)("span",{className:"sr-only",children:[f("general:edit")," ",h]}),(0,a.jsx)(n.EditIcon,{})]}),(0,a.jsx)(P,{drawerSlug:y,onSave:u,widget:w,widgetData:m})]})):null}let F=e=>{let{activatorEvent:t}=e;return t&&"key"in t?e.transform:(e=>{let{activatorEvent:t,draggingNodeRect:a,transform:i}=e;if(a&&t){let e=(0,r.getEventCoordinates)(t);if(!e)return i;let n=e.x-a.left,l=e.y-a.top;return{...i,x:i.x+n-a.width/2,y:i.y+l-a.height/2}}return i})(e)},T={"x-small":25,small:1/3*100,medium:50,large:2/3*100,"x-large":75,full:100};function D(e){let r,u=(0,t.c)(22),{clientLayout:h,widgets:b}=e,{t:v}=(0,l.useTranslation)(),{addWidget:y,cancel:j,cancelModal:S,currentLayout:C,deleteWidget:A,isEditing:P,moveWidget:D,resetLayout:k,resizeWidget:L,saveLayout:O,setIsEditing:I,updateWidgetData:W}=function(e){let t=function(){let{setPreference:e}=(0,n.usePreferences)();return(0,o.useCallback)(async t=>{await e(m.PREFERENCE_KEYS.DASHBOARD_LAYOUT,{layouts:t},!1)},[e])}(),[a,i]=(0,o.useState)(!1),{widgets:r=[]}=(0,c.useConfig)().config.admin.dashboard??{},[s,d]=(0,o.useState)(e),{openModal:u}=(0,n.useModal)(),h="cancel-dashboard-changes",{serverFunction:g}=(0,n.useServerFunctions)(),{t:p}=(0,l.useTranslation)();(0,o.useEffect)(()=>{a||d(e)},[e]);let b=(0,o.useCallback)(async()=>{try{let e=s.map(e=>e.item);i(!1),await t(e)}catch{i(!0),n.toast.error(p("error:failedToSaveLayout"))}},[t,s]),w=(0,o.useCallback)(async()=>{try{await t(null);let e=await g({name:"get-default-layout",args:{}});d(e.layout),i(!1)}catch{n.toast.error(p("error:failedToResetLayout"))}},[t,g]),x=(0,o.useCallback)(()=>{d(e),i(!1)},[e]),v=(0,o.useCallback)(()=>{s.length!==e.length||s.some((t,a)=>{let i=e[a];return!i||t.item.id!==i.item.id||t.item.width!==i.item.width||JSON.stringify(t.item.data||{})!==JSON.stringify(i.item.data||{})})?u(h):x()},[s,e,u,h,x]),y=(0,o.useCallback)(({moveFromIndex:e,moveToIndex:t})=>{e===t||e<0||t<0||d(a=>{var i,r,n;let l;return i=a,r=e,n=t,(l=i.slice()).splice(n<0?l.length+n:n,0,l.splice(r,1)[0]),l})},[]),j=(0,o.useCallback)(e=>{if(!a)return;let t=`${e}-${Date.now()}`,i=r.find(t=>t.slug===e),n={component:o.default.createElement(f,{widgetData:{},widgetId:t}),item:{id:t,data:{},maxWidth:i?.maxWidth??"full",minWidth:i?.minWidth??"x-small",width:i?.minWidth??"x-small"}};d(e=>[...e,n]),setTimeout(()=>{let e=document.getElementById(t);if(e){e.scrollIntoView({behavior:"smooth",block:"center"});let t=e.closest(".widget");t&&(t.classList.add("widget--highlight"),setTimeout(()=>{t.classList.remove("widget--highlight")},1500))}},100)},[a,r]),S=(0,o.useCallback)(e=>{a&&d(t=>t.filter(t=>t.item.id!==e))},[a]),C=(0,o.useCallback)((e,t)=>{a&&d(a=>a.map(a=>a.item.id===e?{...a,item:{...a.item,width:t}}:a))},[a]),A=(0,o.useCallback)((e,t)=>{a&&d(a=>a.map(a=>a.item.id===e?{component:o.default.createElement(f,{widgetData:t,widgetId:e}),item:{...a.item,data:t}}:a))},[a]);return{addWidget:j,cancel:v,cancelModal:o.default.createElement(n.ConfirmationModal,{body:p("dashboard:discardMessage"),confirmLabel:p("dashboard:discardConfirmLabel"),heading:p("dashboard:discardTitle"),modalSlug:h,onConfirm:x}),currentLayout:s,deleteWidget:S,isEditing:a,moveWidget:y,resetLayout:w,resizeWidget:C,saveLayout:b,setIsEditing:i,updateWidgetData:A}}(h),[$,U]=(0,o.useState)(null),M=(0,p.useSensors)((0,p.useSensor)(p.MouseSensor,{activationConstraint:{distance:5}}),(0,p.useSensor)(p.TouchSensor,{activationConstraint:{delay:200,tolerance:5}}),(0,p.useSensor)(x,{coordinateGetter:w}));if(u[0]!==$||u[1]!==y||u[2]!==j||u[3]!==S||u[4]!==C||u[5]!==A||u[6]!==P||u[7]!==D||u[8]!==k||u[9]!==L||u[10]!==O||u[11]!==M||u[12]!==I||u[13]!==v||u[14]!==W||u[15]!==b){let e,t,n,l;u[17]===Symbol.for("react.memo_cache_sentinel")?(e=()=>{U(null)},u[17]=e):e=u[17],u[18]!==C||u[19]!==D?(t=e=>{if(!e.over)return void U(null);let t=e.over.id,a=t.lastIndexOf("-"),i=t.slice(0,a),r=t.slice(a+1);if(i===e.active.id)return;let n=C?.findIndex(t=>t.item.id===e.active.id),l=C?.findIndex(e=>e.item.id===i);n<l&&l--,"after"===r&&l++,D({moveFromIndex:n,moveToIndex:l}),U(null)},u[18]=C,u[19]=D,u[20]=t):t=u[20],u[21]===Symbol.for("react.memo_cache_sentinel")?(n=e=>{U(e.active.id)},u[21]=n):n=u[21],r=(0,a.jsxs)("div",{children:[(0,a.jsx)(i.DndContext,{autoScroll:{enabled:!0,threshold:{x:0,y:.2}},collisionDetection:g,id:"dashboard-dnd-context",onDragCancel:e,onDragEnd:t,onDragStart:n,sensors:M,children:(0,a.jsxs)("div",{className:`modular-dashboard ${P?"editing":""}`,style:{display:"flex",flexWrap:"wrap"},children:[C?.length===0&&(0,a.jsx)("div",{className:"modular-dashboard__empty",children:(0,a.jsx)("p",{children:v("dashboard:noItems")})}),C?.map((e,t)=>(0,a.jsx)(o.default.Fragment,{children:(0,a.jsx)(_,{disabled:!P,id:e.item.id,style:{width:`${T[e.item.width]}%`,padding:"6px"},width:e.item.width,children:(0,a.jsxs)("div",{className:`widget-wrapper ${P?"widget-wrapper--editing":""}`,children:[(0,a.jsx)("div",{"aria-hidden":P,className:"widget-content",inert:P,children:e.component}),P&&(0,a.jsxs)("div",{className:"widget-wrapper__controls",onPointerDown:E,children:[(0,a.jsx)(R,{onSave:t=>{W(e.item.id,t)},widgetData:e.item.data,widgetID:e.item.id}),(0,a.jsx)(N,{currentWidth:e.item.width,maxWidth:e.item.maxWidth,minWidth:e.item.minWidth,onResize:t=>L(e.item.id,t)}),(0,a.jsxs)("button",{className:"widget-wrapper__delete-btn",onClick:()=>A(e.item.id),type:"button",children:[(0,a.jsx)("span",{className:"sr-only",children:v("dashboard:deleteWidget",{id:e.item.id})}),(0,a.jsx)(s.a,{})]})]})]})})},e.item.id)),(0,a.jsx)(i.DragOverlay,{className:"drag-overlay",dropAnimation:{duration:100},modifiers:[F],children:$&&(l=C?.find(e=>e.item.id===$))?(0,a.jsx)("div",{style:{transform:"scale(0.25)"},children:(0,a.jsx)("div",{className:`widget-wrapper ${P?"widget-wrapper--editing":""}`,children:(0,a.jsx)("div",{className:"widget-content",children:l.component})})}):null})]})}),(0,a.jsx)(d,{addWidget:y,cancel:j,isEditing:P,resetLayout:k,saveLayout:O,setIsEditing:I,widgets:b}),S]}),u[0]=$,u[1]=y,u[2]=j,u[3]=S,u[4]=C,u[5]=A,u[6]=P,u[7]=D,u[8]=k,u[9]=L,u[10]=O,u[11]=M,u[12]=I,u[13]=v,u[14]=W,u[15]=b,u[16]=r}else r=u[16];return r}function E(e){return e.stopPropagation()}function N({currentWidth:e,maxWidth:t,minWidth:i,onResize:r}){let l=(0,o.useMemo)(()=>{let e=T[i],a=T[t];return Object.entries(T).map(([e,t])=>({width:e,percentage:t})).filter(t=>t.percentage>=e&&t.percentage<=a)},[i,t]);return l.length<=1?null:(0,a.jsx)(n.Popup,{button:(0,a.jsxs)("button",{className:"widget-wrapper__size-btn",onPointerDown:e=>e.stopPropagation(),type:"button",children:[(0,a.jsx)("span",{className:"widget-wrapper__size-btn-text",children:e}),(0,a.jsx)(n.ChevronIcon,{className:"widget-wrapper__size-btn-icon"})]}),buttonType:"custom",render:({close:t})=>(0,a.jsx)(n.PopupList.ButtonGroup,{children:l.map(i=>{let l=i.width===e;return(0,a.jsxs)(n.PopupList.Button,{active:l,onClick:()=>{r(i.width),t()},children:[(0,a.jsx)("span",{className:"widget-wrapper__size-btn-label",children:i.width}),(0,a.jsxs)("span",{className:"widget-wrapper__size-btn-percentage",children:[i.percentage.toFixed(0),"%"]})]},i.width)})}),size:"small",verticalAlign:"bottom"})}function _(e){let r,n,l=(0,t.c)(13);l[0]!==e.disabled||l[1]!==e.id?(r={id:e.id,disabled:e.disabled},l[0]=e.disabled,l[1]=e.id,l[2]=r):r=l[2];let{attributes:s,isDragging:o,listeners:d,setNodeRef:u}=(0,i.useDraggable)(r),c=o?.3:1;if(l[3]!==s||l[4]!==d||l[5]!==e.children||l[6]!==e.disabled||l[7]!==e.id||l[8]!==e.style||l[9]!==e.width||l[10]!==u||l[11]!==c){let t={...e.style,opacity:c,position:"relative"},i=e.disabled?{}:{...d,...s};n=(0,a.jsxs)("div",{className:"widget","data-slug":e.id,"data-width":e.width,style:t,children:[(0,a.jsx)(k,{id:e.id,position:"before"}),(0,a.jsx)("div",{className:"draggable",id:e.id,ref:u,...i,style:{width:"100%",height:"100%"},children:e.children}),(0,a.jsx)(k,{id:e.id,position:"after"})]}),l[3]=s,l[4]=d,l[5]=e.children,l[6]=e.disabled,l[7]=e.id,l[8]=e.style,l[9]=e.width,l[10]=u,l[11]=c,l[12]=n}else n=l[12];return n}function k(e){let r,n,l,s=(0,t.c)(11),{id:o,position:d}=e,u=`${o}-${d}`;s[0]!==d?(r={position:d},s[0]=d,s[1]=r):r=s[1],s[2]!==u||s[3]!==r?(n={id:u,data:r},s[2]=u,s[3]=r,s[4]=n):n=s[4];let{setNodeRef:c,isOver:m}=(0,i.useDroppable)(n),h=`${o}-${d}`,f="before"===d?-2:"auto",g="after"===d?-2:"auto",p=m?"var(--theme-success-400)":"transparent";return s[5]!==c||s[6]!==h||s[7]!==f||s[8]!==g||s[9]!==p?(l=(0,a.jsx)("div",{className:"droppable-widget","data-testid":h,ref:c,style:{position:"absolute",left:f,right:g,top:0,bottom:0,borderRadius:"1000px",width:"4px",backgroundColor:p,marginBottom:"10px",marginTop:"10px",pointerEvents:"none",zIndex:1e3}}),s[5]=c,s[6]=h,s[7]=f,s[8]=g,s[9]=p,s[10]=l):l=s[10],l}e.s(["ModularDashboardClient",()=>D],966563)},869283,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(55686),n=e.i(138452),l=e.i(837326),s=e.i(713465),o=e.i(907358);function d({description:e,heading:t}){return t?(0,a.jsxs)("div",{className:"form-header",children:[(0,a.jsx)("h1",{children:t}),!!e&&(0,a.jsx)("p",{children:e})]}):null}e.s(["ForgotPasswordForm",0,()=>{let e,u,c,m,h=(0,t.c)(17),{config:f,getEntityConfig:g}=(0,r.useConfig)(),{admin:p,routes:b}=f,{user:w}=p,{api:x}=b,{t:v}=(0,n.useTranslation)(),[y,j]=(0,o.useState)(!1);h[0]!==g||h[1]!==w?(e=g({collectionSlug:w}),h[0]=g,h[1]=w,h[2]=e):e=h[2];let S=e,C=S?.auth?.loginWithUsername;h[3]!==C||h[4]!==v?(u=(e,t,a)=>{e.json().then(()=>{j(!0),t(v("general:submissionSuccessful"))}).catch(()=>{a(C?v("authentication:usernameNotValid"):v("authentication:emailNotValid"))})},h[3]=C,h[4]=v,h[5]=u):u=h[5];let A=u;if(h[6]!==x||h[7]!==f||h[8]!==A||h[9]!==y||h[10]!==C||h[11]!==v||h[12]!==w){m=Symbol.for("react.early_return_sentinel");e:{let e=C?{username:{initialValue:"",valid:!0,value:void 0}}:{email:{initialValue:"",valid:!0,value:void 0}};if(y){let e;h[15]!==v?(e=(0,a.jsx)(d,{description:v("authentication:checkYourEmailForPasswordReset"),heading:v("authentication:emailSent")}),h[15]=v,h[16]=e):e=h[16],m=e;break e}c=(0,a.jsxs)(i.Form,{action:(0,s.formatAdminURL)({apiRoute:x,path:`/${w}/forgot-password`}),handleResponse:A,initialState:e,method:"POST",children:[(0,a.jsx)(d,{description:C?v("authentication:forgotPasswordUsernameInstructions"):v("authentication:forgotPasswordEmailInstructions"),heading:v("authentication:forgotPassword")}),C?(0,a.jsx)(i.TextField,{field:{name:"username",label:v("authentication:username"),required:!0},path:"username",validate:e=>(0,l.text)(e,{name:"username",type:"text",blockData:{},data:{},event:"onChange",path:["username"],preferences:{fields:{}},req:{payload:{config:f},t:v},required:!0,siblingData:{}})}):(0,a.jsx)(i.EmailField,{field:{name:"email",admin:{autoComplete:"email"},label:v("general:email"),required:!0},path:"email",validate:e=>(0,l.email)(e,{name:"email",type:"email",blockData:{},data:{},event:"onChange",path:["email"],preferences:{fields:{}},req:{payload:{config:f},t:v},required:!0,siblingData:{}})}),(0,a.jsx)(i.FormSubmit,{size:"large",children:v("general:submit")})]})}h[6]=x,h[7]=f,h[8]=A,h[9]=y,h[10]=C,h[11]=v,h[12]=w,h[13]=c,h[14]=m}else c=h[13],m=h[14];return m!==Symbol.for("react.early_return_sentinel")?m:c}],869283)},363476,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(907358),r=e.i(638857),n=e.i(55686),l=e.i(138452),s=e.i(713465),o=e.i(837326);let d=e=>{let i=(0,t.c)(11),{type:n,required:s}=e,d=void 0===s||s,{t:u}=(0,l.useTranslation)();if("email"===n){let e;return i[0]!==d||i[1]!==u?(e=(0,a.jsx)(r.EmailField,{field:{name:"email",admin:{autoComplete:"email"},label:u("general:email"),required:d},path:"email",validate:o.email}),i[0]=d,i[1]=u,i[2]=e):e=i[2],e}if("username"===n){let e;return i[3]!==d||i[4]!==u?(e=(0,a.jsx)(r.TextField,{field:{name:"username",label:u("authentication:username"),required:d},path:"username",validate:o.username}),i[3]=d,i[4]=u,i[5]=e):e=i[5],e}if("emailOrUsername"===n){let e;if(i[6]!==d||i[7]!==u){let t;i[9]!==u?(t=(e,t)=>{let a=(0,o.username)(e,t),i=(0,o.email)(e,t);return!!i||!!a||`${u("general:email")}: ${i} ${u("general:username")}: ${a}`},i[9]=u,i[10]=t):t=i[10],e=(0,a.jsx)(r.TextField,{field:{name:"username",label:u("authentication:emailOrUsername"),required:d},path:"username",validate:t}),i[6]=d,i[7]=u,i[8]=e}else e=i[8];return e}return null},u="login__form";e.s(["LoginForm",0,e=>{let o,c,m,h,f=(0,t.c)(23),{prefillEmail:g,prefillPassword:p,prefillUsername:b,searchParams:w}=e,{config:x,getEntityConfig:v}=(0,n.useConfig)(),{admin:y,routes:j}=x,{routes:S,user:C}=y,{forgot:A}=S,{admin:P,api:R}=j;if(f[0]!==v||f[1]!==C){let e,{auth:t}=v({collectionSlug:C});c={canLoginWithEmail:!(e=o=t.loginWithUsername)||e.allowEmailLogin,canLoginWithUsername:!!e},f[0]=v,f[1]=C,f[2]=o,f[3]=c}else o=f[2],c=f[3];let{canLoginWithEmail:F,canLoginWithUsername:T}=c;f[4]!==F||f[5]!==T?(m=()=>F&&T?"emailOrUsername":T?"username":"email",f[4]=F,f[5]=T,f[6]=m):m=f[6];let[D]=i.default.useState(m),{t:E}=(0,l.useTranslation)(),{setUser:N}=(0,r.useAuth)(),_=p??void 0,k=p??void 0;if(f[7]!==P||f[8]!==R||f[9]!==A||f[10]!==D||f[11]!==o||f[12]!==g||f[13]!==b||f[14]!==w?.redirect||f[15]!==N||f[16]!==E||f[17]!==_||f[18]!==k||f[19]!==C){let e,t={password:{initialValue:_,valid:!0,value:k}};o?t.username={initialValue:b??void 0,valid:!0,value:b??void 0}:t.email={initialValue:g??void 0,valid:!0,value:g??void 0},f[21]!==N?(e=e=>{N(e)},f[21]=N,f[22]=e):e=f[22];let i=e;h=(0,a.jsxs)(r.Form,{action:(0,s.formatAdminURL)({apiRoute:R,path:`/${C}/login`}),className:u,disableSuccessStatus:!0,initialState:t,method:"POST",onSuccess:i,redirect:(({allowAbsoluteUrls:e=!1,fallbackTo:t="/",redirectTo:a})=>{let i;if("string"!=typeof a)return t;try{i=decodeURIComponent(a.trim())}catch{return t}let r=i.startsWith("/")&&!i.startsWith("//")&&!i.startsWith("/%2F")&&!i.startsWith("/\\/")&&!i.startsWith("/\\\\")&&!i.startsWith("/\\")&&!i.toLowerCase().startsWith("/javascript:")&&!i.toLowerCase().startsWith("/http"),n=e&&/^https?:\/\/\S+$/i.test(i);return r||n?i:t})({fallbackTo:P,redirectTo:w?.redirect}),waitForAutocomplete:!0,children:[(0,a.jsxs)("div",{className:`${u}__inputWrap`,children:[(0,a.jsx)(d,{type:D}),(0,a.jsx)(r.PasswordField,{field:{name:"password",label:E("general:password"),required:!0},path:"password"})]}),(0,a.jsx)(r.Link,{href:(0,s.formatAdminURL)({adminRoute:P,path:A}),prefetch:!1,children:E("authentication:forgotPasswordQuestion")}),(0,a.jsx)(r.FormSubmit,{size:"large",children:E("authentication:login")})]}),f[7]=P,f[8]=R,f[9]=A,f[10]=D,f[11]=o,f[12]=g,f[13]=b,f[14]=w?.redirect,f[15]=N,f[16]=E,f[17]=_,f[18]=k,f[19]=C,f[20]=h}else h=f[20];return h}],363476)},655061,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(55686),n=e.i(138452),l=e.i(976819),s=e.i(713465),o=e.i(907358);e.s(["LogoutClient",0,e=>{let d,u,c,m,h,f=(0,t.c)(23),{adminRoute:g,inactivity:p,redirect:b}=e,{logOut:w,user:x}=(0,i.useAuth)();(0,r.useConfig)();let{startRouteTransition:v}=(0,i.useRouteTransition)();x?.id;let y=!!x?.id,j=o.default.useRef(!1);f[0]!==g||f[1]!==p||f[2]!==b?(d=()=>(0,s.formatAdminURL)({adminRoute:g,path:`/login${p&&b&&b.length>0?`?redirect=${encodeURIComponent(b)}`:""}`}),f[0]=g,f[1]=p,f[2]=b,f[3]=d):d=f[3];let[S]=o.default.useState(d),{t:C}=(0,n.useTranslation)(),A=(0,l.useRouter)();f[4]!==w||f[5]!==S||f[6]!==A||f[7]!==v||f[8]!==C?(u=async()=>{if(!j.current){j.current=!0,await w(),i.toast.success(C("authentication:loggedOutSuccessfully")),v(()=>A.push(S));return}},f[4]=w,f[5]=S,f[6]=A,f[7]=v,f[8]=C,f[9]=u):u=f[9];let P=u;if(f[10]!==P||f[11]!==p||f[12]!==y||f[13]!==S||f[14]!==A||f[15]!==v?(c=()=>{y&&!p?P():j.current||(j.current=!0,v(()=>A.push(S)))},m=[P,y,S,A,v,p],f[10]=P,f[11]=p,f[12]=y,f[13]=S,f[14]=A,f[15]=v,f[16]=c,f[17]=m):(c=f[16],m=f[17]),(0,o.useEffect)(c,m),!y&&p){let e;return f[18]!==S||f[19]!==C?(e=(0,a.jsxs)("div",{className:"logout__wrap",children:[(0,a.jsx)("h2",{children:C("authentication:loggedOutInactivity")}),(0,a.jsx)(i.Button,{buttonStyle:"secondary",el:"link",size:"large",url:S,children:C("authentication:logBackIn")})]}),f[18]=S,f[19]=C,f[20]=e):e=f[20],e}return f[21]!==C?(h=(0,a.jsx)(i.LoadingOverlay,{animationDuration:"0ms",loadingText:C("authentication:loggingOut")}),f[21]=C,f[22]=h):h=f[22],h}])},803894,e=>{"use strict";var t=e.i(785316),a=e.i(452797),i=e.i(638857),r=e.i(55686),n=e.i(138452),l=e.i(976819),s=e.i(713465);e.i(907358),e.s(["ResetPasswordForm",0,e=>{let o,d,u=(0,t.c)(11),{token:c}=e,m=(0,n.useTranslation)(),{config:h}=(0,r.useConfig)(),{admin:f,routes:g}=h,{routes:p,user:b}=f,{login:w}=p,{admin:x,api:v}=g,y=(0,l.useRouter)(),{fetchFullUser:j}=(0,i.useAuth)();u[0]!==x||u[1]!==j||u[2]!==y||u[3]!==w?(o=async()=>{await j()?y.push(x):y.push((0,s.formatAdminURL)({adminRoute:x,path:w}))},u[0]=x,u[1]=j,u[2]=y,u[3]=w,u[4]=o):o=u[4];let S=o;return u[5]!==v||u[6]!==m||u[7]!==S||u[8]!==c||u[9]!==b?(d=(0,a.jsxs)(i.Form,{action:(0,s.formatAdminURL)({apiRoute:v,path:`/${b}/reset-password`}),initialState:{"confirm-password":{initialValue:"",valid:!1,value:""},password:{initialValue:"",valid:!1,value:""},token:{initialValue:c,valid:!0,value:c}},method:"POST",onSuccess:S,children:[(0,a.jsxs)("div",{className:"inputWrap",children:[(0,a.jsx)(i.PasswordField,{field:{name:"password",label:m.t("authentication:newPassword"),required:!0},path:"password",schemaPath:`${b}.password`}),(0,a.jsx)(i.ConfirmPasswordField,{}),(0,a.jsx)(i.HiddenField,{path:"token",schemaPath:`${b}.token`,value:c})]}),(0,a.jsx)(i.FormSubmit,{size:"large",children:m.t("authentication:resetPassword")})]}),u[5]=v,u[6]=m,u[7]=S,u[8]=c,u[9]=b,u[10]=d):d=u[10],d}])},214960,e=>{"use strict";var t=e.i(785316),a=e.i(638857),i=e.i(976819),r=e.i(907358);function n(e){let n,l,s=(0,t.c)(6),{message:o,redirectTo:d}=e,u=(0,i.useRouter)(),{startRouteTransition:c}=(0,a.useRouteTransition)(),m=r.default.useRef(!1);return s[0]!==o||s[1]!==d||s[2]!==u||s[3]!==c?(n=()=>{let e;return a.toast&&(e=setTimeout(()=>{a.toast.success(o),m.current=!0,c(()=>u.push(d))},100)),()=>{e&&clearTimeout(e)}},l=[u,d,o,c],s[0]=o,s[1]=d,s[2]=u,s[3]=c,s[4]=n,s[5]=l):(n=s[4],l=s[5]),(0,r.useEffect)(n,l),null}e.s(["ToastAndRedirect",()=>n])}]);
|
|
|
|
//# debugId=f25eeb88-a5d4-ef6d-09ec-36d1fd8c24ac
|