@strapi/admin 5.50.0 → 5.50.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/dist/admin/admin/src/components/ConfirmDialog.js +2 -2
  2. package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
  3. package/dist/admin/admin/src/components/ContentBox.js +3 -3
  4. package/dist/admin/admin/src/components/ContentBox.js.map +1 -1
  5. package/dist/admin/admin/src/components/DescriptionComponentRenderer.js +8 -8
  6. package/dist/admin/admin/src/components/DescriptionComponentRenderer.js.map +1 -1
  7. package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs +8 -8
  8. package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/ErrorElement.js +4 -4
  10. package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
  11. package/dist/admin/admin/src/components/Form.js +41 -27
  12. package/dist/admin/admin/src/components/Form.js.map +1 -1
  13. package/dist/admin/admin/src/components/Form.mjs +41 -27
  14. package/dist/admin/admin/src/components/Form.mjs.map +1 -1
  15. package/dist/admin/admin/src/components/FormInputs/Date.js +1 -1
  16. package/dist/admin/admin/src/components/FormInputs/Date.js.map +1 -1
  17. package/dist/admin/admin/src/components/FormInputs/Date.mjs +1 -1
  18. package/dist/admin/admin/src/components/FormInputs/Date.mjs.map +1 -1
  19. package/dist/admin/admin/src/components/FormInputs/Email.js.map +1 -1
  20. package/dist/admin/admin/src/components/FormInputs/Email.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/FormInputs/Enumeration.js +4 -1
  22. package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
  23. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs +4 -1
  24. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/FormInputs/Json.js +2 -1
  26. package/dist/admin/admin/src/components/FormInputs/Json.js.map +1 -1
  27. package/dist/admin/admin/src/components/FormInputs/Json.mjs +2 -1
  28. package/dist/admin/admin/src/components/FormInputs/Json.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/FormInputs/Password.js.map +1 -1
  30. package/dist/admin/admin/src/components/FormInputs/Password.mjs.map +1 -1
  31. package/dist/admin/admin/src/components/FormInputs/Renderer.js +18 -26
  32. package/dist/admin/admin/src/components/FormInputs/Renderer.js.map +1 -1
  33. package/dist/admin/admin/src/components/FormInputs/Renderer.mjs +20 -28
  34. package/dist/admin/admin/src/components/FormInputs/Renderer.mjs.map +1 -1
  35. package/dist/admin/admin/src/components/FormInputs/String.js.map +1 -1
  36. package/dist/admin/admin/src/components/FormInputs/String.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/FormInputs/Textarea.js.map +1 -1
  38. package/dist/admin/admin/src/components/FormInputs/Textarea.mjs.map +1 -1
  39. package/dist/admin/admin/src/components/GapDropZone.js +2 -2
  40. package/dist/admin/admin/src/components/GapDropZone.js.map +1 -1
  41. package/dist/admin/admin/src/components/GradientBadge.js +3 -3
  42. package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
  43. package/dist/admin/admin/src/components/GuidedTour/Overview.js +8 -8
  44. package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
  45. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js +4 -4
  46. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
  47. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
  48. package/dist/admin/admin/src/components/GuidedTour/Tours.js +2 -2
  49. package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
  50. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +2 -2
  51. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  52. package/dist/admin/admin/src/components/Layouts/GridLayout.js +2 -2
  53. package/dist/admin/admin/src/components/Layouts/GridLayout.js.map +1 -1
  54. package/dist/admin/admin/src/components/Layouts/Layout.js +4 -4
  55. package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
  56. package/dist/admin/admin/src/components/LeftMenu.js +3 -3
  57. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  58. package/dist/admin/admin/src/components/MainNav/MainNav.js +2 -2
  59. package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
  60. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +4 -4
  61. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
  62. package/dist/admin/admin/src/components/MainNav/NavBrand.js +2 -2
  63. package/dist/admin/admin/src/components/MainNav/NavBrand.js.map +1 -1
  64. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js +3 -3
  65. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -1
  66. package/dist/admin/admin/src/components/MainNav/NavLink.js +8 -8
  67. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  68. package/dist/admin/admin/src/components/MainNav/NavUser.js +7 -7
  69. package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
  70. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js +3 -3
  71. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
  72. package/dist/admin/admin/src/components/NpsSurvey.js +2 -2
  73. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  74. package/dist/admin/admin/src/components/ResizeIndicator.js +6 -6
  75. package/dist/admin/admin/src/components/ResizeIndicator.js.map +1 -1
  76. package/dist/admin/admin/src/components/SubNav.js +11 -9
  77. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  78. package/dist/admin/admin/src/components/SubNav.mjs +4 -2
  79. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  80. package/dist/admin/admin/src/components/Table.js +9 -5
  81. package/dist/admin/admin/src/components/Table.js.map +1 -1
  82. package/dist/admin/admin/src/components/Table.mjs +6 -2
  83. package/dist/admin/admin/src/components/Table.mjs.map +1 -1
  84. package/dist/admin/admin/src/components/Theme.js +2 -2
  85. package/dist/admin/admin/src/components/Theme.js.map +1 -1
  86. package/dist/admin/admin/src/components/UnauthenticatedLogo.js +2 -2
  87. package/dist/admin/admin/src/components/UnauthenticatedLogo.js.map +1 -1
  88. package/dist/admin/admin/src/components/UpsellBanner.js +3 -3
  89. package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
  90. package/dist/admin/admin/src/components/WidgetRoot.js +4 -7
  91. package/dist/admin/admin/src/components/WidgetRoot.js.map +1 -1
  92. package/dist/admin/admin/src/components/WidgetRoot.mjs +1 -1
  93. package/dist/admin/admin/src/components/WidgetRoot.mjs.map +1 -1
  94. package/dist/admin/admin/src/components/Widgets.js +5 -5
  95. package/dist/admin/admin/src/components/Widgets.js.map +1 -1
  96. package/dist/admin/admin/src/core/apis/Plugin.js.map +1 -1
  97. package/dist/admin/admin/src/core/apis/Plugin.mjs.map +1 -1
  98. package/dist/admin/admin/src/core/apis/Widgets.js +1 -1
  99. package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
  100. package/dist/admin/admin/src/core/apis/Widgets.mjs +1 -1
  101. package/dist/admin/admin/src/core/apis/Widgets.mjs.map +1 -1
  102. package/dist/admin/admin/src/core/store/configure.js.map +1 -1
  103. package/dist/admin/admin/src/core/store/configure.mjs.map +1 -1
  104. package/dist/admin/admin/src/core/utils/createHook.js.map +1 -1
  105. package/dist/admin/admin/src/core/utils/createHook.mjs.map +1 -1
  106. package/dist/admin/admin/src/features/Tracking.js +3 -1
  107. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  108. package/dist/admin/admin/src/features/Tracking.mjs +3 -1
  109. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  110. package/dist/admin/admin/src/features/Widgets.js.map +1 -1
  111. package/dist/admin/admin/src/features/Widgets.mjs.map +1 -1
  112. package/dist/admin/admin/src/hooks/useMediaQuery.js +4 -4
  113. package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -1
  114. package/dist/admin/admin/src/hooks/useMenu.js +5 -3
  115. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  116. package/dist/admin/admin/src/hooks/useMenu.mjs +5 -3
  117. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  118. package/dist/admin/admin/src/hooks/useQueryParams.js.map +1 -1
  119. package/dist/admin/admin/src/hooks/useQueryParams.mjs.map +1 -1
  120. package/dist/admin/admin/src/hooks/useThrottledCallback.js.map +1 -1
  121. package/dist/admin/admin/src/hooks/useThrottledCallback.mjs.map +1 -1
  122. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +1 -1
  123. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  124. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +1 -1
  125. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  126. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js +3 -3
  127. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
  128. package/dist/admin/admin/src/pages/Auth/components/Register.js +17 -9
  129. package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
  130. package/dist/admin/admin/src/pages/Auth/components/Register.mjs +15 -7
  131. package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
  132. package/dist/admin/admin/src/pages/Home/HomePage.js +2 -2
  133. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  134. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js +3 -6
  135. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js.map +1 -1
  136. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs +1 -1
  137. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs.map +1 -1
  138. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js +4 -8
  139. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js.map +1 -1
  140. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs +1 -1
  141. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs.map +1 -1
  142. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js +4 -8
  143. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js.map +1 -1
  144. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs +1 -1
  145. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs.map +1 -1
  146. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +2 -2
  147. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  148. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  149. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js +2 -2
  150. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
  151. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js +2 -2
  152. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js.map +1 -1
  153. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js +2 -2
  154. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js.map +1 -1
  155. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js +2 -2
  156. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js.map +1 -1
  157. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js +4 -4
  158. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js.map +1 -1
  159. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js.map +1 -1
  160. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.mjs.map +1 -1
  161. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +0 -2
  162. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  163. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +0 -2
  164. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  165. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js +2 -2
  166. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js.map +1 -1
  167. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js +2 -2
  168. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
  169. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js +2 -2
  170. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js.map +1 -1
  171. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js +10 -10
  172. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js.map +1 -1
  173. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js +3 -3
  174. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js.map +1 -1
  175. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js +5 -5
  176. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
  177. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js +2 -2
  178. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js.map +1 -1
  179. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js +3 -3
  180. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js.map +1 -1
  181. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.js.map +1 -1
  182. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.mjs.map +1 -1
  183. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
  184. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs.map +1 -1
  185. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js +3 -3
  186. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js.map +1 -1
  187. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js +2 -2
  188. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js.map +1 -1
  189. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js +2 -2
  190. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js.map +1 -1
  191. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.mjs.map +1 -1
  192. package/dist/admin/admin/src/translations/ja.json.js +693 -687
  193. package/dist/admin/admin/src/translations/ja.json.js.map +1 -1
  194. package/dist/admin/admin/src/translations/ja.json.mjs +693 -687
  195. package/dist/admin/admin/src/translations/ja.json.mjs.map +1 -1
  196. package/dist/admin/admin/src/translations/pl.json.js +22 -0
  197. package/dist/admin/admin/src/translations/pl.json.js.map +1 -1
  198. package/dist/admin/admin/src/translations/pl.json.mjs +22 -0
  199. package/dist/admin/admin/src/translations/pl.json.mjs.map +1 -1
  200. package/dist/admin/admin/src/utils/arrays.js.map +1 -1
  201. package/dist/admin/admin/src/utils/arrays.mjs.map +1 -1
  202. package/dist/admin/admin/src/utils/baseQuery.js +1 -1
  203. package/dist/admin/admin/src/utils/baseQuery.js.map +1 -1
  204. package/dist/admin/admin/src/utils/baseQuery.mjs +1 -1
  205. package/dist/admin/admin/src/utils/baseQuery.mjs.map +1 -1
  206. package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
  207. package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
  208. package/dist/admin/admin/src/utils/objects.js +43 -11
  209. package/dist/admin/admin/src/utils/objects.js.map +1 -1
  210. package/dist/admin/admin/src/utils/objects.mjs +43 -11
  211. package/dist/admin/admin/src/utils/objects.mjs.map +1 -1
  212. package/dist/admin/admin/src/utils/once.js.map +1 -1
  213. package/dist/admin/admin/src/utils/once.mjs.map +1 -1
  214. package/dist/admin/admin/src/utils/rulesEngine.js +2 -1
  215. package/dist/admin/admin/src/utils/rulesEngine.js.map +1 -1
  216. package/dist/admin/admin/src/utils/rulesEngine.mjs +2 -1
  217. package/dist/admin/admin/src/utils/rulesEngine.mjs.map +1 -1
  218. package/dist/admin/admin/src/utils/shims.js.map +1 -1
  219. package/dist/admin/admin/src/utils/shims.mjs.map +1 -1
  220. package/dist/admin/admin/src/utils/widgetVisibility.js +16 -1
  221. package/dist/admin/admin/src/utils/widgetVisibility.js.map +1 -1
  222. package/dist/admin/admin/src/utils/widgetVisibility.mjs +14 -2
  223. package/dist/admin/admin/src/utils/widgetVisibility.mjs.map +1 -1
  224. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js +2 -2
  225. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js.map +1 -1
  226. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js +2 -2
  227. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js.map +1 -1
  228. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs +2 -2
  229. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs.map +1 -1
  230. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js +2 -2
  231. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js.map +1 -1
  232. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js +2 -2
  233. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js.map +1 -1
  234. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js +3 -3
  235. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js.map +1 -1
  236. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +3 -3
  237. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -1
  238. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js.map +1 -1
  239. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs.map +1 -1
  240. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js.map +1 -1
  241. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs.map +1 -1
  242. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js +2 -2
  243. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js.map +1 -1
  244. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  245. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  246. package/dist/admin/src/StrapiApp.d.ts +2 -2
  247. package/dist/admin/src/components/DescriptionComponentRenderer.d.ts +2 -1
  248. package/dist/admin/src/components/Form.d.ts +14 -12
  249. package/dist/admin/src/components/FormInputs/Renderer.d.ts +1 -1
  250. package/dist/admin/src/components/GuidedTour/Steps/Step.d.ts +1 -1
  251. package/dist/admin/src/components/SubNav.d.ts +1 -1
  252. package/dist/admin/src/components/Table.d.ts +3 -2
  253. package/dist/admin/src/core/apis/Plugin.d.ts +1 -1
  254. package/dist/admin/src/core/utils/createHook.d.ts +6 -6
  255. package/dist/admin/src/hooks/useAdminRoles.d.ts +1 -1
  256. package/dist/admin/src/hooks/useMenu.d.ts +1 -1
  257. package/dist/admin/src/hooks/useQueryParams.d.ts +2 -1
  258. package/dist/admin/src/hooks/useThrottledCallback.d.ts +1 -1
  259. package/dist/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.d.ts +1 -1
  260. package/dist/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.d.ts +1 -1
  261. package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +4 -4
  262. package/dist/admin/src/services/admin.d.ts +6 -6
  263. package/dist/admin/src/services/api.d.ts +1 -1
  264. package/dist/admin/src/services/apiTokens.d.ts +2 -2
  265. package/dist/admin/src/services/auth.d.ts +12 -12
  266. package/dist/admin/src/services/contentApi.d.ts +1 -1
  267. package/dist/admin/src/services/contentManager.d.ts +1 -1
  268. package/dist/admin/src/services/homepage.d.ts +3 -3
  269. package/dist/admin/src/services/transferTokens.d.ts +1 -1
  270. package/dist/admin/src/services/users.d.ts +8 -8
  271. package/dist/admin/src/services/webhooks.d.ts +2 -2
  272. package/dist/admin/src/utils/arrays.d.ts +1 -1
  273. package/dist/admin/src/utils/baseQuery.d.ts +1 -1
  274. package/dist/admin/src/utils/getFetchClient.d.ts +7 -7
  275. package/dist/admin/src/utils/objects.d.ts +6 -4
  276. package/dist/admin/src/utils/once.d.ts +1 -1
  277. package/dist/admin/src/utils/widgetVisibility.d.ts +11 -0
  278. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/tableHeaders.d.ts +2 -1
  279. package/dist/ee/admin/src/services/ai.d.ts +3 -3
  280. package/dist/ee/admin/src/services/auditLogs.d.ts +1 -1
  281. package/dist/server/server/src/services/permission/sections-builder/handlers.js +9 -2
  282. package/dist/server/server/src/services/permission/sections-builder/handlers.js.map +1 -1
  283. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs +9 -2
  284. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs.map +1 -1
  285. package/dist/server/server/src/services/role.js +5 -1
  286. package/dist/server/server/src/services/role.js.map +1 -1
  287. package/dist/server/server/src/services/role.mjs +5 -1
  288. package/dist/server/server/src/services/role.mjs.map +1 -1
  289. package/dist/server/server/src/validation/common-validators.js +19 -11
  290. package/dist/server/server/src/validation/common-validators.js.map +1 -1
  291. package/dist/server/server/src/validation/common-validators.mjs +19 -11
  292. package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
  293. package/dist/server/server/src/validation/permission.js +1 -1
  294. package/dist/server/server/src/validation/permission.js.map +1 -1
  295. package/dist/server/server/src/validation/permission.mjs +1 -1
  296. package/dist/server/server/src/validation/permission.mjs.map +1 -1
  297. package/dist/server/server/src/validation/role.js +2 -2
  298. package/dist/server/server/src/validation/role.js.map +1 -1
  299. package/dist/server/server/src/validation/role.mjs +2 -2
  300. package/dist/server/server/src/validation/role.mjs.map +1 -1
  301. package/dist/server/src/services/permission/sections-builder/handlers.d.ts.map +1 -1
  302. package/dist/server/src/services/role.d.ts.map +1 -1
  303. package/dist/server/src/validation/common-validators.d.ts.map +1 -1
  304. package/dist/server/src/validation/role.d.ts.map +1 -1
  305. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"Register.js","sources":["../../../../../../../admin/src/pages/Auth/components/Register.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography, Link } from '@strapi/design-system';\nimport omit from 'lodash/omit';\nimport { type MessageDescriptor, type PrimitiveType, useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate, useMatch, useLocation } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\nimport { ValidationError } from 'yup';\n\nimport {\n Register as RegisterUser,\n RegisterAdmin,\n} from '../../../../../shared/contracts/authentication';\nimport { Form, FormHelpers } from '../../../components/Form';\nimport { InputRenderer } from '../../../components/FormInputs/Renderer';\nimport { useNpsSurveySettings } from '../../../components/NpsSurvey';\nimport { Logo } from '../../../components/UnauthenticatedLogo';\nimport { useTypedDispatch } from '../../../core/store/hooks';\nimport { useNotification } from '../../../features/Notifications';\nimport { useTracking } from '../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../hooks/useAPIErrorHandler';\nimport { LayoutContent, UnauthenticatedLayout } from '../../../layouts/UnauthenticatedLayout';\nimport { login } from '../../../reducer';\nimport {\n useGetRegistrationInfoQuery,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n} from '../../../services/auth';\nimport { isBaseQueryError } from '../../../utils/baseQuery';\nimport { getOrCreateDeviceId } from '../../../utils/deviceId';\nimport { getByteSize } from '../../../utils/strings';\nimport { translatedErrors } from '../../../utils/translatedErrors';\n\nconst REGISTER_USER_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required).nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value || typeof value !== 'string') return true; // validated elsewhere\n\n const byteSize = getByteSize(value);\n return byteSize <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .nullable(),\n registrationToken: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'Registration token is required',\n }),\n});\n\nconst REGISTER_ADMIN_SCHEMA = yup.object().shape({\n firstname: yup\n .string()\n .trim()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Firstname is required',\n })\n .nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .nullable()\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n }),\n email: yup\n .string()\n .email({\n id: translatedErrors.email.id,\n defaultMessage: 'Not a valid email',\n })\n .strict()\n .lowercase({\n id: translatedErrors.lowercase.id,\n defaultMessage: 'Email must be lowercase',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Email is required',\n })\n .nullable(),\n});\n\ninterface RegisterProps {\n hasAdmin?: boolean;\n}\n\ninterface RegisterFormValues {\n firstname: string;\n lastname: string;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n}\n\ninterface IntlFormattedMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\nconst Register = ({ hasAdmin }: RegisterProps) => {\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const [submitCount, setSubmitCount] = React.useState(0);\n const [apiError, setApiError] = React.useState<string>();\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { search: searchString } = useLocation();\n const query = React.useMemo(() => new URLSearchParams(searchString), [searchString]);\n const match = useMatch('/auth/:authType');\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const { setNpsSurveySettings } = useNpsSurveySettings();\n\n const registrationToken = query.get('registrationToken');\n\n const { data: userInfo, error } = useGetRegistrationInfoQuery(registrationToken as string, {\n skip: !registrationToken,\n });\n\n React.useEffect(() => {\n if (error) {\n const message: string = isBaseQueryError(error)\n ? formatAPIError(error)\n : (error.message ?? '');\n\n toggleNotification({\n type: 'danger',\n message,\n });\n\n navigate(`/auth/oops?info=${encodeURIComponent(message)}`);\n }\n }, [error, formatAPIError, navigate, toggleNotification]);\n\n const [registerAdmin] = useRegisterAdminMutation();\n const [registerUser] = useRegisterUserMutation();\n const dispatch = useTypedDispatch();\n\n const handleRegisterAdmin = async (\n { news, ...body }: RegisterAdmin.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerAdmin({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${true}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n const handleRegisterUser = async (\n { news, ...body }: RegisterUser.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerUser({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${hasAdmin}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n if (\n !match ||\n (match.params.authType !== 'register' && match.params.authType !== 'register-admin')\n ) {\n return <Navigate to=\"/\" />;\n }\n\n const isAdminRegistration = match.params.authType === 'register-admin';\n\n const schema = isAdminRegistration ? REGISTER_ADMIN_SCHEMA : REGISTER_USER_SCHEMA;\n\n return (\n <UnauthenticatedLayout>\n <LayoutContent>\n <Flex direction=\"column\" alignItems=\"center\" gap={3}>\n <Logo />\n\n <Typography tag=\"h1\" variant=\"alpha\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.welcome.title',\n defaultMessage: 'Welcome to Strapi!',\n })}\n </Typography>\n <Typography variant=\"epsilon\" textColor=\"neutral600\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.register.subtitle',\n defaultMessage:\n 'Credentials are only used to authenticate in Strapi. All saved data will be stored in your database.',\n })}\n </Typography>\n {apiError ? (\n <Typography id=\"global-form-error\" role=\"alert\" tabIndex={-1} textColor=\"danger600\">\n {apiError}\n </Typography>\n ) : null}\n </Flex>\n <Form\n method=\"POST\"\n initialValues={\n {\n firstname: userInfo?.firstname || '',\n lastname: userInfo?.lastname || '',\n email: userInfo?.email || '',\n password: '',\n confirmPassword: '',\n registrationToken: registrationToken || undefined,\n news: false,\n } satisfies RegisterFormValues\n }\n onSubmit={async (data, helpers) => {\n const normalizedData = normalizeData(data);\n\n try {\n await schema.validate(normalizedData, { abortEarly: false });\n\n if (submitCount > 0 && isAdminRegistration) {\n trackUsage('didSubmitWithErrorsFirstAdmin', { count: submitCount.toString() });\n }\n\n if (normalizedData.registrationToken) {\n handleRegisterUser(\n {\n userInfo: omit(normalizedData, [\n 'registrationToken',\n 'confirmPassword',\n 'email',\n 'news',\n ]),\n registrationToken: normalizedData.registrationToken,\n news: normalizedData.news,\n },\n helpers.setErrors\n );\n } else {\n await handleRegisterAdmin(\n omit(normalizedData, ['registrationToken', 'confirmPassword']),\n helpers.setErrors\n );\n }\n } catch (err) {\n if (err instanceof ValidationError) {\n const formatDescriptor = (msg: any) => {\n try {\n if (!msg) return '';\n if (typeof msg === 'string') return msg;\n // Direct descriptor\n if ('id' in msg && 'defaultMessage' in msg) return formatMessage(msg as any);\n // Wrapped descriptor: { message: { id, defaultMessage } }\n if (msg.message && typeof msg.message === 'object' && 'id' in msg.message) {\n return formatMessage(msg.message as any);\n }\n // errors array: [{ id, defaultMessage }]\n if (Array.isArray(msg.errors) && msg.errors.length > 0) {\n const first = msg.errors[0];\n if (typeof first === 'string') return first;\n if (first && typeof first === 'object' && 'id' in first)\n return formatMessage(first as any);\n }\n // fallback to defaultMessage if present\n if ('defaultMessage' in msg) return msg.defaultMessage;\n return String(msg);\n } catch (e) {\n return String(msg);\n }\n };\n\n const computed = err.inner.reduce<Record<string, string>>(\n (acc, { message, path }) => {\n if (!path) return acc;\n acc[path] = formatDescriptor(message);\n return acc;\n },\n {}\n );\n\n helpers.setErrors(computed);\n }\n\n setSubmitCount(submitCount + 1);\n }\n }}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6} marginTop={7}>\n <Grid.Root gap={4}>\n {[\n {\n label: formatMessage({\n id: 'Auth.form.firstname.label',\n defaultMessage: 'Firstname',\n }),\n name: 'firstname',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Lastname',\n }),\n name: 'lastname',\n size: 6,\n type: 'string' as const,\n },\n {\n disabled: !isAdminRegistration,\n label: formatMessage({\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n }),\n name: 'email',\n required: true,\n size: 12,\n type: 'email' as const,\n },\n {\n hint: formatMessage({\n id: 'Auth.form.password.hint',\n defaultMessage:\n 'Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number',\n }),\n label: formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n }),\n name: 'password',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n }),\n name: 'confirmPassword',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage(\n {\n id: 'Auth.form.register.news.label',\n defaultMessage:\n 'Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy}).',\n },\n {\n terms: (\n <A target=\"_blank\" href=\"https://strapi.io/terms\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.terms',\n defaultMessage: 'terms',\n })}\n </A>\n ),\n policy: (\n <A target=\"_blank\" href=\"https://strapi.io/privacy\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.policy',\n defaultMessage: 'policy',\n })}\n </A>\n ),\n }\n ),\n name: 'news',\n size: 12,\n type: 'checkbox' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n xs={12}\n m={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Button fullWidth size=\"L\" type=\"submit\">\n {formatMessage({\n id: 'Auth.form.button.register',\n defaultMessage: \"Let's start\",\n })}\n </Button>\n </Flex>\n </Form>\n {match?.params.authType === 'register' && (\n <Box paddingTop={4}>\n <Flex justifyContent=\"center\">\n <Link tag={NavLink} to=\"/auth/login\">\n {formatMessage({\n id: 'Auth.link.signin.account',\n defaultMessage: 'Already have an account?',\n })}\n </Link>\n </Flex>\n </Box>\n )}\n </LayoutContent>\n </UnauthenticatedLayout>\n );\n};\n\ntype StringKeys<T> = {\n [K in keyof T]: T[K] extends string | undefined ? K : never;\n}[keyof T];\n\n/**\n * @description Trims all values but the password & sets lastName to null if it's a falsey value.\n */\nfunction normalizeData(data: RegisterFormValues) {\n return Object.entries(data).reduce(\n (acc, [key, value]) => {\n type PasswordKeys = Extract<keyof RegisterFormValues, 'password' | 'confirmPassword'>;\n type RegisterFormStringValues = Exclude<\n keyof Pick<RegisterFormValues, StringKeys<RegisterFormValues>>,\n PasswordKeys\n >;\n\n if (!['password', 'confirmPassword'].includes(key) && typeof value === 'string') {\n acc[key as RegisterFormStringValues] = value.trim();\n\n if (key === 'lastname') {\n acc[key] = value || undefined;\n }\n } else {\n acc[key as PasswordKeys] = value;\n }\n\n return acc;\n },\n {} as {\n firstname: string;\n lastname: string | undefined;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n }\n );\n}\n\nconst A = styled.a`\n color: ${({ theme }) => theme.colors.primary600};\n`;\n\nexport { Register };\nexport type { RegisterProps };\n"],"names":["REGISTER_USER_SCHEMA","yup","object","shape","firstname","string","trim","required","translatedErrors","nullable","lastname","password","min","id","minLength","defaultMessage","values","test","value","byteSize","getByteSize","message","confirmPassword","oneOf","ref","registrationToken","REGISTER_ADMIN_SCHEMA","TextEncoder","encode","length","email","strict","lowercase","Register","hasAdmin","toggleNotification","useNotification","navigate","useNavigate","submitCount","setSubmitCount","React","useState","apiError","setApiError","trackUsage","useTracking","formatMessage","useIntl","search","searchString","useLocation","query","useMemo","URLSearchParams","match","useMatch","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","setNpsSurveySettings","useNpsSurveySettings","get","data","userInfo","error","useGetRegistrationInfoQuery","skip","useEffect","isBaseQueryError","type","encodeURIComponent","registerAdmin","useRegisterAdminMutation","registerUser","useRegisterUserMutation","dispatch","useTypedDispatch","handleRegisterAdmin","news","body","setFormErrors","res","deviceId","getOrCreateDeviceId","login","token","s","enabled","pathname","name","handleRegisterUser","params","authType","_jsx","Navigate","to","isAdminRegistration","schema","UnauthenticatedLayout","_jsxs","LayoutContent","Flex","direction","alignItems","gap","Logo","Typography","tag","variant","textAlign","textColor","role","tabIndex","Form","method","initialValues","undefined","onSubmit","helpers","normalizedData","normalizeData","validate","abortEarly","count","toString","omit","setErrors","err","ValidationError","formatDescriptor","msg","Array","isArray","errors","first","String","e","computed","inner","reduce","acc","path","marginTop","Grid","Root","label","size","disabled","hint","terms","A","target","href","rel","policy","map","field","Item","xs","m","InputRenderer","Button","fullWidth","Box","paddingTop","justifyContent","Link","NavLink","Object","entries","key","includes","styled","a","theme","colors","primary600"],"mappings":"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"}
1
+ {"version":3,"file":"Register.js","sources":["../../../../../../../admin/src/pages/Auth/components/Register.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography, Link } from '@strapi/design-system';\nimport omit from 'lodash/omit';\nimport { useIntl, type MessageDescriptor } from 'react-intl';\nimport { NavLink, Navigate, useNavigate, useMatch, useLocation } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\nimport { ValidationError } from 'yup';\n\nimport {\n Register as RegisterUser,\n RegisterAdmin,\n} from '../../../../../shared/contracts/authentication';\nimport { Form, FormHelpers } from '../../../components/Form';\nimport { InputRenderer } from '../../../components/FormInputs/Renderer';\nimport { useNpsSurveySettings } from '../../../components/NpsSurvey';\nimport { Logo } from '../../../components/UnauthenticatedLogo';\nimport { useTypedDispatch } from '../../../core/store/hooks';\nimport { useNotification } from '../../../features/Notifications';\nimport { useTracking } from '../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../hooks/useAPIErrorHandler';\nimport { LayoutContent, UnauthenticatedLayout } from '../../../layouts/UnauthenticatedLayout';\nimport { login } from '../../../reducer';\nimport {\n useGetRegistrationInfoQuery,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n} from '../../../services/auth';\nimport { isBaseQueryError } from '../../../utils/baseQuery';\nimport { getOrCreateDeviceId } from '../../../utils/deviceId';\nimport { getByteSize } from '../../../utils/strings';\nimport { translatedErrors } from '../../../utils/translatedErrors';\n\nconst REGISTER_USER_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required).nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value || typeof value !== 'string') return true; // validated elsewhere\n\n const byteSize = getByteSize(value);\n return byteSize <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .nullable(),\n registrationToken: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'Registration token is required',\n }),\n});\n\nconst REGISTER_ADMIN_SCHEMA = yup.object().shape({\n firstname: yup\n .string()\n .trim()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Firstname is required',\n })\n .nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .nullable()\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n }),\n email: yup\n .string()\n .email({\n id: translatedErrors.email.id,\n defaultMessage: 'Not a valid email',\n })\n .strict()\n .lowercase({\n id: translatedErrors.lowercase.id,\n defaultMessage: 'Email must be lowercase',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Email is required',\n })\n .nullable(),\n});\n\ninterface RegisterProps {\n hasAdmin?: boolean;\n}\n\ninterface RegisterFormValues {\n firstname: string;\n lastname: string;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n}\n\nconst isRecord = (value: unknown): value is Record<string, unknown> => {\n return typeof value === 'object' && !Array.isArray(value) && value !== null;\n};\n\nconst isMessageDescriptor = (value: unknown): value is MessageDescriptor => {\n return (\n isRecord(value) && typeof value.id === 'string' && typeof value.defaultMessage === 'string'\n );\n};\n\nconst Register = ({ hasAdmin }: RegisterProps) => {\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const [submitCount, setSubmitCount] = React.useState(0);\n const [apiError, setApiError] = React.useState<string>();\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { search: searchString } = useLocation();\n const query = React.useMemo(() => new URLSearchParams(searchString), [searchString]);\n const match = useMatch('/auth/:authType');\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const { setNpsSurveySettings } = useNpsSurveySettings();\n\n const registrationToken = query.get('registrationToken');\n\n const { data: userInfo, error } = useGetRegistrationInfoQuery(registrationToken as string, {\n skip: !registrationToken,\n });\n\n React.useEffect(() => {\n if (error) {\n const message: string = isBaseQueryError(error)\n ? formatAPIError(error)\n : (error.message ?? '');\n\n toggleNotification({\n type: 'danger',\n message,\n });\n\n navigate(`/auth/oops?info=${encodeURIComponent(message)}`);\n }\n }, [error, formatAPIError, navigate, toggleNotification]);\n\n const [registerAdmin] = useRegisterAdminMutation();\n const [registerUser] = useRegisterUserMutation();\n const dispatch = useTypedDispatch();\n\n const handleRegisterAdmin = async (\n { news, ...body }: RegisterAdmin.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerAdmin({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${true}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n const handleRegisterUser = async (\n { news, ...body }: RegisterUser.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerUser({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${hasAdmin}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n if (\n !match ||\n (match.params.authType !== 'register' && match.params.authType !== 'register-admin')\n ) {\n return <Navigate to=\"/\" />;\n }\n\n const isAdminRegistration = match.params.authType === 'register-admin';\n\n const schema = isAdminRegistration ? REGISTER_ADMIN_SCHEMA : REGISTER_USER_SCHEMA;\n\n return (\n <UnauthenticatedLayout>\n <LayoutContent>\n <Flex direction=\"column\" alignItems=\"center\" gap={3}>\n <Logo />\n\n <Typography tag=\"h1\" variant=\"alpha\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.welcome.title',\n defaultMessage: 'Welcome to Strapi!',\n })}\n </Typography>\n <Typography variant=\"epsilon\" textColor=\"neutral600\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.register.subtitle',\n defaultMessage:\n 'Credentials are only used to authenticate in Strapi. All saved data will be stored in your database.',\n })}\n </Typography>\n {apiError ? (\n <Typography id=\"global-form-error\" role=\"alert\" tabIndex={-1} textColor=\"danger600\">\n {apiError}\n </Typography>\n ) : null}\n </Flex>\n <Form\n method=\"POST\"\n initialValues={\n {\n firstname: userInfo?.firstname || '',\n lastname: userInfo?.lastname || '',\n email: userInfo?.email || '',\n password: '',\n confirmPassword: '',\n registrationToken: registrationToken || undefined,\n news: false,\n } satisfies RegisterFormValues\n }\n onSubmit={async (data, helpers) => {\n const normalizedData = normalizeData(data);\n\n try {\n await schema.validate(normalizedData, { abortEarly: false });\n\n if (submitCount > 0 && isAdminRegistration) {\n trackUsage('didSubmitWithErrorsFirstAdmin', { count: submitCount.toString() });\n }\n\n if (normalizedData.registrationToken) {\n handleRegisterUser(\n {\n userInfo: omit(normalizedData, [\n 'registrationToken',\n 'confirmPassword',\n 'email',\n 'news',\n ]),\n registrationToken: normalizedData.registrationToken,\n news: normalizedData.news,\n },\n helpers.setErrors\n );\n } else {\n await handleRegisterAdmin(\n omit(normalizedData, ['registrationToken', 'confirmPassword']),\n helpers.setErrors\n );\n }\n } catch (err) {\n if (err instanceof ValidationError) {\n const formatDescriptor = (msg: unknown) => {\n try {\n if (msg === undefined || msg === null) return '';\n if (typeof msg === 'string') return msg;\n // Direct descriptor\n if (isMessageDescriptor(msg)) return formatMessage(msg);\n // Wrapped descriptor: { message: { id, defaultMessage } }\n if (isRecord(msg) && isMessageDescriptor(msg.message)) {\n return formatMessage(msg.message);\n }\n // errors array: [{ id, defaultMessage }]\n if (isRecord(msg) && Array.isArray(msg.errors) && msg.errors.length > 0) {\n const first = msg.errors[0];\n if (typeof first === 'string') return first;\n if (isMessageDescriptor(first)) return formatMessage(first);\n }\n // fallback to defaultMessage if present\n if (isRecord(msg) && typeof msg.defaultMessage === 'string') {\n return msg.defaultMessage;\n }\n return String(msg);\n } catch {\n return String(msg);\n }\n };\n\n const computed = err.inner.reduce<Record<string, string>>(\n (acc, { message, path }) => {\n if (!path) return acc;\n acc[path] = formatDescriptor(message);\n return acc;\n },\n {}\n );\n\n helpers.setErrors(computed);\n }\n\n setSubmitCount(submitCount + 1);\n }\n }}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6} marginTop={7}>\n <Grid.Root gap={4}>\n {[\n {\n label: formatMessage({\n id: 'Auth.form.firstname.label',\n defaultMessage: 'Firstname',\n }),\n name: 'firstname',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Lastname',\n }),\n name: 'lastname',\n size: 6,\n type: 'string' as const,\n },\n {\n disabled: !isAdminRegistration,\n label: formatMessage({\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n }),\n name: 'email',\n required: true,\n size: 12,\n type: 'email' as const,\n },\n {\n hint: formatMessage({\n id: 'Auth.form.password.hint',\n defaultMessage:\n 'Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number',\n }),\n label: formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n }),\n name: 'password',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n }),\n name: 'confirmPassword',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage(\n {\n id: 'Auth.form.register.news.label',\n defaultMessage:\n 'Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy}).',\n },\n {\n terms: (\n <A target=\"_blank\" href=\"https://strapi.io/terms\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.terms',\n defaultMessage: 'terms',\n })}\n </A>\n ),\n policy: (\n <A target=\"_blank\" href=\"https://strapi.io/privacy\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.policy',\n defaultMessage: 'policy',\n })}\n </A>\n ),\n }\n ),\n name: 'news',\n size: 12,\n type: 'checkbox' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n xs={12}\n m={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Button fullWidth size=\"L\" type=\"submit\">\n {formatMessage({\n id: 'Auth.form.button.register',\n defaultMessage: \"Let's start\",\n })}\n </Button>\n </Flex>\n </Form>\n {match?.params.authType === 'register' && (\n <Box paddingTop={4}>\n <Flex justifyContent=\"center\">\n <Link tag={NavLink} to=\"/auth/login\">\n {formatMessage({\n id: 'Auth.link.signin.account',\n defaultMessage: 'Already have an account?',\n })}\n </Link>\n </Flex>\n </Box>\n )}\n </LayoutContent>\n </UnauthenticatedLayout>\n );\n};\n\ntype StringKeys<T> = {\n [K in keyof T]: T[K] extends string | undefined ? K : never;\n}[keyof T];\n\n/**\n * @description Trims all values but the password & sets lastName to null if it's a falsey value.\n */\nfunction normalizeData(data: RegisterFormValues) {\n return Object.entries(data).reduce(\n (acc, [key, value]) => {\n type PasswordKeys = Extract<keyof RegisterFormValues, 'password' | 'confirmPassword'>;\n type RegisterFormStringValues = Exclude<\n keyof Pick<RegisterFormValues, StringKeys<RegisterFormValues>>,\n PasswordKeys\n >;\n\n if (!['password', 'confirmPassword'].includes(key) && typeof value === 'string') {\n acc[key as RegisterFormStringValues] = value.trim();\n\n if (key === 'lastname') {\n acc[key] = value || undefined;\n }\n } else {\n acc[key as PasswordKeys] = value;\n }\n\n return acc;\n },\n {} as {\n firstname: string;\n lastname: string | undefined;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n }\n );\n}\n\nconst A = styled.a`\n color: ${({ theme }) => theme.colors.primary600};\n`;\n\nexport { Register };\nexport type { RegisterProps };\n"],"names":["REGISTER_USER_SCHEMA","yup","object","shape","firstname","string","trim","required","translatedErrors","nullable","lastname","password","min","id","minLength","defaultMessage","values","test","value","byteSize","getByteSize","message","confirmPassword","oneOf","ref","registrationToken","REGISTER_ADMIN_SCHEMA","TextEncoder","encode","length","email","strict","lowercase","isRecord","Array","isArray","isMessageDescriptor","Register","hasAdmin","toggleNotification","useNotification","navigate","useNavigate","submitCount","setSubmitCount","React","useState","apiError","setApiError","trackUsage","useTracking","formatMessage","useIntl","search","searchString","useLocation","query","useMemo","URLSearchParams","match","useMatch","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","setNpsSurveySettings","useNpsSurveySettings","get","data","userInfo","error","useGetRegistrationInfoQuery","skip","useEffect","isBaseQueryError","type","encodeURIComponent","registerAdmin","useRegisterAdminMutation","registerUser","useRegisterUserMutation","dispatch","useTypedDispatch","handleRegisterAdmin","news","body","setFormErrors","res","deviceId","getOrCreateDeviceId","login","token","s","enabled","pathname","name","handleRegisterUser","params","authType","_jsx","Navigate","to","isAdminRegistration","schema","UnauthenticatedLayout","_jsxs","LayoutContent","Flex","direction","alignItems","gap","Logo","Typography","tag","variant","textAlign","textColor","role","tabIndex","Form","method","initialValues","undefined","onSubmit","helpers","normalizedData","normalizeData","validate","abortEarly","count","toString","omit","setErrors","err","ValidationError","formatDescriptor","msg","errors","first","String","computed","inner","reduce","acc","path","marginTop","Grid","Root","label","size","disabled","hint","terms","A","target","href","rel","policy","map","field","Item","xs","m","InputRenderer","Button","fullWidth","Box","paddingTop","justifyContent","Link","NavLink","Object","entries","key","includes","styled","a","theme","colors","primary600"],"mappings":"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"}
@@ -149,6 +149,12 @@ const REGISTER_ADMIN_SCHEMA = yup.object().shape({
149
149
  defaultMessage: 'Email is required'
150
150
  }).nullable()
151
151
  });
152
+ const isRecord = (value)=>{
153
+ return typeof value === 'object' && !Array.isArray(value) && value !== null;
154
+ };
155
+ const isMessageDescriptor = (value)=>{
156
+ return isRecord(value) && typeof value.id === 'string' && typeof value.defaultMessage === 'string';
157
+ };
152
158
  const Register = ({ hasAdmin })=>{
153
159
  const { toggleNotification } = useNotification();
154
160
  const navigate = useNavigate();
@@ -337,24 +343,26 @@ const Register = ({ hasAdmin })=>{
337
343
  if (err instanceof ValidationError) {
338
344
  const formatDescriptor = (msg)=>{
339
345
  try {
340
- if (!msg) return '';
346
+ if (msg === undefined || msg === null) return '';
341
347
  if (typeof msg === 'string') return msg;
342
348
  // Direct descriptor
343
- if ('id' in msg && 'defaultMessage' in msg) return formatMessage(msg);
349
+ if (isMessageDescriptor(msg)) return formatMessage(msg);
344
350
  // Wrapped descriptor: { message: { id, defaultMessage } }
345
- if (msg.message && typeof msg.message === 'object' && 'id' in msg.message) {
351
+ if (isRecord(msg) && isMessageDescriptor(msg.message)) {
346
352
  return formatMessage(msg.message);
347
353
  }
348
354
  // errors array: [{ id, defaultMessage }]
349
- if (Array.isArray(msg.errors) && msg.errors.length > 0) {
355
+ if (isRecord(msg) && Array.isArray(msg.errors) && msg.errors.length > 0) {
350
356
  const first = msg.errors[0];
351
357
  if (typeof first === 'string') return first;
352
- if (first && typeof first === 'object' && 'id' in first) return formatMessage(first);
358
+ if (isMessageDescriptor(first)) return formatMessage(first);
353
359
  }
354
360
  // fallback to defaultMessage if present
355
- if ('defaultMessage' in msg) return msg.defaultMessage;
361
+ if (isRecord(msg) && typeof msg.defaultMessage === 'string') {
362
+ return msg.defaultMessage;
363
+ }
356
364
  return String(msg);
357
- } catch (e) {
365
+ } catch {
358
366
  return String(msg);
359
367
  }
360
368
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Register.mjs","sources":["../../../../../../../admin/src/pages/Auth/components/Register.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography, Link } from '@strapi/design-system';\nimport omit from 'lodash/omit';\nimport { type MessageDescriptor, type PrimitiveType, useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate, useMatch, useLocation } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\nimport { ValidationError } from 'yup';\n\nimport {\n Register as RegisterUser,\n RegisterAdmin,\n} from '../../../../../shared/contracts/authentication';\nimport { Form, FormHelpers } from '../../../components/Form';\nimport { InputRenderer } from '../../../components/FormInputs/Renderer';\nimport { useNpsSurveySettings } from '../../../components/NpsSurvey';\nimport { Logo } from '../../../components/UnauthenticatedLogo';\nimport { useTypedDispatch } from '../../../core/store/hooks';\nimport { useNotification } from '../../../features/Notifications';\nimport { useTracking } from '../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../hooks/useAPIErrorHandler';\nimport { LayoutContent, UnauthenticatedLayout } from '../../../layouts/UnauthenticatedLayout';\nimport { login } from '../../../reducer';\nimport {\n useGetRegistrationInfoQuery,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n} from '../../../services/auth';\nimport { isBaseQueryError } from '../../../utils/baseQuery';\nimport { getOrCreateDeviceId } from '../../../utils/deviceId';\nimport { getByteSize } from '../../../utils/strings';\nimport { translatedErrors } from '../../../utils/translatedErrors';\n\nconst REGISTER_USER_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required).nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value || typeof value !== 'string') return true; // validated elsewhere\n\n const byteSize = getByteSize(value);\n return byteSize <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .nullable(),\n registrationToken: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'Registration token is required',\n }),\n});\n\nconst REGISTER_ADMIN_SCHEMA = yup.object().shape({\n firstname: yup\n .string()\n .trim()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Firstname is required',\n })\n .nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .nullable()\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n }),\n email: yup\n .string()\n .email({\n id: translatedErrors.email.id,\n defaultMessage: 'Not a valid email',\n })\n .strict()\n .lowercase({\n id: translatedErrors.lowercase.id,\n defaultMessage: 'Email must be lowercase',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Email is required',\n })\n .nullable(),\n});\n\ninterface RegisterProps {\n hasAdmin?: boolean;\n}\n\ninterface RegisterFormValues {\n firstname: string;\n lastname: string;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n}\n\ninterface IntlFormattedMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\nconst Register = ({ hasAdmin }: RegisterProps) => {\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const [submitCount, setSubmitCount] = React.useState(0);\n const [apiError, setApiError] = React.useState<string>();\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { search: searchString } = useLocation();\n const query = React.useMemo(() => new URLSearchParams(searchString), [searchString]);\n const match = useMatch('/auth/:authType');\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const { setNpsSurveySettings } = useNpsSurveySettings();\n\n const registrationToken = query.get('registrationToken');\n\n const { data: userInfo, error } = useGetRegistrationInfoQuery(registrationToken as string, {\n skip: !registrationToken,\n });\n\n React.useEffect(() => {\n if (error) {\n const message: string = isBaseQueryError(error)\n ? formatAPIError(error)\n : (error.message ?? '');\n\n toggleNotification({\n type: 'danger',\n message,\n });\n\n navigate(`/auth/oops?info=${encodeURIComponent(message)}`);\n }\n }, [error, formatAPIError, navigate, toggleNotification]);\n\n const [registerAdmin] = useRegisterAdminMutation();\n const [registerUser] = useRegisterUserMutation();\n const dispatch = useTypedDispatch();\n\n const handleRegisterAdmin = async (\n { news, ...body }: RegisterAdmin.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerAdmin({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${true}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n const handleRegisterUser = async (\n { news, ...body }: RegisterUser.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerUser({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${hasAdmin}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n if (\n !match ||\n (match.params.authType !== 'register' && match.params.authType !== 'register-admin')\n ) {\n return <Navigate to=\"/\" />;\n }\n\n const isAdminRegistration = match.params.authType === 'register-admin';\n\n const schema = isAdminRegistration ? REGISTER_ADMIN_SCHEMA : REGISTER_USER_SCHEMA;\n\n return (\n <UnauthenticatedLayout>\n <LayoutContent>\n <Flex direction=\"column\" alignItems=\"center\" gap={3}>\n <Logo />\n\n <Typography tag=\"h1\" variant=\"alpha\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.welcome.title',\n defaultMessage: 'Welcome to Strapi!',\n })}\n </Typography>\n <Typography variant=\"epsilon\" textColor=\"neutral600\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.register.subtitle',\n defaultMessage:\n 'Credentials are only used to authenticate in Strapi. All saved data will be stored in your database.',\n })}\n </Typography>\n {apiError ? (\n <Typography id=\"global-form-error\" role=\"alert\" tabIndex={-1} textColor=\"danger600\">\n {apiError}\n </Typography>\n ) : null}\n </Flex>\n <Form\n method=\"POST\"\n initialValues={\n {\n firstname: userInfo?.firstname || '',\n lastname: userInfo?.lastname || '',\n email: userInfo?.email || '',\n password: '',\n confirmPassword: '',\n registrationToken: registrationToken || undefined,\n news: false,\n } satisfies RegisterFormValues\n }\n onSubmit={async (data, helpers) => {\n const normalizedData = normalizeData(data);\n\n try {\n await schema.validate(normalizedData, { abortEarly: false });\n\n if (submitCount > 0 && isAdminRegistration) {\n trackUsage('didSubmitWithErrorsFirstAdmin', { count: submitCount.toString() });\n }\n\n if (normalizedData.registrationToken) {\n handleRegisterUser(\n {\n userInfo: omit(normalizedData, [\n 'registrationToken',\n 'confirmPassword',\n 'email',\n 'news',\n ]),\n registrationToken: normalizedData.registrationToken,\n news: normalizedData.news,\n },\n helpers.setErrors\n );\n } else {\n await handleRegisterAdmin(\n omit(normalizedData, ['registrationToken', 'confirmPassword']),\n helpers.setErrors\n );\n }\n } catch (err) {\n if (err instanceof ValidationError) {\n const formatDescriptor = (msg: any) => {\n try {\n if (!msg) return '';\n if (typeof msg === 'string') return msg;\n // Direct descriptor\n if ('id' in msg && 'defaultMessage' in msg) return formatMessage(msg as any);\n // Wrapped descriptor: { message: { id, defaultMessage } }\n if (msg.message && typeof msg.message === 'object' && 'id' in msg.message) {\n return formatMessage(msg.message as any);\n }\n // errors array: [{ id, defaultMessage }]\n if (Array.isArray(msg.errors) && msg.errors.length > 0) {\n const first = msg.errors[0];\n if (typeof first === 'string') return first;\n if (first && typeof first === 'object' && 'id' in first)\n return formatMessage(first as any);\n }\n // fallback to defaultMessage if present\n if ('defaultMessage' in msg) return msg.defaultMessage;\n return String(msg);\n } catch (e) {\n return String(msg);\n }\n };\n\n const computed = err.inner.reduce<Record<string, string>>(\n (acc, { message, path }) => {\n if (!path) return acc;\n acc[path] = formatDescriptor(message);\n return acc;\n },\n {}\n );\n\n helpers.setErrors(computed);\n }\n\n setSubmitCount(submitCount + 1);\n }\n }}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6} marginTop={7}>\n <Grid.Root gap={4}>\n {[\n {\n label: formatMessage({\n id: 'Auth.form.firstname.label',\n defaultMessage: 'Firstname',\n }),\n name: 'firstname',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Lastname',\n }),\n name: 'lastname',\n size: 6,\n type: 'string' as const,\n },\n {\n disabled: !isAdminRegistration,\n label: formatMessage({\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n }),\n name: 'email',\n required: true,\n size: 12,\n type: 'email' as const,\n },\n {\n hint: formatMessage({\n id: 'Auth.form.password.hint',\n defaultMessage:\n 'Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number',\n }),\n label: formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n }),\n name: 'password',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n }),\n name: 'confirmPassword',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage(\n {\n id: 'Auth.form.register.news.label',\n defaultMessage:\n 'Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy}).',\n },\n {\n terms: (\n <A target=\"_blank\" href=\"https://strapi.io/terms\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.terms',\n defaultMessage: 'terms',\n })}\n </A>\n ),\n policy: (\n <A target=\"_blank\" href=\"https://strapi.io/privacy\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.policy',\n defaultMessage: 'policy',\n })}\n </A>\n ),\n }\n ),\n name: 'news',\n size: 12,\n type: 'checkbox' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n xs={12}\n m={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Button fullWidth size=\"L\" type=\"submit\">\n {formatMessage({\n id: 'Auth.form.button.register',\n defaultMessage: \"Let's start\",\n })}\n </Button>\n </Flex>\n </Form>\n {match?.params.authType === 'register' && (\n <Box paddingTop={4}>\n <Flex justifyContent=\"center\">\n <Link tag={NavLink} to=\"/auth/login\">\n {formatMessage({\n id: 'Auth.link.signin.account',\n defaultMessage: 'Already have an account?',\n })}\n </Link>\n </Flex>\n </Box>\n )}\n </LayoutContent>\n </UnauthenticatedLayout>\n );\n};\n\ntype StringKeys<T> = {\n [K in keyof T]: T[K] extends string | undefined ? K : never;\n}[keyof T];\n\n/**\n * @description Trims all values but the password & sets lastName to null if it's a falsey value.\n */\nfunction normalizeData(data: RegisterFormValues) {\n return Object.entries(data).reduce(\n (acc, [key, value]) => {\n type PasswordKeys = Extract<keyof RegisterFormValues, 'password' | 'confirmPassword'>;\n type RegisterFormStringValues = Exclude<\n keyof Pick<RegisterFormValues, StringKeys<RegisterFormValues>>,\n PasswordKeys\n >;\n\n if (!['password', 'confirmPassword'].includes(key) && typeof value === 'string') {\n acc[key as RegisterFormStringValues] = value.trim();\n\n if (key === 'lastname') {\n acc[key] = value || undefined;\n }\n } else {\n acc[key as PasswordKeys] = value;\n }\n\n return acc;\n },\n {} as {\n firstname: string;\n lastname: string | undefined;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n }\n );\n}\n\nconst A = styled.a`\n color: ${({ theme }) => theme.colors.primary600};\n`;\n\nexport { Register };\nexport type { RegisterProps };\n"],"names":["REGISTER_USER_SCHEMA","yup","object","shape","firstname","string","trim","required","translatedErrors","nullable","lastname","password","min","id","minLength","defaultMessage","values","test","value","byteSize","getByteSize","message","confirmPassword","oneOf","ref","registrationToken","REGISTER_ADMIN_SCHEMA","TextEncoder","encode","length","email","strict","lowercase","Register","hasAdmin","toggleNotification","useNotification","navigate","useNavigate","submitCount","setSubmitCount","React","useState","apiError","setApiError","trackUsage","useTracking","formatMessage","useIntl","search","searchString","useLocation","query","useMemo","URLSearchParams","match","useMatch","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","setNpsSurveySettings","useNpsSurveySettings","get","data","userInfo","error","useGetRegistrationInfoQuery","skip","useEffect","isBaseQueryError","type","encodeURIComponent","registerAdmin","useRegisterAdminMutation","registerUser","useRegisterUserMutation","dispatch","useTypedDispatch","handleRegisterAdmin","news","body","setFormErrors","res","deviceId","getOrCreateDeviceId","login","token","s","enabled","pathname","name","handleRegisterUser","params","authType","_jsx","Navigate","to","isAdminRegistration","schema","UnauthenticatedLayout","_jsxs","LayoutContent","Flex","direction","alignItems","gap","Logo","Typography","tag","variant","textAlign","textColor","role","tabIndex","Form","method","initialValues","undefined","onSubmit","helpers","normalizedData","normalizeData","validate","abortEarly","count","toString","omit","setErrors","err","ValidationError","formatDescriptor","msg","Array","isArray","errors","first","String","e","computed","inner","reduce","acc","path","marginTop","Grid","Root","label","size","disabled","hint","terms","A","target","href","rel","policy","map","field","Item","xs","m","InputRenderer","Button","fullWidth","Box","paddingTop","justifyContent","Link","NavLink","Object","entries","key","includes","styled","a","theme","colors","primary600"],"mappings":"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"}
1
+ {"version":3,"file":"Register.mjs","sources":["../../../../../../../admin/src/pages/Auth/components/Register.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography, Link } from '@strapi/design-system';\nimport omit from 'lodash/omit';\nimport { useIntl, type MessageDescriptor } from 'react-intl';\nimport { NavLink, Navigate, useNavigate, useMatch, useLocation } from 'react-router-dom';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\nimport { ValidationError } from 'yup';\n\nimport {\n Register as RegisterUser,\n RegisterAdmin,\n} from '../../../../../shared/contracts/authentication';\nimport { Form, FormHelpers } from '../../../components/Form';\nimport { InputRenderer } from '../../../components/FormInputs/Renderer';\nimport { useNpsSurveySettings } from '../../../components/NpsSurvey';\nimport { Logo } from '../../../components/UnauthenticatedLogo';\nimport { useTypedDispatch } from '../../../core/store/hooks';\nimport { useNotification } from '../../../features/Notifications';\nimport { useTracking } from '../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../hooks/useAPIErrorHandler';\nimport { LayoutContent, UnauthenticatedLayout } from '../../../layouts/UnauthenticatedLayout';\nimport { login } from '../../../reducer';\nimport {\n useGetRegistrationInfoQuery,\n useRegisterAdminMutation,\n useRegisterUserMutation,\n} from '../../../services/auth';\nimport { isBaseQueryError } from '../../../utils/baseQuery';\nimport { getOrCreateDeviceId } from '../../../utils/deviceId';\nimport { getByteSize } from '../../../utils/strings';\nimport { translatedErrors } from '../../../utils/translatedErrors';\n\nconst REGISTER_USER_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required).nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value || typeof value !== 'string') return true; // validated elsewhere\n\n const byteSize = getByteSize(value);\n return byteSize <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n })\n .nullable(),\n registrationToken: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'Registration token is required',\n }),\n});\n\nconst REGISTER_ADMIN_SCHEMA = yup.object().shape({\n firstname: yup\n .string()\n .trim()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Firstname is required',\n })\n .nullable(),\n lastname: yup.string().nullable(),\n password: yup\n .string()\n .min(8, {\n id: translatedErrors.minLength.id,\n defaultMessage: 'Password must be at least 8 characters',\n values: { min: 8 },\n })\n .test(\n 'max-bytes',\n {\n id: 'components.Input.error.contain.maxBytes',\n defaultMessage: 'Password must be less than 73 bytes',\n },\n function (value) {\n if (!value) return true;\n return new TextEncoder().encode(value).length <= 72;\n }\n )\n .test(\n 'lowercase',\n {\n message: {\n id: 'components.Input.error.contain.lowercase',\n defaultMessage: 'Password must contain at least 1 lowercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[a-z]/.test(value);\n }\n )\n .test(\n 'uppercase',\n {\n message: {\n id: 'components.Input.error.contain.uppercase',\n defaultMessage: 'Password must contain at least 1 uppercase letter',\n },\n },\n (value) => {\n if (!value) return true;\n return /[A-Z]/.test(value);\n }\n )\n .test(\n 'number',\n {\n message: {\n id: 'components.Input.error.contain.number',\n defaultMessage: 'Password must contain at least 1 number',\n },\n },\n (value) => {\n if (!value) return true;\n return /\\d/.test(value);\n }\n )\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Password is required',\n })\n .nullable(),\n confirmPassword: yup\n .string()\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Confirm password is required',\n })\n .nullable()\n .oneOf([yup.ref('password'), null], {\n id: 'components.Input.error.password.noMatch',\n defaultMessage: 'Passwords must match',\n }),\n email: yup\n .string()\n .email({\n id: translatedErrors.email.id,\n defaultMessage: 'Not a valid email',\n })\n .strict()\n .lowercase({\n id: translatedErrors.lowercase.id,\n defaultMessage: 'Email must be lowercase',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'Email is required',\n })\n .nullable(),\n});\n\ninterface RegisterProps {\n hasAdmin?: boolean;\n}\n\ninterface RegisterFormValues {\n firstname: string;\n lastname: string;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n}\n\nconst isRecord = (value: unknown): value is Record<string, unknown> => {\n return typeof value === 'object' && !Array.isArray(value) && value !== null;\n};\n\nconst isMessageDescriptor = (value: unknown): value is MessageDescriptor => {\n return (\n isRecord(value) && typeof value.id === 'string' && typeof value.defaultMessage === 'string'\n );\n};\n\nconst Register = ({ hasAdmin }: RegisterProps) => {\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const [submitCount, setSubmitCount] = React.useState(0);\n const [apiError, setApiError] = React.useState<string>();\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { search: searchString } = useLocation();\n const query = React.useMemo(() => new URLSearchParams(searchString), [searchString]);\n const match = useMatch('/auth/:authType');\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const { setNpsSurveySettings } = useNpsSurveySettings();\n\n const registrationToken = query.get('registrationToken');\n\n const { data: userInfo, error } = useGetRegistrationInfoQuery(registrationToken as string, {\n skip: !registrationToken,\n });\n\n React.useEffect(() => {\n if (error) {\n const message: string = isBaseQueryError(error)\n ? formatAPIError(error)\n : (error.message ?? '');\n\n toggleNotification({\n type: 'danger',\n message,\n });\n\n navigate(`/auth/oops?info=${encodeURIComponent(message)}`);\n }\n }, [error, formatAPIError, navigate, toggleNotification]);\n\n const [registerAdmin] = useRegisterAdminMutation();\n const [registerUser] = useRegisterUserMutation();\n const dispatch = useTypedDispatch();\n\n const handleRegisterAdmin = async (\n { news, ...body }: RegisterAdmin.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerAdmin({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${true}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n const handleRegisterUser = async (\n { news, ...body }: RegisterUser.Request['body'] & { news: boolean },\n setFormErrors: FormHelpers<RegisterFormValues>['setErrors']\n ) => {\n const res = await registerUser({ ...body, deviceId: getOrCreateDeviceId() });\n\n if ('data' in res) {\n dispatch(login({ token: res.data.token }));\n\n if (news) {\n // Only enable EE survey if user accepted the newsletter\n setNpsSurveySettings((s) => ({ ...s, enabled: true }));\n\n navigate({\n pathname: '/usecase',\n search: `?hasAdmin=${hasAdmin}`,\n });\n } else {\n navigate('/');\n }\n } else {\n if (isBaseQueryError(res.error)) {\n trackUsage('didNotCreateFirstAdmin');\n\n if (res.error.name === 'ValidationError') {\n setFormErrors(formatValidationErrors(res.error));\n return;\n }\n\n setApiError(formatAPIError(res.error));\n }\n }\n };\n\n if (\n !match ||\n (match.params.authType !== 'register' && match.params.authType !== 'register-admin')\n ) {\n return <Navigate to=\"/\" />;\n }\n\n const isAdminRegistration = match.params.authType === 'register-admin';\n\n const schema = isAdminRegistration ? REGISTER_ADMIN_SCHEMA : REGISTER_USER_SCHEMA;\n\n return (\n <UnauthenticatedLayout>\n <LayoutContent>\n <Flex direction=\"column\" alignItems=\"center\" gap={3}>\n <Logo />\n\n <Typography tag=\"h1\" variant=\"alpha\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.welcome.title',\n defaultMessage: 'Welcome to Strapi!',\n })}\n </Typography>\n <Typography variant=\"epsilon\" textColor=\"neutral600\" textAlign=\"center\">\n {formatMessage({\n id: 'Auth.form.register.subtitle',\n defaultMessage:\n 'Credentials are only used to authenticate in Strapi. All saved data will be stored in your database.',\n })}\n </Typography>\n {apiError ? (\n <Typography id=\"global-form-error\" role=\"alert\" tabIndex={-1} textColor=\"danger600\">\n {apiError}\n </Typography>\n ) : null}\n </Flex>\n <Form\n method=\"POST\"\n initialValues={\n {\n firstname: userInfo?.firstname || '',\n lastname: userInfo?.lastname || '',\n email: userInfo?.email || '',\n password: '',\n confirmPassword: '',\n registrationToken: registrationToken || undefined,\n news: false,\n } satisfies RegisterFormValues\n }\n onSubmit={async (data, helpers) => {\n const normalizedData = normalizeData(data);\n\n try {\n await schema.validate(normalizedData, { abortEarly: false });\n\n if (submitCount > 0 && isAdminRegistration) {\n trackUsage('didSubmitWithErrorsFirstAdmin', { count: submitCount.toString() });\n }\n\n if (normalizedData.registrationToken) {\n handleRegisterUser(\n {\n userInfo: omit(normalizedData, [\n 'registrationToken',\n 'confirmPassword',\n 'email',\n 'news',\n ]),\n registrationToken: normalizedData.registrationToken,\n news: normalizedData.news,\n },\n helpers.setErrors\n );\n } else {\n await handleRegisterAdmin(\n omit(normalizedData, ['registrationToken', 'confirmPassword']),\n helpers.setErrors\n );\n }\n } catch (err) {\n if (err instanceof ValidationError) {\n const formatDescriptor = (msg: unknown) => {\n try {\n if (msg === undefined || msg === null) return '';\n if (typeof msg === 'string') return msg;\n // Direct descriptor\n if (isMessageDescriptor(msg)) return formatMessage(msg);\n // Wrapped descriptor: { message: { id, defaultMessage } }\n if (isRecord(msg) && isMessageDescriptor(msg.message)) {\n return formatMessage(msg.message);\n }\n // errors array: [{ id, defaultMessage }]\n if (isRecord(msg) && Array.isArray(msg.errors) && msg.errors.length > 0) {\n const first = msg.errors[0];\n if (typeof first === 'string') return first;\n if (isMessageDescriptor(first)) return formatMessage(first);\n }\n // fallback to defaultMessage if present\n if (isRecord(msg) && typeof msg.defaultMessage === 'string') {\n return msg.defaultMessage;\n }\n return String(msg);\n } catch {\n return String(msg);\n }\n };\n\n const computed = err.inner.reduce<Record<string, string>>(\n (acc, { message, path }) => {\n if (!path) return acc;\n acc[path] = formatDescriptor(message);\n return acc;\n },\n {}\n );\n\n helpers.setErrors(computed);\n }\n\n setSubmitCount(submitCount + 1);\n }\n }}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6} marginTop={7}>\n <Grid.Root gap={4}>\n {[\n {\n label: formatMessage({\n id: 'Auth.form.firstname.label',\n defaultMessage: 'Firstname',\n }),\n name: 'firstname',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Lastname',\n }),\n name: 'lastname',\n size: 6,\n type: 'string' as const,\n },\n {\n disabled: !isAdminRegistration,\n label: formatMessage({\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n }),\n name: 'email',\n required: true,\n size: 12,\n type: 'email' as const,\n },\n {\n hint: formatMessage({\n id: 'Auth.form.password.hint',\n defaultMessage:\n 'Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number',\n }),\n label: formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n }),\n name: 'password',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n }),\n name: 'confirmPassword',\n required: true,\n size: 12,\n type: 'password' as const,\n },\n {\n label: formatMessage(\n {\n id: 'Auth.form.register.news.label',\n defaultMessage:\n 'Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy}).',\n },\n {\n terms: (\n <A target=\"_blank\" href=\"https://strapi.io/terms\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.terms',\n defaultMessage: 'terms',\n })}\n </A>\n ),\n policy: (\n <A target=\"_blank\" href=\"https://strapi.io/privacy\" rel=\"noreferrer\">\n {formatMessage({\n id: 'Auth.privacy-policy-agreement.policy',\n defaultMessage: 'policy',\n })}\n </A>\n ),\n }\n ),\n name: 'news',\n size: 12,\n type: 'checkbox' as const,\n },\n ].map(({ size, ...field }) => (\n <Grid.Item\n key={field.name}\n xs={12}\n m={size}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n <Button fullWidth size=\"L\" type=\"submit\">\n {formatMessage({\n id: 'Auth.form.button.register',\n defaultMessage: \"Let's start\",\n })}\n </Button>\n </Flex>\n </Form>\n {match?.params.authType === 'register' && (\n <Box paddingTop={4}>\n <Flex justifyContent=\"center\">\n <Link tag={NavLink} to=\"/auth/login\">\n {formatMessage({\n id: 'Auth.link.signin.account',\n defaultMessage: 'Already have an account?',\n })}\n </Link>\n </Flex>\n </Box>\n )}\n </LayoutContent>\n </UnauthenticatedLayout>\n );\n};\n\ntype StringKeys<T> = {\n [K in keyof T]: T[K] extends string | undefined ? K : never;\n}[keyof T];\n\n/**\n * @description Trims all values but the password & sets lastName to null if it's a falsey value.\n */\nfunction normalizeData(data: RegisterFormValues) {\n return Object.entries(data).reduce(\n (acc, [key, value]) => {\n type PasswordKeys = Extract<keyof RegisterFormValues, 'password' | 'confirmPassword'>;\n type RegisterFormStringValues = Exclude<\n keyof Pick<RegisterFormValues, StringKeys<RegisterFormValues>>,\n PasswordKeys\n >;\n\n if (!['password', 'confirmPassword'].includes(key) && typeof value === 'string') {\n acc[key as RegisterFormStringValues] = value.trim();\n\n if (key === 'lastname') {\n acc[key] = value || undefined;\n }\n } else {\n acc[key as PasswordKeys] = value;\n }\n\n return acc;\n },\n {} as {\n firstname: string;\n lastname: string | undefined;\n email: string;\n password: string;\n confirmPassword: string;\n registrationToken: string | undefined;\n news: boolean;\n }\n );\n}\n\nconst A = styled.a`\n color: ${({ theme }) => theme.colors.primary600};\n`;\n\nexport { Register };\nexport type { RegisterProps };\n"],"names":["REGISTER_USER_SCHEMA","yup","object","shape","firstname","string","trim","required","translatedErrors","nullable","lastname","password","min","id","minLength","defaultMessage","values","test","value","byteSize","getByteSize","message","confirmPassword","oneOf","ref","registrationToken","REGISTER_ADMIN_SCHEMA","TextEncoder","encode","length","email","strict","lowercase","isRecord","Array","isArray","isMessageDescriptor","Register","hasAdmin","toggleNotification","useNotification","navigate","useNavigate","submitCount","setSubmitCount","React","useState","apiError","setApiError","trackUsage","useTracking","formatMessage","useIntl","search","searchString","useLocation","query","useMemo","URLSearchParams","match","useMatch","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","setNpsSurveySettings","useNpsSurveySettings","get","data","userInfo","error","useGetRegistrationInfoQuery","skip","useEffect","isBaseQueryError","type","encodeURIComponent","registerAdmin","useRegisterAdminMutation","registerUser","useRegisterUserMutation","dispatch","useTypedDispatch","handleRegisterAdmin","news","body","setFormErrors","res","deviceId","getOrCreateDeviceId","login","token","s","enabled","pathname","name","handleRegisterUser","params","authType","_jsx","Navigate","to","isAdminRegistration","schema","UnauthenticatedLayout","_jsxs","LayoutContent","Flex","direction","alignItems","gap","Logo","Typography","tag","variant","textAlign","textColor","role","tabIndex","Form","method","initialValues","undefined","onSubmit","helpers","normalizedData","normalizeData","validate","abortEarly","count","toString","omit","setErrors","err","ValidationError","formatDescriptor","msg","errors","first","String","computed","inner","reduce","acc","path","marginTop","Grid","Root","label","size","disabled","hint","terms","A","target","href","rel","policy","map","field","Item","xs","m","InputRenderer","Button","fullWidth","Box","paddingTop","justifyContent","Link","NavLink","Object","entries","key","includes","styled","a","theme","colors","primary600"],"mappings":"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"}
@@ -5,7 +5,7 @@ var React = require('react');
5
5
  var designSystem = require('@strapi/design-system');
6
6
  var icons = require('@strapi/icons');
7
7
  var reactIntl = require('react-intl');
8
- var styled = require('styled-components');
8
+ var styledComponents = require('styled-components');
9
9
  var DragLayer = require('../../components/DragLayer.js');
10
10
  var GapDropZone = require('../../components/GapDropZone.js');
11
11
  var Overview = require('../../components/GuidedTour/Overview.js');
@@ -57,7 +57,7 @@ const getWidgetPermissionsCacheKey = (permissions)=>{
57
57
  })).sort().join('|');
58
58
  };
59
59
  // Styled wrapper for the drag preview
60
- const DragPreviewWrapper = styled.styled.div`
60
+ const DragPreviewWrapper = styledComponents.styled.div`
61
61
  max-width: ${(props)=>props.$maxWidth};
62
62
  overflow: hidden;
63
63
  opacity: 0.9;