@admin-layout/tailwind-design-pro 12.2.4-alpha.1 → 12.2.4-alpha.101
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.
- package/README.md +80 -0
- package/lib/components/LanguageMenu/LanguageMenu.d.ts.map +1 -1
- package/lib/components/LanguageMenu/LanguageMenu.js +6 -2
- package/lib/components/LanguageMenu/LanguageMenu.js.map +1 -1
- package/lib/components/Layout/BasicLayout/index.d.ts +19 -0
- package/lib/components/Layout/BasicLayout/index.d.ts.map +1 -1
- package/lib/components/Layout/BasicLayout/index.js +63 -14
- package/lib/components/Layout/BasicLayout/index.js.map +1 -1
- package/lib/components/Layout/BasicLayout/utils.js +1 -1
- package/lib/components/Layout/BasicLayout/utils.js.map +1 -1
- package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.js +1 -1
- package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/Header.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/Header.js +12 -4
- package/lib/components/Layout/GlobalHeader/Header.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/MainHeader.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/MainHeader.js +2 -1
- package/lib/components/Layout/GlobalHeader/MainHeader.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/NavbarSlotStrip.d.ts +12 -0
- package/lib/components/Layout/GlobalHeader/NavbarSlotStrip.d.ts.map +1 -0
- package/lib/components/Layout/GlobalHeader/NavbarSlotStrip.js +36 -0
- package/lib/components/Layout/GlobalHeader/NavbarSlotStrip.js.map +1 -0
- package/lib/components/Layout/GlobalHeader/RightContent.d.ts +1 -2
- package/lib/components/Layout/GlobalHeader/RightContent.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightContent.js +10 -72
- package/lib/components/Layout/GlobalHeader/RightContent.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightMenu.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightMenu.js +16 -80
- package/lib/components/Layout/GlobalHeader/RightMenu.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/SearchBar.d.ts +43 -0
- package/lib/components/Layout/GlobalHeader/SearchBar.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/SearchBar.js +380 -43
- package/lib/components/Layout/GlobalHeader/SearchBar.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/index.d.ts +1 -0
- package/lib/components/Layout/GlobalHeader/index.d.ts.map +1 -1
- package/lib/components/Layout/ProTailwindLayout.d.ts +20 -8
- package/lib/components/Layout/ProTailwindLayout.d.ts.map +1 -1
- package/lib/components/Layout/ProTailwindLayout.js +255 -88
- package/lib/components/Layout/ProTailwindLayout.js.map +1 -1
- package/lib/components/Layout/Sidebar/BottomMenu.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/BottomMenu.js +55 -82
- package/lib/components/Layout/Sidebar/BottomMenu.js.map +1 -1
- package/lib/components/Layout/Sidebar/DynamicIcon.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/DynamicIcon.js +80 -19
- package/lib/components/Layout/Sidebar/DynamicIcon.js.map +1 -1
- package/lib/components/Layout/Sidebar/MainSidebar.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/MainSidebar.js +31 -26
- package/lib/components/Layout/Sidebar/MainSidebar.js.map +1 -1
- package/lib/components/Layout/Sidebar/MainSidebarMenu.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/MainSidebarMenu.js +228 -51
- package/lib/components/Layout/Sidebar/MainSidebarMenu.js.map +1 -1
- package/lib/components/Layout/Sidebar/MenuDynamicDialog.d.ts +12 -0
- package/lib/components/Layout/Sidebar/MenuDynamicDialog.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/MenuDynamicDialog.js +79 -0
- package/lib/components/Layout/Sidebar/MenuDynamicDialog.js.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebar.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/PerplexSidebar.js +45 -36
- package/lib/components/Layout/Sidebar/PerplexSidebar.js.map +1 -1
- package/lib/components/Layout/Sidebar/PerplexSidebarFlyoutContext.d.ts +25 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarFlyoutContext.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarFlyoutContext.js +287 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarFlyoutContext.js.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.js +322 -45
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.js.map +1 -1
- package/lib/components/Layout/Sidebar/SidebarRailFX.d.ts +23 -0
- package/lib/components/Layout/Sidebar/SidebarRailFX.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/SidebarRailFX.js +229 -0
- package/lib/components/Layout/Sidebar/SidebarRailFX.js.map +1 -0
- package/lib/components/Layout/SidebarControlsContext.d.ts +17 -0
- package/lib/components/Layout/SidebarControlsContext.d.ts.map +1 -0
- package/lib/components/Layout/SidebarControlsContext.js +21 -0
- package/lib/components/Layout/SidebarControlsContext.js.map +1 -0
- package/lib/components/Layout/TailwindLayout.d.ts.map +1 -1
- package/lib/components/Layout/TailwindLayout.js +22 -3
- package/lib/components/Layout/TailwindLayout.js.map +1 -1
- package/lib/components/Layout/defaultPermissions.d.ts +134 -0
- package/lib/components/Layout/defaultPermissions.d.ts.map +1 -0
- package/lib/components/Layout/defaultPermissions.js +134 -0
- package/lib/components/Layout/defaultPermissions.js.map +1 -0
- package/lib/components/Layout/getPageTitle.js +2 -2
- package/lib/components/Layout/getPageTitle.js.map +1 -1
- package/lib/components/Layout/slot-fill/RightContent.d.ts +3 -1
- package/lib/components/Layout/slot-fill/RightContent.d.ts.map +1 -1
- package/lib/components/Layout/slot-fill/RightContent.js +4 -6
- package/lib/components/Layout/slot-fill/RightContent.js.map +1 -1
- package/lib/components/SettingDrawer/SettingDrawer.d.ts.map +1 -1
- package/lib/components/SettingDrawer/SettingDrawer.js +21 -18
- package/lib/components/SettingDrawer/SettingDrawer.js.map +1 -1
- package/lib/components/SettingDrawer/components/ApplyToAllRoutesToggle.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/ApplyToAllRoutesToggle.js +8 -14
- package/lib/components/SettingDrawer/components/ApplyToAllRoutesToggle.js.map +1 -1
- package/lib/components/SettingDrawer/components/CheckBoxTheme.js +2 -2
- package/lib/components/SettingDrawer/components/CheckBoxTheme.js.map +1 -1
- package/lib/components/SettingDrawer/components/DeviceTabs.js +2 -2
- package/lib/components/SettingDrawer/components/DeviceTabs.js.map +1 -1
- package/lib/components/SettingDrawer/components/InvitationSettings.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/InvitationSettings.js +7 -3
- package/lib/components/SettingDrawer/components/InvitationSettings.js.map +1 -1
- package/lib/components/SettingDrawer/components/LayoutChange.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/LayoutChange.js +8 -11
- package/lib/components/SettingDrawer/components/LayoutChange.js.map +1 -1
- package/lib/components/SettingDrawer/components/MenuVisibilitySettings.js +5 -5
- package/lib/components/SettingDrawer/components/MenuVisibilitySettings.js.map +1 -1
- package/lib/components/SettingDrawer/components/NavigationsModes.js +3 -3
- package/lib/components/SettingDrawer/components/NavigationsModes.js.map +1 -1
- package/lib/components/SettingDrawer/components/RegionalSettings.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/RegionalSettings.js +40 -97
- package/lib/components/SettingDrawer/components/RegionalSettings.js.map +1 -1
- package/lib/components/SettingDrawer/components/SettingsActions.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/SettingsActions.js +27 -25
- package/lib/components/SettingDrawer/components/SettingsActions.js.map +1 -1
- package/lib/components/SettingDrawer/components/SettingsDrawerHeader.d.ts.map +1 -1
- package/lib/components/SettingDrawer/components/SettingsDrawerHeader.js +4 -3
- package/lib/components/SettingDrawer/components/SettingsDrawerHeader.js.map +1 -1
- package/lib/components/SettingDrawer/components/Switch.js +2 -2
- package/lib/components/SettingDrawer/components/ThemeColor.js +1 -1
- package/lib/components/SettingDrawer/components/ThemeColor.js.map +1 -1
- package/lib/components/SettingDrawer/components/ThemeSelector.js +1 -1
- package/lib/components/SettingDrawer/components/WebFontsSelector.js +1 -1
- package/lib/components/SettingDrawer/hooks/useSettingsOperations.d.ts.map +1 -1
- package/lib/components/SettingDrawer/hooks/useSettingsOperations.js +13 -9
- package/lib/components/SettingDrawer/hooks/useSettingsOperations.js.map +1 -1
- package/lib/components/SettingDrawer/utils/constants.d.ts.map +1 -1
- package/lib/components/SettingDrawer/utils/constants.js +3 -0
- package/lib/components/SettingDrawer/utils/constants.js.map +1 -1
- package/lib/components/SettingDrawer/utils/helper.js +1 -1
- package/lib/components/SettingDrawer/utils/transformers.d.ts +16 -0
- package/lib/components/SettingDrawer/utils/transformers.d.ts.map +1 -1
- package/lib/components/SettingDrawer/utils/transformers.js +39 -2
- package/lib/components/SettingDrawer/utils/transformers.js.map +1 -1
- package/lib/components/SettingsThemeApplier/SettingsThemeApplier.d.ts +10 -0
- package/lib/components/SettingsThemeApplier/SettingsThemeApplier.d.ts.map +1 -0
- package/lib/components/SettingsThemeApplier/SettingsThemeApplier.js +23 -0
- package/lib/components/SettingsThemeApplier/SettingsThemeApplier.js.map +1 -0
- package/lib/components/SettingsThemeApplier/index.d.ts +2 -0
- package/lib/components/SettingsThemeApplier/index.d.ts.map +1 -0
- package/lib/components/index.js +1 -1
- package/lib/components/typings.d.ts +29 -0
- package/lib/components/typings.d.ts.map +1 -1
- package/lib/compute.js +2 -1
- package/lib/compute.js.map +1 -1
- package/lib/helpers/DynamicIcon.js +7 -1
- package/lib/helpers/DynamicIcon.js.map +1 -1
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/index.d.ts.map +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/routes.json +6 -1
- package/lib/styles/index.css +321 -0
- package/lib/utils/settingsTheme.d.ts +40 -0
- package/lib/utils/settingsTheme.d.ts.map +1 -0
- package/lib/utils/settingsTheme.js +106 -0
- package/lib/utils/settingsTheme.js.map +1 -0
- package/package.json +9 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {generateMenuPath}from'@admin-layout/client';import {useLocation,useNavigate}from'@remix-run/react';import React__default,{useState,
|
|
1
|
+
import {generateMenuPath}from'@admin-layout/client';import {useLocation,useNavigate,Link}from'@remix-run/react';import React__default,{useState,useRef,useCallback,useEffect}from'react';import {icons}from'../../../icons.js';// Constants moved outside component
|
|
2
2
|
const SIDEBAR_WIDTHS = {
|
|
3
3
|
COLLAPSED: 64,
|
|
4
4
|
EXPANDED: 256
|
|
@@ -24,11 +24,83 @@ const isMenuItemActive = (itemPath, currentPath, routeParams, exact) => {
|
|
|
24
24
|
}
|
|
25
25
|
return false;
|
|
26
26
|
};
|
|
27
|
-
//
|
|
27
|
+
// Motion system — sliding active indicator + icon micro-interactions when collapsed.
|
|
28
|
+
// All transforms/opacity/filter only; layout untouched. Honors prefers-reduced-motion.
|
|
29
|
+
const SIDEBAR_MOTION_CSS = `
|
|
30
|
+
.ql-rail-indicator {
|
|
31
|
+
position: absolute;
|
|
32
|
+
left: 2px;
|
|
33
|
+
top: 0;
|
|
34
|
+
width: 3px;
|
|
35
|
+
border-radius: 9999px;
|
|
36
|
+
background: hsl(var(--primary));
|
|
37
|
+
box-shadow: 0 0 0 0.5px hsl(var(--primary) / 0.2);
|
|
38
|
+
pointer-events: none;
|
|
39
|
+
will-change: transform, height, opacity;
|
|
40
|
+
z-index: 1;
|
|
41
|
+
}
|
|
42
|
+
.ql-rail-indicator--animated {
|
|
43
|
+
transition:
|
|
44
|
+
transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
|
|
45
|
+
height 0.42s cubic-bezier(0.22, 1, 0.36, 1),
|
|
46
|
+
opacity 0.2s ease-out;
|
|
47
|
+
}
|
|
48
|
+
.ql-rail-icon {
|
|
49
|
+
transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), filter 0.24s ease-out;
|
|
50
|
+
will-change: transform;
|
|
51
|
+
}
|
|
52
|
+
.ql-rail-item:hover .ql-rail-icon {
|
|
53
|
+
transform: translateY(-1px) scale(1.06);
|
|
54
|
+
}
|
|
55
|
+
.ql-rail-item:active .ql-rail-icon {
|
|
56
|
+
transform: scale(0.94);
|
|
57
|
+
transition-duration: 0.1s;
|
|
58
|
+
}
|
|
59
|
+
.ql-rail-icon-active {
|
|
60
|
+
transform: scale(1.06);
|
|
61
|
+
}
|
|
62
|
+
.ql-rail-item:hover .ql-rail-icon-active {
|
|
63
|
+
transform: translateY(-1px) scale(1.08);
|
|
64
|
+
}
|
|
65
|
+
.ql-hover-accent {
|
|
66
|
+
background: hsl(var(--primary) / 0.35);
|
|
67
|
+
animation: qlHoverAccentIn 0.22s cubic-bezier(0.16, 1, 0.3, 1);
|
|
68
|
+
}
|
|
69
|
+
@keyframes qlHoverAccentIn {
|
|
70
|
+
from { opacity: 0; transform: scaleY(0.4); }
|
|
71
|
+
to { opacity: 1; transform: scaleY(1); }
|
|
72
|
+
}
|
|
73
|
+
@media (prefers-reduced-motion: reduce) {
|
|
74
|
+
.ql-rail-indicator--animated { transition: opacity 0.12s ease-out; }
|
|
75
|
+
.ql-rail-icon,
|
|
76
|
+
.ql-rail-item:hover .ql-rail-icon,
|
|
77
|
+
.ql-rail-item:active .ql-rail-icon,
|
|
78
|
+
.ql-rail-item:hover .ql-rail-icon-active { transition: none; transform: none; }
|
|
79
|
+
.ql-rail-icon-active { transform: none; }
|
|
80
|
+
.ql-hover-accent { animation: none; }
|
|
81
|
+
}
|
|
82
|
+
`;
|
|
83
|
+
// CSS keyframes for collapsed popup flyout
|
|
28
84
|
const POPUP_ANIMATION_CSS = `
|
|
29
|
-
@keyframes
|
|
30
|
-
from { opacity: 0; transform: translateX(-
|
|
31
|
-
to
|
|
85
|
+
@keyframes flyoutIn {
|
|
86
|
+
from { opacity: 0; transform: translateX(-14px) scale(0.98); }
|
|
87
|
+
to { opacity: 1; transform: translateX(0) scale(1); }
|
|
88
|
+
}
|
|
89
|
+
@keyframes flyoutItemIn {
|
|
90
|
+
from { opacity: 0; transform: translateX(10px); }
|
|
91
|
+
to { opacity: 1; transform: translateX(0); }
|
|
92
|
+
}
|
|
93
|
+
.ql-popup-flyout {
|
|
94
|
+
animation: flyoutIn 0.26s cubic-bezier(0.16, 1, 0.3, 1) forwards;
|
|
95
|
+
}
|
|
96
|
+
.ql-popup-item {
|
|
97
|
+
opacity: 0;
|
|
98
|
+
animation: flyoutItemIn 0.34s cubic-bezier(0.22, 1, 0.36, 1) forwards;
|
|
99
|
+
animation-delay: calc(60ms + var(--i, 0) * 38ms);
|
|
100
|
+
}
|
|
101
|
+
@media (prefers-reduced-motion: reduce) {
|
|
102
|
+
.ql-popup-flyout { animation-duration: 0.01ms; filter: none; }
|
|
103
|
+
.ql-popup-item { animation: none; opacity: 1; }
|
|
32
104
|
}
|
|
33
105
|
`;
|
|
34
106
|
const getTextColor = (active, navTheme) => {
|
|
@@ -98,6 +170,7 @@ const MenuItem = React__default.memo(({
|
|
|
98
170
|
onMenuHover,
|
|
99
171
|
onMenuLeave,
|
|
100
172
|
onNavigate,
|
|
173
|
+
registerItemRef,
|
|
101
174
|
ChevronUpIcon,
|
|
102
175
|
ChevronDownIcon
|
|
103
176
|
}) => {
|
|
@@ -106,11 +179,10 @@ const MenuItem = React__default.memo(({
|
|
|
106
179
|
const isOpen = openMenus.includes(item.path);
|
|
107
180
|
const isActive = isMenuItemActive(item.path, locationPathname, routeParams, item.exact);
|
|
108
181
|
const isHovered = hoveredMenu === item.path;
|
|
109
|
-
const menuItemPaddingLeft = `${depth * 1}rem`;
|
|
110
|
-
const subMenuItemPaddingLeft = `${depth * 2}rem`;
|
|
111
182
|
// Determine styling based on whether it's a parent or child item
|
|
112
183
|
const isParentWithChildren = hasChildren && depth === 0;
|
|
113
|
-
const
|
|
184
|
+
const isTopLevel = depth === 0 && !isHoverMenu;
|
|
185
|
+
const shouldApplyBackground = !isTopLevel && isActive || isTopLevel && !collapsed && isActive && !isParentWithChildren || isHovered;
|
|
114
186
|
const handleMenuClick = useCallback(e => {
|
|
115
187
|
// Prevent event from bubbling to parent menu items
|
|
116
188
|
e.stopPropagation();
|
|
@@ -123,12 +195,13 @@ const MenuItem = React__default.memo(({
|
|
|
123
195
|
// Handle menu toggle for items with children
|
|
124
196
|
e.preventDefault();
|
|
125
197
|
onToggleMenu(item.path, depth, e);
|
|
126
|
-
} else {
|
|
127
|
-
// For items without children, navigate to their path
|
|
128
|
-
const targetPath = generateMenuPath(item.path, routeParams);
|
|
129
|
-
onNavigate(targetPath);
|
|
130
198
|
}
|
|
131
|
-
}, [hasChildren, item.path, depth, onToggleMenu,
|
|
199
|
+
}, [hasChildren, item.path, depth, onToggleMenu, collapsed, isHoverMenu]);
|
|
200
|
+
// Leaf items render as real <Link>s so route modules and loader data prefetch on
|
|
201
|
+
// hover intent (and middle-click / a11y work); parents stay divs and only toggle.
|
|
202
|
+
const leafTargetPath = hasChildren ? null : generateMenuPath(item.path, routeParams);
|
|
203
|
+
const RowElement = leafTargetPath ? Link : 'div';
|
|
204
|
+
const stopRowPropagation = useCallback(e => e.stopPropagation(), []);
|
|
132
205
|
// Enhanced renderPopupMenu to handle nested items in collapsed mode
|
|
133
206
|
const renderPopupMenu = useCallback(() => {
|
|
134
207
|
if (!item.children || item.children.length === 0) return null;
|
|
@@ -144,36 +217,38 @@ const MenuItem = React__default.memo(({
|
|
|
144
217
|
};
|
|
145
218
|
// Create a recursive function to render menu items and their children
|
|
146
219
|
const renderNestedItems = (items, currentDepth) => {
|
|
147
|
-
return items.map(childItem => {
|
|
220
|
+
return items.map((childItem, idx) => {
|
|
148
221
|
const isChildOpen = openMenus.includes(childItem.path);
|
|
149
222
|
const isChildActive = isMenuItemActive(childItem.path, locationPathname, routeParams, childItem.exact);
|
|
150
223
|
const hasGrandchildren = childItem.children && childItem.children.length > 0;
|
|
151
224
|
return React__default.createElement("div", {
|
|
152
225
|
key: childItem.path,
|
|
153
|
-
className: "popup-menu-item"
|
|
154
|
-
|
|
155
|
-
|
|
226
|
+
className: "ql-popup-item popup-menu-item",
|
|
227
|
+
style: {
|
|
228
|
+
['--i']: idx
|
|
229
|
+
}
|
|
230
|
+
}, hasGrandchildren ? React__default.createElement("div", {
|
|
231
|
+
className: `flex items-center justify-between w-full px-4 py-2.5 hover:bg-accent/20 text-sm cursor-pointer rounded-sm font-medium ${isChildActive ? 'bg-accent/10 text-primary' : 'text-foreground'}`,
|
|
156
232
|
onClick: e => {
|
|
157
233
|
e.stopPropagation();
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
toggleCollapsedMenu(childItem.path);
|
|
162
|
-
} else {
|
|
163
|
-
// For leaf nodes, navigate to the path
|
|
164
|
-
const targetPath = generateMenuPath(childItem.path, routeParams);
|
|
165
|
-
onNavigate(targetPath);
|
|
166
|
-
}
|
|
234
|
+
// Handle menu toggle in collapsed mode using our helper
|
|
235
|
+
e.preventDefault();
|
|
236
|
+
toggleCollapsedMenu(childItem.path);
|
|
167
237
|
}
|
|
168
238
|
}, React__default.createElement("span", {
|
|
169
239
|
className: "text-sm font-medium"
|
|
170
|
-
}, childItem.name),
|
|
240
|
+
}, childItem.name), React__default.createElement("span", {
|
|
171
241
|
className: "text-muted-foreground ml-2"
|
|
172
|
-
},
|
|
173
|
-
className:
|
|
174
|
-
}) : React__default.createElement(
|
|
175
|
-
|
|
176
|
-
|
|
242
|
+
}, React__default.createElement(ChevronDownIcon, {
|
|
243
|
+
className: `h-4 w-4 transition-transform duration-300 ease-out motion-reduce:transition-none ${isChildOpen ? 'rotate-180' : ''}`
|
|
244
|
+
}))) : React__default.createElement(Link, {
|
|
245
|
+
to: generateMenuPath(childItem.path, routeParams),
|
|
246
|
+
prefetch: "intent",
|
|
247
|
+
className: `flex items-center justify-between w-full px-4 py-2.5 hover:bg-accent/20 text-sm cursor-pointer rounded-sm ${isChildActive ? 'bg-accent/10 text-primary font-medium' : 'text-foreground'}`,
|
|
248
|
+
onClick: e => e.stopPropagation()
|
|
249
|
+
}, React__default.createElement("span", {
|
|
250
|
+
className: "text-sm font-medium"
|
|
251
|
+
}, childItem.name)), hasGrandchildren && React__default.createElement("div", {
|
|
177
252
|
className: `pl-3 border-l border-border/60 ml-3 mt-1 mb-1 ${isChildOpen ? 'block' : 'hidden'} transition-all duration-200 ease-in-out`,
|
|
178
253
|
style: {
|
|
179
254
|
maxHeight: isChildOpen ? '500px' : '0px',
|
|
@@ -184,13 +259,15 @@ const MenuItem = React__default.memo(({
|
|
|
184
259
|
});
|
|
185
260
|
};
|
|
186
261
|
return React__default.createElement("div", {
|
|
187
|
-
className: "fixed shadow-themed-xl rounded-themed-lg border border-border z-[999] themed-dropdown bg-card",
|
|
262
|
+
className: "ql-popup-flyout fixed shadow-themed-xl rounded-themed-lg border border-border z-[999] themed-dropdown bg-card",
|
|
188
263
|
onClick: e => e.stopPropagation(),
|
|
189
264
|
style: {
|
|
190
265
|
left: `${SIDEBAR_WIDTHS[collapsed ? 'COLLAPSED' : 'EXPANDED']}px`,
|
|
191
266
|
top: `${Math.max(popupPosition.top - 20, 10)}px`,
|
|
192
267
|
// Adjust top position to be higher
|
|
193
|
-
|
|
268
|
+
transformOrigin: 'left center',
|
|
269
|
+
background: 'hsl(var(--muted))',
|
|
270
|
+
boxShadow: '0 24px 70px -24px rgba(0,0,0,0.45)',
|
|
194
271
|
maxWidth: 'calc(100vw - 120px)',
|
|
195
272
|
width: 'max-content',
|
|
196
273
|
minWidth: POPUP_CONFIG.MIN_WIDTH,
|
|
@@ -206,7 +283,7 @@ const MenuItem = React__default.memo(({
|
|
|
206
283
|
__html: POPUP_ANIMATION_CSS
|
|
207
284
|
}
|
|
208
285
|
}), React__default.createElement("div", {
|
|
209
|
-
className: "font-medium text-sm px-
|
|
286
|
+
className: "font-medium text-sm px-3 py-2 border-b border-border whitespace-nowrap bg-muted"
|
|
210
287
|
}, React__default.createElement("span", {
|
|
211
288
|
className: "text-primary"
|
|
212
289
|
}, item.name)), React__default.createElement("div", {
|
|
@@ -214,31 +291,45 @@ const MenuItem = React__default.memo(({
|
|
|
214
291
|
}, renderNestedItems(item.children)));
|
|
215
292
|
}, [item, depth, collapsed, popupPosition.top, openMenus, navTheme, locationPathname, routeParams, onToggleMenu, onNavigate, ChevronUpIcon, ChevronDownIcon]);
|
|
216
293
|
return React__default.createElement("div", {
|
|
217
|
-
|
|
294
|
+
ref: isTopLevel ? el => registerItemRef?.(item.path, el) : undefined,
|
|
295
|
+
className: `w-full relative group ${isTopLevel ? 'ql-rail-item' : ''} ${isHovered && collapsed && !isHoverMenu ? 'rounded-themed' : ''} ${isHovered && !isHoverMenu && !isTopLevel ? 'bg-muted' : ''}`,
|
|
218
296
|
onMouseEnter: e => onMenuHover(e, item, isHoverMenu),
|
|
219
297
|
onMouseLeave: () => onMenuLeave(item, isHoverMenu)
|
|
220
|
-
}, React__default.createElement("
|
|
298
|
+
}, isTopLevel && isParentWithChildren && isHovered && !isActive && React__default.createElement("span", {
|
|
299
|
+
className: "absolute left-0 top-1.5 bottom-1.5 w-0.5 rounded-full ql-hover-accent"
|
|
300
|
+
}), React__default.createElement(RowElement, {
|
|
301
|
+
...(leafTargetPath ? {
|
|
302
|
+
to: leafTargetPath,
|
|
303
|
+
prefetch: 'intent',
|
|
304
|
+
onClick: stopRowPropagation
|
|
305
|
+
} : {
|
|
306
|
+
onClick: handleMenuClick
|
|
307
|
+
}),
|
|
221
308
|
className: `flex items-center justify-between w-full px-1 py-2 hover:bg-muted text-sm cursor-pointer transition-colors rounded-themed mx-1 my-0.5 whitespace-nowrap overflow-hidden text-ellipsis ${shouldApplyBackground ? 'bg-muted' : ''}`,
|
|
222
309
|
style: {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
310
|
+
// depth 0 sits at 1rem; nested rows indent via their guide-line wrappers,
|
|
311
|
+
// so they only need a small gap off the line.
|
|
312
|
+
paddingLeft: depth === 0 ? '1rem' : '0.5rem'
|
|
313
|
+
}
|
|
226
314
|
}, React__default.createElement("div", {
|
|
227
315
|
className: `flex items-center ${collapsed && !isHoverMenu ? 'justify-center w-full' : 'gap-3'}`
|
|
228
316
|
}, item.icon ? React__default.createElement("span", {
|
|
229
|
-
className: `flex-shrink-0 ${getIconColor(isActive, navTheme)}`
|
|
317
|
+
className: `flex-shrink-0 ${getIconColor(isActive, navTheme)} ${isTopLevel && collapsed ? `ql-rail-icon ${isActive ? 'ql-rail-icon-active' : ''}` : ''}`
|
|
230
318
|
}, item.icon) : collapsed && !isHoverMenu ? React__default.createElement("span", {
|
|
231
|
-
className: `flex items-center justify-center flex-shrink-0 ${getIconColor(isActive, navTheme)}`
|
|
319
|
+
className: `flex items-center justify-center flex-shrink-0 ${getIconColor(isActive, navTheme)} ${isTopLevel ? `text-base h-6 w-6 select-none text-center ql-rail-icon ${isActive ? 'ql-rail-icon-active' : ''}` : ''}`
|
|
232
320
|
}, getFirstLetter(item.name)) : null, (!collapsed || isHoverMenu) && React__default.createElement("span", {
|
|
233
321
|
className: `font-medium whitespace-nowrap overflow-hidden text-ellipsis ${getTextColor(isActive, navTheme)} ${depth > 0 ? `text-xs` : ''}`
|
|
234
322
|
}, item.name)), hasChildren && (!collapsed || isHoverMenu) && React__default.createElement("span", {
|
|
235
323
|
className: `flex-shrink-0 ml-1 ${getIconColor(isActive, navTheme)}`
|
|
236
|
-
},
|
|
237
|
-
className:
|
|
238
|
-
})
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
324
|
+
}, React__default.createElement(ChevronDownIcon, {
|
|
325
|
+
className: `h-4 w-4 transition-transform duration-300 ease-out motion-reduce:transition-none ${isOpen ? 'rotate-180' : ''}`
|
|
326
|
+
}))), collapsed && hasChildren && isHovered && !isHoverMenu && item.children.length > 0 && renderPopupMenu(), hasChildren && !collapsed && React__default.createElement("div", {
|
|
327
|
+
"aria-hidden": !isOpen,
|
|
328
|
+
className: `grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none ${isOpen ? 'grid-rows-[1fr]' : 'grid-rows-[0fr]'}`
|
|
329
|
+
}, React__default.createElement("div", {
|
|
330
|
+
className: "overflow-hidden"
|
|
331
|
+
}, React__default.createElement("div", {
|
|
332
|
+
className: "ml-5 border-l border-border"
|
|
242
333
|
}, item.children.map(child => React__default.createElement(MenuItem, {
|
|
243
334
|
key: child.path,
|
|
244
335
|
item: child,
|
|
@@ -255,9 +346,10 @@ const MenuItem = React__default.memo(({
|
|
|
255
346
|
onMenuHover: onMenuHover,
|
|
256
347
|
onMenuLeave: onMenuLeave,
|
|
257
348
|
onNavigate: onNavigate,
|
|
349
|
+
registerItemRef: registerItemRef,
|
|
258
350
|
ChevronUpIcon: ChevronUpIcon,
|
|
259
351
|
ChevronDownIcon: ChevronDownIcon
|
|
260
|
-
}))));
|
|
352
|
+
}))))));
|
|
261
353
|
}, areMenuItemPropsEqual);
|
|
262
354
|
MenuItem.displayName = 'MenuItem';
|
|
263
355
|
// Helper func
|
|
@@ -290,11 +382,79 @@ function MainSidebarMenuComponent({
|
|
|
290
382
|
top: 0,
|
|
291
383
|
height: 0
|
|
292
384
|
});
|
|
385
|
+
const navRef = useRef(null);
|
|
386
|
+
const itemRefs = useRef({});
|
|
387
|
+
const [indicator, setIndicator] = useState({
|
|
388
|
+
y: 0,
|
|
389
|
+
h: 0,
|
|
390
|
+
visible: false
|
|
391
|
+
});
|
|
392
|
+
const indicatorPrimed = useRef(false);
|
|
393
|
+
const [indicatorAnimated, setIndicatorAnimated] = useState(false);
|
|
293
394
|
const {
|
|
294
395
|
ChevronDownIcon,
|
|
295
396
|
ChevronUpIcon
|
|
296
397
|
} = icons;
|
|
297
398
|
const navTheme = settings?.navTheme;
|
|
399
|
+
const registerItemRef = useCallback((path, el) => {
|
|
400
|
+
itemRefs.current[path] = el;
|
|
401
|
+
}, []);
|
|
402
|
+
// Tear down hover popup state on route change — mouse-leave never fires after in-popup navigation.
|
|
403
|
+
useEffect(() => {
|
|
404
|
+
setHoveredMenu(null);
|
|
405
|
+
}, [location.pathname]);
|
|
406
|
+
const isMenuItemActiveAtRoot = useCallback(itemPath => isMenuItemActive(itemPath, location.pathname, routeParams), [location.pathname, routeParams]);
|
|
407
|
+
const measureIndicator = useCallback(() => {
|
|
408
|
+
if (typeof window === 'undefined') return false;
|
|
409
|
+
const nav = navRef.current;
|
|
410
|
+
if (!nav) return false;
|
|
411
|
+
const activeItem = menuData.find(item => isMenuItemActiveAtRoot(item.path));
|
|
412
|
+
const el = activeItem ? itemRefs.current[activeItem.path] : null;
|
|
413
|
+
if (el) {
|
|
414
|
+
setIndicator({
|
|
415
|
+
y: el.offsetTop,
|
|
416
|
+
h: el.offsetHeight,
|
|
417
|
+
visible: true
|
|
418
|
+
});
|
|
419
|
+
return true;
|
|
420
|
+
}
|
|
421
|
+
setIndicator(prev => ({
|
|
422
|
+
...prev,
|
|
423
|
+
visible: false
|
|
424
|
+
}));
|
|
425
|
+
return !activeItem;
|
|
426
|
+
}, [menuData, isMenuItemActiveAtRoot]);
|
|
427
|
+
const measureRef = useRef(measureIndicator);
|
|
428
|
+
measureRef.current = measureIndicator;
|
|
429
|
+
useEffect(() => {
|
|
430
|
+
if (typeof window === 'undefined') return;
|
|
431
|
+
const nav = navRef.current;
|
|
432
|
+
if (!nav) return;
|
|
433
|
+
const run = () => measureRef.current();
|
|
434
|
+
const ro = typeof ResizeObserver !== 'undefined' ? new ResizeObserver(run) : null;
|
|
435
|
+
ro?.observe(nav);
|
|
436
|
+
window.addEventListener('resize', run);
|
|
437
|
+
return () => {
|
|
438
|
+
ro?.disconnect();
|
|
439
|
+
window.removeEventListener('resize', run);
|
|
440
|
+
};
|
|
441
|
+
}, []);
|
|
442
|
+
useEffect(() => {
|
|
443
|
+
if (typeof window === 'undefined') return;
|
|
444
|
+
const rafs = [];
|
|
445
|
+
if (!measureRef.current()) {
|
|
446
|
+
rafs.push(requestAnimationFrame(() => {
|
|
447
|
+
if (!measureRef.current()) rafs.push(requestAnimationFrame(() => measureRef.current()));
|
|
448
|
+
}));
|
|
449
|
+
}
|
|
450
|
+
if (!indicatorPrimed.current) {
|
|
451
|
+
indicatorPrimed.current = true;
|
|
452
|
+
rafs.push(requestAnimationFrame(() => setIndicatorAnimated(true)));
|
|
453
|
+
} else {
|
|
454
|
+
setIndicatorAnimated(true);
|
|
455
|
+
}
|
|
456
|
+
return () => rafs.forEach(r => cancelAnimationFrame(r));
|
|
457
|
+
}, [location.pathname, menuData, routeParams, collapsed]);
|
|
298
458
|
// Initialize openMenus based on the current path
|
|
299
459
|
const [openMenus, setOpenMenus] = useState(() => {
|
|
300
460
|
return findParentPaths(menuData, location.pathname, routeParams);
|
|
@@ -429,9 +589,25 @@ function MainSidebarMenuComponent({
|
|
|
429
589
|
}, [navigate]);
|
|
430
590
|
return React__default.createElement("div", {
|
|
431
591
|
className: "overflow-hidden"
|
|
432
|
-
}, React__default.createElement("
|
|
592
|
+
}, React__default.createElement("style", {
|
|
593
|
+
dangerouslySetInnerHTML: {
|
|
594
|
+
__html: SIDEBAR_MOTION_CSS
|
|
595
|
+
}
|
|
596
|
+
}), React__default.createElement("nav", {
|
|
597
|
+
ref: navRef,
|
|
598
|
+
style: {
|
|
599
|
+
position: 'relative'
|
|
600
|
+
},
|
|
433
601
|
className: `mt-2 ${collapsed ? 'px-1' : 'px-2'} overflow-x-hidden`
|
|
434
|
-
},
|
|
602
|
+
}, React__default.createElement("span", {
|
|
603
|
+
"aria-hidden": "true",
|
|
604
|
+
className: `ql-rail-indicator ${indicatorAnimated ? 'ql-rail-indicator--animated' : ''}`,
|
|
605
|
+
style: {
|
|
606
|
+
transform: `translateY(${indicator.y + 6}px)`,
|
|
607
|
+
height: `${Math.max(indicator.h - 12, 0)}px`,
|
|
608
|
+
opacity: indicator.visible ? 1 : 0
|
|
609
|
+
}
|
|
610
|
+
}), menuData.map(item => React__default.createElement(MenuItem, {
|
|
435
611
|
key: item.path,
|
|
436
612
|
item: item,
|
|
437
613
|
depth: 0,
|
|
@@ -447,6 +623,7 @@ function MainSidebarMenuComponent({
|
|
|
447
623
|
onMenuHover: handleMenuHover,
|
|
448
624
|
onMenuLeave: handleMenuLeave,
|
|
449
625
|
onNavigate: handleNavigate,
|
|
626
|
+
registerItemRef: registerItemRef,
|
|
450
627
|
ChevronUpIcon: ChevronUpIcon,
|
|
451
628
|
ChevronDownIcon: ChevronDownIcon
|
|
452
629
|
}))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainSidebarMenu.js","sources":["../../../../src/components/Layout/Sidebar/MainSidebarMenu.tsx"],"sourcesContent":[null],"names":["React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MainSidebarMenu.js","sources":["../../../../src/components/Layout/Sidebar/MainSidebarMenu.tsx"],"sourcesContent":[null],"names":["React"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Loads a menu modal via switchDialogs(path) and mounts it on document.body.
|
|
4
|
+
* Fixes clipped “strip” modals: position:fixed inside sidebar/layout (transform,
|
|
5
|
+
* overflow, inline-block shells) uses the wrong containing block unless the tree
|
|
6
|
+
* is attached under body.
|
|
7
|
+
*/
|
|
8
|
+
export declare const MenuDynamicDialog: React.FC<{
|
|
9
|
+
dialogPath: string;
|
|
10
|
+
onClose: () => void;
|
|
11
|
+
}>;
|
|
12
|
+
//# sourceMappingURL=MenuDynamicDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuDynamicDialog.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar/MenuDynamicDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAc3D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAoCnF,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import React__default,{useState,useEffect,useRef}from'react';import {createPortal}from'react-dom';import switchDialogs from'@app/dialog/WrappedDialogsSwitch';/** Logout ships a full-screen `fixed` root; neutralize it when embedded so it cannot nest inside another transformed modal shell (fixed then resolves to a tiny box → horizontal “strip”). */
|
|
2
|
+
function shouldNeutralizeOuterFixedOverlay(path) {
|
|
3
|
+
const p = path.replace(/\\/g, '/');
|
|
4
|
+
return p.includes('/Logout/') && /\/Logout\/index\.js$/i.test(p);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Loads a menu modal via switchDialogs(path) and mounts it on document.body.
|
|
8
|
+
* Fixes clipped “strip” modals: position:fixed inside sidebar/layout (transform,
|
|
9
|
+
* overflow, inline-block shells) uses the wrong containing block unless the tree
|
|
10
|
+
* is attached under body.
|
|
11
|
+
*/
|
|
12
|
+
const MenuDynamicDialog = ({
|
|
13
|
+
dialogPath,
|
|
14
|
+
onClose
|
|
15
|
+
}) => {
|
|
16
|
+
const [mod, setMod] = useState(null);
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
let cancelled = false;
|
|
19
|
+
setMod(null);
|
|
20
|
+
switchDialogs(dialogPath).then(loaded => {
|
|
21
|
+
if (!cancelled) setMod(loaded);
|
|
22
|
+
});
|
|
23
|
+
return () => {
|
|
24
|
+
cancelled = true;
|
|
25
|
+
};
|
|
26
|
+
}, [dialogPath]);
|
|
27
|
+
if (typeof document === 'undefined') {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
if (!mod) {
|
|
31
|
+
return createPortal(React__default.createElement("div", {
|
|
32
|
+
className: "fixed inset-0 z-[120] flex items-center justify-center bg-black/30"
|
|
33
|
+
}, React__default.createElement("span", {
|
|
34
|
+
className: "rounded-themed-lg bg-card px-4 py-3 text-sm text-muted-foreground shadow-themed-md"
|
|
35
|
+
}, "Loading...")), document.body);
|
|
36
|
+
}
|
|
37
|
+
const Inner = mod.default;
|
|
38
|
+
if (!shouldNeutralizeOuterFixedOverlay(dialogPath)) {
|
|
39
|
+
return createPortal(React__default.createElement(Inner, {
|
|
40
|
+
onClose: onClose
|
|
41
|
+
}), document.body);
|
|
42
|
+
}
|
|
43
|
+
return createPortal(React__default.createElement(LogoutFixedNeutralizedShell, {
|
|
44
|
+
Inner: Inner,
|
|
45
|
+
onClose: onClose
|
|
46
|
+
}), document.body);
|
|
47
|
+
};
|
|
48
|
+
/** Logout returns null after cancel; keep menu `openedModalKey` in sync by closing when its DOM unmounts. */
|
|
49
|
+
function LogoutFixedNeutralizedShell({
|
|
50
|
+
Inner,
|
|
51
|
+
onClose
|
|
52
|
+
}) {
|
|
53
|
+
const innerHostRef = useRef(null);
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
const el = innerHostRef.current;
|
|
56
|
+
if (!el) return;
|
|
57
|
+
const syncIfEmpty = () => {
|
|
58
|
+
if (el.childElementCount === 0) {
|
|
59
|
+
onClose();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
const mo = new MutationObserver(syncIfEmpty);
|
|
63
|
+
mo.observe(el, {
|
|
64
|
+
childList: true
|
|
65
|
+
});
|
|
66
|
+
return () => mo.disconnect();
|
|
67
|
+
}, [onClose]);
|
|
68
|
+
return React__default.createElement("div", {
|
|
69
|
+
className: "fixed inset-0 z-[120] flex items-center justify-center bg-black/50 p-4",
|
|
70
|
+
role: "presentation",
|
|
71
|
+
onClick: () => onClose()
|
|
72
|
+
}, React__default.createElement("div", {
|
|
73
|
+
ref: innerHostRef,
|
|
74
|
+
className: "w-full max-w-md [&>*]:!relative [&>*]:!inset-auto [&>*]:!min-h-0 [&>*]:!w-full [&>*]:!max-w-full [&>*]:!bg-transparent [&>*]:flex [&>*]:items-center [&>*]:justify-center",
|
|
75
|
+
onClick: e => e.stopPropagation()
|
|
76
|
+
}, React__default.createElement(Inner, {
|
|
77
|
+
onClose: onClose
|
|
78
|
+
})));
|
|
79
|
+
}export{MenuDynamicDialog};//# sourceMappingURL=MenuDynamicDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuDynamicDialog.js","sources":["../../../../src/components/Layout/Sidebar/MenuDynamicDialog.tsx"],"sourcesContent":[null],"names":["React"],"mappings":"8JAQA;AACA,SAAS,iCAAiC,CAAC,IAAY,EAAA;QACnD,CAAA,GAAO,IAAG,CAAA,OAAK,CAAA,KAAQ,EAAK,GAAE,CAAA;AAC9B,EAAA,OAAA,CAAA,CAAO,QAAE,CAAA,UAAS,CAAA,IAAW,uBAAI,CAAA,IAAwB,CAAA,CAAI,CAAC;AAClE;AAEA;;;;;AAKG;AACI,MAAM,iBAAiB,GAA0D,CAAC;YAC9E;;;QAIH,CAAA,GAAA,EAAM,MAAM,CAAC,GAAA,QAAA,CAAA,IAAA,CAAA;WACb,CAAA,MAAA;AACI,IAAA,IAAA,SAAK,GAAA,KAAA;gBAAW;AACpB,IAAA,aAAG,CAAA,UAAA,CAAA,CAAA,IAAA,CAAA,MAAA,IAAA;AACH,MAAA,IAAA,CAAA,SAAY,EAAA,MAAA,CAAA,MAAA,CAAA;;AAEZ,IAAA,OAAE,MAAA;AACN,MAAC,SAAG,GAAU,IAAG;AAEjB,IAAA,CAAA;AACI,EAAA,CAAA,EAAA,CAAA;MACH,OAAA,QAAA,KAAA,WAAA,EAAA;IAED,OAAK,IAAM;AACP,EAAA;YAEQ;IAMZ,OAAC,YAAA,CAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAED,MAAA,SAAW,EAAA;AAEX,KAAA,EAAAA,cAAK,CAAA,aAAA,CAAA,MAAA,EAAA;AACD,MAAA,SAAO,EAAA;KACV,EAAA,YAAA,CAAA,CAAA,EAAA,QAAA,CAAA,IAAA,CAAA;AAED,EAAA;AACJ,EAAE,MAAA,KAAA,GAAA,GAAA,CAAA,OAAA;AAEF,EAAA,IAAA,CAAA,iCAAA,CAAA,UAAA,CAAA,EAAA;AACA,IAAA,gDAAuC,CAAK;AACxC,MAAA;KAEA,CAAA,EAAA,SAAa,IAAE,CAAA;AACX,EAAA;AACA,EAAA,OAAA,YAAO,CAAAA,cAAA,CAAA,aAAA,CAAA,2BAAA,EAAA;gBAAE;WACT,EAAA;AACI,GAAA,CAAA,EAAA,QAAA,CAAA,IAAO,CAAA;AACH;;AAER,SAAC,2BAAC,CAAA;AACF,EAAA,KAAA;;AAEA,CAAA,EAAA;AACJ,EAAA,MAAI,YAAU,GAAA,MAAA,CAAA,IAAA,CAAA;AAEd,EAAA,SAAO,CACH,MAAA;AAKI,IAAA,MAAA,EAAA,GAAA,YAAA,CAAA,OAAA;aAKI;AAIhB,IAAC,MAAA,WAAA,GAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerplexSidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar/PerplexSidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PerplexSidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar/PerplexSidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAS7C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA0UjD,CAAC"}
|