@epam/ai-dial-ui-kit 0.14.0-dev.40 → 0.14.0-dev.44

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.
Files changed (39) hide show
  1. package/dist/CHANGELOG.md +1 -0
  2. package/dist/DateCellRenderer-B_oow9gn.cjs +1 -0
  3. package/dist/{DateCellRenderer-p6k-mVZt.cjs → DateCellRenderer-CS8ZbiFh.cjs} +5 -5
  4. package/dist/JsonEditor-BlaSMX26.cjs +1 -0
  5. package/dist/{MarkdownEditor-CBH7ILah.cjs → MarkdownEditor-5kljDPcm.cjs} +1 -1
  6. package/dist/{MarkdownEditor-CMRC_XsQ.cjs → MarkdownEditor-C0_gU7Fi.cjs} +1 -1
  7. package/dist/MarkdownEditorContainer-BqTGQArV.cjs +1 -0
  8. package/dist/components/Analytics/BarGroup/BarGroup.js +60 -58
  9. package/dist/components/Grid/constants.js +2 -2
  10. package/dist/components/MarkdownEditor/MarkdownEditorContainer.js +16 -18
  11. package/dist/components/New/Dropdown/Dropdown.js +163 -152
  12. package/dist/components/New/Dropdown/DropdownSubMenuItem.js +75 -55
  13. package/dist/components/New/InteractiveTooltip/InteractiveTooltip.js +102 -0
  14. package/dist/components/New/InteractiveTooltip/constants.js +6 -0
  15. package/dist/components/New/Select/Select.js +178 -167
  16. package/dist/components/New/Select/SelectSubMenuItem.js +84 -54
  17. package/dist/components-manifest.json +87 -3
  18. package/dist/dial-ui-kit.cjs +2 -2
  19. package/dist/dial-ui-kit.js +65 -63
  20. package/dist/editors.cjs +1 -1
  21. package/dist/file-manager.cjs +1 -1
  22. package/dist/grid.cjs +1 -1
  23. package/dist/index.css +1 -1
  24. package/dist/lazy-B1eG0EeX.cjs +1 -0
  25. package/dist/src/components/Analytics/BarGroup/BarGroup.d.ts +9 -2
  26. package/dist/src/components/New/InteractiveTooltip/InteractiveTooltip.d.ts +74 -0
  27. package/dist/src/components/New/InteractiveTooltip/constants.d.ts +26 -0
  28. package/dist/src/index.d.ts +2 -0
  29. package/dist/src/models/dropdown.d.ts +23 -0
  30. package/dist/src/models/select.d.ts +24 -0
  31. package/dist/src/utils/sub-menu-floating.d.ts +1 -0
  32. package/dist/{use-file-manager-tabs-CIQjiyK-.cjs → use-file-manager-tabs-D0RFLbl1.cjs} +1 -1
  33. package/dist/utils/sub-menu-floating.js +45 -38
  34. package/package.json +1 -1
  35. package/dist/DateCellRenderer-DNPEX0I7.cjs +0 -1
  36. package/dist/JsonEditor-BZCyPc2D.cjs +0 -1
  37. package/dist/MarkdownEditorContainer-B_6-Gd-T.cjs +0 -1
  38. package/dist/editor-BKQqPhwX.cjs +0 -1
  39. package/dist/lazy-CJ-0Pjkj.cjs +0 -1
@@ -1,73 +1,103 @@
1
- import { jsxs as p, Fragment as f, jsx as r } from "react/jsx-runtime";
2
- import "react";
3
- import { MenuItem as s } from "../MenuItem/MenuItem.js";
4
- import { MenuItemMark as g } from "../../../types/menu-item.js";
5
- import { useSubMenuFloating as M, SubMenuPanel as S } from "../../../utils/sub-menu-floating.js";
6
- import { selectSubMenuGap as x, selectSubMenuCaretIcon as C, selectSubMenuClassName as v } from "./constants.js";
7
- const L = ({
8
- opt: a,
9
- selectedValues: l,
10
- mark: o = g.Tint,
11
- onSelect: t
1
+ import { jsx as n, jsxs as C } from "react/jsx-runtime";
2
+ import { FloatingNode as T } from "@floating-ui/react";
3
+ import { Fragment as M } from "react";
4
+ import { InteractiveTooltip as s } from "../InteractiveTooltip/InteractiveTooltip.js";
5
+ import { MenuItem as c } from "../MenuItem/MenuItem.js";
6
+ import { MenuItemMark as N } from "../../../types/menu-item.js";
7
+ import { useSubMenuFloating as S, SubMenuPanel as x } from "../../../utils/sub-menu-floating.js";
8
+ import { selectSubMenuGap as I, selectSubMenuCaretIcon as F, selectSubMenuClassName as P } from "./constants.js";
9
+ const q = ({
10
+ opt: t,
11
+ selectedValues: a,
12
+ mark: m = N.Tint,
13
+ onSelect: d
12
14
  }) => {
13
15
  const {
14
16
  isOpen: i,
15
- refs: n,
17
+ nodeId: u,
18
+ refs: l,
16
19
  floatingStyles: b,
17
- context: u,
18
- getReferenceProps: d,
19
- getFloatingProps: m
20
- } = M(x, "listbox", !!a.disabled), c = a.children?.some(
21
- (e) => l.includes(e.value)
22
- );
23
- return /* @__PURE__ */ p(f, { children: [
24
- /* @__PURE__ */ r(
25
- s,
20
+ context: p,
21
+ getReferenceProps: f,
22
+ getFloatingProps: v
23
+ } = S(I, "listbox", !!t.disabled), g = t.children?.some(
24
+ (e) => a.includes(e.value)
25
+ ), o = (
26
+ /*
27
+ The trigger carries no mark of its own: the check belongs to the child
28
+ that is actually chosen, one panel over. While its panel is open the row
29
+ stays tinted, which is what the design shows for an open parent.
30
+ */
31
+ /* @__PURE__ */ n(
32
+ c,
26
33
  {
27
- ref: n.setReference,
34
+ ref: l.setReference,
28
35
  role: "option",
29
36
  "aria-haspopup": "listbox",
30
37
  "aria-expanded": i,
31
- "aria-selected": !!c,
32
- "aria-disabled": !!a.disabled,
33
- disabled: a.disabled,
38
+ "aria-selected": !!g,
39
+ "aria-disabled": !!t.disabled,
40
+ disabled: t.disabled,
34
41
  ellipsisLabel: !0,
35
- icon: a.icon,
36
- label: a.labelNode ?? a.label,
37
- trailing: C,
38
- ...d()
42
+ icon: t.icon,
43
+ label: t.labelNode ?? t.label,
44
+ trailing: F,
45
+ ...f()
46
+ }
47
+ )
48
+ );
49
+ return /* @__PURE__ */ C(T, { id: u, children: [
50
+ t.interactiveTooltip ? /* @__PURE__ */ n(
51
+ s,
52
+ {
53
+ asChild: !0,
54
+ placement: t.interactiveTooltip.placement,
55
+ content: t.interactiveTooltip.content,
56
+ contentClassName: t.interactiveTooltip.contentClassName,
57
+ children: o
39
58
  }
40
- ),
41
- i && /* @__PURE__ */ r(
42
- S,
59
+ ) : o,
60
+ i && /* @__PURE__ */ n(
61
+ x,
43
62
  {
44
- refs: n,
63
+ refs: l,
45
64
  floatingStyles: b,
46
- context: u,
47
- getFloatingProps: m,
65
+ context: p,
66
+ getFloatingProps: v,
48
67
  role: "listbox",
49
- surfaceClassName: v,
50
- children: a.children.map((e) => /* @__PURE__ */ r(
51
- s,
52
- {
53
- role: "option",
54
- "aria-selected": l.includes(e.value),
55
- "aria-disabled": !!e.disabled,
56
- disabled: e.disabled,
57
- mark: o,
58
- selected: l.includes(e.value),
59
- ellipsisLabel: !0,
60
- icon: e.icon,
61
- label: e.labelNode ?? e.label,
62
- rightControl: e.rightControl,
63
- onClick: () => !e.disabled && t(e.value)
64
- },
65
- e.value
66
- ))
68
+ surfaceClassName: P,
69
+ children: t.children.map((e) => {
70
+ const r = /* @__PURE__ */ n(
71
+ c,
72
+ {
73
+ role: "option",
74
+ "aria-selected": a.includes(e.value),
75
+ "aria-disabled": !!e.disabled,
76
+ disabled: e.disabled,
77
+ mark: m,
78
+ selected: a.includes(e.value),
79
+ ellipsisLabel: !0,
80
+ icon: e.icon,
81
+ label: e.labelNode ?? e.label,
82
+ rightControl: e.rightControl,
83
+ onClick: () => !e.disabled && d(e.value)
84
+ }
85
+ );
86
+ return /* @__PURE__ */ n(M, { children: e.interactiveTooltip ? /* @__PURE__ */ n(
87
+ s,
88
+ {
89
+ asChild: !0,
90
+ placement: e.interactiveTooltip.placement,
91
+ content: e.interactiveTooltip.content,
92
+ contentClassName: e.interactiveTooltip.contentClassName,
93
+ children: r
94
+ }
95
+ ) : r }, e.value);
96
+ })
67
97
  }
68
98
  )
69
99
  ] });
70
100
  };
71
101
  export {
72
- L as SelectSubMenuItem
102
+ q as SelectSubMenuItem
73
103
  };
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "0.14.0-dev.40",
3
- "generatedAt": "2026-09-09T10:20:21.750Z",
2
+ "version": "0.14.0-dev.44",
3
+ "generatedAt": "2026-09-10T09:28:48.353Z",
4
4
  "kit": {
5
5
  "name": "@epam/ai-dial-ui-kit",
6
6
  "description": "A modern UI kit for building AI DIAL interfaces with React",
@@ -3390,6 +3390,82 @@
3390
3390
  "examples": [],
3391
3391
  "sourceFile": "components/New/Tooltip/TooltipTrigger.tsx"
3392
3392
  },
3393
+ {
3394
+ "name": "InteractiveTooltip",
3395
+ "category": "Components_2_0",
3396
+ "generation": "2.0",
3397
+ "description": "A hover panel that, unlike , can hold its own interactive\ncontent.\naliases: HoverCard|InfoPopover\nDesign system 2.0\n\nOpens next to the trigger on hover or focus, the way a tooltip does, but\nstays open while the pointer moves into the panel so its content — links,\nbuttons, anything — can be hovered and clicked. It carries no `role`, since\nARIA's `tooltip` role forbids focusable content and this is meant to hold\nsome; a panel with meaningfully interactive content should still be\nreachable without a mouse (Tab from the trigger reaches it), but a purely\ndecorative one is fine to leave out of the tab order entirely.\n\nRenders nothing on a mobile screen, where there is no hover to reveal it —\nso, as with , a control must never depend on this panel alone\nto be understood or operated.",
3398
+ "props": [
3399
+ {
3400
+ "name": "content",
3401
+ "type": "ReactNode",
3402
+ "required": true,
3403
+ "description": "The panel's content"
3404
+ },
3405
+ {
3406
+ "name": "placement",
3407
+ "type": "TooltipPlacement",
3408
+ "required": false,
3409
+ "defaultValue": "TooltipPlacement.Right",
3410
+ "description": "Side of the trigger the panel is placed on"
3411
+ },
3412
+ {
3413
+ "name": "children",
3414
+ "type": "ReactNode",
3415
+ "required": true,
3416
+ "description": "The element that triggers the panel"
3417
+ },
3418
+ {
3419
+ "name": "asChild",
3420
+ "type": "boolean",
3421
+ "required": false,
3422
+ "defaultValue": "false",
3423
+ "description": "Use the child as the trigger instead of wrapping it in a `<span>`"
3424
+ },
3425
+ {
3426
+ "name": "hideTooltip",
3427
+ "type": "boolean",
3428
+ "required": false,
3429
+ "defaultValue": "false",
3430
+ "description": "Suppress the panel while keeping the trigger rendered"
3431
+ },
3432
+ {
3433
+ "name": "initialOpen",
3434
+ "type": "boolean",
3435
+ "required": false,
3436
+ "defaultValue": "false",
3437
+ "description": "Whether the panel starts open (uncontrolled only)"
3438
+ },
3439
+ {
3440
+ "name": "open",
3441
+ "type": "boolean",
3442
+ "required": false,
3443
+ "description": "Controlled open state; disables the hover and focus triggers"
3444
+ },
3445
+ {
3446
+ "name": "onOpenChange",
3447
+ "type": "(open: boolean) => void",
3448
+ "required": false,
3449
+ "description": "Callback fired when the open state should change"
3450
+ },
3451
+ {
3452
+ "name": "triggerClassName",
3453
+ "type": "string",
3454
+ "required": false,
3455
+ "description": "Additional CSS classes for the trigger element"
3456
+ },
3457
+ {
3458
+ "name": "contentClassName",
3459
+ "type": "string",
3460
+ "required": false,
3461
+ "description": "Additional CSS classes for the panel"
3462
+ }
3463
+ ],
3464
+ "examples": [
3465
+ "<InteractiveTooltip\n placement={TooltipPlacement.Right}\n content={\n <>\n <p>Lets the model write and execute Python in an isolated sandbox.</p>\n <Button variant={ButtonVariant.Primary} appearance={ButtonAppearance.Link}>\n View details\n </Button>\n </>\n }\n>\n <MenuItem label=\"code-interpreter\" />\n</InteractiveTooltip>"
3466
+ ],
3467
+ "sourceFile": "components/New/InteractiveTooltip/InteractiveTooltip.tsx"
3468
+ },
3393
3469
  {
3394
3470
  "name": "EllipsisTooltip",
3395
3471
  "category": "Components_2_0",
@@ -4261,7 +4337,7 @@
4261
4337
  "name": "barClassName",
4262
4338
  "type": "string",
4263
4339
  "required": false,
4264
- "description": "Additional CSS classes for each bar's outer container."
4340
+ "description": "Additional CSS classes for each bar's outer container. In compare mode they apply to the shared pair container (one continuous block); the entry is a Tailwind `group` — use `group-hover:` for pair hover; when `onBarClick` is set that container also gets a default accent fill on hover and `:focus-visible`."
4265
4341
  },
4266
4342
  {
4267
4343
  "name": "barDescriptions",
@@ -9622,6 +9698,10 @@
9622
9698
  "name": "rightControl?",
9623
9699
  "value": "ReactNode"
9624
9700
  },
9701
+ {
9702
+ "name": "interactiveTooltip?",
9703
+ "value": "SelectOptionInteractiveTooltip"
9704
+ },
9625
9705
  {
9626
9706
  "name": "children?",
9627
9707
  "value": "SelectOption[]"
@@ -9754,6 +9834,10 @@
9754
9834
  {
9755
9835
  "name": "subMenuHoverOptions?",
9756
9836
  "value": "DropdownSubMenuHoverOptions"
9837
+ },
9838
+ {
9839
+ "name": "interactiveTooltip?",
9840
+ "value": "DropdownItemInteractiveTooltip"
9757
9841
  }
9758
9842
  ],
9759
9843
  "sourceFile": "models/dropdown.ts"