@strapi/admin 4.14.0-beta.0 → 4.14.1
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/admin/src/components/RBACProvider/index.js +1 -1
- package/admin/src/content-manager/components/BlocksEditor/BlocksInput/index.js +87 -0
- package/admin/src/content-manager/components/BlocksEditor/Toolbar/index.js +463 -0
- package/admin/src/content-manager/components/BlocksEditor/hooks/useBlocksStore.js +451 -0
- package/admin/src/content-manager/components/BlocksEditor/hooks/useModifiersStore.js +102 -0
- package/admin/src/content-manager/components/BlocksEditor/index.js +126 -0
- package/admin/src/content-manager/components/InputUID/index.js +92 -109
- package/admin/src/content-manager/components/Inputs/index.js +3 -1
- package/admin/src/content-manager/components/Inputs/utils/getInputType.js +2 -0
- package/admin/src/content-manager/components/RelationInput/RelationInput.js +59 -43
- package/admin/src/content-manager/hooks/useRelation/useRelation.js +84 -86
- package/admin/src/content-manager/pages/ListView/index.js +1 -0
- package/admin/src/content-manager/utils/schema.js +22 -0
- package/admin/src/index.js +7 -1
- package/admin/src/pages/MarketplacePage/components/EmptyNpmPackageSearch/index.js +1 -1
- package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/index.js +0 -1
- package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +1 -1
- package/admin/src/translations/en.json +17 -0
- package/build/{1049.bf5230e6.chunk.js → 1049.acb0e730.chunk.js} +1 -1
- package/build/{1227.4f48119b.chunk.js → 1227.969e24e6.chunk.js} +1 -1
- package/build/{1386.8c070d59.chunk.js → 1386.db9a2795.chunk.js} +1 -1
- package/build/{2225.73c9a224.chunk.js → 2225.78fb9b89.chunk.js} +2 -2
- package/build/{2379.27c6ab54.chunk.js → 2379.906334f0.chunk.js} +1 -1
- package/build/{2395.120256d6.chunk.js → 2395.f6ac2863.chunk.js} +1 -1
- package/build/2614.3e088d3e.chunk.js +35 -0
- package/build/{2801.fdd4d8a2.chunk.js → 2801.2afb4757.chunk.js} +1 -1
- package/build/{4174.924ebd4c.chunk.js → 4174.3e13fb26.chunk.js} +1 -1
- package/build/4546.1203ac95.chunk.js +1 -0
- package/build/{502.d26ea06b.chunk.js → 502.9918bff7.chunk.js} +1 -1
- package/build/{6266.c652bdb1.chunk.js → 6266.e8990811.chunk.js} +5 -5
- package/build/6812.00ef5b0d.chunk.js +26 -0
- package/build/{7464.d3d1414f.chunk.js → 7464.0280cf59.chunk.js} +1 -1
- package/build/{7897.cf22d5fe.chunk.js → 7897.4a39de37.chunk.js} +1 -1
- package/build/{8276.b55f4600.chunk.js → 8276.951e198e.chunk.js} +2 -2
- package/build/9832.65ed5a44.chunk.js +181 -0
- package/build/{Admin-authenticatedApp.a687d9c6.chunk.js → Admin-authenticatedApp.c0c1c027.chunk.js} +2 -2
- package/build/{Admin_InternalErrorPage.18ba7fd6.chunk.js → Admin_InternalErrorPage.b3163562.chunk.js} +1 -1
- package/build/{Admin_homePage.86c8d4c9.chunk.js → Admin_homePage.6cb51f18.chunk.js} +1 -1
- package/build/{Admin_marketplace.e75c9cf4.chunk.js → Admin_marketplace.3eb5e132.chunk.js} +4 -4
- package/build/{Admin_pluginsPage.d1afbf28.chunk.js → Admin_pluginsPage.b9fa2947.chunk.js} +1 -1
- package/build/{Admin_profilePage.079903a3.chunk.js → Admin_profilePage.a4d41380.chunk.js} +2 -2
- package/build/{Admin_settingsPage.60a3e46e.chunk.js → Admin_settingsPage.6dc2af9f.chunk.js} +1 -1
- package/build/{Upload_ConfigureTheView.949535b8.chunk.js → Upload_ConfigureTheView.cc7ca628.chunk.js} +1 -1
- package/build/{admin-app.4654dc77.chunk.js → admin-app.98cdf43a.chunk.js} +5 -5
- package/build/{admin-edit-roles-page.6597d934.chunk.js → admin-edit-roles-page.418bb1c5.chunk.js} +3 -3
- package/build/{admin-edit-users.3014605e.chunk.js → admin-edit-users.9b42cc9e.chunk.js} +2 -2
- package/build/{admin-roles-list.ab6fcfb7.chunk.js → admin-roles-list.cf964578.chunk.js} +1 -1
- package/build/{admin-users.81bf5f4d.chunk.js → admin-users.8385dd73.chunk.js} +2 -2
- package/build/{api-tokens-create-page.f5a85725.chunk.js → api-tokens-create-page.2f25ddf6.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.06a32cef.chunk.js → api-tokens-edit-page.45faac16.chunk.js} +1 -1
- package/build/{api-tokens-list-page.bb27d544.chunk.js → api-tokens-list-page.5baabf1a.chunk.js} +2 -2
- package/build/{audit-logs-settings-page.4eb6cdf8.chunk.js → audit-logs-settings-page.91489670.chunk.js} +1 -1
- package/build/content-manager.0d2b4a60.chunk.js +1199 -0
- package/build/{content-type-builder-list-view.b75fb938.chunk.js → content-type-builder-list-view.aa8a5d1a.chunk.js} +2 -2
- package/build/content-type-builder-translation-en-json.b9e5cacd.chunk.js +1 -0
- package/build/content-type-builder.885f2cad.chunk.js +146 -0
- package/build/{email-settings-page.07d417d5.chunk.js → email-settings-page.6bd7b280.chunk.js} +1 -1
- package/build/{en-json.e12fd5fc.chunk.js → en-json.a3973ff5.chunk.js} +1 -1
- package/build/{i18n-settings-page.7107e28a.chunk.js → i18n-settings-page.6c0157e7.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.105dcf23.js +2665 -0
- package/build/{review-workflows-settings-create-view.5d8806b2.chunk.js → review-workflows-settings-create-view.ae369a88.chunk.js} +1 -1
- package/build/{review-workflows-settings-edit-view.634903ed.chunk.js → review-workflows-settings-edit-view.9a61c69f.chunk.js} +1 -1
- package/build/{review-workflows-settings-list-view.d138c3b5.chunk.js → review-workflows-settings-list-view.067e0c35.chunk.js} +2 -2
- package/build/{runtime~main.9589b498.js → runtime~main.6c489074.js} +2 -2
- package/build/{sso-settings-page.caa35f7b.chunk.js → sso-settings-page.a29e6c38.chunk.js} +1 -1
- package/build/{transfer-tokens-create-page.6e7049ff.chunk.js → transfer-tokens-create-page.6e1b8cee.chunk.js} +1 -1
- package/build/{transfer-tokens-edit-page.449b4502.chunk.js → transfer-tokens-edit-page.10bb22e2.chunk.js} +1 -1
- package/build/{transfer-tokens-list-page.34caf827.chunk.js → transfer-tokens-list-page.0306652c.chunk.js} +2 -2
- package/build/{upload-settings.fede24b9.chunk.js → upload-settings.0af6edc5.chunk.js} +1 -1
- package/build/{upload.a96e2452.chunk.js → upload.19e14c8e.chunk.js} +1 -1
- package/build/{users-advanced-settings-page.ac7968e7.chunk.js → users-advanced-settings-page.ed69812f.chunk.js} +1 -1
- package/build/{users-email-settings-page.125a89e2.chunk.js → users-email-settings-page.131a00fb.chunk.js} +1 -1
- package/build/{users-providers-settings-page.ce34951c.chunk.js → users-providers-settings-page.b3dca41d.chunk.js} +1 -1
- package/build/{users-roles-settings-page.d415835a.chunk.js → users-roles-settings-page.afab5a0d.chunk.js} +4 -4
- package/build/{webhook-edit-page.7498417e.chunk.js → webhook-edit-page.4c037da4.chunk.js} +2 -2
- package/build/{webhook-list-page.1b085c7f.chunk.js → webhook-list-page.56c82f4a.chunk.js} +1 -1
- package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +1 -1
- package/ee/server/bootstrap.js +1 -1
- package/ee/server/content-types/workflow-stage/index.js +1 -1
- package/ee/server/controllers/admin.js +1 -1
- package/ee/server/controllers/user.js +1 -1
- package/ee/server/destroy.js +1 -1
- package/ee/server/register.js +1 -1
- package/ee/server/routes/utils.js +1 -1
- package/ee/server/services/audit-logs.js +1 -1
- package/ee/server/services/passport/sso.js +1 -1
- package/ee/server/services/passport.js +1 -1
- package/ee/server/services/seat-enforcement.js +1 -1
- package/ee/server/utils/sso-lock.js +1 -1
- package/ee/server/validation/role.js +1 -1
- package/ee/server/validation/user.js +1 -1
- package/package.json +20 -12
- package/server/controllers/admin.js +1 -1
- package/server/domain/permission/index.js +8 -1
- package/server/validation/permission.js +1 -1
- package/utils/plugins.js +7 -1
- package/build/4546.9710f321.chunk.js +0 -1
- package/build/6272.4017459a.chunk.js +0 -160
- package/build/6812.31979984.chunk.js +0 -26
- package/build/content-manager.9187db78.chunk.js +0 -1097
- package/build/content-type-builder-translation-en-json.ed29ff4d.chunk.js +0 -1
- package/build/content-type-builder.5ff93edd.chunk.js +0 -170
- package/build/main.da000219.js +0 -2860
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{58917:function(j,p,t){"use strict";t.r(p),t.d(p,{default:function(){return bs}});var e=t(32735),g=t(41865),E=t(88492),v=t(56784),u=t.n(v),f=t(93839),W=t.n(f),H=t(86349),C=t.n(H),b=t(88423),U=t.n(b),q=t(74758),D=t(14911),T=t(47750),Pe="strapi-admin-language",i=t(
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{58917:function(j,p,t){"use strict";t.r(p),t.d(p,{default:function(){return bs}});var e=t(32735),g=t(41865),E=t(88492),v=t(56784),u=t.n(v),f=t(93839),W=t.n(f),H=t(86349),C=t.n(H),b=t(88423),U=t.n(b),q=t(74758),D=t(14911),T=t(47750),Pe="strapi-admin-language",i=t(43806),be=t(60216),a=t.n(be),Se=t(20108),Te=t(15062),Ne=t(76402),De=t(97889);const Je={menuLogo:null,authLogo:null};var Qe=(o=Je,s)=>(0,De.ZP)(o,n=>{switch(s.type){case"UPDATE_PROJECT_SETTINGS":{Object.assign(n,s.values);break}default:return n}});const oe=({children:o,authLogo:s,menuLogo:n,showReleaseNotification:r,showTutorials:l})=>{const[{menuLogo:d,authLogo:c},m]=(0,e.useReducer)(Qe,Je),R=(0,e.useCallback)(({menuLogo:w,authLogo:S})=>m({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:w||n,authLogo:S||s}}),[s,n]),A=(0,e.useMemo)(()=>({logos:{menu:{custom:d,default:n},auth:{custom:c,default:s}},updateProjectSettings:R,showReleaseNotification:r,showTutorials:l}),[d,n,c,s,R,r,l]);return e.createElement(Ne._5.Provider,{value:A},o)};oe.propTypes={authLogo:a().string.isRequired,children:a().element.isRequired,menuLogo:a().string.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired};var He=oe,Ce=t(33795),Me=t.n(Ce),Ie=t(3040),Oe=t.n(Ie);const Xe="GUIDED_TOUR_CURRENT_STEP",Ke="GUIDED_TOUR_COMPLETED_STEPS",et="GUIDED_TOUR_SKIPPED",ke=JSON.parse,qe=JSON.stringify;var ye={clear(){localStorage.removeItem(Xe),localStorage.removeItem(Ke)},addCompletedStep(o){const s=ke(localStorage.getItem(Ke))?.slice()||[];s.includes(o)||(s.push(o),localStorage.setItem(Ke,qe(s)))},addCurrentStep(o){localStorage.setItem(Xe,qe(o))},setSkipped(o){localStorage.setItem(et,qe(o))},get(o){return ke(localStorage.getItem(o))}},tt=o=>{const s={...o},n=ye.get(Ke),r=ye.get(Xe),l=ye.get(et);if(n&&n.forEach(d=>{const[c,m]=d.split(".");Oe()(s,["guidedTourState",c,m],!0)}),r){const[d,c]=r.split(".");Oe()(s,["guidedTourState",d,c],!0),ye.addCompletedStep(r),ye.addCurrentStep(null)}return l!==null&&Oe()(s,"isSkipped",l),s};const st={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!0};var gt=(o=st,s)=>(0,De.ZP)(o,n=>{switch(s.type){case"SET_CURRENT_STEP":{n.currentStep=s.step;break}case"SET_STEP_STATE":{const[r,l]=s.currentStep.split(".");n.guidedTourState[r][l]=s.value;break}case"SET_SKIPPED":{n.isSkipped=s.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{n.isGuidedTourVisible=s.value;break}default:return n}}),pt=(o,s)=>{const n=Object.entries(s),r=n.findIndex(([d])=>d===o);return n.slice(0,r).every(([,d])=>Object.values(d).every(Boolean))},ft=(o,s)=>{const n=o.split("."),r=n[1],l=Object.entries(s[n[0]]),d=l.findIndex(([m])=>m===r);return l.slice(0,d).every(([,m])=>m)};const nt=({children:o})=>{const[{currentStep:s,guidedTourState:n,isGuidedTourVisible:r,isSkipped:l},d]=(0,e.useReducer)(gt,st,tt),c=S=>{if(S!==null){const Q=Me()(n,S),X=ft(S,n);if(Q||l||!X)return null}return ye.addCurrentStep(S),d({type:"SET_CURRENT_STEP",step:S})},m=S=>{d({type:"SET_GUIDED_TOUR_VISIBILITY",value:S})},R=(S,Q)=>{ye.addCompletedStep(S),d({type:"SET_STEP_STATE",currentStep:S,value:Q})},A=S=>{const Q=n[S];if(Q){const X=pt(S,n),N=Object.keys(Q)[0],ie=Q[N];if(X&&!s&&!ie)return c(`${S}.${N}`)}return null},w=S=>{ye.setSkipped(S),d({type:"SET_SKIPPED",value:S})};return e.createElement(i.Zc,{guidedTourState:n,currentStep:s,setCurrentStep:c,setGuidedTourVisibility:m,setSkipped:w,setStepState:R,startSection:A,isGuidedTourVisible:r,isSkipped:l},o)};nt.propTypes={children:a().element.isRequired};var ht=nt,bt=t(58732),Et=t.n(bt),Dt=t(78023),vt=t(33229);const yt=({changeLocale:o,children:s,localeNames:n})=>e.createElement(vt.Z.Provider,{value:{changeLocale:o,localeNames:n}},s);yt.propTypes={changeLocale:a().func.isRequired,children:a().element.isRequired,localeNames:a().object.isRequired};var Pt=yt,h=o=>{const s=window.localStorage.getItem(Pe);return{locale:o[s]?s:"en",localeNames:o}};const y={localeNames:{en:"English"},locale:"en"};var le=(o=y,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:n}=s;return o.localeNames[n]?{...o,locale:n}:o}default:return o}};const z=({children:o,localeNames:s,messages:n})=>{const[{locale:r},l]=(0,e.useReducer)(le,y,()=>h(s));(0,e.useEffect)(()=>{window.localStorage.setItem(Pe,r),document.documentElement.setAttribute("lang",r)},[r]);const d=m=>{l({type:"CHANGE_LOCALE",locale:m})},c=Et()(n[r],n.en);return e.createElement(Dt.Z,{locale:r,defaultLocale:"en",messages:c,textComponent:"span"},e.createElement(Pt,{changeLocale:d,localeNames:s},o))};z.propTypes={children:a().element.isRequired,localeNames:a().objectOf(a().string).isRequired,messages:a().object.isRequired};var se=z,re=t(44662),K=t(67879),ue=t(79652),O=t(8471),Ae=(0,O.vJ)`
|
|
2
2
|
body {
|
|
3
3
|
background: ${({theme:o})=>o.colors.neutral100};
|
|
4
4
|
}
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
}
|
|
15
15
|
`,Rt=({onSubmit:o,schema:s})=>{const[n,r]=(0,e.useState)(!1),[l,d]=(0,e.useState)(!1),{formatMessage:c}=(0,K.Z)();return e.createElement(ee.ZP,null,e.createElement(Ve.o,null,e.createElement(ee.bU,null,e.createElement(Tt.J9,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:m,errors:R,handleChange:A})=>e.createElement(i.l0,{noValidate:!0},e.createElement(ee.sg,null,e.createElement($e.Z,null),e.createElement(de.x,{paddingTop:6,paddingBottom:7},e.createElement(me.Z,{as:"h1",variant:"alpha"},c({id:"global.reset-password",defaultMessage:"Reset password"}))),R.errorMessage&&e.createElement(me.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},c({id:R.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Wt,{name:"password",onChange:A,value:m.password,error:R.password?c({id:R.password,defaultMessage:"This field is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:w=>{w.preventDefault(),r(S=>!S)},label:c(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},n?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:c({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:c({id:"global.password",defaultMessage:"Password"}),type:n?"text":"password"}),e.createElement(Wt,{name:"confirmPassword",onChange:A,value:m.confirmPassword,error:R.confirmPassword?c({id:R.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:w=>{w.preventDefault(),d(S=>!S)},label:c(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},l?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),required:!0,label:c({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:l?"text":"password"}),e.createElement(lt.z,{fullwidth:!0,type:"submit"},c({id:"global.change-password",defaultMessage:"Change password"})))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},c({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Rt.defaultProps={onSubmit:o=>o.preventDefault()},Rt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var ms=Rt;const Ht={"forgot-password":{Component:rs,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:k.Ry().shape({email:k.Z_().email(i.I0.email).required(i.I0.required)}),inputsPrefix:""},"forgot-password-success":{Component:is,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:k.Ry().shape({email:k.Z_().email(i.I0.email).required(i.I0.required),password:k.Z_().required(i.I0.required),rememberMe:k.Xg().nullable()}),inputsPrefix:""},oops:{Component:ls,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:Nt,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:k.Ry().shape({firstname:k.Z_().trim().required(i.I0.required),lastname:k.Z_().nullable(),password:k.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:k.Z_().oneOf([k.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required),registrationToken:k.Z_().required(i.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:Nt,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:k.Ry().shape({firstname:k.Z_().trim().required(i.I0.required),lastname:k.Z_().nullable(),password:k.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),email:k.Z_().email(i.I0.email).strict().lowercase(i.I0.lowercase).required(i.I0.required),confirmPassword:k.Z_().oneOf([k.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)}),inputsPrefix:""},"reset-password":{Component:ms,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:k.Ry().shape({password:k.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:k.Z_().oneOf([k.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)})}};var gs=o=>o;const Kt={formErrors:{},modifiedData:{},requestError:null},ps=(o,s)=>(0,De.ZP)(o,n=>{switch(s.type){case"ON_CHANGE":{Oe()(n.modifiedData,s.keys.split("."),s.value);break}case"RESET_PROPS":return Kt;case"SET_DATA":{n.modifiedData=s.data;break}case"SET_ERRORS":{n.formErrors=s.errors;break}case"SET_REQUEST_ERROR":{n.requestError={errorMessage:s.errorMessage,errorStatus:s.errorStatus};break}default:return n}}),At=({hasAdmin:o,setHasAdmin:s})=>{const{push:n,location:{search:r}}=(0,fe.k6)(),{changeLocale:l}=(0,ns.Z)(),{setSkipped:d}=(0,i.c1)(),{trackUsage:c}=(0,i.rS)(),{params:{authType:m}}=(0,fe.$B)("/auth/:authType"),R=(0,i.aM)(),A=(0,rt.c)(St,async()=>(await t.e(2395).then(t.bind(t,82395))).LoginEE),w=(0,rt.c)(Ht,async()=>(await t.e(8276).then(t.bind(t,18276))).FORMS,{combine(x,$){return{...x,...$}},defaultValue:Ht}),[{formErrors:S,modifiedData:Q,requestError:X},N]=(0,e.useReducer)(ps,Kt,gs),M=_t.default.CancelToken.source(),{endPoint:Ze,fieldsToDisable:Be,fieldsToOmit:G,inputsPrefix:ge,schema:te,..._e}=w?.[m]??{};(0,e.useEffect)(()=>()=>{M.cancel("Component unmounted")},[]);const{post:V}=(0,i.kY)();(0,e.useEffect)(()=>{N({type:"RESET_PROPS"})},[m]);const L=({target:{name:x,value:$}})=>{N({type:"ON_CHANGE",keys:x,value:$})},I=async(x,{setSubmitting:$,setErrors:ve})=>{$(!0);const Re=it()(x,G),Z=`/admin/${Ze}`;m==="login"&&await pe(x,Z,{setSubmitting:$,setErrors:ve}),(m==="register"||m==="register-admin")&&await Ds(x,Z,{setSubmitting:$,setErrors:ve}),m==="forgot-password"&&await Ee(Re,Z,{setSubmitting:$,setErrors:ve}),m==="reset-password"&&await Os(Re,Z,{setSubmitting:$,setErrors:ve})},Ee=async(x,$,{setSubmitting:ve,setErrors:Re})=>{try{await V($,x,{cancelToken:M.token}),n("/auth/forgot-password-success")}catch(Z){console.error(Z),Re({errorMessage:"notification.error"})}finally{ve(!1)}},pe=async(x,$,{setSubmitting:ve,setErrors:Re})=>{try{const{data:{data:{token:Z,user:ae}}}=await V($,it()(x,G),{cancelToken:M.token});ae.preferedLanguage&&l(ae.preferedLanguage),i.I8.setToken(Z,x.rememberMe),i.I8.setUserInfo(ae,x.rememberMe),zt()}catch(Z){if(Z.response){const ae=Me()(Z,["response","data","error","message"],"Something went wrong");if(ts()(ae).toLowerCase()==="usernotactive"){n("/auth/oops"),N({type:"RESET_PROPS"});return}Re({errorMessage:ae})}}finally{ve(!1)}},Ds=async(x,$,{setSubmitting:ve,setErrors:Re})=>{try{c("willCreateFirstAdmin");const{data:{data:{token:Z,user:ae}}}=await V($,it()(x,G),{cancelToken:M.token});i.I8.setToken(Z,!1),i.I8.setUserInfo(ae,!1),ve(!1),s(!0);const{roles:Ye}=ae;if(Ye&&Ye.find(({code:ws})=>ws==="strapi-super-admin")&&(ye.setSkipped(!1),d(!1),c("didLaunchGuidedtour")),m==="register"&&x.userInfo.news===!0||m==="register-admin"&&x.news===!0){n({pathname:"/usecase",search:`?hasAdmin=${o}`});return}zt()}catch(Z){if(c("didNotCreateFirstAdmin"),Z.response){const{data:ae}=Z.response,Ye=(0,as.Z)(ae);Re({apiErrors:Ye})}}},Os=async(x,$,{setErrors:ve,setSubmitting:Re})=>{try{const{data:{data:{token:Z,user:ae}}}=await V($,{...x,resetPasswordToken:R.get("code")},{cancelToken:M.token});i.I8.setToken(Z,!1),i.I8.setUserInfo(ae,!1),n("/")}catch(Z){if(Z.response){const ae=Me()(Z,["response","data","message"],"Something went wrong"),Ye=Me()(Z,["response","data","statusCode"],400);N({type:"SET_REQUEST_ERROR",errorMessage:ae,errorStatus:Ye}),ve({errorMessage:ae})}}finally{Re(!1)}},zt=()=>{if(m==="login"){const x=R.get("redirectTo"),$=x?decodeURIComponent(x):"/";n($)}else n("/")};if(!w[m]||o&&m==="register-admin"||i.I8.getToken())return e.createElement(fe.l_,{to:"/"});if(!o&&m!=="register-admin")return e.createElement(fe.l_,{to:{pathname:"/auth/register-admin",search:r}});if(A&&(w.login.Component=A),!A)return null;const{Component:ks}=w?.[m]??{};return e.createElement(ks,{..._e,authType:m,fieldsToDisable:Be,formErrors:S,inputsPrefix:ge,modifiedData:Q,onChange:L,onSubmit:I,requestError:X,schema:te})};At.defaultProps={hasAdmin:!1},At.propTypes={hasAdmin:a().bool,setHasAdmin:a().func.isRequired};var fs=At,hs=t(33248),Es=t(16773),vs=t(40260),ys=t(43743),Ps=t(33348);const Ss=[{intlLabel:{id:"Usecase.front-end",defaultMessage:"Front-end developer"},value:"front_end_developer"},{intlLabel:{id:"Usecase.back-end",defaultMessage:"Back-end developer"},value:"back_end_developer"},{intlLabel:{id:"Usecase.full-stack",defaultMessage:"Full-stack developer"},value:"full_stack_developer"},{intlLabel:{id:"global.content-manager",defaultMessage:"Content Manager"},value:"content_manager"},{intlLabel:{id:"Usecase.content-creator",defaultMessage:"Content Creator"},value:"content_creator"},{intlLabel:{id:"Usecase.other",defaultMessage:"Other"},value:"other"}],Ts=(0,O.ZP)(me.Z)`
|
|
16
16
|
text-align: center;
|
|
17
|
-
`;var Cs=()=>{const o=(0,i.lm)(),{push:s,location:n}=(0,fe.k6)(),{formatMessage:r}=(0,K.Z)(),[l,d]=(0,e.useState)(),[c,m]=(0,e.useState)(""),{post:R}=(0,i.kY)(),{firstname:A,email:w}=i.I8.getUserInfo(),{hasAdmin:S}=(0,Ps.parse)(n?.search,{ignoreQueryPrefix:!0}),Q=l==="other",X=async(N,ie)=>{N.preventDefault();try{await R("https://analytics.strapi.io/register",{email:w,username:A,firstAdmin:Boolean(!S),persona:{role:ie?void 0:l,otherRole:ie?void 0:c}}),o({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return e.createElement(ee.ZP,null,e.createElement(Ve.o,{labelledBy:"usecase-title"},e.createElement(ee.bU,null,e.createElement("form",{onSubmit:N=>X(N,!1)},e.createElement(he.k,{direction:"column",paddingBottom:7},e.createElement($e.Z,null),e.createElement(de.x,{paddingTop:6,paddingBottom:1,width:(0,i.Q1)(250)},e.createElement(Ts,{variant:"alpha",as:"h1",id:"usecase-title"},r({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Es.P,{id:"usecase","data-testid":"usecase",label:r({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:d,value:l},Ss.map(({intlLabel:N,value:ie})=>e.createElement(vs.W,{key:ie,value:ie},r(N)))),Q&&e.createElement(xe.o,{name:"other",label:r({id:"Usecase.other",defaultMessage:"Other"}),value:c,onChange:N=>m(N.target.value),"data-testid":"other"}),e.createElement(lt.z,{type:"submit",size:"L",fullWidth:!0,disabled:!l},r({id:"global.finish",defaultMessage:"Finish"}))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(ys.A,{onClick:()=>X(!0)},r({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},Ft=t(4556);const Ms=(0,e.lazy)(()=>Promise.all([t.e(2659),t.e(801)]).then(t.bind(t,7805)));function Rs(){const o=(0,rt.c)(jt,async()=>(await t.e(3100).then(t.bind(t,73100))).ADMIN_PERMISSIONS_EE,{combine(G,ge){return C()({},G,ge)},defaultValue:jt}),s=(0,rt.c)(Ft.y3,async()=>(await t.e(1386).then(t.bind(t,31386))).ROUTES_EE,{defaultValue:[]}),n=(0,i.lm)(),{updateProjectSettings:r}=(0,ue.um)(),{formatMessage:l}=(0,K.Z)(),[{isLoading:d,hasAdmin:c,uuid:m,deviceId:R},A]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),w=(0,Te.I0)(),S=(0,i.L7)(),{get:Q,post:X}=(0,i.kY)(),N=(0,e.useMemo)(()=>(0,Ut.WW)(s.map(({to:G,Component:ge,exact:te})=>(0,Ut.ot)(ge,G,te))),[s]),[ie,M]=(0,e.useState)(null);(0,e.useEffect)(()=>{w({type:Ft.XS,payload:o})},[o,w]),(0,e.useEffect)(()=>{const G=i.I8.getToken();G&&(async()=>{try{const{data:{data:{token:te}}}=await X("/admin/renew-token",{token:G});i.I8.updateToken(te)}catch{i.I8.clearAppStorage(),window.location.reload()}})()},[X]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:ge,uuid:te,menuLogo:_e,authLogo:V}}}=await Q("/admin/init");if(r({menuLogo:(0,i.CR)(_e),authLogo:(0,i.CR)(V)}),te){const{data:{data:L}}=await Q("/admin/telemetry-properties",{validateStatus:I=>I<500});M(L);try{const I="didInitializeAdministration";await X("https://analytics.strapi.io/api/v2/track",{event:I,userId:"",deviceId:R,eventPropeties:{},userProperties:{environment:S.currentEnvironment},groupProperties:{...L,projectId:te}},{headers:{"X-Strapi-Event":I}})}catch{}}A({isLoading:!1,hasAdmin:ge,uuid:te,deviceId:R})}catch{n({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[n,r]);const Ze=G=>A(ge=>({...ge,hasAdmin:G})),Be=(0,e.useMemo)(()=>({uuid:m,telemetryProperties:ie,deviceId:R}),[m,ie,R]);return d?e.createElement(i.dO,null):e.createElement(e.Suspense,{fallback:e.createElement(i.dO,null)},e.createElement(qt.z,null,l({id:"skipToContent"})),e.createElement(i.L8,{value:Be},e.createElement(fe.rs,null,N,e.createElement(fe.AW,{path:"/auth/:authType",render:G=>e.createElement(fs,{...G,setHasAdmin:Ze,hasAdmin:c}),exact:!0}),e.createElement(wt,{path:"/usecase",component:Cs}),e.createElement(wt,{path:"/",component:Ms}),e.createElement(fe.AW,{path:"",component:hs.default}))))}var As=Rs,Ls={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"};class Is{constructor({adminConfig:s,appPlugins:n,library:r,middlewares:l,reducers:d}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:T,head:{favicon:Qt},locales:["en"],menuLogo:T,notifications:{releases:!0},themes:{light:g.W,dark:E.$},translations:{},tutorials:!0},this.appPlugins=n||{},this.library=r,this.middlewares=l,this.plugins={},this.reducers=d,this.translations={},this.hooksDict={},this.admin={injectionZones:Xt},this.customFields=Y.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(n=>this.library.components.add(n)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const n=JSON.stringify(s);u()(s.to,`link.to should be defined for ${n}`),u()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),u()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(n=>this.library.fields.add(n)):this.library.fields.add(s)};addMenuLink=s=>{const n=JSON.stringify(s);u()(s.to,`link.to should be defined for ${n}`),u()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),u()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),u()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(n=>{this.middlewares.add(n)})};addReducers=s=>{Object.keys(s).forEach(n=>{this.reducers.add(n,s[n])})};addSettingsLink=(s,n)=>{u()(this.settings[s],"The section does not exist");const r=JSON.stringify(n);u()(n.id,`link.id should be defined for ${r}`),u()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${r}`),u()(n.to,`link.to should be defined for ${r}`),u()(n.Component&&typeof n.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(n)};addSettingsLinks=(s,n)=>{u()(this.settings[s],"The section does not exist"),u()(Array.isArray(n),"TypeError expected links to be an array"),n.forEach(r=>{this.addSettingsLink(s,r)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const n=this.appPlugins[s].bootstrap;n&&n({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),W()(this.customBootstrapConfiguration)&&this.customBootstrapConfiguration({addComponents:this.addComponents,addFields:this.addFields,addMenuLink:this.addMenuLink,addReducers:this.addReducers,addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}bootstrapAdmin=async()=>(await this.createCustomConfigurations(),this.createHook(ot.No),this.createHook(ot.LK),this.createHook(ot.dV),this.createHook(ot.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,n=this.customConfigurations.theme.light;!s&&!n&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),C()(this.configurations.themes.light,this.customConfigurations.theme)),n&&C()(this.configurations.themes.light,n),s&&C()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=Jt()};createSettingSection=(s,n)=>{u()(s.id,"section.id should be defined"),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),u()(Array.isArray(n),"TypeError expected links to be an array"),u()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},n.forEach(r=>{this.addSettingsLink(s.id,r)})};createStore=()=>$t(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,n,r)=>{try{return this.admin.injectionZones[s][n][r]||[]}catch(l){return console.error("Cannot get injected component",l),l}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,n,r)=>{u()(this.admin.injectionZones.contentManager[s]?.[n],`The ${s} ${n} zone is not defined in the content manager`),u()(r,"A Component must be provided"),this.admin.injectionZones.contentManager[s][n].push(r)};injectAdminComponent=(s,n,r)=>{u()(this.admin.injectionZones.admin[s]?.[n],`The ${s} ${n} zone is not defined in the admin`),u()(r,"A Component must be provided"),this.admin.injectionZones.admin[s][n].push(r)};async loadAdminTrads(){const s=this.configurations.locales.map(l=>t(48224)(`./${l}.json`).then(({default:d})=>({data:d,locale:l})).catch(()=>({data:null,locale:l})));return(await Promise.all(s)).reduce((l,d)=>(d.data&&(l[d.locale]=d.data),l),{})}async loadTrads(){const s=await this.loadAdminTrads(),n=Object.keys(this.appPlugins).map(c=>{const m=this.appPlugins[c].registerTrads;return m?m({locales:this.configurations.locales}):null}).filter(c=>c),l=(await Promise.all(n)).reduce((c,m)=>{const R=m.reduce((A,w)=>(A[w.locale]=w.data,A),{});return Object.keys(R).forEach(A=>{c[A]={...c[A],...R[A]}}),c},{}),d=this.configurations.locales.reduce((c,m)=>(c[m]={...s[m],...l[m]||{},...this.customConfigurations?.translations?.[m]},c),{});return this.configurations.translations=d,Promise.resolve()}registerHook=(s,n)=>{u()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(n)};registerPlugin=s=>{const n=(0,Y.Sy)(s);this.plugins[n.pluginId]=n};runHookSeries=(s,n=!1)=>n?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,n,r=!1,l)=>r?this.hooksDict[s].runWaterfallAsync(n,l):this.hooksDict[s].runWaterfall(n,l);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),n=U()(Ls,this.configurations.locales||[]),{components:{components:r},fields:{fields:l}}=this.library;return e.createElement(ne,{authLogo:this.configurations.authLogo,components:r,fields:l,customFields:this.customFields,localeNames:n,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(d,c,m=!1)=>this.runHookWaterfall(d,c,m,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},e.createElement(e.Fragment,null,e.createElement(q.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(Pe)||"en"}}),e.createElement(D.VK,{basename:Yt.Z},e.createElement(As,{store:s}))))}}var bs=({adminConfig:o={},appPlugins:s,library:n,middlewares:r,reducers:l})=>new Is({adminConfig:o,appPlugins:s,library:n,middlewares:r,reducers:l})},33229:function(j,p,t){"use strict";var e=t(32735);const g=(0,e.createContext)();p.Z=g},51399:function(j,p,t){"use strict";var e=t(32735),g=t(33229);const E=()=>{const{changeLocale:v,localeNames:u,messages:f}=(0,e.useContext)(g.Z);return{changeLocale:v,localeNames:u,messages:f}};p.Z=E},22773:function(j,p,t){"use strict";t.d(p,{$:function(){return g}});var e=t(30126);function g(){const[E,v]=(0,e.Yw)("STRAPI_NPS_SURVEY_SETTINGS",{enabled:!0,lastResponseDate:null,firstDismissalDate:null,lastDismissalDate:null});return{npsSurveySettings:E,setNpsSurveySettings:v}}},73678:function(j,p,t){"use strict";var e=t(32735),g=t(8471),E=t(79652);const v=g.ZP.img`
|
|
17
|
+
`;var Cs=()=>{const o=(0,i.lm)(),{push:s,location:n}=(0,fe.k6)(),{formatMessage:r}=(0,K.Z)(),[l,d]=(0,e.useState)(),[c,m]=(0,e.useState)(""),{post:R}=(0,i.kY)(),{firstname:A,email:w}=i.I8.getUserInfo(),{hasAdmin:S}=(0,Ps.parse)(n?.search,{ignoreQueryPrefix:!0}),Q=l==="other",X=async(N,ie)=>{N.preventDefault();try{await R("https://analytics.strapi.io/register",{email:w,username:A,firstAdmin:Boolean(!S),persona:{role:ie?void 0:l,otherRole:ie?void 0:c}}),o({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return e.createElement(ee.ZP,null,e.createElement(Ve.o,{labelledBy:"usecase-title"},e.createElement(ee.bU,null,e.createElement("form",{onSubmit:N=>X(N,!1)},e.createElement(he.k,{direction:"column",paddingBottom:7},e.createElement($e.Z,null),e.createElement(de.x,{paddingTop:6,paddingBottom:1,width:(0,i.Q1)(250)},e.createElement(Ts,{variant:"alpha",as:"h1",id:"usecase-title"},r({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Es.P,{id:"usecase","data-testid":"usecase",label:r({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:d,value:l},Ss.map(({intlLabel:N,value:ie})=>e.createElement(vs.W,{key:ie,value:ie},r(N)))),Q&&e.createElement(xe.o,{name:"other",label:r({id:"Usecase.other",defaultMessage:"Other"}),value:c,onChange:N=>m(N.target.value),"data-testid":"other"}),e.createElement(lt.z,{type:"submit",size:"L",fullWidth:!0,disabled:!l},r({id:"global.finish",defaultMessage:"Finish"}))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(ys.A,{onClick:()=>X(!0)},r({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},Ft=t(4556);const Ms=(0,e.lazy)(()=>Promise.all([t.e(2659),t.e(801)]).then(t.bind(t,7805)));function Rs(){const o=(0,rt.c)(jt,async()=>(await t.e(3100).then(t.bind(t,73100))).ADMIN_PERMISSIONS_EE,{combine(G,ge){return C()({},G,ge)},defaultValue:jt}),s=(0,rt.c)(Ft.y3,async()=>(await t.e(1386).then(t.bind(t,31386))).ROUTES_EE,{defaultValue:[]}),n=(0,i.lm)(),{updateProjectSettings:r}=(0,ue.um)(),{formatMessage:l}=(0,K.Z)(),[{isLoading:d,hasAdmin:c,uuid:m,deviceId:R},A]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),w=(0,Te.I0)(),S=(0,i.L7)(),{get:Q,post:X}=(0,i.kY)(),N=(0,e.useMemo)(()=>(0,Ut.WW)(s.map(({to:G,Component:ge,exact:te})=>(0,Ut.ot)(ge,G,te))),[s]),[ie,M]=(0,e.useState)(null);(0,e.useEffect)(()=>{w({type:Ft.XS,payload:o})},[o,w]),(0,e.useEffect)(()=>{const G=i.I8.getToken();G&&(async()=>{try{const{data:{data:{token:te}}}=await X("/admin/renew-token",{token:G});i.I8.updateToken(te)}catch{i.I8.clearAppStorage(),window.location.reload()}})()},[X]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:ge,uuid:te,menuLogo:_e,authLogo:V}}}=await Q("/admin/init");if(r({menuLogo:(0,i.CR)(_e),authLogo:(0,i.CR)(V)}),te){const{data:{data:L}}=await Q("/admin/telemetry-properties",{validateStatus:I=>I<500});M(L);try{const I="didInitializeAdministration";await X("https://analytics.strapi.io/api/v2/track",{event:I,userId:"",deviceId:R,eventPropeties:{},userProperties:{environment:S.currentEnvironment},groupProperties:{...L,projectId:te}},{headers:{"X-Strapi-Event":I}})}catch{}}A({isLoading:!1,hasAdmin:ge,uuid:te,deviceId:R})}catch{n({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[n,r]);const Ze=G=>A(ge=>({...ge,hasAdmin:G})),Be=(0,e.useMemo)(()=>({uuid:m,telemetryProperties:ie,deviceId:R}),[m,ie,R]);return d?e.createElement(i.dO,null):e.createElement(e.Suspense,{fallback:e.createElement(i.dO,null)},e.createElement(qt.z,null,l({id:"skipToContent"})),e.createElement(i.L8,{value:Be},e.createElement(fe.rs,null,N,e.createElement(fe.AW,{path:"/auth/:authType",render:G=>e.createElement(fs,{...G,setHasAdmin:Ze,hasAdmin:c}),exact:!0}),e.createElement(wt,{path:"/usecase",component:Cs}),e.createElement(wt,{path:"/",component:Ms}),e.createElement(fe.AW,{path:"",component:hs.default}))))}var As=Rs,Ls={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"};class Is{constructor({adminConfig:s,appPlugins:n,library:r,middlewares:l,reducers:d}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:T,head:{favicon:Qt},locales:["en"],menuLogo:T,notifications:{releases:!0},themes:{light:g.W,dark:E.$},translations:{},tutorials:!0},this.appPlugins=n||{},this.library=r,this.middlewares=l,this.plugins={},this.reducers=d,this.translations={},this.hooksDict={},this.admin={injectionZones:Xt},this.customFields=Y.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(n=>this.library.components.add(n)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const n=JSON.stringify(s);u()(s.to,`link.to should be defined for ${n}`),u()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),u()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(n=>this.library.fields.add(n)):this.library.fields.add(s)};addMenuLink=s=>{const n=JSON.stringify(s);u()(s.to,`link.to should be defined for ${n}`),u()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),u()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),u()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(n=>{this.middlewares.add(n)})};addReducers=s=>{Object.keys(s).forEach(n=>{this.reducers.add(n,s[n])})};addSettingsLink=(s,n)=>{u()(this.settings[s],"The section does not exist");const r=JSON.stringify(n);u()(n.id,`link.id should be defined for ${r}`),u()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${r}`),u()(n.to,`link.to should be defined for ${r}`),u()(n.Component&&typeof n.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(n)};addSettingsLinks=(s,n)=>{u()(this.settings[s],"The section does not exist"),u()(Array.isArray(n),"TypeError expected links to be an array"),n.forEach(r=>{this.addSettingsLink(s,r)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const n=this.appPlugins[s].bootstrap;n&&n({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),W()(this.customBootstrapConfiguration)&&this.customBootstrapConfiguration({addComponents:this.addComponents,addFields:this.addFields,addMenuLink:this.addMenuLink,addReducers:this.addReducers,addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}bootstrapAdmin=async()=>(await this.createCustomConfigurations(),this.createHook(ot.No),this.createHook(ot.LK),this.createHook(ot.dV),this.createHook(ot.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,n=this.customConfigurations.theme.light;!s&&!n&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),C()(this.configurations.themes.light,this.customConfigurations.theme)),n&&C()(this.configurations.themes.light,n),s&&C()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=Jt()};createSettingSection=(s,n)=>{u()(s.id,"section.id should be defined"),u()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),u()(Array.isArray(n),"TypeError expected links to be an array"),u()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},n.forEach(r=>{this.addSettingsLink(s.id,r)})};createStore=()=>$t(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,n,r)=>{try{return this.admin.injectionZones[s][n][r]||[]}catch(l){return console.error("Cannot get injected component",l),l}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,n,r)=>{u()(this.admin.injectionZones.contentManager[s]?.[n],`The ${s} ${n} zone is not defined in the content manager`),u()(r,"A Component must be provided"),this.admin.injectionZones.contentManager[s][n].push(r)};injectAdminComponent=(s,n,r)=>{u()(this.admin.injectionZones.admin[s]?.[n],`The ${s} ${n} zone is not defined in the admin`),u()(r,"A Component must be provided"),this.admin.injectionZones.admin[s][n].push(r)};async loadAdminTrads(){const s=this.configurations.locales.map(l=>t(48224)(`./${l}.json`).then(({default:d})=>({data:d,locale:l})).catch(()=>({data:null,locale:l})));return(await Promise.all(s)).reduce((l,d)=>(d.data&&(l[d.locale]=d.data),l),{})}async loadTrads(){const s=await this.loadAdminTrads(),n=Object.keys(this.appPlugins).map(c=>{const m=this.appPlugins[c].registerTrads;return m?m({locales:this.configurations.locales}):null}).filter(c=>c),l=(await Promise.all(n)).reduce((c,m)=>{const R=m.reduce((A,w)=>(A[w.locale]=w.data,A),{});return Object.keys(R).forEach(A=>{c[A]={...c[A],...R[A]}}),c},{}),d=this.configurations.locales.reduce((c,m)=>(c[m]={...s[m],...l[m]||{},...this.customConfigurations?.translations?.[m]},c),{});return this.configurations.translations=d,Promise.resolve()}registerHook=(s,n)=>{u()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(n)};registerPlugin=s=>{const n=(0,Y.Sy)(s);this.plugins[n.pluginId]=n};runHookSeries=(s,n=!1)=>n?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,n,r=!1,l)=>r?this.hooksDict[s].runWaterfallAsync(n,l):this.hooksDict[s].runWaterfall(n,l);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),n=U()(Ls,this.configurations.locales||[]),{components:{components:r},fields:{fields:l}}=this.library;return e.createElement(ne,{authLogo:this.configurations.authLogo,components:r,fields:l,customFields:this.customFields,localeNames:n,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(d,c,m=!1)=>this.runHookWaterfall(d,c,m,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},e.createElement(e.Fragment,null,e.createElement(q.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(Pe)||"en"}}),e.createElement(D.VK,{basename:Yt.Z},e.createElement(As,{store:s}))))}}var bs=({adminConfig:o={},appPlugins:s,library:n,middlewares:r,reducers:l})=>new Is({adminConfig:o,appPlugins:s,library:n,middlewares:r,reducers:l})},33229:function(j,p,t){"use strict";var e=t(32735);const g=(0,e.createContext)();p.Z=g},51399:function(j,p,t){"use strict";var e=t(32735),g=t(33229);const E=()=>{const{changeLocale:v,localeNames:u,messages:f}=(0,e.useContext)(g.Z);return{changeLocale:v,localeNames:u,messages:f}};p.Z=E},22773:function(j,p,t){"use strict";t.d(p,{$:function(){return g}});var e=t(43806);function g(){const[E,v]=(0,e.Yw)("STRAPI_NPS_SURVEY_SETTINGS",{enabled:!0,lastResponseDate:null,firstDismissalDate:null,lastDismissalDate:null});return{npsSurveySettings:E,setNpsSurveySettings:v}}},73678:function(j,p,t){"use strict";var e=t(32735),g=t(8471),E=t(79652);const v=g.ZP.img`
|
|
18
18
|
height: ${72/16}rem;
|
|
19
|
-
`,u=()=>{const{logos:{auth:f}}=(0,E.um)();return e.createElement(v,{src:f?.custom??f.default,"aria-hidden":!0,alt:""})};p.Z=u},76402:function(j,p,t){"use strict";t.d(p,{ux:function(){return E},_5:function(){return u},$l:function(){return W},Rj:function(){return C}});var e=t(32735),E=(0,e.createContext)({}),u=(0,e.createContext)({}),W=(0,e.createContext)({}),C=(0,e.createContext)({})},35231:function(j,p){"use strict";const t="/admin/".replace(window.location.origin,"");p.Z=t},66941:function(j,p,t){"use strict";t.d(p,{Eo:function(){return E},LK:function(){return g},No:function(){return e},dV:function(){return v}});const e="Admin/CM/pages/ListView/inject-column-in-table",g="Admin/CM/pages/App/mutate-collection-types-links",E="Admin/CM/pages/EditView/mutate-edit-view-layout",v="Admin/CM/pages/App/mutate-single-types-links"},79652:function(j,p,t){"use strict";t.d(p,{um:function(){return v},H9:function(){return Te},$_:function(){return De},rW:function(){return We},G4:function(){return gt},Te:function(){return vt},M1:function(){return Pt}});var e=t(32735),g=t(76402),v=()=>(0,e.useContext)(g._5),u=t(90769),f=t(
|
|
19
|
+
`,u=()=>{const{logos:{auth:f}}=(0,E.um)();return e.createElement(v,{src:f?.custom??f.default,"aria-hidden":!0,alt:""})};p.Z=u},76402:function(j,p,t){"use strict";t.d(p,{ux:function(){return E},_5:function(){return u},$l:function(){return W},Rj:function(){return C}});var e=t(32735),E=(0,e.createContext)({}),u=(0,e.createContext)({}),W=(0,e.createContext)({}),C=(0,e.createContext)({})},35231:function(j,p){"use strict";const t="/admin/".replace(window.location.origin,"");p.Z=t},66941:function(j,p,t){"use strict";t.d(p,{Eo:function(){return E},LK:function(){return g},No:function(){return e},dV:function(){return v}});const e="Admin/CM/pages/ListView/inject-column-in-table",g="Admin/CM/pages/App/mutate-collection-types-links",E="Admin/CM/pages/EditView/mutate-edit-view-layout",v="Admin/CM/pages/App/mutate-single-types-links"},79652:function(j,p,t){"use strict";t.d(p,{um:function(){return v},H9:function(){return Te},$_:function(){return De},rW:function(){return We},G4:function(){return gt},Te:function(){return vt},M1:function(){return Pt}});var e=t(32735),g=t(76402),v=()=>(0,e.useContext)(g._5),u=t(90769),f=t(43806),W=t(601),H=t(90230),C=t(19594),b=t(15062),U=t(30305),q=t(99381),D=t.n(q),B=(P,h)=>h.map(({permissions:y})=>(0,f.qX)(P,y)),i=async(P,h,y)=>{const F=B(P,h),le=await Promise.all(F),z=h.filter((K,ue)=>le[ue]),se=z.findIndex(K=>K.to==="/settings");if(se===-1)return[];const re=D()(z);return re[se].notificationsCount=y?1:0,re},a=async(P,h)=>{const y=B(P,h),F=await Promise.all(y);return h.filter((z,se)=>F[se])},Te=()=>{const{allPermissions:P}=(0,f.vn)(),{shouldUpdateStrapi:h}=(0,f.L7)(),{menu:y}=(0,f.j1)(),F=(0,b.v9)(U._),[le,z]=e.useState({generalSectionLinks:[{icon:W.Z,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:F.marketplace.main},{icon:H.Z,intlLabel:{id:"global.marketplace",defaultMessage:"Marketplace"},to:"/marketplace",permissions:F.marketplace.main},{icon:C.Z,intlLabel:{id:"global.settings",defaultMessage:"Settings"},to:"/settings",permissions:[],notificationsCount:0}],pluginsSectionLinks:[],isLoading:!0}),se=e.useRef(le.generalSectionLinks);return e.useEffect(()=>{async function re(){const K=await a(P,y),ue=await i(P,se.current,h);z(O=>({...O,generalSectionLinks:ue,pluginsSectionLinks:K,isLoading:!1}))}re()},[z,se,P,y,F,h]),le},De=()=>(0,e.useContext)(g.$l),We=(P,h,y,F)=>{const[le,z]=(0,e.useState)(!1),se=(0,f.lm)(),{post:re}=(0,f.kY)(),{formatAPIError:K}=(0,f.So)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:O}}}=await re(`${P}${h}/regenerate`);z(!1),y(O)}catch(O){z(!1),F?F(O):se({type:"warning",message:K(O)})}},isLoadingConfirmation:le}};const Qe=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),oe=()=>{const{latestStrapiReleaseTag:P,shouldUpdateStrapi:h}=useAppInfo(),y=useNotification();return useEffect(()=>{h&&Qe&&y({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${P}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)})},[P,h,y]),null};var He=null,Ce=t(9086),Me=t.n(Ce),Ie=t(90869),Xe=(P,h)=>({...P,fieldsToPick:h}),Ke=t(97889),et=t(88423),ke=t.n(et),qe=t(3040),mt=t.n(qe),ye=t(56236),Lt=t.n(ye);const tt={fieldsToPick:[],formErrors:{},initialData:{},isLoading:!0,modifiedData:{},showHeaderButtonLoader:!1,showHeaderLoader:!0},st=(P,h)=>(0,Ke.ZP)(P,y=>{switch(h.type){case"GET_DATA_SUCCEEDED":{y.isLoading=!1,y.showHeaderLoader=!1,y.initialData=ke()(h.data,P.fieldsToPick),y.modifiedData=ke()(h.data,P.fieldsToPick);break}case"ON_CANCEL":{y.modifiedData=P.initialData,y.formErrors={};break}case"ON_CHANGE":{h.inputType==="password"&&!h.value?Lt()(y.modifiedData,h.keys.split(".")):h.keys.includes("username")&&!h.value?mt()(y.modifiedData,h.keys.split("."),null):mt()(y.modifiedData,h.keys.split("."),h.value);break}case"ON_SUBMIT":{y.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{y.initialData=ke()(h.data,P.fieldsToPick),y.modifiedData=ke()(h.data,P.fieldsToPick),y.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{y.formErrors=h.errors,y.showHeaderButtonLoader=!1;break}default:return y}});var gt=(P,h,y,F)=>{const[{formErrors:le,initialData:z,isLoading:se,modifiedData:re,showHeaderButtonLoader:K,showHeaderLoader:ue},O]=(0,e.useReducer)(st,tt,()=>Xe(tt,F)),_=(0,f.lm)(),{lockApp:Ae,unlockApp:Fe}=(0,f.o1)(),{get:ze,put:Le}=(0,f.kY)();return(0,e.useEffect)(()=>{P&&(async()=>{try{const{data:{data:ne}}=await ze(P);O({type:"GET_DATA_SUCCEEDED",data:ne,fieldsToPick:F})}catch(ne){console.error(ne.response),_({type:"warning",message:{id:"notification.error"}})}})()},[P]),[{formErrors:le,initialData:z,isLoading:se,modifiedData:re,showHeaderButtonLoader:K,showHeaderLoader:ue},O,{handleCancel:()=>{O({type:"ON_CANCEL"})},handleChange:({target:{name:ce,value:ne,type:Y}})=>{O({type:"ON_CHANGE",inputType:Y,keys:ce,value:ne})},handleSubmit:async ce=>{ce.preventDefault();const ne=await(0,Ie.R6)(re,h);if(O({type:"SET_ERRORS",errors:ne||{}}),!ne)try{Ae(),O({type:"ON_SUBMIT"});const Y=Me()(re,["confirmPassword","registrationToken"]);Y.roles&&(Y.roles=Y.roles.map(Ue=>Ue.id)),Y.ssoLockedRoles&&(Y.ssoLockedRoles=[...new Set(Y.ssoLockedRoles)]);const{data:{data:J}}=await Le(P,Y);y(J),O({type:"ON_SUBMIT_SUCCEEDED",data:J}),_({type:"success",message:{id:"notification.success.saved"}})}catch(Y){const J=Y?.response?.payload??{data:{}};J?.data&&typeof J.data=="string"?_({type:"warning",message:J.data}):_({type:"warning",message:J.message});const Ue=(0,Ie.Iz)(J);O({type:"SET_ERRORS",errors:Ue})}finally{Fe()}},setField:(ce,ne)=>{O({type:"ON_CHANGE",keys:ce,value:ne})}}]},It=t(9592);const pt={global:[{intlLabel:{id:"Settings.application.title",defaultMessage:"Overview"},to:"/settings/application-infos",id:"000-application-infos",permissions:[]},{intlLabel:{id:"Settings.webhooks.title",defaultMessage:"Webhooks"},to:"/settings/webhooks",id:"webhooks"},{intlLabel:{id:"Settings.apiTokens.title",defaultMessage:"API Tokens"},to:"/settings/api-tokens?sort=name:ASC",id:"api-tokens"},{intlLabel:{id:"Settings.transferTokens.title",defaultMessage:"Transfer Tokens"},to:"/settings/transfer-tokens?sort=name:ASC",id:"transfer-tokens"}],admin:[{intlLabel:{id:"global.roles",defaultMessage:"Roles"},to:"/settings/roles",id:"roles"},{intlLabel:{id:"global.users"},to:"/settings/users?pageSize=10&page=1&sort=firstname",id:"users"}]};var ft=P=>P.map(h=>{const y=h.links.map(F=>({...F,isDisplayed:!1}));return{...h,links:y}}),nt=t(98978),ht=t.n(nt),Et=P=>ht()(P,h=>h.id),vt=()=>{const[{isLoading:P,menu:h},y]=(0,e.useState)({isLoading:!0,menu:[]}),{allPermissions:F}=(0,f.vn)(),{shouldUpdateStrapi:le}=(0,f.L7)(),{settings:z}=(0,f.j1)(),se=(0,b.v9)(U._),{global:re,admin:K}=(0,It.c)(pt,async()=>(await t.e(918).then(t.bind(t,50918))).LINKS_EE,{combine(_,Ae){return{admin:[...Ae.admin,..._.admin],global:[..._.global,...Ae.global]}},defaultValue:{admin:[],global:[]}}),ue=(0,e.useCallback)(_=>{if(!_.id)throw new Error("The settings menu item must have an id attribute.");return{..._,permissions:se.settings?.[_.id]?.main}},[se.settings]);(0,e.useEffect)(()=>{const _=async()=>{const at=await(we=>Promise.all(we.reduce((je,Ge,ce)=>{const ne=Y=>Y.map(async(J,Ue)=>({hasPermission:await(0,f.qX)(F,J.permissions),sectionIndex:ce,linkIndex:Ue}));return[...je,...ne(Ge.links)]},[])))(ze);y(we=>({...we,isLoading:!1,menu:ze.map((je,Ge)=>({...je,links:je.links.map((ce,ne)=>{const Y=at.find(J=>J.sectionIndex===Ge&&J.linkIndex===ne);return{...ce,isDisplayed:Boolean(Y.hasPermission)}})}))}))},{global:Ae,...Fe}=z,ze=ft([{...z.global,links:Et([...z.global.links,...re.map(ue)]).map(Le=>({...Le,hasNotification:Le.id==="000-application-infos"&&le}))},{id:"permissions",intlLabel:{id:"Settings.permissions",defaultMessage:"Administration Panel"},links:K.map(ue)},...Object.values(Fe)]);_()},[K,re,F,z,le,ue]);const O=_=>({..._,links:_.links.filter(Ae=>Ae.isDisplayed)});return{isLoading:P,menu:h.map(O)}},Pt=()=>(0,e.useContext)(g.Rj)},90769:function(j,p,t){"use strict";t.d(p,{G:function(){return v}});var e=t(32735),g=t(43806),E=t(20108);function v(){const{get:u}=(0,g.kY)(),{formatAPIError:f}=(0,g.So)(),W=(0,g.lm)(),H=(0,E.useQueries)(["components","content-types"].map(T=>({queryKey:["content-manager",T],async queryFn(){const{data:{data:B}}=await u(`/content-manager/${T}`);return B},onError(B){W({type:"warning",message:f(B)})}}))),[C,b]=H,U=C.isLoading||b.isLoading,q=e.useMemo(()=>(b?.data??[]).filter(T=>T.kind==="collectionType"&&T.isDisplayed),[b?.data]),D=e.useMemo(()=>(b?.data??[]).filter(T=>T.kind!=="collectionType"&&T.isDisplayed),[b?.data]);return{isLoading:U,components:e.useMemo(()=>C?.data??[],[C?.data]),collectionTypes:q,singleTypes:D}}},9592:function(j,p,t){"use strict";t.d(p,{c:function(){return v}});var e=t(32735),g=t(43806);function E(){return window.strapi.isEE}function v(u,f,{defaultValue:W=null,combine:H=(b,U)=>U,enabled:C=!0}={}){const b=(0,g.W6)(f),U=(0,g.W6)(H),[{data:q},D]=e.useState({data:E()&&C?W:u});return e.useEffect(()=>{async function T(){const B=await b();D({data:U(u,B)})}E()&&C&&T()},[u,b,U,C]),q}},11060:function(j,p,t){"use strict";t.d(p,{sg:function(){return D},bU:function(){return T},ZP:function(){return Pe}});var e=t(32735),g=t(77981),E=t(84642),v=t(60216),u=t.n(v),f=t(8471),W=t(4987),H=t(67879),C=t(51399),U=()=>{const{changeLocale:i,localeNames:be}=(0,C.Z)(),{locale:a}=(0,H.Z)();return e.createElement(W.q4,{value:a,onChange:Se=>i(Se)},Object.entries(be).map(([Se,Te])=>e.createElement(W.ag,{key:Se,value:Se},Te)))};const q=(0,f.ZP)(g.x)`
|
|
20
20
|
margin: 0 auto;
|
|
21
21
|
width: 552px;
|
|
22
22
|
`,D=(0,f.ZP)(E.k)`
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
fill: ${({theme:v})=>v.colors.neutral600};
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
`;p.Z=E},24436:function(j,p,t){"use strict";var e=t(32735),g=t(2846),E=t(95162),v=t(77981),u=t(8365),f=t(84642),W=t(31014),H=t(91779),C=t(
|
|
32
|
+
`;p.Z=E},24436:function(j,p,t){"use strict";var e=t(32735),g=t(2846),E=t(95162),v=t(77981),u=t(8365),f=t(84642),W=t(31014),H=t(91779),C=t(43806),b=t(10364),U=t(62161),q=t(92802),D=t(60216),T=t.n(D),B=t(67879),Pe=t(8471),i=t(73678),be=t(11060),a=t(24018);const Se=(0,Pe.ZP)(g.o)`
|
|
33
33
|
::-ms-reveal {
|
|
34
34
|
display: none;
|
|
35
35
|
}
|
|
36
|
-
`,Te=({onSubmit:Ne,schema:De,children:Je})=>{const[We,Qe]=(0,e.useState)(!1),{formatMessage:oe}=(0,B.Z)();return e.createElement(E.o,null,e.createElement(be.bU,null,e.createElement(q.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:Ne,validationSchema:De,validateOnChange:!1},({values:He,errors:Ce,handleChange:Me})=>e.createElement(C.l0,{noValidate:!0},e.createElement(be.sg,null,e.createElement(i.Z,null),e.createElement(v.x,{paddingTop:6,paddingBottom:1},e.createElement(u.Z,{variant:"alpha",as:"h1"},oe({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(v.x,{paddingBottom:7},e.createElement(u.Z,{variant:"epsilon",textColor:"neutral600"},oe({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),Ce.errorMessage&&e.createElement(u.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},Ce.errorMessage)),e.createElement(f.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(g.o,{error:Ce.email?oe({id:Ce.email,defaultMessage:"This value is required."}):"",value:He.email,onChange:Me,label:oe({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:oe({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(Se,{error:Ce.password?oe({id:Ce.password,defaultMessage:"This value is required."}):"",onChange:Me,value:He.password,label:oe({id:"global.password",defaultMessage:"Password"}),name:"password",type:We?"text":"password",endAction:e.createElement(a.Z,{onClick:Ie=>{Ie.stopPropagation(),Qe(Oe=>!Oe)},label:oe(We?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},We?e.createElement(b.Z,null):e.createElement(U.Z,null)),required:!0}),e.createElement(W.X,{onValueChange:Ie=>{Me({target:{value:Ie,name:"rememberMe"}})},value:He.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},oe({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(H.z,{fullWidth:!0,type:"submit"},oe({id:"Auth.form.button.login",defaultMessage:"Login"}))))),Je),e.createElement(f.k,{justifyContent:"center"},e.createElement(v.x,{paddingTop:4},e.createElement(C.rU,{to:"/auth/forgot-password"},oe({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};Te.defaultProps={children:null,onSubmit(){}},Te.propTypes={children:T().node,onSubmit:T().func,schema:T().shape({type:T().string.isRequired}).isRequired},p.Z=Te},33248:function(j,p,t){"use strict";t.r(p);var e=t(32735),g=t(95162),E=t(64092),v=t(56932),u=t(80564),f=t(
|
|
36
|
+
`,Te=({onSubmit:Ne,schema:De,children:Je})=>{const[We,Qe]=(0,e.useState)(!1),{formatMessage:oe}=(0,B.Z)();return e.createElement(E.o,null,e.createElement(be.bU,null,e.createElement(q.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:Ne,validationSchema:De,validateOnChange:!1},({values:He,errors:Ce,handleChange:Me})=>e.createElement(C.l0,{noValidate:!0},e.createElement(be.sg,null,e.createElement(i.Z,null),e.createElement(v.x,{paddingTop:6,paddingBottom:1},e.createElement(u.Z,{variant:"alpha",as:"h1"},oe({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(v.x,{paddingBottom:7},e.createElement(u.Z,{variant:"epsilon",textColor:"neutral600"},oe({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),Ce.errorMessage&&e.createElement(u.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},Ce.errorMessage)),e.createElement(f.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(g.o,{error:Ce.email?oe({id:Ce.email,defaultMessage:"This value is required."}):"",value:He.email,onChange:Me,label:oe({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:oe({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(Se,{error:Ce.password?oe({id:Ce.password,defaultMessage:"This value is required."}):"",onChange:Me,value:He.password,label:oe({id:"global.password",defaultMessage:"Password"}),name:"password",type:We?"text":"password",endAction:e.createElement(a.Z,{onClick:Ie=>{Ie.stopPropagation(),Qe(Oe=>!Oe)},label:oe(We?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},We?e.createElement(b.Z,null):e.createElement(U.Z,null)),required:!0}),e.createElement(W.X,{onValueChange:Ie=>{Me({target:{value:Ie,name:"rememberMe"}})},value:He.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},oe({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(H.z,{fullWidth:!0,type:"submit"},oe({id:"Auth.form.button.login",defaultMessage:"Login"}))))),Je),e.createElement(f.k,{justifyContent:"center"},e.createElement(v.x,{paddingTop:4},e.createElement(C.rU,{to:"/auth/forgot-password"},oe({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};Te.defaultProps={children:null,onSubmit(){}},Te.propTypes={children:T().node,onSubmit:T().func,schema:T().shape({type:T().string.isRequired}).isRequired},p.Z=Te},33248:function(j,p,t){"use strict";t.r(p);var e=t(32735),g=t(95162),E=t(64092),v=t(56932),u=t(80564),f=t(43806),W=t(25919),H=t(29213),C=t(67879);const b=()=>{const{formatMessage:U}=(0,C.Z)();return(0,f.go)(),e.createElement(g.o,{labelledBy:"title"},e.createElement(E.T,{id:"title",title:U({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),e.createElement(v.D,null,e.createElement(u.x,{action:e.createElement(f.Qj,{variant:"secondary",endIcon:e.createElement(W.Z,null),to:"/"},U({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:U({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:e.createElement(H.Z,{width:"10rem"}),shadow:"tableShadow"})))};p.default=b},63602:function(j,p,t){"use strict";var e=t(32735),g=t(43806),E=t(60216),v=t.n(E),u=t(53038);const f=({loadComponent:H})=>{const[C,b]=(0,e.useState)(null);return(0,e.useEffect)(()=>{(async()=>{try{const q=await H();b(()=>q.default)}catch(q){console.log(q)}})()},[H]),C?e.createElement(C,null):e.createElement(g.dO,null)},W=(H,C,b)=>e.createElement(u.AW,{render:()=>e.createElement(f,{loadComponent:H}),key:C,path:C,exact:b||!1});f.propTypes={loadComponent:v().func.isRequired},p.Z=W},5074:function(j,p){"use strict";const t=({data:e})=>{try{return Object.keys(e).reduce((g,E)=>{const v=e[E][0];return g[E]={id:v,defaultMessage:v},g},{})}catch{return{}}};p.Z=t},90869:function(j,p,t){"use strict";t.d(p,{R6:function(){return E},ot:function(){return v.Z},Iz:function(){return u.Z},Pp:function(){return f},Qy:function(){return q},WW:function(){return W.Z}});var e=t(43806),E=async(D,T)=>{let B=null;try{await T.validate(D,{abortEarly:!1})}catch(Pe){B=(0,e.CJ)(Pe)}return B},v=t(63602),u=t(5074),f=(D,T="")=>[D,T].filter(B=>B).join(" "),W=t(18805),H=t(98978);const C=D=>sortBy(D,T=>T.name);var b=null;const U={bufferToHex(D){return[...new Uint8Array(D)].map(T=>T.toString(16).padStart(2,"0")).join("")},async digestMessage(D){const T=new TextEncoder().encode(D),B=await crypto.subtle.digest("SHA-256",T);return this.bufferToHex(B)}};async function q(D){if(!D)return null;try{return await U.digestMessage(D.email)}catch{return null}}},18805:function(j,p){"use strict";const t=e=>e.filter((g,E,v)=>v.findIndex(u=>u.key===g.key)===E);p.Z=t},48224:function(j,p,t){var e={"./ar.json":[38677,7958],"./ca.json":[90169,3516],"./cs.json":[43186,7519],"./de.json":[8343,6901],"./dk.json":[65668,7898],"./en.json":[10329,320],"./es.json":[45445,8367],"./eu.json":[69511,8360],"./fr.json":[8399,8006],"./gu.json":[10182,2248],"./he.json":[21757,830],"./hi.json":[43206,6332],"./hu.json":[72320,5894],"./id.json":[74221,8897],"./it.json":[90685,6817],"./ja.json":[21727,1312],"./ko.json":[30986,1377],"./ml.json":[11309,9903],"./ms.json":[75973,3025],"./nl.json":[80381,2671],"./no.json":[82446,562],"./pl.json":[84008,7846],"./pt-BR.json":[91417,9647],"./pt.json":[41830,3340],"./ru.json":[57098,123],"./sa.json":[92900,9726],"./sk.json":[52204,606],"./sv.json":[43211,9303],"./th.json":[49582,749],"./tr.json":[99154,395],"./uk.json":[2987,7403],"./vi.json":[50576,3278],"./zh-Hans.json":[35964,2553],"./zh.json":[91999,1011]};function g(E){if(!t.o(e,E))return Promise.resolve().then(function(){var f=new Error("Cannot find module '"+E+"'");throw f.code="MODULE_NOT_FOUND",f});var v=e[E],u=v[0];return t.e(v[1]).then(function(){return t.t(u,19)})}g.keys=function(){return Object.keys(e)},g.id=48224,j.exports=g},47750:function(j,p,t){"use strict";j.exports=t.p+"70674f63fc3904c20de0.svg"}}]);
|
package/build/{admin-edit-roles-page.6597d934.chunk.js → admin-edit-roles-page.418bb1c5.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(K,L,o){"use strict";o.d(L,{V:function(){return R}});var e=o(
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(K,L,o){"use strict";o.d(L,{V:function(){return R}});var e=o(43806),C=o(20108);const R=(E={},O={})=>{const{id:P,...A}=E,{get:y}=(0,e.kY)();if(!P&&(O?.enabled===void 0||O?.enabled))throw new Error('"id" is a required argument');const{data:S,error:W,isError:a,isLoading:Z,refetch:m}=(0,C.useQuery)(["roles",P,"permissions",A],async()=>{const{data:{data:M}}=await y(`/admin/roles/${P}/permissions`,{params:A});return M},O);return{permissions:S,error:W,isError:a,isLoading:Z,refetch:m}}},86409:function(K,L,o){"use strict";o.d(L,{F:function(){return O}});var e=o(32735),C=o(43806),R=o(67879),E=o(20108);const O=(P={},A={})=>{const{id:y="",...S}=P,{get:W}=(0,C.kY)(),{locale:a}=(0,R.Z)(),Z=(0,C.Xe)(a,{sensitivity:"base"}),{data:m,error:M,isError:F,isLoading:g,refetch:b}=(0,E.useQuery)(["roles",y,S],async()=>{const{data:w}=await W(`/admin/roles/${y??""}`,{params:S});return w},A);return{roles:e.useMemo(()=>{let w=[];return y&&m?w=[m.data]:Array.isArray(m?.data)&&(w=m.data),[...w].sort((oe,ee)=>Z.compare(oe.name,ee.name))},[m,y,Z]),error:M,isError:F,isLoading:g,refetch:b}}},15570:function(K,L,o){"use strict";o.r(L),o.d(L,{CreatePage:function(){return Re},default:function(){return Se}});var e=o(32735),C=o(95162),R=o(64092),E=o(84642),O=o(91779),P=o(56932),A=o(77981),y=o(8365),S=o(10710),W=o(97037),a=o(2846),Z=o(15367),m=o(43806),M=o(70788),F=o(14723),g=o(92802),b=o(86834),G=o.n(b),w=o(67879),oe=o(15062),ee=o(53038),v=o(8471),pe=o(64499),Q=o(30305),H=o(1283),te=o(91720),Ce=o(24346),xe=Ce.Ry().shape({name:Ce.Z_().required(m.I0.required),description:Ce.Z_().required(m.I0.required)});const ie=v.ZP.div`
|
|
2
2
|
border: 1px solid ${({theme:z})=>z.colors.primary200};
|
|
3
3
|
background: ${({theme:z})=>z.colors.primary100};
|
|
4
4
|
padding: ${({theme:z})=>`${z.spaces[2]} ${z.spaces[4]}`};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
border-radius: ${({theme:z})=>z.borderRadius};
|
|
7
7
|
font-size: ${12/16}rem;
|
|
8
8
|
font-weight: bold;
|
|
9
|
-
`,Re=()=>{const z=(0,ee.$B)("/settings/roles/duplicate/:id"),Y=(0,m.lm)(),{lockApp:re,unlockApp:X}=(0,m.o1)(),{formatMessage:j}=(0,w.Z)(),[J,le]=(0,e.useState)(!1),{replace:ge}=(0,ee.k6)(),q=(0,e.useRef)(),{trackUsage:ue}=(0,m.rS)(),{post:ke,put:Be}=(0,m.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,te.d)(ve?.id,{cacheTime:0}),{permissions:he,isLoading:Me}=(0,pe.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Pe=>{re(),le(!0),ve?.id?ue("willDuplicateRole"):ue("willCreateNewRole"),Promise.resolve(ke("/admin/roles",Pe)).then(async({data:ne})=>{const{permissionsToSend:ce}=q.current.getPermissions();return ve?.id?ue("didDuplicateRole"):ue("didCreateNewRole"),ne.data.id&&!G()(ce)&&await Be(`/admin/roles/${ne.data.id}/permissions`,{permissions:ce}),ne}).then(ne=>{le(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ge(`/settings/roles/${ne.data.id}`)}).catch(ne=>{console.error(ne),le(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{X()})},Ue=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(C.o,null,e.createElement(m.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:Ue},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Pe,values:ne,errors:ce,handleReset:de,handleChange:me})=>e.createElement(m.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(R.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{de(),q.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Pe,loading:J,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(m.rU,{startIcon:e.createElement(M.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(P.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(E.k,{justifyContent:"space-between"},e.createElement(A.x,null,e.createElement(A.x,null,e.createElement(y.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(A.x,null,e.createElement(y.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ie,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(S.r,{gap:4},e.createElement(W.P,{col:6},e.createElement(a.o,{name:"name",error:ce.name&&j({id:ce.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:me,required:!0,value:ne.name})),e.createElement(W.P,{col:6},e.createElement(Z.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ce.description&&j({id:ce.description}),onChange:me},ne.description))))),!Ze&&!Me?e.createElement(A.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(H.Z,{isFormDisabled:!1,ref:q,permissions:he,layout:Le})):e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(m.dO,null))))))))};function Se(){const z=(0,oe.v9)(Q._);return e.createElement(m.O4,{permissions:z.settings.roles.create},e.createElement(Re,null))}},1283:function(K,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),C=o(49854),R=o(89599),E=o(8623),O=o(
|
|
9
|
+
`,Re=()=>{const z=(0,ee.$B)("/settings/roles/duplicate/:id"),Y=(0,m.lm)(),{lockApp:re,unlockApp:X}=(0,m.o1)(),{formatMessage:j}=(0,w.Z)(),[J,le]=(0,e.useState)(!1),{replace:ge}=(0,ee.k6)(),q=(0,e.useRef)(),{trackUsage:ue}=(0,m.rS)(),{post:ke,put:Be}=(0,m.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,te.d)(ve?.id,{cacheTime:0}),{permissions:he,isLoading:Me}=(0,pe.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Pe=>{re(),le(!0),ve?.id?ue("willDuplicateRole"):ue("willCreateNewRole"),Promise.resolve(ke("/admin/roles",Pe)).then(async({data:ne})=>{const{permissionsToSend:ce}=q.current.getPermissions();return ve?.id?ue("didDuplicateRole"):ue("didCreateNewRole"),ne.data.id&&!G()(ce)&&await Be(`/admin/roles/${ne.data.id}/permissions`,{permissions:ce}),ne}).then(ne=>{le(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ge(`/settings/roles/${ne.data.id}`)}).catch(ne=>{console.error(ne),le(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{X()})},Ue=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(C.o,null,e.createElement(m.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:Ue},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Pe,values:ne,errors:ce,handleReset:de,handleChange:me})=>e.createElement(m.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(R.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{de(),q.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Pe,loading:J,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(m.rU,{startIcon:e.createElement(M.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(P.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(E.k,{justifyContent:"space-between"},e.createElement(A.x,null,e.createElement(A.x,null,e.createElement(y.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(A.x,null,e.createElement(y.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ie,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(S.r,{gap:4},e.createElement(W.P,{col:6},e.createElement(a.o,{name:"name",error:ce.name&&j({id:ce.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:me,required:!0,value:ne.name})),e.createElement(W.P,{col:6},e.createElement(Z.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ce.description&&j({id:ce.description}),onChange:me},ne.description))))),!Ze&&!Me?e.createElement(A.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(H.Z,{isFormDisabled:!1,ref:q,permissions:he,layout:Le})):e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(m.dO,null))))))))};function Se(){const z=(0,oe.v9)(Q._);return e.createElement(m.O4,{permissions:z.settings.roles.create},e.createElement(Re,null))}},1283:function(K,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),C=o(49854),R=o(89599),E=o(8623),O=o(43806),P=o(23973),A=o.n(P),y=o(86834),S=o.n(y),W=o(60216),a=o.n(W),Z=o(67879),m=o(77981),M=o(98978),F=o.n(M),g=o(8471),b=o(84642),G=o(96669),w=o(76884),oe=o(30465),ee=o(33795),v=o.n(ee),pe=o(9086),Q=o.n(pe),H=o(79652),te=o(91779),Ce=o(19594);const be=g.ZP.div`
|
|
10
10
|
position: relative;
|
|
11
11
|
|
|
12
12
|
${({hasConditions:t,disabled:n,theme:r})=>t&&`
|
|
@@ -213,7 +213,7 @@
|
|
|
213
213
|
background: ${n?r.colors.neutral100:r.colors.primary600};
|
|
214
214
|
}
|
|
215
215
|
`}
|
|
216
|
-
`,Pt=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=(0,H.$_)(),{formatMessage:f}=(0,Z.Z)(),x=v()(d,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=ze(x[se]),B),{}),[x]),{hasAllActionsSelected:N,hasSomeActionsSelected:I}=Oe($),T=()=>{c(B=>!B)},h=()=>{c(!1)},k=Dn(s,d,i),D=Ln(v()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:I,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},k.map(({checkboxName:B,value:se,action:U,displayName:_,hasConditions:V})=>e.createElement($n.P,{col:3,key:U},e.createElement(In,{disabled:n,hasConditions:V},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:ye=>{u({target:{name:B,value:ye}})},value:se},_))))),e.createElement(ie,{hasConditions:D,onClick:T}))),l&&e.createElement(ce,{headerBreadCrumbs:[t,r],actions:k,isFormDisabled:n,onClosed:h,onToggle:T}))};Pt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{c(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:ue()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:N})=>e.createElement(kn,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...d,N]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var Bn=_e;const At=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},u)=>e.createElement(Bn,{key:c,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===c,isWhite:u%2===1,name:c,onOpenCategory:l,pathToData:[n,d]})))};At.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().arrayOf(a().shape({category:a().string.isRequired,categoryId:a().string.isRequired,childrenForm:a().arrayOf(a().shape({actions:a().array.isRequired})).isRequired}).isRequired).isRequired};var Tt=At,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),fe=o.n(Nn),St=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Mt=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),Ot=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:Ot(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:c})=>c===i);if(l){const c=v()(r,["properties",l.value],[]),d=Ot(l,c);s.properties[i]=d}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var $t=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(S()(d))return i;const p=Object.keys(d).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,T=d[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),h=St(s,x,f),k=Mt(r,v()(h,"conditions",[]));if(S()($)||T)return fe()(u,[f,x],{properties:{enabled:h!==void 0},conditions:k}),u;const D=Wn($,d[f],h);return fe()(u,[f,x],{...D,conditions:k}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=St(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Mt(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Dt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const c=Un(l,n,r);return s[i]=c,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(ge()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(ge()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(c,"category")},p={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(d.plugins,r,n),settings:Dt(d.settings,r,n)};return{initialData:p,modifiedData:p,layouts:d}},Gn=o(99381),et=o.n(Gn);const It=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!A()(s,"conditions"))return{...n,[r]:It(s)};if(Te()(s)&&A()(s,"conditions")&&!je(Q()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=It;const kt=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Te()(l)?{...s,[i]:kt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=kt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,J.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,c=["modifiedData",s];Object.keys(v()(t,c)).forEach(d=>{const p=v()(t,[...c,d,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}fe()(r,[...c,d,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=n;let d=et()(t.modifiedData);const p=s.split(".."),u=v()(d,p,{});Object.keys(u).forEach(f=>{if(A()(u[f],`properties.${i}`)){const x=v()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Te()(x))fe()(d,$,c);else{const N=He(x,c);fe()(d,$,N)}}}),c||(d=tt(d)),fe()(r,"modifiedData",d);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;fe()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);fe()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),fe()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let c=et()(t.modifiedData);const d=v()(c,l,{}),p=He(d,i);fe()(c,l,p),i||(c=tt(c)),fe()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const nt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},wn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=wn(r);return[...n,...s]},[]);const Zt=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Te()(l)?[...r,...Zt(l,`${n}${i}.`)]:(l&&!Te()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Zt(d),i},{action:t,subject:n,conditions:nt(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:nt(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,c]=i;if(!je(c).some(u=>u))return s;if(!c?.properties?.enabled){const u=Qn(l,t,c);return[...s,u]}if(!c.properties.enabled)return s;const p=Jn(l,t,c);return s.push(p),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const n=Bt(t.plugins),r=Bt(t.settings),s=Ft(t.collectionTypes),i=Ft(t.singleTypes);return[...n,...r,...s,...i]},es=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,O.e5)(i.collectionTypes,c.collectionTypes),T=(0,O.e5)(i.singleTypes,c.singleTypes),h={...I,...T};let k;return S()(h)?k=!1:k=Object.values(h).some(D=>Object.values(D).some(B=>A()(B,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:k}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(I,T,h,k)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:T,rowName:h,value:k})},f=(I,T,h)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:T,value:h})},x=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},$=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:T})},[]),N=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(C.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,es.map(I=>e.createElement(R.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(st)},87056:function(K,L,o){"use strict";o.r(L),o.d(L,{default:function(){return Y}});var e=o(32735),C=o(30126),R=o(15062),E=o(53038),O=o(30305),P=o(95162),A=o(64092),y=o(84642),S=o(91779),W=o(56932),a=o(77981),Z=o(70788),m=o(92802),M=o(67879),F=o(64499),g=o(86409),b=o(91720),G=o(1283),w=o(8365),oe=o(10710),ee=o(97037),v=o(2846),pe=o(15367),Q=o(60216),H=o.n(Q);const te=({disabled:re,role:X,values:j,errors:J,onChange:le,onBlur:ge})=>{const{formatMessage:q}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(y.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(w.Z,{fontWeight:"bold"},X?X.name:q({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(w.Z,{textColor:"neutral500",variant:"pi"},X?X.description:q({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},q({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:X.usersCount}))),e.createElement(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(v.o,{disabled:re,name:"name",error:J.name&&q({id:J.name}),label:q({id:"global.name",defaultMessage:"Name"}),onChange:le,onBlur:ge,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(pe.g,{disabled:re,label:q({id:"global.description",defaultMessage:"Description"}),id:"description",error:J.name&&q({id:J.name}),onChange:le,onBlur:ge},j.description||"")))))};te.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},te.propTypes={disabled:H().bool,errors:H().object.isRequired,onBlur:H().func.isRequired,onChange:H().func.isRequired,role:H().object,values:H().object};var Ce=te,be=o(24346),ie=be.Ry().shape({name:be.Z_().required(C.I0.required)}),Se=()=>{const re=(0,C.lm)(),{formatMessage:X}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:J}=(0,C.kY)(),[le,ge]=(0,e.useState)(!1),q=(0,e.useRef)(),{lockApp:ue,unlockApp:ke}=(0,C.o1)(),{trackUsage:Be}=(0,C.rS)(),{formatAPIError:ve}=(0,C.So)(),{isLoading:Ze,data:Le}=(0,b.d)(j,{cacheTime:0}),{roles:[he={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:Ue,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ne=async de=>{try{ue(),ge(!0);const{permissionsToSend:me,didUpdateConditions:Ae}=q.current.getPermissions();await J(`/admin/roles/${j}`,de),he.code!=="strapi-super-admin"&&(await J(`/admin/roles/${j}/permissions`,{permissions:me}),Ae&&Be("didUpdateConditions")),q.current.setFormAfterSubmit(),await Fe(),re({type:"success",message:{id:"notification.success.saved"}})}catch(me){re({type:"warning",message:ve(me)})}finally{ge(!1),ke()}},ce=!Me&&he.code==="strapi-super-admin";return e.createElement(P.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:ne,validationSchema:ie,validateOnChange:!1},({handleSubmit:de,values:me,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:de},e.createElement(A.T,{primaryAction:e.createElement(y.k,{gap:2},e.createElement(S.z,{disabled:he.code==="strapi-super-admin",onClick:de,loading:le,size:"L"},X({id:"global.save",defaultMessage:"Save"}))),title:X({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:X({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(C.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},X({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:ce,errors:Ae,values:me,onChange:ot,onBlur:Ne,role:he}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:ce,permissions:Ue,ref:q,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},Y=()=>{const re=(0,R.v9)(O._),{isLoading:X,allowedActions:{canRead:j,canUpdate:J}}=(0,C.ss)({read:re.settings.roles.read,update:re.settings.roles.update});return X?e.createElement(C.dO,null):!j&&!J?e.createElement(E.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(K,L,o){"use strict";o.d(L,{d:function(){return R}});var e=o(30126),C=o(20108);const R=(E,O={})=>{const{get:P}=(0,e.kY)(),{data:A,error:y,isError:S,isLoading:W}=(0,C.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await P("/admin/permissions",{params:{role:E}});return a},O);return{data:A,error:y,isError:S,isLoading:W}}},84802:function(K){function L(o,e,C,R){for(var E=-1,O=o==null?0:o.length;++E<O;){var P=o[E];e(R,P,C(P),o)}return R}K.exports=L},62435:function(K,L,o){var e=o(56671);function C(R,E,O,P){return e(R,function(A,y,S){E(P,A,O(A),S)}),P}K.exports=C},85580:function(K,L,o){var e=o(84802),C=o(62435),R=o(88904),E=o(77236);function O(P,A){return function(y,S){var W=E(y)?e:C,a=A?A():{};return W(y,P,R(S,2),a)}}K.exports=O},72091:function(K,L,o){var e=o(40314),C=1/0;function R(E){var O=E==null?0:E.length;return O?e(E,C):[]}K.exports=R},81346:function(K,L,o){var e=o(40999),C=o(85580),R=Object.prototype,E=R.hasOwnProperty,O=C(function(P,A,y){E.call(P,y)?P[y].push(A):e(P,y,[A])});K.exports=O},9435:function(K,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return W}});var e=o(74512),C=o(32735),R=o(8471),E=o(85612),O=o(37808),P=o(8365),A=o(84642),y=o(77981);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,W=(0,R.ZP)(P.Z)``,a=(0,R.ZP)(y.x)`
|
|
216
|
+
`,Pt=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=(0,H.$_)(),{formatMessage:f}=(0,Z.Z)(),x=v()(d,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=ze(x[se]),B),{}),[x]),{hasAllActionsSelected:N,hasSomeActionsSelected:I}=Oe($),T=()=>{c(B=>!B)},h=()=>{c(!1)},k=Dn(s,d,i),D=Ln(v()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:I,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},k.map(({checkboxName:B,value:se,action:U,displayName:_,hasConditions:V})=>e.createElement($n.P,{col:3,key:U},e.createElement(In,{disabled:n,hasConditions:V},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:ye=>{u({target:{name:B,value:ye}})},value:se},_))))),e.createElement(ie,{hasConditions:D,onClick:T}))),l&&e.createElement(ce,{headerBreadCrumbs:[t,r],actions:k,isFormDisabled:n,onClosed:h,onToggle:T}))};Pt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{c(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:ue()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:N})=>e.createElement(kn,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...d,N]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var Bn=_e;const At=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},u)=>e.createElement(Bn,{key:c,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===c,isWhite:u%2===1,name:c,onOpenCategory:l,pathToData:[n,d]})))};At.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().arrayOf(a().shape({category:a().string.isRequired,categoryId:a().string.isRequired,childrenForm:a().arrayOf(a().shape({actions:a().array.isRequired})).isRequired}).isRequired).isRequired};var Tt=At,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),fe=o.n(Nn),St=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Mt=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),Ot=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:Ot(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:c})=>c===i);if(l){const c=v()(r,["properties",l.value],[]),d=Ot(l,c);s.properties[i]=d}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var $t=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(S()(d))return i;const p=Object.keys(d).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,T=d[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),h=St(s,x,f),k=Mt(r,v()(h,"conditions",[]));if(S()($)||T)return fe()(u,[f,x],{properties:{enabled:h!==void 0},conditions:k}),u;const D=Wn($,d[f],h);return fe()(u,[f,x],{...D,conditions:k}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=St(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Mt(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Dt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const c=Un(l,n,r);return s[i]=c,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(ge()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(ge()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(c,"category")},p={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(d.plugins,r,n),settings:Dt(d.settings,r,n)};return{initialData:p,modifiedData:p,layouts:d}},Gn=o(99381),et=o.n(Gn);const It=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!A()(s,"conditions"))return{...n,[r]:It(s)};if(Te()(s)&&A()(s,"conditions")&&!je(Q()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=It;const kt=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Te()(l)?{...s,[i]:kt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=kt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,J.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,c=["modifiedData",s];Object.keys(v()(t,c)).forEach(d=>{const p=v()(t,[...c,d,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}fe()(r,[...c,d,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=n;let d=et()(t.modifiedData);const p=s.split(".."),u=v()(d,p,{});Object.keys(u).forEach(f=>{if(A()(u[f],`properties.${i}`)){const x=v()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Te()(x))fe()(d,$,c);else{const N=He(x,c);fe()(d,$,N)}}}),c||(d=tt(d)),fe()(r,"modifiedData",d);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;fe()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);fe()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),fe()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let c=et()(t.modifiedData);const d=v()(c,l,{}),p=He(d,i);fe()(c,l,p),i||(c=tt(c)),fe()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const nt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},wn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=wn(r);return[...n,...s]},[]);const Zt=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Te()(l)?[...r,...Zt(l,`${n}${i}.`)]:(l&&!Te()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Zt(d),i},{action:t,subject:n,conditions:nt(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:nt(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,c]=i;if(!je(c).some(u=>u))return s;if(!c?.properties?.enabled){const u=Qn(l,t,c);return[...s,u]}if(!c.properties.enabled)return s;const p=Jn(l,t,c);return s.push(p),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const n=Bt(t.plugins),r=Bt(t.settings),s=Ft(t.collectionTypes),i=Ft(t.singleTypes);return[...n,...r,...s,...i]},es=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,O.e5)(i.collectionTypes,c.collectionTypes),T=(0,O.e5)(i.singleTypes,c.singleTypes),h={...I,...T};let k;return S()(h)?k=!1:k=Object.values(h).some(D=>Object.values(D).some(B=>A()(B,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:k}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(I,T,h,k)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:T,rowName:h,value:k})},f=(I,T,h)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:T,value:h})},x=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},$=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:T})},[]),N=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(C.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,es.map(I=>e.createElement(R.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(st)},87056:function(K,L,o){"use strict";o.r(L),o.d(L,{default:function(){return Y}});var e=o(32735),C=o(43806),R=o(15062),E=o(53038),O=o(30305),P=o(95162),A=o(64092),y=o(84642),S=o(91779),W=o(56932),a=o(77981),Z=o(70788),m=o(92802),M=o(67879),F=o(64499),g=o(86409),b=o(91720),G=o(1283),w=o(8365),oe=o(10710),ee=o(97037),v=o(2846),pe=o(15367),Q=o(60216),H=o.n(Q);const te=({disabled:re,role:X,values:j,errors:J,onChange:le,onBlur:ge})=>{const{formatMessage:q}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(y.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(w.Z,{fontWeight:"bold"},X?X.name:q({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(w.Z,{textColor:"neutral500",variant:"pi"},X?X.description:q({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},q({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:X.usersCount}))),e.createElement(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(v.o,{disabled:re,name:"name",error:J.name&&q({id:J.name}),label:q({id:"global.name",defaultMessage:"Name"}),onChange:le,onBlur:ge,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(pe.g,{disabled:re,label:q({id:"global.description",defaultMessage:"Description"}),id:"description",error:J.name&&q({id:J.name}),onChange:le,onBlur:ge},j.description||"")))))};te.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},te.propTypes={disabled:H().bool,errors:H().object.isRequired,onBlur:H().func.isRequired,onChange:H().func.isRequired,role:H().object,values:H().object};var Ce=te,be=o(24346),ie=be.Ry().shape({name:be.Z_().required(C.I0.required)}),Se=()=>{const re=(0,C.lm)(),{formatMessage:X}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:J}=(0,C.kY)(),[le,ge]=(0,e.useState)(!1),q=(0,e.useRef)(),{lockApp:ue,unlockApp:ke}=(0,C.o1)(),{trackUsage:Be}=(0,C.rS)(),{formatAPIError:ve}=(0,C.So)(),{isLoading:Ze,data:Le}=(0,b.d)(j,{cacheTime:0}),{roles:[he={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:Ue,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ne=async de=>{try{ue(),ge(!0);const{permissionsToSend:me,didUpdateConditions:Ae}=q.current.getPermissions();await J(`/admin/roles/${j}`,de),he.code!=="strapi-super-admin"&&(await J(`/admin/roles/${j}/permissions`,{permissions:me}),Ae&&Be("didUpdateConditions")),q.current.setFormAfterSubmit(),await Fe(),re({type:"success",message:{id:"notification.success.saved"}})}catch(me){re({type:"warning",message:ve(me)})}finally{ge(!1),ke()}},ce=!Me&&he.code==="strapi-super-admin";return e.createElement(P.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:ne,validationSchema:ie,validateOnChange:!1},({handleSubmit:de,values:me,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:de},e.createElement(A.T,{primaryAction:e.createElement(y.k,{gap:2},e.createElement(S.z,{disabled:he.code==="strapi-super-admin",onClick:de,loading:le,size:"L"},X({id:"global.save",defaultMessage:"Save"}))),title:X({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:X({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(C.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},X({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:ce,errors:Ae,values:me,onChange:ot,onBlur:Ne,role:he}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:ce,permissions:Ue,ref:q,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},Y=()=>{const re=(0,R.v9)(O._),{isLoading:X,allowedActions:{canRead:j,canUpdate:J}}=(0,C.ss)({read:re.settings.roles.read,update:re.settings.roles.update});return X?e.createElement(C.dO,null):!j&&!J?e.createElement(E.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(K,L,o){"use strict";o.d(L,{d:function(){return R}});var e=o(43806),C=o(20108);const R=(E,O={})=>{const{get:P}=(0,e.kY)(),{data:A,error:y,isError:S,isLoading:W}=(0,C.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await P("/admin/permissions",{params:{role:E}});return a},O);return{data:A,error:y,isError:S,isLoading:W}}},84802:function(K){function L(o,e,C,R){for(var E=-1,O=o==null?0:o.length;++E<O;){var P=o[E];e(R,P,C(P),o)}return R}K.exports=L},62435:function(K,L,o){var e=o(56671);function C(R,E,O,P){return e(R,function(A,y,S){E(P,A,O(A),S)}),P}K.exports=C},85580:function(K,L,o){var e=o(84802),C=o(62435),R=o(88904),E=o(77236);function O(P,A){return function(y,S){var W=E(y)?e:C,a=A?A():{};return W(y,P,R(S,2),a)}}K.exports=O},72091:function(K,L,o){var e=o(40314),C=1/0;function R(E){var O=E==null?0:E.length;return O?e(E,C):[]}K.exports=R},81346:function(K,L,o){var e=o(40999),C=o(85580),R=Object.prototype,E=R.hasOwnProperty,O=C(function(P,A,y){E.call(P,y)?P[y].push(A):e(P,y,[A])});K.exports=O},9435:function(K,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return W}});var e=o(74512),C=o(32735),R=o(8471),E=o(85612),O=o(37808),P=o(8365),A=o(84642),y=o(77981);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,W=(0,R.ZP)(P.Z)``,a=(0,R.ZP)(y.x)`
|
|
217
217
|
border: ${S};
|
|
218
218
|
|
|
219
219
|
&:hover:not([aria-disabled='true']) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(43806),o=e(20108);function r(E={},d={}){const{id:n="",...u}=E,{get:g}=(0,a.kY)(),{data:s,isError:c,isLoading:f,refetch:y}=(0,o.useQuery)(["users",n,u],async()=>{const{data:{data:M}}=await g(`/admin/users/${n}`,{params:u});return M},d);return{users:t.useMemo(()=>n&&s?[s]:Array.isArray(s?.results)?s.results:[],[s,n]),pagination:t.useMemo(()=>s?.pagination??null,[s?.pagination]),isLoading:f,isError:c,refetch:y}}},28363:function(B,i,e){e.r(i),e.d(i,{default:function(){return re}});var t=e(32735),a=e(43806),o=e(15062),r=e(53038),E=e(30305),d=e(95162),n=e(64092),u=e(91779),g=e(56932),s=e(77981),c=e(84642),f=e(8365),y=e(10710),D=e(97037),M=e(40501),O=e(70788),I=e(92802),j=e(33795),x=e.n(j),N=e(9086),Y=e.n(N),U=e(88423),S=e.n(U),F=e(60216),H=e.n(F),V=e(67879),G=e(97108),v=e(9592),Q=e(90869),ee=e(47577),te=e(18703),ae=e(32720);const se=async(L,m)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${L}`,m);return T.data};var ne=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12},autoComplete:"new-password"},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12},autoComplete:"new-password"}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];const b=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:L})=>{const{formatMessage:m}=(0,V.Z)(),{params:{id:C}}=(0,r.$B)("/settings/users/:id"),{push:T}=(0,r.k6)(),{setUserDisplayName:Z}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:X,unlockApp:J}=(0,a.o1)(),k=(0,v.c)(ee.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE);(0,a.go)();const{users:[W],isLoading:le}=(0,G.R)({id:C},{cacheTime:0,onError(l){const{status:p}=l.response;p===403?(h({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),T("/")):h({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),ie=async(l,p)=>{X();try{const P=await se(C,Y()(l,"confirmPassword"));h({type:"success",message:m({id:"notification.success.saved",defaultMessage:"Saved"})});const R=a.I8.getUserInfo();if(C.toString()===R.id.toString()){a.I8.setUserInfo(P);const K=x()(l,"username")||(0,Q.Pp)(l.firstname,l.lastname);Z(K)}p.setValues(S()(l,b))}catch(P){const R=(0,Q.Iz)(P.response.data),K=Object.keys(R).reduce(($,A)=>($[A]=R[A].id,$),{});p.setErrors(K),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}J()},q=le||!k,de=q?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},z=Object.keys(S()(W,b)).reduce((l,p)=>p==="roles"?(l[p]=(W?.roles||[]).map(({id:P})=>P),l):(l[p]=W?.[p],l),{}),ce=z.username||(0,Q.Pp)(z.firstname,z.lastname),_=m(de,{name:ce});return q?t.createElement(d.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:!0,startIcon:t.createElement(M.Z,null),type:"button",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,t.createElement(a.dO,null))):t.createElement(d.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:ie,initialValues:z,validateOnChange:!1,validationSchema:ae.YM},({errors:l,values:p,handleChange:P,isSubmitting:R,dirty:K})=>t.createElement(a.l0,null,t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:R||!L?!0:!K,startIcon:t.createElement(M.Z,null),loading:R,type:"submit",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,W?.registrationToken&&t.createElement(s.x,{paddingBottom:6},t.createElement(k,{registrationToken:W.registrationToken})),t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.r,{gap:5},ne.map($=>$.map(A=>t.createElement(D.P,{key:A.name,...A.size},t.createElement(a.jm,{...A,disabled:!L,error:l[A.name],onChange:P,value:p[A.name]||""}))))))),t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.r,{gap:5},t.createElement(D.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!L,error:l.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var oe=w,re=()=>{const L=(0,a.lm)(),m=(0,o.v9)(E._),C=t.useMemo(()=>({read:m.settings.users.read,update:m.settings.users.update}),[m.settings.users]),{isLoading:T,allowedActions:{canRead:Z,canUpdate:h}}=(0,a.ss)(C),{state:X}=(0,r.TH)(),J=X?.from??"/";return(0,t.useEffect)(()=>{T||!Z&&!h&&L({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,Z,h,L]),T?t.createElement(a.dO,null):!Z&&!h?t.createElement(r.l_,{to:J}):t.createElement(oe,{canUpdate:h})}},84024:function(B,i,e){var t=e(32735),a=e(14763),o=e(43806),r=e(94958),E=e(60216),d=e.n(E),n=e(67879);const u=({children:g,target:s})=>{const c=(0,o.lm)(),{formatMessage:f}=(0,n.Z)(),{copy:y}=(0,o.VP)(),D=f({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),M=async()=>{await y(s)&&c({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:D,noBorder:!0,icon:t.createElement(r.Z,null),onClick:M}),title:s,titleEllipsis:!0,subtitle:g,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};u.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired},i.Z=u},47577:function(B,i,e){e.d(i,{A:function(){return n}});var t=e(32735),a=e(60216),o=e.n(a),r=e(67879),E=e(35231),d=e(84024);const n=({registrationToken:u})=>{const{formatMessage:g}=(0,r.Z)(),s=`${window.location.origin}${E.Z}auth/register?registrationToken=${u}`;return t.createElement(d.Z,{target:s},g({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(B,i,e){var t=e(32735),a=e(16773),o=e(40260),r=e(43806),E=e(75760),d=e(60216),n=e.n(d),u=e(67879),g=e(20108),s=e(8471);const c=(0,s.F4)`
|
|
2
2
|
from {
|
|
3
3
|
transform: rotate(0deg);
|
|
4
4
|
}
|
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
}
|
|
8
8
|
`,f=s.ZP.div`
|
|
9
9
|
animation: ${c} 2s infinite linear;
|
|
10
|
-
`,y=()=>t.createElement(f,null,t.createElement(E.Z,null)),D=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},M=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,g.useQuery)(["roles"],D,{staleTime:5e4}),{formatMessage:U}=(0,u.Z)(),S=I?U({id:I,defaultMessage:I}):"",F=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),H=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),V=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),G=N==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:v=>{j({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(Y||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};M.defaultProps={disabled:!1,error:void 0},M.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=M},32720:function(B,i,e){e.d(i,{YM:function(){return g},Rw:function(){return E}});var t=e(24346),a=e(
|
|
10
|
+
`,y=()=>t.createElement(f,null,t.createElement(E.Z,null)),D=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},M=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,g.useQuery)(["roles"],D,{staleTime:5e4}),{formatMessage:U}=(0,u.Z)(),S=I?U({id:I,defaultMessage:I}):"",F=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),H=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),V=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),G=N==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:v=>{j({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(Y||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};M.defaultProps={disabled:!1,error:void 0},M.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=M},32720:function(B,i,e){e.d(i,{YM:function(){return g},Rw:function(){return E}});var t=e(24346),a=e(43806);const o={firstname:t.Z_().trim().required(a.I0.required),lastname:t.Z_(),email:t.Z_().email(a.I0.email).lowercase().required(a.I0.required),username:t.Z_().nullable(),password:t.Z_().min(8,a.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,a.I0.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(s,c)=>s?c.required(a.I0.required):c)};var E={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(s,c,f)=>s||c?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},g=t.Ry().shape({...o,isActive:t.Xg(),...n})},70788:function(B,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const a=r=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:(0,t.jsx)("path",{fill:"#212134",d:"M24 13.3a.2.2 0 0 1-.2.2H5.74l8.239 8.239a.2.2 0 0 1 0 .282L12.14 23.86a.2.2 0 0 1-.282 0L.14 12.14a.2.2 0 0 1 0-.282L11.86.14a.2.2 0 0 1 .282 0L13.98 1.98a.2.2 0 0 1 0 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6Z"})}),o=a}}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86409:function(N,p,t){t.d(p,{F:function(){return u}});var e=t(32735),n=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86409:function(N,p,t){t.d(p,{F:function(){return u}});var e=t(32735),n=t(43806),i=t(67879),c=t(20108);const u=(I={},j={})=>{const{id:v="",...y}=I,{get:o}=(0,n.kY)(),{locale:Z}=(0,i.Z)(),L=(0,n.Xe)(Z,{sensitivity:"base"}),{data:D,error:d,isError:T,isLoading:Q,refetch:V}=(0,c.useQuery)(["roles",v,y],async()=>{const{data:R}=await o(`/admin/roles/${v??""}`,{params:y});return R},j);return{roles:e.useMemo(()=>{let R=[];return v&&D?R=[D.data]:Array.isArray(D?.data)&&(R=D.data),[...R].sort((H,b)=>L.compare(H.name,b.name))},[D,v,L]),error:d,isError:T,isLoading:Q,refetch:V}}},32239:function(N,p,t){t.r(p),t.d(p,{default:function(){return ue}});var e=t(32735),n=t(43806),i=t(15062),c=t(30305),u=t(95162),I=t(64092),j=t(91779),v=t(95181),y=t(56932),o=t(23699),Z=t(22116),L=t(41013),D=t(45037),d=t(27947),T=t(8365),Q=t(99320),V=t(1690),J=t(94958),R=t(63318),H=t(94997),b=t(82064),k=t(67879),q=t(53038),_=t(86409),ee=()=>"todo empty role",te=t(84642),ne=t(77981),le=t(14763),ae=t(60216),M=t.n(ae);const z=({id:a,name:m,description:s,usersCount:O,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:P}=(0,k.Z)(),[,x]=r,g=P({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:O});return e.createElement(D.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:x.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(T.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,A)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:A===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};z.propTypes={id:M().number.isRequired,name:M().string.isRequired,description:M().string.isRequired,usersCount:M().number.isRequired,icons:M().array.isRequired,rowIndex:M().number.isRequired,canUpdate:M().bool},z.defaultProps={canUpdate:!1};var se=z,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(a,m)=>(0,oe.ZP)(a,s=>{switch(m.type){case"ON_REMOVE_ROLES":{s.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{s.shouldRefetchData=!0,s.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{s.shouldRefetchData=!1,s.roleToDelete=null,s.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{s.roleToDelete=m.id;break}default:return s}});const de=({canCreate:a,canDelete:m,canUpdate:s,refetchRoles:O})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[P,x]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:A,roleToDelete:X},U]=(0,e.useReducer)(ie,re),{post:G}=(0,n.tg)(),Y=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await G("/admin/roles/batch-delete",{ids:[X]}),await O(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}B()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),F=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),B()},[]),B=()=>x(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),S=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),C.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):F(C.id)},[E,F]),w=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),K(C.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:C=>w(C,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(J.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(R.Z,null)}]:[],...m?[{onClick:C=>S(C,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(H.Z,null)}]:[]],[r,S,w,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:P,showModalConfirmButtonLoading:A,handleToggleModal:B,handleDeleteData:Y}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:O,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:P}}=(0,n.ss)(m.settings.roles),{roles:x,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!O&&E}),{handleNewRoleClick:A,getIcons:X,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:G,handleToggleModal:Y,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:P}),$=x.length+1,F=6;if(O)return e.createElement(u.o,null,e.createElement(n.dO,null));const B=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(I.T,{primaryAction:r?e.createElement(j.z,{onClick:A,startIcon:e.createElement(b.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:B,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(v.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:B})})}),E&&e.createElement(y.D,null,e.createElement(o.i,{colCount:F,rowCount:$,footer:r?e.createElement(Z.c,{onClick:A,icon:e.createElement(b.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(L.h,null,e.createElement(D.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.users",defaultMessage:"Users"}))),e.createElement(d.Th,null,e.createElement(Q.T,null,a({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.p,null,x?.map((f,S)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:X(f),rowIndex:S+2,canUpdate:P})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:G,onToggleDialog:Y}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},95181:function(N,p,t){t.d(p,{Z:function(){return i}});var e=t(74512),n=t(84642);const i=({startActions:c,endActions:u})=>!c&&!u?null:(0,e.jsxs)(n.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,e.jsx)(n.k,{gap:2,wrap:"wrap",children:c}),(0,e.jsx)(n.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},22116:function(N,p,t){t.d(p,{c:function(){return y}});var e=t(74512),n=t(8471),i=t(77981),c=t(2775),u=t(84642),I=t(8365);const j=(0,n.ZP)(i.x)`
|
|
2
2
|
height: ${24/16}rem;
|
|
3
3
|
width: ${24/16}rem;
|
|
4
4
|
border-radius: 50%;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{97108:function(B,m,e){e.d(m,{R:function(){return o}});var t=e(32735),l=e(
|
|
2
|
-
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:i},{formatMessage:g}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},g({id:i?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:i?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],pe=()=>{const{post:i}=(0,a.kY)(),{formatAPIError:g}=(0,a.So)(),[L,k]=(0,t.useState)(!1),V=(0,C.v9)(y._),{allowedActions:{canCreate:j,canDelete:x,canRead:R}}=(0,a.ss)(V.settings.users),h=(0,n.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,E.Z)(),{search:c}=(0,O.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:K,refetch:N}=(0,I.R)(M().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,v.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(p=>({...p,metadatas:{...p.metadatas,label:D(p.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(p=>!p)},Q=(0,n.useMutation)(async p=>{await i("/admin/users/batch-delete",{ids:p})},{async onSuccess(){await N(),await h.refetchQueries(ge)},onError(p){H({type:"warning",message:{id:"notification.error",message:g(p),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(r.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:D({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),R&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:D({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(W.Z,{displayedFilters:xe}))}),t.createElement(u.D,{canRead:R},!R&&t.createElement(a.ZF,null),Y&&t.createElement("div",null,"TODO: An error occurred"),R&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:K,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:p=>Q.mutateAsync([p]),headers:ee,rows:z,withBulkActions:!0,withMainAction:x},t.createElement(ve,{canDelete:x,headers:ee,rows:z,withBulkActions:!0,withMainAction:x})),U&&t.createElement(We,{pagination:U}))),L&&t.createElement(Be,{onSuccess:async()=>{await N(),await h.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,v.c)(pe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return i?t.createElement(i,null):null}},25691:function(B,m,e){e.r(m);var t=e(32735),l=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{97108:function(B,m,e){e.d(m,{R:function(){return o}});var t=e(32735),l=e(43806),r=e(20108);function o(u={},a={}){const{id:s="",...M}=u,{get:E}=(0,l.kY)(),{data:n,isError:C,isLoading:O,refetch:I}=(0,r.useQuery)(["users",s,M],async()=>{const{data:{data:y}}=await E(`/admin/users/${s}`,{params:M});return y},a);return{users:t.useMemo(()=>s&&n?[n]:Array.isArray(n?.results)?n.results:[],[n,s]),pagination:t.useMemo(()=>n?.pagination??null,[n?.pagination]),isLoading:O,isError:C,refetch:I}}},59092:function(B,m,e){var t=e(32735),l=e(77981),r=e(91779),o=e(43806),u=e(68527),a=e(60216),s=e.n(a),M=e(67879);const E=({displayedFilters:n})=>{const[C,O]=(0,t.useState)(!1),{formatMessage:I}=(0,M.Z)(),v=(0,t.useRef)(),y=()=>{O(W=>!W)};return t.createElement(t.Fragment,null,t.createElement(l.x,{paddingTop:1,paddingBottom:1},t.createElement(r.z,{variant:"tertiary",ref:v,startIcon:t.createElement(u.Z,null),onClick:y,size:"S"},I({id:"app.utils.filters",defaultMessage:"Filters"})),C&&t.createElement(o.J5,{displayedFilters:n,isVisible:C,onToggle:y,source:v})),t.createElement(o.W$,{filtersSchema:n}))};E.propTypes={displayedFilters:s().arrayOf(s().shape({name:s().string.isRequired,metadatas:s().shape({label:s().string}),fieldSchema:s().shape({type:s().string})})).isRequired},m.Z=E},99528:function(B,m,e){e.d(m,{W:function(){return pe},Z:function(){return Ze}});var t=e(32735),l=e(95162),r=e(64092),o=e(95181),u=e(56932),a=e(43806),s=e(33348),M=e.n(s),E=e(67879),n=e(20108),C=e(15062),O=e(53038),I=e(97108),v=e(9592),y=e(30305),W=e(59092),A=e(91779),ae=e(50720),se=e(60216),d=e.n(se);const q=({onClick:i})=>{const{formatMessage:g}=(0,E.Z)();return t.createElement(A.z,{onClick:i,startIcon:t.createElement(ae.Z,null),size:"S"},g({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};q.propTypes={onClick:d().func.isRequired};var Z=e(1690),ne=e(45037),J=e(27947),le=e(96669),b=e(8365),F=e(84642),P=e(14763),$=e(77981),fe=e(63318),Me=e(94997),re=e(90869);const oe=({canDelete:i,headers:g,entriesToDelete:L,onClickDelete:k,onSelectRow:V,withMainAction:j,withBulkActions:x,rows:R})=>{const{push:h,location:{pathname:H}}=(0,O.k6)(),{formatMessage:D}=(0,E.Z)();return t.createElement(Z.p,null,R.map(c=>{const z=L.findIndex(U=>U===c.id)!==-1;return t.createElement(ne.Tr,{key:c.id,...(0,a.X7)({fn:()=>h(`${H}/${c.id}`),condition:x})},j&&t.createElement(J.Td,{...a.UW},t.createElement(le.C,{"aria-label":D({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),checked:z,onChange:()=>{V({name:c.id,value:!z})}})),g.map(({key:U,cellFormatter:Y,name:K,...N})=>t.createElement(J.Td,{key:U},typeof Y=="function"?Y(c,{key:U,name:K,formatMessage:D,...N}):t.createElement(b.Z,{textColor:"neutral800"},c[K]||"-"))),x&&t.createElement(J.Td,null,t.createElement(F.k,{justifyContent:"end"},t.createElement(P.h,{onClick:()=>h(`${H}/${c.id}`),label:D({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(fe.Z,null)}),i&&t.createElement($.x,{paddingLeft:1,...a.UW},t.createElement(P.h,{onClick:()=>k(c.id),label:D({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(Me.Z,null)})))))}))};oe.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},oe.propTypes={canDelete:d().bool,entriesToDelete:d().array,headers:d().array.isRequired,onClickDelete:d().func,onSelectRow:d().func,rows:d().array,withBulkActions:d().bool,withMainAction:d().bool};var ve=oe,ye=e(21223),he=e(98887),Pe=e(87674),de=e(10710),ie=e(97037),De=e(74973),Ce=e(79129),Oe=e(2748),Ae=e(92802),Le=e(47577),Te=e(18703),X=e(24346);const ue={firstname:"",lastname:"",email:"",roles:[]},Ie=[],Re=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0}]],Ue=X.Ry().shape({firstname:X.Z_().trim().required(a.I0.required),lastname:X.Z_(),email:X.Z_().email(a.I0.email).required(a.I0.required),roles:X.IX().min(1,a.I0.required).required(a.I0.required)}),Se={create:{buttonSubmitLabel:{id:"app.containers.Users.ModalForm.footer.button-success",defaultMessage:"Invite user"},isDisabled:!1,next:"magic-link"},"magic-link":{buttonSubmitLabel:{id:"global.finish",defaultMessage:"Finish"},isDisabled:!0,next:null}},Ee=({onSuccess:i,onToggle:g})=>{const[L,k]=(0,t.useState)("create"),[V,j]=(0,t.useState)(!1),[x,R]=(0,t.useState)(null),{formatMessage:h}=(0,E.Z)(),H=(0,a.lm)(),{lockApp:D,unlockApp:c}=(0,a.o1)(),{post:z}=(0,a.kY)(),U=(0,v.c)(Ie,async()=>(await e.e(311).then(e.bind(e,40311))).ROLE_LAYOUT,{combine(f,S){return[...f,S]},defaultValue:[]}),Y=(0,v.c)(ue,async()=>(await e.e(311).then(e.bind(e,40311))).FORM_INITIAL_VALUES,{combine(f,S){return{...f,...S}},defaultValue:ue}),K=(0,v.c)(Le.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE),N=(0,n.useMutation)(f=>z("/admin/users",f),{async onSuccess({data:f}){R(f.data.registrationToken),await i(),te(),j(!1)},onError(f){throw j(!1),H({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),f},onSettled(){c()}}),w=h({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),ee=async(f,{setErrors:S})=>{D(),j(!0);try{await N.mutateAsync(f)}catch(G){c(),G?.response?.data?.error.message==="Email already taken"&&S({email:G.response.data.error.message})}},te=()=>{p?k(p):g()},{buttonSubmitLabel:_,isDisabled:Q,next:p}=Se[L],be=L==="create"?t.createElement(A.z,{type:"submit",loading:V},h(_)):t.createElement(A.z,{type:"button",loading:V,onClick:g},h(_));return K?t.createElement(ye.P,{onClose:g,labelledBy:"title"},t.createElement(he.x,null,t.createElement(Ce.O,{label:w},t.createElement(Oe.$,{isCurrent:!0},w))),t.createElement(Ae.J9,{enableReinitialize:!0,initialValues:Y,onSubmit:ee,validationSchema:Ue,validateOnChange:!1},({errors:f,handleChange:S,values:G})=>t.createElement(a.l0,null,t.createElement(Pe.f,null,t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},L!=="create"&&t.createElement(K,{registrationToken:x}),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},h({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),t.createElement($.x,{paddingTop:4},t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:1},t.createElement(de.r,{gap:5},Re.map(me=>me.map(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,error:f[T.name],onChange:S,value:G[T.name]})))))))),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},h({id:"global.roles",defaultMessage:"User's role"})),t.createElement($.x,{paddingTop:4},t.createElement(de.r,{gap:5},t.createElement(ie.P,{col:6,xs:12},t.createElement(Te.Z,{disabled:Q,error:f.roles,onChange:S,value:G.roles})),U.map(me=>me.map(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,onChange:S,value:G[T.name]}))))))))),t.createElement(De.m,{startActions:t.createElement(A.z,{variant:"tertiary",onClick:g,type:"button"},h({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:be})))):null};Ee.propTypes={onToggle:d().func.isRequired,onSuccess:d().func.isRequired};var Be=Ee;const ce=({pagination:i})=>t.createElement($.x,{paddingTop:4},t.createElement(F.k,{alignItems:"flex-end",justifyContent:"space-between"},t.createElement(a.v4,null),t.createElement(a.tU,{pagination:i})));ce.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},ce.propTypes={pagination:d().shape({page:d().number,pageCount:d().number,pageSize:d().number,total:d().number})};var We=ce,xe=[{name:"firstname",metadatas:{label:"Firstname"},fieldSchema:{type:"string"}},{name:"lastname",metadatas:{label:"Lastname"},fieldSchema:{type:"string"}},{name:"email",metadatas:{label:"Email"},fieldSchema:{type:"email"}},{name:"username",metadatas:{label:"Username"},fieldSchema:{type:"string"}},{name:"isActive",metadatas:{label:"Active user"},fieldSchema:{type:"boolean"}}],Ke=[{name:"firstname",key:"firstname",metadatas:{label:{id:"Settings.permissions.users.firstname",defaultMessage:"Firstname"},sortable:!0}},{name:"lastname",key:"lastname",metadatas:{label:{id:"Settings.permissions.users.lastname",defaultMessage:"Lastname"},sortable:!0}},{key:"email",name:"email",metadatas:{label:{id:"Settings.permissions.users.email",defaultMessage:"Email"},sortable:!0}},{key:"roles",name:"roles",metadatas:{label:{id:"Settings.permissions.users.roles",defaultMessage:"Roles"},sortable:!1},cellFormatter({roles:i},{formatMessage:g}){return t.createElement(b.Z,{textColor:"neutral800"},i.map(L=>g({id:`Settings.permissions.users.${L.code}`,defaultMessage:L.name})).join(`,
|
|
2
|
+
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:i},{formatMessage:g}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},g({id:i?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:i?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],pe=()=>{const{post:i}=(0,a.kY)(),{formatAPIError:g}=(0,a.So)(),[L,k]=(0,t.useState)(!1),V=(0,C.v9)(y._),{allowedActions:{canCreate:j,canDelete:x,canRead:R}}=(0,a.ss)(V.settings.users),h=(0,n.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,E.Z)(),{search:c}=(0,O.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:K,refetch:N}=(0,I.R)(M().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,v.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(p=>({...p,metadatas:{...p.metadatas,label:D(p.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(p=>!p)},Q=(0,n.useMutation)(async p=>{await i("/admin/users/batch-delete",{ids:p})},{async onSuccess(){await N(),await h.refetchQueries(ge)},onError(p){H({type:"warning",message:{id:"notification.error",message:g(p),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(r.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:D({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),R&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:D({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(W.Z,{displayedFilters:xe}))}),t.createElement(u.D,{canRead:R},!R&&t.createElement(a.ZF,null),Y&&t.createElement("div",null,"TODO: An error occurred"),R&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:K,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:p=>Q.mutateAsync([p]),headers:ee,rows:z,withBulkActions:!0,withMainAction:x},t.createElement(ve,{canDelete:x,headers:ee,rows:z,withBulkActions:!0,withMainAction:x})),U&&t.createElement(We,{pagination:U}))),L&&t.createElement(Be,{onSuccess:async()=>{await N(),await h.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,v.c)(pe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return i?t.createElement(i,null):null}},25691:function(B,m,e){e.r(m);var t=e(32735),l=e(43806),r=e(15062),o=e(30305),u=e(99528);const a=()=>{const s=(0,r.v9)(o._);return t.createElement(l.O4,{permissions:s.settings.users.main},t.createElement(u.Z,null))};m.default=a},84024:function(B,m,e){var t=e(32735),l=e(14763),r=e(43806),o=e(94958),u=e(60216),a=e.n(u),s=e(67879);const M=({children:E,target:n})=>{const C=(0,r.lm)(),{formatMessage:O}=(0,s.Z)(),{copy:I}=(0,r.VP)(),v=O({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),y=async()=>{await I(n)&&C({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(r.Y_,{endAction:t.createElement(l.h,{label:v,noBorder:!0,icon:t.createElement(o.Z,null),onClick:y}),title:n,titleEllipsis:!0,subtitle:E,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};M.propTypes={children:a().oneOfType([a().element,a().string]).isRequired,target:a().string.isRequired},m.Z=M},47577:function(B,m,e){e.d(m,{A:function(){return s}});var t=e(32735),l=e(60216),r=e.n(l),o=e(67879),u=e(35231),a=e(84024);const s=({registrationToken:M})=>{const{formatMessage:E}=(0,o.Z)(),n=`${window.location.origin}${u.Z}auth/register?registrationToken=${M}`;return t.createElement(a.Z,{target:n},E({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};s.defaultProps={registrationToken:""},s.propTypes={registrationToken:r().string}},18703:function(B,m,e){var t=e(32735),l=e(16773),r=e(40260),o=e(43806),u=e(75760),a=e(60216),s=e.n(a),M=e(67879),E=e(20108),n=e(8471);const C=(0,n.F4)`
|
|
3
3
|
from {
|
|
4
4
|
transform: rotate(0deg);
|
|
5
5
|
}
|
package/build/{api-tokens-create-page.f5a85725.chunk.js → api-tokens-create-page.2f25ddf6.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return s.createElement(_.O4,{permissions:r.settings["api-tokens"].create},s.createElement(a.Z,null))};e.default=i}}]);
|
package/build/{api-tokens-edit-page.06a32cef.chunk.js → api-tokens-edit-page.45faac16.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return _.createElement(e.O4,{permissions:r.settings["api-tokens"].read},_.createElement(a.Z,null))};s.default=i}}]);
|