@strapi/admin 4.6.0 → 4.6.1

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 (144) hide show
  1. package/.browserslistrc +2 -1
  2. package/admin/src/components/AuthenticatedApp/utils/api.js +5 -4
  3. package/admin/src/components/LeftMenu/index.js +9 -3
  4. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +20 -16
  5. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +5 -5
  6. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +1 -3
  7. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +6 -5
  8. package/admin/src/content-manager/components/InputUID/index.js +4 -4
  9. package/admin/src/content-manager/components/Inputs/index.js +0 -2
  10. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +35 -14
  11. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +4 -3
  12. package/admin/src/content-manager/hooks/useLazyComponents/index.js +9 -13
  13. package/admin/src/content-manager/hooks/useRelation/useRelation.js +4 -4
  14. package/admin/src/content-manager/pages/App/useModels.js +8 -3
  15. package/admin/src/content-manager/pages/App/utils/getContentTypeLinks.js +3 -2
  16. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +4 -4
  17. package/admin/src/content-manager/pages/EditSettingsView/utils/api.js +4 -2
  18. package/admin/src/content-manager/pages/ListSettingsView/utils/api.js +4 -2
  19. package/admin/src/content-manager/pages/ListView/index.js +9 -9
  20. package/admin/src/core/utils/index.js +0 -1
  21. package/admin/src/hooks/useFetchEnabledPlugins/utils/api.js +3 -2
  22. package/admin/src/hooks/useInjectReducer/index.js +1 -0
  23. package/admin/src/hooks/useInjectReducer/useInjectReducer.js +19 -0
  24. package/admin/src/hooks/useRegenerate/index.js +3 -3
  25. package/admin/src/hooks/useRolesList/index.js +5 -3
  26. package/admin/src/index.js +4 -3
  27. package/admin/src/pages/ProfilePage/utils/api.js +5 -3
  28. package/admin/src/pages/SettingsPage/{pages/Users/ListPage → components}/Filters/index.js +0 -0
  29. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +6 -5
  30. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +4 -3
  31. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +5 -3
  32. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/api.js +6 -3
  33. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +9 -3
  34. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +1 -1
  35. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/api.js +6 -3
  36. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +3 -2
  37. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +3 -2
  38. package/admin/src/translations/en.json +7 -5
  39. package/admin/src/translations/eu.json +796 -0
  40. package/admin/src/translations/languageNativeNames.js +1 -0
  41. package/admin/src/translations/ru.json +9 -9
  42. package/build/1412.936ed920.chunk.js +159 -0
  43. package/build/1683.c8aa7b7c.chunk.js +268 -0
  44. package/build/2607.2e48dbf8.chunk.js +66 -0
  45. package/build/2743.6d1632f9.chunk.js +45 -0
  46. package/build/3075.dc3894fe.chunk.js +108 -0
  47. package/build/3632.0317b618.chunk.js +138 -0
  48. package/build/4318.f96a9d4d.chunk.js +30 -0
  49. package/build/{5910.a5374848.chunk.js → 4855.bd092921.chunk.js} +65 -65
  50. package/build/8633.00ccd382.chunk.js +1 -0
  51. package/build/9707.7290fd92.chunk.js +96 -0
  52. package/build/Admin-authenticatedApp.ce646f66.chunk.js +75 -0
  53. package/build/{Admin_homePage.79ab880c.chunk.js → Admin_homePage.b1730882.chunk.js} +1 -1
  54. package/build/{Admin_marketplace.eabf21b2.chunk.js → Admin_marketplace.ea0316c2.chunk.js} +2 -2
  55. package/build/Admin_pluginsPage.5c24f963.chunk.js +6 -0
  56. package/build/Admin_profilePage.59af1978.chunk.js +15 -0
  57. package/build/Admin_settingsPage.d1493824.chunk.js +178 -0
  58. package/build/admin-app.25934eaa.chunk.js +112 -0
  59. package/build/admin-edit-roles-page.446b69dc.chunk.js +1 -0
  60. package/build/admin-edit-users.2ed69bfd.chunk.js +10 -0
  61. package/build/admin-users.fc003b10.chunk.js +11 -0
  62. package/build/{api-tokens-create-page.0e686c30.chunk.js → api-tokens-create-page.d248362d.chunk.js} +1 -1
  63. package/build/{api-tokens-edit-page.d6c7487b.chunk.js → api-tokens-edit-page.8516fa20.chunk.js} +1 -1
  64. package/build/api-tokens-list-page.44a79fda.chunk.js +16 -0
  65. package/build/audit-logs-settings-page.c3dce30d.chunk.js +1 -0
  66. package/build/content-manager.35ff9726.chunk.js +1139 -0
  67. package/build/{content-type-builder-list-view.4243b2b1.chunk.js → content-type-builder-list-view.79e84b36.chunk.js} +1 -6
  68. package/build/{content-type-builder.365b6bf4.chunk.js → content-type-builder.855db321.chunk.js} +16 -15
  69. package/build/{email-settings-page.379552b1.chunk.js → email-settings-page.d1fcc7a3.chunk.js} +4 -9
  70. package/build/en-json.1f137a90.chunk.js +1 -0
  71. package/build/eu-json.fceecd8b.chunk.js +1 -0
  72. package/build/i18n-settings-page.b8d8753e.chunk.js +60 -0
  73. package/build/index.html +1 -1
  74. package/build/main.7b151630.js +4377 -0
  75. package/build/ru-json.aa5cd123.chunk.js +1 -0
  76. package/build/runtime~main.a20d633b.js +2 -0
  77. package/build/sso-settings-page.b85ad080.chunk.js +41 -0
  78. package/build/upload-settings.ef64bbf9.chunk.js +84 -0
  79. package/build/upload.c5730dfa.chunk.js +33 -0
  80. package/build/users-advanced-settings-page.fce9908e.chunk.js +8 -0
  81. package/build/users-email-settings-page.343d0ad2.chunk.js +23 -0
  82. package/build/users-providers-settings-page.e5a9a3f1.chunk.js +99 -0
  83. package/build/users-roles-settings-page.66312f31.chunk.js +30 -0
  84. package/build/webhook-edit-page.73e51e64.chunk.js +75 -0
  85. package/build/{webhook-list-page.f75ba3f2.chunk.js → webhook-list-page.1134f130.chunk.js} +1 -1
  86. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/ComboboxFilter/index.js +41 -0
  87. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionBody.js +1 -3
  88. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/TableRows/index.js +1 -1
  89. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +47 -0
  90. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +30 -31
  91. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getActionTypesDefaultMessages.js +7 -9
  92. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +88 -0
  93. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +4 -2
  94. package/ee/server/migrations/audit-logs-table.js +45 -0
  95. package/ee/server/register.js +2 -0
  96. package/ee/server/services/audit-logs.js +11 -1
  97. package/package.json +27 -27
  98. package/server/controllers/admin.js +16 -0
  99. package/admin/src/content-manager/components/InputJSON/FieldWrapper.js +0 -40
  100. package/admin/src/content-manager/components/InputJSON/Label.js +0 -35
  101. package/admin/src/content-manager/components/InputJSON/components.js +0 -36
  102. package/admin/src/content-manager/components/InputJSON/index.js +0 -223
  103. package/admin/src/content-manager/components/InputJSON/jsonlint.js +0 -680
  104. package/admin/src/core/utils/axiosInstance.js +0 -40
  105. package/build/2607.ce06608e.chunk.js +0 -66
  106. package/build/2743.dea372fb.chunk.js +0 -42
  107. package/build/3075.03ebe93d.chunk.js +0 -115
  108. package/build/3632.963ac97d.chunk.js +0 -138
  109. package/build/4318.8cb388a5.chunk.js +0 -30
  110. package/build/4656.a0d43cca.chunk.js +0 -159
  111. package/build/8633.4af74a50.chunk.js +0 -1
  112. package/build/9641.a311b612.chunk.js +0 -276
  113. package/build/9707.62831b4d.chunk.js +0 -101
  114. package/build/Admin-authenticatedApp.50dc27f9.chunk.js +0 -75
  115. package/build/Admin_pluginsPage.953e796b.chunk.js +0 -6
  116. package/build/Admin_profilePage.5c2efda5.chunk.js +0 -15
  117. package/build/Admin_settingsPage.19cfb9ca.chunk.js +0 -178
  118. package/build/admin-app.34295b50.chunk.js +0 -112
  119. package/build/admin-edit-roles-page.d50d9654.chunk.js +0 -1
  120. package/build/admin-edit-users.912b856d.chunk.js +0 -10
  121. package/build/admin-users.e36e7111.chunk.js +0 -11
  122. package/build/api-tokens-list-page.1cd86136.chunk.js +0 -16
  123. package/build/audit-logs-settings-page.308a6250.chunk.js +0 -1
  124. package/build/codemirror-addon-closebrackets.71aa4bbd.chunk.js +0 -2
  125. package/build/codemirror-addon-lint-js.405f70fb.chunk.js +0 -1
  126. package/build/codemirror-addon-lint.8487ad3d.chunk.js +0 -1
  127. package/build/codemirror-addon-mark-selection.1928c849.chunk.js +0 -1
  128. package/build/codemirror-css.359a2a4b.chunk.js +0 -345
  129. package/build/codemirror-javacript.af237b68.chunk.js +0 -1
  130. package/build/codemirror-theme.2fe63a16.chunk.js +0 -33
  131. package/build/content-manager.851f40ce.chunk.js +0 -1170
  132. package/build/en-json.38d182e5.chunk.js +0 -1
  133. package/build/i18n-settings-page.3ab28b1a.chunk.js +0 -65
  134. package/build/main.9f31732e.js +0 -4454
  135. package/build/ru-json.3b411a39.chunk.js +0 -1
  136. package/build/runtime~main.2b8e2318.js +0 -2
  137. package/build/sso-settings-page.b64a44e8.chunk.js +0 -41
  138. package/build/upload-settings.6c26ff37.chunk.js +0 -89
  139. package/build/upload.2c69d238.chunk.js +0 -38
  140. package/build/users-advanced-settings-page.c4270682.chunk.js +0 -13
  141. package/build/users-email-settings-page.60422a2f.chunk.js +0 -28
  142. package/build/users-providers-settings-page.e1834060.chunk.js +0 -104
  143. package/build/users-roles-settings-page.3ef35132.chunk.js +0 -30
  144. package/build/webhook-edit-page.c0080dc1.chunk.js +0 -75
@@ -1,75 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{19782:function(Z,v,t){t.r(v),t.d(v,{default:function(){return xt}});var e=t(32735),r=t(88425),P=t(84968),h=t(33795),Q=t.n(h),x={i8:"4.6.0"},f=t(67927),d=t(5141),A=t(4409),T=t(74506),W=t(51968),j=t(88311),F=t.n(j),Ie=t(58107),M=t(83292),Pe=t(60216),l=t.n(Pe),G=t(5636),xe=t(71933),se=t(67563),y=t(87933),L=t(72850),Y=t(27677),Ae=t(50563),re=t(41415),Le=t(35331);const Oe=(0,M.default)(y.k)`
2
- position: fixed;
3
- z-index: 4;
4
- inset: 0;
5
- /* this is theme.colors.neutral800 with opacity */
6
- background: ${({theme:n})=>`${n.colors.neutral800}1F`};
7
- `,ie=({onClose:n,onSkip:a,children:o,hideSkip:s})=>{const{formatMessage:u}=(0,G.useIntl)();return e.createElement(xe.h,null,e.createElement(Oe,{onClick:n,padding:8,justifyContent:"center"},e.createElement(se.i,{onEscape:n},e.createElement(Y.K,{background:"neutral0",width:(0,r.pxToRem)(660),shadow:"popupShadow",hasRadius:!0,padding:4,spacing:8,role:"dialog","aria-modal":!0,onClick:c=>c.stopPropagation()},e.createElement(y.k,{justifyContent:"flex-end"},e.createElement(Ae.h,{onClick:n,"aria-label":u({id:"app.utils.close-label",defaultMessage:"Close"}),icon:e.createElement(Le.default,null)})),e.createElement(L.x,{paddingLeft:7,paddingRight:7,paddingBottom:s?8:0},o),!s&&e.createElement(y.k,{justifyContent:"flex-end"},e.createElement(re.z,{variant:"tertiary",onClick:a},u({id:"app.components.GuidedTour.skip",defaultMessage:"Skip the tour"})))))))};ie.propTypes={children:l().node.isRequired,onClose:l().func.isRequired,onSkip:l().func.isRequired,hideSkip:l().bool.isRequired};var De=ie,le=t(97889);const ce={stepContent:null,sectionIndex:null,stepIndex:null,hasSectionAfter:!1,hasStepAfter:!1};var Be=(n=ce,a)=>(0,le.default)(n,o=>{switch(a.type){case"UPDATE_MODAL":{o.stepContent=a.content,o.sectionIndex=a.newSectionIndex,o.stepIndex=a.newStepIndex,o.hasSectionAfter=a.newHasSectionAfter,o.hasStepAfter=a.newHasStepAfter;break}default:return o}}),O=t(49372),de=t(8482);const be=M.default.li`
8
- list-style: disc;
9
- &::marker {
10
- color: ${({theme:n})=>n.colors.neutral800};
11
- }
12
- `,ue=({id:n,defaultMessage:a})=>{const{formatMessage:o}=(0,G.useIntl)();return e.createElement(Y.K,{spacing:4,paddingBottom:6},o({id:n,defaultMessage:a},{documentationLink:s=>e.createElement(O.Z,{as:"a",textColor:"primary600",target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"},s),b:s=>e.createElement(O.Z,{fontWeight:"semiBold"},s),p:s=>e.createElement(O.Z,null,s),light:s=>e.createElement(O.Z,{textColor:"neutral600"},s),ul:s=>e.createElement(L.x,{paddingLeft:6},e.createElement("ul",null,s)),li:s=>e.createElement(be,null,s)}))};ue.propTypes={id:l().string.isRequired,defaultMessage:l().string.isRequired};var Ge=ue,J=t(78024),Ne=t(14317);const X=({number:n,last:a,type:o})=>e.createElement(L.x,{paddingTop:3,paddingBottom:a?0:3},e.createElement(Ne.Z,{number:n,type:o}));X.defaultProps={number:void 0,last:!1,type:""},X.propTypes={number:l().number,last:l().bool,type:l().string};var pe=X,N=t(23678);const w=({title:n,content:a,cta:o,onCtaClick:s,sectionIndex:u,stepIndex:c,hasSectionAfter:m})=>{const{formatMessage:g}=(0,G.useIntl)(),E=u>0,p=c>0,C=u+1;return e.createElement(e.Fragment,null,e.createElement(y.k,{alignItems:"stretch"},e.createElement(y.k,{marginRight:8,justifyContent:"center",minWidth:(0,r.pxToRem)(30)},E&&e.createElement(J.Z,{type:N.hx,minHeight:(0,r.pxToRem)(24)})),e.createElement(O.Z,{variant:"sigma",textColor:"primary600"},g({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"}))),e.createElement(y.k,null,e.createElement(y.k,{marginRight:8,minWidth:(0,r.pxToRem)(30)},e.createElement(pe,{number:u+1,type:p?N.hx:N.lW})),e.createElement(O.Z,{variant:"alpha",fontWeight:"bold",textColor:"neutral800",as:"h3",id:"title"},g(n))),e.createElement(y.k,{alignItems:"stretch"},e.createElement(y.k,{marginRight:8,direction:"column",justifyContent:"center",minWidth:(0,r.pxToRem)(30)},m&&e.createElement(e.Fragment,null,e.createElement(J.Z,{type:N.hx}),p&&e.createElement(pe,{number:C+1,type:N.lW,last:!0}))),e.createElement(L.x,null,e.createElement(Ge,{...a}),o&&(o.target?e.createElement(r.LinkButton,{endIcon:e.createElement(de.Z,null),onClick:s,to:o.target},g(o.title)):e.createElement(re.z,{endIcon:e.createElement(de.Z,null),onClick:s},g(o.title))))),p&&m&&e.createElement(L.x,{paddingTop:3},e.createElement(y.k,{marginRight:8,justifyContent:"center",width:(0,r.pxToRem)(30)},e.createElement(J.Z,{type:N.hx,minHeight:(0,r.pxToRem)(24)}))))};w.defaultProps={currentStep:null,cta:void 0},w.propTypes={sectionIndex:l().number.isRequired,stepIndex:l().number.isRequired,hasSectionAfter:l().bool.isRequired,content:l().shape({id:l().string.isRequired,defaultMessage:l().string.isRequired}).isRequired,cta:l().shape({target:l().string,title:l().shape({id:l().string.isRequired,defaultMessage:l().string.isRequired})}),currentStep:l().string,onCtaClick:l().func.isRequired,title:l().shape({id:l().string.isRequired,defaultMessage:l().string.isRequired}).isRequired};var Ue=w,ke=()=>{const{currentStep:n,guidedTourState:a,setCurrentStep:o,setStepState:s,isGuidedTourVisible:u,setSkipped:c}=(0,r.useGuidedTour)(),[m,g]=(0,e.useState)(n),[{stepContent:E,sectionIndex:p,stepIndex:C,hasSectionAfter:b,hasStepAfter:D},$]=(0,e.useReducer)(Be,ce),{trackUsage:S}=(0,r.useTracking)();(0,e.useEffect)(()=>{if(!n){g(!1);return}const[I]=F()(a,n);g(!I&&u)},[n,a,u]),(0,e.useEffect)(()=>{if(n){const[I]=F()(Ie.Z,n),k=Object.keys(a),[i,B]=n.split("."),te=k.indexOf(i),H=Object.keys(a[i]).indexOf(B),ne=te<k.length-1,ae=H<Object.keys(a[i]).length-1;$({type:"UPDATE_MODAL",content:I,newSectionIndex:te,newStepIndex:H,newHasSectionAfter:ne,newHasStepAfter:ae})}},[n,a]);const U=()=>{s(n,!0),S(E.trackingEvent),o(null)},K=()=>{c(!0),o(null),S("didSkipGuidedtour")};return m&&E?e.createElement(De,{hideSkip:!D&&!b,onSkip:K,onClose:U},e.createElement(Ue,{...E,onCtaClick:U,currentStep:n,sectionIndex:p,stepIndex:C,hasSectionAfter:b})):null},We=t(9026),Fe=t(15300),$e=t(61450),Ke=t(1897),q=t(78464),me=t(42889),Ze=t(25390),je=t(64838),ze=t(9371),Ve=t(73165),He=t(92967),z=t(17247);const Qe=(0,M.default)(L.x)`
13
- width: ${150/16}rem;
14
- position: absolute;
15
- bottom: ${({theme:n})=>n.spaces[9]};
16
- left: ${({theme:n})=>n.spaces[5]};
17
- `,ge=(0,M.default)(d.NavLink)`
18
- display: flex;
19
- justify-content: space-between;
20
- align-items: center;
21
- text-decoration: none;
22
- padding: ${({theme:n})=>`${n.spaces[2]} ${n.spaces[4]}`};
23
- border-radius: ${({theme:n})=>n.spaces[1]};
24
-
25
- &:hover {
26
- background: ${({theme:n,logout:a})=>a?n.colors.danger100:n.colors.primary100};
27
- text-decoration: none;
28
- }
29
-
30
- svg {
31
- path {
32
- fill: ${({theme:n})=>n.colors.danger600};
33
- }
34
- }
35
- `,he=({generalSectionLinks:n,pluginsSectionLinks:a})=>{const o=(0,e.useRef)(),[s,u]=(0,e.useState)(!1),{logos:{menu:c}}=(0,f.um)(),[m,g]=(0,r.usePersistentState)("navbar-condensed",!1),{userDisplayName:E}=(0,r.useAppInfos)(),{formatMessage:p}=(0,G.useIntl)(),{trackUsage:C}=(0,r.useTracking)(),{pathname:b}=(0,d.useLocation)(),D=(0,d.useHistory)(),$=E.split(" ").map(i=>i.substring(0,1)).join("").substring(0,2),S=()=>u(i=>!i),U=async()=>{await z.be.post("/admin/logout"),r.auth.clearAppStorage(),S(),D.push("/auth/login")},K=i=>{!i.currentTarget.contains(i.relatedTarget)&&i.relatedTarget?.parentElement?.id!=="main-nav-user-button"&&u(!1)},I=(i=null)=>{C("willNavigate",{from:b,to:i})},k=p({id:"app.components.LeftMenu.navbrand.title",defaultMessage:"Strapi Dashboard"});return e.createElement(Fe.$,{condensed:m},e.createElement($e.D,{as:d.NavLink,workplace:p({id:"app.components.LeftMenu.navbrand.workplace",defaultMessage:"Workplace"}),title:k,icon:e.createElement("img",{src:c.custom||c.default,alt:p({id:"app.components.LeftMenu.logo.alt",defaultMessage:"Application logo"})})}),e.createElement(We.i,null),e.createElement(Ke._,null,e.createElement(q.O,{as:d.NavLink,to:"/content-manager",icon:e.createElement(Ve.Z,null),onClick:()=>I("/content-manager")},p({id:"global.content-manager",defaultMessage:"Content manager"})),a.length>0?e.createElement(me.y,{label:p({id:"app.components.LeftMenu.plugins",defaultMessage:"Plugins"})},a.map(i=>{const B=i.icon;return e.createElement(q.O,{as:d.NavLink,to:i.to,key:i.to,icon:e.createElement(B,null),onClick:()=>I(i.to)},p(i.intlLabel))})):null,n.length>0?e.createElement(me.y,{label:p({id:"app.components.LeftMenu.general",defaultMessage:"General"})},n.map(i=>{const B=i.icon;return e.createElement(q.O,{as:d.NavLink,badgeContent:i.notificationsCount>0&&i.notificationsCount.toString()||void 0,to:i.to,key:i.to,icon:e.createElement(B,null),onClick:()=>I(i.to)},p(i.intlLabel))})):null),e.createElement(Ze.q,null,e.createElement(je.r,{id:"main-nav-user-button",ref:o,onClick:S,initials:$},E),s&&e.createElement(Qe,{onBlur:K,padding:1,shadow:"tableShadow",background:"neutral0",hasRadius:!0},e.createElement(se.i,{onEscape:S},e.createElement(Y.K,{spacing:0},e.createElement(ge,{tabIndex:0,onClick:S,to:"/me"},e.createElement(O.Z,null,p({id:"global.profile",defaultMessage:"Profile"}))),e.createElement(ge,{tabIndex:0,onClick:U,logout:"logout",to:"/auth/login"},e.createElement(O.Z,{textColor:"danger600"},p({id:"app.components.LeftMenu.logout",defaultMessage:"Logout"})),e.createElement(He.Z,null))))),e.createElement(ze.w,{onClick:()=>g(i=>!i)},p(m?{id:"app.components.LeftMenu.expand",defaultMessage:"Expand the navbar"}:{id:"app.components.LeftMenu.collapse",defaultMessage:"Collapse the navbar"}))))};he.propTypes={generalSectionLinks:l().array.isRequired,pluginsSectionLinks:l().array.isRequired};var Ye=he,Je=t(10728);const Xe=(0,M.default)(L.x)`
36
- flex: 1;
37
- `,fe=({children:n,sideNav:a})=>{const{formatMessage:o}=(0,G.useIntl)();return e.createElement(L.x,{background:"neutral100"},e.createElement(Je.z,null,o({id:"skipToContent",defaultMessage:"Skip to content"})),e.createElement(y.k,{alignItems:"flex-start"},a,e.createElement(Xe,null,n)))};fe.propTypes={children:l().node.isRequired,sideNav:l().node.isRequired};var we=fe,_=t(64421),qe=t(26648),R=t(39161),V=t(57269);const _e=(0,M.default)(R.Box)`
38
- position: fixed;
39
- bottom: ${({theme:n})=>n.spaces[2]};
40
- right: ${({theme:n})=>n.spaces[2]};
41
- `,et=(0,M.default)(R.Box)`
42
- width: ${({theme:n})=>n.spaces[8]};
43
- height: ${({theme:n})=>n.spaces[8]};
44
- background: ${({theme:n})=>n.colors.primary600};
45
- box-shadow: ${({theme:n})=>n.shadows.tableShadow};
46
- border-radius: 50%;
47
-
48
- svg path {
49
- fill: ${({theme:n})=>n.colors.buttonNeutral0};
50
- }
51
- `,tt=(0,M.default)(R.Box)`
52
- bottom: ${({theme:n})=>`${n.spaces[9]}`};
53
- min-width: ${200/16}rem;
54
- position: absolute;
55
- right: 0;
56
- `,nt=(0,M.default)(R.Flex)`
57
- text-decoration: none;
58
-
59
- svg path {
60
- fill: ${({theme:n})=>n.colors.neutral600};
61
- }
62
-
63
- &:focus,
64
- &:hover {
65
- background: ${({theme:n})=>n.colors.neutral100};
66
-
67
- svg path {
68
- fill: ${({theme:n})=>n.colors.neutral700};
69
- }
70
-
71
- ${[R.Typography]} {
72
- color: ${({theme:n})=>n.colors.neutral700};
73
- }
74
- }
75
- `;var at=()=>{const[n,a]=(0,e.useState)(!1),{formatMessage:o}=(0,G.useIntl)(),{showTutorials:s}=(0,f.um)();if(!s)return null;const u=[{Icon:e.createElement(V.Book,null),label:o({id:"global.documentation",defaultMessage:"Documentation"}),destination:"https://docs.strapi.io"},{Icon:e.createElement(V.Information,null),label:o({id:"app.static.links.cheatsheet",defaultMessage:"CheatSheet"}),destination:"https://strapi-showcase.s3-us-west-2.amazonaws.com/CheatSheet.pdf"}],c=()=>{a(m=>!m)};return e.createElement(_e,{as:"aside"},e.createElement(et,{as:"button",id:"onboarding","aria-label":o(n?{id:"app.components.Onboarding.help.button-close",defaultMessage:"Close help menu"}:{id:"app.components.Onboarding.help.button",defaultMessage:"Open help menu"}),onClick:c},e.createElement(R.Icon,{as:n?V.Cross:V.Question,height:(0,r.pxToRem)(16),width:(0,r.pxToRem)(16)})),n&&e.createElement(R.FocusTrap,{onEscape:c},e.createElement(tt,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",padding:2},u.map(m=>e.createElement(nt,{as:"a",key:m.label,rel:"nofollow noreferrer noopener",target:"_blank",href:m.destination,padding:2,hasRadius:!0,alignItems:"center"},e.createElement(R.Stack,{horizontal:!0,spacing:2},m.Icon,e.createElement(R.Typography,{color:"neutral600"},m.label)))))))};const ot=(0,e.lazy)(()=>Promise.all([t.e(5015),t.e(2607),t.e(5910),t.e(994)]).then(t.bind(t,48347))),st=(0,e.lazy)(()=>t.e(3981).then(t.bind(t,52567))),rt=(0,e.lazy)(()=>t.e(3677).then(t.bind(t,15415))),it=(0,e.lazy)(()=>Promise.all([t.e(5015),t.e(5516)]).then(t.bind(t,42052))),Ee=(0,e.lazy)(()=>Promise.resolve().then(t.bind(t,53951))),lt=(0,e.lazy)(()=>t.e(9501).then(t.bind(t,92336))),ct=(0,e.lazy)(()=>t.e(9497).then(t.bind(t,9972))),ye=(0,e.lazy)(()=>Promise.all([t.e(5015),t.e(3632),t.e(5895)]).then(t.bind(t,46253))),dt=()=>{const{trackUsage:n}=(0,r.useTracking)(),a=(0,A.useDispatch)(),o=(0,A.useSelector)(s=>s.admin_app.status);(0,e.useEffect)(()=>{o==="init"&&(n("didAccessAuthenticatedAdministration"),a({type:qe.e}))},[o])};var ut=()=>{dt();const{isLoading:n,generalSectionLinks:a,pluginsSectionLinks:o}=(0,f.H9)(),{menu:s}=(0,r.useStrapiApp)(),u=(0,e.useMemo)(()=>s.filter(c=>c.Component).map(({to:c,Component:m,exact:g})=>(0,_.ot)(m,c,g)),[s]);return n?e.createElement(r.LoadingIndicatorPage,null):e.createElement(T.DndProvider,{backend:W.PD},e.createElement(we,{sideNav:e.createElement(Ye,{generalSectionLinks:a,pluginsSectionLinks:o})},e.createElement(e.Suspense,{fallback:e.createElement(r.LoadingIndicatorPage,null)},e.createElement(d.Switch,null,e.createElement(d.Route,{path:"/",component:st,exact:!0}),e.createElement(d.Route,{path:"/me",component:ct,exact:!0}),e.createElement(d.Route,{path:"/content-manager",component:ot}),u,e.createElement(d.Route,{path:"/settings/:settingId",component:ye}),e.createElement(d.Route,{path:"/settings",component:ye,exact:!0}),e.createElement(d.Route,{path:"/marketplace"},e.createElement(it,null)),e.createElement(d.Route,{path:"/list-plugins",exact:!0},e.createElement(rt,null)),e.createElement(d.Route,{path:"/404",component:Ee}),e.createElement(d.Route,{path:"/500",component:lt}),e.createElement(d.Route,{path:"",component:Ee}))),e.createElement(ke,null),e.createElement(at,null)))},pt=n=>({plugins:Object.keys(n).reduce((a,o)=>(a[o]={...n[o]},a),{})}),mt=t(3040),gt=t.n(mt);const ve={plugins:null};var ht=(n=ve,a)=>(0,le.default)(n,o=>{switch(a.type){case"SET_PLUGIN_READY":{gt()(o,["plugins",a.pluginId,"isReady"],!0);break}default:return o}}),ft=()=>{const{plugins:n}=(0,r.useStrapiApp)(),[{plugins:a},o]=(0,e.useReducer)(ht,ve,()=>pt(n)),s=(0,e.useRef)(c=>{o({type:"SET_PLUGIN_READY",pluginId:c})});if(Object.keys(a).some(c=>a[c].isReady===!1)){const c=Object.keys(a).reduce((m,g)=>{const E=a[g].initializer;if(E){const p=a[g].pluginId;m.push(e.createElement(E,{key:p,setPlugin:s.current}))}return m},[]);return e.createElement(e.Fragment,null,c,e.createElement(r.LoadingIndicatorPage,null))}return e.createElement(ut,null)},Te=t(17367);const Et=()=>({type:Te.l}),yt=n=>({type:Te.m,permissions:n}),Ce=({children:n,permissions:a,refetchPermissions:o})=>{const{allPermissions:s}=(0,A.useSelector)(c=>c.rbacProvider),u=(0,A.useDispatch)();return(0,e.useEffect)(()=>(u(yt(a)),()=>{u(Et())}),[a,u]),s?e.createElement(r.RBACProviderContext.Provider,{value:{allPermissions:s,refetchPermissions:o}},n):e.createElement(r.LoadingIndicatorPage,null)};Ce.propTypes={children:l().element.isRequired,permissions:l().array.isRequired,refetchPermissions:l().func.isRequired};var vt=Ce,Tt=t(55721),Ct=t(54770),ee=t.n(Ct),Me=(n,a)=>!ee().valid(n)||!ee().valid(a)?!1:ee().lt(n,a);const Re=x.i8,Mt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),Rt=async n=>{try{const{data:{tag_name:a}}=await Tt.Z.get("https://api.github.com/repos/strapi/strapi/releases/latest");return Me(Re,a)&&Mt&&n({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${a}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),a}catch{return Re}},St=async()=>{try{const{data:n,headers:a}=await z.be.get("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return n.data}catch(n){throw new Error(n)}},It=async()=>{try{const{data:n,headers:a}=await z.be.get("/admin/users/me/permissions");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return n.data}catch(n){throw new Error(n)}},Pt=async()=>{try{const{data:{data:{roles:n}}}=await z.be.get("/admin/users/me");return n}catch(n){throw new Error(n)}},Se=x.i8;var xt=()=>{const{setGuidedTourVisibility:n}=(0,r.useGuidedTour)(),a=(0,r.useNotification)(),o=(0,e.useRef)(n),s=r.auth.getUserInfo(),u=Q()(s,"username")||(0,_.Pp)(s.firstname,s.lastname),[c,m]=(0,e.useState)(u),[g,E]=(0,e.useState)(null),{showReleaseNotification:p}=(0,f.um)(),[{data:C,status:b},{data:D,isLoading:$},{data:S,status:U,refetch:K,isFetched:I,isFetching:k},{data:i}]=(0,P.useQueries)([{queryKey:"app-infos",queryFn:St},{queryKey:"strapi-release",queryFn:()=>Rt(a),enabled:p,initialData:Se},{queryKey:"admin-users-permission",queryFn:It,initialData:[]},{queryKey:"user-roles",queryFn:Pt}]),B=(0,e.useMemo)(()=>Me(Se,D),[D]);(0,e.useEffect)(()=>{i&&i.find(({code:oe})=>oe==="strapi-super-admin")&&C?.autoReload&&o.current(!0)},[i,C]),(0,e.useEffect)(()=>{(async()=>{const oe=await(0,_.Qy)(s);E(oe)})()},[s]);const H=$||(k&&I||b==="loading"||U==="loading"),ne=(0,e.useMemo)(()=>({...C,userId:g,latestStrapiReleaseTag:D,setUserDisplayName:m,shouldUpdateStrapi:B,userDisplayName:c}),[C,D,B,c,g]);return H?e.createElement(r.LoadingIndicatorPage,null):b==="error"?e.createElement("div",null,"error..."):e.createElement(r.AppInfosContext.Provider,{value:ne},e.createElement(vt,{permissions:S,refetchPermissions:K},e.createElement(ft,null)))}},78024:function(Z,v,t){var e=t(32735),r=t(60216),P=t.n(r),h=t(88425),Q=t.n(h),x=t(72850),f=t(23678);const d=({type:A,...T})=>e.createElement(x.x,{width:(0,h.pxToRem)(2),height:"100%",background:A===f.VM?"neutral300":"primary500",hasRadius:!0,...T});d.defaultProps={type:f.VM},d.propTypes={type:P().oneOf([f.lW,f.hx,f.VM])},v.Z=d},14317:function(Z,v,t){var e=t(32735),r=t(60216),P=t.n(r),h=t(88425),Q=t.n(h),x=t(87933),f=t(49372),d=t(99140),A=t(66456),T=t(23678);const W=({type:j,number:F})=>j===T.hx?e.createElement(x.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,h.pxToRem)(30),height:(0,h.pxToRem)(30),justifyContent:"center"},e.createElement(d.J,{as:A.Z,"aria-hidden":!0,width:(0,h.pxToRem)(16),color:"neutral0"})):j===T.lW?e.createElement(x.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,h.pxToRem)(30),height:(0,h.pxToRem)(30),justifyContent:"center"},e.createElement(f.Z,{fontWeight:"semiBold",textColor:"neutral0"},F)):e.createElement(x.k,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,h.pxToRem)(30),height:(0,h.pxToRem)(30),justifyContent:"center"},e.createElement(f.Z,{fontWeight:"semiBold",textColor:"neutral600"},F));W.defaultProps={number:void 0,type:T.VM},W.propTypes={number:P().number,type:P().oneOf([T.lW,T.hx,T.VM])},v.Z=W},23678:function(Z,v,t){t.d(v,{VM:function(){return P},hx:function(){return r},lW:function(){return e}});const e="isActive",r="isDone",P="isNotDone"},58107:function(Z,v){const t={contentTypeBuilder:{home:{title:{id:"app.components.GuidedTour.home.CTB.title",defaultMessage:"\u{1F9E0} Build the content structure"},cta:{title:{id:"app.components.GuidedTour.home.CTB.cta.title",defaultMessage:"Go to the Content type Builder"},type:"REDIRECT",target:"/plugins/content-type-builder"},trackingEvent:"didClickGuidedTourHomepageContentTypeBuilder"},create:{title:{id:"app.components.GuidedTour.CTB.create.title",defaultMessage:"\u{1F9E0} Create a first Collection type"},content:{id:"app.components.GuidedTour.CTB.create.content",defaultMessage:"<p>Collection types help you manage several entries, Single types are suitable to manage only one entry.</p> <p>Ex: For a Blog website, Articles would be a Collection type whereas a Homepage would be a Single type.</p>"},cta:{title:{id:"app.components.GuidedTour.CTB.create.cta.title",defaultMessage:"Build a Collection type"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep1CollectionType"},success:{title:{id:"app.components.GuidedTour.CTB.success.title",defaultMessage:"Step 1: Completed \u2705"},content:{id:"app.components.GuidedTour.CTB.success.content",defaultMessage:"<p>Good going!</p><b>\u26A1\uFE0F What would you like to share with the world?</b>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didCreateGuidedTourCollectionType"}},contentManager:{home:{title:{id:"app.components.GuidedTour.home.CM.title",defaultMessage:"\u26A1\uFE0F What would you like to share with the world?"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didClickGuidedTourHomepageContentManager"},create:{title:{id:"app.components.GuidedTour.CM.create.title",defaultMessage:"\u26A1\uFE0F Create content"},content:{id:"app.components.GuidedTour.CM.create.content",defaultMessage:"<p>Create and manage all the content here in the Content Manager.</p><p>Ex: Taking the Blog website example further, one can write an Article, save and publish it as they like.</p><p>\u{1F4A1} Quick tip - Don't forget to hit publish on the content you create.</p>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep2ContentManager"},success:{title:{id:"app.components.GuidedTour.CM.success.title",defaultMessage:"Step 2: Completed \u2705"},content:{id:"app.components.GuidedTour.CM.success.content",defaultMessage:"<p>Awesome, one last step to go!</p><b>\u{1F680} See content in action</b>"},cta:{title:{id:"app.components.GuidedTour.CM.success.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didCreateGuidedTourEntry"}},apiTokens:{home:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},cta:{title:{id:"app.components.GuidedTour.home.apiTokens.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didClickGuidedTourHomepageApiTokens"},create:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},content:{id:"app.components.GuidedTour.apiTokens.create.content",defaultMessage:"<p>Generate an authentication token here and retrieve the content you just created.</p>"},cta:{title:{id:"app.components.GuidedTour.apiTokens.create.cta.title",defaultMessage:"Generate an API Token"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep3ApiTokens"},success:{title:{id:"app.components.GuidedTour.apiTokens.success.title",defaultMessage:"Step 3: Completed \u2705"},content:{id:"app.components.GuidedTour.apiTokens.success.content",defaultMessage:"<p>See content in action by making an HTTP request:</p><ul><li><p>To this URL: <light>https://'<'YOUR_DOMAIN'>'/api/'<'YOUR_CT'>'</light></p></li><li><p>With the header: <light>Authorization: bearer '<'YOUR_API_TOKEN'>'</light></p></li></ul><p>For more ways to interact with content, see the <documentationLink>documentation</documentationLink>.</p>"},trackingEvent:"didGenerateGuidedTourApiTokens"}}};v.Z=t}}]);
@@ -1,6 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3677],{15415:function(T,r,e){e.r(r),e.d(r,{default:function(){return B}});var t=e(32735),a=e(88425),d=e(99357),o=e(5636),c=e(83983),m=e(94638),l=e(96709),s=e(28356),E=e(17e3),f=e(27649),u=e(49372),y=e(94745),C=e(76330),P=e(29005),g=e(66735),L=e(3594),I=e(84968),N=e(17247);const A=async()=>{const{data:n}=await N.be.get("/admin/plugins");return n};var D=n=>{const i=(0,a.useNotification)();return(0,I.useQuery)("list-enabled-plugins",()=>A(),{onSuccess(){n&&n()},onError(){i({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})},x=()=>{const{formatMessage:n}=(0,o.useIntl)(),{notifyStatus:i}=(0,m.G)();(0,a.useFocusWhenNavigate)();const h=n({id:"global.plugins",defaultMessage:"Plugins"}),O=()=>{i(n({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:h}))},{status:p,data:M}=D(O);return p!=="success"&&p!=="error"?t.createElement(l.A,null,t.createElement(f.o,{"aria-busy":!0},t.createElement(a.LoadingIndicatorPage,null))):t.createElement(l.A,null,t.createElement(f.o,null,t.createElement(s.T,{title:h,subtitle:n({id:"app.components.ListPluginsPage.description",defaultMessage:"List of the installed plugins in the project."})}),t.createElement(E.D,null,t.createElement(y.i,{colCount:2,rowCount:M?.plugins?.length??0+1},t.createElement(C.h,null,t.createElement(P.Tr,null,t.createElement(g.Th,null,t.createElement(u.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.name",defaultMessage:"Name"}))),t.createElement(g.Th,null,t.createElement(u.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.description",defaultMessage:"description"}))))),t.createElement(L.p,null,M.plugins.map(({name:v,displayName:W,description:R})=>t.createElement(P.Tr,{key:v},t.createElement(g.Td,null,t.createElement(u.Z,{textColor:"neutral800",variant:"omega",fontWeight:"bold"},n({id:`global.plugins.${v}`,defaultMessage:W}))),t.createElement(g.Td,null,t.createElement(u.Z,{textColor:"neutral800"},n({id:`global.plugins.${v}.description`,defaultMessage:R}))))))))))},B=()=>{const{formatMessage:n}=(0,o.useIntl)(),i=n({id:"global.plugins",defaultMessage:"Plugins"});return t.createElement(a.CheckPagePermissions,{permissions:c.Z.marketplace.main},t.createElement(d.Helmet,{title:i}),t.createElement(x,null))}},96709:function(T,r,e){e.d(r,{A:function(){return l}});var t=e(32735),a=e(60216),d=e(83292),o=e(72850);const c=(0,d.default)(o.x)`
2
- display: grid;
3
- grid-template-columns: ${({hasSideNav:s})=>s?"auto 1fr":"1fr"};
4
- `,m=(0,d.default)(o.x)`
5
- overflow-x: hidden;
6
- `,l=({sideNav:s,children:E})=>t.createElement(c,{hasSideNav:Boolean(s)},s,t.createElement(m,{paddingBottom:10},E));l.defaultProps={sideNav:void 0},l.propTypes={children:a.node.isRequired,sideNav:a.node}}}]);
@@ -1,15 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{9972:function(j,E,t){t.r(E),t.d(E,{default:function(){return le}});var e=t(32735),o=t(83292),r=t(88425),H=t(5636),S=t(83281),U=t(23940),L=t.n(U),v=t(84968),A=t(88423),f=t.n(A),m=t(99357),p=t(27649),w=t(49372),P=t(72850),D=t(28356),N=t(17e3),X=t(41415),y=t(15335),c=t(5803),g=t(27677),Y=t(94638),B=t(70218),G=t(84967),$=t(63642),V=t(10369),T=t(54894),x=t(60492),J=t(66456),k=t(20139),q=t(67927),_=t(9086),ee=t.n(_),O=t(17247);const te=async()=>{const{data:i}=await O.be.get("/admin/users/me");return i.data},ae=async i=>{const b=ee()(i,["confirmPassword","currentTheme"]),{data:h}=await O.be.put("/admin/users/me",b);return{...h.data,currentTheme:i.currentTheme}};var se=t(5173),ne=t(1057),re=se.Ry().shape(ne.Rw),K=t(64421);const oe=o.default.a`
2
- color: ${({theme:i})=>i.colors.primary600};
3
- `,C=(0,o.default)(V.o)`
4
- ::-ms-reveal {
5
- display: none;
6
- }
7
- `,I=(0,o.default)($.E)`
8
- svg {
9
- height: 1rem;
10
- width: 1rem;
11
- path {
12
- fill: ${({theme:i})=>i.colors.neutral600};
13
- }
14
- }
15
- `;var le=()=>{const[i,b]=(0,e.useState)(!1),[h,ie]=(0,e.useState)(!1),[Z,de]=(0,e.useState)(!1),{changeLocale:ce,localeNames:z}=(0,k.Z)(),{setUserDisplayName:me}=(0,r.useAppInfos)(),ue=(0,v.useQueryClient)(),{formatMessage:a}=(0,H.useIntl)(),{trackUsage:fe}=(0,r.useTracking)(),R=(0,r.useNotification)(),{lockApp:pe,unlockApp:ge}=(0,r.useOverlayBlocker)(),{notifyStatus:he}=(0,Y.G)(),{currentTheme:Ee,themes:W,onChangeTheme:ve}=(0,q.M1)();(0,r.useFocusWhenNavigate)();const{status:we,data:M}=(0,v.useQuery)("user",()=>te(),{onSuccess(){he(a({id:"Settings.profile.form.notify.data.loaded",defaultMessage:"Your profile data has been loaded"}))},onError(){R({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),Pe=we!=="success",Q=(0,v.useMutation)(s=>ae(s),{async onSuccess(s){await ue.invalidateQueries("user"),r.auth.setUserInfo(f()(s,["email","firstname","lastname","username","preferedLanguage"]));const l=s.username||(0,K.Pp)(s.firstname,s.lastname);me(l),ce(s.preferedLanguage),ve(s.currentTheme),fe("didChangeMode",{newMode:s.currentTheme}),R({type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"}})},onSettled(){ge()},refetchActive:!0}),{isLoading:ye}=Q,Me=async(s,{setErrors:l})=>{pe();const d=s.username||null;Q.mutate({...s,username:d},{onError(F){const n=F?.response?.data;return n?.data?l(n.data):R({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})},Se=["currentTheme","email","firstname","lastname","username","preferedLanguage"],Le=f()({...M,currentTheme:Ee},Se);if(Pe)return e.createElement(p.o,{"aria-busy":"true"},e.createElement(m.Helmet,{title:a({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(D.T,{title:a({id:"Settings.profile.form.section.profile.page.title",defaultMessage:"Profile page"})}),e.createElement(N.D,null,e.createElement(r.LoadingIndicatorPage,null)));const Ae=Object.keys(W).filter(s=>W[s]);return e.createElement(p.o,{"aria-busy":ye},e.createElement(m.Helmet,{title:a({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(S.Formik,{onSubmit:Me,initialValues:Le,validateOnChange:!1,validationSchema:re,enableReinitialize:!0},({errors:s,values:l,handleChange:d,isSubmitting:F})=>e.createElement(r.Form,null,e.createElement(D.T,{title:M.username||(0,K.Pp)(M.firstname,M.lastname),primaryAction:e.createElement(X.z,{startIcon:e.createElement(J.Z,null),loading:F,type:"submit"},a({id:"global.save",defaultMessage:"Save"}))}),e.createElement(P.x,{paddingBottom:10},e.createElement(N.D,null,e.createElement(g.K,{spacing:6},e.createElement(P.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(g.K,{spacing:4},e.createElement(w.Z,{variant:"delta",as:"h2"},a({id:"global.profile",defaultMessage:"Profile"})),e.createElement(y.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(r.GenericInput,{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},error:s.firstname,onChange:d,value:l.firstname||"",type:"text",name:"firstname",required:!0})),e.createElement(c.P,{s:12,col:6},e.createElement(r.GenericInput,{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},error:s.lastname,onChange:d,value:l.lastname||"",type:"text",name:"lastname"})),e.createElement(c.P,{s:12,col:6},e.createElement(r.GenericInput,{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},error:s.email,onChange:d,value:l.email||"",type:"email",name:"email",required:!0})),e.createElement(c.P,{s:12,col:6},e.createElement(r.GenericInput,{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},error:s.username,onChange:d,value:l.username||"",type:"text",name:"username"}))))),e.createElement(P.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(g.K,{spacing:4},e.createElement(w.Z,{variant:"delta",as:"h2"},a({id:"global.change-password",defaultMessage:"Change password"})),e.createElement(y.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(C,{error:s.currentPassword?a({id:s.currentPassword,defaultMessage:s.currentPassword}):"",onChange:d,value:l.currentPassword||"",label:a({id:"Auth.form.currentPassword.label",defaultMessage:"Current Password"}),name:"currentPassword",type:Z?"text":"password",endAction:e.createElement(I,{onClick:n=>{n.stopPropagation(),de(u=>!u)},label:a(Z?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},Z?e.createElement(T.default,null):e.createElement(x.default,null))}))),e.createElement(y.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(C,{error:s.password?a({id:s.password,defaultMessage:s.password}):"",onChange:d,value:l.password||"",label:a({id:"global.password",defaultMessage:"Password"}),name:"password",type:i?"text":"password",autoComplete:"new-password",endAction:e.createElement(I,{onClick:n=>{n.stopPropagation(),b(u=>!u)},label:a(i?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},i?e.createElement(T.default,null):e.createElement(x.default,null))})),e.createElement(c.P,{s:12,col:6},e.createElement(C,{error:s.confirmPassword?a({id:s.confirmPassword,defaultMessage:s.confirmPassword}):"",onChange:d,value:l.confirmPassword||"",label:a({id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"}),name:"confirmPassword",type:h?"text":"password",autoComplete:"new-password",endAction:e.createElement(I,{onClick:n=>{n.stopPropagation(),ie(u=>!u)},label:a(h?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},h?e.createElement(T.default,null):e.createElement(x.default,null))}))))),e.createElement(P.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(g.K,{spacing:4},e.createElement(g.K,{spacing:1},e.createElement(w.Z,{variant:"delta",as:"h2"},a({id:"Settings.profile.form.section.experience.title",defaultMessage:"Experience"})),e.createElement(w.Z,null,a({id:"Settings.profile.form.section.experience.interfaceLanguageHelp",defaultMessage:"Preference changes will apply only to you. More information is available {here}."},{here:e.createElement(oe,{target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales"},a({id:"Settings.profile.form.section.experience.here",defaultMessage:"here"}))}))),e.createElement(y.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(B.P,{label:a({id:"Settings.profile.form.section.experience.interfaceLanguage",defaultMessage:"Interface language"}),placeholder:a({id:"global.select",defaultMessage:"Select"}),hint:a({id:"Settings.profile.form.section.experience.interfaceLanguage.hint",defaultMessage:"This will only display your own interface in the chosen language."}),onClear:()=>{d({target:{name:"preferedLanguage",value:null}})},clearLabel:a({id:"Settings.profile.form.section.experience.clear.select",defaultMessage:"Clear the interface language selected"}),value:l.preferedLanguage,onChange:n=>{d({target:{name:"preferedLanguage",value:n}})}},Object.keys(z).map(n=>{const u=z[n];return e.createElement(G.W,{value:n,key:n},u)}))),e.createElement(c.P,{s:12,col:6},e.createElement(B.P,{label:a({id:"Settings.profile.form.section.experience.mode.label",defaultMessage:"Interface mode"}),placeholder:a({id:"components.Select.placeholder",defaultMessage:"Select"}),hint:a({id:"Settings.profile.form.section.experience.mode.hint",defaultMessage:"Displays your interface in the chosen mode."}),value:l.currentTheme,onChange:n=>{d({target:{name:"currentTheme",value:n}})}},Ae.map(n=>e.createElement(G.W,{value:n,key:n},a({id:"Settings.profile.form.section.experience.mode.option-label",defaultMessage:"{name} mode"},{name:a({id:n,defaultMessage:L()(n)})}))))))))))))))}},1057:function(j,E,t){t.d(E,{YM:function(){return A},Rw:function(){return S}});var e=t(5173),o=t(88425);const r={firstname:e.Z_().trim().required(o.translatedErrors.required),lastname:e.Z_(),email:e.Z_().email(o.translatedErrors.email).lowercase().required(o.translatedErrors.required),username:e.Z_().nullable(),password:e.Z_().min(8,o.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:e.Z_().min(8,o.translatedErrors.minLength).oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").when("password",(f,m)=>f?m.required(o.translatedErrors.required):m)};var S={...r,currentPassword:e.Z_().when(["password","confirmPassword"],(f,m,p)=>f||m?p.required(o.translatedErrors.required):p),preferedLanguage:e.Z_().nullable()},L={roles:e.IX().min(1,o.translatedErrors.required).required(o.translatedErrors.required)},A=e.Ry().shape({...r,isActive:e.Xg(),...L})}}]);
@@ -1,178 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{46253:function(_,S,t){t.r(S),t.d(S,{SettingsPage:function(){return Ft},default:function(){return Un}});var e=t(32735),A=t(88425),i=t(5141),me=t(96709),Q=t(5636),Qe=t(99357),oe=t(67927),Oe=t(64421),je=t(84968),Fe=t(28356),nt=t(17e3),H=t(27649),x=t(72850),b=t(15335),Ae=t(5803),$=t(49372),Me=t(27677),k=t(41415),We=t(41502),q=t(47361),F=t(66456),Be=t(83983),ee=t(60216),f=t.n(ee);const ze=750,se=100,we=["image/jpeg","image/png","image/svg+xml"];var Ve=t(23272),ct=t(68387),_e=t(98779),Ye=t(50563),st=t(19406),it=t(44647),at=t(85025),ie=t(55225),Je=t(97889);const pe={localImage:void 0};var W=(g=pe,d)=>(0,Je.default)(g,p=>{switch(d.type){case"SET_LOCAL_IMAGE":{p.localImage=d.value;break}default:return p}});const ne=({onChangeLogo:g,customLogo:d,goTo:p,Component:h,modalTitle:u,next:P,prev:z,currentStep:U})=>{const[{localImage:Ce},Y]=(0,e.useReducer)(W,pe),{formatMessage:ye}=(0,Q.useIntl)(),V=xe=>{Y({type:"SET_LOCAL_IMAGE",value:xe})},Ue=()=>{p(null)};return U?e.createElement(at.P,{labelledBy:"modal",onClose:Ue},e.createElement(ie.x,null,e.createElement($.Z,{fontWeight:"bold",as:"h2",id:"modal"},ye(u))),e.createElement(h,{setLocalImage:V,goTo:p,next:P,prev:z,onClose:Ue,asset:Ce||d,onChangeLogo:g})):null};ne.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},ne.propTypes={Component:f().elementType,currentStep:f().string,customLogo:f().shape({name:f().string,url:f().string,width:f().number,height:f().number,ext:f().string}),goTo:f().func.isRequired,modalTitle:f().shape({id:f().string,defaultMessage:f().string}),next:f().string,onChangeLogo:f().func.isRequired,prev:f().string};var w=ne;const K={currentStep:void 0};var he=(g=K,d)=>(0,Je.default)(g,p=>{switch(d.type){case"GO_TO":{p.currentStep=d.to;break}default:return p}}),De=t(35540),Ne=t(39291),le=t(3653),$e=t(9026),He=t(83292),v=t(87933),Ke=t(99140),T=t(11406),Z=t(98275),j=t(87107),re=t(47851),ae=t(47284);const X={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},ve={id:"Settings.application.customization.modal.upload.error-size",defaultMessage:"The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"},ke=g=>new Promise(d=>{const p=new FileReader;p.onload=()=>{const h=new Image;h.onload=function(){d({width:h.width,height:h.height})},h.src=p.result},p.readAsDataURL(g)}),dt=(g,d)=>({ext:g.name.split(".").pop(),size:g.size/1e3,name:g.name,url:URL.createObjectURL(g),rawFile:g,width:d.width,height:d.height}),M=async g=>{let d;if(!we.includes(g.type))throw d=new Error("File format"),d.displayMessage=X,d;const h=await ke(g);if(!(h.width<=ze&&h.height<=ze))throw d=new Error("File sizing"),d.displayMessage=ve,d;const P=dt(g,h);if(!(P.size<=se))throw d=new Error("File sizing"),d.displayMessage=ve,d;return P},be=(0,He.default)(Z._)`
2
- opacity: 0;
3
- position: absolute;
4
- top: 0;
5
- bottom: 0;
6
- left: 0;
7
- right: 0;
8
- z-index: 1;
9
- `,ut=({setLocalImage:g,goTo:d,next:p,onClose:h})=>{const{formatMessage:u}=(0,Q.useIntl)(),[P,z]=(0,e.useState)(!1),[U,Ce]=(0,e.useState)(void 0),Y=(0,e.useRef)(null),ye=()=>z(!0),V=()=>z(!1),Ue=ot=>{ot.preventDefault(),Y.current.click()},xe=async()=>{V();const ot=Y.current.files[0];if(!!ot)try{const lt=await M(ot);g(lt),d(p)}catch(lt){if(lt.displayMessage)Ce(u(lt.displayMessage,{size:se,dimension:ze})),Y.current.focus();else throw lt}},qe=()=>P?"primary500":U?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(x.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(j.g,{name:"logo-upload",error:U},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(Me.K,{spacing:2},e.createElement(v.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:P?"primary100":"neutral100",borderColor:qe(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:ye,onDragLeave:V},e.createElement(Ke.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:ae.Z,"aria-hidden":!0}),e.createElement(x.x,{paddingTop:3,paddingBottom:5},e.createElement($.Z,{variant:"delta",as:"span"},u({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(be,{accept:we,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:xe,ref:Y,id:"logo-upload"}),e.createElement(k.z,{type:"button",onClick:Ue},u({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(x.x,{paddingTop:6},e.createElement($.Z,{variant:"pi",textColor:"neutral600"},u({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:se,dimension:ze})))),e.createElement(re.c,null)))))),e.createElement(T.m,{startActions:e.createElement(k.z,{onClick:h,variant:"tertiary"},u({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};ut.defaultProps={next:null},ut.propTypes={goTo:f().func.isRequired,next:f().string,onClose:f().func.isRequired,setLocalImage:f().func.isRequired};var At=ut,Nt=t(10369),Zt=t(55721),Pn=async g=>{try{const d=await Zt.Z.get(g,{responseType:"blob",timeout:8e3});return new File([d.data],d.config.url,{type:d.headers["content-type"]})}catch(d){throw d.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},d}};const ht=({goTo:g,next:d,onClose:p,setLocalImage:h})=>{const{formatMessage:u}=(0,Q.useIntl)(),[P,z]=(0,e.useState)(""),[U,Ce]=(0,e.useState)(null),Y=V=>{z(V.target.value)},ye=async()=>{try{const V=await Pn(P),Ue=await M(V);h(Ue),g(d)}catch(V){if(V.displayMessage)Ce(u(V.displayMessage,{size:se,dimension:ze}));else throw V}};return e.createElement("form",{onSubmit:V=>{V.preventDefault(),ye()}},e.createElement(x.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Nt.o,{label:u({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:U,onChange:Y,value:P,name:"logo-url"})),e.createElement(T.m,{startActions:e.createElement(k.z,{onClick:p,variant:"tertiary"},u({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(k.z,{type:"submit"},u({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};ht.defaultProps={next:null},ht.propTypes={goTo:f().func.isRequired,next:f().string,onClose:f().func.isRequired,setLocalImage:f().func.isRequired};var On=ht;const et=({setLocalImage:g,goTo:d,next:p,onClose:h})=>{const{formatMessage:u}=(0,Q.useIntl)();return e.createElement(De.v,{label:u({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(x.x,{paddingLeft:8,paddingRight:8},e.createElement(Ne.m,null,e.createElement(Ne.O,null,u({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(Ne.O,null,u({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement($e.i,null)),e.createElement(le.n,null,e.createElement(le.x,null,e.createElement(At,{onClose:h,setLocalImage:g,goTo:d,next:p})),e.createElement(le.x,null,e.createElement(On,{onClose:h,setLocalImage:g,goTo:d,next:p}))))};et.defaultProps={next:null},et.propTypes={goTo:f().func.isRequired,next:f().string,onClose:f().func.isRequired,setLocalImage:f().func.isRequired};var Fn=et,_t=t(42466),en=t(20853),Bn=t(2800),vt=t(26835),Nn=t(41048),mt=t(37083),jt=t(11505);const Mt=({asset:g})=>{const{formatMessage:d}=(0,Q.useIntl)();return e.createElement(_t.Z,null,e.createElement(en.O,null,e.createElement(Bn.H,{size:"S",src:g.url})),e.createElement(vt.e,null,e.createElement(Nn.a,null,e.createElement(mt.l,null,g.name),e.createElement(mt._,null,`${g.ext.toUpperCase()} - ${g.width}\u2715${g.height}`)),e.createElement(jt.E,null,d({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};Mt.propTypes={asset:f().shape({name:f().string,url:f().string,width:f().number,height:f().number,ext:f().string}).isRequired};var zt=Mt;const Dt=({onClose:g,asset:d,prev:p,next:h,goTo:u,setLocalImage:P,onChangeLogo:z})=>{const{formatMessage:U}=(0,Q.useIntl)(),Ce=()=>{P(void 0),u(p)},Y=()=>{z(d),u(h)};return e.createElement(e.Fragment,null,e.createElement(x.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(v.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(v.k,{direction:"column",alignItems:"flex-start"},e.createElement($.Z,{variant:"pi",fontWeight:"bold"},U({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement($.Z,{variant:"pi",textColor:"neutral500"},U({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(k.z,{onClick:Ce,variant:"secondary"},U({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(x.x,{maxWidth:(0,A.pxToRem)(180)},e.createElement(zt,{asset:d}))),e.createElement(T.m,{startActions:e.createElement(k.z,{onClick:g,variant:"tertiary"},U({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(k.z,{onClick:Y},U({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};Dt.defaultProps={next:null,prev:null},Dt.propTypes={goTo:f().func.isRequired,asset:f().shape({name:f().string,url:f().string,width:f().number,height:f().number,ext:f().string}).isRequired,next:f().string,onClose:f().func.isRequired,onChangeLogo:f().func.isRequired,prev:f().string,setLocalImage:f().func.isRequired};var $t=Dt,kt={upload:{Component:Fn,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:$t,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const xt=({canUpdate:g,customLogo:d,defaultLogo:p,hint:h,label:u,onChangeLogo:P,onResetLogo:z})=>{const[{currentStep:U},Ce]=(0,e.useReducer)(he,K),{Component:Y,next:ye,prev:V,modalTitle:Ue}=kt[U]||{},{formatMessage:xe}=(0,Q.useIntl)(),qe=ot=>{Ce({type:"GO_TO",to:ot})};return e.createElement(e.Fragment,null,e.createElement(Ve.F,{label:u,selectedSlide:0,hint:h,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:d?.name||"logo.png",actions:e.createElement(ct.b,null,e.createElement(Ye.h,{disabled:!g,onClick:()=>qe(d?"pending":"upload"),label:xe({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(st.default,null)}),d&&e.createElement(Ye.h,{disabled:!g,onClick:z,label:xe({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(it.Z,null)}))},e.createElement(_e.q,{label:xe({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(x.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:d?.url||p,alt:xe({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(w,{Component:Y,currentStep:U,onChangeLogo:P,customLogo:d,goTo:qe,next:ye,prev:V,modalTitle:Ue}))};xt.defaultProps={canUpdate:!1,customLogo:null,hint:null},xt.propTypes={canUpdate:f().bool,customLogo:f().shape({url:f().string,name:f().string}),label:f().string.isRequired,hint:f().string,defaultLogo:f().string.isRequired,onChangeLogo:f().func.isRequired,onResetLogo:f().func.isRequired};var Lt=xt;const It={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var nn=(g=It,d)=>(0,Je.default)(g,p=>{switch(d.type){case"SET_CUSTOM_MENU_LOGO":{p.menuLogo.display=d.value,p.menuLogo.submit.rawFile=d.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{p.authLogo.display=d.value,p.authLogo.submit.rawFile=d.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{p.menuLogo.display=null,p.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{p.authLogo.display=null,p.authLogo.submit={rawFile:null,isReset:!0};break}default:return p}}),Ut=t(86349),an=t.n(Ut),sn=(g,d)=>an()(g,{menuLogo:{display:d.menuLogo},authLogo:{display:d.authLogo}});const pt=(0,e.forwardRef)(({canUpdate:g,projectSettingsStored:d},p)=>{const{formatMessage:h}=(0,Q.useIntl)(),{trackUsage:u}=(0,A.useTracking)(),{logos:{menu:P,auth:z}}=(0,oe.um)(),[{menuLogo:U,authLogo:Ce},Y]=(0,e.useReducer)(nn,It,()=>sn(It,d)),ye=qe=>{Y({type:"SET_CUSTOM_MENU_LOGO",value:qe})},V=()=>{u("didClickResetLogo",{logo:"menu"}),Y({type:"RESET_CUSTOM_MENU_LOGO"})},Ue=qe=>{Y({type:"SET_CUSTOM_AUTH_LOGO",value:qe})},xe=()=>{u("didClickResetLogo",{logo:"auth"}),Y({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(p,()=>({getValues:()=>({menuLogo:U.submit,authLogo:Ce.submit})})),e.createElement(x.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement($.Z,{variant:"delta",as:"h3"},h({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement($.Z,{variant:"pi",textColor:"neutral600"},h({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:ze,size:se})),e.createElement(b.r,{paddingTop:4,gap:4},e.createElement(Ae.P,{col:6,s:12},e.createElement(Lt,{canUpdate:g,customLogo:U.display,defaultLogo:P.default,hint:h({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:h({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:ye,onResetLogo:V})),e.createElement(Ae.P,{col:6,s:12},e.createElement(Lt,{canUpdate:g,customLogo:Ce.display,defaultLogo:z.default,hint:h({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:h({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:Ue,onResetLogo:xe}))))});pt.defaultProps={canUpdate:!1,projectSettingsStored:null},pt.propTypes={canUpdate:f().bool,projectSettingsStored:f().shape({menuLogo:f().shape({url:f().string,name:f().string})})};var ln=pt,rn=t(17247),Gt=t(48344),Zn=t.n(Gt),Wt=g=>Zn()(g,(d,p,h)=>{p&&p.url?d[h]={...p,url:(0,A.prefixFileUrlWithBackendUrl)(p.url)}:d[h]=p},{});const cn=async()=>{const{data:g}=await rn.be.get("/admin/project-settings");return Wt(g)},dn=async g=>{const{data:d}=await rn.be.post("/admin/project-settings",g,{headers:{"Content-Type":"multipart/form-data"}});return Wt(d)};var un=g=>{const d=new FormData;return Object.entries(g).forEach(([p,h])=>{h&&h.rawFile instanceof File&&d.append(p,h.rawFile),h&&h.isReset&&d.append(p,null)}),d},Vt=()=>{const g=(0,e.useRef)(),d=(0,A.useNotification)(),{trackUsage:p}=(0,A.useTracking)(),{formatMessage:h}=(0,Q.useIntl)(),u=(0,je.useQueryClient)();(0,A.useFocusWhenNavigate)();const P=(0,A.useAppInfos)(),{shouldUpdateStrapi:z,latestStrapiReleaseTag:U,strapiVersion:Ce}=P,{updateProjectSettings:Y}=(0,oe.um)(),{allowedActions:{canRead:ye,canUpdate:V}}=(0,A.useRBAC)(Be.Z.settings["project-settings"]),Ue=ye&&V,{data:xe}=(0,je.useQuery)("project-settings",cn,{enabled:ye}),qe=P.communityEdition?"app.components.UpgradePlanModal.text-ce":"app.components.UpgradePlanModal.text-ee",ot=(0,je.useMutation)(Ct=>dn(Ct),{async onSuccess({menuLogo:Ct,authLogo:bt}){await u.invalidateQueries("project-settings",{refetchActive:!0}),Y({menuLogo:Ct?.url,authLogo:bt?.url})}}),lt=Ct=>{if(Ct.preventDefault(),!V)return;const bt=g.current.getValues(),Rn=un(bt);ot.mutate(Rn,{onSuccess(){const{menuLogo:Jt,authLogo:Gn}=bt;Jt.rawFile&&p("didChangeLogo",{logo:"menu"}),Gn.rawFile&&p("didChangeLogo",{logo:"auth"}),d({type:"success",message:h({id:"app",defaultMessage:"Saved"})})},onError(){d({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(me.A,null,e.createElement(A.SettingsPageTitle,{name:"Application"}),e.createElement(H.o,null,e.createElement("form",{onSubmit:lt},e.createElement(Fe.T,{title:h({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:h({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:Ue&&e.createElement(k.z,{type:"submit",startIcon:e.createElement(F.Z,null)},h({id:"global.save",defaultMessage:"Save"}))}),e.createElement(nt.D,null,e.createElement(Me.K,{spacing:6},e.createElement(Me.K,{spacing:5,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement($.Z,{variant:"delta",as:"h3"},h({id:"global.details",defaultMessage:"Details"})),e.createElement(b.r,{paddingTop:1},e.createElement(Ae.P,{col:6,s:12},e.createElement($.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement($.Z,{as:"p"},"v",Ce),e.createElement(We.r,{href:P.communityEdition?"https://discord.strapi.io":"https://support.strapi.io/support/home",isExternal:!0,endIcon:e.createElement(q.Z,null)},h({id:"Settings.application.get-help",defaultMessage:"Get help"}))),e.createElement(Ae.P,{col:6,s:12},e.createElement($.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement($.Z,{as:"p"},h({id:qe,defaultMessage:`${P.communityEdition?"Community Edition":"Enterprise Edition"}`})))),e.createElement(b.r,{paddingTop:1},e.createElement(Ae.P,{col:6,s:12},z&&e.createElement(We.r,{href:`https://github.com/strapi/strapi/releases/tag/${U}`,isExternal:!0,endIcon:e.createElement(q.Z,null)},h({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"}))),e.createElement(Ae.P,{col:6,s:12},e.createElement(We.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(q.Z,null)},h({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(x.x,{paddingTop:1},e.createElement($.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement($.Z,{as:"p"},P.nodeVersion))),ye&&xe&&e.createElement(ln,{canUpdate:V,ref:g,projectSettingsStored:xe}))))))},pn=t(3704),gn=t.n(pn),fn=g=>gn()(g,p=>p.links).map(p=>(0,Oe.ot)(p.Component,p.to,p.exact||!1)),Ht=g=>g.filter(d=>!d.links.every(p=>p.isDisplayed===!1)),Kt=t(15685),tt=t(52136),kn=t(33997),ce=t.n(kn),Pt=function(){return window&&window.strapi&&window.strapi.isEE?t(20178).Z:t(16329).Z}(),Xt=function(){return window&&window.strapi&&window.strapi.isEE?t(51899).Z:t(45677).Z}(),hn=[{Component:function(){return{default:Xt}},to:"/settings/roles",exact:!0},{Component:function(){return{default:Pt}},to:"/settings/roles/duplicate/:id",exact:!0},{Component:function(){return{default:Pt}},to:"/settings/roles/new",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(2544).then(t.bind(t,33778));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/roles/:id",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(5199).then(t.bind(t,31904));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/users",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(4263).then(t.bind(t,40874));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/users/:id",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(5162).then(t.bind(t,33238));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/webhooks/create",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(5162).then(t.bind(t,59021));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/webhooks/:id",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(4121).then(t.bind(t,74767));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/webhooks",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,t.e(8056).then(t.bind(t,83782));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/api-tokens",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([t.e(8633),t.e(4318),t.e(4299)]).then(t.bind(t,3330));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/api-tokens/create",exact:!0},{Component:function(){return(0,tt.Z)(ce().mark(function d(){var p;return ce().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([t.e(8633),t.e(4318),t.e(92)]).then(t.bind(t,97841));case 2:return p=u.sent,u.abrupt("return",p);case 4:case"end":return u.stop()}},d)}))()},to:"/settings/api-tokens/:id",exact:!0}],Ot=hn,vn=function(){return window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z}(),Cn=[].concat((0,Kt.Z)(vn),(0,Kt.Z)(Ot)),Qt=t(90700),yn=t(8598),En=t(77013),Yt=t(79318),Sn=t(66618);const St=({menu:g})=>{const{formatMessage:d}=(0,Q.useIntl)(),h=Ht(g).map(P=>({...P,title:P.intlLabel,links:P.links.map(z=>({...z,title:z.intlLabel,name:z.id}))})),u=d({id:"global.settings",defaultMessage:"Settings"});return e.createElement(Qt.m,{ariaLabel:u},e.createElement(yn.p,{label:u}),e.createElement(En.Z,null,h.map(P=>e.createElement(Yt.D,{key:P.id,label:d(P.intlLabel)},P.links.map(z=>e.createElement(Sn.E,{as:i.NavLink,withBullet:z.hasNotification,to:z.to,key:z.id},d(z.intlLabel)))))))};St.propTypes={menu:f().array.isRequired};var bn=St;function Ft(){const{settingId:g}=(0,i.useParams)(),{settings:d}=(0,A.useStrapiApp)(),{formatMessage:p}=(0,Q.useIntl)(),{isLoading:h,menu:u}=(0,oe.Te)(),P=(0,e.useMemo)(()=>(0,Oe.WW)(Cn.map(({to:Ce,Component:Y,exact:ye})=>(0,Oe.ot)(Y,Ce,ye))),[]),z=fn(d);if(h)return e.createElement(A.LoadingIndicatorPage,null);if(!g)return e.createElement(i.Redirect,{to:"/settings/application-infos"});const U=p({id:"global.settings",defaultMessage:"Settings"});return e.createElement(me.A,{sideNav:e.createElement(bn,{menu:u})},e.createElement(Qe.Helmet,{title:U}),e.createElement(i.Switch,null,e.createElement(i.Route,{path:"/settings/application-infos",component:Vt,exact:!0}),P,z))}var Un=(0,e.memo)(Ft)},16329:function(_,S,t){var e=t(32735),A=t(5141);const i=()=>e.createElement(A.Redirect,{to:"/404"});S.Z=i},49466:function(_,S){S.Z=!0},35123:function(_,S){S.Z=!0},18318:function(_,S){S.Z=!0},52124:function(_,S){S.Z=!0},61526:function(_,S){S.Z=!0},37511:function(_,S,t){t.d(S,{Z:function(){return Aa}});var e=t(32735),A=t(60216),i=t.n(A),me=t(88425),Q=t(35540),Qe=t(39291),oe=t(3653),Oe=t(23973),je=t.n(Oe),Fe=t(86834),nt=t.n(Fe),H=t(5636),x=t(72850),b=t(83292),Ae=t(98978),$=t.n(Ae),Me=t(39515),k=t(96441),We=t(15974),q=t(44426),F=t(87933),Be=t(33795),ee=t.n(Be),f=t(9086),ze=t.n(f),se=t(67927),we=t(45112),Ve=t(41415);const ct=b.default.div`
10
- position: relative;
11
-
12
- ${({hasConditions:a,disabled:n,theme:o})=>a&&`
13
- &:before {
14
- content: '';
15
- position: absolute;
16
- top: -3px;
17
- left: -10px;
18
- width: 6px;
19
- height: 6px;
20
- border-radius: ${20/16}rem;;
21
- background: ${n?o.colors.neutral100:o.colors.primary600};
22
- }
23
- `}
24
- `,_e=({onClick:a,className:n,hasConditions:o,variant:s})=>{const{formatMessage:l}=(0,H.useIntl)();return e.createElement(ct,{hasConditions:o,className:n},e.createElement(Ve.z,{variant:s,startIcon:e.createElement(we.Z,null),onClick:a},l({id:"global.settings",defaultMessage:"Settings"})))};_e.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},_e.propTypes={onClick:i().func.isRequired,className:i().string,hasConditions:i().bool,variant:i().string};var Ye=(0,b.default)(_e)``,st=t(85025),it=t(55225),at=t(31600),ie=t(11406),Je=t(11299),pe=t(49372),te=t(97889),W=t(81346),ne=t.n(W),w=t(23940),K=t.n(w),ge=t(27799);const he=a=>Object.values(a).map(n=>Object.entries(n).filter(([,o])=>o).map(([o])=>o)).flat(),De=a=>a.reduce((n,[o,s])=>(n.push({label:K()(o),children:s.map(l=>({label:l.displayName,value:l.id}))}),n),[]),Ne=(a,n)=>a.map(([,o])=>o).flat().reduce((o,s)=>({[s.id]:n.includes(s.id),...o}),{});var le=function(){return window&&window.strapi&&window.strapi.isEE?t(56899).Z:t(49466).Z}(),$e=function(n){var o=n.arrayOfOptionsGroupedByCategory,s=n.isFormDisabled,l=n.isGrey,r=n.label,c=n.name,m=n.onChange,C=n.value,y=(0,H.useIntl)(),E=y.formatMessage,R=function(B){m(c,Ne(o,B))};return e.createElement(F.k,{as:"li",background:l?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(F.k,{paddingLeft:6,style:{width:180}},e.createElement(pe.Z,{variant:"sigma",textColor:"neutral600"},E({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(pe.Z,{variant:"sigma",title:r,textColor:"primary600",ellipsis:!0},E({id:"Settings.roles.form.permissions.".concat(r.toLowerCase()),defaultMessage:r})),e.createElement(pe.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",E({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(x.x,{style:{maxWidth:430,width:"100%"}},e.createElement(ge.Q,{id:c,customizeContent:function(B){return"".concat(B.length," currently selected")},onChange:R,value:he(C),options:De(o),disabled:s||le})))};$e.propTypes={arrayOfOptionsGroupedByCategory:i().array.isRequired,isFormDisabled:i().bool.isRequired,isGrey:i().bool.isRequired,label:i().string.isRequired,name:i().string.isRequired,value:i().object.isRequired,onChange:i().func.isRequired};var He=$e,v=t(92891);const Ke=(a,n)=>a.reduce((o,s)=>(o[s.id]=(0,v.get)(n,s.id,!1),o),{}),T=(a,n)=>a.reduce((o,s)=>{const[l,r]=s,c=Ke(r,n);return o[l]=c,o},{});var j=(a,n,o)=>a.reduce((s,l)=>{const r=(0,v.get)(n,[...l.pathToConditionsObject,"conditions"],{}),c=T(o,r);return s[l.pathToConditionsObject.join("..")]=c,s},{});const re=({actions:a,headerBreadCrumbs:n,isFormDisabled:o,onClosed:s,onToggle:l})=>{const{formatMessage:r}=(0,H.useIntl)(),{availableConditions:c,modifiedData:m,onChangeConditions:C}=(0,se.$_)(),y=(0,e.useMemo)(()=>Object.entries(ne()(c,"category")),[c]),E=a.filter(({isDisplayed:D,hasSomeActionsSelected:O,hasAllActionsSelected:G})=>D&&(O||G)),R=(0,e.useMemo)(()=>j(E,m,y),[E,m,y]),[L,B]=(0,e.useState)(R),I=(D,O)=>{B((0,te.default)(G=>{G[D]||(G[D]={}),G[D].default||(G[D].default={}),G[D].default=O}))},N=()=>{const D=Object.entries(L).reduce((O,G)=>{const[de,Xe]=G,Re=Object.values(Xe).reduce((Ee,Le)=>({...Ee,...Le}),{});return O[de]=Re,O},{});C(D),l()};return e.createElement(st.P,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(it.x,null,e.createElement(Je.O,{id:"condition-modal-breadcrumbs",label:n.join(", ")},n.map(D=>e.createElement(Je.$,{key:D},K()(r({id:D,defaultMessage:D})))))),e.createElement(at.f,null,E.length===0&&e.createElement(pe.Z,null,r({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:D,label:O,pathToConditionsObject:G},de)=>{const Xe=G.join("..");return e.createElement(He,{key:D,arrayOfOptionsGroupedByCategory:y,label:O,isFormDisabled:o,isGrey:de%2===0,name:Xe,onChange:I,value:ee()(L,Xe,{})})}))),e.createElement(ie.m,{startActions:e.createElement(Ve.z,{variant:"tertiary",onClick:l},r({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(Ve.z,{onClick:N},r({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};re.propTypes={actions:i().arrayOf(i().shape({actionId:i().string.isRequired,checkboxName:i().string,hasSomeActionsSelected:i().bool.isRequired,hasAllActionsSelected:i().bool,isDisplayed:i().bool.isRequired,label:i().string})).isRequired,headerBreadCrumbs:i().arrayOf(i().string).isRequired,isFormDisabled:i().bool.isRequired,onClosed:i().func.isRequired,onToggle:i().func.isRequired};var ae=re;const X=`${120/16}rem`,ve=`${200/16}rem`,ke=`${53/16}rem`;var M=b.default.div`
25
- width: ${X};
26
- `,ut=(0,b.default)(F.k)`
27
- padding-right: ${({theme:a})=>a.spaces[2]};
28
- overflow: hidden;
29
- flex: 1;
30
- ${({isCollapsable:a})=>a&&"cursor: pointer;"}
31
- `;const At=({children:a,isCollapsable:n,isActive:o,isFormDisabled:s,label:l,onChange:r,onClick:c,checkboxName:m,someChecked:C,value:y})=>{const{formatMessage:E}=(0,H.useIntl)();return e.createElement(F.k,{alignItems:"center",paddingLeft:6,style:{width:ve,flexShrink:0}},e.createElement(x.x,{paddingRight:2},e.createElement(q.C,{name:m,"aria-label":E({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:l}),disabled:s,onValueChange:R=>r({target:{name:m,value:R}}),indeterminate:C,value:y})),e.createElement(ut,{title:l,alignItems:"center",isCollapsable:n,...n&&{onClick:c,"aria-expanded":o,onKeyDown:({key:R})=>(R==="Enter"||R===" ")&&c(),tabIndex:0,role:"button"}},e.createElement(pe.Z,{fontWeight:o?"bold":"",textColor:o?"primary600":"neutral800",ellipsis:!0},K()(l)),a))};At.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},At.propTypes={checkboxName:i().string,children:i().node,label:i().string.isRequired,isCollapsable:i().bool,isFormDisabled:i().bool.isRequired,onChange:i().func,onClick:i().func.isRequired,someChecked:i().bool,value:i().bool,isActive:i().bool.isRequired};var Nt=(0,e.memo)(At);const Zt=a=>(0,v.isObject)(a)?(0,v.flattenDeep)(Object.values(a).map(n=>(0,v.isObject)(n)?Zt(n):n)):[];var ft=Zt,ht=a=>a?Object.keys(a).reduce((n,o)=>(o!=="conditions"&&(n[o]=a[o]),n),{}):null,et=a=>{const n=ht(a),o=ft(n);if(!o.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=o.every(r=>r),l=o.some(r=>r)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:l}},_t=(a,n,o)=>a.map(({actionId:s,isDisplayed:l,applyToProperties:r,label:c})=>{if(!l)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:l};const m=[...o.split(".."),s],C=(0,v.isEmpty)(r)?[...m,"properties","enabled"]:m,y=C.join(".."),E=(0,v.get)(n,[...m,"conditions"],null),R=ft(E).some(N=>N);if((0,v.isEmpty)(r)){const N=(0,v.get)(n,C,!1);return{actionId:s,checkboxName:y,hasAllActionsSelected:N,hasConditions:R,hasSomeActionsSelected:N,isDisplayed:l,isParentCheckbox:!1,label:c,pathToConditionsObject:m}}const L=(0,v.get)(n,C,null),{hasAllActionsSelected:B,hasSomeActionsSelected:I}=et(L);return{actionId:s,checkboxName:y,hasAllActionsSelected:B,hasConditions:R,hasSomeActionsSelected:I,isDisplayed:l,isParentCheckbox:!0,label:c,pathToConditionsObject:m}}),en=t(16899),vt=(0,b.default)(en.default)`
32
- display: none;
33
- width: ${10/16}rem;
34
- transform: rotate(${({$isActive:a})=>a?"180":"0"}deg);
35
- margin-left: ${({theme:a})=>a.spaces[2]};
36
- `,mt=a=>`
37
- ${pe.Z} {
38
- color: ${a.colors.primary600};
39
- font-weight: ${a.fontWeights.bold}
40
- }
41
- ${vt} {
42
- display: block;
43
- path {
44
- fill: ${a.colors.primary600}
45
- };
46
- }
47
- `,jt=function(){return window&&window.strapi&&window.strapi.isEE?t(68464).Z:t(35123).Z}(),Mt=function a(n,o){return`
48
- `.concat(zt,` {
49
- background-color: `).concat(n.colors.primary100,`;
50
- color: `).concat(n.colors.primary600,`;
51
- border-radius: `).concat(o?"2px 2px 0 0":"2px",`;
52
- }
53
- `).concat(tn,` {
54
- display: flex;
55
- }
56
- `).concat(Ye,` {
57
- display: block;
58
- }
59
- &:hover {
60
- `).concat(mt(n),`
61
- }
62
-
63
- &:focus-within {
64
- `).concat(function(s){var l=s.theme,r=s.isActive;return a(l,r)},`
65
- }
66
-
67
- `)},zt=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;"],ke,function(a){var n=a.isGrey,o=a.theme;return n?o.colors.neutral100:o.colors.neutral0}),Dt=b.default.div.withConfig({displayName:"Collapse__BoxWrapper",componentId:"sc-132fji1-1"})(["display:inline-flex;min-width:100%;","{display:none;}"," &:hover{","}"],Ye,function(a){var n=a.isActive,o=a.theme;return n&&Mt(o,n)},function(a){var n=a.theme,o=a.isActive;return Mt(n,o)}),$t=(0,b.default)(F.k).withConfig({displayName:"Collapse__Cell",componentId:"sc-132fji1-2"})(["width:",";position:relative;"],X),tn=(0,b.default)(x.x).withConfig({displayName:"Collapse__Chevron",componentId:"sc-132fji1-3"})(["display:none;svg{width:11px;}*{fill:",";}"],function(a){var n=a.theme;return n.colors.primary600}),kt=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(a){var n=a.theme;return n.colors.primary600}),xt=(0,b.default)(x.x).withConfig({displayName:"Collapse__AbsoluteBox",componentId:"sc-132fji1-5"})(["position:absolute;right:9px;transform:translateY(10px);"]),Lt=function(n){var o=n.availableActions,s=n.isActive,l=n.isGrey,r=n.isFormDisabled,c=n.label,m=n.onClickToggle,C=n.pathToData,y=(0,e.useState)(!1),E=(0,Me.Z)(y,2),R=E[0],L=E[1],B=(0,H.useIntl)(),I=B.formatMessage,N=(0,se.$_)(),D=N.modifiedData,O=N.onChangeParentCheckbox,G=N.onChangeSimpleCheckbox,de=function(){L(function(fe){return!fe})},Xe=function(){L(!1)},Re=ee()(D,C.split(".."),{}),Ee=(0,e.useMemo)(function(){return Object.keys(Re).reduce(function(J,fe){return J[fe]=ze()(Re[fe],"conditions"),J},{})},[Re]),Le=et(Ee),Te=Le.hasAllActionsSelected,yt=Le.hasSomeActionsSelected,ue=(0,e.useMemo)(function(){return _t(o,D,C)},[o,D,C]),Ie=ue.some(function(J){var fe=J.hasConditions;return fe});return e.createElement(Dt,{isActive:s},e.createElement(zt,{isGrey:l},e.createElement(Nt,{isCollapsable:!0,isFormDisabled:r,label:c,checkboxName:C,onChange:O,onClick:m,someChecked:yt,value:Te,isActive:s},e.createElement(tn,{paddingLeft:2},s?e.createElement(We.Z,null):e.createElement(k.Z,null))),e.createElement(F.k,{style:{flex:1}},ue.map(function(J){var fe=J.actionId,Se=J.hasConditions,Pe=J.hasAllActionsSelected,Ze=J.hasSomeActionsSelected,gt=J.isDisplayed,Ge=J.isParentCheckbox,rt=J.checkboxName,Rt=J.label;return gt?Ge?e.createElement($t,{key:fe,justifyContent:"center",alignItems:"center"},Se&&e.createElement(kt,null),e.createElement(q.C,{disabled:r||jt,name:rt,"aria-label":I({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(Rt," ").concat(c)}),onValueChange:function(Et){O({target:{name:rt,value:Et}})},indeterminate:Ze,value:Pe})):e.createElement($t,{key:fe,justifyContent:"center",alignItems:"center"},Se&&e.createElement(kt,null),e.createElement(q.C,{disabled:r||jt,indeterminate:Se,name:rt,onValueChange:function(Et){G({target:{name:rt,value:Et}})},value:Pe})):e.createElement(M,{key:fe})})),R&&e.createElement(ae,{headerBreadCrumbs:[c,"Settings.permissions.conditions.conditions"],actions:ue,isFormDisabled:r,onClosed:Xe,onToggle:de})),e.createElement(xt,null,e.createElement(Ye,{onClick:de,hasConditions:Ie})))};Lt.propTypes={availableActions:i().array.isRequired,isActive:i().bool.isRequired,isGrey:i().bool.isRequired,isFormDisabled:i().bool.isRequired,label:i().string.isRequired,onClickToggle:i().func.isRequired,pathToData:i().string.isRequired};var It=Lt,nn=(a,n)=>a.map(o=>{const s=Array.isArray(o.applyToProperties)&&o.applyToProperties.indexOf(n)!==-1&&o.isDisplayed;return{label:o.label,actionId:o.actionId,isActionRelatedToCurrentProperty:s}});const Ut=(0,b.default)(F.k)`
68
- width: ${X};
69
- flex-shrink: 0;
70
- `,an=(0,b.default)(F.k)`
71
- width: ${ve};
72
- height: ${ke};
73
- flex-shrink: 0;
74
- `,on=({headers:a,label:n})=>{const{formatMessage:o}=(0,H.useIntl)(),s=o({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:n});return e.createElement(F.k,null,e.createElement(an,{alignItems:"center",paddingLeft:6},e.createElement(pe.Z,{variant:"sigma",textColor:"neutral500"},s)),a.map(l=>l.isActionRelatedToCurrentProperty?e.createElement(Ut,{justifyContent:"center",key:l.label},e.createElement(pe.Z,{variant:"sigma",textColor:"neutral500"},o({id:`Settings.roles.form.permissions.${l.label.toLowerCase()}`,defaultMessage:l.label}))):e.createElement(Ut,{key:l.label})))};on.propTypes={headers:i().arrayOf(i().shape({label:i().string.isRequired,isActionRelatedToCurrentProperty:i().bool.isRequired})).isRequired,label:i().string.isRequired};var sn=on,pt=t(15685);const ln=b.default.span`
75
- color: ${({theme:a})=>a.colors.danger700};
76
- padding-left: ${({theme:a})=>a.spaces[1]}px;
77
- `;var Gt=()=>e.createElement(ln,null,"*"),jn=(a,n)=>a.map(o=>{const s=Array.isArray(o.subjects)&&o.subjects.indexOf(n)!==-1;return{...o,isDisplayed:s}}),Wt=t(41925);const cn=(0,b.default)(x.x)`
78
- transform: translate(-4px, -12px);
79
-
80
- &:before {
81
- content: '';
82
- width: ${4/16}rem;
83
- height: ${12/16}rem;
84
- background: ${({theme:a})=>a.colors.primary200};
85
- display: block;
86
- }
87
- `,dn=b.default.svg`
88
- position: relative;
89
- flex-shrink: 0;
90
- transform: translate(-0.5px, -1px);
91
-
92
- * {
93
- fill: ${({theme:a,color:n})=>a.colors[n]};
94
- }
95
- `,wt=a=>e.createElement(cn,null,e.createElement(dn,{width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg",...a},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"})));wt.defaultProps={fill:"primary200"},wt.propTypes={fill:i().string};var un=(0,e.memo)(wt),mn=function(){return window&&window.strapi&&window.strapi.isEE?t(19665).Z:t(52124).Z}(),Vt=(0,b.default)(F.k).withConfig({displayName:"SubActionRow__Cell",componentId:"sc-7y8yzq-0"})(["width:",";position:relative;"],X),pn=(0,b.default)(F.k).withConfig({displayName:"SubActionRow__RowWrapper",componentId:"sc-7y8yzq-1"})(["height:",";"],ke),gn=(0,b.default)(x.x).withConfig({displayName:"SubActionRow__Wrapper",componentId:"sc-7y8yzq-2"})(["padding-left:","rem;"],31/16),zn=(0,b.default)(x.x).withConfig({displayName:"SubActionRow__LeftBorderTimeline",componentId:"sc-7y8yzq-3"})(["border-left:",";"],function(a){var n=a.isVisible,o=a.theme;return n?"4px solid ".concat(o.colors.primary200):"4px solid transparent"}),fn=(0,b.default)(F.k).withConfig({displayName:"SubActionRow__RowStyle",componentId:"sc-7y8yzq-4"})(["padding-left:",";width:","px;"," ",";"],function(a){var n=a.theme;return n.spaces[4]},function(a){var n=a.level;return 145-n*36},function(a){var n=a.isCollapsable,o=a.theme;return n&&`
96
- `.concat(vt,` {
97
- display: block;
98
- color: `).concat(o.colors.neutral100,`;
99
- }
100
- &:hover {
101
- `).concat(mt(o),`
102
- }
103
- `)},function(a){var n=a.isActive,o=a.theme;return n&&mt(o)}),$n=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(a){var n=a.theme;return n.spaces[2]},function(a){var n=a.theme;return n.spaces[2]},4/16,function(a){var n=a.theme;return n.colors.primary200}),Ht=function a(n){var o=n.childrenForm,s=n.isFormDisabled,l=n.recursiveLevel,r=n.pathToDataFromActionRow,c=n.propertyActions,m=n.parentName,C=n.propertyName,y=(0,H.useIntl)(),E=y.formatMessage,R=(0,se.$_)(),L=R.modifiedData,B=R.onChangeParentCheckbox,I=R.onChangeSimpleCheckbox,N=(0,e.useState)(null),D=(0,Me.Z)(N,2),O=D[0],G=D[1],de=function(Ee){G(function(Le){return Le===Ee?null:Ee})},Xe=(0,e.useMemo)(function(){return O?o.find(function(Re){var Ee=Re.value;return Ee===O}):null},[O,o]);return e.createElement(gn,null,e.createElement($n,null),o.map(function(Re,Ee){var Le=Re.label,Te=Re.value,yt=Re.required,ue=Re.children,Ie=Ee+1<o.length,J=Array.isArray(ue),fe=O===Te;return e.createElement(zn,{key:Te,isVisible:Ie},e.createElement(pn,null,e.createElement(un,{color:"primary200"}),e.createElement(F.k,{style:{flex:1}},e.createElement(fn,{level:l,isActive:fe,isCollapsable:J},e.createElement(ut,(0,Wt.Z)({alignItems:"center",isCollapsable:J},J&&{onClick:function(){return de(Te)},"aria-expanded":fe,onKeyDown:function(Pe){var Ze=Pe.key;return(Ze==="Enter"||Ze===" ")&&de(Te)},tabIndex:0,role:"button"},{title:Le}),e.createElement(pe.Z,{ellipsis:!0},K()(Le)),yt&&e.createElement(Gt,null),e.createElement(vt,{$isActive:fe}))),e.createElement(F.k,{style:{flex:1}},c.map(function(Se){var Pe=Se.actionId,Ze=Se.label,gt=Se.isActionRelatedToCurrentProperty;if(!gt)return e.createElement(M,{key:Pe});var Ge=[].concat((0,pt.Z)(r.split("..")),[Pe,"properties",C],(0,pt.Z)(m.split("..")),[Te]),rt=ee()(L,Ge,!1);if(!ue)return e.createElement(Vt,{key:Ze,justifyContent:"center",alignItems:"center"},e.createElement(q.C,{disabled:s||mn,name:Ge.join(".."),"aria-label":E({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(m," ").concat(Le," ").concat(Ze)}),onValueChange:function(Bt){I({target:{name:Ge.join(".."),value:Bt}})},value:rt}));var Rt=et(rt),Tt=Rt.hasAllActionsSelected,Et=Rt.hasSomeActionsSelected;return e.createElement(Vt,{key:Ze,justifyContent:"center",alignItems:"center"},e.createElement(q.C,{key:Ze,disabled:s||mn,name:Ge.join(".."),"aria-label":E({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(m," ").concat(Le," ").concat(Ze)}),onValueChange:function(Bt){B({target:{name:Ge.join(".."),value:Bt}})},value:Tt,indeterminate:Et}))})))),Xe&&fe&&e.createElement(x.x,{paddingBottom:2},e.createElement(a,{isFormDisabled:s,parentName:"".concat(m,"..").concat(Te),pathToDataFromActionRow:r,propertyActions:c,propertyName:C,recursiveLevel:l+1,childrenForm:Xe.children})))}))};Ht.propTypes={childrenForm:i().array.isRequired,isFormDisabled:i().bool.isRequired,parentName:i().string.isRequired,pathToDataFromActionRow:i().string.isRequired,propertyActions:i().array.isRequired,propertyName:i().string.isRequired,recursiveLevel:i().number.isRequired};var Kt=(0,e.memo)(Ht);const tt=a=>a.reduce((o,s)=>(s.isActionRelatedToCurrentProperty&&o.push(s.actionId),o),[]);var ce=(a,n,o,s,l)=>{const c=tt(a).reduce((m,C)=>{const y=[...o.split(".."),C,"properties",s,l],E=(0,v.get)(n,y,!1);return m[C]=E,m},{});return et(c)},Pt=function(){return window&&window.strapi&&window.strapi.isEE?t(32741).Z:t(18318).Z}(),Xt=(0,b.default)(F.k).withConfig({displayName:"ActionRow__Cell",componentId:"sc-4agenc-0"})(["width:",";position:relative;"],X),hn=(0,b.default)(F.k).withConfig({displayName:"ActionRow__Wrapper",componentId:"sc-4agenc-1"})(["height:",";flex:1;"," ",";"],ke,function(a){var n=a.isCollapsable,o=a.theme;return n&&`
104
- `.concat(vt,` {
105
- display: block;
106
- color: `).concat(o.colors.neutral100,`;
107
- }
108
- &:hover {
109
- `).concat(mt(o),`
110
- }
111
- `)},function(a){var n=a.isActive,o=a.theme;return n&&mt(o)}),Ot=function(n){var o=n.childrenForm,s=n.label,l=n.isFormDisabled,r=n.name,c=n.required,m=n.pathToData,C=n.propertyActions,y=n.propertyName,E=n.isOdd,R=(0,H.useIntl)(),L=R.formatMessage,B=(0,e.useState)(null),I=(0,Me.Z)(B,2),N=I[0],D=I[1],O=(0,se.$_)(),G=O.modifiedData,de=O.onChangeCollectionTypeLeftActionRowCheckbox,Xe=O.onChangeParentCheckbox,Re=O.onChangeSimpleCheckbox,Ee=N===r,Le=(0,e.useMemo)(function(){return Array.isArray(o)?o:[]},[o]),Te=Le.length>0,yt=(0,e.useCallback)(function(){Te&&D(function(Se){return Se===r?null:r})},[Te,r]),ue=function(Pe){var Ze=Pe.target.value;de(m,y,r,Ze)},Ie=(0,e.useMemo)(function(){return ce(C,G,m,y,r)},[C,G,m,y,r]),J=Ie.hasAllActionsSelected,fe=Ie.hasSomeActionsSelected;return e.createElement(e.Fragment,null,e.createElement(hn,{alignItems:"center",isCollapsable:Te,isActive:Ee,background:E?"neutral100":"neutral0"},e.createElement(F.k,null,e.createElement(Nt,{onChange:ue,onClick:yt,isCollapsable:Te,isFormDisabled:l,label:s,someChecked:fe,value:J,isActive:Ee},c&&e.createElement(Gt,null),e.createElement(vt,{$isActive:Ee})),e.createElement(F.k,null,C.map(function(Se){var Pe=Se.label,Ze=Se.isActionRelatedToCurrentProperty,gt=Se.actionId;if(!Ze)return e.createElement(M,{key:Pe});var Ge=[].concat((0,pt.Z)(m.split("..")),[gt,"properties",y,r]);if(!Te){var rt=ee()(G,Ge,!1);return e.createElement(Xt,{key:gt,justifyContent:"center",alignItems:"center"},e.createElement(q.C,{disabled:l||Pt,name:Ge.join(".."),"aria-label":L({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(r," ").concat(Pe)}),onValueChange:function(In){Re({target:{name:Ge.join(".."),value:In}})},value:rt}))}var Rt=ee()(G,Ge,{}),Tt=et(Rt),Et=Tt.hasAllActionsSelected,Ln=Tt.hasSomeActionsSelected;return e.createElement(Xt,{key:Pe,justifyContent:"center",alignItems:"center"},e.createElement(q.C,{disabled:l||Pt,name:Ge.join(".."),onValueChange:function(In){Xe({target:{name:Ge.join(".."),value:In}})},"aria-label":L({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(r," ").concat(Pe)}),value:Et,indeterminate:Ln}))})))),Ee&&e.createElement(Kt,{childrenForm:Le,isFormDisabled:l,parentName:r,pathToDataFromActionRow:m,propertyName:y,propertyActions:C,recursiveLevel:0}))};Ot.defaultProps={childrenForm:[],required:!1},Ot.propTypes={childrenForm:i().array,label:i().string.isRequired,isFormDisabled:i().bool.isRequired,name:i().string.isRequired,pathToData:i().string.isRequired,propertyActions:i().array.isRequired,propertyName:i().string.isRequired,required:i().bool,isOdd:i().bool.isRequired};var vn=(0,e.memo)(Ot);const Cn=b.default.div`
112
- display: inline-flex;
113
- flex-direction: column;
114
- min-width: 0;
115
- `,Qt=({availableActions:a,childrenForm:n,isFormDisabled:o,label:s,pathToData:l,propertyName:r})=>{const c=(0,e.useMemo)(()=>nn(a,r),[a,r]);return e.createElement(Cn,null,e.createElement(sn,{label:s,headers:c}),e.createElement(x.x,null,n.map(({children:m,label:C,value:y,required:E},R)=>e.createElement(vn,{childrenForm:m,key:y,label:C,isFormDisabled:o,name:y,required:E,propertyActions:c,pathToData:l,propertyName:r,isOdd:R%2===0}))))};Qt.propTypes={childrenForm:i().array.isRequired,availableActions:i().array.isRequired,isFormDisabled:i().bool.isRequired,label:i().string.isRequired,pathToData:i().string.isRequired,propertyName:i().string.isRequired};var yn=Qt;const En=b.default.div`
116
- flex-direction: column;
117
- display: inline-flex;
118
- min-width: 100%;
119
- ${({theme:a,isActive:n})=>n&&`border: 1px solid ${a.colors.primary600};`}
120
- `,Yt=({allActions:a,contentTypeName:n,label:o,index:s,isActive:l,isFormDisabled:r,onClickToggleCollapse:c,pathToData:m,properties:C})=>{const y=(0,e.useCallback)(()=>{c(n)},[n,c]),E=(0,e.useMemo)(()=>jn(a,n),[a,n]);return e.createElement(En,{isActive:l},e.createElement(It,{availableActions:E,isActive:l,isGrey:s%2===0,isFormDisabled:r,label:o,onClickToggle:y,pathToData:m}),l&&C.map(({label:R,value:L,children:B})=>e.createElement(yn,{availableActions:E,childrenForm:B,isFormDisabled:r,label:R,pathToData:m,propertyName:L,key:L})))};Yt.propTypes={allActions:i().array.isRequired,contentTypeName:i().string.isRequired,index:i().number.isRequired,isActive:i().bool.isRequired,isFormDisabled:i().bool.isRequired,label:i().string.isRequired,onClickToggleCollapse:i().func.isRequired,pathToData:i().string.isRequired,properties:i().array.isRequired};var Sn=Yt;const St=({actions:a,isFormDisabled:n,pathToData:o,subjects:s})=>{const[l,r]=(0,e.useState)(null),c=m=>{r(l===m?null:m)};return s.map(({uid:m,label:C,properties:y},E)=>e.createElement(Sn,{allActions:a,key:m,contentTypeName:m,label:C,isActive:l===m,isFormDisabled:n,index:E,onClickToggleCollapse:c,pathToData:`${o}..${m}`,properties:y}))};St.defaultProps={actions:[],subjects:[]},St.propTypes={actions:i().array.isRequired,isFormDisabled:i().bool.isRequired,pathToData:i().string.isRequired,subjects:i().arrayOf(i().shape({uid:i().string.isRequired,label:i().string.isRequired,properties:i().array.isRequired}))};var bn=(0,e.memo)(St),Ft=t(27677),g=a=>a.filter(({subjects:n})=>n&&n.length);const d=a=>a.map(({actionId:n})=>n),p=(a,n)=>a.reduce((o,s)=>(Object.keys(n).forEach(l=>{const r=(0,v.get)(n,[l,s],{}),c={[l]:ht(r)};o[s]?o[s]={...o[s],...c}:o[s]=c}),o),{});var u=(a,n)=>{const o=d(a),s=p(o,n);return Object.keys(s).reduce((r,c)=>(r[c]=et(s[c]),r),{})},P=function(){return window&&window.strapi&&window.strapi.isEE?t(36950).Z:t(61526).Z}(),z=(0,b.default)(Ft.K).withConfig({displayName:"GlobalActions__CenteredStack",componentId:"sc-1vxwsjr-0"})(["align-items:center;justify-content:center;width:",";flex-shrink:0;"],X),U=function(n){var o=n.actions,s=n.isFormDisabled,l=n.kind,r=(0,H.useIntl)(),c=r.formatMessage,m=(0,se.$_)(),C=m.modifiedData,y=m.onChangeCollectionTypeGlobalActionCheckbox,E=(0,e.useMemo)(function(){return g(o)},[o]),R=(0,e.useMemo)(function(){return u(E,C[l])},[C,E,l]);return e.createElement(x.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:ve}},e.createElement(Ft.K,{horizontal:!0,spacing:0},E.map(function(L){var B=L.label,I=L.actionId;return e.createElement(z,{key:I,spacing:3},e.createElement(pe.Z,{variant:"sigma",textColor:"neutral500"},c({id:"Settings.roles.form.permissions.".concat(B.toLowerCase()),defaultMessage:B})),e.createElement(q.C,{disabled:s||P,onValueChange:function(D){y(l,I,D)},name:I,"aria-label":c({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:c({id:"Settings.roles.form.permissions.".concat(B.toLowerCase()),defaultMessage:B})}),value:ee()(R,[I,"hasAllActionsSelected"],!1),indeterminate:ee()(R,[I,"hasSomeActionsSelected"],!1)}))})))};U.defaultProps={actions:[]},U.propTypes={actions:i().arrayOf(i().shape({label:i().string.isRequired,actionId:i().string.isRequired,subjects:i().array.isRequired})),isFormDisabled:i().bool.isRequired,kind:i().string.isRequired};var Ce=(0,e.memo)(U);const Y=(0,b.default)(x.x)`
121
- overflow-x: auto;
122
- `,ye=({isFormDisabled:a,kind:n,layout:{actions:o,subjects:s}})=>{const l=$()([...s],"label");return e.createElement(Y,{background:"neutral0"},e.createElement(Ce,{actions:o,kind:n,isFormDisabled:a}),e.createElement(bn,{actions:o,isFormDisabled:a,pathToData:n,subjects:l}))};ye.propTypes={isFormDisabled:i().bool.isRequired,kind:i().string.isRequired,layout:i().shape({actions:i().array,subjects:i().arrayOf(i().shape({uid:i().string.isRequired,label:i().string.isRequired,properties:i().array.isRequired}))}).isRequired};var V=(0,e.memo)(ye),Ue=t(66694);const xe=({children:a,value:n})=>e.createElement(Ue.$l.Provider,{value:n},a);xe.propTypes={children:i().node.isRequired,value:i().exact({availableConditions:i().array.isRequired,modifiedData:i().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:i().func.isRequired,onChangeConditions:i().func.isRequired,onChangeSimpleCheckbox:i().func.isRequired,onChangeParentCheckbox:i().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:i().func.isRequired}).isRequired};var qe=xe,ot=t(83828),lt=t(61762),Ct=t(89966),bt=t(15335),Rn=t(5803),Jt=t(8284),sa=(a,n,o)=>a.map(s=>{const l=[...o,s.action,"properties","enabled"],r=(0,v.get)(n,l,!1),c=(0,v.get)(n,[...o,s.action,"conditions"],{}),m=ft(c).some(C=>C);return{...s,isDisplayed:r,checkboxName:l.join(".."),hasSomeActionsSelected:r,value:r,hasConditions:m,label:s.displayName,actionId:s.action,pathToConditionsObject:[...o,s.action]}}),ia=a=>{const n=Object.entries(a).reduce((s,l)=>{const[r,{conditions:c}]=l;return s[r]=c,s},{});return ft(n).some(s=>s)},Tn=function(){return window&&window.strapi&&window.strapi.isEE?t(96556).Z:t(16437).Z}(),la=b.default.div.withConfig({displayName:"SubCategory__Border",componentId:"sc-akgczm-0"})(["flex:1;align-self:center;border-top:1px solid ",";"],function(a){var n=a.theme;return n.colors.neutral150}),ra=b.default.div.withConfig({displayName:"SubCategory__CheckboxWrapper",componentId:"sc-akgczm-1"})(["position:relative;word-break:keep-all;",""],function(a){var n=a.hasConditions,o=a.disabled,s=a.theme;return n&&`
123
- &:before {
124
- content: '';
125
- position: absolute;
126
- top: `.concat(-4/16,`rem;
127
- left: `).concat(-8/16,`rem;
128
- width: `).concat(6/16,`rem;
129
- height: `).concat(6/16,`rem;
130
- border-radius: `).concat(20/16,`rem;
131
- background: `).concat(o?s.colors.neutral100:s.colors.primary600,`;
132
- }
133
- `)}),Wn=function(n){var o=n.categoryName,s=n.isFormDisabled,l=n.subCategoryName,r=n.actions,c=n.pathToData,m=(0,e.useState)(!1),C=(0,Me.Z)(m,2),y=C[0],E=C[1],R=(0,se.$_)(),L=R.modifiedData,B=R.onChangeParentCheckbox,I=R.onChangeSimpleCheckbox,N=(0,H.useIntl)(),D=N.formatMessage,O=ee()(L,c,{}),G=(0,e.useMemo)(function(){return Object.keys(O).reduce(function(ue,Ie){return ue[Ie]=ht(O[Ie]),ue},{})},[O]),de=et(G),Xe=de.hasAllActionsSelected,Re=de.hasSomeActionsSelected,Ee=function(){E(function(Ie){return!Ie})},Le=function(){E(!1)},Te=sa(r,L,c),yt=ia(ee()(L,(0,pt.Z)(c),{}));return e.createElement(e.Fragment,null,e.createElement(x.x,null,e.createElement(F.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(x.x,{paddingRight:4},e.createElement(pe.Z,{variant:"sigma",textColor:"neutral600"},l)),e.createElement(la,null),e.createElement(x.x,{paddingLeft:4},e.createElement(Jt.X,{name:c.join(".."),disabled:s||Tn,onValueChange:function(Ie){B({target:{name:c.join(".."),value:Ie}})},indeterminate:Re,value:Xe},D({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(F.k,{paddingTop:6,paddingBottom:6},e.createElement(bt.r,{gap:2,style:{flex:1}},Te.map(function(ue){var Ie=ue.checkboxName,J=ue.value,fe=ue.action,Se=ue.displayName,Pe=ue.hasConditions;return e.createElement(Rn.P,{col:3,key:fe},e.createElement(ra,{disabled:s||Tn,hasConditions:Pe},e.createElement(Jt.X,{name:Ie,disabled:s||Tn,onValueChange:function(gt){I({target:{name:Ie,value:gt}})},value:J},Se)))})),e.createElement(Ye,{hasConditions:yt,onClick:Ee}))),y&&e.createElement(ae,{headerBreadCrumbs:[o,l],actions:Te,isFormDisabled:s,onClosed:Le,onToggle:Ee}))};Wn.propTypes={actions:i().array.isRequired,categoryName:i().string.isRequired,isFormDisabled:i().bool.isRequired,subCategoryName:i().string.isRequired,pathToData:i().array.isRequired};var ca=Wn;const An=({childrenForm:a,kind:n,name:o,isOpen:s,isFormDisabled:l,isWhite:r,onOpenCategory:c,pathToData:m})=>{const{formatMessage:C}=(0,H.useIntl)(),y=()=>{c(o)},E=(0,e.useMemo)(()=>o.split("::").pop(),[o]);return e.createElement(ot.U,{expanded:s,onToggle:y,id:`accordion-${o}`,variant:r?"primary":"secondary"},e.createElement(lt.B,{title:K()(E),description:`${C({id:"Settings.permissions.category"},{category:E})} ${n==="plugins"?"plugin":n}`}),e.createElement(Ct.v,null,e.createElement(x.x,{padding:6},a.map(({actions:R,subCategoryName:L,subCategoryId:B})=>e.createElement(ca,{key:L,actions:R,categoryName:E,isFormDisabled:l,subCategoryName:L,pathToData:[...m,B]})))))};An.defaultProps={},An.propTypes={childrenForm:i().array.isRequired,isOpen:i().bool.isRequired,isFormDisabled:i().bool.isRequired,isWhite:i().bool.isRequired,kind:i().string.isRequired,name:i().string.isRequired,onOpenCategory:i().func.isRequired,pathToData:i().array.isRequired};var da=An;const wn=({isFormDisabled:a,kind:n,layout:o})=>{const[s,l]=(0,e.useState)(null),r=c=>{l(c===s?null:c)};return e.createElement(x.x,{padding:6,background:"neutral0"},o.map(({category:c,categoryId:m,childrenForm:C},y)=>e.createElement(da,{key:c,childrenForm:C,kind:n,isFormDisabled:a,isOpen:s===c,isWhite:y%2===1,name:c,onOpenCategory:r,pathToData:[n,m]})))};wn.propTypes={isFormDisabled:i().bool.isRequired,kind:i().string.isRequired,layout:i().arrayOf(i().shape({category:i().string.isRequired,categoryId:i().string.isRequired,childrenForm:i().arrayOf(i().shape({actions:i().array.isRequired})).isRequired}).isRequired).isRequired};var Vn=wn,Hn=(a,n,o)=>a.find(s=>s.action===n&&s.subject===o);const Kn=(a,n=[])=>a.reduce((o,s)=>(o[s.id]=n.indexOf(s.id)!==-1,o),{}),Xn=({children:a},n,o="")=>a.reduce((s,l)=>{if(l.children)return{...s,[l.value]:Xn(l,n,`${o}${l.value}.`)};const r=n.indexOf(`${o}${l.value}`)!==-1;return s[l.value]=r,s},{}),ua=(a,n,o)=>a.reduce((s,l)=>{const r=n.properties.find(({value:c})=>c===l);if(r){const c=(0,v.get)(o,["properties",r.value],[]),m=Xn(r,c);s.properties[l]=m}return s},{properties:{}}),ma=(a,n)=>n.reduce((o,s)=>{const l=a.find(({uid:r})=>r===s)||null;return l&&(o[s]=l),o},{});var Qn=({subjects:a},n,o,s=[])=>n.reduce((l,r)=>{const c=r.subjects,m=ma(a,c);if((0,v.isEmpty)(m))return l;const C=Object.keys(m).reduce((y,E)=>{const{actionId:R,applyToProperties:L}=r,N=m[E].properties.map(({value:de})=>de).every(de=>(L||[]).indexOf(de)===-1),D=Hn(s,R,E),O=Kn(o,(0,v.get)(D,"conditions",[]));if((0,v.isEmpty)(L)||N)return(0,v.set)(y,[E,R],{properties:{enabled:D!==void 0},conditions:O}),y;const G=ua(L,m[E],D);return(0,v.set)(y,[E,R],{...G,conditions:O}),y},{});return(0,v.merge)(l,C)},{});const pa=(a,n,o)=>a.reduce((s,l)=>{const r=Hn(o,l.action,null);return s[l.action]={properties:{enabled:r!==void 0},conditions:Kn(n,(0,v.get)(r,"conditions",[]))},s},{}),ga=(a,n,o)=>a.reduce((s,l)=>(s[l.subCategoryId]=pa(l.actions,n,o),s),{});var Yn=(a,n,o=[])=>a.reduce((s,{categoryId:l,childrenForm:r})=>{const c=ga(r,n,o);return s[l]=c,s},{});const Jn=a=>a.split(" ").join("-");var qn=(a,n)=>(0,v.chain)(a).groupBy(n).map((o,s)=>({category:s,categoryId:Jn(s),childrenForm:(0,v.chain)(o).groupBy("subCategory").map((l,r)=>({subCategoryName:r,subCategoryId:Jn(r),actions:l})).value()})).value(),fa=(a,n)=>{const{conditions:o,sections:{collectionTypes:s,singleTypes:l,plugins:r,settings:c}}=a,m={collectionTypes:s,singleTypes:l,plugins:qn(r,"plugin"),settings:qn(c,"category")},C={collectionTypes:Qn(s,s.actions||[],o,n),singleTypes:Qn(l,l.actions||[],o,n),plugins:Yn(m.plugins,o,n),settings:Yn(m.settings,o,n)};return{initialData:C,modifiedData:C,layouts:m}};const _n=a=>Object.keys(a).reduce((n,o)=>{const s=a[o];if((0,v.isObject)(s)&&!(0,v.has)(s,"conditions"))return{...n,[o]:_n(s)};if((0,v.isObject)(s)&&(0,v.has)(s,"conditions")&&!ft((0,v.omit)(s,"conditions")).some(r=>r)){const r=Object.keys(s.conditions).reduce((c,m)=>(c[m]=!1,c),{});return{...n,[o]:{...s,conditions:r}}}return n[o]=s,n},{});var Mn=_n;const ea=(a,n)=>Object.keys(a).reduce((o,s)=>{const l=a[s];return s==="conditions"?(o[s]=l,o):(0,v.isObject)(l)?{...o,[s]:ea(l,n)}:(o[s]=n,o)},{});var qt=ea;const ha={initialData:{},modifiedData:{},layouts:{}};var va=(a,n)=>(0,te.default)(a,o=>{switch(n.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:l,value:r}=n,c=["modifiedData",s];Object.keys((0,v.get)(a,c)).forEach(m=>{const C=(0,v.get)(a,[...c,m,l],void 0);if(C){let y=qt(C,r);if(!r&&y.conditions){const E=qt(y.conditions,!1);y={...y,conditions:E}}(0,v.set)(o,[...c,m,l],y)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:l,rowName:r,value:c}=n;let m=(0,v.cloneDeep)(a.modifiedData);const C=s.split(".."),y=(0,v.get)(m,C,{});Object.keys(y).forEach(E=>{if((0,v.has)(y[E],`properties.${l}`)){const R=(0,v.get)(y,[E,"properties",l,r]),L=[...C,E,"properties",l,r];if(!(0,v.isObject)(R))(0,v.set)(m,L,c);else{const B=qt(R,c);(0,v.set)(m,L,B)}}}),c||(m=Mn(m)),(0,v.set)(o,"modifiedData",m);break}case"ON_CHANGE_CONDITIONS":{Object.entries(n.conditions).forEach(s=>{const[l,r]=s;(0,v.set)(o,["modifiedData",...l.split(".."),"conditions"],r)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=(0,v.cloneDeep)(a.modifiedData);(0,v.set)(s,[...n.keys.split("..")],n.value),n.value||(s=Mn(s)),(0,v.set)(o,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:l}=n,r=[...s.split("..")];let c=(0,v.cloneDeep)(a.modifiedData);const m=(0,v.get)(c,r,{}),C=qt(m,l);(0,v.set)(c,r,C),l||(c=Mn(c)),(0,v.set)(o,["modifiedData"],c);break}case"RESET_FORM":{o.modifiedData=a.initialData;break}case"SET_FORM_AFTER_SUBMIT":{o.initialData=a.modifiedData;break}default:return o}});const Dn=a=>Object.entries(a).filter(([,n])=>n).map(([n])=>n),Ca=a=>{const[n,{conditions:o}]=a;return{action:n,subject:null,conditions:Dn(o),properties:{}}},ya=a=>Object.values(a).reduce((n,o)=>{const s=Object.entries(o).reduce((l,r)=>{const[,{properties:{enabled:c}}]=r;if(!c)return l;const m=Ca(r);return l.push(m),l},[]);return[...n,...s]},[]);var ta=a=>Object.values(a).reduce((n,o)=>{const s=ya(o);return[...n,...s]},[]);const na=(a,n="")=>Object.entries(a).reduce((o,s)=>{const[l,r]=s;return(0,v.isObject)(r)?[...o,...na(r,`${n}${l}.`)]:(r&&!(0,v.isObject)(r)&&o.push(`${n}${l}`),o)},[]),Ea=(a,n,{conditions:o,properties:s})=>Object.entries(s).reduce((l,r)=>{const[c,m]=r;return l.properties[c]=na(m),l},{action:a,subject:n,conditions:Dn(o),properties:{}}),Sa=(a,n,{conditions:o})=>({action:a,subject:n,properties:{},conditions:Dn(o)}),ba=(a,n)=>Object.entries(n).reduce((s,l)=>{const[r,c]=l;if(!ft(c).some(y=>y))return s;if(!(0,v.has)(c,"properties.enabled")){const y=Ea(r,a,c);return[...s,y]}if(!c.properties.enabled)return s;const C=Sa(r,a,c);return s.push(C),s},[]);var aa=a=>Object.entries(a).reduce((o,s)=>{const[l,r]=s,c=ba(l,r);return[...o,...c]},[]),Ra=a=>{const n=ta(a.plugins),o=ta(a.settings),s=aa(a.collectionTypes),l=aa(a.singleTypes);return[...n,...o,...s,...l]},Ta=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];const xn=(0,e.forwardRef)(({layout:a,isFormDisabled:n,permissions:o},s)=>{const[{initialData:l,layouts:r,modifiedData:c},m]=(0,e.useReducer)(va,ha,()=>fa(a,o)),{formatMessage:C}=(0,H.useIntl)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const I=(0,me.difference)(l.collectionTypes,c.collectionTypes),N=(0,me.difference)(l.singleTypes,c.singleTypes),D={...I,...N};let O;return nt()(D)?O=!1:O=Object.values(D).some(G=>Object.values(G).some(de=>je()(de,"conditions"))),{permissionsToSend:Ra(c),didUpdateConditions:O}},resetForm(){m({type:"RESET_FORM"})},setFormAfterSubmit(){m({type:"SET_FORM_AFTER_SUBMIT"})}}));const y=(I,N,D,O)=>{m({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:I,propertyName:N,rowName:D,value:O})},E=(I,N,D)=>{m({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:I,actionId:N,value:D})},R=I=>{m({type:"ON_CHANGE_CONDITIONS",conditions:I})},L=(0,e.useCallback)(({target:{name:I,value:N}})=>{m({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:I,value:N})},[]),B=(0,e.useCallback)(({target:{name:I,value:N}})=>{m({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:I,value:N})},[]);return e.createElement(qe,{value:{availableConditions:a.conditions,modifiedData:c,onChangeConditions:R,onChangeSimpleCheckbox:L,onChangeParentCheckbox:B,onChangeCollectionTypeLeftActionRowCheckbox:y,onChangeCollectionTypeGlobalActionCheckbox:E}},e.createElement(Q.v,{id:"tabs",label:C({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(Qe.m,null,Ta.map(I=>e.createElement(Qe.O,{key:I.id},C({id:I.labelId,defaultMessage:I.defaultMessage})))),e.createElement(oe.n,{style:{position:"relative"}},e.createElement(oe.x,null,e.createElement(V,{layout:r.collectionTypes,kind:"collectionTypes",isFormDisabled:n})),e.createElement(oe.x,null,e.createElement(V,{layout:r.singleTypes,kind:"singleTypes",isFormDisabled:n})),e.createElement(oe.x,null,e.createElement(Vn,{layout:r.plugins,kind:"plugins",isFormDisabled:n})),e.createElement(oe.x,null,e.createElement(Vn,{layout:r.settings,kind:"settings",isFormDisabled:n})))))});xn.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},xn.propTypes={layout:i().object,isFormDisabled:i().bool.isRequired,permissions:i().array};var Aa=(0,e.memo)(xn)},16437:function(_,S){S.Z=!0},78522:function(_,S){S.Z=()=>"todo empty role"},80779:function(_,S,t){var e=t(32735),A=t(60216),i=t.n(A),me=t(72850),Q=t(87933),Qe=t(29005),oe=t(66735),Oe=t(49372),je=t(50563),Fe=t(88425),nt=t.n(Fe),H=t(5636);const x=({id:b,name:Ae,description:$,usersCount:Me,icons:k,rowIndex:We})=>{const{formatMessage:q}=(0,H.useIntl)(),F=q({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:Me});return e.createElement(Qe.Tr,{"aria-rowindex":We,key:b,...(0,Fe.onRowClick)({fn:k[1].onClick})},e.createElement(oe.Td,{maxWidth:(0,Fe.pxToRem)(130)},e.createElement(Oe.Z,{ellipsis:!0,textColor:"neutral800"},Ae)),e.createElement(oe.Td,{maxWidth:(0,Fe.pxToRem)(250)},e.createElement(Oe.Z,{ellipsis:!0,textColor:"neutral800"},$)),e.createElement(oe.Td,null,e.createElement(Oe.Z,{textColor:"neutral800"},F)),e.createElement(oe.Td,null,e.createElement(Q.k,{justifyContent:"flex-end",...Fe.stopPropagation},k.map((Be,ee)=>Be?e.createElement(me.x,{key:Be.label,paddingLeft:ee===0?0:1},e.createElement(je.h,{onClick:Be.onClick,label:Be.label,noBorder:!0,icon:Be.icon})):null))))};x.propTypes={id:i().number.isRequired,name:i().string.isRequired,description:i().string.isRequired,usersCount:i().number.isRequired,icons:i().array.isRequired,rowIndex:i().number.isRequired},S.Z=x},45677:function(_,S,t){t.d(S,{Z:function(){return Ke}});var e=t(32735),A=t(88425),i=t(83983),me=t(58469),Q=t(19406),Qe=t(4038),oe=t(68625),Oe=t(47765),je=t(41415),Fe=t(28356),nt=t(17e3),H=t(94745),x=t(73269),b=t(76330),Ae=t(29005),$=t(66735),Me=t(3594),k=t(49372),We=t(27649),q=t(3685),F=t(5636),Be=t(5141),ee=t(80779),f=t(78522),ze=t(60216),se=t.n(ze),we=t(83292),Ve=t(71933),ct=t(67563),_e=t(50563),Ye=t(95489),st=t(72850),it=t(87933),at=t(27677),ie=t(47361),Je=t(35331),pe=t.p+"6d21938306785f176538.png",te=t.p+"617f9c948fa79e6d73bd.png";const W=we.default.div`
134
- position: absolute;
135
- z-index: 3;
136
- inset: 0;
137
- background: ${({theme:T})=>(0,A.setHexOpacity)(T.colors.neutral800,.2)};
138
- padding: 0 ${({theme:T})=>T.spaces[8]};
139
- `,ne=(0,we.default)(it.k)`
140
- position: relative;
141
- max-width: ${830/16}rem;
142
- height: ${415/16}rem;
143
- margin: 0 auto;
144
- overflow: hidden;
145
- margin-top: 10%;
146
- padding-left: ${64/16}rem;
147
-
148
- img:first-of-type {
149
- position: absolute;
150
- right: 0;
151
- top: 0;
152
- max-width: ${360/16}rem;
153
- }
154
-
155
- img:not(:first-of-type) {
156
- width: ${130/16}rem;
157
- margin-left: 12%;
158
- margin-right: ${20/16}rem;
159
- z-index: 0;
160
- }
161
- `,w=(0,we.default)(at.K)`
162
- align-items: flex-start;
163
- max-width: ${400/16}rem;
164
- z-index: 0;
165
- `,K=(0,we.default)(st.x)`
166
- position: absolute;
167
- right: ${({theme:T})=>T.spaces[4]};
168
- top: ${({theme:T})=>T.spaces[4]};
169
- `,ge=({onClose:T,isOpen:Z})=>{(0,A.useLockScroll)(Z);const{formatMessage:j}=(0,F.useIntl)();return Z?e.createElement(Ve.h,null,e.createElement(W,{onClick:T},e.createElement(ct.i,{onEscape:T},e.createElement(ne,{onClick:re=>re.stopPropagation(),"aria-labelledby":"upgrade-plan",background:"neutral0",hasRadius:!0},e.createElement("img",{src:pe,alt:"air-balloon"}),e.createElement(K,null,e.createElement(_e.h,{onClick:T,"aria-label":"Close",icon:e.createElement(Je.default,null)})),e.createElement(w,{spacing:6},e.createElement(k.Z,{fontWeight:"bold",textColor:"primary600"},j({id:"app.components.UpgradePlanModal.text-ce",defaultMessage:"COMMUNITY EDITION"})),e.createElement(at.K,{spacing:2},e.createElement(k.Z,{variant:"alpha",as:"h2",id:"upgrade-plan"},j({id:"app.components.UpgradePlanModal.limit-reached",defaultMessage:"You have reached the limit"})),e.createElement(k.Z,null,j({id:"app.components.UpgradePlanModal.text-power",defaultMessage:"Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition"}))),e.createElement(Ye.Q,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(ie.Z,null)},j({id:"app.components.UpgradePlanModal.button",defaultMessage:"Learn more"}))),e.createElement("img",{src:te,alt:"upgrade-arrow"}))))):null};ge.propTypes={onClose:se().func.isRequired,isOpen:se().bool.isRequired};var he=ge,De=t(67927);const Ne=()=>{const{roles:T,isLoading:Z}=(0,De.bF)(),j=(0,A.useQuery)(),re=decodeURIComponent(j.get("_q")||""),ae=(0,me.ZP)(T,re,{keys:["name","description"]});return{isLoading:Z,sortedRoles:ae}},le=()=>{const{formatMessage:T}=(0,F.useIntl)(),[Z,j]=(0,e.useState)(!1),{trackUsage:re}=(0,A.useTracking)(),{push:ae}=(0,Be.useHistory)(),X=(0,e.useCallback)(M=>{ae(`/settings/roles/${M}`)},[ae]),ve=(0,e.useCallback)(()=>{j(M=>!M)},[]),ke=(0,e.useCallback)(()=>{re("didShowRBACUpgradeModal"),j(!0)},[re]),dt=(0,e.useCallback)(M=>[{onClick:ve,label:T({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(Oe.Z,null)},{onClick:()=>X(M.id),label:T({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(oe.Z,null)},{onClick:ve,label:T({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(Qe.default,null)}],[T,ve,X]);return{isModalOpen:Z,handleToggleModalForCreatingRole:ke,handleToggle:ve,getIcons:dt}};var He=()=>{const{formatMessage:T}=(0,F.useIntl)();(0,A.useFocusWhenNavigate)();const{sortedRoles:Z,isLoading:j}=Ne(),{isModalOpen:re,handleToggle:ae,handleToggleModalForCreatingRole:X,getIcons:ve}=le(),ke=Z.length+1,dt=5;return e.createElement(We.o,null,e.createElement(A.SettingsPageTitle,{name:"Roles"}),e.createElement(Fe.T,{primaryAction:e.createElement(je.z,{onClick:X,startIcon:e.createElement(Q.default,null),size:"S"},T({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})),title:T({id:"global.roles",defaultMessage:"roles"}),subtitle:T({id:"Settings.roles.list.description",defaultMessage:"List of roles"})}),e.createElement(nt.D,null,e.createElement(H.i,{colCount:dt,rowCount:ke,footer:e.createElement(x.c,{onClick:X,icon:e.createElement(Q.default,null)},T({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"}))},e.createElement(b.h,null,e.createElement(Ae.Tr,null,e.createElement($.Th,null,e.createElement(k.Z,{variant:"sigma",textColor:"neutral600"},T({id:"global.name",defaultMessage:"Name"}))),e.createElement($.Th,null,e.createElement(k.Z,{variant:"sigma",textColor:"neutral600"},T({id:"global.description",defaultMessage:"Description"}))),e.createElement($.Th,null,e.createElement(k.Z,{variant:"sigma",textColor:"neutral600"},T({id:"global.users",defaultMessage:"Users"}))),e.createElement($.Th,null,e.createElement(q.T,null,T({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(Me.p,null,Z?.map((M,be)=>e.createElement(ee.Z,{key:M.id,id:M.id,name:M.name,description:M.description,usersCount:M.usersCount,icons:ve(M),rowIndex:be+2})))),!ke&&!j&&e.createElement(f.Z,null)),e.createElement(he,{isOpen:re,onClose:ae}))},Ke=()=>e.createElement(A.CheckPagePermissions,{permissions:i.Z.settings.roles.main},e.createElement(He,null))},75936:function(_,S){const t=[];S.Z=t},20178:function(_,S,t){t.d(S,{Z:function(){return at}});var e=t(32735),A=t(64213),i=t(88425),me=t(72850),Q=t(41415),Qe=t(28356),oe=t(17e3),Oe=t(15335),je=t(5803),Fe=t(27649),nt=t(87933),H=t(27677),x=t(49372),b=t(10369),Ae=t(10508),$=t(29439),Me=t(83281),k=t(33795),We=t.n(k),q=t(86834),F=t.n(q),Be=t(5636),ee=t(5141),f=t(83292),ze=t(37511),se=t(67927),we=t(83983),Ve=t(5173),_e=Ve.Ry().shape({name:Ve.Z_().required(i.translatedErrors.required),description:Ve.Z_().required(i.translatedErrors.required)}),Ye=t(98399);const st=f.default.div`
170
- border: 1px solid ${({theme:ie})=>ie.colors.primary200};
171
- background: ${({theme:ie})=>ie.colors.primary100};
172
- padding: ${({theme:ie})=>`${ie.spaces[2]} ${ie.spaces[4]}`};
173
- color: ${({theme:ie})=>ie.colors.primary600};
174
- border-radius: ${({theme:ie})=>ie.borderRadius};
175
- font-size: ${12/16}rem;
176
- font-weight: bold;
177
- `,it=()=>{const ie=(0,i.useNotification)(),{lockApp:Je,unlockApp:pe}=(0,i.useOverlayBlocker)(),{formatMessage:te}=(0,Be.useIntl)(),[W,ne]=(0,e.useState)(!1),{replace:w}=(0,ee.useHistory)(),K=(0,e.useRef)(),{trackUsage:ge}=(0,i.useTracking)(),he=(0,ee.useRouteMatch)("/settings/roles/duplicate/:id"),De=We()(he,"params.id",null),{isLoading:Ne,data:le}=(0,se.U_)(),{permissions:$e,isLoading:He}=(0,se.Dq)(De),v=T=>{Je(),ne(!0),ge(De?"willDuplicateRole":"willCreateNewRole"),Promise.resolve((0,i.request)("/admin/roles",{method:"POST",body:T})).then(async Z=>{const{permissionsToSend:j}=K.current.getPermissions();return ge(De?"didDuplicateRole":"didCreateNewRole"),Z.data.id&&!F()(j)&&await(0,i.request)(`/admin/roles/${Z.data.id}/permissions`,{method:"PUT",body:{permissions:j}}),Z}).then(Z=>{ne(!1),ie({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),w(`/settings/roles/${Z.data.id}`)}).catch(Z=>{Ye.error(Z),ne(!1),ie({type:"warning",message:{id:"notification.error"}})}).finally(()=>{pe()})},Ke=`${te({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,A.format)(new Date,"PPP")}`;return e.createElement(Fe.o,null,e.createElement(i.SettingsPageTitle,{name:"Roles"}),e.createElement(Me.Formik,{initialValues:{name:"",description:Ke},onSubmit:v,validationSchema:_e,validateOnChange:!1},({handleSubmit:T,values:Z,errors:j,handleReset:re,handleChange:ae})=>e.createElement(i.Form,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(Qe.T,{primaryAction:e.createElement(H.K,{horizontal:!0,spacing:2},e.createElement(Q.z,{variant:"secondary",onClick:()=>{re(),K.current.resetForm()},size:"L"},te({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(Q.z,{onClick:T,loading:W,size:"L"},te({id:"global.save",defaultMessage:"Save"}))),title:te({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:te({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(i.Link,{startIcon:e.createElement($.Z,null),to:"/settings/roles"},te({id:"global.back",defaultMessage:"Back"}))}),e.createElement(oe.D,null,e.createElement(H.K,{spacing:6},e.createElement(me.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(H.K,{spacing:4},e.createElement(nt.k,{justifyContent:"space-between"},e.createElement(me.x,null,e.createElement(me.x,null,e.createElement(x.Z,{fontWeight:"bold"},te({id:"global.details",defaultMessage:"Details"}))),e.createElement(me.x,null,e.createElement(x.Z,{variant:"pi",textColor:"neutral600"},te({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(st,null,te({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(Oe.r,{gap:4},e.createElement(je.P,{col:6},e.createElement(b.o,{name:"name",error:j.name&&te({id:j.name}),label:te({id:"global.name",defaultMessage:"Name"}),onChange:ae,value:Z.name})),e.createElement(je.P,{col:6},e.createElement(Ae.g,{label:te({id:"global.description",defaultMessage:"Description"}),name:"description",error:j.description&&te({id:j.description}),onChange:ae},Z.description))))),!Ne&&!He?e.createElement(me.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(ze.Z,{isFormDisabled:!1,ref:K,permissions:$e,layout:le})):e.createElement(me.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(i.LoadingIndicatorPage,null))))))))};function at(){return e.createElement(i.CheckPagePermissions,{permissions:we.Z.settings.roles.create},e.createElement(it,null))}},56899:function(_,S){S.Z=!1},68464:function(_,S){S.Z=!1},32741:function(_,S){S.Z=!1},19665:function(_,S){S.Z=!1},36950:function(_,S){S.Z=!1},96556:function(_,S){S.Z=!1},51899:function(_,S,t){t.d(S,{Z:function(){return te}});var e=t(32735),A=t(88425),i=t(83983),me=t(19406),Q=t(4038),Qe=t(47765),oe=t(68625),Oe=t(41415),je=t(28356),Fe=t(99223),nt=t(17e3),H=t(3685),x=t(27649),b=t(94745),Ae=t(73269),$=t(76330),Me=t(29005),k=t(66735),We=t(3594),q=t(49372),F=t(92891),Be=t(58469),ee=t(5636),f=t(5141),ze=t(17247),se=t(67927),we=t(78522),Ve=t(80779),ct=t(97889);const _e={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1};var st=(W,ne)=>(0,ct.default)(W,w=>{switch(ne.type){case"ON_REMOVE_ROLES":{w.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{w.shouldRefetchData=!0,w.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{w.shouldRefetchData=!1,w.roleToDelete=null,w.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{w.roleToDelete=ne.id;break}default:return w}});const it=()=>{(0,A.useFocusWhenNavigate)();const{isLoading:W,allowedActions:{canCreate:ne,canDelete:w,canRead:K,canUpdate:ge}}=(0,A.useRBAC)(i.Z.settings.roles),{getData:he,roles:De,isLoading:Ne}=(0,se.bF)(!1),[{query:le}]=(0,A.useQueryParams)(),$e=le?._q||"",He=(0,Be.ZP)(De,$e,{keys:["name","description"]});return(0,e.useEffect)(()=>{!W&&K&&he()},[W,K,he]),{isLoadingForPermissions:W,canCreate:ne,canDelete:w,canRead:K,canUpdate:ge,isLoading:Ne,getData:he,sortedRoles:He,roles:De}},at=({getData:W,canCreate:ne,canDelete:w,canUpdate:K})=>{const{formatMessage:ge}=(0,ee.useIntl)(),he=(0,A.useNotification)(),[De,Ne]=(0,e.useState)(!1),{push:le}=(0,f.useHistory)(),[{selectedRoles:$e,showModalConfirmButtonLoading:He,roleToDelete:v},Ke]=(0,e.useReducer)(st,_e),T=async()=>{try{Ke({type:"ON_REMOVE_ROLES"}),await ze.be.post("/admin/roles/batch-delete",{ids:[v]}),await W(),Ke({type:"RESET_DATA_TO_DELETE"})}catch(M){const be=(0,F.get)(M,["response","payload","data","ids"],null);if(be&&Array.isArray(be)){const ut=be.join(`
178
- `);he({type:"warning",message:ut})}else he({type:"warning",message:{id:"notification.error"}})}ae()},Z=(0,e.useCallback)(M=>{le(`/settings/roles/duplicate/${M}`)},[le]),j=()=>le("/settings/roles/new"),re=(0,e.useCallback)(M=>{Ke({type:"SET_ROLE_TO_DELETE",id:M}),ae()},[]),ae=()=>Ne(M=>!M),X=(0,e.useCallback)(M=>{le(`/settings/roles/${M}`)},[le]),ve=(0,e.useCallback)((M,be)=>{M.preventDefault(),M.stopPropagation(),be.usersCount?he({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):re(be.id)},[he,re]),ke=(0,e.useCallback)((M,be)=>{M.preventDefault(),M.stopPropagation(),Z(be.id)},[Z]),dt=(0,e.useCallback)(M=>[...ne?[{onClick:be=>ke(be,M),label:ge({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(Qe.Z,null)}]:[],...K?[{onClick:()=>X(M.id),label:ge({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(oe.Z,null)}]:[],...w?[{onClick:be=>ve(be,M),label:ge({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(Q.default,null)}]:[]],[ge,ve,ke,X,ne,K,w]);return{handleNewRoleClick:j,getIcons:dt,selectedRoles:$e,isWarningDeleteAllOpened:De,showModalConfirmButtonLoading:He,handleToggleModal:ae,handleDeleteData:T}};var Je=()=>{const{formatMessage:W}=(0,ee.useIntl)(),{isLoadingForPermissions:ne,canCreate:w,canRead:K,canDelete:ge,canUpdate:he,isLoading:De,getData:Ne,sortedRoles:le}=it(),{handleNewRoleClick:$e,getIcons:He,isWarningDeleteAllOpened:v,showModalConfirmButtonLoading:Ke,handleToggleModal:T,handleDeleteData:Z}=at({getData:Ne,canCreate:w,canDelete:ge,canUpdate:he}),j=le.length+1,re=6;if(ne)return e.createElement(x.o,null,e.createElement(A.LoadingIndicatorPage,null));const ae=W({id:"global.roles",defaultMessage:"roles"});return e.createElement(x.o,null,e.createElement(A.SettingsPageTitle,{name:"Roles"}),e.createElement(je.T,{primaryAction:w?e.createElement(Oe.z,{onClick:$e,startIcon:e.createElement(me.default,null),size:"S"},W({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:ae,subtitle:W({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),K&&e.createElement(Fe.Z,{startActions:e.createElement(A.SearchURLQuery,{label:W({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:ae})})}),K&&e.createElement(nt.D,null,e.createElement(b.i,{colCount:re,rowCount:j,footer:w?e.createElement(Ae.c,{onClick:$e,icon:e.createElement(me.default,null)},W({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement($.h,null,e.createElement(Me.Tr,{"aria-rowindex":1},e.createElement(k.Th,null,e.createElement(q.Z,{variant:"sigma",textColor:"neutral600"},W({id:"global.name",defaultMessage:"Name"}))),e.createElement(k.Th,null,e.createElement(q.Z,{variant:"sigma",textColor:"neutral600"},W({id:"global.description",defaultMessage:"Description"}))),e.createElement(k.Th,null,e.createElement(q.Z,{variant:"sigma",textColor:"neutral600"},W({id:"global.users",defaultMessage:"Users"}))),e.createElement(k.Th,null,e.createElement(H.T,null,W({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(We.p,null,le?.map((X,ve)=>e.createElement(Ve.Z,{key:X.id,id:X.id,name:X.name,description:X.description,usersCount:X.usersCount,icons:He(X),rowIndex:ve+2})))),!j&&!De&&e.createElement(we.Z,null)),e.createElement(A.ConfirmDialog,{isOpen:v,onConfirm:Z,isConfirmButtonLoading:Ke,onToggleDialog:T}))},te=()=>e.createElement(A.CheckPagePermissions,{permissions:i.Z.settings.roles.main},e.createElement(Je,null))},63775:function(_,S,t){const e=[];strapi.features.isEnabled(strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),strapi.features.isEnabled(strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await Promise.all([t.e(2743),t.e(2812)]).then(t.bind(t,49393))},to:"/settings/audit-logs",exact:!0}),S.Z=e}}]);