@iblai/iblai-js 1.23.0 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -6,7 +6,7 @@ import { useGetUserMetadataQuery, useGetUserMetadataEdxQuery, useUpdateUserMetad
|
|
|
6
6
|
import { getInitials, useTenantMetadata, WithPermissions, useStripeUpgrade, openExternalUrl, CHAT_AREA_SIZE, isAlphaNumeric32, checkRbacPermission, selectNumberOfActiveChatMessages, useUsername, selectStreaming, isLoggedIn, TOOLS, isSafariBrowser, useShowAttachment, useShowVoiceCall, useShowVoiceRecorder, useMentorSettings, selectShowingSharedChat, selectRbacPermissions, useShowFreeTrialDialog, useEmbedMode, chatInputSliceSelectors, useResponsive, useAccessingPublicRoute, useVisitingTenant, useModelFileUploadCapabilities, useChatFileUpload, useVoiceChat, selectAttachedFiles, MENTOR_CHAT_DOCUMENTS_EXTENSIONS, removeFile, chatInputSliceActions, chatActions, WithFormPermissions, useTenantContext, TimeTracker, advancedTabsProperties, defaultSessionIds, ANONYMOUS_USERNAME as ANONYMOUS_USERNAME$2, redirectToAuthSpaJoinTenant, selectActiveTab, useAxdToken, useWelcomeMessage, markdownToPlainText, useCachedSessionId, use402ErrorCheck, selectTokenEnabled, selectToken, useServiceWorker, useUserAgreement, useAdvancedChat, sendMessageToParentWebsite, useMentorTools, useFileDragDrop, eventBus, RemoteEvents, selectEnableChatActionsPopup, advancedTabs, isInIframe, getAuthSpaJoinUrl, addMessage, clearFiles, MENTOR_VISIBILITY } from '@iblai/web-utils';
|
|
7
7
|
import { useDispatch, useSelector } from 'react-redux';
|
|
8
8
|
import { toast } from 'sonner';
|
|
9
|
-
import { useSearchParams, useParams, usePathname } from 'next/navigation';
|
|
9
|
+
import { useSearchParams, useParams, useRouter, usePathname } from 'next/navigation';
|
|
10
10
|
import Image$4 from 'next/image';
|
|
11
11
|
import Link$2 from 'next/link';
|
|
12
12
|
import * as ReactDOM from 'react-dom';
|
|
@@ -18,7 +18,7 @@ import { MentorVisibilityEnum, TransportEnum, PromptVisibilityEnum } from '@ibla
|
|
|
18
18
|
import '@reduxjs/toolkit/query';
|
|
19
19
|
import dynamic from 'next/dynamic';
|
|
20
20
|
import Script from 'next/script';
|
|
21
|
-
import { useRouter } from 'next/router';
|
|
21
|
+
import { useRouter as useRouter$1 } from 'next/router';
|
|
22
22
|
import { Room, RoomEvent, ConnectionState, VideoPresets, Track, ParticipantEvent } from 'livekit-client';
|
|
23
23
|
import { RoomContext, RoomAudioRenderer, VideoConference, formatChatMessageLinks, useRoomContext } from '@livekit/components-react';
|
|
24
24
|
import { createRoot } from 'react-dom/client';
|
|
@@ -49337,12 +49337,12 @@ const __iconNode$oC = [
|
|
|
49337
49337
|
["path", { d: "M5 12H2a10 10 0 0 0 20 0h-3", key: "1hv3nh" }],
|
|
49338
49338
|
["circle", { cx: "12", cy: "5", r: "3", key: "rqqgnr" }]
|
|
49339
49339
|
];
|
|
49340
|
-
const Anchor$
|
|
49340
|
+
const Anchor$4 = createLucideIcon("anchor", __iconNode$oC);
|
|
49341
49341
|
|
|
49342
49342
|
var anchor = /*#__PURE__*/Object.freeze({
|
|
49343
49343
|
__proto__: null,
|
|
49344
49344
|
__iconNode: __iconNode$oC,
|
|
49345
|
-
default: Anchor$
|
|
49345
|
+
default: Anchor$4
|
|
49346
49346
|
});
|
|
49347
49347
|
|
|
49348
49348
|
/**
|
|
@@ -90901,8 +90901,8 @@ const arrow$2 = (options, deps) => {
|
|
|
90901
90901
|
};
|
|
90902
90902
|
|
|
90903
90903
|
// packages/react/arrow/src/arrow.tsx
|
|
90904
|
-
var NAME$
|
|
90905
|
-
var Arrow$
|
|
90904
|
+
var NAME$9 = "Arrow";
|
|
90905
|
+
var Arrow$5 = React.forwardRef((props, forwardedRef) => {
|
|
90906
90906
|
const { children, width = 10, height = 5, ...arrowProps } = props;
|
|
90907
90907
|
return /* @__PURE__ */ jsx(
|
|
90908
90908
|
Primitive$4.svg,
|
|
@@ -90917,8 +90917,8 @@ var Arrow$3 = React.forwardRef((props, forwardedRef) => {
|
|
|
90917
90917
|
}
|
|
90918
90918
|
);
|
|
90919
90919
|
});
|
|
90920
|
-
Arrow$
|
|
90921
|
-
var Root$
|
|
90920
|
+
Arrow$5.displayName = NAME$9;
|
|
90921
|
+
var Root$g = Arrow$5;
|
|
90922
90922
|
|
|
90923
90923
|
// packages/react/use-size/src/use-size.tsx
|
|
90924
90924
|
function useSize$1(element) {
|
|
@@ -90956,20 +90956,20 @@ function useSize$1(element) {
|
|
|
90956
90956
|
return size;
|
|
90957
90957
|
}
|
|
90958
90958
|
|
|
90959
|
-
var POPPER_NAME$
|
|
90960
|
-
var [createPopperContext$
|
|
90961
|
-
var [PopperProvider$
|
|
90962
|
-
var Popper$
|
|
90959
|
+
var POPPER_NAME$2 = "Popper";
|
|
90960
|
+
var [createPopperContext$2, createPopperScope$2] = createContextScope$1(POPPER_NAME$2);
|
|
90961
|
+
var [PopperProvider$2, usePopperContext$2] = createPopperContext$2(POPPER_NAME$2);
|
|
90962
|
+
var Popper$2 = (props) => {
|
|
90963
90963
|
const { __scopePopper, children } = props;
|
|
90964
90964
|
const [anchor, setAnchor] = React.useState(null);
|
|
90965
|
-
return /* @__PURE__ */ jsx(PopperProvider$
|
|
90965
|
+
return /* @__PURE__ */ jsx(PopperProvider$2, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
90966
90966
|
};
|
|
90967
|
-
Popper$
|
|
90968
|
-
var ANCHOR_NAME$
|
|
90969
|
-
var PopperAnchor$
|
|
90967
|
+
Popper$2.displayName = POPPER_NAME$2;
|
|
90968
|
+
var ANCHOR_NAME$4 = "PopperAnchor";
|
|
90969
|
+
var PopperAnchor$2 = React.forwardRef(
|
|
90970
90970
|
(props, forwardedRef) => {
|
|
90971
90971
|
const { __scopePopper, virtualRef, ...anchorProps } = props;
|
|
90972
|
-
const context = usePopperContext$
|
|
90972
|
+
const context = usePopperContext$2(ANCHOR_NAME$4, __scopePopper);
|
|
90973
90973
|
const ref = React.useRef(null);
|
|
90974
90974
|
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
90975
90975
|
React.useEffect(() => {
|
|
@@ -90978,10 +90978,10 @@ var PopperAnchor$1 = React.forwardRef(
|
|
|
90978
90978
|
return virtualRef ? null : /* @__PURE__ */ jsx(Primitive$4.div, { ...anchorProps, ref: composedRefs });
|
|
90979
90979
|
}
|
|
90980
90980
|
);
|
|
90981
|
-
PopperAnchor$
|
|
90982
|
-
var CONTENT_NAME$
|
|
90983
|
-
var [PopperContentProvider$
|
|
90984
|
-
var PopperContent$
|
|
90981
|
+
PopperAnchor$2.displayName = ANCHOR_NAME$4;
|
|
90982
|
+
var CONTENT_NAME$b = "PopperContent";
|
|
90983
|
+
var [PopperContentProvider$2, useContentContext$2] = createPopperContext$2(CONTENT_NAME$b);
|
|
90984
|
+
var PopperContent$2 = React.forwardRef(
|
|
90985
90985
|
(props, forwardedRef) => {
|
|
90986
90986
|
const {
|
|
90987
90987
|
__scopePopper,
|
|
@@ -90999,7 +90999,7 @@ var PopperContent$1 = React.forwardRef(
|
|
|
90999
90999
|
onPlaced,
|
|
91000
91000
|
...contentProps
|
|
91001
91001
|
} = props;
|
|
91002
|
-
const context = usePopperContext$
|
|
91002
|
+
const context = usePopperContext$2(CONTENT_NAME$b, __scopePopper);
|
|
91003
91003
|
const [content, setContent] = React.useState(null);
|
|
91004
91004
|
const composedRefs = useComposedRefs$1(forwardedRef, (node) => setContent(node));
|
|
91005
91005
|
const [arrow, setArrow] = React.useState(null);
|
|
@@ -91012,7 +91012,7 @@ var PopperContent$1 = React.forwardRef(
|
|
|
91012
91012
|
const hasExplicitBoundaries = boundary.length > 0;
|
|
91013
91013
|
const detectOverflowOptions = {
|
|
91014
91014
|
padding: collisionPadding,
|
|
91015
|
-
boundary: boundary.filter(isNotNull$
|
|
91015
|
+
boundary: boundary.filter(isNotNull$2),
|
|
91016
91016
|
// with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
|
|
91017
91017
|
altBoundary: hasExplicitBoundaries
|
|
91018
91018
|
};
|
|
@@ -91050,11 +91050,11 @@ var PopperContent$1 = React.forwardRef(
|
|
|
91050
91050
|
}
|
|
91051
91051
|
}),
|
|
91052
91052
|
arrow && arrow$2({ element: arrow, padding: arrowPadding }),
|
|
91053
|
-
transformOrigin$
|
|
91053
|
+
transformOrigin$3({ arrowWidth, arrowHeight }),
|
|
91054
91054
|
hideWhenDetached && hide({ strategy: "referenceHidden", ...detectOverflowOptions })
|
|
91055
91055
|
]
|
|
91056
91056
|
});
|
|
91057
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$
|
|
91057
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$2(placement);
|
|
91058
91058
|
const handlePlaced = useCallbackRef$2(onPlaced);
|
|
91059
91059
|
useLayoutEffect2$1(() => {
|
|
91060
91060
|
if (isPositioned) {
|
|
@@ -91093,7 +91093,7 @@ var PopperContent$1 = React.forwardRef(
|
|
|
91093
91093
|
},
|
|
91094
91094
|
dir: props.dir,
|
|
91095
91095
|
children: /* @__PURE__ */ jsx(
|
|
91096
|
-
PopperContentProvider$
|
|
91096
|
+
PopperContentProvider$2,
|
|
91097
91097
|
{
|
|
91098
91098
|
scope: __scopePopper,
|
|
91099
91099
|
placedSide,
|
|
@@ -91122,18 +91122,18 @@ var PopperContent$1 = React.forwardRef(
|
|
|
91122
91122
|
);
|
|
91123
91123
|
}
|
|
91124
91124
|
);
|
|
91125
|
-
PopperContent$
|
|
91126
|
-
var ARROW_NAME$
|
|
91127
|
-
var OPPOSITE_SIDE$
|
|
91125
|
+
PopperContent$2.displayName = CONTENT_NAME$b;
|
|
91126
|
+
var ARROW_NAME$8 = "PopperArrow";
|
|
91127
|
+
var OPPOSITE_SIDE$2 = {
|
|
91128
91128
|
top: "bottom",
|
|
91129
91129
|
right: "left",
|
|
91130
91130
|
bottom: "top",
|
|
91131
91131
|
left: "right"
|
|
91132
91132
|
};
|
|
91133
|
-
var PopperArrow$
|
|
91133
|
+
var PopperArrow$2 = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
91134
91134
|
const { __scopePopper, ...arrowProps } = props;
|
|
91135
|
-
const contentContext = useContentContext$
|
|
91136
|
-
const baseSide = OPPOSITE_SIDE$
|
|
91135
|
+
const contentContext = useContentContext$2(ARROW_NAME$8, __scopePopper);
|
|
91136
|
+
const baseSide = OPPOSITE_SIDE$2[contentContext.placedSide];
|
|
91137
91137
|
return (
|
|
91138
91138
|
// we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
|
|
91139
91139
|
// doesn't report size as we'd expect on SVG elements.
|
|
@@ -91162,7 +91162,7 @@ var PopperArrow$1 = React.forwardRef(function PopperArrow2(props, forwardedRef)
|
|
|
91162
91162
|
visibility: contentContext.shouldHideArrow ? "hidden" : void 0
|
|
91163
91163
|
},
|
|
91164
91164
|
children: /* @__PURE__ */ jsx(
|
|
91165
|
-
Root$
|
|
91165
|
+
Root$g,
|
|
91166
91166
|
{
|
|
91167
91167
|
...arrowProps,
|
|
91168
91168
|
ref: forwardedRef,
|
|
@@ -91177,11 +91177,11 @@ var PopperArrow$1 = React.forwardRef(function PopperArrow2(props, forwardedRef)
|
|
|
91177
91177
|
)
|
|
91178
91178
|
);
|
|
91179
91179
|
});
|
|
91180
|
-
PopperArrow$
|
|
91181
|
-
function isNotNull$
|
|
91180
|
+
PopperArrow$2.displayName = ARROW_NAME$8;
|
|
91181
|
+
function isNotNull$2(value) {
|
|
91182
91182
|
return value !== null;
|
|
91183
91183
|
}
|
|
91184
|
-
var transformOrigin$
|
|
91184
|
+
var transformOrigin$3 = (options) => ({
|
|
91185
91185
|
name: "transformOrigin",
|
|
91186
91186
|
options,
|
|
91187
91187
|
fn(data) {
|
|
@@ -91190,7 +91190,7 @@ var transformOrigin$2 = (options) => ({
|
|
|
91190
91190
|
const isArrowHidden = cannotCenterArrow;
|
|
91191
91191
|
const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
|
|
91192
91192
|
const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
|
|
91193
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$
|
|
91193
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$2(placement);
|
|
91194
91194
|
const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
|
|
91195
91195
|
const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
|
|
91196
91196
|
const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
|
|
@@ -91212,24 +91212,24 @@ var transformOrigin$2 = (options) => ({
|
|
|
91212
91212
|
return { data: { x, y } };
|
|
91213
91213
|
}
|
|
91214
91214
|
});
|
|
91215
|
-
function getSideAndAlignFromPlacement$
|
|
91215
|
+
function getSideAndAlignFromPlacement$2(placement) {
|
|
91216
91216
|
const [side, align = "center"] = placement.split("-");
|
|
91217
91217
|
return [side, align];
|
|
91218
91218
|
}
|
|
91219
|
-
var Root2$
|
|
91220
|
-
var Anchor$
|
|
91221
|
-
var Content$
|
|
91222
|
-
var Arrow$
|
|
91219
|
+
var Root2$a = Popper$2;
|
|
91220
|
+
var Anchor$3 = PopperAnchor$2;
|
|
91221
|
+
var Content$3 = PopperContent$2;
|
|
91222
|
+
var Arrow$4 = PopperArrow$2;
|
|
91223
91223
|
|
|
91224
|
-
var PORTAL_NAME$
|
|
91225
|
-
var Portal$
|
|
91224
|
+
var PORTAL_NAME$9 = "Portal";
|
|
91225
|
+
var Portal$7 = React.forwardRef((props, forwardedRef) => {
|
|
91226
91226
|
const { container: containerProp, ...portalProps } = props;
|
|
91227
91227
|
const [mounted, setMounted] = React.useState(false);
|
|
91228
91228
|
useLayoutEffect2$1(() => setMounted(true), []);
|
|
91229
91229
|
const container = containerProp || mounted && globalThis?.document?.body;
|
|
91230
91230
|
return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive$4.div, { ...portalProps, ref: forwardedRef }), container) : null;
|
|
91231
91231
|
});
|
|
91232
|
-
Portal$
|
|
91232
|
+
Portal$7.displayName = PORTAL_NAME$9;
|
|
91233
91233
|
|
|
91234
91234
|
function useStateMachine$4(initialState, machine) {
|
|
91235
91235
|
return React.useReducer((state, event) => {
|
|
@@ -91560,7 +91560,7 @@ function focusFirst$3(candidates, preventScroll = false) {
|
|
|
91560
91560
|
function wrapArray$3(array, startIndex) {
|
|
91561
91561
|
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
91562
91562
|
}
|
|
91563
|
-
var Root$
|
|
91563
|
+
var Root$f = RovingFocusGroup$1;
|
|
91564
91564
|
var Item$3 = RovingFocusGroupItem$1;
|
|
91565
91565
|
|
|
91566
91566
|
var getDefaultParent = function (originalTarget) {
|
|
@@ -92473,16 +92473,16 @@ var MENU_NAME = "Menu";
|
|
|
92473
92473
|
var [Collection$3, useCollection$3, createCollectionScope$3] = createCollection$2(MENU_NAME);
|
|
92474
92474
|
var [createMenuContext, createMenuScope] = createContextScope$1(MENU_NAME, [
|
|
92475
92475
|
createCollectionScope$3,
|
|
92476
|
-
createPopperScope$
|
|
92476
|
+
createPopperScope$2,
|
|
92477
92477
|
createRovingFocusGroupScope$1
|
|
92478
92478
|
]);
|
|
92479
|
-
var usePopperScope$
|
|
92479
|
+
var usePopperScope$4 = createPopperScope$2();
|
|
92480
92480
|
var useRovingFocusGroupScope$2 = createRovingFocusGroupScope$1();
|
|
92481
92481
|
var [MenuProvider, useMenuContext] = createMenuContext(MENU_NAME);
|
|
92482
92482
|
var [MenuRootProvider, useMenuRootContext] = createMenuContext(MENU_NAME);
|
|
92483
92483
|
var Menu = (props) => {
|
|
92484
92484
|
const { __scopeMenu, open = false, children, dir, onOpenChange, modal = true } = props;
|
|
92485
|
-
const popperScope = usePopperScope$
|
|
92485
|
+
const popperScope = usePopperScope$4(__scopeMenu);
|
|
92486
92486
|
const [content, setContent] = React.useState(null);
|
|
92487
92487
|
const isUsingKeyboardRef = React.useRef(false);
|
|
92488
92488
|
const handleOpenChange = useCallbackRef$2(onOpenChange);
|
|
@@ -92501,7 +92501,7 @@ var Menu = (props) => {
|
|
|
92501
92501
|
document.removeEventListener("pointermove", handlePointer, { capture: true });
|
|
92502
92502
|
};
|
|
92503
92503
|
}, []);
|
|
92504
|
-
return /* @__PURE__ */ jsx(Root2$
|
|
92504
|
+
return /* @__PURE__ */ jsx(Root2$a, { ...popperScope, children: /* @__PURE__ */ jsx(
|
|
92505
92505
|
MenuProvider,
|
|
92506
92506
|
{
|
|
92507
92507
|
scope: __scopeMenu,
|
|
@@ -92524,39 +92524,39 @@ var Menu = (props) => {
|
|
|
92524
92524
|
) });
|
|
92525
92525
|
};
|
|
92526
92526
|
Menu.displayName = MENU_NAME;
|
|
92527
|
-
var ANCHOR_NAME$
|
|
92527
|
+
var ANCHOR_NAME$3 = "MenuAnchor";
|
|
92528
92528
|
var MenuAnchor = React.forwardRef(
|
|
92529
92529
|
(props, forwardedRef) => {
|
|
92530
92530
|
const { __scopeMenu, ...anchorProps } = props;
|
|
92531
|
-
const popperScope = usePopperScope$
|
|
92532
|
-
return /* @__PURE__ */ jsx(Anchor$
|
|
92531
|
+
const popperScope = usePopperScope$4(__scopeMenu);
|
|
92532
|
+
return /* @__PURE__ */ jsx(Anchor$3, { ...popperScope, ...anchorProps, ref: forwardedRef });
|
|
92533
92533
|
}
|
|
92534
92534
|
);
|
|
92535
|
-
MenuAnchor.displayName = ANCHOR_NAME$
|
|
92536
|
-
var PORTAL_NAME$
|
|
92537
|
-
var [PortalProvider$
|
|
92535
|
+
MenuAnchor.displayName = ANCHOR_NAME$3;
|
|
92536
|
+
var PORTAL_NAME$8 = "MenuPortal";
|
|
92537
|
+
var [PortalProvider$3, usePortalContext$3] = createMenuContext(PORTAL_NAME$8, {
|
|
92538
92538
|
forceMount: void 0
|
|
92539
92539
|
});
|
|
92540
92540
|
var MenuPortal = (props) => {
|
|
92541
92541
|
const { __scopeMenu, forceMount, children, container } = props;
|
|
92542
|
-
const context = useMenuContext(PORTAL_NAME$
|
|
92543
|
-
return /* @__PURE__ */ jsx(PortalProvider$
|
|
92542
|
+
const context = useMenuContext(PORTAL_NAME$8, __scopeMenu);
|
|
92543
|
+
return /* @__PURE__ */ jsx(PortalProvider$3, { scope: __scopeMenu, forceMount, children: /* @__PURE__ */ jsx(Presence$3, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$7, { asChild: true, container, children }) }) });
|
|
92544
92544
|
};
|
|
92545
|
-
MenuPortal.displayName = PORTAL_NAME$
|
|
92546
|
-
var CONTENT_NAME$
|
|
92547
|
-
var [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME$
|
|
92545
|
+
MenuPortal.displayName = PORTAL_NAME$8;
|
|
92546
|
+
var CONTENT_NAME$a = "MenuContent";
|
|
92547
|
+
var [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME$a);
|
|
92548
92548
|
var MenuContent = React.forwardRef(
|
|
92549
92549
|
(props, forwardedRef) => {
|
|
92550
|
-
const portalContext = usePortalContext$
|
|
92550
|
+
const portalContext = usePortalContext$3(CONTENT_NAME$a, props.__scopeMenu);
|
|
92551
92551
|
const { forceMount = portalContext.forceMount, ...contentProps } = props;
|
|
92552
|
-
const context = useMenuContext(CONTENT_NAME$
|
|
92553
|
-
const rootContext = useMenuRootContext(CONTENT_NAME$
|
|
92552
|
+
const context = useMenuContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
92553
|
+
const rootContext = useMenuRootContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
92554
92554
|
return /* @__PURE__ */ jsx(Collection$3.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence$3, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection$3.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });
|
|
92555
92555
|
}
|
|
92556
92556
|
);
|
|
92557
92557
|
var MenuRootContentModal = React.forwardRef(
|
|
92558
92558
|
(props, forwardedRef) => {
|
|
92559
|
-
const context = useMenuContext(CONTENT_NAME$
|
|
92559
|
+
const context = useMenuContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
92560
92560
|
const ref = React.useRef(null);
|
|
92561
92561
|
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
92562
92562
|
React.useEffect(() => {
|
|
@@ -92582,7 +92582,7 @@ var MenuRootContentModal = React.forwardRef(
|
|
|
92582
92582
|
}
|
|
92583
92583
|
);
|
|
92584
92584
|
var MenuRootContentNonModal = React.forwardRef((props, forwardedRef) => {
|
|
92585
|
-
const context = useMenuContext(CONTENT_NAME$
|
|
92585
|
+
const context = useMenuContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
92586
92586
|
return /* @__PURE__ */ jsx(
|
|
92587
92587
|
MenuContentImpl,
|
|
92588
92588
|
{
|
|
@@ -92614,9 +92614,9 @@ var MenuContentImpl = React.forwardRef(
|
|
|
92614
92614
|
disableOutsideScroll,
|
|
92615
92615
|
...contentProps
|
|
92616
92616
|
} = props;
|
|
92617
|
-
const context = useMenuContext(CONTENT_NAME$
|
|
92618
|
-
const rootContext = useMenuRootContext(CONTENT_NAME$
|
|
92619
|
-
const popperScope = usePopperScope$
|
|
92617
|
+
const context = useMenuContext(CONTENT_NAME$a, __scopeMenu);
|
|
92618
|
+
const rootContext = useMenuRootContext(CONTENT_NAME$a, __scopeMenu);
|
|
92619
|
+
const popperScope = usePopperScope$4(__scopeMenu);
|
|
92620
92620
|
const rovingFocusGroupScope = useRovingFocusGroupScope$2(__scopeMenu);
|
|
92621
92621
|
const getItems = useCollection$3(__scopeMenu);
|
|
92622
92622
|
const [currentItemId, setCurrentItemId] = React.useState(null);
|
|
@@ -92705,7 +92705,7 @@ var MenuContentImpl = React.forwardRef(
|
|
|
92705
92705
|
onInteractOutside,
|
|
92706
92706
|
onDismiss,
|
|
92707
92707
|
children: /* @__PURE__ */ jsx(
|
|
92708
|
-
Root$
|
|
92708
|
+
Root$f,
|
|
92709
92709
|
{
|
|
92710
92710
|
asChild: true,
|
|
92711
92711
|
...rovingFocusGroupScope,
|
|
@@ -92719,7 +92719,7 @@ var MenuContentImpl = React.forwardRef(
|
|
|
92719
92719
|
}),
|
|
92720
92720
|
preventScrollOnEntryFocus: true,
|
|
92721
92721
|
children: /* @__PURE__ */ jsx(
|
|
92722
|
-
Content$
|
|
92722
|
+
Content$3,
|
|
92723
92723
|
{
|
|
92724
92724
|
role: "menu",
|
|
92725
92725
|
"aria-orientation": "vertical",
|
|
@@ -92778,7 +92778,7 @@ var MenuContentImpl = React.forwardRef(
|
|
|
92778
92778
|
);
|
|
92779
92779
|
}
|
|
92780
92780
|
);
|
|
92781
|
-
MenuContent.displayName = CONTENT_NAME$
|
|
92781
|
+
MenuContent.displayName = CONTENT_NAME$a;
|
|
92782
92782
|
var GROUP_NAME$3 = "MenuGroup";
|
|
92783
92783
|
var MenuGroup = React.forwardRef(
|
|
92784
92784
|
(props, forwardedRef) => {
|
|
@@ -93003,15 +93003,15 @@ var MenuSeparator = React.forwardRef(
|
|
|
93003
93003
|
}
|
|
93004
93004
|
);
|
|
93005
93005
|
MenuSeparator.displayName = SEPARATOR_NAME$2;
|
|
93006
|
-
var ARROW_NAME$
|
|
93006
|
+
var ARROW_NAME$7 = "MenuArrow";
|
|
93007
93007
|
var MenuArrow = React.forwardRef(
|
|
93008
93008
|
(props, forwardedRef) => {
|
|
93009
93009
|
const { __scopeMenu, ...arrowProps } = props;
|
|
93010
|
-
const popperScope = usePopperScope$
|
|
93011
|
-
return /* @__PURE__ */ jsx(Arrow$
|
|
93010
|
+
const popperScope = usePopperScope$4(__scopeMenu);
|
|
93011
|
+
return /* @__PURE__ */ jsx(Arrow$4, { ...popperScope, ...arrowProps, ref: forwardedRef });
|
|
93012
93012
|
}
|
|
93013
93013
|
);
|
|
93014
|
-
MenuArrow.displayName = ARROW_NAME$
|
|
93014
|
+
MenuArrow.displayName = ARROW_NAME$7;
|
|
93015
93015
|
var SUB_NAME = "MenuSub";
|
|
93016
93016
|
var [MenuSubProvider, useMenuSubContext] = createMenuContext(SUB_NAME);
|
|
93017
93017
|
var SUB_TRIGGER_NAME$1 = "MenuSubTrigger";
|
|
@@ -93118,10 +93118,10 @@ MenuSubTrigger.displayName = SUB_TRIGGER_NAME$1;
|
|
|
93118
93118
|
var SUB_CONTENT_NAME$1 = "MenuSubContent";
|
|
93119
93119
|
var MenuSubContent = React.forwardRef(
|
|
93120
93120
|
(props, forwardedRef) => {
|
|
93121
|
-
const portalContext = usePortalContext$
|
|
93121
|
+
const portalContext = usePortalContext$3(CONTENT_NAME$a, props.__scopeMenu);
|
|
93122
93122
|
const { forceMount = portalContext.forceMount, ...subContentProps } = props;
|
|
93123
|
-
const context = useMenuContext(CONTENT_NAME$
|
|
93124
|
-
const rootContext = useMenuRootContext(CONTENT_NAME$
|
|
93123
|
+
const context = useMenuContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
93124
|
+
const rootContext = useMenuRootContext(CONTENT_NAME$a, props.__scopeMenu);
|
|
93125
93125
|
const subContext = useMenuSubContext(SUB_CONTENT_NAME$1, props.__scopeMenu);
|
|
93126
93126
|
const ref = React.useRef(null);
|
|
93127
93127
|
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
@@ -93218,8 +93218,8 @@ function whenMouse(handler) {
|
|
|
93218
93218
|
}
|
|
93219
93219
|
var Root3$1 = Menu;
|
|
93220
93220
|
var Anchor2$1 = MenuAnchor;
|
|
93221
|
-
var Portal$
|
|
93222
|
-
var Content2$
|
|
93221
|
+
var Portal$6 = MenuPortal;
|
|
93222
|
+
var Content2$6 = MenuContent;
|
|
93223
93223
|
var Group = MenuGroup;
|
|
93224
93224
|
var Label$4 = MenuLabel;
|
|
93225
93225
|
var Item2$2 = MenuItem;
|
|
@@ -93272,11 +93272,11 @@ var DropdownMenu$1 = (props) => {
|
|
|
93272
93272
|
);
|
|
93273
93273
|
};
|
|
93274
93274
|
DropdownMenu$1.displayName = DROPDOWN_MENU_NAME;
|
|
93275
|
-
var TRIGGER_NAME$
|
|
93275
|
+
var TRIGGER_NAME$7 = "DropdownMenuTrigger";
|
|
93276
93276
|
var DropdownMenuTrigger$1 = React.forwardRef(
|
|
93277
93277
|
(props, forwardedRef) => {
|
|
93278
93278
|
const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
|
|
93279
|
-
const context = useDropdownMenuContext(TRIGGER_NAME$
|
|
93279
|
+
const context = useDropdownMenuContext(TRIGGER_NAME$7, __scopeDropdownMenu);
|
|
93280
93280
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
93281
93281
|
return /* @__PURE__ */ jsx(Anchor2$1, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsx(
|
|
93282
93282
|
Primitive$4.button,
|
|
@@ -93307,23 +93307,23 @@ var DropdownMenuTrigger$1 = React.forwardRef(
|
|
|
93307
93307
|
) });
|
|
93308
93308
|
}
|
|
93309
93309
|
);
|
|
93310
|
-
DropdownMenuTrigger$1.displayName = TRIGGER_NAME$
|
|
93311
|
-
var PORTAL_NAME$
|
|
93310
|
+
DropdownMenuTrigger$1.displayName = TRIGGER_NAME$7;
|
|
93311
|
+
var PORTAL_NAME$7 = "DropdownMenuPortal";
|
|
93312
93312
|
var DropdownMenuPortal = (props) => {
|
|
93313
93313
|
const { __scopeDropdownMenu, ...portalProps } = props;
|
|
93314
93314
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
93315
|
-
return /* @__PURE__ */ jsx(Portal$
|
|
93315
|
+
return /* @__PURE__ */ jsx(Portal$6, { ...menuScope, ...portalProps });
|
|
93316
93316
|
};
|
|
93317
|
-
DropdownMenuPortal.displayName = PORTAL_NAME$
|
|
93318
|
-
var CONTENT_NAME$
|
|
93317
|
+
DropdownMenuPortal.displayName = PORTAL_NAME$7;
|
|
93318
|
+
var CONTENT_NAME$9 = "DropdownMenuContent";
|
|
93319
93319
|
var DropdownMenuContent$1 = React.forwardRef(
|
|
93320
93320
|
(props, forwardedRef) => {
|
|
93321
93321
|
const { __scopeDropdownMenu, ...contentProps } = props;
|
|
93322
|
-
const context = useDropdownMenuContext(CONTENT_NAME$
|
|
93322
|
+
const context = useDropdownMenuContext(CONTENT_NAME$9, __scopeDropdownMenu);
|
|
93323
93323
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
93324
93324
|
const hasInteractedOutsideRef = React.useRef(false);
|
|
93325
93325
|
return /* @__PURE__ */ jsx(
|
|
93326
|
-
Content2$
|
|
93326
|
+
Content2$6,
|
|
93327
93327
|
{
|
|
93328
93328
|
id: context.contentId,
|
|
93329
93329
|
"aria-labelledby": context.triggerId,
|
|
@@ -93356,7 +93356,7 @@ var DropdownMenuContent$1 = React.forwardRef(
|
|
|
93356
93356
|
);
|
|
93357
93357
|
}
|
|
93358
93358
|
);
|
|
93359
|
-
DropdownMenuContent$1.displayName = CONTENT_NAME$
|
|
93359
|
+
DropdownMenuContent$1.displayName = CONTENT_NAME$9;
|
|
93360
93360
|
var GROUP_NAME$2 = "DropdownMenuGroup";
|
|
93361
93361
|
var DropdownMenuGroup = React.forwardRef(
|
|
93362
93362
|
(props, forwardedRef) => {
|
|
@@ -93419,7 +93419,7 @@ var DropdownMenuSeparator$1 = React.forwardRef((props, forwardedRef) => {
|
|
|
93419
93419
|
return /* @__PURE__ */ jsx(Separator$3, { ...menuScope, ...separatorProps, ref: forwardedRef });
|
|
93420
93420
|
});
|
|
93421
93421
|
DropdownMenuSeparator$1.displayName = SEPARATOR_NAME$1;
|
|
93422
|
-
var ARROW_NAME$
|
|
93422
|
+
var ARROW_NAME$6 = "DropdownMenuArrow";
|
|
93423
93423
|
var DropdownMenuArrow = React.forwardRef(
|
|
93424
93424
|
(props, forwardedRef) => {
|
|
93425
93425
|
const { __scopeDropdownMenu, ...arrowProps } = props;
|
|
@@ -93427,7 +93427,7 @@ var DropdownMenuArrow = React.forwardRef(
|
|
|
93427
93427
|
return /* @__PURE__ */ jsx(Arrow2$1, { ...menuScope, ...arrowProps, ref: forwardedRef });
|
|
93428
93428
|
}
|
|
93429
93429
|
);
|
|
93430
|
-
DropdownMenuArrow.displayName = ARROW_NAME$
|
|
93430
|
+
DropdownMenuArrow.displayName = ARROW_NAME$6;
|
|
93431
93431
|
var SUB_TRIGGER_NAME = "DropdownMenuSubTrigger";
|
|
93432
93432
|
var DropdownMenuSubTrigger = React.forwardRef((props, forwardedRef) => {
|
|
93433
93433
|
const { __scopeDropdownMenu, ...subTriggerProps } = props;
|
|
@@ -93460,10 +93460,10 @@ var DropdownMenuSubContent = React.forwardRef((props, forwardedRef) => {
|
|
|
93460
93460
|
);
|
|
93461
93461
|
});
|
|
93462
93462
|
DropdownMenuSubContent.displayName = SUB_CONTENT_NAME;
|
|
93463
|
-
var Root2$
|
|
93464
|
-
var Trigger$
|
|
93463
|
+
var Root2$9 = DropdownMenu$1;
|
|
93464
|
+
var Trigger$5 = DropdownMenuTrigger$1;
|
|
93465
93465
|
var Portal2$1 = DropdownMenuPortal;
|
|
93466
|
-
var Content2$
|
|
93466
|
+
var Content2$5 = DropdownMenuContent$1;
|
|
93467
93467
|
var Item2$1 = DropdownMenuItem$1;
|
|
93468
93468
|
var Separator2 = DropdownMenuSeparator$1;
|
|
93469
93469
|
|
|
@@ -93473,14 +93473,14 @@ function useFloatingPortalContainer() {
|
|
|
93473
93473
|
}
|
|
93474
93474
|
|
|
93475
93475
|
function DropdownMenu({ ...props }) {
|
|
93476
|
-
return jsx(Root2$
|
|
93476
|
+
return jsx(Root2$9, { "data-slot": "dropdown-menu", ...props });
|
|
93477
93477
|
}
|
|
93478
93478
|
function DropdownMenuTrigger({ ...props }) {
|
|
93479
|
-
return jsx(Trigger$
|
|
93479
|
+
return jsx(Trigger$5, { "data-slot": "dropdown-menu-trigger", ...props });
|
|
93480
93480
|
}
|
|
93481
93481
|
function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
|
|
93482
93482
|
const portalContainer = useFloatingPortalContainer();
|
|
93483
|
-
return (jsx(Portal2$1, { container: portalContainer !== null && portalContainer !== void 0 ? portalContainer : undefined, children: jsx(Content2$
|
|
93483
|
+
return (jsx(Portal2$1, { container: portalContainer !== null && portalContainer !== void 0 ? portalContainer : undefined, children: jsx(Content2$5, { "data-slot": "dropdown-menu-content", "data-iblai-dialog-interaction-layer": true, sideOffset: sideOffset, className: cn('bg-popover text-popover-foreground 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 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md', className), ...props }) }));
|
|
93484
93484
|
}
|
|
93485
93485
|
function DropdownMenuItem({ className, inset, variant = 'default', ...props }) {
|
|
93486
93486
|
return (jsx(Item2$1, { "data-slot": "dropdown-menu-item", "data-inset": inset, "data-variant": variant, className: cn("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props }));
|
|
@@ -93833,12 +93833,12 @@ function useImageLoadingStatus(src, { referrerPolicy, crossOrigin }) {
|
|
|
93833
93833
|
}, [image, crossOrigin, referrerPolicy]);
|
|
93834
93834
|
return loadingStatus;
|
|
93835
93835
|
}
|
|
93836
|
-
var Root$
|
|
93836
|
+
var Root$e = Avatar$1;
|
|
93837
93837
|
var Image$2 = AvatarImage$1;
|
|
93838
93838
|
var Fallback = AvatarFallback$1;
|
|
93839
93839
|
|
|
93840
|
-
const Avatar = React.forwardRef(({ className, onClick, ...props }, ref) => (jsx(Root$
|
|
93841
|
-
Avatar.displayName = Root$
|
|
93840
|
+
const Avatar = React.forwardRef(({ className, onClick, ...props }, ref) => (jsx(Root$e, { ref: ref, className: cn("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full", className), onClick: onClick, ...props })));
|
|
93841
|
+
Avatar.displayName = Root$e.displayName;
|
|
93842
93842
|
const AvatarImage = React.forwardRef(({ className, onClick, ...props }, ref) => (jsx(Image$2, { ref: ref, className: cn("aspect-square h-full w-full cursor-pointer rounded-full border-0 object-cover", // Changed object-center to object-cover for better image fitting
|
|
93843
93843
|
className), onClick: onClick, ...props })));
|
|
93844
93844
|
AvatarImage.displayName = "AvatarImage";
|
|
@@ -93881,7 +93881,7 @@ function usePrevious$1(value) {
|
|
|
93881
93881
|
}
|
|
93882
93882
|
|
|
93883
93883
|
// packages/react/visually-hidden/src/visually-hidden.tsx
|
|
93884
|
-
var NAME$
|
|
93884
|
+
var NAME$8 = "VisuallyHidden";
|
|
93885
93885
|
var VisuallyHidden$2 = React.forwardRef(
|
|
93886
93886
|
(props, forwardedRef) => {
|
|
93887
93887
|
return /* @__PURE__ */ jsx(
|
|
@@ -93907,7 +93907,7 @@ var VisuallyHidden$2 = React.forwardRef(
|
|
|
93907
93907
|
);
|
|
93908
93908
|
}
|
|
93909
93909
|
);
|
|
93910
|
-
VisuallyHidden$2.displayName = NAME$
|
|
93910
|
+
VisuallyHidden$2.displayName = NAME$8;
|
|
93911
93911
|
|
|
93912
93912
|
var OPEN_KEYS = [" ", "Enter", "ArrowUp", "ArrowDown"];
|
|
93913
93913
|
var SELECTION_KEYS = [" ", "Enter"];
|
|
@@ -93915,9 +93915,9 @@ var SELECT_NAME = "Select";
|
|
|
93915
93915
|
var [Collection$2, useCollection$2, createCollectionScope$2] = createCollection$2(SELECT_NAME);
|
|
93916
93916
|
var [createSelectContext] = createContextScope$1(SELECT_NAME, [
|
|
93917
93917
|
createCollectionScope$2,
|
|
93918
|
-
createPopperScope$
|
|
93918
|
+
createPopperScope$2
|
|
93919
93919
|
]);
|
|
93920
|
-
var usePopperScope$
|
|
93920
|
+
var usePopperScope$3 = createPopperScope$2();
|
|
93921
93921
|
var [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);
|
|
93922
93922
|
var [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);
|
|
93923
93923
|
var Select$2 = (props) => {
|
|
@@ -93937,7 +93937,7 @@ var Select$2 = (props) => {
|
|
|
93937
93937
|
required,
|
|
93938
93938
|
form
|
|
93939
93939
|
} = props;
|
|
93940
|
-
const popperScope = usePopperScope$
|
|
93940
|
+
const popperScope = usePopperScope$3(__scopeSelect);
|
|
93941
93941
|
const [trigger, setTrigger] = React.useState(null);
|
|
93942
93942
|
const [valueNode, setValueNode] = React.useState(null);
|
|
93943
93943
|
const [valueNodeHasChildren, setValueNodeHasChildren] = React.useState(false);
|
|
@@ -93956,7 +93956,7 @@ var Select$2 = (props) => {
|
|
|
93956
93956
|
const isFormControl = trigger ? form || !!trigger.closest("form") : true;
|
|
93957
93957
|
const [nativeOptionsSet, setNativeOptionsSet] = React.useState(/* @__PURE__ */ new Set());
|
|
93958
93958
|
const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(";");
|
|
93959
|
-
return /* @__PURE__ */ jsx(Root2$
|
|
93959
|
+
return /* @__PURE__ */ jsx(Root2$a, { ...popperScope, children: /* @__PURE__ */ jsxs(
|
|
93960
93960
|
SelectProvider,
|
|
93961
93961
|
{
|
|
93962
93962
|
required,
|
|
@@ -94017,12 +94017,12 @@ var Select$2 = (props) => {
|
|
|
94017
94017
|
) });
|
|
94018
94018
|
};
|
|
94019
94019
|
Select$2.displayName = SELECT_NAME;
|
|
94020
|
-
var TRIGGER_NAME$
|
|
94020
|
+
var TRIGGER_NAME$6 = "SelectTrigger";
|
|
94021
94021
|
var SelectTrigger$1 = React.forwardRef(
|
|
94022
94022
|
(props, forwardedRef) => {
|
|
94023
94023
|
const { __scopeSelect, disabled = false, ...triggerProps } = props;
|
|
94024
|
-
const popperScope = usePopperScope$
|
|
94025
|
-
const context = useSelectContext(TRIGGER_NAME$
|
|
94024
|
+
const popperScope = usePopperScope$3(__scopeSelect);
|
|
94025
|
+
const context = useSelectContext(TRIGGER_NAME$6, __scopeSelect);
|
|
94026
94026
|
const isDisabled = context.disabled || disabled;
|
|
94027
94027
|
const composedRefs = useComposedRefs$1(forwardedRef, context.onTriggerChange);
|
|
94028
94028
|
const getItems = useCollection$2(__scopeSelect);
|
|
@@ -94047,7 +94047,7 @@ var SelectTrigger$1 = React.forwardRef(
|
|
|
94047
94047
|
};
|
|
94048
94048
|
}
|
|
94049
94049
|
};
|
|
94050
|
-
return /* @__PURE__ */ jsx(Anchor$
|
|
94050
|
+
return /* @__PURE__ */ jsx(Anchor$3, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(
|
|
94051
94051
|
Primitive$4.button,
|
|
94052
94052
|
{
|
|
94053
94053
|
type: "button",
|
|
@@ -94094,7 +94094,7 @@ var SelectTrigger$1 = React.forwardRef(
|
|
|
94094
94094
|
) });
|
|
94095
94095
|
}
|
|
94096
94096
|
);
|
|
94097
|
-
SelectTrigger$1.displayName = TRIGGER_NAME$
|
|
94097
|
+
SelectTrigger$1.displayName = TRIGGER_NAME$6;
|
|
94098
94098
|
var VALUE_NAME = "SelectValue";
|
|
94099
94099
|
var SelectValue$1 = React.forwardRef(
|
|
94100
94100
|
(props, forwardedRef) => {
|
|
@@ -94126,15 +94126,15 @@ var SelectIcon = React.forwardRef(
|
|
|
94126
94126
|
}
|
|
94127
94127
|
);
|
|
94128
94128
|
SelectIcon.displayName = ICON_NAME;
|
|
94129
|
-
var PORTAL_NAME$
|
|
94129
|
+
var PORTAL_NAME$6 = "SelectPortal";
|
|
94130
94130
|
var SelectPortal = (props) => {
|
|
94131
|
-
return /* @__PURE__ */ jsx(Portal$
|
|
94131
|
+
return /* @__PURE__ */ jsx(Portal$7, { asChild: true, ...props });
|
|
94132
94132
|
};
|
|
94133
|
-
SelectPortal.displayName = PORTAL_NAME$
|
|
94134
|
-
var CONTENT_NAME$
|
|
94133
|
+
SelectPortal.displayName = PORTAL_NAME$6;
|
|
94134
|
+
var CONTENT_NAME$8 = "SelectContent";
|
|
94135
94135
|
var SelectContent$1 = React.forwardRef(
|
|
94136
94136
|
(props, forwardedRef) => {
|
|
94137
|
-
const context = useSelectContext(CONTENT_NAME$
|
|
94137
|
+
const context = useSelectContext(CONTENT_NAME$8, props.__scopeSelect);
|
|
94138
94138
|
const [fragment, setFragment] = React.useState();
|
|
94139
94139
|
useLayoutEffect2$1(() => {
|
|
94140
94140
|
setFragment(new DocumentFragment());
|
|
@@ -94149,9 +94149,9 @@ var SelectContent$1 = React.forwardRef(
|
|
|
94149
94149
|
return /* @__PURE__ */ jsx(SelectContentImpl, { ...props, ref: forwardedRef });
|
|
94150
94150
|
}
|
|
94151
94151
|
);
|
|
94152
|
-
SelectContent$1.displayName = CONTENT_NAME$
|
|
94152
|
+
SelectContent$1.displayName = CONTENT_NAME$8;
|
|
94153
94153
|
var CONTENT_MARGIN = 10;
|
|
94154
|
-
var [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME$
|
|
94154
|
+
var [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME$8);
|
|
94155
94155
|
var CONTENT_IMPL_NAME = "SelectContentImpl";
|
|
94156
94156
|
var Slot$2 = createSlot$1("SelectContent.RemoveScroll");
|
|
94157
94157
|
var SelectContentImpl = React.forwardRef(
|
|
@@ -94177,7 +94177,7 @@ var SelectContentImpl = React.forwardRef(
|
|
|
94177
94177
|
//
|
|
94178
94178
|
...contentProps
|
|
94179
94179
|
} = props;
|
|
94180
|
-
const context = useSelectContext(CONTENT_NAME$
|
|
94180
|
+
const context = useSelectContext(CONTENT_NAME$8, __scopeSelect);
|
|
94181
94181
|
const [content, setContent] = React.useState(null);
|
|
94182
94182
|
const [viewport, setViewport] = React.useState(null);
|
|
94183
94183
|
const composedRefs = useComposedRefs$1(forwardedRef, (node) => setContent(node));
|
|
@@ -94390,8 +94390,8 @@ SelectContentImpl.displayName = CONTENT_IMPL_NAME;
|
|
|
94390
94390
|
var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition";
|
|
94391
94391
|
var SelectItemAlignedPosition = React.forwardRef((props, forwardedRef) => {
|
|
94392
94392
|
const { __scopeSelect, onPlaced, ...popperProps } = props;
|
|
94393
|
-
const context = useSelectContext(CONTENT_NAME$
|
|
94394
|
-
const contentContext = useSelectContentContext(CONTENT_NAME$
|
|
94393
|
+
const context = useSelectContext(CONTENT_NAME$8, __scopeSelect);
|
|
94394
|
+
const contentContext = useSelectContentContext(CONTENT_NAME$8, __scopeSelect);
|
|
94395
94395
|
const [contentWrapper, setContentWrapper] = React.useState(null);
|
|
94396
94396
|
const [content, setContent] = React.useState(null);
|
|
94397
94397
|
const composedRefs = useComposedRefs$1(forwardedRef, (node) => setContent(node));
|
|
@@ -94559,9 +94559,9 @@ var SelectPopperPosition = React.forwardRef((props, forwardedRef) => {
|
|
|
94559
94559
|
collisionPadding = CONTENT_MARGIN,
|
|
94560
94560
|
...popperProps
|
|
94561
94561
|
} = props;
|
|
94562
|
-
const popperScope = usePopperScope$
|
|
94562
|
+
const popperScope = usePopperScope$3(__scopeSelect);
|
|
94563
94563
|
return /* @__PURE__ */ jsx(
|
|
94564
|
-
Content$
|
|
94564
|
+
Content$3,
|
|
94565
94565
|
{
|
|
94566
94566
|
...popperScope,
|
|
94567
94567
|
...popperProps,
|
|
@@ -94585,7 +94585,7 @@ var SelectPopperPosition = React.forwardRef((props, forwardedRef) => {
|
|
|
94585
94585
|
);
|
|
94586
94586
|
});
|
|
94587
94587
|
SelectPopperPosition.displayName = POPPER_POSITION_NAME;
|
|
94588
|
-
var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME$
|
|
94588
|
+
var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME$8, {});
|
|
94589
94589
|
var VIEWPORT_NAME$2 = "SelectViewport";
|
|
94590
94590
|
var SelectViewport = React.forwardRef(
|
|
94591
94591
|
(props, forwardedRef) => {
|
|
@@ -94934,17 +94934,17 @@ var SelectSeparator$1 = React.forwardRef(
|
|
|
94934
94934
|
}
|
|
94935
94935
|
);
|
|
94936
94936
|
SelectSeparator$1.displayName = SEPARATOR_NAME;
|
|
94937
|
-
var ARROW_NAME$
|
|
94937
|
+
var ARROW_NAME$5 = "SelectArrow";
|
|
94938
94938
|
var SelectArrow = React.forwardRef(
|
|
94939
94939
|
(props, forwardedRef) => {
|
|
94940
94940
|
const { __scopeSelect, ...arrowProps } = props;
|
|
94941
|
-
const popperScope = usePopperScope$
|
|
94942
|
-
const context = useSelectContext(ARROW_NAME$
|
|
94943
|
-
const contentContext = useSelectContentContext(ARROW_NAME$
|
|
94944
|
-
return context.open && contentContext.position === "popper" ? /* @__PURE__ */ jsx(Arrow$
|
|
94941
|
+
const popperScope = usePopperScope$3(__scopeSelect);
|
|
94942
|
+
const context = useSelectContext(ARROW_NAME$5, __scopeSelect);
|
|
94943
|
+
const contentContext = useSelectContentContext(ARROW_NAME$5, __scopeSelect);
|
|
94944
|
+
return context.open && contentContext.position === "popper" ? /* @__PURE__ */ jsx(Arrow$4, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;
|
|
94945
94945
|
}
|
|
94946
94946
|
);
|
|
94947
|
-
SelectArrow.displayName = ARROW_NAME$
|
|
94947
|
+
SelectArrow.displayName = ARROW_NAME$5;
|
|
94948
94948
|
function shouldShowPlaceholder(value) {
|
|
94949
94949
|
return value === "" || value === void 0;
|
|
94950
94950
|
}
|
|
@@ -95012,12 +95012,12 @@ function findNextItem(items, search, currentItem) {
|
|
|
95012
95012
|
function wrapArray$1(array, startIndex) {
|
|
95013
95013
|
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
95014
95014
|
}
|
|
95015
|
-
var Root2$
|
|
95016
|
-
var Trigger$
|
|
95015
|
+
var Root2$8 = Select$2;
|
|
95016
|
+
var Trigger$4 = SelectTrigger$1;
|
|
95017
95017
|
var Value = SelectValue$1;
|
|
95018
95018
|
var Icon$3 = SelectIcon;
|
|
95019
|
-
var Portal$
|
|
95020
|
-
var Content2$
|
|
95019
|
+
var Portal$5 = SelectPortal;
|
|
95020
|
+
var Content2$4 = SelectContent$1;
|
|
95021
95021
|
var Viewport$2 = SelectViewport;
|
|
95022
95022
|
var Label$3 = SelectLabel$1;
|
|
95023
95023
|
var Item$2 = SelectItem$1;
|
|
@@ -95027,22 +95027,22 @@ var ScrollUpButton = SelectScrollUpButton$1;
|
|
|
95027
95027
|
var ScrollDownButton = SelectScrollDownButton$1;
|
|
95028
95028
|
var Separator$2 = SelectSeparator$1;
|
|
95029
95029
|
|
|
95030
|
-
const Select$1 = Root2$
|
|
95030
|
+
const Select$1 = Root2$8;
|
|
95031
95031
|
const SelectValue = Value;
|
|
95032
|
-
const SelectTrigger = React.forwardRef(({ className, children, ...props }, ref) => (jsxs(Trigger$
|
|
95033
|
-
SelectTrigger.displayName = Trigger$
|
|
95032
|
+
const SelectTrigger = React.forwardRef(({ className, children, ...props }, ref) => (jsxs(Trigger$4, { ref: ref, className: cn('border-input ring-offset-background data-[placeholder]:text-muted-foreground focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1', className), ...props, children: [children, jsx(Icon$3, { asChild: true, children: jsx(ChevronDown, { className: "h-4 w-4 opacity-50" }) })] })));
|
|
95033
|
+
SelectTrigger.displayName = Trigger$4.displayName;
|
|
95034
95034
|
const SelectScrollUpButton = React.forwardRef(({ className, ...props }, ref) => (jsx(ScrollUpButton, { ref: ref, className: cn('flex cursor-default items-center justify-center py-1', className), ...props, children: jsx(ChevronUp, { className: "h-4 w-4" }) })));
|
|
95035
95035
|
SelectScrollUpButton.displayName = ScrollUpButton.displayName;
|
|
95036
95036
|
const SelectScrollDownButton = React.forwardRef(({ className, ...props }, ref) => (jsx(ScrollDownButton, { ref: ref, className: cn('flex cursor-default items-center justify-center py-1', className), ...props, children: jsx(ChevronDown, { className: "h-4 w-4" }) })));
|
|
95037
95037
|
SelectScrollDownButton.displayName = ScrollDownButton.displayName;
|
|
95038
95038
|
const SelectContent = React.forwardRef(({ className, children, position = 'popper', ...props }, ref) => {
|
|
95039
95039
|
const portalContainer = useFloatingPortalContainer();
|
|
95040
|
-
return (jsx(Portal$
|
|
95040
|
+
return (jsx(Portal$5, { container: portalContainer !== null && portalContainer !== void 0 ? portalContainer : undefined, children: jsxs(Content2$4, { ref: ref, className: cn('bg-popover text-popover-foreground 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 relative z-50 max-h-60 min-w-[8rem] overflow-hidden rounded-md border shadow-md', position === 'popper' &&
|
|
95041
95041
|
'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1', className), position: position, ...props, children: [jsx(SelectScrollUpButton, {}), jsx(Viewport$2, { className: cn('h-[var(--radix-select-viewport-height)] overflow-auto p-1', position === 'popper' && 'w-full min-w-[var(--radix-select-trigger-width)]'), style: {
|
|
95042
95042
|
'--radix-select-viewport-height': 'var(--radix-select-content-available-height)',
|
|
95043
95043
|
}, children: children }), jsx(SelectScrollDownButton, {})] }) }));
|
|
95044
95044
|
});
|
|
95045
|
-
SelectContent.displayName = Content2$
|
|
95045
|
+
SelectContent.displayName = Content2$4.displayName;
|
|
95046
95046
|
const SelectLabel = React.forwardRef(({ className, ...props }, ref) => (jsx(Label$3, { ref: ref, className: cn('px-2 py-1.5 text-sm font-semibold', className), ...props })));
|
|
95047
95047
|
SelectLabel.displayName = Label$3.displayName;
|
|
95048
95048
|
const SelectItem = React.forwardRef(({ className, children, ...props }, ref) => (jsxs(Item$2, { ref: ref, className: cn('focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50', className), ...props, children: [jsx("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: jsx(ItemIndicator, { children: jsx(Check, { className: "h-4 w-4" }) }) }), jsx(ItemText, { children: children })] })));
|
|
@@ -95445,18 +95445,18 @@ function handleAndDispatchCustomEvent$2(name, handler, detail, { discrete }) {
|
|
|
95445
95445
|
target.dispatchEvent(event);
|
|
95446
95446
|
}
|
|
95447
95447
|
}
|
|
95448
|
-
var Root$
|
|
95448
|
+
var Root$d = DismissableLayer$1;
|
|
95449
95449
|
var Branch$1 = DismissableLayerBranch$1;
|
|
95450
95450
|
|
|
95451
|
-
var PORTAL_NAME$
|
|
95452
|
-
var Portal$
|
|
95451
|
+
var PORTAL_NAME$5 = "Portal";
|
|
95452
|
+
var Portal$4 = React.forwardRef((props, forwardedRef) => {
|
|
95453
95453
|
const { container: containerProp, ...portalProps } = props;
|
|
95454
95454
|
const [mounted, setMounted] = React.useState(false);
|
|
95455
95455
|
useLayoutEffect2$1(() => setMounted(true), []);
|
|
95456
95456
|
const container = containerProp || mounted && globalThis?.document?.body;
|
|
95457
95457
|
return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive$2.div, { ...portalProps, ref: forwardedRef }), container) : null;
|
|
95458
95458
|
});
|
|
95459
|
-
Portal$
|
|
95459
|
+
Portal$4.displayName = PORTAL_NAME$5;
|
|
95460
95460
|
|
|
95461
95461
|
function useStateMachine$3(initialState, machine) {
|
|
95462
95462
|
return React.useReducer((state, event) => {
|
|
@@ -95663,7 +95663,7 @@ var VISUALLY_HIDDEN_STYLES$1 = Object.freeze({
|
|
|
95663
95663
|
whiteSpace: "nowrap",
|
|
95664
95664
|
wordWrap: "normal"
|
|
95665
95665
|
});
|
|
95666
|
-
var NAME$
|
|
95666
|
+
var NAME$7 = "VisuallyHidden";
|
|
95667
95667
|
var VisuallyHidden$1 = React.forwardRef(
|
|
95668
95668
|
(props, forwardedRef) => {
|
|
95669
95669
|
return /* @__PURE__ */ jsx(
|
|
@@ -95676,7 +95676,7 @@ var VisuallyHidden$1 = React.forwardRef(
|
|
|
95676
95676
|
);
|
|
95677
95677
|
}
|
|
95678
95678
|
);
|
|
95679
|
-
VisuallyHidden$1.displayName = NAME$
|
|
95679
|
+
VisuallyHidden$1.displayName = NAME$7;
|
|
95680
95680
|
|
|
95681
95681
|
var PROVIDER_NAME$1 = "ToastProvider";
|
|
95682
95682
|
var [Collection$1, useCollection$1, createCollectionScope$1] = createCollection$1("Toast");
|
|
@@ -96035,7 +96035,7 @@ var ToastImpl = React.forwardRef(
|
|
|
96035
96035
|
),
|
|
96036
96036
|
/* @__PURE__ */ jsx(ToastInteractiveProvider, { scope: __scopeToast, onClose: handleClose, children: ReactDOM.createPortal(
|
|
96037
96037
|
/* @__PURE__ */ jsx(Collection$1.ItemSlot, { scope: __scopeToast, children: /* @__PURE__ */ jsx(
|
|
96038
|
-
Root$
|
|
96038
|
+
Root$d,
|
|
96039
96039
|
{
|
|
96040
96040
|
asChild: true,
|
|
96041
96041
|
onEscapeKeyDown: composeEventHandlers$1(onEscapeKeyDown, () => {
|
|
@@ -96139,7 +96139,7 @@ var ToastAnnounce = (props) => {
|
|
|
96139
96139
|
const timer = window.setTimeout(() => setIsAnnounced(true), 1e3);
|
|
96140
96140
|
return () => window.clearTimeout(timer);
|
|
96141
96141
|
}, []);
|
|
96142
|
-
return isAnnounced ? null : /* @__PURE__ */ jsx(Portal$
|
|
96142
|
+
return isAnnounced ? null : /* @__PURE__ */ jsx(Portal$4, { asChild: true, children: /* @__PURE__ */ jsx(VisuallyHidden$1, { ...announceProps, children: renderAnnounceText && /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
96143
96143
|
context.label,
|
|
96144
96144
|
" ",
|
|
96145
96145
|
children
|
|
@@ -96282,7 +96282,7 @@ function focusFirst$1(candidates) {
|
|
|
96282
96282
|
}
|
|
96283
96283
|
var Provider$1 = ToastProvider$1;
|
|
96284
96284
|
var Viewport$1 = ToastViewport$1;
|
|
96285
|
-
var Root2$
|
|
96285
|
+
var Root2$7 = Toast$1;
|
|
96286
96286
|
var Title = ToastTitle$1;
|
|
96287
96287
|
var Description = ToastDescription$1;
|
|
96288
96288
|
var Action$1 = ToastAction$1;
|
|
@@ -96303,9 +96303,9 @@ const toastVariants = cva("group pointer-events-auto relative flex w-full items-
|
|
|
96303
96303
|
},
|
|
96304
96304
|
});
|
|
96305
96305
|
const Toast = React.forwardRef(({ className, variant, ...props }, ref) => {
|
|
96306
|
-
return (jsx(Root2$
|
|
96306
|
+
return (jsx(Root2$7, { ref: ref, className: cn(toastVariants({ variant }), className), ...props }));
|
|
96307
96307
|
});
|
|
96308
|
-
Toast.displayName = Root2$
|
|
96308
|
+
Toast.displayName = Root2$7.displayName;
|
|
96309
96309
|
const ToastAction = React.forwardRef(({ className, ...props }, ref) => (jsx(Action$1, { ref: ref, className: cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive", className), ...props })));
|
|
96310
96310
|
ToastAction.displayName = Action$1.displayName;
|
|
96311
96311
|
const ToastClose = React.forwardRef(({ className, ...props }, ref) => (jsx(Close, { ref: ref, className: cn("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600", className), "toast-close": "", ...props, children: jsx(X$2, { className: "h-4 w-4" }) })));
|
|
@@ -96350,7 +96350,7 @@ var Switch$1 = React.forwardRef(
|
|
|
96350
96350
|
role: "switch",
|
|
96351
96351
|
"aria-checked": checked,
|
|
96352
96352
|
"aria-required": required,
|
|
96353
|
-
"data-state": getState$
|
|
96353
|
+
"data-state": getState$4(checked),
|
|
96354
96354
|
"data-disabled": disabled ? "" : void 0,
|
|
96355
96355
|
disabled,
|
|
96356
96356
|
value,
|
|
@@ -96391,7 +96391,7 @@ var SwitchThumb = React.forwardRef(
|
|
|
96391
96391
|
return /* @__PURE__ */ jsx(
|
|
96392
96392
|
Primitive$2.span,
|
|
96393
96393
|
{
|
|
96394
|
-
"data-state": getState$
|
|
96394
|
+
"data-state": getState$4(context.checked),
|
|
96395
96395
|
"data-disabled": context.disabled ? "" : void 0,
|
|
96396
96396
|
...thumbProps,
|
|
96397
96397
|
ref: forwardedRef
|
|
@@ -96450,14 +96450,14 @@ var SwitchBubbleInput = React.forwardRef(
|
|
|
96450
96450
|
}
|
|
96451
96451
|
);
|
|
96452
96452
|
SwitchBubbleInput.displayName = BUBBLE_INPUT_NAME$1;
|
|
96453
|
-
function getState$
|
|
96453
|
+
function getState$4(checked) {
|
|
96454
96454
|
return checked ? "checked" : "unchecked";
|
|
96455
96455
|
}
|
|
96456
|
-
var Root$
|
|
96456
|
+
var Root$c = Switch$1;
|
|
96457
96457
|
var Thumb = SwitchThumb;
|
|
96458
96458
|
|
|
96459
|
-
const Switch = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$
|
|
96460
|
-
Switch.displayName = Root$
|
|
96459
|
+
const Switch = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$c, { className: cn("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input", className), ...props, ref: ref, children: jsx(Thumb, { className: cn("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0") }) })));
|
|
96460
|
+
Switch.displayName = Root$c.displayName;
|
|
96461
96461
|
|
|
96462
96462
|
var TABS_NAME = "Tabs";
|
|
96463
96463
|
var [createTabsContext] = createContextScope$1(TABS_NAME, [
|
|
@@ -96514,7 +96514,7 @@ var TabsList$1 = React.forwardRef(
|
|
|
96514
96514
|
const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);
|
|
96515
96515
|
const rovingFocusGroupScope = useRovingFocusGroupScope$1(__scopeTabs);
|
|
96516
96516
|
return /* @__PURE__ */ jsx(
|
|
96517
|
-
Root$
|
|
96517
|
+
Root$f,
|
|
96518
96518
|
{
|
|
96519
96519
|
asChild: true,
|
|
96520
96520
|
...rovingFocusGroupScope,
|
|
@@ -96535,11 +96535,11 @@ var TabsList$1 = React.forwardRef(
|
|
|
96535
96535
|
}
|
|
96536
96536
|
);
|
|
96537
96537
|
TabsList$1.displayName = TAB_LIST_NAME;
|
|
96538
|
-
var TRIGGER_NAME$
|
|
96538
|
+
var TRIGGER_NAME$5 = "TabsTrigger";
|
|
96539
96539
|
var TabsTrigger$1 = React.forwardRef(
|
|
96540
96540
|
(props, forwardedRef) => {
|
|
96541
96541
|
const { __scopeTabs, value, disabled = false, ...triggerProps } = props;
|
|
96542
|
-
const context = useTabsContext(TRIGGER_NAME$
|
|
96542
|
+
const context = useTabsContext(TRIGGER_NAME$5, __scopeTabs);
|
|
96543
96543
|
const rovingFocusGroupScope = useRovingFocusGroupScope$1(__scopeTabs);
|
|
96544
96544
|
const triggerId = makeTriggerId(context.baseId, value);
|
|
96545
96545
|
const contentId = makeContentId(context.baseId, value);
|
|
@@ -96586,12 +96586,12 @@ var TabsTrigger$1 = React.forwardRef(
|
|
|
96586
96586
|
);
|
|
96587
96587
|
}
|
|
96588
96588
|
);
|
|
96589
|
-
TabsTrigger$1.displayName = TRIGGER_NAME$
|
|
96590
|
-
var CONTENT_NAME$
|
|
96589
|
+
TabsTrigger$1.displayName = TRIGGER_NAME$5;
|
|
96590
|
+
var CONTENT_NAME$7 = "TabsContent";
|
|
96591
96591
|
var TabsContent$1 = React.forwardRef(
|
|
96592
96592
|
(props, forwardedRef) => {
|
|
96593
96593
|
const { __scopeTabs, value, forceMount, children, ...contentProps } = props;
|
|
96594
|
-
const context = useTabsContext(CONTENT_NAME$
|
|
96594
|
+
const context = useTabsContext(CONTENT_NAME$7, __scopeTabs);
|
|
96595
96595
|
const triggerId = makeTriggerId(context.baseId, value);
|
|
96596
96596
|
const contentId = makeContentId(context.baseId, value);
|
|
96597
96597
|
const isSelected = value === context.value;
|
|
@@ -96621,25 +96621,25 @@ var TabsContent$1 = React.forwardRef(
|
|
|
96621
96621
|
) });
|
|
96622
96622
|
}
|
|
96623
96623
|
);
|
|
96624
|
-
TabsContent$1.displayName = CONTENT_NAME$
|
|
96624
|
+
TabsContent$1.displayName = CONTENT_NAME$7;
|
|
96625
96625
|
function makeTriggerId(baseId, value) {
|
|
96626
96626
|
return `${baseId}-trigger-${value}`;
|
|
96627
96627
|
}
|
|
96628
96628
|
function makeContentId(baseId, value) {
|
|
96629
96629
|
return `${baseId}-content-${value}`;
|
|
96630
96630
|
}
|
|
96631
|
-
var Root2$
|
|
96631
|
+
var Root2$6 = Tabs$1;
|
|
96632
96632
|
var List = TabsList$1;
|
|
96633
|
-
var Trigger$
|
|
96634
|
-
var Content$
|
|
96633
|
+
var Trigger$3 = TabsTrigger$1;
|
|
96634
|
+
var Content$2 = TabsContent$1;
|
|
96635
96635
|
|
|
96636
|
-
const Tabs = Root2$
|
|
96636
|
+
const Tabs = Root2$6;
|
|
96637
96637
|
const TabsList = React.forwardRef(({ className, ...props }, ref) => (jsx(List, { ref: ref, className: cn("bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1", className), ...props })));
|
|
96638
96638
|
TabsList.displayName = List.displayName;
|
|
96639
|
-
const TabsTrigger = React.forwardRef(({ className, ...props }, ref) => (jsx(Trigger$
|
|
96640
|
-
TabsTrigger.displayName = Trigger$
|
|
96641
|
-
const TabsContent = React.forwardRef(({ className, ...props }, ref) => (jsx(Content$
|
|
96642
|
-
TabsContent.displayName = Content$
|
|
96639
|
+
const TabsTrigger = React.forwardRef(({ className, ...props }, ref) => (jsx(Trigger$3, { ref: ref, className: cn("ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow", className), ...props })));
|
|
96640
|
+
TabsTrigger.displayName = Trigger$3.displayName;
|
|
96641
|
+
const TabsContent = React.forwardRef(({ className, ...props }, ref) => (jsx(Content$2, { ref: ref, className: cn("ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none", className), ...props })));
|
|
96642
|
+
TabsContent.displayName = Content$2.displayName;
|
|
96643
96643
|
|
|
96644
96644
|
/**
|
|
96645
96645
|
* Default locale for the application
|
|
@@ -101872,6 +101872,32 @@ var ltiTabLabels$3 = {
|
|
|
101872
101872
|
toolError: "Something went wrong with the LTI tool"
|
|
101873
101873
|
}
|
|
101874
101874
|
};
|
|
101875
|
+
var platformSidebar$3 = {
|
|
101876
|
+
collapseSidebar: "Collapse sidebar",
|
|
101877
|
+
expandSidebar: "Expand sidebar",
|
|
101878
|
+
mainNavigation: "Main navigation",
|
|
101879
|
+
notifications: "Notifications",
|
|
101880
|
+
invites: "Invites",
|
|
101881
|
+
management: "Management",
|
|
101882
|
+
integrations: "Integrations",
|
|
101883
|
+
monetization: "Monetization",
|
|
101884
|
+
advanced: "Advanced",
|
|
101885
|
+
support: "Support",
|
|
101886
|
+
accountTabOrganization: "Organization",
|
|
101887
|
+
accountTabBilling: "Billing",
|
|
101888
|
+
accountDescOrganization: "Manage your organization settings.",
|
|
101889
|
+
accountDescManagement: "Manage users and their permissions in the system.",
|
|
101890
|
+
accountDescIntegrations: "Manage your integrations with other services.",
|
|
101891
|
+
accountDescMonetization: "Configure paywalls, pricing, and revenue.",
|
|
101892
|
+
accountDescAdvanced: "Configure advanced organization settings.",
|
|
101893
|
+
accountDescBilling: "Manage your billing and subscription."
|
|
101894
|
+
};
|
|
101895
|
+
var platformNavbar$3 = {
|
|
101896
|
+
search: "Search",
|
|
101897
|
+
searchPlaceholder: "Search",
|
|
101898
|
+
logIn: "Log in",
|
|
101899
|
+
signUpForFree: "Sign up for free"
|
|
101900
|
+
};
|
|
101875
101901
|
var en = {
|
|
101876
101902
|
accessTabAddAccess: accessTabAddAccess$3,
|
|
101877
101903
|
accessTabLabels: accessTabLabels$3,
|
|
@@ -102106,7 +102132,9 @@ var en = {
|
|
|
102106
102132
|
workflowsCreateWorkflowModal: workflowsCreateWorkflowModal$3,
|
|
102107
102133
|
workflowsDeleteWorkflowModal: workflowsDeleteWorkflowModal$3,
|
|
102108
102134
|
workflowsToolDialogs: workflowsToolDialogs$3,
|
|
102109
|
-
ltiTabLabels: ltiTabLabels$3
|
|
102135
|
+
ltiTabLabels: ltiTabLabels$3,
|
|
102136
|
+
platformSidebar: platformSidebar$3,
|
|
102137
|
+
platformNavbar: platformNavbar$3
|
|
102110
102138
|
};
|
|
102111
102139
|
|
|
102112
102140
|
var accessTabAddAccess$2 = {
|
|
@@ -107154,6 +107182,32 @@ var ltiTabLabels$2 = {
|
|
|
107154
107182
|
toolError: "Un problème est survenu avec l'outil LTI"
|
|
107155
107183
|
}
|
|
107156
107184
|
};
|
|
107185
|
+
var platformSidebar$2 = {
|
|
107186
|
+
collapseSidebar: "Réduire la barre latérale",
|
|
107187
|
+
expandSidebar: "Développer la barre latérale",
|
|
107188
|
+
mainNavigation: "Navigation principale",
|
|
107189
|
+
notifications: "Notifications",
|
|
107190
|
+
invites: "Invitations",
|
|
107191
|
+
management: "Gestion",
|
|
107192
|
+
integrations: "Intégrations",
|
|
107193
|
+
monetization: "Monétisation",
|
|
107194
|
+
advanced: "Avancé",
|
|
107195
|
+
support: "Support",
|
|
107196
|
+
accountTabOrganization: "Organisation",
|
|
107197
|
+
accountTabBilling: "Facturation",
|
|
107198
|
+
accountDescOrganization: "Gérez les paramètres de votre organisation.",
|
|
107199
|
+
accountDescManagement: "Gérez les utilisateurs et leurs permissions dans le système.",
|
|
107200
|
+
accountDescIntegrations: "Gérez vos intégrations avec d'autres services.",
|
|
107201
|
+
accountDescMonetization: "Configurez les paywalls, la tarification et les revenus.",
|
|
107202
|
+
accountDescAdvanced: "Configurez les paramètres avancés de l'organisation.",
|
|
107203
|
+
accountDescBilling: "Gérez votre facturation et votre abonnement."
|
|
107204
|
+
};
|
|
107205
|
+
var platformNavbar$2 = {
|
|
107206
|
+
search: "Rechercher",
|
|
107207
|
+
searchPlaceholder: "Rechercher",
|
|
107208
|
+
logIn: "Se connecter",
|
|
107209
|
+
signUpForFree: "S'inscrire gratuitement"
|
|
107210
|
+
};
|
|
107157
107211
|
var fr = {
|
|
107158
107212
|
accessTabAddAccess: accessTabAddAccess$2,
|
|
107159
107213
|
accessTabLabels: accessTabLabels$2,
|
|
@@ -107388,7 +107442,9 @@ var fr = {
|
|
|
107388
107442
|
workflowsCreateWorkflowModal: workflowsCreateWorkflowModal$2,
|
|
107389
107443
|
workflowsDeleteWorkflowModal: workflowsDeleteWorkflowModal$2,
|
|
107390
107444
|
workflowsToolDialogs: workflowsToolDialogs$2,
|
|
107391
|
-
ltiTabLabels: ltiTabLabels$2
|
|
107445
|
+
ltiTabLabels: ltiTabLabels$2,
|
|
107446
|
+
platformSidebar: platformSidebar$2,
|
|
107447
|
+
platformNavbar: platformNavbar$2
|
|
107392
107448
|
};
|
|
107393
107449
|
|
|
107394
107450
|
var accessTabAddAccess$1 = {
|
|
@@ -112436,6 +112492,32 @@ var ltiTabLabels$1 = {
|
|
|
112436
112492
|
toolError: "Algo salió mal con la herramienta LTI"
|
|
112437
112493
|
}
|
|
112438
112494
|
};
|
|
112495
|
+
var platformSidebar$1 = {
|
|
112496
|
+
collapseSidebar: "Contraer barra lateral",
|
|
112497
|
+
expandSidebar: "Expandir barra lateral",
|
|
112498
|
+
mainNavigation: "Navegación principal",
|
|
112499
|
+
notifications: "Notificaciones",
|
|
112500
|
+
invites: "Invitaciones",
|
|
112501
|
+
management: "Gestión",
|
|
112502
|
+
integrations: "Integraciones",
|
|
112503
|
+
monetization: "Monetización",
|
|
112504
|
+
advanced: "Avanzado",
|
|
112505
|
+
support: "Soporte",
|
|
112506
|
+
accountTabOrganization: "Organización",
|
|
112507
|
+
accountTabBilling: "Facturación",
|
|
112508
|
+
accountDescOrganization: "Gestiona los ajustes de tu organización.",
|
|
112509
|
+
accountDescManagement: "Gestiona los usuarios y sus permisos en el sistema.",
|
|
112510
|
+
accountDescIntegrations: "Gestiona tus integraciones con otros servicios.",
|
|
112511
|
+
accountDescMonetization: "Configura muros de pago, precios e ingresos.",
|
|
112512
|
+
accountDescAdvanced: "Configura los ajustes avanzados de la organización.",
|
|
112513
|
+
accountDescBilling: "Gestiona tu facturación y suscripción."
|
|
112514
|
+
};
|
|
112515
|
+
var platformNavbar$1 = {
|
|
112516
|
+
search: "Buscar",
|
|
112517
|
+
searchPlaceholder: "Buscar",
|
|
112518
|
+
logIn: "Iniciar sesión",
|
|
112519
|
+
signUpForFree: "Registrarse gratis"
|
|
112520
|
+
};
|
|
112439
112521
|
var es = {
|
|
112440
112522
|
accessTabAddAccess: accessTabAddAccess$1,
|
|
112441
112523
|
accessTabLabels: accessTabLabels$1,
|
|
@@ -112670,7 +112752,9 @@ var es = {
|
|
|
112670
112752
|
workflowsCreateWorkflowModal: workflowsCreateWorkflowModal$1,
|
|
112671
112753
|
workflowsDeleteWorkflowModal: workflowsDeleteWorkflowModal$1,
|
|
112672
112754
|
workflowsToolDialogs: workflowsToolDialogs$1,
|
|
112673
|
-
ltiTabLabels: ltiTabLabels$1
|
|
112755
|
+
ltiTabLabels: ltiTabLabels$1,
|
|
112756
|
+
platformSidebar: platformSidebar$1,
|
|
112757
|
+
platformNavbar: platformNavbar$1
|
|
112674
112758
|
};
|
|
112675
112759
|
|
|
112676
112760
|
var accessTabAddAccess = {
|
|
@@ -117718,6 +117802,32 @@ var ltiTabLabels = {
|
|
|
117718
117802
|
toolError: "LTI 工具出现问题"
|
|
117719
117803
|
}
|
|
117720
117804
|
};
|
|
117805
|
+
var platformSidebar = {
|
|
117806
|
+
collapseSidebar: "收起侧边栏",
|
|
117807
|
+
expandSidebar: "展开侧边栏",
|
|
117808
|
+
mainNavigation: "主导航",
|
|
117809
|
+
notifications: "通知",
|
|
117810
|
+
invites: "邀请",
|
|
117811
|
+
management: "管理",
|
|
117812
|
+
integrations: "集成",
|
|
117813
|
+
monetization: "变现",
|
|
117814
|
+
advanced: "高级",
|
|
117815
|
+
support: "支持",
|
|
117816
|
+
accountTabOrganization: "组织",
|
|
117817
|
+
accountTabBilling: "账单",
|
|
117818
|
+
accountDescOrganization: "管理您的组织设置。",
|
|
117819
|
+
accountDescManagement: "管理系统中的用户及其权限。",
|
|
117820
|
+
accountDescIntegrations: "管理与其他服务的集成。",
|
|
117821
|
+
accountDescMonetization: "配置付费墙、定价和收入。",
|
|
117822
|
+
accountDescAdvanced: "配置组织的高级设置。",
|
|
117823
|
+
accountDescBilling: "管理您的账单和订阅。"
|
|
117824
|
+
};
|
|
117825
|
+
var platformNavbar = {
|
|
117826
|
+
search: "搜索",
|
|
117827
|
+
searchPlaceholder: "搜索",
|
|
117828
|
+
logIn: "登录",
|
|
117829
|
+
signUpForFree: "免费注册"
|
|
117830
|
+
};
|
|
117721
117831
|
var zh = {
|
|
117722
117832
|
accessTabAddAccess: accessTabAddAccess,
|
|
117723
117833
|
accessTabLabels: accessTabLabels,
|
|
@@ -117952,7 +118062,9 @@ var zh = {
|
|
|
117952
118062
|
workflowsCreateWorkflowModal: workflowsCreateWorkflowModal,
|
|
117953
118063
|
workflowsDeleteWorkflowModal: workflowsDeleteWorkflowModal,
|
|
117954
118064
|
workflowsToolDialogs: workflowsToolDialogs,
|
|
117955
|
-
ltiTabLabels: ltiTabLabels
|
|
118065
|
+
ltiTabLabels: ltiTabLabels,
|
|
118066
|
+
platformSidebar: platformSidebar,
|
|
118067
|
+
platformNavbar: platformNavbar
|
|
117956
118068
|
};
|
|
117957
118069
|
|
|
117958
118070
|
/**
|
|
@@ -122884,8 +122996,8 @@ function handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {
|
|
|
122884
122996
|
}
|
|
122885
122997
|
|
|
122886
122998
|
// src/arrow.tsx
|
|
122887
|
-
var NAME$
|
|
122888
|
-
var Arrow$
|
|
122999
|
+
var NAME$6 = "Arrow";
|
|
123000
|
+
var Arrow$3 = React.forwardRef((props, forwardedRef) => {
|
|
122889
123001
|
const { children, width = 10, height = 5, ...arrowProps } = props;
|
|
122890
123002
|
return /* @__PURE__ */ jsx(
|
|
122891
123003
|
Primitive$3.svg,
|
|
@@ -122900,23 +123012,23 @@ var Arrow$1 = React.forwardRef((props, forwardedRef) => {
|
|
|
122900
123012
|
}
|
|
122901
123013
|
);
|
|
122902
123014
|
});
|
|
122903
|
-
Arrow$
|
|
122904
|
-
var Root$
|
|
123015
|
+
Arrow$3.displayName = NAME$6;
|
|
123016
|
+
var Root$b = Arrow$3;
|
|
122905
123017
|
|
|
122906
|
-
var POPPER_NAME = "Popper";
|
|
122907
|
-
var [createPopperContext, createPopperScope] = createContextScope$1(POPPER_NAME);
|
|
122908
|
-
var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
|
|
122909
|
-
var Popper = (props) => {
|
|
123018
|
+
var POPPER_NAME$1 = "Popper";
|
|
123019
|
+
var [createPopperContext$1, createPopperScope$1] = createContextScope$1(POPPER_NAME$1);
|
|
123020
|
+
var [PopperProvider$1, usePopperContext$1] = createPopperContext$1(POPPER_NAME$1);
|
|
123021
|
+
var Popper$1 = (props) => {
|
|
122910
123022
|
const { __scopePopper, children } = props;
|
|
122911
123023
|
const [anchor, setAnchor] = React.useState(null);
|
|
122912
|
-
return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
123024
|
+
return /* @__PURE__ */ jsx(PopperProvider$1, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
122913
123025
|
};
|
|
122914
|
-
Popper.displayName = POPPER_NAME;
|
|
122915
|
-
var ANCHOR_NAME$
|
|
122916
|
-
var PopperAnchor = React.forwardRef(
|
|
123026
|
+
Popper$1.displayName = POPPER_NAME$1;
|
|
123027
|
+
var ANCHOR_NAME$2 = "PopperAnchor";
|
|
123028
|
+
var PopperAnchor$1 = React.forwardRef(
|
|
122917
123029
|
(props, forwardedRef) => {
|
|
122918
123030
|
const { __scopePopper, virtualRef, ...anchorProps } = props;
|
|
122919
|
-
const context = usePopperContext(ANCHOR_NAME$
|
|
123031
|
+
const context = usePopperContext$1(ANCHOR_NAME$2, __scopePopper);
|
|
122920
123032
|
const ref = React.useRef(null);
|
|
122921
123033
|
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
122922
123034
|
React.useEffect(() => {
|
|
@@ -122925,10 +123037,10 @@ var PopperAnchor = React.forwardRef(
|
|
|
122925
123037
|
return virtualRef ? null : /* @__PURE__ */ jsx(Primitive$3.div, { ...anchorProps, ref: composedRefs });
|
|
122926
123038
|
}
|
|
122927
123039
|
);
|
|
122928
|
-
PopperAnchor.displayName = ANCHOR_NAME$
|
|
122929
|
-
var CONTENT_NAME$
|
|
122930
|
-
var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME$
|
|
122931
|
-
var PopperContent = React.forwardRef(
|
|
123040
|
+
PopperAnchor$1.displayName = ANCHOR_NAME$2;
|
|
123041
|
+
var CONTENT_NAME$6 = "PopperContent";
|
|
123042
|
+
var [PopperContentProvider$1, useContentContext$1] = createPopperContext$1(CONTENT_NAME$6);
|
|
123043
|
+
var PopperContent$1 = React.forwardRef(
|
|
122932
123044
|
(props, forwardedRef) => {
|
|
122933
123045
|
const {
|
|
122934
123046
|
__scopePopper,
|
|
@@ -122946,7 +123058,7 @@ var PopperContent = React.forwardRef(
|
|
|
122946
123058
|
onPlaced,
|
|
122947
123059
|
...contentProps
|
|
122948
123060
|
} = props;
|
|
122949
|
-
const context = usePopperContext(CONTENT_NAME$
|
|
123061
|
+
const context = usePopperContext$1(CONTENT_NAME$6, __scopePopper);
|
|
122950
123062
|
const [content, setContent] = React.useState(null);
|
|
122951
123063
|
const composedRefs = useComposedRefs$1(forwardedRef, (node) => setContent(node));
|
|
122952
123064
|
const [arrow, setArrow] = React.useState(null);
|
|
@@ -122959,7 +123071,7 @@ var PopperContent = React.forwardRef(
|
|
|
122959
123071
|
const hasExplicitBoundaries = boundary.length > 0;
|
|
122960
123072
|
const detectOverflowOptions = {
|
|
122961
123073
|
padding: collisionPadding,
|
|
122962
|
-
boundary: boundary.filter(isNotNull),
|
|
123074
|
+
boundary: boundary.filter(isNotNull$1),
|
|
122963
123075
|
// with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
|
|
122964
123076
|
altBoundary: hasExplicitBoundaries
|
|
122965
123077
|
};
|
|
@@ -122997,11 +123109,11 @@ var PopperContent = React.forwardRef(
|
|
|
122997
123109
|
}
|
|
122998
123110
|
}),
|
|
122999
123111
|
arrow && arrow$2({ element: arrow, padding: arrowPadding }),
|
|
123000
|
-
transformOrigin$
|
|
123112
|
+
transformOrigin$2({ arrowWidth, arrowHeight }),
|
|
123001
123113
|
hideWhenDetached && hide({ strategy: "referenceHidden", ...detectOverflowOptions })
|
|
123002
123114
|
]
|
|
123003
123115
|
});
|
|
123004
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
123116
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$1(placement);
|
|
123005
123117
|
const handlePlaced = useCallbackRef$2(onPlaced);
|
|
123006
123118
|
useLayoutEffect2$1(() => {
|
|
123007
123119
|
if (isPositioned) {
|
|
@@ -123040,7 +123152,7 @@ var PopperContent = React.forwardRef(
|
|
|
123040
123152
|
},
|
|
123041
123153
|
dir: props.dir,
|
|
123042
123154
|
children: /* @__PURE__ */ jsx(
|
|
123043
|
-
PopperContentProvider,
|
|
123155
|
+
PopperContentProvider$1,
|
|
123044
123156
|
{
|
|
123045
123157
|
scope: __scopePopper,
|
|
123046
123158
|
placedSide,
|
|
@@ -123069,18 +123181,18 @@ var PopperContent = React.forwardRef(
|
|
|
123069
123181
|
);
|
|
123070
123182
|
}
|
|
123071
123183
|
);
|
|
123072
|
-
PopperContent.displayName = CONTENT_NAME$
|
|
123073
|
-
var ARROW_NAME$
|
|
123074
|
-
var OPPOSITE_SIDE = {
|
|
123184
|
+
PopperContent$1.displayName = CONTENT_NAME$6;
|
|
123185
|
+
var ARROW_NAME$4 = "PopperArrow";
|
|
123186
|
+
var OPPOSITE_SIDE$1 = {
|
|
123075
123187
|
top: "bottom",
|
|
123076
123188
|
right: "left",
|
|
123077
123189
|
bottom: "top",
|
|
123078
123190
|
left: "right"
|
|
123079
123191
|
};
|
|
123080
|
-
var PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
123192
|
+
var PopperArrow$1 = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
123081
123193
|
const { __scopePopper, ...arrowProps } = props;
|
|
123082
|
-
const contentContext = useContentContext(ARROW_NAME$
|
|
123083
|
-
const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
|
|
123194
|
+
const contentContext = useContentContext$1(ARROW_NAME$4, __scopePopper);
|
|
123195
|
+
const baseSide = OPPOSITE_SIDE$1[contentContext.placedSide];
|
|
123084
123196
|
return (
|
|
123085
123197
|
// we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
|
|
123086
123198
|
// doesn't report size as we'd expect on SVG elements.
|
|
@@ -123109,7 +123221,7 @@ var PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
|
123109
123221
|
visibility: contentContext.shouldHideArrow ? "hidden" : void 0
|
|
123110
123222
|
},
|
|
123111
123223
|
children: /* @__PURE__ */ jsx(
|
|
123112
|
-
Root$
|
|
123224
|
+
Root$b,
|
|
123113
123225
|
{
|
|
123114
123226
|
...arrowProps,
|
|
123115
123227
|
ref: forwardedRef,
|
|
@@ -123124,11 +123236,11 @@ var PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
|
123124
123236
|
)
|
|
123125
123237
|
);
|
|
123126
123238
|
});
|
|
123127
|
-
PopperArrow.displayName = ARROW_NAME$
|
|
123128
|
-
function isNotNull(value) {
|
|
123239
|
+
PopperArrow$1.displayName = ARROW_NAME$4;
|
|
123240
|
+
function isNotNull$1(value) {
|
|
123129
123241
|
return value !== null;
|
|
123130
123242
|
}
|
|
123131
|
-
var transformOrigin$
|
|
123243
|
+
var transformOrigin$2 = (options) => ({
|
|
123132
123244
|
name: "transformOrigin",
|
|
123133
123245
|
options,
|
|
123134
123246
|
fn(data) {
|
|
@@ -123137,7 +123249,7 @@ var transformOrigin$1 = (options) => ({
|
|
|
123137
123249
|
const isArrowHidden = cannotCenterArrow;
|
|
123138
123250
|
const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
|
|
123139
123251
|
const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
|
|
123140
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
123252
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement$1(placement);
|
|
123141
123253
|
const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
|
|
123142
123254
|
const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
|
|
123143
123255
|
const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
|
|
@@ -123159,24 +123271,24 @@ var transformOrigin$1 = (options) => ({
|
|
|
123159
123271
|
return { data: { x, y } };
|
|
123160
123272
|
}
|
|
123161
123273
|
});
|
|
123162
|
-
function getSideAndAlignFromPlacement(placement) {
|
|
123274
|
+
function getSideAndAlignFromPlacement$1(placement) {
|
|
123163
123275
|
const [side, align = "center"] = placement.split("-");
|
|
123164
123276
|
return [side, align];
|
|
123165
123277
|
}
|
|
123166
|
-
var Root2$
|
|
123167
|
-
var Anchor$
|
|
123168
|
-
var Content = PopperContent;
|
|
123169
|
-
var Arrow = PopperArrow;
|
|
123278
|
+
var Root2$5 = Popper$1;
|
|
123279
|
+
var Anchor$2 = PopperAnchor$1;
|
|
123280
|
+
var Content$1 = PopperContent$1;
|
|
123281
|
+
var Arrow$2 = PopperArrow$1;
|
|
123170
123282
|
|
|
123171
|
-
var PORTAL_NAME$
|
|
123172
|
-
var Portal$
|
|
123283
|
+
var PORTAL_NAME$4 = "Portal";
|
|
123284
|
+
var Portal$3 = React.forwardRef((props, forwardedRef) => {
|
|
123173
123285
|
const { container: containerProp, ...portalProps } = props;
|
|
123174
123286
|
const [mounted, setMounted] = React.useState(false);
|
|
123175
123287
|
useLayoutEffect2$1(() => setMounted(true), []);
|
|
123176
123288
|
const container = containerProp || mounted && globalThis?.document?.body;
|
|
123177
123289
|
return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive$3.div, { ...portalProps, ref: forwardedRef }), container) : null;
|
|
123178
123290
|
});
|
|
123179
|
-
Portal$
|
|
123291
|
+
Portal$3.displayName = PORTAL_NAME$4;
|
|
123180
123292
|
|
|
123181
123293
|
function useStateMachine$2(initialState, machine) {
|
|
123182
123294
|
return React.useReducer((state, event) => {
|
|
@@ -123317,7 +123429,7 @@ var VISUALLY_HIDDEN_STYLES = Object.freeze({
|
|
|
123317
123429
|
whiteSpace: "nowrap",
|
|
123318
123430
|
wordWrap: "normal"
|
|
123319
123431
|
});
|
|
123320
|
-
var NAME$
|
|
123432
|
+
var NAME$5 = "VisuallyHidden";
|
|
123321
123433
|
var VisuallyHidden = React.forwardRef(
|
|
123322
123434
|
(props, forwardedRef) => {
|
|
123323
123435
|
return /* @__PURE__ */ jsx(
|
|
@@ -123330,13 +123442,13 @@ var VisuallyHidden = React.forwardRef(
|
|
|
123330
123442
|
);
|
|
123331
123443
|
}
|
|
123332
123444
|
);
|
|
123333
|
-
VisuallyHidden.displayName = NAME$
|
|
123334
|
-
var Root$
|
|
123445
|
+
VisuallyHidden.displayName = NAME$5;
|
|
123446
|
+
var Root$a = VisuallyHidden;
|
|
123335
123447
|
|
|
123336
123448
|
var [createTooltipContext] = createContextScope$1("Tooltip", [
|
|
123337
|
-
createPopperScope
|
|
123449
|
+
createPopperScope$1
|
|
123338
123450
|
]);
|
|
123339
|
-
var usePopperScope$
|
|
123451
|
+
var usePopperScope$2 = createPopperScope$1();
|
|
123340
123452
|
var PROVIDER_NAME = "TooltipProvider";
|
|
123341
123453
|
var DEFAULT_DELAY_DURATION = 700;
|
|
123342
123454
|
var TOOLTIP_OPEN = "tooltip.open";
|
|
@@ -123396,7 +123508,7 @@ var Tooltip$2 = (props) => {
|
|
|
123396
123508
|
delayDuration: delayDurationProp
|
|
123397
123509
|
} = props;
|
|
123398
123510
|
const providerContext = useTooltipProviderContext(TOOLTIP_NAME, props.__scopeTooltip);
|
|
123399
|
-
const popperScope = usePopperScope$
|
|
123511
|
+
const popperScope = usePopperScope$2(__scopeTooltip);
|
|
123400
123512
|
const [trigger, setTrigger] = React.useState(null);
|
|
123401
123513
|
const contentId = useId$1();
|
|
123402
123514
|
const openTimerRef = React.useRef(0);
|
|
@@ -123447,7 +123559,7 @@ var Tooltip$2 = (props) => {
|
|
|
123447
123559
|
}
|
|
123448
123560
|
};
|
|
123449
123561
|
}, []);
|
|
123450
|
-
return /* @__PURE__ */ jsx(Root2$
|
|
123562
|
+
return /* @__PURE__ */ jsx(Root2$5, { ...popperScope, children: /* @__PURE__ */ jsx(
|
|
123451
123563
|
TooltipContextProvider,
|
|
123452
123564
|
{
|
|
123453
123565
|
scope: __scopeTooltip,
|
|
@@ -123476,13 +123588,13 @@ var Tooltip$2 = (props) => {
|
|
|
123476
123588
|
) });
|
|
123477
123589
|
};
|
|
123478
123590
|
Tooltip$2.displayName = TOOLTIP_NAME;
|
|
123479
|
-
var TRIGGER_NAME$
|
|
123591
|
+
var TRIGGER_NAME$4 = "TooltipTrigger";
|
|
123480
123592
|
var TooltipTrigger$1 = React.forwardRef(
|
|
123481
123593
|
(props, forwardedRef) => {
|
|
123482
123594
|
const { __scopeTooltip, ...triggerProps } = props;
|
|
123483
|
-
const context = useTooltipContext(TRIGGER_NAME$
|
|
123484
|
-
const providerContext = useTooltipProviderContext(TRIGGER_NAME$
|
|
123485
|
-
const popperScope = usePopperScope$
|
|
123595
|
+
const context = useTooltipContext(TRIGGER_NAME$4, __scopeTooltip);
|
|
123596
|
+
const providerContext = useTooltipProviderContext(TRIGGER_NAME$4, __scopeTooltip);
|
|
123597
|
+
const popperScope = usePopperScope$2(__scopeTooltip);
|
|
123486
123598
|
const ref = React.useRef(null);
|
|
123487
123599
|
const composedRefs = useComposedRefs$1(forwardedRef, ref, context.onTriggerChange);
|
|
123488
123600
|
const isPointerDownRef = React.useRef(false);
|
|
@@ -123491,7 +123603,7 @@ var TooltipTrigger$1 = React.forwardRef(
|
|
|
123491
123603
|
React.useEffect(() => {
|
|
123492
123604
|
return () => document.removeEventListener("pointerup", handlePointerUp);
|
|
123493
123605
|
}, [handlePointerUp]);
|
|
123494
|
-
return /* @__PURE__ */ jsx(Anchor$
|
|
123606
|
+
return /* @__PURE__ */ jsx(Anchor$2, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(
|
|
123495
123607
|
Primitive$3.button,
|
|
123496
123608
|
{
|
|
123497
123609
|
"aria-describedby": context.open ? context.contentId : void 0,
|
|
@@ -123525,29 +123637,29 @@ var TooltipTrigger$1 = React.forwardRef(
|
|
|
123525
123637
|
) });
|
|
123526
123638
|
}
|
|
123527
123639
|
);
|
|
123528
|
-
TooltipTrigger$1.displayName = TRIGGER_NAME$
|
|
123529
|
-
var PORTAL_NAME$
|
|
123530
|
-
var [PortalProvider$
|
|
123640
|
+
TooltipTrigger$1.displayName = TRIGGER_NAME$4;
|
|
123641
|
+
var PORTAL_NAME$3 = "TooltipPortal";
|
|
123642
|
+
var [PortalProvider$2, usePortalContext$2] = createTooltipContext(PORTAL_NAME$3, {
|
|
123531
123643
|
forceMount: void 0
|
|
123532
123644
|
});
|
|
123533
123645
|
var TooltipPortal = (props) => {
|
|
123534
123646
|
const { __scopeTooltip, forceMount, children, container } = props;
|
|
123535
|
-
const context = useTooltipContext(PORTAL_NAME$
|
|
123536
|
-
return /* @__PURE__ */ jsx(PortalProvider$
|
|
123647
|
+
const context = useTooltipContext(PORTAL_NAME$3, __scopeTooltip);
|
|
123648
|
+
return /* @__PURE__ */ jsx(PortalProvider$2, { scope: __scopeTooltip, forceMount, children: /* @__PURE__ */ jsx(Presence$1, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$3, { asChild: true, container, children }) }) });
|
|
123537
123649
|
};
|
|
123538
|
-
TooltipPortal.displayName = PORTAL_NAME$
|
|
123539
|
-
var CONTENT_NAME$
|
|
123650
|
+
TooltipPortal.displayName = PORTAL_NAME$3;
|
|
123651
|
+
var CONTENT_NAME$5 = "TooltipContent";
|
|
123540
123652
|
var TooltipContent$1 = React.forwardRef(
|
|
123541
123653
|
(props, forwardedRef) => {
|
|
123542
|
-
const portalContext = usePortalContext$
|
|
123654
|
+
const portalContext = usePortalContext$2(CONTENT_NAME$5, props.__scopeTooltip);
|
|
123543
123655
|
const { forceMount = portalContext.forceMount, side = "top", ...contentProps } = props;
|
|
123544
|
-
const context = useTooltipContext(CONTENT_NAME$
|
|
123656
|
+
const context = useTooltipContext(CONTENT_NAME$5, props.__scopeTooltip);
|
|
123545
123657
|
return /* @__PURE__ */ jsx(Presence$1, { present: forceMount || context.open, children: context.disableHoverableContent ? /* @__PURE__ */ jsx(TooltipContentImpl, { side, ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(TooltipContentHoverable, { side, ...contentProps, ref: forwardedRef }) });
|
|
123546
123658
|
}
|
|
123547
123659
|
);
|
|
123548
123660
|
var TooltipContentHoverable = React.forwardRef((props, forwardedRef) => {
|
|
123549
|
-
const context = useTooltipContext(CONTENT_NAME$
|
|
123550
|
-
const providerContext = useTooltipProviderContext(CONTENT_NAME$
|
|
123661
|
+
const context = useTooltipContext(CONTENT_NAME$5, props.__scopeTooltip);
|
|
123662
|
+
const providerContext = useTooltipProviderContext(CONTENT_NAME$5, props.__scopeTooltip);
|
|
123551
123663
|
const ref = React.useRef(null);
|
|
123552
123664
|
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
123553
123665
|
const [pointerGraceArea, setPointerGraceArea] = React.useState(null);
|
|
@@ -123618,8 +123730,8 @@ var TooltipContentImpl = React.forwardRef(
|
|
|
123618
123730
|
onPointerDownOutside,
|
|
123619
123731
|
...contentProps
|
|
123620
123732
|
} = props;
|
|
123621
|
-
const context = useTooltipContext(CONTENT_NAME$
|
|
123622
|
-
const popperScope = usePopperScope$
|
|
123733
|
+
const context = useTooltipContext(CONTENT_NAME$5, __scopeTooltip);
|
|
123734
|
+
const popperScope = usePopperScope$2(__scopeTooltip);
|
|
123623
123735
|
const { onClose } = context;
|
|
123624
123736
|
React.useEffect(() => {
|
|
123625
123737
|
document.addEventListener(TOOLTIP_OPEN, onClose);
|
|
@@ -123645,7 +123757,7 @@ var TooltipContentImpl = React.forwardRef(
|
|
|
123645
123757
|
onFocusOutside: (event) => event.preventDefault(),
|
|
123646
123758
|
onDismiss: onClose,
|
|
123647
123759
|
children: /* @__PURE__ */ jsxs(
|
|
123648
|
-
Content,
|
|
123760
|
+
Content$1,
|
|
123649
123761
|
{
|
|
123650
123762
|
"data-state": context.stateAttribute,
|
|
123651
123763
|
...popperScope,
|
|
@@ -123664,7 +123776,7 @@ var TooltipContentImpl = React.forwardRef(
|
|
|
123664
123776
|
},
|
|
123665
123777
|
children: [
|
|
123666
123778
|
/* @__PURE__ */ jsx(Slottable$2, { children }),
|
|
123667
|
-
/* @__PURE__ */ jsx(VisuallyHiddenContentContextProvider, { scope: __scopeTooltip, isInside: true, children: /* @__PURE__ */ jsx(Root$
|
|
123779
|
+
/* @__PURE__ */ jsx(VisuallyHiddenContentContextProvider, { scope: __scopeTooltip, isInside: true, children: /* @__PURE__ */ jsx(Root$a, { id: context.contentId, role: "tooltip", children: ariaLabel || children }) })
|
|
123668
123780
|
]
|
|
123669
123781
|
}
|
|
123670
123782
|
)
|
|
@@ -123672,20 +123784,20 @@ var TooltipContentImpl = React.forwardRef(
|
|
|
123672
123784
|
);
|
|
123673
123785
|
}
|
|
123674
123786
|
);
|
|
123675
|
-
TooltipContent$1.displayName = CONTENT_NAME$
|
|
123676
|
-
var ARROW_NAME$
|
|
123787
|
+
TooltipContent$1.displayName = CONTENT_NAME$5;
|
|
123788
|
+
var ARROW_NAME$3 = "TooltipArrow";
|
|
123677
123789
|
var TooltipArrow = React.forwardRef(
|
|
123678
123790
|
(props, forwardedRef) => {
|
|
123679
123791
|
const { __scopeTooltip, ...arrowProps } = props;
|
|
123680
|
-
const popperScope = usePopperScope$
|
|
123792
|
+
const popperScope = usePopperScope$2(__scopeTooltip);
|
|
123681
123793
|
const visuallyHiddenContentContext = useVisuallyHiddenContentContext(
|
|
123682
|
-
ARROW_NAME$
|
|
123794
|
+
ARROW_NAME$3,
|
|
123683
123795
|
__scopeTooltip
|
|
123684
123796
|
);
|
|
123685
|
-
return visuallyHiddenContentContext.isInside ? null : /* @__PURE__ */ jsx(Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });
|
|
123797
|
+
return visuallyHiddenContentContext.isInside ? null : /* @__PURE__ */ jsx(Arrow$2, { ...popperScope, ...arrowProps, ref: forwardedRef });
|
|
123686
123798
|
}
|
|
123687
123799
|
);
|
|
123688
|
-
TooltipArrow.displayName = ARROW_NAME$
|
|
123800
|
+
TooltipArrow.displayName = ARROW_NAME$3;
|
|
123689
123801
|
function getExitSideFromRect(point, rect) {
|
|
123690
123802
|
const top = Math.abs(rect.top - point.y);
|
|
123691
123803
|
const bottom = Math.abs(rect.bottom - point.y);
|
|
@@ -123803,9 +123915,9 @@ function getHullPresorted(points) {
|
|
|
123803
123915
|
}
|
|
123804
123916
|
var Provider = TooltipProvider$1;
|
|
123805
123917
|
var Root3 = Tooltip$2;
|
|
123806
|
-
var Trigger$
|
|
123807
|
-
var Portal$
|
|
123808
|
-
var Content2$
|
|
123918
|
+
var Trigger$2 = TooltipTrigger$1;
|
|
123919
|
+
var Portal$2 = TooltipPortal;
|
|
123920
|
+
var Content2$3 = TooltipContent$1;
|
|
123809
123921
|
var Arrow2 = TooltipArrow;
|
|
123810
123922
|
|
|
123811
123923
|
function TooltipProvider({ delayDuration = 0, ...props }) {
|
|
@@ -123815,10 +123927,10 @@ function Tooltip$1({ ...props }) {
|
|
|
123815
123927
|
return (jsx(TooltipProvider, { children: jsx(Root3, { "data-slot": "tooltip", ...props }) }));
|
|
123816
123928
|
}
|
|
123817
123929
|
function TooltipTrigger({ ...props }) {
|
|
123818
|
-
return jsx(Trigger$
|
|
123930
|
+
return jsx(Trigger$2, { "data-slot": "tooltip-trigger", ...props });
|
|
123819
123931
|
}
|
|
123820
123932
|
function TooltipContent({ className, sideOffset = 0, children, ...props }) {
|
|
123821
|
-
return (jsx(Portal$
|
|
123933
|
+
return (jsx(Portal$2, { children: jsxs(Content2$3, { "data-slot": "tooltip-content", sideOffset: sideOffset, className: cn("bg-primary text-primary-foreground 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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance", className), ...props, children: [children, jsx(Arrow2, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })] }) }));
|
|
123822
123934
|
}
|
|
123823
123935
|
|
|
123824
123936
|
// packages/react/context/src/createContext.tsx
|
|
@@ -124108,11 +124220,11 @@ function getInvalidValueError(propValue, componentName) {
|
|
|
124108
124220
|
|
|
124109
124221
|
Defaulting to \`null\`.`;
|
|
124110
124222
|
}
|
|
124111
|
-
var Root$
|
|
124223
|
+
var Root$9 = Progress$1;
|
|
124112
124224
|
var Indicator$2 = ProgressIndicator;
|
|
124113
124225
|
|
|
124114
|
-
const Progress = React.forwardRef(({ className, value, ...props }, ref) => (jsx(Root$
|
|
124115
|
-
Progress.displayName = Root$
|
|
124226
|
+
const Progress = React.forwardRef(({ className, value, ...props }, ref) => (jsx(Root$9, { ref: ref, className: cn('bg-secondary relative h-4 w-full overflow-hidden rounded-full', className), ...props, children: jsx(Indicator$2, { className: "bg-primary h-full w-full flex-1 transition-all", style: { transform: `translateX(-${100 - (value || 0)}%)` } }) })));
|
|
124227
|
+
Progress.displayName = Root$9.displayName;
|
|
124116
124228
|
|
|
124117
124229
|
var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
|
|
124118
124230
|
// @__NO_SIDE_EFFECTS__
|
|
@@ -124136,7 +124248,7 @@ var AlertDialog$1 = (props) => {
|
|
|
124136
124248
|
return /* @__PURE__ */ jsx(DialogPrimitive.Root, { ...dialogScope, ...alertDialogProps, modal: true });
|
|
124137
124249
|
};
|
|
124138
124250
|
AlertDialog$1.displayName = ROOT_NAME;
|
|
124139
|
-
var TRIGGER_NAME$
|
|
124251
|
+
var TRIGGER_NAME$3 = "AlertDialogTrigger";
|
|
124140
124252
|
var AlertDialogTrigger = React.forwardRef(
|
|
124141
124253
|
(props, forwardedRef) => {
|
|
124142
124254
|
const { __scopeAlertDialog, ...triggerProps } = props;
|
|
@@ -124144,14 +124256,14 @@ var AlertDialogTrigger = React.forwardRef(
|
|
|
124144
124256
|
return /* @__PURE__ */ jsx(DialogPrimitive.Trigger, { ...dialogScope, ...triggerProps, ref: forwardedRef });
|
|
124145
124257
|
}
|
|
124146
124258
|
);
|
|
124147
|
-
AlertDialogTrigger.displayName = TRIGGER_NAME$
|
|
124148
|
-
var PORTAL_NAME$
|
|
124259
|
+
AlertDialogTrigger.displayName = TRIGGER_NAME$3;
|
|
124260
|
+
var PORTAL_NAME$2 = "AlertDialogPortal";
|
|
124149
124261
|
var AlertDialogPortal$1 = (props) => {
|
|
124150
124262
|
const { __scopeAlertDialog, ...portalProps } = props;
|
|
124151
124263
|
const dialogScope = useDialogScope(__scopeAlertDialog);
|
|
124152
124264
|
return /* @__PURE__ */ jsx(DialogPrimitive.Portal, { ...dialogScope, ...portalProps });
|
|
124153
124265
|
};
|
|
124154
|
-
AlertDialogPortal$1.displayName = PORTAL_NAME$
|
|
124266
|
+
AlertDialogPortal$1.displayName = PORTAL_NAME$2;
|
|
124155
124267
|
var OVERLAY_NAME = "AlertDialogOverlay";
|
|
124156
124268
|
var AlertDialogOverlay$1 = React.forwardRef(
|
|
124157
124269
|
(props, forwardedRef) => {
|
|
@@ -124161,8 +124273,8 @@ var AlertDialogOverlay$1 = React.forwardRef(
|
|
|
124161
124273
|
}
|
|
124162
124274
|
);
|
|
124163
124275
|
AlertDialogOverlay$1.displayName = OVERLAY_NAME;
|
|
124164
|
-
var CONTENT_NAME$
|
|
124165
|
-
var [AlertDialogContentProvider, useAlertDialogContentContext] = createAlertDialogContext(CONTENT_NAME$
|
|
124276
|
+
var CONTENT_NAME$4 = "AlertDialogContent";
|
|
124277
|
+
var [AlertDialogContentProvider, useAlertDialogContentContext] = createAlertDialogContext(CONTENT_NAME$4);
|
|
124166
124278
|
var Slottable = createSlottable("AlertDialogContent");
|
|
124167
124279
|
var AlertDialogContent$1 = React.forwardRef(
|
|
124168
124280
|
(props, forwardedRef) => {
|
|
@@ -124174,7 +124286,7 @@ var AlertDialogContent$1 = React.forwardRef(
|
|
|
124174
124286
|
return /* @__PURE__ */ jsx(
|
|
124175
124287
|
DialogPrimitive.WarningProvider,
|
|
124176
124288
|
{
|
|
124177
|
-
contentName: CONTENT_NAME$
|
|
124289
|
+
contentName: CONTENT_NAME$4,
|
|
124178
124290
|
titleName: TITLE_NAME,
|
|
124179
124291
|
docsSlug: "alert-dialog",
|
|
124180
124292
|
children: /* @__PURE__ */ jsx(AlertDialogContentProvider, { scope: __scopeAlertDialog, cancelRef, children: /* @__PURE__ */ jsxs(
|
|
@@ -124200,7 +124312,7 @@ var AlertDialogContent$1 = React.forwardRef(
|
|
|
124200
124312
|
);
|
|
124201
124313
|
}
|
|
124202
124314
|
);
|
|
124203
|
-
AlertDialogContent$1.displayName = CONTENT_NAME$
|
|
124315
|
+
AlertDialogContent$1.displayName = CONTENT_NAME$4;
|
|
124204
124316
|
var TITLE_NAME = "AlertDialogTitle";
|
|
124205
124317
|
var AlertDialogTitle$1 = React.forwardRef(
|
|
124206
124318
|
(props, forwardedRef) => {
|
|
@@ -124238,11 +124350,11 @@ var AlertDialogCancel$1 = React.forwardRef(
|
|
|
124238
124350
|
);
|
|
124239
124351
|
AlertDialogCancel$1.displayName = CANCEL_NAME;
|
|
124240
124352
|
var DescriptionWarning = ({ contentRef }) => {
|
|
124241
|
-
const MESSAGE = `\`${CONTENT_NAME$
|
|
124353
|
+
const MESSAGE = `\`${CONTENT_NAME$4}\` requires a description for the component to be accessible for screen reader users.
|
|
124242
124354
|
|
|
124243
|
-
You can add a description to the \`${CONTENT_NAME$
|
|
124355
|
+
You can add a description to the \`${CONTENT_NAME$4}\` by passing a \`${DESCRIPTION_NAME}\` component as a child, which also benefits sighted users by adding visible context to the dialog.
|
|
124244
124356
|
|
|
124245
|
-
Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${CONTENT_NAME$
|
|
124357
|
+
Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${CONTENT_NAME$4}\`. If the description is confusing or duplicative for sighted users, you can use the \`@radix-ui/react-visually-hidden\` primitive as a wrapper around your description component.
|
|
124246
124358
|
|
|
124247
124359
|
For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;
|
|
124248
124360
|
React.useEffect(() => {
|
|
@@ -124253,21 +124365,21 @@ For more information, see https://radix-ui.com/primitives/docs/components/alert-
|
|
|
124253
124365
|
}, [MESSAGE, contentRef]);
|
|
124254
124366
|
return null;
|
|
124255
124367
|
};
|
|
124256
|
-
var Root2$
|
|
124368
|
+
var Root2$4 = AlertDialog$1;
|
|
124257
124369
|
var Portal2 = AlertDialogPortal$1;
|
|
124258
124370
|
var Overlay2 = AlertDialogOverlay$1;
|
|
124259
|
-
var Content2$
|
|
124371
|
+
var Content2$2 = AlertDialogContent$1;
|
|
124260
124372
|
var Action = AlertDialogAction$1;
|
|
124261
124373
|
var Cancel = AlertDialogCancel$1;
|
|
124262
124374
|
var Title2 = AlertDialogTitle$1;
|
|
124263
124375
|
var Description2 = AlertDialogDescription$1;
|
|
124264
124376
|
|
|
124265
|
-
const AlertDialog = Root2$
|
|
124377
|
+
const AlertDialog = Root2$4;
|
|
124266
124378
|
const AlertDialogPortal = Portal2;
|
|
124267
124379
|
const AlertDialogOverlay = React.forwardRef(({ className, ...props }, ref) => (jsx(Overlay2, { className: cn('data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80', className), ...props, ref: ref })));
|
|
124268
124380
|
AlertDialogOverlay.displayName = Overlay2.displayName;
|
|
124269
|
-
const AlertDialogContent = React.forwardRef(({ className, ...props }, ref) => (jsxs(AlertDialogPortal, { children: [jsx(AlertDialogOverlay, {}), jsx(Content2$
|
|
124270
|
-
AlertDialogContent.displayName = Content2$
|
|
124381
|
+
const AlertDialogContent = React.forwardRef(({ className, ...props }, ref) => (jsxs(AlertDialogPortal, { children: [jsx(AlertDialogOverlay, {}), jsx(Content2$2, { ref: ref, className: cn('bg-background 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:rounded-lg', className), ...props })] })));
|
|
124382
|
+
AlertDialogContent.displayName = Content2$2.displayName;
|
|
124271
124383
|
const AlertDialogHeader = ({ className, ...props }) => (jsx("div", { className: cn('flex flex-col space-y-2 text-center sm:text-left', className), ...props }));
|
|
124272
124384
|
AlertDialogHeader.displayName = 'AlertDialogHeader';
|
|
124273
124385
|
const AlertDialogFooter = ({ className, ...props }) => (jsx("div", { className: cn('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2', className), ...props }));
|
|
@@ -125170,7 +125282,7 @@ var Primitive = NODES.reduce((primitive, node) => {
|
|
|
125170
125282
|
return { ...primitive, [node]: Node };
|
|
125171
125283
|
}, {});
|
|
125172
125284
|
|
|
125173
|
-
var NAME$
|
|
125285
|
+
var NAME$4 = "Label";
|
|
125174
125286
|
var Label$2 = React.forwardRef((props, forwardedRef) => {
|
|
125175
125287
|
return /* @__PURE__ */ jsx(
|
|
125176
125288
|
Primitive.label,
|
|
@@ -125186,12 +125298,12 @@ var Label$2 = React.forwardRef((props, forwardedRef) => {
|
|
|
125186
125298
|
}
|
|
125187
125299
|
);
|
|
125188
125300
|
});
|
|
125189
|
-
Label$2.displayName = NAME$
|
|
125190
|
-
var Root$
|
|
125301
|
+
Label$2.displayName = NAME$4;
|
|
125302
|
+
var Root$8 = Label$2;
|
|
125191
125303
|
|
|
125192
125304
|
const labelVariants = cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70");
|
|
125193
|
-
const Label$1 = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$
|
|
125194
|
-
Label$1.displayName = Root$
|
|
125305
|
+
const Label$1 = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$8, { ref: ref, className: cn(labelVariants(), className), ...props })));
|
|
125306
|
+
Label$1.displayName = Root$8.displayName;
|
|
125195
125307
|
|
|
125196
125308
|
var dayjs_min = {exports: {}};
|
|
125197
125309
|
|
|
@@ -173815,7 +173927,7 @@ var Checkbox$1 = React.forwardRef(
|
|
|
173815
173927
|
role: "checkbox",
|
|
173816
173928
|
"aria-checked": isIndeterminate(checked) ? "mixed" : checked,
|
|
173817
173929
|
"aria-required": required,
|
|
173818
|
-
"data-state": getState$
|
|
173930
|
+
"data-state": getState$3(checked),
|
|
173819
173931
|
"data-disabled": disabled ? "" : void 0,
|
|
173820
173932
|
disabled,
|
|
173821
173933
|
value,
|
|
@@ -173860,7 +173972,7 @@ var CheckboxIndicator = React.forwardRef(
|
|
|
173860
173972
|
return /* @__PURE__ */ jsx(Presence$1, { present: forceMount || isIndeterminate(context.state) || context.state === true, children: /* @__PURE__ */ jsx(
|
|
173861
173973
|
Primitive$3.span,
|
|
173862
173974
|
{
|
|
173863
|
-
"data-state": getState$
|
|
173975
|
+
"data-state": getState$3(context.state),
|
|
173864
173976
|
"data-disabled": context.disabled ? "" : void 0,
|
|
173865
173977
|
...indicatorProps,
|
|
173866
173978
|
ref: forwardedRef,
|
|
@@ -173926,14 +174038,14 @@ CheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;
|
|
|
173926
174038
|
function isIndeterminate(checked) {
|
|
173927
174039
|
return checked === "indeterminate";
|
|
173928
174040
|
}
|
|
173929
|
-
function getState$
|
|
174041
|
+
function getState$3(checked) {
|
|
173930
174042
|
return isIndeterminate(checked) ? "indeterminate" : checked ? "checked" : "unchecked";
|
|
173931
174043
|
}
|
|
173932
|
-
var Root$
|
|
174044
|
+
var Root$7 = Checkbox$1;
|
|
173933
174045
|
var Indicator$1 = CheckboxIndicator;
|
|
173934
174046
|
|
|
173935
|
-
const Checkbox = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$
|
|
173936
|
-
Checkbox.displayName = Root$
|
|
174047
|
+
const Checkbox = React.forwardRef(({ className, ...props }, ref) => (jsx(Root$7, { ref: ref, className: cn("peer border-primary focus-visible:ring-ring h-4 w-4 shrink-0 rounded-sm border shadow-sm focus-visible:ring-1 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-blue-500 data-[state=checked]:text-white", className), ...props, children: jsx(Indicator$1, { className: cn("flex items-center justify-center text-current"), children: jsx(Check, { className: "h-4 w-4" }) }) })));
|
|
174048
|
+
Checkbox.displayName = Root$7.displayName;
|
|
173937
174049
|
|
|
173938
174050
|
function CoursesTab({ tenant, currentPage, itemsPerPage, hasManageUsersPermission = false, }) {
|
|
173939
174051
|
var _a;
|
|
@@ -174851,9 +174963,9 @@ const AdvancedPagination = ({ currentPage, totalPages, onPageChange, totalCount,
|
|
|
174851
174963
|
|
|
174852
174964
|
var POPOVER_NAME = "Popover";
|
|
174853
174965
|
var [createPopoverContext] = createContextScope$1(POPOVER_NAME, [
|
|
174854
|
-
createPopperScope$
|
|
174966
|
+
createPopperScope$2
|
|
174855
174967
|
]);
|
|
174856
|
-
var usePopperScope = createPopperScope$
|
|
174968
|
+
var usePopperScope$1 = createPopperScope$2();
|
|
174857
174969
|
var [PopoverProvider, usePopoverContext] = createPopoverContext(POPOVER_NAME);
|
|
174858
174970
|
var Popover$1 = (props) => {
|
|
174859
174971
|
const {
|
|
@@ -174864,7 +174976,7 @@ var Popover$1 = (props) => {
|
|
|
174864
174976
|
onOpenChange,
|
|
174865
174977
|
modal = false
|
|
174866
174978
|
} = props;
|
|
174867
|
-
const popperScope = usePopperScope(__scopePopover);
|
|
174979
|
+
const popperScope = usePopperScope$1(__scopePopover);
|
|
174868
174980
|
const triggerRef = React.useRef(null);
|
|
174869
174981
|
const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
|
|
174870
174982
|
const [open = false, setOpen] = useControllableState$2({
|
|
@@ -174872,7 +174984,7 @@ var Popover$1 = (props) => {
|
|
|
174872
174984
|
defaultProp: defaultOpen,
|
|
174873
174985
|
onChange: onOpenChange
|
|
174874
174986
|
});
|
|
174875
|
-
return /* @__PURE__ */ jsx(Root2$
|
|
174987
|
+
return /* @__PURE__ */ jsx(Root2$a, { ...popperScope, children: /* @__PURE__ */ jsx(
|
|
174876
174988
|
PopoverProvider,
|
|
174877
174989
|
{
|
|
174878
174990
|
scope: __scopePopover,
|
|
@@ -174890,27 +175002,27 @@ var Popover$1 = (props) => {
|
|
|
174890
175002
|
) });
|
|
174891
175003
|
};
|
|
174892
175004
|
Popover$1.displayName = POPOVER_NAME;
|
|
174893
|
-
var ANCHOR_NAME = "PopoverAnchor";
|
|
175005
|
+
var ANCHOR_NAME$1 = "PopoverAnchor";
|
|
174894
175006
|
var PopoverAnchor$1 = React.forwardRef(
|
|
174895
175007
|
(props, forwardedRef) => {
|
|
174896
175008
|
const { __scopePopover, ...anchorProps } = props;
|
|
174897
|
-
const context = usePopoverContext(ANCHOR_NAME, __scopePopover);
|
|
174898
|
-
const popperScope = usePopperScope(__scopePopover);
|
|
175009
|
+
const context = usePopoverContext(ANCHOR_NAME$1, __scopePopover);
|
|
175010
|
+
const popperScope = usePopperScope$1(__scopePopover);
|
|
174899
175011
|
const { onCustomAnchorAdd, onCustomAnchorRemove } = context;
|
|
174900
175012
|
React.useEffect(() => {
|
|
174901
175013
|
onCustomAnchorAdd();
|
|
174902
175014
|
return () => onCustomAnchorRemove();
|
|
174903
175015
|
}, [onCustomAnchorAdd, onCustomAnchorRemove]);
|
|
174904
|
-
return /* @__PURE__ */ jsx(Anchor$
|
|
175016
|
+
return /* @__PURE__ */ jsx(Anchor$3, { ...popperScope, ...anchorProps, ref: forwardedRef });
|
|
174905
175017
|
}
|
|
174906
175018
|
);
|
|
174907
|
-
PopoverAnchor$1.displayName = ANCHOR_NAME;
|
|
174908
|
-
var TRIGGER_NAME = "PopoverTrigger";
|
|
175019
|
+
PopoverAnchor$1.displayName = ANCHOR_NAME$1;
|
|
175020
|
+
var TRIGGER_NAME$2 = "PopoverTrigger";
|
|
174909
175021
|
var PopoverTrigger$1 = React.forwardRef(
|
|
174910
175022
|
(props, forwardedRef) => {
|
|
174911
175023
|
const { __scopePopover, ...triggerProps } = props;
|
|
174912
|
-
const context = usePopoverContext(TRIGGER_NAME, __scopePopover);
|
|
174913
|
-
const popperScope = usePopperScope(__scopePopover);
|
|
175024
|
+
const context = usePopoverContext(TRIGGER_NAME$2, __scopePopover);
|
|
175025
|
+
const popperScope = usePopperScope$1(__scopePopover);
|
|
174914
175026
|
const composedTriggerRef = useComposedRefs$1(forwardedRef, context.triggerRef);
|
|
174915
175027
|
const trigger = /* @__PURE__ */ jsx(
|
|
174916
175028
|
Primitive$4.button,
|
|
@@ -174919,40 +175031,40 @@ var PopoverTrigger$1 = React.forwardRef(
|
|
|
174919
175031
|
"aria-haspopup": "dialog",
|
|
174920
175032
|
"aria-expanded": context.open,
|
|
174921
175033
|
"aria-controls": context.contentId,
|
|
174922
|
-
"data-state": getState$
|
|
175034
|
+
"data-state": getState$2(context.open),
|
|
174923
175035
|
...triggerProps,
|
|
174924
175036
|
ref: composedTriggerRef,
|
|
174925
175037
|
onClick: composeEventHandlers$2(props.onClick, context.onOpenToggle)
|
|
174926
175038
|
}
|
|
174927
175039
|
);
|
|
174928
|
-
return context.hasCustomAnchor ? trigger : /* @__PURE__ */ jsx(Anchor$
|
|
175040
|
+
return context.hasCustomAnchor ? trigger : /* @__PURE__ */ jsx(Anchor$3, { asChild: true, ...popperScope, children: trigger });
|
|
174929
175041
|
}
|
|
174930
175042
|
);
|
|
174931
|
-
PopoverTrigger$1.displayName = TRIGGER_NAME;
|
|
174932
|
-
var PORTAL_NAME = "PopoverPortal";
|
|
174933
|
-
var [PortalProvider, usePortalContext] = createPopoverContext(PORTAL_NAME, {
|
|
175043
|
+
PopoverTrigger$1.displayName = TRIGGER_NAME$2;
|
|
175044
|
+
var PORTAL_NAME$1 = "PopoverPortal";
|
|
175045
|
+
var [PortalProvider$1, usePortalContext$1] = createPopoverContext(PORTAL_NAME$1, {
|
|
174934
175046
|
forceMount: void 0
|
|
174935
175047
|
});
|
|
174936
175048
|
var PopoverPortal = (props) => {
|
|
174937
175049
|
const { __scopePopover, forceMount, children, container } = props;
|
|
174938
|
-
const context = usePopoverContext(PORTAL_NAME, __scopePopover);
|
|
174939
|
-
return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopePopover, forceMount, children: /* @__PURE__ */ jsx(Presence$3, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$
|
|
175050
|
+
const context = usePopoverContext(PORTAL_NAME$1, __scopePopover);
|
|
175051
|
+
return /* @__PURE__ */ jsx(PortalProvider$1, { scope: __scopePopover, forceMount, children: /* @__PURE__ */ jsx(Presence$3, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$7, { asChild: true, container, children }) }) });
|
|
174940
175052
|
};
|
|
174941
|
-
PopoverPortal.displayName = PORTAL_NAME;
|
|
174942
|
-
var CONTENT_NAME = "PopoverContent";
|
|
175053
|
+
PopoverPortal.displayName = PORTAL_NAME$1;
|
|
175054
|
+
var CONTENT_NAME$3 = "PopoverContent";
|
|
174943
175055
|
var PopoverContent$1 = React.forwardRef(
|
|
174944
175056
|
(props, forwardedRef) => {
|
|
174945
|
-
const portalContext = usePortalContext(CONTENT_NAME, props.__scopePopover);
|
|
175057
|
+
const portalContext = usePortalContext$1(CONTENT_NAME$3, props.__scopePopover);
|
|
174946
175058
|
const { forceMount = portalContext.forceMount, ...contentProps } = props;
|
|
174947
|
-
const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
|
|
175059
|
+
const context = usePopoverContext(CONTENT_NAME$3, props.__scopePopover);
|
|
174948
175060
|
return /* @__PURE__ */ jsx(Presence$3, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(PopoverContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(PopoverContentNonModal, { ...contentProps, ref: forwardedRef }) });
|
|
174949
175061
|
}
|
|
174950
175062
|
);
|
|
174951
|
-
PopoverContent$1.displayName = CONTENT_NAME;
|
|
175063
|
+
PopoverContent$1.displayName = CONTENT_NAME$3;
|
|
174952
175064
|
var Slot = createSlot$1("PopoverContent.RemoveScroll");
|
|
174953
175065
|
var PopoverContentModal = React.forwardRef(
|
|
174954
175066
|
(props, forwardedRef) => {
|
|
174955
|
-
const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
|
|
175067
|
+
const context = usePopoverContext(CONTENT_NAME$3, props.__scopePopover);
|
|
174956
175068
|
const contentRef = React.useRef(null);
|
|
174957
175069
|
const composedRefs = useComposedRefs$1(forwardedRef, contentRef);
|
|
174958
175070
|
const isRightClickOutsideRef = React.useRef(false);
|
|
@@ -174992,7 +175104,7 @@ var PopoverContentModal = React.forwardRef(
|
|
|
174992
175104
|
);
|
|
174993
175105
|
var PopoverContentNonModal = React.forwardRef(
|
|
174994
175106
|
(props, forwardedRef) => {
|
|
174995
|
-
const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
|
|
175107
|
+
const context = usePopoverContext(CONTENT_NAME$3, props.__scopePopover);
|
|
174996
175108
|
const hasInteractedOutsideRef = React.useRef(false);
|
|
174997
175109
|
const hasPointerDownOutsideRef = React.useRef(false);
|
|
174998
175110
|
return /* @__PURE__ */ jsx(
|
|
@@ -175044,8 +175156,8 @@ var PopoverContentImpl = React.forwardRef(
|
|
|
175044
175156
|
onInteractOutside,
|
|
175045
175157
|
...contentProps
|
|
175046
175158
|
} = props;
|
|
175047
|
-
const context = usePopoverContext(CONTENT_NAME, __scopePopover);
|
|
175048
|
-
const popperScope = usePopperScope(__scopePopover);
|
|
175159
|
+
const context = usePopoverContext(CONTENT_NAME$3, __scopePopover);
|
|
175160
|
+
const popperScope = usePopperScope$1(__scopePopover);
|
|
175049
175161
|
useFocusGuards();
|
|
175050
175162
|
return /* @__PURE__ */ jsx(
|
|
175051
175163
|
FocusScope,
|
|
@@ -175066,9 +175178,9 @@ var PopoverContentImpl = React.forwardRef(
|
|
|
175066
175178
|
onFocusOutside,
|
|
175067
175179
|
onDismiss: () => context.onOpenChange(false),
|
|
175068
175180
|
children: /* @__PURE__ */ jsx(
|
|
175069
|
-
Content$
|
|
175181
|
+
Content$3,
|
|
175070
175182
|
{
|
|
175071
|
-
"data-state": getState$
|
|
175183
|
+
"data-state": getState$2(context.open),
|
|
175072
175184
|
role: "dialog",
|
|
175073
175185
|
id: context.contentId,
|
|
175074
175186
|
...popperScope,
|
|
@@ -175110,38 +175222,38 @@ var PopoverClose = React.forwardRef(
|
|
|
175110
175222
|
}
|
|
175111
175223
|
);
|
|
175112
175224
|
PopoverClose.displayName = CLOSE_NAME;
|
|
175113
|
-
var ARROW_NAME = "PopoverArrow";
|
|
175225
|
+
var ARROW_NAME$2 = "PopoverArrow";
|
|
175114
175226
|
var PopoverArrow = React.forwardRef(
|
|
175115
175227
|
(props, forwardedRef) => {
|
|
175116
175228
|
const { __scopePopover, ...arrowProps } = props;
|
|
175117
|
-
const popperScope = usePopperScope(__scopePopover);
|
|
175118
|
-
return /* @__PURE__ */ jsx(Arrow$
|
|
175229
|
+
const popperScope = usePopperScope$1(__scopePopover);
|
|
175230
|
+
return /* @__PURE__ */ jsx(Arrow$4, { ...popperScope, ...arrowProps, ref: forwardedRef });
|
|
175119
175231
|
}
|
|
175120
175232
|
);
|
|
175121
|
-
PopoverArrow.displayName = ARROW_NAME;
|
|
175122
|
-
function getState$
|
|
175233
|
+
PopoverArrow.displayName = ARROW_NAME$2;
|
|
175234
|
+
function getState$2(open) {
|
|
175123
175235
|
return open ? "open" : "closed";
|
|
175124
175236
|
}
|
|
175125
|
-
var Root2$
|
|
175237
|
+
var Root2$3 = Popover$1;
|
|
175126
175238
|
var Anchor2 = PopoverAnchor$1;
|
|
175127
|
-
var Trigger = PopoverTrigger$1;
|
|
175128
|
-
var Portal = PopoverPortal;
|
|
175129
|
-
var Content2 = PopoverContent$1;
|
|
175239
|
+
var Trigger$1 = PopoverTrigger$1;
|
|
175240
|
+
var Portal$1 = PopoverPortal;
|
|
175241
|
+
var Content2$1 = PopoverContent$1;
|
|
175130
175242
|
|
|
175131
|
-
const Popover = Root2$
|
|
175132
|
-
const PopoverTrigger = Trigger;
|
|
175243
|
+
const Popover = Root2$3;
|
|
175244
|
+
const PopoverTrigger = Trigger$1;
|
|
175133
175245
|
const PopoverAnchor = Anchor2;
|
|
175134
175246
|
const PopoverContent = React.forwardRef(({ className, align = 'center', sideOffset = 4, portalled = true, container, ...props }, ref) => {
|
|
175135
175247
|
var _a;
|
|
175136
175248
|
const portalContainer = useFloatingPortalContainer();
|
|
175137
175249
|
const resolvedContainer = (_a = container !== null && container !== void 0 ? container : portalContainer) !== null && _a !== void 0 ? _a : undefined;
|
|
175138
|
-
const content = (jsx(Content2, { ref: ref, "data-iblai-dialog-interaction-layer": true, align: align, sideOffset: sideOffset, className: cn('bg-popover text-popover-foreground 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 z-50 w-72 rounded-md border p-4 shadow-md outline-none', className), ...props }));
|
|
175250
|
+
const content = (jsx(Content2$1, { ref: ref, "data-iblai-dialog-interaction-layer": true, align: align, sideOffset: sideOffset, className: cn('bg-popover text-popover-foreground 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 z-50 w-72 rounded-md border p-4 shadow-md outline-none', className), ...props }));
|
|
175139
175251
|
if (!portalled) {
|
|
175140
175252
|
return content;
|
|
175141
175253
|
}
|
|
175142
|
-
return jsx(Portal, { container: resolvedContainer, children: content });
|
|
175254
|
+
return jsx(Portal$1, { container: resolvedContainer, children: content });
|
|
175143
175255
|
});
|
|
175144
|
-
PopoverContent.displayName = Content2.displayName;
|
|
175256
|
+
PopoverContent.displayName = Content2$1.displayName;
|
|
175145
175257
|
|
|
175146
175258
|
function UsersTab({ tenant, onInviteClick, currentSpa, showGradebookTab = false, }) {
|
|
175147
175259
|
const t = useT();
|
|
@@ -178564,7 +178676,7 @@ function PreviousMonthButton(props) {
|
|
|
178564
178676
|
* @group Components
|
|
178565
178677
|
* @see https://daypicker.dev/guides/custom-components
|
|
178566
178678
|
*/
|
|
178567
|
-
function Root$
|
|
178679
|
+
function Root$6(props) {
|
|
178568
178680
|
const { rootRef, ...rest } = props;
|
|
178569
178681
|
return React__default.createElement("div", { ...rest, ref: rootRef });
|
|
178570
178682
|
}
|
|
@@ -178672,7 +178784,7 @@ var components$1 = /*#__PURE__*/Object.freeze({
|
|
|
178672
178784
|
NextMonthButton: NextMonthButton,
|
|
178673
178785
|
Option: Option,
|
|
178674
178786
|
PreviousMonthButton: PreviousMonthButton,
|
|
178675
|
-
Root: Root$
|
|
178787
|
+
Root: Root$6,
|
|
178676
178788
|
Select: Select,
|
|
178677
178789
|
Week: Week,
|
|
178678
178790
|
WeekNumber: WeekNumber,
|
|
@@ -210964,7 +211076,7 @@ function useUncontrolledState({
|
|
|
210964
211076
|
return uncontrolledState;
|
|
210965
211077
|
}
|
|
210966
211078
|
|
|
210967
|
-
var NAME$
|
|
211079
|
+
var NAME$3 = "Toggle";
|
|
210968
211080
|
var Toggle$1 = React.forwardRef((props, forwardedRef) => {
|
|
210969
211081
|
const { pressed: pressedProp, defaultPressed = false, onPressedChange, ...buttonProps } = props;
|
|
210970
211082
|
const [pressed = false, setPressed] = useControllableState({
|
|
@@ -210989,8 +211101,8 @@ var Toggle$1 = React.forwardRef((props, forwardedRef) => {
|
|
|
210989
211101
|
}
|
|
210990
211102
|
);
|
|
210991
211103
|
});
|
|
210992
|
-
Toggle$1.displayName = NAME$
|
|
210993
|
-
var Root$
|
|
211104
|
+
Toggle$1.displayName = NAME$3;
|
|
211105
|
+
var Root$5 = Toggle$1;
|
|
210994
211106
|
|
|
210995
211107
|
const toggleVariants = cva('inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground', {
|
|
210996
211108
|
variants: {
|
|
@@ -211009,11 +211121,11 @@ const toggleVariants = cva('inline-flex items-center justify-center rounded-md t
|
|
|
211009
211121
|
size: 'default',
|
|
211010
211122
|
},
|
|
211011
211123
|
});
|
|
211012
|
-
const Toggle = React.forwardRef(({ className, variant, size, ...props }, ref) => (jsx(Root$
|
|
211013
|
-
Toggle.displayName = Root$
|
|
211124
|
+
const Toggle = React.forwardRef(({ className, variant, size, ...props }, ref) => (jsx(Root$5, { ref: ref, className: cn(toggleVariants({ variant, size, className })), ...props })));
|
|
211125
|
+
Toggle.displayName = Root$5.displayName;
|
|
211014
211126
|
|
|
211015
211127
|
// src/separator.tsx
|
|
211016
|
-
var NAME$
|
|
211128
|
+
var NAME$2 = "Separator";
|
|
211017
211129
|
var DEFAULT_ORIENTATION = "horizontal";
|
|
211018
211130
|
var ORIENTATIONS = ["horizontal", "vertical"];
|
|
211019
211131
|
var Separator$1 = React.forwardRef((props, forwardedRef) => {
|
|
@@ -211031,14 +211143,14 @@ var Separator$1 = React.forwardRef((props, forwardedRef) => {
|
|
|
211031
211143
|
}
|
|
211032
211144
|
);
|
|
211033
211145
|
});
|
|
211034
|
-
Separator$1.displayName = NAME$
|
|
211146
|
+
Separator$1.displayName = NAME$2;
|
|
211035
211147
|
function isValidOrientation(orientation) {
|
|
211036
211148
|
return ORIENTATIONS.includes(orientation);
|
|
211037
211149
|
}
|
|
211038
|
-
var Root$
|
|
211150
|
+
var Root$4 = Separator$1;
|
|
211039
211151
|
|
|
211040
|
-
const Separator = React.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => (jsx(Root$
|
|
211041
|
-
Separator.displayName = Root$
|
|
211152
|
+
const Separator = React.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => (jsx(Root$4, { ref: ref, decorative: decorative, orientation: orientation, className: cn("shrink-0 bg-border", orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]", className), ...props })));
|
|
211153
|
+
Separator.displayName = Root$4.displayName;
|
|
211042
211154
|
|
|
211043
211155
|
// Custom Div extension to preserve div elements with inline styles
|
|
211044
211156
|
const Div = Node3.create({
|
|
@@ -211875,7 +211987,7 @@ function focusFirst(candidates, preventScroll = false) {
|
|
|
211875
211987
|
function wrapArray(array, startIndex) {
|
|
211876
211988
|
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
211877
211989
|
}
|
|
211878
|
-
var Root$
|
|
211990
|
+
var Root$3 = RovingFocusGroup;
|
|
211879
211991
|
var Item = RovingFocusGroupItem;
|
|
211880
211992
|
|
|
211881
211993
|
// packages/react/use-size/src/useSize.tsx
|
|
@@ -212078,7 +212190,7 @@ var Radio = React.forwardRef(
|
|
|
212078
212190
|
type: "button",
|
|
212079
212191
|
role: "radio",
|
|
212080
212192
|
"aria-checked": checked,
|
|
212081
|
-
"data-state": getState(checked),
|
|
212193
|
+
"data-state": getState$1(checked),
|
|
212082
212194
|
"data-disabled": disabled ? "" : void 0,
|
|
212083
212195
|
disabled,
|
|
212084
212196
|
value,
|
|
@@ -212119,7 +212231,7 @@ var RadioIndicator = React.forwardRef(
|
|
|
212119
212231
|
return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.checked, children: /* @__PURE__ */ jsx(
|
|
212120
212232
|
Primitive$1.span,
|
|
212121
212233
|
{
|
|
212122
|
-
"data-state": getState(context.checked),
|
|
212234
|
+
"data-state": getState$1(context.checked),
|
|
212123
212235
|
"data-disabled": context.disabled ? "" : void 0,
|
|
212124
212236
|
...indicatorProps,
|
|
212125
212237
|
ref: forwardedRef
|
|
@@ -212164,7 +212276,7 @@ var BubbleInput = (props) => {
|
|
|
212164
212276
|
}
|
|
212165
212277
|
);
|
|
212166
212278
|
};
|
|
212167
|
-
function getState(checked) {
|
|
212279
|
+
function getState$1(checked) {
|
|
212168
212280
|
return checked ? "checked" : "unchecked";
|
|
212169
212281
|
}
|
|
212170
212282
|
var ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"];
|
|
@@ -212208,7 +212320,7 @@ var RadioGroup$1 = React.forwardRef(
|
|
|
212208
212320
|
value,
|
|
212209
212321
|
onValueChange: setValue,
|
|
212210
212322
|
children: /* @__PURE__ */ jsx(
|
|
212211
|
-
Root$
|
|
212323
|
+
Root$3,
|
|
212212
212324
|
{
|
|
212213
212325
|
asChild: true,
|
|
212214
212326
|
...rovingFocusGroupScope,
|
|
@@ -212300,12 +212412,12 @@ var RadioGroupIndicator = React.forwardRef(
|
|
|
212300
212412
|
}
|
|
212301
212413
|
);
|
|
212302
212414
|
RadioGroupIndicator.displayName = INDICATOR_NAME2;
|
|
212303
|
-
var Root2 = RadioGroup$1;
|
|
212415
|
+
var Root2$2 = RadioGroup$1;
|
|
212304
212416
|
var Item2 = RadioGroupItem$1;
|
|
212305
212417
|
var Indicator = RadioGroupIndicator;
|
|
212306
212418
|
|
|
212307
212419
|
function RadioGroup({ className, ...props }) {
|
|
212308
|
-
return (jsx(Root2, { "data-slot": "radio-group", className: cn('grid gap-3', className), ...props }));
|
|
212420
|
+
return (jsx(Root2$2, { "data-slot": "radio-group", className: cn('grid gap-3', className), ...props }));
|
|
212309
212421
|
}
|
|
212310
212422
|
function RadioGroupItem({ className, ...props }) {
|
|
212311
212423
|
return (jsx(Item2, { "data-slot": "radio-group-item", className: cn('border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50', className), ...props, children: jsx(Indicator, { "data-slot": "radio-group-indicator", className: "relative flex items-center justify-center", children: jsx(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" }) }) }));
|
|
@@ -255515,9 +255627,1011 @@ function NavBar({ username, isAuthenticated = false, onNewChat, onSettings, onLo
|
|
|
255515
255627
|
return (jsxs("header", { className: "flex h-20 shrink-0 items-center gap-2 bg-white px-4 border-b border-[#D0E0FF]", children: [jsx(SidebarTrigger, { className: "-ml-1" }), mentorName && !showMentorDropdown && (jsx("div", { className: "flex items-center gap-2 ml-4", children: jsx("h1", { className: "text-lg font-semibold text-gray-900", children: mentorName }) })), mentorName && showMentorDropdown && (jsxs(DropdownMenu, { children: [jsx(DropdownMenuTrigger, { asChild: true, children: jsxs(Button$1, { variant: "ghost", className: "gap-2 text-gray-900 hover:bg-gray-100 ml-4", children: [jsx("span", { className: "font-semibold", children: mentorName }), jsx(ChevronDown, { className: "h-4 w-4" })] }) }), jsxs(DropdownMenuContent, { align: "start", className: "w-[200px]", children: [jsx(DropdownMenuItem, { children: t('navbar.switchAgent') }), jsx(DropdownMenuItem, { children: t('navbar.exploreAgents') })] })] })), jsxs("div", { className: "flex items-center gap-2 ml-auto", children: [onNewChat && (jsxs(Button$1, { variant: "ghost", size: "sm", onClick: onNewChat, className: "gap-2 text-[#646464] hover:text-[#484848] hover:bg-transparent", children: [jsx(MessageSquare, { className: "h-4 w-4" }), jsx("span", { className: "hidden sm:inline", children: t('navbar.newChat') })] })), isAuthenticated ? (jsxs(DropdownMenu, { children: [jsx(DropdownMenuTrigger, { asChild: true, children: jsxs(Button$1, { variant: "ghost", size: "sm", className: "gap-2 text-[#646464] hover:text-[#484848] hover:bg-transparent", children: [jsxs(Avatar, { className: "h-6 w-6", children: [jsx(AvatarImage, { src: `https://api.dicebear.com/7.x/initials/svg?seed=${username}` }), jsx(AvatarFallback, { children: username === null || username === void 0 ? void 0 : username.charAt(0).toUpperCase() })] }), jsx("span", { className: "hidden sm:inline", children: username })] }) }), jsxs(DropdownMenuContent, { align: "end", className: "w-[180px] rounded-md border border-gray-200 bg-white p-2 shadow-lg", children: [additionalMenuItems.map((item, index) => (jsxs(React__default.Fragment, { children: [item.separator && jsx(DropdownMenuSeparator, {}), jsxs(DropdownMenuItem, { onClick: item.onClick, className: "flex cursor-pointer items-center rounded-md px-3 py-2 text-sm text-gray-700 hover:bg-gray-100", children: [jsx(item.icon, { className: "mr-3 h-4 w-4 text-gray-600" }), item.label] })] }, item.label))), onSettings && (jsxs(DropdownMenuItem, { onClick: onSettings, className: "flex cursor-pointer items-center rounded-md px-3 py-2 text-sm text-gray-700 hover:bg-gray-100", children: [jsx(Settings$1, { className: "mr-3 h-4 w-4 text-gray-600" }), t('common.settings')] })), onLogout && (jsxs(Fragment$1, { children: [jsx(DropdownMenuSeparator, {}), jsxs(DropdownMenuItem, { onClick: onLogout, className: "flex cursor-pointer items-center rounded-md px-3 py-2 text-sm text-gray-700 hover:bg-gray-100", children: [jsx(LogOut, { className: "mr-3 h-4 w-4 text-gray-600" }), t('common.logout')] })] }))] })] })) : (onLogin && (jsxs(Button$1, { onClick: onLogin, size: "sm", className: "gap-2", children: [jsx(LogIn, { className: "h-4 w-4" }), t('common.login')] })))] })] }));
|
|
255516
255628
|
}
|
|
255517
255629
|
|
|
255630
|
+
var COLLAPSIBLE_NAME = "Collapsible";
|
|
255631
|
+
var [createCollapsibleContext] = createContextScope$1(COLLAPSIBLE_NAME);
|
|
255632
|
+
var [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);
|
|
255633
|
+
var Collapsible$1 = React.forwardRef(
|
|
255634
|
+
(props, forwardedRef) => {
|
|
255635
|
+
const {
|
|
255636
|
+
__scopeCollapsible,
|
|
255637
|
+
open: openProp,
|
|
255638
|
+
defaultOpen,
|
|
255639
|
+
disabled,
|
|
255640
|
+
onOpenChange,
|
|
255641
|
+
...collapsibleProps
|
|
255642
|
+
} = props;
|
|
255643
|
+
const [open, setOpen] = useControllableState$1({
|
|
255644
|
+
prop: openProp,
|
|
255645
|
+
defaultProp: defaultOpen ?? false,
|
|
255646
|
+
onChange: onOpenChange,
|
|
255647
|
+
caller: COLLAPSIBLE_NAME
|
|
255648
|
+
});
|
|
255649
|
+
return /* @__PURE__ */ jsx(
|
|
255650
|
+
CollapsibleProvider,
|
|
255651
|
+
{
|
|
255652
|
+
scope: __scopeCollapsible,
|
|
255653
|
+
disabled,
|
|
255654
|
+
contentId: useId$1(),
|
|
255655
|
+
open,
|
|
255656
|
+
onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
|
|
255657
|
+
children: /* @__PURE__ */ jsx(
|
|
255658
|
+
Primitive$2.div,
|
|
255659
|
+
{
|
|
255660
|
+
"data-state": getState(open),
|
|
255661
|
+
"data-disabled": disabled ? "" : void 0,
|
|
255662
|
+
...collapsibleProps,
|
|
255663
|
+
ref: forwardedRef
|
|
255664
|
+
}
|
|
255665
|
+
)
|
|
255666
|
+
}
|
|
255667
|
+
);
|
|
255668
|
+
}
|
|
255669
|
+
);
|
|
255670
|
+
Collapsible$1.displayName = COLLAPSIBLE_NAME;
|
|
255671
|
+
var TRIGGER_NAME$1 = "CollapsibleTrigger";
|
|
255672
|
+
var CollapsibleTrigger$1 = React.forwardRef(
|
|
255673
|
+
(props, forwardedRef) => {
|
|
255674
|
+
const { __scopeCollapsible, ...triggerProps } = props;
|
|
255675
|
+
const context = useCollapsibleContext(TRIGGER_NAME$1, __scopeCollapsible);
|
|
255676
|
+
return /* @__PURE__ */ jsx(
|
|
255677
|
+
Primitive$2.button,
|
|
255678
|
+
{
|
|
255679
|
+
type: "button",
|
|
255680
|
+
"aria-controls": context.contentId,
|
|
255681
|
+
"aria-expanded": context.open || false,
|
|
255682
|
+
"data-state": getState(context.open),
|
|
255683
|
+
"data-disabled": context.disabled ? "" : void 0,
|
|
255684
|
+
disabled: context.disabled,
|
|
255685
|
+
...triggerProps,
|
|
255686
|
+
ref: forwardedRef,
|
|
255687
|
+
onClick: composeEventHandlers$1(props.onClick, context.onOpenToggle)
|
|
255688
|
+
}
|
|
255689
|
+
);
|
|
255690
|
+
}
|
|
255691
|
+
);
|
|
255692
|
+
CollapsibleTrigger$1.displayName = TRIGGER_NAME$1;
|
|
255693
|
+
var CONTENT_NAME$2 = "CollapsibleContent";
|
|
255694
|
+
var CollapsibleContent$1 = React.forwardRef(
|
|
255695
|
+
(props, forwardedRef) => {
|
|
255696
|
+
const { forceMount, ...contentProps } = props;
|
|
255697
|
+
const context = useCollapsibleContext(CONTENT_NAME$2, props.__scopeCollapsible);
|
|
255698
|
+
return /* @__PURE__ */ jsx(Presence$2, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });
|
|
255699
|
+
}
|
|
255700
|
+
);
|
|
255701
|
+
CollapsibleContent$1.displayName = CONTENT_NAME$2;
|
|
255702
|
+
var CollapsibleContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
255703
|
+
const { __scopeCollapsible, present, children, ...contentProps } = props;
|
|
255704
|
+
const context = useCollapsibleContext(CONTENT_NAME$2, __scopeCollapsible);
|
|
255705
|
+
const [isPresent, setIsPresent] = React.useState(present);
|
|
255706
|
+
const ref = React.useRef(null);
|
|
255707
|
+
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
255708
|
+
const heightRef = React.useRef(0);
|
|
255709
|
+
const height = heightRef.current;
|
|
255710
|
+
const widthRef = React.useRef(0);
|
|
255711
|
+
const width = widthRef.current;
|
|
255712
|
+
const isOpen = context.open || isPresent;
|
|
255713
|
+
const isMountAnimationPreventedRef = React.useRef(isOpen);
|
|
255714
|
+
const originalStylesRef = React.useRef(void 0);
|
|
255715
|
+
React.useEffect(() => {
|
|
255716
|
+
const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);
|
|
255717
|
+
return () => cancelAnimationFrame(rAF);
|
|
255718
|
+
}, []);
|
|
255719
|
+
useLayoutEffect2$1(() => {
|
|
255720
|
+
const node = ref.current;
|
|
255721
|
+
if (node) {
|
|
255722
|
+
originalStylesRef.current = originalStylesRef.current || {
|
|
255723
|
+
transitionDuration: node.style.transitionDuration,
|
|
255724
|
+
animationName: node.style.animationName
|
|
255725
|
+
};
|
|
255726
|
+
node.style.transitionDuration = "0s";
|
|
255727
|
+
node.style.animationName = "none";
|
|
255728
|
+
const rect = node.getBoundingClientRect();
|
|
255729
|
+
heightRef.current = rect.height;
|
|
255730
|
+
widthRef.current = rect.width;
|
|
255731
|
+
if (!isMountAnimationPreventedRef.current) {
|
|
255732
|
+
node.style.transitionDuration = originalStylesRef.current.transitionDuration;
|
|
255733
|
+
node.style.animationName = originalStylesRef.current.animationName;
|
|
255734
|
+
}
|
|
255735
|
+
setIsPresent(present);
|
|
255736
|
+
}
|
|
255737
|
+
}, [context.open, present]);
|
|
255738
|
+
return /* @__PURE__ */ jsx(
|
|
255739
|
+
Primitive$2.div,
|
|
255740
|
+
{
|
|
255741
|
+
"data-state": getState(context.open),
|
|
255742
|
+
"data-disabled": context.disabled ? "" : void 0,
|
|
255743
|
+
id: context.contentId,
|
|
255744
|
+
hidden: !isOpen,
|
|
255745
|
+
...contentProps,
|
|
255746
|
+
ref: composedRefs,
|
|
255747
|
+
style: {
|
|
255748
|
+
[`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,
|
|
255749
|
+
[`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,
|
|
255750
|
+
...props.style
|
|
255751
|
+
},
|
|
255752
|
+
children: isOpen && children
|
|
255753
|
+
}
|
|
255754
|
+
);
|
|
255755
|
+
});
|
|
255756
|
+
function getState(open) {
|
|
255757
|
+
return open ? "open" : "closed";
|
|
255758
|
+
}
|
|
255759
|
+
var Root$2 = Collapsible$1;
|
|
255760
|
+
|
|
255761
|
+
const Collapsible = Root$2;
|
|
255762
|
+
const CollapsibleTrigger = CollapsibleTrigger$1;
|
|
255763
|
+
const CollapsibleContent = CollapsibleContent$1;
|
|
255764
|
+
|
|
255765
|
+
// src/arrow.tsx
|
|
255766
|
+
var NAME$1 = "Arrow";
|
|
255767
|
+
var Arrow$1 = React.forwardRef((props, forwardedRef) => {
|
|
255768
|
+
const { children, width = 10, height = 5, ...arrowProps } = props;
|
|
255769
|
+
return /* @__PURE__ */ jsx(
|
|
255770
|
+
Primitive$2.svg,
|
|
255771
|
+
{
|
|
255772
|
+
...arrowProps,
|
|
255773
|
+
ref: forwardedRef,
|
|
255774
|
+
width,
|
|
255775
|
+
height,
|
|
255776
|
+
viewBox: "0 0 30 10",
|
|
255777
|
+
preserveAspectRatio: "none",
|
|
255778
|
+
children: props.asChild ? children : /* @__PURE__ */ jsx("polygon", { points: "0,0 30,0 15,10" })
|
|
255779
|
+
}
|
|
255780
|
+
);
|
|
255781
|
+
});
|
|
255782
|
+
Arrow$1.displayName = NAME$1;
|
|
255783
|
+
var Root$1 = Arrow$1;
|
|
255784
|
+
|
|
255785
|
+
var POPPER_NAME = "Popper";
|
|
255786
|
+
var [createPopperContext, createPopperScope] = createContextScope$1(POPPER_NAME);
|
|
255787
|
+
var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
|
|
255788
|
+
var Popper = (props) => {
|
|
255789
|
+
const { __scopePopper, children } = props;
|
|
255790
|
+
const [anchor, setAnchor] = React.useState(null);
|
|
255791
|
+
return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
255792
|
+
};
|
|
255793
|
+
Popper.displayName = POPPER_NAME;
|
|
255794
|
+
var ANCHOR_NAME = "PopperAnchor";
|
|
255795
|
+
var PopperAnchor = React.forwardRef(
|
|
255796
|
+
(props, forwardedRef) => {
|
|
255797
|
+
const { __scopePopper, virtualRef, ...anchorProps } = props;
|
|
255798
|
+
const context = usePopperContext(ANCHOR_NAME, __scopePopper);
|
|
255799
|
+
const ref = React.useRef(null);
|
|
255800
|
+
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
255801
|
+
const anchorRef = React.useRef(null);
|
|
255802
|
+
React.useEffect(() => {
|
|
255803
|
+
const previousAnchor = anchorRef.current;
|
|
255804
|
+
anchorRef.current = virtualRef?.current || ref.current;
|
|
255805
|
+
if (previousAnchor !== anchorRef.current) {
|
|
255806
|
+
context.onAnchorChange(anchorRef.current);
|
|
255807
|
+
}
|
|
255808
|
+
});
|
|
255809
|
+
return virtualRef ? null : /* @__PURE__ */ jsx(Primitive$2.div, { ...anchorProps, ref: composedRefs });
|
|
255810
|
+
}
|
|
255811
|
+
);
|
|
255812
|
+
PopperAnchor.displayName = ANCHOR_NAME;
|
|
255813
|
+
var CONTENT_NAME$1 = "PopperContent";
|
|
255814
|
+
var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME$1);
|
|
255815
|
+
var PopperContent = React.forwardRef(
|
|
255816
|
+
(props, forwardedRef) => {
|
|
255817
|
+
const {
|
|
255818
|
+
__scopePopper,
|
|
255819
|
+
side = "bottom",
|
|
255820
|
+
sideOffset = 0,
|
|
255821
|
+
align = "center",
|
|
255822
|
+
alignOffset = 0,
|
|
255823
|
+
arrowPadding = 0,
|
|
255824
|
+
avoidCollisions = true,
|
|
255825
|
+
collisionBoundary = [],
|
|
255826
|
+
collisionPadding: collisionPaddingProp = 0,
|
|
255827
|
+
sticky = "partial",
|
|
255828
|
+
hideWhenDetached = false,
|
|
255829
|
+
updatePositionStrategy = "optimized",
|
|
255830
|
+
onPlaced,
|
|
255831
|
+
...contentProps
|
|
255832
|
+
} = props;
|
|
255833
|
+
const context = usePopperContext(CONTENT_NAME$1, __scopePopper);
|
|
255834
|
+
const [content, setContent] = React.useState(null);
|
|
255835
|
+
const composedRefs = useComposedRefs$1(forwardedRef, (node) => setContent(node));
|
|
255836
|
+
const [arrow, setArrow] = React.useState(null);
|
|
255837
|
+
const arrowSize = useSize$1(arrow);
|
|
255838
|
+
const arrowWidth = arrowSize?.width ?? 0;
|
|
255839
|
+
const arrowHeight = arrowSize?.height ?? 0;
|
|
255840
|
+
const desiredPlacement = side + (align !== "center" ? "-" + align : "");
|
|
255841
|
+
const collisionPadding = typeof collisionPaddingProp === "number" ? collisionPaddingProp : { top: 0, right: 0, bottom: 0, left: 0, ...collisionPaddingProp };
|
|
255842
|
+
const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [collisionBoundary];
|
|
255843
|
+
const hasExplicitBoundaries = boundary.length > 0;
|
|
255844
|
+
const detectOverflowOptions = {
|
|
255845
|
+
padding: collisionPadding,
|
|
255846
|
+
boundary: boundary.filter(isNotNull),
|
|
255847
|
+
// with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
|
|
255848
|
+
altBoundary: hasExplicitBoundaries
|
|
255849
|
+
};
|
|
255850
|
+
const { refs, floatingStyles, placement, isPositioned, middlewareData } = useFloating({
|
|
255851
|
+
// default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues
|
|
255852
|
+
strategy: "fixed",
|
|
255853
|
+
placement: desiredPlacement,
|
|
255854
|
+
whileElementsMounted: (...args) => {
|
|
255855
|
+
const cleanup = autoUpdate(...args, {
|
|
255856
|
+
animationFrame: updatePositionStrategy === "always"
|
|
255857
|
+
});
|
|
255858
|
+
return cleanup;
|
|
255859
|
+
},
|
|
255860
|
+
elements: {
|
|
255861
|
+
reference: context.anchor
|
|
255862
|
+
},
|
|
255863
|
+
middleware: [
|
|
255864
|
+
offset({ mainAxis: sideOffset + arrowHeight, alignmentAxis: alignOffset }),
|
|
255865
|
+
avoidCollisions && shift$1({
|
|
255866
|
+
mainAxis: true,
|
|
255867
|
+
crossAxis: false,
|
|
255868
|
+
limiter: sticky === "partial" ? limitShift() : void 0,
|
|
255869
|
+
...detectOverflowOptions
|
|
255870
|
+
}),
|
|
255871
|
+
avoidCollisions && flip({ ...detectOverflowOptions }),
|
|
255872
|
+
size({
|
|
255873
|
+
...detectOverflowOptions,
|
|
255874
|
+
apply: ({ elements, rects, availableWidth, availableHeight }) => {
|
|
255875
|
+
const { width: anchorWidth, height: anchorHeight } = rects.reference;
|
|
255876
|
+
const contentStyle = elements.floating.style;
|
|
255877
|
+
contentStyle.setProperty("--radix-popper-available-width", `${availableWidth}px`);
|
|
255878
|
+
contentStyle.setProperty("--radix-popper-available-height", `${availableHeight}px`);
|
|
255879
|
+
contentStyle.setProperty("--radix-popper-anchor-width", `${anchorWidth}px`);
|
|
255880
|
+
contentStyle.setProperty("--radix-popper-anchor-height", `${anchorHeight}px`);
|
|
255881
|
+
}
|
|
255882
|
+
}),
|
|
255883
|
+
arrow && arrow$2({ element: arrow, padding: arrowPadding }),
|
|
255884
|
+
transformOrigin$1({ arrowWidth, arrowHeight }),
|
|
255885
|
+
hideWhenDetached && hide({ strategy: "referenceHidden", ...detectOverflowOptions })
|
|
255886
|
+
]
|
|
255887
|
+
});
|
|
255888
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
255889
|
+
const handlePlaced = useCallbackRef$2(onPlaced);
|
|
255890
|
+
useLayoutEffect2$1(() => {
|
|
255891
|
+
if (isPositioned) {
|
|
255892
|
+
handlePlaced?.();
|
|
255893
|
+
}
|
|
255894
|
+
}, [isPositioned, handlePlaced]);
|
|
255895
|
+
const arrowX = middlewareData.arrow?.x;
|
|
255896
|
+
const arrowY = middlewareData.arrow?.y;
|
|
255897
|
+
const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
|
|
255898
|
+
const [contentZIndex, setContentZIndex] = React.useState();
|
|
255899
|
+
useLayoutEffect2$1(() => {
|
|
255900
|
+
if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
255901
|
+
}, [content]);
|
|
255902
|
+
return /* @__PURE__ */ jsx(
|
|
255903
|
+
"div",
|
|
255904
|
+
{
|
|
255905
|
+
ref: refs.setFloating,
|
|
255906
|
+
"data-radix-popper-content-wrapper": "",
|
|
255907
|
+
style: {
|
|
255908
|
+
...floatingStyles,
|
|
255909
|
+
transform: isPositioned ? floatingStyles.transform : "translate(0, -200%)",
|
|
255910
|
+
// keep off the page when measuring
|
|
255911
|
+
minWidth: "max-content",
|
|
255912
|
+
zIndex: contentZIndex,
|
|
255913
|
+
["--radix-popper-transform-origin"]: [
|
|
255914
|
+
middlewareData.transformOrigin?.x,
|
|
255915
|
+
middlewareData.transformOrigin?.y
|
|
255916
|
+
].join(" "),
|
|
255917
|
+
// hide the content if using the hide middleware and should be hidden
|
|
255918
|
+
// set visibility to hidden and disable pointer events so the UI behaves
|
|
255919
|
+
// as if the PopperContent isn't there at all
|
|
255920
|
+
...middlewareData.hide?.referenceHidden && {
|
|
255921
|
+
visibility: "hidden",
|
|
255922
|
+
pointerEvents: "none"
|
|
255923
|
+
}
|
|
255924
|
+
},
|
|
255925
|
+
dir: props.dir,
|
|
255926
|
+
children: /* @__PURE__ */ jsx(
|
|
255927
|
+
PopperContentProvider,
|
|
255928
|
+
{
|
|
255929
|
+
scope: __scopePopper,
|
|
255930
|
+
placedSide,
|
|
255931
|
+
onArrowChange: setArrow,
|
|
255932
|
+
arrowX,
|
|
255933
|
+
arrowY,
|
|
255934
|
+
shouldHideArrow: cannotCenterArrow,
|
|
255935
|
+
children: /* @__PURE__ */ jsx(
|
|
255936
|
+
Primitive$2.div,
|
|
255937
|
+
{
|
|
255938
|
+
"data-side": placedSide,
|
|
255939
|
+
"data-align": placedAlign,
|
|
255940
|
+
...contentProps,
|
|
255941
|
+
ref: composedRefs,
|
|
255942
|
+
style: {
|
|
255943
|
+
...contentProps.style,
|
|
255944
|
+
// if the PopperContent hasn't been placed yet (not all measurements done)
|
|
255945
|
+
// we prevent animations so that users's animation don't kick in too early referring wrong sides
|
|
255946
|
+
animation: !isPositioned ? "none" : void 0
|
|
255947
|
+
}
|
|
255948
|
+
}
|
|
255949
|
+
)
|
|
255950
|
+
}
|
|
255951
|
+
)
|
|
255952
|
+
}
|
|
255953
|
+
);
|
|
255954
|
+
}
|
|
255955
|
+
);
|
|
255956
|
+
PopperContent.displayName = CONTENT_NAME$1;
|
|
255957
|
+
var ARROW_NAME$1 = "PopperArrow";
|
|
255958
|
+
var OPPOSITE_SIDE = {
|
|
255959
|
+
top: "bottom",
|
|
255960
|
+
right: "left",
|
|
255961
|
+
bottom: "top",
|
|
255962
|
+
left: "right"
|
|
255963
|
+
};
|
|
255964
|
+
var PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
255965
|
+
const { __scopePopper, ...arrowProps } = props;
|
|
255966
|
+
const contentContext = useContentContext(ARROW_NAME$1, __scopePopper);
|
|
255967
|
+
const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
|
|
255968
|
+
return (
|
|
255969
|
+
// we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
|
|
255970
|
+
// doesn't report size as we'd expect on SVG elements.
|
|
255971
|
+
// it reports their bounding box which is effectively the largest path inside the SVG.
|
|
255972
|
+
/* @__PURE__ */ jsx(
|
|
255973
|
+
"span",
|
|
255974
|
+
{
|
|
255975
|
+
ref: contentContext.onArrowChange,
|
|
255976
|
+
style: {
|
|
255977
|
+
position: "absolute",
|
|
255978
|
+
left: contentContext.arrowX,
|
|
255979
|
+
top: contentContext.arrowY,
|
|
255980
|
+
[baseSide]: 0,
|
|
255981
|
+
transformOrigin: {
|
|
255982
|
+
top: "",
|
|
255983
|
+
right: "0 0",
|
|
255984
|
+
bottom: "center 0",
|
|
255985
|
+
left: "100% 0"
|
|
255986
|
+
}[contentContext.placedSide],
|
|
255987
|
+
transform: {
|
|
255988
|
+
top: "translateY(100%)",
|
|
255989
|
+
right: "translateY(50%) rotate(90deg) translateX(-50%)",
|
|
255990
|
+
bottom: `rotate(180deg)`,
|
|
255991
|
+
left: "translateY(50%) rotate(-90deg) translateX(50%)"
|
|
255992
|
+
}[contentContext.placedSide],
|
|
255993
|
+
visibility: contentContext.shouldHideArrow ? "hidden" : void 0
|
|
255994
|
+
},
|
|
255995
|
+
children: /* @__PURE__ */ jsx(
|
|
255996
|
+
Root$1,
|
|
255997
|
+
{
|
|
255998
|
+
...arrowProps,
|
|
255999
|
+
ref: forwardedRef,
|
|
256000
|
+
style: {
|
|
256001
|
+
...arrowProps.style,
|
|
256002
|
+
// ensures the element can be measured correctly (mostly for if SVG)
|
|
256003
|
+
display: "block"
|
|
256004
|
+
}
|
|
256005
|
+
}
|
|
256006
|
+
)
|
|
256007
|
+
}
|
|
256008
|
+
)
|
|
256009
|
+
);
|
|
256010
|
+
});
|
|
256011
|
+
PopperArrow.displayName = ARROW_NAME$1;
|
|
256012
|
+
function isNotNull(value) {
|
|
256013
|
+
return value !== null;
|
|
256014
|
+
}
|
|
256015
|
+
var transformOrigin$1 = (options) => ({
|
|
256016
|
+
name: "transformOrigin",
|
|
256017
|
+
options,
|
|
256018
|
+
fn(data) {
|
|
256019
|
+
const { placement, rects, middlewareData } = data;
|
|
256020
|
+
const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
|
|
256021
|
+
const isArrowHidden = cannotCenterArrow;
|
|
256022
|
+
const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
|
|
256023
|
+
const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
|
|
256024
|
+
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
256025
|
+
const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
|
|
256026
|
+
const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
|
|
256027
|
+
const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
|
|
256028
|
+
let x = "";
|
|
256029
|
+
let y = "";
|
|
256030
|
+
if (placedSide === "bottom") {
|
|
256031
|
+
x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
|
|
256032
|
+
y = `${-arrowHeight}px`;
|
|
256033
|
+
} else if (placedSide === "top") {
|
|
256034
|
+
x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
|
|
256035
|
+
y = `${rects.floating.height + arrowHeight}px`;
|
|
256036
|
+
} else if (placedSide === "right") {
|
|
256037
|
+
x = `${-arrowHeight}px`;
|
|
256038
|
+
y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
|
|
256039
|
+
} else if (placedSide === "left") {
|
|
256040
|
+
x = `${rects.floating.width + arrowHeight}px`;
|
|
256041
|
+
y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
|
|
256042
|
+
}
|
|
256043
|
+
return { data: { x, y } };
|
|
256044
|
+
}
|
|
256045
|
+
});
|
|
256046
|
+
function getSideAndAlignFromPlacement(placement) {
|
|
256047
|
+
const [side, align = "center"] = placement.split("-");
|
|
256048
|
+
return [side, align];
|
|
256049
|
+
}
|
|
256050
|
+
var Root2$1 = Popper;
|
|
256051
|
+
var Anchor$1 = PopperAnchor;
|
|
256052
|
+
var Content = PopperContent;
|
|
256053
|
+
var Arrow = PopperArrow;
|
|
256054
|
+
|
|
256055
|
+
var originalBodyUserSelect;
|
|
256056
|
+
var HOVERCARD_NAME = "HoverCard";
|
|
256057
|
+
var [createHoverCardContext] = createContextScope$1(HOVERCARD_NAME, [
|
|
256058
|
+
createPopperScope
|
|
256059
|
+
]);
|
|
256060
|
+
var usePopperScope = createPopperScope();
|
|
256061
|
+
var [HoverCardProvider, useHoverCardContext] = createHoverCardContext(HOVERCARD_NAME);
|
|
256062
|
+
var HoverCard$1 = (props) => {
|
|
256063
|
+
const {
|
|
256064
|
+
__scopeHoverCard,
|
|
256065
|
+
children,
|
|
256066
|
+
open: openProp,
|
|
256067
|
+
defaultOpen,
|
|
256068
|
+
onOpenChange,
|
|
256069
|
+
openDelay = 700,
|
|
256070
|
+
closeDelay = 300
|
|
256071
|
+
} = props;
|
|
256072
|
+
const popperScope = usePopperScope(__scopeHoverCard);
|
|
256073
|
+
const openTimerRef = React.useRef(0);
|
|
256074
|
+
const closeTimerRef = React.useRef(0);
|
|
256075
|
+
const hasSelectionRef = React.useRef(false);
|
|
256076
|
+
const isPointerDownOnContentRef = React.useRef(false);
|
|
256077
|
+
const [open, setOpen] = useControllableState$1({
|
|
256078
|
+
prop: openProp,
|
|
256079
|
+
defaultProp: defaultOpen ?? false,
|
|
256080
|
+
onChange: onOpenChange,
|
|
256081
|
+
caller: HOVERCARD_NAME
|
|
256082
|
+
});
|
|
256083
|
+
const handleOpen = React.useCallback(() => {
|
|
256084
|
+
clearTimeout(closeTimerRef.current);
|
|
256085
|
+
openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);
|
|
256086
|
+
}, [openDelay, setOpen]);
|
|
256087
|
+
const handleClose = React.useCallback(() => {
|
|
256088
|
+
clearTimeout(openTimerRef.current);
|
|
256089
|
+
if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {
|
|
256090
|
+
closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);
|
|
256091
|
+
}
|
|
256092
|
+
}, [closeDelay, setOpen]);
|
|
256093
|
+
const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);
|
|
256094
|
+
React.useEffect(() => {
|
|
256095
|
+
return () => {
|
|
256096
|
+
clearTimeout(openTimerRef.current);
|
|
256097
|
+
clearTimeout(closeTimerRef.current);
|
|
256098
|
+
};
|
|
256099
|
+
}, []);
|
|
256100
|
+
return /* @__PURE__ */ jsx(
|
|
256101
|
+
HoverCardProvider,
|
|
256102
|
+
{
|
|
256103
|
+
scope: __scopeHoverCard,
|
|
256104
|
+
open,
|
|
256105
|
+
onOpenChange: setOpen,
|
|
256106
|
+
onOpen: handleOpen,
|
|
256107
|
+
onClose: handleClose,
|
|
256108
|
+
onDismiss: handleDismiss,
|
|
256109
|
+
hasSelectionRef,
|
|
256110
|
+
isPointerDownOnContentRef,
|
|
256111
|
+
children: /* @__PURE__ */ jsx(Root2$1, { ...popperScope, children })
|
|
256112
|
+
}
|
|
256113
|
+
);
|
|
256114
|
+
};
|
|
256115
|
+
HoverCard$1.displayName = HOVERCARD_NAME;
|
|
256116
|
+
var TRIGGER_NAME = "HoverCardTrigger";
|
|
256117
|
+
var HoverCardTrigger$1 = React.forwardRef(
|
|
256118
|
+
(props, forwardedRef) => {
|
|
256119
|
+
const { __scopeHoverCard, ...triggerProps } = props;
|
|
256120
|
+
const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);
|
|
256121
|
+
const popperScope = usePopperScope(__scopeHoverCard);
|
|
256122
|
+
return /* @__PURE__ */ jsx(Anchor$1, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(
|
|
256123
|
+
Primitive$2.a,
|
|
256124
|
+
{
|
|
256125
|
+
"data-state": context.open ? "open" : "closed",
|
|
256126
|
+
...triggerProps,
|
|
256127
|
+
ref: forwardedRef,
|
|
256128
|
+
onPointerEnter: composeEventHandlers$1(props.onPointerEnter, excludeTouch(context.onOpen)),
|
|
256129
|
+
onPointerLeave: composeEventHandlers$1(props.onPointerLeave, excludeTouch(context.onClose)),
|
|
256130
|
+
onFocus: composeEventHandlers$1(props.onFocus, context.onOpen),
|
|
256131
|
+
onBlur: composeEventHandlers$1(props.onBlur, context.onClose),
|
|
256132
|
+
onTouchStart: composeEventHandlers$1(props.onTouchStart, (event) => event.preventDefault())
|
|
256133
|
+
}
|
|
256134
|
+
) });
|
|
256135
|
+
}
|
|
256136
|
+
);
|
|
256137
|
+
HoverCardTrigger$1.displayName = TRIGGER_NAME;
|
|
256138
|
+
var PORTAL_NAME = "HoverCardPortal";
|
|
256139
|
+
var [PortalProvider, usePortalContext] = createHoverCardContext(PORTAL_NAME, {
|
|
256140
|
+
forceMount: void 0
|
|
256141
|
+
});
|
|
256142
|
+
var HoverCardPortal = (props) => {
|
|
256143
|
+
const { __scopeHoverCard, forceMount, children, container } = props;
|
|
256144
|
+
const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);
|
|
256145
|
+
return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeHoverCard, forceMount, children: /* @__PURE__ */ jsx(Presence$2, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$4, { asChild: true, container, children }) }) });
|
|
256146
|
+
};
|
|
256147
|
+
HoverCardPortal.displayName = PORTAL_NAME;
|
|
256148
|
+
var CONTENT_NAME = "HoverCardContent";
|
|
256149
|
+
var HoverCardContent$1 = React.forwardRef(
|
|
256150
|
+
(props, forwardedRef) => {
|
|
256151
|
+
const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);
|
|
256152
|
+
const { forceMount = portalContext.forceMount, ...contentProps } = props;
|
|
256153
|
+
const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);
|
|
256154
|
+
return /* @__PURE__ */ jsx(Presence$2, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(
|
|
256155
|
+
HoverCardContentImpl,
|
|
256156
|
+
{
|
|
256157
|
+
"data-state": context.open ? "open" : "closed",
|
|
256158
|
+
...contentProps,
|
|
256159
|
+
onPointerEnter: composeEventHandlers$1(props.onPointerEnter, excludeTouch(context.onOpen)),
|
|
256160
|
+
onPointerLeave: composeEventHandlers$1(props.onPointerLeave, excludeTouch(context.onClose)),
|
|
256161
|
+
ref: forwardedRef
|
|
256162
|
+
}
|
|
256163
|
+
) });
|
|
256164
|
+
}
|
|
256165
|
+
);
|
|
256166
|
+
HoverCardContent$1.displayName = CONTENT_NAME;
|
|
256167
|
+
var HoverCardContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
256168
|
+
const {
|
|
256169
|
+
__scopeHoverCard,
|
|
256170
|
+
onEscapeKeyDown,
|
|
256171
|
+
onPointerDownOutside,
|
|
256172
|
+
onFocusOutside,
|
|
256173
|
+
onInteractOutside,
|
|
256174
|
+
...contentProps
|
|
256175
|
+
} = props;
|
|
256176
|
+
const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);
|
|
256177
|
+
const popperScope = usePopperScope(__scopeHoverCard);
|
|
256178
|
+
const ref = React.useRef(null);
|
|
256179
|
+
const composedRefs = useComposedRefs$1(forwardedRef, ref);
|
|
256180
|
+
const [containSelection, setContainSelection] = React.useState(false);
|
|
256181
|
+
React.useEffect(() => {
|
|
256182
|
+
if (containSelection) {
|
|
256183
|
+
const body = document.body;
|
|
256184
|
+
originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;
|
|
256185
|
+
body.style.userSelect = "none";
|
|
256186
|
+
body.style.webkitUserSelect = "none";
|
|
256187
|
+
return () => {
|
|
256188
|
+
body.style.userSelect = originalBodyUserSelect;
|
|
256189
|
+
body.style.webkitUserSelect = originalBodyUserSelect;
|
|
256190
|
+
};
|
|
256191
|
+
}
|
|
256192
|
+
}, [containSelection]);
|
|
256193
|
+
React.useEffect(() => {
|
|
256194
|
+
if (ref.current) {
|
|
256195
|
+
const handlePointerUp = () => {
|
|
256196
|
+
setContainSelection(false);
|
|
256197
|
+
context.isPointerDownOnContentRef.current = false;
|
|
256198
|
+
setTimeout(() => {
|
|
256199
|
+
const hasSelection = document.getSelection()?.toString() !== "";
|
|
256200
|
+
if (hasSelection) context.hasSelectionRef.current = true;
|
|
256201
|
+
});
|
|
256202
|
+
};
|
|
256203
|
+
document.addEventListener("pointerup", handlePointerUp);
|
|
256204
|
+
return () => {
|
|
256205
|
+
document.removeEventListener("pointerup", handlePointerUp);
|
|
256206
|
+
context.hasSelectionRef.current = false;
|
|
256207
|
+
context.isPointerDownOnContentRef.current = false;
|
|
256208
|
+
};
|
|
256209
|
+
}
|
|
256210
|
+
}, [context.isPointerDownOnContentRef, context.hasSelectionRef]);
|
|
256211
|
+
React.useEffect(() => {
|
|
256212
|
+
if (ref.current) {
|
|
256213
|
+
const tabbables = getTabbableNodes(ref.current);
|
|
256214
|
+
tabbables.forEach((tabbable) => tabbable.setAttribute("tabindex", "-1"));
|
|
256215
|
+
}
|
|
256216
|
+
});
|
|
256217
|
+
return /* @__PURE__ */ jsx(
|
|
256218
|
+
DismissableLayer$1,
|
|
256219
|
+
{
|
|
256220
|
+
asChild: true,
|
|
256221
|
+
disableOutsidePointerEvents: false,
|
|
256222
|
+
onInteractOutside,
|
|
256223
|
+
onEscapeKeyDown,
|
|
256224
|
+
onPointerDownOutside,
|
|
256225
|
+
onFocusOutside: composeEventHandlers$1(onFocusOutside, (event) => {
|
|
256226
|
+
event.preventDefault();
|
|
256227
|
+
}),
|
|
256228
|
+
onDismiss: context.onDismiss,
|
|
256229
|
+
children: /* @__PURE__ */ jsx(
|
|
256230
|
+
Content,
|
|
256231
|
+
{
|
|
256232
|
+
...popperScope,
|
|
256233
|
+
...contentProps,
|
|
256234
|
+
onPointerDown: composeEventHandlers$1(contentProps.onPointerDown, (event) => {
|
|
256235
|
+
if (event.currentTarget.contains(event.target)) {
|
|
256236
|
+
setContainSelection(true);
|
|
256237
|
+
}
|
|
256238
|
+
context.hasSelectionRef.current = false;
|
|
256239
|
+
context.isPointerDownOnContentRef.current = true;
|
|
256240
|
+
}),
|
|
256241
|
+
ref: composedRefs,
|
|
256242
|
+
style: {
|
|
256243
|
+
...contentProps.style,
|
|
256244
|
+
userSelect: containSelection ? "text" : void 0,
|
|
256245
|
+
// Safari requires prefix
|
|
256246
|
+
WebkitUserSelect: containSelection ? "text" : void 0,
|
|
256247
|
+
// re-namespace exposed content custom properties
|
|
256248
|
+
...{
|
|
256249
|
+
"--radix-hover-card-content-transform-origin": "var(--radix-popper-transform-origin)",
|
|
256250
|
+
"--radix-hover-card-content-available-width": "var(--radix-popper-available-width)",
|
|
256251
|
+
"--radix-hover-card-content-available-height": "var(--radix-popper-available-height)",
|
|
256252
|
+
"--radix-hover-card-trigger-width": "var(--radix-popper-anchor-width)",
|
|
256253
|
+
"--radix-hover-card-trigger-height": "var(--radix-popper-anchor-height)"
|
|
256254
|
+
}
|
|
256255
|
+
}
|
|
256256
|
+
}
|
|
256257
|
+
)
|
|
256258
|
+
}
|
|
256259
|
+
);
|
|
256260
|
+
});
|
|
256261
|
+
var ARROW_NAME = "HoverCardArrow";
|
|
256262
|
+
var HoverCardArrow = React.forwardRef(
|
|
256263
|
+
(props, forwardedRef) => {
|
|
256264
|
+
const { __scopeHoverCard, ...arrowProps } = props;
|
|
256265
|
+
const popperScope = usePopperScope(__scopeHoverCard);
|
|
256266
|
+
return /* @__PURE__ */ jsx(Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });
|
|
256267
|
+
}
|
|
256268
|
+
);
|
|
256269
|
+
HoverCardArrow.displayName = ARROW_NAME;
|
|
256270
|
+
function excludeTouch(eventHandler) {
|
|
256271
|
+
return (event) => event.pointerType === "touch" ? void 0 : eventHandler();
|
|
256272
|
+
}
|
|
256273
|
+
function getTabbableNodes(container) {
|
|
256274
|
+
const nodes = [];
|
|
256275
|
+
const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {
|
|
256276
|
+
acceptNode: (node) => {
|
|
256277
|
+
return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
|
|
256278
|
+
}
|
|
256279
|
+
});
|
|
256280
|
+
while (walker.nextNode()) nodes.push(walker.currentNode);
|
|
256281
|
+
return nodes;
|
|
256282
|
+
}
|
|
256283
|
+
var Root2 = HoverCard$1;
|
|
256284
|
+
var Trigger = HoverCardTrigger$1;
|
|
256285
|
+
var Portal = HoverCardPortal;
|
|
256286
|
+
var Content2 = HoverCardContent$1;
|
|
256287
|
+
|
|
256288
|
+
const HoverCard = Root2;
|
|
256289
|
+
const HoverCardTrigger = Trigger;
|
|
256290
|
+
const HoverCardContent = React.forwardRef(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (
|
|
256291
|
+
// Portal lifts the content out of the trigger's stacking/clipping
|
|
256292
|
+
// context. Without it, hover-cards rendered from inside `<Sidebar>`
|
|
256293
|
+
// (which has `overflow-hidden` and lives in a `z-10` container) get
|
|
256294
|
+
// clipped at the sidebar edge and hidden behind the main content.
|
|
256295
|
+
jsx(Portal, { children: jsx(Content2, { ref: ref, align: align, sideOffset: sideOffset, className: cn('bg-popover text-popover-foreground 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 z-50 w-64 rounded-md border p-4 shadow-md outline-none', className), ...props }) })));
|
|
256296
|
+
HoverCardContent.displayName = Content2.displayName;
|
|
256297
|
+
|
|
256298
|
+
/** Muted icon/label color shared by every nav row. Exported so host apps
|
|
256299
|
+
* can build custom sections that match the shell's palette. */
|
|
256300
|
+
const PLATFORM_SIDEBAR_NAV_MUTED = '#5f5f61';
|
|
256301
|
+
const PLATFORM_SIDEBAR_FLYOUT_TITLE_COLOR = '#646676';
|
|
256302
|
+
const PLATFORM_SIDEBAR_FLYOUT_ITEM_COLOR = '#1f1f20';
|
|
256303
|
+
const PLATFORM_SIDEBAR_NAV_ACTIVE_BG_OPEN = 'data-[state=open]:bg-[#cfe8fa]/40 data-[state=open]:hover:bg-[#cfe8fa]/50';
|
|
256304
|
+
const SidebarNavCallbackContext = React.createContext({});
|
|
256305
|
+
const PlatformSidebarNavCallbackProvider = SidebarNavCallbackContext.Provider;
|
|
256306
|
+
/** After-nav callback (closes the mobile sheet, etc.) for items rendered
|
|
256307
|
+
* anywhere inside the PlatformSidebar — including host-app custom sections. */
|
|
256308
|
+
function usePlatformSidebarNavCallback() {
|
|
256309
|
+
return React.useContext(SidebarNavCallbackContext);
|
|
256310
|
+
}
|
|
256311
|
+
function PlatformSidebarCollapsedLabelFlyout({ label, children, }) {
|
|
256312
|
+
return (jsxs(HoverCard, { openDelay: 180, closeDelay: 120, children: [jsx(HoverCardTrigger, { asChild: true, children: children }), jsx(HoverCardContent, { side: "right", align: "start", sideOffset: 10, className: "z-[200] w-max max-w-[280px] min-w-[120px] rounded-2xl border border-[#e6e6e8] bg-white px-3 py-2.5 shadow-[0_10px_40px_-12px_rgba(15,23,42,0.18)]", children: jsx("span", { className: "text-[13px] leading-tight font-medium", style: { color: PLATFORM_SIDEBAR_FLYOUT_TITLE_COLOR }, children: label }) })] }));
|
|
256313
|
+
}
|
|
256314
|
+
function PlatformSidebarNavDivider() {
|
|
256315
|
+
return jsx("div", { role: "separator", className: "my-2.5 h-px w-full shrink-0 bg-[#e9e9ea]", "aria-hidden": true });
|
|
256316
|
+
}
|
|
256317
|
+
function PlatformSidebarSubNavItem({ id, label, href, exact, emptyState, onItemSelect, }) {
|
|
256318
|
+
const { onAfterNav } = usePlatformSidebarNavCallback();
|
|
256319
|
+
const router = useRouter();
|
|
256320
|
+
const pathname = usePathname();
|
|
256321
|
+
const [isPending, startTransition] = React.useTransition();
|
|
256322
|
+
const active = React.useMemo(() => {
|
|
256323
|
+
if (!href || !pathname)
|
|
256324
|
+
return false;
|
|
256325
|
+
if (href === '/')
|
|
256326
|
+
return pathname === '/';
|
|
256327
|
+
const normalizedHref = href.endsWith('/') ? href.slice(0, -1) : href;
|
|
256328
|
+
const normalizedPath = pathname.endsWith('/') ? pathname.slice(0, -1) : pathname;
|
|
256329
|
+
if (exact)
|
|
256330
|
+
return normalizedPath === normalizedHref;
|
|
256331
|
+
return normalizedPath === normalizedHref || normalizedPath.startsWith(`${normalizedHref}/`);
|
|
256332
|
+
}, [href, pathname, exact]);
|
|
256333
|
+
return (jsxs("button", { type: "button", disabled: isPending || emptyState, "aria-busy": isPending, className: cn('flex w-full min-w-0 cursor-pointer items-center gap-2 rounded-md px-2 py-2 text-left text-[14px] font-normal transition-colors', emptyState
|
|
256334
|
+
? 'cursor-default text-[#94a3b8] italic hover:bg-transparent'
|
|
256335
|
+
: active
|
|
256336
|
+
? 'bg-[#eef6fc] text-[#1e40af]'
|
|
256337
|
+
: 'text-[#4a5568] hover:bg-[#f4f4f4]', isPending && 'opacity-70'), onClick: () => {
|
|
256338
|
+
if (emptyState)
|
|
256339
|
+
return;
|
|
256340
|
+
const result = onItemSelect === null || onItemSelect === void 0 ? void 0 : onItemSelect(id);
|
|
256341
|
+
if (result === false)
|
|
256342
|
+
return;
|
|
256343
|
+
if (href) {
|
|
256344
|
+
if (/^https?:\/\//i.test(href)) {
|
|
256345
|
+
window.open(href, '_blank', 'noopener,noreferrer');
|
|
256346
|
+
}
|
|
256347
|
+
else {
|
|
256348
|
+
startTransition(() => {
|
|
256349
|
+
router.push(href);
|
|
256350
|
+
});
|
|
256351
|
+
}
|
|
256352
|
+
}
|
|
256353
|
+
onAfterNav === null || onAfterNav === void 0 ? void 0 : onAfterNav();
|
|
256354
|
+
}, children: [jsx("span", { className: "min-w-0 flex-1 truncate", children: label }), isPending && (jsx(LoaderCircle, { className: "size-3.5 shrink-0 animate-spin text-[#7d7e82]", "aria-hidden": true }))] }));
|
|
256355
|
+
}
|
|
256356
|
+
function PlatformSidebarCollapsedNavFlyout({ icon: Icon, label, items, onIconClick, onItemSelect, }) {
|
|
256357
|
+
const router = useRouter();
|
|
256358
|
+
const { onAfterNav } = usePlatformSidebarNavCallback();
|
|
256359
|
+
return (jsxs(HoverCard, { openDelay: 180, closeDelay: 120, children: [jsx(HoverCardTrigger, { asChild: true, children: jsx("button", { type: "button", onClick: onIconClick, className: "text-foreground inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-[8px] transition-colors outline-none hover:bg-[#f0f0f0] focus-visible:ring-2 focus-visible:ring-[#c4c4c8] focus-visible:ring-offset-2 focus-visible:ring-offset-[#fafafa]", "aria-label": label, children: jsx(Icon, { className: "size-4 shrink-0", style: { color: PLATFORM_SIDEBAR_NAV_MUTED }, strokeWidth: 1.5 }) }) }), jsxs(HoverCardContent, { side: "right", align: "start", sideOffset: 10, className: "z-[200] flex max-h-[70vh] w-max max-w-[280px] min-w-[200px] flex-col rounded-2xl border border-[#e6e6e8] bg-white px-3 py-2.5 shadow-[0_10px_40px_-12px_rgba(15,23,42,0.18)]", children: [jsx("div", { className: "mb-1.5 flex shrink-0 flex-wrap items-center gap-2", children: jsx("span", { className: "text-[13px] leading-tight font-medium", style: { color: PLATFORM_SIDEBAR_FLYOUT_TITLE_COLOR }, children: label }) }), jsx("ul", { className: "scrollbar-thin m-0 min-h-0 list-none space-y-0 overflow-y-auto p-0 pr-1", children: items.map((item) => (jsx("li", { children: jsx("button", { type: "button", onClick: () => {
|
|
256360
|
+
if ((onItemSelect === null || onItemSelect === void 0 ? void 0 : onItemSelect(item.id)) === false)
|
|
256361
|
+
return;
|
|
256362
|
+
if (item.href)
|
|
256363
|
+
router.push(item.href);
|
|
256364
|
+
onAfterNav === null || onAfterNav === void 0 ? void 0 : onAfterNav();
|
|
256365
|
+
}, className: cn('flex w-full cursor-pointer rounded-md px-1.5 py-1.5 text-left text-[14px] leading-snug font-medium transition-colors', item.emptyState
|
|
256366
|
+
? 'cursor-default text-[#94a3b8] italic hover:bg-transparent'
|
|
256367
|
+
: 'hover:bg-[#f4f4f4]'), style: item.emptyState ? undefined : { color: PLATFORM_SIDEBAR_FLYOUT_ITEM_COLOR }, children: item.label }) }, item.id))) })] })] }));
|
|
256368
|
+
}
|
|
256369
|
+
function PlatformSidebarNavSection({ collapsed, menu, open, onOpenChange, onCollapsedIconClick, onItemSelect, }) {
|
|
256370
|
+
const Icon = menu.icon;
|
|
256371
|
+
if (collapsed) {
|
|
256372
|
+
return (jsx(PlatformSidebarCollapsedNavFlyout, { icon: Icon, label: menu.label, items: menu.items, onIconClick: onCollapsedIconClick, onItemSelect: onItemSelect }));
|
|
256373
|
+
}
|
|
256374
|
+
const triggerClassName = cn('flex h-9 w-full min-w-0 cursor-pointer items-center gap-2 rounded-md px-2 text-left text-[14px] font-normal text-[#5f5f61] outline-none transition-colors hover:bg-[#f4f4f4] focus-visible:ring-2 focus-visible:ring-[#cfe8fa] focus-visible:ring-offset-2 focus-visible:ring-offset-[#fafafa]', PLATFORM_SIDEBAR_NAV_ACTIVE_BG_OPEN);
|
|
256375
|
+
return (jsxs(Collapsible, { open: open, onOpenChange: onOpenChange, className: "w-full", children: [jsx(CollapsibleTrigger, { asChild: true, children: jsxs("button", { type: "button", className: triggerClassName, children: [jsx(Icon, { className: "size-4 shrink-0", style: { color: PLATFORM_SIDEBAR_NAV_MUTED }, strokeWidth: 1.5 }), jsx("span", { className: "min-w-0 flex-1 truncate", children: menu.label }), open ? (jsx(ChevronDown, { className: "size-4 shrink-0 text-[#7d7e82]", "aria-hidden": true })) : (jsx(ChevronRight, { className: "size-4 shrink-0 text-[#7d7e82]", "aria-hidden": true }))] }) }), jsx(CollapsibleContent, { className: "overflow-hidden", children: jsx("div", { className: "mt-0.5 mr-1 ml-1.5 border-l-2 border-[#e2e8f0] pb-0.5 pl-2.5", children: jsx("ul", { className: "flex flex-col gap-0.5", role: "list", children: menu.items.map((item) => (jsx("li", { children: jsx(PlatformSidebarSubNavItem, { ...item, onItemSelect: onItemSelect }) }, item.id))) }) }) })] }));
|
|
256376
|
+
}
|
|
256377
|
+
|
|
256378
|
+
const DEFAULT_SUPPORT_URL = 'https://ibl.ai/docs';
|
|
256379
|
+
/**
|
|
256380
|
+
* The INVARIANT footer visibility rules, shared by every SPA:
|
|
256381
|
+
*
|
|
256382
|
+
* - Notifications: gated by the host-supplied user-type signal only —
|
|
256383
|
+
* regular users have notifications too.
|
|
256384
|
+
* - Live admins get the admin cluster narrowed by their RBAC platform
|
|
256385
|
+
* permissions (Invites, Management, Monetization) plus the ungated
|
|
256386
|
+
* Integrations and Advanced rows.
|
|
256387
|
+
* - Trial-gated non-admins (main/advertising tenants) and anonymous
|
|
256388
|
+
* users get the FULL admin cluster; the host's `onAction` handler is
|
|
256389
|
+
* expected to route clicks to the upgrade dialog / login instead of
|
|
256390
|
+
* the real surface.
|
|
256391
|
+
* - A genuine non-admin in an RBAC-enabled tenant sees only the rows
|
|
256392
|
+
* whose platform permission they actually hold. Integrations and
|
|
256393
|
+
* Advanced have no dedicated RBAC permission, so they stay
|
|
256394
|
+
* admin/trial/anonymous-only.
|
|
256395
|
+
*/
|
|
256396
|
+
function usePlatformSidebarFooterActions(config) {
|
|
256397
|
+
const t = useT();
|
|
256398
|
+
const { isAdmin, isLiveAdmin, showTrialGatedAdminMenu, showAnonymousAdminMenu, enableRbac, rbacPermissions, tenantKey, currentTenant, notificationsAllowed, invitesUserTypeAllowed, } = config;
|
|
256399
|
+
return React.useMemo(() => {
|
|
256400
|
+
var _a;
|
|
256401
|
+
const actions = [];
|
|
256402
|
+
if (notificationsAllowed) {
|
|
256403
|
+
actions.push({
|
|
256404
|
+
id: 'notifications',
|
|
256405
|
+
label: t('platformSidebar.notifications'),
|
|
256406
|
+
icon: Bell,
|
|
256407
|
+
});
|
|
256408
|
+
}
|
|
256409
|
+
const tenantKeyForRbac = (_a = currentTenant === null || currentTenant === void 0 ? void 0 : currentTenant.key) !== null && _a !== void 0 ? _a : tenantKey;
|
|
256410
|
+
const hasInviteUserPermission = checkRbacPermission(rbacPermissions, `/platforms/${tenantKeyForRbac}/#can_invite`, enableRbac);
|
|
256411
|
+
// Management surfaces a row when ANY of its sub-tab permissions
|
|
256412
|
+
// resolves true — matches the Admin component's `hasManagementPermissions`.
|
|
256413
|
+
const hasManagementPermissions = checkRbacPermission(rbacPermissions, `/platforms/${tenantKeyForRbac}/#can_manage_users`, enableRbac) ||
|
|
256414
|
+
checkRbacPermission(rbacPermissions, `/groups/#list`, enableRbac) ||
|
|
256415
|
+
checkRbacPermission(rbacPermissions, `/policies/#list`, enableRbac) ||
|
|
256416
|
+
checkRbacPermission(rbacPermissions, `/roles/#list`, enableRbac) ||
|
|
256417
|
+
checkRbacPermission(rbacPermissions, `/usergroups/#list|/platforms/${tenantKeyForRbac}/#can_invite`, enableRbac) ||
|
|
256418
|
+
checkRbacPermission(rbacPermissions, `/watchedgroups/#list`, enableRbac);
|
|
256419
|
+
const hasMonetizationPermission = checkRbacPermission(rbacPermissions, `/platforms/${tenantKeyForRbac}/#can_sell_items`, enableRbac);
|
|
256420
|
+
const canMonetize = !!(currentTenant === null || currentTenant === void 0 ? void 0 : currentTenant.enable_monetization) && hasMonetizationPermission;
|
|
256421
|
+
if (isLiveAdmin) {
|
|
256422
|
+
if (hasInviteUserPermission && invitesUserTypeAllowed) {
|
|
256423
|
+
actions.push({ id: 'invites', label: t('platformSidebar.invites'), icon: Mail });
|
|
256424
|
+
}
|
|
256425
|
+
if (hasManagementPermissions) {
|
|
256426
|
+
actions.push({
|
|
256427
|
+
id: 'management',
|
|
256428
|
+
label: t('platformSidebar.management'),
|
|
256429
|
+
icon: Users,
|
|
256430
|
+
});
|
|
256431
|
+
}
|
|
256432
|
+
actions.push({
|
|
256433
|
+
id: 'integrations',
|
|
256434
|
+
label: t('platformSidebar.integrations'),
|
|
256435
|
+
icon: KeyRound,
|
|
256436
|
+
});
|
|
256437
|
+
if (canMonetize) {
|
|
256438
|
+
actions.push({
|
|
256439
|
+
id: 'monetization',
|
|
256440
|
+
label: t('platformSidebar.monetization'),
|
|
256441
|
+
icon: Coins,
|
|
256442
|
+
});
|
|
256443
|
+
}
|
|
256444
|
+
actions.push({
|
|
256445
|
+
id: 'advanced',
|
|
256446
|
+
label: t('platformSidebar.advanced'),
|
|
256447
|
+
icon: Settings$1,
|
|
256448
|
+
});
|
|
256449
|
+
}
|
|
256450
|
+
else if (showTrialGatedAdminMenu || showAnonymousAdminMenu) {
|
|
256451
|
+
// Full admin cluster; the host's onAction routes these to the
|
|
256452
|
+
// upgrade dialog (trial users) or the auth SPA login (anonymous).
|
|
256453
|
+
actions.push({ id: 'invites', label: t('platformSidebar.invites'), icon: Mail });
|
|
256454
|
+
actions.push({
|
|
256455
|
+
id: 'management',
|
|
256456
|
+
label: t('platformSidebar.management'),
|
|
256457
|
+
icon: Users,
|
|
256458
|
+
});
|
|
256459
|
+
actions.push({
|
|
256460
|
+
id: 'integrations',
|
|
256461
|
+
label: t('platformSidebar.integrations'),
|
|
256462
|
+
icon: KeyRound,
|
|
256463
|
+
});
|
|
256464
|
+
actions.push({
|
|
256465
|
+
id: 'monetization',
|
|
256466
|
+
label: t('platformSidebar.monetization'),
|
|
256467
|
+
icon: Coins,
|
|
256468
|
+
});
|
|
256469
|
+
actions.push({
|
|
256470
|
+
id: 'advanced',
|
|
256471
|
+
label: t('platformSidebar.advanced'),
|
|
256472
|
+
icon: Settings$1,
|
|
256473
|
+
});
|
|
256474
|
+
}
|
|
256475
|
+
else if (!isAdmin && enableRbac) {
|
|
256476
|
+
// A GENUINE non-admin in an RBAC-enabled tenant sees ONLY the rows
|
|
256477
|
+
// whose platform permission they actually hold. The `enableRbac`
|
|
256478
|
+
// guard is required because `checkRbacPermission` returns true when
|
|
256479
|
+
// RBAC is off, which would otherwise expose these to every non-admin.
|
|
256480
|
+
if (hasInviteUserPermission) {
|
|
256481
|
+
actions.push({ id: 'invites', label: t('platformSidebar.invites'), icon: Mail });
|
|
256482
|
+
}
|
|
256483
|
+
if (hasManagementPermissions) {
|
|
256484
|
+
actions.push({
|
|
256485
|
+
id: 'management',
|
|
256486
|
+
label: t('platformSidebar.management'),
|
|
256487
|
+
icon: Users,
|
|
256488
|
+
});
|
|
256489
|
+
}
|
|
256490
|
+
if (canMonetize) {
|
|
256491
|
+
actions.push({
|
|
256492
|
+
id: 'monetization',
|
|
256493
|
+
label: t('platformSidebar.monetization'),
|
|
256494
|
+
icon: Coins,
|
|
256495
|
+
});
|
|
256496
|
+
}
|
|
256497
|
+
}
|
|
256498
|
+
return actions;
|
|
256499
|
+
}, [
|
|
256500
|
+
t,
|
|
256501
|
+
isAdmin,
|
|
256502
|
+
isLiveAdmin,
|
|
256503
|
+
showTrialGatedAdminMenu,
|
|
256504
|
+
showAnonymousAdminMenu,
|
|
256505
|
+
enableRbac,
|
|
256506
|
+
rbacPermissions,
|
|
256507
|
+
tenantKey,
|
|
256508
|
+
currentTenant,
|
|
256509
|
+
notificationsAllowed,
|
|
256510
|
+
invitesUserTypeAllowed,
|
|
256511
|
+
]);
|
|
256512
|
+
}
|
|
256513
|
+
function PlatformSidebarFooter({ collapsed, config, }) {
|
|
256514
|
+
var _a;
|
|
256515
|
+
const t = useT();
|
|
256516
|
+
const actions = usePlatformSidebarFooterActions(config);
|
|
256517
|
+
const supportUrl = (_a = config.supportUrl) !== null && _a !== void 0 ? _a : DEFAULT_SUPPORT_URL;
|
|
256518
|
+
if (collapsed) {
|
|
256519
|
+
return (jsxs("div", { className: "flex shrink-0 flex-col items-center gap-0.5 border-t border-[#e2e8f0] px-2 py-3", children: [actions.map((action) => {
|
|
256520
|
+
const Icon = action.icon;
|
|
256521
|
+
return (jsx(PlatformSidebarCollapsedLabelFlyout, { label: action.label, children: jsx("button", { type: "button", className: "inline-flex size-10 cursor-pointer items-center justify-center rounded-lg text-[#5f5f61] transition-colors hover:bg-[#f0f0f0]", "aria-label": action.label, onClick: () => config.onAction(action.id), children: jsx(Icon, { className: "size-4 shrink-0", strokeWidth: 1.5 }) }) }, action.id));
|
|
256522
|
+
}), jsx(PlatformSidebarCollapsedLabelFlyout, { label: t('platformSidebar.support'), children: jsx("a", { href: supportUrl, target: "_blank", rel: "noopener noreferrer", className: "inline-flex size-10 items-center justify-center rounded-lg text-[#5f5f61] transition-colors hover:bg-[#f0f0f0]", "aria-label": t('platformSidebar.support'), children: jsx(BookOpen, { className: "size-4 shrink-0", strokeWidth: 1.5 }) }) })] }));
|
|
256523
|
+
}
|
|
256524
|
+
return (jsxs("div", { className: "shrink-0 space-y-0.5 border-t border-[#e2e8f0] px-2 py-2", children: [actions.map((action) => {
|
|
256525
|
+
const Icon = action.icon;
|
|
256526
|
+
return (jsxs("button", { type: "button", className: "flex h-9 w-full min-w-0 cursor-pointer items-center gap-2 rounded-md px-2 text-left text-[14px] font-normal text-[#5f5f61] transition-colors hover:bg-[#f4f4f4]", onClick: () => config.onAction(action.id), children: [jsx(Icon, { className: "size-4 shrink-0", style: { color: PLATFORM_SIDEBAR_NAV_MUTED }, strokeWidth: 1.5 }), jsx("span", { className: "min-w-0 flex-1 truncate", children: action.label })] }, action.id));
|
|
256527
|
+
}), jsxs("a", { href: supportUrl, target: "_blank", rel: "noopener noreferrer", className: "flex h-9 w-full min-w-0 items-center gap-2 rounded-md px-2 text-left text-[14px] font-normal text-[#5f5f61] transition-colors hover:bg-[#f4f4f4]", children: [jsx(BookOpen, { className: "size-4 shrink-0", style: { color: PLATFORM_SIDEBAR_NAV_MUTED }, strokeWidth: 1.5 }), jsx("span", { className: "min-w-0 flex-1 truncate", children: t('platformSidebar.support') })] })] }));
|
|
256528
|
+
}
|
|
256529
|
+
|
|
256530
|
+
/**
|
|
256531
|
+
* Renders one of the organization-level tab components in its own
|
|
256532
|
+
* dialog — `Admin` (Users), `IntegrationsTab` (API), `BillingTab`,
|
|
256533
|
+
* `MonetizationTab`, `AdvancedTab` (Settings). Each sidebar footer
|
|
256534
|
+
* action opens this dialog with a different `tab`; the body switches
|
|
256535
|
+
* the component, so there's no shared tab rail and nothing to hide.
|
|
256536
|
+
*
|
|
256537
|
+
* `organization` doesn't have a sidebar footer entry today, but it's
|
|
256538
|
+
* defined for completeness so adding "Organization" later is a one-line
|
|
256539
|
+
* change.
|
|
256540
|
+
*/
|
|
256541
|
+
function PlatformAccountSheet({ tab, onClose, tenantKey, username, email, onInviteClick, mainPlatformKey, authUrl, currentSpa, platformBaseDomain, }) {
|
|
256542
|
+
const t = useT();
|
|
256543
|
+
const open = tab !== null;
|
|
256544
|
+
const accountTabTitles = {
|
|
256545
|
+
organization: t('platformSidebar.accountTabOrganization'),
|
|
256546
|
+
management: t('platformSidebar.management'),
|
|
256547
|
+
integrations: t('platformSidebar.integrations'),
|
|
256548
|
+
monetization: t('platformSidebar.monetization'),
|
|
256549
|
+
advanced: t('platformSidebar.advanced'),
|
|
256550
|
+
billing: t('platformSidebar.accountTabBilling'),
|
|
256551
|
+
};
|
|
256552
|
+
const accountTabDescriptions = {
|
|
256553
|
+
organization: t('platformSidebar.accountDescOrganization'),
|
|
256554
|
+
management: t('platformSidebar.accountDescManagement'),
|
|
256555
|
+
integrations: t('platformSidebar.accountDescIntegrations'),
|
|
256556
|
+
monetization: t('platformSidebar.accountDescMonetization'),
|
|
256557
|
+
advanced: t('platformSidebar.accountDescAdvanced'),
|
|
256558
|
+
billing: t('platformSidebar.accountDescBilling'),
|
|
256559
|
+
};
|
|
256560
|
+
return (jsx(Dialog, { open: open, onOpenChange: (o) => !o && onClose(), children: jsxs(DialogContent, { className: "mx-auto my-auto flex h-[90vh] w-[95vw] max-w-none flex-col justify-between gap-0 rounded-lg p-0 sm:max-w-7xl", children: [jsxs(DialogHeader, { className: "flex-shrink-0 border-b border-gray-200 p-4 pt-[30px]", children: [jsx(DialogTitle, { className: "text-lg font-medium text-gray-900 dark:text-gray-100", children: tab ? accountTabTitles[tab] : '' }), jsx(DialogDescription, { className: "text-sm leading-relaxed text-gray-600", children: tab ? accountTabDescriptions[tab] : '' })] }), jsxs("div", { className: "min-h-0 flex-1 overflow-y-auto p-6", children: [tab === 'management' && (jsx(Admin, { tenant: tenantKey, onInviteClick: onInviteClick,
|
|
256561
|
+
// RBAC is off for this entry point — admin users see every
|
|
256562
|
+
// sub-tab. Tenant-level access is already gated by the
|
|
256563
|
+
// sidebar footer visibility rules.
|
|
256564
|
+
hasUserTabPermission: true, hasGroupsTabPermission: true, hasRolesTabPermission: true, hasPoliciesTabPermission: true, hasTeamsTabPermission: true, hasAlertsTabPermission: true, hasInviteUserPermission: true, hasCreateTeamPermission: true, enableRbac: false, rbacPermissions: {} })), tab === 'integrations' && jsx(IntegrationsTab, { tenantKey: tenantKey, username: username }), tab === 'billing' && (jsx(BillingTab, { tenant: tenantKey, username: username, mainPlatformKey: mainPlatformKey, currentUserEmail: email })), tab === 'monetization' && jsx(MonetizationTab, { platformKey: tenantKey, authURL: authUrl }), tab === 'advanced' && (jsx(AdvancedTab, { platformKey: tenantKey, username: username, currentSPA: currentSpa, authURL: authUrl, currentPlatformBaseDomain: platformBaseDomain }))] })] }) }));
|
|
256565
|
+
}
|
|
256566
|
+
|
|
256567
|
+
/**
|
|
256568
|
+
* Cross-SPA sidebar shell.
|
|
256569
|
+
*
|
|
256570
|
+
* Invariant chrome (owned here): header with logo slot + collapse
|
|
256571
|
+
* toggle, the collapsed icon rail behavior, single-open accordion state
|
|
256572
|
+
* for sections, and the footer cluster (Notifications, Invites,
|
|
256573
|
+
* Management, Integrations, Monetization, Advanced, Support) with its
|
|
256574
|
+
* RBAC/admin visibility rules.
|
|
256575
|
+
*
|
|
256576
|
+
* Variable content (owned by the host SPA): the primary action button
|
|
256577
|
+
* (e.g. "New Chat") and the nav sections — declarative menus or fully
|
|
256578
|
+
* custom sections rendered through `PlatformSidebarSectionContext`.
|
|
256579
|
+
*/
|
|
256580
|
+
function PlatformSidebar({ logo, primaryAction, sections, footer, openSectionId, onOpenSectionChange, onAfterNav: onAfterNavProp, className, sidebarInnerClassName, }) {
|
|
256581
|
+
var _a;
|
|
256582
|
+
const t = useT();
|
|
256583
|
+
const { state, open, openMobile, setOpenMobile, toggleSidebar, isMobile } = useSidebar();
|
|
256584
|
+
const isExpanded = isMobile ? openMobile : open;
|
|
256585
|
+
const railCollapsed = !isMobile && !open;
|
|
256586
|
+
const onAfterNav = React.useCallback(() => {
|
|
256587
|
+
if (isMobile)
|
|
256588
|
+
setOpenMobile(false);
|
|
256589
|
+
onAfterNavProp === null || onAfterNavProp === void 0 ? void 0 : onAfterNavProp();
|
|
256590
|
+
}, [isMobile, setOpenMobile, onAfterNavProp]);
|
|
256591
|
+
// Single-open accordion for sections. Controlled when `openSectionId`
|
|
256592
|
+
// is provided, uncontrolled otherwise.
|
|
256593
|
+
const [internalOpenSection, setInternalOpenSection] = React.useState(null);
|
|
256594
|
+
const isControlled = openSectionId !== undefined;
|
|
256595
|
+
const openSection = isControlled ? openSectionId : internalOpenSection;
|
|
256596
|
+
const setOpenSection = React.useCallback((sectionId) => {
|
|
256597
|
+
if (!isControlled)
|
|
256598
|
+
setInternalOpenSection(sectionId);
|
|
256599
|
+
onOpenSectionChange === null || onOpenSectionChange === void 0 ? void 0 : onOpenSectionChange(sectionId);
|
|
256600
|
+
}, [isControlled, onOpenSectionChange]);
|
|
256601
|
+
const expandFromRail = React.useCallback((sectionId) => {
|
|
256602
|
+
toggleSidebar();
|
|
256603
|
+
setOpenSection(sectionId);
|
|
256604
|
+
}, [toggleSidebar, setOpenSection]);
|
|
256605
|
+
const sectionContext = React.useCallback((sectionId) => ({
|
|
256606
|
+
collapsed: railCollapsed,
|
|
256607
|
+
open: openSection === sectionId,
|
|
256608
|
+
onOpenChange: (o) => setOpenSection(o ? sectionId : null),
|
|
256609
|
+
expandFromRail: () => expandFromRail(sectionId),
|
|
256610
|
+
onAfterNav,
|
|
256611
|
+
}), [railCollapsed, openSection, setOpenSection, expandFromRail, onAfterNav]);
|
|
256612
|
+
const renderSection = (section) => {
|
|
256613
|
+
if (section.type === 'divider') {
|
|
256614
|
+
return jsx(PlatformSidebarNavDivider, {}, section.id);
|
|
256615
|
+
}
|
|
256616
|
+
if (section.type === 'custom') {
|
|
256617
|
+
return (jsx(React.Fragment, { children: section.render(sectionContext(section.id)) }, section.id));
|
|
256618
|
+
}
|
|
256619
|
+
if (section.menu.items.length === 0)
|
|
256620
|
+
return null;
|
|
256621
|
+
const ctx = sectionContext(section.menu.id);
|
|
256622
|
+
return (jsx(PlatformSidebarNavSection, { collapsed: railCollapsed, menu: section.menu, open: ctx.open, onOpenChange: ctx.onOpenChange, onItemSelect: section.onItemSelect, onCollapsedIconClick: railCollapsed ? ctx.expandFromRail : undefined }, section.menu.id));
|
|
256623
|
+
};
|
|
256624
|
+
const PrimaryActionIcon = (_a = primaryAction === null || primaryAction === void 0 ? void 0 : primaryAction.icon) !== null && _a !== void 0 ? _a : SquarePen;
|
|
256625
|
+
return (jsx(PlatformSidebarNavCallbackProvider, { value: { onAfterNav }, children: jsx(Sidebar, { collapsible: "icon", variant: "sidebar", className: cn('flex flex-col border-r border-[#e9e9ea]', className), sidebarInnerClassName: sidebarInnerClassName !== null && sidebarInnerClassName !== void 0 ? sidebarInnerClassName : 'bg-[#fafafa]', children: jsxs("aside", { "data-state": state, className: cn('flex h-full flex-col', railCollapsed ? 'w-[65px]' : 'w-full'), children: [jsx("div", { className: cn('shrink-0', railCollapsed ? 'px-2 pt-[18px] pb-[25px]' : 'px-[10px] py-[10px]'), children: jsxs("div", { className: cn('flex items-center gap-2 font-sans', railCollapsed ? 'justify-center px-0' : 'px-1'), children: [!railCollapsed && (jsxs(Fragment$1, { children: [jsx("span", { className: "size-7 shrink-0", "aria-hidden": true }), jsx("div", { className: "flex min-w-0 flex-1 items-center justify-center", children: logo })] })), jsx(PlatformSidebarCollapsedLabelFlyout, { label: isExpanded
|
|
256626
|
+
? t('platformSidebar.collapseSidebar')
|
|
256627
|
+
: t('platformSidebar.expandSidebar'), children: jsx("button", { type: "button", onClick: toggleSidebar, className: "inline-flex size-7 shrink-0 cursor-pointer items-center justify-center rounded-md font-sans text-[#7d7e82] transition-colors hover:bg-[#f0f0f0]", "aria-label": isExpanded
|
|
256628
|
+
? t('platformSidebar.collapseSidebar')
|
|
256629
|
+
: t('platformSidebar.expandSidebar'), "aria-expanded": isExpanded, children: jsx("svg", { width: 20, height: 20, viewBox: "0 0 20 20", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", className: "shrink-0", "aria-hidden": true, children: jsx("path", { d: "M16.5 4A1.5 1.5 0 0 1 18 5.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 2 14.5v-9A1.5 1.5 0 0 1 3.5 4zM7 15h9.5a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5H7zM3.5 5a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5H6V5z" }) }) }) })] }) }), railCollapsed ? (jsxs("nav", { className: "flex min-h-0 flex-1 flex-col items-center gap-1 overflow-y-auto px-2 pt-1 pb-2", "aria-label": t('platformSidebar.mainNavigation'), children: [primaryAction && (jsx(PlatformSidebarCollapsedLabelFlyout, { label: primaryAction.label, children: jsx("button", { type: "button", onClick: primaryAction.onClick, className: "text-foreground inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-[8px] border border-[#e0e0e2] bg-white transition-colors hover:bg-[#f8f8f9]", "aria-label": primaryAction.label, children: jsx(PrimaryActionIcon, { className: "size-4 shrink-0", strokeWidth: 1.5 }) }) })), sections.map(renderSection)] })) : (jsx("nav", { className: "min-h-0 flex-1 overflow-y-auto px-2 pt-1 pb-2", "aria-label": t('platformSidebar.mainNavigation'), children: jsxs("div", { className: "space-y-0.5", children: [primaryAction && (jsx("div", { className: "px-0 pb-0.5", children: jsxs("button", { type: "button", onClick: primaryAction.onClick, className: "inline-flex h-9 w-full cursor-pointer items-center justify-start gap-2 rounded-[8px] border border-[#e0e0e2] bg-white px-2 text-[14px] font-normal text-[#687482] antialiased transition-colors hover:bg-[#f8f8f9] active:bg-[#f2f2f3]", children: [jsx(PrimaryActionIcon, { className: "size-4 shrink-0", strokeWidth: 1.5, "aria-hidden": true }), jsx("span", { children: primaryAction.label })] }) })), sections.map(renderSection)] }) })), footer && jsx(PlatformSidebarFooter, { collapsed: railCollapsed, config: footer })] }) }) }));
|
|
256630
|
+
}
|
|
256631
|
+
|
|
255518
256632
|
function useTimeTracker(config) {
|
|
255519
256633
|
var _a;
|
|
255520
|
-
const router = useRouter();
|
|
256634
|
+
const router = useRouter$1();
|
|
255521
256635
|
const trackerRef = useRef(null);
|
|
255522
256636
|
const enabledRef = useRef((_a = config.enabled) !== null && _a !== void 0 ? _a : true);
|
|
255523
256637
|
const getCurrentUrl = useCallback(() => {
|
|
@@ -256566,8 +257680,8 @@ const CourseContentLayout = ({ courseId, isPlatformAdmin, currentTenant, tabHref
|
|
|
256566
257680
|
}, children: children }) })] })] })] }) }));
|
|
256567
257681
|
};
|
|
256568
257682
|
|
|
256569
|
-
const CustomSwitch = React.forwardRef(({ className, checked, onCheckedChange, ...props }, ref) => (jsx(Root$
|
|
256570
|
-
CustomSwitch.displayName = Root$
|
|
257683
|
+
const CustomSwitch = React.forwardRef(({ className, checked, onCheckedChange, ...props }, ref) => (jsx(Root$c, { checked: checked, onCheckedChange: onCheckedChange, className: cn('peer focus-visible:ring-ring focus-visible:ring-offset-background inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-blue-500 data-[state=unchecked]:bg-gray-200', className), ...props, ref: ref, children: jsx(Thumb, { className: cn('pointer-events-none block h-5 w-5 rounded-full bg-white shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0') }) })));
|
|
257684
|
+
CustomSwitch.displayName = Root$c.displayName;
|
|
256571
257685
|
|
|
256572
257686
|
/**
|
|
256573
257687
|
* Label contract for the Settings tab and its two sub-modals.
|
|
@@ -321530,5 +322644,5 @@ var index_es = /*#__PURE__*/Object.freeze({
|
|
|
321530
322644
|
vectorsRatio: vectorsRatio
|
|
321531
322645
|
});
|
|
321532
322646
|
|
|
321533
|
-
export { AGENT_ACCESS_TAB_LABELS, AGENT_API_TAB_LABELS, AGENT_DATASETS_TAB_LABELS, AGENT_DISCLAIMERS_TAB_LABELS, AGENT_EMBED_TAB_LABELS, AGENT_HISTORY_TAB_LABELS, AGENT_LLM_TAB_LABELS, AGENT_LTI_TAB_LABELS, AGENT_MEMORY_TAB_LABELS, AGENT_PICKER_LABELS, AGENT_PRIVACY_TAB_LABELS, AGENT_PROMPTS_TAB_LABELS, AGENT_SAFETY_TAB_LABELS, AGENT_SCREENSHARE_TAB_LABELS, AGENT_SEARCH_LABELS, AGENT_SETTINGS_TAB_LABELS, AGENT_TASKS_TAB_LABELS, AGENT_TOOLS_TAB_LABELS, AGENT_VOICE_TAB_LABELS, Account, AgentAccessTab, AgentApiTab, AgentCard, AgentDatasetsTab, AgentDisclaimersTab, AgentEmbedTab, AgentEmptyState, AgentHistoryTab, AgentLLMTab, AgentLtiTab, AgentMemoryTab, AgentPrivacyTab, AgentPromptsTab, AgentSafetyTab, AgentScreenShareTab, AgentSearch, AgentSearchFilters, AgentSearchInput, AgentSettingsProvider, AgentSettingsTab, AgentTasksTab, AgentToolsTab, AgentVoiceTab, AppSidebar, CATALOGS, Chat, ClientErrorPage, ConversationStarters$1 as ConversationStarters, CopyButton, CopyMentorModal, CourseBox, CourseContentLayout, CourseContentTabPage, CreatePathwayModal, CredentialDetailModal, CredentialMiniBox, DEFAULT_LOCALE, DeleteMentorModal, EMPTY_PROGRAM_SETTINGS_FORM, EdxIframe, ErrorPage, GreetingMethod, McpTab, MediaBox, MentorSelectionGrid, NavBar, OrganizationTab, PathwayDetailModal, ProfileInfoCards, ProfileTabs, ProgramDetailModal, ProjectsSidebarDropdown, SUPPORTED_LOCALES, SidebarInset, SidebarProvider, SidebarTrigger, SsoLogin, StarButton, UserProfileDropdown, UserProfileModal, WebContainersI18nProvider, formatDateString, getCatalog, getLLMProviderDetails, initializeLocalStorageWithObject, isValidLocale, resolveAgentPickerLabels, resolveAgentSearchLabels, resolveSettingsTabLabels, useAgentSearch, useAgentSearchWithPagination, useAgentSettings, useAgentStar, useGetChatDetails, useSidebar, useT, useTimeTracker, useWebContainersI18n, useWebContainersLocale };
|
|
322647
|
+
export { AGENT_ACCESS_TAB_LABELS, AGENT_API_TAB_LABELS, AGENT_DATASETS_TAB_LABELS, AGENT_DISCLAIMERS_TAB_LABELS, AGENT_EMBED_TAB_LABELS, AGENT_HISTORY_TAB_LABELS, AGENT_LLM_TAB_LABELS, AGENT_LTI_TAB_LABELS, AGENT_MEMORY_TAB_LABELS, AGENT_PICKER_LABELS, AGENT_PRIVACY_TAB_LABELS, AGENT_PROMPTS_TAB_LABELS, AGENT_SAFETY_TAB_LABELS, AGENT_SCREENSHARE_TAB_LABELS, AGENT_SEARCH_LABELS, AGENT_SETTINGS_TAB_LABELS, AGENT_TASKS_TAB_LABELS, AGENT_TOOLS_TAB_LABELS, AGENT_VOICE_TAB_LABELS, Account, AgentAccessTab, AgentApiTab, AgentCard, AgentDatasetsTab, AgentDisclaimersTab, AgentEmbedTab, AgentEmptyState, AgentHistoryTab, AgentLLMTab, AgentLtiTab, AgentMemoryTab, AgentPrivacyTab, AgentPromptsTab, AgentSafetyTab, AgentScreenShareTab, AgentSearch, AgentSearchFilters, AgentSearchInput, AgentSettingsProvider, AgentSettingsTab, AgentTasksTab, AgentToolsTab, AgentVoiceTab, AppSidebar, CATALOGS, Chat, ClientErrorPage, ConversationStarters$1 as ConversationStarters, CopyButton, CopyMentorModal, CourseBox, CourseContentLayout, CourseContentTabPage, CreatePathwayModal, CredentialDetailModal, CredentialMiniBox, DEFAULT_LOCALE, DeleteMentorModal, EMPTY_PROGRAM_SETTINGS_FORM, EdxIframe, ErrorPage, GreetingMethod, McpTab, MediaBox, MentorSelectionGrid, NavBar, OrganizationTab, PLATFORM_SIDEBAR_FLYOUT_ITEM_COLOR, PLATFORM_SIDEBAR_FLYOUT_TITLE_COLOR, PLATFORM_SIDEBAR_NAV_ACTIVE_BG_OPEN, PLATFORM_SIDEBAR_NAV_MUTED, PathwayDetailModal, PlatformAccountSheet, PlatformSidebar, PlatformSidebarCollapsedLabelFlyout, PlatformSidebarCollapsedNavFlyout, PlatformSidebarFooter, PlatformSidebarNavDivider, PlatformSidebarNavSection, PlatformSidebarSubNavItem, ProfileInfoCards, ProfileTabs, ProgramDetailModal, ProjectsSidebarDropdown, SUPPORTED_LOCALES, SidebarInset, SidebarProvider, SidebarTrigger, SsoLogin, StarButton, UserProfileDropdown, UserProfileModal, WebContainersI18nProvider, formatDateString, getCatalog, getLLMProviderDetails, initializeLocalStorageWithObject, isValidLocale, resolveAgentPickerLabels, resolveAgentSearchLabels, resolveSettingsTabLabels, useAgentSearch, useAgentSearchWithPagination, useAgentSettings, useAgentStar, useGetChatDetails, usePlatformSidebarFooterActions, usePlatformSidebarNavCallback, useSidebar, useT, useTimeTracker, useWebContainersI18n, useWebContainersLocale };
|
|
321534
322648
|
//# sourceMappingURL=index.esm.js.map
|