@strapi/admin 4.2.0-beta.2 → 4.2.0-beta.3

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.
Files changed (101) hide show
  1. package/admin/src/assets/images/homepage-logo.png +0 -0
  2. package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +2 -6
  3. package/admin/src/components/GuidedTour/Homepage/index.js +1 -2
  4. package/admin/src/components/GuidedTour/Modal/components/Stepper.js +1 -2
  5. package/admin/src/components/LeftMenu/index.js +7 -5
  6. package/admin/src/components/Notifications/Notification/index.js +2 -2
  7. package/admin/src/components/UpgradePlanModal/index.js +6 -2
  8. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js +1 -1
  9. package/admin/src/content-manager/components/SelectMany/ListItem.js +1 -2
  10. package/admin/src/content-manager/components/SelectWrapper/index.js +8 -7
  11. package/admin/src/content-manager/components/SelectWrapper/utils/getSelectStyles.js +1 -1
  12. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +2 -2
  13. package/admin/src/content-manager/components/Wysiwyg/Editor.js +2 -0
  14. package/admin/src/content-manager/pages/App/LeftMenu/index.js +8 -7
  15. package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +1 -1
  16. package/admin/src/content-manager/pages/EditSettingsView/components/LinkToCTB.js +1 -2
  17. package/admin/src/content-manager/pages/EditSettingsView/index.js +1 -2
  18. package/admin/src/content-manager/pages/EditView/Header/index.js +3 -3
  19. package/admin/src/content-manager/pages/EditView/index.js +1 -4
  20. package/admin/src/content-manager/pages/ListSettingsView/index.js +1 -2
  21. package/admin/src/content-manager/pages/ListView/index.js +1 -1
  22. package/admin/src/content-manager/pages/NoContentType/index.js +1 -2
  23. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +1 -2
  24. package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +1 -1
  25. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +1 -2
  26. package/admin/src/pages/AuthPage/components/Oops/index.js +1 -2
  27. package/admin/src/pages/AuthPage/components/Register/index.js +12 -12
  28. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +3 -4
  29. package/admin/src/pages/HomePage/ContentBlocks.js +15 -2
  30. package/admin/src/pages/HomePage/HomeHeader.js +2 -2
  31. package/admin/src/pages/HomePage/SocialLinks.js +4 -3
  32. package/admin/src/pages/InternalErrorPage/index.js +1 -2
  33. package/admin/src/pages/MarketplacePage/components/PageHeader/index.js +2 -1
  34. package/admin/src/pages/MarketplacePage/components/PluginCard/index.js +4 -3
  35. package/admin/src/pages/NotFoundPage/index.js +1 -2
  36. package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +5 -4
  37. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +1 -1
  38. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/UpdateButton/index.js +1 -1
  39. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +1 -1
  40. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +8 -2
  41. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +1 -1
  42. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +1 -1
  43. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +1 -2
  44. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +1 -1
  45. package/build/1709.ceed0e18.chunk.js +503 -0
  46. package/build/{7393.8ae60738.chunk.js → 210.014495c1.chunk.js} +89 -87
  47. package/build/4073.41ac1235.chunk.js +1 -0
  48. package/build/4761.3eabdf46.chunk.js +101 -0
  49. package/build/6229.a5cca9f2.chunk.js +194 -0
  50. package/build/7863.bc7a8f3a.chunk.js +112 -0
  51. package/build/9420.cb0b75e8.chunk.js +508 -0
  52. package/build/Admin-authenticatedApp.4ce8d292.chunk.js +80 -0
  53. package/build/Admin_homePage.f157e33e.chunk.js +71 -0
  54. package/build/Admin_marketplace.1e3393c9.chunk.js +11 -0
  55. package/build/Admin_settingsPage.924a7816.chunk.js +170 -0
  56. package/build/admin-edit-roles-page.94e1403b.chunk.js +1 -0
  57. package/build/admin-edit-users.6c2bf718.chunk.js +10 -0
  58. package/build/api-tokens-create-page.787ab302.chunk.js +1 -0
  59. package/build/api-tokens-edit-page.e4010c0c.chunk.js +1 -0
  60. package/build/api-tokens-list-page.340750a6.chunk.js +15 -0
  61. package/build/content-manager.6cdcfb6e.chunk.js +1204 -0
  62. package/build/content-type-builder.e73879b9.chunk.js +141 -0
  63. package/build/fb376b132d18bf4522ca.png +0 -0
  64. package/build/index.html +1 -1
  65. package/build/main.45472ea9.js +8404 -0
  66. package/build/{runtime~main.a32b12c8.js → runtime~main.e7611418.js} +1 -1
  67. package/build/upload-translation-ca-json.79159984.chunk.js +1 -0
  68. package/build/users-roles-settings-page.988ebc3b.chunk.js +30 -0
  69. package/build/webhook-edit-page.2fa94db3.chunk.js +23 -0
  70. package/build/webhook-list-page.b594db49.chunk.js +133 -0
  71. package/ee/admin/pages/AuthPage/components/Providers/index.js +1 -1
  72. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +1 -1
  73. package/ee/server/controllers/user.js +4 -0
  74. package/package.json +6 -6
  75. package/server/controllers/user.js +4 -0
  76. package/server/services/permission/permissions-manager/sanitize.js +22 -0
  77. package/server/services/user.js +1 -1
  78. package/admin/src/content-manager/components/DynamicComponentCard/index.js +0 -43
  79. package/build/2897.8e7d5853.chunk.js +0 -184
  80. package/build/2a9e9ef5c4c775bb7c7b.png +0 -0
  81. package/build/4073.f3936352.chunk.js +0 -1
  82. package/build/5232.928fea74.chunk.js +0 -989
  83. package/build/6229.26d93336.chunk.js +0 -194
  84. package/build/6404.80bf5858.chunk.js +0 -506
  85. package/build/7863.c1938f3f.chunk.js +0 -112
  86. package/build/9066.118ecccd.chunk.js +0 -101
  87. package/build/Admin-authenticatedApp.1f76af8f.chunk.js +0 -80
  88. package/build/Admin_homePage.8b391120.chunk.js +0 -71
  89. package/build/Admin_marketplace.21730109.chunk.js +0 -11
  90. package/build/Admin_settingsPage.9ce20f16.chunk.js +0 -170
  91. package/build/admin-edit-roles-page.75380ed4.chunk.js +0 -1
  92. package/build/admin-edit-users.05f7f389.chunk.js +0 -10
  93. package/build/api-tokens-create-page.c44e0c62.chunk.js +0 -1
  94. package/build/api-tokens-edit-page.30d0924d.chunk.js +0 -1
  95. package/build/api-tokens-list-page.6049cd23.chunk.js +0 -15
  96. package/build/content-manager.2f0f9b15.chunk.js +0 -1204
  97. package/build/content-type-builder.ce7b7f42.chunk.js +0 -141
  98. package/build/main.e6045245.js +0 -7909
  99. package/build/users-roles-settings-page.c01bec1d.chunk.js +0 -30
  100. package/build/webhook-edit-page.d457087d.chunk.js +0 -23
  101. package/build/webhook-list-page.a4217ff2.chunk.js +0 -133
@@ -0,0 +1,170 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{95291:(X,T,a)=>{a.r(T),a.d(T,{SettingsPage:()=>Se,default:()=>Ve});var e=a(32735),v=a(10938),r=a(5141),j=a(11856),W=a(5636),ye=a(99357),ve=a(41072),ne=a(13271),Ie=a(16540),$=a(9808),I=a(78330),b=a(95602),se=a(90662),oe=a(14983),V=a(74885),U=a.n(V);const We=()=>{const{formatMessage:y}=(0,W.useIntl)();(0,v.useFocusWhenNavigate)();const m=(0,v.useAppInfos)(),{shouldUpdateStrapi:g,latestStrapiReleaseTag:f,strapiVersion:d}=m,p=m.communityEdition?"app.components.UpgradePlanModal.text-ce":"app.components.UpgradePlanModal.text-ee";return e.createElement(j.Layout,null,e.createElement(v.SettingsPageTitle,{name:"Application"}),e.createElement(Ie.Main,null,e.createElement(j.HeaderLayout,{title:y({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:y({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"})}),e.createElement(j.ContentLayout,null,e.createElement($.Box,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:7,paddingBottom:7,paddingRight:6,paddingLeft:6},e.createElement(se.Stack,{spacing:5},e.createElement(b.Typography,{variant:"delta",as:"h3"},y({id:"global.details",defaultMessage:"Details"})),e.createElement(I.Grid,{paddingTop:1},e.createElement(I.GridItem,{col:6,s:12},e.createElement(b.Typography,{variant:"sigma",textColor:"neutral600"},y({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(b.Typography,{as:"p"},"v",d),e.createElement(oe.Link,{href:m.communityEdition?"https://discord.strapi.io":"https://support.strapi.io/support/home",isExternal:!0,endIcon:e.createElement(U(),null)},y({id:"Settings.application.get-help",defaultMessage:"Get help"}))),e.createElement(I.GridItem,{col:6,s:12},e.createElement(b.Typography,{variant:"sigma",textColor:"neutral600"},y({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(b.Typography,{as:"p"},y({id:p,defaultMessage:`${m.communityEdition?"Community Edition":"Enterprise Edition"}`})))),e.createElement(I.Grid,{paddingTop:1},e.createElement(I.GridItem,{col:6,s:12},g&&e.createElement(oe.Link,{href:`https://github.com/strapi/strapi/releases/tag/${f}`,isExternal:!0,endIcon:e.createElement(U(),null)},y({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"}))),e.createElement(I.GridItem,{col:6,s:12},e.createElement(oe.Link,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(U(),null)},y({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement($.Box,{paddingTop:1},e.createElement(b.Typography,{variant:"sigma",textColor:"neutral600"},y({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(b.Typography,{as:"p"},m.nodeVersion)))))))};var Re=a(3704),de=a.n(Re);const je=y=>de()(y,g=>g.links).map(g=>(0,ne.ot)(g.Component,g.to,g.exact||!1)),Me=y=>y.filter(m=>!m.links.every(g=>g.isDisplayed===!1));var Te=a(85580),F=a(10613),ee=a(71745),x=a.n(ee),Fe=function(){return window&&window.strapi&&window.strapi.isEE?a(55315).Z:a(59811).Z}(),Ne=function(){return window&&window.strapi&&window.strapi.isEE?a(45936).Z:a(50898).Z}(),Be=[{Component:function(){return{default:Ne}},to:"/settings/roles",exact:!0},{Component:function(){return{default:Fe}},to:"/settings/roles/duplicate/:id",exact:!0},{Component:function(){return{default:Fe}},to:"/settings/roles/new",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(2544).then(a.bind(a,39199));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/roles/:id",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(5199).then(a.bind(a,58812));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/users",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(4263).then(a.bind(a,29527));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/users/:id",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,Promise.all([a.e(4715),a.e(5162)]).then(a.bind(a,12935));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/webhooks/create",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,Promise.all([a.e(4715),a.e(5162)]).then(a.bind(a,91849));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/webhooks/:id",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(4121).then(a.bind(a,54999));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/webhooks",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(8056).then(a.bind(a,69837));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/api-tokens",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(4299).then(a.bind(a,10606));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/api-tokens/create",exact:!0},{Component:function(){var y=(0,F.Z)(x().mark(function g(){var f;return x().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,a.e(92).then(a.bind(a,30421));case 2:return f=p.sent,p.abrupt("return",f);case 4:case"end":return p.stop()}},g)}));function m(){return y.apply(this,arguments)}return m}(),to:"/settings/api-tokens/:id",exact:!0}];const Ae=Be;var De=function(){return window&&window.strapi&&window.strapi.isEE?a(10226).Z:a(50772).Z}();const we=[].concat((0,Te.Z)(De),(0,Te.Z)(Ae));var Ze=a(60216),Y=a.n(Ze),A=a(89420),z=Object.defineProperty,S=Object.defineProperties,ae=Object.getOwnPropertyDescriptors,Q=Object.getOwnPropertySymbols,K=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable,B=(y,m,g)=>m in y?z(y,m,{enumerable:!0,configurable:!0,writable:!0,value:g}):y[m]=g,w=(y,m)=>{for(var g in m||(m={}))K.call(m,g)&&B(y,g,m[g]);if(Q)for(var g of Q(m))J.call(m,g)&&B(y,g,m[g]);return y},H=(y,m)=>S(y,ae(m));const Ce=({menu:y})=>{const{formatMessage:m}=(0,W.useIntl)(),f=Me(y).map(p=>H(w({},p),{title:p.intlLabel,links:p.links.map(q=>H(w({},q),{title:q.intlLabel,name:q.id}))})),d=m({id:"global.settings",defaultMessage:"Settings"});return e.createElement(A.SubNav,{ariaLabel:d},e.createElement(A.SubNavHeader,{label:d}),e.createElement(A.SubNavSections,null,f.map(p=>e.createElement(A.SubNavSection,{key:p.id,label:m(p.intlLabel)},p.links.map(q=>e.createElement(A.SubNavLink,{as:r.NavLink,withBullet:q.hasNotification,to:q.to,key:q.id},m(q.intlLabel)))))))};Ce.propTypes={menu:Y().array.isRequired};const xe=Ce;function Se(){const{settingId:y}=(0,r.useParams)(),{settings:m}=(0,v.useStrapiApp)(),{formatMessage:g}=(0,W.useIntl)(),{isLoading:f,menu:d}=(0,ve.Te)(),p=(0,e.useMemo)(()=>(0,ne.WW)(we.map(({to:Z,Component:ie,exact:ue})=>(0,ne.ot)(ie,Z,ue))),[]),q=je(m);if(f)return e.createElement(v.LoadingIndicatorPage,null);if(!y)return e.createElement(r.Redirect,{to:"/settings/application-infos"});const $e=g({id:"global.settings",defaultMessage:"Settings"});return e.createElement(j.Layout,{sideNav:e.createElement(xe,{menu:d})},e.createElement(ye.Helmet,{title:$e}),e.createElement(r.Switch,null,e.createElement(r.Route,{path:"/settings/application-infos",component:We,exact:!0}),p,q))}const Ve=(0,e.memo)(Se)},59811:(X,T,a)=>{a.d(T,{Z:()=>j});var e=a(32735),v=a(5141);const j=()=>e.createElement(v.Redirect,{to:"/404"})},58622:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},27263:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},44404:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},43489:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},63857:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},23360:(X,T,a)=>{a.d(T,{Z:()=>$a});var e=a(32735),v=a(60216),r=a.n(v),j=a(10938),W=a(81700),ye=a(23973),ve=a.n(ye),ne=a(86834),Ie=a.n(ne),$=a(5636),I=a(9808),b=a(19615),se=a(98978),oe=a.n(se),V=a(20278),U=a(92423),ke=a.n(U),We=a(76844),Re=a.n(We),de=a(35980),k=a(19192),je=a(33795),re=a.n(je),Me=a(9086),Te=a.n(Me),F=a(41072),ee=a(66343),x=a.n(ee),Fe=a(44526);const Ne=b.default.div`
2
+ position: relative;
3
+
4
+ ${({hasConditions:o,disabled:t,theme:n})=>o&&`
5
+ &:before {
6
+ content: '';
7
+ position: absolute;
8
+ top: -3px;
9
+ left: -10px;
10
+ width: 6px;
11
+ height: 6px;
12
+ border-radius: ${20/16}rem;;
13
+ background: ${t?n.colors.neutral100:n.colors.primary600};
14
+ }
15
+ `}
16
+ `,Be=({onClick:o,className:t,hasConditions:n,variant:s})=>{const{formatMessage:i}=(0,$.useIntl)();return e.createElement(Ne,{hasConditions:n,className:t},e.createElement(Fe.Button,{variant:s,startIcon:e.createElement(x(),null),onClick:o},i({id:"global.settings",defaultMessage:"Settings"})))};Be.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},Be.propTypes={onClick:r().func.isRequired,className:r().string,hasConditions:r().bool,variant:r().string};const Ae=(0,b.default)(Be)``;var De=a(27635),we=a(90662),Ze=a(4122),Y=a(71657),A=a(95602),z=a(49415),S=a(81346),ae=a.n(S),Q=a(23940),K=a.n(Q),J=a(55656),B=a(85580),w=a(25716);const H=`${120/16}rem`,Ce=`${200/16}rem`,xe=`${53/16}rem`;function Se(o,t){var n=Object.keys(o);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(o);t&&(s=s.filter(function(i){return Object.getOwnPropertyDescriptor(o,i).enumerable})),n.push.apply(n,s)}return n}function Ve(o){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Se(Object(n),!0).forEach(function(s){(0,J.Z)(o,s,n[s])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach(function(s){Object.defineProperty(o,s,Object.getOwnPropertyDescriptor(n,s))})}return o}var y=function(){return window&&window.strapi&&window.strapi.isEE?a(20628).Z:a(58622).Z}(),m=(0,b.default)(k.Flex).withConfig({displayName:"ActionRow__FlexWrapper",componentId:"sc-1bqpgdl-0"})(["height:",";"],xe),g=function(t){var n=t.arrayOfOptionsGroupedByCategory,s=t.isFormDisabled,i=t.isGrey,l=t.label,c=t.name,u=t.onChange,h=t.value,C=(0,$.useIntl)(),E=C.formatMessage,O=n.reduce(function(D,L){var P=(0,V.Z)(L,2),R=P[0],N=P[1],_={label:K()(R),children:N.map(function(me){return{label:me.displayName,value:me.id}})};return[].concat((0,B.Z)(D),[_])},[]),M=Object.values(h).map(function(D){return Object.entries(D).filter(function(L){var P=(0,V.Z)(L,2),R=P[1];return R}).map(function(L){var P=(0,V.Z)(L,1),R=P[0];return R})}).flat(),G=function(L){var P=(0,V.Z)(n,1),R=(0,V.Z)(P[0],2),N=R[1],_=N.reduce(function(me,le){return Ve((0,J.Z)({},le.id,L.includes(le.id)),me)},{});u(c,_)};return e.createElement(m,{as:"li",background:i?"neutral100":"neutral0"},e.createElement(k.Flex,{paddingLeft:6,style:{width:180}},e.createElement(A.Typography,{variant:"sigma",textColor:"neutral600"},E({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(A.Typography,{variant:"sigma",title:l,textColor:"primary600",ellipsis:!0},E({id:"Settings.roles.form.permissions.".concat(l.toLowerCase()),defaultMessage:l})),e.createElement(A.Typography,{variant:"sigma",textColor:"neutral600"},"\xA0",E({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(I.Box,{style:{maxWidth:430,width:"100%"}},e.createElement(w.MultiSelectNested,{id:c,customizeContent:function(L){return"".concat(L.length," currently selected")},onChange:G,value:M,options:O,disabled:s||y})))};g.propTypes={arrayOfOptionsGroupedByCategory:r().array.isRequired,isFormDisabled:r().bool.isRequired,isGrey:r().bool.isRequired,label:r().string.isRequired,name:r().string.isRequired,value:r().object.isRequired,onChange:r().func.isRequired};const f=g;var d=a(92891);const p=(o,t)=>o.reduce((n,s)=>(n[s.id]=(0,d.get)(t,s.id,!1),n),{}),q=(o,t)=>o.reduce((n,s)=>{const[i,l]=s,c=p(l,t);return n[i]=c,n},{}),Z=(o,t,n)=>o.reduce((s,i)=>{const l=(0,d.get)(t,[...i.pathToConditionsObject,"conditions"],{}),c=q(n,l);return s[i.pathToConditionsObject.join("..")]=c,s},{});var ie=Object.defineProperty,ue=Object.getOwnPropertySymbols,Fn=Object.prototype.hasOwnProperty,Bn=Object.prototype.propertyIsEnumerable,vt=(o,t,n)=>t in o?ie(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Ct=(o,t)=>{for(var n in t||(t={}))Fn.call(t,n)&&vt(o,n,t[n]);if(ue)for(var n of ue(t))Bn.call(t,n)&&vt(o,n,t[n]);return o};const Et=({actions:o,headerBreadCrumbs:t,isFormDisabled:n,onClosed:s,onToggle:i})=>{const{formatMessage:l}=(0,$.useIntl)(),{availableConditions:c,modifiedData:u,onChangeConditions:h}=(0,F.$_)(),C=(0,e.useMemo)(()=>Object.entries(ae()(c,"category")),[c]),E=o.filter(({isDisplayed:P,hasSomeActionsSelected:R,hasAllActionsSelected:N})=>P&&(R||N)),O=(0,e.useMemo)(()=>Z(E,u,C),[E,u,C]),[M,G]=(0,e.useState)(O),D=(P,R)=>{G((0,z.default)(N=>{N[P]||(N[P]={}),N[P].default||(N[P].default={}),N[P].default=R}))},L=()=>{const P=Object.entries(M).reduce((R,N)=>{const[_,me]=N,le=Object.values(me).reduce((ge,Ee)=>Ct(Ct({},ge),Ee),{});return R[_]=le,R},{});h(P),i()};return e.createElement(Ze.ModalLayout,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(Ze.ModalHeader,null,e.createElement(Y.Breadcrumbs,{id:"condition-modal-breadcrumbs",label:t.join(", ")},t.map(P=>e.createElement(Y.Crumb,{key:P},K()(l({id:P,defaultMessage:P})))))),e.createElement(I.Box,{padding:8},e.createElement(we.Stack,{spacing:6},e.createElement(A.Typography,{variant:"beta",as:"h2"},l({id:"Settings.permissions.conditions.define-conditions",defaultMessage:"Define conditions"})),e.createElement(I.Box,null,e.createElement(De.Divider,null)),e.createElement(I.Box,null,E.length===0&&e.createElement(A.Typography,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,E.map(({actionId:P,label:R,pathToConditionsObject:N},_)=>{const me=N.join("..");return e.createElement(f,{key:P,arrayOfOptionsGroupedByCategory:C,label:R,isFormDisabled:n,isGrey:_%2===0,name:me,onChange:D,value:re()(M,me,{})})}))))),e.createElement(Ze.ModalFooter,{startActions:e.createElement(Fe.Button,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(Fe.Button,{onClick:L},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};Et.propTypes={actions:r().arrayOf(r().shape({actionId:r().string.isRequired,checkboxName:r().string,hasSomeActionsSelected:r().bool.isRequired,hasAllActionsSelected:r().bool,isDisplayed:r().bool.isRequired,label:r().string})).isRequired,headerBreadCrumbs:r().arrayOf(r().string).isRequired,isFormDisabled:r().bool.isRequired,onClosed:r().func.isRequired,onToggle:r().func.isRequired};const bt=Et,tt=b.default.div`
17
+ width: ${H};
18
+ `,Pt=(0,b.default)(k.Flex)`
19
+ padding-right: ${({theme:o})=>o.spaces[2]};
20
+ overflow: hidden;
21
+ flex: 1;
22
+ ${({isCollapsable:o})=>o&&"cursor: pointer;"}
23
+ `;var wn=Object.defineProperty,Tt=Object.getOwnPropertySymbols,jn=Object.prototype.hasOwnProperty,Nn=Object.prototype.propertyIsEnumerable,At=(o,t,n)=>t in o?wn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,kn=(o,t)=>{for(var n in t||(t={}))jn.call(t,n)&&At(o,n,t[n]);if(Tt)for(var n of Tt(t))Nn.call(t,n)&&At(o,n,t[n]);return o};const nt=({children:o,isCollapsable:t,isActive:n,isFormDisabled:s,label:i,onChange:l,onClick:c,checkboxName:u,someChecked:h,value:C})=>{const{formatMessage:E}=(0,$.useIntl)();return e.createElement(k.Flex,{alignItems:"center",paddingLeft:6,style:{width:Ce,flexShrink:0}},e.createElement(I.Box,{paddingRight:2},e.createElement(de.BaseCheckbox,{name:u,"aria-label":E({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:s,onValueChange:O=>l({target:{name:u,value:O}}),indeterminate:h,value:C})),e.createElement(Pt,kn({title:i,alignItems:"center",isCollapsable:t},t&&{onClick:c,"aria-expanded":n,onKeyDown:({key:O})=>(O==="Enter"||O===" ")&&c(),tabIndex:0,role:"button"}),e.createElement(A.Typography,{fontWeight:n?"bold":"",textColor:n?"primary600":"neutral800",ellipsis:!0},K()(i)),o))};nt.defaultProps={children:null,checkboxName:"",onChange:()=>{},value:!1,someChecked:!1,isCollapsable:!1},nt.propTypes={checkboxName:r().string,children:r().node,label:r().string.isRequired,isCollapsable:r().bool,isFormDisabled:r().bool.isRequired,onChange:r().func,onClick:r().func.isRequired,someChecked:r().bool,value:r().bool,isActive:r().bool.isRequired};const St=(0,e.memo)(nt),Ot=o=>(0,d.isObject)(o)?(0,d.flattenDeep)(Object.values(o).map(t=>(0,d.isObject)(t)?Ot(t):t)):[],ze=Ot,ot=o=>o?Object.keys(o).reduce((t,n)=>(n!=="conditions"&&(t[n]=o[n]),t),{}):null,Ke=o=>{const t=ot(o),n=ze(t);if(!n.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=n.every(l=>l),i=n.some(l=>l)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:i}},Wn=(o,t,n)=>o.map(({actionId:s,isDisplayed:i,applyToProperties:l,label:c})=>{if(!i)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:i};const u=[...n.split(".."),s],h=(0,d.isEmpty)(l)?[...u,"properties","enabled"]:u,C=h.join(".."),E=(0,d.get)(t,[...u,"conditions"],null),O=ze(E).some(L=>L);if((0,d.isEmpty)(l)){const L=(0,d.get)(t,h,!1);return{actionId:s,checkboxName:C,hasAllActionsSelected:L,hasConditions:O,hasSomeActionsSelected:L,isDisplayed:i,isParentCheckbox:!1,label:c,pathToConditionsObject:u}}const M=(0,d.get)(t,h,null),{hasAllActionsSelected:G,hasSomeActionsSelected:D}=Ke(M);return{actionId:s,checkboxName:C,hasAllActionsSelected:G,hasConditions:O,hasSomeActionsSelected:D,isDisplayed:i,isParentCheckbox:!0,label:c,pathToConditionsObject:u}});var $n=a(75120),Zn=a.n($n);const Je=(0,b.default)(Zn())`
24
+ display: none;
25
+ width: ${10/16}rem;
26
+ transform: rotate(${({$isActive:o})=>o?"180":"0"}deg);
27
+ margin-left: ${({theme:o})=>o.spaces[2]};
28
+ `,qe=o=>`
29
+ ${A.Typography} {
30
+ color: ${o.colors.primary600};
31
+ font-weight: ${o.fontWeights.bold}
32
+ }
33
+ ${Je} {
34
+ display: block;
35
+ path {
36
+ fill: ${o.colors.primary600}
37
+ };
38
+ }
39
+ `;var Rt=function(){return window&&window.strapi&&window.strapi.isEE?a(95489).Z:a(27263).Z}(),Dt=function o(t,n){return`
40
+ `.concat(xt,` {
41
+ background-color: `).concat(t.colors.primary100,`;
42
+ color: `).concat(t.colors.primary600,`;
43
+ border-radius: `).concat(n?"2px 2px 0 0":"2px",`;
44
+ }
45
+ `).concat(It,` {
46
+ display: flex;
47
+ }
48
+ `).concat(Ae,` {
49
+ display: block;
50
+ }
51
+ &:hover {
52
+ `).concat(qe(t),`
53
+ }
54
+
55
+ &:focus-within {
56
+ `).concat(function(s){var i=s.theme,l=s.isActive;return o(i,l)},`
57
+ }
58
+
59
+ `)},xt=b.default.div.withConfig({displayName:"Collapse__Wrapper",componentId:"sc-132fji1-0"})(["flex:1;display:flex;align-items:center;height:",";background-color:",";border:1px solid transparent;"],xe,function(o){var t=o.isGrey,n=o.theme;return t?n.colors.neutral100:n.colors.neutral0}),Vn=b.default.div.withConfig({displayName:"Collapse__BoxWrapper",componentId:"sc-132fji1-1"})(["display:inline-flex;min-width:100%;","{display:none;}"," &:hover{","}"],Ae,function(o){var t=o.isActive,n=o.theme;return t&&Dt(n,t)},function(o){var t=o.theme,n=o.isActive;return Dt(t,n)}),Lt=(0,b.default)(k.Flex).withConfig({displayName:"Collapse__Cell",componentId:"sc-132fji1-2"})(["width:",";position:relative;"],H),It=(0,b.default)(I.Box).withConfig({displayName:"Collapse__Chevron",componentId:"sc-132fji1-3"})(["display:none;svg{width:11px;}*{fill:",";}"],function(o){var t=o.theme;return t.colors.primary600}),Mt=b.default.span.withConfig({displayName:"Collapse__TinyDot",componentId:"sc-132fji1-4"})(["position:absolute;top:-6px;left:37px;width:6px;height:6px;border-radius:20px;background:",";"],function(o){var t=o.theme;return t.colors.primary600}),Un=(0,b.default)(I.Box).withConfig({displayName:"Collapse__AbsoluteBox",componentId:"sc-132fji1-5"})(["position:absolute;right:9px;transform:translateY(10px);"]),Ft=function(t){var n=t.availableActions,s=t.isActive,i=t.isGrey,l=t.isFormDisabled,c=t.label,u=t.onClickToggle,h=t.pathToData,C=(0,e.useState)(!1),E=(0,V.Z)(C,2),O=E[0],M=E[1],G=(0,$.useIntl)(),D=G.formatMessage,L=(0,F.$_)(),P=L.modifiedData,R=L.onChangeParentCheckbox,N=L.onChangeSimpleCheckbox,_=function(){M(function(pe){return!pe})},me=function(){M(!1)},le=re()(P,h.split(".."),{}),ge=(0,e.useMemo)(function(){return Object.keys(le).reduce(function(te,pe){return te[pe]=Te()(le[pe],"conditions"),te},{})},[le]),Ee=Ke(ge),he=Ee.hasAllActionsSelected,He=Ee.hasSomeActionsSelected,ce=(0,e.useMemo)(function(){return Wn(n,P,h)},[n,P,h]),be=ce.some(function(te){var pe=te.hasConditions;return pe});return e.createElement(Vn,{isActive:s},e.createElement(xt,{isGrey:i},e.createElement(St,{isCollapsable:!0,isFormDisabled:l,label:c,checkboxName:h,onChange:R,onClick:u,someChecked:He,value:he,isActive:s},e.createElement(It,{paddingLeft:2},s?e.createElement(Re(),null):e.createElement(ke(),null))),e.createElement(k.Flex,{style:{flex:1}},ce.map(function(te){var pe=te.actionId,fe=te.hasConditions,Pe=te.hasAllActionsSelected,Oe=te.hasSomeActionsSelected,Ge=te.isDisplayed,Le=te.isParentCheckbox,Ue=te.checkboxName,Ye=te.label;return Ge?Le?e.createElement(Lt,{key:pe,justifyContent:"center",alignItems:"center"},fe&&e.createElement(Mt,null),e.createElement(de.BaseCheckbox,{disabled:l||Rt,name:Ue,"aria-label":D({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(Ye," ").concat(c)}),onValueChange:function(Xe){R({target:{name:Ue,value:Xe}})},indeterminate:Oe,value:Pe})):e.createElement(Lt,{key:pe,justifyContent:"center",alignItems:"center"},fe&&e.createElement(Mt,null),e.createElement(de.BaseCheckbox,{disabled:l||Rt,indeterminate:fe,name:Ue,onValueChange:function(Xe){N({target:{name:Ue,value:Xe}})},value:Pe})):e.createElement(tt,{key:pe})})),O&&e.createElement(bt,{headerBreadCrumbs:[c,"app.components.LeftMenuLinkContainer.settings"],actions:ce,isFormDisabled:l,onClosed:me,onToggle:_})),e.createElement(Un,null,e.createElement(Ae,{onClick:_,hasConditions:be})))};Ft.propTypes={availableActions:r().array.isRequired,isActive:r().bool.isRequired,isGrey:r().bool.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,onClickToggle:r().func.isRequired,pathToData:r().string.isRequired};const Gn=Ft,Kn=(o,t)=>o.map(n=>{const s=Array.isArray(n.applyToProperties)&&n.applyToProperties.indexOf(t)!==-1&&n.isDisplayed;return{label:n.label,actionId:n.actionId,isActionRelatedToCurrentProperty:s}}),Bt=(0,b.default)(k.Flex)`
60
+ width: ${H};
61
+ flex-shrink: 0;
62
+ `,Hn=(0,b.default)(k.Flex)`
63
+ width: ${Ce};
64
+ height: ${xe};
65
+ flex-shrink: 0;
66
+ `,wt=({headers:o,label:t})=>{const{formatMessage:n}=(0,$.useIntl)(),s=n({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:t});return e.createElement(k.Flex,null,e.createElement(Hn,{alignItems:"center",paddingLeft:6},e.createElement(A.Typography,{variant:"sigma",textColor:"neutral500"},s)),o.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(Bt,{justifyContent:"center",key:i.label},e.createElement(A.Typography,{variant:"sigma",textColor:"neutral500"},n({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(Bt,{key:i.label})))};wt.propTypes={headers:r().arrayOf(r().shape({label:r().string.isRequired,isActionRelatedToCurrentProperty:r().bool.isRequired})).isRequired,label:r().string.isRequired};const Xn=wt,zn=b.default.span`
67
+ color: ${({theme:o})=>o.colors.danger700};
68
+ padding-left: ${({theme:o})=>o.spaces[1]}px;
69
+ `,jt=()=>e.createElement(zn,null,"*");var Yn=Object.defineProperty,Qn=Object.defineProperties,Jn=Object.getOwnPropertyDescriptors,Nt=Object.getOwnPropertySymbols,qn=Object.prototype.hasOwnProperty,_n=Object.prototype.propertyIsEnumerable,kt=(o,t,n)=>t in o?Yn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,eo=(o,t)=>{for(var n in t||(t={}))qn.call(t,n)&&kt(o,n,t[n]);if(Nt)for(var n of Nt(t))_n.call(t,n)&&kt(o,n,t[n]);return o},to=(o,t)=>Qn(o,Jn(t));const no=(o,t)=>o.map(n=>{const s=Array.isArray(n.subjects)&&n.subjects.indexOf(t)!==-1;return to(eo({},n),{isDisplayed:s})});var oo=a(64106),ao=Object.defineProperty,Wt=Object.getOwnPropertySymbols,so=Object.prototype.hasOwnProperty,ro=Object.prototype.propertyIsEnumerable,$t=(o,t,n)=>t in o?ao(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,io=(o,t)=>{for(var n in t||(t={}))so.call(t,n)&&$t(o,n,t[n]);if(Wt)for(var n of Wt(t))ro.call(t,n)&&$t(o,n,t[n]);return o};const lo=(0,b.default)(I.Box)`
70
+ transform: translate(-4px, -12px);
71
+
72
+ &:before {
73
+ content: '';
74
+ width: ${4/16}rem;
75
+ height: ${12/16}rem;
76
+ background: ${({theme:o})=>o.colors.primary200};
77
+ display: block;
78
+ }
79
+ `,co=b.default.svg`
80
+ position: relative;
81
+ flex-shrink: 0;
82
+ transform: translate(-0.5px, -1px);
83
+
84
+ * {
85
+ fill: ${({theme:o,color:t})=>o.colors[t]};
86
+ }
87
+ `,at=o=>e.createElement(lo,null,e.createElement(co,io({width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o),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"})));at.defaultProps={fill:"primary200"},at.propTypes={fill:r().string};const uo=(0,e.memo)(at);var Zt=function(){return window&&window.strapi&&window.strapi.isEE?a(25684).Z:a(43489).Z}(),Vt=(0,b.default)(k.Flex).withConfig({displayName:"SubActionRow__Cell",componentId:"sc-7y8yzq-0"})(["width:",";position:relative;"],H),po=(0,b.default)(k.Flex).withConfig({displayName:"SubActionRow__RowWrapper",componentId:"sc-7y8yzq-1"})(["height:",";"],xe),mo=(0,b.default)(I.Box).withConfig({displayName:"SubActionRow__Wrapper",componentId:"sc-7y8yzq-2"})(["padding-left:","rem;"],31/16),go=(0,b.default)(I.Box).withConfig({displayName:"SubActionRow__LeftBorderTimeline",componentId:"sc-7y8yzq-3"})(["border-left:",";"],function(o){var t=o.isVisible,n=o.theme;return t?"4px solid ".concat(n.colors.primary200):"4px solid transparent"}),fo=(0,b.default)(k.Flex).withConfig({displayName:"SubActionRow__RowStyle",componentId:"sc-7y8yzq-4"})(["padding-left:",";width:","px;"," ",";"],function(o){var t=o.theme;return t.spaces[4]},function(o){var t=o.level;return 145-t*36},function(o){var t=o.isCollapsable,n=o.theme;return t&&`
88
+ `.concat(Je,` {
89
+ display: block;
90
+ color: `).concat(n.colors.neutral100,`;
91
+ }
92
+ &:hover {
93
+ `).concat(qe(n),`
94
+ }
95
+ `)},function(o){var t=o.isActive,n=o.theme;return t&&qe(n)}),ho=b.default.div.withConfig({displayName:"SubActionRow__TopTimeline",componentId:"sc-7y8yzq-5"})(["padding-top:",";margin-top:",";width:","rem;background-color:",";border-top-left-radius:2px;border-top-right-radius:2px;"],function(o){var t=o.theme;return t.spaces[2]},function(o){var t=o.theme;return t.spaces[2]},4/16,function(o){var t=o.theme;return t.colors.primary200}),Ut=function o(t){var n=t.childrenForm,s=t.isFormDisabled,i=t.recursiveLevel,l=t.pathToDataFromActionRow,c=t.propertyActions,u=t.parentName,h=t.propertyName,C=(0,$.useIntl)(),E=C.formatMessage,O=(0,F.$_)(),M=O.modifiedData,G=O.onChangeParentCheckbox,D=O.onChangeSimpleCheckbox,L=(0,e.useState)(null),P=(0,V.Z)(L,2),R=P[0],N=P[1],_=function(ge){N(function(Ee){return Ee===ge?null:ge})},me=(0,e.useMemo)(function(){return R?n.find(function(le){var ge=le.value;return ge===R}):null},[R,n]);return e.createElement(mo,null,e.createElement(ho,null),n.map(function(le,ge){var Ee=le.label,he=le.value,He=le.required,ce=le.children,be=ge+1<n.length,te=Array.isArray(ce),pe=R===he;return e.createElement(go,{key:he,isVisible:be},e.createElement(po,null,e.createElement(uo,{color:"primary200"}),e.createElement(k.Flex,{style:{flex:1}},e.createElement(fo,{level:i,isActive:pe,isCollapsable:te},e.createElement(Pt,(0,oo.Z)({alignItems:"center",isCollapsable:te},te&&{onClick:function(){return _(he)},"aria-expanded":pe,onKeyDown:function(Pe){var Oe=Pe.key;return(Oe==="Enter"||Oe===" ")&&_(he)},tabIndex:0,role:"button"},{title:Ee}),e.createElement(A.Typography,{ellipsis:!0},K()(Ee)),He&&e.createElement(jt,null),e.createElement(Je,{$isActive:pe}))),e.createElement(k.Flex,{style:{flex:1}},c.map(function(fe){var Pe=fe.actionId,Oe=fe.label,Ge=fe.isActionRelatedToCurrentProperty;if(!Ge)return e.createElement(tt,{key:Pe});var Le=[].concat((0,B.Z)(l.split("..")),[Pe,"properties",h],(0,B.Z)(u.split("..")),[he]),Ue=re()(M,Le,!1);if(!ce)return e.createElement(Vt,{key:Oe,justifyContent:"center",alignItems:"center"},e.createElement(de.BaseCheckbox,{disabled:s||Zt,name:Le.join(".."),"aria-label":E({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(u," ").concat(Ee," ").concat(Oe)}),onValueChange:function(_e){D({target:{name:Le.join(".."),value:_e}})},value:Ue}));var Ye=Ke(Ue),Qe=Ye.hasAllActionsSelected,Xe=Ye.hasSomeActionsSelected;return e.createElement(Vt,{key:Oe,justifyContent:"center",alignItems:"center"},e.createElement(de.BaseCheckbox,{key:Oe,disabled:s||Zt,name:Le.join(".."),"aria-label":E({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(u," ").concat(Ee," ").concat(Oe)}),onValueChange:function(_e){G({target:{name:Le.join(".."),value:_e}})},value:Qe,indeterminate:Xe}))})))),me&&pe&&e.createElement(I.Box,{paddingBottom:2},e.createElement(o,{isFormDisabled:s,parentName:"".concat(u,"..").concat(he),pathToDataFromActionRow:l,propertyActions:c,propertyName:h,recursiveLevel:i+1,childrenForm:me.children})))}))};Ut.propTypes={childrenForm:r().array.isRequired,isFormDisabled:r().bool.isRequired,parentName:r().string.isRequired,pathToDataFromActionRow:r().string.isRequired,propertyActions:r().array.isRequired,propertyName:r().string.isRequired,recursiveLevel:r().number.isRequired};const yo=(0,e.memo)(Ut),vo=o=>o.reduce((n,s)=>(s.isActionRelatedToCurrentProperty&&n.push(s.actionId),n),[]),Co=(o,t,n,s,i)=>{const c=vo(o).reduce((u,h)=>{const C=[...n.split(".."),h,"properties",s,i],E=(0,d.get)(t,C,!1);return u[h]=E,u},{});return Ke(c)};var Gt=function(){return window&&window.strapi&&window.strapi.isEE?a(58630).Z:a(44404).Z}(),Kt=(0,b.default)(k.Flex).withConfig({displayName:"ActionRow__Cell",componentId:"sc-4agenc-0"})(["width:",";position:relative;"],H),Eo=(0,b.default)(k.Flex).withConfig({displayName:"ActionRow__Wrapper",componentId:"sc-4agenc-1"})(["height:",";flex:1;"," ",";"],xe,function(o){var t=o.isCollapsable,n=o.theme;return t&&`
96
+ `.concat(Je,` {
97
+ display: block;
98
+ color: `).concat(n.colors.neutral100,`;
99
+ }
100
+ &:hover {
101
+ `).concat(qe(n),`
102
+ }
103
+ `)},function(o){var t=o.isActive,n=o.theme;return t&&qe(n)}),st=function(t){var n=t.childrenForm,s=t.label,i=t.isFormDisabled,l=t.name,c=t.required,u=t.pathToData,h=t.propertyActions,C=t.propertyName,E=t.isOdd,O=(0,$.useIntl)(),M=O.formatMessage,G=(0,e.useState)(null),D=(0,V.Z)(G,2),L=D[0],P=D[1],R=(0,F.$_)(),N=R.modifiedData,_=R.onChangeCollectionTypeLeftActionRowCheckbox,me=R.onChangeParentCheckbox,le=R.onChangeSimpleCheckbox,ge=L===l,Ee=(0,e.useMemo)(function(){return Array.isArray(n)?n:[]},[n]),he=Ee.length>0,He=(0,e.useCallback)(function(){he&&P(function(fe){return fe===l?null:l})},[he,l]),ce=function(Pe){var Oe=Pe.target.value;_(u,C,l,Oe)},be=(0,e.useMemo)(function(){return Co(h,N,u,C,l)},[h,N,u,C,l]),te=be.hasAllActionsSelected,pe=be.hasSomeActionsSelected;return e.createElement(e.Fragment,null,e.createElement(Eo,{alignItems:"center",isCollapsable:he,isActive:ge,background:E?"neutral100":"neutral0"},e.createElement(k.Flex,null,e.createElement(St,{onChange:ce,onClick:He,isCollapsable:he,isFormDisabled:i,label:s,someChecked:pe,value:te,isActive:ge},c&&e.createElement(jt,null),e.createElement(Je,{$isActive:ge})),e.createElement(k.Flex,null,h.map(function(fe){var Pe=fe.label,Oe=fe.isActionRelatedToCurrentProperty,Ge=fe.actionId;if(!Oe)return e.createElement(tt,{key:Pe});var Le=[].concat((0,B.Z)(u.split("..")),[Ge,"properties",C,l]);if(!he){var Ue=re()(N,Le,!1);return e.createElement(Kt,{key:Ge,justifyContent:"center",alignItems:"center"},e.createElement(de.BaseCheckbox,{disabled:i||Gt,name:Le.join(".."),"aria-label":M({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(l," ").concat(Pe)}),onValueChange:function(yt){le({target:{name:Le.join(".."),value:yt}})},value:Ue}))}var Ye=re()(N,Le,{}),Qe=Ke(Ye),Xe=Qe.hasAllActionsSelected,ht=Qe.hasSomeActionsSelected;return e.createElement(Kt,{key:Pe,justifyContent:"center",alignItems:"center"},e.createElement(de.BaseCheckbox,{disabled:i||Gt,name:Le.join(".."),onValueChange:function(yt){me({target:{name:Le.join(".."),value:yt}})},"aria-label":M({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(l," ").concat(Pe)}),value:Xe,indeterminate:ht}))})))),ge&&e.createElement(yo,{childrenForm:Ee,isFormDisabled:i,parentName:l,pathToDataFromActionRow:u,propertyName:C,propertyActions:h,recursiveLevel:0}))};st.defaultProps={childrenForm:[],required:!1},st.propTypes={childrenForm:r().array,label:r().string.isRequired,isFormDisabled:r().bool.isRequired,name:r().string.isRequired,pathToData:r().string.isRequired,propertyActions:r().array.isRequired,propertyName:r().string.isRequired,required:r().bool,isOdd:r().bool.isRequired};const bo=(0,e.memo)(st),Po=b.default.div`
104
+ display: inline-flex;
105
+ flex-direction: column;
106
+ min-width: 0;
107
+ `,Ht=({availableActions:o,childrenForm:t,isFormDisabled:n,label:s,pathToData:i,propertyName:l})=>{const c=(0,e.useMemo)(()=>Kn(o,l),[o,l]);return e.createElement(Po,null,e.createElement(Xn,{label:s,headers:c}),e.createElement(I.Box,null,t.map(({children:u,label:h,value:C,required:E},O)=>e.createElement(bo,{childrenForm:u,key:C,label:h,isFormDisabled:n,name:C,required:E,propertyActions:c,pathToData:i,propertyName:l,isOdd:O%2===0}))))};Ht.propTypes={childrenForm:r().array.isRequired,availableActions:r().array.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,pathToData:r().string.isRequired,propertyName:r().string.isRequired};const To=Ht,Ao=b.default.div`
108
+ flex-direction: column;
109
+ display: inline-flex;
110
+ min-width: 100%;
111
+ ${({theme:o,isActive:t})=>t&&`border: 1px solid ${o.colors.primary600};`}
112
+ `,Xt=({allActions:o,contentTypeName:t,label:n,index:s,isActive:i,isFormDisabled:l,onClickToggleCollapse:c,pathToData:u,properties:h})=>{const C=(0,e.useCallback)(()=>{c(t)},[t,c]),E=(0,e.useMemo)(()=>no(o,t),[o,t]);return e.createElement(Ao,{isActive:i},e.createElement(Gn,{availableActions:E,isActive:i,isGrey:s%2===0,isFormDisabled:l,label:n,onClickToggle:C,pathToData:u}),i&&h.map(({label:O,value:M,children:G})=>e.createElement(To,{availableActions:E,childrenForm:G,isFormDisabled:l,label:O,pathToData:u,propertyName:M,key:M})))};Xt.propTypes={allActions:r().array.isRequired,contentTypeName:r().string.isRequired,index:r().number.isRequired,isActive:r().bool.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,onClickToggleCollapse:r().func.isRequired,pathToData:r().string.isRequired,properties:r().array.isRequired};const So=Xt,rt=({actions:o,isFormDisabled:t,pathToData:n,subjects:s})=>{const[i,l]=(0,e.useState)(null),c=u=>{l(i===u?null:u)};return s.map(({uid:u,label:h,properties:C},E)=>e.createElement(So,{allActions:o,key:u,contentTypeName:u,label:h,isActive:i===u,isFormDisabled:t,index:E,onClickToggleCollapse:c,pathToData:`${n}..${u}`,properties:C}))};rt.defaultProps={actions:[],subjects:[]},rt.propTypes={actions:r().array.isRequired,isFormDisabled:r().bool.isRequired,pathToData:r().string.isRequired,subjects:r().arrayOf(r().shape({uid:r().string.isRequired,label:r().string.isRequired,properties:r().array.isRequired}))};const Oo=(0,e.memo)(rt),Ro=o=>o.filter(({subjects:t})=>t&&t.length);var Do=Object.defineProperty,zt=Object.getOwnPropertySymbols,xo=Object.prototype.hasOwnProperty,Lo=Object.prototype.propertyIsEnumerable,Yt=(o,t,n)=>t in o?Do(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Qt=(o,t)=>{for(var n in t||(t={}))xo.call(t,n)&&Yt(o,n,t[n]);if(zt)for(var n of zt(t))Lo.call(t,n)&&Yt(o,n,t[n]);return o};const Io=o=>o.map(({actionId:t})=>t),Mo=(o,t)=>o.reduce((n,s)=>(Object.keys(t).forEach(i=>{const l=(0,d.get)(t,[i,s],{}),c={[i]:ot(l)};n[s]?n[s]=Qt(Qt({},n[s]),c):n[s]=c}),n),{}),Fo=(o,t)=>{const n=Io(o),s=Mo(n,t);return Object.keys(s).reduce((l,c)=>(l[c]=Ke(s[c]),l),{})};var Bo=function(){return window&&window.strapi&&window.strapi.isEE?a(26891).Z:a(63857).Z}(),wo=(0,b.default)(we.Stack).withConfig({displayName:"GlobalActions__CenteredStack",componentId:"sc-1vxwsjr-0"})(["align-items:center;justify-content:center;width:",";flex-shrink:0;"],H),it=function(t){var n=t.actions,s=t.isFormDisabled,i=t.kind,l=(0,$.useIntl)(),c=l.formatMessage,u=(0,F.$_)(),h=u.modifiedData,C=u.onChangeCollectionTypeGlobalActionCheckbox,E=(0,e.useMemo)(function(){return Ro(n)},[n]),O=(0,e.useMemo)(function(){return Fo(E,h[i])},[h,E,i]);return e.createElement(I.Box,{paddingBottom:4,paddingTop:6,style:{paddingLeft:Ce}},e.createElement(we.Stack,{horizontal:!0,spacing:0},E.map(function(M){var G=M.label,D=M.actionId;return e.createElement(wo,{key:D,spacing:3},e.createElement(A.Typography,{variant:"sigma",textColor:"neutral500"},c({id:"Settings.roles.form.permissions.".concat(G.toLowerCase()),defaultMessage:G})),e.createElement(de.BaseCheckbox,{disabled:s||Bo,onValueChange:function(P){C(i,D,P)},name:D,"aria-label":c({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:c({id:"Settings.roles.form.permissions.".concat(G.toLowerCase()),defaultMessage:G})}),value:re()(O,[D,"hasAllActionsSelected"],!1),indeterminate:re()(O,[D,"hasSomeActionsSelected"],!1)}))})))};it.defaultProps={actions:[]},it.propTypes={actions:r().arrayOf(r().shape({label:r().string.isRequired,actionId:r().string.isRequired,subjects:r().array.isRequired})),isFormDisabled:r().bool.isRequired,kind:r().string.isRequired};const jo=(0,e.memo)(it),No=(0,b.default)(I.Box)`
113
+ overflow-x: auto;
114
+ `,Jt=({isFormDisabled:o,kind:t,layout:{actions:n,subjects:s}})=>{const i=oe()([...s],"label");return e.createElement(No,{background:"neutral0"},e.createElement(jo,{actions:n,kind:t,isFormDisabled:o}),e.createElement(Oo,{actions:n,isFormDisabled:o,pathToData:t,subjects:i}))};Jt.propTypes={isFormDisabled:r().bool.isRequired,kind:r().string.isRequired,layout:r().shape({actions:r().array,subjects:r().arrayOf(r().shape({uid:r().string.isRequired,label:r().string.isRequired,properties:r().array.isRequired}))}).isRequired};const qt=(0,e.memo)(Jt);var ko=a(87951);const _t=({children:o,value:t})=>e.createElement(ko.$l.Provider,{value:t},o);_t.propTypes={children:r().node.isRequired,value:r().exact({availableConditions:r().array.isRequired,modifiedData:r().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:r().func.isRequired,onChangeConditions:r().func.isRequired,onChangeSimpleCheckbox:r().func.isRequired,onChangeParentCheckbox:r().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:r().func.isRequired}).isRequired};const Wo=_t;var lt=a(12001),en=a(78330),tn=a(52111),$o=Object.defineProperty,Zo=Object.defineProperties,Vo=Object.getOwnPropertyDescriptors,nn=Object.getOwnPropertySymbols,Uo=Object.prototype.hasOwnProperty,Go=Object.prototype.propertyIsEnumerable,on=(o,t,n)=>t in o?$o(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Ko=(o,t)=>{for(var n in t||(t={}))Uo.call(t,n)&&on(o,n,t[n]);if(nn)for(var n of nn(t))Go.call(t,n)&&on(o,n,t[n]);return o},Ho=(o,t)=>Zo(o,Vo(t));const Xo=(o,t,n)=>o.map(s=>{const i=[...n,s.action,"properties","enabled"],l=(0,d.get)(t,i,!1),c=(0,d.get)(t,[...n,s.action,"conditions"],{}),u=ze(c).some(h=>h);return Ho(Ko({},s),{isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:u,label:s.displayName,actionId:s.action,pathToConditionsObject:[...n,s.action]})}),zo=o=>{const t=Object.entries(o).reduce((s,i)=>{const[l,{conditions:c}]=i;return s[l]=c,s},{});return ze(t).some(s=>s)};var ct=function(){return window&&window.strapi&&window.strapi.isEE?a(96855).Z:a(44827).Z}(),Yo=b.default.div.withConfig({displayName:"SubCategory__Border",componentId:"sc-akgczm-0"})(["flex:1;align-self:center;border-top:1px solid ",";"],function(o){var t=o.theme;return t.colors.neutral150}),Qo=b.default.div.withConfig({displayName:"SubCategory__CheckboxWrapper",componentId:"sc-akgczm-1"})(["position:relative;word-break:keep-all;",""],function(o){var t=o.hasConditions,n=o.disabled,s=o.theme;return t&&`
115
+ &:before {
116
+ content: '';
117
+ position: absolute;
118
+ top: `.concat(-4/16,`rem;
119
+ left: `).concat(-8/16,`rem;
120
+ width: `).concat(6/16,`rem;
121
+ height: `).concat(6/16,`rem;
122
+ border-radius: `).concat(20/16,`rem;
123
+ background: `).concat(n?s.colors.neutral100:s.colors.primary600,`;
124
+ }
125
+ `)}),an=function(t){var n=t.categoryName,s=t.isFormDisabled,i=t.subCategoryName,l=t.actions,c=t.pathToData,u=(0,e.useState)(!1),h=(0,V.Z)(u,2),C=h[0],E=h[1],O=(0,F.$_)(),M=O.modifiedData,G=O.onChangeParentCheckbox,D=O.onChangeSimpleCheckbox,L=(0,$.useIntl)(),P=L.formatMessage,R=re()(M,c,{}),N=(0,e.useMemo)(function(){return Object.keys(R).reduce(function(ce,be){return ce[be]=ot(R[be]),ce},{})},[R]),_=Ke(N),me=_.hasAllActionsSelected,le=_.hasSomeActionsSelected,ge=function(){E(function(be){return!be})},Ee=function(){E(!1)},he=Xo(l,M,c),He=zo(re()(M,(0,B.Z)(c),{}));return e.createElement(e.Fragment,null,e.createElement(I.Box,null,e.createElement(k.Flex,{justifyContent:"space-between",alignItems:"center"},e.createElement(I.Box,{paddingRight:4},e.createElement(A.Typography,{variant:"sigma",textColor:"neutral600"},i)),e.createElement(Yo,null),e.createElement(I.Box,{paddingLeft:4},e.createElement(tn.Checkbox,{name:c.join(".."),disabled:s||ct,onValueChange:function(be){G({target:{name:c.join(".."),value:be}})},indeterminate:le,value:me},P({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(k.Flex,{paddingTop:6,paddingBottom:6},e.createElement(en.Grid,{gap:2,style:{flex:1}},he.map(function(ce){var be=ce.checkboxName,te=ce.value,pe=ce.action,fe=ce.displayName,Pe=ce.hasConditions;return e.createElement(en.GridItem,{col:3,key:pe},e.createElement(Qo,{disabled:s||ct,hasConditions:Pe},e.createElement(tn.Checkbox,{name:be,disabled:s||ct,onValueChange:function(Ge){D({target:{name:be,value:Ge}})},value:te},fe)))})),e.createElement(Ae,{hasConditions:He,onClick:ge}))),C&&e.createElement(bt,{headerBreadCrumbs:[n,i],actions:he,isFormDisabled:s,onClosed:Ee,onToggle:ge}))};an.propTypes={actions:r().array.isRequired,categoryName:r().string.isRequired,isFormDisabled:r().bool.isRequired,subCategoryName:r().string.isRequired,pathToData:r().array.isRequired};const Jo=an,dt=({childrenForm:o,kind:t,name:n,isOpen:s,isFormDisabled:i,isWhite:l,onOpenCategory:c,pathToData:u})=>{const{formatMessage:h}=(0,$.useIntl)(),C=()=>{c(n)},E=(0,e.useMemo)(()=>n.split("::").pop(),[n]);return e.createElement(lt.Accordion,{expanded:s,onToggle:C,id:`accordion-${n}`,variant:l?"primary":"secondary"},e.createElement(lt.AccordionToggle,{title:K()(E),description:`${h({id:"Settings.permissions.category"},{category:E})} ${t==="plugins"?"plugin":t}`}),e.createElement(lt.AccordionContent,null,e.createElement(I.Box,{padding:6},o.map(({actions:O,subCategoryName:M,subCategoryId:G})=>e.createElement(Jo,{key:M,actions:O,categoryName:E,isFormDisabled:i,subCategoryName:M,pathToData:[...u,G]})))))};dt.defaultProps={},dt.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};const qo=dt,sn=({isFormDisabled:o,kind:t,layout:n})=>{const[s,i]=(0,e.useState)(null),l=c=>{i(c===s?null:c)};return e.createElement(I.Box,{padding:6,background:"neutral0"},n.map(({category:c,categoryId:u,childrenForm:h},C)=>e.createElement(qo,{key:c,childrenForm:h,kind:t,isFormDisabled:o,isOpen:s===c,isWhite:C%2===1,name:c,onOpenCategory:l,pathToData:[t,u]})))};sn.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};const rn=sn,ln=(o,t,n)=>o.find(s=>s.action===t&&s.subject===n);var _o=Object.defineProperty,ea=Object.defineProperties,ta=Object.getOwnPropertyDescriptors,cn=Object.getOwnPropertySymbols,na=Object.prototype.hasOwnProperty,oa=Object.prototype.propertyIsEnumerable,dn=(o,t,n)=>t in o?_o(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,un=(o,t)=>{for(var n in t||(t={}))na.call(t,n)&&dn(o,n,t[n]);if(cn)for(var n of cn(t))oa.call(t,n)&&dn(o,n,t[n]);return o},pn=(o,t)=>ea(o,ta(t));const mn=(o,t=[])=>o.reduce((n,s)=>(n[s.id]=t.indexOf(s.id)!==-1,n),{}),gn=({children:o},t,n="")=>o.reduce((s,i)=>{if(i.children)return pn(un({},s),{[i.value]:gn(i,t,`${n}${i.value}.`)});const l=t.indexOf(`${n}${i.value}`)!==-1;return s[i.value]=l,s},{}),aa=(o,t,n)=>o.reduce((s,i)=>{const l=t.properties.find(({value:c})=>c===i);if(l){const c=(0,d.get)(n,["properties",l.value],[]),u=gn(l,c);s.properties[i]=u}return s},{properties:{}}),sa=(o,t)=>t.reduce((n,s)=>{const i=o.find(({uid:l})=>l===s)||null;return i&&(n[s]=i),n},{}),fn=({subjects:o},t,n,s=[])=>t.reduce((i,l)=>{const c=l.subjects,u=sa(o,c);if((0,d.isEmpty)(u))return i;const h=Object.keys(u).reduce((C,E)=>{const{actionId:O,applyToProperties:M}=l,L=u[E].properties.map(({value:_})=>_).every(_=>(M||[]).indexOf(_)===-1),P=ln(s,O,E),R=mn(n,(0,d.get)(P,"conditions",[]));if((0,d.isEmpty)(M)||L)return(0,d.set)(C,[E,O],{properties:{enabled:P!==void 0},conditions:R}),C;const N=aa(M,u[E],P);return(0,d.set)(C,[E,O],pn(un({},N),{conditions:R})),C},{});return(0,d.merge)(i,h)},{}),ra=(o,t,n)=>o.reduce((s,i)=>{const l=ln(n,i.action,null);return s[i.action]={properties:{enabled:l!==void 0},conditions:mn(t,(0,d.get)(l,"conditions",[]))},s},{}),ia=(o,t,n)=>o.reduce((s,i)=>(s[i.subCategoryId]=ra(i.actions,t,n),s),{}),hn=(o,t,n=[])=>o.reduce((s,{categoryId:i,childrenForm:l})=>{const c=ia(l,t,n);return s[i]=c,s},{}),yn=o=>o.split(" ").join("-"),vn=(o,t)=>(0,d.chain)(o).groupBy(t).map((n,s)=>({category:s,categoryId:yn(s),childrenForm:(0,d.chain)(n).groupBy("subCategory").map((i,l)=>({subCategoryName:l,subCategoryId:yn(l),actions:i})).value()})).value(),la=(o,t)=>{const{conditions:n,sections:{collectionTypes:s,singleTypes:i,plugins:l,settings:c}}=o,u={collectionTypes:s,singleTypes:i,plugins:vn(l,"plugin"),settings:vn(c,"category")},h={collectionTypes:fn(s,s.actions||[],n,t),singleTypes:fn(i,i.actions||[],n,t),plugins:hn(u.plugins,n,t),settings:hn(u.settings,n,t)};return{initialData:h,modifiedData:h,layouts:u}};var ca=Object.defineProperty,da=Object.defineProperties,ua=Object.getOwnPropertyDescriptors,Cn=Object.getOwnPropertySymbols,pa=Object.prototype.hasOwnProperty,ma=Object.prototype.propertyIsEnumerable,En=(o,t,n)=>t in o?ca(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,ut=(o,t)=>{for(var n in t||(t={}))pa.call(t,n)&&En(o,n,t[n]);if(Cn)for(var n of Cn(t))ma.call(t,n)&&En(o,n,t[n]);return o},pt=(o,t)=>da(o,ua(t));const bn=o=>Object.keys(o).reduce((t,n)=>{const s=o[n];if((0,d.isObject)(s)&&!(0,d.has)(s,"conditions"))return pt(ut({},t),{[n]:bn(s)});if((0,d.isObject)(s)&&(0,d.has)(s,"conditions")&&!ze((0,d.omit)(s,"conditions")).some(l=>l)){const l=Object.keys(s.conditions).reduce((c,u)=>(c[u]=!1,c),{});return pt(ut({},t),{[n]:pt(ut({},s),{conditions:l})})}return t[n]=s,t},{}),mt=bn;var ga=Object.defineProperty,fa=Object.defineProperties,ha=Object.getOwnPropertyDescriptors,Pn=Object.getOwnPropertySymbols,ya=Object.prototype.hasOwnProperty,va=Object.prototype.propertyIsEnumerable,Tn=(o,t,n)=>t in o?ga(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Ca=(o,t)=>{for(var n in t||(t={}))ya.call(t,n)&&Tn(o,n,t[n]);if(Pn)for(var n of Pn(t))va.call(t,n)&&Tn(o,n,t[n]);return o},Ea=(o,t)=>fa(o,ha(t));const An=(o,t)=>Object.keys(o).reduce((n,s)=>{const i=o[s];return s==="conditions"?(n[s]=i,n):(0,d.isObject)(i)?Ea(Ca({},n),{[s]:An(i,t)}):(n[s]=t,n)},{}),et=An;var ba=Object.defineProperty,Pa=Object.defineProperties,Ta=Object.getOwnPropertyDescriptors,Sn=Object.getOwnPropertySymbols,Aa=Object.prototype.hasOwnProperty,Sa=Object.prototype.propertyIsEnumerable,On=(o,t,n)=>t in o?ba(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Oa=(o,t)=>{for(var n in t||(t={}))Aa.call(t,n)&&On(o,n,t[n]);if(Sn)for(var n of Sn(t))Sa.call(t,n)&&On(o,n,t[n]);return o},Ra=(o,t)=>Pa(o,Ta(t));const Da={initialData:{},modifiedData:{},layouts:{}},xa=(o,t)=>(0,z.default)(o,n=>{switch(t.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:l}=t,c=["modifiedData",s];Object.keys((0,d.get)(o,c)).forEach(u=>{const h=(0,d.get)(o,[...c,u,i],void 0);if(h){let C=et(h,l);if(!l&&C.conditions){const E=et(C.conditions,!1);C=Ra(Oa({},C),{conditions:E})}(0,d.set)(n,[...c,u,i],C)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:l,value:c}=t;let u=(0,d.cloneDeep)(o.modifiedData);const h=s.split(".."),C=(0,d.get)(u,h,{});Object.keys(C).forEach(E=>{if((0,d.has)(C[E],`properties.${i}`)){const O=(0,d.get)(C,[E,"properties",i,l]),M=[...h,E,"properties",i,l];if(!(0,d.isObject)(O))(0,d.set)(u,M,c);else{const G=et(O,c);(0,d.set)(u,M,G)}}}),c||(u=mt(u)),(0,d.set)(n,"modifiedData",u);break}case"ON_CHANGE_CONDITIONS":{Object.entries(t.conditions).forEach(s=>{const[i,l]=s;(0,d.set)(n,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=(0,d.cloneDeep)(o.modifiedData);(0,d.set)(s,[...t.keys.split("..")],t.value),t.value||(s=mt(s)),(0,d.set)(n,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=t,l=[...s.split("..")];let c=(0,d.cloneDeep)(o.modifiedData);const u=(0,d.get)(c,l,{}),h=et(u,i);(0,d.set)(c,l,h),i||(c=mt(c)),(0,d.set)(n,["modifiedData"],c);break}case"RESET_FORM":{n.modifiedData=o.initialData;break}case"SET_FORM_AFTER_SUBMIT":{n.initialData=o.modifiedData;break}default:return n}}),gt=o=>Object.entries(o).filter(([,t])=>t).map(([t])=>t),La=o=>{const[t,{conditions:n}]=o;return{action:t,subject:null,conditions:gt(n),properties:{}}},Ia=o=>Object.values(o).reduce((t,n)=>{const s=Object.entries(n).reduce((i,l)=>{const[,{properties:{enabled:c}}]=l;if(!c)return i;const u=La(l);return i.push(u),i},[]);return[...t,...s]},[]),Rn=o=>Object.values(o).reduce((t,n)=>{const s=Ia(n);return[...t,...s]},[]),Dn=(o,t="")=>Object.entries(o).reduce((n,s)=>{const[i,l]=s;return(0,d.isObject)(l)?[...n,...Dn(l,`${t}${i}.`)]:(l&&!(0,d.isObject)(l)&&n.push(`${t}${i}`),n)},[]),Ma=(o,t,{conditions:n,properties:s})=>Object.entries(s).reduce((i,l)=>{const[c,u]=l;return i.properties[c]=Dn(u),i},{action:o,subject:t,conditions:gt(n),properties:{}}),Fa=(o,t,{conditions:n})=>({action:o,subject:t,properties:{},conditions:gt(n)}),Ba=(o,t)=>Object.entries(t).reduce((s,i)=>{const[l,c]=i;if(!ze(c).some(C=>C))return s;if(!(0,d.has)(c,"properties.enabled")){const C=Ma(l,o,c);return[...s,C]}if(!c.properties.enabled)return s;const h=Fa(l,o,c);return s.push(h),s},[]),xn=o=>Object.entries(o).reduce((n,s)=>{const[i,l]=s,c=Ba(i,l);return[...n,...c]},[]),wa=o=>{const t=Rn(o.plugins),n=Rn(o.settings),s=xn(o.collectionTypes),i=xn(o.singleTypes);return[...t,...n,...s,...i]},ja=[{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"}];var Na=Object.defineProperty,Ln=Object.getOwnPropertySymbols,ka=Object.prototype.hasOwnProperty,Wa=Object.prototype.propertyIsEnumerable,In=(o,t,n)=>t in o?Na(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Mn=(o,t)=>{for(var n in t||(t={}))ka.call(t,n)&&In(o,n,t[n]);if(Ln)for(var n of Ln(t))Wa.call(t,n)&&In(o,n,t[n]);return o};const ft=(0,e.forwardRef)(({layout:o,isFormDisabled:t,permissions:n},s)=>{const[{initialData:i,layouts:l,modifiedData:c},u]=(0,e.useReducer)(xa,Da,()=>la(o,n)),{formatMessage:h}=(0,$.useIntl)();(0,e.useImperativeHandle)(s,()=>({getPermissions:()=>{const D=(0,j.difference)(i.collectionTypes,c.collectionTypes),L=(0,j.difference)(i.singleTypes,c.singleTypes),P=Mn(Mn({},D),L);let R;return Ie()(P)?R=!1:R=Object.values(P).some(N=>Object.values(N).some(_=>ve()(_,"conditions"))),{permissionsToSend:wa(c),didUpdateConditions:R}},resetForm:()=>{u({type:"RESET_FORM"})},setFormAfterSubmit:()=>{u({type:"SET_FORM_AFTER_SUBMIT"})}}));const C=(D,L,P,R)=>{u({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:D,propertyName:L,rowName:P,value:R})},E=(D,L,P)=>{u({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:D,actionId:L,value:P})},O=D=>{u({type:"ON_CHANGE_CONDITIONS",conditions:D})},M=(0,e.useCallback)(({target:{name:D,value:L}})=>{u({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:D,value:L})},[]),G=(0,e.useCallback)(({target:{name:D,value:L}})=>{u({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:D,value:L})},[]);return e.createElement(Wo,{value:{availableConditions:o.conditions,modifiedData:c,onChangeConditions:O,onChangeSimpleCheckbox:M,onChangeParentCheckbox:G,onChangeCollectionTypeLeftActionRowCheckbox:C,onChangeCollectionTypeGlobalActionCheckbox:E}},e.createElement(W.TabGroup,{id:"tabs",label:h({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(W.Tabs,null,ja.map(D=>e.createElement(W.Tab,{key:D.id},h({id:D.labelId,defaultMessage:D.defaultMessage})))),e.createElement(W.TabPanels,{style:{position:"relative"}},e.createElement(W.TabPanel,null,e.createElement(qt,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(qt,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(rn,{layout:l.plugins,kind:"plugins",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(rn,{layout:l.settings,kind:"settings",isFormDisabled:t})))))});ft.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},ft.propTypes={layout:r().object,isFormDisabled:r().bool.isRequired,permissions:r().array};const $a=(0,e.memo)(ft)},44827:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!0},34829:(X,T,a)=>{a.d(T,{Z:()=>e});const e=()=>"todo empty role"},65497:(X,T,a)=>{a.d(T,{Z:()=>Te});var e=a(32735),v=a(60216),r=a.n(v),j=a(9808),W=a.n(j),ye=a(19192),ve=a.n(ye),ne=a(53214),Ie=a.n(ne),$=a(95602),I=a.n($),b=a(20763),se=a.n(b),oe=a(10938),V=a.n(oe),U=a(5636),ke=a.n(U),We=Object.defineProperty,Re=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable,je=(F,ee,x)=>ee in F?We(F,ee,{enumerable:!0,configurable:!0,writable:!0,value:x}):F[ee]=x,re=(F,ee)=>{for(var x in ee||(ee={}))de.call(ee,x)&&je(F,x,ee[x]);if(Re)for(var x of Re(ee))k.call(ee,x)&&je(F,x,ee[x]);return F};const Me=({id:F,name:ee,description:x,usersCount:Fe,icons:Ne})=>{const{formatMessage:Be}=(0,U.useIntl)(),Ae=Be({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:Fe});return e.createElement(ne.Tr,re({key:F},(0,oe.onRowClick)({fn:Ne[1].onClick})),e.createElement(ne.Td,{maxWidth:(0,oe.pxToRem)(130)},e.createElement($.Typography,{ellipsis:!0,textColor:"neutral800"},ee)),e.createElement(ne.Td,{maxWidth:(0,oe.pxToRem)(250)},e.createElement($.Typography,{ellipsis:!0,textColor:"neutral800"},x)),e.createElement(ne.Td,null,e.createElement($.Typography,{textColor:"neutral800"},Ae)),e.createElement(ne.Td,null,e.createElement(ye.Flex,re({justifyContent:"flex-end"},oe.stopPropagation),Ne.map((De,we)=>De?e.createElement(j.Box,{key:De.label,paddingLeft:we===0?0:1},e.createElement(b.IconButton,{onClick:De.onClick,label:De.label,noBorder:!0,icon:De.icon})):null))))};Me.propTypes={id:r().number.isRequired,name:r().string.isRequired,description:r().string.isRequired,usersCount:r().number.isRequired,icons:r().array.isRequired};const Te=Me},50898:(X,T,a)=>{a.d(T,{Z:()=>y});var e=a(32735),v=a(10938),r=a(2805),j=a(58469),W=a(32365),ye=a.n(W),ve=a(22081),ne=a.n(ve),Ie=a(97642),$=a.n(Ie),I=a(74382),b=a.n(I),se=a(44526),oe=a(11856),V=a(53214),U=a(95602),ke=a(16540),We=a(28004),Re=a(5636),de=a(5141),k=a(65497),je=a(34829),re=a(60216),Me=a.n(re),Te=a(19615),F=a(64410),ee=a(54742),x=a(20763),Fe=a(61541),Ne=a(9808),Be=a(19192),Ae=a(90662),De=a(74885),we=a.n(De),Ze=a(55633),Y=a.n(Ze),A=a(378),z=a(19337);const S=Te.default.div`
126
+ position: absolute;
127
+ z-index: 3;
128
+ inset: 0;
129
+ background: ${({theme:m})=>(0,v.setHexOpacity)(m.colors.neutral800,.2)};
130
+ padding: 0 ${({theme:m})=>m.spaces[8]};
131
+ `,ae=(0,Te.default)(Be.Flex)`
132
+ position: relative;
133
+ max-width: ${830/16}rem;
134
+ height: ${415/16}rem;
135
+ margin: 0 auto;
136
+ overflow: hidden;
137
+ margin-top: 10%;
138
+ padding-left: ${64/16}rem;
139
+
140
+ img:first-of-type {
141
+ position: absolute;
142
+ right: 0;
143
+ top: 0;
144
+ max-width: ${360/16}rem;
145
+ }
146
+
147
+ img:not(:first-of-type) {
148
+ width: ${130/16}rem;
149
+ margin-left: 12%;
150
+ margin-right: ${20/16}rem;
151
+ z-index: 0;
152
+ }
153
+ `,Q=(0,Te.default)(Ae.Stack)`
154
+ align-items: flex-start;
155
+ max-width: ${400/16}rem;
156
+ z-index: 0;
157
+ `,K=(0,Te.default)(Ne.Box)`
158
+ position: absolute;
159
+ right: ${({theme:m})=>m.spaces[4]};
160
+ top: ${({theme:m})=>m.spaces[4]};
161
+ `,J=({onClose:m,isOpen:g})=>{(0,v.useLockScroll)(g);const{formatMessage:f}=(0,Re.useIntl)();return g?e.createElement(F.Portal,null,e.createElement(S,{onClick:m},e.createElement(ee.FocusTrap,{onEscape:m},e.createElement(ae,{onClick:d=>d.stopPropagation(),"aria-labelledby":"upgrade-plan",background:"neutral0",hasRadius:!0},e.createElement("img",{src:A,alt:"air-balloon"}),e.createElement(K,null,e.createElement(x.IconButton,{onClick:m,"aria-label":"Close",icon:e.createElement(Y(),null)})),e.createElement(Q,{spacing:6},e.createElement(U.Typography,{fontWeight:"bold",textColor:"primary600"},f({id:"app.components.UpgradePlanModal.text-ce",defaultMessage:"COMMUNITY EDITION"})),e.createElement(Ae.Stack,{spacing:2},e.createElement(U.Typography,{variant:"alpha",as:"h2",id:"upgrade-plan"},f({id:"app.components.UpgradePlanModal.limit-reached",defaultMessage:"You have reached the limit"})),e.createElement(U.Typography,null,f({id:"app.components.UpgradePlanModal.text-power",defaultMessage:"Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition"}))),e.createElement(Fe.LinkButton,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(we(),null)},f({id:"app.components.UpgradePlanModal.button",defaultMessage:"Learn more"}))),e.createElement("img",{src:z,alt:"upgrade-arrow"}))))):null};J.propTypes={onClose:Me().func.isRequired,isOpen:Me().bool.isRequired};const B=J;var w=a(41072);const H=()=>{const{roles:m,isLoading:g}=(0,w.bF)(),f=(0,v.useQuery)(),d=decodeURIComponent(f.get("_q")||""),p=(0,j.ZP)(m,d,{keys:["name","description"]});return{isLoading:g,sortedRoles:p}},Ce=()=>{const{formatMessage:m}=(0,Re.useIntl)(),[g,f]=(0,e.useState)(!1),{trackUsage:d}=(0,v.useTracking)(),{push:p}=(0,de.useHistory)(),q=(0,e.useCallback)(ue=>{p(`/settings/roles/${ue}`)},[p]),$e=(0,e.useCallback)(()=>{f(ue=>!ue)},[]),Z=(0,e.useCallback)(()=>{d("didShowRBACUpgradeModal"),f(!0)},[d]),ie=(0,e.useCallback)(ue=>[{onClick:$e,label:m({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(b(),null)},{onClick:()=>q(ue.id),label:m({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement($(),null)},{onClick:$e,label:m({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(ne(),null)}],[m,$e,q]);return{isModalOpen:g,handleToggleModalForCreatingRole:Z,handleToggle:$e,getIcons:ie}},Se=()=>{const{formatMessage:m}=(0,Re.useIntl)();(0,v.useFocusWhenNavigate)();const{sortedRoles:g,isLoading:f}=H(),{isModalOpen:d,handleToggle:p,handleToggleModalForCreatingRole:q,getIcons:$e}=Ce(),Z=g.length+1,ie=5;return e.createElement(ke.Main,null,e.createElement(v.SettingsPageTitle,{name:"Roles"}),e.createElement(oe.HeaderLayout,{primaryAction:e.createElement(se.Button,{onClick:q,startIcon:e.createElement(ye(),null),size:"L"},m({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})),title:m({id:"global.roles",defaultMessage:"roles"}),subtitle:m({id:"Settings.roles.list.description",defaultMessage:"List of roles"})}),e.createElement(oe.ContentLayout,null,e.createElement(V.Table,{colCount:ie,rowCount:Z,footer:e.createElement(V.TFooter,{onClick:q,icon:e.createElement(ye(),null)},m({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"}))},e.createElement(V.Thead,null,e.createElement(V.Tr,null,e.createElement(V.Th,null,e.createElement(U.Typography,{variant:"sigma",textColor:"neutral600"},m({id:"global.name",defaultMessage:"Name"}))),e.createElement(V.Th,null,e.createElement(U.Typography,{variant:"sigma",textColor:"neutral600"},m({id:"global.description",defaultMessage:"Description"}))),e.createElement(V.Th,null,e.createElement(U.Typography,{variant:"sigma",textColor:"neutral600"},m({id:"global.users",defaultMessage:"Users"}))),e.createElement(V.Th,null,e.createElement(We.VisuallyHidden,null,m({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(V.Tbody,null,g==null?void 0:g.map(ue=>e.createElement(k.Z,{key:ue.id,id:ue.id,name:ue.name,description:ue.description,usersCount:ue.usersCount,icons:$e(ue)})))),!Z&&!f&&e.createElement(je.Z,null)),e.createElement(B,{isOpen:d,onClose:p}))},y=()=>e.createElement(v.CheckPagePermissions,{permissions:r.Z.settings.roles.main},e.createElement(Se,null))},50772:(X,T,a)=>{a.d(T,{Z:()=>v});const v=[]},55315:(X,T,a)=>{a.d(T,{Z:()=>Ze});var e=a(32735),v=a(53806),r=a.n(v),j=a(10938),W=a(9808),ye=a(44526),ve=a(11856),ne=a(78330),Ie=a(16540),$=a(19192),I=a(90662),b=a(95602),se=a(37178),oe=a(90353),V=a(59716),U=a.n(V),ke=a(83281),We=a(33795),Re=a.n(We),de=a(86834),k=a.n(de),je=a(5636),re=a(5141),Me=a(19615),Te=a(23360),F=a(41072),ee=a(2805),x=a(5173);const Ne=x.Ry().shape({name:x.Z_().required(j.translatedErrors.required),description:x.Z_().required(j.translatedErrors.required)});var Be=a(98399),Ae=(Y,A,z)=>new Promise((S,ae)=>{var Q=B=>{try{J(z.next(B))}catch(w){ae(w)}},K=B=>{try{J(z.throw(B))}catch(w){ae(w)}},J=B=>B.done?S(B.value):Promise.resolve(B.value).then(Q,K);J((z=z.apply(Y,A)).next())});const De=Me.default.div`
162
+ border: 1px solid ${({theme:Y})=>Y.colors.primary200};
163
+ background: ${({theme:Y})=>Y.colors.primary100};
164
+ padding: ${({theme:Y})=>`${Y.spaces[2]} ${Y.spaces[4]}`};
165
+ color: ${({theme:Y})=>Y.colors.primary600};
166
+ border-radius: ${({theme:Y})=>Y.borderRadius};
167
+ font-size: ${12/16}rem;
168
+ font-width: bold;
169
+ `,we=()=>{const Y=(0,j.useNotification)(),{lockApp:A,unlockApp:z}=(0,j.useOverlayBlocker)(),{formatMessage:S}=(0,je.useIntl)(),[ae,Q]=(0,e.useState)(!1),{replace:K}=(0,re.useHistory)(),J=(0,e.useRef)(),{trackUsage:B}=(0,j.useTracking)(),w=(0,re.useRouteMatch)("/settings/roles/duplicate/:id"),H=Re()(w,"params.id",null),{isLoading:Ce,data:xe}=(0,F.U_)(),{permissions:Se,isLoading:Ve}=(0,F.Dq)(H),y=g=>{A(),Q(!0),B(H?"willDuplicateRole":"willCreateNewRole"),Promise.resolve((0,j.request)("/admin/roles",{method:"POST",body:g})).then(f=>Ae(void 0,null,function*(){const{permissionsToSend:d}=J.current.getPermissions();return B(H?"didDuplicateRole":"didCreateNewRole"),f.data.id&&!k()(d)&&(yield(0,j.request)(`/admin/roles/${f.data.id}/permissions`,{method:"PUT",body:{permissions:d}})),f})).then(f=>{Q(!1),Y({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),K(`/settings/roles/${f.data.id}`)}).catch(f=>{Be.error(f),Q(!1),Y({type:"warning",message:{id:"notification.error"}})}).finally(()=>{z()})},m=`${S({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${r()().format("LL")}`;return e.createElement(Ie.Main,null,e.createElement(j.SettingsPageTitle,{name:"Roles"}),e.createElement(ke.Formik,{initialValues:{name:"",description:m},onSubmit:y,validationSchema:Ne,validateOnChange:!1},({handleSubmit:g,values:f,errors:d,handleReset:p,handleChange:q})=>e.createElement(j.Form,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(ve.HeaderLayout,{primaryAction:e.createElement(I.Stack,{horizontal:!0,spacing:2},e.createElement(ye.Button,{variant:"secondary",onClick:()=>{p(),J.current.resetForm()},size:"L"},S({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(ye.Button,{onClick:g,loading:ae,size:"L"},S({id:"global.save",defaultMessage:"Save"}))),title:S({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:S({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(j.Link,{startIcon:e.createElement(U(),null),to:"/settings/roles"},S({id:"global.back",defaultMessage:"Back"}))}),e.createElement(ve.ContentLayout,null,e.createElement(I.Stack,{spacing:6},e.createElement(W.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(I.Stack,{spacing:4},e.createElement($.Flex,{justifyContent:"space-between"},e.createElement(W.Box,null,e.createElement(W.Box,null,e.createElement(b.Typography,{fontWeight:"bold"},S({id:"global.details",defaultMessage:"Details"}))),e.createElement(W.Box,null,e.createElement(b.Typography,{variant:"pi",textColor:"neutral600"},S({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(De,null,S({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(ne.Grid,{gap:4},e.createElement(ne.GridItem,{col:6},e.createElement(se.TextInput,{name:"name",error:d.name&&S({id:d.name}),label:S({id:"global.name",defaultMessage:"Name"}),onChange:q,value:f.name})),e.createElement(ne.GridItem,{col:6},e.createElement(oe.Textarea,{label:S({id:"global.description",defaultMessage:"Description"}),name:"description",error:d.description&&S({id:d.description}),onChange:q},f.description))))),!Ce&&!Ve?e.createElement(W.Box,{shadow:"filterShadow",hasRadius:!0},e.createElement(Te.Z,{isFormDisabled:!1,ref:J,permissions:Se,layout:xe})):e.createElement(W.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(j.LoadingIndicatorPage,null))))))))},Ze=()=>e.createElement(j.CheckPagePermissions,{permissions:ee.Z.settings.roles.create},e.createElement(we,null))},20628:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},95489:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},58630:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},25684:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},26891:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},96855:(X,T,a)=>{a.d(T,{Z:()=>v});const v=!1},45936:(X,T,a)=>{a.d(T,{Z:()=>Y});var e=a(32735),v=a(10938),r=a(2805),j=a(32365),W=a.n(j),ye=a(22081),ve=a.n(ye),ne=a(74382),Ie=a.n(ne),$=a(97642),I=a.n($),b=a(44526),se=a(11856),oe=a(28004),V=a(16540),U=a(53214),ke=a(95602),We=a(92891),Re=a(58469),de=a(5636),k=a(5141),je=a(16558),re=a(41072),Me=a(34829),Te=a(65497),F=a(49415);const ee={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1},Fe=(A,z)=>(0,F.default)(A,S=>{switch(z.type){case"ON_REMOVE_ROLES":{S.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{S.shouldRefetchData=!0,S.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{S.shouldRefetchData=!1,S.roleToDelete=null,S.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{S.roleToDelete=z.id;break}default:return S}});var Ne=(A,z,S)=>new Promise((ae,Q)=>{var K=w=>{try{B(S.next(w))}catch(H){Q(H)}},J=w=>{try{B(S.throw(w))}catch(H){Q(H)}},B=w=>w.done?ae(w.value):Promise.resolve(w.value).then(K,J);B((S=S.apply(A,z)).next())});const Be=()=>{(0,v.useFocusWhenNavigate)();const{isLoading:A,allowedActions:{canCreate:z,canDelete:S,canRead:ae,canUpdate:Q}}=(0,v.useRBAC)(r.Z.settings.roles),{getData:K,roles:J,isLoading:B}=(0,re.bF)(!1),[{query:w}]=(0,v.useQueryParams)(),H=(w==null?void 0:w._q)||"",Ce=(0,Re.ZP)(J,H,{keys:["name","description"]});return(0,e.useEffect)(()=>{!A&&ae&&K()},[A,ae,K]),{isLoadingForPermissions:A,canCreate:z,canDelete:S,canRead:ae,canUpdate:Q,isLoading:B,getData:K,sortedRoles:Ce,roles:J}},Ae=({getData:A,canCreate:z,canDelete:S,canUpdate:ae})=>{const{formatMessage:Q}=(0,de.useIntl)(),K=(0,v.useNotification)(),[J,B]=(0,e.useState)(!1),{push:w}=(0,k.useHistory)(),[{selectedRoles:H,showModalConfirmButtonLoading:Ce,roleToDelete:xe},Se]=(0,e.useReducer)(Fe,ee),Ve=()=>Ne(void 0,null,function*(){try{Se({type:"ON_REMOVE_ROLES"}),yield je.be.post("/admin/roles/batch-delete",{ids:[xe]}),yield A(),Se({type:"RESET_DATA_TO_DELETE"})}catch(Z){const ie=(0,We.get)(Z,["response","payload","data","ids"],null);if(ie&&Array.isArray(ie)){const ue=ie.join(`
170
+ `);K({type:"warning",message:ue})}else K({type:"warning",message:{id:"notification.error"}})}f()}),y=(0,e.useCallback)(Z=>{w(`/settings/roles/duplicate/${Z}`)},[w]),m=()=>w("/settings/roles/new"),g=(0,e.useCallback)(Z=>{Se({type:"SET_ROLE_TO_DELETE",id:Z}),f()},[]),f=()=>B(Z=>!Z),d=(0,e.useCallback)(Z=>{w(`/settings/roles/${Z}`)},[w]),p=(0,e.useCallback)((Z,ie)=>{Z.preventDefault(),Z.stopPropagation(),ie.usersCount?K({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):g(ie.id)},[K,g]),q=(0,e.useCallback)((Z,ie)=>{Z.preventDefault(),Z.stopPropagation(),y(ie.id)},[y]),$e=(0,e.useCallback)(Z=>[...z?[{onClick:ie=>q(ie,Z),label:Q({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(Ie(),null)}]:[],...ae?[{onClick:()=>d(Z.id),label:Q({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(I(),null)}]:[],...S?[{onClick:ie=>p(ie,Z),label:Q({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(ve(),null)}]:[]],[Q,p,q,d,z,ae,S]);return{handleNewRoleClick:m,getIcons:$e,selectedRoles:H,isWarningDeleteAllOpened:J,showModalConfirmButtonLoading:Ce,handleToggleModal:f,handleDeleteData:Ve}},we=()=>{const{formatMessage:A}=(0,de.useIntl)(),{isLoadingForPermissions:z,canCreate:S,canRead:ae,canDelete:Q,canUpdate:K,isLoading:J,getData:B,sortedRoles:w}=Be(),{handleNewRoleClick:H,getIcons:Ce,isWarningDeleteAllOpened:xe,showModalConfirmButtonLoading:Se,handleToggleModal:Ve,handleDeleteData:y}=Ae({getData:B,canCreate:S,canDelete:Q,canUpdate:K}),m=w.length+1,g=6;if(z)return e.createElement(V.Main,null,e.createElement(v.LoadingIndicatorPage,null));const f=A({id:"global.roles",defaultMessage:"roles"});return e.createElement(V.Main,null,e.createElement(v.SettingsPageTitle,{name:"Roles"}),e.createElement(se.HeaderLayout,{primaryAction:S?e.createElement(b.Button,{onClick:H,startIcon:e.createElement(W(),null),size:"L"},A({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:f,subtitle:A({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),ae&&e.createElement(se.ActionLayout,{startActions:e.createElement(v.SearchURLQuery,{label:A({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:f})})}),ae&&e.createElement(se.ContentLayout,null,e.createElement(U.Table,{colCount:g,rowCount:m,footer:S?e.createElement(U.TFooter,{onClick:H,icon:e.createElement(W(),null)},A({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(U.Thead,null,e.createElement(U.Tr,null,e.createElement(U.Th,null,e.createElement(ke.Typography,{variant:"sigma",textColor:"neutral600"},A({id:"global.name",defaultMessage:"Name"}))),e.createElement(U.Th,null,e.createElement(ke.Typography,{variant:"sigma",textColor:"neutral600"},A({id:"global.description",defaultMessage:"Description"}))),e.createElement(U.Th,null,e.createElement(ke.Typography,{variant:"sigma",textColor:"neutral600"},A({id:"global.users",defaultMessage:"Users"}))),e.createElement(U.Th,null,e.createElement(oe.VisuallyHidden,null,A({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(U.Tbody,null,w==null?void 0:w.map(d=>e.createElement(Te.Z,{key:d.id,id:d.id,name:d.name,description:d.description,usersCount:d.usersCount,icons:Ce(d)})))),!m&&!J&&e.createElement(Me.Z,null)),e.createElement(v.ConfirmDialog,{isOpen:xe,onConfirm:y,isConfirmButtonLoading:Se,onToggleDialog:Ve}))},Y=()=>e.createElement(v.CheckPagePermissions,{permissions:r.Z.settings.roles.main},e.createElement(we,null))},10226:(X,T,a)=>{a.d(T,{Z:()=>j});var e=(W,ye,ve)=>new Promise((ne,Ie)=>{var $=se=>{try{b(ve.next(se))}catch(oe){Ie(oe)}},I=se=>{try{b(ve.throw(se))}catch(oe){Ie(oe)}},b=se=>se.done?ne(se.value):Promise.resolve(se.value).then($,I);b((ve=ve.apply(W,ye)).next())});const j=[...strapi.features.isEnabled(strapi.features.SSO)?[{Component:()=>e(void 0,null,function*(){return yield a.e(302).then(a.bind(a,84363))}),to:"/settings/single-sign-on",exact:!0}]:[]]},378:(X,T,a)=>{X.exports=a.p+"c3de6118ef47086ad05c.png"},19337:(X,T,a)=>{X.exports=a.p+"bd81ba6c07827282255d.png"}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{39199:(ae,L,t)=>{t.r(L),t.d(L,{default:()=>k});var e=t(32735),s=t(10938),M=t(5141),B=t(2805),u=t(9808),x=t(44526),T=t(11856),j=t(16540),y=t(90662),G=t(83281),N=t(59716),Z=t.n(N),z=t(33795),C=t.n(z),b=t(5636),O=t(23360),S=t(78330),$=t(19192),A=t(95602),H=t(90353),V=t(37178),W=t(60216),g=t.n(W);const R=({disabled:r,role:a,values:n,errors:i,onChange:d,onBlur:c})=>{const{formatMessage:o}=(0,b.useIntl)();return e.createElement(e.Fragment,null,e.createElement(u.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(y.Stack,{spacing:4},e.createElement($.Flex,{justifyContent:"space-between"},e.createElement(u.Box,null,e.createElement(u.Box,null,e.createElement(A.Typography,{fontWeight:"bold"},a?a.name:o({id:"global.details",defaultMessage:"Details"}))),e.createElement(u.Box,null,e.createElement(A.Typography,{textColor:"neutral500",variant:"pi"},a?a.description:o({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(x.Button,{disabled:!0,variant:"secondary"},o({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:a.usersCount}))),e.createElement(S.Grid,{gap:4},e.createElement(S.GridItem,{col:6},e.createElement(V.TextInput,{disabled:r,name:"name",error:i.name&&o({id:i.name}),label:o({id:"global.name",defaultMessage:"Name"}),onChange:d,onBlur:c,value:n.name||""})),e.createElement(S.GridItem,{col:6},e.createElement(H.Textarea,{disabled:r,label:o({id:"global.description",defaultMessage:"Description"}),name:"description",error:i.name&&o({id:i.name}),onChange:d,onBlur:c},n.description||""))))))};R.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},R.propTypes={disabled:g().bool,errors:g().object.isRequired,onBlur:g().func.isRequired,onChange:g().func.isRequired,role:g().object,values:g().object};const J=R;var I=t(41072),F=t(5173);const K=F.Ry().shape({name:F.Z_().required(s.translatedErrors.required)});var Q=t(98399),X=(r,a,n)=>new Promise((i,d)=>{var c=l=>{try{v(n.next(l))}catch(E){d(E)}},o=l=>{try{v(n.throw(l))}catch(E){d(E)}},v=l=>l.done?i(l.value):Promise.resolve(l.value).then(c,o);v((n=n.apply(r,a)).next())});const Y=()=>{const r=(0,s.useNotification)(),{formatMessage:a}=(0,b.useIntl)(),{params:{id:n}}=(0,M.useRouteMatch)("/settings/roles/:id"),[i,d]=(0,e.useState)(!1),c=(0,e.useRef)(),{lockApp:o,unlockApp:v}=(0,s.useOverlayBlocker)(),{trackUsage:l}=(0,s.useTracking)(),{isLoading:E,data:w}=(0,I.U_)(n),{role:p,permissions:q,isLoading:U,onSubmitSucceeded:_}=(0,I.Dq)(n),ee=f=>X(void 0,null,function*(){try{o(),d(!0);const{permissionsToSend:m,didUpdateConditions:h}=c.current.getPermissions();yield(0,s.request)(`/admin/roles/${n}`,{method:"PUT",body:f}),p.code!=="strapi-super-admin"&&(yield(0,s.request)(`/admin/roles/${n}/permissions`,{method:"PUT",body:{permissions:m}}),h&&l("didUpdateConditions")),c.current.setFormAfterSubmit(),_({name:f.name,description:f.description}),r({type:"success",message:{id:"notification.success.saved"}})}catch(m){Q.error(m.response);const h=C()(m,"response.payload.message","An error occured"),P=C()(m,"response.payload.data.permissions[0]",h);r({type:"warning",message:P})}finally{d(!1),v()}}),D=p.code==="strapi-super-admin";return e.createElement(j.Main,null,e.createElement(s.SettingsPageTitle,{name:"Roles"}),e.createElement(G.Formik,{enableReinitialize:!0,initialValues:{name:p.name,description:p.description},onSubmit:ee,validationSchema:K,validateOnChange:!1},({handleSubmit:f,values:m,errors:h,handleChange:P,handleBlur:te})=>e.createElement("form",{onSubmit:f},e.createElement(e.Fragment,null,e.createElement(T.HeaderLayout,{primaryAction:e.createElement(y.Stack,{horizontal:!0,spacing:2},e.createElement(x.Button,{disabled:p.code==="strapi-super-admin",onClick:f,loading:i,size:"L"},a({id:"global.save",defaultMessage:"Save"}))),title:a({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:a({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(s.Link,{startIcon:e.createElement(Z(),null),to:"/settings/roles"},a({id:"global.back",defaultMessage:"Back"}))}),e.createElement(T.ContentLayout,null,e.createElement(y.Stack,{spacing:6},e.createElement(J,{isLoading:U,disabled:D,errors:h,values:m,onChange:P,onBlur:te,role:p}),!E&&!U?e.createElement(u.Box,{shadow:"filterShadow",hasRadius:!0},e.createElement(O.Z,{isFormDisabled:D,permissions:q,ref:c,layout:w})):e.createElement(u.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(s.LoadingIndicatorPage,null))))))))},k=()=>{const r=(0,e.useMemo)(()=>({read:B.Z.settings.roles.read,update:B.Z.settings.roles.update}),[]),{isLoading:a,allowedActions:{canRead:n,canUpdate:i}}=(0,s.useRBAC)(r);return a?e.createElement(s.LoadingIndicatorPage,null):!n&&!i?e.createElement(M.Redirect,{to:"/"}):e.createElement(Y,null)}}}]);
@@ -0,0 +1,10 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{29527:($,v,e)=>{"use strict";e.r(v),e.d(v,{default:()=>ye});var t=e(32735),r=e(10938),d=e(5141),o=e(92891),n=e(2805),s=e(64106),c=e(10613),u=e(71745),m=e.n(u),p=e(5636),_=e(60216),A=e.n(_),X=e(88423),K=e.n(X),F=e(33795),S=e.n(F),w=e(9086),z=e.n(w),C=e(84968),Z=e(83281),P=e(9808),O=e(44526),E=e(78330),T=e(11856),U=e(95602),G=e(16540),y=e(90662),i=e(59716),a=e.n(i),l=e(98221),q=e.n(l),V=e(13271),x=e(16558),ne=(B,R,g)=>new Promise((H,f)=>{var Y=W=>{try{Q(g.next(W))}catch(J){f(J)}},j=W=>{try{Q(g.throw(W))}catch(J){f(J)}},Q=W=>W.done?H(W.value):Promise.resolve(W.value).then(Y,j);Q((g=g.apply(B,R)).next())});const fe=B=>ne(void 0,null,function*(){const{data:R}=yield x.be.get(`/admin/users/${B}`);return R.data}),Ee=(B,R)=>ne(void 0,null,function*(){const{data:g}=yield x.be.put(`/admin/users/${B}`,R);return g.data}),ge=[[{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:"email",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12}},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];var ve=e(10127),Pe=e(26750),Me=e(98399),he=function(){return window&&window.strapi&&window.strapi.isEE?e(24870).Z:e(93264).Z}(),se=["email","firstname","lastname","username","isActive","roles"],oe=function(R){var g=R.canUpdate,H=(0,p.useIntl)(),f=H.formatMessage,Y=(0,d.useRouteMatch)("/settings/users/:id"),j=Y.params.id,Q=(0,d.useHistory)(),W=Q.push,J=(0,r.useAppInfos)(),De=J.setUserDisplayName,ae=(0,r.useNotification)(),le=(0,r.useOverlayBlocker)(),Le=le.lockApp,_e=le.unlockApp;(0,r.useFocusWhenNavigate)();var ie=(0,C.useQuery)(["user",j],function(){return fe(j)},{retry:!1,keepPreviousData:!1,staleTime:1e3*20,onError:function(M){var h=M.response.status;h===403&&(ae({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),W("/")),Me.log(M.response.status)}}),Ae=ie.status,I=ie.data,Te=function(){var D=(0,c.Z)(m().mark(function M(h,b){var k,te,N,re,ce;return m().wrap(function(L){for(;;)switch(L.prev=L.next){case 0:return Le(),L.prev=1,L.next=4,Ee(j,z()(h,"confirmPassword"));case 4:k=L.sent,ae({type:"success",message:f({id:"notification.success.saved",defaultMessage:"Saved"})}),te=r.auth.getUserInfo(),j.toString()===te.id.toString()&&(r.auth.setUserInfo(k),N=S()(h,"username")||(0,V.Pp)(h.firstname,h.lastname),De(N)),b.setValues(K()(h,se)),L.next=17;break;case 11:L.prev=11,L.t0=L.catch(1),re=(0,V.Iz)(L.t0.response.data),ce=Object.keys(re).reduce(function(me,pe){return me[pe]=re[pe].id,me},{}),b.setErrors(ce),ae({type:"warning",message:S()(L.t0,"response.data.message","notification.error")});case 17:_e();case 18:case"end":return L.stop()}},M,null,[[1,11]])}));return function(h,b){return D.apply(this,arguments)}}(),de=Ae!=="success",Ie=de?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},ee=Object.keys(K()(I,se)).reduce(function(D,M){return M==="roles"?(D[M]=((I==null?void 0:I.roles)||[]).map(function(h){var b=h.id;return b}),D):(D[M]=I==null?void 0:I[M],D)},{}),Ce=ee.username||(0,V.Pp)(ee.firstname,ee.lastname),ue=f(Ie,{name:Ce});return de?t.createElement(G.Main,{"aria-busy":"true"},t.createElement(r.SettingsPageTitle,{name:"Users"}),t.createElement(T.HeaderLayout,{primaryAction:t.createElement(O.Button,{disabled:!0,startIcon:t.createElement(q(),null),type:"button",size:"L"},f({id:"global.save",defaultMessage:"Save"})),title:ue,navigationAction:t.createElement(r.Link,{startIcon:t.createElement(a(),null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},f({id:"global.back",defaultMessage:"Back"}))}),t.createElement(T.ContentLayout,null,t.createElement(r.LoadingIndicatorPage,null))):t.createElement(G.Main,null,t.createElement(r.SettingsPageTitle,{name:"Users"}),t.createElement(Z.Formik,{onSubmit:Te,initialValues:ee,validateOnChange:!1,validationSchema:ve.YM},function(D){var M=D.errors,h=D.values,b=D.handleChange,k=D.isSubmitting;return t.createElement(r.Form,null,t.createElement(T.HeaderLayout,{primaryAction:t.createElement(O.Button,{disabled:k||!g,startIcon:t.createElement(q(),null),loading:k,type:"submit",size:"L"},f({id:"global.save",defaultMessage:"Save"})),title:ue,navigationAction:t.createElement(r.Link,{startIcon:t.createElement(a(),null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},f({id:"global.back",defaultMessage:"Back"}))}),t.createElement(T.ContentLayout,null,(I==null?void 0:I.registrationToken)&&t.createElement(P.Box,{paddingBottom:6},t.createElement(he,{registrationToken:I.registrationToken})),t.createElement(y.Stack,{spacing:7},t.createElement(P.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(y.Stack,{spacing:4},t.createElement(U.Typography,{variant:"delta",as:"h2"},f({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(E.Grid,{gap:5},ge.map(function(te){return te.map(function(N){return t.createElement(E.GridItem,(0,s.Z)({key:N.name},N.size),t.createElement(r.GenericInput,(0,s.Z)({},N,{disabled:!g,error:M[N.name],onChange:b,value:h[N.name]||""})))})})))),t.createElement(P.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(y.Stack,{spacing:4},t.createElement(U.Typography,{variant:"delta",as:"h2"},f({id:"global.roles",defaultMessage:"User's role"})),t.createElement(E.Grid,{gap:5},t.createElement(E.GridItem,{col:6,xs:12},t.createElement(Pe.Z,{disabled:!g,error:M.roles,onChange:b,value:h.roles}))))))))}))};oe.propTypes={canUpdate:A().bool.isRequired};const Oe=oe,ye=()=>{const B=(0,r.useNotification)(),R=(0,t.useMemo)(()=>({read:n.Z.settings.users.read,update:n.Z.settings.users.update}),[]),{isLoading:g,allowedActions:{canRead:H,canUpdate:f}}=(0,r.useRBAC)(R),{state:Y}=(0,d.useLocation)(),j=(0,o.get)(Y,"from","/");return(0,t.useEffect)(()=>{g||!H&&!f&&B({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[g,H,f,B]),g?t.createElement(r.LoadingIndicatorPage,null):!H&&!f?t.createElement(d.Redirect,{to:j}):t.createElement(Oe,{canUpdate:f})}},67814:($,v,e)=>{"use strict";e.d(v,{Z:()=>S});var t=e(32735),r=e(60216),d=e.n(r),o=e(20763),n=e.n(o),s=e(10938),c=e.n(s),u=e(74382),m=e.n(u),p=e(59087),_=e.n(p),A=e(5636),X=e.n(A);const K=()=>t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg"},t.createElement("text",{transform:"translate(-23 -9)",fill:"#4B515A",fillRule:"evenodd",fontSize:"32",fontFamily:"AppleColorEmoji, Apple Color Emoji"},t.createElement("tspan",{x:"23",y:"36"},"\u2709\uFE0F"))),F=({children:w,target:z})=>{const C=(0,s.useNotification)(),{formatMessage:Z}=(0,A.useIntl)(),P=()=>{C({type:"info",message:{id:"notification.link-copied"}})},O=Z({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"});return t.createElement(s.ContentBox,{endAction:t.createElement(p.CopyToClipboard,{onCopy:P,text:z},t.createElement(o.IconButton,{label:O,noBorder:!0,icon:t.createElement(m(),null)})),title:z,titleEllipsis:!0,subtitle:w,icon:t.createElement(K,null),iconBackground:"neutral100"})};F.propTypes={children:d().oneOfType([d().element,d().string]).isRequired,target:d().string.isRequired};const S=F},93264:($,v,e)=>{"use strict";e.d(v,{Z:()=>m});var t=e(32735),r=e(5636),d=e.n(r),o=e(60216),n=e.n(o),s=e(29624),c=e(67814);const u=({registrationToken:p})=>{const{formatMessage:_}=(0,r.useIntl)(),A=`${window.location.origin}${s.Z}auth/register?registrationToken=${p}`;return t.createElement(c.Z,{target:A},_({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};u.defaultProps={registrationToken:""},u.propTypes={registrationToken:n().string};const m=u},26750:($,v,e)=>{"use strict";e.d(v,{Z:()=>Z});var t=e(32735),r=e(60216),d=e.n(r),o=e(5636),n=e.n(o),s=e(25716),c=e.n(s),u=e(84968),m=e.n(u),p=e(19615),_=e(22301),A=e.n(_),X=e(16558),K=(P,O,E)=>new Promise((T,U)=>{var G=a=>{try{i(E.next(a))}catch(l){U(l)}},y=a=>{try{i(E.throw(a))}catch(l){U(l)}},i=a=>a.done?T(a.value):Promise.resolve(a.value).then(G,y);i((E=E.apply(P,O)).next())});const F=p.keyframes`
2
+ from {
3
+ transform: rotate(0deg);
4
+ }
5
+ to {
6
+ transform: rotate(359deg);
7
+ }
8
+ `,S=p.default.div`
9
+ animation: ${F} 2s infinite linear;
10
+ `,w=()=>t.createElement(S,null,t.createElement(A(),null)),z=()=>K(void 0,null,function*(){const{data:P}=yield X.be.get("/admin/roles");return P.data}),C=({disabled:P,error:O,onChange:E,value:T})=>{const{status:U,data:G}=(0,u.useQuery)(["roles"],z,{staleTime:5e4}),{formatMessage:y}=(0,o.useIntl)(),i=O?y({id:O,defaultMessage:O}):"",a=y({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),l=y({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),q=y({id:"app.components.Select.placeholder",defaultMessage:"Select"}),V=U==="loading"?t.createElement(w,null):void 0;return t.createElement(s.Select,{id:"roles",disabled:P,error:i,hint:l,label:a,name:"roles",onChange:x=>{E({target:{name:"roles",value:x}})},placeholder:q,multi:!0,startIcon:V,value:T,withTags:!0,required:!0},(G||[]).map(x=>t.createElement(s.Option,{key:x.id,value:x.id},x.name)))};C.defaultProps={disabled:!1,error:void 0},C.propTypes={disabled:d().bool,error:d().string,onChange:d().func.isRequired,value:d().array.isRequired};const Z=C},10127:($,v,e)=>{"use strict";e.d(v,{YM:()=>y,Rw:()=>K});var t=e(5173),r=e(10938),d=Object.defineProperty,o=Object.defineProperties,n=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,c=Object.prototype.hasOwnProperty,u=Object.prototype.propertyIsEnumerable,m=(i,a,l)=>a in i?d(i,a,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[a]=l,p=(i,a)=>{for(var l in a||(a={}))c.call(a,l)&&m(i,l,a[l]);if(s)for(var l of s(a))u.call(a,l)&&m(i,l,a[l]);return i},_=(i,a)=>o(i,n(a));const A={firstname:t.nK().required(r.translatedErrors.required),lastname:t.nK(),email:t.Z_().email(r.translatedErrors.email).lowercase().required(r.translatedErrors.required),username:t.Z_().nullable(),password:t.Z_().min(8,r.translatedErrors.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,r.translatedErrors.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(i,a)=>i?a.required(r.translatedErrors.required):a)},K=_(p({},A),{currentPassword:t.Z_().when(["password","confirmPassword"],(i,a,l)=>i||a?l.required(r.translatedErrors.required):l),preferedLanguage:t.Z_().nullable()}),S={roles:t.IX().min(1,r.translatedErrors.required).required(r.translatedErrors.required)};var w=Object.defineProperty,z=Object.defineProperties,C=Object.getOwnPropertyDescriptors,Z=Object.getOwnPropertySymbols,P=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable,E=(i,a,l)=>a in i?w(i,a,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[a]=l,T=(i,a)=>{for(var l in a||(a={}))P.call(a,l)&&E(i,l,a[l]);if(Z)for(var l of Z(a))O.call(a,l)&&E(i,l,a[l]);return i},U=(i,a)=>z(i,C(a));const y=t.Ry().shape(T(U(T({},A),{isActive:t.Xg()}),S))},24870:($,v,e)=>{"use strict";e.d(v,{Z:()=>m});var t=e(32735),r=e(5636),d=e.n(r),o=e(60216),n=e.n(o),s=e(29624),c=e(67814);const u=({registrationToken:p})=>{const{formatMessage:_}=(0,r.useIntl)();return p?t.createElement(c.Z,{target:`${window.location.origin}${s.Z}auth/register?registrationToken=${p}`},_({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"})):t.createElement(c.Z,{target:`${window.location.origin}${s.Z}auth/login`},_({id:"app.components.Users.MagicLink.connect.sso",defaultMessage:"Send this link to the user, the first login can be made via a SSO provider."}))};u.defaultProps={registrationToken:""},u.propTypes={registrationToken:n().string};const m=u},22301:function($,v,e){(function(t,r){$.exports=r(e(32735))})(this,function(t){return function(r){var d={};function o(n){if(d[n])return d[n].exports;var s=d[n]={i:n,l:!1,exports:{}};return r[n].call(s.exports,s,s.exports,o),s.l=!0,s.exports}return o.m=r,o.c=d,o.d=function(n,s,c){o.o(n,s)||Object.defineProperty(n,s,{enumerable:!0,get:c})},o.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},o.t=function(n,s){if(1&s&&(n=o(n)),8&s||4&s&&typeof n=="object"&&n&&n.__esModule)return n;var c=Object.create(null);if(o.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:n}),2&s&&typeof n!="string")for(var u in n)o.d(c,u,function(m){return n[m]}.bind(null,u));return c},o.n=function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return o.d(s,"a",s),s},o.o=function(n,s){return Object.prototype.hasOwnProperty.call(n,s)},o.p="",o(o.s=108)}({0:function(r,d){r.exports=t},108:function(r,d,o){"use strict";o.r(d);var n=o(0);function s(){return(s=Object.assign||function(c){for(var u=1;u<arguments.length;u++){var m=arguments[u];for(var p in m)Object.prototype.hasOwnProperty.call(m,p)&&(c[p]=m[p])}return c}).apply(this,arguments)}d.default=function(c){return n.createElement("svg",s({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c),n.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.057 18c.552 0 1 .451 1 .997v4.006a1 1 0 01-.941.995l-.059.002c-.552 0-1-.451-1-.997v-4.006a1 1 0 01.941-.995l.06-.002zm-3.06-.736l.055.03c.478.276.64.89.367 1.364l-2.002 3.468a1 1 0 01-1.31.394l-.055-.03a1.002 1.002 0 01-.368-1.363l2.003-3.469a1 1 0 011.31-.394zm7.42.394l2.002 3.468a1 1 0 01-.314 1.331l-.053.033a1.002 1.002 0 01-1.365-.363l-2.003-3.469a1 1 0 01.314-1.33l.054-.034a1.002 1.002 0 011.364.364zm-9.548-2.66l.033.054c.276.478.11 1.091-.364 1.364L3.07 18.42a1 1 0 01-1.331-.314l-.033-.053a1.001 1.001 0 01.364-1.365l3.468-2.003a1 1 0 011.33.314zm11.79-.313l3.468 2.002a1 1 0 01.393 1.31l-.03.055c-.276.478-.89.64-1.363.367l-3.469-2.003a1 1 0 01-.394-1.309l.03-.055c.276-.479.89-.64 1.364-.367zm4.344-3.628a1 1 0 01.995.941l.002.06c0 .551-.451 1-.997 1h-4.006a1 1 0 01-.995-.942L18 12.057c0-.552.451-1 .997-1h4.006zm-18 0a1 1 0 01.995.941l.002.06c0 .551-.451 1-.998 1H.998a1 1 0 01-.996-.942L0 12.057c0-.552.451-1 .998-1h4.004zm17.454-5.059l.033.054c.277.478.11 1.091-.363 1.365l-3.469 2.002a1 1 0 01-1.33-.314l-.034-.053a1.002 1.002 0 01.364-1.365l3.468-2.003a1 1 0 011.331.314zM3.07 5.684l3.468 2.003a1 1 0 01.394 1.31l-.03.055c-.276.478-.89.64-1.364.367L2.07 7.417a1 1 0 01-.394-1.31l.03-.055c.276-.479.89-.64 1.364-.368zm14.926-4.008l.056.03c.478.276.64.89.367 1.364l-2.003 3.468a1 1 0 01-1.309.394l-.055-.03a1.002 1.002 0 01-.367-1.364l2.002-3.468a1 1 0 011.31-.394zm-10.58.394L9.42 5.538a1 1 0 01-.314 1.33l-.053.034a1.002 1.002 0 01-1.365-.364L5.684 3.07a1 1 0 01.314-1.331l.054-.033a1.002 1.002 0 011.365.364zM12.058 0c.552 0 1 .451 1 .998v4.004a1 1 0 01-.941.996L12.057 6c-.552 0-1-.451-1-.998V.998a1 1 0 01.941-.996l.06-.002z",fill:"#212134"}))}}})})}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{74022:(B,E,t)=>{"use strict";t.d(E,{Z:()=>re});var e=t(32735),c=t(5636),o=t(10938),s=t(11856),n=t(16540),i=t(44526),d=t(98221),m=t.n(d),y=t(59716),T=t.n(y),Z=t(83281),K=t(90662),z=t(9808),H=t(95602),O=t(78330),$=t(37178),Q=t(90353),x=t(25716),X=t(33795),J=t.n(X),N=t(5141),Y=t(84968),w=t(13271),D=t(16558),I=t(5173);const q=I.Ry().shape({name:I.Z_(o.translatedErrors.string).required(o.translatedErrors.required),type:I.Z_(o.translatedErrors.string).oneOf(["read-only","full-access"]).required(o.translatedErrors.required),description:I.Z_().nullable()});var _=t(60216),U=t.n(_);const R=({apiTokenName:u})=>{const{formatMessage:a}=(0,c.useIntl)();return(0,o.useFocusWhenNavigate)(),e.createElement(n.Main,{"aria-busy":"true"},e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(s.HeaderLayout,{primaryAction:e.createElement(i.Button,{disabled:!0,startIcon:e.createElement(m(),null),type:"button",size:"L"},a({id:"global.save",defaultMessage:"Save"})),title:u||a({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"})}),e.createElement(s.ContentLayout,null,e.createElement(o.LoadingIndicatorPage,null)))};R.defaultProps={apiTokenName:null},R.propTypes={apiTokenName:U().string};const ee=R;var te=t(20763),ne=t(74382),ae=t.n(ne),oe=t(59087),se=t(50701),ie=t.n(se);const b=({apiToken:u})=>{const{formatMessage:a}=(0,c.useIntl)(),l=(0,o.useNotification)(),{trackUsage:h}=(0,o.useTracking)(),v=(0,e.useRef)(h);return e.createElement(o.ContentBox,{endAction:u&&e.createElement("span",{style:{alignSelf:"start"}},e.createElement(oe.CopyToClipboard,{onCopy:()=>{v.current("didCopyTokenKey"),l({type:"success",message:{id:"Settings.apiTokens.notification.copied"}})},text:u},e.createElement(te.IconButton,{label:a({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),noBorder:!0,icon:e.createElement(ae(),null),style:{padding:0,height:"1rem"}}))),title:u||a({id:"Settings.apiTokens.copy.editTitle",defaultMessage:"This token isn\u2019t accessible anymore."}),subtitle:a(u?{id:"Settings.apiTokens.copy.lastWarning",defaultMessage:"Make sure to copy this token, you won\u2019t be able to see it again!"}:{id:"Settings.apiTokens.copy.editMessage",defaultMessage:"For security reasons, you can only see your token once."}),icon:e.createElement(ie(),null),iconBackground:"neutral100"})};b.defaultProps={apiToken:null},b.propTypes={apiToken:U().string};const le=b;var j=(u,a,l)=>new Promise((h,v)=>{var M=p=>{try{C(l.next(p))}catch(P){v(P)}},k=p=>{try{C(l.throw(p))}catch(P){v(P)}},C=p=>p.done?h(p.value):Promise.resolve(p.value).then(M,k);C((l=l.apply(u,a)).next())});const re=()=>{var u;let a;(0,o.useFocusWhenNavigate)();const{formatMessage:l}=(0,c.useIntl)(),{lockApp:h,unlockApp:v}=(0,o.useOverlayBlocker)(),M=(0,o.useNotification)(),k=(0,N.useHistory)(),{trackUsage:C}=(0,o.useTracking)(),p=(0,e.useRef)(C),{setCurrentStep:P}=(0,o.useGuidedTour)(),{params:{id:L}}=(0,N.useRouteMatch)("/settings/api-tokens/:id"),f=L==="create";(0,e.useEffect)(()=>{p.current(f?"didAddTokenFromList":"didEditTokenFromList")},[f]),(u=k.location.state)!=null&&u.apiToken.accessKey&&(a=k.location.state.apiToken);const{status:de,data:F}=(0,Y.useQuery)(["api-token",L],()=>j(void 0,null,function*(){const{data:{data:r}}=yield D.be.get(`/admin/api-tokens/${L}`);return r}),{enabled:!f&&!a,onError:()=>{M({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}});F&&(a=F);const ce=(r,S)=>j(void 0,null,function*(){p.current(f?"willCreateToken":"willEditToken"),h();try{const{data:{data:g}}=f?yield D.be.post("/admin/api-tokens",r):yield D.be.put(`/admin/api-tokens/${L}`,r);a=g,M({type:"success",message:l({id:"notification.success.saved",defaultMessage:"Saved"})}),p.current(f?"didCreateToken":"didEditToken",{type:a.type}),f&&(k.replace(`/settings/api-tokens/${g.id}`,{apiToken:g}),P("apiTokens.success"))}catch(g){const A=(0,w.Iz)(g.response.data);S.setErrors(A),M({type:"warning",message:J()(g,"response.data.message","notification.error")})}v()});return!f&&!a&&de!=="success"?e.createElement(ee,{apiTokenName:a==null?void 0:a.name}):e.createElement(n.Main,null,e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(Z.Formik,{validationSchema:q,validateOnChange:!1,initialValues:{name:(a==null?void 0:a.name)||"",description:(a==null?void 0:a.description)||"",type:(a==null?void 0:a.type)||"read-only"},onSubmit:ce},({errors:r,handleChange:S,isSubmitting:g,values:A})=>{var V,W,G;return e.createElement(o.Form,null,e.createElement(s.HeaderLayout,{title:(a==null?void 0:a.name)||l({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"}),primaryAction:e.createElement(i.Button,{disabled:g,loading:g,startIcon:e.createElement(m(),null),type:"submit",size:"L"},l({id:"global.save",defaultMessage:"Save"})),navigationAction:e.createElement(o.Link,{startIcon:e.createElement(T(),null),to:"/settings/api-tokens"},l({id:"global.back",defaultMessage:"Back"}))}),e.createElement(s.ContentLayout,null,e.createElement(K.Stack,{spacing:6},Boolean(a==null?void 0:a.name)&&e.createElement(le,{apiToken:a.accessKey}),e.createElement(z.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(K.Stack,{spacing:4},e.createElement(H.Typography,{variant:"delta",as:"h2"},l({id:"global.details",defaultMessage:"Details"})),e.createElement(O.Grid,{gap:5},e.createElement(O.GridItem,{key:"name",col:6,xs:12},e.createElement($.TextInput,{name:"name",error:r.name?l((V=r.name)!=null&&V.id?r.name:{id:r.name,defaultMessage:r.name}):null,label:l({id:"Settings.apiTokens.form.name",defaultMessage:"Name"}),onChange:S,value:A.name,required:!0})),e.createElement(O.GridItem,{key:"description",col:6,xs:12},e.createElement(Q.Textarea,{label:l({id:"Settings.apiTokens.form.description",defaultMessage:"Description"}),name:"description",error:r.description?l((W=r.description)!=null&&W.id?r.description:{id:r.description,defaultMessage:r.description}):null,onChange:S},A.description)),e.createElement(O.GridItem,{key:"type",col:6,xs:12},e.createElement(x.Select,{name:"type",label:l({id:"Settings.apiTokens.form.type",defaultMessage:"Token type"}),value:A.type,error:r.type?l((G=r.type)!=null&&G.id?r.type:{id:r.type,defaultMessage:r.type}):null,onChange:ue=>{S({target:{name:"type",value:ue}})}},e.createElement(x.Option,{value:"read-only"},l({id:"Settings.apiTokens.types.read-only",defaultMessage:"Read-only"})),e.createElement(x.Option,{value:"full-access"},l({id:"Settings.apiTokens.types.full-access",defaultMessage:"Full access"}))))))))))}))}},10606:(B,E,t)=>{"use strict";t.r(E),t.d(E,{default:()=>d});var e=t(32735),c=t(10938),o=t.n(c),s=t(2805),n=t(74022);const d=()=>e.createElement(c.CheckPagePermissions,{permissions:s.Z.settings["api-tokens"].create},e.createElement(n.Z,null))},50701:function(B,E,t){(function(e,c){B.exports=c(t(32735))})(this,function(e){return function(c){var o={};function s(n){if(o[n])return o[n].exports;var i=o[n]={i:n,l:!1,exports:{}};return c[n].call(i.exports,i,i.exports,s),i.l=!0,i.exports}return s.m=c,s.c=o,s.d=function(n,i,d){s.o(n,i)||Object.defineProperty(n,i,{enumerable:!0,get:d})},s.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},s.t=function(n,i){if(1&i&&(n=s(n)),8&i||4&i&&typeof n=="object"&&n&&n.__esModule)return n;var d=Object.create(null);if(s.r(d),Object.defineProperty(d,"default",{enumerable:!0,value:n}),2&i&&typeof n!="string")for(var m in n)s.d(d,m,function(y){return n[y]}.bind(null,m));return d},s.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return s.d(i,"a",i),i},s.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},s.p="",s(s.s=100)}({0:function(c,o){c.exports=e},100:function(c,o,s){"use strict";s.r(o);var n=s(0);function i(){return(i=Object.assign||function(d){for(var m=1;m<arguments.length;m++){var y=arguments[m];for(var T in y)Object.prototype.hasOwnProperty.call(y,T)&&(d[T]=y[T])}return d}).apply(this,arguments)}o.default=function(d){return n.createElement("svg",i({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},d),n.createElement("path",{d:"M17 14h-4.34a6 6 0 110-4H23v4h-2v4h-4v-4zM7 14a2 2 0 100-4 2 2 0 000 4z",fill:"#8E8EA9"}))}}})})}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{74022:(B,E,t)=>{"use strict";t.d(E,{Z:()=>re});var e=t(32735),c=t(5636),o=t(10938),s=t(11856),n=t(16540),i=t(44526),d=t(98221),m=t.n(d),y=t(59716),T=t.n(y),Z=t(83281),K=t(90662),z=t(9808),H=t(95602),O=t(78330),$=t(37178),Q=t(90353),x=t(25716),X=t(33795),J=t.n(X),N=t(5141),Y=t(84968),w=t(13271),D=t(16558),I=t(5173);const q=I.Ry().shape({name:I.Z_(o.translatedErrors.string).required(o.translatedErrors.required),type:I.Z_(o.translatedErrors.string).oneOf(["read-only","full-access"]).required(o.translatedErrors.required),description:I.Z_().nullable()});var _=t(60216),U=t.n(_);const R=({apiTokenName:u})=>{const{formatMessage:a}=(0,c.useIntl)();return(0,o.useFocusWhenNavigate)(),e.createElement(n.Main,{"aria-busy":"true"},e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(s.HeaderLayout,{primaryAction:e.createElement(i.Button,{disabled:!0,startIcon:e.createElement(m(),null),type:"button",size:"L"},a({id:"global.save",defaultMessage:"Save"})),title:u||a({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"})}),e.createElement(s.ContentLayout,null,e.createElement(o.LoadingIndicatorPage,null)))};R.defaultProps={apiTokenName:null},R.propTypes={apiTokenName:U().string};const ee=R;var te=t(20763),ne=t(74382),ae=t.n(ne),oe=t(59087),se=t(50701),ie=t.n(se);const b=({apiToken:u})=>{const{formatMessage:a}=(0,c.useIntl)(),l=(0,o.useNotification)(),{trackUsage:h}=(0,o.useTracking)(),v=(0,e.useRef)(h);return e.createElement(o.ContentBox,{endAction:u&&e.createElement("span",{style:{alignSelf:"start"}},e.createElement(oe.CopyToClipboard,{onCopy:()=>{v.current("didCopyTokenKey"),l({type:"success",message:{id:"Settings.apiTokens.notification.copied"}})},text:u},e.createElement(te.IconButton,{label:a({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),noBorder:!0,icon:e.createElement(ae(),null),style:{padding:0,height:"1rem"}}))),title:u||a({id:"Settings.apiTokens.copy.editTitle",defaultMessage:"This token isn\u2019t accessible anymore."}),subtitle:a(u?{id:"Settings.apiTokens.copy.lastWarning",defaultMessage:"Make sure to copy this token, you won\u2019t be able to see it again!"}:{id:"Settings.apiTokens.copy.editMessage",defaultMessage:"For security reasons, you can only see your token once."}),icon:e.createElement(ie(),null),iconBackground:"neutral100"})};b.defaultProps={apiToken:null},b.propTypes={apiToken:U().string};const le=b;var j=(u,a,l)=>new Promise((h,v)=>{var M=p=>{try{C(l.next(p))}catch(P){v(P)}},k=p=>{try{C(l.throw(p))}catch(P){v(P)}},C=p=>p.done?h(p.value):Promise.resolve(p.value).then(M,k);C((l=l.apply(u,a)).next())});const re=()=>{var u;let a;(0,o.useFocusWhenNavigate)();const{formatMessage:l}=(0,c.useIntl)(),{lockApp:h,unlockApp:v}=(0,o.useOverlayBlocker)(),M=(0,o.useNotification)(),k=(0,N.useHistory)(),{trackUsage:C}=(0,o.useTracking)(),p=(0,e.useRef)(C),{setCurrentStep:P}=(0,o.useGuidedTour)(),{params:{id:L}}=(0,N.useRouteMatch)("/settings/api-tokens/:id"),f=L==="create";(0,e.useEffect)(()=>{p.current(f?"didAddTokenFromList":"didEditTokenFromList")},[f]),(u=k.location.state)!=null&&u.apiToken.accessKey&&(a=k.location.state.apiToken);const{status:de,data:F}=(0,Y.useQuery)(["api-token",L],()=>j(void 0,null,function*(){const{data:{data:r}}=yield D.be.get(`/admin/api-tokens/${L}`);return r}),{enabled:!f&&!a,onError:()=>{M({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}});F&&(a=F);const ce=(r,S)=>j(void 0,null,function*(){p.current(f?"willCreateToken":"willEditToken"),h();try{const{data:{data:g}}=f?yield D.be.post("/admin/api-tokens",r):yield D.be.put(`/admin/api-tokens/${L}`,r);a=g,M({type:"success",message:l({id:"notification.success.saved",defaultMessage:"Saved"})}),p.current(f?"didCreateToken":"didEditToken",{type:a.type}),f&&(k.replace(`/settings/api-tokens/${g.id}`,{apiToken:g}),P("apiTokens.success"))}catch(g){const A=(0,w.Iz)(g.response.data);S.setErrors(A),M({type:"warning",message:J()(g,"response.data.message","notification.error")})}v()});return!f&&!a&&de!=="success"?e.createElement(ee,{apiTokenName:a==null?void 0:a.name}):e.createElement(n.Main,null,e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(Z.Formik,{validationSchema:q,validateOnChange:!1,initialValues:{name:(a==null?void 0:a.name)||"",description:(a==null?void 0:a.description)||"",type:(a==null?void 0:a.type)||"read-only"},onSubmit:ce},({errors:r,handleChange:S,isSubmitting:g,values:A})=>{var V,W,G;return e.createElement(o.Form,null,e.createElement(s.HeaderLayout,{title:(a==null?void 0:a.name)||l({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"}),primaryAction:e.createElement(i.Button,{disabled:g,loading:g,startIcon:e.createElement(m(),null),type:"submit",size:"L"},l({id:"global.save",defaultMessage:"Save"})),navigationAction:e.createElement(o.Link,{startIcon:e.createElement(T(),null),to:"/settings/api-tokens"},l({id:"global.back",defaultMessage:"Back"}))}),e.createElement(s.ContentLayout,null,e.createElement(K.Stack,{spacing:6},Boolean(a==null?void 0:a.name)&&e.createElement(le,{apiToken:a.accessKey}),e.createElement(z.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(K.Stack,{spacing:4},e.createElement(H.Typography,{variant:"delta",as:"h2"},l({id:"global.details",defaultMessage:"Details"})),e.createElement(O.Grid,{gap:5},e.createElement(O.GridItem,{key:"name",col:6,xs:12},e.createElement($.TextInput,{name:"name",error:r.name?l((V=r.name)!=null&&V.id?r.name:{id:r.name,defaultMessage:r.name}):null,label:l({id:"Settings.apiTokens.form.name",defaultMessage:"Name"}),onChange:S,value:A.name,required:!0})),e.createElement(O.GridItem,{key:"description",col:6,xs:12},e.createElement(Q.Textarea,{label:l({id:"Settings.apiTokens.form.description",defaultMessage:"Description"}),name:"description",error:r.description?l((W=r.description)!=null&&W.id?r.description:{id:r.description,defaultMessage:r.description}):null,onChange:S},A.description)),e.createElement(O.GridItem,{key:"type",col:6,xs:12},e.createElement(x.Select,{name:"type",label:l({id:"Settings.apiTokens.form.type",defaultMessage:"Token type"}),value:A.type,error:r.type?l((G=r.type)!=null&&G.id?r.type:{id:r.type,defaultMessage:r.type}):null,onChange:ue=>{S({target:{name:"type",value:ue}})}},e.createElement(x.Option,{value:"read-only"},l({id:"Settings.apiTokens.types.read-only",defaultMessage:"Read-only"})),e.createElement(x.Option,{value:"full-access"},l({id:"Settings.apiTokens.types.full-access",defaultMessage:"Full access"}))))))))))}))}},30421:(B,E,t)=>{"use strict";t.r(E),t.d(E,{default:()=>d});var e=t(32735),c=t(10938),o=t.n(c),s=t(2805),n=t(74022);const d=()=>e.createElement(c.CheckPagePermissions,{permissions:s.Z.settings["api-tokens"].update},e.createElement(n.Z,null))},50701:function(B,E,t){(function(e,c){B.exports=c(t(32735))})(this,function(e){return function(c){var o={};function s(n){if(o[n])return o[n].exports;var i=o[n]={i:n,l:!1,exports:{}};return c[n].call(i.exports,i,i.exports,s),i.l=!0,i.exports}return s.m=c,s.c=o,s.d=function(n,i,d){s.o(n,i)||Object.defineProperty(n,i,{enumerable:!0,get:d})},s.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},s.t=function(n,i){if(1&i&&(n=s(n)),8&i||4&i&&typeof n=="object"&&n&&n.__esModule)return n;var d=Object.create(null);if(s.r(d),Object.defineProperty(d,"default",{enumerable:!0,value:n}),2&i&&typeof n!="string")for(var m in n)s.d(d,m,function(y){return n[y]}.bind(null,m));return d},s.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return s.d(i,"a",i),i},s.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},s.p="",s(s.s=100)}({0:function(c,o){c.exports=e},100:function(c,o,s){"use strict";s.r(o);var n=s(0);function i(){return(i=Object.assign||function(d){for(var m=1;m<arguments.length;m++){var y=arguments[m];for(var T in y)Object.prototype.hasOwnProperty.call(y,T)&&(d[T]=y[T])}return d}).apply(this,arguments)}o.default=function(d){return n.createElement("svg",i({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},d),n.createElement("path",{d:"M17 14h-4.34a6 6 0 110-4H23v4h-2v4h-4v-4zM7 14a2 2 0 100-4 2 2 0 000 4z",fill:"#8E8EA9"}))}}})})}}]);
@@ -0,0 +1,15 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8056],{69837:(Ee,L,s)=>{s.r(L),s.d(L,{default:()=>ye});var e=s(32735),o=s(10938),I=s(2805),E=s(5636),M=s(11856),F=s(16540),H=s(44526),j=s(32365),B=s.n(j),k=s(84968),C=s(5141),Q=s(16308),W=s.n(Q),O=s(16558);const Z=[{name:"name",key:"name",metadatas:{label:"Name",sortable:!0}},{name:"description",key:"description",metadatas:{label:"Description",sortable:!1}},{name:"type",key:"type",metadatas:{label:"Token type",sortable:!1}},{name:"createdAt",key:"createdAt",metadatas:{label:"Created at",sortable:!1}}];var h=s(95602),y=s(53214),z=s(19192),G=s(60216),i=s.n(G),Y=s(22081),J=s.n(Y),K=s(20763),X=s(9808),q=Object.defineProperty,S=Object.getOwnPropertySymbols,_=Object.prototype.hasOwnProperty,ee=Object.prototype.propertyIsEnumerable,w=(a,t,n)=>t in a?q(a,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):a[t]=n,te=(a,t)=>{for(var n in t||(t={}))_.call(t,n)&&w(a,n,t[n]);if(S)for(var n of S(t))ee.call(t,n)&&w(a,n,t[n]);return a};const N=({tokenName:a,onClickDelete:t})=>{const{formatMessage:n}=(0,E.useIntl)(),{trackUsage:c}=(0,o.useTracking)();return e.createElement(X.Box,te({paddingLeft:1},o.stopPropagation),e.createElement(K.IconButton,{onClick:()=>{c("willDeleteToken"),t()},label:n({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${a}`}),noBorder:!0,icon:e.createElement(J(),null)}))};N.propTypes={tokenName:i().string.isRequired,onClickDelete:i().func.isRequired};const ne=N;var ae=s(97642),se=s.n(ae),oe=s(19615);const re=(0,oe.default)(o.Link)`
2
+ svg {
3
+ path {
4
+ fill: ${({theme:a})=>a.colors.neutral500};
5
+ }
6
+ }
7
+
8
+ &:hover {
9
+ svg {
10
+ path {
11
+ fill: ${({theme:a})=>a.colors.neutral800};
12
+ }
13
+ }
14
+ }
15
+ `,R=({tokenName:a,tokenId:t})=>{const{formatMessage:n}=(0,E.useIntl)(),{location:{pathname:c}}=(0,C.useHistory)();return e.createElement(re,{to:`${c}/${t}`,title:n({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:`${a}`})},e.createElement(se(),null))};R.propTypes={tokenName:i().string.isRequired,tokenId:i().oneOfType([i().string,i().number]).isRequired};const le=R;var ie=Object.defineProperty,$=Object.getOwnPropertySymbols,ce=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,x=(a,t,n)=>t in a?ie(a,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):a[t]=n,ue=(a,t)=>{for(var n in t||(t={}))ce.call(t,n)&&x(a,n,t[n]);if($)for(var n of $(t))de.call(t,n)&&x(a,n,t[n]);return a};const D=({canDelete:a,canUpdate:t,onClickDelete:n,withBulkActions:c,rows:m})=>{const{formatMessage:f}=(0,E.useIntl)(),[{query:d}]=(0,o.useQueryParams)(),[,p]=d.sort.split(":"),{push:l,location:{pathname:g}}=(0,C.useHistory)(),{trackUsage:P}=(0,o.useTracking)(),v=m.sort((r,b)=>{const T=r.name.localeCompare(b.name);return p==="DESC"?-T:T});return e.createElement(y.Tbody,null,v.map(r=>e.createElement(y.Tr,ue({key:r.id},(0,o.onRowClick)({fn:()=>{P("willEditTokenFromList"),l(`${g}/${r.id}`)},condition:t})),e.createElement(y.Td,null,e.createElement(h.Typography,{textColor:"neutral800",fontWeight:"bold"},r.name)),e.createElement(y.Td,{maxWidth:(0,o.pxToRem)(250)},e.createElement(h.Typography,{textColor:"neutral800",ellipsis:!0},r.description)),e.createElement(y.Td,null,e.createElement(h.Typography,{textColor:"neutral800"},f({id:`Settings.apiTokens.types.${r.type}`,defaultMessage:"Type unknown"}))),e.createElement(y.Td,null,e.createElement(h.Typography,{textColor:"neutral800"},e.createElement(o.RelativeTime,{timestamp:new Date(r.createdAt)}))),c&&e.createElement(y.Td,null,e.createElement(z.Flex,{justifyContent:"end"},t&&e.createElement(le,{tokenName:r.name,tokenId:r.id}),a&&e.createElement(ne,{tokenName:r.name,onClickDelete:()=>n(r.id)}))))))};D.defaultProps={canDelete:!1,canUpdate:!1,onClickDelete:()=>{},rows:[],withBulkActions:!1},D.propTypes={canDelete:i().bool,canUpdate:i().bool,onClickDelete:i().func,rows:i().array,withBulkActions:i().bool};const me=D;var A=(a,t,n)=>new Promise((c,m)=>{var f=l=>{try{p(n.next(l))}catch(g){m(g)}},d=l=>{try{p(n.throw(l))}catch(g){m(g)}},p=l=>l.done?c(l.value):Promise.resolve(l.value).then(f,d);p((n=n.apply(a,t)).next())});const pe=()=>{(0,o.useFocusWhenNavigate)();const a=(0,k.useQueryClient)(),{formatMessage:t}=(0,E.useIntl)(),n=(0,o.useNotification)(),{allowedActions:{canCreate:c,canDelete:m,canUpdate:f,canRead:d}}=(0,o.useRBAC)(I.Z.settings["api-tokens"]),{push:p}=(0,C.useHistory)(),{trackUsage:l}=(0,o.useTracking)(),{startSection:g}=(0,o.useGuidedTour)(),P=(0,e.useRef)(g);(0,e.useEffect)(()=>{P.current&&P.current("apiTokens")},[]),(0,e.useEffect)(()=>{p({search:W().stringify({sort:"name:ASC"},{encode:!1})})},[p]);const{data:v,status:r,isFetching:b}=(0,k.useQuery)(["api-tokens"],()=>A(void 0,null,function*(){l("willAccessTokenList");const{data:{data:u}}=yield O.be.get("/admin/api-tokens");return l("didAccessTokenList",{number:u.length}),u}),{enabled:d,onError:()=>{n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),T=d&&(r!=="success"&&r!=="error"||r==="success"&&b),fe=(0,k.useMutation)(u=>A(void 0,null,function*(){yield O.be.delete(`/admin/api-tokens/${u}`)}),{onSuccess:()=>A(void 0,null,function*(){yield a.invalidateQueries(["api-tokens"]),l("didDeleteToken")}),onError:u=>{var U,V;(V=(U=u==null?void 0:u.response)==null?void 0:U.data)!=null&&V.data?n({type:"warning",message:u.response.data.data}):n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),ge=d&&v,ve=d&&!v&&!c,Te=d&&!v&&c;return e.createElement(F.Main,{"aria-busy":T},e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(M.HeaderLayout,{title:t({id:"Settings.apiTokens.title",defaultMessage:"API Tokens"}),subtitle:t({id:"Settings.apiTokens.description",defaultMessage:"List of generated tokens to consume the API"}),primaryAction:c?e.createElement(o.LinkButton,{"data-testid":"create-api-token-button",startIcon:e.createElement(B(),null),size:"L",onClick:()=>l("willAddTokenFromList"),to:"/settings/api-tokens/create"},t({id:"Settings.apiTokens.create",defaultMessage:"Create new API Token"})):void 0}),e.createElement(M.ContentLayout,null,!d&&e.createElement(o.NoPermissions,null),ge&&e.createElement(o.DynamicTable,{headers:Z,contentType:"api-tokens",rows:v,withBulkActions:m||f,isLoading:T,onConfirmDelete:u=>fe.mutateAsync(u)},e.createElement(me,{canDelete:m,canUpdate:f,rows:v,withBulkActions:m||f})),Te&&e.createElement(o.NoContent,{content:{id:"Settings.apiTokens.addFirstToken",defaultMessage:"Add your first API Token"},action:e.createElement(H.Button,{variant:"secondary",startIcon:e.createElement(B(),null)},t({id:"Settings.apiTokens.addNewToken",defaultMessage:"Add new API Token"}))}),ve&&e.createElement(o.NoContent,{content:{id:"Settings.apiTokens.emptyStateLayout",defaultMessage:"You don\u2019t have any content yet..."}})))},ye=()=>e.createElement(o.CheckPagePermissions,{permissions:I.Z.settings["api-tokens"].main},e.createElement(pe,null))}}]);