@strapi/admin 4.14.0-alpha.0 → 4.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/components/RBACProvider/index.js +1 -1
- package/admin/src/content-manager/components/BlocksEditor/BlocksInput/index.js +87 -0
- package/admin/src/content-manager/components/BlocksEditor/Toolbar/index.js +463 -0
- package/admin/src/content-manager/components/BlocksEditor/hooks/useBlocksStore.js +451 -0
- package/admin/src/content-manager/components/BlocksEditor/hooks/useModifiersStore.js +102 -0
- package/admin/src/content-manager/components/BlocksEditor/index.js +126 -0
- package/admin/src/content-manager/components/InputUID/index.js +92 -109
- package/admin/src/content-manager/components/Inputs/index.js +3 -1
- package/admin/src/content-manager/components/Inputs/utils/getInputType.js +2 -0
- package/admin/src/content-manager/components/RelationInput/RelationInput.js +59 -43
- package/admin/src/content-manager/components/Wysiwyg/EditorLayout.js +2 -2
- package/admin/src/content-manager/hooks/useRelation/useRelation.js +84 -86
- package/admin/src/content-manager/pages/ListView/components/BulkActionButtons/ConfirmBulkActionDialog/index.js +3 -0
- package/admin/src/content-manager/pages/ListView/components/BulkActionButtons/SelectedEntriesModal/index.js +2 -1
- package/admin/src/content-manager/pages/ListView/index.js +1 -0
- package/admin/src/content-manager/utils/schema.js +22 -0
- package/admin/src/index.js +7 -1
- package/admin/src/pages/MarketplacePage/components/EmptyNpmPackageSearch/index.js +1 -1
- package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/index.js +0 -1
- package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +1 -1
- package/admin/src/translations/en.json +17 -0
- package/build/1049.acb0e730.chunk.js +1 -0
- package/build/1227.969e24e6.chunk.js +1 -0
- package/build/{1386.ea73b677.chunk.js → 1386.db9a2795.chunk.js} +1 -1
- package/build/2225.78fb9b89.chunk.js +79 -0
- package/build/2379.906334f0.chunk.js +1 -0
- package/build/{2395.0e5e8ded.chunk.js → 2395.f6ac2863.chunk.js} +2 -2
- package/build/2614.3e088d3e.chunk.js +35 -0
- package/build/{6691.4985ef22.chunk.js → 2659.cb94f1e7.chunk.js} +28 -28
- package/build/{2801.8e1aa82a.chunk.js → 2801.2afb4757.chunk.js} +1 -1
- package/build/{1387.a86ac314.chunk.js → 2950.216f2e89.chunk.js} +1 -1
- package/build/3021.33ad47fb.chunk.js +103 -0
- package/build/3911.488fbde3.chunk.js +95 -0
- package/build/4174.3e13fb26.chunk.js +1 -0
- package/build/4546.1203ac95.chunk.js +1 -0
- package/build/{502.7bba43b1.chunk.js → 502.9918bff7.chunk.js} +1 -1
- package/build/{4628.9cbb6df5.chunk.js → 5158.c85f841a.chunk.js} +1 -1
- package/build/6266.e8990811.chunk.js +146 -0
- package/build/6715.48e37308.chunk.js +1 -0
- package/build/6812.00ef5b0d.chunk.js +26 -0
- package/build/{7464.eb057bec.chunk.js → 7464.0280cf59.chunk.js} +1 -1
- package/build/7897.4a39de37.chunk.js +6 -0
- package/build/{8276.be3ed581.chunk.js → 8276.951e198e.chunk.js} +2 -2
- package/build/9832.65ed5a44.chunk.js +181 -0
- package/build/{Admin-authenticatedApp.d200a4ee.chunk.js → Admin-authenticatedApp.7e17bf9f.chunk.js} +7 -7
- package/build/Admin_InternalErrorPage.b3163562.chunk.js +1 -0
- package/build/{Admin_homePage.6f128523.chunk.js → Admin_homePage.6cb51f18.chunk.js} +10 -10
- package/build/Admin_marketplace.3eb5e132.chunk.js +55 -0
- package/build/Admin_pluginsPage.b9fa2947.chunk.js +6 -0
- package/build/{Admin_profilePage.678bce24.chunk.js → Admin_profilePage.a4d41380.chunk.js} +2 -2
- package/build/Admin_settingsPage.6dc2af9f.chunk.js +111 -0
- package/build/Upload_ConfigureTheView.cc7ca628.chunk.js +1 -0
- package/build/{admin-app.582877a3.chunk.js → admin-app.98cdf43a.chunk.js} +8 -8
- package/build/{admin-edit-roles-page.0aa65505.chunk.js → admin-edit-roles-page.418bb1c5.chunk.js} +30 -30
- package/build/admin-edit-users.9b42cc9e.chunk.js +10 -0
- package/build/admin-roles-list.cf964578.chunk.js +22 -0
- package/build/admin-users.8385dd73.chunk.js +11 -0
- package/build/{api-tokens-create-page.e0c15627.chunk.js → api-tokens-create-page.2f25ddf6.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.9f2dce47.chunk.js → api-tokens-edit-page.45faac16.chunk.js} +1 -1
- package/build/api-tokens-list-page.5baabf1a.chunk.js +16 -0
- package/build/audit-logs-settings-page.91489670.chunk.js +1 -0
- package/build/content-manager.0d2b4a60.chunk.js +1199 -0
- package/build/{content-type-builder-list-view.b71cf240.chunk.js → content-type-builder-list-view.aa8a5d1a.chunk.js} +14 -14
- package/build/content-type-builder-translation-en-json.b9e5cacd.chunk.js +1 -0
- package/build/content-type-builder.885f2cad.chunk.js +146 -0
- package/build/email-settings-page.6bd7b280.chunk.js +11 -0
- package/build/{en-json.e12fd5fc.chunk.js → en-json.a3973ff5.chunk.js} +1 -1
- package/build/i18n-settings-page.6c0157e7.chunk.js +9 -0
- package/build/i18n-translation-tr-json.3bfc812f.chunk.js +1 -0
- package/build/index.html +1 -1
- package/build/main.105dcf23.js +2665 -0
- package/build/review-workflows-settings-create-view.ae369a88.chunk.js +1 -0
- package/build/review-workflows-settings-edit-view.9a61c69f.chunk.js +1 -0
- package/build/{review-workflows-settings-list-view.7e300ecb.chunk.js → review-workflows-settings-list-view.067e0c35.chunk.js} +5 -5
- package/build/{runtime~main.9de029f4.js → runtime~main.866715be.js} +2 -2
- package/build/sso-settings-page.a29e6c38.chunk.js +1 -0
- package/build/{transfer-tokens-create-page.ebba16d8.chunk.js → transfer-tokens-create-page.6e1b8cee.chunk.js} +1 -1
- package/build/{transfer-tokens-edit-page.d7bb2b3e.chunk.js → transfer-tokens-edit-page.10bb22e2.chunk.js} +1 -1
- package/build/transfer-tokens-list-page.0306652c.chunk.js +16 -0
- package/build/upload-settings.0af6edc5.chunk.js +14 -0
- package/build/upload.19e14c8e.chunk.js +58 -0
- package/build/users-advanced-settings-page.ed69812f.chunk.js +9 -0
- package/build/users-email-settings-page.131a00fb.chunk.js +9 -0
- package/build/users-providers-settings-page.b3dca41d.chunk.js +14 -0
- package/build/{users-roles-settings-page.2b051e6a.chunk.js → users-roles-settings-page.afab5a0d.chunk.js} +4 -4
- package/build/{webhook-edit-page.de45c635.chunk.js → webhook-edit-page.4c037da4.chunk.js} +3 -3
- package/build/webhook-list-page.56c82f4a.chunk.js +63 -0
- package/ee/admin/content-manager/pages/EditView/InformationBox/components/AssigneeSelect/AssigneeSelect.js +5 -15
- package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/Stage.js +48 -20
- package/ee/server/bootstrap.js +3 -3
- package/ee/server/content-types/workflow-stage/index.js +1 -1
- package/ee/server/controllers/admin.js +1 -1
- package/ee/server/controllers/user.js +1 -1
- package/ee/server/destroy.js +1 -1
- package/ee/server/migrations/review-workflows-stages-roles.js +68 -0
- package/ee/server/migrations/review-workflows-workflow-name.js +7 -0
- package/ee/server/register.js +3 -1
- package/ee/server/routes/utils.js +1 -1
- package/ee/server/services/audit-logs.js +1 -1
- package/ee/server/services/passport/sso.js +1 -1
- package/ee/server/services/passport.js +1 -1
- package/ee/server/services/review-workflows/stage-permissions.js +1 -1
- package/ee/server/services/review-workflows/stages.js +10 -2
- package/ee/server/services/seat-enforcement.js +1 -1
- package/ee/server/utils/sso-lock.js +1 -1
- package/ee/server/validation/role.js +1 -1
- package/ee/server/validation/user.js +1 -1
- package/package.json +21 -13
- package/server/bootstrap.js +3 -1
- package/server/controllers/admin.js +1 -1
- package/server/domain/permission/index.js +8 -1
- package/server/services/metrics.js +17 -0
- package/server/validation/permission.js +1 -1
- package/utils/plugins.js +7 -1
- package/build/1049.ec69f5e0.chunk.js +0 -1
- package/build/1227.ec336799.chunk.js +0 -1
- package/build/1504.eff012f7.chunk.js +0 -95
- package/build/2225.649fb7bc.chunk.js +0 -79
- package/build/2379.1f98a31a.chunk.js +0 -1
- package/build/3739.63e352f1.chunk.js +0 -103
- package/build/4174.4587c7f6.chunk.js +0 -1
- package/build/448.829e1344.chunk.js +0 -1
- package/build/4546.6dbd695f.chunk.js +0 -1
- package/build/6266.53be9ea3.chunk.js +0 -124
- package/build/7897.eac204a4.chunk.js +0 -6
- package/build/9806.5d5a0e8d.chunk.js +0 -160
- package/build/9944.7af075a5.chunk.js +0 -26
- package/build/Admin_InternalErrorPage.38155af3.chunk.js +0 -1
- package/build/Admin_marketplace.061a6e5a.chunk.js +0 -55
- package/build/Admin_pluginsPage.16f837b8.chunk.js +0 -6
- package/build/Admin_settingsPage.af7309e4.chunk.js +0 -111
- package/build/Upload_ConfigureTheView.3fc1c100.chunk.js +0 -1
- package/build/admin-edit-users.9215912a.chunk.js +0 -10
- package/build/admin-roles-list.824a50de.chunk.js +0 -22
- package/build/admin-users.f6b3c643.chunk.js +0 -11
- package/build/api-tokens-list-page.d747051c.chunk.js +0 -16
- package/build/audit-logs-settings-page.be2cb4dd.chunk.js +0 -1
- package/build/content-manager.06a2f7ec.chunk.js +0 -1097
- package/build/content-type-builder-translation-en-json.ed29ff4d.chunk.js +0 -1
- package/build/content-type-builder.e5669749.chunk.js +0 -170
- package/build/email-settings-page.2809f0bf.chunk.js +0 -11
- package/build/i18n-settings-page.5f716172.chunk.js +0 -9
- package/build/i18n-translation-tr-json.10f0600d.chunk.js +0 -1
- package/build/main.0b88b960.js +0 -2863
- package/build/review-workflows-settings-create-view.604cffa0.chunk.js +0 -1
- package/build/review-workflows-settings-edit-view.73c57f07.chunk.js +0 -1
- package/build/sso-settings-page.94373f78.chunk.js +0 -1
- package/build/transfer-tokens-list-page.cfe1736c.chunk.js +0 -16
- package/build/upload-settings.5e55266d.chunk.js +0 -14
- package/build/upload.0660a088.chunk.js +0 -58
- package/build/users-advanced-settings-page.818d84eb.chunk.js +0 -9
- package/build/users-email-settings-page.c1967c09.chunk.js +0 -9
- package/build/users-providers-settings-page.11893e08.chunk.js +0 -14
- package/build/webhook-list-page.ca91df8b.chunk.js +0 -63
package/build/{admin-edit-roles-page.0aa65505.chunk.js → admin-edit-roles-page.418bb1c5.chunk.js}
RENAMED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(K,L,o){"use strict";o.d(L,{V:function(){return R}});var e=o(
|
|
2
|
-
border: 1px solid ${({theme:
|
|
3
|
-
background: ${({theme:
|
|
4
|
-
padding: ${({theme:
|
|
5
|
-
color: ${({theme:
|
|
6
|
-
border-radius: ${({theme:
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{64499:function(K,L,o){"use strict";o.d(L,{V:function(){return R}});var e=o(43806),C=o(20108);const R=(E={},O={})=>{const{id:P,...A}=E,{get:y}=(0,e.kY)();if(!P&&(O?.enabled===void 0||O?.enabled))throw new Error('"id" is a required argument');const{data:S,error:W,isError:a,isLoading:Z,refetch:m}=(0,C.useQuery)(["roles",P,"permissions",A],async()=>{const{data:{data:M}}=await y(`/admin/roles/${P}/permissions`,{params:A});return M},O);return{permissions:S,error:W,isError:a,isLoading:Z,refetch:m}}},86409:function(K,L,o){"use strict";o.d(L,{F:function(){return O}});var e=o(32735),C=o(43806),R=o(67879),E=o(20108);const O=(P={},A={})=>{const{id:y="",...S}=P,{get:W}=(0,C.kY)(),{locale:a}=(0,R.Z)(),Z=(0,C.Xe)(a,{sensitivity:"base"}),{data:m,error:M,isError:F,isLoading:g,refetch:b}=(0,E.useQuery)(["roles",y,S],async()=>{const{data:w}=await W(`/admin/roles/${y??""}`,{params:S});return w},A);return{roles:e.useMemo(()=>{let w=[];return y&&m?w=[m.data]:Array.isArray(m?.data)&&(w=m.data),[...w].sort((oe,ee)=>Z.compare(oe.name,ee.name))},[m,y,Z]),error:M,isError:F,isLoading:g,refetch:b}}},15570:function(K,L,o){"use strict";o.r(L),o.d(L,{CreatePage:function(){return Re},default:function(){return Se}});var e=o(32735),C=o(95162),R=o(64092),E=o(84642),O=o(91779),P=o(56932),A=o(77981),y=o(8365),S=o(10710),W=o(97037),a=o(2846),Z=o(15367),m=o(43806),M=o(70788),F=o(14723),g=o(92802),b=o(86834),G=o.n(b),w=o(67879),oe=o(15062),ee=o(53038),v=o(8471),pe=o(64499),Q=o(30305),H=o(1283),te=o(91720),Ce=o(24346),xe=Ce.Ry().shape({name:Ce.Z_().required(m.I0.required),description:Ce.Z_().required(m.I0.required)});const ie=v.ZP.div`
|
|
2
|
+
border: 1px solid ${({theme:z})=>z.colors.primary200};
|
|
3
|
+
background: ${({theme:z})=>z.colors.primary100};
|
|
4
|
+
padding: ${({theme:z})=>`${z.spaces[2]} ${z.spaces[4]}`};
|
|
5
|
+
color: ${({theme:z})=>z.colors.primary600};
|
|
6
|
+
border-radius: ${({theme:z})=>z.borderRadius};
|
|
7
7
|
font-size: ${12/16}rem;
|
|
8
8
|
font-weight: bold;
|
|
9
|
-
`,Re=()=>{const
|
|
9
|
+
`,Re=()=>{const z=(0,ee.$B)("/settings/roles/duplicate/:id"),Y=(0,m.lm)(),{lockApp:re,unlockApp:X}=(0,m.o1)(),{formatMessage:j}=(0,w.Z)(),[J,le]=(0,e.useState)(!1),{replace:ge}=(0,ee.k6)(),q=(0,e.useRef)(),{trackUsage:ue}=(0,m.rS)(),{post:ke,put:Be}=(0,m.kY)(),{params:ve}=z??{},{isLoading:Ze,data:Le}=(0,te.d)(ve?.id,{cacheTime:0}),{permissions:he,isLoading:Me}=(0,pe.V)({id:ve?.id},{cacheTime:0,enabled:!!ve?.id}),Fe=Pe=>{re(),le(!0),ve?.id?ue("willDuplicateRole"):ue("willCreateNewRole"),Promise.resolve(ke("/admin/roles",Pe)).then(async({data:ne})=>{const{permissionsToSend:ce}=q.current.getPermissions();return ve?.id?ue("didDuplicateRole"):ue("didCreateNewRole"),ne.data.id&&!G()(ce)&&await Be(`/admin/roles/${ne.data.id}/permissions`,{permissions:ce}),ne}).then(ne=>{le(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ge(`/settings/roles/${ne.data.id}`)}).catch(ne=>{console.error(ne),le(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{X()})},Ue=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,F.Z)(new Date,"PPP")}`;return e.createElement(C.o,null,e.createElement(m.SL,{name:"Roles"}),e.createElement(g.J9,{initialValues:{name:"",description:Ue},onSubmit:Fe,validationSchema:xe,validateOnChange:!1},({handleSubmit:Pe,values:ne,errors:ce,handleReset:de,handleChange:me})=>e.createElement(m.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(R.T,{primaryAction:e.createElement(E.k,{gap:2},e.createElement(O.z,{variant:"secondary",onClick:()=>{de(),q.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(O.z,{onClick:Pe,loading:J,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(m.rU,{startIcon:e.createElement(M.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(P.D,null,e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(E.k,{justifyContent:"space-between"},e.createElement(A.x,null,e.createElement(A.x,null,e.createElement(y.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(A.x,null,e.createElement(y.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(ie,null,j({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(S.r,{gap:4},e.createElement(W.P,{col:6},e.createElement(a.o,{name:"name",error:ce.name&&j({id:ce.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:me,required:!0,value:ne.name})),e.createElement(W.P,{col:6},e.createElement(Z.g,{label:j({id:"global.description",defaultMessage:"Description"}),id:"description",error:ce.description&&j({id:ce.description}),onChange:me},ne.description))))),!Ze&&!Me?e.createElement(A.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(H.Z,{isFormDisabled:!1,ref:q,permissions:he,layout:Le})):e.createElement(A.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(m.dO,null))))))))};function Se(){const z=(0,oe.v9)(Q._);return e.createElement(m.O4,{permissions:z.settings.roles.create},e.createElement(Re,null))}},1283:function(K,L,o){"use strict";o.d(L,{Z:function(){return ts}});var e=o(32735),C=o(49854),R=o(89599),E=o(8623),O=o(43806),P=o(23973),A=o.n(P),y=o(86834),S=o.n(y),W=o(60216),a=o.n(W),Z=o(67879),m=o(77981),M=o(98978),F=o.n(M),g=o(8471),b=o(84642),G=o(96669),w=o(76884),oe=o(30465),ee=o(33795),v=o.n(ee),pe=o(9086),Q=o.n(pe),H=o(79652),te=o(91779),Ce=o(19594);const be=g.ZP.div`
|
|
10
10
|
position: relative;
|
|
11
11
|
|
|
12
12
|
${({hasConditions:t,disabled:n,theme:r})=>t&&`
|
|
@@ -21,20 +21,20 @@
|
|
|
21
21
|
background: ${n?r.colors.neutral100:r.colors.primary600};
|
|
22
22
|
}
|
|
23
23
|
`}
|
|
24
|
-
`,xe=({onClick:t,className:n,hasConditions:r,variant:s})=>{const{formatMessage:i}=(0,Z.Z)();return e.createElement(be,{hasConditions:r,className:n},e.createElement(te.z,{variant:s,startIcon:e.createElement(Ce.Z,null),onClick:t},i({id:"global.settings",defaultMessage:"Settings"})))};xe.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},xe.propTypes={onClick:a().func.isRequired,className:a().string,hasConditions:a().bool,variant:a().string};var ie=(0,g.ZP)(xe)``,Re=o(
|
|
24
|
+
`,xe=({onClick:t,className:n,hasConditions:r,variant:s})=>{const{formatMessage:i}=(0,Z.Z)();return e.createElement(be,{hasConditions:r,className:n},e.createElement(te.z,{variant:s,startIcon:e.createElement(Ce.Z,null),onClick:t},i({id:"global.settings",defaultMessage:"Settings"})))};xe.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},xe.propTypes={onClick:a().func.isRequired,className:a().string,hasConditions:a().bool,variant:a().string};var ie=(0,g.ZP)(xe)``,Re=o(21223),Se=o(98887),z=o(87674),Y=o(8365),re=o(74973),X=o(79129),j=o(2748),J=o(97889),le=o(81346),ge=o.n(le),q=o(23940),ue=o.n(q),ke=o(63057);const Be=t=>Object.values(t).map(n=>Object.entries(n).filter(([,r])=>r).map(([r])=>r)).flat(),ve=t=>t.reduce((n,[r,s])=>(n.push({label:ue()(r),children:s.map(i=>({label:i.displayName,value:i.id}))}),n),[]),Ze=(t,n)=>t.map(([,r])=>r).flat().reduce((r,s)=>({[s.id]:n.includes(s.id),...r}),{}),Le=({arrayOfOptionsGroupedByCategory:t,isFormDisabled:n,isGrey:r,label:s,name:i,onChange:l,value:c})=>{const{formatMessage:d}=(0,Z.Z)(),p=u=>{l(i,Ze(t,u))};return e.createElement(b.k,{as:"li",background:r?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(b.k,{paddingLeft:6,style:{width:180}},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},d({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(Y.Z,{variant:"sigma",title:s,textColor:"primary600",ellipsis:!0},d({id:`Settings.roles.form.permissions.${s.toLowerCase()}`,defaultMessage:s})),e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",d({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(m.x,{style:{maxWidth:430,width:"100%"}},e.createElement(ke.Q,{id:i,customizeContent:u=>`${u.length} currently selected`,onChange:p,value:Be(c),options:ve(t),disabled:n})))};Le.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 he=Le;const Me=(t,n)=>t.reduce((r,s)=>(r[s.id]=v()(n,s.id,!1),r),{}),Fe=(t,n)=>t.reduce((r,s)=>{const[i,l]=s,c=Me(l,n);return r[i]=c,r},{});var Pe=(t,n,r)=>t.reduce((s,i)=>{const l=v()(n,[...i.pathToConditionsObject,"conditions"],{}),c=Fe(r,l);return s[i.pathToConditionsObject.join("..")]=c,s},{});const ne=({actions:t,headerBreadCrumbs:n,isFormDisabled:r,onClosed:s,onToggle:i})=>{const{formatMessage:l}=(0,Z.Z)(),{availableConditions:c,modifiedData:d,onChangeConditions:p}=(0,H.$_)(),u=(0,e.useMemo)(()=>Object.entries(ge()(c,"category")),[c]),f=t.filter(({isDisplayed:h,hasSomeActionsSelected:k,hasAllActionsSelected:D})=>h&&(k||D)),x=(0,e.useMemo)(()=>Pe(f,d,u),[f,d,u]),[$,N]=(0,e.useState)(x),I=(h,k)=>{N((0,J.ZP)(D=>{D[h]||(D[h]={}),D[h].default||(D[h].default={}),D[h].default=k}))},T=()=>{const h=Object.entries($).reduce((k,D)=>{const[B,se]=D,U=Object.values(se).reduce((_,V)=>({..._,...V}),{});return k[B]=U,k},{});p(h),i()};return e.createElement(Re.P,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(Se.x,null,e.createElement(X.O,{id:"condition-modal-breadcrumbs",label:n.join(", ")},n.map((h,k,D)=>e.createElement(j.$,{isCurrent:k===D.length-1,key:h},ue()(l({id:h,defaultMessage:h})))))),e.createElement(z.f,null,f.length===0&&e.createElement(Y.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,f.map(({actionId:h,label:k,pathToConditionsObject:D},B)=>{const se=D.join("..");return e.createElement(he,{key:h,arrayOfOptionsGroupedByCategory:u,label:k,isFormDisabled:r,isGrey:B%2===0,name:se,onChange:I,value:v()($,se,{})})}))),e.createElement(re.m,{startActions:e.createElement(te.z,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(te.z,{onClick:T},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};ne.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 ce=ne;const de=`${120/16}rem`,me=`${200/16}rem`,Ae=`${53/16}rem`;var Ne=g.ZP.div`
|
|
25
25
|
width: ${de};
|
|
26
26
|
`,rt=(0,g.ZP)(b.k)`
|
|
27
27
|
padding-right: ${({theme:t})=>t.spaces[2]};
|
|
28
28
|
overflow: hidden;
|
|
29
29
|
flex: 1;
|
|
30
30
|
${({isCollapsable:t})=>t&&"cursor: pointer;"}
|
|
31
|
-
`;const Ge=({children:t,isCollapsable:n,isActive:r,isFormDisabled:s,label:i,onChange:l,onClick:
|
|
31
|
+
`;const Ge=({children:t,isCollapsable:n,isActive:r,isFormDisabled:s,label:i,onChange:l,onClick:c,checkboxName:d,someChecked:p,value:u})=>{const{formatMessage:f}=(0,Z.Z)();return e.createElement(b.k,{alignItems:"center",paddingLeft:6,style:{width:me,flexShrink:0}},e.createElement(m.x,{paddingRight:2},e.createElement(G.C,{name:d,"aria-label":f({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:s,onValueChange:x=>l({target:{name:d,value:x}}),indeterminate:p,value:u})),e.createElement(rt,{title:i,alignItems:"center",isCollapsable:n,...n&&{onClick:c,"aria-expanded":r,onKeyDown:({key:x})=>(x==="Enter"||x===" ")&&c(),tabIndex:0,role:"button"}},e.createElement(Y.Z,{fontWeight:r?"bold":"",textColor:r?"primary600":"neutral800",ellipsis:!0},ue()(i)),t))};Ge.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},Ge.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 at=(0,e.memo)(Ge),Nt=o(72091),Wt=o.n(Nt),Vt=o(85973),Te=o.n(Vt);const it=t=>Te()(t)?Wt()(Object.values(t).map(n=>Te()(n)?it(n):n)):[];var je=it,ze=t=>t?Object.keys(t).reduce((n,r)=>(r!=="conditions"&&(n[r]=t[r]),n),{}):null,Oe=t=>{const n=ze(t),r=je(n);if(!r.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=r.every(l=>l),i=r.some(l=>l)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:i}},Kt=o(91917),We=(0,g.ZP)(Kt.Z)`
|
|
32
32
|
display: none;
|
|
33
33
|
width: ${10/16}rem;
|
|
34
34
|
transform: rotate(${({$isActive:t})=>t?"180":"0"}deg);
|
|
35
35
|
margin-left: ${({theme:t})=>t.spaces[2]};
|
|
36
36
|
`,Ve=t=>`
|
|
37
|
-
${
|
|
37
|
+
${Y.Z} {
|
|
38
38
|
color: ${t.colors.primary600};
|
|
39
39
|
font-weight: ${t.fontWeights.bold}
|
|
40
40
|
}
|
|
@@ -44,13 +44,13 @@
|
|
|
44
44
|
fill: ${t.colors.primary600}
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
-
`,Ut=(t,n,r)=>t.map(({actionId:s,isDisplayed:i,applyToProperties:l,label:
|
|
47
|
+
`,Ut=(t,n,r)=>t.map(({actionId:s,isDisplayed:i,applyToProperties:l,label:c})=>{if(!i)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:i};const d=[...r.split(".."),s],p=S()(l)?[...d,"properties","enabled"]:d,u=p.join(".."),f=v()(n,[...d,"conditions"],null),x=je(f).some(T=>T);if(S()(l)){const T=v()(n,p,!1);return{actionId:s,checkboxName:u,hasAllActionsSelected:T,hasConditions:x,hasSomeActionsSelected:T,isDisplayed:i,isParentCheckbox:!1,label:c,pathToConditionsObject:d}}const $=v()(n,p,null),{hasAllActionsSelected:N,hasSomeActionsSelected:I}=Oe($);return{actionId:s,checkboxName:u,hasAllActionsSelected:N,hasConditions:x,hasSomeActionsSelected:I,isDisplayed:i,isParentCheckbox:!0,label:c,pathToConditionsObject:d}});const Ye=(t,n)=>`
|
|
48
48
|
${lt} {
|
|
49
49
|
background-color: ${t.colors.primary100};
|
|
50
50
|
color: ${t.colors.primary600};
|
|
51
51
|
border-radius: ${n?"2px 2px 0 0":"2px"};
|
|
52
52
|
}
|
|
53
|
-
${
|
|
53
|
+
${dt} {
|
|
54
54
|
display: flex;
|
|
55
55
|
}
|
|
56
56
|
${ie} {
|
|
@@ -82,10 +82,10 @@
|
|
|
82
82
|
&:hover {
|
|
83
83
|
${({theme:t,isActive:n})=>Ye(t,n)}
|
|
84
84
|
}
|
|
85
|
-
`,
|
|
85
|
+
`,ct=(0,g.ZP)(b.k)`
|
|
86
86
|
width: ${de};
|
|
87
87
|
position: relative;
|
|
88
|
-
`,
|
|
88
|
+
`,dt=(0,g.ZP)(m.x)`
|
|
89
89
|
display: none;
|
|
90
90
|
svg {
|
|
91
91
|
width: 11px;
|
|
@@ -105,10 +105,10 @@
|
|
|
105
105
|
position: absolute;
|
|
106
106
|
right: 9px;
|
|
107
107
|
transform: translateY(10px);
|
|
108
|
-
`,mt=({availableActions:t,isActive:n,isGrey:r,isFormDisabled:s,label:i,onClickToggle:l,pathToData:
|
|
108
|
+
`,mt=({availableActions:t,isActive:n,isGrey:r,isFormDisabled:s,label:i,onClickToggle:l,pathToData:c})=>{const[d,p]=(0,e.useState)(!1),{formatMessage:u}=(0,Z.Z)(),{modifiedData:f,onChangeParentCheckbox:x,onChangeSimpleCheckbox:$}=(0,H.$_)(),N=()=>{p(U=>!U)},I=()=>{p(!1)},T=v()(f,c.split(".."),{}),h=(0,e.useMemo)(()=>Object.keys(T).reduce((U,_)=>(U[_]=Q()(T[_],"conditions"),U),{}),[T]),{hasAllActionsSelected:k,hasSomeActionsSelected:D}=Oe(h),B=(0,e.useMemo)(()=>Ut(t,f,c),[t,f,c]),se=B.some(({hasConditions:U})=>U);return e.createElement(Ht,{isActive:n},e.createElement(lt,{isGrey:r},e.createElement(at,{isCollapsable:!0,isFormDisabled:s,label:i,checkboxName:c,onChange:x,onClick:l,someChecked:D,value:k,isActive:n},e.createElement(dt,{paddingLeft:2},n?e.createElement(w.Z,null):e.createElement(oe.Z,null))),e.createElement(b.k,{style:{flex:1}},B.map(({actionId:U,hasConditions:_,hasAllActionsSelected:V,hasSomeActionsSelected:ye,isDisplayed:Ie,isParentCheckbox:ae,checkboxName:Ee,label:Ke})=>Ie?ae?e.createElement(ct,{key:U,justifyContent:"center",alignItems:"center"},_&&e.createElement(ut,null),e.createElement(G.C,{disabled:s,name:Ee,"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${Ke} ${i}`}),onValueChange:$e=>{x({target:{name:Ee,value:$e}})},indeterminate:ye,value:V})):e.createElement(ct,{key:U,justifyContent:"center",alignItems:"center"},_&&e.createElement(ut,null),e.createElement(G.C,{disabled:s,indeterminate:_,name:Ee,onValueChange:$e=>{$({target:{name:Ee,value:$e}})},value:V})):e.createElement(Ne,{key:U}))),d&&e.createElement(ce,{headerBreadCrumbs:[i,"Settings.permissions.conditions.conditions"],actions:B,isFormDisabled:s,onClosed:I,onToggle:N})),e.createElement(Gt,null,e.createElement(ie,{onClick:N,hasConditions:se})))};mt.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 zt=mt;const Yt=g.ZP.span`
|
|
109
109
|
color: ${({theme:t})=>t.colors.danger700};
|
|
110
110
|
padding-left: ${({theme:t})=>t.spaces[1]}px;
|
|
111
|
-
`;var pt=()=>e.createElement(Yt,null,"*"),
|
|
111
|
+
`;var pt=()=>e.createElement(Yt,null,"*"),Xt=(t,n)=>t.map(r=>{const s=Array.isArray(r.subjects)&&r.subjects.indexOf(n)!==-1;return{...r,isDisplayed:s}});const wt=(0,g.ZP)(m.x)`
|
|
112
112
|
transform: translate(-4px, -12px);
|
|
113
113
|
|
|
114
114
|
&:before {
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
* {
|
|
127
127
|
fill: ${({theme:t,color:n})=>t.colors[n]};
|
|
128
128
|
}
|
|
129
|
-
`,
|
|
129
|
+
`,Xe=t=>e.createElement(wt,null,e.createElement(Qt,{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"})));Xe.defaultProps={fill:"primary200"},Xe.propTypes={fill:a().string};var Jt=(0,e.memo)(Xe);const gt=(0,g.ZP)(b.k)`
|
|
130
130
|
width: ${de};
|
|
131
131
|
position: relative;
|
|
132
132
|
`,qt=(0,g.ZP)(b.k)`
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
background-color: ${({theme:t})=>t.colors.primary200};
|
|
157
157
|
border-top-left-radius: 2px;
|
|
158
158
|
border-top-right-radius: 2px;
|
|
159
|
-
`,
|
|
159
|
+
`,we=({childrenForm:t,isFormDisabled:n,recursiveLevel:r,pathToDataFromActionRow:s,propertyActions:i,parentName:l,propertyName:c})=>{const{formatMessage:d}=(0,Z.Z)(),{modifiedData:p,onChangeParentCheckbox:u,onChangeSimpleCheckbox:f}=(0,H.$_)(),[x,$]=(0,e.useState)(null),N=T=>{$(h=>h===T?null:T)},I=(0,e.useMemo)(()=>x?t.find(({value:T})=>T===x):null,[x,t]);return e.createElement(_t,null,e.createElement(nn,null),t.map(({label:T,value:h,required:k,children:D},B)=>{const se=B+1<t.length,U=Array.isArray(D),_=x===h;return e.createElement(en,{key:h,isVisible:se},e.createElement(qt,null,e.createElement(Jt,{color:"primary200"}),e.createElement(b.k,{style:{flex:1}},e.createElement(tn,{level:r,isActive:_,isCollapsable:U},e.createElement(rt,{alignItems:"center",isCollapsable:U,...U&&{onClick:()=>N(h),"aria-expanded":_,onKeyDown:({key:V})=>(V==="Enter"||V===" ")&&N(h),tabIndex:0,role:"button"},title:T},e.createElement(Y.Z,{ellipsis:!0},ue()(T)),k&&e.createElement(pt,null),e.createElement(We,{$isActive:_}))),e.createElement(b.k,{style:{flex:1}},i.map(({actionId:V,label:ye,isActionRelatedToCurrentProperty:Ie})=>{if(!Ie)return e.createElement(Ne,{key:V});const ae=[...s.split(".."),V,"properties",c,...l.split(".."),h],Ee=v()(p,ae,!1);if(!D)return e.createElement(gt,{key:ye,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:n,name:ae.join(".."),"aria-label":d({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${T} ${ye}`}),onValueChange:De=>{f({target:{name:ae.join(".."),value:De}})},value:Ee}));const{hasAllActionsSelected:Ke,hasSomeActionsSelected:$e}=Oe(Ee);return e.createElement(gt,{key:ye,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{key:ye,disabled:n,name:ae.join(".."),"aria-label":d({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${T} ${ye}`}),onValueChange:De=>{u({target:{name:ae.join(".."),value:De}})},value:Ke,indeterminate:$e}))})))),I&&_&&e.createElement(m.x,{paddingBottom:2},e.createElement(we,{isFormDisabled:n,parentName:`${l}..${h}`,pathToDataFromActionRow:s,propertyActions:i,propertyName:c,recursiveLevel:r+1,childrenForm:I.children})))}))};we.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 sn=(0,e.memo)(we);const on=t=>t.reduce((r,s)=>(s.isActionRelatedToCurrentProperty&&r.push(s.actionId),r),[]);var rn=(t,n,r,s,i)=>{const c=on(t).reduce((d,p)=>{const u=[...r.split(".."),p,"properties",s,i],f=v()(n,u,!1);return d[p]=f,d},{});return Oe(c)};const ft=(0,g.ZP)(b.k)`
|
|
160
160
|
width: ${de};
|
|
161
161
|
position: relative;
|
|
162
162
|
`,an=(0,g.ZP)(b.k)`
|
|
@@ -173,32 +173,32 @@
|
|
|
173
173
|
}
|
|
174
174
|
`}
|
|
175
175
|
${({isActive:t,theme:n})=>t&&Ve(n)};
|
|
176
|
-
`,Qe=({childrenForm:t,label:n,isFormDisabled:r,name:s,required:i,pathToData:l,propertyActions:
|
|
176
|
+
`,Qe=({childrenForm:t,label:n,isFormDisabled:r,name:s,required:i,pathToData:l,propertyActions:c,propertyName:d,isOdd:p})=>{const{formatMessage:u}=(0,Z.Z)(),[f,x]=(0,e.useState)(null),{modifiedData:$,onChangeCollectionTypeLeftActionRowCheckbox:N,onChangeParentCheckbox:I,onChangeSimpleCheckbox:T}=(0,H.$_)(),h=f===s,k=(0,e.useMemo)(()=>Array.isArray(t)?t:[],[t]),D=k.length>0,B=(0,e.useCallback)(()=>{D&&x(V=>V===s?null:s)},[D,s]),se=({target:{value:V}})=>{N(l,d,s,V)},{hasAllActionsSelected:U,hasSomeActionsSelected:_}=(0,e.useMemo)(()=>rn(c,$,l,d,s),[c,$,l,d,s]);return e.createElement(e.Fragment,null,e.createElement(an,{alignItems:"center",isCollapsable:D,isActive:h,background:p?"neutral100":"neutral0"},e.createElement(b.k,null,e.createElement(at,{onChange:se,onClick:B,isCollapsable:D,isFormDisabled:r,label:n,someChecked:_,value:U,isActive:h},i&&e.createElement(pt,null),e.createElement(We,{$isActive:h})),e.createElement(b.k,null,c.map(({label:V,isActionRelatedToCurrentProperty:ye,actionId:Ie})=>{if(!ye)return e.createElement(Ne,{key:V});const ae=[...l.split(".."),Ie,"properties",d,s];if(!D){const De=v()($,ae,!1);return e.createElement(ft,{key:Ie,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:r,name:ae.join(".."),"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${V}`}),onValueChange:ns=>{T({target:{name:ae.join(".."),value:ns}})},value:De}))}const Ee=v()($,ae,{}),{hasAllActionsSelected:Ke,hasSomeActionsSelected:$e}=Oe(Ee);return e.createElement(ft,{key:V,justifyContent:"center",alignItems:"center"},e.createElement(G.C,{disabled:r,name:ae.join(".."),onValueChange:De=>{I({target:{name:ae.join(".."),value:De}})},"aria-label":u({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${V}`}),value:Ke,indeterminate:$e}))})))),h&&e.createElement(sn,{childrenForm:k,isFormDisabled:r,parentName:s,pathToDataFromActionRow:l,propertyName:d,propertyActions:c,recursiveLevel:0}))};Qe.defaultProps={childrenForm:[],required:!1},Qe.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 ln=(0,e.memo)(Qe);const yt=(0,g.ZP)(b.k)`
|
|
177
177
|
width: ${de};
|
|
178
178
|
flex-shrink: 0;
|
|
179
|
-
`,
|
|
180
|
-
width: ${
|
|
179
|
+
`,cn=(0,g.ZP)(b.k)`
|
|
180
|
+
width: ${me};
|
|
181
181
|
height: ${Ae};
|
|
182
182
|
flex-shrink: 0;
|
|
183
|
-
`,
|
|
183
|
+
`,ht=({headers:t,label:n})=>{const{formatMessage:r}=(0,Z.Z)(),s=r({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:n});return e.createElement(b.k,null,e.createElement(cn,{alignItems:"center",paddingLeft:6},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},s)),t.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(yt,{justifyContent:"center",key:i.label},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},r({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(yt,{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,un=(t,n)=>t.map(r=>{const s=Array.isArray(r.applyToProperties)&&r.applyToProperties.indexOf(n)!==-1&&r.isDisplayed;return{label:r.label,actionId:r.actionId,isActionRelatedToCurrentProperty:s}});const mn=g.ZP.div`
|
|
184
184
|
display: inline-flex;
|
|
185
185
|
flex-direction: column;
|
|
186
186
|
min-width: 0;
|
|
187
|
-
`,Ct=({availableActions:t,childrenForm:n,isFormDisabled:r,label:s,pathToData:i,propertyName:l})=>{const
|
|
187
|
+
`,Ct=({availableActions:t,childrenForm:n,isFormDisabled:r,label:s,pathToData:i,propertyName:l})=>{const c=(0,e.useMemo)(()=>un(t,l),[t,l]);return e.createElement(mn,null,e.createElement(dn,{label:s,headers:c}),e.createElement(m.x,null,n.map(({children:d,label:p,value:u,required:f},x)=>e.createElement(ln,{childrenForm:d,key:u,label:p,isFormDisabled:r,name:u,required:f,propertyActions:c,pathToData:i,propertyName:l,isOdd:x%2===0}))))};Ct.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 pn=Ct;const gn=g.ZP.div`
|
|
188
188
|
flex-direction: column;
|
|
189
189
|
display: inline-flex;
|
|
190
190
|
min-width: 100%;
|
|
191
191
|
${({theme:t,isActive:n})=>n&&`border: 1px solid ${t.colors.primary600};`}
|
|
192
|
-
`,vt=({allActions:t,contentTypeName:n,label:r,index:s,isActive:i,isFormDisabled:l,onClickToggleCollapse:
|
|
192
|
+
`,vt=({allActions:t,contentTypeName:n,label:r,index:s,isActive:i,isFormDisabled:l,onClickToggleCollapse:c,pathToData:d,properties:p})=>{const u=(0,e.useCallback)(()=>{c(n)},[n,c]),f=(0,e.useMemo)(()=>Xt(t,n),[t,n]);return e.createElement(gn,{isActive:i},e.createElement(zt,{availableActions:f,isActive:i,isGrey:s%2===0,isFormDisabled:l,label:r,onClickToggle:u,pathToData:d}),i&&p.map(({label:x,value:$,children:N})=>e.createElement(pn,{availableActions:f,childrenForm:N,isFormDisabled:l,label:x,pathToData:d,propertyName:$,key:$})))};vt.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 fn=vt;const Je=({actions:t,isFormDisabled:n,pathToData:r,subjects:s})=>{const[i,l]=(0,e.useState)(null),c=d=>{l(i===d?null:d)};return s.map(({uid:d,label:p,properties:u},f)=>e.createElement(fn,{allActions:t,key:d,contentTypeName:d,label:p,isActive:i===d,isFormDisabled:n,index:f,onClickToggleCollapse:c,pathToData:`${r}..${d}`,properties:u}))};Je.defaultProps={actions:[],subjects:[]},Je.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 yn=(0,e.memo)(Je),hn=t=>t.filter(({subjects:n})=>n&&n.length);const Cn=t=>t.map(({actionId:n})=>n),vn=(t,n)=>t.reduce((r,s)=>(Object.keys(n).forEach(i=>{const l=v()(n,[i,s],{}),c={[i]:ze(l)};r[s]?r[s]={...r[s],...c}:r[s]=c}),r),{});var En=(t,n)=>{const r=Cn(t),s=vn(r,n);return Object.keys(s).reduce((l,c)=>(l[c]=Oe(s[c]),l),{})};const bn=(0,g.ZP)(b.k)`
|
|
193
193
|
width: ${de};
|
|
194
194
|
flex-shrink: 0;
|
|
195
|
-
`,qe=({actions:t,isFormDisabled:n,kind:r})=>{const{formatMessage:s}=(0,Z.Z)(),{modifiedData:i,onChangeCollectionTypeGlobalActionCheckbox:l}=(0,H.$_)(),
|
|
195
|
+
`,qe=({actions:t,isFormDisabled:n,kind:r})=>{const{formatMessage:s}=(0,Z.Z)(),{modifiedData:i,onChangeCollectionTypeGlobalActionCheckbox:l}=(0,H.$_)(),c=(0,e.useMemo)(()=>hn(t),[t]),d=(0,e.useMemo)(()=>En(c,i[r]),[i,c,r]);return e.createElement(m.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:me}},e.createElement(b.k,{gap:0},c.map(({label:p,actionId:u})=>e.createElement(bn,{direction:"column",alignItems:"center",justifyContent:"center",key:u,gap:3},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral500"},s({id:`Settings.roles.form.permissions.${p.toLowerCase()}`,defaultMessage:p})),e.createElement(G.C,{disabled:n,onValueChange:f=>{l(r,u,f)},name:u,"aria-label":s({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:s({id:`Settings.roles.form.permissions.${p.toLowerCase()}`,defaultMessage:p})}),value:v()(d,[u,"hasAllActionsSelected"],!1),indeterminate:v()(d,[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 xn=(0,e.memo)(qe);const Rn=(0,g.ZP)(m.x)`
|
|
196
196
|
overflow-x: auto;
|
|
197
|
-
`,Et=({isFormDisabled:t,kind:n,layout:{actions:r,subjects:s}})=>{const i=F()([...s],"label");return e.createElement(Rn,{background:"neutral0"},e.createElement(xn,{actions:r,kind:n,isFormDisabled:t}),e.createElement(
|
|
197
|
+
`,Et=({isFormDisabled:t,kind:n,layout:{actions:r,subjects:s}})=>{const i=F()([...s],"label");return e.createElement(Rn,{background:"neutral0"},e.createElement(xn,{actions:r,kind:n,isFormDisabled:t}),e.createElement(yn,{actions:r,isFormDisabled:t,pathToData:n,subjects:i}))};Et.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 bt=(0,e.memo)(Et),Pn=o(76402);const xt=({children:t,value:n})=>e.createElement(Pn.$l.Provider,{value:n},t);xt.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 An=xt,Tn=o(9435),Sn=o(9379),Mn=o(79624),Rt=o(31014),On=o(10710),$n=o(97037),Dn=(t,n,r)=>t.map(s=>{const i=[...r,s.action,"properties","enabled"],l=v()(n,i,!1),c=v()(n,[...r,s.action,"conditions"],{}),d=je(c).some(p=>p);return{...s,isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:d,label:s.displayName,actionId:s.action,pathToConditionsObject:[...r,s.action]}}),Ln=t=>{const n=Object.entries(t).reduce((s,i)=>{const[l,{conditions:c}]=i;return s[l]=c,s},{});return je(n).some(s=>s)};const jn=g.ZP.div`
|
|
198
198
|
flex: 1;
|
|
199
199
|
align-self: center;
|
|
200
200
|
border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
|
|
201
|
-
`,
|
|
201
|
+
`,In=g.ZP.div`
|
|
202
202
|
position: relative;
|
|
203
203
|
word-break: keep-all;
|
|
204
204
|
${({hasConditions:t,disabled:n,theme:r})=>t&&`
|
|
@@ -213,7 +213,7 @@
|
|
|
213
213
|
background: ${n?r.colors.neutral100:r.colors.primary600};
|
|
214
214
|
}
|
|
215
215
|
`}
|
|
216
|
-
`,Pt=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=(0,H.$_)(),{formatMessage:f}=(0,Z.Z)(),x=v()(c,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=ze(x[se]),B),{}),[x]),{hasAllActionsSelected:N,hasSomeActionsSelected:k}=Oe($),T=()=>{d(B=>!B)},y=()=>{d(!1)},I=Dn(s,c,i),D=Ln(v()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(w.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:k,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},I.map(({checkboxName:B,value:se,action:U,displayName:_,hasConditions:V})=>e.createElement($n.P,{col:3,key:U},e.createElement(kn,{disabled:n,hasConditions:V},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:fe=>{u({target:{name:B,value:fe}})},value:se},_))))),e.createElement(ie,{hasConditions:D,onClick:T}))),l&&e.createElement(le,{headerBreadCrumbs:[t,r],actions:I,isFormDisabled:n,onClosed:y,onToggle:T}))};Pt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var In=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{d(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:ce()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:N})=>e.createElement(In,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...c,N]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var Bn=_e;const At=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=d=>{i(d===s?null:d)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:d,categoryId:c,childrenForm:p},u)=>e.createElement(Bn,{key:d,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:u%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};At.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().arrayOf(a().shape({category:a().string.isRequired,categoryId:a().string.isRequired,childrenForm:a().arrayOf(a().shape({actions:a().array.isRequired})).isRequired}).isRequired).isRequired};var Tt=At,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),ge=o.n(Nn),St=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Mt=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),Ot=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:Ot(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:d})=>d===i);if(l){const d=v()(r,["properties",l.value],[]),c=Ot(l,d);s.properties[i]=c}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var $t=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const d=l.subjects,c=Vn(t,d);if(S()(c))return i;const p=Object.keys(c).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,T=c[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),y=St(s,x,f),I=Mt(r,v()(y,"conditions",[]));if(S()($)||T)return ge()(u,[f,x],{properties:{enabled:y!==void 0},conditions:I}),u;const D=Wn($,c[f],y);return ge()(u,[f,x],{...D,conditions:I}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=St(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Mt(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Dt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const d=Un(l,n,r);return s[i]=d,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(pe()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(pe()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(d,"category")},p={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(c.plugins,r,n),settings:Dt(c.settings,r,n)};return{initialData:p,modifiedData:p,layouts:c}},Gn=o(99381),et=o.n(Gn);const kt=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!A()(s,"conditions"))return{...n,[r]:kt(s)};if(Te()(s)&&A()(s,"conditions")&&!je(Q()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=kt;const It=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Te()(l)?{...s,[i]:It(l,n,i==="fields")}:(s[i]=n,s)},{});var He=It;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,J.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(v()(t,d)).forEach(c=>{const p=v()(t,[...d,c,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}ge()(r,[...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 p=s.split(".."),u=v()(c,p,{});Object.keys(u).forEach(f=>{if(A()(u[f],`properties.${i}`)){const x=v()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Te()(x))ge()(c,$,d);else{const N=He(x,d);ge()(c,$,N)}}}),d||(c=tt(c)),ge()(r,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;ge()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);ge()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),ge()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=et()(t.modifiedData);const c=v()(d,l,{}),p=He(c,i);ge()(d,l,p),i||(d=tt(d)),ge()(r,["modifiedData"],d);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const nt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),wn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},Xn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=wn(l);return i.push(c),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=Xn(r);return[...n,...s]},[]);const Zt=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Te()(l)?[...r,...Zt(l,`${n}${i}.`)]:(l&&!Te()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[d,c]=l;return i.properties[d]=Zt(c),i},{action:t,subject:n,conditions:nt(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:nt(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,d]=i;if(!je(d).some(u=>u))return s;if(!d?.properties?.enabled){const u=Qn(l,t,d);return[...s,u]}if(!d.properties.enabled)return s;const p=Jn(l,t,d);return s.push(p),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,d=qn(i,l);return[...r,...d]},[]),_n=t=>{const n=Bt(t.plugins),r=Bt(t.settings),s=Ft(t.collectionTypes),i=Ft(t.singleTypes);return[...n,...r,...s,...i]},es=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:d},c]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const k=(0,O.e5)(i.collectionTypes,d.collectionTypes),T=(0,O.e5)(i.singleTypes,d.singleTypes),y={...k,...T};let I;return S()(y)?I=!1:I=Object.values(y).some(D=>Object.values(D).some(B=>A()(B,"conditions"))),{permissionsToSend:_n(d),didUpdateConditions:I}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(k,T,y,I)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:k,propertyName:T,rowName:y,value:I})},f=(k,T,y)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:k,actionId:T,value:y})},x=k=>{c({type:"ON_CHANGE_CONDITIONS",conditions:k})},$=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:k,value:T})},[]),N=(0,e.useCallback)(({target:{name:k,value:T}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:k,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(C.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,es.map(k=>e.createElement(R.O,{key:k.id},p({id:k.labelId,defaultMessage:k.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(st)},87056:function(K,L,o){"use strict";o.r(L),o.d(L,{default:function(){return w}});var e=o(32735),C=o(45509),R=o(15062),E=o(53038),O=o(30305),P=o(27649),A=o(82055),h=o(87933),S=o(41415),W=o(17e3),a=o(72850),Z=o(29439),m=o(92802),M=o(67879),F=o(64499),g=o(86409),b=o(91720),Y=o(1283),X=o(49372),oe=o(15335),ee=o(5803),v=o(10369),me=o(33475),Q=o(60216),H=o.n(Q);const te=({disabled:re,role:z,values:j,errors:J,onChange:he,onBlur:pe})=>{const{formatMessage:q}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(h.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(h.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(X.Z,{fontWeight:"bold"},z?z.name:q({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(X.Z,{textColor:"neutral500",variant:"pi"},z?z.description:q({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},q({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:z.usersCount}))),e.createElement(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(v.o,{disabled:re,name:"name",error:J.name&&q({id:J.name}),label:q({id:"global.name",defaultMessage:"Name"}),onChange:he,onBlur:pe,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(me.g,{disabled:re,label:q({id:"global.description",defaultMessage:"Description"}),id:"description",error:J.name&&q({id:J.name}),onChange:he,onBlur:pe},j.description||"")))))};te.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},te.propTypes={disabled:H().bool,errors:H().object.isRequired,onBlur:H().func.isRequired,onChange:H().func.isRequired,role:H().object,values:H().object};var Ce=te,be=o(24346),ie=be.Ry().shape({name:be.Z_().required(C.I0.required)}),Se=()=>{const re=(0,C.lm)(),{formatMessage:z}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:J}=(0,C.kY)(),[he,pe]=(0,e.useState)(!1),q=(0,e.useRef)(),{lockApp:ce,unlockApp:Ie}=(0,C.o1)(),{trackUsage:Be}=(0,C.rS)(),{formatAPIError:ve}=(0,C.So)(),{isLoading:Ze,data:Le}=(0,b.d)(j,{cacheTime:0}),{roles:[ye={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:Ue,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ne=async de=>{try{ce(),pe(!0);const{permissionsToSend:ue,didUpdateConditions:Ae}=q.current.getPermissions();await J(`/admin/roles/${j}`,de),ye.code!=="strapi-super-admin"&&(await J(`/admin/roles/${j}/permissions`,{permissions:ue}),Ae&&Be("didUpdateConditions")),q.current.setFormAfterSubmit(),await Fe(),re({type:"success",message:{id:"notification.success.saved"}})}catch(ue){re({type:"warning",message:ve(ue)})}finally{pe(!1),Ie()}},le=!Me&&ye.code==="strapi-super-admin";return e.createElement(P.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:ye.name,description:ye.description},onSubmit:ne,validationSchema:ie,validateOnChange:!1},({handleSubmit:de,values:ue,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:de},e.createElement(A.T,{primaryAction:e.createElement(h.k,{gap:2},e.createElement(S.z,{disabled:ye.code==="strapi-super-admin",onClick:de,loading:he,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(C.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},z({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(h.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:le,errors:Ae,values:ue,onChange:ot,onBlur:Ne,role:ye}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(Y.Z,{isFormDisabled:le,permissions:Ue,ref:q,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},w=()=>{const re=(0,R.v9)(O._),{isLoading:z,allowedActions:{canRead:j,canUpdate:J}}=(0,C.ss)({read:re.settings.roles.read,update:re.settings.roles.update});return z?e.createElement(C.dO,null):!j&&!J?e.createElement(E.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(K,L,o){"use strict";o.d(L,{d:function(){return R}});var e=o(45509),C=o(20108);const R=(E,O={})=>{const{get:P}=(0,e.kY)(),{data:A,error:h,isError:S,isLoading:W}=(0,C.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await P("/admin/permissions",{params:{role:E}});return a},O);return{data:A,error:h,isError:S,isLoading:W}}},84802:function(K){function L(o,e,C,R){for(var E=-1,O=o==null?0:o.length;++E<O;){var P=o[E];e(R,P,C(P),o)}return R}K.exports=L},62435:function(K,L,o){var e=o(56671);function C(R,E,O,P){return e(R,function(A,h,S){E(P,A,O(A),S)}),P}K.exports=C},85580:function(K,L,o){var e=o(84802),C=o(62435),R=o(88904),E=o(77236);function O(P,A){return function(h,S){var W=E(h)?e:C,a=A?A():{};return W(h,P,R(S,2),a)}}K.exports=O},72091:function(K,L,o){var e=o(40314),C=1/0;function R(E){var O=E==null?0:E.length;return O?e(E,C):[]}K.exports=R},81346:function(K,L,o){var e=o(40999),C=o(85580),R=Object.prototype,E=R.hasOwnProperty,O=C(function(P,A,h){E.call(P,h)?P[h].push(A):e(P,h,[A])});K.exports=O},83828:function(K,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return W}});var e=o(74512),C=o(32735),R=o(8471),E=o(91045),O=o(74971),P=o(49372),A=o(87933),h=o(72850);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,W=(0,R.ZP)(P.Z)``,a=(0,R.ZP)(h.x)`
|
|
216
|
+
`,Pt=({categoryName:t,isFormDisabled:n,subCategoryName:r,actions:s,pathToData:i})=>{const[l,c]=(0,e.useState)(!1),{modifiedData:d,onChangeParentCheckbox:p,onChangeSimpleCheckbox:u}=(0,H.$_)(),{formatMessage:f}=(0,Z.Z)(),x=v()(d,i,{}),$=(0,e.useMemo)(()=>Object.keys(x).reduce((B,se)=>(B[se]=ze(x[se]),B),{}),[x]),{hasAllActionsSelected:N,hasSomeActionsSelected:I}=Oe($),T=()=>{c(B=>!B)},h=()=>{c(!1)},k=Dn(s,d,i),D=Ln(v()(d,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(m.x,null,e.createElement(b.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(m.x,{paddingRight:4},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},r)),e.createElement(jn,null),e.createElement(m.x,{paddingLeft:4},e.createElement(Rt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:I,value:N},f({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(b.k,{paddingTop:6,paddingBottom:6},e.createElement(On.r,{gap:2,style:{flex:1}},k.map(({checkboxName:B,value:se,action:U,displayName:_,hasConditions:V})=>e.createElement($n.P,{col:3,key:U},e.createElement(In,{disabled:n,hasConditions:V},e.createElement(Rt.X,{name:B,disabled:n,onValueChange:ye=>{u({target:{name:B,value:ye}})},value:se},_))))),e.createElement(ie,{hasConditions:D,onClick:T}))),l&&e.createElement(ce,{headerBreadCrumbs:[t,r],actions:k,isFormDisabled:n,onClosed:h,onToggle:T}))};Pt.propTypes={actions:a().array.isRequired,categoryName:a().string.isRequired,isFormDisabled:a().bool.isRequired,subCategoryName:a().string.isRequired,pathToData:a().array.isRequired};var kn=Pt;const _e=({childrenForm:t,kind:n,name:r,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:d})=>{const{formatMessage:p}=(0,Z.Z)(),u=()=>{c(r)},f=(0,e.useMemo)(()=>r.split("::").pop(),[r]);return e.createElement(Tn.U,{expanded:s,onToggle:u,id:`accordion-${r}`,variant:l?"primary":"secondary"},e.createElement(Sn.B,{title:ue()(f),description:`${p({id:"Settings.permissions.category"},{category:f})} ${n==="plugins"?"plugin":n}`}),e.createElement(Mn.v,null,e.createElement(m.x,{padding:6},t.map(({actions:x,subCategoryName:$,subCategoryId:N})=>e.createElement(kn,{key:$,actions:x,categoryName:f,isFormDisabled:i,subCategoryName:$,pathToData:[...d,N]})))))};_e.defaultProps={},_e.propTypes={childrenForm:a().array.isRequired,isOpen:a().bool.isRequired,isFormDisabled:a().bool.isRequired,isWhite:a().bool.isRequired,kind:a().string.isRequired,name:a().string.isRequired,onOpenCategory:a().func.isRequired,pathToData:a().array.isRequired};var Bn=_e;const At=({isFormDisabled:t,kind:n,layout:r})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(m.x,{padding:6,background:"neutral0"},r.map(({category:c,categoryId:d,childrenForm:p},u)=>e.createElement(Bn,{key:c,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===c,isWhite:u%2===1,name:c,onOpenCategory:l,pathToData:[n,d]})))};At.propTypes={isFormDisabled:a().bool.isRequired,kind:a().string.isRequired,layout:a().arrayOf(a().shape({category:a().string.isRequired,categoryId:a().string.isRequired,childrenForm:a().arrayOf(a().shape({actions:a().array.isRequired})).isRequired}).isRequired).isRequired};var Tt=At,Zn=o(86349),Fn=o.n(Zn),Nn=o(3040),fe=o.n(Nn),St=(t,n,r)=>t.find(s=>s.action===n&&s.subject===r);const Mt=(t,n=[])=>t.reduce((r,s)=>(r[s.id]=n.indexOf(s.id)!==-1,r),{}),Ot=({children:t},n,r="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:Ot(i,n,`${r}${i.value}.`)};const l=n.indexOf(`${r}${i.value}`)!==-1;return s[i.value]=l,s},{}),Wn=(t,n,r)=>t.reduce((s,i)=>{const l=n.properties.find(({value:c})=>c===i);if(l){const c=v()(r,["properties",l.value],[]),d=Ot(l,c);s.properties[i]=d}return s},{properties:{}}),Vn=(t,n)=>n.reduce((r,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(r[s]=i),r},{});var $t=({subjects:t},n,r,s=[])=>n.reduce((i,l)=>{const c=l.subjects,d=Vn(t,c);if(S()(d))return i;const p=Object.keys(d).reduce((u,f)=>{const{actionId:x,applyToProperties:$}=l,T=d[f].properties.map(({value:B})=>B).every(B=>($||[]).indexOf(B)===-1),h=St(s,x,f),k=Mt(r,v()(h,"conditions",[]));if(S()($)||T)return fe()(u,[f,x],{properties:{enabled:h!==void 0},conditions:k}),u;const D=Wn($,d[f],h);return fe()(u,[f,x],{...D,conditions:k}),u},{});return Fn()(i,p)},{});const Kn=(t,n,r)=>t.reduce((s,i)=>{const l=St(r,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Mt(n,l?.conditions??[])},s},{}),Un=(t,n,r)=>t.reduce((s,i)=>(s[i.subCategoryId]=Kn(i.actions,n,r),s),{});var Dt=(t,n,r=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const c=Un(l,n,r);return s[i]=c,s},{});const Lt=t=>t.split(" ").join("-");var jt=(t,n)=>Object.entries(ge()(t,n)).map(([r,s])=>({category:r,categoryId:Lt(r),childrenForm:Object.entries(ge()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Lt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:r,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=t,d={collectionTypes:s,singleTypes:i,plugins:jt(l,"plugin"),settings:jt(c,"category")},p={collectionTypes:$t(s,s.actions||[],r,n),singleTypes:$t(i,i.actions||[],r,n),plugins:Dt(d.plugins,r,n),settings:Dt(d.settings,r,n)};return{initialData:p,modifiedData:p,layouts:d}},Gn=o(99381),et=o.n(Gn);const It=t=>Object.keys(t).reduce((n,r)=>{const s=t[r];if(Te()(s)&&!A()(s,"conditions"))return{...n,[r]:It(s)};if(Te()(s)&&A()(s,"conditions")&&!je(Q()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,d)=>(c[d]=!1,c),{});return{...n,[r]:{...s,conditions:l}}}return n[r]=s,n},{});var tt=It;const kt=(t,n,r=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!r?(s[i]=l,s):Te()(l)?{...s,[i]:kt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=kt;const zn={initialData:{},modifiedData:{},layouts:{}};var Yn=(t,n)=>(0,J.ZP)(t,r=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,c=["modifiedData",s];Object.keys(v()(t,c)).forEach(d=>{const p=v()(t,[...c,d,i],void 0);if(p){let u=He(p,l);if(!l&&u.conditions){const f=He(u.conditions,!1);u={...u,conditions:f}}fe()(r,[...c,d,i],u)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=n;let d=et()(t.modifiedData);const p=s.split(".."),u=v()(d,p,{});Object.keys(u).forEach(f=>{if(A()(u[f],`properties.${i}`)){const x=v()(u,[f,"properties",i,l]),$=[...p,f,"properties",i,l];if(!Te()(x))fe()(d,$,c);else{const N=He(x,c);fe()(d,$,N)}}}),c||(d=tt(d)),fe()(r,"modifiedData",d);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;fe()(r,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=et()(t.modifiedData);fe()(s,[...n.keys.split("..")],n.value),n.value||(s=tt(s)),fe()(r,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let c=et()(t.modifiedData);const d=v()(c,l,{}),p=He(d,i);fe()(c,l,p),i||(c=tt(c)),fe()(r,["modifiedData"],c);break}case"RESET_FORM":{r.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{r.initialData=t.modifiedData;break}default:return r}});const nt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),Xn=t=>{const[n,{conditions:r}]=t;return{action:n,subject:null,conditions:nt(r),properties:{}}},wn=t=>Object.values(t).reduce((n,r)=>{const s=Object.entries(r).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const d=Xn(l);return i.push(d),i},[]);return[...n,...s]},[]);var Bt=t=>Object.values(t).reduce((n,r)=>{const s=wn(r);return[...n,...s]},[]);const Zt=(t,n="")=>Object.entries(t).reduce((r,s)=>{const[i,l]=s;return Te()(l)?[...r,...Zt(l,`${n}${i}.`)]:(l&&!Te()(l)&&r.push(`${n}${i}`),r)},[]),Qn=(t,n,{conditions:r,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,d]=l;return i.properties[c]=Zt(d),i},{action:t,subject:n,conditions:nt(r),properties:{}}),Jn=(t,n,{conditions:r})=>({action:t,subject:n,properties:{},conditions:nt(r)}),qn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,c]=i;if(!je(c).some(u=>u))return s;if(!c?.properties?.enabled){const u=Qn(l,t,c);return[...s,u]}if(!c.properties.enabled)return s;const p=Jn(l,t,c);return s.push(p),s},[]);var Ft=t=>Object.entries(t).reduce((r,s)=>{const[i,l]=s,c=qn(i,l);return[...r,...c]},[]),_n=t=>{const n=Bt(t.plugins),r=Bt(t.settings),s=Ft(t.collectionTypes),i=Ft(t.singleTypes);return[...n,...r,...s,...i]},es=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const st=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:r},s)=>{const[{initialData:i,layouts:l,modifiedData:c},d]=(0,e.useReducer)(Yn,zn,()=>Hn(t,r)),{formatMessage:p}=(0,Z.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,O.e5)(i.collectionTypes,c.collectionTypes),T=(0,O.e5)(i.singleTypes,c.singleTypes),h={...I,...T};let k;return S()(h)?k=!1:k=Object.values(h).some(D=>Object.values(D).some(B=>A()(B,"conditions"))),{permissionsToSend:_n(c),didUpdateConditions:k}},resetForm(){d({type:"RESET_FORM"})},setFormAfterSubmit(){d({type:"SET_FORM_AFTER_SUBMIT"})}}));const u=(I,T,h,k)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:T,rowName:h,value:k})},f=(I,T,h)=>{d({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:T,value:h})},x=I=>{d({type:"ON_CHANGE_CONDITIONS",conditions:I})},$=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:T})},[]),N=(0,e.useCallback)(({target:{name:I,value:T}})=>{d({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:T})},[]);return e.createElement(An,{value:{availableConditions:t.conditions,modifiedData:c,onChangeConditions:x,onChangeSimpleCheckbox:$,onChangeParentCheckbox:N,onChangeCollectionTypeLeftActionRowCheckbox:u,onChangeCollectionTypeGlobalActionCheckbox:f}},e.createElement(C.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,es.map(I=>e.createElement(R.O,{key:I.id},p({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(E.n,{style:{position:"relative"}},e.createElement(E.x,null,e.createElement(bt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(bt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(E.x,null,e.createElement(Tt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});st.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},st.propTypes={layout:a().object,isFormDisabled:a().bool.isRequired,permissions:a().array};var ts=(0,e.memo)(st)},87056:function(K,L,o){"use strict";o.r(L),o.d(L,{default:function(){return Y}});var e=o(32735),C=o(43806),R=o(15062),E=o(53038),O=o(30305),P=o(95162),A=o(64092),y=o(84642),S=o(91779),W=o(56932),a=o(77981),Z=o(70788),m=o(92802),M=o(67879),F=o(64499),g=o(86409),b=o(91720),G=o(1283),w=o(8365),oe=o(10710),ee=o(97037),v=o(2846),pe=o(15367),Q=o(60216),H=o.n(Q);const te=({disabled:re,role:X,values:j,errors:J,onChange:le,onBlur:ge})=>{const{formatMessage:q}=(0,M.Z)();return e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(y.k,{justifyContent:"space-between"},e.createElement(a.x,null,e.createElement(a.x,null,e.createElement(w.Z,{fontWeight:"bold"},X?X.name:q({id:"global.details",defaultMessage:"Details"}))),e.createElement(a.x,null,e.createElement(w.Z,{textColor:"neutral500",variant:"pi"},X?X.description:q({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},q({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:X.usersCount}))),e.createElement(oe.r,{gap:4},e.createElement(ee.P,{col:6},e.createElement(v.o,{disabled:re,name:"name",error:J.name&&q({id:J.name}),label:q({id:"global.name",defaultMessage:"Name"}),onChange:le,onBlur:ge,required:!0,value:j.name||""})),e.createElement(ee.P,{col:6},e.createElement(pe.g,{disabled:re,label:q({id:"global.description",defaultMessage:"Description"}),id:"description",error:J.name&&q({id:J.name}),onChange:le,onBlur:ge},j.description||"")))))};te.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},te.propTypes={disabled:H().bool,errors:H().object.isRequired,onBlur:H().func.isRequired,onChange:H().func.isRequired,role:H().object,values:H().object};var Ce=te,be=o(24346),ie=be.Ry().shape({name:be.Z_().required(C.I0.required)}),Se=()=>{const re=(0,C.lm)(),{formatMessage:X}=(0,M.Z)(),{params:{id:j}}=(0,E.$B)("/settings/roles/:id"),{put:J}=(0,C.kY)(),[le,ge]=(0,e.useState)(!1),q=(0,e.useRef)(),{lockApp:ue,unlockApp:ke}=(0,C.o1)(),{trackUsage:Be}=(0,C.rS)(),{formatAPIError:ve}=(0,C.So)(),{isLoading:Ze,data:Le}=(0,b.d)(j,{cacheTime:0}),{roles:[he={}],isLoading:Me,refetch:Fe}=(0,g.F)({id:j},{cacheTime:0}),{permissions:Ue,isLoading:Pe}=(0,F.V)({id:j},{cacheTime:0}),ne=async de=>{try{ue(),ge(!0);const{permissionsToSend:me,didUpdateConditions:Ae}=q.current.getPermissions();await J(`/admin/roles/${j}`,de),he.code!=="strapi-super-admin"&&(await J(`/admin/roles/${j}/permissions`,{permissions:me}),Ae&&Be("didUpdateConditions")),q.current.setFormAfterSubmit(),await Fe(),re({type:"success",message:{id:"notification.success.saved"}})}catch(me){re({type:"warning",message:ve(me)})}finally{ge(!1),ke()}},ce=!Me&&he.code==="strapi-super-admin";return e.createElement(P.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(m.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:ne,validationSchema:ie,validateOnChange:!1},({handleSubmit:de,values:me,errors:Ae,handleChange:ot,handleBlur:Ne})=>e.createElement("form",{onSubmit:de},e.createElement(A.T,{primaryAction:e.createElement(y.k,{gap:2},e.createElement(S.z,{disabled:he.code==="strapi-super-admin",onClick:de,loading:le,size:"L"},X({id:"global.save",defaultMessage:"Save"}))),title:X({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:X({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(C.rU,{startIcon:e.createElement(Z.Z,null),to:"/settings/roles"},X({id:"global.back",defaultMessage:"Back"}))}),e.createElement(W.D,null,e.createElement(y.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Ce,{isLoading:Me||Pe,disabled:ce,errors:Ae,values:me,onChange:ot,onBlur:Ne,role:he}),!Ze&&!Me&&!Pe?e.createElement(a.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(G.Z,{isFormDisabled:ce,permissions:Ue,ref:q,layout:Le})):e.createElement(a.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},Y=()=>{const re=(0,R.v9)(O._),{isLoading:X,allowedActions:{canRead:j,canUpdate:J}}=(0,C.ss)({read:re.settings.roles.read,update:re.settings.roles.update});return X?e.createElement(C.dO,null):!j&&!J?e.createElement(E.l_,{to:"/"}):e.createElement(Se,null)}},91720:function(K,L,o){"use strict";o.d(L,{d:function(){return R}});var e=o(43806),C=o(20108);const R=(E,O={})=>{const{get:P}=(0,e.kY)(),{data:A,error:y,isError:S,isLoading:W}=(0,C.useQuery)(["permissions",E],async()=>{const{data:{data:a}}=await P("/admin/permissions",{params:{role:E}});return a},O);return{data:A,error:y,isError:S,isLoading:W}}},84802:function(K){function L(o,e,C,R){for(var E=-1,O=o==null?0:o.length;++E<O;){var P=o[E];e(R,P,C(P),o)}return R}K.exports=L},62435:function(K,L,o){var e=o(56671);function C(R,E,O,P){return e(R,function(A,y,S){E(P,A,O(A),S)}),P}K.exports=C},85580:function(K,L,o){var e=o(84802),C=o(62435),R=o(88904),E=o(77236);function O(P,A){return function(y,S){var W=E(y)?e:C,a=A?A():{};return W(y,P,R(S,2),a)}}K.exports=O},72091:function(K,L,o){var e=o(40314),C=1/0;function R(E){var O=E==null?0:E.length;return O?e(E,C):[]}K.exports=R},81346:function(K,L,o){var e=o(40999),C=o(85580),R=Object.prototype,E=R.hasOwnProperty,O=C(function(P,A,y){E.call(P,y)?P[y].push(A):e(P,y,[A])});K.exports=O},9435:function(K,L,o){"use strict";o.d(L,{U:function(){return Z},y:function(){return W}});var e=o(74512),C=o(32735),R=o(8471),E=o(85612),O=o(37808),P=o(8365),A=o(84642),y=o(77981);const S=({theme:m,expanded:M,variant:F,disabled:g,error:b})=>b?`1px solid ${m.colors.danger600} !important`:g?`1px solid ${m.colors.neutral150}`:M?`1px solid ${m.colors.primary600}`:F==="primary"?`1px solid ${m.colors.neutral0}`:`1px solid ${m.colors.neutral100}`,W=(0,R.ZP)(P.Z)``,a=(0,R.ZP)(y.x)`
|
|
217
217
|
border: ${S};
|
|
218
218
|
|
|
219
219
|
&:hover:not([aria-disabled='true']) {
|
|
@@ -235,7 +235,7 @@
|
|
|
235
235
|
background: ${({theme:m})=>m.colors.primary200};
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
|
-
`,Z=({children:m,disabled:M=!1,error:F,expanded:g=!1,hasErrorMessage:b=!0,id:
|
|
238
|
+
`,Z=({children:m,disabled:M=!1,error:F,expanded:g=!1,hasErrorMessage:b=!0,id:G,onToggle:w,toggle:oe,size:ee="M",variant:v="primary",shadow:pe})=>{const Q=(0,O.M)(G),H=C.useMemo(()=>({expanded:g,onToggle:w,toggle:oe,id:Q,size:ee,variant:v,disabled:M}),[M,g,Q,w,ee,oe,v]);return(0,e.jsxs)(E.S.Provider,{value:H,children:[(0,e.jsx)(a,{"data-strapi-expanded":g,disabled:M,"aria-disabled":M,expanded:g,hasRadius:!0,variant:v,error:F,shadow:pe,children:m}),F&&b&&(0,e.jsx)(y.x,{paddingTop:1,children:(0,e.jsx)(P.Z,{variant:"pi",textColor:"danger600",children:F})})]})}},79624:function(K,L,o){"use strict";o.d(L,{v:function(){return E}});var e=o(74512),C=o(85612),R=o(77981);const E=({children:O,...P})=>{const{expanded:A,id:y}=(0,C.A)();if(!A)return null;const S=`accordion-content-${y}`,W=`accordion-label-${y}`,a=`accordion-desc-${y}`;return(0,e.jsx)(R.x,{role:"region",id:S,"aria-labelledby":W,"aria-describedby":a,...P,children:O})}},85612:function(K,L,o){"use strict";o.d(L,{A:function(){return R},S:function(){return C}});var e=o(32735);const C=(0,e.createContext)({disabled:!1,expanded:!1,id:"",size:"M",variant:"primary"}),R=()=>(0,e.useContext)(C)},9379:function(K,L,o){"use strict";o.d(L,{B:function(){return m}});var e=o(74512),C=o(91917),R=o(8471),E=o(9435),O=o(85612);const P=({expanded:M,disabled:F,variant:g})=>{let b="neutral100";return M?b="primary100":F?b="neutral150":g==="primary"&&(b="neutral0"),b};var A=o(43743),y=o(18129),S=o(84642),W=o(8365);const a=(0,R.ZP)(A.A)`
|
|
239
239
|
text-align: left;
|
|
240
240
|
|
|
241
241
|
// necessary to make the ellipsis prop work on the title
|
|
@@ -262,6 +262,6 @@
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
}
|
|
265
|
-
`,m=({title:M,description:F,as:g="span",togglePosition:b="right",action:
|
|
265
|
+
`,m=({title:M,description:F,as:g="span",togglePosition:b="right",action:G,...w})=>{const{onToggle:oe,toggle:ee,expanded:v,id:pe,size:Q,variant:H,disabled:te}=(0,O.A)(),Ce=`accordion-content-${pe}`,be=`accordion-label-${pe}`,xe=`accordion-desc-${pe}`,ie=Q==="M"?6:4,Re=Q==="M"?ie:ie-2,Se=P({expanded:v,disabled:te,variant:H}),Y={as:g,fontWeight:Q==="S"?"bold":void 0,id:be,textColor:v?"primary600":"neutral700",ellipsis:!0,variant:Q==="M"?"delta":void 0},re=v?"primary600":"neutral600",X=v?"primary200":"neutral200",j=Q==="M"?`${32/16}rem`:`${24/16}rem`,J=()=>{te||(ee&&!oe?(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'),ee()):oe&&oe())},le=(0,e.jsx)(S.k,{justifyContent:"center",borderRadius:"50%",height:j,width:j,transform:v?"rotate(180deg)":void 0,"data-strapi-dropdown":!0,"aria-hidden":!0,as:"span",background:X,cursor:te?"not-allowed":"pointer",onClick:J,shrink:0,children:(0,e.jsx)(y.J,{as:C.Z,width:Q==="M"?`${11/16}rem`:`${8/16}rem`,color:v?"primary600":"neutral600"})});return(0,e.jsx)(Z,{paddingBottom:Re,paddingLeft:ie,paddingRight:ie,paddingTop:Re,background:Se,expanded:v,size:Q,justifyContent:"space-between",cursor:te?"not-allowed":"",children:(0,e.jsxs)(S.k,{gap:3,flex:1,maxWidth:"100%",children:[b==="left"&&le,(0,e.jsx)(a,{onClick:J,"aria-disabled":te,"aria-expanded":v,"aria-controls":Ce,"aria-labelledby":be,"data-strapi-accordion-toggle":!0,expanded:v,type:"button",flex:1,minWidth:0,...w,children:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(E.y,{...Y,children:M}),F&&(0,e.jsx)(W.Z,{as:"p",id:xe,textColor:re,children:F})]})}),b==="right"&&(0,e.jsxs)(S.k,{gap:3,children:[le,G]}),b==="left"&&G]})})}},63057:function(K,L,o){"use strict";o.d(L,{Q:function(){return E}});var e=o(74512),C=o(8471),R=o(74323);const E=({options:P,...A})=>(0,e.jsx)(R.NU,{...A,children:P.map(y=>"children"in y?(0,e.jsx)(R.Ab,{label:y.label,values:y.children.map(S=>S.value.toString()),children:y.children.map(S=>(0,e.jsx)(O,{value:S.value,children:S.label},S.value))},y.label):(0,e.jsx)(R.ML,{value:y.value,children:y.label},y.value))}),O=(0,C.ZP)(R.ML)`
|
|
266
266
|
padding-left: ${({theme:P})=>P.spaces[7]};
|
|
267
267
|
`}}]);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{97108:function(B,i,e){e.d(i,{R:function(){return r}});var t=e(32735),a=e(43806),o=e(20108);function r(E={},d={}){const{id:n="",...u}=E,{get:g}=(0,a.kY)(),{data:s,isError:c,isLoading:f,refetch:y}=(0,o.useQuery)(["users",n,u],async()=>{const{data:{data:M}}=await g(`/admin/users/${n}`,{params:u});return M},d);return{users:t.useMemo(()=>n&&s?[s]:Array.isArray(s?.results)?s.results:[],[s,n]),pagination:t.useMemo(()=>s?.pagination??null,[s?.pagination]),isLoading:f,isError:c,refetch:y}}},28363:function(B,i,e){e.r(i),e.d(i,{default:function(){return re}});var t=e(32735),a=e(43806),o=e(15062),r=e(53038),E=e(30305),d=e(95162),n=e(64092),u=e(91779),g=e(56932),s=e(77981),c=e(84642),f=e(8365),y=e(10710),D=e(97037),M=e(40501),O=e(70788),I=e(92802),j=e(33795),x=e.n(j),N=e(9086),Y=e.n(N),U=e(88423),S=e.n(U),F=e(60216),H=e.n(F),V=e(67879),G=e(97108),v=e(9592),Q=e(90869),ee=e(47577),te=e(18703),ae=e(32720);const se=async(L,m)=>{const{put:C}=(0,a.tg)(),{data:T}=await C(`/admin/users/${L}`,m);return T.data};var ne=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12},autoComplete:"new-password"},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12},autoComplete:"new-password"}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];const b=["email","firstname","lastname","username","isActive","roles"],w=({canUpdate:L})=>{const{formatMessage:m}=(0,V.Z)(),{params:{id:C}}=(0,r.$B)("/settings/users/:id"),{push:T}=(0,r.k6)(),{setUserDisplayName:Z}=(0,a.L7)(),h=(0,a.lm)(),{lockApp:X,unlockApp:J}=(0,a.o1)(),k=(0,v.c)(ee.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE);(0,a.go)();const{users:[W],isLoading:le}=(0,G.R)({id:C},{cacheTime:0,onError(l){const{status:p}=l.response;p===403?(h({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),T("/")):h({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),ie=async(l,p)=>{X();try{const P=await se(C,Y()(l,"confirmPassword"));h({type:"success",message:m({id:"notification.success.saved",defaultMessage:"Saved"})});const R=a.I8.getUserInfo();if(C.toString()===R.id.toString()){a.I8.setUserInfo(P);const K=x()(l,"username")||(0,Q.Pp)(l.firstname,l.lastname);Z(K)}p.setValues(S()(l,b))}catch(P){const R=(0,Q.Iz)(P.response.data),K=Object.keys(R).reduce(($,A)=>($[A]=R[A].id,$),{});p.setErrors(K),h({type:"warning",message:x()(P,"response.data.error.message","notification.error")})}J()},q=le||!k,de=q?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},z=Object.keys(S()(W,b)).reduce((l,p)=>p==="roles"?(l[p]=(W?.roles||[]).map(({id:P})=>P),l):(l[p]=W?.[p],l),{}),ce=z.username||(0,Q.Pp)(z.firstname,z.lastname),_=m(de,{name:ce});return q?t.createElement(d.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:!0,startIcon:t.createElement(M.Z,null),type:"button",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,t.createElement(a.dO,null))):t.createElement(d.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(I.J9,{onSubmit:ie,initialValues:z,validateOnChange:!1,validationSchema:ae.YM},({errors:l,values:p,handleChange:P,isSubmitting:R,dirty:K})=>t.createElement(a.l0,null,t.createElement(n.T,{primaryAction:t.createElement(u.z,{disabled:R||!L?!0:!K,startIcon:t.createElement(M.Z,null),loading:R,type:"submit",size:"L"},m({id:"global.save",defaultMessage:"Save"})),title:_,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(O.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},m({id:"global.back",defaultMessage:"Back"}))}),t.createElement(g.D,null,W?.registrationToken&&t.createElement(s.x,{paddingBottom:6},t.createElement(k,{registrationToken:W.registrationToken})),t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.r,{gap:5},ne.map($=>$.map(A=>t.createElement(D.P,{key:A.name,...A.size},t.createElement(a.jm,{...A,disabled:!L,error:l[A.name],onChange:P,value:p[A.name]||""}))))))),t.createElement(s.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(c.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement(f.Z,{variant:"delta",as:"h2"},m({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.r,{gap:5},t.createElement(D.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!L,error:l.roles,onChange:P,value:p.roles}))))))))))};w.propTypes={canUpdate:H().bool.isRequired};var oe=w,re=()=>{const L=(0,a.lm)(),m=(0,o.v9)(E._),C=t.useMemo(()=>({read:m.settings.users.read,update:m.settings.users.update}),[m.settings.users]),{isLoading:T,allowedActions:{canRead:Z,canUpdate:h}}=(0,a.ss)(C),{state:X}=(0,r.TH)(),J=X?.from??"/";return(0,t.useEffect)(()=>{T||!Z&&!h&&L({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[T,Z,h,L]),T?t.createElement(a.dO,null):!Z&&!h?t.createElement(r.l_,{to:J}):t.createElement(oe,{canUpdate:h})}},84024:function(B,i,e){var t=e(32735),a=e(14763),o=e(43806),r=e(94958),E=e(60216),d=e.n(E),n=e(67879);const u=({children:g,target:s})=>{const c=(0,o.lm)(),{formatMessage:f}=(0,n.Z)(),{copy:y}=(0,o.VP)(),D=f({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),M=async()=>{await y(s)&&c({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(o.Y_,{endAction:t.createElement(a.h,{label:D,noBorder:!0,icon:t.createElement(r.Z,null),onClick:M}),title:s,titleEllipsis:!0,subtitle:g,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};u.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired},i.Z=u},47577:function(B,i,e){e.d(i,{A:function(){return n}});var t=e(32735),a=e(60216),o=e.n(a),r=e(67879),E=e(35231),d=e(84024);const n=({registrationToken:u})=>{const{formatMessage:g}=(0,r.Z)(),s=`${window.location.origin}${E.Z}auth/register?registrationToken=${u}`;return t.createElement(d.Z,{target:s},g({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:o().string}},18703:function(B,i,e){var t=e(32735),a=e(16773),o=e(40260),r=e(43806),E=e(75760),d=e(60216),n=e.n(d),u=e(67879),g=e(20108),s=e(8471);const c=(0,s.F4)`
|
|
2
|
+
from {
|
|
3
|
+
transform: rotate(0deg);
|
|
4
|
+
}
|
|
5
|
+
to {
|
|
6
|
+
transform: rotate(359deg);
|
|
7
|
+
}
|
|
8
|
+
`,f=s.ZP.div`
|
|
9
|
+
animation: ${c} 2s infinite linear;
|
|
10
|
+
`,y=()=>t.createElement(f,null,t.createElement(E.Z,null)),D=async()=>{const{get:O}=(0,r.tg)(),{data:I}=await O("/admin/roles");return I.data},M=({disabled:O,error:I,onChange:j,value:x})=>{const{status:N,data:Y}=(0,g.useQuery)(["roles"],D,{staleTime:5e4}),{formatMessage:U}=(0,u.Z)(),S=I?U({id:I,defaultMessage:I}):"",F=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),H=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),V=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),G=N==="loading"?t.createElement(y,null):void 0;return t.createElement(a.P,{id:"roles",disabled:O,error:S,hint:H,label:F,name:"roles",onChange:v=>{j({target:{name:"roles",value:v}})},placeholder:V,multi:!0,startIcon:G,value:x.map(v=>v.toString()),withTags:!0,required:!0},(Y||[]).map(v=>t.createElement(o.W,{key:v.id,value:v.id.toString()},U({id:`global.${v.code}`,defaultMessage:v.name}))))};M.defaultProps={disabled:!1,error:void 0},M.propTypes={disabled:n().bool,error:n().string,onChange:n().func.isRequired,value:n().array.isRequired},i.Z=M},32720:function(B,i,e){e.d(i,{YM:function(){return g},Rw:function(){return E}});var t=e(24346),a=e(43806);const o={firstname:t.Z_().trim().required(a.I0.required),lastname:t.Z_(),email:t.Z_().email(a.I0.email).lowercase().required(a.I0.required),username:t.Z_().nullable(),password:t.Z_().min(8,a.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,a.I0.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(s,c)=>s?c.required(a.I0.required):c)};var E={...o,currentPassword:t.Z_().when(["password","confirmPassword"],(s,c,f)=>s||c?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},g=t.Ry().shape({...o,isActive:t.Xg(),...n})},70788:function(B,i,e){e.d(i,{Z:function(){return o}});var t=e(74512);const a=r=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...r,children:(0,t.jsx)("path",{fill:"#212134",d:"M24 13.3a.2.2 0 0 1-.2.2H5.74l8.239 8.239a.2.2 0 0 1 0 .282L12.14 23.86a.2.2 0 0 1-.282 0L.14 12.14a.2.2 0 0 1 0-.282L11.86.14a.2.2 0 0 1 .282 0L13.98 1.98a.2.2 0 0 1 0 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6Z"})}),o=a}}]);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{86409:function(N,p,t){t.d(p,{F:function(){return u}});var e=t(32735),n=t(43806),i=t(67879),c=t(20108);const u=(I={},j={})=>{const{id:v="",...y}=I,{get:o}=(0,n.kY)(),{locale:Z}=(0,i.Z)(),L=(0,n.Xe)(Z,{sensitivity:"base"}),{data:D,error:d,isError:T,isLoading:Q,refetch:V}=(0,c.useQuery)(["roles",v,y],async()=>{const{data:R}=await o(`/admin/roles/${v??""}`,{params:y});return R},j);return{roles:e.useMemo(()=>{let R=[];return v&&D?R=[D.data]:Array.isArray(D?.data)&&(R=D.data),[...R].sort((H,b)=>L.compare(H.name,b.name))},[D,v,L]),error:d,isError:T,isLoading:Q,refetch:V}}},32239:function(N,p,t){t.r(p),t.d(p,{default:function(){return ue}});var e=t(32735),n=t(43806),i=t(15062),c=t(30305),u=t(95162),I=t(64092),j=t(91779),v=t(95181),y=t(56932),o=t(23699),Z=t(22116),L=t(41013),D=t(45037),d=t(27947),T=t(8365),Q=t(99320),V=t(1690),J=t(94958),R=t(63318),H=t(94997),b=t(82064),k=t(67879),q=t(53038),_=t(86409),ee=()=>"todo empty role",te=t(84642),ne=t(77981),le=t(14763),ae=t(60216),M=t.n(ae);const z=({id:a,name:m,description:s,usersCount:O,icons:r,rowIndex:W,canUpdate:E})=>{const{formatMessage:P}=(0,k.Z)(),[,x]=r,g=P({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:O});return e.createElement(D.Tr,{"aria-rowindex":W,key:a,...E?(0,n.X7)({fn:x.onClick}):{}},e.createElement(d.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},m)),e.createElement(d.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(T.Z,{ellipsis:!0,textColor:"neutral800"},s)),e.createElement(d.Td,null,e.createElement(T.Z,{textColor:"neutral800"},g)),e.createElement(d.Td,null,e.createElement(te.k,{justifyContent:"flex-end",...n.UW},r.map((h,A)=>h?e.createElement(ne.x,{key:h.label,paddingLeft:A===0?0:1},e.createElement(le.h,{onClick:h.onClick,label:h.label,noBorder:!0,icon:h.icon})):null))))};z.propTypes={id:M().number.isRequired,name:M().string.isRequired,description:M().string.isRequired,usersCount:M().number.isRequired,icons:M().array.isRequired,rowIndex:M().number.isRequired,canUpdate:M().bool},z.defaultProps={canUpdate:!1};var se=z,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(a,m)=>(0,oe.ZP)(a,s=>{switch(m.type){case"ON_REMOVE_ROLES":{s.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{s.shouldRefetchData=!0,s.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{s.shouldRefetchData=!1,s.roleToDelete=null,s.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{s.roleToDelete=m.id;break}default:return s}});const de=({canCreate:a,canDelete:m,canUpdate:s,refetchRoles:O})=>{const{formatMessage:r}=(0,k.Z)(),{formatAPIError:W}=(0,n.So)(),E=(0,n.lm)(),[P,x]=(0,e.useState)(!1),{push:g}=(0,q.k6)(),[{selectedRoles:h,showModalConfirmButtonLoading:A,roleToDelete:X},U]=(0,e.useReducer)(ie,re),{post:G}=(0,n.tg)(),Y=async()=>{try{U({type:"ON_REMOVE_ROLES"}),await G("/admin/roles/batch-delete",{ids:[X]}),await O(),U({type:"RESET_DATA_TO_DELETE"})}catch(l){E({type:"warning",message:W(l)})}B()},K=(0,e.useCallback)(l=>{g(`/settings/roles/duplicate/${l}`)},[g]),$=()=>g("/settings/roles/new"),F=(0,e.useCallback)(l=>{U({type:"SET_ROLE_TO_DELETE",id:l}),B()},[]),B=()=>x(l=>!l),f=(0,e.useCallback)(l=>{g(`/settings/roles/${l}`)},[g]),S=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),C.usersCount?E({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):F(C.id)},[E,F]),w=(0,e.useCallback)((l,C)=>{l.preventDefault(),l.stopPropagation(),K(C.id)},[K]),me=(0,e.useCallback)(l=>[...a?[{onClick:C=>w(C,l),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(J.Z,null)}]:[],...s?[{onClick:()=>f(l.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(R.Z,null)}]:[],...m?[{onClick:C=>S(C,l),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(H.Z,null)}]:[]],[r,S,w,f,a,s,m]);return{handleNewRoleClick:$,getIcons:me,selectedRoles:h,isWarningDeleteAllOpened:P,showModalConfirmButtonLoading:A,handleToggleModal:B,handleDeleteData:Y}};var ce=()=>{const{formatMessage:a}=(0,k.Z)();(0,n.go)();const m=(0,i.v9)(c._),[{query:s}]=(0,n.Kx)(),{isLoading:O,allowedActions:{canCreate:r,canDelete:W,canRead:E,canUpdate:P}}=(0,n.ss)(m.settings.roles),{roles:x,isLoading:g,refetch:h}=(0,_.F)({filters:s?._q?{name:{$containsi:s._q}}:void 0},{cacheTime:0,enabled:!O&&E}),{handleNewRoleClick:A,getIcons:X,isWarningDeleteAllOpened:U,showModalConfirmButtonLoading:G,handleToggleModal:Y,handleDeleteData:K}=de({refetchRoles:h,canCreate:r,canDelete:W,canUpdate:P}),$=x.length+1,F=6;if(O)return e.createElement(u.o,null,e.createElement(n.dO,null));const B=a({id:"global.roles",defaultMessage:"roles"});return e.createElement(u.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(I.T,{primaryAction:r?e.createElement(j.z,{onClick:A,startIcon:e.createElement(b.Z,null),size:"S"},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:B,subtitle:a({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),E&&e.createElement(v.Z,{startActions:e.createElement(n.m,{label:a({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:B})})}),E&&e.createElement(y.D,null,e.createElement(o.i,{colCount:F,rowCount:$,footer:r?e.createElement(Z.c,{onClick:A,icon:e.createElement(b.Z,null)},a({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(L.h,null,e.createElement(D.Tr,{"aria-rowindex":1},e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.name",defaultMessage:"Name"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.description",defaultMessage:"Description"}))),e.createElement(d.Th,null,e.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},a({id:"global.users",defaultMessage:"Users"}))),e.createElement(d.Th,null,e.createElement(Q.T,null,a({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.p,null,x?.map((f,S)=>e.createElement(se,{key:f.id,id:f.id,name:f.name,description:f.description,usersCount:f.usersCount,icons:X(f),rowIndex:S+2,canUpdate:P})))),!$&&!g&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:U,onConfirm:K,isConfirmButtonLoading:G,onToggleDialog:Y}))},ue=()=>{const a=(0,i.v9)(c._);return e.createElement(n.O4,{permissions:a.settings.roles.main},e.createElement(ce,null))}},95181:function(N,p,t){t.d(p,{Z:function(){return i}});var e=t(74512),n=t(84642);const i=({startActions:c,endActions:u})=>!c&&!u?null:(0,e.jsxs)(n.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,e.jsx)(n.k,{gap:2,wrap:"wrap",children:c}),(0,e.jsx)(n.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},22116:function(N,p,t){t.d(p,{c:function(){return y}});var e=t(74512),n=t(8471),i=t(77981),c=t(2775),u=t(84642),I=t(8365);const j=(0,n.ZP)(i.x)`
|
|
2
|
+
height: ${24/16}rem;
|
|
3
|
+
width: ${24/16}rem;
|
|
4
|
+
border-radius: 50%;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
|
|
9
|
+
svg {
|
|
10
|
+
height: ${10/16}rem;
|
|
11
|
+
width: ${10/16}rem;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
svg path {
|
|
15
|
+
fill: ${({theme:o})=>o.colors.primary600};
|
|
16
|
+
}
|
|
17
|
+
`,v=(0,n.ZP)(i.x)`
|
|
18
|
+
border-radius: 0 0 ${({theme:o})=>o.borderRadius} ${({theme:o})=>o.borderRadius};
|
|
19
|
+
display: block;
|
|
20
|
+
width: 100%;
|
|
21
|
+
border: none;
|
|
22
|
+
`,y=({children:o,icon:Z,...L})=>(0,e.jsxs)("div",{children:[(0,e.jsx)(c.i,{}),(0,e.jsx)(v,{as:"button",background:"primary100",padding:5,...L,children:(0,e.jsxs)(u.k,{children:[(0,e.jsx)(j,{"aria-hidden":!0,background:"primary200",children:Z}),(0,e.jsx)(i.x,{paddingLeft:3,children:(0,e.jsx)(I.Z,{variant:"pi",fontWeight:"bold",textColor:"primary600",children:o})})]})})]})}}]);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{97108:function(B,m,e){e.d(m,{R:function(){return o}});var t=e(32735),l=e(43806),r=e(20108);function o(u={},a={}){const{id:s="",...M}=u,{get:E}=(0,l.kY)(),{data:n,isError:C,isLoading:O,refetch:I}=(0,r.useQuery)(["users",s,M],async()=>{const{data:{data:y}}=await E(`/admin/users/${s}`,{params:M});return y},a);return{users:t.useMemo(()=>s&&n?[n]:Array.isArray(n?.results)?n.results:[],[n,s]),pagination:t.useMemo(()=>n?.pagination??null,[n?.pagination]),isLoading:O,isError:C,refetch:I}}},59092:function(B,m,e){var t=e(32735),l=e(77981),r=e(91779),o=e(43806),u=e(68527),a=e(60216),s=e.n(a),M=e(67879);const E=({displayedFilters:n})=>{const[C,O]=(0,t.useState)(!1),{formatMessage:I}=(0,M.Z)(),v=(0,t.useRef)(),y=()=>{O(W=>!W)};return t.createElement(t.Fragment,null,t.createElement(l.x,{paddingTop:1,paddingBottom:1},t.createElement(r.z,{variant:"tertiary",ref:v,startIcon:t.createElement(u.Z,null),onClick:y,size:"S"},I({id:"app.utils.filters",defaultMessage:"Filters"})),C&&t.createElement(o.J5,{displayedFilters:n,isVisible:C,onToggle:y,source:v})),t.createElement(o.W$,{filtersSchema:n}))};E.propTypes={displayedFilters:s().arrayOf(s().shape({name:s().string.isRequired,metadatas:s().shape({label:s().string}),fieldSchema:s().shape({type:s().string})})).isRequired},m.Z=E},99528:function(B,m,e){e.d(m,{W:function(){return pe},Z:function(){return Ze}});var t=e(32735),l=e(95162),r=e(64092),o=e(95181),u=e(56932),a=e(43806),s=e(33348),M=e.n(s),E=e(67879),n=e(20108),C=e(15062),O=e(53038),I=e(97108),v=e(9592),y=e(30305),W=e(59092),A=e(91779),ae=e(50720),se=e(60216),d=e.n(se);const q=({onClick:i})=>{const{formatMessage:g}=(0,E.Z)();return t.createElement(A.z,{onClick:i,startIcon:t.createElement(ae.Z,null),size:"S"},g({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};q.propTypes={onClick:d().func.isRequired};var Z=e(1690),ne=e(45037),J=e(27947),le=e(96669),b=e(8365),F=e(84642),P=e(14763),$=e(77981),fe=e(63318),Me=e(94997),re=e(90869);const oe=({canDelete:i,headers:g,entriesToDelete:L,onClickDelete:k,onSelectRow:V,withMainAction:j,withBulkActions:x,rows:R})=>{const{push:h,location:{pathname:H}}=(0,O.k6)(),{formatMessage:D}=(0,E.Z)();return t.createElement(Z.p,null,R.map(c=>{const z=L.findIndex(U=>U===c.id)!==-1;return t.createElement(ne.Tr,{key:c.id,...(0,a.X7)({fn:()=>h(`${H}/${c.id}`),condition:x})},j&&t.createElement(J.Td,{...a.UW},t.createElement(le.C,{"aria-label":D({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),checked:z,onChange:()=>{V({name:c.id,value:!z})}})),g.map(({key:U,cellFormatter:Y,name:K,...N})=>t.createElement(J.Td,{key:U},typeof Y=="function"?Y(c,{key:U,name:K,formatMessage:D,...N}):t.createElement(b.Z,{textColor:"neutral800"},c[K]||"-"))),x&&t.createElement(J.Td,null,t.createElement(F.k,{justifyContent:"end"},t.createElement(P.h,{onClick:()=>h(`${H}/${c.id}`),label:D({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(fe.Z,null)}),i&&t.createElement($.x,{paddingLeft:1,...a.UW},t.createElement(P.h,{onClick:()=>k(c.id),label:D({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,re.Pp)(c.firstname,c.lastname)}),noBorder:!0,icon:t.createElement(Me.Z,null)})))))}))};oe.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},oe.propTypes={canDelete:d().bool,entriesToDelete:d().array,headers:d().array.isRequired,onClickDelete:d().func,onSelectRow:d().func,rows:d().array,withBulkActions:d().bool,withMainAction:d().bool};var ve=oe,ye=e(21223),he=e(98887),Pe=e(87674),de=e(10710),ie=e(97037),De=e(74973),Ce=e(79129),Oe=e(2748),Ae=e(92802),Le=e(47577),Te=e(18703),X=e(24346);const ue={firstname:"",lastname:"",email:"",roles:[]},Ie=[],Re=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0}]],Ue=X.Ry().shape({firstname:X.Z_().trim().required(a.I0.required),lastname:X.Z_(),email:X.Z_().email(a.I0.email).required(a.I0.required),roles:X.IX().min(1,a.I0.required).required(a.I0.required)}),Se={create:{buttonSubmitLabel:{id:"app.containers.Users.ModalForm.footer.button-success",defaultMessage:"Invite user"},isDisabled:!1,next:"magic-link"},"magic-link":{buttonSubmitLabel:{id:"global.finish",defaultMessage:"Finish"},isDisabled:!0,next:null}},Ee=({onSuccess:i,onToggle:g})=>{const[L,k]=(0,t.useState)("create"),[V,j]=(0,t.useState)(!1),[x,R]=(0,t.useState)(null),{formatMessage:h}=(0,E.Z)(),H=(0,a.lm)(),{lockApp:D,unlockApp:c}=(0,a.o1)(),{post:z}=(0,a.kY)(),U=(0,v.c)(Ie,async()=>(await e.e(311).then(e.bind(e,40311))).ROLE_LAYOUT,{combine(f,S){return[...f,S]},defaultValue:[]}),Y=(0,v.c)(ue,async()=>(await e.e(311).then(e.bind(e,40311))).FORM_INITIAL_VALUES,{combine(f,S){return{...f,...S}},defaultValue:ue}),K=(0,v.c)(Le.A,async()=>(await e.e(1727).then(e.bind(e,81727))).MagicLinkEE),N=(0,n.useMutation)(f=>z("/admin/users",f),{async onSuccess({data:f}){R(f.data.registrationToken),await i(),te(),j(!1)},onError(f){throw j(!1),H({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),f},onSettled(){c()}}),w=h({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),ee=async(f,{setErrors:S})=>{D(),j(!0);try{await N.mutateAsync(f)}catch(G){c(),G?.response?.data?.error.message==="Email already taken"&&S({email:G.response.data.error.message})}},te=()=>{p?k(p):g()},{buttonSubmitLabel:_,isDisabled:Q,next:p}=Se[L],be=L==="create"?t.createElement(A.z,{type:"submit",loading:V},h(_)):t.createElement(A.z,{type:"button",loading:V,onClick:g},h(_));return K?t.createElement(ye.P,{onClose:g,labelledBy:"title"},t.createElement(he.x,null,t.createElement(Ce.O,{label:w},t.createElement(Oe.$,{isCurrent:!0},w))),t.createElement(Ae.J9,{enableReinitialize:!0,initialValues:Y,onSubmit:ee,validationSchema:Ue,validateOnChange:!1},({errors:f,handleChange:S,values:G})=>t.createElement(a.l0,null,t.createElement(Pe.f,null,t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},L!=="create"&&t.createElement(K,{registrationToken:x}),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},h({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),t.createElement($.x,{paddingTop:4},t.createElement(F.k,{direction:"column",alignItems:"stretch",gap:1},t.createElement(de.r,{gap:5},Re.map(me=>me.map(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,error:f[T.name],onChange:S,value:G[T.name]})))))))),t.createElement($.x,null,t.createElement(b.Z,{variant:"beta",as:"h2"},h({id:"global.roles",defaultMessage:"User's role"})),t.createElement($.x,{paddingTop:4},t.createElement(de.r,{gap:5},t.createElement(ie.P,{col:6,xs:12},t.createElement(Te.Z,{disabled:Q,error:f.roles,onChange:S,value:G.roles})),U.map(me=>me.map(T=>t.createElement(ie.P,{key:T.name,...T.size},t.createElement(a.jm,{...T,disabled:Q,onChange:S,value:G[T.name]}))))))))),t.createElement(De.m,{startActions:t.createElement(A.z,{variant:"tertiary",onClick:g,type:"button"},h({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:be})))):null};Ee.propTypes={onToggle:d().func.isRequired,onSuccess:d().func.isRequired};var Be=Ee;const ce=({pagination:i})=>t.createElement($.x,{paddingTop:4},t.createElement(F.k,{alignItems:"flex-end",justifyContent:"space-between"},t.createElement(a.v4,null),t.createElement(a.tU,{pagination:i})));ce.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},ce.propTypes={pagination:d().shape({page:d().number,pageCount:d().number,pageSize:d().number,total:d().number})};var We=ce,xe=[{name:"firstname",metadatas:{label:"Firstname"},fieldSchema:{type:"string"}},{name:"lastname",metadatas:{label:"Lastname"},fieldSchema:{type:"string"}},{name:"email",metadatas:{label:"Email"},fieldSchema:{type:"email"}},{name:"username",metadatas:{label:"Username"},fieldSchema:{type:"string"}},{name:"isActive",metadatas:{label:"Active user"},fieldSchema:{type:"boolean"}}],Ke=[{name:"firstname",key:"firstname",metadatas:{label:{id:"Settings.permissions.users.firstname",defaultMessage:"Firstname"},sortable:!0}},{name:"lastname",key:"lastname",metadatas:{label:{id:"Settings.permissions.users.lastname",defaultMessage:"Lastname"},sortable:!0}},{key:"email",name:"email",metadatas:{label:{id:"Settings.permissions.users.email",defaultMessage:"Email"},sortable:!0}},{key:"roles",name:"roles",metadatas:{label:{id:"Settings.permissions.users.roles",defaultMessage:"Roles"},sortable:!1},cellFormatter({roles:i},{formatMessage:g}){return t.createElement(b.Z,{textColor:"neutral800"},i.map(L=>g({id:`Settings.permissions.users.${L.code}`,defaultMessage:L.name})).join(`,
|
|
2
|
+
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:i},{formatMessage:g}){return t.createElement(F.k,null,t.createElement(a.qb,{isActive:i,variant:i?"success":"danger"}),t.createElement(b.Z,{textColor:"neutral800"},g({id:i?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:i?"Active":"Inactive"})))}}];const ge=["ee","license-limit-info"],pe=()=>{const{post:i}=(0,a.kY)(),{formatAPIError:g}=(0,a.So)(),[L,k]=(0,t.useState)(!1),V=(0,C.v9)(y._),{allowedActions:{canCreate:j,canDelete:x,canRead:R}}=(0,a.ss)(V.settings.users),h=(0,n.useQueryClient)(),H=(0,a.lm)(),{formatMessage:D}=(0,E.Z)(),{search:c}=(0,O.TH)();(0,a.go)();const{users:z,pagination:U,isError:Y,isLoading:K,refetch:N}=(0,I.R)(M().parse(c,{ignoreQueryPrefix:!0}),{cacheTime:0,enabled:R}),w=(0,v.c)(q,async()=>(await e.e(2379).then(e.bind(e,42379))).CreateActionEE),ee=Ke.map(p=>({...p,metadatas:{...p.metadatas,label:D(p.metadatas.label)}})),te=D({id:"global.users",defaultMessage:"Users"}),_=()=>{k(p=>!p)},Q=(0,n.useMutation)(async p=>{await i("/admin/users/batch-delete",{ids:p})},{async onSuccess(){await N(),await h.refetchQueries(ge)},onError(p){H({type:"warning",message:{id:"notification.error",message:g(p),defaultMessage:"An error occured"}})}});return w?t.createElement(l.o,{"aria-busy":K},t.createElement(a.SL,{name:"Users"}),t.createElement(r.T,{primaryAction:j&&t.createElement(w,{onClick:_}),title:te,subtitle:D({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),R&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:D({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:te})}),t.createElement(W.Z,{displayedFilters:xe}))}),t.createElement(u.D,{canRead:R},!R&&t.createElement(a.ZF,null),Y&&t.createElement("div",null,"TODO: An error occurred"),R&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:K,onConfirmDeleteAll:Q.mutateAsync,onConfirmDelete:p=>Q.mutateAsync([p]),headers:ee,rows:z,withBulkActions:!0,withMainAction:x},t.createElement(ve,{canDelete:x,headers:ee,rows:z,withBulkActions:!0,withMainAction:x})),U&&t.createElement(We,{pagination:U}))),L&&t.createElement(Be,{onSuccess:async()=>{await N(),await h.refetchQueries(ge)},onToggle:_})):null};var Ze=()=>{const i=(0,v.c)(pe,async()=>(await e.e(2801).then(e.bind(e,12801))).UserListPageEE);return i?t.createElement(i,null):null}},25691:function(B,m,e){e.r(m);var t=e(32735),l=e(43806),r=e(15062),o=e(30305),u=e(99528);const a=()=>{const s=(0,r.v9)(o._);return t.createElement(l.O4,{permissions:s.settings.users.main},t.createElement(u.Z,null))};m.default=a},84024:function(B,m,e){var t=e(32735),l=e(14763),r=e(43806),o=e(94958),u=e(60216),a=e.n(u),s=e(67879);const M=({children:E,target:n})=>{const C=(0,r.lm)(),{formatMessage:O}=(0,s.Z)(),{copy:I}=(0,r.VP)(),v=O({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),y=async()=>{await I(n)&&C({type:"info",message:{id:"notification.link-copied"}})};return t.createElement(r.Y_,{endAction:t.createElement(l.h,{label:v,noBorder:!0,icon:t.createElement(o.Z,null),onClick:y}),title:n,titleEllipsis:!0,subtitle:E,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};M.propTypes={children:a().oneOfType([a().element,a().string]).isRequired,target:a().string.isRequired},m.Z=M},47577:function(B,m,e){e.d(m,{A:function(){return s}});var t=e(32735),l=e(60216),r=e.n(l),o=e(67879),u=e(35231),a=e(84024);const s=({registrationToken:M})=>{const{formatMessage:E}=(0,o.Z)(),n=`${window.location.origin}${u.Z}auth/register?registrationToken=${M}`;return t.createElement(a.Z,{target:n},E({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};s.defaultProps={registrationToken:""},s.propTypes={registrationToken:r().string}},18703:function(B,m,e){var t=e(32735),l=e(16773),r=e(40260),o=e(43806),u=e(75760),a=e(60216),s=e.n(a),M=e(67879),E=e(20108),n=e(8471);const C=(0,n.F4)`
|
|
3
|
+
from {
|
|
4
|
+
transform: rotate(0deg);
|
|
5
|
+
}
|
|
6
|
+
to {
|
|
7
|
+
transform: rotate(359deg);
|
|
8
|
+
}
|
|
9
|
+
`,O=n.ZP.div`
|
|
10
|
+
animation: ${C} 2s infinite linear;
|
|
11
|
+
`,I=()=>t.createElement(O,null,t.createElement(u.Z,null)),v=async()=>{const{get:W}=(0,o.tg)(),{data:A}=await W("/admin/roles");return A.data},y=({disabled:W,error:A,onChange:ae,value:se})=>{const{status:d,data:q}=(0,E.useQuery)(["roles"],v,{staleTime:5e4}),{formatMessage:Z}=(0,M.Z)(),ne=A?Z({id:A,defaultMessage:A}):"",J=Z({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),le=Z({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),b=Z({id:"app.components.Select.placeholder",defaultMessage:"Select"}),F=d==="loading"?t.createElement(I,null):void 0;return t.createElement(l.P,{id:"roles",disabled:W,error:ne,hint:le,label:J,name:"roles",onChange:P=>{ae({target:{name:"roles",value:P}})},placeholder:b,multi:!0,startIcon:F,value:se.map(P=>P.toString()),withTags:!0,required:!0},(q||[]).map(P=>t.createElement(r.W,{key:P.id,value:P.id.toString()},Z({id:`global.${P.code}`,defaultMessage:P.name}))))};y.defaultProps={disabled:!1,error:void 0},y.propTypes={disabled:s().bool,error:s().string,onChange:s().func.isRequired,value:s().array.isRequired},m.Z=y},95181:function(B,m,e){e.d(m,{Z:function(){return r}});var t=e(74512),l=e(84642);const r=({startActions:o,endActions:u})=>!o&&!u?null:(0,t.jsxs)(l.k,{justifyContent:"space-between",alignItems:"flex-start",paddingBottom:4,paddingLeft:10,paddingRight:10,children:[(0,t.jsx)(l.k,{gap:2,wrap:"wrap",children:o}),(0,t.jsx)(l.k,{gap:2,shrink:0,wrap:"wrap",children:u})]})},50720:function(B,m,e){e.d(m,{Z:function(){return r}});var t=e(74512);const l=o=>(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 24 24",...o,children:[(0,t.jsx)("path",{fill:"#32324D",d:"M0 2.8A.8.8 0 0 1 .8 2h22.4a.8.8 0 0 1 .8.8v2.71a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2.8Z"}),(0,t.jsx)("path",{fill:"#32324D",d:"M1.922 7.991C.197 6.675 0 6.252 0 5.289h23.953c.305 1.363-1.594 2.506-2.297 3.125-1.953 1.363-6.253 4.36-7.828 5.45-1.575 1.09-3.031.455-3.562 0-2.063-1.41-6.62-4.557-8.344-5.873ZM22.8 18H1.2c-.663 0-1.2.471-1.2 1.053v1.894C0 21.529.537 22 1.2 22h21.6c.663 0 1.2-.471 1.2-1.053v-1.894c0-.582-.537-1.053-1.2-1.053Z"}),(0,t.jsx)("path",{fill:"#32324D",d:"M0 9.555v10.972h24V9.554c-2.633 1.95-8.367 6.113-9.96 7.166-1.595 1.052-3.352.438-4.032 0L0 9.555Z"})]}),r=l}}]);
|
package/build/{api-tokens-create-page.e0c15627.chunk.js → api-tokens-create-page.2f25ddf6.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{79494:function(l,e,t){t.r(e);var s=t(32735),_=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return s.createElement(_.O4,{permissions:r.settings["api-tokens"].create},s.createElement(a.Z,null))};e.default=i}}]);
|
package/build/{api-tokens-edit-page.9f2dce47.chunk.js → api-tokens-edit-page.45faac16.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{77238:function(l,s,t){t.r(s);var _=t(32735),e=t(43806),n=t(15062),E=t(30305),a=t(72225);const i=()=>{const r=(0,n.v9)(E._);return _.createElement(e.O4,{permissions:r.settings["api-tokens"].read},_.createElement(a.Z,null))};s.default=i}}]);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{12584:function(K,E,t){t.d(E,{Z:function(){return p}});var e=t(32735),a=t(1690),P=t(45037),u=t(27947),k=t(8365),V=t(84642),l=t(43806),b=t(60216),n=t.n(b),S=t(67879),I=t(53038),D=t(77981),O=t(14763),v=t(94997);const N=({tokenName:s,onClickDelete:i,tokenType:y})=>{const{formatMessage:g}=(0,S.Z)(),{trackUsage:T}=(0,l.rS)(),[f,c]=(0,e.useState)(!1),C=()=>{c(!1),T("willDeleteToken",{tokenType:y}),i()};return e.createElement(D.x,{paddingLeft:1,onClick:d=>d.stopPropagation()},e.createElement(O.h,{onClick:()=>{c(!0)},label:g({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${s}`}),name:"delete",noBorder:!0,icon:e.createElement(v.Z,null)}),e.createElement(l.QH,{onToggleDialog:()=>c(!1),onConfirm:C,isOpen:f}))};N.propTypes={tokenName:n().string.isRequired,onClickDelete:n().func.isRequired,tokenType:n().string.isRequired};var w=N,Q=t(10364),J=t(8471);const $={edit:{id:"app.component.table.edit",defaultMessage:"Edit {target}"},read:{id:"app.component.table.read",defaultMessage:"Read {target}"}},z=(0,J.ZP)(l.rU)`
|
|
2
|
+
svg {
|
|
3
|
+
path {
|
|
4
|
+
fill: ${({theme:s})=>s.colors.neutral500};
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
&:hover,
|
|
9
|
+
&:focus {
|
|
10
|
+
svg {
|
|
11
|
+
path {
|
|
12
|
+
fill: ${({theme:s})=>s.colors.neutral800};
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
`,L=({tokenName:s,tokenId:i,buttonType:y,children:g})=>{const{formatMessage:T}=(0,S.Z)(),{location:{pathname:f}}=(0,I.k6)();return e.createElement(z,{to:`${f}/${i}`,title:T($[y],{target:s})},g)};L.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired,buttonType:n().string,children:n().node.isRequired},L.defaultProps={buttonType:"edit"};var h=L;const m=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i,buttonType:"read"},e.createElement(Q.Z,null));m.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var U=m,F=t(63318);const A=({tokenName:s,tokenId:i})=>e.createElement(h,{tokenName:s,tokenId:i},e.createElement(F.Z,null));A.propTypes={tokenName:n().string.isRequired,tokenId:n().oneOfType([n().string,n().number]).isRequired};var H=A;const R=({permissions:s,headers:i,contentType:y,isLoading:g,tokens:T,onConfirmDelete:f,tokenType:c})=>{const{canDelete:C,canUpdate:d,canRead:B}=s,M=C||d||B,[{query:x}]=(0,l.Kx)(),{formatMessage:Z}=(0,S.Z)(),[,j]=x?x.sort.split(":"):"ASC",{push:W,location:{pathname:Y}}=(0,I.k6)(),{trackUsage:o}=(0,l.rS)(),X=T.sort((r,q)=>{const G=r.name.localeCompare(q.name);return j==="DESC"?-G:G});return e.createElement(l.tM,{headers:i,contentType:y,rows:T,withBulkActions:M,isLoading:g,onConfirmDelete:f},e.createElement(a.p,null,X.map(r=>e.createElement(P.Tr,{key:r.id,...(0,l.X7)({fn(){o("willEditTokenFromList",{tokenType:c}),W(`${Y}/${r.id}`)},condition:d})},e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",fontWeight:"bold",ellipsis:!0},r.name)),e.createElement(u.Td,{maxWidth:(0,l.Q1)(250)},e.createElement(k.Z,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(u.Td,null,e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.createdAt)}))),e.createElement(u.Td,null,r.lastUsedAt&&e.createElement(k.Z,{textColor:"neutral800"},e.createElement(l.ij,{timestamp:new Date(r.lastUsedAt),customIntervals:[{unit:"hours",threshold:1,text:Z({id:"Settings.apiTokens.lastHour",defaultMessage:"last hour"})}]}))),M&&e.createElement(u.Td,null,e.createElement(V.k,{justifyContent:"end"},d&&e.createElement(H,{tokenName:r.name,tokenId:r.id}),!d&&B&&e.createElement(U,{tokenName:r.name,tokenId:r.id}),C&&e.createElement(w,{tokenName:r.name,onClickDelete:()=>f(r.id),tokenType:c})))))))};R.propTypes={tokens:n().array,permissions:n().shape({canRead:n().bool,canDelete:n().bool,canUpdate:n().bool}).isRequired,headers:n().arrayOf(n().shape({cellFormatter:n().func,key:n().string.isRequired,metadatas:n().shape({label:n().string.isRequired,sortable:n().bool}).isRequired,name:n().string.isRequired})),contentType:n().string.isRequired,isLoading:n().bool,onConfirmDelete:n().func,tokenType:n().string.isRequired},R.defaultProps={tokens:[],headers:[],isLoading:!1,onConfirmDelete(){}};var p=R},49756:function(K,E,t){t.d(E,{Z:function(){return e},f:function(){return a}});const e="api-token",a="transfer-token"},22614:function(K,E,t){t.r(E),t.d(E,{default:function(){return L}});var e=t(32735),a=t(43806),P=t(15062),u=t(30305),k=t(95162),V=t(64092),l=t(56932),b=t(82064),n=t(33348),S=t.n(n),I=t(67879),D=t(20108),O=t(53038),v=t(49756),N=t(12584),Q=[{name:"name",key:"name",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.name",defaultMessage:"Name"},sortable:!0}},{name:"description",key:"description",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.description",defaultMessage:"Description"},sortable:!1}},{name:"createdAt",key:"createdAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.createdAt",defaultMessage:"Created at"},sortable:!1}},{name:"lastUsedAt",key:"lastUsedAt",metadatas:{label:{id:"Settings.apiTokens.ListView.headers.lastUsedAt",defaultMessage:"Last used"},sortable:!1}}],$=()=>{(0,a.go)();const h=(0,D.useQueryClient)(),{formatMessage:m}=(0,I.Z)(),U=(0,a.lm)(),F=(0,P.v9)(u._),{allowedActions:{canCreate:A,canDelete:H,canUpdate:R,canRead:p}}=(0,a.ss)(F.settings["api-tokens"]),{push:s}=(0,O.k6)(),{trackUsage:i}=(0,a.rS)(),{startSection:y}=(0,a.c1)(),g=e.useRef(y),{get:T,del:f}=(0,a.kY)(),{formatAPIError:c}=(0,a.So)();e.useEffect(()=>{g.current&&g.current("apiTokens")},[]),e.useEffect(()=>{s({search:S().stringify({sort:"name:ASC"},{encode:!1})})},[s]);const C=Q.map(o=>({...o,metadatas:{...o.metadatas,label:m(o.metadatas.label)}})),{data:d,isLoading:B}=(0,D.useQuery)(["api-tokens"],async()=>{i("willAccessTokenList",{tokenType:v.Z});const{data:{data:o}}=await T("/admin/api-tokens");return i("didAccessTokenList",{number:o.length,tokenType:v.Z}),o},{cacheTime:0,enabled:p,onError(o){U({type:"warning",message:c(o)})}}),M=B,x=(0,D.useMutation)(async o=>{await f(`/admin/api-tokens/${o}`)},{async onSuccess(){await h.invalidateQueries(["api-tokens"]),i("didDeleteToken")},onError(o){U({type:"warning",message:c(o)})}}),Z=d&&d.length>0,j=p&&Z,W=p&&!Z&&!A,Y=p&&!Z&&A;return e.createElement(k.o,{"aria-busy":M},e.createElement(a.SL,{name:"API Tokens"}),e.createElement(V.T,{title:m({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:m({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:A&&e.createElement(a.Qj,{"data-testid":"create-api-token-button",startIcon:e.createElement(b.Z,null),size:"S",onClick:()=>i("willAddTokenFromList",{tokenType:v.Z}),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"}))}),e.createElement(l.D,null,!p&&e.createElement(a.ZF,null),j&&e.createElement(N.Z,{permissions:{canRead:p,canDelete:H,canUpdate:R},headers:C,contentType:"api-tokens",rows:d,isLoading:M,onConfirmDelete:o=>x.mutateAsync(o),tokens:d,tokenType:v.Z}),Y&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(a.Qj,{variant:"secondary",startIcon:e.createElement(b.Z,null),to:"/settings/api-tokens/create"},m({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),W&&e.createElement(a.dJ,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},L=()=>{const h=(0,P.v9)(u._);return e.createElement(a.O4,{permissions:h.settings["api-tokens"].main},e.createElement($,null))}}}]);
|