@progress/kendo-react-buttons 13.3.0 → 13.4.0-develop.1

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 (77) hide show
  1. package/Button.d.ts +114 -0
  2. package/Button.js +1 -1
  3. package/Button.mjs +42 -44
  4. package/ButtonGroup.d.ts +47 -0
  5. package/ButtonGroupInterface.d.ts +39 -0
  6. package/ButtonInterface.d.ts +49 -0
  7. package/Chip/Chip.d.ts +425 -0
  8. package/Chip/Chip.js +1 -1
  9. package/Chip/Chip.mjs +43 -39
  10. package/Chip/ChipList.d.ts +221 -0
  11. package/Chip/ChipList.js +1 -1
  12. package/Chip/ChipList.mjs +40 -41
  13. package/Chip/chip-list-contexts.d.ts +20 -0
  14. package/Chip/data-reducer.d.ts +29 -0
  15. package/Chip/focus-reducer.d.ts +31 -0
  16. package/Chip/selection-reducer.d.ts +37 -0
  17. package/FloatingActionButton/FloatingActionButton.d.ts +23 -0
  18. package/FloatingActionButton/FloatingActionButton.js +1 -1
  19. package/FloatingActionButton/FloatingActionButton.mjs +85 -85
  20. package/FloatingActionButton/FloatingActionButtonItem.d.ts +132 -0
  21. package/FloatingActionButton/interfaces/FloatingActionButtonHandle.d.ts +20 -0
  22. package/FloatingActionButton/interfaces/FloatingActionButtonPopupSettings.d.ts +31 -0
  23. package/FloatingActionButton/interfaces/FloatingActionButtonProps.d.ts +354 -0
  24. package/FloatingActionButton/models/align-offset.d.ts +27 -0
  25. package/FloatingActionButton/models/align.d.ts +34 -0
  26. package/FloatingActionButton/models/events.d.ts +28 -0
  27. package/FloatingActionButton/models/position-mode.d.ts +16 -0
  28. package/FloatingActionButton/models/rounded.d.ts +19 -0
  29. package/FloatingActionButton/models/size.d.ts +18 -0
  30. package/FloatingActionButton/models/theme-color.d.ts +25 -0
  31. package/FloatingActionButton/utils.d.ts +34 -0
  32. package/ListButton/ButtonItem.d.ts +72 -0
  33. package/ListButton/DropDownButton.d.ts +153 -0
  34. package/ListButton/DropDownButton.js +1 -1
  35. package/ListButton/DropDownButton.mjs +62 -46
  36. package/ListButton/DropDownButtonItem.d.ts +37 -0
  37. package/ListButton/SplitButton.d.ts +142 -0
  38. package/ListButton/SplitButton.js +1 -1
  39. package/ListButton/SplitButton.mjs +29 -13
  40. package/ListButton/SplitButtonItem.d.ts +32 -0
  41. package/ListButton/models/ButtonItem.d.ts +41 -0
  42. package/ListButton/models/ListButtonProps.d.ts +411 -0
  43. package/ListButton/models/PopupSettings.d.ts +35 -0
  44. package/ListButton/models/events.d.ts +59 -0
  45. package/ListButton/utils/navigation.d.ts +12 -0
  46. package/ListButton/utils/popup.d.ts +16 -0
  47. package/SpeechToTextButton/SpeechToTextButton.d.ts +36 -0
  48. package/SpeechToTextButton/SpeechToTextButton.js +1 -1
  49. package/SpeechToTextButton/SpeechToTextButton.mjs +24 -24
  50. package/SpeechToTextButton/interfaces/SpeechToTextButtonHandle.d.ts +28 -0
  51. package/SpeechToTextButton/interfaces/SpeechToTextButtonProps.d.ts +117 -0
  52. package/dist/cdn/js/kendo-react-buttons.js +1 -1
  53. package/index.d.mts +43 -2928
  54. package/index.d.ts +43 -2928
  55. package/messages/index.d.ts +22 -0
  56. package/models/index.d.ts +95 -0
  57. package/package-metadata.d.ts +12 -0
  58. package/package-metadata.js +1 -1
  59. package/package-metadata.mjs +10 -16
  60. package/package.json +5 -5
  61. package/toolbar/Toolbar.d.ts +38 -0
  62. package/toolbar/Toolbar.js +1 -1
  63. package/toolbar/Toolbar.mjs +15 -15
  64. package/toolbar/events/ToolbarResizeEvent.d.ts +29 -0
  65. package/toolbar/interfaces/ToolbarHandle.d.ts +21 -0
  66. package/toolbar/interfaces/ToolbarOverflowProps.d.ts +50 -0
  67. package/toolbar/interfaces/ToolbarProps.d.ts +128 -0
  68. package/toolbar/messages/index.d.ts +27 -0
  69. package/toolbar/tools/ToolbarItem.d.ts +47 -0
  70. package/toolbar/tools/ToolbarOverflowSection.d.ts +21 -0
  71. package/toolbar/tools/ToolbarScrollButton.d.ts +23 -0
  72. package/toolbar/tools/ToolbarScrollButton.js +1 -1
  73. package/toolbar/tools/ToolbarScrollButton.mjs +11 -20
  74. package/toolbar/tools/ToolbarScrollable.d.ts +28 -0
  75. package/toolbar/tools/ToolbarSeparator.d.ts +22 -0
  76. package/toolbar/tools/ToolbarSpacer.d.ts +30 -0
  77. package/util.d.ts +31 -0
@@ -7,33 +7,33 @@
7
7
  */
8
8
  import * as t from "react";
9
9
  import o from "prop-types";
10
- import { useZIndexContext as ye, useId as Y, useDir as Ie, dispatchEvent as b, getActiveElement as ve, Keys as c, classNames as N, kendoThemeMaps as Ee, ZIndexContext as xe, getTabIndex as De, svgIconPropType as Ne, IconWrap as we } from "@progress/kendo-react-common";
10
+ import { useZIndexContext as ye, useId as Y, useDir as ve, dispatchEvent as b, getActiveElement as Ie, Keys as c, classNames as w, kendoThemeMaps as Ee, ZIndexContext as xe, getTabIndex as De, IconWrap as Ne, svgIconPropType as we } from "@progress/kendo-react-common";
11
11
  import { FloatingActionButtonItem as Re } from "./FloatingActionButtonItem.mjs";
12
- import { position as Ae, getTextDirectionClass as Fe, getAnchorAlign as Oe, getPopupAlign as ze } from "./utils.mjs";
12
+ import { position as Ae, getTextDirectionClass as Fe, getPopupAlign as Oe, getAnchorAlign as ze } from "./utils.mjs";
13
13
  import { Popup as Te } from "@progress/kendo-react-popup";
14
14
  const Be = 2, Me = 100, ee = t.forwardRef(
15
15
  (P, te) => {
16
16
  const {
17
- align: u = h.align,
17
+ align: d = h.align,
18
18
  alignOffset: $,
19
19
  className: K,
20
- disabled: d,
21
- icon: w,
22
- svgIcon: R,
20
+ disabled: u,
21
+ icon: R,
22
+ svgIcon: A,
23
23
  iconClass: S,
24
24
  id: W,
25
- items: n,
25
+ items: s,
26
26
  item: oe,
27
27
  text: C,
28
- positionMode: A = h.positionMode,
28
+ positionMode: F = h.positionMode,
29
29
  size: y = h.size,
30
30
  style: ae,
31
- rounded: I = h.rounded,
32
- themeColor: F = h.themeColor,
33
- overlayStyle: ne,
34
- tabIndex: se,
31
+ rounded: v = h.rounded,
32
+ themeColor: I = h.themeColor,
33
+ overlayStyle: se,
34
+ tabIndex: ne,
35
35
  accessKey: le,
36
- popupSettings: v = {},
36
+ popupSettings: E = {},
37
37
  modal: ie,
38
38
  onClick: O,
39
39
  onItemClick: Z,
@@ -43,7 +43,7 @@ const Be = 2, Me = 100, ee = t.forwardRef(
43
43
  onOpen: H,
44
44
  onClose: j,
45
45
  ...re
46
- } = P, L = ye(), X = L ? L + Be : Me, U = t.useRef(null), l = t.useRef(null), ce = t.useRef(null), ue = t.useRef(null), G = t.useCallback(() => {
46
+ } = P, L = ye(), X = L ? L + Be : Me, U = t.useRef(null), l = t.useRef(null), ce = t.useRef(null), de = t.useRef(null), G = t.useCallback(() => {
47
47
  l.current && l.current.focus();
48
48
  }, []), f = t.useCallback(
49
49
  () => ({
@@ -56,95 +56,95 @@ const Be = 2, Me = 100, ee = t.forwardRef(
56
56
  te,
57
57
  () => U.current
58
58
  );
59
- const [i, r] = t.useState(!1), [E, p] = t.useState(!1), [g, s] = t.useState(-1), de = Y() + "-button-id", T = Ie(l, P.dir), k = T === "rtl", x = Y() + "-list-id";
59
+ const [i, r] = t.useState(!1), [x, p] = t.useState(!1), [g, n] = t.useState(-1), ue = Y() + "-button-id", T = ve(l, P.dir), k = T === "rtl", D = Y() + "-list-id";
60
60
  t.useEffect(() => {
61
- Ae(l, u, $, k);
62
- }, [l, u, $, k]), t.useEffect(() => {
63
- E && l && l.current && l.current.focus();
64
- }, [E, l]);
61
+ Ae(l, d, $, k);
62
+ }, [l, d, $, k]), t.useEffect(() => {
63
+ x && l && l.current && l.current.focus();
64
+ }, [x, l]);
65
65
  const m = t.useCallback(
66
66
  (e, a) => {
67
- n && b(a ? H : j, e, f(), void 0);
67
+ s && b(a ? H : j, e, f(), void 0);
68
68
  },
69
- [H, j, n]
69
+ [H, j, s]
70
70
  ), J = t.useCallback(
71
71
  (e) => {
72
- !e.target || d || (!n && O ? b(
72
+ !e.target || u || (!s && O ? b(
73
73
  O,
74
74
  e,
75
75
  f(),
76
76
  void 0
77
- ) : (r(!i), p(!0), s(i ? -1 : 0), m(e, !i)));
77
+ ) : (r(!i), p(!0), n(i ? -1 : 0), m(e, !i)));
78
78
  },
79
- [r, p, s, O, m, i, n, d]
79
+ [r, p, n, O, m, i, s, u]
80
80
  ), fe = t.useCallback(
81
81
  (e) => {
82
- p(!0), s(i ? 0 : -1), z && b(
82
+ p(!0), n(i ? 0 : -1), z && b(
83
83
  z,
84
84
  e,
85
85
  f(),
86
86
  void 0
87
87
  );
88
88
  },
89
- [z, p, s]
89
+ [z, p, n]
90
90
  ), pe = t.useCallback(
91
91
  (e) => {
92
- p(!1), r(!1), s(-1), b(
92
+ p(!1), r(!1), n(-1), b(
93
93
  q,
94
94
  e,
95
95
  f(),
96
96
  void 0
97
97
  ), i && m(e, !1);
98
98
  },
99
- [q, p, r, s, m]
99
+ [q, p, r, n, m]
100
100
  ), me = t.useCallback((e) => {
101
101
  e.preventDefault();
102
102
  }, []), B = t.useCallback(
103
103
  (e, a) => {
104
- n && (n[a].disabled || b(Z, e, f(), {
105
- itemProps: n[a],
104
+ s && (s[a].disabled || b(Z, e, f(), {
105
+ itemProps: s[a],
106
106
  itemIndex: a
107
107
  }));
108
108
  },
109
109
  [Z]
110
110
  ), be = t.useCallback(
111
111
  (e, a) => {
112
- !e.target || !n || (s(a), r(!1), B(e, a), m(e, !1));
112
+ !e.target || !s || (n(a), r(!1), B(e, a), m(e, !1));
113
113
  },
114
- [s, r, B, m]
114
+ [n, r, B, m]
115
115
  ), ge = t.useCallback(
116
116
  (e) => {
117
- ve(document) === l.current && e.preventDefault();
117
+ Ie(document) === l.current && e.preventDefault();
118
118
  },
119
119
  [l]
120
120
  ), ke = t.useCallback(
121
121
  (e) => {
122
- const a = g, M = n ? n.length : -1;
122
+ const a = g, M = s ? s.length : -1;
123
123
  if (e.altKey) {
124
- !i && e.keyCode === c.down && (e.preventDefault(), r(!0), s(0)), i && e.keyCode === c.up && (e.preventDefault(), r(!1), s(-1));
124
+ !i && e.keyCode === c.down && (e.preventDefault(), r(!0), n(0)), i && e.keyCode === c.up && (e.preventDefault(), r(!1), n(-1));
125
125
  return;
126
126
  }
127
127
  switch (e.keyCode) {
128
128
  case c.enter:
129
129
  case c.space:
130
- a >= 0 && B(e, a), n || J(e), e.preventDefault(), r(!i), s(i ? -1 : 0);
130
+ a >= 0 && B(e, a), s || J(e), e.preventDefault(), r(!i), n(i ? -1 : 0);
131
131
  break;
132
132
  case c.esc:
133
- e.preventDefault(), r(!1), s(-1);
133
+ e.preventDefault(), r(!1), n(-1);
134
134
  break;
135
135
  case c.home:
136
- e.preventDefault(), s(0);
136
+ e.preventDefault(), n(0);
137
137
  break;
138
138
  case c.end:
139
- e.preventDefault(), s(M - 1);
139
+ e.preventDefault(), n(M - 1);
140
140
  break;
141
141
  case c.down:
142
142
  case c.right:
143
- e.preventDefault(), s(a + 1 >= M ? 0 : a + 1);
143
+ e.preventDefault(), n(a + 1 >= M ? 0 : a + 1);
144
144
  break;
145
145
  case c.up:
146
146
  case c.left:
147
- e.preventDefault(), s(a - 1 < 0 ? M - 1 : a - 1);
147
+ e.preventDefault(), n(a - 1 < 0 ? M - 1 : a - 1);
148
148
  break;
149
149
  }
150
150
  b(
@@ -154,59 +154,60 @@ const Be = 2, Me = 100, ee = t.forwardRef(
154
154
  void 0
155
155
  );
156
156
  },
157
- [_, g, s, k, r]
157
+ [_, g, n, k, r]
158
158
  ), he = t.useMemo(
159
- () => N(
160
- "k-fab k-fab-solid",
159
+ () => w(
160
+ "k-fab",
161
161
  {
162
162
  "k-fab-sm": y === "small",
163
163
  "k-fab-md": y === "medium",
164
164
  "k-fab-lg": y === "large",
165
- "k-disabled": d,
166
- "k-pos-absolute": A === "absolute",
167
- "k-pos-fixed": A === "fixed",
168
- "k-focus": E,
169
- [`k-rounded-${Ee.roundedMap[I] || I}`]: I,
170
- [`k-fab-solid-${F}`]: F
165
+ "k-disabled": u,
166
+ "k-pos-absolute": F === "absolute",
167
+ "k-pos-fixed": F === "fixed",
168
+ "k-focus": x,
169
+ [`k-rounded-${Ee.roundedMap[v] || v}`]: v,
170
+ "k-fab-solid": I,
171
+ [`k-fab-solid-${I}`]: I
171
172
  },
172
- `k-${u.vertical}-${u.horizontal}`,
173
+ `k-${d.vertical}-${d.horizontal}`,
173
174
  K
174
175
  ),
175
- [F, y, I, d, A, u, E, K]
176
- ), Ce = n && n.map((e, a) => /* @__PURE__ */ t.createElement(
176
+ [I, y, v, u, F, d, x, K]
177
+ ), Ce = s && s.map((e, a) => /* @__PURE__ */ t.createElement(
177
178
  Re,
178
179
  {
179
180
  ...e,
180
181
  key: a,
181
182
  index: a,
182
- id: `${x}-${a}`,
183
- disabled: d || e.disabled,
183
+ id: `${D}-${a}`,
184
+ disabled: u || e.disabled,
184
185
  focused: g === a,
185
186
  dataItem: e,
186
187
  item: oe,
187
- className: N(e.className, Fe(T || "ltr", u.horizontal)),
188
+ className: w(e.className, Fe(T || "ltr", d.horizontal)),
188
189
  onClick: be,
189
190
  onDown: ge
190
191
  }
191
- )), Q = !!((w || R) && !C), V = (l.current ? l.current.offsetWidth : 0) / 2 - 32 / 2;
192
- let D;
193
- return w || R ? D = /* @__PURE__ */ t.createElement(we, { className: "k-fab-icon", name: w, icon: R }) : S ? D = /* @__PURE__ */ t.createElement("span", { role: "presentation", className: S }) : D = null, /* @__PURE__ */ t.createElement(xe.Provider, { value: X }, /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(
192
+ )), Q = !!((R || A) && !C), V = (l.current ? l.current.offsetWidth : 0) / 2 - 32 / 2;
193
+ let N;
194
+ return R || A ? N = /* @__PURE__ */ t.createElement(Ne, { className: "k-fab-icon", name: R, icon: A }) : S ? N = /* @__PURE__ */ t.createElement("span", { role: "presentation", className: S }) : N = null, /* @__PURE__ */ t.createElement(xe.Provider, { value: X }, /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(
194
195
  "button",
195
196
  {
196
197
  ref: l,
197
- id: W || de,
198
+ id: W || ue,
198
199
  role: "button",
199
200
  type: "button",
200
- "aria-disabled": d,
201
- "aria-expanded": n ? i : void 0,
202
- "aria-haspopup": !!n,
201
+ "aria-disabled": u,
202
+ "aria-expanded": s ? i : void 0,
203
+ "aria-haspopup": !!s,
203
204
  "aria-label": `${C || ""} floatingactionbutton`,
204
- "aria-owns": n ? x : void 0,
205
- "aria-activedescendant": g >= 0 && n ? `${x}-${g}` : void 0,
206
- tabIndex: De(se, d),
205
+ "aria-owns": s ? D : void 0,
206
+ "aria-activedescendant": g >= 0 && s ? `${D}-${g}` : void 0,
207
+ tabIndex: De(ne, u),
207
208
  accessKey: le,
208
209
  dir: T,
209
- disabled: d,
210
+ disabled: u,
210
211
  className: he,
211
212
  style: ae,
212
213
  onClick: J,
@@ -216,7 +217,7 @@ const Be = 2, Me = 100, ee = t.forwardRef(
216
217
  onKeyDown: ke,
217
218
  ...re
218
219
  },
219
- D,
220
+ N,
220
221
  C && /* @__PURE__ */ t.createElement("span", { className: "k-fab-text" }, C)
221
222
  ), ie && i && /* @__PURE__ */ t.createElement(
222
223
  "div",
@@ -224,19 +225,19 @@ const Be = 2, Me = 100, ee = t.forwardRef(
224
225
  className: "k-overlay",
225
226
  style: {
226
227
  zIndex: X,
227
- ...ne
228
+ ...se
228
229
  }
229
230
  }
230
231
  ), /* @__PURE__ */ t.createElement(
231
232
  Te,
232
233
  {
233
- ref: ue,
234
+ ref: de,
234
235
  anchor: l.current,
235
236
  show: i,
236
- animate: v.animate,
237
- popupClass: N("k-popup-transparent k-fab-popup", v.popupClass),
238
- anchorAlign: v.anchorAlign || Oe(u, k),
239
- popupAlign: v.popupAlign || ze(u, k),
237
+ animate: E.animate,
238
+ popupClass: w("k-popup-transparent k-fab-popup", E.popupClass),
239
+ anchorAlign: E.anchorAlign || ze(d, k),
240
+ popupAlign: E.popupAlign || Oe(d, k),
240
241
  style: { boxShadow: "none" }
241
242
  },
242
243
  /* @__PURE__ */ t.createElement(
@@ -245,10 +246,10 @@ const Be = 2, Me = 100, ee = t.forwardRef(
245
246
  ref: ce,
246
247
  role: "menu",
247
248
  "aria-labelledby": W,
248
- id: x,
249
- className: N("k-fab-items", {
250
- "k-fab-items-bottom": u.vertical !== "bottom",
251
- "k-fab-items-top": u.vertical === "bottom"
249
+ id: D,
250
+ className: w("k-fab-items", {
251
+ "k-fab-items-bottom": d.vertical !== "bottom",
252
+ "k-fab-items-top": d.vertical === "bottom"
252
253
  }),
253
254
  style: {
254
255
  paddingLeft: Q ? V : void 0,
@@ -269,7 +270,7 @@ ee.propTypes = {
269
270
  accessKey: o.string,
270
271
  disabled: o.bool,
271
272
  icon: o.string,
272
- svgIcon: Ne,
273
+ svgIcon: we,
273
274
  iconClass: o.string,
274
275
  text: o.string,
275
276
  alignOffset: o.shape({
@@ -281,10 +282,9 @@ ee.propTypes = {
281
282
  horizontal: o.oneOf(["start", "center", "end"]).isRequired
282
283
  }),
283
284
  positionMode: o.oneOf(["absolute", "fixed"]),
284
- size: o.oneOf([null, "small", "medium", "large"]),
285
- rounded: o.oneOf([null, "small", "medium", "large", "full"]),
285
+ size: o.oneOf(["small", "medium", "large"]),
286
+ rounded: o.oneOf(["small", "medium", "large", "full"]),
286
287
  themeColor: o.oneOf([
287
- null,
288
288
  "primary",
289
289
  "secondary",
290
290
  "tertiary",
@@ -301,9 +301,9 @@ ee.propTypes = {
301
301
  };
302
302
  const h = {
303
303
  align: { vertical: "bottom", horizontal: "end" },
304
- size: "medium",
305
- rounded: "full",
306
- themeColor: "primary",
304
+ size: void 0,
305
+ rounded: void 0,
306
+ themeColor: void 0,
307
307
  positionMode: "fixed"
308
308
  };
309
309
  ee.displayName = "KendoFloatingActionButton";
@@ -0,0 +1,132 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { SVGIcon } from '@progress/kendo-react-common';
9
+ import * as React from 'react';
10
+ /**
11
+ * The FloatingActionButtonItemHandle ref.
12
+ */
13
+ export interface FloatingActionButtonItemHandle {
14
+ /**
15
+ * The FloatingActionButtonItemHandle element.
16
+ */
17
+ element: HTMLLIElement | null;
18
+ /**
19
+ * Focus the FloatingActionButtonItem.
20
+ */
21
+ focus: () => void;
22
+ }
23
+ /**
24
+ * Represents the props of the [KendoReact FloatingActionButtonItem component](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton).
25
+ */
26
+ export interface FloatingActionButtonItemProps {
27
+ /**
28
+ * Sets additional CSS styles to the FloatingActionButtonItem.
29
+ *
30
+ * @example
31
+ * ```jsx
32
+ * <FloatingActionButtonItem style={{ margin: '10px' }} />
33
+ * ```
34
+ */
35
+ style?: React.CSSProperties;
36
+ /**
37
+ * Specifies a list of CSS classes that will be added to the FloatingActionButtonItem.
38
+ *
39
+ * @example
40
+ * ```jsx
41
+ * <FloatingActionButtonItem className="custom-item" />
42
+ * ```
43
+ */
44
+ className?: string;
45
+ /**
46
+ * Represents the children that are passed to the FloatingActionButtonItem.
47
+ *
48
+ * @example
49
+ * ```jsx
50
+ * <FloatingActionButtonItem>Custom Content</FloatingActionButtonItem>
51
+ * ```
52
+ */
53
+ children?: any;
54
+ /**
55
+ * Specifies if the Floating Action Button Item is disabled [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/disabled-item).
56
+ *
57
+ * @default false
58
+ * @example
59
+ * ```jsx
60
+ * <FloatingActionButtonItem disabled />
61
+ * ```
62
+ */
63
+ disabled?: boolean;
64
+ /**
65
+ * Sets the index of the Floating Action Button Item that you use to identify it.
66
+ */
67
+ index?: number;
68
+ /**
69
+ * Defines the icon that renders in the FloatingActionButtonItem
70
+ * [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/data-binding).
71
+ */
72
+ icon?: string;
73
+ /**
74
+ * Defines the SVG icon that renders in the FloatingActionButtonItem.
75
+ */
76
+ svgIcon?: SVGIcon;
77
+ /**
78
+ * Specifies the text of the FloatingActionButtonItem
79
+ * [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/data-binding).
80
+ */
81
+ text?: string;
82
+ /**
83
+ * Sets the `tabIndex` property of the FloatingActionButtonItem.
84
+ *
85
+ * @default 0
86
+ */
87
+ tabIndex?: number;
88
+ /**
89
+ * Sets a custom property. Contained in the FloatingActionButtonItem props that are
90
+ * returned from the `onItemClick` FloatingActionButton event
91
+ * [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/customization#toc-items-rendering).
92
+ */
93
+ [customProp: string]: any;
94
+ /**
95
+ * @hidden
96
+ */
97
+ id?: string;
98
+ /**
99
+ * @hidden
100
+ */
101
+ dataItem?: any;
102
+ /**
103
+ * @hidden
104
+ */
105
+ item?: any;
106
+ /**
107
+ * @hidden
108
+ */
109
+ focused?: boolean;
110
+ /**
111
+ * @hidden
112
+ */
113
+ onDown?: (event: any) => void;
114
+ /**
115
+ * @hidden
116
+ */
117
+ onClick?: (event: any, index: number) => void;
118
+ }
119
+ /**
120
+ * Represents the [KendoReact FloatingActionButtonItem component](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton).
121
+ *
122
+ * @example
123
+ * ```jsx
124
+ *
125
+ * const App = () => {
126
+ * return (
127
+ * <FloatingActionButton items={[{icon: 'pencil', text: 'Edit'}, {icon: 'close', text: 'Remove'}] icon: 'plus'} />
128
+ * );
129
+ * };
130
+ * ```
131
+ */
132
+ export declare const FloatingActionButtonItem: React.ForwardRefExoticComponent<Omit<FloatingActionButtonItemProps, "ref"> & React.RefAttributes<FloatingActionButtonItemHandle | null>>;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ /**
9
+ * The FloatingActionButton ref.
10
+ */
11
+ export interface FloatingActionButtonHandle {
12
+ /**
13
+ * The FloatingActionButton element.
14
+ */
15
+ element: HTMLButtonElement | null;
16
+ /**
17
+ * Focus the FloatingActionButton.
18
+ */
19
+ focus: () => void;
20
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { Align, PopupAnimation } from '@progress/kendo-react-popup';
9
+ /**
10
+ * Represents the settings that can be passed to the Popup inside the FloatingActionButtonPopupSettings.
11
+ */
12
+ export interface FloatingActionButtonPopupSettings {
13
+ /**
14
+ * Controls the popup animation. By default, the open and close animations are enabled
15
+ * [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/customization#toc-popup-behavior).
16
+ */
17
+ animate?: boolean | PopupAnimation;
18
+ /**
19
+ * Specifies a list of CSS classes that are used for styling the popup
20
+ * [see example](https://www.telerik.com/kendo-react-ui/components/buttons/floatingactionbutton/items/customization#toc-popup-behavior).
21
+ */
22
+ popupClass?: string;
23
+ /**
24
+ * @hidden
25
+ */
26
+ anchorAlign?: Align;
27
+ /**
28
+ * @hidden
29
+ */
30
+ popupAlign?: Align;
31
+ }