hubg-app-shell 0.1.0 → 0.1.2
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/components/AppShell.d.ts +21 -0
- package/dist/components/AppShell.d.ts.map +1 -0
- package/dist/components/Header.d.ts +13 -0
- package/dist/components/Header.d.ts.map +1 -0
- package/dist/components/ModuleHost.d.ts +13 -0
- package/dist/components/ModuleHost.d.ts.map +1 -0
- package/dist/components/ShellErrorBoundary.d.ts +26 -0
- package/dist/components/ShellErrorBoundary.d.ts.map +1 -0
- package/dist/components/SideNavigation.d.ts +15 -0
- package/dist/components/SideNavigation.d.ts.map +1 -0
- package/dist/components/ui/accordion.d.ts +10 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/avatar.d.ts +7 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/badge.d.ts +10 -0
- package/dist/components/ui/badge.d.ts.map +1 -0
- package/dist/components/ui/button.d.ts +12 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/collapsible.d.ts +6 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +29 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/index.d.ts +10 -0
- package/dist/components/ui/index.d.ts.map +1 -0
- package/dist/components/ui/scroll-area.d.ts +6 -0
- package/dist/components/ui/scroll-area.d.ts.map +1 -0
- package/dist/components/ui/separator.d.ts +5 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/tooltip.d.ts +8 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/context/ShellContext.d.ts +20 -0
- package/dist/context/ShellContext.d.ts.map +1 -0
- package/dist/events/EventBus.d.ts +16 -0
- package/dist/events/EventBus.d.ts.map +1 -0
- package/dist/index.cjs.js +515 -505
- package/dist/index.cjs.js.map +3 -3
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +582 -574
- package/dist/index.es.js.map +3 -3
- package/dist/platform/createPlatformAPI.d.ts +21 -0
- package/dist/platform/createPlatformAPI.d.ts.map +1 -0
- package/dist/registry/ModuleRegistry.d.ts +20 -0
- package/dist/registry/ModuleRegistry.d.ts.map +1 -0
- package/dist/types/context.d.ts +26 -0
- package/dist/types/context.d.ts.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/module.d.ts +22 -0
- package/dist/types/module.d.ts.map +1 -0
- package/dist/types/navigation.d.ts +53 -0
- package/dist/types/navigation.d.ts.map +1 -0
- package/dist/types/platform.d.ts +39 -0
- package/dist/types/platform.d.ts.map +1 -0
- package/dist/utils/cn.d.ts +7 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/package.json +2 -1
package/dist/index.es.js
CHANGED
|
@@ -3,7 +3,7 @@ import * as React52 from "react";
|
|
|
3
3
|
|
|
4
4
|
// src/context/ShellContext.tsx
|
|
5
5
|
import { createContext, useCallback, useContext, useMemo, useState } from "react";
|
|
6
|
-
import {
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
var ShellContext = createContext(null);
|
|
8
8
|
function useShell() {
|
|
9
9
|
const ctx = useContext(ShellContext);
|
|
@@ -16,7 +16,7 @@ function ShellProvider({ children, initialRoute }) {
|
|
|
16
16
|
const [navCollapsed, setNavCollapsed] = useState(false);
|
|
17
17
|
const [pageTitle, setPageTitle] = useState(undefined);
|
|
18
18
|
const [activeRoute, setActiveRoute] = useState(initialRoute);
|
|
19
|
-
const stableSetNavCollapsed = useCallback((
|
|
19
|
+
const stableSetNavCollapsed = useCallback((value) => setNavCollapsed(value), []);
|
|
20
20
|
const stableSetPageTitle = useCallback((t) => setPageTitle(t), []);
|
|
21
21
|
const stableSetActiveRoute = useCallback((r) => setActiveRoute(r), []);
|
|
22
22
|
const value = useMemo(() => ({
|
|
@@ -27,10 +27,10 @@ function ShellProvider({ children, initialRoute }) {
|
|
|
27
27
|
activeRoute,
|
|
28
28
|
setActiveRoute: stableSetActiveRoute
|
|
29
29
|
}), [navCollapsed, stableSetNavCollapsed, pageTitle, stableSetPageTitle, activeRoute, stableSetActiveRoute]);
|
|
30
|
-
return /* @__PURE__ */
|
|
30
|
+
return /* @__PURE__ */ jsx(ShellContext.Provider, {
|
|
31
31
|
value,
|
|
32
32
|
children
|
|
33
|
-
}
|
|
33
|
+
});
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
// src/components/Header.tsx
|
|
@@ -181,7 +181,7 @@ var IS_DEVELOPMENT = true;
|
|
|
181
181
|
|
|
182
182
|
// ../../node_modules/.pnpm/@radix-ui+react-context@1.2.2_@types+react@18.3.31_react@18.3.1/node_modules/@radix-ui/react-context/dist/index.mjs
|
|
183
183
|
import * as React2 from "react";
|
|
184
|
-
import { jsx } from "react/jsx-runtime";
|
|
184
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
185
185
|
var __defProp = Object.defineProperty;
|
|
186
186
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
187
187
|
function createContext22(rootComponentName, defaultContext) {
|
|
@@ -190,7 +190,7 @@ function createContext22(rootComponentName, defaultContext) {
|
|
|
190
190
|
const Provider = /* @__PURE__ */ __name((props) => {
|
|
191
191
|
const { children, ...context } = props;
|
|
192
192
|
const value = React2.useMemo(() => context, Object.values(context));
|
|
193
|
-
return /* @__PURE__ */
|
|
193
|
+
return /* @__PURE__ */ jsx2(Context.Provider, { value, children });
|
|
194
194
|
}, "Provider");
|
|
195
195
|
Provider.displayName = rootComponentName + "Provider";
|
|
196
196
|
function useContext22(consumerName, options = {}) {
|
|
@@ -213,18 +213,18 @@ function createContextScope(scopeName, createContextScopeDeps = []) {
|
|
|
213
213
|
function createContext3(rootComponentName, defaultContext) {
|
|
214
214
|
const BaseContext = React2.createContext(defaultContext);
|
|
215
215
|
BaseContext.displayName = rootComponentName + "Context";
|
|
216
|
-
const
|
|
216
|
+
const index = defaultContexts.length;
|
|
217
217
|
defaultContexts = [...defaultContexts, defaultContext];
|
|
218
218
|
const Provider = /* @__PURE__ */ __name((props) => {
|
|
219
219
|
const { scope, children, ...context } = props;
|
|
220
|
-
const Context = scope?.[scopeName]?.[
|
|
220
|
+
const Context = scope?.[scopeName]?.[index] || BaseContext;
|
|
221
221
|
const value = React2.useMemo(() => context, Object.values(context));
|
|
222
|
-
return /* @__PURE__ */
|
|
222
|
+
return /* @__PURE__ */ jsx2(Context.Provider, { value, children });
|
|
223
223
|
}, "Provider");
|
|
224
224
|
Provider.displayName = rootComponentName + "Provider";
|
|
225
225
|
function useContext22(consumerName, scope, options = {}) {
|
|
226
226
|
const { optional = false } = options;
|
|
227
|
-
const Context = scope?.[scopeName]?.[
|
|
227
|
+
const Context = scope?.[scopeName]?.[index] || BaseContext;
|
|
228
228
|
const context = React2.useContext(Context);
|
|
229
229
|
if (context)
|
|
230
230
|
return context;
|
|
@@ -468,7 +468,7 @@ var createSlottableError = /* @__PURE__ */ __name4((ownerName) => {
|
|
|
468
468
|
var use = React6[" use ".trim().toString()];
|
|
469
469
|
|
|
470
470
|
// ../../node_modules/.pnpm/@radix-ui+react-primitive@2.1.10_@types+react-dom@18.3.7_@types+react@18.3.31__@types+r_dba614f83980a1ab9805a3f12c0d2bc2/node_modules/@radix-ui/react-primitive/dist/index.mjs
|
|
471
|
-
import { jsx as
|
|
471
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
472
472
|
var __defProp5 = Object.defineProperty;
|
|
473
473
|
var __name5 = (target, value) => __defProp5(target, "name", { value, configurable: true });
|
|
474
474
|
var NODES = [
|
|
@@ -491,14 +491,14 @@ var NODES = [
|
|
|
491
491
|
"ul"
|
|
492
492
|
];
|
|
493
493
|
var Primitive = NODES.reduce((primitive, node) => {
|
|
494
|
-
const
|
|
494
|
+
const Slot = createSlot(`Primitive.${node}`);
|
|
495
495
|
const Node2 = React7.forwardRef((props, forwardedRef) => {
|
|
496
496
|
const { asChild, ...primitiveProps } = props;
|
|
497
|
-
const Comp = asChild ?
|
|
497
|
+
const Comp = asChild ? Slot : node;
|
|
498
498
|
if (typeof window !== "undefined") {
|
|
499
499
|
window[Symbol.for("radix-ui")] = true;
|
|
500
500
|
}
|
|
501
|
-
return /* @__PURE__ */
|
|
501
|
+
return /* @__PURE__ */ jsx3(Comp, { ...primitiveProps, ref: forwardedRef });
|
|
502
502
|
});
|
|
503
503
|
Node2.displayName = `Primitive.${node}`;
|
|
504
504
|
return { ...primitive, [node]: Node2 };
|
|
@@ -510,7 +510,7 @@ function dispatchDiscreteCustomEvent(target, event) {
|
|
|
510
510
|
__name5(dispatchDiscreteCustomEvent, "dispatchDiscreteCustomEvent");
|
|
511
511
|
|
|
512
512
|
// ../../node_modules/.pnpm/@radix-ui+react-avatar@1.2.6_@types+react-dom@18.3.7_@types+react@18.3.31__@types+react_e6c996e5557b18a376135b2452a80188/node_modules/@radix-ui/react-avatar/dist/index.mjs
|
|
513
|
-
import { jsx as
|
|
513
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
514
514
|
"use client";
|
|
515
515
|
var __defProp6 = Object.defineProperty;
|
|
516
516
|
var __name6 = (target, value) => __defProp6(target, "name", { value, configurable: true });
|
|
@@ -527,13 +527,13 @@ var Avatar = /* @__PURE__ */ React8.forwardRef(/* @__PURE__ */ __name6(function
|
|
|
527
527
|
const { __scopeAvatar, ...avatarProps } = props;
|
|
528
528
|
const [imageLoadingStatus, setImageLoadingStatus] = React8.useState("idle");
|
|
529
529
|
const [imageCount, setImageCount] = useImageCount();
|
|
530
|
-
return /* @__PURE__ */
|
|
530
|
+
return /* @__PURE__ */ jsx4(AvatarProvider, {
|
|
531
531
|
scope: __scopeAvatar,
|
|
532
532
|
imageLoadingStatus,
|
|
533
533
|
setImageLoadingStatus,
|
|
534
534
|
imageCount,
|
|
535
535
|
setImageCount,
|
|
536
|
-
children: /* @__PURE__ */
|
|
536
|
+
children: /* @__PURE__ */ jsx4(Primitive.span, { ...avatarProps, ref: forwardedRef })
|
|
537
537
|
});
|
|
538
538
|
}, "Avatar"));
|
|
539
539
|
var IMAGE_NAME = "AvatarImage";
|
|
@@ -558,7 +558,7 @@ var AvatarImage = /* @__PURE__ */ React8.forwardRef(/* @__PURE__ */ __name6(func
|
|
|
558
558
|
handleLoadingStatusChange(imageLoadingStatus);
|
|
559
559
|
}
|
|
560
560
|
}, [imageLoadingStatus, handleLoadingStatusChange]);
|
|
561
|
-
return imageLoadingStatus === "loaded" ? /* @__PURE__ */
|
|
561
|
+
return imageLoadingStatus === "loaded" ? /* @__PURE__ */ jsx4(Primitive.img, { ...imageProps, ref: forwardedRef, src }) : null;
|
|
562
562
|
}, "AvatarImage"));
|
|
563
563
|
var FALLBACK_NAME = "AvatarFallback";
|
|
564
564
|
var AvatarFallback = /* @__PURE__ */ React8.forwardRef(/* @__PURE__ */ __name6(function AvatarFallback2(props, forwardedRef) {
|
|
@@ -571,7 +571,7 @@ var AvatarFallback = /* @__PURE__ */ React8.forwardRef(/* @__PURE__ */ __name6(f
|
|
|
571
571
|
return () => window.clearTimeout(timerId);
|
|
572
572
|
}
|
|
573
573
|
}, [delayMs]);
|
|
574
|
-
return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */
|
|
574
|
+
return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ jsx4(Primitive.span, { ...fallbackProps, ref: forwardedRef }) : null;
|
|
575
575
|
}, "AvatarFallback"));
|
|
576
576
|
function useImageLoadingStatus(src, {
|
|
577
577
|
loadingStatus,
|
|
@@ -882,16 +882,16 @@ var createParseClassName = (config) => {
|
|
|
882
882
|
let modifierStart = 0;
|
|
883
883
|
let postfixModifierPosition;
|
|
884
884
|
const len = className.length;
|
|
885
|
-
for (let
|
|
886
|
-
const currentCharacter = className[
|
|
885
|
+
for (let index = 0;index < len; index++) {
|
|
886
|
+
const currentCharacter = className[index];
|
|
887
887
|
if (bracketDepth === 0 && parenDepth === 0) {
|
|
888
888
|
if (currentCharacter === MODIFIER_SEPARATOR) {
|
|
889
|
-
modifiers.push(className.slice(modifierStart,
|
|
890
|
-
modifierStart =
|
|
889
|
+
modifiers.push(className.slice(modifierStart, index));
|
|
890
|
+
modifierStart = index + 1;
|
|
891
891
|
continue;
|
|
892
892
|
}
|
|
893
893
|
if (currentCharacter === "/") {
|
|
894
|
-
postfixModifierPosition =
|
|
894
|
+
postfixModifierPosition = index;
|
|
895
895
|
continue;
|
|
896
896
|
}
|
|
897
897
|
}
|
|
@@ -933,8 +933,8 @@ var createParseClassName = (config) => {
|
|
|
933
933
|
};
|
|
934
934
|
var createSortModifiers = (config) => {
|
|
935
935
|
const modifierWeights = new Map;
|
|
936
|
-
config.orderSensitiveModifiers.forEach((mod,
|
|
937
|
-
modifierWeights.set(mod, 1e6 +
|
|
936
|
+
config.orderSensitiveModifiers.forEach((mod, index) => {
|
|
937
|
+
modifierWeights.set(mod, 1e6 + index);
|
|
938
938
|
});
|
|
939
939
|
return (modifiers) => {
|
|
940
940
|
const result = [];
|
|
@@ -990,8 +990,8 @@ var mergeClassList = (classList, configUtils) => {
|
|
|
990
990
|
const classGroupsInConflict = [];
|
|
991
991
|
const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
|
|
992
992
|
let result = "";
|
|
993
|
-
for (let
|
|
994
|
-
const originalClassName = classNames[
|
|
993
|
+
for (let index = classNames.length - 1;index >= 0; index -= 1) {
|
|
994
|
+
const originalClassName = classNames[index];
|
|
995
995
|
const {
|
|
996
996
|
isExternal,
|
|
997
997
|
modifiers,
|
|
@@ -1045,12 +1045,12 @@ var mergeClassList = (classList, configUtils) => {
|
|
|
1045
1045
|
return result;
|
|
1046
1046
|
};
|
|
1047
1047
|
var twJoin = (...classLists) => {
|
|
1048
|
-
let
|
|
1048
|
+
let index = 0;
|
|
1049
1049
|
let argument;
|
|
1050
1050
|
let resolvedValue;
|
|
1051
1051
|
let string = "";
|
|
1052
|
-
while (
|
|
1053
|
-
if (argument = classLists[
|
|
1052
|
+
while (index < classLists.length) {
|
|
1053
|
+
if (argument = classLists[index++]) {
|
|
1054
1054
|
if (resolvedValue = toValue(argument)) {
|
|
1055
1055
|
string && (string += " ");
|
|
1056
1056
|
string += resolvedValue;
|
|
@@ -2488,25 +2488,25 @@ function cn(...inputs) {
|
|
|
2488
2488
|
}
|
|
2489
2489
|
|
|
2490
2490
|
// src/components/ui/avatar.tsx
|
|
2491
|
-
import {
|
|
2492
|
-
var
|
|
2491
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
2492
|
+
var Avatar2 = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(Avatar, {
|
|
2493
2493
|
ref,
|
|
2494
2494
|
className: cn("relative flex h-8 w-8 shrink-0 overflow-hidden rounded-full", className),
|
|
2495
2495
|
...props
|
|
2496
|
-
}
|
|
2497
|
-
|
|
2498
|
-
var
|
|
2496
|
+
}));
|
|
2497
|
+
Avatar2.displayName = Avatar.displayName;
|
|
2498
|
+
var AvatarImage2 = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(AvatarImage, {
|
|
2499
2499
|
ref,
|
|
2500
2500
|
className: cn("aspect-square h-full w-full object-cover", className),
|
|
2501
2501
|
...props
|
|
2502
|
-
}
|
|
2503
|
-
|
|
2504
|
-
var
|
|
2502
|
+
}));
|
|
2503
|
+
AvatarImage2.displayName = AvatarImage.displayName;
|
|
2504
|
+
var AvatarFallback2 = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(AvatarFallback, {
|
|
2505
2505
|
ref,
|
|
2506
2506
|
className: cn("flex h-full w-full items-center justify-center rounded-full", "bg-action-primary text-xs font-semibold text-content-inverse", className),
|
|
2507
2507
|
...props
|
|
2508
|
-
}
|
|
2509
|
-
|
|
2508
|
+
}));
|
|
2509
|
+
AvatarFallback2.displayName = AvatarFallback.displayName;
|
|
2510
2510
|
|
|
2511
2511
|
// src/components/ui/dropdown-menu.tsx
|
|
2512
2512
|
import * as React38 from "react";
|
|
@@ -2722,7 +2722,7 @@ import * as React36 from "react";
|
|
|
2722
2722
|
|
|
2723
2723
|
// ../../node_modules/.pnpm/@radix-ui+react-collection@1.1.15_@types+react-dom@18.3.7_@types+react@18.3.31__@types+_e568781db46e6f5e62f713df7975a3a9/node_modules/@radix-ui/react-collection/dist/index.mjs
|
|
2724
2724
|
import * as React12 from "react";
|
|
2725
|
-
import { jsx as
|
|
2725
|
+
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
2726
2726
|
import * as React23 from "react";
|
|
2727
2727
|
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
2728
2728
|
"use client";
|
|
@@ -2736,7 +2736,7 @@ function createCollection(name) {
|
|
|
2736
2736
|
const { scope, children } = props;
|
|
2737
2737
|
const ref = React12.useRef(null);
|
|
2738
2738
|
const itemMap = React12.useRef(/* @__PURE__ */ new Map).current;
|
|
2739
|
-
return /* @__PURE__ */
|
|
2739
|
+
return /* @__PURE__ */ jsx6(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });
|
|
2740
2740
|
}, "CollectionProvider");
|
|
2741
2741
|
CollectionProvider.displayName = PROVIDER_NAME;
|
|
2742
2742
|
const COLLECTION_SLOT_NAME = name + "CollectionSlot";
|
|
@@ -2745,7 +2745,7 @@ function createCollection(name) {
|
|
|
2745
2745
|
const { scope, children } = props;
|
|
2746
2746
|
const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
|
|
2747
2747
|
const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
|
|
2748
|
-
return /* @__PURE__ */
|
|
2748
|
+
return /* @__PURE__ */ jsx6(CollectionSlotImpl, { ref: composedRefs, children });
|
|
2749
2749
|
});
|
|
2750
2750
|
CollectionSlot.displayName = COLLECTION_SLOT_NAME;
|
|
2751
2751
|
const ITEM_SLOT_NAME = name + "CollectionItemSlot";
|
|
@@ -2760,7 +2760,7 @@ function createCollection(name) {
|
|
|
2760
2760
|
context.itemMap.set(ref, { ref, ...itemData });
|
|
2761
2761
|
return () => void context.itemMap.delete(ref);
|
|
2762
2762
|
});
|
|
2763
|
-
return /* @__PURE__ */
|
|
2763
|
+
return /* @__PURE__ */ jsx6(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: "" }, ref: composedRefs, children });
|
|
2764
2764
|
});
|
|
2765
2765
|
CollectionItemSlot.displayName = ITEM_SLOT_NAME;
|
|
2766
2766
|
function useCollection(scope) {
|
|
@@ -2806,10 +2806,10 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2806
2806
|
super.set(key, value);
|
|
2807
2807
|
return this;
|
|
2808
2808
|
}
|
|
2809
|
-
insert(
|
|
2809
|
+
insert(index, key, value) {
|
|
2810
2810
|
const has = this.has(key);
|
|
2811
2811
|
const length = this.#keys.length;
|
|
2812
|
-
const relativeIndex = toSafeInteger(
|
|
2812
|
+
const relativeIndex = toSafeInteger(index);
|
|
2813
2813
|
let actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;
|
|
2814
2814
|
const safeIndex = actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;
|
|
2815
2815
|
if (safeIndex === this.size || has && safeIndex === this.size - 1 || safeIndex === -1) {
|
|
@@ -2847,39 +2847,39 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2847
2847
|
}
|
|
2848
2848
|
return this;
|
|
2849
2849
|
}
|
|
2850
|
-
with(
|
|
2850
|
+
with(index, key, value) {
|
|
2851
2851
|
const copy = new _OrderedDict(this);
|
|
2852
|
-
copy.insert(
|
|
2852
|
+
copy.insert(index, key, value);
|
|
2853
2853
|
return copy;
|
|
2854
2854
|
}
|
|
2855
2855
|
before(key) {
|
|
2856
|
-
const
|
|
2857
|
-
if (
|
|
2856
|
+
const index = this.#keys.indexOf(key) - 1;
|
|
2857
|
+
if (index < 0) {
|
|
2858
2858
|
return;
|
|
2859
2859
|
}
|
|
2860
|
-
return this.entryAt(
|
|
2860
|
+
return this.entryAt(index);
|
|
2861
2861
|
}
|
|
2862
2862
|
setBefore(key, newKey, value) {
|
|
2863
|
-
const
|
|
2864
|
-
if (
|
|
2863
|
+
const index = this.#keys.indexOf(key);
|
|
2864
|
+
if (index === -1) {
|
|
2865
2865
|
return this;
|
|
2866
2866
|
}
|
|
2867
|
-
return this.insert(
|
|
2867
|
+
return this.insert(index, newKey, value);
|
|
2868
2868
|
}
|
|
2869
2869
|
after(key) {
|
|
2870
|
-
let
|
|
2871
|
-
|
|
2872
|
-
if (
|
|
2870
|
+
let index = this.#keys.indexOf(key);
|
|
2871
|
+
index = index === -1 || index === this.size - 1 ? -1 : index + 1;
|
|
2872
|
+
if (index === -1) {
|
|
2873
2873
|
return;
|
|
2874
2874
|
}
|
|
2875
|
-
return this.entryAt(
|
|
2875
|
+
return this.entryAt(index);
|
|
2876
2876
|
}
|
|
2877
2877
|
setAfter(key, newKey, value) {
|
|
2878
|
-
const
|
|
2879
|
-
if (
|
|
2878
|
+
const index = this.#keys.indexOf(key);
|
|
2879
|
+
if (index === -1) {
|
|
2880
2880
|
return this;
|
|
2881
2881
|
}
|
|
2882
|
-
return this.insert(
|
|
2882
|
+
return this.insert(index + 1, newKey, value);
|
|
2883
2883
|
}
|
|
2884
2884
|
first() {
|
|
2885
2885
|
return this.entryAt(0);
|
|
@@ -2898,21 +2898,21 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2898
2898
|
}
|
|
2899
2899
|
return deleted;
|
|
2900
2900
|
}
|
|
2901
|
-
deleteAt(
|
|
2902
|
-
const key = this.keyAt(
|
|
2901
|
+
deleteAt(index) {
|
|
2902
|
+
const key = this.keyAt(index);
|
|
2903
2903
|
if (key !== undefined) {
|
|
2904
2904
|
return this.delete(key);
|
|
2905
2905
|
}
|
|
2906
2906
|
return false;
|
|
2907
2907
|
}
|
|
2908
|
-
at(
|
|
2909
|
-
const key = at(this.#keys,
|
|
2908
|
+
at(index) {
|
|
2909
|
+
const key = at(this.#keys, index);
|
|
2910
2910
|
if (key !== undefined) {
|
|
2911
2911
|
return this.get(key);
|
|
2912
2912
|
}
|
|
2913
2913
|
}
|
|
2914
|
-
entryAt(
|
|
2915
|
-
const key = at(this.#keys,
|
|
2914
|
+
entryAt(index) {
|
|
2915
|
+
const key = at(this.#keys, index);
|
|
2916
2916
|
if (key !== undefined) {
|
|
2917
2917
|
return [key, this.get(key)];
|
|
2918
2918
|
}
|
|
@@ -2920,15 +2920,15 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2920
2920
|
indexOf(key) {
|
|
2921
2921
|
return this.#keys.indexOf(key);
|
|
2922
2922
|
}
|
|
2923
|
-
keyAt(
|
|
2924
|
-
return at(this.#keys,
|
|
2923
|
+
keyAt(index) {
|
|
2924
|
+
return at(this.#keys, index);
|
|
2925
2925
|
}
|
|
2926
2926
|
from(key, offset) {
|
|
2927
|
-
const
|
|
2928
|
-
if (
|
|
2927
|
+
const index = this.indexOf(key);
|
|
2928
|
+
if (index === -1) {
|
|
2929
2929
|
return;
|
|
2930
2930
|
}
|
|
2931
|
-
let dest =
|
|
2931
|
+
let dest = index + offset;
|
|
2932
2932
|
if (dest < 0)
|
|
2933
2933
|
dest = 0;
|
|
2934
2934
|
if (dest >= this.size)
|
|
@@ -2936,11 +2936,11 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2936
2936
|
return this.at(dest);
|
|
2937
2937
|
}
|
|
2938
2938
|
keyFrom(key, offset) {
|
|
2939
|
-
const
|
|
2940
|
-
if (
|
|
2939
|
+
const index = this.indexOf(key);
|
|
2940
|
+
if (index === -1) {
|
|
2941
2941
|
return;
|
|
2942
2942
|
}
|
|
2943
|
-
let dest =
|
|
2943
|
+
let dest = index + offset;
|
|
2944
2944
|
if (dest < 0)
|
|
2945
2945
|
dest = 0;
|
|
2946
2946
|
if (dest >= this.size)
|
|
@@ -2948,68 +2948,68 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
2948
2948
|
return this.keyAt(dest);
|
|
2949
2949
|
}
|
|
2950
2950
|
find(predicate, thisArg) {
|
|
2951
|
-
let
|
|
2951
|
+
let index = 0;
|
|
2952
2952
|
for (const entry of this) {
|
|
2953
|
-
if (Reflect.apply(predicate, thisArg, [entry,
|
|
2953
|
+
if (Reflect.apply(predicate, thisArg, [entry, index, this])) {
|
|
2954
2954
|
return entry;
|
|
2955
2955
|
}
|
|
2956
|
-
|
|
2956
|
+
index++;
|
|
2957
2957
|
}
|
|
2958
2958
|
return;
|
|
2959
2959
|
}
|
|
2960
2960
|
findIndex(predicate, thisArg) {
|
|
2961
|
-
let
|
|
2961
|
+
let index = 0;
|
|
2962
2962
|
for (const entry of this) {
|
|
2963
|
-
if (Reflect.apply(predicate, thisArg, [entry,
|
|
2964
|
-
return
|
|
2963
|
+
if (Reflect.apply(predicate, thisArg, [entry, index, this])) {
|
|
2964
|
+
return index;
|
|
2965
2965
|
}
|
|
2966
|
-
|
|
2966
|
+
index++;
|
|
2967
2967
|
}
|
|
2968
2968
|
return -1;
|
|
2969
2969
|
}
|
|
2970
2970
|
filter(predicate, thisArg) {
|
|
2971
2971
|
const entries = [];
|
|
2972
|
-
let
|
|
2972
|
+
let index = 0;
|
|
2973
2973
|
for (const entry of this) {
|
|
2974
|
-
if (Reflect.apply(predicate, thisArg, [entry,
|
|
2974
|
+
if (Reflect.apply(predicate, thisArg, [entry, index, this])) {
|
|
2975
2975
|
entries.push(entry);
|
|
2976
2976
|
}
|
|
2977
|
-
|
|
2977
|
+
index++;
|
|
2978
2978
|
}
|
|
2979
2979
|
return new _OrderedDict(entries);
|
|
2980
2980
|
}
|
|
2981
2981
|
map(callbackfn, thisArg) {
|
|
2982
2982
|
const entries = [];
|
|
2983
|
-
let
|
|
2983
|
+
let index = 0;
|
|
2984
2984
|
for (const entry of this) {
|
|
2985
|
-
entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry,
|
|
2986
|
-
|
|
2985
|
+
entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry, index, this])]);
|
|
2986
|
+
index++;
|
|
2987
2987
|
}
|
|
2988
2988
|
return new _OrderedDict(entries);
|
|
2989
2989
|
}
|
|
2990
2990
|
reduce(...args) {
|
|
2991
2991
|
const [callbackfn, initialValue] = args;
|
|
2992
|
-
let
|
|
2992
|
+
let index = 0;
|
|
2993
2993
|
let accumulator = initialValue ?? this.at(0);
|
|
2994
2994
|
for (const entry of this) {
|
|
2995
|
-
if (
|
|
2995
|
+
if (index === 0 && args.length === 1) {
|
|
2996
2996
|
accumulator = entry;
|
|
2997
2997
|
} else {
|
|
2998
|
-
accumulator = Reflect.apply(callbackfn, this, [accumulator, entry,
|
|
2998
|
+
accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);
|
|
2999
2999
|
}
|
|
3000
|
-
|
|
3000
|
+
index++;
|
|
3001
3001
|
}
|
|
3002
3002
|
return accumulator;
|
|
3003
3003
|
}
|
|
3004
3004
|
reduceRight(...args) {
|
|
3005
3005
|
const [callbackfn, initialValue] = args;
|
|
3006
3006
|
let accumulator = initialValue ?? this.at(-1);
|
|
3007
|
-
for (let
|
|
3008
|
-
const entry = this.at(
|
|
3009
|
-
if (
|
|
3007
|
+
for (let index = this.size - 1;index >= 0; index--) {
|
|
3008
|
+
const entry = this.at(index);
|
|
3009
|
+
if (index === this.size - 1 && args.length === 1) {
|
|
3010
3010
|
accumulator = entry;
|
|
3011
3011
|
} else {
|
|
3012
|
-
accumulator = Reflect.apply(callbackfn, this, [accumulator, entry,
|
|
3012
|
+
accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);
|
|
3013
3013
|
}
|
|
3014
3014
|
}
|
|
3015
3015
|
return accumulator;
|
|
@@ -3020,8 +3020,8 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
3020
3020
|
}
|
|
3021
3021
|
toReversed() {
|
|
3022
3022
|
const reversed = new _OrderedDict;
|
|
3023
|
-
for (let
|
|
3024
|
-
const key = this.keyAt(
|
|
3023
|
+
for (let index = this.size - 1;index >= 0; index--) {
|
|
3024
|
+
const key = this.keyAt(index);
|
|
3025
3025
|
const element = this.get(key);
|
|
3026
3026
|
reversed.set(key, element);
|
|
3027
3027
|
}
|
|
@@ -3044,45 +3044,45 @@ var OrderedDict = class _OrderedDict extends Map {
|
|
|
3044
3044
|
if (end !== undefined && end > 0) {
|
|
3045
3045
|
stop = end - 1;
|
|
3046
3046
|
}
|
|
3047
|
-
for (let
|
|
3048
|
-
const key = this.keyAt(
|
|
3047
|
+
for (let index = start;index <= stop; index++) {
|
|
3048
|
+
const key = this.keyAt(index);
|
|
3049
3049
|
const element = this.get(key);
|
|
3050
3050
|
result.set(key, element);
|
|
3051
3051
|
}
|
|
3052
3052
|
return result;
|
|
3053
3053
|
}
|
|
3054
3054
|
every(predicate, thisArg) {
|
|
3055
|
-
let
|
|
3055
|
+
let index = 0;
|
|
3056
3056
|
for (const entry of this) {
|
|
3057
|
-
if (!Reflect.apply(predicate, thisArg, [entry,
|
|
3057
|
+
if (!Reflect.apply(predicate, thisArg, [entry, index, this])) {
|
|
3058
3058
|
return false;
|
|
3059
3059
|
}
|
|
3060
|
-
|
|
3060
|
+
index++;
|
|
3061
3061
|
}
|
|
3062
3062
|
return true;
|
|
3063
3063
|
}
|
|
3064
3064
|
some(predicate, thisArg) {
|
|
3065
|
-
let
|
|
3065
|
+
let index = 0;
|
|
3066
3066
|
for (const entry of this) {
|
|
3067
|
-
if (Reflect.apply(predicate, thisArg, [entry,
|
|
3067
|
+
if (Reflect.apply(predicate, thisArg, [entry, index, this])) {
|
|
3068
3068
|
return true;
|
|
3069
3069
|
}
|
|
3070
|
-
|
|
3070
|
+
index++;
|
|
3071
3071
|
}
|
|
3072
3072
|
return false;
|
|
3073
3073
|
}
|
|
3074
3074
|
};
|
|
3075
|
-
function at(array,
|
|
3075
|
+
function at(array, index) {
|
|
3076
3076
|
if ("at" in Array.prototype) {
|
|
3077
|
-
return Array.prototype.at.call(array,
|
|
3077
|
+
return Array.prototype.at.call(array, index);
|
|
3078
3078
|
}
|
|
3079
|
-
const actualIndex = toSafeIndex(array,
|
|
3079
|
+
const actualIndex = toSafeIndex(array, index);
|
|
3080
3080
|
return actualIndex === -1 ? undefined : array[actualIndex];
|
|
3081
3081
|
}
|
|
3082
3082
|
__name10(at, "at");
|
|
3083
|
-
function toSafeIndex(array,
|
|
3083
|
+
function toSafeIndex(array, index) {
|
|
3084
3084
|
const length = array.length;
|
|
3085
|
-
const relativeIndex = toSafeInteger(
|
|
3085
|
+
const relativeIndex = toSafeInteger(index);
|
|
3086
3086
|
const actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;
|
|
3087
3087
|
return actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;
|
|
3088
3088
|
}
|
|
@@ -3116,7 +3116,7 @@ function createCollection2(name) {
|
|
|
3116
3116
|
const { scope, children, state } = props;
|
|
3117
3117
|
const ref = React23.useRef(null);
|
|
3118
3118
|
const [collectionElement, setCollectionElement] = React23.useState(null);
|
|
3119
|
-
const
|
|
3119
|
+
const composeRefs = useComposedRefs(ref, setCollectionElement);
|
|
3120
3120
|
const [itemMap, setItemMap] = state;
|
|
3121
3121
|
React23.useEffect(() => {
|
|
3122
3122
|
if (!collectionElement)
|
|
@@ -3134,7 +3134,7 @@ function createCollection2(name) {
|
|
|
3134
3134
|
scope,
|
|
3135
3135
|
itemMap,
|
|
3136
3136
|
setItemMap,
|
|
3137
|
-
collectionRef:
|
|
3137
|
+
collectionRef: composeRefs,
|
|
3138
3138
|
collectionRefObject: ref,
|
|
3139
3139
|
collectionElement,
|
|
3140
3140
|
children
|
|
@@ -3253,7 +3253,7 @@ __name10(getChildListObserver, "getChildListObserver");
|
|
|
3253
3253
|
|
|
3254
3254
|
// ../../node_modules/.pnpm/@radix-ui+react-direction@1.1.4_@types+react@18.3.31_react@18.3.1/node_modules/@radix-ui/react-direction/dist/index.mjs
|
|
3255
3255
|
import * as React13 from "react";
|
|
3256
|
-
import { jsx as
|
|
3256
|
+
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
3257
3257
|
"use client";
|
|
3258
3258
|
var __defProp11 = Object.defineProperty;
|
|
3259
3259
|
var __name11 = (target, value) => __defProp11(target, "name", { value, configurable: true });
|
|
@@ -3266,7 +3266,7 @@ __name11(useDirection, "useDirection");
|
|
|
3266
3266
|
|
|
3267
3267
|
// ../../node_modules/.pnpm/@radix-ui+react-dismissable-layer@1.1.19_@types+react-dom@18.3.7_@types+react@18.3.31___4f2024a88a120e800aa2287adeb24710/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs
|
|
3268
3268
|
import * as React14 from "react";
|
|
3269
|
-
import { jsx as
|
|
3269
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
3270
3270
|
"use client";
|
|
3271
3271
|
var __defProp12 = Object.defineProperty;
|
|
3272
3272
|
var __name12 = (target, value) => __defProp12(target, "name", { value, configurable: true });
|
|
@@ -3301,9 +3301,9 @@ var DismissableLayer = /* @__PURE__ */ React14.forwardRef(/* @__PURE__ */ __name
|
|
|
3301
3301
|
...context.layersWithOutsidePointerEventsDisabled
|
|
3302
3302
|
].slice(-1);
|
|
3303
3303
|
const highestLayerWithOutsidePointerEventsDisabledIndex = highestLayerWithOutsidePointerEventsDisabled ? layers.indexOf(highestLayerWithOutsidePointerEventsDisabled) : -1;
|
|
3304
|
-
const
|
|
3304
|
+
const index = node ? layers.indexOf(node) : -1;
|
|
3305
3305
|
const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;
|
|
3306
|
-
const isPointerEventsEnabled =
|
|
3306
|
+
const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;
|
|
3307
3307
|
const isDeferredPointerDownOutsideRef = React14.useRef(false);
|
|
3308
3308
|
const pointerDownOutside = usePointerDownOutside((event) => {
|
|
3309
3309
|
onPointerDownOutside?.(event);
|
|
@@ -3336,7 +3336,7 @@ var DismissableLayer = /* @__PURE__ */ React14.forwardRef(/* @__PURE__ */ __name
|
|
|
3336
3336
|
if (!event.defaultPrevented)
|
|
3337
3337
|
onDismiss?.();
|
|
3338
3338
|
}, ownerDocument);
|
|
3339
|
-
const isHighestLayer = node ?
|
|
3339
|
+
const isHighestLayer = node ? index === layers.length - 1 : false;
|
|
3340
3340
|
const handleKeyDown = useCallbackRef((event) => {
|
|
3341
3341
|
if (event.key !== "Escape") {
|
|
3342
3342
|
return;
|
|
@@ -3389,7 +3389,7 @@ var DismissableLayer = /* @__PURE__ */ React14.forwardRef(/* @__PURE__ */ __name
|
|
|
3389
3389
|
document.addEventListener(CONTEXT_UPDATE, handleUpdate);
|
|
3390
3390
|
return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);
|
|
3391
3391
|
}, []);
|
|
3392
|
-
return /* @__PURE__ */
|
|
3392
|
+
return /* @__PURE__ */ jsx8(Primitive.div, {
|
|
3393
3393
|
...layerProps,
|
|
3394
3394
|
ref: composedRefs,
|
|
3395
3395
|
style: {
|
|
@@ -3626,7 +3626,7 @@ __name13(createFocusGuard, "createFocusGuard");
|
|
|
3626
3626
|
|
|
3627
3627
|
// ../../node_modules/.pnpm/@radix-ui+react-focus-scope@1.1.16_@types+react-dom@18.3.7_@types+react@18.3.31__@types_161760c0d51338f080e5b66a9ea35f08/node_modules/@radix-ui/react-focus-scope/dist/index.mjs
|
|
3628
3628
|
import * as React16 from "react";
|
|
3629
|
-
import { jsx as
|
|
3629
|
+
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
3630
3630
|
"use client";
|
|
3631
3631
|
var __defProp14 = Object.defineProperty;
|
|
3632
3632
|
var __name14 = (target, value) => __defProp14(target, "name", { value, configurable: true });
|
|
@@ -3758,7 +3758,7 @@ var FocusScope = /* @__PURE__ */ React16.forwardRef(/* @__PURE__ */ __name14(fun
|
|
|
3758
3758
|
}
|
|
3759
3759
|
}
|
|
3760
3760
|
}, [loop, trapped, focusScope.paused]);
|
|
3761
|
-
return /* @__PURE__ */
|
|
3761
|
+
return /* @__PURE__ */ jsx9(Primitive.div, { tabIndex: -1, ...scopeProps, ref: composedRefs, onKeyDown: handleKeyDown });
|
|
3762
3762
|
}, "FocusScope"));
|
|
3763
3763
|
function focusFirst(candidates, { select = false } = {}) {
|
|
3764
3764
|
const previouslyFocusedElement = document.activeElement;
|
|
@@ -3848,9 +3848,9 @@ function createFocusScopesStack() {
|
|
|
3848
3848
|
__name14(createFocusScopesStack, "createFocusScopesStack");
|
|
3849
3849
|
function arrayRemove(array, item) {
|
|
3850
3850
|
const updatedArray = [...array];
|
|
3851
|
-
const
|
|
3852
|
-
if (
|
|
3853
|
-
updatedArray.splice(
|
|
3851
|
+
const index = updatedArray.indexOf(item);
|
|
3852
|
+
if (index !== -1) {
|
|
3853
|
+
updatedArray.splice(index, 1);
|
|
3854
3854
|
}
|
|
3855
3855
|
return updatedArray;
|
|
3856
3856
|
}
|
|
@@ -4247,11 +4247,11 @@ var arrow = (options) => ({
|
|
|
4247
4247
|
const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
|
|
4248
4248
|
const minPadding = min(paddingObject[minProp], largestPossiblePadding);
|
|
4249
4249
|
const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
|
|
4250
|
-
const
|
|
4250
|
+
const max = clientSize - arrowDimensions[length] - maxPadding;
|
|
4251
4251
|
const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
|
|
4252
|
-
const offset = clamp(minPadding, center,
|
|
4252
|
+
const offset = clamp(minPadding, center, max);
|
|
4253
4253
|
const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < minPadding ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
|
|
4254
|
-
const alignmentOffset = shouldAddOffset ? center < minPadding ? center - minPadding : center -
|
|
4254
|
+
const alignmentOffset = shouldAddOffset ? center < minPadding ? center - minPadding : center - max : 0;
|
|
4255
4255
|
return {
|
|
4256
4256
|
[axis]: coords[axis] + alignmentOffset,
|
|
4257
4257
|
data: {
|
|
@@ -4303,7 +4303,7 @@ var flip = function(options) {
|
|
|
4303
4303
|
if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {
|
|
4304
4304
|
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
4305
4305
|
}
|
|
4306
|
-
const
|
|
4306
|
+
const placements = [initialPlacement, ...fallbackPlacements];
|
|
4307
4307
|
const overflow = await platform.detectOverflow(state, detectOverflowOptions);
|
|
4308
4308
|
const overflows = [];
|
|
4309
4309
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? undefined : _middlewareData$flip.overflows) || [];
|
|
@@ -4318,10 +4318,10 @@ var flip = function(options) {
|
|
|
4318
4318
|
placement,
|
|
4319
4319
|
overflows
|
|
4320
4320
|
}];
|
|
4321
|
-
if (!overflows.every((
|
|
4321
|
+
if (!overflows.every((side) => side <= 0)) {
|
|
4322
4322
|
var _middlewareData$flip2, _overflowsData$filter;
|
|
4323
4323
|
const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? undefined : _middlewareData$flip2.index) || 0) + 1;
|
|
4324
|
-
const nextPlacement =
|
|
4324
|
+
const nextPlacement = placements[nextIndex];
|
|
4325
4325
|
if (nextPlacement) {
|
|
4326
4326
|
const ignoreCrossAxisOverflow = checkCrossAxis === "alignment" ? initialSideAxis !== getSideAxis(nextPlacement) : false;
|
|
4327
4327
|
if (!ignoreCrossAxisOverflow || overflowsData.every((d) => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) {
|
|
@@ -4341,15 +4341,15 @@ var flip = function(options) {
|
|
|
4341
4341
|
switch (fallbackStrategy) {
|
|
4342
4342
|
case "bestFit": {
|
|
4343
4343
|
var _overflowsData$filter2;
|
|
4344
|
-
const
|
|
4344
|
+
const placement = (_overflowsData$filter2 = overflowsData.filter((d) => {
|
|
4345
4345
|
if (hasFallbackAxisSideDirection) {
|
|
4346
4346
|
const currentSideAxis = getSideAxis(d.placement);
|
|
4347
4347
|
return currentSideAxis === initialSideAxis || currentSideAxis === "y";
|
|
4348
4348
|
}
|
|
4349
4349
|
return true;
|
|
4350
|
-
}).map((d) => [d.placement, d.overflows.filter((
|
|
4351
|
-
if (
|
|
4352
|
-
resetPlacement =
|
|
4350
|
+
}).map((d) => [d.placement, d.overflows.filter((overflow) => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? undefined : _overflowsData$filter2[0];
|
|
4351
|
+
if (placement) {
|
|
4352
|
+
resetPlacement = placement;
|
|
4353
4353
|
}
|
|
4354
4354
|
break;
|
|
4355
4355
|
}
|
|
@@ -4519,12 +4519,12 @@ var shift = function(options) {
|
|
|
4519
4519
|
limiter = {
|
|
4520
4520
|
fn: (_ref) => {
|
|
4521
4521
|
let {
|
|
4522
|
-
x
|
|
4523
|
-
y
|
|
4522
|
+
x,
|
|
4523
|
+
y
|
|
4524
4524
|
} = _ref;
|
|
4525
4525
|
return {
|
|
4526
|
-
x
|
|
4527
|
-
y
|
|
4526
|
+
x,
|
|
4527
|
+
y
|
|
4528
4528
|
};
|
|
4529
4529
|
}
|
|
4530
4530
|
},
|
|
@@ -4581,7 +4581,7 @@ var limitShift = function(options) {
|
|
|
4581
4581
|
middlewareData
|
|
4582
4582
|
} = state;
|
|
4583
4583
|
const {
|
|
4584
|
-
offset
|
|
4584
|
+
offset = 0,
|
|
4585
4585
|
mainAxis: checkMainAxis = true,
|
|
4586
4586
|
crossAxis: checkCrossAxis = true
|
|
4587
4587
|
} = evaluate(options, state);
|
|
@@ -4593,7 +4593,7 @@ var limitShift = function(options) {
|
|
|
4593
4593
|
const mainAxis = getOppositeAxis(crossAxis);
|
|
4594
4594
|
let mainAxisCoord = coords[mainAxis];
|
|
4595
4595
|
let crossAxisCoord = coords[crossAxis];
|
|
4596
|
-
const rawOffset = evaluate(
|
|
4596
|
+
const rawOffset = evaluate(offset, state);
|
|
4597
4597
|
const computedOffset = typeof rawOffset === "number" ? {
|
|
4598
4598
|
mainAxis: rawOffset,
|
|
4599
4599
|
crossAxis: 0
|
|
@@ -5466,7 +5466,7 @@ import * as React18 from "react";
|
|
|
5466
5466
|
import { useLayoutEffect as useLayoutEffect3 } from "react";
|
|
5467
5467
|
import * as ReactDOM2 from "react-dom";
|
|
5468
5468
|
var isClient = typeof document !== "undefined";
|
|
5469
|
-
var noop = function
|
|
5469
|
+
var noop = function noop() {};
|
|
5470
5470
|
var index2 = isClient ? useLayoutEffect3 : noop;
|
|
5471
5471
|
function deepEqual(a, b) {
|
|
5472
5472
|
if (a === b) {
|
|
@@ -5542,7 +5542,7 @@ function useFloating(options) {
|
|
|
5542
5542
|
placement = "bottom",
|
|
5543
5543
|
strategy = "absolute",
|
|
5544
5544
|
middleware = [],
|
|
5545
|
-
platform
|
|
5545
|
+
platform,
|
|
5546
5546
|
elements: {
|
|
5547
5547
|
reference: externalReference,
|
|
5548
5548
|
floating: externalFloating
|
|
@@ -5584,7 +5584,7 @@ function useFloating(options) {
|
|
|
5584
5584
|
const dataRef = React18.useRef(data);
|
|
5585
5585
|
const hasWhileElementsMounted = whileElementsMounted != null;
|
|
5586
5586
|
const whileElementsMountedRef = useLatestRef(whileElementsMounted);
|
|
5587
|
-
const platformRef = useLatestRef(
|
|
5587
|
+
const platformRef = useLatestRef(platform);
|
|
5588
5588
|
const openRef = useLatestRef(open);
|
|
5589
5589
|
const update = React18.useCallback(() => {
|
|
5590
5590
|
if (!referenceRef.current || !floatingRef.current) {
|
|
@@ -5598,9 +5598,9 @@ function useFloating(options) {
|
|
|
5598
5598
|
if (platformRef.current) {
|
|
5599
5599
|
config.platform = platformRef.current;
|
|
5600
5600
|
}
|
|
5601
|
-
computePosition2(referenceRef.current, floatingRef.current, config).then((
|
|
5601
|
+
computePosition2(referenceRef.current, floatingRef.current, config).then((data) => {
|
|
5602
5602
|
const fullData = {
|
|
5603
|
-
...
|
|
5603
|
+
...data,
|
|
5604
5604
|
isPositioned: openRef.current !== false
|
|
5605
5605
|
};
|
|
5606
5606
|
if (isMountedRef.current && !deepEqual(dataRef.current, fullData)) {
|
|
@@ -5614,8 +5614,8 @@ function useFloating(options) {
|
|
|
5614
5614
|
index2(() => {
|
|
5615
5615
|
if (open === false && dataRef.current.isPositioned) {
|
|
5616
5616
|
dataRef.current.isPositioned = false;
|
|
5617
|
-
setData((
|
|
5618
|
-
...
|
|
5617
|
+
setData((data) => ({
|
|
5618
|
+
...data,
|
|
5619
5619
|
isPositioned: false
|
|
5620
5620
|
}));
|
|
5621
5621
|
}
|
|
@@ -5775,7 +5775,7 @@ import * as React19 from "react";
|
|
|
5775
5775
|
var __defProp16 = Object.defineProperty;
|
|
5776
5776
|
var __name16 = (target, value) => __defProp16(target, "name", { value, configurable: true });
|
|
5777
5777
|
function useSize(element) {
|
|
5778
|
-
const [
|
|
5778
|
+
const [size, setSize] = React19.useState(undefined);
|
|
5779
5779
|
useLayoutEffect2(() => {
|
|
5780
5780
|
if (element) {
|
|
5781
5781
|
setSize({ width: element.offsetWidth, height: element.offsetHeight });
|
|
@@ -5806,12 +5806,12 @@ function useSize(element) {
|
|
|
5806
5806
|
setSize(undefined);
|
|
5807
5807
|
}
|
|
5808
5808
|
}, [element]);
|
|
5809
|
-
return
|
|
5809
|
+
return size;
|
|
5810
5810
|
}
|
|
5811
5811
|
__name16(useSize, "useSize");
|
|
5812
5812
|
|
|
5813
5813
|
// ../../node_modules/.pnpm/@radix-ui+react-popper@1.3.7_@types+react-dom@18.3.7_@types+react@18.3.31__@types+react_eb61390ffeb98719c4501fa966467838/node_modules/@radix-ui/react-popper/dist/index.mjs
|
|
5814
|
-
import { jsx as
|
|
5814
|
+
import { jsx as jsx10 } from "react/jsx-runtime";
|
|
5815
5815
|
"use client";
|
|
5816
5816
|
var __defProp17 = Object.defineProperty;
|
|
5817
5817
|
var __name17 = (target, value) => __defProp17(target, "name", { value, configurable: true });
|
|
@@ -5822,7 +5822,7 @@ var Popper = /* @__PURE__ */ __name17((props) => {
|
|
|
5822
5822
|
const { __scopePopper, children } = props;
|
|
5823
5823
|
const [anchor, setAnchor] = React20.useState(null);
|
|
5824
5824
|
const [placementState, setPlacementState] = React20.useState(undefined);
|
|
5825
|
-
return /* @__PURE__ */
|
|
5825
|
+
return /* @__PURE__ */ jsx10(PopperProvider, {
|
|
5826
5826
|
scope: __scopePopper,
|
|
5827
5827
|
anchor,
|
|
5828
5828
|
onAnchorChange: setAnchor,
|
|
@@ -5858,7 +5858,7 @@ var PopperAnchor = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(f
|
|
|
5858
5858
|
const sideAndAlign = context.placementState && getSideAndAlignFromPlacement(context.placementState);
|
|
5859
5859
|
const placedSide = sideAndAlign?.[0];
|
|
5860
5860
|
const placedAlign = sideAndAlign?.[1];
|
|
5861
|
-
return virtualRef ? null : /* @__PURE__ */
|
|
5861
|
+
return virtualRef ? null : /* @__PURE__ */ jsx10(Primitive.div, {
|
|
5862
5862
|
"data-radix-popper-side": placedSide,
|
|
5863
5863
|
"data-radix-popper-align": placedAlign,
|
|
5864
5864
|
...anchorProps,
|
|
@@ -5887,8 +5887,8 @@ var PopperContent = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(
|
|
|
5887
5887
|
const context = usePopperContext(CONTENT_NAME, __scopePopper);
|
|
5888
5888
|
const [content, setContent] = React20.useState(null);
|
|
5889
5889
|
const composedRefs = useComposedRefs(forwardedRef, setContent);
|
|
5890
|
-
const [
|
|
5891
|
-
const arrowSize = useSize(
|
|
5890
|
+
const [arrow, setArrow] = React20.useState(null);
|
|
5891
|
+
const arrowSize = useSize(arrow);
|
|
5892
5892
|
const arrowWidth = arrowSize?.width ?? 0;
|
|
5893
5893
|
const arrowHeight = arrowSize?.height ?? 0;
|
|
5894
5894
|
const desiredPlacement = side + (align !== "center" ? "-" + align : "");
|
|
@@ -5932,7 +5932,7 @@ var PopperContent = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(
|
|
|
5932
5932
|
contentStyle.setProperty("--radix-popper-anchor-height", `${anchorHeight}px`);
|
|
5933
5933
|
}, "apply")
|
|
5934
5934
|
}),
|
|
5935
|
-
|
|
5935
|
+
arrow && arrow3({ element: arrow, padding: arrowPadding }),
|
|
5936
5936
|
transformOrigin({ arrowWidth, arrowHeight }),
|
|
5937
5937
|
hideWhenDetached && hide3({
|
|
5938
5938
|
strategy: "referenceHidden",
|
|
@@ -5963,7 +5963,7 @@ var PopperContent = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(
|
|
|
5963
5963
|
if (content)
|
|
5964
5964
|
setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
5965
5965
|
}, [content]);
|
|
5966
|
-
return /* @__PURE__ */
|
|
5966
|
+
return /* @__PURE__ */ jsx10("div", {
|
|
5967
5967
|
ref: refs.setFloating,
|
|
5968
5968
|
"data-radix-popper-content-wrapper": "",
|
|
5969
5969
|
style: {
|
|
@@ -5981,7 +5981,7 @@ var PopperContent = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(
|
|
|
5981
5981
|
}
|
|
5982
5982
|
},
|
|
5983
5983
|
dir: props.dir,
|
|
5984
|
-
children: /* @__PURE__ */
|
|
5984
|
+
children: /* @__PURE__ */ jsx10(PopperContentProvider, {
|
|
5985
5985
|
scope: __scopePopper,
|
|
5986
5986
|
placedSide,
|
|
5987
5987
|
placedAlign,
|
|
@@ -5989,7 +5989,7 @@ var PopperContent = /* @__PURE__ */ React20.forwardRef(/* @__PURE__ */ __name17(
|
|
|
5989
5989
|
arrowX,
|
|
5990
5990
|
arrowY,
|
|
5991
5991
|
shouldHideArrow: cannotCenterArrow,
|
|
5992
|
-
children: /* @__PURE__ */
|
|
5992
|
+
children: /* @__PURE__ */ jsx10(Primitive.div, {
|
|
5993
5993
|
"data-side": placedSide,
|
|
5994
5994
|
"data-align": placedAlign,
|
|
5995
5995
|
...contentProps,
|
|
@@ -6049,7 +6049,7 @@ var Content = PopperContent;
|
|
|
6049
6049
|
// ../../node_modules/.pnpm/@radix-ui+react-portal@1.1.17_@types+react-dom@18.3.7_@types+react@18.3.31__@types+reac_35c248e3d41b4a33144a8517e72175a4/node_modules/@radix-ui/react-portal/dist/index.mjs
|
|
6050
6050
|
import * as React21 from "react";
|
|
6051
6051
|
import * as ReactDOM3 from "react-dom";
|
|
6052
|
-
import { jsx as
|
|
6052
|
+
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
6053
6053
|
"use client";
|
|
6054
6054
|
var __defProp18 = Object.defineProperty;
|
|
6055
6055
|
var __name18 = (target, value) => __defProp18(target, "name", { value, configurable: true });
|
|
@@ -6058,7 +6058,7 @@ var Portal = /* @__PURE__ */ React21.forwardRef(/* @__PURE__ */ __name18(functio
|
|
|
6058
6058
|
const [mounted, setMounted] = React21.useState(false);
|
|
6059
6059
|
useLayoutEffect2(() => setMounted(true), []);
|
|
6060
6060
|
const container = containerProp || mounted && globalThis?.document?.body;
|
|
6061
|
-
return container ? ReactDOM3.createPortal(/* @__PURE__ */
|
|
6061
|
+
return container ? ReactDOM3.createPortal(/* @__PURE__ */ jsx11(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;
|
|
6062
6062
|
}, "Portal"));
|
|
6063
6063
|
|
|
6064
6064
|
// ../../node_modules/.pnpm/@radix-ui+react-presence@1.1.10_@types+react-dom@18.3.7_@types+react@18.3.31__@types+re_62e566fb7823886e0e3d5565144169f1/node_modules/@radix-ui/react-presence/dist/index.mjs
|
|
@@ -6273,7 +6273,7 @@ __name20(useIsHydratedModern, "useIsHydratedModern");
|
|
|
6273
6273
|
var useIsHydrated2 = typeof useReactSyncExternalStore === "function" ? useIsHydratedModern : useIsHydrated;
|
|
6274
6274
|
|
|
6275
6275
|
// ../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.19_@types+react-dom@18.3.7_@types+react@18.3.31__@type_d5b0f6117fe35925e77b051a5d0d3813/node_modules/@radix-ui/react-roving-focus/dist/index.mjs
|
|
6276
|
-
import { jsx as
|
|
6276
|
+
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
6277
6277
|
"use client";
|
|
6278
6278
|
var __defProp21 = Object.defineProperty;
|
|
6279
6279
|
var __name21 = (target, value) => __defProp21(target, "name", { value, configurable: true });
|
|
@@ -6284,7 +6284,7 @@ var [Collection, useCollection, createCollectionScope] = createCollection(GROUP_
|
|
|
6284
6284
|
var [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(GROUP_NAME, [createCollectionScope]);
|
|
6285
6285
|
var [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);
|
|
6286
6286
|
var RovingFocusGroup = /* @__PURE__ */ React28.forwardRef(/* @__PURE__ */ __name21(function RovingFocusGroup2(props, forwardedRef) {
|
|
6287
|
-
return /* @__PURE__ */
|
|
6287
|
+
return /* @__PURE__ */ jsx12(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx12(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx12(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });
|
|
6288
6288
|
}, "RovingFocusGroup"));
|
|
6289
6289
|
var RovingFocusGroupImpl = /* @__PURE__ */ React28.forwardRef(/* @__PURE__ */ __name21(function RovingFocusGroupImpl2(props, forwardedRef) {
|
|
6290
6290
|
const {
|
|
@@ -6320,7 +6320,7 @@ var RovingFocusGroupImpl = /* @__PURE__ */ React28.forwardRef(/* @__PURE__ */ __
|
|
|
6320
6320
|
return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);
|
|
6321
6321
|
}
|
|
6322
6322
|
}, [handleEntryFocus]);
|
|
6323
|
-
return /* @__PURE__ */
|
|
6323
|
+
return /* @__PURE__ */ jsx12(RovingFocusProvider, {
|
|
6324
6324
|
scope: __scopeRovingFocusGroup,
|
|
6325
6325
|
orientation,
|
|
6326
6326
|
dir: direction,
|
|
@@ -6330,7 +6330,7 @@ var RovingFocusGroupImpl = /* @__PURE__ */ React28.forwardRef(/* @__PURE__ */ __
|
|
|
6330
6330
|
onItemShiftTab: React28.useCallback(() => setIsTabbingBackOut(true), []),
|
|
6331
6331
|
onFocusableItemAdd: React28.useCallback(() => setFocusableItemsCount((prevCount) => prevCount + 1), []),
|
|
6332
6332
|
onFocusableItemRemove: React28.useCallback(() => setFocusableItemsCount((prevCount) => prevCount - 1), []),
|
|
6333
|
-
children: /* @__PURE__ */
|
|
6333
|
+
children: /* @__PURE__ */ jsx12(Primitive.div, {
|
|
6334
6334
|
tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,
|
|
6335
6335
|
"data-orientation": orientation,
|
|
6336
6336
|
...groupProps,
|
|
@@ -6390,12 +6390,12 @@ var RovingFocusGroupItem = /* @__PURE__ */ React28.forwardRef(/* @__PURE__ */ __
|
|
|
6390
6390
|
onFocusableItemAdd();
|
|
6391
6391
|
return () => onFocusableItemRemove();
|
|
6392
6392
|
}, [isHydrated, focusable, onFocusableItemAdd, onFocusableItemRemove]);
|
|
6393
|
-
return /* @__PURE__ */
|
|
6393
|
+
return /* @__PURE__ */ jsx12(Collection.ItemSlot, {
|
|
6394
6394
|
scope: __scopeRovingFocusGroup,
|
|
6395
6395
|
id,
|
|
6396
6396
|
focusable,
|
|
6397
6397
|
active,
|
|
6398
|
-
children: /* @__PURE__ */
|
|
6398
|
+
children: /* @__PURE__ */ jsx12(Primitive.span, {
|
|
6399
6399
|
tabIndex: isCurrentTabStop ? 0 : -1,
|
|
6400
6400
|
"data-orientation": context.orientation,
|
|
6401
6401
|
...itemProps,
|
|
@@ -6473,7 +6473,7 @@ function focusFirst2(candidates, preventScroll = false) {
|
|
|
6473
6473
|
}
|
|
6474
6474
|
__name21(focusFirst2, "focusFirst");
|
|
6475
6475
|
function wrapArray(array, startIndex) {
|
|
6476
|
-
return array.map((_,
|
|
6476
|
+
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
6477
6477
|
}
|
|
6478
6478
|
__name21(wrapArray, "wrapArray");
|
|
6479
6479
|
var Root = RovingFocusGroup;
|
|
@@ -6602,7 +6602,7 @@ var hideOthers = function(originalTarget, parentNode, markerName) {
|
|
|
6602
6602
|
|
|
6603
6603
|
// ../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
|
|
6604
6604
|
var __assign = function() {
|
|
6605
|
-
__assign = Object.assign || function
|
|
6605
|
+
__assign = Object.assign || function __assign(t) {
|
|
6606
6606
|
for (var s, i = 1, n = arguments.length;i < n; i++) {
|
|
6607
6607
|
s = arguments[i];
|
|
6608
6608
|
for (var p in s)
|
|
@@ -6771,9 +6771,9 @@ function innerCreateMedium(defaults, middleware) {
|
|
|
6771
6771
|
pendingQueue = buffer;
|
|
6772
6772
|
}
|
|
6773
6773
|
var executeQueue = function() {
|
|
6774
|
-
var
|
|
6774
|
+
var cbs = pendingQueue;
|
|
6775
6775
|
pendingQueue = [];
|
|
6776
|
-
|
|
6776
|
+
cbs.forEach(cb);
|
|
6777
6777
|
};
|
|
6778
6778
|
var cycle = function() {
|
|
6779
6779
|
return Promise.resolve().then(executeQueue);
|
|
@@ -6834,10 +6834,10 @@ var RemoveScroll = React31.forwardRef(function(props, parentRef) {
|
|
|
6834
6834
|
onTouchMoveCapture: nothing
|
|
6835
6835
|
}), callbacks = _a[0], setCallbacks = _a[1];
|
|
6836
6836
|
var { forwardProps, children, className, removeScrollBar, enabled, shards, sideCar, noRelative, noIsolation, inert, allowPinchZoom, as: _b } = props, Container = _b === undefined ? "div" : _b, gapMode = props.gapMode, rest = __rest(props, ["forwardProps", "children", "className", "removeScrollBar", "enabled", "shards", "sideCar", "noRelative", "noIsolation", "inert", "allowPinchZoom", "as", "gapMode"]);
|
|
6837
|
-
var
|
|
6837
|
+
var SideCar = sideCar;
|
|
6838
6838
|
var containerRef = useMergeRefs([ref, parentRef]);
|
|
6839
6839
|
var containerProps = __assign(__assign({}, rest), callbacks);
|
|
6840
|
-
return React31.createElement(React31.Fragment, null, enabled && React31.createElement(
|
|
6840
|
+
return React31.createElement(React31.Fragment, null, enabled && React31.createElement(SideCar, { sideCar: effectCar, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode }), forwardProps ? React31.cloneElement(React31.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React31.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children));
|
|
6841
6841
|
});
|
|
6842
6842
|
RemoveScroll.defaultProps = {
|
|
6843
6843
|
enabled: true,
|
|
@@ -7188,7 +7188,7 @@ function RemoveScrollSideCar(props) {
|
|
|
7188
7188
|
var touchStartRef = React34.useRef([0, 0]);
|
|
7189
7189
|
var activeAxis = React34.useRef();
|
|
7190
7190
|
var id = React34.useState(idCounter++)[0];
|
|
7191
|
-
var
|
|
7191
|
+
var Style = React34.useState(styleSingleton)[0];
|
|
7192
7192
|
var lastProps = React34.useRef(props);
|
|
7193
7193
|
React34.useEffect(function() {
|
|
7194
7194
|
lastProps.current = props;
|
|
@@ -7253,7 +7253,7 @@ function RemoveScrollSideCar(props) {
|
|
|
7253
7253
|
}, []);
|
|
7254
7254
|
var shouldPrevent = React34.useCallback(function(_event) {
|
|
7255
7255
|
var event = _event;
|
|
7256
|
-
if (!lockStack.length || lockStack[lockStack.length - 1] !==
|
|
7256
|
+
if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {
|
|
7257
7257
|
return;
|
|
7258
7258
|
}
|
|
7259
7259
|
var delta = "deltaY" in event ? getDeltaXY(event) : getTouchXY(event);
|
|
@@ -7298,7 +7298,7 @@ function RemoveScrollSideCar(props) {
|
|
|
7298
7298
|
shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
|
|
7299
7299
|
}, []);
|
|
7300
7300
|
React34.useEffect(function() {
|
|
7301
|
-
lockStack.push(
|
|
7301
|
+
lockStack.push(Style);
|
|
7302
7302
|
props.setCallbacks({
|
|
7303
7303
|
onScrollCapture: scrollWheel,
|
|
7304
7304
|
onWheelCapture: scrollWheel,
|
|
@@ -7309,7 +7309,7 @@ function RemoveScrollSideCar(props) {
|
|
|
7309
7309
|
document.addEventListener("touchstart", scrollTouchStart, nonPassive);
|
|
7310
7310
|
return function() {
|
|
7311
7311
|
lockStack = lockStack.filter(function(inst) {
|
|
7312
|
-
return inst !==
|
|
7312
|
+
return inst !== Style;
|
|
7313
7313
|
});
|
|
7314
7314
|
document.removeEventListener("wheel", shouldPrevent, nonPassive);
|
|
7315
7315
|
document.removeEventListener("touchmove", shouldPrevent, nonPassive);
|
|
@@ -7317,7 +7317,7 @@ function RemoveScrollSideCar(props) {
|
|
|
7317
7317
|
};
|
|
7318
7318
|
}, []);
|
|
7319
7319
|
var { removeScrollBar, inert } = props;
|
|
7320
|
-
return React34.createElement(React34.Fragment, null, inert ? React34.createElement(
|
|
7320
|
+
return React34.createElement(React34.Fragment, null, inert ? React34.createElement(Style, { styles: generateStyle(id) }) : null, removeScrollBar ? React34.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null);
|
|
7321
7321
|
}
|
|
7322
7322
|
function getOutermostShadowParent(node) {
|
|
7323
7323
|
var shadowParent = null;
|
|
@@ -7342,7 +7342,7 @@ ReactRemoveScroll.classNames = RemoveScroll.classNames;
|
|
|
7342
7342
|
var Combination_default = ReactRemoveScroll;
|
|
7343
7343
|
|
|
7344
7344
|
// ../../node_modules/.pnpm/@radix-ui+react-menu@2.1.24_@types+react-dom@18.3.7_@types+react@18.3.31__@types+react@_5916b0f50695b0c3786ad7b8ea8d8ac9/node_modules/@radix-ui/react-menu/dist/index.mjs
|
|
7345
|
-
import { jsx as
|
|
7345
|
+
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
7346
7346
|
"use client";
|
|
7347
7347
|
var __defProp22 = Object.defineProperty;
|
|
7348
7348
|
var __name22 = (target, value) => __defProp22(target, "name", { value, configurable: true });
|
|
@@ -7398,13 +7398,13 @@ var Menu = /* @__PURE__ */ __name22((props) => {
|
|
|
7398
7398
|
window.addEventListener("blur", handleBlur);
|
|
7399
7399
|
return () => window.removeEventListener("blur", handleBlur);
|
|
7400
7400
|
}, [open, handleOpenChange]);
|
|
7401
|
-
return /* @__PURE__ */
|
|
7401
|
+
return /* @__PURE__ */ jsx13(Root2, { ...popperScope, children: /* @__PURE__ */ jsx13(MenuProvider, {
|
|
7402
7402
|
scope: __scopeMenu,
|
|
7403
7403
|
open,
|
|
7404
7404
|
onOpenChange: handleOpenChange,
|
|
7405
7405
|
content,
|
|
7406
7406
|
onContentChange: setContent,
|
|
7407
|
-
children: /* @__PURE__ */
|
|
7407
|
+
children: /* @__PURE__ */ jsx13(MenuRootProvider, {
|
|
7408
7408
|
scope: __scopeMenu,
|
|
7409
7409
|
onClose: React36.useCallback(() => handleOpenChange(false), [handleOpenChange]),
|
|
7410
7410
|
isUsingKeyboardRef,
|
|
@@ -7417,7 +7417,7 @@ var Menu = /* @__PURE__ */ __name22((props) => {
|
|
|
7417
7417
|
var MenuAnchor = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuAnchor2(props, forwardedRef) {
|
|
7418
7418
|
const { __scopeMenu, ...anchorProps } = props;
|
|
7419
7419
|
const popperScope = usePopperScope(__scopeMenu);
|
|
7420
|
-
return /* @__PURE__ */
|
|
7420
|
+
return /* @__PURE__ */ jsx13(Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });
|
|
7421
7421
|
}, "MenuAnchor"));
|
|
7422
7422
|
var PORTAL_NAME = "MenuPortal";
|
|
7423
7423
|
var [PortalProvider, usePortalContext] = createMenuContext(PORTAL_NAME, {
|
|
@@ -7426,7 +7426,7 @@ var [PortalProvider, usePortalContext] = createMenuContext(PORTAL_NAME, {
|
|
|
7426
7426
|
var MenuPortal = /* @__PURE__ */ __name22((props) => {
|
|
7427
7427
|
const { __scopeMenu, forceMount, children, container } = props;
|
|
7428
7428
|
const context = useMenuContext(PORTAL_NAME, __scopeMenu);
|
|
7429
|
-
return /* @__PURE__ */
|
|
7429
|
+
return /* @__PURE__ */ jsx13(PortalProvider, { scope: __scopeMenu, forceMount, children: /* @__PURE__ */ jsx13(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx13(Portal, { asChild: true, container, children }) }) });
|
|
7430
7430
|
}, "MenuPortal");
|
|
7431
7431
|
var CONTENT_NAME2 = "MenuContent";
|
|
7432
7432
|
var [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME2);
|
|
@@ -7435,7 +7435,7 @@ var MenuContent = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(fu
|
|
|
7435
7435
|
const { forceMount = portalContext.forceMount, ...contentProps } = props;
|
|
7436
7436
|
const context = useMenuContext(CONTENT_NAME2, props.__scopeMenu);
|
|
7437
7437
|
const rootContext = useMenuRootContext(CONTENT_NAME2, props.__scopeMenu);
|
|
7438
|
-
return /* @__PURE__ */
|
|
7438
|
+
return /* @__PURE__ */ jsx13(Collection2.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx13(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx13(Collection2.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx13(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx13(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });
|
|
7439
7439
|
}, "MenuContent"));
|
|
7440
7440
|
var MenuRootContentModal = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuRootContentModal2(props, forwardedRef) {
|
|
7441
7441
|
const context = useMenuContext(CONTENT_NAME2, props.__scopeMenu);
|
|
@@ -7446,7 +7446,7 @@ var MenuRootContentModal = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __
|
|
|
7446
7446
|
if (content)
|
|
7447
7447
|
return hideOthers(content);
|
|
7448
7448
|
}, []);
|
|
7449
|
-
return /* @__PURE__ */
|
|
7449
|
+
return /* @__PURE__ */ jsx13(MenuContentImpl, {
|
|
7450
7450
|
...props,
|
|
7451
7451
|
ref: composedRefs,
|
|
7452
7452
|
trapFocus: context.open,
|
|
@@ -7458,7 +7458,7 @@ var MenuRootContentModal = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __
|
|
|
7458
7458
|
}, "MenuRootContentModal"));
|
|
7459
7459
|
var MenuRootContentNonModal = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuRootContentNonModal2(props, forwardedRef) {
|
|
7460
7460
|
const context = useMenuContext(CONTENT_NAME2, props.__scopeMenu);
|
|
7461
|
-
return /* @__PURE__ */
|
|
7461
|
+
return /* @__PURE__ */ jsx13(MenuContentImpl, {
|
|
7462
7462
|
...props,
|
|
7463
7463
|
ref: forwardedRef,
|
|
7464
7464
|
trapFocus: false,
|
|
@@ -7527,7 +7527,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7527
7527
|
const isMovingTowards = pointerDirRef.current === pointerGraceIntentRef.current?.side;
|
|
7528
7528
|
return isMovingTowards && isPointerInGraceArea(event, pointerGraceIntentRef.current?.area);
|
|
7529
7529
|
}, []);
|
|
7530
|
-
return /* @__PURE__ */
|
|
7530
|
+
return /* @__PURE__ */ jsx13(MenuContentProvider, {
|
|
7531
7531
|
scope: __scopeMenu,
|
|
7532
7532
|
searchRef,
|
|
7533
7533
|
onItemEnter: React36.useCallback((event) => {
|
|
@@ -7548,7 +7548,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7548
7548
|
onPointerGraceIntentChange: React36.useCallback((intent) => {
|
|
7549
7549
|
pointerGraceIntentRef.current = intent;
|
|
7550
7550
|
}, []),
|
|
7551
|
-
children: /* @__PURE__ */
|
|
7551
|
+
children: /* @__PURE__ */ jsx13(ScrollLockWrapper, { ...scrollLockWrapperProps, children: /* @__PURE__ */ jsx13(FocusScope, {
|
|
7552
7552
|
asChild: true,
|
|
7553
7553
|
trapped: trapFocus,
|
|
7554
7554
|
onMountAutoFocus: composeEventHandlers(onOpenAutoFocus, (event) => {
|
|
@@ -7556,7 +7556,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7556
7556
|
contentRef.current?.focus({ preventScroll: true });
|
|
7557
7557
|
}),
|
|
7558
7558
|
onUnmountAutoFocus: onCloseAutoFocus,
|
|
7559
|
-
children: /* @__PURE__ */
|
|
7559
|
+
children: /* @__PURE__ */ jsx13(DismissableLayer, {
|
|
7560
7560
|
asChild: true,
|
|
7561
7561
|
disableOutsidePointerEvents,
|
|
7562
7562
|
onEscapeKeyDown,
|
|
@@ -7564,7 +7564,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7564
7564
|
onFocusOutside,
|
|
7565
7565
|
onInteractOutside,
|
|
7566
7566
|
onDismiss,
|
|
7567
|
-
children: /* @__PURE__ */
|
|
7567
|
+
children: /* @__PURE__ */ jsx13(Root, {
|
|
7568
7568
|
asChild: true,
|
|
7569
7569
|
...rovingFocusGroupScope,
|
|
7570
7570
|
dir: rootContext.dir,
|
|
@@ -7577,7 +7577,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7577
7577
|
event.preventDefault();
|
|
7578
7578
|
}),
|
|
7579
7579
|
preventScrollOnEntryFocus: true,
|
|
7580
|
-
children: /* @__PURE__ */
|
|
7580
|
+
children: /* @__PURE__ */ jsx13(Content, {
|
|
7581
7581
|
role: "menu",
|
|
7582
7582
|
"aria-orientation": "vertical",
|
|
7583
7583
|
"data-state": getOpenState(context.open),
|
|
@@ -7633,7 +7633,7 @@ var MenuContentImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name2
|
|
|
7633
7633
|
}, "MenuContentImpl"));
|
|
7634
7634
|
var MenuLabel = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuLabel2(props, forwardedRef) {
|
|
7635
7635
|
const { __scopeMenu, ...labelProps } = props;
|
|
7636
|
-
return /* @__PURE__ */
|
|
7636
|
+
return /* @__PURE__ */ jsx13(Primitive.div, { ...labelProps, ref: forwardedRef });
|
|
7637
7637
|
}, "MenuLabel"));
|
|
7638
7638
|
var ITEM_NAME2 = "MenuItem";
|
|
7639
7639
|
var ITEM_SELECT = "menu.itemSelect";
|
|
@@ -7657,7 +7657,7 @@ var MenuItem = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(funct
|
|
|
7657
7657
|
}
|
|
7658
7658
|
}
|
|
7659
7659
|
}, "handleSelect");
|
|
7660
|
-
return /* @__PURE__ */
|
|
7660
|
+
return /* @__PURE__ */ jsx13(MenuItemImpl, {
|
|
7661
7661
|
...itemProps,
|
|
7662
7662
|
ref: composedRefs,
|
|
7663
7663
|
disabled,
|
|
@@ -7699,11 +7699,11 @@ var MenuItemImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(f
|
|
|
7699
7699
|
setTextContent((menuItem.textContent ?? "").trim());
|
|
7700
7700
|
}
|
|
7701
7701
|
}, [itemProps.children]);
|
|
7702
|
-
return /* @__PURE__ */
|
|
7702
|
+
return /* @__PURE__ */ jsx13(Collection2.ItemSlot, {
|
|
7703
7703
|
scope: __scopeMenu,
|
|
7704
7704
|
disabled,
|
|
7705
7705
|
textValue: textValue ?? textContent,
|
|
7706
|
-
children: /* @__PURE__ */
|
|
7706
|
+
children: /* @__PURE__ */ jsx13(Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsx13(Primitive.div, {
|
|
7707
7707
|
role: "menuitem",
|
|
7708
7708
|
"data-highlighted": isFocused ? "" : undefined,
|
|
7709
7709
|
"aria-disabled": disabled || undefined,
|
|
@@ -7729,7 +7729,7 @@ var MenuItemImpl = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(f
|
|
|
7729
7729
|
}, "MenuItemImpl"));
|
|
7730
7730
|
var MenuCheckboxItem = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuCheckboxItem2(props, forwardedRef) {
|
|
7731
7731
|
const { checked = false, onCheckedChange, ...checkboxItemProps } = props;
|
|
7732
|
-
return /* @__PURE__ */
|
|
7732
|
+
return /* @__PURE__ */ jsx13(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx13(MenuItem, {
|
|
7733
7733
|
role: "menuitemcheckbox",
|
|
7734
7734
|
"aria-checked": isIndeterminate(checked) ? "mixed" : checked,
|
|
7735
7735
|
...checkboxItemProps,
|
|
@@ -7745,7 +7745,7 @@ var MenuRadioItem = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(
|
|
|
7745
7745
|
const { value, ...radioItemProps } = props;
|
|
7746
7746
|
const context = useRadioGroupContext(RADIO_ITEM_NAME, props.__scopeMenu);
|
|
7747
7747
|
const checked = value === context.value;
|
|
7748
|
-
return /* @__PURE__ */
|
|
7748
|
+
return /* @__PURE__ */ jsx13(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx13(MenuItem, {
|
|
7749
7749
|
role: "menuitemradio",
|
|
7750
7750
|
"aria-checked": checked,
|
|
7751
7751
|
...radioItemProps,
|
|
@@ -7759,9 +7759,9 @@ var [ItemIndicatorProvider, useItemIndicatorContext] = createMenuContext(ITEM_IN
|
|
|
7759
7759
|
var MenuItemIndicator = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuItemIndicator2(props, forwardedRef) {
|
|
7760
7760
|
const { __scopeMenu, forceMount, ...itemIndicatorProps } = props;
|
|
7761
7761
|
const indicatorContext = useItemIndicatorContext(ITEM_INDICATOR_NAME, __scopeMenu);
|
|
7762
|
-
return /* @__PURE__ */
|
|
7762
|
+
return /* @__PURE__ */ jsx13(Presence, {
|
|
7763
7763
|
present: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true,
|
|
7764
|
-
children: /* @__PURE__ */
|
|
7764
|
+
children: /* @__PURE__ */ jsx13(Primitive.span, {
|
|
7765
7765
|
...itemIndicatorProps,
|
|
7766
7766
|
ref: forwardedRef,
|
|
7767
7767
|
"data-state": getCheckedState(indicatorContext.checked)
|
|
@@ -7770,7 +7770,7 @@ var MenuItemIndicator = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __nam
|
|
|
7770
7770
|
}, "MenuItemIndicator"));
|
|
7771
7771
|
var MenuSeparator = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22(function MenuSeparator2(props, forwardedRef) {
|
|
7772
7772
|
const { __scopeMenu, ...separatorProps } = props;
|
|
7773
|
-
return /* @__PURE__ */
|
|
7773
|
+
return /* @__PURE__ */ jsx13(Primitive.div, {
|
|
7774
7774
|
role: "separator",
|
|
7775
7775
|
"aria-orientation": "horizontal",
|
|
7776
7776
|
...separatorProps,
|
|
@@ -7802,7 +7802,7 @@ var MenuSubTrigger = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22
|
|
|
7802
7802
|
};
|
|
7803
7803
|
}, [pointerGraceTimerRef, onPointerGraceIntentChange]);
|
|
7804
7804
|
const composedRefs = useComposedRefs(forwardedRef, subContext.onTriggerChange);
|
|
7805
|
-
return /* @__PURE__ */
|
|
7805
|
+
return /* @__PURE__ */ jsx13(MenuAnchor, { asChild: true, ...scope, children: /* @__PURE__ */ jsx13(MenuItemImpl, {
|
|
7806
7806
|
id: subContext.triggerId,
|
|
7807
7807
|
"aria-haspopup": "menu",
|
|
7808
7808
|
"aria-expanded": context.open,
|
|
@@ -7883,7 +7883,7 @@ var MenuSubContent = /* @__PURE__ */ React36.forwardRef(/* @__PURE__ */ __name22
|
|
|
7883
7883
|
const subContext = useMenuSubContext(SUB_CONTENT_NAME, props.__scopeMenu);
|
|
7884
7884
|
const ref = React36.useRef(null);
|
|
7885
7885
|
const composedRefs = useComposedRefs(forwardedRef, ref);
|
|
7886
|
-
return /* @__PURE__ */
|
|
7886
|
+
return /* @__PURE__ */ jsx13(Collection2.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx13(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx13(Collection2.Slot, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx13(MenuContentImpl, {
|
|
7887
7887
|
id: subContext.contentId,
|
|
7888
7888
|
"aria-labelledby": subContext.triggerId,
|
|
7889
7889
|
...subContentProps,
|
|
@@ -7942,7 +7942,7 @@ function focusFirst3(candidates) {
|
|
|
7942
7942
|
}
|
|
7943
7943
|
__name22(focusFirst3, "focusFirst");
|
|
7944
7944
|
function wrapArray2(array, startIndex) {
|
|
7945
|
-
return array.map((_,
|
|
7945
|
+
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
7946
7946
|
}
|
|
7947
7947
|
__name22(wrapArray2, "wrapArray");
|
|
7948
7948
|
function getNextMatch(values, search, currentMatch) {
|
|
@@ -7987,7 +7987,7 @@ function whenMouse(handler) {
|
|
|
7987
7987
|
__name22(whenMouse, "whenMouse");
|
|
7988
7988
|
var Root3 = Menu;
|
|
7989
7989
|
var Anchor2 = MenuAnchor;
|
|
7990
|
-
var
|
|
7990
|
+
var Portal2 = MenuPortal;
|
|
7991
7991
|
var Content2 = MenuContent;
|
|
7992
7992
|
var Label = MenuLabel;
|
|
7993
7993
|
var Item2 = MenuItem;
|
|
@@ -7999,7 +7999,7 @@ var SubTrigger = MenuSubTrigger;
|
|
|
7999
7999
|
var SubContent = MenuSubContent;
|
|
8000
8000
|
|
|
8001
8001
|
// ../../node_modules/.pnpm/@radix-ui+react-dropdown-menu@2.1.24_@types+react-dom@18.3.7_@types+react@18.3.31__@typ_cccb57b67c4362d4d715c3f09d78a900/node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs
|
|
8002
|
-
import { jsx as
|
|
8002
|
+
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
8003
8003
|
"use client";
|
|
8004
8004
|
var __defProp23 = Object.defineProperty;
|
|
8005
8005
|
var __name23 = (target, value) => __defProp23(target, "name", { value, configurable: true });
|
|
@@ -8025,7 +8025,7 @@ var DropdownMenu = /* @__PURE__ */ __name23((props) => {
|
|
|
8025
8025
|
onChange: onOpenChange,
|
|
8026
8026
|
caller: DROPDOWN_MENU_NAME
|
|
8027
8027
|
});
|
|
8028
|
-
return /* @__PURE__ */
|
|
8028
|
+
return /* @__PURE__ */ jsx14(DropdownMenuProvider, {
|
|
8029
8029
|
scope: __scopeDropdownMenu,
|
|
8030
8030
|
triggerId: useId(),
|
|
8031
8031
|
triggerRef,
|
|
@@ -8034,7 +8034,7 @@ var DropdownMenu = /* @__PURE__ */ __name23((props) => {
|
|
|
8034
8034
|
onOpenChange: setOpen,
|
|
8035
8035
|
onOpenToggle: React37.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
|
|
8036
8036
|
modal,
|
|
8037
|
-
children: /* @__PURE__ */
|
|
8037
|
+
children: /* @__PURE__ */ jsx14(Root3, { ...menuScope, open, onOpenChange: setOpen, dir, modal, children })
|
|
8038
8038
|
});
|
|
8039
8039
|
}, "DropdownMenu");
|
|
8040
8040
|
var TRIGGER_NAME = "DropdownMenuTrigger";
|
|
@@ -8043,7 +8043,7 @@ var DropdownMenuTrigger = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __n
|
|
|
8043
8043
|
const context = useDropdownMenuContext(TRIGGER_NAME, __scopeDropdownMenu);
|
|
8044
8044
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8045
8045
|
const composedRefs = useComposedRefs(forwardedRef, context.triggerRef);
|
|
8046
|
-
return /* @__PURE__ */
|
|
8046
|
+
return /* @__PURE__ */ jsx14(Anchor2, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsx14(Primitive.button, {
|
|
8047
8047
|
type: "button",
|
|
8048
8048
|
id: context.triggerId,
|
|
8049
8049
|
"aria-haspopup": "menu",
|
|
@@ -8076,7 +8076,7 @@ var DropdownMenuTrigger = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __n
|
|
|
8076
8076
|
var DropdownMenuPortal = /* @__PURE__ */ __name23((props) => {
|
|
8077
8077
|
const { __scopeDropdownMenu, ...portalProps } = props;
|
|
8078
8078
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8079
|
-
return /* @__PURE__ */
|
|
8079
|
+
return /* @__PURE__ */ jsx14(Portal2, { ...menuScope, ...portalProps });
|
|
8080
8080
|
}, "DropdownMenuPortal");
|
|
8081
8081
|
var CONTENT_NAME3 = "DropdownMenuContent";
|
|
8082
8082
|
var DropdownMenuContent = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuContent2(props, forwardedRef) {
|
|
@@ -8084,7 +8084,7 @@ var DropdownMenuContent = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __n
|
|
|
8084
8084
|
const context = useDropdownMenuContext(CONTENT_NAME3, __scopeDropdownMenu);
|
|
8085
8085
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8086
8086
|
const hasInteractedOutsideRef = React37.useRef(false);
|
|
8087
|
-
return /* @__PURE__ */
|
|
8087
|
+
return /* @__PURE__ */ jsx14(Content2, {
|
|
8088
8088
|
id: context.contentId,
|
|
8089
8089
|
"aria-labelledby": context.triggerId,
|
|
8090
8090
|
...menuScope,
|
|
@@ -8118,42 +8118,42 @@ var DropdownMenuContent = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __n
|
|
|
8118
8118
|
var DropdownMenuLabel = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuLabel2(props, forwardedRef) {
|
|
8119
8119
|
const { __scopeDropdownMenu, ...labelProps } = props;
|
|
8120
8120
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8121
|
-
return /* @__PURE__ */
|
|
8121
|
+
return /* @__PURE__ */ jsx14(Label, { ...menuScope, ...labelProps, ref: forwardedRef });
|
|
8122
8122
|
}, "DropdownMenuLabel"));
|
|
8123
8123
|
var DropdownMenuItem = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuItem2(props, forwardedRef) {
|
|
8124
8124
|
const { __scopeDropdownMenu, ...itemProps } = props;
|
|
8125
8125
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8126
|
-
return /* @__PURE__ */
|
|
8126
|
+
return /* @__PURE__ */ jsx14(Item2, { ...menuScope, ...itemProps, ref: forwardedRef });
|
|
8127
8127
|
}, "DropdownMenuItem"));
|
|
8128
8128
|
var DropdownMenuCheckboxItem = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuCheckboxItem2(props, forwardedRef) {
|
|
8129
8129
|
const { __scopeDropdownMenu, ...checkboxItemProps } = props;
|
|
8130
8130
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8131
|
-
return /* @__PURE__ */
|
|
8131
|
+
return /* @__PURE__ */ jsx14(CheckboxItem, { ...menuScope, ...checkboxItemProps, ref: forwardedRef });
|
|
8132
8132
|
}, "DropdownMenuCheckboxItem"));
|
|
8133
8133
|
var DropdownMenuRadioItem = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuRadioItem2(props, forwardedRef) {
|
|
8134
8134
|
const { __scopeDropdownMenu, ...radioItemProps } = props;
|
|
8135
8135
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8136
|
-
return /* @__PURE__ */
|
|
8136
|
+
return /* @__PURE__ */ jsx14(RadioItem, { ...menuScope, ...radioItemProps, ref: forwardedRef });
|
|
8137
8137
|
}, "DropdownMenuRadioItem"));
|
|
8138
8138
|
var DropdownMenuItemIndicator = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuItemIndicator2(props, forwardedRef) {
|
|
8139
8139
|
const { __scopeDropdownMenu, ...itemIndicatorProps } = props;
|
|
8140
8140
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8141
|
-
return /* @__PURE__ */
|
|
8141
|
+
return /* @__PURE__ */ jsx14(ItemIndicator, { ...menuScope, ...itemIndicatorProps, ref: forwardedRef });
|
|
8142
8142
|
}, "DropdownMenuItemIndicator"));
|
|
8143
8143
|
var DropdownMenuSeparator = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuSeparator2(props, forwardedRef) {
|
|
8144
8144
|
const { __scopeDropdownMenu, ...separatorProps } = props;
|
|
8145
8145
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8146
|
-
return /* @__PURE__ */
|
|
8146
|
+
return /* @__PURE__ */ jsx14(Separator, { ...menuScope, ...separatorProps, ref: forwardedRef });
|
|
8147
8147
|
}, "DropdownMenuSeparator"));
|
|
8148
8148
|
var DropdownMenuSubTrigger = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuSubTrigger2(props, forwardedRef) {
|
|
8149
8149
|
const { __scopeDropdownMenu, ...subTriggerProps } = props;
|
|
8150
8150
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8151
|
-
return /* @__PURE__ */
|
|
8151
|
+
return /* @__PURE__ */ jsx14(SubTrigger, { ...menuScope, ...subTriggerProps, ref: forwardedRef });
|
|
8152
8152
|
}, "DropdownMenuSubTrigger"));
|
|
8153
8153
|
var DropdownMenuSubContent = /* @__PURE__ */ React37.forwardRef(/* @__PURE__ */ __name23(function DropdownMenuSubContent2(props, forwardedRef) {
|
|
8154
8154
|
const { __scopeDropdownMenu, ...subContentProps } = props;
|
|
8155
8155
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8156
|
-
return /* @__PURE__ */
|
|
8156
|
+
return /* @__PURE__ */ jsx14(SubContent, {
|
|
8157
8157
|
...menuScope,
|
|
8158
8158
|
...subContentProps,
|
|
8159
8159
|
ref: forwardedRef,
|
|
@@ -8183,96 +8183,96 @@ var SubTrigger2 = DropdownMenuSubTrigger;
|
|
|
8183
8183
|
var SubContent2 = DropdownMenuSubContent;
|
|
8184
8184
|
|
|
8185
8185
|
// src/components/ui/dropdown-menu.tsx
|
|
8186
|
-
import {
|
|
8186
|
+
import { jsx as jsx15, jsxs } from "react/jsx-runtime";
|
|
8187
8187
|
var DropdownMenu2 = Root22;
|
|
8188
|
-
var
|
|
8189
|
-
var
|
|
8188
|
+
var DropdownMenuTrigger2 = Trigger;
|
|
8189
|
+
var DropdownMenuSubTrigger2 = React38.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(SubTrigger2, {
|
|
8190
8190
|
ref,
|
|
8191
8191
|
className: cn("flex cursor-default select-none items-center gap-2 rounded-radius-100 px-2 py-1.5 text-sm outline-none", "focus:bg-surface-raised data-[state=open]:bg-surface-raised", inset && "pl-8", "[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", className),
|
|
8192
8192
|
...props,
|
|
8193
8193
|
children: [
|
|
8194
8194
|
children,
|
|
8195
|
-
/* @__PURE__ */
|
|
8195
|
+
/* @__PURE__ */ jsx15(ChevronRight, {
|
|
8196
8196
|
className: "ml-auto"
|
|
8197
|
-
}
|
|
8197
|
+
})
|
|
8198
8198
|
]
|
|
8199
|
-
}
|
|
8200
|
-
|
|
8201
|
-
var
|
|
8199
|
+
}));
|
|
8200
|
+
DropdownMenuSubTrigger2.displayName = SubTrigger2.displayName;
|
|
8201
|
+
var DropdownMenuSubContent2 = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(SubContent2, {
|
|
8202
8202
|
ref,
|
|
8203
8203
|
className: cn("z-50 min-w-[8rem] overflow-hidden rounded-radius-200 border border-line-default", "bg-surface-raised p-1 text-content-default shadow-elevation-2", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2", "data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className),
|
|
8204
8204
|
...props
|
|
8205
|
-
}
|
|
8206
|
-
|
|
8207
|
-
var
|
|
8208
|
-
children: /* @__PURE__ */
|
|
8205
|
+
}));
|
|
8206
|
+
DropdownMenuSubContent2.displayName = SubContent2.displayName;
|
|
8207
|
+
var DropdownMenuContent2 = React38.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx15(Portal22, {
|
|
8208
|
+
children: /* @__PURE__ */ jsx15(Content22, {
|
|
8209
8209
|
ref,
|
|
8210
8210
|
sideOffset,
|
|
8211
8211
|
className: cn("z-50 min-w-[8rem] overflow-hidden rounded-radius-200 border border-line-default", "bg-surface-raised p-1 text-content-default shadow-elevation-2", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2", "data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className),
|
|
8212
8212
|
...props
|
|
8213
|
-
}
|
|
8214
|
-
}
|
|
8215
|
-
|
|
8216
|
-
var
|
|
8213
|
+
})
|
|
8214
|
+
}));
|
|
8215
|
+
DropdownMenuContent2.displayName = Content22.displayName;
|
|
8216
|
+
var DropdownMenuItem2 = React38.forwardRef(({ className, inset, destructive, ...props }, ref) => /* @__PURE__ */ jsx15(Item22, {
|
|
8217
8217
|
ref,
|
|
8218
8218
|
className: cn("relative flex cursor-default select-none items-center gap-2 rounded-radius-100 px-2 py-1.5 text-sm outline-none transition-colors", "data-[highlighted]:bg-surface-overlay data-[highlighted]:text-content-default", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", "[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", inset && "pl-8", destructive && "text-status-danger-bold focus:text-status-danger-bold", className),
|
|
8219
8219
|
...props
|
|
8220
|
-
}
|
|
8221
|
-
|
|
8222
|
-
var
|
|
8220
|
+
}));
|
|
8221
|
+
DropdownMenuItem2.displayName = Item22.displayName;
|
|
8222
|
+
var DropdownMenuCheckboxItem2 = React38.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(CheckboxItem2, {
|
|
8223
8223
|
ref,
|
|
8224
8224
|
className: cn("relative flex cursor-default select-none items-center rounded-radius-100 py-1.5 pl-8 pr-2 text-sm outline-none transition-colors", "focus:bg-surface-overlay focus:text-content-default", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
|
|
8225
8225
|
checked,
|
|
8226
8226
|
...props,
|
|
8227
8227
|
children: [
|
|
8228
|
-
/* @__PURE__ */
|
|
8228
|
+
/* @__PURE__ */ jsx15("span", {
|
|
8229
8229
|
className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
|
|
8230
|
-
children: /* @__PURE__ */
|
|
8231
|
-
children: /* @__PURE__ */
|
|
8230
|
+
children: /* @__PURE__ */ jsx15(ItemIndicator2, {
|
|
8231
|
+
children: /* @__PURE__ */ jsx15(Check, {
|
|
8232
8232
|
className: "h-4 w-4"
|
|
8233
|
-
}
|
|
8234
|
-
}
|
|
8235
|
-
}
|
|
8233
|
+
})
|
|
8234
|
+
})
|
|
8235
|
+
}),
|
|
8236
8236
|
children
|
|
8237
8237
|
]
|
|
8238
|
-
}
|
|
8239
|
-
|
|
8240
|
-
var
|
|
8238
|
+
}));
|
|
8239
|
+
DropdownMenuCheckboxItem2.displayName = CheckboxItem2.displayName;
|
|
8240
|
+
var DropdownMenuRadioItem2 = React38.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(RadioItem2, {
|
|
8241
8241
|
ref,
|
|
8242
8242
|
className: cn("relative flex cursor-default select-none items-center rounded-radius-100 py-1.5 pl-8 pr-2 text-sm outline-none transition-colors", "focus:bg-surface-overlay focus:text-content-default", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
|
|
8243
8243
|
...props,
|
|
8244
8244
|
children: [
|
|
8245
|
-
/* @__PURE__ */
|
|
8245
|
+
/* @__PURE__ */ jsx15("span", {
|
|
8246
8246
|
className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
|
|
8247
|
-
children: /* @__PURE__ */
|
|
8248
|
-
children: /* @__PURE__ */
|
|
8247
|
+
children: /* @__PURE__ */ jsx15(ItemIndicator2, {
|
|
8248
|
+
children: /* @__PURE__ */ jsx15(Circle, {
|
|
8249
8249
|
className: "h-2 w-2 fill-current"
|
|
8250
|
-
}
|
|
8251
|
-
}
|
|
8252
|
-
}
|
|
8250
|
+
})
|
|
8251
|
+
})
|
|
8252
|
+
}),
|
|
8253
8253
|
children
|
|
8254
8254
|
]
|
|
8255
|
-
}
|
|
8256
|
-
|
|
8257
|
-
var
|
|
8255
|
+
}));
|
|
8256
|
+
DropdownMenuRadioItem2.displayName = RadioItem2.displayName;
|
|
8257
|
+
var DropdownMenuLabel2 = React38.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx15(Label2, {
|
|
8258
8258
|
ref,
|
|
8259
8259
|
className: cn("px-2 py-1.5 text-xs font-semibold text-content-subtle", inset && "pl-8", className),
|
|
8260
8260
|
...props
|
|
8261
|
-
}
|
|
8262
|
-
|
|
8263
|
-
var
|
|
8261
|
+
}));
|
|
8262
|
+
DropdownMenuLabel2.displayName = Label2.displayName;
|
|
8263
|
+
var DropdownMenuSeparator2 = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(Separator2, {
|
|
8264
8264
|
ref,
|
|
8265
8265
|
className: cn("-mx-1 my-1 h-px bg-line-default", className),
|
|
8266
8266
|
...props
|
|
8267
|
-
}
|
|
8268
|
-
|
|
8267
|
+
}));
|
|
8268
|
+
DropdownMenuSeparator2.displayName = Separator2.displayName;
|
|
8269
8269
|
var DropdownMenuShortcut = ({
|
|
8270
8270
|
className,
|
|
8271
8271
|
...props
|
|
8272
|
-
}) => /* @__PURE__ */
|
|
8272
|
+
}) => /* @__PURE__ */ jsx15("span", {
|
|
8273
8273
|
className: cn("ml-auto text-xs tracking-widest text-content-subtle", className),
|
|
8274
8274
|
...props
|
|
8275
|
-
}
|
|
8275
|
+
});
|
|
8276
8276
|
DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
|
|
8277
8277
|
|
|
8278
8278
|
// src/components/ui/separator.tsx
|
|
@@ -8280,17 +8280,17 @@ import * as React40 from "react";
|
|
|
8280
8280
|
|
|
8281
8281
|
// ../../node_modules/.pnpm/@radix-ui+react-separator@1.1.15_@types+react-dom@18.3.7_@types+react@18.3.31__@types+r_4a12feba46caccd3ef696040f49a7ac3/node_modules/@radix-ui/react-separator/dist/index.mjs
|
|
8282
8282
|
import * as React39 from "react";
|
|
8283
|
-
import { jsx as
|
|
8283
|
+
import { jsx as jsx16 } from "react/jsx-runtime";
|
|
8284
8284
|
var __defProp24 = Object.defineProperty;
|
|
8285
8285
|
var __name24 = (target, value) => __defProp24(target, "name", { value, configurable: true });
|
|
8286
8286
|
var DEFAULT_ORIENTATION = "horizontal";
|
|
8287
8287
|
var ORIENTATIONS = ["horizontal", "vertical"];
|
|
8288
|
-
var Separator3 = /* @__PURE__ */ React39.forwardRef(/* @__PURE__ */ __name24(function
|
|
8288
|
+
var Separator3 = /* @__PURE__ */ React39.forwardRef(/* @__PURE__ */ __name24(function Separator2(props, forwardedRef) {
|
|
8289
8289
|
const { decorative, orientation: orientationProp = DEFAULT_ORIENTATION, ...domProps } = props;
|
|
8290
8290
|
const orientation = isValidOrientation(orientationProp) ? orientationProp : DEFAULT_ORIENTATION;
|
|
8291
8291
|
const ariaOrientation = orientation === "vertical" ? orientation : undefined;
|
|
8292
8292
|
const semanticProps = decorative ? { role: "none" } : { "aria-orientation": ariaOrientation, role: "separator" };
|
|
8293
|
-
return /* @__PURE__ */
|
|
8293
|
+
return /* @__PURE__ */ jsx16(Primitive.div, {
|
|
8294
8294
|
"data-orientation": orientation,
|
|
8295
8295
|
...semanticProps,
|
|
8296
8296
|
...domProps,
|
|
@@ -8304,158 +8304,158 @@ __name24(isValidOrientation, "isValidOrientation");
|
|
|
8304
8304
|
var Root4 = Separator3;
|
|
8305
8305
|
|
|
8306
8306
|
// src/components/ui/separator.tsx
|
|
8307
|
-
import {
|
|
8308
|
-
var
|
|
8307
|
+
import { jsx as jsx17 } from "react/jsx-runtime";
|
|
8308
|
+
var Separator4 = React40.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx17(Root4, {
|
|
8309
8309
|
ref,
|
|
8310
8310
|
decorative,
|
|
8311
8311
|
orientation,
|
|
8312
8312
|
className: cn("shrink-0 bg-line-default", orientation === "horizontal" ? "h-px w-full" : "h-full w-px", className),
|
|
8313
8313
|
...props
|
|
8314
|
-
}
|
|
8315
|
-
|
|
8314
|
+
}));
|
|
8315
|
+
Separator4.displayName = Root4.displayName;
|
|
8316
8316
|
|
|
8317
8317
|
// src/components/Header.tsx
|
|
8318
|
-
import {
|
|
8318
|
+
import { jsx as jsx18, jsxs as jsxs2, Fragment as Fragment5 } from "react/jsx-runtime";
|
|
8319
8319
|
function getInitials(name) {
|
|
8320
8320
|
return name.split(" ").filter(Boolean).slice(0, 2).map((w) => w[0]?.toUpperCase() ?? "").join("");
|
|
8321
8321
|
}
|
|
8322
8322
|
function IconButton({ label, children, className, ...props }) {
|
|
8323
|
-
return /* @__PURE__ */
|
|
8323
|
+
return /* @__PURE__ */ jsx18("button", {
|
|
8324
8324
|
type: "button",
|
|
8325
8325
|
"aria-label": label,
|
|
8326
8326
|
className: cn("flex h-8 w-8 items-center justify-center rounded-md", "text-content-subtle transition-colors", "hover:bg-surface-raised hover:text-content-default", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-action-primary", className),
|
|
8327
8327
|
...props,
|
|
8328
8328
|
children
|
|
8329
|
-
}
|
|
8329
|
+
});
|
|
8330
8330
|
}
|
|
8331
8331
|
function UserMenu({ user, tenant }) {
|
|
8332
|
-
return /* @__PURE__ */
|
|
8332
|
+
return /* @__PURE__ */ jsxs2(DropdownMenu2, {
|
|
8333
8333
|
children: [
|
|
8334
|
-
/* @__PURE__ */
|
|
8334
|
+
/* @__PURE__ */ jsx18(DropdownMenuTrigger2, {
|
|
8335
8335
|
asChild: true,
|
|
8336
|
-
children: /* @__PURE__ */
|
|
8336
|
+
children: /* @__PURE__ */ jsx18("button", {
|
|
8337
8337
|
type: "button",
|
|
8338
8338
|
"aria-label": `User menu for ${user.name}`,
|
|
8339
8339
|
className: cn("rounded-full outline-none", "ring-offset-surface-raised focus-visible:ring-2 focus-visible:ring-action-primary focus-visible:ring-offset-2", "transition-opacity hover:opacity-80"),
|
|
8340
|
-
children: /* @__PURE__ */
|
|
8340
|
+
children: /* @__PURE__ */ jsxs2(Avatar2, {
|
|
8341
8341
|
className: "h-8 w-8",
|
|
8342
8342
|
children: [
|
|
8343
|
-
/* @__PURE__ */
|
|
8343
|
+
/* @__PURE__ */ jsx18(AvatarImage2, {
|
|
8344
8344
|
src: user.avatar,
|
|
8345
8345
|
alt: user.name
|
|
8346
|
-
}
|
|
8347
|
-
/* @__PURE__ */
|
|
8346
|
+
}),
|
|
8347
|
+
/* @__PURE__ */ jsx18(AvatarFallback2, {
|
|
8348
8348
|
className: "text-xs",
|
|
8349
8349
|
children: getInitials(user.name)
|
|
8350
|
-
}
|
|
8350
|
+
})
|
|
8351
8351
|
]
|
|
8352
|
-
}
|
|
8353
|
-
}
|
|
8354
|
-
}
|
|
8355
|
-
/* @__PURE__ */
|
|
8352
|
+
})
|
|
8353
|
+
})
|
|
8354
|
+
}),
|
|
8355
|
+
/* @__PURE__ */ jsxs2(DropdownMenuContent2, {
|
|
8356
8356
|
align: "end",
|
|
8357
8357
|
className: "w-56",
|
|
8358
8358
|
children: [
|
|
8359
|
-
/* @__PURE__ */
|
|
8359
|
+
/* @__PURE__ */ jsx18(DropdownMenuLabel2, {
|
|
8360
8360
|
className: "font-normal",
|
|
8361
|
-
children: /* @__PURE__ */
|
|
8361
|
+
children: /* @__PURE__ */ jsxs2("div", {
|
|
8362
8362
|
className: "flex flex-col gap-0.5",
|
|
8363
8363
|
children: [
|
|
8364
|
-
/* @__PURE__ */
|
|
8364
|
+
/* @__PURE__ */ jsx18("span", {
|
|
8365
8365
|
className: "text-sm font-semibold text-content-default",
|
|
8366
8366
|
children: user.name
|
|
8367
|
-
}
|
|
8368
|
-
/* @__PURE__ */
|
|
8367
|
+
}),
|
|
8368
|
+
/* @__PURE__ */ jsx18("span", {
|
|
8369
8369
|
className: "text-xs text-content-subtle truncate",
|
|
8370
8370
|
children: user.email
|
|
8371
|
-
}
|
|
8371
|
+
})
|
|
8372
8372
|
]
|
|
8373
|
-
}
|
|
8374
|
-
}
|
|
8375
|
-
/* @__PURE__ */
|
|
8376
|
-
/* @__PURE__ */
|
|
8373
|
+
})
|
|
8374
|
+
}),
|
|
8375
|
+
/* @__PURE__ */ jsx18(DropdownMenuSeparator2, {}),
|
|
8376
|
+
/* @__PURE__ */ jsx18(DropdownMenuItem2, {
|
|
8377
8377
|
asChild: true,
|
|
8378
|
-
children: /* @__PURE__ */
|
|
8378
|
+
children: /* @__PURE__ */ jsxs2("a", {
|
|
8379
8379
|
href: tenant.communityUrl,
|
|
8380
8380
|
target: "_blank",
|
|
8381
8381
|
rel: "noreferrer",
|
|
8382
8382
|
className: "cursor-pointer",
|
|
8383
8383
|
children: [
|
|
8384
|
-
/* @__PURE__ */
|
|
8384
|
+
/* @__PURE__ */ jsx18(ExternalLink, {
|
|
8385
8385
|
className: "h-4 w-4"
|
|
8386
|
-
}
|
|
8386
|
+
}),
|
|
8387
8387
|
"Open Community"
|
|
8388
8388
|
]
|
|
8389
|
-
}
|
|
8390
|
-
}
|
|
8391
|
-
/* @__PURE__ */
|
|
8389
|
+
})
|
|
8390
|
+
}),
|
|
8391
|
+
/* @__PURE__ */ jsx18(DropdownMenuItem2, {
|
|
8392
8392
|
asChild: true,
|
|
8393
|
-
children: /* @__PURE__ */
|
|
8393
|
+
children: /* @__PURE__ */ jsxs2("a", {
|
|
8394
8394
|
href: "/settings/profile",
|
|
8395
8395
|
className: "cursor-pointer",
|
|
8396
8396
|
children: [
|
|
8397
|
-
/* @__PURE__ */
|
|
8397
|
+
/* @__PURE__ */ jsx18(Settings, {
|
|
8398
8398
|
className: "h-4 w-4"
|
|
8399
|
-
}
|
|
8399
|
+
}),
|
|
8400
8400
|
"Settings"
|
|
8401
8401
|
]
|
|
8402
|
-
}
|
|
8403
|
-
}
|
|
8404
|
-
/* @__PURE__ */
|
|
8405
|
-
/* @__PURE__ */
|
|
8402
|
+
})
|
|
8403
|
+
}),
|
|
8404
|
+
/* @__PURE__ */ jsx18(DropdownMenuSeparator2, {}),
|
|
8405
|
+
/* @__PURE__ */ jsx18(DropdownMenuItem2, {
|
|
8406
8406
|
asChild: true,
|
|
8407
8407
|
destructive: true,
|
|
8408
|
-
children: /* @__PURE__ */
|
|
8408
|
+
children: /* @__PURE__ */ jsxs2("a", {
|
|
8409
8409
|
href: "/member/logout",
|
|
8410
8410
|
className: "cursor-pointer",
|
|
8411
8411
|
children: [
|
|
8412
|
-
/* @__PURE__ */
|
|
8412
|
+
/* @__PURE__ */ jsx18(LogOut, {
|
|
8413
8413
|
className: "h-4 w-4"
|
|
8414
|
-
}
|
|
8414
|
+
}),
|
|
8415
8415
|
"Log out"
|
|
8416
8416
|
]
|
|
8417
|
-
}
|
|
8418
|
-
}
|
|
8417
|
+
})
|
|
8418
|
+
})
|
|
8419
8419
|
]
|
|
8420
|
-
}
|
|
8420
|
+
})
|
|
8421
8421
|
]
|
|
8422
|
-
}
|
|
8422
|
+
});
|
|
8423
8423
|
}
|
|
8424
|
-
var Header = React41.memo(function
|
|
8425
|
-
return /* @__PURE__ */
|
|
8424
|
+
var Header = React41.memo(function Header({ user, tenant, rightSlot }) {
|
|
8425
|
+
return /* @__PURE__ */ jsxs2("header", {
|
|
8426
8426
|
className: cn("app-shell-header", "flex h-12 shrink-0 items-center justify-end gap-1 px-4", "border-b border-line-default bg-surface-default", "z-10"),
|
|
8427
8427
|
children: [
|
|
8428
|
-
/* @__PURE__ */
|
|
8428
|
+
/* @__PURE__ */ jsx18(IconButton, {
|
|
8429
8429
|
label: "Members online",
|
|
8430
|
-
children: /* @__PURE__ */
|
|
8430
|
+
children: /* @__PURE__ */ jsx18(Users, {
|
|
8431
8431
|
className: "h-4 w-4"
|
|
8432
|
-
}
|
|
8433
|
-
}
|
|
8434
|
-
/* @__PURE__ */
|
|
8432
|
+
})
|
|
8433
|
+
}),
|
|
8434
|
+
/* @__PURE__ */ jsx18(IconButton, {
|
|
8435
8435
|
label: "Notifications",
|
|
8436
|
-
children: /* @__PURE__ */
|
|
8436
|
+
children: /* @__PURE__ */ jsx18(Bell, {
|
|
8437
8437
|
className: "h-4 w-4"
|
|
8438
|
-
}
|
|
8439
|
-
}
|
|
8440
|
-
rightSlot != null && /* @__PURE__ */
|
|
8438
|
+
})
|
|
8439
|
+
}),
|
|
8440
|
+
rightSlot != null && /* @__PURE__ */ jsxs2(Fragment5, {
|
|
8441
8441
|
children: [
|
|
8442
|
-
/* @__PURE__ */
|
|
8442
|
+
/* @__PURE__ */ jsx18(Separator4, {
|
|
8443
8443
|
orientation: "vertical",
|
|
8444
8444
|
className: "mx-1 h-4"
|
|
8445
|
-
}
|
|
8445
|
+
}),
|
|
8446
8446
|
rightSlot
|
|
8447
8447
|
]
|
|
8448
|
-
}
|
|
8449
|
-
/* @__PURE__ */
|
|
8448
|
+
}),
|
|
8449
|
+
/* @__PURE__ */ jsx18(Separator4, {
|
|
8450
8450
|
orientation: "vertical",
|
|
8451
8451
|
className: "mx-1 h-4"
|
|
8452
|
-
}
|
|
8453
|
-
/* @__PURE__ */
|
|
8452
|
+
}),
|
|
8453
|
+
/* @__PURE__ */ jsx18(UserMenu, {
|
|
8454
8454
|
user,
|
|
8455
8455
|
tenant
|
|
8456
|
-
}
|
|
8456
|
+
})
|
|
8457
8457
|
]
|
|
8458
|
-
}
|
|
8458
|
+
});
|
|
8459
8459
|
});
|
|
8460
8460
|
|
|
8461
8461
|
// src/components/SideNavigation.tsx
|
|
@@ -8469,7 +8469,7 @@ import * as React43 from "react";
|
|
|
8469
8469
|
|
|
8470
8470
|
// ../../node_modules/.pnpm/@radix-ui+react-collapsible@1.1.20_@types+react-dom@18.3.7_@types+react@18.3.31__@types_95df58d005192586eb1c943efded7427/node_modules/@radix-ui/react-collapsible/dist/index.mjs
|
|
8471
8471
|
import * as React42 from "react";
|
|
8472
|
-
import { jsx as
|
|
8472
|
+
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
8473
8473
|
"use client";
|
|
8474
8474
|
var __defProp25 = Object.defineProperty;
|
|
8475
8475
|
var __name25 = (target, value) => __defProp25(target, "name", { value, configurable: true });
|
|
@@ -8491,13 +8491,13 @@ var Collapsible = /* @__PURE__ */ React42.forwardRef(/* @__PURE__ */ __name25(fu
|
|
|
8491
8491
|
onChange: onOpenChange,
|
|
8492
8492
|
caller: COLLAPSIBLE_NAME
|
|
8493
8493
|
});
|
|
8494
|
-
return /* @__PURE__ */
|
|
8494
|
+
return /* @__PURE__ */ jsx19(CollapsibleProvider, {
|
|
8495
8495
|
scope: __scopeCollapsible,
|
|
8496
8496
|
disabled,
|
|
8497
8497
|
contentId: useId(),
|
|
8498
8498
|
open,
|
|
8499
8499
|
onOpenToggle: React42.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
|
|
8500
|
-
children: /* @__PURE__ */
|
|
8500
|
+
children: /* @__PURE__ */ jsx19(Primitive.div, {
|
|
8501
8501
|
"data-state": getState(open),
|
|
8502
8502
|
"data-disabled": disabled ? "" : undefined,
|
|
8503
8503
|
...collapsibleProps,
|
|
@@ -8509,7 +8509,7 @@ var TRIGGER_NAME2 = "CollapsibleTrigger";
|
|
|
8509
8509
|
var CollapsibleTrigger = /* @__PURE__ */ React42.forwardRef(/* @__PURE__ */ __name25(function CollapsibleTrigger2(props, forwardedRef) {
|
|
8510
8510
|
const { __scopeCollapsible, ...triggerProps } = props;
|
|
8511
8511
|
const context = useCollapsibleContext(TRIGGER_NAME2, __scopeCollapsible);
|
|
8512
|
-
return /* @__PURE__ */
|
|
8512
|
+
return /* @__PURE__ */ jsx19(Primitive.button, {
|
|
8513
8513
|
type: "button",
|
|
8514
8514
|
"aria-controls": context.open ? context.contentId : undefined,
|
|
8515
8515
|
"aria-expanded": context.open || false,
|
|
@@ -8525,7 +8525,7 @@ var CONTENT_NAME4 = "CollapsibleContent";
|
|
|
8525
8525
|
var CollapsibleContent = /* @__PURE__ */ React42.forwardRef(/* @__PURE__ */ __name25(function CollapsibleContent2(props, forwardedRef) {
|
|
8526
8526
|
const { forceMount, ...contentProps } = props;
|
|
8527
8527
|
const context = useCollapsibleContext(CONTENT_NAME4, props.__scopeCollapsible);
|
|
8528
|
-
return /* @__PURE__ */
|
|
8528
|
+
return /* @__PURE__ */ jsx19(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx19(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });
|
|
8529
8529
|
}, "CollapsibleContent"));
|
|
8530
8530
|
var CollapsibleContentImpl = /* @__PURE__ */ React42.forwardRef(/* @__PURE__ */ __name25(function CollapsibleContentImpl2(props, forwardedRef) {
|
|
8531
8531
|
const { __scopeCollapsible, present, children, ...contentProps } = props;
|
|
@@ -8563,7 +8563,7 @@ var CollapsibleContentImpl = /* @__PURE__ */ React42.forwardRef(/* @__PURE__ */
|
|
|
8563
8563
|
setIsPresent(present);
|
|
8564
8564
|
}
|
|
8565
8565
|
}, [context.open, present]);
|
|
8566
|
-
return /* @__PURE__ */
|
|
8566
|
+
return /* @__PURE__ */ jsx19(Primitive.div, {
|
|
8567
8567
|
"data-state": getState(context.open),
|
|
8568
8568
|
"data-disabled": context.disabled ? "" : undefined,
|
|
8569
8569
|
id: context.contentId,
|
|
@@ -8582,12 +8582,12 @@ function getState(open) {
|
|
|
8582
8582
|
return open ? "open" : "closed";
|
|
8583
8583
|
}
|
|
8584
8584
|
__name25(getState, "getState");
|
|
8585
|
-
var
|
|
8585
|
+
var Root5 = Collapsible;
|
|
8586
8586
|
var Trigger2 = CollapsibleTrigger;
|
|
8587
8587
|
var Content3 = CollapsibleContent;
|
|
8588
8588
|
|
|
8589
8589
|
// ../../node_modules/.pnpm/@radix-ui+react-accordion@1.2.20_@types+react-dom@18.3.7_@types+react@18.3.31__@types+r_6e1de0feb05f9758311ca62a4562cf78/node_modules/@radix-ui/react-accordion/dist/index.mjs
|
|
8590
|
-
import { jsx as
|
|
8590
|
+
import { jsx as jsx20 } from "react/jsx-runtime";
|
|
8591
8591
|
"use client";
|
|
8592
8592
|
var __defProp26 = Object.defineProperty;
|
|
8593
8593
|
var __name26 = (target, value) => __defProp26(target, "name", { value, configurable: true });
|
|
@@ -8603,7 +8603,7 @@ var Accordion = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name26(func
|
|
|
8603
8603
|
const { type, ...accordionProps } = props;
|
|
8604
8604
|
const singleProps = accordionProps;
|
|
8605
8605
|
const multipleProps = accordionProps;
|
|
8606
|
-
return /* @__PURE__ */
|
|
8606
|
+
return /* @__PURE__ */ jsx20(Collection3.Provider, { scope: props.__scopeAccordion, children: type === "multiple" ? /* @__PURE__ */ jsx20(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx20(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });
|
|
8607
8607
|
}, "Accordion"));
|
|
8608
8608
|
var [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);
|
|
8609
8609
|
var [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(ACCORDION_NAME, { collapsible: false });
|
|
@@ -8621,12 +8621,12 @@ var AccordionImplSingle = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __n
|
|
|
8621
8621
|
onChange: onValueChange,
|
|
8622
8622
|
caller: ACCORDION_NAME
|
|
8623
8623
|
});
|
|
8624
|
-
return /* @__PURE__ */
|
|
8624
|
+
return /* @__PURE__ */ jsx20(AccordionValueProvider, {
|
|
8625
8625
|
scope: props.__scopeAccordion,
|
|
8626
8626
|
value: React43.useMemo(() => value ? [value] : [], [value]),
|
|
8627
8627
|
onItemOpen: setValue,
|
|
8628
8628
|
onItemClose: React43.useCallback(() => collapsible && setValue(""), [collapsible, setValue]),
|
|
8629
|
-
children: /* @__PURE__ */
|
|
8629
|
+
children: /* @__PURE__ */ jsx20(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx20(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })
|
|
8630
8630
|
});
|
|
8631
8631
|
}, "AccordionImplSingle"));
|
|
8632
8632
|
var AccordionImplMultiple = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name26(function AccordionImplMultiple2(props, forwardedRef) {
|
|
@@ -8644,12 +8644,12 @@ var AccordionImplMultiple = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ _
|
|
|
8644
8644
|
});
|
|
8645
8645
|
const handleItemOpen = React43.useCallback((itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]), [setValue]);
|
|
8646
8646
|
const handleItemClose = React43.useCallback((itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)), [setValue]);
|
|
8647
|
-
return /* @__PURE__ */
|
|
8647
|
+
return /* @__PURE__ */ jsx20(AccordionValueProvider, {
|
|
8648
8648
|
scope: props.__scopeAccordion,
|
|
8649
8649
|
value,
|
|
8650
8650
|
onItemOpen: handleItemOpen,
|
|
8651
8651
|
onItemClose: handleItemClose,
|
|
8652
|
-
children: /* @__PURE__ */
|
|
8652
|
+
children: /* @__PURE__ */ jsx20(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx20(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })
|
|
8653
8653
|
});
|
|
8654
8654
|
}, "AccordionImplMultiple"));
|
|
8655
8655
|
var [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);
|
|
@@ -8724,12 +8724,12 @@ var AccordionImpl = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name26(
|
|
|
8724
8724
|
const clampedIndex = nextIndex % triggerCount;
|
|
8725
8725
|
triggerCollection[clampedIndex].ref.current?.focus();
|
|
8726
8726
|
});
|
|
8727
|
-
return /* @__PURE__ */
|
|
8727
|
+
return /* @__PURE__ */ jsx20(AccordionImplProvider, {
|
|
8728
8728
|
scope: __scopeAccordion,
|
|
8729
8729
|
disabled,
|
|
8730
8730
|
direction: dir,
|
|
8731
8731
|
orientation,
|
|
8732
|
-
children: /* @__PURE__ */
|
|
8732
|
+
children: /* @__PURE__ */ jsx20(Collection3.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx20(Primitive.div, {
|
|
8733
8733
|
...accordionProps,
|
|
8734
8734
|
"data-orientation": orientation,
|
|
8735
8735
|
ref: composedRefs,
|
|
@@ -8747,12 +8747,12 @@ var AccordionItem = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name26(
|
|
|
8747
8747
|
const triggerId = useId();
|
|
8748
8748
|
const open = value && valueContext.value.includes(value) || false;
|
|
8749
8749
|
const disabled = accordionContext.disabled || props.disabled;
|
|
8750
|
-
return /* @__PURE__ */
|
|
8750
|
+
return /* @__PURE__ */ jsx20(AccordionItemProvider, {
|
|
8751
8751
|
scope: __scopeAccordion,
|
|
8752
8752
|
open,
|
|
8753
8753
|
disabled,
|
|
8754
8754
|
triggerId,
|
|
8755
|
-
children: /* @__PURE__ */
|
|
8755
|
+
children: /* @__PURE__ */ jsx20(Root5, {
|
|
8756
8756
|
"data-orientation": accordionContext.orientation,
|
|
8757
8757
|
"data-state": getState2(open),
|
|
8758
8758
|
...collapsibleScope,
|
|
@@ -8775,7 +8775,7 @@ var AccordionHeader = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name2
|
|
|
8775
8775
|
const { __scopeAccordion, ...headerProps } = props;
|
|
8776
8776
|
const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
|
|
8777
8777
|
const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);
|
|
8778
|
-
return /* @__PURE__ */
|
|
8778
|
+
return /* @__PURE__ */ jsx20(Primitive.h3, {
|
|
8779
8779
|
"data-orientation": accordionContext.orientation,
|
|
8780
8780
|
"data-state": getState2(itemContext.open),
|
|
8781
8781
|
"data-disabled": itemContext.disabled ? "" : undefined,
|
|
@@ -8790,7 +8790,7 @@ var AccordionTrigger = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name
|
|
|
8790
8790
|
const itemContext = useAccordionItemContext(TRIGGER_NAME3, __scopeAccordion);
|
|
8791
8791
|
const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME3, __scopeAccordion);
|
|
8792
8792
|
const collapsibleScope = useCollapsibleScope(__scopeAccordion);
|
|
8793
|
-
return /* @__PURE__ */
|
|
8793
|
+
return /* @__PURE__ */ jsx20(Collection3.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx20(Trigger2, {
|
|
8794
8794
|
"aria-disabled": itemContext.open && !collapsibleContext.collapsible || undefined,
|
|
8795
8795
|
"data-orientation": accordionContext.orientation,
|
|
8796
8796
|
id: itemContext.triggerId,
|
|
@@ -8805,7 +8805,7 @@ var AccordionContent = /* @__PURE__ */ React43.forwardRef(/* @__PURE__ */ __name
|
|
|
8805
8805
|
const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
|
|
8806
8806
|
const itemContext = useAccordionItemContext(CONTENT_NAME5, __scopeAccordion);
|
|
8807
8807
|
const collapsibleScope = useCollapsibleScope(__scopeAccordion);
|
|
8808
|
-
return /* @__PURE__ */
|
|
8808
|
+
return /* @__PURE__ */ jsx20(Content3, {
|
|
8809
8809
|
role: "region",
|
|
8810
8810
|
"aria-labelledby": itemContext.triggerId,
|
|
8811
8811
|
"data-orientation": accordionContext.orientation,
|
|
@@ -8825,44 +8825,44 @@ function getState2(open) {
|
|
|
8825
8825
|
__name26(getState2, "getState");
|
|
8826
8826
|
var Root23 = Accordion;
|
|
8827
8827
|
var Item3 = AccordionItem;
|
|
8828
|
-
var
|
|
8828
|
+
var Header2 = AccordionHeader;
|
|
8829
8829
|
var Trigger22 = AccordionTrigger;
|
|
8830
8830
|
var Content23 = AccordionContent;
|
|
8831
8831
|
|
|
8832
8832
|
// src/components/ui/accordion.tsx
|
|
8833
|
-
import {
|
|
8834
|
-
var
|
|
8835
|
-
var
|
|
8833
|
+
import { jsx as jsx21, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
8834
|
+
var Accordion2 = Root23;
|
|
8835
|
+
var AccordionItem2 = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx21(Item3, {
|
|
8836
8836
|
ref,
|
|
8837
8837
|
className: cn(className),
|
|
8838
8838
|
...props
|
|
8839
|
-
}
|
|
8840
|
-
|
|
8841
|
-
var
|
|
8839
|
+
}));
|
|
8840
|
+
AccordionItem2.displayName = "AccordionItem";
|
|
8841
|
+
var AccordionTrigger2 = React44.forwardRef(({ className, children, hideChevron = false, ...props }, ref) => /* @__PURE__ */ jsx21(Header2, {
|
|
8842
8842
|
className: "flex",
|
|
8843
|
-
children: /* @__PURE__ */
|
|
8843
|
+
children: /* @__PURE__ */ jsxs3(Trigger22, {
|
|
8844
8844
|
ref,
|
|
8845
8845
|
className: cn("flex flex-1 items-center gap-2 text-sm font-medium outline-none transition-all", "[&[data-state=open]>svg.accordion-chevron]:rotate-180", className),
|
|
8846
8846
|
...props,
|
|
8847
8847
|
children: [
|
|
8848
8848
|
children,
|
|
8849
|
-
!hideChevron && /* @__PURE__ */
|
|
8849
|
+
!hideChevron && /* @__PURE__ */ jsx21(ChevronDown, {
|
|
8850
8850
|
className: "accordion-chevron ml-auto h-3.5 w-3.5 shrink-0 text-content-subtle/60 transition-transform duration-150"
|
|
8851
|
-
}
|
|
8851
|
+
})
|
|
8852
8852
|
]
|
|
8853
|
-
}
|
|
8854
|
-
}
|
|
8855
|
-
|
|
8856
|
-
var
|
|
8853
|
+
})
|
|
8854
|
+
}));
|
|
8855
|
+
AccordionTrigger2.displayName = "AccordionTrigger";
|
|
8856
|
+
var AccordionContent2 = React44.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx21(Content23, {
|
|
8857
8857
|
ref,
|
|
8858
8858
|
className: "overflow-hidden data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
|
|
8859
8859
|
...props,
|
|
8860
|
-
children: /* @__PURE__ */
|
|
8860
|
+
children: /* @__PURE__ */ jsx21("div", {
|
|
8861
8861
|
className: cn("pb-1 pt-0.5", className),
|
|
8862
8862
|
children
|
|
8863
|
-
}
|
|
8864
|
-
}
|
|
8865
|
-
|
|
8863
|
+
})
|
|
8864
|
+
}));
|
|
8865
|
+
AccordionContent2.displayName = "AccordionContent";
|
|
8866
8866
|
|
|
8867
8867
|
// src/components/ui/button.tsx
|
|
8868
8868
|
import * as React45 from "react";
|
|
@@ -8893,8 +8893,8 @@ var cva = (base, config) => (props) => {
|
|
|
8893
8893
|
}, {});
|
|
8894
8894
|
const getCompoundVariantClassNames = config === null || config === undefined ? undefined : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === undefined ? undefined : _config_compoundVariants.reduce((acc, param) => {
|
|
8895
8895
|
let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;
|
|
8896
|
-
return Object.entries(compoundVariantOptions).every((
|
|
8897
|
-
let [key, value] =
|
|
8896
|
+
return Object.entries(compoundVariantOptions).every((param) => {
|
|
8897
|
+
let [key, value] = param;
|
|
8898
8898
|
return Array.isArray(value) ? value.includes({
|
|
8899
8899
|
...defaultVariants,
|
|
8900
8900
|
...propsWithoutUndefined
|
|
@@ -8912,7 +8912,7 @@ var cva = (base, config) => (props) => {
|
|
|
8912
8912
|
};
|
|
8913
8913
|
|
|
8914
8914
|
// src/components/ui/button.tsx
|
|
8915
|
-
import {
|
|
8915
|
+
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
8916
8916
|
var buttonVariants = cva([
|
|
8917
8917
|
"inline-flex items-center justify-center gap-2 whitespace-nowrap",
|
|
8918
8918
|
"rounded-radius-100 text-sm font-medium",
|
|
@@ -8941,13 +8941,13 @@ var buttonVariants = cva([
|
|
|
8941
8941
|
size: "default"
|
|
8942
8942
|
}
|
|
8943
8943
|
});
|
|
8944
|
-
var Button = React45.forwardRef(({ className, variant, size
|
|
8944
|
+
var Button = React45.forwardRef(({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
8945
8945
|
const Comp = asChild ? Slot : "button";
|
|
8946
|
-
return /* @__PURE__ */
|
|
8947
|
-
className: cn(buttonVariants({ variant, size
|
|
8946
|
+
return /* @__PURE__ */ jsx23(Comp, {
|
|
8947
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
8948
8948
|
ref,
|
|
8949
8949
|
...props
|
|
8950
|
-
}
|
|
8950
|
+
});
|
|
8951
8951
|
});
|
|
8952
8952
|
Button.displayName = "Button";
|
|
8953
8953
|
|
|
@@ -8960,14 +8960,14 @@ import * as React210 from "react";
|
|
|
8960
8960
|
// ../../node_modules/.pnpm/@radix-ui+number@1.1.3/node_modules/@radix-ui/number/dist/index.mjs
|
|
8961
8961
|
var __defProp27 = Object.defineProperty;
|
|
8962
8962
|
var __name27 = (target, value) => __defProp27(target, "name", { value, configurable: true });
|
|
8963
|
-
function clamp2(value, [
|
|
8964
|
-
return Math.min(
|
|
8963
|
+
function clamp2(value, [min, max]) {
|
|
8964
|
+
return Math.min(max, Math.max(min, value));
|
|
8965
8965
|
}
|
|
8966
8966
|
__name27(clamp2, "clamp");
|
|
8967
8967
|
|
|
8968
8968
|
// ../../node_modules/.pnpm/@radix-ui+react-scroll-area@1.2.18_@types+react-dom@18.3.7_@types+react@18.3.31__@types_44cf8b004accc7732570bde73f91c617/node_modules/@radix-ui/react-scroll-area/dist/index.mjs
|
|
8969
8969
|
import * as React46 from "react";
|
|
8970
|
-
import { Fragment as Fragment6, jsx as
|
|
8970
|
+
import { Fragment as Fragment6, jsx as jsx24, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
8971
8971
|
"use client";
|
|
8972
8972
|
var __defProp28 = Object.defineProperty;
|
|
8973
8973
|
var __name28 = (target, value) => __defProp28(target, "name", { value, configurable: true });
|
|
@@ -9000,7 +9000,7 @@ var ScrollArea = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(fu
|
|
|
9000
9000
|
const [scrollbarYEnabled, setScrollbarYEnabled] = React210.useState(false);
|
|
9001
9001
|
const composedRefs = useComposedRefs(forwardedRef, setScrollArea);
|
|
9002
9002
|
const direction = useDirection(dir);
|
|
9003
|
-
return /* @__PURE__ */
|
|
9003
|
+
return /* @__PURE__ */ jsx24(ScrollAreaProvider, {
|
|
9004
9004
|
scope: __scopeScrollArea,
|
|
9005
9005
|
type,
|
|
9006
9006
|
dir: direction,
|
|
@@ -9020,7 +9020,7 @@ var ScrollArea = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(fu
|
|
|
9020
9020
|
onScrollbarYEnabledChange: setScrollbarYEnabled,
|
|
9021
9021
|
onCornerWidthChange: setCornerWidth,
|
|
9022
9022
|
onCornerHeightChange: setCornerHeight,
|
|
9023
|
-
children: /* @__PURE__ */
|
|
9023
|
+
children: /* @__PURE__ */ jsx24(Primitive.div, {
|
|
9024
9024
|
dir: direction,
|
|
9025
9025
|
...scrollAreaProps,
|
|
9026
9026
|
ref: composedRefs,
|
|
@@ -9039,9 +9039,9 @@ var ScrollAreaViewport = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __n
|
|
|
9039
9039
|
const context = useScrollAreaContext(VIEWPORT_NAME, __scopeScrollArea);
|
|
9040
9040
|
const ref = React210.useRef(null);
|
|
9041
9041
|
const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);
|
|
9042
|
-
return /* @__PURE__ */
|
|
9043
|
-
/* @__PURE__ */
|
|
9044
|
-
/* @__PURE__ */
|
|
9042
|
+
return /* @__PURE__ */ jsxs4(Fragment6, { children: [
|
|
9043
|
+
/* @__PURE__ */ jsx24(ScrollAreaViewportStyle, { nonce }),
|
|
9044
|
+
/* @__PURE__ */ jsx24(Primitive.div, {
|
|
9045
9045
|
"data-radix-scroll-area-viewport": "",
|
|
9046
9046
|
...viewportProps,
|
|
9047
9047
|
ref: composedRefs,
|
|
@@ -9050,12 +9050,12 @@ var ScrollAreaViewport = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __n
|
|
|
9050
9050
|
overflowY: context.scrollbarYEnabled ? "scroll" : "hidden",
|
|
9051
9051
|
...props.style
|
|
9052
9052
|
},
|
|
9053
|
-
children: /* @__PURE__ */
|
|
9053
|
+
children: /* @__PURE__ */ jsx24("div", { ref: context.onContentChange, style: { minWidth: "100%", display: "table" }, children })
|
|
9054
9054
|
})
|
|
9055
9055
|
] });
|
|
9056
9056
|
}, "ScrollAreaViewport"));
|
|
9057
9057
|
var ScrollAreaViewportStyle = /* @__PURE__ */ React210.memo(/* @__PURE__ */ __name28(function ScrollAreaViewportStyle2({ nonce }) {
|
|
9058
|
-
return /* @__PURE__ */
|
|
9058
|
+
return /* @__PURE__ */ jsx24("style", {
|
|
9059
9059
|
dangerouslySetInnerHTML: {
|
|
9060
9060
|
__html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`
|
|
9061
9061
|
},
|
|
@@ -9074,7 +9074,7 @@ var ScrollAreaScrollbar = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __
|
|
|
9074
9074
|
isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);
|
|
9075
9075
|
};
|
|
9076
9076
|
}, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);
|
|
9077
|
-
return context.type === "hover" ? /* @__PURE__ */
|
|
9077
|
+
return context.type === "hover" ? /* @__PURE__ */ jsx24(ScrollAreaScrollbarHover, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === "scroll" ? /* @__PURE__ */ jsx24(ScrollAreaScrollbarScroll, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === "auto" ? /* @__PURE__ */ jsx24(ScrollAreaScrollbarAuto, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === "always" ? /* @__PURE__ */ jsx24(ScrollAreaScrollbarVisible, { ...scrollbarProps, ref: forwardedRef, "data-state": "visible" }) : null;
|
|
9078
9078
|
}, "ScrollAreaScrollbar"));
|
|
9079
9079
|
var ScrollAreaScrollbarHover = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(function ScrollAreaScrollbarHover2(props, forwardedRef) {
|
|
9080
9080
|
const { forceMount, ...scrollbarProps } = props;
|
|
@@ -9100,7 +9100,7 @@ var ScrollAreaScrollbarHover = /* @__PURE__ */ React210.forwardRef(/* @__PURE__
|
|
|
9100
9100
|
};
|
|
9101
9101
|
}
|
|
9102
9102
|
}, [context.scrollArea, context.scrollHideDelay]);
|
|
9103
|
-
return /* @__PURE__ */
|
|
9103
|
+
return /* @__PURE__ */ jsx24(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx24(ScrollAreaScrollbarAuto, {
|
|
9104
9104
|
"data-state": visible ? "visible" : "hidden",
|
|
9105
9105
|
...scrollbarProps,
|
|
9106
9106
|
ref: forwardedRef
|
|
@@ -9140,7 +9140,7 @@ var ScrollAreaScrollbarScroll = /* @__PURE__ */ React210.forwardRef(/* @__PURE__
|
|
|
9140
9140
|
const scrollDirection = isHorizontal ? "scrollLeft" : "scrollTop";
|
|
9141
9141
|
if (viewport) {
|
|
9142
9142
|
let prevScrollPos = viewport[scrollDirection];
|
|
9143
|
-
const
|
|
9143
|
+
const handleScroll = /* @__PURE__ */ __name28(() => {
|
|
9144
9144
|
const scrollPos = viewport[scrollDirection];
|
|
9145
9145
|
const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;
|
|
9146
9146
|
if (hasScrollInDirectionChanged) {
|
|
@@ -9149,11 +9149,11 @@ var ScrollAreaScrollbarScroll = /* @__PURE__ */ React210.forwardRef(/* @__PURE__
|
|
|
9149
9149
|
}
|
|
9150
9150
|
prevScrollPos = scrollPos;
|
|
9151
9151
|
}, "handleScroll");
|
|
9152
|
-
viewport.addEventListener("scroll",
|
|
9153
|
-
return () => viewport.removeEventListener("scroll",
|
|
9152
|
+
viewport.addEventListener("scroll", handleScroll);
|
|
9153
|
+
return () => viewport.removeEventListener("scroll", handleScroll);
|
|
9154
9154
|
}
|
|
9155
9155
|
}, [context.viewport, isHorizontal, send, debounceScrollEnd]);
|
|
9156
|
-
return /* @__PURE__ */
|
|
9156
|
+
return /* @__PURE__ */ jsx24(Presence, { present: forceMount || state !== "hidden", children: /* @__PURE__ */ jsx24(ScrollAreaScrollbarVisible, {
|
|
9157
9157
|
"data-state": state === "hidden" ? "hidden" : "visible",
|
|
9158
9158
|
...scrollbarProps,
|
|
9159
9159
|
ref: forwardedRef,
|
|
@@ -9175,7 +9175,7 @@ var ScrollAreaScrollbarAuto = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ *
|
|
|
9175
9175
|
}, 10);
|
|
9176
9176
|
useResizeObserver(context.viewport, handleResize);
|
|
9177
9177
|
useResizeObserver(context.content, handleResize);
|
|
9178
|
-
return /* @__PURE__ */
|
|
9178
|
+
return /* @__PURE__ */ jsx24(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx24(ScrollAreaScrollbarVisible, {
|
|
9179
9179
|
"data-state": visible ? "visible" : "hidden",
|
|
9180
9180
|
...scrollbarProps,
|
|
9181
9181
|
ref: forwardedRef
|
|
@@ -9206,14 +9206,14 @@ var ScrollAreaScrollbarVisible = /* @__PURE__ */ React210.forwardRef(/* @__PURE_
|
|
|
9206
9206
|
}
|
|
9207
9207
|
__name28(getScrollPosition, "getScrollPosition");
|
|
9208
9208
|
if (orientation === "horizontal") {
|
|
9209
|
-
return /* @__PURE__ */
|
|
9209
|
+
return /* @__PURE__ */ jsx24(ScrollAreaScrollbarX, {
|
|
9210
9210
|
...commonProps,
|
|
9211
9211
|
ref: forwardedRef,
|
|
9212
9212
|
onThumbPositionChange: () => {
|
|
9213
9213
|
if (context.viewport && thumbRef.current) {
|
|
9214
9214
|
const scrollPos = context.viewport.scrollLeft;
|
|
9215
|
-
const
|
|
9216
|
-
thumbRef.current.style.transform = `translate3d(${
|
|
9215
|
+
const offset = getThumbOffsetFromScroll(scrollPos, sizes, context.dir);
|
|
9216
|
+
thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;
|
|
9217
9217
|
}
|
|
9218
9218
|
},
|
|
9219
9219
|
onWheelScroll: (scrollPos) => {
|
|
@@ -9228,14 +9228,14 @@ var ScrollAreaScrollbarVisible = /* @__PURE__ */ React210.forwardRef(/* @__PURE_
|
|
|
9228
9228
|
});
|
|
9229
9229
|
}
|
|
9230
9230
|
if (orientation === "vertical") {
|
|
9231
|
-
return /* @__PURE__ */
|
|
9231
|
+
return /* @__PURE__ */ jsx24(ScrollAreaScrollbarY, {
|
|
9232
9232
|
...commonProps,
|
|
9233
9233
|
ref: forwardedRef,
|
|
9234
9234
|
onThumbPositionChange: () => {
|
|
9235
9235
|
if (context.viewport && thumbRef.current) {
|
|
9236
9236
|
const scrollPos = context.viewport.scrollTop;
|
|
9237
|
-
const
|
|
9238
|
-
thumbRef.current.style.transform = `translate3d(0, ${
|
|
9237
|
+
const offset = getThumbOffsetFromScroll(scrollPos, sizes);
|
|
9238
|
+
thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;
|
|
9239
9239
|
}
|
|
9240
9240
|
},
|
|
9241
9241
|
onWheelScroll: (scrollPos) => {
|
|
@@ -9255,15 +9255,15 @@ var ScrollAreaScrollbarX = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ _
|
|
|
9255
9255
|
const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);
|
|
9256
9256
|
const [computedStyle, setComputedStyle] = React210.useState();
|
|
9257
9257
|
const ref = React210.useRef(null);
|
|
9258
|
-
const
|
|
9258
|
+
const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarXChange);
|
|
9259
9259
|
React210.useEffect(() => {
|
|
9260
9260
|
if (ref.current)
|
|
9261
9261
|
setComputedStyle(getComputedStyle(ref.current));
|
|
9262
9262
|
}, [ref]);
|
|
9263
|
-
return /* @__PURE__ */
|
|
9263
|
+
return /* @__PURE__ */ jsx24(ScrollAreaScrollbarImpl, {
|
|
9264
9264
|
"data-orientation": "horizontal",
|
|
9265
9265
|
...scrollbarProps,
|
|
9266
|
-
ref:
|
|
9266
|
+
ref: composeRefs,
|
|
9267
9267
|
sizes,
|
|
9268
9268
|
style: {
|
|
9269
9269
|
bottom: 0,
|
|
@@ -9303,15 +9303,15 @@ var ScrollAreaScrollbarY = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ _
|
|
|
9303
9303
|
const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);
|
|
9304
9304
|
const [computedStyle, setComputedStyle] = React210.useState();
|
|
9305
9305
|
const ref = React210.useRef(null);
|
|
9306
|
-
const
|
|
9306
|
+
const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarYChange);
|
|
9307
9307
|
React210.useEffect(() => {
|
|
9308
9308
|
if (ref.current)
|
|
9309
9309
|
setComputedStyle(getComputedStyle(ref.current));
|
|
9310
9310
|
}, [ref]);
|
|
9311
|
-
return /* @__PURE__ */
|
|
9311
|
+
return /* @__PURE__ */ jsx24(ScrollAreaScrollbarImpl, {
|
|
9312
9312
|
"data-orientation": "vertical",
|
|
9313
9313
|
...scrollbarProps,
|
|
9314
|
-
ref:
|
|
9314
|
+
ref: composeRefs,
|
|
9315
9315
|
sizes,
|
|
9316
9316
|
style: {
|
|
9317
9317
|
top: 0,
|
|
@@ -9364,7 +9364,7 @@ var ScrollAreaScrollbarImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ *
|
|
|
9364
9364
|
} = props;
|
|
9365
9365
|
const context = useScrollAreaContext(SCROLLBAR_NAME, __scopeScrollArea);
|
|
9366
9366
|
const [scrollbar, setScrollbar] = React210.useState(null);
|
|
9367
|
-
const
|
|
9367
|
+
const composeRefs = useComposedRefs(forwardedRef, setScrollbar);
|
|
9368
9368
|
const rectRef = React210.useRef(null);
|
|
9369
9369
|
const prevWebkitUserSelectRef = React210.useRef("");
|
|
9370
9370
|
const viewport = context.viewport;
|
|
@@ -9393,7 +9393,7 @@ var ScrollAreaScrollbarImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ *
|
|
|
9393
9393
|
React210.useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);
|
|
9394
9394
|
useResizeObserver(scrollbar, handleResize);
|
|
9395
9395
|
useResizeObserver(context.content, handleResize);
|
|
9396
|
-
return /* @__PURE__ */
|
|
9396
|
+
return /* @__PURE__ */ jsx24(ScrollbarProvider, {
|
|
9397
9397
|
scope: __scopeScrollArea,
|
|
9398
9398
|
scrollbar,
|
|
9399
9399
|
hasThumb,
|
|
@@ -9401,9 +9401,9 @@ var ScrollAreaScrollbarImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ *
|
|
|
9401
9401
|
onThumbPointerUp: useCallbackRef(onThumbPointerUp),
|
|
9402
9402
|
onThumbPositionChange: handleThumbPositionChange,
|
|
9403
9403
|
onThumbPointerDown: useCallbackRef(onThumbPointerDown),
|
|
9404
|
-
children: /* @__PURE__ */
|
|
9404
|
+
children: /* @__PURE__ */ jsx24(Primitive.div, {
|
|
9405
9405
|
...scrollbarProps,
|
|
9406
|
-
ref:
|
|
9406
|
+
ref: composeRefs,
|
|
9407
9407
|
style: { position: "absolute", ...scrollbarProps.style },
|
|
9408
9408
|
onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {
|
|
9409
9409
|
const mainPointer = 0;
|
|
@@ -9436,7 +9436,7 @@ var THUMB_NAME = "ScrollAreaThumb";
|
|
|
9436
9436
|
var ScrollAreaThumb = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(function ScrollAreaThumb2(props, forwardedRef) {
|
|
9437
9437
|
const { forceMount, ...thumbProps } = props;
|
|
9438
9438
|
const scrollbarContext = useScrollbarContext(THUMB_NAME, props.__scopeScrollArea);
|
|
9439
|
-
return /* @__PURE__ */
|
|
9439
|
+
return /* @__PURE__ */ jsx24(Presence, { present: forceMount || scrollbarContext.hasThumb, children: /* @__PURE__ */ jsx24(ScrollAreaThumbImpl, { ref: forwardedRef, ...thumbProps }) });
|
|
9440
9440
|
}, "ScrollAreaThumb"));
|
|
9441
9441
|
var ScrollAreaThumbImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(function ScrollAreaThumbImpl2(props, forwardedRef) {
|
|
9442
9442
|
const { __scopeScrollArea, style, ...thumbProps } = props;
|
|
@@ -9454,7 +9454,7 @@ var ScrollAreaThumbImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __
|
|
|
9454
9454
|
React210.useEffect(() => {
|
|
9455
9455
|
const viewport = scrollAreaContext.viewport;
|
|
9456
9456
|
if (viewport) {
|
|
9457
|
-
const
|
|
9457
|
+
const handleScroll = /* @__PURE__ */ __name28(() => {
|
|
9458
9458
|
debounceScrollEnd();
|
|
9459
9459
|
if (!removeUnlinkedScrollListenerRef.current) {
|
|
9460
9460
|
const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);
|
|
@@ -9463,11 +9463,11 @@ var ScrollAreaThumbImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __
|
|
|
9463
9463
|
}
|
|
9464
9464
|
}, "handleScroll");
|
|
9465
9465
|
onThumbPositionChange();
|
|
9466
|
-
viewport.addEventListener("scroll",
|
|
9467
|
-
return () => viewport.removeEventListener("scroll",
|
|
9466
|
+
viewport.addEventListener("scroll", handleScroll);
|
|
9467
|
+
return () => viewport.removeEventListener("scroll", handleScroll);
|
|
9468
9468
|
}
|
|
9469
9469
|
}, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);
|
|
9470
|
-
return /* @__PURE__ */
|
|
9470
|
+
return /* @__PURE__ */ jsx24(Primitive.div, {
|
|
9471
9471
|
"data-state": scrollbarContext.hasThumb ? "visible" : "hidden",
|
|
9472
9472
|
...thumbProps,
|
|
9473
9473
|
ref: composedRef,
|
|
@@ -9491,7 +9491,7 @@ var ScrollAreaCorner = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __nam
|
|
|
9491
9491
|
const context = useScrollAreaContext(CORNER_NAME, props.__scopeScrollArea);
|
|
9492
9492
|
const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);
|
|
9493
9493
|
const hasCorner = context.type !== "scroll" && hasBothScrollbarsVisible;
|
|
9494
|
-
return hasCorner ? /* @__PURE__ */
|
|
9494
|
+
return hasCorner ? /* @__PURE__ */ jsx24(ScrollAreaCornerImpl, { ...props, ref: forwardedRef }) : null;
|
|
9495
9495
|
}, "ScrollAreaCorner"));
|
|
9496
9496
|
var ScrollAreaCornerImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ __name28(function ScrollAreaCornerImpl2(props, forwardedRef) {
|
|
9497
9497
|
const { __scopeScrollArea, ...cornerProps } = props;
|
|
@@ -9516,7 +9516,7 @@ var ScrollAreaCornerImpl = /* @__PURE__ */ React210.forwardRef(/* @__PURE__ */ _
|
|
|
9516
9516
|
onCornerHeightChange(0);
|
|
9517
9517
|
};
|
|
9518
9518
|
}, [onCornerWidthChange, onCornerHeightChange]);
|
|
9519
|
-
return hasSize ? /* @__PURE__ */
|
|
9519
|
+
return hasSize ? /* @__PURE__ */ jsx24(Primitive.div, {
|
|
9520
9520
|
...cornerProps,
|
|
9521
9521
|
ref: forwardedRef,
|
|
9522
9522
|
style: {
|
|
@@ -9549,9 +9549,9 @@ __name28(getThumbSize, "getThumbSize");
|
|
|
9549
9549
|
function getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = "ltr") {
|
|
9550
9550
|
const thumbSizePx = getThumbSize(sizes);
|
|
9551
9551
|
const thumbCenter = thumbSizePx / 2;
|
|
9552
|
-
const
|
|
9553
|
-
const thumbOffsetFromEnd = thumbSizePx -
|
|
9554
|
-
const minPointerPos = sizes.scrollbar.paddingStart +
|
|
9552
|
+
const offset = pointerOffset || thumbCenter;
|
|
9553
|
+
const thumbOffsetFromEnd = thumbSizePx - offset;
|
|
9554
|
+
const minPointerPos = sizes.scrollbar.paddingStart + offset;
|
|
9555
9555
|
const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;
|
|
9556
9556
|
const maxScrollPos = sizes.content - sizes.viewport;
|
|
9557
9557
|
const scrollRange = dir === "ltr" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];
|
|
@@ -9626,35 +9626,35 @@ function useResizeObserver(element, onResize) {
|
|
|
9626
9626
|
}, [element, handleResize]);
|
|
9627
9627
|
}
|
|
9628
9628
|
__name28(useResizeObserver, "useResizeObserver");
|
|
9629
|
-
var
|
|
9629
|
+
var Root6 = ScrollArea;
|
|
9630
9630
|
var Viewport = ScrollAreaViewport;
|
|
9631
9631
|
var Corner = ScrollAreaCorner;
|
|
9632
9632
|
|
|
9633
9633
|
// src/components/ui/scroll-area.tsx
|
|
9634
|
-
import {
|
|
9635
|
-
var
|
|
9634
|
+
import { jsx as jsx25, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
9635
|
+
var ScrollArea2 = React47.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs5(Root6, {
|
|
9636
9636
|
ref,
|
|
9637
9637
|
className: cn("relative overflow-hidden", className),
|
|
9638
9638
|
...props,
|
|
9639
9639
|
children: [
|
|
9640
|
-
/* @__PURE__ */
|
|
9640
|
+
/* @__PURE__ */ jsx25(Viewport, {
|
|
9641
9641
|
className: "h-full w-full rounded-[inherit]",
|
|
9642
9642
|
children
|
|
9643
|
-
}
|
|
9644
|
-
/* @__PURE__ */
|
|
9645
|
-
/* @__PURE__ */
|
|
9643
|
+
}),
|
|
9644
|
+
/* @__PURE__ */ jsx25(ScrollBar, {}),
|
|
9645
|
+
/* @__PURE__ */ jsx25(Corner, {})
|
|
9646
9646
|
]
|
|
9647
|
-
}
|
|
9648
|
-
|
|
9649
|
-
var ScrollBar = React47.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */
|
|
9647
|
+
}));
|
|
9648
|
+
ScrollArea2.displayName = Root6.displayName;
|
|
9649
|
+
var ScrollBar = React47.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx25(ScrollAreaScrollbar, {
|
|
9650
9650
|
ref,
|
|
9651
9651
|
orientation,
|
|
9652
9652
|
className: cn("flex touch-none select-none transition-colors", orientation === "vertical" && "h-full w-2 border-l border-l-transparent p-[1px]", orientation === "horizontal" && "h-2 flex-col border-t border-t-transparent p-[1px]", className),
|
|
9653
9653
|
...props,
|
|
9654
|
-
children: /* @__PURE__ */
|
|
9654
|
+
children: /* @__PURE__ */ jsx25(ScrollAreaThumb, {
|
|
9655
9655
|
className: "relative flex-1 rounded-full bg-line-default"
|
|
9656
|
-
}
|
|
9657
|
-
}
|
|
9656
|
+
})
|
|
9657
|
+
}));
|
|
9658
9658
|
ScrollBar.displayName = ScrollAreaScrollbar.displayName;
|
|
9659
9659
|
|
|
9660
9660
|
// src/components/ui/tooltip.tsx
|
|
@@ -9665,7 +9665,7 @@ import * as React49 from "react";
|
|
|
9665
9665
|
|
|
9666
9666
|
// ../../node_modules/.pnpm/@radix-ui+react-visually-hidden@1.2.11_@types+react-dom@18.3.7_@types+react@18.3.31__@t_642d100dd60f054d3c0d9c38ece6c812/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs
|
|
9667
9667
|
import * as React48 from "react";
|
|
9668
|
-
import { jsx as
|
|
9668
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
9669
9669
|
var __defProp29 = Object.defineProperty;
|
|
9670
9670
|
var __name29 = (target, value) => __defProp29(target, "name", { value, configurable: true });
|
|
9671
9671
|
var VISUALLY_HIDDEN_STYLES = Object.freeze({
|
|
@@ -9681,16 +9681,16 @@ var VISUALLY_HIDDEN_STYLES = Object.freeze({
|
|
|
9681
9681
|
wordWrap: "normal"
|
|
9682
9682
|
});
|
|
9683
9683
|
var VisuallyHidden = /* @__PURE__ */ React48.forwardRef(/* @__PURE__ */ __name29(function VisuallyHidden2(props, forwardedRef) {
|
|
9684
|
-
return /* @__PURE__ */
|
|
9684
|
+
return /* @__PURE__ */ jsx26(Primitive.span, {
|
|
9685
9685
|
...props,
|
|
9686
9686
|
ref: forwardedRef,
|
|
9687
9687
|
style: { ...VISUALLY_HIDDEN_STYLES, ...props.style }
|
|
9688
9688
|
});
|
|
9689
9689
|
}, "VisuallyHidden"));
|
|
9690
|
-
var
|
|
9690
|
+
var Root7 = VisuallyHidden;
|
|
9691
9691
|
|
|
9692
9692
|
// ../../node_modules/.pnpm/@radix-ui+react-tooltip@1.2.16_@types+react-dom@18.3.7_@types+react@18.3.31__@types+rea_6bca503763256159376adbcc7b8f4fe8/node_modules/@radix-ui/react-tooltip/dist/index.mjs
|
|
9693
|
-
import { jsx as
|
|
9693
|
+
import { jsx as jsx27, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
9694
9694
|
"use client";
|
|
9695
9695
|
var __defProp30 = Object.defineProperty;
|
|
9696
9696
|
var __name30 = (target, value) => __defProp30(target, "name", { value, configurable: true });
|
|
@@ -9717,7 +9717,7 @@ var TooltipProvider = /* @__PURE__ */ __name30((props) => {
|
|
|
9717
9717
|
const skipDelayTimer = skipDelayTimerRef.current;
|
|
9718
9718
|
return () => window.clearTimeout(skipDelayTimer);
|
|
9719
9719
|
}, []);
|
|
9720
|
-
return /* @__PURE__ */
|
|
9720
|
+
return /* @__PURE__ */ jsx27(TooltipProviderContextProvider, {
|
|
9721
9721
|
scope: __scopeTooltip,
|
|
9722
9722
|
isOpenDelayedRef,
|
|
9723
9723
|
delayDuration,
|
|
@@ -9807,7 +9807,7 @@ var Tooltip = /* @__PURE__ */ __name30((props) => {
|
|
|
9807
9807
|
};
|
|
9808
9808
|
}, []);
|
|
9809
9809
|
const contentId = contentIdState ?? generatedContentId;
|
|
9810
|
-
return /* @__PURE__ */
|
|
9810
|
+
return /* @__PURE__ */ jsx27(Root2, { ...popperScope, children: /* @__PURE__ */ jsx27(TooltipContextProvider, {
|
|
9811
9811
|
scope: __scopeTooltip,
|
|
9812
9812
|
contentId,
|
|
9813
9813
|
setContentId,
|
|
@@ -9849,7 +9849,7 @@ var TooltipTrigger = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __name30
|
|
|
9849
9849
|
React49.useEffect(() => {
|
|
9850
9850
|
return () => document.removeEventListener("pointerup", handlePointerUp);
|
|
9851
9851
|
}, [handlePointerUp]);
|
|
9852
|
-
return /* @__PURE__ */
|
|
9852
|
+
return /* @__PURE__ */ jsx27(Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx27(Primitive.button, {
|
|
9853
9853
|
"aria-describedby": context.open ? context.contentId : undefined,
|
|
9854
9854
|
"data-state": context.stateAttribute,
|
|
9855
9855
|
...triggerProps,
|
|
@@ -9888,14 +9888,14 @@ var [PortalProvider2, usePortalContext2] = createTooltipContext(PORTAL_NAME2, {
|
|
|
9888
9888
|
var TooltipPortal = /* @__PURE__ */ __name30((props) => {
|
|
9889
9889
|
const { __scopeTooltip, forceMount, children, container } = props;
|
|
9890
9890
|
const context = useTooltipContext(PORTAL_NAME2, __scopeTooltip);
|
|
9891
|
-
return /* @__PURE__ */
|
|
9891
|
+
return /* @__PURE__ */ jsx27(PortalProvider2, { scope: __scopeTooltip, forceMount, children: /* @__PURE__ */ jsx27(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx27(Portal, { asChild: true, container, children }) }) });
|
|
9892
9892
|
}, "TooltipPortal");
|
|
9893
9893
|
var CONTENT_NAME6 = "TooltipContent";
|
|
9894
9894
|
var TooltipContent = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __name30(function TooltipContent2(props, forwardedRef) {
|
|
9895
9895
|
const portalContext = usePortalContext2(CONTENT_NAME6, props.__scopeTooltip);
|
|
9896
9896
|
const { forceMount = portalContext.forceMount, side = "top", ...contentProps } = props;
|
|
9897
9897
|
const context = useTooltipContext(CONTENT_NAME6, props.__scopeTooltip);
|
|
9898
|
-
return /* @__PURE__ */
|
|
9898
|
+
return /* @__PURE__ */ jsx27(Presence, { present: forceMount || context.open, children: context.disableHoverableContent ? /* @__PURE__ */ jsx27(TooltipContentImpl, { side, ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx27(TooltipContentHoverable, { side, ...contentProps, ref: forwardedRef }) });
|
|
9899
9899
|
}, "TooltipContent"));
|
|
9900
9900
|
var TooltipContentHoverable = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __name30(function TooltipContentHoverable2(props, forwardedRef) {
|
|
9901
9901
|
const context = useTooltipContext(CONTENT_NAME6, props.__scopeTooltip);
|
|
@@ -9953,7 +9953,7 @@ var TooltipContentHoverable = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */
|
|
|
9953
9953
|
return () => document.removeEventListener("pointermove", handleTrackPointerGrace);
|
|
9954
9954
|
}
|
|
9955
9955
|
}, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);
|
|
9956
|
-
return /* @__PURE__ */
|
|
9956
|
+
return /* @__PURE__ */ jsx27(TooltipContentImpl, { ...props, ref: composedRefs });
|
|
9957
9957
|
}, "TooltipContentHoverable"));
|
|
9958
9958
|
var Slottable = createSlottable("TooltipContent");
|
|
9959
9959
|
var TooltipContentImpl = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __name30(function TooltipContentImpl2(props, forwardedRef) {
|
|
@@ -9975,13 +9975,13 @@ var TooltipContentImpl = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __na
|
|
|
9975
9975
|
}, [onClose]);
|
|
9976
9976
|
React49.useEffect(() => {
|
|
9977
9977
|
if (context.trigger) {
|
|
9978
|
-
const
|
|
9978
|
+
const handleScroll = /* @__PURE__ */ __name30((event) => {
|
|
9979
9979
|
if (event.target instanceof Node && event.target.contains(context.trigger)) {
|
|
9980
9980
|
onClose();
|
|
9981
9981
|
}
|
|
9982
9982
|
}, "handleScroll");
|
|
9983
|
-
window.addEventListener("scroll",
|
|
9984
|
-
return () => window.removeEventListener("scroll",
|
|
9983
|
+
window.addEventListener("scroll", handleScroll, { capture: true });
|
|
9984
|
+
return () => window.removeEventListener("scroll", handleScroll, { capture: true });
|
|
9985
9985
|
}
|
|
9986
9986
|
}, [context.trigger, onClose]);
|
|
9987
9987
|
const { setContentId } = context;
|
|
@@ -9991,14 +9991,14 @@ var TooltipContentImpl = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __na
|
|
|
9991
9991
|
setContentId(undefined);
|
|
9992
9992
|
};
|
|
9993
9993
|
}, [idProp, setContentId]);
|
|
9994
|
-
return /* @__PURE__ */
|
|
9994
|
+
return /* @__PURE__ */ jsx27(DismissableLayer, {
|
|
9995
9995
|
asChild: true,
|
|
9996
9996
|
disableOutsidePointerEvents: false,
|
|
9997
9997
|
onEscapeKeyDown,
|
|
9998
9998
|
onPointerDownOutside,
|
|
9999
9999
|
onFocusOutside: (event) => event.preventDefault(),
|
|
10000
10000
|
onDismiss: onClose,
|
|
10001
|
-
children: /* @__PURE__ */
|
|
10001
|
+
children: /* @__PURE__ */ jsxs6(Content, {
|
|
10002
10002
|
"data-state": context.stateAttribute,
|
|
10003
10003
|
role: ariaLabel ? undefined : "tooltip",
|
|
10004
10004
|
id: ariaLabel ? undefined : context.contentId,
|
|
@@ -10016,8 +10016,8 @@ var TooltipContentImpl = /* @__PURE__ */ React49.forwardRef(/* @__PURE__ */ __na
|
|
|
10016
10016
|
}
|
|
10017
10017
|
},
|
|
10018
10018
|
children: [
|
|
10019
|
-
/* @__PURE__ */
|
|
10020
|
-
ariaLabel ? /* @__PURE__ */
|
|
10019
|
+
/* @__PURE__ */ jsx27(Slottable, { children }),
|
|
10020
|
+
ariaLabel ? /* @__PURE__ */ jsx27(Root7, { id: context.contentId, role: "tooltip", children: ariaLabel }) : null
|
|
10021
10021
|
]
|
|
10022
10022
|
})
|
|
10023
10023
|
});
|
|
@@ -10112,8 +10112,8 @@ function getHullPresorted(points) {
|
|
|
10112
10112
|
const p = points[i];
|
|
10113
10113
|
while (upperHull.length >= 2) {
|
|
10114
10114
|
const q = upperHull[upperHull.length - 1];
|
|
10115
|
-
const
|
|
10116
|
-
if ((q.x -
|
|
10115
|
+
const r = upperHull[upperHull.length - 2];
|
|
10116
|
+
if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x))
|
|
10117
10117
|
upperHull.pop();
|
|
10118
10118
|
else
|
|
10119
10119
|
break;
|
|
@@ -10126,8 +10126,8 @@ function getHullPresorted(points) {
|
|
|
10126
10126
|
const p = points[i];
|
|
10127
10127
|
while (lowerHull.length >= 2) {
|
|
10128
10128
|
const q = lowerHull[lowerHull.length - 1];
|
|
10129
|
-
const
|
|
10130
|
-
if ((q.x -
|
|
10129
|
+
const r = lowerHull[lowerHull.length - 2];
|
|
10130
|
+
if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x))
|
|
10131
10131
|
lowerHull.pop();
|
|
10132
10132
|
else
|
|
10133
10133
|
break;
|
|
@@ -10145,26 +10145,26 @@ __name30(getHullPresorted, "getHullPresorted");
|
|
|
10145
10145
|
var Provider = TooltipProvider;
|
|
10146
10146
|
var Root32 = Tooltip;
|
|
10147
10147
|
var Trigger3 = TooltipTrigger;
|
|
10148
|
-
var
|
|
10148
|
+
var Portal3 = TooltipPortal;
|
|
10149
10149
|
var Content24 = TooltipContent;
|
|
10150
10150
|
|
|
10151
10151
|
// src/components/ui/tooltip.tsx
|
|
10152
|
-
import {
|
|
10152
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
10153
10153
|
var TooltipProvider2 = Provider;
|
|
10154
10154
|
var Tooltip2 = Root32;
|
|
10155
|
-
var
|
|
10156
|
-
var
|
|
10157
|
-
children: /* @__PURE__ */
|
|
10155
|
+
var TooltipTrigger2 = Trigger3;
|
|
10156
|
+
var TooltipContent2 = React50.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx28(Portal3, {
|
|
10157
|
+
children: /* @__PURE__ */ jsx28(Content24, {
|
|
10158
10158
|
ref,
|
|
10159
10159
|
sideOffset,
|
|
10160
10160
|
className: cn("z-50 overflow-hidden rounded-radius-100", "bg-surface-overlay-inverse px-3 py-1.5", "text-xs text-content-inverse", "shadow-elevation-1", "animate-in fade-in-0 zoom-in-95", "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95", "data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2", "data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className),
|
|
10161
10161
|
...props
|
|
10162
|
-
}
|
|
10163
|
-
}
|
|
10164
|
-
|
|
10162
|
+
})
|
|
10163
|
+
}));
|
|
10164
|
+
TooltipContent2.displayName = Content24.displayName;
|
|
10165
10165
|
|
|
10166
10166
|
// src/components/SideNavigation.tsx
|
|
10167
|
-
import {
|
|
10167
|
+
import { jsx as jsx29, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
10168
10168
|
function isVisible(item, permissions) {
|
|
10169
10169
|
if (!item.enabled)
|
|
10170
10170
|
return false;
|
|
@@ -10182,29 +10182,29 @@ function TenantBrand({
|
|
|
10182
10182
|
tenant,
|
|
10183
10183
|
brandColor = "#f97316"
|
|
10184
10184
|
}) {
|
|
10185
|
-
return /* @__PURE__ */
|
|
10185
|
+
return /* @__PURE__ */ jsxs7("div", {
|
|
10186
10186
|
className: "flex items-center gap-2.5 px-3 py-3",
|
|
10187
10187
|
children: [
|
|
10188
|
-
/* @__PURE__ */
|
|
10188
|
+
/* @__PURE__ */ jsxs7(Avatar2, {
|
|
10189
10189
|
className: "h-7 w-7 rounded-md",
|
|
10190
10190
|
children: [
|
|
10191
|
-
/* @__PURE__ */
|
|
10191
|
+
/* @__PURE__ */ jsx29(AvatarImage2, {
|
|
10192
10192
|
src: tenant.logo,
|
|
10193
10193
|
alt: tenant.name
|
|
10194
|
-
}
|
|
10195
|
-
/* @__PURE__ */
|
|
10194
|
+
}),
|
|
10195
|
+
/* @__PURE__ */ jsx29(AvatarFallback2, {
|
|
10196
10196
|
style: { backgroundColor: brandColor },
|
|
10197
10197
|
className: "rounded-md text-[11px] font-bold text-white",
|
|
10198
10198
|
children: getInitials2(tenant.name)
|
|
10199
|
-
}
|
|
10199
|
+
})
|
|
10200
10200
|
]
|
|
10201
|
-
}
|
|
10202
|
-
/* @__PURE__ */
|
|
10201
|
+
}),
|
|
10202
|
+
/* @__PURE__ */ jsx29("span", {
|
|
10203
10203
|
className: "flex-1 truncate text-sm font-semibold text-content-default",
|
|
10204
10204
|
children: tenant.name
|
|
10205
|
-
}
|
|
10205
|
+
})
|
|
10206
10206
|
]
|
|
10207
|
-
}
|
|
10207
|
+
});
|
|
10208
10208
|
}
|
|
10209
10209
|
function NavLeaf({
|
|
10210
10210
|
item,
|
|
@@ -10213,41 +10213,41 @@ function NavLeaf({
|
|
|
10213
10213
|
indent = false,
|
|
10214
10214
|
onNavigate
|
|
10215
10215
|
}) {
|
|
10216
|
-
const
|
|
10217
|
-
const btn = /* @__PURE__ */
|
|
10216
|
+
const Icon = item.icon;
|
|
10217
|
+
const btn = /* @__PURE__ */ jsxs7(Button, {
|
|
10218
10218
|
variant: "ghost",
|
|
10219
10219
|
size: "sm",
|
|
10220
10220
|
"aria-current": isActive ? "page" : undefined,
|
|
10221
10221
|
onClick: () => onNavigate(item.route),
|
|
10222
10222
|
className: cn("relative h-auto w-full justify-start gap-2.5 rounded-md py-2 text-sm font-normal", collapsed ? "px-2" : "px-3", indent && !collapsed && "pl-8", isActive ? "bg-black/5 font-medium text-content-default hover:bg-black/5" : "text-content-subtle hover:bg-black/5 hover:text-content-default"),
|
|
10223
10223
|
children: [
|
|
10224
|
-
isActive && !indent && /* @__PURE__ */
|
|
10224
|
+
isActive && !indent && /* @__PURE__ */ jsx29("span", {
|
|
10225
10225
|
"aria-hidden": true,
|
|
10226
10226
|
className: "absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r-full bg-action-primary"
|
|
10227
|
-
}
|
|
10228
|
-
|
|
10227
|
+
}),
|
|
10228
|
+
Icon && /* @__PURE__ */ jsx29(Icon, {
|
|
10229
10229
|
className: cn("shrink-0", collapsed ? "h-[18px] w-[18px]" : "h-4 w-4", isActive ? "text-action-primary" : "text-content-subtle")
|
|
10230
|
-
}
|
|
10231
|
-
!collapsed && /* @__PURE__ */
|
|
10230
|
+
}),
|
|
10231
|
+
!collapsed && /* @__PURE__ */ jsx29("span", {
|
|
10232
10232
|
className: "flex-1 truncate text-left leading-none",
|
|
10233
10233
|
children: item.label
|
|
10234
|
-
}
|
|
10234
|
+
})
|
|
10235
10235
|
]
|
|
10236
|
-
}
|
|
10236
|
+
});
|
|
10237
10237
|
if (collapsed) {
|
|
10238
|
-
return /* @__PURE__ */
|
|
10238
|
+
return /* @__PURE__ */ jsxs7(Tooltip2, {
|
|
10239
10239
|
delayDuration: 200,
|
|
10240
10240
|
children: [
|
|
10241
|
-
/* @__PURE__ */
|
|
10241
|
+
/* @__PURE__ */ jsx29(TooltipTrigger2, {
|
|
10242
10242
|
asChild: true,
|
|
10243
10243
|
children: btn
|
|
10244
|
-
}
|
|
10245
|
-
/* @__PURE__ */
|
|
10244
|
+
}),
|
|
10245
|
+
/* @__PURE__ */ jsx29(TooltipContent2, {
|
|
10246
10246
|
side: "right",
|
|
10247
10247
|
children: item.label
|
|
10248
|
-
}
|
|
10248
|
+
})
|
|
10249
10249
|
]
|
|
10250
|
-
}
|
|
10250
|
+
});
|
|
10251
10251
|
}
|
|
10252
10252
|
return btn;
|
|
10253
10253
|
}
|
|
@@ -10263,13 +10263,13 @@ function NavGroup({
|
|
|
10263
10263
|
if (visible.length === 0)
|
|
10264
10264
|
return null;
|
|
10265
10265
|
const defaultOpen = visible.filter((item) => flatChildren(item).some((c) => activeRoute === c.route || activeRoute.startsWith(c.route + "/"))).map((item) => item.id)[0];
|
|
10266
|
-
return /* @__PURE__ */
|
|
10266
|
+
return /* @__PURE__ */ jsxs7("section", {
|
|
10267
10267
|
children: [
|
|
10268
|
-
label && !collapsed && /* @__PURE__ */
|
|
10268
|
+
label && !collapsed && /* @__PURE__ */ jsx29("p", {
|
|
10269
10269
|
className: "mb-1 mt-2 px-3 text-[10px] font-semibold uppercase tracking-widest text-content-subtle/50 first:mt-0",
|
|
10270
10270
|
children: label
|
|
10271
|
-
}
|
|
10272
|
-
/* @__PURE__ */
|
|
10271
|
+
}),
|
|
10272
|
+
/* @__PURE__ */ jsx29(Accordion2, {
|
|
10273
10273
|
type: "single",
|
|
10274
10274
|
collapsible: true,
|
|
10275
10275
|
defaultValue: defaultOpen,
|
|
@@ -10278,89 +10278,89 @@ function NavGroup({
|
|
|
10278
10278
|
const children = flatChildren(item).filter((c) => isVisible(c, permissions));
|
|
10279
10279
|
const isChildActive = children.some((c) => activeRoute === c.route || activeRoute.startsWith(c.route + "/"));
|
|
10280
10280
|
const isItemActive = activeRoute === item.route || activeRoute.startsWith(item.route + "/");
|
|
10281
|
-
const
|
|
10281
|
+
const Icon = item.icon;
|
|
10282
10282
|
if (children.length === 0) {
|
|
10283
|
-
return /* @__PURE__ */
|
|
10283
|
+
return /* @__PURE__ */ jsx29(NavLeaf, {
|
|
10284
10284
|
item,
|
|
10285
10285
|
isActive: isItemActive,
|
|
10286
10286
|
collapsed,
|
|
10287
10287
|
onNavigate
|
|
10288
|
-
}, item.id
|
|
10288
|
+
}, item.id);
|
|
10289
10289
|
}
|
|
10290
10290
|
if (collapsed) {
|
|
10291
|
-
return /* @__PURE__ */
|
|
10291
|
+
return /* @__PURE__ */ jsx29(NavLeaf, {
|
|
10292
10292
|
item,
|
|
10293
10293
|
isActive: isItemActive || isChildActive,
|
|
10294
10294
|
collapsed: true,
|
|
10295
10295
|
onNavigate: () => onNavigate(children[0]?.route ?? item.route)
|
|
10296
|
-
}, item.id
|
|
10296
|
+
}, item.id);
|
|
10297
10297
|
}
|
|
10298
|
-
return /* @__PURE__ */
|
|
10298
|
+
return /* @__PURE__ */ jsxs7(AccordionItem2, {
|
|
10299
10299
|
value: item.id,
|
|
10300
10300
|
className: "border-none",
|
|
10301
10301
|
children: [
|
|
10302
|
-
/* @__PURE__ */
|
|
10302
|
+
/* @__PURE__ */ jsxs7(AccordionTrigger2, {
|
|
10303
10303
|
className: cn("relative h-auto w-full justify-start gap-2.5 rounded-md px-3 py-2 text-sm font-normal", "hover:bg-black/5 hover:no-underline", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-action-primary focus-visible:ring-inset", isChildActive || isItemActive ? "bg-black/5 font-medium text-content-default" : "text-content-subtle"),
|
|
10304
10304
|
children: [
|
|
10305
|
-
isChildActive && /* @__PURE__ */
|
|
10305
|
+
isChildActive && /* @__PURE__ */ jsx29("span", {
|
|
10306
10306
|
"aria-hidden": true,
|
|
10307
10307
|
className: "absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r-full bg-action-primary"
|
|
10308
|
-
}
|
|
10309
|
-
|
|
10308
|
+
}),
|
|
10309
|
+
Icon && /* @__PURE__ */ jsx29(Icon, {
|
|
10310
10310
|
className: cn("h-4 w-4 shrink-0", isChildActive ? "text-action-primary" : "text-content-subtle")
|
|
10311
|
-
}
|
|
10312
|
-
/* @__PURE__ */
|
|
10311
|
+
}),
|
|
10312
|
+
/* @__PURE__ */ jsx29("span", {
|
|
10313
10313
|
className: "flex-1 truncate text-left leading-none",
|
|
10314
10314
|
children: item.label
|
|
10315
|
-
}
|
|
10315
|
+
})
|
|
10316
10316
|
]
|
|
10317
|
-
}
|
|
10318
|
-
/* @__PURE__ */
|
|
10317
|
+
}),
|
|
10318
|
+
/* @__PURE__ */ jsx29(AccordionContent2, {
|
|
10319
10319
|
className: "pb-0",
|
|
10320
|
-
children: item.childGroups ? /* @__PURE__ */
|
|
10320
|
+
children: item.childGroups ? /* @__PURE__ */ jsx29("div", {
|
|
10321
10321
|
className: "space-y-3",
|
|
10322
10322
|
children: item.childGroups.map((group) => {
|
|
10323
10323
|
const gv = group.items.filter((c) => isVisible(c, permissions));
|
|
10324
10324
|
if (gv.length === 0)
|
|
10325
10325
|
return null;
|
|
10326
|
-
return /* @__PURE__ */
|
|
10326
|
+
return /* @__PURE__ */ jsxs7("div", {
|
|
10327
10327
|
children: [
|
|
10328
|
-
/* @__PURE__ */
|
|
10328
|
+
/* @__PURE__ */ jsx29("p", {
|
|
10329
10329
|
className: "mb-0.5 px-3 text-[10px] font-semibold uppercase tracking-widest text-content-subtle/50",
|
|
10330
10330
|
children: group.label
|
|
10331
|
-
}
|
|
10332
|
-
/* @__PURE__ */
|
|
10331
|
+
}),
|
|
10332
|
+
/* @__PURE__ */ jsx29("div", {
|
|
10333
10333
|
className: "space-y-0.5",
|
|
10334
|
-
children: gv.map((child) => /* @__PURE__ */
|
|
10334
|
+
children: gv.map((child) => /* @__PURE__ */ jsx29(NavLeaf, {
|
|
10335
10335
|
item: child,
|
|
10336
10336
|
isActive: activeRoute === child.route || activeRoute.startsWith(child.route + "/"),
|
|
10337
10337
|
collapsed: false,
|
|
10338
10338
|
indent: true,
|
|
10339
10339
|
onNavigate
|
|
10340
|
-
}, child.id
|
|
10341
|
-
}
|
|
10340
|
+
}, child.id))
|
|
10341
|
+
})
|
|
10342
10342
|
]
|
|
10343
|
-
}, group.id
|
|
10343
|
+
}, group.id);
|
|
10344
10344
|
})
|
|
10345
|
-
}
|
|
10345
|
+
}) : /* @__PURE__ */ jsx29("div", {
|
|
10346
10346
|
className: "space-y-0.5",
|
|
10347
|
-
children: children.map((child) => /* @__PURE__ */
|
|
10347
|
+
children: children.map((child) => /* @__PURE__ */ jsx29(NavLeaf, {
|
|
10348
10348
|
item: child,
|
|
10349
10349
|
isActive: activeRoute === child.route || activeRoute.startsWith(child.route + "/"),
|
|
10350
10350
|
collapsed: false,
|
|
10351
10351
|
indent: true,
|
|
10352
10352
|
onNavigate
|
|
10353
|
-
}, child.id
|
|
10354
|
-
}
|
|
10355
|
-
}
|
|
10353
|
+
}, child.id))
|
|
10354
|
+
})
|
|
10355
|
+
})
|
|
10356
10356
|
]
|
|
10357
|
-
}, item.id
|
|
10357
|
+
}, item.id);
|
|
10358
10358
|
})
|
|
10359
|
-
}
|
|
10359
|
+
})
|
|
10360
10360
|
]
|
|
10361
|
-
}
|
|
10361
|
+
});
|
|
10362
10362
|
}
|
|
10363
|
-
var SideNavigation = React51.memo(function
|
|
10363
|
+
var SideNavigation = React51.memo(function SideNavigation({
|
|
10364
10364
|
config,
|
|
10365
10365
|
permissions,
|
|
10366
10366
|
onNavigate,
|
|
@@ -10369,77 +10369,77 @@ var SideNavigation = React51.memo(function SideNavigation2({
|
|
|
10369
10369
|
footerNavItems
|
|
10370
10370
|
}) {
|
|
10371
10371
|
const { navCollapsed, setNavCollapsed, activeRoute } = useShell();
|
|
10372
|
-
return /* @__PURE__ */
|
|
10373
|
-
children: /* @__PURE__ */
|
|
10372
|
+
return /* @__PURE__ */ jsx29(TooltipProvider2, {
|
|
10373
|
+
children: /* @__PURE__ */ jsxs7("nav", {
|
|
10374
10374
|
"aria-label": "Application navigation",
|
|
10375
10375
|
"data-collapsed": navCollapsed,
|
|
10376
10376
|
className: cn("relative flex h-full flex-col", "border-r border-line-default bg-surface-default", "transition-[width] duration-200 ease-in-out", navCollapsed ? "w-14" : "w-56"),
|
|
10377
10377
|
children: [
|
|
10378
|
-
!navCollapsed && /* @__PURE__ */
|
|
10378
|
+
!navCollapsed && /* @__PURE__ */ jsx29("div", {
|
|
10379
10379
|
className: "shrink-0 border-b border-line-default",
|
|
10380
|
-
children: /* @__PURE__ */
|
|
10380
|
+
children: /* @__PURE__ */ jsx29(TenantBrand, {
|
|
10381
10381
|
tenant,
|
|
10382
10382
|
brandColor: tenantBrandColor
|
|
10383
|
-
}
|
|
10384
|
-
}
|
|
10385
|
-
/* @__PURE__ */
|
|
10383
|
+
})
|
|
10384
|
+
}),
|
|
10385
|
+
/* @__PURE__ */ jsx29(ScrollArea2, {
|
|
10386
10386
|
className: "flex-1",
|
|
10387
|
-
children: /* @__PURE__ */
|
|
10387
|
+
children: /* @__PURE__ */ jsx29("div", {
|
|
10388
10388
|
className: cn("py-2", navCollapsed ? "px-1.5" : "px-2"),
|
|
10389
|
-
children: /* @__PURE__ */
|
|
10389
|
+
children: /* @__PURE__ */ jsx29("div", {
|
|
10390
10390
|
className: "space-y-4",
|
|
10391
|
-
children: config.groups.map((group) => /* @__PURE__ */
|
|
10391
|
+
children: config.groups.map((group) => /* @__PURE__ */ jsx29(NavGroup, {
|
|
10392
10392
|
label: group.label,
|
|
10393
10393
|
items: group.items,
|
|
10394
10394
|
activeRoute,
|
|
10395
10395
|
collapsed: navCollapsed,
|
|
10396
10396
|
permissions,
|
|
10397
10397
|
onNavigate
|
|
10398
|
-
}, group.id
|
|
10399
|
-
}
|
|
10400
|
-
}
|
|
10401
|
-
}
|
|
10402
|
-
footerNavItems && footerNavItems.length > 0 && /* @__PURE__ */
|
|
10398
|
+
}, group.id))
|
|
10399
|
+
})
|
|
10400
|
+
})
|
|
10401
|
+
}),
|
|
10402
|
+
footerNavItems && footerNavItems.length > 0 && /* @__PURE__ */ jsx29("div", {
|
|
10403
10403
|
className: cn("shrink-0 border-t border-line-default", navCollapsed ? "px-1.5 py-2" : "px-2 py-2"),
|
|
10404
|
-
children: /* @__PURE__ */
|
|
10404
|
+
children: /* @__PURE__ */ jsx29(NavGroup, {
|
|
10405
10405
|
items: footerNavItems,
|
|
10406
10406
|
activeRoute,
|
|
10407
10407
|
collapsed: navCollapsed,
|
|
10408
10408
|
permissions,
|
|
10409
10409
|
onNavigate
|
|
10410
|
-
}
|
|
10411
|
-
}
|
|
10412
|
-
/* @__PURE__ */
|
|
10410
|
+
})
|
|
10411
|
+
}),
|
|
10412
|
+
/* @__PURE__ */ jsxs7(Tooltip2, {
|
|
10413
10413
|
delayDuration: 300,
|
|
10414
10414
|
children: [
|
|
10415
|
-
/* @__PURE__ */
|
|
10415
|
+
/* @__PURE__ */ jsx29(TooltipTrigger2, {
|
|
10416
10416
|
asChild: true,
|
|
10417
|
-
children: /* @__PURE__ */
|
|
10417
|
+
children: /* @__PURE__ */ jsx29(Button, {
|
|
10418
10418
|
variant: "ghost",
|
|
10419
10419
|
size: "icon",
|
|
10420
10420
|
"aria-label": navCollapsed ? "Expand sidebar" : "Collapse sidebar",
|
|
10421
10421
|
onClick: () => setNavCollapsed((v) => !v),
|
|
10422
10422
|
className: cn("absolute -right-3 top-[72px] z-20 h-6 w-6 rounded-full", "border border-line-default bg-surface-default shadow-sm", "opacity-0 hover:opacity-100 focus-visible:opacity-100 transition-opacity"),
|
|
10423
|
-
children: navCollapsed ? /* @__PURE__ */
|
|
10423
|
+
children: navCollapsed ? /* @__PURE__ */ jsx29(ChevronRight, {
|
|
10424
10424
|
className: "h-3 w-3"
|
|
10425
|
-
}
|
|
10425
|
+
}) : /* @__PURE__ */ jsx29(ChevronLeft, {
|
|
10426
10426
|
className: "h-3 w-3"
|
|
10427
|
-
}
|
|
10428
|
-
}
|
|
10429
|
-
}
|
|
10430
|
-
/* @__PURE__ */
|
|
10427
|
+
})
|
|
10428
|
+
})
|
|
10429
|
+
}),
|
|
10430
|
+
/* @__PURE__ */ jsx29(TooltipContent2, {
|
|
10431
10431
|
side: "right",
|
|
10432
10432
|
children: navCollapsed ? "Expand sidebar" : "Collapse sidebar"
|
|
10433
|
-
}
|
|
10433
|
+
})
|
|
10434
10434
|
]
|
|
10435
|
-
}
|
|
10435
|
+
})
|
|
10436
10436
|
]
|
|
10437
|
-
}
|
|
10438
|
-
}
|
|
10437
|
+
})
|
|
10438
|
+
});
|
|
10439
10439
|
});
|
|
10440
10440
|
|
|
10441
10441
|
// src/components/AppShell.tsx
|
|
10442
|
-
import {
|
|
10442
|
+
import { jsx as jsx30, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
10443
10443
|
function AppShellInner({
|
|
10444
10444
|
context,
|
|
10445
10445
|
navigationConfig,
|
|
@@ -10448,7 +10448,15 @@ function AppShellInner({
|
|
|
10448
10448
|
tenantBrandColor,
|
|
10449
10449
|
footerNavItems
|
|
10450
10450
|
}) {
|
|
10451
|
-
const { setActiveRoute } = useShell();
|
|
10451
|
+
const { setActiveRoute, navCollapsed } = useShell();
|
|
10452
|
+
React52.useEffect(() => {
|
|
10453
|
+
document.body.style.setProperty("--shell-sidebar-width", navCollapsed ? "3.5rem" : "14rem");
|
|
10454
|
+
document.body.style.setProperty("--shell-header-height", "3rem");
|
|
10455
|
+
return () => {
|
|
10456
|
+
document.body.style.removeProperty("--shell-sidebar-width");
|
|
10457
|
+
document.body.style.removeProperty("--shell-header-height");
|
|
10458
|
+
};
|
|
10459
|
+
}, [navCollapsed]);
|
|
10452
10460
|
const handleNavigate = React52.useCallback((path) => {
|
|
10453
10461
|
setActiveRoute(path);
|
|
10454
10462
|
onNavigate?.(path);
|
|
@@ -10472,48 +10480,48 @@ function AppShellInner({
|
|
|
10472
10480
|
el.style.setProperty(prop, value);
|
|
10473
10481
|
}
|
|
10474
10482
|
}, [context.theme.overrides]);
|
|
10475
|
-
return /* @__PURE__ */
|
|
10483
|
+
return /* @__PURE__ */ jsxs8("div", {
|
|
10476
10484
|
ref: shellRef,
|
|
10477
10485
|
"data-theme": context.theme.mode,
|
|
10478
10486
|
className: cn("app-shell flex h-screen overflow-hidden", "bg-surface-default text-content-default"),
|
|
10479
10487
|
children: [
|
|
10480
|
-
/* @__PURE__ */
|
|
10488
|
+
/* @__PURE__ */ jsx30(SideNavigation, {
|
|
10481
10489
|
config: navigationConfig,
|
|
10482
10490
|
permissions: context.permissions,
|
|
10483
10491
|
onNavigate: handleNavigate,
|
|
10484
10492
|
tenant: context.tenant,
|
|
10485
10493
|
tenantBrandColor,
|
|
10486
10494
|
footerNavItems
|
|
10487
|
-
}
|
|
10488
|
-
/* @__PURE__ */
|
|
10495
|
+
}),
|
|
10496
|
+
/* @__PURE__ */ jsxs8("div", {
|
|
10489
10497
|
className: "flex min-w-0 flex-1 flex-col overflow-hidden",
|
|
10490
10498
|
children: [
|
|
10491
|
-
/* @__PURE__ */
|
|
10499
|
+
/* @__PURE__ */ jsx30(Header, {
|
|
10492
10500
|
user: context.user,
|
|
10493
10501
|
tenant: context.tenant
|
|
10494
|
-
}
|
|
10495
|
-
/* @__PURE__ */
|
|
10502
|
+
}),
|
|
10503
|
+
/* @__PURE__ */ jsx30("main", {
|
|
10496
10504
|
className: "min-w-0 flex-1 overflow-auto",
|
|
10497
10505
|
role: "main",
|
|
10498
10506
|
children
|
|
10499
|
-
}
|
|
10507
|
+
})
|
|
10500
10508
|
]
|
|
10501
|
-
}
|
|
10509
|
+
})
|
|
10502
10510
|
]
|
|
10503
|
-
}
|
|
10511
|
+
});
|
|
10504
10512
|
}
|
|
10505
10513
|
function AppShell(props) {
|
|
10506
10514
|
const initialRoute = props.activeRoute ?? (typeof window !== "undefined" ? window.location.pathname : "/");
|
|
10507
|
-
return /* @__PURE__ */
|
|
10515
|
+
return /* @__PURE__ */ jsx30(ShellProvider, {
|
|
10508
10516
|
initialRoute,
|
|
10509
|
-
children: /* @__PURE__ */
|
|
10517
|
+
children: /* @__PURE__ */ jsx30(AppShellInner, {
|
|
10510
10518
|
...props
|
|
10511
|
-
}
|
|
10512
|
-
}
|
|
10519
|
+
})
|
|
10520
|
+
});
|
|
10513
10521
|
}
|
|
10514
10522
|
export {
|
|
10515
10523
|
AppShell
|
|
10516
10524
|
};
|
|
10517
10525
|
|
|
10518
|
-
//# debugId=
|
|
10526
|
+
//# debugId=0C783C774331520A64756E2164756E21
|
|
10519
10527
|
//# sourceMappingURL=index.es.js.map
|