@strapi/admin 5.37.1 → 5.38.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 (992) hide show
  1. package/dist/admin/admin/src/App.js +1 -1
  2. package/dist/admin/admin/src/App.js.map +1 -1
  3. package/dist/admin/admin/src/App.mjs +1 -1
  4. package/dist/admin/admin/src/App.mjs.map +1 -1
  5. package/dist/admin/admin/src/StrapiApp.js.map +1 -1
  6. package/dist/admin/admin/src/StrapiApp.mjs +2 -2
  7. package/dist/admin/admin/src/StrapiApp.mjs.map +1 -1
  8. package/dist/admin/admin/src/assets/images/free-trial.png.js.map +1 -1
  9. package/dist/admin/admin/src/assets/images/free-trial.png.mjs.map +1 -1
  10. package/dist/admin/admin/src/assets/images/logo-strapi-2022.svg.js.map +1 -1
  11. package/dist/admin/admin/src/assets/images/logo-strapi-2022.svg.mjs.map +1 -1
  12. package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
  13. package/dist/admin/admin/src/components/ConfirmDialog.mjs.map +1 -1
  14. package/dist/admin/admin/src/components/ContentBox.js.map +1 -1
  15. package/dist/admin/admin/src/components/ContentBox.mjs.map +1 -1
  16. package/dist/admin/admin/src/components/Context.js.map +1 -1
  17. package/dist/admin/admin/src/components/Context.mjs.map +1 -1
  18. package/dist/admin/admin/src/components/DescriptionComponentRenderer.js.map +1 -1
  19. package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs.map +1 -1
  20. package/dist/admin/admin/src/components/DragLayer.js.map +1 -1
  21. package/dist/admin/admin/src/components/DragLayer.mjs.map +1 -1
  22. package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
  23. package/dist/admin/admin/src/components/ErrorElement.mjs.map +1 -1
  24. package/dist/admin/admin/src/components/Filters.js.map +1 -1
  25. package/dist/admin/admin/src/components/Filters.mjs +1 -1
  26. package/dist/admin/admin/src/components/Filters.mjs.map +1 -1
  27. package/dist/admin/admin/src/components/Form.js +14 -0
  28. package/dist/admin/admin/src/components/Form.js.map +1 -1
  29. package/dist/admin/admin/src/components/Form.mjs +15 -1
  30. package/dist/admin/admin/src/components/Form.mjs.map +1 -1
  31. package/dist/admin/admin/src/components/FormInputs/Boolean.js.map +1 -1
  32. package/dist/admin/admin/src/components/FormInputs/Boolean.mjs.map +1 -1
  33. package/dist/admin/admin/src/components/FormInputs/Checkbox.js.map +1 -1
  34. package/dist/admin/admin/src/components/FormInputs/Checkbox.mjs.map +1 -1
  35. package/dist/admin/admin/src/components/FormInputs/Date.js.map +1 -1
  36. package/dist/admin/admin/src/components/FormInputs/Date.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/FormInputs/DateTime.js.map +1 -1
  38. package/dist/admin/admin/src/components/FormInputs/DateTime.mjs.map +1 -1
  39. package/dist/admin/admin/src/components/FormInputs/Email.js.map +1 -1
  40. package/dist/admin/admin/src/components/FormInputs/Email.mjs.map +1 -1
  41. package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
  42. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
  43. package/dist/admin/admin/src/components/FormInputs/Json.js.map +1 -1
  44. package/dist/admin/admin/src/components/FormInputs/Json.mjs.map +1 -1
  45. package/dist/admin/admin/src/components/FormInputs/Number.js.map +1 -1
  46. package/dist/admin/admin/src/components/FormInputs/Number.mjs.map +1 -1
  47. package/dist/admin/admin/src/components/FormInputs/Password.js.map +1 -1
  48. package/dist/admin/admin/src/components/FormInputs/Password.mjs.map +1 -1
  49. package/dist/admin/admin/src/components/FormInputs/Renderer.js.map +1 -1
  50. package/dist/admin/admin/src/components/FormInputs/Renderer.mjs.map +1 -1
  51. package/dist/admin/admin/src/components/FormInputs/String.js.map +1 -1
  52. package/dist/admin/admin/src/components/FormInputs/String.mjs.map +1 -1
  53. package/dist/admin/admin/src/components/FormInputs/Textarea.js.map +1 -1
  54. package/dist/admin/admin/src/components/FormInputs/Textarea.mjs.map +1 -1
  55. package/dist/admin/admin/src/components/FormInputs/Time.js.map +1 -1
  56. package/dist/admin/admin/src/components/FormInputs/Time.mjs.map +1 -1
  57. package/dist/admin/admin/src/components/GapDropZone.js.map +1 -1
  58. package/dist/admin/admin/src/components/GapDropZone.mjs.map +1 -1
  59. package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
  60. package/dist/admin/admin/src/components/GradientBadge.mjs.map +1 -1
  61. package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
  62. package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -1
  63. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js.map +1 -1
  64. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs.map +1 -1
  65. package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
  66. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs +1 -1
  67. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs.map +1 -1
  68. package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.js.map +1 -1
  69. package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.mjs +1 -1
  70. package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.mjs.map +1 -1
  71. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentManagerSteps.js.map +1 -1
  72. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentManagerSteps.mjs.map +1 -1
  73. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js.map +1 -1
  74. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs.map +1 -1
  75. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
  76. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs +2 -2
  77. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
  78. package/dist/admin/admin/src/components/GuidedTour/Tours.js +1 -1
  79. package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
  80. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs +2 -2
  81. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -1
  82. package/dist/admin/admin/src/components/GuidedTour/utils/constants.js.map +1 -1
  83. package/dist/admin/admin/src/components/GuidedTour/utils/constants.mjs.map +1 -1
  84. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js.map +1 -1
  85. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs.map +1 -1
  86. package/dist/admin/admin/src/components/LanguageProvider.js.map +1 -1
  87. package/dist/admin/admin/src/components/LanguageProvider.mjs.map +1 -1
  88. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  89. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
  90. package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
  91. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
  92. package/dist/admin/admin/src/components/Layouts/GridLayout.js.map +1 -1
  93. package/dist/admin/admin/src/components/Layouts/GridLayout.mjs.map +1 -1
  94. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
  95. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +1 -1
  96. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
  97. package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
  98. package/dist/admin/admin/src/components/Layouts/Layout.mjs +1 -1
  99. package/dist/admin/admin/src/components/Layouts/Layout.mjs.map +1 -1
  100. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  101. package/dist/admin/admin/src/components/LeftMenu.mjs +1 -1
  102. package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
  103. package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
  104. package/dist/admin/admin/src/components/MainNav/MainNav.mjs.map +1 -1
  105. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
  106. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +1 -1
  107. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -1
  108. package/dist/admin/admin/src/components/MainNav/NavBrand.js.map +1 -1
  109. package/dist/admin/admin/src/components/MainNav/NavBrand.mjs.map +1 -1
  110. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -1
  111. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs +2 -2
  112. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs.map +1 -1
  113. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  114. package/dist/admin/admin/src/components/MainNav/NavLink.mjs +2 -2
  115. package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
  116. package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
  117. package/dist/admin/admin/src/components/MainNav/NavUser.mjs +2 -2
  118. package/dist/admin/admin/src/components/MainNav/NavUser.mjs.map +1 -1
  119. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
  120. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs +1 -1
  121. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs.map +1 -1
  122. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  123. package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
  124. package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
  125. package/dist/admin/admin/src/components/PageHelpers.mjs +2 -2
  126. package/dist/admin/admin/src/components/PageHelpers.mjs.map +1 -1
  127. package/dist/admin/admin/src/components/Pagination.js.map +1 -1
  128. package/dist/admin/admin/src/components/Pagination.mjs +1 -1
  129. package/dist/admin/admin/src/components/Pagination.mjs.map +1 -1
  130. package/dist/admin/admin/src/components/PluginsInitializer.js.map +1 -1
  131. package/dist/admin/admin/src/components/PluginsInitializer.mjs.map +1 -1
  132. package/dist/admin/admin/src/components/PrivateRoute.js.map +1 -1
  133. package/dist/admin/admin/src/components/PrivateRoute.mjs.map +1 -1
  134. package/dist/admin/admin/src/components/Providers.js.map +1 -1
  135. package/dist/admin/admin/src/components/Providers.mjs.map +1 -1
  136. package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
  137. package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
  138. package/dist/admin/admin/src/components/ResizeIndicator.js.map +1 -1
  139. package/dist/admin/admin/src/components/ResizeIndicator.mjs.map +1 -1
  140. package/dist/admin/admin/src/components/SearchInput.js.map +1 -1
  141. package/dist/admin/admin/src/components/SearchInput.mjs.map +1 -1
  142. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  143. package/dist/admin/admin/src/components/SubNav.mjs +3 -3
  144. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  145. package/dist/admin/admin/src/components/Table.js.map +1 -1
  146. package/dist/admin/admin/src/components/Table.mjs +1 -1
  147. package/dist/admin/admin/src/components/Table.mjs.map +1 -1
  148. package/dist/admin/admin/src/components/Theme.js.map +1 -1
  149. package/dist/admin/admin/src/components/Theme.mjs.map +1 -1
  150. package/dist/admin/admin/src/components/UnauthenticatedLogo.js.map +1 -1
  151. package/dist/admin/admin/src/components/UnauthenticatedLogo.mjs.map +1 -1
  152. package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
  153. package/dist/admin/admin/src/components/UpsellBanner.mjs.map +1 -1
  154. package/dist/admin/admin/src/components/WidgetHelpers.js.map +1 -1
  155. package/dist/admin/admin/src/components/WidgetHelpers.mjs +3 -3
  156. package/dist/admin/admin/src/components/WidgetHelpers.mjs.map +1 -1
  157. package/dist/admin/admin/src/components/WidgetRoot.js.map +1 -1
  158. package/dist/admin/admin/src/components/WidgetRoot.mjs +2 -2
  159. package/dist/admin/admin/src/components/WidgetRoot.mjs.map +1 -1
  160. package/dist/admin/admin/src/components/Widgets.js.map +1 -1
  161. package/dist/admin/admin/src/components/Widgets.mjs +3 -3
  162. package/dist/admin/admin/src/components/Widgets.mjs.map +1 -1
  163. package/dist/admin/admin/src/constants/filters.js.map +1 -1
  164. package/dist/admin/admin/src/constants/filters.mjs.map +1 -1
  165. package/dist/admin/admin/src/constants/theme.js.map +1 -1
  166. package/dist/admin/admin/src/constants/theme.mjs.map +1 -1
  167. package/dist/admin/admin/src/constants.js.map +1 -1
  168. package/dist/admin/admin/src/constants.mjs.map +1 -1
  169. package/dist/admin/admin/src/core/apis/CustomFields.js.map +1 -1
  170. package/dist/admin/admin/src/core/apis/CustomFields.mjs.map +1 -1
  171. package/dist/admin/admin/src/core/apis/Plugin.js.map +1 -1
  172. package/dist/admin/admin/src/core/apis/Plugin.mjs.map +1 -1
  173. package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
  174. package/dist/admin/admin/src/core/apis/Widgets.mjs.map +1 -1
  175. package/dist/admin/admin/src/core/apis/rbac.js.map +1 -1
  176. package/dist/admin/admin/src/core/apis/rbac.mjs.map +1 -1
  177. package/dist/admin/admin/src/core/apis/router.js.map +1 -1
  178. package/dist/admin/admin/src/core/apis/router.mjs.map +1 -1
  179. package/dist/admin/admin/src/core/store/configure.js.map +1 -1
  180. package/dist/admin/admin/src/core/store/configure.mjs.map +1 -1
  181. package/dist/admin/admin/src/core/store/hooks.js.map +1 -1
  182. package/dist/admin/admin/src/core/store/hooks.mjs.map +1 -1
  183. package/dist/admin/admin/src/core/utils/basename.js.map +1 -1
  184. package/dist/admin/admin/src/core/utils/basename.mjs.map +1 -1
  185. package/dist/admin/admin/src/core/utils/createHook.js.map +1 -1
  186. package/dist/admin/admin/src/core/utils/createHook.mjs.map +1 -1
  187. package/dist/admin/admin/src/features/AppInfo.js.map +1 -1
  188. package/dist/admin/admin/src/features/AppInfo.mjs.map +1 -1
  189. package/dist/admin/admin/src/features/Auth.js +0 -1
  190. package/dist/admin/admin/src/features/Auth.js.map +1 -1
  191. package/dist/admin/admin/src/features/Auth.mjs +1 -2
  192. package/dist/admin/admin/src/features/Auth.mjs.map +1 -1
  193. package/dist/admin/admin/src/features/BackButton.js.map +1 -1
  194. package/dist/admin/admin/src/features/BackButton.mjs.map +1 -1
  195. package/dist/admin/admin/src/features/Configuration.js.map +1 -1
  196. package/dist/admin/admin/src/features/Configuration.mjs.map +1 -1
  197. package/dist/admin/admin/src/features/Notifications.js.map +1 -1
  198. package/dist/admin/admin/src/features/Notifications.mjs.map +1 -1
  199. package/dist/admin/admin/src/features/StrapiApp.js.map +1 -1
  200. package/dist/admin/admin/src/features/StrapiApp.mjs.map +1 -1
  201. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  202. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  203. package/dist/admin/admin/src/features/Widgets.js.map +1 -1
  204. package/dist/admin/admin/src/features/Widgets.mjs +1 -1
  205. package/dist/admin/admin/src/features/Widgets.mjs.map +1 -1
  206. package/dist/admin/admin/src/hooks/useAPIErrorHandler.js.map +1 -1
  207. package/dist/admin/admin/src/hooks/useAPIErrorHandler.mjs.map +1 -1
  208. package/dist/admin/admin/src/hooks/useAdminRoles.js.map +1 -1
  209. package/dist/admin/admin/src/hooks/useAdminRoles.mjs.map +1 -1
  210. package/dist/admin/admin/src/hooks/useClipboard.js.map +1 -1
  211. package/dist/admin/admin/src/hooks/useClipboard.mjs.map +1 -1
  212. package/dist/admin/admin/src/hooks/useControllableState.js.map +1 -1
  213. package/dist/admin/admin/src/hooks/useControllableState.mjs.map +1 -1
  214. package/dist/admin/admin/src/hooks/useDebounce.js.map +1 -1
  215. package/dist/admin/admin/src/hooks/useDebounce.mjs.map +1 -1
  216. package/dist/admin/admin/src/hooks/useDeviceType.js.map +1 -1
  217. package/dist/admin/admin/src/hooks/useDeviceType.mjs.map +1 -1
  218. package/dist/admin/admin/src/hooks/useElementOnScreen.js.map +1 -1
  219. package/dist/admin/admin/src/hooks/useElementOnScreen.mjs.map +1 -1
  220. package/dist/admin/admin/src/hooks/useEnterprise.js.map +1 -1
  221. package/dist/admin/admin/src/hooks/useEnterprise.mjs.map +1 -1
  222. package/dist/admin/admin/src/hooks/useFetchClient.js.map +1 -1
  223. package/dist/admin/admin/src/hooks/useFetchClient.mjs.map +1 -1
  224. package/dist/admin/admin/src/hooks/useFocusInputField.js.map +1 -1
  225. package/dist/admin/admin/src/hooks/useFocusInputField.mjs.map +1 -1
  226. package/dist/admin/admin/src/hooks/useForceUpdate.js.map +1 -1
  227. package/dist/admin/admin/src/hooks/useForceUpdate.mjs.map +1 -1
  228. package/dist/admin/admin/src/hooks/useInjectReducer.js.map +1 -1
  229. package/dist/admin/admin/src/hooks/useInjectReducer.mjs.map +1 -1
  230. package/dist/admin/admin/src/hooks/useIsMounted.js.map +1 -1
  231. package/dist/admin/admin/src/hooks/useIsMounted.mjs.map +1 -1
  232. package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -1
  233. package/dist/admin/admin/src/hooks/useMediaQuery.mjs.map +1 -1
  234. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  235. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  236. package/dist/admin/admin/src/hooks/useOnce.js.map +1 -1
  237. package/dist/admin/admin/src/hooks/useOnce.mjs.map +1 -1
  238. package/dist/admin/admin/src/hooks/usePersistentState.js.map +1 -1
  239. package/dist/admin/admin/src/hooks/usePersistentState.mjs.map +1 -1
  240. package/dist/admin/admin/src/hooks/usePrev.js.map +1 -1
  241. package/dist/admin/admin/src/hooks/usePrev.mjs.map +1 -1
  242. package/dist/admin/admin/src/hooks/useQueryParams.js.map +1 -1
  243. package/dist/admin/admin/src/hooks/useQueryParams.mjs.map +1 -1
  244. package/dist/admin/admin/src/hooks/useRBAC.js.map +1 -1
  245. package/dist/admin/admin/src/hooks/useRBAC.mjs.map +1 -1
  246. package/dist/admin/admin/src/hooks/useSettingsMenu.js.map +1 -1
  247. package/dist/admin/admin/src/hooks/useSettingsMenu.mjs.map +1 -1
  248. package/dist/admin/admin/src/hooks/useThrottledCallback.js.map +1 -1
  249. package/dist/admin/admin/src/hooks/useThrottledCallback.mjs.map +1 -1
  250. package/dist/admin/admin/src/hooks/useWarnIfUnsavedChanges.js.map +1 -1
  251. package/dist/admin/admin/src/hooks/useWarnIfUnsavedChanges.mjs.map +1 -1
  252. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  253. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  254. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
  255. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs +1 -1
  256. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs.map +1 -1
  257. package/dist/admin/admin/src/pages/Auth/AuthPage.js.map +1 -1
  258. package/dist/admin/admin/src/pages/Auth/AuthPage.mjs.map +1 -1
  259. package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.js.map +1 -1
  260. package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.mjs.map +1 -1
  261. package/dist/admin/admin/src/pages/Auth/components/ForgotPasswordSuccess.js.map +1 -1
  262. package/dist/admin/admin/src/pages/Auth/components/ForgotPasswordSuccess.mjs.map +1 -1
  263. package/dist/admin/admin/src/pages/Auth/components/Login.js.map +1 -1
  264. package/dist/admin/admin/src/pages/Auth/components/Login.mjs.map +1 -1
  265. package/dist/admin/admin/src/pages/Auth/components/Oops.js.map +1 -1
  266. package/dist/admin/admin/src/pages/Auth/components/Oops.mjs.map +1 -1
  267. package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
  268. package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
  269. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
  270. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs.map +1 -1
  271. package/dist/admin/admin/src/pages/Auth/constants.js.map +1 -1
  272. package/dist/admin/admin/src/pages/Auth/constants.mjs.map +1 -1
  273. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  274. package/dist/admin/admin/src/pages/Home/HomePage.mjs +1 -1
  275. package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
  276. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js.map +1 -1
  277. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs +1 -1
  278. package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs.map +1 -1
  279. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js.map +1 -1
  280. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs +1 -1
  281. package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs.map +1 -1
  282. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js.map +1 -1
  283. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs +1 -1
  284. package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs.map +1 -1
  285. package/dist/admin/admin/src/pages/NotFoundPage.js.map +1 -1
  286. package/dist/admin/admin/src/pages/NotFoundPage.mjs.map +1 -1
  287. package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
  288. package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
  289. package/dist/admin/admin/src/pages/Settings/Layout.js.map +1 -1
  290. package/dist/admin/admin/src/pages/Settings/Layout.mjs.map +1 -1
  291. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-dark.jpg.js.map +1 -1
  292. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-dark.jpg.mjs.map +1 -1
  293. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-light.jpg.js.map +1 -1
  294. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-light.jpg.mjs.map +1 -1
  295. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-dark.jpg.js.map +1 -1
  296. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-dark.jpg.mjs.map +1 -1
  297. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-light.jpg.js.map +1 -1
  298. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-light.jpg.mjs.map +1 -1
  299. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-dark.jpg.js.map +1 -1
  300. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-dark.jpg.mjs.map +1 -1
  301. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-light.jpg.js.map +1 -1
  302. package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-light.jpg.mjs.map +1 -1
  303. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  304. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +1 -1
  305. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  306. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
  307. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs +1 -1
  308. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs.map +1 -1
  309. package/dist/admin/admin/src/pages/Settings/components/Tokens/LifeSpanInput.js.map +1 -1
  310. package/dist/admin/admin/src/pages/Settings/components/Tokens/LifeSpanInput.mjs.map +1 -1
  311. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js.map +1 -1
  312. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.mjs +2 -2
  313. package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.mjs.map +1 -1
  314. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js.map +1 -1
  315. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs +1 -1
  316. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs.map +1 -1
  317. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenDescription.js.map +1 -1
  318. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenDescription.mjs.map +1 -1
  319. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenName.js.map +1 -1
  320. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenName.mjs.map +1 -1
  321. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.js.map +1 -1
  322. package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.mjs.map +1 -1
  323. package/dist/admin/admin/src/pages/Settings/constants.js.map +1 -1
  324. package/dist/admin/admin/src/pages/Settings/constants.mjs.map +1 -1
  325. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/CreateView.js.map +1 -1
  326. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/CreateView.mjs.map +1 -1
  327. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.js.map +1 -1
  328. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.mjs.map +1 -1
  329. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/apiTokenPermissions.js.map +1 -1
  330. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/apiTokenPermissions.mjs.map +1 -1
  331. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ActionBoundRoutes.js.map +1 -1
  332. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ActionBoundRoutes.mjs.map +1 -1
  333. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js.map +1 -1
  334. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.mjs +1 -1
  335. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.mjs.map +1 -1
  336. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js.map +1 -1
  337. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.mjs +2 -2
  338. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.mjs.map +1 -1
  339. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ContentTypesSection.js.map +1 -1
  340. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ContentTypesSection.mjs.map +1 -1
  341. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/FormApiTokenContainer.js.map +1 -1
  342. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/FormApiTokenContainer.mjs.map +1 -1
  343. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/Permissions.js.map +1 -1
  344. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/Permissions.mjs.map +1 -1
  345. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/constants.js.map +1 -1
  346. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/constants.mjs.map +1 -1
  347. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js.map +1 -1
  348. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.mjs.map +1 -1
  349. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.js.map +1 -1
  350. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.mjs.map +1 -1
  351. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/transformPermissionsData.js.map +1 -1
  352. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/transformPermissionsData.mjs.map +1 -1
  353. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
  354. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs.map +1 -1
  355. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +1 -1
  356. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  357. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +2 -2
  358. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  359. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js.map +1 -1
  360. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.mjs +2 -2
  361. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.mjs.map +1 -1
  362. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/constants.js.map +1 -1
  363. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/constants.mjs.map +1 -1
  364. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/files.js.map +1 -1
  365. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/files.mjs.map +1 -1
  366. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js.map +1 -1
  367. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs.map +1 -1
  368. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js.map +1 -1
  369. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs.map +1 -1
  370. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js.map +1 -1
  371. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs.map +1 -1
  372. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js.map +1 -1
  373. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs.map +1 -1
  374. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
  375. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs +1 -1
  376. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs.map +1 -1
  377. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js.map +1 -1
  378. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs +1 -1
  379. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs.map +1 -1
  380. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js.map +1 -1
  381. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs +1 -1
  382. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs.map +1 -1
  383. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js.map +1 -1
  384. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.mjs.map +1 -1
  385. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js.map +1 -1
  386. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.mjs +1 -1
  387. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.mjs.map +1 -1
  388. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js.map +1 -1
  389. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.mjs +1 -1
  390. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.mjs.map +1 -1
  391. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsModal.js.map +1 -1
  392. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsModal.mjs.map +1 -1
  393. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
  394. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs +1 -1
  395. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs.map +1 -1
  396. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypes.js.map +1 -1
  397. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypes.mjs.map +1 -1
  398. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/GlobalActions.js.map +1 -1
  399. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/GlobalActions.mjs.map +1 -1
  400. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js.map +1 -1
  401. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.mjs.map +1 -1
  402. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.js.map +1 -1
  403. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.mjs +1 -1
  404. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.mjs.map +1 -1
  405. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js.map +1 -1
  406. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.mjs.map +1 -1
  407. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RequiredSign.js.map +1 -1
  408. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RequiredSign.mjs.map +1 -1
  409. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleForm.js.map +1 -1
  410. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleForm.mjs.map +1 -1
  411. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleRow.js.map +1 -1
  412. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleRow.mjs.map +1 -1
  413. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.js.map +1 -1
  414. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.mjs.map +1 -1
  415. package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.js.map +1 -1
  416. package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.mjs.map +1 -1
  417. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/constants.js.map +1 -1
  418. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/constants.mjs.map +1 -1
  419. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.js.map +1 -1
  420. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.mjs.map +1 -1
  421. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/difference.js.map +1 -1
  422. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/difference.mjs.map +1 -1
  423. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.js.map +1 -1
  424. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.mjs.map +1 -1
  425. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.js.map +1 -1
  426. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.mjs.map +1 -1
  427. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/layouts.js.map +1 -1
  428. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/layouts.mjs.map +1 -1
  429. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/permissions.js.map +1 -1
  430. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/permissions.mjs.map +1 -1
  431. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.js.map +1 -1
  432. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.mjs.map +1 -1
  433. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.js.map +1 -1
  434. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.mjs.map +1 -1
  435. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateValues.js.map +1 -1
  436. package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateValues.mjs.map +1 -1
  437. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/CreateView.js.map +1 -1
  438. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/CreateView.mjs.map +1 -1
  439. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js.map +1 -1
  440. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.mjs.map +1 -1
  441. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js.map +1 -1
  442. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs.map +1 -1
  443. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js.map +1 -1
  444. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs +1 -1
  445. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs.map +1 -1
  446. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
  447. package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs.map +1 -1
  448. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js.map +1 -1
  449. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.mjs.map +1 -1
  450. package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkCE.js.map +1 -1
  451. package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkCE.mjs.map +1 -1
  452. package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper.js.map +1 -1
  453. package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper.mjs.map +1 -1
  454. package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.js.map +1 -1
  455. package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.mjs.map +1 -1
  456. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js.map +1 -1
  457. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.mjs +1 -1
  458. package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.mjs.map +1 -1
  459. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js.map +1 -1
  460. package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.mjs.map +1 -1
  461. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/CreatePage.js.map +1 -1
  462. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/CreatePage.mjs.map +1 -1
  463. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.js.map +1 -1
  464. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.mjs.map +1 -1
  465. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
  466. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -1
  467. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
  468. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js +1 -3
  469. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js.map +1 -1
  470. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.mjs +2 -4
  471. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.mjs.map +1 -1
  472. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/EventsTable.js.map +1 -1
  473. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/EventsTable.mjs.map +1 -1
  474. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js.map +1 -1
  475. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.mjs +1 -1
  476. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.mjs.map +1 -1
  477. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.js.map +1 -1
  478. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.mjs.map +1 -1
  479. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js.map +1 -1
  480. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs +1 -1
  481. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs.map +1 -1
  482. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.js.map +1 -1
  483. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.mjs.map +1 -1
  484. package/dist/admin/admin/src/pages/Settings/utils/forms.js.map +1 -1
  485. package/dist/admin/admin/src/pages/Settings/utils/forms.mjs.map +1 -1
  486. package/dist/admin/admin/src/pages/UseCasePage.js.map +1 -1
  487. package/dist/admin/admin/src/pages/UseCasePage.mjs.map +1 -1
  488. package/dist/admin/admin/src/reducer.js.map +1 -1
  489. package/dist/admin/admin/src/reducer.mjs +1 -1
  490. package/dist/admin/admin/src/reducer.mjs.map +1 -1
  491. package/dist/admin/admin/src/render.js.map +1 -1
  492. package/dist/admin/admin/src/render.mjs.map +1 -1
  493. package/dist/admin/admin/src/router.js +4 -4
  494. package/dist/admin/admin/src/router.js.map +1 -1
  495. package/dist/admin/admin/src/router.mjs.map +1 -1
  496. package/dist/admin/admin/src/selectors.js.map +1 -1
  497. package/dist/admin/admin/src/selectors.mjs.map +1 -1
  498. package/dist/admin/admin/src/services/admin.js.map +1 -1
  499. package/dist/admin/admin/src/services/admin.mjs.map +1 -1
  500. package/dist/admin/admin/src/services/api.js.map +1 -1
  501. package/dist/admin/admin/src/services/api.mjs.map +1 -1
  502. package/dist/admin/admin/src/services/apiTokens.js.map +1 -1
  503. package/dist/admin/admin/src/services/apiTokens.mjs.map +1 -1
  504. package/dist/admin/admin/src/services/auth.js.map +1 -1
  505. package/dist/admin/admin/src/services/auth.mjs.map +1 -1
  506. package/dist/admin/admin/src/services/contentApi.js.map +1 -1
  507. package/dist/admin/admin/src/services/contentApi.mjs.map +1 -1
  508. package/dist/admin/admin/src/services/homepage.js.map +1 -1
  509. package/dist/admin/admin/src/services/homepage.mjs.map +1 -1
  510. package/dist/admin/admin/src/services/transferTokens.js.map +1 -1
  511. package/dist/admin/admin/src/services/transferTokens.mjs.map +1 -1
  512. package/dist/admin/admin/src/services/users.js.map +1 -1
  513. package/dist/admin/admin/src/services/users.mjs.map +1 -1
  514. package/dist/admin/admin/src/services/webhooks.js.map +1 -1
  515. package/dist/admin/admin/src/services/webhooks.mjs.map +1 -1
  516. package/dist/admin/admin/src/translations/es.json.js +356 -120
  517. package/dist/admin/admin/src/translations/es.json.js.map +1 -1
  518. package/dist/admin/admin/src/translations/es.json.mjs +355 -121
  519. package/dist/admin/admin/src/translations/es.json.mjs.map +1 -1
  520. package/dist/admin/admin/src/translations/fr.json.js +126 -1
  521. package/dist/admin/admin/src/translations/fr.json.js.map +1 -1
  522. package/dist/admin/admin/src/translations/fr.json.mjs +126 -1
  523. package/dist/admin/admin/src/translations/fr.json.mjs.map +1 -1
  524. package/dist/admin/admin/src/translations/languageNativeNames.js.map +1 -1
  525. package/dist/admin/admin/src/translations/languageNativeNames.mjs.map +1 -1
  526. package/dist/admin/admin/src/utils/arrays.js.map +1 -1
  527. package/dist/admin/admin/src/utils/arrays.mjs.map +1 -1
  528. package/dist/admin/admin/src/utils/baseQuery.js.map +1 -1
  529. package/dist/admin/admin/src/utils/baseQuery.mjs.map +1 -1
  530. package/dist/admin/admin/src/utils/cookies.js.map +1 -1
  531. package/dist/admin/admin/src/utils/cookies.mjs.map +1 -1
  532. package/dist/admin/admin/src/utils/deviceId.js.map +1 -1
  533. package/dist/admin/admin/src/utils/deviceId.mjs.map +1 -1
  534. package/dist/admin/admin/src/utils/getFetchClient.js +1 -3
  535. package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
  536. package/dist/admin/admin/src/utils/getFetchClient.mjs +1 -3
  537. package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
  538. package/dist/admin/admin/src/utils/getPrefixedId.js.map +1 -1
  539. package/dist/admin/admin/src/utils/getPrefixedId.mjs.map +1 -1
  540. package/dist/admin/admin/src/utils/locales.js.map +1 -1
  541. package/dist/admin/admin/src/utils/locales.mjs.map +1 -1
  542. package/dist/admin/admin/src/utils/normalizeAPIError.js.map +1 -1
  543. package/dist/admin/admin/src/utils/normalizeAPIError.mjs.map +1 -1
  544. package/dist/admin/admin/src/utils/objects.js.map +1 -1
  545. package/dist/admin/admin/src/utils/objects.mjs.map +1 -1
  546. package/dist/admin/admin/src/utils/once.js.map +1 -1
  547. package/dist/admin/admin/src/utils/once.mjs.map +1 -1
  548. package/dist/admin/admin/src/utils/resizeHandlers.js.map +1 -1
  549. package/dist/admin/admin/src/utils/resizeHandlers.mjs.map +1 -1
  550. package/dist/admin/admin/src/utils/rulesEngine.js.map +1 -1
  551. package/dist/admin/admin/src/utils/rulesEngine.mjs.map +1 -1
  552. package/dist/admin/admin/src/utils/shims.js.map +1 -1
  553. package/dist/admin/admin/src/utils/shims.mjs.map +1 -1
  554. package/dist/admin/admin/src/utils/strings.js.map +1 -1
  555. package/dist/admin/admin/src/utils/strings.mjs.map +1 -1
  556. package/dist/admin/admin/src/utils/translatedErrors.js.map +1 -1
  557. package/dist/admin/admin/src/utils/translatedErrors.mjs.map +1 -1
  558. package/dist/admin/admin/src/utils/urls.js.map +1 -1
  559. package/dist/admin/admin/src/utils/urls.mjs.map +1 -1
  560. package/dist/admin/admin/src/utils/users.js.map +1 -1
  561. package/dist/admin/admin/src/utils/users.mjs.map +1 -1
  562. package/dist/admin/admin/src/utils/widgetLayout.js.map +1 -1
  563. package/dist/admin/admin/src/utils/widgetLayout.mjs.map +1 -1
  564. package/dist/admin/admin/tests/mockData.js.map +1 -1
  565. package/dist/admin/admin/tests/mockData.mjs.map +1 -1
  566. package/dist/admin/admin/tests/server.js.map +1 -1
  567. package/dist/admin/admin/tests/server.mjs.map +1 -1
  568. package/dist/admin/admin/tests/store.js.map +1 -1
  569. package/dist/admin/admin/tests/store.mjs.map +1 -1
  570. package/dist/admin/admin/tests/utils.js.map +1 -1
  571. package/dist/admin/admin/tests/utils.mjs +1 -1
  572. package/dist/admin/admin/tests/utils.mjs.map +1 -1
  573. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js.map +1 -1
  574. package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.mjs.map +1 -1
  575. package/dist/admin/ee/admin/src/components/GlobalNotifications.js.map +1 -1
  576. package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs.map +1 -1
  577. package/dist/admin/ee/admin/src/constants.js.map +1 -1
  578. package/dist/admin/ee/admin/src/constants.mjs.map +1 -1
  579. package/dist/admin/ee/admin/src/hooks/useAIAvailability.js.map +1 -1
  580. package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs.map +1 -1
  581. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js.map +1 -1
  582. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs.map +1 -1
  583. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js.map +1 -1
  584. package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs.map +1 -1
  585. package/dist/admin/ee/admin/src/hooks/useLicenseLimits.js.map +1 -1
  586. package/dist/admin/ee/admin/src/hooks/useLicenseLimits.mjs.map +1 -1
  587. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js.map +1 -1
  588. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.mjs +1 -1
  589. package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.mjs.map +1 -1
  590. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js.map +1 -1
  591. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.mjs +1 -1
  592. package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.mjs.map +1 -1
  593. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js.map +1 -1
  594. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.mjs +1 -1
  595. package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.mjs.map +1 -1
  596. package/dist/admin/ee/admin/src/pages/AuthPage/constants.js.map +1 -1
  597. package/dist/admin/ee/admin/src/pages/AuthPage/constants.mjs.map +1 -1
  598. package/dist/admin/ee/admin/src/pages/AuthResponse.js.map +1 -1
  599. package/dist/admin/ee/admin/src/pages/AuthResponse.mjs.map +1 -1
  600. package/dist/admin/ee/admin/src/pages/HomePage.js.map +1 -1
  601. package/dist/admin/ee/admin/src/pages/HomePage.mjs.map +1 -1
  602. package/dist/admin/ee/admin/src/pages/SettingsPage/constants.js.map +1 -1
  603. package/dist/admin/ee/admin/src/pages/SettingsPage/constants.mjs.map +1 -1
  604. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -1
  605. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs +1 -1
  606. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs.map +1 -1
  607. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js.map +1 -1
  608. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs.map +1 -1
  609. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js.map +1 -1
  610. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs.map +1 -1
  611. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js.map +1 -1
  612. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs.map +1 -1
  613. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js.map +1 -1
  614. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.mjs +1 -1
  615. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.mjs.map +1 -1
  616. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.js.map +1 -1
  617. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.mjs.map +1 -1
  618. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useFormatTimeStamp.js.map +1 -1
  619. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useFormatTimeStamp.mjs.map +1 -1
  620. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.js.map +1 -1
  621. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.mjs.map +1 -1
  622. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.js.map +1 -1
  623. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.mjs.map +1 -1
  624. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  625. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  626. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/ListPage.js.map +1 -1
  627. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/ListPage.mjs.map +1 -1
  628. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js.map +1 -1
  629. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs.map +1 -1
  630. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.js.map +1 -1
  631. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.mjs.map +1 -1
  632. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/ModalForm.js.map +1 -1
  633. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/ModalForm.mjs.map +1 -1
  634. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable.js.map +1 -1
  635. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable.mjs.map +1 -1
  636. package/dist/admin/ee/admin/src/services/ai.js.map +1 -1
  637. package/dist/admin/ee/admin/src/services/ai.mjs.map +1 -1
  638. package/dist/admin/ee/admin/src/services/auditLogs.js.map +1 -1
  639. package/dist/admin/ee/admin/src/services/auditLogs.mjs.map +1 -1
  640. package/dist/admin/index.js +10 -6
  641. package/dist/admin/index.js.map +1 -1
  642. package/dist/admin/index.mjs +1 -0
  643. package/dist/admin/index.mjs.map +1 -1
  644. package/dist/admin/src/components/DefaultDocument.js.map +1 -1
  645. package/dist/admin/src/components/DefaultDocument.mjs.map +1 -1
  646. package/dist/admin/src/components/Form.d.ts +1 -0
  647. package/dist/admin/src/components/NoJavascript.js.map +1 -1
  648. package/dist/admin/src/components/NoJavascript.mjs.map +1 -1
  649. package/dist/admin/src/index.d.ts +1 -0
  650. package/dist/server/ee/server/src/ai/containers/ai.js +0 -4
  651. package/dist/server/ee/server/src/ai/containers/ai.js.map +1 -1
  652. package/dist/server/ee/server/src/ai/containers/ai.mjs +0 -4
  653. package/dist/server/ee/server/src/ai/containers/ai.mjs.map +1 -1
  654. package/dist/server/ee/server/src/ai/controllers/ai.js +0 -4
  655. package/dist/server/ee/server/src/ai/controllers/ai.js.map +1 -1
  656. package/dist/server/ee/server/src/ai/controllers/ai.mjs +0 -4
  657. package/dist/server/ee/server/src/ai/controllers/ai.mjs.map +1 -1
  658. package/dist/server/ee/server/src/ai/routes/ai.js.map +1 -1
  659. package/dist/server/ee/server/src/ai/routes/ai.mjs.map +1 -1
  660. package/dist/server/ee/server/src/audit-logs/content-types/audit-log.js.map +1 -1
  661. package/dist/server/ee/server/src/audit-logs/content-types/audit-log.mjs.map +1 -1
  662. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.js.map +1 -1
  663. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.mjs.map +1 -1
  664. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.js.map +1 -1
  665. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.mjs.map +1 -1
  666. package/dist/server/ee/server/src/audit-logs/services/audit-logs.js.map +1 -1
  667. package/dist/server/ee/server/src/audit-logs/services/audit-logs.mjs.map +1 -1
  668. package/dist/server/ee/server/src/audit-logs/services/lifecycles.js.map +1 -1
  669. package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs.map +1 -1
  670. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.js.map +1 -1
  671. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.mjs.map +1 -1
  672. package/dist/server/ee/server/src/bootstrap.js.map +1 -1
  673. package/dist/server/ee/server/src/bootstrap.mjs.map +1 -1
  674. package/dist/server/ee/server/src/config/admin-actions.js.map +1 -1
  675. package/dist/server/ee/server/src/config/admin-actions.mjs.map +1 -1
  676. package/dist/server/ee/server/src/content-types/index.js.map +1 -1
  677. package/dist/server/ee/server/src/content-types/index.mjs.map +1 -1
  678. package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
  679. package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
  680. package/dist/server/ee/server/src/controllers/authentication-utils/constants.js.map +1 -1
  681. package/dist/server/ee/server/src/controllers/authentication-utils/constants.mjs.map +1 -1
  682. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js.map +1 -1
  683. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.mjs.map +1 -1
  684. package/dist/server/ee/server/src/controllers/authentication-utils/utils.js.map +1 -1
  685. package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs +1 -1
  686. package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs.map +1 -1
  687. package/dist/server/ee/server/src/controllers/authentication.js +5 -5
  688. package/dist/server/ee/server/src/controllers/authentication.js.map +1 -1
  689. package/dist/server/ee/server/src/controllers/authentication.mjs.map +1 -1
  690. package/dist/server/ee/server/src/controllers/index.js.map +1 -1
  691. package/dist/server/ee/server/src/controllers/index.mjs.map +1 -1
  692. package/dist/server/ee/server/src/controllers/role.js.map +1 -1
  693. package/dist/server/ee/server/src/controllers/role.mjs +1 -1
  694. package/dist/server/ee/server/src/controllers/role.mjs.map +1 -1
  695. package/dist/server/ee/server/src/controllers/user.js +4 -4
  696. package/dist/server/ee/server/src/controllers/user.js.map +1 -1
  697. package/dist/server/ee/server/src/controllers/user.mjs.map +1 -1
  698. package/dist/server/ee/server/src/index.js +16 -16
  699. package/dist/server/ee/server/src/index.js.map +1 -1
  700. package/dist/server/ee/server/src/index.mjs.map +1 -1
  701. package/dist/server/ee/server/src/register.js.map +1 -1
  702. package/dist/server/ee/server/src/register.mjs.map +1 -1
  703. package/dist/server/ee/server/src/routes/index.js.map +1 -1
  704. package/dist/server/ee/server/src/routes/index.mjs.map +1 -1
  705. package/dist/server/ee/server/src/routes/license-limit.js.map +1 -1
  706. package/dist/server/ee/server/src/routes/license-limit.mjs.map +1 -1
  707. package/dist/server/ee/server/src/routes/sso.js.map +1 -1
  708. package/dist/server/ee/server/src/routes/sso.mjs.map +1 -1
  709. package/dist/server/ee/server/src/routes/utils.js.map +1 -1
  710. package/dist/server/ee/server/src/routes/utils.mjs.map +1 -1
  711. package/dist/server/ee/server/src/services/auth.js.map +1 -1
  712. package/dist/server/ee/server/src/services/auth.mjs.map +1 -1
  713. package/dist/server/ee/server/src/services/index.js.map +1 -1
  714. package/dist/server/ee/server/src/services/index.mjs.map +1 -1
  715. package/dist/server/ee/server/src/services/metrics.js.map +1 -1
  716. package/dist/server/ee/server/src/services/metrics.mjs.map +1 -1
  717. package/dist/server/ee/server/src/services/passport/provider-registry.js.map +1 -1
  718. package/dist/server/ee/server/src/services/passport/provider-registry.mjs.map +1 -1
  719. package/dist/server/ee/server/src/services/passport/sso.js.map +1 -1
  720. package/dist/server/ee/server/src/services/passport/sso.mjs.map +1 -1
  721. package/dist/server/ee/server/src/services/passport.js.map +1 -1
  722. package/dist/server/ee/server/src/services/passport.mjs.map +1 -1
  723. package/dist/server/ee/server/src/services/persist-tables.js.map +1 -1
  724. package/dist/server/ee/server/src/services/persist-tables.mjs +4 -4
  725. package/dist/server/ee/server/src/services/persist-tables.mjs.map +1 -1
  726. package/dist/server/ee/server/src/services/role.js.map +1 -1
  727. package/dist/server/ee/server/src/services/role.mjs.map +1 -1
  728. package/dist/server/ee/server/src/services/seat-enforcement.js.map +1 -1
  729. package/dist/server/ee/server/src/services/seat-enforcement.mjs +1 -1
  730. package/dist/server/ee/server/src/services/seat-enforcement.mjs.map +1 -1
  731. package/dist/server/ee/server/src/services/user.js.map +1 -1
  732. package/dist/server/ee/server/src/services/user.mjs +1 -1
  733. package/dist/server/ee/server/src/services/user.mjs.map +1 -1
  734. package/dist/server/ee/server/src/utils/index.js.map +1 -1
  735. package/dist/server/ee/server/src/utils/index.mjs.map +1 -1
  736. package/dist/server/ee/server/src/utils/sso-lock.js.map +1 -1
  737. package/dist/server/ee/server/src/utils/sso-lock.mjs.map +1 -1
  738. package/dist/server/ee/server/src/validation/authentication.js.map +1 -1
  739. package/dist/server/ee/server/src/validation/authentication.mjs.map +1 -1
  740. package/dist/server/ee/server/src/validation/role.js.map +1 -1
  741. package/dist/server/ee/server/src/validation/role.mjs.map +1 -1
  742. package/dist/server/ee/server/src/validation/user.js.map +1 -1
  743. package/dist/server/ee/server/src/validation/user.mjs.map +1 -1
  744. package/dist/server/index.js +18 -18
  745. package/dist/server/index.js.map +1 -1
  746. package/dist/server/index.mjs +2 -2
  747. package/dist/server/index.mjs.map +1 -1
  748. package/dist/server/server/src/bootstrap.js.map +1 -1
  749. package/dist/server/server/src/bootstrap.mjs +1 -1
  750. package/dist/server/server/src/bootstrap.mjs.map +1 -1
  751. package/dist/server/server/src/config/admin-actions.js.map +1 -1
  752. package/dist/server/server/src/config/admin-actions.mjs.map +1 -1
  753. package/dist/server/server/src/config/admin-conditions.js.map +1 -1
  754. package/dist/server/server/src/config/admin-conditions.mjs.map +1 -1
  755. package/dist/server/server/src/config/email-templates/forgot-password.js.map +1 -1
  756. package/dist/server/server/src/config/email-templates/forgot-password.mjs.map +1 -1
  757. package/dist/server/server/src/config/index.js.map +1 -1
  758. package/dist/server/server/src/config/index.mjs.map +1 -1
  759. package/dist/server/server/src/content-types/Permission.js.map +1 -1
  760. package/dist/server/server/src/content-types/Permission.mjs.map +1 -1
  761. package/dist/server/server/src/content-types/Role.js.map +1 -1
  762. package/dist/server/server/src/content-types/Role.mjs.map +1 -1
  763. package/dist/server/server/src/content-types/User.js.map +1 -1
  764. package/dist/server/server/src/content-types/User.mjs.map +1 -1
  765. package/dist/server/server/src/content-types/api-token-permission.js.map +1 -1
  766. package/dist/server/server/src/content-types/api-token-permission.mjs.map +1 -1
  767. package/dist/server/server/src/content-types/api-token.js.map +1 -1
  768. package/dist/server/server/src/content-types/api-token.mjs.map +1 -1
  769. package/dist/server/server/src/content-types/index.js.map +1 -1
  770. package/dist/server/server/src/content-types/index.mjs.map +1 -1
  771. package/dist/server/server/src/content-types/session.js.map +1 -1
  772. package/dist/server/server/src/content-types/session.mjs.map +1 -1
  773. package/dist/server/server/src/content-types/transfer-token-permission.js.map +1 -1
  774. package/dist/server/server/src/content-types/transfer-token-permission.mjs.map +1 -1
  775. package/dist/server/server/src/content-types/transfer-token.js.map +1 -1
  776. package/dist/server/server/src/content-types/transfer-token.mjs.map +1 -1
  777. package/dist/server/server/src/controllers/admin.js.map +1 -1
  778. package/dist/server/server/src/controllers/admin.mjs.map +1 -1
  779. package/dist/server/server/src/controllers/api-token.js.map +1 -1
  780. package/dist/server/server/src/controllers/api-token.mjs +3 -3
  781. package/dist/server/server/src/controllers/api-token.mjs.map +1 -1
  782. package/dist/server/server/src/controllers/authenticated-user.js.map +1 -1
  783. package/dist/server/server/src/controllers/authenticated-user.mjs.map +1 -1
  784. package/dist/server/server/src/controllers/authentication.js.map +1 -1
  785. package/dist/server/server/src/controllers/authentication.mjs +2 -2
  786. package/dist/server/server/src/controllers/authentication.mjs.map +1 -1
  787. package/dist/server/server/src/controllers/content-api.js.map +1 -1
  788. package/dist/server/server/src/controllers/content-api.mjs.map +1 -1
  789. package/dist/server/server/src/controllers/formatters/conditions.js.map +1 -1
  790. package/dist/server/server/src/controllers/formatters/conditions.mjs.map +1 -1
  791. package/dist/server/server/src/controllers/homepage.js.map +1 -1
  792. package/dist/server/server/src/controllers/homepage.mjs.map +1 -1
  793. package/dist/server/server/src/controllers/index.js.map +1 -1
  794. package/dist/server/server/src/controllers/index.mjs.map +1 -1
  795. package/dist/server/server/src/controllers/permission.js.map +1 -1
  796. package/dist/server/server/src/controllers/permission.mjs.map +1 -1
  797. package/dist/server/server/src/controllers/role.js.map +1 -1
  798. package/dist/server/server/src/controllers/role.mjs +1 -1
  799. package/dist/server/server/src/controllers/role.mjs.map +1 -1
  800. package/dist/server/server/src/controllers/transfer/index.js.map +1 -1
  801. package/dist/server/server/src/controllers/transfer/index.mjs.map +1 -1
  802. package/dist/server/server/src/controllers/transfer/runner.js.map +1 -1
  803. package/dist/server/server/src/controllers/transfer/runner.mjs.map +1 -1
  804. package/dist/server/server/src/controllers/transfer/token.js.map +1 -1
  805. package/dist/server/server/src/controllers/transfer/token.mjs +2 -2
  806. package/dist/server/server/src/controllers/transfer/token.mjs.map +1 -1
  807. package/dist/server/server/src/controllers/user.js.map +1 -1
  808. package/dist/server/server/src/controllers/user.mjs +1 -1
  809. package/dist/server/server/src/controllers/user.mjs.map +1 -1
  810. package/dist/server/server/src/controllers/validation/schema.js.map +1 -1
  811. package/dist/server/server/src/controllers/validation/schema.mjs.map +1 -1
  812. package/dist/server/server/src/controllers/webhooks.js.map +1 -1
  813. package/dist/server/server/src/controllers/webhooks.mjs.map +1 -1
  814. package/dist/server/server/src/destroy.js.map +1 -1
  815. package/dist/server/server/src/destroy.mjs.map +1 -1
  816. package/dist/server/server/src/domain/action/index.js.map +1 -1
  817. package/dist/server/server/src/domain/action/index.mjs.map +1 -1
  818. package/dist/server/server/src/domain/action/provider.js.map +1 -1
  819. package/dist/server/server/src/domain/action/provider.mjs +1 -1
  820. package/dist/server/server/src/domain/action/provider.mjs.map +1 -1
  821. package/dist/server/server/src/domain/condition/index.js.map +1 -1
  822. package/dist/server/server/src/domain/condition/index.mjs.map +1 -1
  823. package/dist/server/server/src/domain/condition/provider.js.map +1 -1
  824. package/dist/server/server/src/domain/condition/provider.mjs.map +1 -1
  825. package/dist/server/server/src/domain/permission/index.js.map +1 -1
  826. package/dist/server/server/src/domain/permission/index.mjs +1 -1
  827. package/dist/server/server/src/domain/permission/index.mjs.map +1 -1
  828. package/dist/server/server/src/domain/user.js.map +1 -1
  829. package/dist/server/server/src/domain/user.mjs.map +1 -1
  830. package/dist/server/server/src/middlewares/data-transfer.js.map +1 -1
  831. package/dist/server/server/src/middlewares/data-transfer.mjs.map +1 -1
  832. package/dist/server/server/src/middlewares/index.js.map +1 -1
  833. package/dist/server/server/src/middlewares/index.mjs.map +1 -1
  834. package/dist/server/server/src/middlewares/rateLimit.js.map +1 -1
  835. package/dist/server/server/src/middlewares/rateLimit.mjs.map +1 -1
  836. package/dist/server/server/src/policies/hasPermissions.js.map +1 -1
  837. package/dist/server/server/src/policies/hasPermissions.mjs.map +1 -1
  838. package/dist/server/server/src/policies/index.js.map +1 -1
  839. package/dist/server/server/src/policies/index.mjs.map +1 -1
  840. package/dist/server/server/src/policies/isAuthenticatedAdmin.js.map +1 -1
  841. package/dist/server/server/src/policies/isAuthenticatedAdmin.mjs.map +1 -1
  842. package/dist/server/server/src/policies/isTelemetryEnabled.js.map +1 -1
  843. package/dist/server/server/src/policies/isTelemetryEnabled.mjs.map +1 -1
  844. package/dist/server/server/src/register.js.map +1 -1
  845. package/dist/server/server/src/register.mjs.map +1 -1
  846. package/dist/server/server/src/routes/admin.js.map +1 -1
  847. package/dist/server/server/src/routes/admin.mjs.map +1 -1
  848. package/dist/server/server/src/routes/api-tokens.js.map +1 -1
  849. package/dist/server/server/src/routes/api-tokens.mjs.map +1 -1
  850. package/dist/server/server/src/routes/authentication.js.map +1 -1
  851. package/dist/server/server/src/routes/authentication.mjs.map +1 -1
  852. package/dist/server/server/src/routes/content-api.js.map +1 -1
  853. package/dist/server/server/src/routes/content-api.mjs.map +1 -1
  854. package/dist/server/server/src/routes/homepage.js.map +1 -1
  855. package/dist/server/server/src/routes/homepage.mjs.map +1 -1
  856. package/dist/server/server/src/routes/index.js.map +1 -1
  857. package/dist/server/server/src/routes/index.mjs.map +1 -1
  858. package/dist/server/server/src/routes/permissions.js.map +1 -1
  859. package/dist/server/server/src/routes/permissions.mjs.map +1 -1
  860. package/dist/server/server/src/routes/roles.js.map +1 -1
  861. package/dist/server/server/src/routes/roles.mjs.map +1 -1
  862. package/dist/server/server/src/routes/serve-admin-panel.js.map +1 -1
  863. package/dist/server/server/src/routes/serve-admin-panel.mjs +1 -1
  864. package/dist/server/server/src/routes/serve-admin-panel.mjs.map +1 -1
  865. package/dist/server/server/src/routes/transfer.js.map +1 -1
  866. package/dist/server/server/src/routes/transfer.mjs.map +1 -1
  867. package/dist/server/server/src/routes/users.js.map +1 -1
  868. package/dist/server/server/src/routes/users.mjs.map +1 -1
  869. package/dist/server/server/src/routes/webhooks.js.map +1 -1
  870. package/dist/server/server/src/routes/webhooks.mjs.map +1 -1
  871. package/dist/server/server/src/services/action.js.map +1 -1
  872. package/dist/server/server/src/services/action.mjs.map +1 -1
  873. package/dist/server/server/src/services/api-token.js.map +1 -1
  874. package/dist/server/server/src/services/api-token.mjs.map +1 -1
  875. package/dist/server/server/src/services/auth.js.map +1 -1
  876. package/dist/server/server/src/services/auth.mjs.map +1 -1
  877. package/dist/server/server/src/services/condition.js.map +1 -1
  878. package/dist/server/server/src/services/condition.mjs.map +1 -1
  879. package/dist/server/server/src/services/constants.js.map +1 -1
  880. package/dist/server/server/src/services/constants.mjs.map +1 -1
  881. package/dist/server/server/src/services/content-type.js +9 -9
  882. package/dist/server/server/src/services/content-type.js.map +1 -1
  883. package/dist/server/server/src/services/content-type.mjs +1 -1
  884. package/dist/server/server/src/services/content-type.mjs.map +1 -1
  885. package/dist/server/server/src/services/encryption.js.map +1 -1
  886. package/dist/server/server/src/services/encryption.mjs.map +1 -1
  887. package/dist/server/server/src/services/homepage.js.map +1 -1
  888. package/dist/server/server/src/services/homepage.mjs +1 -1
  889. package/dist/server/server/src/services/homepage.mjs.map +1 -1
  890. package/dist/server/server/src/services/index.js.map +1 -1
  891. package/dist/server/server/src/services/index.mjs.map +1 -1
  892. package/dist/server/server/src/services/metrics.js.map +1 -1
  893. package/dist/server/server/src/services/metrics.mjs.map +1 -1
  894. package/dist/server/server/src/services/passport/local-strategy.js.map +1 -1
  895. package/dist/server/server/src/services/passport/local-strategy.mjs.map +1 -1
  896. package/dist/server/server/src/services/passport.js.map +1 -1
  897. package/dist/server/server/src/services/passport.mjs.map +1 -1
  898. package/dist/server/server/src/services/permission/engine.js.map +1 -1
  899. package/dist/server/server/src/services/permission/engine.mjs.map +1 -1
  900. package/dist/server/server/src/services/permission/permissions-manager/index.js.map +1 -1
  901. package/dist/server/server/src/services/permission/permissions-manager/index.mjs.map +1 -1
  902. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js.map +1 -1
  903. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -1
  904. package/dist/server/server/src/services/permission/permissions-manager/query-builders.js.map +1 -1
  905. package/dist/server/server/src/services/permission/permissions-manager/query-builders.mjs.map +1 -1
  906. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js.map +1 -1
  907. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs +2 -2
  908. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
  909. package/dist/server/server/src/services/permission/permissions-manager/validate.js.map +1 -1
  910. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs +2 -2
  911. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs.map +1 -1
  912. package/dist/server/server/src/services/permission/queries.js +9 -9
  913. package/dist/server/server/src/services/permission/queries.js.map +1 -1
  914. package/dist/server/server/src/services/permission/queries.mjs +1 -1
  915. package/dist/server/server/src/services/permission/queries.mjs.map +1 -1
  916. package/dist/server/server/src/services/permission/sections-builder/builder.js.map +1 -1
  917. package/dist/server/server/src/services/permission/sections-builder/builder.mjs.map +1 -1
  918. package/dist/server/server/src/services/permission/sections-builder/handlers.js +10 -10
  919. package/dist/server/server/src/services/permission/sections-builder/handlers.js.map +1 -1
  920. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs +1 -1
  921. package/dist/server/server/src/services/permission/sections-builder/handlers.mjs.map +1 -1
  922. package/dist/server/server/src/services/permission/sections-builder/index.js.map +1 -1
  923. package/dist/server/server/src/services/permission/sections-builder/index.mjs +1 -1
  924. package/dist/server/server/src/services/permission/sections-builder/index.mjs.map +1 -1
  925. package/dist/server/server/src/services/permission/sections-builder/section.js.map +1 -1
  926. package/dist/server/server/src/services/permission/sections-builder/section.mjs.map +1 -1
  927. package/dist/server/server/src/services/permission/sections-builder/utils.js.map +1 -1
  928. package/dist/server/server/src/services/permission/sections-builder/utils.mjs.map +1 -1
  929. package/dist/server/server/src/services/permission.js.map +1 -1
  930. package/dist/server/server/src/services/permission.mjs.map +1 -1
  931. package/dist/server/server/src/services/project-settings.js.map +1 -1
  932. package/dist/server/server/src/services/project-settings.mjs.map +1 -1
  933. package/dist/server/server/src/services/role.js.map +1 -1
  934. package/dist/server/server/src/services/role.mjs +2 -2
  935. package/dist/server/server/src/services/role.mjs.map +1 -1
  936. package/dist/server/server/src/services/token.js.map +1 -1
  937. package/dist/server/server/src/services/token.mjs.map +1 -1
  938. package/dist/server/server/src/services/transfer/permission.js.map +1 -1
  939. package/dist/server/server/src/services/transfer/permission.mjs.map +1 -1
  940. package/dist/server/server/src/services/transfer/token.js.map +1 -1
  941. package/dist/server/server/src/services/transfer/token.mjs +1 -1
  942. package/dist/server/server/src/services/transfer/token.mjs.map +1 -1
  943. package/dist/server/server/src/services/transfer/utils.js.map +1 -1
  944. package/dist/server/server/src/services/transfer/utils.mjs.map +1 -1
  945. package/dist/server/server/src/services/user.js.map +1 -1
  946. package/dist/server/server/src/services/user.mjs +2 -2
  947. package/dist/server/server/src/services/user.mjs.map +1 -1
  948. package/dist/server/server/src/strategies/admin.js.map +1 -1
  949. package/dist/server/server/src/strategies/admin.mjs.map +1 -1
  950. package/dist/server/server/src/strategies/api-token.js.map +1 -1
  951. package/dist/server/server/src/strategies/api-token.mjs.map +1 -1
  952. package/dist/server/server/src/strategies/data-transfer.js.map +1 -1
  953. package/dist/server/server/src/strategies/data-transfer.mjs.map +1 -1
  954. package/dist/server/server/src/utils/index.js.map +1 -1
  955. package/dist/server/server/src/utils/index.mjs.map +1 -1
  956. package/dist/server/server/src/validation/action-provider.js.map +1 -1
  957. package/dist/server/server/src/validation/action-provider.mjs.map +1 -1
  958. package/dist/server/server/src/validation/api-tokens.js.map +1 -1
  959. package/dist/server/server/src/validation/api-tokens.mjs.map +1 -1
  960. package/dist/server/server/src/validation/authentication/forgot-password.js.map +1 -1
  961. package/dist/server/server/src/validation/authentication/forgot-password.mjs.map +1 -1
  962. package/dist/server/server/src/validation/authentication/login.js.map +1 -1
  963. package/dist/server/server/src/validation/authentication/login.mjs.map +1 -1
  964. package/dist/server/server/src/validation/authentication/register.js.map +1 -1
  965. package/dist/server/server/src/validation/authentication/register.mjs.map +1 -1
  966. package/dist/server/server/src/validation/authentication/reset-password.js.map +1 -1
  967. package/dist/server/server/src/validation/authentication/reset-password.mjs.map +1 -1
  968. package/dist/server/server/src/validation/common-functions/check-fields-are-correctly-nested.js.map +1 -1
  969. package/dist/server/server/src/validation/common-functions/check-fields-are-correctly-nested.mjs.map +1 -1
  970. package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.js.map +1 -1
  971. package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.mjs.map +1 -1
  972. package/dist/server/server/src/validation/common-validators.js +2 -4
  973. package/dist/server/server/src/validation/common-validators.js.map +1 -1
  974. package/dist/server/server/src/validation/common-validators.mjs +4 -5
  975. package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
  976. package/dist/server/server/src/validation/permission.js.map +1 -1
  977. package/dist/server/server/src/validation/permission.mjs.map +1 -1
  978. package/dist/server/server/src/validation/policies/hasPermissions.js.map +1 -1
  979. package/dist/server/server/src/validation/policies/hasPermissions.mjs.map +1 -1
  980. package/dist/server/server/src/validation/project-settings.js.map +1 -1
  981. package/dist/server/server/src/validation/project-settings.mjs.map +1 -1
  982. package/dist/server/server/src/validation/role.js.map +1 -1
  983. package/dist/server/server/src/validation/role.mjs.map +1 -1
  984. package/dist/server/server/src/validation/transfer/token.js.map +1 -1
  985. package/dist/server/server/src/validation/transfer/token.mjs.map +1 -1
  986. package/dist/server/server/src/validation/user.js +1 -4
  987. package/dist/server/server/src/validation/user.js.map +1 -1
  988. package/dist/server/server/src/validation/user.mjs +1 -4
  989. package/dist/server/server/src/validation/user.mjs.map +1 -1
  990. package/dist/server/shared/utils/session-auth.js.map +1 -1
  991. package/dist/server/shared/utils/session-auth.mjs.map +1 -1
  992. package/package.json +17 -12
@@ -1 +1 @@
1
- {"version":3,"file":"data-transfer.js","sources":["../../../../../server/src/strategies/data-transfer.ts"],"sourcesContent":["import type { Context } from 'koa';\nimport { differenceInHours, parseISO } from 'date-fns';\nimport { errors } from '@strapi/utils';\nimport { castArray, isNil } from 'lodash/fp';\n\nimport { getService } from '../utils';\n\nconst { UnauthorizedError, ForbiddenError } = errors;\n\nconst extractToken = (ctx: Context) => {\n if (ctx.request && ctx.request.header && ctx.request.header.authorization) {\n const parts = ctx.request.header.authorization.split(/\\s+/);\n\n if (parts[0].toLowerCase() !== 'bearer' || parts.length !== 2) {\n return null;\n }\n\n return parts[1];\n }\n\n return null;\n};\n\n/**\n * Authenticate the validity of the token\n *\n * @type {import('.').AuthenticateFunction}\n */\nexport const authenticate = async (ctx: Context) => {\n const { token: tokenService } = getService('transfer');\n const token = extractToken(ctx);\n\n if (!token) {\n return { authenticated: false };\n }\n\n const transferToken = await tokenService.getBy({ accessKey: tokenService.hash(token) });\n\n // Check if the token exists\n if (!transferToken) {\n return { authenticated: false };\n }\n\n // Check if the token has expired\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n\n if (expirationDate < currentDate) {\n return { authenticated: false, error: new UnauthorizedError('Token expired') };\n }\n }\n\n // Update token metadata if the token has not been used in the last hour\n // @ts-expect-error - FIXME: verify lastUsedAt is defined\n const hoursSinceLastUsed = differenceInHours(currentDate, parseISO(transferToken.lastUsedAt));\n if (hoursSinceLastUsed >= 1) {\n await strapi.db.query('admin::api-token').update({\n where: { id: transferToken.id },\n data: { lastUsedAt: currentDate },\n });\n }\n\n // Generate an ability based on the token permissions\n const ability = await getService('transfer').permission.engine.generateAbility(\n transferToken.permissions.map((action: any) => ({ action }))\n );\n\n return { authenticated: true, ability, credentials: transferToken };\n};\n\n/**\n * Verify the token has the required abilities for the requested scope\n *\n * @type {import('.').VerifyFunction}\n */\nexport const verify = async (auth: any, config: any = {}) => {\n const { credentials: transferToken, ability } = auth;\n\n if (!transferToken) {\n throw new UnauthorizedError('Token not found');\n }\n\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n // token has expired\n if (expirationDate < currentDate) {\n throw new UnauthorizedError('Token expired');\n }\n }\n\n if (!ability) {\n throw new ForbiddenError();\n }\n\n const scopes = castArray(config.scope ?? []);\n\n const isAllowed = scopes.every((scope) => ability.can(scope));\n\n if (!isAllowed) {\n throw new ForbiddenError();\n }\n};\n\nexport const name = 'data-transfer';\n\n/** @type {import('.').AuthStrategy} */\nexport default {\n name,\n authenticate,\n verify,\n};\n"],"names":["UnauthorizedError","ForbiddenError","errors","extractToken","ctx","request","header","authorization","parts","split","toLowerCase","length","authenticate","token","tokenService","getService","authenticated","transferToken","getBy","accessKey","hash","currentDate","Date","isNil","expiresAt","expirationDate","error","hoursSinceLastUsed","differenceInHours","parseISO","lastUsedAt","strapi","db","query","update","where","id","data","ability","permission","engine","generateAbility","permissions","map","action","credentials","verify","auth","config","scopes","castArray","scope","isAllowed","every","can","name"],"mappings":"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"}
1
+ {"version":3,"file":"data-transfer.js","sources":["../../../../../server/src/strategies/data-transfer.ts"],"sourcesContent":["import type { Context } from 'koa';\nimport { differenceInHours, parseISO } from 'date-fns';\nimport { errors } from '@strapi/utils';\nimport { castArray, isNil } from 'lodash/fp';\n\nimport { getService } from '../utils';\n\nconst { UnauthorizedError, ForbiddenError } = errors;\n\nconst extractToken = (ctx: Context) => {\n if (ctx.request && ctx.request.header && ctx.request.header.authorization) {\n const parts = ctx.request.header.authorization.split(/\\s+/);\n\n if (parts[0].toLowerCase() !== 'bearer' || parts.length !== 2) {\n return null;\n }\n\n return parts[1];\n }\n\n return null;\n};\n\n/**\n * Authenticate the validity of the token\n *\n * @type {import('.').AuthenticateFunction}\n */\nexport const authenticate = async (ctx: Context) => {\n const { token: tokenService } = getService('transfer');\n const token = extractToken(ctx);\n\n if (!token) {\n return { authenticated: false };\n }\n\n const transferToken = await tokenService.getBy({ accessKey: tokenService.hash(token) });\n\n // Check if the token exists\n if (!transferToken) {\n return { authenticated: false };\n }\n\n // Check if the token has expired\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n\n if (expirationDate < currentDate) {\n return { authenticated: false, error: new UnauthorizedError('Token expired') };\n }\n }\n\n // Update token metadata if the token has not been used in the last hour\n // @ts-expect-error - FIXME: verify lastUsedAt is defined\n const hoursSinceLastUsed = differenceInHours(currentDate, parseISO(transferToken.lastUsedAt));\n if (hoursSinceLastUsed >= 1) {\n await strapi.db.query('admin::api-token').update({\n where: { id: transferToken.id },\n data: { lastUsedAt: currentDate },\n });\n }\n\n // Generate an ability based on the token permissions\n const ability = await getService('transfer').permission.engine.generateAbility(\n transferToken.permissions.map((action: any) => ({ action }))\n );\n\n return { authenticated: true, ability, credentials: transferToken };\n};\n\n/**\n * Verify the token has the required abilities for the requested scope\n *\n * @type {import('.').VerifyFunction}\n */\nexport const verify = async (auth: any, config: any = {}) => {\n const { credentials: transferToken, ability } = auth;\n\n if (!transferToken) {\n throw new UnauthorizedError('Token not found');\n }\n\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n // token has expired\n if (expirationDate < currentDate) {\n throw new UnauthorizedError('Token expired');\n }\n }\n\n if (!ability) {\n throw new ForbiddenError();\n }\n\n const scopes = castArray(config.scope ?? []);\n\n const isAllowed = scopes.every((scope) => ability.can(scope));\n\n if (!isAllowed) {\n throw new ForbiddenError();\n }\n};\n\nexport const name = 'data-transfer';\n\n/** @type {import('.').AuthStrategy} */\nexport default {\n name,\n authenticate,\n verify,\n};\n"],"names":["UnauthorizedError","ForbiddenError","errors","extractToken","ctx","request","header","authorization","parts","split","toLowerCase","length","authenticate","token","tokenService","getService","authenticated","transferToken","getBy","accessKey","hash","currentDate","Date","isNil","expiresAt","expirationDate","error","hoursSinceLastUsed","differenceInHours","parseISO","lastUsedAt","strapi","db","query","update","where","id","data","ability","permission","engine","generateAbility","permissions","map","action","credentials","verify","auth","config","scopes","castArray","scope","isAllowed","every","can","name"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-transfer.mjs","sources":["../../../../../server/src/strategies/data-transfer.ts"],"sourcesContent":["import type { Context } from 'koa';\nimport { differenceInHours, parseISO } from 'date-fns';\nimport { errors } from '@strapi/utils';\nimport { castArray, isNil } from 'lodash/fp';\n\nimport { getService } from '../utils';\n\nconst { UnauthorizedError, ForbiddenError } = errors;\n\nconst extractToken = (ctx: Context) => {\n if (ctx.request && ctx.request.header && ctx.request.header.authorization) {\n const parts = ctx.request.header.authorization.split(/\\s+/);\n\n if (parts[0].toLowerCase() !== 'bearer' || parts.length !== 2) {\n return null;\n }\n\n return parts[1];\n }\n\n return null;\n};\n\n/**\n * Authenticate the validity of the token\n *\n * @type {import('.').AuthenticateFunction}\n */\nexport const authenticate = async (ctx: Context) => {\n const { token: tokenService } = getService('transfer');\n const token = extractToken(ctx);\n\n if (!token) {\n return { authenticated: false };\n }\n\n const transferToken = await tokenService.getBy({ accessKey: tokenService.hash(token) });\n\n // Check if the token exists\n if (!transferToken) {\n return { authenticated: false };\n }\n\n // Check if the token has expired\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n\n if (expirationDate < currentDate) {\n return { authenticated: false, error: new UnauthorizedError('Token expired') };\n }\n }\n\n // Update token metadata if the token has not been used in the last hour\n // @ts-expect-error - FIXME: verify lastUsedAt is defined\n const hoursSinceLastUsed = differenceInHours(currentDate, parseISO(transferToken.lastUsedAt));\n if (hoursSinceLastUsed >= 1) {\n await strapi.db.query('admin::api-token').update({\n where: { id: transferToken.id },\n data: { lastUsedAt: currentDate },\n });\n }\n\n // Generate an ability based on the token permissions\n const ability = await getService('transfer').permission.engine.generateAbility(\n transferToken.permissions.map((action: any) => ({ action }))\n );\n\n return { authenticated: true, ability, credentials: transferToken };\n};\n\n/**\n * Verify the token has the required abilities for the requested scope\n *\n * @type {import('.').VerifyFunction}\n */\nexport const verify = async (auth: any, config: any = {}) => {\n const { credentials: transferToken, ability } = auth;\n\n if (!transferToken) {\n throw new UnauthorizedError('Token not found');\n }\n\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n // token has expired\n if (expirationDate < currentDate) {\n throw new UnauthorizedError('Token expired');\n }\n }\n\n if (!ability) {\n throw new ForbiddenError();\n }\n\n const scopes = castArray(config.scope ?? []);\n\n const isAllowed = scopes.every((scope) => ability.can(scope));\n\n if (!isAllowed) {\n throw new ForbiddenError();\n }\n};\n\nexport const name = 'data-transfer';\n\n/** @type {import('.').AuthStrategy} */\nexport default {\n name,\n authenticate,\n verify,\n};\n"],"names":["UnauthorizedError","ForbiddenError","errors","extractToken","ctx","request","header","authorization","parts","split","toLowerCase","length","authenticate","token","tokenService","getService","authenticated","transferToken","getBy","accessKey","hash","currentDate","Date","isNil","expiresAt","expirationDate","error","hoursSinceLastUsed","differenceInHours","parseISO","lastUsedAt","strapi","db","query","update","where","id","data","ability","permission","engine","generateAbility","permissions","map","action","credentials","verify","auth","config","scopes","castArray","scope","isAllowed","every","can","name"],"mappings":"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"}
1
+ {"version":3,"file":"data-transfer.mjs","sources":["../../../../../server/src/strategies/data-transfer.ts"],"sourcesContent":["import type { Context } from 'koa';\nimport { differenceInHours, parseISO } from 'date-fns';\nimport { errors } from '@strapi/utils';\nimport { castArray, isNil } from 'lodash/fp';\n\nimport { getService } from '../utils';\n\nconst { UnauthorizedError, ForbiddenError } = errors;\n\nconst extractToken = (ctx: Context) => {\n if (ctx.request && ctx.request.header && ctx.request.header.authorization) {\n const parts = ctx.request.header.authorization.split(/\\s+/);\n\n if (parts[0].toLowerCase() !== 'bearer' || parts.length !== 2) {\n return null;\n }\n\n return parts[1];\n }\n\n return null;\n};\n\n/**\n * Authenticate the validity of the token\n *\n * @type {import('.').AuthenticateFunction}\n */\nexport const authenticate = async (ctx: Context) => {\n const { token: tokenService } = getService('transfer');\n const token = extractToken(ctx);\n\n if (!token) {\n return { authenticated: false };\n }\n\n const transferToken = await tokenService.getBy({ accessKey: tokenService.hash(token) });\n\n // Check if the token exists\n if (!transferToken) {\n return { authenticated: false };\n }\n\n // Check if the token has expired\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n\n if (expirationDate < currentDate) {\n return { authenticated: false, error: new UnauthorizedError('Token expired') };\n }\n }\n\n // Update token metadata if the token has not been used in the last hour\n // @ts-expect-error - FIXME: verify lastUsedAt is defined\n const hoursSinceLastUsed = differenceInHours(currentDate, parseISO(transferToken.lastUsedAt));\n if (hoursSinceLastUsed >= 1) {\n await strapi.db.query('admin::api-token').update({\n where: { id: transferToken.id },\n data: { lastUsedAt: currentDate },\n });\n }\n\n // Generate an ability based on the token permissions\n const ability = await getService('transfer').permission.engine.generateAbility(\n transferToken.permissions.map((action: any) => ({ action }))\n );\n\n return { authenticated: true, ability, credentials: transferToken };\n};\n\n/**\n * Verify the token has the required abilities for the requested scope\n *\n * @type {import('.').VerifyFunction}\n */\nexport const verify = async (auth: any, config: any = {}) => {\n const { credentials: transferToken, ability } = auth;\n\n if (!transferToken) {\n throw new UnauthorizedError('Token not found');\n }\n\n const currentDate = new Date();\n\n if (!isNil(transferToken.expiresAt)) {\n const expirationDate = new Date(transferToken.expiresAt);\n // token has expired\n if (expirationDate < currentDate) {\n throw new UnauthorizedError('Token expired');\n }\n }\n\n if (!ability) {\n throw new ForbiddenError();\n }\n\n const scopes = castArray(config.scope ?? []);\n\n const isAllowed = scopes.every((scope) => ability.can(scope));\n\n if (!isAllowed) {\n throw new ForbiddenError();\n }\n};\n\nexport const name = 'data-transfer';\n\n/** @type {import('.').AuthStrategy} */\nexport default {\n name,\n authenticate,\n verify,\n};\n"],"names":["UnauthorizedError","ForbiddenError","errors","extractToken","ctx","request","header","authorization","parts","split","toLowerCase","length","authenticate","token","tokenService","getService","authenticated","transferToken","getBy","accessKey","hash","currentDate","Date","isNil","expiresAt","expirationDate","error","hoursSinceLastUsed","differenceInHours","parseISO","lastUsedAt","strapi","db","query","update","where","id","data","ability","permission","engine","generateAbility","permissions","map","action","credentials","verify","auth","config","scopes","castArray","scope","isAllowed","every","can","name"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../server/src/utils/index.js"],"sourcesContent":["const getService = (name) => {\n return strapi.service(`admin::${name}`);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","service"],"mappings":";;AAAA,MAAMA,aAAa,CAACC,IAAAA,GAAAA;AAClB,IAAA,OAAOC,OAAOC,OAAO,CAAC,CAAC,OAAO,EAAEF,IAAM,CAAA,CAAA,CAAA;AACxC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../server/src/utils/index.js"],"sourcesContent":["const getService = (name) => {\n return strapi.service(`admin::${name}`);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","service"],"mappings":";;AAAA,MAAMA,aAAa,CAACC,IAAAA,GAAAA;AAClB,IAAA,OAAOC,OAAOC,OAAO,CAAC,CAAC,OAAO,EAAEF,IAAAA,CAAAA,CAAM,CAAA;AACxC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../server/src/utils/index.js"],"sourcesContent":["const getService = (name) => {\n return strapi.service(`admin::${name}`);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","service"],"mappings":"AAAA,MAAMA,aAAa,CAACC,IAAAA,GAAAA;AAClB,IAAA,OAAOC,OAAOC,OAAO,CAAC,CAAC,OAAO,EAAEF,IAAM,CAAA,CAAA,CAAA;AACxC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../server/src/utils/index.js"],"sourcesContent":["const getService = (name) => {\n return strapi.service(`admin::${name}`);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","service"],"mappings":"AAAA,MAAMA,aAAa,CAACC,IAAAA,GAAAA;AAClB,IAAA,OAAOC,OAAOC,OAAO,CAAC,CAAC,OAAO,EAAEF,IAAAA,CAAAA,CAAM,CAAA;AACxC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"action-provider.js","sources":["../../../../../server/src/validation/action-provider.ts"],"sourcesContent":["import { yup, validateYupSchemaSync } from '@strapi/utils';\nimport validators from './common-validators';\n\nconst registerProviderActionSchema = yup\n .array()\n .required()\n .of(\n yup\n .object()\n .shape({\n uid: yup\n .string()\n .matches(\n /^[a-z]([a-z|.|-]+)[a-z]$/,\n (v) => `${v.path}: The uid can only contain lowercase letters, dots and hyphens.`\n )\n .required(),\n section: yup.string().oneOf(['contentTypes', 'plugins', 'settings', 'internal']).required(),\n pluginName: yup.mixed().when('section', {\n is: 'plugins',\n then: validators.isAPluginName.required(),\n otherwise: validators.isAPluginName,\n }),\n subjects: yup.mixed().when('section', {\n is: 'contentTypes',\n then: yup.array().of(yup.string()).required(),\n otherwise: yup\n .mixed()\n .oneOf([undefined], 'subjects should only be defined for the \"contentTypes\" section'),\n }),\n displayName: yup.string().required(),\n category: yup.mixed().when('section', {\n is: 'settings',\n then: yup.string().required(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsCategory',\n 'category should only be defined for the \"settings\" section',\n (cat) => cat === undefined\n ),\n }),\n subCategory: yup.mixed().when('section', {\n is: (section: any) => ['settings', 'plugins'].includes(section),\n then: yup.string(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsSubCategory',\n 'subCategory should only be defined for \"plugins\" and \"settings\" sections',\n (subCat) => {\n return subCat === undefined;\n }\n ),\n }),\n options: yup.object({\n applyToProperties: yup.array().of(yup.string()),\n }),\n aliases: yup\n .array(\n yup.object({\n actionId: yup.string(),\n subjects: yup.array(yup.string()).nullable(),\n })\n )\n .nullable(),\n })\n .noUnknown()\n );\n\nexport const validateRegisterProviderAction = validateYupSchemaSync(registerProviderActionSchema);\n\nexport default {\n validateRegisterProviderAction,\n};\n"],"names":["registerProviderActionSchema","yup","array","required","of","object","shape","uid","string","matches","v","path","section","oneOf","pluginName","mixed","when","is","then","validators","isAPluginName","otherwise","subjects","undefined","displayName","category","test","cat","subCategory","includes","subCat","options","applyToProperties","aliases","actionId","nullable","noUnknown","validateRegisterProviderAction","validateYupSchemaSync"],"mappings":"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"}
1
+ {"version":3,"file":"action-provider.js","sources":["../../../../../server/src/validation/action-provider.ts"],"sourcesContent":["import { yup, validateYupSchemaSync } from '@strapi/utils';\nimport validators from './common-validators';\n\nconst registerProviderActionSchema = yup\n .array()\n .required()\n .of(\n yup\n .object()\n .shape({\n uid: yup\n .string()\n .matches(\n /^[a-z]([a-z|.|-]+)[a-z]$/,\n (v) => `${v.path}: The uid can only contain lowercase letters, dots and hyphens.`\n )\n .required(),\n section: yup.string().oneOf(['contentTypes', 'plugins', 'settings', 'internal']).required(),\n pluginName: yup.mixed().when('section', {\n is: 'plugins',\n then: validators.isAPluginName.required(),\n otherwise: validators.isAPluginName,\n }),\n subjects: yup.mixed().when('section', {\n is: 'contentTypes',\n then: yup.array().of(yup.string()).required(),\n otherwise: yup\n .mixed()\n .oneOf([undefined], 'subjects should only be defined for the \"contentTypes\" section'),\n }),\n displayName: yup.string().required(),\n category: yup.mixed().when('section', {\n is: 'settings',\n then: yup.string().required(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsCategory',\n 'category should only be defined for the \"settings\" section',\n (cat) => cat === undefined\n ),\n }),\n subCategory: yup.mixed().when('section', {\n is: (section: any) => ['settings', 'plugins'].includes(section),\n then: yup.string(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsSubCategory',\n 'subCategory should only be defined for \"plugins\" and \"settings\" sections',\n (subCat) => {\n return subCat === undefined;\n }\n ),\n }),\n options: yup.object({\n applyToProperties: yup.array().of(yup.string()),\n }),\n aliases: yup\n .array(\n yup.object({\n actionId: yup.string(),\n subjects: yup.array(yup.string()).nullable(),\n })\n )\n .nullable(),\n })\n .noUnknown()\n );\n\nexport const validateRegisterProviderAction = validateYupSchemaSync(registerProviderActionSchema);\n\nexport default {\n validateRegisterProviderAction,\n};\n"],"names":["registerProviderActionSchema","yup","array","required","of","object","shape","uid","string","matches","v","path","section","oneOf","pluginName","mixed","when","is","then","validators","isAPluginName","otherwise","subjects","undefined","displayName","category","test","cat","subCategory","includes","subCat","options","applyToProperties","aliases","actionId","nullable","noUnknown","validateRegisterProviderAction","validateYupSchemaSync"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"action-provider.mjs","sources":["../../../../../server/src/validation/action-provider.ts"],"sourcesContent":["import { yup, validateYupSchemaSync } from '@strapi/utils';\nimport validators from './common-validators';\n\nconst registerProviderActionSchema = yup\n .array()\n .required()\n .of(\n yup\n .object()\n .shape({\n uid: yup\n .string()\n .matches(\n /^[a-z]([a-z|.|-]+)[a-z]$/,\n (v) => `${v.path}: The uid can only contain lowercase letters, dots and hyphens.`\n )\n .required(),\n section: yup.string().oneOf(['contentTypes', 'plugins', 'settings', 'internal']).required(),\n pluginName: yup.mixed().when('section', {\n is: 'plugins',\n then: validators.isAPluginName.required(),\n otherwise: validators.isAPluginName,\n }),\n subjects: yup.mixed().when('section', {\n is: 'contentTypes',\n then: yup.array().of(yup.string()).required(),\n otherwise: yup\n .mixed()\n .oneOf([undefined], 'subjects should only be defined for the \"contentTypes\" section'),\n }),\n displayName: yup.string().required(),\n category: yup.mixed().when('section', {\n is: 'settings',\n then: yup.string().required(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsCategory',\n 'category should only be defined for the \"settings\" section',\n (cat) => cat === undefined\n ),\n }),\n subCategory: yup.mixed().when('section', {\n is: (section: any) => ['settings', 'plugins'].includes(section),\n then: yup.string(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsSubCategory',\n 'subCategory should only be defined for \"plugins\" and \"settings\" sections',\n (subCat) => {\n return subCat === undefined;\n }\n ),\n }),\n options: yup.object({\n applyToProperties: yup.array().of(yup.string()),\n }),\n aliases: yup\n .array(\n yup.object({\n actionId: yup.string(),\n subjects: yup.array(yup.string()).nullable(),\n })\n )\n .nullable(),\n })\n .noUnknown()\n );\n\nexport const validateRegisterProviderAction = validateYupSchemaSync(registerProviderActionSchema);\n\nexport default {\n validateRegisterProviderAction,\n};\n"],"names":["registerProviderActionSchema","yup","array","required","of","object","shape","uid","string","matches","v","path","section","oneOf","pluginName","mixed","when","is","then","validators","isAPluginName","otherwise","subjects","undefined","displayName","category","test","cat","subCategory","includes","subCat","options","applyToProperties","aliases","actionId","nullable","noUnknown","validateRegisterProviderAction","validateYupSchemaSync"],"mappings":"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"}
1
+ {"version":3,"file":"action-provider.mjs","sources":["../../../../../server/src/validation/action-provider.ts"],"sourcesContent":["import { yup, validateYupSchemaSync } from '@strapi/utils';\nimport validators from './common-validators';\n\nconst registerProviderActionSchema = yup\n .array()\n .required()\n .of(\n yup\n .object()\n .shape({\n uid: yup\n .string()\n .matches(\n /^[a-z]([a-z|.|-]+)[a-z]$/,\n (v) => `${v.path}: The uid can only contain lowercase letters, dots and hyphens.`\n )\n .required(),\n section: yup.string().oneOf(['contentTypes', 'plugins', 'settings', 'internal']).required(),\n pluginName: yup.mixed().when('section', {\n is: 'plugins',\n then: validators.isAPluginName.required(),\n otherwise: validators.isAPluginName,\n }),\n subjects: yup.mixed().when('section', {\n is: 'contentTypes',\n then: yup.array().of(yup.string()).required(),\n otherwise: yup\n .mixed()\n .oneOf([undefined], 'subjects should only be defined for the \"contentTypes\" section'),\n }),\n displayName: yup.string().required(),\n category: yup.mixed().when('section', {\n is: 'settings',\n then: yup.string().required(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsCategory',\n 'category should only be defined for the \"settings\" section',\n (cat) => cat === undefined\n ),\n }),\n subCategory: yup.mixed().when('section', {\n is: (section: any) => ['settings', 'plugins'].includes(section),\n then: yup.string(),\n otherwise: yup\n .mixed()\n .test(\n 'settingsSubCategory',\n 'subCategory should only be defined for \"plugins\" and \"settings\" sections',\n (subCat) => {\n return subCat === undefined;\n }\n ),\n }),\n options: yup.object({\n applyToProperties: yup.array().of(yup.string()),\n }),\n aliases: yup\n .array(\n yup.object({\n actionId: yup.string(),\n subjects: yup.array(yup.string()).nullable(),\n })\n )\n .nullable(),\n })\n .noUnknown()\n );\n\nexport const validateRegisterProviderAction = validateYupSchemaSync(registerProviderActionSchema);\n\nexport default {\n validateRegisterProviderAction,\n};\n"],"names":["registerProviderActionSchema","yup","array","required","of","object","shape","uid","string","matches","v","path","section","oneOf","pluginName","mixed","when","is","then","validators","isAPluginName","otherwise","subjects","undefined","displayName","category","test","cat","subCategory","includes","subCat","options","applyToProperties","aliases","actionId","nullable","noUnknown","validateRegisterProviderAction","validateYupSchemaSync"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"api-tokens.js","sources":["../../../../../server/src/validation/api-tokens.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport constants from '../services/constants';\n\nconst apiTokenCreationSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).required(),\n description: yup.string().optional(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).required(),\n permissions: yup.array().of(yup.string()).nullable(),\n lifespan: yup.number().min(1).oneOf(Object.values(constants.API_TOKEN_LIFESPANS)).nullable(),\n })\n .noUnknown()\n .strict();\n\nconst apiTokenUpdateSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).notNull(),\n description: yup.string().nullable(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).notNull(),\n permissions: yup.array().of(yup.string()).nullable(),\n })\n .noUnknown()\n .strict();\n\nexport const validateApiTokenCreationInput = validateYupSchema(apiTokenCreationSchema);\nexport const validateApiTokenUpdateInput = validateYupSchema(apiTokenUpdateSchema);\n\nexport default {\n validateApiTokenCreationInput,\n validateApiTokenUpdateInput,\n};\n"],"names":["apiTokenCreationSchema","yup","object","shape","name","string","min","required","description","optional","type","oneOf","Object","values","constants","API_TOKEN_TYPE","permissions","array","of","nullable","lifespan","number","API_TOKEN_LIFESPANS","noUnknown","strict","apiTokenUpdateSchema","notNull","validateApiTokenCreationInput","validateYupSchema","validateApiTokenUpdateInput"],"mappings":";;;;;AAGA,MAAMA,sBAAyBC,GAAAA,SAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGC,QAAQ,EAAA;IAClCC,WAAaP,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGI,QAAQ,EAAA;IAClCC,IAAMT,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAOC,CAAAA,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGR,QAAQ,EAAA;IAC1ES,WAAaf,EAAAA,SAAAA,CAAIgB,KAAK,EAAGC,CAAAA,EAAE,CAACjB,SAAII,CAAAA,MAAM,IAAIc,QAAQ,EAAA;AAClDC,IAAAA,QAAAA,EAAUnB,SAAIoB,CAAAA,MAAM,EAAGf,CAAAA,GAAG,CAAC,CAAGK,CAAAA,CAAAA,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAUQ,CAAAA,mBAAmB,GAAGH,QAAQ;AAC5F,CACCI,CAAAA,CAAAA,SAAS,GACTC,MAAM,EAAA;AAET,MAAMC,oBAAuBxB,GAAAA,SAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGoB,OAAO,EAAA;IACjClB,WAAaP,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGc,QAAQ,EAAA;IAClCT,IAAMT,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAOC,CAAAA,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGW,OAAO,EAAA;IACzEV,WAAaf,EAAAA,SAAAA,CAAIgB,KAAK,EAAGC,CAAAA,EAAE,CAACjB,SAAII,CAAAA,MAAM,IAAIc,QAAQ;AACpD,CACCI,CAAAA,CAAAA,SAAS,GACTC,MAAM,EAAA;AAEF,MAAMG,6BAAgCC,GAAAA,uBAAAA,CAAkB5B,sBAAwB;AAChF,MAAM6B,2BAA8BD,GAAAA,uBAAAA,CAAkBH,oBAAsB;;;;;"}
1
+ {"version":3,"file":"api-tokens.js","sources":["../../../../../server/src/validation/api-tokens.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport constants from '../services/constants';\n\nconst apiTokenCreationSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).required(),\n description: yup.string().optional(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).required(),\n permissions: yup.array().of(yup.string()).nullable(),\n lifespan: yup.number().min(1).oneOf(Object.values(constants.API_TOKEN_LIFESPANS)).nullable(),\n })\n .noUnknown()\n .strict();\n\nconst apiTokenUpdateSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).notNull(),\n description: yup.string().nullable(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).notNull(),\n permissions: yup.array().of(yup.string()).nullable(),\n })\n .noUnknown()\n .strict();\n\nexport const validateApiTokenCreationInput = validateYupSchema(apiTokenCreationSchema);\nexport const validateApiTokenUpdateInput = validateYupSchema(apiTokenUpdateSchema);\n\nexport default {\n validateApiTokenCreationInput,\n validateApiTokenUpdateInput,\n};\n"],"names":["apiTokenCreationSchema","yup","object","shape","name","string","min","required","description","optional","type","oneOf","Object","values","constants","API_TOKEN_TYPE","permissions","array","of","nullable","lifespan","number","API_TOKEN_LIFESPANS","noUnknown","strict","apiTokenUpdateSchema","notNull","validateApiTokenCreationInput","validateYupSchema","validateApiTokenUpdateInput"],"mappings":";;;;;AAGA,MAAMA,sBAAAA,GAAyBC,SAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGC,QAAQ,EAAA;IAClCC,WAAAA,EAAaP,SAAAA,CAAII,MAAM,EAAA,CAAGI,QAAQ,EAAA;IAClCC,IAAAA,EAAMT,SAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGR,QAAQ,EAAA;IAC1ES,WAAAA,EAAaf,SAAAA,CAAIgB,KAAK,EAAA,CAAGC,EAAE,CAACjB,SAAAA,CAAII,MAAM,IAAIc,QAAQ,EAAA;AAClDC,IAAAA,QAAAA,EAAUnB,SAAAA,CAAIoB,MAAM,EAAA,CAAGf,GAAG,CAAC,CAAA,CAAA,CAAGK,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUQ,mBAAmB,GAAGH,QAAQ;AAC5F,CAAA,CAAA,CACCI,SAAS,GACTC,MAAM,EAAA;AAET,MAAMC,oBAAAA,GAAuBxB,SAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGoB,OAAO,EAAA;IACjClB,WAAAA,EAAaP,SAAAA,CAAII,MAAM,EAAA,CAAGc,QAAQ,EAAA;IAClCT,IAAAA,EAAMT,SAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGW,OAAO,EAAA;IACzEV,WAAAA,EAAaf,SAAAA,CAAIgB,KAAK,EAAA,CAAGC,EAAE,CAACjB,SAAAA,CAAII,MAAM,IAAIc,QAAQ;AACpD,CAAA,CAAA,CACCI,SAAS,GACTC,MAAM,EAAA;AAEF,MAAMG,6BAAAA,GAAgCC,uBAAAA,CAAkB5B,sBAAAA;AACxD,MAAM6B,2BAAAA,GAA8BD,uBAAAA,CAAkBH,oBAAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"api-tokens.mjs","sources":["../../../../../server/src/validation/api-tokens.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport constants from '../services/constants';\n\nconst apiTokenCreationSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).required(),\n description: yup.string().optional(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).required(),\n permissions: yup.array().of(yup.string()).nullable(),\n lifespan: yup.number().min(1).oneOf(Object.values(constants.API_TOKEN_LIFESPANS)).nullable(),\n })\n .noUnknown()\n .strict();\n\nconst apiTokenUpdateSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).notNull(),\n description: yup.string().nullable(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).notNull(),\n permissions: yup.array().of(yup.string()).nullable(),\n })\n .noUnknown()\n .strict();\n\nexport const validateApiTokenCreationInput = validateYupSchema(apiTokenCreationSchema);\nexport const validateApiTokenUpdateInput = validateYupSchema(apiTokenUpdateSchema);\n\nexport default {\n validateApiTokenCreationInput,\n validateApiTokenUpdateInput,\n};\n"],"names":["apiTokenCreationSchema","yup","object","shape","name","string","min","required","description","optional","type","oneOf","Object","values","constants","API_TOKEN_TYPE","permissions","array","of","nullable","lifespan","number","API_TOKEN_LIFESPANS","noUnknown","strict","apiTokenUpdateSchema","notNull","validateApiTokenCreationInput","validateYupSchema","validateApiTokenUpdateInput"],"mappings":";;;AAGA,MAAMA,sBAAyBC,GAAAA,GAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGC,QAAQ,EAAA;IAClCC,WAAaP,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGI,QAAQ,EAAA;IAClCC,IAAMT,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAOC,CAAAA,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGR,QAAQ,EAAA;IAC1ES,WAAaf,EAAAA,GAAAA,CAAIgB,KAAK,EAAGC,CAAAA,EAAE,CAACjB,GAAII,CAAAA,MAAM,IAAIc,QAAQ,EAAA;AAClDC,IAAAA,QAAAA,EAAUnB,GAAIoB,CAAAA,MAAM,EAAGf,CAAAA,GAAG,CAAC,CAAGK,CAAAA,CAAAA,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAUQ,CAAAA,mBAAmB,GAAGH,QAAQ;AAC5F,CACCI,CAAAA,CAAAA,SAAS,GACTC,MAAM,EAAA;AAET,MAAMC,oBAAuBxB,GAAAA,GAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGoB,OAAO,EAAA;IACjClB,WAAaP,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGc,QAAQ,EAAA;IAClCT,IAAMT,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAOC,CAAAA,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGW,OAAO,EAAA;IACzEV,WAAaf,EAAAA,GAAAA,CAAIgB,KAAK,EAAGC,CAAAA,EAAE,CAACjB,GAAII,CAAAA,MAAM,IAAIc,QAAQ;AACpD,CACCI,CAAAA,CAAAA,SAAS,GACTC,MAAM,EAAA;AAEF,MAAMG,6BAAgCC,GAAAA,iBAAAA,CAAkB5B,sBAAwB;AAChF,MAAM6B,2BAA8BD,GAAAA,iBAAAA,CAAkBH,oBAAsB;;;;"}
1
+ {"version":3,"file":"api-tokens.mjs","sources":["../../../../../server/src/validation/api-tokens.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport constants from '../services/constants';\n\nconst apiTokenCreationSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).required(),\n description: yup.string().optional(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).required(),\n permissions: yup.array().of(yup.string()).nullable(),\n lifespan: yup.number().min(1).oneOf(Object.values(constants.API_TOKEN_LIFESPANS)).nullable(),\n })\n .noUnknown()\n .strict();\n\nconst apiTokenUpdateSchema = yup\n .object()\n .shape({\n name: yup.string().min(1).notNull(),\n description: yup.string().nullable(),\n type: yup.string().oneOf(Object.values(constants.API_TOKEN_TYPE)).notNull(),\n permissions: yup.array().of(yup.string()).nullable(),\n })\n .noUnknown()\n .strict();\n\nexport const validateApiTokenCreationInput = validateYupSchema(apiTokenCreationSchema);\nexport const validateApiTokenUpdateInput = validateYupSchema(apiTokenUpdateSchema);\n\nexport default {\n validateApiTokenCreationInput,\n validateApiTokenUpdateInput,\n};\n"],"names":["apiTokenCreationSchema","yup","object","shape","name","string","min","required","description","optional","type","oneOf","Object","values","constants","API_TOKEN_TYPE","permissions","array","of","nullable","lifespan","number","API_TOKEN_LIFESPANS","noUnknown","strict","apiTokenUpdateSchema","notNull","validateApiTokenCreationInput","validateYupSchema","validateApiTokenUpdateInput"],"mappings":";;;AAGA,MAAMA,sBAAAA,GAAyBC,GAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGC,QAAQ,EAAA;IAClCC,WAAAA,EAAaP,GAAAA,CAAII,MAAM,EAAA,CAAGI,QAAQ,EAAA;IAClCC,IAAAA,EAAMT,GAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGR,QAAQ,EAAA;IAC1ES,WAAAA,EAAaf,GAAAA,CAAIgB,KAAK,EAAA,CAAGC,EAAE,CAACjB,GAAAA,CAAII,MAAM,IAAIc,QAAQ,EAAA;AAClDC,IAAAA,QAAAA,EAAUnB,GAAAA,CAAIoB,MAAM,EAAA,CAAGf,GAAG,CAAC,CAAA,CAAA,CAAGK,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUQ,mBAAmB,GAAGH,QAAQ;AAC5F,CAAA,CAAA,CACCI,SAAS,GACTC,MAAM,EAAA;AAET,MAAMC,oBAAAA,GAAuBxB,GAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,GAAG,CAAC,GAAGoB,OAAO,EAAA;IACjClB,WAAAA,EAAaP,GAAAA,CAAII,MAAM,EAAA,CAAGc,QAAQ,EAAA;IAClCT,IAAAA,EAAMT,GAAAA,CAAII,MAAM,EAAA,CAAGM,KAAK,CAACC,MAAAA,CAAOC,MAAM,CAACC,SAAAA,CAAUC,cAAc,CAAA,CAAA,CAAGW,OAAO,EAAA;IACzEV,WAAAA,EAAaf,GAAAA,CAAIgB,KAAK,EAAA,CAAGC,EAAE,CAACjB,GAAAA,CAAII,MAAM,IAAIc,QAAQ;AACpD,CAAA,CAAA,CACCI,SAAS,GACTC,MAAM,EAAA;AAEF,MAAMG,6BAAAA,GAAgCC,iBAAAA,CAAkB5B,sBAAAA;AACxD,MAAM6B,2BAAAA,GAA8BD,iBAAAA,CAAkBH,oBAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"forgot-password.js","sources":["../../../../../../server/src/validation/authentication/forgot-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst forgotPasswordSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(forgotPasswordSchema);\n"],"names":["forgotPasswordSchema","yup","object","shape","email","validators","required","noUnknown","validateYupSchema"],"mappings":";;;;;AAGA,MAAMA,oBAAuBC,GAAAA,SAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,KAAOC,EAAAA,wBAAAA,CAAWD,KAAK,CAACE,QAAQ;AAClC,CACCA,CAAAA,CAAAA,QAAQ,GACRC,SAAS,EAAA;AAEZ,kCAAeC,wBAAkBR,oBAAsB,CAAA;;;;"}
1
+ {"version":3,"file":"forgot-password.js","sources":["../../../../../../server/src/validation/authentication/forgot-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst forgotPasswordSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(forgotPasswordSchema);\n"],"names":["forgotPasswordSchema","yup","object","shape","email","validators","required","noUnknown","validateYupSchema"],"mappings":";;;;;AAGA,MAAMA,oBAAAA,GAAuBC,SAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,KAAAA,EAAOC,wBAAAA,CAAWD,KAAK,CAACE,QAAQ;AAClC,CAAA,CAAA,CACCA,QAAQ,GACRC,SAAS,EAAA;AAEZ,kCAAeC,wBAAkBR,oBAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"forgot-password.mjs","sources":["../../../../../../server/src/validation/authentication/forgot-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst forgotPasswordSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(forgotPasswordSchema);\n"],"names":["forgotPasswordSchema","yup","object","shape","email","validators","required","noUnknown","validateYupSchema"],"mappings":";;;AAGA,MAAMA,oBAAuBC,GAAAA,GAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,KAAOC,EAAAA,UAAAA,CAAWD,KAAK,CAACE,QAAQ;AAClC,CACCA,CAAAA,CAAAA,QAAQ,GACRC,SAAS,EAAA;AAEZ,kCAAeC,kBAAkBR,oBAAsB,CAAA;;;;"}
1
+ {"version":3,"file":"forgot-password.mjs","sources":["../../../../../../server/src/validation/authentication/forgot-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst forgotPasswordSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(forgotPasswordSchema);\n"],"names":["forgotPasswordSchema","yup","object","shape","email","validators","required","noUnknown","validateYupSchema"],"mappings":";;;AAGA,MAAMA,oBAAAA,GAAuBC,GAAAA,CAC1BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,KAAAA,EAAOC,UAAAA,CAAWD,KAAK,CAACE,QAAQ;AAClC,CAAA,CAAA,CACCA,QAAQ,GACRC,SAAS,EAAA;AAEZ,kCAAeC,kBAAkBR,oBAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sources":["../../../../../../server/src/validation/authentication/login.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\n/**\n * Validates optional session-related fields for login requests.\n * Does not constrain credential fields (email/password) handled by passport.\n */\nconst schema = yup\n .object()\n .shape({\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n // Allow other properties (like email/password) to be present\n .noUnknown(false);\n\nexport default validateYupSchema(schema);\n"],"names":["schema","yup","object","shape","deviceId","string","uuid","optional","rememberMe","boolean","noUnknown","validateYupSchema"],"mappings":";;;;AAEA;;;AAGC,IACD,MAAMA,MAASC,GAAAA,SAAAA,CACZC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,QAAAA,EAAUH,SAAII,CAAAA,MAAM,EAAGC,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYP,EAAAA,SAAAA,CAAIQ,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CACA;AACCG,CAAAA,SAAS,CAAC,KAAA,CAAA;AAEb,gCAAeC,wBAAkBX,MAAQ,CAAA;;;;"}
1
+ {"version":3,"file":"login.js","sources":["../../../../../../server/src/validation/authentication/login.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\n/**\n * Validates optional session-related fields for login requests.\n * Does not constrain credential fields (email/password) handled by passport.\n */\nconst schema = yup\n .object()\n .shape({\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n // Allow other properties (like email/password) to be present\n .noUnknown(false);\n\nexport default validateYupSchema(schema);\n"],"names":["schema","yup","object","shape","deviceId","string","uuid","optional","rememberMe","boolean","noUnknown","validateYupSchema"],"mappings":";;;;AAEA;;;AAGC,IACD,MAAMA,MAAAA,GAASC,SAAAA,CACZC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,QAAAA,EAAUH,SAAAA,CAAII,MAAM,EAAA,CAAGC,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYP,SAAAA,CAAIQ,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CACA;AACCG,CAAAA,SAAS,CAAC,KAAA,CAAA;AAEb,gCAAeC,wBAAkBX,MAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.mjs","sources":["../../../../../../server/src/validation/authentication/login.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\n/**\n * Validates optional session-related fields for login requests.\n * Does not constrain credential fields (email/password) handled by passport.\n */\nconst schema = yup\n .object()\n .shape({\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n // Allow other properties (like email/password) to be present\n .noUnknown(false);\n\nexport default validateYupSchema(schema);\n"],"names":["schema","yup","object","shape","deviceId","string","uuid","optional","rememberMe","boolean","noUnknown","validateYupSchema"],"mappings":";;AAEA;;;AAGC,IACD,MAAMA,MAASC,GAAAA,GAAAA,CACZC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,QAAAA,EAAUH,GAAII,CAAAA,MAAM,EAAGC,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYP,EAAAA,GAAAA,CAAIQ,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CACA;AACCG,CAAAA,SAAS,CAAC,KAAA,CAAA;AAEb,gCAAeC,kBAAkBX,MAAQ,CAAA;;;;"}
1
+ {"version":3,"file":"login.mjs","sources":["../../../../../../server/src/validation/authentication/login.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\n/**\n * Validates optional session-related fields for login requests.\n * Does not constrain credential fields (email/password) handled by passport.\n */\nconst schema = yup\n .object()\n .shape({\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n // Allow other properties (like email/password) to be present\n .noUnknown(false);\n\nexport default validateYupSchema(schema);\n"],"names":["schema","yup","object","shape","deviceId","string","uuid","optional","rememberMe","boolean","noUnknown","validateYupSchema"],"mappings":";;AAEA;;;AAGC,IACD,MAAMA,MAAAA,GAASC,GAAAA,CACZC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,QAAAA,EAAUH,GAAAA,CAAII,MAAM,EAAA,CAAGC,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYP,GAAAA,CAAIQ,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CACA;AACCG,CAAAA,SAAS,CAAC,KAAA,CAAA;AAEb,gCAAeC,kBAAkBX,MAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../../../../server/src/validation/authentication/register.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst registrationSchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n userInfo: yup\n .object()\n .shape({\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .noUnknown();\n\nconst registrationInfoQuerySchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n })\n .required()\n .noUnknown();\n\nconst adminRegistrationSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .required()\n .noUnknown();\n\nexport const validateRegistrationInput = validateYupSchema(registrationSchema);\nexport const validateRegistrationInfoQuery = validateYupSchema(registrationInfoQuerySchema);\nexport const validateAdminRegistrationInput = validateYupSchema(adminRegistrationSchema);\n\nexport default {\n validateRegistrationInput,\n validateRegistrationInfoQuery,\n validateAdminRegistrationInput,\n};\n"],"names":["registrationSchema","yup","object","shape","registrationToken","string","required","userInfo","firstname","validators","lastname","nullable","password","noUnknown","deviceId","uuid","optional","rememberMe","boolean","registrationInfoQuerySchema","adminRegistrationSchema","email","validateRegistrationInput","validateYupSchema","validateRegistrationInfoQuery","validateAdminRegistrationInput"],"mappings":";;;;;AAGA,MAAMA,kBAAqBC,GAAAA,SAAAA,CACxBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAmBH,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;AACxCC,IAAAA,QAAAA,EAAUN,SACPC,CAAAA,MAAM,EACNC,CAAAA,KAAK,CAAC;QACLK,SAAWC,EAAAA,wBAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;QACxCI,QAAUD,EAAAA,wBAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;QACtCC,QAAUH,EAAAA,wBAAAA,CAAWG,QAAQ,CAACN,QAAQ;KAEvCA,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AACZC,IAAAA,QAAAA,EAAUb,SAAII,CAAAA,MAAM,EAAGU,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYhB,EAAAA,SAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCH,SAAS,EAAA;AAEZ,MAAMM,2BAA8BlB,GAAAA,SAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAmBH,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ;AAC1C,CACCA,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AAEZ,MAAMO,uBAA0BnB,GAAAA,SAAAA,CAC7BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLkB,KAAOZ,EAAAA,wBAAAA,CAAWY,KAAK,CAACf,QAAQ,EAAA;IAChCE,SAAWC,EAAAA,wBAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;IACxCI,QAAUD,EAAAA,wBAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;IACtCC,QAAUH,EAAAA,wBAAAA,CAAWG,QAAQ,CAACN,QAAQ,EAAA;AACtCQ,IAAAA,QAAAA,EAAUb,SAAII,CAAAA,MAAM,EAAGU,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYhB,EAAAA,SAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CACCV,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AAEL,MAAMS,yBAA4BC,GAAAA,uBAAAA,CAAkBvB,kBAAoB;AACxE,MAAMwB,6BAAgCD,GAAAA,uBAAAA,CAAkBJ,2BAA6B;AACrF,MAAMM,8BAAiCF,GAAAA,uBAAAA,CAAkBH,uBAAyB;;;;;;"}
1
+ {"version":3,"file":"register.js","sources":["../../../../../../server/src/validation/authentication/register.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst registrationSchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n userInfo: yup\n .object()\n .shape({\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .noUnknown();\n\nconst registrationInfoQuerySchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n })\n .required()\n .noUnknown();\n\nconst adminRegistrationSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .required()\n .noUnknown();\n\nexport const validateRegistrationInput = validateYupSchema(registrationSchema);\nexport const validateRegistrationInfoQuery = validateYupSchema(registrationInfoQuerySchema);\nexport const validateAdminRegistrationInput = validateYupSchema(adminRegistrationSchema);\n\nexport default {\n validateRegistrationInput,\n validateRegistrationInfoQuery,\n validateAdminRegistrationInput,\n};\n"],"names":["registrationSchema","yup","object","shape","registrationToken","string","required","userInfo","firstname","validators","lastname","nullable","password","noUnknown","deviceId","uuid","optional","rememberMe","boolean","registrationInfoQuerySchema","adminRegistrationSchema","email","validateRegistrationInput","validateYupSchema","validateRegistrationInfoQuery","validateAdminRegistrationInput"],"mappings":";;;;;AAGA,MAAMA,kBAAAA,GAAqBC,SAAAA,CACxBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAAA,EAAmBH,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;AACxCC,IAAAA,QAAAA,EAAUN,SAAAA,CACPC,MAAM,EAAA,CACNC,KAAK,CAAC;QACLK,SAAAA,EAAWC,wBAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;QACxCI,QAAAA,EAAUD,wBAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;QACtCC,QAAAA,EAAUH,wBAAAA,CAAWG,QAAQ,CAACN,QAAQ;KACxC,CAAA,CACCA,QAAQ,GACRO,SAAS,EAAA;AACZC,IAAAA,QAAAA,EAAUb,SAAAA,CAAII,MAAM,EAAA,CAAGU,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYhB,SAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCH,SAAS,EAAA;AAEZ,MAAMM,2BAAAA,GAA8BlB,SAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAAA,EAAmBH,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ;AAC1C,CAAA,CAAA,CACCA,QAAQ,GACRO,SAAS,EAAA;AAEZ,MAAMO,uBAAAA,GAA0BnB,SAAAA,CAC7BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLkB,KAAAA,EAAOZ,wBAAAA,CAAWY,KAAK,CAACf,QAAQ,EAAA;IAChCE,SAAAA,EAAWC,wBAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;IACxCI,QAAAA,EAAUD,wBAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;IACtCC,QAAAA,EAAUH,wBAAAA,CAAWG,QAAQ,CAACN,QAAQ,EAAA;AACtCQ,IAAAA,QAAAA,EAAUb,SAAAA,CAAII,MAAM,EAAA,CAAGU,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYhB,SAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCV,QAAQ,GACRO,SAAS,EAAA;AAEL,MAAMS,yBAAAA,GAA4BC,uBAAAA,CAAkBvB,kBAAAA;AACpD,MAAMwB,6BAAAA,GAAgCD,uBAAAA,CAAkBJ,2BAAAA;AACxD,MAAMM,8BAAAA,GAAiCF,uBAAAA,CAAkBH,uBAAAA;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.mjs","sources":["../../../../../../server/src/validation/authentication/register.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst registrationSchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n userInfo: yup\n .object()\n .shape({\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .noUnknown();\n\nconst registrationInfoQuerySchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n })\n .required()\n .noUnknown();\n\nconst adminRegistrationSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .required()\n .noUnknown();\n\nexport const validateRegistrationInput = validateYupSchema(registrationSchema);\nexport const validateRegistrationInfoQuery = validateYupSchema(registrationInfoQuerySchema);\nexport const validateAdminRegistrationInput = validateYupSchema(adminRegistrationSchema);\n\nexport default {\n validateRegistrationInput,\n validateRegistrationInfoQuery,\n validateAdminRegistrationInput,\n};\n"],"names":["registrationSchema","yup","object","shape","registrationToken","string","required","userInfo","firstname","validators","lastname","nullable","password","noUnknown","deviceId","uuid","optional","rememberMe","boolean","registrationInfoQuerySchema","adminRegistrationSchema","email","validateRegistrationInput","validateYupSchema","validateRegistrationInfoQuery","validateAdminRegistrationInput"],"mappings":";;;AAGA,MAAMA,kBAAqBC,GAAAA,GAAAA,CACxBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAmBH,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;AACxCC,IAAAA,QAAAA,EAAUN,GACPC,CAAAA,MAAM,EACNC,CAAAA,KAAK,CAAC;QACLK,SAAWC,EAAAA,UAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;QACxCI,QAAUD,EAAAA,UAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;QACtCC,QAAUH,EAAAA,UAAAA,CAAWG,QAAQ,CAACN,QAAQ;KAEvCA,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AACZC,IAAAA,QAAAA,EAAUb,GAAII,CAAAA,MAAM,EAAGU,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYhB,EAAAA,GAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCH,SAAS,EAAA;AAEZ,MAAMM,2BAA8BlB,GAAAA,GAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAmBH,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ;AAC1C,CACCA,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AAEZ,MAAMO,uBAA0BnB,GAAAA,GAAAA,CAC7BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLkB,KAAOZ,EAAAA,UAAAA,CAAWY,KAAK,CAACf,QAAQ,EAAA;IAChCE,SAAWC,EAAAA,UAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;IACxCI,QAAUD,EAAAA,UAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;IACtCC,QAAUH,EAAAA,UAAAA,CAAWG,QAAQ,CAACN,QAAQ,EAAA;AACtCQ,IAAAA,QAAAA,EAAUb,GAAII,CAAAA,MAAM,EAAGU,CAAAA,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAYhB,EAAAA,GAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CACCV,CAAAA,CAAAA,QAAQ,GACRO,SAAS,EAAA;AAEL,MAAMS,yBAA4BC,GAAAA,iBAAAA,CAAkBvB,kBAAoB;AACxE,MAAMwB,6BAAgCD,GAAAA,iBAAAA,CAAkBJ,2BAA6B;AACrF,MAAMM,8BAAiCF,GAAAA,iBAAAA,CAAkBH,uBAAyB;;;;"}
1
+ {"version":3,"file":"register.mjs","sources":["../../../../../../server/src/validation/authentication/register.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst registrationSchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n userInfo: yup\n .object()\n .shape({\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .noUnknown();\n\nconst registrationInfoQuerySchema = yup\n .object()\n .shape({\n registrationToken: yup.string().required(),\n })\n .required()\n .noUnknown();\n\nconst adminRegistrationSchema = yup\n .object()\n .shape({\n email: validators.email.required(),\n firstname: validators.firstname.required(),\n lastname: validators.lastname.nullable(),\n password: validators.password.required(),\n deviceId: yup.string().uuid().optional(),\n rememberMe: yup.boolean().optional(),\n })\n .required()\n .noUnknown();\n\nexport const validateRegistrationInput = validateYupSchema(registrationSchema);\nexport const validateRegistrationInfoQuery = validateYupSchema(registrationInfoQuerySchema);\nexport const validateAdminRegistrationInput = validateYupSchema(adminRegistrationSchema);\n\nexport default {\n validateRegistrationInput,\n validateRegistrationInfoQuery,\n validateAdminRegistrationInput,\n};\n"],"names":["registrationSchema","yup","object","shape","registrationToken","string","required","userInfo","firstname","validators","lastname","nullable","password","noUnknown","deviceId","uuid","optional","rememberMe","boolean","registrationInfoQuerySchema","adminRegistrationSchema","email","validateRegistrationInput","validateYupSchema","validateRegistrationInfoQuery","validateAdminRegistrationInput"],"mappings":";;;AAGA,MAAMA,kBAAAA,GAAqBC,GAAAA,CACxBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAAA,EAAmBH,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;AACxCC,IAAAA,QAAAA,EAAUN,GAAAA,CACPC,MAAM,EAAA,CACNC,KAAK,CAAC;QACLK,SAAAA,EAAWC,UAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;QACxCI,QAAAA,EAAUD,UAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;QACtCC,QAAAA,EAAUH,UAAAA,CAAWG,QAAQ,CAACN,QAAQ;KACxC,CAAA,CACCA,QAAQ,GACRO,SAAS,EAAA;AACZC,IAAAA,QAAAA,EAAUb,GAAAA,CAAII,MAAM,EAAA,CAAGU,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYhB,GAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCH,SAAS,EAAA;AAEZ,MAAMM,2BAAAA,GAA8BlB,GAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,iBAAAA,EAAmBH,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ;AAC1C,CAAA,CAAA,CACCA,QAAQ,GACRO,SAAS,EAAA;AAEZ,MAAMO,uBAAAA,GAA0BnB,GAAAA,CAC7BC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLkB,KAAAA,EAAOZ,UAAAA,CAAWY,KAAK,CAACf,QAAQ,EAAA;IAChCE,SAAAA,EAAWC,UAAAA,CAAWD,SAAS,CAACF,QAAQ,EAAA;IACxCI,QAAAA,EAAUD,UAAAA,CAAWC,QAAQ,CAACC,QAAQ,EAAA;IACtCC,QAAAA,EAAUH,UAAAA,CAAWG,QAAQ,CAACN,QAAQ,EAAA;AACtCQ,IAAAA,QAAAA,EAAUb,GAAAA,CAAII,MAAM,EAAA,CAAGU,IAAI,GAAGC,QAAQ,EAAA;IACtCC,UAAAA,EAAYhB,GAAAA,CAAIiB,OAAO,EAAA,CAAGF,QAAQ;AACpC,CAAA,CAAA,CACCV,QAAQ,GACRO,SAAS,EAAA;AAEL,MAAMS,yBAAAA,GAA4BC,iBAAAA,CAAkBvB,kBAAAA;AACpD,MAAMwB,6BAAAA,GAAgCD,iBAAAA,CAAkBJ,2BAAAA;AACxD,MAAMM,8BAAAA,GAAiCF,iBAAAA,CAAkBH,uBAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"reset-password.js","sources":["../../../../../../server/src/validation/authentication/reset-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst resetPasswordSchema = yup\n .object()\n .shape({\n resetPasswordToken: yup.string().required(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(resetPasswordSchema);\n"],"names":["resetPasswordSchema","yup","object","shape","resetPasswordToken","string","required","password","validators","noUnknown","validateYupSchema"],"mappings":";;;;;AAGA,MAAMA,mBAAsBC,GAAAA,SAAAA,CACzBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,kBAAoBH,EAAAA,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;IACzCC,QAAUC,EAAAA,wBAAAA,CAAWD,QAAQ,CAACD,QAAQ;AACxC,CACCA,CAAAA,CAAAA,QAAQ,GACRG,SAAS,EAAA;AAEZ,iCAAeC,wBAAkBV,mBAAqB,CAAA;;;;"}
1
+ {"version":3,"file":"reset-password.js","sources":["../../../../../../server/src/validation/authentication/reset-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst resetPasswordSchema = yup\n .object()\n .shape({\n resetPasswordToken: yup.string().required(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(resetPasswordSchema);\n"],"names":["resetPasswordSchema","yup","object","shape","resetPasswordToken","string","required","password","validators","noUnknown","validateYupSchema"],"mappings":";;;;;AAGA,MAAMA,mBAAAA,GAAsBC,SAAAA,CACzBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,kBAAAA,EAAoBH,SAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;IACzCC,QAAAA,EAAUC,wBAAAA,CAAWD,QAAQ,CAACD,QAAQ;AACxC,CAAA,CAAA,CACCA,QAAQ,GACRG,SAAS,EAAA;AAEZ,iCAAeC,wBAAkBV,mBAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"reset-password.mjs","sources":["../../../../../../server/src/validation/authentication/reset-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst resetPasswordSchema = yup\n .object()\n .shape({\n resetPasswordToken: yup.string().required(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(resetPasswordSchema);\n"],"names":["resetPasswordSchema","yup","object","shape","resetPasswordToken","string","required","password","validators","noUnknown","validateYupSchema"],"mappings":";;;AAGA,MAAMA,mBAAsBC,GAAAA,GAAAA,CACzBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,kBAAoBH,EAAAA,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;IACzCC,QAAUC,EAAAA,UAAAA,CAAWD,QAAQ,CAACD,QAAQ;AACxC,CACCA,CAAAA,CAAAA,QAAQ,GACRG,SAAS,EAAA;AAEZ,iCAAeC,kBAAkBV,mBAAqB,CAAA;;;;"}
1
+ {"version":3,"file":"reset-password.mjs","sources":["../../../../../../server/src/validation/authentication/reset-password.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\nimport validators from '../common-validators';\n\nconst resetPasswordSchema = yup\n .object()\n .shape({\n resetPasswordToken: yup.string().required(),\n password: validators.password.required(),\n })\n .required()\n .noUnknown();\n\nexport default validateYupSchema(resetPasswordSchema);\n"],"names":["resetPasswordSchema","yup","object","shape","resetPasswordToken","string","required","password","validators","noUnknown","validateYupSchema"],"mappings":";;;AAGA,MAAMA,mBAAAA,GAAsBC,GAAAA,CACzBC,MAAM,EAAA,CACNC,KAAK,CAAC;IACLC,kBAAAA,EAAoBH,GAAAA,CAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA;IACzCC,QAAAA,EAAUC,UAAAA,CAAWD,QAAQ,CAACD,QAAQ;AACxC,CAAA,CAAA,CACCA,QAAQ,GACRG,SAAS,EAAA;AAEZ,iCAAeC,kBAAkBV,mBAAAA,CAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-fields-are-correctly-nested.js","sources":["../../../../../../server/src/validation/common-functions/check-fields-are-correctly-nested.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsAreCorrectlyNested = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n let failed = false;\n for (let indexA = 0; indexA < fields.length; indexA += 1) {\n failed = fields\n .slice(indexA + 1)\n .some(\n (fieldB) =>\n fieldB.startsWith(`${fields[indexA]}.`) || fields[indexA].startsWith(`${fieldB}.`)\n );\n if (failed) break;\n }\n\n return !failed;\n};\n\nexport default checkFieldsAreCorrectlyNested;\n"],"names":["checkFieldsAreCorrectlyNested","fields","_","isNil","Array","isArray","failed","indexA","length","slice","some","fieldB","startsWith"],"mappings":";;;;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,CAAAA,CAAEC,KAAK,CAACF,MAAS,CAAA,EAAA;;QAEnB,OAAO,IAAA;AACT;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAS,CAAA,EAAA;QAC1B,OAAO,KAAA;AACT;AAEA,IAAA,IAAIK,MAAS,GAAA,KAAA;IACb,IAAK,IAAIC,SAAS,CAAGA,EAAAA,MAAAA,GAASN,OAAOO,MAAM,EAAED,UAAU,CAAG,CAAA;AACxDD,QAAAA,MAAAA,GAASL,MACNQ,CAAAA,KAAK,CAACF,MAAAA,GAAS,CACfG,CAAAA,CAAAA,IAAI,CACH,CAACC,MACCA,GAAAA,MAAAA,CAAOC,UAAU,CAAC,CAAGX,EAAAA,MAAM,CAACM,MAAAA,CAAO,CAAC,CAAC,CAAC,CAAA,IAAKN,MAAM,CAACM,MAAO,CAAA,CAACK,UAAU,CAAC,CAAGD,EAAAA,MAAAA,CAAO,CAAC,CAAC,CAAA,CAAA;AAEvF,QAAA,IAAIL,MAAQ,EAAA;AACd;AAEA,IAAA,OAAO,CAACA,MAAAA;AACV;;;;"}
1
+ {"version":3,"file":"check-fields-are-correctly-nested.js","sources":["../../../../../../server/src/validation/common-functions/check-fields-are-correctly-nested.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsAreCorrectlyNested = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n let failed = false;\n for (let indexA = 0; indexA < fields.length; indexA += 1) {\n failed = fields\n .slice(indexA + 1)\n .some(\n (fieldB) =>\n fieldB.startsWith(`${fields[indexA]}.`) || fields[indexA].startsWith(`${fieldB}.`)\n );\n if (failed) break;\n }\n\n return !failed;\n};\n\nexport default checkFieldsAreCorrectlyNested;\n"],"names":["checkFieldsAreCorrectlyNested","fields","_","isNil","Array","isArray","failed","indexA","length","slice","some","fieldB","startsWith"],"mappings":";;;;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,CAAAA,CAAEC,KAAK,CAACF,MAAAA,CAAAA,EAAS;;QAEnB,OAAO,IAAA;AACT,IAAA;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAAA,CAAAA,EAAS;QAC1B,OAAO,KAAA;AACT,IAAA;AAEA,IAAA,IAAIK,MAAAA,GAAS,KAAA;IACb,IAAK,IAAIC,SAAS,CAAA,EAAGA,MAAAA,GAASN,OAAOO,MAAM,EAAED,UAAU,CAAA,CAAG;AACxDD,QAAAA,MAAAA,GAASL,MAAAA,CACNQ,KAAK,CAACF,MAAAA,GAAS,CAAA,CAAA,CACfG,IAAI,CACH,CAACC,MAAAA,GACCA,MAAAA,CAAOC,UAAU,CAAC,CAAA,EAAGX,MAAM,CAACM,MAAAA,CAAO,CAAC,CAAC,CAAC,CAAA,IAAKN,MAAM,CAACM,MAAAA,CAAO,CAACK,UAAU,CAAC,CAAA,EAAGD,MAAAA,CAAO,CAAC,CAAC,CAAA,CAAA;AAEvF,QAAA,IAAIL,MAAAA,EAAQ;AACd,IAAA;AAEA,IAAA,OAAO,CAACA,MAAAA;AACV;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-fields-are-correctly-nested.mjs","sources":["../../../../../../server/src/validation/common-functions/check-fields-are-correctly-nested.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsAreCorrectlyNested = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n let failed = false;\n for (let indexA = 0; indexA < fields.length; indexA += 1) {\n failed = fields\n .slice(indexA + 1)\n .some(\n (fieldB) =>\n fieldB.startsWith(`${fields[indexA]}.`) || fields[indexA].startsWith(`${fieldB}.`)\n );\n if (failed) break;\n }\n\n return !failed;\n};\n\nexport default checkFieldsAreCorrectlyNested;\n"],"names":["checkFieldsAreCorrectlyNested","fields","_","isNil","Array","isArray","failed","indexA","length","slice","some","fieldB","startsWith"],"mappings":";;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,UAAAA,CAAEC,KAAK,CAACF,MAAS,CAAA,EAAA;;QAEnB,OAAO,IAAA;AACT;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAS,CAAA,EAAA;QAC1B,OAAO,KAAA;AACT;AAEA,IAAA,IAAIK,MAAS,GAAA,KAAA;IACb,IAAK,IAAIC,SAAS,CAAGA,EAAAA,MAAAA,GAASN,OAAOO,MAAM,EAAED,UAAU,CAAG,CAAA;AACxDD,QAAAA,MAAAA,GAASL,MACNQ,CAAAA,KAAK,CAACF,MAAAA,GAAS,CACfG,CAAAA,CAAAA,IAAI,CACH,CAACC,MACCA,GAAAA,MAAAA,CAAOC,UAAU,CAAC,CAAGX,EAAAA,MAAM,CAACM,MAAAA,CAAO,CAAC,CAAC,CAAC,CAAA,IAAKN,MAAM,CAACM,MAAO,CAAA,CAACK,UAAU,CAAC,CAAGD,EAAAA,MAAAA,CAAO,CAAC,CAAC,CAAA,CAAA;AAEvF,QAAA,IAAIL,MAAQ,EAAA;AACd;AAEA,IAAA,OAAO,CAACA,MAAAA;AACV;;;;"}
1
+ {"version":3,"file":"check-fields-are-correctly-nested.mjs","sources":["../../../../../../server/src/validation/common-functions/check-fields-are-correctly-nested.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsAreCorrectlyNested = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n let failed = false;\n for (let indexA = 0; indexA < fields.length; indexA += 1) {\n failed = fields\n .slice(indexA + 1)\n .some(\n (fieldB) =>\n fieldB.startsWith(`${fields[indexA]}.`) || fields[indexA].startsWith(`${fieldB}.`)\n );\n if (failed) break;\n }\n\n return !failed;\n};\n\nexport default checkFieldsAreCorrectlyNested;\n"],"names":["checkFieldsAreCorrectlyNested","fields","_","isNil","Array","isArray","failed","indexA","length","slice","some","fieldB","startsWith"],"mappings":";;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,UAAAA,CAAEC,KAAK,CAACF,MAAAA,CAAAA,EAAS;;QAEnB,OAAO,IAAA;AACT,IAAA;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAAA,CAAAA,EAAS;QAC1B,OAAO,KAAA;AACT,IAAA;AAEA,IAAA,IAAIK,MAAAA,GAAS,KAAA;IACb,IAAK,IAAIC,SAAS,CAAA,EAAGA,MAAAA,GAASN,OAAOO,MAAM,EAAED,UAAU,CAAA,CAAG;AACxDD,QAAAA,MAAAA,GAASL,MAAAA,CACNQ,KAAK,CAACF,MAAAA,GAAS,CAAA,CAAA,CACfG,IAAI,CACH,CAACC,MAAAA,GACCA,MAAAA,CAAOC,UAAU,CAAC,CAAA,EAAGX,MAAM,CAACM,MAAAA,CAAO,CAAC,CAAC,CAAC,CAAA,IAAKN,MAAM,CAACM,MAAAA,CAAO,CAACK,UAAU,CAAC,CAAA,EAAGD,MAAAA,CAAO,CAAC,CAAC,CAAA,CAAA;AAEvF,QAAA,IAAIL,MAAAA,EAAQ;AACd,IAAA;AAEA,IAAA,OAAO,CAACA,MAAAA;AACV;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-fields-dont-have-duplicates.js","sources":["../../../../../../server/src/validation/common-functions/check-fields-dont-have-duplicates.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsDontHaveDuplicates = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n return _.uniq(fields).length === fields.length;\n};\n\nexport default checkFieldsDontHaveDuplicates;\n"],"names":["checkFieldsDontHaveDuplicates","fields","_","isNil","Array","isArray","uniq","length"],"mappings":";;;;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,CAAAA,CAAEC,KAAK,CAACF,MAAS,CAAA,EAAA;;QAEnB,OAAO,IAAA;AACT;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAS,CAAA,EAAA;QAC1B,OAAO,KAAA;AACT;AAEA,IAAA,OAAOC,EAAEI,IAAI,CAACL,QAAQM,MAAM,KAAKN,OAAOM,MAAM;AAChD;;;;"}
1
+ {"version":3,"file":"check-fields-dont-have-duplicates.js","sources":["../../../../../../server/src/validation/common-functions/check-fields-dont-have-duplicates.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsDontHaveDuplicates = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n return _.uniq(fields).length === fields.length;\n};\n\nexport default checkFieldsDontHaveDuplicates;\n"],"names":["checkFieldsDontHaveDuplicates","fields","_","isNil","Array","isArray","uniq","length"],"mappings":";;;;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,CAAAA,CAAEC,KAAK,CAACF,MAAAA,CAAAA,EAAS;;QAEnB,OAAO,IAAA;AACT,IAAA;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAAA,CAAAA,EAAS;QAC1B,OAAO,KAAA;AACT,IAAA;AAEA,IAAA,OAAOC,EAAEI,IAAI,CAACL,QAAQM,MAAM,KAAKN,OAAOM,MAAM;AAChD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-fields-dont-have-duplicates.mjs","sources":["../../../../../../server/src/validation/common-functions/check-fields-dont-have-duplicates.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsDontHaveDuplicates = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n return _.uniq(fields).length === fields.length;\n};\n\nexport default checkFieldsDontHaveDuplicates;\n"],"names":["checkFieldsDontHaveDuplicates","fields","_","isNil","Array","isArray","uniq","length"],"mappings":";;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,UAAAA,CAAEC,KAAK,CAACF,MAAS,CAAA,EAAA;;QAEnB,OAAO,IAAA;AACT;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAS,CAAA,EAAA;QAC1B,OAAO,KAAA;AACT;AAEA,IAAA,OAAOC,WAAEI,IAAI,CAACL,QAAQM,MAAM,KAAKN,OAAOM,MAAM;AAChD;;;;"}
1
+ {"version":3,"file":"check-fields-dont-have-duplicates.mjs","sources":["../../../../../../server/src/validation/common-functions/check-fields-dont-have-duplicates.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst checkFieldsDontHaveDuplicates = (fields: unknown) => {\n if (_.isNil(fields)) {\n // Only check if the fields exist\n return true;\n }\n if (!Array.isArray(fields)) {\n return false;\n }\n\n return _.uniq(fields).length === fields.length;\n};\n\nexport default checkFieldsDontHaveDuplicates;\n"],"names":["checkFieldsDontHaveDuplicates","fields","_","isNil","Array","isArray","uniq","length"],"mappings":";;AAEA,MAAMA,gCAAgC,CAACC,MAAAA,GAAAA;IACrC,IAAIC,UAAAA,CAAEC,KAAK,CAACF,MAAAA,CAAAA,EAAS;;QAEnB,OAAO,IAAA;AACT,IAAA;AACA,IAAA,IAAI,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAAA,CAAAA,EAAS;QAC1B,OAAO,KAAA;AACT,IAAA;AAEA,IAAA,OAAOC,WAAEI,IAAI,CAACL,QAAQM,MAAM,KAAKN,OAAOM,MAAM;AAChD;;;;"}
@@ -10,6 +10,7 @@ var index = require('../domain/action/index.js');
10
10
  var checkFieldsAreCorrectlyNested = require('./common-functions/check-fields-are-correctly-nested.js');
11
11
  var checkFieldsDontHaveDuplicates = require('./common-functions/check-fields-dont-have-duplicates.js');
12
12
 
13
+ const { actionFields } = index;
13
14
  const getActionFromProvider = (actionId)=>{
14
15
  return index$1.getService('permission').actionProvider.get(actionId);
15
16
  };
@@ -33,7 +34,7 @@ const isAPluginName = utils.yup.string().test('is-a-plugin-name', 'is not a plug
33
34
  message: `${this.path} is not an existing plugin`
34
35
  });
35
36
  });
36
- const arrayOfConditionNames = utils.yup.array().of(utils.yup.string()).test('is-an-array-of-conditions', 'is not a plugin name', function(value) {
37
+ utils.yup.array().of(utils.yup.string()).test('is-an-array-of-conditions', 'is not a plugin name', function(value) {
37
38
  const ids = strapi.service('admin::permission').conditionProvider.keys();
38
39
  return _.isUndefined(value) || _.difference(value, ids).length === 0 ? true : this.createError({
39
40
  path: this.path,
@@ -125,12 +126,9 @@ var validators = {
125
126
  password,
126
127
  roles,
127
128
  isAPluginName,
128
- arrayOfConditionNames,
129
- permission,
130
129
  updatePermissions
131
130
  };
132
131
 
133
- exports.arrayOfConditionNames = arrayOfConditionNames;
134
132
  exports.default = validators;
135
133
  exports.email = email;
136
134
  exports.firstname = firstname;
@@ -1 +1 @@
1
- {"version":3,"file":"common-validators.js","sources":["../../../../../server/src/validation/common-validators.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport _ from 'lodash';\nimport { isEmpty, has, isNil, isArray } from 'lodash/fp';\nimport { getService } from '../utils';\nimport actionDomain, { type Action } from '../domain/action';\nimport { checkFieldsAreCorrectlyNested, checkFieldsDontHaveDuplicates } from './common-functions';\nimport actions from '../domain/action/index';\n\nconst { actionFields } = actions;\n\nconst getActionFromProvider = (actionId: string) => {\n return getService('permission').actionProvider.get(actionId);\n};\n\nexport const email = yup.string().email().lowercase();\n\nexport const firstname = yup.string().trim().min(1);\n\nexport const lastname = yup.string();\n\nexport const username = yup.string().min(1);\n\nexport const password = yup\n .string()\n .min(8)\n .test('required-byte-size', '${path} must be less than 73 bytes', function (value) {\n if (!value) return true;\n const byteSize = new TextEncoder().encode(value).length;\n return byteSize <= 72;\n })\n .matches(/[a-z]/, '${path} must contain at least one lowercase character')\n .matches(/[A-Z]/, '${path} must contain at least one uppercase character')\n .matches(/\\d/, '${path} must contain at least one number');\n\nexport const roles = yup.array(yup.strapiID()).min(1);\n\nconst isAPluginName = yup\n .string()\n .test('is-a-plugin-name', 'is not a plugin name', function (value) {\n return [undefined, 'admin', ...Object.keys(strapi.plugins)].includes(value)\n ? true\n : this.createError({ path: this.path, message: `${this.path} is not an existing plugin` });\n });\n\nexport const arrayOfConditionNames = yup\n .array()\n .of(yup.string())\n .test('is-an-array-of-conditions', 'is not a plugin name', function (value) {\n const ids = strapi.service('admin::permission').conditionProvider.keys();\n return _.isUndefined(value) || _.difference(value, ids).length === 0\n ? true\n : this.createError({ path: this.path, message: `contains conditions that don't exist` });\n });\n\nexport const permissionsAreEquals = (a: any, b: any) =>\n a.action === b.action && (a.subject === b.subject || (_.isNil(a.subject) && _.isNil(b.subject)));\n\nconst checkNoDuplicatedPermissions = (permissions: unknown) =>\n !Array.isArray(permissions) ||\n permissions.every((permA, i) =>\n permissions.slice(i + 1).every((permB) => !permissionsAreEquals(permA, permB))\n );\n\nconst checkNilFields = (action: Action) =>\n function (fields: typeof actionFields) {\n // If the parent has no action field, then we ignore this test\n if (isNil(action)) {\n return true;\n }\n\n return actionDomain.appliesToProperty('fields', action) || isNil(fields);\n };\n\nconst fieldsPropertyValidation = (action: Action) =>\n yup\n .array()\n .of(yup.string())\n .nullable()\n .test(\n 'field-nested',\n 'Fields format are incorrect (bad nesting).',\n checkFieldsAreCorrectlyNested\n )\n .test(\n 'field-nested',\n 'Fields format are incorrect (duplicates).',\n checkFieldsDontHaveDuplicates\n )\n .test(\n 'fields-restriction',\n 'The permission at ${path} must have fields set to null or undefined',\n // @ts-expect-error yup types\n checkNilFields(action)\n );\n\nexport const permission = yup\n .object()\n .shape({\n action: yup\n .string()\n .required()\n .test('action-validity', 'action is not an existing permission action', function (actionId) {\n // If the action field is Nil, ignore the test and let the required check handle the error\n if (isNil(actionId)) {\n return true;\n }\n\n return !!getActionFromProvider(actionId);\n }),\n actionParameters: yup.object().nullable(),\n subject: yup\n .string()\n .nullable()\n .test('subject-validity', 'Invalid subject submitted', function (subject) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action);\n\n if (!action) {\n return true;\n }\n\n if (isNil(action.subjects)) {\n return isNil(subject);\n }\n\n if (isArray(action.subjects) && !isNil(subject)) {\n return action.subjects.includes(subject);\n }\n\n return false;\n }),\n properties: yup\n .object()\n .test('properties-structure', 'Invalid property set at ${path}', function (properties) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n const hasNoProperties = isEmpty(properties) || isNil(properties);\n\n if (!has('options.applyToProperties', action)) {\n return hasNoProperties;\n }\n\n if (hasNoProperties) {\n return true;\n }\n\n const { applyToProperties } = action.options;\n\n if (!isArray(applyToProperties)) {\n return false;\n }\n\n return Object.keys(properties).every((property) => applyToProperties.includes(property));\n })\n .test(\n 'fields-property',\n 'Invalid fields property at ${path}',\n async function (properties = {}) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n\n if (!action || !properties) {\n return true;\n }\n\n if (!actionDomain.appliesToProperty('fields', action)) {\n return true;\n }\n\n try {\n await fieldsPropertyValidation(action).validate(properties.fields, {\n strict: true,\n abortEarly: false,\n });\n return true;\n } catch (e: any) {\n // Propagate fieldsPropertyValidation error with updated path\n throw this.createError({\n message: e.message,\n path: `${this.path}.fields`,\n });\n }\n }\n ),\n conditions: yup.array().of(yup.string()),\n })\n .noUnknown();\n\nexport const updatePermissions = yup\n .object()\n .shape({\n permissions: yup\n .array()\n .required()\n .of(permission)\n .test(\n 'duplicated-permissions',\n 'Some permissions are duplicated (same action and subject)',\n checkNoDuplicatedPermissions\n ),\n })\n .required()\n .noUnknown();\n\nexport default {\n email,\n firstname,\n lastname,\n username,\n password,\n roles,\n isAPluginName,\n arrayOfConditionNames,\n permission,\n updatePermissions,\n};\n"],"names":["getActionFromProvider","actionId","getService","actionProvider","get","email","yup","string","lowercase","firstname","trim","min","lastname","username","password","test","value","byteSize","TextEncoder","encode","length","matches","roles","array","strapiID","isAPluginName","undefined","Object","keys","strapi","plugins","includes","createError","path","message","arrayOfConditionNames","of","ids","service","conditionProvider","_","isUndefined","difference","permissionsAreEquals","a","b","action","subject","isNil","checkNoDuplicatedPermissions","permissions","Array","isArray","every","permA","i","slice","permB","checkNilFields","fields","actionDomain","appliesToProperty","fieldsPropertyValidation","nullable","checkFieldsAreCorrectlyNested","checkFieldsDontHaveDuplicates","permission","object","shape","required","actionParameters","options","parent","subjects","properties","hasNoProperties","isEmpty","has","applyToProperties","property","validate","strict","abortEarly","e","conditions","noUnknown","updatePermissions"],"mappings":"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"}
1
+ {"version":3,"file":"common-validators.js","sources":["../../../../../server/src/validation/common-validators.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport _ from 'lodash';\nimport { isEmpty, has, isNil, isArray } from 'lodash/fp';\nimport { getService } from '../utils';\nimport actionDomain, { type Action } from '../domain/action';\nimport { checkFieldsAreCorrectlyNested, checkFieldsDontHaveDuplicates } from './common-functions';\nimport actions from '../domain/action/index';\n\nconst { actionFields } = actions;\n\nconst getActionFromProvider = (actionId: string) => {\n return getService('permission').actionProvider.get(actionId);\n};\n\nexport const email = yup.string().email().lowercase();\n\nexport const firstname = yup.string().trim().min(1);\n\nexport const lastname = yup.string();\n\nexport const username = yup.string().min(1);\n\nexport const password = yup\n .string()\n .min(8)\n .test('required-byte-size', '${path} must be less than 73 bytes', function (value) {\n if (!value) return true;\n const byteSize = new TextEncoder().encode(value).length;\n return byteSize <= 72;\n })\n .matches(/[a-z]/, '${path} must contain at least one lowercase character')\n .matches(/[A-Z]/, '${path} must contain at least one uppercase character')\n .matches(/\\d/, '${path} must contain at least one number');\n\nexport const roles = yup.array(yup.strapiID()).min(1);\n\nconst isAPluginName = yup\n .string()\n .test('is-a-plugin-name', 'is not a plugin name', function (value) {\n return [undefined, 'admin', ...Object.keys(strapi.plugins)].includes(value)\n ? true\n : this.createError({ path: this.path, message: `${this.path} is not an existing plugin` });\n });\n\nexport const arrayOfConditionNames = yup\n .array()\n .of(yup.string())\n .test('is-an-array-of-conditions', 'is not a plugin name', function (value) {\n const ids = strapi.service('admin::permission').conditionProvider.keys();\n return _.isUndefined(value) || _.difference(value, ids).length === 0\n ? true\n : this.createError({ path: this.path, message: `contains conditions that don't exist` });\n });\n\nexport const permissionsAreEquals = (a: any, b: any) =>\n a.action === b.action && (a.subject === b.subject || (_.isNil(a.subject) && _.isNil(b.subject)));\n\nconst checkNoDuplicatedPermissions = (permissions: unknown) =>\n !Array.isArray(permissions) ||\n permissions.every((permA, i) =>\n permissions.slice(i + 1).every((permB) => !permissionsAreEquals(permA, permB))\n );\n\nconst checkNilFields = (action: Action) =>\n function (fields: typeof actionFields) {\n // If the parent has no action field, then we ignore this test\n if (isNil(action)) {\n return true;\n }\n\n return actionDomain.appliesToProperty('fields', action) || isNil(fields);\n };\n\nconst fieldsPropertyValidation = (action: Action) =>\n yup\n .array()\n .of(yup.string())\n .nullable()\n .test(\n 'field-nested',\n 'Fields format are incorrect (bad nesting).',\n checkFieldsAreCorrectlyNested\n )\n .test(\n 'field-nested',\n 'Fields format are incorrect (duplicates).',\n checkFieldsDontHaveDuplicates\n )\n .test(\n 'fields-restriction',\n 'The permission at ${path} must have fields set to null or undefined',\n // @ts-expect-error yup types\n checkNilFields(action)\n );\n\nexport const permission = yup\n .object()\n .shape({\n action: yup\n .string()\n .required()\n .test('action-validity', 'action is not an existing permission action', function (actionId) {\n // If the action field is Nil, ignore the test and let the required check handle the error\n if (isNil(actionId)) {\n return true;\n }\n\n return !!getActionFromProvider(actionId);\n }),\n actionParameters: yup.object().nullable(),\n subject: yup\n .string()\n .nullable()\n .test('subject-validity', 'Invalid subject submitted', function (subject) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action);\n\n if (!action) {\n return true;\n }\n\n if (isNil(action.subjects)) {\n return isNil(subject);\n }\n\n if (isArray(action.subjects) && !isNil(subject)) {\n return action.subjects.includes(subject);\n }\n\n return false;\n }),\n properties: yup\n .object()\n .test('properties-structure', 'Invalid property set at ${path}', function (properties) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n const hasNoProperties = isEmpty(properties) || isNil(properties);\n\n if (!has('options.applyToProperties', action)) {\n return hasNoProperties;\n }\n\n if (hasNoProperties) {\n return true;\n }\n\n const { applyToProperties } = action.options;\n\n if (!isArray(applyToProperties)) {\n return false;\n }\n\n return Object.keys(properties).every((property) => applyToProperties.includes(property));\n })\n .test(\n 'fields-property',\n 'Invalid fields property at ${path}',\n async function (properties = {}) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n\n if (!action || !properties) {\n return true;\n }\n\n if (!actionDomain.appliesToProperty('fields', action)) {\n return true;\n }\n\n try {\n await fieldsPropertyValidation(action).validate(properties.fields, {\n strict: true,\n abortEarly: false,\n });\n return true;\n } catch (e: any) {\n // Propagate fieldsPropertyValidation error with updated path\n throw this.createError({\n message: e.message,\n path: `${this.path}.fields`,\n });\n }\n }\n ),\n conditions: yup.array().of(yup.string()),\n })\n .noUnknown();\n\nexport const updatePermissions = yup\n .object()\n .shape({\n permissions: yup\n .array()\n .required()\n .of(permission)\n .test(\n 'duplicated-permissions',\n 'Some permissions are duplicated (same action and subject)',\n checkNoDuplicatedPermissions\n ),\n })\n .required()\n .noUnknown();\n\nexport default {\n email,\n firstname,\n lastname,\n username,\n password,\n roles,\n isAPluginName,\n arrayOfConditionNames,\n permission,\n updatePermissions,\n};\n"],"names":["actionFields","actions","getActionFromProvider","actionId","getService","actionProvider","get","email","yup","string","lowercase","firstname","trim","min","lastname","username","password","test","value","byteSize","TextEncoder","encode","length","matches","roles","array","strapiID","isAPluginName","undefined","Object","keys","strapi","plugins","includes","createError","path","message","of","ids","service","conditionProvider","_","isUndefined","difference","permissionsAreEquals","a","b","action","subject","isNil","checkNoDuplicatedPermissions","permissions","Array","isArray","every","permA","i","slice","permB","checkNilFields","fields","actionDomain","appliesToProperty","fieldsPropertyValidation","nullable","checkFieldsAreCorrectlyNested","checkFieldsDontHaveDuplicates","permission","object","shape","required","actionParameters","options","parent","subjects","properties","hasNoProperties","isEmpty","has","applyToProperties","property","validate","strict","abortEarly","e","conditions","noUnknown","updatePermissions","arrayOfConditionNames"],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { yup } from '@strapi/utils';
2
2
  import ___default from 'lodash';
3
- import { isNil, isArray, isEmpty, has } from 'lodash/fp';
3
+ import { isEmpty, isNil, has, isArray } from 'lodash/fp';
4
4
  import { getService } from '../utils/index.mjs';
5
5
  import actionDomain from '../domain/action/index.mjs';
6
6
  import checkFieldsAreCorrectlyNested from './common-functions/check-fields-are-correctly-nested.mjs';
7
7
  import checkFieldsDontHaveDuplicates from './common-functions/check-fields-dont-have-duplicates.mjs';
8
8
 
9
+ const { actionFields } = actionDomain;
9
10
  const getActionFromProvider = (actionId)=>{
10
11
  return getService('permission').actionProvider.get(actionId);
11
12
  };
@@ -29,7 +30,7 @@ const isAPluginName = yup.string().test('is-a-plugin-name', 'is not a plugin nam
29
30
  message: `${this.path} is not an existing plugin`
30
31
  });
31
32
  });
32
- const arrayOfConditionNames = yup.array().of(yup.string()).test('is-an-array-of-conditions', 'is not a plugin name', function(value) {
33
+ yup.array().of(yup.string()).test('is-an-array-of-conditions', 'is not a plugin name', function(value) {
33
34
  const ids = strapi.service('admin::permission').conditionProvider.keys();
34
35
  return ___default.isUndefined(value) || ___default.difference(value, ids).length === 0 ? true : this.createError({
35
36
  path: this.path,
@@ -121,10 +122,8 @@ var validators = {
121
122
  password,
122
123
  roles,
123
124
  isAPluginName,
124
- arrayOfConditionNames,
125
- permission,
126
125
  updatePermissions
127
126
  };
128
127
 
129
- export { arrayOfConditionNames, validators as default, email, firstname, lastname, password, permission, permissionsAreEquals, roles, updatePermissions, username };
128
+ export { validators as default, email, firstname, lastname, password, permission, permissionsAreEquals, roles, updatePermissions, username };
130
129
  //# sourceMappingURL=common-validators.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-validators.mjs","sources":["../../../../../server/src/validation/common-validators.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport _ from 'lodash';\nimport { isEmpty, has, isNil, isArray } from 'lodash/fp';\nimport { getService } from '../utils';\nimport actionDomain, { type Action } from '../domain/action';\nimport { checkFieldsAreCorrectlyNested, checkFieldsDontHaveDuplicates } from './common-functions';\nimport actions from '../domain/action/index';\n\nconst { actionFields } = actions;\n\nconst getActionFromProvider = (actionId: string) => {\n return getService('permission').actionProvider.get(actionId);\n};\n\nexport const email = yup.string().email().lowercase();\n\nexport const firstname = yup.string().trim().min(1);\n\nexport const lastname = yup.string();\n\nexport const username = yup.string().min(1);\n\nexport const password = yup\n .string()\n .min(8)\n .test('required-byte-size', '${path} must be less than 73 bytes', function (value) {\n if (!value) return true;\n const byteSize = new TextEncoder().encode(value).length;\n return byteSize <= 72;\n })\n .matches(/[a-z]/, '${path} must contain at least one lowercase character')\n .matches(/[A-Z]/, '${path} must contain at least one uppercase character')\n .matches(/\\d/, '${path} must contain at least one number');\n\nexport const roles = yup.array(yup.strapiID()).min(1);\n\nconst isAPluginName = yup\n .string()\n .test('is-a-plugin-name', 'is not a plugin name', function (value) {\n return [undefined, 'admin', ...Object.keys(strapi.plugins)].includes(value)\n ? true\n : this.createError({ path: this.path, message: `${this.path} is not an existing plugin` });\n });\n\nexport const arrayOfConditionNames = yup\n .array()\n .of(yup.string())\n .test('is-an-array-of-conditions', 'is not a plugin name', function (value) {\n const ids = strapi.service('admin::permission').conditionProvider.keys();\n return _.isUndefined(value) || _.difference(value, ids).length === 0\n ? true\n : this.createError({ path: this.path, message: `contains conditions that don't exist` });\n });\n\nexport const permissionsAreEquals = (a: any, b: any) =>\n a.action === b.action && (a.subject === b.subject || (_.isNil(a.subject) && _.isNil(b.subject)));\n\nconst checkNoDuplicatedPermissions = (permissions: unknown) =>\n !Array.isArray(permissions) ||\n permissions.every((permA, i) =>\n permissions.slice(i + 1).every((permB) => !permissionsAreEquals(permA, permB))\n );\n\nconst checkNilFields = (action: Action) =>\n function (fields: typeof actionFields) {\n // If the parent has no action field, then we ignore this test\n if (isNil(action)) {\n return true;\n }\n\n return actionDomain.appliesToProperty('fields', action) || isNil(fields);\n };\n\nconst fieldsPropertyValidation = (action: Action) =>\n yup\n .array()\n .of(yup.string())\n .nullable()\n .test(\n 'field-nested',\n 'Fields format are incorrect (bad nesting).',\n checkFieldsAreCorrectlyNested\n )\n .test(\n 'field-nested',\n 'Fields format are incorrect (duplicates).',\n checkFieldsDontHaveDuplicates\n )\n .test(\n 'fields-restriction',\n 'The permission at ${path} must have fields set to null or undefined',\n // @ts-expect-error yup types\n checkNilFields(action)\n );\n\nexport const permission = yup\n .object()\n .shape({\n action: yup\n .string()\n .required()\n .test('action-validity', 'action is not an existing permission action', function (actionId) {\n // If the action field is Nil, ignore the test and let the required check handle the error\n if (isNil(actionId)) {\n return true;\n }\n\n return !!getActionFromProvider(actionId);\n }),\n actionParameters: yup.object().nullable(),\n subject: yup\n .string()\n .nullable()\n .test('subject-validity', 'Invalid subject submitted', function (subject) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action);\n\n if (!action) {\n return true;\n }\n\n if (isNil(action.subjects)) {\n return isNil(subject);\n }\n\n if (isArray(action.subjects) && !isNil(subject)) {\n return action.subjects.includes(subject);\n }\n\n return false;\n }),\n properties: yup\n .object()\n .test('properties-structure', 'Invalid property set at ${path}', function (properties) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n const hasNoProperties = isEmpty(properties) || isNil(properties);\n\n if (!has('options.applyToProperties', action)) {\n return hasNoProperties;\n }\n\n if (hasNoProperties) {\n return true;\n }\n\n const { applyToProperties } = action.options;\n\n if (!isArray(applyToProperties)) {\n return false;\n }\n\n return Object.keys(properties).every((property) => applyToProperties.includes(property));\n })\n .test(\n 'fields-property',\n 'Invalid fields property at ${path}',\n async function (properties = {}) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n\n if (!action || !properties) {\n return true;\n }\n\n if (!actionDomain.appliesToProperty('fields', action)) {\n return true;\n }\n\n try {\n await fieldsPropertyValidation(action).validate(properties.fields, {\n strict: true,\n abortEarly: false,\n });\n return true;\n } catch (e: any) {\n // Propagate fieldsPropertyValidation error with updated path\n throw this.createError({\n message: e.message,\n path: `${this.path}.fields`,\n });\n }\n }\n ),\n conditions: yup.array().of(yup.string()),\n })\n .noUnknown();\n\nexport const updatePermissions = yup\n .object()\n .shape({\n permissions: yup\n .array()\n .required()\n .of(permission)\n .test(\n 'duplicated-permissions',\n 'Some permissions are duplicated (same action and subject)',\n checkNoDuplicatedPermissions\n ),\n })\n .required()\n .noUnknown();\n\nexport default {\n email,\n firstname,\n lastname,\n username,\n password,\n roles,\n isAPluginName,\n arrayOfConditionNames,\n permission,\n updatePermissions,\n};\n"],"names":["getActionFromProvider","actionId","getService","actionProvider","get","email","yup","string","lowercase","firstname","trim","min","lastname","username","password","test","value","byteSize","TextEncoder","encode","length","matches","roles","array","strapiID","isAPluginName","undefined","Object","keys","strapi","plugins","includes","createError","path","message","arrayOfConditionNames","of","ids","service","conditionProvider","_","isUndefined","difference","permissionsAreEquals","a","b","action","subject","isNil","checkNoDuplicatedPermissions","permissions","Array","isArray","every","permA","i","slice","permB","checkNilFields","fields","actionDomain","appliesToProperty","fieldsPropertyValidation","nullable","checkFieldsAreCorrectlyNested","checkFieldsDontHaveDuplicates","permission","object","shape","required","actionParameters","options","parent","subjects","properties","hasNoProperties","isEmpty","has","applyToProperties","property","validate","strict","abortEarly","e","conditions","noUnknown","updatePermissions"],"mappings":"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"}
1
+ {"version":3,"file":"common-validators.mjs","sources":["../../../../../server/src/validation/common-validators.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport _ from 'lodash';\nimport { isEmpty, has, isNil, isArray } from 'lodash/fp';\nimport { getService } from '../utils';\nimport actionDomain, { type Action } from '../domain/action';\nimport { checkFieldsAreCorrectlyNested, checkFieldsDontHaveDuplicates } from './common-functions';\nimport actions from '../domain/action/index';\n\nconst { actionFields } = actions;\n\nconst getActionFromProvider = (actionId: string) => {\n return getService('permission').actionProvider.get(actionId);\n};\n\nexport const email = yup.string().email().lowercase();\n\nexport const firstname = yup.string().trim().min(1);\n\nexport const lastname = yup.string();\n\nexport const username = yup.string().min(1);\n\nexport const password = yup\n .string()\n .min(8)\n .test('required-byte-size', '${path} must be less than 73 bytes', function (value) {\n if (!value) return true;\n const byteSize = new TextEncoder().encode(value).length;\n return byteSize <= 72;\n })\n .matches(/[a-z]/, '${path} must contain at least one lowercase character')\n .matches(/[A-Z]/, '${path} must contain at least one uppercase character')\n .matches(/\\d/, '${path} must contain at least one number');\n\nexport const roles = yup.array(yup.strapiID()).min(1);\n\nconst isAPluginName = yup\n .string()\n .test('is-a-plugin-name', 'is not a plugin name', function (value) {\n return [undefined, 'admin', ...Object.keys(strapi.plugins)].includes(value)\n ? true\n : this.createError({ path: this.path, message: `${this.path} is not an existing plugin` });\n });\n\nexport const arrayOfConditionNames = yup\n .array()\n .of(yup.string())\n .test('is-an-array-of-conditions', 'is not a plugin name', function (value) {\n const ids = strapi.service('admin::permission').conditionProvider.keys();\n return _.isUndefined(value) || _.difference(value, ids).length === 0\n ? true\n : this.createError({ path: this.path, message: `contains conditions that don't exist` });\n });\n\nexport const permissionsAreEquals = (a: any, b: any) =>\n a.action === b.action && (a.subject === b.subject || (_.isNil(a.subject) && _.isNil(b.subject)));\n\nconst checkNoDuplicatedPermissions = (permissions: unknown) =>\n !Array.isArray(permissions) ||\n permissions.every((permA, i) =>\n permissions.slice(i + 1).every((permB) => !permissionsAreEquals(permA, permB))\n );\n\nconst checkNilFields = (action: Action) =>\n function (fields: typeof actionFields) {\n // If the parent has no action field, then we ignore this test\n if (isNil(action)) {\n return true;\n }\n\n return actionDomain.appliesToProperty('fields', action) || isNil(fields);\n };\n\nconst fieldsPropertyValidation = (action: Action) =>\n yup\n .array()\n .of(yup.string())\n .nullable()\n .test(\n 'field-nested',\n 'Fields format are incorrect (bad nesting).',\n checkFieldsAreCorrectlyNested\n )\n .test(\n 'field-nested',\n 'Fields format are incorrect (duplicates).',\n checkFieldsDontHaveDuplicates\n )\n .test(\n 'fields-restriction',\n 'The permission at ${path} must have fields set to null or undefined',\n // @ts-expect-error yup types\n checkNilFields(action)\n );\n\nexport const permission = yup\n .object()\n .shape({\n action: yup\n .string()\n .required()\n .test('action-validity', 'action is not an existing permission action', function (actionId) {\n // If the action field is Nil, ignore the test and let the required check handle the error\n if (isNil(actionId)) {\n return true;\n }\n\n return !!getActionFromProvider(actionId);\n }),\n actionParameters: yup.object().nullable(),\n subject: yup\n .string()\n .nullable()\n .test('subject-validity', 'Invalid subject submitted', function (subject) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action);\n\n if (!action) {\n return true;\n }\n\n if (isNil(action.subjects)) {\n return isNil(subject);\n }\n\n if (isArray(action.subjects) && !isNil(subject)) {\n return action.subjects.includes(subject);\n }\n\n return false;\n }),\n properties: yup\n .object()\n .test('properties-structure', 'Invalid property set at ${path}', function (properties) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n const hasNoProperties = isEmpty(properties) || isNil(properties);\n\n if (!has('options.applyToProperties', action)) {\n return hasNoProperties;\n }\n\n if (hasNoProperties) {\n return true;\n }\n\n const { applyToProperties } = action.options;\n\n if (!isArray(applyToProperties)) {\n return false;\n }\n\n return Object.keys(properties).every((property) => applyToProperties.includes(property));\n })\n .test(\n 'fields-property',\n 'Invalid fields property at ${path}',\n async function (properties = {}) {\n // @ts-expect-error yup types\n const action = getActionFromProvider(this.options.parent.action) as any;\n\n if (!action || !properties) {\n return true;\n }\n\n if (!actionDomain.appliesToProperty('fields', action)) {\n return true;\n }\n\n try {\n await fieldsPropertyValidation(action).validate(properties.fields, {\n strict: true,\n abortEarly: false,\n });\n return true;\n } catch (e: any) {\n // Propagate fieldsPropertyValidation error with updated path\n throw this.createError({\n message: e.message,\n path: `${this.path}.fields`,\n });\n }\n }\n ),\n conditions: yup.array().of(yup.string()),\n })\n .noUnknown();\n\nexport const updatePermissions = yup\n .object()\n .shape({\n permissions: yup\n .array()\n .required()\n .of(permission)\n .test(\n 'duplicated-permissions',\n 'Some permissions are duplicated (same action and subject)',\n checkNoDuplicatedPermissions\n ),\n })\n .required()\n .noUnknown();\n\nexport default {\n email,\n firstname,\n lastname,\n username,\n password,\n roles,\n isAPluginName,\n arrayOfConditionNames,\n permission,\n updatePermissions,\n};\n"],"names":["actionFields","actions","getActionFromProvider","actionId","getService","actionProvider","get","email","yup","string","lowercase","firstname","trim","min","lastname","username","password","test","value","byteSize","TextEncoder","encode","length","matches","roles","array","strapiID","isAPluginName","undefined","Object","keys","strapi","plugins","includes","createError","path","message","of","ids","service","conditionProvider","_","isUndefined","difference","permissionsAreEquals","a","b","action","subject","isNil","checkNoDuplicatedPermissions","permissions","Array","isArray","every","permA","i","slice","permB","checkNilFields","fields","actionDomain","appliesToProperty","fieldsPropertyValidation","nullable","checkFieldsAreCorrectlyNested","checkFieldsDontHaveDuplicates","permission","object","shape","required","actionParameters","options","parent","subjects","properties","hasNoProperties","isEmpty","has","applyToProperties","property","validate","strict","abortEarly","e","conditions","noUnknown","updatePermissions","arrayOfConditionNames"],"mappings":"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"}