@strapi/admin 4.14.5 → 4.15.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/StrapiApp.js +13 -12
- package/admin/src/components/AuthenticatedApp.tsx +187 -0
- package/admin/src/components/ConfigurationProvider.tsx +2 -1
- package/admin/src/components/GuidedTour/Homepage.tsx +111 -0
- package/admin/src/components/GuidedTour/Modal.tsx +303 -0
- package/admin/src/components/GuidedTour/Ornaments.tsx +74 -0
- package/admin/src/components/GuidedTour/Provider.tsx +253 -0
- package/admin/src/components/GuidedTour/{layout.js → constants.ts} +13 -3
- package/admin/src/components/LanguageProvider.tsx +1 -0
- package/admin/src/components/Providers.tsx +125 -0
- package/admin/src/components/RBACProvider.tsx +124 -0
- package/admin/src/components/Theme.tsx +4 -2
- package/admin/src/components/ThemeToggleProvider.tsx +23 -9
- package/admin/src/components/__mocks__/{LanguageProvider.js → LanguageProvider.ts} +2 -0
- package/admin/src/{constants.js → constants.ts} +48 -0
- package/admin/src/content-manager/components/BlocksEditor/Toolbar/index.js +75 -51
- package/admin/src/content-manager/components/BlocksEditor/hooks/useBlocksStore.js +72 -14
- package/admin/src/content-manager/pages/App/selectors.js +1 -1
- package/admin/src/content-manager/pages/App/useContentManagerInitData.js +3 -1
- package/admin/src/content-manager/pages/EditView/selectors.js +1 -1
- package/admin/src/content-manager/pages/EditViewLayoutManager/index.js +3 -1
- package/admin/src/content-manager/pages/ListView/components/Body/index.js +53 -56
- package/admin/src/content-manager/pages/ListView/components/BulkActionButtons/SelectedEntriesModal/index.js +5 -3
- package/admin/src/content-manager/pages/ListView/components/TableRows/index.js +1 -1
- package/admin/src/content-manager/pages/ListView/index.js +33 -50
- package/admin/src/content-manager/pages/ListView/selectors.js +1 -1
- package/admin/src/contexts/admin.ts +1 -0
- package/admin/src/contexts/apiTokenPermissions.tsx +64 -0
- package/admin/src/contexts/themeToggle.ts +3 -1
- package/admin/src/core/store/configure.ts +91 -0
- package/admin/src/core/store/hooks.ts +15 -0
- package/admin/src/hooks/index.js +0 -1
- package/admin/src/hooks/{useContentTypes/useContentTypes.js → useContentTypes.ts} +39 -16
- package/admin/src/hooks/useSettingsForm/index.js +14 -2
- package/admin/src/hooks/useSettingsMenu/constants.js +39 -0
- package/admin/src/index.js +2 -4
- package/admin/src/layouts/{AppLayout/index.js → AppLayout.tsx} +7 -10
- package/admin/src/layouts/UnauthenticatedLayout.tsx +77 -0
- package/admin/src/pages/Admin/index.js +11 -5
- package/admin/src/pages/App/index.js +7 -4
- package/admin/src/pages/App/selectors.js +1 -1
- package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +2 -1
- package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +2 -1
- package/admin/src/pages/AuthPage/components/Login/index.js +1 -1
- package/admin/src/pages/AuthPage/components/Oops/index.js +2 -1
- package/admin/src/pages/AuthPage/components/Register/index.js +1 -1
- package/admin/src/pages/AuthPage/components/ResetPassword/index.js +2 -1
- package/admin/src/pages/AuthPage/index.js +2 -3
- package/admin/src/pages/HomePage/index.js +6 -3
- package/admin/src/pages/{InternalErrorPage/index.js → InternalErrorPage.tsx} +10 -6
- package/admin/src/pages/{NotFoundPage/index.js → NotFoundPage.tsx} +9 -7
- package/admin/src/pages/ProfilePage/components/Preferences/index.js +23 -9
- package/admin/src/pages/ProfilePage/index.js +1 -1
- package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +20 -0
- package/admin/src/pages/SettingsPage/constants.js +33 -0
- package/admin/src/pages/SettingsPage/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ActionBoundRoutes/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Permissions/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/AuditLogs/SalesPage.js +50 -0
- package/admin/src/pages/SettingsPage/pages/ReviewWorkflows/SalesPage.js +53 -0
- package/admin/src/pages/SettingsPage/pages/SingleSignOn/SalesPage.js +53 -0
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +2 -1
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js +1 -1
- package/admin/src/pages/{UseCasePage/index.js → UseCasePage.tsx} +10 -12
- package/admin/src/translations/en.json +5 -0
- package/admin/src/utils/createRoute.tsx +54 -0
- package/admin/src/utils/formatAPIErrors.ts +18 -0
- package/admin/src/utils/getFullName.ts +3 -0
- package/admin/src/utils/{uniqueAdminHash.js → hashAdminUserEmail.ts} +6 -3
- package/admin/src/utils/makeUniqueRoutes.ts +11 -0
- package/build/{1049.9236e785.chunk.js → 1049.ecc10c97.chunk.js} +1 -1
- package/build/1217.96155682.chunk.js +35 -0
- package/build/{1227.e0f7447b.chunk.js → 1227.947ceaf9.chunk.js} +1 -1
- package/build/1306.2699df52.chunk.js +79 -0
- package/build/{1386.07f2bbb3.chunk.js → 1386.eabd8a1e.chunk.js} +1 -1
- package/build/{2379.b0bc4013.chunk.js → 2379.7ce8e110.chunk.js} +1 -1
- package/build/{2395.d37b1025.chunk.js → 2395.acb961a8.chunk.js} +3 -3
- package/build/{2801.12522720.chunk.js → 2801.4711ea5a.chunk.js} +1 -1
- package/build/{3019.0d74d080.chunk.js → 3019.fde2e1be.chunk.js} +2 -2
- package/build/3460.8644e608.chunk.js +146 -0
- package/build/{3483.8f1b25f8.chunk.js → 3483.db8c1520.chunk.js} +1 -1
- package/build/{4174.2c4f958e.chunk.js → 4174.49cedb6a.chunk.js} +1 -1
- package/build/4732.149f5f8f.chunk.js +1 -0
- package/build/{502.b845473a.chunk.js → 502.f536f78b.chunk.js} +1 -1
- package/build/{7464.91341b4f.chunk.js → 7464.579564ac.chunk.js} +1 -1
- package/build/7811.fdbe09af.chunk.js +103 -0
- package/build/{7897.dffa5ad5.chunk.js → 7897.63ba0a00.chunk.js} +1 -1
- package/build/{8276.e9698944.chunk.js → 8276.9abe4679.chunk.js} +3 -3
- package/build/8773.ee67141c.chunk.js +48 -0
- package/build/9077.2cc01ac8.chunk.js +105 -0
- package/build/{9218.306ad178.chunk.js → 9218.b2d367f8.chunk.js} +1 -1
- package/build/Admin-authenticatedApp.059dc48f.chunk.js +79 -0
- package/build/Admin_InternalErrorPage.06eeef20.chunk.js +1 -0
- package/build/Admin_homePage.56b9eb3f.chunk.js +81 -0
- package/build/{Admin_marketplace.0db78604.chunk.js → Admin_marketplace.d693a435.chunk.js} +1 -1
- package/build/{Admin_pluginsPage.1083f7f0.chunk.js → Admin_pluginsPage.ae2c872a.chunk.js} +1 -1
- package/build/Admin_profilePage.89099d5b.chunk.js +13 -0
- package/build/Admin_settingsPage.88c45586.chunk.js +12 -0
- package/build/{Upload_ConfigureTheView.3cfeb108.chunk.js → Upload_ConfigureTheView.44f28145.chunk.js} +1 -1
- package/build/admin-app.990e112f.chunk.js +69 -0
- package/build/{admin-edit-roles-page.556fac52.chunk.js → admin-edit-roles-page.4e1eb4a9.chunk.js} +3 -3
- package/build/admin-edit-users.5b91404e.chunk.js +10 -0
- package/build/{admin-roles-list.15918328.chunk.js → admin-roles-list.89dd94fe.chunk.js} +1 -1
- package/build/{admin-users.74fddc87.chunk.js → admin-users.7be4fc5f.chunk.js} +2 -2
- package/build/{api-tokens-create-page.c08ae118.chunk.js → api-tokens-create-page.571920e5.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.ce18efdc.chunk.js → api-tokens-edit-page.cbdc81b1.chunk.js} +1 -1
- package/build/{api-tokens-list-page.783b7569.chunk.js → api-tokens-list-page.de0c49e8.chunk.js} +2 -2
- package/build/audit-logs-sales-page.2955db88.chunk.js +1 -0
- package/build/{audit-logs-settings-page.12aeea8c.chunk.js → audit-logs-settings-page.b0cb5164.chunk.js} +1 -1
- package/build/content-manager.de7ae330.chunk.js +1241 -0
- package/build/{content-type-builder-list-view.38ed3935.chunk.js → content-type-builder-list-view.6c8d3213.chunk.js} +1 -1
- package/build/{content-type-builder-translation-en-json.43f9d7bc.chunk.js → content-type-builder-translation-en-json.74d80f18.chunk.js} +1 -1
- package/build/{content-type-builder.758a9d23.chunk.js → content-type-builder.0bc97051.chunk.js} +13 -23
- package/build/{email-settings-page.e08a587e.chunk.js → email-settings-page.07712efc.chunk.js} +1 -1
- package/build/en-json.5b907f67.chunk.js +1 -0
- package/build/{i18n-settings-page.3186e3e9.chunk.js → i18n-settings-page.5c34f012.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.f84563f1.js +2665 -0
- package/build/review-workflows-sales-page.f46a8f00.chunk.js +1 -0
- package/build/{review-workflows-settings-create-view.5cdc4d64.chunk.js → review-workflows-settings-create-view.d0544fb0.chunk.js} +1 -1
- package/build/{review-workflows-settings-edit-view.53bf7865.chunk.js → review-workflows-settings-edit-view.aabf49ef.chunk.js} +1 -1
- package/build/review-workflows-settings-list-view.8b0525ab.chunk.js +56 -0
- package/build/runtime~main.270fd45f.js +2 -0
- package/build/sso-sales-page.ef22e469.chunk.js +1 -0
- package/build/sso-settings-page.21e16ae4.chunk.js +1 -0
- package/build/{transfer-tokens-create-page.2662d519.chunk.js → transfer-tokens-create-page.3366204d.chunk.js} +1 -1
- package/build/{transfer-tokens-edit-page.f64d8d8c.chunk.js → transfer-tokens-edit-page.15cf0f73.chunk.js} +1 -1
- package/build/{transfer-tokens-list-page.e6fd5f87.chunk.js → transfer-tokens-list-page.0bc0e682.chunk.js} +2 -2
- package/build/{upload-settings.450a1de0.chunk.js → upload-settings.1319dca0.chunk.js} +1 -1
- package/build/{upload.0d53e7a3.chunk.js → upload.1ced11be.chunk.js} +1 -1
- package/build/{users-advanced-settings-page.4a1f1f6d.chunk.js → users-advanced-settings-page.8e657084.chunk.js} +1 -1
- package/build/{users-email-settings-page.ea81fe82.chunk.js → users-email-settings-page.e57745e5.chunk.js} +1 -1
- package/build/{users-providers-settings-page.10280cdb.chunk.js → users-providers-settings-page.55796d13.chunk.js} +1 -1
- package/build/{users-roles-settings-page.4a7158be.chunk.js → users-roles-settings-page.57079245.chunk.js} +1 -1
- package/build/webhook-edit-page.3a28b2e7.chunk.js +33 -0
- package/build/{webhook-list-page.f57285ca.chunk.js → webhook-list-page.ee80767b.chunk.js} +1 -1
- package/ee/admin/pages/AuthPage/components/Login/index.js +1 -1
- package/ee/admin/pages/AuthPage/components/Providers/index.js +2 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/selectors.js +1 -1
- package/ee/server/bootstrap.js +1 -1
- package/ee/server/controllers/admin.js +1 -1
- package/ee/server/controllers/user.js +1 -1
- package/ee/server/destroy.js +1 -1
- package/ee/server/register.js +1 -1
- package/ee/server/routes/utils.js +1 -1
- package/ee/server/services/audit-logs.js +1 -1
- package/ee/server/services/passport/sso.js +1 -1
- package/ee/server/services/passport.js +1 -1
- package/ee/server/services/seat-enforcement.js +1 -1
- package/ee/server/utils/sso-lock.js +1 -1
- package/ee/server/validation/role.js +1 -1
- package/ee/server/validation/user.js +1 -1
- package/package.json +15 -16
- package/server/controllers/admin.js +1 -1
- package/shared/entities.ts +1 -1
- package/shared/permissions.ts +35 -35
- package/shared/schema.ts +9 -0
- package/admin/src/components/AuthenticatedApp/index.js +0 -116
- package/admin/src/components/AuthenticatedApp/utils/api.js +0 -47
- package/admin/src/components/AuthenticatedApp/utils/checkLatestStrapiVersion.ts +0 -13
- package/admin/src/components/AuthenticatedApp/utils/fetchStrapiLatestRelease.ts +0 -19
- package/admin/src/components/GuidedTour/Homepage/components/Step.js +0 -61
- package/admin/src/components/GuidedTour/Homepage/components/Stepper.js +0 -61
- package/admin/src/components/GuidedTour/Homepage/index.js +0 -71
- package/admin/src/components/GuidedTour/Modal/components/Content.js +0 -66
- package/admin/src/components/GuidedTour/Modal/components/Modal.js +0 -72
- package/admin/src/components/GuidedTour/Modal/components/StepNumberWithPadding.js +0 -26
- package/admin/src/components/GuidedTour/Modal/components/Stepper.js +0 -118
- package/admin/src/components/GuidedTour/Modal/index.js +0 -94
- package/admin/src/components/GuidedTour/Modal/reducer.js +0 -29
- package/admin/src/components/GuidedTour/Stepper/StepLine.js +0 -29
- package/admin/src/components/GuidedTour/Stepper/StepNumber.js +0 -71
- package/admin/src/components/GuidedTour/constants.js +0 -3
- package/admin/src/components/GuidedTour/index.js +0 -102
- package/admin/src/components/GuidedTour/init.js +0 -37
- package/admin/src/components/GuidedTour/reducer.js +0 -50
- package/admin/src/components/GuidedTour/utils/arePreviousSectionsDone.js +0 -13
- package/admin/src/components/GuidedTour/utils/arePreviousStepsDone.js +0 -12
- package/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js +0 -6
- package/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js +0 -34
- package/admin/src/components/Providers/index.js +0 -156
- package/admin/src/components/RBACProvider/actions.js +0 -10
- package/admin/src/components/RBACProvider/constants.js +0 -2
- package/admin/src/components/RBACProvider/index.js +0 -39
- package/admin/src/components/RBACProvider/reducer.js +0 -51
- package/admin/src/contexts/ApiTokenPermissions/index.js +0 -25
- package/admin/src/core/store/configureStore.js +0 -47
- package/admin/src/exposedHooks.js +0 -27
- package/admin/src/hooks/useContentTypes/index.js +0 -1
- package/admin/src/injectionZones.js +0 -25
- package/admin/src/layouts/UnauthenticatedLayout/LocaleToggle/index.js +0 -29
- package/admin/src/layouts/UnauthenticatedLayout/index.js +0 -55
- package/admin/src/reducers.js +0 -23
- package/admin/src/utils/checkFormValidity.js +0 -15
- package/admin/src/utils/createRoute.js +0 -50
- package/admin/src/utils/formatAPIErrors.js +0 -17
- package/admin/src/utils/getAttributesToDisplay.js +0 -19
- package/admin/src/utils/getExistingActions.js +0 -32
- package/admin/src/utils/getFullName.js +0 -9
- package/admin/src/utils/index.js +0 -9
- package/admin/src/utils/makeUniqueRoutes.js +0 -6
- package/admin/src/utils/sortLinks.js +0 -5
- package/build/1222.fe92c653.chunk.js +0 -35
- package/build/2225.a2147b8f.chunk.js +0 -79
- package/build/3021.33ad47fb.chunk.js +0 -103
- package/build/6373.1a21d665.chunk.js +0 -105
- package/build/8894.5ca4852a.chunk.js +0 -26
- package/build/9302.550cf5b7.chunk.js +0 -146
- package/build/Admin-authenticatedApp.e897fccb.chunk.js +0 -79
- package/build/Admin_InternalErrorPage.e2431a95.chunk.js +0 -1
- package/build/Admin_homePage.71ef8d06.chunk.js +0 -81
- package/build/Admin_profilePage.61704b7d.chunk.js +0 -13
- package/build/Admin_settingsPage.39cb9fca.chunk.js +0 -111
- package/build/admin-app.06f5e70a.chunk.js +0 -69
- package/build/admin-edit-users.64fd1318.chunk.js +0 -10
- package/build/content-manager.2e3f660b.chunk.js +0 -1220
- package/build/en-json.bd611a8e.chunk.js +0 -1
- package/build/main.00ea6f5a.js +0 -2665
- package/build/review-workflows-settings-list-view.b4a8aefb.chunk.js +0 -56
- package/build/runtime~main.e3bf3980.js +0 -2
- package/build/sso-settings-page.6a35d473.chunk.js +0 -1
- package/build/webhook-edit-page.65ac30ee.chunk.js +0 -33
- /package/admin/src/hooks/{useContentTypes/__mocks__/index.js → __mocks__/useContentTypes.ts} +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{31557:function(A,d,t){"use strict";t.d(d,{iL:function(){return M},nt:function(){return c},xW:function(){return y}});var e=t(74512),o=t(32735),p=t(58732),f=t.n(p),l=t(78023);const g=o.createContext({changeLocale:()=>{throw new Error("LocalesContext: changeLocale() is not implemented")},localeNames:{}}),c=()=>o.useContext(g),y="strapi-admin-language",M=({children:j,localeNames:D,messages:R})=>{const[{locale:b},m]=o.useReducer(_,L,()=>{const se=window.localStorage.getItem(y);return se&&D[se]?{locale:se,localeNames:D}:{locale:"en",localeNames:D}});o.useEffect(()=>{window.localStorage.setItem(y,b),document.documentElement.setAttribute("lang",b)},[b]);const a=o.useCallback(se=>{m({type:"CHANGE_LOCALE",locale:se})},[]),x=f()(R[b],R.en),Q=o.useMemo(()=>({changeLocale:a,localeNames:D}),[a,D]);return(0,e.jsx)(l.Z,{locale:b,defaultLocale:"en",messages:x,textComponent:"span",children:(0,e.jsx)(g.Provider,{value:Q,children:j})})},L={localeNames:{en:"English"},locale:"en"},_=(j=L,D)=>{switch(D.type){case"CHANGE_LOCALE":{const{locale:R}=D;return j.localeNames[R]?{...j,locale:R}:j}default:return j}}},49270:function(A,d,t){"use strict";t.d(d,{$:function(){return Ce},b:function(){return ge}});var e=t(74512),o=t(32735),p=t(750),f=t(65696),l=t(84642),g=t(8365),c=t(77981),y=t(14763),M=t(99391),L=t(99320),_=t(37561),j=t(15367),D=t(91779),R=t(96192),b=t(98610),m=t(92802),a=t(67879),x=t(20108),Q=t(8471),se=t(24346);const Ae=(0,Q.ZP)(p.g)`
|
|
2
|
+
height: ${32/16}rem;
|
|
3
|
+
width: ${32/16}rem;
|
|
4
|
+
|
|
5
|
+
> label,
|
|
6
|
+
~ input {
|
|
7
|
+
display: block;
|
|
8
|
+
position: absolute;
|
|
9
|
+
top: 0;
|
|
10
|
+
left: 0;
|
|
11
|
+
right: 0;
|
|
12
|
+
bottom: 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
> label {
|
|
16
|
+
color: inherit;
|
|
17
|
+
cursor: pointer;
|
|
18
|
+
padding: ${({theme:C})=>C.spaces[2]};
|
|
19
|
+
text-align: center;
|
|
20
|
+
vertical-align: middle;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&:hover,
|
|
24
|
+
&:focus-within {
|
|
25
|
+
background-color: ${({theme:C})=>C.colors.neutral0};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
&:active,
|
|
29
|
+
&.selected {
|
|
30
|
+
color: ${({theme:C})=>C.colors.primary700};
|
|
31
|
+
background-color: ${({theme:C})=>C.colors.neutral0};
|
|
32
|
+
border-color: ${({theme:C})=>C.colors.primary700};
|
|
33
|
+
}
|
|
34
|
+
`,ye={postResponse:90*24*60*60*1e3,postFirstDismissal:7*24*60*60*1e3,postSubsequentDismissal:90*24*60*60*1e3,display:5*60*1e3},ve=[...Array(11).keys()],Le=C=>{const{enabled:H,lastResponseDate:ne,firstDismissalDate:ce,lastDismissalDate:fe}=C;return window.strapi.flags.nps===!1||H===!1?!1:ne?Date.now()-new Date(ne).getTime()>=ye.postResponse:fe?Date.now()-new Date(fe).getTime()>=ye.postSubsequentDismissal:ce?Date.now()-new Date(ce).getTime()>=ye.postFirstDismissal:!0},ge=()=>{const C=(0,Q.Fg)(),{formatMessage:H}=(0,a.Z)(),{npsSurveySettings:ne,setNpsSurveySettings:ce}=Ce(),[fe,Te]=o.useState(!1),We=(0,R.lm)(),{currentEnvironment:Ee,strapiVersion:Se}=(0,R.L7)(),{mutate:Ze,isLoading:Ke}=(0,x.useMutation)(async G=>{const ee=await fetch("https://analytics.strapi.io/submit-nps",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(G)});if(!ee.ok)throw new Error("Failed to submit NPS survey");return ee},{onSuccess(){ce(G=>({...G,lastResponseDate:new Date().toString(),firstDismissalDate:null,lastDismissalDate:null})),Te(!0),setTimeout(()=>{je(!1)},3e3)},onError(){We({type:"warning",message:H({id:"notification.error",defaultMessage:"An error occurred"})})}}),[Ne,je]=o.useState(Le(ne)),[_e,He]=o.useState(!1);if(o.useEffect(()=>{const G=setTimeout(()=>{He(!0)},ye.display);return()=>{clearTimeout(G)}},[]),!_e||!Ne)return null;const Fe=({npsSurveyRating:G,npsSurveyFeedback:ee})=>{const Pe=R.I8.getUserInfo();Ze({email:typeof Pe=="object"&&Pe!==null?Pe.email:"",rating:G,comment:ee,environment:Ee,version:Se,license:window.strapi.projectType})},Ve=()=>{ce(G=>{const ee={...G,lastResponseDate:null};return G.firstDismissalDate?ee.lastDismissalDate=new Date().toString():ee.firstDismissalDate=new Date().toString(),ee}),je(!1)};return(0,e.jsx)(f.h,{children:(0,e.jsx)(m.J9,{initialValues:{npsSurveyFeedback:"",npsSurveyRating:null},onSubmit:Fe,validationSchema:se.Ry({npsSurveyFeedback:se.Z_(),npsSurveyRating:se.Rx().required()}),children:({values:G,handleChange:ee,setFieldValue:Pe})=>(0,e.jsx)(m.l0,{name:"npsSurveyForm",children:(0,e.jsx)(l.k,{hasRadius:!0,direction:"column",padding:4,borderColor:"primary200",background:"neutral0",shadow:"popupShadow",position:"fixed",bottom:0,left:"50%",transform:"translateX(-50%)",zIndex:C.zIndices[2],width:"50%",children:fe?(0,e.jsx)(g.Z,{fontWeight:"semiBold",children:H({id:"app.components.NpsSurvey.feedback-response",defaultMessage:"Thank you very much for your feedback!"})}):(0,e.jsxs)(c.x,{as:"fieldset",width:"100%",children:[(0,e.jsxs)(l.k,{justifyContent:"space-between",width:"100%",children:[(0,e.jsx)(c.x,{marginLeft:"auto",marginRight:"auto",children:(0,e.jsx)(g.Z,{fontWeight:"semiBold",as:"legend",children:H({id:"app.components.NpsSurvey.banner-title",defaultMessage:"How likely are you to recommend Strapi to a friend or colleague?"})})}),(0,e.jsx)(y.h,{onClick:Ve,"aria-label":H({id:"app.components.NpsSurvey.dismiss-survey-label",defaultMessage:"Dismiss survey"}),icon:(0,e.jsx)(b.Z,{})})]}),(0,e.jsxs)(l.k,{gap:2,marginTop:2,marginBottom:2,justifyContent:"center",children:[(0,e.jsx)(g.Z,{variant:"pi",textColor:"neutral600",children:H({id:"app.components.NpsSurvey.no-recommendation",defaultMessage:"Not at all likely"})}),ve.map(Me=>(0,e.jsx)(Ae,{className:G.npsSurveyRating===Me?"selected":void 0,hasRadius:!0,background:"primary100",borderColor:"primary200",color:"primary600",position:"relative",cursor:"pointer",children:(0,e.jsxs)(M.Q,{htmlFor:`nps-survey-rating-${Me}-input`,children:[(0,e.jsx)(L.T,{children:(0,e.jsx)(_._,{type:"radio",id:`nps-survey-rating-${Me}-input`,name:"npsSurveyRating",checked:G.npsSurveyRating===Me,onChange:Ge=>Pe("npsSurveyRating",parseInt(Ge.target.value,10)),value:Me})}),Me]})},Me)),(0,e.jsx)(g.Z,{variant:"pi",textColor:"neutral600",children:H({id:"app.components.NpsSurvey.happy-to-recommend",defaultMessage:"Extremely likely"})})]}),G.npsSurveyRating!==null&&(0,e.jsxs)(l.k,{direction:"column",children:[(0,e.jsx)(c.x,{marginTop:2,children:(0,e.jsx)(M.Q,{htmlFor:"npsSurveyFeedback",fontWeight:"semiBold",fontSize:2,children:H({id:"app.components.NpsSurvey.feedback-question",defaultMessage:"Do you have any suggestion for improvements?"})})}),(0,e.jsx)(c.x,{width:"62%",marginTop:3,marginBottom:4,children:(0,e.jsx)(j.g,{id:"npsSurveyFeedback",width:"100%",onChange:ee,children:G.npsSurveyFeedback})}),(0,e.jsx)(D.z,{marginBottom:2,type:"submit",loading:Ke,children:H({id:"app.components.NpsSurvey.submit-feedback",defaultMessage:"Submit Feedback"})})]})]})})})})})};function Ce(){const[C,H]=(0,R.Yw)("STRAPI_NPS_SURVEY_SETTINGS",{enabled:!0,lastResponseDate:null,firstDismissalDate:null,lastDismissalDate:null});return{npsSurveySettings:C,setNpsSurveySettings:H}}},15486:function(A,d,t){"use strict";t.d(d,{_d:function(){return j},rU:function(){return g}});var e=t(74512),o=t(32735),p=t(96192),f=t(97889),l=t(1458);const g=({children:D,permissions:R,refetchPermissions:b})=>{const m=(0,l.ix)(x=>x.rbacProvider.allPermissions),a=(0,l.zL)();return o.useEffect(()=>(a(_(R)),()=>{a(L())}),[R,a]),m?(0,e.jsx)(p.RM.Provider,{value:{allPermissions:m,refetchPermissions:b},children:D}):(0,e.jsx)(p.dO,{})},c={allPermissions:null,collectionTypesRelatedPermissions:{}},y="StrapiAdmin/RBACProvider/RESET_STORE",M="StrapiAdmin/RBACProvider/SET_PERMISSIONS",L=()=>({type:y}),_=D=>({type:M,permissions:D}),j=(D=c,R)=>(0,f.ZP)(D,b=>{switch(R.type){case M:{b.allPermissions=R.permissions,b.collectionTypesRelatedPermissions=R.permissions.filter(m=>m.subject).reduce((m,a)=>{const{subject:x,action:Q}=a;return x&&(m[x]||(m[x]={}),m[x]=m[x][Q]?{...m[x],[Q]:[...m[x][Q],a]}:{...m[x],[Q]:[a]}),m},{});break}case y:return c;default:return D}})},1211:function(A,d,t){"use strict";t.d(d,{T:function(){return l}});var e=t(74512),o=t(8471),p=t(60505);const f=o.ZP.img`
|
|
35
|
+
height: ${72/16}rem;
|
|
36
|
+
`,l=()=>{const{logos:{auth:g}}=(0,p.m)();return(0,e.jsx)(f,{src:g?.custom??g.default,"aria-hidden":!0,alt:""})}},51314:function(A,d,t){"use strict";t.d(d,{HOOKS:function(){return o},N:function(){return p},s:function(){return e}});const e={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}]}}},o={INJECT_COLUMN_IN_TABLE:"Admin/CM/pages/ListView/inject-column-in-table",MUTATE_COLLECTION_TYPES_LINKS:"Admin/CM/pages/App/mutate-collection-types-links",MUTATE_EDIT_VIEW_LAYOUT:"Admin/CM/pages/EditView/mutate-edit-view-layout",MUTATE_SINGLE_TYPES_LINKS:"Admin/CM/pages/App/mutate-single-types-links"},p={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[],publishModalAdditionalInfos:[],unpublishModalAdditionalInfos:[]}}}},29192:function(A,d,t){"use strict";t.d(d,{A:function(){return p},u:function(){return o}});var e=t(32735);const o=e.createContext({getAdminInjectedComponents(){throw new Error("AdminContext: getAdminInjectedComponents() not implemented")}}),p=()=>e.useContext(o)},60026:function(A,d,t){"use strict";t.d(d,{_:function(){return o}});var e=t(32735);const o=(0,e.createContext)({logos:{auth:{default:""},menu:{default:""}},showTutorials:!1,showReleaseNotification:!1,updateProjectSettings:()=>{throw new Error("updateProjectSettings was not implemented")}})},45777:function(A,d,t){"use strict";t.d(d,{R:function(){return o}});var e=t(32735);const o=(0,e.createContext)({})},1458:function(A,d,t){"use strict";t.d(d,{ix:function(){return f},zL:function(){return o}});var e=t(40986);const o=e.I0,p=null,f=e.v9,l=g=>createSelector(c=>c,g)},60505:function(A,d,t){"use strict";t.d(d,{m:function(){return p}});var e=t(32735),o=t(60026);const p=()=>(0,e.useContext)(o._)},40957:function(A,d,t){"use strict";t.d(d,{c:function(){return f}});var e=t(32735),o=t(96192);function p(){return window.strapi.isEE}function f(l,g,{defaultValue:c=null,combine:y=(L,_)=>_,enabled:M=!0}={}){const L=(0,o.W6)(g),_=(0,o.W6)(y),[{data:j},D]=e.useState({data:p()&&M?c:l});return e.useEffect(()=>{async function R(){const b=await L();D({data:_(l,b)})}p()&&M&&R()},[l,L,_,M]),j}},23816:function(A,d,t){"use strict";t.d(d,{M:function(){return p}});var e=t(32735),o=t(45777);const p=()=>(0,e.useContext)(o.R)},74338:function(A,d,t){"use strict";t.d(d,{Md:function(){return j},bU:function(){return _},sg:function(){return M}});var e=t(74512),o=t(77981),p=t(84642),f=t(4987),l=t(67879),g=t(8471),c=t(31557);const y=(0,g.ZP)(o.x)`
|
|
37
|
+
margin: 0 auto;
|
|
38
|
+
width: 552px;
|
|
39
|
+
`,M=(0,g.ZP)(p.k)`
|
|
40
|
+
flex-direction: column;
|
|
41
|
+
`,L=()=>{const{changeLocale:D,localeNames:R}=(0,c.nt)(),{formatMessage:b,locale:m}=(0,l.Z)();return(0,e.jsx)(f.q4,{"aria-label":b({id:"global.localeToggle.label",defaultMessage:"Select interface language"}),value:m,onChange:a=>{D(a)},children:Object.entries(R).map(([a,x])=>(0,e.jsx)(f.ag,{value:a,children:x},a))})},_=({children:D})=>(0,e.jsx)(y,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",children:D}),j=({children:D})=>(0,e.jsxs)("div",{children:[(0,e.jsx)(p.k,{as:"header",justifyContent:"flex-end",children:(0,e.jsx)(o.x,{paddingTop:6,paddingRight:8,children:(0,e.jsx)(L,{})})}),(0,e.jsx)(o.x,{paddingTop:2,paddingBottom:11,children:D})]})},74580:function(A,d,t){"use strict";t.r(d),t.d(d,{NotFoundPage:function(){return _}});var e=t(74512),o=t(95162),p=t(64092),f=t(56932),l=t(80564),g=t(18101),c=t(96192),y=t(25919),M=t(29213),L=t(67879);const _=()=>{const{formatMessage:j}=(0,L.Z)();return(0,c.go)(),(0,e.jsxs)(o.o,{labelledBy:"title",children:[(0,e.jsx)(p.T,{id:"title",title:j({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),(0,e.jsx)(f.D,{children:(0,e.jsx)(l.x,{action:(0,e.jsx)(g.Q,{variant:"secondary",endIcon:(0,e.jsx)(y.Z,{}),to:"/",children: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:(0,e.jsx)(M.Z,{width:"10rem"}),shadow:"tableShadow"})})]})}},51374:function(A,d,t){"use strict";t.d(d,{o:function(){return g}});var e=t(74512),o=t(32735),p=t(96192),f=t(53038);const l=({loadComponent:c})=>{const[y,M]=o.useState(null);return o.useEffect(()=>{(async()=>{try{const _=await c();typeof _=="function"?M(()=>_):_.default&&M(()=>_.default)}catch{}})()},[c]),y?(0,e.jsx)(y,{}):(0,e.jsx)(p.dO,{})},g=(c,y,M=!1)=>(0,e.jsx)(f.AW,{render:()=>(0,e.jsx)(l,{loadComponent:c}),path:y,exact:M||!1},y)},83923:function(A,d,t){"use strict";t.d(d,{I:function(){return e}});const e=({data:o})=>{try{return Object.keys(o).reduce((p,f)=>{const l=o[f][0];return p[f]={id:l,defaultMessage:l},p},{})}catch{return{}}}},45898:function(A,d,t){"use strict";t.d(d,{W:function(){return e}});function e(o){return o.filter((p,f,l)=>l.findIndex(g=>g.key===p.key)===f)}},66596:function(A,d,t){"use strict";t.r(d),t.d(d,{default:function(){return cn}});var e=t(32735),o=t(41865),p=t(88492),f=t(56784),l=t.n(f),g=t(93839),c=t.n(g),y=t(86349),M=t.n(y),L=t(88423),_=t.n(L),j=t(74758),D=t(14911),R=t(47750),b=t(31557),m=t(74512),a=t(96192),x=t(20108),Q=t(40986),se=t(29192),Ae=t(60026);const ye=({children:r,authLogo:n,menuLogo:s,showReleaseNotification:i=!1,showTutorials:u=!1})=>{const[{menuLogo:T,authLogo:E},h]=e.useState({menuLogo:null,authLogo:null}),v=e.useCallback(({menuLogo:U,authLogo:S})=>{h({menuLogo:U||s,authLogo:S||n})},[n,s]),O=e.useMemo(()=>({logos:{menu:{custom:T,default:s},auth:{custom:E,default:n}},updateProjectSettings:v,showReleaseNotification:i,showTutorials:u}),[T,s,E,n,v,i,u]);return(0,m.jsx)(Ae._.Provider,{value:O,children:r})};var ve=t(97889),Le=t(33795),ge=t.n(Le),Ce=t(3040),C=t.n(Ce);const H=({children:r})=>{const[{currentStep:n,guidedTourState:s,isGuidedTourVisible:i,isSkipped:u},T]=e.useReducer(ce,ne,fe),E=S=>{if(S!==null){const F=ge()(s,S),[$,P]=S.split("."),Y=Object.entries(s[$]),X=Y.findIndex(([I])=>I===P),pe=Y.slice(0,X).every(([,I])=>I);if(F||u||!pe)return null}return a.I8.set(null,"GUIDED_TOUR_CURRENT_STEP",!0),T({type:"SET_CURRENT_STEP",step:S})},h=S=>{T({type:"SET_GUIDED_TOUR_VISIBILITY",value:S})},v=(S,F)=>{Te(S),T({type:"SET_STEP_STATE",currentStep:S,value:F})},O=S=>{const F=s[S];if(F){const $=Object.entries(s),P=$.findIndex(([I])=>I===S),X=$.slice(0,P).every(([,I])=>Object.values(I).every(Boolean)),[me]=Object.keys(F),pe=F[me];X&&!n&&!pe&&E(`${S}.${me}`)}},U=S=>{a.I8.set(S,"GUIDED_TOUR_SKIPPED",!0),T({type:"SET_SKIPPED",value:S})};return(0,m.jsx)(a.Zc,{guidedTourState:s,currentStep:n,setCurrentStep:E,setGuidedTourVisibility:h,setSkipped:U,setStepState:v,startSection:O,isGuidedTourVisible:i,isSkipped:u,children:r})},ne={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!1},ce=(r=ne,n)=>(0,ve.ZP)(r,s=>{switch(n.type){case"SET_CURRENT_STEP":{s.currentStep=n.step;break}case"SET_STEP_STATE":{const[i,u]=n.currentStep.split(".");s.guidedTourState[i][u]=n.value;break}case"SET_SKIPPED":{s.isSkipped=n.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{s.isGuidedTourVisible=n.value;break}default:return s}}),fe=r=>{const n={...r},s=a.I8.get("GUIDED_TOUR_COMPLETED_STEPS"),i=a.I8.get("GUIDED_TOUR_CURRENT_STEP"),u=a.I8.get("GUIDED_TOUR_SKIPPED");if(Array.isArray(s)&&s.forEach(T=>{const[E,h]=T.split(".");C()(n,["guidedTourState",E,h],!0)}),i){const[T,E]=i.split(".");C()(n,["guidedTourState",T,E],!0),Te(i),a.I8.set(null,"GUIDED_TOUR_CURRENT_STEP",!0)}return u!==null&&C()(n,"isSkipped",u),n},Te=r=>{const n=a.I8.get("GUIDED_TOUR_COMPLETED_STEPS")??[];!Array.isArray(n)||n.includes(r)||a.I8.set([...n,r],"GUIDED_TOUR_COMPLETED_STEPS",!0)};var We=t(44662),Ee=t(67879),Se=t(8471),Ze=t(23816);const Ke=({children:r})=>{const{currentTheme:n,themes:s,systemTheme:i}=(0,Ze.M)(),{locale:u}=(0,Ee.Z)(),T=n==="system"?i:n;return(0,m.jsxs)(We.h,{locale:u,theme:s?.[T||"light"],children:[r,(0,m.jsx)(Ne,{})]})},Ne=(0,Se.vJ)`
|
|
42
|
+
body {
|
|
43
|
+
background: ${({theme:r})=>r.colors.neutral100};
|
|
44
|
+
}
|
|
45
|
+
`;var je=t(45777);const _e="STRAPI_THEME",He=()=>localStorage.getItem(_e)||"system",Fe=({children:r,themes:n})=>{const[s,i]=e.useState(He()),[u,T]=e.useState(),E=e.useCallback(v=>{i(v),localStorage.setItem(_e,v)},[i]);e.useEffect(()=>{const v=window.matchMedia("(prefers-color-scheme: dark)");T(v.matches?"dark":"light");const O=U=>{T(U.matches?"dark":"light")};return v.addEventListener("change",O),()=>{v.removeEventListener("change",O)}},[]);const h=e.useMemo(()=>({currentTheme:s,onChangeTheme:E,themes:n,systemTheme:u}),[s,E,n,u]);return(0,m.jsx)(je.R.Provider,{value:h,children:r})},Ve=new x.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),G=({authLogo:r,children:n,components:s,customFields:i,fields:u,getAdminInjectedComponents:T,getPlugin:E,localeNames:h,menu:v,menuLogo:O,messages:U,plugins:S,runHookParallel:F,runHookSeries:$,runHookWaterfall:P,settings:Y,showReleaseNotification:X,showTutorials:me,store:pe,themes:I})=>(0,m.jsx)(b.iL,{messages:U,localeNames:h,children:(0,m.jsx)(Fe,{themes:I,children:(0,m.jsx)(Ke,{children:(0,m.jsx)(x.QueryClientProvider,{client:Ve,children:(0,m.jsx)(Q.zt,{store:pe,children:(0,m.jsx)(se.u.Provider,{value:{getAdminInjectedComponents:T},children:(0,m.jsx)(ye,{authLogo:r,menuLogo:O,showReleaseNotification:X,showTutorials:me,children:(0,m.jsx)(a._Y,{getPlugin:E,menu:v,plugins:S,runHookParallel:F,runHookWaterfall:P,runHookSeries:$,settings:Y,children:(0,m.jsx)(a.rt,{components:s,fields:u,children:(0,m.jsx)(a.MG,{customFields:i,children:(0,m.jsx)(a.m$,{children:(0,m.jsx)(a.w7,{children:(0,m.jsx)(H,{children:(0,m.jsx)(a.N$,{children:n})})})})})})})})})})})})})});var ee=t(51314),Pe=t(59883),Me=t(6680),Ge=t(82049),ct=t(15486),qe=t(85149);const mt={permissions:null};var pt=(r=mt,n)=>(0,ve.ZP)(r,s=>{switch(n.type){case qe.m:{s.permissions=Object.entries(n.permissions).reduce((i,u)=>[...i,...u[1]],[]);break}case qe.Q:{s.permissions=null;break}default:return s}}),gt=t(60371),et=t(40582);const ft={currentLayout:null};var Et=(r=ft,n)=>(0,ve.ZP)(r,s=>{switch(n.type){case et.c:{s.currentLayout=null;break}case et.O:{s.currentLayout=n.layout;break}default:return s}}),ht=t(14090),Tt=t(4214),Pt=t(69891);const Mt={admin_app:Pt.Z,rbacProvider:ct._d,"content-manager_app":gt.Z,"content-manager_listView":ht.Z,"content-manager_rbacManager":pt,"content-manager_editViewLayoutManager":Et,"content-manager_editViewCrudReducer":Tt.Z},yt=r=>n=>(...s)=>{const i=n(...s),u={};return{...i,asyncReducers:u,injectReducer:(T,E)=>{u[T]=E,i.replaceReducer((0,Me.combineReducers)({...r,...u}))}}},vt=(r=[],n={})=>{const s={...Mt,...n};return(0,Ge.xC)({reducer:s,devTools:!1,middleware:u=>[...u(),...r.map(T=>T())],enhancers:[yt(s)]})};var At=t(35231),St=()=>{const r=[];return{register(n){r.push(n)},delete(n){r.splice(r.indexOf(n),1)},runWaterfall(n,s){return r.reduce((i,u)=>u(i,s),n)},async runWaterfallAsync(n,s){let i=n;for(const u of r)i=await u(i,s);return i},runSeries(...n){return r.map(s=>s(...n))},async runSeriesAsync(...n){const s=[];for(const i of r)s.push(await i(...n));return s},runParallel(...n){return Promise.all(r.map(s=>s(...n)))}}},Dt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=",Ct=t(34197),ie=t(53038);const tt=({component:r,path:n,...s})=>{const{pathname:i,search:u}=(0,ie.TH)();return(0,m.jsx)(ie.AW,{path:n,render:T=>a.I8.getToken()!==null?(0,m.jsx)(r,{...s,...T}):(0,m.jsx)(ie.l_,{to:{pathname:"/auth/login",search:i!=="/"?`?redirectTo=${encodeURIComponent(`${i}${u}`)}`:void 0}})})};var It=t(60505),xe=t(40957),Rt=t(51374),Ot=t(45898),Lt=t(84306),jt=t(39935),_t=t.n(jt),xt=t(9086),Ue=t.n(xt),Ut=t(60216),J=t.n(Ut),bt=t(83923),z=t(74338),wt=t(24436);const ze=r=>e.createElement(z.Md,null,e.createElement(wt.Z,{...r}));ze.defaultProps={onSubmit:r=>r.preventDefault()},ze.propTypes={onSubmit:J().func};var B=t(24346),Ie=t(95162),ae=t(77981),oe=t(8365),le=t(84642),De=t(2846),be=t(91779),$e=t(92802),Re=t(1211);const Ye=({onSubmit:r,schema:n})=>{const{formatMessage:s}=(0,Ee.Z)();return e.createElement(z.Md,null,e.createElement(Ie.o,null,e.createElement(z.bU,null,e.createElement($e.J9,{enableReinitialize:!0,initialValues:{email:""},onSubmit:r,validationSchema:n,validateOnChange:!1},({values:i,errors:u,handleChange:T})=>e.createElement(a.l0,{noValidate:!0},e.createElement(z.sg,null,e.createElement(Re.T,null),e.createElement(ae.x,{paddingTop:6,paddingBottom:7},e.createElement(oe.Z,{as:"h1",variant:"alpha"},s({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),u.errorMessage&&e.createElement(oe.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},s({id:u.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(le.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(De.o,{error:u.email?s({id:u.email,defaultMessage:"This email is invalid."}):"",value:i.email,onChange:T,label:s({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:s({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(be.z,{type:"submit",fullWidth:!0},s({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),e.createElement(le.k,{justifyContent:"center"},e.createElement(ae.x,{paddingTop:4},e.createElement(a.rU,{to:"/auth/login"},s({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Ye.defaultProps={onSubmit:r=>r.preventDefault()},Ye.propTypes={onSubmit:J().func,schema:J().shape({type:J().string.isRequired}).isRequired};var Bt=Ye,kt=()=>{const{formatMessage:r}=(0,Ee.Z)();return e.createElement(z.Md,null,e.createElement(Ie.o,null,e.createElement(z.bU,null,e.createElement(z.sg,null,e.createElement(Re.T,null),e.createElement(ae.x,{paddingTop:6,paddingBottom:7},e.createElement(oe.Z,{as:"h1",variant:"alpha"},r({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),e.createElement(oe.Z,null,r({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),e.createElement(ae.x,{paddingTop:4},e.createElement(oe.Z,null,r({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),e.createElement(le.k,{justifyContent:"center"},e.createElement(ae.x,{paddingTop:4},e.createElement(a.rU,{to:"/auth/login"},r({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},Wt=()=>{const{formatMessage:r}=(0,Ee.Z)(),s=(0,a.aM)().get("info")||r({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return e.createElement(z.Md,null,e.createElement(Ie.o,null,e.createElement(z.bU,null,e.createElement(z.sg,null,e.createElement(Re.T,null),e.createElement(ae.x,{paddingTop:6,paddingBottom:7},e.createElement(oe.Z,{as:"h1",variant:"alpha"},r({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),e.createElement(oe.Z,null,s),e.createElement(ae.x,{paddingTop:4},e.createElement(oe.Z,null,r({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),e.createElement(le.k,{justifyContent:"center"},e.createElement(ae.x,{paddingTop:4},e.createElement(a.rU,{to:"/auth/login"},r({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},Zt=t(10710),nt=t(97037),Kt=t(31014),we=t(10364),Be=t(62161),Nt=t(49270),ke=t(24018);const st=Se.ZP.a`
|
|
46
|
+
color: ${({theme:r})=>r.colors.primary600};
|
|
47
|
+
`,at=(0,Se.ZP)(De.o)`
|
|
48
|
+
::-ms-reveal {
|
|
49
|
+
display: none;
|
|
50
|
+
}
|
|
51
|
+
`,Qe=({authType:r,fieldsToDisable:n,noSignin:s,onSubmit:i,schema:u})=>{const T=(0,a.lm)(),{push:E}=(0,ie.k6)(),[h,v]=(0,e.useState)(!1),[O,U]=(0,e.useState)(!1),[S,F]=(0,e.useState)(0),{trackUsage:$}=(0,a.rS)(),{formatMessage:P}=(0,Ee.Z)(),Y=(0,a.aM)(),{formatAPIError:X}=(0,a.So)(),{get:me}=(0,a.kY)(),{setNpsSurveySettings:pe}=(0,Nt.$)(),I=Y.get("registrationToken"),{data:te}=(0,x.useQuery)({queryKey:["admin","registration-info",I],async queryFn(){const{data:{data:Z}}=await me("/admin/registration-info",{params:{registrationToken:I}});return Z},enabled:!!I,initialData:{},onError(Z){const w=X(Z);T({type:"warning",message:w}),E(`/auth/oops?info=${encodeURIComponent(w)}`)}});function ue(Z){return Object.entries(Z).reduce((w,[K,V])=>{let re=V;return!["password","confirmPassword"].includes(K)&&typeof V=="string"&&(re=re.trim(),K==="lastname"&&(re=re||null)),w[K]=re,w},{})}return e.createElement(z.Md,null,e.createElement(z.bU,null,e.createElement($e.J9,{enableReinitialize:!0,initialValues:{firstname:te.firstname||"",lastname:te.lastname||"",email:te.email||"",password:"",confirmPassword:"",registrationToken:I||void 0,news:!1},onSubmit:async(Z,w)=>{const K=ue(Z);try{await u.validate(K,{abortEarly:!1}),S>0&&r==="register-admin"&&$("didSubmitWithErrorsFirstAdmin",{count:S.toString()}),i(I?{userInfo:Ue()(K,["registrationToken"]),registrationToken:I}:K,w),pe({enabled:Z.news})}catch(V){const re=(0,a.CJ)(V);F(S+1),w.setErrors(re)}},validateOnChange:!1},({values:Z,errors:w,handleChange:K})=>e.createElement(a.l0,{noValidate:!0},e.createElement(Ie.o,null,e.createElement(le.k,{direction:"column",alignItems:"center",gap:3},e.createElement(Re.T,null),e.createElement(oe.Z,{as:"h1",variant:"alpha",textAlign:"center"},P({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"})),e.createElement(oe.Z,{variant:"epsilon",textColor:"neutral600",textAlign:"center"},P({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(le.k,{direction:"column",alignItems:"stretch",gap:6,marginTop:7},e.createElement(Zt.r,{gap:4},e.createElement(nt.P,{col:6},e.createElement(De.o,{name:"firstname",required:!0,value:Z.firstname,error:w.firstname?P(w.firstname):void 0,onChange:K,label:P({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),e.createElement(nt.P,{col:6},e.createElement(De.o,{name:"lastname",value:Z.lastname,onChange:K,label:P({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),e.createElement(De.o,{name:"email",disabled:n.includes("email"),value:Z.email,onChange:K,error:w.email?P(w.email):void 0,required:!0,label:P({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),e.createElement(at,{name:"password",onChange:K,value:Z.password,error:w.password?P(w.password):void 0,endAction:e.createElement(ke.Z,{onClick:V=>{V.preventDefault(),v(re=>!re)},label:P(h?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},h?e.createElement(we.Z,null):e.createElement(Be.Z,null)),hint:P({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:P({id:"global.password",defaultMessage:"Password"}),type:h?"text":"password"}),e.createElement(at,{name:"confirmPassword",onChange:K,value:Z.confirmPassword,error:w.confirmPassword?P(w.confirmPassword):void 0,endAction:e.createElement(ke.Z,{onClick:V=>{V.preventDefault(),U(re=>!re)},label:P(O?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},O?e.createElement(we.Z,null):e.createElement(Be.Z,null)),required:!0,label:P({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:O?"text":"password"}),e.createElement(Kt.X,{onValueChange:V=>{K({target:{value:V,name:"news"}})},value:Z.news,name:"news","aria-label":"news"},P({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(st,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},P({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:e.createElement(st,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},P({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),e.createElement(be.z,{fullWidth:!0,size:"L",type:"submit"},P({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!s&&e.createElement(ae.x,{paddingTop:4},e.createElement(le.k,{justifyContent:"center"},e.createElement(a.rU,{label:"Auth.link.signin",to:"/auth/login"},P({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Qe.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:r=>r.preventDefault()},Qe.propTypes={authType:J().string.isRequired,fieldsToDisable:J().array,noSignin:J().bool,onSubmit:J().func,schema:J().shape({validate:J().func.isRequired,type:J().string.isRequired}).isRequired};var ot=Qe;const rt=(0,Se.ZP)(De.o)`
|
|
52
|
+
::-ms-reveal {
|
|
53
|
+
display: none;
|
|
54
|
+
}
|
|
55
|
+
`,Je=({onSubmit:r,schema:n})=>{const[s,i]=(0,e.useState)(!1),[u,T]=(0,e.useState)(!1),{formatMessage:E}=(0,Ee.Z)();return e.createElement(z.Md,null,e.createElement(Ie.o,null,e.createElement(z.bU,null,e.createElement($e.J9,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:r,validationSchema:n,validateOnChange:!1},({values:h,errors:v,handleChange:O})=>e.createElement(a.l0,{noValidate:!0},e.createElement(z.sg,null,e.createElement(Re.T,null),e.createElement(ae.x,{paddingTop:6,paddingBottom:7},e.createElement(oe.Z,{as:"h1",variant:"alpha"},E({id:"global.reset-password",defaultMessage:"Reset password"}))),v.errorMessage&&e.createElement(oe.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},E({id:v.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(le.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(rt,{name:"password",onChange:O,value:h.password,error:v.password?E({id:v.password,defaultMessage:"This field is required."}):void 0,endAction:e.createElement(ke.Z,{onClick:U=>{U.preventDefault(),i(S=>!S)},label:E(s?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},s?e.createElement(we.Z,null):e.createElement(Be.Z,null)),hint:E({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:E({id:"global.password",defaultMessage:"Password"}),type:s?"text":"password"}),e.createElement(rt,{name:"confirmPassword",onChange:O,value:h.confirmPassword,error:v.confirmPassword?E({id:v.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:e.createElement(ke.Z,{onClick:U=>{U.preventDefault(),T(S=>!S)},label:E(s?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},u?e.createElement(we.Z,null):e.createElement(Be.Z,null)),required:!0,label:E({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:u?"text":"password"}),e.createElement(be.z,{fullwidth:!0,type:"submit"},E({id:"global.change-password",defaultMessage:"Change password"})))))),e.createElement(le.k,{justifyContent:"center"},e.createElement(ae.x,{paddingTop:4},e.createElement(a.rU,{to:"/auth/login"},E({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Je.defaultProps={onSubmit:r=>r.preventDefault()},Je.propTypes={onSubmit:J().func,schema:J().shape({type:J().string.isRequired}).isRequired};var Ht=Je;const it={"forgot-password":{Component:Bt,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:B.Ry().shape({email:B.Z_().email(a.I0.email).required(a.I0.required)}),inputsPrefix:""},"forgot-password-success":{Component:kt,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:B.Ry().shape({email:B.Z_().email(a.I0.email).required(a.I0.required),password:B.Z_().required(a.I0.required),rememberMe:B.Xg().nullable()}),inputsPrefix:""},oops:{Component:Wt,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:ot,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:B.Ry().shape({firstname:B.Z_().trim().required(a.I0.required),lastname:B.Z_().nullable(),password:B.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").required(a.I0.required),confirmPassword:B.Z_().oneOf([B.iH("password"),null],"components.Input.error.password.noMatch").required(a.I0.required),registrationToken:B.Z_().required(a.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:ot,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:B.Ry().shape({firstname:B.Z_().trim().required(a.I0.required),lastname:B.Z_().nullable(),password:B.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").required(a.I0.required),email:B.Z_().email(a.I0.email).strict().lowercase(a.I0.lowercase).required(a.I0.required),confirmPassword:B.Z_().oneOf([B.iH("password"),null],"components.Input.error.password.noMatch").required(a.I0.required)}),inputsPrefix:""},"reset-password":{Component:Ht,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:B.Ry().shape({password:B.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").required(a.I0.required),confirmPassword:B.Z_().oneOf([B.iH("password"),null],"components.Input.error.password.noMatch").required(a.I0.required)})}};var Ft=r=>r;const lt={formErrors:{},modifiedData:{},requestError:null},Vt=(r,n)=>(0,ve.ZP)(r,s=>{switch(n.type){case"ON_CHANGE":{C()(s.modifiedData,n.keys.split("."),n.value);break}case"RESET_PROPS":return lt;case"SET_DATA":{s.modifiedData=n.data;break}case"SET_ERRORS":{s.formErrors=n.errors;break}case"SET_REQUEST_ERROR":{s.requestError={errorMessage:n.errorMessage,errorStatus:n.errorStatus};break}default:return s}}),Xe=({hasAdmin:r,setHasAdmin:n})=>{const{push:s,location:{search:i}}=(0,ie.k6)(),{changeLocale:u}=(0,b.nt)(),{setSkipped:T}=(0,a.c1)(),{trackUsage:E}=(0,a.rS)(),{params:{authType:h}}=(0,ie.$B)("/auth/:authType"),v=(0,a.aM)(),O=(0,xe.c)(ze,async()=>(await t.e(2395).then(t.bind(t,82395))).LoginEE),U=(0,xe.c)(it,async()=>(await t.e(8276).then(t.bind(t,18276))).FORMS,{combine(k,N){return{...k,...N}},defaultValue:it}),[{formErrors:S,modifiedData:F,requestError:$},P]=(0,e.useReducer)(Vt,lt,Ft),X=Lt.default.CancelToken.source(),{endPoint:me,fieldsToDisable:pe,fieldsToOmit:I,inputsPrefix:te,schema:ue,...Z}=U?.[h]??{};(0,e.useEffect)(()=>()=>{X.cancel("Component unmounted")},[]);const{post:w}=(0,a.kY)();(0,e.useEffect)(()=>{P({type:"RESET_PROPS"})},[h]);const K=({target:{name:k,value:N}})=>{P({type:"ON_CHANGE",keys:k,value:N})},V=async(k,{setSubmitting:N,setErrors:de})=>{N(!0);const he=Ue()(k,I),W=`/admin/${me}`;h==="login"&&await mn(k,W,{setSubmitting:N,setErrors:de}),(h==="register"||h==="register-admin")&&await pn(k,W,{setSubmitting:N,setErrors:de}),h==="forgot-password"&&await re(he,W,{setSubmitting:N,setErrors:de}),h==="reset-password"&&await gn(he,W,{setSubmitting:N,setErrors:de})},re=async(k,N,{setSubmitting:de,setErrors:he})=>{try{await w(N,k,{cancelToken:X.token}),s("/auth/forgot-password-success")}catch(W){console.error(W),he({errorMessage:"notification.error"})}finally{de(!1)}},mn=async(k,N,{setSubmitting:de,setErrors:he})=>{try{const{data:{data:{token:W,user:q}}}=await w(N,Ue()(k,I),{cancelToken:X.token});q.preferedLanguage&&u(q.preferedLanguage),a.I8.setToken(W,k.rememberMe),a.I8.setUserInfo(q,k.rememberMe),dt()}catch(W){if(W.response){const q=ge()(W,["response","data","error","message"],"Something went wrong");if(_t()(q).toLowerCase()==="usernotactive"){s("/auth/oops"),P({type:"RESET_PROPS"});return}he({errorMessage:q})}}finally{de(!1)}},pn=async(k,N,{setSubmitting:de,setErrors:he})=>{try{E("willCreateFirstAdmin");const{data:{data:{token:W,user:q}}}=await w(N,Ue()(k,I),{cancelToken:X.token});a.I8.setToken(W,!1),a.I8.setUserInfo(q,!1),de(!1),n(!0);const{roles:Oe}=q;if(Oe&&Oe.find(({code:En})=>En==="strapi-super-admin")&&(a.I8.set(!1,"GUIDED_TOUR_SKIPPED",!0),T(!1),E("didLaunchGuidedtour")),h==="register"&&k.userInfo.news===!0||h==="register-admin"&&k.news===!0){s({pathname:"/usecase",search:`?hasAdmin=${r}`});return}dt()}catch(W){if(E("didNotCreateFirstAdmin"),W.response){const{data:q}=W.response,Oe=(0,bt.I)(q);he({apiErrors:Oe})}}},gn=async(k,N,{setErrors:de,setSubmitting:he})=>{try{const{data:{data:{token:W,user:q}}}=await w(N,{...k,resetPasswordToken:v.get("code")},{cancelToken:X.token});a.I8.setToken(W,!1),a.I8.setUserInfo(q,!1),s("/")}catch(W){if(W.response){const q=ge()(W,["response","data","message"],"Something went wrong"),Oe=ge()(W,["response","data","statusCode"],400);P({type:"SET_REQUEST_ERROR",errorMessage:q,errorStatus:Oe}),de({errorMessage:q})}}finally{he(!1)}},dt=()=>{if(h==="login"){const k=v.get("redirectTo"),N=k?decodeURIComponent(k):"/";s(N)}else s("/")};if(!U[h]||r&&h==="register-admin"||a.I8.getToken())return e.createElement(ie.l_,{to:"/"});if(!r&&h!=="register-admin")return e.createElement(ie.l_,{to:{pathname:"/auth/register-admin",search:i}});if(O&&(U.login.Component=O),!O)return null;const{Component:fn}=U?.[h]??{};return e.createElement(fn,{...Z,authType:h,fieldsToDisable:pe,formErrors:S,inputsPrefix:te,modifiedData:F,onChange:K,onSubmit:V,requestError:$,schema:ue})};Xe.defaultProps={hasAdmin:!1},Xe.propTypes={hasAdmin:J().bool,setHasAdmin:J().func.isRequired};var Gt=Xe,zt=t(74580),$t=t(16773),Yt=t(40260),Qt=t(43743),Jt=t(33348);const Xt=[{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"}],qt=(0,Se.ZP)(oe.Z)`
|
|
56
|
+
text-align: center;
|
|
57
|
+
`,en=()=>{const r=(0,a.lm)(),{push:n,location:s}=(0,ie.k6)(),{formatMessage:i}=(0,Ee.Z)(),[u,T]=e.useState(null),[E,h]=e.useState(""),{post:v}=(0,a.kY)(),{firstname:O,email:U}=a.I8.get("userInfo")??{},{hasAdmin:S}=(0,Jt.parse)(s?.search,{ignoreQueryPrefix:!0}),F=u==="other",$=async(P,Y)=>{P.preventDefault();try{await v("https://analytics.strapi.io/register",{email:U,username:O,firstAdmin:Boolean(!S),persona:{role:Y?void 0:u,otherRole:Y?void 0:E}}),r({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),n("/")}catch{}};return(0,m.jsx)(z.Md,{children:(0,m.jsxs)(Ie.o,{labelledBy:"usecase-title",children:[(0,m.jsx)(z.bU,{children:(0,m.jsxs)("form",{onSubmit:P=>$(P,!1),children:[(0,m.jsxs)(le.k,{direction:"column",paddingBottom:7,children:[(0,m.jsx)(Re.T,{}),(0,m.jsx)(ae.x,{paddingTop:6,paddingBottom:1,width:(0,a.Q1)(250),children:(0,m.jsx)(qt,{variant:"alpha",as:"h1",id:"usecase-title",children:i({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})})})]}),(0,m.jsxs)(le.k,{direction:"column",alignItems:"stretch",gap:6,children:[(0,m.jsx)($t.P,{id:"usecase","data-testid":"usecase",label:i({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:P=>T(P),value:u,children:Xt.map(({intlLabel:P,value:Y})=>(0,m.jsx)(Yt.W,{value:Y,children:i(P)},Y))}),F&&(0,m.jsx)(De.o,{name:"other",label:i({id:"Usecase.other",defaultMessage:"Other"}),value:E,onChange:P=>h(P.target.value),"data-testid":"other"}),(0,m.jsx)(be.z,{type:"submit",size:"L",fullWidth:!0,disabled:!u,children:i({id:"global.finish",defaultMessage:"Finish"})})]})]})}),(0,m.jsx)(le.k,{justifyContent:"center",children:(0,m.jsx)(ae.x,{paddingTop:4,children:(0,m.jsx)(Qt.A,{onClick:P=>$(P,!0),children:i({id:"Usecase.button.skip",defaultMessage:"Skip this question"})})})})]})})};var ut=t(4556);const tn=(0,e.lazy)(()=>Promise.all([t.e(9077),t.e(801)]).then(t.bind(t,84147)).then(r=>({default:r.AuthenticatedApp})));function nn(){const r=(0,xe.c)(ee.s,async()=>(await t.e(3100).then(t.bind(t,73100))).ADMIN_PERMISSIONS_EE,{combine(I,te){return M()({},I,te)},defaultValue:ee.s}),n=(0,xe.c)(ut.y3,async()=>(await t.e(1386).then(t.bind(t,31386))).ROUTES_EE,{defaultValue:[]}),s=(0,a.lm)(),{updateProjectSettings:i}=(0,It.m)(),{formatMessage:u}=(0,Ee.Z)(),[{isLoading:T,hasAdmin:E,uuid:h,deviceId:v},O]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),U=(0,Q.I0)(),S=(0,a.L7)(),{get:F,post:$}=(0,a.kY)(),P=(0,e.useMemo)(()=>(0,Ot.W)(n.map(({to:I,Component:te,exact:ue})=>(0,Rt.o)(te,I,ue))),[n]),[Y,X]=(0,e.useState)(null);(0,e.useEffect)(()=>{U({type:ut.XS,payload:r})},[r,U]),(0,e.useEffect)(()=>{const I=a.I8.getToken();I&&(async()=>{try{const{data:{data:{token:ue}}}=await $("/admin/renew-token",{token:I});a.I8.updateToken(ue)}catch{a.I8.clearAppStorage(),window.location.reload()}})()},[$]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:te,uuid:ue,menuLogo:Z,authLogo:w}}}=await F("/admin/init");if(i({menuLogo:(0,a.CR)(Z),authLogo:(0,a.CR)(w)}),ue){const{data:{data:K}}=await F("/admin/telemetry-properties",{validateStatus:V=>V<500});X(K);try{const V="didInitializeAdministration";await $("https://analytics.strapi.io/api/v2/track",{event:V,userId:"",deviceId:v,eventPropeties:{},userProperties:{environment:S.currentEnvironment},groupProperties:{...K,projectId:ue}},{headers:{"X-Strapi-Event":V}})}catch{}}O({isLoading:!1,hasAdmin:te,uuid:ue,deviceId:v})}catch{s({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[s,i]);const me=I=>O(te=>({...te,hasAdmin:I})),pe=(0,e.useMemo)(()=>({uuid:h,telemetryProperties:Y,deviceId:v}),[h,Y,v]);return T?e.createElement(a.dO,null):e.createElement(e.Suspense,{fallback:e.createElement(a.dO,null)},e.createElement(Ct.z,null,u({id:"skipToContent",defaultMessage:"Skip to content"})),e.createElement(a.L8,{value:pe},e.createElement(ie.rs,null,P,e.createElement(ie.AW,{path:"/auth/:authType",render:I=>e.createElement(Gt,{...I,setHasAdmin:me,hasAdmin:E}),exact:!0}),e.createElement(tt,{path:"/usecase",component:en}),e.createElement(tt,{path:"/",component:tn}),e.createElement(ie.AW,{path:"",component:zt.NotFoundPage}))))}var sn=nn,an={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"};const{INJECT_COLUMN_IN_TABLE:on,MUTATE_COLLECTION_TYPES_LINKS:rn,MUTATE_EDIT_VIEW_LAYOUT:ln,MUTATE_SINGLE_TYPES_LINKS:un}=ee.HOOKS;class dn{constructor({adminConfig:n,appPlugins:s,library:i,middlewares:u}){this.customConfigurations=n.config,this.customBootstrapConfiguration=n.bootstrap,this.configurations={authLogo:R,head:{favicon:Dt},locales:["en"],menuLogo:R,notifications:{releases:!0},themes:{light:o.W,dark:p.$},translations:{},tutorials:!0},this.appPlugins=s||{},this.library=i,this.middlewares=u,this.plugins={},this.reducers=(0,Pe.qr)({}),this.translations={},this.hooksDict={},this.admin={injectionZones:ee.N},this.customFields=Pe.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=n=>{Array.isArray(n)?n.map(s=>this.library.components.add(s)):this.library.components.add(n)};addCorePluginMenuLink=n=>{const s=JSON.stringify(n);l()(n.to,`link.to should be defined for ${s}`),l()(typeof n.to=="string",`Expected link.to to be a string instead received ${typeof n.to}`),l()(["/plugins/content-type-builder","/plugins/upload"].includes(n.to),"This method is not available for your plugin"),l()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${s}`),this.menu.push(n)};addFields=n=>{Array.isArray(n)?n.map(s=>this.library.fields.add(s)):this.library.fields.add(n)};addMenuLink=n=>{const s=JSON.stringify(n);l()(n.to,`link.to should be defined for ${s}`),l()(typeof n.to=="string",`Expected link.to to be a string instead received ${typeof n.to}`),l()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${s}`),l()(n.Component&&typeof n.Component=="function","link.Component should be a valid React Component"),l()(n.icon&&typeof n.icon=="function","link.Icon should be a valid React Component"),this.menu.push(n)};addMiddlewares=n=>{n.forEach(s=>{this.middlewares.add(s)})};addReducers=n=>{Object.keys(n).forEach(s=>{this.reducers.add(s,n[s])})};addSettingsLink=(n,s)=>{l()(this.settings[n],"The section does not exist");const i=JSON.stringify(s);l()(s.id,`link.id should be defined for ${i}`),l()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${i}`),l()(s.to,`link.to should be defined for ${i}`),l()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),this.settings[n].links.push(s)};addSettingsLinks=(n,s)=>{l()(this.settings[n],"The section does not exist"),l()(Array.isArray(s),"TypeError expected links to be an array"),s.forEach(i=>{this.addSettingsLink(n,i)})};async bootstrap(){Object.keys(this.appPlugins).forEach(n=>{const s=this.appPlugins[n].bootstrap;s&&s({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),c()(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(on),this.createHook(rn),this.createHook(un),this.createHook(ln),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(n=>n!=="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 n=this.customConfigurations.theme.dark,s=this.customConfigurations.theme.light;!n&&!s&&(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."),M()(this.configurations.themes.light,this.customConfigurations.theme)),s&&M()(this.configurations.themes.light,s),n&&M()(this.configurations.themes.dark,n)}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=n=>{this.hooksDict[n]=St()};createSettingSection=(n,s)=>{l()(n.id,"section.id should be defined"),l()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,"section.intlLabel should be defined"),l()(Array.isArray(s),"TypeError expected links to be an array"),l()(this.settings[n.id]===void 0,"A similar section already exists"),this.settings[n.id]={...n,links:[]},s.forEach(i=>{this.addSettingsLink(n.id,i)})};createStore=()=>vt(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(n,s,i)=>{try{return this.admin.injectionZones[n][s][i]||[]}catch(u){return console.error("Cannot get injected component",u),u}};getPlugin=n=>this.plugins[n];async initialize(){Object.keys(this.appPlugins).forEach(n=>{this.appPlugins[n].register(this)})}injectContentManagerComponent=(n,s,i)=>{l()(this.admin.injectionZones.contentManager[n]?.[s],`The ${n} ${s} zone is not defined in the content manager`),l()(i,"A Component must be provided"),this.admin.injectionZones.contentManager[n][s].push(i)};injectAdminComponent=(n,s,i)=>{l()(this.admin.injectionZones.admin[n]?.[s],`The ${n} ${s} zone is not defined in the admin`),l()(i,"A Component must be provided"),this.admin.injectionZones.admin[n][s].push(i)};async loadAdminTrads(){const n=this.configurations.locales.map(u=>t(48224)(`./${u}.json`).then(({default:T})=>({data:T,locale:u})).catch(()=>({data:null,locale:u})));return(await Promise.all(n)).reduce((u,T)=>(T.data&&(u[T.locale]=T.data),u),{})}async loadTrads(){const n=await this.loadAdminTrads(),s=Object.keys(this.appPlugins).map(E=>{const h=this.appPlugins[E].registerTrads;return h?h({locales:this.configurations.locales}):null}).filter(E=>E),u=(await Promise.all(s)).reduce((E,h)=>{const v=h.reduce((O,U)=>(O[U.locale]=U.data,O),{});return Object.keys(v).forEach(O=>{E[O]={...E[O],...v[O]}}),E},{}),T=this.configurations.locales.reduce((E,h)=>(E[h]={...n[h],...u[h]||{},...this.customConfigurations?.translations?.[h]},E),{});return this.configurations.translations=T,Promise.resolve()}registerHook=(n,s)=>{l()(this.hooksDict[n],`The hook ${n} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[n].register(s)};registerPlugin=n=>{const s=(0,Pe.Sy)(n);this.plugins[s.pluginId]=s};runHookSeries=(n,s=!1)=>s?this.hooksDict[n].runSeriesAsync():this.hooksDict[n].runSeries();runHookWaterfall=(n,s,i=!1,u)=>i?this.hooksDict[n].runWaterfallAsync(s,u):this.hooksDict[n].runWaterfall(s,u);runHookParallel=n=>this.hooksDict[n].runParallel();render(){const n=this.createStore(),s=_()(an,this.configurations.locales||[]),{components:{components:i},fields:{fields:u}}=this.library;return e.createElement(G,{authLogo:this.configurations.authLogo,components:i,fields:u,customFields:this.customFields,localeNames:s,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(T,E,h=!1)=>this.runHookWaterfall(T,E,h,n),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:n},e.createElement(j.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(b.xW)||"en"}}),e.createElement(D.VK,{basename:At.Z},e.createElement(sn,{store:n})))}}var cn=({adminConfig:r={},appPlugins:n,library:s,middlewares:i,reducers:u})=>new dn({adminConfig:r,appPlugins:n,library:s,middlewares:i,reducers:u})},85149:function(A,d,t){"use strict";t.d(d,{Q:function(){return o},m:function(){return e}});const e="ContentManager/RBACManager/SET_PERMISSIONS",o="ContentManager/RBACManager/RESET_PERMISSIONS"},70475:function(A,d,t){"use strict";t.d(d,{IX:function(){return p},fn:function(){return e},sZ:function(){return o}});const e="ContentManager/App/GET_INIT_DATA",o="ContentManager/App/RESET_INIT_DATA",p="ContentManager/App/SET_INIT_DATA"},60371:function(A,d,t){"use strict";t.d(d,{E:function(){return p}});var e=t(97889),o=t(70475);const p={components:[],status:"loading",models:[],collectionTypeLinks:[],singleTypeLinks:[]},f=(l=p,g)=>(0,e.ZP)(l,c=>{switch(g.type){case o.fn:{c.status="loading";break}case o.sZ:return p;case o.IX:{c.collectionTypeLinks=g.data.authorizedCollectionTypeLinks.filter(({isDisplayed:y})=>y),c.singleTypeLinks=g.data.authorizedSingleTypeLinks.filter(({isDisplayed:y})=>y),c.components=g.data.components,c.models=g.data.contentTypeSchemas,c.fieldSizes=g.data.fieldSizes,c.status="resolved";break}default:return c}});d.Z=f},40582:function(A,d,t){"use strict";t.d(d,{O:function(){return e},c:function(){return o}});const e="ContentManager/EditViewLayoutManager/SET_LAYOUT",o="ContentManager/EditViewLayoutManager/RESET_PROPS"},93088:function(A,d,t){"use strict";t.d(d,{Id:function(){return o},MP:function(){return l},Rp:function(){return f},ZA:function(){return e},Zz:function(){return g},c2:function(){return p}});const e="ContentManager/ListView/GET_DATA",o="ContentManager/ListView/GET_DATA_SUCCEEDED",p="ContentManager/ListView/RESET_PROPS",f="ContentManager/ListView/ON_CHANGE_LIST_HEADERS ",l="ContentManager/ListView/ON_RESET_LIST_HEADERS ",g="ContentManager/ListView/SET_LIST_LAYOUT "},14090:function(A,d,t){"use strict";t.d(d,{E:function(){return l}});var e=t(97889),o=t(33795),p=t.n(o),f=t(93088);const l={data:[],isLoading:!0,contentType:{},components:[],initialDisplayedHeaders:[],displayedHeaders:[],pagination:{total:0}},g=(c=l,y)=>(0,e.ZP)(c,M=>{switch(y.type){case f.ZA:return{...l,contentType:c.contentType,components:c.components,initialDisplayedHeaders:c.initialDisplayedHeaders,displayedHeaders:c.displayedHeaders};case f.Id:{M.pagination=y.pagination,M.data=y.data,M.isLoading=!1;break}case f.Rp:{const{target:{name:L,value:_}}=y;if(_)M.displayedHeaders=c.displayedHeaders.filter(j=>j.name!==L);else{const{metadatas:j,attributes:D,uid:R}=c.contentType,b=j[L].list,m={name:L,fieldSchema:D[L],metadatas:b,key:`__${L}_key__`};switch(D[L].type){case"component":{const a=D[L].component,x=p()(c,["components",a,"settings","mainField"],null),Q=p()(c,["components",a,"attributes",x]);M.displayedHeaders.push({...m,metadatas:{...b,mainField:{...Q,name:x}}});break}case"relation":M.displayedHeaders.push({...m,queryInfos:{defaultParams:{},endPoint:`collection-types/${R}`}});break;default:M.displayedHeaders.push(m)}}break}case f.MP:{M.displayedHeaders=c.initialDisplayedHeaders;break}case f.c2:return l;case f.Zz:{const{contentType:L,components:_,displayedHeaders:j}=y;M.contentType=L,M.components=_,M.displayedHeaders=j,M.initialDisplayedHeaders=j;break}default:return M}});d.Z=g},46491:function(A,d,t){"use strict";t.d(d,{Id:function(){return o},TP:function(){return p},ZA:function(){return e},c2:function(){return f},d0:function(){return g},t9:function(){return c},tE:function(){return y},w7:function(){return l}});const e="ContentManager/CrudReducer/GET_DATA",o="ContentManager/CrudReducer/GET_DATA_SUCCEEDED",p="ContentManager/CrudReducer/INIT_FORM",f="ContentManager/CrudReducer/RESET_PROPS",l="ContentManager/CrudReducer/SET_DATA_STRUCTURES",g="ContentManager/CrudReducer/SET_STATUS",c="ContentManager/CrudReducer/SUBMIT_SUCCEEDED",y="ContentManager/CrudReducer/CLEAR_SET_MODIFIED_DATA_ONLY"},4214:function(A,d,t){"use strict";t.d(d,{q:function(){return p}});var e=t(97889),o=t(46491);const p={componentsDataStructure:{},contentTypeDataStructure:{},isLoading:!0,data:null,status:"resolved",setModifiedDataOnly:!1},f=(l=p,g)=>(0,e.ZP)(l,c=>{switch(g.type){case o.ZA:{c.isLoading=!0,c.data=null;break}case o.Id:{c.isLoading=!1,c.data=g.data,c.setModifiedDataOnly=g.setModifiedDataOnly??!1;break}case o.TP:{if(g.data){c.isLoading=!1,c.data=g.data;break}c.isLoading=!1,c.data=l.contentTypeDataStructure;break}case o.c2:return p;case o.w7:{c.componentsDataStructure=g.componentsDataStructure,c.contentTypeDataStructure=g.contentTypeDataStructure;break}case o.d0:{c.status=g.status;break}case o.t9:{c.data=g.data;break}case o.tE:{c.setModifiedDataOnly=!1;break}default:return c}});d.Z=f},35231:function(A,d){"use strict";const t="/admin/".replace(window.location.origin,"");d.Z=t},4556:function(A,d,t){"use strict";t.d(d,{XS:function(){return o},eb:function(){return e},y3:function(){return p}});const e="StrapiAdmin/APP/SET_APP_RUNTIME_STATUS",o="StrapiAdmin/App/SET_ADMIN_PERMISSIONS",p=[]},69891:function(A,d,t){"use strict";t.d(d,{E:function(){return p}});var e=t(97889),o=t(4556);const p={permissions:{},status:"init"},f=(l=p,g)=>(0,e.ZP)(l,c=>{switch(g.type){case o.eb:{c.status="runtime";break}case o.XS:{c.permissions=g.payload;break}default:return c}});d.Z=f},24018:function(A,d,t){"use strict";var e=t(78495),o=t(8471);const p=(0,o.ZP)(e.E)`
|
|
58
|
+
svg {
|
|
59
|
+
height: 1rem;
|
|
60
|
+
width: 1rem;
|
|
61
|
+
path {
|
|
62
|
+
fill: ${({theme:f})=>f.colors.neutral600};
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
`;d.Z=p},24436:function(A,d,t){"use strict";var e=t(32735),o=t(2846),p=t(95162),f=t(77981),l=t(8365),g=t(84642),c=t(31014),y=t(91779),M=t(96192),L=t(10364),_=t(62161),j=t(92802),D=t(60216),R=t.n(D),b=t(67879),m=t(8471),a=t(1211),x=t(74338),Q=t(24018);const se=(0,m.ZP)(o.o)`
|
|
66
|
+
::-ms-reveal {
|
|
67
|
+
display: none;
|
|
68
|
+
}
|
|
69
|
+
`,Ae=({onSubmit:ye,schema:ve,children:Le})=>{const[ge,Ce]=(0,e.useState)(!1),{formatMessage:C}=(0,b.Z)();return e.createElement(p.o,null,e.createElement(x.bU,null,e.createElement(j.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:ye,validationSchema:ve,validateOnChange:!1},({values:H,errors:ne,handleChange:ce})=>e.createElement(M.l0,{noValidate:!0},e.createElement(x.sg,null,e.createElement(a.T,null),e.createElement(f.x,{paddingTop:6,paddingBottom:1},e.createElement(l.Z,{variant:"alpha",as:"h1"},C({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(f.x,{paddingBottom:7},e.createElement(l.Z,{variant:"epsilon",textColor:"neutral600"},C({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),ne.errorMessage&&e.createElement(l.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},ne.errorMessage)),e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(o.o,{error:ne.email?C({id:ne.email,defaultMessage:"This value is required."}):"",value:H.email,onChange:ce,label:C({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:C({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(se,{error:ne.password?C({id:ne.password,defaultMessage:"This value is required."}):"",onChange:ce,value:H.password,label:C({id:"global.password",defaultMessage:"Password"}),name:"password",type:ge?"text":"password",endAction:e.createElement(Q.Z,{onClick:fe=>{fe.stopPropagation(),Ce(Te=>!Te)},label:C(ge?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},ge?e.createElement(L.Z,null):e.createElement(_.Z,null)),required:!0}),e.createElement(c.X,{onValueChange:fe=>{ce({target:{value:fe,name:"rememberMe"}})},value:H.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},C({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(y.z,{fullWidth:!0,type:"submit"},C({id:"Auth.form.button.login",defaultMessage:"Login"}))))),Le),e.createElement(g.k,{justifyContent:"center"},e.createElement(f.x,{paddingTop:4},e.createElement(M.rU,{to:"/auth/forgot-password"},C({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};Ae.defaultProps={children:null,onSubmit(){}},Ae.propTypes={children:R().node,onSubmit:R().func,schema:R().shape({type:R().string.isRequired}).isRequired},d.Z=Ae},48224:function(A,d,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 o(p){if(!t.o(e,p))return Promise.resolve().then(function(){var g=new Error("Cannot find module '"+p+"'");throw g.code="MODULE_NOT_FOUND",g});var f=e[p],l=f[0];return t.e(f[1]).then(function(){return t.t(l,19)})}o.keys=function(){return Object.keys(e)},o.id=48224,A.exports=o},47750:function(A,d,t){"use strict";A.exports=t.p+"70674f63fc3904c20de0.svg"}}]);
|
package/build/{admin-edit-roles-page.556fac52.chunk.js → admin-edit-roles-page.4e1eb4a9.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{86434:function(U,L,o){"use strict";o.d(L,{F:function(){return O}});var e=o(32735),h=o(
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{86434:function(U,L,o){"use strict";o.d(L,{F:function(){return O}});var e=o(32735),h=o(96192),P=o(67879),E=o(20108);const O=(T={},R={})=>{const{id:v="",...S}=T,{get:V}=(0,h.kY)(),{locale:a}=(0,P.Z)(),Z=(0,h.Xe)(a,{sensitivity:"base"}),{data:m,error:M,isError:F,isLoading:g,refetch:b}=(0,E.useQuery)(["roles",v,S],async()=>{const{data:Q}=await V(`/admin/roles/${v??""}`,{params:S});return Q},R);return{roles:e.useMemo(()=>{let Q=[];return m&&(Array.isArray(m.data)?Q=m.data:Q=[m.data]),[...Q].sort((oe,ee)=>Z.compare(oe.name,ee.name))},[m,Z]),error:M,isError:F,isLoading:g,refetch:b}}},36658:function(U,L,o){"use strict";o.d(L,{V:function(){return P}});var e=o(96192),h=o(20108);const P=(E={id:null},O={})=>{const{id:T,...R}=E,{get:v}=(0,e.kY)(),{data:S,error:V,isError:a,isLoading:Z,refetch:m}=(0,h.useQuery)(["roles",T,"permissions",R],async()=>{const{data:{data:M}}=await v(`/admin/roles/${T}/permissions`,{params:R});return M},O);return{permissions:S,error:V,isError:a,isLoading:Z,refetch:m}}},15570:function(U,L,o){"use strict";o.r(L),o.d(L,{CreatePage:function(){return me},default:function(){return Ae}});var e=o(32735),h=o(95162),P=o(64092),E=o(84642),O=o(91779),T=o(56932),R=o(77981),v=o(8365),S=o(10710),V=o(97037),a=o(2846),Z=o(15367),m=o(96192),M=o(70788),F=o(14723),g=o(92802),b=o(86834),z=o.n(b),Q=o(67879),oe=o(40986),ee=o(53038),C=o(8471),de=o(30305),J=o(93985),te=o(91720),Y=o(36658),ue=o(24346),Le=ue.Ry().shape({name:ue.Z_().required(m.I0.required),description:ue.Z_().required(m.I0.required)});const ce=C.ZP.div`
|
|
2
2
|
border: 1px solid ${({theme:X})=>X.colors.primary200};
|
|
3
3
|
background: ${({theme:X})=>X.colors.primary100};
|
|
4
4
|
padding: ${({theme:X})=>`${X.spaces[2]} ${X.spaces[4]}`};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
border-radius: ${({theme:X})=>X.borderRadius};
|
|
7
7
|
font-size: ${12/16}rem;
|
|
8
8
|
font-weight: bold;
|
|
9
|
-
`,me=()=>{const X=(0,ee.$B)("/settings/roles/duplicate/:id"),xe=(0,m.lm)(),{lockApp:N,unlockApp:w}=(0,m.o1)(),{formatMessage:j}=(0,Q.Z)(),[_,re]=(0,e.useState)(!1),{replace:ye}=(0,ee.k6)(),G=(0,e.useRef)(),{trackUsage:Pe}=(0,m.rS)(),{post:he,put:Be}=(0,m.kY)(),{params:Ce}=X??{},{isLoading:Ze,data:Fe}=(0,te.d)(Ce?.id,{cacheTime:0}),{permissions:pe,isLoading:Te}=(0,Y.V)({id:Ce?.id},{cacheTime:0,enabled:!!Ce?.id}),Ne=Se=>{N(),re(!0),Ce?.id?Pe("willDuplicateRole"):Pe("willCreateNewRole"),Promise.resolve(he("/admin/roles",Se)).then(async({data:ae})=>{const{permissionsToSend:le}=G.current.getPermissions();return Ce?.id?Pe("didDuplicateRole"):Pe("didCreateNewRole"),ae.data.id&&!z()(le)&&await Be(`/admin/roles/${ae.data.id}/permissions`,{permissions:le}),ae}).then(ae=>{re(!1),xe({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ye(`/settings/roles/${ae.data.id}`)}).catch(ae=>{console.error(ae),re(!1),xe({type:"warning",message:{id:"notification.error"}})}).finally(()=>{w()})},We=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(h.o,null,e.createElement(m.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:We},onSubmit:Ne,validationSchema:Le,validateOnChange:!1},({handleSubmit:Se,values:ae,errors:le,handleReset:ve,handleChange:ne})=>e.createElement(m.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(P.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{ve(),G.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Se,loading:_,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(m.rU,{startIcon:e.createElement(M.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(T.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(R.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(R.x,null,e.createElement(R.x,null,e.createElement(v.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(R.x,null,e.createElement(v.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ce,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(S.r,{gap:4},e.createElement(V.P,{col:6},e.createElement(a.o,{name:"name",error:le.name&&j({id:le.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:ne,required:!0,value:ae.name})),e.createElement(V.P,{col:6},e.createElement(Z.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:le.description&&j({id:le.description}),onChange:ne},ae.description))))),!Ze&&!Te?e.createElement(R.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(J.Z,{isFormDisabled:!1,ref:G,permissions:pe,layout:Fe})):e.createElement(R.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(m.dO,null))))))))};function Ae(){const X=(0,oe.v9)(de._);return e.createElement(m.O4,{permissions:X.settings.roles.create},e.createElement(me,null))}},93985:function(U,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),h=o(49854),P=o(89599),E=o(8623),O=o(
|
|
9
|
+
`,me=()=>{const X=(0,ee.$B)("/settings/roles/duplicate/:id"),xe=(0,m.lm)(),{lockApp:N,unlockApp:w}=(0,m.o1)(),{formatMessage:j}=(0,Q.Z)(),[_,re]=(0,e.useState)(!1),{replace:ye}=(0,ee.k6)(),G=(0,e.useRef)(),{trackUsage:Pe}=(0,m.rS)(),{post:he,put:Be}=(0,m.kY)(),{params:Ce}=X??{},{isLoading:Ze,data:Fe}=(0,te.d)(Ce?.id,{cacheTime:0}),{permissions:pe,isLoading:Te}=(0,Y.V)({id:Ce?.id},{cacheTime:0,enabled:!!Ce?.id}),Ne=Se=>{N(),re(!0),Ce?.id?Pe("willDuplicateRole"):Pe("willCreateNewRole"),Promise.resolve(he("/admin/roles",Se)).then(async({data:ae})=>{const{permissionsToSend:le}=G.current.getPermissions();return Ce?.id?Pe("didDuplicateRole"):Pe("didCreateNewRole"),ae.data.id&&!z()(le)&&await Be(`/admin/roles/${ae.data.id}/permissions`,{permissions:le}),ae}).then(ae=>{re(!1),xe({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ye(`/settings/roles/${ae.data.id}`)}).catch(ae=>{console.error(ae),re(!1),xe({type:"warning",message:{id:"notification.error"}})}).finally(()=>{w()})},We=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(h.o,null,e.createElement(m.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:We},onSubmit:Ne,validationSchema:Le,validateOnChange:!1},({handleSubmit:Se,values:ae,errors:le,handleReset:ve,handleChange:ne})=>e.createElement(m.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(P.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{ve(),G.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Se,loading:_,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(m.rU,{startIcon:e.createElement(M.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(T.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(R.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(R.x,null,e.createElement(R.x,null,e.createElement(v.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(R.x,null,e.createElement(v.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ce,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(S.r,{gap:4},e.createElement(V.P,{col:6},e.createElement(a.o,{name:"name",error:le.name&&j({id:le.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:ne,required:!0,value:ae.name})),e.createElement(V.P,{col:6},e.createElement(Z.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:le.description&&j({id:le.description}),onChange:ne},ae.description))))),!Ze&&!Te?e.createElement(R.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(J.Z,{isFormDisabled:!1,ref:G,permissions:pe,layout:Fe})):e.createElement(R.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(m.dO,null))))))))};function Ae(){const X=(0,oe.v9)(de._);return e.createElement(m.O4,{permissions:X.settings.roles.create},e.createElement(me,null))}},93985:function(U,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),h=o(49854),P=o(89599),E=o(8623),O=o(96192),T=o(23973),R=o.n(T),v=o(86834),S=o.n(v),V=o(60216),a=o.n(V),Z=o(67879),m=o(77981),M=o(98978),F=o.n(M),g=o(8471),b=o(84642),z=o(96669),Q=o(76884),oe=o(30465),ee=o(33795),C=o.n(ee),de=o(9086),J=o.n(de);const te=e.createContext(null),Y=()=>e.useContext(te);var ue=o(91779),be=o(19594);const Le=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
|
-
`,At=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=Y(),{formatMessage:f}=(0,Z.Z)(),x=C()(d,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=Ye(x[se]),B),{}),[x]),{hasAllActionsSelected:W,hasSomeActionsSelected:I}=Oe($),A=()=>{c(B=>!B)},y=()=>{c(!1)},k=Dn(s,d,i),D=Ln(C()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(N.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:I,value:W},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},k.map(({checkboxName:B,value:se,action:H,displayName:q,hasConditions:K})=>e.createElement($n.P,{col:3,key:H},e.createElement(In,{disabled:n,hasConditions:K},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:fe=>{u({target:{name:B,value:fe}})},value:se},q))))),e.createElement(me,{hasConditions:D,onClick:A}))),l&&e.createElement(ve,{headerBreadCrumbs:[t,r],actions:k,isFormDisabled:n,onClosed:y,onToggle:A}))};At.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=At;const et=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{c(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:he()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:W})=>e.createElement(kn,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...d,W]})))))};et.defaultProps={},et.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=et;const Tt=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},u)=>e.createElement(Bn,{key:c,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===c,isWhite:u%2===1,name:c,onOpenCategory:l,pathToData:[n,d]})))};Tt.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 St=Tt,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),ge=o.n(Nn),Mt=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Ot=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),$t=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:$t(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:c})=>c===i);if(l){const c=C()(r,["properties",l.value],[]),d=$t(l,c);s.properties[i]=d}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var Dt=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(S()(d))return i;const p=Object.keys(d).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,A=d[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),y=Mt(s,x,f),k=Ot(r,C()(y,"conditions",[]));if(S()($)||A)return ge()(u,[f,x],{properties:{enabled:y!==void 0},conditions:k}),u;const D=Wn($,d[f],y);return ge()(u,[f,x],{...D,conditions:k}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=Mt(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Ot(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Lt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const c=Un(l,n,r);return s[i]=c,s},{});const jt=t=>t.split(" ").join("-");var It=(t,n)=>Object.entries(G()(t,n)).map(([r,s])=>({category:r,categoryId:jt(r),childrenForm:Object.entries(G()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:jt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:s,singleTypes:i,plugins:It(l,"plugin"),settings:It(c,"category")},p={collectionTypes:Dt(s,s.actions||[],r,n),singleTypes:Dt(i,i.actions||[],r,n),plugins:Lt(d.plugins,r,n),settings:Lt(d.settings,r,n)};return{initialData:p,modifiedData:p,layouts:d}},Gn=o(99381),tt=o.n(Gn);const kt=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Re()(s)&&!R()(s,"conditions"))return{...n,[r]:kt(s)};if(Re()(s)&&R()(s,"conditions")&&!Ie(J()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var nt=kt;const Bt=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Re()(l)?{...s,[i]:Bt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=Bt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,re.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,c=["modifiedData",s];Object.keys(C()(t,c)).forEach(d=>{const p=C()(t,[...c,d,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}ge()(r,[...c,d,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=n;let d=tt()(t.modifiedData);const p=s.split(".."),u=C()(d,p,{});Object.keys(u).forEach(f=>{if(R()(u[f],`properties.${i}`)){const x=C()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Re()(x))ge()(d,$,c);else{const W=He(x,c);ge()(d,$,W)}}}),c||(d=nt(d)),ge()(r,"modifiedData",d);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=tt()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=nt(s)),ge()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let c=tt()(t.modifiedData);const d=C()(c,l,{}),p=He(d,i);ge()(c,l,p),i||(c=nt(c)),ge()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const st=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:st(r),properties:{}}},wn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...n,...s]},[]);var Zt=t=>Object.values(t).reduce((n,r)=>{const s=wn(r);return[...n,...s]},[]);const Ft=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Re()(l)?[...r,...Ft(l,`${n}${i}.`)]:(l&&!Re()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Ft(d),i},{action:t,subject:n,conditions:st(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:st(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,c]=i;if(!Ie(c).some(u=>u))return s;if(!c?.properties?.enabled){const u=Qn(l,t,c);return[...s,u]}if(!c.properties.enabled)return s;const p=Jn(l,t,c);return s.push(p),s},[]);var Nt=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const n=Zt(t.plugins),r=Zt(t.settings),s=Nt(t.collectionTypes),i=Nt(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 ot=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,O.e5)(i.collectionTypes,c.collectionTypes),A=(0,O.e5)(i.singleTypes,c.singleTypes),y={...I,...A};let k;return S()(y)?k=!1:k=Object.values(y).some(D=>Object.values(D).some(B=>R()(B,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:k}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(I,A,y,k)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:A,rowName:y,value:k})},f=(I,A,y)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:A,value:y})},x=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},$=(0,e.useCallback)(({target:{name:I,value:A}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:A})},[]),W=(0,e.useCallback)(({target:{name:I,value:A}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:A})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:W,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(h.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(P.m,null,es.map(I=>e.createElement(P.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(xt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(xt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(St,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(St,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});ot.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},ot.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(ot)},87056:function(U,L,o){"use strict";o.r(L),o.d(L,{default:function(){return xe}});var e=o(32735),h=o(59407),P=o(15062),E=o(53038),O=o(30305),T=o(95162),R=o(64092),v=o(84642),S=o(91779),V=o(56932),a=o(77981),Z=o(70788),m=o(92802),M=o(67879),F=o(86434),g=o(91720),b=o(36658),z=o(93985),Q=o(8365),oe=o(10710),ee=o(97037),C=o(2846),de=o(15367),J=o(60216),te=o.n(J);const Y=({disabled:N,role:w,values:j,errors:_,onChange:re,onBlur:ye})=>{const{formatMessage:G}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(v.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(Q.Z,{fontWeight:"bold"},w?w.name:G({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(Q.Z,{textColor:"neutral500",variant:"pi"},w?w.description:G({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},G({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(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(C.o,{disabled:N,name:"name",error:_.name&&G({id:_.name}),label:G({id:"global.name",defaultMessage:"Name"}),onChange:re,onBlur:ye,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(de.g,{disabled:N,label:G({id:"global.description",defaultMessage:"Description"}),id:"description",error:_.name&&G({id:_.name}),onChange:re,onBlur:ye},j.description||"")))))};Y.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},Y.propTypes={disabled:te().bool,errors:te().object.isRequired,onBlur:te().func.isRequired,onChange:te().func.isRequired,role:te().object,values:te().object};var ue=Y,be=o(24346),ce=be.Ry().shape({name:be.Z_().required(h.I0.required)}),Ae=()=>{const N=(0,h.lm)(),{formatMessage:w}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:_}=(0,h.kY)(),[re,ye]=(0,e.useState)(!1),G=(0,e.useRef)(),{lockApp:Pe,unlockApp:he}=(0,h.o1)(),{trackUsage:Be}=(0,h.rS)(),{formatAPIError:Ce}=(0,h.So)(),{isLoading:Ze,data:Fe}=(0,g.d)(j,{cacheTime:0}),{roles:[pe={}],isLoading:Te,refetch:Ne}=(0,F.F)({id:j},{cacheTime:0}),{permissions:We,isLoading:Se}=(0,b.V)({id:j},{cacheTime:0}),ae=async ve=>{try{Pe(),ye(!0);const{permissionsToSend:ne,didUpdateConditions:Me}=G.current.getPermissions();await _(`/admin/roles/${j}`,ve),pe.code!=="strapi-super-admin"&&(await _(`/admin/roles/${j}/permissions`,{permissions:ne}),Me&&Be("didUpdateConditions")),G.current.setFormAfterSubmit(),await Ne(),N({type:"success",message:{id:"notification.success.saved"}})}catch(ne){N({type:"warning",message:Ce(ne)})}finally{ye(!1),he()}},le=!Te&&pe.code==="strapi-super-admin";return e.createElement(T.o,null,e.createElement(h.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:pe.name,description:pe.description},onSubmit:ae,validationSchema:ce,validateOnChange:!1},({handleSubmit:ve,values:ne,errors:Me,handleChange:je,handleBlur:rt})=>e.createElement("form",{onSubmit:ve},e.createElement(R.T,{primaryAction:e.createElement(v.k,{gap:2},e.createElement(S.z,{disabled:pe.code==="strapi-super-admin",onClick:ve,loading:re,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(h.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},w({id:"global.back",defaultMessage:"Back"}))}),e.createElement(V.D,null,e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(ue,{isLoading:Te||Se,disabled:le,errors:Me,values:ne,onChange:je,onBlur:rt,role:pe}),!Ze&&!Te&&!Se?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(z.Z,{isFormDisabled:le,permissions:We,ref:G,layout:Fe})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(h.dO,null)))))))},xe=()=>{const N=(0,P.v9)(O._),{isLoading:w,allowedActions:{canRead:j,canUpdate:_}}=(0,h.ss)({read:N.settings.roles.read,update:N.settings.roles.update});return w?e.createElement(h.dO,null):!j&&!_?e.createElement(E.l_,{to:"/"}):e.createElement(Ae,null)}},91720:function(U,L,o){"use strict";o.d(L,{d:function(){return P}});var e=o(59407),h=o(20108);const P=(E,O={})=>{const{get:T}=(0,e.kY)(),{data:R,error:v,isError:S,isLoading:V}=(0,h.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await T("/admin/permissions",{params:{role:E}});return a},O);return{data:R,error:v,isError:S,isLoading:V}}},84802:function(U){function L(o,e,h,P){for(var E=-1,O=o==null?0:o.length;++E<O;){var T=o[E];e(P,T,h(T),o)}return P}U.exports=L},62435:function(U,L,o){var e=o(56671);function h(P,E,O,T){return e(P,function(R,v,S){E(T,R,O(R),S)}),T}U.exports=h},85580:function(U,L,o){var e=o(84802),h=o(62435),P=o(88904),E=o(77236);function O(T,R){return function(v,S){var V=E(v)?e:h,a=R?R():{};return V(v,T,P(S,2),a)}}U.exports=O},72091:function(U,L,o){var e=o(40314),h=1/0;function P(E){var O=E==null?0:E.length;return O?e(E,h):[]}U.exports=P},81346:function(U,L,o){var e=o(40999),h=o(85580),P=Object.prototype,E=P.hasOwnProperty,O=h(function(T,R,v){E.call(T,v)?T[v].push(R):e(T,v,[R])});U.exports=O},9435:function(U,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return V}});var e=o(74512),h=o(32735),P=o(8471),E=o(85612),O=o(37808),T=o(8365),R=o(84642),v=o(77981);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,V=(0,P.ZP)(T.Z)``,a=(0,P.ZP)(v.x)`
|
|
216
|
+
`,At=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=Y(),{formatMessage:f}=(0,Z.Z)(),x=C()(d,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=Ye(x[se]),B),{}),[x]),{hasAllActionsSelected:W,hasSomeActionsSelected:I}=Oe($),A=()=>{c(B=>!B)},y=()=>{c(!1)},k=Dn(s,d,i),D=Ln(C()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(N.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:I,value:W},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},k.map(({checkboxName:B,value:se,action:H,displayName:q,hasConditions:K})=>e.createElement($n.P,{col:3,key:H},e.createElement(In,{disabled:n,hasConditions:K},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:fe=>{u({target:{name:B,value:fe}})},value:se},q))))),e.createElement(me,{hasConditions:D,onClick:A}))),l&&e.createElement(ve,{headerBreadCrumbs:[t,r],actions:k,isFormDisabled:n,onClosed:y,onToggle:A}))};At.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=At;const et=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{c(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:he()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:W})=>e.createElement(kn,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...d,W]})))))};et.defaultProps={},et.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=et;const Tt=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},u)=>e.createElement(Bn,{key:c,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===c,isWhite:u%2===1,name:c,onOpenCategory:l,pathToData:[n,d]})))};Tt.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 St=Tt,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),ge=o.n(Nn),Mt=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Ot=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),$t=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:$t(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:c})=>c===i);if(l){const c=C()(r,["properties",l.value],[]),d=$t(l,c);s.properties[i]=d}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var Dt=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(S()(d))return i;const p=Object.keys(d).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,A=d[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),y=Mt(s,x,f),k=Ot(r,C()(y,"conditions",[]));if(S()($)||A)return ge()(u,[f,x],{properties:{enabled:y!==void 0},conditions:k}),u;const D=Wn($,d[f],y);return ge()(u,[f,x],{...D,conditions:k}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=Mt(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Ot(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Lt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const c=Un(l,n,r);return s[i]=c,s},{});const jt=t=>t.split(" ").join("-");var It=(t,n)=>Object.entries(G()(t,n)).map(([r,s])=>({category:r,categoryId:jt(r),childrenForm:Object.entries(G()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:jt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:s,singleTypes:i,plugins:It(l,"plugin"),settings:It(c,"category")},p={collectionTypes:Dt(s,s.actions||[],r,n),singleTypes:Dt(i,i.actions||[],r,n),plugins:Lt(d.plugins,r,n),settings:Lt(d.settings,r,n)};return{initialData:p,modifiedData:p,layouts:d}},Gn=o(99381),tt=o.n(Gn);const kt=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Re()(s)&&!R()(s,"conditions"))return{...n,[r]:kt(s)};if(Re()(s)&&R()(s,"conditions")&&!Ie(J()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var nt=kt;const Bt=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Re()(l)?{...s,[i]:Bt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=Bt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,re.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,c=["modifiedData",s];Object.keys(C()(t,c)).forEach(d=>{const p=C()(t,[...c,d,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}ge()(r,[...c,d,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=n;let d=tt()(t.modifiedData);const p=s.split(".."),u=C()(d,p,{});Object.keys(u).forEach(f=>{if(R()(u[f],`properties.${i}`)){const x=C()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Re()(x))ge()(d,$,c);else{const W=He(x,c);ge()(d,$,W)}}}),c||(d=nt(d)),ge()(r,"modifiedData",d);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=tt()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=nt(s)),ge()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let c=tt()(t.modifiedData);const d=C()(c,l,{}),p=He(d,i);ge()(c,l,p),i||(c=nt(c)),ge()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const st=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:st(r),properties:{}}},wn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...n,...s]},[]);var Zt=t=>Object.values(t).reduce((n,r)=>{const s=wn(r);return[...n,...s]},[]);const Ft=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Re()(l)?[...r,...Ft(l,`${n}${i}.`)]:(l&&!Re()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Ft(d),i},{action:t,subject:n,conditions:st(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:st(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,c]=i;if(!Ie(c).some(u=>u))return s;if(!c?.properties?.enabled){const u=Qn(l,t,c);return[...s,u]}if(!c.properties.enabled)return s;const p=Jn(l,t,c);return s.push(p),s},[]);var Nt=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const n=Zt(t.plugins),r=Zt(t.settings),s=Nt(t.collectionTypes),i=Nt(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 ot=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,O.e5)(i.collectionTypes,c.collectionTypes),A=(0,O.e5)(i.singleTypes,c.singleTypes),y={...I,...A};let k;return S()(y)?k=!1:k=Object.values(y).some(D=>Object.values(D).some(B=>R()(B,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:k}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(I,A,y,k)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:A,rowName:y,value:k})},f=(I,A,y)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:A,value:y})},x=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},$=(0,e.useCallback)(({target:{name:I,value:A}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:A})},[]),W=(0,e.useCallback)(({target:{name:I,value:A}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:A})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:W,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(h.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(P.m,null,es.map(I=>e.createElement(P.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(xt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(xt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(St,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(St,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});ot.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},ot.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(ot)},87056:function(U,L,o){"use strict";o.r(L),o.d(L,{default:function(){return xe}});var e=o(32735),h=o(96192),P=o(40986),E=o(53038),O=o(30305),T=o(95162),R=o(64092),v=o(84642),S=o(91779),V=o(56932),a=o(77981),Z=o(70788),m=o(92802),M=o(67879),F=o(86434),g=o(91720),b=o(36658),z=o(93985),Q=o(8365),oe=o(10710),ee=o(97037),C=o(2846),de=o(15367),J=o(60216),te=o.n(J);const Y=({disabled:N,role:w,values:j,errors:_,onChange:re,onBlur:ye})=>{const{formatMessage:G}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(v.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(Q.Z,{fontWeight:"bold"},w?w.name:G({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(Q.Z,{textColor:"neutral500",variant:"pi"},w?w.description:G({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},G({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(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(C.o,{disabled:N,name:"name",error:_.name&&G({id:_.name}),label:G({id:"global.name",defaultMessage:"Name"}),onChange:re,onBlur:ye,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(de.g,{disabled:N,label:G({id:"global.description",defaultMessage:"Description"}),id:"description",error:_.name&&G({id:_.name}),onChange:re,onBlur:ye},j.description||"")))))};Y.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},Y.propTypes={disabled:te().bool,errors:te().object.isRequired,onBlur:te().func.isRequired,onChange:te().func.isRequired,role:te().object,values:te().object};var ue=Y,be=o(24346),ce=be.Ry().shape({name:be.Z_().required(h.I0.required)}),Ae=()=>{const N=(0,h.lm)(),{formatMessage:w}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:_}=(0,h.kY)(),[re,ye]=(0,e.useState)(!1),G=(0,e.useRef)(),{lockApp:Pe,unlockApp:he}=(0,h.o1)(),{trackUsage:Be}=(0,h.rS)(),{formatAPIError:Ce}=(0,h.So)(),{isLoading:Ze,data:Fe}=(0,g.d)(j,{cacheTime:0}),{roles:[pe={}],isLoading:Te,refetch:Ne}=(0,F.F)({id:j},{cacheTime:0}),{permissions:We,isLoading:Se}=(0,b.V)({id:j},{cacheTime:0}),ae=async ve=>{try{Pe(),ye(!0);const{permissionsToSend:ne,didUpdateConditions:Me}=G.current.getPermissions();await _(`/admin/roles/${j}`,ve),pe.code!=="strapi-super-admin"&&(await _(`/admin/roles/${j}/permissions`,{permissions:ne}),Me&&Be("didUpdateConditions")),G.current.setFormAfterSubmit(),await Ne(),N({type:"success",message:{id:"notification.success.saved"}})}catch(ne){N({type:"warning",message:Ce(ne)})}finally{ye(!1),he()}},le=!Te&&pe.code==="strapi-super-admin";return e.createElement(T.o,null,e.createElement(h.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:pe.name,description:pe.description},onSubmit:ae,validationSchema:ce,validateOnChange:!1},({handleSubmit:ve,values:ne,errors:Me,handleChange:je,handleBlur:rt})=>e.createElement("form",{onSubmit:ve},e.createElement(R.T,{primaryAction:e.createElement(v.k,{gap:2},e.createElement(S.z,{disabled:pe.code==="strapi-super-admin",onClick:ve,loading:re,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(h.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},w({id:"global.back",defaultMessage:"Back"}))}),e.createElement(V.D,null,e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(ue,{isLoading:Te||Se,disabled:le,errors:Me,values:ne,onChange:je,onBlur:rt,role:pe}),!Ze&&!Te&&!Se?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(z.Z,{isFormDisabled:le,permissions:We,ref:G,layout:Fe})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(h.dO,null)))))))},xe=()=>{const N=(0,P.v9)(O._),{isLoading:w,allowedActions:{canRead:j,canUpdate:_}}=(0,h.ss)({read:N.settings.roles.read,update:N.settings.roles.update});return w?e.createElement(h.dO,null):!j&&!_?e.createElement(E.l_,{to:"/"}):e.createElement(Ae,null)}},91720:function(U,L,o){"use strict";o.d(L,{d:function(){return P}});var e=o(96192),h=o(20108);const P=(E,O={})=>{const{get:T}=(0,e.kY)(),{data:R,error:v,isError:S,isLoading:V}=(0,h.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await T("/admin/permissions",{params:{role:E}});return a},O);return{data:R,error:v,isError:S,isLoading:V}}},84802:function(U){function L(o,e,h,P){for(var E=-1,O=o==null?0:o.length;++E<O;){var T=o[E];e(P,T,h(T),o)}return P}U.exports=L},62435:function(U,L,o){var e=o(56671);function h(P,E,O,T){return e(P,function(R,v,S){E(T,R,O(R),S)}),T}U.exports=h},85580:function(U,L,o){var e=o(84802),h=o(62435),P=o(88904),E=o(77236);function O(T,R){return function(v,S){var V=E(v)?e:h,a=R?R():{};return V(v,T,P(S,2),a)}}U.exports=O},72091:function(U,L,o){var e=o(40314),h=1/0;function P(E){var O=E==null?0:E.length;return O?e(E,h):[]}U.exports=P},81346:function(U,L,o){var e=o(40999),h=o(85580),P=Object.prototype,E=P.hasOwnProperty,O=h(function(T,R,v){E.call(T,v)?T[v].push(R):e(T,v,[R])});U.exports=O},9435:function(U,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return V}});var e=o(74512),h=o(32735),P=o(8471),E=o(85612),O=o(37808),T=o(8365),R=o(84642),v=o(77981);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,V=(0,P.ZP)(T.Z)``,a=(0,P.ZP)(v.x)`
|
|
217
217
|
border: ${S};
|
|
218
218
|
|
|
219
219
|
&:hover:not([aria-disabled='true']) {
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{62089:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(96192),o=e(20108);function r(f={},d={}){const{id:n="",...g}=f,{get:E}=(0,a.kY)(),{data:s,isError:c,isLoading:M,refetch:y}=(0,o.useQuery)(["users",n,g],async()=>{const{data:{data:m}}=await E(`/admin/users/${n}`,{params:g});return m},d);return{users:t.useMemo(()=>{let m=[];return s&&("results"in s?Array.isArray(s.results)&&(m=s.results):m=[s]),m},[s]),pagination:t.useMemo(()=>(s&&"pagination"in s)??null,[s]),isLoading:M,isError:c,refetch:y}}},28363:function(B,i,e){e.r(i),e.d(i,{default:function(){return le}});var t=e(32735),a=e(96192),o=e(40986),r=e(53038),f=e(30305),d=e(95162),n=e(64092),g=e(91779),E=e(56932),s=e(77981),c=e(84642),M=e(8365),y=e(10710),A=e(97037),m=e(40501),O=e(70788),I=e(92802),N=e(33795),x=e.n(N),j=e(9086),F=e.n(j),U=e(88423),S=e.n(U),Y=e(60216),H=e.n(Y),V=e(67879),G=e(62089),v=e(40957),ee=e(83923),J=e(33868),te=e(47577),ae=e(18703),se=e(32720);const ne=async(L,u)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${L}`,u);return T.data};var oe=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12},autoComplete:"new-password"},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12},autoComplete:"new-password"}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];const b=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:L})=>{const{formatMessage:u}=(0,V.Z)(),{params:{id:C}}=(0,r.$B)("/settings/users/:id"),{push:T}=(0,r.k6)(),{setUserDisplayName:W}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:Q,unlockApp:X}=(0,a.o1)(),k=(0,v.c)(te.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE);(0,a.go)();const{users:[K],isLoading:ie}=(0,G.R)({id:C},{cacheTime:0,onError(l){const{status:p}=l.response;p===403?(h({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),T("/")):h({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),de=async(l,p)=>{Q();try{const P=await ne(C,F()(l,"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 Z=x()(l,"username")||(0,J.P)(l.firstname,l.lastname);W(Z)}p.setValues(S()(l,b))}catch(P){const R=(0,ee.I)(P.response.data),Z=Object.keys(R).reduce(($,D)=>($[D]=R[D].id,$),{});p.setErrors(Z),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}X()},_=ie||!k,ce=_?{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()(K,b)).reduce((l,p)=>p==="roles"?(l[p]=(K?.roles||[]).map(({id:P})=>P),l):(l[p]=K?.[p],l),{}),me=z.username||(0,J.P)(z.firstname,z.lastname),q=u(ce,{name:me});return _?t.createElement(d.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(n.T,{primaryAction:t.createElement(g.z,{disabled:!0,startIcon:t.createElement(m.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(E.D,null,t.createElement(a.dO,null))):t.createElement(d.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:de,initialValues:z,validateOnChange:!1,validationSchema:se.YM},({errors:l,values:p,handleChange:P,isSubmitting:R,dirty:Z})=>t.createElement(a.l0,null,t.createElement(n.T,{primaryAction:t.createElement(g.z,{disabled:R||!L?!0:!Z,startIcon:t.createElement(m.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(E.D,null,K?.registrationToken&&t.createElement(s.x,{paddingBottom:6},t.createElement(k,{registrationToken:K.registrationToken})),t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(M.Z,{variant:"delta",as:"h2"},u({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.r,{gap:5},oe.map($=>$.map(D=>t.createElement(A.P,{key:D.name,...D.size},t.createElement(a.jm,{...D,disabled:!L,error:l[D.name],onChange:P,value:p[D.name]||""}))))))),t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(M.Z,{variant:"delta",as:"h2"},u({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.r,{gap:5},t.createElement(A.P,{col:6,xs:12},t.createElement(ae.Z,{disabled:!L,error:l.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var re=w,le=()=>{const L=(0,a.lm)(),u=(0,o.v9)(f._),C=t.useMemo(()=>({read:u.settings.users.read,update:u.settings.users.update}),[u.settings.users]),{isLoading:T,allowedActions:{canRead:W,canUpdate:h}}=(0,a.ss)(C),{state:Q}=(0,r.TH)(),X=Q?.from??"/";return(0,t.useEffect)(()=>{T||!W&&!h&&L({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,W,h,L]),T?t.createElement(a.dO,null):!W&&!h?t.createElement(r.l_,{to:X}):t.createElement(re,{canUpdate:h})}},84024:function(B,i,e){var t=e(32735),a=e(14763),o=e(96192),r=e(94958),f=e(60216),d=e.n(f),n=e(67879);const g=({children:E,target:s})=>{const c=(0,o.lm)(),{formatMessage:M}=(0,n.Z)(),{copy:y}=(0,o.VP)(),A=M({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),m=async()=>{await y(s)&&c({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:A,noBorder:!0,icon:t.createElement(r.Z,null),onClick:m}),title:s,titleEllipsis:!0,subtitle:E,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};g.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired},i.Z=g},47577:function(B,i,e){e.d(i,{A:function(){return n}});var t=e(32735),a=e(60216),o=e.n(a),r=e(67879),f=e(35231),d=e(84024);const n=({registrationToken:g})=>{const{formatMessage:E}=(0,r.Z)(),s=`${window.location.origin}${f.Z}auth/register?registrationToken=${g}`;return t.createElement(d.Z,{target:s},E({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(B,i,e){var t=e(32735),a=e(16773),o=e(40260),r=e(96192),f=e(75760),d=e(60216),n=e.n(d),g=e(67879),E=e(20108),s=e(8471);const c=(0,s.F4)`
|
|
2
|
+
from {
|
|
3
|
+
transform: rotate(0deg);
|
|
4
|
+
}
|
|
5
|
+
to {
|
|
6
|
+
transform: rotate(359deg);
|
|
7
|
+
}
|
|
8
|
+
`,M=s.ZP.div`
|
|
9
|
+
animation: ${c} 2s infinite linear;
|
|
10
|
+
`,y=()=>t.createElement(M,null,t.createElement(f.Z,null)),A=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},m=({disabled:O,error:I,onChange:N,value:x})=>{const{status:j,data:F}=(0,E.useQuery)(["roles"],A,{staleTime:5e4}),{formatMessage:U}=(0,g.Z)(),S=I?U({id:I,defaultMessage:I}):"",Y=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=j==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:Y,name:"roles",onChange:v=>{N({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(F||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};m.defaultProps={disabled:!1,error:void 0},m.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=m},32720:function(B,i,e){e.d(i,{YM:function(){return E},Rw:function(){return f}});var t=e(24346),a=e(96192);const o={firstname:t.Z_().trim().required(a.I0.required),lastname:t.Z_(),email:t.Z_().email(a.I0.email).lowercase().required(a.I0.required),username:t.Z_().nullable(),password:t.Z_().min(8,a.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,a.I0.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(s,c)=>s?c.required(a.I0.required):c)};var f={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(s,c,M)=>s||c?M.required(a.I0.required):M),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},E=t.Ry().shape({...o,isActive:t.Xg(),...n})},70788:function(B,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const a=r=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:(0,t.jsx)("path",{fill:"#212134",d:"M24 13.3a.2.2 0 0 1-.2.2H5.74l8.239 8.239a.2.2 0 0 1 0 .282L12.14 23.86a.2.2 0 0 1-.282 0L.14 12.14a.2.2 0 0 1 0-.282L11.86.14a.2.2 0 0 1 .282 0L13.98 1.98a.2.2 0 0 1 0 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6Z"})}),o=a}}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86434:function(N,v,t){t.d(v,{F:function(){return u}});var e=t(32735),n=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86434:function(N,v,t){t.d(v,{F:function(){return u}});var e=t(32735),n=t(96192),i=t(67879),c=t(20108);const u=(I={},j={})=>{const{id:M="",...y}=I,{get:o}=(0,n.kY)(),{locale:Z}=(0,i.Z)(),L=(0,n.Xe)(Z,{sensitivity:"base"}),{data:p,error:d,isError:D,isLoading:Q,refetch:V}=(0,c.useQuery)(["roles",M,y],async()=>{const{data:C}=await o(`/admin/roles/${M??""}`,{params:y});return C},j);return{roles:e.useMemo(()=>{let C=[];return p&&(Array.isArray(p.data)?C=p.data:C=[p.data]),[...C].sort((H,b)=>L.compare(H.name,b.name))},[p,L]),error:d,isError:D,isLoading:Q,refetch:V}}},32239:function(N,v,t){t.r(v),t.d(v,{default:function(){return ue}});var e=t(32735),n=t(96192),i=t(40986),c=t(30305),u=t(95162),I=t(64092),j=t(91779),M=t(95181),y=t(56932),o=t(23699),Z=t(22116),L=t(41013),p=t(45037),d=t(27947),D=t(8365),Q=t(99320),V=t(1690),J=t(94958),C=t(63318),H=t(94997),b=t(82064),k=t(67879),q=t(53038),_=t(86434),ee=()=>"todo empty role",te=t(84642),ne=t(77981),le=t(14763),ae=t(60216),R=t.n(ae);const z=({id:a,name:m,description:s,usersCount:O,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:P}=(0,k.Z)(),[,x]=r,g=P({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:O});return e.createElement(p.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:x.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(D.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(D.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(D.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,A)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:A===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};z.propTypes={id:R().number.isRequired,name:R().string.isRequired,description:R().string.isRequired,usersCount:R().number.isRequired,icons:R().array.isRequired,rowIndex:R().number.isRequired,canUpdate:R().bool},z.defaultProps={canUpdate:!1};var se=z,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(a,m)=>(0,oe.ZP)(a,s=>{switch(m.type){case"ON_REMOVE_ROLES":{s.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{s.shouldRefetchData=!0,s.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{s.shouldRefetchData=!1,s.roleToDelete=null,s.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{s.roleToDelete=m.id;break}default:return s}});const de=({canCreate:a,canDelete:m,canUpdate:s,refetchRoles:O})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[P,x]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:A,roleToDelete:X},U]=(0,e.useReducer)(ie,re),{post:G}=(0,n.tg)(),Y=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await G("/admin/roles/batch-delete",{ids:[X]}),await O(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}B()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),F=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),B()},[]),B=()=>x(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),S=(0,e.useCallback)((l,T)=>{l.preventDefault(),l.stopPropagation(),T.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):F(T.id)},[E,F]),w=(0,e.useCallback)((l,T)=>{l.preventDefault(),l.stopPropagation(),K(T.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:T=>w(T,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(J.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(C.Z,null)}]:[],...m?[{onClick:T=>S(T,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(H.Z,null)}]:[]],[r,S,w,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:P,showModalConfirmButtonLoading:A,handleToggleModal:B,handleDeleteData:Y}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:O,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:P}}=(0,n.ss)(m.settings.roles),{roles:x,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!O&&E}),{handleNewRoleClick:A,getIcons:X,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:G,handleToggleModal:Y,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:P}),$=x.length+1,F=6;if(O)return e.createElement(u.o,null,e.createElement(n.dO,null));const B=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(I.T,{primaryAction:r?e.createElement(j.z,{onClick:A,startIcon:e.createElement(b.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:B,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(M.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:B})})}),E&&e.createElement(y.D,null,e.createElement(o.i,{colCount:F,rowCount:$,footer:r?e.createElement(Z.c,{onClick:A,icon:e.createElement(b.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(L.h,null,e.createElement(p.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.users",defaultMessage:"Users"}))),e.createElement(d.Th,null,e.createElement(Q.T,null,a({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.p,null,x?.map((f,S)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:X(f),rowIndex:S+2,canUpdate:P})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:G,onToggleDialog:Y}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},95181:function(N,v,t){t.d(v,{Z:function(){return i}});var e=t(74512),n=t(84642);const i=({startActions:c,endActions:u})=>!c&&!u?null:(0,e.jsxs)(n.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,e.jsx)(n.k,{gap:2,wrap:"wrap",children:c}),(0,e.jsx)(n.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},22116:function(N,v,t){t.d(v,{c:function(){return y}});var e=t(74512),n=t(8471),i=t(77981),c=t(2775),u=t(84642),I=t(8365);const j=(0,n.ZP)(i.x)`
|
|
2
2
|
height: ${24/16}rem;
|
|
3
3
|
width: ${24/16}rem;
|
|
4
4
|
border-radius: 50%;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{62089:function(B,m,e){e.d(m,{R:function(){return o}});var t=e(32735),l=e(
|
|
2
|
-
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:i},{formatMessage:f}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},f({id:i?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:i?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],fe=()=>{const{post:i}=(0,a.kY)(),{formatAPIError:f}=(0,a.So)(),[L,k]=(0,t.useState)(!1),V=(0,O.v9)(E._),{allowedActions:{canCreate:j,canDelete:K,canRead:R}}=(0,a.ss)(V.settings.users),P=(0,n.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,g.Z)(),{search:c}=(0,C.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:x,refetch:N}=(0,I.R)(v().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,y.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=xe.map(p=>({...p,metadatas:{...p.metadatas,label:D(p.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(p=>!p)},Q=(0,n.useMutation)(async p=>{await i("/admin/users/batch-delete",{ids:p})},{async onSuccess(){await N(),await P.refetchQueries(ge)},onError(p){H({type:"warning",message:{id:"notification.error",message:f(p),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":x},t.createElement(a.SL,{name:"Users"}),t.createElement(r.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:D({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),R&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:D({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(W.Z,{displayedFilters:Ke}))}),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:x,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:p=>Q.mutateAsync([p]),headers:ee,rows:z,withBulkActions:!0,withMainAction:K},t.createElement(ve,{canDelete:K,headers:ee,rows:z,withBulkActions:!0,withMainAction:K})),U&&t.createElement(We,{pagination:U}))),L&&t.createElement(Be,{onSuccess:async()=>{await N(),await P.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,y.c)(fe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return i?t.createElement(i,null):null}},25691:function(B,m,e){e.r(m);var t=e(32735),l=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{62089:function(B,m,e){e.d(m,{R:function(){return o}});var t=e(32735),l=e(96192),r=e(20108);function o(u={},a={}){const{id:s="",...v}=u,{get:g}=(0,l.kY)(),{data:n,isError:O,isLoading:C,refetch:I}=(0,r.useQuery)(["users",s,v],async()=>{const{data:{data:E}}=await g(`/admin/users/${s}`,{params:v});return E},a);return{users:t.useMemo(()=>{let E=[];return n&&("results"in n?Array.isArray(n.results)&&(E=n.results):E=[n]),E},[n]),pagination:t.useMemo(()=>(n&&"pagination"in n)??null,[n]),isLoading:C,isError:O,refetch:I}}},59092:function(B,m,e){var t=e(32735),l=e(77981),r=e(91779),o=e(96192),u=e(68527),a=e(60216),s=e.n(a),v=e(67879);const g=({displayedFilters:n})=>{const[O,C]=(0,t.useState)(!1),{formatMessage:I}=(0,v.Z)(),y=(0,t.useRef)(),E=()=>{C(W=>!W)};return t.createElement(t.Fragment,null,t.createElement(l.x,{paddingTop:1,paddingBottom:1},t.createElement(r.z,{variant:"tertiary",ref:y,startIcon:t.createElement(u.Z,null),onClick:E,size:"S"},I({id:"app.utils.filters",defaultMessage:"Filters"})),O&&t.createElement(o.J5,{displayedFilters:n,isVisible:O,onToggle:E,source:y})),t.createElement(o.W$,{filtersSchema:n}))};g.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=g},99528:function(B,m,e){e.d(m,{W:function(){return fe},Z:function(){return Ze}});var t=e(32735),l=e(95162),r=e(64092),o=e(95181),u=e(56932),a=e(96192),s=e(33348),v=e.n(s),g=e(67879),n=e(20108),O=e(40986),C=e(53038),I=e(62089),y=e(40957),E=e(30305),W=e(59092),A=e(91779),ae=e(50720),se=e(60216),d=e.n(se);const q=({onClick:i})=>{const{formatMessage:f}=(0,g.Z)();return t.createElement(A.z,{onClick:i,startIcon:t.createElement(ae.Z,null),size:"S"},f({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};q.propTypes={onClick:d().func.isRequired};var Z=e(1690),ne=e(45037),J=e(27947),le=e(96669),b=e(8365),F=e(84642),h=e(14763),$=e(77981),pe=e(63318),Me=e(94997),re=e(33868);const oe=({canDelete:i,headers:f,entriesToDelete:L,onClickDelete:k,onSelectRow:V,withMainAction:j,withBulkActions:K,rows:R})=>{const{push:P,location:{pathname:H}}=(0,C.k6)(),{formatMessage:D}=(0,g.Z)();return t.createElement(Z.p,null,R.map(c=>{const z=L.findIndex(U=>U===c.id)!==-1;return t.createElement(ne.Tr,{key:c.id,...(0,a.X7)({fn:()=>P(`${H}/${c.id}`),condition:K})},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.P)(c.firstname,c.lastname)}),checked:z,onChange:()=>{V({name:c.id,value:!z})}})),f.map(({key:U,cellFormatter:Y,name:x,...N})=>t.createElement(J.Td,{key:U},typeof Y=="function"?Y(c,{key:U,name:x,formatMessage:D,...N}):t.createElement(b.Z,{textColor:"neutral800"},c[x]||"-"))),K&&t.createElement(J.Td,null,t.createElement(F.k,{justifyContent:"end"},t.createElement(h.h,{onClick:()=>P(`${H}/${c.id}`),label:D({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,re.P)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(pe.Z,null)}),i&&t.createElement($.x,{paddingLeft:1,...a.UW},t.createElement(h.h,{onClick:()=>k(c.id),label:D({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,re.P)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(Me.Z,null)})))))}))};oe.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},oe.propTypes={canDelete:d().bool,entriesToDelete:d().array,headers:d().array.isRequired,onClickDelete:d().func,onSelectRow:d().func,rows:d().array,withBulkActions:d().bool,withMainAction:d().bool};var ve=oe,ye=e(21223),Pe=e(98887),he=e(87674),de=e(10710),ie=e(97037),De=e(74973),Oe=e(79129),Ce=e(2748),Ae=e(92802),Le=e(47577),Te=e(18703),X=e(24346);const ue={firstname:"",lastname:"",email:"",roles:[]},Ie=[],Re=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0}]],Ue=X.Ry().shape({firstname:X.Z_().trim().required(a.I0.required),lastname:X.Z_(),email:X.Z_().email(a.I0.email).required(a.I0.required),roles:X.IX().min(1,a.I0.required).required(a.I0.required)}),Se={create:{buttonSubmitLabel:{id:"app.containers.Users.ModalForm.footer.button-success",defaultMessage:"Invite user"},isDisabled:!1,next:"magic-link"},"magic-link":{buttonSubmitLabel:{id:"global.finish",defaultMessage:"Finish"},isDisabled:!0,next:null}},Ee=({onSuccess:i,onToggle:f})=>{const[L,k]=(0,t.useState)("create"),[V,j]=(0,t.useState)(!1),[K,R]=(0,t.useState)(null),{formatMessage:P}=(0,g.Z)(),H=(0,a.lm)(),{lockApp:D,unlockApp:c}=(0,a.o1)(),{post:z}=(0,a.kY)(),U=(0,y.c)(Ie,async()=>(await e.e(311).then(e.bind(e,40311))).ROLE_LAYOUT,{combine(M,S){return[...M,S]},defaultValue:[]}),Y=(0,y.c)(ue,async()=>(await e.e(311).then(e.bind(e,40311))).FORM_INITIAL_VALUES,{combine(M,S){return{...M,...S}},defaultValue:ue}),x=(0,y.c)(Le.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE),N=(0,n.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=P({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=()=>{p?k(p):f()},{buttonSubmitLabel:_,isDisabled:Q,next:p}=Se[L],be=L==="create"?t.createElement(A.z,{type:"submit",loading:V},P(_)):t.createElement(A.z,{type:"button",loading:V,onClick:f},P(_));return x?t.createElement(ye.P,{onClose:f,labelledBy:"title"},t.createElement(Pe.x,null,t.createElement(Oe.O,{label:w},t.createElement(Ce.$,{isCurrent:!0},w))),t.createElement(Ae.J9,{enableReinitialize:!0,initialValues:Y,onSubmit:ee,validationSchema:Ue,validateOnChange:!1},({errors:M,handleChange:S,values:G})=>t.createElement(a.l0,null,t.createElement(he.f,null,t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},L!=="create"&&t.createElement(x,{registrationToken:K}),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},P({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),t.createElement($.x,{paddingTop:4},t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:1},t.createElement(de.r,{gap:5},Re.map(me=>me.map(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,error:M[T.name],onChange:S,value:G[T.name]})))))))),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},P({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(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,onChange:S,value:G[T.name]}))))))))),t.createElement(De.m,{startActions:t.createElement(A.z,{variant:"tertiary",onClick:f,type:"button"},P({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,Ke=[{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"}}],xe=[{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:f}){return t.createElement(b.Z,{textColor:"neutral800"},i.map(L=>f({id:`Settings.permissions.users.${L.code}`,defaultMessage:L.name})).join(`,
|
|
2
|
+
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:i},{formatMessage:f}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},f({id:i?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:i?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],fe=()=>{const{post:i}=(0,a.kY)(),{formatAPIError:f}=(0,a.So)(),[L,k]=(0,t.useState)(!1),V=(0,O.v9)(E._),{allowedActions:{canCreate:j,canDelete:K,canRead:R}}=(0,a.ss)(V.settings.users),P=(0,n.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,g.Z)(),{search:c}=(0,C.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:x,refetch:N}=(0,I.R)(v().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,y.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=xe.map(p=>({...p,metadatas:{...p.metadatas,label:D(p.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(p=>!p)},Q=(0,n.useMutation)(async p=>{await i("/admin/users/batch-delete",{ids:p})},{async onSuccess(){await N(),await P.refetchQueries(ge)},onError(p){H({type:"warning",message:{id:"notification.error",message:f(p),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":x},t.createElement(a.SL,{name:"Users"}),t.createElement(r.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:D({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),R&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:D({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(W.Z,{displayedFilters:Ke}))}),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:x,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:p=>Q.mutateAsync([p]),headers:ee,rows:z,withBulkActions:!0,withMainAction:K},t.createElement(ve,{canDelete:K,headers:ee,rows:z,withBulkActions:!0,withMainAction:K})),U&&t.createElement(We,{pagination:U}))),L&&t.createElement(Be,{onSuccess:async()=>{await N(),await P.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,y.c)(fe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return i?t.createElement(i,null):null}},25691:function(B,m,e){e.r(m);var t=e(32735),l=e(96192),r=e(40986),o=e(30305),u=e(99528);const a=()=>{const s=(0,r.v9)(o._);return t.createElement(l.O4,{permissions:s.settings.users.main},t.createElement(u.Z,null))};m.default=a},84024:function(B,m,e){var t=e(32735),l=e(14763),r=e(96192),o=e(94958),u=e(60216),a=e.n(u),s=e(67879);const v=({children:g,target:n})=>{const O=(0,r.lm)(),{formatMessage:C}=(0,s.Z)(),{copy:I}=(0,r.VP)(),y=C({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),E=async()=>{await I(n)&&O({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(r.Y_,{endAction:t.createElement(l.h,{label:y,noBorder:!0,icon:t.createElement(o.Z,null),onClick:E}),title:n,titleEllipsis:!0,subtitle:g,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),l=e(60216),r=e.n(l),o=e(67879),u=e(35231),a=e(84024);const s=({registrationToken:v})=>{const{formatMessage:g}=(0,o.Z)(),n=`${window.location.origin}${u.Z}auth/register?registrationToken=${v}`;return t.createElement(a.Z,{target:n},g({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};s.defaultProps={registrationToken:""},s.propTypes={registrationToken:r().string}},18703:function(B,m,e){var t=e(32735),l=e(16773),r=e(40260),o=e(96192),u=e(75760),a=e(60216),s=e.n(a),v=e(67879),g=e(20108),n=e(8471);const O=(0,n.F4)`
|
|
3
3
|
from {
|
|
4
4
|
transform: rotate(0deg);
|
|
5
5
|
}
|
package/build/{api-tokens-create-page.c08ae118.chunk.js → api-tokens-create-page.571920e5.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(96192),n=t(40986),E=t(30305),a=t(71306);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.ce18efdc.chunk.js → api-tokens-edit-page.cbdc81b1.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(96192),n=t(40986),E=t(30305),a=t(71306);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.783b7569.chunk.js → api-tokens-list-page.de0c49e8.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(W,E,n){n.d(E,{Z:function(){return f}});var e=n(32735),o=n(1690),Z=n(45037),g=n(27947),k=n(8365),N=n(84642),r=n(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(W,E,n){n.d(E,{Z:function(){return f}});var e=n(32735),o=n(1690),Z=n(45037),g=n(27947),k=n(8365),N=n(84642),r=n(96192),P=n(60216),t=n.n(P),S=n(67879),I=n(53038),D=n(77981),x=n(14763),v=n(94997);const U=({tokenName:s,onClickDelete:i,tokenType:c})=>{const{formatMessage:m}=(0,S.Z)(),{trackUsage:p}=(0,r.rS)(),[l,d]=(0,e.useState)(!1),u=()=>{d(!1),p("willDeleteToken",{tokenType:c}),i()};return e.createElement(D.x,{paddingLeft:1,onClick:y=>y.stopPropagation()},e.createElement(x.h,{onClick:()=>{d(!0)},label:m({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${s}`}),name:"delete",noBorder:!0,icon:e.createElement(v.Z,null)}),e.createElement(r.QH,{onToggleDialog:()=>d(!1),onConfirm:u,isOpen:l}))};U.propTypes={tokenName:t().string.isRequired,onClickDelete:t().func.isRequired,tokenType:t().string.isRequired};var Y=U,V=n(10364),K=n(8471);const O={edit:{id:"app.component.table.edit",defaultMessage:"Edit {target}"},read:{id:"app.component.table.read",defaultMessage:"Read {target}"}},J=(0,K.ZP)(r.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:c,children:m})=>{const{formatMessage:p}=(0,S.Z)(),{location:{pathname:l}}=(0,I.k6)();return e.createElement(J,{to:`${l}/${i}`,title:p(O[c],{target:s})},m)};L.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired,buttonType:t().string,children:t().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const T=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(V.Z,null));T.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired};var B=T,Q=n(63318);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(Q.Z,null));A.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired};var $=A;const b=({permissions:s,headers:i,contentType:c,isLoading:m,tokens:p,onConfirmDelete:l,tokenType:d})=>{const{canDelete:u,canUpdate:y,canRead:R}=s;return e.createElement(r.tM,{headers:i,contentType:c,rows:p,withBulkActions:u||y||R,isLoading:m,onConfirmDelete:l},e.createElement(C,{tokenType:d,permissions:s,onConfirmDelete:l}))};b.propTypes={tokens:t().array,permissions:t().shape({canRead:t().bool,canDelete:t().bool,canUpdate:t().bool}).isRequired,headers:t().arrayOf(t().shape({cellFormatter:t().func,key:t().string.isRequired,metadatas:t().shape({label:t().string.isRequired,sortable:t().bool}).isRequired,name:t().string.isRequired})),contentType:t().string.isRequired,isLoading:t().bool,onConfirmDelete:t().func,tokenType:t().string.isRequired},b.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var f=b;const C=({tokenType:s,permissions:i,rows:c,withBulkActions:m,onConfirmDelete:p})=>{const{canDelete:l,canUpdate:d,canRead:u}=i,[{query:y}]=(0,r.Kx)(),{formatMessage:R}=(0,S.Z)(),[,w]=y?y.sort.split(":"):"ASC",{push:M,location:{pathname:F}}=(0,I.k6)(),{trackUsage:H}=(0,r.rS)(),j=c.sort((a,G)=>{const z=a.name.localeCompare(G.name);return w==="DESC"?-z:z});return e.createElement(o.p,null,j.map(a=>e.createElement(Z.Tr,{key:a.id,...(0,r.X7)({fn(){H("willEditTokenFromList",{tokenType:s}),M(`${F}/${a.id}`)},condition:d})},e.createElement(g.Td,{maxWidth:(0,r.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},a.name)),e.createElement(g.Td,{maxWidth:(0,r.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},a.description)),e.createElement(g.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(r.ij,{timestamp:new Date(a.createdAt)}))),e.createElement(g.Td,null,a.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(r.ij,{timestamp:new Date(a.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:R({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),m&&e.createElement(g.Td,null,e.createElement(N.k,{justifyContent:"end"},d&&e.createElement($,{tokenName:a.name,tokenId:a.id}),!d&&u&&e.createElement(B,{tokenName:a.name,tokenId:a.id}),l&&e.createElement(Y,{tokenName:a.name,onClickDelete:()=>p(a.id),tokenType:s}))))))};C.defaultProps={rows:[],withBulkActions:!1},C.propTypes={rows:t().array,permissions:t().shape({canRead:t().bool,canDelete:t().bool,canUpdate:t().bool}).isRequired,onConfirmDelete:t().func.isRequired,tokenType:t().string.isRequired,withBulkActions:t().bool}},49756:function(W,E,n){n.d(E,{Z:function(){return e},f:function(){return o}});const e="api-token",o="transfer-token"},22614:function(W,E,n){n.r(E),n.d(E,{default:function(){return L}});var e=n(32735),o=n(
|
|
16
|
+
`,L=({tokenName:s,tokenId:i,buttonType:c,children:m})=>{const{formatMessage:p}=(0,S.Z)(),{location:{pathname:l}}=(0,I.k6)();return e.createElement(J,{to:`${l}/${i}`,title:p(O[c],{target:s})},m)};L.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired,buttonType:t().string,children:t().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const T=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(V.Z,null));T.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired};var B=T,Q=n(63318);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(Q.Z,null));A.propTypes={tokenName:t().string.isRequired,tokenId:t().oneOfType([t().string,t().number]).isRequired};var $=A;const b=({permissions:s,headers:i,contentType:c,isLoading:m,tokens:p,onConfirmDelete:l,tokenType:d})=>{const{canDelete:u,canUpdate:y,canRead:R}=s;return e.createElement(r.tM,{headers:i,contentType:c,rows:p,withBulkActions:u||y||R,isLoading:m,onConfirmDelete:l},e.createElement(C,{tokenType:d,permissions:s,onConfirmDelete:l}))};b.propTypes={tokens:t().array,permissions:t().shape({canRead:t().bool,canDelete:t().bool,canUpdate:t().bool}).isRequired,headers:t().arrayOf(t().shape({cellFormatter:t().func,key:t().string.isRequired,metadatas:t().shape({label:t().string.isRequired,sortable:t().bool}).isRequired,name:t().string.isRequired})),contentType:t().string.isRequired,isLoading:t().bool,onConfirmDelete:t().func,tokenType:t().string.isRequired},b.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var f=b;const C=({tokenType:s,permissions:i,rows:c,withBulkActions:m,onConfirmDelete:p})=>{const{canDelete:l,canUpdate:d,canRead:u}=i,[{query:y}]=(0,r.Kx)(),{formatMessage:R}=(0,S.Z)(),[,w]=y?y.sort.split(":"):"ASC",{push:M,location:{pathname:F}}=(0,I.k6)(),{trackUsage:H}=(0,r.rS)(),j=c.sort((a,G)=>{const z=a.name.localeCompare(G.name);return w==="DESC"?-z:z});return e.createElement(o.p,null,j.map(a=>e.createElement(Z.Tr,{key:a.id,...(0,r.X7)({fn(){H("willEditTokenFromList",{tokenType:s}),M(`${F}/${a.id}`)},condition:d})},e.createElement(g.Td,{maxWidth:(0,r.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},a.name)),e.createElement(g.Td,{maxWidth:(0,r.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},a.description)),e.createElement(g.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(r.ij,{timestamp:new Date(a.createdAt)}))),e.createElement(g.Td,null,a.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(r.ij,{timestamp:new Date(a.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:R({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),m&&e.createElement(g.Td,null,e.createElement(N.k,{justifyContent:"end"},d&&e.createElement($,{tokenName:a.name,tokenId:a.id}),!d&&u&&e.createElement(B,{tokenName:a.name,tokenId:a.id}),l&&e.createElement(Y,{tokenName:a.name,onClickDelete:()=>p(a.id),tokenType:s}))))))};C.defaultProps={rows:[],withBulkActions:!1},C.propTypes={rows:t().array,permissions:t().shape({canRead:t().bool,canDelete:t().bool,canUpdate:t().bool}).isRequired,onConfirmDelete:t().func.isRequired,tokenType:t().string.isRequired,withBulkActions:t().bool}},49756:function(W,E,n){n.d(E,{Z:function(){return e},f:function(){return o}});const e="api-token",o="transfer-token"},22614:function(W,E,n){n.r(E),n.d(E,{default:function(){return L}});var e=n(32735),o=n(96192),Z=n(40986),g=n(30305),k=n(95162),N=n(64092),r=n(56932),P=n(82064),t=n(33348),S=n.n(t),I=n(67879),D=n(20108),x=n(53038),v=n(49756),U=n(12584),V=[{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}}],O=()=>{(0,o.go)();const h=(0,D.useQueryClient)(),{formatMessage:T}=(0,I.Z)(),B=(0,o.lm)(),Q=(0,Z.v9)(g._),{allowedActions:{canCreate:A,canDelete:$,canUpdate:b,canRead:f}}=(0,o.ss)(Q.settings["api-tokens"]),{push:C}=(0,x.k6)(),{trackUsage:s}=(0,o.rS)(),{startSection:i}=(0,o.c1)(),c=e.useRef(i),{get:m,del:p}=(0,o.kY)(),{formatAPIError:l}=(0,o.So)();e.useEffect(()=>{c.current&&c.current("apiTokens")},[]),e.useEffect(()=>{C({search:S().stringify({sort:"name:ASC"},{encode:!1})})},[C]);const d=V.map(a=>({...a,metadatas:{...a.metadatas,label:T(a.metadatas.label)}})),{data:u,isLoading:y}=(0,D.useQuery)(["api-tokens"],async()=>{s("willAccessTokenList",{tokenType:v.Z});const{data:{data:a}}=await m("/admin/api-tokens");return s("didAccessTokenList",{number:a.length,tokenType:v.Z}),a},{cacheTime:0,enabled:f,onError(a){B({type:"warning",message:l(a)})}}),R=y,w=(0,D.useMutation)(async a=>{await p(`/admin/api-tokens/${a}`)},{async onSuccess(){await h.invalidateQueries(["api-tokens"]),s("didDeleteToken")},onError(a){B({type:"warning",message:l(a)})}}),M=u&&u.length>0,F=f&&M,H=f&&!M&&!A,j=f&&!M&&A;return e.createElement(k.o,{"aria-busy":R},e.createElement(o.SL,{name:"API Tokens"}),e.createElement(N.T,{title:T({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:T({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:A&&e.createElement(o.Qj,{"data-testid":"create-api-token-button",startIcon:e.createElement(P.Z,null),size:"S",onClick:()=>s("willAddTokenFromList",{tokenType:v.Z}),to:"/settings/api-tokens/create"},T({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"}))}),e.createElement(r.D,null,!f&&e.createElement(o.ZF,null),F&&e.createElement(U.Z,{permissions:{canRead:f,canDelete:$,canUpdate:b},headers:d,contentType:"api-tokens",rows:u,isLoading:R,onConfirmDelete:a=>w.mutateAsync(a),tokens:u,tokenType:v.Z}),j&&e.createElement(o.dJ,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(o.Qj,{variant:"secondary",startIcon:e.createElement(P.Z,null),to:"/settings/api-tokens/create"},T({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),H&&e.createElement(o.dJ,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},L=()=>{const h=(0,Z.v9)(g._);return e.createElement(o.O4,{permissions:h.settings["api-tokens"].main},e.createElement(O,null))}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[6090],{39655:function(M,s,t){t.r(s);var e=t(32735),i=t(99226),n=t(95162),l=t(64092),_=t(77981),E=t(80564),d=t(90431),r=t(86332),o=t(95441),g=t(67879);const m=()=>{const{formatMessage:a}=(0,g.Z)();return e.createElement(i.A,null,e.createElement(n.o,null,e.createElement(l.T,{title:a({id:"global.auditLogs",defaultMessage:"Audit Logs"}),subtitle:a({id:"Settings.permissions.auditLogs.listview.header.subtitle",defaultMessage:"Logs of all the activities that happened in your environment"})}),e.createElement(_.x,{paddingLeft:10,paddingRight:10},e.createElement(E.x,{icon:e.createElement(r.Z,{width:"10rem"}),content:a({id:"Settings.permissions.auditLogs.not-available",defaultMessage:"Audit Logs is only available as part of the Enterprise Edition. Upgrade to get a searchable and filterable display of all activities."}),action:e.createElement(d.Q,{variant:"default",endIcon:e.createElement(o.Z,null),href:"https://strp.cc/45mbAdF",isExternal:!0,target:"_blank"},a({id:"global.learn-more",defaultMessage:"Learn more"}))}))))};s.default=m}}]);
|