@strapi/admin 4.12.7 → 4.13.0-alpha.0
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/NpsSurvey/hooks/useNpsSurveySettings.js +17 -0
- package/admin/src/components/NpsSurvey/index.js +365 -0
- package/admin/src/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/getTableColumns.js +2 -0
- package/admin/src/content-manager/components/DynamicZone/components/DynamicZoneLabel.js +1 -1
- package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +8 -1
- package/admin/src/content-manager/components/Filter/CustomInputs/AdminUsersFilter.js +42 -0
- package/admin/src/content-manager/components/Filter/Filter.js +54 -0
- package/admin/src/content-manager/components/Filter/index.js +1 -0
- package/admin/src/content-manager/components/InputUID/index.js +222 -216
- package/admin/src/content-manager/components/RelationInput/RelationInput.js +4 -0
- package/admin/src/content-manager/components/RepeatableComponent/index.js +32 -2
- package/admin/src/content-manager/components/Wysiwyg/Editor.js +432 -68
- package/admin/src/content-manager/components/Wysiwyg/WysiwygStyles.js +0 -7
- package/admin/src/content-manager/components/Wysiwyg/index.js +147 -152
- package/admin/src/content-manager/hooks/useAllowedAttributes.js +47 -0
- package/admin/src/content-manager/pages/EditView/Information/index.js +9 -8
- package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +40 -7
- package/admin/src/content-manager/pages/ListSettingsView/index.js +6 -2
- package/admin/src/content-manager/pages/ListView/components/FieldPicker/index.js +67 -69
- package/admin/src/content-manager/pages/ListView/components/ViewSettingsMenu/index.js +80 -0
- package/admin/src/content-manager/pages/ListView/index.js +236 -67
- package/admin/src/content-manager/utils/getDisplayName.js +33 -0
- package/admin/src/content-manager/utils/index.js +1 -0
- package/admin/src/pages/Admin/index.js +3 -1
- package/admin/src/pages/AuthPage/components/Register/index.js +5 -0
- package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +3 -3
- package/admin/src/pages/SettingsPage/index.js +16 -26
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +69 -35
- package/admin/src/plugins.js +7 -8
- package/admin/src/translations/en.json +10 -1
- package/build/{1049.f76cb14b.chunk.js → 1049.ec69f5e0.chunk.js} +1 -1
- package/build/1227.9f37e1dc.chunk.js +1 -0
- package/build/{1386.879bcd90.chunk.js → 1386.ea73b677.chunk.js} +1 -1
- package/build/1504.eff012f7.chunk.js +95 -0
- package/build/{2225.c6244756.chunk.js → 2225.649fb7bc.chunk.js} +11 -11
- package/build/2237.b832ae6e.chunk.js +114 -0
- package/build/2379.1f98a31a.chunk.js +1 -0
- package/build/2395.0e5e8ded.chunk.js +26 -0
- package/build/2801.8e1aa82a.chunk.js +1 -0
- package/build/{3483.03c24f96.chunk.js → 3483.19381b40.chunk.js} +1 -1
- package/build/4174.f1f39e40.chunk.js +1 -0
- package/build/4546.a5946d22.chunk.js +1 -0
- package/build/4724.aea5c8c1.chunk.js +6 -0
- package/build/502.7bba43b1.chunk.js +1 -0
- package/build/6158.c3c13c20.chunk.js +1 -0
- package/build/7464.eb057bec.chunk.js +1 -0
- package/build/78.dcc6df5c.chunk.js +1 -0
- package/build/8276.be3ed581.chunk.js +26 -0
- package/build/{Admin-authenticatedApp.31497f74.chunk.js → Admin-authenticatedApp.43b6ec9a.chunk.js} +2 -2
- package/build/{Admin_InternalErrorPage.f45f2462.chunk.js → Admin_InternalErrorPage.38155af3.chunk.js} +1 -1
- package/build/{Admin_homePage.ac9dfb86.chunk.js → Admin_homePage.6f128523.chunk.js} +1 -1
- package/build/{Admin_marketplace.c94239f6.chunk.js → Admin_marketplace.061a6e5a.chunk.js} +1 -1
- package/build/{Admin_pluginsPage.bbe79434.chunk.js → Admin_pluginsPage.16f837b8.chunk.js} +1 -1
- package/build/{Admin_profilePage.192edc52.chunk.js → Admin_profilePage.678bce24.chunk.js} +2 -2
- package/build/Admin_settingsPage.af7309e4.chunk.js +111 -0
- package/build/{Upload_ConfigureTheView.345ac1e0.chunk.js → Upload_ConfigureTheView.3fc1c100.chunk.js} +1 -1
- package/build/admin-app.d63bd229.chunk.js +36 -0
- package/build/{admin-edit-roles-page.6d567273.chunk.js → admin-edit-roles-page.38a6c863.chunk.js} +3 -3
- package/build/{admin-edit-users.acfd4128.chunk.js → admin-edit-users.545fc882.chunk.js} +2 -2
- package/build/{admin-roles-list.23ddff26.chunk.js → admin-roles-list.1e2e814d.chunk.js} +1 -1
- package/build/{admin-users.00e20017.chunk.js → admin-users.b8ea5677.chunk.js} +2 -2
- package/build/{api-tokens-create-page.46c2ea84.chunk.js → api-tokens-create-page.e0c15627.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.58139df9.chunk.js → api-tokens-edit-page.9f2dce47.chunk.js} +1 -1
- package/build/{api-tokens-list-page.0af7d431.chunk.js → api-tokens-list-page.d747051c.chunk.js} +2 -2
- package/build/{audit-logs-settings-page.0f73ccf8.chunk.js → audit-logs-settings-page.96f9d608.chunk.js} +1 -1
- package/build/content-manager.ccff1078.chunk.js +1097 -0
- package/build/{content-type-builder-list-view.bf9be456.chunk.js → content-type-builder-list-view.b71cf240.chunk.js} +1 -1
- package/build/{content-type-builder.cd999f6e.chunk.js → content-type-builder.e5669749.chunk.js} +2 -2
- package/build/email-settings-page.2809f0bf.chunk.js +11 -0
- package/build/en-json.e12fd5fc.chunk.js +1 -0
- package/build/{i18n-settings-page.47f78016.chunk.js → i18n-settings-page.5f716172.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.c6c9e04c.js +2859 -0
- package/build/review-workflows-settings-create-view.4a156a19.chunk.js +1 -0
- package/build/review-workflows-settings-edit-view.ce984d1f.chunk.js +1 -0
- package/build/review-workflows-settings-list-view.419b8deb.chunk.js +56 -0
- package/build/{runtime~main.d515c521.js → runtime~main.dcf1cb45.js} +2 -2
- package/build/{sso-settings-page.12b6d8ae.chunk.js → sso-settings-page.45153df5.chunk.js} +1 -1
- package/build/{transfer-tokens-create-page.1597e6ab.chunk.js → transfer-tokens-create-page.ebba16d8.chunk.js} +1 -1
- package/build/{transfer-tokens-edit-page.8741529f.chunk.js → transfer-tokens-edit-page.d7bb2b3e.chunk.js} +1 -1
- package/build/{transfer-tokens-list-page.d6986b03.chunk.js → transfer-tokens-list-page.cfe1736c.chunk.js} +2 -2
- package/build/{upload-settings.7f93d4c0.chunk.js → upload-settings.cc5ad813.chunk.js} +1 -1
- package/build/{upload.37488080.chunk.js → upload.756efc28.chunk.js} +1 -1
- package/build/users-advanced-settings-page.818d84eb.chunk.js +9 -0
- package/build/users-email-settings-page.c1967c09.chunk.js +9 -0
- package/build/users-providers-settings-page.11893e08.chunk.js +14 -0
- package/build/users-roles-settings-page.2b051e6a.chunk.js +55 -0
- package/build/{webhook-edit-page.6cb479ff.chunk.js → webhook-edit-page.de45c635.chunk.js} +2 -2
- package/build/{webhook-list-page.65e1b5bb.chunk.js → webhook-list-page.ca91df8b.chunk.js} +1 -1
- package/ee/admin/content-manager/components/Filter/CustomInputs/ReviewWorkflows/AssigneeFilter.js +42 -0
- package/ee/admin/content-manager/components/Filter/CustomInputs/ReviewWorkflows/StageFilter.js +70 -0
- package/ee/admin/content-manager/components/Filter/CustomInputs/ReviewWorkflows/constants.js +71 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +9 -217
- package/ee/admin/content-manager/pages/EditView/InformationBox/components/AssigneeSelect/AssigneeSelect.js +147 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/components/AssigneeSelect/index.js +1 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/components/StageSelect/StageSelect.js +243 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/components/StageSelect/index.js +1 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/constants.js +2 -0
- package/ee/admin/content-manager/pages/ListSettingsView/constants.js +7 -0
- package/ee/admin/content-manager/pages/ListView/ReviewWorkflowsColumn/ReviewWorkflowsAssigneeEE.js +21 -0
- package/ee/admin/content-manager/pages/ListView/ReviewWorkflowsColumn/constants.js +44 -17
- package/ee/admin/content-manager/pages/ListView/ReviewWorkflowsColumn/index.js +1 -0
- package/ee/admin/hooks/useAuthProviders.js +25 -0
- package/ee/admin/hooks/{useLicenseLimitNotification/index.js → useLicenseLimitNotification.js} +2 -4
- package/ee/admin/hooks/{useLicenseLimits/useLicenseLimits.js → useLicenseLimits.js} +4 -1
- package/ee/admin/pages/AuthPage/components/Login/index.js +8 -4
- package/ee/admin/pages/AuthPage/components/Providers/index.js +8 -5
- package/ee/admin/pages/HomePage/index.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/CreateView/CreateView.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/EditView/EditView.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/ListView/ListView.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/Users/ListPage/index.js +1 -1
- package/ee/server/constants/workflows.js +1 -0
- package/ee/server/controllers/index.js +1 -0
- package/ee/server/controllers/workflows/assignees/index.js +44 -0
- package/ee/server/routes/review-workflows.js +17 -0
- package/ee/server/services/index.js +1 -0
- package/ee/server/services/review-workflows/assignees.js +54 -0
- package/ee/server/services/review-workflows/metrics/index.js +5 -0
- package/ee/server/services/review-workflows/review-workflows.js +20 -11
- package/ee/server/validation/review-workflows.js +8 -0
- package/index.js +2 -6
- package/package.json +9 -9
- package/scripts/build.js +15 -15
- package/scripts/create-dev-plugins-file.js +5 -38
- package/server/controllers/role.js +2 -0
- package/server/controllers/user.js +2 -0
- package/server/services/permission/permissions-manager/index.js +3 -1
- package/server/services/permission/permissions-manager/sanitize.js +19 -7
- package/server/services/permission/permissions-manager/validate.js +218 -0
- package/utils/create-cache-dir.js +62 -16
- package/utils/create-plugins-exclude-path.js +3 -23
- package/utils/get-plugins.js +110 -0
- package/utils/index.js +1 -1
- package/webpack.config.js +10 -13
- package/admin/src/content-manager/components/AttributeFilter/Filters.js +0 -58
- package/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js +0 -42
- package/admin/src/content-manager/components/AttributeFilter/index.js +0 -40
- package/admin/src/content-manager/components/Wysiwyg/EditorStylesContainer.js +0 -344
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +0 -23
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/prefixAllUrls.js +0 -17
- package/admin/src/pages/SettingsPage/utils/createSectionsRoutes.js +0 -11
- package/admin/src/pages/SettingsPage/utils/getSectionsToDisplay.js +0 -5
- package/admin/src/pages/SettingsPage/utils/index.js +0 -2
- package/build/2379.f1641312.chunk.js +0 -1
- package/build/2395.46f8d0c1.chunk.js +0 -26
- package/build/2801.5cef5ec8.chunk.js +0 -1
- package/build/3929.5632f24d.chunk.js +0 -114
- package/build/3984.dda474f7.chunk.js +0 -1
- package/build/4546.7a3c0d03.chunk.js +0 -1
- package/build/502.8ae8ef60.chunk.js +0 -1
- package/build/5483.6dd2e776.chunk.js +0 -6
- package/build/5542.2415a393.chunk.js +0 -63
- package/build/6158.c974fd83.chunk.js +0 -1
- package/build/7464.3e64a1d5.chunk.js +0 -1
- package/build/8276.10a3f883.chunk.js +0 -26
- package/build/Admin_settingsPage.97cb9d41.chunk.js +0 -111
- package/build/admin-app.91898385.chunk.js +0 -36
- package/build/content-manager.b40f79c0.chunk.js +0 -1099
- package/build/email-settings-page.d494d1eb.chunk.js +0 -11
- package/build/en-json.08c05fcf.chunk.js +0 -1
- package/build/main.9dbe4579.js +0 -2859
- package/build/review-workflows-settings-create-view.cb08cfa2.chunk.js +0 -1
- package/build/review-workflows-settings-edit-view.3c7cbe63.chunk.js +0 -1
- package/build/review-workflows-settings-list-view.1611dc1f.chunk.js +0 -56
- package/build/users-advanced-settings-page.f0760eb8.chunk.js +0 -9
- package/build/users-email-settings-page.ff4b32f3.chunk.js +0 -9
- package/build/users-providers-settings-page.48de0306.chunk.js +0 -14
- package/build/users-roles-settings-page.9d9a1eff.chunk.js +0 -30
- package/ee/admin/hooks/index.js +0 -4
- package/ee/admin/hooks/useAuthProviders/index.js +0 -50
- package/ee/admin/hooks/useAuthProviders/reducer.js +0 -26
- package/ee/admin/hooks/useLicenseLimits/index.js +0 -1
- package/scripts/create-plugins-file.js +0 -92
- package/utils/get-plugins-path.js +0 -41
- /package/ee/admin/hooks/{useLicenseLimits/__mocks__/index.js → __mocks__/useLicenseLimits.js} +0 -0
- /package/server/services/permission/permissions-manager/{query-builers.js → query-builders.js} +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{834:function(w,h,t){"use strict";t.r(h),t.d(h,{default:function(){return bs}});var e=t(32735),g=t(12301),E=t(65810),y=t(56784),u=t.n(y),p=t(93839),N=t.n(p),Z=t(86349),C=t.n(Z),W=t(88423),j=t.n(W),X=t(74758),T=t(14911),M=t(47750),Pe="strapi-admin-language",i=t(45509),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),A=(0,e.useCallback)(({menuLogo:k,authLogo:S})=>m({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:k||n,authLogo:S||s}}),[s,n]),L=(0,e.useMemo)(()=>({logos:{menu:{custom:d,default:n},auth:{custom:c,default:s}},updateProjectSettings:A,showReleaseNotification:r,showTutorials:l}),[d,n,c,s,A,r,l]);return e.createElement(Ne._5.Provider,{value:L},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),Re=t.n(Ce),Ie=t(3040),Oe=t.n(Ie);const Xe="GUIDED_TOUR_CURRENT_STEP",Fe="GUIDED_TOUR_COMPLETED_STEPS",et="GUIDED_TOUR_SKIPPED",ke=JSON.parse,qe=JSON.stringify;var ye={clear(){localStorage.removeItem(Xe),localStorage.removeItem(Fe)},addCompletedStep(o){const s=ke(localStorage.getItem(Fe))?.slice()||[];s.includes(o)||(s.push(o),localStorage.setItem(Fe,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(Fe),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 J=Re()(n,S),Q=ft(S,n);if(J||l||!Q)return null}return ye.addCurrentStep(S),d({type:"SET_CURRENT_STEP",step:S})},m=S=>{d({type:"SET_GUIDED_TOUR_VISIBILITY",value:S})},A=(S,J)=>{ye.addCompletedStep(S),d({type:"SET_STEP_STATE",currentStep:S,value:J})},L=S=>{const J=n[S];if(J){const Q=pt(S,n),B=Object.keys(J)[0],ie=J[B];if(Q&&!s&&!ie)return c(`${S}.${B}`)}return null},k=S=>{ye.setSkipped(S),d({type:"SET_SKIPPED",value:S})};return e.createElement(i.Zc,{guidedTourState:n,currentStep:s,setCurrentStep:c,setGuidedTourVisibility:m,setSkipped:k,setStepState:A,startSection:L,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,f=o=>{const s=window.localStorage.getItem(Pe);return{locale:o[s]?s:"en",localeNames:o}};const v={localeNames:{en:"English"},locale:"en"};var le=(o=v,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:n}=s;return o.localeNames[n]?{...o,locale:n}:o}default:return o}};const K=({children:o,localeNames:s,messages:n})=>{const[{locale:r},l]=(0,e.useReducer)(le,v,()=>f(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))};K.propTypes={children:a().element.isRequired,localeNames:a().objectOf(a().string).isRequired,messages:a().object.isRequired};var se=K,re=t(24854),H=t(67879),ue=t(79652),D=t(8471),Ae=(0,D.vJ)`
|
|
2
|
+
body {
|
|
3
|
+
background: ${({theme:o})=>o.colors.neutral100};
|
|
4
|
+
}
|
|
5
|
+
`;const Ke=({children:o})=>{const{currentTheme:s,themes:n}=(0,ue.M1)(),{locale:r}=(0,H.Z)();return e.createElement(re.h,{locale:r,theme:n[s]||n.light},o,e.createElement(Ae,null))};Ke.propTypes={children:a().element.isRequired};var ze=Ke;const Le="STRAPI_THEME",at=()=>{const o=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",s=localStorage.getItem(Le);return s||localStorage.setItem(Le,o),s||o},we=({children:o,themes:s})=>{const[n,r]=(0,e.useState)(at()),l=(0,e.useCallback)(c=>{r(c),localStorage.setItem(Le,c)},[r]),d=(0,e.useMemo)(()=>({currentTheme:n,onChangeTheme:l,themes:s}),[n,l,s]);return e.createElement(Ne.Rj.Provider,{value:d},o)};we.propTypes={children:a().node.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var je=we;const Ge=new Se.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),ce=({authLogo:o,children:s,components:n,customFields:r,fields:l,getAdminInjectedComponents:d,getPlugin:c,localeNames:m,menu:A,menuLogo:L,messages:k,plugins:S,runHookParallel:J,runHookSeries:Q,runHookWaterfall:B,settings:ie,showReleaseNotification:R,showTutorials:Ze,store:Be,themes:z})=>e.createElement(se,{messages:k,localeNames:m},e.createElement(je,{themes:z},e.createElement(ze,null,e.createElement(Se.QueryClientProvider,{client:Ge},e.createElement(Te.zt,{store:Be},e.createElement(Ne.ux.Provider,{value:{getAdminInjectedComponents:d}},e.createElement(He,{authLogo:o,menuLogo:L,showReleaseNotification:R,showTutorials:Ze},e.createElement(i._Y,{getPlugin:c,menu:A,plugins:S,runHookParallel:J,runHookWaterfall:B,runHookSeries:Q,settings:ie},e.createElement(i.rt,{components:n,fields:l},e.createElement(i.MG,{customFields:r},e.createElement(i.m$,null,e.createElement(i.w7,null,e.createElement(ht,null,e.createElement(i.N$,null,s))))))))))))));ce.propTypes={authLogo:a().oneOfType([a().string,a().any]).isRequired,children:a().element.isRequired,components:a().object.isRequired,customFields:a().object.isRequired,fields:a().object.isRequired,getAdminInjectedComponents:a().func.isRequired,getPlugin:a().func.isRequired,localeNames:a().objectOf(a().string).isRequired,menu:a().arrayOf(a().shape({to:a().string.isRequired,icon:a().func.isRequired,intlLabel:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired}).isRequired,permissions:a().array,Component:a().func})).isRequired,menuLogo:a().oneOfType([a().string,a().any]).isRequired,messages:a().object.isRequired,plugins:a().object.isRequired,runHookParallel:a().func.isRequired,runHookWaterfall:a().func.isRequired,runHookSeries:a().func.isRequired,settings:a().object.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired,store:a().object.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var ne=ce,$=t(59883),Y=t(6680);const Ue=(o,s)=>{let n=Y.compose;const r=[];o.forEach(d=>{r.push(d())});const l=(0,Y.createStore)(Ot(s,{}),{},n((0,Y.applyMiddleware)(...r)));return l.asyncReducers={},l.injectReducer=(d,c)=>{l.asyncReducers[d]=c,l.replaceReducer(Ot(s,l.asyncReducers))},l},Ot=(o,s)=>(0,Y.combineReducers)({...o,...s});var $t=Ue,Yt=t(35231),Jt=()=>{const o=[];return{register(s){o.push(s)},delete(s){o.splice(o.indexOf(s),1)},runWaterfall(s,n){return o.reduce((r,l)=>l(r,n),s)},async runWaterfallAsync(s,n){let r=s;for(const l of o)r=await l(r,n);return r},runSeries(...s){return o.map(n=>n(...s))},async runSeriesAsync(...s){const n=[];for(const r of o)n.push(await r(...s));return n},runParallel(...s){return Promise.all(o.map(n=>n(...s)))}}},ot=t(66941),Qt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=",Xt={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[],publishModalAdditionalInfos:[],unpublishModalAdditionalInfos:[]}}},qt=t(10728),fe=t(53038);const kt=({component:o,path:s,...n})=>{const{pathname:r,search:l}=(0,fe.TH)();return e.createElement(fe.AW,{path:s,render:d=>i.I8.getToken()!==null?e.createElement(o,{...n,...d}):e.createElement(fe.l_,{to:{pathname:"/auth/login",search:r!=="/"&&`?redirectTo=${encodeURIComponent(`${r}${l}`)}`}})})};kt.propTypes={component:a().any.isRequired,path:a().string.isRequired};var wt=(0,e.memo)(kt);const jt={contentManager:{main:[],collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},marketplace:{main:[{action:"admin::marketplace.read",subject:null}],read:[{action:"admin::marketplace.read",subject:null}]},settings:{roles:{main:[{action:"admin::roles.create",subject:null},{action:"admin::roles.update",subject:null},{action:"admin::roles.read",subject:null},{action:"admin::roles.delete",subject:null}],create:[{action:"admin::roles.create",subject:null}],delete:[{action:"admin::roles.delete",subject:null}],read:[{action:"admin::roles.read",subject:null}],update:[{action:"admin::roles.update",subject:null}]},users:{main:[{action:"admin::users.create",subject:null},{action:"admin::users.read",subject:null},{action:"admin::users.update",subject:null},{action:"admin::users.delete",subject:null}],create:[{action:"admin::users.create",subject:null}],delete:[{action:"admin::users.delete",subject:null}],read:[{action:"admin::users.read",subject:null}],update:[{action:"admin::users.update",subject:null}]},webhooks:{main:[{action:"admin::webhooks.create",subject:null},{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],create:[{action:"admin::webhooks.create",subject:null}],delete:[{action:"admin::webhooks.delete",subject:null}],read:[{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],update:[{action:"admin::webhooks.update",subject:null}]},"api-tokens":{main:[{action:"admin::api-tokens.access",subject:null}],create:[{action:"admin::api-tokens.create",subject:null}],delete:[{action:"admin::api-tokens.delete",subject:null}],read:[{action:"admin::api-tokens.read",subject:null}],update:[{action:"admin::api-tokens.update",subject:null}],regenerate:[{action:"admin::api-tokens.regenerate",subject:null}]},"transfer-tokens":{main:[{action:"admin::transfer.tokens.access",subject:null}],create:[{action:"admin::transfer.tokens.create",subject:null}],delete:[{action:"admin::transfer.tokens.delete",subject:null}],read:[{action:"admin::transfer.tokens.read",subject:null}],update:[{action:"admin::transfer.tokens.update",subject:null}],regenerate:[{action:"admin::transfer.tokens.regenerate",subject:null}]},"project-settings":{read:[{action:"admin::project-settings.read",subject:null}],update:[{action:"admin::project-settings.update",subject:null}]}}};var rt=t(9592),Ut=t(90869),_t=t(84306),es=t(39935),ts=t.n(es),ss=t(9086),it=t.n(ss),ns=t(51399),as=t(5074),ee=t(11060),os=t(24436);const St=o=>e.createElement(ee.ZP,null,e.createElement(os.Z,{...o}));St.defaultProps={onSubmit:o=>o.preventDefault()},St.propTypes={onSubmit:a().func};var O=t(24346),Ve=t(27649),de=t(72850),me=t(49372),he=t(87933),xe=t(10369),lt=t(41415),Tt=t(92802),$e=t(73678);const Ct=({onSubmit:o,schema:s})=>{const{formatMessage:n}=(0,H.Z)();return e.createElement(ee.ZP,null,e.createElement(Ve.o,null,e.createElement(ee.bU,null,e.createElement(Tt.J9,{enableReinitialize:!0,initialValues:{email:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:r,errors:l,handleChange:d})=>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"},n({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),l.errorMessage&&e.createElement(me.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},n({id:l.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(xe.o,{error:l.email?n({id:l.email,defaultMessage:"This email is invalid."}):"",value:r.email,onChange:d,label:n({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:n({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(lt.z,{type:"submit",fullWidth:!0},n({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},n({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Ct.defaultProps={onSubmit:o=>o.preventDefault()},Ct.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var rs=Ct,is=()=>{const{formatMessage:o}=(0,H.Z)();return e.createElement(ee.ZP,null,e.createElement(Ve.o,null,e.createElement(ee.bU,null,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"},o({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),e.createElement(me.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),e.createElement(de.x,{paddingTop:4},e.createElement(me.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},ls=()=>{const{formatMessage:o}=(0,H.Z)(),n=(0,i.aM)().get("info")||o({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return e.createElement(ee.ZP,null,e.createElement(Ve.o,null,e.createElement(ee.bU,null,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"},o({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),e.createElement(me.Z,null,n),e.createElement(de.x,{paddingTop:4},e.createElement(me.Z,null,o({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),e.createElement(he.k,{justifyContent:"center"},e.createElement(de.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},us=t(15335),xt=t(5803),cs=t(8284),ut=t(54894),ct=t(60492);function ds(){const[o,s]=(0,i.Yw)("STRAPI_NPS_SURVEY_SETTINGS",{enabled:!0,lastResponseDate:null,firstDismissalDate:null,lastDismissalDate:null});return{npsSurveySettings:o,setNpsSurveySettings:s}}var dt=t(24018);const Zt=D.ZP.a`
|
|
6
|
+
color: ${({theme:o})=>o.colors.primary600};
|
|
7
|
+
`,Bt=(0,D.ZP)(xe.o)`
|
|
8
|
+
::-ms-reveal {
|
|
9
|
+
display: none;
|
|
10
|
+
}
|
|
11
|
+
`,Rt=({authType:o,fieldsToDisable:s,noSignin:n,onSubmit:r,schema:l})=>{const d=(0,i.lm)(),{push:c}=(0,fe.k6)(),[m,A]=(0,e.useState)(!1),[L,k]=(0,e.useState)(!1),[S,J]=(0,e.useState)(0),[Q,B]=(0,e.useState)({}),{trackUsage:ie}=(0,i.rS)(),{formatMessage:R}=(0,H.Z)(),Ze=(0,i.aM)(),{formatAPIError:Be}=(0,i.So)(),{get:z}=(0,i.kY)(),{setNpsSurveySettings:ge}=ds(),te=Ze.get("registrationToken");(0,e.useEffect)(()=>{te&&(async()=>{try{const{data:{data:I}}=await z("/admin/registration-info",{params:{registrationToken:te}});I&&B(I)}catch(I){const b=Be(I);d({type:"warning",message:b}),c(`/auth/oops?info=${encodeURIComponent(b)}`)}})()},[te]);function _e(G){return Object.entries(G).reduce((I,[b,Ee])=>{let pe=Ee;return!["password","confirmPassword"].includes(b)&&typeof Ee=="string"&&(pe=pe.trim(),b==="lastname"&&(pe=pe||null)),I[b]=pe,I},{})}return e.createElement(ee.ZP,null,e.createElement(ee.bU,null,e.createElement(Tt.J9,{enableReinitialize:!0,initialValues:{firstname:Q.firstname||"",lastname:Q.lastname||"",email:Q.email||"",password:"",confirmPassword:"",registrationToken:te||void 0,news:!1},onSubmit:async(G,I)=>{const b=_e(G);try{await l.validate(b,{abortEarly:!1}),S>0&&o==="register-admin"&&ie("didSubmitWithErrorsFirstAdmin",{count:S.toString()}),r(te?{userInfo:it()(b,["registrationToken"]),registrationToken:te}:b,I),ge({enabled:G.news})}catch(Ee){const pe=(0,i.CJ)(Ee);J(S+1),I.setErrors(pe)}},validateOnChange:!1},({values:G,errors:I,handleChange:b})=>e.createElement(i.l0,{noValidate:!0},e.createElement(Ve.o,null,e.createElement(he.k,{direction:"column",alignItems:"center",gap:3},e.createElement($e.Z,null),e.createElement(me.Z,{as:"h1",variant:"alpha",textAlign:"center"},R({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"})),e.createElement(me.Z,{variant:"epsilon",textColor:"neutral600",textAlign:"center"},R({id:"Auth.form.register.subtitle",defaultMessage:"Credentials are only used to authenticate in Strapi. All saved data will be stored in your database."}))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6,marginTop:7},e.createElement(us.r,{gap:4},e.createElement(xt.P,{col:6},e.createElement(xe.o,{name:"firstname",required:!0,value:G.firstname,error:I.firstname?R(I.firstname):void 0,onChange:b,label:R({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),e.createElement(xt.P,{col:6},e.createElement(xe.o,{name:"lastname",value:G.lastname,onChange:b,label:R({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),e.createElement(xe.o,{name:"email",disabled:s.includes("email"),value:G.email,onChange:b,error:I.email?R(I.email):void 0,required:!0,label:R({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),e.createElement(Bt,{name:"password",onChange:b,value:G.password,error:I.password?R(I.password):void 0,endAction:e.createElement(dt.Z,{onClick:Ee=>{Ee.preventDefault(),A(pe=>!pe)},label:R(m?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},m?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:R({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:R({id:"global.password",defaultMessage:"Password"}),type:m?"text":"password"}),e.createElement(Bt,{name:"confirmPassword",onChange:b,value:G.confirmPassword,error:I.confirmPassword?R(I.confirmPassword):void 0,endAction:e.createElement(dt.Z,{onClick:Ee=>{Ee.preventDefault(),k(pe=>!pe)},label:R(L?{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:R({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:L?"text":"password"}),e.createElement(cs.X,{onValueChange:Ee=>{b({target:{value:Ee,name:"news"}})},value:G.news,name:"news","aria-label":"news"},R({id:"Auth.form.register.news.label",defaultMessage:"Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy})."},{terms:e.createElement(Zt,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},R({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:e.createElement(Zt,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},R({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),e.createElement(lt.z,{fullWidth:!0,size:"L",type:"submit"},R({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!n&&e.createElement(de.x,{paddingTop:4},e.createElement(he.k,{justifyContent:"center"},e.createElement(i.rU,{label:"Auth.link.signin",to:"/auth/login"},R({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Rt.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:o=>o.preventDefault()},Rt.propTypes={authType:a().string.isRequired,fieldsToDisable:a().array,noSignin:a().bool,onSubmit:a().func,schema:a().shape({validate:a().func.isRequired,type:a().string.isRequired}).isRequired};var Nt=Rt;const Wt=(0,D.ZP)(xe.o)`
|
|
12
|
+
::-ms-reveal {
|
|
13
|
+
display: none;
|
|
14
|
+
}
|
|
15
|
+
`,Mt=({onSubmit:o,schema:s})=>{const[n,r]=(0,e.useState)(!1),[l,d]=(0,e.useState)(!1),{formatMessage:c}=(0,H.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:A,handleChange:L})=>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"}))),A.errorMessage&&e.createElement(me.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},c({id:A.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(he.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Wt,{name:"password",onChange:L,value:m.password,error:A.password?c({id:A.password,defaultMessage:"This field is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:k=>{k.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:L,value:m.confirmPassword,error:A.confirmPassword?c({id:A.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:k=>{k.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?"}))))))};Mt.defaultProps={onSubmit:o=>o.preventDefault()},Mt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var ms=Mt;const Ht={"forgot-password":{Component:rs,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:O.Ry().shape({email:O.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:O.Ry().shape({email:O.Z_().email(i.I0.email).required(i.I0.required),password:O.Z_().required(i.I0.required),rememberMe:O.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:O.Ry().shape({firstname:O.Z_().trim().required(i.I0.required),lastname:O.Z_().nullable(),password:O.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:O.Z_().oneOf([O.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required),registrationToken:O.Z_().required(i.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:Nt,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:O.Ry().shape({firstname:O.Z_().trim().required(i.I0.required),lastname:O.Z_().nullable(),password:O.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:O.Z_().email(i.I0.email).strict().lowercase(i.I0.lowercase).required(i.I0.required),confirmPassword:O.Z_().oneOf([O.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)}),inputsPrefix:""},"reset-password":{Component:ms,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:O.Ry().shape({password:O.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:O.Z_().oneOf([O.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)})}};var gs=o=>o;const Ft={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 Ft;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"),A=(0,i.aM)(),L=(0,rt.c)(St,async()=>(await t.e(2395).then(t.bind(t,82395))).LoginEE),k=(0,rt.c)(Ht,async()=>(await t.e(8276).then(t.bind(t,18276))).FORMS,{combine(U,V){return{...U,...V}},defaultValue:Ht}),[{formErrors:S,modifiedData:J,requestError:Q},B]=(0,e.useReducer)(ps,Ft,gs),R=_t.default.CancelToken.source(),{endPoint:Ze,fieldsToDisable:Be,fieldsToOmit:z,inputsPrefix:ge,schema:te,..._e}=k?.[m]??{};(0,e.useEffect)(()=>()=>{R.cancel("Component unmounted")},[]);const{post:G}=(0,i.kY)();(0,e.useEffect)(()=>{B({type:"RESET_PROPS"})},[m]);const I=({target:{name:U,value:V}})=>{B({type:"ON_CHANGE",keys:U,value:V})},b=async(U,{setSubmitting:V,setErrors:ve})=>{V(!0);const Me=it()(U,z),x=`/admin/${Ze}`;m==="login"&&await pe(U,x,{setSubmitting:V,setErrors:ve}),(m==="register"||m==="register-admin")&&await Ds(U,x,{setSubmitting:V,setErrors:ve}),m==="forgot-password"&&await Ee(Me,x,{setSubmitting:V,setErrors:ve}),m==="reset-password"&&await Os(Me,x,{setSubmitting:V,setErrors:ve})},Ee=async(U,V,{setSubmitting:ve,setErrors:Me})=>{try{await G(V,U,{cancelToken:R.token}),n("/auth/forgot-password-success")}catch(x){console.error(x),Me({errorMessage:"notification.error"})}finally{ve(!1)}},pe=async(U,V,{setSubmitting:ve,setErrors:Me})=>{try{const{data:{data:{token:x,user:ae}}}=await G(V,it()(U,z),{cancelToken:R.token});ae.preferedLanguage&&l(ae.preferedLanguage),i.I8.setToken(x,U.rememberMe),i.I8.setUserInfo(ae,U.rememberMe),zt()}catch(x){if(x.response){const ae=Re()(x,["response","data","error","message"],"Something went wrong");if(ts()(ae).toLowerCase()==="usernotactive"){n("/auth/oops"),B({type:"RESET_PROPS"});return}Me({errorMessage:ae})}}finally{ve(!1)}},Ds=async(U,V,{setSubmitting:ve,setErrors:Me})=>{try{c("willCreateFirstAdmin");const{data:{data:{token:x,user:ae}}}=await G(V,it()(U,z),{cancelToken:R.token});i.I8.setToken(x,!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"&&U.userInfo.news===!0||m==="register-admin"&&U.news===!0){n({pathname:"/usecase",search:`?hasAdmin=${o}`});return}zt()}catch(x){if(c("didNotCreateFirstAdmin"),x.response){const{data:ae}=x.response,Ye=(0,as.Z)(ae);Me({apiErrors:Ye})}}},Os=async(U,V,{setErrors:ve,setSubmitting:Me})=>{try{const{data:{data:{token:x,user:ae}}}=await G(V,{...U,resetPasswordToken:A.get("code")},{cancelToken:R.token});i.I8.setToken(x,!1),i.I8.setUserInfo(ae,!1),n("/")}catch(x){if(x.response){const ae=Re()(x,["response","data","message"],"Something went wrong"),Ye=Re()(x,["response","data","statusCode"],400);B({type:"SET_REQUEST_ERROR",errorMessage:ae,errorStatus:Ye}),ve({errorMessage:ae})}}finally{Me(!1)}},zt=()=>{if(m==="login"){const U=A.get("redirectTo"),V=U?decodeURIComponent(U):"/";n(V)}else n("/")};if(!k[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(L&&(k.login.Component=L),!L)return null;const{Component:ks}=k?.[m]??{};return e.createElement(ks,{..._e,authType:m,fieldsToDisable:Be,formErrors:S,inputsPrefix:ge,modifiedData:J,onChange:I,onSubmit:b,requestError:Q,schema:te})};At.defaultProps={hasAdmin:!1},At.propTypes={hasAdmin:a().bool,setHasAdmin:a().func.isRequired};var fs=At,hs=t(33248),Es=t(68465),vs=t(84967),ys=t(7563),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,D.ZP)(me.Z)`
|
|
16
|
+
text-align: center;
|
|
17
|
+
`;var Cs=()=>{const o=(0,i.lm)(),{push:s,location:n}=(0,fe.k6)(),{formatMessage:r}=(0,H.Z)(),[l,d]=(0,e.useState)(),[c,m]=(0,e.useState)(""),{post:A}=(0,i.kY)(),{firstname:L,email:k}=i.I8.getUserInfo(),{hasAdmin:S}=(0,Ps.parse)(n?.search,{ignoreQueryPrefix:!0}),J=l==="other",Q=async(B,ie)=>{B.preventDefault();try{await A("https://analytics.strapi.io/register",{email:k,username:L,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:B=>Q(B,!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:B,value:ie})=>e.createElement(vs.W,{key:ie,value:ie},r(B)))),J&&e.createElement(xe.o,{name:"other",label:r({id:"Usecase.other",defaultMessage:"Other"}),value:c,onChange:B=>m(B.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:()=>Q(!0)},r({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},Kt=t(4556);const Rs=(0,e.lazy)(()=>Promise.all([t.e(6691),t.e(801)]).then(t.bind(t,63546)));function Ms(){const o=(0,rt.c)(jt,async()=>(await t.e(3100).then(t.bind(t,73100))).ADMIN_PERMISSIONS_EE,{combine(z,ge){return C()({},z,ge)},defaultValue:jt}),s=(0,rt.c)(Kt.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,H.Z)(),[{isLoading:d,hasAdmin:c,uuid:m,deviceId:A},L]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),k=(0,Te.I0)(),S=(0,i.L7)(),{get:J,post:Q}=(0,i.kY)(),B=(0,e.useMemo)(()=>(0,Ut.WW)(s.map(({to:z,Component:ge,exact:te})=>(0,Ut.ot)(ge,z,te))),[s]),[ie,R]=(0,e.useState)(null);(0,e.useEffect)(()=>{k({type:Kt.XS,payload:o})},[o,k]),(0,e.useEffect)(()=>{const z=i.I8.getToken();z&&(async()=>{try{const{data:{data:{token:te}}}=await Q("/admin/renew-token",{token:z});i.I8.updateToken(te)}catch{i.I8.clearAppStorage(),window.location.reload()}})()},[Q]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:ge,uuid:te,menuLogo:_e,authLogo:G}}}=await J("/admin/init");if(r({menuLogo:(0,i.CR)(_e),authLogo:(0,i.CR)(G)}),te){const{data:{data:I}}=await J("/admin/telemetry-properties",{validateStatus:b=>b<500});R(I);try{const b="didInitializeAdministration";await Q("https://analytics.strapi.io/api/v2/track",{event:b,userId:"",deviceId:A,eventPropeties:{},userProperties:{environment:S.currentEnvironment},groupProperties:{...I,projectId:te}},{headers:{"X-Strapi-Event":b}})}catch{}}L({isLoading:!1,hasAdmin:ge,uuid:te,deviceId:A})}catch{n({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[n,r]);const Ze=z=>L(ge=>({...ge,hasAdmin:z})),Be=(0,e.useMemo)(()=>({uuid:m,telemetryProperties:ie,deviceId:A}),[m,ie,A]);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,B,e.createElement(fe.AW,{path:"/auth/:authType",render:z=>e.createElement(fs,{...z,setHasAdmin:Ze,hasAdmin:c}),exact:!0}),e.createElement(wt,{path:"/usecase",component:Cs}),e.createElement(wt,{path:"/",component:Rs}),e.createElement(fe.AW,{path:"",component:hs.default}))))}var As=Ms,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:M,head:{favicon:Qt},locales:["en"],menuLogo:M,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=$.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})}),N()(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 A=m.reduce((L,k)=>(L[k.locale]=k.data,L),{});return Object.keys(A).forEach(L=>{c[L]={...c[L],...A[L]}}),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,$.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=j()(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(X.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(Pe)||"en"}}),e.createElement(T.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(w,h,t){"use strict";var e=t(32735);const g=(0,e.createContext)();h.Z=g},51399:function(w,h,t){"use strict";var e=t(32735),g=t(33229);const E=()=>{const{changeLocale:y,localeNames:u,messages:p}=(0,e.useContext)(g.Z);return{changeLocale:y,localeNames:u,messages:p}};h.Z=E},73678:function(w,h,t){"use strict";var e=t(32735),g=t(8471),E=t(79652);const y=g.ZP.img`
|
|
18
|
+
height: ${72/16}rem;
|
|
19
|
+
`,u=()=>{const{logos:{auth:p}}=(0,E.um)();return e.createElement(y,{src:p?.custom??p.default,"aria-hidden":!0,alt:""})};h.Z=u},76402:function(w,h,t){"use strict";t.d(h,{ux:function(){return E},_5:function(){return u},$l:function(){return N},Rj:function(){return C}});var e=t(32735),E=(0,e.createContext)({}),u=(0,e.createContext)({}),N=(0,e.createContext)({}),C=(0,e.createContext)({})},35231:function(w,h){"use strict";const t="/admin/".replace(window.location.origin,"");h.Z=t},66941:function(w,h,t){"use strict";t.d(h,{Eo:function(){return E},LK:function(){return g},No:function(){return e},dV:function(){return y}});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",y="Admin/CM/pages/App/mutate-single-types-links"},79652:function(w,h,t){"use strict";t.d(h,{um:function(){return y},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),y=()=>(0,e.useContext)(g._5),u=t(90769),p=t(45509),N=t(2287),Z=t(36919),C=t(45112),W=t(15062),j=t(30305),X=t(99381),T=t.n(X),q=(P,f)=>f.map(({permissions:v})=>(0,p.qX)(P,v)),i=async(P,f,v)=>{const F=q(P,f),le=await Promise.all(F),K=f.filter((H,ue)=>le[ue]),se=K.findIndex(H=>H.to==="/settings");if(se===-1)return[];const re=T()(K);return re[se].notificationsCount=v?1:0,re},a=async(P,f)=>{const v=q(P,f),F=await Promise.all(v);return f.filter((K,se)=>F[se])},Te=()=>{const{allPermissions:P}=(0,p.vn)(),{shouldUpdateStrapi:f}=(0,p.L7)(),{menu:v}=(0,p.j1)(),F=(0,W.v9)(j._),[le,K]=e.useState({generalSectionLinks:[{icon:N.Z,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:F.marketplace.main},{icon:Z.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 H=await a(P,v),ue=await i(P,se.current,f);K(D=>({...D,generalSectionLinks:ue,pluginsSectionLinks:H,isLoading:!1}))}re()},[K,se,P,v,F,f]),le},De=()=>(0,e.useContext)(g.$l),We=(P,f,v,F)=>{const[le,K]=(0,e.useState)(!1),se=(0,p.lm)(),{post:re}=(0,p.kY)(),{formatAPIError:H}=(0,p.So)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:D}}}=await re(`${P}${f}/regenerate`);K(!1),v(D)}catch(D){K(!1),F?F(D):se({type:"warning",message:H(D)})}},isLoadingConfirmation:le}};const Qe=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),oe=()=>{const{latestStrapiReleaseTag:P,shouldUpdateStrapi:f}=useAppInfo(),v=useNotification();return useEffect(()=>{f&&Qe&&v({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,f,v]),null};var He=null,Ce=t(9086),Re=t.n(Ce),Ie=t(90869),Xe=(P,f)=>({...P,fieldsToPick:f}),Fe=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,f)=>(0,Fe.ZP)(P,v=>{switch(f.type){case"GET_DATA_SUCCEEDED":{v.isLoading=!1,v.showHeaderLoader=!1,v.initialData=ke()(f.data,P.fieldsToPick),v.modifiedData=ke()(f.data,P.fieldsToPick);break}case"ON_CANCEL":{v.modifiedData=P.initialData,v.formErrors={};break}case"ON_CHANGE":{f.inputType==="password"&&!f.value?Lt()(v.modifiedData,f.keys.split(".")):f.keys.includes("username")&&!f.value?mt()(v.modifiedData,f.keys.split("."),null):mt()(v.modifiedData,f.keys.split("."),f.value);break}case"ON_SUBMIT":{v.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{v.initialData=ke()(f.data,P.fieldsToPick),v.modifiedData=ke()(f.data,P.fieldsToPick),v.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{v.formErrors=f.errors,v.showHeaderButtonLoader=!1;break}default:return v}});var gt=(P,f,v,F)=>{const[{formErrors:le,initialData:K,isLoading:se,modifiedData:re,showHeaderButtonLoader:H,showHeaderLoader:ue},D]=(0,e.useReducer)(st,tt,()=>Xe(tt,F)),_=(0,p.lm)(),{lockApp:Ae,unlockApp:Ke}=(0,p.o1)(),{get:ze,put:Le}=(0,p.kY)();return(0,e.useEffect)(()=>{P&&(async()=>{try{const{data:{data:ne}}=await ze(P);D({type:"GET_DATA_SUCCEEDED",data:ne,fieldsToPick:F})}catch(ne){console.error(ne.response),_({type:"warning",message:{id:"notification.error"}})}})()},[P]),[{formErrors:le,initialData:K,isLoading:se,modifiedData:re,showHeaderButtonLoader:H,showHeaderLoader:ue},D,{handleCancel:()=>{D({type:"ON_CANCEL"})},handleChange:({target:{name:ce,value:ne,type:$}})=>{D({type:"ON_CHANGE",inputType:$,keys:ce,value:ne})},handleSubmit:async ce=>{ce.preventDefault();const ne=await(0,Ie.R6)(re,f);if(D({type:"SET_ERRORS",errors:ne||{}}),!ne)try{Ae(),D({type:"ON_SUBMIT"});const $=Re()(re,["confirmPassword","registrationToken"]);$.roles&&($.roles=$.roles.map(Ue=>Ue.id)),$.ssoLockedRoles&&($.ssoLockedRoles=[...new Set($.ssoLockedRoles)]);const{data:{data:Y}}=await Le(P,$);v(Y),D({type:"ON_SUBMIT_SUCCEEDED",data:Y}),_({type:"success",message:{id:"notification.success.saved"}})}catch($){const Y=$?.response?.payload??{data:{}};Y?.data&&typeof Y.data=="string"?_({type:"warning",message:Y.data}):_({type:"warning",message:Y.message});const Ue=(0,Ie.Iz)(Y);D({type:"SET_ERRORS",errors:Ue})}finally{Ke()}},setField:(ce,ne)=>{D({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(f=>{const v=f.links.map(F=>({...F,isDisplayed:!1}));return{...f,links:v}}),nt=t(98978),ht=t.n(nt),Et=P=>ht()(P,f=>f.id),vt=()=>{const[{isLoading:P,menu:f},v]=(0,e.useState)({isLoading:!0,menu:[]}),{allPermissions:F}=(0,p.vn)(),{shouldUpdateStrapi:le}=(0,p.L7)(),{settings:K}=(0,p.j1)(),se=(0,W.v9)(j._),{global:re,admin:H}=(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=$=>$.map(async(Y,Ue)=>({hasPermission:await(0,p.qX)(F,Y.permissions),sectionIndex:ce,linkIndex:Ue}));return[...je,...ne(Ge.links)]},[])))(ze);v(we=>({...we,isLoading:!1,menu:ze.map((je,Ge)=>({...je,links:je.links.map((ce,ne)=>{const $=at.find(Y=>Y.sectionIndex===Ge&&Y.linkIndex===ne);return{...ce,isDisplayed:Boolean($.hasPermission)}})}))}))},{global:Ae,...Ke}=K,ze=ft([{...K.global,links:Et([...K.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:H.map(ue)},...Object.values(Ke)]);_()},[H,re,F,K,le,ue]);const D=_=>({..._,links:_.links.filter(Ae=>Ae.isDisplayed)});return{isLoading:P,menu:f.map(D)}},Pt=()=>(0,e.useContext)(g.Rj)},90769:function(w,h,t){"use strict";t.d(h,{G:function(){return E}});var e=t(45509),g=t(20108);function E(){const{get:y}=(0,e.kY)(),{formatAPIError:u}=(0,e.So)(),p=(0,e.lm)(),N=(0,g.useQueries)(["components","content-types"].map(T=>({queryKey:["content-manager",T],async queryFn(){const{data:{data:M}}=await y(`/content-manager/${T}`);return M},onError(M){p({type:"warning",message:u(M)})}}))),[Z,C]=N,W=Z.isLoading||C.isLoading,j=(C?.data??[]).filter(T=>T.kind==="collectionType"&&T.isDisplayed),X=(C?.data??[]).filter(T=>T.kind!=="collectionType"&&T.isDisplayed);return{isLoading:W,components:Z?.data??[],collectionTypes:j,singleTypes:X}}},9592:function(w,h,t){"use strict";t.d(h,{c:function(){return y}});var e=t(32735),g=t(45509);function E(){return window.strapi.isEE}function y(u,p,{defaultValue:N=null,combine:Z=(W,j)=>j,enabled:C=!0}={}){const W=(0,g.W6)(p),j=(0,g.W6)(Z),[{data:X},T]=e.useState({data:E()&&C?N:u});return e.useEffect(()=>{async function M(){const q=await W();T({data:j(u,q)})}E()&&C&&M()},[u,W,j,C]),X}},11060:function(w,h,t){"use strict";t.d(h,{sg:function(){return T},bU:function(){return M},ZP:function(){return Pe}});var e=t(32735),g=t(72850),E=t(87933),y=t(60216),u=t.n(y),p=t(8471),N=t(77035),Z=t(67879),C=t(51399),j=()=>{const{changeLocale:i,localeNames:be}=(0,C.Z)(),{locale:a}=(0,Z.Z)();return e.createElement(N.q4,{value:a,onChange:Se=>i(Se)},Object.entries(be).map(([Se,Te])=>e.createElement(N.ag,{key:Se,value:Se},Te)))};const X=(0,p.ZP)(g.x)`
|
|
20
|
+
margin: 0 auto;
|
|
21
|
+
width: 552px;
|
|
22
|
+
`,T=(0,p.ZP)(E.k)`
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
`,M=({children:i})=>e.createElement(X,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",justifyContent:"center"},i);M.propTypes={children:u().node.isRequired};const q=({children:i})=>e.createElement("div",null,e.createElement(E.k,{as:"header",justifyContent:"flex-end"},e.createElement(g.x,{paddingTop:6,paddingRight:8},e.createElement(j,null))),e.createElement(g.x,{paddingTop:2,paddingBottom:11},i));q.propTypes={children:u().node.isRequired};var Pe=q},30305:function(w,h,t){"use strict";t.d(h,{_:function(){return y}});var e=t(98178),g=t(69891);const E=()=>u=>u.admin_app||g.E,y=(0,e.P1)(E(),u=>u.permissions)},24018:function(w,h,t){"use strict";var e=t(63642),g=t(8471);const E=(0,g.ZP)(e.E)`
|
|
25
|
+
svg {
|
|
26
|
+
height: 1rem;
|
|
27
|
+
width: 1rem;
|
|
28
|
+
path {
|
|
29
|
+
fill: ${({theme:y})=>y.colors.neutral600};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
`;h.Z=E},24436:function(w,h,t){"use strict";var e=t(32735),g=t(10369),E=t(27649),y=t(72850),u=t(49372),p=t(87933),N=t(8284),Z=t(41415),C=t(45509),W=t(54894),j=t(60492),X=t(92802),T=t(60216),M=t.n(T),q=t(67879),Pe=t(8471),i=t(73678),be=t(11060),a=t(24018);const Se=(0,Pe.ZP)(g.o)`
|
|
33
|
+
::-ms-reveal {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|
|
36
|
+
`,Te=({onSubmit:Ne,schema:De,children:Je})=>{const[We,Qe]=(0,e.useState)(!1),{formatMessage:oe}=(0,q.Z)();return e.createElement(E.o,null,e.createElement(be.bU,null,e.createElement(X.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:Ne,validationSchema:De,validateOnChange:!1},({values:He,errors:Ce,handleChange:Re})=>e.createElement(C.l0,{noValidate:!0},e.createElement(be.sg,null,e.createElement(i.Z,null),e.createElement(y.x,{paddingTop:6,paddingBottom:1},e.createElement(u.Z,{variant:"alpha",as:"h1"},oe({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(y.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(p.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:Re,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:Re,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(W.Z,null):e.createElement(j.Z,null)),required:!0}),e.createElement(N.X,{onValueChange:Ie=>{Re({target:{value:Ie,name:"rememberMe"}})},value:He.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},oe({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(Z.z,{fullWidth:!0,type:"submit"},oe({id:"Auth.form.button.login",defaultMessage:"Login"}))))),Je),e.createElement(p.k,{justifyContent:"center"},e.createElement(y.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:M().node,onSubmit:M().func,schema:M().shape({type:M().string.isRequired}).isRequired},h.Z=Te},33248:function(w,h,t){"use strict";t.r(h);var e=t(32735),g=t(27649),E=t(82055),y=t(17e3),u=t(9695),p=t(45509),N=t(8482),Z=t(25386),C=t(67879);const W=()=>{const{formatMessage:j}=(0,C.Z)();return(0,p.go)(),e.createElement(g.o,{labelledBy:"title"},e.createElement(E.T,{id:"title",title:j({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),e.createElement(y.D,null,e.createElement(u.x,{action:e.createElement(p.Qj,{variant:"secondary",endIcon:e.createElement(N.Z,null),to:"/"},j({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:j({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:e.createElement(Z.Z,{width:"10rem"}),shadow:"tableShadow"})))};h.default=W},63602:function(w,h,t){"use strict";var e=t(32735),g=t(45509),E=t(60216),y=t.n(E),u=t(53038);const p=({loadComponent:Z})=>{const[C,W]=(0,e.useState)(null);return(0,e.useEffect)(()=>{(async()=>{try{const X=await Z();W(()=>X.default)}catch(X){console.log(X)}})()},[Z]),C?e.createElement(C,null):e.createElement(g.dO,null)},N=(Z,C,W)=>e.createElement(u.AW,{render:()=>e.createElement(p,{loadComponent:Z}),key:C,path:C,exact:W||!1});p.propTypes={loadComponent:y().func.isRequired},h.Z=N},5074:function(w,h){"use strict";const t=({data:e})=>{try{return Object.keys(e).reduce((g,E)=>{const y=e[E][0];return g[E]={id:y,defaultMessage:y},g},{})}catch{return{}}};h.Z=t},90869:function(w,h,t){"use strict";t.d(h,{R6:function(){return E},ot:function(){return y.Z},Iz:function(){return u.Z},Pp:function(){return p},Qy:function(){return X},WW:function(){return N.Z}});var e=t(45509),E=async(T,M)=>{let q=null;try{await M.validate(T,{abortEarly:!1})}catch(Pe){q=(0,e.CJ)(Pe)}return q},y=t(63602),u=t(5074),p=(T,M="")=>[T,M].filter(q=>q).join(" "),N=t(18805),Z=t(98978);const C=T=>sortBy(T,M=>M.name);var W=null;const j={bufferToHex(T){return[...new Uint8Array(T)].map(M=>M.toString(16).padStart(2,"0")).join("")},async digestMessage(T){const M=new TextEncoder().encode(T),q=await crypto.subtle.digest("SHA-256",M);return this.bufferToHex(q)}};async function X(T){if(!T)return null;try{return await j.digestMessage(T.email)}catch{return null}}},18805:function(w,h){"use strict";const t=e=>e.filter((g,E,y)=>y.findIndex(u=>u.key===g.key)===E);h.Z=t},48224:function(w,h,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 p=new Error("Cannot find module '"+E+"'");throw p.code="MODULE_NOT_FOUND",p});var y=e[E],u=y[0];return t.e(y[1]).then(function(){return t.t(u,19)})}g.keys=function(){return Object.keys(e)},g.id=48224,w.exports=g},47750:function(w,h,t){"use strict";w.exports=t.p+"70674f63fc3904c20de0.svg"}}]);
|
package/build/{admin-edit-roles-page.6d567273.chunk.js → admin-edit-roles-page.38a6c863.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(H,L,o){"use strict";o.d(L,{V:function(){return P}});var e=o(
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(H,L,o){"use strict";o.d(L,{V:function(){return P}});var e=o(45509),v=o(20108);const P=(b={},O={})=>{const{id:A,...x}=b,{get:E}=(0,e.kY)();if(!A&&(O?.enabled===void 0||O?.enabled))throw new Error('"id" is a required argument');const{data:M,error:W,isError:a,isLoading:B,refetch:p}=(0,v.useQuery)(["roles",A,"permissions",x],async()=>{const{data:{data:S}}=await E(`/admin/roles/${A}/permissions`,{params:x});return S},O);return{permissions:M,error:W,isError:a,isLoading:B,refetch:p}}},86409:function(H,L,o){"use strict";o.d(L,{F:function(){return b}});var e=o(45509),v=o(67879),P=o(20108);const b=(O={},A={})=>{const{id:x="",...E}=O,{get:M}=(0,e.kY)(),{locale:W}=(0,v.Z)(),a=(0,e.Xe)(W,{sensitivity:"base"}),{data:B,error:p,isError:S,isLoading:F,refetch:g}=(0,P.useQuery)(["roles",x,E],async()=>{const{data:V}=await M(`/admin/roles/${x??""}`,{params:E});return V},A);let y=[];return x&&B?y=[B.data]:Array.isArray(B?.data)&&(y=B.data),{roles:y.sort((V,oe)=>a.compare(V.name,oe.name)),error:p,isError:S,isLoading:F,refetch:g}}},15570:function(H,L,o){"use strict";o.r(L),o.d(L,{CreatePage:function(){return Re},default:function(){return Se}});var e=o(32735),v=o(27649),P=o(82055),b=o(87933),O=o(41415),A=o(17e3),x=o(72850),E=o(49372),M=o(15335),W=o(5803),a=o(10369),B=o(33475),p=o(45509),S=o(29439),F=o(14723),g=o(92802),y=o(86834),V=o.n(y),oe=o(67879),de=o(15062),re=o(53038),C=o(8471),me=o(64499),X=o(30305),G=o(1283),_=o(91720),Ce=o(24346),xe=Ce.Ry().shape({name:Ce.Z_().required(p.I0.required),description:Ce.Z_().required(p.I0.required)});const ae=C.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,re.$B)("/settings/roles/duplicate/:id"),Y=(0,p.lm)(),{lockApp:ne,unlockApp:w}=(0,p.o1)(),{formatMessage:j}=(0,oe.Z)(),[Q,he]=(0,e.useState)(!1),{replace:pe}=(0,re.k6)(),J=(0,e.useRef)(),{trackUsage:ce}=(0,p.rS)(),{post:Ie,put:Be}=(0,p.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,_.d)(ve?.id,{cacheTime:0}),{permissions:ye,isLoading:Me}=(0,me.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Pe=>{ne(),he(!0),ve?.id?ce("willDuplicateRole"):ce("willCreateNewRole"),Promise.resolve(Ie("/admin/roles",Pe)).then(async({data:ee})=>{const{permissionsToSend:ie}=J.current.getPermissions();return ve?.id?ce("didDuplicateRole"):ce("didCreateNewRole"),ee.data.id&&!V()(ie)&&await Be(`/admin/roles/${ee.data.id}/permissions`,{permissions:ie}),ee}).then(ee=>{he(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),pe(`/settings/roles/${ee.data.id}`)}).catch(ee=>{console.error(ee),he(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{w()})},He=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(v.o,null,e.createElement(p.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:He},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Pe,values:ee,errors:ie,handleReset:le,handleChange:ue})=>e.createElement(p.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(P.T,{primaryAction:e.createElement(b.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{le(),J.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Pe,loading:Q,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(p.rU,{startIcon:e.createElement(S.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(A.D,null,e.createElement(b.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(x.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(b.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(b.k,{justifyContent:"space-between"},e.createElement(x.x,null,e.createElement(x.x,null,e.createElement(E.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(x.x,null,e.createElement(E.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ae,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(M.r,{gap:4},e.createElement(W.P,{col:6},e.createElement(a.o,{name:"name",error:ie.name&&j({id:ie.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:ue,required:!0,value:ee.name})),e.createElement(W.P,{col:6},e.createElement(B.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ie.description&&j({id:ie.description}),onChange:ue},ee.description))))),!Ze&&!Me?e.createElement(x.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:!1,ref:J,permissions:ye,layout:Le})):e.createElement(x.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(p.dO,null))))))))};function Se(){const z=(0,de.v9)(X._);return e.createElement(p.O4,{permissions:z.settings.roles.create},e.createElement(Re,null))}},1283:function(H,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),v=o(91215),P=o(90980),b=o(3653),O=o(
|
|
9
|
+
`,Re=()=>{const z=(0,re.$B)("/settings/roles/duplicate/:id"),Y=(0,p.lm)(),{lockApp:ne,unlockApp:w}=(0,p.o1)(),{formatMessage:j}=(0,oe.Z)(),[Q,he]=(0,e.useState)(!1),{replace:pe}=(0,re.k6)(),J=(0,e.useRef)(),{trackUsage:ce}=(0,p.rS)(),{post:Ie,put:Be}=(0,p.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,_.d)(ve?.id,{cacheTime:0}),{permissions:ye,isLoading:Me}=(0,me.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Pe=>{ne(),he(!0),ve?.id?ce("willDuplicateRole"):ce("willCreateNewRole"),Promise.resolve(Ie("/admin/roles",Pe)).then(async({data:ee})=>{const{permissionsToSend:ie}=J.current.getPermissions();return ve?.id?ce("didDuplicateRole"):ce("didCreateNewRole"),ee.data.id&&!V()(ie)&&await Be(`/admin/roles/${ee.data.id}/permissions`,{permissions:ie}),ee}).then(ee=>{he(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),pe(`/settings/roles/${ee.data.id}`)}).catch(ee=>{console.error(ee),he(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{w()})},He=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(v.o,null,e.createElement(p.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:He},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Pe,values:ee,errors:ie,handleReset:le,handleChange:ue})=>e.createElement(p.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(P.T,{primaryAction:e.createElement(b.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{le(),J.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Pe,loading:Q,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(p.rU,{startIcon:e.createElement(S.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(A.D,null,e.createElement(b.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(x.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(b.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(b.k,{justifyContent:"space-between"},e.createElement(x.x,null,e.createElement(x.x,null,e.createElement(E.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(x.x,null,e.createElement(E.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ae,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(M.r,{gap:4},e.createElement(W.P,{col:6},e.createElement(a.o,{name:"name",error:ie.name&&j({id:ie.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:ue,required:!0,value:ee.name})),e.createElement(W.P,{col:6},e.createElement(B.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ie.description&&j({id:ie.description}),onChange:ue},ee.description))))),!Ze&&!Me?e.createElement(x.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:!1,ref:J,permissions:ye,layout:Le})):e.createElement(x.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(p.dO,null))))))))};function Se(){const z=(0,de.v9)(X._);return e.createElement(p.O4,{permissions:z.settings.roles.create},e.createElement(Re,null))}},1283:function(H,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),v=o(91215),P=o(90980),b=o(3653),O=o(45509),A=o(23973),x=o.n(A),E=o(86834),M=o.n(E),W=o(60216),a=o.n(W),B=o(67879),p=o(72850),S=o(98978),F=o.n(S),g=o(8471),y=o(87933),V=o(82884),oe=o(15974),de=o(96441),re=o(33795),C=o.n(re),me=o(9086),X=o.n(me),G=o(79652),_=o(41415),Ce=o(45112);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,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:m,onChangeSimpleCheckbox:u}=(0,G.$_)(),{formatMessage:f}=(0,B.Z)(),R=C()(c,i,{}),$=(0,e.useMemo)(()=>Object.keys(R).reduce((Z,te)=>(Z[te]=ze(R[te]),Z),{}),[R]),{hasAllActionsSelected:N,hasSomeActionsSelected:k}=Oe($),T=()=>{d(Z=>!Z)},h=()=>{d(!1)},I=Dn(s,c,i),D=Ln(C()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(p.x,null,e.createElement(y.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(p.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(p.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:Z=>{m({target:{name:i.join(".."),value:Z}})},indeterminate:k,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(y.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},I.map(({checkboxName:Z,value:te,action:U,displayName:q,hasConditions:K})=>e.createElement($n.P,{col:3,key:U},e.createElement(kn,{disabled:n,hasConditions:K},e.createElement(Rt.X,{name:Z,disabled:n,onValueChange:fe=>{u({target:{name:Z,value:fe}})},value:te},q))))),e.createElement(ae,{hasConditions:D,onClick:T}))),l&&e.createElement(ie,{headerBreadCrumbs:[t,r],actions:I,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 In=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:m}=(0,B.Z)(),u=()=>{d(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:ce()(f),description:`${m({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(p.x,{padding:6},t.map(({actions:R,subCategoryName:$,subCategoryId:N})=>e.createElement(In,{key:$,actions:R,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...c,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=d=>{i(d===s?null:d)};return e.createElement(p.x,{padding:6,background:"neutral0"},r.map(({category:d,categoryId:c,childrenForm:m},u)=>e.createElement(Bn,{key:d,childrenForm:m,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:u%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};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),ge=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:d})=>d===i);if(l){const d=C()(r,["properties",l.value],[]),c=Ot(l,d);s.properties[i]=c}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 d=l.subjects,c=Vn(t,d);if(M()(c))return i;const m=Object.keys(c).reduce((u,f)=>{const{actionId:R,applyToProperties:$}=l,T=c[f].properties.map(({value:Z})=>Z).every(Z=>($||[]).indexOf(Z)===-1),h=St(s,R,f),I=Mt(r,C()(h,"conditions",[]));if(M()($)||T)return ge()(u,[f,R],{properties:{enabled:h!==void 0},conditions:I}),u;const D=Wn($,c[f],h);return ge()(u,[f,R],{...D,conditions:I}),u},{});return Fn()(i,m)},{});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},{}),Hn=(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 d=Hn(l,n,r);return s[i]=d,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(pe()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(pe()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Un=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(d,"category")},m={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(c.plugins,r,n),settings:Dt(c.settings,r,n)};return{initialData:m,modifiedData:m,layouts:c}},Gn=o(99381),et=o.n(Gn);const kt=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!x()(s,"conditions"))return{...n,[r]:kt(s)};if(Te()(s)&&x()(s,"conditions")&&!je(X()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=kt;const It=(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]:It(l,n,i==="fields")}:(s[i]=n,s)},{});var Ue=It;const zn={initialData:{},modifiedData:{},layouts:{}};var wn=(t,n)=>(0,Q.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(C()(t,d)).forEach(c=>{const m=C()(t,[...d,c,i],void 0);if(m){let u=Ue(m,l);if(!l&&u.conditions){const f=Ue(u.conditions,!1);u={...u,conditions:f}}ge()(r,[...d,c,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:d}=n;let c=et()(t.modifiedData);const m=s.split(".."),u=C()(c,m,{});Object.keys(u).forEach(f=>{if(x()(u[f],`properties.${i}`)){const R=C()(u,[f,"properties",i,l]),$=[...m,f,"properties",i,l];if(!Te()(R))ge()(c,$,d);else{const N=Ue(R,d);ge()(c,$,N)}}}),d||(c=tt(c)),ge()(r,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;ge()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),ge()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=et()(t.modifiedData);const c=C()(d,l,{}),m=Ue(c,i);ge()(d,l,m),i||(d=tt(d)),ge()(r,["modifiedData"],d);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),Yn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},Xn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=Yn(l);return i.push(c),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=Xn(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[d,c]=l;return i.properties[d]=Zt(c),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,d]=i;if(!je(d).some(u=>u))return s;if(!d?.properties?.enabled){const u=Qn(l,t,d);return[...s,u]}if(!d.properties.enabled)return s;const m=Jn(l,t,d);return s.push(m),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,d=qn(i,l);return[...r,...d]},[]),_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:d},c]=(0,e.useReducer)(wn,zn,()=>Un(t,r)),{formatMessage:m}=(0,B.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const k=(0,O.e5)(i.collectionTypes,d.collectionTypes),T=(0,O.e5)(i.singleTypes,d.singleTypes),h={...k,...T};let I;return M()(h)?I=!1:I=Object.values(h).some(D=>Object.values(D).some(Z=>x()(Z,"conditions"))),{permissionsToSend:_n(d),didUpdateConditions:I}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(k,T,h,I)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:k,propertyName:T,rowName:h,value:I})},f=(k,T,h)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:k,actionId:T,value:h})},R=k=>{c({type:"ON_CHANGE_CONDITIONS",conditions:k})},$=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:k,value:T})},[]),N=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:k,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:R,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(v.v,{id:"tabs",label:m({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(P.m,null,es.map(k=>e.createElement(P.O,{key:k.id},m({id:k.labelId,defaultMessage:k.defaultMessage})))),e.createElement(b.n,{style:{position:"relative"}},e.createElement(b.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(b.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(b.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(b.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(H,L,o){"use strict";o.r(L),o.d(L,{default:function(){return Y}});var e=o(32735),v=o(19565),P=o(15062),b=o(53038),O=o(30305),A=o(27649),x=o(82055),E=o(87933),M=o(41415),W=o(17e3),a=o(72850),B=o(29439),p=o(92802),S=o(67879),F=o(64499),g=o(86409),y=o(91720),V=o(1283),oe=o(49372),de=o(15335),re=o(5803),C=o(10369),me=o(33475),X=o(60216),G=o.n(X);const _=({disabled:ne,role:w,values:j,errors:Q,onChange:he,onBlur:pe})=>{const{formatMessage:J}=(0,S.Z)();return 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(oe.Z,{fontWeight:"bold"},w?w.name:J({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(oe.Z,{textColor:"neutral500",variant:"pi"},w?w.description:J({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(M.z,{disabled:!0,variant:"secondary"},J({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:w.usersCount}))),e.createElement(de.r,{gap:4},e.createElement(re.P,{col:6},e.createElement(C.o,{disabled:ne,name:"name",error:Q.name&&J({id:Q.name}),label:J({id:"global.name",defaultMessage:"Name"}),onChange:he,onBlur:pe,required:!0,value:j.name||""})),e.createElement(re.P,{col:6},e.createElement(me.g,{disabled:ne,label:J({id:"global.description",defaultMessage:"Description"}),id:"description",error:Q.name&&J({id:Q.name}),onChange:he,onBlur:pe},j.description||"")))))};_.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},_.propTypes={disabled:G().bool,errors:G().object.isRequired,onBlur:G().func.isRequired,onChange:G().func.isRequired,role:G().object,values:G().object};var Ce=_,be=o(24346),ae=be.Ry().shape({name:be.Z_().required(v.I0.required)}),Se=()=>{const ne=(0,v.lm)(),{formatMessage:w}=(0,S.Z)(),{params:{id:j}}=(0,b.$B)("/settings/roles/:id"),{put:Q}=(0,v.kY)(),[he,pe]=(0,e.useState)(!1),J=(0,e.useRef)(),{lockApp:ce,unlockApp:Ie}=(0,v.o1)(),{trackUsage:Be}=(0,v.rS)(),{formatAPIError:ve}=(0,v.So)(),{isLoading:Ze,data:Le}=(0,y.d)(j,{cacheTime:0}),{roles:[ye={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:He,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ee=async le=>{try{ce(),pe(!0);const{permissionsToSend:ue,didUpdateConditions:Ae}=J.current.getPermissions();await Q(`/admin/roles/${j}`,le),ye.code!=="strapi-super-admin"&&(await Q(`/admin/roles/${j}/permissions`,{permissions:ue}),Ae&&Be("didUpdateConditions")),J.current.setFormAfterSubmit(),await Fe(),ne({type:"success",message:{id:"notification.success.saved"}})}catch(ue){ne({type:"warning",message:ve(ue)})}finally{pe(!1),Ie()}},ie=!Me&&ye.code==="strapi-super-admin";return e.createElement(A.o,null,e.createElement(v.SL,{name:"Roles"}),e.createElement(p.J9,{enableReinitialize:!0,initialValues:{name:ye.name,description:ye.description},onSubmit:ee,validationSchema:ae,validateOnChange:!1},({handleSubmit:le,values:ue,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:le},e.createElement(x.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(M.z,{disabled:ye.code==="strapi-super-admin",onClick:le,loading:he,size:"L"},w({id:"global.save",defaultMessage:"Save"}))),title:w({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:w({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(v.rU,{startIcon:e.createElement(B.Z,null),to:"/settings/roles"},w({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:ie,errors:Ae,values:ue,onChange:ot,onBlur:Ne,role:ye}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(V.Z,{isFormDisabled:ie,permissions:He,ref:J,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.dO,null)))))))},Y=()=>{const ne=(0,P.v9)(O._),{isLoading:w,allowedActions:{canRead:j,canUpdate:Q}}=(0,v.ss)({read:ne.settings.roles.read,update:ne.settings.roles.update});return w?e.createElement(v.dO,null):!j&&!Q?e.createElement(b.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(H,L,o){"use strict";o.d(L,{d:function(){return P}});var e=o(19565),v=o(20108);const P=(b,O={})=>{const{get:A}=(0,e.kY)(),{data:x,error:E,isError:M,isLoading:W}=(0,v.useQuery)(["permissions",b],async()=>{const{data:{data:a}}=await A("/admin/permissions",{params:{role:b}});return a},O);return{data:x,error:E,isError:M,isLoading:W}}},84802:function(H){function L(o,e,v,P){for(var b=-1,O=o==null?0:o.length;++b<O;){var A=o[b];e(P,A,v(A),o)}return P}H.exports=L},62435:function(H,L,o){var e=o(56671);function v(P,b,O,A){return e(P,function(x,E,M){b(A,x,O(x),M)}),A}H.exports=v},85580:function(H,L,o){var e=o(84802),v=o(62435),P=o(88904),b=o(77236);function O(A,x){return function(E,M){var W=b(E)?e:v,a=x?x():{};return W(E,A,P(M,2),a)}}H.exports=O},72091:function(H,L,o){var e=o(40314),v=1/0;function P(b){var O=b==null?0:b.length;return O?e(b,v):[]}H.exports=P},81346:function(H,L,o){var e=o(40999),v=o(85580),P=Object.prototype,b=P.hasOwnProperty,O=v(function(A,x,E){b.call(A,E)?A[E].push(x):e(A,E,[x])});H.exports=O},83828:function(H,L,o){"use strict";o.d(L,{U:function(){return B},y:function(){return W}});var e=o(74512),v=o(32735),P=o(8471),b=o(91045),O=o(74971),A=o(49372),x=o(87933),E=o(72850);const M=({theme:p,expanded:S,variant:F,disabled:g,error:y})=>y?`1px solid ${p.colors.danger600} !important`:g?`1px solid ${p.colors.neutral150}`:S?`1px solid ${p.colors.primary600}`:F==="primary"?`1px solid ${p.colors.neutral0}`:`1px solid ${p.colors.neutral100}`,W=(0,P.ZP)(A.Z)``,a=(0,P.ZP)(E.x)`
|
|
216
|
+
`,Pt=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:m,onChangeSimpleCheckbox:u}=(0,G.$_)(),{formatMessage:f}=(0,B.Z)(),R=C()(c,i,{}),$=(0,e.useMemo)(()=>Object.keys(R).reduce((Z,te)=>(Z[te]=ze(R[te]),Z),{}),[R]),{hasAllActionsSelected:N,hasSomeActionsSelected:k}=Oe($),T=()=>{d(Z=>!Z)},h=()=>{d(!1)},I=Dn(s,c,i),D=Ln(C()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(p.x,null,e.createElement(y.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(p.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(p.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:Z=>{m({target:{name:i.join(".."),value:Z}})},indeterminate:k,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(y.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},I.map(({checkboxName:Z,value:te,action:U,displayName:q,hasConditions:K})=>e.createElement($n.P,{col:3,key:U},e.createElement(kn,{disabled:n,hasConditions:K},e.createElement(Rt.X,{name:Z,disabled:n,onValueChange:fe=>{u({target:{name:Z,value:fe}})},value:te},q))))),e.createElement(ae,{hasConditions:D,onClick:T}))),l&&e.createElement(ie,{headerBreadCrumbs:[t,r],actions:I,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 In=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:m}=(0,B.Z)(),u=()=>{d(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:ce()(f),description:`${m({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(p.x,{padding:6},t.map(({actions:R,subCategoryName:$,subCategoryId:N})=>e.createElement(In,{key:$,actions:R,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...c,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=d=>{i(d===s?null:d)};return e.createElement(p.x,{padding:6,background:"neutral0"},r.map(({category:d,categoryId:c,childrenForm:m},u)=>e.createElement(Bn,{key:d,childrenForm:m,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:u%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};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),ge=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:d})=>d===i);if(l){const d=C()(r,["properties",l.value],[]),c=Ot(l,d);s.properties[i]=c}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 d=l.subjects,c=Vn(t,d);if(M()(c))return i;const m=Object.keys(c).reduce((u,f)=>{const{actionId:R,applyToProperties:$}=l,T=c[f].properties.map(({value:Z})=>Z).every(Z=>($||[]).indexOf(Z)===-1),h=St(s,R,f),I=Mt(r,C()(h,"conditions",[]));if(M()($)||T)return ge()(u,[f,R],{properties:{enabled:h!==void 0},conditions:I}),u;const D=Wn($,c[f],h);return ge()(u,[f,R],{...D,conditions:I}),u},{});return Fn()(i,m)},{});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},{}),Hn=(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 d=Hn(l,n,r);return s[i]=d,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(pe()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(pe()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Un=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(d,"category")},m={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(c.plugins,r,n),settings:Dt(c.settings,r,n)};return{initialData:m,modifiedData:m,layouts:c}},Gn=o(99381),et=o.n(Gn);const kt=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!x()(s,"conditions"))return{...n,[r]:kt(s)};if(Te()(s)&&x()(s,"conditions")&&!je(X()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=kt;const It=(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]:It(l,n,i==="fields")}:(s[i]=n,s)},{});var Ue=It;const zn={initialData:{},modifiedData:{},layouts:{}};var wn=(t,n)=>(0,Q.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(C()(t,d)).forEach(c=>{const m=C()(t,[...d,c,i],void 0);if(m){let u=Ue(m,l);if(!l&&u.conditions){const f=Ue(u.conditions,!1);u={...u,conditions:f}}ge()(r,[...d,c,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:d}=n;let c=et()(t.modifiedData);const m=s.split(".."),u=C()(c,m,{});Object.keys(u).forEach(f=>{if(x()(u[f],`properties.${i}`)){const R=C()(u,[f,"properties",i,l]),$=[...m,f,"properties",i,l];if(!Te()(R))ge()(c,$,d);else{const N=Ue(R,d);ge()(c,$,N)}}}),d||(c=tt(c)),ge()(r,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;ge()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),ge()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=et()(t.modifiedData);const c=C()(d,l,{}),m=Ue(c,i);ge()(d,l,m),i||(d=tt(d)),ge()(r,["modifiedData"],d);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),Yn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},Xn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=Yn(l);return i.push(c),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=Xn(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[d,c]=l;return i.properties[d]=Zt(c),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,d]=i;if(!je(d).some(u=>u))return s;if(!d?.properties?.enabled){const u=Qn(l,t,d);return[...s,u]}if(!d.properties.enabled)return s;const m=Jn(l,t,d);return s.push(m),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,d=qn(i,l);return[...r,...d]},[]),_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:d},c]=(0,e.useReducer)(wn,zn,()=>Un(t,r)),{formatMessage:m}=(0,B.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const k=(0,O.e5)(i.collectionTypes,d.collectionTypes),T=(0,O.e5)(i.singleTypes,d.singleTypes),h={...k,...T};let I;return M()(h)?I=!1:I=Object.values(h).some(D=>Object.values(D).some(Z=>x()(Z,"conditions"))),{permissionsToSend:_n(d),didUpdateConditions:I}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(k,T,h,I)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:k,propertyName:T,rowName:h,value:I})},f=(k,T,h)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:k,actionId:T,value:h})},R=k=>{c({type:"ON_CHANGE_CONDITIONS",conditions:k})},$=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:k,value:T})},[]),N=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:k,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:R,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(v.v,{id:"tabs",label:m({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(P.m,null,es.map(k=>e.createElement(P.O,{key:k.id},m({id:k.labelId,defaultMessage:k.defaultMessage})))),e.createElement(b.n,{style:{position:"relative"}},e.createElement(b.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(b.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(b.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(b.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(H,L,o){"use strict";o.r(L),o.d(L,{default:function(){return Y}});var e=o(32735),v=o(45509),P=o(15062),b=o(53038),O=o(30305),A=o(27649),x=o(82055),E=o(87933),M=o(41415),W=o(17e3),a=o(72850),B=o(29439),p=o(92802),S=o(67879),F=o(64499),g=o(86409),y=o(91720),V=o(1283),oe=o(49372),de=o(15335),re=o(5803),C=o(10369),me=o(33475),X=o(60216),G=o.n(X);const _=({disabled:ne,role:w,values:j,errors:Q,onChange:he,onBlur:pe})=>{const{formatMessage:J}=(0,S.Z)();return 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(oe.Z,{fontWeight:"bold"},w?w.name:J({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(oe.Z,{textColor:"neutral500",variant:"pi"},w?w.description:J({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(M.z,{disabled:!0,variant:"secondary"},J({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:w.usersCount}))),e.createElement(de.r,{gap:4},e.createElement(re.P,{col:6},e.createElement(C.o,{disabled:ne,name:"name",error:Q.name&&J({id:Q.name}),label:J({id:"global.name",defaultMessage:"Name"}),onChange:he,onBlur:pe,required:!0,value:j.name||""})),e.createElement(re.P,{col:6},e.createElement(me.g,{disabled:ne,label:J({id:"global.description",defaultMessage:"Description"}),id:"description",error:Q.name&&J({id:Q.name}),onChange:he,onBlur:pe},j.description||"")))))};_.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},_.propTypes={disabled:G().bool,errors:G().object.isRequired,onBlur:G().func.isRequired,onChange:G().func.isRequired,role:G().object,values:G().object};var Ce=_,be=o(24346),ae=be.Ry().shape({name:be.Z_().required(v.I0.required)}),Se=()=>{const ne=(0,v.lm)(),{formatMessage:w}=(0,S.Z)(),{params:{id:j}}=(0,b.$B)("/settings/roles/:id"),{put:Q}=(0,v.kY)(),[he,pe]=(0,e.useState)(!1),J=(0,e.useRef)(),{lockApp:ce,unlockApp:Ie}=(0,v.o1)(),{trackUsage:Be}=(0,v.rS)(),{formatAPIError:ve}=(0,v.So)(),{isLoading:Ze,data:Le}=(0,y.d)(j,{cacheTime:0}),{roles:[ye={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:He,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ee=async le=>{try{ce(),pe(!0);const{permissionsToSend:ue,didUpdateConditions:Ae}=J.current.getPermissions();await Q(`/admin/roles/${j}`,le),ye.code!=="strapi-super-admin"&&(await Q(`/admin/roles/${j}/permissions`,{permissions:ue}),Ae&&Be("didUpdateConditions")),J.current.setFormAfterSubmit(),await Fe(),ne({type:"success",message:{id:"notification.success.saved"}})}catch(ue){ne({type:"warning",message:ve(ue)})}finally{pe(!1),Ie()}},ie=!Me&&ye.code==="strapi-super-admin";return e.createElement(A.o,null,e.createElement(v.SL,{name:"Roles"}),e.createElement(p.J9,{enableReinitialize:!0,initialValues:{name:ye.name,description:ye.description},onSubmit:ee,validationSchema:ae,validateOnChange:!1},({handleSubmit:le,values:ue,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:le},e.createElement(x.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(M.z,{disabled:ye.code==="strapi-super-admin",onClick:le,loading:he,size:"L"},w({id:"global.save",defaultMessage:"Save"}))),title:w({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:w({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(v.rU,{startIcon:e.createElement(B.Z,null),to:"/settings/roles"},w({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:ie,errors:Ae,values:ue,onChange:ot,onBlur:Ne,role:ye}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(V.Z,{isFormDisabled:ie,permissions:He,ref:J,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.dO,null)))))))},Y=()=>{const ne=(0,P.v9)(O._),{isLoading:w,allowedActions:{canRead:j,canUpdate:Q}}=(0,v.ss)({read:ne.settings.roles.read,update:ne.settings.roles.update});return w?e.createElement(v.dO,null):!j&&!Q?e.createElement(b.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(H,L,o){"use strict";o.d(L,{d:function(){return P}});var e=o(45509),v=o(20108);const P=(b,O={})=>{const{get:A}=(0,e.kY)(),{data:x,error:E,isError:M,isLoading:W}=(0,v.useQuery)(["permissions",b],async()=>{const{data:{data:a}}=await A("/admin/permissions",{params:{role:b}});return a},O);return{data:x,error:E,isError:M,isLoading:W}}},84802:function(H){function L(o,e,v,P){for(var b=-1,O=o==null?0:o.length;++b<O;){var A=o[b];e(P,A,v(A),o)}return P}H.exports=L},62435:function(H,L,o){var e=o(56671);function v(P,b,O,A){return e(P,function(x,E,M){b(A,x,O(x),M)}),A}H.exports=v},85580:function(H,L,o){var e=o(84802),v=o(62435),P=o(88904),b=o(77236);function O(A,x){return function(E,M){var W=b(E)?e:v,a=x?x():{};return W(E,A,P(M,2),a)}}H.exports=O},72091:function(H,L,o){var e=o(40314),v=1/0;function P(b){var O=b==null?0:b.length;return O?e(b,v):[]}H.exports=P},81346:function(H,L,o){var e=o(40999),v=o(85580),P=Object.prototype,b=P.hasOwnProperty,O=v(function(A,x,E){b.call(A,E)?A[E].push(x):e(A,E,[x])});H.exports=O},83828:function(H,L,o){"use strict";o.d(L,{U:function(){return B},y:function(){return W}});var e=o(74512),v=o(32735),P=o(8471),b=o(91045),O=o(74971),A=o(49372),x=o(87933),E=o(72850);const M=({theme:p,expanded:S,variant:F,disabled:g,error:y})=>y?`1px solid ${p.colors.danger600} !important`:g?`1px solid ${p.colors.neutral150}`:S?`1px solid ${p.colors.primary600}`:F==="primary"?`1px solid ${p.colors.neutral0}`:`1px solid ${p.colors.neutral100}`,W=(0,P.ZP)(A.Z)``,a=(0,P.ZP)(E.x)`
|
|
217
217
|
border: ${M};
|
|
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,c,e){e.d(c,{R:function(){return o}});var t=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,c,e){e.d(c,{R:function(){return o}});var t=e(45509),a=e(20108);function o(i={},E={}){const{id:r="",...s}=i,{get:g}=(0,t.kY)(),{data:l,isError:n,isLoading:m,refetch:f}=(0,a.useQuery)(["users",r,s],async()=>{const{data:{data:y}}=await g(`/admin/users/${r}`,{params:s});return y},E);let v=[];return r&&l?v=[l]:Array.isArray(l?.results)&&(v=l.results),{users:v,pagination:l?.pagination??null,isLoading:m,isError:n,refetch:f}}},28363:function(B,c,e){e.r(c),e.d(c,{default:function(){return re}});var t=e(32735),a=e(45509),o=e(15062),i=e(53038),E=e(30305),r=e(27649),s=e(82055),g=e(41415),l=e(17e3),n=e(72850),m=e(87933),f=e(49372),v=e(15335),y=e(5803),L=e(66456),O=e(29439),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),M=e(9592),Q=e(90869),ee=e(47577),te=e(18703),ae=e(32720);const se=async(A,u)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${A}`,u);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 J=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:A})=>{const{formatMessage:u}=(0,V.Z)(),{params:{id:C}}=(0,i.$B)("/settings/users/:id"),{push:T}=(0,i.k6)(),{setUserDisplayName:Z}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:X,unlockApp:b}=(0,a.o1)(),k=(0,M.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(d){const{status:p}=d.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(d,p)=>{X();try{const P=await se(C,Y()(d,"confirmPassword"));h({type:"success",message:u({id:"notification.success.saved",defaultMessage:"Saved"})});const R=a.I8.getUserInfo();if(C.toString()===R.id.toString()){a.I8.setUserInfo(P);const K=x()(d,"username")||(0,Q.Pp)(d.firstname,d.lastname);Z(K)}p.setValues(S()(d,J))}catch(P){const R=(0,Q.Iz)(P.response.data),K=Object.keys(R).reduce(($,D)=>($[D]=R[D].id,$),{});p.setErrors(K),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}b()},_=le||!k,de=_?{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,J)).reduce((d,p)=>p==="roles"?(d[p]=(W?.roles||[]).map(({id:P})=>P),d):(d[p]=W?.[p],d),{}),ce=z.username||(0,Q.Pp)(z.firstname,z.lastname),q=u(de,{name:ce});return _?t.createElement(r.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(s.T,{primaryAction:t.createElement(g.z,{disabled:!0,startIcon:t.createElement(L.Z,null),type:"button",size:"L"},u({id:"global.save",defaultMessage:"Save"})),title:q,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},u({id:"global.back",defaultMessage:"Back"}))}),t.createElement(l.D,null,t.createElement(a.dO,null))):t.createElement(r.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:ie,initialValues:z,validateOnChange:!1,validationSchema:ae.YM},({errors:d,values:p,handleChange:P,isSubmitting:R,dirty:K})=>t.createElement(a.l0,null,t.createElement(s.T,{primaryAction:t.createElement(g.z,{disabled:R||!A?!0:!K,startIcon:t.createElement(L.Z,null),loading:R,type:"submit",size:"L"},u({id:"global.save",defaultMessage:"Save"})),title:q,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},u({id:"global.back",defaultMessage:"Back"}))}),t.createElement(l.D,null,W?.registrationToken&&t.createElement(n.x,{paddingBottom:6},t.createElement(k,{registrationToken:W.registrationToken})),t.createElement(m.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(n.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(m.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},u({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(v.r,{gap:5},ne.map($=>$.map(D=>t.createElement(y.P,{key:D.name,...D.size},t.createElement(a.jm,{...D,disabled:!A,error:d[D.name],onChange:P,value:p[D.name]||""}))))))),t.createElement(n.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(m.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},u({id:"global.roles",defaultMessage:"User's role"})),t.createElement(v.r,{gap:5},t.createElement(y.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!A,error:d.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var oe=w,re=()=>{const A=(0,a.lm)(),u=(0,o.v9)(E._),C=t.useMemo(()=>({read:u.settings.users.read,update:u.settings.users.update}),[u.settings.users]),{isLoading:T,allowedActions:{canRead:Z,canUpdate:h}}=(0,a.ss)(C),{state:X}=(0,i.TH)(),b=X?.from??"/";return(0,t.useEffect)(()=>{T||!Z&&!h&&A({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,Z,h,A]),T?t.createElement(a.dO,null):!Z&&!h?t.createElement(i.l_,{to:b}):t.createElement(oe,{canUpdate:h})}},84024:function(B,c,e){var t=e(32735),a=e(50563),o=e(45509),i=e(47765),E=e(60216),r=e.n(E),s=e(67879);const g=({children:l,target:n})=>{const m=(0,o.lm)(),{formatMessage:f}=(0,s.Z)(),{copy:v}=(0,o.VP)(),y=f({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),L=async()=>{await v(n)&&m({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:y,noBorder:!0,icon:t.createElement(i.Z,null),onClick:L}),title:n,titleEllipsis:!0,subtitle:l,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};g.propTypes={children:r().oneOfType([r().element,r().string]).isRequired,target:r().string.isRequired},c.Z=g},47577:function(B,c,e){e.d(c,{A:function(){return s}});var t=e(32735),a=e(60216),o=e.n(a),i=e(67879),E=e(35231),r=e(84024);const s=({registrationToken:g})=>{const{formatMessage:l}=(0,i.Z)(),n=`${window.location.origin}${E.Z}auth/register?registrationToken=${g}`;return t.createElement(r.Z,{target:n},l({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};s.defaultProps={registrationToken:""},s.propTypes={registrationToken:o().string}},18703:function(B,c,e){var t=e(32735),a=e(68465),o=e(84967),i=e(45509),E=e(27169),r=e(60216),s=e.n(r),g=e(67879),l=e(20108),n=e(8471);const m=(0,n.F4)`
|
|
2
2
|
from {
|
|
3
3
|
transform: rotate(0deg);
|
|
4
4
|
}
|
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
}
|
|
8
8
|
`,f=n.ZP.div`
|
|
9
9
|
animation: ${m} 2s infinite linear;
|
|
10
|
-
`,v=()=>t.createElement(f,null,t.createElement(E.Z,null)),y=async()=>{const{get:O}=(0,i.tg)(),{data:I}=await O("/admin/roles");return I.data},L=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,l.useQuery)(["roles"],y,{staleTime:5e4}),{formatMessage:U}=(0,g.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(v,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:M=>{j({target:{name:"roles",value:M}})},placeholder:V,multi:!0,startIcon:G,value:x.map(M=>M.toString()),withTags:!0,required:!0},(Y||[]).map(M=>t.createElement(o.W,{key:M.id,value:M.id.toString()},U({id:`global.${M.code}`,defaultMessage:M.name}))))};L.defaultProps={disabled:!1,error:void 0},L.propTypes={disabled:s().bool,error:s().string,onChange:s().func.isRequired,value:s().array.isRequired},c.Z=L},32720:function(B,c,e){e.d(c,{YM:function(){return l},Rw:function(){return E}});var t=e(24346),a=e(
|
|
10
|
+
`,v=()=>t.createElement(f,null,t.createElement(E.Z,null)),y=async()=>{const{get:O}=(0,i.tg)(),{data:I}=await O("/admin/roles");return I.data},L=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,l.useQuery)(["roles"],y,{staleTime:5e4}),{formatMessage:U}=(0,g.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(v,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:M=>{j({target:{name:"roles",value:M}})},placeholder:V,multi:!0,startIcon:G,value:x.map(M=>M.toString()),withTags:!0,required:!0},(Y||[]).map(M=>t.createElement(o.W,{key:M.id,value:M.id.toString()},U({id:`global.${M.code}`,defaultMessage:M.name}))))};L.defaultProps={disabled:!1,error:void 0},L.propTypes={disabled:s().bool,error:s().string,onChange:s().func.isRequired,value:s().array.isRequired},c.Z=L},32720:function(B,c,e){e.d(c,{YM:function(){return l},Rw:function(){return E}});var t=e(24346),a=e(45509);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",(n,m)=>n?m.required(a.I0.required):m)};var E={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(n,m,f)=>n||m?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},s={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},l=t.Ry().shape({...o,isActive:t.Xg(),...s})},29439:function(B,c,e){e.d(c,{Z:function(){return o}});var t=e(74512);const a=i=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...i,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 c}});var e=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 c}});var e=t(45509),n=t(67879),i=t(20108);const c=(u={},A={})=>{const{id:R="",...M}=u,{get:B}=(0,e.kY)(),{locale:o}=(0,n.Z)(),j=(0,e.Xe)(o,{sensitivity:"base"}),{data:v,error:b,isError:d,isLoading:C,refetch:Q}=(0,i.useQuery)(["roles",R,M],async()=>{const{data:Z}=await B(`/admin/roles/${R??""}`,{params:M});return Z},A);let I=[];return R&&v?I=[v.data]:Array.isArray(v?.data)&&(I=v.data),{roles:I.sort((Z,V)=>j.compare(Z.name,V.name)),error:b,isError:d,isLoading:C,refetch:Q}}},32239:function(N,p,t){t.r(p),t.d(p,{default:function(){return ue}});var e=t(32735),n=t(45509),i=t(15062),c=t(30305),u=t(27649),A=t(82055),R=t(41415),M=t(99223),B=t(17e3),o=t(56755),j=t(73269),v=t(33827),b=t(94547),d=t(19786),C=t(49372),Q=t(3685),I=t(35658),Z=t(47765),V=t(68625),w=t(4038),Y=t(19406),k=t(67879),q=t(53038),_=t(86409),ee=()=>"todo empty role",te=t(87933),ne=t(72850),le=t(50563),ae=t(60216),T=t.n(ae);const H=({id:a,name:m,description:s,usersCount:y,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:L}=(0,k.Z)(),[,O]=r,g=L({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:y});return e.createElement(b.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:O.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(C.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(C.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(C.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,P)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:P===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};H.propTypes={id:T().number.isRequired,name:T().string.isRequired,description:T().string.isRequired,usersCount:T().number.isRequired,icons:T().array.isRequired,rowIndex:T().number.isRequired,canUpdate:T().bool},H.defaultProps={canUpdate:!1};var se=H,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:y})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[L,O]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:P,roleToDelete:z},U]=(0,e.useReducer)(ie,re),{post:X}=(0,n.tg)(),G=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await X("/admin/roles/batch-delete",{ids:[z]}),await y(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}x()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),S=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),x()},[]),x=()=>O(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),F=(0,e.useCallback)((l,D)=>{l.preventDefault(),l.stopPropagation(),D.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):S(D.id)},[E,S]),J=(0,e.useCallback)((l,D)=>{l.preventDefault(),l.stopPropagation(),K(D.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:D=>J(D,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(Z.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(V.Z,null)}]:[],...m?[{onClick:D=>F(D,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(w.Z,null)}]:[]],[r,F,J,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:L,showModalConfirmButtonLoading:P,handleToggleModal:x,handleDeleteData:G}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:y,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:L}}=(0,n.ss)(m.settings.roles),{roles:O,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!y&&E}),{handleNewRoleClick:P,getIcons:z,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:X,handleToggleModal:G,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:L}),$=O.length+1,S=6;if(y)return e.createElement(u.o,null,e.createElement(n.dO,null));const x=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(A.T,{primaryAction:r?e.createElement(R.z,{onClick:P,startIcon:e.createElement(Y.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:x,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(M.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:x})})}),E&&e.createElement(B.D,null,e.createElement(o.i,{colCount:S,rowCount:$,footer:r?e.createElement(j.c,{onClick:P,icon:e.createElement(Y.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(v.h,null,e.createElement(b.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(C.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(C.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(C.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(I.p,null,O?.map((f,F)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:z(f),rowIndex:F+2,canUpdate:L})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:X,onToggleDialog:G}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},99223:function(N,p,t){t.d(p,{Z:function(){return i}});var e=t(74512),n=t(87933);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})]})},73269:function(N,p,t){t.d(p,{c:function(){return B}});var e=t(74512),n=t(8471),i=t(72850),c=t(9026),u=t(87933),A=t(49372);const R=(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 l}});var t=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:p}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},p({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:p}=(0,a.So)(),[T,k]=(0,t.useState)(!1),V=(0,C.v9)(O._),{allowedActions:{canCreate:j,canDelete:x,canRead:R}}=(0,a.ss)(V.settings.users),y=(0,E.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,o.Z)(),{search:c}=(0,A.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:K,refetch:N}=(0,h.R)(v().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,g.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(f=>({...f,metadatas:{...f.metadatas,label:D(f.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(f=>!f)},Q=(0,E.useMutation)(async f=>{await i("/admin/users/batch-delete",{ids:f})},{async onSuccess(){await N(),await y.refetchQueries(ge)},onError(f){H({type:"warning",message:{id:"notification.error",message:p(f),defaultMessage:"An error occured"}})}});return w?t.createElement(n.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(l.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(r.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:f=>Q.mutateAsync([f]),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}))),T&&t.createElement(Be,{onSuccess:async()=>{await N(),await y.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,g.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),n=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 l}});var t=e(45509),n=e(20108);function l(r={},u={}){const{id:a="",...s}=r,{get:v}=(0,t.kY)(),{data:o,isError:E,isLoading:C,refetch:A}=(0,n.useQuery)(["users",a,s],async()=>{const{data:{data:g}}=await v(`/admin/users/${a}`,{params:s});return g},u);let h=[];return a&&o?h=[o]:Array.isArray(o?.results)&&(h=o.results),{users:h,pagination:o?.pagination??null,isLoading:C,isError:E,refetch:A}}},59092:function(B,m,e){var t=e(32735),n=e(72850),l=e(41415),r=e(45509),u=e(5644),a=e(60216),s=e.n(a),v=e(67879);const o=({displayedFilters:E})=>{const[C,A]=(0,t.useState)(!1),{formatMessage:h}=(0,v.Z)(),g=(0,t.useRef)(),O=()=>{A(W=>!W)};return t.createElement(t.Fragment,null,t.createElement(n.x,{paddingTop:1,paddingBottom:1},t.createElement(l.z,{variant:"tertiary",ref:g,startIcon:t.createElement(u.Z,null),onClick:O,size:"S"},h({id:"app.utils.filters",defaultMessage:"Filters"})),C&&t.createElement(r.J5,{displayedFilters:E,isVisible:C,onToggle:O,source:g})),t.createElement(r.W$,{filtersSchema:E}))};o.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=o},99528:function(B,m,e){e.d(m,{W:function(){return pe},Z:function(){return Ze}});var t=e(32735),n=e(27649),l=e(82055),r=e(99223),u=e(17e3),a=e(45509),s=e(33348),v=e.n(s),o=e(67879),E=e(20108),C=e(15062),A=e(53038),h=e(97108),g=e(9592),O=e(30305),W=e(59092),L=e(41415),ae=e(7961),se=e(60216),d=e.n(se);const q=({onClick:i})=>{const{formatMessage:p}=(0,o.Z)();return t.createElement(L.z,{onClick:i,startIcon:t.createElement(ae.Z,null),size:"S"},p({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};q.propTypes={onClick:d().func.isRequired};var Z=e(35658),ne=e(94547),J=e(19786),le=e(82884),b=e(49372),F=e(87933),P=e(50563),$=e(72850),fe=e(68625),Me=e(4038),re=e(90869);const oe=({canDelete:i,headers:p,entriesToDelete:T,onClickDelete:k,onSelectRow:V,withMainAction:j,withBulkActions:x,rows:R})=>{const{push:y,location:{pathname:H}}=(0,A.k6)(),{formatMessage:D}=(0,o.Z)();return t.createElement(Z.p,null,R.map(c=>{const z=T.findIndex(U=>U===c.id)!==-1;return t.createElement(ne.Tr,{key:c.id,...(0,a.X7)({fn:()=>y(`${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})}})),p.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:()=>y(`${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(85025),he=e(55225),Pe=e(31600),de=e(15335),ie=e(5803),De=e(11406),Ce=e(26858),Ae=e(51654),Oe=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:p})=>{const[T,k]=(0,t.useState)("create"),[V,j]=(0,t.useState)(!1),[x,R]=(0,t.useState)(null),{formatMessage:y}=(0,o.Z)(),H=(0,a.lm)(),{lockApp:D,unlockApp:c}=(0,a.o1)(),{post:z}=(0,a.kY)(),U=(0,g.c)(Ie,async()=>(await e.e(311).then(e.bind(e,40311))).ROLE_LAYOUT,{combine(M,S){return[...M,S]},defaultValue:[]}),Y=(0,g.c)(ue,async()=>(await e.e(311).then(e.bind(e,40311))).FORM_INITIAL_VALUES,{combine(M,S){return{...M,...S}},defaultValue:ue}),K=(0,g.c)(Le.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE),N=(0,E.useMutation)(M=>z("/admin/users",M),{async onSuccess({data:M}){R(M.data.registrationToken),await i(),te(),j(!1)},onError(M){throw j(!1),H({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),M},onSettled(){c()}}),w=y({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),ee=async(M,{setErrors:S})=>{D(),j(!0);try{await N.mutateAsync(M)}catch(G){c(),G?.response?.data?.error.message==="Email already taken"&&S({email:G.response.data.error.message})}},te=()=>{f?k(f):p()},{buttonSubmitLabel:_,isDisabled:Q,next:f}=Se[T],be=T==="create"?t.createElement(L.z,{type:"submit",loading:V},y(_)):t.createElement(L.z,{type:"button",loading:V,onClick:p},y(_));return K?t.createElement(ye.P,{onClose:p,labelledBy:"title"},t.createElement(he.x,null,t.createElement(Ce.O,{label:w},t.createElement(Ae.$,{isCurrent:!0},w))),t.createElement(Oe.J9,{enableReinitialize:!0,initialValues:Y,onSubmit:ee,validationSchema:Ue,validateOnChange:!1},({errors:M,handleChange:S,values:G})=>t.createElement(a.l0,null,t.createElement(Pe.f,null,t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},T!=="create"&&t.createElement(K,{registrationToken:x}),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},y({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(I=>t.createElement(ie.P,{key:I.name,...I.size},t.createElement(a.jm,{...I,disabled:Q,error:M[I.name],onChange:S,value:G[I.name]})))))))),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},y({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:M.roles,onChange:S,value:G.roles})),U.map(me=>me.map(I=>t.createElement(ie.P,{key:I.name,...I.size},t.createElement(a.jm,{...I,disabled:Q,onChange:S,value:G[I.name]}))))))))),t.createElement(De.m,{startActions:t.createElement(L.z,{variant:"tertiary",onClick:p,type:"button"},y({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:p}){return t.createElement(b.Z,{textColor:"neutral800"},i.map(T=>p({id:`Settings.permissions.users.${T.code}`,defaultMessage:T.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:p}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},p({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:p}=(0,a.So)(),[T,k]=(0,t.useState)(!1),V=(0,C.v9)(O._),{allowedActions:{canCreate:j,canDelete:x,canRead:R}}=(0,a.ss)(V.settings.users),y=(0,E.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,o.Z)(),{search:c}=(0,A.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:K,refetch:N}=(0,h.R)(v().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,g.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(f=>({...f,metadatas:{...f.metadatas,label:D(f.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(f=>!f)},Q=(0,E.useMutation)(async f=>{await i("/admin/users/batch-delete",{ids:f})},{async onSuccess(){await N(),await y.refetchQueries(ge)},onError(f){H({type:"warning",message:{id:"notification.error",message:p(f),defaultMessage:"An error occured"}})}});return w?t.createElement(n.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(l.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(r.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:f=>Q.mutateAsync([f]),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}))),T&&t.createElement(Be,{onSuccess:async()=>{await N(),await y.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,g.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),n=e(45509),l=e(15062),r=e(30305),u=e(99528);const a=()=>{const s=(0,l.v9)(r._);return t.createElement(n.O4,{permissions:s.settings.users.main},t.createElement(u.Z,null))};m.default=a},84024:function(B,m,e){var t=e(32735),n=e(50563),l=e(45509),r=e(47765),u=e(60216),a=e.n(u),s=e(67879);const v=({children:o,target:E})=>{const C=(0,l.lm)(),{formatMessage:A}=(0,s.Z)(),{copy:h}=(0,l.VP)(),g=A({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),O=async()=>{await h(E)&&C({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(l.Y_,{endAction:t.createElement(n.h,{label:g,noBorder:!0,icon:t.createElement(r.Z,null),onClick:O}),title:E,titleEllipsis:!0,subtitle:o,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};v.propTypes={children:a().oneOfType([a().element,a().string]).isRequired,target:a().string.isRequired},m.Z=v},47577:function(B,m,e){e.d(m,{A:function(){return s}});var t=e(32735),n=e(60216),l=e.n(n),r=e(67879),u=e(35231),a=e(84024);const s=({registrationToken:v})=>{const{formatMessage:o}=(0,r.Z)(),E=`${window.location.origin}${u.Z}auth/register?registrationToken=${v}`;return t.createElement(a.Z,{target:E},o({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};s.defaultProps={registrationToken:""},s.propTypes={registrationToken:l().string}},18703:function(B,m,e){var t=e(32735),n=e(68465),l=e(84967),r=e(45509),u=e(27169),a=e(60216),s=e.n(a),v=e(67879),o=e(20108),E=e(8471);const C=(0,E.F4)`
|
|
3
3
|
from {
|
|
4
4
|
transform: rotate(0deg);
|
|
5
5
|
}
|
package/build/{api-tokens-create-page.46c2ea84.chunk.js → api-tokens-create-page.e0c15627.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(45509),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.58139df9.chunk.js → api-tokens-edit-page.9f2dce47.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(45509),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}}]);
|
package/build/{api-tokens-list-page.0af7d431.chunk.js → api-tokens-list-page.d747051c.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(K,E,t){t.d(E,{Z:function(){return p}});var e=t(32735),a=t(35658),P=t(94547),u=t(19786),k=t(49372),V=t(87933),l=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(K,E,t){t.d(E,{Z:function(){return p}});var e=t(32735),a=t(35658),P=t(94547),u=t(19786),k=t(49372),V=t(87933),l=t(45509),b=t(60216),n=t.n(b),S=t(67879),I=t(53038),D=t(72850),O=t(50563),v=t(4038);const N=({tokenName:s,onClickDelete:i,tokenType:y})=>{const{formatMessage:g}=(0,S.Z)(),{trackUsage:T}=(0,l.rS)(),[f,c]=(0,e.useState)(!1),C=()=>{c(!1),T("willDeleteToken",{tokenType:y}),i()};return e.createElement(D.x,{paddingLeft:1,onClick:d=>d.stopPropagation()},e.createElement(O.h,{onClick:()=>{c(!0)},label:g({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${s}`}),name:"delete",noBorder:!0,icon:e.createElement(v.Z,null)}),e.createElement(l.QH,{onToggleDialog:()=>c(!1),onConfirm:C,isOpen:f}))};N.propTypes={tokenName:n().string.isRequired,onClickDelete:n().func.isRequired,tokenType:n().string.isRequired};var w=N,Q=t(54894),J=t(8471);const $={edit:{id:"app.component.table.edit",defaultMessage:"Edit {target}"},read:{id:"app.component.table.read",defaultMessage:"Read {target}"}},z=(0,J.ZP)(l.rU)`
|
|
2
2
|
svg {
|
|
3
3
|
path {
|
|
4
4
|
fill: ${({theme:s})=>s.colors.neutral500};
|
|
@@ -13,4 +13,4 @@
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
`,L=({tokenName:s,tokenId:i,buttonType:y,children:g})=>{const{formatMessage:T}=(0,S.Z)(),{location:{pathname:f}}=(0,I.k6)();return e.createElement(z,{to:`${f}/${i}`,title:T($[y],{target:s})},g)};L.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired,buttonType:n().string,children:n().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const m=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(Q.Z,null));m.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var U=m,F=t(68625);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(F.Z,null));A.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var H=A;const R=({permissions:s,headers:i,contentType:y,isLoading:g,tokens:T,onConfirmDelete:f,tokenType:c})=>{const{canDelete:C,canUpdate:d,canRead:B}=s,M=C||d||B,[{query:x}]=(0,l.Kx)(),{formatMessage:Z}=(0,S.Z)(),[,j]=x?x.sort.split(":"):"ASC",{push:W,location:{pathname:Y}}=(0,I.k6)(),{trackUsage:o}=(0,l.rS)(),X=T.sort((r,q)=>{const G=r.name.localeCompare(q.name);return j==="DESC"?-G:G});return e.createElement(l.tM,{headers:i,contentType:y,rows:T,withBulkActions:M,isLoading:g,onConfirmDelete:f},e.createElement(a.p,null,X.map(r=>e.createElement(P.Tr,{key:r.id,...(0,l.X7)({fn(){o("willEditTokenFromList",{tokenType:c}),W(`${Y}/${r.id}`)},condition:d})},e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},r.name)),e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(u.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.createdAt)}))),e.createElement(u.Td,null,r.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:Z({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),M&&e.createElement(u.Td,null,e.createElement(V.k,{justifyContent:"end"},d&&e.createElement(H,{tokenName:r.name,tokenId:r.id}),!d&&B&&e.createElement(U,{tokenName:r.name,tokenId:r.id}),C&&e.createElement(w,{tokenName:r.name,onClickDelete:()=>f(r.id),tokenType:c})))))))};R.propTypes={tokens:n().array,permissions:n().shape({canRead:n().bool,canDelete:n().bool,canUpdate:n().bool}).isRequired,headers:n().arrayOf(n().shape({cellFormatter:n().func,key:n().string.isRequired,metadatas:n().shape({label:n().string.isRequired,sortable:n().bool}).isRequired,name:n().string.isRequired})),contentType:n().string.isRequired,isLoading:n().bool,onConfirmDelete:n().func,tokenType:n().string.isRequired},R.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var p=R},49756:function(K,E,t){t.d(E,{Z:function(){return e},f:function(){return a}});const e="api-token",a="transfer-token"},22614:function(K,E,t){t.r(E),t.d(E,{default:function(){return L}});var e=t(32735),a=t(
|
|
16
|
+
`,L=({tokenName:s,tokenId:i,buttonType:y,children:g})=>{const{formatMessage:T}=(0,S.Z)(),{location:{pathname:f}}=(0,I.k6)();return e.createElement(z,{to:`${f}/${i}`,title:T($[y],{target:s})},g)};L.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired,buttonType:n().string,children:n().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const m=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(Q.Z,null));m.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var U=m,F=t(68625);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(F.Z,null));A.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var H=A;const R=({permissions:s,headers:i,contentType:y,isLoading:g,tokens:T,onConfirmDelete:f,tokenType:c})=>{const{canDelete:C,canUpdate:d,canRead:B}=s,M=C||d||B,[{query:x}]=(0,l.Kx)(),{formatMessage:Z}=(0,S.Z)(),[,j]=x?x.sort.split(":"):"ASC",{push:W,location:{pathname:Y}}=(0,I.k6)(),{trackUsage:o}=(0,l.rS)(),X=T.sort((r,q)=>{const G=r.name.localeCompare(q.name);return j==="DESC"?-G:G});return e.createElement(l.tM,{headers:i,contentType:y,rows:T,withBulkActions:M,isLoading:g,onConfirmDelete:f},e.createElement(a.p,null,X.map(r=>e.createElement(P.Tr,{key:r.id,...(0,l.X7)({fn(){o("willEditTokenFromList",{tokenType:c}),W(`${Y}/${r.id}`)},condition:d})},e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},r.name)),e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(u.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.createdAt)}))),e.createElement(u.Td,null,r.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:Z({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),M&&e.createElement(u.Td,null,e.createElement(V.k,{justifyContent:"end"},d&&e.createElement(H,{tokenName:r.name,tokenId:r.id}),!d&&B&&e.createElement(U,{tokenName:r.name,tokenId:r.id}),C&&e.createElement(w,{tokenName:r.name,onClickDelete:()=>f(r.id),tokenType:c})))))))};R.propTypes={tokens:n().array,permissions:n().shape({canRead:n().bool,canDelete:n().bool,canUpdate:n().bool}).isRequired,headers:n().arrayOf(n().shape({cellFormatter:n().func,key:n().string.isRequired,metadatas:n().shape({label:n().string.isRequired,sortable:n().bool}).isRequired,name:n().string.isRequired})),contentType:n().string.isRequired,isLoading:n().bool,onConfirmDelete:n().func,tokenType:n().string.isRequired},R.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var p=R},49756:function(K,E,t){t.d(E,{Z:function(){return e},f:function(){return a}});const e="api-token",a="transfer-token"},22614:function(K,E,t){t.r(E),t.d(E,{default:function(){return L}});var e=t(32735),a=t(45509),P=t(15062),u=t(30305),k=t(27649),V=t(82055),l=t(17e3),b=t(19406),n=t(33348),S=t.n(n),I=t(67879),D=t(20108),O=t(53038),v=t(49756),N=t(12584),Q=[{name:"name",key:"name",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.name",defaultMessage:"Name"},sortable:!0}},{name:"description",key:"description",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.description",defaultMessage:"Description"},sortable:!1}},{name:"createdAt",key:"createdAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.createdAt",defaultMessage:"Created at"},sortable:!1}},{name:"lastUsedAt",key:"lastUsedAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.lastUsedAt",defaultMessage:"Last used"},sortable:!1}}],$=()=>{(0,a.go)();const h=(0,D.useQueryClient)(),{formatMessage:m}=(0,I.Z)(),U=(0,a.lm)(),F=(0,P.v9)(u._),{allowedActions:{canCreate:A,canDelete:H,canUpdate:R,canRead:p}}=(0,a.ss)(F.settings["api-tokens"]),{push:s}=(0,O.k6)(),{trackUsage:i}=(0,a.rS)(),{startSection:y}=(0,a.c1)(),g=e.useRef(y),{get:T,del:f}=(0,a.kY)(),{formatAPIError:c}=(0,a.So)();e.useEffect(()=>{g.current&&g.current("apiTokens")},[]),e.useEffect(()=>{s({search:S().stringify({sort:"name:ASC"},{encode:!1})})},[s]);const C=Q.map(o=>({...o,metadatas:{...o.metadatas,label:m(o.metadatas.label)}})),{data:d,isLoading:B}=(0,D.useQuery)(["api-tokens"],async()=>{i("willAccessTokenList",{tokenType:v.Z});const{data:{data:o}}=await T("/admin/api-tokens");return i("didAccessTokenList",{number:o.length,tokenType:v.Z}),o},{cacheTime:0,enabled:p,onError(o){U({type:"warning",message:c(o)})}}),M=B,x=(0,D.useMutation)(async o=>{await f(`/admin/api-tokens/${o}`)},{async onSuccess(){await h.invalidateQueries(["api-tokens"]),i("didDeleteToken")},onError(o){U({type:"warning",message:c(o)})}}),Z=d&&d.length>0,j=p&&Z,W=p&&!Z&&!A,Y=p&&!Z&&A;return e.createElement(k.o,{"aria-busy":M},e.createElement(a.SL,{name:"API Tokens"}),e.createElement(V.T,{title:m({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:m({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:A&&e.createElement(a.Qj,{"data-testid":"create-api-token-button",startIcon:e.createElement(b.Z,null),size:"S",onClick:()=>i("willAddTokenFromList",{tokenType:v.Z}),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"}))}),e.createElement(l.D,null,!p&&e.createElement(a.ZF,null),j&&e.createElement(N.Z,{permissions:{canRead:p,canDelete:H,canUpdate:R},headers:C,contentType:"api-tokens",rows:d,isLoading:M,onConfirmDelete:o=>x.mutateAsync(o),tokens:d,tokenType:v.Z}),Y&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(a.Qj,{variant:"secondary",startIcon:e.createElement(b.Z,null),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),W&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},L=()=>{const h=(0,P.v9)(u._);return e.createElement(a.O4,{permissions:h.settings["api-tokens"].main},e.createElement($,null))}}}]);
|