@epam/ai-dial-ui-kit 0.16.0-dev.25 → 0.16.0-dev.32

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 (32) hide show
  1. package/dist/CHANGELOG.md +9 -0
  2. package/dist/{DateCellRenderer-BmgQYPuv.cjs → DateCellRenderer-ZFBZsJdH.cjs} +24 -24
  3. package/dist/{IconButton-B1Hx0Y3y.cjs → IconButton-CsePS6PY.cjs} +1 -1
  4. package/dist/{JsonEditor-Bxui5wJH.cjs → JsonEditor-DQhHSm93.cjs} +1 -1
  5. package/dist/{MarkdownEditor-BKtFs714.cjs → MarkdownEditor-CvIPIbPq.cjs} +1 -1
  6. package/dist/{MarkdownEditor-Bapd1ycU.cjs → MarkdownEditor-TR6X_gdl.cjs} +1 -1
  7. package/dist/{MarkdownEditorContainer-DLPODjar.cjs → MarkdownEditorContainer-JIn_VNUX.cjs} +1 -1
  8. package/dist/{Switch-DAaAOaIu.cjs → Switch-HEL_aq23.cjs} +1 -1
  9. package/dist/components/New/CaptionText/CaptionText.js +3 -4
  10. package/dist/components/New/Dropdown/Dropdown.js +208 -197
  11. package/dist/components/New/Input/Input.js +121 -107
  12. package/dist/components/New/SchemaRenderer/components/SchemaField.js +45 -44
  13. package/dist/components/New/SchemaRenderer/components/SchemaFieldContent.js +41 -38
  14. package/dist/components/New/SchemaRenderer/components/SchemaPrimitiveField.js +45 -39
  15. package/dist/components/New/Select/Select.js +201 -198
  16. package/dist/components/New/Textarea/Textarea.js +37 -33
  17. package/dist/components-manifest.json +10 -4
  18. package/dist/dial-ui-kit.cjs +3 -3
  19. package/dist/editors.cjs +1 -1
  20. package/dist/grid.cjs +1 -1
  21. package/dist/lazy-kq-xfXXv.cjs +1 -0
  22. package/dist/{merge-classes-BEJXjzkx.cjs → merge-classes-B0SnCG4i.cjs} +1 -1
  23. package/dist/migration-guides/0.16.0/caption-text-no-alert-role.md +90 -0
  24. package/dist/migration-guides/README.md +1 -0
  25. package/dist/src/components/New/CaptionText/CaptionText.d.ts +8 -1
  26. package/dist/src/components/New/SchemaRenderer/components/SchemaFieldContent.d.ts +1 -0
  27. package/dist/src/components/New/SchemaRenderer/components/SchemaPrimitiveField.d.ts +2 -0
  28. package/dist/src/components/New/SchemaRenderer/types.d.ts +3 -1
  29. package/dist/src/components/New/Select/Select.d.ts +2 -0
  30. package/dist/utils/merge-classes.js +36 -7
  31. package/package.json +1 -1
  32. package/dist/lazy-_W6FYhKg.cjs +0 -1
@@ -1,56 +1,60 @@
1
- import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import "react";
3
- import { mergeClasses as n } from "../../../utils/merge-classes.js";
4
- import { ErrorText as v, CaptionText as N } from "../CaptionText/CaptionText.js";
5
- import { Label as b } from "../Label/Label.js";
6
- var C = /* @__PURE__ */ ((e) => (e.None = "none", e.Both = "both", e.Horizontal = "horizontal", e.Vertical = "vertical", e))(C || {});
7
- const s = {
1
+ import { jsxs as c, jsx as a } from "react/jsx-runtime";
2
+ import { useId as I } from "react";
3
+ import { mergeClasses as m } from "../../../utils/merge-classes.js";
4
+ import { ErrorText as k, CaptionText as z } from "../CaptionText/CaptionText.js";
5
+ import { Label as j } from "../Label/Label.js";
6
+ var B = /* @__PURE__ */ ((e) => (e.None = "none", e.Both = "both", e.Horizontal = "horizontal", e.Vertical = "vertical", e))(B || {});
7
+ const f = {
8
8
  none: "resize-none",
9
9
  both: "resize",
10
10
  horizontal: "resize-x",
11
11
  vertical: "resize-y"
12
- }, g = (e) => typeof e == "boolean" ? s[
12
+ }, $ = (e) => typeof e == "boolean" ? f[
13
13
  e ? "both" : "none"
14
14
  /* None */
15
- ] : s[e], E = ({
15
+ ] : f[e], V = ({
16
16
  className: e = "",
17
- value: m,
18
- onChange: c,
19
- error: r,
20
- containerClassName: x,
21
- resize: p = !1,
22
- labelProps: a,
23
- caption: f,
24
- id: o,
25
- invalid: d,
17
+ value: x,
18
+ onChange: p,
19
+ error: t,
20
+ containerClassName: v,
21
+ resize: u = !1,
22
+ labelProps: o,
23
+ caption: r,
24
+ id: b,
25
+ invalid: n,
26
+ "aria-describedby": h,
27
+ "aria-invalid": N,
26
28
  ...l
27
29
  }) => {
28
- const h = n(
30
+ const g = I(), i = b ?? g, s = t ? `${i}-error` : void 0, d = !t && r ? `${i}-caption` : void 0, C = m(
29
31
  "dial-kit-textarea dial-kit-input px-3 py-2",
30
- d && "dial-kit-input-error",
32
+ n && "dial-kit-input-error",
31
33
  l.disabled && "dial-kit-input-disable",
32
- g(p),
34
+ $(u),
33
35
  e
34
36
  );
35
- return /* @__PURE__ */ i("div", { className: n("flex flex-col gap-2", x), children: [
36
- a && /* @__PURE__ */ t(b, { ...a, htmlFor: o }),
37
- /* @__PURE__ */ i("div", { className: "flex flex-col gap-1", children: [
38
- /* @__PURE__ */ t(
37
+ return /* @__PURE__ */ c("div", { className: m("flex flex-col gap-2", v), children: [
38
+ o && /* @__PURE__ */ a(j, { ...o, htmlFor: i }),
39
+ /* @__PURE__ */ c("div", { className: "flex flex-col gap-1", children: [
40
+ /* @__PURE__ */ a(
39
41
  "textarea",
40
42
  {
41
- id: o,
42
- value: m || "",
43
- className: h,
44
- onChange: (u) => c?.(u.currentTarget.value),
43
+ id: i,
44
+ value: x || "",
45
+ className: C,
46
+ onChange: (y) => p?.(y.currentTarget.value),
47
+ "aria-describedby": [h, s, d].filter(Boolean).join(" ") || void 0,
48
+ "aria-invalid": N ?? (t || n ? !0 : void 0),
45
49
  ...l
46
50
  }
47
51
  ),
48
- /* @__PURE__ */ t(v, { text: r }),
49
- !r && /* @__PURE__ */ t(N, { text: f })
52
+ /* @__PURE__ */ a(k, { id: s, text: t }),
53
+ !t && /* @__PURE__ */ a(z, { id: d, text: r })
50
54
  ] })
51
55
  ] });
52
56
  };
53
57
  export {
54
- E as Textarea,
55
- C as TextareaResize
58
+ V as Textarea,
59
+ B as TextareaResize
56
60
  };
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "0.16.0-dev.25",
3
- "generatedAt": "2026-10-21T16:36:58.089Z",
2
+ "version": "0.16.0-dev.32",
3
+ "generatedAt": "2026-10-21T19:48:14.902Z",
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",
@@ -1241,6 +1241,12 @@
1241
1241
  "required": false,
1242
1242
  "description": "Accessible name for the field; use it when there is no visible label."
1243
1243
  },
1244
+ {
1245
+ "name": "ariaDescribedBy",
1246
+ "type": "string",
1247
+ "required": false,
1248
+ "description": "Ids of extra elements describing the field, e.g. an error rendered outside it; the field's own `error`/`caption` are linked automatically."
1249
+ },
1244
1250
  {
1245
1251
  "name": "searchable",
1246
1252
  "type": "boolean",
@@ -2385,7 +2391,7 @@
2385
2391
  "name": "CaptionText",
2386
2392
  "category": "Components_2_0",
2387
2393
  "generation": "2.0",
2388
- "description": "A component for displaying caption text with consistent styling\naliases: HelperText|ValidationText\nDesign system 2.0",
2394
+ "description": "A component for displaying caption text with consistent styling\naliases: HelperText|ValidationText\nDesign system 2.0\n\nIt carries no live-region role: a field caption or error is described, not\nannounced. Give it an `id` and point the control's `aria-describedby` at it\n(the 2.0 form controls do this for their own `caption` / `error`). Wrap it in\na `role=\"alert\"` region only for a message that must interrupt, such as a\nfailed submit.",
2389
2395
  "props": [
2390
2396
  {
2391
2397
  "name": "text",
@@ -2402,7 +2408,7 @@
2402
2408
  }
2403
2409
  ],
2404
2410
  "examples": [
2405
- "<CaptionText text=\"This field is required\" variant={CaptionType.Error} />"
2411
+ "<input aria-describedby=\"name-error\" aria-invalid />\n<CaptionText id=\"name-error\" text=\"This field is required\" variant={CaptionType.Error} />"
2406
2412
  ],
2407
2413
  "sourceFile": "components/New/CaptionText/CaptionText.tsx"
2408
2414
  },