@refineui/react 0.0.10 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +272 -153
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +260 -141
- package/dist/index.js.map +1 -1
- package/dist/spec/contract-index.json +1 -1
- package/dist/spec/token-graph.json +2 -22
- package/dist/spec/token-trace-v2.json +7 -19
- package/package.json +1 -1
- package/refineui.css +34 -11
package/dist/index.js
CHANGED
|
@@ -140,16 +140,16 @@ var componentColorTokens = {
|
|
|
140
140
|
},
|
|
141
141
|
tooltip: {
|
|
142
142
|
default: {
|
|
143
|
-
/**
|
|
144
|
-
background: semanticToken("
|
|
143
|
+
/** Frosted floating panel — blur is applied by refineui.css */
|
|
144
|
+
background: semanticToken("surfaceFrosted"),
|
|
145
145
|
foreground: semanticToken("foregroundPrimary"),
|
|
146
146
|
border: semanticToken("borderDefault")
|
|
147
147
|
}
|
|
148
148
|
},
|
|
149
149
|
popover: {
|
|
150
150
|
default: {
|
|
151
|
-
/**
|
|
152
|
-
background: semanticToken("
|
|
151
|
+
/** Frosted floating panel — blur is applied by refineui.css */
|
|
152
|
+
background: semanticToken("surfaceFrosted"),
|
|
153
153
|
foreground: semanticToken("foregroundPrimary"),
|
|
154
154
|
border: semanticToken("borderDefault")
|
|
155
155
|
},
|
|
@@ -9518,8 +9518,12 @@ var menuStyles = {
|
|
|
9518
9518
|
row: "flex items-center gap-refineui-size-x-small",
|
|
9519
9519
|
iconWrap: "inline-flex shrink-0 items-center justify-center text-current [&>span]:leading-none",
|
|
9520
9520
|
textCol: "flex min-w-0 flex-1 flex-col gap-refineui-size-xxx-small px-refineui-size-xxx-small",
|
|
9521
|
-
|
|
9522
|
-
|
|
9521
|
+
/** Preserve labels and supporting copy by wrapping within the shared panel width. */
|
|
9522
|
+
title: clsx75(componentTextClass(componentTypographyTokens.menu.item), "break-words whitespace-normal"),
|
|
9523
|
+
description: clsx75(
|
|
9524
|
+
componentTextClass(componentTypographyTokens.menu.description),
|
|
9525
|
+
"break-words whitespace-normal"
|
|
9526
|
+
),
|
|
9523
9527
|
descriptionEnabled: "text-refineui-alias-foreground-tertiary",
|
|
9524
9528
|
descriptionDisabled: "text-refineui-alias-foreground-disabled",
|
|
9525
9529
|
rightWrap: "flex shrink-0 items-center gap-refineui-size-x-small",
|
|
@@ -9992,7 +9996,7 @@ function MenuSubContent({ className, children, style, ...props }) {
|
|
|
9992
9996
|
const [side, setSide] = useState17("right");
|
|
9993
9997
|
const gapPx = parseCssPx(spacings3.sizeXXXSmall, 2);
|
|
9994
9998
|
const z = (Number.parseInt(String(zIndex2.zIndexMessages), 10) || 1e4) + 100;
|
|
9995
|
-
const defaultW = parseCssPx(componentSizes2.menuPanelWidth,
|
|
9999
|
+
const defaultW = parseCssPx(componentSizes2.menuPanelWidth, 200);
|
|
9996
10000
|
const setPanelEl = useCallback13(
|
|
9997
10001
|
(el) => {
|
|
9998
10002
|
panelRef.current = el;
|
|
@@ -10100,7 +10104,8 @@ import {
|
|
|
10100
10104
|
useRef as useRef15,
|
|
10101
10105
|
useState as useState18
|
|
10102
10106
|
} from "react";
|
|
10103
|
-
import {
|
|
10107
|
+
import { createPortal as createPortal6 } from "react-dom";
|
|
10108
|
+
import { iconSizes as iconSizes16, semanticInteraction as semanticInteraction6, spacings as spacings4, zIndex as zIndex3 } from "@refineui/tokens";
|
|
10104
10109
|
import { motionMsToNumber as motionMsToNumber4 } from "@refineui/utilities/animation";
|
|
10105
10110
|
|
|
10106
10111
|
// src/components/NavigationMenu/style.ts
|
|
@@ -10108,34 +10113,34 @@ import { clsx as clsx77 } from "clsx";
|
|
|
10108
10113
|
var topLevelItem = clsx77(
|
|
10109
10114
|
componentTextClass(componentTypographyTokens.navigationMenu.trigger),
|
|
10110
10115
|
"box-border inline-flex h-refineui-button-min-height-md min-w-refineui-navigation-menu-item-min-width cursor-pointer items-center justify-center gap-refineui-size-x-small",
|
|
10111
|
-
"rounded-refineui-large border-none bg-transparent px-refineui-size-medium py-refineui-size-x-small",
|
|
10116
|
+
"rounded-refineui-x-large border-none bg-transparent px-refineui-size-medium py-refineui-size-x-small",
|
|
10112
10117
|
"text-refineui-alias-foreground-tertiary outline-none leading-none",
|
|
10113
|
-
"transition-[color,background-color] duration-[var(--refineui-motion-duration-fast)]"
|
|
10118
|
+
"transition-[color,background-color,box-shadow] duration-[var(--refineui-motion-duration-fast)] ease-[var(--refineui-motion-easing-ease-out)]"
|
|
10114
10119
|
);
|
|
10115
10120
|
var chevron = clsx77(
|
|
10116
10121
|
"shrink-0 transition-transform duration-[var(--refineui-motion-duration-fast)] ease-[var(--refineui-motion-easing-ease-out)]"
|
|
10117
10122
|
);
|
|
10118
10123
|
var navigationMenuStyles = {
|
|
10119
10124
|
root: "relative isolate z-refineui-messages flex w-full max-w-max items-center",
|
|
10120
|
-
list: "relative m-0 flex list-none flex-wrap items-center gap-refineui-size-
|
|
10125
|
+
list: "relative m-0 flex list-none flex-wrap items-center gap-refineui-size-xxx-small p-0",
|
|
10121
10126
|
item: "relative inline-flex items-center",
|
|
10122
10127
|
trigger: clsx77(topLevelItem, "m-0 appearance-none font-inherit"),
|
|
10123
|
-
triggerOpen: "text-refineui-alias-foreground-primary",
|
|
10128
|
+
triggerOpen: "bg-refineui-alias-background-primary-hover text-refineui-alias-foreground-primary",
|
|
10124
10129
|
triggerDisabled: "cursor-not-allowed text-refineui-alias-foreground-disabled",
|
|
10125
10130
|
chevron,
|
|
10126
10131
|
chevronOpen: "rotate-180",
|
|
10127
10132
|
content: clsx77(
|
|
10128
10133
|
/** Flush under trigger so pointer does not leave the item while moving into the panel. */
|
|
10129
10134
|
"absolute start-0 top-full z-refineui-messages pt-refineui-size-xx-small",
|
|
10130
|
-
"box-border min-w-refineui-menu-panel-width",
|
|
10135
|
+
"box-border min-w-refineui-navigation-menu-panel-width",
|
|
10131
10136
|
"outline-none"
|
|
10132
10137
|
),
|
|
10133
10138
|
contentPanel: clsx77(
|
|
10134
|
-
"box-border overflow-hidden rounded-refineui-large border-refineui-hairline border-refineui-alias-border-default",
|
|
10135
|
-
"
|
|
10139
|
+
"box-border flex flex-col gap-px overflow-hidden rounded-refineui-xx-large border-refineui-hairline border-refineui-alias-border-default",
|
|
10140
|
+
"p-refineui-size-xx-small shadow-refineui-2"
|
|
10136
10141
|
),
|
|
10137
10142
|
link: clsx77(topLevelItem, "no-underline"),
|
|
10138
|
-
linkActive: "text-refineui-alias-foreground-primary",
|
|
10143
|
+
linkActive: "bg-refineui-alias-background-primary-hover text-refineui-alias-foreground-primary",
|
|
10139
10144
|
linkDisabled: "cursor-not-allowed text-refineui-alias-foreground-disabled",
|
|
10140
10145
|
/** Dense row inside a content panel — same density as Menu item. */
|
|
10141
10146
|
linkInContent: clsx77(
|
|
@@ -10143,7 +10148,7 @@ var navigationMenuStyles = {
|
|
|
10143
10148
|
"box-border flex w-full cursor-pointer items-center gap-refineui-size-x-small",
|
|
10144
10149
|
"rounded-refineui-large border-none bg-transparent p-refineui-size-x-small text-start no-underline outline-none",
|
|
10145
10150
|
"text-refineui-alias-foreground-primary",
|
|
10146
|
-
"transition-[background-color,color] duration-[var(--refineui-motion-duration-fast)]"
|
|
10151
|
+
"transition-[background-color,color] duration-[var(--refineui-motion-duration-fast)] ease-[var(--refineui-motion-easing-ease-out)]"
|
|
10147
10152
|
),
|
|
10148
10153
|
/** Optional — prefer omitting; kept for API compatibility. */
|
|
10149
10154
|
indicator: "hidden"
|
|
@@ -10195,6 +10200,7 @@ function NavigationMenu({
|
|
|
10195
10200
|
const [value, setValue] = useControllableOpen(valueControlled, defaultValue, onValueChange);
|
|
10196
10201
|
const listRef = useRef15(null);
|
|
10197
10202
|
const triggerMapRef = useRef15(/* @__PURE__ */ new Map());
|
|
10203
|
+
const contentMapRef = useRef15(/* @__PURE__ */ new Map());
|
|
10198
10204
|
const openTimerRef = useRef15(null);
|
|
10199
10205
|
const closeTimerRef = useRef15(null);
|
|
10200
10206
|
const rootRef = useRef15(null);
|
|
@@ -10253,12 +10259,25 @@ function NavigationMenu({
|
|
|
10253
10259
|
triggerMapRef.current.delete(itemValue);
|
|
10254
10260
|
}
|
|
10255
10261
|
}, []);
|
|
10262
|
+
const registerContent = useCallback14((itemValue, el) => {
|
|
10263
|
+
if (el) {
|
|
10264
|
+
contentMapRef.current.set(itemValue, el);
|
|
10265
|
+
} else {
|
|
10266
|
+
contentMapRef.current.delete(itemValue);
|
|
10267
|
+
}
|
|
10268
|
+
}, []);
|
|
10269
|
+
const isContentTarget = useCallback14((itemValue, target) => {
|
|
10270
|
+
return target instanceof Node && contentMapRef.current.get(itemValue)?.contains(target) === true;
|
|
10271
|
+
}, []);
|
|
10272
|
+
const isMenuTarget = useCallback14((target) => {
|
|
10273
|
+
if (!(target instanceof Node)) return false;
|
|
10274
|
+
return rootRef.current?.contains(target) === true || Array.from(contentMapRef.current.values()).some((content) => content.contains(target));
|
|
10275
|
+
}, []);
|
|
10256
10276
|
useEffect13(() => () => clearTimers(), [clearTimers]);
|
|
10257
10277
|
useEffect13(() => {
|
|
10258
10278
|
if (!value) return;
|
|
10259
10279
|
const onPointerDown = (event) => {
|
|
10260
|
-
|
|
10261
|
-
if (rootRef.current?.contains(target)) return;
|
|
10280
|
+
if (isMenuTarget(event.target)) return;
|
|
10262
10281
|
setValueSafe("");
|
|
10263
10282
|
};
|
|
10264
10283
|
const onKeyDown = (event) => {
|
|
@@ -10274,7 +10293,7 @@ function NavigationMenu({
|
|
|
10274
10293
|
document.removeEventListener("pointerdown", onPointerDown);
|
|
10275
10294
|
document.removeEventListener("keydown", onKeyDown);
|
|
10276
10295
|
};
|
|
10277
|
-
}, [setValueSafe, value]);
|
|
10296
|
+
}, [isMenuTarget, setValueSafe, value]);
|
|
10278
10297
|
const ctx = useMemo14(
|
|
10279
10298
|
() => ({
|
|
10280
10299
|
value,
|
|
@@ -10285,9 +10304,23 @@ function NavigationMenu({
|
|
|
10285
10304
|
skipDelayDuration,
|
|
10286
10305
|
listRef,
|
|
10287
10306
|
registerTrigger,
|
|
10307
|
+
registerContent,
|
|
10308
|
+
isContentTarget,
|
|
10309
|
+
isMenuTarget,
|
|
10288
10310
|
isInsideContent: false
|
|
10289
10311
|
}),
|
|
10290
|
-
[
|
|
10312
|
+
[
|
|
10313
|
+
close,
|
|
10314
|
+
delayDuration,
|
|
10315
|
+
isContentTarget,
|
|
10316
|
+
isMenuTarget,
|
|
10317
|
+
openItem,
|
|
10318
|
+
registerContent,
|
|
10319
|
+
registerTrigger,
|
|
10320
|
+
setValueSafe,
|
|
10321
|
+
skipDelayDuration,
|
|
10322
|
+
value
|
|
10323
|
+
]
|
|
10291
10324
|
);
|
|
10292
10325
|
return /* @__PURE__ */ jsx59(NavigationMenuContext.Provider, { value: ctx, children: /* @__PURE__ */ jsx59(
|
|
10293
10326
|
"nav",
|
|
@@ -10376,6 +10409,7 @@ function NavigationMenuItem({
|
|
|
10376
10409
|
onPointerLeave: (event) => {
|
|
10377
10410
|
onPointerLeave?.(event);
|
|
10378
10411
|
if (event.defaultPrevented) return;
|
|
10412
|
+
if (menu.isContentTarget(value, event.relatedTarget)) return;
|
|
10379
10413
|
menu.close();
|
|
10380
10414
|
},
|
|
10381
10415
|
...props,
|
|
@@ -10464,12 +10498,22 @@ function NavigationMenuContent({
|
|
|
10464
10498
|
children,
|
|
10465
10499
|
className,
|
|
10466
10500
|
onKeyDown,
|
|
10501
|
+
style,
|
|
10467
10502
|
...props
|
|
10468
10503
|
}) {
|
|
10469
10504
|
const menu = useNavigationMenu("NavigationMenuContent");
|
|
10470
10505
|
const item = useNavigationMenuItem("NavigationMenuContent");
|
|
10471
10506
|
const [shouldRender, setShouldRender] = useState18(item.open);
|
|
10472
10507
|
const [isClosing, setIsClosing] = useState18(false);
|
|
10508
|
+
const contentRef = useRef15(null);
|
|
10509
|
+
const [positionStyle, setPositionStyle] = useState18(null);
|
|
10510
|
+
const setContentRef = useCallback14(
|
|
10511
|
+
(el) => {
|
|
10512
|
+
contentRef.current = el;
|
|
10513
|
+
menu.registerContent(item.value, el);
|
|
10514
|
+
},
|
|
10515
|
+
[item.value, menu]
|
|
10516
|
+
);
|
|
10473
10517
|
useEffect13(() => {
|
|
10474
10518
|
if (item.open) {
|
|
10475
10519
|
setShouldRender(true);
|
|
@@ -10484,20 +10528,58 @@ function NavigationMenuContent({
|
|
|
10484
10528
|
}, motionMsToNumber4(semanticInteraction6.duration.fast));
|
|
10485
10529
|
return () => window.clearTimeout(timeout);
|
|
10486
10530
|
}, [item.open, shouldRender]);
|
|
10531
|
+
useIsomorphicLayoutEffect5(() => {
|
|
10532
|
+
if (!shouldRender || !item.open || typeof document === "undefined") return;
|
|
10533
|
+
const trigger = document.getElementById(item.triggerId);
|
|
10534
|
+
if (!trigger) return;
|
|
10535
|
+
const updatePosition = () => {
|
|
10536
|
+
const content2 = contentRef.current;
|
|
10537
|
+
if (!content2) return;
|
|
10538
|
+
const triggerRect = trigger.getBoundingClientRect();
|
|
10539
|
+
const contentWidth = content2.offsetWidth;
|
|
10540
|
+
const edge = Number.parseFloat(spacings4.sizeMedium) || 8;
|
|
10541
|
+
const left = Math.max(
|
|
10542
|
+
edge,
|
|
10543
|
+
Math.min(triggerRect.left, window.innerWidth - contentWidth - edge)
|
|
10544
|
+
);
|
|
10545
|
+
setPositionStyle({
|
|
10546
|
+
position: "fixed",
|
|
10547
|
+
top: triggerRect.bottom,
|
|
10548
|
+
left,
|
|
10549
|
+
zIndex: Number.parseInt(String(zIndex3.zIndexMessages), 10) || 1e4
|
|
10550
|
+
});
|
|
10551
|
+
};
|
|
10552
|
+
updatePosition();
|
|
10553
|
+
const frame = requestAnimationFrame(updatePosition);
|
|
10554
|
+
window.addEventListener("resize", updatePosition);
|
|
10555
|
+
const unsubscribe = subscribeScrollAndScrollableAncestors2(trigger, updatePosition);
|
|
10556
|
+
return () => {
|
|
10557
|
+
cancelAnimationFrame(frame);
|
|
10558
|
+
window.removeEventListener("resize", updatePosition);
|
|
10559
|
+
unsubscribe();
|
|
10560
|
+
};
|
|
10561
|
+
}, [item.open, item.triggerId, shouldRender]);
|
|
10487
10562
|
const contentCtx = useMemo14(
|
|
10488
10563
|
() => ({ ...menu, isInsideContent: true }),
|
|
10489
10564
|
[menu]
|
|
10490
10565
|
);
|
|
10491
10566
|
if (!shouldRender) return null;
|
|
10492
|
-
|
|
10567
|
+
const content = /* @__PURE__ */ jsx59(NavigationMenuContext.Provider, { value: contentCtx, children: /* @__PURE__ */ jsx59(
|
|
10493
10568
|
"div",
|
|
10494
10569
|
{
|
|
10570
|
+
ref: setContentRef,
|
|
10495
10571
|
id: item.contentId,
|
|
10496
10572
|
role: "region",
|
|
10497
10573
|
"aria-labelledby": item.triggerId,
|
|
10498
10574
|
"data-refineui": "navigation-menu-content",
|
|
10499
10575
|
"data-state": isClosing || !item.open ? "closed" : "open",
|
|
10500
10576
|
className: clsx78(navigationMenuStyles.content, className),
|
|
10577
|
+
style: { ...positionStyle, ...style },
|
|
10578
|
+
onPointerEnter: () => menu.openItem(item.value, { immediate: true }),
|
|
10579
|
+
onPointerLeave: (event) => {
|
|
10580
|
+
if (menu.isMenuTarget(event.relatedTarget)) return;
|
|
10581
|
+
menu.close();
|
|
10582
|
+
},
|
|
10501
10583
|
onKeyDown: (event) => {
|
|
10502
10584
|
onKeyDown?.(event);
|
|
10503
10585
|
if (event.defaultPrevented) return;
|
|
@@ -10510,6 +10592,7 @@ function NavigationMenuContent({
|
|
|
10510
10592
|
children: /* @__PURE__ */ jsx59("div", { "data-refineui": "navigation-menu-content-panel", className: navigationMenuStyles.contentPanel, children })
|
|
10511
10593
|
}
|
|
10512
10594
|
) });
|
|
10595
|
+
return typeof document === "undefined" ? content : createPortal6(content, document.body);
|
|
10513
10596
|
}
|
|
10514
10597
|
function NavigationMenuLink({
|
|
10515
10598
|
children,
|
|
@@ -11243,7 +11326,7 @@ import {
|
|
|
11243
11326
|
useRef as useRef17,
|
|
11244
11327
|
useState as useState21
|
|
11245
11328
|
} from "react";
|
|
11246
|
-
import { spacings as
|
|
11329
|
+
import { spacings as spacings5, strokeWidths as strokeWidths2 } from "@refineui/tokens";
|
|
11247
11330
|
import { resolveColorTokenValue as resolveColorTokenValue10 } from "@refineui/utilities/color";
|
|
11248
11331
|
import { Slot as Slot4, getMergeableTriggerChild as getMergeableTriggerChild3 } from "@refineui/utilities/react";
|
|
11249
11332
|
|
|
@@ -11290,11 +11373,11 @@ var BEAK_W = foundationSizes.foundationSize160;
|
|
|
11290
11373
|
var BEAK_H = foundationSizes.foundationSize80;
|
|
11291
11374
|
var BEAK_OFFSET = foundationSizes.foundationSize80;
|
|
11292
11375
|
var BEAK_BORDER_OVERLAP = strokeWidths2.strokeWidthThin;
|
|
11293
|
-
var POPOVER_GAP =
|
|
11376
|
+
var POPOVER_GAP = spacings5.sizeMedium;
|
|
11294
11377
|
function beakWrapperStyle(placement, align) {
|
|
11295
11378
|
const insetStart = componentSizes2.popoverBeakInsetFromStartEdge;
|
|
11296
11379
|
const insetEnd = componentSizes2.popoverBeakInsetFromEndEdge;
|
|
11297
|
-
const edge =
|
|
11380
|
+
const edge = spacings5.sizeMedium;
|
|
11298
11381
|
const overlapOffset = `calc(-1 * ${BEAK_OFFSET} + ${BEAK_BORDER_OVERLAP})`;
|
|
11299
11382
|
switch (placement) {
|
|
11300
11383
|
case "bottom":
|
|
@@ -11523,7 +11606,7 @@ function PopoverContent({
|
|
|
11523
11606
|
style: {
|
|
11524
11607
|
...styleProp && typeof styleProp === "object" ? styleProp : {},
|
|
11525
11608
|
minWidth: componentSizes2.popoverPanelWidth,
|
|
11526
|
-
padding:
|
|
11609
|
+
padding: spacings5.sizeLarge,
|
|
11527
11610
|
backgroundColor: bg,
|
|
11528
11611
|
color: resolveColorTokenValue10(palette.foreground),
|
|
11529
11612
|
borderColor: borderCol
|
|
@@ -13494,8 +13577,8 @@ import {
|
|
|
13494
13577
|
useState as useState27,
|
|
13495
13578
|
useSyncExternalStore
|
|
13496
13579
|
} from "react";
|
|
13497
|
-
import { createPortal as
|
|
13498
|
-
import { iconSizes as iconSizes21, spacings as
|
|
13580
|
+
import { createPortal as createPortal7 } from "react-dom";
|
|
13581
|
+
import { iconSizes as iconSizes21, spacings as spacings6 } from "@refineui/tokens";
|
|
13499
13582
|
import { motionMsToNumber as motionMsToNumber6 } from "@refineui/utilities/animation";
|
|
13500
13583
|
import { resolveColorTokenValue as resolveColorTokenValue11 } from "@refineui/utilities/color";
|
|
13501
13584
|
|
|
@@ -13554,10 +13637,10 @@ function gapPxFromSpacingToken(token) {
|
|
|
13554
13637
|
var TOAST_NARROW_STACK_MQ = "(max-width: 480px), (hover: none)";
|
|
13555
13638
|
function readToastStackGapPx() {
|
|
13556
13639
|
if (typeof globalThis.matchMedia === "undefined") {
|
|
13557
|
-
return gapPxFromSpacingToken(String(
|
|
13640
|
+
return gapPxFromSpacingToken(String(spacings6.sizeLarge));
|
|
13558
13641
|
}
|
|
13559
13642
|
const mq = globalThis.matchMedia(TOAST_NARROW_STACK_MQ);
|
|
13560
|
-
return gapPxFromSpacingToken(mq.matches ? String(
|
|
13643
|
+
return gapPxFromSpacingToken(mq.matches ? String(spacings6.sizeMedium) : String(spacings6.sizeLarge));
|
|
13561
13644
|
}
|
|
13562
13645
|
function subscribeToastStackGap(onChange) {
|
|
13563
13646
|
if (typeof globalThis.matchMedia === "undefined") return () => {
|
|
@@ -13570,7 +13653,7 @@ function useToastStackGapPx() {
|
|
|
13570
13653
|
return useSyncExternalStore(
|
|
13571
13654
|
subscribeToastStackGap,
|
|
13572
13655
|
readToastStackGapPx,
|
|
13573
|
-
() => gapPxFromSpacingToken(String(
|
|
13656
|
+
() => gapPxFromSpacingToken(String(spacings6.sizeLarge))
|
|
13574
13657
|
);
|
|
13575
13658
|
}
|
|
13576
13659
|
function readToastNaturalHeight(li) {
|
|
@@ -13986,7 +14069,7 @@ function Toaster({
|
|
|
13986
14069
|
if (typeof document === "undefined" || !isPortalOwner) {
|
|
13987
14070
|
return null;
|
|
13988
14071
|
}
|
|
13989
|
-
return
|
|
14072
|
+
return createPortal7(
|
|
13990
14073
|
/* @__PURE__ */ jsx72(
|
|
13991
14074
|
"ol",
|
|
13992
14075
|
{
|
|
@@ -14513,15 +14596,68 @@ import { useId as useId17, useRef as useRef23, useState as useState31 } from "re
|
|
|
14513
14596
|
import { resolveColorTokenValue as resolveColorTokenValue12 } from "@refineui/utilities/color";
|
|
14514
14597
|
import { Slot as Slot5, getMergeableTriggerChild as getMergeableTriggerChild4 } from "@refineui/utilities/react";
|
|
14515
14598
|
|
|
14599
|
+
// src/components/shared/FrostedBeak.tsx
|
|
14600
|
+
import { strokeWidths as strokeWidths3 } from "@refineui/tokens";
|
|
14601
|
+
import { jsx as jsx77, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
14602
|
+
var triangleClipPath = "polygon(50% 0, 0 100%, 100% 100%)";
|
|
14603
|
+
function FrostedBeak({ width, height, rotateDeg, borderColor }) {
|
|
14604
|
+
const surfaceStyle = {
|
|
14605
|
+
position: "absolute",
|
|
14606
|
+
inset: 0,
|
|
14607
|
+
clipPath: triangleClipPath
|
|
14608
|
+
};
|
|
14609
|
+
return /* @__PURE__ */ jsxs31(
|
|
14610
|
+
"div",
|
|
14611
|
+
{
|
|
14612
|
+
style: {
|
|
14613
|
+
position: "relative",
|
|
14614
|
+
width,
|
|
14615
|
+
height,
|
|
14616
|
+
transform: `rotate(${rotateDeg}deg)`,
|
|
14617
|
+
transformOrigin: "center center"
|
|
14618
|
+
},
|
|
14619
|
+
children: [
|
|
14620
|
+
/* @__PURE__ */ jsx77(
|
|
14621
|
+
"span",
|
|
14622
|
+
{
|
|
14623
|
+
"data-refineui": "floating-beak-surface",
|
|
14624
|
+
style: surfaceStyle
|
|
14625
|
+
}
|
|
14626
|
+
),
|
|
14627
|
+
/* @__PURE__ */ jsx77(
|
|
14628
|
+
"svg",
|
|
14629
|
+
{
|
|
14630
|
+
width,
|
|
14631
|
+
height,
|
|
14632
|
+
viewBox: "0 0 16 8",
|
|
14633
|
+
fill: "none",
|
|
14634
|
+
"aria-hidden": true,
|
|
14635
|
+
style: { position: "absolute", inset: 0, overflow: "visible" },
|
|
14636
|
+
children: /* @__PURE__ */ jsx77(
|
|
14637
|
+
"path",
|
|
14638
|
+
{
|
|
14639
|
+
d: "M0 8L8 0L16 8",
|
|
14640
|
+
stroke: borderColor,
|
|
14641
|
+
strokeWidth: strokeWidths3.strokeWidthThin,
|
|
14642
|
+
strokeLinejoin: "round"
|
|
14643
|
+
}
|
|
14644
|
+
)
|
|
14645
|
+
}
|
|
14646
|
+
)
|
|
14647
|
+
]
|
|
14648
|
+
}
|
|
14649
|
+
);
|
|
14650
|
+
}
|
|
14651
|
+
|
|
14516
14652
|
// src/components/Tooltip/style.ts
|
|
14517
|
-
import { spacings as
|
|
14653
|
+
import { spacings as spacings7, strokeWidths as strokeWidths4 } from "@refineui/tokens";
|
|
14518
14654
|
import { clsx as clsx104 } from "clsx";
|
|
14519
14655
|
var TOOLTIP_BEAK_W = foundationSizes.foundationSize160;
|
|
14520
14656
|
var TOOLTIP_BEAK_H = foundationSizes.foundationSize80;
|
|
14521
14657
|
var TOOLTIP_BEAK_OFFSET = foundationSizes.foundationSize80;
|
|
14522
|
-
var BEAK_BORDER_OVERLAP2 =
|
|
14523
|
-
var gap =
|
|
14524
|
-
var edgeInset =
|
|
14658
|
+
var BEAK_BORDER_OVERLAP2 = strokeWidths4.strokeWidthThin;
|
|
14659
|
+
var gap = spacings7.sizeXSmall;
|
|
14660
|
+
var edgeInset = spacings7.sizeMedium;
|
|
14525
14661
|
var tooltipStyles = {
|
|
14526
14662
|
root: "relative inline-block",
|
|
14527
14663
|
fallbackTrigger: "inline-flex outline-none",
|
|
@@ -14615,7 +14751,7 @@ function tooltipBeakRotateDeg(position) {
|
|
|
14615
14751
|
}
|
|
14616
14752
|
|
|
14617
14753
|
// src/components/Tooltip/Tooltip.tsx
|
|
14618
|
-
import { jsx as
|
|
14754
|
+
import { jsx as jsx78, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
14619
14755
|
function Tooltip({
|
|
14620
14756
|
trigger,
|
|
14621
14757
|
content,
|
|
@@ -14661,7 +14797,7 @@ function Tooltip({
|
|
|
14661
14797
|
const mergeEl = getMergeableTriggerChild4(trigger);
|
|
14662
14798
|
let triggerNode;
|
|
14663
14799
|
if (mergeEl != null) {
|
|
14664
|
-
triggerNode = /* @__PURE__ */
|
|
14800
|
+
triggerNode = /* @__PURE__ */ jsx78(
|
|
14665
14801
|
Slot5,
|
|
14666
14802
|
{
|
|
14667
14803
|
"aria-describedby": describedBy,
|
|
@@ -14678,7 +14814,7 @@ function Tooltip({
|
|
|
14678
14814
|
}
|
|
14679
14815
|
);
|
|
14680
14816
|
} else {
|
|
14681
|
-
triggerNode = /* @__PURE__ */
|
|
14817
|
+
triggerNode = /* @__PURE__ */ jsx78(
|
|
14682
14818
|
"span",
|
|
14683
14819
|
{
|
|
14684
14820
|
tabIndex: 0,
|
|
@@ -14695,44 +14831,27 @@ function Tooltip({
|
|
|
14695
14831
|
}
|
|
14696
14832
|
);
|
|
14697
14833
|
}
|
|
14698
|
-
return /* @__PURE__ */
|
|
14834
|
+
return /* @__PURE__ */ jsxs32("div", { "data-refineui": "tooltip", className: clsx105(tooltipStyles.root, className), ...props, children: [
|
|
14699
14835
|
triggerNode,
|
|
14700
|
-
open && /* @__PURE__ */
|
|
14701
|
-
/* @__PURE__ */
|
|
14836
|
+
open && /* @__PURE__ */ jsx78("div", { className: tooltipStyles.floating, style: floatingStyle, children: /* @__PURE__ */ jsxs32("div", { className: tooltipStyles.panelWrap, children: [
|
|
14837
|
+
/* @__PURE__ */ jsx78(
|
|
14702
14838
|
"div",
|
|
14703
14839
|
{
|
|
14704
14840
|
className: tooltipStyles.beakWrap,
|
|
14705
14841
|
style: { ...beakWrapStyle, width: TOOLTIP_BEAK_W, height: TOOLTIP_BEAK_H },
|
|
14706
14842
|
"aria-hidden": true,
|
|
14707
|
-
children: /* @__PURE__ */
|
|
14708
|
-
|
|
14843
|
+
children: /* @__PURE__ */ jsx78(
|
|
14844
|
+
FrostedBeak,
|
|
14709
14845
|
{
|
|
14710
|
-
|
|
14711
|
-
|
|
14712
|
-
|
|
14713
|
-
|
|
14714
|
-
transformOrigin: "center center"
|
|
14715
|
-
},
|
|
14716
|
-
children: /* @__PURE__ */ jsxs31(
|
|
14717
|
-
"svg",
|
|
14718
|
-
{
|
|
14719
|
-
width: TOOLTIP_BEAK_W,
|
|
14720
|
-
height: TOOLTIP_BEAK_H,
|
|
14721
|
-
viewBox: "0 0 16 8",
|
|
14722
|
-
fill: "none",
|
|
14723
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
14724
|
-
style: { display: "block" },
|
|
14725
|
-
children: [
|
|
14726
|
-
/* @__PURE__ */ jsx77("polygon", { points: "8,0 0,8 16,8", fill: borderCol }),
|
|
14727
|
-
/* @__PURE__ */ jsx77("polygon", { points: "8,2 2,8 14,8", fill: bg })
|
|
14728
|
-
]
|
|
14729
|
-
}
|
|
14730
|
-
)
|
|
14846
|
+
width: TOOLTIP_BEAK_W,
|
|
14847
|
+
height: TOOLTIP_BEAK_H,
|
|
14848
|
+
rotateDeg: beakRot,
|
|
14849
|
+
borderColor: borderCol
|
|
14731
14850
|
}
|
|
14732
14851
|
)
|
|
14733
14852
|
}
|
|
14734
14853
|
),
|
|
14735
|
-
/* @__PURE__ */
|
|
14854
|
+
/* @__PURE__ */ jsx78(
|
|
14736
14855
|
"div",
|
|
14737
14856
|
{
|
|
14738
14857
|
id: tooltipId,
|
|
@@ -14810,12 +14929,12 @@ var chartStyles = {
|
|
|
14810
14929
|
};
|
|
14811
14930
|
|
|
14812
14931
|
// src/components/Chart/utils.ts
|
|
14813
|
-
import { borderRadii, foundationSizes as foundationSizes3, spacings as
|
|
14932
|
+
import { borderRadii, foundationSizes as foundationSizes3, spacings as spacings8 } from "@refineui/tokens";
|
|
14814
14933
|
var CHART_VIEWBOX_WIDTH = 800;
|
|
14815
14934
|
var CHART_VIEWBOX_HEIGHT = 320;
|
|
14816
|
-
var CHART_PLOT_PADDING_TOP = parseFloat(
|
|
14817
|
-
var CHART_PLOT_PADDING_BOTTOM = parseFloat(
|
|
14818
|
-
var CHART_PLOT_PADDING_X = parseFloat(
|
|
14935
|
+
var CHART_PLOT_PADDING_TOP = parseFloat(spacings8.sizeMedium);
|
|
14936
|
+
var CHART_PLOT_PADDING_BOTTOM = parseFloat(spacings8.sizeXXSmall);
|
|
14937
|
+
var CHART_PLOT_PADDING_X = parseFloat(spacings8.sizeMedium);
|
|
14819
14938
|
var CHART_BAR_RADIUS = parseFloat(borderRadii.roundedXLarge);
|
|
14820
14939
|
var CHART_BAR_BAND_FILL = 0.5;
|
|
14821
14940
|
var CHART_POINT_RADIUS = parseFloat(foundationSizes3.foundationSize40);
|
|
@@ -14991,7 +15110,7 @@ function formatAxisTick(value) {
|
|
|
14991
15110
|
}
|
|
14992
15111
|
|
|
14993
15112
|
// src/components/Chart/Chart.tsx
|
|
14994
|
-
import { Fragment as Fragment4, jsx as
|
|
15113
|
+
import { Fragment as Fragment4, jsx as jsx79, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
14995
15114
|
var ChartContext = createContext27(null);
|
|
14996
15115
|
function useChartContext(component) {
|
|
14997
15116
|
const value = useContext31(ChartContext);
|
|
@@ -15047,7 +15166,7 @@ function Chart({ className, children, ...props }) {
|
|
|
15047
15166
|
}),
|
|
15048
15167
|
[hoverIndex, selectedIndex, pointer, labels, series]
|
|
15049
15168
|
);
|
|
15050
|
-
return /* @__PURE__ */
|
|
15169
|
+
return /* @__PURE__ */ jsx79(ChartContext.Provider, { value: context, children: /* @__PURE__ */ jsx79(
|
|
15051
15170
|
"div",
|
|
15052
15171
|
{
|
|
15053
15172
|
"data-refineui": "chart",
|
|
@@ -15058,7 +15177,7 @@ function Chart({ className, children, ...props }) {
|
|
|
15058
15177
|
) });
|
|
15059
15178
|
}
|
|
15060
15179
|
function ChartBody({ className, ...props }) {
|
|
15061
|
-
return /* @__PURE__ */
|
|
15180
|
+
return /* @__PURE__ */ jsx79(
|
|
15062
15181
|
"div",
|
|
15063
15182
|
{
|
|
15064
15183
|
"data-refineui": "chart-body",
|
|
@@ -15068,7 +15187,7 @@ function ChartBody({ className, ...props }) {
|
|
|
15068
15187
|
);
|
|
15069
15188
|
}
|
|
15070
15189
|
function ChartContent({ className, ...props }) {
|
|
15071
|
-
return /* @__PURE__ */
|
|
15190
|
+
return /* @__PURE__ */ jsx79(
|
|
15072
15191
|
"div",
|
|
15073
15192
|
{
|
|
15074
15193
|
"data-refineui": "chart-content",
|
|
@@ -15093,7 +15212,7 @@ function ChartHitArea() {
|
|
|
15093
15212
|
setHoverIndex(hoverIndexFromPlotX(next.x, count, series.align));
|
|
15094
15213
|
return next;
|
|
15095
15214
|
};
|
|
15096
|
-
return /* @__PURE__ */
|
|
15215
|
+
return /* @__PURE__ */ jsx79(
|
|
15097
15216
|
"rect",
|
|
15098
15217
|
{
|
|
15099
15218
|
"data-refineui": "chart-hit-area",
|
|
@@ -15131,7 +15250,7 @@ function ChartPlot({
|
|
|
15131
15250
|
if (isChartTooltipElement(child)) tooltipNodes.push(child);
|
|
15132
15251
|
else svgChildren.push(child);
|
|
15133
15252
|
});
|
|
15134
|
-
return /* @__PURE__ */
|
|
15253
|
+
return /* @__PURE__ */ jsxs33(
|
|
15135
15254
|
"div",
|
|
15136
15255
|
{
|
|
15137
15256
|
"data-refineui": "chart-plot-frame",
|
|
@@ -15140,7 +15259,7 @@ function ChartPlot({
|
|
|
15140
15259
|
className: clsx107(chartStyles.plotFrame, className),
|
|
15141
15260
|
...props,
|
|
15142
15261
|
children: [
|
|
15143
|
-
/* @__PURE__ */
|
|
15262
|
+
/* @__PURE__ */ jsxs33(
|
|
15144
15263
|
"svg",
|
|
15145
15264
|
{
|
|
15146
15265
|
"data-refineui": "chart-plot",
|
|
@@ -15151,7 +15270,7 @@ function ChartPlot({
|
|
|
15151
15270
|
className: chartStyles.plot,
|
|
15152
15271
|
children: [
|
|
15153
15272
|
svgChildren,
|
|
15154
|
-
/* @__PURE__ */
|
|
15273
|
+
/* @__PURE__ */ jsx79(ChartHitArea, {})
|
|
15155
15274
|
]
|
|
15156
15275
|
}
|
|
15157
15276
|
),
|
|
@@ -15169,7 +15288,7 @@ function ChartTooltip({ className, children, style, ...props }) {
|
|
|
15169
15288
|
const flipY = pointer.y < CHART_PLOT_PADDING_TOP + plotHeight() * CHART_TOOLTIP_FLIP_Y;
|
|
15170
15289
|
const offsetX = flipX ? "calc(-100% - var(--refineui-spacing-size-small))" : "var(--refineui-spacing-size-small)";
|
|
15171
15290
|
const offsetY = flipY ? "var(--refineui-spacing-size-small)" : "calc(-100% - var(--refineui-spacing-size-x-small))";
|
|
15172
|
-
return /* @__PURE__ */
|
|
15291
|
+
return /* @__PURE__ */ jsx79(
|
|
15173
15292
|
"div",
|
|
15174
15293
|
{
|
|
15175
15294
|
"data-refineui": "chart-tooltip",
|
|
@@ -15182,9 +15301,9 @@ function ChartTooltip({ className, children, style, ...props }) {
|
|
|
15182
15301
|
...style
|
|
15183
15302
|
},
|
|
15184
15303
|
...props,
|
|
15185
|
-
children: children ?? /* @__PURE__ */
|
|
15186
|
-
label ? /* @__PURE__ */
|
|
15187
|
-
/* @__PURE__ */
|
|
15304
|
+
children: children ?? /* @__PURE__ */ jsxs33(Fragment4, { children: [
|
|
15305
|
+
label ? /* @__PURE__ */ jsx79("span", { className: chartStyles.tooltipLabel, children: label }) : null,
|
|
15306
|
+
/* @__PURE__ */ jsx79("span", { className: chartStyles.tooltipValue, children: formatAxisTick(value) })
|
|
15188
15307
|
] })
|
|
15189
15308
|
}
|
|
15190
15309
|
);
|
|
@@ -15199,14 +15318,14 @@ function ChartYAxisLabels({
|
|
|
15199
15318
|
}) {
|
|
15200
15319
|
const scaleMax = resolveScale(values, max);
|
|
15201
15320
|
const ticks = yAxisTicks(scaleMax, lines).slice().reverse();
|
|
15202
|
-
return /* @__PURE__ */
|
|
15321
|
+
return /* @__PURE__ */ jsx79(
|
|
15203
15322
|
"div",
|
|
15204
15323
|
{
|
|
15205
15324
|
"data-refineui": "chart-y-axis",
|
|
15206
15325
|
className: clsx107(chartStyles.yAxis, className),
|
|
15207
15326
|
"aria-hidden": true,
|
|
15208
15327
|
...props,
|
|
15209
|
-
children: ticks.map((tick) => /* @__PURE__ */
|
|
15328
|
+
children: ticks.map((tick) => /* @__PURE__ */ jsx79(
|
|
15210
15329
|
"span",
|
|
15211
15330
|
{
|
|
15212
15331
|
className: chartStyles.yAxisTick,
|
|
@@ -15229,12 +15348,12 @@ function ChartGrid({
|
|
|
15229
15348
|
const ticks = yAxisTicks(scaleMax, lines);
|
|
15230
15349
|
const gridColor = gridStroke();
|
|
15231
15350
|
const baselineColor = gridBaselineStroke();
|
|
15232
|
-
return /* @__PURE__ */
|
|
15351
|
+
return /* @__PURE__ */ jsx79("g", { "data-refineui": "chart-grid", className, ...props, children: ticks.map((tick, index) => {
|
|
15233
15352
|
const y = gridLineY(scaleMax, tick);
|
|
15234
15353
|
const isBaseline = index === 0;
|
|
15235
15354
|
const isTop = index === ticks.length - 1;
|
|
15236
15355
|
if (isTop) return null;
|
|
15237
|
-
return /* @__PURE__ */
|
|
15356
|
+
return /* @__PURE__ */ jsx79(
|
|
15238
15357
|
"line",
|
|
15239
15358
|
{
|
|
15240
15359
|
x1: CHART_PLOT_PADDING_X,
|
|
@@ -15269,10 +15388,10 @@ function ChartBars({
|
|
|
15269
15388
|
useLayoutEffect13(() => {
|
|
15270
15389
|
setSeries({ values, seriesColor, max, align: "bar" });
|
|
15271
15390
|
}, [values, seriesColor, max, setSeries]);
|
|
15272
|
-
return /* @__PURE__ */
|
|
15391
|
+
return /* @__PURE__ */ jsxs33("g", { "data-refineui": "chart-bars", "data-series-color": seriesColor, className, ...props, children: [
|
|
15273
15392
|
showTrack ? values.map((_, index) => {
|
|
15274
15393
|
const x = barX(index, values.length);
|
|
15275
|
-
return /* @__PURE__ */
|
|
15394
|
+
return /* @__PURE__ */ jsx79(
|
|
15276
15395
|
"path",
|
|
15277
15396
|
{
|
|
15278
15397
|
"data-refineui": "chart-bar-track",
|
|
@@ -15294,7 +15413,7 @@ function ChartBars({
|
|
|
15294
15413
|
const height = baselineY - y;
|
|
15295
15414
|
if (height <= 0) return null;
|
|
15296
15415
|
const state = itemState(index, hoverIndex, selectedIndex);
|
|
15297
|
-
return /* @__PURE__ */
|
|
15416
|
+
return /* @__PURE__ */ jsx79(
|
|
15298
15417
|
"path",
|
|
15299
15418
|
{
|
|
15300
15419
|
"data-refineui": "chart-bar",
|
|
@@ -15327,10 +15446,10 @@ function ChartLine({
|
|
|
15327
15446
|
useLayoutEffect13(() => {
|
|
15328
15447
|
setSeries({ values, seriesColor, max, align: "line" });
|
|
15329
15448
|
}, [values, seriesColor, max, setSeries]);
|
|
15330
|
-
return /* @__PURE__ */
|
|
15331
|
-
showArea && coords.length > 1 ? /* @__PURE__ */
|
|
15332
|
-
/* @__PURE__ */
|
|
15333
|
-
/* @__PURE__ */
|
|
15449
|
+
return /* @__PURE__ */ jsxs33("g", { "data-refineui": "chart-line", "data-series-color": seriesColor, className, ...props, children: [
|
|
15450
|
+
showArea && coords.length > 1 ? /* @__PURE__ */ jsxs33(Fragment4, { children: [
|
|
15451
|
+
/* @__PURE__ */ jsx79("defs", { children: /* @__PURE__ */ jsxs33("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
15452
|
+
/* @__PURE__ */ jsx79(
|
|
15334
15453
|
"stop",
|
|
15335
15454
|
{
|
|
15336
15455
|
offset: "0%",
|
|
@@ -15338,9 +15457,9 @@ function ChartLine({
|
|
|
15338
15457
|
stopOpacity: opacities.opacityDisabled
|
|
15339
15458
|
}
|
|
15340
15459
|
),
|
|
15341
|
-
/* @__PURE__ */
|
|
15460
|
+
/* @__PURE__ */ jsx79("stop", { offset: "100%", stopColor: stroke, stopOpacity: "0" })
|
|
15342
15461
|
] }) }),
|
|
15343
|
-
/* @__PURE__ */
|
|
15462
|
+
/* @__PURE__ */ jsx79(
|
|
15344
15463
|
"path",
|
|
15345
15464
|
{
|
|
15346
15465
|
"data-refineui": "chart-line-area",
|
|
@@ -15349,7 +15468,7 @@ function ChartLine({
|
|
|
15349
15468
|
}
|
|
15350
15469
|
)
|
|
15351
15470
|
] }) : null,
|
|
15352
|
-
/* @__PURE__ */
|
|
15471
|
+
/* @__PURE__ */ jsx79(
|
|
15353
15472
|
"path",
|
|
15354
15473
|
{
|
|
15355
15474
|
"data-refineui": "chart-line-stroke",
|
|
@@ -15367,7 +15486,7 @@ function ChartLine({
|
|
|
15367
15486
|
const state = itemState(index, hoverIndex, selectedIndex);
|
|
15368
15487
|
const visible = showPoints || state !== "default";
|
|
15369
15488
|
if (!visible) return null;
|
|
15370
|
-
return /* @__PURE__ */
|
|
15489
|
+
return /* @__PURE__ */ jsx79(
|
|
15371
15490
|
"circle",
|
|
15372
15491
|
{
|
|
15373
15492
|
"data-refineui": "chart-point",
|
|
@@ -15396,7 +15515,7 @@ function ChartAxisLabels({
|
|
|
15396
15515
|
useLayoutEffect13(() => {
|
|
15397
15516
|
setLabels(labels);
|
|
15398
15517
|
}, [labels, setLabels]);
|
|
15399
|
-
return /* @__PURE__ */
|
|
15518
|
+
return /* @__PURE__ */ jsx79(
|
|
15400
15519
|
"div",
|
|
15401
15520
|
{
|
|
15402
15521
|
"data-refineui": "chart-axis-labels",
|
|
@@ -15405,7 +15524,7 @@ function ChartAxisLabels({
|
|
|
15405
15524
|
...props,
|
|
15406
15525
|
children: labels.map((label, index) => {
|
|
15407
15526
|
const state = itemState(index, hoverIndex, selectedIndex);
|
|
15408
|
-
return /* @__PURE__ */
|
|
15527
|
+
return /* @__PURE__ */ jsx79(
|
|
15409
15528
|
"span",
|
|
15410
15529
|
{
|
|
15411
15530
|
"data-state": state,
|
|
@@ -15423,7 +15542,7 @@ function ChartAxisLabels({
|
|
|
15423
15542
|
);
|
|
15424
15543
|
}
|
|
15425
15544
|
function ChartLegend({ className, ...props }) {
|
|
15426
|
-
return /* @__PURE__ */
|
|
15545
|
+
return /* @__PURE__ */ jsx79(
|
|
15427
15546
|
"ul",
|
|
15428
15547
|
{
|
|
15429
15548
|
"data-refineui": "chart-legend",
|
|
@@ -15439,7 +15558,7 @@ function ChartLegendItem({
|
|
|
15439
15558
|
style,
|
|
15440
15559
|
...props
|
|
15441
15560
|
}) {
|
|
15442
|
-
return /* @__PURE__ */
|
|
15561
|
+
return /* @__PURE__ */ jsxs33(
|
|
15443
15562
|
"li",
|
|
15444
15563
|
{
|
|
15445
15564
|
"data-refineui": "chart-legend-item",
|
|
@@ -15447,7 +15566,7 @@ function ChartLegendItem({
|
|
|
15447
15566
|
className: clsx107(chartStyles.legendItem, className),
|
|
15448
15567
|
...props,
|
|
15449
15568
|
children: [
|
|
15450
|
-
/* @__PURE__ */
|
|
15569
|
+
/* @__PURE__ */ jsx79(
|
|
15451
15570
|
"span",
|
|
15452
15571
|
{
|
|
15453
15572
|
"aria-hidden": true,
|
|
@@ -15507,7 +15626,7 @@ var collapsibleStyles = {
|
|
|
15507
15626
|
};
|
|
15508
15627
|
|
|
15509
15628
|
// src/components/Collapsible/Collapsible.tsx
|
|
15510
|
-
import { jsx as
|
|
15629
|
+
import { jsx as jsx80 } from "react/jsx-runtime";
|
|
15511
15630
|
var Collapsible = forwardRef17(function Collapsible2({ open: openProp, defaultOpen = false, onOpenChange, asChild = false, className, children, ...props }, ref) {
|
|
15512
15631
|
const [uncontrolled, setUncontrolled] = useState34(defaultOpen);
|
|
15513
15632
|
const open = openProp ?? uncontrolled;
|
|
@@ -15535,7 +15654,7 @@ var Collapsible = forwardRef17(function Collapsible2({ open: openProp, defaultOp
|
|
|
15535
15654
|
"data-refineui": "collapsible",
|
|
15536
15655
|
className
|
|
15537
15656
|
};
|
|
15538
|
-
return /* @__PURE__ */
|
|
15657
|
+
return /* @__PURE__ */ jsx80(CollapsibleContext.Provider, { value: contextValue, children: asChild ? /* @__PURE__ */ jsx80(Slot7, { ...shared, children }) : /* @__PURE__ */ jsx80("div", { ...shared, children }) });
|
|
15539
15658
|
});
|
|
15540
15659
|
var CollapsibleTrigger = forwardRef17(
|
|
15541
15660
|
function CollapsibleTrigger2({
|
|
@@ -15564,8 +15683,8 @@ var CollapsibleTrigger = forwardRef17(
|
|
|
15564
15683
|
if (!event.defaultPrevented) toggle();
|
|
15565
15684
|
}
|
|
15566
15685
|
};
|
|
15567
|
-
if (asChild) return /* @__PURE__ */
|
|
15568
|
-
return /* @__PURE__ */
|
|
15686
|
+
if (asChild) return /* @__PURE__ */ jsx80(Slot7, { ...shared, children });
|
|
15687
|
+
return /* @__PURE__ */ jsx80(
|
|
15569
15688
|
Button,
|
|
15570
15689
|
{
|
|
15571
15690
|
...shared,
|
|
@@ -15594,7 +15713,7 @@ var CollapsibleContent = forwardRef17(
|
|
|
15594
15713
|
pointerEvents: open ? void 0 : "none",
|
|
15595
15714
|
...style
|
|
15596
15715
|
};
|
|
15597
|
-
return /* @__PURE__ */
|
|
15716
|
+
return /* @__PURE__ */ jsx80(
|
|
15598
15717
|
"div",
|
|
15599
15718
|
{
|
|
15600
15719
|
...props,
|
|
@@ -15606,7 +15725,7 @@ var CollapsibleContent = forwardRef17(
|
|
|
15606
15725
|
"data-state": open ? "open" : "closed",
|
|
15607
15726
|
"data-refineui": "collapsible-content",
|
|
15608
15727
|
style: gridStyle,
|
|
15609
|
-
children: /* @__PURE__ */
|
|
15728
|
+
children: /* @__PURE__ */ jsx80("div", { className: collapsibleStyles.panelOuter, children: /* @__PURE__ */ jsx80("div", { className: clsx108(className), style: innerMotionStyle, children }) })
|
|
15610
15729
|
}
|
|
15611
15730
|
);
|
|
15612
15731
|
}
|
|
@@ -15624,12 +15743,12 @@ import {
|
|
|
15624
15743
|
useRef as useRef24,
|
|
15625
15744
|
useState as useState35
|
|
15626
15745
|
} from "react";
|
|
15627
|
-
import { createPortal as
|
|
15746
|
+
import { createPortal as createPortal8 } from "react-dom";
|
|
15628
15747
|
import { clsx as clsx109 } from "clsx";
|
|
15629
15748
|
import { componentSizes as componentSizes3, iconSizes as iconSizes23, semanticInteraction as semanticInteraction10 } from "@refineui/tokens";
|
|
15630
15749
|
import { motionMsToNumber as motionMsToNumber7 } from "@refineui/utilities/animation";
|
|
15631
15750
|
import { Slot as Slot8 } from "@refineui/utilities/react";
|
|
15632
|
-
import { Fragment as Fragment5, jsx as
|
|
15751
|
+
import { Fragment as Fragment5, jsx as jsx81, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
15633
15752
|
var MENU_ATTR = "data-refineui-context-menu";
|
|
15634
15753
|
var CLOSE_MS = motionMsToNumber7(semanticInteraction10.duration.normal);
|
|
15635
15754
|
var MenuContext2 = createContext29(null);
|
|
@@ -15672,7 +15791,7 @@ function ContextMenu({ modal = true, onOpenChange, children }) {
|
|
|
15672
15791
|
if (!wasOpen) onOpenChangeRef.current?.(true);
|
|
15673
15792
|
}, []);
|
|
15674
15793
|
const value = useMemo25(() => ({ open, point, openAt, close }), [open, point, openAt, close]);
|
|
15675
|
-
return /* @__PURE__ */
|
|
15794
|
+
return /* @__PURE__ */ jsx81(MenuContext2.Provider, { value, children });
|
|
15676
15795
|
}
|
|
15677
15796
|
var ContextMenuTrigger = forwardRef18(function ContextMenuTrigger2({ asChild = false, onContextMenu, children, ...props }, ref) {
|
|
15678
15797
|
const { openAt } = useMenu();
|
|
@@ -15687,11 +15806,11 @@ var ContextMenuTrigger = forwardRef18(function ContextMenuTrigger2({ asChild = f
|
|
|
15687
15806
|
openAt(event.clientX, event.clientY);
|
|
15688
15807
|
}
|
|
15689
15808
|
};
|
|
15690
|
-
if (asChild) return /* @__PURE__ */
|
|
15691
|
-
return /* @__PURE__ */
|
|
15809
|
+
if (asChild) return /* @__PURE__ */ jsx81(Slot8, { ...shared, children });
|
|
15810
|
+
return /* @__PURE__ */ jsx81("span", { ...shared, className: clsx109(menuStyles.triggerFallback, props.className), children });
|
|
15692
15811
|
});
|
|
15693
15812
|
function ContextMenuPortal({ children }) {
|
|
15694
|
-
return /* @__PURE__ */
|
|
15813
|
+
return /* @__PURE__ */ jsx81(Fragment5, { children });
|
|
15695
15814
|
}
|
|
15696
15815
|
var ContextMenuContent = forwardRef18(function ContextMenuContent2({ className, style, onPointerDown, children, ...props }, ref) {
|
|
15697
15816
|
const { open, point, close } = useMenu();
|
|
@@ -15734,8 +15853,8 @@ var ContextMenuContent = forwardRef18(function ContextMenuContent2({ className,
|
|
|
15734
15853
|
};
|
|
15735
15854
|
}, [open, close]);
|
|
15736
15855
|
if (!shouldRender || typeof document === "undefined") return null;
|
|
15737
|
-
return
|
|
15738
|
-
/* @__PURE__ */
|
|
15856
|
+
return createPortal8(
|
|
15857
|
+
/* @__PURE__ */ jsx81(
|
|
15739
15858
|
"div",
|
|
15740
15859
|
{
|
|
15741
15860
|
...props,
|
|
@@ -15762,7 +15881,7 @@ var ContextMenuContent = forwardRef18(function ContextMenuContent2({ className,
|
|
|
15762
15881
|
onPointerDown?.(event);
|
|
15763
15882
|
},
|
|
15764
15883
|
onContextMenu: (event) => event.preventDefault(),
|
|
15765
|
-
children: /* @__PURE__ */
|
|
15884
|
+
children: /* @__PURE__ */ jsx81("div", { role: "menu", "data-refineui": "menu", className: clsx109(menuStyles.list, className), children })
|
|
15766
15885
|
}
|
|
15767
15886
|
),
|
|
15768
15887
|
document.body
|
|
@@ -15783,7 +15902,7 @@ var ContextMenuItem = forwardRef18(function ContextMenuItem2({ disabled = false,
|
|
|
15783
15902
|
const { close } = useMenu();
|
|
15784
15903
|
const isDisabled = disabled || state === "disabled";
|
|
15785
15904
|
const slotted = startIcon != null || description != null || shortcut != null || endIcon != null;
|
|
15786
|
-
return /* @__PURE__ */
|
|
15905
|
+
return /* @__PURE__ */ jsx81(
|
|
15787
15906
|
"button",
|
|
15788
15907
|
{
|
|
15789
15908
|
ref,
|
|
@@ -15809,8 +15928,8 @@ var ContextMenuItem = forwardRef18(function ContextMenuItem2({ disabled = false,
|
|
|
15809
15928
|
runSelect(onSelect, close, isDisabled);
|
|
15810
15929
|
}
|
|
15811
15930
|
},
|
|
15812
|
-
children: slotted ? /* @__PURE__ */
|
|
15813
|
-
startIcon ? /* @__PURE__ */
|
|
15931
|
+
children: slotted ? /* @__PURE__ */ jsxs34("span", { className: menuStyles.row, children: [
|
|
15932
|
+
startIcon ? /* @__PURE__ */ jsx81(
|
|
15814
15933
|
"span",
|
|
15815
15934
|
{
|
|
15816
15935
|
className: menuStyles.iconWrap,
|
|
@@ -15818,13 +15937,13 @@ var ContextMenuItem = forwardRef18(function ContextMenuItem2({ disabled = false,
|
|
|
15818
15937
|
children: startIcon
|
|
15819
15938
|
}
|
|
15820
15939
|
) : null,
|
|
15821
|
-
/* @__PURE__ */
|
|
15822
|
-
/* @__PURE__ */
|
|
15823
|
-
description ? /* @__PURE__ */
|
|
15940
|
+
/* @__PURE__ */ jsxs34("span", { className: menuStyles.textCol, children: [
|
|
15941
|
+
/* @__PURE__ */ jsx81("span", { className: menuStyles.title, children }),
|
|
15942
|
+
description ? /* @__PURE__ */ jsx81("span", { className: clsx109(menuStyles.description, isDisabled ? menuStyles.descriptionDisabled : menuStyles.descriptionEnabled), children: description }) : null
|
|
15824
15943
|
] }),
|
|
15825
|
-
(shortcut || endIcon) && /* @__PURE__ */
|
|
15826
|
-
shortcut ? /* @__PURE__ */
|
|
15827
|
-
endIcon ? /* @__PURE__ */
|
|
15944
|
+
(shortcut || endIcon) && /* @__PURE__ */ jsxs34("span", { className: menuStyles.rightWrap, children: [
|
|
15945
|
+
shortcut ? /* @__PURE__ */ jsx81("span", { className: menuStyles.shortcut, children: shortcut }) : null,
|
|
15946
|
+
endIcon ? /* @__PURE__ */ jsx81(
|
|
15828
15947
|
"span",
|
|
15829
15948
|
{
|
|
15830
15949
|
className: menuStyles.iconWrap,
|
|
@@ -15833,13 +15952,13 @@ var ContextMenuItem = forwardRef18(function ContextMenuItem2({ disabled = false,
|
|
|
15833
15952
|
}
|
|
15834
15953
|
) : null
|
|
15835
15954
|
] })
|
|
15836
|
-
] }) : /* @__PURE__ */
|
|
15955
|
+
] }) : /* @__PURE__ */ jsx81("span", { className: menuStyles.row, children })
|
|
15837
15956
|
}
|
|
15838
15957
|
);
|
|
15839
15958
|
});
|
|
15840
15959
|
var ContextMenuSeparator = forwardRef18(
|
|
15841
15960
|
function ContextMenuSeparator2({ className, ...props }, ref) {
|
|
15842
|
-
return /* @__PURE__ */
|
|
15961
|
+
return /* @__PURE__ */ jsx81(
|
|
15843
15962
|
"div",
|
|
15844
15963
|
{
|
|
15845
15964
|
ref,
|
|
@@ -15849,13 +15968,13 @@ var ContextMenuSeparator = forwardRef18(
|
|
|
15849
15968
|
...{ [MENU_ATTR]: "" },
|
|
15850
15969
|
className: clsx109(menuStyles.dividerWrap, className),
|
|
15851
15970
|
...props,
|
|
15852
|
-
children: /* @__PURE__ */
|
|
15971
|
+
children: /* @__PURE__ */ jsx81("div", { className: menuStyles.dividerLine })
|
|
15853
15972
|
}
|
|
15854
15973
|
);
|
|
15855
15974
|
}
|
|
15856
15975
|
);
|
|
15857
15976
|
function ContextMenuLabel({ className, children, ...props }) {
|
|
15858
|
-
return /* @__PURE__ */
|
|
15977
|
+
return /* @__PURE__ */ jsx81("div", { "data-refineui": "menu-label", className: clsx109(menuStyles.section, className), ...props, children: /* @__PURE__ */ jsx81("span", { className: menuStyles.sectionText, children }) });
|
|
15859
15978
|
}
|
|
15860
15979
|
function ContextMenuSub({ children }) {
|
|
15861
15980
|
const [open, setOpen] = useState35(false);
|
|
@@ -15881,7 +16000,7 @@ function ContextMenuSub({ children }) {
|
|
|
15881
16000
|
}),
|
|
15882
16001
|
[open]
|
|
15883
16002
|
);
|
|
15884
|
-
return /* @__PURE__ */
|
|
16003
|
+
return /* @__PURE__ */ jsx81(SubContext.Provider, { value, children });
|
|
15885
16004
|
}
|
|
15886
16005
|
function useSub2() {
|
|
15887
16006
|
const value = useContext33(SubContext);
|
|
@@ -15924,9 +16043,9 @@ var ContextMenuSubTrigger = forwardRef18(
|
|
|
15924
16043
|
if (!event.defaultPrevented) sub.show();
|
|
15925
16044
|
}
|
|
15926
16045
|
};
|
|
15927
|
-
if (asChild) return /* @__PURE__ */
|
|
15928
|
-
return /* @__PURE__ */
|
|
15929
|
-
startIcon ? /* @__PURE__ */
|
|
16046
|
+
if (asChild) return /* @__PURE__ */ jsx81(Slot8, { ...shared, children });
|
|
16047
|
+
return /* @__PURE__ */ jsx81("button", { ...shared, children: /* @__PURE__ */ jsxs34("span", { className: menuStyles.row, children: [
|
|
16048
|
+
startIcon ? /* @__PURE__ */ jsx81(
|
|
15930
16049
|
"span",
|
|
15931
16050
|
{
|
|
15932
16051
|
className: menuStyles.iconWrap,
|
|
@@ -15934,16 +16053,16 @@ var ContextMenuSubTrigger = forwardRef18(
|
|
|
15934
16053
|
children: startIcon
|
|
15935
16054
|
}
|
|
15936
16055
|
) : null,
|
|
15937
|
-
/* @__PURE__ */
|
|
15938
|
-
/* @__PURE__ */
|
|
15939
|
-
description ? /* @__PURE__ */
|
|
16056
|
+
/* @__PURE__ */ jsxs34("span", { className: menuStyles.textCol, children: [
|
|
16057
|
+
/* @__PURE__ */ jsx81("span", { className: menuStyles.title, children }),
|
|
16058
|
+
description ? /* @__PURE__ */ jsx81("span", { className: clsx109(menuStyles.description, menuStyles.descriptionEnabled), children: description }) : null
|
|
15940
16059
|
] }),
|
|
15941
|
-
/* @__PURE__ */
|
|
16060
|
+
/* @__PURE__ */ jsx81("span", { className: menuStyles.rightWrap, children: /* @__PURE__ */ jsx81(
|
|
15942
16061
|
"span",
|
|
15943
16062
|
{
|
|
15944
16063
|
className: menuStyles.iconWrap,
|
|
15945
16064
|
style: { width: iconSizes23.small, minWidth: iconSizes23.small, height: iconSizes23.small },
|
|
15946
|
-
children: /* @__PURE__ */
|
|
16065
|
+
children: /* @__PURE__ */ jsx81(WebIcon, { name: "chevron-right", size: iconSizes23.small, color: "currentColor", "aria-hidden": true })
|
|
15947
16066
|
}
|
|
15948
16067
|
) })
|
|
15949
16068
|
] }) });
|
|
@@ -15971,8 +16090,8 @@ var ContextMenuSubContent = forwardRef18(
|
|
|
15971
16090
|
placeInView(element, left, rect.top);
|
|
15972
16091
|
}, [sub.open, sub.triggerRef]);
|
|
15973
16092
|
if (!sub.open || typeof document === "undefined") return null;
|
|
15974
|
-
return
|
|
15975
|
-
/* @__PURE__ */
|
|
16093
|
+
return createPortal8(
|
|
16094
|
+
/* @__PURE__ */ jsx81(
|
|
15976
16095
|
"div",
|
|
15977
16096
|
{
|
|
15978
16097
|
...props,
|