@strapi/admin 4.10.1 → 4.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/components/AuthenticatedApp/index.js +19 -24
- package/admin/src/components/DragLayer/DragLayer.js +53 -0
- package/admin/src/components/DragLayer/index.js +1 -0
- package/admin/src/components/LeftMenu/index.js +2 -2
- package/admin/src/components/Providers/index.js +11 -7
- package/admin/src/content-manager/contexts/index.js +0 -1
- package/admin/src/content-manager/hooks/index.js +0 -1
- package/admin/src/content-manager/hooks/useLazyComponents/index.js +7 -3
- package/admin/src/content-manager/hooks/useRelation/useRelation.js +1 -3
- package/admin/src/content-manager/pages/{ListSettingsView/components/CardPreview.js → App/components/CardDragPreview.js} +28 -28
- package/admin/src/content-manager/pages/App/components/ComponentDragPreview.js +75 -0
- package/admin/src/content-manager/{components/DragLayer → pages/App/components}/RelationDragPreview.js +7 -4
- package/admin/src/content-manager/pages/App/index.js +39 -2
- package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFieldButton.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/FormModal.js +1 -1
- package/admin/src/content-manager/{components → pages/EditSettingsView/components}/LayoutDndProvider/index.js +3 -4
- package/admin/src/content-manager/pages/EditSettingsView/components/LinkToCTB.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/ModalForm.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/RowItemsLayout.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/hooks/useLayoutDnd.js +6 -0
- package/admin/src/content-manager/pages/EditSettingsView/index.js +1 -1
- package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +6 -6
- package/admin/src/hooks/useMenu/index.js +2 -2
- package/admin/src/hooks/useReleaseNotification/index.js +2 -2
- package/admin/src/hooks/useSettingsMenu/index.js +2 -2
- package/admin/src/pages/Admin/Onboarding/index.js +2 -2
- package/admin/src/pages/App/index.js +2 -2
- package/admin/src/pages/HomePage/SocialLinks.js +2 -2
- package/admin/src/pages/MarketplacePage/index.js +2 -2
- package/admin/src/pages/ProfilePage/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateValues.js +3 -3
- package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +2 -2
- package/admin/src/translations/fr.json +1 -1
- package/build/{5563.905daa13.chunk.js → 5563.986609ed.chunk.js} +2 -2
- package/build/6858.56d4d528.chunk.js +50 -0
- package/build/{7259.b7d00cea.chunk.js → 7259.7a48aa2f.chunk.js} +1 -1
- package/build/7725.1633e06f.chunk.js +213 -0
- package/build/9703.e590889d.chunk.js +1 -0
- package/build/Admin-authenticatedApp.a8373103.chunk.js +79 -0
- package/build/{Admin_InternalErrorPage.15c6bf07.chunk.js → Admin_InternalErrorPage.96ceaae1.chunk.js} +1 -1
- package/build/{Admin_homePage.f9309c6d.chunk.js → Admin_homePage.9f7c0bb1.chunk.js} +5 -5
- package/build/{Admin_marketplace.56bc1008.chunk.js → Admin_marketplace.a60cde15.chunk.js} +5 -5
- package/build/{Admin_pluginsPage.f6b52ee9.chunk.js → Admin_pluginsPage.9e6fa51c.chunk.js} +1 -1
- package/build/{Admin_profilePage.9112cffc.chunk.js → Admin_profilePage.1b337b73.chunk.js} +2 -2
- package/build/{Admin_settingsPage.4604a16c.chunk.js → Admin_settingsPage.5e045f42.chunk.js} +2 -2
- package/build/{Upload_ConfigureTheView.eaaec495.chunk.js → Upload_ConfigureTheView.4fc648b5.chunk.js} +1 -1
- package/build/admin-app.9bfe4ec7.chunk.js +63 -0
- package/build/{admin-edit-roles-page.8a4063f7.chunk.js → admin-edit-roles-page.d0c9497b.chunk.js} +24 -24
- package/build/{admin-edit-users.7e14d85f.chunk.js → admin-edit-users.ba27c532.chunk.js} +2 -2
- package/build/{admin-roles-list.329c1f63.chunk.js → admin-roles-list.c759daa3.chunk.js} +1 -1
- package/build/{admin-users.d02de059.chunk.js → admin-users.ad5dd832.chunk.js} +2 -2
- package/build/{api-tokens-create-page.97595e12.chunk.js → api-tokens-create-page.973d2816.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.cd36e30e.chunk.js → api-tokens-edit-page.29725c5e.chunk.js} +1 -1
- package/build/{api-tokens-list-page.6757c7b9.chunk.js → api-tokens-list-page.66c4fbdd.chunk.js} +2 -2
- package/build/{audit-logs-settings-page.19d90bda.chunk.js → audit-logs-settings-page.45cb4fb5.chunk.js} +1 -1
- package/build/content-manager.d28eb183.chunk.js +1111 -0
- package/build/{content-type-builder-list-view.9c2c020c.chunk.js → content-type-builder-list-view.5ff685ec.chunk.js} +1 -1
- package/build/{content-type-builder.68af11d2.chunk.js → content-type-builder.4737a30c.chunk.js} +3 -3
- package/build/{email-settings-page.1095e1ab.chunk.js → email-settings-page.dc07d518.chunk.js} +1 -1
- package/build/{fr-json.5947cf63.chunk.js → fr-json.73494bf5.chunk.js} +1 -1
- package/build/{i18n-settings-page.d95b32df.chunk.js → i18n-settings-page.8219dd99.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.41970e4c.js +2597 -0
- package/build/review-workflows-settings.7c0b4e73.chunk.js +61 -0
- package/build/{runtime~main.d4c8d6a2.js → runtime~main.c20330f1.js} +1 -1
- package/build/{sso-settings-page.1dd4886e.chunk.js → sso-settings-page.f44d95d8.chunk.js} +1 -1
- package/build/{transfer-tokens-create-page.ec2ca215.chunk.js → transfer-tokens-create-page.170acee6.chunk.js} +1 -1
- package/build/{transfer-tokens-edit-page.22bf28e5.chunk.js → transfer-tokens-edit-page.6cf23295.chunk.js} +1 -1
- package/build/{transfer-tokens-list-page.cf8c77f2.chunk.js → transfer-tokens-list-page.c3fec4c1.chunk.js} +2 -2
- package/build/{upload-settings.945fdcfa.chunk.js → upload-settings.dd2d987c.chunk.js} +1 -1
- package/build/{upload.a86b1054.chunk.js → upload.c8479232.chunk.js} +1 -1
- package/build/{users-advanced-settings-page.5b5a9baa.chunk.js → users-advanced-settings-page.c36cfd59.chunk.js} +1 -1
- package/build/{users-email-settings-page.e5506eb4.chunk.js → users-email-settings-page.2716ce8e.chunk.js} +5 -5
- package/build/{users-providers-settings-page.e32089c2.chunk.js → users-providers-settings-page.0d6304a5.chunk.js} +1 -1
- package/build/{users-roles-settings-page.20656f92.chunk.js → users-roles-settings-page.eeb3a339.chunk.js} +1 -1
- package/build/{webhook-edit-page.a3b62049.chunk.js → webhook-edit-page.f4db86f3.chunk.js} +2 -2
- package/build/{webhook-list-page.ca38eeef.chunk.js → webhook-list-page.30d73114.chunk.js} +1 -1
- package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/ReviewWorkflowsStageEE.js +11 -5
- package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/getTableColumn.js +7 -3
- package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +16 -2
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ReviewWorkflows.js +34 -25
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/actions/index.js +11 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/StageDragPreview/StageDragPreview.js +45 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/StageDragPreview/index.js +1 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/Stage.js +287 -63
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/components/OptionColor/OptionColor.js +27 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/components/OptionColor/index.js +1 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/components/SingleValueColor/SingleValueColor.js +31 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/components/SingleValueColor/index.js +1 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stages.js +2 -1
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/constants.js +26 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/reducer/index.js +36 -2
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/utils/colors.js +33 -0
- package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/utils/getWorkflowValidationSchema.js +9 -0
- package/ee/server/constants/workflows.js +1 -0
- package/ee/server/content-types/workflow-stage/index.js +7 -0
- package/ee/server/controllers/authentication/middlewares.js +1 -1
- package/ee/server/migrations/review-workflows-stages-color.js +20 -0
- package/ee/server/register.js +2 -0
- package/ee/server/services/review-workflows/review-workflows.js +1 -1
- package/ee/server/services/review-workflows/stages.js +1 -1
- package/ee/server/utils/persisted-tables.js +3 -0
- package/ee/server/validation/review-workflows.js +7 -1
- package/jest.config.front.js +1 -0
- package/package.json +10 -10
- package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +0 -95
- package/admin/src/components/AutoReloadOverlayBlockerProvider/Overlay.js +0 -42
- package/admin/src/components/AutoReloadOverlayBlockerProvider/index.js +0 -99
- package/admin/src/components/Notifications/Notification/index.js +0 -159
- package/admin/src/components/Notifications/index.js +0 -46
- package/admin/src/components/Notifications/reducer.js +0 -47
- package/admin/src/components/OverlayBlocker/index.js +0 -67
- package/admin/src/content-manager/components/DragLayer/ComponentDragPreview.js +0 -83
- package/admin/src/content-manager/components/DragLayer/index.js +0 -85
- package/admin/src/content-manager/contexts/LayoutDnd.js +0 -5
- package/admin/src/content-manager/hooks/useCallbackRef.js +0 -23
- package/admin/src/content-manager/hooks/useLayoutDnd.js +0 -6
- package/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js +0 -7
- package/build/8694.6522968d.chunk.js +0 -247
- package/build/Admin-authenticatedApp.5562aedc.chunk.js +0 -79
- package/build/admin-app.014adc27.chunk.js +0 -110
- package/build/content-manager.84f81966.chunk.js +0 -1130
- package/build/main.841e0dcb.js +0 -2280
- package/build/review-workflows-settings.f7890c40.chunk.js +0 -106
package/build/{admin-edit-roles-page.8a4063f7.chunk.js → admin-edit-roles-page.d0c9497b.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{92034:function(w,F,
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{92034:function(w,F,r){"use strict";r.r(F),r.d(F,{CreatePage:function(){return Ce},default:function(){return Oe}});var e=r(32735),C=r(14723),o=r(24989),x=r(27649),k=r(82055),R=r(87933),v=r(41415),S=r(17e3),P=r(72850),M=r(49372),A=r(15335),I=r(5803),y=r(10369),u=r(10508),N=r(29439),Q=r(92802),z=r(33795),fe=r.n(z),T=r(86834),X=r.n(T),me=r(67879),f=r(53038),q=r(8471),Y=r(7247),ee=r(67927),ie=r(83983),le=r(24346),ye=le.Ry().shape({name:le.Z_().required(o.I0.required),description:le.Z_().required(o.I0.required)});const de=q.ZP.div`
|
|
2
2
|
border: 1px solid ${({theme:G})=>G.colors.primary200};
|
|
3
3
|
background: ${({theme:G})=>G.colors.primary100};
|
|
4
4
|
padding: ${({theme:G})=>`${G.spaces[2]} ${G.spaces[4]}`};
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
border-radius: ${({theme:G})=>G.borderRadius};
|
|
7
7
|
font-size: ${12/16}rem;
|
|
8
8
|
font-weight: bold;
|
|
9
|
-
`,Ce=()=>{const G=(0,
|
|
9
|
+
`,Ce=()=>{const G=(0,o.lm)(),{lockApp:re,unlockApp:D}=(0,o.o1)(),{formatMessage:j}=(0,me.Z)(),[_,se]=(0,e.useState)(!1),{replace:ce}=(0,f.k6)(),te=(0,e.useRef)(),{trackUsage:ue}=(0,o.rS)(),Ie=(0,f.$B)("/settings/roles/duplicate/:id"),Re=fe()(Ie,"params.id",null),{isLoading:Ze,data:he}=(0,ee.U_)(),{permissions:$e,isLoading:Me}=(0,ee.Dq)(Re),{post:Be,put:De}=(0,o.kY)(),Ve=ae=>{re(),se(!0),ue(Re?"willDuplicateRole":"willCreateNewRole"),Promise.resolve(Be("/admin/roles",ae)).then(async({data:V})=>{const{permissionsToSend:K}=te.current.getPermissions();return ue(Re?"didDuplicateRole":"didCreateNewRole"),V.data.id&&!X()(K)&&await De(`/admin/roles/${V.data.id}/permissions`,{permissions:K}),V}).then(V=>{se(!1),G({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),ce(`/settings/roles/${V.data.id}`)}).catch(V=>{console.error(V),se(!1),G({type:"warning",message:{id:"notification.error"}})}).finally(()=>{D()})},je=`${j({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,C.Z)(new Date,"PPP")}`;return e.createElement(x.o,null,e.createElement(o.SL,{name:"Roles"}),e.createElement(Q.J9,{initialValues:{name:"",description:je},onSubmit:Ve,validationSchema:ye,validateOnChange:!1},({handleSubmit:ae,values:V,errors:K,handleReset:ve,handleChange:Ee})=>e.createElement(o.l0,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(k.T,{primaryAction:e.createElement(R.k,{gap:2},e.createElement(v.z,{variant:"secondary",onClick:()=>{ve(),te.current.resetForm()},size:"L"},j({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(v.z,{onClick:ae,loading:_,size:"L"},j({id:"global.save",defaultMessage:"Save"}))),title:j({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:j({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(o.rU,{startIcon:e.createElement(N.Z,null),to:"/settings/roles"},j({id:"global.back",defaultMessage:"Back"}))}),e.createElement(S.D,null,e.createElement(R.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(P.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(R.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(R.k,{justifyContent:"space-between"},e.createElement(P.x,null,e.createElement(P.x,null,e.createElement(M.Z,{fontWeight:"bold"},j({id:"global.details",defaultMessage:"Details"}))),e.createElement(P.x,null,e.createElement(M.Z,{variant:"pi",textColor:"neutral600"},j({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(de,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(A.r,{gap:4},e.createElement(I.P,{col:6},e.createElement(y.o,{name:"name",error:K.name&&j({id:K.name}),label:j({id:"global.name",defaultMessage:"Name"}),onChange:Ee,value:V.name})),e.createElement(I.P,{col:6},e.createElement(u.g,{label:j({id:"global.description",defaultMessage:"Description"}),name:"description",error:K.description&&j({id:K.description}),onChange:Ee},V.description))))),!Ze&&!Me?e.createElement(P.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(Y.Z,{isFormDisabled:!1,ref:te,permissions:$e,layout:he})):e.createElement(P.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(o.dO,null))))))))};function Oe(){return e.createElement(o.O4,{permissions:ie.Z.settings.roles.create},e.createElement(Ce,null))}},7247:function(w,F,r){"use strict";r.d(F,{Z:function(){return _n}});var e=r(32735),C=r(60216),o=r.n(C),x=r(24989),k=r(91215),R=r(39291),v=r(3653),S=r(23973),P=r.n(S),M=r(86834),A=r.n(M),I=r(67879),y=r(72850),u=r(8471),N=r(98978),Q=r.n(N),z=r(15974),fe=r(96441),T=r(87933),X=r(44426),me=r(33795),f=r.n(me),q=r(9086),Y=r.n(q),ee=r(67927),ie=r(45112),le=r(41415);const Se=u.ZP.div`
|
|
10
10
|
position: relative;
|
|
11
11
|
|
|
12
|
-
${({hasConditions:t,disabled:n,theme:
|
|
12
|
+
${({hasConditions:t,disabled:n,theme:a})=>t&&`
|
|
13
13
|
&:before {
|
|
14
14
|
content: '';
|
|
15
15
|
position: absolute;
|
|
@@ -18,17 +18,17 @@
|
|
|
18
18
|
width: 6px;
|
|
19
19
|
height: 6px;
|
|
20
20
|
border-radius: ${20/16}rem;;
|
|
21
|
-
background: ${n?
|
|
21
|
+
background: ${n?a.colors.neutral100:a.colors.primary600};
|
|
22
22
|
}
|
|
23
23
|
`}
|
|
24
|
-
`,ye=({onClick:t,className:n,hasConditions:
|
|
24
|
+
`,ye=({onClick:t,className:n,hasConditions:a,variant:s})=>{const{formatMessage:i}=(0,I.Z)();return e.createElement(Se,{hasConditions:a,className:n},e.createElement(le.z,{variant:s,startIcon:e.createElement(ie.Z,null),onClick:t},i({id:"global.settings",defaultMessage:"Settings"})))};ye.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},ye.propTypes={onClick:o().func.isRequired,className:o().string,hasConditions:o().bool,variant:o().string};var de=(0,u.ZP)(ye)``,Ce=r(85025),Oe=r(55225),G=r(11299),re=r(31600),D=r(49372),j=r(11406),_=r(97889),se=r(81346),ce=r.n(se),te=r(23940),ue=r.n(te),Ie=r(47328);const Re=t=>Object.values(t).map(n=>Object.entries(n).filter(([,a])=>a).map(([a])=>a)).flat(),Ze=t=>t.reduce((n,[a,s])=>(n.push({label:ue()(a),children:s.map(i=>({label:i.displayName,value:i.id}))}),n),[]),he=(t,n)=>t.map(([,a])=>a).flat().reduce((a,s)=>({[s.id]:n.includes(s.id),...a}),{}),$e=({arrayOfOptionsGroupedByCategory:t,isFormDisabled:n,isGrey:a,label:s,name:i,onChange:l,value:d})=>{const{formatMessage:c}=(0,I.Z)(),p=m=>{l(i,he(t,m))};return e.createElement(T.k,{as:"li",background:a?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(T.k,{paddingLeft:6,style:{width:180}},e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},c({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(D.Z,{variant:"sigma",title:s,textColor:"primary600",ellipsis:!0},c({id:`Settings.roles.form.permissions.${s.toLowerCase()}`,defaultMessage:s})),e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",c({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(y.x,{style:{maxWidth:430,width:"100%"}},e.createElement(Ie.Q,{id:i,customizeContent:m=>`${m.length} currently selected`,onChange:p,value:Re(d),options:Ze(t),disabled:n})))};$e.propTypes={arrayOfOptionsGroupedByCategory:o().array.isRequired,isFormDisabled:o().bool.isRequired,isGrey:o().bool.isRequired,label:o().string.isRequired,name:o().string.isRequired,value:o().object.isRequired,onChange:o().func.isRequired};var Me=$e;const Be=(t,n)=>t.reduce((a,s)=>(a[s.id]=f()(n,s.id,!1),a),{}),De=(t,n)=>t.reduce((a,s)=>{const[i,l]=s,d=Be(l,n);return a[i]=d,a},{});var je=(t,n,a)=>t.reduce((s,i)=>{const l=f()(n,[...i.pathToConditionsObject,"conditions"],{}),d=De(a,l);return s[i.pathToConditionsObject.join("..")]=d,s},{});const ae=({actions:t,headerBreadCrumbs:n,isFormDisabled:a,onClosed:s,onToggle:i})=>{const{formatMessage:l}=(0,I.Z)(),{availableConditions:d,modifiedData:c,onChangeConditions:p}=(0,ee.$_)(),m=(0,e.useMemo)(()=>Object.entries(ce()(d,"category")),[d]),g=t.filter(({isDisplayed:h,hasSomeActionsSelected:Z,hasAllActionsSelected:L})=>h&&(Z||L)),E=(0,e.useMemo)(()=>je(g,c,m),[g,c,m]),[O,W]=(0,e.useState)(E),$=(h,Z)=>{W((0,_.ZP)(L=>{L[h]||(L[h]={}),L[h].default||(L[h].default={}),L[h].default=Z}))},b=()=>{const h=Object.entries(O).reduce((Z,L)=>{const[B,ne]=L,U=Object.values(ne).reduce((J,H)=>({...J,...H}),{});return Z[B]=U,Z},{});p(h),i()};return e.createElement(Ce.P,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(Oe.x,null,e.createElement(G.O,{id:"condition-modal-breadcrumbs",label:n.join(", ")},n.map(h=>e.createElement(G.$,{key:h},ue()(l({id:h,defaultMessage:h})))))),e.createElement(re.f,null,g.length===0&&e.createElement(D.Z,null,l({id:"Settings.permissions.conditions.no-actions",defaultMessage:"You first need to select actions (create, read, update, ...) before defining conditions on them."})),e.createElement("ul",null,g.map(({actionId:h,label:Z,pathToConditionsObject:L},B)=>{const ne=L.join("..");return e.createElement(Me,{key:h,arrayOfOptionsGroupedByCategory:m,label:Z,isFormDisabled:a,isGrey:B%2===0,name:ne,onChange:$,value:f()(O,ne,{})})}))),e.createElement(j.m,{startActions:e.createElement(le.z,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(le.z,{onClick:b},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};ae.propTypes={actions:o().arrayOf(o().shape({actionId:o().string.isRequired,checkboxName:o().string,hasSomeActionsSelected:o().bool.isRequired,hasAllActionsSelected:o().bool,isDisplayed:o().bool.isRequired,label:o().string})).isRequired,headerBreadCrumbs:o().arrayOf(o().string).isRequired,isFormDisabled:o().bool.isRequired,onClosed:o().func.isRequired,onToggle:o().func.isRequired};var V=ae;const K=`${120/16}rem`,ve=`${200/16}rem`,Ee=`${53/16}rem`;var Ge=u.ZP.div`
|
|
25
25
|
width: ${K};
|
|
26
26
|
`,st=(0,u.ZP)(T.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 Ke=({children:t,isCollapsable:n,isActive:
|
|
31
|
+
`;const Ke=({children:t,isCollapsable:n,isActive:a,isFormDisabled:s,label:i,onChange:l,onClick:d,checkboxName:c,someChecked:p,value:m})=>{const{formatMessage:g}=(0,I.Z)();return e.createElement(T.k,{alignItems:"center",paddingLeft:6,style:{width:ve,flexShrink:0}},e.createElement(y.x,{paddingRight:2},e.createElement(X.C,{name:c,"aria-label":g({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:s,onValueChange:E=>l({target:{name:c,value:E}}),indeterminate:p,value:m})),e.createElement(st,{title:i,alignItems:"center",isCollapsable:n,...n&&{onClick:d,"aria-expanded":a,onKeyDown:({key:E})=>(E==="Enter"||E===" ")&&d(),tabIndex:0,role:"button"}},e.createElement(D.Z,{fontWeight:a?"bold":"",textColor:a?"primary600":"neutral800",ellipsis:!0},ue()(i)),t))};Ke.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},Ke.propTypes={checkboxName:o().string,children:o().node,label:o().string.isRequired,isCollapsable:o().bool,isFormDisabled:o().bool.isRequired,onChange:o().func,onClick:o().func.isRequired,someChecked:o().bool,value:o().bool,isActive:o().bool.isRequired};var ot=(0,e.memo)(Ke),Bt=r(72091),Ft=r.n(Bt),Nt=r(85973),xe=r.n(Nt);const rt=t=>xe()(t)?Ft()(Object.values(t).map(n=>xe()(n)?rt(n):n)):[];var Le=rt,Ue=t=>t?Object.keys(t).reduce((n,a)=>(a!=="conditions"&&(n[a]=t[a]),n),{}):null,Pe=t=>{const n=Ue(t),a=Le(n);if(!a.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=a.every(l=>l),i=a.some(l=>l)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:i}},Wt=(t,n,a)=>t.map(({actionId:s,isDisplayed:i,applyToProperties:l,label:d})=>{if(!i)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:i};const c=[...a.split(".."),s],p=A()(l)?[...c,"properties","enabled"]:c,m=p.join(".."),g=f()(n,[...c,"conditions"],null),E=Le(g).some(b=>b);if(A()(l)){const b=f()(n,p,!1);return{actionId:s,checkboxName:m,hasAllActionsSelected:b,hasConditions:E,hasSomeActionsSelected:b,isDisplayed:i,isParentCheckbox:!1,label:d,pathToConditionsObject:c}}const O=f()(n,p,null),{hasAllActionsSelected:W,hasSomeActionsSelected:$}=Pe(O);return{actionId:s,checkboxName:m,hasAllActionsSelected:W,hasConditions:E,hasSomeActionsSelected:$,isDisplayed:i,isParentCheckbox:!0,label:d,pathToConditionsObject:c}}),Vt=r(16899),Fe=(0,u.ZP)(Vt.Z)`
|
|
32
32
|
display: none;
|
|
33
33
|
width: ${10/16}rem;
|
|
34
34
|
transform: rotate(${({$isActive:t})=>t?"180":"0"}deg);
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
&:focus-within {
|
|
64
|
-
${({theme:
|
|
64
|
+
${({theme:a,isActive:s})=>ze(a,s)}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
`,at=u.ZP.div`
|
|
@@ -105,17 +105,17 @@
|
|
|
105
105
|
position: absolute;
|
|
106
106
|
right: 9px;
|
|
107
107
|
transform: translateY(10px);
|
|
108
|
-
`,ct=({availableActions:t,isActive:n,isGrey:
|
|
108
|
+
`,ct=({availableActions:t,isActive:n,isGrey:a,isFormDisabled:s,label:i,onClickToggle:l,pathToData:d})=>{const[c,p]=(0,e.useState)(!1),{formatMessage:m}=(0,I.Z)(),{modifiedData:g,onChangeParentCheckbox:E,onChangeSimpleCheckbox:O}=(0,ee.$_)(),W=()=>{p(U=>!U)},$=()=>{p(!1)},b=f()(g,d.split(".."),{}),h=(0,e.useMemo)(()=>Object.keys(b).reduce((U,J)=>(U[J]=Y()(b[J],"conditions"),U),{}),[b]),{hasAllActionsSelected:Z,hasSomeActionsSelected:L}=Pe(h),B=(0,e.useMemo)(()=>Wt(t,g,d),[t,g,d]),ne=B.some(({hasConditions:U})=>U);return e.createElement(Ht,{isActive:n},e.createElement(at,{isGrey:a},e.createElement(ot,{isCollapsable:!0,isFormDisabled:s,label:i,checkboxName:d,onChange:E,onClick:l,someChecked:L,value:Z,isActive:n},e.createElement(lt,{paddingLeft:2},n?e.createElement(z.Z,null):e.createElement(fe.Z,null))),e.createElement(T.k,{style:{flex:1}},B.map(({actionId:U,hasConditions:J,hasAllActionsSelected:H,hasSomeActionsSelected:ge,isDisplayed:ke,isParentCheckbox:oe,checkboxName:be,label:We})=>ke?oe?e.createElement(it,{key:U,justifyContent:"center",alignItems:"center"},J&&e.createElement(dt,null),e.createElement(X.C,{disabled:s,name:be,"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${We} ${i}`}),onValueChange:Ae=>{E({target:{name:be,value:Ae}})},indeterminate:ge,value:H})):e.createElement(it,{key:U,justifyContent:"center",alignItems:"center"},J&&e.createElement(dt,null),e.createElement(X.C,{disabled:s,indeterminate:J,name:be,onValueChange:Ae=>{O({target:{name:be,value:Ae}})},value:H})):e.createElement(Ge,{key:U}))),c&&e.createElement(V,{headerBreadCrumbs:[i,"Settings.permissions.conditions.conditions"],actions:B,isFormDisabled:s,onClosed:$,onToggle:W})),e.createElement(Gt,null,e.createElement(de,{onClick:W,hasConditions:ne})))};ct.propTypes={availableActions:o().array.isRequired,isActive:o().bool.isRequired,isGrey:o().bool.isRequired,isFormDisabled:o().bool.isRequired,label:o().string.isRequired,onClickToggle:o().func.isRequired,pathToData:o().string.isRequired};var Kt=ct,Ut=(t,n)=>t.map(a=>{const s=Array.isArray(a.applyToProperties)&&a.applyToProperties.indexOf(n)!==-1&&a.isDisplayed;return{label:a.label,actionId:a.actionId,isActionRelatedToCurrentProperty:s}});const ut=(0,u.ZP)(T.k)`
|
|
109
109
|
width: ${K};
|
|
110
110
|
flex-shrink: 0;
|
|
111
111
|
`,zt=(0,u.ZP)(T.k)`
|
|
112
112
|
width: ${ve};
|
|
113
113
|
height: ${Ee};
|
|
114
114
|
flex-shrink: 0;
|
|
115
|
-
`,mt=({headers:t,label:n})=>{const{formatMessage:
|
|
115
|
+
`,mt=({headers:t,label:n})=>{const{formatMessage:a}=(0,I.Z)(),s=a({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:n});return e.createElement(T.k,null,e.createElement(zt,{alignItems:"center",paddingLeft:6},e.createElement(D.Z,{variant:"sigma",textColor:"neutral500"},s)),t.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(ut,{justifyContent:"center",key:i.label},e.createElement(D.Z,{variant:"sigma",textColor:"neutral500"},a({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(ut,{key:i.label})))};mt.propTypes={headers:o().arrayOf(o().shape({label:o().string.isRequired,isActionRelatedToCurrentProperty:o().bool.isRequired})).isRequired,label:o().string.isRequired};var Xt=mt;const Yt=u.ZP.span`
|
|
116
116
|
color: ${({theme:t})=>t.colors.danger700};
|
|
117
117
|
padding-left: ${({theme:t})=>t.spaces[1]}px;
|
|
118
|
-
`;var pt=()=>e.createElement(Yt,null,"*"),wt=(t,n)=>t.map(
|
|
118
|
+
`;var pt=()=>e.createElement(Yt,null,"*"),wt=(t,n)=>t.map(a=>{const s=Array.isArray(a.subjects)&&a.subjects.indexOf(n)!==-1;return{...a,isDisplayed:s}});const Jt=(0,u.ZP)(y.x)`
|
|
119
119
|
transform: translate(-4px, -12px);
|
|
120
120
|
|
|
121
121
|
&:before {
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
* {
|
|
134
134
|
fill: ${({theme:t,color:n})=>t.colors[n]};
|
|
135
135
|
}
|
|
136
|
-
`,Xe=t=>e.createElement(Jt,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:
|
|
136
|
+
`,Xe=t=>e.createElement(Jt,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:o().string};var qt=(0,e.memo)(Xe);const gt=(0,u.ZP)(T.k)`
|
|
137
137
|
width: ${K};
|
|
138
138
|
position: relative;
|
|
139
139
|
`,_t=(0,u.ZP)(T.k)`
|
|
@@ -163,7 +163,7 @@
|
|
|
163
163
|
background-color: ${({theme:t})=>t.colors.primary200};
|
|
164
164
|
border-top-left-radius: 2px;
|
|
165
165
|
border-top-right-radius: 2px;
|
|
166
|
-
`,Ye=({childrenForm:t,isFormDisabled:n,recursiveLevel:
|
|
166
|
+
`,Ye=({childrenForm:t,isFormDisabled:n,recursiveLevel:a,pathToDataFromActionRow:s,propertyActions:i,parentName:l,propertyName:d})=>{const{formatMessage:c}=(0,I.Z)(),{modifiedData:p,onChangeParentCheckbox:m,onChangeSimpleCheckbox:g}=(0,ee.$_)(),[E,O]=(0,e.useState)(null),W=b=>{O(h=>h===b?null:b)},$=(0,e.useMemo)(()=>E?t.find(({value:b})=>b===E):null,[E,t]);return e.createElement(en,null,e.createElement(sn,null),t.map(({label:b,value:h,required:Z,children:L},B)=>{const ne=B+1<t.length,U=Array.isArray(L),J=E===h;return e.createElement(tn,{key:h,isVisible:ne},e.createElement(_t,null,e.createElement(qt,{color:"primary200"}),e.createElement(T.k,{style:{flex:1}},e.createElement(nn,{level:a,isActive:J,isCollapsable:U},e.createElement(st,{alignItems:"center",isCollapsable:U,...U&&{onClick:()=>W(h),"aria-expanded":J,onKeyDown:({key:H})=>(H==="Enter"||H===" ")&&W(h),tabIndex:0,role:"button"},title:b},e.createElement(D.Z,{ellipsis:!0},ue()(b)),Z&&e.createElement(pt,null),e.createElement(Fe,{$isActive:J}))),e.createElement(T.k,{style:{flex:1}},i.map(({actionId:H,label:ge,isActionRelatedToCurrentProperty:ke})=>{if(!ke)return e.createElement(Ge,{key:H});const oe=[...s.split(".."),H,"properties",d,...l.split(".."),h],be=f()(p,oe,!1);if(!L)return e.createElement(gt,{key:ge,justifyContent:"center",alignItems:"center"},e.createElement(X.C,{disabled:n,name:oe.join(".."),"aria-label":c({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${b} ${ge}`}),onValueChange:Te=>{g({target:{name:oe.join(".."),value:Te}})},value:be}));const{hasAllActionsSelected:We,hasSomeActionsSelected:Ae}=Pe(be);return e.createElement(gt,{key:ge,justifyContent:"center",alignItems:"center"},e.createElement(X.C,{key:ge,disabled:n,name:oe.join(".."),"aria-label":c({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${l} ${b} ${ge}`}),onValueChange:Te=>{m({target:{name:oe.join(".."),value:Te}})},value:We,indeterminate:Ae}))})))),$&&J&&e.createElement(y.x,{paddingBottom:2},e.createElement(Ye,{isFormDisabled:n,parentName:`${l}..${h}`,pathToDataFromActionRow:s,propertyActions:i,propertyName:d,recursiveLevel:a+1,childrenForm:$.children})))}))};Ye.propTypes={childrenForm:o().array.isRequired,isFormDisabled:o().bool.isRequired,parentName:o().string.isRequired,pathToDataFromActionRow:o().string.isRequired,propertyActions:o().array.isRequired,propertyName:o().string.isRequired,recursiveLevel:o().number.isRequired};var on=(0,e.memo)(Ye);const rn=t=>t.reduce((a,s)=>(s.isActionRelatedToCurrentProperty&&a.push(s.actionId),a),[]);var an=(t,n,a,s,i)=>{const d=rn(t).reduce((c,p)=>{const m=[...a.split(".."),p,"properties",s,i],g=f()(n,m,!1);return c[p]=g,c},{});return Pe(d)};const ft=(0,u.ZP)(T.k)`
|
|
167
167
|
width: ${K};
|
|
168
168
|
position: relative;
|
|
169
169
|
`,ln=(0,u.ZP)(T.k)`
|
|
@@ -180,28 +180,28 @@
|
|
|
180
180
|
}
|
|
181
181
|
`}
|
|
182
182
|
${({isActive:t,theme:n})=>t&&Ne(n)};
|
|
183
|
-
`,we=({childrenForm:t,label:n,isFormDisabled:
|
|
183
|
+
`,we=({childrenForm:t,label:n,isFormDisabled:a,name:s,required:i,pathToData:l,propertyActions:d,propertyName:c,isOdd:p})=>{const{formatMessage:m}=(0,I.Z)(),[g,E]=(0,e.useState)(null),{modifiedData:O,onChangeCollectionTypeLeftActionRowCheckbox:W,onChangeParentCheckbox:$,onChangeSimpleCheckbox:b}=(0,ee.$_)(),h=g===s,Z=(0,e.useMemo)(()=>Array.isArray(t)?t:[],[t]),L=Z.length>0,B=(0,e.useCallback)(()=>{L&&E(H=>H===s?null:s)},[L,s]),ne=({target:{value:H}})=>{W(l,c,s,H)},{hasAllActionsSelected:U,hasSomeActionsSelected:J}=(0,e.useMemo)(()=>an(d,O,l,c,s),[d,O,l,c,s]);return e.createElement(e.Fragment,null,e.createElement(ln,{alignItems:"center",isCollapsable:L,isActive:h,background:p?"neutral100":"neutral0"},e.createElement(T.k,null,e.createElement(ot,{onChange:ne,onClick:B,isCollapsable:L,isFormDisabled:a,label:n,someChecked:J,value:U,isActive:h},i&&e.createElement(pt,null),e.createElement(Fe,{$isActive:h})),e.createElement(T.k,null,d.map(({label:H,isActionRelatedToCurrentProperty:ge,actionId:ke})=>{if(!ge)return e.createElement(Ge,{key:H});const oe=[...l.split(".."),ke,"properties",c,s];if(!L){const Te=f()(O,oe,!1);return e.createElement(ft,{key:ke,justifyContent:"center",alignItems:"center"},e.createElement(X.C,{disabled:a,name:oe.join(".."),"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${H}`}),onValueChange:es=>{b({target:{name:oe.join(".."),value:es}})},value:Te}))}const be=f()(O,oe,{}),{hasAllActionsSelected:We,hasSomeActionsSelected:Ae}=Pe(be);return e.createElement(ft,{key:H,justifyContent:"center",alignItems:"center"},e.createElement(X.C,{disabled:a,name:oe.join(".."),onValueChange:Te=>{$({target:{name:oe.join(".."),value:Te}})},"aria-label":m({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:`${s} ${H}`}),value:We,indeterminate:Ae}))})))),h&&e.createElement(on,{childrenForm:Z,isFormDisabled:a,parentName:s,pathToDataFromActionRow:l,propertyName:c,propertyActions:d,recursiveLevel:0}))};we.defaultProps={childrenForm:[],required:!1},we.propTypes={childrenForm:o().array,label:o().string.isRequired,isFormDisabled:o().bool.isRequired,name:o().string.isRequired,pathToData:o().string.isRequired,propertyActions:o().array.isRequired,propertyName:o().string.isRequired,required:o().bool,isOdd:o().bool.isRequired};var dn=(0,e.memo)(we);const cn=u.ZP.div`
|
|
184
184
|
display: inline-flex;
|
|
185
185
|
flex-direction: column;
|
|
186
186
|
min-width: 0;
|
|
187
|
-
`,ht=({availableActions:t,childrenForm:n,isFormDisabled:
|
|
187
|
+
`,ht=({availableActions:t,childrenForm:n,isFormDisabled:a,label:s,pathToData:i,propertyName:l})=>{const d=(0,e.useMemo)(()=>Ut(t,l),[t,l]);return e.createElement(cn,null,e.createElement(Xt,{label:s,headers:d}),e.createElement(y.x,null,n.map(({children:c,label:p,value:m,required:g},E)=>e.createElement(dn,{childrenForm:c,key:m,label:p,isFormDisabled:a,name:m,required:g,propertyActions:d,pathToData:i,propertyName:l,isOdd:E%2===0}))))};ht.propTypes={childrenForm:o().array.isRequired,availableActions:o().array.isRequired,isFormDisabled:o().bool.isRequired,label:o().string.isRequired,pathToData:o().string.isRequired,propertyName:o().string.isRequired};var un=ht;const mn=u.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
|
-
`,yt=({allActions:t,contentTypeName:n,label:
|
|
192
|
+
`,yt=({allActions:t,contentTypeName:n,label:a,index:s,isActive:i,isFormDisabled:l,onClickToggleCollapse:d,pathToData:c,properties:p})=>{const m=(0,e.useCallback)(()=>{d(n)},[n,d]),g=(0,e.useMemo)(()=>wt(t,n),[t,n]);return e.createElement(mn,{isActive:i},e.createElement(Kt,{availableActions:g,isActive:i,isGrey:s%2===0,isFormDisabled:l,label:a,onClickToggle:m,pathToData:c}),i&&p.map(({label:E,value:O,children:W})=>e.createElement(un,{availableActions:g,childrenForm:W,isFormDisabled:l,label:E,pathToData:c,propertyName:O,key:O})))};yt.propTypes={allActions:o().array.isRequired,contentTypeName:o().string.isRequired,index:o().number.isRequired,isActive:o().bool.isRequired,isFormDisabled:o().bool.isRequired,label:o().string.isRequired,onClickToggleCollapse:o().func.isRequired,pathToData:o().string.isRequired,properties:o().array.isRequired};var pn=yt;const Je=({actions:t,isFormDisabled:n,pathToData:a,subjects:s})=>{const[i,l]=(0,e.useState)(null),d=c=>{l(i===c?null:c)};return s.map(({uid:c,label:p,properties:m},g)=>e.createElement(pn,{allActions:t,key:c,contentTypeName:c,label:p,isActive:i===c,isFormDisabled:n,index:g,onClickToggleCollapse:d,pathToData:`${a}..${c}`,properties:m}))};Je.defaultProps={actions:[],subjects:[]},Je.propTypes={actions:o().array.isRequired,isFormDisabled:o().bool.isRequired,pathToData:o().string.isRequired,subjects:o().arrayOf(o().shape({uid:o().string.isRequired,label:o().string.isRequired,properties:o().array.isRequired}))};var gn=(0,e.memo)(Je),fn=t=>t.filter(({subjects:n})=>n&&n.length);const hn=t=>t.map(({actionId:n})=>n),yn=(t,n)=>t.reduce((a,s)=>(Object.keys(n).forEach(i=>{const l=f()(n,[i,s],{}),d={[i]:Ue(l)};a[s]?a[s]={...a[s],...d}:a[s]=d}),a),{});var Cn=(t,n)=>{const a=hn(t),s=yn(a,n);return Object.keys(s).reduce((l,d)=>(l[d]=Pe(s[d]),l),{})};const vn=(0,u.ZP)(T.k)`
|
|
193
193
|
width: ${K};
|
|
194
194
|
flex-shrink: 0;
|
|
195
|
-
`,Qe=({actions:t,isFormDisabled:n,kind:
|
|
195
|
+
`,Qe=({actions:t,isFormDisabled:n,kind:a})=>{const{formatMessage:s}=(0,I.Z)(),{modifiedData:i,onChangeCollectionTypeGlobalActionCheckbox:l}=(0,ee.$_)(),d=(0,e.useMemo)(()=>fn(t),[t]),c=(0,e.useMemo)(()=>Cn(d,i[a]),[i,d,a]);return e.createElement(y.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:ve}},e.createElement(T.k,{gap:0},d.map(({label:p,actionId:m})=>e.createElement(vn,{direction:"column",alignItems:"center",justifyContent:"center",key:m,gap:3},e.createElement(D.Z,{variant:"sigma",textColor:"neutral500"},s({id:`Settings.roles.form.permissions.${p.toLowerCase()}`,defaultMessage:p})),e.createElement(X.C,{disabled:n,onValueChange:g=>{l(a,m,g)},name:m,"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:f()(c,[m,"hasAllActionsSelected"],!1),indeterminate:f()(c,[m,"hasSomeActionsSelected"],!1)})))))};Qe.defaultProps={actions:[]},Qe.propTypes={actions:o().arrayOf(o().shape({label:o().string.isRequired,actionId:o().string.isRequired,subjects:o().array.isRequired})),isFormDisabled:o().bool.isRequired,kind:o().string.isRequired};var En=(0,e.memo)(Qe);const bn=(0,u.ZP)(y.x)`
|
|
196
196
|
overflow-x: auto;
|
|
197
|
-
`,Ct=({isFormDisabled:t,kind:n,layout:{actions:
|
|
197
|
+
`,Ct=({isFormDisabled:t,kind:n,layout:{actions:a,subjects:s}})=>{const i=Q()([...s],"label");return e.createElement(bn,{background:"neutral0"},e.createElement(En,{actions:a,kind:n,isFormDisabled:t}),e.createElement(gn,{actions:a,isFormDisabled:t,pathToData:n,subjects:i}))};Ct.propTypes={isFormDisabled:o().bool.isRequired,kind:o().string.isRequired,layout:o().shape({actions:o().array,subjects:o().arrayOf(o().shape({uid:o().string.isRequired,label:o().string.isRequired,properties:o().array.isRequired}))}).isRequired};var vt=(0,e.memo)(Ct),xn=r(66694);const Et=({children:t,value:n})=>e.createElement(xn.$l.Provider,{value:n},t);Et.propTypes={children:o().node.isRequired,value:o().exact({availableConditions:o().array.isRequired,modifiedData:o().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:o().func.isRequired,onChangeConditions:o().func.isRequired,onChangeSimpleCheckbox:o().func.isRequired,onChangeParentCheckbox:o().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:o().func.isRequired}).isRequired};var Rn=Et,Pn=r(83828),An=r(61762),Tn=r(89966),bt=r(8284),Sn=r(15335),On=r(5803),$n=(t,n,a)=>t.map(s=>{const i=[...a,s.action,"properties","enabled"],l=f()(n,i,!1),d=f()(n,[...a,s.action,"conditions"],{}),c=Le(d).some(p=>p);return{...s,isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:c,label:s.displayName,actionId:s.action,pathToConditionsObject:[...a,s.action]}}),Mn=t=>{const n=Object.entries(t).reduce((s,i)=>{const[l,{conditions:d}]=i;return s[l]=d,s},{});return Le(n).some(s=>s)};const Dn=u.ZP.div`
|
|
198
198
|
flex: 1;
|
|
199
199
|
align-self: center;
|
|
200
200
|
border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
|
|
201
201
|
`,jn=u.ZP.div`
|
|
202
202
|
position: relative;
|
|
203
203
|
word-break: keep-all;
|
|
204
|
-
${({hasConditions:t,disabled:n,theme:
|
|
204
|
+
${({hasConditions:t,disabled:n,theme:a})=>t&&`
|
|
205
205
|
&:before {
|
|
206
206
|
content: '';
|
|
207
207
|
position: absolute;
|
|
@@ -210,10 +210,10 @@
|
|
|
210
210
|
width: ${6/16}rem;
|
|
211
211
|
height: ${6/16}rem;
|
|
212
212
|
border-radius: ${20/16}rem;
|
|
213
|
-
background: ${n?
|
|
213
|
+
background: ${n?a.colors.neutral100:a.colors.primary600};
|
|
214
214
|
}
|
|
215
215
|
`}
|
|
216
|
-
`,xt=({categoryName:t,isFormDisabled:n,subCategoryName:o,actions:s,pathToData:i})=>{const[l,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:p,onChangeSimpleCheckbox:m}=(0,ee.$_)(),{formatMessage:g}=(0,I.Z)(),E=f()(c,i,{}),O=(0,e.useMemo)(()=>Object.keys(E).reduce((B,ne)=>(B[ne]=Ue(E[ne]),B),{}),[E]),{hasAllActionsSelected:W,hasSomeActionsSelected:$}=Pe(O),b=()=>{d(B=>!B)},h=()=>{d(!1)},Z=$n(s,c,i),L=Mn(f()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(y.x,null,e.createElement(T.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(y.x,{paddingRight:4},e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},o)),e.createElement(Dn,null),e.createElement(y.x,{paddingLeft:4},e.createElement(bt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:$,value:W},g({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(T.k,{paddingTop:6,paddingBottom:6},e.createElement(Sn.r,{gap:2,style:{flex:1}},Z.map(({checkboxName:B,value:ne,action:U,displayName:J,hasConditions:H})=>e.createElement(On.P,{col:3,key:U},e.createElement(jn,{disabled:n,hasConditions:H},e.createElement(bt.X,{name:B,disabled:n,onValueChange:ge=>{m({target:{name:B,value:ge}})},value:ne},J))))),e.createElement(de,{hasConditions:L,onClick:b}))),l&&e.createElement(V,{headerBreadCrumbs:[t,o],actions:Z,isFormDisabled:n,onClosed:h,onToggle:b}))};xt.propTypes={actions:r().array.isRequired,categoryName:r().string.isRequired,isFormDisabled:r().bool.isRequired,subCategoryName:r().string.isRequired,pathToData:r().array.isRequired};var Ln=xt;const qe=({childrenForm:t,kind:n,name:o,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:p}=(0,I.Z)(),m=()=>{d(o)},g=(0,e.useMemo)(()=>o.split("::").pop(),[o]);return e.createElement(Pn.U,{expanded:s,onToggle:m,id:`accordion-${o}`,variant:l?"primary":"secondary"},e.createElement(An.B,{title:ue()(g),description:`${p({id:"Settings.permissions.category"},{category:g})} ${n==="plugins"?"plugin":n}`}),e.createElement(Tn.v,null,e.createElement(y.x,{padding:6},t.map(({actions:E,subCategoryName:O,subCategoryId:W})=>e.createElement(Ln,{key:O,actions:E,categoryName:g,isFormDisabled:i,subCategoryName:O,pathToData:[...c,W]})))))};qe.defaultProps={},qe.propTypes={childrenForm:r().array.isRequired,isOpen:r().bool.isRequired,isFormDisabled:r().bool.isRequired,isWhite:r().bool.isRequired,kind:r().string.isRequired,name:r().string.isRequired,onOpenCategory:r().func.isRequired,pathToData:r().array.isRequired};var kn=qe;const Rt=({isFormDisabled:t,kind:n,layout:o})=>{const[s,i]=(0,e.useState)(null),l=d=>{i(d===s?null:d)};return e.createElement(y.x,{padding:6,background:"neutral0"},o.map(({category:d,categoryId:c,childrenForm:p},m)=>e.createElement(kn,{key:d,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:m%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};Rt.propTypes={isFormDisabled:r().bool.isRequired,kind:r().string.isRequired,layout:r().arrayOf(r().shape({category:r().string.isRequired,categoryId:r().string.isRequired,childrenForm:r().arrayOf(r().shape({actions:r().array.isRequired})).isRequired}).isRequired).isRequired};var Pt=Rt,In=a(86349),Zn=a.n(In),Bn=a(3040),pe=a.n(Bn),At=(t,n,o)=>t.find(s=>s.action===n&&s.subject===o);const Tt=(t,n=[])=>t.reduce((o,s)=>(o[s.id]=n.indexOf(s.id)!==-1,o),{}),St=({children:t},n,o="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:St(i,n,`${o}${i.value}.`)};const l=n.indexOf(`${o}${i.value}`)!==-1;return s[i.value]=l,s},{}),Fn=(t,n,o)=>t.reduce((s,i)=>{const l=n.properties.find(({value:d})=>d===i);if(l){const d=f()(o,["properties",l.value],[]),c=St(l,d);s.properties[i]=c}return s},{properties:{}}),Nn=(t,n)=>n.reduce((o,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(o[s]=i),o},{});var Ot=({subjects:t},n,o,s=[])=>n.reduce((i,l)=>{const d=l.subjects,c=Nn(t,d);if(A()(c))return i;const p=Object.keys(c).reduce((m,g)=>{const{actionId:E,applyToProperties:O}=l,b=c[g].properties.map(({value:B})=>B).every(B=>(O||[]).indexOf(B)===-1),h=At(s,E,g),Z=Tt(o,f()(h,"conditions",[]));if(A()(O)||b)return pe()(m,[g,E],{properties:{enabled:h!==void 0},conditions:Z}),m;const L=Fn(O,c[g],h);return pe()(m,[g,E],{...L,conditions:Z}),m},{});return Zn()(i,p)},{});const Wn=(t,n,o)=>t.reduce((s,i)=>{const l=At(o,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Tt(n,l?.conditions??[])},s},{}),Vn=(t,n,o)=>t.reduce((s,i)=>(s[i.subCategoryId]=Wn(i.actions,n,o),s),{});var $t=(t,n,o=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const d=Vn(l,n,o);return s[i]=d,s},{});const Mt=t=>t.split(" ").join("-");var Dt=(t,n)=>Object.entries(ce()(t,n)).map(([o,s])=>({category:o,categoryId:Mt(o),childrenForm:Object.entries(ce()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Mt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:o,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:Dt(l,"plugin"),settings:Dt(d,"category")},p={collectionTypes:Ot(s,s.actions||[],o,n),singleTypes:Ot(i,i.actions||[],o,n),plugins:$t(c.plugins,o,n),settings:$t(c.settings,o,n)};return{initialData:p,modifiedData:p,layouts:c}},Gn=a(99381),_e=a.n(Gn);const jt=t=>Object.keys(t).reduce((n,o)=>{const s=t[o];if(xe()(s)&&!P()(s,"conditions"))return{...n,[o]:jt(s)};if(xe()(s)&&P()(s,"conditions")&&!Le(Y()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[o]:{...s,conditions:l}}}return n[o]=s,n},{});var et=jt;const Lt=(t,n)=>Object.keys(t).reduce((o,s)=>{const i=t[s];return s==="conditions"?(o[s]=i,o):xe()(i)?{...o,[s]:Lt(i,n)}:(o[s]=n,o)},{});var He=Lt;const Kn={initialData:{},modifiedData:{},layouts:{}};var Un=(t,n)=>(0,_.ZP)(t,o=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(f()(t,d)).forEach(c=>{const p=f()(t,[...d,c,i],void 0);if(p){let m=He(p,l);if(!l&&m.conditions){const g=He(m.conditions,!1);m={...m,conditions:g}}pe()(o,[...d,c,i],m)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:d}=n;let c=_e()(t.modifiedData);const p=s.split(".."),m=f()(c,p,{});Object.keys(m).forEach(g=>{if(P()(m[g],`properties.${i}`)){const E=f()(m,[g,"properties",i,l]),O=[...p,g,"properties",i,l];if(!xe()(E))pe()(c,O,d);else{const W=He(E,d);pe()(c,O,W)}}}),d||(c=et(c)),pe()(o,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;pe()(o,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=_e()(t.modifiedData);pe()(s,[...n.keys.split("..")],n.value),n.value||(s=et(s)),pe()(o,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=_e()(t.modifiedData);const c=f()(d,l,{}),p=He(c,i);pe()(d,l,p),i||(d=et(d)),pe()(o,["modifiedData"],d);break}case"RESET_FORM":{o.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{o.initialData=t.modifiedData;break}default:return o}});const tt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),zn=t=>{const[n,{conditions:o}]=t;return{action:n,subject:null,conditions:tt(o),properties:{}}},Xn=t=>Object.values(t).reduce((n,o)=>{const s=Object.entries(o).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=zn(l);return i.push(c),i},[]);return[...n,...s]},[]);var kt=t=>Object.values(t).reduce((n,o)=>{const s=Xn(o);return[...n,...s]},[]);const It=(t,n="")=>Object.entries(t).reduce((o,s)=>{const[i,l]=s;return xe()(l)?[...o,...It(l,`${n}${i}.`)]:(l&&!xe()(l)&&o.push(`${n}${i}`),o)},[]),Yn=(t,n,{conditions:o,properties:s})=>Object.entries(s).reduce((i,l)=>{const[d,c]=l;return i.properties[d]=It(c),i},{action:t,subject:n,conditions:tt(o),properties:{}}),wn=(t,n,{conditions:o})=>({action:t,subject:n,properties:{},conditions:tt(o)}),Jn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,d]=i;if(!Le(d).some(m=>m))return s;if(!d?.properties?.enabled){const m=Yn(l,t,d);return[...s,m]}if(!d.properties.enabled)return s;const p=wn(l,t,d);return s.push(p),s},[]);var Zt=t=>Object.entries(t).reduce((o,s)=>{const[i,l]=s,d=Jn(i,l);return[...o,...d]},[]),Qn=t=>{const n=kt(t.plugins),o=kt(t.settings),s=Zt(t.collectionTypes),i=Zt(t.singleTypes);return[...n,...o,...s,...i]},qn=[{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 nt=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:o},s)=>{const[{initialData:i,layouts:l,modifiedData:d},c]=(0,e.useReducer)(Un,Kn,()=>Hn(t,o)),{formatMessage:p}=(0,I.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const $=(0,x.e5)(i.collectionTypes,d.collectionTypes),b=(0,x.e5)(i.singleTypes,d.singleTypes),h={...$,...b};let Z;return A()(h)?Z=!1:Z=Object.values(h).some(L=>Object.values(L).some(B=>P()(B,"conditions"))),{permissionsToSend:Qn(d),didUpdateConditions:Z}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const m=($,b,h,Z)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:$,propertyName:b,rowName:h,value:Z})},g=($,b,h)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:$,actionId:b,value:h})},E=$=>{c({type:"ON_CHANGE_CONDITIONS",conditions:$})},O=(0,e.useCallback)(({target:{name:$,value:b}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:$,value:b})},[]),W=(0,e.useCallback)(({target:{name:$,value:b}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:$,value:b})},[]);return e.createElement(Rn,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:E,onChangeSimpleCheckbox:O,onChangeParentCheckbox:W,onChangeCollectionTypeLeftActionRowCheckbox:m,onChangeCollectionTypeGlobalActionCheckbox:g}},e.createElement(k.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,qn.map($=>e.createElement(R.O,{key:$.id},p({id:$.labelId,defaultMessage:$.defaultMessage})))),e.createElement(v.n,{style:{position:"relative"}},e.createElement(v.x,null,e.createElement(vt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(vt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(Pt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(Pt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});nt.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},nt.propTypes={layout:r().object,isFormDisabled:r().bool.isRequired,permissions:r().array};var _n=(0,e.memo)(nt)},33778:function(w,F,a){"use strict";a.r(F),a.d(F,{default:function(){return G}});var e=a(32735),C=a(43383),r=a(53038),x=a(83983),k=a(27649),R=a(82055),v=a(87933),S=a(41415),P=a(17e3),M=a(72850),A=a(92802),I=a(29439),y=a(33795),u=a.n(y),N=a(67879),Q=a(7247),z=a(49372),fe=a(15335),T=a(5803),X=a(10369),me=a(10508),f=a(60216),q=a.n(f);const Y=({disabled:re,role:D,values:j,errors:_,onChange:se,onBlur:ce})=>{const{formatMessage:te}=(0,N.Z)();return e.createElement(M.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(v.k,{justifyContent:"space-between"},e.createElement(M.x,null,e.createElement(M.x,null,e.createElement(z.Z,{fontWeight:"bold"},D?D.name:te({id:"global.details",defaultMessage:"Details"}))),e.createElement(M.x,null,e.createElement(z.Z,{textColor:"neutral500",variant:"pi"},D?D.description:te({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},te({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:D.usersCount}))),e.createElement(fe.r,{gap:4},e.createElement(T.P,{col:6},e.createElement(X.o,{disabled:re,name:"name",error:_.name&&te({id:_.name}),label:te({id:"global.name",defaultMessage:"Name"}),onChange:se,onBlur:ce,value:j.name||""})),e.createElement(T.P,{col:6},e.createElement(me.g,{disabled:re,label:te({id:"global.description",defaultMessage:"Description"}),name:"description",error:_.name&&te({id:_.name}),onChange:se,onBlur:ce},j.description||"")))))};Y.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},Y.propTypes={disabled:q().bool,errors:q().object.isRequired,onBlur:q().func.isRequired,onChange:q().func.isRequired,role:q().object,values:q().object};var ee=Y,ie=a(67927),le=a(24346),ye=le.Ry().shape({name:le.Z_().required(C.I0.required)}),Ce=()=>{const re=(0,C.lm)(),{formatMessage:D}=(0,N.Z)(),{params:{id:j}}=(0,r.$B)("/settings/roles/:id"),[_,se]=(0,e.useState)(!1),ce=(0,e.useRef)(),{lockApp:te,unlockApp:ue}=(0,C.o1)(),{trackUsage:Ie}=(0,C.rS)(),{isLoading:Re,data:Ze}=(0,ie.U_)(j),{role:he,permissions:$e,isLoading:Me,onSubmitSucceeded:Be}=(0,ie.Dq)(j),{put:De}=(0,C.kY)(),Ve=async ae=>{try{te(),se(!0);const{permissionsToSend:V,didUpdateConditions:K}=ce.current.getPermissions();await De(`/admin/roles/${j}`,ae),he.code!=="strapi-super-admin"&&(await De(`/admin/roles/${j}/permissions`,{permissions:V}),K&&Ie("didUpdateConditions")),ce.current.setFormAfterSubmit(),Be({name:ae.name,description:ae.description}),re({type:"success",message:{id:"notification.success.saved"}})}catch(V){console.error(V.response);const K=u()(V,"response.payload.message","An error occured"),ve=u()(V,"response.payload.data.permissions[0]",K);re({type:"warning",message:ve})}finally{se(!1),ue()}},je=he.code==="strapi-super-admin";return e.createElement(k.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(A.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:Ve,validationSchema:ye,validateOnChange:!1},({handleSubmit:ae,values:V,errors:K,handleChange:ve,handleBlur:Ee})=>e.createElement("form",{onSubmit:ae},e.createElement(R.T,{primaryAction:e.createElement(v.k,{gap:2},e.createElement(S.z,{disabled:he.code==="strapi-super-admin",onClick:ae,loading:_,size:"L"},D({id:"global.save",defaultMessage:"Save"}))),title:D({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:D({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(C.rU,{startIcon:e.createElement(I.Z,null),to:"/settings/roles"},D({id:"global.back",defaultMessage:"Back"}))}),e.createElement(P.D,null,e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(ee,{isLoading:Me,disabled:je,errors:K,values:V,onChange:ve,onBlur:Ee,role:he}),!Re&&!Me?e.createElement(M.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(Q.Z,{isFormDisabled:je,permissions:$e,ref:ce,layout:Ze})):e.createElement(M.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},G=()=>{const re=(0,e.useMemo)(()=>({read:x.Z.settings.roles.read,update:x.Z.settings.roles.update}),[]),{isLoading:D,allowedActions:{canRead:j,canUpdate:_}}=(0,C.ss)(re);return D?e.createElement(C.dO,null):!j&&!_?e.createElement(r.l_,{to:"/"}):e.createElement(Ce,null)}},84802:function(w){function F(a,e,C,r){for(var x=-1,k=a==null?0:a.length;++x<k;){var R=a[x];e(r,R,C(R),a)}return r}w.exports=F},62435:function(w,F,a){var e=a(56671);function C(r,x,k,R){return e(r,function(v,S,P){x(R,v,k(v),P)}),R}w.exports=C},85580:function(w,F,a){var e=a(84802),C=a(62435),r=a(88904),x=a(77236);function k(R,v){return function(S,P){var M=x(S)?e:C,A=v?v():{};return M(S,R,r(P,2),A)}}w.exports=k},72091:function(w,F,a){var e=a(40314),C=1/0;function r(x){var k=x==null?0:x.length;return k?e(x,C):[]}w.exports=r},81346:function(w,F,a){var e=a(40999),C=a(85580),r=Object.prototype,x=r.hasOwnProperty,k=C(function(R,v,S){x.call(R,S)?R[S].push(v):e(R,S,[v])});w.exports=k},83828:function(w,F,a){"use strict";a.d(F,{U:function(){return I},y:function(){return M}});var e=a(74512),C=a(32735),r=a(8471),x=a(91045),k=a(72850),R=a(87933),v=a(74971),S=a(49372);const P=({theme:y,expanded:u,variant:N,disabled:Q,error:z})=>z?`1px solid ${y.colors.danger600} !important`:Q?`1px solid ${y.colors.neutral150}`:u?`1px solid ${y.colors.primary600}`:N==="primary"?`1px solid ${y.colors.neutral0}`:`1px solid ${y.colors.neutral100}`,M=(0,r.ZP)(S.Z)``,A=(0,r.ZP)(k.x)`
|
|
216
|
+
`,xt=({categoryName:t,isFormDisabled:n,subCategoryName:a,actions:s,pathToData:i})=>{const[l,d]=(0,e.useState)(!1),{modifiedData:c,onChangeParentCheckbox:p,onChangeSimpleCheckbox:m}=(0,ee.$_)(),{formatMessage:g}=(0,I.Z)(),E=f()(c,i,{}),O=(0,e.useMemo)(()=>Object.keys(E).reduce((B,ne)=>(B[ne]=Ue(E[ne]),B),{}),[E]),{hasAllActionsSelected:W,hasSomeActionsSelected:$}=Pe(O),b=()=>{d(B=>!B)},h=()=>{d(!1)},Z=$n(s,c,i),L=Mn(f()(c,[...i],{}));return e.createElement(e.Fragment,null,e.createElement(y.x,null,e.createElement(T.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(y.x,{paddingRight:4},e.createElement(D.Z,{variant:"sigma",textColor:"neutral600"},a)),e.createElement(Dn,null),e.createElement(y.x,{paddingLeft:4},e.createElement(bt.X,{name:i.join(".."),disabled:n,onValueChange:B=>{p({target:{name:i.join(".."),value:B}})},indeterminate:$,value:W},g({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(T.k,{paddingTop:6,paddingBottom:6},e.createElement(Sn.r,{gap:2,style:{flex:1}},Z.map(({checkboxName:B,value:ne,action:U,displayName:J,hasConditions:H})=>e.createElement(On.P,{col:3,key:U},e.createElement(jn,{disabled:n,hasConditions:H},e.createElement(bt.X,{name:B,disabled:n,onValueChange:ge=>{m({target:{name:B,value:ge}})},value:ne},J))))),e.createElement(de,{hasConditions:L,onClick:b}))),l&&e.createElement(V,{headerBreadCrumbs:[t,a],actions:Z,isFormDisabled:n,onClosed:h,onToggle:b}))};xt.propTypes={actions:o().array.isRequired,categoryName:o().string.isRequired,isFormDisabled:o().bool.isRequired,subCategoryName:o().string.isRequired,pathToData:o().array.isRequired};var Ln=xt;const qe=({childrenForm:t,kind:n,name:a,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:d,pathToData:c})=>{const{formatMessage:p}=(0,I.Z)(),m=()=>{d(a)},g=(0,e.useMemo)(()=>a.split("::").pop(),[a]);return e.createElement(Pn.U,{expanded:s,onToggle:m,id:`accordion-${a}`,variant:l?"primary":"secondary"},e.createElement(An.B,{title:ue()(g),description:`${p({id:"Settings.permissions.category"},{category:g})} ${n==="plugins"?"plugin":n}`}),e.createElement(Tn.v,null,e.createElement(y.x,{padding:6},t.map(({actions:E,subCategoryName:O,subCategoryId:W})=>e.createElement(Ln,{key:O,actions:E,categoryName:g,isFormDisabled:i,subCategoryName:O,pathToData:[...c,W]})))))};qe.defaultProps={},qe.propTypes={childrenForm:o().array.isRequired,isOpen:o().bool.isRequired,isFormDisabled:o().bool.isRequired,isWhite:o().bool.isRequired,kind:o().string.isRequired,name:o().string.isRequired,onOpenCategory:o().func.isRequired,pathToData:o().array.isRequired};var kn=qe;const Rt=({isFormDisabled:t,kind:n,layout:a})=>{const[s,i]=(0,e.useState)(null),l=d=>{i(d===s?null:d)};return e.createElement(y.x,{padding:6,background:"neutral0"},a.map(({category:d,categoryId:c,childrenForm:p},m)=>e.createElement(kn,{key:d,childrenForm:p,kind:n,isFormDisabled:t,isOpen:s===d,isWhite:m%2===1,name:d,onOpenCategory:l,pathToData:[n,c]})))};Rt.propTypes={isFormDisabled:o().bool.isRequired,kind:o().string.isRequired,layout:o().arrayOf(o().shape({category:o().string.isRequired,categoryId:o().string.isRequired,childrenForm:o().arrayOf(o().shape({actions:o().array.isRequired})).isRequired}).isRequired).isRequired};var Pt=Rt,In=r(86349),Zn=r.n(In),Bn=r(3040),pe=r.n(Bn),At=(t,n,a)=>t.find(s=>s.action===n&&s.subject===a);const Tt=(t,n=[])=>t.reduce((a,s)=>(a[s.id]=n.indexOf(s.id)!==-1,a),{}),St=({children:t},n,a="")=>t.reduce((s,i)=>{if(i.children)return{...s,[i.value]:St(i,n,`${a}${i.value}.`)};const l=n.indexOf(`${a}${i.value}`)!==-1;return s[i.value]=l,s},{}),Fn=(t,n,a)=>t.reduce((s,i)=>{const l=n.properties.find(({value:d})=>d===i);if(l){const d=f()(a,["properties",l.value],[]),c=St(l,d);s.properties[i]=c}return s},{properties:{}}),Nn=(t,n)=>n.reduce((a,s)=>{const i=t.find(({uid:l})=>l===s)||null;return i&&(a[s]=i),a},{});var Ot=({subjects:t},n,a,s=[])=>n.reduce((i,l)=>{const d=l.subjects,c=Nn(t,d);if(A()(c))return i;const p=Object.keys(c).reduce((m,g)=>{const{actionId:E,applyToProperties:O}=l,b=c[g].properties.map(({value:B})=>B).every(B=>(O||[]).indexOf(B)===-1),h=At(s,E,g),Z=Tt(a,f()(h,"conditions",[]));if(A()(O)||b)return pe()(m,[g,E],{properties:{enabled:h!==void 0},conditions:Z}),m;const L=Fn(O,c[g],h);return pe()(m,[g,E],{...L,conditions:Z}),m},{});return Zn()(i,p)},{});const Wn=(t,n,a)=>t.reduce((s,i)=>{const l=At(a,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:Tt(n,l?.conditions??[])},s},{}),Vn=(t,n,a)=>t.reduce((s,i)=>(s[i.subCategoryId]=Wn(i.actions,n,a),s),{});var $t=(t,n,a=[])=>t.reduce((s,{categoryId:i,childrenForm:l})=>{const d=Vn(l,n,a);return s[i]=d,s},{});const Mt=t=>t.split(" ").join("-");var Dt=(t,n)=>Object.entries(ce()(t,n)).map(([a,s])=>({category:a,categoryId:Mt(a),childrenForm:Object.entries(ce()(s,"subCategory")).map(([i,l])=>({subCategoryName:i,subCategoryId:Mt(i),actions:l}))})),Hn=(t,n)=>{const{conditions:a,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:d}}=t,c={collectionTypes:s,singleTypes:i,plugins:Dt(l,"plugin"),settings:Dt(d,"category")},p={collectionTypes:Ot(s,s.actions||[],a,n),singleTypes:Ot(i,i.actions||[],a,n),plugins:$t(c.plugins,a,n),settings:$t(c.settings,a,n)};return{initialData:p,modifiedData:p,layouts:c}},Gn=r(99381),_e=r.n(Gn);const jt=t=>Object.keys(t).reduce((n,a)=>{const s=t[a];if(xe()(s)&&!P()(s,"conditions"))return{...n,[a]:jt(s)};if(xe()(s)&&P()(s,"conditions")&&!Le(Y()(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((d,c)=>(d[c]=!1,d),{});return{...n,[a]:{...s,conditions:l}}}return n[a]=s,n},{});var et=jt;const Lt=(t,n,a=!1)=>Object.keys(t).reduce((s,i)=>{const l=t[i];return i==="conditions"&&!a?(s[i]=l,s):xe()(l)?{...s,[i]:Lt(l,n,i==="fields")}:(s[i]=n,s)},{});var He=Lt;const Kn={initialData:{},modifiedData:{},layouts:{}};var Un=(t,n)=>(0,_.ZP)(t,a=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=n,d=["modifiedData",s];Object.keys(f()(t,d)).forEach(c=>{const p=f()(t,[...d,c,i],void 0);if(p){let m=He(p,l);if(!l&&m.conditions){const g=He(m.conditions,!1);m={...m,conditions:g}}pe()(a,[...d,c,i],m)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:d}=n;let c=_e()(t.modifiedData);const p=s.split(".."),m=f()(c,p,{});Object.keys(m).forEach(g=>{if(P()(m[g],`properties.${i}`)){const E=f()(m,[g,"properties",i,l]),O=[...p,g,"properties",i,l];if(!xe()(E))pe()(c,O,d);else{const W=He(E,d);pe()(c,O,W)}}}),d||(c=et(c)),pe()(a,"modifiedData",c);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[i,l]=s;pe()(a,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=_e()(t.modifiedData);pe()(s,[...n.keys.split("..")],n.value),n.value||(s=et(s)),pe()(a,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=n,l=[...s.split("..")];let d=_e()(t.modifiedData);const c=f()(d,l,{}),p=He(c,i);pe()(d,l,p),i||(d=et(d)),pe()(a,["modifiedData"],d);break}case"RESET_FORM":{a.modifiedData=t.initialData;break}case"SET_FORM_AFTER_SUBMIT":{a.initialData=t.modifiedData;break}default:return a}});const tt=t=>Object.entries(t).filter(([,n])=>n).map(([n])=>n),zn=t=>{const[n,{conditions:a}]=t;return{action:n,subject:null,conditions:tt(a),properties:{}}},Xn=t=>Object.values(t).reduce((n,a)=>{const s=Object.entries(a).reduce((i,l)=>{const[,{properties:{enabled:d}}]=l;if(!d)return i;const c=zn(l);return i.push(c),i},[]);return[...n,...s]},[]);var kt=t=>Object.values(t).reduce((n,a)=>{const s=Xn(a);return[...n,...s]},[]);const It=(t,n="")=>Object.entries(t).reduce((a,s)=>{const[i,l]=s;return xe()(l)?[...a,...It(l,`${n}${i}.`)]:(l&&!xe()(l)&&a.push(`${n}${i}`),a)},[]),Yn=(t,n,{conditions:a,properties:s})=>Object.entries(s).reduce((i,l)=>{const[d,c]=l;return i.properties[d]=It(c),i},{action:t,subject:n,conditions:tt(a),properties:{}}),wn=(t,n,{conditions:a})=>({action:t,subject:n,properties:{},conditions:tt(a)}),Jn=(t,n)=>Object.entries(n).reduce((s,i)=>{const[l,d]=i;if(!Le(d).some(m=>m))return s;if(!d?.properties?.enabled){const m=Yn(l,t,d);return[...s,m]}if(!d.properties.enabled)return s;const p=wn(l,t,d);return s.push(p),s},[]);var Zt=t=>Object.entries(t).reduce((a,s)=>{const[i,l]=s,d=Jn(i,l);return[...a,...d]},[]),Qn=t=>{const n=kt(t.plugins),a=kt(t.settings),s=Zt(t.collectionTypes),i=Zt(t.singleTypes);return[...n,...a,...s,...i]},qn=[{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 nt=(0,e.forwardRef)(({layout:t,isFormDisabled:n,permissions:a},s)=>{const[{initialData:i,layouts:l,modifiedData:d},c]=(0,e.useReducer)(Un,Kn,()=>Hn(t,a)),{formatMessage:p}=(0,I.Z)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const $=(0,x.e5)(i.collectionTypes,d.collectionTypes),b=(0,x.e5)(i.singleTypes,d.singleTypes),h={...$,...b};let Z;return A()(h)?Z=!1:Z=Object.values(h).some(L=>Object.values(L).some(B=>P()(B,"conditions"))),{permissionsToSend:Qn(d),didUpdateConditions:Z}},resetForm(){c({type:"RESET_FORM"})},setFormAfterSubmit(){c({type:"SET_FORM_AFTER_SUBMIT"})}}));const m=($,b,h,Z)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:$,propertyName:b,rowName:h,value:Z})},g=($,b,h)=>{c({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:$,actionId:b,value:h})},E=$=>{c({type:"ON_CHANGE_CONDITIONS",conditions:$})},O=(0,e.useCallback)(({target:{name:$,value:b}})=>{c({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:$,value:b})},[]),W=(0,e.useCallback)(({target:{name:$,value:b}})=>{c({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:$,value:b})},[]);return e.createElement(Rn,{value:{availableConditions:t.conditions,modifiedData:d,onChangeConditions:E,onChangeSimpleCheckbox:O,onChangeParentCheckbox:W,onChangeCollectionTypeLeftActionRowCheckbox:m,onChangeCollectionTypeGlobalActionCheckbox:g}},e.createElement(k.v,{id:"tabs",label:p({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(R.m,null,qn.map($=>e.createElement(R.O,{key:$.id},p({id:$.labelId,defaultMessage:$.defaultMessage})))),e.createElement(v.n,{style:{position:"relative"}},e.createElement(v.x,null,e.createElement(vt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(vt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(Pt,{layout:l.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(v.x,null,e.createElement(Pt,{layout:l.settings,kind:"settings",isFormDisabled:n})))))});nt.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},nt.propTypes={layout:o().object,isFormDisabled:o().bool.isRequired,permissions:o().array};var _n=(0,e.memo)(nt)},33778:function(w,F,r){"use strict";r.r(F),r.d(F,{default:function(){return G}});var e=r(32735),C=r(24989),o=r(53038),x=r(83983),k=r(27649),R=r(82055),v=r(87933),S=r(41415),P=r(17e3),M=r(72850),A=r(92802),I=r(29439),y=r(33795),u=r.n(y),N=r(67879),Q=r(7247),z=r(49372),fe=r(15335),T=r(5803),X=r(10369),me=r(10508),f=r(60216),q=r.n(f);const Y=({disabled:re,role:D,values:j,errors:_,onChange:se,onBlur:ce})=>{const{formatMessage:te}=(0,N.Z)();return e.createElement(M.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(v.k,{justifyContent:"space-between"},e.createElement(M.x,null,e.createElement(M.x,null,e.createElement(z.Z,{fontWeight:"bold"},D?D.name:te({id:"global.details",defaultMessage:"Details"}))),e.createElement(M.x,null,e.createElement(z.Z,{textColor:"neutral500",variant:"pi"},D?D.description:te({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(S.z,{disabled:!0,variant:"secondary"},te({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:D.usersCount}))),e.createElement(fe.r,{gap:4},e.createElement(T.P,{col:6},e.createElement(X.o,{disabled:re,name:"name",error:_.name&&te({id:_.name}),label:te({id:"global.name",defaultMessage:"Name"}),onChange:se,onBlur:ce,value:j.name||""})),e.createElement(T.P,{col:6},e.createElement(me.g,{disabled:re,label:te({id:"global.description",defaultMessage:"Description"}),name:"description",error:_.name&&te({id:_.name}),onChange:se,onBlur:ce},j.description||"")))))};Y.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},Y.propTypes={disabled:q().bool,errors:q().object.isRequired,onBlur:q().func.isRequired,onChange:q().func.isRequired,role:q().object,values:q().object};var ee=Y,ie=r(67927),le=r(24346),ye=le.Ry().shape({name:le.Z_().required(C.I0.required)}),Ce=()=>{const re=(0,C.lm)(),{formatMessage:D}=(0,N.Z)(),{params:{id:j}}=(0,o.$B)("/settings/roles/:id"),[_,se]=(0,e.useState)(!1),ce=(0,e.useRef)(),{lockApp:te,unlockApp:ue}=(0,C.o1)(),{trackUsage:Ie}=(0,C.rS)(),{isLoading:Re,data:Ze}=(0,ie.U_)(j),{role:he,permissions:$e,isLoading:Me,onSubmitSucceeded:Be}=(0,ie.Dq)(j),{put:De}=(0,C.kY)(),Ve=async ae=>{try{te(),se(!0);const{permissionsToSend:V,didUpdateConditions:K}=ce.current.getPermissions();await De(`/admin/roles/${j}`,ae),he.code!=="strapi-super-admin"&&(await De(`/admin/roles/${j}/permissions`,{permissions:V}),K&&Ie("didUpdateConditions")),ce.current.setFormAfterSubmit(),Be({name:ae.name,description:ae.description}),re({type:"success",message:{id:"notification.success.saved"}})}catch(V){console.error(V.response);const K=u()(V,"response.payload.message","An error occured"),ve=u()(V,"response.payload.data.permissions[0]",K);re({type:"warning",message:ve})}finally{se(!1),ue()}},je=he.code==="strapi-super-admin";return e.createElement(k.o,null,e.createElement(C.SL,{name:"Roles"}),e.createElement(A.J9,{enableReinitialize:!0,initialValues:{name:he.name,description:he.description},onSubmit:Ve,validationSchema:ye,validateOnChange:!1},({handleSubmit:ae,values:V,errors:K,handleChange:ve,handleBlur:Ee})=>e.createElement("form",{onSubmit:ae},e.createElement(R.T,{primaryAction:e.createElement(v.k,{gap:2},e.createElement(S.z,{disabled:he.code==="strapi-super-admin",onClick:ae,loading:_,size:"L"},D({id:"global.save",defaultMessage:"Save"}))),title:D({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:D({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(C.rU,{startIcon:e.createElement(I.Z,null),to:"/settings/roles"},D({id:"global.back",defaultMessage:"Back"}))}),e.createElement(P.D,null,e.createElement(v.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(ee,{isLoading:Me,disabled:je,errors:K,values:V,onChange:ve,onBlur:Ee,role:he}),!Re&&!Me?e.createElement(M.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(Q.Z,{isFormDisabled:je,permissions:$e,ref:ce,layout:Ze})):e.createElement(M.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(C.dO,null)))))))},G=()=>{const re=(0,e.useMemo)(()=>({read:x.Z.settings.roles.read,update:x.Z.settings.roles.update}),[]),{isLoading:D,allowedActions:{canRead:j,canUpdate:_}}=(0,C.ss)(re);return D?e.createElement(C.dO,null):!j&&!_?e.createElement(o.l_,{to:"/"}):e.createElement(Ce,null)}},84802:function(w){function F(r,e,C,o){for(var x=-1,k=r==null?0:r.length;++x<k;){var R=r[x];e(o,R,C(R),r)}return o}w.exports=F},62435:function(w,F,r){var e=r(56671);function C(o,x,k,R){return e(o,function(v,S,P){x(R,v,k(v),P)}),R}w.exports=C},85580:function(w,F,r){var e=r(84802),C=r(62435),o=r(88904),x=r(77236);function k(R,v){return function(S,P){var M=x(S)?e:C,A=v?v():{};return M(S,R,o(P,2),A)}}w.exports=k},72091:function(w,F,r){var e=r(40314),C=1/0;function o(x){var k=x==null?0:x.length;return k?e(x,C):[]}w.exports=o},81346:function(w,F,r){var e=r(40999),C=r(85580),o=Object.prototype,x=o.hasOwnProperty,k=C(function(R,v,S){x.call(R,S)?R[S].push(v):e(R,S,[v])});w.exports=k},83828:function(w,F,r){"use strict";r.d(F,{U:function(){return I},y:function(){return M}});var e=r(74512),C=r(32735),o=r(8471),x=r(91045),k=r(72850),R=r(87933),v=r(74971),S=r(49372);const P=({theme:y,expanded:u,variant:N,disabled:Q,error:z})=>z?`1px solid ${y.colors.danger600} !important`:Q?`1px solid ${y.colors.neutral150}`:u?`1px solid ${y.colors.primary600}`:N==="primary"?`1px solid ${y.colors.neutral0}`:`1px solid ${y.colors.neutral100}`,M=(0,o.ZP)(S.Z)``,A=(0,o.ZP)(k.x)`
|
|
217
217
|
border: ${P};
|
|
218
218
|
|
|
219
219
|
&:hover:not([aria-disabled='true']) {
|
|
@@ -235,7 +235,7 @@
|
|
|
235
235
|
background: ${({theme:y})=>y.colors.primary200};
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
|
-
`,I=({children:y,disabled:u=!1,error:N,expanded:Q=!1,hasErrorMessage:z=!0,id:fe,onToggle:T,toggle:X,size:me="M",variant:f="primary",shadow:q})=>{const Y=(0,v.M)(fe),ee=C.useMemo(()=>({expanded:Q,onToggle:T,toggle:X,id:Y,size:me,variant:f,disabled:u}),[u,Q,Y,T,me,X,f]);return(0,e.jsxs)(x.S.Provider,{value:ee,children:[(0,e.jsx)(A,{"data-strapi-expanded":Q,disabled:u,"aria-disabled":u,expanded:Q,hasRadius:!0,variant:f,error:N,shadow:q,children:y}),N&&z&&(0,e.jsx)(k.x,{paddingTop:1,children:(0,e.jsx)(S.Z,{variant:"pi",textColor:"danger600",children:N})})]})}},89966:function(w,F,
|
|
238
|
+
`,I=({children:y,disabled:u=!1,error:N,expanded:Q=!1,hasErrorMessage:z=!0,id:fe,onToggle:T,toggle:X,size:me="M",variant:f="primary",shadow:q})=>{const Y=(0,v.M)(fe),ee=C.useMemo(()=>({expanded:Q,onToggle:T,toggle:X,id:Y,size:me,variant:f,disabled:u}),[u,Q,Y,T,me,X,f]);return(0,e.jsxs)(x.S.Provider,{value:ee,children:[(0,e.jsx)(A,{"data-strapi-expanded":Q,disabled:u,"aria-disabled":u,expanded:Q,hasRadius:!0,variant:f,error:N,shadow:q,children:y}),N&&z&&(0,e.jsx)(k.x,{paddingTop:1,children:(0,e.jsx)(S.Z,{variant:"pi",textColor:"danger600",children:N})})]})}},89966:function(w,F,r){"use strict";r.d(F,{v:function(){return x}});var e=r(74512),C=r(91045),o=r(72850);const x=({children:k,...R})=>{const{expanded:v,id:S}=(0,C.A)();if(!v)return null;const P=`accordion-content-${S}`,M=`accordion-label-${S}`,A=`accordion-desc-${S}`;return(0,e.jsx)(o.x,{role:"region",id:P,"aria-labelledby":M,"aria-describedby":A,...R,children:k})}},91045:function(w,F,r){"use strict";r.d(F,{A:function(){return o},S:function(){return C}});var e=r(32735);const C=(0,e.createContext)({disabled:!1,expanded:!1,id:"",size:"M",variant:"primary"}),o=()=>(0,e.useContext)(C)},61762:function(w,F,r){"use strict";r.d(F,{B:function(){return y}});var e=r(74512),C=r(16899),o=r(8471),x=r(83828),k=r(91045);const R=({expanded:u,disabled:N,variant:Q})=>{let z="neutral100";return u?z="primary100":N?z="neutral150":Q==="primary"&&(z="neutral0"),z};var v=r(87933),S=r(99140),P=r(7563),M=r(49372);const A=(0,o.ZP)(P.A)`
|
|
239
239
|
text-align: left;
|
|
240
240
|
|
|
241
241
|
// necessary to make the ellipsis prop work on the title
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
fill: ${({theme:u,expanded:N})=>N?u.colors.primary600:u.colors.neutral500};
|
|
252
252
|
}
|
|
253
253
|
}
|
|
254
|
-
`,I=(0,
|
|
254
|
+
`,I=(0,o.ZP)(v.k)`
|
|
255
255
|
min-height: ${({theme:u,size:N})=>u.sizes.accordions[N]};
|
|
256
256
|
border-radius: ${({theme:u,expanded:N})=>N?`${u.borderRadius} ${u.borderRadius} 0 0`:u.borderRadius};
|
|
257
257
|
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
}
|
|
265
|
-
`,y=({title:u,description:N,as:Q="span",togglePosition:z="right",action:fe,...T})=>{const{onToggle:X,toggle:me,expanded:f,id:q,size:Y,variant:ee,disabled:ie}=(0,k.A)(),le=`accordion-content-${q}`,Se=`accordion-label-${q}`,ye=`accordion-desc-${q}`,de=Y==="M"?6:4,Ce=Y==="M"?de:de-2,Oe=R({expanded:f,disabled:ie,variant:ee}),G={as:Q,fontWeight:Y==="S"?"bold":void 0,id:Se,textColor:f?"primary600":"neutral700",ellipsis:!0,variant:Y==="M"?"delta":void 0},re=f?"primary600":"neutral600",D=f?"primary200":"neutral200",j=Y==="M"?`${32/16}rem`:`${24/16}rem`,_=()=>{ie||(me&&!X?(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'),me()):X&&X())},se=(0,e.jsx)(v.k,{justifyContent:"center",borderRadius:"50%",height:j,width:j,transform:f?"rotate(180deg)":void 0,"data-strapi-dropdown":!0,"aria-hidden":!0,as:"span",background:D,cursor:ie?"not-allowed":"pointer",onClick:_,shrink:0,children:(0,e.jsx)(S.J,{as:C.Z,width:Y==="M"?`${11/16}rem`:`${8/16}rem`,color:f?"primary600":"neutral600"})});return(0,e.jsx)(I,{paddingBottom:Ce,paddingLeft:de,paddingRight:de,paddingTop:Ce,background:Oe,expanded:f,size:Y,justifyContent:"space-between",cursor:ie?"not-allowed":"",children:(0,e.jsxs)(v.k,{gap:3,flex:1,maxWidth:"100%",children:[z==="left"&&se,(0,e.jsx)(A,{onClick:_,"aria-disabled":ie,"aria-expanded":f,"aria-controls":le,"aria-labelledby":Se,"data-strapi-accordion-toggle":!0,expanded:f,type:"button",flex:1,minWidth:0,...T,children:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(x.y,{...G,children:u}),N&&(0,e.jsx)(M.Z,{as:"p",id:ye,textColor:re,children:N})]})}),z==="right"&&(0,e.jsxs)(v.k,{gap:3,children:[se,fe]}),z==="left"&&fe]})})}},11299:function(w,F,
|
|
265
|
+
`,y=({title:u,description:N,as:Q="span",togglePosition:z="right",action:fe,...T})=>{const{onToggle:X,toggle:me,expanded:f,id:q,size:Y,variant:ee,disabled:ie}=(0,k.A)(),le=`accordion-content-${q}`,Se=`accordion-label-${q}`,ye=`accordion-desc-${q}`,de=Y==="M"?6:4,Ce=Y==="M"?de:de-2,Oe=R({expanded:f,disabled:ie,variant:ee}),G={as:Q,fontWeight:Y==="S"?"bold":void 0,id:Se,textColor:f?"primary600":"neutral700",ellipsis:!0,variant:Y==="M"?"delta":void 0},re=f?"primary600":"neutral600",D=f?"primary200":"neutral200",j=Y==="M"?`${32/16}rem`:`${24/16}rem`,_=()=>{ie||(me&&!X?(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'),me()):X&&X())},se=(0,e.jsx)(v.k,{justifyContent:"center",borderRadius:"50%",height:j,width:j,transform:f?"rotate(180deg)":void 0,"data-strapi-dropdown":!0,"aria-hidden":!0,as:"span",background:D,cursor:ie?"not-allowed":"pointer",onClick:_,shrink:0,children:(0,e.jsx)(S.J,{as:C.Z,width:Y==="M"?`${11/16}rem`:`${8/16}rem`,color:f?"primary600":"neutral600"})});return(0,e.jsx)(I,{paddingBottom:Ce,paddingLeft:de,paddingRight:de,paddingTop:Ce,background:Oe,expanded:f,size:Y,justifyContent:"space-between",cursor:ie?"not-allowed":"",children:(0,e.jsxs)(v.k,{gap:3,flex:1,maxWidth:"100%",children:[z==="left"&&se,(0,e.jsx)(A,{onClick:_,"aria-disabled":ie,"aria-expanded":f,"aria-controls":le,"aria-labelledby":Se,"data-strapi-accordion-toggle":!0,expanded:f,type:"button",flex:1,minWidth:0,...T,children:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(x.y,{...G,children:u}),N&&(0,e.jsx)(M.Z,{as:"p",id:ye,textColor:re,children:N})]})}),z==="right"&&(0,e.jsxs)(v.k,{gap:3,children:[se,fe]}),z==="left"&&fe]})})}},11299:function(w,F,r){"use strict";r.d(F,{$:function(){return P},O:function(){return M}});var e=r(74512),C=r(77277),o=r(8471),x=r(72850),k=r(87933),R=r(49372),v=r(3685);const S=(0,o.ZP)(k.k)`
|
|
266
266
|
svg {
|
|
267
267
|
height: ${10/16}rem;
|
|
268
268
|
width: ${10/16}rem;
|
|
@@ -277,4 +277,4 @@
|
|
|
277
277
|
color: ${({theme:A})=>A.colors.neutral800};
|
|
278
278
|
font-weight: ${({theme:A})=>A.fontWeights.bold};
|
|
279
279
|
}
|
|
280
|
-
`,P=({children:A})=>(0,e.jsxs)(S,{inline:!0,as:"li",children:[(0,e.jsx)(R.Z,{variant:"pi",textColor:"neutral600",children:A}),(0,e.jsx)(x.x,{"aria-hidden":!0,paddingLeft:3,paddingRight:3,children:(0,e.jsx)(C.Z,{})})]});P.displayName="Crumb";const M=({children:A,label:I,...y})=>(0,e.jsxs)(k.k,{...y,children:[(0,e.jsx)(v.T,{children:I}),(0,e.jsx)("ol",{"aria-hidden":!0,children:A})]});M.displayName="Breadcrumbs"},47328:function(w,F,
|
|
280
|
+
`,P=({children:A})=>(0,e.jsxs)(S,{inline:!0,as:"li",children:[(0,e.jsx)(R.Z,{variant:"pi",textColor:"neutral600",children:A}),(0,e.jsx)(x.x,{"aria-hidden":!0,paddingLeft:3,paddingRight:3,children:(0,e.jsx)(C.Z,{})})]});P.displayName="Crumb";const M=({children:A,label:I,...y})=>(0,e.jsxs)(k.k,{...y,children:[(0,e.jsx)(v.T,{children:I}),(0,e.jsx)("ol",{"aria-hidden":!0,children:A})]});M.displayName="Breadcrumbs"},47328:function(w,F,r){"use strict";r.d(F,{Q:function(){return R}});var e=r(32735),C=r(60216),o=r(84967);const x=({children:v,label:S,...P})=>{const M=v.map(A=>A.props.value);return e.createElement(e.Fragment,null,e.createElement(o.W,{"data-opt-group":!0,"data-opt-group-children":M,"aria-label":`${S}, ${v.length} items`,...P},S),v)};x.propTypes={children:C.arrayOf(C.node).isRequired,label:C.string.isRequired},x.displayName="OptGroup";var k=r(80084);const R=({options:v,...S})=>e.createElement(k.P,{multi:!0,...S},v.map(({label:P,value:M,children:A})=>A?e.createElement(x,{key:P,label:P},A?.map(I=>e.createElement(o.W,{key:I.value,value:I.value},I.label))):e.createElement(o.W,{key:M,value:M},P)));R.propTypes={options:C.arrayOf(C.object).isRequired}}}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{40874:function(T,l,e){e.r(l),e.d(l,{default:function(){return ne}});var t=e(32735),a=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{40874:function(T,l,e){e.r(l),e.d(l,{default:function(){return ne}});var t=e(32735),a=e(24989),s=e(53038),d=e(83983),i=e(20011),u=e(67879),n=e(60216),g=e.n(n),m=e(88423),c=e.n(m),E=e(33795),f=e.n(E),R=e(9086),Z=e.n(R),U=e(20108),A=e(92802),O=e(27649),S=e(82055),x=e(41415),z=e(17e3),W=e(72850),h=e(87933),$=e(49372),b=e(15335),j=e(5803),w=e(66456),N=e(29439),M=e(8997);const J=async y=>{const{get:P}=(0,a.tg)(),{data:o}=await P(`/admin/users/${y}`);return o.data},k=async(y,P)=>{const{put:o}=(0,a.tg)(),{data:v}=await o(`/admin/users/${y}`,P);return v.data};var q=[[{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}}]],ee=e(1057),te=e(4397);const ae=(()=>window&&window.strapi&&window.strapi.isEE?e(28890).Z:e(16325).Z)(),G=["email","firstname","lastname","username","isActive","roles"],Q=y=>{let{canUpdate:P}=y;const{formatMessage:o}=(0,u.Z)(),{params:{id:v}}=(0,s.$B)("/settings/users/:id"),{push:C}=(0,s.k6)(),{setUserDisplayName:Y}=(0,a.L7)(),_=(0,a.lm)(),{lockApp:oe,unlockApp:re}=(0,a.o1)();(0,a.go)();const{status:le,data:K}=(0,U.useQuery)(["user",v],()=>J(v),{retry:!1,onError(r){r.response.status===403&&(_({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),C("/")),console.log(r.response.status)}}),ie=async(r,p)=>{oe();try{const L=await k(v,Z()(r,"confirmPassword"));_({type:"success",message:o({id:"notification.success.saved",defaultMessage:"Saved"})});const D=a.I8.getUserInfo();if(v.toString()===D.id.toString()){a.I8.setUserInfo(L);const B=f()(r,"username")||(0,M.Pp)(r.firstname,r.lastname);Y(B)}p.setValues(c()(r,G))}catch(L){const D=(0,M.Iz)(L.response.data),B=Object.keys(D).reduce((H,I)=>(H[I]=D[I].id,H),{});p.setErrors(B),_({type:"warning",message:f()(L,"response.data.error.message","notification.error")})}re()},V=le!=="success",de=V?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},F=Object.keys(c()(K,G)).reduce((r,p)=>p==="roles"?(r[p]=(K?.roles||[]).map(L=>{let{id:D}=L;return D}),r):(r[p]=K?.[p],r),{}),ce=F.username||(0,M.Pp)(F.firstname,F.lastname),X=o(de,{name:ce});return V?t.createElement(O.o,{"aria-busy":"true"},t.createElement(a.SL,{name:"Users"}),t.createElement(S.T,{primaryAction:t.createElement(x.z,{disabled:!0,startIcon:t.createElement(w.Z,null),type:"button",size:"L"},o({id:"global.save",defaultMessage:"Save"})),title:X,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(N.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},o({id:"global.back",defaultMessage:"Back"}))}),t.createElement(z.D,null,t.createElement(a.dO,null))):t.createElement(O.o,null,t.createElement(a.SL,{name:"Users"}),t.createElement(A.J9,{onSubmit:ie,initialValues:F,validateOnChange:!1,validationSchema:ee.YM},r=>{let{errors:p,values:L,handleChange:D,isSubmitting:B}=r;return t.createElement(a.l0,null,t.createElement(S.T,{primaryAction:t.createElement(x.z,{disabled:B||!P,startIcon:t.createElement(w.Z,null),loading:B,type:"submit",size:"L"},o({id:"global.save",defaultMessage:"Save"})),title:X,navigationAction:t.createElement(a.rU,{startIcon:t.createElement(N.Z,null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},o({id:"global.back",defaultMessage:"Back"}))}),t.createElement(z.D,null,K?.registrationToken&&t.createElement(W.x,{paddingBottom:6},t.createElement(ae,{registrationToken:K.registrationToken})),t.createElement(h.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(W.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(h.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement($.Z,{variant:"delta",as:"h2"},o({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(b.r,{gap:5},q.map(H=>H.map(I=>t.createElement(j.P,(0,i.Z)({key:I.name},I.size),t.createElement(a.jm,(0,i.Z)({},I,{disabled:!P,error:p[I.name],onChange:D,value:L[I.name]||""})))))))),t.createElement(W.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(h.k,{direction:"column",alignItems:"stretch",gap:4},t.createElement($.Z,{variant:"delta",as:"h2"},o({id:"global.roles",defaultMessage:"User's role"})),t.createElement(b.r,{gap:5},t.createElement(j.P,{col:6,xs:12},t.createElement(te.Z,{disabled:!P,error:p.roles,onChange:D,value:L.roles}))))))))}))};Q.propTypes={canUpdate:g().bool.isRequired};var se=Q,ne=()=>{const y=(0,a.lm)(),P=(0,t.useMemo)(()=>({read:d.Z.settings.users.read,update:d.Z.settings.users.update}),[]),{isLoading:o,allowedActions:{canRead:v,canUpdate:C}}=(0,a.ss)(P),{state:Y}=(0,s.TH)(),_=Y?.from??"/";return(0,t.useEffect)(()=>{o||!v&&!C&&y({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[o,v,C,y]),o?t.createElement(a.dO,null):!v&&!C?t.createElement(s.l_,{to:_}):t.createElement(se,{canUpdate:C})}},76779:function(T,l,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(50563),i=e(24989),u=e(47765),n=e(59087),g=e.n(n),m=e(67879);const c=({children:E,target:f})=>{const R=(0,i.lm)(),{formatMessage:Z}=(0,m.Z)(),U=()=>{R({type:"info",message:{id:"notification.link-copied"}})},A=Z({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"});return t.createElement(i.Y_,{endAction:t.createElement(n.CopyToClipboard,{onCopy:U,text:f},t.createElement(d.h,{label:A,noBorder:!0,icon:t.createElement(u.Z,null)})),title:f,titleEllipsis:!0,subtitle:E,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};c.propTypes={children:s().oneOfType([s().element,s().string]).isRequired,target:s().string.isRequired},l.Z=c},16325:function(T,l,e){var t=e(32735),a=e(67879),s=e(60216),d=e.n(s),i=e(78246),u=e(76779);const n=({registrationToken:g})=>{const{formatMessage:m}=(0,a.Z)(),c=`${window.location.origin}${i.Z}auth/register?registrationToken=${g}`;return t.createElement(u.Z,{target:c},m({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:d().string},l.Z=n},4397:function(T,l,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(67879),i=e(80084),u=e(84967),n=e(20108),g=e(8471),m=e(27169),c=e(24989);const E=g.F4`
|
|
2
2
|
from {
|
|
3
3
|
transform: rotate(0deg);
|
|
4
4
|
}
|
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
}
|
|
8
8
|
`,f=g.ZP.div`
|
|
9
9
|
animation: ${E} 2s infinite linear;
|
|
10
|
-
`,R=()=>t.createElement(f,null,t.createElement(m.Z,null)),Z=async()=>{const{get:A}=(0,c.tg)(),{data:O}=await A("/admin/roles");return O.data},U=({disabled:A,error:O,onChange:S,value:x})=>{const{status:z,data:W}=(0,n.useQuery)(["roles"],Z,{staleTime:5e4}),{formatMessage:h}=(0,d.Z)(),$=O?h({id:O,defaultMessage:O}):"",b=h({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),j=h({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),w=h({id:"app.components.Select.placeholder",defaultMessage:"Select"}),N=z==="loading"?t.createElement(R,null):void 0;return t.createElement(i.P,{id:"roles",disabled:A,error:$,hint:j,label:b,name:"roles",onChange:M=>{S({target:{name:"roles",value:M}})},placeholder:w,multi:!0,startIcon:N,value:x,withTags:!0,required:!0},(W||[]).map(M=>t.createElement(u.W,{key:M.id,value:M.id},h({id:`global.${M.code}`,defaultMessage:M.name}))))};U.defaultProps={disabled:!1,error:void 0},U.propTypes={disabled:s().bool,error:s().string,onChange:s().func.isRequired,value:s().array.isRequired},l.Z=U},1057:function(T,l,e){e.d(l,{YM:function(){return m},Rw:function(){return i}});var t=e(24346),a=e(
|
|
10
|
+
`,R=()=>t.createElement(f,null,t.createElement(m.Z,null)),Z=async()=>{const{get:A}=(0,c.tg)(),{data:O}=await A("/admin/roles");return O.data},U=({disabled:A,error:O,onChange:S,value:x})=>{const{status:z,data:W}=(0,n.useQuery)(["roles"],Z,{staleTime:5e4}),{formatMessage:h}=(0,d.Z)(),$=O?h({id:O,defaultMessage:O}):"",b=h({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),j=h({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),w=h({id:"app.components.Select.placeholder",defaultMessage:"Select"}),N=z==="loading"?t.createElement(R,null):void 0;return t.createElement(i.P,{id:"roles",disabled:A,error:$,hint:j,label:b,name:"roles",onChange:M=>{S({target:{name:"roles",value:M}})},placeholder:w,multi:!0,startIcon:N,value:x,withTags:!0,required:!0},(W||[]).map(M=>t.createElement(u.W,{key:M.id,value:M.id},h({id:`global.${M.code}`,defaultMessage:M.name}))))};U.defaultProps={disabled:!1,error:void 0},U.propTypes={disabled:s().bool,error:s().string,onChange:s().func.isRequired,value:s().array.isRequired},l.Z=U},1057:function(T,l,e){e.d(l,{YM:function(){return m},Rw:function(){return i}});var t=e(24346),a=e(24989);const s={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",(c,E)=>c?E.required(a.I0.required):E)};var i={...s,currentPassword:t.Z_().when(["password","confirmPassword"],(c,E,f)=>c||E?f.required(a.I0.required):f),preferedLanguage:t.Z_().nullable()},n={roles:t.IX().min(1,a.I0.required).required(a.I0.required)},m=t.Ry().shape({...s,isActive:t.Xg(),...n})},28890:function(T,l,e){var t=e(32735),a=e(67879),s=e(60216),d=e.n(s),i=e(78246),u=e(76779);const n=({registrationToken:g})=>{const{formatMessage:m}=(0,a.Z)();return g?t.createElement(u.Z,{target:`${window.location.origin}${i.Z}auth/register?registrationToken=${g}`},m({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"})):t.createElement(u.Z,{target:`${window.location.origin}${i.Z}auth/login`},m({id:"app.components.Users.MagicLink.connect.sso",defaultMessage:"Send this link to the user, the first login can be made via a SSO provider."}))};n.defaultProps={registrationToken:""},n.propTypes={registrationToken:d().string},l.Z=n},29439:function(T,l,e){e.d(l,{Z:function(){return s}});var t=e(74512);const a=d=>(0,t.jsx)("svg",{width:"1rem",height:"1rem",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...d,children:(0,t.jsx)("path",{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",fill:"#212134"})}),s=a}}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{67249:function(V,x,t){t.r(x),t.d(x,{default:function(){return me}});var e=t(32735),n=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3455],{67249:function(V,x,t){t.r(x),t.d(x,{default:function(){return me}});var e=t(32735),n=t(24989),v=t(83983),R=t(47765),B=t(68625),Z=t(4038),I=t(19406),D=t(27649),u=t(82055),C=t(41415),g=t(99223),$=t(17e3),S=t(56755),X=t(73269),G=t(33827),H=t(94547),T=t(19786),W=t(49372),J=t(3685),Y=t(35658),k=t(33795),w=t.n(k),b=t(67879),q=t(53038),_=t(67927),ee=()=>"todo empty role",te=t(60216),A=t.n(te),ne=t(87933),le=t(72850),ae=t(50563);const F=({id:s,name:o,description:l,usersCount:p,icons:r,rowIndex:m,canUpdate:f})=>{const{formatMessage:M}=(0,b.Z)(),[,i]=r,y=M({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:p});return e.createElement(H.Tr,{"aria-rowindex":m,key:s,...f?(0,n.X7)({fn:i.onClick}):{}},e.createElement(T.Td,{maxWidth:(0,n.Q1)(130)},e.createElement(W.Z,{ellipsis:!0,textColor:"neutral800"},o)),e.createElement(T.Td,{maxWidth:(0,n.Q1)(250)},e.createElement(W.Z,{ellipsis:!0,textColor:"neutral800"},l)),e.createElement(T.Td,null,e.createElement(W.Z,{textColor:"neutral800"},y)),e.createElement(T.Td,null,e.createElement(ne.k,{justifyContent:"flex-end",...n.UW},r.map((d,L)=>d?e.createElement(le.x,{key:d.label,paddingLeft:L===0?0:1},e.createElement(ae.h,{onClick:d.onClick,label:d.label,noBorder:!0,icon:d.icon})):null))))};F.propTypes={id:A().number.isRequired,name:A().string.isRequired,description:A().string.isRequired,usersCount:A().number.isRequired,icons:A().array.isRequired,rowIndex:A().number.isRequired,canUpdate:A().bool},F.defaultProps={canUpdate:!1};var se=F,oe=t(97889);const re={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var ie=(s,o)=>(0,oe.ZP)(s,l=>{switch(o.type){case"ON_REMOVE_ROLES":{l.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{l.shouldRefetchData=!0,l.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{l.shouldRefetchData=!1,l.roleToDelete=null,l.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{l.roleToDelete=o.id;break}default:return l}});const de=()=>{(0,n.go)();const{locale:s}=(0,b.Z)(),{isLoading:o,allowedActions:{canCreate:l,canDelete:p,canRead:r,canUpdate:m}}=(0,n.ss)(v.Z.settings.roles),{getData:f,roles:M,isLoading:i}=(0,_.bF)(!1),[{query:y}]=(0,n.Kx)(),d=y?._q||"",{includes:L}=(0,n.L0)(s,{sensitivity:"base"}),P=(0,n.Xe)(s,{sensitivity:"base"}),U=(M||[]).filter(h=>L(h.name,d)||L(h.description,d)).sort((h,O)=>P.compare(h.name,O.name)||P.compare(h.description,O.description));return(0,e.useEffect)(()=>{!o&&r&&f()},[o,r,f]),{isLoadingForPermissions:o,canCreate:l,canDelete:p,canRead:r,canUpdate:m,isLoading:i,getData:f,sortedRoles:U,roles:M}},ce=({getData:s,canCreate:o,canDelete:l,canUpdate:p})=>{const{formatMessage:r}=(0,b.Z)(),m=(0,n.lm)(),[f,M]=(0,e.useState)(!1),{push:i}=(0,q.k6)(),[{selectedRoles:y,showModalConfirmButtonLoading:d,roleToDelete:L},P]=(0,e.useReducer)(ie,re),{post:U}=(0,n.tg)(),h=async()=>{try{P({type:"ON_REMOVE_ROLES"}),await U("/admin/roles/batch-delete",{ids:[L]}),await s(),P({type:"RESET_DATA_TO_DELETE"})}catch(a){const c=w()(a,["response","payload","data","ids"],null);if(c&&Array.isArray(c)){const ge=c.join(`
|
|
2
2
|
`);m({type:"warning",message:ge})}else m({type:"warning",message:{id:"notification.error"}})}E()},O=(0,e.useCallback)(a=>{i(`/settings/roles/duplicate/${a}`)},[i]),N=()=>i("/settings/roles/new"),K=(0,e.useCallback)(a=>{P({type:"SET_ROLE_TO_DELETE",id:a}),E()},[]),E=()=>M(a=>!a),j=(0,e.useCallback)(a=>{i(`/settings/roles/${a}`)},[i]),Q=(0,e.useCallback)((a,c)=>{a.preventDefault(),a.stopPropagation(),c.usersCount?m({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):K(c.id)},[m,K]),z=(0,e.useCallback)((a,c)=>{a.preventDefault(),a.stopPropagation(),O(c.id)},[O]),Ee=(0,e.useCallback)(a=>[...o?[{onClick:c=>z(c,a),label:r({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(R.Z,null)}]:[],...p?[{onClick:()=>j(a.id),label:r({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(B.Z,null)}]:[],...l?[{onClick:c=>Q(c,a),label:r({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(Z.Z,null)}]:[]],[r,Q,z,j,o,p,l]);return{handleNewRoleClick:N,getIcons:Ee,selectedRoles:y,isWarningDeleteAllOpened:f,showModalConfirmButtonLoading:d,handleToggleModal:E,handleDeleteData:h}};var ue=()=>{const{formatMessage:s}=(0,b.Z)(),{isLoadingForPermissions:o,canCreate:l,canRead:p,canDelete:r,canUpdate:m,isLoading:f,getData:M,sortedRoles:i}=de(),{handleNewRoleClick:y,getIcons:d,isWarningDeleteAllOpened:L,showModalConfirmButtonLoading:P,handleToggleModal:U,handleDeleteData:h}=ce({getData:M,canCreate:l,canDelete:r,canUpdate:m}),O=i.length+1,N=6;if(o)return e.createElement(D.o,null,e.createElement(n.dO,null));const K=s({id:"global.roles",defaultMessage:"roles"});return e.createElement(D.o,null,e.createElement(n.SL,{name:"Roles"}),e.createElement(u.T,{primaryAction:l?e.createElement(C.z,{onClick:y,startIcon:e.createElement(I.Z,null),size:"S"},s({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:K,subtitle:s({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),p&&e.createElement(g.Z,{startActions:e.createElement(n.m,{label:s({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:K})})}),p&&e.createElement($.D,null,e.createElement(S.i,{colCount:N,rowCount:O,footer:l?e.createElement(X.c,{onClick:y,icon:e.createElement(I.Z,null)},s({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(G.h,null,e.createElement(H.Tr,{"aria-rowindex":1},e.createElement(T.Th,null,e.createElement(W.Z,{variant:"sigma",textColor:"neutral600"},s({id:"global.name",defaultMessage:"Name"}))),e.createElement(T.Th,null,e.createElement(W.Z,{variant:"sigma",textColor:"neutral600"},s({id:"global.description",defaultMessage:"Description"}))),e.createElement(T.Th,null,e.createElement(W.Z,{variant:"sigma",textColor:"neutral600"},s({id:"global.users",defaultMessage:"Users"}))),e.createElement(T.Th,null,e.createElement(J.T,null,s({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(Y.p,null,i?.map((E,j)=>e.createElement(se,{key:E.id,id:E.id,name:E.name,description:E.description,usersCount:E.usersCount,icons:d(E),rowIndex:j+2,canUpdate:m})))),!O&&!f&&e.createElement(ee,null)),e.createElement(n.QH,{isOpen:L,onConfirm:h,isConfirmButtonLoading:P,onToggleDialog:U}))},me=()=>e.createElement(n.O4,{permissions:v.Z.settings.roles.main},e.createElement(ue,null))},99223:function(V,x,t){t.d(x,{Z:function(){return D}});var e=t(32735),n=t(60216),v=t(8471),R=t(72850),B=t(87933);const Z=(0,v.ZP)(B.k)`
|
|
3
3
|
& > * + * {
|
|
4
4
|
margin-left: ${({theme:u})=>u.spaces[2]};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{83119:function(f,n){const e=()=>null;n.Z=e},83196:function(f,n,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(67879),c=e(72850),u=e(41415),o=e(5644),m=e(
|
|
2
|
-
`))}},{key:"username",name:"username",metadatas:{label:{id:"Settings.permissions.users.username",defaultMessage:"Username"},sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:{id:"Settings.permissions.users.user-status",defaultMessage:"User status"},sortable:!1},cellFormatter({isActive:p},{formatMessage:P}){return t.createElement(A.k,null,t.createElement(a.qb,{isActive:p,variant:p?"success":"danger"}),t.createElement(U.Z,{textColor:"neutral800"},P({id:p?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:p?"Active":"Inactive"})))}}];const Ie=(()=>window&&window.strapi&&window.strapi.isEE?e(99724).Z:e(9814).Z)(),Be=(()=>window&&window.strapi&&window.strapi.isEE?e(21306).Z:e(83119).Z)();var Ue=()=>{const{formatAPIError:p}=(0,a.So)(),[P,D]=(0,t.useState)(!1),{allowedActions:{canCreate:W,canDelete:j,canRead:L}}=(0,a.ss)(s.Z.settings.users),S=(0,i.useQueryClient)(),N=(0,a.lm)(),{formatMessage:R}=(0,E.Z)(),{search:F}=(0,r.TH)();(0,a.go)(),Be();const{notifyStatus:v}=(0,d.G)(),g=["users",F],z=Re.map(M=>({...M,metadatas:{...M.metadatas,label:R(M.metadatas.label)}})),T=R({id:"global.users",defaultMessage:"Users"}),H=()=>{v(R({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:T}))},{status:Z,data:b,isFetching:le}=(0,i.useQuery)(g,()=>Te(F,H),{enabled:L,retry:!1,onError(M){N({type:"warning",message:{id:"notification.error",message:p(M),defaultMessage:"An error occured"}})}}),ee=()=>{D(M=>!M)},w=(0,i.useMutation)(M=>Ae(M),{async onSuccess(){await S.refetchQueries(g),await S.refetchQueries(["ee","license-limit-info"])},onError(M){N({type:"warning",message:{id:"notification.error",message:p(M),defaultMessage:"An error occured"}})}}),Q=Z!=="success"&&Z!=="error"||Z==="success"&≤return t.createElement(c.o,{"aria-busy":Q},t.createElement(a.SL,{name:"Users"}),t.createElement(u.T,{primaryAction:W&&t.createElement(Ie,{onClick:ee}),title:T,subtitle:R({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),L&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:R({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:T})}),t.createElement(se.Z,{displayedFilters:Le}))}),t.createElement(m.D,{canRead:L},!L&&t.createElement(a.ZF,null),Z==="error"&&t.createElement("div",null,"TODO: An error occurred"),L&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:Q,onConfirmDeleteAll:w.mutateAsync,onConfirmDelete:M=>w.mutateAsync([M]),headers:z,rows:b?.results,withBulkActions:!0,withMainAction:j},t.createElement(ae,{canDelete:j,headers:z,rows:b?.results||[],withBulkActions:!0,withMainAction:j})),t.createElement(Ce,{pagination:b?.pagination}))),P&&t.createElement(ye,{onToggle:ee,queryName:g}))},We=()=>t.createElement(a.O4,{permissions:s.Z.settings.users.main},t.createElement(Ue,null))},76779:function(f,n,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(50563),c=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{83119:function(f,n){const e=()=>null;n.Z=e},83196:function(f,n,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(67879),c=e(72850),u=e(41415),o=e(5644),m=e(24989);const r=({displayedFilters:E})=>{const[i,h]=(0,t.useState)(!1),{formatMessage:l}=(0,d.Z)(),y=(0,t.useRef)(),O=()=>{h(_=>!_)};return t.createElement(t.Fragment,null,t.createElement(c.x,{paddingTop:1,paddingBottom:1},t.createElement(u.z,{variant:"tertiary",ref:y,startIcon:t.createElement(o.Z,null),onClick:O,size:"S"},l({id:"app.utils.filters",defaultMessage:"Filters"})),i&&t.createElement(m.J5,{displayedFilters:E,isVisible:i,onToggle:O,source:y})),t.createElement(m.W$,{filtersSchema:E}))};r.propTypes={displayedFilters:s().arrayOf(s().shape({name:s().string.isRequired,metadatas:s().shape({label:s().string}),fieldSchema:s().shape({type:s().string})})).isRequired},n.Z=r},9814:function(f,n,e){var t=e(32735),a=e(67879),s=e(60216),d=e.n(s),c=e(41415),u=e(7961);const o=({onClick:m})=>{const{formatMessage:r}=(0,a.Z)();return t.createElement(c.z,{onClick:m,startIcon:t.createElement(u.Z,null),size:"S"},r({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}))};o.propTypes={onClick:d().func.isRequired},n.Z=o},60509:function(f,n){const e={firstname:"",lastname:"",email:"",roles:[]};n.Z=e},61358:function(f,n){const e=[];n.Z=e},76949:function(f,n,e){e.r(n),e.d(n,{default:function(){return We}});var t=e(32735),a=e(24989),s=e(83983),d=e(94638),c=e(27649),u=e(82055),o=e(99223),m=e(17e3),r=e(53038),E=e(67879),i=e(20108),h=e(60216),l=e.n(h),y=e(35658),O=e(94547),_=e(19786),B=e(44426),U=e(49372),A=e(87933),q=e(50563),x=e(72850),$=e(68625),te=e(4038),J=e(8997);const X=({canDelete:p,headers:P,entriesToDelete:D,onClickDelete:W,onSelectRow:j,withMainAction:L,withBulkActions:S,rows:N})=>{const{push:R,location:{pathname:F}}=(0,r.k6)(),{formatMessage:v}=(0,E.Z)();return t.createElement(y.p,null,N.map(g=>{const z=D.findIndex(T=>T===g.id)!==-1;return t.createElement(O.Tr,{key:g.id,...(0,a.X7)({fn:()=>R(`${F}/${g.id}`),condition:S})},L&&t.createElement(_.Td,{...a.UW},t.createElement(B.C,{"aria-label":v({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,J.Pp)(g.firstname,g.lastname)}),checked:z,onChange:()=>{j({name:g.id,value:!z})}})),P.map(({key:T,cellFormatter:H,name:Z,...b})=>t.createElement(_.Td,{key:T},typeof H=="function"?H(g,{key:T,name:Z,formatMessage:v,...b}):t.createElement(U.Z,{textColor:"neutral800"},g[Z]||"-"))),S&&t.createElement(_.Td,null,t.createElement(A.k,{justifyContent:"end"},t.createElement(q.h,{onClick:()=>R(`${F}/${g.id}`),label:v({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,J.Pp)(g.firstname,g.lastname)}),noBorder:!0,icon:t.createElement($.Z,null)}),p&&t.createElement(x.x,{paddingLeft:1,...a.UW},t.createElement(q.h,{onClick:()=>W(g.id),label:v({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,J.Pp)(g.firstname,g.lastname)}),noBorder:!0,icon:t.createElement(te.Z,null)})))))}))};X.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete(){},onSelectRow(){},rows:[],withBulkActions:!1,withMainAction:!1},X.propTypes={canDelete:l().bool,entriesToDelete:l().array,headers:l().array.isRequired,onClickDelete:l().func,onSelectRow:l().func,rows:l().array,withBulkActions:l().bool,withMainAction:l().bool};var ae=X,se=e(83196),C=e(20011),ne=e(41415),ue=e(85025),Ee=e(55225),de=e(11299),ge=e(31600),ce=e(15335),re=e(5803),pe=e(11406),Me=e(92802),fe=e(4397),_e=[[{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}]],Y=e(24346),Pe=Y.Ry().shape({firstname:Y.Z_().trim().required(a.I0.required),lastname:Y.Z_(),email:Y.Z_().email(a.I0.email).required(a.I0.required),roles:Y.IX().min(1,a.I0.required).required(a.I0.required)}),De={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}};const ve=(()=>window&&window.strapi&&window.strapi.isEE?e(64746).Z:e(60509).Z)(),he=(()=>window&&window.strapi&&window.strapi.isEE?e(43116).Z:e(61358).Z)(),Oe=(()=>window&&window.strapi&&window.strapi.isEE?e(28890).Z:e(16325).Z)(),me=p=>{let{queryName:P,onToggle:D}=p;const[W,j]=(0,t.useState)("create"),[L,S]=(0,t.useState)(!1),[N,R]=(0,t.useState)(null),F=(0,i.useQueryClient)(),{formatMessage:v}=(0,E.Z)(),g=(0,a.lm)(),{lockApp:z,unlockApp:T}=(0,a.o1)(),{post:H}=(0,a.kY)(),Z=(0,i.useMutation)(K=>H("/admin/users",K),{async onSuccess(K){let{data:V}=K;R(V.data.registrationToken),await F.refetchQueries(P),await F.refetchQueries(["ee","license-limit-info"]),ee(),S(!1)},onError(K){throw S(!1),g({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),K},onSettled(){T()}}),b=v({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),le=async(K,V)=>{let{setErrors:k}=V;z(),S(!0);try{await Z.mutateAsync(K)}catch(G){T(),G?.response?.data?.error.message==="Email already taken"&&k({email:G.response.data.error.message})}},ee=()=>{M?j(M):D()},{buttonSubmitLabel:w,isDisabled:Q,next:M}=De[W],Se=W==="create"?t.createElement(ne.z,{type:"submit",loading:L},v(w)):t.createElement(ne.z,{type:"button",loading:L,onClick:D},v(w));return t.createElement(ue.P,{onClose:D,labelledBy:"title"},t.createElement(Ee.x,null,t.createElement(de.O,{label:b},t.createElement(de.$,null,b))),t.createElement(Me.J9,{initialValues:ve,onSubmit:le,validationSchema:Pe,validateOnChange:!1},K=>{let{errors:V,handleChange:k,values:G}=K;return t.createElement(a.l0,null,t.createElement(ge.f,null,t.createElement(A.k,{direction:"column",alignItems:"stretch",gap:6},W!=="create"&&t.createElement(Oe,{registrationToken:N}),t.createElement(x.x,null,t.createElement(U.Z,{variant:"beta",as:"h2"},v({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),t.createElement(x.x,{paddingTop:4},t.createElement(A.k,{direction:"column",alignItems:"stretch",gap:1},t.createElement(ce.r,{gap:5},_e.map(ie=>ie.map(I=>t.createElement(re.P,(0,C.Z)({key:I.name},I.size),t.createElement(a.jm,(0,C.Z)({},I,{disabled:Q,error:V[I.name],onChange:k,value:G[I.name]}))))))))),t.createElement(x.x,null,t.createElement(U.Z,{variant:"beta",as:"h2"},v({id:"global.roles",defaultMessage:"User's role"})),t.createElement(x.x,{paddingTop:4},t.createElement(ce.r,{gap:5},t.createElement(re.P,{col:6,xs:12},t.createElement(fe.Z,{disabled:Q,error:V.roles,onChange:k,value:G.roles})),he.map(ie=>ie.map(I=>t.createElement(re.P,(0,C.Z)({key:I.name},I.size),t.createElement(a.jm,(0,C.Z)({},I,{disabled:Q,onChange:k,value:G[I.name]})))))))))),t.createElement(pe.m,{startActions:t.createElement(ne.z,{variant:"tertiary",onClick:D,type:"button"},v({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:Se}))}))};me.propTypes={onToggle:l().func.isRequired,queryName:l().array.isRequired};var ye=me;const oe=({pagination:p})=>t.createElement(x.x,{paddingTop:4},t.createElement(A.k,{alignItems:"flex-end",justifyContent:"space-between"},t.createElement(a.v4,null),t.createElement(a.tU,{pagination:p})));oe.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},oe.propTypes={pagination:l().shape({page:l().number,pageCount:l().number,pageSize:l().number,total:l().number})};var Ce=oe;const Te=async(p,P)=>{const{get:D}=(0,a.tg)(),{data:{data:W}}=await D(`/admin/users${p}`);return P(),W},Ae=async p=>{const{post:P}=(0,a.tg)();await P("/admin/users/batch-delete",{ids:p})};var Le=[{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"}}],Re=[{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:p},{formatMessage:P}){return t.createElement(U.Z,{textColor:"neutral800"},p.map(D=>P({id:`Settings.permissions.users.${D.code}`,defaultMessage:D.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:p},{formatMessage:P}){return t.createElement(A.k,null,t.createElement(a.qb,{isActive:p,variant:p?"success":"danger"}),t.createElement(U.Z,{textColor:"neutral800"},P({id:p?"Settings.permissions.users.active":"Settings.permissions.users.inactive",defaultMessage:p?"Active":"Inactive"})))}}];const Ie=(()=>window&&window.strapi&&window.strapi.isEE?e(99724).Z:e(9814).Z)(),Be=(()=>window&&window.strapi&&window.strapi.isEE?e(21306).Z:e(83119).Z)();var Ue=()=>{const{formatAPIError:p}=(0,a.So)(),[P,D]=(0,t.useState)(!1),{allowedActions:{canCreate:W,canDelete:j,canRead:L}}=(0,a.ss)(s.Z.settings.users),S=(0,i.useQueryClient)(),N=(0,a.lm)(),{formatMessage:R}=(0,E.Z)(),{search:F}=(0,r.TH)();(0,a.go)(),Be();const{notifyStatus:v}=(0,d.G)(),g=["users",F],z=Re.map(M=>({...M,metadatas:{...M.metadatas,label:R(M.metadatas.label)}})),T=R({id:"global.users",defaultMessage:"Users"}),H=()=>{v(R({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:T}))},{status:Z,data:b,isFetching:le}=(0,i.useQuery)(g,()=>Te(F,H),{enabled:L,retry:!1,onError(M){N({type:"warning",message:{id:"notification.error",message:p(M),defaultMessage:"An error occured"}})}}),ee=()=>{D(M=>!M)},w=(0,i.useMutation)(M=>Ae(M),{async onSuccess(){await S.refetchQueries(g),await S.refetchQueries(["ee","license-limit-info"])},onError(M){N({type:"warning",message:{id:"notification.error",message:p(M),defaultMessage:"An error occured"}})}}),Q=Z!=="success"&&Z!=="error"||Z==="success"&≤return t.createElement(c.o,{"aria-busy":Q},t.createElement(a.SL,{name:"Users"}),t.createElement(u.T,{primaryAction:W&&t.createElement(Ie,{onClick:ee}),title:T,subtitle:R({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),L&&t.createElement(o.Z,{startActions:t.createElement(t.Fragment,null,t.createElement(a.m,{label:R({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:T})}),t.createElement(se.Z,{displayedFilters:Le}))}),t.createElement(m.D,{canRead:L},!L&&t.createElement(a.ZF,null),Z==="error"&&t.createElement("div",null,"TODO: An error occurred"),L&&t.createElement(t.Fragment,null,t.createElement(a.tM,{contentType:"Users",isLoading:Q,onConfirmDeleteAll:w.mutateAsync,onConfirmDelete:M=>w.mutateAsync([M]),headers:z,rows:b?.results,withBulkActions:!0,withMainAction:j},t.createElement(ae,{canDelete:j,headers:z,rows:b?.results||[],withBulkActions:!0,withMainAction:j})),t.createElement(Ce,{pagination:b?.pagination}))),P&&t.createElement(ye,{onToggle:ee,queryName:g}))},We=()=>t.createElement(a.O4,{permissions:s.Z.settings.users.main},t.createElement(Ue,null))},76779:function(f,n,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(50563),c=e(24989),u=e(47765),o=e(59087),m=e.n(o),r=e(67879);const E=({children:i,target:h})=>{const l=(0,c.lm)(),{formatMessage:y}=(0,r.Z)(),O=()=>{l({type:"info",message:{id:"notification.link-copied"}})},_=y({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"});return t.createElement(c.Y_,{endAction:t.createElement(o.CopyToClipboard,{onCopy:O,text:h},t.createElement(d.h,{label:_,noBorder:!0,icon:t.createElement(u.Z,null)})),title:h,titleEllipsis:!0,subtitle:i,icon:t.createElement("span",{style:{fontSize:32}},"\u2709\uFE0F"),iconBackground:"neutral100"})};E.propTypes={children:s().oneOfType([s().element,s().string]).isRequired,target:s().string.isRequired},n.Z=E},16325:function(f,n,e){var t=e(32735),a=e(67879),s=e(60216),d=e.n(s),c=e(78246),u=e(76779);const o=({registrationToken:m})=>{const{formatMessage:r}=(0,a.Z)(),E=`${window.location.origin}${c.Z}auth/register?registrationToken=${m}`;return t.createElement(u.Z,{target:E},r({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};o.defaultProps={registrationToken:""},o.propTypes={registrationToken:d().string},n.Z=o},4397:function(f,n,e){var t=e(32735),a=e(60216),s=e.n(a),d=e(67879),c=e(80084),u=e(84967),o=e(20108),m=e(8471),r=e(27169),E=e(24989);const i=m.F4`
|
|
3
3
|
from {
|
|
4
4
|
transform: rotate(0deg);
|
|
5
5
|
}
|
package/build/{api-tokens-create-page.97595e12.chunk.js → api-tokens-create-page.973d2816.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{3330:function(i,e,t){t.r(e);var n=t(32735),s=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{3330:function(i,e,t){t.r(e);var n=t(32735),s=t(24989),_=t(83983),E=t(35563);const a=()=>n.createElement(s.O4,{permissions:_.Z.settings["api-tokens"].create},n.createElement(E.Z,null));e.default=a}}]);
|
package/build/{api-tokens-edit-page.cd36e30e.chunk.js → api-tokens-edit-page.29725c5e.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{97841:function(i,e,t){t.r(e);var n=t(32735),s=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{97841:function(i,e,t){t.r(e);var n=t(32735),s=t(24989),_=t(83983),E=t(35563);const a=()=>n.createElement(s.O4,{permissions:_.Z.settings["api-tokens"].read},n.createElement(E.Z,null));e.default=a}}]);
|