@strapi/admin 5.25.0 → 5.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/dist/admin/admin/src/App.js +6 -2
  2. package/dist/admin/admin/src/App.js.map +1 -1
  3. package/dist/admin/admin/src/App.mjs +7 -3
  4. package/dist/admin/admin/src/App.mjs.map +1 -1
  5. package/dist/admin/admin/src/components/ErrorElement.js +10 -3
  6. package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
  7. package/dist/admin/admin/src/components/ErrorElement.mjs +10 -3
  8. package/dist/admin/admin/src/components/ErrorElement.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/GuidedTour/Context.js +26 -1
  10. package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
  11. package/dist/admin/admin/src/components/GuidedTour/Context.mjs +26 -1
  12. package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -1
  13. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js +15 -0
  14. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js.map +1 -0
  15. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs +13 -0
  16. package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs.map +1 -0
  17. package/dist/admin/admin/src/components/GuidedTour/Overview.js +2 -1
  18. package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
  19. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs +2 -1
  20. package/dist/admin/admin/src/components/GuidedTour/Overview.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js +162 -25
  22. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js.map +1 -1
  23. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs +164 -27
  24. package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js +28 -9
  26. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
  27. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs +30 -11
  28. package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/GuidedTour/Tours.js +1 -1
  30. package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
  31. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs +1 -1
  32. package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -1
  33. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js +2 -1
  34. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js.map +1 -1
  35. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs +2 -1
  36. package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +3 -2
  38. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  39. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs +3 -2
  40. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
  41. package/dist/admin/admin/src/components/Layouts/ContentLayout.js +3 -2
  42. package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
  43. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs +3 -2
  44. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
  45. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js +65 -32
  46. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
  47. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +66 -33
  48. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
  49. package/dist/admin/admin/src/components/Layouts/Layout.js +29 -6
  50. package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
  51. package/dist/admin/admin/src/components/Layouts/Layout.mjs +30 -7
  52. package/dist/admin/admin/src/components/Layouts/Layout.mjs.map +1 -1
  53. package/dist/admin/admin/src/components/LeftMenu.js +147 -92
  54. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  55. package/dist/admin/admin/src/components/LeftMenu.mjs +131 -95
  56. package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
  57. package/dist/admin/admin/src/components/MainNav/MainNav.js +20 -6
  58. package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
  59. package/dist/admin/admin/src/components/MainNav/MainNav.mjs +20 -6
  60. package/dist/admin/admin/src/components/MainNav/MainNav.mjs.map +1 -1
  61. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +157 -0
  62. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -0
  63. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +154 -0
  64. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -0
  65. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js +65 -0
  66. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -0
  67. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs +63 -0
  68. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs.map +1 -0
  69. package/dist/admin/admin/src/components/MainNav/NavLink.js +2 -1
  70. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  71. package/dist/admin/admin/src/components/MainNav/NavLink.mjs +2 -1
  72. package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
  73. package/dist/admin/admin/src/components/MainNav/NavUser.js +39 -22
  74. package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
  75. package/dist/admin/admin/src/components/MainNav/NavUser.mjs +39 -22
  76. package/dist/admin/admin/src/components/MainNav/NavUser.mjs.map +1 -1
  77. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js +8 -1
  78. package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
  79. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs +9 -2
  80. package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs.map +1 -1
  81. package/dist/admin/admin/src/components/NpsSurvey.js +161 -120
  82. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  83. package/dist/admin/admin/src/components/NpsSurvey.mjs +162 -121
  84. package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
  85. package/dist/admin/admin/src/components/PageHelpers.js +1 -1
  86. package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
  87. package/dist/admin/admin/src/components/PageHelpers.mjs +1 -1
  88. package/dist/admin/admin/src/components/PageHelpers.mjs.map +1 -1
  89. package/dist/admin/admin/src/components/Providers.js +2 -4
  90. package/dist/admin/admin/src/components/Providers.js.map +1 -1
  91. package/dist/admin/admin/src/components/Providers.mjs +2 -4
  92. package/dist/admin/admin/src/components/Providers.mjs.map +1 -1
  93. package/dist/admin/admin/src/components/SubNav.js +98 -33
  94. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  95. package/dist/admin/admin/src/components/SubNav.mjs +99 -34
  96. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  97. package/dist/admin/admin/src/components/UpsellBanner.js +3 -2
  98. package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
  99. package/dist/admin/admin/src/components/UpsellBanner.mjs +3 -2
  100. package/dist/admin/admin/src/components/UpsellBanner.mjs.map +1 -1
  101. package/dist/admin/admin/src/constants/theme.js +12 -0
  102. package/dist/admin/admin/src/constants/theme.js.map +1 -0
  103. package/dist/admin/admin/src/constants/theme.mjs +9 -0
  104. package/dist/admin/admin/src/constants/theme.mjs.map +1 -0
  105. package/dist/admin/admin/src/features/Notifications.js +14 -7
  106. package/dist/admin/admin/src/features/Notifications.js.map +1 -1
  107. package/dist/admin/admin/src/features/Notifications.mjs +15 -8
  108. package/dist/admin/admin/src/features/Notifications.mjs.map +1 -1
  109. package/dist/admin/admin/src/features/Tracking.js +7 -2
  110. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  111. package/dist/admin/admin/src/features/Tracking.mjs +7 -2
  112. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  113. package/dist/admin/admin/src/hooks/useAIAvailability.js +13 -0
  114. package/dist/admin/admin/src/hooks/useAIAvailability.js.map +1 -0
  115. package/dist/admin/admin/src/hooks/useAIAvailability.mjs +11 -0
  116. package/dist/admin/admin/src/hooks/useAIAvailability.mjs.map +1 -0
  117. package/dist/admin/admin/src/hooks/useDeviceType.js +43 -0
  118. package/dist/admin/admin/src/hooks/useDeviceType.js.map +1 -0
  119. package/dist/admin/admin/src/hooks/useDeviceType.mjs +22 -0
  120. package/dist/admin/admin/src/hooks/useDeviceType.mjs.map +1 -0
  121. package/dist/admin/admin/src/hooks/useMediaQuery.js +70 -0
  122. package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -0
  123. package/dist/admin/admin/src/hooks/useMediaQuery.mjs +46 -0
  124. package/dist/admin/admin/src/hooks/useMediaQuery.mjs.map +1 -0
  125. package/dist/admin/admin/src/hooks/useMenu.js +19 -0
  126. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  127. package/dist/admin/admin/src/hooks/useMenu.mjs +19 -0
  128. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  129. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +15 -2
  130. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  131. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +15 -2
  132. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  133. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js +11 -7
  134. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
  135. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs +11 -7
  136. package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs.map +1 -1
  137. package/dist/admin/admin/src/pages/Auth/components/Login.js +3 -0
  138. package/dist/admin/admin/src/pages/Auth/components/Login.js.map +1 -1
  139. package/dist/admin/admin/src/pages/Auth/components/Login.mjs +3 -0
  140. package/dist/admin/admin/src/pages/Auth/components/Login.mjs.map +1 -1
  141. package/dist/admin/admin/src/pages/Home/HomePage.js +56 -54
  142. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  143. package/dist/admin/admin/src/pages/Home/HomePage.mjs +56 -54
  144. package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
  145. package/dist/admin/admin/src/pages/ProfilePage.js +54 -51
  146. package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
  147. package/dist/admin/admin/src/pages/ProfilePage.mjs +55 -52
  148. package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
  149. package/dist/admin/admin/src/pages/Settings/Layout.js +42 -6
  150. package/dist/admin/admin/src/pages/Settings/Layout.js.map +1 -1
  151. package/dist/admin/admin/src/pages/Settings/Layout.mjs +43 -7
  152. package/dist/admin/admin/src/pages/Settings/Layout.mjs.map +1 -1
  153. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +44 -32
  154. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  155. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +45 -33
  156. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  157. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +13 -2
  158. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  159. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +14 -3
  160. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  161. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js +1 -1
  162. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js.map +1 -1
  163. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs +2 -2
  164. package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs.map +1 -1
  165. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js +4 -3
  166. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js.map +1 -1
  167. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs +5 -4
  168. package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs.map +1 -1
  169. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js +4 -3
  170. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js.map +1 -1
  171. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs +5 -4
  172. package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs.map +1 -1
  173. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js +4 -3
  174. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js.map +1 -1
  175. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs +5 -4
  176. package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs.map +1 -1
  177. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js +36 -32
  178. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
  179. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs +36 -32
  180. package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs.map +1 -1
  181. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js +1 -1
  182. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
  183. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -1
  184. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
  185. package/dist/admin/admin/src/render.js +6 -1
  186. package/dist/admin/admin/src/render.js.map +1 -1
  187. package/dist/admin/admin/src/render.mjs +6 -1
  188. package/dist/admin/admin/src/render.mjs.map +1 -1
  189. package/dist/admin/admin/src/services/api.js +2 -1
  190. package/dist/admin/admin/src/services/api.js.map +1 -1
  191. package/dist/admin/admin/src/services/api.mjs +2 -1
  192. package/dist/admin/admin/src/services/api.mjs.map +1 -1
  193. package/dist/admin/admin/src/services/auth.js +13 -2
  194. package/dist/admin/admin/src/services/auth.js.map +1 -1
  195. package/dist/admin/admin/src/services/auth.mjs +12 -3
  196. package/dist/admin/admin/src/services/auth.mjs.map +1 -1
  197. package/dist/admin/admin/src/translations/en.json.js +3 -0
  198. package/dist/admin/admin/src/translations/en.json.js.map +1 -1
  199. package/dist/admin/admin/src/translations/en.json.mjs +3 -0
  200. package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
  201. package/dist/admin/ee/admin/src/components/GlobalNotifications.js +11 -0
  202. package/dist/admin/ee/admin/src/components/GlobalNotifications.js.map +1 -0
  203. package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs +9 -0
  204. package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs.map +1 -0
  205. package/dist/admin/ee/admin/src/hooks/useAIAvailability.js +11 -0
  206. package/dist/admin/ee/admin/src/hooks/useAIAvailability.js.map +1 -0
  207. package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs +9 -0
  208. package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs.map +1 -0
  209. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js +82 -0
  210. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js.map +1 -0
  211. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs +80 -0
  212. package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs.map +1 -0
  213. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +102 -0
  214. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -0
  215. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs +100 -0
  216. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs.map +1 -0
  217. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js +1 -1
  218. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  219. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs +1 -1
  220. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  221. package/dist/admin/ee/admin/src/services/ai.js +33 -0
  222. package/dist/admin/ee/admin/src/services/ai.js.map +1 -0
  223. package/dist/admin/ee/admin/src/services/ai.mjs +29 -0
  224. package/dist/admin/ee/admin/src/services/ai.mjs.map +1 -0
  225. package/dist/admin/ee.js +4 -0
  226. package/dist/admin/ee.js.map +1 -1
  227. package/dist/admin/ee.mjs +2 -0
  228. package/dist/admin/ee.mjs.map +1 -1
  229. package/dist/admin/index.js +13 -0
  230. package/dist/admin/index.js.map +1 -1
  231. package/dist/admin/index.mjs +5 -0
  232. package/dist/admin/index.mjs.map +1 -1
  233. package/dist/admin/src/components/GuidedTour/Context.d.ts +11 -0
  234. package/dist/admin/src/components/GuidedTour/GuidedTourProvider.d.ts +6 -0
  235. package/dist/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.d.ts +7 -16
  236. package/dist/admin/src/components/GuidedTour/Tours.d.ts +1 -22
  237. package/dist/admin/src/components/LeftMenu.d.ts +2 -2
  238. package/dist/admin/src/components/MainNav/MainNavLinks.d.ts +11 -0
  239. package/dist/admin/src/components/MainNav/NavBurgerMenu.d.ts +9 -0
  240. package/dist/admin/src/components/MainNav/NavUser.d.ts +5 -4
  241. package/dist/admin/src/components/SubNav.d.ts +18 -5
  242. package/dist/admin/src/constants/theme.d.ts +7 -0
  243. package/dist/admin/src/core/store/configure.d.ts +2 -2
  244. package/dist/admin/src/core/store/hooks.d.ts +2 -2
  245. package/dist/admin/src/ee.d.ts +2 -0
  246. package/dist/admin/src/features/Tracking.d.ts +21 -2
  247. package/dist/admin/src/hooks/useAIAvailability.d.ts +5 -0
  248. package/dist/admin/src/hooks/useAdminRoles.d.ts +1 -1
  249. package/dist/admin/src/hooks/useDeviceType.d.ts +6 -0
  250. package/dist/admin/src/hooks/useMediaQuery.d.ts +21 -0
  251. package/dist/admin/src/hooks/useMenu.d.ts +9 -1
  252. package/dist/admin/src/index.d.ts +6 -0
  253. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +2 -2
  254. package/dist/admin/src/pages/Settings/components/SettingsNav.d.ts +3 -6
  255. package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +4 -4
  256. package/dist/admin/src/selectors.d.ts +2 -2
  257. package/dist/admin/src/services/admin.d.ts +7 -6
  258. package/dist/admin/src/services/api.d.ts +1 -1
  259. package/dist/admin/src/services/apiTokens.d.ts +1 -1
  260. package/dist/admin/src/services/auth.d.ts +21 -12
  261. package/dist/admin/src/services/contentApi.d.ts +1 -1
  262. package/dist/admin/src/services/contentManager.d.ts +1 -1
  263. package/dist/admin/src/services/homepage.d.ts +3 -3
  264. package/dist/admin/src/services/transferTokens.d.ts +1 -1
  265. package/dist/admin/src/services/users.d.ts +8 -8
  266. package/dist/admin/src/services/webhooks.d.ts +2 -2
  267. package/dist/admin/tests/utils.d.ts +1 -1
  268. package/dist/ee/admin/src/components/GlobalNotifications.d.ts +1 -0
  269. package/dist/ee/admin/src/hooks/useAIAvailability.d.ts +1 -0
  270. package/dist/ee/admin/src/hooks/useAIUsageWarning.d.ts +5 -0
  271. package/dist/ee/admin/src/hooks/useLicenseLimits.d.ts +1 -1
  272. package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.d.ts +1 -0
  273. package/dist/ee/admin/src/services/ai.d.ts +9 -0
  274. package/dist/ee/admin/src/services/auditLogs.d.ts +1 -1
  275. package/dist/ee/server/src/ai/controllers/ai.d.ts +7 -0
  276. package/dist/ee/server/src/ai/controllers/ai.d.ts.map +1 -0
  277. package/dist/ee/server/src/ai/routes/ai.d.ts +13 -0
  278. package/dist/ee/server/src/ai/routes/ai.d.ts.map +1 -0
  279. package/dist/ee/server/src/controllers/admin.d.ts +3 -0
  280. package/dist/ee/server/src/controllers/admin.d.ts.map +1 -1
  281. package/dist/ee/server/src/controllers/index.d.ts +3 -0
  282. package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
  283. package/dist/ee/server/src/index.d.ts +15 -187
  284. package/dist/ee/server/src/index.d.ts.map +1 -1
  285. package/dist/server/ee/server/src/ai/controllers/ai.js +218 -0
  286. package/dist/server/ee/server/src/ai/controllers/ai.js.map +1 -0
  287. package/dist/server/ee/server/src/ai/controllers/ai.mjs +216 -0
  288. package/dist/server/ee/server/src/ai/controllers/ai.mjs.map +1 -0
  289. package/dist/server/ee/server/src/ai/routes/ai.js +32 -0
  290. package/dist/server/ee/server/src/ai/routes/ai.js.map +1 -0
  291. package/dist/server/ee/server/src/ai/routes/ai.mjs +30 -0
  292. package/dist/server/ee/server/src/ai/routes/ai.mjs.map +1 -0
  293. package/dist/server/ee/server/src/controllers/admin.js +4 -1
  294. package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
  295. package/dist/server/ee/server/src/controllers/admin.mjs +4 -1
  296. package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
  297. package/dist/server/ee/server/src/index.js +37 -23
  298. package/dist/server/ee/server/src/index.js.map +1 -1
  299. package/dist/server/ee/server/src/index.mjs +37 -23
  300. package/dist/server/ee/server/src/index.mjs.map +1 -1
  301. package/dist/server/server/src/controllers/admin.js +5 -1
  302. package/dist/server/server/src/controllers/admin.js.map +1 -1
  303. package/dist/server/server/src/controllers/admin.mjs +5 -1
  304. package/dist/server/server/src/controllers/admin.mjs.map +1 -1
  305. package/dist/server/server/src/controllers/authenticated-user.js +15 -0
  306. package/dist/server/server/src/controllers/authenticated-user.js.map +1 -1
  307. package/dist/server/server/src/controllers/authenticated-user.mjs +15 -0
  308. package/dist/server/server/src/controllers/authenticated-user.mjs.map +1 -1
  309. package/dist/server/server/src/routes/users.js +10 -0
  310. package/dist/server/server/src/routes/users.js.map +1 -1
  311. package/dist/server/server/src/routes/users.mjs +10 -0
  312. package/dist/server/server/src/routes/users.mjs.map +1 -1
  313. package/dist/server/server/src/services/user.js +113 -1
  314. package/dist/server/server/src/services/user.js.map +1 -1
  315. package/dist/server/server/src/services/user.mjs +113 -1
  316. package/dist/server/server/src/services/user.mjs.map +1 -1
  317. package/dist/server/src/controllers/admin.d.ts +2 -0
  318. package/dist/server/src/controllers/admin.d.ts.map +1 -1
  319. package/dist/server/src/controllers/authenticated-user.d.ts +1 -0
  320. package/dist/server/src/controllers/authenticated-user.d.ts.map +1 -1
  321. package/dist/server/src/controllers/index.d.ts +3 -0
  322. package/dist/server/src/controllers/index.d.ts.map +1 -1
  323. package/dist/server/src/index.d.ts +7 -0
  324. package/dist/server/src/index.d.ts.map +1 -1
  325. package/dist/server/src/routes/users.d.ts.map +1 -1
  326. package/dist/server/src/services/index.d.ts +4 -0
  327. package/dist/server/src/services/index.d.ts.map +1 -1
  328. package/dist/server/src/services/user.d.ts +4 -0
  329. package/dist/server/src/services/user.d.ts.map +1 -1
  330. package/dist/shared/contracts/admin.d.ts +1 -0
  331. package/dist/shared/contracts/admin.d.ts.map +1 -1
  332. package/dist/shared/contracts/ai.d.ts +40 -0
  333. package/dist/shared/contracts/ai.d.ts.map +1 -0
  334. package/dist/shared/contracts/users.d.ts +32 -0
  335. package/dist/shared/contracts/users.d.ts.map +1 -1
  336. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderLayout.js","sources":["../../../../../../admin/src/components/Layouts/HeaderLayout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Typography, TypographyProps, useCallbackRef } from '@strapi/design-system';\n\nimport { useElementOnScreen } from '../../hooks/useElementOnScreen';\n\n/* -------------------------------------------------------------------------------------------------\n * BaseHeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseHeaderLayoutProps extends Omit<TypographyProps<'div'>, 'tag'> {\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n sticky?: boolean;\n width?: number;\n}\n\nconst BaseHeaderLayout = React.forwardRef<HTMLDivElement, BaseHeaderLayoutProps>(\n (\n { navigationAction, primaryAction, secondaryAction, subtitle, title, sticky, width, ...props },\n ref\n ) => {\n const isSubtitleString = typeof subtitle === 'string';\n\n if (sticky) {\n return (\n <Box\n paddingLeft={6}\n paddingRight={6}\n paddingTop={3}\n paddingBottom={3}\n position=\"fixed\"\n top={0}\n right={0}\n background=\"neutral0\"\n shadow=\"tableShadow\"\n width={`${width}px`}\n zIndex={3}\n data-strapi-header-sticky\n >\n <Flex justifyContent=\"space-between\">\n <Flex>\n {navigationAction && <Box paddingRight={3}>{navigationAction}</Box>}\n <Box>\n <Typography variant=\"beta\" tag=\"h1\" {...props}>\n {title}\n </Typography>\n {isSubtitleString ? (\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n <Flex>{primaryAction ? <Box paddingLeft={2}>{primaryAction}</Box> : undefined}</Flex>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box\n ref={ref}\n paddingLeft={10}\n paddingRight={10}\n paddingBottom={8}\n paddingTop={navigationAction ? 6 : 8}\n background=\"neutral100\"\n data-strapi-header\n >\n {navigationAction ? <Box paddingBottom={2}>{navigationAction}</Box> : null}\n <Flex justifyContent=\"space-between\">\n <Flex minWidth={0}>\n <Typography tag=\"h1\" variant=\"alpha\" {...props}>\n {title}\n </Typography>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n {primaryAction}\n </Flex>\n {isSubtitleString ? (\n <Typography variant=\"epsilon\" textColor=\"neutral600\" tag=\"p\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderLayoutProps extends BaseHeaderLayoutProps {}\n\nconst HeaderLayout = (props: HeaderLayoutProps) => {\n const baseHeaderLayoutRef = React.useRef<HTMLDivElement>(null);\n const [headerSize, setHeaderSize] = React.useState<DOMRect | null>(null);\n const [isVisible, setIsVisible] = React.useState(true);\n\n const containerRef = useElementOnScreen<HTMLDivElement>(setIsVisible, {\n root: null,\n rootMargin: '0px',\n threshold: 0,\n });\n\n useResizeObserver(containerRef, () => {\n if (containerRef.current) {\n setHeaderSize(containerRef.current.getBoundingClientRect());\n }\n });\n\n React.useEffect(() => {\n if (baseHeaderLayoutRef.current) {\n setHeaderSize(baseHeaderLayoutRef.current.getBoundingClientRect());\n }\n }, [baseHeaderLayoutRef]);\n\n return (\n <>\n <div style={{ height: headerSize?.height }} ref={containerRef}>\n {isVisible && <BaseHeaderLayout ref={baseHeaderLayoutRef} {...props} />}\n </div>\n\n {!isVisible && <BaseHeaderLayout {...props} sticky width={headerSize?.width} />}\n </>\n );\n};\n\nHeaderLayout.displayName = 'HeaderLayout';\n\n/**\n * useResizeObserver: hook that observes the size of an element and calls a callback when it changes.\n */\nconst useResizeObserver = (\n sources: React.RefObject<HTMLElement> | React.RefObject<HTMLElement>[],\n onResize: ResizeObserverCallback\n) => {\n const handleResize = useCallbackRef(onResize);\n\n React.useLayoutEffect(() => {\n const resizeObs = new ResizeObserver(handleResize);\n\n if (Array.isArray(sources)) {\n sources.forEach((source) => {\n if (source.current) {\n resizeObs.observe(source.current);\n }\n });\n } else if (sources.current) {\n resizeObs.observe(sources.current);\n }\n\n return () => {\n resizeObs.disconnect();\n };\n }, [sources, handleResize]);\n};\n\nexport type { HeaderLayoutProps, BaseHeaderLayoutProps };\nexport { HeaderLayout, BaseHeaderLayout };\n"],"names":["BaseHeaderLayout","React","forwardRef","navigationAction","primaryAction","secondaryAction","subtitle","title","sticky","width","props","ref","isSubtitleString","_jsx","Box","paddingLeft","paddingRight","paddingTop","paddingBottom","position","top","right","background","shadow","zIndex","data-strapi-header-sticky","_jsxs","Flex","justifyContent","Typography","variant","tag","textColor","undefined","data-strapi-header","minWidth","HeaderLayout","baseHeaderLayoutRef","useRef","headerSize","setHeaderSize","useState","isVisible","setIsVisible","containerRef","useElementOnScreen","root","rootMargin","threshold","useResizeObserver","current","getBoundingClientRect","useEffect","_Fragment","div","style","height","displayName","sources","onResize","handleResize","useCallbackRef","useLayoutEffect","resizeObs","ResizeObserver","Array","isArray","forEach","source","observe","disconnect"],"mappings":"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"}
1
+ {"version":3,"file":"HeaderLayout.js","sources":["../../../../../../admin/src/components/Layouts/HeaderLayout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Typography, TypographyProps, useCallbackRef } from '@strapi/design-system';\n\nimport { HEIGHT_TOP_NAVIGATION, RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme';\nimport { useElementOnScreen } from '../../hooks/useElementOnScreen';\n\n/* -------------------------------------------------------------------------------------------------\n * BaseHeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseHeaderLayoutProps extends Omit<TypographyProps<'div'>, 'tag'> {\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n sticky?: boolean;\n width?: number;\n}\n\nconst BaseHeaderLayout = React.forwardRef<HTMLDivElement, BaseHeaderLayoutProps>(\n (\n { navigationAction, primaryAction, secondaryAction, subtitle, title, sticky, width, ...props },\n ref\n ) => {\n const isSubtitleString = typeof subtitle === 'string';\n\n if (sticky) {\n return (\n <Box\n display={{\n initial: 'none',\n large: 'flex',\n }}\n paddingLeft={6}\n paddingRight={6}\n paddingTop={2}\n paddingBottom={2}\n position=\"fixed\"\n top={0}\n background=\"neutral0\"\n shadow=\"tableShadow\"\n width={`${width}px`}\n zIndex={2}\n minHeight={HEIGHT_TOP_NAVIGATION}\n data-strapi-header-sticky\n >\n <Flex alignItems=\"center\" justifyContent=\"space-between\" wrap=\"wrap\" width=\"100%\">\n <Flex>\n {navigationAction && <Box paddingRight={3}>{navigationAction}</Box>}\n <Box>\n <Typography variant=\"beta\" tag=\"h1\" {...props}>\n {title}\n </Typography>\n {isSubtitleString ? (\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n <Flex>{primaryAction ? <Box paddingLeft={2}>{primaryAction}</Box> : undefined}</Flex>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box\n ref={ref}\n paddingLeft={RESPONSIVE_DEFAULT_SPACING}\n paddingRight={RESPONSIVE_DEFAULT_SPACING}\n paddingBottom={{\n initial: 4,\n large: 8,\n }}\n paddingTop={{\n initial: 4,\n large: navigationAction ? 6 : 8,\n }}\n background=\"neutral100\"\n data-strapi-header\n >\n <Flex direction=\"column\" alignItems=\"initial\" gap={2}>\n {navigationAction}\n <Flex justifyContent=\"space-between\" wrap=\"wrap\" gap={4}>\n <Flex minWidth={0}>\n <Typography tag=\"h1\" variant=\"alpha\" {...props}>\n {title}\n </Typography>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n {primaryAction}\n </Flex>\n </Flex>\n {isSubtitleString ? (\n <Typography\n variant=\"epsilon\"\n textColor=\"neutral600\"\n tag=\"p\"\n paddingTop={{ initial: 4, large: 0 }}\n >\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderLayoutProps extends BaseHeaderLayoutProps {}\n\nconst HeaderLayout = (props: HeaderLayoutProps) => {\n const baseHeaderLayoutRef = React.useRef<HTMLDivElement>(null);\n const [headerSize, setHeaderSize] = React.useState<DOMRect | null>(null);\n const [isVisible, setIsVisible] = React.useState(true);\n\n const containerRef = useElementOnScreen<HTMLDivElement>(setIsVisible, {\n root: null,\n rootMargin: '0px',\n threshold: 0,\n });\n\n useResizeObserver([containerRef], () => {\n if (containerRef.current) {\n const newSize = containerRef.current.getBoundingClientRect();\n setHeaderSize((prevSize) => {\n // Only update if size actually changed\n if (!prevSize || prevSize.height !== newSize.height || prevSize.width !== newSize.width) {\n return newSize;\n }\n return prevSize;\n });\n }\n });\n\n React.useEffect(() => {\n if (containerRef.current) {\n setHeaderSize(containerRef.current.getBoundingClientRect());\n }\n }, [containerRef]);\n\n return (\n <div ref={containerRef}>\n <div style={{ height: headerSize?.height }}>\n {isVisible && <BaseHeaderLayout ref={baseHeaderLayoutRef} {...props} />}\n </div>\n\n {!isVisible && <BaseHeaderLayout {...props} sticky width={headerSize?.width} />}\n </div>\n );\n};\n\nHeaderLayout.displayName = 'HeaderLayout';\n\n/**\n * useResizeObserver: hook that observes the size of an element and calls a callback when it changes.\n */\nconst useResizeObserver = (\n sources: React.RefObject<HTMLElement> | React.RefObject<HTMLElement>[],\n onResize: ResizeObserverCallback\n) => {\n const handleResize = useCallbackRef(onResize);\n\n React.useLayoutEffect(() => {\n const resizeObs = new ResizeObserver(handleResize);\n\n if (Array.isArray(sources)) {\n sources.forEach((source) => {\n if (source.current) {\n resizeObs.observe(source.current);\n }\n });\n } else if (sources.current) {\n resizeObs.observe(sources.current);\n }\n\n return () => {\n resizeObs.disconnect();\n };\n }, [sources, handleResize]);\n};\n\nexport type { HeaderLayoutProps, BaseHeaderLayoutProps };\nexport { HeaderLayout, BaseHeaderLayout };\n"],"names":["BaseHeaderLayout","React","forwardRef","navigationAction","primaryAction","secondaryAction","subtitle","title","sticky","width","props","ref","isSubtitleString","_jsx","Box","display","initial","large","paddingLeft","paddingRight","paddingTop","paddingBottom","position","top","background","shadow","zIndex","minHeight","HEIGHT_TOP_NAVIGATION","data-strapi-header-sticky","_jsxs","Flex","alignItems","justifyContent","wrap","Typography","variant","tag","textColor","undefined","RESPONSIVE_DEFAULT_SPACING","data-strapi-header","direction","gap","minWidth","HeaderLayout","baseHeaderLayoutRef","useRef","headerSize","setHeaderSize","useState","isVisible","setIsVisible","containerRef","useElementOnScreen","root","rootMargin","threshold","useResizeObserver","current","newSize","getBoundingClientRect","prevSize","height","useEffect","div","style","displayName","sources","onResize","handleResize","useCallbackRef","useLayoutEffect","resizeObs","ResizeObserver","Array","isArray","forEach","source","observe","disconnect"],"mappings":"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"}
@@ -1,26 +1,34 @@
1
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { Box, Flex, Typography, useCallbackRef } from '@strapi/design-system';
4
+ import { HEIGHT_TOP_NAVIGATION, RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme.mjs';
4
5
  import { useElementOnScreen } from '../../hooks/useElementOnScreen.mjs';
5
6
 
6
7
  const BaseHeaderLayout = /*#__PURE__*/ React.forwardRef(({ navigationAction, primaryAction, secondaryAction, subtitle, title, sticky, width, ...props }, ref)=>{
7
8
  const isSubtitleString = typeof subtitle === 'string';
8
9
  if (sticky) {
9
10
  return /*#__PURE__*/ jsx(Box, {
11
+ display: {
12
+ initial: 'none',
13
+ large: 'flex'
14
+ },
10
15
  paddingLeft: 6,
11
16
  paddingRight: 6,
12
- paddingTop: 3,
13
- paddingBottom: 3,
17
+ paddingTop: 2,
18
+ paddingBottom: 2,
14
19
  position: "fixed",
15
20
  top: 0,
16
- right: 0,
17
21
  background: "neutral0",
18
22
  shadow: "tableShadow",
19
23
  width: `${width}px`,
20
- zIndex: 3,
24
+ zIndex: 2,
25
+ minHeight: HEIGHT_TOP_NAVIGATION,
21
26
  "data-strapi-header-sticky": true,
22
27
  children: /*#__PURE__*/ jsxs(Flex, {
28
+ alignItems: "center",
23
29
  justifyContent: "space-between",
30
+ wrap: "wrap",
31
+ width: "100%",
24
32
  children: [
25
33
  /*#__PURE__*/ jsxs(Flex, {
26
34
  children: [
@@ -61,42 +69,58 @@ const BaseHeaderLayout = /*#__PURE__*/ React.forwardRef(({ navigationAction, pri
61
69
  }
62
70
  return /*#__PURE__*/ jsxs(Box, {
63
71
  ref: ref,
64
- paddingLeft: 10,
65
- paddingRight: 10,
66
- paddingBottom: 8,
67
- paddingTop: navigationAction ? 6 : 8,
72
+ paddingLeft: RESPONSIVE_DEFAULT_SPACING,
73
+ paddingRight: RESPONSIVE_DEFAULT_SPACING,
74
+ paddingBottom: {
75
+ initial: 4,
76
+ large: 8
77
+ },
78
+ paddingTop: {
79
+ initial: 4,
80
+ large: navigationAction ? 6 : 8
81
+ },
68
82
  background: "neutral100",
69
83
  "data-strapi-header": true,
70
84
  children: [
71
- navigationAction ? /*#__PURE__*/ jsx(Box, {
72
- paddingBottom: 2,
73
- children: navigationAction
74
- }) : null,
75
85
  /*#__PURE__*/ jsxs(Flex, {
76
- justifyContent: "space-between",
86
+ direction: "column",
87
+ alignItems: "initial",
88
+ gap: 2,
77
89
  children: [
90
+ navigationAction,
78
91
  /*#__PURE__*/ jsxs(Flex, {
79
- minWidth: 0,
92
+ justifyContent: "space-between",
93
+ wrap: "wrap",
94
+ gap: 4,
80
95
  children: [
81
- /*#__PURE__*/ jsx(Typography, {
82
- tag: "h1",
83
- variant: "alpha",
84
- ...props,
85
- children: title
96
+ /*#__PURE__*/ jsxs(Flex, {
97
+ minWidth: 0,
98
+ children: [
99
+ /*#__PURE__*/ jsx(Typography, {
100
+ tag: "h1",
101
+ variant: "alpha",
102
+ ...props,
103
+ children: title
104
+ }),
105
+ secondaryAction ? /*#__PURE__*/ jsx(Box, {
106
+ paddingLeft: 4,
107
+ children: secondaryAction
108
+ }) : null
109
+ ]
86
110
  }),
87
- secondaryAction ? /*#__PURE__*/ jsx(Box, {
88
- paddingLeft: 4,
89
- children: secondaryAction
90
- }) : null
111
+ primaryAction
91
112
  ]
92
- }),
93
- primaryAction
113
+ })
94
114
  ]
95
115
  }),
96
116
  isSubtitleString ? /*#__PURE__*/ jsx(Typography, {
97
117
  variant: "epsilon",
98
118
  textColor: "neutral600",
99
119
  tag: "p",
120
+ paddingTop: {
121
+ initial: 4,
122
+ large: 0
123
+ },
100
124
  children: subtitle
101
125
  }) : subtitle
102
126
  ]
@@ -111,25 +135,34 @@ const HeaderLayout = (props)=>{
111
135
  rootMargin: '0px',
112
136
  threshold: 0
113
137
  });
114
- useResizeObserver(containerRef, ()=>{
138
+ useResizeObserver([
139
+ containerRef
140
+ ], ()=>{
115
141
  if (containerRef.current) {
116
- setHeaderSize(containerRef.current.getBoundingClientRect());
142
+ const newSize = containerRef.current.getBoundingClientRect();
143
+ setHeaderSize((prevSize)=>{
144
+ // Only update if size actually changed
145
+ if (!prevSize || prevSize.height !== newSize.height || prevSize.width !== newSize.width) {
146
+ return newSize;
147
+ }
148
+ return prevSize;
149
+ });
117
150
  }
118
151
  });
119
152
  React.useEffect(()=>{
120
- if (baseHeaderLayoutRef.current) {
121
- setHeaderSize(baseHeaderLayoutRef.current.getBoundingClientRect());
153
+ if (containerRef.current) {
154
+ setHeaderSize(containerRef.current.getBoundingClientRect());
122
155
  }
123
156
  }, [
124
- baseHeaderLayoutRef
157
+ containerRef
125
158
  ]);
126
- return /*#__PURE__*/ jsxs(Fragment, {
159
+ return /*#__PURE__*/ jsxs("div", {
160
+ ref: containerRef,
127
161
  children: [
128
162
  /*#__PURE__*/ jsx("div", {
129
163
  style: {
130
164
  height: headerSize?.height
131
165
  },
132
- ref: containerRef,
133
166
  children: isVisible && /*#__PURE__*/ jsx(BaseHeaderLayout, {
134
167
  ref: baseHeaderLayoutRef,
135
168
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderLayout.mjs","sources":["../../../../../../admin/src/components/Layouts/HeaderLayout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Typography, TypographyProps, useCallbackRef } from '@strapi/design-system';\n\nimport { useElementOnScreen } from '../../hooks/useElementOnScreen';\n\n/* -------------------------------------------------------------------------------------------------\n * BaseHeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseHeaderLayoutProps extends Omit<TypographyProps<'div'>, 'tag'> {\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n sticky?: boolean;\n width?: number;\n}\n\nconst BaseHeaderLayout = React.forwardRef<HTMLDivElement, BaseHeaderLayoutProps>(\n (\n { navigationAction, primaryAction, secondaryAction, subtitle, title, sticky, width, ...props },\n ref\n ) => {\n const isSubtitleString = typeof subtitle === 'string';\n\n if (sticky) {\n return (\n <Box\n paddingLeft={6}\n paddingRight={6}\n paddingTop={3}\n paddingBottom={3}\n position=\"fixed\"\n top={0}\n right={0}\n background=\"neutral0\"\n shadow=\"tableShadow\"\n width={`${width}px`}\n zIndex={3}\n data-strapi-header-sticky\n >\n <Flex justifyContent=\"space-between\">\n <Flex>\n {navigationAction && <Box paddingRight={3}>{navigationAction}</Box>}\n <Box>\n <Typography variant=\"beta\" tag=\"h1\" {...props}>\n {title}\n </Typography>\n {isSubtitleString ? (\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n <Flex>{primaryAction ? <Box paddingLeft={2}>{primaryAction}</Box> : undefined}</Flex>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box\n ref={ref}\n paddingLeft={10}\n paddingRight={10}\n paddingBottom={8}\n paddingTop={navigationAction ? 6 : 8}\n background=\"neutral100\"\n data-strapi-header\n >\n {navigationAction ? <Box paddingBottom={2}>{navigationAction}</Box> : null}\n <Flex justifyContent=\"space-between\">\n <Flex minWidth={0}>\n <Typography tag=\"h1\" variant=\"alpha\" {...props}>\n {title}\n </Typography>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n {primaryAction}\n </Flex>\n {isSubtitleString ? (\n <Typography variant=\"epsilon\" textColor=\"neutral600\" tag=\"p\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderLayoutProps extends BaseHeaderLayoutProps {}\n\nconst HeaderLayout = (props: HeaderLayoutProps) => {\n const baseHeaderLayoutRef = React.useRef<HTMLDivElement>(null);\n const [headerSize, setHeaderSize] = React.useState<DOMRect | null>(null);\n const [isVisible, setIsVisible] = React.useState(true);\n\n const containerRef = useElementOnScreen<HTMLDivElement>(setIsVisible, {\n root: null,\n rootMargin: '0px',\n threshold: 0,\n });\n\n useResizeObserver(containerRef, () => {\n if (containerRef.current) {\n setHeaderSize(containerRef.current.getBoundingClientRect());\n }\n });\n\n React.useEffect(() => {\n if (baseHeaderLayoutRef.current) {\n setHeaderSize(baseHeaderLayoutRef.current.getBoundingClientRect());\n }\n }, [baseHeaderLayoutRef]);\n\n return (\n <>\n <div style={{ height: headerSize?.height }} ref={containerRef}>\n {isVisible && <BaseHeaderLayout ref={baseHeaderLayoutRef} {...props} />}\n </div>\n\n {!isVisible && <BaseHeaderLayout {...props} sticky width={headerSize?.width} />}\n </>\n );\n};\n\nHeaderLayout.displayName = 'HeaderLayout';\n\n/**\n * useResizeObserver: hook that observes the size of an element and calls a callback when it changes.\n */\nconst useResizeObserver = (\n sources: React.RefObject<HTMLElement> | React.RefObject<HTMLElement>[],\n onResize: ResizeObserverCallback\n) => {\n const handleResize = useCallbackRef(onResize);\n\n React.useLayoutEffect(() => {\n const resizeObs = new ResizeObserver(handleResize);\n\n if (Array.isArray(sources)) {\n sources.forEach((source) => {\n if (source.current) {\n resizeObs.observe(source.current);\n }\n });\n } else if (sources.current) {\n resizeObs.observe(sources.current);\n }\n\n return () => {\n resizeObs.disconnect();\n };\n }, [sources, handleResize]);\n};\n\nexport type { HeaderLayoutProps, BaseHeaderLayoutProps };\nexport { HeaderLayout, BaseHeaderLayout };\n"],"names":["BaseHeaderLayout","React","forwardRef","navigationAction","primaryAction","secondaryAction","subtitle","title","sticky","width","props","ref","isSubtitleString","_jsx","Box","paddingLeft","paddingRight","paddingTop","paddingBottom","position","top","right","background","shadow","zIndex","data-strapi-header-sticky","_jsxs","Flex","justifyContent","Typography","variant","tag","textColor","undefined","data-strapi-header","minWidth","HeaderLayout","baseHeaderLayoutRef","useRef","headerSize","setHeaderSize","useState","isVisible","setIsVisible","containerRef","useElementOnScreen","root","rootMargin","threshold","useResizeObserver","current","getBoundingClientRect","useEffect","_Fragment","div","style","height","displayName","sources","onResize","handleResize","useCallbackRef","useLayoutEffect","resizeObs","ResizeObserver","Array","isArray","forEach","source","observe","disconnect"],"mappings":"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"}
1
+ {"version":3,"file":"HeaderLayout.mjs","sources":["../../../../../../admin/src/components/Layouts/HeaderLayout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Typography, TypographyProps, useCallbackRef } from '@strapi/design-system';\n\nimport { HEIGHT_TOP_NAVIGATION, RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme';\nimport { useElementOnScreen } from '../../hooks/useElementOnScreen';\n\n/* -------------------------------------------------------------------------------------------------\n * BaseHeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseHeaderLayoutProps extends Omit<TypographyProps<'div'>, 'tag'> {\n navigationAction?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n subtitle?: React.ReactNode;\n sticky?: boolean;\n width?: number;\n}\n\nconst BaseHeaderLayout = React.forwardRef<HTMLDivElement, BaseHeaderLayoutProps>(\n (\n { navigationAction, primaryAction, secondaryAction, subtitle, title, sticky, width, ...props },\n ref\n ) => {\n const isSubtitleString = typeof subtitle === 'string';\n\n if (sticky) {\n return (\n <Box\n display={{\n initial: 'none',\n large: 'flex',\n }}\n paddingLeft={6}\n paddingRight={6}\n paddingTop={2}\n paddingBottom={2}\n position=\"fixed\"\n top={0}\n background=\"neutral0\"\n shadow=\"tableShadow\"\n width={`${width}px`}\n zIndex={2}\n minHeight={HEIGHT_TOP_NAVIGATION}\n data-strapi-header-sticky\n >\n <Flex alignItems=\"center\" justifyContent=\"space-between\" wrap=\"wrap\" width=\"100%\">\n <Flex>\n {navigationAction && <Box paddingRight={3}>{navigationAction}</Box>}\n <Box>\n <Typography variant=\"beta\" tag=\"h1\" {...props}>\n {title}\n </Typography>\n {isSubtitleString ? (\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n <Flex>{primaryAction ? <Box paddingLeft={2}>{primaryAction}</Box> : undefined}</Flex>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box\n ref={ref}\n paddingLeft={RESPONSIVE_DEFAULT_SPACING}\n paddingRight={RESPONSIVE_DEFAULT_SPACING}\n paddingBottom={{\n initial: 4,\n large: 8,\n }}\n paddingTop={{\n initial: 4,\n large: navigationAction ? 6 : 8,\n }}\n background=\"neutral100\"\n data-strapi-header\n >\n <Flex direction=\"column\" alignItems=\"initial\" gap={2}>\n {navigationAction}\n <Flex justifyContent=\"space-between\" wrap=\"wrap\" gap={4}>\n <Flex minWidth={0}>\n <Typography tag=\"h1\" variant=\"alpha\" {...props}>\n {title}\n </Typography>\n {secondaryAction ? <Box paddingLeft={4}>{secondaryAction}</Box> : null}\n </Flex>\n {primaryAction}\n </Flex>\n </Flex>\n {isSubtitleString ? (\n <Typography\n variant=\"epsilon\"\n textColor=\"neutral600\"\n tag=\"p\"\n paddingTop={{ initial: 4, large: 0 }}\n >\n {subtitle}\n </Typography>\n ) : (\n subtitle\n )}\n </Box>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * HeaderLayout\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderLayoutProps extends BaseHeaderLayoutProps {}\n\nconst HeaderLayout = (props: HeaderLayoutProps) => {\n const baseHeaderLayoutRef = React.useRef<HTMLDivElement>(null);\n const [headerSize, setHeaderSize] = React.useState<DOMRect | null>(null);\n const [isVisible, setIsVisible] = React.useState(true);\n\n const containerRef = useElementOnScreen<HTMLDivElement>(setIsVisible, {\n root: null,\n rootMargin: '0px',\n threshold: 0,\n });\n\n useResizeObserver([containerRef], () => {\n if (containerRef.current) {\n const newSize = containerRef.current.getBoundingClientRect();\n setHeaderSize((prevSize) => {\n // Only update if size actually changed\n if (!prevSize || prevSize.height !== newSize.height || prevSize.width !== newSize.width) {\n return newSize;\n }\n return prevSize;\n });\n }\n });\n\n React.useEffect(() => {\n if (containerRef.current) {\n setHeaderSize(containerRef.current.getBoundingClientRect());\n }\n }, [containerRef]);\n\n return (\n <div ref={containerRef}>\n <div style={{ height: headerSize?.height }}>\n {isVisible && <BaseHeaderLayout ref={baseHeaderLayoutRef} {...props} />}\n </div>\n\n {!isVisible && <BaseHeaderLayout {...props} sticky width={headerSize?.width} />}\n </div>\n );\n};\n\nHeaderLayout.displayName = 'HeaderLayout';\n\n/**\n * useResizeObserver: hook that observes the size of an element and calls a callback when it changes.\n */\nconst useResizeObserver = (\n sources: React.RefObject<HTMLElement> | React.RefObject<HTMLElement>[],\n onResize: ResizeObserverCallback\n) => {\n const handleResize = useCallbackRef(onResize);\n\n React.useLayoutEffect(() => {\n const resizeObs = new ResizeObserver(handleResize);\n\n if (Array.isArray(sources)) {\n sources.forEach((source) => {\n if (source.current) {\n resizeObs.observe(source.current);\n }\n });\n } else if (sources.current) {\n resizeObs.observe(sources.current);\n }\n\n return () => {\n resizeObs.disconnect();\n };\n }, [sources, handleResize]);\n};\n\nexport type { HeaderLayoutProps, BaseHeaderLayoutProps };\nexport { HeaderLayout, BaseHeaderLayout };\n"],"names":["BaseHeaderLayout","React","forwardRef","navigationAction","primaryAction","secondaryAction","subtitle","title","sticky","width","props","ref","isSubtitleString","_jsx","Box","display","initial","large","paddingLeft","paddingRight","paddingTop","paddingBottom","position","top","background","shadow","zIndex","minHeight","HEIGHT_TOP_NAVIGATION","data-strapi-header-sticky","_jsxs","Flex","alignItems","justifyContent","wrap","Typography","variant","tag","textColor","undefined","RESPONSIVE_DEFAULT_SPACING","data-strapi-header","direction","gap","minWidth","HeaderLayout","baseHeaderLayoutRef","useRef","headerSize","setHeaderSize","useState","isVisible","setIsVisible","containerRef","useElementOnScreen","root","rootMargin","threshold","useResizeObserver","current","newSize","getBoundingClientRect","prevSize","height","useEffect","div","style","displayName","sources","onResize","handleResize","useCallbackRef","useLayoutEffect","resizeObs","ResizeObserver","Array","isArray","forEach","source","observe","disconnect"],"mappings":"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"}
@@ -4,30 +4,53 @@ var jsxRuntime = require('react/jsx-runtime');
4
4
  require('react');
5
5
  var designSystem = require('@strapi/design-system');
6
6
  var styled = require('styled-components');
7
+ var theme = require('../../constants/theme.js');
7
8
  var ActionLayout = require('./ActionLayout.js');
8
9
  var ContentLayout = require('./ContentLayout.js');
9
10
  var GridLayout = require('./GridLayout.js');
10
11
  var HeaderLayout = require('./HeaderLayout.js');
11
12
 
12
13
  const GridContainer = styled.styled(designSystem.Box)`
14
+ max-width: 100%;
13
15
  display: grid;
14
- grid-template-columns: ${({ $hasSideNav })=>$hasSideNav ? `auto 1fr` : '1fr'};
16
+ grid-template-columns: 1fr;
17
+ padding: 0;
18
+
19
+ ${({ theme })=>theme.breakpoints.medium} {
20
+ grid-template-columns: ${({ $hasSideNav })=>$hasSideNav ? `auto 1fr` : '1fr'};
21
+ }
22
+ `;
23
+ const SideNavContainer = styled.styled(designSystem.Flex)`
24
+ display: none;
25
+ background: ${({ theme })=>theme.colors.neutral0};
26
+
27
+ ${({ theme })=>theme.breakpoints.medium} {
28
+ display: block;
29
+ box-shadow: none;
30
+ transform: none;
31
+ }
15
32
  `;
16
33
  const OverflowingItem = styled.styled(designSystem.Box)`
17
34
  overflow-x: hidden;
35
+
36
+ ${({ theme })=>theme.breakpoints.medium} {
37
+ transform: none;
38
+ width: auto;
39
+ }
18
40
  `;
19
- const RootLayout = ({ sideNav, children })=>{
20
- return /*#__PURE__*/ jsxRuntime.jsxs(GridContainer, {
41
+ const RootLayout = ({ sideNav, children })=>/*#__PURE__*/ jsxRuntime.jsxs(GridContainer, {
21
42
  $hasSideNav: Boolean(sideNav),
22
43
  children: [
23
- sideNav,
44
+ sideNav && /*#__PURE__*/ jsxRuntime.jsx(SideNavContainer, {
45
+ children: sideNav
46
+ }),
24
47
  /*#__PURE__*/ jsxRuntime.jsx(OverflowingItem, {
25
- paddingBottom: 10,
48
+ paddingBottom: theme.RESPONSIVE_DEFAULT_SPACING,
49
+ "data-strapi-main-content": true,
26
50
  children: children
27
51
  })
28
52
  ]
29
53
  });
30
- };
31
54
  const Layouts = {
32
55
  Root: RootLayout,
33
56
  Header: HeaderLayout.HeaderLayout,
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","sources":["../../../../../../admin/src/components/Layouts/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nimport { ActionLayout } from './ActionLayout';\nimport { ContentLayout } from './ContentLayout';\nimport { GridLayout, GridLayoutProps } from './GridLayout';\nimport { HeaderLayout, BaseHeaderLayout } from './HeaderLayout';\n\ninterface LayoutProps {\n children: React.ReactNode;\n sideNav?: React.ReactNode;\n}\n\nconst GridContainer = styled(Box)<{ $hasSideNav: boolean }>`\n display: grid;\n grid-template-columns: ${({ $hasSideNav }) => ($hasSideNav ? `auto 1fr` : '1fr')};\n`;\n\nconst OverflowingItem = styled(Box)`\n overflow-x: hidden;\n`;\n\nconst RootLayout = ({ sideNav, children }: LayoutProps) => {\n return (\n <GridContainer $hasSideNav={Boolean(sideNav)}>\n {sideNav}\n <OverflowingItem paddingBottom={10}>{children}</OverflowingItem>\n </GridContainer>\n );\n};\n\nconst Layouts = {\n Root: RootLayout,\n Header: HeaderLayout,\n BaseHeader: BaseHeaderLayout,\n Grid: GridLayout,\n Action: ActionLayout,\n Content: ContentLayout,\n};\n\nexport { Layouts, type LayoutProps, type GridLayoutProps };\n"],"names":["GridContainer","styled","Box","$hasSideNav","OverflowingItem","RootLayout","sideNav","children","_jsxs","Boolean","_jsx","paddingBottom","Layouts","Root","Header","HeaderLayout","BaseHeader","BaseHeaderLayout","Grid","GridLayout","Action","ActionLayout","Content","ContentLayout"],"mappings":";;;;;;;;;;;AAeA,MAAMA,aAAAA,GAAgBC,aAAOC,CAAAA,gBAAAA,CAA8B;;yBAElC,EAAE,CAAC,EAAEC,WAAW,EAAE,GAAMA,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAO,CAAA;AACnF,CAAC;AAED,MAAMC,eAAAA,GAAkBH,aAAOC,CAAAA,gBAAAA,CAAI;;AAEnC,CAAC;AAED,MAAMG,aAAa,CAAC,EAAEC,OAAO,EAAEC,QAAQ,EAAe,GAAA;AACpD,IAAA,qBACEC,eAACR,CAAAA,aAAAA,EAAAA;AAAcG,QAAAA,WAAAA,EAAaM,OAAQH,CAAAA,OAAAA,CAAAA;;AACjCA,YAAAA,OAAAA;0BACDI,cAACN,CAAAA,eAAAA,EAAAA;gBAAgBO,aAAe,EAAA,EAAA;AAAKJ,gBAAAA,QAAAA,EAAAA;;;;AAG3C,CAAA;AAEA,MAAMK,OAAU,GAAA;IACdC,IAAMR,EAAAA,UAAAA;IACNS,MAAQC,EAAAA,yBAAAA;IACRC,UAAYC,EAAAA,6BAAAA;IACZC,IAAMC,EAAAA,qBAAAA;IACNC,MAAQC,EAAAA,yBAAAA;IACRC,OAASC,EAAAA;AACX;;;;"}
1
+ {"version":3,"file":"Layout.js","sources":["../../../../../../admin/src/components/Layouts/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nimport { RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme';\n\nimport { ActionLayout } from './ActionLayout';\nimport { ContentLayout } from './ContentLayout';\nimport { GridLayout, GridLayoutProps } from './GridLayout';\nimport { HeaderLayout, BaseHeaderLayout } from './HeaderLayout';\n\ninterface LayoutProps {\n children: React.ReactNode;\n sideNav?: React.ReactNode;\n}\n\nconst GridContainer = styled(Box)<{ $hasSideNav: boolean }>`\n max-width: 100%;\n display: grid;\n grid-template-columns: 1fr;\n padding: 0;\n\n ${({ theme }) => theme.breakpoints.medium} {\n grid-template-columns: ${({ $hasSideNav }) => ($hasSideNav ? `auto 1fr` : '1fr')};\n }\n`;\n\nconst SideNavContainer = styled(Flex)`\n display: none;\n background: ${({ theme }) => theme.colors.neutral0};\n\n ${({ theme }) => theme.breakpoints.medium} {\n display: block;\n box-shadow: none;\n transform: none;\n }\n`;\n\nconst OverflowingItem = styled(Box)`\n overflow-x: hidden;\n\n ${({ theme }) => theme.breakpoints.medium} {\n transform: none;\n width: auto;\n }\n`;\n\nconst RootLayout = ({ sideNav, children }: LayoutProps) => (\n <GridContainer $hasSideNav={Boolean(sideNav)}>\n {sideNav && <SideNavContainer>{sideNav}</SideNavContainer>}\n <OverflowingItem paddingBottom={RESPONSIVE_DEFAULT_SPACING} data-strapi-main-content>\n {children}\n </OverflowingItem>\n </GridContainer>\n);\n\nconst Layouts = {\n Root: RootLayout,\n Header: HeaderLayout,\n BaseHeader: BaseHeaderLayout,\n Grid: GridLayout,\n Action: ActionLayout,\n Content: ContentLayout,\n};\n\nexport { Layouts, type LayoutProps, type GridLayoutProps };\n"],"names":["GridContainer","styled","Box","theme","breakpoints","medium","$hasSideNav","SideNavContainer","Flex","colors","neutral0","OverflowingItem","RootLayout","sideNav","children","_jsxs","Boolean","_jsx","paddingBottom","RESPONSIVE_DEFAULT_SPACING","data-strapi-main-content","Layouts","Root","Header","HeaderLayout","BaseHeader","BaseHeaderLayout","Grid","GridLayout","Action","ActionLayout","Content","ContentLayout"],"mappings":";;;;;;;;;;;;AAiBA,MAAMA,aAAAA,GAAgBC,aAAOC,CAAAA,gBAAAA,CAA8B;;;;;;EAMzD,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;2BACjB,EAAE,CAAC,EAAEC,WAAW,EAAE,GAAMA,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAO,CAAA;;AAErF,CAAC;AAED,MAAMC,gBAAAA,GAAmBN,aAAOO,CAAAA,iBAAAA,CAAK;;cAEvB,EAAE,CAAC,EAAEL,KAAK,EAAE,GAAKA,KAAMM,CAAAA,MAAM,CAACC,QAAQ,CAAC;;EAEnD,EAAE,CAAC,EAAEP,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;;;;;AAK5C,CAAC;AAED,MAAMM,eAAAA,GAAkBV,aAAOC,CAAAA,gBAAAA,CAAI;;;EAGjC,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;;;;AAI5C,CAAC;AAED,MAAMO,UAAAA,GAAa,CAAC,EAAEC,OAAO,EAAEC,QAAQ,EAAe,iBACpDC,eAACf,CAAAA,aAAAA,EAAAA;AAAcM,QAAAA,WAAAA,EAAaU,OAAQH,CAAAA,OAAAA,CAAAA;;AACjCA,YAAAA,OAAAA,kBAAWI,cAACV,CAAAA,gBAAAA,EAAAA;AAAkBM,gBAAAA,QAAAA,EAAAA;;0BAC/BI,cAACN,CAAAA,eAAAA,EAAAA;gBAAgBO,aAAeC,EAAAA,gCAAAA;gBAA4BC,0BAAwB,EAAA,IAAA;AACjFN,gBAAAA,QAAAA,EAAAA;;;;AAKP,MAAMO,OAAU,GAAA;IACdC,IAAMV,EAAAA,UAAAA;IACNW,MAAQC,EAAAA,yBAAAA;IACRC,UAAYC,EAAAA,6BAAAA;IACZC,IAAMC,EAAAA,qBAAAA;IACNC,MAAQC,EAAAA,yBAAAA;IACRC,OAASC,EAAAA;AACX;;;;"}
@@ -1,31 +1,54 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import 'react';
3
- import { Box } from '@strapi/design-system';
3
+ import { Box, Flex } from '@strapi/design-system';
4
4
  import { styled } from 'styled-components';
5
+ import { RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme.mjs';
5
6
  import { ActionLayout } from './ActionLayout.mjs';
6
7
  import { ContentLayout } from './ContentLayout.mjs';
7
8
  import { GridLayout } from './GridLayout.mjs';
8
9
  import { HeaderLayout, BaseHeaderLayout } from './HeaderLayout.mjs';
9
10
 
10
11
  const GridContainer = styled(Box)`
12
+ max-width: 100%;
11
13
  display: grid;
12
- grid-template-columns: ${({ $hasSideNav })=>$hasSideNav ? `auto 1fr` : '1fr'};
14
+ grid-template-columns: 1fr;
15
+ padding: 0;
16
+
17
+ ${({ theme })=>theme.breakpoints.medium} {
18
+ grid-template-columns: ${({ $hasSideNav })=>$hasSideNav ? `auto 1fr` : '1fr'};
19
+ }
20
+ `;
21
+ const SideNavContainer = styled(Flex)`
22
+ display: none;
23
+ background: ${({ theme })=>theme.colors.neutral0};
24
+
25
+ ${({ theme })=>theme.breakpoints.medium} {
26
+ display: block;
27
+ box-shadow: none;
28
+ transform: none;
29
+ }
13
30
  `;
14
31
  const OverflowingItem = styled(Box)`
15
32
  overflow-x: hidden;
33
+
34
+ ${({ theme })=>theme.breakpoints.medium} {
35
+ transform: none;
36
+ width: auto;
37
+ }
16
38
  `;
17
- const RootLayout = ({ sideNav, children })=>{
18
- return /*#__PURE__*/ jsxs(GridContainer, {
39
+ const RootLayout = ({ sideNav, children })=>/*#__PURE__*/ jsxs(GridContainer, {
19
40
  $hasSideNav: Boolean(sideNav),
20
41
  children: [
21
- sideNav,
42
+ sideNav && /*#__PURE__*/ jsx(SideNavContainer, {
43
+ children: sideNav
44
+ }),
22
45
  /*#__PURE__*/ jsx(OverflowingItem, {
23
- paddingBottom: 10,
46
+ paddingBottom: RESPONSIVE_DEFAULT_SPACING,
47
+ "data-strapi-main-content": true,
24
48
  children: children
25
49
  })
26
50
  ]
27
51
  });
28
- };
29
52
  const Layouts = {
30
53
  Root: RootLayout,
31
54
  Header: HeaderLayout,
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.mjs","sources":["../../../../../../admin/src/components/Layouts/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nimport { ActionLayout } from './ActionLayout';\nimport { ContentLayout } from './ContentLayout';\nimport { GridLayout, GridLayoutProps } from './GridLayout';\nimport { HeaderLayout, BaseHeaderLayout } from './HeaderLayout';\n\ninterface LayoutProps {\n children: React.ReactNode;\n sideNav?: React.ReactNode;\n}\n\nconst GridContainer = styled(Box)<{ $hasSideNav: boolean }>`\n display: grid;\n grid-template-columns: ${({ $hasSideNav }) => ($hasSideNav ? `auto 1fr` : '1fr')};\n`;\n\nconst OverflowingItem = styled(Box)`\n overflow-x: hidden;\n`;\n\nconst RootLayout = ({ sideNav, children }: LayoutProps) => {\n return (\n <GridContainer $hasSideNav={Boolean(sideNav)}>\n {sideNav}\n <OverflowingItem paddingBottom={10}>{children}</OverflowingItem>\n </GridContainer>\n );\n};\n\nconst Layouts = {\n Root: RootLayout,\n Header: HeaderLayout,\n BaseHeader: BaseHeaderLayout,\n Grid: GridLayout,\n Action: ActionLayout,\n Content: ContentLayout,\n};\n\nexport { Layouts, type LayoutProps, type GridLayoutProps };\n"],"names":["GridContainer","styled","Box","$hasSideNav","OverflowingItem","RootLayout","sideNav","children","_jsxs","Boolean","_jsx","paddingBottom","Layouts","Root","Header","HeaderLayout","BaseHeader","BaseHeaderLayout","Grid","GridLayout","Action","ActionLayout","Content","ContentLayout"],"mappings":";;;;;;;;;AAeA,MAAMA,aAAAA,GAAgBC,MAAOC,CAAAA,GAAAA,CAA8B;;yBAElC,EAAE,CAAC,EAAEC,WAAW,EAAE,GAAMA,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAO,CAAA;AACnF,CAAC;AAED,MAAMC,eAAAA,GAAkBH,MAAOC,CAAAA,GAAAA,CAAI;;AAEnC,CAAC;AAED,MAAMG,aAAa,CAAC,EAAEC,OAAO,EAAEC,QAAQ,EAAe,GAAA;AACpD,IAAA,qBACEC,IAACR,CAAAA,aAAAA,EAAAA;AAAcG,QAAAA,WAAAA,EAAaM,OAAQH,CAAAA,OAAAA,CAAAA;;AACjCA,YAAAA,OAAAA;0BACDI,GAACN,CAAAA,eAAAA,EAAAA;gBAAgBO,aAAe,EAAA,EAAA;AAAKJ,gBAAAA,QAAAA,EAAAA;;;;AAG3C,CAAA;AAEA,MAAMK,OAAU,GAAA;IACdC,IAAMR,EAAAA,UAAAA;IACNS,MAAQC,EAAAA,YAAAA;IACRC,UAAYC,EAAAA,gBAAAA;IACZC,IAAMC,EAAAA,UAAAA;IACNC,MAAQC,EAAAA,YAAAA;IACRC,OAASC,EAAAA;AACX;;;;"}
1
+ {"version":3,"file":"Layout.mjs","sources":["../../../../../../admin/src/components/Layouts/Layout.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex } from '@strapi/design-system';\nimport { styled } from 'styled-components';\n\nimport { RESPONSIVE_DEFAULT_SPACING } from '../../constants/theme';\n\nimport { ActionLayout } from './ActionLayout';\nimport { ContentLayout } from './ContentLayout';\nimport { GridLayout, GridLayoutProps } from './GridLayout';\nimport { HeaderLayout, BaseHeaderLayout } from './HeaderLayout';\n\ninterface LayoutProps {\n children: React.ReactNode;\n sideNav?: React.ReactNode;\n}\n\nconst GridContainer = styled(Box)<{ $hasSideNav: boolean }>`\n max-width: 100%;\n display: grid;\n grid-template-columns: 1fr;\n padding: 0;\n\n ${({ theme }) => theme.breakpoints.medium} {\n grid-template-columns: ${({ $hasSideNav }) => ($hasSideNav ? `auto 1fr` : '1fr')};\n }\n`;\n\nconst SideNavContainer = styled(Flex)`\n display: none;\n background: ${({ theme }) => theme.colors.neutral0};\n\n ${({ theme }) => theme.breakpoints.medium} {\n display: block;\n box-shadow: none;\n transform: none;\n }\n`;\n\nconst OverflowingItem = styled(Box)`\n overflow-x: hidden;\n\n ${({ theme }) => theme.breakpoints.medium} {\n transform: none;\n width: auto;\n }\n`;\n\nconst RootLayout = ({ sideNav, children }: LayoutProps) => (\n <GridContainer $hasSideNav={Boolean(sideNav)}>\n {sideNav && <SideNavContainer>{sideNav}</SideNavContainer>}\n <OverflowingItem paddingBottom={RESPONSIVE_DEFAULT_SPACING} data-strapi-main-content>\n {children}\n </OverflowingItem>\n </GridContainer>\n);\n\nconst Layouts = {\n Root: RootLayout,\n Header: HeaderLayout,\n BaseHeader: BaseHeaderLayout,\n Grid: GridLayout,\n Action: ActionLayout,\n Content: ContentLayout,\n};\n\nexport { Layouts, type LayoutProps, type GridLayoutProps };\n"],"names":["GridContainer","styled","Box","theme","breakpoints","medium","$hasSideNav","SideNavContainer","Flex","colors","neutral0","OverflowingItem","RootLayout","sideNav","children","_jsxs","Boolean","_jsx","paddingBottom","RESPONSIVE_DEFAULT_SPACING","data-strapi-main-content","Layouts","Root","Header","HeaderLayout","BaseHeader","BaseHeaderLayout","Grid","GridLayout","Action","ActionLayout","Content","ContentLayout"],"mappings":";;;;;;;;;;AAiBA,MAAMA,aAAAA,GAAgBC,MAAOC,CAAAA,GAAAA,CAA8B;;;;;;EAMzD,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;2BACjB,EAAE,CAAC,EAAEC,WAAW,EAAE,GAAMA,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAO,CAAA;;AAErF,CAAC;AAED,MAAMC,gBAAAA,GAAmBN,MAAOO,CAAAA,IAAAA,CAAK;;cAEvB,EAAE,CAAC,EAAEL,KAAK,EAAE,GAAKA,KAAMM,CAAAA,MAAM,CAACC,QAAQ,CAAC;;EAEnD,EAAE,CAAC,EAAEP,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;;;;;AAK5C,CAAC;AAED,MAAMM,eAAAA,GAAkBV,MAAOC,CAAAA,GAAAA,CAAI;;;EAGjC,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,MAAM,CAAC;;;;AAI5C,CAAC;AAED,MAAMO,UAAAA,GAAa,CAAC,EAAEC,OAAO,EAAEC,QAAQ,EAAe,iBACpDC,IAACf,CAAAA,aAAAA,EAAAA;AAAcM,QAAAA,WAAAA,EAAaU,OAAQH,CAAAA,OAAAA,CAAAA;;AACjCA,YAAAA,OAAAA,kBAAWI,GAACV,CAAAA,gBAAAA,EAAAA;AAAkBM,gBAAAA,QAAAA,EAAAA;;0BAC/BI,GAACN,CAAAA,eAAAA,EAAAA;gBAAgBO,aAAeC,EAAAA,0BAAAA;gBAA4BC,0BAAwB,EAAA,IAAA;AACjFN,gBAAAA,QAAAA,EAAAA;;;;AAKP,MAAMO,OAAU,GAAA;IACdC,IAAMV,EAAAA,UAAAA;IACNW,MAAQC,EAAAA,YAAAA;IACRC,UAAYC,EAAAA,gBAAAA;IACZC,IAAMC,EAAAA,UAAAA;IACNC,MAAQC,EAAAA,YAAAA;IACRC,OAASC,EAAAA;AACX;;;;"}