@strapi/admin 4.6.0 → 4.7.0-beta.0

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 (211) hide show
  1. package/.browserslistrc +2 -1
  2. package/admin/src/assets/images/onboarding-preview.png +0 -0
  3. package/admin/src/components/AuthenticatedApp/utils/api.js +5 -4
  4. package/admin/src/components/LeftMenu/index.js +9 -3
  5. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +18 -16
  6. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +5 -5
  7. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +1 -3
  8. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +6 -5
  9. package/admin/src/content-manager/components/InputUID/index.js +4 -4
  10. package/admin/src/content-manager/components/Inputs/index.js +0 -2
  11. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +35 -14
  12. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +4 -3
  13. package/admin/src/content-manager/hooks/useLazyComponents/index.js +9 -13
  14. package/admin/src/content-manager/hooks/useRelation/useRelation.js +4 -4
  15. package/admin/src/content-manager/pages/App/useModels.js +8 -3
  16. package/admin/src/content-manager/pages/App/utils/getContentTypeLinks.js +3 -2
  17. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +4 -4
  18. package/admin/src/content-manager/pages/EditSettingsView/utils/api.js +4 -2
  19. package/admin/src/content-manager/pages/ListSettingsView/utils/api.js +4 -2
  20. package/admin/src/content-manager/pages/ListView/index.js +9 -9
  21. package/admin/src/core/utils/index.js +0 -1
  22. package/admin/src/hooks/useFetchEnabledPlugins/utils/api.js +3 -2
  23. package/admin/src/hooks/useInjectReducer/index.js +1 -0
  24. package/admin/src/hooks/useInjectReducer/useInjectReducer.js +19 -0
  25. package/admin/src/hooks/useRegenerate/index.js +4 -4
  26. package/admin/src/hooks/useRolesList/index.js +5 -3
  27. package/admin/src/hooks/useSettingsMenu/utils/defaultGlobalLinks.js +7 -0
  28. package/admin/src/index.js +4 -3
  29. package/admin/src/pages/Admin/Onboarding/constants.js +46 -0
  30. package/admin/src/pages/Admin/Onboarding/index.js +161 -89
  31. package/admin/src/pages/Admin/index.js +5 -2
  32. package/admin/src/pages/ProfilePage/utils/api.js +5 -3
  33. package/admin/src/pages/SettingsPage/{pages/Users/ListPage → components}/Filters/index.js +0 -0
  34. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components → components/Tokens}/FormHead/index.js +36 -19
  35. package/admin/src/pages/SettingsPage/components/Tokens/FormiTokenContainer/LifeSpanInput.js +96 -0
  36. package/admin/src/pages/SettingsPage/components/Tokens/LifeSpanInput/index.js +98 -0
  37. package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +73 -0
  38. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DefaultButton/index.js +1 -1
  39. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DeleteButton/index.js +1 -1
  40. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/ReadButton/index.js +0 -0
  41. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/UpdateButton/index.js +0 -0
  42. package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +135 -0
  43. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components/ContentBox → components/Tokens/TokenBox}/index.js +17 -17
  44. package/admin/src/pages/SettingsPage/components/Tokens/TokenDescription/index.js +51 -0
  45. package/admin/src/pages/SettingsPage/components/Tokens/TokenName/index.js +46 -0
  46. package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +69 -0
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +5 -3
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +52 -142
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +5 -1
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +43 -19
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +9 -16
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +5 -3
  53. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +105 -0
  54. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/LoadingView/index.js +50 -0
  55. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +201 -0
  56. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/getDateOfExpiration.js +16 -0
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/index.js +4 -0
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +10 -0
  59. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +182 -0
  60. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/utils/tableHeaders.js +48 -0
  61. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js +14 -0
  62. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedEditView/index.js +14 -0
  63. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedListView/index.js +12 -0
  64. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/api.js +6 -3
  65. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +9 -3
  66. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +1 -1
  67. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/api.js +6 -3
  68. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +3 -2
  69. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +3 -2
  70. package/admin/src/pages/SettingsPage/utils/defaultRoutes.js +33 -0
  71. package/admin/src/permissions/defaultPermissions.js +8 -0
  72. package/admin/src/translations/en.json +25 -6
  73. package/admin/src/translations/eu.json +796 -0
  74. package/admin/src/translations/languageNativeNames.js +1 -0
  75. package/admin/src/translations/ru.json +9 -9
  76. package/build/1412.936ed920.chunk.js +159 -0
  77. package/build/1683.c8aa7b7c.chunk.js +268 -0
  78. package/build/19eb2dfcf2603eb55733.png +0 -0
  79. package/build/2607.2e48dbf8.chunk.js +66 -0
  80. package/build/2743.6d1632f9.chunk.js +45 -0
  81. package/build/3075.dc3894fe.chunk.js +108 -0
  82. package/build/3632.0317b618.chunk.js +138 -0
  83. package/build/4649.15cc0afe.chunk.js +30 -0
  84. package/build/{5910.a5374848.chunk.js → 4855.bd092921.chunk.js} +65 -65
  85. package/build/7259.aa68d808.chunk.js +1 -0
  86. package/build/7407.883fb1f5.chunk.js +1 -0
  87. package/build/9707.7290fd92.chunk.js +96 -0
  88. package/build/Admin-authenticatedApp.f29f6021.chunk.js +79 -0
  89. package/build/{Admin_homePage.79ab880c.chunk.js → Admin_homePage.b1730882.chunk.js} +1 -1
  90. package/build/{Admin_marketplace.eabf21b2.chunk.js → Admin_marketplace.ea0316c2.chunk.js} +2 -2
  91. package/build/Admin_pluginsPage.5c24f963.chunk.js +6 -0
  92. package/build/Admin_profilePage.59af1978.chunk.js +15 -0
  93. package/build/Admin_settingsPage.178dc6e3.chunk.js +178 -0
  94. package/build/admin-app.77a50e1f.chunk.js +112 -0
  95. package/build/admin-edit-roles-page.446b69dc.chunk.js +1 -0
  96. package/build/admin-edit-users.2ed69bfd.chunk.js +10 -0
  97. package/build/admin-users.fc003b10.chunk.js +11 -0
  98. package/build/{api-tokens-create-page.0e686c30.chunk.js → api-tokens-create-page.0db3aec1.chunk.js} +1 -1
  99. package/build/{api-tokens-edit-page.d6c7487b.chunk.js → api-tokens-edit-page.671e0e26.chunk.js} +1 -1
  100. package/build/api-tokens-list-page.7387102c.chunk.js +16 -0
  101. package/build/audit-logs-settings-page.c3dce30d.chunk.js +1 -0
  102. package/build/content-manager.42b24d46.chunk.js +1139 -0
  103. package/build/{content-type-builder-list-view.4243b2b1.chunk.js → content-type-builder-list-view.79e84b36.chunk.js} +1 -6
  104. package/build/{content-type-builder.365b6bf4.chunk.js → content-type-builder.855db321.chunk.js} +16 -15
  105. package/build/{email-settings-page.379552b1.chunk.js → email-settings-page.d1fcc7a3.chunk.js} +4 -9
  106. package/build/en-json.b0748970.chunk.js +1 -0
  107. package/build/eu-json.fceecd8b.chunk.js +1 -0
  108. package/build/i18n-settings-page.b8d8753e.chunk.js +60 -0
  109. package/build/index.html +1 -1
  110. package/build/main.1022ed01.js +4393 -0
  111. package/build/ru-json.aa5cd123.chunk.js +1 -0
  112. package/build/runtime~main.84941a97.js +2 -0
  113. package/build/sso-settings-page.b85ad080.chunk.js +41 -0
  114. package/build/transfer-tokens-create-page.16e23791.chunk.js +1 -0
  115. package/build/transfer-tokens-edit-page.3886c973.chunk.js +1 -0
  116. package/build/transfer-tokens-list-page.e8010a89.chunk.js +16 -0
  117. package/build/upload-settings.ef64bbf9.chunk.js +84 -0
  118. package/build/upload.c5730dfa.chunk.js +33 -0
  119. package/build/users-advanced-settings-page.fce9908e.chunk.js +8 -0
  120. package/build/users-email-settings-page.343d0ad2.chunk.js +23 -0
  121. package/build/users-providers-settings-page.e5a9a3f1.chunk.js +99 -0
  122. package/build/users-roles-settings-page.66312f31.chunk.js +30 -0
  123. package/build/webhook-edit-page.73e51e64.chunk.js +75 -0
  124. package/build/{webhook-list-page.f75ba3f2.chunk.js → webhook-list-page.1134f130.chunk.js} +1 -1
  125. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/ComboboxFilter/index.js +41 -0
  126. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionBody.js +1 -3
  127. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/TableRows/index.js +1 -1
  128. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +47 -0
  129. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +30 -31
  130. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getActionTypesDefaultMessages.js +7 -9
  131. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +88 -0
  132. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +4 -2
  133. package/ee/server/migrations/audit-logs-table.js +45 -0
  134. package/ee/server/register.js +2 -0
  135. package/ee/server/services/audit-logs.js +11 -1
  136. package/package.json +30 -30
  137. package/server/bootstrap.js +2 -0
  138. package/server/config/admin-actions.js +48 -0
  139. package/server/content-types/index.js +2 -0
  140. package/server/content-types/transfer-token-permission.js +36 -0
  141. package/server/content-types/transfer-token.js +66 -0
  142. package/server/controllers/admin.js +16 -0
  143. package/server/controllers/api-token.js +4 -5
  144. package/server/controllers/index.js +1 -0
  145. package/server/controllers/transfer/index.js +13 -0
  146. package/server/controllers/transfer/runner.js +24 -0
  147. package/server/controllers/transfer/token.js +131 -0
  148. package/server/register.js +2 -9
  149. package/server/routes/index.js +2 -0
  150. package/server/routes/transfer.js +95 -0
  151. package/server/services/api-token.js +2 -3
  152. package/server/services/constants.js +6 -0
  153. package/server/services/index.js +1 -0
  154. package/server/services/transfer/index.js +6 -0
  155. package/server/services/transfer/permission.js +22 -0
  156. package/server/services/transfer/token.js +409 -0
  157. package/server/strategies/api-token.js +4 -2
  158. package/server/strategies/data-transfer.js +107 -0
  159. package/server/strategies/index.js +1 -0
  160. package/server/utils/index.d.ts +2 -0
  161. package/server/validation/api-tokens.js +1 -6
  162. package/server/validation/transfer/index.js +5 -0
  163. package/server/validation/transfer/token.js +34 -0
  164. package/admin/src/content-manager/components/InputJSON/FieldWrapper.js +0 -40
  165. package/admin/src/content-manager/components/InputJSON/Label.js +0 -35
  166. package/admin/src/content-manager/components/InputJSON/components.js +0 -36
  167. package/admin/src/content-manager/components/InputJSON/index.js +0 -223
  168. package/admin/src/content-manager/components/InputJSON/jsonlint.js +0 -680
  169. package/admin/src/core/utils/axiosInstance.js +0 -40
  170. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormBody/index.js +0 -78
  171. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/index.js +0 -112
  172. package/build/2607.ce06608e.chunk.js +0 -66
  173. package/build/2743.dea372fb.chunk.js +0 -42
  174. package/build/3075.03ebe93d.chunk.js +0 -115
  175. package/build/3632.963ac97d.chunk.js +0 -138
  176. package/build/4318.8cb388a5.chunk.js +0 -30
  177. package/build/4656.a0d43cca.chunk.js +0 -159
  178. package/build/8633.4af74a50.chunk.js +0 -1
  179. package/build/9641.a311b612.chunk.js +0 -276
  180. package/build/9707.62831b4d.chunk.js +0 -101
  181. package/build/Admin-authenticatedApp.50dc27f9.chunk.js +0 -75
  182. package/build/Admin_pluginsPage.953e796b.chunk.js +0 -6
  183. package/build/Admin_profilePage.5c2efda5.chunk.js +0 -15
  184. package/build/Admin_settingsPage.19cfb9ca.chunk.js +0 -178
  185. package/build/admin-app.34295b50.chunk.js +0 -112
  186. package/build/admin-edit-roles-page.d50d9654.chunk.js +0 -1
  187. package/build/admin-edit-users.912b856d.chunk.js +0 -10
  188. package/build/admin-users.e36e7111.chunk.js +0 -11
  189. package/build/api-tokens-list-page.1cd86136.chunk.js +0 -16
  190. package/build/audit-logs-settings-page.308a6250.chunk.js +0 -1
  191. package/build/codemirror-addon-closebrackets.71aa4bbd.chunk.js +0 -2
  192. package/build/codemirror-addon-lint-js.405f70fb.chunk.js +0 -1
  193. package/build/codemirror-addon-lint.8487ad3d.chunk.js +0 -1
  194. package/build/codemirror-addon-mark-selection.1928c849.chunk.js +0 -1
  195. package/build/codemirror-css.359a2a4b.chunk.js +0 -345
  196. package/build/codemirror-javacript.af237b68.chunk.js +0 -1
  197. package/build/codemirror-theme.2fe63a16.chunk.js +0 -33
  198. package/build/content-manager.851f40ce.chunk.js +0 -1170
  199. package/build/en-json.38d182e5.chunk.js +0 -1
  200. package/build/i18n-settings-page.3ab28b1a.chunk.js +0 -65
  201. package/build/main.9f31732e.js +0 -4454
  202. package/build/ru-json.3b411a39.chunk.js +0 -1
  203. package/build/runtime~main.2b8e2318.js +0 -2
  204. package/build/sso-settings-page.b64a44e8.chunk.js +0 -41
  205. package/build/upload-settings.6c26ff37.chunk.js +0 -89
  206. package/build/upload.2c69d238.chunk.js +0 -38
  207. package/build/users-advanced-settings-page.c4270682.chunk.js +0 -13
  208. package/build/users-email-settings-page.60422a2f.chunk.js +0 -28
  209. package/build/users-providers-settings-page.e1834060.chunk.js +0 -104
  210. package/build/users-roles-settings-page.3ef35132.chunk.js +0 -30
  211. package/build/webhook-edit-page.c0080dc1.chunk.js +0 -75
@@ -0,0 +1,84 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[695],{67963:function(U,E,t){t.r(E),t.d(E,{SettingsPage:function(){return W},default:function(){return F}});var e=t(32735),g=t(99357),n=t(5636),s=t(88425),l=t(66456),h=t(72850),b=t(87933),p=t(9139),P=t(49372),S=t(41415),D=t(27649),R=t(27677),v=t(15335),a=t(5803),d=t(28356),r=t(17e3),o=t(96709),u=t(55721),x=t(89793),M=t.n(x),m=t(15503),k=i=>i,J=t(97889),N=t(3040),c=t.n(N);const B={isLoading:!0,isSubmiting:!1,initialData:{responsiveDimensions:!0,sizeOptimization:!0,autoOrientation:!1,videoPreview:!1},modifiedData:{responsiveDimensions:!0,sizeOptimization:!0,autoOrientation:!1,videoPreview:!1}};var $=(i,C)=>(0,J.default)(i,f=>{switch(C.type){case"CANCEL_CHANGES":{f.modifiedData=i.initialData;break}case"GET_DATA_SUCCEEDED":{f.isLoading=!1,f.initialData=C.data,f.modifiedData=C.data;break}case"ON_CHANGE":{c()(f,["modifiedData",...C.keys.split(".")],C.value);break}case"ON_SUBMIT":{f.isSubmiting=!0;break}case"SUBMIT_SUCCEEDED":{f.initialData=i.modifiedData,f.isSubmiting=!1;break}case"ON_SUBMIT_ERROR":{f.isSubmiting=!1;break}default:return i}}),y=t(93826),O=t(98399);const W=()=>{const{formatMessage:i}=(0,n.useIntl)(),{lockApp:C,unlockApp:f}=(0,s.useOverlayBlocker)(),H=(0,s.useNotification)(),{get:K,put:G}=(0,s.useFetchClient)();(0,s.useFocusWhenNavigate)();const[{initialData:V,isLoading:Q,isSubmiting:X,modifiedData:z},I]=(0,e.useReducer)($,B,k),q=(0,e.useRef)(!0);(0,e.useEffect)(()=>{const j=u.Z.CancelToken.source(),te=async()=>{try{const{data:{data:w}}=await K((0,m.IF)("settings"),{cancelToken:j.token});I({type:"GET_DATA_SUCCEEDED",data:w})}catch(w){O.error(w)}};return q.current&&te(),()=>{j.cancel("Operation canceled by the user."),q.current=!1}},[]);const _=M()(V,z),ee=async L=>{if(L.preventDefault(),!_){C(),I({type:"ON_SUBMIT"});try{await G((0,m.IF)("settings"),z),I({type:"SUBMIT_SUCCEEDED"}),H({type:"success",message:{id:"notification.form.success.fields"}})}catch(j){O.error(j),I({type:"ON_SUBMIT_ERROR"})}f()}},Y=({target:{name:L,value:j}})=>{I({type:"ON_CHANGE",keys:L,value:j})};return e.createElement(D.o,{tabIndex:-1},e.createElement(g.Helmet,{title:i({id:(0,m.OB)("page.title"),defaultMessage:"Settings - Media Libray"})}),e.createElement("form",{onSubmit:ee},e.createElement(d.T,{title:i({id:(0,m.OB)("settings.header.label"),defaultMessage:"Media Library"}),primaryAction:e.createElement(S.z,{disabled:_,"data-testid":"save-button",loading:X,type:"submit",startIcon:e.createElement(l.Z,null),size:"S"},i({id:"global.save",defaultMessage:"Save"})),subtitle:i({id:(0,m.OB)("settings.sub-header.label"),defaultMessage:"Configure the settings for the Media Library"})}),e.createElement(r.D,null,Q?e.createElement(s.LoadingIndicatorPage,null):e.createElement(o.A,null,e.createElement(R.K,{spacing:12},e.createElement(h.x,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(R.K,{spacing:4},e.createElement(b.k,null,e.createElement(P.Z,{variant:"delta",as:"h2"},i({id:(0,m.OB)("settings.blockTitle"),defaultMessage:"Asset management"}))),e.createElement(v.r,{gap:6},e.createElement(a.P,{col:6,s:12},e.createElement(p.s,{"aria-label":"responsiveDimensions","data-testid":"responsiveDimensions",checked:z.responsiveDimensions,hint:i({id:(0,m.OB)("settings.form.responsiveDimensions.description"),defaultMessage:"Enabling this option will generate multiple formats (small, medium and large) of the uploaded asset."}),label:i({id:(0,m.OB)("settings.form.responsiveDimensions.label"),defaultMessage:"Responsive friendly upload"}),name:"responsiveDimensions",offLabel:i({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:i({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:L=>{Y({target:{name:"responsiveDimensions",value:L.target.checked}})}})),e.createElement(a.P,{col:6,s:12},e.createElement(p.s,{"aria-label":"sizeOptimization","data-testid":"sizeOptimization",checked:z.sizeOptimization,hint:i({id:(0,m.OB)("settings.form.sizeOptimization.description"),defaultMessage:"Enabling this option will reduce the image size and slightly reduce its quality."}),label:i({id:(0,m.OB)("settings.form.sizeOptimization.label"),defaultMessage:"Size optimization"}),name:"sizeOptimization",offLabel:i({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:i({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:L=>{Y({target:{name:"sizeOptimization",value:L.target.checked}})}})),e.createElement(a.P,{col:6,s:12},e.createElement(p.s,{"aria-label":"autoOrientation","data-testid":"autoOrientation",checked:z.autoOrientation,hint:i({id:(0,m.OB)("settings.form.autoOrientation.description"),defaultMessage:"Enabling this option will automatically rotate the image according to EXIF orientation tag."}),label:i({id:(0,m.OB)("settings.form.autoOrientation.label"),defaultMessage:"Auto orientation"}),name:"autoOrientation",offLabel:i({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:i({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:L=>{Y({target:{name:"autoOrientation",value:L.target.checked}})}}))))))))))};var F=()=>e.createElement(s.CheckPagePermissions,{permissions:y.Z.settings},e.createElement(W,null))},17e3:function(U,E,t){t.d(E,{D:function(){return s}});var e=t(32735),g=t(60216),n=t(72850);const s=({children:l})=>e.createElement(n.x,{paddingLeft:10,paddingRight:10},l);s.propTypes={children:g.node.isRequired}},28356:function(U,E,t){t.d(E,{T:function(){return D}});var e=t(32735),g=t(83292),n=t(60216),s=t(49372),l=t(72850),h=t(87933);const b=a=>{const d=(0,e.useRef)(null),[r,o]=(0,e.useState)(!0),u=([x])=>{o(x.isIntersecting)};return(0,e.useEffect)(()=>{const x=d.current,M=new IntersectionObserver(u,a);return x&&M.observe(d.current),()=>{x&&M.disconnect()}},[d,a]),[d,r]};var p=t(81002);const P=(a,d)=>{const r=(0,p.useCallbackRef)(d);(0,e.useLayoutEffect)(()=>{const o=new ResizeObserver(r);return Array.isArray(a)?a.forEach(u=>{u.current&&o.observe(u.current)}):a.current&&o.observe(a.current),()=>{o.disconnect()}},[a,r])},S=()=>{const a=(0,e.useRef)(null),[d,r]=(0,e.useState)(null),[o,u]=b({root:null,rootMargin:"0px",threshold:0});return P(o,()=>{o.current&&r(o.current.getBoundingClientRect())}),(0,e.useEffect)(()=>{a.current&&r(a.current.getBoundingClientRect())},[a]),{containerRef:o,isVisible:u,baseHeaderLayoutRef:a,headerSize:d}},D=a=>{const{containerRef:d,isVisible:r,baseHeaderLayoutRef:o,headerSize:u}=S();return e.createElement(e.Fragment,null,e.createElement("div",{style:{height:u?.height},ref:d},r&&e.createElement(v,{ref:o,...a})),!r&&e.createElement(v,{...a,sticky:!0,width:u?.width}))};D.displayName="HeaderLayout";const R=(0,g.default)(l.x)`
2
+ width: ${a=>a.width}px;
3
+ `,v=e.forwardRef(({navigationAction:a,primaryAction:d,secondaryAction:r,subtitle:o,title:u,sticky:x,width:M,...m},T)=>{const k=typeof o=="string";return x?e.createElement(R,{paddingLeft:6,paddingRight:6,paddingTop:3,paddingBottom:3,position:"fixed",top:0,right:0,background:"neutral0",shadow:"tableShadow",width:M,zIndex:4,"data-strapi-header-sticky":!0},e.createElement(h.k,{justifyContent:"space-between"},e.createElement(h.k,null,a&&e.createElement(l.x,{paddingRight:3},a),e.createElement(l.x,null,e.createElement(s.Z,{variant:"beta",as:"h1",...m},u),k?e.createElement(s.Z,{variant:"pi",textColor:"neutral600"},o):o),r?e.createElement(l.x,{paddingLeft:4},r):null),e.createElement(h.k,null,d?e.createElement(l.x,{paddingLeft:2},d):void 0))):e.createElement(l.x,{ref:T,paddingLeft:10,paddingRight:10,paddingBottom:8,paddingTop:a?6:8,background:"neutral100","data-strapi-header":!0},a?e.createElement(l.x,{paddingBottom:2},a):null,e.createElement(h.k,{justifyContent:"space-between"},e.createElement(h.k,null,e.createElement(s.Z,{as:"h1",variant:"alpha",...m},u),r?e.createElement(l.x,{paddingLeft:4},r):null),d),k?e.createElement(s.Z,{variant:"epsilon",textColor:"neutral600",as:"p"},o):o)});v.displayName="BaseHeaderLayout",v.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0,sticky:!1,width:void 0},v.propTypes={navigationAction:n.node,primaryAction:n.node,secondaryAction:n.node,sticky:n.bool,subtitle:n.oneOfType([n.string,n.node]),title:n.string.isRequired,width:n.number},D.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0},D.propTypes={navigationAction:n.node,primaryAction:n.node,secondaryAction:n.node,subtitle:n.oneOfType([n.string,n.node]),title:n.string.isRequired}},96709:function(U,E,t){t.d(E,{A:function(){return b}});var e=t(32735),g=t(60216),n=t(83292),s=t(72850);const l=(0,n.default)(s.x)`
4
+ display: grid;
5
+ grid-template-columns: ${({hasSideNav:p})=>p?"auto 1fr":"1fr"};
6
+ `,h=(0,n.default)(s.x)`
7
+ overflow-x: hidden;
8
+ `,b=({sideNav:p,children:P})=>e.createElement(l,{hasSideNav:Boolean(p)},p,e.createElement(h,{paddingBottom:10},P));b.defaultProps={sideNav:void 0},b.propTypes={children:g.node.isRequired,sideNav:g.node}},27649:function(U,E,t){t.d(E,{o:function(){return l}});var e=t(32735),g=t(60216),n=t(83292);const s=n.default.main`
9
+ // To prevent global outline on focus visible to force an outline when Main is focused
10
+ &:focus-visible {
11
+ outline: none;
12
+ }
13
+ `,l=({labelledBy:h,...b})=>{const p=h||"main-content-title";return e.createElement(s,{"aria-labelledby":p,id:"main-content",tabIndex:-1,...b})};l.defaultProps={labelledBy:void 0},l.propTypes={labelledBy:g.string}},7563:function(U,E,t){t.d(E,{A:function(){return R}});var e=t(74512),g=t(32735),n=t(83292),s=t(57269),l=t(72850),h=t(49372),b=t(87933),p=t(30350);const P=n.keyframes`
14
+ from {
15
+ transform: rotate(0deg);
16
+ }
17
+ to {
18
+ transform: rotate(359deg);
19
+ }
20
+ `,S=n.default.div`
21
+ animation: ${P} 2s infinite linear;
22
+ will-change: transform;
23
+ `,D=(0,n.default)(b.k)`
24
+ background: transparent;
25
+ border: none;
26
+
27
+ &[aria-disabled='true'] {
28
+ pointer-events: none;
29
+ svg path {
30
+ fill: ${({theme:v})=>v.colors.neutral600};
31
+ }
32
+ }
33
+
34
+ svg {
35
+ display: flex;
36
+ font-size: ${10/16}rem;
37
+ }
38
+
39
+ svg path {
40
+ fill: ${({theme:v})=>v.colors.primary600};
41
+ }
42
+
43
+ ${p.BF}
44
+ `,R=g.forwardRef(({children:v,startIcon:a,endIcon:d,onClick:r,disabled:o=!1,loading:u=!1,...x},M)=>{const m=r&&!o?r:void 0,T=o||u;return(0,e.jsxs)(D,{ref:M,"aria-disabled":T,onClick:m,as:"button",type:"button",...x,children:[(a||u)&&(0,e.jsx)(l.x,{as:"span",paddingRight:2,"aria-hidden":!0,children:u?(0,e.jsx)(S,{children:(0,e.jsx)(s.Loader,{})}):a}),(0,e.jsx)(h.Z,{variant:"pi",textColor:T?"neutral600":"primary600",children:v}),d&&(0,e.jsx)(l.x,{as:"span",paddingLeft:2,"aria-hidden":!0,children:d})]})});R.displayName="TextButton"},9139:function(U,E,t){t.d(E,{s:function(){return N}});var e=t(32735),g=t(83292),n=t(60216),s=t(78542),l=t(66436),h=t(87107),b=t(76437),p=t(67014),P=t(47851),S=t(27677),D=t(87933),R=t(7563),v=t(30350),a=t(49372),d=t(3685),r=t(72850),o=t(76144);const u=g.default.label`
45
+ position: relative;
46
+ display: inline-block;
47
+ z-index: 0;
48
+ width: 100%;
49
+ `,x=(0,g.default)(r.x)`
50
+ cursor: ${({disabled:c})=>c?"not-allowed":void 0};
51
+ // Masks the background of each value
52
+ overflow: hidden;
53
+ flex-wrap: wrap;
54
+
55
+ ${(0,v.k3)()}
56
+ `,M=(0,g.default)(D.k).attrs({hasRadius:!0})`
57
+ background-color: ${({theme:c,checked:B,disabled:A})=>B?A?c.colors.neutral200:c.colors.neutral0:"transparent"};
58
+ border: 1px solid
59
+ ${({theme:c,checked:B,disabled:A})=>B&&B!==null?A?c.colors.neutral300:c.colors.neutral200:A?c.colors.neutral150:c.colors.neutral100};
60
+ position: relative;
61
+ user-select: none;
62
+ z-index: 2;
63
+ flex: 1 1 50%;
64
+ /**
65
+ We declare the defined value because we want the height of the input when
66
+ the values are in a row to be 40px. But defining a height on the label
67
+ would break the input when it wraps.
68
+ */
69
+ padding-top: ${({size:c})=>`${c==="S"?"2px":"6px"}`};
70
+ padding-bottom: ${({size:c})=>`${c==="S"?"2px":"6px"}`};
71
+ `,m=g.default.input`
72
+ height: 100%;
73
+ left: 0;
74
+ opacity: 0;
75
+ position: absolute;
76
+ top: 0;
77
+ z-index: 1;
78
+ width: 100%;
79
+ `,T=e.forwardRef(({size:c,onLabel:B,offLabel:A,children:$,checked:y,disabled:O,onChange:W,...Z},F)=>{const{error:i,hint:C,id:f,name:H,required:K}=(0,o.U)(),G="neutral600";let V=!y&&y!==null?"danger700":G,Q=y?"primary600":G;const X=I=>{O||W(I)};let z;return i?z=`${f}-error`:C&&(z=`${f}-hint`),e.createElement(u,null,e.createElement(d.T,null,$),e.createElement(x,{hasRadius:!0,disabled:O,padding:1,display:"flex",background:O?"neutral150":"neutral100",borderStyle:"solid",borderWidth:"1px",borderColor:"neutral200"},e.createElement(M,{size:c,paddingLeft:3,paddingRight:3,justifyContent:"center",alignItems:"center","aria-hidden":!0,checked:y===null?!1:!y,disabled:O},e.createElement(a.Z,{variant:"pi",fontWeight:"bold",textTransform:"uppercase",textColor:O?"neutral700":V},A)),e.createElement(M,{size:c,paddingLeft:3,paddingRight:3,justifyContent:"center",alignItems:"center","aria-hidden":!0,checked:y===null?!1:y,disabled:O},e.createElement(a.Z,{variant:"pi",fontWeight:"bold",textTransform:"uppercase",textColor:O?"neutral700":Q},B)),e.createElement(m,{type:"checkbox","aria-disabled":O,"aria-describedby":z,onChange:I=>X(I),name:H,ref:F,"aria-required":K,...Z,checked:!(y===null||!y)})))});T.displayName="ToggleCheckbox",T.defaultProps={disabled:!1,checked:!1,onChange:void 0,size:"M"},T.propTypes={checked:n.bool,children:n.string.isRequired,disabled:n.bool,offLabel:n.string.isRequired,onChange:n.func,onLabel:n.string.isRequired,size:n.oneOf(Object.keys(s.J.input))};const k=(0,g.default)(h.g)`
80
+ max-width: 320px;
81
+ `,J=(0,g.default)(R.A)`
82
+ align-self: flex-end;
83
+ margin-left: auto;
84
+ `,N=({disabled:c,size:B,error:A,hint:$,label:y,name:O,labelAction:W,required:Z,id:F,onClear:i,clearLabel:C,checked:f,...H})=>{const K=(0,l.M)(F);return e.createElement(k,{name:O,hint:$,error:A,id:K,required:Z},e.createElement(S.K,{spacing:1},e.createElement(D.k,null,e.createElement(b.Q,{action:W},y),C&&i&&f!==null&&!c&&e.createElement(J,{onClick:i},C)),e.createElement(T,{id:K,size:B,checked:f,disabled:c,...H},y),e.createElement(p.J,null),e.createElement(P.c,null)))};N.displayName="ToggleInput",N.defaultProps={checked:!1,clearLabel:void 0,disabled:!1,error:void 0,hint:void 0,id:void 0,label:"",labelAction:void 0,name:"",onClear:void 0,required:!1,size:"M"},N.propTypes={checked:n.bool,clearLabel:n.string,disabled:n.bool,error:n.string,hint:n.oneOfType([n.string,n.node,n.arrayOf(n.node)]),id:n.string,label:n.string,labelAction:n.node,name:n.string,onClear:n.func,required:n.bool,size:n.oneOf(Object.keys(s.J.input))}}}]);
@@ -0,0 +1,33 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3650],{84837:function($,L,t){t.r(L),t.d(L,{default:function(){return xt}});var e=t(32735),E=t(5141),o=t(5636),C=t(99357),n=t(88425),B=t(27649),F=t(83292),R=t(33348),D=t(96709),V=t(99223),N=t(17e3),G=t(72850),H=t(9026),c=t(44426),A=t(3685),h=t(50563),v=t(49372),x=t(5803),Z=t(87933),J=t(68625),Y=t(45112),ae=t(62864),k=t(85370),ze=t(86588),We=t(61405),Ke=t(96852),Qe=t(35468),je=t(65790),$e=t(25005),Ve=t(89581),He=t(60216),p=t.n(He);const oe=({pagination:s})=>e.createElement(G.x,{paddingTop:6},e.createElement(Z.k,{alignItems:"flex-end",justifyContent:"space-between"},e.createElement(n.PageSizeURLQuery,null),e.createElement(n.PaginationURLQuery,{pagination:s})));oe.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},oe.propTypes={pagination:p().shape({page:p().number,pageCount:p().number,pageSize:p().number,total:p().number})};var se=t(27677),y=t(68781),Ne=t(20069),Q=t(41415),Ge=t(4038),Je=t(81094);const ve=({selected:s,onSuccess:r})=>{const{formatMessage:i}=(0,o.useIntl)(),[d,u]=(0,e.useState)(!1),{isLoading:g,remove:O}=(0,Je.K)(),M=async()=>{await O(s),r()};return e.createElement(e.Fragment,null,e.createElement(Q.z,{variant:"danger-light",size:"S",startIcon:e.createElement(Ge.default,null),onClick:()=>u(!0)},i({id:"global.delete",defaultMessage:"Delete"})),e.createElement(n.ConfirmDialog,{isConfirmButtonLoading:g,isOpen:d,onToggleDialog:()=>u(!1),onConfirm:M}))};ve.propTypes={selected:p().arrayOf(y.pw,y.nx).isRequired,onSuccess:p().func.isRequired};var Xe=t(78150),Ye=t(83281),ke=t(86834),we=t.n(ke),qe=t(15335),_e=t(97405),pe=t(85025),he=t(31600),et=t(55225),tt=t(11406),nt=t(76437),ye=t(84968),X=t(74951),m=t(15503);const at=()=>{const s=(0,n.useNotification)(),r=(0,ye.useQueryClient)(),i=(0,m.IF)("actions/bulk-move"),{post:d}=(0,n.useFetchClient)(),u=({destinationFolderId:M,filesAndFolders:f})=>{const T=f.reduce((P,l)=>{const{id:z,type:I}=l,j=I==="asset"?"fileIds":"folderIds";return P[j]||(P[j]=[]),P[j].push(z),P},{});return d(i,{...T,destinationFolderId:M})},g=(0,ye.useMutation)(u,{onSuccess(M){const{data:{data:f}}=M;f?.files?.length>0&&(r.refetchQueries([X.Z,"assets"],{active:!0}),r.refetchQueries([X.Z,"asset-count"],{active:!0})),r.refetchQueries([X.Z,"folders"],{active:!0}),s({type:"success",message:{id:(0,m.OB)("modal.move.success-label"),defaultMessage:"Elements have been moved successfully."}})}});return{...g,move:(M,f)=>g.mutateAsync({destinationFolderId:M,filesAndFolders:f})}};var ot=t(21375),st=t(72236);const le=({onClose:s,selected:r,currentFolder:i})=>{const{formatMessage:d}=(0,o.useIntl)(),{data:u,isLoading:g}=(0,st.v)(),{move:O}=at();if(!u)return null;const M=async(P,{setErrors:l})=>{try{await O(P.destination.value,r),s()}catch(z){const I=(0,n.getAPIInnerErrors)(z,{getTrad:m.OB}),j=Object.entries(I).reduce((q,[W,S])=>(q[W||"destination"]=S.defaultMessage,q),{});we()(j)||l(j)}},f=()=>{s()};if(g)return e.createElement(pe.P,{onClose:f,labelledBy:"title"},e.createElement(he.f,null,e.createElement(Z.k,{justifyContent:"center",paddingTop:4,paddingBottom:4},e.createElement(_e.a,null,d({id:(0,m.OB)("content.isLoading"),defaultMessage:"Content is loading."})))));const T={destination:{value:i?.id||"",label:i?.name||u[0].label}};return e.createElement(pe.P,{onClose:f,labelledBy:"title"},e.createElement(Ye.Formik,{validateOnChange:!1,onSubmit:M,initialValues:T},({values:P,errors:l,setFieldValue:z})=>e.createElement(n.Form,{noValidate:!0},e.createElement(et.x,null,e.createElement(v.Z,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},d({id:(0,m.OB)("modal.folder.move.title"),defaultMessage:"Move elements to"}))),e.createElement(he.f,null,e.createElement(qe.r,{gap:4},e.createElement(x.P,{xs:12,col:12},e.createElement(se.K,{spacing:1},e.createElement(nt.Q,{htmlFor:"folder-destination"},d({id:(0,m.OB)("form.input.label.folder-location"),defaultMessage:"Location"})),e.createElement(ot.Z,{options:u,onChange:I=>{z("destination",I)},defaultValue:P.destination,name:"destination",menuPortalTarget:document.querySelector("body"),inputId:"folder-destination",error:l?.destination,ariaErrorMessage:"destination-error"}),l.destination&&e.createElement(v.Z,{variant:"pi",as:"p",id:"folder-destination-error",textColor:"danger600"},l.destination))))),e.createElement(tt.m,{startActions:e.createElement(Q.z,{onClick:f,variant:"tertiary",name:"cancel"},d({id:"cancel",defaultMessage:"Cancel"})),endActions:e.createElement(Q.z,{type:"submit",loading:g},d({id:"modal.folder.move.submit",defaultMessage:"Move"}))}))))};le.defaultProps={currentFolder:void 0},le.propTypes={onClose:p().func.isRequired,currentFolder:y.nx,selected:p().arrayOf(y.nx,y.pw).isRequired};const re=({selected:s,onSuccess:r,currentFolder:i})=>{const{formatMessage:d}=(0,o.useIntl)(),[u,g]=(0,e.useState)(!1),O=()=>{g(!1),r()};return e.createElement(e.Fragment,null,e.createElement(Q.z,{variant:"secondary",size:"S",startIcon:e.createElement(Xe.Z,null),onClick:()=>g(!0)},d({id:"global.move",defaultMessage:"Move"})),u&&e.createElement(le,{currentFolder:i,onClose:O,selected:s}))};re.defaultProps={currentFolder:void 0},re.propTypes={onSuccess:p().func.isRequired,currentFolder:y.nx,selected:p().arrayOf(y.pw,y.nx).isRequired};const ie=({selected:s,onSuccess:r,currentFolder:i})=>{const{formatMessage:d}=(0,o.useIntl)();return e.createElement(se.K,{horizontal:!0,spacing:2,paddingBottom:5},e.createElement(v.Z,{variant:"epsilon",textColor:"neutral600"},d({id:(0,Ne.Z)("list.assets.selected"),defaultMessage:"{numberFolders, plural, one {1 folder} other {# folders}} - {numberAssets, plural, one {1 asset} other {# assets}} selected"},{numberFolders:s.filter(({type:u})=>u==="folder").length,numberAssets:s.filter(({type:u})=>u==="asset").length})),e.createElement(ve,{selected:s,onSuccess:r}),e.createElement(re,{currentFolder:i,selected:s,onSuccess:r}))};ie.defaultProps={currentFolder:void 0},ie.propTypes={onSuccess:p().func.isRequired,currentFolder:y.nx,selected:p().arrayOf(y.pw,y.nx).isRequired};var lt=t(72295),de=t(19406),rt=t(1920);const it=({isFiltering:s,canCreate:r,canRead:i})=>s?{id:"list.assets-empty.title-withSearch",defaultMessage:"There are no elements with the applied filters"}:i?r?{id:"list.assets.empty-upload",defaultMessage:"Upload your first assets..."}:{id:"list.assets.empty",defaultMessage:"Media Library is empty"}:{id:"header.actions.no-permissions",defaultMessage:"No permissions to view"},Me=({canCreate:s,isFiltering:r,canRead:i,onActionClick:d})=>{const{formatMessage:u}=(0,o.useIntl)(),g=it({isFiltering:r,canCreate:s,canRead:i});return e.createElement(rt.i,{icon:i?null:lt.default,action:s&&!r&&e.createElement(Q.z,{variant:"secondary",startIcon:e.createElement(de.default,null),onClick:d},u({id:(0,m.OB)("header.actions.add-assets"),defaultMessage:"Add new assets"})),content:u({...g,id:(0,m.OB)(g.id)})})};Me.propTypes={canCreate:p().bool.isRequired,canRead:p().bool.isRequired,isFiltering:p().bool.isRequired,onActionClick:p().func.isRequired};var w=t(47359),dt=t(5644),ct=t(79996),ut=t(90768),Ce=t(90142);const mt=()=>{const s=(0,e.useRef)(null),[r,i]=(0,e.useState)(!1),{formatMessage:d}=(0,o.useIntl)(),{trackUsage:u}=(0,n.useTracking)(),[{query:g},O]=(0,n.useQueryParams)(),M=g?.filters?.$and||[],f=()=>i(l=>!l),T=l=>{O({filters:{$and:l},page:1})},P=l=>{u("didFilterMediaLibraryElements",{location:"content-manager",filter:Object.keys(l[l.length-1])[0]}),O({filters:{$and:l},page:1})};return e.createElement(e.Fragment,null,e.createElement(Q.z,{variant:"tertiary",ref:s,startIcon:e.createElement(dt.Z,null),onClick:f,size:"S"},d({id:"app.utils.filters",defaultMessage:"Filters"})),r&&e.createElement(ut.Z,{displayedFilters:Ce.Z,filters:M,onSubmit:P,onToggle:f,source:s}),e.createElement(ct.Z,{appliedFilters:M,filtersSchema:Ce.Z,onRemoveFilter:T}))};var gt=t(28356),ft=t(50428),Et=t(29439),vt=t(32353);const ce=({breadcrumbs:s,canCreate:r,folder:i,onToggleEditFolderDialog:d,onToggleUploadAssetDialog:u})=>{const{formatMessage:g}=(0,o.useIntl)(),{pathname:O}=(0,E.useLocation)(),[{query:M}]=(0,n.useQueryParams)(),f={...M,folder:i?.parent?.id??void 0};return e.createElement(gt.T,{title:g({id:(0,m.OB)("plugin.name"),defaultMessage:"Media Library"}),subtitle:s&&i&&e.createElement(vt.O,{as:"nav",label:g({id:(0,m.OB)("header.breadcrumbs.nav.label"),defaultMessage:"Folders navigation"}),breadcrumbs:s,currentFolderId:i?.id}),navigationAction:i&&e.createElement(ft.r,{startIcon:e.createElement(Et.Z,null),to:`${O}?${(0,R.stringify)(f,{encode:!1})}`},g({id:(0,m.OB)("header.actions.folder-level-up"),defaultMessage:"Back"})),primaryAction:r&&e.createElement(se.K,{horizontal:!0,spacing:2},e.createElement(Q.z,{startIcon:e.createElement(de.default,null),variant:"secondary",onClick:d},g({id:(0,m.OB)("header.actions.add-folder"),defaultMessage:"Add new folder"})),e.createElement(Q.z,{startIcon:e.createElement(de.default,null),onClick:u},g({id:(0,m.OB)("header.actions.add-assets"),defaultMessage:"Add new assets"})))})};ce.defaultProps={breadcrumbs:!1,folder:null},ce.propTypes={breadcrumbs:p().oneOfType([y.Fv,p().bool]),canCreate:p().bool.isRequired,folder:y.nx,onToggleEditFolderDialog:p().func.isRequired,onToggleUploadAssetDialog:p().func.isRequired};var pt=t(37293),ht=t(77935),yt=t(46891),Mt=t(36156),Ct=t(93826);const Lt=(0,F.default)(G.x)`
2
+ height: ${32/16}rem;
3
+ display: flex;
4
+ align-items: center;
5
+ `,Le=(0,F.default)(v.Z)`
6
+ max-width: 100%;
7
+ `,Ae=(0,F.default)(G.x)`
8
+ svg {
9
+ path {
10
+ fill: ${({theme:s})=>s.colors.neutral500};
11
+ }
12
+ }
13
+ `,At=()=>{const{push:s}=(0,E.useHistory)(),{canRead:r,canCreate:i,canUpdate:d,canCopyLink:u,canDownload:g,isLoading:O}=(0,yt.y)(),M=(0,e.useRef)(),{formatMessage:f}=(0,o.useIntl)(),{pathname:T}=(0,E.useLocation)(),{trackUsage:P}=(0,n.useTracking)(),[{query:l},z]=(0,n.useQueryParams)(),I=Boolean(l._q||l.filters),[j,q]=(0,n.usePersistentState)(y.uf.view,y.Uk.GRID),W=j===y.Uk.GRID,{data:S,isLoading:Ot,errors:Ft}=(0,pt.L)({skipWhen:!r,query:l}),{data:Dt,isLoading:Pt,errors:Tt}=(0,ht.j)({enabled:r&&S?.pagination?.page===1&&!(0,m.rV)(l),query:l}),{data:ue,isLoading:Be,error:St}=(0,Mt.W)(l?.folder,{enabled:r&&!!l?.folder});St?.response?.status===404&&s(T);const _=Dt?.map(a=>({...a,type:"folder",folderURL:(0,m.Km)(T,l,a.id),isSelectable:d}))??[],b=_?.length||0,ee=S?.results?.map(a=>({...a,type:"asset",isSelectable:d}))||[],U=ee?.length??0,It=S?.pagination?.total,Re=Be||Pt||O||Ot,[bt,Ut]=(0,e.useState)(!1),[Zt,xe]=(0,e.useState)(!1),[Oe,me]=(0,e.useState)(void 0),[ge,Fe]=(0,e.useState)(void 0),[K,{selectOne:te,selectAll:De}]=(0,n.useSelectionState)(["type","id"],[]),Pe=K?.length>0&&K?.length!==U+b,fe=()=>Ut(a=>!a),Te=({created:a=!1}={})=>{a&&l?.page!=="1"&&z({...l,page:1}),xe(ne=>!ne)},Se=(a,ne)=>{a.target.checked&&P("didSelectAllMediaLibraryElements"),De(ne)},Ie=a=>{P("didSortMediaLibraryElements",{location:"upload",sort:a}),z({sort:a})},be=a=>{Fe(a),xe(!0)},zt=a=>{Fe(null),Te(a),M.current&&M.current.focus()},Ue=a=>{a===U&&S.pagination.page===S.pagination.pageCount&&S.pagination.page>1&&z({...l,page:S.pagination.page-1})},Wt=()=>{De(),Ue(K.length)};return(0,n.useFocusWhenNavigate)(),e.createElement(D.A,null,e.createElement(B.o,{"aria-busy":Re},e.createElement(ce,{breadcrumbs:!Be&&(0,m.M4)(ue,{pathname:T,query:l}),canCreate:i,onToggleEditFolderDialog:Te,onToggleUploadAssetDialog:fe,folder:ue}),e.createElement(V.Z,{startActions:e.createElement(e.Fragment,null,d&&W&&(U>0||b>0)&&e.createElement(Lt,{paddingLeft:2,paddingRight:2,background:"neutral0",hasRadius:!0,borderColor:"neutral200"},e.createElement(c.C,{"aria-label":f({id:(0,m.OB)("bulk.select.label"),defaultMessage:"Select all folders & assets"}),indeterminate:Pe,value:(U>0||b>0)&&K.length===U+b,onChange:a=>Se(a,[...ee,..._])})),r&&W&&e.createElement(Ve.Z,{onChangeSort:Ie}),r&&e.createElement(mt,null)),endActions:e.createElement(e.Fragment,null,e.createElement(n.CheckPermissions,{permissions:Ct.Z.configureView},e.createElement(Ae,{paddingTop:1,paddingBottom:1},e.createElement(h.h,{forwardedAs:E.Link,to:{pathname:`${T}/configuration`,search:(0,R.stringify)(l,{encode:!1})},icon:e.createElement(Y.Z,null),label:f({id:"app.links.configure-view",defaultMessage:"Configure the view"})}))),e.createElement(Ae,{paddingTop:1,paddingBottom:1},e.createElement(h.h,{icon:W?e.createElement(k.Z,null):e.createElement(ae.Z,null),label:f(W?{id:"view-switch.list",defaultMessage:"List View"}:{id:"view-switch.grid",defaultMessage:"Grid View"}),onClick:()=>q(W?y.Uk.LIST:y.Uk.GRID)})),e.createElement(n.SearchURLQuery,{label:f({id:(0,m.OB)("search.label"),defaultMessage:"Search for an asset"}),trackedEvent:"didSearchMediaLibraryElements",trackedEventDetails:{location:"upload"}}))}),e.createElement(N.D,null,K.length>0&&e.createElement(ie,{currentFolder:ue,selected:K,onSuccess:Wt}),Re&&e.createElement(n.LoadingIndicatorPage,null),(Ft||Tt)&&e.createElement(n.AnErrorOccurred,null),b===0&&U===0&&e.createElement(Me,{canCreate:i,canRead:r,isFiltering:I,onActionClick:fe}),r&&!W&&(U>0||b>0)&&e.createElement($e.b,{assetCount:U,folderCount:b,indeterminate:Pe,onChangeSort:Ie,onChangeFolder:a=>s((0,m.Km)(T,l,a)),onEditAsset:me,onEditFolder:be,onSelectOne:te,onSelectAll:Se,rows:[..._,...ee],selected:K,shouldDisableBulkSelect:!d,sortQuery:l?.sort??""}),r&&W&&e.createElement(e.Fragment,null,b>0&&e.createElement(je.a,{title:(I&&U>0||!I)&&f({id:(0,m.OB)("list.folders.title"),defaultMessage:"Folders ({count})"},{count:b})||""},_.map(a=>{const Kt=!!K.filter(({type:Ee})=>Ee==="folder").find(Ee=>Ee.id===a.id),Ze=(0,m.Km)(T,l,a?.id);return e.createElement(x.P,{col:3,key:`folder-${a.id}`},e.createElement(w.Ac,{ref:ge&&a.id===ge.id?M:void 0,ariaLabel:a.name,id:`folder-${a.id}`,to:Ze,startAction:te&&a.isSelectable?e.createElement(w.MM,{"data-testid":`folder-checkbox-${a.id}`,value:Kt,onChange:()=>te(a)}):null,cardActions:e.createElement(h.h,{icon:e.createElement(J.Z,null),"aria-label":f({id:(0,m.OB)("list.folder.edit"),defaultMessage:"Edit folder"}),onClick:()=>be(a)})},e.createElement(w.Bu,null,e.createElement(w.u6,{to:Ze},e.createElement(Z.k,{as:"h2",direction:"column",alignItems:"start",maxWidth:"100%"},e.createElement(Le,{fontWeight:"semiBold",ellipsis:!0},a.name,e.createElement(A.T,null,":")),e.createElement(Le,{as:"span",textColor:"neutral600",variant:"pi",ellipsis:!0},f({id:(0,m.OB)("list.folder.subtitle"),defaultMessage:"{folderCount, plural, =0 {# folder} one {# folder} other {# folders}}, {filesCount, plural, =0 {# asset} one {# asset} other {# assets}}"},{folderCount:a.children.count,filesCount:a.files.count})))))))})),U>0&&b>0&&e.createElement(G.x,{paddingTop:6,paddingBottom:4},e.createElement(H.i,null)),U>0&&e.createElement(Qe.r,{assets:ee,onEditAsset:me,onSelectAsset:te,selectedAssets:K.filter(({type:a})=>a==="asset"),title:(!I||I&&b>0)&&S?.pagination?.page===1&&f({id:(0,m.OB)("list.assets.title"),defaultMessage:"Assets ({count})"},{count:It})||""})),S?.pagination&&e.createElement(oe,{pagination:S.pagination}))),bt&&e.createElement(ze.x,{onClose:fe,trackedLocation:"upload",folderId:l?.folder}),Zt&&e.createElement(We.f,{onClose:zt,folder:ge,parentFolderId:l?.folder,location:"upload"}),Oe&&e.createElement(Ke.s,{onClose:a=>{a===null&&Ue(1),me(void 0)},asset:Oe,canUpdate:d,canCopyLink:u,canDownload:g,trackedLocation:"upload"}))};var Bt=t(68715);const Rt=(0,e.lazy)(()=>t.e(9514).then(t.bind(t,1372)));var xt=()=>{const{config:{isLoading:s,isError:r,data:i}}=(0,Bt.Z)(),[{rawQuery:d},u]=(0,n.useQueryParams)(),{formatMessage:g}=(0,o.useIntl)(),O=g({id:(0,m.OB)("plugin.name"),defaultMessage:"Media Library"});return(0,e.useEffect)(()=>{s||r||d||u({sort:i.sort,page:1,pageSize:i.pageSize})},[s,r,i,d,u]),(0,n.useFocusWhenNavigate)(),e.createElement(B.o,{"aria-busy":s},e.createElement(C.Helmet,{title:O}),s&&e.createElement(n.LoadingIndicatorPage,null),d?e.createElement(e.Suspense,{fallback:e.createElement(n.LoadingIndicatorPage,null)},e.createElement(E.Switch,null,e.createElement(E.Route,{exact:!0,path:`/plugins/${X.Z}`,component:At}),e.createElement(E.Route,{exact:!0,path:`/plugins/${X.Z}/configuration`,render:()=>e.createElement(Rt,{config:i})}))):null)}},99223:function($,L,t){t.d(L,{Z:function(){return R}});var e=t(32735),E=t(60216),o=t(83292),C=t(72850),n=t(87933);const B=(0,o.default)(n.k)`
14
+ & > * + * {
15
+ margin-left: ${({theme:D})=>D.spaces[2]};
16
+ }
17
+
18
+ margin-left: ${({pullRight:D})=>D?"auto":void 0};
19
+ `,F=(0,o.default)(B)`
20
+ flex-shrink: 0;
21
+ `,R=({startActions:D,endActions:V})=>D||V?e.createElement(C.x,{paddingLeft:10,paddingRight:10},e.createElement(C.x,{paddingBottom:4},e.createElement(n.k,{justifyContent:"space-between",alignItems:"flex-start"},D&&e.createElement(B,{wrap:"wrap"},D),V&&e.createElement(F,{pullRight:!0},V)))):null;R.defaultProps={endActions:void 0,startActions:void 0},R.propTypes={endActions:E.node,startActions:E.node}},17e3:function($,L,t){t.d(L,{D:function(){return C}});var e=t(32735),E=t(60216),o=t(72850);const C=({children:n})=>e.createElement(o.x,{paddingLeft:10,paddingRight:10},n);C.propTypes={children:E.node.isRequired}},28356:function($,L,t){t.d(L,{T:function(){return N}});var e=t(32735),E=t(83292),o=t(60216),C=t(49372),n=t(72850),B=t(87933);const F=c=>{const A=(0,e.useRef)(null),[h,v]=(0,e.useState)(!0),x=([Z])=>{v(Z.isIntersecting)};return(0,e.useEffect)(()=>{const Z=A.current,J=new IntersectionObserver(x,c);return Z&&J.observe(A.current),()=>{Z&&J.disconnect()}},[A,c]),[A,h]};var R=t(81002);const D=(c,A)=>{const h=(0,R.useCallbackRef)(A);(0,e.useLayoutEffect)(()=>{const v=new ResizeObserver(h);return Array.isArray(c)?c.forEach(x=>{x.current&&v.observe(x.current)}):c.current&&v.observe(c.current),()=>{v.disconnect()}},[c,h])},V=()=>{const c=(0,e.useRef)(null),[A,h]=(0,e.useState)(null),[v,x]=F({root:null,rootMargin:"0px",threshold:0});return D(v,()=>{v.current&&h(v.current.getBoundingClientRect())}),(0,e.useEffect)(()=>{c.current&&h(c.current.getBoundingClientRect())},[c]),{containerRef:v,isVisible:x,baseHeaderLayoutRef:c,headerSize:A}},N=c=>{const{containerRef:A,isVisible:h,baseHeaderLayoutRef:v,headerSize:x}=V();return e.createElement(e.Fragment,null,e.createElement("div",{style:{height:x?.height},ref:A},h&&e.createElement(H,{ref:v,...c})),!h&&e.createElement(H,{...c,sticky:!0,width:x?.width}))};N.displayName="HeaderLayout";const G=(0,E.default)(n.x)`
22
+ width: ${c=>c.width}px;
23
+ `,H=e.forwardRef(({navigationAction:c,primaryAction:A,secondaryAction:h,subtitle:v,title:x,sticky:Z,width:J,...Y},ae)=>{const k=typeof v=="string";return Z?e.createElement(G,{paddingLeft:6,paddingRight:6,paddingTop:3,paddingBottom:3,position:"fixed",top:0,right:0,background:"neutral0",shadow:"tableShadow",width:J,zIndex:4,"data-strapi-header-sticky":!0},e.createElement(B.k,{justifyContent:"space-between"},e.createElement(B.k,null,c&&e.createElement(n.x,{paddingRight:3},c),e.createElement(n.x,null,e.createElement(C.Z,{variant:"beta",as:"h1",...Y},x),k?e.createElement(C.Z,{variant:"pi",textColor:"neutral600"},v):v),h?e.createElement(n.x,{paddingLeft:4},h):null),e.createElement(B.k,null,A?e.createElement(n.x,{paddingLeft:2},A):void 0))):e.createElement(n.x,{ref:ae,paddingLeft:10,paddingRight:10,paddingBottom:8,paddingTop:c?6:8,background:"neutral100","data-strapi-header":!0},c?e.createElement(n.x,{paddingBottom:2},c):null,e.createElement(B.k,{justifyContent:"space-between"},e.createElement(B.k,null,e.createElement(C.Z,{as:"h1",variant:"alpha",...Y},x),h?e.createElement(n.x,{paddingLeft:4},h):null),A),k?e.createElement(C.Z,{variant:"epsilon",textColor:"neutral600",as:"p"},v):v)});H.displayName="BaseHeaderLayout",H.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0,sticky:!1,width:void 0},H.propTypes={navigationAction:o.node,primaryAction:o.node,secondaryAction:o.node,sticky:o.bool,subtitle:o.oneOfType([o.string,o.node]),title:o.string.isRequired,width:o.number},N.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0},N.propTypes={navigationAction:o.node,primaryAction:o.node,secondaryAction:o.node,subtitle:o.oneOfType([o.string,o.node]),title:o.string.isRequired}},96709:function($,L,t){t.d(L,{A:function(){return F}});var e=t(32735),E=t(60216),o=t(83292),C=t(72850);const n=(0,o.default)(C.x)`
24
+ display: grid;
25
+ grid-template-columns: ${({hasSideNav:R})=>R?"auto 1fr":"1fr"};
26
+ `,B=(0,o.default)(C.x)`
27
+ overflow-x: hidden;
28
+ `,F=({sideNav:R,children:D})=>e.createElement(n,{hasSideNav:Boolean(R)},R,e.createElement(B,{paddingBottom:10},D));F.defaultProps={sideNav:void 0},F.propTypes={children:E.node.isRequired,sideNav:E.node}},27649:function($,L,t){t.d(L,{o:function(){return n}});var e=t(32735),E=t(60216),o=t(83292);const C=o.default.main`
29
+ // To prevent global outline on focus visible to force an outline when Main is focused
30
+ &:focus-visible {
31
+ outline: none;
32
+ }
33
+ `,n=({labelledBy:B,...F})=>{const R=B||"main-content-title";return e.createElement(C,{"aria-labelledby":R,id:"main-content",tabIndex:-1,...F})};n.defaultProps={labelledBy:void 0},n.propTypes={labelledBy:E.string}},29439:function($,L,t){t.d(L,{Z:function(){return E}});var e=t(74512);function E(o){return(0,e.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...o,children:(0,e.jsx)("path",{d:"M24 13.3a.2.2 0 01-.2.2H5.74l8.239 8.239a.2.2 0 010 .282L12.14 23.86a.2.2 0 01-.282 0L.14 12.14a.2.2 0 010-.282L11.86.14a.2.2 0 01.282 0L13.98 1.98a.2.2 0 010 .282L5.74 10.5H23.8c.11 0 .2.09.2.2v2.6z",fill:"#212134"})})}},45112:function($,L,t){t.d(L,{Z:function(){return E}});var e=t(74512);function E(o){return(0,e.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...o,children:(0,e.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.68 9.192c-.6.276-2.114 1.18-2.306 1.303a.792.792 0 00-.374.68v1.65a.797.797 0 00.384.687c.254.16 1.73 1.042 2.306 1.303l.744 1.8c-.24.634-.67 2.333-.72 2.554a.797.797 0 00.216.744l1.167 1.166a.801.801 0 00.744.216l.03-.008c.36-.092 1.946-.498 2.523-.712l1.8.744c.276.6 1.181 2.115 1.304 2.307a.805.805 0 00.679.374h1.649a.797.797 0 00.686-.384c.16-.254 1.042-1.73 1.303-2.306l1.8-.744c.634.24 2.333.67 2.554.72a.797.797 0 00.744-.216l1.166-1.167a.803.803 0 00.216-.744l-.008-.03c-.092-.36-.498-1.946-.712-2.523l.744-1.8c.6-.276 2.115-1.181 2.307-1.304a.804.804 0 00.374-.679v-1.649a.796.796 0 00-.382-.679c-.254-.16-1.73-1.041-2.306-1.303l-.744-1.8c.24-.634.67-2.333.72-2.554a.796.796 0 00-.216-.744l-1.166-1.173a.802.802 0 00-.744-.216l-.03.008c-.361.092-1.947.498-2.524.712l-1.8-.744c-.276-.6-1.18-2.115-1.303-2.307a.803.803 0 00-.68-.374h-1.65a.797.797 0 00-.68.382c-.16.254-1.041 1.73-1.303 2.306l-1.8.744c-.634-.24-2.333-.67-2.554-.72a.797.797 0 00-.744.216L2.921 4.094a.802.802 0 00-.216.744l.008.03c.092.361.498 1.947.712 2.524l-.744 1.8zM12 17a5 5 0 100-10 5 5 0 000 10z",fill:"#212134"})})}}}]);
@@ -0,0 +1,8 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9460],{84764:function(T,v,t){t.r(v),t.d(v,{default:function(){return G}});var e=t(32735),E=t(84968),o=t(5636),c=t(83281),n=t(88425),g=t(94638),b=t(27649),p=t(28356),O=t(17e3),R=t(41415),y=t(72850),S=t(27677),f=t(70218),a=t(84967),l=t(49372),r=t(15335),s=t(5803),d=t(66456),h=t(88369),i=t(59677),P=[{intlLabel:{id:(0,i.OB)("EditForm.inputToggle.label.email"),defaultMessage:"One account per email address"},description:{id:(0,i.OB)("EditForm.inputToggle.description.email"),defaultMessage:"Disallow the user to create multiple accounts using the same email address with different authentication providers."},name:"unique_email",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,i.OB)("EditForm.inputToggle.label.sign-up"),defaultMessage:"Enable sign-ups"},description:{id:(0,i.OB)("EditForm.inputToggle.description.sign-up"),defaultMessage:"When disabled (OFF), the registration process is forbidden. No one can subscribe anymore no matter the used provider."},name:"allow_register",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,i.OB)("EditForm.inputToggle.label.email-reset-password"),defaultMessage:"Reset password page"},description:{id:(0,i.OB)("EditForm.inputToggle.description.email-reset-password"),defaultMessage:"URL of your application's reset password page."},placeholder:{id:(0,i.OB)("EditForm.inputToggle.placeholder.email-reset-password"),defaultMessage:"ex: https://youtfrontend.com/reset-password"},name:"email_reset_password",type:"text",size:{col:6,xs:12}},{intlLabel:{id:(0,i.OB)("EditForm.inputToggle.label.email-confirmation"),defaultMessage:"Enable email confirmation"},description:{id:(0,i.OB)("EditForm.inputToggle.description.email-confirmation"),defaultMessage:"When enabled (ON), new registered users receive a confirmation email."},name:"email_confirmation",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,i.OB)("EditForm.inputToggle.label.email-confirmation-redirection"),defaultMessage:"Redirection url"},description:{id:(0,i.OB)("EditForm.inputToggle.description.email-confirmation-redirection"),defaultMessage:"After you confirmed your email, choose where you will be redirected."},placeholder:{id:(0,i.OB)("EditForm.inputToggle.placeholder.email-confirmation-redirection"),defaultMessage:"ex: https://youtfrontend.com/email-confirmation"},name:"email_confirmation_redirection",type:"text",size:{col:6,xs:12}}],B=t(5173);const F=new RegExp("(^$)|((.+:\\/\\/.*)(d*)\\/?(.*))");var Z=B.Ry().shape({email_confirmation_redirection:B.nK().when("email_confirmation",{is:!0,then:B.Z_().matches(F).required(),otherwise:B.Z_().nullable()}),email_reset_password:B.Z_(n.translatedErrors.string).matches(F,n.translatedErrors.regex).nullable()});const N=async()=>{const{get:u}=(0,n.getFetchClient)(),{data:A}=await u((0,i.Gc)("advanced"));return A},U=u=>{const{put:A}=(0,n.getFetchClient)();return A((0,i.Gc)("advanced"),u)},W=()=>e.createElement(n.CheckPagePermissions,{permissions:h.Z.readAdvancedSettings},e.createElement(H,null)),H=()=>{const{formatMessage:u}=(0,o.useIntl)(),A=(0,n.useNotification)(),{lockApp:K,unlockApp:D}=(0,n.useOverlayBlocker)(),{notifyStatus:j}=(0,g.G)(),$=(0,E.useQueryClient)();(0,n.useFocusWhenNavigate)();const Q=(0,e.useMemo)(()=>({update:h.Z.updateAdvancedSettings}),[]),{isLoading:V,allowedActions:{canUpdate:k}}=(0,n.useRBAC)(Q),{status:X,data:I}=(0,E.useQuery)("advanced",()=>N(),{onSuccess(){j(u({id:(0,i.OB)("Form.advancedSettings.data.loaded"),defaultMessage:"Advanced settings data has been loaded"}))},onError(){A({type:"warning",message:{id:(0,i.OB)("notification.error"),defaultMessage:"An error occured"}})}}),Y=V||X!=="success",w=(0,E.useMutation)(M=>U(M),{async onSuccess(){await $.invalidateQueries("advanced"),A({type:"success",message:{id:(0,i.OB)("notification.success.saved"),defaultMessage:"Saved"}}),D()},onError(){A({type:"warning",message:{id:(0,i.OB)("notification.error"),defaultMessage:"An error occured"}}),D()},refetchActive:!0}),{isLoading:J}=w,q=async M=>{K();const L=M.email_confirmation?M.email_confirmation_redirection:"";await w.mutateAsync({...M,email_confirmation_redirection:L})};return Y?e.createElement(b.o,{"aria-busy":"true"},e.createElement(n.SettingsPageTitle,{name:u({id:(0,i.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(p.T,{title:u({id:(0,i.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(O.D,null,e.createElement(n.LoadingIndicatorPage,null))):e.createElement(b.o,{"aria-busy":J},e.createElement(n.SettingsPageTitle,{name:u({id:(0,i.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(c.Formik,{onSubmit:q,initialValues:I.settings,validateOnChange:!1,validationSchema:Z,enableReinitialize:!0},({errors:M,values:L,handleChange:z,isSubmitting:_})=>e.createElement(n.Form,null,e.createElement(p.T,{title:u({id:(0,i.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"}),primaryAction:e.createElement(R.z,{loading:_,type:"submit",disabled:!k,startIcon:e.createElement(d.Z,null),size:"S"},u({id:"global.save",defaultMessage:"Save"}))}),e.createElement(O.D,null,e.createElement(y.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(S.K,{spacing:4},e.createElement(l.Z,{variant:"delta",as:"h2"},u({id:"global.settings",defaultMessage:"Settings"})),e.createElement(r.r,{gap:6},e.createElement(s.P,{col:6,s:12},e.createElement(f.P,{label:u({id:(0,i.OB)("EditForm.inputSelect.label.role"),defaultMessage:"Default role for authenticated users"}),value:L.default_role,hint:u({id:(0,i.OB)("EditForm.inputSelect.description.role"),defaultMessage:"It will attach the new authenticated user to the selected role."}),onChange:m=>z({target:{name:"default_role",value:m}})},I.roles.map(m=>e.createElement(a.W,{key:m.type,value:m.type},m.name)))),P.map(m=>{let C=L[m.name];return C||(C=m.type==="bool"?!1:""),e.createElement(s.P,{key:m.name,...m.size},e.createElement(n.GenericInput,{...m,value:C,error:M[m.name],disabled:m.name==="email_confirmation_redirection"&&L.email_confirmation===!1,onChange:z}))}))))))))};var G=W},59677:function(T,v,t){t.d(v,{YX:function(){return o},Gc:function(){return g},OB:function(){return b.Z}});var e=t(92891),o=p=>Object.keys(p).reduce((O,R)=>{const y=p[R].controllers,S=Object.keys(y).reduce((f,a)=>((0,e.isEmpty)(y[a])||(f[a]=y[a]),f),{});return(0,e.isEmpty)(S)||(O[R]={controllers:S}),O},{}),c=t(90201),g=p=>`/${c.Z}/${p}`,b=t(82069)},17e3:function(T,v,t){t.d(v,{D:function(){return c}});var e=t(32735),E=t(60216),o=t(72850);const c=({children:n})=>e.createElement(o.x,{paddingLeft:10,paddingRight:10},n);c.propTypes={children:E.node.isRequired}},28356:function(T,v,t){t.d(v,{T:function(){return y}});var e=t(32735),E=t(83292),o=t(60216),c=t(49372),n=t(72850),g=t(87933);const b=a=>{const l=(0,e.useRef)(null),[r,s]=(0,e.useState)(!0),d=([h])=>{s(h.isIntersecting)};return(0,e.useEffect)(()=>{const h=l.current,i=new IntersectionObserver(d,a);return h&&i.observe(l.current),()=>{h&&i.disconnect()}},[l,a]),[l,r]};var p=t(81002);const O=(a,l)=>{const r=(0,p.useCallbackRef)(l);(0,e.useLayoutEffect)(()=>{const s=new ResizeObserver(r);return Array.isArray(a)?a.forEach(d=>{d.current&&s.observe(d.current)}):a.current&&s.observe(a.current),()=>{s.disconnect()}},[a,r])},R=()=>{const a=(0,e.useRef)(null),[l,r]=(0,e.useState)(null),[s,d]=b({root:null,rootMargin:"0px",threshold:0});return O(s,()=>{s.current&&r(s.current.getBoundingClientRect())}),(0,e.useEffect)(()=>{a.current&&r(a.current.getBoundingClientRect())},[a]),{containerRef:s,isVisible:d,baseHeaderLayoutRef:a,headerSize:l}},y=a=>{const{containerRef:l,isVisible:r,baseHeaderLayoutRef:s,headerSize:d}=R();return e.createElement(e.Fragment,null,e.createElement("div",{style:{height:d?.height},ref:l},r&&e.createElement(f,{ref:s,...a})),!r&&e.createElement(f,{...a,sticky:!0,width:d?.width}))};y.displayName="HeaderLayout";const S=(0,E.default)(n.x)`
2
+ width: ${a=>a.width}px;
3
+ `,f=e.forwardRef(({navigationAction:a,primaryAction:l,secondaryAction:r,subtitle:s,title:d,sticky:h,width:i,...x},P)=>{const B=typeof s=="string";return h?e.createElement(S,{paddingLeft:6,paddingRight:6,paddingTop:3,paddingBottom:3,position:"fixed",top:0,right:0,background:"neutral0",shadow:"tableShadow",width:i,zIndex:4,"data-strapi-header-sticky":!0},e.createElement(g.k,{justifyContent:"space-between"},e.createElement(g.k,null,a&&e.createElement(n.x,{paddingRight:3},a),e.createElement(n.x,null,e.createElement(c.Z,{variant:"beta",as:"h1",...x},d),B?e.createElement(c.Z,{variant:"pi",textColor:"neutral600"},s):s),r?e.createElement(n.x,{paddingLeft:4},r):null),e.createElement(g.k,null,l?e.createElement(n.x,{paddingLeft:2},l):void 0))):e.createElement(n.x,{ref:P,paddingLeft:10,paddingRight:10,paddingBottom:8,paddingTop:a?6:8,background:"neutral100","data-strapi-header":!0},a?e.createElement(n.x,{paddingBottom:2},a):null,e.createElement(g.k,{justifyContent:"space-between"},e.createElement(g.k,null,e.createElement(c.Z,{as:"h1",variant:"alpha",...x},d),r?e.createElement(n.x,{paddingLeft:4},r):null),l),B?e.createElement(c.Z,{variant:"epsilon",textColor:"neutral600",as:"p"},s):s)});f.displayName="BaseHeaderLayout",f.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0,sticky:!1,width:void 0},f.propTypes={navigationAction:o.node,primaryAction:o.node,secondaryAction:o.node,sticky:o.bool,subtitle:o.oneOfType([o.string,o.node]),title:o.string.isRequired,width:o.number},y.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0},y.propTypes={navigationAction:o.node,primaryAction:o.node,secondaryAction:o.node,subtitle:o.oneOfType([o.string,o.node]),title:o.string.isRequired}},27649:function(T,v,t){t.d(v,{o:function(){return n}});var e=t(32735),E=t(60216),o=t(83292);const c=o.default.main`
4
+ // To prevent global outline on focus visible to force an outline when Main is focused
5
+ &:focus-visible {
6
+ outline: none;
7
+ }
8
+ `,n=({labelledBy:g,...b})=>{const p=g||"main-content-title";return e.createElement(c,{"aria-labelledby":p,id:"main-content",tabIndex:-1,...b})};n.defaultProps={labelledBy:void 0},n.propTypes={labelledBy:E.string}}}]);
@@ -0,0 +1,23 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8418],{218:function(D,E,t){t.r(E),t.d(E,{default:function(){return ie}});var e=t(32735),g=t(84968),s=t(5636),n=t(88425),r=t(94638),p=t(27649),O=t(28356),f=t(17e3),M=t(88369),l=t(59677);const d=async()=>{const{get:m}=(0,n.getFetchClient)(),{data:h}=await m((0,l.Gc)("email-templates"));return h},P=m=>{const{put:h}=(0,n.getFetchClient)();return h((0,l.Gc)("email-templates"),m)};var v=t(60216),a=t.n(v),u=t(94745),c=t(76330),i=t(29005),o=t(66735),R=t(3594),L=t(3685),I=t(49372),F=t(50563),U=t(99140),W=t(68625),Q=t(44647),J=t(66456);const H=({canUpdate:m,onEditClick:h})=>{const{formatMessage:y}=(0,s.useIntl)();return e.createElement(u.i,{colCount:3,rowCount:3},e.createElement(c.h,null,e.createElement(i.Tr,null,e.createElement(o.Th,{width:"1%"},e.createElement(L.T,null,y({id:(0,l.OB)("Email.template.table.icon.label"),defaultMessage:"icon"}))),e.createElement(o.Th,null,e.createElement(I.Z,{variant:"sigma",textColor:"neutral600"},y({id:(0,l.OB)("Email.template.table.name.label"),defaultMessage:"name"}))),e.createElement(o.Th,{width:"1%"},e.createElement(L.T,null,y({id:(0,l.OB)("Email.template.table.action.label"),defaultMessage:"action"}))))),e.createElement(R.p,null,e.createElement(i.Tr,{...(0,n.onRowClick)({fn:()=>h("reset_password")})},e.createElement(o.Td,null,e.createElement(U.J,null,e.createElement(Q.Z,{"aria-label":y({id:"global.reset-password",defaultMessage:"Reset password"})}))),e.createElement(o.Td,null,e.createElement(I.Z,null,y({id:"global.reset-password",defaultMessage:"Reset password"}))),e.createElement(o.Td,{...n.stopPropagation},e.createElement(F.h,{onClick:()=>h("reset_password"),label:y({id:(0,l.OB)("Email.template.form.edit.label"),defaultMessage:"Edit a template"}),noBorder:!0,icon:m&&e.createElement(W.Z,null)}))),e.createElement(i.Tr,{...(0,n.onRowClick)({fn:()=>h("email_confirmation")})},e.createElement(o.Td,null,e.createElement(U.J,null,e.createElement(J.Z,{"aria-label":y({id:(0,l.OB)("Email.template.email_confirmation"),defaultMessage:"Email address confirmation"})}))),e.createElement(o.Td,null,e.createElement(I.Z,null,y({id:(0,l.OB)("Email.template.email_confirmation"),defaultMessage:"Email address confirmation"}))),e.createElement(o.Td,{...n.stopPropagation},e.createElement(F.h,{onClick:()=>h("email_confirmation"),label:y({id:(0,l.OB)("Email.template.form.edit.label"),defaultMessage:"Edit a template"}),noBorder:!0,icon:m&&e.createElement(W.Z,null)})))))};H.propTypes={canUpdate:a().bool.isRequired,onEditClick:a().func.isRequired};var X=H,Y=t(83281),w=t(85025),k=t(55225),q=t(31600),_=t(11406),ee=t(15335),j=t(5803),K=t(41415),Z=t(11299),te=t(10508),C=t(5173),ae=C.Ry().shape({options:C.Ry().shape({from:C.Ry().shape({name:C.Z_().required(n.translatedErrors.required),email:C.Z_().email(n.translatedErrors.email).required(n.translatedErrors.required)}).required(),response_email:C.Z_().email(n.translatedErrors.email),object:C.Z_().required(n.translatedErrors.required),message:C.Z_().required(n.translatedErrors.required)}).required(n.translatedErrors.required)});const N=({template:m,onToggle:h,onSubmit:y})=>{const{formatMessage:T}=(0,s.useIntl)();return e.createElement(w.P,{onClose:h,labelledBy:`${T({id:(0,l.OB)("PopUpForm.header.edit.email-templates"),defaultMessage:"Edit email template"})}, ${T({id:(0,l.OB)(m.display),defaultMessage:m.display})}`},e.createElement(k.x,null,e.createElement(Z.O,{label:`${T({id:(0,l.OB)("PopUpForm.header.edit.email-templates"),defaultMessage:"Edit email template"})}, ${T({id:(0,l.OB)(m.display),defaultMessage:m.display})}`},e.createElement(Z.$,null,T({id:(0,l.OB)("PopUpForm.header.edit.email-templates"),defaultMessage:"Edit email template"})),e.createElement(Z.$,null,T({id:(0,l.OB)(m.display),defaultMessage:m.display})))),e.createElement(Y.Formik,{onSubmit:y,initialValues:m,validateOnChange:!1,validationSchema:ae,enableReinitialize:!0},({errors:B,values:x,handleChange:b,isSubmitting:S})=>e.createElement(n.Form,null,e.createElement(q.f,null,e.createElement(ee.r,{gap:5},e.createElement(j.P,{col:6,s:12},e.createElement(n.GenericInput,{intlLabel:{id:(0,l.OB)("PopUpForm.Email.options.from.name.label"),defaultMessage:"Shipper name"},name:"options.from.name",onChange:b,value:x.options.from.name,error:B?.options?.from?.name,type:"text"})),e.createElement(j.P,{col:6,s:12},e.createElement(n.GenericInput,{intlLabel:{id:(0,l.OB)("PopUpForm.Email.options.from.email.label"),defaultMessage:"Shipper email"},name:"options.from.email",onChange:b,value:x.options.from.email,error:B?.options?.from?.email,type:"text"})),e.createElement(j.P,{col:6,s:12},e.createElement(n.GenericInput,{intlLabel:{id:(0,l.OB)("PopUpForm.Email.options.response_email.label"),defaultMessage:"Response email"},name:"options.response_email",onChange:b,value:x.options.response_email,error:B?.options?.response_email,type:"text"})),e.createElement(j.P,{col:6,s:12},e.createElement(n.GenericInput,{intlLabel:{id:(0,l.OB)("PopUpForm.Email.options.object.label"),defaultMessage:"Subject"},name:"options.object",onChange:b,value:x.options.object,error:B?.options?.object,type:"text"})),e.createElement(j.P,{col:12,s:12},e.createElement(te.g,{label:T({id:(0,l.OB)("PopUpForm.Email.options.message.label"),defaultMessage:"Message"}),name:"options.message",onChange:b,value:x.options.message,error:B?.options?.message&&T({id:B.options.message,defaultMessage:B.options.message})})))),e.createElement(_.m,{startActions:e.createElement(K.z,{onClick:h,variant:"tertiary"},"Cancel"),endActions:e.createElement(K.z,{loading:S,type:"submit"},"Finish")}))))};N.propTypes={template:a().shape({display:a().string,icon:a().string,options:a().shape({from:a().shape({name:a().string,email:a().string}),message:a().string,object:a().string,response_email:a().string})}).isRequired,onSubmit:a().func.isRequired,onToggle:a().func.isRequired};var ne=N;const le=()=>e.createElement(n.CheckPagePermissions,{permissions:M.Z.readEmailTemplates},e.createElement(se,null)),se=()=>{const{formatMessage:m}=(0,s.useIntl)(),{trackUsage:h}=(0,n.useTracking)(),{notifyStatus:y}=(0,r.G)(),T=(0,n.useNotification)(),{lockApp:B,unlockApp:x}=(0,n.useOverlayBlocker)(),b=(0,e.useRef)(h),S=(0,g.useQueryClient)();(0,n.useFocusWhenNavigate)();const[oe,re]=(0,e.useState)(!1),[z,de]=(0,e.useState)(null),me=(0,e.useMemo)(()=>({update:M.Z.updateEmailTemplates}),[]),{isLoading:ce,allowedActions:{canUpdate:ue}}=(0,n.useRBAC)(me),{status:pe,data:G}=(0,g.useQuery)("email-templates",()=>d(),{onSuccess(){y(m({id:(0,l.OB)("Email.template.data.loaded"),defaultMessage:"Email templates has been loaded"}))},onError(){T({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),Ee=ce||pe!=="success",$=()=>{re(A=>!A)},ge=A=>{de(A),$()},V=(0,g.useMutation)(A=>P({"email-templates":A}),{async onSuccess(){await S.invalidateQueries("email-templates"),T({type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"}}),b.current("didEditEmailTemplates"),x(),$()},onError(){T({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}}),x()},refetchActive:!0}),{isLoading:fe}=V,ve=A=>{B(),b.current("willEditEmailTemplates");const he={...G,[z]:A};V.mutate(he)};return Ee?e.createElement(p.o,{"aria-busy":"true"},e.createElement(n.SettingsPageTitle,{name:m({id:(0,l.OB)("HeaderNav.link.emailTemplates"),defaultMessage:"Email templates"})}),e.createElement(O.T,{title:m({id:(0,l.OB)("HeaderNav.link.emailTemplates"),defaultMessage:"Email templates"})}),e.createElement(f.D,null,e.createElement(n.LoadingIndicatorPage,null))):e.createElement(p.o,{"aria-busy":fe},e.createElement(n.SettingsPageTitle,{name:m({id:(0,l.OB)("HeaderNav.link.emailTemplates"),defaultMessage:"Email templates"})}),e.createElement(O.T,{title:m({id:(0,l.OB)("HeaderNav.link.emailTemplates"),defaultMessage:"Email templates"})}),e.createElement(f.D,null,e.createElement(X,{onEditClick:ge,canUpdate:ue}),oe&&e.createElement(ne,{template:G[z],onToggle:$,onSubmit:ve})))};var ie=le},59677:function(D,E,t){t.d(E,{YX:function(){return s},Gc:function(){return p},OB:function(){return O.Z}});var e=t(92891),s=f=>Object.keys(f).reduce((M,l)=>{const d=f[l].controllers,P=Object.keys(d).reduce((v,a)=>((0,e.isEmpty)(d[a])||(v[a]=d[a]),v),{});return(0,e.isEmpty)(P)||(M[l]={controllers:P}),M},{}),n=t(90201),p=f=>`/${n.Z}/${f}`,O=t(82069)},11299:function(D,E,t){t.d(E,{$:function(){return M},O:function(){return l}});var e=t(74512),g=t(83292),s=t(57269),n=t(49372),r=t(72850),p=t(87933),O=t(3685);const f=(0,g.default)(p.k)`
2
+ svg {
3
+ height: ${10/16}rem;
4
+ width: ${10/16}rem;
5
+ path {
6
+ fill: ${({theme:d})=>d.colors.neutral500};
7
+ }
8
+ }
9
+ :last-of-type ${r.x} {
10
+ display: none;
11
+ }
12
+ :last-of-type ${n.Z} {
13
+ color: ${({theme:d})=>d.colors.neutral800};
14
+ font-weight: ${({theme:d})=>d.fontWeights.bold};
15
+ }
16
+ `,M=({children:d})=>(0,e.jsxs)(f,{inline:!0,as:"li",children:[(0,e.jsx)(n.Z,{variant:"pi",textColor:"neutral600",children:d}),(0,e.jsx)(r.x,{"aria-hidden":!0,paddingLeft:3,paddingRight:3,children:(0,e.jsx)(s.ChevronRight,{})})]});M.displayName="Crumb";const l=({children:d,label:P,...v})=>(0,e.jsxs)(p.k,{...v,children:[(0,e.jsx)(O.T,{children:P}),(0,e.jsx)("ol",{"aria-hidden":!0,children:d})]});l.displayName="Breadcrumbs"},17e3:function(D,E,t){t.d(E,{D:function(){return n}});var e=t(32735),g=t(60216),s=t(72850);const n=({children:r})=>e.createElement(s.x,{paddingLeft:10,paddingRight:10},r);n.propTypes={children:g.node.isRequired}},28356:function(D,E,t){t.d(E,{T:function(){return d}});var e=t(32735),g=t(83292),s=t(60216),n=t(49372),r=t(72850),p=t(87933);const O=a=>{const u=(0,e.useRef)(null),[c,i]=(0,e.useState)(!0),o=([R])=>{i(R.isIntersecting)};return(0,e.useEffect)(()=>{const R=u.current,L=new IntersectionObserver(o,a);return R&&L.observe(u.current),()=>{R&&L.disconnect()}},[u,a]),[u,c]};var f=t(81002);const M=(a,u)=>{const c=(0,f.useCallbackRef)(u);(0,e.useLayoutEffect)(()=>{const i=new ResizeObserver(c);return Array.isArray(a)?a.forEach(o=>{o.current&&i.observe(o.current)}):a.current&&i.observe(a.current),()=>{i.disconnect()}},[a,c])},l=()=>{const a=(0,e.useRef)(null),[u,c]=(0,e.useState)(null),[i,o]=O({root:null,rootMargin:"0px",threshold:0});return M(i,()=>{i.current&&c(i.current.getBoundingClientRect())}),(0,e.useEffect)(()=>{a.current&&c(a.current.getBoundingClientRect())},[a]),{containerRef:i,isVisible:o,baseHeaderLayoutRef:a,headerSize:u}},d=a=>{const{containerRef:u,isVisible:c,baseHeaderLayoutRef:i,headerSize:o}=l();return e.createElement(e.Fragment,null,e.createElement("div",{style:{height:o?.height},ref:u},c&&e.createElement(v,{ref:i,...a})),!c&&e.createElement(v,{...a,sticky:!0,width:o?.width}))};d.displayName="HeaderLayout";const P=(0,g.default)(r.x)`
17
+ width: ${a=>a.width}px;
18
+ `,v=e.forwardRef(({navigationAction:a,primaryAction:u,secondaryAction:c,subtitle:i,title:o,sticky:R,width:L,...I},F)=>{const U=typeof i=="string";return R?e.createElement(P,{paddingLeft:6,paddingRight:6,paddingTop:3,paddingBottom:3,position:"fixed",top:0,right:0,background:"neutral0",shadow:"tableShadow",width:L,zIndex:4,"data-strapi-header-sticky":!0},e.createElement(p.k,{justifyContent:"space-between"},e.createElement(p.k,null,a&&e.createElement(r.x,{paddingRight:3},a),e.createElement(r.x,null,e.createElement(n.Z,{variant:"beta",as:"h1",...I},o),U?e.createElement(n.Z,{variant:"pi",textColor:"neutral600"},i):i),c?e.createElement(r.x,{paddingLeft:4},c):null),e.createElement(p.k,null,u?e.createElement(r.x,{paddingLeft:2},u):void 0))):e.createElement(r.x,{ref:F,paddingLeft:10,paddingRight:10,paddingBottom:8,paddingTop:a?6:8,background:"neutral100","data-strapi-header":!0},a?e.createElement(r.x,{paddingBottom:2},a):null,e.createElement(p.k,{justifyContent:"space-between"},e.createElement(p.k,null,e.createElement(n.Z,{as:"h1",variant:"alpha",...I},o),c?e.createElement(r.x,{paddingLeft:4},c):null),u),U?e.createElement(n.Z,{variant:"epsilon",textColor:"neutral600",as:"p"},i):i)});v.displayName="BaseHeaderLayout",v.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0,sticky:!1,width:void 0},v.propTypes={navigationAction:s.node,primaryAction:s.node,secondaryAction:s.node,sticky:s.bool,subtitle:s.oneOfType([s.string,s.node]),title:s.string.isRequired,width:s.number},d.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0},d.propTypes={navigationAction:s.node,primaryAction:s.node,secondaryAction:s.node,subtitle:s.oneOfType([s.string,s.node]),title:s.string.isRequired}},27649:function(D,E,t){t.d(E,{o:function(){return r}});var e=t(32735),g=t(60216),s=t(83292);const n=s.default.main`
19
+ // To prevent global outline on focus visible to force an outline when Main is focused
20
+ &:focus-visible {
21
+ outline: none;
22
+ }
23
+ `,r=({labelledBy:p,...O})=>{const f=p||"main-content-title";return e.createElement(n,{"aria-labelledby":f,id:"main-content",tabIndex:-1,...O})};r.defaultProps={labelledBy:void 0},r.propTypes={labelledBy:g.string}},44647:function(D,E,t){t.d(E,{Z:function(){return g}});var e=t(74512);function g(s){return(0,e.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s,children:(0,e.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.681 2.804A9.64 9.64 0 0011.818 2C6.398 2 2 6.48 2 12c0 5.521 4.397 10 9.818 10 2.03 0 4.011-.641 5.67-1.835a9.987 9.987 0 003.589-4.831 1.117 1.117 0 00-.664-1.418 1.086 1.086 0 00-1.393.676 7.769 7.769 0 01-2.792 3.758 7.546 7.546 0 01-4.41 1.428V4.222h.002a7.492 7.492 0 013.003.625 7.61 7.61 0 012.5 1.762l.464.551-2.986 3.042a.186.186 0 00.129.316H22V3.317a.188.188 0 00-.112-.172.179.179 0 00-.199.04l-2.355 2.4-.394-.468-.02-.02a9.791 9.791 0 00-3.239-2.293zm-3.863 1.418V2v2.222zm0 0v15.556c-4.216 0-7.636-3.484-7.636-7.778s3.42-7.777 7.636-7.778z",fill:"#212134"})})}}}]);
@@ -0,0 +1,99 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2282],{51509:function(k,P,t){t.r(P),t.d(P,{ProvidersPage:function(){return ye},default:function(){return Ie}});var e=t(32735),c=t(5636),a=t(88425),u=t(23973),i=t.n(u),E=t(23940),M=t.n(E),f=t(96709),x=t(28356),B=t(17e3),s=t(27649),A=t(94638),h=t(94745),n=t(76330),v=t(29005),l=t(66735),d=t(3594),m=t(49372),U=t(3685),z=t(50563),H=t(68625),D=t(84968),o=t(5173),y=t(59677);const V={id:(0,y.OB)("PopUpForm.Providers.redirectURL.front-end.label"),defaultMessage:"The redirect URL to your front-end app"},g={id:"http://www.client-app.com",defaultMessage:"http://www.client-app.com"},j={id:(0,y.OB)("PopUpForm.Providers.enabled.description"),defaultMessage:"If disabled, users won't be able to use this provider."},Z={id:(0,y.OB)("PopUpForm.Providers.enabled.label"),defaultMessage:"Enable"},Y={id:(0,y.OB)("PopUpForm.Providers.key.label"),defaultMessage:"Client ID"},T={id:(0,y.OB)("PopUpForm.Providers.redirectURL.label"),defaultMessage:"The redirect URL to add in your {provider} application configurations"},R={id:(0,y.OB)("PopUpForm.Providers.key.placeholder"),defaultMessage:"TEXT"},w={id:(0,y.OB)("PopUpForm.Providers.secret.label"),defaultMessage:"Client Secret"};var G={email:{form:[[{intlLabel:Z,name:"enabled",type:"bool",description:j,size:6}]],schema:o.Ry().shape({enabled:o.Xg().required(a.translatedErrors.required)})},providers:{form:[[{intlLabel:Z,name:"enabled",type:"bool",description:j,size:6,validations:{required:!0}}],[{intlLabel:Y,name:"key",type:"text",placeholder:R,size:12,validations:{required:!0}}],[{intlLabel:w,name:"secret",type:"text",placeholder:R,size:12,validations:{required:!0}}],[{intlLabel:V,placeholder:g,name:"callback",type:"text",size:12,validations:{required:!0}}],[{intlLabel:T,name:"noName",type:"text",validations:{},size:12,disabled:!0}]],schema:o.Ry().shape({enabled:o.Xg().required(a.translatedErrors.required),key:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()}),secret:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()}),callback:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()})})},providersWithSubdomain:{form:[[{intlLabel:Z,name:"enabled",type:"bool",description:j,size:6,validations:{required:!0}}],[{intlLabel:Y,name:"key",type:"text",placeholder:R,size:12,validations:{required:!0}}],[{intlLabel:w,name:"secret",type:"text",placeholder:R,size:12,validations:{required:!0}}],[{intlLabel:{id:(0,y.OB)({id:"PopUpForm.Providers.jwksurl.label"}),defaultMessage:"JWKS URL"},name:"jwksurl",type:"text",placeholder:R,size:12,validations:{required:!1}}],[{intlLabel:{id:(0,y.OB)("PopUpForm.Providers.subdomain.label"),defaultMessage:"Host URI (Subdomain)"},name:"subdomain",type:"text",placeholder:{id:(0,y.OB)("PopUpForm.Providers.subdomain.placeholder"),defaultMessage:"my.subdomain.com"},size:12,validations:{required:!0}}],[{intlLabel:V,placeholder:g,name:"callback",type:"text",size:12,validations:{required:!0}}],[{intlLabel:T,name:"noName",type:"text",validations:{},size:12,disabled:!0}]],schema:o.Ry().shape({enabled:o.Xg().required(a.translatedErrors.required),key:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()}),secret:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()}),subdomain:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()}),callback:o.Z_().when("enabled",{is:!0,then:o.Z_().required(a.translatedErrors.required),otherwise:o.Z_()})})}};const q=async p=>{try{const{get:O}=(0,a.getFetchClient)(),{data:I}=await O((0,y.Gc)("providers"));return I}catch{throw p({type:"warning",message:{id:"notification.error"}}),new Error("error")}},_=p=>{const{put:O}=(0,a.getFetchClient)();return O((0,y.Gc)("providers"),p)};var X=t(92891),ee=p=>(0,X.sortBy)(Object.keys(p).reduce((O,I)=>{const{icon:S,enabled:C,subdomain:K}=p[I],F=S==="envelope"?["fas","envelope"]:["fab",S];return K!==void 0?O.push({name:I,icon:F,enabled:C,subdomain:K}):O.push({name:I,icon:F,enabled:C}),O},[]),"name"),ae=t(88369),se=t(41415),me=t(27677),de=t(11299),ne=t(15335),re=t(5803),Me=t(85025),xe=t(55225),Re=t(31600),Te=t(11406),Oe=t(60216),r=t.n(Oe),Le=t(83281),Ce=t(9139),Be=t(10369);const pe=({description:p,disabled:O,intlLabel:I,error:S,name:C,onChange:K,placeholder:F,providerToEditName:J,type:N,value:b})=>{const{formatMessage:W}=(0,c.useIntl)(),Q=C==="noName"?`${strapi.backendURL}/api/connect/${J}/callback`:b,te=W({id:I.id,defaultMessage:I.defaultMessage},{provider:J,...I.values}),$=p?W({id:p.id,defaultMessage:p.defaultMessage},{provider:J,...p.values}):"";if(N==="bool")return e.createElement(Ce.s,{"aria-label":C,checked:b,disabled:O,hint:$,label:te,name:C,offLabel:W({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:W({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:oe=>{K({target:{name:C,value:oe.target.checked}})}});const ge=F?W({id:F.id,defaultMessage:F.defaultMessage},{...F.values}):"",fe=S?W({id:S,defaultMessage:S}):"";return e.createElement(Be.o,{"aria-label":C,disabled:O,error:fe,label:te,name:C,onChange:K,placeholder:ge,type:N,value:Q})};pe.defaultProps={description:null,disabled:!1,error:"",placeholder:null,value:""},pe.propTypes={description:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired,values:r().object}),disabled:r().bool,error:r().string,intlLabel:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired,values:r().object}).isRequired,name:r().string.isRequired,onChange:r().func.isRequired,placeholder:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired,values:r().object}),providerToEditName:r().string.isRequired,type:r().string.isRequired,value:r().oneOfType([r().bool,r().string])};var Ae=pe;const ve=({headerBreadcrumbs:p,initialData:O,isSubmiting:I,layout:S,isOpen:C,onSubmit:K,onToggle:F,providerToEditName:J})=>{const{formatMessage:N}=(0,c.useIntl)();return C?e.createElement(Me.P,{onClose:F,labelledBy:"title"},e.createElement(xe.x,null,e.createElement(de.O,{label:p.join(", ")},p.map(b=>e.createElement(de.$,{key:b},b)))),e.createElement(Le.Formik,{onSubmit:b=>K(b),initialValues:O,validationSchema:S.schema,validateOnChange:!1},({errors:b,handleChange:W,values:Q})=>e.createElement(a.Form,null,e.createElement(Re.f,null,e.createElement(me.K,{spacing:1},e.createElement(ne.r,{gap:5},S.form.map(te=>te.map($=>e.createElement(re.P,{key:$.name,col:$.size,xs:12},e.createElement(Ae,{...$,error:b[$.name],onChange:W,value:Q[$.name],providerToEditName:J}))))))),e.createElement(Te.m,{startActions:e.createElement(se.z,{variant:"tertiary",onClick:F,type:"button"},N({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(se.z,{type:"submit",loading:I},N({id:"global.save",defaultMessage:"Save"}))})))):null};ve.defaultProps={initialData:null,providerToEditName:null},ve.propTypes={headerBreadcrumbs:r().arrayOf(r().string).isRequired,initialData:r().object,layout:r().shape({form:r().arrayOf(r().array),schema:r().object}).isRequired,isOpen:r().bool.isRequired,isSubmiting:r().bool.isRequired,onSubmit:r().func.isRequired,onToggle:r().func.isRequired,providerToEditName:r().string};var De=ve;const ye=()=>{const{formatMessage:p}=(0,c.useIntl)();(0,a.useFocusWhenNavigate)();const{notifyStatus:O}=(0,A.G)(),I=(0,D.useQueryClient)(),{trackUsage:S}=(0,a.useTracking)(),C=(0,e.useRef)(S),[K,F]=(0,e.useState)(!1),[J,N]=(0,e.useState)(!1),[b,W]=(0,e.useState)(null),Q=(0,a.useNotification)(),{lockApp:te,unlockApp:$}=(0,a.useOverlayBlocker)(),ge=(0,e.useMemo)(()=>({update:ae.Z.updateProviders}),[]),{isLoading:fe,allowedActions:{canUpdate:oe}}=(0,a.useRBAC)(ge),{isLoading:Ue,data:ce,isFetching:je}=(0,D.useQuery)("get-providers",()=>q(Q),{onSuccess(){O(p({id:(0,y.OB)("Providers.data.loaded"),defaultMessage:"Providers have been loaded"}))},initialData:{}}),Ze=Ue||je,Fe=(0,D.useMutation)(_,{async onSuccess(){await I.invalidateQueries("get-providers"),Q({type:"info",message:{id:(0,y.OB)("notification.success.submit")}}),C.current("didEditAuthenticationProvider"),N(!1),he(),$()},onError(){Q({type:"warning",message:{id:"notification.error"}}),$(),N(!1)},refetchActive:!1}),ue=(0,e.useMemo)(()=>ee(ce),[ce]),ze=ue.length,be=(0,e.useMemo)(()=>{if(!b)return!1;const L=ue.find(Ee=>Ee.name===b);return i()(L,"subdomain")},[ue,b]),Se=p({id:(0,y.OB)("HeaderNav.link.providers"),defaultMessage:"Providers"}),We=(0,e.useMemo)(()=>b==="email"?G.email:be?G.providersWithSubdomain:G.providers,[b,be]),he=()=>{F(L=>!L)},Pe=L=>{oe&&(W(L.name),he())},$e=async L=>{N(!0),te(),C.current("willEditAuthenticationProvider");const Ee={...ce,[b]:L};Fe.mutate({providers:Ee})};return e.createElement(f.A,null,e.createElement(a.SettingsPageTitle,{name:Se}),e.createElement(s.o,null,e.createElement(x.T,{title:p({id:(0,y.OB)("HeaderNav.link.providers"),defaultMessage:"Providers"})}),Ze||fe?e.createElement(a.LoadingIndicatorPage,null):e.createElement(B.D,null,e.createElement(h.i,{colCount:3,rowCount:ze+1},e.createElement(n.h,null,e.createElement(v.Tr,null,e.createElement(l.Th,null,e.createElement(m.Z,{variant:"sigma",textColor:"neutral600"},p({id:"global.name",defaultMessage:"Name"}))),e.createElement(l.Th,null,e.createElement(m.Z,{variant:"sigma",textColor:"neutral600"},p({id:(0,y.OB)("Providers.status"),defaultMessage:"Status"}))),e.createElement(l.Th,null,e.createElement(m.Z,{variant:"sigma"},e.createElement(U.T,null,p({id:"global.settings",defaultMessage:"Settings"})))))),e.createElement(d.p,null,ue.map(L=>e.createElement(v.Tr,{key:L.name,...(0,a.onRowClick)({fn:()=>Pe(L),condition:oe})},e.createElement(l.Td,{width:"45%"},e.createElement(m.Z,{fontWeight:"semiBold",textColor:"neutral800"},L.name)),e.createElement(l.Td,{width:"65%"},e.createElement(m.Z,{textColor:L.enabled?"success600":"danger600","data-testid":`enable-${L.name}`},L.enabled?p({id:"global.enabled",defaultMessage:"Enabled"}):p({id:"global.disabled",defaultMessage:"Disabled"}))),e.createElement(l.Td,{...a.stopPropagation},oe&&e.createElement(z.h,{onClick:()=>Pe(L),noBorder:!0,icon:e.createElement(H.Z,null),label:"Edit"})))))))),e.createElement(De,{initialData:ce[b],isOpen:K,isSubmiting:J,layout:We,headerBreadcrumbs:[p({id:(0,y.OB)("PopUpForm.header.edit.providers"),defaultMessage:"Edit Provider"}),M()(b)],onToggle:he,onSubmit:$e,providerToEditName:b}))};var Ie=()=>e.createElement(a.CheckPagePermissions,{permissions:ae.Z.readProviders},e.createElement(ye,null))},59677:function(k,P,t){t.d(P,{YX:function(){return a},Gc:function(){return E},OB:function(){return M.Z}});var e=t(92891),a=f=>Object.keys(f).reduce((x,B)=>{const s=f[B].controllers,A=Object.keys(s).reduce((h,n)=>((0,e.isEmpty)(s[n])||(h[n]=s[n]),h),{});return(0,e.isEmpty)(A)||(x[B]={controllers:A}),x},{}),u=t(90201),E=f=>`/${u.Z}/${f}`,M=t(82069)},11299:function(k,P,t){t.d(P,{$:function(){return x},O:function(){return B}});var e=t(74512),c=t(83292),a=t(57269),u=t(49372),i=t(72850),E=t(87933),M=t(3685);const f=(0,c.default)(E.k)`
2
+ svg {
3
+ height: ${10/16}rem;
4
+ width: ${10/16}rem;
5
+ path {
6
+ fill: ${({theme:s})=>s.colors.neutral500};
7
+ }
8
+ }
9
+ :last-of-type ${i.x} {
10
+ display: none;
11
+ }
12
+ :last-of-type ${u.Z} {
13
+ color: ${({theme:s})=>s.colors.neutral800};
14
+ font-weight: ${({theme:s})=>s.fontWeights.bold};
15
+ }
16
+ `,x=({children:s})=>(0,e.jsxs)(f,{inline:!0,as:"li",children:[(0,e.jsx)(u.Z,{variant:"pi",textColor:"neutral600",children:s}),(0,e.jsx)(i.x,{"aria-hidden":!0,paddingLeft:3,paddingRight:3,children:(0,e.jsx)(a.ChevronRight,{})})]});x.displayName="Crumb";const B=({children:s,label:A,...h})=>(0,e.jsxs)(E.k,{...h,children:[(0,e.jsx)(M.T,{children:A}),(0,e.jsx)("ol",{"aria-hidden":!0,children:s})]});B.displayName="Breadcrumbs"},17e3:function(k,P,t){t.d(P,{D:function(){return u}});var e=t(32735),c=t(60216),a=t(72850);const u=({children:i})=>e.createElement(a.x,{paddingLeft:10,paddingRight:10},i);u.propTypes={children:c.node.isRequired}},28356:function(k,P,t){t.d(P,{T:function(){return s}});var e=t(32735),c=t(83292),a=t(60216),u=t(49372),i=t(72850),E=t(87933);const M=n=>{const v=(0,e.useRef)(null),[l,d]=(0,e.useState)(!0),m=([U])=>{d(U.isIntersecting)};return(0,e.useEffect)(()=>{const U=v.current,z=new IntersectionObserver(m,n);return U&&z.observe(v.current),()=>{U&&z.disconnect()}},[v,n]),[v,l]};var f=t(81002);const x=(n,v)=>{const l=(0,f.useCallbackRef)(v);(0,e.useLayoutEffect)(()=>{const d=new ResizeObserver(l);return Array.isArray(n)?n.forEach(m=>{m.current&&d.observe(m.current)}):n.current&&d.observe(n.current),()=>{d.disconnect()}},[n,l])},B=()=>{const n=(0,e.useRef)(null),[v,l]=(0,e.useState)(null),[d,m]=M({root:null,rootMargin:"0px",threshold:0});return x(d,()=>{d.current&&l(d.current.getBoundingClientRect())}),(0,e.useEffect)(()=>{n.current&&l(n.current.getBoundingClientRect())},[n]),{containerRef:d,isVisible:m,baseHeaderLayoutRef:n,headerSize:v}},s=n=>{const{containerRef:v,isVisible:l,baseHeaderLayoutRef:d,headerSize:m}=B();return e.createElement(e.Fragment,null,e.createElement("div",{style:{height:m?.height},ref:v},l&&e.createElement(h,{ref:d,...n})),!l&&e.createElement(h,{...n,sticky:!0,width:m?.width}))};s.displayName="HeaderLayout";const A=(0,c.default)(i.x)`
17
+ width: ${n=>n.width}px;
18
+ `,h=e.forwardRef(({navigationAction:n,primaryAction:v,secondaryAction:l,subtitle:d,title:m,sticky:U,width:z,...H},D)=>{const o=typeof d=="string";return U?e.createElement(A,{paddingLeft:6,paddingRight:6,paddingTop:3,paddingBottom:3,position:"fixed",top:0,right:0,background:"neutral0",shadow:"tableShadow",width:z,zIndex:4,"data-strapi-header-sticky":!0},e.createElement(E.k,{justifyContent:"space-between"},e.createElement(E.k,null,n&&e.createElement(i.x,{paddingRight:3},n),e.createElement(i.x,null,e.createElement(u.Z,{variant:"beta",as:"h1",...H},m),o?e.createElement(u.Z,{variant:"pi",textColor:"neutral600"},d):d),l?e.createElement(i.x,{paddingLeft:4},l):null),e.createElement(E.k,null,v?e.createElement(i.x,{paddingLeft:2},v):void 0))):e.createElement(i.x,{ref:D,paddingLeft:10,paddingRight:10,paddingBottom:8,paddingTop:n?6:8,background:"neutral100","data-strapi-header":!0},n?e.createElement(i.x,{paddingBottom:2},n):null,e.createElement(E.k,{justifyContent:"space-between"},e.createElement(E.k,null,e.createElement(u.Z,{as:"h1",variant:"alpha",...H},m),l?e.createElement(i.x,{paddingLeft:4},l):null),v),o?e.createElement(u.Z,{variant:"epsilon",textColor:"neutral600",as:"p"},d):d)});h.displayName="BaseHeaderLayout",h.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0,sticky:!1,width:void 0},h.propTypes={navigationAction:a.node,primaryAction:a.node,secondaryAction:a.node,sticky:a.bool,subtitle:a.oneOfType([a.string,a.node]),title:a.string.isRequired,width:a.number},s.defaultProps={navigationAction:void 0,primaryAction:void 0,secondaryAction:void 0,subtitle:void 0},s.propTypes={navigationAction:a.node,primaryAction:a.node,secondaryAction:a.node,subtitle:a.oneOfType([a.string,a.node]),title:a.string.isRequired}},96709:function(k,P,t){t.d(P,{A:function(){return M}});var e=t(32735),c=t(60216),a=t(83292),u=t(72850);const i=(0,a.default)(u.x)`
19
+ display: grid;
20
+ grid-template-columns: ${({hasSideNav:f})=>f?"auto 1fr":"1fr"};
21
+ `,E=(0,a.default)(u.x)`
22
+ overflow-x: hidden;
23
+ `,M=({sideNav:f,children:x})=>e.createElement(i,{hasSideNav:Boolean(f)},f,e.createElement(E,{paddingBottom:10},x));M.defaultProps={sideNav:void 0},M.propTypes={children:c.node.isRequired,sideNav:c.node}},27649:function(k,P,t){t.d(P,{o:function(){return i}});var e=t(32735),c=t(60216),a=t(83292);const u=a.default.main`
24
+ // To prevent global outline on focus visible to force an outline when Main is focused
25
+ &:focus-visible {
26
+ outline: none;
27
+ }
28
+ `,i=({labelledBy:E,...M})=>{const f=E||"main-content-title";return e.createElement(u,{"aria-labelledby":f,id:"main-content",tabIndex:-1,...M})};i.defaultProps={labelledBy:void 0},i.propTypes={labelledBy:c.string}},7563:function(k,P,t){t.d(P,{A:function(){return A}});var e=t(74512),c=t(32735),a=t(83292),u=t(57269),i=t(72850),E=t(49372),M=t(87933),f=t(30350);const x=a.keyframes`
29
+ from {
30
+ transform: rotate(0deg);
31
+ }
32
+ to {
33
+ transform: rotate(359deg);
34
+ }
35
+ `,B=a.default.div`
36
+ animation: ${x} 2s infinite linear;
37
+ will-change: transform;
38
+ `,s=(0,a.default)(M.k)`
39
+ background: transparent;
40
+ border: none;
41
+
42
+ &[aria-disabled='true'] {
43
+ pointer-events: none;
44
+ svg path {
45
+ fill: ${({theme:h})=>h.colors.neutral600};
46
+ }
47
+ }
48
+
49
+ svg {
50
+ display: flex;
51
+ font-size: ${10/16}rem;
52
+ }
53
+
54
+ svg path {
55
+ fill: ${({theme:h})=>h.colors.primary600};
56
+ }
57
+
58
+ ${f.BF}
59
+ `,A=c.forwardRef(({children:h,startIcon:n,endIcon:v,onClick:l,disabled:d=!1,loading:m=!1,...U},z)=>{const H=l&&!d?l:void 0,D=d||m;return(0,e.jsxs)(s,{ref:z,"aria-disabled":D,onClick:H,as:"button",type:"button",...U,children:[(n||m)&&(0,e.jsx)(i.x,{as:"span",paddingRight:2,"aria-hidden":!0,children:m?(0,e.jsx)(B,{children:(0,e.jsx)(u.Loader,{})}):n}),(0,e.jsx)(E.Z,{variant:"pi",textColor:D?"neutral600":"primary600",children:h}),v&&(0,e.jsx)(i.x,{as:"span",paddingLeft:2,"aria-hidden":!0,children:v})]})});A.displayName="TextButton"},9139:function(k,P,t){t.d(P,{s:function(){return V}});var e=t(32735),c=t(83292),a=t(60216),u=t(78542),i=t(66436),E=t(87107),M=t(76437),f=t(67014),x=t(47851),B=t(27677),s=t(87933),A=t(7563),h=t(30350),n=t(49372),v=t(3685),l=t(72850),d=t(76144);const m=c.default.label`
60
+ position: relative;
61
+ display: inline-block;
62
+ z-index: 0;
63
+ width: 100%;
64
+ `,U=(0,c.default)(l.x)`
65
+ cursor: ${({disabled:g})=>g?"not-allowed":void 0};
66
+ // Masks the background of each value
67
+ overflow: hidden;
68
+ flex-wrap: wrap;
69
+
70
+ ${(0,h.k3)()}
71
+ `,z=(0,c.default)(s.k).attrs({hasRadius:!0})`
72
+ background-color: ${({theme:g,checked:j,disabled:Z})=>j?Z?g.colors.neutral200:g.colors.neutral0:"transparent"};
73
+ border: 1px solid
74
+ ${({theme:g,checked:j,disabled:Z})=>j&&j!==null?Z?g.colors.neutral300:g.colors.neutral200:Z?g.colors.neutral150:g.colors.neutral100};
75
+ position: relative;
76
+ user-select: none;
77
+ z-index: 2;
78
+ flex: 1 1 50%;
79
+ /**
80
+ We declare the defined value because we want the height of the input when
81
+ the values are in a row to be 40px. But defining a height on the label
82
+ would break the input when it wraps.
83
+ */
84
+ padding-top: ${({size:g})=>`${g==="S"?"2px":"6px"}`};
85
+ padding-bottom: ${({size:g})=>`${g==="S"?"2px":"6px"}`};
86
+ `,H=c.default.input`
87
+ height: 100%;
88
+ left: 0;
89
+ opacity: 0;
90
+ position: absolute;
91
+ top: 0;
92
+ z-index: 1;
93
+ width: 100%;
94
+ `,D=e.forwardRef(({size:g,onLabel:j,offLabel:Z,children:Y,checked:T,disabled:R,onChange:w,...ie},G)=>{const{error:q,hint:_,id:X,name:le,required:ee}=(0,d.U)(),ae="neutral600";let se=!T&&T!==null?"danger700":ae,me=T?"primary600":ae;const de=re=>{R||w(re)};let ne;return q?ne=`${X}-error`:_&&(ne=`${X}-hint`),e.createElement(m,null,e.createElement(v.T,null,Y),e.createElement(U,{hasRadius:!0,disabled:R,padding:1,display:"flex",background:R?"neutral150":"neutral100",borderStyle:"solid",borderWidth:"1px",borderColor:"neutral200"},e.createElement(z,{size:g,paddingLeft:3,paddingRight:3,justifyContent:"center",alignItems:"center","aria-hidden":!0,checked:T===null?!1:!T,disabled:R},e.createElement(n.Z,{variant:"pi",fontWeight:"bold",textTransform:"uppercase",textColor:R?"neutral700":se},Z)),e.createElement(z,{size:g,paddingLeft:3,paddingRight:3,justifyContent:"center",alignItems:"center","aria-hidden":!0,checked:T===null?!1:T,disabled:R},e.createElement(n.Z,{variant:"pi",fontWeight:"bold",textTransform:"uppercase",textColor:R?"neutral700":me},j)),e.createElement(H,{type:"checkbox","aria-disabled":R,"aria-describedby":ne,onChange:re=>de(re),name:le,ref:G,"aria-required":ee,...ie,checked:!(T===null||!T)})))});D.displayName="ToggleCheckbox",D.defaultProps={disabled:!1,checked:!1,onChange:void 0,size:"M"},D.propTypes={checked:a.bool,children:a.string.isRequired,disabled:a.bool,offLabel:a.string.isRequired,onChange:a.func,onLabel:a.string.isRequired,size:a.oneOf(Object.keys(u.J.input))};const o=(0,c.default)(E.g)`
95
+ max-width: 320px;
96
+ `,y=(0,c.default)(A.A)`
97
+ align-self: flex-end;
98
+ margin-left: auto;
99
+ `,V=({disabled:g,size:j,error:Z,hint:Y,label:T,name:R,labelAction:w,required:ie,id:G,onClear:q,clearLabel:_,checked:X,...le})=>{const ee=(0,i.M)(G);return e.createElement(o,{name:R,hint:Y,error:Z,id:ee,required:ie},e.createElement(B.K,{spacing:1},e.createElement(s.k,null,e.createElement(M.Q,{action:w},T),_&&q&&X!==null&&!g&&e.createElement(y,{onClick:q},_)),e.createElement(D,{id:ee,size:j,checked:X,disabled:g,...le},T),e.createElement(f.J,null),e.createElement(x.c,null)))};V.displayName="ToggleInput",V.defaultProps={checked:!1,clearLabel:void 0,disabled:!1,error:void 0,hint:void 0,id:void 0,label:"",labelAction:void 0,name:"",onClear:void 0,required:!1,size:"M"},V.propTypes={checked:a.bool,clearLabel:a.string,disabled:a.bool,error:a.string,hint:a.oneOfType([a.string,a.node,a.arrayOf(a.node)]),id:a.string,label:a.string,labelAction:a.node,name:a.string,onClear:a.func,required:a.bool,size:a.oneOf(Object.keys(u.J.input))}}}]);
@@ -0,0 +1,30 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8853],{77495:function(ve,H,a){a.r(H),a.d(H,{default:function(){return Tt}});var e=a(32735),A=a(5141),i=a(88425),v=a(90201),P=a(88369),F=a(41415),X=a(96709),Z=a(28356),j=a(99223),x=a(17e3),U=a(27649),K=a(94745),w=a(76330),N=a(29005),O=a(66735),Re=a(3685),h=a(49372),Ce=a(94638),Pe=a(19406),L=a(5636),Y=a(84968),Te=a(58469),G=a(59677);const Ae=async(t,n)=>{try{const{get:s}=(0,i.getFetchClient)(),{data:r}=await s((0,G.Gc)("roles"));return n("The roles have loaded successfully"),r}catch{throw t({type:"warning",message:{id:"notification.error"}}),new Error("error")}},De=async(t,n)=>{try{const{del:s}=(0,i.getFetchClient)();await s(`${(0,G.Gc)("roles")}/${t}`)}catch{n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}};var be=a(60216),f=a.n(be),te=a(50563),J=a(87933),Le=a(3594),Se=a(68625),Me=a(4038);const q=({sortedRoles:t,canDelete:n,permissions:s,setRoleToDelete:r,onDelete:c})=>{const{formatMessage:o}=(0,L.useIntl)(),{push:d}=(0,A.useHistory)(),[m,g]=c,u=l=>n&&!["public","authenticated"].includes(l.type),p=l=>{r(l),g(!m)},E=l=>{d(`/settings/${v.Z}/roles/${l}`)};return e.createElement(Le.p,null,t?.map(l=>e.createElement(N.Tr,{key:l.name,...(0,i.onRowClick)({fn:()=>E(l.id)})},e.createElement(O.Td,{width:"20%"},e.createElement(h.Z,null,l.name)),e.createElement(O.Td,{width:"50%"},e.createElement(h.Z,null,l.description)),e.createElement(O.Td,{width:"30%"},e.createElement(h.Z,null,`${l.nb_users} ${o({id:"global.users",defaultMessage:"users"}).toLowerCase()}`)),e.createElement(O.Td,null,e.createElement(J.k,{justifyContent:"end",...i.stopPropagation},e.createElement(i.CheckPermissions,{permissions:s.updateRole},e.createElement(te.h,{onClick:()=>E(l.id),noBorder:!0,icon:e.createElement(Se.Z,null),label:o({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:`${l.name}`})})),u(l)&&e.createElement(i.CheckPermissions,{permissions:s.deleteRole},e.createElement(te.h,{onClick:()=>p(l.id),noBorder:!0,icon:e.createElement(Me.default,null),label:o({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${l.name}`})})))))))};var Ze=q;q.defaultProps={canDelete:!1},q.propTypes={onDelete:f().array.isRequired,permissions:f().object.isRequired,setRoleToDelete:f().func.isRequired,sortedRoles:f().array.isRequired,canDelete:f().bool};var Oe=()=>{const{trackUsage:t}=(0,i.useTracking)(),{formatMessage:n}=(0,L.useIntl)(),{push:s}=(0,A.useHistory)(),r=(0,i.useNotification)(),{notifyStatus:c}=(0,Ce.G)(),[{query:o}]=(0,i.useQueryParams)(),d=o?._q||"",[m,g]=(0,e.useState)(!1),[u,p]=(0,e.useState)(!1),[E,l]=(0,e.useState)();(0,i.useFocusWhenNavigate)();const R=(0,Y.useQueryClient)(),S=(0,e.useMemo)(()=>({create:P.Z.createRole,read:P.Z.readRoles,update:P.Z.updateRole,delete:P.Z.deleteRole}),[]),{isLoading:y,allowedActions:{canRead:C,canDelete:M}}=(0,i.useRBAC)(S),{isLoading:$,data:{roles:fe},isFetching:At}=(0,Y.useQuery)("get-roles",()=>Ae(r,c),{initialData:{},enabled:C}),ye=$||At,Dt=()=>{t("willCreateRole"),s(`/settings/${v.Z}/roles/new`)},bt=()=>{g(!m)},Lt={roles:{id:(0,G.OB)("Roles.empty"),defaultMessage:"You don't have any roles yet."},search:{id:(0,G.OB)("Roles.empty.search"),defaultMessage:"No roles match the search."}},St=n({id:"global.roles",defaultMessage:"Roles"}),Mt=(0,Y.useMutation)(xt=>De(xt,r),{async onSuccess(){await R.invalidateQueries("get-roles")}}),Zt=async()=>{p(!0),await Mt.mutateAsync(E),g(!m),p(!1)},Q=(0,Te.ZP)(fe||[],d,{keys:["name","description"]}),Ot=d&&!Q.length?"search":"roles",Ut=4,kt=(fe?.length||0)+1;return e.createElement(X.A,null,e.createElement(i.SettingsPageTitle,{name:St}),e.createElement(U.o,{"aria-busy":ye},e.createElement(Z.T,{title:n({id:"global.roles",defaultMessage:"Roles"}),subtitle:n({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),primaryAction:e.createElement(i.CheckPermissions,{permissions:P.Z.createRole},e.createElement(F.z,{onClick:Dt,startIcon:e.createElement(Pe.default,null),size:"S"},n({id:(0,G.OB)("List.button.roles"),defaultMessage:"Add new role"})))}),e.createElement(j.Z,{startActions:e.createElement(i.SearchURLQuery,{label:n({id:"app.component.search.label",defaultMessage:"Search"})})}),e.createElement(x.D,null,!C&&e.createElement(i.NoPermissions,null),(ye||y)&&e.createElement(i.LoadingIndicatorPage,null),C&&Q&&Q?.length?e.createElement(K.i,{colCount:Ut,rowCount:kt},e.createElement(w.h,null,e.createElement(N.Tr,null,e.createElement(O.Th,null,e.createElement(h.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.name",defaultMessage:"Name"}))),e.createElement(O.Th,null,e.createElement(h.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.description",defaultMessage:"Description"}))),e.createElement(O.Th,null,e.createElement(h.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.users",defaultMessage:"Users"}))),e.createElement(O.Th,null,e.createElement(Re.T,null,n({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(Ze,{sortedRoles:Q,canDelete:M,permissions:P.Z,setRoleToDelete:l,onDelete:[m,g]})):e.createElement(i.EmptyStateLayout,{content:Lt[Ot]})),e.createElement(i.ConfirmDialog,{isConfirmButtonLoading:u,onConfirm:Zt,onToggleDialog:bt,isOpen:m})))},Ue=()=>e.createElement(i.CheckPagePermissions,{permissions:P.Z.accessRoles},e.createElement(Oe,null)),se=a(83281),T=a(27677),D=a(72850),ne=a(10369),ae=a(10508),ke=a(29439),re=a(66456),V=a(15335),k=a(5803),B=a(82069),b=a(92891);const oe=(0,e.createContext)({}),ie=({children:t,value:n})=>e.createElement(oe.Provider,{value:n},t),_=()=>(0,e.useContext)(oe);ie.propTypes={children:f().node.isRequired,value:f().object.isRequired};var z=a(83292),xe=a(37213),Ne=a.n(xe),Ge=a(15738),Be=a.n(Ge),Ie=t=>{switch(t){case"POST":return{text:"success600",border:"success200",background:"success100"};case"GET":return{text:"secondary600",border:"secondary200",background:"secondary100"};case"PUT":return{text:"warning600",border:"warning200",background:"warning100"};case"DELETE":return{text:"danger600",border:"danger200",background:"danger100"};default:return{text:"neutral600",border:"neutral200",background:"neutral100"}}};const $e=(0,z.default)(D.x)`
2
+ margin: -1px;
3
+ border-radius: ${({theme:t})=>t.spaces[1]} 0 0 ${({theme:t})=>t.spaces[1]};
4
+ `;function ee({route:t}){const{formatMessage:n}=(0,L.useIntl)(),{method:s,handler:r,path:c}=t,o=c?Be()(c.split("/")):[],[d="",m=""]=r?r.split("."):[],g=Ie(t.method);return e.createElement(T.K,{spacing:2},e.createElement(h.Z,{variant:"delta",as:"h3"},n({id:"users-permissions.BoundRoute.title",defaultMessage:"Bound route to"}),"\xA0",e.createElement("span",null,d),e.createElement(h.Z,{variant:"delta",textColor:"primary600"},".",m)),e.createElement(T.K,{horizontal:!0,hasRadius:!0,background:"neutral0",borderColor:"neutral200",spacing:0},e.createElement($e,{background:g.background,borderColor:g.border,padding:2},e.createElement(h.Z,{fontWeight:"bold",textColor:g.text},s)),e.createElement(D.x,{paddingLeft:2,paddingRight:2},Ne()(o,u=>e.createElement(h.Z,{key:u,textColor:u.includes(":")?"neutral600":"neutral900"},"/",u)))))}ee.defaultProps={route:{handler:"Nocontroller.error",method:"GET",path:"/there-is-no-path"}},ee.propTypes={route:f().shape({handler:f().string,method:f().string,path:f().string})};var Fe=ee,je=()=>{const{formatMessage:t}=(0,L.useIntl)(),{selectedAction:n,routes:s}=_(),r=(0,b.without)(n.split("."),"controllers"),c=(0,b.get)(s,r[0]),o=r.slice(1).join("."),d=(0,b.isEmpty)(c)?[]:c.filter(m=>m.handler.endsWith(o));return e.createElement(k.P,{col:5,background:"neutral150",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7,style:{minHeight:"100%"}},n?e.createElement(T.K,{spacing:2},d.map((m,g)=>e.createElement(Fe,{key:g,route:m}))):e.createElement(T.K,{spacing:2},e.createElement(h.Z,{variant:"delta",as:"h3"},t({id:"users-permissions.Policies.header.title",defaultMessage:"Advanced settings"})),e.createElement(h.Z,{as:"p",textColor:"neutral600"},t({id:"users-permissions.Policies.header.hint",defaultMessage:"Select the application's actions or the plugin's actions and click on the cog icon to display the bound route"}))))},we=a(83828),He=a(61762),Ke=a(89966),Ve=a(23940),ze=a.n(Ve);function We(t){switch(t){case"application":return"Application";case"plugin::content-manager":return"Content manager";case"plugin::content-type-builder":return"Content types builder";case"plugin::documentation":return"Documentation";case"plugin::email":return"Email";case"plugin::i18n":return"i18n";case"plugin::upload":return"Upload";case"plugin::users-permissions":return"Users-permissions";default:return ze()(t.replace("api::","").replace("plugin::",""))}}var Qe=We,Xe=a(98978),le=a.n(Xe),ce=a(8284),Ye=a(45112);const de=z.css`
5
+ background: ${t=>t.theme.colors.primary100};
6
+ svg {
7
+ opacity: 1;
8
+ }
9
+ `;var Je=(0,z.default)(D.x)`
10
+ display: flex;
11
+ justify-content: space-between;
12
+ align-items: center;
13
+
14
+ svg {
15
+ opacity: 0;
16
+ path {
17
+ fill: ${t=>t.theme.colors.primary600};
18
+ }
19
+ }
20
+
21
+ /* Show active style both on hover and when the action is selected */
22
+ ${t=>t.isActive&&de}
23
+ &:hover {
24
+ ${de}
25
+ }
26
+ `;const qe=z.default.div`
27
+ flex: 1;
28
+ align-self: center;
29
+ border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
30
+ `,ue=({subCategory:t})=>{const{formatMessage:n}=(0,L.useIntl)(),{onChange:s,onChangeSelectAll:r,onSelectedAction:c,selectedAction:o,modifiedData:d}=_(),m=(0,e.useMemo)(()=>(0,b.get)(d,t.name,{}),[d,t]),g=(0,e.useMemo)(()=>Object.values(m).every(l=>l.enabled===!0),[m]),u=(0,e.useMemo)(()=>Object.values(m).some(l=>l.enabled===!0)&&!g,[m,g]),p=(0,e.useCallback)(({target:{name:l}})=>{r({target:{name:l,value:!g}})},[g,r]),E=(0,e.useCallback)(l=>o===l,[o]);return e.createElement(D.x,null,e.createElement(J.k,{justifyContent:"space-between",alignItems:"center"},e.createElement(D.x,{paddingRight:4},e.createElement(h.Z,{variant:"sigma",textColor:"neutral600"},t.label)),e.createElement(qe,null),e.createElement(D.x,{paddingLeft:4},e.createElement(ce.X,{name:t.name,value:g,onValueChange:l=>p({target:{name:t.name,value:l}}),indeterminate:u},n({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(J.k,{paddingTop:6,paddingBottom:6},e.createElement(V.r,{gap:2,style:{flex:1}},t.actions.map(l=>{const R=`${l.name}.enabled`;return e.createElement(k.P,{col:6,key:l.name},e.createElement(Je,{isActive:E(l.name),padding:2,hasRadius:!0},e.createElement(ce.X,{value:(0,b.get)(d,R,!1),name:R,onValueChange:S=>s({target:{name:R,value:S}})},l.label),e.createElement("button",{type:"button","data-testid":"action-cog",onClick:()=>c(l.name),style:{display:"inline-flex",alignItems:"center"}},e.createElement(Ye.Z,null))))}))))};ue.propTypes={subCategory:f().object.isRequired};var _e=ue;const me=({name:t,permissions:n})=>{const s=(0,e.useMemo)(()=>le()(Object.values(n.controllers).reduce((r,c,o)=>{const d=`${t}.controllers.${Object.keys(n.controllers)[o]}`,m=le()(Object.keys(c).reduce((g,u)=>[...g,{...c[u],label:u,name:`${d}.${u}`}],[]),"label");return[...r,{actions:m,label:Object.keys(n.controllers)[o],name:d}]},[]),"label"),[t,n]);return e.createElement(D.x,{padding:6},s.map(r=>e.createElement(_e,{key:r.name,subCategory:r})))};me.propTypes={name:f().string.isRequired,permissions:f().object.isRequired};var et=me,tt=(t,n)=>{const s=Object.keys(n).sort().map(r=>({name:r,isOpen:!1}));return{...t,collapses:s}},W=a(97889);const st={collapses:[]},nt=(t,n)=>(0,W.default)(t,s=>{switch(n.type){case"TOGGLE_COLLAPSE":{s.collapses=t.collapses.map((r,c)=>c===n.index?{...r,isOpen:!r.isOpen}:{...r,isOpen:!1});break}default:return s}});var at=()=>{const{modifiedData:t}=_(),{formatMessage:n}=(0,L.useIntl)(),[{collapses:s},r]=(0,e.useReducer)(nt,st,o=>tt(o,t)),c=o=>r({type:"TOGGLE_COLLAPSE",index:o});return e.createElement(T.K,{spacing:1},s.map((o,d)=>e.createElement(we.U,{expanded:o.isOpen,onToggle:()=>c(d),key:o.name,variant:d%2===0?"secondary":void 0},e.createElement(He.B,{title:Qe(o.name),description:n({id:"users-permissions.Plugin.permissions.plugins.description",defaultMessage:"Define all allowed actions for the {name} plugin."},{name:o.name}),variant:d%2?"primary":"secondary"}),e.createElement(Ke.v,null,e.createElement(D.x,null,e.createElement(et,{permissions:t[o.name],name:o.name}))))))};const rt={initialData:{},modifiedData:{},routes:{},selectedAction:"",policies:[]};var ot=(t,n)=>(0,W.default)(t,s=>{switch(n.type){case"ON_CHANGE":{const r=n.keys.length,c=n.keys[r-1]==="enabled";if(n.value&&c){const o=(0,b.take)(n.keys,r-1).join(".");s.selectedAction=o}(0,b.set)(s,["modifiedData",...n.keys],n.value);break}case"ON_CHANGE_SELECT_ALL":{const r=["modifiedData",...n.keys],c=(0,b.get)(t,r,{}),o=Object.keys(c).reduce((d,m)=>(d[m]={...c[m],enabled:n.value},d),{});(0,b.set)(s,r,o);break}case"ON_RESET":{s.modifiedData=t.initialData;break}case"ON_SUBMIT_SUCCEEDED":{s.initialData=t.modifiedData;break}case"SELECT_ACTION":{const{actionToSelect:r}=n;s.selectedAction=r===t.selectedAction?"":r;break}default:return s}}),it=(t,n,s)=>({...t,initialData:n,modifiedData:n,routes:s});const ge=(0,e.forwardRef)(({permissions:t,routes:n},s)=>{const{formatMessage:r}=(0,L.useIntl)(),[c,o]=(0,e.useReducer)(ot,rt,p=>it(p,t,n));(0,e.useImperativeHandle)(s,()=>({getPermissions(){return{permissions:c.modifiedData}},resetForm(){o({type:"ON_RESET"})},setFormAfterSubmit(){o({type:"ON_SUBMIT_SUCCEEDED"})}}));const u={...c,onChange:({target:{name:p,value:E}})=>o({type:"ON_CHANGE",keys:p.split("."),value:E==="empty__string_value"?"":E}),onChangeSelectAll:({target:{name:p,value:E}})=>o({type:"ON_CHANGE_SELECT_ALL",keys:p.split("."),value:E}),onSelectedAction:p=>o({type:"SELECT_ACTION",actionToSelect:p})};return e.createElement(ie,{value:u},e.createElement(V.r,{gap:0,shadow:"filterShadow",hasRadius:!0,background:"neutral0"},e.createElement(k.P,{col:7,paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(T.K,{spacing:6},e.createElement(T.K,{spacing:2},e.createElement(h.Z,{variant:"delta",as:"h2"},r({id:(0,B.Z)("Plugins.header.title"),defaultMessage:"Permissions"})),e.createElement(h.Z,{as:"p",textColor:"neutral600"},r({id:(0,B.Z)("Plugins.header.description"),defaultMessage:"Only actions bound by a route are listed below."}))),e.createElement(at,null))),e.createElement(je,null)))});ge.propTypes={permissions:f().object.isRequired,routes:f().object.isRequired};var pe=(0,e.memo)(ge);const Kt={isLoading:!0,modifiedData:{}},Vt=(t,n)=>produce(t,s=>{switch(n.type){case"GET_DATA":{s.isLoading=!0,s.modifiedData={};break}case"GET_DATA_SUCCEEDED":{s.isLoading=!1,s.modifiedData=n.data;break}case"GET_DATA_ERROR":{s.isLoading=!0;break}case"ON_SUBMIT_SUCCEEDED":{s.modifiedData=n.data;break}default:return s}});var zt=null,lt=a(98399);const Wt=(t,n)=>{const{isLoading:s,allowedActions:r}=useRBAC(n),[{isLoading:c,modifiedData:o},d]=useReducer(reducer,initialState),m=useNotification(),g=useRef(!0),u=new AbortController,{signal:p}=u;useEffect(()=>(s||(async()=>{try{d({type:"GET_DATA"});const R=await request(getRequestURL(t),{method:"GET",signal:p});d({type:"GET_DATA_SUCCEEDED",data:R})}catch(R){g.current&&(d({type:"GET_DATA_ERROR"}),lt.error(R),m({type:"warning",message:{id:"notification.error"}}))}})(),()=>{u.abort(),g.current=!1}),[s,t]);const E=useCallback(l=>{d({type:"ON_SUBMIT_SUCCEEDED",data:l})},[]);return{allowedActions:r,dispatchSubmitSucceeded:E,isLoading:c,isLoadingForPermissions:s,modifiedData:o}};var Qt=null;const Xt={roles:[],isLoading:!0},Yt=(t,n)=>produce(t,s=>{switch(n.type){case"GET_DATA":{s.isLoading=!0,s.roles=[];break}case"GET_DATA_SUCCEEDED":{s.roles=n.data,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}default:return s}});var Jt=null;const qt=(t=!0)=>{const[{roles:n,isLoading:s},r]=useReducer(reducer,initialState,()=>init(initialState,t)),c=useNotification(),o=useRef(!0),d=new AbortController,{signal:m}=d;useEffect(()=>(t&&g(),()=>{d.abort(),o.current=!1}),[t]);const g=async()=>{try{r({type:"GET_DATA"});const{roles:u}=await request(`/${pluginId}/roles`,{method:"GET",signal:m});r({type:"GET_DATA_SUCCEEDED",data:u})}catch(u){const p=get(u,["response","payload","message"],"An error occured");o.current&&(r({type:"GET_DATA_ERROR"}),p!=="Forbidden"&&c({type:"warning",message:p}))}};return{roles:n,isLoading:s,getData:g}};var _t=null,ct=(t,n)=>({...t,isLoading:n});const Ee={permissions:{},routes:{},isLoading:!0};var dt=(t,n)=>(0,W.default)(t,s=>{switch(n.type){case"GET_DATA":{s.isLoading=!0,s.permissions={},s.routes={};break}case"GET_DATA_SUCCEEDED":{s.permissions=n.permissions,s.routes=n.routes,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}default:return s}}),he=(t=!0)=>{const n=(0,i.useNotification)(),[{permissions:s,routes:r,isLoading:c},o]=(0,e.useReducer)(dt,Ee,()=>ct(Ee,t)),d=(0,i.useFetchClient)(),m=(0,e.useCallback)(async()=>{try{o({type:"GET_DATA"});const[{permissions:g},{routes:u}]=await Promise.all([`/${v.Z}/permissions`,`/${v.Z}/routes`].map(async p=>(await d.get(p)).data));o({type:"GET_DATA_SUCCEEDED",permissions:(0,G.YX)(g),routes:u})}catch(g){const u=(0,b.get)(g,["response","payload","message"],"An error occured");o({type:"GET_DATA_ERROR"}),u!=="Forbidden"&&n({type:"warning",message:u})}},[n]);return(0,e.useEffect)(()=>{t&&m()},[m,t]),{permissions:s,routes:r,getData:m,isLoading:c}};const ut={role:{},isLoading:!0};var mt=(t,n)=>(0,W.default)(t,s=>{switch(n.type){case"GET_DATA_SUCCEEDED":{s.role=n.role,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{s.role.name=n.name,s.role.description=n.description;break}default:return s}}),gt=a(98399),pt=t=>{const[n,s]=(0,e.useReducer)(mt,ut),r=(0,i.useNotification)(),c=(0,e.useRef)(null),{get:o}=(0,i.useFetchClient)();(0,e.useEffect)(()=>(c.current=!0,t?d(t):s({type:"GET_DATA_SUCCEEDED",role:{}}),()=>c.current=!1),[t]);const d=async g=>{try{const{data:{role:u}}=await o(`/${v.Z}/roles/${g}`);c.current&&s({type:"GET_DATA_SUCCEEDED",role:u})}catch(u){gt.error(u),s({type:"GET_DATA_ERROR"}),r({type:"warning",message:{id:"notification.error"}})}},m=(0,e.useCallback)(g=>{s({type:"ON_SUBMIT_SUCCEEDED",...g})},[]);return{...n,onSubmitSucceeded:m}},I=a(5173),Et=I.Ry().shape({name:I.Z_().required(i.translatedErrors.required),description:I.Z_().required(i.translatedErrors.required)}),ht=a(98399),ft=()=>{const{formatMessage:t}=(0,L.useIntl)(),[n,s]=(0,e.useState)(!1),r=(0,i.useNotification)(),{lockApp:c,unlockApp:o}=(0,i.useOverlayBlocker)(),{params:{id:d}}=(0,A.useRouteMatch)(`/settings/${v.Z}/roles/:id`),{isLoading:m,routes:g}=he(),{role:u,onSubmitSucceeded:p,isLoading:E}=pt(d),l=(0,e.useRef)(),{put:R}=(0,i.useFetchClient)(),S=async y=>{c(),s(!0);try{const C=l.current.getPermissions();await R(`/${v.Z}/roles/${d}`,{...y,...C,users:[]}),p({name:y.name,description:y.description}),r({type:"success",message:{id:(0,B.Z)("Settings.roles.edited"),defaultMessage:"Role edited"}})}catch(C){ht.error(C),r({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}s(!1),o()};return E?e.createElement(i.LoadingIndicatorPage,null):e.createElement(U.o,null,e.createElement(i.SettingsPageTitle,{name:"Roles"}),e.createElement(se.Formik,{enableReinitialize:!0,initialValues:{name:u.name,description:u.description},onSubmit:S,validationSchema:Et},({handleSubmit:y,values:C,handleChange:M,errors:$})=>e.createElement(i.Form,{noValidate:!0,onSubmit:y},e.createElement(Z.T,{primaryAction:!m&&e.createElement(F.z,{disabled:u.code==="strapi-super-admin",type:"submit",loading:n,startIcon:e.createElement(re.Z,null)},t({id:"global.save",defaultMessage:"Save"})),title:u.name,subtitle:u.description,navigationAction:e.createElement(i.Link,{startIcon:e.createElement(ke.Z,null),to:"/settings/users-permissions/roles"},t({id:"global.back",defaultMessage:"Back"}))}),e.createElement(x.D,null,e.createElement(T.K,{spacing:7},e.createElement(D.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(T.K,{spacing:4},e.createElement(h.Z,{variant:"delta",as:"h2"},t({id:(0,B.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),e.createElement(V.r,{gap:4},e.createElement(k.P,{col:6},e.createElement(ne.o,{name:"name",value:C.name||"",onChange:M,label:t({id:"global.name",defaultMessage:"Name"}),error:$.name?t({id:$.name,defaultMessage:"Invalid value"}):null})),e.createElement(k.P,{col:6},e.createElement(ae.g,{name:"description",value:C.description||"",onChange:M,label:t({id:"global.description",defaultMessage:"Description"}),error:$.description?t({id:$.description,defaultMessage:"Invalid value"}):null}))))),!m&&e.createElement(pe,{ref:l,permissions:u.permissions,routes:g}))))))},yt=()=>e.createElement(i.CheckPagePermissions,{permissions:P.Z.updateRole},e.createElement(ft,null)),vt=I.Ry().shape({name:I.Z_().required(i.translatedErrors.required),description:I.Z_().required(i.translatedErrors.required)}),Rt=a(98399),Ct=()=>{const{formatMessage:t}=(0,L.useIntl)(),[n,s]=(0,e.useState)(!1),r=(0,i.useNotification)(),{goBack:c}=(0,A.useHistory)(),{lockApp:o,unlockApp:d}=(0,i.useOverlayBlocker)(),{isLoading:m,permissions:g,routes:u}=he(),{trackUsage:p}=(0,i.useTracking)(),E=(0,e.useRef)(),{post:l}=(0,i.useFetchClient)(),R=async S=>{o(),s(!0);try{const y=E.current.getPermissions();await l(`/${v.Z}/roles`,{...S,...y,users:[]}),p("didCreateRole"),r({type:"success",message:{id:(0,B.Z)("Settings.roles.created"),defaultMessage:"Role created"}}),c()}catch(y){Rt.error(y),r({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}s(!1),d()};return e.createElement(U.o,null,e.createElement(i.SettingsPageTitle,{name:"Roles"}),e.createElement(se.Formik,{enableReinitialize:!0,initialValues:{name:"",description:""},onSubmit:R,validationSchema:vt},({handleSubmit:S,values:y,handleChange:C,errors:M})=>e.createElement(i.Form,{noValidate:!0,onSubmit:S},e.createElement(Z.T,{primaryAction:!m&&e.createElement(F.z,{type:"submit",loading:n,startIcon:e.createElement(re.Z,null)},t({id:"global.save",defaultMessage:"Save"})),title:t({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:t({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"})}),e.createElement(x.D,null,e.createElement(T.K,{spacing:7},e.createElement(D.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(T.K,{spacing:4},e.createElement(h.Z,{variant:"delta",as:"h2"},t({id:(0,B.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),e.createElement(V.r,{gap:4},e.createElement(k.P,{col:6},e.createElement(ne.o,{name:"name",value:y.name||"",onChange:C,label:t({id:"global.name",defaultMessage:"Name"}),error:M.name?t({id:M.name,defaultMessage:"Invalid value"}):null})),e.createElement(k.P,{col:6},e.createElement(ae.g,{name:"description",value:y.description||"",onChange:C,label:t({id:"global.description",defaultMessage:"Description"}),error:M.description?t({id:M.description,defaultMessage:"Invalid value"}):null}))))),!m&&e.createElement(pe,{ref:E,permissions:g,routes:u}))))))},Pt=()=>e.createElement(i.CheckPagePermissions,{permissions:P.Z.createRole},e.createElement(Ct,null)),Tt=()=>e.createElement(i.CheckPagePermissions,{permissions:P.Z.accessRoles},e.createElement(A.Switch,null,e.createElement(A.Route,{path:`/settings/${v.Z}/roles/new`,component:Pt,exact:!0}),e.createElement(A.Route,{path:`/settings/${v.Z}/roles/:id`,component:yt,exact:!0}),e.createElement(A.Route,{path:`/settings/${v.Z}/roles`,component:Ue,exact:!0}),e.createElement(A.Route,{path:"",component:i.NotFound})))},59677:function(ve,H,a){a.d(H,{YX:function(){return i},Gc:function(){return F},OB:function(){return X.Z}});var e=a(92891),i=Z=>Object.keys(Z).reduce((j,x)=>{const U=Z[x].controllers,K=Object.keys(U).reduce((w,N)=>((0,e.isEmpty)(U[N])||(w[N]=U[N]),w),{});return(0,e.isEmpty)(K)||(j[x]={controllers:K}),j},{}),v=a(90201),F=Z=>`/${v.Z}/${Z}`,X=a(82069)}}]);