impact-nova 3.0.0-alpha.4 → 3.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/data/ag-grid-react/cell-renderers/editors/list-select-cell-editor.js +56 -42
- package/dist/components/data/ag-grid-react/cell-renderers/editors/select-cell-editor.js +48 -45
- package/dist/components/data/ag-grid-react/cell-renderers/list-select-display-renderer.js +31 -33
- package/dist/components/data/ag-grid-react/cell-renderers/select-display-renderer.js +18 -17
- package/dist/components/data/ag-grid-react/editable-utils.d.ts +9 -1
- package/dist/components/data/ag-grid-react/editable-utils.js +46 -41
- package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +3 -2
- package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +3 -2
- package/dist/components/data/expandable-list-item/sku-picker-chrome.d.ts +2 -1
- package/dist/components/data/expandable-list-item/sku-picker-chrome.js +51 -40
- package/dist/components/data/expandable-list-item/useServerSkuInfinitePages.d.ts +2 -1
- package/dist/components/data/expandable-list-item/virtualized-responsive-grid.catalog.d.ts +5 -4
- package/dist/components/data-display/chart/chart-scatter3d.d.ts +39 -0
- package/dist/components/data-display/chart/chart-scatter3d.js +180 -0
- package/dist/components/data-display/chart/chart.js +125 -112
- package/dist/components/data-display/chart/chart.utils.js +122 -92
- package/dist/components/feedback/tooltip/button-icon-tooltip.d.ts +4 -1
- package/dist/components/feedback/tooltip/button-icon-tooltip.js +14 -12
- package/dist/components/feedback/tooltip/tab-tooltip-render.js +3 -2
- package/dist/components/feedback/tooltip/use-overflow-tooltip.js +44 -36
- package/dist/components/flows/command-palette/shortcut-settings.js +10 -10
- package/dist/components/flows/filter-panel/filter-panel.js +4 -4
- package/dist/components/flows/iris-chat/iris-chat-menu.js +100 -73
- package/dist/components/forms/choice-card/choice-card-percent.js +68 -50
- package/dist/components/forms/choice-card/choice-card.js +23 -23
- package/dist/components/forms/select/components/SelectMenuPanel.js +15 -15
- package/dist/components/forms/select/components/SelectTriggerValue.js +3 -2
- package/dist/components/forms/select/components/Submenu.js +3 -2
- package/dist/components/layout/horizontal-scroller/horizontal-scroller-mask.d.ts +3 -0
- package/dist/components/layout/horizontal-scroller/horizontal-scroller-mask.js +12 -0
- package/dist/components/layout/horizontal-scroller/horizontal-scroller.js +181 -125
- package/dist/components/layout/horizontal-scroller/horizontal-scroller.types.d.ts +2 -0
- package/dist/components/layout/horizontal-scroller/scroll-overflow-affordance.d.ts +3 -1
- package/dist/components/layout/horizontal-scroller/scroll-overflow-affordance.js +77 -67
- package/dist/components/primitives/iris/iris-insight-truncated-text.d.ts +3 -0
- package/dist/components/primitives/iris/iris-insight-truncated-text.js +33 -0
- package/dist/components/primitives/iris/iris.d.ts +2 -1
- package/dist/components/primitives/iris/iris.js +57 -67
- package/dist/components/primitives/iris/iris.types.d.ts +7 -0
- package/dist/components/primitives/stepper/internals/stepper-summary.js +5 -5
- package/dist/form-react/Fields/VirtualizedListField.js +69 -64
- package/dist/impact-nova-components.css +35 -8
- package/dist/impact-nova.css +1 -1
- package/dist/lib/alphabetical-sort.js +13 -0
- package/dist/llms/rules/installation.js +1 -1
- package/dist/llms/rules/requirements.js +1 -1
- package/package.json +2 -2
|
@@ -1,118 +1,128 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as I, jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { ChevronRight as
|
|
4
|
-
import { Button as
|
|
3
|
+
import { ChevronRight as R } from "impact-nova-icons";
|
|
4
|
+
import { Button as D } from "../../primitives/button/button.js";
|
|
5
5
|
import { useImpactNovaI18n as L } from "../../../i18n/use-impact-nova-i18n.js";
|
|
6
|
-
import { cn as
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
function $(a, o) {
|
|
10
|
-
if (!(!a && !o))
|
|
11
|
-
return a && o ? `linear-gradient(to right, transparent, black ${s}px, black calc(100% - ${s}px), transparent)` : o ? `linear-gradient(to right, black, black calc(100% - ${s}px), transparent 100%)` : `linear-gradient(to right, transparent, black ${s}px, black)`;
|
|
12
|
-
}
|
|
13
|
-
const u = "pointer-events-none absolute top-0 z-10 h-full w-14";
|
|
6
|
+
import { cn as o } from "../../../lib/utils.js";
|
|
7
|
+
import { horizontalScrollerEdgeFadeClassName as v, buildHorizontalScrollerMaskImage as C } from "./horizontal-scroller-mask.js";
|
|
8
|
+
import { useHorizontalScrollOverflow as A } from "./use-horizontal-scroll-overflow.js";
|
|
14
9
|
function F({
|
|
15
|
-
children:
|
|
16
|
-
scrollStep:
|
|
17
|
-
contentDependency:
|
|
18
|
-
hideScrollbar:
|
|
10
|
+
children: m,
|
|
11
|
+
scrollStep: h,
|
|
12
|
+
contentDependency: u,
|
|
13
|
+
hideScrollbar: l = !0,
|
|
19
14
|
viewportClassName: g,
|
|
20
|
-
viewportDataComponent:
|
|
21
|
-
|
|
22
|
-
|
|
15
|
+
viewportDataComponent: b = "scroll-overflow-affordance-viewport",
|
|
16
|
+
controlSize: p = "compact",
|
|
17
|
+
className: w,
|
|
18
|
+
...x
|
|
23
19
|
}) {
|
|
24
|
-
const { t:
|
|
25
|
-
scrollRef:
|
|
26
|
-
canScrollLeft:
|
|
27
|
-
canScrollRight:
|
|
28
|
-
scrollLeft:
|
|
29
|
-
scrollRight:
|
|
30
|
-
} =
|
|
31
|
-
|
|
32
|
-
|
|
20
|
+
const { t: s } = L(), {
|
|
21
|
+
scrollRef: y,
|
|
22
|
+
canScrollLeft: t,
|
|
23
|
+
canScrollRight: a,
|
|
24
|
+
scrollLeft: i,
|
|
25
|
+
scrollRight: c
|
|
26
|
+
} = A({ scrollStep: h, contentDependency: u }), f = C(
|
|
27
|
+
t,
|
|
28
|
+
a
|
|
29
|
+
), k = (e) => {
|
|
30
|
+
if (e.key === "ArrowLeft" && t) {
|
|
31
|
+
e.preventDefault(), i();
|
|
33
32
|
return;
|
|
34
33
|
}
|
|
35
|
-
e.key === "ArrowRight" &&
|
|
36
|
-
},
|
|
37
|
-
if (
|
|
38
|
-
const
|
|
39
|
-
return /* @__PURE__ */
|
|
40
|
-
|
|
34
|
+
e.key === "ArrowRight" && a && (e.preventDefault(), c());
|
|
35
|
+
}, d = (e, z, N) => {
|
|
36
|
+
if (N) return null;
|
|
37
|
+
const S = s(e === "left" ? "horizontalScroller.scrollLeft" : "horizontalScroller.scrollRight"), n = p === "default";
|
|
38
|
+
return /* @__PURE__ */ r(
|
|
39
|
+
D,
|
|
41
40
|
{
|
|
42
41
|
variant: "ghost",
|
|
43
|
-
size: "iconSm",
|
|
44
|
-
className:
|
|
45
|
-
"absolute top-1/2 z-20
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
42
|
+
size: n ? "icon" : "iconSm",
|
|
43
|
+
className: o(
|
|
44
|
+
"absolute top-1/2 z-20 -translate-y-1/2",
|
|
45
|
+
n ? o(
|
|
46
|
+
"h-8 w-8 shrink-0 rounded-md border border-solid border-border-subtle",
|
|
47
|
+
"bg-canvas-elevated text-content-tertiary shadow-sm",
|
|
48
|
+
"hover:bg-canvas-elevated hover:text-brand",
|
|
49
|
+
e === "left" ? "left-1" : "right-1"
|
|
50
|
+
) : o(
|
|
51
|
+
"!size-5 !min-h-5 !min-w-5 rounded-full border border-stroke-hairline p-0",
|
|
52
|
+
"bg-canvas-elevated/95 text-content-secondary shadow-sm",
|
|
53
|
+
"hover:bg-canvas-muted hover:text-content",
|
|
54
|
+
"[&_svg]:!size-3",
|
|
55
|
+
e === "left" ? "left-0.5" : "right-0.5"
|
|
56
|
+
)
|
|
50
57
|
),
|
|
51
|
-
onClick:
|
|
52
|
-
"aria-label":
|
|
58
|
+
onClick: z,
|
|
59
|
+
"aria-label": S,
|
|
53
60
|
"data-component": e === "left" ? "scroll-overflow-affordance-prev" : "scroll-overflow-affordance-next",
|
|
54
61
|
tabIndex: -1,
|
|
55
|
-
children: /* @__PURE__ */
|
|
56
|
-
|
|
62
|
+
children: /* @__PURE__ */ r(
|
|
63
|
+
R,
|
|
57
64
|
{
|
|
58
|
-
className:
|
|
65
|
+
className: o(
|
|
66
|
+
n ? "h-4 w-4" : void 0,
|
|
67
|
+
e === "left" && "rotate-180"
|
|
68
|
+
)
|
|
59
69
|
}
|
|
60
70
|
)
|
|
61
71
|
}
|
|
62
72
|
);
|
|
63
73
|
};
|
|
64
|
-
return /* @__PURE__ */
|
|
74
|
+
return /* @__PURE__ */ I(
|
|
65
75
|
"div",
|
|
66
76
|
{
|
|
67
|
-
className:
|
|
77
|
+
className: o("relative min-w-0", w),
|
|
68
78
|
"data-component": "scroll-overflow-affordance",
|
|
69
|
-
...
|
|
79
|
+
...x,
|
|
70
80
|
children: [
|
|
71
|
-
|
|
81
|
+
t ? /* @__PURE__ */ r(
|
|
72
82
|
"div",
|
|
73
83
|
{
|
|
74
84
|
"aria-hidden": !0,
|
|
75
85
|
"data-component": "scroll-overflow-affordance-fade-left",
|
|
76
|
-
className:
|
|
77
|
-
|
|
86
|
+
className: o(
|
|
87
|
+
v,
|
|
78
88
|
"left-0 bg-gradient-to-r from-canvas-elevated from-10% via-canvas-elevated/90 via-50% to-transparent"
|
|
79
89
|
)
|
|
80
90
|
}
|
|
81
91
|
) : null,
|
|
82
|
-
|
|
92
|
+
a ? /* @__PURE__ */ r(
|
|
83
93
|
"div",
|
|
84
94
|
{
|
|
85
95
|
"aria-hidden": !0,
|
|
86
96
|
"data-component": "scroll-overflow-affordance-fade-right",
|
|
87
|
-
className:
|
|
88
|
-
|
|
97
|
+
className: o(
|
|
98
|
+
v,
|
|
89
99
|
"right-0 bg-gradient-to-l from-canvas-elevated from-10% via-canvas-elevated/90 via-50% to-transparent"
|
|
90
100
|
)
|
|
91
101
|
}
|
|
92
102
|
) : null,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
/* @__PURE__ */
|
|
103
|
+
d("left", i, !t),
|
|
104
|
+
d("right", c, !a),
|
|
105
|
+
/* @__PURE__ */ r(
|
|
96
106
|
"div",
|
|
97
107
|
{
|
|
98
|
-
ref:
|
|
108
|
+
ref: y,
|
|
99
109
|
tabIndex: 0,
|
|
100
|
-
onKeyDown:
|
|
101
|
-
className:
|
|
110
|
+
onKeyDown: k,
|
|
111
|
+
className: o(
|
|
102
112
|
"overflow-x-auto overflow-y-hidden overscroll-x-contain scroll-smooth outline-none",
|
|
103
113
|
"[-webkit-overflow-scrolling:touch]",
|
|
104
114
|
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1",
|
|
105
|
-
|
|
115
|
+
l && "scrollbar-hide",
|
|
106
116
|
g
|
|
107
117
|
),
|
|
108
118
|
style: {
|
|
109
|
-
scrollbarWidth:
|
|
110
|
-
msOverflowStyle:
|
|
111
|
-
WebkitMaskImage:
|
|
112
|
-
maskImage:
|
|
119
|
+
scrollbarWidth: l ? "none" : "auto",
|
|
120
|
+
msOverflowStyle: l ? "none" : "auto",
|
|
121
|
+
WebkitMaskImage: f,
|
|
122
|
+
maskImage: f
|
|
113
123
|
},
|
|
114
|
-
"data-component":
|
|
115
|
-
children:
|
|
124
|
+
"data-component": b,
|
|
125
|
+
children: m
|
|
116
126
|
}
|
|
117
127
|
)
|
|
118
128
|
]
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { IrisInsightTruncatedTextProps } from './iris.types';
|
|
2
|
+
/** Default truncated Iris insight label + overflow tooltip (white fill, iris ring). */
|
|
3
|
+
export declare function IrisInsightTruncatedText({ children, overflowTooltipContent, className, triggerClassName, as, }: IrisInsightTruncatedTextProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { OverflowTooltip as a } from "../../feedback/tooltip/overflow-tooltip.js";
|
|
3
|
+
import { cn as p } from "../../../lib/utils.js";
|
|
4
|
+
function c({
|
|
5
|
+
children: t,
|
|
6
|
+
overflowTooltipContent: o,
|
|
7
|
+
className: n,
|
|
8
|
+
triggerClassName: e,
|
|
9
|
+
as: r = "span"
|
|
10
|
+
}) {
|
|
11
|
+
const s = o ?? (typeof t == "string" ? t : void 0);
|
|
12
|
+
return /* @__PURE__ */ i(
|
|
13
|
+
a,
|
|
14
|
+
{
|
|
15
|
+
as: r,
|
|
16
|
+
triggerClassName: p(
|
|
17
|
+
"block w-full min-w-0 truncate whitespace-nowrap normal-case",
|
|
18
|
+
e
|
|
19
|
+
),
|
|
20
|
+
contentClassName: "iris-menu-overflow-tooltip",
|
|
21
|
+
variant: "secondary",
|
|
22
|
+
side: "top",
|
|
23
|
+
align: "end",
|
|
24
|
+
sideOffset: 8,
|
|
25
|
+
content: s,
|
|
26
|
+
className: n,
|
|
27
|
+
children: t
|
|
28
|
+
}
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
export {
|
|
32
|
+
c as IrisInsightTruncatedText
|
|
33
|
+
};
|
|
@@ -20,6 +20,7 @@ declare const IrisInsight: React.ForwardRefExoticComponent<IrisInsightProps & Re
|
|
|
20
20
|
export { IrisControlProvider, IrisControlRegion, } from './iris-control-region';
|
|
21
21
|
export { IrisAgentCursor } from './iris-agent-cursor';
|
|
22
22
|
export { useIrisControl } from './iris-control-context';
|
|
23
|
+
export { IrisInsightTruncatedText } from './iris-insight-truncated-text';
|
|
23
24
|
export { IrisButton, IrisIconButton, IrisMenu, IrisInsight };
|
|
24
|
-
export type { IrisButtonProps, IrisIconButtonProps, IrisMenuProps, IrisInsightProps, } from './iris.types';
|
|
25
|
+
export type { IrisButtonProps, IrisIconButtonProps, IrisMenuProps, IrisInsightProps, IrisInsightTruncatedTextProps, } from './iris.types';
|
|
25
26
|
export type { IrisControlProviderProps, IrisControlRegionProps, IrisControlGlowPhase, IrisControlRegionVariant, } from './iris-control.types';
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { jsx as t, jsxs as
|
|
1
|
+
import { jsx as t, jsxs as p } from "react/jsx-runtime";
|
|
2
2
|
import * as x from "react";
|
|
3
|
-
import { Alan as
|
|
3
|
+
import { Alan as N } from "impact-nova-icons";
|
|
4
4
|
import { Button as w } from "../button/button.js";
|
|
5
|
-
import { Popover as B, PopoverTrigger as z, PopoverContent as
|
|
6
|
-
import {
|
|
5
|
+
import { Popover as B, PopoverTrigger as z, PopoverContent as T } from "../../feedback/popover/popover.js";
|
|
6
|
+
import { IrisInsightTruncatedText as A } from "./iris-insight-truncated-text.js";
|
|
7
7
|
import { createComponent as g } from "../../../lib/primitives/create-component.js";
|
|
8
8
|
import { cn as l } from "../../../lib/utils.js";
|
|
9
9
|
import { IrisAlanGradientIcon as v } from "./iris-alan-gradient-icon.js";
|
|
10
|
-
import { irisButtonToButtonSize as
|
|
10
|
+
import { irisButtonToButtonSize as V, irisButtonVariants as k, irisChromeWrapperVariants as P, irisIconChromeWrapperVariants as S, irisIconFilledButtonVariants as j, irisIconButtonToButtonSize as y, irisIconButtonVariants as M, irisMenuVariants as O } from "./iris.variants.js";
|
|
11
11
|
import { IrisControlProvider as _, IrisControlRegion as $ } from "./iris-control-region.js";
|
|
12
12
|
import { IrisAgentCursor as ii } from "./iris-agent-cursor.js";
|
|
13
|
-
import { useIrisControl as
|
|
13
|
+
import { useIrisControl as ni } from "./iris-control-context.js";
|
|
14
14
|
const G = {
|
|
15
15
|
sm: 14,
|
|
16
16
|
md: 16,
|
|
@@ -18,53 +18,53 @@ const G = {
|
|
|
18
18
|
}, U = g(
|
|
19
19
|
"IrisButton",
|
|
20
20
|
({
|
|
21
|
-
className:
|
|
21
|
+
className: n,
|
|
22
22
|
size: i = "md",
|
|
23
|
-
shape:
|
|
24
|
-
children:
|
|
25
|
-
type:
|
|
23
|
+
shape: o = "default",
|
|
24
|
+
children: s,
|
|
25
|
+
type: e = "button",
|
|
26
26
|
...r
|
|
27
|
-
}, a) => /* @__PURE__ */ t("span", { className:
|
|
27
|
+
}, a) => /* @__PURE__ */ t("span", { className: P({ shape: o }), children: /* @__PURE__ */ p(
|
|
28
28
|
w,
|
|
29
29
|
{
|
|
30
30
|
ref: a,
|
|
31
|
-
type:
|
|
31
|
+
type: e,
|
|
32
32
|
variant: "ghost",
|
|
33
|
-
size:
|
|
33
|
+
size: V[i],
|
|
34
34
|
"data-component": "iris-button",
|
|
35
35
|
"data-size": i,
|
|
36
|
-
"data-shape":
|
|
37
|
-
className: l(
|
|
36
|
+
"data-shape": o,
|
|
37
|
+
className: l(k({ size: i }), n),
|
|
38
38
|
...r,
|
|
39
39
|
children: [
|
|
40
40
|
/* @__PURE__ */ t(v, { size: G[i] }),
|
|
41
|
-
|
|
41
|
+
s ?? "Ask Iris"
|
|
42
42
|
]
|
|
43
43
|
}
|
|
44
44
|
) })
|
|
45
45
|
), R = g(
|
|
46
46
|
"IrisIconButton",
|
|
47
47
|
({
|
|
48
|
-
className:
|
|
48
|
+
className: n,
|
|
49
49
|
appearance: i = "outline",
|
|
50
|
-
size:
|
|
51
|
-
shape:
|
|
52
|
-
type:
|
|
50
|
+
size: o = "md",
|
|
51
|
+
shape: s = "default",
|
|
52
|
+
type: e = "button",
|
|
53
53
|
"aria-label": r = "Ask Iris",
|
|
54
54
|
...a
|
|
55
55
|
}, d) => {
|
|
56
|
-
const m =
|
|
56
|
+
const m = S({ appearance: i, shape: s }), c = i === "filled" ? /* @__PURE__ */ t(N, { size: 16, className: "text-brand-foreground" }) : /* @__PURE__ */ t(v, { size: 16 });
|
|
57
57
|
return i === "filled" ? /* @__PURE__ */ t("span", { className: m, children: /* @__PURE__ */ t(
|
|
58
58
|
"button",
|
|
59
59
|
{
|
|
60
60
|
ref: d,
|
|
61
|
-
type:
|
|
61
|
+
type: e,
|
|
62
62
|
"data-component": "iris-icon-button",
|
|
63
63
|
"data-appearance": i,
|
|
64
|
-
"data-size":
|
|
65
|
-
"data-shape":
|
|
64
|
+
"data-size": o,
|
|
65
|
+
"data-shape": s,
|
|
66
66
|
"aria-label": r,
|
|
67
|
-
className: l(
|
|
67
|
+
className: l(j({ size: o }), n),
|
|
68
68
|
...a,
|
|
69
69
|
children: c
|
|
70
70
|
}
|
|
@@ -72,15 +72,15 @@ const G = {
|
|
|
72
72
|
w,
|
|
73
73
|
{
|
|
74
74
|
ref: d,
|
|
75
|
-
type:
|
|
75
|
+
type: e,
|
|
76
76
|
variant: "ghost",
|
|
77
|
-
size:
|
|
77
|
+
size: y[o],
|
|
78
78
|
"data-component": "iris-icon-button",
|
|
79
79
|
"data-appearance": i,
|
|
80
|
-
"data-size":
|
|
81
|
-
"data-shape":
|
|
80
|
+
"data-size": o,
|
|
81
|
+
"data-shape": s,
|
|
82
82
|
"aria-label": r,
|
|
83
|
-
className: l(
|
|
83
|
+
className: l(M({ size: o }), n),
|
|
84
84
|
...a,
|
|
85
85
|
children: c
|
|
86
86
|
}
|
|
@@ -89,21 +89,21 @@ const G = {
|
|
|
89
89
|
), C = g(
|
|
90
90
|
"IrisMenu",
|
|
91
91
|
({
|
|
92
|
-
className:
|
|
92
|
+
className: n,
|
|
93
93
|
appearance: i = "loading",
|
|
94
|
-
children:
|
|
95
|
-
onAskInChat:
|
|
96
|
-
askInChatLabel:
|
|
94
|
+
children: o,
|
|
95
|
+
onAskInChat: s,
|
|
96
|
+
askInChatLabel: e = "Ask in chat",
|
|
97
97
|
overflowTooltipContent: r,
|
|
98
98
|
...a
|
|
99
99
|
}, d) => {
|
|
100
|
-
const m = i === "loading" || i === "status", c = i === "card", f = r ?? (typeof
|
|
100
|
+
const m = i === "loading" || i === "status", c = i === "card", f = r ?? (typeof o == "string" ? o : void 0), u = /* @__PURE__ */ p(
|
|
101
101
|
"div",
|
|
102
102
|
{
|
|
103
103
|
ref: d,
|
|
104
104
|
"data-component": "iris-menu",
|
|
105
105
|
"data-appearance": i,
|
|
106
|
-
className: l(
|
|
106
|
+
className: l(O({ appearance: i }), n),
|
|
107
107
|
...a,
|
|
108
108
|
children: [
|
|
109
109
|
m && /* @__PURE__ */ t(
|
|
@@ -126,21 +126,10 @@ const G = {
|
|
|
126
126
|
i === "status" && "min-w-0 flex-1 overflow-hidden",
|
|
127
127
|
i === "loading" && "whitespace-nowrap"
|
|
128
128
|
),
|
|
129
|
-
children: i === "status" ? /* @__PURE__ */ t(
|
|
130
|
-
A,
|
|
131
|
-
{
|
|
132
|
-
triggerClassName: "block w-full min-w-0 truncate whitespace-nowrap normal-case",
|
|
133
|
-
contentClassName: "iris-menu-overflow-tooltip",
|
|
134
|
-
variant: "secondary",
|
|
135
|
-
side: "top",
|
|
136
|
-
sideOffset: 10,
|
|
137
|
-
content: f,
|
|
138
|
-
children: n
|
|
139
|
-
}
|
|
140
|
-
) : n
|
|
129
|
+
children: i === "status" ? /* @__PURE__ */ t(A, { overflowTooltipContent: f, children: o }) : o
|
|
141
130
|
}
|
|
142
131
|
),
|
|
143
|
-
c &&
|
|
132
|
+
c && s && /* @__PURE__ */ t(w, { variant: "outline", size: "sm", className: "max-h-7 capitalize", onClick: s, children: e })
|
|
144
133
|
]
|
|
145
134
|
}
|
|
146
135
|
);
|
|
@@ -149,7 +138,7 @@ const G = {
|
|
|
149
138
|
{
|
|
150
139
|
className: l(
|
|
151
140
|
"iris-edge-wash-shell iris-edge-wash-shell--menu rounded-xl motion-reduce:animate-none",
|
|
152
|
-
i === "status" && "iris-edge-wash-shell--fluid iris-edge-wash-shell--menu-plain"
|
|
141
|
+
i === "status" && "iris-edge-wash-shell--fluid iris-edge-wash-shell--menu-plain w-full min-w-0"
|
|
153
142
|
),
|
|
154
143
|
children: u
|
|
155
144
|
}
|
|
@@ -158,53 +147,53 @@ const G = {
|
|
|
158
147
|
), X = g(
|
|
159
148
|
"IrisInsight",
|
|
160
149
|
({
|
|
161
|
-
status:
|
|
150
|
+
status: n = "idle",
|
|
162
151
|
iconSize: i = "md",
|
|
163
|
-
iconAppearance:
|
|
164
|
-
loadingLabel:
|
|
165
|
-
onTriggerClick:
|
|
152
|
+
iconAppearance: o = "outline",
|
|
153
|
+
loadingLabel: s = "Gathering insights...",
|
|
154
|
+
onTriggerClick: e,
|
|
166
155
|
onAskInChat: r,
|
|
167
156
|
askInChatLabel: a,
|
|
168
157
|
className: d,
|
|
169
158
|
children: m
|
|
170
159
|
}, c) => {
|
|
171
|
-
const [f, u] = x.useState(!1), h =
|
|
160
|
+
const [f, u] = x.useState(!1), h = n === "loading" || n === "ready", b = n === "loading";
|
|
172
161
|
return x.useEffect(() => {
|
|
173
|
-
|
|
174
|
-
}, [
|
|
162
|
+
n === "loading" && u(!0);
|
|
163
|
+
}, [n]), /* @__PURE__ */ t(
|
|
175
164
|
"div",
|
|
176
165
|
{
|
|
177
166
|
ref: c,
|
|
178
167
|
"data-component": "iris",
|
|
179
|
-
"data-status":
|
|
168
|
+
"data-status": n,
|
|
180
169
|
className: l("relative inline-flex items-start", d),
|
|
181
|
-
children: /* @__PURE__ */
|
|
170
|
+
children: /* @__PURE__ */ p(
|
|
182
171
|
B,
|
|
183
172
|
{
|
|
184
173
|
open: h ? f : !1,
|
|
185
|
-
onOpenChange: (
|
|
186
|
-
h && u(
|
|
174
|
+
onOpenChange: (I) => {
|
|
175
|
+
h && u(I);
|
|
187
176
|
},
|
|
188
177
|
children: [
|
|
189
178
|
/* @__PURE__ */ t(z, { asChild: !0, children: /* @__PURE__ */ t(
|
|
190
179
|
R,
|
|
191
180
|
{
|
|
192
181
|
size: i,
|
|
193
|
-
appearance:
|
|
182
|
+
appearance: b ? "filled" : o,
|
|
194
183
|
"aria-expanded": f && h,
|
|
195
|
-
onClick: (
|
|
196
|
-
|
|
184
|
+
onClick: (I) => {
|
|
185
|
+
n === "idle" && (e?.(), I.preventDefault());
|
|
197
186
|
}
|
|
198
187
|
}
|
|
199
188
|
) }),
|
|
200
189
|
h && /* @__PURE__ */ t(
|
|
201
|
-
|
|
190
|
+
T,
|
|
202
191
|
{
|
|
203
192
|
align: "end",
|
|
204
193
|
side: "bottom",
|
|
205
194
|
sideOffset: 7,
|
|
206
195
|
className: "w-auto border-0 bg-transparent p-0 shadow-none motion-reduce:animate-none",
|
|
207
|
-
children:
|
|
196
|
+
children: n === "loading" ? /* @__PURE__ */ t(C, { appearance: "loading", children: s }) : /* @__PURE__ */ t(
|
|
208
197
|
C,
|
|
209
198
|
{
|
|
210
199
|
appearance: "card",
|
|
@@ -229,6 +218,7 @@ export {
|
|
|
229
218
|
$ as IrisControlRegion,
|
|
230
219
|
R as IrisIconButton,
|
|
231
220
|
X as IrisInsight,
|
|
221
|
+
A as IrisInsightTruncatedText,
|
|
232
222
|
C as IrisMenu,
|
|
233
|
-
|
|
223
|
+
ni as useIrisControl
|
|
234
224
|
};
|
|
@@ -22,6 +22,13 @@ export type IrisMenuProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
|
22
22
|
/** Tooltip body when `children` is not a plain string (e.g. formatted insight copy). */
|
|
23
23
|
overflowTooltipContent?: React.ReactNode;
|
|
24
24
|
};
|
|
25
|
+
export type IrisInsightTruncatedTextProps = {
|
|
26
|
+
children: React.ReactNode;
|
|
27
|
+
overflowTooltipContent?: React.ReactNode;
|
|
28
|
+
className?: string;
|
|
29
|
+
triggerClassName?: string;
|
|
30
|
+
as?: "span" | "p" | "div";
|
|
31
|
+
};
|
|
25
32
|
export type IrisInsightStatus = "idle" | "loading" | "ready";
|
|
26
33
|
export type IrisInsightProps = {
|
|
27
34
|
status?: IrisInsightStatus;
|
|
@@ -14,12 +14,12 @@ const V = p.forwardRef(
|
|
|
14
14
|
onStepClick: m,
|
|
15
15
|
stepAriaLabel: f,
|
|
16
16
|
...h
|
|
17
|
-
},
|
|
18
|
-
const
|
|
17
|
+
}, x) => {
|
|
18
|
+
const b = o.length, c = !!m;
|
|
19
19
|
return /* @__PURE__ */ e(
|
|
20
20
|
"div",
|
|
21
21
|
{
|
|
22
|
-
ref:
|
|
22
|
+
ref: x,
|
|
23
23
|
className: i(S({ variant: "summary" }), d),
|
|
24
24
|
"data-orientation": "horizontal",
|
|
25
25
|
"data-variant": "summary",
|
|
@@ -36,7 +36,7 @@ const V = p.forwardRef(
|
|
|
36
36
|
status: a,
|
|
37
37
|
disabled: t.disabled,
|
|
38
38
|
interactive: c,
|
|
39
|
-
ariaLabel: f(s,
|
|
39
|
+
ariaLabel: f(s, b),
|
|
40
40
|
isActive: r,
|
|
41
41
|
onStepClick: m,
|
|
42
42
|
className: i(
|
|
@@ -87,7 +87,7 @@ const V = p.forwardRef(
|
|
|
87
87
|
alt: "",
|
|
88
88
|
"aria-hidden": !0,
|
|
89
89
|
"data-summary-connector": "",
|
|
90
|
-
className: "relative z-[1] -rotate-90
|
|
90
|
+
className: "relative z-[1] -rotate-90"
|
|
91
91
|
}
|
|
92
92
|
) : null
|
|
93
93
|
] }) : null
|