framepexls-ui-lib 2.1.0 → 2.2.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.
- package/dist/AnalyticsCharts.d.mts +4 -4
- package/dist/AnalyticsCharts.d.ts +4 -4
- package/dist/AppTopbar.d.mts +1 -2
- package/dist/AppTopbar.d.ts +1 -2
- package/dist/AssetPerformanceCard.d.mts +50 -0
- package/dist/AssetPerformanceCard.d.ts +50 -0
- package/dist/AssetPerformanceCard.js +342 -0
- package/dist/AssetPerformanceCard.mjs +319 -0
- package/dist/AssetTickerRow.d.mts +26 -0
- package/dist/AssetTickerRow.d.ts +26 -0
- package/dist/AssetTickerRow.js +255 -0
- package/dist/AssetTickerRow.mjs +225 -0
- package/dist/AuthTopbar.d.mts +2 -2
- package/dist/AuthTopbar.d.ts +2 -2
- package/dist/AuthTopbar.js +2 -1
- package/dist/AuthTopbar.mjs +2 -1
- package/dist/AvatarGroup.d.mts +2 -2
- package/dist/AvatarGroup.d.ts +2 -2
- package/dist/AvatarSquare.d.mts +2 -2
- package/dist/AvatarSquare.d.ts +2 -2
- package/dist/AvatarSquare.js +29 -27
- package/dist/AvatarSquare.mjs +29 -27
- package/dist/Badge.d.mts +1 -2
- package/dist/Badge.d.ts +1 -2
- package/dist/BadgeCluster.d.mts +2 -3
- package/dist/BadgeCluster.d.ts +2 -3
- package/dist/Breadcrumb.d.mts +1 -2
- package/dist/Breadcrumb.d.ts +1 -2
- package/dist/CalendarPanel.d.mts +2 -2
- package/dist/CalendarPanel.d.ts +2 -2
- package/dist/Carousel.d.mts +1 -2
- package/dist/Carousel.d.ts +1 -2
- package/dist/ChangeHistory.d.mts +1 -2
- package/dist/ChangeHistory.d.ts +1 -2
- package/dist/ChartCard.d.mts +1 -2
- package/dist/ChartCard.d.ts +1 -2
- package/dist/ChatCenter.d.mts +2 -2
- package/dist/ChatCenter.d.ts +2 -2
- package/dist/ChatbotCenter.d.mts +1 -2
- package/dist/ChatbotCenter.d.ts +1 -2
- package/dist/CheckboxPillsGroup.d.mts +1 -2
- package/dist/CheckboxPillsGroup.d.ts +1 -2
- package/dist/ColorPicker.d.mts +2 -2
- package/dist/ColorPicker.d.ts +2 -2
- package/dist/ColumnSelector.d.mts +1 -2
- package/dist/ColumnSelector.d.ts +1 -2
- package/dist/ComboSelect.d.mts +1 -2
- package/dist/ComboSelect.d.ts +1 -2
- package/dist/DataPageLayout.d.mts +64 -0
- package/dist/DataPageLayout.d.ts +64 -0
- package/dist/DataPageLayout.js +191 -0
- package/dist/DataPageLayout.mjs +157 -0
- package/dist/DataTable.d.mts +1 -2
- package/dist/DataTable.d.ts +1 -2
- package/dist/DataTableCard.d.mts +1 -2
- package/dist/DataTableCard.d.ts +1 -2
- package/dist/DataTableCardFooter.d.mts +2 -2
- package/dist/DataTableCardFooter.d.ts +2 -2
- package/dist/DateTimeField.d.mts +1 -2
- package/dist/DateTimeField.d.ts +1 -2
- package/dist/Dialog.d.mts +6 -7
- package/dist/Dialog.d.ts +6 -7
- package/dist/DocumentEditor.d.mts +3 -3
- package/dist/DocumentEditor.d.ts +3 -3
- package/dist/Drawer.d.mts +4 -5
- package/dist/Drawer.d.ts +4 -5
- package/dist/Dropdown.d.mts +7 -8
- package/dist/Dropdown.d.ts +7 -8
- package/dist/EmptyState.d.mts +1 -2
- package/dist/EmptyState.d.ts +1 -2
- package/dist/FiltersMultiSelect.d.mts +1 -2
- package/dist/FiltersMultiSelect.d.ts +1 -2
- package/dist/HeliipLoader.d.mts +2 -2
- package/dist/HeliipLoader.d.ts +2 -2
- package/dist/ImpersonationDialog.d.mts +2 -2
- package/dist/ImpersonationDialog.d.ts +2 -2
- package/dist/ImpersonationSwitcher.d.mts +2 -2
- package/dist/ImpersonationSwitcher.d.ts +2 -2
- package/dist/InfoGrid.d.mts +1 -2
- package/dist/InfoGrid.d.ts +1 -2
- package/dist/KnowledgeBase.d.mts +1 -2
- package/dist/KnowledgeBase.d.ts +1 -2
- package/dist/KpiCard.d.mts +2 -3
- package/dist/KpiCard.d.ts +2 -3
- package/dist/LanguageSwitcher.d.mts +2 -2
- package/dist/LanguageSwitcher.d.ts +2 -2
- package/dist/LicenseStatus.d.mts +1 -2
- package/dist/LicenseStatus.d.ts +1 -2
- package/dist/Link.d.mts +1 -2
- package/dist/Link.d.ts +1 -2
- package/dist/Login.d.mts +1 -2
- package/dist/Login.d.ts +1 -2
- package/dist/LoginCarousel.d.mts +2 -3
- package/dist/LoginCarousel.d.ts +2 -3
- package/dist/LoginGallery.d.mts +2 -3
- package/dist/LoginGallery.d.ts +2 -3
- package/dist/LoginTools.d.mts +1 -2
- package/dist/LoginTools.d.ts +1 -2
- package/dist/Map.d.mts +4 -5
- package/dist/Map.d.ts +4 -5
- package/dist/MarkdownEditor.d.mts +2 -2
- package/dist/MarkdownEditor.d.ts +2 -2
- package/dist/MediaCard.d.mts +2 -2
- package/dist/MediaCard.d.ts +2 -2
- package/dist/MediaLibraryLayout.d.mts +89 -0
- package/dist/MediaLibraryLayout.d.ts +89 -0
- package/dist/MediaLibraryLayout.js +369 -0
- package/dist/MediaLibraryLayout.mjs +348 -0
- package/dist/MediaSelector.d.mts +2 -2
- package/dist/MediaSelector.d.ts +2 -2
- package/dist/MediaTile.d.mts +2 -2
- package/dist/MediaTile.d.ts +2 -2
- package/dist/Money.d.mts +2 -2
- package/dist/Money.d.ts +2 -2
- package/dist/MotionProvider.d.mts +1 -2
- package/dist/MotionProvider.d.ts +1 -2
- package/dist/MultiComboSelect.d.mts +2 -3
- package/dist/MultiComboSelect.d.ts +2 -3
- package/dist/NotificationsCenter.d.mts +1 -2
- package/dist/NotificationsCenter.d.ts +1 -2
- package/dist/Numeric.d.mts +2 -2
- package/dist/Numeric.d.ts +2 -2
- package/dist/OmniSearch.d.mts +2 -3
- package/dist/OmniSearch.d.ts +2 -3
- package/dist/OrderButton.d.mts +2 -2
- package/dist/OrderButton.d.ts +2 -2
- package/dist/PageScaffold.d.mts +1 -2
- package/dist/PageScaffold.d.ts +1 -2
- package/dist/PageScaffold.js +1 -1
- package/dist/PageScaffold.mjs +1 -1
- package/dist/PageTransition.d.mts +1 -2
- package/dist/PageTransition.d.ts +1 -2
- package/dist/PageTransition.js +33 -27
- package/dist/PageTransition.mjs +33 -27
- package/dist/Pagination.d.mts +2 -2
- package/dist/Pagination.d.ts +2 -2
- package/dist/PasswordField.d.mts +1 -2
- package/dist/PasswordField.d.ts +1 -2
- package/dist/ProductCatalog.d.mts +2 -3
- package/dist/ProductCatalog.d.ts +2 -3
- package/dist/PromotionsCatalog.d.mts +2 -3
- package/dist/PromotionsCatalog.d.ts +2 -3
- package/dist/QrCode.d.mts +2 -2
- package/dist/QrCode.d.ts +2 -2
- package/dist/QuoteEditor.d.mts +2 -2
- package/dist/QuoteEditor.d.ts +2 -2
- package/dist/RechartsBarCard.d.mts +1 -2
- package/dist/RechartsBarCard.d.ts +1 -2
- package/dist/RechartsDonutCard.d.mts +1 -2
- package/dist/RechartsDonutCard.d.ts +1 -2
- package/dist/RechartsTimeSeriesCard.d.mts +1 -2
- package/dist/RechartsTimeSeriesCard.d.ts +1 -2
- package/dist/ReviewHistory.d.mts +3 -3
- package/dist/ReviewHistory.d.ts +3 -3
- package/dist/Reviews.d.mts +1 -2
- package/dist/Reviews.d.ts +1 -2
- package/dist/SearchInput.d.mts +2 -2
- package/dist/SearchInput.d.ts +2 -2
- package/dist/SegmentedTabs.d.mts +1 -2
- package/dist/SegmentedTabs.d.ts +1 -2
- package/dist/Select.d.mts +2 -2
- package/dist/Select.d.ts +2 -2
- package/dist/ShareAccess.d.mts +1 -2
- package/dist/ShareAccess.d.ts +1 -2
- package/dist/Sidebar.d.mts +1 -2
- package/dist/Sidebar.d.ts +1 -2
- package/dist/Sidebar.js +492 -335
- package/dist/Sidebar.mjs +492 -335
- package/dist/StatCard.d.mts +1 -2
- package/dist/StatCard.d.ts +1 -2
- package/dist/Steps.d.mts +3 -3
- package/dist/Steps.d.ts +3 -3
- package/dist/StorageUsage.d.mts +1 -2
- package/dist/StorageUsage.d.ts +1 -2
- package/dist/Table.d.mts +4 -5
- package/dist/Table.d.ts +4 -5
- package/dist/TableRecordButton.d.mts +1 -2
- package/dist/TableRecordButton.d.ts +1 -2
- package/dist/TimeAgo.d.mts +2 -2
- package/dist/TimeAgo.d.ts +2 -2
- package/dist/TimePanel.d.mts +1 -2
- package/dist/TimePanel.d.ts +1 -2
- package/dist/TimeRangeField.d.mts +2 -2
- package/dist/TimeRangeField.d.ts +2 -2
- package/dist/Toast.d.mts +1 -2
- package/dist/Toast.d.ts +1 -2
- package/dist/Tooltip.d.mts +1 -2
- package/dist/Tooltip.d.ts +1 -2
- package/dist/UploadCard.d.mts +1 -2
- package/dist/UploadCard.d.ts +1 -2
- package/dist/WordEditor.d.mts +3 -3
- package/dist/WordEditor.d.ts +3 -3
- package/dist/WorkflowDiagram.d.mts +1 -2
- package/dist/WorkflowDiagram.d.ts +1 -2
- package/dist/{animations-CHrNeawW.d.mts → animations-Di5tQRLw.d.mts} +2 -2
- package/dist/{animations-CHrNeawW.d.ts → animations-Di5tQRLw.d.ts} +2 -2
- package/dist/animations.d.mts +1 -1
- package/dist/animations.d.ts +1 -1
- package/dist/charts.d.mts +2 -1
- package/dist/charts.d.ts +2 -1
- package/dist/charts.js +6 -0
- package/dist/charts.mjs +6 -2
- package/dist/i18n.d.mts +1 -2
- package/dist/i18n.d.ts +1 -2
- package/dist/iconos/WorkflowEdgesSvg.d.mts +1 -2
- package/dist/iconos/WorkflowEdgesSvg.d.ts +1 -2
- package/dist/iconos/index.d.mts +1546 -1547
- package/dist/iconos/index.d.ts +1546 -1547
- package/dist/iconos/regular-icons.js +2 -2
- package/dist/iconos/regular-icons.mjs +2 -2
- package/dist/index.d.mts +9 -4
- package/dist/index.d.ts +9 -4
- package/dist/index.js +24 -0
- package/dist/index.mjs +163 -148
- package/dist/internal/AutoSize.d.mts +1 -2
- package/dist/internal/AutoSize.d.ts +1 -2
- package/dist/map.css +1 -1
- package/dist/theme/FontSizeController.d.mts +2 -2
- package/dist/theme/FontSizeController.d.ts +2 -2
- package/dist/theme/FontSizeController.js +1 -1
- package/dist/theme/FontSizeController.mjs +1 -1
- package/dist/theme/ThemeController.d.mts +2 -3
- package/dist/theme/ThemeController.d.ts +2 -3
- package/dist/theme/ThemeProvider.d.mts +1 -2
- package/dist/theme/ThemeProvider.d.ts +1 -2
- package/dist/theme/ThemeScript.d.mts +2 -2
- package/dist/theme/ThemeScript.d.ts +2 -2
- package/dist/theme/ThemeToggle.d.mts +2 -2
- package/dist/theme/ThemeToggle.d.ts +2 -2
- package/dist/theme/ThemeToggle.js +4 -4
- package/dist/theme/ThemeToggle.mjs +4 -4
- package/package.json +7 -8
package/dist/Sidebar.js
CHANGED
|
@@ -65,7 +65,10 @@ function groupItems(items) {
|
|
|
65
65
|
return Array.from(byGroup.entries());
|
|
66
66
|
}
|
|
67
67
|
function GroupHeader({ title }) {
|
|
68
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.
|
|
68
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mb-3 flex items-center gap-3 px-2 select-none", children: [
|
|
69
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-[0.6875rem] font-semibold uppercase tracking-[0.18em] text-[var(--muted)] text-left", children: title }),
|
|
70
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px flex-1 bg-[linear-gradient(90deg,color-mix(in_oklab,var(--border)_72%,transparent),transparent)]" })
|
|
71
|
+
] });
|
|
69
72
|
}
|
|
70
73
|
function safeParseSidebarNavLayout(raw) {
|
|
71
74
|
if (!raw) return null;
|
|
@@ -169,54 +172,29 @@ function pickWorkspaceId(workspaces, preferred) {
|
|
|
169
172
|
return (primary != null ? primary : list[0]).id;
|
|
170
173
|
}
|
|
171
174
|
const WRAP_ACTIVE = {
|
|
172
|
-
accent: "bg-
|
|
173
|
-
slate: "bg-
|
|
174
|
-
gray: "bg-
|
|
175
|
-
zinc: "bg-
|
|
176
|
-
neutral: "bg-
|
|
177
|
-
stone: "bg-
|
|
178
|
-
red: "bg-
|
|
179
|
-
orange: "bg-
|
|
180
|
-
amber: "bg-
|
|
181
|
-
yellow: "bg-
|
|
182
|
-
lime: "bg-
|
|
183
|
-
green: "bg-
|
|
184
|
-
emerald: "bg-
|
|
185
|
-
teal: "bg-
|
|
186
|
-
cyan: "bg-
|
|
187
|
-
sky: "bg-
|
|
188
|
-
blue: "bg-
|
|
189
|
-
indigo: "bg-
|
|
190
|
-
violet: "bg-
|
|
191
|
-
purple: "bg-
|
|
192
|
-
fuchsia: "bg-
|
|
193
|
-
pink: "bg-
|
|
194
|
-
rose: "bg-
|
|
195
|
-
};
|
|
196
|
-
const ICON_BORDER_ACTIVE = {
|
|
197
|
-
accent: "border-[color-mix(in_oklab,var(--ring)_32%,transparent)] dark:border-[color-mix(in_oklab,var(--ring)_26%,transparent)]",
|
|
198
|
-
slate: "border-slate-300/60 dark:border-slate-700/40",
|
|
199
|
-
gray: "border-gray-300/60 dark:border-gray-700/40",
|
|
200
|
-
zinc: "border-zinc-300/60 dark:border-zinc-700/40",
|
|
201
|
-
neutral: "border-neutral-300/60 dark:border-neutral-700/40",
|
|
202
|
-
stone: "border-stone-300/60 dark:border-stone-700/40",
|
|
203
|
-
red: "border-red-300/60 dark:border-red-700/40",
|
|
204
|
-
orange: "border-orange-300/60 dark:border-orange-700/40",
|
|
205
|
-
amber: "border-amber-300/60 dark:border-amber-700/40",
|
|
206
|
-
yellow: "border-yellow-300/60 dark:border-yellow-700/40",
|
|
207
|
-
lime: "border-lime-300/60 dark:border-lime-700/40",
|
|
208
|
-
green: "border-green-300/60 dark:border-green-700/40",
|
|
209
|
-
emerald: "border-emerald-300/60 dark:border-emerald-700/40",
|
|
210
|
-
teal: "border-teal-300/60 dark:border-teal-700/40",
|
|
211
|
-
cyan: "border-cyan-300/60 dark:border-cyan-700/40",
|
|
212
|
-
sky: "border-sky-300/60 dark:border-sky-700/40",
|
|
213
|
-
blue: "border-blue-300/60 dark:border-blue-700/40",
|
|
214
|
-
indigo: "border-indigo-300/60 dark:border-indigo-700/40",
|
|
215
|
-
violet: "border-violet-300/60 dark:border-violet-700/40",
|
|
216
|
-
purple: "border-purple-300/60 dark:border-purple-700/40",
|
|
217
|
-
fuchsia: "border-fuchsia-300/60 dark:border-fuchsia-700/40",
|
|
218
|
-
pink: "border-pink-300/60 dark:border-pink-700/40",
|
|
219
|
-
rose: "border-rose-300/60 dark:border-rose-700/40"
|
|
175
|
+
accent: "bg-transparent ring-0",
|
|
176
|
+
slate: "bg-transparent ring-0",
|
|
177
|
+
gray: "bg-transparent ring-0",
|
|
178
|
+
zinc: "bg-transparent ring-0",
|
|
179
|
+
neutral: "bg-transparent ring-0",
|
|
180
|
+
stone: "bg-transparent ring-0",
|
|
181
|
+
red: "bg-transparent ring-0",
|
|
182
|
+
orange: "bg-transparent ring-0",
|
|
183
|
+
amber: "bg-transparent ring-0",
|
|
184
|
+
yellow: "bg-transparent ring-0",
|
|
185
|
+
lime: "bg-transparent ring-0",
|
|
186
|
+
green: "bg-transparent ring-0",
|
|
187
|
+
emerald: "bg-transparent ring-0",
|
|
188
|
+
teal: "bg-transparent ring-0",
|
|
189
|
+
cyan: "bg-transparent ring-0",
|
|
190
|
+
sky: "bg-transparent ring-0",
|
|
191
|
+
blue: "bg-transparent ring-0",
|
|
192
|
+
indigo: "bg-transparent ring-0",
|
|
193
|
+
violet: "bg-transparent ring-0",
|
|
194
|
+
purple: "bg-transparent ring-0",
|
|
195
|
+
fuchsia: "bg-transparent ring-0",
|
|
196
|
+
pink: "bg-transparent ring-0",
|
|
197
|
+
rose: "bg-transparent ring-0"
|
|
220
198
|
};
|
|
221
199
|
const TOGGLE_BORDER_ACTIVE = {
|
|
222
200
|
accent: "border-[color-mix(in_oklab,var(--ring)_28%,transparent)] dark:border-[color-mix(in_oklab,var(--ring)_22%,transparent)]",
|
|
@@ -244,30 +222,41 @@ const TOGGLE_BORDER_ACTIVE = {
|
|
|
244
222
|
rose: "border-rose-200 dark:border-rose-700/40"
|
|
245
223
|
};
|
|
246
224
|
const SUBITEM_ACTIVE = {
|
|
247
|
-
accent: "bg-
|
|
248
|
-
slate: "bg-
|
|
249
|
-
gray: "bg-
|
|
250
|
-
zinc: "bg-
|
|
251
|
-
neutral: "bg-
|
|
252
|
-
stone: "bg-
|
|
253
|
-
red: "bg-
|
|
254
|
-
orange: "bg-
|
|
255
|
-
amber: "bg-
|
|
256
|
-
yellow: "bg-
|
|
257
|
-
lime: "bg-
|
|
258
|
-
green: "bg-
|
|
259
|
-
emerald: "bg-
|
|
260
|
-
teal: "bg-
|
|
261
|
-
cyan: "bg-
|
|
262
|
-
sky: "bg-
|
|
263
|
-
blue: "bg-
|
|
264
|
-
indigo: "bg-
|
|
265
|
-
violet: "bg-
|
|
266
|
-
purple: "bg-
|
|
267
|
-
fuchsia: "bg-
|
|
268
|
-
pink: "bg-
|
|
269
|
-
rose: "bg-
|
|
225
|
+
accent: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
226
|
+
slate: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
227
|
+
gray: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
228
|
+
zinc: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
229
|
+
neutral: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
230
|
+
stone: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
231
|
+
red: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
232
|
+
orange: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
233
|
+
amber: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
234
|
+
yellow: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
235
|
+
lime: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
236
|
+
green: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
237
|
+
emerald: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
238
|
+
teal: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
239
|
+
cyan: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
240
|
+
sky: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
241
|
+
blue: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
242
|
+
indigo: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
243
|
+
violet: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
244
|
+
purple: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
245
|
+
fuchsia: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
246
|
+
pink: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl",
|
|
247
|
+
rose: "bg-transparent text-[var(--foreground)] ring-0 rounded-xl"
|
|
270
248
|
};
|
|
249
|
+
const PANEL_SURFACE = "border-r border-[color-mix(in_oklab,var(--border)_76%,transparent)] bg-[linear-gradient(180deg,color-mix(in_oklab,var(--card)_98.5%,transparent)_0%,color-mix(in_oklab,var(--surface)_90%,transparent)_100%)] shadow-[18px_0_42px_-38px_color-mix(in_oklab,var(--foreground)_16%,transparent)] backdrop-blur-lg";
|
|
250
|
+
const TILE_SURFACE = "border border-[color-mix(in_oklab,var(--border)_74%,transparent)] bg-[linear-gradient(180deg,color-mix(in_oklab,var(--card)_98%,transparent)_0%,color-mix(in_oklab,var(--surface)_84%,transparent)_100%)] shadow-[0_12px_28px_-26px_color-mix(in_oklab,var(--foreground)_18%,transparent)]";
|
|
251
|
+
const ITEM_IDLE = "text-[color-mix(in_oklab,var(--foreground)_86%,var(--muted))] hover:text-[var(--foreground)] hover:bg-[color-mix(in_oklab,var(--foreground)_4%,transparent)]";
|
|
252
|
+
const TOP_PANEL_SURFACE = "rounded-[1.4rem] border border-[color-mix(in_oklab,var(--border)_62%,transparent)] bg-[color-mix(in_oklab,var(--foreground)_1.5%,transparent)]";
|
|
253
|
+
const SOFT_BUTTON_SURFACE = "border border-[color-mix(in_oklab,var(--border)_70%,transparent)] bg-[color-mix(in_oklab,var(--foreground)_3.5%,transparent)]";
|
|
254
|
+
const ITEM_ICON_IDLE = "text-[color-mix(in_oklab,var(--foreground)_78%,var(--muted))] group-hover:text-[var(--foreground)]";
|
|
255
|
+
const ITEM_ICON_ACTIVE = "text-[var(--primary)] drop-shadow-[0_8px_20px_color-mix(in_oklab,var(--primary)_28%,transparent)]";
|
|
256
|
+
const ACTIVE_ROW_BAR = "pointer-events-none absolute bottom-2 left-0 top-2 z-[1] w-[3px] rounded-full bg-[var(--primary)] shadow-[0_0_0_1px_color-mix(in_oklab,var(--primary)_14%,transparent),0_10px_24px_-14px_color-mix(in_oklab,var(--primary)_72%,transparent)]";
|
|
257
|
+
const SUBMENU_GUIDE_BAR = "pointer-events-none absolute bottom-2 left-4 top-2 w-px bg-[color-mix(in_oklab,var(--muted)_72%,var(--foreground)_28%)]";
|
|
258
|
+
const SIDEBAR_COLLAPSE_EASE = [0.22, 1, 0.36, 1];
|
|
259
|
+
const SIDEBAR_COLLAPSE_TRANSITION = { duration: 0.24, ease: SIDEBAR_COLLAPSE_EASE };
|
|
271
260
|
function Sidebar({
|
|
272
261
|
items,
|
|
273
262
|
activeKey,
|
|
@@ -618,25 +607,25 @@ function Sidebar({
|
|
|
618
607
|
activeWorkspace ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "truncate text-xs text-[var(--muted)] text-left", children: activeWorkspace.name }) : null
|
|
619
608
|
] })
|
|
620
609
|
] }),
|
|
621
|
-
/* @__PURE__ */ (0, import_jsx_runtime.
|
|
610
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
622
611
|
import_framer_motion.motion.aside,
|
|
623
612
|
{
|
|
624
613
|
className: [
|
|
625
|
-
"hidden xl:fixed xl:inset-y-0 xl:
|
|
626
|
-
collapsed ? "xl:px-2" : "xl:px-4"
|
|
614
|
+
"relative z-40 hidden overflow-hidden xl:fixed xl:inset-y-0 xl:left-0 xl:flex xl:flex-col"
|
|
627
615
|
].join(" "),
|
|
628
616
|
initial: false,
|
|
629
617
|
animate: { width: sidebarWidth },
|
|
630
618
|
transition: sidebarWidthTransition,
|
|
631
619
|
style: { width: sidebarWidth, willChange: motionEnabled ? "width" : void 0 },
|
|
632
|
-
children: [
|
|
620
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: cx("relative z-10 flex h-full min-h-0 flex-1 overflow-hidden", PANEL_SURFACE), children: [
|
|
633
621
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
634
622
|
"div",
|
|
635
623
|
{
|
|
636
624
|
"aria-hidden": "true",
|
|
637
|
-
className: "pointer-events-none absolute inset-
|
|
625
|
+
className: "pointer-events-none absolute inset-0 z-0 bg-[radial-gradient(720px_420px_at_14%_0%,color-mix(in_oklab,var(--primary)_5%,transparent)_0%,transparent_44%),radial-gradient(860px_540px_at_20%_118%,color-mix(in_oklab,var(--primary)_8%,transparent)_0%,transparent_56%),radial-gradient(700px_460px_at_86%_114%,color-mix(in_oklab,var(--ring)_6%,transparent)_0%,transparent_60%)]"
|
|
638
626
|
}
|
|
639
627
|
),
|
|
628
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { "aria-hidden": "true", className: "pointer-events-none absolute inset-y-10 right-0 z-0 w-px bg-[linear-gradient(180deg,transparent,color-mix(in_oklab,var(--ring)_30%,transparent),transparent)]" }),
|
|
640
629
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "relative z-10 flex-1 min-h-0", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
641
630
|
SidebarInner,
|
|
642
631
|
{
|
|
@@ -683,7 +672,7 @@ function Sidebar({
|
|
|
683
672
|
skeleton
|
|
684
673
|
}
|
|
685
674
|
) })
|
|
686
|
-
]
|
|
675
|
+
] })
|
|
687
676
|
}
|
|
688
677
|
),
|
|
689
678
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
@@ -697,26 +686,27 @@ function Sidebar({
|
|
|
697
686
|
}
|
|
698
687
|
),
|
|
699
688
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { children: drawerOpen && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_framer_motion.motion.div, { className: "fixed inset-0 z-40 xl:hidden", initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, children: [
|
|
700
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
689
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.motion.div, { className: "absolute inset-0 bg-black/42 backdrop-blur-[2px]", initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 } }),
|
|
701
690
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
702
691
|
import_framer_motion.motion.div,
|
|
703
692
|
{
|
|
704
693
|
role: "dialog",
|
|
705
694
|
"aria-modal": "true",
|
|
706
|
-
initial: { x: -340 },
|
|
707
|
-
animate: { x: 0 },
|
|
708
|
-
exit: { x: -340 },
|
|
709
|
-
transition: { type: "tween", duration: 0.
|
|
710
|
-
className: "relative h-full w-[88%] max-w-80 overflow-hidden bg-[var(--card)]
|
|
711
|
-
style: { willChange: "transform" },
|
|
695
|
+
initial: { x: -340, opacity: 0.84, scale: 0.98 },
|
|
696
|
+
animate: { x: 0, opacity: 1, scale: 1 },
|
|
697
|
+
exit: { x: -340, opacity: 0.84, scale: 0.985 },
|
|
698
|
+
transition: { type: "tween", duration: 0.26, ease: [0.22, 1, 0.36, 1] },
|
|
699
|
+
className: cx("relative h-full w-[88%] max-w-80 overflow-hidden px-5 py-6", TOP_PANEL_SURFACE, "bg-[linear-gradient(180deg,color-mix(in_oklab,var(--card)_98%,transparent)_0%,color-mix(in_oklab,var(--surface)_82%,transparent)_100%)] shadow-2xl backdrop-blur-xl"),
|
|
700
|
+
style: { willChange: "transform, opacity" },
|
|
712
701
|
children: [
|
|
713
702
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
714
703
|
"div",
|
|
715
704
|
{
|
|
716
705
|
"aria-hidden": "true",
|
|
717
|
-
className: "pointer-events-none absolute inset-
|
|
706
|
+
className: "pointer-events-none absolute inset-0 z-0 bg-[radial-gradient(720px_420px_at_14%_0%,color-mix(in_oklab,var(--primary)_5%,transparent)_0%,transparent_44%),radial-gradient(860px_540px_at_20%_118%,color-mix(in_oklab,var(--primary)_8%,transparent)_0%,transparent_56%),radial-gradient(700px_460px_at_86%_114%,color-mix(in_oklab,var(--ring)_6%,transparent)_0%,transparent_60%)]"
|
|
718
707
|
}
|
|
719
708
|
),
|
|
709
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { "aria-hidden": "true", className: "pointer-events-none absolute inset-x-8 top-0 z-0 h-px bg-[linear-gradient(90deg,transparent,color-mix(in_oklab,var(--ring)_30%,transparent),transparent)]" }),
|
|
720
710
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mb-4 flex items-center justify-between", children: [
|
|
721
711
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
722
712
|
import_Button.default,
|
|
@@ -726,7 +716,7 @@ function Sidebar({
|
|
|
726
716
|
variant: "ghost",
|
|
727
717
|
size: "sm",
|
|
728
718
|
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.CloseIcon, {}),
|
|
729
|
-
className: "h-9 w-9 p-0 !gap-0
|
|
719
|
+
className: cx("h-9 w-9 rounded-2xl p-0 !gap-0 text-[var(--foreground)] transition-transform hover:-translate-y-0.5 active:translate-y-0", TILE_SURFACE)
|
|
730
720
|
}
|
|
731
721
|
),
|
|
732
722
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm text-[var(--muted)]", children: "Men\xFA" })
|
|
@@ -1857,84 +1847,129 @@ function SidebarInner({
|
|
|
1857
1847
|
const skShowTopPanel = (_c = skeleton == null ? void 0 : skeleton.showTopPanel) != null ? _c : true;
|
|
1858
1848
|
const skShowFooter = (_d = skeleton == null ? void 0 : skeleton.showFooter) != null ? _d : true;
|
|
1859
1849
|
const hasQuickActions = Boolean(quickActions == null ? void 0 : quickActions.length);
|
|
1860
|
-
const
|
|
1850
|
+
const topPanelClass = cx("overflow-hidden rounded-[1.4rem]", TOP_PANEL_SURFACE);
|
|
1851
|
+
const calmFadeEase = [0.22, 1, 0.36, 1];
|
|
1852
|
+
const calmFadeTransition = { duration: 0.26, ease: calmFadeEase };
|
|
1853
|
+
const calmFadeInitial = { opacity: 0, y: 4, filter: "blur(6px)" };
|
|
1854
|
+
const calmFadeAnimate = { opacity: 1, y: 0, filter: "blur(0px)" };
|
|
1855
|
+
const calmFadeExit = { opacity: 0, y: 2, filter: "blur(6px)" };
|
|
1856
|
+
const QuickIcon = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "grid h-9 w-9 place-items-center rounded-2xl text-[var(--muted)] transition-all duration-300 group-hover:scale-[1.04] group-hover:text-[var(--foreground)]", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-[var(--foreground)]", children }) });
|
|
1861
1857
|
const QuickActionsSection = () => {
|
|
1862
1858
|
if (!hasQuickActions) return null;
|
|
1863
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
collapsed ? "justify-center" : ""
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
{
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1859
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
1860
|
+
import_framer_motion.motion.div,
|
|
1861
|
+
{
|
|
1862
|
+
className: "pt-5",
|
|
1863
|
+
initial: calmFadeInitial,
|
|
1864
|
+
animate: calmFadeAnimate,
|
|
1865
|
+
transition: calmFadeTransition,
|
|
1866
|
+
children: [
|
|
1867
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: ["flex items-center justify-between gap-2 px-2", collapsed ? "justify-center" : ""].join(" "), children: !collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
1868
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-[0.6875rem] font-semibold uppercase tracking-[0.18em] text-[var(--muted)]", children: quickActionsTitle != null ? quickActionsTitle : "Accesos r\xE1pidos" }),
|
|
1869
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px flex-1 bg-[linear-gradient(90deg,color-mix(in_oklab,var(--border)_72%,transparent),transparent)]" })
|
|
1870
|
+
] }) : null }),
|
|
1871
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-2", children: (quickActions != null ? quickActions : []).map((a, index) => {
|
|
1872
|
+
var _a2;
|
|
1873
|
+
const disabled = Boolean(a.disabled);
|
|
1874
|
+
const base = [
|
|
1875
|
+
"group flex w-full items-center gap-3.5 rounded-[1.35rem] px-3.5 py-2.5 text-left transition-all duration-300 active:scale-[0.99]",
|
|
1876
|
+
disabled ? "opacity-60 cursor-not-allowed" : ITEM_IDLE,
|
|
1877
|
+
collapsed ? "justify-center" : ""
|
|
1878
|
+
].join(" ");
|
|
1879
|
+
const button = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
1880
|
+
import_Button.default,
|
|
1881
|
+
{
|
|
1882
|
+
unstyled: true,
|
|
1883
|
+
type: "button",
|
|
1884
|
+
onClick: () => {
|
|
1885
|
+
if (disabled) return;
|
|
1886
|
+
onQuickAction == null ? void 0 : onQuickAction(a);
|
|
1887
|
+
},
|
|
1888
|
+
className: base,
|
|
1889
|
+
title: void 0,
|
|
1890
|
+
children: [
|
|
1891
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QuickIcon, { children: (_a2 = a.icon) != null ? _a2 : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.PlusIcon, { className: "h-4 w-4", "aria-hidden": true }) }),
|
|
1892
|
+
!collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "min-w-0 flex-1", children: [
|
|
1893
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block truncate text-[0.9375rem] font-medium text-[var(--foreground)]", children: a.label }),
|
|
1894
|
+
a.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "mt-0.5 block truncate text-xs text-[var(--muted)] text-left", children: a.description }) : null
|
|
1895
|
+
] }) : null,
|
|
1896
|
+
!collapsed && a.badge ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "shrink-0", children: a.badge }) : null
|
|
1897
|
+
]
|
|
1898
|
+
}
|
|
1899
|
+
);
|
|
1900
|
+
if (!collapsed) {
|
|
1901
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1902
|
+
import_framer_motion.motion.div,
|
|
1903
|
+
{
|
|
1904
|
+
initial: { opacity: 0, filter: "blur(6px)" },
|
|
1905
|
+
animate: { opacity: 1, filter: "blur(0px)" },
|
|
1906
|
+
transition: { duration: 0.22, delay: index * 0.025, ease: calmFadeEase },
|
|
1907
|
+
children: button
|
|
1908
|
+
},
|
|
1909
|
+
a.id
|
|
1910
|
+
);
|
|
1911
|
+
}
|
|
1912
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1913
|
+
import_Tooltip.default,
|
|
1914
|
+
{
|
|
1915
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0", children: [
|
|
1916
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "truncate text-[0.75rem] font-semibold", children: a.label }),
|
|
1917
|
+
a.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-0.5 truncate text-[0.6875rem] text-white/70", children: a.description }) : null
|
|
1918
|
+
] }),
|
|
1919
|
+
placement: "right",
|
|
1920
|
+
offset: 12,
|
|
1921
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1922
|
+
import_framer_motion.motion.div,
|
|
1923
|
+
{
|
|
1924
|
+
initial: { opacity: 0, filter: "blur(6px)" },
|
|
1925
|
+
animate: { opacity: 1, filter: "blur(0px)" },
|
|
1926
|
+
transition: { duration: 0.2, delay: index * 0.025, ease: calmFadeEase },
|
|
1927
|
+
children: button
|
|
1928
|
+
}
|
|
1929
|
+
)
|
|
1930
|
+
},
|
|
1931
|
+
a.id
|
|
1932
|
+
);
|
|
1933
|
+
}) })
|
|
1934
|
+
]
|
|
1935
|
+
}
|
|
1936
|
+
);
|
|
1910
1937
|
};
|
|
1911
1938
|
const showNavTools = Boolean(navEditable && onNavConfigure);
|
|
1912
1939
|
const showQuickTools = Boolean(quickActionsEditable && onQuickActionsConfigure);
|
|
1913
1940
|
const showSidebarTools = showNavTools || showQuickTools;
|
|
1914
1941
|
const showCollapseToggle = !mobile && typeof toggleCollapsed === "function";
|
|
1915
1942
|
const renderCollapseToggle = (opts) => {
|
|
1916
|
-
var _a2;
|
|
1917
1943
|
if (!showCollapseToggle) return null;
|
|
1918
1944
|
if (loading) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton shrink-0", style: { width: 40, height: 40, borderRadius: 16 } });
|
|
1919
|
-
|
|
1920
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: collapsed ? "Expandir barra lateral" : "Contraer barra lateral", placement: "right", offset: 10, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1945
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.motion.div, { layout: true, transition: SIDEBAR_COLLAPSE_TRANSITION, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: collapsed ? "Expandir barra lateral" : "Contraer barra lateral", placement: "right", offset: 10, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1921
1946
|
import_Button.default,
|
|
1922
1947
|
{
|
|
1948
|
+
unstyled: true,
|
|
1923
1949
|
noPaddingX: true,
|
|
1924
1950
|
"aria-label": collapsed ? "Expandir barra lateral" : "Contraer barra lateral",
|
|
1925
1951
|
onClick: toggleCollapsed,
|
|
1926
|
-
variant: "ghost",
|
|
1927
|
-
size: "sm",
|
|
1928
|
-
leftIcon: collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.CaretLineRightIcon, { className: "h-4 w-4", "aria-hidden": true }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.CaretLineLeftIcon, { className: "h-4 w-4", "aria-hidden": true }),
|
|
1929
1952
|
className: cx(
|
|
1930
|
-
"
|
|
1931
|
-
|
|
1932
|
-
"
|
|
1933
|
-
|
|
1953
|
+
"inline-flex h-10 w-10 shrink-0 items-center justify-center overflow-visible rounded-[1.1rem] p-0 transition-all duration-300",
|
|
1954
|
+
"border border-[color-mix(in_oklab,var(--border)_82%,transparent)]",
|
|
1955
|
+
"bg-[color-mix(in_oklab,var(--card)_96%,var(--surface))] text-[var(--foreground)]",
|
|
1956
|
+
"backdrop-blur-sm",
|
|
1957
|
+
"shadow-[0_14px_30px_-24px_color-mix(in_oklab,var(--foreground)_38%,transparent)]",
|
|
1958
|
+
"hover:-translate-y-0.5 hover:bg-[color-mix(in_oklab,var(--card)_94%,var(--surface))] hover:shadow-[0_18px_36px_-24px_color-mix(in_oklab,var(--foreground)_44%,transparent)]",
|
|
1959
|
+
"active:translate-y-0 active:scale-95"
|
|
1934
1960
|
),
|
|
1935
|
-
title: void 0
|
|
1961
|
+
title: void 0,
|
|
1962
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
1963
|
+
import_framer_motion.motion.span,
|
|
1964
|
+
{
|
|
1965
|
+
className: "grid place-items-center text-[color-mix(in_oklab,var(--foreground)_92%,var(--muted))]",
|
|
1966
|
+
animate: { x: collapsed ? 0.5 : -0.5, scale: collapsed ? 0.98 : 1 },
|
|
1967
|
+
transition: { type: "spring", stiffness: 420, damping: 30 },
|
|
1968
|
+
children: collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.CaretLineRightIcon, { className: "h-[1.1rem] w-[1.1rem]", "aria-hidden": true }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.CaretLineLeftIcon, { className: "h-[1.1rem] w-[1.1rem]", "aria-hidden": true })
|
|
1969
|
+
}
|
|
1970
|
+
)
|
|
1936
1971
|
}
|
|
1937
|
-
) });
|
|
1972
|
+
) }) });
|
|
1938
1973
|
};
|
|
1939
1974
|
const SidebarTools = ({ condensed }) => {
|
|
1940
1975
|
if (!showSidebarTools) return null;
|
|
@@ -1980,9 +2015,9 @@ function SidebarInner({
|
|
|
1980
2015
|
}, []);
|
|
1981
2016
|
if (!condensedMode) {
|
|
1982
2017
|
const btnClass = cx(
|
|
1983
|
-
"h-9 w-9 rounded-
|
|
1984
|
-
|
|
1985
|
-
"hover:
|
|
2018
|
+
"h-9 w-9 rounded-2xl p-0 !gap-0 text-[var(--foreground)]",
|
|
2019
|
+
SOFT_BUTTON_SURFACE,
|
|
2020
|
+
"hover:-translate-y-0.5 active:translate-y-0 active:scale-[0.98]"
|
|
1986
2021
|
);
|
|
1987
2022
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: cx("flex items-center gap-2"), children: [
|
|
1988
2023
|
showNavTools ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: navCustomizeLabel != null ? navCustomizeLabel : "Personalizar", placement: "bottom", offset: 12, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
@@ -2016,9 +2051,9 @@ function SidebarInner({
|
|
|
2016
2051
|
] });
|
|
2017
2052
|
}
|
|
2018
2053
|
const iconBtnClass = cx(
|
|
2019
|
-
"grid place-items-center
|
|
2020
|
-
|
|
2021
|
-
"hover:
|
|
2054
|
+
"grid h-9 w-9 place-items-center rounded-2xl p-0 !gap-0 text-[var(--foreground)]",
|
|
2055
|
+
SOFT_BUTTON_SURFACE,
|
|
2056
|
+
"hover:-translate-y-0.5 active:translate-y-0 active:scale-[0.98]"
|
|
2022
2057
|
);
|
|
2023
2058
|
const menuItemClass = cx(
|
|
2024
2059
|
"w-full flex items-center gap-3 rounded-2xl px-3 py-2 text-left text-sm",
|
|
@@ -2033,7 +2068,7 @@ function SidebarInner({
|
|
|
2033
2068
|
className: "fixed z-[200] w-[240px]",
|
|
2034
2069
|
role: "menu",
|
|
2035
2070
|
"aria-label": "Opciones del sidebar",
|
|
2036
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "rounded-3xl
|
|
2071
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cx("overflow-hidden rounded-3xl", TOP_PANEL_SURFACE, "bg-[var(--card)] shadow-xl backdrop-blur-xl"), children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "p-1.5", children: [
|
|
2037
2072
|
showNavTools ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2038
2073
|
"button",
|
|
2039
2074
|
{
|
|
@@ -2045,7 +2080,7 @@ function SidebarInner({
|
|
|
2045
2080
|
onNavConfigure == null ? void 0 : onNavConfigure();
|
|
2046
2081
|
},
|
|
2047
2082
|
children: [
|
|
2048
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "grid h-9 w-9 place-items-center rounded-2xl
|
|
2083
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: cx("grid h-9 w-9 place-items-center rounded-2xl", SOFT_BUTTON_SURFACE), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.PencilIcon, { className: "h-4 w-4", "aria-hidden": true }) }),
|
|
2049
2084
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "min-w-0", children: [
|
|
2050
2085
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block font-semibold text-[var(--foreground)]", children: navCustomizeLabel != null ? navCustomizeLabel : "Personalizar" }),
|
|
2051
2086
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block text-xs text-[var(--muted)] text-left", children: "Ordena y ajusta la navegaci\xF3n" })
|
|
@@ -2064,7 +2099,7 @@ function SidebarInner({
|
|
|
2064
2099
|
onQuickActionsConfigure == null ? void 0 : onQuickActionsConfigure();
|
|
2065
2100
|
},
|
|
2066
2101
|
children: [
|
|
2067
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "grid h-9 w-9 place-items-center rounded-2xl
|
|
2102
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: cx("grid h-9 w-9 place-items-center rounded-2xl", SOFT_BUTTON_SURFACE), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.ListStarIcon, { className: "h-4 w-4", "aria-hidden": true }) }),
|
|
2068
2103
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "min-w-0", children: [
|
|
2069
2104
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block font-semibold text-[var(--foreground)]", children: "Accesos r\xE1pidos" }),
|
|
2070
2105
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block text-xs text-[var(--muted)] text-left", children: "Ancla tus acciones favoritas" })
|
|
@@ -2100,7 +2135,7 @@ function SidebarInner({
|
|
|
2100
2135
|
] });
|
|
2101
2136
|
};
|
|
2102
2137
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: ["flex h-full flex-col", loading ? "pointer-events-none select-none" : ""].join(" "), "aria-busy": loading ? "true" : void 0, children: [
|
|
2103
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: collapsed ? "px-
|
|
2138
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: collapsed ? "px-3 pt-4" : "px-5 pt-5", children: loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
2104
2139
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: ["flex min-w-0 flex-1 items-center gap-3", collapsed ? "justify-center" : ""].join(" "), children: [
|
|
2105
2140
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton", style: { width: collapsed ? 44 : 40, height: collapsed ? 44 : 40, borderRadius: 16 } }),
|
|
2106
2141
|
!collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "space-y-2", children: [
|
|
@@ -2109,60 +2144,77 @@ function SidebarInner({
|
|
|
2109
2144
|
] }) : null
|
|
2110
2145
|
] }),
|
|
2111
2146
|
renderCollapseToggle()
|
|
2112
|
-
] }) : showBrand ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2147
|
+
] }) : showBrand ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2148
|
+
import_framer_motion.motion.div,
|
|
2149
|
+
{
|
|
2150
|
+
layout: true,
|
|
2151
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2152
|
+
className: "relative flex items-center gap-2",
|
|
2153
|
+
children: [
|
|
2154
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2155
|
+
import_Button.default,
|
|
2156
|
+
{
|
|
2157
|
+
unstyled: true,
|
|
2158
|
+
type: "button",
|
|
2159
|
+
onClick: onBrandClick,
|
|
2160
|
+
className: cx(
|
|
2161
|
+
"flex items-center gap-3",
|
|
2162
|
+
"min-w-0 flex-1 justify-start py-2",
|
|
2163
|
+
collapsed ? "px-1" : "px-2"
|
|
2164
|
+
),
|
|
2165
|
+
title: "Ir al inicio",
|
|
2166
|
+
children: [
|
|
2167
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2168
|
+
import_framer_motion.motion.div,
|
|
2133
2169
|
{
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2170
|
+
layout: "size",
|
|
2171
|
+
transition: { type: "spring", stiffness: 520, damping: 46, mass: 0.9 },
|
|
2172
|
+
className: "shrink-0",
|
|
2173
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2174
|
+
import_AvatarSquare.default,
|
|
2175
|
+
{
|
|
2176
|
+
size: collapsed ? 44 : 40,
|
|
2177
|
+
src: brandLogoSrc != null ? brandLogoSrc : void 0,
|
|
2178
|
+
alt: brandTitle,
|
|
2179
|
+
initials: brandInitials,
|
|
2180
|
+
imageFit: brandLogoSrc ? "contain" : "cover",
|
|
2181
|
+
radiusClass: "rounded-2xl",
|
|
2182
|
+
color,
|
|
2183
|
+
className: "ring-0"
|
|
2184
|
+
}
|
|
2185
|
+
)
|
|
2142
2186
|
}
|
|
2143
|
-
)
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2187
|
+
),
|
|
2188
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: !collapsed && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2189
|
+
import_framer_motion.motion.div,
|
|
2190
|
+
{
|
|
2191
|
+
initial: calmFadeInitial,
|
|
2192
|
+
animate: calmFadeAnimate,
|
|
2193
|
+
exit: calmFadeExit,
|
|
2194
|
+
transition: calmFadeTransition,
|
|
2195
|
+
className: "leading-tight",
|
|
2196
|
+
children: [
|
|
2197
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-lg font-semibold tracking-tight text-left", children: brandTitle }),
|
|
2198
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-[0.6875rem] uppercase tracking-wide text-[var(--muted)] text-left", children: brandSubtitle })
|
|
2199
|
+
]
|
|
2200
|
+
},
|
|
2201
|
+
"brand-meta"
|
|
2202
|
+
) })
|
|
2203
|
+
]
|
|
2204
|
+
}
|
|
2205
|
+
),
|
|
2206
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2207
|
+
import_framer_motion.motion.div,
|
|
2208
|
+
{
|
|
2209
|
+
layout: true,
|
|
2210
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2211
|
+
className: "shrink-0 self-start",
|
|
2212
|
+
children: renderCollapseToggle({ size: collapsed ? "sm" : "md" })
|
|
2213
|
+
}
|
|
2214
|
+
)
|
|
2215
|
+
]
|
|
2216
|
+
}
|
|
2217
|
+
) : hasWorkspace ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0", children: [
|
|
2166
2218
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
2167
2219
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2168
2220
|
WorkspaceSwitcher,
|
|
@@ -2185,7 +2237,7 @@ function SidebarInner({
|
|
|
2185
2237
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: ["min-w-0 flex-1 text-sm font-semibold text-[var(--muted)]", collapsed ? "text-center" : ""].join(" "), children: "Navegaci\xF3n" }),
|
|
2186
2238
|
renderCollapseToggle()
|
|
2187
2239
|
] }) }),
|
|
2188
|
-
showTopPanel || loading && skShowTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cx("mt-
|
|
2240
|
+
showTopPanel || loading && skShowTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cx("mt-4", collapsed ? "px-4" : "px-5"), children: loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: collapsed ? cx("rounded-3xl p-2", TOP_PANEL_SURFACE) : topPanelClass, children: collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col items-center justify-center gap-2", children: [
|
|
2189
2241
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton", style: { width: 44, height: 44, borderRadius: 16 } }),
|
|
2190
2242
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton", style: { width: 56, height: 12, borderRadius: 10 } })
|
|
2191
2243
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "px-2 py-2", children: [
|
|
@@ -2205,7 +2257,7 @@ function SidebarInner({
|
|
|
2205
2257
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton", style: { width: "66%", height: 10, borderRadius: 10, opacity: 0.9 } })
|
|
2206
2258
|
] })
|
|
2207
2259
|
] }) })
|
|
2208
|
-
] }) }) : collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "rounded-3xl
|
|
2260
|
+
] }) }) : collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cx("rounded-3xl p-1.5", TOP_PANEL_SURFACE), children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col items-center justify-center gap-2", children: [
|
|
2209
2261
|
showWorkspaceInTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
2210
2262
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2211
2263
|
WorkspaceSwitcher,
|
|
@@ -2238,7 +2290,7 @@ function SidebarInner({
|
|
|
2238
2290
|
userMenuSlot ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: userMenuSlot }) : null
|
|
2239
2291
|
] }) : null,
|
|
2240
2292
|
sidebarSlotCollapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex items-center justify-center", children: sidebarSlotCollapsed }) : null
|
|
2241
|
-
] }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className:
|
|
2293
|
+
] }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: topPanelClass, children: [
|
|
2242
2294
|
showWorkspaceInTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "px-3 py-3", children: [
|
|
2243
2295
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2244
2296
|
WorkspaceSwitcher,
|
|
@@ -2253,10 +2305,10 @@ function SidebarInner({
|
|
|
2253
2305
|
color
|
|
2254
2306
|
}
|
|
2255
2307
|
),
|
|
2256
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-2.5
|
|
2308
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-2.5 border-t border-[color-mix(in_oklab,var(--border)_58%,transparent)] pt-2.5", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SidebarTools, {}) })
|
|
2257
2309
|
] }) : null,
|
|
2258
|
-
showWorkspaceInTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px bg-[var(--border)]
|
|
2259
|
-
showUser ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "px-3 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-3.5 rounded-2xl px-
|
|
2310
|
+
showWorkspaceInTopPanel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px bg-[color-mix(in_oklab,var(--border)_58%,transparent)]" }) : null,
|
|
2311
|
+
showUser ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "px-3 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-3.5 rounded-2xl px-1 py-1", children: [
|
|
2260
2312
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2261
2313
|
import_AvatarSquare.default,
|
|
2262
2314
|
{
|
|
@@ -2275,7 +2327,7 @@ function SidebarInner({
|
|
|
2275
2327
|
userMenuSlot ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "ml-auto", children: userMenuSlot }) : null
|
|
2276
2328
|
] }) }) : null,
|
|
2277
2329
|
sidebarSlot ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
2278
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px bg-[var(--border)]
|
|
2330
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-px bg-[color-mix(in_oklab,var(--border)_58%,transparent)]" }),
|
|
2279
2331
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "px-3 py-3", children: sidebarSlot })
|
|
2280
2332
|
] }) : null
|
|
2281
2333
|
] }) }) : null,
|
|
@@ -2284,8 +2336,8 @@ function SidebarInner({
|
|
|
2284
2336
|
{
|
|
2285
2337
|
ref: navRef,
|
|
2286
2338
|
className: cx(
|
|
2287
|
-
"mt-
|
|
2288
|
-
|
|
2339
|
+
"mt-5 flex-1 space-y-6 overflow-y-auto overflow-x-hidden py-2",
|
|
2340
|
+
"px-5"
|
|
2289
2341
|
),
|
|
2290
2342
|
children: loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-7", children: Array.from({ length: skGroups }).map((_, g) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
|
|
2291
2343
|
!collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mb-3 px-1", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fx-skeleton", style: { width: g % 2 === 0 ? "6.5rem" : "7.5rem", height: 10, borderRadius: 10 } }) }) : null,
|
|
@@ -2311,30 +2363,49 @@ function SidebarInner({
|
|
|
2311
2363
|
});
|
|
2312
2364
|
return visibles.length > 0;
|
|
2313
2365
|
})) == null ? void 0 : _a2[0]) != null ? _b2 : null;
|
|
2314
|
-
const renderedGroups = groups.map(([groupName, items]) => {
|
|
2366
|
+
const renderedGroups = groups.map(([groupName, items], groupIndex) => {
|
|
2315
2367
|
const visibles = items.filter((i) => {
|
|
2316
2368
|
var _a3;
|
|
2317
2369
|
return ((_a3 = i.children) == null ? void 0 : _a3.length) ? i.children.some((c) => c) : true;
|
|
2318
2370
|
});
|
|
2319
2371
|
if (visibles.length === 0) return null;
|
|
2320
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
|
|
2336
|
-
|
|
2337
|
-
|
|
2372
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2373
|
+
import_framer_motion.motion.div,
|
|
2374
|
+
{
|
|
2375
|
+
layout: true,
|
|
2376
|
+
initial: calmFadeInitial,
|
|
2377
|
+
animate: calmFadeAnimate,
|
|
2378
|
+
transition: { duration: 0.24, delay: groupIndex * 0.03, ease: calmFadeEase },
|
|
2379
|
+
children: [
|
|
2380
|
+
!collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GroupHeader, { title: groupName }) : null,
|
|
2381
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-2", children: visibles.map((item, itemIndex) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2382
|
+
import_framer_motion.motion.div,
|
|
2383
|
+
{
|
|
2384
|
+
layout: true,
|
|
2385
|
+
initial: { opacity: 0, filter: "blur(6px)" },
|
|
2386
|
+
animate: { opacity: 1, filter: "blur(0px)" },
|
|
2387
|
+
transition: { duration: 0.2, delay: itemIndex * 0.02, ease: calmFadeEase },
|
|
2388
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2389
|
+
RenderItem,
|
|
2390
|
+
{
|
|
2391
|
+
item,
|
|
2392
|
+
collapsed: collapsed != null ? collapsed : false,
|
|
2393
|
+
activeKey,
|
|
2394
|
+
go,
|
|
2395
|
+
color
|
|
2396
|
+
}
|
|
2397
|
+
)
|
|
2398
|
+
},
|
|
2399
|
+
item.key
|
|
2400
|
+
)) }),
|
|
2401
|
+
!inserted && quick && firstGroupNameWithItems === groupName ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.default.Fragment, { children: (() => {
|
|
2402
|
+
inserted = true;
|
|
2403
|
+
return quick;
|
|
2404
|
+
})() }) : null
|
|
2405
|
+
]
|
|
2406
|
+
},
|
|
2407
|
+
groupName
|
|
2408
|
+
);
|
|
2338
2409
|
});
|
|
2339
2410
|
if (!inserted && quick) {
|
|
2340
2411
|
renderedGroups.push(
|
|
@@ -2359,7 +2430,9 @@ function RenderItem({
|
|
|
2359
2430
|
const Icon = (_a = item.icon) != null ? _a : (() => null);
|
|
2360
2431
|
const hasChildren = !!((_b = item.children) == null ? void 0 : _b.length);
|
|
2361
2432
|
const children = ((_c = item.children) != null ? _c : []).filter(Boolean);
|
|
2362
|
-
const
|
|
2433
|
+
const isDirectActive = item.key === activeKey;
|
|
2434
|
+
const hasActiveChild = hasChildren && children.some((ch) => ch.key === activeKey);
|
|
2435
|
+
const isActive = isDirectActive || hasActiveChild;
|
|
2363
2436
|
const [open, setOpen] = (0, import_react.useState)(false);
|
|
2364
2437
|
(0, import_react.useEffect)(() => {
|
|
2365
2438
|
if (!hasChildren) return;
|
|
@@ -2383,46 +2456,23 @@ function RenderItem({
|
|
|
2383
2456
|
} catch {
|
|
2384
2457
|
}
|
|
2385
2458
|
}, [hasChildren, open, item.key]);
|
|
2386
|
-
if (hasChildren && collapsed) {
|
|
2387
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: item.label, placement: "right", offset: 12, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2388
|
-
import_Button.default,
|
|
2389
|
-
{
|
|
2390
|
-
unstyled: true,
|
|
2391
|
-
type: "button",
|
|
2392
|
-
onClick: () => go(item.key),
|
|
2393
|
-
title: void 0,
|
|
2394
|
-
"data-fx-sidebar-key": item.key,
|
|
2395
|
-
className: [
|
|
2396
|
-
"group flex w-full items-center gap-3.5 rounded-2xl px-3.5 py-2.5 text-left text-[0.9375rem] transition justify-center active:scale-[0.99]",
|
|
2397
|
-
isActive ? `${WRAP_ACTIVE[color]} text-[var(--foreground)]` : "text-[var(--foreground)] hover:bg-[color-mix(in_oklab,var(--surface)_65%,transparent)]"
|
|
2398
|
-
].join(" "),
|
|
2399
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2400
|
-
"span",
|
|
2401
|
-
{
|
|
2402
|
-
className: [
|
|
2403
|
-
"grid h-10 w-10 place-items-center rounded-2xl border transition",
|
|
2404
|
-
isActive ? `${ICON_BORDER_ACTIVE[color]} bg-[var(--card)] shadow-sm` : "border-[var(--border)] bg-[var(--card)] shadow-sm"
|
|
2405
|
-
].join(" "),
|
|
2406
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, { className: "h-5 w-5" })
|
|
2407
|
-
}
|
|
2408
|
-
)
|
|
2409
|
-
}
|
|
2410
|
-
) });
|
|
2411
|
-
}
|
|
2412
2459
|
if (hasChildren) {
|
|
2413
|
-
|
|
2460
|
+
const content = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_framer_motion.motion.div, { layout: true, transition: SIDEBAR_COLLAPSE_TRANSITION, children: [
|
|
2414
2461
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2415
|
-
|
|
2462
|
+
import_framer_motion.motion.div,
|
|
2416
2463
|
{
|
|
2464
|
+
layout: true,
|
|
2465
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2417
2466
|
className: [
|
|
2418
|
-
"relative flex w-full min-w-0 items-center rounded-
|
|
2419
|
-
isActive ? `${WRAP_ACTIVE[color]} text-[var(--foreground)]` :
|
|
2467
|
+
"relative isolate flex w-full min-w-0 items-center gap-2.5 rounded-[1.2rem] px-3 py-2.5 text-[0.9375rem] transition-all duration-300 active:scale-[0.99]",
|
|
2468
|
+
isActive ? `${WRAP_ACTIVE[color]} text-[var(--foreground)]` : ITEM_IDLE
|
|
2420
2469
|
].join(" "),
|
|
2421
2470
|
children: [
|
|
2471
|
+
!collapsed && isActive ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: ACTIVE_ROW_BAR }) : null,
|
|
2422
2472
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: isActive && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2423
2473
|
import_framer_motion.motion.span,
|
|
2424
2474
|
{
|
|
2425
|
-
className: `pointer-events-none absolute inset-0 rounded-
|
|
2475
|
+
className: `pointer-events-none absolute inset-0 rounded-[1.2rem] ${WRAP_ACTIVE[color]}`,
|
|
2426
2476
|
initial: { opacity: 0 },
|
|
2427
2477
|
animate: { opacity: 1 },
|
|
2428
2478
|
exit: { opacity: 0 },
|
|
@@ -2431,75 +2481,148 @@ function RenderItem({
|
|
|
2431
2481
|
},
|
|
2432
2482
|
`active-${item.key}`
|
|
2433
2483
|
) }),
|
|
2434
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_Button.default, { unstyled: true, type: "button", onClick: () => go(item.key), className: "flex min-w-0 flex-1 items-center gap-3", children: [
|
|
2435
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2436
|
-
"span",
|
|
2437
|
-
{
|
|
2438
|
-
className: [
|
|
2439
|
-
"grid h-10 w-10 place-items-center rounded-2xl border transition",
|
|
2440
|
-
isActive ? `${ICON_BORDER_ACTIVE[color]} bg-[var(--card)] shadow-sm` : "border-[var(--border)] bg-[var(--card)] shadow-sm"
|
|
2441
|
-
].join(" "),
|
|
2442
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, { className: "h-5 w-5" })
|
|
2443
|
-
}
|
|
2444
|
-
),
|
|
2445
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "truncate", "data-fx-sidebar-key": item.key, children: item.label })
|
|
2446
|
-
] }),
|
|
2447
2484
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2448
2485
|
import_Button.default,
|
|
2449
2486
|
{
|
|
2450
|
-
|
|
2451
|
-
noPaddingX: true,
|
|
2487
|
+
unstyled: true,
|
|
2452
2488
|
type: "button",
|
|
2453
|
-
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2489
|
+
onClick: () => go(item.key),
|
|
2490
|
+
"data-fx-sidebar-key": item.key,
|
|
2491
|
+
className: "relative z-[1] flex min-w-0 flex-1 items-center",
|
|
2492
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2493
|
+
import_framer_motion.motion.span,
|
|
2494
|
+
{
|
|
2495
|
+
layout: true,
|
|
2496
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2497
|
+
className: cx(
|
|
2498
|
+
"flex min-w-0 items-center",
|
|
2499
|
+
collapsed ? "w-full justify-start" : "w-full gap-3"
|
|
2500
|
+
),
|
|
2501
|
+
children: [
|
|
2502
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2503
|
+
"span",
|
|
2504
|
+
{
|
|
2505
|
+
className: [
|
|
2506
|
+
"grid h-10 w-10 shrink-0 place-items-center rounded-2xl transition-all duration-300 group-hover:scale-[1.04]",
|
|
2507
|
+
isActive ? ITEM_ICON_ACTIVE : ITEM_ICON_IDLE
|
|
2508
|
+
].join(" "),
|
|
2509
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2510
|
+
Icon,
|
|
2511
|
+
{
|
|
2512
|
+
className: "h-5 w-5",
|
|
2513
|
+
...isActive ? {
|
|
2514
|
+
fill: "var(--primary)",
|
|
2515
|
+
color: "var(--primary)",
|
|
2516
|
+
style: { color: "var(--primary)" }
|
|
2517
|
+
} : void 0
|
|
2518
|
+
}
|
|
2519
|
+
)
|
|
2520
|
+
}
|
|
2521
|
+
),
|
|
2522
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: !collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2523
|
+
import_framer_motion.motion.span,
|
|
2524
|
+
{
|
|
2525
|
+
"data-fx-sidebar-key": item.key,
|
|
2526
|
+
initial: { opacity: 0, width: 0 },
|
|
2527
|
+
animate: { opacity: 1, width: "auto" },
|
|
2528
|
+
exit: { opacity: 0, width: 0 },
|
|
2529
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2530
|
+
className: "overflow-hidden",
|
|
2531
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block truncate", children: item.label })
|
|
2532
|
+
},
|
|
2533
|
+
`label-${item.key}`
|
|
2534
|
+
) : null })
|
|
2535
|
+
]
|
|
2536
|
+
}
|
|
2537
|
+
)
|
|
2465
2538
|
}
|
|
2466
|
-
)
|
|
2539
|
+
),
|
|
2540
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: !collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2541
|
+
import_framer_motion.motion.div,
|
|
2542
|
+
{
|
|
2543
|
+
initial: { opacity: 0, width: 0 },
|
|
2544
|
+
animate: { opacity: 1, width: "auto" },
|
|
2545
|
+
exit: { opacity: 0, width: 0 },
|
|
2546
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2547
|
+
className: "overflow-hidden",
|
|
2548
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2549
|
+
import_Button.default,
|
|
2550
|
+
{
|
|
2551
|
+
iconOnly: true,
|
|
2552
|
+
noPaddingX: true,
|
|
2553
|
+
type: "button",
|
|
2554
|
+
"aria-label": open ? "Contraer submen\xFA" : "Expandir submen\xFA",
|
|
2555
|
+
onClick: (e) => {
|
|
2556
|
+
e.stopPropagation();
|
|
2557
|
+
setOpen(!open);
|
|
2558
|
+
},
|
|
2559
|
+
variant: "ghost",
|
|
2560
|
+
size: "sm",
|
|
2561
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_iconos.ChevronDownIcon, { className: `h-4 w-4 transition-transform ${open ? "rotate-180" : ""}`, "aria-hidden": true }),
|
|
2562
|
+
className: [
|
|
2563
|
+
"relative z-[1] h-8 w-8 shrink-0 rounded-xl p-0 !gap-0 hover:text-[var(--foreground)]",
|
|
2564
|
+
isActive ? `${SOFT_BUTTON_SURFACE} ${TOGGLE_BORDER_ACTIVE[color]} ${hasActiveChild ? "text-[var(--primary)]" : "text-[var(--muted)]"}` : "border-transparent bg-transparent text-[var(--muted)]"
|
|
2565
|
+
].join(" ")
|
|
2566
|
+
}
|
|
2567
|
+
)
|
|
2568
|
+
},
|
|
2569
|
+
`toggle-${item.key}`
|
|
2570
|
+
) : null })
|
|
2467
2571
|
]
|
|
2468
2572
|
}
|
|
2469
2573
|
),
|
|
2470
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: open && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2574
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: open && !collapsed && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2471
2575
|
import_framer_motion.motion.div,
|
|
2472
2576
|
{
|
|
2473
|
-
initial: { height: 0, opacity: 0,
|
|
2474
|
-
animate: { height: "auto", opacity: 1,
|
|
2475
|
-
exit: { height: 0, opacity: 0,
|
|
2476
|
-
transition: { type: "tween", duration: 0.
|
|
2577
|
+
initial: { height: 0, opacity: 0, filter: "blur(6px)" },
|
|
2578
|
+
animate: { height: "auto", opacity: 1, filter: "blur(0px)" },
|
|
2579
|
+
exit: { height: 0, opacity: 0, filter: "blur(6px)" },
|
|
2580
|
+
transition: { type: "tween", duration: 0.24, ease: [0.22, 1, 0.36, 1] },
|
|
2477
2581
|
className: "mt-1 overflow-hidden",
|
|
2478
|
-
style: { willChange: "height, opacity,
|
|
2479
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2485
|
-
|
|
2486
|
-
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2582
|
+
style: { willChange: "height, opacity, filter" },
|
|
2583
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "relative pl-4", children: [
|
|
2584
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: SUBMENU_GUIDE_BAR }),
|
|
2585
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-1 pl-3", children: children.map((ch, index) => {
|
|
2586
|
+
const active2 = ch.key === activeKey;
|
|
2587
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2588
|
+
import_framer_motion.motion.div,
|
|
2589
|
+
{
|
|
2590
|
+
className: "relative",
|
|
2591
|
+
initial: { opacity: 0, filter: "blur(5px)" },
|
|
2592
|
+
animate: { opacity: 1, filter: "blur(0px)" },
|
|
2593
|
+
transition: { duration: 0.18, delay: index * 0.02, ease: [0.22, 1, 0.36, 1] },
|
|
2594
|
+
children: [
|
|
2595
|
+
active2 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "pointer-events-none absolute bottom-2 -left-3 top-2 z-[1] w-px bg-[var(--primary)] shadow-[0_0_0_1px_color-mix(in_oklab,var(--primary)_14%,transparent),0_10px_24px_-14px_color-mix(in_oklab,var(--primary)_72%,transparent)]" }) : null,
|
|
2596
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2597
|
+
import_Button.default,
|
|
2598
|
+
{
|
|
2599
|
+
unstyled: true,
|
|
2600
|
+
onClick: () => go(ch.key),
|
|
2601
|
+
"data-fx-sidebar-key": ch.key,
|
|
2602
|
+
className: [
|
|
2603
|
+
"relative isolate block w-full rounded-xl px-3 py-2.5 text-left text-[0.875rem] transition-all duration-300",
|
|
2604
|
+
active2 ? SUBITEM_ACTIVE[color] : ITEM_IDLE
|
|
2605
|
+
].join(" "),
|
|
2606
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "relative z-[1] block truncate", children: ch.label })
|
|
2607
|
+
}
|
|
2608
|
+
)
|
|
2609
|
+
]
|
|
2610
|
+
},
|
|
2611
|
+
ch.key
|
|
2612
|
+
);
|
|
2613
|
+
}) })
|
|
2614
|
+
] })
|
|
2496
2615
|
},
|
|
2497
2616
|
`submenu-${item.key}`
|
|
2498
2617
|
) })
|
|
2499
2618
|
] });
|
|
2619
|
+
if (collapsed) {
|
|
2620
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: item.label, placement: "right", offset: 12, children: content });
|
|
2621
|
+
}
|
|
2622
|
+
return content;
|
|
2500
2623
|
}
|
|
2501
2624
|
const active = item.key === activeKey;
|
|
2502
|
-
const node = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2625
|
+
const node = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.motion.div, { layout: true, transition: SIDEBAR_COLLAPSE_TRANSITION, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2503
2626
|
import_Button.default,
|
|
2504
2627
|
{
|
|
2505
2628
|
unstyled: true,
|
|
@@ -2508,15 +2631,15 @@ function RenderItem({
|
|
|
2508
2631
|
title: void 0,
|
|
2509
2632
|
"data-fx-sidebar-key": item.key,
|
|
2510
2633
|
className: [
|
|
2511
|
-
"group relative flex w-full min-w-0 items-center gap-3.5 rounded-
|
|
2512
|
-
active ? `${WRAP_ACTIVE[color]} text-[var(--foreground)]` :
|
|
2513
|
-
collapsed ? "justify-center" : ""
|
|
2634
|
+
"group relative isolate flex w-full min-w-0 items-center gap-3.5 rounded-[1.2rem] px-3 py-2.5 text-left text-[0.9375rem] transition-all duration-300 active:scale-[0.99]",
|
|
2635
|
+
active ? `${WRAP_ACTIVE[color]} text-[var(--foreground)]` : ITEM_IDLE
|
|
2514
2636
|
].join(" "),
|
|
2515
2637
|
children: [
|
|
2638
|
+
!collapsed && active ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: ACTIVE_ROW_BAR }) : null,
|
|
2516
2639
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: active && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2517
2640
|
import_framer_motion.motion.span,
|
|
2518
2641
|
{
|
|
2519
|
-
className: `pointer-events-none absolute inset-0 rounded-
|
|
2642
|
+
className: `pointer-events-none absolute inset-0 rounded-[1.2rem] ${WRAP_ACTIVE[color]}`,
|
|
2520
2643
|
initial: { opacity: 0 },
|
|
2521
2644
|
animate: { opacity: 1 },
|
|
2522
2645
|
exit: { opacity: 0 },
|
|
@@ -2525,20 +2648,54 @@ function RenderItem({
|
|
|
2525
2648
|
},
|
|
2526
2649
|
`active-${item.key}`
|
|
2527
2650
|
) }),
|
|
2528
|
-
/* @__PURE__ */ (0, import_jsx_runtime.
|
|
2529
|
-
|
|
2651
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
2652
|
+
import_framer_motion.motion.span,
|
|
2530
2653
|
{
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2654
|
+
layout: true,
|
|
2655
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2656
|
+
className: cx(
|
|
2657
|
+
"relative z-[1] flex min-w-0 items-center",
|
|
2658
|
+
collapsed ? "w-full justify-start" : "w-full gap-3.5"
|
|
2659
|
+
),
|
|
2660
|
+
children: [
|
|
2661
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2662
|
+
"span",
|
|
2663
|
+
{
|
|
2664
|
+
className: [
|
|
2665
|
+
"grid h-10 w-10 shrink-0 place-items-center rounded-2xl transition-all duration-300 group-hover:scale-[1.04]",
|
|
2666
|
+
active ? ITEM_ICON_ACTIVE : ITEM_ICON_IDLE
|
|
2667
|
+
].join(" "),
|
|
2668
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2669
|
+
Icon,
|
|
2670
|
+
{
|
|
2671
|
+
className: "h-5 w-5",
|
|
2672
|
+
...active ? {
|
|
2673
|
+
fill: "var(--primary)",
|
|
2674
|
+
color: "var(--primary)",
|
|
2675
|
+
style: { color: "var(--primary)" }
|
|
2676
|
+
} : void 0
|
|
2677
|
+
}
|
|
2678
|
+
)
|
|
2679
|
+
}
|
|
2680
|
+
),
|
|
2681
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: !collapsed ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
2682
|
+
import_framer_motion.motion.span,
|
|
2683
|
+
{
|
|
2684
|
+
initial: { opacity: 0, width: 0 },
|
|
2685
|
+
animate: { opacity: 1, width: "auto" },
|
|
2686
|
+
exit: { opacity: 0, width: 0 },
|
|
2687
|
+
transition: SIDEBAR_COLLAPSE_TRANSITION,
|
|
2688
|
+
className: "relative z-[1] overflow-hidden",
|
|
2689
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "block truncate", children: item.label })
|
|
2690
|
+
},
|
|
2691
|
+
`label-${item.key}`
|
|
2692
|
+
) : null })
|
|
2693
|
+
]
|
|
2536
2694
|
}
|
|
2537
|
-
)
|
|
2538
|
-
!collapsed && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "truncate", children: item.label })
|
|
2695
|
+
)
|
|
2539
2696
|
]
|
|
2540
2697
|
}
|
|
2541
|
-
);
|
|
2698
|
+
) });
|
|
2542
2699
|
if (!collapsed) return node;
|
|
2543
2700
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: item.label, placement: "right", offset: 12, children: node });
|
|
2544
2701
|
}
|