@strapi/admin 4.11.2 → 4.11.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/components/AuthenticatedApp/index.js +2 -2
- package/admin/src/constants.js +90 -0
- package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +10 -1
- package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +12 -8
- package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +5 -6
- package/admin/src/content-manager/components/RelationInput/RelationInput.js +99 -178
- package/admin/src/content-manager/components/RelationInput/components/Option.js +17 -15
- package/admin/src/content-manager/components/RelationInput/components/RelationList.js +2 -2
- package/admin/src/content-manager/components/RelationInputDataManager/RelationInputDataManager.js +12 -6
- package/admin/src/content-manager/components/RelationInputDataManager/utils/select.js +18 -3
- package/admin/src/content-manager/pages/App/index.js +4 -4
- package/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +9 -5
- package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +3 -4
- package/admin/src/content-manager/pages/EditView/hooks/useOnce.js +14 -0
- package/admin/src/content-manager/pages/EditView/index.js +31 -10
- package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/RelationMultiple/index.js +1 -1
- package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/utils/hasContent.js +1 -1
- package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/ConfirmDialogDelete/index.js +7 -4
- package/admin/src/content-manager/pages/ListView/components/ConfirmDialogDeleteAll/index.js +78 -0
- package/admin/src/content-manager/pages/ListView/{FieldPicker → components/FieldPicker}/index.js +20 -9
- package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/TableRows/index.js +90 -61
- package/admin/src/content-manager/pages/ListView/index.js +173 -34
- package/admin/src/content-manager/pages/ListView/utils/index.js +0 -2
- package/admin/src/content-manager/pages/ListViewLayoutManager/Permissions.js +1 -1
- package/admin/src/content-manager/pages/SingleTypeRecursivePath/index.js +4 -4
- package/admin/src/hooks/useMenu/index.js +70 -37
- package/admin/src/hooks/useMenu/utils/getGeneralLinks.js +5 -2
- package/admin/src/hooks/useSettingsMenu/constants.js +0 -7
- package/admin/src/hooks/useSettingsMenu/index.js +19 -5
- package/admin/src/pages/App/constants.js +1 -0
- package/admin/src/pages/App/index.js +23 -2
- package/admin/src/pages/App/reducer.js +8 -1
- package/admin/src/pages/App/selectors.js +12 -0
- package/admin/src/pages/AuthPage/{utils/forms.js → constants.js} +6 -8
- package/admin/src/pages/AuthPage/index.js +17 -5
- package/admin/src/pages/InstalledPluginsPage/index.js +10 -7
- package/admin/src/pages/MarketplacePage/index.js +11 -6
- package/admin/src/pages/ProfilePage/index.js +2 -2
- package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +15 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedCreateView/index.js +5 -2
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedEditView/index.js +5 -2
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedListView/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +130 -107
- package/admin/src/pages/SettingsPage/pages/Roles/CreatePage/index.js +5 -3
- package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/Roles/ProtectedEditPage/index.js +8 -9
- package/admin/src/pages/SettingsPage/pages/Roles/ProtectedListPage/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js +5 -2
- package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedEditView/index.js +5 -2
- package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedListView/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/{utils/layout.js → constants.js} +35 -2
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +43 -10
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/Users/ProtectedEditPage/index.js +13 -9
- package/admin/src/pages/SettingsPage/pages/Users/ProtectedListPage/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/Events/index.js +4 -2
- package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/utils/makeWebhookValidationSchema.js +11 -5
- package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +4 -3
- package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedCreateView/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedEditView/index.js +11 -6
- package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js +11 -6
- package/admin/src/translations/ca.json +1 -0
- package/admin/src/translations/en.json +4 -1
- package/admin/src/translations/es.json +5 -0
- package/admin/src/translations/fr.json +1 -0
- package/build/1386.3b2aa6a7.chunk.js +3 -0
- package/build/1799.44d2e264.chunk.js +33 -0
- package/build/1970.39a2d75e.chunk.js +1 -0
- package/build/3269.1ea0f5a6.chunk.js +1 -0
- package/build/{3528.969338e2.chunk.js → 3528.4845cf92.chunk.js} +1 -1
- package/build/448.829e1344.chunk.js +1 -0
- package/build/{5542.64b623c9.chunk.js → 5542.c62d0daf.chunk.js} +1 -1
- package/build/5563.86f9aa9c.chunk.js +79 -0
- package/build/{5932.9e1f8f92.chunk.js → 5932.6a23b88c.chunk.js} +1 -1
- package/build/{7018.0e8a6297.chunk.js → 7018.98feed67.chunk.js} +1 -1
- package/build/7259.fb69d4bf.chunk.js +1 -0
- package/build/7394.423886bd.chunk.js +1 -0
- package/build/{371.6e4e2c1f.chunk.js → 970.89601f27.chunk.js} +24 -24
- package/build/Admin-authenticatedApp.cb649fc1.chunk.js +79 -0
- package/build/{Admin_InternalErrorPage.4a6f7b20.chunk.js → Admin_InternalErrorPage.8911cb49.chunk.js} +1 -1
- package/build/{Admin_homePage.6cd6c25c.chunk.js → Admin_homePage.be30ef4e.chunk.js} +1 -1
- package/build/{Admin_marketplace.c82c1d3c.chunk.js → Admin_marketplace.74a58e20.chunk.js} +8 -8
- package/build/Admin_pluginsPage.ce464189.chunk.js +6 -0
- package/build/{Admin_profilePage.9d70d609.chunk.js → Admin_profilePage.2131eb68.chunk.js} +2 -2
- package/build/Admin_settingsPage.4069bb8a.chunk.js +79 -0
- package/build/{Upload_ConfigureTheView.34f449d7.chunk.js → Upload_ConfigureTheView.7a1cb9c9.chunk.js} +1 -1
- package/build/admin-app.fea867af.chunk.js +61 -0
- package/build/admin-edit-roles-page.3fdd6b9d.chunk.js +267 -0
- package/build/admin-edit-users.200551e3.chunk.js +10 -0
- package/build/admin-roles-list.e17b00d7.chunk.js +23 -0
- package/build/admin-users.3b12dca2.chunk.js +11 -0
- package/build/api-tokens-create-page.3dd4e921.chunk.js +1 -0
- package/build/api-tokens-edit-page.9a1dd2fa.chunk.js +1 -0
- package/build/api-tokens-list-page.a103f526.chunk.js +16 -0
- package/build/audit-logs-settings-page.f538490f.chunk.js +1 -0
- package/build/ca-json.1fed5d8b.chunk.js +1 -0
- package/build/content-manager.c40f5ff9.chunk.js +1088 -0
- package/build/{content-type-builder-list-view.c28d33a6.chunk.js → content-type-builder-list-view.a200a358.chunk.js} +3 -3
- package/build/content-type-builder.bd1bbff1.chunk.js +166 -0
- package/build/{email-settings-page.aee46eaa.chunk.js → email-settings-page.45695daa.chunk.js} +2 -2
- package/build/en-json.fb9f6ddd.chunk.js +1 -0
- package/build/es-json.42096084.chunk.js +1 -0
- package/build/fr-json.69789980.chunk.js +1 -0
- package/build/{i18n-settings-page.4bc37a3f.chunk.js → i18n-settings-page.29308d0b.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.ee36abd9.js +2927 -0
- package/build/review-workflows-settings.93808ae0.chunk.js +110 -0
- package/build/{runtime~main.2d0ed226.js → runtime~main.efd966f6.js} +2 -2
- package/build/sso-settings-page.0cdb96a6.chunk.js +1 -0
- package/build/transfer-tokens-create-page.de14cad4.chunk.js +1 -0
- package/build/transfer-tokens-edit-page.4f5e39af.chunk.js +1 -0
- package/build/transfer-tokens-list-page.7237443d.chunk.js +16 -0
- package/build/{upload-settings.a05aa26c.chunk.js → upload-settings.cb6c14c3.chunk.js} +2 -2
- package/build/upload.7e629643.chunk.js +26 -0
- package/build/users-advanced-settings-page.750b1f76.chunk.js +9 -0
- package/build/{users-email-settings-page.0bc87315.chunk.js → users-email-settings-page.e9bcd865.chunk.js} +1 -1
- package/build/{users-providers-settings-page.e88f1ac5.chunk.js → users-providers-settings-page.a94253e9.chunk.js} +1 -1
- package/build/{users-roles-settings-page.573a5c3e.chunk.js → users-roles-settings-page.1f505119.chunk.js} +5 -5
- package/build/webhook-edit-page.77ef4f1a.chunk.js +33 -0
- package/build/webhook-list-page.940a40f1.chunk.js +63 -0
- package/ee/admin/constants.js +16 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +1 -1
- package/ee/admin/hooks/useLicenseLimits/index.js +4 -2
- package/ee/admin/hooks/useSettingsMenu/constants.js +0 -5
- package/ee/admin/pages/AuthPage/constants.js +12 -0
- package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +7 -7
- package/ee/admin/pages/SettingsPage/pages/AuditLogs/ProtectedListPage/index.js +11 -6
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ProtectedPage.js +20 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ReviewWorkflows.js +68 -73
- package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +16 -12
- package/ee/admin/pages/SettingsPage/pages/Users/ListPage/ModalForm/{utils/roleSettingsForm.js → constants.js} +14 -8
- package/ee/admin/pages/SettingsPage/pages/Webhooks/EditView/components/EventTable/EventTableEE.js +8 -9
- package/ee/server/constants/webhookEvents.js +5 -0
- package/ee/server/controllers/workflows/stages/index.js +1 -1
- package/ee/server/services/passport.js +1 -1
- package/ee/server/services/review-workflows/entity-service-decorator.js +52 -1
- package/ee/server/services/review-workflows/review-workflows.js +4 -1
- package/package.json +12 -12
- package/server/content-types/User.js +10 -0
- package/server/services/permission/permissions-manager/sanitize.js +1 -1
- package/server/strategies/api-token.js +9 -5
- package/server/strategies/data-transfer.js +9 -5
- package/admin/src/content-manager/components/DynamicTable/index.js +0 -163
- package/admin/src/content-manager/components/RelationInput/components/Relation.js +0 -53
- package/admin/src/content-manager/pages/ListView/FieldPicker/utils/getAllAllowedHeader.js +0 -17
- package/admin/src/content-manager/pages/ListView/PaginationFooter/index.js +0 -35
- package/admin/src/hooks/useMenu/reducer.js +0 -63
- package/admin/src/pages/AuthPage/utils/index.js +0 -2
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/formDataModel.js +0 -8
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/roleSettingsForm.js +0 -3
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/schema.js +0 -11
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/stepper.js +0 -17
- package/admin/src/permissions/customPermissions.js +0 -1
- package/admin/src/permissions/defaultPermissions.js +0 -92
- package/admin/src/permissions/index.js +0 -8
- package/build/1970.d246745e.chunk.js +0 -1
- package/build/3562.e0b1a0b3.chunk.js +0 -50
- package/build/5563.8a76bb1d.chunk.js +0 -79
- package/build/7259.eac09d4b.chunk.js +0 -1
- package/build/7447.3dabc92f.chunk.js +0 -35
- package/build/9363.6a7a78fc.chunk.js +0 -33
- package/build/Admin-authenticatedApp.4e158a8c.chunk.js +0 -79
- package/build/Admin_pluginsPage.5d9d4060.chunk.js +0 -6
- package/build/Admin_settingsPage.fefeafa0.chunk.js +0 -79
- package/build/admin-app.42c7a752.chunk.js +0 -63
- package/build/admin-edit-roles-page.6d62ca0b.chunk.js +0 -267
- package/build/admin-edit-users.bce64103.chunk.js +0 -10
- package/build/admin-roles-list.81ae57e3.chunk.js +0 -23
- package/build/admin-users.1ec50325.chunk.js +0 -11
- package/build/api-tokens-create-page.65411a36.chunk.js +0 -1
- package/build/api-tokens-edit-page.60312cb6.chunk.js +0 -1
- package/build/api-tokens-list-page.36a241c1.chunk.js +0 -16
- package/build/audit-logs-settings-page.fca8e2a0.chunk.js +0 -1
- package/build/ca-json.43e14418.chunk.js +0 -1
- package/build/content-manager.d6e60c78.chunk.js +0 -1094
- package/build/content-type-builder.dc0c8745.chunk.js +0 -132
- package/build/en-json.f5fa476a.chunk.js +0 -1
- package/build/es-json.715b6fd8.chunk.js +0 -1
- package/build/fr-json.73494bf5.chunk.js +0 -1
- package/build/main.9b423e8b.js +0 -2926
- package/build/review-workflows-settings.fc0b59ca.chunk.js +0 -61
- package/build/sso-settings-page.52f8d7de.chunk.js +0 -1
- package/build/transfer-tokens-create-page.9ec277d7.chunk.js +0 -1
- package/build/transfer-tokens-edit-page.fa5ade14.chunk.js +0 -1
- package/build/transfer-tokens-list-page.ae9900e4.chunk.js +0 -16
- package/build/upload.b0efd607.chunk.js +0 -26
- package/build/users-advanced-settings-page.d9e11bab.chunk.js +0 -9
- package/build/webhook-edit-page.1e8c9382.chunk.js +0 -31
- package/build/webhook-list-page.b2bcb3b6.chunk.js +0 -63
- package/ee/admin/pages/AuthPage/utils/forms.js +0 -16
- package/ee/admin/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/formDataModel.js +0 -14
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/CellValue.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/Media/FileWrapper.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/Media/index.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/MultipleMedias.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/RelationSingle/index.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/RepeatableComponent/index.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/SingleComponent/index.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/index.js +0 -0
- /package/admin/src/content-manager/{components/DynamicTable → pages/ListView/components}/CellContent/utils/isSingleRelation.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9514],{1372:function(st,v,t){t.r(v),t.d(v,{default:function(){return X}});var e=t(32735),B=t(96709),N=t(27649),z=t(82055),I=t(41415),O=t(17e3),r=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9514],{1372:function(st,v,t){t.r(v),t.d(v,{default:function(){return X}});var e=t(32735),B=t(96709),N=t(27649),z=t(82055),I=t(41415),O=t(17e3),r=t(19565),W=t(29439),h=t(66456),P=t(89793),$=t.n(P),G=t(60216),d=t.n(G),y=t(67879),H=t(68715),m=t(74951),o=t(20069),b=t(72850),U=t(15335),E=t(5803),p=t(68465),C=t(84967),D=t(68781);const Z=({sort:s="",pageSize:l=10,onChange:n})=>{const{formatMessage:i}=(0,y.Z)();return e.createElement(b.x,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(U.r,{gap:4},e.createElement(E.P,{s:12,col:6},e.createElement(p.P,{label:i({id:(0,o.Z)("config.entries.title"),defaultMessage:"Entries per page"}),hint:i({id:(0,o.Z)("config.entries.note"),defaultMessage:"Number of assets displayed by default in the Media Library"}),onChange:a=>n({target:{name:"pageSize",value:a}}),name:"pageSize",value:l},D.ay.map(a=>e.createElement(C.W,{key:a,value:a},a)))),e.createElement(E.P,{s:12,col:6},e.createElement(p.P,{label:i({id:(0,o.Z)("config.sort.title"),defaultMessage:"Default sort order"}),hint:i({id:(0,o.Z)("config.note"),defaultMessage:"Note: You can override this value in the media library."}),onChange:a=>n({target:{name:"sort",value:a}}),name:"sort",value:s,"test-sort":s,"data-testid":"sort-select"},D.Fo.map(a=>e.createElement(C.W,{"data-testid":`sort-option-${a.value}`,key:a.key,value:a.value},i({id:(0,o.Z)(a.key),defaultMessage:`${a.value}`})))))))};Z.propTypes={sort:d().string.isRequired,pageSize:d().number.isRequired,onChange:d().func.isRequired};const S=`${m.Z}/ON_CHANGE`,M=`${m.Z}/SET_LOADED`,x=({name:s,value:l})=>({type:S,keys:s,value:l}),F=()=>({type:M}),c={initialData:{},modifiedData:{}},L=s=>({...c,initialData:s,modifiedData:s});var V=t(97889),Q=t(33795),Y=t.n(Q),j=t(3040),J=t.n(j),K=(s=c,l)=>(0,V.ZP)(s,n=>{switch(l.type){case S:{J()(n,["modifiedData",...l.keys.split(".")],l.value);break}case M:{const i=L(Y()(n,["modifiedData"],{}));n.initialData=i.initialData,n.modifiedData=i.modifiedData;break}default:return n}});const T=({config:s})=>{const{trackUsage:l}=(0,r.rS)(),{formatMessage:n}=(0,y.Z)(),i=(0,r.lm)(),{mutateConfig:a}=(0,H.Z)(),{isLoading:A}=a,[k,w]=(0,e.useState)(!1),f=()=>w(g=>!g),[q,R]=(0,e.useReducer)(K,c,()=>L(s)),{initialData:_,modifiedData:u}=q,tt=g=>{g.preventDefault(),f()},et=async()=>{l("willEditMediaLibraryConfig"),await a.mutateAsync(u),f(),R(F()),i({type:"success",message:{id:"notification.form.success.fields",defaultMessage:"Changes saved"}})},at=({target:{name:g,value:nt}})=>{R(x({name:g,value:nt}))};return(0,r.go)(),e.createElement(B.A,null,e.createElement(N.o,{"aria-busy":A},e.createElement("form",{onSubmit:tt},e.createElement(z.T,{navigationAction:e.createElement(r.rU,{startIcon:e.createElement(W.Z,null),to:`/plugins/${m.Z}`,id:"go-back"},n({id:(0,o.Z)("config.back"),defaultMessage:"Back"})),primaryAction:e.createElement(I.z,{size:"S",startIcon:e.createElement(h.Z,null),disabled:$()(u,_),type:"submit"},n({id:"global.save",defaultMessage:"Save"})),subtitle:n({id:(0,o.Z)("config.subtitle"),defaultMessage:"Define the view settings of the media library."}),title:n({id:(0,o.Z)("config.title"),defaultMessage:"Configure the view - Media Library"})}),e.createElement(O.D,null,e.createElement(Z,{"data-testid":"settings",pageSize:u.pageSize||"",sort:u.sort||"",onChange:at})),e.createElement(r.QH,{bodyText:{id:(0,o.Z)("config.popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:e.createElement(h.Z,null),isConfirmButtonLoading:A,isOpen:k,onToggleDialog:f,onConfirm:et,variantRightButton:"success-light"}))))};T.propTypes={config:d().shape({pageSize:d().number,sort:d().string}).isRequired};var X=T}}]);
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{32903:function(Z,v,t){"use strict";t.r(v),t.d(v,{default:function(){return Os}});var e=t(32735),f=t(12301),y=t(65810),E=t(56784),c=t.n(E),m=t(93839),A=t.n(m),M=t(86349),L=t.n(M),U=t(88423),b=t.n(U),D=t(74758),S=t(14911),R=t(47750),T="strapi-admin-language",i=t(19565),B=t(60216),a=t.n(B),ue=t(20108),me=t(15062),I=t(66694),x=t(97889);const ee={menuLogo:null,authLogo:null};var Re=(o=ee,s)=>(0,x.ZP)(o,n=>{switch(s.type){case"UPDATE_PROJECT_SETTINGS":{Object.assign(n,s.values);break}default:return n}});const ge=({children:o,authLogo:s,menuLogo:n,showReleaseNotification:r,showTutorials:l})=>{const[{menuLogo:h,authLogo:p},P]=(0,e.useReducer)(Re,ee),N=(0,e.useCallback)(({menuLogo:Y,authLogo:C})=>P({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:Y||n,authLogo:C||s}}),[s,n]),j=(0,e.useMemo)(()=>({logos:{menu:{custom:h,default:n},auth:{custom:p,default:s}},updateProjectSettings:N,showReleaseNotification:r,showTutorials:l}),[h,n,p,s,N,r,l]);return e.createElement(I._5.Provider,{value:j},o)};ge.propTypes={authLogo:a().string.isRequired,children:a().element.isRequired,menuLogo:a().string.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired};var we=ge,ke=t(33795),Se=t.n(ke),ze=t(3040),je=t.n(ze);const et="GUIDED_TOUR_CURRENT_STEP",$e="GUIDED_TOUR_COMPLETED_STEPS",mt="GUIDED_TOUR_SKIPPED",tt=JSON.parse,Je=JSON.stringify;var De={clear(){localStorage.removeItem(et),localStorage.removeItem($e)},addCompletedStep(o){const s=tt(localStorage.getItem($e))?.slice()||[];s.includes(o)||(s.push(o),localStorage.setItem($e,Je(s)))},addCurrentStep(o){localStorage.setItem(et,Je(o))},setSkipped(o){localStorage.setItem(mt,Je(o))},get(o){return tt(localStorage.getItem(o))}},gt=o=>{const s={...o},n=De.get($e),r=De.get(et),l=De.get(mt);if(n&&n.forEach(h=>{const[p,P]=h.split(".");je()(s,["guidedTourState",p,P],!0)}),r){const[h,p]=r.split(".");je()(s,["guidedTourState",h,p],!0),De.addCompletedStep(r),De.addCurrentStep(null)}return l!==null&&je()(s,"isSkipped",l),s};const pt={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!0};var st=(o=pt,s)=>(0,x.ZP)(o,n=>{switch(s.type){case"SET_CURRENT_STEP":{n.currentStep=s.step;break}case"SET_STEP_STATE":{const[r,l]=s.currentStep.split(".");n.guidedTourState[r][l]=s.value;break}case"SET_SKIPPED":{n.isSkipped=s.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{n.isGuidedTourVisible=s.value;break}default:return n}}),ft=(o,s)=>{const n=Object.entries(s),r=n.findIndex(([h])=>h===o);return n.slice(0,r).every(([,h])=>Object.values(h).every(Boolean))},ht=(o,s)=>{const n=o.split("."),r=n[1],l=Object.entries(s[n[0]]),h=l.findIndex(([P])=>P===r);return l.slice(0,h).every(([,P])=>P)};const nt=({children:o})=>{const[{currentStep:s,guidedTourState:n,isGuidedTourVisible:r,isSkipped:l},h]=(0,e.useReducer)(st,pt,gt),p=C=>{if(C!==null){const oe=Se()(n,C),Q=ht(C,n);if(oe||l||!Q)return null}return De.addCurrentStep(C),h({type:"SET_CURRENT_STEP",step:C})},P=C=>{h({type:"SET_GUIDED_TOUR_VISIBILITY",value:C})},N=(C,oe)=>{De.addCompletedStep(C),h({type:"SET_STEP_STATE",currentStep:C,value:oe})},j=C=>{const oe=n[C];if(oe){const Q=ft(C,n),re=Object.keys(oe)[0],q=oe[re];if(Q&&!s&&!q)return p(`${C}.${re}`)}return null},Y=C=>{De.setSkipped(C),h({type:"SET_SKIPPED",value:C})};return e.createElement(i.Zc,{guidedTourState:n,currentStep:s,setCurrentStep:p,setGuidedTourVisibility:P,setSkipped:Y,setStepState:N,startSection:j,isGuidedTourVisible:r,isSkipped:l},o)};nt.propTypes={children:a().element.isRequired};var Et=nt,at=t(58732),Ht=t.n(at),Pt=t(78023),vt=t(5985);const Ze=({changeLocale:o,children:s,localeNames:n})=>e.createElement(vt.Z.Provider,{value:{changeLocale:o,localeNames:n}},s);Ze.propTypes={changeLocale:a().func.isRequired,children:a().element.isRequired,localeNames:a().object.isRequired};var yt=Ze,Rt=o=>{const s=window.localStorage.getItem(T);return{locale:o[s]?s:"en",localeNames:o}};const ot={localeNames:{en:"English"},locale:"en"};var Ct=(o=ot,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:n}=s;return o.localeNames[n]?{...o,locale:n}:o}default:return o}};const Mt=({children:o,localeNames:s,messages:n})=>{const[{locale:r},l]=(0,e.useReducer)(Ct,ot,()=>Rt(s));(0,e.useEffect)(()=>{window.localStorage.setItem(T,r),document.documentElement.setAttribute("lang",r)},[r]);const h=P=>{l({type:"CHANGE_LOCALE",locale:P})},p=Ht()(n[r],n.en);return e.createElement(Pt.Z,{locale:r,defaultLocale:"en",messages:p,textComponent:"span"},e.createElement(yt,{changeLocale:h,localeNames:s},o))};Mt.propTypes={children:a().element.isRequired,localeNames:a().objectOf(a().string).isRequired,messages:a().object.isRequired};var Lt=Mt,St=t(24854),Ie=t(67879),Dt=t(10328),Be=t(8471),It=Be.vJ`
|
|
2
|
+
body {
|
|
3
|
+
background: ${({theme:o})=>o.colors.neutral100};
|
|
4
|
+
}
|
|
5
|
+
`;const Ot=({children:o})=>{const{currentTheme:s,themes:n}=(0,Dt.M1)(),{locale:r}=(0,Ie.Z)();return e.createElement(St.h,{locale:r,theme:n[s]||n.light},o,e.createElement(It,null))};Ot.propTypes={children:a().element.isRequired};var bt=Ot;const it="STRAPI_THEME",Ut=()=>{const o=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",s=localStorage.getItem(it);return s||localStorage.setItem(it,o),s||o},kt=({children:o,themes:s})=>{const[n,r]=(0,e.useState)(Ut()),l=(0,e.useCallback)(p=>{r(p),localStorage.setItem(it,p)},[r]),h=(0,e.useMemo)(()=>({currentTheme:n,onChangeTheme:l,themes:s}),[n,l,s]);return e.createElement(I.Rj.Provider,{value:h},o)};kt.propTypes={children:a().node.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var jt=kt;const g=new ue.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),d=({authLogo:o,children:s,components:n,customFields:r,fields:l,getAdminInjectedComponents:h,getPlugin:p,localeNames:P,menu:N,menuLogo:j,messages:Y,plugins:C,runHookParallel:oe,runHookSeries:Q,runHookWaterfall:re,settings:q,showReleaseNotification:K,showTutorials:Fe,store:Ge,themes:te})=>e.createElement(Lt,{messages:Y,localeNames:P},e.createElement(jt,{themes:te},e.createElement(bt,null,e.createElement(ue.QueryClientProvider,{client:g},e.createElement(me.zt,{store:Ge},e.createElement(I.ux.Provider,{value:{getAdminInjectedComponents:h}},e.createElement(we,{authLogo:o,menuLogo:j,showReleaseNotification:K,showTutorials:Fe},e.createElement(i._Y,{getPlugin:p,menu:N,plugins:C,runHookParallel:oe,runHookWaterfall:re,runHookSeries:Q,settings:q},e.createElement(i.rt,{components:n,fields:l},e.createElement(i.MG,{customFields:r},e.createElement(i.m$,null,e.createElement(i.w7,null,e.createElement(Et,null,e.createElement(i.N$,null,s))))))))))))));d.propTypes={authLogo:a().oneOfType([a().string,a().any]).isRequired,children:a().element.isRequired,components:a().object.isRequired,customFields:a().object.isRequired,fields:a().object.isRequired,getAdminInjectedComponents:a().func.isRequired,getPlugin:a().func.isRequired,localeNames:a().objectOf(a().string).isRequired,menu:a().arrayOf(a().shape({to:a().string.isRequired,icon:a().func.isRequired,intlLabel:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired}).isRequired,permissions:a().array,Component:a().func})).isRequired,menuLogo:a().oneOfType([a().string,a().any]).isRequired,messages:a().object.isRequired,plugins:a().object.isRequired,runHookParallel:a().func.isRequired,runHookWaterfall:a().func.isRequired,runHookSeries:a().func.isRequired,settings:a().object.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired,store:a().object.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var u=d,O=t(20284),k=t(6680);const W=(o,s)=>{let n=k.compose;const r=[];o.forEach(h=>{r.push(h())});const l=(0,k.createStore)($(s,{}),{},n((0,k.applyMiddleware)(...r)));return l.asyncReducers={},l.injectReducer=(h,p)=>{l.asyncReducers[h]=p,l.replaceReducer($(s,l.asyncReducers))},l},$=(o,s)=>(0,k.combineReducers)({...o,...s});var F=W,X=t(78246),G=()=>{const o=[];return{register(s){o.push(s)},delete(s){o.splice(o.indexOf(s),1)},runWaterfall(s,n){return o.reduce((r,l)=>l(r,n),s)},async runWaterfallAsync(s,n){let r=s;for(const l of o)r=await l(r,n);return r},runSeries(...s){return o.map(n=>n(...s))},async runSeriesAsync(...s){const n=[];for(const r of o)n.push(await r(...s));return n},runParallel(...s){return Promise.all(o.map(n=>n(...s)))}}},Pe=t(46339),Oe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=",Xe={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[],publishModalAdditionalInfos:[],unpublishModalAdditionalInfos:[]}}},xe=t(10728),ne=t(53038);const We=({component:o,path:s,...n})=>{const{pathname:r,search:l}=(0,ne.TH)();return e.createElement(ne.AW,{path:s,render:h=>i.I8.getToken()!==null?e.createElement(o,{...n,...h}):e.createElement(ne.l_,{to:{pathname:"/auth/login",search:r!=="/"&&`?redirectTo=${encodeURIComponent(`${r}${l}`)}`}})})};We.propTypes={component:a().any.isRequired,path:a().string.isRequired};var Ne=(0,e.memo)(We);const Ke={contentManager:{main:[],collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},marketplace:{main:[{action:"admin::marketplace.read",subject:null}],read:[{action:"admin::marketplace.read",subject:null}]},settings:{roles:{main:[{action:"admin::roles.create",subject:null},{action:"admin::roles.update",subject:null},{action:"admin::roles.read",subject:null},{action:"admin::roles.delete",subject:null}],create:[{action:"admin::roles.create",subject:null}],delete:[{action:"admin::roles.delete",subject:null}],read:[{action:"admin::roles.read",subject:null}],update:[{action:"admin::roles.update",subject:null}]},users:{main:[{action:"admin::users.create",subject:null},{action:"admin::users.read",subject:null},{action:"admin::users.update",subject:null},{action:"admin::users.delete",subject:null}],create:[{action:"admin::users.create",subject:null}],delete:[{action:"admin::users.delete",subject:null}],read:[{action:"admin::users.read",subject:null}],update:[{action:"admin::users.update",subject:null}]},webhooks:{main:[{action:"admin::webhooks.create",subject:null},{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],create:[{action:"admin::webhooks.create",subject:null}],delete:[{action:"admin::webhooks.delete",subject:null}],read:[{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],update:[{action:"admin::webhooks.update",subject:null}]},"api-tokens":{main:[{action:"admin::api-tokens.access",subject:null}],create:[{action:"admin::api-tokens.create",subject:null}],delete:[{action:"admin::api-tokens.delete",subject:null}],read:[{action:"admin::api-tokens.read",subject:null}],update:[{action:"admin::api-tokens.update",subject:null}],regenerate:[{action:"admin::api-tokens.regenerate",subject:null}]},"transfer-tokens":{main:[{action:"admin::transfer.tokens.access",subject:null}],create:[{action:"admin::transfer.tokens.create",subject:null}],delete:[{action:"admin::transfer.tokens.delete",subject:null}],read:[{action:"admin::transfer.tokens.read",subject:null}],update:[{action:"admin::transfer.tokens.update",subject:null}],regenerate:[{action:"admin::transfer.tokens.regenerate",subject:null}]},"project-settings":{read:[{action:"admin::project-settings.read",subject:null}],update:[{action:"admin::project-settings.update",subject:null}]}}};var ve=t(18782),ae=t(8997),pe=t(84306),be=t(39935),qe=t.n(be),ss=t(9086),rt=t.n(ss),ns=t(20139),as=t(41832),z=t(24346),Ve=t(27649),ye=t(72850),Te=t(49372),Ae=t(87933),He=t(10369),lt=t(41415),wt=t(92802),Ye=t(10190),ce=t(954);const Zt=({onSubmit:o,schema:s})=>{const{formatMessage:n}=(0,Ie.Z)();return e.createElement(ce.ZP,null,e.createElement(Ve.o,null,e.createElement(ce.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{email:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:r,errors:l,handleChange:h})=>e.createElement(i.l0,{noValidate:!0},e.createElement(ce.sg,null,e.createElement(Ye.Z,null),e.createElement(ye.x,{paddingTop:6,paddingBottom:7},e.createElement(Te.Z,{as:"h1",variant:"alpha"},n({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),l.errorMessage&&e.createElement(Te.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},n({id:l.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(Ae.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(He.o,{error:l.email?n({id:l.email,defaultMessage:"This email is invalid."}):"",value:r.email,onChange:h,label:n({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:n({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(lt.z,{type:"submit",fullWidth:!0},n({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),e.createElement(Ae.k,{justifyContent:"center"},e.createElement(ye.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},n({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Zt.defaultProps={onSubmit:o=>o.preventDefault()},Zt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var os=Zt,is=()=>{const{formatMessage:o}=(0,Ie.Z)();return e.createElement(ce.ZP,null,e.createElement(Ve.o,null,e.createElement(ce.bU,null,e.createElement(ce.sg,null,e.createElement(Ye.Z,null),e.createElement(ye.x,{paddingTop:6,paddingBottom:7},e.createElement(Te.Z,{as:"h1",variant:"alpha"},o({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),e.createElement(Te.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),e.createElement(ye.x,{paddingTop:4},e.createElement(Te.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),e.createElement(Ae.k,{justifyContent:"center"},e.createElement(ye.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},rs=()=>{const{formatMessage:o}=(0,Ie.Z)(),n=(0,i.aM)().get("info")||o({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return e.createElement(ce.ZP,null,e.createElement(Ve.o,null,e.createElement(ce.bU,null,e.createElement(ce.sg,null,e.createElement(Ye.Z,null),e.createElement(ye.x,{paddingTop:6,paddingBottom:7},e.createElement(Te.Z,{as:"h1",variant:"alpha"},o({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),e.createElement(Te.Z,null,n),e.createElement(ye.x,{paddingTop:4},e.createElement(Te.Z,null,o({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),e.createElement(Ae.k,{justifyContent:"center"},e.createElement(ye.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},ls=t(15335),Gt=t(5803),us=t(8284),ut=t(54894),ct=t(60492),dt=t(72218);const zt=Be.ZP.a`
|
|
6
|
+
color: ${({theme:o})=>o.colors.primary600};
|
|
7
|
+
`,$t=(0,Be.ZP)(He.o)`
|
|
8
|
+
::-ms-reveal {
|
|
9
|
+
display: none;
|
|
10
|
+
}
|
|
11
|
+
`,Bt=({authType:o,fieldsToDisable:s,noSignin:n,onSubmit:r,schema:l})=>{const h=(0,i.lm)(),{push:p}=(0,ne.k6)(),[P,N]=(0,e.useState)(!1),[j,Y]=(0,e.useState)(!1),[C,oe]=(0,e.useState)(0),[Q,re]=(0,e.useState)({}),{trackUsage:q}=(0,i.rS)(),{formatMessage:K}=(0,Ie.Z)(),Fe=(0,i.aM)(),{formatAPIError:Ge}=(0,i.So)(),{get:te}=(0,i.kY)(),ie=Fe.get("registrationToken");(0,e.useEffect)(()=>{ie&&(async()=>{try{const{data:{data:w}}=await te(`/admin/registration-info?registrationToken=${ie}`);w&&re(w)}catch(w){const J=Ge(w);h({type:"warning",message:J}),p(`/auth/oops?info=${encodeURIComponent(J)}`)}})()},[ie]);function Ce(fe){return Object.entries(fe).reduce((w,[J,he])=>{let le=he;return!["password","confirmPassword"].includes(J)&&typeof he=="string"&&(le=le.trim()),w[J]=le,w},{})}return e.createElement(ce.ZP,null,e.createElement(ce.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{firstname:Q.firstname||"",lastname:Q.lastname||"",email:Q.email||"",password:"",confirmPassword:"",registrationToken:ie||void 0,news:!1},onSubmit:async(fe,w)=>{const J=Ce(fe);try{await l.validate(J,{abortEarly:!1}),C>0&&o==="register-admin"&&q("didSubmitWithErrorsFirstAdmin",{count:C.toString()}),r(ie?{userInfo:rt()(J,["registrationToken"]),registrationToken:ie}:J,w)}catch(he){const le=(0,i.CJ)(he);oe(C+1),w.setErrors(le)}},validateOnChange:!1},({values:fe,errors:w,handleChange:J})=>e.createElement(i.l0,{noValidate:!0},e.createElement(Ve.o,null,e.createElement(Ae.k,{direction:"column",alignItems:"center",gap:3},e.createElement(Ye.Z,null),e.createElement(Te.Z,{as:"h1",variant:"alpha",textAlign:"center"},K({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"})),e.createElement(Te.Z,{variant:"epsilon",textColor:"neutral600",textAlign:"center"},K({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(Ae.k,{direction:"column",alignItems:"stretch",gap:6,marginTop:7},e.createElement(ls.r,{gap:4},e.createElement(Gt.P,{col:6},e.createElement(He.o,{name:"firstname",required:!0,value:fe.firstname,error:w.firstname?K(w.firstname):void 0,onChange:J,label:K({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),e.createElement(Gt.P,{col:6},e.createElement(He.o,{name:"lastname",value:fe.lastname,onChange:J,label:K({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),e.createElement(He.o,{name:"email",disabled:s.includes("email"),value:fe.email,onChange:J,error:w.email?K(w.email):void 0,required:!0,label:K({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),e.createElement($t,{name:"password",onChange:J,value:fe.password,error:w.password?K(w.password):void 0,endAction:e.createElement(dt.Z,{onClick:he=>{he.preventDefault(),N(le=>!le)},label:K(P?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},P?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:K({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:K({id:"global.password",defaultMessage:"Password"}),type:P?"text":"password"}),e.createElement($t,{name:"confirmPassword",onChange:J,value:fe.confirmPassword,error:w.confirmPassword?K(w.confirmPassword):void 0,endAction:e.createElement(dt.Z,{onClick:he=>{he.preventDefault(),Y(le=>!le)},label:K(j?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},j?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),required:!0,label:K({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:j?"text":"password"}),e.createElement(us.X,{onValueChange:he=>{J({target:{value:he,name:"news"}})},value:fe.news,name:"news","aria-label":"news"},K({id:"Auth.form.register.news.label",defaultMessage:"Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy})."},{terms:e.createElement(zt,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},K({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:e.createElement(zt,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},K({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),e.createElement(lt.z,{fullWidth:!0,size:"L",type:"submit"},K({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!n&&e.createElement(ye.x,{paddingTop:4},e.createElement(Ae.k,{justifyContent:"center"},e.createElement(i.rU,{label:"Auth.link.signin",to:"/auth/login"},K({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Bt.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:o=>o.preventDefault()},Bt.propTypes={authType:a().string.isRequired,fieldsToDisable:a().array,noSignin:a().bool,onSubmit:a().func,schema:a().shape({validate:a().func.isRequired,type:a().string.isRequired}).isRequired};var _t=Bt;const Vt=(0,Be.ZP)(He.o)`
|
|
12
|
+
::-ms-reveal {
|
|
13
|
+
display: none;
|
|
14
|
+
}
|
|
15
|
+
`,xt=({onSubmit:o,schema:s})=>{const[n,r]=(0,e.useState)(!1),[l,h]=(0,e.useState)(!1),{formatMessage:p}=(0,Ie.Z)();return e.createElement(ce.ZP,null,e.createElement(Ve.o,null,e.createElement(ce.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:P,errors:N,handleChange:j})=>e.createElement(i.l0,{noValidate:!0},e.createElement(ce.sg,null,e.createElement(Ye.Z,null),e.createElement(ye.x,{paddingTop:6,paddingBottom:7},e.createElement(Te.Z,{as:"h1",variant:"alpha"},p({id:"global.reset-password",defaultMessage:"Reset password"}))),N.errorMessage&&e.createElement(Te.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},p({id:N.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(Ae.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Vt,{name:"password",onChange:j,value:P.password,error:N.password?p({id:N.password,defaultMessage:"This field is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:Y=>{Y.preventDefault(),r(C=>!C)},label:p(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},n?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:p({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:p({id:"global.password",defaultMessage:"Password"}),type:n?"text":"password"}),e.createElement(Vt,{name:"confirmPassword",onChange:j,value:P.confirmPassword,error:N.confirmPassword?p({id:N.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:Y=>{Y.preventDefault(),h(C=>!C)},label:p(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},l?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),required:!0,label:p({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:l?"text":"password"}),e.createElement(lt.z,{fullwidth:!0,type:"submit"},p({id:"global.change-password",defaultMessage:"Change password"})))))),e.createElement(Ae.k,{justifyContent:"center"},e.createElement(ye.x,{paddingTop:4},e.createElement(i.rU,{to:"/auth/login"},p({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};xt.defaultProps={onSubmit:o=>o.preventDefault()},xt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var cs=xt;const ds=(()=>window&&window.strapi&&window.strapi.isEE?t(98768).Z:t(5365).Z)(),Yt={"forgot-password":{Component:os,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:z.Ry().shape({email:z.Z_().email(i.I0.email).required(i.I0.required)}),inputsPrefix:""},"forgot-password-success":{Component:is,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{Component:ds,endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:z.Ry().shape({email:z.Z_().email(i.I0.email).required(i.I0.required),password:z.Z_().required(i.I0.required),rememberMe:z.Xg().nullable()}),inputsPrefix:""},oops:{Component:rs,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:_t,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:z.Ry().shape({firstname:z.Z_().trim().required(i.I0.required),lastname:z.Z_(),password:z.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:z.Z_().oneOf([z.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required),registrationToken:z.Z_().required(i.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:_t,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:z.Ry().shape({firstname:z.Z_().trim().required(i.I0.required),lastname:z.Z_(),password:z.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),email:z.Z_().email(i.I0.email).strict().lowercase(i.I0.lowercase).required(i.I0.required),confirmPassword:z.Z_().oneOf([z.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)}),inputsPrefix:""},"reset-password":{Component:cs,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:z.Ry().shape({password:z.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:z.Z_().oneOf([z.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)})}};var ms=o=>o;const Qt={formErrors:{},modifiedData:{},requestError:null},gs=(o,s)=>(0,x.ZP)(o,n=>{switch(s.type){case"ON_CHANGE":{je()(n.modifiedData,s.keys.split("."),s.value);break}case"RESET_PROPS":return Qt;case"SET_DATA":{n.modifiedData=s.data;break}case"SET_ERRORS":{n.formErrors=s.errors;break}case"SET_REQUEST_ERROR":{n.requestError={errorMessage:s.errorMessage,errorStatus:s.errorStatus};break}default:return n}}),Wt=({hasAdmin:o,setHasAdmin:s})=>{const{push:n,location:{search:r}}=(0,ne.k6)(),{changeLocale:l}=(0,ns.Z)(),{setSkipped:h}=(0,i.c1)(),{trackUsage:p}=(0,i.rS)(),{params:{authType:P}}=(0,ne.$B)("/auth/:authType"),N=(0,i.aM)(),j=(0,ve.c)(Yt,async()=>(await t.e(1386).then(t.bind(t,91386))).FORMS,{combine(_,se){return{..._,...se}},defaultValue:Yt}),[{formErrors:Y,modifiedData:C,requestError:oe},Q]=(0,e.useReducer)(gs,Qt,ms),q=pe.default.CancelToken.source(),{Component:K,endPoint:Fe,fieldsToDisable:Ge,fieldsToOmit:te,inputsPrefix:ie,schema:Ce,...fe}=j?.[P]??{};(0,e.useEffect)(()=>()=>{q.cancel("Component unmounted")},[]);const{post:w}=(0,i.kY)();(0,e.useEffect)(()=>{Q({type:"RESET_PROPS"})},[P]);const J=({target:{name:_,value:se}})=>{Q({type:"ON_CHANGE",keys:_,value:se})},he=async(_,{setSubmitting:se,setErrors:Me})=>{se(!0);const Ue=rt()(_,te),V=`/admin/${Fe}`;P==="login"&&await bs(_,V,{setSubmitting:se,setErrors:Me}),(P==="register"||P==="register-admin")&&await Us(_,V,{setSubmitting:se,setErrors:Me}),P==="forgot-password"&&await le(Ue,V,{setSubmitting:se,setErrors:Me}),P==="reset-password"&&await ks(Ue,V,{setSubmitting:se,setErrors:Me})},le=async(_,se,{setSubmitting:Me,setErrors:Ue})=>{try{await w(se,_,{cancelToken:q.token}),n("/auth/forgot-password-success")}catch(V){console.error(V),Ue({errorMessage:"notification.error"})}finally{Me(!1)}},bs=async(_,se,{setSubmitting:Me,setErrors:Ue})=>{try{const{data:{data:{token:V,user:de}}}=await w(se,rt()(_,te),{cancelToken:q.token});de.preferedLanguage&&l(de.preferedLanguage),i.I8.setToken(V,_.rememberMe),i.I8.setUserInfo(de,_.rememberMe),Xt()}catch(V){if(V.response){const de=Se()(V,["response","data","error","message"],"Something went wrong");if(qe()(de).toLowerCase()==="usernotactive"){n("/auth/oops"),Q({type:"RESET_PROPS"});return}Ue({errorMessage:de})}}finally{Me(!1)}},Us=async(_,se,{setSubmitting:Me,setErrors:Ue})=>{try{p("willCreateFirstAdmin");const{data:{data:{token:V,user:de}}}=await w(se,rt()(_,te),{cancelToken:q.token});i.I8.setToken(V,!1),i.I8.setUserInfo(de,!1),Me(!1),s(!0);const{roles:Qe}=de;if(Qe&&Qe.find(({code:js})=>js==="strapi-super-admin")&&(De.setSkipped(!1),h(!1),p("didLaunchGuidedtour")),P==="register"&&_.userInfo.news===!0||P==="register-admin"&&_.news===!0){n({pathname:"/usecase",search:`?hasAdmin=${o}`});return}Xt()}catch(V){if(p("didNotCreateFirstAdmin"),V.response){const{data:de}=V.response,Qe=(0,as.Z)(de);Ue({apiErrors:Qe})}}},ks=async(_,se,{setErrors:Me,setSubmitting:Ue})=>{try{const{data:{data:{token:V,user:de}}}=await w(se,{..._,resetPasswordToken:N.get("code")},{cancelToken:q.token});i.I8.setToken(V,!1),i.I8.setUserInfo(de,!1),n("/")}catch(V){if(V.response){const de=Se()(V,["response","data","message"],"Something went wrong"),Qe=Se()(V,["response","data","statusCode"],400);Q({type:"SET_REQUEST_ERROR",errorMessage:de,errorStatus:Qe}),Me({errorMessage:de})}}finally{Ue(!1)}},Xt=()=>{if(P==="login"){const _=N.get("redirectTo"),se=_?decodeURIComponent(_):"/";n(se)}else n("/")};return!j[P]||o&&P==="register-admin"||i.I8.getToken()?e.createElement(ne.l_,{to:"/"}):!o&&P!=="register-admin"?e.createElement(ne.l_,{to:{pathname:"/auth/register-admin",search:r}}):e.createElement(K,{...fe,authType:P,fieldsToDisable:Ge,formErrors:Y,inputsPrefix:ie,modifiedData:C,onChange:J,onSubmit:he,requestError:oe,schema:Ce})};Wt.defaultProps={hasAdmin:!1},Wt.propTypes={hasAdmin:a().bool,setHasAdmin:a().func.isRequired};var ps=Wt,fs=t(53951),hs=t(68465),Es=t(84967),Ps=t(7563),vs=t(33348);const ys=[{intlLabel:{id:"Usecase.front-end",defaultMessage:"Front-end developer"},value:"front_end_developer"},{intlLabel:{id:"Usecase.back-end",defaultMessage:"Back-end developer"},value:"back_end_developer"},{intlLabel:{id:"Usecase.full-stack",defaultMessage:"Full-stack developer"},value:"full_stack_developer"},{intlLabel:{id:"global.content-manager",defaultMessage:"Content Manager"},value:"content_manager"},{intlLabel:{id:"Usecase.content-creator",defaultMessage:"Content Creator"},value:"content_creator"},{intlLabel:{id:"Usecase.other",defaultMessage:"Other"},value:"other"}],Ts=(0,Be.ZP)(Te.Z)`
|
|
16
|
+
text-align: center;
|
|
17
|
+
`;var Rs=()=>{const o=(0,i.lm)(),{push:s,location:n}=(0,ne.k6)(),{formatMessage:r}=(0,Ie.Z)(),[l,h]=(0,e.useState)(),[p,P]=(0,e.useState)(""),{post:N}=(0,i.kY)(),{firstname:j,email:Y}=i.I8.getUserInfo(),{hasAdmin:C}=(0,vs.parse)(n?.search,{ignoreQueryPrefix:!0}),oe=l==="other",Q=async(re,q)=>{re.preventDefault();try{await N("https://analytics.strapi.io/register",{email:Y,username:j,firstAdmin:Boolean(!C),persona:{role:q?void 0:l,otherRole:q?void 0:p}}),o({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return e.createElement(ce.ZP,null,e.createElement(Ve.o,{labelledBy:"usecase-title"},e.createElement(ce.bU,null,e.createElement("form",{onSubmit:re=>Q(re,!1)},e.createElement(Ae.k,{direction:"column",paddingBottom:7},e.createElement(Ye.Z,null),e.createElement(ye.x,{paddingTop:6,paddingBottom:1,width:(0,i.Q1)(250)},e.createElement(Ts,{variant:"alpha",as:"h1",id:"usecase-title"},r({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),e.createElement(Ae.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(hs.P,{id:"usecase","data-testid":"usecase",label:r({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:h,value:l},ys.map(({intlLabel:re,value:q})=>e.createElement(Es.W,{key:q,value:q},r(re)))),oe&&e.createElement(He.o,{name:"other",label:r({id:"Usecase.other",defaultMessage:"Other"}),value:p,onChange:re=>P(re.target.value),"data-testid":"other"}),e.createElement(lt.z,{type:"submit",size:"L",fullWidth:!0,disabled:!l},r({id:"global.finish",defaultMessage:"Finish"}))))),e.createElement(Ae.k,{justifyContent:"center"},e.createElement(ye.x,{paddingTop:4},e.createElement(Ps.A,{onClick:()=>Q(!0)},r({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},Jt=t(26648),As=t(73307),Cs=async()=>`web-fingerprint-${(await(await As.ZP.load()).get()).visitorId}`;const Ms=(0,e.lazy)(()=>Promise.all([t.e(6691),t.e(801)]).then(t.bind(t,29761)));function Ls(){const o=(0,ve.c)(Ke,async()=>(await t.e(7394).then(t.bind(t,17394))).ADMIN_PERMISSIONS_EE,{combine(te,ie){return L()({},te,ie)},defaultValue:Ke}),s=(0,ve.c)(Jt.y3,async()=>(await t.e(3528).then(t.bind(t,53528))).ROUTES_EE,{defaultValue:[]}),n=(0,i.lm)(),{updateProjectSettings:r}=(0,Dt.um)(),{formatMessage:l}=(0,Ie.Z)(),[{isLoading:h,hasAdmin:p,uuid:P,deviceId:N},j]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),Y=(0,me.I0)(),C=(0,i.L7)(),{get:oe,post:Q}=(0,i.kY)(),re=(0,e.useMemo)(()=>(0,ae.WW)(s.map(({to:te,Component:ie,exact:Ce})=>(0,ae.ot)(ie,te,Ce))),[s]),[q,K]=(0,e.useState)(null);(0,e.useEffect)(()=>{Y({type:Jt.XS,payload:o})},[o,Y]),(0,e.useEffect)(()=>{const te=i.I8.getToken();te&&(async()=>{try{const{data:{data:{token:Ce}}}=await Q("/admin/renew-token",{token:te});i.I8.updateToken(Ce)}catch{i.I8.clearAppStorage(),window.location.reload()}})()},[Q]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:ie,uuid:Ce,menuLogo:fe,authLogo:w}}}=await oe("/admin/init");r({menuLogo:(0,i.CR)(fe),authLogo:(0,i.CR)(w)});const J=await Cs();if(Ce){const{data:{data:he}}=await oe("/admin/telemetry-properties",{validateStatus:le=>le<500});K(he);try{const le="didInitializeAdministration";await Q("https://analytics.strapi.io/api/v2/track",{event:le,userId:"",deviceId:J,eventPropeties:{},userProperties:{environment:C.currentEnvironment},groupProperties:{...he,projectId:Ce}},{headers:{"X-Strapi-Event":le}})}catch{}}j({isLoading:!1,hasAdmin:ie,uuid:Ce,deviceId:J})}catch{n({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[n,r]);const Fe=te=>j(ie=>({...ie,hasAdmin:te})),Ge=(0,e.useMemo)(()=>({uuid:P,telemetryProperties:q,deviceId:N}),[P,q,N]);return h?e.createElement(i.dO,null):e.createElement(e.Suspense,{fallback:e.createElement(i.dO,null)},e.createElement(xe.z,null,l({id:"skipToContent"})),e.createElement(i.L8,{value:Ge},e.createElement(ne.rs,null,re,e.createElement(ne.AW,{path:"/auth/:authType",render:te=>e.createElement(ps,{...te,setHasAdmin:Fe,hasAdmin:p}),exact:!0}),e.createElement(Ne,{path:"/usecase",component:Rs}),e.createElement(Ne,{path:"/",component:Ms}),e.createElement(ne.AW,{path:"",component:fs.default}))))}var Ss=Ls,Ds={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"};class Is{constructor({adminConfig:s,appPlugins:n,library:r,middlewares:l,reducers:h}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:R,head:{favicon:Oe},locales:["en"],menuLogo:R,notifications:{releases:!0},themes:{light:f.W,dark:y.$},translations:{},tutorials:!0},this.appPlugins=n||{},this.library=r,this.middlewares=l,this.plugins={},this.reducers=h,this.translations={},this.hooksDict={},this.admin={injectionZones:Xe},this.customFields=O.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(n=>this.library.components.add(n)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const n=JSON.stringify(s);c()(s.to,`link.to should be defined for ${n}`),c()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),c()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(n=>this.library.fields.add(n)):this.library.fields.add(s)};addMenuLink=s=>{const n=JSON.stringify(s);c()(s.to,`link.to should be defined for ${n}`),c()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),c()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),c()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(n=>{this.middlewares.add(n)})};addReducers=s=>{Object.keys(s).forEach(n=>{this.reducers.add(n,s[n])})};addSettingsLink=(s,n)=>{c()(this.settings[s],"The section does not exist");const r=JSON.stringify(n);c()(n.id,`link.id should be defined for ${r}`),c()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${r}`),c()(n.to,`link.to should be defined for ${r}`),c()(n.Component&&typeof n.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(n)};addSettingsLinks=(s,n)=>{c()(this.settings[s],"The section does not exist"),c()(Array.isArray(n),"TypeError expected links to be an array"),n.forEach(r=>{this.addSettingsLink(s,r)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const n=this.appPlugins[s].bootstrap;n&&n({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),A()(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(Pe.No),this.createHook(Pe.LK),this.createHook(Pe.dV),this.createHook(Pe.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,n=this.customConfigurations.theme.light;!s&&!n&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),L()(this.configurations.themes.light,this.customConfigurations.theme)),n&&L()(this.configurations.themes.light,n),s&&L()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=G()};createSettingSection=(s,n)=>{c()(s.id,"section.id should be defined"),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),c()(Array.isArray(n),"TypeError expected links to be an array"),c()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},n.forEach(r=>{this.addSettingsLink(s.id,r)})};createStore=()=>F(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,n,r)=>{try{return this.admin.injectionZones[s][n][r]||[]}catch(l){return console.error("Cannot get injected component",l),l}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,n,r)=>{c()(this.admin.injectionZones.contentManager[s]?.[n],`The ${s} ${n} zone is not defined in the content manager`),c()(r,"A Component must be provided"),this.admin.injectionZones.contentManager[s][n].push(r)};injectAdminComponent=(s,n,r)=>{c()(this.admin.injectionZones.admin[s]?.[n],`The ${s} ${n} zone is not defined in the admin`),c()(r,"A Component must be provided"),this.admin.injectionZones.admin[s][n].push(r)};async loadAdminTrads(){const s=this.configurations.locales.map(l=>t(48224)(`./${l}.json`).then(({default:h})=>({data:h,locale:l})).catch(()=>({data:null,locale:l})));return(await Promise.all(s)).reduce((l,h)=>(h.data&&(l[h.locale]=h.data),l),{})}async loadTrads(){const s=await this.loadAdminTrads(),n=Object.keys(this.appPlugins).map(p=>{const P=this.appPlugins[p].registerTrads;return P?P({locales:this.configurations.locales}):null}).filter(p=>p),l=(await Promise.all(n)).reduce((p,P)=>{const N=P.reduce((j,Y)=>(j[Y.locale]=Y.data,j),{});return Object.keys(N).forEach(j=>{p[j]={...p[j],...N[j]}}),p},{}),h=this.configurations.locales.reduce((p,P)=>(p[P]={...s[P],...l[P]||{},...this.customConfigurations?.translations?.[P]},p),{});return this.configurations.translations=h,Promise.resolve()}registerHook=(s,n)=>{c()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(n)};registerPlugin=s=>{const n=(0,O.Sy)(s);this.plugins[n.pluginId]=n};runHookSeries=(s,n=!1)=>n?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,n,r=!1,l)=>r?this.hooksDict[s].runWaterfallAsync(n,l):this.hooksDict[s].runWaterfall(n,l);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),n=b()(Ds,this.configurations.locales||[]),{components:{components:r},fields:{fields:l}}=this.library;return e.createElement(u,{authLogo:this.configurations.authLogo,components:r,fields:l,customFields:this.customFields,localeNames:n,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(h,p,P=!1)=>this.runHookWaterfall(h,p,P,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},e.createElement(e.Fragment,null,e.createElement(D.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(T)||"en"}}),e.createElement(S.VK,{basename:X.Z},e.createElement(Ss,{store:s}))))}}var Os=({adminConfig:o={},appPlugins:s,library:n,middlewares:r,reducers:l})=>new Is({adminConfig:o,appPlugins:s,library:n,middlewares:r,reducers:l})},5985:function(Z,v,t){"use strict";var e=t(32735);const f=(0,e.createContext)();v.Z=f},20139:function(Z,v,t){"use strict";var e=t(32735),f=t(5985);const y=()=>{const{changeLocale:E,localeNames:c,messages:m}=(0,e.useContext)(f.Z);return{changeLocale:E,localeNames:c,messages:m}};v.Z=y},10190:function(Z,v,t){"use strict";var e=t(32735),f=t(8471),y=t(10328);const E=f.ZP.img`
|
|
18
|
+
height: ${72/16}rem;
|
|
19
|
+
`,c=()=>{const{logos:{auth:m}}=(0,y.um)();return e.createElement(E,{src:m?.custom??m.default,"aria-hidden":!0,alt:""})};v.Z=c},66694:function(Z,v,t){"use strict";t.d(v,{ux:function(){return y},_5:function(){return c},$l:function(){return A},Rj:function(){return L}});var e=t(32735),y=(0,e.createContext)({}),c=(0,e.createContext)({}),A=(0,e.createContext)({}),L=(0,e.createContext)({})},78246:function(Z,v){"use strict";const t="/admin/".replace(window.location.origin,"");v.Z=t},46339:function(Z,v,t){"use strict";t.d(v,{Eo:function(){return y},LK:function(){return f},No:function(){return e},dV:function(){return E}});const e="Admin/CM/pages/ListView/inject-column-in-table",f="Admin/CM/pages/App/mutate-collection-types-links",y="Admin/CM/pages/EditView/mutate-edit-view-layout",E="Admin/CM/pages/App/mutate-single-types-links"},10328:function(Z,v,t){"use strict";t.d(v,{um:function(){return E},U_:function(){return D},Dq:function(){return i},H9:function(){return je},$_:function(){return $e},rW:function(){return tt},bF:function(){return ht},G4:function(){return Lt},Te:function(){return Ut},M1:function(){return jt}});var e=t(32735),f=t(66694),E=()=>(0,e.useContext)(f._5),c=t(70166),m=t(19565),A=t(97889);const M={data:{},error:null,isLoading:!0};var U=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA":{u.isLoading=!0,u.data={},u.error=null;break}case"GET_DATA_SUCCEEDED":{u.data=d.data,u.isLoading=!1,u.error=null;break}case"GET_DATA_ERROR":{u.isLoading=!1,u.error=d.error;break}default:return u}}),D=g=>{const[{data:d,error:u,isLoading:O},k]=(0,e.useReducer)(U,M),{get:W}=(0,m.kY)();return(0,e.useEffect)(()=>{(async()=>{try{k({type:"GET_DATA"});const{data:{data:F}}=await W("/admin/permissions",{params:{role:g}});k({type:"GET_DATA_SUCCEEDED",data:F})}catch{}})()},[g,W]),{data:d,error:u,isLoading:O}};const S={role:{},permissions:{},isLoading:!0};var H=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA_SUCCEEDED":{u.role=d.role,u.permissions=d.permissions,u.isLoading=!1;break}case"GET_DATA_ERROR":{u.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{u.role.name=d.name,u.role.description=d.description;break}default:return u}}),i=g=>{const d=(0,m.lm)(),[u,O]=(0,e.useReducer)(H,S),{get:k}=(0,m.kY)();(0,e.useEffect)(()=>{g?(async F=>{try{const[{data:{data:X}},{data:{data:Ee}}]=await Promise.all([`roles/${F}`,`roles/${F}/permissions`].map(G=>k(`/admin/${G}`)));O({type:"GET_DATA_SUCCEEDED",role:X,permissions:Ee})}catch(X){console.error(X),O({type:"GET_DATA_ERROR"}),d({type:"warning",message:{id:"notification.error"}})}})(g):O({type:"GET_DATA_SUCCEEDED",role:{},permissions:[]})},[k,g,d]);const W=(0,e.useCallback)($=>{O({type:"ON_SUBMIT_SUCCEEDED",...$})},[]);return{...u,onSubmitSucceeded:W}},B=t(2287),a=t(36919),ue=t(45112),me=t(15062),I=t(78125),x=t(99381),ee=t.n(x),Re=(g,d)=>d.map(({permissions:u})=>(0,m.qX)(g,u)),we=async(g,d,u)=>{const O=Re(g,d),k=await Promise.all(O),W=d.filter((X,Ee)=>k[Ee]),$=W.findIndex(X=>X.to==="/settings");if($===-1)return[];const F=ee()(W);return F[$].notificationsCount=u?1:0,F},Se=async(g,d)=>{const u=Re(g,d),O=await Promise.all(u);return d.filter((W,$)=>O[$])},je=()=>{const{allPermissions:g}=(0,m.vn)(),{shouldUpdateStrapi:d}=(0,m.L7)(),{menu:u}=(0,m.j1)(),O=(0,me.v9)(I._),[k,W]=e.useState({generalSectionLinks:[{icon:B.Z,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:O.marketplace.main},{icon:a.Z,intlLabel:{id:"global.marketplace",defaultMessage:"Marketplace"},to:"/marketplace",permissions:O.marketplace.main},{icon:ue.Z,intlLabel:{id:"global.settings",defaultMessage:"Settings"},to:"/settings",permissions:[],notificationsCount:0}],pluginsSectionLinks:[],isLoading:!0}),$=e.useRef(k.generalSectionLinks);return e.useEffect(()=>{async function F(){const X=await Se(g,u),Ee=await we(g,$.current,d);W(G=>({...G,generalSectionLinks:Ee,pluginsSectionLinks:X,isLoading:!1}))}F()},[W,$,g,u,O,d]),k},$e=()=>(0,e.useContext)(f.$l),tt=(g,d,u,O)=>{const[k,W]=(0,e.useState)(!1),$=(0,m.lm)(),{post:F}=(0,m.kY)(),{formatAPIError:X}=(0,m.So)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:G}}}=await F(`${g}${d}/regenerate`);W(!1),u(G)}catch(G){W(!1),O?O(G):$({type:"warning",message:X(G)})}},isLoadingConfirmation:k}};const Je=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),qt=()=>{const{latestStrapiReleaseTag:g,shouldUpdateStrapi:d}=useAppInfo(),u=useNotification();return useEffect(()=>{d&&Je&&u({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${g}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)})},[g,d,u]),null};var De=null,Nt=t(33795),gt=t.n(Nt),Kt=(g,d)=>({...g,isLoading:d});const st={roles:[],isLoading:!0};var ft=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA":{u.isLoading=!0,u.roles=[];break}case"GET_DATA_SUCCEEDED":{u.roles=d.data,u.isLoading=!1;break}case"GET_DATA_ERROR":{u.isLoading=!1;break}default:return u}}),ht=(g=!0)=>{const d=(0,m.lm)(),[{roles:u,isLoading:O},k]=(0,e.useReducer)(ft,st,()=>Kt(st,g));(0,e.useEffect)(()=>{g&&W()},[g]);const W=(0,e.useCallback)(async()=>{const $=(0,m.tg)();try{k({type:"GET_DATA"});const{data:{data:F}}=await $.get("/admin/roles");k({type:"GET_DATA_SUCCEEDED",data:F})}catch(F){const X=gt()(F,["response","payload","message"],"An error occured");k({type:"GET_DATA_ERROR"}),X!=="Forbidden"&&d({type:"warning",message:X})}},[d]);return{roles:u,isLoading:O,getData:W}},nt=t(9086),Et=t.n(nt),at=t(8997),Pt=(g,d)=>({...g,fieldsToPick:d}),vt=t(88423),Ze=t.n(vt),yt=t(3040),Tt=t.n(yt),Rt=t(56236),ot=t.n(Rt);const At={fieldsToPick:[],formErrors:{},initialData:{},isLoading:!0,modifiedData:{},showHeaderButtonLoader:!1,showHeaderLoader:!0},Ct=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA_SUCCEEDED":{u.isLoading=!1,u.showHeaderLoader=!1,u.initialData=Ze()(d.data,g.fieldsToPick),u.modifiedData=Ze()(d.data,g.fieldsToPick);break}case"ON_CANCEL":{u.modifiedData=g.initialData,u.formErrors={};break}case"ON_CHANGE":{d.inputType==="password"&&!d.value?ot()(u.modifiedData,d.keys.split(".")):d.keys.includes("username")&&!d.value?Tt()(u.modifiedData,d.keys.split("."),null):Tt()(u.modifiedData,d.keys.split("."),d.value);break}case"ON_SUBMIT":{u.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{u.initialData=Ze()(d.data,g.fieldsToPick),u.modifiedData=Ze()(d.data,g.fieldsToPick),u.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{u.formErrors=d.errors,u.showHeaderButtonLoader=!1;break}default:return u}});var Lt=(g,d,u,O)=>{const[{formErrors:k,initialData:W,isLoading:$,modifiedData:F,showHeaderButtonLoader:X,showHeaderLoader:Ee},G]=(0,e.useReducer)(Ct,At,()=>Pt(At,O)),Pe=(0,m.lm)(),{lockApp:Oe,unlockApp:_e}=(0,m.o1)(),{get:Xe,put:xe}=(0,m.kY)();return(0,e.useEffect)(()=>{g&&(async()=>{try{const{data:{data:ae}}=await Xe(g);G({type:"GET_DATA_SUCCEEDED",data:ae,fieldsToPick:O})}catch(ae){console.error(ae.response),Pe({type:"warning",message:{id:"notification.error"}})}})()},[g]),[{formErrors:k,initialData:W,isLoading:$,modifiedData:F,showHeaderButtonLoader:X,showHeaderLoader:Ee},G,{handleCancel:()=>{G({type:"ON_CANCEL"})},handleChange:({target:{name:ve,value:ae,type:pe}})=>{G({type:"ON_CHANGE",inputType:pe,keys:ve,value:ae})},handleSubmit:async ve=>{ve.preventDefault();const ae=await(0,at.R6)(F,d);if(G({type:"SET_ERRORS",errors:ae||{}}),!ae)try{Oe(),G({type:"ON_SUBMIT"});const pe=Et()(F,["confirmPassword","registrationToken"]);pe.roles&&(pe.roles=pe.roles.map(qe=>qe.id)),pe.ssoLockedRoles&&(pe.ssoLockedRoles=[...new Set(pe.ssoLockedRoles)]);const{data:{data:be}}=await xe(g,pe);u(be),G({type:"ON_SUBMIT_SUCCEEDED",data:be}),Pe({type:"success",message:{id:"notification.success.saved"}})}catch(pe){const be=pe?.response?.payload??{data:{}};be?.data&&typeof be.data=="string"?Pe({type:"warning",message:be.data}):Pe({type:"warning",message:be.message});const qe=(0,at.Iz)(be);G({type:"SET_ERRORS",errors:qe})}finally{_e()}},setField:(ve,ae)=>{G({type:"ON_CHANGE",keys:ve,value:ae})}}]},St=t(18782);const Ie={global:[{intlLabel:{id:"Settings.application.title",defaultMessage:"Overview"},to:"/settings/application-infos",id:"000-application-infos",permissions:[]},{intlLabel:{id:"Settings.webhooks.title",defaultMessage:"Webhooks"},to:"/settings/webhooks",id:"webhooks"},{intlLabel:{id:"Settings.apiTokens.title",defaultMessage:"API Tokens"},to:"/settings/api-tokens?sort=name:ASC",id:"api-tokens"},{intlLabel:{id:"Settings.transferTokens.title",defaultMessage:"Transfer Tokens"},to:"/settings/transfer-tokens?sort=name:ASC",id:"transfer-tokens"}],admin:[{intlLabel:{id:"global.roles",defaultMessage:"Roles"},to:"/settings/roles",id:"roles"},{intlLabel:{id:"global.users"},to:"/settings/users?pageSize=10&page=1&sort=firstname",id:"users"}]};var Be=g=>g.map(d=>{const u=d.links.map(O=>({...O,isDisplayed:!1}));return{...d,links:u}}),Ft=t(98978),It=t.n(Ft),bt=g=>It()(g,d=>d.id),Ut=()=>{const[{isLoading:g,menu:d},u]=(0,e.useState)({isLoading:!0,menu:[]}),{allPermissions:O}=(0,m.vn)(),{shouldUpdateStrapi:k}=(0,m.L7)(),{settings:W}=(0,m.j1)(),$=(0,me.v9)(I._),{global:F,admin:X}=(0,St.c)(Ie,async()=>(await t.e(1970).then(t.bind(t,43278))).LINKS_EE,{combine(Ee,G){function Pe(Oe){if(!Oe.id)throw new Error("The settings menu item must have an id attribute.");return{...Oe,permissions:$.settings?.[Oe.id]?.main}}return{admin:[...G.admin,...Ee.admin].map(Pe),global:[...Ee.global,...G.global].map(Pe)}},defaultValue:{admin:[],global:[]}});return(0,e.useEffect)(()=>{const Ee=async()=>{const Xe=await(xe=>Promise.all(xe.reduce((ne,We,Ne)=>{const Ke=ve=>ve.map(async(ae,pe)=>({hasPermission:await(0,m.qX)(O,ae.permissions),sectionIndex:Ne,linkIndex:pe}));return[...ne,...Ke(We.links)]},[])))(Oe);u(xe=>({...xe,isLoading:!1,menu:Oe.map((ne,We)=>({...ne,links:ne.links.map((Ne,Ke)=>{const ve=Xe.find(ae=>ae.sectionIndex===We&&ae.linkIndex===Ke);return{...Ne,isDisplayed:Boolean(ve.hasPermission)}})}))}))},{global:G,...Pe}=W,Oe=Be([{...W.global,links:bt([...W.global.links,...F]).map(_e=>({..._e,hasNotification:_e.id==="000-application-infos"&&k}))},{id:"permissions",intlLabel:{id:"Settings.permissions",defaultMessage:"Administration Panel"},links:X},...Object.values(Pe)]);Ee()},[X,F,O,W,k]),{isLoading:g,menu:d}},jt=()=>(0,e.useContext)(f.Rj)},70166:function(Z,v,t){"use strict";t.d(v,{G:function(){return y}});var e=t(19565),f=t(20108);function y(){const{get:E}=(0,e.kY)(),{formatAPIError:c}=(0,e.So)(),m=(0,e.lm)(),A=(0,f.useQueries)(["components","content-types"].map(S=>({queryKey:["content-manager",S],async queryFn(){const{data:{data:R}}=await E(`/content-manager/${S}`);return R},onError(R){m({type:"warning",message:c(R)})}}))),[M,L]=A,U=M.isLoading||L.isLoading,b=(L?.data??[]).filter(S=>S.kind==="collectionType"&&S.isDisplayed),D=(L?.data??[]).filter(S=>S.kind!=="collectionType"&&S.isDisplayed);return{isLoading:U,components:M?.data??[],collectionTypes:b,singleTypes:D}}},18782:function(Z,v,t){"use strict";t.d(v,{c:function(){return E}});var e=t(32735),f=t(19565);function y(){return window.strapi.isEE}function E(c,m,{defaultValue:A=null,combine:M=(L,U)=>U}={}){const L=(0,f.W6)(m),U=(0,f.W6)(M),[{data:b},D]=e.useState({data:y()?A:c});return e.useEffect(()=>{async function S(){const R=await L();D({data:U(c,R)})}y()&&S()},[c,L,U]),b}},954:function(Z,v,t){"use strict";t.d(v,{sg:function(){return S},bU:function(){return R},ZP:function(){return T}});var e=t(32735),f=t(72850),y=t(87933),E=t(60216),c=t.n(E),m=t(8471),A=t(34853),M=t(67879),L=t(20139),b=()=>{const{changeLocale:i,localeNames:B}=(0,L.Z)(),{locale:a}=(0,M.Z)();return e.createElement(A.O,{label:B[a]},Object.keys(B).map(ue=>e.createElement(A.s,{onClick:()=>i(ue),key:ue},B[ue])))};const D=(0,m.ZP)(f.x)`
|
|
20
|
+
margin: 0 auto;
|
|
21
|
+
width: 552px;
|
|
22
|
+
`,S=(0,m.ZP)(y.k)`
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
`,R=({children:i})=>e.createElement(D,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",justifyContent:"center"},i);R.propTypes={children:c().node.isRequired};const H=({children:i})=>e.createElement("div",null,e.createElement(y.k,{as:"header",justifyContent:"flex-end"},e.createElement(f.x,{paddingTop:6,paddingRight:8},e.createElement(b,null))),e.createElement(f.x,{paddingTop:2,paddingBottom:11},i));H.propTypes={children:c().node.isRequired};var T=H},78125:function(Z,v,t){"use strict";t.d(v,{_:function(){return E}});var e=t(98178),f=t(49358);const y=()=>c=>c.admin_app||f.E,E=(0,e.P1)(y(),c=>c.permissions)},72218:function(Z,v,t){"use strict";var e=t(63642),f=t(8471);const y=(0,f.ZP)(e.E)`
|
|
25
|
+
svg {
|
|
26
|
+
height: 1rem;
|
|
27
|
+
width: 1rem;
|
|
28
|
+
path {
|
|
29
|
+
fill: ${({theme:E})=>E.colors.neutral600};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
`;v.Z=y},1115:function(Z,v,t){"use strict";var e=t(32735),f=t(10369),y=t(27649),E=t(72850),c=t(49372),m=t(87933),A=t(8284),M=t(41415),L=t(19565),U=t(54894),b=t(60492),D=t(92802),S=t(60216),R=t.n(S),H=t(67879),T=t(8471),i=t(10190),B=t(954),a=t(72218);const ue=(0,T.ZP)(f.o)`
|
|
33
|
+
::-ms-reveal {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|
|
36
|
+
`,me=({onSubmit:I,schema:x,children:ee})=>{const[Le,Re]=(0,e.useState)(!1),{formatMessage:ge}=(0,H.Z)();return e.createElement(y.o,null,e.createElement(B.bU,null,e.createElement(D.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:I,validationSchema:x,validateOnChange:!1},({values:we,errors:ke,handleChange:Se})=>e.createElement(L.l0,{noValidate:!0},e.createElement(B.sg,null,e.createElement(i.Z,null),e.createElement(E.x,{paddingTop:6,paddingBottom:1},e.createElement(c.Z,{variant:"alpha",as:"h1"},ge({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(E.x,{paddingBottom:7},e.createElement(c.Z,{variant:"epsilon",textColor:"neutral600"},ge({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),ke.errorMessage&&e.createElement(c.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},ke.errorMessage)),e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(f.o,{error:ke.email?ge({id:ke.email,defaultMessage:"This value is required."}):"",value:we.email,onChange:Se,label:ge({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:ge({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(ue,{error:ke.password?ge({id:ke.password,defaultMessage:"This value is required."}):"",onChange:Se,value:we.password,label:ge({id:"global.password",defaultMessage:"Password"}),name:"password",type:Le?"text":"password",endAction:e.createElement(a.Z,{onClick:ze=>{ze.stopPropagation(),Re(je=>!je)},label:ge(Le?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},Le?e.createElement(U.Z,null):e.createElement(b.Z,null)),required:!0}),e.createElement(A.X,{onValueChange:ze=>{Se({target:{value:ze,name:"rememberMe"}})},value:we.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},ge({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(M.z,{fullWidth:!0,type:"submit"},ge({id:"Auth.form.button.login",defaultMessage:"Login"}))))),ee),e.createElement(m.k,{justifyContent:"center"},e.createElement(E.x,{paddingTop:4},e.createElement(L.rU,{to:"/auth/forgot-password"},ge({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};me.defaultProps={children:null,onSubmit(){}},me.propTypes={children:R().node,onSubmit:R().func,schema:R().shape({type:R().string.isRequired}).isRequired},v.Z=me},5365:function(Z,v,t){"use strict";var e=t(32735),f=t(60216),y=t.n(f),E=t(954),c=t(1115);const m=A=>e.createElement(E.ZP,null,e.createElement(c.Z,{...A}));m.defaultProps={onSubmit:A=>A.preventDefault()},m.propTypes={onSubmit:y().func},v.Z=m},53951:function(Z,v,t){"use strict";t.r(v);var e=t(32735),f=t(27649),y=t(82055),E=t(17e3),c=t(9695),m=t(19565),A=t(8482),M=t(25386),L=t(67879);const U=()=>{const{formatMessage:b}=(0,L.Z)();return(0,m.go)(),e.createElement(f.o,{labelledBy:"title"},e.createElement(y.T,{id:"title",title:b({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),e.createElement(E.D,null,e.createElement(c.x,{action:e.createElement(m.Qj,{variant:"secondary",endIcon:e.createElement(A.Z,null),to:"/"},b({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:b({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:e.createElement(M.Z,{width:"10rem"}),shadow:"tableShadow"})))};v.default=U},41832:function(Z,v){"use strict";const t=({data:e})=>{try{return Object.keys(e).reduce((f,y)=>{const E=e[y][0];return f[y]={id:E,defaultMessage:E},f},{})}catch{return{}}};v.Z=t},8997:function(Z,v,t){"use strict";t.d(v,{R6:function(){return y},ot:function(){return U},Iz:function(){return b.Z},Pp:function(){return D},IF:function(){return R},Qy:function(){return me},WW:function(){return T}});var e=t(19565),y=async(I,x)=>{let ee=null;try{await x.validate(I,{abortEarly:!1})}catch(Le){ee=(0,e.CJ)(Le)}return ee},E=t(32735),c=t(60216),m=t.n(c),A=t(53038);const M=({loadComponent:I})=>{const[x,ee]=(0,E.useState)(null);return(0,E.useEffect)(()=>{(async()=>{try{const Re=await I();ee(()=>Re.default)}catch(Re){console.log(Re)}})()},[I]),x?E.createElement(x,null):E.createElement(e.dO,null)},L=(I,x,ee)=>E.createElement(A.AW,{render:()=>E.createElement(M,{loadComponent:I}),key:x,path:x,exact:ee||!1});M.propTypes={loadComponent:m().func.isRequired};var U=L,b=t(41832),D=(I,x="")=>[I,x].filter(ee=>ee).join(" "),R=I=>`/admin/${I}`,T=I=>I.filter((x,ee,Le)=>Le.findIndex(Re=>Re.key===x.key)===ee),i=t(98978);const B=I=>sortBy(I,x=>x.name);var a=null;const ue={bufferToHex(I){return[...new Uint8Array(I)].map(x=>x.toString(16).padStart(2,"0")).join("")},async digestMessage(I){const x=new TextEncoder().encode(I),ee=await crypto.subtle.digest("SHA-256",x);return this.bufferToHex(ee)}};async function me(I){if(!I)return null;try{return await ue.digestMessage(I.email)}catch{return null}}},58414:function(Z,v,t){"use strict";t.d(v,{pl:function(){return L},q5:function(){return b.Z}});var e=t(32735),f=t(19565),y=t(8997),E=t(97889);const c={data:[],isLoading:!0};var A=(D,S)=>(0,E.ZP)(D,R=>{switch(S.type){case"GET_DATA_SUCCEEDED":{R.data=S.data,R.isLoading=!1;break}case"GET_DATA_ERROR":{R.isLoading=!1;break}default:return R}}),L=({ssoEnabled:D})=>{const[S,R]=(0,e.useReducer)(A,c),H=(0,f.lm)(),{get:T}=(0,f.kY)();return(0,e.useEffect)(()=>{(async()=>{try{if(!D){R({type:"GET_DATA_SUCCEEDED",data:[]});return}const{data:B}=await T((0,y.IF)("providers"));R({type:"GET_DATA_SUCCEEDED",data:B})}catch(B){console.error(B),R({type:"GET_DATA_ERROR"}),H({type:"warning",message:{id:"notification.error"}})}})()},[T,D,H]),S},U=t(21306),b=t(2690)},21306:function(Z,v,t){"use strict";var e=t(32735),f=t(19565),y=t(36866),E=t.n(y),c=t(67879),m=t(53038),A=t(2690);const M="strapi-notification-seat-limit",L="https://cloud.strapi.io/profile/billing",U="https://strapi.io/billing/request-seats",b=()=>{const{formatMessage:D}=(0,c.Z)();let{license:S}=(0,A.Z)();const R=(0,f.lm)(),{pathname:H}=(0,m.TH)();(0,e.useEffect)(()=>{if(!S?.data)return;const{enforcementUserCount:T,permittedSeats:i,licenseLimitStatus:B,isHostedOnStrapiCloud:a}=S?.data??{},ue=!E()(i)&&!window.sessionStorage.getItem(`${M}-${H}`)&&(B==="AT_LIMIT"||B==="OVER_LIMIT");let me;B==="OVER_LIMIT"?me="warning":B==="AT_LIMIT"&&(me="softWarning"),ue&&R({type:me,message:D({id:"notification.ee.warning.over-.message",defaultMessage:"Add seats to {licenseLimitStatus, select, OVER_LIMIT {invite} other {re-enable}} Users. If you already did it but it's not reflected in Strapi yet, make sure to restart your app."},{licenseLimitStatus:B}),title:D({id:"notification.ee.warning.at-seat-limit.title",defaultMessage:"{licenseLimitStatus, select, OVER_LIMIT {Over} other {At}} seat limit ({enforcementUserCount}/{permittedSeats})"},{licenseLimitStatus:B,enforcementUserCount:T,permittedSeats:i}),link:{url:a?L:U,label:D({id:"notification.ee.warning.seat-limit.link",defaultMessage:"{isHostedOnStrapiCloud, select, true {ADD SEATS} other {CONTACT SALES}}"},{isHostedOnStrapiCloud:a})},blockTransition:!0,onClose(){window.sessionStorage.setItem(`${M}-${H}`,!0)}})},[R,S.data,H,D])};v.Z=b},2690:function(Z,v,t){"use strict";var e=t(19565),f=t(20108),y=t(15062),E=t(78125);const c=()=>{const m=(0,y.v9)(E._),A=(0,e.ss)(m.settings.users),{isLoading:M,allowedActions:{canRead:L,canCreate:U,canUpdate:b,canDelete:D}}=A,S=L&&U&&b&&D,{get:R}=(0,e.kY)(),H=async()=>{const{data:{data:i}}=await R("/admin/license-limit-information");return i};return{license:(0,f.useQuery)(["ee","license-limit-info"],H,{enabled:!M&&S})}};v.Z=c},98768:function(Z,v,t){"use strict";var e=t(32735),f=t(9026),y=t(72850),E=t(87933),c=t(49372),m=t(60216),A=t.n(m),M=t(67879),L=t(8471),U=t(954),b=t(1115),D=t(58414),S=t(33205);const R=(0,L.ZP)(f.i)`
|
|
37
|
+
flex: 1;
|
|
38
|
+
`,H=T=>{const i=window.strapi.features.isEnabled(window.strapi.features.SSO),{isLoading:B,data:a}=(0,D.pl)({ssoEnabled:i}),{formatMessage:ue}=(0,M.Z)();return!i||!B&&a.length===0?e.createElement(U.ZP,null,e.createElement(b.Z,{...T})):e.createElement(U.ZP,null,e.createElement(b.Z,{...T},e.createElement(y.x,{paddingTop:7},e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:7},e.createElement(E.k,null,e.createElement(R,null),e.createElement(y.x,{paddingLeft:3,paddingRight:3},e.createElement(c.Z,{variant:"sigma",textColor:"neutral600"},ue({id:"Auth.login.sso.divider"}))),e.createElement(R,null)),e.createElement(S.Z,{providers:a,displayAllProviders:!1})))))};H.defaultProps={onSubmit:T=>T.preventDefault(),requestError:null},H.propTypes={formErrors:A().object.isRequired,modifiedData:A().object.isRequired,onChange:A().func.isRequired,onSubmit:A().func,requestError:A().object},v.Z=H},33205:function(Z,v,t){"use strict";var e=t(32735),f=t(87933),y=t(63919),E=t(49372),c=t(15335),m=t(5803),A=t(60216),M=t.n(A),L=t(67879),U=t(14911),b=t(8471);const D=b.ZP.a`
|
|
39
|
+
width: ${136/16}rem;
|
|
40
|
+
display: flex;
|
|
41
|
+
justify-content: center;
|
|
42
|
+
align-items: center;
|
|
43
|
+
height: ${48/16}rem;
|
|
44
|
+
border: 1px solid ${({theme:T})=>T.colors.neutral150};
|
|
45
|
+
border-radius: ${({theme:T})=>T.borderRadius};
|
|
46
|
+
text-decoration: inherit;
|
|
47
|
+
&:link {
|
|
48
|
+
text-decoration: none;
|
|
49
|
+
}
|
|
50
|
+
color: ${({theme:T})=>T.colors.neutral600};
|
|
51
|
+
`,S=(0,b.ZP)(f.k)`
|
|
52
|
+
& a:not(:first-child):not(:last-child) {
|
|
53
|
+
margin: 0 ${({theme:T})=>T.spaces[2]};
|
|
54
|
+
}
|
|
55
|
+
& a:first-child {
|
|
56
|
+
margin-right: ${({theme:T})=>T.spaces[2]};
|
|
57
|
+
}
|
|
58
|
+
& a:last-child {
|
|
59
|
+
margin-left: ${({theme:T})=>T.spaces[2]};
|
|
60
|
+
}
|
|
61
|
+
`,R=({provider:T})=>e.createElement(y.u,{label:T.displayName},e.createElement(D,{href:`${window.strapi.backendURL}/admin/connect/${T.uid}`},T.icon?e.createElement("img",{src:T.icon,"aria-hidden":!0,alt:"",height:"32px"}):e.createElement(E.Z,null,T.displayName)));R.propTypes={provider:M().shape({icon:M().string,displayName:M().string.isRequired,uid:M().string.isRequired}).isRequired};const H=({providers:T,displayAllProviders:i})=>{const{formatMessage:B}=(0,L.Z)();return i?e.createElement(c.r,{gap:4},T.map(a=>e.createElement(m.P,{key:a.uid,col:4},e.createElement(R,{provider:a})))):T.length>2&&!i?e.createElement(c.r,{gap:4},T.slice(0,2).map(a=>e.createElement(m.P,{key:a.uid,col:4},e.createElement(R,{provider:a}))),e.createElement(m.P,{col:4},e.createElement(y.u,{label:B({id:"global.see-more"})},e.createElement(D,{as:U.rU,to:"/auth/providers"},e.createElement("span",{"aria-hidden":!0},"\u2022\u2022\u2022"))))):e.createElement(S,{justifyContent:"center"},T.map(a=>e.createElement(R,{key:a.uid,provider:a})))};H.defaultProps={displayAllProviders:!0},H.propTypes={providers:M().arrayOf(M().object).isRequired,displayAllProviders:M().bool},v.Z=H},48224:function(Z,v,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 f(y){if(!t.o(e,y))return Promise.resolve().then(function(){var m=new Error("Cannot find module '"+y+"'");throw m.code="MODULE_NOT_FOUND",m});var E=e[y],c=E[0];return t.e(E[1]).then(function(){return t.t(c,19)})}f.keys=function(){return Object.keys(e)},f.id=48224,Z.exports=f},47750:function(Z,v,t){"use strict";Z.exports=t.p+"70674f63fc3904c20de0.svg"}}]);
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{92034:function(X,B,r){"use strict";r.r(B),r.d(B,{CreatePage:function(){return Ee},default:function(){return $e}});var e=r(32735),b=r(27649),P=r(82055),R=r(87933),Z=r(41415),O=r(17e3),S=r(72850),x=r(49372),D=r(15335),q=r(5803),a=r(10369),H=r(33475),p=r(19565),A=r(29439),F=r(14723),f=r(92802),C=r(33795),w=r.n(C),ue=r(86834),ae=r.n(ue),ie=r(67879),y=r(15062),le=r(53038),Y=r(8471),G=r(10328),_=r(78125),xe=r(7247),me=r(24346),oe=me.Ry().shape({name:me.Z_().required(p.I0.required),description:me.Z_().required(p.I0.required)});const Pe=Y.ZP.div`
|
|
2
|
+
border: 1px solid ${({theme:T})=>T.colors.primary200};
|
|
3
|
+
background: ${({theme:T})=>T.colors.primary100};
|
|
4
|
+
padding: ${({theme:T})=>`${T.spaces[2]} ${T.spaces[4]}`};
|
|
5
|
+
color: ${({theme:T})=>T.colors.primary600};
|
|
6
|
+
border-radius: ${({theme:T})=>T.borderRadius};
|
|
7
|
+
font-size: ${12/16}rem;
|
|
8
|
+
font-weight: bold;
|
|
9
|
+
`,Ee=()=>{const T=(0,p.lm)(),{lockApp:ne,unlockApp:z}=(0,p.o1)(),{formatMessage:k}=(0,ie.Z)(),[Q,pe]=(0,e.useState)(!1),{replace:de}=(0,le.k6)(),ee=(0,e.useRef)(),{trackUsage:ce}=(0,p.rS)(),Ze=(0,le.$B)("/settings/roles/duplicate/:id"),Ae=w()(Ze,"params.id",null),{isLoading:Be,data:he}=(0,G.U_)(),{permissions:Oe,isLoading:De}=(0,G.Dq)(Ae),{post:Fe,put:je}=(0,p.kY)(),He=re=>{ne(),pe(!0),ce(Ae?"willDuplicateRole":"willCreateNewRole"),Promise.resolve(Fe("/admin/roles",re)).then(async({data:W})=>{const{permissionsToSend:U}=ee.current.getPermissions();return ce(Ae?"didDuplicateRole":"didCreateNewRole"),W.data.id&&!ae()(U)&&await je(`/admin/roles/${W.data.id}/permissions`,{permissions:U}),W}).then(W=>{pe(!1),T({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),de(`/settings/roles/${W.data.id}`)}).catch(W=>{console.error(W),pe(!1),T({type:"warning",message:{id:"notification.error"}})}).finally(()=>{z()})},Le=`${k({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(b.o,null,e.createElement(p.SL,{name:"Roles"}),e.createElement(f.J9,{initialValues:{name:"",description:Le},onSubmit:He,validationSchema:oe,validateOnChange:!1},({handleSubmit:re,values:W,errors:U,handleReset:ye,handleChange:Ce})=>e.createElement(p.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(P.T,{primaryAction:e.createElement(R.k,{gap:2},e.createElement(Z.z,{variant:"secondary",onClick:()=>{ye(),ee.current.resetForm()},size:"L"},k({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(Z.z,{onClick:re,loading:Q,size:"L"},k({id:"global.save",defaultMessage:"Save"}))),title:k({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:k({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(p.rU,{startIcon:e.createElement(A.Z,null),to:"/settings/roles"},k({id:"global.back",defaultMessage:"Back"}))}),e.createElement(O.D,null,e.createElement(R.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(S.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(R.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(R.k,{justifyContent:"space-between"},e.createElement(S.x,null,e.createElement(S.x,null,e.createElement(x.Z,{fontWeight:"bold"},k({id:"global.details",defaultMessage:"Details"}))),e.createElement(S.x,null,e.createElement(x.Z,{variant:"pi",textColor:"neutral600"},k({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(Pe,null,k({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(D.r,{gap:4},e.createElement(q.P,{col:6},e.createElement(a.o,{name:"name",error:U.name&&k({id:U.name}),label:k({id:"global.name",defaultMessage:"Name"}),onChange:Ce,value:W.name})),e.createElement(q.P,{col:6},e.createElement(H.g,{label:k({id:"global.description",defaultMessage:"Description"}),id:"description",error:U.description&&k({id:U.description}),onChange:Ce},W.description))))),!Be&&!De?e.createElement(S.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(xe.Z,{isFormDisabled:!1,ref:ee,permissions:Oe,layout:he})):e.createElement(S.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(p.dO,null))))))))};function $e(){const T=(0,y.v9)(_._);return e.createElement(p.O4,{permissions:T.settings.roles.create},e.createElement(Ee,null))}},7247:function(X,B,r){"use strict";r.d(B,{Z:function(){return es}});var e=r(32735),b=r(91215),P=r(90980),R=r(3653),Z=r(19565),O=r(23973),S=r.n(O),x=r(86834),D=r.n(x),q=r(60216),a=r.n(q),H=r(67879),p=r(72850),A=r(98978),F=r.n(A),f=r(8471),C=r(87933),w=r(82884),ue=r(15974),ae=r(96441),ie=r(33795),y=r.n(ie),le=r(9086),Y=r.n(le),G=r(10328),_=r(41415),xe=r(45112);const me=f.ZP.div`
|
|
10
|
+
position: relative;
|
|
11
|
+
|
|
12
|
+
${({hasConditions:t,disabled:n,theme:o})=>t&&`
|
|
13
|
+
&:before {
|
|
14
|
+
content: '';
|
|
15
|
+
position: absolute;
|
|
16
|
+
top: -3px;
|
|
17
|
+
left: -10px;
|
|
18
|
+
width: 6px;
|
|
19
|
+
height: 6px;
|
|
20
|
+
border-radius: ${20/16}rem;;
|
|
21
|
+
background: ${n?o.colors.neutral100:o.colors.primary600};
|
|
22
|
+
}
|
|
23
|
+
`}
|
|
24
|
+
`,Re=({onClick:t,className:n,hasConditions:o,variant:s})=>{const{formatMessage:i}=(0,H.Z)();return e.createElement(me,{hasConditions:o,className:n},e.createElement(_.z,{variant:s,startIcon:e.createElement(xe.Z,null),onClick:t},i({id:"global.settings",defaultMessage:"Settings"})))};Re.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},Re.propTypes={onClick:a().func.isRequired,className:a().string,hasConditions:a().bool,variant:a().string};var oe=(0,f.ZP)(Re)``,Pe=r(85025),Ee=r(55225),$e=r(31600),T=r(49372),ne=r(11406),z=r(26858),k=r(51654),Q=r(97889),pe=r(81346),de=r.n(pe),ee=r(23940),ce=r.n(ee),Ze=r(27799);const Ae=t=>Object.values(t).map(n=>Object.entries(n).filter(([,o])=>o).map(([o])=>o)).flat(),Be=t=>t.reduce((n,[o,s])=>(n.push({label:ce()(o),children:s.map(i=>({label:i.displayName,value:i.id}))}),n),[]),he=(t,n)=>t.map(([,o])=>o).flat().reduce((o,s)=>({[s.id]:n.includes(s.id),...o}),{}),Oe=({arrayOfOptionsGroupedByCategory:t,isFormDisabled:n,isGrey:o,label:s,name:i,onChange:l,value:d})=>{const{formatMessage:c}=(0,H.Z)(),m=u=>{l(i,he(t,u))};return e.createElement(C.k,{as:"li",background:o?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(C.k,{paddingLeft:6,style:{width:180}},e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},c({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(T.Z,{variant:"sigma",title:s,textColor:"primary600",ellipsis:!0},c({id:`Settings.roles.form.permissions.${s.toLowerCase()}`,defaultMessage:s})),e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",c({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(p.x,{style:{maxWidth:430,width:"100%"}},e.createElement(Ze.Q,{id:i,customizeContent:u=>`${u.length} currently selected`,onChange:m,value:Ae(d),options:Be(t),disabled:n})))};Oe.propTypes={arrayOfOptionsGroupedByCategory:a().array.isRequired,isFormDisabled:a().bool.isRequired,isGrey:a().bool.isRequired,label:a().string.isRequired,name:a().string.isRequired,value:a().object.isRequired,onChange:a().func.isRequired};var De=Oe;const Fe=(t,n)=>t.reduce((o,s)=>(o[s.id]=y()(n,s.id,!1),o),{}),je=(t,n)=>t.reduce((o,s)=>{const[i,l]=s,d=Fe(l,n);return o[i]=d,o},{});var Le=(t,n,o)=>t.reduce((s,i)=>{const l=y()(n,[...i.pathToConditionsObject,"conditions"],{}),d=je(o,l);return s[i.pathToConditionsObject.join("..")]=d,s},{});const re=({actions:t,headerBreadCrumbs:n,isFormDisabled:o,onClosed:s,onToggle:i})=>{const{formatMessage:l}=(0,H.Z)(),{availableConditions:d,modifiedData:c,onChangeConditions:m}=(0,G.$_)(),u=(0,e.useMemo)(()=>Object.entries(de()(d,"category")),[d]),g=t.filter(({isDisplayed:h,hasSomeActionsSelected:L,hasAllActionsSelected:$})=>h&&(L||$)),v=(0,e.useMemo)(()=>Le(g,c,u),[g,c,u]),[M,N]=(0,e.useState)(v),j=(h,L)=>{N((0,Q.ZP)($=>{$[h]||($[h]={}),$[h].default||($[h].default={}),$[h].default=L}))},E=()=>{const h=Object.entries(M).reduce((L,$)=>{const[I,te]=$,K=Object.values(te).reduce((J,V)=>({...J,...V}),{});return L[I]=K,L},{});m(h),i()};return e.createElement(Pe.P,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(Ee.x,null,e.createElement(z.O,{id:"condition-modal-breadcrumbs",label:n.join(", ")},n.map((h,L,$)=>e.createElement(k.$,{isCurrent:L===$.length-1,key:h},ce()(l({id:h,defaultMessage:h})))))),e.createElement($e.f,null,g.length===0&&e.createElement(T.Z,null,l({id:"Settings.permissions.conditions.no-actions",defaultMessage:"You first need to select actions (create, read, update, ...) before defining conditions on them."})),e.createElement("ul",null,g.map(({actionId:h,label:L,pathToConditionsObject:$},I)=>{const te=$.join("..");return e.createElement(De,{key:h,arrayOfOptionsGroupedByCategory:u,label:L,isFormDisabled:o,isGrey:I%2===0,name:te,onChange:j,value:y()(M,te,{})})}))),e.createElement(ne.m,{startActions:e.createElement(_.z,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(_.z,{onClick:E},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};re.propTypes={actions:a().arrayOf(a().shape({actionId:a().string.isRequired,checkboxName:a().string,hasSomeActionsSelected:a().bool.isRequired,hasAllActionsSelected:a().bool,isDisplayed:a().bool.isRequired,label:a().string})).isRequired,headerBreadCrumbs:a().arrayOf(a().string).isRequired,isFormDisabled:a().bool.isRequired,onClosed:a().func.isRequired,onToggle:a().func.isRequired};var W=re;const U=`${120/16}rem`,ye=`${200/16}rem`,Ce=`${53/16}rem`;var Ue=f.ZP.div`
|
|
25
|
+
width: ${U};
|
|
26
|
+
`,ot=(0,f.ZP)(C.k)`
|
|
27
|
+
padding-right: ${({theme:t})=>t.spaces[2]};
|
|
28
|
+
overflow: hidden;
|
|
29
|
+
flex: 1;
|
|
30
|
+
${({isCollapsable:t})=>t&&"cursor: pointer;"}
|
|
31
|
+
`;const Ke=({children:t,isCollapsable:n,isActive:o,isFormDisabled:s,label:i,onChange:l,onClick:d,checkboxName:c,someChecked:m,value:u})=>{const{formatMessage:g}=(0,H.Z)();return e.createElement(C.k,{alignItems:"center",paddingLeft:6,style:{width:ye,flexShrink:0}},e.createElement(p.x,{paddingRight:2},e.createElement(w.C,{name:c,"aria-label":g({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:s,onValueChange:v=>l({target:{name:c,value:v}}),indeterminate:m,value:u})),e.createElement(ot,{title:i,alignItems:"center",isCollapsable:n,...n&&{onClick:d,"aria-expanded":o,onKeyDown:({key:v})=>(v==="Enter"||v===" ")&&d(),tabIndex:0,role:"button"}},e.createElement(T.Z,{fontWeight:o?"bold":"",textColor:o?"primary600":"neutral800",ellipsis:!0},ce()(i)),t))};Ke.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},Ke.propTypes={checkboxName:a().string,children:a().node,label:a().string.isRequired,isCollapsable:a().bool,isFormDisabled:a().bool.isRequired,onChange:a().func,onClick:a().func.isRequired,someChecked:a().bool,value:a().bool,isActive:a().bool.isRequired};var rt=(0,e.memo)(Ke),Ft=r(72091),Nt=r.n(Ft),Wt=r(85973),be=r.n(Wt);const at=t=>be()(t)?Nt()(Object.values(t).map(n=>be()(n)?at(n):n)):[];var ke=at,ze=t=>t?Object.keys(t).reduce((n,o)=>(o!=="conditions"&&(n[o]=t[o]),n),{}):null,Te=t=>{const n=ze(t),o=ke(n);if(!o.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=o.every(l=>l),i=o.some(l=>l)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:i}},Vt=r(16899),Ne=(0,f.ZP)(Vt.Z)`
|
|
32
|
+
display: none;
|
|
33
|
+
width: ${10/16}rem;
|
|
34
|
+
transform: rotate(${({$isActive:t})=>t?"180":"0"}deg);
|
|
35
|
+
margin-left: ${({theme:t})=>t.spaces[2]};
|
|
36
|
+
`,We=t=>`
|
|
37
|
+
${T.Z} {
|
|
38
|
+
color: ${t.colors.primary600};
|
|
39
|
+
font-weight: ${t.fontWeights.bold}
|
|
40
|
+
}
|
|
41
|
+
${Ne} {
|
|
42
|
+
display: block;
|
|
43
|
+
path {
|
|
44
|
+
fill: ${t.colors.primary600}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
`,Ht=(t,n,o)=>t.map(({actionId:s,isDisplayed:i,applyToProperties:l,label:d})=>{if(!i)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:i};const c=[...o.split(".."),s],m=D()(l)?[...c,"properties","enabled"]:c,u=m.join(".."),g=y()(n,[...c,"conditions"],null),v=ke(g).some(E=>E);if(D()(l)){const E=y()(n,m,!1);return{actionId:s,checkboxName:u,hasAllActionsSelected:E,hasConditions:v,hasSomeActionsSelected:E,isDisplayed:i,isParentCheckbox:!1,label:d,pathToConditionsObject:c}}const M=y()(n,m,null),{hasAllActionsSelected:N,hasSomeActionsSelected:j}=Te(M);return{actionId:s,checkboxName:u,hasAllActionsSelected:N,hasConditions:v,hasSomeActionsSelected:j,isDisplayed:i,isParentCheckbox:!0,label:d,pathToConditionsObject:c}});const Xe=(t,n)=>`
|
|
48
|
+
${it} {
|
|
49
|
+
background-color: ${t.colors.primary100};
|
|
50
|
+
color: ${t.colors.primary600};
|
|
51
|
+
border-radius: ${n?"2px 2px 0 0":"2px"};
|
|
52
|
+
}
|
|
53
|
+
${dt} {
|
|
54
|
+
display: flex;
|
|
55
|
+
}
|
|
56
|
+
${oe} {
|
|
57
|
+
display: block;
|
|
58
|
+
}
|
|
59
|
+
&:hover {
|
|
60
|
+
${We(t)}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
&:focus-within {
|
|
64
|
+
${({theme:o,isActive:s})=>Xe(o,s)}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
`,it=f.ZP.div`
|
|
68
|
+
flex: 1;
|
|
69
|
+
display: flex;
|
|
70
|
+
align-items: center;
|
|
71
|
+
height: ${Ce};
|
|
72
|
+
background-color: ${({isGrey:t,theme:n})=>t?n.colors.neutral100:n.colors.neutral0};
|
|
73
|
+
border: 1px solid transparent;
|
|
74
|
+
`,Gt=f.ZP.div`
|
|
75
|
+
display: inline-flex;
|
|
76
|
+
min-width: 100%;
|
|
77
|
+
|
|
78
|
+
${oe} {
|
|
79
|
+
display: none;
|
|
80
|
+
}
|
|
81
|
+
${({isActive:t,theme:n})=>t&&Xe(n,t)}
|
|
82
|
+
&:hover {
|
|
83
|
+
${({theme:t,isActive:n})=>Xe(t,n)}
|
|
84
|
+
}
|
|
85
|
+
`,lt=(0,f.ZP)(C.k)`
|
|
86
|
+
width: ${U};
|
|
87
|
+
position: relative;
|
|
88
|
+
`,dt=(0,f.ZP)(p.x)`
|
|
89
|
+
display: none;
|
|
90
|
+
svg {
|
|
91
|
+
width: 11px;
|
|
92
|
+
}
|
|
93
|
+
* {
|
|
94
|
+
fill: ${({theme:t})=>t.colors.primary600};
|
|
95
|
+
}
|
|
96
|
+
`,ct=f.ZP.span`
|
|
97
|
+
position: absolute;
|
|
98
|
+
top: -6px;
|
|
99
|
+
left: 37px;
|
|
100
|
+
width: 6px;
|
|
101
|
+
height: 6px;
|
|
102
|
+
border-radius: 20px;
|
|
103
|
+
background: ${({theme:t})=>t.colors.primary600};
|
|
104
|
+
`,Ut=(0,f.ZP)(p.x)`
|
|
105
|
+
position: absolute;
|
|
106
|
+
right: 9px;
|
|
107
|
+
transform: translateY(10px);
|
|
108
|
+
`,ut=({availableActions:t,isActive:n,isGrey:o,isFormDisabled:s,label:i,onClickToggle:l,pathToData:d})=>{const[c,m]=(0,e.useState)(!1),{formatMessage:u}=(0,H.Z)(),{modifiedData:g,onChangeParentCheckbox:v,onChangeSimpleCheckbox:M}=(0,G.$_)(),N=()=>{m(K=>!K)},j=()=>{m(!1)},E=y()(g,d.split(".."),{}),h=(0,e.useMemo)(()=>Object.keys(E).reduce((K,J)=>(K[J]=Y()(E[J],"conditions"),K),{}),[E]),{hasAllActionsSelected:L,hasSomeActionsSelected:$}=Te(h),I=(0,e.useMemo)(()=>Ht(t,g,d),[t,g,d]),te=I.some(({hasConditions:K})=>K);return e.createElement(Gt,{isActive:n},e.createElement(it,{isGrey:o},e.createElement(rt,{isCollapsable:!0,isFormDisabled:s,label:i,checkboxName:d,onChange:v,onClick:l,someChecked:$,value:L,isActive:n},e.createElement(dt,{paddingLeft:2},n?e.createElement(ue.Z,null):e.createElement(ae.Z,null))),e.createElement(C.k,{style:{flex:1}},I.map(({actionId:K,hasConditions:J,hasAllActionsSelected:V,hasSomeActionsSelected:fe,isDisplayed:Ie,isParentCheckbox:se,checkboxName:ve,label:Ve})=>Ie?se?e.createElement(lt,{key:K,justifyContent:"center",alignItems:"center"},J&&e.createElement(ct,null),e.createElement(w.C,{disabled:s,name:ve,"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${Ve} ${i}`}),onValueChange:Se=>{v({target:{name:ve,value:Se}})},indeterminate:fe,value:V})):e.createElement(lt,{key:K,justifyContent:"center",alignItems:"center"},J&&e.createElement(ct,null),e.createElement(w.C,{disabled:s,indeterminate:J,name:ve,onValueChange:Se=>{M({target:{name:ve,value:Se}})},value:V})):e.createElement(Ue,{key:K}))),c&&e.createElement(W,{headerBreadCrumbs:[i,"Settings.permissions.conditions.conditions"],actions:I,isFormDisabled:s,onClosed:j,onToggle:N})),e.createElement(Ut,null,e.createElement(oe,{onClick:N,hasConditions:te})))};ut.propTypes={availableActions:a().array.isRequired,isActive:a().bool.isRequired,isGrey:a().bool.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,onClickToggle:a().func.isRequired,pathToData:a().string.isRequired};var Kt=ut;const zt=f.ZP.span`
|
|
109
|
+
color: ${({theme:t})=>t.colors.danger700};
|
|
110
|
+
padding-left: ${({theme:t})=>t.spaces[1]}px;
|
|
111
|
+
`;var mt=()=>e.createElement(zt,null,"*"),Xt=(t,n)=>t.map(o=>{const s=Array.isArray(o.subjects)&&o.subjects.indexOf(n)!==-1;return{...o,isDisplayed:s}});const wt=(0,f.ZP)(p.x)`
|
|
112
|
+
transform: translate(-4px, -12px);
|
|
113
|
+
|
|
114
|
+
&:before {
|
|
115
|
+
content: '';
|
|
116
|
+
width: ${4/16}rem;
|
|
117
|
+
height: ${12/16}rem;
|
|
118
|
+
background: ${({theme:t})=>t.colors.primary200};
|
|
119
|
+
display: block;
|
|
120
|
+
}
|
|
121
|
+
`,Yt=f.ZP.svg`
|
|
122
|
+
position: relative;
|
|
123
|
+
flex-shrink: 0;
|
|
124
|
+
transform: translate(-0.5px, -1px);
|
|
125
|
+
|
|
126
|
+
* {
|
|
127
|
+
fill: ${({theme:t,color:n})=>t.colors[n]};
|
|
128
|
+
}
|
|
129
|
+
`,we=t=>e.createElement(wt,null,e.createElement(Yt,{width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.02477 14.7513C8.65865 17.0594 11.6046 18.6059 17.5596 18.8856C18.6836 18.9384 19.5976 19.8435 19.5976 20.9688V20.9688C19.5976 22.0941 18.6841 23.0125 17.5599 22.9643C10.9409 22.6805 6.454 20.9387 3.75496 17.1258C0.937988 13.1464 0.486328 7.39309 0.486328 0.593262H4.50974C4.50974 7.54693 5.06394 11.9813 7.02477 14.7513Z",fill:"#D9D8FF"})));we.defaultProps={fill:"primary200"},we.propTypes={fill:a().string};var Jt=(0,e.memo)(we);const pt=(0,f.ZP)(C.k)`
|
|
130
|
+
width: ${U};
|
|
131
|
+
position: relative;
|
|
132
|
+
`,Qt=(0,f.ZP)(C.k)`
|
|
133
|
+
height: ${Ce};
|
|
134
|
+
`,qt=(0,f.ZP)(p.x)`
|
|
135
|
+
padding-left: ${31/16}rem;
|
|
136
|
+
`,_t=(0,f.ZP)(p.x)`
|
|
137
|
+
border-left: ${({isVisible:t,theme:n})=>t?`4px solid ${n.colors.primary200}`:"4px solid transparent"};
|
|
138
|
+
`,en=(0,f.ZP)(C.k)`
|
|
139
|
+
padding-left: ${({theme:t})=>t.spaces[4]};
|
|
140
|
+
width: ${({level:t})=>145-t*36}px;
|
|
141
|
+
|
|
142
|
+
${({isCollapsable:t,theme:n})=>t&&`
|
|
143
|
+
${Ne} {
|
|
144
|
+
display: block;
|
|
145
|
+
color: ${n.colors.neutral100};
|
|
146
|
+
}
|
|
147
|
+
&:hover {
|
|
148
|
+
${We(n)}
|
|
149
|
+
}
|
|
150
|
+
`}
|
|
151
|
+
${({isActive:t,theme:n})=>t&&We(n)};
|
|
152
|
+
`,tn=f.ZP.div`
|
|
153
|
+
padding-top: ${({theme:t})=>t.spaces[2]};
|
|
154
|
+
margin-top: ${({theme:t})=>t.spaces[2]};
|
|
155
|
+
width: ${4/16}rem;
|
|
156
|
+
background-color: ${({theme:t})=>t.colors.primary200};
|
|
157
|
+
border-top-left-radius: 2px;
|
|
158
|
+
border-top-right-radius: 2px;
|
|
159
|
+
`,Ye=({childrenForm:t,isFormDisabled:n,recursiveLevel:o,pathToDataFromActionRow:s,propertyActions:i,parentName:l,propertyName:d})=>{const{formatMessage:c}=(0,H.Z)(),{modifiedData:m,onChangeParentCheckbox:u,onChangeSimpleCheckbox:g}=(0,G.$_)(),[v,M]=(0,e.useState)(null),N=E=>{M(h=>h===E?null:E)},j=(0,e.useMemo)(()=>v?t.find(({value:E})=>E===v):null,[v,t]);return e.createElement(qt,null,e.createElement(tn,null),t.map(({label:E,value:h,required:L,children:$},I)=>{const te=I+1<t.length,K=Array.isArray($),J=v===h;return e.createElement(_t,{key:h,isVisible:te},e.createElement(Qt,null,e.createElement(Jt,{color:"primary200"}),e.createElement(C.k,{style:{flex:1}},e.createElement(en,{level:o,isActive:J,isCollapsable:K},e.createElement(ot,{alignItems:"center",isCollapsable:K,...K&&{onClick:()=>N(h),"aria-expanded":J,onKeyDown:({key:V})=>(V==="Enter"||V===" ")&&N(h),tabIndex:0,role:"button"},title:E},e.createElement(T.Z,{ellipsis:!0},ce()(E)),L&&e.createElement(mt,null),e.createElement(Ne,{$isActive:J}))),e.createElement(C.k,{style:{flex:1}},i.map(({actionId:V,label:fe,isActionRelatedToCurrentProperty:Ie})=>{if(!Ie)return e.createElement(Ue,{key:V});const se=[...s.split(".."),V,"properties",d,...l.split(".."),h],ve=y()(m,se,!1);if(!$)return e.createElement(pt,{key:fe,justifyContent:"center",alignItems:"center"},e.createElement(w.C,{disabled:n,name:se.join(".."),"aria-label":c({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${E} ${fe}`}),onValueChange:Me=>{g({target:{name:se.join(".."),value:Me}})},value:ve}));const{hasAllActionsSelected:Ve,hasSomeActionsSelected:Se}=Te(ve);return e.createElement(pt,{key:fe,justifyContent:"center",alignItems:"center"},e.createElement(w.C,{key:fe,disabled:n,name:se.join(".."),"aria-label":c({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${E} ${fe}`}),onValueChange:Me=>{u({target:{name:se.join(".."),value:Me}})},value:Ve,indeterminate:Se}))})))),j&&J&&e.createElement(p.x,{paddingBottom:2},e.createElement(Ye,{isFormDisabled:n,parentName:`${l}..${h}`,pathToDataFromActionRow:s,propertyActions:i,propertyName:d,recursiveLevel:o+1,childrenForm:j.children})))}))};Ye.propTypes={childrenForm:a().array.isRequired,isFormDisabled:a().bool.isRequired,parentName:a().string.isRequired,pathToDataFromActionRow:a().string.isRequired,propertyActions:a().array.isRequired,propertyName:a().string.isRequired,recursiveLevel:a().number.isRequired};var nn=(0,e.memo)(Ye);const sn=t=>t.reduce((o,s)=>(s.isActionRelatedToCurrentProperty&&o.push(s.actionId),o),[]);var on=(t,n,o,s,i)=>{const d=sn(t).reduce((c,m)=>{const u=[...o.split(".."),m,"properties",s,i],g=y()(n,u,!1);return c[m]=g,c},{});return Te(d)};const gt=(0,f.ZP)(C.k)`
|
|
160
|
+
width: ${U};
|
|
161
|
+
position: relative;
|
|
162
|
+
`,rn=(0,f.ZP)(C.k)`
|
|
163
|
+
height: ${Ce};
|
|
164
|
+
flex: 1;
|
|
165
|
+
|
|
166
|
+
${({isCollapsable:t,theme:n})=>t&&`
|
|
167
|
+
${Ne} {
|
|
168
|
+
display: block;
|
|
169
|
+
color: ${n.colors.neutral100};
|
|
170
|
+
}
|
|
171
|
+
&:hover {
|
|
172
|
+
${We(n)}
|
|
173
|
+
}
|
|
174
|
+
`}
|
|
175
|
+
${({isActive:t,theme:n})=>t&&We(n)};
|
|
176
|
+
`,Je=({childrenForm:t,label:n,isFormDisabled:o,name:s,required:i,pathToData:l,propertyActions:d,propertyName:c,isOdd:m})=>{const{formatMessage:u}=(0,H.Z)(),[g,v]=(0,e.useState)(null),{modifiedData:M,onChangeCollectionTypeLeftActionRowCheckbox:N,onChangeParentCheckbox:j,onChangeSimpleCheckbox:E}=(0,G.$_)(),h=g===s,L=(0,e.useMemo)(()=>Array.isArray(t)?t:[],[t]),$=L.length>0,I=(0,e.useCallback)(()=>{$&&v(V=>V===s?null:s)},[$,s]),te=({target:{value:V}})=>{N(l,c,s,V)},{hasAllActionsSelected:K,hasSomeActionsSelected:J}=(0,e.useMemo)(()=>on(d,M,l,c,s),[d,M,l,c,s]);return e.createElement(e.Fragment,null,e.createElement(rn,{alignItems:"center",isCollapsable:$,isActive:h,background:m?"neutral100":"neutral0"},e.createElement(C.k,null,e.createElement(rt,{onChange:te,onClick:I,isCollapsable:$,isFormDisabled:o,label:n,someChecked:J,value:K,isActive:h},i&&e.createElement(mt,null),e.createElement(Ne,{$isActive:h})),e.createElement(C.k,null,d.map(({label:V,isActionRelatedToCurrentProperty:fe,actionId:Ie})=>{if(!fe)return e.createElement(Ue,{key:V});const se=[...l.split(".."),Ie,"properties",c,s];if(!$){const Me=y()(M,se,!1);return e.createElement(gt,{key:Ie,justifyContent:"center",alignItems:"center"},e.createElement(w.C,{disabled:o,name:se.join(".."),"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${V}`}),onValueChange:ts=>{E({target:{name:se.join(".."),value:ts}})},value:Me}))}const ve=y()(M,se,{}),{hasAllActionsSelected:Ve,hasSomeActionsSelected:Se}=Te(ve);return e.createElement(gt,{key:V,justifyContent:"center",alignItems:"center"},e.createElement(w.C,{disabled:o,name:se.join(".."),onValueChange:Me=>{j({target:{name:se.join(".."),value:Me}})},"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${V}`}),value:Ve,indeterminate:Se}))})))),h&&e.createElement(nn,{childrenForm:L,isFormDisabled:o,parentName:s,pathToDataFromActionRow:l,propertyName:c,propertyActions:d,recursiveLevel:0}))};Je.defaultProps={childrenForm:[],required:!1},Je.propTypes={childrenForm:a().array,label:a().string.isRequired,isFormDisabled:a().bool.isRequired,name:a().string.isRequired,pathToData:a().string.isRequired,propertyActions:a().array.isRequired,propertyName:a().string.isRequired,required:a().bool,isOdd:a().bool.isRequired};var an=(0,e.memo)(Je);const ft=(0,f.ZP)(C.k)`
|
|
177
|
+
width: ${U};
|
|
178
|
+
flex-shrink: 0;
|
|
179
|
+
`,ln=(0,f.ZP)(C.k)`
|
|
180
|
+
width: ${ye};
|
|
181
|
+
height: ${Ce};
|
|
182
|
+
flex-shrink: 0;
|
|
183
|
+
`,ht=({headers:t,label:n})=>{const{formatMessage:o}=(0,H.Z)(),s=o({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:n});return e.createElement(C.k,null,e.createElement(ln,{alignItems:"center",paddingLeft:6},e.createElement(T.Z,{variant:"sigma",textColor:"neutral500"},s)),t.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(ft,{justifyContent:"center",key:i.label},e.createElement(T.Z,{variant:"sigma",textColor:"neutral500"},o({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(ft,{key:i.label})))};ht.propTypes={headers:a().arrayOf(a().shape({label:a().string.isRequired,isActionRelatedToCurrentProperty:a().bool.isRequired})).isRequired,label:a().string.isRequired};var dn=ht,cn=(t,n)=>t.map(o=>{const s=Array.isArray(o.applyToProperties)&&o.applyToProperties.indexOf(n)!==-1&&o.isDisplayed;return{label:o.label,actionId:o.actionId,isActionRelatedToCurrentProperty:s}});const un=f.ZP.div`
|
|
184
|
+
display: inline-flex;
|
|
185
|
+
flex-direction: column;
|
|
186
|
+
min-width: 0;
|
|
187
|
+
`,yt=({availableActions:t,childrenForm:n,isFormDisabled:o,label:s,pathToData:i,propertyName:l})=>{const d=(0,e.useMemo)(()=>cn(t,l),[t,l]);return e.createElement(un,null,e.createElement(dn,{label:s,headers:d}),e.createElement(p.x,null,n.map(({children:c,label:m,value:u,required:g},v)=>e.createElement(an,{childrenForm:c,key:u,label:m,isFormDisabled:o,name:u,required:g,propertyActions:d,pathToData:i,propertyName:l,isOdd:v%2===0}))))};yt.propTypes={childrenForm:a().array.isRequired,availableActions:a().array.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,pathToData:a().string.isRequired,propertyName:a().string.isRequired};var mn=yt;const pn=f.ZP.div`
|
|
188
|
+
flex-direction: column;
|
|
189
|
+
display: inline-flex;
|
|
190
|
+
min-width: 100%;
|
|
191
|
+
${({theme:t,isActive:n})=>n&&`border: 1px solid ${t.colors.primary600};`}
|
|
192
|
+
`,Ct=({allActions:t,contentTypeName:n,label:o,index:s,isActive:i,isFormDisabled:l,onClickToggleCollapse:d,pathToData:c,properties:m})=>{const u=(0,e.useCallback)(()=>{d(n)},[n,d]),g=(0,e.useMemo)(()=>Xt(t,n),[t,n]);return e.createElement(pn,{isActive:i},e.createElement(Kt,{availableActions:g,isActive:i,isGrey:s%2===0,isFormDisabled:l,label:o,onClickToggle:u,pathToData:c}),i&&m.map(({label:v,value:M,children:N})=>e.createElement(mn,{availableActions:g,childrenForm:N,isFormDisabled:l,label:v,pathToData:c,propertyName:M,key:M})))};Ct.propTypes={allActions:a().array.isRequired,contentTypeName:a().string.isRequired,index:a().number.isRequired,isActive:a().bool.isRequired,isFormDisabled:a().bool.isRequired,label:a().string.isRequired,onClickToggleCollapse:a().func.isRequired,pathToData:a().string.isRequired,properties:a().array.isRequired};var gn=Ct;const Qe=({actions:t,isFormDisabled:n,pathToData:o,subjects:s})=>{const[i,l]=(0,e.useState)(null),d=c=>{l(i===c?null:c)};return s.map(({uid:c,label:m,properties:u},g)=>e.createElement(gn,{allActions:t,key:c,contentTypeName:c,label:m,isActive:i===c,isFormDisabled:n,index:g,onClickToggleCollapse:d,pathToData:`${o}..${c}`,properties:u}))};Qe.defaultProps={actions:[],subjects:[]},Qe.propTypes={actions:a().array.isRequired,isFormDisabled:a().bool.isRequired,pathToData:a().string.isRequired,subjects:a().arrayOf(a().shape({uid:a().string.isRequired,label:a().string.isRequired,properties:a().array.isRequired}))};var fn=(0,e.memo)(Qe),hn=t=>t.filter(({subjects:n})=>n&&n.length);const yn=t=>t.map(({actionId:n})=>n),Cn=(t,n)=>t.reduce((o,s)=>(Object.keys(n).forEach(i=>{const l=y()(n,[i,s],{}),d={[i]:ze(l)};o[s]?o[s]={...o[s],...d}:o[s]=d}),o),{});var vn=(t,n)=>{const o=yn(t),s=Cn(o,n);return Object.keys(s).reduce((l,d)=>(l[d]=Te(s[d]),l),{})};const En=(0,f.ZP)(C.k)`
|
|
193
|
+
width: ${U};
|
|
194
|
+
flex-shrink: 0;
|
|
195
|
+
`,qe=({actions:t,isFormDisabled:n,kind:o})=>{const{formatMessage:s}=(0,H.Z)(),{modifiedData:i,onChangeCollectionTypeGlobalActionCheckbox:l}=(0,G.$_)(),d=(0,e.useMemo)(()=>hn(t),[t]),c=(0,e.useMemo)(()=>vn(d,i[o]),[i,d,o]);return e.createElement(p.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:ye}},e.createElement(C.k,{gap:0},d.map(({label:m,actionId:u})=>e.createElement(En,{direction:"column",alignItems:"center",justifyContent:"center",key:u,gap:3},e.createElement(T.Z,{variant:"sigma",textColor:"neutral500"},s({id:`Settings.roles.form.permissions.${m.toLowerCase()}`,defaultMessage:m})),e.createElement(w.C,{disabled:n,onValueChange:g=>{l(o,u,g)},name:u,"aria-label":s({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:s({id:`Settings.roles.form.permissions.${m.toLowerCase()}`,defaultMessage:m})}),value:y()(c,[u,"hasAllActionsSelected"],!1),indeterminate:y()(c,[u,"hasSomeActionsSelected"],!1)})))))};qe.defaultProps={actions:[]},qe.propTypes={actions:a().arrayOf(a().shape({label:a().string.isRequired,actionId:a().string.isRequired,subjects:a().array.isRequired})),isFormDisabled:a().bool.isRequired,kind:a().string.isRequired};var bn=(0,e.memo)(qe);const xn=(0,f.ZP)(p.x)`
|
|
196
|
+
overflow-x: auto;
|
|
197
|
+
`,vt=({isFormDisabled:t,kind:n,layout:{actions:o,subjects:s}})=>{const i=F()([...s],"label");return e.createElement(xn,{background:"neutral0"},e.createElement(bn,{actions:o,kind:n,isFormDisabled:t}),e.createElement(fn,{actions:o,isFormDisabled:t,pathToData:n,subjects:i}))};vt.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().shape({actions:a().array,subjects:a().arrayOf(a().shape({uid:a().string.isRequired,label:a().string.isRequired,properties:a().array.isRequired}))}).isRequired};var Et=(0,e.memo)(vt),Rn=r(66694);const bt=({children:t,value:n})=>e.createElement(Rn.$l.Provider,{value:n},t);bt.propTypes={children:a().node.isRequired,value:a().exact({availableConditions:a().array.isRequired,modifiedData:a().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:a().func.isRequired,onChangeConditions:a().func.isRequired,onChangeSimpleCheckbox:a().func.isRequired,onChangeParentCheckbox:a().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:a().func.isRequired}).isRequired};var Pn=bt,An=r(83828),Tn=r(61762),Sn=r(89966),xt=r(8284),Mn=r(15335),$n=r(5803),On=(t,n,o)=>t.map(s=>{const i=[...o,s.action,"properties","enabled"],l=y()(n,i,!1),d=y()(n,[...o,s.action,"conditions"],{}),c=ke(d).some(m=>m);return{...s,isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:c,label:s.displayName,actionId:s.action,pathToConditionsObject:[...o,s.action]}}),Dn=t=>{const n=Object.entries(t).reduce((s,i)=>{const[l,{conditions:d}]=i;return s[l]=d,s},{});return ke(n).some(s=>s)};const jn=f.ZP.div`
|
|
198
|
+
flex: 1;
|
|
199
|
+
align-self: center;
|
|
200
|
+
border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
|
|
201
|
+
`,Ln=f.ZP.div`
|
|
202
|
+
position: relative;
|
|
203
|
+
word-break: keep-all;
|
|
204
|
+
${({hasConditions:t,disabled:n,theme:o})=>t&&`
|
|
205
|
+
&:before {
|
|
206
|
+
content: '';
|
|
207
|
+
position: absolute;
|
|
208
|
+
top: ${-4/16}rem;
|
|
209
|
+
left: ${-8/16}rem;
|
|
210
|
+
width: ${6/16}rem;
|
|
211
|
+
height: ${6/16}rem;
|
|
212
|
+
border-radius: ${20/16}rem;
|
|
213
|
+
background: ${n?o.colors.neutral100:o.colors.primary600};
|
|
214
|
+
}
|
|
215
|
+
`}
|
|
216
|
+
`,Rt=({categoryName:t,isFormDisabled:n,subCategoryName:o,actions:s,pathToData:i})=>{const[l,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:m,onChangeSimpleCheckbox:u}=(0,G.$_)(),{formatMessage:g}=(0,H.Z)(),v=y()(c,i,{}),M=(0,e.useMemo)(()=>Object.keys(v).reduce((I,te)=>(I[te]=ze(v[te]),I),{}),[v]),{hasAllActionsSelected:N,hasSomeActionsSelected:j}=Te(M),E=()=>{d(I=>!I)},h=()=>{d(!1)},L=On(s,c,i),$=Dn(y()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(p.x,null,e.createElement(C.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(p.x,{paddingRight:4},e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},o)),e.createElement(jn,null),e.createElement(p.x,{paddingLeft:4},e.createElement(xt.X,{name:i.join(".."),disabled:n,onValueChange:I=>{m({target:{name:i.join(".."),value:I}})},indeterminate:j,value:N},g({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(C.k,{paddingTop:6,paddingBottom:6},e.createElement(Mn.r,{gap:2,style:{flex:1}},L.map(({checkboxName:I,value:te,action:K,displayName:J,hasConditions:V})=>e.createElement($n.P,{col:3,key:K},e.createElement(Ln,{disabled:n,hasConditions:V},e.createElement(xt.X,{name:I,disabled:n,onValueChange:fe=>{u({target:{name:I,value:fe}})},value:te},J))))),e.createElement(oe,{hasConditions:$,onClick:E}))),l&&e.createElement(W,{headerBreadCrumbs:[t,o],actions:L,isFormDisabled:n,onClosed:h,onToggle:E}))};Rt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=Rt;const _e=({childrenForm:t,kind:n,name:o,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:m}=(0,H.Z)(),u=()=>{d(o)},g=(0,e.useMemo)(()=>o.split("::").pop(),[o]);return e.createElement(An.U,{expanded:s,onToggle:u,id:`accordion-${o}`,variant:l?"primary":"secondary"},e.createElement(Tn.B,{title:ce()(g),description:`${m({id:"Settings.permissions.category"},{category:g})} ${n==="plugins"?"plugin":n}`}),e.createElement(Sn.v,null,e.createElement(p.x,{padding:6},t.map(({actions:v,subCategoryName:M,subCategoryId:N})=>e.createElement(kn,{key:M,actions:v,categoryName:g,isFormDisabled:i,subCategoryName:M,pathToData:[...c,N]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var In=_e;const Pt=({isFormDisabled:t,kind:n,layout:o})=>{const[s,i]=(0,e.useState)(null),l=d=>{i(d===s?null:d)};return e.createElement(p.x,{padding:6,background:"neutral0"},o.map(({category:d,categoryId:c,childrenForm:m},u)=>e.createElement(In,{key:d,childrenForm:m,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:u%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};Pt.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 At=Pt,Zn=r(86349),Bn=r.n(Zn),Fn=r(3040),ge=r.n(Fn),Tt=(t,n,o)=>t.find(s=>s.action===n&&s.subject===o);const St=(t,n=[])=>t.reduce((o,s)=>(o[s.id]=n.indexOf(s.id)!==-1,o),{}),Mt=({children:t},n,o="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:Mt(i,n,`${o}${i.value}.`)};const l=n.indexOf(`${o}${i.value}`)!==-1;return s[i.value]=l,s},{}),Nn=(t,n,o)=>t.reduce((s,i)=>{const l=n.properties.find(({value:d})=>d===i);if(l){const d=y()(o,["properties",l.value],[]),c=Mt(l,d);s.properties[i]=c}return s},{properties:{}}),Wn=(t,n)=>n.reduce((o,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(o[s]=i),o},{});var $t=({subjects:t},n,o,s=[])=>n.reduce((i,l)=>{const d=l.subjects,c=Wn(t,d);if(D()(c))return i;const m=Object.keys(c).reduce((u,g)=>{const{actionId:v,applyToProperties:M}=l,E=c[g].properties.map(({value:I})=>I).every(I=>(M||[]).indexOf(I)===-1),h=Tt(s,v,g),L=St(o,y()(h,"conditions",[]));if(D()(M)||E)return ge()(u,[g,v],{properties:{enabled:h!==void 0},conditions:L}),u;const $=Nn(M,c[g],h);return ge()(u,[g,v],{...$,conditions:L}),u},{});return Bn()(i,m)},{});const Vn=(t,n,o)=>t.reduce((s,i)=>{const l=Tt(o,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:St(n,l?.conditions??[])},s},{}),Hn=(t,n,o)=>t.reduce((s,i)=>(s[i.subCategoryId]=Vn(i.actions,n,o),s),{});var Ot=(t,n,o=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const d=Hn(l,n,o);return s[i]=d,s},{});const Dt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(de()(t,n)).map(([o,s])=>({category:o,categoryId:Dt(o),childrenForm:Object.entries(de()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Dt(i),actions:l}))})),Gn=(t,n)=>{const{conditions:o,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(d,"category")},m={collectionTypes:$t(s,s.actions||[],o,n),singleTypes:$t(i,i.actions||[],o,n),plugins:Ot(c.plugins,o,n),settings:Ot(c.settings,o,n)};return{initialData:m,modifiedData:m,layouts:c}},Un=r(99381),et=r.n(Un);const Lt=t=>Object.keys(t).reduce((n,o)=>{const s=t[o];if(be()(s)&&!S()(s,"conditions"))return{...n,[o]:Lt(s)};if(be()(s)&&S()(s,"conditions")&&!ke(Y()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[o]:{...s,conditions:l}}}return n[o]=s,n},{});var tt=Lt;const kt=(t,n,o=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!o?(s[i]=l,s):be()(l)?{...s,[i]:kt(l,n,i==="fields")}:(s[i]=n,s)},{});var Ge=kt;const Kn={initialData:{},modifiedData:{},layouts:{}};var zn=(t,n)=>(0,Q.ZP)(t,o=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(y()(t,d)).forEach(c=>{const m=y()(t,[...d,c,i],void 0);if(m){let u=Ge(m,l);if(!l&&u.conditions){const g=Ge(u.conditions,!1);u={...u,conditions:g}}ge()(o,[...d,c,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:d}=n;let c=et()(t.modifiedData);const m=s.split(".."),u=y()(c,m,{});Object.keys(u).forEach(g=>{if(S()(u[g],`properties.${i}`)){const v=y()(u,[g,"properties",i,l]),M=[...m,g,"properties",i,l];if(!be()(v))ge()(c,M,d);else{const N=Ge(v,d);ge()(c,M,N)}}}),d||(c=tt(c)),ge()(o,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;ge()(o,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),ge()(o,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=et()(t.modifiedData);const c=y()(d,l,{}),m=Ge(c,i);ge()(d,l,m),i||(d=tt(d)),ge()(o,["modifiedData"],d);break}case"RESET_FORM":{o.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{o.initialData=t.modifiedData;break}default:return o}});const nt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:o}]=t;return{action:n,subject:null,conditions:nt(o),properties:{}}},wn=t=>Object.values(t).reduce((n,o)=>{const s=Object.entries(o).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=Xn(l);return i.push(c),i},[]);return[...n,...s]},[]);var It=t=>Object.values(t).reduce((n,o)=>{const s=wn(o);return[...n,...s]},[]);const Zt=(t,n="")=>Object.entries(t).reduce((o,s)=>{const[i,l]=s;return be()(l)?[...o,...Zt(l,`${n}${i}.`)]:(l&&!be()(l)&&o.push(`${n}${i}`),o)},[]),Yn=(t,n,{conditions:o,properties:s})=>Object.entries(s).reduce((i,l)=>{const[d,c]=l;return i.properties[d]=Zt(c),i},{action:t,subject:n,conditions:nt(o),properties:{}}),Jn=(t,n,{conditions:o})=>({action:t,subject:n,properties:{},conditions:nt(o)}),Qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,d]=i;if(!ke(d).some(u=>u))return s;if(!d?.properties?.enabled){const u=Yn(l,t,d);return[...s,u]}if(!d.properties.enabled)return s;const m=Jn(l,t,d);return s.push(m),s},[]);var Bt=t=>Object.entries(t).reduce((o,s)=>{const[i,l]=s,d=Qn(i,l);return[...o,...d]},[]),qn=t=>{const n=It(t.plugins),o=It(t.settings),s=Bt(t.collectionTypes),i=Bt(t.singleTypes);return[...n,...o,...s,...i]},_n=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:o},s)=>{const[{initialData:i,layouts:l,modifiedData:d},c]=(0,e.useReducer)(zn,Kn,()=>Gn(t,o)),{formatMessage:m}=(0,H.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const j=(0,Z.e5)(i.collectionTypes,d.collectionTypes),E=(0,Z.e5)(i.singleTypes,d.singleTypes),h={...j,...E};let L;return D()(h)?L=!1:L=Object.values(h).some($=>Object.values($).some(I=>S()(I,"conditions"))),{permissionsToSend:qn(d),didUpdateConditions:L}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(j,E,h,L)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:j,propertyName:E,rowName:h,value:L})},g=(j,E,h)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:j,actionId:E,value:h})},v=j=>{c({type:"ON_CHANGE_CONDITIONS",conditions:j})},M=(0,e.useCallback)(({target:{name:j,value:E}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:j,value:E})},[]),N=(0,e.useCallback)(({target:{name:j,value:E}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:j,value:E})},[]);return e.createElement(Pn,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:v,onChangeSimpleCheckbox:M,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:g}},e.createElement(b.v,{id:"tabs",label:m({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(P.m,null,_n.map(j=>e.createElement(P.O,{key:j.id},m({id:j.labelId,defaultMessage:j.defaultMessage})))),e.createElement(R.n,{style:{position:"relative"}},e.createElement(R.x,null,e.createElement(Et,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(R.x,null,e.createElement(Et,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(R.x,null,e.createElement(At,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(R.x,null,e.createElement(At,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var es=(0,e.memo)(st)},33778:function(X,B,r){"use strict";r.r(B),r.d(B,{default:function(){return T}});var e=r(32735),b=r(19565),P=r(15062),R=r(53038),Z=r(78125),O=r(27649),S=r(82055),x=r(87933),D=r(41415),q=r(17e3),a=r(72850),H=r(29439),p=r(92802),A=r(33795),F=r.n(A),f=r(67879),C=r(10328),w=r(7247),ue=r(49372),ae=r(15335),ie=r(5803),y=r(10369),le=r(33475),Y=r(60216),G=r.n(Y);const _=({disabled:ne,role:z,values:k,errors:Q,onChange:pe,onBlur:de})=>{const{formatMessage:ee}=(0,f.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(x.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(x.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(ue.Z,{fontWeight:"bold"},z?z.name:ee({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(ue.Z,{textColor:"neutral500",variant:"pi"},z?z.description:ee({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(D.z,{disabled:!0,variant:"secondary"},ee({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:z.usersCount}))),e.createElement(ae.r,{gap:4},e.createElement(ie.P,{col:6},e.createElement(y.o,{disabled:ne,name:"name",error:Q.name&&ee({id:Q.name}),label:ee({id:"global.name",defaultMessage:"Name"}),onChange:pe,onBlur:de,value:k.name||""})),e.createElement(ie.P,{col:6},e.createElement(le.g,{disabled:ne,label:ee({id:"global.description",defaultMessage:"Description"}),id:"description",error:Q.name&&ee({id:Q.name}),onChange:pe,onBlur:de},k.description||"")))))};_.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},_.propTypes={disabled:G().bool,errors:G().object.isRequired,onBlur:G().func.isRequired,onChange:G().func.isRequired,role:G().object,values:G().object};var xe=_,me=r(24346),oe=me.Ry().shape({name:me.Z_().required(b.I0.required)}),Ee=()=>{const ne=(0,b.lm)(),{formatMessage:z}=(0,f.Z)(),{params:{id:k}}=(0,R.$B)("/settings/roles/:id"),[Q,pe]=(0,e.useState)(!1),de=(0,e.useRef)(),{lockApp:ee,unlockApp:ce}=(0,b.o1)(),{trackUsage:Ze}=(0,b.rS)(),{isLoading:Ae,data:Be}=(0,C.U_)(k),{role:he,permissions:Oe,isLoading:De,onSubmitSucceeded:Fe}=(0,C.Dq)(k),{put:je}=(0,b.kY)(),He=async re=>{try{ee(),pe(!0);const{permissionsToSend:W,didUpdateConditions:U}=de.current.getPermissions();await je(`/admin/roles/${k}`,re),he.code!=="strapi-super-admin"&&(await je(`/admin/roles/${k}/permissions`,{permissions:W}),U&&Ze("didUpdateConditions")),de.current.setFormAfterSubmit(),Fe({name:re.name,description:re.description}),ne({type:"success",message:{id:"notification.success.saved"}})}catch(W){console.error(W.response);const U=F()(W,"response.payload.message","An error occured"),ye=F()(W,"response.payload.data.permissions[0]",U);ne({type:"warning",message:ye})}finally{pe(!1),ce()}},Le=he.code==="strapi-super-admin";return e.createElement(O.o,null,e.createElement(b.SL,{name:"Roles"}),e.createElement(p.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:He,validationSchema:oe,validateOnChange:!1},({handleSubmit:re,values:W,errors:U,handleChange:ye,handleBlur:Ce})=>e.createElement("form",{onSubmit:re},e.createElement(S.T,{primaryAction:e.createElement(x.k,{gap:2},e.createElement(D.z,{disabled:he.code==="strapi-super-admin",onClick:re,loading:Q,size:"L"},z({id:"global.save",defaultMessage:"Save"}))),title:z({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:z({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(b.rU,{startIcon:e.createElement(H.Z,null),to:"/settings/roles"},z({id:"global.back",defaultMessage:"Back"}))}),e.createElement(q.D,null,e.createElement(x.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(xe,{isLoading:De,disabled:Le,errors:U,values:W,onChange:ye,onBlur:Ce,role:he}),!Ae&&!De?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(w.Z,{isFormDisabled:Le,permissions:Oe,ref:de,layout:Be})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(b.dO,null)))))))},T=()=>{const ne=(0,P.v9)(Z._),{isLoading:z,allowedActions:{canRead:k,canUpdate:Q}}=(0,b.ss)({read:ne.settings.roles.read,update:ne.settings.roles.update});return z?e.createElement(b.dO,null):!k&&!Q?e.createElement(R.l_,{to:"/"}):e.createElement(Ee,null)}},84802:function(X){function B(r,e,b,P){for(var R=-1,Z=r==null?0:r.length;++R<Z;){var O=r[R];e(P,O,b(O),r)}return P}X.exports=B},62435:function(X,B,r){var e=r(56671);function b(P,R,Z,O){return e(P,function(S,x,D){R(O,S,Z(S),D)}),O}X.exports=b},85580:function(X,B,r){var e=r(84802),b=r(62435),P=r(88904),R=r(77236);function Z(O,S){return function(x,D){var q=R(x)?e:b,a=S?S():{};return q(x,O,P(D,2),a)}}X.exports=Z},72091:function(X,B,r){var e=r(40314),b=1/0;function P(R){var Z=R==null?0:R.length;return Z?e(R,b):[]}X.exports=P},81346:function(X,B,r){var e=r(40999),b=r(85580),P=Object.prototype,R=P.hasOwnProperty,Z=b(function(O,S,x){R.call(O,x)?O[x].push(S):e(O,x,[S])});X.exports=Z},83828:function(X,B,r){"use strict";r.d(B,{U:function(){return H},y:function(){return q}});var e=r(74512),b=r(32735),P=r(8471),R=r(91045),Z=r(74971),O=r(49372),S=r(87933),x=r(72850);const D=({theme:p,expanded:A,variant:F,disabled:f,error:C})=>C?`1px solid ${p.colors.danger600} !important`:f?`1px solid ${p.colors.neutral150}`:A?`1px solid ${p.colors.primary600}`:F==="primary"?`1px solid ${p.colors.neutral0}`:`1px solid ${p.colors.neutral100}`,q=(0,P.ZP)(O.Z)``,a=(0,P.ZP)(x.x)`
|
|
217
|
+
border: ${D};
|
|
218
|
+
|
|
219
|
+
&:hover:not([aria-disabled='true']) {
|
|
220
|
+
border: 1px solid ${({theme:p})=>p.colors.primary600};
|
|
221
|
+
|
|
222
|
+
${q} {
|
|
223
|
+
color: ${({theme:p,expanded:A})=>A?void 0:p.colors.primary700};
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
${O.Z} {
|
|
227
|
+
color: ${({theme:p,expanded:A})=>A?void 0:p.colors.primary600};
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
& > ${S.k} {
|
|
231
|
+
background: ${({theme:p})=>p.colors.primary100};
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
[data-strapi-dropdown='true'] {
|
|
235
|
+
background: ${({theme:p})=>p.colors.primary200};
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
`,H=({children:p,disabled:A=!1,error:F,expanded:f=!1,hasErrorMessage:C=!0,id:w,onToggle:ue,toggle:ae,size:ie="M",variant:y="primary",shadow:le})=>{const Y=(0,Z.M)(w),G=b.useMemo(()=>({expanded:f,onToggle:ue,toggle:ae,id:Y,size:ie,variant:y,disabled:A}),[A,f,Y,ue,ie,ae,y]);return(0,e.jsxs)(R.S.Provider,{value:G,children:[(0,e.jsx)(a,{"data-strapi-expanded":f,disabled:A,"aria-disabled":A,expanded:f,hasRadius:!0,variant:y,error:F,shadow:le,children:p}),F&&C&&(0,e.jsx)(x.x,{paddingTop:1,children:(0,e.jsx)(O.Z,{variant:"pi",textColor:"danger600",children:F})})]})}},89966:function(X,B,r){"use strict";r.d(B,{v:function(){return R}});var e=r(74512),b=r(91045),P=r(72850);const R=({children:Z,...O})=>{const{expanded:S,id:x}=(0,b.A)();if(!S)return null;const D=`accordion-content-${x}`,q=`accordion-label-${x}`,a=`accordion-desc-${x}`;return(0,e.jsx)(P.x,{role:"region",id:D,"aria-labelledby":q,"aria-describedby":a,...O,children:Z})}},91045:function(X,B,r){"use strict";r.d(B,{A:function(){return P},S:function(){return b}});var e=r(32735);const b=(0,e.createContext)({disabled:!1,expanded:!1,id:"",size:"M",variant:"primary"}),P=()=>(0,e.useContext)(b)},61762:function(X,B,r){"use strict";r.d(B,{B:function(){return p}});var e=r(74512),b=r(16899),P=r(8471),R=r(83828),Z=r(91045);const O=({expanded:A,disabled:F,variant:f})=>{let C="neutral100";return A?C="primary100":F?C="neutral150":f==="primary"&&(C="neutral0"),C};var S=r(7563),x=r(99140),D=r(87933),q=r(49372);const a=(0,P.ZP)(S.A)`
|
|
239
|
+
text-align: left;
|
|
240
|
+
|
|
241
|
+
// necessary to make the ellipsis prop work on the title
|
|
242
|
+
> span {
|
|
243
|
+
max-width: 100%;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
svg {
|
|
247
|
+
width: ${14/16}rem;
|
|
248
|
+
height: ${14/16}rem;
|
|
249
|
+
|
|
250
|
+
path {
|
|
251
|
+
fill: ${({theme:A,expanded:F})=>F?A.colors.primary600:A.colors.neutral500};
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
`,H=(0,P.ZP)(D.k)`
|
|
255
|
+
min-height: ${({theme:A,size:F})=>A.sizes.accordions[F]};
|
|
256
|
+
border-radius: ${({theme:A,expanded:F})=>F?`${A.borderRadius} ${A.borderRadius} 0 0`:A.borderRadius};
|
|
257
|
+
|
|
258
|
+
&:hover {
|
|
259
|
+
svg {
|
|
260
|
+
path {
|
|
261
|
+
fill: ${({theme:A})=>A.colors.primary600};
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
`,p=({title:A,description:F,as:f="span",togglePosition:C="right",action:w,...ue})=>{const{onToggle:ae,toggle:ie,expanded:y,id:le,size:Y,variant:G,disabled:_}=(0,Z.A)(),xe=`accordion-content-${le}`,me=`accordion-label-${le}`,Re=`accordion-desc-${le}`,oe=Y==="M"?6:4,Pe=Y==="M"?oe:oe-2,Ee=O({expanded:y,disabled:_,variant:G}),$e={as:f,fontWeight:Y==="S"?"bold":void 0,id:me,textColor:y?"primary600":"neutral700",ellipsis:!0,variant:Y==="M"?"delta":void 0},T=y?"primary600":"neutral600",ne=y?"primary200":"neutral200",z=Y==="M"?`${32/16}rem`:`${24/16}rem`,k=()=>{_||(ie&&!ae?(console.warn('Deprecation warning: Usage of "toggle" prop in Accordion component is deprecated. This is discouraged and will be removed in the next major release. Please use "onToggle" instead'),ie()):ae&&ae())},Q=(0,e.jsx)(D.k,{justifyContent:"center",borderRadius:"50%",height:z,width:z,transform:y?"rotate(180deg)":void 0,"data-strapi-dropdown":!0,"aria-hidden":!0,as:"span",background:ne,cursor:_?"not-allowed":"pointer",onClick:k,shrink:0,children:(0,e.jsx)(x.J,{as:b.Z,width:Y==="M"?`${11/16}rem`:`${8/16}rem`,color:y?"primary600":"neutral600"})});return(0,e.jsx)(H,{paddingBottom:Pe,paddingLeft:oe,paddingRight:oe,paddingTop:Pe,background:Ee,expanded:y,size:Y,justifyContent:"space-between",cursor:_?"not-allowed":"",children:(0,e.jsxs)(D.k,{gap:3,flex:1,maxWidth:"100%",children:[C==="left"&&Q,(0,e.jsx)(a,{onClick:k,"aria-disabled":_,"aria-expanded":y,"aria-controls":xe,"aria-labelledby":me,"data-strapi-accordion-toggle":!0,expanded:y,type:"button",flex:1,minWidth:0,...ue,children:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(R.y,{...$e,children:A}),F&&(0,e.jsx)(q.Z,{as:"p",id:Re,textColor:T,children:F})]})}),C==="right"&&(0,e.jsxs)(D.k,{gap:3,children:[Q,w]}),C==="left"&&w]})})}},27799:function(X,B,r){"use strict";r.d(B,{Q:function(){return R}});var e=r(74512),b=r(8471),P=r(6407);const R=({options:O,...S})=>(0,e.jsx)(P.NU,{...S,children:O.map(x=>"children"in x?(0,e.jsx)(P.Ab,{label:x.label,values:x.children.map(D=>D.value.toString()),children:x.children.map(D=>(0,e.jsx)(Z,{value:D.value,children:D.label},D.value))},x.label):(0,e.jsx)(P.ML,{value:x.value,children:x.label},x.value))}),Z=(0,b.ZP)(P.ML)`
|
|
266
|
+
padding-left: ${({theme:O})=>O.spaces[7]};
|
|
267
|
+
`}}]);
|