@strapi/admin 4.2.1-alpha.0 → 4.3.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/admin/src/app.js +7 -4
  2. package/admin/src/components/OverlayBlocker/index.js +4 -0
  3. package/admin/src/content-manager/components/DynamicTable/CellContent/utils/hasContent.js +1 -1
  4. package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +10 -16
  5. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +1 -0
  6. package/admin/src/content-manager/components/SelectMany/index.js +2 -4
  7. package/admin/src/content-manager/components/SelectWrapper/index.js +1 -13
  8. package/admin/src/content-manager/components/Wysiwyg/EditorStylesContainer.js +1 -1
  9. package/admin/src/content-manager/pages/ListView/index.js +2 -2
  10. package/admin/src/hooks/{useFetchInstalledPlugins → useFetchEnabledPlugins}/index.js +4 -4
  11. package/admin/src/hooks/{useFetchInstalledPlugins → useFetchEnabledPlugins}/utils/api.js +2 -2
  12. package/admin/src/hooks/useFetchMarketplaceProviders/index.js +1 -1
  13. package/admin/src/pages/Admin/index.js +15 -5
  14. package/admin/src/pages/App/constants.js +1 -0
  15. package/admin/src/pages/App/index.js +17 -3
  16. package/admin/src/pages/App/reducer.js +22 -0
  17. package/admin/src/pages/InstalledPluginsPage/Plugins.js +2 -2
  18. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +7 -8
  19. package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +9 -3
  20. package/admin/src/pages/MarketplacePage/index.js +9 -39
  21. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +7 -3
  22. package/admin/src/reducers.js +4 -2
  23. package/admin/src/translations/en.json +2 -0
  24. package/admin/src/translations/hi.json +699 -0
  25. package/admin/src/translations/languageNativeNames.js +2 -0
  26. package/admin/src/translations/pl.json +238 -233
  27. package/admin/src/translations/sa.json +698 -0
  28. package/admin/src/translations/zh-Hans.json +28 -1
  29. package/admin/src/tsconfig.json +10 -0
  30. package/build/20.9e5a98b6.chunk.js +308 -0
  31. package/build/{9115.623dc4f7.chunk.js → 2336.cb1c0d6e.chunk.js} +1 -1
  32. package/build/2863.bf3c1eff.chunk.js +194 -0
  33. package/build/3531.ef1d2cfc.chunk.js +10 -0
  34. package/build/413.d5986568.chunk.js +284 -0
  35. package/build/{4715.4588fdf5.chunk.js → 4715.a6e62860.chunk.js} +8 -8
  36. package/build/5250.9988a0ad.chunk.js +12 -0
  37. package/build/{9158.e48d88af.chunk.js → 5520.9dcd6a9f.chunk.js} +32 -32
  38. package/build/5833.970a963d.chunk.js +112 -0
  39. package/build/6925.fb35248e.chunk.js +761 -0
  40. package/build/8773.16dea88d.chunk.js +327 -0
  41. package/build/{7757.f6eb5e92.chunk.js → 9166.5c585d7c.chunk.js} +25 -25
  42. package/build/9262.25aa12a5.chunk.js +1 -0
  43. package/build/Admin-authenticatedApp.d38dc4dd.chunk.js +80 -0
  44. package/build/Admin_homePage.e3571a75.chunk.js +71 -0
  45. package/build/Admin_marketplace.284bf8fc.chunk.js +11 -0
  46. package/build/Admin_pluginsPage.8537476f.chunk.js +1 -0
  47. package/build/{Admin_profilePage.249cbfc9.chunk.js → Admin_profilePage.b7f85e78.chunk.js} +2 -2
  48. package/build/Admin_settingsPage.858ef0d7.chunk.js +178 -0
  49. package/build/admin-edit-roles-page.33647266.chunk.js +1 -0
  50. package/build/admin-edit-users.8cd7519b.chunk.js +10 -0
  51. package/build/admin-users.6581eec5.chunk.js +11 -0
  52. package/build/{api-tokens-edit-page.3e453fc1.chunk.js → api-tokens-create-page.efa1d2aa.chunk.js} +1 -1
  53. package/build/api-tokens-edit-page.6101f051.chunk.js +1 -0
  54. package/build/{api-tokens-list-page.872c3800.chunk.js → api-tokens-list-page.782e872f.chunk.js} +2 -2
  55. package/build/{codemirror-css.98490df3.chunk.js → codemirror-css.4e2bbed3.chunk.js} +2 -2
  56. package/build/{codemirror-javacript.cafbda9c.chunk.js → codemirror-javacript.41bdefda.chunk.js} +1 -1
  57. package/build/codemirror-theme.a82cae4e.chunk.js +34 -0
  58. package/build/content-manager.adf6fc82.chunk.js +1182 -0
  59. package/build/content-type-builder-translation-pl-json.4a42349b.chunk.js +1 -0
  60. package/build/content-type-builder.366a3b10.chunk.js +142 -0
  61. package/build/{cropper-css.0055cd53.chunk.js → cropper-css.12fe038c.chunk.js} +4 -4
  62. package/build/{email-settings-page.1f235173.chunk.js → email-settings-page.d72e7f4c.chunk.js} +2 -2
  63. package/build/email-translation-pl-json.a03bcf98.chunk.js +1 -0
  64. package/build/{en-json.0a5ba154.chunk.js → en-json.729eb94d.chunk.js} +1 -1
  65. package/build/{fontawesome-css-all.b88d464e.chunk.js → fontawesome-css-all.15068c6e.chunk.js} +3 -3
  66. package/build/{fontawesome-css.a92a7b6c.chunk.js → fontawesome-css.418f40da.chunk.js} +2 -2
  67. package/build/hi-json.b4ae16d1.chunk.js +1 -0
  68. package/build/highlight.js.af2de364.chunk.js +86 -0
  69. package/build/i18n-settings-page.8803df0b.chunk.js +101 -0
  70. package/build/i18n-translation-pl-json.cea5bf23.chunk.js +1 -0
  71. package/build/index.html +1 -1
  72. package/build/main.689d6439.js +8688 -0
  73. package/build/pl-json.4d11f53d.chunk.js +1 -0
  74. package/build/runtime~main.308a7c41.js +2 -0
  75. package/build/sa-json.be504091.chunk.js +1 -0
  76. package/build/sso-settings-page.2bae79df.chunk.js +1 -0
  77. package/build/{upload-settings.4ee2f135.chunk.js → upload-settings.f1e587c0.chunk.js} +6 -6
  78. package/build/upload-translation-de-json.745613c0.chunk.js +1 -0
  79. package/build/upload-translation-dk-json.cb25dcf0.chunk.js +1 -0
  80. package/build/upload-translation-en-json.fddec9a6.chunk.js +1 -0
  81. package/build/upload-translation-es-json.1f344b53.chunk.js +1 -0
  82. package/build/upload-translation-fr-json.e21c0c7a.chunk.js +1 -0
  83. package/build/upload-translation-he-json.4ce77b7b.chunk.js +1 -0
  84. package/build/upload-translation-it-json.5ce11e0b.chunk.js +1 -0
  85. package/build/upload-translation-ja-json.22afae44.chunk.js +1 -0
  86. package/build/upload-translation-ko-json.9a2c21cb.chunk.js +1 -0
  87. package/build/upload-translation-ms-json.0605d6da.chunk.js +1 -0
  88. package/build/upload-translation-pl-json.c1f86b50.chunk.js +1 -0
  89. package/build/upload-translation-pt-BR-json.95686cfb.chunk.js +1 -0
  90. package/build/upload-translation-ru-json.37bd1546.chunk.js +1 -0
  91. package/build/upload-translation-sk-json.b03d4904.chunk.js +1 -0
  92. package/build/upload-translation-th-json.64dd70ce.chunk.js +1 -0
  93. package/build/upload-translation-uk-json.1328cb3e.chunk.js +1 -0
  94. package/build/{upload-translation-zh-Hans-json.c9622577.chunk.js → upload-translation-zh-Hans-json.6832ff81.chunk.js} +1 -1
  95. package/build/upload-translation-zh-json.ee8fba96.chunk.js +1 -0
  96. package/build/upload.1346f4b1.chunk.js +7 -0
  97. package/build/{users-advanced-settings-page.747b2ec1.chunk.js → users-advanced-settings-page.f38654fc.chunk.js} +1 -1
  98. package/build/users-email-settings-page.824a3cdb.chunk.js +101 -0
  99. package/build/users-permissions-translation-en-json.765abf48.chunk.js +1 -0
  100. package/build/users-permissions-translation-pl-json.1dbdd4a1.chunk.js +1 -0
  101. package/build/users-providers-settings-page.82a4ba58.chunk.js +101 -0
  102. package/build/{users-roles-settings-page.1bf4ffc5.chunk.js → users-roles-settings-page.1206751f.chunk.js} +3 -3
  103. package/build/{webhook-edit-page.142b23ac.chunk.js → webhook-edit-page.5c9bada0.chunk.js} +2 -2
  104. package/build/{webhook-list-page.671582a0.chunk.js → webhook-list-page.822927af.chunk.js} +1 -1
  105. package/build/zh-Hans-json.cbc69f3d.chunk.js +1 -0
  106. package/index.js +47 -239
  107. package/package.json +31 -24
  108. package/scripts/build.js +19 -3
  109. package/server/controllers/admin.js +23 -0
  110. package/server/policies/index.js +1 -0
  111. package/server/policies/isTelemetryEnabled.js +16 -0
  112. package/server/routes/admin.js +8 -0
  113. package/server/routes/serve-admin-panel.js +1 -1
  114. package/utils/create-cache-dir.js +131 -0
  115. package/utils/get-custom-app-config-file.js +28 -0
  116. package/utils/get-custom-webpack-config.js +38 -0
  117. package/utils/get-plugins-path.js +26 -0
  118. package/utils/index.js +13 -0
  119. package/utils/should-build-admin.js +52 -0
  120. package/utils/watch-admin-files.js +59 -0
  121. package/webpack.config.js +34 -6
  122. package/admin/src/content-manager/components/SelectWrapper/ClearIndicator.js +0 -18
  123. package/admin/src/content-manager/components/SelectWrapper/DropdownIndicator.js +0 -24
  124. package/admin/src/content-manager/components/SelectWrapper/IconBox.js +0 -20
  125. package/admin/src/content-manager/components/SelectWrapper/IndicatorSeparator.js +0 -3
  126. package/admin/src/content-manager/components/SelectWrapper/utils/getSelectStyles.js +0 -92
  127. package/admin/src/pages/MarketplacePage/utils/api.js +0 -9
  128. package/build/2758.9475712b.chunk.js +0 -162
  129. package/build/2912.dd031292.chunk.js +0 -253
  130. package/build/4982.c57c5675.chunk.js +0 -308
  131. package/build/6925.fafef528.chunk.js +0 -761
  132. package/build/7197.47565569.chunk.js +0 -113
  133. package/build/7589.77ef4fbf.chunk.js +0 -194
  134. package/build/7841.9e9cf739.chunk.js +0 -253
  135. package/build/8681.aec05472.chunk.js +0 -163
  136. package/build/9298.cb3b6bc1.chunk.js +0 -334
  137. package/build/948.d64fb515.chunk.js +0 -2
  138. package/build/Admin-authenticatedApp.63a5061a.chunk.js +0 -80
  139. package/build/Admin_homePage.447df176.chunk.js +0 -71
  140. package/build/Admin_marketplace.8a503eec.chunk.js +0 -11
  141. package/build/Admin_pluginsPage.91a96fa5.chunk.js +0 -1
  142. package/build/Admin_settingsPage.0d138832.chunk.js +0 -180
  143. package/build/admin-edit-roles-page.7c2c9752.chunk.js +0 -1
  144. package/build/admin-edit-users.b835bc48.chunk.js +0 -11
  145. package/build/admin-users.19900b75.chunk.js +0 -12
  146. package/build/api-tokens-create-page.8d299dde.chunk.js +0 -1
  147. package/build/codemirror-theme.b3c64617.chunk.js +0 -34
  148. package/build/content-manager.002bfd99.chunk.js +0 -1204
  149. package/build/content-type-builder-translation-pl-json.a866acda.chunk.js +0 -1
  150. package/build/content-type-builder.a0450dfe.chunk.js +0 -141
  151. package/build/email-translation-pl-json.6da50d0f.chunk.js +0 -1
  152. package/build/highlight.js.9d8ef460.chunk.js +0 -86
  153. package/build/i18n-settings-page.06e88cf2.chunk.js +0 -101
  154. package/build/main.e3a13431.js +0 -8404
  155. package/build/pl-json.f65302c2.chunk.js +0 -1
  156. package/build/runtime~main.dacf1aff.js +0 -2
  157. package/build/sso-settings-page.a7c2e854.chunk.js +0 -1
  158. package/build/upload-translation-de-json.b642da08.chunk.js +0 -1
  159. package/build/upload-translation-dk-json.fc61df13.chunk.js +0 -1
  160. package/build/upload-translation-en-json.59269508.chunk.js +0 -1
  161. package/build/upload-translation-es-json.8ec935ef.chunk.js +0 -1
  162. package/build/upload-translation-fr-json.eb9b4f84.chunk.js +0 -1
  163. package/build/upload-translation-he-json.c226f2dc.chunk.js +0 -1
  164. package/build/upload-translation-it-json.8e58456e.chunk.js +0 -1
  165. package/build/upload-translation-ja-json.1378a2e7.chunk.js +0 -1
  166. package/build/upload-translation-ko-json.5e06e112.chunk.js +0 -1
  167. package/build/upload-translation-ms-json.dc3bf0d7.chunk.js +0 -1
  168. package/build/upload-translation-pl-json.6071e38c.chunk.js +0 -1
  169. package/build/upload-translation-pt-BR-json.7e8d9550.chunk.js +0 -1
  170. package/build/upload-translation-ru-json.da2529f3.chunk.js +0 -1
  171. package/build/upload-translation-sk-json.bfdf4f09.chunk.js +0 -1
  172. package/build/upload-translation-th-json.6a48b826.chunk.js +0 -1
  173. package/build/upload-translation-uk-json.6fb09148.chunk.js +0 -1
  174. package/build/upload-translation-zh-json.711f804b.chunk.js +0 -1
  175. package/build/upload.0d4153e8.chunk.js +0 -105
  176. package/build/users-email-settings-page.8b9a266d.chunk.js +0 -1
  177. package/build/users-permissions-translation-en-json.3fe86528.chunk.js +0 -1
  178. package/build/users-permissions-translation-pl-json.3c4fe81c.chunk.js +0 -1
  179. package/build/users-providers-settings-page.fc9d8f9d.chunk.js +0 -1
  180. package/build/zh-Hans-json.c84ce330.chunk.js +0 -1
@@ -1,180 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{819:(ne,x,a)=>{a.r(x),a.d(x,{SettingsPage:()=>tn,default:()=>Dn});var e=a(32735),E=a(83985),s=a(5141),H=a(11856),W=a(5636),Ie=a(99357),Te=a(28492),fe=a(81430),We=a(84968),q=a(16540),L=a(9808),b=a(78330),G=a(95602),he=a(90662),U=a(44526),_=a(14983),et=a(82372),Qe=a.n(et),Ve=a(88677),Se=a.n(Ve),X=a(60216),C=a.n(X),de=a(69898),Ge=a(20763),ze=a(59290),oe=a.n(ze),ue=a(23101),pe=a.n(ue),Ze=a(49415);const Je={currentStep:void 0},$e=(m=Je,d)=>(0,Ze.default)(m,c=>{switch(d.type){case"GO_TO":{c.currentStep=d.to;break}default:return c}});var Ae=a(4122);const He={localImage:void 0},se=(m=He,d)=>(0,Ze.default)(m,c=>{switch(d.type){case"SET_LOCAL_IMAGE":{c.localImage=d.value;break}default:return c}}),I=({onChangeLogo:m,customLogo:d,goTo:c,Component:f,modalTitle:u,next:T,prev:M,currentStep:R})=>{const[{localImage:v},D]=(0,e.useReducer)(se,He),{formatMessage:J}=(0,W.useIntl)(),Ce=dt=>{D({type:"SET_LOCAL_IMAGE",value:dt})},Be=()=>{c(null)};return R?e.createElement(Ae.ModalLayout,{labelledBy:"modal",onClose:Be},e.createElement(Ae.ModalHeader,null,e.createElement(G.Typography,{fontWeight:"bold",as:"h2",id:"modal"},J(u))),e.createElement(f,{setLocalImage:Ce,goTo:c,next:T,prev:M,onClose:Be,asset:v||d,onChangeLogo:m})):null};I.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},I.propTypes={Component:C().elementType,currentStep:C().string,customLogo:C().shape({name:C().string,url:C().string,width:C().number,height:C().number,ext:C().string}),goTo:C().func.isRequired,modalTitle:C().shape({id:C().string,defaultMessage:C().string}),next:C().string,onChangeLogo:C().func.isRequired,prev:C().string};const ae=I,A=750,te=100,ie=["image/jpeg","image/png","image/svg+xml"];var z=a(81700),me=a(27635),Z=a(19615),k=a(19192),re=a(78752),Me=a(20001),Ke=a(22795),qe=a.n(Ke),st=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const _e={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},j={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)"},le=m=>new Promise(d=>{const c=new FileReader;c.onload=()=>{const f=new Image;f.onload=function(){d({width:f.width,height:f.height})},f.src=c.result},c.readAsDataURL(m)}),V=(m,d)=>({ext:m.name.split(".").pop(),size:m.size/1e3,name:m.name,url:URL.createObjectURL(m),rawFile:m,width:d.width,height:d.height}),K=m=>st(void 0,null,function*(){let d;if(!ie.includes(m.type))throw d=new Error("File format"),d.displayMessage=_e,d;const f=yield le(m);if(!(f.width<=A&&f.height<=A))throw d=new Error("File sizing"),d.displayMessage=j,d;const T=V(m,f);if(!(T.size<=te))throw d=new Error("File sizing"),d.displayMessage=j,d;return T});var Fe=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const Ue=(0,Z.default)(Me.FieldInput)`
2
- opacity: 0;
3
- position: absolute;
4
- top: 0;
5
- bottom: 0;
6
- left: 0;
7
- right: 0;
8
- z-index: 1;
9
- `,Xe=({setLocalImage:m,goTo:d,next:c,onClose:f})=>{const{formatMessage:u}=(0,W.useIntl)(),[T,M]=(0,e.useState)(!1),[R,v]=(0,e.useState)(void 0),D=(0,e.useRef)(null),J=()=>M(!0),Ce=()=>M(!1),Be=rt=>{rt.preventDefault(),D.current.click()},dt=()=>Fe(void 0,null,function*(){Ce();const rt=D.current.files[0];if(!!rt)try{const ut=yield K(rt);m(ut),d(c)}catch(ut){if(ut.displayMessage)v(u(ut.displayMessage,{size:te,dimension:A})),D.current.focus();else throw ut}}),it=()=>T?"primary500":R?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(L.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Me.Field,{name:"logo-upload",error:R},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(he.Stack,{spacing:2},e.createElement(k.Flex,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:T?"primary100":"neutral100",borderColor:it(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:J,onDragLeave:Ce},e.createElement(re.Icon,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:qe(),"aria-hidden":!0}),e.createElement(L.Box,{paddingTop:3,paddingBottom:5},e.createElement(G.Typography,{variant:"delta",as:"span"},u({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(Ue,{accept:ie,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:dt,ref:D,id:"logo-upload"}),e.createElement(U.Button,{type:"button",onClick:Be},u({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(L.Box,{paddingTop:6},e.createElement(G.Typography,{variant:"pi",textColor:"neutral600"},u({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:te,dimension:A})))),e.createElement(Me.FieldError,null)))))),e.createElement(Ae.ModalFooter,{startActions:e.createElement(U.Button,{onClick:f,variant:"tertiary"},u({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};Xe.defaultProps={next:null},Xe.propTypes={goTo:C().func.isRequired,next:C().string,onClose:C().func.isRequired,setLocalImage:C().func.isRequired};const Q=Xe;var ye=a(37178),Re=a(43653),S=a.n(Re),on=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const Gn=m=>on(void 0,null,function*(){try{const d=yield S().get(m,{responseType:"blob",timeout:8e3});return new File([d.data],d.config.url,{type:d.headers["content-type"]})}catch(d){throw d.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},d}});var an=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const Ot=({goTo:m,next:d,onClose:c,setLocalImage:f})=>{const{formatMessage:u}=(0,W.useIntl)(),[T,M]=(0,e.useState)(""),[R,v]=(0,e.useState)(null),D=Ce=>{M(Ce.target.value)},J=Ce=>an(void 0,null,function*(){Ce.preventDefault();try{const Be=yield Gn(T),dt=yield K(Be);f(dt),m(d)}catch(Be){if(Be.displayMessage)v(u(Be.displayMessage,{size:te,dimension:A}));else throw Be}});return e.createElement("form",{onSubmit:J},e.createElement(L.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(ye.TextInput,{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(Ae.ModalFooter,{startActions:e.createElement(U.Button,{onClick:c,variant:"tertiary"},u({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(U.Button,{type:"submit"},u({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};Ot.defaultProps={next:null},Ot.propTypes={goTo:C().func.isRequired,next:C().string,onClose:C().func.isRequired,setLocalImage:C().func.isRequired};const wt=Ot,Dt=({setLocalImage:m,goTo:d,next:c,onClose:f})=>{const{formatMessage:u}=(0,W.useIntl)();return e.createElement(z.TabGroup,{label:u({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(L.Box,{paddingLeft:8,paddingRight:8},e.createElement(z.Tabs,null,e.createElement(z.Tab,null,u({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(z.Tab,null,u({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(me.Divider,null)),e.createElement(z.TabPanels,null,e.createElement(z.TabPanel,null,e.createElement(Q,{onClose:f,setLocalImage:m,goTo:d,next:c})),e.createElement(z.TabPanel,null,e.createElement(wt,{onClose:f,setLocalImage:m,goTo:d,next:c}))))};Dt.defaultProps={next:null},Dt.propTypes={goTo:C().func.isRequired,next:C().string,onClose:C().func.isRequired,setLocalImage:C().func.isRequired};const rn=Dt;var nt=a(31998);const xt=({asset:m})=>{const{formatMessage:d}=(0,W.useIntl)();return e.createElement(nt.Card,null,e.createElement(nt.CardHeader,null,e.createElement(nt.CardAsset,{size:"S",src:m.url})),e.createElement(nt.CardBody,null,e.createElement(nt.CardContent,null,e.createElement(nt.CardTitle,null,m.name),e.createElement(nt.CardSubtitle,null,`${m.ext.toUpperCase()} - ${m.width}\u2715${m.height}`)),e.createElement(nt.CardBadge,null,d({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};xt.propTypes={asset:C().shape({name:C().string,url:C().string,width:C().number,height:C().number,ext:C().string}).isRequired};const jt=xt,Ct=({onClose:m,asset:d,prev:c,next:f,goTo:u,setLocalImage:T,onChangeLogo:M})=>{const{formatMessage:R}=(0,W.useIntl)(),v=()=>{T(void 0),u(c)},D=()=>{M(d),u(f)};return e.createElement(e.Fragment,null,e.createElement(L.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(k.Flex,{justifyContent:"space-between",paddingBottom:6},e.createElement(k.Flex,{direction:"column",alignItems:"flex-start"},e.createElement(G.Typography,{variant:"pi",fontWeight:"bold"},R({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(G.Typography,{variant:"pi",textColor:"neutral500"},R({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(U.Button,{onClick:v,variant:"secondary"},R({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(L.Box,{maxWidth:(0,E.pxToRem)(180)},e.createElement(jt,{asset:d}))),e.createElement(Ae.ModalFooter,{startActions:e.createElement(U.Button,{onClick:m,variant:"tertiary"},R({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(U.Button,{onClick:D},R({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};Ct.defaultProps={next:null,prev:null},Ct.propTypes={goTo:C().func.isRequired,asset:C().shape({name:C().string,url:C().string,width:C().number,height:C().number,ext:C().string}).isRequired,next:C().string,onClose:C().func.isRequired,onChangeLogo:C().func.isRequired,prev:C().string,setLocalImage:C().func.isRequired};const zn={upload:{Component:rn,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:Ct,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}},Et=({customLogo:m,defaultLogo:d,onChangeLogo:c,onResetMenuLogo:f})=>{const[{currentStep:u},T]=(0,e.useReducer)($e,Je),{Component:M,next:R,prev:v,modalTitle:D}=zn[u]||{},{formatMessage:J}=(0,W.useIntl)(),Ce=Be=>{T({type:"GO_TO",to:Be})};return e.createElement(e.Fragment,null,e.createElement(de.CarouselInput,{label:J({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"}),selectedSlide:0,hint:J({id:"Settings.application.customization.carousel-hint",defaultMessage:"Change the admin panel logo (Max dimension: {dimension}x{dimension}, Max file size: {size}KB)"},{size:te,dimension:A}),previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:(m==null?void 0:m.name)||"logo.png",actions:e.createElement(de.CarouselActions,null,e.createElement(Ge.IconButton,{onClick:()=>Ce(m?"pending":"upload"),label:J({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(oe(),null)}),m&&e.createElement(Ge.IconButton,{onClick:f,label:J({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(pe(),null)}))},e.createElement(de.CarouselSlide,{label:J({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(L.Box,{maxHeight:"40%",maxWidth:"40%",as:"img",src:(m==null?void 0:m.url)||d,alt:J({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(ae,{Component:M,currentStep:u,onChangeLogo:c,customLogo:m,goTo:Ce,next:R,prev:v,modalTitle:D}))};Et.defaultProps={customLogo:null},Et.propTypes={customLogo:C().shape({url:C().string,name:C().string}),defaultLogo:C().string.isRequired,onChangeLogo:C().func.isRequired,onResetMenuLogo:C().func.isRequired};const sn=Et,bt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}}},ln=(m=bt,d)=>(0,Ze.default)(m,c=>{switch(d.type){case"SET_CUSTOM_MENU_LOGO":{c.menuLogo.display=d.value,c.menuLogo.submit.rawFile=d.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{c.menuLogo.display=null,c.menuLogo.submit={rawFile:null,isReset:!0};break}default:return c}});var Wt=a(86349),cn=a.n(Wt);const Ut=(m,d)=>cn()(m,{menuLogo:{display:d.menuLogo}}),St=(0,e.forwardRef)(({projectSettingsStored:m},d)=>{const{formatMessage:c}=(0,W.useIntl)(),{trackUsage:f}=(0,E.useTracking)(),{logos:{menu:u}}=(0,Te.um)(),[{menuLogo:T},M]=(0,e.useReducer)(ln,bt,()=>Ut(bt,m)),R=D=>{M({type:"SET_CUSTOM_MENU_LOGO",value:D})},v=()=>{f("didClickResetLogo"),M({type:"RESET_CUSTOM_MENU_LOGO"})};return(0,e.useImperativeHandle)(d,()=>({getValues:()=>({menuLogo:T.submit})})),e.createElement(L.Box,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(G.Typography,{variant:"delta",as:"h3"},c({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(b.Grid,{paddingTop:4},e.createElement(b.GridItem,{col:6,s:12},e.createElement(sn,{onChangeLogo:R,customLogo:T.display,defaultLogo:u.default,onResetMenuLogo:v}))))});St.defaultProps={projectSettingsStored:null},St.propTypes={projectSettingsStored:C().shape({menuLogo:C().shape({url:C().string,name:C().string})})};const mt=St;var dn=a(81999),Mt=a(48344),Hn=a.n(Mt),ct=Object.defineProperty,Kn=Object.defineProperties,un=Object.getOwnPropertyDescriptors,kt=Object.getOwnPropertySymbols,pn=Object.prototype.hasOwnProperty,Xn=Object.prototype.propertyIsEnumerable,gt=(m,d,c)=>d in m?ct(m,d,{enumerable:!0,configurable:!0,writable:!0,value:c}):m[d]=c,Yn=(m,d)=>{for(var c in d||(d={}))pn.call(d,c)&&gt(m,c,d[c]);if(kt)for(var c of kt(d))Xn.call(d,c)&&gt(m,c,d[c]);return m},ht=(m,d)=>Kn(m,un(d));const Lt=m=>Hn()(m,(d,c,f)=>{c&&c.url?d[f]=ht(Yn({},c),{url:(0,E.prefixFileUrlWithBackendUrl)(c.url)}):d[f]=c},{});var It=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const gn=()=>It(void 0,null,function*(){const{data:m}=yield dn.be.get("/admin/project-settings");return Lt(m)}),Vt=m=>It(void 0,null,function*(){const{data:d}=yield dn.be.post("/admin/project-settings",m);return Lt(d)}),Gt=m=>{const d=new FormData;return Object.entries(m).forEach(([c,f])=>{f&&f.rawFile instanceof File&&d.append(c,f.rawFile),f&&f.isReset&&d.append(c,null)}),d};var hn=(m,d,c)=>new Promise((f,u)=>{var T=v=>{try{R(c.next(v))}catch(D){u(D)}},M=v=>{try{R(c.throw(v))}catch(D){u(D)}},R=v=>v.done?f(v.value):Promise.resolve(v.value).then(T,M);R((c=c.apply(m,d)).next())});const zt=[{action:"admin::project-settings.update",subject:null}],Jn=()=>{const m=(0,e.useRef)(),d=(0,E.useNotification)(),{trackUsage:c}=(0,E.useTracking)(),{formatMessage:f}=(0,W.useIntl)(),u=(0,We.useQueryClient)();(0,E.useFocusWhenNavigate)();const T=(0,E.useAppInfos)(),{shouldUpdateStrapi:M,latestStrapiReleaseTag:R,strapiVersion:v}=T,{updateProjectSettings:D}=(0,Te.um)(),{data:J}=(0,We.useQuery)("project-settings",gn),Ce=T.communityEdition?"app.components.UpgradePlanModal.text-ce":"app.components.UpgradePlanModal.text-ee",Be=(0,We.useMutation)(it=>Vt(it),{onSuccess:it=>hn(void 0,[it],function*({menuLogo:rt}){yield u.invalidateQueries("project-settings",{refetchActive:!0}),D({menuLogo:rt==null?void 0:rt.url})})}),dt=()=>{const it=m.current.getValues(),rt=Gt(it);Be.mutate(rt,{onSuccess:()=>{const{menuLogo:ut}=it;ut.rawFile&&c("didChangeLogo")},onError:()=>{d({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(H.Layout,null,e.createElement(E.SettingsPageTitle,{name:"Application"}),e.createElement(q.Main,null,e.createElement(H.HeaderLayout,{title:f({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:f({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:e.createElement(U.Button,{onClick:dt,startIcon:e.createElement(Se(),null)},f({id:"global.save",defaultMessage:"Save"}))}),e.createElement(H.ContentLayout,null,e.createElement(he.Stack,{spacing:6},e.createElement(L.Box,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(he.Stack,{spacing:5},e.createElement(G.Typography,{variant:"delta",as:"h3"},f({id:"global.details",defaultMessage:"Details"})),e.createElement(b.Grid,{paddingTop:1},e.createElement(b.GridItem,{col:6,s:12},e.createElement(G.Typography,{variant:"sigma",textColor:"neutral600"},f({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(G.Typography,{as:"p"},"v",v),e.createElement(_.Link,{href:T.communityEdition?"https://discord.strapi.io":"https://support.strapi.io/support/home",isExternal:!0,endIcon:e.createElement(Qe(),null)},f({id:"Settings.application.get-help",defaultMessage:"Get help"}))),e.createElement(b.GridItem,{col:6,s:12},e.createElement(G.Typography,{variant:"sigma",textColor:"neutral600"},f({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(G.Typography,{as:"p"},f({id:Ce,defaultMessage:`${T.communityEdition?"Community Edition":"Enterprise Edition"}`})))),e.createElement(b.Grid,{paddingTop:1},e.createElement(b.GridItem,{col:6,s:12},M&&e.createElement(_.Link,{href:`https://github.com/strapi/strapi/releases/tag/${R}`,isExternal:!0,endIcon:e.createElement(Qe(),null)},f({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"}))),e.createElement(b.GridItem,{col:6,s:12},e.createElement(_.Link,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(Qe(),null)},f({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(L.Box,{paddingTop:1},e.createElement(G.Typography,{variant:"sigma",textColor:"neutral600"},f({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(G.Typography,{as:"p"},T.nodeVersion)))),J&&e.createElement(E.CheckPermissions,{permissions:zt},e.createElement(mt,{ref:m,projectSettingsStored:J}))))))};var yn=a(3704),Zt=a.n(yn);const Ht=m=>Zt()(m,c=>c.links).map(c=>(0,fe.ot)(c.Component,c.to,c.exact||!1)),vn=m=>m.filter(d=>!d.links.every(c=>c.isDisplayed===!1));var Cn=a(46053),Kt=a(93587),ve=a.n(Kt),ot=void 0,at=function(d,c,f){return new Promise(function(u,T){var M=function(J){try{v(f.next(J))}catch(Ce){T(Ce)}},R=function(J){try{v(f.throw(J))}catch(Ce){T(Ce)}},v=function(J){return J.done?u(J.value):Promise.resolve(J.value).then(M,R)};v((f=f.apply(d,c)).next())})},Ft=function(){return window&&window.strapi&&window.strapi.isEE?a(97971).Z:a(16988).Z}(),En=function(){return window&&window.strapi&&window.strapi.isEE?a(49776).Z:a(10333).Z}(),bn=[{Component:function(){return{default:En}},to:"/settings/roles",exact:!0},{Component:function(){return{default:Ft}},to:"/settings/roles/duplicate/:id",exact:!0},{Component:function(){return{default:Ft}},to:"/settings/roles/new",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(2544).then(a.bind(a,3079));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/roles/:id",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(5199).then(a.bind(a,79005));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/users",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(4263).then(a.bind(a,28976));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/users/:id",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([a.e(4715),a.e(5162)]).then(a.bind(a,31854));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/webhooks/create",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,Promise.all([a.e(4715),a.e(5162)]).then(a.bind(a,24305));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/webhooks/:id",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(4121).then(a.bind(a,17542));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/webhooks",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(8056).then(a.bind(a,11116));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/api-tokens",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(4299).then(a.bind(a,96854));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/api-tokens/create",exact:!0},{Component:function(){return at(ot,null,ve().mark(function d(){var c;return ve().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,a.e(92).then(a.bind(a,14932));case 2:return c=u.sent,u.abrupt("return",c);case 4:case"end":return u.stop()}},d)}))},to:"/settings/api-tokens/:id",exact:!0}];const Xt=bn;var Sn=function(){return window&&window.strapi&&window.strapi.isEE?a(78251).Z:a(23027).Z}();const Pn=[].concat((0,Cn.Z)(Sn),(0,Cn.Z)(Xt));var Pt=a(89420),Tn=Object.defineProperty,An=Object.defineProperties,Yt=Object.getOwnPropertyDescriptors,Qt=Object.getOwnPropertySymbols,Rn=Object.prototype.hasOwnProperty,Jt=Object.prototype.propertyIsEnumerable,qt=(m,d,c)=>d in m?Tn(m,d,{enumerable:!0,configurable:!0,writable:!0,value:c}):m[d]=c,_t=(m,d)=>{for(var c in d||(d={}))Rn.call(d,c)&&qt(m,c,d[c]);if(Qt)for(var c of Qt(d))Jt.call(d,c)&&qt(m,c,d[c]);return m},en=(m,d)=>An(m,Yt(d));const Tt=({menu:m})=>{const{formatMessage:d}=(0,W.useIntl)(),f=vn(m).map(T=>en(_t({},T),{title:T.intlLabel,links:T.links.map(M=>en(_t({},M),{title:M.intlLabel,name:M.id}))})),u=d({id:"global.settings",defaultMessage:"Settings"});return e.createElement(Pt.SubNav,{ariaLabel:u},e.createElement(Pt.SubNavHeader,{label:u}),e.createElement(Pt.SubNavSections,null,f.map(T=>e.createElement(Pt.SubNavSection,{key:T.id,label:d(T.intlLabel)},T.links.map(M=>e.createElement(Pt.SubNavLink,{as:s.NavLink,withBullet:M.hasNotification,to:M.to,key:M.id},d(M.intlLabel)))))))};Tt.propTypes={menu:C().array.isRequired};const On=Tt;function tn(){const{settingId:m}=(0,s.useParams)(),{settings:d}=(0,E.useStrapiApp)(),{formatMessage:c}=(0,W.useIntl)(),{isLoading:f,menu:u}=(0,Te.Te)(),T=(0,e.useMemo)(()=>(0,fe.WW)(Pn.map(({to:v,Component:D,exact:J})=>(0,fe.ot)(D,v,J))),[]),M=Ht(d);if(f)return e.createElement(E.LoadingIndicatorPage,null);if(!m)return e.createElement(s.Redirect,{to:"/settings/application-infos"});const R=c({id:"global.settings",defaultMessage:"Settings"});return e.createElement(H.Layout,{sideNav:e.createElement(On,{menu:u})},e.createElement(Ie.Helmet,{title:R}),e.createElement(s.Switch,null,e.createElement(s.Route,{path:"/settings/application-infos",component:Jn,exact:!0}),T,M))}const Dn=(0,e.memo)(tn)},16988:(ne,x,a)=>{a.d(x,{Z:()=>H});var e=a(32735),E=a(5141);const H=()=>e.createElement(E.Redirect,{to:"/404"})},65150:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},3665:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},3288:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},16602:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},71218:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},13806:(ne,x,a)=>{a.d(x,{Z:()=>gr});var e=a(32735),E=a(60216),s=a.n(E),H=a(83985),W=a(81700),Ie=a(23973),Te=a.n(Ie),fe=a(86834),We=a.n(fe),q=a(5636),L=a(9808),b=a(19615),G=a(98978),he=a.n(G),U=a(67950),_=a(67793),et=a.n(_),Qe=a(31476),Ve=a.n(Qe),Se=a(35980),X=a(19192),C=a(33795),de=a.n(C),Ge=a(9086),ze=a.n(Ge),oe=a(28492),ue=a(42258),pe=a.n(ue),Ze=a(44526);const Je=b.default.div`
10
- position: relative;
11
-
12
- ${({hasConditions:o,disabled:t,theme:n})=>o&&`
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?n.colors.neutral100:n.colors.primary600};
22
- }
23
- `}
24
- `,tt=({onClick:o,className:t,hasConditions:n,variant:r})=>{const{formatMessage:i}=(0,q.useIntl)();return e.createElement(Je,{hasConditions:n,className:t},e.createElement(Ze.Button,{variant:r,startIcon:e.createElement(pe(),null),onClick:o},i({id:"global.settings",defaultMessage:"Settings"})))};tt.defaultProps={className:null,hasConditions:!1,variant:"tertiary"},tt.propTypes={onClick:s().func.isRequired,className:s().string,hasConditions:s().bool,variant:s().string};const $e=(0,b.default)(tt)``;var Ae=a(27635),He=a(90662),lt=a(4122),se=a(71657),I=a(95602),ae=a(49415),A=a(81346),te=a.n(A),ie=a(23940),z=a.n(ie),me=a(15453),Z=a(46053),k=a(25716);const re=`${120/16}rem`,Me=`${200/16}rem`,Ke=`${53/16}rem`;function qe(o,t){var n=typeof Symbol!="undefined"&&o[Symbol.iterator]||o["@@iterator"];if(!n){if(Array.isArray(o)||(n=st(o))||t&&o&&typeof o.length=="number"){n&&(o=n);var r=0,i=function(){};return{s:i,n:function(){return r>=o.length?{done:!0}:{done:!1,value:o[r++]}},e:function(y){throw y},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
25
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var l=!0,p=!1,g;return{s:function(){n=n.call(o)},n:function(){var y=n.next();return l=y.done,y},e:function(y){p=!0,g=y},f:function(){try{!l&&n.return!=null&&n.return()}finally{if(p)throw g}}}}function st(o,t){if(!!o){if(typeof o=="string")return _e(o,t);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor&&(n=o.constructor.name),n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _e(o,t)}}function _e(o,t){(t==null||t>o.length)&&(t=o.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=o[n];return r}var j=Object.defineProperty,le=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,Fe=function(t,n,r){return n in t?j(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r},Ue=function(t,n){for(var r in n||(n={}))V.call(n,r)&&Fe(t,r,n[r]);if(le){var i=qe(le(n)),l;try{for(i.s();!(l=i.n()).done;){var r=l.value;K.call(n,r)&&Fe(t,r,n[r])}}catch(p){i.e(p)}finally{i.f()}}return t},Xe=function(){return window&&window.strapi&&window.strapi.isEE?a(10265).Z:a(65150).Z}(),Q=(0,b.default)(X.Flex).withConfig({displayName:"ActionRow__FlexWrapper",componentId:"sc-1bqpgdl-0"})(["height:",";"],Ke),ye=function(t){var n=t.arrayOfOptionsGroupedByCategory,r=t.isFormDisabled,i=t.isGrey,l=t.label,p=t.name,g=t.onChange,h=t.value,y=(0,q.useIntl)(),P=y.formatMessage,F=n.reduce(function(w,N){var O=(0,U.Z)(N,2),B=O[0],Y=O[1],ce={label:z()(B),children:Y.map(function(Oe){return{label:Oe.displayName,value:Oe.id}})};return[].concat((0,Z.Z)(w),[ce])},[]),$=Object.values(h).map(function(w){return Object.entries(w).filter(function(N){var O=(0,U.Z)(N,2),B=O[1];return B}).map(function(N){var O=(0,U.Z)(N,1),B=O[0];return B})}).flat(),ee=function(N){var O=(0,U.Z)(n,1),B=(0,U.Z)(O[0],2),Y=B[1],ce=Y.reduce(function(Oe,Ee){return Ue((0,me.Z)({},Ee.id,N.includes(Ee.id)),Oe)},{});g(p,ce)};return e.createElement(Q,{as:"li",background:i?"neutral100":"neutral0"},e.createElement(X.Flex,{paddingLeft:6,style:{width:180}},e.createElement(I.Typography,{variant:"sigma",textColor:"neutral600"},P({id:"Settings.permissions.conditions.can",defaultMessage:"Can"}),"\xA0"),e.createElement(I.Typography,{variant:"sigma",title:l,textColor:"primary600",ellipsis:!0},P({id:"Settings.roles.form.permissions.".concat(l.toLowerCase()),defaultMessage:l})),e.createElement(I.Typography,{variant:"sigma",textColor:"neutral600"},"\xA0",P({id:"Settings.permissions.conditions.when",defaultMessage:"When"}))),e.createElement(L.Box,{style:{maxWidth:430,width:"100%"}},e.createElement(k.MultiSelectNested,{id:p,customizeContent:function(N){return"".concat(N.length," currently selected")},onChange:ee,value:$,options:F,disabled:r||Xe})))};ye.propTypes={arrayOfOptionsGroupedByCategory:s().array.isRequired,isFormDisabled:s().bool.isRequired,isGrey:s().bool.isRequired,label:s().string.isRequired,name:s().string.isRequired,value:s().object.isRequired,onChange:s().func.isRequired};const Re=ye;var S=a(92891);const on=(o,t)=>o.reduce((n,r)=>(n[r.id]=(0,S.get)(t,r.id,!1),n),{}),Vn=(o,t)=>o.reduce((n,r)=>{const[i,l]=r,p=on(l,t);return n[i]=p,n},{}),an=(o,t,n)=>o.reduce((r,i)=>{const l=(0,S.get)(t,[...i.pathToConditionsObject,"conditions"],{}),p=Vn(n,l);return r[i.pathToConditionsObject.join("..")]=p,r},{});var Ot=Object.defineProperty,wt=Object.getOwnPropertySymbols,Dt=Object.prototype.hasOwnProperty,rn=Object.prototype.propertyIsEnumerable,nt=(o,t,n)=>t in o?Ot(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,xt=(o,t)=>{for(var n in t||(t={}))Dt.call(t,n)&&nt(o,n,t[n]);if(wt)for(var n of wt(t))rn.call(t,n)&&nt(o,n,t[n]);return o};const jt=({actions:o,headerBreadCrumbs:t,isFormDisabled:n,onClosed:r,onToggle:i})=>{const{formatMessage:l}=(0,q.useIntl)(),{availableConditions:p,modifiedData:g,onChangeConditions:h}=(0,oe.$_)(),y=(0,e.useMemo)(()=>Object.entries(te()(p,"category")),[p]),P=o.filter(({isDisplayed:O,hasSomeActionsSelected:B,hasAllActionsSelected:Y})=>O&&(B||Y)),F=(0,e.useMemo)(()=>an(P,g,y),[P,g,y]),[$,ee]=(0,e.useState)(F),w=(O,B)=>{ee((0,ae.default)(Y=>{Y[O]||(Y[O]={}),Y[O].default||(Y[O].default={}),Y[O].default=B}))},N=()=>{const O=Object.entries($).reduce((B,Y)=>{const[ce,Oe]=Y,Ee=Object.values(Oe).reduce((De,we)=>xt(xt({},De),we),{});return B[ce]=Ee,B},{});h(O),i()};return e.createElement(lt.ModalLayout,{labelledBy:"condition-modal-breadcrumbs",onClose:r},e.createElement(lt.ModalHeader,null,e.createElement(se.Breadcrumbs,{id:"condition-modal-breadcrumbs",label:t.join(", ")},t.map(O=>e.createElement(se.Crumb,{key:O},z()(l({id:O,defaultMessage:O})))))),e.createElement(L.Box,{padding:8},e.createElement(He.Stack,{spacing:6},e.createElement(I.Typography,{variant:"beta",as:"h2"},l({id:"Settings.permissions.conditions.define-conditions",defaultMessage:"Define conditions"})),e.createElement(L.Box,null,e.createElement(Ae.Divider,null)),e.createElement(L.Box,null,P.length===0&&e.createElement(I.Typography,null,l({id:"Settings.permissions.conditions.no-actions",defaultMessage:"You first need to select actions (create, read, update, ...) before defining conditions on them."})),e.createElement("ul",null,P.map(({actionId:O,label:B,pathToConditionsObject:Y},ce)=>{const Oe=Y.join("..");return e.createElement(Re,{key:O,arrayOfOptionsGroupedByCategory:y,label:B,isFormDisabled:n,isGrey:ce%2===0,name:Oe,onChange:w,value:de()($,Oe,{})})}))))),e.createElement(lt.ModalFooter,{startActions:e.createElement(Ze.Button,{variant:"tertiary",onClick:i},l({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(Ze.Button,{onClick:N},l({id:"Settings.permissions.conditions.apply",defaultMessage:"Apply"}))}))};jt.propTypes={actions:s().arrayOf(s().shape({actionId:s().string.isRequired,checkboxName:s().string,hasSomeActionsSelected:s().bool.isRequired,hasAllActionsSelected:s().bool,isDisplayed:s().bool.isRequired,label:s().string})).isRequired,headerBreadCrumbs:s().arrayOf(s().string).isRequired,isFormDisabled:s().bool.isRequired,onClosed:s().func.isRequired,onToggle:s().func.isRequired};const Ct=jt,Nt=b.default.div`
26
- width: ${re};
27
- `,Et=(0,b.default)(X.Flex)`
28
- padding-right: ${({theme:o})=>o.spaces[2]};
29
- overflow: hidden;
30
- flex: 1;
31
- ${({isCollapsable:o})=>o&&"cursor: pointer;"}
32
- `;var sn=Object.defineProperty,bt=Object.getOwnPropertySymbols,Zn=Object.prototype.hasOwnProperty,ln=Object.prototype.propertyIsEnumerable,Wt=(o,t,n)=>t in o?sn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,cn=(o,t)=>{for(var n in t||(t={}))Zn.call(t,n)&&Wt(o,n,t[n]);if(bt)for(var n of bt(t))ln.call(t,n)&&Wt(o,n,t[n]);return o};const $t=({children:o,isCollapsable:t,isActive:n,isFormDisabled:r,label:i,onChange:l,onClick:p,checkboxName:g,someChecked:h,value:y})=>{const{formatMessage:P}=(0,q.useIntl)();return e.createElement(X.Flex,{alignItems:"center",paddingLeft:6,style:{width:Me,flexShrink:0}},e.createElement(L.Box,{paddingRight:2},e.createElement(Se.BaseCheckbox,{name:g,"aria-label":P({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:i}),disabled:r,onValueChange:F=>l({target:{name:g,value:F}}),indeterminate:h,value:y})),e.createElement(Et,cn({title:i,alignItems:"center",isCollapsable:t},t&&{onClick:p,"aria-expanded":n,onKeyDown:({key:F})=>(F==="Enter"||F===" ")&&p(),tabIndex:0,role:"button"}),e.createElement(I.Typography,{fontWeight:n?"bold":"",textColor:n?"primary600":"neutral800",ellipsis:!0},z()(i)),o))};$t.defaultProps={children:null,checkboxName:"",onChange:()=>{},value:!1,someChecked:!1,isCollapsable:!1},$t.propTypes={checkboxName:s().string,children:s().node,label:s().string.isRequired,isCollapsable:s().bool,isFormDisabled:s().bool.isRequired,onChange:s().func,onClick:s().func.isRequired,someChecked:s().bool,value:s().bool,isActive:s().bool.isRequired};const Ut=(0,e.memo)($t),St=o=>(0,S.isObject)(o)?(0,S.flattenDeep)(Object.values(o).map(t=>(0,S.isObject)(t)?St(t):t)):[],mt=St,Mt=o=>o?Object.keys(o).reduce((t,n)=>(n!=="conditions"&&(t[n]=o[n]),t),{}):null,ct=o=>{const t=Mt(o),n=mt(t);if(!n.length)return{hasAllActionsSelected:!1,hasSomeActionsSelected:!1};const r=n.every(l=>l),i=n.some(l=>l)&&!r;return{hasAllActionsSelected:r,hasSomeActionsSelected:i}},un=(o,t,n)=>o.map(({actionId:r,isDisplayed:i,applyToProperties:l,label:p})=>{if(!i)return{actionId:r,hasSomeActionsSelected:!1,isDisplayed:i};const g=[...n.split(".."),r],h=(0,S.isEmpty)(l)?[...g,"properties","enabled"]:g,y=h.join(".."),P=(0,S.get)(t,[...g,"conditions"],null),F=mt(P).some(N=>N);if((0,S.isEmpty)(l)){const N=(0,S.get)(t,h,!1);return{actionId:r,checkboxName:y,hasAllActionsSelected:N,hasConditions:F,hasSomeActionsSelected:N,isDisplayed:i,isParentCheckbox:!1,label:p,pathToConditionsObject:g}}const $=(0,S.get)(t,h,null),{hasAllActionsSelected:ee,hasSomeActionsSelected:w}=ct($);return{actionId:r,checkboxName:y,hasAllActionsSelected:ee,hasConditions:F,hasSomeActionsSelected:w,isDisplayed:i,isParentCheckbox:!0,label:p,pathToConditionsObject:g}});var kt=a(60672),pn=a.n(kt);const gt=(0,b.default)(pn())`
33
- display: none;
34
- width: ${10/16}rem;
35
- transform: rotate(${({$isActive:o})=>o?"180":"0"}deg);
36
- margin-left: ${({theme:o})=>o.spaces[2]};
37
- `,ht=o=>`
38
- ${I.Typography} {
39
- color: ${o.colors.primary600};
40
- font-weight: ${o.fontWeights.bold}
41
- }
42
- ${gt} {
43
- display: block;
44
- path {
45
- fill: ${o.colors.primary600}
46
- };
47
- }
48
- `;var mn=function(){return window&&window.strapi&&window.strapi.isEE?a(47902).Z:a(3665).Z}(),Lt=function o(t,n){return`
49
- `.concat(It,` {
50
- background-color: `).concat(t.colors.primary100,`;
51
- color: `).concat(t.colors.primary600,`;
52
- border-radius: `).concat(n?"2px 2px 0 0":"2px",`;
53
- }
54
- `).concat(fn,` {
55
- display: flex;
56
- }
57
- `).concat($e,` {
58
- display: block;
59
- }
60
- &:hover {
61
- `).concat(ht(t),`
62
- }
63
-
64
- &:focus-within {
65
- `).concat(function(r){var i=r.theme,l=r.isActive;return o(i,l)},`
66
- }
67
-
68
- `)},It=b.default.div.withConfig({displayName:"Collapse__Wrapper",componentId:"sc-132fji1-0"})(["flex:1;display:flex;align-items:center;height:",";background-color:",";border:1px solid transparent;"],Ke,function(o){var t=o.isGrey,n=o.theme;return t?n.colors.neutral100:n.colors.neutral0}),gn=b.default.div.withConfig({displayName:"Collapse__BoxWrapper",componentId:"sc-132fji1-1"})(["display:inline-flex;min-width:100%;","{display:none;}"," &:hover{","}"],$e,function(o){var t=o.isActive,n=o.theme;return t&&Lt(n,t)},function(o){var t=o.theme,n=o.isActive;return Lt(t,n)}),Vt=(0,b.default)(X.Flex).withConfig({displayName:"Collapse__Cell",componentId:"sc-132fji1-2"})(["width:",";position:relative;"],re),fn=(0,b.default)(L.Box).withConfig({displayName:"Collapse__Chevron",componentId:"sc-132fji1-3"})(["display:none;svg{width:11px;}*{fill:",";}"],function(o){var t=o.theme;return t.colors.primary600}),Gt=b.default.span.withConfig({displayName:"Collapse__TinyDot",componentId:"sc-132fji1-4"})(["position:absolute;top:-6px;left:37px;width:6px;height:6px;border-radius:20px;background:",";"],function(o){var t=o.theme;return t.colors.primary600}),hn=(0,b.default)(L.Box).withConfig({displayName:"Collapse__AbsoluteBox",componentId:"sc-132fji1-5"})(["position:absolute;right:9px;transform:translateY(10px);"]),zt=function(t){var n=t.availableActions,r=t.isActive,i=t.isGrey,l=t.isFormDisabled,p=t.label,g=t.onClickToggle,h=t.pathToData,y=(0,e.useState)(!1),P=(0,U.Z)(y,2),F=P[0],$=P[1],ee=(0,q.useIntl)(),w=ee.formatMessage,N=(0,oe.$_)(),O=N.modifiedData,B=N.onChangeParentCheckbox,Y=N.onChangeSimpleCheckbox,ce=function(){$(function(Pe){return!Pe})},Oe=function(){$(!1)},Ee=de()(O,h.split(".."),{}),De=(0,e.useMemo)(function(){return Object.keys(Ee).reduce(function(ge,Pe){return ge[Pe]=ze()(Ee[Pe],"conditions"),ge},{})},[Ee]),we=ct(De),Le=we.hasAllActionsSelected,yt=we.hasSomeActionsSelected,be=(0,e.useMemo)(function(){return un(n,O,h)},[n,O,h]),je=be.some(function(ge){var Pe=ge.hasConditions;return Pe});return e.createElement(gn,{isActive:r},e.createElement(It,{isGrey:i},e.createElement(Ut,{isCollapsable:!0,isFormDisabled:l,label:p,checkboxName:h,onChange:B,onClick:g,someChecked:yt,value:Le,isActive:r},e.createElement(fn,{paddingLeft:2},r?e.createElement(Ve(),null):e.createElement(et(),null))),e.createElement(X.Flex,{style:{flex:1}},be.map(function(ge){var Pe=ge.actionId,xe=ge.hasConditions,Ne=ge.hasAllActionsSelected,ke=ge.hasSomeActionsSelected,ft=ge.isDisplayed,Ye=ge.isParentCheckbox,pt=ge.checkboxName,At=ge.label;return ft?Ye?e.createElement(Vt,{key:Pe,justifyContent:"center",alignItems:"center"},xe&&e.createElement(Gt,null),e.createElement(Se.BaseCheckbox,{disabled:l||mn,name:pt,"aria-label":w({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(At," ").concat(p)}),onValueChange:function(vt){B({target:{name:pt,value:vt}})},indeterminate:ke,value:Ne})):e.createElement(Vt,{key:Pe,justifyContent:"center",alignItems:"center"},xe&&e.createElement(Gt,null),e.createElement(Se.BaseCheckbox,{disabled:l||mn,indeterminate:xe,name:pt,onValueChange:function(vt){Y({target:{name:pt,value:vt}})},value:Ne})):e.createElement(Nt,{key:Pe})})),F&&e.createElement(Ct,{headerBreadCrumbs:[p,"app.components.LeftMenuLinkContainer.settings"],actions:be,isFormDisabled:l,onClosed:Oe,onToggle:ce})),e.createElement(hn,null,e.createElement($e,{onClick:ce,hasConditions:je})))};zt.propTypes={availableActions:s().array.isRequired,isActive:s().bool.isRequired,isGrey:s().bool.isRequired,isFormDisabled:s().bool.isRequired,label:s().string.isRequired,onClickToggle:s().func.isRequired,pathToData:s().string.isRequired};const Qn=zt,yn=(o,t)=>o.map(n=>{const r=Array.isArray(n.applyToProperties)&&n.applyToProperties.indexOf(t)!==-1&&n.isDisplayed;return{label:n.label,actionId:n.actionId,isActionRelatedToCurrentProperty:r}}),Zt=(0,b.default)(X.Flex)`
69
- width: ${re};
70
- flex-shrink: 0;
71
- `,qn=(0,b.default)(X.Flex)`
72
- width: ${Me};
73
- height: ${Ke};
74
- flex-shrink: 0;
75
- `,Ht=({headers:o,label:t})=>{const{formatMessage:n}=(0,q.useIntl)(),r=n({id:"Settings.roles.form.permission.property-label",defaultMessage:"{label} permissions"},{label:t});return e.createElement(X.Flex,null,e.createElement(qn,{alignItems:"center",paddingLeft:6},e.createElement(I.Typography,{variant:"sigma",textColor:"neutral500"},r)),o.map(i=>i.isActionRelatedToCurrentProperty?e.createElement(Zt,{justifyContent:"center",key:i.label},e.createElement(I.Typography,{variant:"sigma",textColor:"neutral500"},n({id:`Settings.roles.form.permissions.${i.label.toLowerCase()}`,defaultMessage:i.label}))):e.createElement(Zt,{key:i.label})))};Ht.propTypes={headers:s().arrayOf(s().shape({label:s().string.isRequired,isActionRelatedToCurrentProperty:s().bool.isRequired})).isRequired,label:s().string.isRequired};const _n=Ht,vn=b.default.span`
76
- color: ${({theme:o})=>o.colors.danger700};
77
- padding-left: ${({theme:o})=>o.spaces[1]}px;
78
- `,Kt=()=>e.createElement(vn,null,"*");var ve=Object.defineProperty,ot=Object.defineProperties,at=Object.getOwnPropertyDescriptors,Ft=Object.getOwnPropertySymbols,En=Object.prototype.hasOwnProperty,bn=Object.prototype.propertyIsEnumerable,Xt=(o,t,n)=>t in o?ve(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Sn=(o,t)=>{for(var n in t||(t={}))En.call(t,n)&&Xt(o,n,t[n]);if(Ft)for(var n of Ft(t))bn.call(t,n)&&Xt(o,n,t[n]);return o},Pn=(o,t)=>ot(o,at(t));const Tn=(o,t)=>o.map(n=>{const r=Array.isArray(n.subjects)&&n.subjects.indexOf(t)!==-1;return Pn(Sn({},n),{isDisplayed:r})});var An=Object.defineProperty,Yt=Object.getOwnPropertySymbols,Qt=Object.prototype.hasOwnProperty,Rn=Object.prototype.propertyIsEnumerable,Jt=(o,t,n)=>t in o?An(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,qt=(o,t)=>{for(var n in t||(t={}))Qt.call(t,n)&&Jt(o,n,t[n]);if(Yt)for(var n of Yt(t))Rn.call(t,n)&&Jt(o,n,t[n]);return o};const _t=(0,b.default)(L.Box)`
79
- transform: translate(-4px, -12px);
80
-
81
- &:before {
82
- content: '';
83
- width: ${4/16}rem;
84
- height: ${12/16}rem;
85
- background: ${({theme:o})=>o.colors.primary200};
86
- display: block;
87
- }
88
- `,en=b.default.svg`
89
- position: relative;
90
- flex-shrink: 0;
91
- transform: translate(-0.5px, -1px);
92
-
93
- * {
94
- fill: ${({theme:o,color:t})=>o.colors[t]};
95
- }
96
- `,Tt=o=>e.createElement(_t,null,e.createElement(en,qt({width:"20",height:"23",viewBox:"0 0 20 23",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o),e.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.02477 14.7513C8.65865 17.0594 11.6046 18.6059 17.5596 18.8856C18.6836 18.9384 19.5976 19.8435 19.5976 20.9688V20.9688C19.5976 22.0941 18.6841 23.0125 17.5599 22.9643C10.9409 22.6805 6.454 20.9387 3.75496 17.1258C0.937988 13.1464 0.486328 7.39309 0.486328 0.593262H4.50974C4.50974 7.54693 5.06394 11.9813 7.02477 14.7513Z",fill:"#D9D8FF"})));Tt.defaultProps={fill:"primary200"},Tt.propTypes={fill:s().string};const On=(0,e.memo)(Tt);function tn(o,t){var n=typeof Symbol!="undefined"&&o[Symbol.iterator]||o["@@iterator"];if(!n){if(Array.isArray(o)||(n=Dn(o))||t&&o&&typeof o.length=="number"){n&&(o=n);var r=0,i=function(){};return{s:i,n:function(){return r>=o.length?{done:!0}:{done:!1,value:o[r++]}},e:function(y){throw y},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
97
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var l=!0,p=!1,g;return{s:function(){n=n.call(o)},n:function(){var y=n.next();return l=y.done,y},e:function(y){p=!0,g=y},f:function(){try{!l&&n.return!=null&&n.return()}finally{if(p)throw g}}}}function Dn(o,t){if(!!o){if(typeof o=="string")return m(o,t);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor&&(n=o.constructor.name),n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(o,t)}}function m(o,t){(t==null||t>o.length)&&(t=o.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=o[n];return r}var d=Object.defineProperty,c=Object.defineProperties,f=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,T=Object.prototype.hasOwnProperty,M=Object.prototype.propertyIsEnumerable,R=function(t,n,r){return n in t?d(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r},v=function(t,n){for(var r in n||(n={}))T.call(n,r)&&R(t,r,n[r]);if(u){var i=tn(u(n)),l;try{for(i.s();!(l=i.n()).done;){var r=l.value;M.call(n,r)&&R(t,r,n[r])}}catch(p){i.e(p)}finally{i.f()}}return t},D=function(t,n){return c(t,f(n))},J=function(){return window&&window.strapi&&window.strapi.isEE?a(38292).Z:a(16602).Z}(),Ce=(0,b.default)(X.Flex).withConfig({displayName:"SubActionRow__Cell",componentId:"sc-7y8yzq-0"})(["width:",";position:relative;"],re),Be=(0,b.default)(X.Flex).withConfig({displayName:"SubActionRow__RowWrapper",componentId:"sc-7y8yzq-1"})(["height:",";"],Ke),dt=(0,b.default)(L.Box).withConfig({displayName:"SubActionRow__Wrapper",componentId:"sc-7y8yzq-2"})(["padding-left:","rem;"],31/16),it=(0,b.default)(L.Box).withConfig({displayName:"SubActionRow__LeftBorderTimeline",componentId:"sc-7y8yzq-3"})(["border-left:",";"],function(o){var t=o.isVisible,n=o.theme;return t?"4px solid ".concat(n.colors.primary200):"4px solid transparent"}),rt=(0,b.default)(X.Flex).withConfig({displayName:"SubActionRow__RowStyle",componentId:"sc-7y8yzq-4"})(["padding-left:",";width:","px;"," ",";"],function(o){var t=o.theme;return t.spaces[4]},function(o){var t=o.level;return 145-t*36},function(o){var t=o.isCollapsable,n=o.theme;return t&&`
98
- `.concat(gt,` {
99
- display: block;
100
- color: `).concat(n.colors.neutral100,`;
101
- }
102
- &:hover {
103
- `).concat(ht(n),`
104
- }
105
- `)},function(o){var t=o.isActive,n=o.theme;return t&&ht(n)}),ut=b.default.div.withConfig({displayName:"SubActionRow__TopTimeline",componentId:"sc-7y8yzq-5"})(["padding-top:",";margin-top:",";width:","rem;background-color:",";border-top-left-radius:2px;border-top-right-radius:2px;"],function(o){var t=o.theme;return t.spaces[2]},function(o){var t=o.theme;return t.spaces[2]},4/16,function(o){var t=o.theme;return t.colors.primary200}),eo=function o(t){var n=t.childrenForm,r=t.isFormDisabled,i=t.recursiveLevel,l=t.pathToDataFromActionRow,p=t.propertyActions,g=t.parentName,h=t.propertyName,y=(0,q.useIntl)(),P=y.formatMessage,F=(0,oe.$_)(),$=F.modifiedData,ee=F.onChangeParentCheckbox,w=F.onChangeSimpleCheckbox,N=(0,e.useState)(null),O=(0,U.Z)(N,2),B=O[0],Y=O[1],ce=function(De){Y(function(we){return we===De?null:De})},Oe=(0,e.useMemo)(function(){return B?n.find(function(Ee){var De=Ee.value;return De===B}):null},[B,n]);return e.createElement(dt,null,e.createElement(ut,null),n.map(function(Ee,De){var we=Ee.label,Le=Ee.value,yt=Ee.required,be=Ee.children,je=De+1<n.length,ge=Array.isArray(be),Pe=B===Le;return e.createElement(it,{key:Le,isVisible:je},e.createElement(Be,null,e.createElement(On,{color:"primary200"}),e.createElement(X.Flex,{style:{flex:1}},e.createElement(rt,{level:i,isActive:Pe,isCollapsable:ge},e.createElement(Et,D(v({alignItems:"center",isCollapsable:ge},ge&&{onClick:function(){return ce(Le)},"aria-expanded":Pe,onKeyDown:function(Ne){var ke=Ne.key;return(ke==="Enter"||ke===" ")&&ce(Le)},tabIndex:0,role:"button"}),{title:we}),e.createElement(I.Typography,{ellipsis:!0},z()(we)),yt&&e.createElement(Kt,null),e.createElement(gt,{$isActive:Pe}))),e.createElement(X.Flex,{style:{flex:1}},p.map(function(xe){var Ne=xe.actionId,ke=xe.label,ft=xe.isActionRelatedToCurrentProperty;if(!ft)return e.createElement(Nt,{key:Ne});var Ye=[].concat((0,Z.Z)(l.split("..")),[Ne,"properties",h],(0,Z.Z)(g.split("..")),[Le]),pt=de()($,Ye,!1);if(!be)return e.createElement(Ce,{key:ke,justifyContent:"center",alignItems:"center"},e.createElement(Se.BaseCheckbox,{disabled:r||J,name:Ye.join(".."),"aria-label":P({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(g," ").concat(we," ").concat(ke)}),onValueChange:function(Bt){w({target:{name:Ye.join(".."),value:Bt}})},value:pt}));var At=ct(pt),Rt=At.hasAllActionsSelected,vt=At.hasSomeActionsSelected;return e.createElement(Ce,{key:ke,justifyContent:"center",alignItems:"center"},e.createElement(Se.BaseCheckbox,{key:ke,disabled:r||J,name:Ye.join(".."),"aria-label":P({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(g," ").concat(we," ").concat(ke)}),onValueChange:function(Bt){ee({target:{name:Ye.join(".."),value:Bt}})},value:Rt,indeterminate:vt}))})))),Oe&&Pe&&e.createElement(L.Box,{paddingBottom:2},e.createElement(o,{isFormDisabled:r,parentName:"".concat(g,"..").concat(Le),pathToDataFromActionRow:l,propertyActions:p,propertyName:h,recursiveLevel:i+1,childrenForm:Oe.children})))}))};eo.propTypes={childrenForm:s().array.isRequired,isFormDisabled:s().bool.isRequired,parentName:s().string.isRequired,pathToDataFromActionRow:s().string.isRequired,propertyActions:s().array.isRequired,propertyName:s().string.isRequired,recursiveLevel:s().number.isRequired};const Zo=(0,e.memo)(eo),Ho=o=>o.reduce((n,r)=>(r.isActionRelatedToCurrentProperty&&n.push(r.actionId),n),[]),Ko=(o,t,n,r,i)=>{const p=Ho(o).reduce((g,h)=>{const y=[...n.split(".."),h,"properties",r,i],P=(0,S.get)(t,y,!1);return g[h]=P,g},{});return ct(p)};var to=function(){return window&&window.strapi&&window.strapi.isEE?a(71231).Z:a(3288).Z}(),no=(0,b.default)(X.Flex).withConfig({displayName:"ActionRow__Cell",componentId:"sc-4agenc-0"})(["width:",";position:relative;"],re),Xo=(0,b.default)(X.Flex).withConfig({displayName:"ActionRow__Wrapper",componentId:"sc-4agenc-1"})(["height:",";flex:1;"," ",";"],Ke,function(o){var t=o.isCollapsable,n=o.theme;return t&&`
106
- `.concat(gt,` {
107
- display: block;
108
- color: `).concat(n.colors.neutral100,`;
109
- }
110
- &:hover {
111
- `).concat(ht(n),`
112
- }
113
- `)},function(o){var t=o.isActive,n=o.theme;return t&&ht(n)}),xn=function(t){var n=t.childrenForm,r=t.label,i=t.isFormDisabled,l=t.name,p=t.required,g=t.pathToData,h=t.propertyActions,y=t.propertyName,P=t.isOdd,F=(0,q.useIntl)(),$=F.formatMessage,ee=(0,e.useState)(null),w=(0,U.Z)(ee,2),N=w[0],O=w[1],B=(0,oe.$_)(),Y=B.modifiedData,ce=B.onChangeCollectionTypeLeftActionRowCheckbox,Oe=B.onChangeParentCheckbox,Ee=B.onChangeSimpleCheckbox,De=N===l,we=(0,e.useMemo)(function(){return Array.isArray(n)?n:[]},[n]),Le=we.length>0,yt=(0,e.useCallback)(function(){Le&&O(function(xe){return xe===l?null:l})},[Le,l]),be=function(Ne){var ke=Ne.target.value;ce(g,y,l,ke)},je=(0,e.useMemo)(function(){return Ko(h,Y,g,y,l)},[h,Y,g,y,l]),ge=je.hasAllActionsSelected,Pe=je.hasSomeActionsSelected;return e.createElement(e.Fragment,null,e.createElement(Xo,{alignItems:"center",isCollapsable:Le,isActive:De,background:P?"neutral100":"neutral0"},e.createElement(X.Flex,null,e.createElement(Ut,{onChange:be,onClick:yt,isCollapsable:Le,isFormDisabled:i,label:r,someChecked:Pe,value:ge,isActive:De},p&&e.createElement(Kt,null),e.createElement(gt,{$isActive:De})),e.createElement(X.Flex,null,h.map(function(xe){var Ne=xe.label,ke=xe.isActionRelatedToCurrentProperty,ft=xe.actionId;if(!ke)return e.createElement(Nt,{key:Ne});var Ye=[].concat((0,Z.Z)(g.split("..")),[ft,"properties",y,l]);if(!Le){var pt=de()(Y,Ye,!1);return e.createElement(no,{key:ft,justifyContent:"center",alignItems:"center"},e.createElement(Se.BaseCheckbox,{disabled:i||to,name:Ye.join(".."),"aria-label":$({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(l," ").concat(Ne)}),onValueChange:function(kn){Ee({target:{name:Ye.join(".."),value:kn}})},value:pt}))}var At=de()(Y,Ye,{}),Rt=ct(At),vt=Rt.hasAllActionsSelected,Un=Rt.hasSomeActionsSelected;return e.createElement(no,{key:Ne,justifyContent:"center",alignItems:"center"},e.createElement(Se.BaseCheckbox,{disabled:i||to,name:Ye.join(".."),onValueChange:function(kn){Oe({target:{name:Ye.join(".."),value:kn}})},"aria-label":$({id:"Settings.permissions.select-by-permission",defaultMessage:"Select {label} permission"},{label:"".concat(l," ").concat(Ne)}),value:vt,indeterminate:Un}))})))),De&&e.createElement(Zo,{childrenForm:we,isFormDisabled:i,parentName:l,pathToDataFromActionRow:g,propertyName:y,propertyActions:h,recursiveLevel:0}))};xn.defaultProps={childrenForm:[],required:!1},xn.propTypes={childrenForm:s().array,label:s().string.isRequired,isFormDisabled:s().bool.isRequired,name:s().string.isRequired,pathToData:s().string.isRequired,propertyActions:s().array.isRequired,propertyName:s().string.isRequired,required:s().bool,isOdd:s().bool.isRequired};const Yo=(0,e.memo)(xn),Qo=b.default.div`
114
- display: inline-flex;
115
- flex-direction: column;
116
- min-width: 0;
117
- `,oo=({availableActions:o,childrenForm:t,isFormDisabled:n,label:r,pathToData:i,propertyName:l})=>{const p=(0,e.useMemo)(()=>yn(o,l),[o,l]);return e.createElement(Qo,null,e.createElement(_n,{label:r,headers:p}),e.createElement(L.Box,null,t.map(({children:g,label:h,value:y,required:P},F)=>e.createElement(Yo,{childrenForm:g,key:y,label:h,isFormDisabled:n,name:y,required:P,propertyActions:p,pathToData:i,propertyName:l,isOdd:F%2===0}))))};oo.propTypes={childrenForm:s().array.isRequired,availableActions:s().array.isRequired,isFormDisabled:s().bool.isRequired,label:s().string.isRequired,pathToData:s().string.isRequired,propertyName:s().string.isRequired};const Jo=oo,qo=b.default.div`
118
- flex-direction: column;
119
- display: inline-flex;
120
- min-width: 100%;
121
- ${({theme:o,isActive:t})=>t&&`border: 1px solid ${o.colors.primary600};`}
122
- `,ao=({allActions:o,contentTypeName:t,label:n,index:r,isActive:i,isFormDisabled:l,onClickToggleCollapse:p,pathToData:g,properties:h})=>{const y=(0,e.useCallback)(()=>{p(t)},[t,p]),P=(0,e.useMemo)(()=>Tn(o,t),[o,t]);return e.createElement(qo,{isActive:i},e.createElement(Qn,{availableActions:P,isActive:i,isGrey:r%2===0,isFormDisabled:l,label:n,onClickToggle:y,pathToData:g}),i&&h.map(({label:F,value:$,children:ee})=>e.createElement(Jo,{availableActions:P,childrenForm:ee,isFormDisabled:l,label:F,pathToData:g,propertyName:$,key:$})))};ao.propTypes={allActions:s().array.isRequired,contentTypeName:s().string.isRequired,index:s().number.isRequired,isActive:s().bool.isRequired,isFormDisabled:s().bool.isRequired,label:s().string.isRequired,onClickToggleCollapse:s().func.isRequired,pathToData:s().string.isRequired,properties:s().array.isRequired};const _o=ao,Mn=({actions:o,isFormDisabled:t,pathToData:n,subjects:r})=>{const[i,l]=(0,e.useState)(null),p=g=>{l(i===g?null:g)};return r.map(({uid:g,label:h,properties:y},P)=>e.createElement(_o,{allActions:o,key:g,contentTypeName:g,label:h,isActive:i===g,isFormDisabled:t,index:P,onClickToggleCollapse:p,pathToData:`${n}..${g}`,properties:y}))};Mn.defaultProps={actions:[],subjects:[]},Mn.propTypes={actions:s().array.isRequired,isFormDisabled:s().bool.isRequired,pathToData:s().string.isRequired,subjects:s().arrayOf(s().shape({uid:s().string.isRequired,label:s().string.isRequired,properties:s().array.isRequired}))};const ea=(0,e.memo)(Mn),ta=o=>o.filter(({subjects:t})=>t&&t.length);var na=Object.defineProperty,ro=Object.getOwnPropertySymbols,oa=Object.prototype.hasOwnProperty,aa=Object.prototype.propertyIsEnumerable,so=(o,t,n)=>t in o?na(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,io=(o,t)=>{for(var n in t||(t={}))oa.call(t,n)&&so(o,n,t[n]);if(ro)for(var n of ro(t))aa.call(t,n)&&so(o,n,t[n]);return o};const ra=o=>o.map(({actionId:t})=>t),sa=(o,t)=>o.reduce((n,r)=>(Object.keys(t).forEach(i=>{const l=(0,S.get)(t,[i,r],{}),p={[i]:Mt(l)};n[r]?n[r]=io(io({},n[r]),p):n[r]=p}),n),{}),ia=(o,t)=>{const n=ra(o),r=sa(n,t);return Object.keys(r).reduce((l,p)=>(l[p]=ct(r[p]),l),{})};var la=function(){return window&&window.strapi&&window.strapi.isEE?a(66713).Z:a(71218).Z}(),ca=(0,b.default)(He.Stack).withConfig({displayName:"GlobalActions__CenteredStack",componentId:"sc-1vxwsjr-0"})(["align-items:center;justify-content:center;width:",";flex-shrink:0;"],re),Ln=function(t){var n=t.actions,r=t.isFormDisabled,i=t.kind,l=(0,q.useIntl)(),p=l.formatMessage,g=(0,oe.$_)(),h=g.modifiedData,y=g.onChangeCollectionTypeGlobalActionCheckbox,P=(0,e.useMemo)(function(){return ta(n)},[n]),F=(0,e.useMemo)(function(){return ia(P,h[i])},[h,P,i]);return e.createElement(L.Box,{paddingBottom:4,paddingTop:6,style:{paddingLeft:Me}},e.createElement(He.Stack,{horizontal:!0,spacing:0},P.map(function($){var ee=$.label,w=$.actionId;return e.createElement(ca,{key:w,spacing:3},e.createElement(I.Typography,{variant:"sigma",textColor:"neutral500"},p({id:"Settings.roles.form.permissions.".concat(ee.toLowerCase()),defaultMessage:ee})),e.createElement(Se.BaseCheckbox,{disabled:r||la,onValueChange:function(O){y(i,w,O)},name:w,"aria-label":p({id:"Settings.permissions.select-all-by-permission",defaultMessage:"Select all {label} permissions"},{label:p({id:"Settings.roles.form.permissions.".concat(ee.toLowerCase()),defaultMessage:ee})}),value:de()(F,[w,"hasAllActionsSelected"],!1),indeterminate:de()(F,[w,"hasSomeActionsSelected"],!1)}))})))};Ln.defaultProps={actions:[]},Ln.propTypes={actions:s().arrayOf(s().shape({label:s().string.isRequired,actionId:s().string.isRequired,subjects:s().array.isRequired})),isFormDisabled:s().bool.isRequired,kind:s().string.isRequired};const da=(0,e.memo)(Ln),ua=(0,b.default)(L.Box)`
123
- overflow-x: auto;
124
- `,lo=({isFormDisabled:o,kind:t,layout:{actions:n,subjects:r}})=>{const i=he()([...r],"label");return e.createElement(ua,{background:"neutral0"},e.createElement(da,{actions:n,kind:t,isFormDisabled:o}),e.createElement(ea,{actions:n,isFormDisabled:o,pathToData:t,subjects:i}))};lo.propTypes={isFormDisabled:s().bool.isRequired,kind:s().string.isRequired,layout:s().shape({actions:s().array,subjects:s().arrayOf(s().shape({uid:s().string.isRequired,label:s().string.isRequired,properties:s().array.isRequired}))}).isRequired};const co=(0,e.memo)(lo);var pa=a(64564);const uo=({children:o,value:t})=>e.createElement(pa.$l.Provider,{value:t},o);uo.propTypes={children:s().node.isRequired,value:s().exact({availableConditions:s().array.isRequired,modifiedData:s().object.isRequired,onChangeCollectionTypeLeftActionRowCheckbox:s().func.isRequired,onChangeConditions:s().func.isRequired,onChangeSimpleCheckbox:s().func.isRequired,onChangeParentCheckbox:s().func.isRequired,onChangeCollectionTypeGlobalActionCheckbox:s().func.isRequired}).isRequired};const ma=uo;var In=a(12001),po=a(78330),mo=a(52111),ga=Object.defineProperty,fa=Object.defineProperties,ha=Object.getOwnPropertyDescriptors,go=Object.getOwnPropertySymbols,ya=Object.prototype.hasOwnProperty,va=Object.prototype.propertyIsEnumerable,fo=(o,t,n)=>t in o?ga(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Ca=(o,t)=>{for(var n in t||(t={}))ya.call(t,n)&&fo(o,n,t[n]);if(go)for(var n of go(t))va.call(t,n)&&fo(o,n,t[n]);return o},Ea=(o,t)=>fa(o,ha(t));const ba=(o,t,n)=>o.map(r=>{const i=[...n,r.action,"properties","enabled"],l=(0,S.get)(t,i,!1),p=(0,S.get)(t,[...n,r.action,"conditions"],{}),g=mt(p).some(h=>h);return Ea(Ca({},r),{isDisplayed:l,checkboxName:i.join(".."),hasSomeActionsSelected:l,value:l,hasConditions:g,label:r.displayName,actionId:r.action,pathToConditionsObject:[...n,r.action]})}),Sa=o=>{const t=Object.entries(o).reduce((r,i)=>{const[l,{conditions:p}]=i;return r[l]=p,r},{});return mt(t).some(r=>r)};var Fn=function(){return window&&window.strapi&&window.strapi.isEE?a(37582).Z:a(95204).Z}(),Pa=b.default.div.withConfig({displayName:"SubCategory__Border",componentId:"sc-akgczm-0"})(["flex:1;align-self:center;border-top:1px solid ",";"],function(o){var t=o.theme;return t.colors.neutral150}),Ta=b.default.div.withConfig({displayName:"SubCategory__CheckboxWrapper",componentId:"sc-akgczm-1"})(["position:relative;word-break:keep-all;",""],function(o){var t=o.hasConditions,n=o.disabled,r=o.theme;return t&&`
125
- &:before {
126
- content: '';
127
- position: absolute;
128
- top: `.concat(-4/16,`rem;
129
- left: `).concat(-8/16,`rem;
130
- width: `).concat(6/16,`rem;
131
- height: `).concat(6/16,`rem;
132
- border-radius: `).concat(20/16,`rem;
133
- background: `).concat(n?r.colors.neutral100:r.colors.primary600,`;
134
- }
135
- `)}),ho=function(t){var n=t.categoryName,r=t.isFormDisabled,i=t.subCategoryName,l=t.actions,p=t.pathToData,g=(0,e.useState)(!1),h=(0,U.Z)(g,2),y=h[0],P=h[1],F=(0,oe.$_)(),$=F.modifiedData,ee=F.onChangeParentCheckbox,w=F.onChangeSimpleCheckbox,N=(0,q.useIntl)(),O=N.formatMessage,B=de()($,p,{}),Y=(0,e.useMemo)(function(){return Object.keys(B).reduce(function(be,je){return be[je]=Mt(B[je]),be},{})},[B]),ce=ct(Y),Oe=ce.hasAllActionsSelected,Ee=ce.hasSomeActionsSelected,De=function(){P(function(je){return!je})},we=function(){P(!1)},Le=ba(l,$,p),yt=Sa(de()($,(0,Z.Z)(p),{}));return e.createElement(e.Fragment,null,e.createElement(L.Box,null,e.createElement(X.Flex,{justifyContent:"space-between",alignItems:"center"},e.createElement(L.Box,{paddingRight:4},e.createElement(I.Typography,{variant:"sigma",textColor:"neutral600"},i)),e.createElement(Pa,null),e.createElement(L.Box,{paddingLeft:4},e.createElement(mo.Checkbox,{name:p.join(".."),disabled:r||Fn,onValueChange:function(je){ee({target:{name:p.join(".."),value:je}})},indeterminate:Ee,value:Oe},O({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(X.Flex,{paddingTop:6,paddingBottom:6},e.createElement(po.Grid,{gap:2,style:{flex:1}},Le.map(function(be){var je=be.checkboxName,ge=be.value,Pe=be.action,xe=be.displayName,Ne=be.hasConditions;return e.createElement(po.GridItem,{col:3,key:Pe},e.createElement(Ta,{disabled:r||Fn,hasConditions:Ne},e.createElement(mo.Checkbox,{name:je,disabled:r||Fn,onValueChange:function(ft){w({target:{name:je,value:ft}})},value:ge},xe)))})),e.createElement($e,{hasConditions:yt,onClick:De}))),y&&e.createElement(Ct,{headerBreadCrumbs:[n,i],actions:Le,isFormDisabled:r,onClosed:we,onToggle:De}))};ho.propTypes={actions:s().array.isRequired,categoryName:s().string.isRequired,isFormDisabled:s().bool.isRequired,subCategoryName:s().string.isRequired,pathToData:s().array.isRequired};const Aa=ho,Bn=({childrenForm:o,kind:t,name:n,isOpen:r,isFormDisabled:i,isWhite:l,onOpenCategory:p,pathToData:g})=>{const{formatMessage:h}=(0,q.useIntl)(),y=()=>{p(n)},P=(0,e.useMemo)(()=>n.split("::").pop(),[n]);return e.createElement(In.Accordion,{expanded:r,onToggle:y,id:`accordion-${n}`,variant:l?"primary":"secondary"},e.createElement(In.AccordionToggle,{title:z()(P),description:`${h({id:"Settings.permissions.category"},{category:P})} ${t==="plugins"?"plugin":t}`}),e.createElement(In.AccordionContent,null,e.createElement(L.Box,{padding:6},o.map(({actions:F,subCategoryName:$,subCategoryId:ee})=>e.createElement(Aa,{key:$,actions:F,categoryName:P,isFormDisabled:i,subCategoryName:$,pathToData:[...g,ee]})))))};Bn.defaultProps={},Bn.propTypes={childrenForm:s().array.isRequired,isOpen:s().bool.isRequired,isFormDisabled:s().bool.isRequired,isWhite:s().bool.isRequired,kind:s().string.isRequired,name:s().string.isRequired,onOpenCategory:s().func.isRequired,pathToData:s().array.isRequired};const Ra=Bn,yo=({isFormDisabled:o,kind:t,layout:n})=>{const[r,i]=(0,e.useState)(null),l=p=>{i(p===r?null:p)};return e.createElement(L.Box,{padding:6,background:"neutral0"},n.map(({category:p,categoryId:g,childrenForm:h},y)=>e.createElement(Ra,{key:p,childrenForm:h,kind:t,isFormDisabled:o,isOpen:r===p,isWhite:y%2===1,name:p,onOpenCategory:l,pathToData:[t,g]})))};yo.propTypes={isFormDisabled:s().bool.isRequired,kind:s().string.isRequired,layout:s().arrayOf(s().shape({category:s().string.isRequired,categoryId:s().string.isRequired,childrenForm:s().arrayOf(s().shape({actions:s().array.isRequired})).isRequired}).isRequired).isRequired};const vo=yo,Co=(o,t,n)=>o.find(r=>r.action===t&&r.subject===n);var Oa=Object.defineProperty,Da=Object.defineProperties,xa=Object.getOwnPropertyDescriptors,Eo=Object.getOwnPropertySymbols,Ma=Object.prototype.hasOwnProperty,La=Object.prototype.propertyIsEnumerable,bo=(o,t,n)=>t in o?Oa(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,So=(o,t)=>{for(var n in t||(t={}))Ma.call(t,n)&&bo(o,n,t[n]);if(Eo)for(var n of Eo(t))La.call(t,n)&&bo(o,n,t[n]);return o},Po=(o,t)=>Da(o,xa(t));const To=(o,t=[])=>o.reduce((n,r)=>(n[r.id]=t.indexOf(r.id)!==-1,n),{}),Ao=({children:o},t,n="")=>o.reduce((r,i)=>{if(i.children)return Po(So({},r),{[i.value]:Ao(i,t,`${n}${i.value}.`)});const l=t.indexOf(`${n}${i.value}`)!==-1;return r[i.value]=l,r},{}),Ia=(o,t,n)=>o.reduce((r,i)=>{const l=t.properties.find(({value:p})=>p===i);if(l){const p=(0,S.get)(n,["properties",l.value],[]),g=Ao(l,p);r.properties[i]=g}return r},{properties:{}}),Fa=(o,t)=>t.reduce((n,r)=>{const i=o.find(({uid:l})=>l===r)||null;return i&&(n[r]=i),n},{}),Ro=({subjects:o},t,n,r=[])=>t.reduce((i,l)=>{const p=l.subjects,g=Fa(o,p);if((0,S.isEmpty)(g))return i;const h=Object.keys(g).reduce((y,P)=>{const{actionId:F,applyToProperties:$}=l,N=g[P].properties.map(({value:ce})=>ce).every(ce=>($||[]).indexOf(ce)===-1),O=Co(r,F,P),B=To(n,(0,S.get)(O,"conditions",[]));if((0,S.isEmpty)($)||N)return(0,S.set)(y,[P,F],{properties:{enabled:O!==void 0},conditions:B}),y;const Y=Ia($,g[P],O);return(0,S.set)(y,[P,F],Po(So({},Y),{conditions:B})),y},{});return(0,S.merge)(i,h)},{}),Ba=(o,t,n)=>o.reduce((r,i)=>{const l=Co(n,i.action,null);return r[i.action]={properties:{enabled:l!==void 0},conditions:To(t,(0,S.get)(l,"conditions",[]))},r},{}),wa=(o,t,n)=>o.reduce((r,i)=>(r[i.subCategoryId]=Ba(i.actions,t,n),r),{}),Oo=(o,t,n=[])=>o.reduce((r,{categoryId:i,childrenForm:l})=>{const p=wa(l,t,n);return r[i]=p,r},{}),Do=o=>o.split(" ").join("-"),xo=(o,t)=>(0,S.chain)(o).groupBy(t).map((n,r)=>({category:r,categoryId:Do(r),childrenForm:(0,S.chain)(n).groupBy("subCategory").map((i,l)=>({subCategoryName:l,subCategoryId:Do(l),actions:i})).value()})).value(),ja=(o,t)=>{const{conditions:n,sections:{collectionTypes:r,singleTypes:i,plugins:l,settings:p}}=o,g={collectionTypes:r,singleTypes:i,plugins:xo(l,"plugin"),settings:xo(p,"category")},h={collectionTypes:Ro(r,r.actions||[],n,t),singleTypes:Ro(i,i.actions||[],n,t),plugins:Oo(g.plugins,n,t),settings:Oo(g.settings,n,t)};return{initialData:h,modifiedData:h,layouts:g}};var Na=Object.defineProperty,Wa=Object.defineProperties,$a=Object.getOwnPropertyDescriptors,Mo=Object.getOwnPropertySymbols,Ua=Object.prototype.hasOwnProperty,ka=Object.prototype.propertyIsEnumerable,Lo=(o,t,n)=>t in o?Na(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,wn=(o,t)=>{for(var n in t||(t={}))Ua.call(t,n)&&Lo(o,n,t[n]);if(Mo)for(var n of Mo(t))ka.call(t,n)&&Lo(o,n,t[n]);return o},jn=(o,t)=>Wa(o,$a(t));const Io=o=>Object.keys(o).reduce((t,n)=>{const r=o[n];if((0,S.isObject)(r)&&!(0,S.has)(r,"conditions"))return jn(wn({},t),{[n]:Io(r)});if((0,S.isObject)(r)&&(0,S.has)(r,"conditions")&&!mt((0,S.omit)(r,"conditions")).some(l=>l)){const l=Object.keys(r.conditions).reduce((p,g)=>(p[g]=!1,p),{});return jn(wn({},t),{[n]:jn(wn({},r),{conditions:l})})}return t[n]=r,t},{}),Nn=Io;var Va=Object.defineProperty,Ga=Object.defineProperties,za=Object.getOwnPropertyDescriptors,Fo=Object.getOwnPropertySymbols,Za=Object.prototype.hasOwnProperty,Ha=Object.prototype.propertyIsEnumerable,Bo=(o,t,n)=>t in o?Va(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Ka=(o,t)=>{for(var n in t||(t={}))Za.call(t,n)&&Bo(o,n,t[n]);if(Fo)for(var n of Fo(t))Ha.call(t,n)&&Bo(o,n,t[n]);return o},Xa=(o,t)=>Ga(o,za(t));const wo=(o,t)=>Object.keys(o).reduce((n,r)=>{const i=o[r];return r==="conditions"?(n[r]=i,n):(0,S.isObject)(i)?Xa(Ka({},n),{[r]:wo(i,t)}):(n[r]=t,n)},{}),nn=wo;var Ya=Object.defineProperty,Qa=Object.defineProperties,Ja=Object.getOwnPropertyDescriptors,jo=Object.getOwnPropertySymbols,qa=Object.prototype.hasOwnProperty,_a=Object.prototype.propertyIsEnumerable,No=(o,t,n)=>t in o?Ya(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,er=(o,t)=>{for(var n in t||(t={}))qa.call(t,n)&&No(o,n,t[n]);if(jo)for(var n of jo(t))_a.call(t,n)&&No(o,n,t[n]);return o},tr=(o,t)=>Qa(o,Ja(t));const nr={initialData:{},modifiedData:{},layouts:{}},or=(o,t)=>(0,ae.default)(o,n=>{switch(t.type){case"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX":{const{collectionTypeKind:r,actionId:i,value:l}=t,p=["modifiedData",r];Object.keys((0,S.get)(o,p)).forEach(g=>{const h=(0,S.get)(o,[...p,g,i],void 0);if(h){let y=nn(h,l);if(!l&&y.conditions){const P=nn(y.conditions,!1);y=tr(er({},y),{conditions:P})}(0,S.set)(n,[...p,g,i],y)}});break}case"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX":{const{pathToCollectionType:r,propertyName:i,rowName:l,value:p}=t;let g=(0,S.cloneDeep)(o.modifiedData);const h=r.split(".."),y=(0,S.get)(g,h,{});Object.keys(y).forEach(P=>{if((0,S.has)(y[P],`properties.${i}`)){const F=(0,S.get)(y,[P,"properties",i,l]),$=[...h,P,"properties",i,l];if(!(0,S.isObject)(F))(0,S.set)(g,$,p);else{const ee=nn(F,p);(0,S.set)(g,$,ee)}}}),p||(g=Nn(g)),(0,S.set)(n,"modifiedData",g);break}case"ON_CHANGE_CONDITIONS":{Object.entries(t.conditions).forEach(r=>{const[i,l]=r;(0,S.set)(n,["modifiedData",...i.split(".."),"conditions"],l)});break}case"ON_CHANGE_SIMPLE_CHECKBOX":{let r=(0,S.cloneDeep)(o.modifiedData);(0,S.set)(r,[...t.keys.split("..")],t.value),t.value||(r=Nn(r)),(0,S.set)(n,"modifiedData",r);break}case"ON_CHANGE_TOGGLE_PARENT_CHECKBOX":{const{keys:r,value:i}=t,l=[...r.split("..")];let p=(0,S.cloneDeep)(o.modifiedData);const g=(0,S.get)(p,l,{}),h=nn(g,i);(0,S.set)(p,l,h),i||(p=Nn(p)),(0,S.set)(n,["modifiedData"],p);break}case"RESET_FORM":{n.modifiedData=o.initialData;break}case"SET_FORM_AFTER_SUBMIT":{n.initialData=o.modifiedData;break}default:return n}}),Wn=o=>Object.entries(o).filter(([,t])=>t).map(([t])=>t),ar=o=>{const[t,{conditions:n}]=o;return{action:t,subject:null,conditions:Wn(n),properties:{}}},rr=o=>Object.values(o).reduce((t,n)=>{const r=Object.entries(n).reduce((i,l)=>{const[,{properties:{enabled:p}}]=l;if(!p)return i;const g=ar(l);return i.push(g),i},[]);return[...t,...r]},[]),Wo=o=>Object.values(o).reduce((t,n)=>{const r=rr(n);return[...t,...r]},[]),$o=(o,t="")=>Object.entries(o).reduce((n,r)=>{const[i,l]=r;return(0,S.isObject)(l)?[...n,...$o(l,`${t}${i}.`)]:(l&&!(0,S.isObject)(l)&&n.push(`${t}${i}`),n)},[]),sr=(o,t,{conditions:n,properties:r})=>Object.entries(r).reduce((i,l)=>{const[p,g]=l;return i.properties[p]=$o(g),i},{action:o,subject:t,conditions:Wn(n),properties:{}}),ir=(o,t,{conditions:n})=>({action:o,subject:t,properties:{},conditions:Wn(n)}),lr=(o,t)=>Object.entries(t).reduce((r,i)=>{const[l,p]=i;if(!mt(p).some(y=>y))return r;if(!(0,S.has)(p,"properties.enabled")){const y=sr(l,o,p);return[...r,y]}if(!p.properties.enabled)return r;const h=ir(l,o,p);return r.push(h),r},[]),Uo=o=>Object.entries(o).reduce((n,r)=>{const[i,l]=r,p=lr(i,l);return[...n,...p]},[]),cr=o=>{const t=Wo(o.plugins),n=Wo(o.settings),r=Uo(o.collectionTypes),i=Uo(o.singleTypes);return[...t,...n,...r,...i]},dr=[{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 ur=Object.defineProperty,ko=Object.getOwnPropertySymbols,pr=Object.prototype.hasOwnProperty,mr=Object.prototype.propertyIsEnumerable,Vo=(o,t,n)=>t in o?ur(o,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[t]=n,Go=(o,t)=>{for(var n in t||(t={}))pr.call(t,n)&&Vo(o,n,t[n]);if(ko)for(var n of ko(t))mr.call(t,n)&&Vo(o,n,t[n]);return o};const $n=(0,e.forwardRef)(({layout:o,isFormDisabled:t,permissions:n},r)=>{const[{initialData:i,layouts:l,modifiedData:p},g]=(0,e.useReducer)(or,nr,()=>ja(o,n)),{formatMessage:h}=(0,q.useIntl)();(0,e.useImperativeHandle)(r,()=>({getPermissions:()=>{const w=(0,H.difference)(i.collectionTypes,p.collectionTypes),N=(0,H.difference)(i.singleTypes,p.singleTypes),O=Go(Go({},w),N);let B;return We()(O)?B=!1:B=Object.values(O).some(Y=>Object.values(Y).some(ce=>Te()(ce,"conditions"))),{permissionsToSend:cr(p),didUpdateConditions:B}},resetForm:()=>{g({type:"RESET_FORM"})},setFormAfterSubmit:()=>{g({type:"SET_FORM_AFTER_SUBMIT"})}}));const y=(w,N,O,B)=>{g({type:"ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX",pathToCollectionType:w,propertyName:N,rowName:O,value:B})},P=(w,N,O)=>{g({type:"ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX",collectionTypeKind:w,actionId:N,value:O})},F=w=>{g({type:"ON_CHANGE_CONDITIONS",conditions:w})},$=(0,e.useCallback)(({target:{name:w,value:N}})=>{g({type:"ON_CHANGE_SIMPLE_CHECKBOX",keys:w,value:N})},[]),ee=(0,e.useCallback)(({target:{name:w,value:N}})=>{g({type:"ON_CHANGE_TOGGLE_PARENT_CHECKBOX",keys:w,value:N})},[]);return e.createElement(ma,{value:{availableConditions:o.conditions,modifiedData:p,onChangeConditions:F,onChangeSimpleCheckbox:$,onChangeParentCheckbox:ee,onChangeCollectionTypeLeftActionRowCheckbox:y,onChangeCollectionTypeGlobalActionCheckbox:P}},e.createElement(W.TabGroup,{id:"tabs",label:h({id:"Settings.permissions.users.tabs.label",defaultMessage:"Tabs Permissions"})},e.createElement(W.Tabs,null,dr.map(w=>e.createElement(W.Tab,{key:w.id},h({id:w.labelId,defaultMessage:w.defaultMessage})))),e.createElement(W.TabPanels,{style:{position:"relative"}},e.createElement(W.TabPanel,null,e.createElement(co,{layout:l.collectionTypes,kind:"collectionTypes",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(co,{layout:l.singleTypes,kind:"singleTypes",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(vo,{layout:l.plugins,kind:"plugins",isFormDisabled:t})),e.createElement(W.TabPanel,null,e.createElement(vo,{layout:l.settings,kind:"settings",isFormDisabled:t})))))});$n.defaultProps={permissions:[],layout:{conditions:[],sections:{collectionTypes:{},singleTypes:{actions:[]},settings:[],plugins:[]}}},$n.propTypes={layout:s().object,isFormDisabled:s().bool.isRequired,permissions:s().array};const gr=(0,e.memo)($n)},95204:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!0},6214:(ne,x,a)=>{a.d(x,{Z:()=>e});const e=()=>"todo empty role"},2892:(ne,x,a)=>{a.d(x,{Z:()=>ze});var e=a(32735),E=a(60216),s=a.n(E),H=a(9808),W=a.n(H),Ie=a(19192),Te=a.n(Ie),fe=a(53214),We=a.n(fe),q=a(95602),L=a.n(q),b=a(20763),G=a.n(b),he=a(83985),U=a.n(he),_=a(5636),et=a.n(_),Qe=Object.defineProperty,Ve=Object.getOwnPropertySymbols,Se=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable,C=(oe,ue,pe)=>ue in oe?Qe(oe,ue,{enumerable:!0,configurable:!0,writable:!0,value:pe}):oe[ue]=pe,de=(oe,ue)=>{for(var pe in ue||(ue={}))Se.call(ue,pe)&&C(oe,pe,ue[pe]);if(Ve)for(var pe of Ve(ue))X.call(ue,pe)&&C(oe,pe,ue[pe]);return oe};const Ge=({id:oe,name:ue,description:pe,usersCount:Ze,icons:Je})=>{const{formatMessage:tt}=(0,_.useIntl)(),$e=tt({id:"Roles.RoleRow.user-count",defaultMessage:"{number, plural, =0 {# user} one {# user} other {# users}}"},{number:Ze});return e.createElement(fe.Tr,de({key:oe},(0,he.onRowClick)({fn:Je[1].onClick})),e.createElement(fe.Td,{maxWidth:(0,he.pxToRem)(130)},e.createElement(q.Typography,{ellipsis:!0,textColor:"neutral800"},ue)),e.createElement(fe.Td,{maxWidth:(0,he.pxToRem)(250)},e.createElement(q.Typography,{ellipsis:!0,textColor:"neutral800"},pe)),e.createElement(fe.Td,null,e.createElement(q.Typography,{textColor:"neutral800"},$e)),e.createElement(fe.Td,null,e.createElement(Ie.Flex,de({justifyContent:"flex-end"},he.stopPropagation),Je.map((Ae,He)=>Ae?e.createElement(H.Box,{key:Ae.label,paddingLeft:He===0?0:1},e.createElement(b.IconButton,{onClick:Ae.onClick,label:Ae.label,noBorder:!0,icon:Ae.icon})):null))))};Ge.propTypes={id:s().number.isRequired,name:s().string.isRequired,description:s().string.isRequired,usersCount:s().number.isRequired,icons:s().array.isRequired};const ze=Ge},10333:(ne,x,a)=>{a.d(x,{Z:()=>_e});var e=a(32735),E=a(83985),s=a(79613),H=a(58469),W=a(59290),Ie=a.n(W),Te=a(76470),fe=a.n(Te),We=a(95717),q=a.n(We),L=a(68192),b=a.n(L),G=a(44526),he=a(11856),U=a(53214),_=a(95602),et=a(16540),Qe=a(28004),Ve=a(5636),Se=a(5141),X=a(2892),C=a(6214),de=a(60216),Ge=a.n(de),ze=a(19615),oe=a(64410),ue=a(54742),pe=a(20763),Ze=a(61541),Je=a(9808),tt=a(19192),$e=a(90662),Ae=a(82372),He=a.n(Ae),lt=a(94009),se=a.n(lt),I=a(378),ae=a(19337);const A=ze.default.div`
136
- position: absolute;
137
- z-index: 3;
138
- inset: 0;
139
- background: ${({theme:j})=>(0,E.setHexOpacity)(j.colors.neutral800,.2)};
140
- padding: 0 ${({theme:j})=>j.spaces[8]};
141
- `,te=(0,ze.default)(tt.Flex)`
142
- position: relative;
143
- max-width: ${830/16}rem;
144
- height: ${415/16}rem;
145
- margin: 0 auto;
146
- overflow: hidden;
147
- margin-top: 10%;
148
- padding-left: ${64/16}rem;
149
-
150
- img:first-of-type {
151
- position: absolute;
152
- right: 0;
153
- top: 0;
154
- max-width: ${360/16}rem;
155
- }
156
-
157
- img:not(:first-of-type) {
158
- width: ${130/16}rem;
159
- margin-left: 12%;
160
- margin-right: ${20/16}rem;
161
- z-index: 0;
162
- }
163
- `,ie=(0,ze.default)($e.Stack)`
164
- align-items: flex-start;
165
- max-width: ${400/16}rem;
166
- z-index: 0;
167
- `,z=(0,ze.default)(Je.Box)`
168
- position: absolute;
169
- right: ${({theme:j})=>j.spaces[4]};
170
- top: ${({theme:j})=>j.spaces[4]};
171
- `,me=({onClose:j,isOpen:le})=>{(0,E.useLockScroll)(le);const{formatMessage:V}=(0,Ve.useIntl)();return le?e.createElement(oe.Portal,null,e.createElement(A,{onClick:j},e.createElement(ue.FocusTrap,{onEscape:j},e.createElement(te,{onClick:K=>K.stopPropagation(),"aria-labelledby":"upgrade-plan",background:"neutral0",hasRadius:!0},e.createElement("img",{src:I,alt:"air-balloon"}),e.createElement(z,null,e.createElement(pe.IconButton,{onClick:j,"aria-label":"Close",icon:e.createElement(se(),null)})),e.createElement(ie,{spacing:6},e.createElement(_.Typography,{fontWeight:"bold",textColor:"primary600"},V({id:"app.components.UpgradePlanModal.text-ce",defaultMessage:"COMMUNITY EDITION"})),e.createElement($e.Stack,{spacing:2},e.createElement(_.Typography,{variant:"alpha",as:"h2",id:"upgrade-plan"},V({id:"app.components.UpgradePlanModal.limit-reached",defaultMessage:"You have reached the limit"})),e.createElement(_.Typography,null,V({id:"app.components.UpgradePlanModal.text-power",defaultMessage:"Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition"}))),e.createElement(Ze.LinkButton,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(He(),null)},V({id:"app.components.UpgradePlanModal.button",defaultMessage:"Learn more"}))),e.createElement("img",{src:ae,alt:"upgrade-arrow"}))))):null};me.propTypes={onClose:Ge().func.isRequired,isOpen:Ge().bool.isRequired};const Z=me;var k=a(28492);const re=()=>{const{roles:j,isLoading:le}=(0,k.bF)(),V=(0,E.useQuery)(),K=decodeURIComponent(V.get("_q")||""),Fe=(0,H.ZP)(j,K,{keys:["name","description"]});return{isLoading:le,sortedRoles:Fe}},Me=()=>{const{formatMessage:j}=(0,Ve.useIntl)(),[le,V]=(0,e.useState)(!1),{trackUsage:K}=(0,E.useTracking)(),{push:Fe}=(0,Se.useHistory)(),Ue=(0,e.useCallback)(Re=>{Fe(`/settings/roles/${Re}`)},[Fe]),Xe=(0,e.useCallback)(()=>{V(Re=>!Re)},[]),Q=(0,e.useCallback)(()=>{K("didShowRBACUpgradeModal"),V(!0)},[K]),ye=(0,e.useCallback)(Re=>[{onClick:Xe,label:j({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(b(),null)},{onClick:()=>Ue(Re.id),label:j({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(q(),null)},{onClick:Xe,label:j({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(fe(),null)}],[j,Xe,Ue]);return{isModalOpen:le,handleToggleModalForCreatingRole:Q,handleToggle:Xe,getIcons:ye}},qe=()=>{const{formatMessage:j}=(0,Ve.useIntl)();(0,E.useFocusWhenNavigate)();const{sortedRoles:le,isLoading:V}=re(),{isModalOpen:K,handleToggle:Fe,handleToggleModalForCreatingRole:Ue,getIcons:Xe}=Me(),Q=le.length+1,ye=5;return e.createElement(et.Main,null,e.createElement(E.SettingsPageTitle,{name:"Roles"}),e.createElement(he.HeaderLayout,{primaryAction:e.createElement(G.Button,{onClick:Ue,startIcon:e.createElement(Ie(),null),size:"L"},j({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})),title:j({id:"global.roles",defaultMessage:"roles"}),subtitle:j({id:"Settings.roles.list.description",defaultMessage:"List of roles"})}),e.createElement(he.ContentLayout,null,e.createElement(U.Table,{colCount:ye,rowCount:Q,footer:e.createElement(U.TFooter,{onClick:Ue,icon:e.createElement(Ie(),null)},j({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"}))},e.createElement(U.Thead,null,e.createElement(U.Tr,null,e.createElement(U.Th,null,e.createElement(_.Typography,{variant:"sigma",textColor:"neutral600"},j({id:"global.name",defaultMessage:"Name"}))),e.createElement(U.Th,null,e.createElement(_.Typography,{variant:"sigma",textColor:"neutral600"},j({id:"global.description",defaultMessage:"Description"}))),e.createElement(U.Th,null,e.createElement(_.Typography,{variant:"sigma",textColor:"neutral600"},j({id:"global.users",defaultMessage:"Users"}))),e.createElement(U.Th,null,e.createElement(Qe.VisuallyHidden,null,j({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(U.Tbody,null,le==null?void 0:le.map(Re=>e.createElement(X.Z,{key:Re.id,id:Re.id,name:Re.name,description:Re.description,usersCount:Re.usersCount,icons:Xe(Re)})))),!Q&&!V&&e.createElement(C.Z,null)),e.createElement(Z,{isOpen:K,onClose:Fe}))},_e=()=>e.createElement(E.CheckPagePermissions,{permissions:s.Z.settings.roles.main},e.createElement(qe,null))},23027:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=[]},97971:(ne,x,a)=>{a.d(x,{Z:()=>lt});var e=a(32735),E=a(53806),s=a.n(E),H=a(83985),W=a(9808),Ie=a(44526),Te=a(11856),fe=a(78330),We=a(16540),q=a(19192),L=a(90662),b=a(95602),G=a(37178),he=a(90353),U=a(98599),_=a.n(U),et=a(83281),Qe=a(33795),Ve=a.n(Qe),Se=a(86834),X=a.n(Se),C=a(5636),de=a(5141),Ge=a(19615),ze=a(13806),oe=a(28492),ue=a(79613),pe=a(5173);const Je=pe.Ry().shape({name:pe.Z_().required(H.translatedErrors.required),description:pe.Z_().required(H.translatedErrors.required)});var tt=a(98399),$e=(se,I,ae)=>new Promise((A,te)=>{var ie=Z=>{try{me(ae.next(Z))}catch(k){te(k)}},z=Z=>{try{me(ae.throw(Z))}catch(k){te(k)}},me=Z=>Z.done?A(Z.value):Promise.resolve(Z.value).then(ie,z);me((ae=ae.apply(se,I)).next())});const Ae=Ge.default.div`
172
- border: 1px solid ${({theme:se})=>se.colors.primary200};
173
- background: ${({theme:se})=>se.colors.primary100};
174
- padding: ${({theme:se})=>`${se.spaces[2]} ${se.spaces[4]}`};
175
- color: ${({theme:se})=>se.colors.primary600};
176
- border-radius: ${({theme:se})=>se.borderRadius};
177
- font-size: ${12/16}rem;
178
- font-width: bold;
179
- `,He=()=>{const se=(0,H.useNotification)(),{lockApp:I,unlockApp:ae}=(0,H.useOverlayBlocker)(),{formatMessage:A}=(0,C.useIntl)(),[te,ie]=(0,e.useState)(!1),{replace:z}=(0,de.useHistory)(),me=(0,e.useRef)(),{trackUsage:Z}=(0,H.useTracking)(),k=(0,de.useRouteMatch)("/settings/roles/duplicate/:id"),re=Ve()(k,"params.id",null),{isLoading:Me,data:Ke}=(0,oe.U_)(),{permissions:qe,isLoading:st}=(0,oe.Dq)(re),_e=le=>{I(),ie(!0),Z(re?"willDuplicateRole":"willCreateNewRole"),Promise.resolve((0,H.request)("/admin/roles",{method:"POST",body:le})).then(V=>$e(void 0,null,function*(){const{permissionsToSend:K}=me.current.getPermissions();return Z(re?"didDuplicateRole":"didCreateNewRole"),V.data.id&&!X()(K)&&(yield(0,H.request)(`/admin/roles/${V.data.id}/permissions`,{method:"PUT",body:{permissions:K}})),V})).then(V=>{ie(!1),se({type:"success",message:{id:"Settings.roles.created",defaultMessage:"created"}}),z(`/settings/roles/${V.data.id}`)}).catch(V=>{tt.error(V),ie(!1),se({type:"warning",message:{id:"notification.error"}})}).finally(()=>{ae()})},j=`${A({id:"Settings.roles.form.created",defaultMessage:"Created"})} ${s()().format("LL")}`;return e.createElement(We.Main,null,e.createElement(H.SettingsPageTitle,{name:"Roles"}),e.createElement(et.Formik,{initialValues:{name:"",description:j},onSubmit:_e,validationSchema:Je,validateOnChange:!1},({handleSubmit:le,values:V,errors:K,handleReset:Fe,handleChange:Ue})=>e.createElement(H.Form,{noValidate:!0},e.createElement(e.Fragment,null,e.createElement(Te.HeaderLayout,{primaryAction:e.createElement(L.Stack,{horizontal:!0,spacing:2},e.createElement(Ie.Button,{variant:"secondary",onClick:()=>{Fe(),me.current.resetForm()},size:"L"},A({id:"app.components.Button.reset",defaultMessage:"Reset"})),e.createElement(Ie.Button,{onClick:le,loading:te,size:"L"},A({id:"global.save",defaultMessage:"Save"}))),title:A({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:A({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(H.Link,{startIcon:e.createElement(_(),null),to:"/settings/roles"},A({id:"global.back",defaultMessage:"Back"}))}),e.createElement(Te.ContentLayout,null,e.createElement(L.Stack,{spacing:6},e.createElement(W.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(L.Stack,{spacing:4},e.createElement(q.Flex,{justifyContent:"space-between"},e.createElement(W.Box,null,e.createElement(W.Box,null,e.createElement(b.Typography,{fontWeight:"bold"},A({id:"global.details",defaultMessage:"Details"}))),e.createElement(W.Box,null,e.createElement(b.Typography,{variant:"pi",textColor:"neutral600"},A({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(Ae,null,A({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:0}))),e.createElement(fe.Grid,{gap:4},e.createElement(fe.GridItem,{col:6},e.createElement(G.TextInput,{name:"name",error:K.name&&A({id:K.name}),label:A({id:"global.name",defaultMessage:"Name"}),onChange:Ue,value:V.name})),e.createElement(fe.GridItem,{col:6},e.createElement(he.Textarea,{label:A({id:"global.description",defaultMessage:"Description"}),name:"description",error:K.description&&A({id:K.description}),onChange:Ue},V.description))))),!Me&&!st?e.createElement(W.Box,{shadow:"filterShadow",hasRadius:!0},e.createElement(ze.Z,{isFormDisabled:!1,ref:me,permissions:qe,layout:Ke})):e.createElement(W.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(H.LoadingIndicatorPage,null))))))))},lt=()=>e.createElement(H.CheckPagePermissions,{permissions:ue.Z.settings.roles.create},e.createElement(He,null))},10265:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},47902:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},71231:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},38292:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},66713:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},37582:(ne,x,a)=>{a.d(x,{Z:()=>E});const E=!1},49776:(ne,x,a)=>{a.d(x,{Z:()=>se});var e=a(32735),E=a(83985),s=a(79613),H=a(59290),W=a.n(H),Ie=a(76470),Te=a.n(Ie),fe=a(68192),We=a.n(fe),q=a(95717),L=a.n(q),b=a(44526),G=a(11856),he=a(28004),U=a(16540),_=a(53214),et=a(95602),Qe=a(92891),Ve=a(58469),Se=a(5636),X=a(5141),C=a(81999),de=a(28492),Ge=a(6214),ze=a(2892),oe=a(49415);const ue={roleToDelete:null,showModalConfirmButtonLoading:!1,shouldRefetchData:!1},Ze=(I,ae)=>(0,oe.default)(I,A=>{switch(ae.type){case"ON_REMOVE_ROLES":{A.showModalConfirmButtonLoading=!0;break}case"ON_REMOVE_ROLES_SUCCEEDED":{A.shouldRefetchData=!0,A.roleToDelete=null;break}case"RESET_DATA_TO_DELETE":{A.shouldRefetchData=!1,A.roleToDelete=null,A.showModalConfirmButtonLoading=!1;break}case"SET_ROLE_TO_DELETE":{A.roleToDelete=ae.id;break}default:return A}});var Je=(I,ae,A)=>new Promise((te,ie)=>{var z=k=>{try{Z(A.next(k))}catch(re){ie(re)}},me=k=>{try{Z(A.throw(k))}catch(re){ie(re)}},Z=k=>k.done?te(k.value):Promise.resolve(k.value).then(z,me);Z((A=A.apply(I,ae)).next())});const tt=()=>{(0,E.useFocusWhenNavigate)();const{isLoading:I,allowedActions:{canCreate:ae,canDelete:A,canRead:te,canUpdate:ie}}=(0,E.useRBAC)(s.Z.settings.roles),{getData:z,roles:me,isLoading:Z}=(0,de.bF)(!1),[{query:k}]=(0,E.useQueryParams)(),re=(k==null?void 0:k._q)||"",Me=(0,Ve.ZP)(me,re,{keys:["name","description"]});return(0,e.useEffect)(()=>{!I&&te&&z()},[I,te,z]),{isLoadingForPermissions:I,canCreate:ae,canDelete:A,canRead:te,canUpdate:ie,isLoading:Z,getData:z,sortedRoles:Me,roles:me}},$e=({getData:I,canCreate:ae,canDelete:A,canUpdate:te})=>{const{formatMessage:ie}=(0,Se.useIntl)(),z=(0,E.useNotification)(),[me,Z]=(0,e.useState)(!1),{push:k}=(0,X.useHistory)(),[{selectedRoles:re,showModalConfirmButtonLoading:Me,roleToDelete:Ke},qe]=(0,e.useReducer)(Ze,ue),st=()=>Je(void 0,null,function*(){try{qe({type:"ON_REMOVE_ROLES"}),yield C.be.post("/admin/roles/batch-delete",{ids:[Ke]}),yield I(),qe({type:"RESET_DATA_TO_DELETE"})}catch(Q){const ye=(0,Qe.get)(Q,["response","payload","data","ids"],null);if(ye&&Array.isArray(ye)){const Re=ye.join(`
180
- `);z({type:"warning",message:Re})}else z({type:"warning",message:{id:"notification.error"}})}V()}),_e=(0,e.useCallback)(Q=>{k(`/settings/roles/duplicate/${Q}`)},[k]),j=()=>k("/settings/roles/new"),le=(0,e.useCallback)(Q=>{qe({type:"SET_ROLE_TO_DELETE",id:Q}),V()},[]),V=()=>Z(Q=>!Q),K=(0,e.useCallback)(Q=>{k(`/settings/roles/${Q}`)},[k]),Fe=(0,e.useCallback)((Q,ye)=>{Q.preventDefault(),Q.stopPropagation(),ye.usersCount?z({type:"info",message:{id:"Roles.ListPage.notification.delete-not-allowed"}}):le(ye.id)},[z,le]),Ue=(0,e.useCallback)((Q,ye)=>{Q.preventDefault(),Q.stopPropagation(),_e(ye.id)},[_e]),Xe=(0,e.useCallback)(Q=>[...ae?[{onClick:ye=>Ue(ye,Q),label:ie({id:"app.utils.duplicate",defaultMessage:"Duplicate"}),icon:e.createElement(We(),null)}]:[],...te?[{onClick:()=>K(Q.id),label:ie({id:"app.utils.edit",defaultMessage:"Edit"}),icon:e.createElement(L(),null)}]:[],...A?[{onClick:ye=>Fe(ye,Q),label:ie({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(Te(),null)}]:[]],[ie,Fe,Ue,K,ae,te,A]);return{handleNewRoleClick:j,getIcons:Xe,selectedRoles:re,isWarningDeleteAllOpened:me,showModalConfirmButtonLoading:Me,handleToggleModal:V,handleDeleteData:st}},He=()=>{const{formatMessage:I}=(0,Se.useIntl)(),{isLoadingForPermissions:ae,canCreate:A,canRead:te,canDelete:ie,canUpdate:z,isLoading:me,getData:Z,sortedRoles:k}=tt(),{handleNewRoleClick:re,getIcons:Me,isWarningDeleteAllOpened:Ke,showModalConfirmButtonLoading:qe,handleToggleModal:st,handleDeleteData:_e}=$e({getData:Z,canCreate:A,canDelete:ie,canUpdate:z}),j=k.length+1,le=6;if(ae)return e.createElement(U.Main,null,e.createElement(E.LoadingIndicatorPage,null));const V=I({id:"global.roles",defaultMessage:"roles"});return e.createElement(U.Main,null,e.createElement(E.SettingsPageTitle,{name:"Roles"}),e.createElement(G.HeaderLayout,{primaryAction:A?e.createElement(b.Button,{onClick:re,startIcon:e.createElement(W(),null),size:"L"},I({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null,title:V,subtitle:I({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),as:"h2"}),te&&e.createElement(G.ActionLayout,{startActions:e.createElement(E.SearchURLQuery,{label:I({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:V})})}),te&&e.createElement(G.ContentLayout,null,e.createElement(_.Table,{colCount:le,rowCount:j,footer:A?e.createElement(_.TFooter,{onClick:re,icon:e.createElement(W(),null)},I({id:"Settings.roles.list.button.add",defaultMessage:"Add new role"})):null},e.createElement(_.Thead,null,e.createElement(_.Tr,null,e.createElement(_.Th,null,e.createElement(et.Typography,{variant:"sigma",textColor:"neutral600"},I({id:"global.name",defaultMessage:"Name"}))),e.createElement(_.Th,null,e.createElement(et.Typography,{variant:"sigma",textColor:"neutral600"},I({id:"global.description",defaultMessage:"Description"}))),e.createElement(_.Th,null,e.createElement(et.Typography,{variant:"sigma",textColor:"neutral600"},I({id:"global.users",defaultMessage:"Users"}))),e.createElement(_.Th,null,e.createElement(he.VisuallyHidden,null,I({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(_.Tbody,null,k==null?void 0:k.map(K=>e.createElement(ze.Z,{key:K.id,id:K.id,name:K.name,description:K.description,usersCount:K.usersCount,icons:Me(K)})))),!j&&!me&&e.createElement(Ge.Z,null)),e.createElement(E.ConfirmDialog,{isOpen:Ke,onConfirm:_e,isConfirmButtonLoading:qe,onToggleDialog:st}))},se=()=>e.createElement(E.CheckPagePermissions,{permissions:s.Z.settings.roles.main},e.createElement(He,null))},78251:(ne,x,a)=>{a.d(x,{Z:()=>H});var e=(W,Ie,Te)=>new Promise((fe,We)=>{var q=G=>{try{b(Te.next(G))}catch(he){We(he)}},L=G=>{try{b(Te.throw(G))}catch(he){We(he)}},b=G=>G.done?fe(G.value):Promise.resolve(G.value).then(q,L);b((Te=Te.apply(W,Ie)).next())});const H=[...strapi.features.isEnabled(strapi.features.SSO)?[{Component:()=>e(void 0,null,function*(){return yield a.e(302).then(a.bind(a,80482))}),to:"/settings/single-sign-on",exact:!0}]:[]]},378:(ne,x,a)=>{ne.exports=a.p+"c3de6118ef47086ad05c.png"},19337:(ne,x,a)=>{ne.exports=a.p+"bd81ba6c07827282255d.png"}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2544],{3079:(ae,L,t)=>{t.r(L),t.d(L,{default:()=>k});var e=t(32735),s=t(83985),M=t(5141),B=t(79613),u=t(9808),x=t(44526),T=t(11856),j=t(16540),y=t(90662),G=t(83281),N=t(98599),Z=t.n(N),z=t(33795),C=t.n(z),b=t(5636),O=t(13806),S=t(78330),$=t(19192),A=t(95602),H=t(90353),V=t(37178),W=t(60216),g=t.n(W);const R=({disabled:r,role:a,values:n,errors:i,onChange:d,onBlur:c})=>{const{formatMessage:o}=(0,b.useIntl)();return e.createElement(e.Fragment,null,e.createElement(u.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(y.Stack,{spacing:4},e.createElement($.Flex,{justifyContent:"space-between"},e.createElement(u.Box,null,e.createElement(u.Box,null,e.createElement(A.Typography,{fontWeight:"bold"},a?a.name:o({id:"global.details",defaultMessage:"Details"}))),e.createElement(u.Box,null,e.createElement(A.Typography,{textColor:"neutral500",variant:"pi"},a?a.description:o({id:"Settings.roles.form.description",defaultMessage:"Name and description of the role"})))),e.createElement(x.Button,{disabled:!0,variant:"secondary"},o({id:"Settings.roles.form.button.users-with-role",defaultMessage:"{number, plural, =0 {# users} one {# user} other {# users}} with this role"},{number:a.usersCount}))),e.createElement(S.Grid,{gap:4},e.createElement(S.GridItem,{col:6},e.createElement(V.TextInput,{disabled:r,name:"name",error:i.name&&o({id:i.name}),label:o({id:"global.name",defaultMessage:"Name"}),onChange:d,onBlur:c,value:n.name||""})),e.createElement(S.GridItem,{col:6},e.createElement(H.Textarea,{disabled:r,label:o({id:"global.description",defaultMessage:"Description"}),name:"description",error:i.name&&o({id:i.name}),onChange:d,onBlur:c},n.description||""))))))};R.defaultProps={disabled:!1,role:null,values:{name:"",description:""}},R.propTypes={disabled:g().bool,errors:g().object.isRequired,onBlur:g().func.isRequired,onChange:g().func.isRequired,role:g().object,values:g().object};const J=R;var I=t(28492),F=t(5173);const K=F.Ry().shape({name:F.Z_().required(s.translatedErrors.required)});var Q=t(98399),X=(r,a,n)=>new Promise((i,d)=>{var c=l=>{try{v(n.next(l))}catch(E){d(E)}},o=l=>{try{v(n.throw(l))}catch(E){d(E)}},v=l=>l.done?i(l.value):Promise.resolve(l.value).then(c,o);v((n=n.apply(r,a)).next())});const Y=()=>{const r=(0,s.useNotification)(),{formatMessage:a}=(0,b.useIntl)(),{params:{id:n}}=(0,M.useRouteMatch)("/settings/roles/:id"),[i,d]=(0,e.useState)(!1),c=(0,e.useRef)(),{lockApp:o,unlockApp:v}=(0,s.useOverlayBlocker)(),{trackUsage:l}=(0,s.useTracking)(),{isLoading:E,data:w}=(0,I.U_)(n),{role:p,permissions:q,isLoading:U,onSubmitSucceeded:_}=(0,I.Dq)(n),ee=f=>X(void 0,null,function*(){try{o(),d(!0);const{permissionsToSend:m,didUpdateConditions:h}=c.current.getPermissions();yield(0,s.request)(`/admin/roles/${n}`,{method:"PUT",body:f}),p.code!=="strapi-super-admin"&&(yield(0,s.request)(`/admin/roles/${n}/permissions`,{method:"PUT",body:{permissions:m}}),h&&l("didUpdateConditions")),c.current.setFormAfterSubmit(),_({name:f.name,description:f.description}),r({type:"success",message:{id:"notification.success.saved"}})}catch(m){Q.error(m.response);const h=C()(m,"response.payload.message","An error occured"),P=C()(m,"response.payload.data.permissions[0]",h);r({type:"warning",message:P})}finally{d(!1),v()}}),D=p.code==="strapi-super-admin";return e.createElement(j.Main,null,e.createElement(s.SettingsPageTitle,{name:"Roles"}),e.createElement(G.Formik,{enableReinitialize:!0,initialValues:{name:p.name,description:p.description},onSubmit:ee,validationSchema:K,validateOnChange:!1},({handleSubmit:f,values:m,errors:h,handleChange:P,handleBlur:te})=>e.createElement("form",{onSubmit:f},e.createElement(e.Fragment,null,e.createElement(T.HeaderLayout,{primaryAction:e.createElement(y.Stack,{horizontal:!0,spacing:2},e.createElement(x.Button,{disabled:p.code==="strapi-super-admin",onClick:f,loading:i,size:"L"},a({id:"global.save",defaultMessage:"Save"}))),title:a({id:"Settings.roles.edit.title",defaultMessage:"Edit a role"}),subtitle:a({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"}),navigationAction:e.createElement(s.Link,{startIcon:e.createElement(Z(),null),to:"/settings/roles"},a({id:"global.back",defaultMessage:"Back"}))}),e.createElement(T.ContentLayout,null,e.createElement(y.Stack,{spacing:6},e.createElement(J,{isLoading:U,disabled:D,errors:h,values:m,onChange:P,onBlur:te,role:p}),!E&&!U?e.createElement(u.Box,{shadow:"filterShadow",hasRadius:!0},e.createElement(O.Z,{isFormDisabled:D,permissions:q,ref:c,layout:w})):e.createElement(u.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(s.LoadingIndicatorPage,null))))))))},k=()=>{const r=(0,e.useMemo)(()=>({read:B.Z.settings.roles.read,update:B.Z.settings.roles.update}),[]),{isLoading:a,allowedActions:{canRead:n,canUpdate:i}}=(0,s.useRBAC)(r);return a?e.createElement(s.LoadingIndicatorPage,null):!n&&!i?e.createElement(M.Redirect,{to:"/"}):e.createElement(Y,null)}}}]);
@@ -1,11 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4263],{28976:(J,_,e)=>{e.r(_),e.d(_,{default:()=>Se});var t=e(32735),s=e(83985),m=e(5141),O=e(92891),W=e(79613),p=e(93587),I=e.n(p),f=e(5636),T=e(60216),P=e.n(T),C=e(88423),D=e.n(C),k=e(33795),N=e.n(k),x=e(9086),G=e.n(x),H=e(84968),w=e(83281),U=e(9808),Z=e(44526),y=e(78330),M=e(11856),A=e(95602),b=e(16540),K=e(90662),Y=e(98599),B=e.n(Y),i=e(88677),r=e.n(i),o=e(81430),ee=e(81999),te=(n,l,a)=>new Promise((d,u)=>{var h=c=>{try{S(a.next(c))}catch(g){u(g)}},v=c=>{try{S(a.throw(c))}catch(g){u(g)}},S=c=>c.done?d(c.value):Promise.resolve(c.value).then(h,v);S((a=a.apply(n,l)).next())});const V=n=>te(void 0,null,function*(){const{data:l}=yield ee.be.get(`/admin/users/${n}`);return l.data}),Pe=(n,l)=>te(void 0,null,function*(){const{data:a}=yield ee.be.put(`/admin/users/${n}`,l);return a.data}),ye=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},name:"username",placeholder:{id:"Auth.form.username.placeholder",defaultMessage:"e.g. Kai_Doe"},type:"email",size:{col:6,xs:12}}],[{intlLabel:{id:"global.password",defaultMessage:"Password"},name:"password",type:"password",size:{col:6,xs:12}},{intlLabel:{id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"},name:"confirmPassword",type:"password",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.active.label",defaultMessage:"Active"},name:"isActive",type:"bool",size:{col:6,xs:12}}]];var Me=e(99063),he=e(58535),Oe=e(98399),_e=void 0;function De(n,l){var a=typeof Symbol!="undefined"&&n[Symbol.iterator]||n["@@iterator"];if(!a){if(Array.isArray(n)||(a=Ae(n))||l&&n&&typeof n.length=="number"){a&&(n=a);var d=0,u=function(){};return{s:u,n:function(){return d>=n.length?{done:!0}:{done:!1,value:n[d++]}},e:function(g){throw g},f:u}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var h=!0,v=!1,S;return{s:function(){a=a.call(n)},n:function(){var g=a.next();return h=g.done,g},e:function(g){v=!0,S=g},f:function(){try{!h&&a.return!=null&&a.return()}finally{if(v)throw S}}}}function Ae(n,l){if(!!n){if(typeof n=="string")return se(n,l);var a=Object.prototype.toString.call(n).slice(8,-1);if(a==="Object"&&n.constructor&&(a=n.constructor.name),a==="Map"||a==="Set")return Array.from(n);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return se(n,l)}}function se(n,l){(l==null||l>n.length)&&(l=n.length);for(var a=0,d=new Array(l);a<l;a++)d[a]=n[a];return d}var Le=Object.defineProperty,Ie=Object.defineProperties,Te=Object.getOwnPropertyDescriptors,oe=Object.getOwnPropertySymbols,Ce=Object.prototype.hasOwnProperty,Ue=Object.prototype.propertyIsEnumerable,le=function(l,a,d){return a in l?Le(l,a,{enumerable:!0,configurable:!0,writable:!0,value:d}):l[a]=d},ie=function(l,a){for(var d in a||(a={}))Ce.call(a,d)&&le(l,d,a[d]);if(oe){var u=De(oe(a)),h;try{for(u.s();!(h=u.n()).done;){var d=h.value;Ue.call(a,d)&&le(l,d,a[d])}}catch(v){u.e(v)}finally{u.f()}}return l},Be=function(l,a){return Ie(l,Te(a))},Re=function(l,a,d){return new Promise(function(u,h){var v=function(j){try{c(d.next(j))}catch(X){h(X)}},S=function(j){try{c(d.throw(j))}catch(X){h(X)}},c=function(j){return j.done?u(j.value):Promise.resolve(j.value).then(v,S)};c((d=d.apply(l,a)).next())})},We=function(){return window&&window.strapi&&window.strapi.isEE?e(80515).Z:e(83396).Z}(),de=["email","firstname","lastname","username","isActive","roles"],ue=function(l){var a=l.canUpdate,d=(0,f.useIntl)(),u=d.formatMessage,h=(0,m.useRouteMatch)("/settings/users/:id"),v=h.params.id,S=(0,m.useHistory)(),c=S.push,g=(0,s.useAppInfos)(),j=g.setUserDisplayName,X=(0,s.useNotification)(),ce=(0,s.useOverlayBlocker)(),Ze=ce.lockApp,be=ce.unlockApp;(0,s.useFocusWhenNavigate)();var me=(0,H.useQuery)(["user",v],function(){return V(v)},{retry:!1,keepPreviousData:!1,staleTime:1e3*20,onError:function(E){var z=E.response.status;z===403&&(X({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}}),c("/")),Oe.log(E.response.status)}}),je=me.status,$=me.data,ze=function(E,z){return Re(_e,null,I().mark(function Q(){var q,re,F,ne,Ee;return I().wrap(function(L){for(;;)switch(L.prev=L.next){case 0:return Ze(),L.prev=1,L.next=4,Pe(v,G()(E,"confirmPassword"));case 4:q=L.sent,X({type:"success",message:u({id:"notification.success.saved",defaultMessage:"Saved"})}),re=s.auth.getUserInfo(),v.toString()===re.id.toString()&&(s.auth.setUserInfo(q),F=N()(E,"username")||(0,o.Pp)(E.firstname,E.lastname),j(F)),z.setValues(D()(E,de)),L.next=17;break;case 11:L.prev=11,L.t0=L.catch(1),ne=(0,o.Iz)(L.t0.response.data),Ee=Object.keys(ne).reduce(function(ve,ge){return ve[ge]=ne[ge].id,ve},{}),z.setErrors(Ee),X({type:"warning",message:N()(L.t0,"response.data.message","notification.error")});case 17:be();case 18:case"end":return L.stop()}},Q,null,[[1,11]])}))},pe=je!=="success",Ne=pe?{id:"app.containers.Users.EditPage.header.label-loading",defaultMessage:"Edit user"}:{id:"app.containers.Users.EditPage.header.label",defaultMessage:"Edit {name}"},ae=Object.keys(D()($,de)).reduce(function(R,E){return E==="roles"?(R[E]=(($==null?void 0:$.roles)||[]).map(function(z){var Q=z.id;return Q}),R):(R[E]=$==null?void 0:$[E],R)},{}),we=ae.username||(0,o.Pp)(ae.firstname,ae.lastname),fe=u(Ne,{name:we});return pe?t.createElement(b.Main,{"aria-busy":"true"},t.createElement(s.SettingsPageTitle,{name:"Users"}),t.createElement(M.HeaderLayout,{primaryAction:t.createElement(Z.Button,{disabled:!0,startIcon:t.createElement(r(),null),type:"button",size:"L"},u({id:"global.save",defaultMessage:"Save"})),title:fe,navigationAction:t.createElement(s.Link,{startIcon:t.createElement(B(),null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},u({id:"global.back",defaultMessage:"Back"}))}),t.createElement(M.ContentLayout,null,t.createElement(s.LoadingIndicatorPage,null))):t.createElement(b.Main,null,t.createElement(s.SettingsPageTitle,{name:"Users"}),t.createElement(w.Formik,{onSubmit:ze,initialValues:ae,validateOnChange:!1,validationSchema:Me.YM},function(R){var E=R.errors,z=R.values,Q=R.handleChange,q=R.isSubmitting;return t.createElement(s.Form,null,t.createElement(M.HeaderLayout,{primaryAction:t.createElement(Z.Button,{disabled:q||!a,startIcon:t.createElement(r(),null),loading:q,type:"submit",size:"L"},u({id:"global.save",defaultMessage:"Save"})),title:fe,navigationAction:t.createElement(s.Link,{startIcon:t.createElement(B(),null),to:"/settings/users?pageSize=10&page=1&sort=firstname"},u({id:"global.back",defaultMessage:"Back"}))}),t.createElement(M.ContentLayout,null,($==null?void 0:$.registrationToken)&&t.createElement(U.Box,{paddingBottom:6},t.createElement(We,{registrationToken:$.registrationToken})),t.createElement(K.Stack,{spacing:7},t.createElement(U.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(K.Stack,{spacing:4},t.createElement(A.Typography,{variant:"delta",as:"h2"},u({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"Details"})),t.createElement(y.Grid,{gap:5},ye.map(function(re){return re.map(function(F){return t.createElement(y.GridItem,ie({key:F.name},F.size),t.createElement(s.GenericInput,Be(ie({},F),{disabled:!a,error:E[F.name],onChange:Q,value:z[F.name]||""})))})})))),t.createElement(U.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(K.Stack,{spacing:4},t.createElement(A.Typography,{variant:"delta",as:"h2"},u({id:"global.roles",defaultMessage:"User's role"})),t.createElement(y.Grid,{gap:5},t.createElement(y.GridItem,{col:6,xs:12},t.createElement(he.Z,{disabled:!a,error:E.roles,onChange:Q,value:z.roles}))))))))}))};ue.propTypes={canUpdate:P().bool.isRequired};const Ke=ue,Se=()=>{const n=(0,s.useNotification)(),l=(0,t.useMemo)(()=>({read:W.Z.settings.users.read,update:W.Z.settings.users.update}),[]),{isLoading:a,allowedActions:{canRead:d,canUpdate:u}}=(0,s.useRBAC)(l),{state:h}=(0,m.useLocation)(),v=(0,O.get)(h,"from","/");return(0,t.useEffect)(()=>{a||!d&&!u&&n({type:"info",message:{id:"notification.permission.not-allowed-read",defaultMessage:"You are not allowed to see this document"}})},[a,d,u,n]),a?t.createElement(s.LoadingIndicatorPage,null):!d&&!u?t.createElement(m.Redirect,{to:v}):t.createElement(Ke,{canUpdate:u})}},98924:(J,_,e)=>{e.d(_,{Z:()=>G});var t=e(32735),s=e(60216),m=e.n(s),O=e(20763),W=e.n(O),p=e(83985),I=e.n(p),f=e(68192),T=e.n(f),P=e(59087),C=e.n(P),D=e(5636),k=e.n(D);const N=()=>t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg"},t.createElement("text",{transform:"translate(-23 -9)",fill:"#4B515A",fillRule:"evenodd",fontSize:"32",fontFamily:"AppleColorEmoji, Apple Color Emoji"},t.createElement("tspan",{x:"23",y:"36"},"\u2709\uFE0F"))),x=({children:H,target:w})=>{const U=(0,p.useNotification)(),{formatMessage:Z}=(0,D.useIntl)(),y=()=>{U({type:"info",message:{id:"notification.link-copied"}})},M=Z({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"});return t.createElement(p.ContentBox,{endAction:t.createElement(P.CopyToClipboard,{onCopy:y,text:w},t.createElement(O.IconButton,{label:M,noBorder:!0,icon:t.createElement(T(),null)})),title:w,titleEllipsis:!0,subtitle:H,icon:t.createElement(N,null),iconBackground:"neutral100"})};x.propTypes={children:m().oneOfType([m().element,m().string]).isRequired,target:m().string.isRequired};const G=x},83396:(J,_,e)=>{e.d(_,{Z:()=>T});var t=e(32735),s=e(5636),m=e.n(s),O=e(60216),W=e.n(O),p=e(6630),I=e(98924);const f=({registrationToken:P})=>{const{formatMessage:C}=(0,s.useIntl)(),D=`${window.location.origin}${p.Z}auth/register?registrationToken=${P}`;return t.createElement(I.Z,{target:D},C({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};f.defaultProps={registrationToken:""},f.propTypes={registrationToken:W().string};const T=f},58535:(J,_,e)=>{e.d(_,{Z:()=>Z});var t=e(32735),s=e(60216),m=e.n(s),O=e(5636),W=e.n(O),p=e(25716),I=e.n(p),f=e(84968),T=e.n(f),P=e(19615),C=e(103),D=e.n(C),k=e(81999),N=(y,M,A)=>new Promise((b,K)=>{var Y=r=>{try{i(A.next(r))}catch(o){K(o)}},B=r=>{try{i(A.throw(r))}catch(o){K(o)}},i=r=>r.done?b(r.value):Promise.resolve(r.value).then(Y,B);i((A=A.apply(y,M)).next())});const x=P.keyframes`
3
- from {
4
- transform: rotate(0deg);
5
- }
6
- to {
7
- transform: rotate(359deg);
8
- }
9
- `,G=P.default.div`
10
- animation: ${x} 2s infinite linear;
11
- `,H=()=>t.createElement(G,null,t.createElement(D(),null)),w=()=>N(void 0,null,function*(){const{data:y}=yield k.be.get("/admin/roles");return y.data}),U=({disabled:y,error:M,onChange:A,value:b})=>{const{status:K,data:Y}=(0,f.useQuery)(["roles"],w,{staleTime:5e4}),{formatMessage:B}=(0,O.useIntl)(),i=M?B({id:M,defaultMessage:M}):"",r=B({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),o=B({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),ee=B({id:"app.components.Select.placeholder",defaultMessage:"Select"}),te=K==="loading"?t.createElement(H,null):void 0;return t.createElement(p.Select,{id:"roles",disabled:y,error:i,hint:o,label:r,name:"roles",onChange:V=>{A({target:{name:"roles",value:V}})},placeholder:ee,multi:!0,startIcon:te,value:b,withTags:!0,required:!0},(Y||[]).map(V=>t.createElement(p.Option,{key:V.id,value:V.id},V.name)))};U.defaultProps={disabled:!1,error:void 0},U.propTypes={disabled:m().bool,error:m().string,onChange:m().func.isRequired,value:m().array.isRequired};const Z=U},99063:(J,_,e)=>{e.d(_,{YM:()=>B,Rw:()=>N});var t=e(5173),s=e(83985),m=Object.defineProperty,O=Object.defineProperties,W=Object.getOwnPropertyDescriptors,p=Object.getOwnPropertySymbols,I=Object.prototype.hasOwnProperty,f=Object.prototype.propertyIsEnumerable,T=(i,r,o)=>r in i?m(i,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):i[r]=o,P=(i,r)=>{for(var o in r||(r={}))I.call(r,o)&&T(i,o,r[o]);if(p)for(var o of p(r))f.call(r,o)&&T(i,o,r[o]);return i},C=(i,r)=>O(i,W(r));const D={firstname:t.nK().required(s.translatedErrors.required),lastname:t.nK(),email:t.Z_().email(s.translatedErrors.email).lowercase().required(s.translatedErrors.required),username:t.Z_().nullable(),password:t.Z_().min(8,s.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:t.Z_().min(8,s.translatedErrors.minLength).oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").when("password",(i,r)=>i?r.required(s.translatedErrors.required):r)},N=C(P({},D),{currentPassword:t.Z_().when(["password","confirmPassword"],(i,r,o)=>i||r?o.required(s.translatedErrors.required):o),preferedLanguage:t.Z_().nullable()}),G={roles:t.IX().min(1,s.translatedErrors.required).required(s.translatedErrors.required)};var H=Object.defineProperty,w=Object.defineProperties,U=Object.getOwnPropertyDescriptors,Z=Object.getOwnPropertySymbols,y=Object.prototype.hasOwnProperty,M=Object.prototype.propertyIsEnumerable,A=(i,r,o)=>r in i?H(i,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):i[r]=o,b=(i,r)=>{for(var o in r||(r={}))y.call(r,o)&&A(i,o,r[o]);if(Z)for(var o of Z(r))M.call(r,o)&&A(i,o,r[o]);return i},K=(i,r)=>w(i,U(r));const B=t.Ry().shape(b(K(b({},D),{isActive:t.Xg()}),G))},80515:(J,_,e)=>{e.d(_,{Z:()=>T});var t=e(32735),s=e(5636),m=e.n(s),O=e(60216),W=e.n(O),p=e(6630),I=e(98924);const f=({registrationToken:P})=>{const{formatMessage:C}=(0,s.useIntl)();return P?t.createElement(I.Z,{target:`${window.location.origin}${p.Z}auth/register?registrationToken=${P}`},C({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"})):t.createElement(I.Z,{target:`${window.location.origin}${p.Z}auth/login`},C({id:"app.components.Users.MagicLink.connect.sso",defaultMessage:"Send this link to the user, the first login can be made via a SSO provider."}))};f.defaultProps={registrationToken:""},f.propTypes={registrationToken:W().string};const T=f}}]);
@@ -1,12 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5199],{5841:function(x,_,t){(function(e,s){x.exports=s(t(32735))})(this,function(e){return function(s){var m={};function u(o){if(m[o])return m[o].exports;var i=m[o]={i:o,l:!1,exports:{}};return s[o].call(i.exports,i,i.exports,u),i.l=!0,i.exports}return u.m=s,u.c=m,u.d=function(o,i,v){u.o(o,i)||Object.defineProperty(o,i,{enumerable:!0,get:v})},u.r=function(o){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})},u.t=function(o,i){if(1&i&&(o=u(o)),8&i||4&i&&typeof o=="object"&&o&&o.__esModule)return o;var v=Object.create(null);if(u.r(v),Object.defineProperty(v,"default",{enumerable:!0,value:o}),2&i&&typeof o!="string")for(var y in o)u.d(v,y,function(A){return o[A]}.bind(null,y));return v},u.n=function(o){var i=o&&o.__esModule?function(){return o.default}:function(){return o};return u.d(i,"a",i),i},u.o=function(o,i){return Object.prototype.hasOwnProperty.call(o,i)},u.p="",u(u.s=67)}({0:function(s,m){s.exports=e},67:function(s,m,u){"use strict";u.r(m);var o=u(0);function i(){return(i=Object.assign||function(v){for(var y=1;y<arguments.length;y++){var A=arguments[y];for(var D in A)Object.prototype.hasOwnProperty.call(A,D)&&(v[D]=A[D])}return v}).apply(this,arguments)}m.default=function(v){return o.createElement("svg",i({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},v),o.createElement("path",{d:"M0 2.8A.8.8 0 01.8 2h22.4a.8.8 0 01.8.8v2.71a1 1 0 01-1 1H1a1 1 0 01-1-1V2.8z",fill:"#32324D"}),o.createElement("path",{d:"M1.922 7.991C.197 6.675 0 6.252 0 5.289h23.953c.305 1.363-1.594 2.506-2.297 3.125-1.953 1.363-6.253 4.36-7.828 5.45-1.575 1.09-3.031.455-3.562 0-2.063-1.41-6.62-4.557-8.344-5.873zM22.8 18H1.2c-.663 0-1.2.471-1.2 1.053v1.894C0 21.529.537 22 1.2 22h21.6c.663 0 1.2-.471 1.2-1.053v-1.894c0-.582-.537-1.053-1.2-1.053z",fill:"#32324D"}),o.createElement("path",{d:"M0 9.555v10.972h24V9.554c-2.633 1.95-8.367 6.113-9.96 7.166-1.595 1.052-3.352.438-4.032 0L0 9.555z",fill:"#32324D"}))}}})})},47664:(x,_,t)=>{"use strict";t.d(_,{Z:()=>s});const s={firstname:"",lastname:"",email:"",roles:[]}},11643:(x,_,t)=>{"use strict";t.d(_,{Z:()=>s});const s=[]},79005:(x,_,t)=>{"use strict";t.r(_),t.d(_,{default:()=>mt});var e=t(32735),s=t(83985),m=t(79613),u=t(11856),o=t(44526),i=t(16540),v=t(29270),y=t(5841),A=t.n(y),D=t(5141),O=t(5636),g=t(84968),C=t(60216),f=t.n(C),ae=t(35980),I=t(9808),ne=t(20763),z=t(19192),R=t(95602),j=t(53214),w=t(95717),N=t.n(w),Q=t(76470),le=t.n(Q),H=t(81430),ie=Object.defineProperty,U=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,S=Object.prototype.propertyIsEnumerable,X=(n,r,a)=>r in n?ie(n,r,{enumerable:!0,configurable:!0,writable:!0,value:a}):n[r]=a,re=(n,r)=>{for(var a in r||(r={}))V.call(r,a)&&X(n,a,r[a]);if(U)for(var a of U(r))S.call(r,a)&&X(n,a,r[a]);return n},ge=(n,r)=>{var a={};for(var l in n)V.call(n,l)&&r.indexOf(l)<0&&(a[l]=n[l]);if(n!=null&&U)for(var l of U(n))r.indexOf(l)<0&&S.call(n,l)&&(a[l]=n[l]);return a};const $=({canDelete:n,headers:r,entriesToDelete:a,onClickDelete:l,onSelectRow:d,withMainAction:P,withBulkActions:M,rows:h})=>{const{push:c,location:{pathname:E}}=(0,D.useHistory)(),{formatMessage:T}=(0,O.useIntl)();return e.createElement(j.Tbody,null,h.map(p=>{const se=a.findIndex(F=>F===p.id)!==-1;return e.createElement(j.Tr,re({key:p.id},(0,s.onRowClick)({fn:()=>c(`${E}/${p.id}`),condition:M})),P&&e.createElement(j.Td,re({},s.stopPropagation),e.createElement(ae.BaseCheckbox,{"aria-label":T({id:"app.component.table.select.one-entry",defaultMessage:"Select {target}"},{target:(0,H.Pp)(p.firstname,p.lastname)}),checked:se,onChange:()=>{d({name:p.id,value:!se})}})),r.map(F=>{var W=F,{key:oe,cellFormatter:Y,name:k}=W,K=ge(W,["key","cellFormatter","name"]);return e.createElement(j.Td,{key:oe},typeof Y=="function"?Y(p,re({key:oe,name:k},K)):e.createElement(R.Typography,{textColor:"neutral800"},p[k]||"-"))}),M&&e.createElement(j.Td,null,e.createElement(z.Flex,{justifyContent:"end"},e.createElement(ne.IconButton,{onClick:()=>c(`${E}/${p.id}`),label:T({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:(0,H.Pp)(p.firstname,p.lastname)}),noBorder:!0,icon:e.createElement(N(),null)}),n&&e.createElement(I.Box,re({paddingLeft:1},s.stopPropagation),e.createElement(ne.IconButton,{onClick:()=>l(p.id),label:T({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:(0,H.Pp)(p.firstname,p.lastname)}),noBorder:!0,icon:e.createElement(le(),null)})))))}))};$.defaultProps={canDelete:!1,entriesToDelete:[],onClickDelete:()=>{},onSelectRow:()=>{},rows:[],withBulkActions:!1,withMainAction:!1},$.propTypes={canDelete:f().bool,entriesToDelete:f().array,headers:f().array.isRequired,onClickDelete:f().func,onSelectRow:f().func,rows:f().array,withBulkActions:f().bool,withMainAction:f().bool};const Ze=$;var je=t(23899),we=t.n(je);const _e=({displayedFilters:n})=>{const[r,a]=(0,e.useState)(!1),{formatMessage:l}=(0,O.useIntl)(),d=(0,e.useRef)(),P=()=>{a(M=>!M)};return e.createElement(e.Fragment,null,e.createElement(I.Box,{paddingTop:1,paddingBottom:1},e.createElement(o.Button,{variant:"tertiary",ref:d,startIcon:e.createElement(we(),null),onClick:P,size:"S"},l({id:"app.utils.filters",defaultMessage:"Filters"})),r&&e.createElement(s.FilterPopoverURLQuery,{displayedFilters:n,isVisible:r,onToggle:P,source:d})),e.createElement(s.FilterListURLQuery,{filtersSchema:n}))};_e.propTypes={displayedFilters:f().arrayOf(f().shape({name:f().string.isRequired,metadatas:f().shape({label:f().string}),fieldSchema:f().shape({type:f().string})})).isRequired};const Ne=_e;var ve=t(67950),$e=t(93587),me=t.n($e),fe=t(4122),ue=t(78330),De=t(71657),Te=t(90662),ze=t(83281),ye=t(81999),Qe=t(58535);const He=[[{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},name:"firstname",placeholder:{id:"Auth.form.firstname.placeholder",defaultMessage:"e.g. Kai"},type:"text",size:{col:6,xs:12},required:!0},{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},name:"lastname",placeholder:{id:"Auth.form.lastname.placeholder",defaultMessage:"e.g. Doe"},type:"text",size:{col:6,xs:12}}],[{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},name:"email",placeholder:{id:"Auth.form.email.placeholder",defaultMessage:"e.g. kai.doe@strapi.io"},type:"email",size:{col:6,xs:12},required:!0}]];var ce=t(5173);const Ve=ce.Ry().shape({firstname:ce.Z_().required(s.translatedErrors.required),lastname:ce.Z_(),email:ce.Z_().email(s.translatedErrors.email).required(s.translatedErrors.required),roles:ce.IX().min(1,s.translatedErrors.required).required(s.translatedErrors.required)}),Xe={create:{buttonSubmitLabel:{id:"app.containers.Users.ModalForm.footer.button-success",defaultMessage:"Invite user"},isDisabled:!1,next:"magic-link"},"magic-link":{buttonSubmitLabel:{id:"global.finish",defaultMessage:"Finish"},isDisabled:!0,next:null}};var Ae=void 0;function Ge(n,r){var a=typeof Symbol!="undefined"&&n[Symbol.iterator]||n["@@iterator"];if(!a){if(Array.isArray(n)||(a=Je(n))||r&&n&&typeof n.length=="number"){a&&(n=a);var l=0,d=function(){};return{s:d,n:function(){return l>=n.length?{done:!0}:{done:!1,value:n[l++]}},e:function(E){throw E},f:d}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var P=!0,M=!1,h;return{s:function(){a=a.call(n)},n:function(){var E=a.next();return P=E.done,E},e:function(E){M=!0,h=E},f:function(){try{!P&&a.return!=null&&a.return()}finally{if(M)throw h}}}}function Je(n,r){if(!!n){if(typeof n=="string")return Ce(n,r);var a=Object.prototype.toString.call(n).slice(8,-1);if(a==="Object"&&n.constructor&&(a=n.constructor.name),a==="Map"||a==="Set")return Array.from(n);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return Ce(n,r)}}function Ce(n,r){(r==null||r>n.length)&&(r=n.length);for(var a=0,l=new Array(r);a<r;a++)l[a]=n[a];return l}var Ye=Object.defineProperty,ke=Object.defineProperties,qe=Object.getOwnPropertyDescriptors,Le=Object.getOwnPropertySymbols,et=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable,Se=function(r,a,l){return a in r?Ye(r,a,{enumerable:!0,configurable:!0,writable:!0,value:l}):r[a]=l},pe=function(r,a){for(var l in a||(a={}))et.call(a,l)&&Se(r,l,a[l]);if(Le){var d=Ge(Le(a)),P;try{for(d.s();!(P=d.n()).done;){var l=P.value;tt.call(a,l)&&Se(r,l,a[l])}}catch(M){d.e(M)}finally{d.f()}}return r},be=function(r,a){return ke(r,qe(a))},Be=function(r,a,l){return new Promise(function(d,P){var M=function(T){try{c(l.next(T))}catch(p){P(p)}},h=function(T){try{c(l.throw(T))}catch(p){P(p)}},c=function(T){return T.done?d(T.value):Promise.resolve(T.value).then(M,h)};c((l=l.apply(r,a)).next())})},at=function(){return window&&window.strapi&&window.strapi.isEE?t(2793).Z:t(47664).Z}(),nt=function(){return window&&window.strapi&&window.strapi.isEE?t(70008).Z:t(11643).Z}(),rt=function(){return window&&window.strapi&&window.strapi.isEE?t(80515).Z:t(83396).Z}(),Ie=function(r){var a=r.queryName,l=r.onToggle,d=(0,e.useState)("create"),P=(0,ve.Z)(d,2),M=P[0],h=P[1],c=(0,e.useState)(!1),E=(0,ve.Z)(c,2),T=E[0],p=E[1],se=(0,e.useState)(null),F=(0,ve.Z)(se,2),W=F[0],oe=F[1],Y=(0,g.useQueryClient)(),k=(0,O.useIntl)(),K=k.formatMessage,Pe=(0,s.useNotification)(),b=(0,s.useOverlayBlocker)(),Ee=b.lockApp,de=b.unlockApp,ft=(0,g.useMutation)(function(Z){return ye.be.post("/admin/users",Z)},{onSuccess:function(G){return Be(Ae,[G],me().mark(function q(ee){var J;return me().wrap(function(te){for(;;)switch(te.prev=te.next){case 0:return J=ee.data,oe(J.data.registrationToken),te.next=4,Y.invalidateQueries(a);case 4:Et(),p(!1);case 6:case"end":return te.stop()}},q)}))},onError:function(G){throw p(!1),Pe({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),G},onSettled:function(){de()}}),Fe=K({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"}),pt=function(G,q){return Be(Ae,[G,q],me().mark(function ee(J,L){var te,xe;return me().wrap(function(B){for(;;)switch(B.prev=B.next){case 0:return te=L.setErrors,Ee(),p(!0),B.prev=3,B.next=6,ft.mutateAsync(J);case 6:B.next=12;break;case 8:B.prev=8,B.t0=B.catch(3),de(),((xe=B.t0==null?void 0:B.t0.response)==null?void 0:xe.data.message)==="Email already taken"&&te({email:B.t0.response.data.message});case 12:case"end":return B.stop()}},ee,null,[[3,8]])}))},Et=function(){Ke?h(Ke):l()},he=Xe[M],We=he.buttonSubmitLabel,Oe=he.isDisabled,Ke=he.next,gt=M==="create"?e.createElement(o.Button,{type:"submit",loading:T},K(We)):e.createElement(o.Button,{type:"button",loading:T,onClick:l},K(We));return e.createElement(fe.ModalLayout,{onClose:l,labelledBy:"title"},e.createElement(fe.ModalHeader,null,e.createElement(De.Breadcrumbs,{label:Fe},e.createElement(De.Crumb,null,Fe))),e.createElement(ze.Formik,{initialValues:at,onSubmit:pt,validationSchema:Ve,validateOnChange:!1},function(Z){var G=Z.errors,q=Z.handleChange,ee=Z.values;return e.createElement(s.Form,null,e.createElement(fe.ModalBody,null,e.createElement(Te.Stack,{spacing:6},M!=="create"&&e.createElement(rt,{registrationToken:W}),e.createElement(I.Box,null,e.createElement(R.Typography,{variant:"beta",as:"h2"},K({id:"app.components.Users.ModalCreateBody.block-title.details",defaultMessage:"User details"})),e.createElement(I.Box,{paddingTop:4},e.createElement(Te.Stack,{spacing:1},e.createElement(ue.Grid,{gap:5},He.map(function(J){return J.map(function(L){return e.createElement(ue.GridItem,pe({key:L.name},L.size),e.createElement(s.GenericInput,be(pe({},L),{disabled:Oe,error:G[L.name],onChange:q,value:ee[L.name]})))})}))))),e.createElement(I.Box,null,e.createElement(R.Typography,{variant:"beta",as:"h2"},K({id:"global.roles",defaultMessage:"User's role"})),e.createElement(I.Box,{paddingTop:4},e.createElement(ue.Grid,{gap:5},e.createElement(ue.GridItem,{col:6,xs:12},e.createElement(Qe.Z,{disabled:Oe,error:G.roles,onChange:q,value:ee.roles})),nt.map(function(J){return J.map(function(L){return e.createElement(ue.GridItem,pe({key:L.name},L.size),e.createElement(s.GenericInput,be(pe({},L),{disabled:Oe,onChange:q,value:ee[L.name]})))})})))))),e.createElement(fe.ModalFooter,{startActions:e.createElement(o.Button,{variant:"tertiary",onClick:l,type:"button"},K({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:gt}))}))};Ie.propTypes={onToggle:f().func.isRequired,queryName:f().array.isRequired};const st=Ie,Me=({pagination:n})=>e.createElement(I.Box,{paddingTop:4},e.createElement(z.Flex,{alignItems:"flex-end",justifyContent:"space-between"},e.createElement(s.PageSizeURLQuery,null),e.createElement(s.PaginationURLQuery,{pagination:n})));Me.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},Me.propTypes={pagination:f().shape({page:f().number,pageCount:f().number,pageSize:f().number,total:f().number})};const ot=Me;var Re=(n,r,a)=>new Promise((l,d)=>{var P=c=>{try{h(a.next(c))}catch(E){d(E)}},M=c=>{try{h(a.throw(c))}catch(E){d(E)}},h=c=>c.done?l(c.value):Promise.resolve(c.value).then(P,M);h((a=a.apply(n,r)).next())});const lt=(n,r)=>Re(void 0,null,function*(){const{data:{data:a}}=yield ye.be.get(`/admin/users${n}`);return r(),a}),it=n=>Re(void 0,null,function*(){yield ye.be.post("/admin/users/batch-delete",{ids:n})}),ut=[{name:"firstname",metadatas:{label:"Firstname"},fieldSchema:{type:"string"}},{name:"lastname",metadatas:{label:"Lastname"},fieldSchema:{type:"string"}},{name:"email",metadatas:{label:"Email"},fieldSchema:{type:"email"}},{name:"username",metadatas:{label:"Username"},fieldSchema:{type:"string"}},{name:"isActive",metadatas:{label:"Active user"},fieldSchema:{type:"boolean"}}],Ue=[{name:"firstname",key:"firstname",metadatas:{label:"Firstname",sortable:!0}},{name:"lastname",key:"lastname",metadatas:{label:"Lastname",sortable:!0}},{key:"email",name:"email",metadatas:{label:"Email",sortable:!0}},{key:"roles",name:"roles",metadatas:{label:"Roles",sortable:!1},cellFormatter:({roles:n})=>e.createElement(R.Typography,{textColor:"neutral800"},n.map(r=>r.name).join(`,
3
- `))},{key:"username",name:"username",metadatas:{label:"Username",sortable:!0}},{key:"isActive",name:"isActive",metadatas:{label:"User status",sortable:!1},cellFormatter:({isActive:n})=>e.createElement(z.Flex,null,e.createElement(s.Status,{isActive:n,variant:n?"success":"danger"}),e.createElement(R.Typography,{textColor:"neutral800"},n?"Active":"Inactive"))}];var ct=(n,r,a)=>new Promise((l,d)=>{var P=c=>{try{h(a.next(c))}catch(E){d(E)}},M=c=>{try{h(a.throw(c))}catch(E){d(E)}},h=c=>c.done?l(c.value):Promise.resolve(c.value).then(P,M);h((a=a.apply(n,r)).next())});const dt=()=>{const[n,r]=(0,e.useState)(!1),{allowedActions:{canCreate:a,canDelete:l,canRead:d}}=(0,s.useRBAC)(m.Z.settings.users),P=(0,g.useQueryClient)(),M=(0,s.useNotification)(),{formatMessage:h}=(0,O.useIntl)(),{search:c}=(0,D.useLocation)();(0,s.useFocusWhenNavigate)();const{notifyStatus:E}=(0,v.useNotifyAT)(),T=["users",c],p=h({id:"global.users",defaultMessage:"Users"}),se=()=>{E(h({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:p}))},{status:F,data:W,isFetching:oe}=(0,g.useQuery)(T,()=>lt(c,se),{enabled:d,keepPreviousData:!0,retry:!1,staleTime:1e3*20,onError:()=>{M({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),Y=()=>{r(b=>!b)},k=(0,g.useMutation)(b=>it(b),{onSuccess:()=>ct(void 0,null,function*(){yield P.invalidateQueries(T)}),onError:b=>{var Ee,de;(de=(Ee=b==null?void 0:b.response)==null?void 0:Ee.data)!=null&&de.data?M({type:"warning",message:b.response.data.data}):M({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),K=F!=="success"&&F!=="error"||F==="success"&&oe,Pe=a?e.createElement(o.Button,{"data-testid":"create-user-button",onClick:Y,startIcon:e.createElement(A(),null),size:"L"},h({id:"Settings.permissions.users.create",defaultMessage:"Invite new user"})):void 0;return e.createElement(i.Main,{"aria-busy":K},e.createElement(s.SettingsPageTitle,{name:"Users"}),e.createElement(u.HeaderLayout,{primaryAction:Pe,title:p,subtitle:h({id:"Settings.permissions.users.listview.header.subtitle",defaultMessage:"All the users who have access to the Strapi admin panel"})}),d&&e.createElement(u.ActionLayout,{startActions:e.createElement(e.Fragment,null,e.createElement(s.SearchURLQuery,{label:h({id:"app.component.search.label",defaultMessage:"Search for {target}"},{target:p})}),e.createElement(Ne,{displayedFilters:ut}))}),e.createElement(u.ContentLayout,{canRead:d},!d&&e.createElement(s.NoPermissions,null),F==="error"&&e.createElement("div",null,"TODO: An error occurred"),d&&e.createElement(e.Fragment,null,e.createElement(s.DynamicTable,{contentType:"Users",isLoading:K,onConfirmDeleteAll:k.mutateAsync,onConfirmDelete:b=>k.mutateAsync([b]),headers:Ue,rows:W==null?void 0:W.results,withBulkActions:!0,withMainAction:l},e.createElement(Ze,{canDelete:l,headers:Ue,rows:(W==null?void 0:W.results)||[],withBulkActions:!0,withMainAction:l})),e.createElement(ot,{pagination:W==null?void 0:W.pagination}))),n&&e.createElement(st,{onToggle:Y,queryName:T}))},mt=()=>e.createElement(s.CheckPagePermissions,{permissions:m.Z.settings.users.main},e.createElement(dt,null))},98924:(x,_,t)=>{"use strict";t.d(_,{Z:()=>I});var e=t(32735),s=t(60216),m=t.n(s),u=t(20763),o=t.n(u),i=t(83985),v=t.n(i),y=t(68192),A=t.n(y),D=t(59087),O=t.n(D),g=t(5636),C=t.n(g);const f=()=>e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg"},e.createElement("text",{transform:"translate(-23 -9)",fill:"#4B515A",fillRule:"evenodd",fontSize:"32",fontFamily:"AppleColorEmoji, Apple Color Emoji"},e.createElement("tspan",{x:"23",y:"36"},"\u2709\uFE0F"))),ae=({children:ne,target:z})=>{const R=(0,i.useNotification)(),{formatMessage:j}=(0,g.useIntl)(),w=()=>{R({type:"info",message:{id:"notification.link-copied"}})},N=j({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"});return e.createElement(i.ContentBox,{endAction:e.createElement(D.CopyToClipboard,{onCopy:w,text:z},e.createElement(u.IconButton,{label:N,noBorder:!0,icon:e.createElement(A(),null)})),title:z,titleEllipsis:!0,subtitle:ne,icon:e.createElement(f,null),iconBackground:"neutral100"})};ae.propTypes={children:m().oneOfType([m().element,m().string]).isRequired,target:m().string.isRequired};const I=ae},83396:(x,_,t)=>{"use strict";t.d(_,{Z:()=>A});var e=t(32735),s=t(5636),m=t.n(s),u=t(60216),o=t.n(u),i=t(6630),v=t(98924);const y=({registrationToken:D})=>{const{formatMessage:O}=(0,s.useIntl)(),g=`${window.location.origin}${i.Z}auth/register?registrationToken=${D}`;return e.createElement(v.Z,{target:g},O({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"}))};y.defaultProps={registrationToken:""},y.propTypes={registrationToken:o().string};const A=y},58535:(x,_,t)=>{"use strict";t.d(_,{Z:()=>j});var e=t(32735),s=t(60216),m=t.n(s),u=t(5636),o=t.n(u),i=t(25716),v=t.n(i),y=t(84968),A=t.n(y),D=t(19615),O=t(103),g=t.n(O),C=t(81999),f=(w,N,Q)=>new Promise((le,H)=>{var ie=S=>{try{V(Q.next(S))}catch(X){H(X)}},U=S=>{try{V(Q.throw(S))}catch(X){H(X)}},V=S=>S.done?le(S.value):Promise.resolve(S.value).then(ie,U);V((Q=Q.apply(w,N)).next())});const ae=D.keyframes`
4
- from {
5
- transform: rotate(0deg);
6
- }
7
- to {
8
- transform: rotate(359deg);
9
- }
10
- `,I=D.default.div`
11
- animation: ${ae} 2s infinite linear;
12
- `,ne=()=>e.createElement(I,null,e.createElement(g(),null)),z=()=>f(void 0,null,function*(){const{data:w}=yield C.be.get("/admin/roles");return w.data}),R=({disabled:w,error:N,onChange:Q,value:le})=>{const{status:H,data:ie}=(0,y.useQuery)(["roles"],z,{staleTime:5e4}),{formatMessage:U}=(0,u.useIntl)(),V=N?U({id:N,defaultMessage:N}):"",S=U({id:"app.components.Users.ModalCreateBody.block-title.roles",defaultMessage:"User's roles"}),X=U({id:"app.components.Users.ModalCreateBody.block-title.roles.description",defaultMessage:"A user can have one or several roles"}),re=U({id:"app.components.Select.placeholder",defaultMessage:"Select"}),ge=H==="loading"?e.createElement(ne,null):void 0;return e.createElement(i.Select,{id:"roles",disabled:w,error:V,hint:X,label:S,name:"roles",onChange:$=>{Q({target:{name:"roles",value:$}})},placeholder:re,multi:!0,startIcon:ge,value:le,withTags:!0,required:!0},(ie||[]).map($=>e.createElement(i.Option,{key:$.id,value:$.id},$.name)))};R.defaultProps={disabled:!1,error:void 0},R.propTypes={disabled:m().bool,error:m().string,onChange:m().func.isRequired,value:m().array.isRequired};const j=R},2793:(x,_,t)=>{"use strict";t.d(_,{Z:()=>D});var e=t(47664),s=Object.defineProperty,m=Object.getOwnPropertySymbols,u=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,i=(O,g,C)=>g in O?s(O,g,{enumerable:!0,configurable:!0,writable:!0,value:C}):O[g]=C,v=(O,g)=>{for(var C in g||(g={}))u.call(g,C)&&i(O,C,g[C]);if(m)for(var C of m(g))o.call(g,C)&&i(O,C,g[C]);return O};const y=strapi.features.isEnabled(strapi.features.SSO)?{useSSORegistration:!0}:{},D=v(v({},e.Z),y)},70008:(x,_,t)=>{"use strict";t.d(_,{Z:()=>s});const s=strapi.features.isEnabled(strapi.features.SSO)?[[{intlLabel:{id:"Settings.permissions.users.form.sso",defaultMessage:"Connect with SSO"},hint:{id:"Settings.permissions.users.form.sso.description",defaultMessage:"When enabled (ON), users can login via SSO"},name:"useSSORegistration",type:"bool",size:{col:6,xs:12}}]]:[]},80515:(x,_,t)=>{"use strict";t.d(_,{Z:()=>A});var e=t(32735),s=t(5636),m=t.n(s),u=t(60216),o=t.n(u),i=t(6630),v=t(98924);const y=({registrationToken:D})=>{const{formatMessage:O}=(0,s.useIntl)();return D?e.createElement(v.Z,{target:`${window.location.origin}${i.Z}auth/register?registrationToken=${D}`},O({id:"app.components.Users.MagicLink.connect",defaultMessage:"Copy and share this link to give access to this user"})):e.createElement(v.Z,{target:`${window.location.origin}${i.Z}auth/login`},O({id:"app.components.Users.MagicLink.connect.sso",defaultMessage:"Send this link to the user, the first login can be made via a SSO provider."}))};y.defaultProps={registrationToken:""},y.propTypes={registrationToken:o().string};const A=y}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{18909:function(B,E,t){(function(e,c){B.exports=c(t(32735))})(this,function(e){return function(c){var o={};function s(n){if(o[n])return o[n].exports;var i=o[n]={i:n,l:!1,exports:{}};return c[n].call(i.exports,i,i.exports,s),i.l=!0,i.exports}return s.m=c,s.c=o,s.d=function(n,i,d){s.o(n,i)||Object.defineProperty(n,i,{enumerable:!0,get:d})},s.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},s.t=function(n,i){if(1&i&&(n=s(n)),8&i||4&i&&typeof n=="object"&&n&&n.__esModule)return n;var d=Object.create(null);if(s.r(d),Object.defineProperty(d,"default",{enumerable:!0,value:n}),2&i&&typeof n!="string")for(var m in n)s.d(d,m,function(y){return n[y]}.bind(null,m));return d},s.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return s.d(i,"a",i),i},s.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},s.p="",s(s.s=100)}({0:function(c,o){c.exports=e},100:function(c,o,s){"use strict";s.r(o);var n=s(0);function i(){return(i=Object.assign||function(d){for(var m=1;m<arguments.length;m++){var y=arguments[m];for(var T in y)Object.prototype.hasOwnProperty.call(y,T)&&(d[T]=y[T])}return d}).apply(this,arguments)}o.default=function(d){return n.createElement("svg",i({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},d),n.createElement("path",{d:"M17 14h-4.34a6 6 0 110-4H23v4h-2v4h-4v-4zM7 14a2 2 0 100-4 2 2 0 000 4z",fill:"#8E8EA9"}))}}})})},46301:(B,E,t)=>{"use strict";t.d(E,{Z:()=>re});var e=t(32735),c=t(5636),o=t(83985),s=t(11856),n=t(16540),i=t(44526),d=t(88677),m=t.n(d),y=t(98599),T=t.n(y),Z=t(83281),K=t(90662),z=t(9808),H=t(95602),O=t(78330),$=t(37178),Q=t(90353),x=t(25716),X=t(33795),J=t.n(X),N=t(5141),Y=t(84968),w=t(81430),D=t(81999),I=t(5173);const q=I.Ry().shape({name:I.Z_(o.translatedErrors.string).required(o.translatedErrors.required),type:I.Z_(o.translatedErrors.string).oneOf(["read-only","full-access"]).required(o.translatedErrors.required),description:I.Z_().nullable()});var _=t(60216),U=t.n(_);const R=({apiTokenName:u})=>{const{formatMessage:a}=(0,c.useIntl)();return(0,o.useFocusWhenNavigate)(),e.createElement(n.Main,{"aria-busy":"true"},e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(s.HeaderLayout,{primaryAction:e.createElement(i.Button,{disabled:!0,startIcon:e.createElement(m(),null),type:"button",size:"L"},a({id:"global.save",defaultMessage:"Save"})),title:u||a({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"})}),e.createElement(s.ContentLayout,null,e.createElement(o.LoadingIndicatorPage,null)))};R.defaultProps={apiTokenName:null},R.propTypes={apiTokenName:U().string};const ee=R;var te=t(20763),ne=t(68192),ae=t.n(ne),oe=t(59087),se=t(18909),ie=t.n(se);const b=({apiToken:u})=>{const{formatMessage:a}=(0,c.useIntl)(),l=(0,o.useNotification)(),{trackUsage:h}=(0,o.useTracking)(),v=(0,e.useRef)(h);return e.createElement(o.ContentBox,{endAction:u&&e.createElement("span",{style:{alignSelf:"start"}},e.createElement(oe.CopyToClipboard,{onCopy:()=>{v.current("didCopyTokenKey"),l({type:"success",message:{id:"Settings.apiTokens.notification.copied"}})},text:u},e.createElement(te.IconButton,{label:a({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),noBorder:!0,icon:e.createElement(ae(),null),style:{padding:0,height:"1rem"}}))),title:u||a({id:"Settings.apiTokens.copy.editTitle",defaultMessage:"This token isn\u2019t accessible anymore."}),subtitle:a(u?{id:"Settings.apiTokens.copy.lastWarning",defaultMessage:"Make sure to copy this token, you won\u2019t be able to see it again!"}:{id:"Settings.apiTokens.copy.editMessage",defaultMessage:"For security reasons, you can only see your token once."}),icon:e.createElement(ie(),null),iconBackground:"neutral100"})};b.defaultProps={apiToken:null},b.propTypes={apiToken:U().string};const le=b;var j=(u,a,l)=>new Promise((h,v)=>{var M=p=>{try{C(l.next(p))}catch(P){v(P)}},k=p=>{try{C(l.throw(p))}catch(P){v(P)}},C=p=>p.done?h(p.value):Promise.resolve(p.value).then(M,k);C((l=l.apply(u,a)).next())});const re=()=>{var u;let a;(0,o.useFocusWhenNavigate)();const{formatMessage:l}=(0,c.useIntl)(),{lockApp:h,unlockApp:v}=(0,o.useOverlayBlocker)(),M=(0,o.useNotification)(),k=(0,N.useHistory)(),{trackUsage:C}=(0,o.useTracking)(),p=(0,e.useRef)(C),{setCurrentStep:P}=(0,o.useGuidedTour)(),{params:{id:L}}=(0,N.useRouteMatch)("/settings/api-tokens/:id"),f=L==="create";(0,e.useEffect)(()=>{p.current(f?"didAddTokenFromList":"didEditTokenFromList")},[f]),(u=k.location.state)!=null&&u.apiToken.accessKey&&(a=k.location.state.apiToken);const{status:de,data:F}=(0,Y.useQuery)(["api-token",L],()=>j(void 0,null,function*(){const{data:{data:r}}=yield D.be.get(`/admin/api-tokens/${L}`);return r}),{enabled:!f&&!a,onError:()=>{M({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}});F&&(a=F);const ce=(r,S)=>j(void 0,null,function*(){p.current(f?"willCreateToken":"willEditToken"),h();try{const{data:{data:g}}=f?yield D.be.post("/admin/api-tokens",r):yield D.be.put(`/admin/api-tokens/${L}`,r);a=g,M({type:"success",message:l({id:"notification.success.saved",defaultMessage:"Saved"})}),p.current(f?"didCreateToken":"didEditToken",{type:a.type}),f&&(k.replace(`/settings/api-tokens/${g.id}`,{apiToken:g}),P("apiTokens.success"))}catch(g){const A=(0,w.Iz)(g.response.data);S.setErrors(A),M({type:"warning",message:J()(g,"response.data.message","notification.error")})}v()});return!f&&!a&&de!=="success"?e.createElement(ee,{apiTokenName:a==null?void 0:a.name}):e.createElement(n.Main,null,e.createElement(o.SettingsPageTitle,{name:"API Tokens"}),e.createElement(Z.Formik,{validationSchema:q,validateOnChange:!1,initialValues:{name:(a==null?void 0:a.name)||"",description:(a==null?void 0:a.description)||"",type:(a==null?void 0:a.type)||"read-only"},onSubmit:ce},({errors:r,handleChange:S,isSubmitting:g,values:A})=>{var V,W,G;return e.createElement(o.Form,null,e.createElement(s.HeaderLayout,{title:(a==null?void 0:a.name)||l({id:"Settings.apiTokens.createPage.title",defaultMessage:"Create API Token"}),primaryAction:e.createElement(i.Button,{disabled:g,loading:g,startIcon:e.createElement(m(),null),type:"submit",size:"L"},l({id:"global.save",defaultMessage:"Save"})),navigationAction:e.createElement(o.Link,{startIcon:e.createElement(T(),null),to:"/settings/api-tokens"},l({id:"global.back",defaultMessage:"Back"}))}),e.createElement(s.ContentLayout,null,e.createElement(K.Stack,{spacing:6},Boolean(a==null?void 0:a.name)&&e.createElement(le,{apiToken:a.accessKey}),e.createElement(z.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(K.Stack,{spacing:4},e.createElement(H.Typography,{variant:"delta",as:"h2"},l({id:"global.details",defaultMessage:"Details"})),e.createElement(O.Grid,{gap:5},e.createElement(O.GridItem,{key:"name",col:6,xs:12},e.createElement($.TextInput,{name:"name",error:r.name?l((V=r.name)!=null&&V.id?r.name:{id:r.name,defaultMessage:r.name}):null,label:l({id:"Settings.apiTokens.form.name",defaultMessage:"Name"}),onChange:S,value:A.name,required:!0})),e.createElement(O.GridItem,{key:"description",col:6,xs:12},e.createElement(Q.Textarea,{label:l({id:"Settings.apiTokens.form.description",defaultMessage:"Description"}),name:"description",error:r.description?l((W=r.description)!=null&&W.id?r.description:{id:r.description,defaultMessage:r.description}):null,onChange:S},A.description)),e.createElement(O.GridItem,{key:"type",col:6,xs:12},e.createElement(x.Select,{name:"type",label:l({id:"Settings.apiTokens.form.type",defaultMessage:"Token type"}),value:A.type,error:r.type?l((G=r.type)!=null&&G.id?r.type:{id:r.type,defaultMessage:r.type}):null,onChange:ue=>{S({target:{name:"type",value:ue}})}},e.createElement(x.Option,{value:"read-only"},l({id:"Settings.apiTokens.types.read-only",defaultMessage:"Read-only"})),e.createElement(x.Option,{value:"full-access"},l({id:"Settings.apiTokens.types.full-access",defaultMessage:"Full access"}))))))))))}))}},96854:(B,E,t)=>{"use strict";t.r(E),t.d(E,{default:()=>d});var e=t(32735),c=t(83985),o=t.n(c),s=t(79613),n=t(46301);const d=()=>e.createElement(c.CheckPagePermissions,{permissions:s.Z.settings["api-tokens"].create},e.createElement(n.Z,null))}}]);
@@ -1,34 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2218],{52582:(d,t,e)=>{e.d(t,{Z:()=>i});var s=e(65064),o=e.n(s),r=e(38904),a=e.n(r),n=a()(o());n.push([d.id,`/* Port of TextMate's Blackboard theme */
2
-
3
- .cm-s-blackboard.CodeMirror { background: #0C1021; color: #F8F8F8; }
4
- .cm-s-blackboard div.CodeMirror-selected { background: #253B76; }
5
- .cm-s-blackboard .CodeMirror-line::selection, .cm-s-blackboard .CodeMirror-line > span::selection, .cm-s-blackboard .CodeMirror-line > span > span::selection { background: rgba(37, 59, 118, .99); }
6
- .cm-s-blackboard .CodeMirror-line::-moz-selection, .cm-s-blackboard .CodeMirror-line > span::-moz-selection, .cm-s-blackboard .CodeMirror-line > span > span::-moz-selection { background: rgba(37, 59, 118, .99); }
7
- .cm-s-blackboard .CodeMirror-gutters { background: #0C1021; border-right: 0; }
8
- .cm-s-blackboard .CodeMirror-guttermarker { color: #FBDE2D; }
9
- .cm-s-blackboard .CodeMirror-guttermarker-subtle { color: #888; }
10
- .cm-s-blackboard .CodeMirror-linenumber { color: #888; }
11
- .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7; }
12
-
13
- .cm-s-blackboard .cm-keyword { color: #FBDE2D; }
14
- .cm-s-blackboard .cm-atom { color: #D8FA3C; }
15
- .cm-s-blackboard .cm-number { color: #D8FA3C; }
16
- .cm-s-blackboard .cm-def { color: #8DA6CE; }
17
- .cm-s-blackboard .cm-variable { color: #FF6400; }
18
- .cm-s-blackboard .cm-operator { color: #FBDE2D; }
19
- .cm-s-blackboard .cm-comment { color: #AEAEAE; }
20
- .cm-s-blackboard .cm-string { color: #61CE3C; }
21
- .cm-s-blackboard .cm-string-2 { color: #61CE3C; }
22
- .cm-s-blackboard .cm-meta { color: #D8FA3C; }
23
- .cm-s-blackboard .cm-builtin { color: #8DA6CE; }
24
- .cm-s-blackboard .cm-tag { color: #8DA6CE; }
25
- .cm-s-blackboard .cm-attribute { color: #8DA6CE; }
26
- .cm-s-blackboard .cm-header { color: #FF6400; }
27
- .cm-s-blackboard .cm-hr { color: #AEAEAE; }
28
- .cm-s-blackboard .cm-link { color: #8DA6CE; }
29
- .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; }
30
-
31
- .cm-s-blackboard .CodeMirror-activeline-background { background: #3C3636; }
32
- .cm-s-blackboard .CodeMirror-matchingbracket { outline:1px solid grey;color:white !important; }
33
- `,""]);const i=n},38904:d=>{d.exports=function(t){var e=[];return e.toString=function(){return this.map(function(o){var r="",a=typeof o[5]!="undefined";return o[4]&&(r+="@supports (".concat(o[4],") {")),o[2]&&(r+="@media ".concat(o[2]," {")),a&&(r+="@layer".concat(o[5].length>0?" ".concat(o[5]):""," {")),r+=t(o),a&&(r+="}"),o[2]&&(r+="}"),o[4]&&(r+="}"),r}).join("")},e.i=function(o,r,a,n,i){typeof o=="string"&&(o=[[null,o,void 0]]);var l={};if(a)for(var _=0;_<this.length;_++){var m=this[_][0];m!=null&&(l[m]=!0)}for(var f=0;f<o.length;f++){var c=[].concat(o[f]);a&&l[c[0]]||(typeof i!="undefined"&&(typeof c[5]=="undefined"||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=i),r&&(c[2]&&(c[1]="@media ".concat(c[2]," {").concat(c[1],"}")),c[2]=r),n&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=n):c[4]="".concat(n)),e.push(c))}},e}},65064:d=>{d.exports=function(t){return t[1]}},88333:(d,t,e)=>{e.r(t),e.d(t,{default:()=>v});var s=e(93379),o=e.n(s),r=e(7795),a=e.n(r),n=e(90569),i=e.n(n),l=e(3565),_=e.n(l),m=e(19216),f=e.n(m),c=e(44589),E=e.n(c),p=e(52582),u={};u.styleTagTransform=E(),u.setAttributes=_(),u.insert=i().bind(null,"head"),u.domAPI=a(),u.insertStyleElement=f();var b=o()(p.Z,u);const v=p.Z&&p.Z.locals?p.Z.locals:void 0},93379:d=>{var t=[];function e(r){for(var a=-1,n=0;n<t.length;n++)if(t[n].identifier===r){a=n;break}return a}function s(r,a){for(var n={},i=[],l=0;l<r.length;l++){var _=r[l],m=a.base?_[0]+a.base:_[0],f=n[m]||0,c="".concat(m," ").concat(f);n[m]=f+1;var E=e(c),p={css:_[1],media:_[2],sourceMap:_[3],supports:_[4],layer:_[5]};if(E!==-1)t[E].references++,t[E].updater(p);else{var u=o(p,a);a.byIndex=l,t.splice(l,0,{identifier:c,updater:u,references:1})}i.push(c)}return i}function o(r,a){var n=a.domAPI(a);n.update(r);var i=function(_){if(_){if(_.css===r.css&&_.media===r.media&&_.sourceMap===r.sourceMap&&_.supports===r.supports&&_.layer===r.layer)return;n.update(r=_)}else n.remove()};return i}d.exports=function(r,a){a=a||{},r=r||[];var n=s(r,a);return function(l){l=l||[];for(var _=0;_<n.length;_++){var m=n[_],f=e(m);t[f].references--}for(var c=s(l,a),E=0;E<n.length;E++){var p=n[E],u=e(p);t[u].references===0&&(t[u].updater(),t.splice(u,1))}n=c}}},90569:d=>{var t={};function e(o){if(typeof t[o]=="undefined"){var r=document.querySelector(o);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(a){r=null}t[o]=r}return t[o]}function s(o,r){var a=e(o);if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(r)}d.exports=s},19216:d=>{function t(e){var s=document.createElement("style");return e.setAttributes(s,e.attributes),e.insert(s,e.options),s}d.exports=t},3565:(d,t,e)=>{function s(o){var r=e.nc;r&&o.setAttribute("nonce",r)}d.exports=s},7795:d=>{function t(o,r,a){var n="";a.supports&&(n+="@supports (".concat(a.supports,") {")),a.media&&(n+="@media ".concat(a.media," {"));var i=typeof a.layer!="undefined";i&&(n+="@layer".concat(a.layer.length>0?" ".concat(a.layer):""," {")),n+=a.css,i&&(n+="}"),a.media&&(n+="}"),a.supports&&(n+="}");var l=a.sourceMap;l&&typeof btoa!="undefined"&&(n+=`
34
- /*# sourceMappingURL=data:application/json;base64,`.concat(btoa(unescape(encodeURIComponent(JSON.stringify(l))))," */")),r.styleTagTransform(n,o,r.options)}function e(o){if(o.parentNode===null)return!1;o.parentNode.removeChild(o)}function s(o){var r=o.insertStyleElement(o);return{update:function(n){t(r,o,n)},remove:function(){e(r)}}}d.exports=s},44589:d=>{function t(e,s){if(s.styleSheet)s.styleSheet.cssText=e;else{for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(document.createTextNode(e))}}d.exports=t}}]);