@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":"RoleForm.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n type=\"text\"\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n"],"names":["RoleForm","disabled","role","values","errors","onChange","onBlur","formatMessage","useIntl","_jsx","Box","background","padding","shadow","hasRadius","_jsxs","Flex","direction","alignItems","gap","justifyContent","Typography","fontWeight","name","id","defaultMessage","textColor","variant","description","Button","number","usersCount","Grid","Root","Item","xs","col","Field","error","required","Label","TextInput","value","type","Error","Textarea"],"mappings":"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"}
1
+ {"version":3,"file":"RoleForm.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n type=\"text\"\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n"],"names":["RoleForm","disabled","role","values","errors","onChange","onBlur","formatMessage","useIntl","_jsx","Box","background","padding","shadow","hasRadius","_jsxs","Flex","direction","alignItems","gap","justifyContent","Typography","fontWeight","name","id","defaultMessage","textColor","variant","description","Button","number","usersCount","Grid","Root","Item","xs","col","Field","error","required","Label","TextInput","value","type","Error","Textarea"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RoleRow.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n cursor?: string;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n cursor,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n cursor={cursor}\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} variant=\"ghost\" />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n"],"names":["RoleRow","id","name","description","usersCount","icons","rowIndex","canUpdate","cursor","formatMessage","useIntl","editObject","usersCountText","defaultMessage","number","_jsxs","Tr","aria-rowindex","onClick","undefined","_jsx","Td","maxWidth","Typography","ellipsis","textColor","Flex","justifyContent","e","stopPropagation","map","icon","i","Box","paddingLeft","IconButton","variant","label"],"mappings":";;;;;;AAYA,MAAMA,UAAU,CAAC,EACfC,EAAE,EACFC,IAAI,EACJC,WAAW,EACXC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACO,GAAA;IACb,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,GAAGC,WAAW,GAAGN,KAAAA;AAEvB,IAAA,MAAMO,iBAAiBH,aACrB,CAAA;QACER,EAAI,EAAA,CAAC,wBAAwB,CAAC;QAC9BY,cAAgB,EAAA;KAElB,EAAA;QAAEC,MAAQV,EAAAA;AAAW,KAAA,CAAA;AAGvB,IAAA,qBACEW,eAACC,CAAAA,eAAAA,EAAAA;QACCR,MAAQA,EAAAA,MAAAA;QACRS,eAAeX,EAAAA,QAAAA;;QAGfY,OAASX,EAAAA,SAAAA,GAAYI,UAAWO,CAAAA,OAAO,GAAGC,SAAAA;;0BAE1CC,cAACC,CAAAA,eAAAA,EAAAA;gBAAGC,QAAU,EAAA,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,cAACG,CAAAA,uBAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAU,EAAA,YAAA;AAC5BvB,oBAAAA,QAAAA,EAAAA;;;0BAGLkB,cAACC,CAAAA,eAAAA,EAAAA;gBAAGC,QAAU,EAAA,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,cAACG,CAAAA,uBAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAU,EAAA,YAAA;AAC5BtB,oBAAAA,QAAAA,EAAAA;;;0BAGLiB,cAACC,CAAAA,eAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,cAACG,CAAAA,uBAAAA,EAAAA;oBAAWE,SAAU,EAAA,YAAA;AAAcb,oBAAAA,QAAAA,EAAAA;;;0BAEtCQ,cAACC,CAAAA,eAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,cAACM,CAAAA,iBAAAA,EAAAA;oBAAKC,cAAe,EAAA,UAAA;oBAAWT,OAAS,EAAA,CAACU,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;8BAC9DxB,KAAMyB,CAAAA,GAAG,CAAC,CAACC,IAAMC,EAAAA,CAAAA,GAAAA;AAChB,wBAAA,IAAID,IAAM,EAAA;AACR,4BAAA,qBACEX,cAACa,CAAAA,gBAAAA,EAAAA;gCAAqBC,WAAaF,EAAAA,CAAAA,KAAM,IAAI,CAAI,GAAA,CAAA;AAC/C,gCAAA,QAAA,gBAAAZ,cAACe,CAAAA,uBAAAA,EAAAA;AAAY,oCAAA,GAAGJ,IAAI;oCAAEK,OAAQ,EAAA;;AADtBL,6BAAAA,EAAAA,IAAAA,CAAKM,KAAK,CAAA;AAIxB;wBAEA,OAAO,IAAA;AACT,qBAAA;;;;AA7BCpC,KAAAA,EAAAA,EAAAA,CAAAA;AAkCX;;;;"}
1
+ {"version":3,"file":"RoleRow.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n cursor?: string;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n cursor,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n cursor={cursor}\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} variant=\"ghost\" />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n"],"names":["RoleRow","id","name","description","usersCount","icons","rowIndex","canUpdate","cursor","formatMessage","useIntl","editObject","usersCountText","defaultMessage","number","_jsxs","Tr","aria-rowindex","onClick","undefined","_jsx","Td","maxWidth","Typography","ellipsis","textColor","Flex","justifyContent","e","stopPropagation","map","icon","i","Box","paddingLeft","IconButton","variant","label"],"mappings":";;;;;;AAYA,MAAMA,UAAU,CAAC,EACfC,EAAE,EACFC,IAAI,EACJC,WAAW,EACXC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACO,GAAA;IACb,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,GAAGC,WAAW,GAAGN,KAAAA;AAEvB,IAAA,MAAMO,iBAAiBH,aAAAA,CACrB;QACER,EAAAA,EAAI,CAAC,wBAAwB,CAAC;QAC9BY,cAAAA,EAAgB;KAClB,EACA;QAAEC,MAAAA,EAAQV;AAAW,KAAA,CAAA;AAGvB,IAAA,qBACEW,eAAA,CAACC,eAAAA,EAAAA;QACCR,MAAAA,EAAQA,MAAAA;QACRS,eAAAA,EAAeX,QAAAA;;QAGfY,OAAAA,EAASX,SAAAA,GAAYI,UAAAA,CAAWO,OAAO,GAAGC,SAAAA;;0BAE1CC,cAAA,CAACC,eAAAA,EAAAA;gBAAGC,QAAAA,EAAU,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,cAAA,CAACG,uBAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAAA,EAAU,YAAA;AAC5BvB,oBAAAA,QAAAA,EAAAA;;;0BAGLkB,cAAA,CAACC,eAAAA,EAAAA;gBAAGC,QAAAA,EAAU,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,cAAA,CAACG,uBAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAAA,EAAU,YAAA;AAC5BtB,oBAAAA,QAAAA,EAAAA;;;0BAGLiB,cAAA,CAACC,eAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,cAAA,CAACG,uBAAAA,EAAAA;oBAAWE,SAAAA,EAAU,YAAA;AAAcb,oBAAAA,QAAAA,EAAAA;;;0BAEtCQ,cAAA,CAACC,eAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,cAAA,CAACM,iBAAAA,EAAAA;oBAAKC,cAAAA,EAAe,UAAA;oBAAWT,OAAAA,EAAS,CAACU,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;8BAC9DxB,KAAAA,CAAMyB,GAAG,CAAC,CAACC,IAAAA,EAAMC,CAAAA,GAAAA;AAChB,wBAAA,IAAID,IAAAA,EAAM;AACR,4BAAA,qBACEX,cAAA,CAACa,gBAAAA,EAAAA;gCAAqBC,WAAAA,EAAaF,CAAAA,KAAM,IAAI,CAAA,GAAI,CAAA;AAC/C,gCAAA,QAAA,gBAAAZ,cAAA,CAACe,uBAAAA,EAAAA;AAAY,oCAAA,GAAGJ,IAAI;oCAAEK,OAAAA,EAAQ;;AADtBL,6BAAAA,EAAAA,IAAAA,CAAKM,KAAK,CAAA;AAIxB,wBAAA;wBAEA,OAAO,IAAA;AACT,oBAAA,CAAA;;;;AA7BCpC,KAAAA,EAAAA,EAAAA,CAAAA;AAkCX;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RoleRow.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n cursor?: string;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n cursor,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n cursor={cursor}\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} variant=\"ghost\" />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n"],"names":["RoleRow","id","name","description","usersCount","icons","rowIndex","canUpdate","cursor","formatMessage","useIntl","editObject","usersCountText","defaultMessage","number","_jsxs","Tr","aria-rowindex","onClick","undefined","_jsx","Td","maxWidth","Typography","ellipsis","textColor","Flex","justifyContent","e","stopPropagation","map","icon","i","Box","paddingLeft","IconButton","variant","label"],"mappings":";;;;AAYA,MAAMA,UAAU,CAAC,EACfC,EAAE,EACFC,IAAI,EACJC,WAAW,EACXC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACO,GAAA;IACb,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,GAAGC,WAAW,GAAGN,KAAAA;AAEvB,IAAA,MAAMO,iBAAiBH,aACrB,CAAA;QACER,EAAI,EAAA,CAAC,wBAAwB,CAAC;QAC9BY,cAAgB,EAAA;KAElB,EAAA;QAAEC,MAAQV,EAAAA;AAAW,KAAA,CAAA;AAGvB,IAAA,qBACEW,IAACC,CAAAA,EAAAA,EAAAA;QACCR,MAAQA,EAAAA,MAAAA;QACRS,eAAeX,EAAAA,QAAAA;;QAGfY,OAASX,EAAAA,SAAAA,GAAYI,UAAWO,CAAAA,OAAO,GAAGC,SAAAA;;0BAE1CC,GAACC,CAAAA,EAAAA,EAAAA;gBAAGC,QAAU,EAAA,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,GAACG,CAAAA,UAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAU,EAAA,YAAA;AAC5BvB,oBAAAA,QAAAA,EAAAA;;;0BAGLkB,GAACC,CAAAA,EAAAA,EAAAA;gBAAGC,QAAU,EAAA,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,GAACG,CAAAA,UAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAU,EAAA,YAAA;AAC5BtB,oBAAAA,QAAAA,EAAAA;;;0BAGLiB,GAACC,CAAAA,EAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,GAACG,CAAAA,UAAAA,EAAAA;oBAAWE,SAAU,EAAA,YAAA;AAAcb,oBAAAA,QAAAA,EAAAA;;;0BAEtCQ,GAACC,CAAAA,EAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,GAACM,CAAAA,IAAAA,EAAAA;oBAAKC,cAAe,EAAA,UAAA;oBAAWT,OAAS,EAAA,CAACU,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;8BAC9DxB,KAAMyB,CAAAA,GAAG,CAAC,CAACC,IAAMC,EAAAA,CAAAA,GAAAA;AAChB,wBAAA,IAAID,IAAM,EAAA;AACR,4BAAA,qBACEX,GAACa,CAAAA,GAAAA,EAAAA;gCAAqBC,WAAaF,EAAAA,CAAAA,KAAM,IAAI,CAAI,GAAA,CAAA;AAC/C,gCAAA,QAAA,gBAAAZ,GAACe,CAAAA,UAAAA,EAAAA;AAAY,oCAAA,GAAGJ,IAAI;oCAAEK,OAAQ,EAAA;;AADtBL,6BAAAA,EAAAA,IAAAA,CAAKM,KAAK,CAAA;AAIxB;wBAEA,OAAO,IAAA;AACT,qBAAA;;;;AA7BCpC,KAAAA,EAAAA,EAAAA,CAAAA;AAkCX;;;;"}
1
+ {"version":3,"file":"RoleRow.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleRow.tsx"],"sourcesContent":["import { Box, Flex, IconButton, IconButtonProps, Td, Tr, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\n\ninterface RoleRowProps extends Pick<AdminRole, 'id' | 'name' | 'description' | 'usersCount'> {\n icons: Array<Required<Pick<IconButtonProps, 'children' | 'label' | 'onClick'>>>;\n rowIndex: number;\n canUpdate?: boolean;\n cursor?: string;\n}\n\nconst RoleRow = ({\n id,\n name,\n description,\n usersCount,\n icons,\n rowIndex,\n canUpdate,\n cursor,\n}: RoleRowProps) => {\n const { formatMessage } = useIntl();\n const [, editObject] = icons;\n\n const usersCountText = formatMessage(\n {\n id: `Roles.RoleRow.user-count`,\n defaultMessage: '{number, plural, =0 {# user} one {# user} other {# users}}',\n },\n { number: usersCount }\n );\n\n return (\n <Tr\n cursor={cursor}\n aria-rowindex={rowIndex}\n key={id}\n // @ts-expect-error – the prop uses `HTMLButtonElement` but we just specify `HTMLElement`\n onClick={canUpdate ? editObject.onClick : undefined}\n >\n <Td maxWidth={`13rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {name}\n </Typography>\n </Td>\n <Td maxWidth={`25rem`}>\n <Typography ellipsis textColor=\"neutral800\">\n {description}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{usersCountText}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"flex-end\" onClick={(e) => e.stopPropagation()}>\n {icons.map((icon, i) => {\n if (icon) {\n return (\n <Box key={icon.label} paddingLeft={i === 0 ? 0 : 1}>\n <IconButton {...icon} variant=\"ghost\" />\n </Box>\n );\n }\n\n return null;\n })}\n </Flex>\n </Td>\n </Tr>\n );\n};\n\nexport { RoleRow };\nexport type { RoleRowProps };\n"],"names":["RoleRow","id","name","description","usersCount","icons","rowIndex","canUpdate","cursor","formatMessage","useIntl","editObject","usersCountText","defaultMessage","number","_jsxs","Tr","aria-rowindex","onClick","undefined","_jsx","Td","maxWidth","Typography","ellipsis","textColor","Flex","justifyContent","e","stopPropagation","map","icon","i","Box","paddingLeft","IconButton","variant","label"],"mappings":";;;;AAYA,MAAMA,UAAU,CAAC,EACfC,EAAE,EACFC,IAAI,EACJC,WAAW,EACXC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACO,GAAA;IACb,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,GAAGC,WAAW,GAAGN,KAAAA;AAEvB,IAAA,MAAMO,iBAAiBH,aAAAA,CACrB;QACER,EAAAA,EAAI,CAAC,wBAAwB,CAAC;QAC9BY,cAAAA,EAAgB;KAClB,EACA;QAAEC,MAAAA,EAAQV;AAAW,KAAA,CAAA;AAGvB,IAAA,qBACEW,IAAA,CAACC,EAAAA,EAAAA;QACCR,MAAAA,EAAQA,MAAAA;QACRS,eAAAA,EAAeX,QAAAA;;QAGfY,OAAAA,EAASX,SAAAA,GAAYI,UAAAA,CAAWO,OAAO,GAAGC,SAAAA;;0BAE1CC,GAAA,CAACC,EAAAA,EAAAA;gBAAGC,QAAAA,EAAU,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,GAAA,CAACG,UAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAAA,EAAU,YAAA;AAC5BvB,oBAAAA,QAAAA,EAAAA;;;0BAGLkB,GAAA,CAACC,EAAAA,EAAAA;gBAAGC,QAAAA,EAAU,CAAC,KAAK,CAAC;AACnB,gBAAA,QAAA,gBAAAF,GAAA,CAACG,UAAAA,EAAAA;oBAAWC,QAAQ,EAAA,IAAA;oBAACC,SAAAA,EAAU,YAAA;AAC5BtB,oBAAAA,QAAAA,EAAAA;;;0BAGLiB,GAAA,CAACC,EAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,GAAA,CAACG,UAAAA,EAAAA;oBAAWE,SAAAA,EAAU,YAAA;AAAcb,oBAAAA,QAAAA,EAAAA;;;0BAEtCQ,GAAA,CAACC,EAAAA,EAAAA;AACC,gBAAA,QAAA,gBAAAD,GAAA,CAACM,IAAAA,EAAAA;oBAAKC,cAAAA,EAAe,UAAA;oBAAWT,OAAAA,EAAS,CAACU,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;8BAC9DxB,KAAAA,CAAMyB,GAAG,CAAC,CAACC,IAAAA,EAAMC,CAAAA,GAAAA;AAChB,wBAAA,IAAID,IAAAA,EAAM;AACR,4BAAA,qBACEX,GAAA,CAACa,GAAAA,EAAAA;gCAAqBC,WAAAA,EAAaF,CAAAA,KAAM,IAAI,CAAA,GAAI,CAAA;AAC/C,gCAAA,QAAA,gBAAAZ,GAAA,CAACe,UAAAA,EAAAA;AAAY,oCAAA,GAAGJ,IAAI;oCAAEK,OAAAA,EAAQ;;AADtBL,6BAAAA,EAAAA,IAAAA,CAAKM,KAAK,CAAA;AAIxB,wBAAA;wBAEA,OAAO,IAAA;AACT,oBAAA,CAAA;;;;AA7BCpC,KAAAA,EAAAA,EAAAA,CAAAA;AAkCX;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RowLabelWithCheckbox.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Checkbox, Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\nimport { firstRowWidth } from '../utils/constants';\n\nimport { CollapseLabel } from './CollapseLabel';\n\ninterface RowLabelWithCheckboxProps {\n children: React.ReactNode;\n checkboxName?: string;\n isActive?: boolean;\n isCollapsable?: boolean;\n isFormDisabled?: boolean;\n label: string;\n onChange: PermissionsDataManagerContextValue['onChangeParentCheckbox'];\n onClick: () => void;\n someChecked?: boolean;\n value: boolean;\n}\n\nconst RowLabelWithCheckbox = ({\n checkboxName = '',\n children,\n isActive = false,\n isCollapsable = false,\n isFormDisabled = false,\n label,\n onChange,\n onClick,\n someChecked = false,\n value,\n}: RowLabelWithCheckboxProps) => {\n const { formatMessage } = useIntl();\n\n const collapseLabelProps = {\n title: label,\n alignItems: 'center',\n $isCollapsable: isCollapsable,\n };\n\n if (isCollapsable) {\n Object.assign(collapseLabelProps, {\n onClick,\n 'aria-expanded': isActive,\n onKeyDown({ key }: React.KeyboardEvent<HTMLDivElement>) {\n if (key === 'Enter' || key === ' ') {\n onClick();\n }\n },\n tabIndex: 0,\n role: 'button',\n });\n }\n\n return (\n <Flex alignItems=\"center\" paddingLeft={6} width={firstRowWidth} shrink={0}>\n <Box paddingRight={2}>\n <Checkbox\n name={checkboxName}\n aria-label={formatMessage(\n {\n id: `Settings.permissions.select-all-by-permission`,\n defaultMessage: 'Select all {label} permissions',\n },\n { label }\n )}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) =>\n onChange({\n target: {\n name: checkboxName,\n value: !!value,\n },\n })\n }\n checked={someChecked ? 'indeterminate' : value}\n />\n </Box>\n <CollapseLabel {...collapseLabelProps}>\n <Typography ellipsis>{label}</Typography>\n {children}\n </CollapseLabel>\n </Flex>\n );\n};\n\nexport { RowLabelWithCheckbox };\nexport type { RowLabelWithCheckboxProps };\n"],"names":["RowLabelWithCheckbox","checkboxName","children","isActive","isCollapsable","isFormDisabled","label","onChange","onClick","someChecked","value","formatMessage","useIntl","collapseLabelProps","title","alignItems","$isCollapsable","Object","assign","onKeyDown","key","tabIndex","role","_jsxs","Flex","paddingLeft","width","firstRowWidth","shrink","_jsx","Box","paddingRight","Checkbox","name","aria-label","id","defaultMessage","disabled","onCheckedChange","target","checked","CollapseLabel","Typography","ellipsis"],"mappings":";;;;;;;;;AAuBMA,MAAAA,oBAAAA,GAAuB,CAAC,EAC5BC,YAAe,GAAA,EAAE,EACjBC,QAAQ,EACRC,QAAAA,GAAW,KAAK,EAChBC,aAAgB,GAAA,KAAK,EACrBC,cAAAA,GAAiB,KAAK,EACtBC,KAAK,EACLC,QAAQ,EACRC,OAAO,EACPC,WAAc,GAAA,KAAK,EACnBC,KAAK,EACqB,GAAA;IAC1B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,MAAMC,kBAAqB,GAAA;QACzBC,KAAOR,EAAAA,KAAAA;QACPS,UAAY,EAAA,QAAA;QACZC,cAAgBZ,EAAAA;AAClB,KAAA;AAEA,IAAA,IAAIA,aAAe,EAAA;QACjBa,MAAOC,CAAAA,MAAM,CAACL,kBAAoB,EAAA;AAChCL,YAAAA,OAAAA;YACA,eAAiBL,EAAAA,QAAAA;YACjBgB,SAAU,CAAA,CAAA,EAAEC,GAAG,EAAuC,EAAA;gBACpD,IAAIA,GAAAA,KAAQ,OAAWA,IAAAA,GAAAA,KAAQ,GAAK,EAAA;AAClCZ,oBAAAA,OAAAA,EAAAA;AACF;AACF,aAAA;YACAa,QAAU,EAAA,CAAA;YACVC,IAAM,EAAA;AACR,SAAA,CAAA;AACF;AAEA,IAAA,qBACEC,eAACC,CAAAA,iBAAAA,EAAAA;QAAKT,UAAW,EAAA,QAAA;QAASU,WAAa,EAAA,CAAA;QAAGC,KAAOC,EAAAA,uBAAAA;QAAeC,MAAQ,EAAA,CAAA;;0BACtEC,cAACC,CAAAA,gBAAAA,EAAAA;gBAAIC,YAAc,EAAA,CAAA;AACjB,gBAAA,QAAA,gBAAAF,cAACG,CAAAA,qBAAAA,EAAAA;oBACCC,IAAMhC,EAAAA,YAAAA;AACNiC,oBAAAA,YAAAA,EAAYvB,aACV,CAAA;wBACEwB,EAAI,EAAA,CAAC,6CAA6C,CAAC;wBACnDC,cAAgB,EAAA;qBAElB,EAAA;AAAE9B,wBAAAA;AAAM,qBAAA,CAAA;oBAEV+B,QAAUhC,EAAAA,cAAAA;;oBAEViC,eAAiB,EAAA,CAAC5B,QAChBH,QAAS,CAAA;4BACPgC,MAAQ,EAAA;gCACNN,IAAMhC,EAAAA,YAAAA;AACNS,gCAAAA,KAAAA,EAAO,CAAC,CAACA;AACX;AACF,yBAAA,CAAA;AAEF8B,oBAAAA,OAAAA,EAAS/B,cAAc,eAAkBC,GAAAA;;;0BAG7Ca,eAACkB,CAAAA,2BAAAA,EAAAA;AAAe,gBAAA,GAAG5B,kBAAkB;;kCACnCgB,cAACa,CAAAA,uBAAAA,EAAAA;wBAAWC,QAAQ,EAAA,IAAA;AAAErC,wBAAAA,QAAAA,EAAAA;;AACrBJ,oBAAAA;;;;;AAIT;;;;"}
1
+ {"version":3,"file":"RowLabelWithCheckbox.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Checkbox, Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\nimport { firstRowWidth } from '../utils/constants';\n\nimport { CollapseLabel } from './CollapseLabel';\n\ninterface RowLabelWithCheckboxProps {\n children: React.ReactNode;\n checkboxName?: string;\n isActive?: boolean;\n isCollapsable?: boolean;\n isFormDisabled?: boolean;\n label: string;\n onChange: PermissionsDataManagerContextValue['onChangeParentCheckbox'];\n onClick: () => void;\n someChecked?: boolean;\n value: boolean;\n}\n\nconst RowLabelWithCheckbox = ({\n checkboxName = '',\n children,\n isActive = false,\n isCollapsable = false,\n isFormDisabled = false,\n label,\n onChange,\n onClick,\n someChecked = false,\n value,\n}: RowLabelWithCheckboxProps) => {\n const { formatMessage } = useIntl();\n\n const collapseLabelProps = {\n title: label,\n alignItems: 'center',\n $isCollapsable: isCollapsable,\n };\n\n if (isCollapsable) {\n Object.assign(collapseLabelProps, {\n onClick,\n 'aria-expanded': isActive,\n onKeyDown({ key }: React.KeyboardEvent<HTMLDivElement>) {\n if (key === 'Enter' || key === ' ') {\n onClick();\n }\n },\n tabIndex: 0,\n role: 'button',\n });\n }\n\n return (\n <Flex alignItems=\"center\" paddingLeft={6} width={firstRowWidth} shrink={0}>\n <Box paddingRight={2}>\n <Checkbox\n name={checkboxName}\n aria-label={formatMessage(\n {\n id: `Settings.permissions.select-all-by-permission`,\n defaultMessage: 'Select all {label} permissions',\n },\n { label }\n )}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) =>\n onChange({\n target: {\n name: checkboxName,\n value: !!value,\n },\n })\n }\n checked={someChecked ? 'indeterminate' : value}\n />\n </Box>\n <CollapseLabel {...collapseLabelProps}>\n <Typography ellipsis>{label}</Typography>\n {children}\n </CollapseLabel>\n </Flex>\n );\n};\n\nexport { RowLabelWithCheckbox };\nexport type { RowLabelWithCheckboxProps };\n"],"names":["RowLabelWithCheckbox","checkboxName","children","isActive","isCollapsable","isFormDisabled","label","onChange","onClick","someChecked","value","formatMessage","useIntl","collapseLabelProps","title","alignItems","$isCollapsable","Object","assign","onKeyDown","key","tabIndex","role","_jsxs","Flex","paddingLeft","width","firstRowWidth","shrink","_jsx","Box","paddingRight","Checkbox","name","aria-label","id","defaultMessage","disabled","onCheckedChange","target","checked","CollapseLabel","Typography","ellipsis"],"mappings":";;;;;;;;;AAuBA,MAAMA,oBAAAA,GAAuB,CAAC,EAC5BC,YAAAA,GAAe,EAAE,EACjBC,QAAQ,EACRC,QAAAA,GAAW,KAAK,EAChBC,aAAAA,GAAgB,KAAK,EACrBC,cAAAA,GAAiB,KAAK,EACtBC,KAAK,EACLC,QAAQ,EACRC,OAAO,EACPC,WAAAA,GAAc,KAAK,EACnBC,KAAK,EACqB,GAAA;IAC1B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,MAAMC,kBAAAA,GAAqB;QACzBC,KAAAA,EAAOR,KAAAA;QACPS,UAAAA,EAAY,QAAA;QACZC,cAAAA,EAAgBZ;AAClB,KAAA;AAEA,IAAA,IAAIA,aAAAA,EAAe;QACjBa,MAAAA,CAAOC,MAAM,CAACL,kBAAAA,EAAoB;AAChCL,YAAAA,OAAAA;YACA,eAAA,EAAiBL,QAAAA;YACjBgB,SAAAA,CAAAA,CAAU,EAAEC,GAAG,EAAuC,EAAA;gBACpD,IAAIA,GAAAA,KAAQ,OAAA,IAAWA,GAAAA,KAAQ,GAAA,EAAK;AAClCZ,oBAAAA,OAAAA,EAAAA;AACF,gBAAA;AACF,YAAA,CAAA;YACAa,QAAAA,EAAU,CAAA;YACVC,IAAAA,EAAM;AACR,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,qBACEC,eAAA,CAACC,iBAAAA,EAAAA;QAAKT,UAAAA,EAAW,QAAA;QAASU,WAAAA,EAAa,CAAA;QAAGC,KAAAA,EAAOC,uBAAAA;QAAeC,MAAAA,EAAQ,CAAA;;0BACtEC,cAAA,CAACC,gBAAAA,EAAAA;gBAAIC,YAAAA,EAAc,CAAA;AACjB,gBAAA,QAAA,gBAAAF,cAAA,CAACG,qBAAAA,EAAAA;oBACCC,IAAAA,EAAMhC,YAAAA;AACNiC,oBAAAA,YAAAA,EAAYvB,aAAAA,CACV;wBACEwB,EAAAA,EAAI,CAAC,6CAA6C,CAAC;wBACnDC,cAAAA,EAAgB;qBAClB,EACA;AAAE9B,wBAAAA;AAAM,qBAAA,CAAA;oBAEV+B,QAAAA,EAAUhC,cAAAA;;oBAEViC,eAAAA,EAAiB,CAAC5B,QAChBH,QAAAA,CAAS;4BACPgC,MAAAA,EAAQ;gCACNN,IAAAA,EAAMhC,YAAAA;AACNS,gCAAAA,KAAAA,EAAO,CAAC,CAACA;AACX;AACF,yBAAA,CAAA;AAEF8B,oBAAAA,OAAAA,EAAS/B,cAAc,eAAA,GAAkBC;;;0BAG7Ca,eAAA,CAACkB,2BAAAA,EAAAA;AAAe,gBAAA,GAAG5B,kBAAkB;;kCACnCgB,cAAA,CAACa,uBAAAA,EAAAA;wBAAWC,QAAQ,EAAA,IAAA;AAAErC,wBAAAA,QAAAA,EAAAA;;AACrBJ,oBAAAA;;;;;AAIT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RowLabelWithCheckbox.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Checkbox, Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\nimport { firstRowWidth } from '../utils/constants';\n\nimport { CollapseLabel } from './CollapseLabel';\n\ninterface RowLabelWithCheckboxProps {\n children: React.ReactNode;\n checkboxName?: string;\n isActive?: boolean;\n isCollapsable?: boolean;\n isFormDisabled?: boolean;\n label: string;\n onChange: PermissionsDataManagerContextValue['onChangeParentCheckbox'];\n onClick: () => void;\n someChecked?: boolean;\n value: boolean;\n}\n\nconst RowLabelWithCheckbox = ({\n checkboxName = '',\n children,\n isActive = false,\n isCollapsable = false,\n isFormDisabled = false,\n label,\n onChange,\n onClick,\n someChecked = false,\n value,\n}: RowLabelWithCheckboxProps) => {\n const { formatMessage } = useIntl();\n\n const collapseLabelProps = {\n title: label,\n alignItems: 'center',\n $isCollapsable: isCollapsable,\n };\n\n if (isCollapsable) {\n Object.assign(collapseLabelProps, {\n onClick,\n 'aria-expanded': isActive,\n onKeyDown({ key }: React.KeyboardEvent<HTMLDivElement>) {\n if (key === 'Enter' || key === ' ') {\n onClick();\n }\n },\n tabIndex: 0,\n role: 'button',\n });\n }\n\n return (\n <Flex alignItems=\"center\" paddingLeft={6} width={firstRowWidth} shrink={0}>\n <Box paddingRight={2}>\n <Checkbox\n name={checkboxName}\n aria-label={formatMessage(\n {\n id: `Settings.permissions.select-all-by-permission`,\n defaultMessage: 'Select all {label} permissions',\n },\n { label }\n )}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) =>\n onChange({\n target: {\n name: checkboxName,\n value: !!value,\n },\n })\n }\n checked={someChecked ? 'indeterminate' : value}\n />\n </Box>\n <CollapseLabel {...collapseLabelProps}>\n <Typography ellipsis>{label}</Typography>\n {children}\n </CollapseLabel>\n </Flex>\n );\n};\n\nexport { RowLabelWithCheckbox };\nexport type { RowLabelWithCheckboxProps };\n"],"names":["RowLabelWithCheckbox","checkboxName","children","isActive","isCollapsable","isFormDisabled","label","onChange","onClick","someChecked","value","formatMessage","useIntl","collapseLabelProps","title","alignItems","$isCollapsable","Object","assign","onKeyDown","key","tabIndex","role","_jsxs","Flex","paddingLeft","width","firstRowWidth","shrink","_jsx","Box","paddingRight","Checkbox","name","aria-label","id","defaultMessage","disabled","onCheckedChange","target","checked","CollapseLabel","Typography","ellipsis"],"mappings":";;;;;;;AAuBMA,MAAAA,oBAAAA,GAAuB,CAAC,EAC5BC,YAAe,GAAA,EAAE,EACjBC,QAAQ,EACRC,QAAAA,GAAW,KAAK,EAChBC,aAAgB,GAAA,KAAK,EACrBC,cAAAA,GAAiB,KAAK,EACtBC,KAAK,EACLC,QAAQ,EACRC,OAAO,EACPC,WAAc,GAAA,KAAK,EACnBC,KAAK,EACqB,GAAA;IAC1B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,MAAMC,kBAAqB,GAAA;QACzBC,KAAOR,EAAAA,KAAAA;QACPS,UAAY,EAAA,QAAA;QACZC,cAAgBZ,EAAAA;AAClB,KAAA;AAEA,IAAA,IAAIA,aAAe,EAAA;QACjBa,MAAOC,CAAAA,MAAM,CAACL,kBAAoB,EAAA;AAChCL,YAAAA,OAAAA;YACA,eAAiBL,EAAAA,QAAAA;YACjBgB,SAAU,CAAA,CAAA,EAAEC,GAAG,EAAuC,EAAA;gBACpD,IAAIA,GAAAA,KAAQ,OAAWA,IAAAA,GAAAA,KAAQ,GAAK,EAAA;AAClCZ,oBAAAA,OAAAA,EAAAA;AACF;AACF,aAAA;YACAa,QAAU,EAAA,CAAA;YACVC,IAAM,EAAA;AACR,SAAA,CAAA;AACF;AAEA,IAAA,qBACEC,IAACC,CAAAA,IAAAA,EAAAA;QAAKT,UAAW,EAAA,QAAA;QAASU,WAAa,EAAA,CAAA;QAAGC,KAAOC,EAAAA,aAAAA;QAAeC,MAAQ,EAAA,CAAA;;0BACtEC,GAACC,CAAAA,GAAAA,EAAAA;gBAAIC,YAAc,EAAA,CAAA;AACjB,gBAAA,QAAA,gBAAAF,GAACG,CAAAA,QAAAA,EAAAA;oBACCC,IAAMhC,EAAAA,YAAAA;AACNiC,oBAAAA,YAAAA,EAAYvB,aACV,CAAA;wBACEwB,EAAI,EAAA,CAAC,6CAA6C,CAAC;wBACnDC,cAAgB,EAAA;qBAElB,EAAA;AAAE9B,wBAAAA;AAAM,qBAAA,CAAA;oBAEV+B,QAAUhC,EAAAA,cAAAA;;oBAEViC,eAAiB,EAAA,CAAC5B,QAChBH,QAAS,CAAA;4BACPgC,MAAQ,EAAA;gCACNN,IAAMhC,EAAAA,YAAAA;AACNS,gCAAAA,KAAAA,EAAO,CAAC,CAACA;AACX;AACF,yBAAA,CAAA;AAEF8B,oBAAAA,OAAAA,EAAS/B,cAAc,eAAkBC,GAAAA;;;0BAG7Ca,IAACkB,CAAAA,aAAAA,EAAAA;AAAe,gBAAA,GAAG5B,kBAAkB;;kCACnCgB,GAACa,CAAAA,UAAAA,EAAAA;wBAAWC,QAAQ,EAAA,IAAA;AAAErC,wBAAAA,QAAAA,EAAAA;;AACrBJ,oBAAAA;;;;;AAIT;;;;"}
1
+ {"version":3,"file":"RowLabelWithCheckbox.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Checkbox, Box, Flex, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\nimport { firstRowWidth } from '../utils/constants';\n\nimport { CollapseLabel } from './CollapseLabel';\n\ninterface RowLabelWithCheckboxProps {\n children: React.ReactNode;\n checkboxName?: string;\n isActive?: boolean;\n isCollapsable?: boolean;\n isFormDisabled?: boolean;\n label: string;\n onChange: PermissionsDataManagerContextValue['onChangeParentCheckbox'];\n onClick: () => void;\n someChecked?: boolean;\n value: boolean;\n}\n\nconst RowLabelWithCheckbox = ({\n checkboxName = '',\n children,\n isActive = false,\n isCollapsable = false,\n isFormDisabled = false,\n label,\n onChange,\n onClick,\n someChecked = false,\n value,\n}: RowLabelWithCheckboxProps) => {\n const { formatMessage } = useIntl();\n\n const collapseLabelProps = {\n title: label,\n alignItems: 'center',\n $isCollapsable: isCollapsable,\n };\n\n if (isCollapsable) {\n Object.assign(collapseLabelProps, {\n onClick,\n 'aria-expanded': isActive,\n onKeyDown({ key }: React.KeyboardEvent<HTMLDivElement>) {\n if (key === 'Enter' || key === ' ') {\n onClick();\n }\n },\n tabIndex: 0,\n role: 'button',\n });\n }\n\n return (\n <Flex alignItems=\"center\" paddingLeft={6} width={firstRowWidth} shrink={0}>\n <Box paddingRight={2}>\n <Checkbox\n name={checkboxName}\n aria-label={formatMessage(\n {\n id: `Settings.permissions.select-all-by-permission`,\n defaultMessage: 'Select all {label} permissions',\n },\n { label }\n )}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) =>\n onChange({\n target: {\n name: checkboxName,\n value: !!value,\n },\n })\n }\n checked={someChecked ? 'indeterminate' : value}\n />\n </Box>\n <CollapseLabel {...collapseLabelProps}>\n <Typography ellipsis>{label}</Typography>\n {children}\n </CollapseLabel>\n </Flex>\n );\n};\n\nexport { RowLabelWithCheckbox };\nexport type { RowLabelWithCheckboxProps };\n"],"names":["RowLabelWithCheckbox","checkboxName","children","isActive","isCollapsable","isFormDisabled","label","onChange","onClick","someChecked","value","formatMessage","useIntl","collapseLabelProps","title","alignItems","$isCollapsable","Object","assign","onKeyDown","key","tabIndex","role","_jsxs","Flex","paddingLeft","width","firstRowWidth","shrink","_jsx","Box","paddingRight","Checkbox","name","aria-label","id","defaultMessage","disabled","onCheckedChange","target","checked","CollapseLabel","Typography","ellipsis"],"mappings":";;;;;;;AAuBA,MAAMA,oBAAAA,GAAuB,CAAC,EAC5BC,YAAAA,GAAe,EAAE,EACjBC,QAAQ,EACRC,QAAAA,GAAW,KAAK,EAChBC,aAAAA,GAAgB,KAAK,EACrBC,cAAAA,GAAiB,KAAK,EACtBC,KAAK,EACLC,QAAQ,EACRC,OAAO,EACPC,WAAAA,GAAc,KAAK,EACnBC,KAAK,EACqB,GAAA;IAC1B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,MAAMC,kBAAAA,GAAqB;QACzBC,KAAAA,EAAOR,KAAAA;QACPS,UAAAA,EAAY,QAAA;QACZC,cAAAA,EAAgBZ;AAClB,KAAA;AAEA,IAAA,IAAIA,aAAAA,EAAe;QACjBa,MAAAA,CAAOC,MAAM,CAACL,kBAAAA,EAAoB;AAChCL,YAAAA,OAAAA;YACA,eAAA,EAAiBL,QAAAA;YACjBgB,SAAAA,CAAAA,CAAU,EAAEC,GAAG,EAAuC,EAAA;gBACpD,IAAIA,GAAAA,KAAQ,OAAA,IAAWA,GAAAA,KAAQ,GAAA,EAAK;AAClCZ,oBAAAA,OAAAA,EAAAA;AACF,gBAAA;AACF,YAAA,CAAA;YACAa,QAAAA,EAAU,CAAA;YACVC,IAAAA,EAAM;AACR,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,qBACEC,IAAA,CAACC,IAAAA,EAAAA;QAAKT,UAAAA,EAAW,QAAA;QAASU,WAAAA,EAAa,CAAA;QAAGC,KAAAA,EAAOC,aAAAA;QAAeC,MAAAA,EAAQ,CAAA;;0BACtEC,GAAA,CAACC,GAAAA,EAAAA;gBAAIC,YAAAA,EAAc,CAAA;AACjB,gBAAA,QAAA,gBAAAF,GAAA,CAACG,QAAAA,EAAAA;oBACCC,IAAAA,EAAMhC,YAAAA;AACNiC,oBAAAA,YAAAA,EAAYvB,aAAAA,CACV;wBACEwB,EAAAA,EAAI,CAAC,6CAA6C,CAAC;wBACnDC,cAAAA,EAAgB;qBAClB,EACA;AAAE9B,wBAAAA;AAAM,qBAAA,CAAA;oBAEV+B,QAAAA,EAAUhC,cAAAA;;oBAEViC,eAAAA,EAAiB,CAAC5B,QAChBH,QAAAA,CAAS;4BACPgC,MAAAA,EAAQ;gCACNN,IAAAA,EAAMhC,YAAAA;AACNS,gCAAAA,KAAAA,EAAO,CAAC,CAACA;AACX;AACF,yBAAA,CAAA;AAEF8B,oBAAAA,OAAAA,EAAS/B,cAAc,eAAA,GAAkBC;;;0BAG7Ca,IAAA,CAACkB,aAAAA,EAAAA;AAAe,gBAAA,GAAG5B,kBAAkB;;kCACnCgB,GAAA,CAACa,UAAAA,EAAAA;wBAAWC,QAAQ,EAAA,IAAA;AAAErC,wBAAAA,QAAAA,EAAAA;;AACrBJ,oBAAAA;;;;;AAIT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePermissionsDataManager.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.ts"],"sourcesContent":["import { createContext } from '@radix-ui/react-context';\n\nimport { Condition } from '../../../../../../../shared/contracts/permissions';\n\nimport type {\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n State,\n} from '../components/Permissions';\n\n// Note: I had to guess most of these types based on the name and usage, but I actually don't\n// know if they are correct, because the usage is very generic. Feel free to correct them if\n// they create problems.\nexport interface PermissionsDataManagerContextValue extends Pick<State, 'modifiedData'> {\n availableConditions: Condition[];\n onChangeCollectionTypeLeftActionRowCheckbox: (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => void;\n onChangeConditions: (conditions: OnChangeConditionsAction['conditions']) => void;\n onChangeSimpleCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeParentCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeCollectionTypeGlobalActionCheckbox: (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => void;\n}\n\nconst [PermissionsDataManagerProvider, usePermissionsDataManagerContext] =\n createContext<PermissionsDataManagerContextValue>('PermissionsDataManager');\n\nexport const usePermissionsDataManager = () =>\n usePermissionsDataManagerContext('usePermissionsDataManager');\n\nexport { PermissionsDataManagerProvider };\n"],"names":["PermissionsDataManagerProvider","usePermissionsDataManagerContext","createContext","usePermissionsDataManager"],"mappings":";;;;AAgCA,MAAM,CAACA,8BAAAA,EAAgCC,gCAAiC,CAAA,GACtEC,0BAAkD,CAAA,wBAAA;AAEvCC,MAAAA,yBAAAA,GAA4B,IACvCF,gCAAAA,CAAiC,2BAA6B;;;;;"}
1
+ {"version":3,"file":"usePermissionsDataManager.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.ts"],"sourcesContent":["import { createContext } from '@radix-ui/react-context';\n\nimport { Condition } from '../../../../../../../shared/contracts/permissions';\n\nimport type {\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n State,\n} from '../components/Permissions';\n\n// Note: I had to guess most of these types based on the name and usage, but I actually don't\n// know if they are correct, because the usage is very generic. Feel free to correct them if\n// they create problems.\nexport interface PermissionsDataManagerContextValue extends Pick<State, 'modifiedData'> {\n availableConditions: Condition[];\n onChangeCollectionTypeLeftActionRowCheckbox: (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => void;\n onChangeConditions: (conditions: OnChangeConditionsAction['conditions']) => void;\n onChangeSimpleCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeParentCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeCollectionTypeGlobalActionCheckbox: (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => void;\n}\n\nconst [PermissionsDataManagerProvider, usePermissionsDataManagerContext] =\n createContext<PermissionsDataManagerContextValue>('PermissionsDataManager');\n\nexport const usePermissionsDataManager = () =>\n usePermissionsDataManagerContext('usePermissionsDataManager');\n\nexport { PermissionsDataManagerProvider };\n"],"names":["PermissionsDataManagerProvider","usePermissionsDataManagerContext","createContext","usePermissionsDataManager"],"mappings":";;;;AAgCA,MAAM,CAACA,8BAAAA,EAAgCC,gCAAAA,CAAiC,GACtEC,0BAAAA,CAAkD,wBAAA;AAE7C,MAAMC,yBAAAA,GAA4B,IACvCF,gCAAAA,CAAiC,2BAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePermissionsDataManager.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.ts"],"sourcesContent":["import { createContext } from '@radix-ui/react-context';\n\nimport { Condition } from '../../../../../../../shared/contracts/permissions';\n\nimport type {\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n State,\n} from '../components/Permissions';\n\n// Note: I had to guess most of these types based on the name and usage, but I actually don't\n// know if they are correct, because the usage is very generic. Feel free to correct them if\n// they create problems.\nexport interface PermissionsDataManagerContextValue extends Pick<State, 'modifiedData'> {\n availableConditions: Condition[];\n onChangeCollectionTypeLeftActionRowCheckbox: (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => void;\n onChangeConditions: (conditions: OnChangeConditionsAction['conditions']) => void;\n onChangeSimpleCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeParentCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeCollectionTypeGlobalActionCheckbox: (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => void;\n}\n\nconst [PermissionsDataManagerProvider, usePermissionsDataManagerContext] =\n createContext<PermissionsDataManagerContextValue>('PermissionsDataManager');\n\nexport const usePermissionsDataManager = () =>\n usePermissionsDataManagerContext('usePermissionsDataManager');\n\nexport { PermissionsDataManagerProvider };\n"],"names":["PermissionsDataManagerProvider","usePermissionsDataManagerContext","createContext","usePermissionsDataManager"],"mappings":";;AAgCA,MAAM,CAACA,8BAAAA,EAAgCC,gCAAiC,CAAA,GACtEC,aAAkD,CAAA,wBAAA;AAEvCC,MAAAA,yBAAAA,GAA4B,IACvCF,gCAAAA,CAAiC,2BAA6B;;;;"}
1
+ {"version":3,"file":"usePermissionsDataManager.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.ts"],"sourcesContent":["import { createContext } from '@radix-ui/react-context';\n\nimport { Condition } from '../../../../../../../shared/contracts/permissions';\n\nimport type {\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n State,\n} from '../components/Permissions';\n\n// Note: I had to guess most of these types based on the name and usage, but I actually don't\n// know if they are correct, because the usage is very generic. Feel free to correct them if\n// they create problems.\nexport interface PermissionsDataManagerContextValue extends Pick<State, 'modifiedData'> {\n availableConditions: Condition[];\n onChangeCollectionTypeLeftActionRowCheckbox: (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => void;\n onChangeConditions: (conditions: OnChangeConditionsAction['conditions']) => void;\n onChangeSimpleCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeParentCheckbox: (event: { target: { name: string; value: boolean } }) => void;\n onChangeCollectionTypeGlobalActionCheckbox: (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => void;\n}\n\nconst [PermissionsDataManagerProvider, usePermissionsDataManagerContext] =\n createContext<PermissionsDataManagerContextValue>('PermissionsDataManager');\n\nexport const usePermissionsDataManager = () =>\n usePermissionsDataManagerContext('usePermissionsDataManager');\n\nexport { PermissionsDataManagerProvider };\n"],"names":["PermissionsDataManagerProvider","usePermissionsDataManagerContext","createContext","usePermissionsDataManager"],"mappings":";;AAgCA,MAAM,CAACA,8BAAAA,EAAgCC,gCAAAA,CAAiC,GACtEC,aAAAA,CAAkD,wBAAA;AAE7C,MAAMC,yBAAAA,GAA4B,IACvCF,gCAAAA,CAAiC,2BAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/constants.ts"],"sourcesContent":["export const cellWidth = `12rem`;\nexport const firstRowWidth = `20rem`;\nexport const rowHeight = `5.3rem`;\n"],"names":["cellWidth","firstRowWidth","rowHeight"],"mappings":";;AAAaA,MAAAA,SAAAA,GAAY,CAAC,KAAK;AAClBC,MAAAA,aAAAA,GAAgB,CAAC,KAAK;AACtBC,MAAAA,SAAAA,GAAY,CAAC,MAAM;;;;;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/constants.ts"],"sourcesContent":["export const cellWidth = `12rem`;\nexport const firstRowWidth = `20rem`;\nexport const rowHeight = `5.3rem`;\n"],"names":["cellWidth","firstRowWidth","rowHeight"],"mappings":";;AAAO,MAAMA,SAAAA,GAAY,CAAC,KAAK;AACxB,MAAMC,aAAAA,GAAgB,CAAC,KAAK;AAC5B,MAAMC,SAAAA,GAAY,CAAC,MAAM;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/constants.ts"],"sourcesContent":["export const cellWidth = `12rem`;\nexport const firstRowWidth = `20rem`;\nexport const rowHeight = `5.3rem`;\n"],"names":["cellWidth","firstRowWidth","rowHeight"],"mappings":"AAAaA,MAAAA,SAAAA,GAAY,CAAC,KAAK;AAClBC,MAAAA,aAAAA,GAAgB,CAAC,KAAK;AACtBC,MAAAA,SAAAA,GAAY,CAAC,MAAM;;;;"}
1
+ {"version":3,"file":"constants.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/constants.ts"],"sourcesContent":["export const cellWidth = `12rem`;\nexport const firstRowWidth = `20rem`;\nexport const rowHeight = `5.3rem`;\n"],"names":["cellWidth","firstRowWidth","rowHeight"],"mappings":"AAAO,MAAMA,SAAAA,GAAY,CAAC,KAAK;AACxB,MAAMC,aAAAA,GAAgB,CAAC,KAAK;AAC5B,MAAMC,SAAAA,GAAY,CAAC,MAAM;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createArrayOfValues.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.ts"],"sourcesContent":["import { Flat, flattenDeep } from '../../../../../utils/arrays';\nimport { isObject } from '../../../../../utils/objects';\n\nconst createArrayOfValues = <TData>(obj: unknown): Array<Flat<TData>> => {\n if (!isObject(obj)) {\n return [];\n }\n\n return flattenDeep(\n Object.values(obj).map((value) => {\n if (isObject(value)) {\n return createArrayOfValues(value);\n }\n\n return value;\n })\n );\n};\n\nexport { createArrayOfValues };\n"],"names":["createArrayOfValues","obj","isObject","flattenDeep","Object","values","map","value"],"mappings":";;;;;AAGA,MAAMA,sBAAsB,CAAQC,GAAAA,GAAAA;IAClC,IAAI,CAACC,iBAASD,GAAM,CAAA,EAAA;AAClB,QAAA,OAAO,EAAE;AACX;AAEA,IAAA,OAAOE,mBACLC,MAAOC,CAAAA,MAAM,CAACJ,GAAKK,CAAAA,CAAAA,GAAG,CAAC,CAACC,KAAAA,GAAAA;AACtB,QAAA,IAAIL,iBAASK,KAAQ,CAAA,EAAA;AACnB,YAAA,OAAOP,mBAAoBO,CAAAA,KAAAA,CAAAA;AAC7B;QAEA,OAAOA,KAAAA;AACT,KAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"createArrayOfValues.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.ts"],"sourcesContent":["import { Flat, flattenDeep } from '../../../../../utils/arrays';\nimport { isObject } from '../../../../../utils/objects';\n\nconst createArrayOfValues = <TData>(obj: unknown): Array<Flat<TData>> => {\n if (!isObject(obj)) {\n return [];\n }\n\n return flattenDeep(\n Object.values(obj).map((value) => {\n if (isObject(value)) {\n return createArrayOfValues(value);\n }\n\n return value;\n })\n );\n};\n\nexport { createArrayOfValues };\n"],"names":["createArrayOfValues","obj","isObject","flattenDeep","Object","values","map","value"],"mappings":";;;;;AAGA,MAAMA,sBAAsB,CAAQC,GAAAA,GAAAA;IAClC,IAAI,CAACC,iBAASD,GAAAA,CAAAA,EAAM;AAClB,QAAA,OAAO,EAAE;AACX,IAAA;AAEA,IAAA,OAAOE,mBACLC,MAAAA,CAAOC,MAAM,CAACJ,GAAAA,CAAAA,CAAKK,GAAG,CAAC,CAACC,KAAAA,GAAAA;AACtB,QAAA,IAAIL,iBAASK,KAAAA,CAAAA,EAAQ;AACnB,YAAA,OAAOP,mBAAAA,CAAoBO,KAAAA,CAAAA;AAC7B,QAAA;QAEA,OAAOA,KAAAA;AACT,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createArrayOfValues.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.ts"],"sourcesContent":["import { Flat, flattenDeep } from '../../../../../utils/arrays';\nimport { isObject } from '../../../../../utils/objects';\n\nconst createArrayOfValues = <TData>(obj: unknown): Array<Flat<TData>> => {\n if (!isObject(obj)) {\n return [];\n }\n\n return flattenDeep(\n Object.values(obj).map((value) => {\n if (isObject(value)) {\n return createArrayOfValues(value);\n }\n\n return value;\n })\n );\n};\n\nexport { createArrayOfValues };\n"],"names":["createArrayOfValues","obj","isObject","flattenDeep","Object","values","map","value"],"mappings":";;;AAGA,MAAMA,sBAAsB,CAAQC,GAAAA,GAAAA;IAClC,IAAI,CAACC,SAASD,GAAM,CAAA,EAAA;AAClB,QAAA,OAAO,EAAE;AACX;AAEA,IAAA,OAAOE,YACLC,MAAOC,CAAAA,MAAM,CAACJ,GAAKK,CAAAA,CAAAA,GAAG,CAAC,CAACC,KAAAA,GAAAA;AACtB,QAAA,IAAIL,SAASK,KAAQ,CAAA,EAAA;AACnB,YAAA,OAAOP,mBAAoBO,CAAAA,KAAAA,CAAAA;AAC7B;QAEA,OAAOA,KAAAA;AACT,KAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"createArrayOfValues.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.ts"],"sourcesContent":["import { Flat, flattenDeep } from '../../../../../utils/arrays';\nimport { isObject } from '../../../../../utils/objects';\n\nconst createArrayOfValues = <TData>(obj: unknown): Array<Flat<TData>> => {\n if (!isObject(obj)) {\n return [];\n }\n\n return flattenDeep(\n Object.values(obj).map((value) => {\n if (isObject(value)) {\n return createArrayOfValues(value);\n }\n\n return value;\n })\n );\n};\n\nexport { createArrayOfValues };\n"],"names":["createArrayOfValues","obj","isObject","flattenDeep","Object","values","map","value"],"mappings":";;;AAGA,MAAMA,sBAAsB,CAAQC,GAAAA,GAAAA;IAClC,IAAI,CAACC,SAASD,GAAAA,CAAAA,EAAM;AAClB,QAAA,OAAO,EAAE;AACX,IAAA;AAEA,IAAA,OAAOE,YACLC,MAAAA,CAAOC,MAAM,CAACJ,GAAAA,CAAAA,CAAKK,GAAG,CAAC,CAACC,KAAAA,GAAAA;AACtB,QAAA,IAAIL,SAASK,KAAAA,CAAAA,EAAQ;AACnB,YAAA,OAAOP,mBAAAA,CAAoBO,KAAAA,CAAAA;AAC7B,QAAA;QAEA,OAAOA,KAAAA;AACT,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"difference.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/difference.ts"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport isObject from 'lodash/isObject';\nimport transform from 'lodash/transform';\n\ntype ObjectDiff<T> = {\n [P in keyof T]?: T[P] extends Record<string, unknown> ? ObjectDiff<T[P]> : T[P];\n};\n\nfunction difference<T extends Record<string, unknown>>(object: T, base: T): ObjectDiff<T> {\n function changes(object: T, base: T): ObjectDiff<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return transform(object, (result, value: any, key: keyof ObjectDiff<T>) => {\n if (!isEqual(value, base[key])) {\n result[key] =\n isObject(value) && isObject(base[key]) ? changes(value as T, base[key] as T) : value;\n }\n return result;\n });\n }\n\n return changes(object, base);\n}\n\nexport { difference };\n"],"names":["difference","object","base","changes","transform","result","value","key","isEqual","isObject"],"mappings":";;;;;;AAQA,SAASA,UAAAA,CAA8CC,MAAS,EAAEC,IAAO,EAAA;IACvE,SAASC,OAAAA,CAAQF,MAAS,EAAEC,IAAO,EAAA;;AAEjC,QAAA,OAAOE,SAAUH,CAAAA,MAAAA,EAAQ,CAACI,MAAAA,EAAQC,KAAYC,EAAAA,GAAAA,GAAAA;AAC5C,YAAA,IAAI,CAACC,OAAQF,CAAAA,KAAAA,EAAOJ,IAAI,CAACK,IAAI,CAAG,EAAA;AAC9BF,gBAAAA,MAAM,CAACE,GAAAA,CAAI,GACTE,QAAAA,CAASH,UAAUG,QAASP,CAAAA,IAAI,CAACK,GAAAA,CAAI,IAAIJ,OAAQG,CAAAA,KAAAA,EAAYJ,IAAI,CAACK,IAAI,CAASD,GAAAA,KAAAA;AACnF;YACA,OAAOD,MAAAA;AACT,SAAA,CAAA;AACF;AAEA,IAAA,OAAOF,QAAQF,MAAQC,EAAAA,IAAAA,CAAAA;AACzB;;;;"}
1
+ {"version":3,"file":"difference.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/difference.ts"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport isObject from 'lodash/isObject';\nimport transform from 'lodash/transform';\n\ntype ObjectDiff<T> = {\n [P in keyof T]?: T[P] extends Record<string, unknown> ? ObjectDiff<T[P]> : T[P];\n};\n\nfunction difference<T extends Record<string, unknown>>(object: T, base: T): ObjectDiff<T> {\n function changes(object: T, base: T): ObjectDiff<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return transform(object, (result, value: any, key: keyof ObjectDiff<T>) => {\n if (!isEqual(value, base[key])) {\n result[key] =\n isObject(value) && isObject(base[key]) ? changes(value as T, base[key] as T) : value;\n }\n return result;\n });\n }\n\n return changes(object, base);\n}\n\nexport { difference };\n"],"names":["difference","object","base","changes","transform","result","value","key","isEqual","isObject"],"mappings":";;;;;;AAQA,SAASA,UAAAA,CAA8CC,MAAS,EAAEC,IAAO,EAAA;IACvE,SAASC,OAAAA,CAAQF,MAAS,EAAEC,IAAO,EAAA;;AAEjC,QAAA,OAAOE,SAAAA,CAAUH,MAAAA,EAAQ,CAACI,MAAAA,EAAQC,KAAAA,EAAYC,GAAAA,GAAAA;AAC5C,YAAA,IAAI,CAACC,OAAAA,CAAQF,KAAAA,EAAOJ,IAAI,CAACK,IAAI,CAAA,EAAG;AAC9BF,gBAAAA,MAAM,CAACE,GAAAA,CAAI,GACTE,QAAAA,CAASH,UAAUG,QAAAA,CAASP,IAAI,CAACK,GAAAA,CAAI,IAAIJ,OAAAA,CAAQG,KAAAA,EAAYJ,IAAI,CAACK,IAAI,CAAA,GAASD,KAAAA;AACnF,YAAA;YACA,OAAOD,MAAAA;AACT,QAAA,CAAA,CAAA;AACF,IAAA;AAEA,IAAA,OAAOF,QAAQF,MAAAA,EAAQC,IAAAA,CAAAA;AACzB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"difference.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/difference.ts"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport isObject from 'lodash/isObject';\nimport transform from 'lodash/transform';\n\ntype ObjectDiff<T> = {\n [P in keyof T]?: T[P] extends Record<string, unknown> ? ObjectDiff<T[P]> : T[P];\n};\n\nfunction difference<T extends Record<string, unknown>>(object: T, base: T): ObjectDiff<T> {\n function changes(object: T, base: T): ObjectDiff<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return transform(object, (result, value: any, key: keyof ObjectDiff<T>) => {\n if (!isEqual(value, base[key])) {\n result[key] =\n isObject(value) && isObject(base[key]) ? changes(value as T, base[key] as T) : value;\n }\n return result;\n });\n }\n\n return changes(object, base);\n}\n\nexport { difference };\n"],"names":["difference","object","base","changes","transform","result","value","key","isEqual","isObject"],"mappings":";;;;AAQA,SAASA,UAAAA,CAA8CC,MAAS,EAAEC,IAAO,EAAA;IACvE,SAASC,OAAAA,CAAQF,MAAS,EAAEC,IAAO,EAAA;;AAEjC,QAAA,OAAOE,SAAUH,CAAAA,MAAAA,EAAQ,CAACI,MAAAA,EAAQC,KAAYC,EAAAA,GAAAA,GAAAA;AAC5C,YAAA,IAAI,CAACC,OAAQF,CAAAA,KAAAA,EAAOJ,IAAI,CAACK,IAAI,CAAG,EAAA;AAC9BF,gBAAAA,MAAM,CAACE,GAAAA,CAAI,GACTE,QAAAA,CAASH,UAAUG,QAASP,CAAAA,IAAI,CAACK,GAAAA,CAAI,IAAIJ,OAAQG,CAAAA,KAAAA,EAAYJ,IAAI,CAACK,IAAI,CAASD,GAAAA,KAAAA;AACnF;YACA,OAAOD,MAAAA;AACT,SAAA,CAAA;AACF;AAEA,IAAA,OAAOF,QAAQF,MAAQC,EAAAA,IAAAA,CAAAA;AACzB;;;;"}
1
+ {"version":3,"file":"difference.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/difference.ts"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport isObject from 'lodash/isObject';\nimport transform from 'lodash/transform';\n\ntype ObjectDiff<T> = {\n [P in keyof T]?: T[P] extends Record<string, unknown> ? ObjectDiff<T[P]> : T[P];\n};\n\nfunction difference<T extends Record<string, unknown>>(object: T, base: T): ObjectDiff<T> {\n function changes(object: T, base: T): ObjectDiff<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return transform(object, (result, value: any, key: keyof ObjectDiff<T>) => {\n if (!isEqual(value, base[key])) {\n result[key] =\n isObject(value) && isObject(base[key]) ? changes(value as T, base[key] as T) : value;\n }\n return result;\n });\n }\n\n return changes(object, base);\n}\n\nexport { difference };\n"],"names":["difference","object","base","changes","transform","result","value","key","isEqual","isObject"],"mappings":";;;;AAQA,SAASA,UAAAA,CAA8CC,MAAS,EAAEC,IAAO,EAAA;IACvE,SAASC,OAAAA,CAAQF,MAAS,EAAEC,IAAO,EAAA;;AAEjC,QAAA,OAAOE,SAAAA,CAAUH,MAAAA,EAAQ,CAACI,MAAAA,EAAQC,KAAAA,EAAYC,GAAAA,GAAAA;AAC5C,YAAA,IAAI,CAACC,OAAAA,CAAQF,KAAAA,EAAOJ,IAAI,CAACK,IAAI,CAAA,EAAG;AAC9BF,gBAAAA,MAAM,CAACE,GAAAA,CAAI,GACTE,QAAAA,CAASH,UAAUG,QAAAA,CAASP,IAAI,CAACK,GAAAA,CAAI,IAAIJ,OAAAA,CAAQG,KAAAA,EAAYJ,IAAI,CAACK,IAAI,CAAA,GAASD,KAAAA;AACnF,YAAA;YACA,OAAOD,MAAAA;AACT,QAAA,CAAA,CAAA;AACF,IAAA;AAEA,IAAA,OAAOF,QAAQF,MAAAA,EAAQC,IAAAA,CAAAA;AACzB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"forms.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/forms.ts"],"sourcesContent":["import isEmpty from 'lodash/isEmpty';\nimport merge from 'lodash/merge';\n\nimport { findMatchingPermission } from './permissions';\n\nimport type { GenericLayout } from './layouts';\nimport type {\n Condition,\n SettingPermission,\n ContentPermission,\n Subject,\n SubjectProperty,\n} from '../../../../../../../shared/contracts/permissions';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\n\ntype ConditionForm = Record<string, boolean>;\n\n/**\n * Creates the default condition form: { [conditionId]: false }\n */\nconst createDefaultConditionsForm = (\n conditions: Condition[],\n initialConditions: Permission['conditions'] = []\n): ConditionForm =>\n conditions.reduce<ConditionForm>((acc, current) => {\n acc[current.id] = initialConditions.indexOf(current.id) !== -1;\n\n return acc;\n }, {});\n\ninterface SubCategoryForm {\n properties: {\n enabled: boolean;\n };\n conditions: ConditionForm;\n}\n\ntype ChildrenForm = Record<\n string,\n SubCategoryForm | (Omit<SubCategoryForm, 'properties'> & PropertyForm)\n>;\n\ntype Form = Record<string, ChildrenForm>;\n\nconst createDefaultForm = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: GenericLayout<TLayout>[],\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return layout.reduce<Record<string, Form>>((acc, { categoryId, childrenForm }) => {\n const childrenDefaultForm = childrenForm.reduce<Form>((acc, current) => {\n acc[current.subCategoryId] = current.actions.reduce<ChildrenForm>((acc, current) => {\n const foundMatchingPermission = findMatchingPermission(\n initialPermissions,\n current.action,\n null\n );\n\n acc[current.action] = {\n properties: {\n enabled: foundMatchingPermission !== undefined,\n },\n conditions: createDefaultConditionsForm(\n conditions,\n foundMatchingPermission?.conditions ?? []\n ),\n };\n\n return acc;\n }, {});\n\n return acc;\n }, {});\n\n acc[categoryId] = childrenDefaultForm;\n\n return acc;\n }, {});\n};\n\ninterface PropertyChildForm extends Record<string, boolean | PropertyChildForm> {}\n\ninterface PropertyForm {\n properties: PropertyChildForm;\n}\n\n/**\n * Creates the default form for all the properties found in a content type's layout\n */\nconst createDefaultPropertiesForm = (\n properties: string[],\n subject: Subject,\n matchingPermission?: Permission\n): PropertyForm => {\n const recursivelyCreatePropertyForm = (\n { children = [] }: SubjectProperty,\n propertyValues: string[],\n prefix = ''\n ): PropertyChildForm => {\n return children.reduce<PropertyChildForm>((acc, current) => {\n if (current.children) {\n return {\n ...acc,\n [current.value]: recursivelyCreatePropertyForm(\n current,\n propertyValues,\n `${prefix}${current.value}.`\n ),\n };\n }\n\n const hasProperty = propertyValues.indexOf(`${prefix}${current.value}`) !== -1;\n\n acc[current.value] = hasProperty;\n\n return acc;\n }, {});\n };\n\n return properties.reduce<PropertyForm>(\n (acc, currentPropertyName) => {\n const foundProperty = subject.properties.find(({ value }) => value === currentPropertyName);\n\n if (foundProperty) {\n const matchingPermissionPropertyValues =\n matchingPermission?.properties[foundProperty.value] ?? [];\n\n const propertyForm = recursivelyCreatePropertyForm(\n foundProperty,\n matchingPermissionPropertyValues\n );\n\n acc.properties[currentPropertyName] = propertyForm;\n }\n\n return acc;\n },\n { properties: {} }\n );\n};\n\n/**\n * Creates the default for for a content type\n */\nconst createDefaultCTForm = (\n { subjects, actions = [] }: ContentPermission,\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return actions.reduce<Form>((defaultForm, action) => {\n type SubjectLayouts = Record<string, Subject>;\n\n const subjectLayouts = action.subjects.reduce<SubjectLayouts>((acc, current) => {\n const foundLayout = subjects.find(({ uid }) => uid === current) || null;\n\n if (foundLayout) {\n acc[current] = foundLayout;\n }\n\n return acc;\n }, {});\n\n // This can happen when an action is not related to a content type\n // for instance the D&P permission is applied only with the cts that\n // have the D&P features enabled\n if (isEmpty(subjectLayouts)) {\n return defaultForm;\n }\n\n // The object has the following shape: { [ctUID]: { [actionId]: { [property]: { enabled: false } } } }\n const contentTypesActions = Object.keys(subjectLayouts).reduce<Form>((acc, currentCTUID) => {\n const { actionId, applyToProperties } = action;\n const currentSubjectLayout = subjectLayouts[currentCTUID];\n const properties = currentSubjectLayout.properties.map(({ value }) => value);\n const doesNothaveProperty = properties.every(\n (property) => (applyToProperties || []).indexOf(property) === -1\n );\n\n const matchingPermission = findMatchingPermission(initialPermissions, actionId, currentCTUID);\n const conditionsForm = createDefaultConditionsForm(\n conditions,\n matchingPermission?.conditions ?? []\n );\n\n if (!acc[currentCTUID]) {\n acc[currentCTUID] = {};\n }\n\n if (isEmpty(applyToProperties) || doesNothaveProperty) {\n acc[currentCTUID][actionId] = {\n properties: {\n enabled: matchingPermission !== undefined,\n },\n conditions: conditionsForm,\n };\n\n return acc;\n }\n\n const propertiesForm = createDefaultPropertiesForm(\n applyToProperties,\n subjectLayouts[currentCTUID],\n matchingPermission\n );\n\n acc[currentCTUID][actionId] = { ...propertiesForm, conditions: conditionsForm };\n\n return acc;\n }, {});\n\n return merge(defaultForm, contentTypesActions);\n }, {});\n};\n\nexport { createDefaultConditionsForm, createDefaultForm, createDefaultCTForm };\nexport type { ConditionForm, Form, PropertyForm, SubCategoryForm, ChildrenForm, PropertyChildForm };\n"],"names":["createDefaultConditionsForm","conditions","initialConditions","reduce","acc","current","id","indexOf","createDefaultForm","layout","initialPermissions","categoryId","childrenForm","childrenDefaultForm","subCategoryId","actions","foundMatchingPermission","findMatchingPermission","action","properties","enabled","undefined","createDefaultPropertiesForm","subject","matchingPermission","recursivelyCreatePropertyForm","children","propertyValues","prefix","value","hasProperty","currentPropertyName","foundProperty","find","matchingPermissionPropertyValues","propertyForm","createDefaultCTForm","subjects","defaultForm","subjectLayouts","foundLayout","uid","isEmpty","contentTypesActions","Object","keys","currentCTUID","actionId","applyToProperties","currentSubjectLayout","map","doesNothaveProperty","every","property","conditionsForm","propertiesForm","merge"],"mappings":";;;;;;AAiBA;;IAGA,MAAMA,2BAA8B,GAAA,CAClCC,UACAC,EAAAA,iBAAAA,GAA8C,EAAE,GAEhDD,UAAWE,CAAAA,MAAM,CAAgB,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;QACrCD,GAAG,CAACC,OAAQC,CAAAA,EAAE,CAAC,GAAGJ,iBAAkBK,CAAAA,OAAO,CAACF,OAAAA,CAAQC,EAAE,CAAA,KAAM,CAAC,CAAA;QAE7D,OAAOF,GAAAA;AACT,KAAA,EAAG,EAAC;AAgBN,MAAMI,iBAAoB,GAAA,CACxBC,MACAR,EAAAA,UAAAA,EACAS,qBAAmC,EAAE,GAAA;IAErC,OAAOD,MAAAA,CAAON,MAAM,CAAuB,CAACC,KAAK,EAAEO,UAAU,EAAEC,YAAY,EAAE,GAAA;AAC3E,QAAA,MAAMC,mBAAsBD,GAAAA,YAAAA,CAAaT,MAAM,CAAO,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;YAC1DD,GAAG,CAACC,OAAQS,CAAAA,aAAa,CAAC,GAAGT,OAAQU,CAAAA,OAAO,CAACZ,MAAM,CAAe,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;AACtE,gBAAA,MAAMW,uBAA0BC,GAAAA,kCAAAA,CAC9BP,kBACAL,EAAAA,OAAAA,CAAQa,MAAM,EACd,IAAA,CAAA;AAGFd,gBAAAA,GAAG,CAACC,OAAAA,CAAQa,MAAM,CAAC,GAAG;oBACpBC,UAAY,EAAA;AACVC,wBAAAA,OAAAA,EAASJ,uBAA4BK,KAAAA;AACvC,qBAAA;AACApB,oBAAAA,UAAAA,EAAYD,2BACVC,CAAAA,UAAAA,EACAe,uBAAyBf,EAAAA,UAAAA,IAAc,EAAE;AAE7C,iBAAA;gBAEA,OAAOG,GAAAA;AACT,aAAA,EAAG,EAAC,CAAA;YAEJ,OAAOA,GAAAA;AACT,SAAA,EAAG,EAAC,CAAA;QAEJA,GAAG,CAACO,WAAW,GAAGE,mBAAAA;QAElB,OAAOT,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;AAQA;;AAEC,IACD,MAAMkB,2BAAAA,GAA8B,CAClCH,UAAAA,EACAI,OACAC,EAAAA,kBAAAA,GAAAA;IAEA,MAAMC,6BAAAA,GAAgC,CACpC,EAAEC,QAAAA,GAAW,EAAE,EAAmB,EAClCC,cACAC,EAAAA,MAAAA,GAAS,EAAE,GAAA;AAEX,QAAA,OAAOF,QAASvB,CAAAA,MAAM,CAAoB,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;YAC9C,IAAIA,OAAAA,CAAQqB,QAAQ,EAAE;gBACpB,OAAO;AACL,oBAAA,GAAGtB,GAAG;AACN,oBAAA,CAACC,OAAQwB,CAAAA,KAAK,GAAGJ,6BACfpB,CAAAA,OAAAA,EACAsB,cACA,EAAA,CAAA,EAAGC,MAASvB,CAAAA,EAAAA,OAAAA,CAAQwB,KAAK,CAAC,CAAC,CAAC;AAEhC,iBAAA;AACF;YAEA,MAAMC,WAAAA,GAAcH,cAAepB,CAAAA,OAAO,CAAC,CAAA,EAAGqB,SAASvB,OAAQwB,CAAAA,KAAK,CAAE,CAAA,CAAA,KAAM,CAAC,CAAA;AAE7EzB,YAAAA,GAAG,CAACC,OAAAA,CAAQwB,KAAK,CAAC,GAAGC,WAAAA;YAErB,OAAO1B,GAAAA;AACT,SAAA,EAAG,EAAC,CAAA;AACN,KAAA;AAEA,IAAA,OAAOe,UAAWhB,CAAAA,MAAM,CACtB,CAACC,GAAK2B,EAAAA,mBAAAA,GAAAA;QACJ,MAAMC,aAAAA,GAAgBT,OAAQJ,CAAAA,UAAU,CAACc,IAAI,CAAC,CAAC,EAAEJ,KAAK,EAAE,GAAKA,KAAUE,KAAAA,mBAAAA,CAAAA;AAEvE,QAAA,IAAIC,aAAe,EAAA;YACjB,MAAME,gCAAAA,GACJV,oBAAoBL,UAAU,CAACa,cAAcH,KAAK,CAAC,IAAI,EAAE;YAE3D,MAAMM,YAAAA,GAAeV,8BACnBO,aACAE,EAAAA,gCAAAA,CAAAA;YAGF9B,GAAIe,CAAAA,UAAU,CAACY,mBAAAA,CAAoB,GAAGI,YAAAA;AACxC;QAEA,OAAO/B,GAAAA;KAET,EAAA;AAAEe,QAAAA,UAAAA,EAAY;AAAG,KAAA,CAAA;AAErB,CAAA;AAEA;;AAEC,IACKiB,MAAAA,mBAAAA,GAAsB,CAC1B,EAAEC,QAAQ,EAAEtB,OAAU,GAAA,EAAE,EAAqB,EAC7Cd,UACAS,EAAAA,kBAAAA,GAAmC,EAAE,GAAA;AAErC,IAAA,OAAOK,OAAQZ,CAAAA,MAAM,CAAO,CAACmC,WAAapB,EAAAA,MAAAA,GAAAA;AAGxC,QAAA,MAAMqB,iBAAiBrB,MAAOmB,CAAAA,QAAQ,CAAClC,MAAM,CAAiB,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;YAClE,MAAMmC,WAAAA,GAAcH,QAASJ,CAAAA,IAAI,CAAC,CAAC,EAAEQ,GAAG,EAAE,GAAKA,GAAAA,KAAQpC,OAAY,CAAA,IAAA,IAAA;AAEnE,YAAA,IAAImC,WAAa,EAAA;gBACfpC,GAAG,CAACC,QAAQ,GAAGmC,WAAAA;AACjB;YAEA,OAAOpC,GAAAA;AACT,SAAA,EAAG,EAAC,CAAA;;;;AAKJ,QAAA,IAAIsC,QAAQH,cAAiB,CAAA,EAAA;YAC3B,OAAOD,WAAAA;AACT;;QAGA,MAAMK,mBAAAA,GAAsBC,OAAOC,IAAI,CAACN,gBAAgBpC,MAAM,CAAO,CAACC,GAAK0C,EAAAA,YAAAA,GAAAA;AACzE,YAAA,MAAM,EAAEC,QAAQ,EAAEC,iBAAiB,EAAE,GAAG9B,MAAAA;YACxC,MAAM+B,oBAAAA,GAAuBV,cAAc,CAACO,YAAa,CAAA;YACzD,MAAM3B,UAAAA,GAAa8B,oBAAqB9B,CAAAA,UAAU,CAAC+B,GAAG,CAAC,CAAC,EAAErB,KAAK,EAAE,GAAKA,KAAAA,CAAAA;AACtE,YAAA,MAAMsB,mBAAsBhC,GAAAA,UAAAA,CAAWiC,KAAK,CAC1C,CAACC,QAAa,GAACL,CAAAA,iBAAAA,IAAqB,EAAE,EAAEzC,OAAO,CAAC8C,cAAc,CAAC,CAAA,CAAA;YAGjE,MAAM7B,kBAAAA,GAAqBP,kCAAuBP,CAAAA,kBAAAA,EAAoBqC,QAAUD,EAAAA,YAAAA,CAAAA;AAChF,YAAA,MAAMQ,cAAiBtD,GAAAA,2BAAAA,CACrBC,UACAuB,EAAAA,kBAAAA,EAAoBvB,cAAc,EAAE,CAAA;AAGtC,YAAA,IAAI,CAACG,GAAG,CAAC0C,YAAAA,CAAa,EAAE;gBACtB1C,GAAG,CAAC0C,YAAa,CAAA,GAAG,EAAC;AACvB;YAEA,IAAIJ,OAAAA,CAAQM,sBAAsBG,mBAAqB,EAAA;AACrD/C,gBAAAA,GAAG,CAAC0C,YAAAA,CAAa,CAACC,QAAAA,CAAS,GAAG;oBAC5B5B,UAAY,EAAA;AACVC,wBAAAA,OAAAA,EAASI,kBAAuBH,KAAAA;AAClC,qBAAA;oBACApB,UAAYqD,EAAAA;AACd,iBAAA;gBAEA,OAAOlD,GAAAA;AACT;AAEA,YAAA,MAAMmD,iBAAiBjC,2BACrB0B,CAAAA,iBAAAA,EACAT,cAAc,CAACO,aAAa,EAC5BtB,kBAAAA,CAAAA;AAGFpB,YAAAA,GAAG,CAAC0C,YAAAA,CAAa,CAACC,QAAAA,CAAS,GAAG;AAAE,gBAAA,GAAGQ,cAAc;gBAAEtD,UAAYqD,EAAAA;AAAe,aAAA;YAE9E,OAAOlD,GAAAA;AACT,SAAA,EAAG,EAAC,CAAA;AAEJ,QAAA,OAAOoD,MAAMlB,WAAaK,EAAAA,mBAAAA,CAAAA;AAC5B,KAAA,EAAG,EAAC,CAAA;AACN;;;;;;"}
1
+ {"version":3,"file":"forms.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/forms.ts"],"sourcesContent":["import isEmpty from 'lodash/isEmpty';\nimport merge from 'lodash/merge';\n\nimport { findMatchingPermission } from './permissions';\n\nimport type { GenericLayout } from './layouts';\nimport type {\n Condition,\n SettingPermission,\n ContentPermission,\n Subject,\n SubjectProperty,\n} from '../../../../../../../shared/contracts/permissions';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\n\ntype ConditionForm = Record<string, boolean>;\n\n/**\n * Creates the default condition form: { [conditionId]: false }\n */\nconst createDefaultConditionsForm = (\n conditions: Condition[],\n initialConditions: Permission['conditions'] = []\n): ConditionForm =>\n conditions.reduce<ConditionForm>((acc, current) => {\n acc[current.id] = initialConditions.indexOf(current.id) !== -1;\n\n return acc;\n }, {});\n\ninterface SubCategoryForm {\n properties: {\n enabled: boolean;\n };\n conditions: ConditionForm;\n}\n\ntype ChildrenForm = Record<\n string,\n SubCategoryForm | (Omit<SubCategoryForm, 'properties'> & PropertyForm)\n>;\n\ntype Form = Record<string, ChildrenForm>;\n\nconst createDefaultForm = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: GenericLayout<TLayout>[],\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return layout.reduce<Record<string, Form>>((acc, { categoryId, childrenForm }) => {\n const childrenDefaultForm = childrenForm.reduce<Form>((acc, current) => {\n acc[current.subCategoryId] = current.actions.reduce<ChildrenForm>((acc, current) => {\n const foundMatchingPermission = findMatchingPermission(\n initialPermissions,\n current.action,\n null\n );\n\n acc[current.action] = {\n properties: {\n enabled: foundMatchingPermission !== undefined,\n },\n conditions: createDefaultConditionsForm(\n conditions,\n foundMatchingPermission?.conditions ?? []\n ),\n };\n\n return acc;\n }, {});\n\n return acc;\n }, {});\n\n acc[categoryId] = childrenDefaultForm;\n\n return acc;\n }, {});\n};\n\ninterface PropertyChildForm extends Record<string, boolean | PropertyChildForm> {}\n\ninterface PropertyForm {\n properties: PropertyChildForm;\n}\n\n/**\n * Creates the default form for all the properties found in a content type's layout\n */\nconst createDefaultPropertiesForm = (\n properties: string[],\n subject: Subject,\n matchingPermission?: Permission\n): PropertyForm => {\n const recursivelyCreatePropertyForm = (\n { children = [] }: SubjectProperty,\n propertyValues: string[],\n prefix = ''\n ): PropertyChildForm => {\n return children.reduce<PropertyChildForm>((acc, current) => {\n if (current.children) {\n return {\n ...acc,\n [current.value]: recursivelyCreatePropertyForm(\n current,\n propertyValues,\n `${prefix}${current.value}.`\n ),\n };\n }\n\n const hasProperty = propertyValues.indexOf(`${prefix}${current.value}`) !== -1;\n\n acc[current.value] = hasProperty;\n\n return acc;\n }, {});\n };\n\n return properties.reduce<PropertyForm>(\n (acc, currentPropertyName) => {\n const foundProperty = subject.properties.find(({ value }) => value === currentPropertyName);\n\n if (foundProperty) {\n const matchingPermissionPropertyValues =\n matchingPermission?.properties[foundProperty.value] ?? [];\n\n const propertyForm = recursivelyCreatePropertyForm(\n foundProperty,\n matchingPermissionPropertyValues\n );\n\n acc.properties[currentPropertyName] = propertyForm;\n }\n\n return acc;\n },\n { properties: {} }\n );\n};\n\n/**\n * Creates the default for for a content type\n */\nconst createDefaultCTForm = (\n { subjects, actions = [] }: ContentPermission,\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return actions.reduce<Form>((defaultForm, action) => {\n type SubjectLayouts = Record<string, Subject>;\n\n const subjectLayouts = action.subjects.reduce<SubjectLayouts>((acc, current) => {\n const foundLayout = subjects.find(({ uid }) => uid === current) || null;\n\n if (foundLayout) {\n acc[current] = foundLayout;\n }\n\n return acc;\n }, {});\n\n // This can happen when an action is not related to a content type\n // for instance the D&P permission is applied only with the cts that\n // have the D&P features enabled\n if (isEmpty(subjectLayouts)) {\n return defaultForm;\n }\n\n // The object has the following shape: { [ctUID]: { [actionId]: { [property]: { enabled: false } } } }\n const contentTypesActions = Object.keys(subjectLayouts).reduce<Form>((acc, currentCTUID) => {\n const { actionId, applyToProperties } = action;\n const currentSubjectLayout = subjectLayouts[currentCTUID];\n const properties = currentSubjectLayout.properties.map(({ value }) => value);\n const doesNothaveProperty = properties.every(\n (property) => (applyToProperties || []).indexOf(property) === -1\n );\n\n const matchingPermission = findMatchingPermission(initialPermissions, actionId, currentCTUID);\n const conditionsForm = createDefaultConditionsForm(\n conditions,\n matchingPermission?.conditions ?? []\n );\n\n if (!acc[currentCTUID]) {\n acc[currentCTUID] = {};\n }\n\n if (isEmpty(applyToProperties) || doesNothaveProperty) {\n acc[currentCTUID][actionId] = {\n properties: {\n enabled: matchingPermission !== undefined,\n },\n conditions: conditionsForm,\n };\n\n return acc;\n }\n\n const propertiesForm = createDefaultPropertiesForm(\n applyToProperties,\n subjectLayouts[currentCTUID],\n matchingPermission\n );\n\n acc[currentCTUID][actionId] = { ...propertiesForm, conditions: conditionsForm };\n\n return acc;\n }, {});\n\n return merge(defaultForm, contentTypesActions);\n }, {});\n};\n\nexport { createDefaultConditionsForm, createDefaultForm, createDefaultCTForm };\nexport type { ConditionForm, Form, PropertyForm, SubCategoryForm, ChildrenForm, PropertyChildForm };\n"],"names":["createDefaultConditionsForm","conditions","initialConditions","reduce","acc","current","id","indexOf","createDefaultForm","layout","initialPermissions","categoryId","childrenForm","childrenDefaultForm","subCategoryId","actions","foundMatchingPermission","findMatchingPermission","action","properties","enabled","undefined","createDefaultPropertiesForm","subject","matchingPermission","recursivelyCreatePropertyForm","children","propertyValues","prefix","value","hasProperty","currentPropertyName","foundProperty","find","matchingPermissionPropertyValues","propertyForm","createDefaultCTForm","subjects","defaultForm","subjectLayouts","foundLayout","uid","isEmpty","contentTypesActions","Object","keys","currentCTUID","actionId","applyToProperties","currentSubjectLayout","map","doesNothaveProperty","every","property","conditionsForm","propertiesForm","merge"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"forms.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/forms.ts"],"sourcesContent":["import isEmpty from 'lodash/isEmpty';\nimport merge from 'lodash/merge';\n\nimport { findMatchingPermission } from './permissions';\n\nimport type { GenericLayout } from './layouts';\nimport type {\n Condition,\n SettingPermission,\n ContentPermission,\n Subject,\n SubjectProperty,\n} from '../../../../../../../shared/contracts/permissions';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\n\ntype ConditionForm = Record<string, boolean>;\n\n/**\n * Creates the default condition form: { [conditionId]: false }\n */\nconst createDefaultConditionsForm = (\n conditions: Condition[],\n initialConditions: Permission['conditions'] = []\n): ConditionForm =>\n conditions.reduce<ConditionForm>((acc, current) => {\n acc[current.id] = initialConditions.indexOf(current.id) !== -1;\n\n return acc;\n }, {});\n\ninterface SubCategoryForm {\n properties: {\n enabled: boolean;\n };\n conditions: ConditionForm;\n}\n\ntype ChildrenForm = Record<\n string,\n SubCategoryForm | (Omit<SubCategoryForm, 'properties'> & PropertyForm)\n>;\n\ntype Form = Record<string, ChildrenForm>;\n\nconst createDefaultForm = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: GenericLayout<TLayout>[],\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return layout.reduce<Record<string, Form>>((acc, { categoryId, childrenForm }) => {\n const childrenDefaultForm = childrenForm.reduce<Form>((acc, current) => {\n acc[current.subCategoryId] = current.actions.reduce<ChildrenForm>((acc, current) => {\n const foundMatchingPermission = findMatchingPermission(\n initialPermissions,\n current.action,\n null\n );\n\n acc[current.action] = {\n properties: {\n enabled: foundMatchingPermission !== undefined,\n },\n conditions: createDefaultConditionsForm(\n conditions,\n foundMatchingPermission?.conditions ?? []\n ),\n };\n\n return acc;\n }, {});\n\n return acc;\n }, {});\n\n acc[categoryId] = childrenDefaultForm;\n\n return acc;\n }, {});\n};\n\ninterface PropertyChildForm extends Record<string, boolean | PropertyChildForm> {}\n\ninterface PropertyForm {\n properties: PropertyChildForm;\n}\n\n/**\n * Creates the default form for all the properties found in a content type's layout\n */\nconst createDefaultPropertiesForm = (\n properties: string[],\n subject: Subject,\n matchingPermission?: Permission\n): PropertyForm => {\n const recursivelyCreatePropertyForm = (\n { children = [] }: SubjectProperty,\n propertyValues: string[],\n prefix = ''\n ): PropertyChildForm => {\n return children.reduce<PropertyChildForm>((acc, current) => {\n if (current.children) {\n return {\n ...acc,\n [current.value]: recursivelyCreatePropertyForm(\n current,\n propertyValues,\n `${prefix}${current.value}.`\n ),\n };\n }\n\n const hasProperty = propertyValues.indexOf(`${prefix}${current.value}`) !== -1;\n\n acc[current.value] = hasProperty;\n\n return acc;\n }, {});\n };\n\n return properties.reduce<PropertyForm>(\n (acc, currentPropertyName) => {\n const foundProperty = subject.properties.find(({ value }) => value === currentPropertyName);\n\n if (foundProperty) {\n const matchingPermissionPropertyValues =\n matchingPermission?.properties[foundProperty.value] ?? [];\n\n const propertyForm = recursivelyCreatePropertyForm(\n foundProperty,\n matchingPermissionPropertyValues\n );\n\n acc.properties[currentPropertyName] = propertyForm;\n }\n\n return acc;\n },\n { properties: {} }\n );\n};\n\n/**\n * Creates the default for for a content type\n */\nconst createDefaultCTForm = (\n { subjects, actions = [] }: ContentPermission,\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return actions.reduce<Form>((defaultForm, action) => {\n type SubjectLayouts = Record<string, Subject>;\n\n const subjectLayouts = action.subjects.reduce<SubjectLayouts>((acc, current) => {\n const foundLayout = subjects.find(({ uid }) => uid === current) || null;\n\n if (foundLayout) {\n acc[current] = foundLayout;\n }\n\n return acc;\n }, {});\n\n // This can happen when an action is not related to a content type\n // for instance the D&P permission is applied only with the cts that\n // have the D&P features enabled\n if (isEmpty(subjectLayouts)) {\n return defaultForm;\n }\n\n // The object has the following shape: { [ctUID]: { [actionId]: { [property]: { enabled: false } } } }\n const contentTypesActions = Object.keys(subjectLayouts).reduce<Form>((acc, currentCTUID) => {\n const { actionId, applyToProperties } = action;\n const currentSubjectLayout = subjectLayouts[currentCTUID];\n const properties = currentSubjectLayout.properties.map(({ value }) => value);\n const doesNothaveProperty = properties.every(\n (property) => (applyToProperties || []).indexOf(property) === -1\n );\n\n const matchingPermission = findMatchingPermission(initialPermissions, actionId, currentCTUID);\n const conditionsForm = createDefaultConditionsForm(\n conditions,\n matchingPermission?.conditions ?? []\n );\n\n if (!acc[currentCTUID]) {\n acc[currentCTUID] = {};\n }\n\n if (isEmpty(applyToProperties) || doesNothaveProperty) {\n acc[currentCTUID][actionId] = {\n properties: {\n enabled: matchingPermission !== undefined,\n },\n conditions: conditionsForm,\n };\n\n return acc;\n }\n\n const propertiesForm = createDefaultPropertiesForm(\n applyToProperties,\n subjectLayouts[currentCTUID],\n matchingPermission\n );\n\n acc[currentCTUID][actionId] = { ...propertiesForm, conditions: conditionsForm };\n\n return acc;\n }, {});\n\n return merge(defaultForm, contentTypesActions);\n }, {});\n};\n\nexport { createDefaultConditionsForm, createDefaultForm, createDefaultCTForm };\nexport type { ConditionForm, Form, PropertyForm, SubCategoryForm, ChildrenForm, PropertyChildForm };\n"],"names":["createDefaultConditionsForm","conditions","initialConditions","reduce","acc","current","id","indexOf","createDefaultForm","layout","initialPermissions","categoryId","childrenForm","childrenDefaultForm","subCategoryId","actions","foundMatchingPermission","findMatchingPermission","action","properties","enabled","undefined","createDefaultPropertiesForm","subject","matchingPermission","recursivelyCreatePropertyForm","children","propertyValues","prefix","value","hasProperty","currentPropertyName","foundProperty","find","matchingPermissionPropertyValues","propertyForm","createDefaultCTForm","subjects","defaultForm","subjectLayouts","foundLayout","uid","isEmpty","contentTypesActions","Object","keys","currentCTUID","actionId","applyToProperties","currentSubjectLayout","map","doesNothaveProperty","every","property","conditionsForm","propertiesForm","merge"],"mappings":"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"}
1
+ {"version":3,"file":"forms.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/forms.ts"],"sourcesContent":["import isEmpty from 'lodash/isEmpty';\nimport merge from 'lodash/merge';\n\nimport { findMatchingPermission } from './permissions';\n\nimport type { GenericLayout } from './layouts';\nimport type {\n Condition,\n SettingPermission,\n ContentPermission,\n Subject,\n SubjectProperty,\n} from '../../../../../../../shared/contracts/permissions';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\n\ntype ConditionForm = Record<string, boolean>;\n\n/**\n * Creates the default condition form: { [conditionId]: false }\n */\nconst createDefaultConditionsForm = (\n conditions: Condition[],\n initialConditions: Permission['conditions'] = []\n): ConditionForm =>\n conditions.reduce<ConditionForm>((acc, current) => {\n acc[current.id] = initialConditions.indexOf(current.id) !== -1;\n\n return acc;\n }, {});\n\ninterface SubCategoryForm {\n properties: {\n enabled: boolean;\n };\n conditions: ConditionForm;\n}\n\ntype ChildrenForm = Record<\n string,\n SubCategoryForm | (Omit<SubCategoryForm, 'properties'> & PropertyForm)\n>;\n\ntype Form = Record<string, ChildrenForm>;\n\nconst createDefaultForm = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: GenericLayout<TLayout>[],\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return layout.reduce<Record<string, Form>>((acc, { categoryId, childrenForm }) => {\n const childrenDefaultForm = childrenForm.reduce<Form>((acc, current) => {\n acc[current.subCategoryId] = current.actions.reduce<ChildrenForm>((acc, current) => {\n const foundMatchingPermission = findMatchingPermission(\n initialPermissions,\n current.action,\n null\n );\n\n acc[current.action] = {\n properties: {\n enabled: foundMatchingPermission !== undefined,\n },\n conditions: createDefaultConditionsForm(\n conditions,\n foundMatchingPermission?.conditions ?? []\n ),\n };\n\n return acc;\n }, {});\n\n return acc;\n }, {});\n\n acc[categoryId] = childrenDefaultForm;\n\n return acc;\n }, {});\n};\n\ninterface PropertyChildForm extends Record<string, boolean | PropertyChildForm> {}\n\ninterface PropertyForm {\n properties: PropertyChildForm;\n}\n\n/**\n * Creates the default form for all the properties found in a content type's layout\n */\nconst createDefaultPropertiesForm = (\n properties: string[],\n subject: Subject,\n matchingPermission?: Permission\n): PropertyForm => {\n const recursivelyCreatePropertyForm = (\n { children = [] }: SubjectProperty,\n propertyValues: string[],\n prefix = ''\n ): PropertyChildForm => {\n return children.reduce<PropertyChildForm>((acc, current) => {\n if (current.children) {\n return {\n ...acc,\n [current.value]: recursivelyCreatePropertyForm(\n current,\n propertyValues,\n `${prefix}${current.value}.`\n ),\n };\n }\n\n const hasProperty = propertyValues.indexOf(`${prefix}${current.value}`) !== -1;\n\n acc[current.value] = hasProperty;\n\n return acc;\n }, {});\n };\n\n return properties.reduce<PropertyForm>(\n (acc, currentPropertyName) => {\n const foundProperty = subject.properties.find(({ value }) => value === currentPropertyName);\n\n if (foundProperty) {\n const matchingPermissionPropertyValues =\n matchingPermission?.properties[foundProperty.value] ?? [];\n\n const propertyForm = recursivelyCreatePropertyForm(\n foundProperty,\n matchingPermissionPropertyValues\n );\n\n acc.properties[currentPropertyName] = propertyForm;\n }\n\n return acc;\n },\n { properties: {} }\n );\n};\n\n/**\n * Creates the default for for a content type\n */\nconst createDefaultCTForm = (\n { subjects, actions = [] }: ContentPermission,\n conditions: Condition[],\n initialPermissions: Permission[] = []\n) => {\n return actions.reduce<Form>((defaultForm, action) => {\n type SubjectLayouts = Record<string, Subject>;\n\n const subjectLayouts = action.subjects.reduce<SubjectLayouts>((acc, current) => {\n const foundLayout = subjects.find(({ uid }) => uid === current) || null;\n\n if (foundLayout) {\n acc[current] = foundLayout;\n }\n\n return acc;\n }, {});\n\n // This can happen when an action is not related to a content type\n // for instance the D&P permission is applied only with the cts that\n // have the D&P features enabled\n if (isEmpty(subjectLayouts)) {\n return defaultForm;\n }\n\n // The object has the following shape: { [ctUID]: { [actionId]: { [property]: { enabled: false } } } }\n const contentTypesActions = Object.keys(subjectLayouts).reduce<Form>((acc, currentCTUID) => {\n const { actionId, applyToProperties } = action;\n const currentSubjectLayout = subjectLayouts[currentCTUID];\n const properties = currentSubjectLayout.properties.map(({ value }) => value);\n const doesNothaveProperty = properties.every(\n (property) => (applyToProperties || []).indexOf(property) === -1\n );\n\n const matchingPermission = findMatchingPermission(initialPermissions, actionId, currentCTUID);\n const conditionsForm = createDefaultConditionsForm(\n conditions,\n matchingPermission?.conditions ?? []\n );\n\n if (!acc[currentCTUID]) {\n acc[currentCTUID] = {};\n }\n\n if (isEmpty(applyToProperties) || doesNothaveProperty) {\n acc[currentCTUID][actionId] = {\n properties: {\n enabled: matchingPermission !== undefined,\n },\n conditions: conditionsForm,\n };\n\n return acc;\n }\n\n const propertiesForm = createDefaultPropertiesForm(\n applyToProperties,\n subjectLayouts[currentCTUID],\n matchingPermission\n );\n\n acc[currentCTUID][actionId] = { ...propertiesForm, conditions: conditionsForm };\n\n return acc;\n }, {});\n\n return merge(defaultForm, contentTypesActions);\n }, {});\n};\n\nexport { createDefaultConditionsForm, createDefaultForm, createDefaultCTForm };\nexport type { ConditionForm, Form, PropertyForm, SubCategoryForm, ChildrenForm, PropertyChildForm };\n"],"names":["createDefaultConditionsForm","conditions","initialConditions","reduce","acc","current","id","indexOf","createDefaultForm","layout","initialPermissions","categoryId","childrenForm","childrenDefaultForm","subCategoryId","actions","foundMatchingPermission","findMatchingPermission","action","properties","enabled","undefined","createDefaultPropertiesForm","subject","matchingPermission","recursivelyCreatePropertyForm","children","propertyValues","prefix","value","hasProperty","currentPropertyName","foundProperty","find","matchingPermissionPropertyValues","propertyForm","createDefaultCTForm","subjects","defaultForm","subjectLayouts","foundLayout","uid","isEmpty","contentTypesActions","Object","keys","currentCTUID","actionId","applyToProperties","currentSubjectLayout","map","doesNothaveProperty","every","property","conditionsForm","propertiesForm","merge"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCheckboxState.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.ts"],"sourcesContent":["import { createArrayOfValues } from './createArrayOfValues';\nimport { removeConditionKeyFromData } from './removeConditionKeyFromData';\n\ninterface RecursiveRecordOfBooleans extends Record<string, boolean | RecursiveRecordOfBooleans> {}\n\nconst getCheckboxState = (dataObj: RecursiveRecordOfBooleans) => {\n const dataWithoutCondition = removeConditionKeyFromData(dataObj);\n\n const arrayOfValues = createArrayOfValues(dataWithoutCondition);\n\n if (!arrayOfValues.length) {\n return { hasAllActionsSelected: false, hasSomeActionsSelected: false };\n }\n\n const hasAllActionsSelected = arrayOfValues.every((val) => val);\n const hasSomeActionsSelected = arrayOfValues.some((val) => val) && !hasAllActionsSelected;\n\n return { hasAllActionsSelected, hasSomeActionsSelected };\n};\n\nexport { getCheckboxState };\nexport type { RecursiveRecordOfBooleans };\n"],"names":["getCheckboxState","dataObj","dataWithoutCondition","removeConditionKeyFromData","arrayOfValues","createArrayOfValues","length","hasAllActionsSelected","hasSomeActionsSelected","every","val","some"],"mappings":";;;;;AAKA,MAAMA,mBAAmB,CAACC,OAAAA,GAAAA;AACxB,IAAA,MAAMC,uBAAuBC,qDAA2BF,CAAAA,OAAAA,CAAAA;AAExD,IAAA,MAAMG,gBAAgBC,uCAAoBH,CAAAA,oBAAAA,CAAAA;IAE1C,IAAI,CAACE,aAAcE,CAAAA,MAAM,EAAE;QACzB,OAAO;YAAEC,qBAAuB,EAAA,KAAA;YAAOC,sBAAwB,EAAA;AAAM,SAAA;AACvE;AAEA,IAAA,MAAMD,qBAAwBH,GAAAA,aAAAA,CAAcK,KAAK,CAAC,CAACC,GAAQA,GAAAA,GAAAA,CAAAA;AAC3D,IAAA,MAAMF,yBAAyBJ,aAAcO,CAAAA,IAAI,CAAC,CAACD,GAAAA,GAAQA,QAAQ,CAACH,qBAAAA;IAEpE,OAAO;AAAEA,QAAAA,qBAAAA;AAAuBC,QAAAA;AAAuB,KAAA;AACzD;;;;"}
1
+ {"version":3,"file":"getCheckboxState.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.ts"],"sourcesContent":["import { createArrayOfValues } from './createArrayOfValues';\nimport { removeConditionKeyFromData } from './removeConditionKeyFromData';\n\ninterface RecursiveRecordOfBooleans extends Record<string, boolean | RecursiveRecordOfBooleans> {}\n\nconst getCheckboxState = (dataObj: RecursiveRecordOfBooleans) => {\n const dataWithoutCondition = removeConditionKeyFromData(dataObj);\n\n const arrayOfValues = createArrayOfValues(dataWithoutCondition);\n\n if (!arrayOfValues.length) {\n return { hasAllActionsSelected: false, hasSomeActionsSelected: false };\n }\n\n const hasAllActionsSelected = arrayOfValues.every((val) => val);\n const hasSomeActionsSelected = arrayOfValues.some((val) => val) && !hasAllActionsSelected;\n\n return { hasAllActionsSelected, hasSomeActionsSelected };\n};\n\nexport { getCheckboxState };\nexport type { RecursiveRecordOfBooleans };\n"],"names":["getCheckboxState","dataObj","dataWithoutCondition","removeConditionKeyFromData","arrayOfValues","createArrayOfValues","length","hasAllActionsSelected","hasSomeActionsSelected","every","val","some"],"mappings":";;;;;AAKA,MAAMA,mBAAmB,CAACC,OAAAA,GAAAA;AACxB,IAAA,MAAMC,uBAAuBC,qDAAAA,CAA2BF,OAAAA,CAAAA;AAExD,IAAA,MAAMG,gBAAgBC,uCAAAA,CAAoBH,oBAAAA,CAAAA;IAE1C,IAAI,CAACE,aAAAA,CAAcE,MAAM,EAAE;QACzB,OAAO;YAAEC,qBAAAA,EAAuB,KAAA;YAAOC,sBAAAA,EAAwB;AAAM,SAAA;AACvE,IAAA;AAEA,IAAA,MAAMD,qBAAAA,GAAwBH,aAAAA,CAAcK,KAAK,CAAC,CAACC,GAAAA,GAAQA,GAAAA,CAAAA;AAC3D,IAAA,MAAMF,yBAAyBJ,aAAAA,CAAcO,IAAI,CAAC,CAACD,GAAAA,GAAQA,QAAQ,CAACH,qBAAAA;IAEpE,OAAO;AAAEA,QAAAA,qBAAAA;AAAuBC,QAAAA;AAAuB,KAAA;AACzD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCheckboxState.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.ts"],"sourcesContent":["import { createArrayOfValues } from './createArrayOfValues';\nimport { removeConditionKeyFromData } from './removeConditionKeyFromData';\n\ninterface RecursiveRecordOfBooleans extends Record<string, boolean | RecursiveRecordOfBooleans> {}\n\nconst getCheckboxState = (dataObj: RecursiveRecordOfBooleans) => {\n const dataWithoutCondition = removeConditionKeyFromData(dataObj);\n\n const arrayOfValues = createArrayOfValues(dataWithoutCondition);\n\n if (!arrayOfValues.length) {\n return { hasAllActionsSelected: false, hasSomeActionsSelected: false };\n }\n\n const hasAllActionsSelected = arrayOfValues.every((val) => val);\n const hasSomeActionsSelected = arrayOfValues.some((val) => val) && !hasAllActionsSelected;\n\n return { hasAllActionsSelected, hasSomeActionsSelected };\n};\n\nexport { getCheckboxState };\nexport type { RecursiveRecordOfBooleans };\n"],"names":["getCheckboxState","dataObj","dataWithoutCondition","removeConditionKeyFromData","arrayOfValues","createArrayOfValues","length","hasAllActionsSelected","hasSomeActionsSelected","every","val","some"],"mappings":";;;AAKA,MAAMA,mBAAmB,CAACC,OAAAA,GAAAA;AACxB,IAAA,MAAMC,uBAAuBC,0BAA2BF,CAAAA,OAAAA,CAAAA;AAExD,IAAA,MAAMG,gBAAgBC,mBAAoBH,CAAAA,oBAAAA,CAAAA;IAE1C,IAAI,CAACE,aAAcE,CAAAA,MAAM,EAAE;QACzB,OAAO;YAAEC,qBAAuB,EAAA,KAAA;YAAOC,sBAAwB,EAAA;AAAM,SAAA;AACvE;AAEA,IAAA,MAAMD,qBAAwBH,GAAAA,aAAAA,CAAcK,KAAK,CAAC,CAACC,GAAQA,GAAAA,GAAAA,CAAAA;AAC3D,IAAA,MAAMF,yBAAyBJ,aAAcO,CAAAA,IAAI,CAAC,CAACD,GAAAA,GAAQA,QAAQ,CAACH,qBAAAA;IAEpE,OAAO;AAAEA,QAAAA,qBAAAA;AAAuBC,QAAAA;AAAuB,KAAA;AACzD;;;;"}
1
+ {"version":3,"file":"getCheckboxState.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.ts"],"sourcesContent":["import { createArrayOfValues } from './createArrayOfValues';\nimport { removeConditionKeyFromData } from './removeConditionKeyFromData';\n\ninterface RecursiveRecordOfBooleans extends Record<string, boolean | RecursiveRecordOfBooleans> {}\n\nconst getCheckboxState = (dataObj: RecursiveRecordOfBooleans) => {\n const dataWithoutCondition = removeConditionKeyFromData(dataObj);\n\n const arrayOfValues = createArrayOfValues(dataWithoutCondition);\n\n if (!arrayOfValues.length) {\n return { hasAllActionsSelected: false, hasSomeActionsSelected: false };\n }\n\n const hasAllActionsSelected = arrayOfValues.every((val) => val);\n const hasSomeActionsSelected = arrayOfValues.some((val) => val) && !hasAllActionsSelected;\n\n return { hasAllActionsSelected, hasSomeActionsSelected };\n};\n\nexport { getCheckboxState };\nexport type { RecursiveRecordOfBooleans };\n"],"names":["getCheckboxState","dataObj","dataWithoutCondition","removeConditionKeyFromData","arrayOfValues","createArrayOfValues","length","hasAllActionsSelected","hasSomeActionsSelected","every","val","some"],"mappings":";;;AAKA,MAAMA,mBAAmB,CAACC,OAAAA,GAAAA;AACxB,IAAA,MAAMC,uBAAuBC,0BAAAA,CAA2BF,OAAAA,CAAAA;AAExD,IAAA,MAAMG,gBAAgBC,mBAAAA,CAAoBH,oBAAAA,CAAAA;IAE1C,IAAI,CAACE,aAAAA,CAAcE,MAAM,EAAE;QACzB,OAAO;YAAEC,qBAAAA,EAAuB,KAAA;YAAOC,sBAAAA,EAAwB;AAAM,SAAA;AACvE,IAAA;AAEA,IAAA,MAAMD,qBAAAA,GAAwBH,aAAAA,CAAcK,KAAK,CAAC,CAACC,GAAAA,GAAQA,GAAAA,CAAAA;AAC3D,IAAA,MAAMF,yBAAyBJ,aAAAA,CAAcO,IAAI,CAAC,CAACD,GAAAA,GAAQA,QAAQ,CAACH,qBAAAA;IAEpE,OAAO;AAAEA,QAAAA,qBAAAA;AAAuBC,QAAAA;AAAuB,KAAA;AACzD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"layouts.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/layouts.ts"],"sourcesContent":["import groupBy from 'lodash/groupBy';\n\nimport { SettingPermission } from '../../../../../../../shared/contracts/permissions';\n\ninterface GenericLayout<TLayout> {\n category: string;\n categoryId: string;\n childrenForm: Array<{\n subCategoryName: string;\n subCategoryId: string;\n actions: TLayout[];\n }>;\n}\n\nconst formatLayout = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: TLayout[],\n groupByKey: keyof TLayout\n): GenericLayout<TLayout>[] => {\n return Object.entries(groupBy(layout, groupByKey)).map(([itemName, item]) => ({\n category: itemName,\n categoryId: itemName.split(' ').join('-'),\n childrenForm: Object.entries(groupBy(item, 'subCategory')).map(\n ([subCategoryName, actions]) => ({\n subCategoryName,\n subCategoryId: subCategoryName.split(' ').join('-'),\n actions,\n })\n ),\n }));\n};\n\nexport { formatLayout };\nexport type { GenericLayout };\n"],"names":["formatLayout","layout","groupByKey","Object","entries","groupBy","map","itemName","item","category","categoryId","split","join","childrenForm","subCategoryName","actions","subCategoryId"],"mappings":";;;;AAcMA,MAAAA,YAAAA,GAAe,CACnBC,MACAC,EAAAA,UAAAA,GAAAA;AAEA,IAAA,OAAOC,MAAOC,CAAAA,OAAO,CAACC,OAAAA,CAAQJ,MAAQC,EAAAA,UAAAA,CAAAA,CAAAA,CAAaI,GAAG,CAAC,CAAC,CAACC,QAAUC,EAAAA,IAAAA,CAAK,IAAM;YAC5EC,QAAUF,EAAAA,QAAAA;AACVG,YAAAA,UAAAA,EAAYH,QAASI,CAAAA,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AACrCC,YAAAA,YAAAA,EAAcV,MAAOC,CAAAA,OAAO,CAACC,OAAAA,CAAQG,IAAM,EAAA,aAAA,CAAA,CAAA,CAAgBF,GAAG,CAC5D,CAAC,CAACQ,eAAiBC,EAAAA,OAAAA,CAAQ,IAAM;AAC/BD,oBAAAA,eAAAA;AACAE,oBAAAA,aAAAA,EAAeF,eAAgBH,CAAAA,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AAC/CG,oBAAAA;iBACF,CAAA;SAEJ,CAAA,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"layouts.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/layouts.ts"],"sourcesContent":["import groupBy from 'lodash/groupBy';\n\nimport { SettingPermission } from '../../../../../../../shared/contracts/permissions';\n\ninterface GenericLayout<TLayout> {\n category: string;\n categoryId: string;\n childrenForm: Array<{\n subCategoryName: string;\n subCategoryId: string;\n actions: TLayout[];\n }>;\n}\n\nconst formatLayout = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: TLayout[],\n groupByKey: keyof TLayout\n): GenericLayout<TLayout>[] => {\n return Object.entries(groupBy(layout, groupByKey)).map(([itemName, item]) => ({\n category: itemName,\n categoryId: itemName.split(' ').join('-'),\n childrenForm: Object.entries(groupBy(item, 'subCategory')).map(\n ([subCategoryName, actions]) => ({\n subCategoryName,\n subCategoryId: subCategoryName.split(' ').join('-'),\n actions,\n })\n ),\n }));\n};\n\nexport { formatLayout };\nexport type { GenericLayout };\n"],"names":["formatLayout","layout","groupByKey","Object","entries","groupBy","map","itemName","item","category","categoryId","split","join","childrenForm","subCategoryName","actions","subCategoryId"],"mappings":";;;;AAcA,MAAMA,YAAAA,GAAe,CACnBC,MAAAA,EACAC,UAAAA,GAAAA;AAEA,IAAA,OAAOC,MAAAA,CAAOC,OAAO,CAACC,OAAAA,CAAQJ,MAAAA,EAAQC,UAAAA,CAAAA,CAAAA,CAAaI,GAAG,CAAC,CAAC,CAACC,QAAAA,EAAUC,IAAAA,CAAK,IAAM;YAC5EC,QAAAA,EAAUF,QAAAA;AACVG,YAAAA,UAAAA,EAAYH,QAAAA,CAASI,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AACrCC,YAAAA,YAAAA,EAAcV,MAAAA,CAAOC,OAAO,CAACC,OAAAA,CAAQG,IAAAA,EAAM,aAAA,CAAA,CAAA,CAAgBF,GAAG,CAC5D,CAAC,CAACQ,eAAAA,EAAiBC,OAAAA,CAAQ,IAAM;AAC/BD,oBAAAA,eAAAA;AACAE,oBAAAA,aAAAA,EAAeF,eAAAA,CAAgBH,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AAC/CG,oBAAAA;iBACF,CAAA;SAEJ,CAAA,CAAA;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"layouts.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/layouts.ts"],"sourcesContent":["import groupBy from 'lodash/groupBy';\n\nimport { SettingPermission } from '../../../../../../../shared/contracts/permissions';\n\ninterface GenericLayout<TLayout> {\n category: string;\n categoryId: string;\n childrenForm: Array<{\n subCategoryName: string;\n subCategoryId: string;\n actions: TLayout[];\n }>;\n}\n\nconst formatLayout = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: TLayout[],\n groupByKey: keyof TLayout\n): GenericLayout<TLayout>[] => {\n return Object.entries(groupBy(layout, groupByKey)).map(([itemName, item]) => ({\n category: itemName,\n categoryId: itemName.split(' ').join('-'),\n childrenForm: Object.entries(groupBy(item, 'subCategory')).map(\n ([subCategoryName, actions]) => ({\n subCategoryName,\n subCategoryId: subCategoryName.split(' ').join('-'),\n actions,\n })\n ),\n }));\n};\n\nexport { formatLayout };\nexport type { GenericLayout };\n"],"names":["formatLayout","layout","groupByKey","Object","entries","groupBy","map","itemName","item","category","categoryId","split","join","childrenForm","subCategoryName","actions","subCategoryId"],"mappings":";;AAcMA,MAAAA,YAAAA,GAAe,CACnBC,MACAC,EAAAA,UAAAA,GAAAA;AAEA,IAAA,OAAOC,MAAOC,CAAAA,OAAO,CAACC,OAAAA,CAAQJ,MAAQC,EAAAA,UAAAA,CAAAA,CAAAA,CAAaI,GAAG,CAAC,CAAC,CAACC,QAAUC,EAAAA,IAAAA,CAAK,IAAM;YAC5EC,QAAUF,EAAAA,QAAAA;AACVG,YAAAA,UAAAA,EAAYH,QAASI,CAAAA,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AACrCC,YAAAA,YAAAA,EAAcV,MAAOC,CAAAA,OAAO,CAACC,OAAAA,CAAQG,IAAM,EAAA,aAAA,CAAA,CAAA,CAAgBF,GAAG,CAC5D,CAAC,CAACQ,eAAiBC,EAAAA,OAAAA,CAAQ,IAAM;AAC/BD,oBAAAA,eAAAA;AACAE,oBAAAA,aAAAA,EAAeF,eAAgBH,CAAAA,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AAC/CG,oBAAAA;iBACF,CAAA;SAEJ,CAAA,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"layouts.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/layouts.ts"],"sourcesContent":["import groupBy from 'lodash/groupBy';\n\nimport { SettingPermission } from '../../../../../../../shared/contracts/permissions';\n\ninterface GenericLayout<TLayout> {\n category: string;\n categoryId: string;\n childrenForm: Array<{\n subCategoryName: string;\n subCategoryId: string;\n actions: TLayout[];\n }>;\n}\n\nconst formatLayout = <TLayout extends Omit<SettingPermission, 'category'>>(\n layout: TLayout[],\n groupByKey: keyof TLayout\n): GenericLayout<TLayout>[] => {\n return Object.entries(groupBy(layout, groupByKey)).map(([itemName, item]) => ({\n category: itemName,\n categoryId: itemName.split(' ').join('-'),\n childrenForm: Object.entries(groupBy(item, 'subCategory')).map(\n ([subCategoryName, actions]) => ({\n subCategoryName,\n subCategoryId: subCategoryName.split(' ').join('-'),\n actions,\n })\n ),\n }));\n};\n\nexport { formatLayout };\nexport type { GenericLayout };\n"],"names":["formatLayout","layout","groupByKey","Object","entries","groupBy","map","itemName","item","category","categoryId","split","join","childrenForm","subCategoryName","actions","subCategoryId"],"mappings":";;AAcA,MAAMA,YAAAA,GAAe,CACnBC,MAAAA,EACAC,UAAAA,GAAAA;AAEA,IAAA,OAAOC,MAAAA,CAAOC,OAAO,CAACC,OAAAA,CAAQJ,MAAAA,EAAQC,UAAAA,CAAAA,CAAAA,CAAaI,GAAG,CAAC,CAAC,CAACC,QAAAA,EAAUC,IAAAA,CAAK,IAAM;YAC5EC,QAAAA,EAAUF,QAAAA;AACVG,YAAAA,UAAAA,EAAYH,QAAAA,CAASI,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AACrCC,YAAAA,YAAAA,EAAcV,MAAAA,CAAOC,OAAO,CAACC,OAAAA,CAAQG,IAAAA,EAAM,aAAA,CAAA,CAAA,CAAgBF,GAAG,CAC5D,CAAC,CAACQ,eAAAA,EAAiBC,OAAAA,CAAQ,IAAM;AAC/BD,oBAAAA,eAAAA;AACAE,oBAAAA,aAAAA,EAAeF,eAAAA,CAAgBH,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,GAAA,CAAA;AAC/CG,oBAAAA;iBACF,CAAA;SAEJ,CAAA,CAAA;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/permissions.ts"],"sourcesContent":["import { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n\nimport type { ConditionForm, Form, PropertyChildForm } from './forms';\nimport type { UpdatePermissions } from '../../../../../../../shared/contracts/roles';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\nimport type { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\n\ntype PermissionApiBody = UpdatePermissions.Request['body']['permissions'];\n\n/**\n * @description Given a users permissions array we find the first one that matches a provided subject & action\n */\nconst findMatchingPermission = (\n permissions: Permission[],\n action: string,\n subject: string | null\n) => permissions.find((perm) => perm.action === action && perm.subject === subject);\n\nconst formatPermissionsForAPI = (\n modifiedData: PermissionsDataManagerContextValue['modifiedData']\n): PermissionApiBody => {\n const pluginsPermissions = formatSettingsPermissions(modifiedData.plugins);\n const settingsPermissions = formatSettingsPermissions(modifiedData.settings);\n const collectionTypesPermissions = formatContentTypesPermissions(modifiedData.collectionTypes);\n const singleTypesPermissions = formatContentTypesPermissions(modifiedData.singleTypes);\n\n return [\n ...pluginsPermissions,\n ...settingsPermissions,\n ...collectionTypesPermissions,\n ...singleTypesPermissions,\n ];\n};\n\nconst formatSettingsPermissions = (\n settingsPermissionsObject:\n | PermissionsDataManagerContextValue['modifiedData']['plugins']\n | PermissionsDataManagerContextValue['modifiedData']['settings']\n): PermissionApiBody => {\n return Object.values(settingsPermissionsObject).reduce<PermissionApiBody>((formAcc, form) => {\n const currentCategoryPermissions = Object.values(form).reduce<PermissionApiBody>(\n (childFormAcc, childForm) => {\n const permissions = Object.entries(childForm).reduce<PermissionApiBody>(\n (\n responsesAcc,\n [\n actionName,\n {\n conditions,\n properties: { enabled },\n },\n ]\n ) => {\n if (!enabled) {\n return responsesAcc;\n }\n\n responsesAcc.push({\n action: actionName,\n subject: null,\n conditions: createConditionsArray(conditions),\n properties: {},\n });\n\n return responsesAcc;\n },\n []\n );\n\n return [...childFormAcc, ...permissions];\n },\n []\n );\n\n return [...formAcc, ...currentCategoryPermissions];\n }, []);\n};\n\nconst formatContentTypesPermissions = (contentTypesPermissions: Form): PermissionApiBody => {\n const permissions = Object.entries(contentTypesPermissions).reduce<PermissionApiBody>(\n (allPermissions, current) => {\n const [subject, currentSubjectActions] = current;\n\n const permissions = Object.entries(currentSubjectActions).reduce<PermissionApiBody>(\n (acc, current) => {\n const [actionName, permissions] = current;\n const shouldCreatePermission = createArrayOfValues(permissions).some((val) => val);\n\n if (!shouldCreatePermission) {\n return acc;\n }\n\n if (!permissions?.properties?.enabled) {\n const createdPermissionsArray = Object.entries(permissions.properties).reduce<\n PermissionApiBody[number]\n >(\n (acc, current) => {\n const [propertyName, propertyValue] = current;\n\n // @ts-expect-error – `propertyValue` can be boolean or an object, but we don't account for it...\n acc.properties[propertyName] = createPropertyArray(propertyValue);\n\n return acc;\n },\n {\n action: actionName,\n subject,\n conditions: createConditionsArray(permissions.conditions),\n properties: {},\n }\n );\n\n return [...acc, createdPermissionsArray];\n }\n\n if (!permissions.properties.enabled) {\n return acc;\n }\n\n acc.push({\n action: actionName,\n subject,\n properties: {},\n conditions: createConditionsArray(permissions.conditions),\n });\n\n return acc;\n },\n []\n );\n\n return [...allPermissions, ...permissions];\n },\n []\n );\n\n return permissions;\n};\n\nconst createPropertyArray = (propertyValue: PropertyChildForm, prefix = ''): string[] => {\n return Object.entries(propertyValue).reduce<string[]>((acc, current) => {\n const [name, value] = current;\n\n if (isObject(value)) {\n return [...acc, ...createPropertyArray(value, `${prefix}${name}.`)];\n }\n\n if (value && !isObject(value)) {\n acc.push(`${prefix}${name}`);\n }\n\n return acc;\n }, []);\n};\n\nconst createConditionsArray = (conditions: ConditionForm) =>\n Object.entries(conditions)\n .filter(([, conditionValue]) => {\n return conditionValue;\n })\n .map(([conditionName]) => conditionName);\n\nexport { findMatchingPermission, formatPermissionsForAPI };\n"],"names":["findMatchingPermission","permissions","action","subject","find","perm","formatPermissionsForAPI","modifiedData","pluginsPermissions","formatSettingsPermissions","plugins","settingsPermissions","settings","collectionTypesPermissions","formatContentTypesPermissions","collectionTypes","singleTypesPermissions","singleTypes","settingsPermissionsObject","Object","values","reduce","formAcc","form","currentCategoryPermissions","childFormAcc","childForm","entries","responsesAcc","actionName","conditions","properties","enabled","push","createConditionsArray","contentTypesPermissions","allPermissions","current","currentSubjectActions","acc","shouldCreatePermission","createArrayOfValues","some","val","createdPermissionsArray","propertyName","propertyValue","createPropertyArray","prefix","name","value","isObject","filter","conditionValue","map","conditionName"],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/permissions.ts"],"sourcesContent":["import { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n\nimport type { ConditionForm, Form, PropertyChildForm } from './forms';\nimport type { UpdatePermissions } from '../../../../../../../shared/contracts/roles';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\nimport type { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\n\ntype PermissionApiBody = UpdatePermissions.Request['body']['permissions'];\n\n/**\n * @description Given a users permissions array we find the first one that matches a provided subject & action\n */\nconst findMatchingPermission = (\n permissions: Permission[],\n action: string,\n subject: string | null\n) => permissions.find((perm) => perm.action === action && perm.subject === subject);\n\nconst formatPermissionsForAPI = (\n modifiedData: PermissionsDataManagerContextValue['modifiedData']\n): PermissionApiBody => {\n const pluginsPermissions = formatSettingsPermissions(modifiedData.plugins);\n const settingsPermissions = formatSettingsPermissions(modifiedData.settings);\n const collectionTypesPermissions = formatContentTypesPermissions(modifiedData.collectionTypes);\n const singleTypesPermissions = formatContentTypesPermissions(modifiedData.singleTypes);\n\n return [\n ...pluginsPermissions,\n ...settingsPermissions,\n ...collectionTypesPermissions,\n ...singleTypesPermissions,\n ];\n};\n\nconst formatSettingsPermissions = (\n settingsPermissionsObject:\n | PermissionsDataManagerContextValue['modifiedData']['plugins']\n | PermissionsDataManagerContextValue['modifiedData']['settings']\n): PermissionApiBody => {\n return Object.values(settingsPermissionsObject).reduce<PermissionApiBody>((formAcc, form) => {\n const currentCategoryPermissions = Object.values(form).reduce<PermissionApiBody>(\n (childFormAcc, childForm) => {\n const permissions = Object.entries(childForm).reduce<PermissionApiBody>(\n (\n responsesAcc,\n [\n actionName,\n {\n conditions,\n properties: { enabled },\n },\n ]\n ) => {\n if (!enabled) {\n return responsesAcc;\n }\n\n responsesAcc.push({\n action: actionName,\n subject: null,\n conditions: createConditionsArray(conditions),\n properties: {},\n });\n\n return responsesAcc;\n },\n []\n );\n\n return [...childFormAcc, ...permissions];\n },\n []\n );\n\n return [...formAcc, ...currentCategoryPermissions];\n }, []);\n};\n\nconst formatContentTypesPermissions = (contentTypesPermissions: Form): PermissionApiBody => {\n const permissions = Object.entries(contentTypesPermissions).reduce<PermissionApiBody>(\n (allPermissions, current) => {\n const [subject, currentSubjectActions] = current;\n\n const permissions = Object.entries(currentSubjectActions).reduce<PermissionApiBody>(\n (acc, current) => {\n const [actionName, permissions] = current;\n const shouldCreatePermission = createArrayOfValues(permissions).some((val) => val);\n\n if (!shouldCreatePermission) {\n return acc;\n }\n\n if (!permissions?.properties?.enabled) {\n const createdPermissionsArray = Object.entries(permissions.properties).reduce<\n PermissionApiBody[number]\n >(\n (acc, current) => {\n const [propertyName, propertyValue] = current;\n\n // @ts-expect-error – `propertyValue` can be boolean or an object, but we don't account for it...\n acc.properties[propertyName] = createPropertyArray(propertyValue);\n\n return acc;\n },\n {\n action: actionName,\n subject,\n conditions: createConditionsArray(permissions.conditions),\n properties: {},\n }\n );\n\n return [...acc, createdPermissionsArray];\n }\n\n if (!permissions.properties.enabled) {\n return acc;\n }\n\n acc.push({\n action: actionName,\n subject,\n properties: {},\n conditions: createConditionsArray(permissions.conditions),\n });\n\n return acc;\n },\n []\n );\n\n return [...allPermissions, ...permissions];\n },\n []\n );\n\n return permissions;\n};\n\nconst createPropertyArray = (propertyValue: PropertyChildForm, prefix = ''): string[] => {\n return Object.entries(propertyValue).reduce<string[]>((acc, current) => {\n const [name, value] = current;\n\n if (isObject(value)) {\n return [...acc, ...createPropertyArray(value, `${prefix}${name}.`)];\n }\n\n if (value && !isObject(value)) {\n acc.push(`${prefix}${name}`);\n }\n\n return acc;\n }, []);\n};\n\nconst createConditionsArray = (conditions: ConditionForm) =>\n Object.entries(conditions)\n .filter(([, conditionValue]) => {\n return conditionValue;\n })\n .map(([conditionName]) => conditionName);\n\nexport { findMatchingPermission, formatPermissionsForAPI };\n"],"names":["findMatchingPermission","permissions","action","subject","find","perm","formatPermissionsForAPI","modifiedData","pluginsPermissions","formatSettingsPermissions","plugins","settingsPermissions","settings","collectionTypesPermissions","formatContentTypesPermissions","collectionTypes","singleTypesPermissions","singleTypes","settingsPermissionsObject","Object","values","reduce","formAcc","form","currentCategoryPermissions","childFormAcc","childForm","entries","responsesAcc","actionName","conditions","properties","enabled","push","createConditionsArray","contentTypesPermissions","allPermissions","current","currentSubjectActions","acc","shouldCreatePermission","createArrayOfValues","some","val","createdPermissionsArray","propertyName","propertyValue","createPropertyArray","prefix","name","value","isObject","filter","conditionValue","map","conditionName"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/permissions.ts"],"sourcesContent":["import { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n\nimport type { ConditionForm, Form, PropertyChildForm } from './forms';\nimport type { UpdatePermissions } from '../../../../../../../shared/contracts/roles';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\nimport type { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\n\ntype PermissionApiBody = UpdatePermissions.Request['body']['permissions'];\n\n/**\n * @description Given a users permissions array we find the first one that matches a provided subject & action\n */\nconst findMatchingPermission = (\n permissions: Permission[],\n action: string,\n subject: string | null\n) => permissions.find((perm) => perm.action === action && perm.subject === subject);\n\nconst formatPermissionsForAPI = (\n modifiedData: PermissionsDataManagerContextValue['modifiedData']\n): PermissionApiBody => {\n const pluginsPermissions = formatSettingsPermissions(modifiedData.plugins);\n const settingsPermissions = formatSettingsPermissions(modifiedData.settings);\n const collectionTypesPermissions = formatContentTypesPermissions(modifiedData.collectionTypes);\n const singleTypesPermissions = formatContentTypesPermissions(modifiedData.singleTypes);\n\n return [\n ...pluginsPermissions,\n ...settingsPermissions,\n ...collectionTypesPermissions,\n ...singleTypesPermissions,\n ];\n};\n\nconst formatSettingsPermissions = (\n settingsPermissionsObject:\n | PermissionsDataManagerContextValue['modifiedData']['plugins']\n | PermissionsDataManagerContextValue['modifiedData']['settings']\n): PermissionApiBody => {\n return Object.values(settingsPermissionsObject).reduce<PermissionApiBody>((formAcc, form) => {\n const currentCategoryPermissions = Object.values(form).reduce<PermissionApiBody>(\n (childFormAcc, childForm) => {\n const permissions = Object.entries(childForm).reduce<PermissionApiBody>(\n (\n responsesAcc,\n [\n actionName,\n {\n conditions,\n properties: { enabled },\n },\n ]\n ) => {\n if (!enabled) {\n return responsesAcc;\n }\n\n responsesAcc.push({\n action: actionName,\n subject: null,\n conditions: createConditionsArray(conditions),\n properties: {},\n });\n\n return responsesAcc;\n },\n []\n );\n\n return [...childFormAcc, ...permissions];\n },\n []\n );\n\n return [...formAcc, ...currentCategoryPermissions];\n }, []);\n};\n\nconst formatContentTypesPermissions = (contentTypesPermissions: Form): PermissionApiBody => {\n const permissions = Object.entries(contentTypesPermissions).reduce<PermissionApiBody>(\n (allPermissions, current) => {\n const [subject, currentSubjectActions] = current;\n\n const permissions = Object.entries(currentSubjectActions).reduce<PermissionApiBody>(\n (acc, current) => {\n const [actionName, permissions] = current;\n const shouldCreatePermission = createArrayOfValues(permissions).some((val) => val);\n\n if (!shouldCreatePermission) {\n return acc;\n }\n\n if (!permissions?.properties?.enabled) {\n const createdPermissionsArray = Object.entries(permissions.properties).reduce<\n PermissionApiBody[number]\n >(\n (acc, current) => {\n const [propertyName, propertyValue] = current;\n\n // @ts-expect-error – `propertyValue` can be boolean or an object, but we don't account for it...\n acc.properties[propertyName] = createPropertyArray(propertyValue);\n\n return acc;\n },\n {\n action: actionName,\n subject,\n conditions: createConditionsArray(permissions.conditions),\n properties: {},\n }\n );\n\n return [...acc, createdPermissionsArray];\n }\n\n if (!permissions.properties.enabled) {\n return acc;\n }\n\n acc.push({\n action: actionName,\n subject,\n properties: {},\n conditions: createConditionsArray(permissions.conditions),\n });\n\n return acc;\n },\n []\n );\n\n return [...allPermissions, ...permissions];\n },\n []\n );\n\n return permissions;\n};\n\nconst createPropertyArray = (propertyValue: PropertyChildForm, prefix = ''): string[] => {\n return Object.entries(propertyValue).reduce<string[]>((acc, current) => {\n const [name, value] = current;\n\n if (isObject(value)) {\n return [...acc, ...createPropertyArray(value, `${prefix}${name}.`)];\n }\n\n if (value && !isObject(value)) {\n acc.push(`${prefix}${name}`);\n }\n\n return acc;\n }, []);\n};\n\nconst createConditionsArray = (conditions: ConditionForm) =>\n Object.entries(conditions)\n .filter(([, conditionValue]) => {\n return conditionValue;\n })\n .map(([conditionName]) => conditionName);\n\nexport { findMatchingPermission, formatPermissionsForAPI };\n"],"names":["findMatchingPermission","permissions","action","subject","find","perm","formatPermissionsForAPI","modifiedData","pluginsPermissions","formatSettingsPermissions","plugins","settingsPermissions","settings","collectionTypesPermissions","formatContentTypesPermissions","collectionTypes","singleTypesPermissions","singleTypes","settingsPermissionsObject","Object","values","reduce","formAcc","form","currentCategoryPermissions","childFormAcc","childForm","entries","responsesAcc","actionName","conditions","properties","enabled","push","createConditionsArray","contentTypesPermissions","allPermissions","current","currentSubjectActions","acc","shouldCreatePermission","createArrayOfValues","some","val","createdPermissionsArray","propertyName","propertyValue","createPropertyArray","prefix","name","value","isObject","filter","conditionValue","map","conditionName"],"mappings":"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"}
1
+ {"version":3,"file":"permissions.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/permissions.ts"],"sourcesContent":["import { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n\nimport type { ConditionForm, Form, PropertyChildForm } from './forms';\nimport type { UpdatePermissions } from '../../../../../../../shared/contracts/roles';\nimport type { Permission } from '../../../../../../../shared/contracts/shared';\nimport type { PermissionsDataManagerContextValue } from '../hooks/usePermissionsDataManager';\n\ntype PermissionApiBody = UpdatePermissions.Request['body']['permissions'];\n\n/**\n * @description Given a users permissions array we find the first one that matches a provided subject & action\n */\nconst findMatchingPermission = (\n permissions: Permission[],\n action: string,\n subject: string | null\n) => permissions.find((perm) => perm.action === action && perm.subject === subject);\n\nconst formatPermissionsForAPI = (\n modifiedData: PermissionsDataManagerContextValue['modifiedData']\n): PermissionApiBody => {\n const pluginsPermissions = formatSettingsPermissions(modifiedData.plugins);\n const settingsPermissions = formatSettingsPermissions(modifiedData.settings);\n const collectionTypesPermissions = formatContentTypesPermissions(modifiedData.collectionTypes);\n const singleTypesPermissions = formatContentTypesPermissions(modifiedData.singleTypes);\n\n return [\n ...pluginsPermissions,\n ...settingsPermissions,\n ...collectionTypesPermissions,\n ...singleTypesPermissions,\n ];\n};\n\nconst formatSettingsPermissions = (\n settingsPermissionsObject:\n | PermissionsDataManagerContextValue['modifiedData']['plugins']\n | PermissionsDataManagerContextValue['modifiedData']['settings']\n): PermissionApiBody => {\n return Object.values(settingsPermissionsObject).reduce<PermissionApiBody>((formAcc, form) => {\n const currentCategoryPermissions = Object.values(form).reduce<PermissionApiBody>(\n (childFormAcc, childForm) => {\n const permissions = Object.entries(childForm).reduce<PermissionApiBody>(\n (\n responsesAcc,\n [\n actionName,\n {\n conditions,\n properties: { enabled },\n },\n ]\n ) => {\n if (!enabled) {\n return responsesAcc;\n }\n\n responsesAcc.push({\n action: actionName,\n subject: null,\n conditions: createConditionsArray(conditions),\n properties: {},\n });\n\n return responsesAcc;\n },\n []\n );\n\n return [...childFormAcc, ...permissions];\n },\n []\n );\n\n return [...formAcc, ...currentCategoryPermissions];\n }, []);\n};\n\nconst formatContentTypesPermissions = (contentTypesPermissions: Form): PermissionApiBody => {\n const permissions = Object.entries(contentTypesPermissions).reduce<PermissionApiBody>(\n (allPermissions, current) => {\n const [subject, currentSubjectActions] = current;\n\n const permissions = Object.entries(currentSubjectActions).reduce<PermissionApiBody>(\n (acc, current) => {\n const [actionName, permissions] = current;\n const shouldCreatePermission = createArrayOfValues(permissions).some((val) => val);\n\n if (!shouldCreatePermission) {\n return acc;\n }\n\n if (!permissions?.properties?.enabled) {\n const createdPermissionsArray = Object.entries(permissions.properties).reduce<\n PermissionApiBody[number]\n >(\n (acc, current) => {\n const [propertyName, propertyValue] = current;\n\n // @ts-expect-error – `propertyValue` can be boolean or an object, but we don't account for it...\n acc.properties[propertyName] = createPropertyArray(propertyValue);\n\n return acc;\n },\n {\n action: actionName,\n subject,\n conditions: createConditionsArray(permissions.conditions),\n properties: {},\n }\n );\n\n return [...acc, createdPermissionsArray];\n }\n\n if (!permissions.properties.enabled) {\n return acc;\n }\n\n acc.push({\n action: actionName,\n subject,\n properties: {},\n conditions: createConditionsArray(permissions.conditions),\n });\n\n return acc;\n },\n []\n );\n\n return [...allPermissions, ...permissions];\n },\n []\n );\n\n return permissions;\n};\n\nconst createPropertyArray = (propertyValue: PropertyChildForm, prefix = ''): string[] => {\n return Object.entries(propertyValue).reduce<string[]>((acc, current) => {\n const [name, value] = current;\n\n if (isObject(value)) {\n return [...acc, ...createPropertyArray(value, `${prefix}${name}.`)];\n }\n\n if (value && !isObject(value)) {\n acc.push(`${prefix}${name}`);\n }\n\n return acc;\n }, []);\n};\n\nconst createConditionsArray = (conditions: ConditionForm) =>\n Object.entries(conditions)\n .filter(([, conditionValue]) => {\n return conditionValue;\n })\n .map(([conditionName]) => conditionName);\n\nexport { findMatchingPermission, formatPermissionsForAPI };\n"],"names":["findMatchingPermission","permissions","action","subject","find","perm","formatPermissionsForAPI","modifiedData","pluginsPermissions","formatSettingsPermissions","plugins","settingsPermissions","settings","collectionTypesPermissions","formatContentTypesPermissions","collectionTypes","singleTypesPermissions","singleTypes","settingsPermissionsObject","Object","values","reduce","formAcc","form","currentCategoryPermissions","childFormAcc","childForm","entries","responsesAcc","actionName","conditions","properties","enabled","push","createConditionsArray","contentTypesPermissions","allPermissions","current","currentSubjectActions","acc","shouldCreatePermission","createArrayOfValues","some","val","createdPermissionsArray","propertyName","propertyValue","createPropertyArray","prefix","name","value","isObject","filter","conditionValue","map","conditionName"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"removeConditionKeyFromData.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.ts"],"sourcesContent":["type DataWithoutCondition<TData extends { conditions?: unknown }> = Omit<TData, 'conditions'>;\n\nconst removeConditionKeyFromData = <TData extends { conditions?: unknown }>(\n obj?: TData\n): DataWithoutCondition<TData> | null => {\n if (!obj) {\n return null;\n }\n\n return Object.entries(obj).reduce((acc, [key, value]) => {\n if (key !== 'conditions') {\n // @ts-expect-error – TODO: fix this type error correctly.\n acc[key] = value;\n }\n\n return acc;\n }, {} as DataWithoutCondition<TData>);\n};\n\nexport { removeConditionKeyFromData };\nexport type { DataWithoutCondition };\n"],"names":["removeConditionKeyFromData","obj","Object","entries","reduce","acc","key","value"],"mappings":";;AAEA,MAAMA,6BAA6B,CACjCC,GAAAA,GAAAA;AAEA,IAAA,IAAI,CAACA,GAAK,EAAA;QACR,OAAO,IAAA;AACT;IAEA,OAAOC,MAAAA,CAAOC,OAAO,CAACF,GAAKG,CAAAA,CAAAA,MAAM,CAAC,CAACC,GAAAA,EAAK,CAACC,GAAAA,EAAKC,KAAM,CAAA,GAAA;AAClD,QAAA,IAAID,QAAQ,YAAc,EAAA;;YAExBD,GAAG,CAACC,IAAI,GAAGC,KAAAA;AACb;QAEA,OAAOF,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
1
+ {"version":3,"file":"removeConditionKeyFromData.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.ts"],"sourcesContent":["type DataWithoutCondition<TData extends { conditions?: unknown }> = Omit<TData, 'conditions'>;\n\nconst removeConditionKeyFromData = <TData extends { conditions?: unknown }>(\n obj?: TData\n): DataWithoutCondition<TData> | null => {\n if (!obj) {\n return null;\n }\n\n return Object.entries(obj).reduce((acc, [key, value]) => {\n if (key !== 'conditions') {\n // @ts-expect-error – TODO: fix this type error correctly.\n acc[key] = value;\n }\n\n return acc;\n }, {} as DataWithoutCondition<TData>);\n};\n\nexport { removeConditionKeyFromData };\nexport type { DataWithoutCondition };\n"],"names":["removeConditionKeyFromData","obj","Object","entries","reduce","acc","key","value"],"mappings":";;AAEA,MAAMA,6BAA6B,CACjCC,GAAAA,GAAAA;AAEA,IAAA,IAAI,CAACA,GAAAA,EAAK;QACR,OAAO,IAAA;AACT,IAAA;IAEA,OAAOC,MAAAA,CAAOC,OAAO,CAACF,GAAAA,CAAAA,CAAKG,MAAM,CAAC,CAACC,GAAAA,EAAK,CAACC,GAAAA,EAAKC,KAAAA,CAAM,GAAA;AAClD,QAAA,IAAID,QAAQ,YAAA,EAAc;;YAExBD,GAAG,CAACC,IAAI,GAAGC,KAAAA;AACb,QAAA;QAEA,OAAOF,GAAAA;AACT,IAAA,CAAA,EAAG,EAAC,CAAA;AACN;;;;"}