@admin-layout/tailwind-design-pro 10.0.9-alpha.8 → 10.1.1-alpha.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 (273) hide show
  1. package/README.md +345 -1
  2. package/lib/cdm-locales/en/settings.json +35 -1
  3. package/lib/cdm-locales/es/settings.json +37 -3
  4. package/lib/components/Layout/BasicLayout/index.d.ts +1 -2
  5. package/lib/components/Layout/BasicLayout/index.d.ts.map +1 -1
  6. package/lib/components/Layout/BasicLayout/index.js +145 -45
  7. package/lib/components/Layout/BasicLayout/index.js.map +1 -1
  8. package/lib/components/Layout/BasicLayout/utils.d.ts.map +1 -1
  9. package/lib/components/Layout/BasicLayout/utils.js +1 -1
  10. package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.d.ts +1 -8
  11. package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.d.ts.map +1 -1
  12. package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.js.map +1 -1
  13. package/lib/components/Layout/GlobalFooter/Copyright.d.ts.map +1 -1
  14. package/lib/components/Layout/GlobalFooter/Footer.d.ts.map +1 -1
  15. package/lib/components/Layout/GlobalHeader/Header.d.ts +2 -15
  16. package/lib/components/Layout/GlobalHeader/Header.d.ts.map +1 -1
  17. package/lib/components/Layout/GlobalHeader/Header.js +70 -38
  18. package/lib/components/Layout/GlobalHeader/Header.js.map +1 -1
  19. package/lib/components/Layout/GlobalHeader/Logo.d.ts +4 -0
  20. package/lib/components/Layout/GlobalHeader/Logo.d.ts.map +1 -0
  21. package/lib/components/Layout/GlobalHeader/Logo.js +141 -0
  22. package/lib/components/Layout/GlobalHeader/Logo.js.map +1 -0
  23. package/lib/components/Layout/GlobalHeader/MainHeader.d.ts +6 -0
  24. package/lib/components/Layout/GlobalHeader/MainHeader.d.ts.map +1 -0
  25. package/lib/components/Layout/GlobalHeader/MainHeader.js +230 -0
  26. package/lib/components/Layout/GlobalHeader/MainHeader.js.map +1 -0
  27. package/lib/components/Layout/GlobalHeader/OrganizationDropdown.d.ts +1 -12
  28. package/lib/components/Layout/GlobalHeader/OrganizationDropdown.d.ts.map +1 -1
  29. package/lib/components/Layout/GlobalHeader/OrganizationDropdown.js.map +1 -1
  30. package/lib/components/Layout/GlobalHeader/RightContent.d.ts +1 -13
  31. package/lib/components/Layout/GlobalHeader/RightContent.d.ts.map +1 -1
  32. package/lib/components/Layout/GlobalHeader/RightContent.js.map +1 -1
  33. package/lib/components/Layout/GlobalHeader/RightMenu.d.ts +4 -0
  34. package/lib/components/Layout/GlobalHeader/RightMenu.d.ts.map +1 -0
  35. package/lib/components/Layout/GlobalHeader/RightMenu.js +290 -0
  36. package/lib/components/Layout/GlobalHeader/RightMenu.js.map +1 -0
  37. package/lib/components/Layout/GlobalHeader/SearchBar.d.ts +9 -0
  38. package/lib/components/Layout/GlobalHeader/SearchBar.d.ts.map +1 -0
  39. package/lib/components/Layout/GlobalHeader/SearchBar.js +118 -0
  40. package/lib/components/Layout/GlobalHeader/SearchBar.js.map +1 -0
  41. package/lib/components/Layout/GlobalHeader/index.d.ts +4 -0
  42. package/lib/components/Layout/GlobalHeader/index.d.ts.map +1 -0
  43. package/lib/components/Layout/ProTailwindLayout.d.ts.map +1 -1
  44. package/lib/components/Layout/ProTailwindLayout.js +1 -2
  45. package/lib/components/Layout/ProTailwindLayout.js.map +1 -1
  46. package/lib/components/Layout/Sidebar/Divider.d.ts +1 -31
  47. package/lib/components/Layout/Sidebar/Divider.d.ts.map +1 -1
  48. package/lib/components/Layout/Sidebar/Divider.js.map +1 -1
  49. package/lib/components/Layout/Sidebar/DynamicIcon.d.ts +5 -0
  50. package/lib/components/Layout/Sidebar/DynamicIcon.d.ts.map +1 -0
  51. package/lib/components/Layout/Sidebar/DynamicIcon.js +51 -0
  52. package/lib/components/Layout/Sidebar/DynamicIcon.js.map +1 -0
  53. package/lib/components/Layout/Sidebar/Sidebar.d.ts +1 -12
  54. package/lib/components/Layout/Sidebar/Sidebar.d.ts.map +1 -1
  55. package/lib/components/Layout/Sidebar/Sidebar.js +108 -92
  56. package/lib/components/Layout/Sidebar/Sidebar.js.map +1 -1
  57. package/lib/components/Layout/Sidebar/SidebarMenu.d.ts.map +1 -1
  58. package/lib/components/Layout/Sidebar/SidebarMenu.js +110 -20
  59. package/lib/components/Layout/Sidebar/SidebarMenu.js.map +1 -1
  60. package/lib/components/Layout/TailwindLayout.d.ts.map +1 -1
  61. package/lib/components/Layout/TailwindLayout.js +29 -19
  62. package/lib/components/Layout/TailwindLayout.js.map +1 -1
  63. package/lib/components/Layout/getPageTitle.d.ts +1 -16
  64. package/lib/components/Layout/getPageTitle.d.ts.map +1 -1
  65. package/lib/components/Layout/getPageTitle.js +1 -1
  66. package/lib/components/Layout/getPageTitle.js.map +1 -1
  67. package/lib/components/Layout/slot-fill/AdditionalSettings.d.ts.map +1 -1
  68. package/lib/components/Layout/slot-fill/Footer.d.ts +1 -1
  69. package/lib/components/Layout/slot-fill/Footer.d.ts.map +1 -1
  70. package/lib/components/Layout/slot-fill/Footer.js +6 -6
  71. package/lib/components/Layout/slot-fill/Footer.js.map +1 -1
  72. package/lib/components/Layout/slot-fill/HeaderNotice.d.ts.map +1 -1
  73. package/lib/components/Layout/slot-fill/HeaderSearchBar.d.ts +3 -0
  74. package/lib/components/Layout/slot-fill/HeaderSearchBar.d.ts.map +1 -0
  75. package/lib/components/Layout/slot-fill/HeaderSearchBar.js +6 -0
  76. package/lib/components/Layout/slot-fill/HeaderSearchBar.js.map +1 -0
  77. package/lib/components/Layout/slot-fill/HeaderSearchButton.d.ts +3 -0
  78. package/lib/components/Layout/slot-fill/HeaderSearchButton.d.ts.map +1 -0
  79. package/lib/components/Layout/slot-fill/HeaderSearchButton.js +6 -0
  80. package/lib/components/Layout/slot-fill/HeaderSearchButton.js.map +1 -0
  81. package/lib/components/Layout/slot-fill/RightContent.d.ts +3 -0
  82. package/lib/components/Layout/slot-fill/RightContent.d.ts.map +1 -0
  83. package/lib/components/Layout/slot-fill/RightContent.js +6 -0
  84. package/lib/components/Layout/slot-fill/RightContent.js.map +1 -0
  85. package/lib/components/Layout/slot-fill/index.d.ts +3 -0
  86. package/lib/components/Layout/slot-fill/index.d.ts.map +1 -1
  87. package/lib/components/Layout/util.d.ts.map +1 -1
  88. package/lib/components/Layout/util.js +12 -0
  89. package/lib/components/Layout/util.js.map +1 -0
  90. package/lib/components/SettingDrawer/CheckBoxTheme.js +1 -1
  91. package/lib/components/SettingDrawer/LayoutChange.d.ts +1 -1
  92. package/lib/components/SettingDrawer/LayoutChange.d.ts.map +1 -1
  93. package/lib/components/SettingDrawer/LayoutChange.js +75 -17
  94. package/lib/components/SettingDrawer/LayoutChange.js.map +1 -1
  95. package/lib/components/SettingDrawer/NavigationsModes.d.ts +1 -1
  96. package/lib/components/SettingDrawer/NavigationsModes.d.ts.map +1 -1
  97. package/lib/components/SettingDrawer/NavigationsModes.js +18 -10
  98. package/lib/components/SettingDrawer/NavigationsModes.js.map +1 -1
  99. package/lib/components/SettingDrawer/RegionalSettings.d.ts.map +1 -1
  100. package/lib/components/SettingDrawer/RegionalSettings.js +685 -33
  101. package/lib/components/SettingDrawer/RegionalSettings.js.map +1 -1
  102. package/lib/components/SettingDrawer/SettingDrawer.d.ts +1 -1
  103. package/lib/components/SettingDrawer/SettingDrawer.d.ts.map +1 -1
  104. package/lib/components/SettingDrawer/SettingDrawer.js +164 -39
  105. package/lib/components/SettingDrawer/SettingDrawer.js.map +1 -1
  106. package/lib/components/SettingDrawer/WebFontsSelector.d.ts +3 -0
  107. package/lib/components/SettingDrawer/WebFontsSelector.d.ts.map +1 -0
  108. package/lib/components/SettingDrawer/WebFontsSelector.js +24 -0
  109. package/lib/components/SettingDrawer/WebFontsSelector.js.map +1 -0
  110. package/lib/components/SettingDrawer/types.d.ts +23 -2
  111. package/lib/components/SettingDrawer/types.d.ts.map +1 -1
  112. package/lib/components/ThemeProvider/ThemeProvider.d.ts +6 -16
  113. package/lib/components/ThemeProvider/ThemeProvider.d.ts.map +1 -1
  114. package/lib/components/ThemeProvider/ThemeProvider.js +26 -29
  115. package/lib/components/ThemeProvider/ThemeProvider.js.map +1 -1
  116. package/lib/components/ThemeProvider/ThemeToggle.js +50 -0
  117. package/lib/components/ThemeProvider/ThemeToggle.js.map +1 -0
  118. package/lib/components/ThemeProvider/index.d.ts +2 -5
  119. package/lib/components/ThemeProvider/index.d.ts.map +1 -1
  120. package/lib/components/ThemeProvider/themes/airbnb.d.ts +3 -0
  121. package/lib/components/ThemeProvider/themes/airbnb.d.ts.map +1 -0
  122. package/lib/components/ThemeProvider/themes/airbnb.js +186 -0
  123. package/lib/components/ThemeProvider/themes/airbnb.js.map +1 -0
  124. package/lib/components/ThemeProvider/themes/default.d.ts +3 -0
  125. package/lib/components/ThemeProvider/themes/default.d.ts.map +1 -0
  126. package/lib/components/ThemeProvider/themes/default.js +183 -0
  127. package/lib/components/ThemeProvider/themes/default.js.map +1 -0
  128. package/lib/components/ThemeProvider/themes/github.d.ts +3 -0
  129. package/lib/components/ThemeProvider/themes/github.d.ts.map +1 -0
  130. package/lib/components/ThemeProvider/themes/github.js +190 -0
  131. package/lib/components/ThemeProvider/themes/github.js.map +1 -0
  132. package/lib/components/ThemeProvider/themes/index.d.ts +15 -0
  133. package/lib/components/ThemeProvider/themes/index.d.ts.map +1 -0
  134. package/lib/components/ThemeProvider/themes/index.js +7 -0
  135. package/lib/components/ThemeProvider/themes/index.js.map +1 -0
  136. package/lib/components/ThemeProvider/themes/slack.d.ts +3 -0
  137. package/lib/components/ThemeProvider/themes/slack.d.ts.map +1 -0
  138. package/lib/components/ThemeProvider/themes/slack.js +188 -0
  139. package/lib/components/ThemeProvider/themes/slack.js.map +1 -0
  140. package/lib/components/ThemeProvider/themes/spotify.d.ts +3 -0
  141. package/lib/components/ThemeProvider/themes/spotify.d.ts.map +1 -0
  142. package/lib/components/ThemeProvider/themes/spotify.js +189 -0
  143. package/lib/components/ThemeProvider/themes/spotify.js.map +1 -0
  144. package/lib/components/ThemeProvider/types.d.ts +106 -106
  145. package/lib/components/ThemeProvider/types.d.ts.map +1 -1
  146. package/lib/components/UI/CategoriesTypeList.d.ts +29 -0
  147. package/lib/components/UI/CategoriesTypeList.d.ts.map +1 -0
  148. package/lib/components/UI/CategoriesTypeList.js +140 -0
  149. package/lib/components/UI/CategoriesTypeList.js.map +1 -0
  150. package/lib/components/UI/LazyLoadingGoogleMarker.d.ts +83 -0
  151. package/lib/components/UI/LazyLoadingGoogleMarker.d.ts.map +1 -0
  152. package/lib/components/UI/LazyLoadingGoogleMarker.js +107 -0
  153. package/lib/components/UI/LazyLoadingGoogleMarker.js.map +1 -0
  154. package/lib/components/UI/Pagination.d.ts +6 -0
  155. package/lib/components/UI/Pagination.d.ts.map +1 -0
  156. package/lib/components/UI/Pagination.js +59 -0
  157. package/lib/components/UI/Pagination.js.map +1 -0
  158. package/lib/components/UI/ParamSearchResultContainer.d.ts +90 -0
  159. package/lib/components/UI/ParamSearchResultContainer.d.ts.map +1 -0
  160. package/lib/components/UI/ParamSearchResultContainer.js +80 -0
  161. package/lib/components/UI/ParamSearchResultContainer.js.map +1 -0
  162. package/lib/components/UI/PropertyCard.d.ts +24 -0
  163. package/lib/components/UI/PropertyCard.d.ts.map +1 -0
  164. package/lib/components/UI/PropertyCard.js +375 -0
  165. package/lib/components/UI/PropertyCard.js.map +1 -0
  166. package/lib/components/UI/PropertyCardList.d.ts +93 -0
  167. package/lib/components/UI/PropertyCardList.d.ts.map +1 -0
  168. package/lib/components/UI/PropertyCardList.js +41 -0
  169. package/lib/components/UI/PropertyCardList.js.map +1 -0
  170. package/lib/components/UI/PropertyCardOnMap.d.ts +10 -0
  171. package/lib/components/UI/PropertyCardOnMap.d.ts.map +1 -0
  172. package/lib/components/UI/PropertyCardOnMap.js +108 -0
  173. package/lib/components/UI/PropertyCardOnMap.js.map +1 -0
  174. package/lib/components/UI/icons/LocationIcon.d.ts +7 -0
  175. package/lib/components/UI/icons/LocationIcon.d.ts.map +1 -0
  176. package/lib/components/UI/icons/LocationIcon.js +18 -0
  177. package/lib/components/UI/icons/LocationIcon.js.map +1 -0
  178. package/lib/components/UI/icons/index.d.ts +2 -0
  179. package/lib/components/UI/icons/index.d.ts.map +1 -0
  180. package/lib/components/UI/index.d.ts +8 -0
  181. package/lib/components/UI/index.d.ts.map +1 -0
  182. package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.d.ts +1 -1
  183. package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.d.ts.map +1 -1
  184. package/lib/components/index.d.ts +4 -0
  185. package/lib/components/index.d.ts.map +1 -0
  186. package/lib/components/index.js +1 -0
  187. package/lib/components/index.js.map +1 -0
  188. package/lib/components/typings.d.ts +128 -51
  189. package/lib/components/typings.d.ts.map +1 -1
  190. package/lib/config/constants.d.ts +8 -0
  191. package/lib/config/constants.d.ts.map +1 -0
  192. package/lib/config/constants.js +32 -0
  193. package/lib/config/constants.js.map +1 -0
  194. package/lib/config/env-config.d.ts +3 -0
  195. package/lib/config/env-config.d.ts.map +1 -1
  196. package/lib/config/env-config.js +19 -1
  197. package/lib/config/env-config.js.map +1 -1
  198. package/lib/helpers/DynamicIcon.d.ts +7 -4
  199. package/lib/helpers/DynamicIcon.d.ts.map +1 -1
  200. package/lib/helpers/DynamicIcon.js +51 -0
  201. package/lib/helpers/DynamicIcon.js.map +1 -0
  202. package/lib/hooks/index.d.ts +6 -0
  203. package/lib/hooks/index.d.ts.map +1 -0
  204. package/lib/hooks/use-get-current-lat-long.d.ts +18 -0
  205. package/lib/hooks/use-get-current-lat-long.d.ts.map +1 -0
  206. package/lib/hooks/use-get-current-lat-long.js +29 -0
  207. package/lib/hooks/use-get-current-lat-long.js.map +1 -0
  208. package/lib/hooks/useMediaQuery.d.ts +14 -0
  209. package/lib/hooks/useMediaQuery.d.ts.map +1 -0
  210. package/lib/hooks/useMediaQuery.js +48 -0
  211. package/lib/hooks/useMediaQuery.js.map +1 -0
  212. package/lib/hooks/useScrollThreshold.d.ts +12 -0
  213. package/lib/hooks/useScrollThreshold.d.ts.map +1 -0
  214. package/lib/hooks/useScrollThreshold.js +60 -0
  215. package/lib/hooks/useScrollThreshold.js.map +1 -0
  216. package/lib/hooks/useTailwindTheme.d.ts +34 -0
  217. package/lib/hooks/useTailwindTheme.d.ts.map +1 -0
  218. package/lib/hooks/useTailwindTheme.js +82 -0
  219. package/lib/hooks/useTailwindTheme.js.map +1 -0
  220. package/lib/hooks/useWindowSize.d.ts +6 -0
  221. package/lib/hooks/useWindowSize.d.ts.map +1 -0
  222. package/lib/hooks/useWindowSize.js +20 -0
  223. package/lib/hooks/useWindowSize.js.map +1 -0
  224. package/lib/icons.d.ts +2 -0
  225. package/lib/icons.d.ts.map +1 -1
  226. package/lib/icons.js +3 -4
  227. package/lib/icons.js.map +1 -1
  228. package/lib/index.d.ts +3 -0
  229. package/lib/index.d.ts.map +1 -1
  230. package/lib/index.js +1 -1
  231. package/lib/index.js.map +1 -1
  232. package/lib/machines/settingsMachine.d.ts +4 -1
  233. package/lib/machines/settingsMachine.d.ts.map +1 -1
  234. package/lib/machines/settingsMachine.js +171 -120
  235. package/lib/machines/settingsMachine.js.map +1 -1
  236. package/lib/machines/types.d.ts +124 -17
  237. package/lib/machines/types.d.ts.map +1 -1
  238. package/lib/machines/types.js +5 -0
  239. package/lib/machines/types.js.map +1 -0
  240. package/lib/module.d.ts +0 -1
  241. package/lib/module.d.ts.map +1 -1
  242. package/lib/module.js +14 -15
  243. package/lib/module.js.map +1 -1
  244. package/lib/redux/index.d.ts +2 -0
  245. package/lib/redux/index.d.ts.map +1 -0
  246. package/lib/redux/searchReducer.d.ts +42 -0
  247. package/lib/redux/searchReducer.d.ts.map +1 -0
  248. package/lib/redux/searchReducer.js +64 -0
  249. package/lib/redux/searchReducer.js.map +1 -0
  250. package/lib/tailwindConfig.d.ts +42 -0
  251. package/lib/tailwindConfig.d.ts.map +1 -0
  252. package/lib/tailwindConfig.js +23 -0
  253. package/lib/tailwindConfig.js.map +1 -0
  254. package/lib/utils/menu.d.ts.map +1 -1
  255. package/lib/utils/test-utils.d.ts.map +1 -1
  256. package/lib/utils/utils/index.d.ts.map +1 -1
  257. package/package.json +6 -6
  258. package/lib/components/Layout/GlobalFooter/Copyright.js +0 -8
  259. package/lib/components/Layout/GlobalFooter/Copyright.js.map +0 -1
  260. package/lib/components/Layout/GlobalFooter/Footer.js +0 -22
  261. package/lib/components/Layout/GlobalFooter/Footer.js.map +0 -1
  262. package/lib/components/ThemeProvider/themeRegistry.d.ts +0 -3
  263. package/lib/components/ThemeProvider/themeRegistry.d.ts.map +0 -1
  264. package/lib/components/ThemeProvider/themeRegistry.js +0 -388
  265. package/lib/components/ThemeProvider/themeRegistry.js.map +0 -1
  266. package/lib/components/ThemeProvider/themeUtils.d.ts +0 -26
  267. package/lib/components/ThemeProvider/themeUtils.d.ts.map +0 -1
  268. package/lib/components/ThemeProvider/themeUtils.js +0 -135
  269. package/lib/components/ThemeProvider/themeUtils.js.map +0 -1
  270. package/lib/components/defaultSettings.d.ts +0 -4
  271. package/lib/components/defaultSettings.d.ts.map +0 -1
  272. package/lib/components/defaultSettings.js +0 -14
  273. package/lib/components/defaultSettings.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import {jsxs,jsx}from'react/jsx-runtime';import React__default,{useState,useEffect}from'react';import {Link}from'@remix-run/react';import {useTranslation}from'react-i18next';import BottomMenuDropDown from'../GlobalFooter/BottomMenuDropdown.js';import {getMenuSeparation}from'@admin-layout/client';import {Divider}from'./Divider.js';import {SidebarMenu}from'./SidebarMenu.js';import {RightContent}from'../GlobalHeader/RightContent.js';import {icons}from'../../../icons.js';const Sidebar = props => {
1
+ import {jsxs,jsx}from'react/jsx-runtime';import React__default,{useState,useEffect}from'react';import {useTranslation}from'react-i18next';import BottomMenuDropDown from'../GlobalFooter/BottomMenuDropdown.js';import {getMenuSeparation}from'@admin-layout/client';import {Divider}from'./Divider.js';import {SidebarMenu}from'./SidebarMenu.js';import {RightContent}from'../GlobalHeader/RightContent.js';import {icons}from'../../../icons.js';import'@react-icons/all-files/fa/FaMoon.js';import'@react-icons/all-files/fa/FaSun.js';import'../../../hooks/use-get-current-lat-long.js';import {useMediaQuery}from'../../../hooks/useMediaQuery.js';const Sidebar = props => {
2
2
  const {
3
3
  isSideMenuOpen,
4
4
  closeSideMenu,
@@ -6,19 +6,33 @@ import {jsxs,jsx}from'react/jsx-runtime';import React__default,{useState,useEffe
6
6
  collapsed,
7
7
  routeParams,
8
8
  settings,
9
- setCollapsed
9
+ setCollapsed,
10
+ location
10
11
  } = props;
11
- useState(false);
12
+ const [isPagesMenuOpen, setIsPagesMenuOpen] = useState(false);
12
13
  const [iconModule, setIconModule] = React__default.useState(null);
13
14
  const {
14
15
  t,
15
16
  i18n
16
17
  } = useTranslation('menu');
17
18
  const {
18
- OutlineDashIcon,
19
- ChevronBackCircleIcon,
20
- ChevronForwardCircleIcon
19
+ isMobile
20
+ } = useMediaQuery();
21
+ const {
22
+ ChevronLeftIcon,
23
+ ChevronRightIcon
21
24
  } = icons;
25
+ const currentRoute = location?.pathname || '/';
26
+ const routeSettings = settings?.routeSettings?.[currentRoute] || settings?.routeSettings?.['/'] || settings;
27
+ const deviceType = isMobile ? 'mobile' : 'desktop';
28
+ const deviceLayout = routeSettings?.layout?.[deviceType] || {};
29
+ useEffect(() => {
30
+ if (!iconModule) {
31
+ import('./DynamicIcon.js').then(module => {
32
+ setIconModule(module);
33
+ });
34
+ }
35
+ }, []);
22
36
  const toggleCollapsed = () => {
23
37
  setCollapsed(!collapsed);
24
38
  };
@@ -47,8 +61,14 @@ import {jsxs,jsx}from'react/jsx-runtime';import React__default,{useState,useEffe
47
61
  document.removeEventListener('keydown', handleEscape);
48
62
  };
49
63
  }, [isSideMenuOpen, closeSideMenu]);
50
- const bottomMenu = getMenuSeparation(menuData).bottomMenus;
51
- const updateMenuIcons = menuItems => {
64
+ const {
65
+ upperMenus,
66
+ middleMenus,
67
+ lowerMenus,
68
+ bottomMenus
69
+ } = getMenuSeparation(menuData || []);
70
+ const updateMenuIcons = (menuItems = []) => {
71
+ if (!menuItems || !Array.isArray(menuItems)) return [];
52
72
  return menuItems.map(item => {
53
73
  const updatedItem = {
54
74
  ...item,
@@ -61,108 +81,104 @@ import {jsxs,jsx}from'react/jsx-runtime';import React__default,{useState,useEffe
61
81
  return updatedItem;
62
82
  });
63
83
  };
64
- const bottomMenus = {
65
- menuData: updateMenuIcons(bottomMenu)
84
+ const bottomMenusData = {
85
+ menuData: updateMenuIcons(bottomMenus)
66
86
  };
67
- const middleMenu = getMenuSeparation(menuData).middleMenus;
68
- const lowerMenus = getMenuSeparation(menuData).lowerMenus;
69
87
  const SidebarStyles = React__default.useMemo(() => ({
70
88
  backgroundColor: settings?.navTheme === 'realDark' ? '#222' : '',
71
89
  color: settings?.navTheme === 'realDark' ? '#fff' : ''
72
90
  }), [settings]);
73
- const renderSidebarContent = () => jsxs("div", {
74
- className: "py-4 text-gray-500 dark:text-gray-400 relative",
75
- style: SidebarStyles,
76
- children: [jsxs(Link, {
77
- to: "/",
78
- className: "ml-6 flex items-center gap-2.5 text-lg font-bold text-gray-800 dark:text-gray-200",
91
+ // Helper function to render a separator with a name
92
+ const renderSeparator = name => {
93
+ if (!deviceLayout?.splitMenus) return null;
94
+ return collapsed ? jsx("hr", {
95
+ className: "border-t border-gray-200"
96
+ }) : jsx(Divider, {
97
+ style: {
98
+ color: '#6b6767',
99
+ borderColor: '#6b6767',
100
+ margin: '8px 0',
101
+ padding: 0
102
+ },
103
+ plain: true,
104
+ children: name
105
+ });
106
+ };
107
+ const renderSidebarContent = () => {
108
+ return jsxs("div", {
109
+ className: "text-gray-500 dark:text-gray-400 relative",
79
110
  style: SidebarStyles,
80
- children: [jsx("img", {
81
- src: settings?.logo,
82
- className: "w-[28px]"
83
- }), !collapsed && jsx("span", {
84
- children: settings?.title
85
- })]
86
- }), jsx("button", {
87
- onClick: toggleCollapsed,
88
- className: "rounded-md hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors text-[22px] absolute right-[0px] top-[63px]",
89
- "aria-label": collapsed ? 'Expand sidebar' : 'Collapse sidebar',
90
- children: collapsed ? jsx(ChevronForwardCircleIcon, {}) : jsx(ChevronBackCircleIcon, {})
91
- }), jsxs("div", {
92
- className: "min-h-[93vh]",
93
- children: [jsxs("div", {
94
- style: {
95
- flex: 1,
96
- overflowY: 'auto',
97
- overflowX: 'hidden',
98
- display: 'flex',
99
- flexDirection: 'column'
100
- },
101
- className: "removeBoxShadow",
102
- children: [jsx(SidebarMenu, {
103
- menuData: updateMenuIcons(middleMenu),
104
- routeParams: routeParams,
105
- settings: settings,
106
- collapsed: collapsed
107
- }), collapsed && true ? jsx(OutlineDashIcon, {
108
- className: "ant-divider",
111
+ children: [jsx("button", {
112
+ onClick: toggleCollapsed,
113
+ className: "w-6 h-6 text-center bg-white text-gray-300 flex items-center justify-center rounded-full shadow-[0_2px_8px_-2px_rgba(0,0,0,0.05),0_1px_4px_-1px_rgba(25,15,15,0.07),0_0_1px_0_rgba(0,0,0,0.08)] hover:text-gray-600 hover:shadow-[0_4px_16px_-4px_rgba(0,0,0,0.05),0_2px_8px_-2px_rgba(25,15,15,0.07),0_1px_2px_0_rgba(0,0,0,0.08)] transition-colors text-[22px] absolute right-[-13px] top-[20px]",
114
+ "aria-label": collapsed ? 'Expand sidebar' : 'Collapse sidebar',
115
+ children: collapsed ? jsx(ChevronRightIcon, {
116
+ fontSize: '11px'
117
+ }) : jsx(ChevronLeftIcon, {
118
+ fontSize: '11px'
119
+ })
120
+ }), jsxs("div", {
121
+ className: "min-h-[93vh]",
122
+ children: [middleMenus?.length > 0 && jsxs("div", {
109
123
  style: {
110
- marginLeft: '17px',
111
- borderTop: '0px',
112
- fontSize: 'large',
113
- margin: 0
114
- }
115
- }) : jsx(Divider, {
124
+ flex: 1,
125
+ overflowY: 'auto',
126
+ overflowX: 'hidden',
127
+ display: 'flex',
128
+ flexDirection: 'column'
129
+ },
130
+ className: "removeBoxShadow",
131
+ children: [renderSeparator(deviceLayout?.middleMenuDividerName), jsx(SidebarMenu, {
132
+ menuData: updateMenuIcons(middleMenus),
133
+ routeParams: routeParams,
134
+ settings: settings,
135
+ collapsed: collapsed
136
+ })]
137
+ }), lowerMenus?.length > 0 && jsxs("div", {
116
138
  style: {
117
- color: '#6b6767',
118
- borderColor: '#6b6767',
119
- margin: 0,
120
- padding: 0
139
+ flex: 1,
140
+ overflowY: 'auto',
141
+ overflowX: 'hidden',
142
+ display: 'flex',
143
+ flexDirection: 'column'
121
144
  },
122
- plain: true,
123
- children: "Admin"
145
+ className: "removeBoxShadow",
146
+ children: [renderSeparator(deviceLayout?.lowerMenuDividerName), jsx(SidebarMenu, {
147
+ menuData: updateMenuIcons(lowerMenus),
148
+ routeParams: routeParams,
149
+ settings: settings,
150
+ collapsed: collapsed
151
+ })]
152
+ }), jsx("div", {
153
+ className: "p-4",
154
+ children: deviceLayout?.navigationMode === 'sidebar' && jsx(RightContent, {
155
+ upperMenus: upperMenus,
156
+ collapsed: collapsed,
157
+ routeParams: routeParams,
158
+ settings: settings
159
+ })
124
160
  })]
125
161
  }), jsx("div", {
126
- style: {
127
- flex: 1,
128
- overflowY: 'auto',
129
- overflowX: 'hidden',
130
- display: 'flex',
131
- flexDirection: 'column'
132
- },
133
- className: "removeBoxShadow",
134
- children: jsx(SidebarMenu, {
135
- menuData: updateMenuIcons(lowerMenus),
136
- routeParams: routeParams,
137
- settings: settings,
138
- collapsed: collapsed
162
+ className: "absolute bottom-0 left-0 p-4 dark:border-gray-700",
163
+ children: jsx(BottomMenuDropDown, {
164
+ menus: bottomMenusData,
165
+ collapsed: collapsed,
166
+ routeParams: routeParams
139
167
  })
140
168
  })]
141
- }), settings?.layout?.navigationMode === 'sidebar' && jsx(RightContent, {
142
- upperMenus: getMenuSeparation(menuData).upperMenus,
143
- collapsed: collapsed,
144
- routeParams: routeParams,
145
- settings: settings
146
- }), jsx("div", {
147
- className: "absolute bottom-0 left-0 p-4 dark:border-gray-700",
148
- children: jsx(BottomMenuDropDown, {
149
- menus: bottomMenus,
150
- collapsed: collapsed,
151
- routeParams: routeParams
152
- })
153
- })]
154
- });
169
+ });
170
+ };
155
171
  return jsxs("div", {
156
- children: [jsx("aside", {
157
- className: `z-20 hidden h-full overflow-y-auto bg-white dark:bg-gray-800 md:block flex-shrink-0 transition-all duration-300 ease-in-out ${collapsed ? 'w-20' : 'w-64'}`,
172
+ children: [!isMobile && jsx("aside", {
173
+ className: `${deviceLayout?.fixedSidebar ? 'fixed' : 'relative'} border-r border-gray-200 z-20 h-screen bg-white dark:bg-gray-800 md:block flex-shrink-0 transition-all duration-300 ease-in-out ${collapsed ? 'w-16' : 'w-64'}`,
158
174
  style: SidebarStyles,
159
175
  children: renderSidebarContent()
160
- }), isSideMenuOpen && jsx("div", {
161
- className: "fixed inset-0 z-10 flex items-end bg-black bg-opacity-50 sm:items-center sm:justify-center",
176
+ }), isSideMenuOpen && isMobile && jsx("div", {
177
+ className: "fixed inset-0 z-10 flex items-end bg-black bg-opacity-50 sm:items-center sm:justify-center transition-opacity duration-300",
162
178
  onClick: closeSideMenu
163
- }), isSideMenuOpen && jsx("aside", {
179
+ }), isSideMenuOpen && isMobile && jsx("aside", {
164
180
  id: "mobile-sidebar",
165
- className: "fixed inset-y-0 z-20 flex-shrink-0 w-64 mt-16 overflow-y-auto bg-white dark:bg-gray-800 md:hidden",
181
+ className: `fixed inset-y-0 z-20 flex-shrink-0 mt-16 bg-white dark:bg-gray-800 md:hidden transition-transform duration-300 ease-in-out transform ${collapsed ? 'w-16' : 'w-64'}`,
166
182
  style: SidebarStyles,
167
183
  children: renderSidebarContent()
168
184
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../../../../src/components/Layout/Sidebar/Sidebar.tsx"],"sourcesContent":[null],"names":["React","_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../../../../src/components/Layout/Sidebar/Sidebar.tsx"],"sourcesContent":[null],"names":["React","_jsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar/SidebarMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAgB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE/D,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAsGlD,CAAC"}
1
+ {"version":3,"file":"SidebarMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar/SidebarMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2MlD,CAAC"}
@@ -1,16 +1,33 @@
1
- import {jsx,jsxs}from'react/jsx-runtime';import {useState}from'react';import {Link}from'@remix-run/react';import {generateMenuPath}from'@admin-layout/client';import {generateLightShade}from'../BasicLayout/utils.js';import {icons}from'../../../icons.js';const SidebarMenu = ({
1
+ import {jsx,jsxs}from'react/jsx-runtime';import {useState}from'react';import {useLocation,Link}from'@remix-run/react';import {generateMenuPath}from'@admin-layout/client';import {generateLightShade}from'../BasicLayout/utils.js';import {icons}from'../../../icons.js';const SidebarMenu = ({
2
2
  menuData,
3
3
  routeParams,
4
4
  settings,
5
5
  collapsed
6
6
  }) => {
7
7
  const [openMenusByLevel, setOpenMenusByLevel] = useState({});
8
- const [activePath, setActivePath] = useState('/dashboard');
9
8
  const [hoveredMenu, setHoveredMenu] = useState(null);
9
+ const [popupPosition, setPopupPosition] = useState({
10
+ top: 0,
11
+ height: 0
12
+ });
10
13
  const {
11
14
  ChevronDownIcon,
12
- ChevronRightIcon
15
+ ChevronUpIcon
13
16
  } = icons;
17
+ const location = useLocation();
18
+ const isMenuItemActive = itemPath => {
19
+ const currentPath = location.pathname;
20
+ const menuPath = generateMenuPath(itemPath, routeParams);
21
+ // Exact match
22
+ if (currentPath === menuPath) {
23
+ return true;
24
+ }
25
+ // Check if current path is a child of the menu item path
26
+ if (menuPath && currentPath.startsWith(menuPath + '/')) {
27
+ return true;
28
+ }
29
+ return false;
30
+ };
14
31
  const toggleMenu = (path, depth, e) => {
15
32
  e.preventDefault();
16
33
  if (collapsed) return;
@@ -22,47 +39,118 @@ import {jsx,jsxs}from'react/jsx-runtime';import {useState}from'react';import {Li
22
39
  const handleMenuClick = (path, hasChildren, depth, e) => {
23
40
  if (hasChildren && !collapsed) {
24
41
  toggleMenu(path, depth, e);
25
- } else {
26
- setActivePath(path);
27
42
  }
28
43
  };
29
44
  const getFirstLetter = name => {
30
45
  return name.charAt(0).toUpperCase();
31
46
  };
47
+ const handleMenuHover = (e, item, isHoverMenu) => {
48
+ // Only set hover state if the menu has children
49
+ if (collapsed && !isHoverMenu && item.children && item.children.length > 0) {
50
+ const element = e.currentTarget;
51
+ const rect = element.getBoundingClientRect();
52
+ let top = rect.top;
53
+ // Store the height to use for positioning
54
+ setPopupPosition({
55
+ top: top,
56
+ height: rect.height
57
+ });
58
+ setHoveredMenu(item.path);
59
+ }
60
+ };
61
+ const handleMenuLeave = (item, isHoverMenu) => {
62
+ if (collapsed && !isHoverMenu) {
63
+ setHoveredMenu(null);
64
+ }
65
+ };
66
+ const renderPopupMenu = (item, depth = 0) => {
67
+ if (!item.children || item.children.length === 0) return null;
68
+ const bgColor = generateLightShade(settings?.primaryColor, 0.98);
69
+ const sidebarWidth = collapsed ? 64 : 256; // 80px for collapsed (w-20), 256px for expanded (w-64)
70
+ return jsxs("div", {
71
+ className: "fixed shadow-xl rounded-md border border-gray-100 z-[999] overflow-hidden",
72
+ style: {
73
+ backgroundColor: bgColor,
74
+ left: `${sidebarWidth}px`,
75
+ // Position right after sidebar
76
+ top: `${popupPosition.top}px`,
77
+ boxShadow: '0 5px 15px rgba(0, 0, 0, 0.2)',
78
+ animation: 'fadeIn 0.2s ease-out forwards',
79
+ maxWidth: 'calc(100vw - 100px)',
80
+ // Prevent overflow on small screens
81
+ width: 'max-content',
82
+ minWidth: '220px'
83
+ },
84
+ children: [jsx("style", {
85
+ dangerouslySetInnerHTML: {
86
+ __html: `
87
+ @keyframes fadeIn {
88
+ from { opacity: 0; transform: translateX(-10px); }
89
+ to { opacity: 1; transform: translateX(0); }
90
+ }
91
+ `
92
+ }
93
+ }), jsx("div", {
94
+ className: "font-medium text-sm px-4 py-3 border-b border-gray-100 whitespace-nowrap",
95
+ style: {
96
+ backgroundColor: generateLightShade(settings?.primaryColor, 0.95)
97
+ },
98
+ children: jsx("span", {
99
+ style: {
100
+ color: settings?.primaryColor
101
+ },
102
+ children: item.name
103
+ })
104
+ }), jsx("div", {
105
+ className: "max-h-[400px] overflow-y-auto overflow-x-hidden py-1",
106
+ children: item.children.map(child => jsx("div", {
107
+ className: "w-full min-w-max",
108
+ children: renderMenuItem(child, depth + 1, true)
109
+ }, child.path))
110
+ })]
111
+ });
112
+ };
32
113
  const renderMenuItem = (item, depth = 0, isHoverMenu = false) => {
33
114
  const hasChildren = item.children && item.children.length > 0;
34
115
  const isOpen = openMenusByLevel[depth] === item.path;
35
- const isActive = activePath === item.path;
116
+ const isActive = isMenuItemActive(item.path);
36
117
  const isHovered = hoveredMenu === item.path;
37
118
  const paddingLeft = `${depth * 1}rem`;
38
119
  const bgColor = generateLightShade(settings?.primaryColor, 0.89);
120
+ // Determine styling based on whether it's a parent or child item
121
+ const isParentWithChildren = hasChildren && depth === 0;
122
+ const shouldApplyBackground = isActive && !isParentWithChildren || isHovered;
39
123
  return jsxs("div", {
40
- className: "w-full relative group",
41
- onMouseEnter: () => collapsed && !isHoverMenu && setHoveredMenu(item.path),
42
- onMouseLeave: () => collapsed && !isHoverMenu && setHoveredMenu(null),
124
+ className: `w-full relative group ${isHovered && collapsed && !isHoverMenu ? `rounded-md` : ''}`,
125
+ style: {
126
+ backgroundColor: isHovered && !isHoverMenu ? bgColor : ''
127
+ },
128
+ onMouseEnter: e => handleMenuHover(e, item, isHoverMenu),
129
+ onMouseLeave: () => handleMenuLeave(item, isHoverMenu),
43
130
  children: [jsxs(Link, {
44
- to: generateMenuPath(item?.path, routeParams),
45
- className: `flex items-center justify-between w-full px-4 py-2 hover:bg-gray-100 text-sm cursor-pointer transition-colors rounded-md mx-1 my-0.5`,
131
+ to: hasChildren && collapsed && !isHoverMenu ? '#' : generateMenuPath(item?.path, routeParams),
132
+ className: `flex items-center justify-between w-full px-1 py-2 hover:bg-gray-100 text-sm cursor-pointer transition-colors rounded-md mx-1 my-0.5 whitespace-nowrap overflow-hidden text-ellipsis`,
46
133
  style: {
47
134
  paddingLeft: `calc(1rem + ${paddingLeft})`,
48
- backgroundColor: isActive ? bgColor : ''
135
+ backgroundColor: shouldApplyBackground ? bgColor : ''
49
136
  },
50
137
  onClick: e => handleMenuClick(item.path, hasChildren, depth, e),
51
138
  children: [jsxs("div", {
52
139
  className: `flex items-center ${collapsed && !isHoverMenu ? 'justify-center w-full' : 'gap-3'}`,
53
140
  children: [item.icon ? jsx("span", {
141
+ className: `flex-shrink-0`,
54
142
  style: {
55
143
  color: isActive ? settings?.primaryColor : ''
56
144
  },
57
145
  children: item.icon
58
146
  }) : collapsed && !isHoverMenu ? jsx("span", {
59
- className: "w-8 h-8 flex items-center justify-center rounded-full bg-gray-100",
147
+ className: "flex items-center justify-center flex-shrink-0",
60
148
  style: {
61
149
  color: isActive ? settings?.primaryColor : ''
62
150
  },
63
151
  children: getFirstLetter(item.name)
64
152
  }) : null, (!collapsed || isHoverMenu) && jsx("span", {
65
- className: "font-medium whitespace-nowrap",
153
+ className: "font-medium whitespace-nowrap overflow-hidden text-ellipsis",
66
154
  style: {
67
155
  color: isActive ? settings?.primaryColor : ''
68
156
  },
@@ -72,21 +160,23 @@ import {jsx,jsxs}from'react/jsx-runtime';import {useState}from'react';import {Li
72
160
  style: {
73
161
  color: isActive ? settings?.primaryColor : ''
74
162
  },
75
- children: isOpen ? jsx(ChevronDownIcon, {
163
+ className: "flex-shrink-0 ml-1",
164
+ children: isOpen ? jsx(ChevronUpIcon, {
76
165
  className: "h-4 w-4"
77
- }) : jsx(ChevronRightIcon, {
166
+ }) : jsx(ChevronDownIcon, {
78
167
  className: "h-4 w-4"
79
168
  })
80
169
  })]
81
- }), hasChildren && (isOpen && !collapsed || collapsed && isHovered) && jsx("div", {
82
- className: `transition-all duration-200 ease-in-out ${collapsed && !isHoverMenu ? 'absolute left-full top-0 ml-2 bg-white shadow-lg rounded-md py-2 min-w-[200px] z-50' : ''}`,
83
- children: item.children.map(child => renderMenuItem(child, depth + 1, collapsed && !isHoverMenu))
170
+ }), collapsed && hasChildren && isHovered && !isHoverMenu && item.children.length > 0 && renderPopupMenu(item, depth), hasChildren && isOpen && !collapsed && jsx("div", {
171
+ className: "transition-all duration-200 ease-in-out",
172
+ children: item.children.map(child => renderMenuItem(child, depth + 1))
84
173
  })]
85
174
  }, item.path);
86
175
  };
87
176
  return jsx("div", {
177
+ className: "overflow-hidden",
88
178
  children: jsx("nav", {
89
- className: `mt-2 ${collapsed ? 'px-1' : 'px-2'}`,
179
+ className: `mt-2 ${collapsed ? 'px-1' : 'px-2'} overflow-x-hidden`,
90
180
  children: menuData.map(item => renderMenuItem(item))
91
181
  })
92
182
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarMenu.js","sources":["../../../../src/components/Layout/Sidebar/SidebarMenu.tsx"],"sourcesContent":[null],"names":[],"mappings":"6PAOO,MAAM,WAAW,GAA+B,CAAC;UAC9C;aACW;UACX;AACN,EAAA;MAEM;QACF,CAAC,gBAAe,EAAG,mBAAA,CAAA,GAAA,QAAA,CAAA,EAAA,CAAA;AACnB,EAAA,MAAA,CAAA,UAAa,EAAA,aAAA,CAAA,GAAA,QAAA,CAAA,YAAA,CAAA;oBAAS,EAAA,cAAA,CAAA,GAAA,QAAA,CAAA,IAAA,CAAA;AAEtB,EAAA,MAAA;AACI,IAAA,eAAO;AACP,IAAA;AACH,GAAA,GAAA,KAAE;AACP,EAAA,MAAE,UAAA,GAAA,CAAA,IAAA,EAAA,KAAA,EAAA,CAAA,KAAA;IAEF,CAAM,CAAA,cAAA,EAAA;AACF,IAAA,IAAA,SAAe,EAAA;AACX,IAAA,mBAAW,CAAI,IAAA;SAClB,IAAA;eAAO,IAAA,CAAA,KAAA,CAAA,KAAA,IAAA,GAAA,IAAA,GAAA;;;AAGZ,EAAA,MAAE,eAAA,GAAA,CAAA,IAAA,EAAA,WAAA,EAAA,KAAA,EAAA,CAAA,KAAA;AAEF,IAAA,IAAA,WAAoB,IAAA,CAAA,WAAoB;gBAC7B,CAAA,IAAW,EAAA,KAAE,EAAE,CAAW,CAAA;AACrC,KAAC,MAAC;AAEF,MAAA,aAAoB,CAAA,IAAA,CAAA;AAChB;;AAEA,EAAA,MAAA,cAAc,GAAG,IAAA,IAAA;AACjB,IAAA,OAAA,YAAe,CAAG,CAAA,CAAA,WAAW;AAC7B,GAAA;QACA,cAAgB,GAAA,CAAA,IAAA,EAAA,KAAA,GAAA,CAAA,EAAmB,WAAsB,GAAA,KAAA,KAAE;AAE3D,IAAA,MAAA,WACI,GAAA,IAAA,CAAA,QAEa,IAAA,wBAAwB;AA+CjB,IAAA,MAAA,MAAA,GAAA,gBAAuF,CAAA,KAAA,CAAA,KAAA,IAAA,CAAA,IAAA;AACvF,IAAA,MAAA,QAAA,GAAA,UAGP,KAAA,IAAA,CAAA,IAAA;AAKrB,IAAA,MAAE,SAAA,GAAA,WAAA,KAAA,IAAA,CAAA,IAAA;AAEF,IAAA,MAAA,WACI,GAAA,CAAA,EAAA,KAAA,GAAA,CACI,CAAK,GAAA,CAAA;AAGjB,IAAE,MAAA,OAAA,GAAA,kBAAA,CAAA,QAAA,EAAA,YAAA,EAAA,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SidebarMenu.js","sources":["../../../../src/components/Layout/Sidebar/SidebarMenu.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TailwindLayout.d.ts","sourceRoot":"","sources":["../../../src/components/Layout/TailwindLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAqC,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAqC,MAAM,aAAa,CAAC;AAqDpG,KAAK,cAAc,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEvD,QAAA,MAAM,SAAS;;;0EAAoB,CAAC;AAEpC,KAAK,+BAA+B,GAAG,gBAAgB,GAAG,cAAc,CAAC;AAEzE,QAAA,MAAM,mBAAmB,EAAE,kBAAkB,CACzC,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,+BAA+B,KAAK,GAAG,CAAC,OAAO,CAAC,EAClF,GAAG,CAC8C,CAAC;AAEtD,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"TailwindLayout.d.ts","sourceRoot":"","sources":["../../../src/components/Layout/TailwindLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,sBAAsB,CAAC;AAG3E,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAwB,MAAM,aAAa,CAAC;AAsEvF,KAAK,cAAc,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEvD,QAAA,MAAM,SAAS;;;0EAAoB,CAAC;AAEpC,KAAK,+BAA+B,GAAG,gBAAgB,GAAG,cAAc,CAAC;AAEzE,QAAA,MAAM,mBAAmB,EAAE,kBAAkB,CACzC,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,+BAA+B,KAAK,GAAG,CAAC,OAAO,CAAC,EAClF,GAAG,CAC8C,CAAC;AAEtD,eAAe,mBAAmB,CAAC"}
@@ -1,14 +1,22 @@
1
- import {jsx}from'react/jsx-runtime';import {useLayoutSettings}from'@admin-layout/client';import {userSelector}from'@adminide-stack/user-auth0-client';import React__default,{useMemo}from'react';import {connect,useSelector}from'react-redux';import {BasicLayout}from'./BasicLayout/index.js';import {settingsMachine}from'../../machines/settingsMachine.js';import {createActor}from'xstate';import {useSelector as useSelector$1}from'@xstate/react';function BasicLayoutWithAuthorities(props) {
1
+ import {jsx}from'react/jsx-runtime';import {useLayoutSettings}from'@admin-layout/client';import {userSelector}from'@adminide-stack/user-auth0-client';import {useMachine}from'@xstate/react';import React__default,{useMemo,useCallback}from'react';import {connect,useSelector}from'react-redux';import {settingsMachine}from'../../machines/settingsMachine.js';import {ThemeProviderTailwind}from'../ThemeProvider/ThemeProvider.js';import {BasicLayout}from'./BasicLayout/index.js';function BasicLayoutWithAuthorities(props) {
2
2
  const userData = useSelector(userSelector);
3
3
  const {
4
4
  settings,
5
5
  setSettings
6
6
  } = useLayoutSettings();
7
- // const { authenticated, user } = isUserAuthenticated();
8
- const settingsActor = createActor(settingsMachine, {
9
- systemId: 'settings'
10
- }).start();
11
- const state = useSelector$1(settingsActor, state => state);
7
+ const [state, send, settingsActor] = useMachine(settingsMachine.provide({
8
+ actions: {
9
+ updateReduxSettings: ({
10
+ context
11
+ }) => {
12
+ setSettings(context);
13
+ }
14
+ }
15
+ }), {
16
+ input: {
17
+ settings
18
+ }
19
+ });
12
20
  const settingXstate = state?.context;
13
21
  const {
14
22
  permissions
@@ -16,25 +24,27 @@ import {jsx}from'react/jsx-runtime';import {useLayoutSettings}from'@admin-layout
16
24
  const mainHeaderProps = useMemo(() => ({
17
25
  picture: userData ? userData?.profile?.picture : null
18
26
  }), [userData]);
19
- const onSettingChange = config => {
20
- (async () => {
21
- await setSettings(config);
22
- })();
23
- };
27
+ const onSettingChange = useCallback(config => {
28
+ // Update Redux first
29
+ setSettings(config);
30
+ }, [setSettings]);
24
31
  //@ts-ignore
25
32
  const {
26
33
  routeParams: {
27
34
  orgName
28
35
  } = {}
29
36
  } = props;
30
- return jsx(BasicLayout, {
31
- routeParams: orgName,
32
- authorities: permissions?.resolveConfiguration ?? permissions,
33
- onSettingChange: onSettingChange,
34
- mainHeaderProps: mainHeaderProps,
35
- actor: settingsActor,
36
- ...props,
37
- settings: settingXstate
37
+ return jsx(ThemeProviderTailwind, {
38
+ settings: settingXstate,
39
+ children: jsx(BasicLayout, {
40
+ routeParams: orgName,
41
+ authorities: permissions?.resolveConfiguration ?? permissions,
42
+ onSettingChange: onSettingChange,
43
+ mainHeaderProps: mainHeaderProps,
44
+ actor: settingsActor,
45
+ ...props,
46
+ settings: settingXstate
47
+ })
38
48
  });
39
49
  }
40
50
  const mapState = ({
@@ -1 +1 @@
1
- {"version":3,"file":"TailwindLayout.js","sources":["../../../src/components/Layout/TailwindLayout.tsx"],"sourcesContent":[null],"names":[],"mappings":"0bASA,SAAS,0BAA0B,CAAC,KAAgF,EAAA;AAChH,EAAA,MAAA,WAAiB,WAAA,CAAA,YAAY,CAAA;QACvB;IACN,QAAyD;AACzD,IAAA;AACI,GAAA,GAAA,iBAAoB,EAAA;;AAGxB,EAAA,MAAA,aAA+B,GAAA,WAAA,CAAC,eAAe,EAAC;AAEhD,IAAA,QAAmB,EAAA;AACnB,GAAA,CAAA,CAAA,KAAM,EAAE;AACR,EAAA,MAAA,qBAAwB,CAAA,aACb,EAAA,KAAA,IAAA,KAAA,CAAA;AACH,EAAA,MAAA,aAAS,GAAA,KAAW,EAAA,OAAU;AACjC,EAAA,MACD;AAGJ,IAAA;WACK;AACG,EAAA,MAAA,eAAiB,GAAA,OAAO,CAAA,OAAE;aACzB,QAAA,GAAA,QAAA,EAAA,OAAA,EAAA,OAAA,GAAA;AACT,GAAA,CAAA,EAAE,CAAA,QAAA,CAAA,CAAA;QAEU,eAAA,GAAA,MAAA,IAAA;IACZ,CAAM,YAAa;AACnB,MAAA,MACI,WAAY,CAAA,MAAA,CAAA;AAUpB,KAAC,GAAA;AAED,GAAM;;QAEM;AACX,IAAE,WAAA,EAAA;AAMH,MAAM;AAIN,KAAM,GAAA;AAKN,GAAA,GAAA,KAAA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"TailwindLayout.js","sources":["../../../src/components/Layout/TailwindLayout.tsx"],"sourcesContent":[null],"names":[],"mappings":"ydAWA,SAAS,0BAA0B,CAAC,KAAgF,EAAA;AAChH,EAAA,MAAA,WAAiB,WAAA,CAAA,YAAY,CAAA;QACvB;AAEN,IAAA,QAAO;AAEC,IAAA;AACI,GAAA,GAAA,iBAAA,EAAA;gBACI,IAAW,EAAA,aAAQ,CAAC,GAAC,UAAA,CAAA,eAAA,CAAA,OAAA,CAAA;aACxB;AACJ,MAAA,mBAAA,EAAA,CAAA;AACJ,QACD;AACI,OAAA,KAAA;mBACY,CAAA,OAAA,CAAA;AACX;AACJ;AAGL,GAAA,CAAA,EAAA;AAEA,IAAA,KAAA,EAAQ;AAER,MAAA;AAEQ;AACH,GAAA,CAAA;AAIL,EAAA,MAAA,qBAAwB,EAAA,OAAA;QAEhB;;AAEJ,GAAA,GACA,KAAY;QAGJ,eAAA,GAAA,OAAA,CAAA,OAAA;IACZ,OAAM,EAAa,QAAA,GAAA,QAAI,EAAO,OAAO,EAAE,OAAG,GAAM;AAEhD,GAAA,CAAA,EAAA,CAAA,QACK,CAAA,CAAA;AAYT,EAAC,MAAA,eAAA,GAAA,WAAA,CAAA,MAAA,IAAA;AAED;IACI,WAAQ,CAAA,MAAA,CAAA;KACA,CAAA,WAAQ,CAAA,CAAA;AACnB;AAMD,EAAA;AAIA,IAAM,WAAA,EAAA;AAKN,MAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,19 +1,4 @@
1
- import { MenuDataItem } from '../typings';
2
- import { ProSettings } from '../defaultSettings';
3
- export interface GetPageTitleProps {
4
- pathname?: string;
5
- breadcrumb?: {
6
- [path: string]: MenuDataItem;
7
- };
8
- breadcrumbMap?: Map<string, MenuDataItem>;
9
- menu?: ProSettings['menu'];
10
- title?: ProSettings['title'];
11
- pageName?: string;
12
- formatMessage?: (data: {
13
- id: any;
14
- defaultMessage?: string;
15
- }) => string;
16
- }
1
+ import { GetPageTitleProps, MenuDataItem } from '@admin-layout/client';
17
2
  export declare const matchParamsPath: (pathname: string, breadcrumb?: {
18
3
  [path: string]: MenuDataItem;
19
4
  }, breadcrumbMap?: Map<string, MenuDataItem>) => MenuDataItem;
@@ -1 +1 @@
1
- {"version":3,"file":"getPageTitle.d.ts","sourceRoot":"","sources":["../../../src/components/Layout/getPageTitle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAC;IAC9C,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,GAAG,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;CAC1E;AAED,eAAO,MAAM,eAAe,aACd,MAAM,eACH;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAA;CAAE,kBAC7B,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,KAC1C,YAQF,CAAC;AAEF,QAAA,MAAM,gBAAgB,UACX,iBAAiB,eACX,OAAO,KACrB;IAEC,KAAK,EAAE,MAAM,CAAC;IAEd,EAAE,EAAE,MAAM,CAAC;IAEX,QAAQ,EAAE,MAAM,CAAC;CAiDpB,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"getPageTitle.d.ts","sourceRoot":"","sources":["../../../src/components/Layout/getPageTitle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEvE,eAAO,MAAM,eAAe,GACxB,UAAU,MAAM,EAChB,aAAa;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAA;CAAE,EAC7C,gBAAgB,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,KAC1C,YAQF,CAAC;AAEF,QAAA,MAAM,gBAAgB,GAClB,OAAO,iBAAiB,EACxB,aAAa,OAAO,KACrB;IAEC,KAAK,EAAE,MAAM,CAAC;IAEd,EAAE,EAAE,MAAM,CAAC;IAEX,QAAQ,EAAE,MAAM,CAAC;CAiDpB,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -18,7 +18,7 @@ const getPageTitleInfo = (props, ignoreTile) => {
18
18
  locale: false
19
19
  }
20
20
  } = props;
21
- const pageTitle = title || '';
21
+ const pageTitle = ignoreTile ? '' : title || '';
22
22
  const currRouterData = matchParamsPath(pathname, breadcrumb, breadcrumbMap);
23
23
  if (!currRouterData) {
24
24
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"getPageTitle.js","sources":["../../../src/components/Layout/getPageTitle.ts"],"sourcesContent":[null],"names":[],"mappings":"yCAca,MAAA,eAAe,GAAG,CAC3B,QAAgB,EAChB,UAA6C,EAC7C,aAAyC,KAC3B;;MAEV,aAAA,EAAa;UACP,OAAA,GAAA,CAAO,GAAG,aAAI,CAAA,IAAc,EAAA,CAAA,CAAI,IAAI,CAAA,GAAI,IAAK,YAAiB,CAAA,GAAA,CAAA,CAAA,IAAI,CAAC,QAAM,CAAA,CAAA;QAC/E,OAAI,EAAA;AACA,MAAA,OAAA,yBAAyB,CAAA;;;AAGrC;AAEA,MAAM,gBAAgB,GAAG,CACrB,KAAwB,EACxB,UAAoB,KAQpB;AACA,EAAA,MAAA;AAOQ,IAAA,QAAA,MAAa;;AAGrB,IAAA,aAAe;IACf,aAAM;IACN,KAAK,GAAc,gBAAG;QAClB,GAAO;AACH,MAAA,MAAA,EAAA;AACA;AACA,GAAA,GAAA,KAAA;iBACF,GAAA,KAAA,IAAA,EAAA;QACL,cAAA,GAAA,eAAA,CAAA,QAAA,EAAA,UAAA,EAAA,aAAA,CAAA;AACD,EAAA,IAAA,CAAA,cAA6B,EAAA;AAE7B,IAAA,OAAQ;WACI,EAAA;AACJ,MAAA,EAAA,EAAA,EAAA;cACc,EAAA;AACjB,KAAA;;MAGD,QAAS,GAAA,cAAG,CAAA,IAAA;UACL,CAAA,MAAA,KAAA,KAAA,IAAA,cAAA,CAAA,MAAA,IAAA,aAAA,EAAA;AACH,IAAA,QAAA,GAAA,aAAgB,CAAA;AAChB,MAAA,EAAA,EAAA,cAAI,CAAA,MAAe,IAAA,EAAM;AACzB,MAAA,cAAQ,EAAE,cAAS,CAAA;;;AAG3B,EAAA,IAAA,CAAA,QAAc,EAAA;WACH;AACH,MAAA,KAAA,EAAA,SAAe;AACf,MAAA,EAAA,EAAA,cAAI,CAAA,MAAe,IAAA,EAAM;cACjB,EAAA;;;MAGT,CAAA,KAAA,EAAA;AACH,IAAA,OAAA;AACA,MAAA,KAAI,EAAA,QAAA;QACJ,EAAQ,cAAA,CAAA,MAAA,IAAA,EAAA;MACV;AACN,KAAE;AAEF;;;;;;"}
1
+ {"version":3,"file":"getPageTitle.js","sources":["../../../src/components/Layout/getPageTitle.ts"],"sourcesContent":[null],"names":[],"mappings":"yCAGa,MAAA,eAAe,GAAG,CAC3B,QAAgB,EAChB,UAA6C,EAC7C,aAAyC,KAC3B;;MAEV,aAAA,EAAa;UACP,OAAA,GAAA,CAAO,GAAG,aAAI,CAAA,IAAc,EAAA,CAAA,CAAI,IAAI,CAAA,GAAI,IAAK,YAAiB,CAAA,GAAA,CAAA,CAAA,IAAI,CAAC,QAAM,CAAA,CAAA;QAC/E,OAAI,EAAA;AACA,MAAA,OAAA,yBAAyB,CAAA;;;AAGrC;AAEA,MAAM,gBAAgB,GAAG,CACrB,KAAwB,EACxB,UAAoB,KAQpB;AACA,EAAA,MAAA;AAOQ,IAAA,QAAA,MAAa;;AAGrB,IAAA,aAAe;IACf,aAAM;IACN,KAAK,GAAc,gBAAG;QAClB,GAAO;AACH,MAAA,MAAA,EAAA;AACA;AACA,GAAA,GAAA,KAAA;iBACF,GAAA,UAAA,GAAA,EAAA,GAAA,KAAA,IAAA,EAAA;QACL,cAAA,GAAA,eAAA,CAAA,QAAA,EAAA,UAAA,EAAA,aAAA,CAAA;AACD,EAAA,IAAA,CAAA,cAA6B,EAAA;AAE7B,IAAA,OAAQ;WACI,EAAA;AACJ,MAAA,EAAA,EAAA,EAAA;cACc,EAAA;AACjB,KAAA;;MAGD,QAAS,GAAA,cAAG,CAAA,IAAA;UACL,CAAA,MAAA,KAAA,KAAA,IAAA,cAAA,CAAA,MAAA,IAAA,aAAA,EAAA;AACH,IAAA,QAAA,GAAA,aAAgB,CAAA;AAChB,MAAA,EAAA,EAAA,cAAI,CAAA,MAAe,IAAA,EAAM;AACzB,MAAA,cAAQ,EAAE,cAAS,CAAA;;;AAG3B,EAAA,IAAA,CAAA,QAAc,EAAA;WACH;AACH,MAAA,KAAA,EAAA,SAAe;AACf,MAAA,EAAA,EAAA,cAAI,CAAA,MAAe,IAAA,EAAM;cACjB,EAAA;;;MAGT,CAAA,KAAA,EAAA;AACH,IAAA,OAAA;AACA,MAAA,KAAI,EAAA,QAAA;QACJ,EAAQ,cAAA,CAAA,MAAA,IAAA,EAAA;MACV;AACN,KAAE;AAEF;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"AdditionalSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/slot-fill/AdditionalSettings.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,kCAAkC,kCAAkC,CAAC;AAElF,eAAO,MAAM,sBAAsB,yDAElC,CAAC;AAEF,eAAO,MAAM,0BAA0B,yDAEtC,CAAC"}
1
+ {"version":3,"file":"AdditionalSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/slot-fill/AdditionalSettings.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,kCAAkC,kCAAkC,CAAC;AAElF,eAAO,MAAM,sBAAsB,GAAI,UAAK,4CAE3C,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,UAAK,4CAE/C,CAAC"}