@strapi/admin 4.5.4 → 4.5.6

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 (210) hide show
  1. package/admin/src/components/GlobalStyle/index.js +0 -11
  2. package/admin/src/components/GuidedTour/Modal/components/Content.js +7 -2
  3. package/admin/src/content-manager/components/ComponentIcon/ComponentIcon.js +49 -0
  4. package/admin/src/content-manager/components/ComponentIcon/index.js +1 -0
  5. package/admin/src/content-manager/components/DynamicZone/components/ComponentCard.js +17 -31
  6. package/admin/src/content-manager/components/DynamicZone/components/ComponentCategory.js +2 -2
  7. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +3 -3
  8. package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +19 -2
  9. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +2 -1
  10. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +2 -1
  11. package/admin/src/content-manager/components/InputJSON/FieldWrapper.js +10 -2
  12. package/admin/src/content-manager/components/InputJSON/Label.js +2 -18
  13. package/admin/src/content-manager/components/InputJSON/index.js +7 -3
  14. package/admin/src/content-manager/components/RelationInput/RelationInput.js +2 -4
  15. package/admin/src/content-manager/components/RepeatableComponent/AccordionGroupCustom/index.js +0 -1
  16. package/admin/src/content-manager/components/RepeatableComponent/index.js +1 -3
  17. package/admin/src/content-manager/pages/App/LeftMenu/index.js +5 -7
  18. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +18 -38
  19. package/admin/src/content-manager/pages/EditView/Header/index.js +1 -1
  20. package/admin/src/content-manager/pages/ListSettingsView/index.js +3 -5
  21. package/admin/src/pages/Admin/Onboarding/index.js +42 -44
  22. package/admin/src/pages/AuthPage/components/Register/index.js +1 -1
  23. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +1 -1
  24. package/admin/src/pages/ProfilePage/index.js +1 -1
  25. package/admin/src/translations/ca.json +2 -3
  26. package/admin/src/translations/dk.json +2 -2
  27. package/admin/src/translations/en.json +9 -1
  28. package/admin/src/translations/es.json +2 -2
  29. package/admin/src/translations/fr.json +2 -2
  30. package/admin/src/translations/hu.json +197 -2
  31. package/admin/src/translations/ja.json +2 -2
  32. package/admin/src/translations/nl.json +2 -2
  33. package/admin/src/translations/sk.json +274 -52
  34. package/admin/src/translations/zh-Hans.json +1 -1
  35. package/admin/src/translations/zh.json +11 -3
  36. package/build/2235.06c13219.chunk.js +106 -0
  37. package/build/{1233.802422fa.chunk.js → 2473.7ad04700.chunk.js} +40 -40
  38. package/build/2598.962797b2.chunk.js +159 -0
  39. package/build/{4318.9283c350.chunk.js → 4318.0bbd3f4b.chunk.js} +1 -1
  40. package/build/4958.7c118f5e.chunk.js +276 -0
  41. package/build/5052.712419ea.chunk.js +65 -0
  42. package/build/7295.e12e5587.chunk.js +114 -0
  43. package/build/805.ddcead70.chunk.js +138 -0
  44. package/build/{8633.43ec9042.chunk.js → 8633.19be8f45.chunk.js} +1 -1
  45. package/build/874.bde3ea04.chunk.js +104 -0
  46. package/build/9707.77e475ee.chunk.js +101 -0
  47. package/build/Admin-authenticatedApp.377e2d11.chunk.js +75 -0
  48. package/build/{Admin_marketplace.ed754a4a.chunk.js → Admin_marketplace.615343fb.chunk.js} +6 -6
  49. package/build/Admin_pluginsPage.67728975.chunk.js +6 -0
  50. package/build/{Admin_profilePage.60ab80bb.chunk.js → Admin_profilePage.175c6516.chunk.js} +2 -2
  51. package/build/Admin_settingsPage.ba0605a2.chunk.js +178 -0
  52. package/build/Upload_ConfigureTheView.7cb2a3fd.chunk.js +1 -0
  53. package/build/admin-app.77b9f2b9.chunk.js +112 -0
  54. package/build/{admin-users.e64fb0f1.chunk.js → admin-users.4b6b47f8.chunk.js} +2 -2
  55. package/build/api-tokens-create-page.dd4ddfcb.chunk.js +1 -0
  56. package/build/api-tokens-edit-page.821c5a6c.chunk.js +1 -0
  57. package/build/{api-tokens-list-page.700e575f.chunk.js → api-tokens-list-page.50519ed7.chunk.js} +1 -1
  58. package/build/ca-json.fa3e6f48.chunk.js +1 -0
  59. package/build/{codemirror-css.4e2bbed3.chunk.js → codemirror-css.aa4c2de2.chunk.js} +2 -3
  60. package/build/{codemirror-javacript.41bdefda.chunk.js → codemirror-javacript.589c8ecc.chunk.js} +1 -1
  61. package/build/codemirror-theme.c1d2b07c.chunk.js +33 -0
  62. package/build/content-manager.a489bdc0.chunk.js +1184 -0
  63. package/build/content-type-builder-list-view.4aea46fa.chunk.js +198 -0
  64. package/build/content-type-builder-translation-de-json.a52482c7.chunk.js +1 -0
  65. package/build/content-type-builder-translation-dk-json.a8616510.chunk.js +1 -0
  66. package/build/content-type-builder-translation-en-json.1d9a3c14.chunk.js +1 -0
  67. package/build/content-type-builder-translation-es-json.c3ea46fb.chunk.js +1 -0
  68. package/build/content-type-builder-translation-ko-json.3fb7ddc8.chunk.js +1 -0
  69. package/build/content-type-builder-translation-pl-json.9b2993b2.chunk.js +1 -0
  70. package/build/content-type-builder-translation-pt-BR-json.6d255441.chunk.js +1 -0
  71. package/build/content-type-builder-translation-sv-json.c608b9ca.chunk.js +1 -0
  72. package/build/content-type-builder-translation-zh-json.b79513e4.chunk.js +1 -0
  73. package/build/content-type-builder.aa05d3a5.chunk.js +127 -0
  74. package/build/dk-json.ab5dd6ac.chunk.js +1 -0
  75. package/build/email-settings-page.d7165683.chunk.js +15 -0
  76. package/build/en-json.058a913d.chunk.js +1 -0
  77. package/build/es-json.8fe19fb3.chunk.js +1 -0
  78. package/build/fr-json.7ba93468.chunk.js +1 -0
  79. package/build/highlight.js.aea3bcf9.chunk.js +85 -0
  80. package/build/hu-json.ec123259.chunk.js +1 -0
  81. package/build/{i18n-settings-page.195d42fe.chunk.js → i18n-settings-page.ee572037.chunk.js} +1 -1
  82. package/build/index.html +1 -1
  83. package/build/ja-json.e69860d6.chunk.js +1 -0
  84. package/build/main.386bbeb5.js +4417 -0
  85. package/build/nl-json.02de2e84.chunk.js +1 -0
  86. package/build/runtime~main.13d2c7fa.js +2 -0
  87. package/build/sk-json.2af48064.chunk.js +1 -0
  88. package/build/sso-settings-page.91924df1.chunk.js +41 -0
  89. package/build/upload-settings.5fd96cda.chunk.js +89 -0
  90. package/build/upload-translation-en-json.32cf9aff.chunk.js +1 -0
  91. package/build/upload-translation-sk-json.fe86c53b.chunk.js +1 -0
  92. package/build/upload-translation-zh-json.656ddd8a.chunk.js +1 -0
  93. package/build/upload.9993c14f.chunk.js +38 -0
  94. package/build/users-advanced-settings-page.c4431a05.chunk.js +13 -0
  95. package/build/users-email-settings-page.d8a0bf10.chunk.js +28 -0
  96. package/build/{users-permissions-translation-dk-json.fe39c74b.chunk.js → users-permissions-translation-dk-json.bad0b786.chunk.js} +1 -1
  97. package/build/{users-permissions-translation-en-json.765abf48.chunk.js → users-permissions-translation-en-json.aeab388a.chunk.js} +1 -1
  98. package/build/{users-permissions-translation-es-json.1bb9cde2.chunk.js → users-permissions-translation-es-json.152a923f.chunk.js} +1 -1
  99. package/build/{users-permissions-translation-ko-json.3be77775.chunk.js → users-permissions-translation-ko-json.6bd0ae22.chunk.js} +1 -1
  100. package/build/{users-permissions-translation-pl-json.1dbdd4a1.chunk.js → users-permissions-translation-pl-json.c6a02992.chunk.js} +1 -1
  101. package/build/{users-permissions-translation-sv-json.d5d11648.chunk.js → users-permissions-translation-sv-json.370d6eee.chunk.js} +1 -1
  102. package/build/{users-permissions-translation-zh-json.92f406f9.chunk.js → users-permissions-translation-zh-json.1fea833f.chunk.js} +1 -1
  103. package/build/users-providers-settings-page.47a69fe9.chunk.js +1 -0
  104. package/build/users-roles-settings-page.0a87ba15.chunk.js +30 -0
  105. package/build/{webhook-edit-page.1215a6b7.chunk.js → webhook-edit-page.dcc3d145.chunk.js} +4 -4
  106. package/build/{webhook-list-page.b87821f2.chunk.js → webhook-list-page.894e6959.chunk.js} +1 -1
  107. package/build/zh-Hans-json.1b3b4a64.chunk.js +1 -0
  108. package/build/zh-json.8643bc81.chunk.js +1 -0
  109. package/package.json +15 -20
  110. package/server/index.js +2 -0
  111. package/server/middlewares/index.js +7 -0
  112. package/server/middlewares/rateLimit.js +43 -0
  113. package/server/routes/authentication.js +4 -1
  114. package/server/routes/roles.js +0 -8
  115. package/server/services/role.js +1 -0
  116. package/webpack.alias.js +0 -2
  117. package/admin/src/content-manager/components/BackHeader/index.js +0 -8
  118. package/admin/src/content-manager/components/Block/components.js +0 -28
  119. package/admin/src/content-manager/components/Block/index.js +0 -43
  120. package/admin/src/content-manager/components/Container/index.js +0 -7
  121. package/admin/src/content-manager/components/CustomInputCheckbox/components.js +0 -77
  122. package/admin/src/content-manager/components/CustomInputCheckbox/index.js +0 -53
  123. package/admin/src/content-manager/components/DynamicComponentCard/Wrapper.js +0 -63
  124. package/admin/src/content-manager/components/FilterOptionsCTA/index.js +0 -14
  125. package/admin/src/content-manager/components/FormTitle/index.js +0 -22
  126. package/admin/src/content-manager/components/FormWrapper/index.js +0 -20
  127. package/admin/src/content-manager/components/InputJSON/FieldError.js +0 -38
  128. package/admin/src/content-manager/components/LayoutTitle/index.js +0 -19
  129. package/admin/src/content-manager/components/PlusButton/index.js +0 -52
  130. package/admin/src/content-manager/components/PreviewCarret/components.js +0 -27
  131. package/admin/src/content-manager/components/PreviewCarret/index.js +0 -22
  132. package/admin/src/content-manager/components/SectionTitle/Title.js +0 -11
  133. package/admin/src/content-manager/components/SectionTitle/index.js +0 -26
  134. package/build/1551f4f60c37af51121f.woff2 +0 -0
  135. package/build/1e59d2330b4c6deb84b3.ttf +0 -0
  136. package/build/20fd1704ea223900efa9.woff2 +0 -0
  137. package/build/2285773e6b4b172f07d9.woff +0 -0
  138. package/build/23f19bb08961f37aaf69.eot +0 -0
  139. package/build/2f517e09eb2ca6650ff5.svg +0 -3717
  140. package/build/4306.df40a798.chunk.js +0 -98
  141. package/build/4689f52cc96215721344.svg +0 -801
  142. package/build/491974d108fe4002b2aa.ttf +0 -0
  143. package/build/504.9aeff724.chunk.js +0 -758
  144. package/build/5057.195a59ff.chunk.js +0 -65
  145. package/build/527940b104eb2ea366c8.ttf +0 -0
  146. package/build/77206a6bb316fa0aded5.eot +0 -0
  147. package/build/7a3337626410ca2f4071.woff2 +0 -0
  148. package/build/7a8b4f130182d19a2d7c.svg +0 -5034
  149. package/build/805.e991a370.chunk.js +0 -138
  150. package/build/8176.e929d326.chunk.js +0 -145
  151. package/build/8881.c693411a.chunk.js +0 -245
  152. package/build/8b43027f47b20503057d.eot +0 -0
  153. package/build/9161.4a0ab137.chunk.js +0 -2119
  154. package/build/9279.6290c87a.chunk.js +0 -117
  155. package/build/9707.a0cc4ad8.chunk.js +0 -70
  156. package/build/9bbb245e67a133f6e486.eot +0 -0
  157. package/build/Admin-authenticatedApp.0da578b8.chunk.js +0 -80
  158. package/build/Admin_pluginsPage.3c872de7.chunk.js +0 -6
  159. package/build/Admin_settingsPage.6ef8acc9.chunk.js +0 -178
  160. package/build/admin-app.a3277e72.chunk.js +0 -112
  161. package/build/api-tokens-create-page.93dd0689.chunk.js +0 -1
  162. package/build/api-tokens-edit-page.b0adac81.chunk.js +0 -1
  163. package/build/bb58e57c48a3e911f15f.woff +0 -0
  164. package/build/be9ee23c0c6390141475.ttf +0 -0
  165. package/build/c1e38fd9e0e74ba58f7a.svg +0 -2671
  166. package/build/ca-json.07ae0f2c.chunk.js +0 -1
  167. package/build/codemirror-theme.a82cae4e.chunk.js +0 -34
  168. package/build/content-manager.f9630c3b.chunk.js +0 -1197
  169. package/build/content-type-builder-list-view.4412efc3.chunk.js +0 -201
  170. package/build/content-type-builder-translation-de-json.0d7696b9.chunk.js +0 -1
  171. package/build/content-type-builder-translation-dk-json.4729f055.chunk.js +0 -1
  172. package/build/content-type-builder-translation-en-json.f985c9c4.chunk.js +0 -1
  173. package/build/content-type-builder-translation-es-json.333cf47f.chunk.js +0 -1
  174. package/build/content-type-builder-translation-ko-json.51201b12.chunk.js +0 -1
  175. package/build/content-type-builder-translation-pl-json.4a42349b.chunk.js +0 -1
  176. package/build/content-type-builder-translation-pt-BR-json.6fe3b8d1.chunk.js +0 -1
  177. package/build/content-type-builder-translation-sv-json.6deff030.chunk.js +0 -1
  178. package/build/content-type-builder-translation-zh-json.3b0afd31.chunk.js +0 -1
  179. package/build/content-type-builder.b132b5f4.chunk.js +0 -145
  180. package/build/cropper-css.12fe038c.chunk.js +0 -306
  181. package/build/d878b0a6a1144760244f.woff2 +0 -0
  182. package/build/dk-json.144c6a8e.chunk.js +0 -1
  183. package/build/eeccf4f66002c6f2ba24.woff +0 -0
  184. package/build/email-settings-page.c6e62f6b.chunk.js +0 -15
  185. package/build/en-json.7dd57947.chunk.js +0 -1
  186. package/build/es-json.6d123a82.chunk.js +0 -1
  187. package/build/f691f37e57f04c152e23.woff +0 -0
  188. package/build/fontawesome-css-all.15068c6e.chunk.js +0 -4618
  189. package/build/fontawesome-css.418f40da.chunk.js +0 -6
  190. package/build/fontawesome-js.252cc5f3.chunk.js +0 -7
  191. package/build/fr-json.28ab54cb.chunk.js +0 -1
  192. package/build/highlight.js.af2de364.chunk.js +0 -86
  193. package/build/hu-json.c4b641bb.chunk.js +0 -1
  194. package/build/ja-json.1c9eeeec.chunk.js +0 -1
  195. package/build/main.71f24343.js +0 -2034
  196. package/build/nl-json.26f39180.chunk.js +0 -1
  197. package/build/runtime~main.1115f82b.js +0 -2
  198. package/build/sk-json.7ba4b330.chunk.js +0 -1
  199. package/build/sso-settings-page.feed2f45.chunk.js +0 -1
  200. package/build/upload-settings.450cab1a.chunk.js +0 -18
  201. package/build/upload-translation-en-json.86da7b0a.chunk.js +0 -1
  202. package/build/upload-translation-sk-json.b03d4904.chunk.js +0 -1
  203. package/build/upload-translation-zh-json.ac5711de.chunk.js +0 -1
  204. package/build/upload.74540aab.chunk.js +0 -64
  205. package/build/users-advanced-settings-page.0c0b8230.chunk.js +0 -13
  206. package/build/users-email-settings-page.3126ff8c.chunk.js +0 -28
  207. package/build/users-providers-settings-page.b7b602e2.chunk.js +0 -33
  208. package/build/users-roles-settings-page.ce5b582d.chunk.js +0 -30
  209. package/build/zh-Hans-json.21617c24.chunk.js +0 -1
  210. package/build/zh-json.2ecc6b99.chunk.js +0 -1
@@ -1,178 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{50020:(le,O,n)=>{n.r(O),n.d(O,{SettingsPage:()=>mn,default:()=>pn});var e=n(32735),C=n(88425),r=n(5141),oe=n(96709),Q=n(5636),We=n(99357),_=n(49737),Te=n(64421),Ae=n(84968),Re=n(28356),He=n(17e3),V=n(27649),A=n(62345),P=n(15335),Be=n(5803),Y=n(88860),Oe=n(27677),K=n(41415),ze=n(41502),re=n(47361),x=n(66456),ae=n(60216),f=n.n(ae),_e=n(23272),Xe=n(68387),be=n(98779),je=n(50563),Ne=n(19406),Ue=n(44647),Ze=n(97889);const Qe={currentStep:void 0},st=(m=Qe,c)=>(0,Ze.default)(m,l=>{switch(c.type){case"GO_TO":{l.currentStep=c.to;break}default:return l}});var nt=n(85025),rt=n(55225);const ne={localImage:void 0},Ve=(m=ne,c)=>(0,Ze.default)(m,l=>{switch(c.type){case"SET_LOCAL_IMAGE":{l.localImage=c.value;break}default:return l}}),ee=({onChangeLogo:m,customLogo:c,goTo:l,Component:h,modalTitle:u,next:T,prev:M,currentStep:R})=>{const[{localImage:y},D]=(0,e.useReducer)(Ve,ne),{formatMessage:fe}=(0,Q.useIntl)(),ue=pt=>{D({type:"SET_LOCAL_IMAGE",value:pt})},qe=()=>{l(null)};return R?e.createElement(nt.P,{labelledBy:"modal",onClose:qe},e.createElement(rt.x,null,e.createElement(Y.Z,{fontWeight:"bold",as:"h2",id:"modal"},fe(u))),e.createElement(h,{setLocalImage:ue,goTo:l,next:T,prev:M,onClose:qe,asset:y||c,onChangeLogo:m})):null};ee.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},ee.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};const $=ee,k=750,I=100,H=["image/jpeg","image/png","image/svg+xml"];var W=n(35540),X=n(39291),pe=n(3653),De=n(9026),G=n(83292),ge=n(36320),Ye=n(99140),Ge=n(11406),F=n(98275),ie=n(87107),Z=n(47851),te=n(47284),v=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const ye={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},ce={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)"},Je=m=>new Promise(c=>{const l=new FileReader;l.onload=()=>{const h=new Image;h.onload=function(){c({width:h.width,height:h.height})},h.src=l.result},l.readAsDataURL(m)}),ot=(m,c)=>({ext:m.name.split(".").pop(),size:m.size/1e3,name:m.name,url:URL.createObjectURL(m),rawFile:m,width:c.width,height:c.height}),Ce=m=>v(void 0,null,function*(){let c;if(!H.includes(m.type))throw c=new Error("File format"),c.displayMessage=ye,c;const h=yield Je(m);if(!(h.width<=k&&h.height<=k))throw c=new Error("File sizing"),c.displayMessage=ce,c;const T=ot(m,h);if(!(T.size<=I))throw c=new Error("File sizing"),c.displayMessage=ce,c;return T});var J=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const xe=(0,G.default)(F._)`
2
- opacity: 0;
3
- position: absolute;
4
- top: 0;
5
- bottom: 0;
6
- left: 0;
7
- right: 0;
8
- z-index: 1;
9
- `,ft=({setLocalImage:m,goTo:c,next:l,onClose:h})=>{const{formatMessage:u}=(0,Q.useIntl)(),[T,M]=(0,e.useState)(!1),[R,y]=(0,e.useState)(void 0),D=(0,e.useRef)(null),fe=()=>M(!0),ue=()=>M(!1),qe=tt=>{tt.preventDefault(),D.current.click()},pt=()=>J(void 0,null,function*(){ue();const tt=D.current.files[0];if(!!tt)try{const lt=yield Ce(tt);m(lt),c(l)}catch(lt){if(lt.displayMessage)y(u(lt.displayMessage,{size:I,dimension:k})),D.current.focus();else throw lt}}),at=()=>T?"primary500":R?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(A.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(ie.g,{name:"logo-upload",error:R},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(Oe.K,{spacing:2},e.createElement(ge.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:T?"primary100":"neutral100",borderColor:at(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:fe,onDragLeave:ue},e.createElement(Ye.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:te.Z,"aria-hidden":!0}),e.createElement(A.x,{paddingTop:3,paddingBottom:5},e.createElement(Y.Z,{variant:"delta",as:"span"},u({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(xe,{accept:H,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:pt,ref:D,id:"logo-upload"}),e.createElement(K.z,{type:"button",onClick:qe},u({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(A.x,{paddingTop:6},e.createElement(Y.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:I,dimension:k})))),e.createElement(Z.c,null)))))),e.createElement(Ge.m,{startActions:e.createElement(K.z,{onClick:h,variant:"tertiary"},u({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};ft.defaultProps={next:null},ft.propTypes={goTo:f().func.isRequired,next:f().string,onClose:f().func.isRequired,setLocalImage:f().func.isRequired};const Nt=ft;var Zt=n(10369),$t=n(43653),Wt=n.n($t),ut=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const bt=m=>ut(void 0,null,function*(){try{const c=yield Wt().get(m,{responseType:"blob",timeout:8e3});return new File([c.data],c.config.url,{type:c.headers["content-type"]})}catch(c){throw c.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},c}});var oo=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const ht=({goTo:m,next:c,onClose:l,setLocalImage:h})=>{const{formatMessage:u}=(0,Q.useIntl)(),[T,M]=(0,e.useState)(""),[R,y]=(0,e.useState)(null),D=ue=>{M(ue.target.value)},fe=()=>oo(void 0,null,function*(){try{const ue=yield bt(T),qe=yield Ce(ue);h(qe),m(c)}catch(ue){if(ue.displayMessage)y(u(ue.displayMessage,{size:I,dimension:k}));else throw ue}});return e.createElement("form",{onSubmit:ue=>{ue.preventDefault(),fe()}},e.createElement(A.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Zt.o,{label:u({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:R,onChange:D,value:T,name:"logo-url"})),e.createElement(Ge.m,{startActions:e.createElement(K.z,{onClick:l,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};const ao=ht,St=({setLocalImage:m,goTo:c,next:l,onClose:h})=>{const{formatMessage:u}=(0,Q.useIntl)();return e.createElement(W.v,{label:u({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(A.x,{paddingLeft:8,paddingRight:8},e.createElement(X.m,null,e.createElement(X.O,null,u({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(X.O,null,u({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(De.i,null)),e.createElement(pe.n,null,e.createElement(pe.x,null,e.createElement(Nt,{onClose:h,setLocalImage:m,goTo:c,next:l})),e.createElement(pe.x,null,e.createElement(ao,{onClose:h,setLocalImage:m,goTo:c,next:l}))))};St.defaultProps={next:null},St.propTypes={goTo:f().func.isRequired,next:f().string,onClose:f().func.isRequired,setLocalImage:f().func.isRequired};const fn=St;var Ut=n(42466),hn=n(20853),vn=n(2800),Vt=n(26835),yn=n(41048),Pt=n(37083),kt=n(11505);const Dt=({asset:m})=>{const{formatMessage:c}=(0,Q.useIntl)();return e.createElement(Ut.Z,null,e.createElement(hn.O,null,e.createElement(vn.H,{size:"S",src:m.url})),e.createElement(Vt.e,null,e.createElement(yn.a,null,e.createElement(Pt.l,null,m.name),e.createElement(Pt._,null,`${m.ext.toUpperCase()} - ${m.width}\u2715${m.height}`)),e.createElement(kt.E,null,c({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};Dt.propTypes={asset:f().shape({name:f().string,url:f().string,width:f().number,height:f().number,ext:f().string}).isRequired};const mt=Dt,Gt=({onClose:m,asset:c,prev:l,next:h,goTo:u,setLocalImage:T,onChangeLogo:M})=>{const{formatMessage:R}=(0,Q.useIntl)(),y=()=>{T(void 0),u(l)},D=()=>{M(c),u(h)};return e.createElement(e.Fragment,null,e.createElement(A.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(ge.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(ge.k,{direction:"column",alignItems:"flex-start"},e.createElement(Y.Z,{variant:"pi",fontWeight:"bold"},R({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(Y.Z,{variant:"pi",textColor:"neutral500"},R({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(K.z,{onClick:y,variant:"secondary"},R({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(A.x,{maxWidth:(0,C.pxToRem)(180)},e.createElement(mt,{asset:c}))),e.createElement(Ge.m,{startActions:e.createElement(K.z,{onClick:m,variant:"tertiary"},R({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(K.z,{onClick:D},R({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};Gt.defaultProps={next:null,prev:null},Gt.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};const it={upload:{Component:fn,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:Gt,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}},Ht=({customLogo:m,defaultLogo:c,onChangeLogo:l,onResetMenuLogo:h})=>{const[{currentStep:u},T]=(0,e.useReducer)(st,Qe),{Component:M,next:R,prev:y,modalTitle:D}=it[u]||{},{formatMessage:fe}=(0,Q.useIntl)(),ue=qe=>{T({type:"GO_TO",to:qe})};return e.createElement(e.Fragment,null,e.createElement(_e.F,{label:fe({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"}),selectedSlide:0,hint:fe({id:"Settings.application.customization.carousel-hint",defaultMessage:"Change the admin panel logo (Max dimension: {dimension}x{dimension}, Max file size: {size}KB)"},{size:I,dimension:k}),previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:(m==null?void 0:m.name)||"logo.png",actions:e.createElement(Xe.b,null,e.createElement(je.h,{onClick:()=>ue(m?"pending":"upload"),label:fe({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(Ne.default,null)}),m&&e.createElement(je.h,{onClick:h,label:fe({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(Ue.Z,null)}))},e.createElement(be.q,{label:fe({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(A.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:(m==null?void 0:m.url)||c,alt:fe({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement($,{Component:M,currentStep:u,onChangeLogo:l,customLogo:m,goTo:ue,next:R,prev:y,modalTitle:D}))};Ht.defaultProps={customLogo:null},Ht.propTypes={customLogo:f().shape({url:f().string,name:f().string}),defaultLogo:f().string.isRequired,onChangeLogo:f().func.isRequired,onResetMenuLogo:f().func.isRequired};const Cn=Ht,Mt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}}},vt=(m=Mt,c)=>(0,Ze.default)(m,l=>{switch(c.type){case"SET_CUSTOM_MENU_LOGO":{l.menuLogo.display=c.value,l.menuLogo.submit.rawFile=c.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{l.menuLogo.display=null,l.menuLogo.submit={rawFile:null,isReset:!0};break}default:return l}});var so=n(86349),yt=n.n(so);const Xt=(m,c)=>yt()(m,{menuLogo:{display:c.menuLogo}}),Tt=(0,e.forwardRef)(({projectSettingsStored:m},c)=>{const{formatMessage:l}=(0,Q.useIntl)(),{trackUsage:h}=(0,C.useTracking)(),{logos:{menu:u}}=(0,_.um)(),[{menuLogo:T},M]=(0,e.useReducer)(vt,Mt,()=>Xt(Mt,m)),R=D=>{M({type:"SET_CUSTOM_MENU_LOGO",value:D})},y=()=>{h("didClickResetLogo"),M({type:"RESET_CUSTOM_MENU_LOGO"})};return(0,e.useImperativeHandle)(c,()=>({getValues:()=>({menuLogo:T.submit})})),e.createElement(A.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(Y.Z,{variant:"delta",as:"h3"},l({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(P.r,{paddingTop:4},e.createElement(Be.P,{col:6,s:12},e.createElement(Cn,{onChangeLogo:R,customLogo:T.display,defaultLogo:u.default,onResetMenuLogo:y}))))});Tt.defaultProps={projectSettingsStored:null},Tt.propTypes={projectSettingsStored:f().shape({menuLogo:f().shape({url:f().string,name:f().string})})};const bn=Tt;var Lt=n(17247),Qt=n(48344),Yt=n.n(Qt),Sn=Object.defineProperty,Jt=Object.defineProperties,Pn=Object.getOwnPropertyDescriptors,Tn=Object.getOwnPropertySymbols,An=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable,_t=(m,c,l)=>c in m?Sn(m,c,{enumerable:!0,configurable:!0,writable:!0,value:l}):m[c]=l,en=(m,c)=>{for(var l in c||(c={}))An.call(c,l)&&_t(m,l,c[l]);if(Tn)for(var l of Tn(c))qt.call(c,l)&&_t(m,l,c[l]);return m},Rn=(m,c)=>Jt(m,Pn(c));const tn=m=>Yt()(m,(c,l,h)=>{l&&l.url?c[h]=Rn(en({},l),{url:(0,C.prefixFileUrlWithBackendUrl)(l.url)}):c[h]=l},{});var On=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const nn=()=>On(void 0,null,function*(){const{data:m}=yield Lt.be.get("/admin/project-settings");return tn(m)}),Dn=m=>On(void 0,null,function*(){const{data:c}=yield Lt.be.post("/admin/project-settings",m);return tn(c)}),Mn=m=>{const c=new FormData;return Object.entries(m).forEach(([l,h])=>{h&&h.rawFile instanceof File&&c.append(l,h.rawFile),h&&h.isReset&&c.append(l,null)}),c};var on=(m,c,l)=>new Promise((h,u)=>{var T=y=>{try{R(l.next(y))}catch(D){u(D)}},M=y=>{try{R(l.throw(y))}catch(D){u(D)}},R=y=>y.done?h(y.value):Promise.resolve(y.value).then(T,M);R((l=l.apply(m,c)).next())});const Ln=[{action:"admin::project-settings.update",subject:null}],an=()=>{const m=(0,e.useRef)(),c=(0,C.useNotification)(),{trackUsage:l}=(0,C.useTracking)(),{formatMessage:h}=(0,Q.useIntl)(),u=(0,Ae.useQueryClient)();(0,C.useFocusWhenNavigate)();const T=(0,C.useAppInfos)(),{shouldUpdateStrapi:M,latestStrapiReleaseTag:R,strapiVersion:y}=T,{updateProjectSettings:D}=(0,_.um)(),{data:fe}=(0,Ae.useQuery)("project-settings",nn),ue=T.communityEdition?"app.components.UpgradePlanModal.text-ce":"app.components.UpgradePlanModal.text-ee",qe=(0,Ae.useMutation)(at=>Dn(at),{onSuccess(at){return on(this,arguments,function*({menuLogo:tt}){yield u.invalidateQueries("project-settings",{refetchActive:!0}),D({menuLogo:tt==null?void 0:tt.url})})}}),pt=()=>{const at=m.current.getValues(),tt=Mn(at);qe.mutate(tt,{onSuccess(){const{menuLogo:lt}=at;lt.rawFile&&l("didChangeLogo")},onError(){c({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(oe.A,null,e.createElement(C.SettingsPageTitle,{name:"Application"}),e.createElement(V.o,null,e.createElement(Re.T,{title:h({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:h({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:e.createElement(K.z,{onClick:pt,startIcon:e.createElement(x.Z,null)},h({id:"global.save",defaultMessage:"Save"}))}),e.createElement(He.D,null,e.createElement(Oe.K,{spacing:6},e.createElement(A.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(Oe.K,{spacing:5},e.createElement(Y.Z,{variant:"delta",as:"h3"},h({id:"global.details",defaultMessage:"Details"})),e.createElement(P.r,{paddingTop:1},e.createElement(Be.P,{col:6,s:12},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(Y.Z,{as:"p"},"v",y),e.createElement(ze.r,{href:T.communityEdition?"https://discord.strapi.io":"https://support.strapi.io/support/home",isExternal:!0,endIcon:e.createElement(re.default,null)},h({id:"Settings.application.get-help",defaultMessage:"Get help"}))),e.createElement(Be.P,{col:6,s:12},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(Y.Z,{as:"p"},h({id:ue,defaultMessage:`${T.communityEdition?"Community Edition":"Enterprise Edition"}`})))),e.createElement(P.r,{paddingTop:1},e.createElement(Be.P,{col:6,s:12},M&&e.createElement(ze.r,{href:`https://github.com/strapi/strapi/releases/tag/${R}`,isExternal:!0,endIcon:e.createElement(re.default,null)},h({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"}))),e.createElement(Be.P,{col:6,s:12},e.createElement(ze.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(re.default,null)},h({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(A.x,{paddingTop:1},e.createElement(Y.Z,{variant:"sigma",textColor:"neutral600"},h({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(Y.Z,{as:"p"},T.nodeVersion)))),fe&&e.createElement(C.CheckPermissions,{permissions:Ln},e.createElement(bn,{ref:m,projectSettingsStored:fe}))))))};var xn=n(3704),In=n.n(xn);const Fn=m=>In()(m,l=>l.links).map(l=>(0,Te.ot)(l.Component,l.to,l.exact||!1)),wn=m=>m.filter(c=>!c.links.every(l=>l.isDisplayed===!1));var It=n(15685),et=n(52136),Bn=n(33997),de=n.n(Bn),sn=function(){return window&&window.strapi&&window.strapi.isEE?n(20178).Z:n(16329).Z}(),jn=function(){return window&&window.strapi&&window.strapi.isEE?n(51899).Z:n(45677).Z}(),Nn=[{Component:function(){return{default:jn}},to:"/settings/roles",exact:!0},{Component:function(){return{default:sn}},to:"/settings/roles/duplicate/:id",exact:!0},{Component:function(){return{default:sn}},to:"/settings/roles/new",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(2544).then(n.bind(n,33778));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/roles/:id",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(5199).then(n.bind(n,31904));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/users",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(4263).then(n.bind(n,40874));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/users/:id",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(5162).then(n.bind(n,33238));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/webhooks/create",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(5162).then(n.bind(n,59021));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/webhooks/:id",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(4121).then(n.bind(n,74767));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/webhooks",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,n.e(8056).then(n.bind(n,83782));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/api-tokens",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([n.e(8633),n.e(4318),n.e(4299)]).then(n.bind(n,3330));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/api-tokens/create",exact:!0},{Component:function(){return(0,et.Z)(de().mark(function c(){var l;return de().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([n.e(8633),n.e(4318),n.e(92)]).then(n.bind(n,97841));case 2:return l=u.sent,u.abrupt("return",l);case 4:case"end":return u.stop()}},c)}))()},to:"/settings/api-tokens/:id",exact:!0}];const Ft=Nn;var Zn=function(){return window&&window.strapi&&window.strapi.isEE?n(63775).Z:n(75936).Z}();const rn=[].concat((0,It.Z)(Zn),(0,It.Z)(Ft));var ln=n(90700),$n=n(8598),Wn=n(77013),zn=n(79318),Un=n(66618),Vn=Object.defineProperty,cn=Object.defineProperties,kn=Object.getOwnPropertyDescriptors,dn=Object.getOwnPropertySymbols,co=Object.prototype.hasOwnProperty,Gn=Object.prototype.propertyIsEnumerable,wt=(m,c,l)=>c in m?Vn(m,c,{enumerable:!0,configurable:!0,writable:!0,value:l}):m[c]=l,Bt=(m,c)=>{for(var l in c||(c={}))co.call(c,l)&&wt(m,l,c[l]);if(dn)for(var l of dn(c))Gn.call(c,l)&&wt(m,l,c[l]);return m},un=(m,c)=>cn(m,kn(c));const At=({menu:m})=>{const{formatMessage:c}=(0,Q.useIntl)(),h=wn(m).map(T=>un(Bt({},T),{title:T.intlLabel,links:T.links.map(M=>un(Bt({},M),{title:M.intlLabel,name:M.id}))})),u=c({id:"global.settings",defaultMessage:"Settings"});return e.createElement(ln.m,{ariaLabel:u},e.createElement($n.p,{label:u}),e.createElement(Wn.Z,null,h.map(T=>e.createElement(zn.D,{key:T.id,label:c(T.intlLabel)},T.links.map(M=>e.createElement(Un.E,{as:r.NavLink,withBullet:M.hasNotification,to:M.to,key:M.id},c(M.intlLabel)))))))};At.propTypes={menu:f().array.isRequired};const Kn=At;function mn(){const{settingId:m}=(0,r.useParams)(),{settings:c}=(0,C.useStrapiApp)(),{formatMessage:l}=(0,Q.useIntl)(),{isLoading:h,menu:u}=(0,_.Te)(),T=(0,e.useMemo)(()=>(0,Te.WW)(rn.map(({to:y,Component:D,exact:fe})=>(0,Te.ot)(D,y,fe))),[]),M=Fn(c);if(h)return e.createElement(C.LoadingIndicatorPage,null);if(!m)return e.createElement(r.Redirect,{to:"/settings/application-infos"});const R=l({id:"global.settings",defaultMessage:"Settings"});return e.createElement(oe.A,{sideNav:e.createElement(Kn,{menu:u})},e.createElement(We.Helmet,{title:R}),e.createElement(r.Switch,null,e.createElement(r.Route,{path:"/settings/application-infos",component:an,exact:!0}),T,M))}const pn=(0,e.memo)(mn)},16329:(le,O,n)=>{n.d(O,{Z:()=>oe});var e=n(32735),C=n(5141);const oe=()=>e.createElement(C.Redirect,{to:"/404"})},49466:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},35123:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},18318:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},52124:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},61526:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},37511:(le,O,n)=>{n.d(O,{Z:()=>rs});var e=n(32735),C=n(60216),r=n.n(C),oe=n(88425),Q=n(35540),We=n(39291),_=n(3653),Te=n(23973),Ae=n.n(Te),Re=n(86834),He=n.n(Re),V=n(5636),A=n(62345),P=n(83292),Be=n(98978),Y=n.n(Be),Oe=n(39515),K=n(96441),ze=n(15974),re=n(44426),x=n(36320),ae=n(33795),f=n.n(ae),_e=n(9086),Xe=n.n(_e),be=n(49737),je=n(45112),Ne=n(41415);const Ue=P.default.div`
10
- position: relative;
11
-
12
- ${({hasConditions:a,disabled:t,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: ${t?o.colors.neutral100:o.colors.primary600};
22
- }
23
- `}
24
- `,Ze=({onClick:a,className:t,hasConditions:o,variant:s})=>{const{formatMessage:i}=(0,V.useIntl)();return e.createElement(Ue,{hasConditions:o,className:t},e.createElement(Ne.z,{variant:s,startIcon:e.createElement(je.Z,null),onClick:a},i({id:"global.settings",defaultMessage:"Settings"})))};Ze.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},Ze.propTypes={onClick:r().func.isRequired,className:r().string,hasConditions:r().bool,variant:r().string};const Qe=(0,P.default)(Ze)``;var dt=n(85025),st=n(55225),nt=n(31600),rt=n(11406),ne=n(11299),me=n(88860),Ve=n(97889),ee=n(81346),$=n.n(ee),k=n(23940),I=n.n(k),H=n(27799),W=Object.defineProperty,X=Object.getOwnPropertySymbols,pe=Object.prototype.hasOwnProperty,De=Object.prototype.propertyIsEnumerable,G=(a,t,o)=>t in a?W(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,ge=(a,t)=>{for(var o in t||(t={}))pe.call(t,o)&&G(a,o,t[o]);if(X)for(var o of X(t))De.call(t,o)&&G(a,o,t[o]);return a};const Ye=a=>Object.values(a).map(t=>Object.entries(t).filter(([,o])=>o).map(([o])=>o)).flat(),Ge=a=>a.reduce((t,[o,s])=>(t.push({label:I()(o),children:s.map(i=>({label:i.displayName,value:i.id}))}),t),[]),F=(a,t)=>a.map(([,o])=>o).flat().reduce((o,s)=>ge({[s.id]:t.includes(s.id)},o),{});var ie=function(){return window&&window.strapi&&window.strapi.isEE?n(56899).Z:n(49466).Z}(),Z=function(t){var o=t.arrayOfOptionsGroupedByCategory,s=t.isFormDisabled,i=t.isGrey,d=t.label,p=t.name,g=t.onChange,E=t.value,b=(0,V.useIntl)(),S=b.formatMessage,L=function(z){g(p,F(o,z))};return e.createElement(x.k,{as:"li",background:i?"neutral100":"neutral0",paddingBottom:3,paddingTop:3},e.createElement(x.k,{paddingLeft:6,style:{width:180}},e.createElement(me.Z,{variant:"sigma",textColor:"neutral600"},S({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(me.Z,{variant:"sigma",title:d,textColor:"primary600",ellipsis:!0},S({id:"Settings.roles.form.permissions.".concat(d.toLowerCase()),defaultMessage:d})),e.createElement(me.Z,{variant:"sigma",textColor:"neutral600"},"\xA0",S({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(A.x,{style:{maxWidth:430,width:"100%"}},e.createElement(H.Q,{id:p,customizeContent:function(z){return"".concat(z.length," currently selected")},onChange:L,value:Ye(E),options:Ge(o),disabled:s||ie})))};Z.propTypes={arrayOfOptionsGroupedByCategory:r().array.isRequired,isFormDisabled:r().bool.isRequired,isGrey:r().bool.isRequired,label:r().string.isRequired,name:r().string.isRequired,value:r().object.isRequired,onChange:r().func.isRequired};const te=Z;var v=n(92891);const ye=(a,t)=>a.reduce((o,s)=>(o[s.id]=(0,v.get)(t,s.id,!1),o),{}),ce=(a,t)=>a.reduce((o,s)=>{const[i,d]=s,p=ye(d,t);return o[i]=p,o},{}),ot=(a,t,o)=>a.reduce((s,i)=>{const d=(0,v.get)(t,[...i.pathToConditionsObject,"conditions"],{}),p=ce(o,d);return s[i.pathToConditionsObject.join("..")]=p,s},{});var Ce=Object.defineProperty,J=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,ft=Object.prototype.propertyIsEnumerable,Nt=(a,t,o)=>t in a?Ce(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,Zt=(a,t)=>{for(var o in t||(t={}))xe.call(t,o)&&Nt(a,o,t[o]);if(J)for(var o of J(t))ft.call(t,o)&&Nt(a,o,t[o]);return a};const $t=({actions:a,headerBreadCrumbs:t,isFormDisabled:o,onClosed:s,onToggle:i})=>{const{formatMessage:d}=(0,V.useIntl)(),{availableConditions:p,modifiedData:g,onChangeConditions:E}=(0,be.$_)(),b=(0,e.useMemo)(()=>Object.entries($()(p,"category")),[p]),S=a.filter(({isDisplayed:w,hasSomeActionsSelected:N,hasAllActionsSelected:q})=>w&&(N||q)),L=(0,e.useMemo)(()=>ot(S,g,b),[S,g,b]),[B,z]=(0,e.useState)(L),j=(w,N)=>{z((0,Ve.default)(q=>{q[w]||(q[w]={}),q[w].default||(q[w].default={}),q[w].default=N}))},U=()=>{const w=Object.entries(B).reduce((N,q)=>{const[he,Ke]=q,Me=Object.values(Ke).reduce((Se,Ie)=>Zt(Zt({},Se),Ie),{});return N[he]=Me,N},{});E(w),i()};return e.createElement(dt.P,{labelledBy:"condition-modal-breadcrumbs",onClose:s},e.createElement(st.x,null,e.createElement(ne.O,{id:"condition-modal-breadcrumbs",label:t.join(", ")},t.map(w=>e.createElement(ne.$,{key:w},I()(d({id:w,defaultMessage:w})))))),e.createElement(nt.f,null,S.length===0&&e.createElement(me.Z,null,d({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,S.map(({actionId:w,label:N,pathToConditionsObject:q},he)=>{const Ke=q.join("..");return e.createElement(te,{key:w,arrayOfOptionsGroupedByCategory:b,label:N,isFormDisabled:o,isGrey:he%2===0,name:Ke,onChange:j,value:f()(B,Ke,{})})}))),e.createElement(rt.m,{startActions:e.createElement(Ne.z,{variant:"tertiary",onClick:i},d({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(Ne.z,{onClick:U},d({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};$t.propTypes={actions:r().arrayOf(r().shape({actionId:r().string.isRequired,checkboxName:r().string,hasSomeActionsSelected:r().bool.isRequired,hasAllActionsSelected:r().bool,isDisplayed:r().bool.isRequired,label:r().string})).isRequired,headerBreadCrumbs:r().arrayOf(r().string).isRequired,isFormDisabled:r().bool.isRequired,onClosed:r().func.isRequired,onToggle:r().func.isRequired};const Wt=$t,ut=`${120/16}rem`,zt=`${200/16}rem`,bt=`${53/16}rem`,ht=P.default.div`
25
- width: ${ut};
26
- `,St=(0,P.default)(x.k)`
27
- padding-right: ${({theme:a})=>a.spaces[2]};
28
- overflow: hidden;
29
- flex: 1;
30
- ${({isCollapsable:a})=>a&&"cursor: pointer;"}
31
- `;var fn=Object.defineProperty,Ut=Object.getOwnPropertySymbols,hn=Object.prototype.hasOwnProperty,vn=Object.prototype.propertyIsEnumerable,Vt=(a,t,o)=>t in a?fn(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,yn=(a,t)=>{for(var o in t||(t={}))hn.call(t,o)&&Vt(a,o,t[o]);if(Ut)for(var o of Ut(t))vn.call(t,o)&&Vt(a,o,t[o]);return a};const Pt=({children:a,isCollapsable:t,isActive:o,isFormDisabled:s,label:i,onChange:d,onClick:p,checkboxName:g,someChecked:E,value:b})=>{const{formatMessage:S}=(0,V.useIntl)();return e.createElement(x.k,{alignItems:"center",paddingLeft:6,style:{width:zt,flexShrink:0}},e.createElement(A.x,{paddingRight:2},e.createElement(re.C,{name:g,"aria-label":S({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:s,onValueChange:L=>d({target:{name:g,value:L}}),indeterminate:E,value:b})),e.createElement(St,yn({title:i,alignItems:"center",isCollapsable:t},t&&{onClick:p,"aria-expanded":o,onKeyDown:({key:L})=>(L==="Enter"||L===" ")&&p(),tabIndex:0,role:"button"}),e.createElement(me.Z,{fontWeight:o?"bold":"",textColor:o?"primary600":"neutral800",ellipsis:!0},I()(i)),a))};Pt.defaultProps={children:null,checkboxName:"",onChange(){},value:!1,someChecked:!1,isCollapsable:!1},Pt.propTypes={checkboxName:r().string,children:r().node,label:r().string.isRequired,isCollapsable:r().bool,isFormDisabled:r().bool.isRequired,onChange:r().func,onClick:r().func.isRequired,someChecked:r().bool,value:r().bool,isActive:r().bool.isRequired};const kt=(0,e.memo)(Pt),Dt=a=>(0,v.isObject)(a)?(0,v.flattenDeep)(Object.values(a).map(t=>(0,v.isObject)(t)?Dt(t):t)):[],mt=Dt,Kt=a=>a?Object.keys(a).reduce((t,o)=>(o!=="conditions"&&(t[o]=a[o]),t),{}):null,it=a=>{const t=Kt(a),o=mt(t);if(!o.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const s=o.every(d=>d),i=o.some(d=>d)&&!s;return{hasAllActionsSelected:s,hasSomeActionsSelected:i}},Cn=(a,t,o)=>a.map(({actionId:s,isDisplayed:i,applyToProperties:d,label:p})=>{if(!i)return{actionId:s,hasSomeActionsSelected:!1,isDisplayed:i};const g=[...o.split(".."),s],E=(0,v.isEmpty)(d)?[...g,"properties","enabled"]:g,b=E.join(".."),S=(0,v.get)(t,[...g,"conditions"],null),L=mt(S).some(U=>U);if((0,v.isEmpty)(d)){const U=(0,v.get)(t,E,!1);return{actionId:s,checkboxName:b,hasAllActionsSelected:U,hasConditions:L,hasSomeActionsSelected:U,isDisplayed:i,isParentCheckbox:!1,label:p,pathToConditionsObject:g}}const B=(0,v.get)(t,E,null),{hasAllActionsSelected:z,hasSomeActionsSelected:j}=it(B);return{actionId:s,checkboxName:b,hasAllActionsSelected:z,hasConditions:L,hasSomeActionsSelected:j,isDisplayed:i,isParentCheckbox:!0,label:p,pathToConditionsObject:g}});var Mt=n(16899);const vt=(0,P.default)(Mt.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
- `,yt=a=>`
37
- ${me.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
- `;var En=function(){return window&&window.strapi&&window.strapi.isEE?n(68464).Z:n(35123).Z}(),Xt=function a(t,o){return`
48
- `.concat(Tt,` {
49
- background-color: `).concat(t.colors.primary100,`;
50
- color: `).concat(t.colors.primary600,`;
51
- border-radius: `).concat(o?"2px 2px 0 0":"2px",`;
52
- }
53
- `).concat(Qt,` {
54
- display: flex;
55
- }
56
- `).concat(Qe,` {
57
- display: block;
58
- }
59
- &:hover {
60
- `).concat(yt(t),`
61
- }
62
-
63
- &:focus-within {
64
- `).concat(function(s){var i=s.theme,d=s.isActive;return a(i,d)},`
65
- }
66
-
67
- `)},Tt=P.default.div.withConfig({displayName:"Collapse__Wrapper",componentId:"sc-132fji1-0"})(["flex:1;display:flex;align-items:center;height:",";background-color:",";border:1px solid transparent;"],bt,function(a){var t=a.isGrey,o=a.theme;return t?o.colors.neutral100:o.colors.neutral0}),bn=P.default.div.withConfig({displayName:"Collapse__BoxWrapper",componentId:"sc-132fji1-1"})(["display:inline-flex;min-width:100%;","{display:none;}"," &:hover{","}"],Qe,function(a){var t=a.isActive,o=a.theme;return t&&Xt(o,t)},function(a){var t=a.theme,o=a.isActive;return Xt(t,o)}),Lt=(0,P.default)(x.k).withConfig({displayName:"Collapse__Cell",componentId:"sc-132fji1-2"})(["width:",";position:relative;"],ut),Qt=(0,P.default)(A.x).withConfig({displayName:"Collapse__Chevron",componentId:"sc-132fji1-3"})(["display:none;svg{width:11px;}*{fill:",";}"],function(a){var t=a.theme;return t.colors.primary600}),Yt=P.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 t=a.theme;return t.colors.primary600}),Sn=(0,P.default)(A.x).withConfig({displayName:"Collapse__AbsoluteBox",componentId:"sc-132fji1-5"})(["position:absolute;right:9px;transform:translateY(10px);"]),Jt=function(t){var o=t.availableActions,s=t.isActive,i=t.isGrey,d=t.isFormDisabled,p=t.label,g=t.onClickToggle,E=t.pathToData,b=(0,e.useState)(!1),S=(0,Oe.Z)(b,2),L=S[0],B=S[1],z=(0,V.useIntl)(),j=z.formatMessage,U=(0,be.$_)(),w=U.modifiedData,N=U.onChangeParentCheckbox,q=U.onChangeSimpleCheckbox,he=function(){B(function(Ee){return!Ee})},Ke=function(){B(!1)},Me=f()(w,E.split(".."),{}),Se=(0,e.useMemo)(function(){return Object.keys(Me).reduce(function(se,Ee){return se[Ee]=Xe()(Me[Ee],"conditions"),se},{})},[Me]),Ie=it(Se),Le=Ie.hasAllActionsSelected,Ct=Ie.hasSomeActionsSelected,ve=(0,e.useMemo)(function(){return Cn(o,w,E)},[o,w,E]),Fe=ve.some(function(se){var Ee=se.hasConditions;return Ee});return e.createElement(bn,{isActive:s},e.createElement(Tt,{isGrey:i},e.createElement(kt,{isCollapsable:!0,isFormDisabled:d,label:p,checkboxName:E,onChange:N,onClick:g,someChecked:Ct,value:Le,isActive:s},e.createElement(Qt,{paddingLeft:2},s?e.createElement(ze.Z,null):e.createElement(K.Z,null))),e.createElement(x.k,{style:{flex:1}},ve.map(function(se){var Ee=se.actionId,Pe=se.hasConditions,we=se.hasAllActionsSelected,$e=se.hasSomeActionsSelected,gt=se.isDisplayed,ke=se.isParentCheckbox,ct=se.checkboxName,Rt=se.label;return gt?ke?e.createElement(Lt,{key:Ee,justifyContent:"center",alignItems:"center"},Pe&&e.createElement(Yt,null),e.createElement(re.C,{disabled:d||En,name:ct,"aria-label":j({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(Rt," ").concat(p)}),onValueChange:function(Et){N({target:{name:ct,value:Et}})},indeterminate:$e,value:we})):e.createElement(Lt,{key:Ee,justifyContent:"center",alignItems:"center"},Pe&&e.createElement(Yt,null),e.createElement(re.C,{disabled:d||En,indeterminate:Pe,name:ct,onValueChange:function(Et){q({target:{name:ct,value:Et}})},value:we})):e.createElement(ht,{key:Ee})})),L&&e.createElement(Wt,{headerBreadCrumbs:[p,"Settings.permissions.conditions.conditions"],actions:ve,isFormDisabled:d,onClosed:Ke,onToggle:he})),e.createElement(Sn,null,e.createElement(Qe,{onClick:he,hasConditions:Fe})))};Jt.propTypes={availableActions:r().array.isRequired,isActive:r().bool.isRequired,isGrey:r().bool.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,onClickToggle:r().func.isRequired,pathToData:r().string.isRequired};const Pn=Jt,An=(a,t)=>a.map(o=>{const s=Array.isArray(o.applyToProperties)&&o.applyToProperties.indexOf(t)!==-1&&o.isDisplayed;return{label:o.label,actionId:o.actionId,isActionRelatedToCurrentProperty:s}}),qt=(0,P.default)(x.k)`
68
- width: ${ut};
69
- flex-shrink: 0;
70
- `,_t=(0,P.default)(x.k)`
71
- width: ${zt};
72
- height: ${bt};
73
- flex-shrink: 0;
74
- `,en=({headers:a,label:t})=>{const{formatMessage:o}=(0,V.useIntl)(),s=o({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:t});return e.createElement(x.k,null,e.createElement(_t,{alignItems:"center",paddingLeft:6},e.createElement(me.Z,{variant:"sigma",textColor:"neutral500"},s)),a.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(qt,{justifyContent:"center",key:i.label},e.createElement(me.Z,{variant:"sigma",textColor:"neutral500"},o({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(qt,{key:i.label})))};en.propTypes={headers:r().arrayOf(r().shape({label:r().string.isRequired,isActionRelatedToCurrentProperty:r().bool.isRequired})).isRequired,label:r().string.isRequired};const Rn=en;var xt=n(15685);const tn=P.default.span`
75
- color: ${({theme:a})=>a.colors.danger700};
76
- padding-left: ${({theme:a})=>a.spaces[1]}px;
77
- `,nn=()=>e.createElement(tn,null,"*");var Dn=Object.defineProperty,ro=Object.defineProperties,Mn=Object.getOwnPropertyDescriptors,on=Object.getOwnPropertySymbols,Ln=Object.prototype.hasOwnProperty,io=Object.prototype.propertyIsEnumerable,an=(a,t,o)=>t in a?Dn(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,xn=(a,t)=>{for(var o in t||(t={}))Ln.call(t,o)&&an(a,o,t[o]);if(on)for(var o of on(t))io.call(t,o)&&an(a,o,t[o]);return a},In=(a,t)=>ro(a,Mn(t));const Fn=(a,t)=>a.map(o=>{const s=Array.isArray(o.subjects)&&o.subjects.indexOf(t)!==-1;return In(xn({},o),{isDisplayed:s})});var lo=n(41925),wn=Object.defineProperty,It=Object.getOwnPropertySymbols,et=Object.prototype.hasOwnProperty,Bn=Object.prototype.propertyIsEnumerable,de=(a,t,o)=>t in a?wn(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,sn=(a,t)=>{for(var o in t||(t={}))et.call(t,o)&&de(a,o,t[o]);if(It)for(var o of It(t))Bn.call(t,o)&&de(a,o,t[o]);return a};const jn=(0,P.default)(A.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
- `,Nn=P.default.svg`
88
- position: relative;
89
- flex-shrink: 0;
90
- transform: translate(-0.5px, -1px);
91
-
92
- * {
93
- fill: ${({theme:a,color:t})=>a.colors[t]};
94
- }
95
- `,Ft=a=>e.createElement(jn,null,e.createElement(Nn,sn({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"})));Ft.defaultProps={fill:"primary200"},Ft.propTypes={fill:r().string};const Zn=(0,e.memo)(Ft);var rn=function(){return window&&window.strapi&&window.strapi.isEE?n(19665).Z:n(52124).Z}(),ln=(0,P.default)(x.k).withConfig({displayName:"SubActionRow__Cell",componentId:"sc-7y8yzq-0"})(["width:",";position:relative;"],ut),$n=(0,P.default)(x.k).withConfig({displayName:"SubActionRow__RowWrapper",componentId:"sc-7y8yzq-1"})(["height:",";"],bt),Wn=(0,P.default)(A.x).withConfig({displayName:"SubActionRow__Wrapper",componentId:"sc-7y8yzq-2"})(["padding-left:","rem;"],31/16),zn=(0,P.default)(A.x).withConfig({displayName:"SubActionRow__LeftBorderTimeline",componentId:"sc-7y8yzq-3"})(["border-left:",";"],function(a){var t=a.isVisible,o=a.theme;return t?"4px solid ".concat(o.colors.primary200):"4px solid transparent"}),Un=(0,P.default)(x.k).withConfig({displayName:"SubActionRow__RowStyle",componentId:"sc-7y8yzq-4"})(["padding-left:",";width:","px;"," ",";"],function(a){var t=a.theme;return t.spaces[4]},function(a){var t=a.level;return 145-t*36},function(a){var t=a.isCollapsable,o=a.theme;return t&&`
96
- `.concat(vt,` {
97
- display: block;
98
- color: `).concat(o.colors.neutral100,`;
99
- }
100
- &:hover {
101
- `).concat(yt(o),`
102
- }
103
- `)},function(a){var t=a.isActive,o=a.theme;return t&&yt(o)}),Vn=P.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 t=a.theme;return t.spaces[2]},function(a){var t=a.theme;return t.spaces[2]},4/16,function(a){var t=a.theme;return t.colors.primary200}),cn=function a(t){var o=t.childrenForm,s=t.isFormDisabled,i=t.recursiveLevel,d=t.pathToDataFromActionRow,p=t.propertyActions,g=t.parentName,E=t.propertyName,b=(0,V.useIntl)(),S=b.formatMessage,L=(0,be.$_)(),B=L.modifiedData,z=L.onChangeParentCheckbox,j=L.onChangeSimpleCheckbox,U=(0,e.useState)(null),w=(0,Oe.Z)(U,2),N=w[0],q=w[1],he=function(Se){q(function(Ie){return Ie===Se?null:Se})},Ke=(0,e.useMemo)(function(){return N?o.find(function(Me){var Se=Me.value;return Se===N}):null},[N,o]);return e.createElement(Wn,null,e.createElement(Vn,null),o.map(function(Me,Se){var Ie=Me.label,Le=Me.value,Ct=Me.required,ve=Me.children,Fe=Se+1<o.length,se=Array.isArray(ve),Ee=N===Le;return e.createElement(zn,{key:Le,isVisible:Fe},e.createElement($n,null,e.createElement(Zn,{color:"primary200"}),e.createElement(x.k,{style:{flex:1}},e.createElement(Un,{level:i,isActive:Ee,isCollapsable:se},e.createElement(St,(0,lo.Z)({alignItems:"center",isCollapsable:se},se&&{onClick:function(){return he(Le)},"aria-expanded":Ee,onKeyDown:function(we){var $e=we.key;return($e==="Enter"||$e===" ")&&he(Le)},tabIndex:0,role:"button"},{title:Ie}),e.createElement(me.Z,{ellipsis:!0},I()(Ie)),Ct&&e.createElement(nn,null),e.createElement(vt,{$isActive:Ee}))),e.createElement(x.k,{style:{flex:1}},p.map(function(Pe){var we=Pe.actionId,$e=Pe.label,gt=Pe.isActionRelatedToCurrentProperty;if(!gt)return e.createElement(ht,{key:we});var ke=[].concat((0,xt.Z)(d.split("..")),[we,"properties",E],(0,xt.Z)(g.split("..")),[Le]),ct=f()(B,ke,!1);if(!ve)return e.createElement(ln,{key:$e,justifyContent:"center",alignItems:"center"},e.createElement(re.C,{disabled:s||rn,name:ke.join(".."),"aria-label":S({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(g," ").concat(Ie," ").concat($e)}),onValueChange:function(jt){j({target:{name:ke.join(".."),value:jt}})},value:ct}));var Rt=it(ct),Ot=Rt.hasAllActionsSelected,Et=Rt.hasSomeActionsSelected;return e.createElement(ln,{key:$e,justifyContent:"center",alignItems:"center"},e.createElement(re.C,{key:$e,disabled:s||rn,name:ke.join(".."),"aria-label":S({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(g," ").concat(Ie," ").concat($e)}),onValueChange:function(jt){z({target:{name:ke.join(".."),value:jt}})},value:Ot,indeterminate:Et}))})))),Ke&&Ee&&e.createElement(A.x,{paddingBottom:2},e.createElement(a,{isFormDisabled:s,parentName:"".concat(g,"..").concat(Le),pathToDataFromActionRow:d,propertyActions:p,propertyName:E,recursiveLevel:i+1,childrenForm:Ke.children})))}))};cn.propTypes={childrenForm:r().array.isRequired,isFormDisabled:r().bool.isRequired,parentName:r().string.isRequired,pathToDataFromActionRow:r().string.isRequired,propertyActions:r().array.isRequired,propertyName:r().string.isRequired,recursiveLevel:r().number.isRequired};const kn=(0,e.memo)(cn),dn=a=>a.reduce((o,s)=>(s.isActionRelatedToCurrentProperty&&o.push(s.actionId),o),[]),Gn=(a,t,o,s,i)=>{const p=dn(a).reduce((g,E)=>{const b=[...o.split(".."),E,"properties",s,i],S=(0,v.get)(t,b,!1);return g[E]=S,g},{});return it(p)};var wt=function(){return window&&window.strapi&&window.strapi.isEE?n(32741).Z:n(18318).Z}(),Bt=(0,P.default)(x.k).withConfig({displayName:"ActionRow__Cell",componentId:"sc-4agenc-0"})(["width:",";position:relative;"],ut),un=(0,P.default)(x.k).withConfig({displayName:"ActionRow__Wrapper",componentId:"sc-4agenc-1"})(["height:",";flex:1;"," ",";"],bt,function(a){var t=a.isCollapsable,o=a.theme;return t&&`
104
- `.concat(vt,` {
105
- display: block;
106
- color: `).concat(o.colors.neutral100,`;
107
- }
108
- &:hover {
109
- `).concat(yt(o),`
110
- }
111
- `)},function(a){var t=a.isActive,o=a.theme;return t&&yt(o)}),At=function(t){var o=t.childrenForm,s=t.label,i=t.isFormDisabled,d=t.name,p=t.required,g=t.pathToData,E=t.propertyActions,b=t.propertyName,S=t.isOdd,L=(0,V.useIntl)(),B=L.formatMessage,z=(0,e.useState)(null),j=(0,Oe.Z)(z,2),U=j[0],w=j[1],N=(0,be.$_)(),q=N.modifiedData,he=N.onChangeCollectionTypeLeftActionRowCheckbox,Ke=N.onChangeParentCheckbox,Me=N.onChangeSimpleCheckbox,Se=U===d,Ie=(0,e.useMemo)(function(){return Array.isArray(o)?o:[]},[o]),Le=Ie.length>0,Ct=(0,e.useCallback)(function(){Le&&w(function(Pe){return Pe===d?null:d})},[Le,d]),ve=function(we){var $e=we.target.value;he(g,b,d,$e)},Fe=(0,e.useMemo)(function(){return Gn(E,q,g,b,d)},[E,q,g,b,d]),se=Fe.hasAllActionsSelected,Ee=Fe.hasSomeActionsSelected;return e.createElement(e.Fragment,null,e.createElement(un,{alignItems:"center",isCollapsable:Le,isActive:Se,background:S?"neutral100":"neutral0"},e.createElement(x.k,null,e.createElement(kt,{onChange:ve,onClick:Ct,isCollapsable:Le,isFormDisabled:i,label:s,someChecked:Ee,value:se,isActive:Se},p&&e.createElement(nn,null),e.createElement(vt,{$isActive:Se})),e.createElement(x.k,null,E.map(function(Pe){var we=Pe.label,$e=Pe.isActionRelatedToCurrentProperty,gt=Pe.actionId;if(!$e)return e.createElement(ht,{key:we});var ke=[].concat((0,xt.Z)(g.split("..")),[gt,"properties",b,d]);if(!Le){var ct=f()(q,ke,!1);return e.createElement(Bt,{key:gt,justifyContent:"center",alignItems:"center"},e.createElement(re.C,{disabled:i||wt,name:ke.join(".."),"aria-label":B({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(d," ").concat(we)}),onValueChange:function(no){Me({target:{name:ke.join(".."),value:no}})},value:ct}))}var Rt=f()(q,ke,{}),Ot=it(Rt),Et=Ot.hasAllActionsSelected,to=Ot.hasSomeActionsSelected;return e.createElement(Bt,{key:we,justifyContent:"center",alignItems:"center"},e.createElement(re.C,{disabled:i||wt,name:ke.join(".."),onValueChange:function(no){Ke({target:{name:ke.join(".."),value:no}})},"aria-label":B({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(d," ").concat(we)}),value:Et,indeterminate:to}))})))),Se&&e.createElement(kn,{childrenForm:Ie,isFormDisabled:i,parentName:d,pathToDataFromActionRow:g,propertyName:b,propertyActions:E,recursiveLevel:0}))};At.defaultProps={childrenForm:[],required:!1},At.propTypes={childrenForm:r().array,label:r().string.isRequired,isFormDisabled:r().bool.isRequired,name:r().string.isRequired,pathToData:r().string.isRequired,propertyActions:r().array.isRequired,propertyName:r().string.isRequired,required:r().bool,isOdd:r().bool.isRequired};const Kn=(0,e.memo)(At),mn=P.default.div`
112
- display: inline-flex;
113
- flex-direction: column;
114
- min-width: 0;
115
- `,pn=({availableActions:a,childrenForm:t,isFormDisabled:o,label:s,pathToData:i,propertyName:d})=>{const p=(0,e.useMemo)(()=>An(a,d),[a,d]);return e.createElement(mn,null,e.createElement(Rn,{label:s,headers:p}),e.createElement(A.x,null,t.map(({children:g,label:E,value:b,required:S},L)=>e.createElement(Kn,{childrenForm:g,key:b,label:E,isFormDisabled:o,name:b,required:S,propertyActions:p,pathToData:i,propertyName:d,isOdd:L%2===0}))))};pn.propTypes={childrenForm:r().array.isRequired,availableActions:r().array.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,pathToData:r().string.isRequired,propertyName:r().string.isRequired};const m=pn,c=P.default.div`
116
- flex-direction: column;
117
- display: inline-flex;
118
- min-width: 100%;
119
- ${({theme:a,isActive:t})=>t&&`border: 1px solid ${a.colors.primary600};`}
120
- `,l=({allActions:a,contentTypeName:t,label:o,index:s,isActive:i,isFormDisabled:d,onClickToggleCollapse:p,pathToData:g,properties:E})=>{const b=(0,e.useCallback)(()=>{p(t)},[t,p]),S=(0,e.useMemo)(()=>Fn(a,t),[a,t]);return e.createElement(c,{isActive:i},e.createElement(Pn,{availableActions:S,isActive:i,isGrey:s%2===0,isFormDisabled:d,label:o,onClickToggle:b,pathToData:g}),i&&E.map(({label:L,value:B,children:z})=>e.createElement(m,{availableActions:S,childrenForm:z,isFormDisabled:d,label:L,pathToData:g,propertyName:B,key:B})))};l.propTypes={allActions:r().array.isRequired,contentTypeName:r().string.isRequired,index:r().number.isRequired,isActive:r().bool.isRequired,isFormDisabled:r().bool.isRequired,label:r().string.isRequired,onClickToggleCollapse:r().func.isRequired,pathToData:r().string.isRequired,properties:r().array.isRequired};const h=l,u=({actions:a,isFormDisabled:t,pathToData:o,subjects:s})=>{const[i,d]=(0,e.useState)(null),p=g=>{d(i===g?null:g)};return s.map(({uid:g,label:E,properties:b},S)=>e.createElement(h,{allActions:a,key:g,contentTypeName:g,label:E,isActive:i===g,isFormDisabled:t,index:S,onClickToggleCollapse:p,pathToData:`${o}..${g}`,properties:b}))};u.defaultProps={actions:[],subjects:[]},u.propTypes={actions:r().array.isRequired,isFormDisabled:r().bool.isRequired,pathToData:r().string.isRequired,subjects:r().arrayOf(r().shape({uid:r().string.isRequired,label:r().string.isRequired,properties:r().array.isRequired}))};const T=(0,e.memo)(u);var M=n(27677);const y=a=>a.filter(({subjects:t})=>t&&t.length);var D=Object.defineProperty,fe=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,qe=Object.prototype.propertyIsEnumerable,pt=(a,t,o)=>t in a?D(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,at=(a,t)=>{for(var o in t||(t={}))ue.call(t,o)&&pt(a,o,t[o]);if(fe)for(var o of fe(t))qe.call(t,o)&&pt(a,o,t[o]);return a};const tt=a=>a.map(({actionId:t})=>t),lt=(a,t)=>a.reduce((o,s)=>(Object.keys(t).forEach(i=>{const d=(0,v.get)(t,[i,s],{}),p={[i]:Kt(d)};o[s]?o[s]=at(at({},o[s]),p):o[s]=p}),o),{}),Xo=(a,t)=>{const o=tt(a),s=lt(o,t);return Object.keys(s).reduce((d,p)=>(d[p]=it(s[p]),d),{})};var Qo=function(){return window&&window.strapi&&window.strapi.isEE?n(36950).Z:n(61526).Z}(),Yo=(0,P.default)(M.K).withConfig({displayName:"GlobalActions__CenteredStack",componentId:"sc-1vxwsjr-0"})(["align-items:center;justify-content:center;width:",";flex-shrink:0;"],ut),Hn=function(t){var o=t.actions,s=t.isFormDisabled,i=t.kind,d=(0,V.useIntl)(),p=d.formatMessage,g=(0,be.$_)(),E=g.modifiedData,b=g.onChangeCollectionTypeGlobalActionCheckbox,S=(0,e.useMemo)(function(){return y(o)},[o]),L=(0,e.useMemo)(function(){return Xo(S,E[i])},[E,S,i]);return e.createElement(A.x,{paddingBottom:4,paddingTop:6,style:{paddingLeft:zt}},e.createElement(M.K,{horizontal:!0,spacing:0},S.map(function(B){var z=B.label,j=B.actionId;return e.createElement(Yo,{key:j,spacing:3},e.createElement(me.Z,{variant:"sigma",textColor:"neutral500"},p({id:"Settings.roles.form.permissions.".concat(z.toLowerCase()),defaultMessage:z})),e.createElement(re.C,{disabled:s||Qo,onValueChange:function(w){b(i,j,w)},name:j,"aria-label":p({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:p({id:"Settings.roles.form.permissions.".concat(z.toLowerCase()),defaultMessage:z})}),value:f()(L,[j,"hasAllActionsSelected"],!1),indeterminate:f()(L,[j,"hasSomeActionsSelected"],!1)}))})))};Hn.defaultProps={actions:[]},Hn.propTypes={actions:r().arrayOf(r().shape({label:r().string.isRequired,actionId:r().string.isRequired,subjects:r().array.isRequired})),isFormDisabled:r().bool.isRequired,kind:r().string.isRequired};const Jo=(0,e.memo)(Hn),qo=(0,P.default)(A.x)`
121
- overflow-x: auto;
122
- `,uo=({isFormDisabled:a,kind:t,layout:{actions:o,subjects:s}})=>{const i=Y()([...s],"label");return e.createElement(qo,{background:"neutral0"},e.createElement(Jo,{actions:o,kind:t,isFormDisabled:a}),e.createElement(T,{actions:o,isFormDisabled:a,pathToData:t,subjects:i}))};uo.propTypes={isFormDisabled:r().bool.isRequired,kind:r().string.isRequired,layout:r().shape({actions:r().array,subjects:r().arrayOf(r().shape({uid:r().string.isRequired,label:r().string.isRequired,properties:r().array.isRequired}))}).isRequired};const mo=(0,e.memo)(uo);var _o=n(66694);const po=({children:a,value:t})=>e.createElement(_o.$l.Provider,{value:t},a);po.propTypes={children:r().node.isRequired,value:r().exact({availableConditions:r().array.isRequired,modifiedData:r().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:r().func.isRequired,onChangeConditions:r().func.isRequired,onChangeSimpleCheckbox:r().func.isRequired,onChangeParentCheckbox:r().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:r().func.isRequired}).isRequired};const ea=po;var ta=n(83828),na=n(61762),oa=n(89966),aa=n(15335),sa=n(5803),go=n(8284),ra=Object.defineProperty,ia=Object.defineProperties,la=Object.getOwnPropertyDescriptors,fo=Object.getOwnPropertySymbols,ca=Object.prototype.hasOwnProperty,da=Object.prototype.propertyIsEnumerable,ho=(a,t,o)=>t in a?ra(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,ua=(a,t)=>{for(var o in t||(t={}))ca.call(t,o)&&ho(a,o,t[o]);if(fo)for(var o of fo(t))da.call(t,o)&&ho(a,o,t[o]);return a},ma=(a,t)=>ia(a,la(t));const pa=(a,t,o)=>a.map(s=>{const i=[...o,s.action,"properties","enabled"],d=(0,v.get)(t,i,!1),p=(0,v.get)(t,[...o,s.action,"conditions"],{}),g=mt(p).some(E=>E);return ma(ua({},s),{isDisplayed:d,checkboxName:i.join(".."),hasSomeActionsSelected:d,value:d,hasConditions:g,label:s.displayName,actionId:s.action,pathToConditionsObject:[...o,s.action]})}),ga=a=>{const t=Object.entries(a).reduce((s,i)=>{const[d,{conditions:p}]=i;return s[d]=p,s},{});return mt(t).some(s=>s)};var Xn=function(){return window&&window.strapi&&window.strapi.isEE?n(96556).Z:n(16437).Z}(),fa=P.default.div.withConfig({displayName:"SubCategory__Border",componentId:"sc-akgczm-0"})(["flex:1;align-self:center;border-top:1px solid ",";"],function(a){var t=a.theme;return t.colors.neutral150}),ha=P.default.div.withConfig({displayName:"SubCategory__CheckboxWrapper",componentId:"sc-akgczm-1"})(["position:relative;word-break:keep-all;",""],function(a){var t=a.hasConditions,o=a.disabled,s=a.theme;return t&&`
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
- `)}),vo=function(t){var o=t.categoryName,s=t.isFormDisabled,i=t.subCategoryName,d=t.actions,p=t.pathToData,g=(0,e.useState)(!1),E=(0,Oe.Z)(g,2),b=E[0],S=E[1],L=(0,be.$_)(),B=L.modifiedData,z=L.onChangeParentCheckbox,j=L.onChangeSimpleCheckbox,U=(0,V.useIntl)(),w=U.formatMessage,N=f()(B,p,{}),q=(0,e.useMemo)(function(){return Object.keys(N).reduce(function(ve,Fe){return ve[Fe]=Kt(N[Fe]),ve},{})},[N]),he=it(q),Ke=he.hasAllActionsSelected,Me=he.hasSomeActionsSelected,Se=function(){S(function(Fe){return!Fe})},Ie=function(){S(!1)},Le=pa(d,B,p),Ct=ga(f()(B,(0,xt.Z)(p),{}));return e.createElement(e.Fragment,null,e.createElement(A.x,null,e.createElement(x.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(A.x,{paddingRight:4},e.createElement(me.Z,{variant:"sigma",textColor:"neutral600"},i)),e.createElement(fa,null),e.createElement(A.x,{paddingLeft:4},e.createElement(go.X,{name:p.join(".."),disabled:s||Xn,onValueChange:function(Fe){z({target:{name:p.join(".."),value:Fe}})},indeterminate:Me,value:Ke},w({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(x.k,{paddingTop:6,paddingBottom:6},e.createElement(aa.r,{gap:2,style:{flex:1}},Le.map(function(ve){var Fe=ve.checkboxName,se=ve.value,Ee=ve.action,Pe=ve.displayName,we=ve.hasConditions;return e.createElement(sa.P,{col:3,key:Ee},e.createElement(ha,{disabled:s||Xn,hasConditions:we},e.createElement(go.X,{name:Fe,disabled:s||Xn,onValueChange:function(gt){j({target:{name:Fe,value:gt}})},value:se},Pe)))})),e.createElement(Qe,{hasConditions:Ct,onClick:Se}))),b&&e.createElement(Wt,{headerBreadCrumbs:[o,i],actions:Le,isFormDisabled:s,onClosed:Ie,onToggle:Se}))};vo.propTypes={actions:r().array.isRequired,categoryName:r().string.isRequired,isFormDisabled:r().bool.isRequired,subCategoryName:r().string.isRequired,pathToData:r().array.isRequired};const va=vo,Qn=({childrenForm:a,kind:t,name:o,isOpen:s,isFormDisabled:i,isWhite:d,onOpenCategory:p,pathToData:g})=>{const{formatMessage:E}=(0,V.useIntl)(),b=()=>{p(o)},S=(0,e.useMemo)(()=>o.split("::").pop(),[o]);return e.createElement(ta.U,{expanded:s,onToggle:b,id:`accordion-${o}`,variant:d?"primary":"secondary"},e.createElement(na.B,{title:I()(S),description:`${E({id:"Settings.permissions.category"},{category:S})} ${t==="plugins"?"plugin":t}`}),e.createElement(oa.v,null,e.createElement(A.x,{padding:6},a.map(({actions:L,subCategoryName:B,subCategoryId:z})=>e.createElement(va,{key:B,actions:L,categoryName:S,isFormDisabled:i,subCategoryName:B,pathToData:[...g,z]})))))};Qn.defaultProps={},Qn.propTypes={childrenForm:r().array.isRequired,isOpen:r().bool.isRequired,isFormDisabled:r().bool.isRequired,isWhite:r().bool.isRequired,kind:r().string.isRequired,name:r().string.isRequired,onOpenCategory:r().func.isRequired,pathToData:r().array.isRequired};const ya=Qn,yo=({isFormDisabled:a,kind:t,layout:o})=>{const[s,i]=(0,e.useState)(null),d=p=>{i(p===s?null:p)};return e.createElement(A.x,{padding:6,background:"neutral0"},o.map(({category:p,categoryId:g,childrenForm:E},b)=>e.createElement(ya,{key:p,childrenForm:E,kind:t,isFormDisabled:a,isOpen:s===p,isWhite:b%2===1,name:p,onOpenCategory:d,pathToData:[t,g]})))};yo.propTypes={isFormDisabled:r().bool.isRequired,kind:r().string.isRequired,layout:r().arrayOf(r().shape({category:r().string.isRequired,categoryId:r().string.isRequired,childrenForm:r().arrayOf(r().shape({actions:r().array.isRequired})).isRequired}).isRequired).isRequired};const Co=yo,Eo=(a,t,o)=>a.find(s=>s.action===t&&s.subject===o);var Ca=Object.defineProperty,Ea=Object.defineProperties,ba=Object.getOwnPropertyDescriptors,bo=Object.getOwnPropertySymbols,Sa=Object.prototype.hasOwnProperty,Pa=Object.prototype.propertyIsEnumerable,So=(a,t,o)=>t in a?Ca(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,Po=(a,t)=>{for(var o in t||(t={}))Sa.call(t,o)&&So(a,o,t[o]);if(bo)for(var o of bo(t))Pa.call(t,o)&&So(a,o,t[o]);return a},To=(a,t)=>Ea(a,ba(t));const Ao=(a,t=[])=>a.reduce((o,s)=>(o[s.id]=t.indexOf(s.id)!==-1,o),{}),Ro=({children:a},t,o="")=>a.reduce((s,i)=>{if(i.children)return To(Po({},s),{[i.value]:Ro(i,t,`${o}${i.value}.`)});const d=t.indexOf(`${o}${i.value}`)!==-1;return s[i.value]=d,s},{}),Ta=(a,t,o)=>a.reduce((s,i)=>{const d=t.properties.find(({value:p})=>p===i);if(d){const p=(0,v.get)(o,["properties",d.value],[]),g=Ro(d,p);s.properties[i]=g}return s},{properties:{}}),Aa=(a,t)=>t.reduce((o,s)=>{const i=a.find(({uid:d})=>d===s)||null;return i&&(o[s]=i),o},{}),Oo=({subjects:a},t,o,s=[])=>t.reduce((i,d)=>{const p=d.subjects,g=Aa(a,p);if((0,v.isEmpty)(g))return i;const E=Object.keys(g).reduce((b,S)=>{const{actionId:L,applyToProperties:B}=d,U=g[S].properties.map(({value:he})=>he).every(he=>(B||[]).indexOf(he)===-1),w=Eo(s,L,S),N=Ao(o,(0,v.get)(w,"conditions",[]));if((0,v.isEmpty)(B)||U)return(0,v.set)(b,[S,L],{properties:{enabled:w!==void 0},conditions:N}),b;const q=Ta(B,g[S],w);return(0,v.set)(b,[S,L],To(Po({},q),{conditions:N})),b},{});return(0,v.merge)(i,E)},{}),Ra=(a,t,o)=>a.reduce((s,i)=>{const d=Eo(o,i.action,null);return s[i.action]={properties:{enabled:d!==void 0},conditions:Ao(t,(0,v.get)(d,"conditions",[]))},s},{}),Oa=(a,t,o)=>a.reduce((s,i)=>(s[i.subCategoryId]=Ra(i.actions,t,o),s),{}),Do=(a,t,o=[])=>a.reduce((s,{categoryId:i,childrenForm:d})=>{const p=Oa(d,t,o);return s[i]=p,s},{}),Mo=a=>a.split(" ").join("-"),Lo=(a,t)=>(0,v.chain)(a).groupBy(t).map((o,s)=>({category:s,categoryId:Mo(s),childrenForm:(0,v.chain)(o).groupBy("subCategory").map((i,d)=>({subCategoryName:d,subCategoryId:Mo(d),actions:i})).value()})).value(),Da=(a,t)=>{const{conditions:o,sections:{collectionTypes:s,singleTypes:i,plugins:d,settings:p}}=a,g={collectionTypes:s,singleTypes:i,plugins:Lo(d,"plugin"),settings:Lo(p,"category")},E={collectionTypes:Oo(s,s.actions||[],o,t),singleTypes:Oo(i,i.actions||[],o,t),plugins:Do(g.plugins,o,t),settings:Do(g.settings,o,t)};return{initialData:E,modifiedData:E,layouts:g}};var Ma=Object.defineProperty,La=Object.defineProperties,xa=Object.getOwnPropertyDescriptors,xo=Object.getOwnPropertySymbols,Ia=Object.prototype.hasOwnProperty,Fa=Object.prototype.propertyIsEnumerable,Io=(a,t,o)=>t in a?Ma(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,Yn=(a,t)=>{for(var o in t||(t={}))Ia.call(t,o)&&Io(a,o,t[o]);if(xo)for(var o of xo(t))Fa.call(t,o)&&Io(a,o,t[o]);return a},Jn=(a,t)=>La(a,xa(t));const Fo=a=>Object.keys(a).reduce((t,o)=>{const s=a[o];if((0,v.isObject)(s)&&!(0,v.has)(s,"conditions"))return Jn(Yn({},t),{[o]:Fo(s)});if((0,v.isObject)(s)&&(0,v.has)(s,"conditions")&&!mt((0,v.omit)(s,"conditions")).some(d=>d)){const d=Object.keys(s.conditions).reduce((p,g)=>(p[g]=!1,p),{});return Jn(Yn({},t),{[o]:Jn(Yn({},s),{conditions:d})})}return t[o]=s,t},{}),qn=Fo;var wa=Object.defineProperty,Ba=Object.defineProperties,ja=Object.getOwnPropertyDescriptors,wo=Object.getOwnPropertySymbols,Na=Object.prototype.hasOwnProperty,Za=Object.prototype.propertyIsEnumerable,Bo=(a,t,o)=>t in a?wa(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,$a=(a,t)=>{for(var o in t||(t={}))Na.call(t,o)&&Bo(a,o,t[o]);if(wo)for(var o of wo(t))Za.call(t,o)&&Bo(a,o,t[o]);return a},Wa=(a,t)=>Ba(a,ja(t));const jo=(a,t)=>Object.keys(a).reduce((o,s)=>{const i=a[s];return s==="conditions"?(o[s]=i,o):(0,v.isObject)(i)?Wa($a({},o),{[s]:jo(i,t)}):(o[s]=t,o)},{}),gn=jo;var za=Object.defineProperty,Ua=Object.defineProperties,Va=Object.getOwnPropertyDescriptors,No=Object.getOwnPropertySymbols,ka=Object.prototype.hasOwnProperty,Ga=Object.prototype.propertyIsEnumerable,Zo=(a,t,o)=>t in a?za(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,Ka=(a,t)=>{for(var o in t||(t={}))ka.call(t,o)&&Zo(a,o,t[o]);if(No)for(var o of No(t))Ga.call(t,o)&&Zo(a,o,t[o]);return a},Ha=(a,t)=>Ua(a,Va(t));const Xa={initialData:{},modifiedData:{},layouts:{}},Qa=(a,t)=>(0,Ve.default)(a,o=>{switch(t.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:s,actionId:i,value:d}=t,p=["modifiedData",s];Object.keys((0,v.get)(a,p)).forEach(g=>{const E=(0,v.get)(a,[...p,g,i],void 0);if(E){let b=gn(E,d);if(!d&&b.conditions){const S=gn(b.conditions,!1);b=Ha(Ka({},b),{conditions:S})}(0,v.set)(o,[...p,g,i],b)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:s,propertyName:i,rowName:d,value:p}=t;let g=(0,v.cloneDeep)(a.modifiedData);const E=s.split(".."),b=(0,v.get)(g,E,{});Object.keys(b).forEach(S=>{if((0,v.has)(b[S],`properties.${i}`)){const L=(0,v.get)(b,[S,"properties",i,d]),B=[...E,S,"properties",i,d];if(!(0,v.isObject)(L))(0,v.set)(g,B,p);else{const z=gn(L,p);(0,v.set)(g,B,z)}}}),p||(g=qn(g)),(0,v.set)(o,"modifiedData",g);break}case"ON_CHANGE_CONDITIONS":{Object.entries(t.conditions).forEach(s=>{const[i,d]=s;(0,v.set)(o,["modifiedData",...i.split(".."),"conditions"],d)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let s=(0,v.cloneDeep)(a.modifiedData);(0,v.set)(s,[...t.keys.split("..")],t.value),t.value||(s=qn(s)),(0,v.set)(o,"modifiedData",s);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:s,value:i}=t,d=[...s.split("..")];let p=(0,v.cloneDeep)(a.modifiedData);const g=(0,v.get)(p,d,{}),E=gn(g,i);(0,v.set)(p,d,E),i||(p=qn(p)),(0,v.set)(o,["modifiedData"],p);break}case"RESET_FORM":{o.modifiedData=a.initialData;break}case"SET_FORM_AFTER_SUBMIT":{o.initialData=a.modifiedData;break}default:return o}}),_n=a=>Object.entries(a).filter(([,t])=>t).map(([t])=>t),Ya=a=>{const[t,{conditions:o}]=a;return{action:t,subject:null,conditions:_n(o),properties:{}}},Ja=a=>Object.values(a).reduce((t,o)=>{const s=Object.entries(o).reduce((i,d)=>{const[,{properties:{enabled:p}}]=d;if(!p)return i;const g=Ya(d);return i.push(g),i},[]);return[...t,...s]},[]),$o=a=>Object.values(a).reduce((t,o)=>{const s=Ja(o);return[...t,...s]},[]),Wo=(a,t="")=>Object.entries(a).reduce((o,s)=>{const[i,d]=s;return(0,v.isObject)(d)?[...o,...Wo(d,`${t}${i}.`)]:(d&&!(0,v.isObject)(d)&&o.push(`${t}${i}`),o)},[]),qa=(a,t,{conditions:o,properties:s})=>Object.entries(s).reduce((i,d)=>{const[p,g]=d;return i.properties[p]=Wo(g),i},{action:a,subject:t,conditions:_n(o),properties:{}}),_a=(a,t,{conditions:o})=>({action:a,subject:t,properties:{},conditions:_n(o)}),es=(a,t)=>Object.entries(t).reduce((s,i)=>{const[d,p]=i;if(!mt(p).some(b=>b))return s;if(!(0,v.has)(p,"properties.enabled")){const b=qa(d,a,p);return[...s,b]}if(!p.properties.enabled)return s;const E=_a(d,a,p);return s.push(E),s},[]),zo=a=>Object.entries(a).reduce((o,s)=>{const[i,d]=s,p=es(i,d);return[...o,...p]},[]),ts=a=>{const t=$o(a.plugins),o=$o(a.settings),s=zo(a.collectionTypes),i=zo(a.singleTypes);return[...t,...o,...s,...i]},ns=[{labelId:"app.components.LeftMenuLinkContainer.collectionTypes",defaultMessage:"Collection Types",id:"collectionTypes"},{labelId:"app.components.LeftMenuLinkContainer.singleTypes",id:"singleTypes",defaultMessage:"Single Types"},{labelId:"app.components.LeftMenuLinkContainer.plugins",defaultMessage:"Plugins",id:"plugins"},{labelId:"app.components.LeftMenuLinkContainer.settings",defaultMessage:"Settings",id:"settings"}];var os=Object.defineProperty,Uo=Object.getOwnPropertySymbols,as=Object.prototype.hasOwnProperty,ss=Object.prototype.propertyIsEnumerable,Vo=(a,t,o)=>t in a?os(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o,ko=(a,t)=>{for(var o in t||(t={}))as.call(t,o)&&Vo(a,o,t[o]);if(Uo)for(var o of Uo(t))ss.call(t,o)&&Vo(a,o,t[o]);return a};const eo=(0,e.forwardRef)(({layout:a,isFormDisabled:t,permissions:o},s)=>{const[{initialData:i,layouts:d,modifiedData:p},g]=(0,e.useReducer)(Qa,Xa,()=>Da(a,o)),{formatMessage:E}=(0,V.useIntl)();(0,e.useImperativeHandle)(s,()=>({getPermissions(){const j=(0,oe.difference)(i.collectionTypes,p.collectionTypes),U=(0,oe.difference)(i.singleTypes,p.singleTypes),w=ko(ko({},j),U);let N;return He()(w)?N=!1:N=Object.values(w).some(q=>Object.values(q).some(he=>Ae()(he,"conditions"))),{permissionsToSend:ts(p),didUpdateConditions:N}},resetForm(){g({type:"RESET_FORM"})},setFormAfterSubmit(){g({type:"SET_FORM_AFTER_SUBMIT"})}}));const b=(j,U,w,N)=>{g({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:j,propertyName:U,rowName:w,value:N})},S=(j,U,w)=>{g({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:j,actionId:U,value:w})},L=j=>{g({type:"ON_CHANGE_CONDITIONS",conditions:j})},B=(0,e.useCallback)(({target:{name:j,value:U}})=>{g({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:j,value:U})},[]),z=(0,e.useCallback)(({target:{name:j,value:U}})=>{g({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:j,value:U})},[]);return e.createElement(ea,{value:{availableConditions:a.conditions,modifiedData:p,onChangeConditions:L,onChangeSimpleCheckbox:B,onChangeParentCheckbox:z,onChangeCollectionTypeLeftActionRowCheckbox:b,onChangeCollectionTypeGlobalActionCheckbox:S}},e.createElement(Q.v,{id:"tabs",label:E({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(We.m,null,ns.map(j=>e.createElement(We.O,{key:j.id},E({id:j.labelId,defaultMessage:j.defaultMessage})))),e.createElement(_.n,{style:{position:"relative"}},e.createElement(_.x,null,e.createElement(mo,{layout:d.collectionTypes,kind:"collectionTypes",isFormDisabled:t})),e.createElement(_.x,null,e.createElement(mo,{layout:d.singleTypes,kind:"singleTypes",isFormDisabled:t})),e.createElement(_.x,null,e.createElement(Co,{layout:d.plugins,kind:"plugins",isFormDisabled:t})),e.createElement(_.x,null,e.createElement(Co,{layout:d.settings,kind:"settings",isFormDisabled:t})))))});eo.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},eo.propTypes={layout:r().object,isFormDisabled:r().bool.isRequired,permissions:r().array};const rs=(0,e.memo)(eo)},16437:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!0},78522:(le,O,n)=>{n.d(O,{Z:()=>e});const e=()=>"todo empty role"},80779:(le,O,n)=>{n.d(O,{Z:()=>re});var e=n(32735),C=n(60216),r=n.n(C),oe=n(62345),Q=n(36320),We=n(94547),_=n(19786),Te=n(88860),Ae=n(50563),Re=n(88425),He=n.n(Re),V=n(5636),A=Object.defineProperty,P=Object.getOwnPropertySymbols,Be=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable,Oe=(x,ae,f)=>ae in x?A(x,ae,{enumerable:!0,configurable:!0,writable:!0,value:f}):x[ae]=f,K=(x,ae)=>{for(var f in ae||(ae={}))Be.call(ae,f)&&Oe(x,f,ae[f]);if(P)for(var f of P(ae))Y.call(ae,f)&&Oe(x,f,ae[f]);return x};const ze=({id:x,name:ae,description:f,usersCount:_e,icons:Xe,rowIndex:be})=>{const{formatMessage:je}=(0,V.useIntl)(),Ne=je({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:_e});return e.createElement(We.Tr,K({"aria-rowindex":be,key:x},(0,Re.onRowClick)({fn:Xe[1].onClick})),e.createElement(_.Td,{maxWidth:(0,Re.pxToRem)(130)},e.createElement(Te.Z,{ellipsis:!0,textColor:"neutral800"},ae)),e.createElement(_.Td,{maxWidth:(0,Re.pxToRem)(250)},e.createElement(Te.Z,{ellipsis:!0,textColor:"neutral800"},f)),e.createElement(_.Td,null,e.createElement(Te.Z,{textColor:"neutral800"},Ne)),e.createElement(_.Td,null,e.createElement(Q.k,K({justifyContent:"flex-end"},Re.stopPropagation),Xe.map((Ue,Ze)=>Ue?e.createElement(oe.x,{key:Ue.label,paddingLeft:Ze===0?0:1},e.createElement(Ae.h,{onClick:Ue.onClick,label:Ue.label,noBorder:!0,icon:Ue.icon})):null))))};ze.propTypes={id:r().number.isRequired,name:r().string.isRequired,description:r().string.isRequired,usersCount:r().number.isRequired,icons:r().array.isRequired,rowIndex:r().number.isRequired};const re=ze},45677:(le,O,n)=>{n.d(O,{Z:()=>Ge});var e=n(32735),C=n(88425),r=n(83983),oe=n(58469),Q=n(19406),We=n(4038),_=n(68625),Te=n(47765),Ae=n(41415),Re=n(28356),He=n(17e3),V=n(56755),A=n(73269),P=n(33827),Be=n(94547),Y=n(19786),Oe=n(35658),K=n(88860),ze=n(27649),re=n(3685),x=n(5636),ae=n(5141),f=n(80779),_e=n(78522),Xe=n(60216),be=n.n(Xe),je=n(83292),Ne=n(71933),Ue=n(67563),Ze=n(50563),Qe=n(95489),dt=n(62345),st=n(36320),nt=n(27677),rt=n(47361),ne=n(35331);const me=n.p+"6d21938306785f176538.png",Ve=n.p+"617f9c948fa79e6d73bd.png",ee=je.default.div`
134
- position: absolute;
135
- z-index: 3;
136
- inset: 0;
137
- background: ${({theme:F})=>(0,C.setHexOpacity)(F.colors.neutral800,.2)};
138
- padding: 0 ${({theme:F})=>F.spaces[8]};
139
- `,$=(0,je.default)(st.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
- `,k=(0,je.default)(nt.K)`
162
- align-items: flex-start;
163
- max-width: ${400/16}rem;
164
- z-index: 0;
165
- `,I=(0,je.default)(dt.x)`
166
- position: absolute;
167
- right: ${({theme:F})=>F.spaces[4]};
168
- top: ${({theme:F})=>F.spaces[4]};
169
- `,H=({onClose:F,isOpen:ie})=>{(0,C.useLockScroll)(ie);const{formatMessage:Z}=(0,x.useIntl)();return ie?e.createElement(Ne.h,null,e.createElement(ee,{onClick:F},e.createElement(Ue.i,{onEscape:F},e.createElement($,{onClick:te=>te.stopPropagation(),"aria-labelledby":"upgrade-plan",background:"neutral0",hasRadius:!0},e.createElement("img",{src:me,alt:"air-balloon"}),e.createElement(I,null,e.createElement(Ze.h,{onClick:F,"aria-label":"Close",icon:e.createElement(ne.default,null)})),e.createElement(k,{spacing:6},e.createElement(K.Z,{fontWeight:"bold",textColor:"primary600"},Z({id:"app.components.UpgradePlanModal.text-ce",defaultMessage:"COMMUNITY EDITION"})),e.createElement(nt.K,{spacing:2},e.createElement(K.Z,{variant:"alpha",as:"h2",id:"upgrade-plan"},Z({id:"app.components.UpgradePlanModal.limit-reached",defaultMessage:"You have reached the limit"})),e.createElement(K.Z,null,Z({id:"app.components.UpgradePlanModal.text-power",defaultMessage:"Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition"}))),e.createElement(Qe.Q,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(rt.default,null)},Z({id:"app.components.UpgradePlanModal.button",defaultMessage:"Learn more"}))),e.createElement("img",{src:Ve,alt:"upgrade-arrow"}))))):null};H.propTypes={onClose:be().func.isRequired,isOpen:be().bool.isRequired};const W=H;var X=n(49737);const pe=()=>{const{roles:F,isLoading:ie}=(0,X.bF)(),Z=(0,C.useQuery)(),te=decodeURIComponent(Z.get("_q")||""),v=(0,oe.ZP)(F,te,{keys:["name","description"]});return{isLoading:ie,sortedRoles:v}},De=()=>{const{formatMessage:F}=(0,x.useIntl)(),[ie,Z]=(0,e.useState)(!1),{trackUsage:te}=(0,C.useTracking)(),{push:v}=(0,ae.useHistory)(),ye=(0,e.useCallback)(Ce=>{v(`/settings/roles/${Ce}`)},[v]),ce=(0,e.useCallback)(()=>{Z(Ce=>!Ce)},[]),Je=(0,e.useCallback)(()=>{te("didShowRBACUpgradeModal"),Z(!0)},[te]),ot=(0,e.useCallback)(Ce=>[{onClick:ce,label:F({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(Te.Z,null)},{onClick:()=>ye(Ce.id),label:F({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(_.Z,null)},{onClick:ce,label:F({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(We.default,null)}],[F,ce,ye]);return{isModalOpen:ie,handleToggleModalForCreatingRole:Je,handleToggle:ce,getIcons:ot}},ge=()=>{const{formatMessage:F}=(0,x.useIntl)();(0,C.useFocusWhenNavigate)();const{sortedRoles:ie,isLoading:Z}=pe(),{isModalOpen:te,handleToggle:v,handleToggleModalForCreatingRole:ye,getIcons:ce}=De(),Je=ie.length+1,ot=5;return e.createElement(ze.o,null,e.createElement(C.SettingsPageTitle,{name:"Roles"}),e.createElement(Re.T,{primaryAction:e.createElement(Ae.z,{onClick:ye,startIcon:e.createElement(Q.default,null),size:"S"},F({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})),title:F({id:"global.roles",defaultMessage:"roles"}),subtitle:F({id:"Settings.roles.list.description",defaultMessage:"List of roles"})}),e.createElement(He.D,null,e.createElement(V.i,{colCount:ot,rowCount:Je,footer:e.createElement(A.c,{onClick:ye,icon:e.createElement(Q.default,null)},F({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"}))},e.createElement(P.h,null,e.createElement(Be.Tr,null,e.createElement(Y.Th,null,e.createElement(K.Z,{variant:"sigma",textColor:"neutral600"},F({id:"global.name",defaultMessage:"Name"}))),e.createElement(Y.Th,null,e.createElement(K.Z,{variant:"sigma",textColor:"neutral600"},F({id:"global.description",defaultMessage:"Description"}))),e.createElement(Y.Th,null,e.createElement(K.Z,{variant:"sigma",textColor:"neutral600"},F({id:"global.users",defaultMessage:"Users"}))),e.createElement(Y.Th,null,e.createElement(re.T,null,F({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(Oe.p,null,ie==null?void 0:ie.map((Ce,J)=>e.createElement(f.Z,{key:Ce.id,id:Ce.id,name:Ce.name,description:Ce.description,usersCount:Ce.usersCount,icons:ce(Ce),rowIndex:J+2})))),!Je&&!Z&&e.createElement(_e.Z,null)),e.createElement(W,{isOpen:te,onClose:v}))},Ge=()=>e.createElement(C.CheckPagePermissions,{permissions:r.Z.settings.roles.main},e.createElement(ge,null))},75936:(le,O,n)=>{n.d(O,{Z:()=>C});const C=[]},20178:(le,O,n)=>{n.d(O,{Z:()=>rt});var e=n(32735),C=n(64213),r=n(88425),oe=n(62345),Q=n(41415),We=n(28356),_=n(17e3),Te=n(15335),Ae=n(5803),Re=n(27649),He=n(36320),V=n(27677),A=n(88860),P=n(10369),Be=n(10508),Y=n(29439),Oe=n(83281),K=n(33795),ze=n.n(K),re=n(86834),x=n.n(re),ae=n(5636),f=n(5141),_e=n(83292),Xe=n(37511),be=n(49737),je=n(83983),Ne=n(5173);const Ze=Ne.Ry().shape({name:Ne.Z_().required(r.translatedErrors.required),description:Ne.Z_().required(r.translatedErrors.required)});var Qe=n(98399),dt=(ne,me,Ve)=>new Promise((ee,$)=>{var k=W=>{try{H(Ve.next(W))}catch(X){$(X)}},I=W=>{try{H(Ve.throw(W))}catch(X){$(X)}},H=W=>W.done?ee(W.value):Promise.resolve(W.value).then(k,I);H((Ve=Ve.apply(ne,me)).next())});const st=_e.default.div`
170
- border: 1px solid ${({theme:ne})=>ne.colors.primary200};
171
- background: ${({theme:ne})=>ne.colors.primary100};
172
- padding: ${({theme:ne})=>`${ne.spaces[2]} ${ne.spaces[4]}`};
173
- color: ${({theme:ne})=>ne.colors.primary600};
174
- border-radius: ${({theme:ne})=>ne.borderRadius};
175
- font-size: ${12/16}rem;
176
- font-weight: bold;
177
- `,nt=()=>{const ne=(0,r.useNotification)(),{lockApp:me,unlockApp:Ve}=(0,r.useOverlayBlocker)(),{formatMessage:ee}=(0,ae.useIntl)(),[$,k]=(0,e.useState)(!1),{replace:I}=(0,f.useHistory)(),H=(0,e.useRef)(),{trackUsage:W}=(0,r.useTracking)(),X=(0,f.useRouteMatch)("/settings/roles/duplicate/:id"),pe=ze()(X,"params.id",null),{isLoading:De,data:G}=(0,be.U_)(),{permissions:ge,isLoading:Ye}=(0,be.Dq)(pe),Ge=ie=>{me(),k(!0),W(pe?"willDuplicateRole":"willCreateNewRole"),Promise.resolve((0,r.request)("/admin/roles",{method:"POST",body:ie})).then(Z=>dt(void 0,null,function*(){const{permissionsToSend:te}=H.current.getPermissions();return W(pe?"didDuplicateRole":"didCreateNewRole"),Z.data.id&&!x()(te)&&(yield(0,r.request)(`/admin/roles/${Z.data.id}/permissions`,{method:"PUT",body:{permissions:te}})),Z})).then(Z=>{k(!1),ne({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),I(`/settings/roles/${Z.data.id}`)}).catch(Z=>{Qe.error(Z),k(!1),ne({type:"warning",message:{id:"notification.error"}})}).finally(()=>{Ve()})},F=`${ee({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${(0,C.format)(new Date,"PPP")}`;return e.createElement(Re.o,null,e.createElement(r.SettingsPageTitle,{name:"Roles"}),e.createElement(Oe.Formik,{initialValues:{name:"",description:F},onSubmit:Ge,validationSchema:Ze,validateOnChange:!1},({handleSubmit:ie,values:Z,errors:te,handleReset:v,handleChange:ye})=>e.createElement(r.Form,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(We.T,{primaryAction:e.createElement(V.K,{horizontal:!0,spacing:2},e.createElement(Q.z,{variant:"secondary",onClick:()=>{v(),H.current.resetForm()},size:"L"},ee({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(Q.z,{onClick:ie,loading:$,size:"L"},ee({id:"global.save",defaultMessage:"Save"}))),title:ee({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:ee({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(r.Link,{startIcon:e.createElement(Y.Z,null),to:"/settings/roles"},ee({id:"global.back",defaultMessage:"Back"}))}),e.createElement(_.D,null,e.createElement(V.K,{spacing:6},e.createElement(oe.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(V.K,{spacing:4},e.createElement(He.k,{justifyContent:"space-between"},e.createElement(oe.x,null,e.createElement(oe.x,null,e.createElement(A.Z,{fontWeight:"bold"},ee({id:"global.details",defaultMessage:"Details"}))),e.createElement(oe.x,null,e.createElement(A.Z,{variant:"pi",textColor:"neutral600"},ee({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(st,null,ee({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(Te.r,{gap:4},e.createElement(Ae.P,{col:6},e.createElement(P.o,{name:"name",error:te.name&&ee({id:te.name}),label:ee({id:"global.name",defaultMessage:"Name"}),onChange:ye,value:Z.name})),e.createElement(Ae.P,{col:6},e.createElement(Be.g,{label:ee({id:"global.description",defaultMessage:"Description"}),name:"description",error:te.description&&ee({id:te.description}),onChange:ye},Z.description))))),!De&&!Ye?e.createElement(oe.x,{shadow:"filterShadow",hasRadius:!0},e.createElement(Xe.Z,{isFormDisabled:!1,ref:H,permissions:ge,layout:G})):e.createElement(oe.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(r.LoadingIndicatorPage,null))))))))};function rt(){return e.createElement(r.CheckPagePermissions,{permissions:je.Z.settings.roles.create},e.createElement(nt,null))}},56899:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},68464:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},32741:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},19665:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},36950:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},96556:(le,O,n)=>{n.d(O,{Z:()=>C});const C=!1},51899:(le,O,n)=>{n.d(O,{Z:()=>ee});var e=n(32735),C=n(88425),r=n(83983),oe=n(19406),Q=n(4038),We=n(47765),_=n(68625),Te=n(41415),Ae=n(28356),Re=n(99223),He=n(17e3),V=n(3685),A=n(27649),P=n(56755),Be=n(73269),Y=n(33827),Oe=n(94547),K=n(19786),ze=n(35658),re=n(88860),x=n(92891),ae=n(58469),f=n(5636),_e=n(5141),Xe=n(17247),be=n(49737),je=n(78522),Ne=n(80779),Ue=n(97889);const Ze={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1},dt=($,k)=>(0,Ue.default)($,I=>{switch(k.type){case"ON_REMOVE_ROLES":{I.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{I.shouldRefetchData=!0,I.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{I.shouldRefetchData=!1,I.roleToDelete=null,I.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{I.roleToDelete=k.id;break}default:return I}});var st=($,k,I)=>new Promise((H,W)=>{var X=G=>{try{De(I.next(G))}catch(ge){W(ge)}},pe=G=>{try{De(I.throw(G))}catch(ge){W(ge)}},De=G=>G.done?H(G.value):Promise.resolve(G.value).then(X,pe);De((I=I.apply($,k)).next())});const nt=()=>{(0,C.useFocusWhenNavigate)();const{isLoading:$,allowedActions:{canCreate:k,canDelete:I,canRead:H,canUpdate:W}}=(0,C.useRBAC)(r.Z.settings.roles),{getData:X,roles:pe,isLoading:De}=(0,be.bF)(!1),[{query:G}]=(0,C.useQueryParams)(),ge=(G==null?void 0:G._q)||"",Ye=(0,ae.ZP)(pe,ge,{keys:["name","description"]});return(0,e.useEffect)(()=>{!$&&H&&X()},[$,H,X]),{isLoadingForPermissions:$,canCreate:k,canDelete:I,canRead:H,canUpdate:W,isLoading:De,getData:X,sortedRoles:Ye,roles:pe}},rt=({getData:$,canCreate:k,canDelete:I,canUpdate:H})=>{const{formatMessage:W}=(0,f.useIntl)(),X=(0,C.useNotification)(),[pe,De]=(0,e.useState)(!1),{push:G}=(0,_e.useHistory)(),[{selectedRoles:ge,showModalConfirmButtonLoading:Ye,roleToDelete:Ge},F]=(0,e.useReducer)(dt,Ze),ie=()=>st(void 0,null,function*(){try{F({type:"ON_REMOVE_ROLES"}),yield Xe.be.post("/admin/roles/batch-delete",{ids:[Ge]}),yield $(),F({type:"RESET_DATA_TO_DELETE"})}catch(J){const xe=(0,x.get)(J,["response","payload","data","ids"],null);if(xe&&Array.isArray(xe)){const ft=xe.join(`
178
- `);X({type:"warning",message:ft})}else X({type:"warning",message:{id:"notification.error"}})}ye()}),Z=(0,e.useCallback)(J=>{G(`/settings/roles/duplicate/${J}`)},[G]),te=()=>G("/settings/roles/new"),v=(0,e.useCallback)(J=>{F({type:"SET_ROLE_TO_DELETE",id:J}),ye()},[]),ye=()=>De(J=>!J),ce=(0,e.useCallback)(J=>{G(`/settings/roles/${J}`)},[G]),Je=(0,e.useCallback)((J,xe)=>{J.preventDefault(),J.stopPropagation(),xe.usersCount?X({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):v(xe.id)},[X,v]),ot=(0,e.useCallback)((J,xe)=>{J.preventDefault(),J.stopPropagation(),Z(xe.id)},[Z]),Ce=(0,e.useCallback)(J=>[...k?[{onClick:xe=>ot(xe,J),label:W({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(We.Z,null)}]:[],...H?[{onClick:()=>ce(J.id),label:W({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(_.Z,null)}]:[],...I?[{onClick:xe=>Je(xe,J),label:W({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(Q.default,null)}]:[]],[W,Je,ot,ce,k,H,I]);return{handleNewRoleClick:te,getIcons:Ce,selectedRoles:ge,isWarningDeleteAllOpened:pe,showModalConfirmButtonLoading:Ye,handleToggleModal:ye,handleDeleteData:ie}},me=()=>{const{formatMessage:$}=(0,f.useIntl)(),{isLoadingForPermissions:k,canCreate:I,canRead:H,canDelete:W,canUpdate:X,isLoading:pe,getData:De,sortedRoles:G}=nt(),{handleNewRoleClick:ge,getIcons:Ye,isWarningDeleteAllOpened:Ge,showModalConfirmButtonLoading:F,handleToggleModal:ie,handleDeleteData:Z}=rt({getData:De,canCreate:I,canDelete:W,canUpdate:X}),te=G.length+1,v=6;if(k)return e.createElement(A.o,null,e.createElement(C.LoadingIndicatorPage,null));const ye=$({id:"global.roles",defaultMessage:"roles"});return e.createElement(A.o,null,e.createElement(C.SettingsPageTitle,{name:"Roles"}),e.createElement(Ae.T,{primaryAction:I?e.createElement(Te.z,{onClick:ge,startIcon:e.createElement(oe.default,null),size:"S"},$({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:ye,subtitle:$({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),H&&e.createElement(Re.Z,{startActions:e.createElement(C.SearchURLQuery,{label:$({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:ye})})}),H&&e.createElement(He.D,null,e.createElement(P.i,{colCount:v,rowCount:te,footer:I?e.createElement(Be.c,{onClick:ge,icon:e.createElement(oe.default,null)},$({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(Y.h,null,e.createElement(Oe.Tr,{"aria-rowindex":1},e.createElement(K.Th,null,e.createElement(re.Z,{variant:"sigma",textColor:"neutral600"},$({id:"global.name",defaultMessage:"Name"}))),e.createElement(K.Th,null,e.createElement(re.Z,{variant:"sigma",textColor:"neutral600"},$({id:"global.description",defaultMessage:"Description"}))),e.createElement(K.Th,null,e.createElement(re.Z,{variant:"sigma",textColor:"neutral600"},$({id:"global.users",defaultMessage:"Users"}))),e.createElement(K.Th,null,e.createElement(V.T,null,$({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(ze.p,null,G==null?void 0:G.map((ce,Je)=>e.createElement(Ne.Z,{key:ce.id,id:ce.id,name:ce.name,description:ce.description,usersCount:ce.usersCount,icons:Ye(ce),rowIndex:Je+2})))),!te&&!pe&&e.createElement(je.Z,null)),e.createElement(C.ConfirmDialog,{isOpen:Ge,onConfirm:Z,isConfirmButtonLoading:F,onToggleDialog:ie}))},ee=()=>e.createElement(C.CheckPagePermissions,{permissions:r.Z.settings.roles.main},e.createElement(me,null))},63775:(le,O,n)=>{n.d(O,{Z:()=>oe});var e=(Q,We,_)=>new Promise((Te,Ae)=>{var Re=A=>{try{V(_.next(A))}catch(P){Ae(P)}},He=A=>{try{V(_.throw(A))}catch(P){Ae(P)}},V=A=>A.done?Te(A.value):Promise.resolve(A.value).then(Re,He);V((_=_.apply(Q,We)).next())});const oe=[...strapi.features.isEnabled(strapi.features.SSO)?[{Component(){return e(this,null,function*(){return yield n.e(302).then(n.bind(n,49851))})},to:"/settings/single-sign-on",exact:!0}]:[]]}}]);