@epam/ai-dial-ui-kit 0.5.0-rc.35 → 0.5.0-rc.37

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.
@@ -2905,43 +2905,38 @@ const kv = {
2905
2905
  [He.Tertiary]: "dial-tertiary-button",
2906
2906
  [He.Danger]: "dial-danger-button"
2907
2907
  }, Ie = ({
2908
- title: e,
2908
+ label: e,
2909
2909
  variant: t,
2910
- cssClass: s,
2911
- textCssClass: o,
2912
- ref: i,
2913
- onClick: n,
2914
- disable: r,
2915
- iconAfter: a,
2916
- iconBefore: l,
2917
- hideTitleOnMobile: c,
2918
- ariaLabel: d,
2919
- type: u = "button"
2910
+ className: s,
2911
+ textClassName: o,
2912
+ iconAfter: i,
2913
+ iconBefore: n,
2914
+ hideTitleOnMobile: r,
2915
+ type: a = "button",
2916
+ ...l
2920
2917
  }) => {
2921
- const h = Y(
2918
+ const c = Y(
2922
2919
  "dial-small-semi",
2923
- a ? "mr-2" : "",
2924
- l ? "ml-2" : "",
2925
- c ? "hidden sm:inline" : "inline",
2920
+ i ? "mr-2" : "",
2921
+ n ? "ml-2" : "",
2922
+ r ? "hidden sm:inline" : "inline",
2926
2923
  o
2927
- ), g = Y(
2924
+ ), d = Y(
2928
2925
  t && kv[t],
2929
- s,
2930
- "focus-visible:outline outline-offset-0"
2926
+ "focus-visible:outline outline-offset-0",
2927
+ s
2931
2928
  );
2932
2929
  return /* @__PURE__ */ z(
2933
2930
  "button",
2934
2931
  {
2935
- ref: i,
2936
- type: u,
2937
- className: g,
2938
- onClick: (p) => n?.(p),
2939
- disabled: r,
2940
- "aria-label": e || d,
2932
+ ...l,
2933
+ type: a,
2934
+ className: d,
2935
+ "aria-label": e || l["aria-label"],
2941
2936
  children: [
2942
- /* @__PURE__ */ v(Ne, { icon: l }),
2943
- e && /* @__PURE__ */ v("span", { className: h, children: e }),
2944
- /* @__PURE__ */ v(Ne, { icon: a })
2937
+ /* @__PURE__ */ v(Ne, { icon: n }),
2938
+ e && /* @__PURE__ */ v("span", { className: c, children: e }),
2939
+ /* @__PURE__ */ v(Ne, { icon: i })
2945
2940
  ]
2946
2941
  }
2947
2942
  );
@@ -2980,8 +2975,8 @@ const Av = {
2980
2975
  o && /* @__PURE__ */ v(
2981
2976
  Ie,
2982
2977
  {
2983
- cssClass: "ml-2 text-secondary hover:text-primary",
2984
- ariaLabel: "Close alert",
2978
+ className: "ml-2 text-secondary hover:text-primary",
2979
+ "aria-label": "Close alert",
2985
2980
  iconBefore: /* @__PURE__ */ v(Uo, { size: 16 }),
2986
2981
  onClick: (n) => i?.(n)
2987
2982
  }
@@ -3528,7 +3523,7 @@ const jv = "flex", Kv = "pb-1 mt-2", qv = {
3528
3523
  /* @__PURE__ */ v(
3529
3524
  Ie,
3530
3525
  {
3531
- cssClass: "hover:text-icon-accent-primary p-1",
3526
+ className: "hover:text-icon-accent-primary p-1",
3532
3527
  onClick: w,
3533
3528
  iconBefore: f ? /* @__PURE__ */ v(dC, { size: i, stroke: n }) : /* @__PURE__ */ v(uC, { size: i, stroke: n })
3534
3529
  }
@@ -5583,14 +5578,14 @@ const hb = Y(
5583
5578
  "dial-small h-[34px] rounded text-primary"
5584
5579
  ), fb = "opacity-75 !cursor-not-allowed", mb = "text-error", Cb = "my-1 border-t border-hover border-secondary", ni = 4, qh = ({
5585
5580
  ariaLabel: e,
5586
- cssClass: t,
5581
+ className: t,
5587
5582
  size: s = 24,
5588
5583
  onClose: o
5589
5584
  }) => /* @__PURE__ */ v(
5590
5585
  Ie,
5591
5586
  {
5592
- ariaLabel: e,
5593
- cssClass: be("text-secondary hover:text-accent-primary", t),
5587
+ "aria-label": e,
5588
+ className: be("text-secondary hover:text-accent-primary", t),
5594
5589
  onClick: o,
5595
5590
  iconBefore: /* @__PURE__ */ v(Uo, { size: s })
5596
5591
  }
@@ -6017,7 +6012,7 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6017
6012
  Ie,
6018
6013
  {
6019
6014
  iconBefore: /* @__PURE__ */ v(mr, { size: 18 }),
6020
- cssClass: Y(
6015
+ className: Y(
6021
6016
  "w-8 h-8 flex items-center justify-center rounded border",
6022
6017
  c ? "bg-layer-4 border-transparent" : "border-primary"
6023
6018
  )
@@ -6034,15 +6029,18 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6034
6029
  disabled: o,
6035
6030
  isLast: i,
6036
6031
  separator: n = Qh,
6037
- cssClass: r,
6032
+ className: r,
6038
6033
  iconBefore: a,
6039
- titleCssClass: l
6034
+ titleClassName: l
6040
6035
  }) => {
6041
6036
  const c = be(
6042
6037
  Yh,
6043
6038
  i ? Rb : yb,
6044
6039
  r
6045
- ), d = (!!t || !!s) && !i && !o, u = d ? be(bd, xb) : be(
6040
+ ), d = (!!t || !!s) && !i && !o, u = d ? be(
6041
+ bd,
6042
+ xb
6043
+ ) : be(
6046
6044
  bd,
6047
6045
  Fb,
6048
6046
  o ? "pointer-events-none opacity-75" : ""
@@ -6078,20 +6076,13 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6078
6076
  pathItems: e,
6079
6077
  separator: t = Qh,
6080
6078
  ariaLabel: s = "Breadcrumb",
6081
- cssClass: o,
6079
+ className: o,
6082
6080
  children: i,
6083
- titleCssClass: n
6081
+ titleClassName: n
6084
6082
  }) => {
6085
6083
  const r = B(() => e?.length ? e : oC.toArray(i).filter(Hl).map((c) => {
6086
- const d = c.props;
6087
- return {
6088
- title: d.title,
6089
- href: d.href,
6090
- onClick: d.onClick,
6091
- disabled: d.disabled,
6092
- iconBefore: d.iconBefore,
6093
- cssClass: d.cssClass
6094
- };
6084
+ const d = c.props, { titleClassName: u, isLast: h, separator: g, ...p } = d;
6085
+ return p;
6095
6086
  }), [e, i]), a = k(
6096
6087
  (c) => {
6097
6088
  const d = parseInt(c.key, 10), u = r[d];
@@ -6108,7 +6099,7 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6108
6099
  key: `item-${f}`,
6109
6100
  isLast: f === r.length - 1,
6110
6101
  separator: t,
6111
- titleCssClass: n
6102
+ titleClassName: n
6112
6103
  }
6113
6104
  ));
6114
6105
  const c = r.at(0), d = r.slice(1, -2), u = r.at(-2), h = r.at(-1);
@@ -6125,7 +6116,7 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6125
6116
  ...c,
6126
6117
  key: "item-0",
6127
6118
  separator: t,
6128
- titleCssClass: n
6119
+ titleClassName: n
6129
6120
  }
6130
6121
  ),
6131
6122
  /* @__PURE__ */ z("li", { className: be(Yh), children: [
@@ -6157,7 +6148,7 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6157
6148
  ...u,
6158
6149
  key: `item-${r.length - 2}`,
6159
6150
  separator: t,
6160
- titleCssClass: n
6151
+ titleClassName: n
6161
6152
  }
6162
6153
  ),
6163
6154
  /* @__PURE__ */ ui(
@@ -6167,7 +6158,7 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6167
6158
  key: `item-${r.length - 1}`,
6168
6159
  isLast: !0,
6169
6160
  separator: t,
6170
- titleCssClass: n
6161
+ titleClassName: n
6171
6162
  }
6172
6163
  )
6173
6164
  ] });
@@ -6181,13 +6172,13 @@ const vd = () => typeof window < "u" && window.innerWidth < 640, wd = () => {
6181
6172
  }
6182
6173
  );
6183
6174
  }, Pb = ({
6184
- iconClass: e,
6175
+ iconClassName: e,
6185
6176
  ...t
6186
6177
  }) => /* @__PURE__ */ v(
6187
6178
  Ie,
6188
6179
  {
6189
- iconBefore: /* @__PURE__ */ v(Vi, { ...re, className: e || "" }),
6190
- ...t
6180
+ ...t,
6181
+ iconBefore: /* @__PURE__ */ v(Vi, { ...re, className: e || "" })
6191
6182
  }
6192
6183
  ), Tb = ({
6193
6184
  value: e,
@@ -6635,7 +6626,7 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6635
6626
  Ie,
6636
6627
  {
6637
6628
  variant: He.Secondary,
6638
- title: n,
6629
+ label: n,
6639
6630
  onClick: () => h ? h() : d?.()
6640
6631
  }
6641
6632
  ),
@@ -6643,9 +6634,9 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6643
6634
  Ie,
6644
6635
  {
6645
6636
  variant: Sd[f].confirmVariant,
6646
- cssClass: c,
6647
- title: i,
6648
- disable: a,
6637
+ className: c,
6638
+ label: i,
6639
+ disabled: a,
6649
6640
  onClick: () => u()
6650
6641
  }
6651
6642
  )
@@ -6827,7 +6818,7 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6827
6818
  Ie,
6828
6819
  {
6829
6820
  variant: He.Secondary,
6830
- title: g,
6821
+ label: g,
6831
6822
  onClick: E
6832
6823
  }
6833
6824
  ),
@@ -6835,9 +6826,9 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6835
6826
  Ie,
6836
6827
  {
6837
6828
  variant: He.Primary,
6838
- title: p,
6829
+ label: p,
6839
6830
  onClick: R,
6840
- disable: !f
6831
+ disabled: !f
6841
6832
  }
6842
6833
  )
6843
6834
  ] }),
@@ -6879,7 +6870,7 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6879
6870
  Ie,
6880
6871
  {
6881
6872
  variant: He.Secondary,
6882
- title: o,
6873
+ label: o,
6883
6874
  onClick: () => d ? d() : l?.()
6884
6875
  }
6885
6876
  ),
@@ -6887,9 +6878,9 @@ const Gb = "flex justify-end gap-2 px-6 py-4", Vb = "text-secondary dial-small-1
6887
6878
  Ie,
6888
6879
  {
6889
6880
  variant: He.Primary,
6890
- cssClass: a,
6891
- title: s,
6892
- disable: n,
6881
+ className: a,
6882
+ label: s,
6883
+ disabled: n,
6893
6884
  onClick: () => c()
6894
6885
  }
6895
6886
  )
@@ -7376,8 +7367,8 @@ const o0 = ({
7376
7367
  b && /* @__PURE__ */ v(
7377
7368
  Ie,
7378
7369
  {
7379
- ariaLabel: "Close select",
7380
- cssClass: "shrink-0",
7370
+ "aria-label": "Close select",
7371
+ className: "shrink-0",
7381
7372
  iconBefore: /* @__PURE__ */ v(Uo, { size: 16 }),
7382
7373
  onClick: (W) => {
7383
7374
  x?.(W), O(!1);
@@ -8232,7 +8223,7 @@ const C0 = function(t, s, o) {
8232
8223
  Ie,
8233
8224
  {
8234
8225
  variant: He.Tertiary,
8235
- title: o,
8226
+ label: o,
8236
8227
  onClick: () => u.current?.click()
8237
8228
  }
8238
8229
  )
@@ -8288,7 +8279,7 @@ const C0 = function(t, s, o) {
8288
8279
  }, c = (u) => /* @__PURE__ */ v(
8289
8280
  Pb,
8290
8281
  {
8291
- ariaLabel: a,
8282
+ "aria-label": a,
8292
8283
  onClick: (h) => l(h, u)
8293
8284
  }
8294
8285
  ), d = (u) => {
@@ -8351,9 +8342,9 @@ const C0 = function(t, s, o) {
8351
8342
  Ie,
8352
8343
  {
8353
8344
  variant: He.Tertiary,
8354
- cssClass: "!text-error",
8345
+ className: "!text-error",
8355
8346
  iconBefore: /* @__PURE__ */ v(Vi, { ...re }),
8356
- title: c,
8347
+ label: c,
8357
8348
  onClick: p
8358
8349
  }
8359
8350
  ),
@@ -8362,7 +8353,7 @@ const C0 = function(t, s, o) {
8362
8353
  {
8363
8354
  variant: He.Tertiary,
8364
8355
  iconBefore: /* @__PURE__ */ v(BC, { ...re }),
8365
- title: d,
8356
+ label: d,
8366
8357
  onClick: g
8367
8358
  }
8368
8359
  )
@@ -8795,7 +8786,7 @@ const dg = ({
8795
8786
  ) });
8796
8787
  }, z0 = "w-full h-[12] flex items-center justify-between gap-4", W0 = "min-w-0 h-[38px] flex-1 overflow-hidden bg-layer-3 px-3 flex items-center rounded", _0 = "w-[260px]", U0 = ({
8797
8788
  ariaLabel: e = "Breadcrumb",
8798
- titleCssClass: t,
8789
+ titleClassName: t,
8799
8790
  onItemClick: s,
8800
8791
  path: o,
8801
8792
  makeHref: i,
@@ -8853,8 +8844,8 @@ const dg = ({
8853
8844
  {
8854
8845
  pathItems: w,
8855
8846
  ariaLabel: e,
8856
- titleCssClass: t,
8857
- cssClass: l
8847
+ titleClassName: t,
8848
+ className: l
8858
8849
  }
8859
8850
  ) }),
8860
8851
  c && /* @__PURE__ */ v(
@@ -47840,7 +47831,7 @@ const Tm = () => {
47840
47831
  children: /* @__PURE__ */ v(
47841
47832
  Ie,
47842
47833
  {
47843
- cssClass: "h-[38px]",
47834
+ className: "h-[38px]",
47844
47835
  iconBefore: /* @__PURE__ */ v(
47845
47836
  mr,
47846
47837
  {
@@ -47938,7 +47929,7 @@ const JA = ({ selectionLabel: e, onClearSelection: t, actions: s }) => {
47938
47929
  Ie,
47939
47930
  {
47940
47931
  iconBefore: d,
47941
- title: u,
47932
+ label: u,
47942
47933
  variant: He.Secondary,
47943
47934
  hideTitleOnMobile: !0
47944
47935
  },
@@ -47957,9 +47948,9 @@ const JA = ({ selectionLabel: e, onClearSelection: t, actions: s }) => {
47957
47948
  /* @__PURE__ */ v("div", { ref: n, children: /* @__PURE__ */ v(
47958
47949
  Ie,
47959
47950
  {
47960
- title: e,
47951
+ label: e,
47961
47952
  onClick: t,
47962
- textCssClass: "text-accent-primary whitespace-nowrap",
47953
+ textClassName: "text-accent-primary whitespace-nowrap",
47963
47954
  variant: He.Tertiary,
47964
47955
  iconBefore: /* @__PURE__ */ v(Uo, { ...re, className: "text-accent-primary" })
47965
47956
  }
@@ -47973,7 +47964,7 @@ const JA = ({ selectionLabel: e, onClearSelection: t, actions: s }) => {
47973
47964
  children: /* @__PURE__ */ v(
47974
47965
  Ie,
47975
47966
  {
47976
- cssClass: "h-[38px]",
47967
+ className: "h-[38px]",
47977
47968
  iconBefore: /* @__PURE__ */ v(
47978
47969
  mr,
47979
47970
  {
@@ -47988,12 +47979,12 @@ const JA = ({ selectionLabel: e, onClearSelection: t, actions: s }) => {
47988
47979
  a.map(({ key: c, icon: d, title: u, onClick: h, disabled: g }) => /* @__PURE__ */ v(
47989
47980
  Ie,
47990
47981
  {
47991
- cssClass: "!p-[9px]",
47982
+ className: "!p-[9px]",
47992
47983
  iconBefore: d,
47993
- title: u,
47984
+ label: u,
47994
47985
  variant: He.Secondary,
47995
47986
  hideTitleOnMobile: !0,
47996
- disable: g,
47987
+ disabled: g,
47997
47988
  onClick: (p) => h?.({ key: c, domEvent: p })
47998
47989
  },
47999
47990
  c
@@ -48737,7 +48728,7 @@ const u8 = ({
48737
48728
  /* @__PURE__ */ v(
48738
48729
  Ie,
48739
48730
  {
48740
- cssClass: "hover:text-icon-accent-primary p-1",
48731
+ className: "hover:text-icon-accent-primary p-1",
48741
48732
  onClick: Um,
48742
48733
  iconBefore: /* @__PURE__ */ v(jC, { size: 24, stroke: 1.5 })
48743
48734
  }
@@ -48909,7 +48900,7 @@ const u8 = ({
48909
48900
  /* @__PURE__ */ v(
48910
48901
  Ie,
48911
48902
  {
48912
- title: n,
48903
+ label: n,
48913
48904
  variant: He.Tertiary,
48914
48905
  iconBefore: /* @__PURE__ */ v(KC, { ...re })
48915
48906
  }
@@ -48939,7 +48930,7 @@ const u8 = ({
48939
48930
  Ie,
48940
48931
  {
48941
48932
  onClick: e,
48942
- title: "Cancel",
48933
+ label: "Cancel",
48943
48934
  variant: He.Secondary
48944
48935
  }
48945
48936
  ),
@@ -48947,7 +48938,7 @@ const u8 = ({
48947
48938
  Ie,
48948
48939
  {
48949
48940
  onClick: t,
48950
- title: r === "copy" ? o : i,
48941
+ label: r === "copy" ? o : i,
48951
48942
  variant: He.Primary
48952
48943
  }
48953
48944
  )
@@ -4,9 +4,9 @@ export interface DialBreadcrumbProps {
4
4
  pathItems?: DialBreadcrumbPathItem[];
5
5
  separator?: ReactNode;
6
6
  ariaLabel?: string;
7
- cssClass?: string;
7
+ className?: string;
8
8
  children?: ReactNode;
9
- titleCssClass?: string;
9
+ titleClassName?: string;
10
10
  }
11
11
  /**
12
12
  * Breadcrumb navigation component with horizontal scroll on overflow.
@@ -31,11 +31,11 @@ export interface DialBreadcrumbProps {
31
31
  * </DialBreadcrumb>
32
32
  * ```
33
33
  *
34
- * @param pathItems - Array of breadcrumb pathItems (see `DialBreadcrumbItem`).
35
- * @param separator - Custom separator node (default: right chevron icon).
36
- * @param ariaLabel - Aria label for the `<nav>` element (default: "Breadcrumb").
37
- * @param cssClass - Additional CSS classes for the `<nav>` container.
38
- * @param children - Alternatively, compose with `<DialBreadcrumbItem/>` as children.
39
- * @param titleCssClass - Additional CSS classes applied to each item when using `pathItems` prop.
34
+ * @param [pathItems] - Array of breadcrumb pathItems (see `DialBreadcrumbItem`).
35
+ * @param [separator] - Custom separator node (default: right chevron icon).
36
+ * @param [ariaLabel] - Aria label for the `<nav>` element (default: "Breadcrumb").
37
+ * @param [className] - Additional CSS classes for the `<nav>` container.
38
+ * @param [children] - Alternatively, compose with `<DialBreadcrumbItem/>` as children.
39
+ * @param [titleClassName] - Additional CSS classes applied to each item when using `pathItems` prop.
40
40
  */
41
41
  export declare const DialBreadcrumb: FC<DialBreadcrumbProps>;
@@ -5,8 +5,8 @@ export interface DialBreadcrumbItemProps {
5
5
  onClick?: MouseEventHandler<HTMLAnchorElement>;
6
6
  disabled?: boolean;
7
7
  iconBefore?: ReactNode;
8
- cssClass?: string;
9
- titleCssClass?: string;
8
+ className?: string;
9
+ titleClassName?: string;
10
10
  isLast?: boolean;
11
11
  separator?: ReactNode;
12
12
  }
@@ -1,12 +1,12 @@
1
1
  import { ReactNode } from 'react';
2
- export declare const breadcrumbBaseClasses = "w-full overflow-hidden";
3
- export declare const breadcrumbListClasses = "flex flex-nowrap items-center gap-2 min-w-0 px-0 py-0 whitespace-nowrap";
4
- export declare const breadcrumbItemBaseClasses = "flex items-center gap-2 min-w-0 shrink-0 dial-small";
5
- export declare const breadcrumbItemVisibleClasses = "max-w-[20%] basis-[20%] flex-none";
6
- export declare const breadcrumbItemLastClasses = "flex-1 min-w-0";
7
- export declare const breadcrumbLinkBaseClasses = "inline-flex items-center gap-1 min-w-0 transition-colors";
8
- export declare const breadcrumbLinkInteractiveClasses = "text-secondary hover:text-accent-primary";
9
- export declare const breadcrumbCurrentClasses = "text-primary cursor-default";
10
- export declare const breadcrumbSeparatorClasses = "flex-none inline-flex items-center leading-none text-icon-secondary";
11
- export declare const breadcrumbEllipsisButtonClasses = "items-center gap-1 min-w-0 transition-colors text-secondary hover:text-accent-primary";
2
+ export declare const breadcrumbBaseClassName = "w-full overflow-hidden";
3
+ export declare const breadcrumbListClassName = "flex flex-nowrap items-center gap-2 min-w-0 px-0 py-0 whitespace-nowrap";
4
+ export declare const breadcrumbItemBaseClassName = "flex items-center gap-2 min-w-0 shrink-0 dial-small";
5
+ export declare const breadcrumbItemVisibleClassName = "max-w-[20%] basis-[20%] flex-none";
6
+ export declare const breadcrumbItemLastClassName = "flex-1 min-w-0";
7
+ export declare const breadcrumbLinkBaseClassName = "inline-flex items-center gap-1 min-w-0 transition-colors";
8
+ export declare const breadcrumbLinkInteractiveClassName = "text-secondary hover:text-accent-primary";
9
+ export declare const breadcrumbCurrentClassName = "text-primary cursor-default";
10
+ export declare const breadcrumbSeparatorClassName = "flex-none inline-flex items-center leading-none text-icon-secondary";
11
+ export declare const breadcrumbEllipsisButtonClassName = "items-center gap-1 min-w-0 transition-colors text-secondary hover:text-accent-primary";
12
12
  export declare const defaultSeparator: ReactNode;
@@ -1,18 +1,12 @@
1
- import { FC, MouseEvent, ReactNode, Ref } from 'react';
1
+ import { ButtonHTMLAttributes, DetailedHTMLProps, FC, ReactNode } from 'react';
2
2
  import { ButtonVariant } from '../../types/button';
3
- export interface DialButtonProps {
4
- type?: 'button' | 'submit' | 'reset';
3
+ export interface DialButtonProps extends DetailedHTMLProps<ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement> {
5
4
  variant?: ButtonVariant;
6
- cssClass?: string;
7
- textCssClass?: string;
8
- disable?: boolean;
9
- title?: string;
5
+ textClassName?: string;
6
+ label?: string;
10
7
  iconBefore?: ReactNode;
11
8
  iconAfter?: ReactNode;
12
- onClick?: (e: MouseEvent<HTMLButtonElement>) => void;
13
- ref?: Ref<HTMLButtonElement>;
14
9
  hideTitleOnMobile?: boolean;
15
- ariaLabel?: string;
16
10
  }
17
11
  /**
18
12
  * A Button component with flexible icon and text positioning
@@ -20,24 +14,20 @@ export interface DialButtonProps {
20
14
  * @example
21
15
  * ```tsx
22
16
  * <DialButton
23
- * title="Click me"
17
+ * label="Click me"
24
18
  * onClick={handleClick}
25
19
  * iconBefore={<Icon />}
26
- * cssClass="custom-button"
20
+ * className="custom-button"
27
21
  * />
28
22
  * ```
29
23
  *
30
- * @param [title] - The text content of the button
31
- * @param [type='button'] - The HTML button type attribute
24
+ * inherits all properties from the `ButtonHTMLAttributes<HTMLButtonElement>`
25
+ *
26
+ * @param [label] - The text content of the button
32
27
  * @param [variant=ButtonVariant.Primary] - Defines the visual style of the button
33
- * @param [cssClass] - Additional CSS classes to apply to the button
34
- * @param [textCssClass] - Additional CSS classes to apply specifically to the button text
35
- * @param [onClick] - Click event handler for the button
36
- * @param [disable=false] - Whether the button should be disabled
28
+ * @param [textClassName] - Additional CSS classes to apply specifically to the button text
37
29
  * @param [iconAfter] - Icon or element to display after the button text
38
30
  * @param [iconBefore] - Icon or element to display before the button text
39
31
  * @param [hideTitleOnMobile=false] - Whether to hide the title text on mobile devices
40
- * @param [ariaLabel] - Accessible label for screen readers when no title is provided
41
- * @param [ref] - Ref to access the button DOM element
42
32
  */
43
33
  export declare const DialButton: FC<DialButtonProps>;
@@ -1,7 +1,7 @@
1
1
  import { FC, MouseEvent } from 'react';
2
2
  export interface DialCloseButtonProps {
3
3
  ariaLabel?: string;
4
- cssClass?: string;
4
+ className?: string;
5
5
  size?: number;
6
6
  onClose: (e: MouseEvent<HTMLButtonElement>) => void;
7
7
  }
@@ -13,13 +13,13 @@ export interface DialCloseButtonProps {
13
13
  * <DialCloseButton
14
14
  * ariaLabel="Close dialog"
15
15
  * onClose={handleClose}
16
- * cssClass="custom-close"
16
+ * className="custom-close"
17
17
  * size={32}
18
18
  * />
19
19
  * ```
20
20
  *
21
21
  * @param [ariaLabel] - Accessible label for screen readers
22
- * @param [cssClass] - Additional CSS classes to apply to the button
22
+ * @param [className] - Additional CSS classes to apply to the button
23
23
  * @param [size=24] - Size of the close icon
24
24
  * @param onClose - Click event handler for the close button
25
25
  */
@@ -1,9 +1,7 @@
1
- import { FC, MouseEvent } from 'react';
2
- export interface DialRemoveButtonProps {
3
- iconClass?: string;
4
- cssClass?: string;
5
- ariaLabel?: string;
6
- onClick: (e: MouseEvent) => void;
1
+ import { FC } from 'react';
2
+ import { DialButtonProps } from '../Button/Button';
3
+ export interface DialRemoveButtonProps extends Omit<DialButtonProps, 'iconBefore' | 'iconAfter'> {
4
+ iconClassName?: string;
7
5
  }
8
6
  /**
9
7
  * A specialized button component for removal or delete actions.
@@ -14,11 +12,11 @@ export interface DialRemoveButtonProps {
14
12
  * <DialRemoveButton
15
13
  * label="Delete item"
16
14
  * onClick={handleDelete}
17
- * iconClass="text-error"
15
+ * iconClassName="text-error"
18
16
  * />
19
17
  * @component
20
18
  * @param {DialRemoveButtonProps} props - The properties for the remove button component.
21
- * @param {string} [props.iconClass] - Optional CSS class applied to the trash icon for styling or sizing.
19
+ * @param {string} [props.iconClassName] - Optional CSS class applied to the trash icon for styling or sizing.
22
20
  * @returns {JSX.Element} The rendered remove button component.
23
21
  */
24
22
  export declare const DialRemoveButton: FC<DialRemoveButtonProps>;
@@ -4,6 +4,6 @@ export interface DialBreadcrumbPathItem {
4
4
  href?: string;
5
5
  onClick?: (e: MouseEvent<HTMLAnchorElement>) => void;
6
6
  disabled?: boolean;
7
- cssClass?: string;
7
+ className?: string;
8
8
  iconBefore?: ReactNode;
9
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-ui-kit",
3
- "version": "0.5.0-rc.35",
3
+ "version": "0.5.0-rc.37",
4
4
  "type": "module",
5
5
  "license": "Apache-2.0",
6
6
  "description": "A modern UI kit for building AI DIAL interfaces with React",