@strapi/admin 5.26.0 → 5.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/dist/admin/admin/src/components/ErrorElement.js +10 -3
  2. package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
  3. package/dist/admin/admin/src/components/ErrorElement.mjs +10 -3
  4. package/dist/admin/admin/src/components/ErrorElement.mjs.map +1 -1
  5. package/dist/admin/admin/src/components/GuidedTour/Context.js +15 -0
  6. package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
  7. package/dist/admin/admin/src/components/GuidedTour/Context.mjs +15 -0
  8. package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js +15 -0
  10. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js.map +1 -0
  11. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs +13 -0
  12. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs.map +1 -0
  13. package/dist/admin/admin/src/components/GuidedTour/Overview.js +2 -1
  14. package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
  15. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs +2 -1
  16. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs.map +1 -1
  17. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js +2 -2
  18. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js.map +1 -1
  19. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs +2 -2
  20. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/GuidedTour/Tours.js +1 -1
  22. package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
  23. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs +1 -1
  24. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +3 -2
  26. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  27. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs +3 -2
  28. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/Layouts/ContentLayout.js +3 -2
  30. package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
  31. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs +3 -2
  32. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
  33. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js +65 -32
  34. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
  35. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +66 -33
  36. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/Layouts/Layout.js +29 -6
  38. package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
  39. package/dist/admin/admin/src/components/Layouts/Layout.mjs +30 -7
  40. package/dist/admin/admin/src/components/Layouts/Layout.mjs.map +1 -1
  41. package/dist/admin/admin/src/components/LeftMenu.js +147 -92
  42. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  43. package/dist/admin/admin/src/components/LeftMenu.mjs +131 -95
  44. package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
  45. package/dist/admin/admin/src/components/MainNav/MainNav.js +20 -6
  46. package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
  47. package/dist/admin/admin/src/components/MainNav/MainNav.mjs +20 -6
  48. package/dist/admin/admin/src/components/MainNav/MainNav.mjs.map +1 -1
  49. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +157 -0
  50. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -0
  51. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +154 -0
  52. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -0
  53. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js +65 -0
  54. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -0
  55. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs +63 -0
  56. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs.map +1 -0
  57. package/dist/admin/admin/src/components/MainNav/NavLink.js +2 -1
  58. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  59. package/dist/admin/admin/src/components/MainNav/NavLink.mjs +2 -1
  60. package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
  61. package/dist/admin/admin/src/components/MainNav/NavUser.js +39 -22
  62. package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
  63. package/dist/admin/admin/src/components/MainNav/NavUser.mjs +39 -22
  64. package/dist/admin/admin/src/components/MainNav/NavUser.mjs.map +1 -1
  65. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js +8 -1
  66. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
  67. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs +9 -2
  68. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs.map +1 -1
  69. package/dist/admin/admin/src/components/NpsSurvey.js +159 -119
  70. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  71. package/dist/admin/admin/src/components/NpsSurvey.mjs +160 -120
  72. package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
  73. package/dist/admin/admin/src/components/PageHelpers.js +1 -1
  74. package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
  75. package/dist/admin/admin/src/components/PageHelpers.mjs +1 -1
  76. package/dist/admin/admin/src/components/PageHelpers.mjs.map +1 -1
  77. package/dist/admin/admin/src/components/Providers.js +2 -4
  78. package/dist/admin/admin/src/components/Providers.js.map +1 -1
  79. package/dist/admin/admin/src/components/Providers.mjs +2 -4
  80. package/dist/admin/admin/src/components/Providers.mjs.map +1 -1
  81. package/dist/admin/admin/src/components/SubNav.js +98 -33
  82. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  83. package/dist/admin/admin/src/components/SubNav.mjs +99 -34
  84. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  85. package/dist/admin/admin/src/components/UpsellBanner.js +3 -2
  86. package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
  87. package/dist/admin/admin/src/components/UpsellBanner.mjs +3 -2
  88. package/dist/admin/admin/src/components/UpsellBanner.mjs.map +1 -1
  89. package/dist/admin/admin/src/constants/theme.js +12 -0
  90. package/dist/admin/admin/src/constants/theme.js.map +1 -0
  91. package/dist/admin/admin/src/constants/theme.mjs +9 -0
  92. package/dist/admin/admin/src/constants/theme.mjs.map +1 -0
  93. package/dist/admin/admin/src/features/Notifications.js +14 -7
  94. package/dist/admin/admin/src/features/Notifications.js.map +1 -1
  95. package/dist/admin/admin/src/features/Notifications.mjs +15 -8
  96. package/dist/admin/admin/src/features/Notifications.mjs.map +1 -1
  97. package/dist/admin/admin/src/features/Tracking.js +5 -1
  98. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  99. package/dist/admin/admin/src/features/Tracking.mjs +5 -1
  100. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  101. package/dist/admin/admin/src/hooks/useDeviceType.js +43 -0
  102. package/dist/admin/admin/src/hooks/useDeviceType.js.map +1 -0
  103. package/dist/admin/admin/src/hooks/useDeviceType.mjs +22 -0
  104. package/dist/admin/admin/src/hooks/useDeviceType.mjs.map +1 -0
  105. package/dist/admin/admin/src/hooks/useMediaQuery.js +70 -0
  106. package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -0
  107. package/dist/admin/admin/src/hooks/useMediaQuery.mjs +46 -0
  108. package/dist/admin/admin/src/hooks/useMediaQuery.mjs.map +1 -0
  109. package/dist/admin/admin/src/hooks/useMenu.js +19 -0
  110. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  111. package/dist/admin/admin/src/hooks/useMenu.mjs +19 -0
  112. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  113. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +15 -2
  114. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  115. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +15 -2
  116. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  117. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js +11 -7
  118. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
  119. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs +11 -7
  120. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs.map +1 -1
  121. package/dist/admin/admin/src/pages/Auth/components/Login.js +3 -0
  122. package/dist/admin/admin/src/pages/Auth/components/Login.js.map +1 -1
  123. package/dist/admin/admin/src/pages/Auth/components/Login.mjs +3 -0
  124. package/dist/admin/admin/src/pages/Auth/components/Login.mjs.map +1 -1
  125. package/dist/admin/admin/src/pages/Home/HomePage.js +55 -54
  126. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  127. package/dist/admin/admin/src/pages/Home/HomePage.mjs +55 -54
  128. package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
  129. package/dist/admin/admin/src/pages/ProfilePage.js +54 -51
  130. package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
  131. package/dist/admin/admin/src/pages/ProfilePage.mjs +55 -52
  132. package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
  133. package/dist/admin/admin/src/pages/Settings/Layout.js +42 -6
  134. package/dist/admin/admin/src/pages/Settings/Layout.js.map +1 -1
  135. package/dist/admin/admin/src/pages/Settings/Layout.mjs +43 -7
  136. package/dist/admin/admin/src/pages/Settings/Layout.mjs.map +1 -1
  137. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +44 -32
  138. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  139. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +45 -33
  140. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  141. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +1 -1
  142. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  143. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +2 -2
  144. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  145. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js +1 -1
  146. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js.map +1 -1
  147. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs +2 -2
  148. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs.map +1 -1
  149. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js +4 -3
  150. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js.map +1 -1
  151. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs +5 -4
  152. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs.map +1 -1
  153. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js +4 -3
  154. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js.map +1 -1
  155. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs +5 -4
  156. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs.map +1 -1
  157. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js +4 -3
  158. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js.map +1 -1
  159. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs +5 -4
  160. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs.map +1 -1
  161. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js +36 -32
  162. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
  163. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs +36 -32
  164. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs.map +1 -1
  165. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js +1 -1
  166. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
  167. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -1
  168. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
  169. package/dist/admin/admin/src/services/api.js +2 -1
  170. package/dist/admin/admin/src/services/api.js.map +1 -1
  171. package/dist/admin/admin/src/services/api.mjs +2 -1
  172. package/dist/admin/admin/src/services/api.mjs.map +1 -1
  173. package/dist/admin/admin/src/services/auth.js +13 -2
  174. package/dist/admin/admin/src/services/auth.js.map +1 -1
  175. package/dist/admin/admin/src/services/auth.mjs +12 -3
  176. package/dist/admin/admin/src/services/auth.mjs.map +1 -1
  177. package/dist/admin/admin/src/translations/en.json.js +1 -0
  178. package/dist/admin/admin/src/translations/en.json.js.map +1 -1
  179. package/dist/admin/admin/src/translations/en.json.mjs +1 -0
  180. package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
  181. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js +1 -1
  182. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  183. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs +1 -1
  184. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  185. package/dist/admin/ee/admin/src/services/ai.js +5 -2
  186. package/dist/admin/ee/admin/src/services/ai.js.map +1 -1
  187. package/dist/admin/ee/admin/src/services/ai.mjs +5 -2
  188. package/dist/admin/ee/admin/src/services/ai.mjs.map +1 -1
  189. package/dist/admin/index.js +11 -0
  190. package/dist/admin/index.js.map +1 -1
  191. package/dist/admin/index.mjs +4 -0
  192. package/dist/admin/index.mjs.map +1 -1
  193. package/dist/admin/src/components/GuidedTour/Context.d.ts +4 -0
  194. package/dist/admin/src/components/GuidedTour/GuidedTourProvider.d.ts +6 -0
  195. package/dist/admin/src/components/LeftMenu.d.ts +2 -2
  196. package/dist/admin/src/components/MainNav/MainNavLinks.d.ts +11 -0
  197. package/dist/admin/src/components/MainNav/NavBurgerMenu.d.ts +9 -0
  198. package/dist/admin/src/components/MainNav/NavUser.d.ts +5 -4
  199. package/dist/admin/src/components/SubNav.d.ts +18 -5
  200. package/dist/admin/src/constants/theme.d.ts +7 -0
  201. package/dist/admin/src/core/store/configure.d.ts +2 -2
  202. package/dist/admin/src/core/store/hooks.d.ts +2 -2
  203. package/dist/admin/src/hooks/useAdminRoles.d.ts +1 -1
  204. package/dist/admin/src/hooks/useDeviceType.d.ts +6 -0
  205. package/dist/admin/src/hooks/useMediaQuery.d.ts +21 -0
  206. package/dist/admin/src/hooks/useMenu.d.ts +9 -1
  207. package/dist/admin/src/index.d.ts +4 -0
  208. package/dist/admin/src/pages/Settings/components/SettingsNav.d.ts +3 -6
  209. package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +4 -4
  210. package/dist/admin/src/selectors.d.ts +2 -2
  211. package/dist/admin/src/services/admin.d.ts +6 -6
  212. package/dist/admin/src/services/api.d.ts +1 -1
  213. package/dist/admin/src/services/apiTokens.d.ts +1 -1
  214. package/dist/admin/src/services/auth.d.ts +21 -12
  215. package/dist/admin/src/services/contentApi.d.ts +1 -1
  216. package/dist/admin/src/services/contentManager.d.ts +1 -1
  217. package/dist/admin/src/services/homepage.d.ts +3 -3
  218. package/dist/admin/src/services/transferTokens.d.ts +1 -1
  219. package/dist/admin/src/services/users.d.ts +8 -8
  220. package/dist/admin/src/services/webhooks.d.ts +2 -2
  221. package/dist/admin/tests/utils.d.ts +1 -1
  222. package/dist/ee/admin/src/services/ai.d.ts +2 -2
  223. package/dist/ee/admin/src/services/auditLogs.d.ts +1 -1
  224. package/dist/server/server/src/controllers/authenticated-user.js +15 -0
  225. package/dist/server/server/src/controllers/authenticated-user.js.map +1 -1
  226. package/dist/server/server/src/controllers/authenticated-user.mjs +15 -0
  227. package/dist/server/server/src/controllers/authenticated-user.mjs.map +1 -1
  228. package/dist/server/server/src/routes/users.js +10 -0
  229. package/dist/server/server/src/routes/users.js.map +1 -1
  230. package/dist/server/server/src/routes/users.mjs +10 -0
  231. package/dist/server/server/src/routes/users.mjs.map +1 -1
  232. package/dist/server/server/src/services/user.js +113 -1
  233. package/dist/server/server/src/services/user.js.map +1 -1
  234. package/dist/server/server/src/services/user.mjs +113 -1
  235. package/dist/server/server/src/services/user.mjs.map +1 -1
  236. package/dist/server/src/controllers/authenticated-user.d.ts +1 -0
  237. package/dist/server/src/controllers/authenticated-user.d.ts.map +1 -1
  238. package/dist/server/src/controllers/index.d.ts +1 -0
  239. package/dist/server/src/controllers/index.d.ts.map +1 -1
  240. package/dist/server/src/index.d.ts +5 -0
  241. package/dist/server/src/index.d.ts.map +1 -1
  242. package/dist/server/src/routes/users.d.ts.map +1 -1
  243. package/dist/server/src/services/index.d.ts +4 -0
  244. package/dist/server/src/services/index.d.ts.map +1 -1
  245. package/dist/server/src/services/user.d.ts +4 -0
  246. package/dist/server/src/services/user.d.ts.map +1 -1
  247. package/dist/shared/contracts/users.d.ts +16 -0
  248. package/dist/shared/contracts/users.d.ts.map +1 -1
  249. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sources":["../../../../../admin/src/services/auth.ts"],"sourcesContent":["import { ProvidersOptions } from '../../../shared/contracts/admin';\nimport {\n type AccessTokenExchange,\n type Login,\n type ResetPassword,\n type RegisterAdmin,\n type Register,\n type RegistrationInfo,\n ForgotPassword,\n} from '../../../shared/contracts/authentication';\nimport { Check } from '../../../shared/contracts/permissions';\nimport { GetProviders, IsSSOLocked } from '../../../shared/contracts/providers';\nimport { type GetOwnPermissions, type GetMe, type UpdateMe } from '../../../shared/contracts/users';\n\nimport { adminApi } from './api';\n\nconst authService = adminApi\n .enhanceEndpoints({\n addTagTypes: ['User', 'Me', 'ProvidersOptions'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n /**\n * ME\n */\n getMe: builder.query<GetMe.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me',\n }),\n transformResponse(res: GetMe.Response) {\n return res.data;\n },\n providesTags: (res) => (res ? ['Me', { type: 'User', id: res.id }] : ['Me']),\n }),\n getMyPermissions: builder.query<GetOwnPermissions.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/permissions',\n }),\n transformResponse(res: GetOwnPermissions.Response) {\n return res.data;\n },\n }),\n updateMe: builder.mutation<UpdateMe.Response['data'], UpdateMe.Request['body']>({\n query: (body) => ({\n method: 'PUT',\n url: '/admin/users/me',\n data: body,\n }),\n transformResponse(res: UpdateMe.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n /**\n * Permissions\n */\n checkPermissions: builder.query<Check.Response, Check.Request['body']>({\n query: (permissions) => ({\n method: 'POST',\n url: '/admin/permissions/check',\n data: permissions,\n }),\n }),\n /**\n * Auth methods\n */\n login: builder.mutation<Login.Response['data'], Login.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/login',\n data: body,\n }),\n transformResponse(res: Login.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n logout: builder.mutation<void, { deviceId?: string } | void>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/logout',\n data: body,\n }),\n }),\n resetPassword: builder.mutation<\n ResetPassword.Response['data'],\n ResetPassword.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/reset-password',\n data: body,\n }),\n transformResponse(res: ResetPassword.Response) {\n return res.data;\n },\n }),\n accessTokenExchange: builder.mutation<\n AccessTokenExchange.Response['data'],\n AccessTokenExchange.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/access-token',\n data: body,\n }),\n transformResponse(res: AccessTokenExchange.Response) {\n return res.data;\n },\n }),\n getRegistrationInfo: builder.query<\n RegistrationInfo.Response['data'],\n RegistrationInfo.Request['query']['registrationToken']\n >({\n query: (registrationToken) => ({\n url: '/admin/registration-info',\n method: 'GET',\n config: {\n params: {\n registrationToken,\n },\n },\n }),\n transformResponse(res: RegistrationInfo.Response) {\n return res.data;\n },\n }),\n registerAdmin: builder.mutation<\n RegisterAdmin.Response['data'],\n RegisterAdmin.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register-admin',\n data: body,\n }),\n transformResponse(res: RegisterAdmin.Response) {\n return res.data;\n },\n }),\n registerUser: builder.mutation<Register.Response['data'], Register.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register',\n data: body,\n }),\n transformResponse(res: Register.Response) {\n return res.data;\n },\n }),\n forgotPassword: builder.mutation<ForgotPassword.Response, ForgotPassword.Request['body']>({\n query: (body) => ({\n url: '/admin/forgot-password',\n method: 'POST',\n data: body,\n }),\n }),\n isSSOLocked: builder.query<IsSSOLocked.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/isSSOLocked',\n method: 'GET',\n }),\n transformResponse(res: IsSSOLocked.Response) {\n return res.data;\n },\n }),\n getProviders: builder.query<GetProviders.Response, void>({\n query: () => ({\n url: '/admin/providers',\n method: 'GET',\n }),\n }),\n getProviderOptions: builder.query<ProvidersOptions.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/options',\n method: 'GET',\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n providesTags: ['ProvidersOptions'],\n }),\n updateProviderOptions: builder.mutation<\n ProvidersOptions.Response['data'],\n ProvidersOptions.Request['body']\n >({\n query: (body) => ({\n url: '/admin/providers/options',\n method: 'PUT',\n data: body,\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n invalidatesTags: ['ProvidersOptions'],\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} = authService;\n\nexport {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n};\n"],"names":["authService","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getMe","query","method","url","transformResponse","res","data","providesTags","type","id","getMyPermissions","updateMe","mutation","body","invalidatesTags","checkPermissions","permissions","login","logout","resetPassword","accessTokenExchange","getRegistrationInfo","registrationToken","config","params","registerAdmin","registerUser","forgotPassword","isSSOLocked","getProviders","getProviderOptions","updateProviderOptions","overrideExisting","useCheckPermissionsQuery","useLazyCheckPermissionsQuery","useGetMeQuery","useLoginMutation","useAccessTokenExchangeMutation","useLogoutMutation","useUpdateMeMutation","useResetPasswordMutation","useRegisterAdminMutation","useRegisterUserMutation","useGetRegistrationInfoQuery","useForgotPasswordMutation","useGetMyPermissionsQuery","useIsSSOLockedQuery","useGetProvidersQuery","useGetProviderOptionsQuery","useUpdateProviderOptionsMutation"],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sources":["../../../../../admin/src/services/auth.ts"],"sourcesContent":["import { ProvidersOptions } from '../../../shared/contracts/admin';\nimport {\n type AccessTokenExchange,\n type Login,\n type ResetPassword,\n type RegisterAdmin,\n type Register,\n type RegistrationInfo,\n ForgotPassword,\n} from '../../../shared/contracts/authentication';\nimport { Check } from '../../../shared/contracts/permissions';\nimport { GetProviders, IsSSOLocked } from '../../../shared/contracts/providers';\nimport {\n type GetOwnPermissions,\n type GetMe,\n type UpdateMe,\n type GetAiToken,\n} from '../../../shared/contracts/users';\n\nimport { adminApi } from './api';\n\nconst authService = adminApi\n .enhanceEndpoints({\n addTagTypes: ['User', 'Me', 'ProvidersOptions'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n /**\n * ME\n */\n getMe: builder.query<GetMe.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me',\n }),\n transformResponse(res: GetMe.Response) {\n return res.data;\n },\n providesTags: (res) => (res ? ['Me', { type: 'User', id: res.id }] : ['Me']),\n }),\n getMyPermissions: builder.query<GetOwnPermissions.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/permissions',\n }),\n transformResponse(res: GetOwnPermissions.Response) {\n return res.data;\n },\n }),\n updateMe: builder.mutation<UpdateMe.Response['data'], UpdateMe.Request['body']>({\n query: (body) => ({\n method: 'PUT',\n url: '/admin/users/me',\n data: body,\n }),\n transformResponse(res: UpdateMe.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n /**\n * Permissions\n */\n checkPermissions: builder.query<Check.Response, Check.Request['body']>({\n query: (permissions) => ({\n method: 'POST',\n url: '/admin/permissions/check',\n data: permissions,\n }),\n }),\n /**\n * Auth methods\n */\n login: builder.mutation<Login.Response['data'], Login.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/login',\n data: body,\n }),\n transformResponse(res: Login.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n logout: builder.mutation<void, { deviceId?: string } | void>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/logout',\n data: body,\n }),\n }),\n resetPassword: builder.mutation<\n ResetPassword.Response['data'],\n ResetPassword.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/reset-password',\n data: body,\n }),\n transformResponse(res: ResetPassword.Response) {\n return res.data;\n },\n }),\n accessTokenExchange: builder.mutation<\n AccessTokenExchange.Response['data'],\n AccessTokenExchange.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/access-token',\n data: body,\n }),\n transformResponse(res: AccessTokenExchange.Response) {\n return res.data;\n },\n }),\n getRegistrationInfo: builder.query<\n RegistrationInfo.Response['data'],\n RegistrationInfo.Request['query']['registrationToken']\n >({\n query: (registrationToken) => ({\n url: '/admin/registration-info',\n method: 'GET',\n config: {\n params: {\n registrationToken,\n },\n },\n }),\n transformResponse(res: RegistrationInfo.Response) {\n return res.data;\n },\n }),\n registerAdmin: builder.mutation<\n RegisterAdmin.Response['data'],\n RegisterAdmin.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register-admin',\n data: body,\n }),\n transformResponse(res: RegisterAdmin.Response) {\n return res.data;\n },\n }),\n registerUser: builder.mutation<Register.Response['data'], Register.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register',\n data: body,\n }),\n transformResponse(res: Register.Response) {\n return res.data;\n },\n }),\n forgotPassword: builder.mutation<ForgotPassword.Response, ForgotPassword.Request['body']>({\n query: (body) => ({\n url: '/admin/forgot-password',\n method: 'POST',\n data: body,\n }),\n }),\n isSSOLocked: builder.query<IsSSOLocked.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/isSSOLocked',\n method: 'GET',\n }),\n transformResponse(res: IsSSOLocked.Response) {\n return res.data;\n },\n }),\n getProviders: builder.query<GetProviders.Response, void>({\n query: () => ({\n url: '/admin/providers',\n method: 'GET',\n }),\n }),\n getProviderOptions: builder.query<ProvidersOptions.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/options',\n method: 'GET',\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n providesTags: ['ProvidersOptions'],\n }),\n updateProviderOptions: builder.mutation<\n ProvidersOptions.Response['data'],\n ProvidersOptions.Request['body']\n >({\n query: (body) => ({\n url: '/admin/providers/options',\n method: 'PUT',\n data: body,\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n invalidatesTags: ['ProvidersOptions'],\n }),\n }),\n overrideExisting: true,\n });\n\nconst {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useGetAiTokenQuery,\n useLazyGetAiTokenQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} = authService;\n\nexport {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useGetAiTokenQuery,\n useLazyGetAiTokenQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n};\n"],"names":["authService","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getMe","query","method","url","transformResponse","res","data","providesTags","type","id","getMyPermissions","updateMe","mutation","body","invalidatesTags","getAiToken","checkPermissions","permissions","login","logout","resetPassword","accessTokenExchange","getRegistrationInfo","registrationToken","config","params","registerAdmin","registerUser","forgotPassword","isSSOLocked","getProviders","getProviderOptions","updateProviderOptions","overrideExisting","useCheckPermissionsQuery","useLazyCheckPermissionsQuery","useGetMeQuery","useLoginMutation","useAccessTokenExchangeMutation","useLogoutMutation","useUpdateMeMutation","useResetPasswordMutation","useRegisterAdminMutation","useRegisterUserMutation","useGetRegistrationInfoQuery","useForgotPasswordMutation","useGetMyPermissionsQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery","useIsSSOLockedQuery","useGetProvidersQuery","useGetProviderOptionsQuery","useUpdateProviderOptionsMutation"],"mappings":"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"}
@@ -50,6 +50,15 @@ const authService = adminApi.enhanceEndpoints({
50
50
  'Me'
51
51
  ]
52
52
  }),
53
+ getAiToken: builder.query({
54
+ query: ()=>({
55
+ method: 'GET',
56
+ url: '/admin/users/me/ai-token'
57
+ }),
58
+ transformResponse (res) {
59
+ return res.data;
60
+ }
61
+ }),
53
62
  /**
54
63
  * Permissions
55
64
  */ checkPermissions: builder.query({
@@ -183,9 +192,9 @@ const authService = adminApi.enhanceEndpoints({
183
192
  ]
184
193
  })
185
194
  }),
186
- overrideExisting: false
195
+ overrideExisting: true
187
196
  });
188
- const { useCheckPermissionsQuery, useLazyCheckPermissionsQuery, useGetMeQuery, useLoginMutation, useAccessTokenExchangeMutation, useLogoutMutation, useUpdateMeMutation, useResetPasswordMutation, useRegisterAdminMutation, useRegisterUserMutation, useGetRegistrationInfoQuery, useForgotPasswordMutation, useGetMyPermissionsQuery, useIsSSOLockedQuery, useGetProvidersQuery, useGetProviderOptionsQuery, useUpdateProviderOptionsMutation } = authService;
197
+ const { useCheckPermissionsQuery, useLazyCheckPermissionsQuery, useGetMeQuery, useLoginMutation, useAccessTokenExchangeMutation, useLogoutMutation, useUpdateMeMutation, useResetPasswordMutation, useRegisterAdminMutation, useRegisterUserMutation, useGetRegistrationInfoQuery, useForgotPasswordMutation, useGetMyPermissionsQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery, useIsSSOLockedQuery, useGetProvidersQuery, useGetProviderOptionsQuery, useUpdateProviderOptionsMutation } = authService;
189
198
 
190
- export { useAccessTokenExchangeMutation, useCheckPermissionsQuery, useForgotPasswordMutation, useGetMeQuery, useGetMyPermissionsQuery, useGetProviderOptionsQuery, useGetProvidersQuery, useGetRegistrationInfoQuery, useIsSSOLockedQuery, useLazyCheckPermissionsQuery, useLoginMutation, useLogoutMutation, useRegisterAdminMutation, useRegisterUserMutation, useResetPasswordMutation, useUpdateMeMutation, useUpdateProviderOptionsMutation };
199
+ export { useAccessTokenExchangeMutation, useCheckPermissionsQuery, useForgotPasswordMutation, useGetAiTokenQuery, useGetMeQuery, useGetMyPermissionsQuery, useGetProviderOptionsQuery, useGetProvidersQuery, useGetRegistrationInfoQuery, useIsSSOLockedQuery, useLazyCheckPermissionsQuery, useLazyGetAiTokenQuery, useLoginMutation, useLogoutMutation, useRegisterAdminMutation, useRegisterUserMutation, useResetPasswordMutation, useUpdateMeMutation, useUpdateProviderOptionsMutation };
191
200
  //# sourceMappingURL=auth.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.mjs","sources":["../../../../../admin/src/services/auth.ts"],"sourcesContent":["import { ProvidersOptions } from '../../../shared/contracts/admin';\nimport {\n type AccessTokenExchange,\n type Login,\n type ResetPassword,\n type RegisterAdmin,\n type Register,\n type RegistrationInfo,\n ForgotPassword,\n} from '../../../shared/contracts/authentication';\nimport { Check } from '../../../shared/contracts/permissions';\nimport { GetProviders, IsSSOLocked } from '../../../shared/contracts/providers';\nimport { type GetOwnPermissions, type GetMe, type UpdateMe } from '../../../shared/contracts/users';\n\nimport { adminApi } from './api';\n\nconst authService = adminApi\n .enhanceEndpoints({\n addTagTypes: ['User', 'Me', 'ProvidersOptions'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n /**\n * ME\n */\n getMe: builder.query<GetMe.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me',\n }),\n transformResponse(res: GetMe.Response) {\n return res.data;\n },\n providesTags: (res) => (res ? ['Me', { type: 'User', id: res.id }] : ['Me']),\n }),\n getMyPermissions: builder.query<GetOwnPermissions.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/permissions',\n }),\n transformResponse(res: GetOwnPermissions.Response) {\n return res.data;\n },\n }),\n updateMe: builder.mutation<UpdateMe.Response['data'], UpdateMe.Request['body']>({\n query: (body) => ({\n method: 'PUT',\n url: '/admin/users/me',\n data: body,\n }),\n transformResponse(res: UpdateMe.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n /**\n * Permissions\n */\n checkPermissions: builder.query<Check.Response, Check.Request['body']>({\n query: (permissions) => ({\n method: 'POST',\n url: '/admin/permissions/check',\n data: permissions,\n }),\n }),\n /**\n * Auth methods\n */\n login: builder.mutation<Login.Response['data'], Login.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/login',\n data: body,\n }),\n transformResponse(res: Login.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n logout: builder.mutation<void, { deviceId?: string } | void>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/logout',\n data: body,\n }),\n }),\n resetPassword: builder.mutation<\n ResetPassword.Response['data'],\n ResetPassword.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/reset-password',\n data: body,\n }),\n transformResponse(res: ResetPassword.Response) {\n return res.data;\n },\n }),\n accessTokenExchange: builder.mutation<\n AccessTokenExchange.Response['data'],\n AccessTokenExchange.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/access-token',\n data: body,\n }),\n transformResponse(res: AccessTokenExchange.Response) {\n return res.data;\n },\n }),\n getRegistrationInfo: builder.query<\n RegistrationInfo.Response['data'],\n RegistrationInfo.Request['query']['registrationToken']\n >({\n query: (registrationToken) => ({\n url: '/admin/registration-info',\n method: 'GET',\n config: {\n params: {\n registrationToken,\n },\n },\n }),\n transformResponse(res: RegistrationInfo.Response) {\n return res.data;\n },\n }),\n registerAdmin: builder.mutation<\n RegisterAdmin.Response['data'],\n RegisterAdmin.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register-admin',\n data: body,\n }),\n transformResponse(res: RegisterAdmin.Response) {\n return res.data;\n },\n }),\n registerUser: builder.mutation<Register.Response['data'], Register.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register',\n data: body,\n }),\n transformResponse(res: Register.Response) {\n return res.data;\n },\n }),\n forgotPassword: builder.mutation<ForgotPassword.Response, ForgotPassword.Request['body']>({\n query: (body) => ({\n url: '/admin/forgot-password',\n method: 'POST',\n data: body,\n }),\n }),\n isSSOLocked: builder.query<IsSSOLocked.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/isSSOLocked',\n method: 'GET',\n }),\n transformResponse(res: IsSSOLocked.Response) {\n return res.data;\n },\n }),\n getProviders: builder.query<GetProviders.Response, void>({\n query: () => ({\n url: '/admin/providers',\n method: 'GET',\n }),\n }),\n getProviderOptions: builder.query<ProvidersOptions.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/options',\n method: 'GET',\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n providesTags: ['ProvidersOptions'],\n }),\n updateProviderOptions: builder.mutation<\n ProvidersOptions.Response['data'],\n ProvidersOptions.Request['body']\n >({\n query: (body) => ({\n url: '/admin/providers/options',\n method: 'PUT',\n data: body,\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n invalidatesTags: ['ProvidersOptions'],\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} = authService;\n\nexport {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n};\n"],"names":["authService","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getMe","query","method","url","transformResponse","res","data","providesTags","type","id","getMyPermissions","updateMe","mutation","body","invalidatesTags","checkPermissions","permissions","login","logout","resetPassword","accessTokenExchange","getRegistrationInfo","registrationToken","config","params","registerAdmin","registerUser","forgotPassword","isSSOLocked","getProviders","getProviderOptions","updateProviderOptions","overrideExisting","useCheckPermissionsQuery","useLazyCheckPermissionsQuery","useGetMeQuery","useLoginMutation","useAccessTokenExchangeMutation","useLogoutMutation","useUpdateMeMutation","useResetPasswordMutation","useRegisterAdminMutation","useRegisterUserMutation","useGetRegistrationInfoQuery","useForgotPasswordMutation","useGetMyPermissionsQuery","useIsSSOLockedQuery","useGetProvidersQuery","useGetProviderOptionsQuery","useUpdateProviderOptionsMutation"],"mappings":"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"}
1
+ {"version":3,"file":"auth.mjs","sources":["../../../../../admin/src/services/auth.ts"],"sourcesContent":["import { ProvidersOptions } from '../../../shared/contracts/admin';\nimport {\n type AccessTokenExchange,\n type Login,\n type ResetPassword,\n type RegisterAdmin,\n type Register,\n type RegistrationInfo,\n ForgotPassword,\n} from '../../../shared/contracts/authentication';\nimport { Check } from '../../../shared/contracts/permissions';\nimport { GetProviders, IsSSOLocked } from '../../../shared/contracts/providers';\nimport {\n type GetOwnPermissions,\n type GetMe,\n type UpdateMe,\n type GetAiToken,\n} from '../../../shared/contracts/users';\n\nimport { adminApi } from './api';\n\nconst authService = adminApi\n .enhanceEndpoints({\n addTagTypes: ['User', 'Me', 'ProvidersOptions'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n /**\n * ME\n */\n getMe: builder.query<GetMe.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me',\n }),\n transformResponse(res: GetMe.Response) {\n return res.data;\n },\n providesTags: (res) => (res ? ['Me', { type: 'User', id: res.id }] : ['Me']),\n }),\n getMyPermissions: builder.query<GetOwnPermissions.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/permissions',\n }),\n transformResponse(res: GetOwnPermissions.Response) {\n return res.data;\n },\n }),\n updateMe: builder.mutation<UpdateMe.Response['data'], UpdateMe.Request['body']>({\n query: (body) => ({\n method: 'PUT',\n url: '/admin/users/me',\n data: body,\n }),\n transformResponse(res: UpdateMe.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/users/me/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n /**\n * Permissions\n */\n checkPermissions: builder.query<Check.Response, Check.Request['body']>({\n query: (permissions) => ({\n method: 'POST',\n url: '/admin/permissions/check',\n data: permissions,\n }),\n }),\n /**\n * Auth methods\n */\n login: builder.mutation<Login.Response['data'], Login.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/login',\n data: body,\n }),\n transformResponse(res: Login.Response) {\n return res.data;\n },\n invalidatesTags: ['Me'],\n }),\n logout: builder.mutation<void, { deviceId?: string } | void>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/logout',\n data: body,\n }),\n }),\n resetPassword: builder.mutation<\n ResetPassword.Response['data'],\n ResetPassword.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/reset-password',\n data: body,\n }),\n transformResponse(res: ResetPassword.Response) {\n return res.data;\n },\n }),\n accessTokenExchange: builder.mutation<\n AccessTokenExchange.Response['data'],\n AccessTokenExchange.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/access-token',\n data: body,\n }),\n transformResponse(res: AccessTokenExchange.Response) {\n return res.data;\n },\n }),\n getRegistrationInfo: builder.query<\n RegistrationInfo.Response['data'],\n RegistrationInfo.Request['query']['registrationToken']\n >({\n query: (registrationToken) => ({\n url: '/admin/registration-info',\n method: 'GET',\n config: {\n params: {\n registrationToken,\n },\n },\n }),\n transformResponse(res: RegistrationInfo.Response) {\n return res.data;\n },\n }),\n registerAdmin: builder.mutation<\n RegisterAdmin.Response['data'],\n RegisterAdmin.Request['body']\n >({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register-admin',\n data: body,\n }),\n transformResponse(res: RegisterAdmin.Response) {\n return res.data;\n },\n }),\n registerUser: builder.mutation<Register.Response['data'], Register.Request['body']>({\n query: (body) => ({\n method: 'POST',\n url: '/admin/register',\n data: body,\n }),\n transformResponse(res: Register.Response) {\n return res.data;\n },\n }),\n forgotPassword: builder.mutation<ForgotPassword.Response, ForgotPassword.Request['body']>({\n query: (body) => ({\n url: '/admin/forgot-password',\n method: 'POST',\n data: body,\n }),\n }),\n isSSOLocked: builder.query<IsSSOLocked.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/isSSOLocked',\n method: 'GET',\n }),\n transformResponse(res: IsSSOLocked.Response) {\n return res.data;\n },\n }),\n getProviders: builder.query<GetProviders.Response, void>({\n query: () => ({\n url: '/admin/providers',\n method: 'GET',\n }),\n }),\n getProviderOptions: builder.query<ProvidersOptions.Response['data'], void>({\n query: () => ({\n url: '/admin/providers/options',\n method: 'GET',\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n providesTags: ['ProvidersOptions'],\n }),\n updateProviderOptions: builder.mutation<\n ProvidersOptions.Response['data'],\n ProvidersOptions.Request['body']\n >({\n query: (body) => ({\n url: '/admin/providers/options',\n method: 'PUT',\n data: body,\n }),\n transformResponse(res: ProvidersOptions.Response) {\n return res.data;\n },\n invalidatesTags: ['ProvidersOptions'],\n }),\n }),\n overrideExisting: true,\n });\n\nconst {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useGetAiTokenQuery,\n useLazyGetAiTokenQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n} = authService;\n\nexport {\n useCheckPermissionsQuery,\n useLazyCheckPermissionsQuery,\n useGetMeQuery,\n useLoginMutation,\n useAccessTokenExchangeMutation,\n useLogoutMutation,\n useUpdateMeMutation,\n useResetPasswordMutation,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n useGetRegistrationInfoQuery,\n useForgotPasswordMutation,\n useGetMyPermissionsQuery,\n useGetAiTokenQuery,\n useLazyGetAiTokenQuery,\n useIsSSOLockedQuery,\n useGetProvidersQuery,\n useGetProviderOptionsQuery,\n useUpdateProviderOptionsMutation,\n};\n"],"names":["authService","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getMe","query","method","url","transformResponse","res","data","providesTags","type","id","getMyPermissions","updateMe","mutation","body","invalidatesTags","getAiToken","checkPermissions","permissions","login","logout","resetPassword","accessTokenExchange","getRegistrationInfo","registrationToken","config","params","registerAdmin","registerUser","forgotPassword","isSSOLocked","getProviders","getProviderOptions","updateProviderOptions","overrideExisting","useCheckPermissionsQuery","useLazyCheckPermissionsQuery","useGetMeQuery","useLoginMutation","useAccessTokenExchangeMutation","useLogoutMutation","useUpdateMeMutation","useResetPasswordMutation","useRegisterAdminMutation","useRegisterUserMutation","useGetRegistrationInfoQuery","useForgotPasswordMutation","useGetMyPermissionsQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery","useIsSSOLockedQuery","useGetProvidersQuery","useGetProviderOptionsQuery","useUpdateProviderOptionsMutation"],"mappings":"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"}
@@ -533,6 +533,7 @@ var en = {
533
533
  "app.components.NpsSurvey.dismiss-survey-label": "Dismiss survey",
534
534
  "app.components.NpsSurvey.no-recommendation": "Not at all likely",
535
535
  "app.components.NpsSurvey.happy-to-recommend": "Extremely likely",
536
+ "app.components.NpsSurvey.select-rating": "Select rating",
536
537
  "app.components.Official": "Official",
537
538
  "app.components.Onboarding.help.button": "Help button",
538
539
  "app.components.Onboarding.label.completed": "% completed",
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -529,6 +529,7 @@ var en = {
529
529
  "app.components.NpsSurvey.dismiss-survey-label": "Dismiss survey",
530
530
  "app.components.NpsSurvey.no-recommendation": "Not at all likely",
531
531
  "app.components.NpsSurvey.happy-to-recommend": "Extremely likely",
532
+ "app.components.NpsSurvey.select-rating": "Select rating",
532
533
  "app.components.Official": "Official",
533
534
  "app.components.Onboarding.help.button": "Help button",
534
535
  "app.components.Onboarding.label.completed": "% completed",
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -92,7 +92,7 @@ const SingleSignOnPage = ()=>{
92
92
  }
93
93
  };
94
94
  const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;
95
- return /*#__PURE__*/ jsxRuntime.jsxs(Layout.Layouts.Root, {
95
+ return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
96
96
  children: [
97
97
  /*#__PURE__*/ jsxRuntime.jsx(PageHelpers.Page.Title, {
98
98
  children: formatMessage({
@@ -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 <Layouts.Root>\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 >\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 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 </Layouts.Root>\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","Layouts","Root","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","_Fragment","Header","primaryAction","Button","loading","startIcon","Check","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","hint","size","options","map","toString","placeholder","field","Item","col","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,MAAMA,MAASC,GAAAA,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,KAAOC,EAAAA,UAAAA,GAAAA;QACpD,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,kCAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,KAAA,CAAA;AACAC,IAAAA,cAAAA,EAAgBb,cACbc,CAAAA,KAAK,EACLF,CAAAA,QAAQ,GACRG,EAAE,CACDf,cAAIQ,CAAAA,KAAK,EAAGC,CAAAA,IAAI,CAAC,gBAAA,EAAkB,CAACC,KAAOC,EAAAA,UAAAA,GAAAA;QACzC,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,kCAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,KAAA,CAAA;AAEN,CAAA,CAAA;MAEaI,gBAAmB,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAC1B,IAAA,MAAMC,cAAcC,sBAAiB,CAAA,CAACC,QAAUA,KAAMC,CAAAA,SAAS,CAACH,WAAW,CAAA;IAC3E,MAAM,EAAEI,kBAAkB,EAAE,GAAGC,6BAAAA,EAAAA;AAC/B,IAAA,MAAM,EACJC,uBAAyBC,EAAAA,cAAc,EACvCC,+BAAiCC,EAAAA,sBAAsB,EACxD,GAAGC,qCAAAA,EAAAA;AAEJ,IAAA,MAAM,EAAEC,SAAWC,EAAAA,wBAAwB,EAAEC,IAAI,EAAE,GAAGC,+BAAAA,EAAAA;AAEtD,IAAA,MAAM,CAACC,qBAAuB,EAAA,EAAEJ,WAAWK,gBAAgB,EAAE,CAAC,GAC5DC,qCAAAA,EAAAA;AAEF,IAAA,MAAM,EACJN,SAAAA,EAAWO,oBAAoB,EAC/BC,cAAgB,EAAA,EAAEC,SAAS,EAAEC,OAASC,EAAAA,YAAY,EAAE,EACrD,GAAGC,eAAQ,CAAA;QACV,GAAGvB,WAAAA,CAAYwB,QAAQ,EAAEC,GAAG;AAC5BC,QAAAA,SAAAA,EAAW1B,WAAYwB,CAAAA,QAAQ,EAAEG,KAAAA,CAAMC,QAAQ;AACjD,KAAA,CAAA;IAEA,MAAM,EAAED,KAAK,EAAEhB,SAAAA,EAAWkB,cAAc,EAAE,GAAGC,4BAAcC,SAAW,EAAA;AACpEC,QAAAA,IAAAA,EAAM,CAACV;AACT,KAAA,CAAA;IAEA,MAAMW,YAAAA,GAAe,OACnBC,IACAC,EAAAA,OAAAA,GAAAA;QAEA,IAAI;YACF,MAAMC,GAAAA,GAAM,MAAMrB,qBAAsBmB,CAAAA,IAAAA,CAAAA;AAExC,YAAA,IAAI,WAAWE,GAAK,EAAA;gBAClB,IAAIC,0BAAAA,CAAiBD,IAAIE,KAAK,CAAA,IAAKF,IAAIE,KAAK,CAACC,IAAI,KAAK,iBAAmB,EAAA;AACvEJ,oBAAAA,OAAAA,CAAQK,SAAS,CAAC/B,sBAAuB2B,CAAAA,GAAAA,CAAIE,KAAK,CAAA,CAAA;iBAC7C,MAAA;oBACLlC,kBAAmB,CAAA;wBACjBqC,IAAM,EAAA,QAAA;wBACNC,OAASnC,EAAAA,cAAAA,CAAe6B,IAAIE,KAAK;AACnC,qBAAA,CAAA;AACF;AAEA,gBAAA;AACF;YAEAlC,kBAAmB,CAAA;gBACjBqC,IAAM,EAAA,SAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAc,CAAA;oBAAE6C,EAAI,EAAA;AAA6B,iBAAA;AAC5D,aAAA,CAAA;AACF,SAAA,CAAE,OAAOC,GAAK,EAAA;YACZxC,kBAAmB,CAAA;gBACjBqC,IAAM,EAAA,QAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAc,CAAA;oBACrB6C,EAAI,EAAA,oBAAA;oBACJE,cAAgB,EAAA;AAClB,iBAAA;AACF,aAAA,CAAA;AACF;AACF,KAAA;IAEA,MAAMC,aAAAA,GAAgBjB,kBAAkBX,oBAAwBN,IAAAA,wBAAAA;IAEhE,qBACEmC,eAAA,CAACC,eAAQC,IAAI,EAAA;;AACX,0BAAAC,cAAA,CAACC,iBAAKC,KAAK,EAAA;0BACRtD,aACC,CAAA;oBAAE6C,EAAI,EAAA,oBAAA;oBAAsBE,cAAgB,EAAA;iBAC5C,EAAA;oBACEN,IAAM,EAAA;AACR,iBAAA;;AAGJ,0BAAAW,cAAA,CAACC,iBAAKE,IAAI,EAAA;AAACC,gBAAAA,WAAAA,EAAWtC,gBAAoB8B,IAAAA,aAAAA;AAAeS,gBAAAA,QAAAA,EAAU,CAAC,CAAA;AAClE,gBAAA,QAAA,gBAAAL,cAACM,CAAAA,SAAAA,EAAAA;oBACCC,MAAO,EAAA,KAAA;oBACPC,QAAUzB,EAAAA,YAAAA;oBACV0B,gBAAkB/E,EAAAA,MAAAA;AAClBgF,oBAAAA,QAAAA,EAAU,CAACxC,SAAAA;AACXyC,oBAAAA,aAAAA,EACEhD,IAAQ,IAAA;wBACN7B,YAAc,EAAA,KAAA;wBACdI,WAAa,EAAA,IAAA;wBACbM,cAAgB,EAAA;AAClB,qBAAA;AAGD,oBAAA,QAAA,EAAA,CAAC,EAAEoE,QAAQ,EAAEC,YAAY,EAAE,iBAC1BhB,eAAA,CAAAiB,mBAAA,EAAA;;AACE,8CAAAd,cAAA,CAACF,eAAQiB,MAAM,EAAA;AACbC,oCAAAA,aAAAA,gBACEhB,cAACiB,CAAAA,mBAAAA,EAAAA;AACCP,wCAAAA,QAAAA,EAAU,CAACE,QAAAA;wCACXM,OAASL,EAAAA,YAAAA;AACTM,wCAAAA,SAAAA,gBAAWnB,cAACoB,CAAAA,WAAAA,EAAAA,EAAAA,CAAAA;wCACZ7B,IAAK,EAAA,QAAA;kDAEJ3C,aAAc,CAAA;4CACb6C,EAAI,EAAA,aAAA;4CACJE,cAAgB,EAAA;AAClB,yCAAA;;AAGJ0B,oCAAAA,KAAAA,EAAOzE,aAAc,CAAA;wCACnB6C,EAAI,EAAA,oBAAA;wCACJE,cAAgB,EAAA;AAClB,qCAAA,CAAA;AACA2B,oCAAAA,QAAAA,EAAU1E,aAAc,CAAA;wCACtB6C,EAAI,EAAA,0BAAA;wCACJE,cAAgB,EAAA;AAClB,qCAAA,CAAA;AACA4B,oCAAAA,eAAAA,gBACEvB,cAACwB,CAAAA,2BAAAA,EAAAA;AACCC,wCAAAA,KAAAA,EAAO7E,aAAc,CAAA;4CACnB6C,EAAI,EAAA,iCAAA;4CACJE,cAAgB,EAAA;AAClB,yCAAA;;;AAIN,8CAAAK,cAAA,CAACF,eAAQ4B,OAAO,EAAA;AACbb,oCAAAA,QAAAA,EAAAA,YAAAA,IAAgBjB,aACf,iBAAAI,cAAA,CAACC,gBAAK0B,CAAAA,OAAO,sBAEb9B,eAAC+B,CAAAA,iBAAAA,EAAAA;wCACCC,SAAU,EAAA,QAAA;wCACVC,UAAW,EAAA,SAAA;wCACXC,GAAK,EAAA,CAAA;wCACLC,UAAW,EAAA,UAAA;wCACXC,OAAS,EAAA,CAAA;wCACTC,MAAO,EAAA,cAAA;wCACPC,SAAS,EAAA,IAAA;;0DAETnC,cAACoC,CAAAA,uBAAAA,EAAAA;gDAAWC,OAAQ,EAAA,OAAA;gDAAQC,GAAI,EAAA,IAAA;0DAC7B1F,aAAc,CAAA;oDACb6C,EAAI,EAAA,iBAAA;oDACJE,cAAgB,EAAA;AAClB,iDAAA;;AAEF,0DAAAK,cAAA,CAACuC,kBAAKxC,IAAI,EAAA;gDAACgC,GAAK,EAAA,CAAA;AACb,gDAAA,QAAA,EAAA;AACC,oDAAA;AACES,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,4CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,sCAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,cAAA;wDACNoD,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR,qDAAA;AACA,oDAAA;AACEiD,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,2CAAA;4DACJE,cACE,EAAA;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,qCAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,aAAA;wDACNqD,OAASjE,EAAAA,KAAAA,CAAMkE,GAAG,CAAC,CAAC,EAAElD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAOpC,EAAAA,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGmD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAajG,aAAc,CAAA;4DACzB6C,EAAI,EAAA,2CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACA8C,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR,qDAAA;AACA,oDAAA;AACEiD,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,uDAAA;4DACJE,cACE,EAAA;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,iDAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,gBAAA;wDACNqD,OAASjE,EAAAA,KAAAA,CAAMkE,GAAG,CAAC,CAAC,EAAElD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAOpC,EAAAA,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGmD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAajG,aAAc,CAAA;4DACzB6C,EAAI,EAAA,2CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACA8C,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR;iDACD,CAACoD,GAAG,CAAC,CAAC,EAAEF,IAAI,EAAE,GAAGK,KAAO,EAAA,iBACvB9C,cAACuC,CAAAA,iBAAAA,CAAKQ,IAAI,EAAA;wDAERC,GAAKP,EAAAA,IAAAA;wDACLZ,SAAU,EAAA,QAAA;wDACVC,UAAW,EAAA,SAAA;AAEX,wDAAA,QAAA,gBAAA9B,cAACiD,CAAAA,iBAAAA,EAAAA;AAAmB,4DAAA,GAAGH;;AALlBA,qDAAAA,EAAAA,KAAAA,CAAMzD,IAAI,CAAA;;;;;;;;;;;AAkBzC;AAIA,MAAM4D,oBAAoB,CAACC,KAAAA,GAAAA;AACzB,IAAA,OAAQA,MAAM3D,IAAI;QAChB,KAAK,OAAA;AACH,YAAA,qBAAOS,cAACmD,CAAAA,gBAAAA,EAAAA;AAAkB,gBAAA,GAAGD;;AAC/B,QAAA;AACE,YAAA,qBAAOlD,cAACoD,CAAAA,sBAAAA,EAAAA;AAAe,gBAAA,GAAGF;;AAC9B;AACF,CAAA;AAMA,MAAMC,gBAAmB,GAAA,CAAC,EAAEX,IAAI,EAAEf,KAAK,EAAEpC,IAAI,EAAEqD,OAAO,EAAE,GAAGQ,KAA8B,EAAA,GAAA;AACvF,IAAA,MAAMJ,QAAQO,aAAShE,CAAAA,IAAAA,CAAAA;IAEvB,qBACEQ,eAAA,CAACyD,mBAAMvD,IAAI,EAAA;QAACV,IAAMA,EAAAA,IAAAA;QAAMmD,IAAMA,EAAAA,IAAAA;AAAMpD,QAAAA,KAAAA,EAAO0D,MAAM1D,KAAK;;AACpD,0BAAAY,cAAA,CAACsD,mBAAMC,KAAK,EAAA;AAAE9B,gBAAAA,QAAAA,EAAAA;;0BACdzB,cAACwD,CAAAA,wBAAAA,EAAAA;AACCC,gBAAAA,QAAAA,EAAU,CAACpH,KAAAA,GAAUyG,KAAMW,CAAAA,QAAQ,CAAC,gBAAkBpH,EAAAA,KAAAA,CAAAA;AACtDqH,gBAAAA,OAAAA,EAAS,IAAMZ,KAAAA,CAAMW,QAAQ,CAAC,kBAAkB,EAAE,CAAA;gBAClDpH,KAAOyG,EAAAA,KAAAA,CAAMzG,KAAK,IAAI,EAAE;gBACxBsH,QAAQ,EAAA,IAAA;AACP,gBAAA,GAAGT,KAAK;0BAERR,OAAQC,CAAAA,GAAG,CAAC,CAAC,EAAElB,KAAK,EAAEpF,KAAK,EAAE,iBAC5B2D,cAAC4D,CAAAA,8BAAAA,EAAAA;wBAA8BvH,KAAOA,EAAAA,KAAAA;AACnCoF,wBAAAA,QAAAA,EAAAA;AADqBpF,qBAAAA,EAAAA,KAAAA,CAAAA;;AAK5B,0BAAA2D,cAAA,CAACsD,mBAAMO,IAAI,EAAA,EAAA,CAAA;AACX,0BAAA7D,cAAA,CAACsD,mBAAMQ,KAAK,EAAA,EAAA;;;AAGlB,CAAA;MAEaC,YAAe,GAAA,IAAA;IAC1B,MAAMjH,WAAAA,GAAcC,sBAAiB,CAAA,CAACC,KAAUA,GAAAA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAACwB,QAAQ,EAAEC,GAAKyF,EAAAA,IAAAA,CAAAA;IAE3F,qBACEhE,cAAA,CAACC,iBAAKgE,OAAO,EAAA;QAACnH,WAAaA,EAAAA,WAAAA;AACzB,QAAA,QAAA,gBAAAkD,cAACrD,CAAAA,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 >\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 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","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","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":"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"}
@@ -71,7 +71,7 @@ const SingleSignOnPage = ()=>{
71
71
  }
72
72
  };
73
73
  const isLoadingData = isLoadingRoles || isLoadingPermissions || isLoadingProviderOptions;
74
- return /*#__PURE__*/ jsxs(Layouts.Root, {
74
+ return /*#__PURE__*/ jsxs(Fragment, {
75
75
  children: [
76
76
  /*#__PURE__*/ jsx(Page.Title, {
77
77
  children: formatMessage({
@@ -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 <Layouts.Root>\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 >\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 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 </Layouts.Root>\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","Layouts","Root","_jsx","Page","Title","Main","aria-busy","tabIndex","Form","method","onSubmit","validationSchema","disabled","initialValues","modified","isSubmitting","_Fragment","Header","primaryAction","Button","loading","startIcon","Check","title","subtitle","secondaryAction","GradientBadge","label","Content","Loading","Flex","direction","alignItems","gap","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","hint","size","options","map","toString","placeholder","field","Item","col","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":";;;;;;;;;;;;;;;;;;;AAoCA,MAAMA,MAASC,GAAAA,GAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AAChCC,IAAAA,YAAAA,EAAcH,IAAII,IAAI,EAAA,CAAGC,QAAQ,CAACC,YAAiBD,QAAQ,CAAA;AAC3DE,IAAAA,WAAAA,EAAaP,IAAIQ,KAAK,EAAA,CAAGC,IAAI,CAAC,cAAA,EAAgB,CAACC,KAAOC,EAAAA,UAAAA,GAAAA;QACpD,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,YAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,KAAA,CAAA;AACAC,IAAAA,cAAAA,EAAgBb,GACbc,CAAAA,KAAK,EACLF,CAAAA,QAAQ,GACRG,EAAE,CACDf,GAAIQ,CAAAA,KAAK,EAAGC,CAAAA,IAAI,CAAC,gBAAA,EAAkB,CAACC,KAAOC,EAAAA,UAAAA,GAAAA;QACzC,OAAOD,KAAAA,GAAQC,WAAWN,QAAQ,CAACC,YAAiBD,QAAQ,CAAA,GAAIM,WAAWC,QAAQ,EAAA;AACrF,KAAA,CAAA;AAEN,CAAA,CAAA;MAEaI,gBAAmB,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAMC,cAAcC,gBAAiB,CAAA,CAACC,QAAUA,KAAMC,CAAAA,SAAS,CAACH,WAAW,CAAA;IAC3E,MAAM,EAAEI,kBAAkB,EAAE,GAAGC,eAAAA,EAAAA;AAC/B,IAAA,MAAM,EACJC,uBAAyBC,EAAAA,cAAc,EACvCC,+BAAiCC,EAAAA,sBAAsB,EACxD,GAAGC,kBAAAA,EAAAA;AAEJ,IAAA,MAAM,EAAEC,SAAWC,EAAAA,wBAAwB,EAAEC,IAAI,EAAE,GAAGC,0BAAAA,EAAAA;AAEtD,IAAA,MAAM,CAACC,qBAAuB,EAAA,EAAEJ,WAAWK,gBAAgB,EAAE,CAAC,GAC5DC,gCAAAA,EAAAA;AAEF,IAAA,MAAM,EACJN,SAAAA,EAAWO,oBAAoB,EAC/BC,cAAgB,EAAA,EAAEC,SAAS,EAAEC,OAASC,EAAAA,YAAY,EAAE,EACrD,GAAGC,OAAQ,CAAA;QACV,GAAGvB,WAAAA,CAAYwB,QAAQ,EAAEC,GAAG;AAC5BC,QAAAA,SAAAA,EAAW1B,WAAYwB,CAAAA,QAAQ,EAAEG,KAAAA,CAAMC,QAAQ;AACjD,KAAA,CAAA;IAEA,MAAM,EAAED,KAAK,EAAEhB,SAAAA,EAAWkB,cAAc,EAAE,GAAGC,cAAcC,SAAW,EAAA;AACpEC,QAAAA,IAAAA,EAAM,CAACV;AACT,KAAA,CAAA;IAEA,MAAMW,YAAAA,GAAe,OACnBC,IACAC,EAAAA,OAAAA,GAAAA;QAEA,IAAI;YACF,MAAMC,GAAAA,GAAM,MAAMrB,qBAAsBmB,CAAAA,IAAAA,CAAAA;AAExC,YAAA,IAAI,WAAWE,GAAK,EAAA;gBAClB,IAAIC,gBAAAA,CAAiBD,IAAIE,KAAK,CAAA,IAAKF,IAAIE,KAAK,CAACC,IAAI,KAAK,iBAAmB,EAAA;AACvEJ,oBAAAA,OAAAA,CAAQK,SAAS,CAAC/B,sBAAuB2B,CAAAA,GAAAA,CAAIE,KAAK,CAAA,CAAA;iBAC7C,MAAA;oBACLlC,kBAAmB,CAAA;wBACjBqC,IAAM,EAAA,QAAA;wBACNC,OAASnC,EAAAA,cAAAA,CAAe6B,IAAIE,KAAK;AACnC,qBAAA,CAAA;AACF;AAEA,gBAAA;AACF;YAEAlC,kBAAmB,CAAA;gBACjBqC,IAAM,EAAA,SAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAc,CAAA;oBAAE6C,EAAI,EAAA;AAA6B,iBAAA;AAC5D,aAAA,CAAA;AACF,SAAA,CAAE,OAAOC,GAAK,EAAA;YACZxC,kBAAmB,CAAA;gBACjBqC,IAAM,EAAA,QAAA;AACNC,gBAAAA,OAAAA,EAAS5C,aAAc,CAAA;oBACrB6C,EAAI,EAAA,oBAAA;oBACJE,cAAgB,EAAA;AAClB,iBAAA;AACF,aAAA,CAAA;AACF;AACF,KAAA;IAEA,MAAMC,aAAAA,GAAgBjB,kBAAkBX,oBAAwBN,IAAAA,wBAAAA;IAEhE,qBACEmC,IAAA,CAACC,QAAQC,IAAI,EAAA;;AACX,0BAAAC,GAAA,CAACC,KAAKC,KAAK,EAAA;0BACRtD,aACC,CAAA;oBAAE6C,EAAI,EAAA,oBAAA;oBAAsBE,cAAgB,EAAA;iBAC5C,EAAA;oBACEN,IAAM,EAAA;AACR,iBAAA;;AAGJ,0BAAAW,GAAA,CAACC,KAAKE,IAAI,EAAA;AAACC,gBAAAA,WAAAA,EAAWtC,gBAAoB8B,IAAAA,aAAAA;AAAeS,gBAAAA,QAAAA,EAAU,CAAC,CAAA;AAClE,gBAAA,QAAA,gBAAAL,GAACM,CAAAA,IAAAA,EAAAA;oBACCC,MAAO,EAAA,KAAA;oBACPC,QAAUzB,EAAAA,YAAAA;oBACV0B,gBAAkB/E,EAAAA,MAAAA;AAClBgF,oBAAAA,QAAAA,EAAU,CAACxC,SAAAA;AACXyC,oBAAAA,aAAAA,EACEhD,IAAQ,IAAA;wBACN7B,YAAc,EAAA,KAAA;wBACdI,WAAa,EAAA,IAAA;wBACbM,cAAgB,EAAA;AAClB,qBAAA;AAGD,oBAAA,QAAA,EAAA,CAAC,EAAEoE,QAAQ,EAAEC,YAAY,EAAE,iBAC1BhB,IAAA,CAAAiB,QAAA,EAAA;;AACE,8CAAAd,GAAA,CAACF,QAAQiB,MAAM,EAAA;AACbC,oCAAAA,aAAAA,gBACEhB,GAACiB,CAAAA,MAAAA,EAAAA;AACCP,wCAAAA,QAAAA,EAAU,CAACE,QAAAA;wCACXM,OAASL,EAAAA,YAAAA;AACTM,wCAAAA,SAAAA,gBAAWnB,GAACoB,CAAAA,KAAAA,EAAAA,EAAAA,CAAAA;wCACZ7B,IAAK,EAAA,QAAA;kDAEJ3C,aAAc,CAAA;4CACb6C,EAAI,EAAA,aAAA;4CACJE,cAAgB,EAAA;AAClB,yCAAA;;AAGJ0B,oCAAAA,KAAAA,EAAOzE,aAAc,CAAA;wCACnB6C,EAAI,EAAA,oBAAA;wCACJE,cAAgB,EAAA;AAClB,qCAAA,CAAA;AACA2B,oCAAAA,QAAAA,EAAU1E,aAAc,CAAA;wCACtB6C,EAAI,EAAA,0BAAA;wCACJE,cAAgB,EAAA;AAClB,qCAAA,CAAA;AACA4B,oCAAAA,eAAAA,gBACEvB,GAACwB,CAAAA,qBAAAA,EAAAA;AACCC,wCAAAA,KAAAA,EAAO7E,aAAc,CAAA;4CACnB6C,EAAI,EAAA,iCAAA;4CACJE,cAAgB,EAAA;AAClB,yCAAA;;;AAIN,8CAAAK,GAAA,CAACF,QAAQ4B,OAAO,EAAA;AACbb,oCAAAA,QAAAA,EAAAA,YAAAA,IAAgBjB,aACf,iBAAAI,GAAA,CAACC,IAAK0B,CAAAA,OAAO,sBAEb9B,IAAC+B,CAAAA,IAAAA,EAAAA;wCACCC,SAAU,EAAA,QAAA;wCACVC,UAAW,EAAA,SAAA;wCACXC,GAAK,EAAA,CAAA;wCACLC,UAAW,EAAA,UAAA;wCACXC,OAAS,EAAA,CAAA;wCACTC,MAAO,EAAA,cAAA;wCACPC,SAAS,EAAA,IAAA;;0DAETnC,GAACoC,CAAAA,UAAAA,EAAAA;gDAAWC,OAAQ,EAAA,OAAA;gDAAQC,GAAI,EAAA,IAAA;0DAC7B1F,aAAc,CAAA;oDACb6C,EAAI,EAAA,iBAAA;oDACJE,cAAgB,EAAA;AAClB,iDAAA;;AAEF,0DAAAK,GAAA,CAACuC,KAAKxC,IAAI,EAAA;gDAACgC,GAAK,EAAA,CAAA;AACb,gDAAA,QAAA,EAAA;AACC,oDAAA;AACES,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,4CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,sCAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,cAAA;wDACNoD,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR,qDAAA;AACA,oDAAA;AACEiD,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,2CAAA;4DACJE,cACE,EAAA;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,qCAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,aAAA;wDACNqD,OAASjE,EAAAA,KAAAA,CAAMkE,GAAG,CAAC,CAAC,EAAElD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAOpC,EAAAA,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGmD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAajG,aAAc,CAAA;4DACzB6C,EAAI,EAAA,2CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACA8C,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR,qDAAA;AACA,oDAAA;AACEiD,wDAAAA,IAAAA,EAAM5F,aAAc,CAAA;4DAClB6C,EAAI,EAAA,uDAAA;4DACJE,cACE,EAAA;AACJ,yDAAA,CAAA;AACA8B,wDAAAA,KAAAA,EAAO7E,aAAc,CAAA;4DACnB6C,EAAI,EAAA,iDAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACAN,IAAM,EAAA,gBAAA;wDACNqD,OAASjE,EAAAA,KAAAA,CAAMkE,GAAG,CAAC,CAAC,EAAElD,EAAE,EAAEJ,IAAI,EAAE,IAAM;gEACpCoC,KAAOpC,EAAAA,IAAAA;AACPhD,gEAAAA,KAAAA,EAAOoD,GAAGmD,QAAQ;6DACpB,CAAA,CAAA;AACAC,wDAAAA,WAAAA,EAAajG,aAAc,CAAA;4DACzB6C,EAAI,EAAA,2CAAA;4DACJE,cAAgB,EAAA;AAClB,yDAAA,CAAA;wDACA8C,IAAM,EAAA,CAAA;wDACNlD,IAAM,EAAA;AACR;iDACD,CAACoD,GAAG,CAAC,CAAC,EAAEF,IAAI,EAAE,GAAGK,KAAO,EAAA,iBACvB9C,GAACuC,CAAAA,IAAAA,CAAKQ,IAAI,EAAA;wDAERC,GAAKP,EAAAA,IAAAA;wDACLZ,SAAU,EAAA,QAAA;wDACVC,UAAW,EAAA,SAAA;AAEX,wDAAA,QAAA,gBAAA9B,GAACiD,CAAAA,iBAAAA,EAAAA;AAAmB,4DAAA,GAAGH;;AALlBA,qDAAAA,EAAAA,KAAAA,CAAMzD,IAAI,CAAA;;;;;;;;;;;AAkBzC;AAIA,MAAM4D,oBAAoB,CAACC,KAAAA,GAAAA;AACzB,IAAA,OAAQA,MAAM3D,IAAI;QAChB,KAAK,OAAA;AACH,YAAA,qBAAOS,GAACmD,CAAAA,gBAAAA,EAAAA;AAAkB,gBAAA,GAAGD;;AAC/B,QAAA;AACE,YAAA,qBAAOlD,GAACoD,CAAAA,qBAAAA,EAAAA;AAAe,gBAAA,GAAGF;;AAC9B;AACF,CAAA;AAMA,MAAMC,gBAAmB,GAAA,CAAC,EAAEX,IAAI,EAAEf,KAAK,EAAEpC,IAAI,EAAEqD,OAAO,EAAE,GAAGQ,KAA8B,EAAA,GAAA;AACvF,IAAA,MAAMJ,QAAQO,QAAShE,CAAAA,IAAAA,CAAAA;IAEvB,qBACEQ,IAAA,CAACyD,MAAMvD,IAAI,EAAA;QAACV,IAAMA,EAAAA,IAAAA;QAAMmD,IAAMA,EAAAA,IAAAA;AAAMpD,QAAAA,KAAAA,EAAO0D,MAAM1D,KAAK;;AACpD,0BAAAY,GAAA,CAACsD,MAAMC,KAAK,EAAA;AAAE9B,gBAAAA,QAAAA,EAAAA;;0BACdzB,GAACwD,CAAAA,WAAAA,EAAAA;AACCC,gBAAAA,QAAAA,EAAU,CAACpH,KAAAA,GAAUyG,KAAMW,CAAAA,QAAQ,CAAC,gBAAkBpH,EAAAA,KAAAA,CAAAA;AACtDqH,gBAAAA,OAAAA,EAAS,IAAMZ,KAAAA,CAAMW,QAAQ,CAAC,kBAAkB,EAAE,CAAA;gBAClDpH,KAAOyG,EAAAA,KAAAA,CAAMzG,KAAK,IAAI,EAAE;gBACxBsH,QAAQ,EAAA,IAAA;AACP,gBAAA,GAAGT,KAAK;0BAERR,OAAQC,CAAAA,GAAG,CAAC,CAAC,EAAElB,KAAK,EAAEpF,KAAK,EAAE,iBAC5B2D,GAAC4D,CAAAA,iBAAAA,EAAAA;wBAA8BvH,KAAOA,EAAAA,KAAAA;AACnCoF,wBAAAA,QAAAA,EAAAA;AADqBpF,qBAAAA,EAAAA,KAAAA,CAAAA;;AAK5B,0BAAA2D,GAAA,CAACsD,MAAMO,IAAI,EAAA,EAAA,CAAA;AACX,0BAAA7D,GAAA,CAACsD,MAAMQ,KAAK,EAAA,EAAA;;;AAGlB,CAAA;MAEaC,YAAe,GAAA,IAAA;IAC1B,MAAMjH,WAAAA,GAAcC,gBAAiB,CAAA,CAACC,KAAUA,GAAAA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAACwB,QAAQ,EAAEC,GAAKyF,EAAAA,IAAAA,CAAAA;IAE3F,qBACEhE,GAAA,CAACC,KAAKgE,OAAO,EAAA;QAACnH,WAAaA,EAAAA,WAAAA;AACzB,QAAA,QAAA,gBAAAkD,GAACrD,CAAAA,gBAAAA,EAAAA,EAAAA;;AAGP;;;;"}
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 >\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 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","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","FormInputRenderer","props","MultiSelectInput","InputRenderer","useField","Field","Label","MultiSelect","onChange","onClear","withTags","MultiSelectOption","Hint","Error","ProtectedSSO","main","Protect"],"mappings":"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"}
@@ -8,7 +8,10 @@ const aiService = api.adminApi.injectEndpoints({
8
8
  query: ()=>({
9
9
  method: 'GET',
10
10
  url: `/admin/ai-usage`
11
- })
11
+ }),
12
+ providesTags: [
13
+ 'AIUsage'
14
+ ]
12
15
  }),
13
16
  getAiToken: builder.query({
14
17
  query: ()=>({
@@ -20,7 +23,7 @@ const aiService = api.adminApi.injectEndpoints({
20
23
  }
21
24
  })
22
25
  }),
23
- overrideExisting: false
26
+ overrideExisting: true
24
27
  });
25
28
  const { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;
26
29
 
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;;;AAGA,MAAMA,SAAAA,GAAYC,YAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB;AACF,aAAA,CAAA;YACAC,UAAYL,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAE,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGhB;;;;;;"}
1
+ {"version":3,"file":"ai.js","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n providesTags: ['AIUsage'],\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: true,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","providesTags","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;;;AAGA,MAAMA,SAAAA,GAAYC,YAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB,CAAA;gBACAC,YAAc,EAAA;AAAC,oBAAA;AAAU;AAC3B,aAAA,CAAA;YACAC,UAAYN,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAG,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGjB;;;;;;"}
@@ -6,7 +6,10 @@ const aiService = adminApi.injectEndpoints({
6
6
  query: ()=>({
7
7
  method: 'GET',
8
8
  url: `/admin/ai-usage`
9
- })
9
+ }),
10
+ providesTags: [
11
+ 'AIUsage'
12
+ ]
10
13
  }),
11
14
  getAiToken: builder.query({
12
15
  query: ()=>({
@@ -18,7 +21,7 @@ const aiService = adminApi.injectEndpoints({
18
21
  }
19
22
  })
20
23
  }),
21
- overrideExisting: false
24
+ overrideExisting: true
22
25
  });
23
26
  const { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;
24
27
 
@@ -1 +1 @@
1
- {"version":3,"file":"ai.mjs","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;AAGA,MAAMA,SAAAA,GAAYC,QAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB;AACF,aAAA,CAAA;YACAC,UAAYL,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAE,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGhB;;;;"}
1
+ {"version":3,"file":"ai.mjs","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n providesTags: ['AIUsage'],\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: true,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","providesTags","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;AAGA,MAAMA,SAAAA,GAAYC,QAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB,CAAA;gBACAC,YAAc,EAAA;AAAC,oBAAA;AAAU;AAC3B,aAAA,CAAA;YACAC,UAAYN,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAG,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGjB;;;;"}
@@ -19,6 +19,7 @@ var GradientBadge = require('./admin/src/components/GradientBadge.js');
19
19
  var Tours = require('./admin/src/components/GuidedTour/Tours.js');
20
20
  var Context = require('./admin/src/components/GuidedTour/Context.js');
21
21
  var constants = require('./admin/src/components/GuidedTour/utils/constants.js');
22
+ var theme = require('./admin/src/constants/theme.js');
22
23
  var Tracking = require('./admin/src/features/Tracking.js');
23
24
  var StrapiApp = require('./admin/src/features/StrapiApp.js');
24
25
  var Notifications = require('./admin/src/features/Notifications.js');
@@ -32,6 +33,9 @@ var useFocusInputField = require('./admin/src/hooks/useFocusInputField.js');
32
33
  var useRBAC = require('./admin/src/hooks/useRBAC.js');
33
34
  var useClipboard = require('./admin/src/hooks/useClipboard.js');
34
35
  var useElementOnScreen = require('./admin/src/hooks/useElementOnScreen.js');
36
+ var useDebounce = require('./admin/src/hooks/useDebounce.js');
37
+ var useMediaQuery = require('./admin/src/hooks/useMediaQuery.js');
38
+ var useDeviceType = require('./admin/src/hooks/useDeviceType.js');
35
39
  var users = require('./admin/src/services/users.js');
36
40
  var homepage = require('./admin/src/services/homepage.js');
37
41
  var useAIAvailability = require('./admin/src/hooks/useAIAvailability.js');
@@ -69,6 +73,7 @@ exports.GradientBadge = GradientBadge.GradientBadge;
69
73
  exports.tours = Tours.tours;
70
74
  exports.useGuidedTour = Context.useGuidedTour;
71
75
  exports.GUIDED_TOUR_REQUIRED_ACTIONS = constants.GUIDED_TOUR_REQUIRED_ACTIONS;
76
+ exports.RESPONSIVE_DEFAULT_SPACING = theme.RESPONSIVE_DEFAULT_SPACING;
72
77
  exports.useTracking = Tracking.useTracking;
73
78
  exports.useStrapiApp = StrapiApp.useStrapiApp;
74
79
  exports.NotificationsProvider = Notifications.NotificationsProvider;
@@ -83,6 +88,12 @@ exports.useFocusInputField = useFocusInputField.useFocusInputField;
83
88
  exports.useRBAC = useRBAC.useRBAC;
84
89
  exports.useClipboard = useClipboard.useClipboard;
85
90
  exports.useElementOnScreen = useElementOnScreen.useElementOnScreen;
91
+ exports.useDebounce = useDebounce.useDebounce;
92
+ exports.useIsDesktop = useMediaQuery.useIsDesktop;
93
+ exports.useIsMobile = useMediaQuery.useIsMobile;
94
+ exports.useIsTablet = useMediaQuery.useIsTablet;
95
+ exports.useMediaQuery = useMediaQuery.useMediaQuery;
96
+ exports.useDeviceType = useDeviceType.useDeviceType;
86
97
  exports.useAdminUsers = users.useAdminUsers;
87
98
  exports.useGetCountDocumentsQuery = homepage.useGetCountDocumentsQuery;
88
99
  exports.useAIAvailability = useAIAvailability.useAIAvailability;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -17,6 +17,7 @@ export { GradientBadge } from './admin/src/components/GradientBadge.mjs';
17
17
  export { tours } from './admin/src/components/GuidedTour/Tours.mjs';
18
18
  export { useGuidedTour } from './admin/src/components/GuidedTour/Context.mjs';
19
19
  export { GUIDED_TOUR_REQUIRED_ACTIONS } from './admin/src/components/GuidedTour/utils/constants.mjs';
20
+ export { RESPONSIVE_DEFAULT_SPACING } from './admin/src/constants/theme.mjs';
20
21
  export { useTracking } from './admin/src/features/Tracking.mjs';
21
22
  export { useStrapiApp } from './admin/src/features/StrapiApp.mjs';
22
23
  export { NotificationsProvider, useNotification } from './admin/src/features/Notifications.mjs';
@@ -30,6 +31,9 @@ export { useFocusInputField } from './admin/src/hooks/useFocusInputField.mjs';
30
31
  export { useRBAC } from './admin/src/hooks/useRBAC.mjs';
31
32
  export { useClipboard } from './admin/src/hooks/useClipboard.mjs';
32
33
  export { useElementOnScreen } from './admin/src/hooks/useElementOnScreen.mjs';
34
+ export { useDebounce } from './admin/src/hooks/useDebounce.mjs';
35
+ export { useIsDesktop, useIsMobile, useIsTablet, useMediaQuery } from './admin/src/hooks/useMediaQuery.mjs';
36
+ export { useDeviceType } from './admin/src/hooks/useDeviceType.mjs';
33
37
  export { useAdminUsers } from './admin/src/services/users.mjs';
34
38
  export { useGetCountDocumentsQuery } from './admin/src/services/homepage.mjs';
35
39
  export { useAIAvailability } from './admin/src/hooks/useAIAvailability.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}