@strapi/admin 5.50.0 → 5.50.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/dist/admin/admin/src/components/ConfirmDialog.js +2 -2
  2. package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
  3. package/dist/admin/admin/src/components/ContentBox.js +3 -3
  4. package/dist/admin/admin/src/components/ContentBox.js.map +1 -1
  5. package/dist/admin/admin/src/components/DescriptionComponentRenderer.js +8 -8
  6. package/dist/admin/admin/src/components/DescriptionComponentRenderer.js.map +1 -1
  7. package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs +8 -8
  8. package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/ErrorElement.js +4 -4
  10. package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
  11. package/dist/admin/admin/src/components/Form.js +41 -27
  12. package/dist/admin/admin/src/components/Form.js.map +1 -1
  13. package/dist/admin/admin/src/components/Form.mjs +41 -27
  14. package/dist/admin/admin/src/components/Form.mjs.map +1 -1
  15. package/dist/admin/admin/src/components/FormInputs/Date.js +1 -1
  16. package/dist/admin/admin/src/components/FormInputs/Date.js.map +1 -1
  17. package/dist/admin/admin/src/components/FormInputs/Date.mjs +1 -1
  18. package/dist/admin/admin/src/components/FormInputs/Date.mjs.map +1 -1
  19. package/dist/admin/admin/src/components/FormInputs/Email.js.map +1 -1
  20. package/dist/admin/admin/src/components/FormInputs/Email.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/FormInputs/Enumeration.js +4 -1
  22. package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
  23. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs +4 -1
  24. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/FormInputs/Json.js +2 -1
  26. package/dist/admin/admin/src/components/FormInputs/Json.js.map +1 -1
  27. package/dist/admin/admin/src/components/FormInputs/Json.mjs +2 -1
  28. package/dist/admin/admin/src/components/FormInputs/Json.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/FormInputs/Password.js.map +1 -1
  30. package/dist/admin/admin/src/components/FormInputs/Password.mjs.map +1 -1
  31. package/dist/admin/admin/src/components/FormInputs/Renderer.js +18 -26
  32. package/dist/admin/admin/src/components/FormInputs/Renderer.js.map +1 -1
  33. package/dist/admin/admin/src/components/FormInputs/Renderer.mjs +20 -28
  34. package/dist/admin/admin/src/components/FormInputs/Renderer.mjs.map +1 -1
  35. package/dist/admin/admin/src/components/FormInputs/String.js.map +1 -1
  36. package/dist/admin/admin/src/components/FormInputs/String.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/FormInputs/Textarea.js.map +1 -1
  38. package/dist/admin/admin/src/components/FormInputs/Textarea.mjs.map +1 -1
  39. package/dist/admin/admin/src/components/GapDropZone.js +2 -2
  40. package/dist/admin/admin/src/components/GapDropZone.js.map +1 -1
  41. package/dist/admin/admin/src/components/GradientBadge.js +3 -3
  42. package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
  43. package/dist/admin/admin/src/components/GuidedTour/Overview.js +8 -8
  44. package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
  45. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js +4 -4
  46. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
  47. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
  48. package/dist/admin/admin/src/components/GuidedTour/Tours.js +2 -2
  49. package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
  50. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +2 -2
  51. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  52. package/dist/admin/admin/src/components/Layouts/GridLayout.js +2 -2
  53. package/dist/admin/admin/src/components/Layouts/GridLayout.js.map +1 -1
  54. package/dist/admin/admin/src/components/Layouts/Layout.js +4 -4
  55. package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
  56. package/dist/admin/admin/src/components/LeftMenu.js +3 -3
  57. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  58. package/dist/admin/admin/src/components/MainNav/MainNav.js +2 -2
  59. package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
  60. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +4 -4
  61. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
  62. package/dist/admin/admin/src/components/MainNav/NavBrand.js +2 -2
  63. package/dist/admin/admin/src/components/MainNav/NavBrand.js.map +1 -1
  64. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js +3 -3
  65. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -1
  66. package/dist/admin/admin/src/components/MainNav/NavLink.js +8 -8
  67. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  68. package/dist/admin/admin/src/components/MainNav/NavUser.js +7 -7
  69. package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
  70. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js +3 -3
  71. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
  72. package/dist/admin/admin/src/components/NpsSurvey.js +2 -2
  73. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  74. package/dist/admin/admin/src/components/ResizeIndicator.js +6 -6
  75. package/dist/admin/admin/src/components/ResizeIndicator.js.map +1 -1
  76. package/dist/admin/admin/src/components/SubNav.js +11 -9
  77. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  78. package/dist/admin/admin/src/components/SubNav.mjs +4 -2
  79. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  80. package/dist/admin/admin/src/components/Table.js +9 -5
  81. package/dist/admin/admin/src/components/Table.js.map +1 -1
  82. package/dist/admin/admin/src/components/Table.mjs +6 -2
  83. package/dist/admin/admin/src/components/Table.mjs.map +1 -1
  84. package/dist/admin/admin/src/components/Theme.js +2 -2
  85. package/dist/admin/admin/src/components/Theme.js.map +1 -1
  86. package/dist/admin/admin/src/components/UnauthenticatedLogo.js +2 -2
  87. package/dist/admin/admin/src/components/UnauthenticatedLogo.js.map +1 -1
  88. package/dist/admin/admin/src/components/UpsellBanner.js +3 -3
  89. package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
  90. package/dist/admin/admin/src/components/WidgetRoot.js +4 -7
  91. package/dist/admin/admin/src/components/WidgetRoot.js.map +1 -1
  92. package/dist/admin/admin/src/components/WidgetRoot.mjs +1 -1
  93. package/dist/admin/admin/src/components/WidgetRoot.mjs.map +1 -1
  94. package/dist/admin/admin/src/components/Widgets.js +5 -5
  95. package/dist/admin/admin/src/components/Widgets.js.map +1 -1
  96. package/dist/admin/admin/src/core/apis/Plugin.js.map +1 -1
  97. package/dist/admin/admin/src/core/apis/Plugin.mjs.map +1 -1
  98. package/dist/admin/admin/src/core/apis/Widgets.js +1 -1
  99. package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
  100. package/dist/admin/admin/src/core/apis/Widgets.mjs +1 -1
  101. package/dist/admin/admin/src/core/apis/Widgets.mjs.map +1 -1
  102. package/dist/admin/admin/src/core/store/configure.js.map +1 -1
  103. package/dist/admin/admin/src/core/store/configure.mjs.map +1 -1
  104. package/dist/admin/admin/src/core/utils/createHook.js.map +1 -1
  105. package/dist/admin/admin/src/core/utils/createHook.mjs.map +1 -1
  106. package/dist/admin/admin/src/features/Tracking.js +3 -1
  107. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  108. package/dist/admin/admin/src/features/Tracking.mjs +3 -1
  109. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  110. package/dist/admin/admin/src/features/Widgets.js.map +1 -1
  111. package/dist/admin/admin/src/features/Widgets.mjs.map +1 -1
  112. package/dist/admin/admin/src/hooks/useMediaQuery.js +4 -4
  113. package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -1
  114. package/dist/admin/admin/src/hooks/useMenu.js +5 -3
  115. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  116. package/dist/admin/admin/src/hooks/useMenu.mjs +5 -3
  117. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  118. package/dist/admin/admin/src/hooks/useQueryParams.js.map +1 -1
  119. package/dist/admin/admin/src/hooks/useQueryParams.mjs.map +1 -1
  120. package/dist/admin/admin/src/hooks/useThrottledCallback.js.map +1 -1
  121. package/dist/admin/admin/src/hooks/useThrottledCallback.mjs.map +1 -1
  122. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +1 -1
  123. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  124. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +1 -1
  125. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  126. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js +3 -3
  127. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
  128. package/dist/admin/admin/src/pages/Auth/components/Register.js +17 -9
  129. package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
  130. package/dist/admin/admin/src/pages/Auth/components/Register.mjs +15 -7
  131. package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
  132. package/dist/admin/admin/src/pages/Home/HomePage.js +2 -2
  133. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  134. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js +3 -6
  135. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js.map +1 -1
  136. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs +1 -1
  137. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs.map +1 -1
  138. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js +4 -8
  139. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js.map +1 -1
  140. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs +1 -1
  141. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs.map +1 -1
  142. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js +4 -8
  143. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js.map +1 -1
  144. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs +1 -1
  145. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs.map +1 -1
  146. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +2 -2
  147. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  148. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  149. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js +2 -2
  150. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
  151. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js +2 -2
  152. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js.map +1 -1
  153. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js +2 -2
  154. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js.map +1 -1
  155. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js +2 -2
  156. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js.map +1 -1
  157. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js +4 -4
  158. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js.map +1 -1
  159. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js.map +1 -1
  160. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.mjs.map +1 -1
  161. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +0 -2
  162. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  163. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +0 -2
  164. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  165. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js +2 -2
  166. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js.map +1 -1
  167. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js +2 -2
  168. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
  169. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js +2 -2
  170. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js.map +1 -1
  171. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js +10 -10
  172. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js.map +1 -1
  173. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js +3 -3
  174. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js.map +1 -1
  175. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js +5 -5
  176. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
  177. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js +2 -2
  178. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js.map +1 -1
  179. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js +3 -3
  180. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js.map +1 -1
  181. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.js.map +1 -1
  182. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.mjs.map +1 -1
  183. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
  184. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs.map +1 -1
  185. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js +3 -3
  186. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js.map +1 -1
  187. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js +2 -2
  188. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js.map +1 -1
  189. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js +2 -2
  190. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js.map +1 -1
  191. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.mjs.map +1 -1
  192. package/dist/admin/admin/src/translations/ja.json.js +693 -687
  193. package/dist/admin/admin/src/translations/ja.json.js.map +1 -1
  194. package/dist/admin/admin/src/translations/ja.json.mjs +693 -687
  195. package/dist/admin/admin/src/translations/ja.json.mjs.map +1 -1
  196. package/dist/admin/admin/src/translations/pl.json.js +22 -0
  197. package/dist/admin/admin/src/translations/pl.json.js.map +1 -1
  198. package/dist/admin/admin/src/translations/pl.json.mjs +22 -0
  199. package/dist/admin/admin/src/translations/pl.json.mjs.map +1 -1
  200. package/dist/admin/admin/src/utils/arrays.js.map +1 -1
  201. package/dist/admin/admin/src/utils/arrays.mjs.map +1 -1
  202. package/dist/admin/admin/src/utils/baseQuery.js +1 -1
  203. package/dist/admin/admin/src/utils/baseQuery.js.map +1 -1
  204. package/dist/admin/admin/src/utils/baseQuery.mjs +1 -1
  205. package/dist/admin/admin/src/utils/baseQuery.mjs.map +1 -1
  206. package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
  207. package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
  208. package/dist/admin/admin/src/utils/objects.js +43 -11
  209. package/dist/admin/admin/src/utils/objects.js.map +1 -1
  210. package/dist/admin/admin/src/utils/objects.mjs +43 -11
  211. package/dist/admin/admin/src/utils/objects.mjs.map +1 -1
  212. package/dist/admin/admin/src/utils/once.js.map +1 -1
  213. package/dist/admin/admin/src/utils/once.mjs.map +1 -1
  214. package/dist/admin/admin/src/utils/rulesEngine.js +2 -1
  215. package/dist/admin/admin/src/utils/rulesEngine.js.map +1 -1
  216. package/dist/admin/admin/src/utils/rulesEngine.mjs +2 -1
  217. package/dist/admin/admin/src/utils/rulesEngine.mjs.map +1 -1
  218. package/dist/admin/admin/src/utils/shims.js.map +1 -1
  219. package/dist/admin/admin/src/utils/shims.mjs.map +1 -1
  220. package/dist/admin/admin/src/utils/widgetVisibility.js +16 -1
  221. package/dist/admin/admin/src/utils/widgetVisibility.js.map +1 -1
  222. package/dist/admin/admin/src/utils/widgetVisibility.mjs +14 -2
  223. package/dist/admin/admin/src/utils/widgetVisibility.mjs.map +1 -1
  224. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js +2 -2
  225. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js.map +1 -1
  226. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js +2 -2
  227. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js.map +1 -1
  228. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs +2 -2
  229. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs.map +1 -1
  230. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js +2 -2
  231. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js.map +1 -1
  232. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js +2 -2
  233. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js.map +1 -1
  234. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js +3 -3
  235. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js.map +1 -1
  236. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +3 -3
  237. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -1
  238. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js.map +1 -1
  239. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs.map +1 -1
  240. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js.map +1 -1
  241. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs.map +1 -1
  242. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js +2 -2
  243. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js.map +1 -1
  244. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  245. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  246. package/dist/admin/src/StrapiApp.d.ts +2 -2
  247. package/dist/admin/src/components/DescriptionComponentRenderer.d.ts +2 -1
  248. package/dist/admin/src/components/Form.d.ts +14 -12
  249. package/dist/admin/src/components/FormInputs/Renderer.d.ts +1 -1
  250. package/dist/admin/src/components/GuidedTour/Steps/Step.d.ts +1 -1
  251. package/dist/admin/src/components/SubNav.d.ts +1 -1
  252. package/dist/admin/src/components/Table.d.ts +3 -2
  253. package/dist/admin/src/core/apis/Plugin.d.ts +1 -1
  254. package/dist/admin/src/core/utils/createHook.d.ts +6 -6
  255. package/dist/admin/src/hooks/useAdminRoles.d.ts +1 -1
  256. package/dist/admin/src/hooks/useMenu.d.ts +1 -1
  257. package/dist/admin/src/hooks/useQueryParams.d.ts +2 -1
  258. package/dist/admin/src/hooks/useThrottledCallback.d.ts +1 -1
  259. package/dist/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.d.ts +1 -1
  260. package/dist/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.d.ts +1 -1
  261. package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +4 -4
  262. package/dist/admin/src/services/admin.d.ts +6 -6
  263. package/dist/admin/src/services/api.d.ts +1 -1
  264. package/dist/admin/src/services/apiTokens.d.ts +2 -2
  265. package/dist/admin/src/services/auth.d.ts +12 -12
  266. package/dist/admin/src/services/contentApi.d.ts +1 -1
  267. package/dist/admin/src/services/contentManager.d.ts +1 -1
  268. package/dist/admin/src/services/homepage.d.ts +3 -3
  269. package/dist/admin/src/services/transferTokens.d.ts +1 -1
  270. package/dist/admin/src/services/users.d.ts +8 -8
  271. package/dist/admin/src/services/webhooks.d.ts +2 -2
  272. package/dist/admin/src/utils/arrays.d.ts +1 -1
  273. package/dist/admin/src/utils/baseQuery.d.ts +1 -1
  274. package/dist/admin/src/utils/getFetchClient.d.ts +7 -7
  275. package/dist/admin/src/utils/objects.d.ts +6 -4
  276. package/dist/admin/src/utils/once.d.ts +1 -1
  277. package/dist/admin/src/utils/widgetVisibility.d.ts +11 -0
  278. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/tableHeaders.d.ts +2 -1
  279. package/dist/ee/admin/src/services/ai.d.ts +3 -3
  280. package/dist/ee/admin/src/services/auditLogs.d.ts +1 -1
  281. package/dist/server/server/src/services/permission/sections-builder/handlers.js +9 -2
  282. package/dist/server/server/src/services/permission/sections-builder/handlers.js.map +1 -1
  283. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs +9 -2
  284. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs.map +1 -1
  285. package/dist/server/server/src/services/role.js +5 -1
  286. package/dist/server/server/src/services/role.js.map +1 -1
  287. package/dist/server/server/src/services/role.mjs +5 -1
  288. package/dist/server/server/src/services/role.mjs.map +1 -1
  289. package/dist/server/server/src/validation/common-validators.js +19 -11
  290. package/dist/server/server/src/validation/common-validators.js.map +1 -1
  291. package/dist/server/server/src/validation/common-validators.mjs +19 -11
  292. package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
  293. package/dist/server/server/src/validation/permission.js +1 -1
  294. package/dist/server/server/src/validation/permission.js.map +1 -1
  295. package/dist/server/server/src/validation/permission.mjs +1 -1
  296. package/dist/server/server/src/validation/permission.mjs.map +1 -1
  297. package/dist/server/server/src/validation/role.js +2 -2
  298. package/dist/server/server/src/validation/role.js.map +1 -1
  299. package/dist/server/server/src/validation/role.mjs +2 -2
  300. package/dist/server/server/src/validation/role.mjs.map +1 -1
  301. package/dist/server/src/services/permission/sections-builder/handlers.d.ts.map +1 -1
  302. package/dist/server/src/services/role.d.ts.map +1 -1
  303. package/dist/server/src/validation/common-validators.d.ts.map +1 -1
  304. package/dist/server/src/validation/role.d.ts.map +1 -1
  305. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"SingleSignOnPage.js","sources":["../../../../../../../../ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.tsx"],"sourcesContent":["import {\n Button,\n Flex,\n Grid,\n MultiSelect,\n MultiSelectOption,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport {\n Form,\n FormHelpers,\n InputProps,\n useField,\n} from '../../../../../../admin/src/components/Form';\nimport { InputRenderer } from '../../../../../../admin/src/components/FormInputs/Renderer';\nimport { GradientBadge } from '../../../../../../admin/src/components/GradientBadge';\nimport { Layouts } from '../../../../../../admin/src/components/Layouts/Layout';\nimport { Page } from '../../../../../../admin/src/components/PageHelpers';\nimport { useTypedSelector } from '../../../../../../admin/src/core/store/hooks';\nimport { useNotification } from '../../../../../../admin/src/features/Notifications';\nimport { useAdminRoles } from '../../../../../../admin/src/hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../../../admin/src/hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../../../admin/src/hooks/useRBAC';\nimport {\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} from '../../../../../../admin/src/services/auth';\nimport { isBaseQueryError } from '../../../../../../admin/src/utils/baseQuery';\nimport { translatedErrors } from '../../../../../../admin/src/utils/translatedErrors';\nimport { ProvidersOptions } from '../../../../../../shared/contracts/admin';\n\nconst SCHEMA = yup.object().shape({\n autoRegister: yup.bool().required(translatedErrors.required),\n defaultRole: yup.mixed().when('autoRegister', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n }),\n ssoLockedRoles: yup\n .array()\n .nullable()\n .of(\n yup.mixed().when('ssoLockedRoles', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n })\n ),\n});\n\nexport const SingleSignOnPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector((state) => state.admin_app.permissions);\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingProviderOptions, data } = useGetProviderOptionsQuery();\n\n const [updateProviderOptions, { isLoading: isSubmittingForm }] =\n useUpdateProviderOptionsMutation();\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate, canRead: canReadRoles },\n } = useRBAC({\n ...permissions.settings?.sso,\n readRoles: permissions.settings?.roles.read ?? [],\n });\n\n const { roles, isLoading: isLoadingRoles } = useAdminRoles(undefined, {\n skip: !canReadRoles,\n });\n\n const handleSubmit = async (\n body: ProvidersOptions.Request['body'],\n helpers: FormHelpers<ProvidersOptions.Request['body']>\n ) => {\n try {\n const res = await updateProviderOptions(body);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again.',\n }),\n });\n }\n };\n\n const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'SSO',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isSubmittingForm || isLoadingData} tabIndex={-1}>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n validationSchema={SCHEMA}\n disabled={!canUpdate}\n initialValues={\n data || {\n autoRegister: false,\n defaultRole: null,\n ssoLockedRoles: null,\n }\n }\n >\n {({ modified, isSubmitting }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={!modified}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n }\n title={formatMessage({\n id: 'Settings.sso.title',\n defaultMessage: 'Single Sign-On',\n })}\n subtitle={formatMessage({\n id: 'Settings.sso.description',\n defaultMessage: 'Configure the settings for the Single Sign-On feature.',\n })}\n secondaryAction={\n <GradientBadge\n label={formatMessage({\n id: 'components.premiumFeature.title',\n defaultMessage: 'Premium feature',\n })}\n />\n }\n />\n <Layouts.Content>\n {isSubmitting || isLoadingData ? (\n <Page.Loading />\n ) : (\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n background=\"neutral0\"\n padding={6}\n shadow=\"filterShadow\"\n hasRadius\n >\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid.Root gap={4}>\n {[\n {\n hint: formatMessage({\n id: 'Settings.sso.form.registration.description',\n defaultMessage: 'Create new user on SSO login if no account exists',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.registration.label',\n defaultMessage: 'Auto-registration',\n }),\n name: 'autoRegister',\n size: 6,\n type: 'boolean' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.defaultRole.description',\n defaultMessage:\n 'It will attach the new authenticated user to the selected role',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.defaultRole.label',\n defaultMessage: 'Default role',\n }),\n name: 'defaultRole',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.description',\n defaultMessage:\n 'Select the roles for which you want to disable the local authentication',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.label',\n defaultMessage: 'Local authentication lock-out',\n }),\n name: 'ssoLockedRoles',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'multi' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <FormInputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Flex>\n )}\n </Layouts.Content>\n </>\n )}\n </Form>\n </Page.Main>\n </>\n );\n};\n\ntype FormInputProps = InputProps | MultiSelectInputProps;\n\nconst FormInputRenderer = (props: FormInputProps) => {\n switch (props.type) {\n case 'multi':\n return <MultiSelectInput {...props} />;\n default:\n return <InputRenderer {...props} />;\n }\n};\n\ntype MultiSelectInputProps = Omit<Extract<InputProps, { type: 'enumeration' }>, 'type'> & {\n type: 'multi';\n};\n\nconst MultiSelectInput = ({ hint, label, name, options, ...props }: MultiSelectInputProps) => {\n const field = useField(name);\n\n return (\n <Field.Root name={name} hint={hint} error={field.error}>\n <Field.Label>{label}</Field.Label>\n <MultiSelect\n onChange={(value) => field.onChange('ssoLockedRoles', value)}\n onClear={() => field.onChange('ssoLockedRoles', [])}\n value={field.value ?? []}\n withTags\n {...props}\n >\n {options.map(({ label, value }) => (\n <MultiSelectOption key={value} value={value}>\n {label}\n </MultiSelectOption>\n ))}\n </MultiSelect>\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n );\n};\n\nexport const ProtectedSSO = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.sso?.main);\n\n return (\n <Page.Protect permissions={permissions}>\n <SingleSignOnPage />\n </Page.Protect>\n );\n};\n"],"names":["SCHEMA","yup","object","shape","autoRegister","bool","required","translatedErrors","defaultRole","mixed","when","value","initSchema","nullable","ssoLockedRoles","array","of","SingleSignOnPage","formatMessage","useIntl","permissions","useTypedSelector","state","admin_app","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","isLoading","isLoadingProviderOptions","data","useGetProviderOptionsQuery","updateProviderOptions","isSubmittingForm","useUpdateProviderOptionsMutation","isLoadingPermissions","allowedActions","canUpdate","canRead","canReadRoles","useRBAC","settings","sso","readRoles","roles","read","isLoadingRoles","useAdminRoles","undefined","skip","handleSubmit","body","helpers","res","isBaseQueryError","error","name","setErrors","type","message","id","err","defaultMessage","isLoadingData","_jsxs","_Fragment","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","Layouts","Header","primaryAction","Button","loading","startIcon","Check","fullWidth","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","Root","hint","size","options","map","toString","placeholder","field","Item","col","xs","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,MAAMA,MAAAA,GAASC,cAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AAChCC,IAAAA,YAAAA,EAAcH,eAAII,IAAI,EAAA,CAAGC,QAAQ,CAACC,kCAAiBD,QAAQ,CAAA;AAC3DE,IAAAA,WAAAA,EAAaP,eAAIQ,KAAK,EAAA,CAAGC,IAAI,CAAC,cAAA,EAAgB,CAACC,KAAAA,EAAOC,UAAAA,GAAAA;QACpD,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,kCAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,IAAA,CAAA,CAAA;AACAC,IAAAA,cAAAA,EAAgBb,cAAAA,CACbc,KAAK,EAAA,CACLF,QAAQ,GACRG,EAAE,CACDf,cAAAA,CAAIQ,KAAK,EAAA,CAAGC,IAAI,CAAC,gBAAA,EAAkB,CAACC,KAAAA,EAAOC,UAAAA,GAAAA;QACzC,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,kCAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,IAAA,CAAA,CAAA;AAEN,CAAA,CAAA;MAEaI,gBAAAA,GAAmB,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAC1B,IAAA,MAAMC,cAAcC,sBAAAA,CAAiB,CAACC,QAAUA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAAA;IAC3E,MAAM,EAAEI,kBAAkB,EAAE,GAAGC,6BAAAA,EAAAA;AAC/B,IAAA,MAAM,EACJC,uBAAAA,EAAyBC,cAAc,EACvCC,+BAAAA,EAAiCC,sBAAsB,EACxD,GAAGC,qCAAAA,EAAAA;AAEJ,IAAA,MAAM,EAAEC,SAAAA,EAAWC,wBAAwB,EAAEC,IAAI,EAAE,GAAGC,+BAAAA,EAAAA;AAEtD,IAAA,MAAM,CAACC,qBAAAA,EAAuB,EAAEJ,WAAWK,gBAAgB,EAAE,CAAC,GAC5DC,qCAAAA,EAAAA;AAEF,IAAA,MAAM,EACJN,SAAAA,EAAWO,oBAAoB,EAC/BC,cAAAA,EAAgB,EAAEC,SAAS,EAAEC,OAAAA,EAASC,YAAY,EAAE,EACrD,GAAGC,eAAAA,CAAQ;QACV,GAAGvB,WAAAA,CAAYwB,QAAQ,EAAEC,GAAG;AAC5BC,QAAAA,SAAAA,EAAW1B,WAAAA,CAAYwB,QAAQ,EAAEG,KAAAA,CAAMC,QAAQ;AACjD,KAAA,CAAA;IAEA,MAAM,EAAED,KAAK,EAAEhB,SAAAA,EAAWkB,cAAc,EAAE,GAAGC,4BAAcC,SAAAA,EAAW;AACpEC,QAAAA,IAAAA,EAAM,CAACV;AACT,KAAA,CAAA;IAEA,MAAMW,YAAAA,GAAe,OACnBC,IAAAA,EACAC,OAAAA,GAAAA;QAEA,IAAI;YACF,MAAMC,GAAAA,GAAM,MAAMrB,qBAAAA,CAAsBmB,IAAAA,CAAAA;AAExC,YAAA,IAAI,WAAWE,GAAAA,EAAK;gBAClB,IAAIC,0BAAAA,CAAiBD,IAAIE,KAAK,CAAA,IAAKF,IAAIE,KAAK,CAACC,IAAI,KAAK,iBAAA,EAAmB;AACvEJ,oBAAAA,OAAAA,CAAQK,SAAS,CAAC/B,sBAAAA,CAAuB2B,GAAAA,CAAIE,KAAK,CAAA,CAAA;gBACpD,CAAA,MAAO;oBACLlC,kBAAAA,CAAmB;wBACjBqC,IAAAA,EAAM,QAAA;wBACNC,OAAAA,EAASnC,cAAAA,CAAe6B,IAAIE,KAAK;AACnC,qBAAA,CAAA;AACF,gBAAA;AAEA,gBAAA;AACF,YAAA;YAEAlC,kBAAAA,CAAmB;gBACjBqC,IAAAA,EAAM,SAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAAA,CAAc;oBAAE6C,EAAAA,EAAI;AAA6B,iBAAA;AAC5D,aAAA,CAAA;AACF,QAAA,CAAA,CAAE,OAAOC,GAAAA,EAAK;YACZxC,kBAAAA,CAAmB;gBACjBqC,IAAAA,EAAM,QAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAAA,CAAc;oBACrB6C,EAAAA,EAAI,oBAAA;oBACJE,cAAAA,EAAgB;AAClB,iBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,IAAA,CAAA;IAEA,MAAMC,aAAAA,GAAgBjB,kBAAkBX,oBAAAA,IAAwBN,wBAAAA;IAEhE,qBACEmC,eAAA,CAAAC,mBAAA,EAAA;;AACE,0BAAAC,cAAA,CAACC,iBAAKC,KAAK,EAAA;0BACRrD,aAAAA,CACC;oBAAE6C,EAAAA,EAAI,oBAAA;oBAAsBE,cAAAA,EAAgB;iBAAoB,EAChE;oBACEN,IAAAA,EAAM;AACR,iBAAA;;AAGJ,0BAAAU,cAAA,CAACC,iBAAKE,IAAI,EAAA;AAACC,gBAAAA,WAAAA,EAAWrC,gBAAAA,IAAoB8B,aAAAA;AAAeQ,gBAAAA,QAAAA,EAAU,EAAC;AAClE,gBAAA,QAAA,gBAAAL,cAAA,CAACM,SAAAA,EAAAA;oBACCC,MAAAA,EAAO,KAAA;oBACPC,QAAAA,EAAUxB,YAAAA;oBACVyB,gBAAAA,EAAkB9E,MAAAA;AAClB+E,oBAAAA,QAAAA,EAAU,CAACvC,SAAAA;AACXwC,oBAAAA,aAAAA,EACE/C,IAAAA,IAAQ;wBACN7B,YAAAA,EAAc,KAAA;wBACdI,WAAAA,EAAa,IAAA;wBACbM,cAAAA,EAAgB;AAClB,qBAAA;AAGD,oBAAA,QAAA,EAAA,CAAC,EAAEmE,QAAQ,EAAEC,YAAY,EAAE,iBAC1Bf,eAAA,CAAAC,mBAAA,EAAA;;AACE,8CAAAC,cAAA,CAACc,eAAQC,MAAM,EAAA;AACbC,oCAAAA,aAAAA,gBACEhB,cAAA,CAACiB,mBAAAA,EAAAA;AACCP,wCAAAA,QAAAA,EAAU,CAACE,QAAAA;wCACXM,OAAAA,EAASL,YAAAA;AACTM,wCAAAA,SAAAA,gBAAWnB,cAAA,CAACoB,WAAAA,EAAAA,EAAAA,CAAAA;wCACZ5B,IAAAA,EAAK,QAAA;wCACL6B,SAAS,EAAA,IAAA;kDAERxE,aAAAA,CAAc;4CACb6C,EAAAA,EAAI,aAAA;4CACJE,cAAAA,EAAgB;AAClB,yCAAA;;AAGJ0B,oCAAAA,KAAAA,EAAOzE,aAAAA,CAAc;wCACnB6C,EAAAA,EAAI,oBAAA;wCACJE,cAAAA,EAAgB;AAClB,qCAAA,CAAA;AACA2B,oCAAAA,QAAAA,EAAU1E,aAAAA,CAAc;wCACtB6C,EAAAA,EAAI,0BAAA;wCACJE,cAAAA,EAAgB;AAClB,qCAAA,CAAA;AACA4B,oCAAAA,eAAAA,gBACExB,cAAA,CAACyB,2BAAAA,EAAAA;AACCC,wCAAAA,KAAAA,EAAO7E,aAAAA,CAAc;4CACnB6C,EAAAA,EAAI,iCAAA;4CACJE,cAAAA,EAAgB;AAClB,yCAAA;;;AAIN,8CAAAI,cAAA,CAACc,eAAQa,OAAO,EAAA;AACbd,oCAAAA,QAAAA,EAAAA,YAAAA,IAAgBhB,aAAAA,iBACfG,cAAA,CAACC,gBAAAA,CAAK2B,OAAO,sBAEb9B,eAAA,CAAC+B,iBAAAA,EAAAA;wCACCC,SAAAA,EAAU,QAAA;wCACVC,UAAAA,EAAW,SAAA;wCACXC,GAAAA,EAAK,CAAA;wCACLC,UAAAA,EAAW,UAAA;wCACXC,OAAAA,EAAS,CAAA;wCACTC,MAAAA,EAAO,cAAA;wCACPC,SAAS,EAAA,IAAA;;0DAETpC,cAAA,CAACqC,uBAAAA,EAAAA;gDAAWC,OAAAA,EAAQ,OAAA;gDAAQC,GAAAA,EAAI,IAAA;0DAC7B1F,aAAAA,CAAc;oDACb6C,EAAAA,EAAI,iBAAA;oDACJE,cAAAA,EAAgB;AAClB,iDAAA;;AAEF,0DAAAI,cAAA,CAACwC,kBAAKC,IAAI,EAAA;gDAACT,GAAAA,EAAK,CAAA;AACb,gDAAA,QAAA,EAAA;AACC,oDAAA;AACEU,wDAAAA,IAAAA,EAAM7F,aAAAA,CAAc;4DAClB6C,EAAAA,EAAI,4CAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAAA,CAAc;4DACnB6C,EAAAA,EAAI,sCAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;wDACAN,IAAAA,EAAM,cAAA;wDACNqD,IAAAA,EAAM,CAAA;wDACNnD,IAAAA,EAAM;AACR,qDAAA;AACA,oDAAA;AACEkD,wDAAAA,IAAAA,EAAM7F,aAAAA,CAAc;4DAClB6C,EAAAA,EAAI,2CAAA;4DACJE,cAAAA,EACE;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAAA,CAAc;4DACnB6C,EAAAA,EAAI,qCAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;wDACAN,IAAAA,EAAM,aAAA;wDACNsD,OAAAA,EAASlE,KAAAA,CAAMmE,GAAG,CAAC,CAAC,EAAEnD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAAA,EAAOpC,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGoD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAalG,aAAAA,CAAc;4DACzB6C,EAAAA,EAAI,2CAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;wDACA+C,IAAAA,EAAM,CAAA;wDACNnD,IAAAA,EAAM;AACR,qDAAA;AACA,oDAAA;AACEkD,wDAAAA,IAAAA,EAAM7F,aAAAA,CAAc;4DAClB6C,EAAAA,EAAI,uDAAA;4DACJE,cAAAA,EACE;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAAA,CAAc;4DACnB6C,EAAAA,EAAI,iDAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;wDACAN,IAAAA,EAAM,gBAAA;wDACNsD,OAAAA,EAASlE,KAAAA,CAAMmE,GAAG,CAAC,CAAC,EAAEnD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAAA,EAAOpC,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGoD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAalG,aAAAA,CAAc;4DACzB6C,EAAAA,EAAI,2CAAA;4DACJE,cAAAA,EAAgB;AAClB,yDAAA,CAAA;wDACA+C,IAAAA,EAAM,CAAA;wDACNnD,IAAAA,EAAM;AACR;iDACD,CAACqD,GAAG,CAAC,CAAC,EAAEF,IAAI,EAAE,GAAGK,KAAAA,EAAO,iBACvBhD,cAAA,CAACwC,iBAAAA,CAAKS,IAAI,EAAA;wDAERC,GAAAA,EAAKP,IAAAA;wDACLQ,EAAAA,EAAI,EAAA;wDACJrB,SAAAA,EAAU,QAAA;wDACVC,UAAAA,EAAW,SAAA;AAEX,wDAAA,QAAA,gBAAA/B,cAAA,CAACoD,iBAAAA,EAAAA;AAAmB,4DAAA,GAAGJ;;AANlBA,qDAAAA,EAAAA,KAAAA,CAAM1D,IAAI,CAAA;;;;;;;;;;;AAmBzC;AAIA,MAAM8D,oBAAoB,CAACC,KAAAA,GAAAA;AACzB,IAAA,OAAQA,MAAM7D,IAAI;QAChB,KAAK,OAAA;AACH,YAAA,qBAAOQ,cAAA,CAACsD,gBAAAA,EAAAA;AAAkB,gBAAA,GAAGD;;AAC/B,QAAA;AACE,YAAA,qBAAOrD,cAAA,CAACuD,sBAAAA,EAAAA;AAAe,gBAAA,GAAGF;;AAC9B;AACF,CAAA;AAMA,MAAMC,gBAAAA,GAAmB,CAAC,EAAEZ,IAAI,EAAEhB,KAAK,EAAEpC,IAAI,EAAEsD,OAAO,EAAE,GAAGS,KAAAA,EAA8B,GAAA;AACvF,IAAA,MAAML,QAAQQ,aAAAA,CAASlE,IAAAA,CAAAA;IAEvB,qBACEQ,eAAA,CAAC2D,mBAAMhB,IAAI,EAAA;QAACnD,IAAAA,EAAMA,IAAAA;QAAMoD,IAAAA,EAAMA,IAAAA;AAAMrD,QAAAA,KAAAA,EAAO2D,MAAM3D,KAAK;;AACpD,0BAAAW,cAAA,CAACyD,mBAAMC,KAAK,EAAA;AAAEhC,gBAAAA,QAAAA,EAAAA;;0BACd1B,cAAA,CAAC2D,wBAAAA,EAAAA;AACCC,gBAAAA,QAAAA,EAAU,CAACtH,KAAAA,GAAU0G,KAAAA,CAAMY,QAAQ,CAAC,gBAAA,EAAkBtH,KAAAA,CAAAA;AACtDuH,gBAAAA,OAAAA,EAAS,IAAMb,KAAAA,CAAMY,QAAQ,CAAC,kBAAkB,EAAE,CAAA;gBAClDtH,KAAAA,EAAO0G,KAAAA,CAAM1G,KAAK,IAAI,EAAE;gBACxBwH,QAAQ,EAAA,IAAA;AACP,gBAAA,GAAGT,KAAK;0BAERT,OAAAA,CAAQC,GAAG,CAAC,CAAC,EAAEnB,KAAK,EAAEpF,KAAK,EAAE,iBAC5B0D,cAAA,CAAC+D,8BAAAA,EAAAA;wBAA8BzH,KAAAA,EAAOA,KAAAA;AACnCoF,wBAAAA,QAAAA,EAAAA;AADqBpF,qBAAAA,EAAAA,KAAAA,CAAAA;;AAK5B,0BAAA0D,cAAA,CAACyD,mBAAMO,IAAI,EAAA,EAAA,CAAA;AACX,0BAAAhE,cAAA,CAACyD,mBAAMQ,KAAK,EAAA,EAAA;;;AAGlB,CAAA;MAEaC,YAAAA,GAAe,IAAA;IAC1B,MAAMnH,WAAAA,GAAcC,sBAAAA,CAAiB,CAACC,KAAAA,GAAUA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAACwB,QAAQ,EAAEC,GAAAA,EAAK2F,IAAAA,CAAAA;IAE3F,qBACEnE,cAAA,CAACC,iBAAKmE,OAAO,EAAA;QAACrH,WAAAA,EAAaA,WAAAA;AACzB,QAAA,QAAA,gBAAAiD,cAAA,CAACpD,gBAAAA,EAAAA,EAAAA;;AAGP;;;;;"}
1
+ {"version":3,"file":"SingleSignOnPage.js","sources":["../../../../../../../../ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.tsx"],"sourcesContent":["import {\n Button,\n Flex,\n Grid,\n MultiSelect,\n MultiSelectOption,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport {\n Form,\n FormHelpers,\n InputProps,\n useField,\n} from '../../../../../../admin/src/components/Form';\nimport { InputRenderer } from '../../../../../../admin/src/components/FormInputs/Renderer';\nimport { GradientBadge } from '../../../../../../admin/src/components/GradientBadge';\nimport { Layouts } from '../../../../../../admin/src/components/Layouts/Layout';\nimport { Page } from '../../../../../../admin/src/components/PageHelpers';\nimport { useTypedSelector } from '../../../../../../admin/src/core/store/hooks';\nimport { useNotification } from '../../../../../../admin/src/features/Notifications';\nimport { useAdminRoles } from '../../../../../../admin/src/hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../../../admin/src/hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../../../admin/src/hooks/useRBAC';\nimport {\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} from '../../../../../../admin/src/services/auth';\nimport { isBaseQueryError } from '../../../../../../admin/src/utils/baseQuery';\nimport { translatedErrors } from '../../../../../../admin/src/utils/translatedErrors';\nimport { ProvidersOptions } from '../../../../../../shared/contracts/admin';\n\nconst SCHEMA = yup.object().shape({\n autoRegister: yup.bool().required(translatedErrors.required),\n defaultRole: yup.mixed().when('autoRegister', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n }),\n ssoLockedRoles: yup\n .array()\n .nullable()\n .of(\n yup.mixed().when('ssoLockedRoles', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n })\n ),\n});\n\nexport const SingleSignOnPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector((state) => state.admin_app.permissions);\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingProviderOptions, data } = useGetProviderOptionsQuery();\n\n const [updateProviderOptions, { isLoading: isSubmittingForm }] =\n useUpdateProviderOptionsMutation();\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate, canRead: canReadRoles },\n } = useRBAC({\n ...permissions.settings?.sso,\n readRoles: permissions.settings?.roles.read ?? [],\n });\n\n const { roles, isLoading: isLoadingRoles } = useAdminRoles(undefined, {\n skip: !canReadRoles,\n });\n\n const handleSubmit = async (\n body: ProvidersOptions.Request['body'],\n helpers: FormHelpers<ProvidersOptions.Request['body']>\n ) => {\n try {\n const res = await updateProviderOptions(body);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again.',\n }),\n });\n }\n };\n\n const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'SSO',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isSubmittingForm || isLoadingData} tabIndex={-1}>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n validationSchema={SCHEMA}\n disabled={!canUpdate}\n initialValues={\n data || {\n autoRegister: false,\n defaultRole: null,\n ssoLockedRoles: null,\n }\n }\n >\n {({ modified, isSubmitting }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={!modified}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n }\n title={formatMessage({\n id: 'Settings.sso.title',\n defaultMessage: 'Single Sign-On',\n })}\n subtitle={formatMessage({\n id: 'Settings.sso.description',\n defaultMessage: 'Configure the settings for the Single Sign-On feature.',\n })}\n secondaryAction={\n <GradientBadge\n label={formatMessage({\n id: 'components.premiumFeature.title',\n defaultMessage: 'Premium feature',\n })}\n />\n }\n />\n <Layouts.Content>\n {isSubmitting || isLoadingData ? (\n <Page.Loading />\n ) : (\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n background=\"neutral0\"\n padding={6}\n shadow=\"filterShadow\"\n hasRadius\n >\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid.Root gap={4}>\n {[\n {\n hint: formatMessage({\n id: 'Settings.sso.form.registration.description',\n defaultMessage: 'Create new user on SSO login if no account exists',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.registration.label',\n defaultMessage: 'Auto-registration',\n }),\n name: 'autoRegister',\n size: 6,\n type: 'boolean' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.defaultRole.description',\n defaultMessage:\n 'It will attach the new authenticated user to the selected role',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.defaultRole.label',\n defaultMessage: 'Default role',\n }),\n name: 'defaultRole',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.description',\n defaultMessage:\n 'Select the roles for which you want to disable the local authentication',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.label',\n defaultMessage: 'Local authentication lock-out',\n }),\n name: 'ssoLockedRoles',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'multi' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <FormInputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Flex>\n )}\n </Layouts.Content>\n </>\n )}\n </Form>\n </Page.Main>\n </>\n );\n};\n\ntype FormInputProps = InputProps | MultiSelectInputProps;\n\nconst FormInputRenderer = (props: FormInputProps) => {\n switch (props.type) {\n case 'multi':\n return <MultiSelectInput {...props} />;\n default:\n return <InputRenderer {...props} />;\n }\n};\n\ntype MultiSelectInputProps = Omit<Extract<InputProps, { type: 'enumeration' }>, 'type'> & {\n type: 'multi';\n};\n\nconst MultiSelectInput = ({ hint, label, name, options, ...props }: MultiSelectInputProps) => {\n const field = useField<string[]>(name);\n\n return (\n <Field.Root name={name} hint={hint} error={field.error}>\n <Field.Label>{label}</Field.Label>\n <MultiSelect\n onChange={(value) => field.onChange('ssoLockedRoles', value)}\n onClear={() => field.onChange('ssoLockedRoles', [])}\n value={field.value ?? []}\n withTags\n {...props}\n >\n {options.map(({ label, value }) => (\n <MultiSelectOption key={value} value={value}>\n {label}\n </MultiSelectOption>\n ))}\n </MultiSelect>\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n );\n};\n\nexport const ProtectedSSO = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.sso?.main);\n\n return (\n <Page.Protect permissions={permissions}>\n <SingleSignOnPage />\n </Page.Protect>\n );\n};\n"],"names":["SCHEMA","yup","object","shape","autoRegister","bool","required","translatedErrors","defaultRole","mixed","when","value","initSchema","nullable","ssoLockedRoles","array","of","SingleSignOnPage","formatMessage","useIntl","permissions","useTypedSelector","state","admin_app","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","isLoading","isLoadingProviderOptions","data","useGetProviderOptionsQuery","updateProviderOptions","isSubmittingForm","useUpdateProviderOptionsMutation","isLoadingPermissions","allowedActions","canUpdate","canRead","canReadRoles","useRBAC","settings","sso","readRoles","roles","read","isLoadingRoles","useAdminRoles","undefined","skip","handleSubmit","body","helpers","res","isBaseQueryError","error","name","setErrors","type","message","id","err","defaultMessage","isLoadingData","_jsxs","_Fragment","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","Layouts","Header","primaryAction","Button","loading","startIcon","Check","fullWidth","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","Root","hint","size","options","map","toString","placeholder","field","Item","col","xs","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SingleSignOnPage.mjs","sources":["../../../../../../../../ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.tsx"],"sourcesContent":["import {\n Button,\n Flex,\n Grid,\n MultiSelect,\n MultiSelectOption,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport {\n Form,\n FormHelpers,\n InputProps,\n useField,\n} from '../../../../../../admin/src/components/Form';\nimport { InputRenderer } from '../../../../../../admin/src/components/FormInputs/Renderer';\nimport { GradientBadge } from '../../../../../../admin/src/components/GradientBadge';\nimport { Layouts } from '../../../../../../admin/src/components/Layouts/Layout';\nimport { Page } from '../../../../../../admin/src/components/PageHelpers';\nimport { useTypedSelector } from '../../../../../../admin/src/core/store/hooks';\nimport { useNotification } from '../../../../../../admin/src/features/Notifications';\nimport { useAdminRoles } from '../../../../../../admin/src/hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../../../admin/src/hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../../../admin/src/hooks/useRBAC';\nimport {\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} from '../../../../../../admin/src/services/auth';\nimport { isBaseQueryError } from '../../../../../../admin/src/utils/baseQuery';\nimport { translatedErrors } from '../../../../../../admin/src/utils/translatedErrors';\nimport { ProvidersOptions } from '../../../../../../shared/contracts/admin';\n\nconst SCHEMA = yup.object().shape({\n autoRegister: yup.bool().required(translatedErrors.required),\n defaultRole: yup.mixed().when('autoRegister', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n }),\n ssoLockedRoles: yup\n .array()\n .nullable()\n .of(\n yup.mixed().when('ssoLockedRoles', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n })\n ),\n});\n\nexport const SingleSignOnPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector((state) => state.admin_app.permissions);\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingProviderOptions, data } = useGetProviderOptionsQuery();\n\n const [updateProviderOptions, { isLoading: isSubmittingForm }] =\n useUpdateProviderOptionsMutation();\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate, canRead: canReadRoles },\n } = useRBAC({\n ...permissions.settings?.sso,\n readRoles: permissions.settings?.roles.read ?? [],\n });\n\n const { roles, isLoading: isLoadingRoles } = useAdminRoles(undefined, {\n skip: !canReadRoles,\n });\n\n const handleSubmit = async (\n body: ProvidersOptions.Request['body'],\n helpers: FormHelpers<ProvidersOptions.Request['body']>\n ) => {\n try {\n const res = await updateProviderOptions(body);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again.',\n }),\n });\n }\n };\n\n const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'SSO',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isSubmittingForm || isLoadingData} tabIndex={-1}>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n validationSchema={SCHEMA}\n disabled={!canUpdate}\n initialValues={\n data || {\n autoRegister: false,\n defaultRole: null,\n ssoLockedRoles: null,\n }\n }\n >\n {({ modified, isSubmitting }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={!modified}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n }\n title={formatMessage({\n id: 'Settings.sso.title',\n defaultMessage: 'Single Sign-On',\n })}\n subtitle={formatMessage({\n id: 'Settings.sso.description',\n defaultMessage: 'Configure the settings for the Single Sign-On feature.',\n })}\n secondaryAction={\n <GradientBadge\n label={formatMessage({\n id: 'components.premiumFeature.title',\n defaultMessage: 'Premium feature',\n })}\n />\n }\n />\n <Layouts.Content>\n {isSubmitting || isLoadingData ? (\n <Page.Loading />\n ) : (\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n background=\"neutral0\"\n padding={6}\n shadow=\"filterShadow\"\n hasRadius\n >\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid.Root gap={4}>\n {[\n {\n hint: formatMessage({\n id: 'Settings.sso.form.registration.description',\n defaultMessage: 'Create new user on SSO login if no account exists',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.registration.label',\n defaultMessage: 'Auto-registration',\n }),\n name: 'autoRegister',\n size: 6,\n type: 'boolean' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.defaultRole.description',\n defaultMessage:\n 'It will attach the new authenticated user to the selected role',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.defaultRole.label',\n defaultMessage: 'Default role',\n }),\n name: 'defaultRole',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.description',\n defaultMessage:\n 'Select the roles for which you want to disable the local authentication',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.label',\n defaultMessage: 'Local authentication lock-out',\n }),\n name: 'ssoLockedRoles',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'multi' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <FormInputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Flex>\n )}\n </Layouts.Content>\n </>\n )}\n </Form>\n </Page.Main>\n </>\n );\n};\n\ntype FormInputProps = InputProps | MultiSelectInputProps;\n\nconst FormInputRenderer = (props: FormInputProps) => {\n switch (props.type) {\n case 'multi':\n return <MultiSelectInput {...props} />;\n default:\n return <InputRenderer {...props} />;\n }\n};\n\ntype MultiSelectInputProps = Omit<Extract<InputProps, { type: 'enumeration' }>, 'type'> & {\n type: 'multi';\n};\n\nconst MultiSelectInput = ({ hint, label, name, options, ...props }: MultiSelectInputProps) => {\n const field = useField(name);\n\n return (\n <Field.Root name={name} hint={hint} error={field.error}>\n <Field.Label>{label}</Field.Label>\n <MultiSelect\n onChange={(value) => field.onChange('ssoLockedRoles', value)}\n onClear={() => field.onChange('ssoLockedRoles', [])}\n value={field.value ?? []}\n withTags\n {...props}\n >\n {options.map(({ label, value }) => (\n <MultiSelectOption key={value} value={value}>\n {label}\n </MultiSelectOption>\n ))}\n </MultiSelect>\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n );\n};\n\nexport const ProtectedSSO = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.sso?.main);\n\n return (\n <Page.Protect permissions={permissions}>\n <SingleSignOnPage />\n </Page.Protect>\n );\n};\n"],"names":["SCHEMA","yup","object","shape","autoRegister","bool","required","translatedErrors","defaultRole","mixed","when","value","initSchema","nullable","ssoLockedRoles","array","of","SingleSignOnPage","formatMessage","useIntl","permissions","useTypedSelector","state","admin_app","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","isLoading","isLoadingProviderOptions","data","useGetProviderOptionsQuery","updateProviderOptions","isSubmittingForm","useUpdateProviderOptionsMutation","isLoadingPermissions","allowedActions","canUpdate","canRead","canReadRoles","useRBAC","settings","sso","readRoles","roles","read","isLoadingRoles","useAdminRoles","undefined","skip","handleSubmit","body","helpers","res","isBaseQueryError","error","name","setErrors","type","message","id","err","defaultMessage","isLoadingData","_jsxs","_Fragment","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","Layouts","Header","primaryAction","Button","loading","startIcon","Check","fullWidth","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","Root","hint","size","options","map","toString","placeholder","field","Item","col","xs","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":"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"}
1
+ {"version":3,"file":"SingleSignOnPage.mjs","sources":["../../../../../../../../ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.tsx"],"sourcesContent":["import {\n Button,\n Flex,\n Grid,\n MultiSelect,\n MultiSelectOption,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport {\n Form,\n FormHelpers,\n InputProps,\n useField,\n} from '../../../../../../admin/src/components/Form';\nimport { InputRenderer } from '../../../../../../admin/src/components/FormInputs/Renderer';\nimport { GradientBadge } from '../../../../../../admin/src/components/GradientBadge';\nimport { Layouts } from '../../../../../../admin/src/components/Layouts/Layout';\nimport { Page } from '../../../../../../admin/src/components/PageHelpers';\nimport { useTypedSelector } from '../../../../../../admin/src/core/store/hooks';\nimport { useNotification } from '../../../../../../admin/src/features/Notifications';\nimport { useAdminRoles } from '../../../../../../admin/src/hooks/useAdminRoles';\nimport { useAPIErrorHandler } from '../../../../../../admin/src/hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../../../admin/src/hooks/useRBAC';\nimport {\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} from '../../../../../../admin/src/services/auth';\nimport { isBaseQueryError } from '../../../../../../admin/src/utils/baseQuery';\nimport { translatedErrors } from '../../../../../../admin/src/utils/translatedErrors';\nimport { ProvidersOptions } from '../../../../../../shared/contracts/admin';\n\nconst SCHEMA = yup.object().shape({\n autoRegister: yup.bool().required(translatedErrors.required),\n defaultRole: yup.mixed().when('autoRegister', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n }),\n ssoLockedRoles: yup\n .array()\n .nullable()\n .of(\n yup.mixed().when('ssoLockedRoles', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required) : initSchema.nullable();\n })\n ),\n});\n\nexport const SingleSignOnPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useTypedSelector((state) => state.admin_app.permissions);\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const { isLoading: isLoadingProviderOptions, data } = useGetProviderOptionsQuery();\n\n const [updateProviderOptions, { isLoading: isSubmittingForm }] =\n useUpdateProviderOptionsMutation();\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate, canRead: canReadRoles },\n } = useRBAC({\n ...permissions.settings?.sso,\n readRoles: permissions.settings?.roles.read ?? [],\n });\n\n const { roles, isLoading: isLoadingRoles } = useAdminRoles(undefined, {\n skip: !canReadRoles,\n });\n\n const handleSubmit = async (\n body: ProvidersOptions.Request['body'],\n helpers: FormHelpers<ProvidersOptions.Request['body']>\n ) => {\n try {\n const res = await updateProviderOptions(body);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved' }),\n });\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again.',\n }),\n });\n }\n };\n\n const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'SSO',\n }\n )}\n </Page.Title>\n <Page.Main aria-busy={isSubmittingForm || isLoadingData} tabIndex={-1}>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n validationSchema={SCHEMA}\n disabled={!canUpdate}\n initialValues={\n data || {\n autoRegister: false,\n defaultRole: null,\n ssoLockedRoles: null,\n }\n }\n >\n {({ modified, isSubmitting }) => (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={!modified}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n }\n title={formatMessage({\n id: 'Settings.sso.title',\n defaultMessage: 'Single Sign-On',\n })}\n subtitle={formatMessage({\n id: 'Settings.sso.description',\n defaultMessage: 'Configure the settings for the Single Sign-On feature.',\n })}\n secondaryAction={\n <GradientBadge\n label={formatMessage({\n id: 'components.premiumFeature.title',\n defaultMessage: 'Premium feature',\n })}\n />\n }\n />\n <Layouts.Content>\n {isSubmitting || isLoadingData ? (\n <Page.Loading />\n ) : (\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n background=\"neutral0\"\n padding={6}\n shadow=\"filterShadow\"\n hasRadius\n >\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid.Root gap={4}>\n {[\n {\n hint: formatMessage({\n id: 'Settings.sso.form.registration.description',\n defaultMessage: 'Create new user on SSO login if no account exists',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.registration.label',\n defaultMessage: 'Auto-registration',\n }),\n name: 'autoRegister',\n size: 6,\n type: 'boolean' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.defaultRole.description',\n defaultMessage:\n 'It will attach the new authenticated user to the selected role',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.defaultRole.label',\n defaultMessage: 'Default role',\n }),\n name: 'defaultRole',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.description',\n defaultMessage:\n 'Select the roles for which you want to disable the local authentication',\n }),\n label: formatMessage({\n id: 'Settings.sso.form.localAuthenticationLock.label',\n defaultMessage: 'Local authentication lock-out',\n }),\n name: 'ssoLockedRoles',\n options: roles.map(({ id, name }) => ({\n label: name,\n value: id.toString(),\n })),\n placeholder: formatMessage({\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n }),\n size: 6,\n type: 'multi' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n col={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <FormInputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n </Flex>\n )}\n </Layouts.Content>\n </>\n )}\n </Form>\n </Page.Main>\n </>\n );\n};\n\ntype FormInputProps = InputProps | MultiSelectInputProps;\n\nconst FormInputRenderer = (props: FormInputProps) => {\n switch (props.type) {\n case 'multi':\n return <MultiSelectInput {...props} />;\n default:\n return <InputRenderer {...props} />;\n }\n};\n\ntype MultiSelectInputProps = Omit<Extract<InputProps, { type: 'enumeration' }>, 'type'> & {\n type: 'multi';\n};\n\nconst MultiSelectInput = ({ hint, label, name, options, ...props }: MultiSelectInputProps) => {\n const field = useField<string[]>(name);\n\n return (\n <Field.Root name={name} hint={hint} error={field.error}>\n <Field.Label>{label}</Field.Label>\n <MultiSelect\n onChange={(value) => field.onChange('ssoLockedRoles', value)}\n onClear={() => field.onChange('ssoLockedRoles', [])}\n value={field.value ?? []}\n withTags\n {...props}\n >\n {options.map(({ label, value }) => (\n <MultiSelectOption key={value} value={value}>\n {label}\n </MultiSelectOption>\n ))}\n </MultiSelect>\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n );\n};\n\nexport const ProtectedSSO = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.sso?.main);\n\n return (\n <Page.Protect permissions={permissions}>\n <SingleSignOnPage />\n </Page.Protect>\n );\n};\n"],"names":["SCHEMA","yup","object","shape","autoRegister","bool","required","translatedErrors","defaultRole","mixed","when","value","initSchema","nullable","ssoLockedRoles","array","of","SingleSignOnPage","formatMessage","useIntl","permissions","useTypedSelector","state","admin_app","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","isLoading","isLoadingProviderOptions","data","useGetProviderOptionsQuery","updateProviderOptions","isSubmittingForm","useUpdateProviderOptionsMutation","isLoadingPermissions","allowedActions","canUpdate","canRead","canReadRoles","useRBAC","settings","sso","readRoles","roles","read","isLoadingRoles","useAdminRoles","undefined","skip","handleSubmit","body","helpers","res","isBaseQueryError","error","name","setErrors","type","message","id","err","defaultMessage","isLoadingData","_jsxs","_Fragment","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","Layouts","Header","primaryAction","Button","loading","startIcon","Check","fullWidth","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","Root","hint","size","options","map","toString","placeholder","field","Item","col","xs","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":"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"}
@@ -132,9 +132,9 @@ declare class StrapiApp {
132
132
  loadTrads(customTranslations?: Record<string, Record<string, string>>): Promise<void>;
133
133
  registerHook: (name: string, fn: Handler) => void;
134
134
  registerPlugin: (pluginConf: PluginConfig) => void;
135
- runHookSeries: (name: string, asynchronous?: boolean) => any[] | Promise<any[]>;
135
+ runHookSeries: (name: string, asynchronous?: boolean) => unknown[] | Promise<unknown[]>;
136
136
  runHookWaterfall: <T>(name: string, initialValue: T, store?: Store) => T;
137
- runHookParallel: (name: string) => Promise<any[]>;
137
+ runHookParallel: (name: string) => Promise<unknown[]>;
138
138
  render(): import("react/jsx-runtime").JSX.Element;
139
139
  }
140
140
  export { StrapiApp };
@@ -7,8 +7,9 @@
7
7
  import * as React from 'react';
8
8
  interface DescriptionComponent<Props, Description> {
9
9
  (props: Props): Description | null;
10
+ displayName?: string;
10
11
  }
11
- interface DescriptionComponentRendererProps<Props = any, Description = any> {
12
+ interface DescriptionComponentRendererProps<Props = unknown, Description = unknown> {
12
13
  children: (descriptions: Array<Description & {
13
14
  id: string;
14
15
  }>) => React.ReactNode;
@@ -7,9 +7,11 @@ type InputProps = InputPropsImpl | StringProps | EnumerationProps;
7
7
  interface TranslationMessage extends MessageDescriptor {
8
8
  values?: Record<string, PrimitiveType>;
9
9
  }
10
- interface FormValues {
11
- [field: string]: any;
12
- }
10
+ type FormFieldValue = unknown;
11
+ type FormValues = object;
12
+ type FormFieldTarget = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
13
+ type FormFieldEvent = React.ChangeEvent<FormFieldTarget>;
14
+ type FormFieldRowValue = Record<string, unknown>;
13
15
  interface FormContextValue<TFormValues extends FormValues = FormValues> extends FormState<TFormValues> {
14
16
  disabled: boolean;
15
17
  getValues: () => TFormValues;
@@ -19,9 +21,9 @@ interface FormContextValue<TFormValues extends FormValues = FormValues> extends
19
21
  * The default behaviour is to add the row to the end of the array, if you want to add it to a
20
22
  * specific index you can pass the index.
21
23
  */
22
- addFieldRow: (field: string, value: any, addAtIndex?: number) => void;
24
+ addFieldRow: (field: string, value: FormFieldRowValue, addAtIndex?: number) => void;
23
25
  moveFieldRow: (field: string, fromIndex: number, toIndex: number) => void;
24
- onChange: (eventOrPath: React.ChangeEvent<any> | string, value?: any) => void;
26
+ onChange: (eventOrPath: FormFieldEvent | string, value?: FormFieldValue) => void;
25
27
  removeFieldRow: (field: string, removeAtIndex?: number) => void;
26
28
  resetForm: (newInitialValues?: TFormValues) => void;
27
29
  setErrors: (errors: FormErrors<TFormValues>) => void;
@@ -35,7 +37,7 @@ interface FormContextValue<TFormValues extends FormValues = FormValues> extends
35
37
  errors: FormErrors<TFormValues>;
36
38
  }>;
37
39
  }
38
- declare const useForm: <Selected, ShouldThrow extends boolean = true>(consumerName: string, selector: (value: FormContextValue<FormValues>) => Selected, shouldThrowOnMissingContext?: ShouldThrow | undefined) => ShouldThrow extends true ? Selected : Selected | undefined;
40
+ declare const useForm: <Selected, ShouldThrow extends boolean = true>(consumerName: string, selector: (value: FormContextValue<object>) => Selected, shouldThrowOnMissingContext?: ShouldThrow | undefined) => ShouldThrow extends true ? Selected : Selected | undefined;
39
41
  interface FormHelpers<TFormValues extends FormValues = FormValues> extends Pick<FormContextValue<TFormValues>, 'setErrors' | 'setValues' | 'resetForm'> {
40
42
  }
41
43
  interface FormProps<TFormValues extends FormValues = FormValues> extends Partial<Pick<FormContextValue<TFormValues>, 'disabled' | 'initialValues'>>, Pick<BoxProps, 'width' | 'height'> {
@@ -44,7 +46,7 @@ interface FormProps<TFormValues extends FormValues = FormValues> extends Partial
44
46
  onSubmit?: (values: TFormValues, helpers: FormHelpers<TFormValues>) => Promise<void> | void;
45
47
  validationSchema?: Yup.AnySchema;
46
48
  initialErrors?: FormErrors<TFormValues>;
47
- validate?: (values: TFormValues, options: Record<string, string>) => Promise<any>;
49
+ validate?: (values: TFormValues, options: Record<string, string>) => Promise<TFormValues>;
48
50
  }
49
51
  /**
50
52
  * @alpha
@@ -61,7 +63,7 @@ declare const Form: <TFormValues extends FormValues>(p: FormProps<TFormValues> &
61
63
  */
62
64
  declare const getYupValidationErrors: (err: Yup.ValidationError) => FormErrors;
63
65
  type FormErrors<TFormValues extends FormValues = FormValues> = {
64
- [Key in keyof TFormValues]?: TFormValues[Key] extends any[] ? TFormValues[Key][number] extends object ? FormErrors<TFormValues[Key][number]>[] | string | string[] : string : TFormValues[Key] extends object ? FormErrors<TFormValues[Key]> : string | TranslationMessage;
66
+ [Key in keyof TFormValues]?: TFormValues[Key] extends unknown[] ? TFormValues[Key][number] extends object ? FormErrors<TFormValues[Key][number]>[] | string | string[] : string : TFormValues[Key] extends object ? FormErrors<TFormValues[Key]> : string | TranslationMessage;
65
67
  };
66
68
  interface FormState<TFormValues extends FormValues = FormValues> {
67
69
  /**
@@ -72,14 +74,14 @@ interface FormState<TFormValues extends FormValues = FormValues> {
72
74
  isSubmitting: boolean;
73
75
  values: TFormValues;
74
76
  }
75
- interface FieldValue<TValue = any> {
77
+ interface FieldValue<TValue = unknown> {
76
78
  error?: string;
77
79
  initialValue: TValue;
78
- onChange: (eventOrPath: React.ChangeEvent<any> | string, value?: TValue) => void;
80
+ onChange: (eventOrPath: FormFieldEvent | string, value?: TValue) => void;
79
81
  value: TValue;
80
- rawError?: any;
82
+ rawError?: unknown;
81
83
  }
82
- declare function useField<TValue = any>(path: string): FieldValue<TValue | undefined>;
84
+ declare function useField<TValue = unknown>(path: string): FieldValue<TValue | undefined>;
83
85
  /**
84
86
  * Props for the Blocker component.
85
87
  * @param onProceed Function to be called when the user confirms the action that triggered the blocker.
@@ -1,3 +1,3 @@
1
1
  import type { InputProps } from '../Form';
2
- declare const MemoizedInputRenderer: import("react").MemoExoticComponent<import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<InputProps & import("react").RefAttributes<any>>>>;
2
+ declare const MemoizedInputRenderer: import("react").MemoExoticComponent<import("react").MemoExoticComponent<(props: InputProps) => import("react/jsx-runtime").JSX.Element>>;
3
3
  export { MemoizedInputRenderer as InputRenderer };
@@ -51,7 +51,7 @@ type Step = {
51
51
  }>;
52
52
  Title: (props: StepProps) => React.ReactNode;
53
53
  Content: (props: StepProps & {
54
- values?: Record<string, React.ReactNode | ((chunks: React.ReactNode) => React.ReactNode)>;
54
+ values?: Record<string, React.ReactNode | ((_chunks: React.ReactNode) => React.ReactNode)>;
55
55
  }) => React.ReactNode;
56
56
  Actions: (props: ActionsProps & {
57
57
  to?: string;
@@ -4,7 +4,7 @@ declare const StyledLink: import("styled-components/dist/types").IStyledComponen
4
4
  ref?: ((instance: HTMLAnchorElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLAnchorElement> | null | undefined;
5
5
  }, never>>> & string & Omit<import("react").ForwardRefExoticComponent<import("react-router-dom").NavLinkProps & import("react").RefAttributes<HTMLAnchorElement>>, keyof import("react").Component<any, {}, any>>;
6
6
  export declare const SubNav: {
7
- Main: ({ children, ...props }: {
7
+ Main: ({ children, isFullPage, ...props }: {
8
8
  children: React.ReactNode;
9
9
  isFullPage?: boolean;
10
10
  }) => import("react/jsx-runtime").JSX.Element;
@@ -9,7 +9,6 @@ import * as React from 'react';
9
9
  import { RawTrProps, EmptyStateLayoutProps, TableProps, RawTdProps } from '@strapi/design-system';
10
10
  interface BaseRow {
11
11
  id: string | number;
12
- [key: string]: any;
13
12
  }
14
13
  interface TableHeader<TData = object, THeader = object> {
15
14
  /**
@@ -32,7 +31,9 @@ interface TableContextValue<TRow extends BaseRow, THeader extends TableHeader<TR
32
31
  selectedRows: TRow[];
33
32
  selectRow: (row: TRow | TRow[]) => void;
34
33
  }
35
- declare const useTable: <Selected, ShouldThrow extends boolean = true>(consumerName: string, selector: (value: TableContextValue<any, any>) => Selected, shouldThrowOnMissingContext?: ShouldThrow | undefined) => ShouldThrow extends true ? Selected : Selected | undefined;
34
+ type DefaultTableHeader = TableHeader<BaseRow, object>;
35
+ type DefaultTableContextValue = TableContextValue<BaseRow, DefaultTableHeader>;
36
+ declare const useTable: <Selected, ShouldThrow extends boolean = true>(consumerName: string, selector: (value: DefaultTableContextValue) => Selected, shouldThrowOnMissingContext?: ShouldThrow | undefined) => ShouldThrow extends true ? Selected : Selected | undefined;
36
37
  interface RootProps<TRow extends BaseRow, THeader extends TableHeader<TRow, THeader>> extends Partial<Pick<TableContextValue<TRow, THeader>, 'footer' | 'headers' | 'isLoading' | 'rows' | 'selectedRows'>> {
37
38
  children?: React.ReactNode;
38
39
  defaultSelectedRows?: TRow[];
@@ -8,7 +8,7 @@ export declare class Plugin {
8
8
  [immerable]: boolean;
9
9
  apis: Record<string, unknown>;
10
10
  initializer: React.ComponentType<{
11
- setPlugin(pluginId: string): void;
11
+ setPlugin(_pluginId: string): void;
12
12
  }> | null;
13
13
  injectionZones: Record<string, Record<string, Array<{
14
14
  name: string;
@@ -1,11 +1,11 @@
1
1
  import type { Store } from '../store/configure';
2
- export type Handler = (...args: any[]) => any;
2
+ export type Handler<TArgs extends unknown[] = never[], TResult = unknown> = (...args: TArgs) => TResult;
3
3
  export declare const createHook: () => {
4
- register(fn: Handler): void;
5
- delete(handler: Handler): void;
4
+ register<TArgs extends unknown[], TResult>(fn: Handler<TArgs, TResult>): void;
5
+ delete<TArgs extends unknown[], TResult>(handler: Handler<TArgs, TResult>): void;
6
6
  runWaterfall<T>(args: T, store?: Store): T;
7
7
  runWaterfallAsync<T>(args: T, store?: Store): Promise<T>;
8
- runSeries<T extends any[]>(...args: T): any[];
9
- runSeriesAsync<T extends any[]>(...args: T): Promise<any[]>;
10
- runParallel<T extends any[]>(...args: T): Promise<any[]>;
8
+ runSeries<TArgs extends unknown[]>(...args: TArgs): unknown[];
9
+ runSeriesAsync<TArgs extends unknown[]>(...args: TArgs): Promise<unknown[]>;
10
+ runParallel<TArgs extends unknown[]>(...args: TArgs): Promise<unknown[]>;
11
11
  };
@@ -8,7 +8,7 @@ export declare const useAdminRoles: (params?: GetRolesParams, queryOptions?: Par
8
8
  error: any;
9
9
  isError: any;
10
10
  isLoading: any;
11
- refetch: () => import("@reduxjs/toolkit/query").QueryActionCreatorResult<import("@reduxjs/toolkit/query").QueryDefinition<void | GetRolesParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "LicenseLimits" | "User" | "Role" | "RolePermissions", (import("..").SanitizedAdminRole & {
11
+ refetch: () => import("@reduxjs/toolkit/query").QueryActionCreatorResult<import("@reduxjs/toolkit/query").QueryDefinition<void | GetRolesParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "LicenseLimits" | "User" | "Role" | "RolePermissions", (import("..").SanitizedAdminRole & {
12
12
  usersCount?: number;
13
13
  })[], "adminApi">>;
14
14
  };
@@ -14,6 +14,6 @@ export interface Menu {
14
14
  burgerMobileNavigation: MobileMenuItem[];
15
15
  isLoading: boolean;
16
16
  }
17
- declare const useMenu: (shouldUpdateStrapi: boolean) => Menu;
17
+ declare const useMenu: (shouldUpdateStrapi: boolean, currentEnvironment?: string) => Menu;
18
18
  declare const normalizeMenuLinks: (links: unknown) => MenuItem[];
19
19
  export { useMenu, normalizeMenuLinks };
@@ -1,4 +1,5 @@
1
- declare const useQueryParams: <TQuery extends object>(initialParams?: TQuery) => readonly [{
1
+ type QueryParams = Record<string, unknown>;
2
+ declare const useQueryParams: <TQuery extends object = QueryParams>(initialParams?: TQuery) => readonly [{
2
3
  readonly query: TQuery;
3
4
  readonly rawQuery: string;
4
5
  }, (nextParams: TQuery, method?: "push" | "remove", replace?: boolean) => void];
@@ -17,5 +17,5 @@ type ThrottleSettings = Parameters<typeof throttle>[2];
17
17
  * <Button onClick={myThrottledCallback} />
18
18
  * ```
19
19
  */
20
- declare const useThrottledCallback: <T extends (...args: any[]) => any>(callback: T, wait: number, options: ThrottleSettings) => T;
20
+ declare const useThrottledCallback: <T extends (...args: never[]) => unknown>(callback: T, wait: number, options: ThrottleSettings) => T;
21
21
  export { useThrottledCallback };
@@ -28,7 +28,7 @@ interface ActionUpdateRoutes {
28
28
  }
29
29
  interface ActionUpdatePermissions {
30
30
  type: 'UPDATE_PERMISSIONS';
31
- value: any[];
31
+ value: string[];
32
32
  }
33
33
  interface ActionSetSelectedAction {
34
34
  type: 'SET_SELECTED_ACTION';
@@ -1,3 +1,3 @@
1
- import { Flat } from '../../../../../utils/arrays';
1
+ import { type Flat } from '../../../../../utils/arrays';
2
2
  declare const createArrayOfValues: <TData>(obj: unknown) => Array<Flat<TData>>;
3
3
  export { createArrayOfValues };
@@ -6,14 +6,14 @@ declare const useWebhooks: (args?: GetWebhook.Params | void, queryArgs?: Paramet
6
6
  webhooks: GetWebhooks.Response["data"] | undefined;
7
7
  isLoading: boolean;
8
8
  error: BaseQueryError | SerializedError;
9
- createWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<Omit<import("@strapi/types/dist/modules/webhook-store").Webhook, "id" | "isEnabled">, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", import("@strapi/types/dist/modules/webhook-store").Webhook, "adminApi">>;
10
- updateWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<Partial<import("@strapi/types/dist/modules/webhook-store").Webhook> & import("../../../../../../../shared/contracts/webhooks").UpdateWebhook.Params, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", import("@strapi/types/dist/modules/webhook-store").Webhook, "adminApi">>;
11
- triggerWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", {
9
+ createWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<Omit<import("@strapi/types/dist/modules/webhook-store").Webhook, "id" | "isEnabled">, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError | SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", import("@strapi/types/dist/modules/webhook-store").Webhook, "adminApi">>;
10
+ updateWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<Partial<import("@strapi/types/dist/modules/webhook-store").Webhook> & import("../../../../../../../shared/contracts/webhooks").UpdateWebhook.Params, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError | SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", import("@strapi/types/dist/modules/webhook-store").Webhook, "adminApi">>;
11
+ triggerWebhook: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError | SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", {
12
12
  statusCode: number;
13
13
  message?: string;
14
14
  }, "adminApi">>;
15
15
  deleteManyWebhooks: import("@reduxjs/toolkit/dist/query/react/buildHooks").MutationTrigger<import("@reduxjs/toolkit/query").MutationDefinition<{
16
16
  ids: import("@strapi/types/dist/modules/webhook-store").Webhook["id"][];
17
- }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", {}, "adminApi">>;
17
+ }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("../../../../..").QueryArguments, unknown, BaseQueryError | SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "Webhook", {}, "adminApi">>;
18
18
  };
19
19
  export { useWebhooks };
@@ -6,19 +6,19 @@ interface ConfigurationLogo {
6
6
  };
7
7
  default: string;
8
8
  }
9
- declare const useInitQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
9
+ declare const useInitQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
10
10
  uuid: string | false;
11
11
  hasAdmin: boolean;
12
12
  menuLogo: string | null;
13
13
  authLogo: string | null;
14
- }, "adminApi">>, useTelemetryPropertiesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
14
+ }, "adminApi">>, useTelemetryPropertiesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
15
15
  useTypescriptOnServer: boolean;
16
16
  useTypescriptOnAdmin: boolean;
17
17
  isHostedOnStrapiCloud: boolean;
18
18
  numberOfAllContentTypes: number;
19
19
  numberOfComponents: number;
20
20
  numberOfDynamicZones: number;
21
- }, "adminApi">>, useInformationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
21
+ }, "adminApi">>, useInformationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
22
22
  currentEnvironment: string;
23
23
  autoReload: boolean;
24
24
  strapiVersion: string | null;
@@ -27,11 +27,11 @@ declare const useInitQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks
27
27
  nodeVersion: string;
28
28
  communityEdition: boolean;
29
29
  useYarn: boolean;
30
- }, "adminApi">>, useProjectSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
30
+ }, "adminApi">>, useProjectSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
31
31
  authLogo?: ConfigurationLogo["custom"];
32
32
  menuLogo?: ConfigurationLogo["custom"];
33
- }, "adminApi">>, useUpdateProjectSettingsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<FormData, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", UpdateProjectSettings.Response, "adminApi">>, useGetPluginsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", Plugins.Response, "adminApi">>, useGetLicenseLimitsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetLicenseLimitInformation.Response, "adminApi">>, useGetLicenseTrialTimeLeftQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
33
+ }, "adminApi">>, useUpdateProjectSettingsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<FormData, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", UpdateProjectSettings.Response, "adminApi">>, useGetPluginsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", Plugins.Response, "adminApi">>, useGetLicenseLimitsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetLicenseLimitInformation.Response, "adminApi">>, useGetLicenseTrialTimeLeftQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
34
34
  trialEndsAt: string;
35
- }, "adminApi">>, useGetGuidedTourMetaQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetGuidedTourMeta.Response, "adminApi">>;
35
+ }, "adminApi">>, useGetGuidedTourMetaQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetGuidedTourMeta.Response, "adminApi">>;
36
36
  export { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery, };
37
37
  export type { ConfigurationLogo };
@@ -7,5 +7,5 @@
7
7
  * the API surface as small as possible. None of the data-fetching looks for the
8
8
  * StrapiApp are stored here either.
9
9
  */
10
- declare const adminApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError>, {}, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName>;
10
+ declare const adminApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, {}, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName>;
11
11
  export { adminApi };