@progress/kendo-react-grid 15.1.1-develop.3 → 15.2.0-develop.2

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.
@@ -6,299 +6,310 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  import * as e from "react";
9
- import { SpeechToTextButton as et, Button as tt, SegmentedControl as nt } from "@progress/kendo-react-buttons";
10
- import { xIcon as rt, stopIcon as at, arrowUpIcon as st } from "@progress/kendo-svg-icons";
11
- import { guid as ot, kendoThemeMaps as it, classNames as B, IconWrap as ce } from "@progress/kendo-react-common";
12
- import { useLocalization as lt } from "@progress/kendo-react-intl";
13
- import { List as $ } from "@progress/kendo-react-dropdowns";
14
- import { Popup as ct } from "@progress/kendo-react-popup";
15
- import { createListItemRender as ut, searchModeItemRender as pt, listGroupHeaderRender as ue, NoDataRender as mt } from "./listItemRenders.mjs";
16
- import { smartBoxClearTitle as pe, messages as C, smartBoxSpeechToTextButton as P, smartBoxSubmitPromptButton as L } from "../../messages/index.mjs";
17
- import { useGridAIRequest as dt } from "../../hooks/useGridAIRequest.mjs";
18
- import { GridContext as ht } from "../../utils/GridContext.mjs";
19
- import { useSmartBoxModes as ft } from "./hooks/useSmartBoxModes.mjs";
20
- import { useSmartBoxHistory as gt } from "./hooks/useSmartBoxHistory.mjs";
21
- import { useSmartBoxPopup as St } from "./hooks/useSmartBoxPopup.mjs";
22
- import { useSmartBoxGridState as Ct } from "./hooks/useSmartBoxGridState.mjs";
23
- import { useSmartBoxLabels as kt } from "./hooks/useSmartBoxLabels.mjs";
24
- import { useSmartBoxListData as bt } from "./hooks/useSmartBoxListData.mjs";
25
- import { useSmartBoxSegmentedControl as xt } from "./hooks/useSmartBoxSegmentedControl.mjs";
26
- import { useSmartBoxSearch as Rt } from "./hooks/useSmartBoxSearch.mjs";
27
- import { useDebounce as vt } from "./hooks/useDebounce.mjs";
28
- const It = e.forwardRef((me, de) => {
9
+ import { SpeechToTextButton as ot, Button as it, SegmentedControl as lt } from "@progress/kendo-react-buttons";
10
+ import { xIcon as ct, stopIcon as ut, arrowUpIcon as pt } from "@progress/kendo-svg-icons";
11
+ import { guid as mt, kendoThemeMaps as ce, classNames as L, IconWrap as ue } from "@progress/kendo-react-common";
12
+ import { useLocalization as dt } from "@progress/kendo-react-intl";
13
+ import { List as U } from "@progress/kendo-react-dropdowns";
14
+ import { Popup as ft } from "@progress/kendo-react-popup";
15
+ import { createListItemRender as ht, searchModeItemRender as gt, listGroupHeaderRender as pe, NoDataRender as St } from "./listItemRenders.mjs";
16
+ import { smartBoxClearTitle as me, messages as C, smartBoxSpeechToTextButton as P, smartBoxSubmitPromptButton as F } from "../../messages/index.mjs";
17
+ import { useGridAIRequest as Ct } from "../../hooks/useGridAIRequest.mjs";
18
+ import { GridContext as kt } from "../../utils/GridContext.mjs";
19
+ import { useSmartBoxModes as bt } from "./hooks/useSmartBoxModes.mjs";
20
+ import { useSmartBoxHistory as xt } from "./hooks/useSmartBoxHistory.mjs";
21
+ import { useSmartBoxPopup as vt } from "./hooks/useSmartBoxPopup.mjs";
22
+ import { useSmartBoxGridState as Rt } from "./hooks/useSmartBoxGridState.mjs";
23
+ import { useSmartBoxLabels as It } from "./hooks/useSmartBoxLabels.mjs";
24
+ import { useSmartBoxListData as wt } from "./hooks/useSmartBoxListData.mjs";
25
+ import { useSmartBoxSegmentedControl as Et } from "./hooks/useSmartBoxSegmentedControl.mjs";
26
+ import { useSmartBoxSearch as Dt } from "./hooks/useSmartBoxSearch.mjs";
27
+ import { useDebounce as yt } from "./hooks/useDebounce.mjs";
28
+ const Bt = e.forwardRef((de, fe) => {
29
29
  var ie;
30
30
  const {
31
31
  searchConfig: he,
32
- semanticSearchConfig: fe,
33
- aiAssistantConfig: ge,
34
- activeMode: Se,
35
- dir: Ce = "ltr",
32
+ semanticSearchConfig: ge,
33
+ aiAssistantConfig: Se,
34
+ activeMode: Ce,
35
+ dir: ke = "ltr",
36
36
  size: K = "medium",
37
- placeholder: ke,
38
- history: be,
39
- loading: xe = !1,
40
- promptSuggestionRender: j,
41
- historyItemRender: J,
42
- onOpen: Re,
43
- onClose: ve,
37
+ rounded: be = "medium",
38
+ fillMode: xe = "solid",
39
+ placeholder: ve,
40
+ history: Re,
41
+ loading: Ie = !1,
42
+ promptSuggestionRender: M,
43
+ historyItemRender: j,
44
+ onOpen: we,
45
+ onClose: Ee,
44
46
  onFocus: k,
45
47
  onBlur: b,
46
- onSearch: Ie,
47
- onSemanticSearch: we,
48
- onAIPromptRequest: F,
49
- onAIResponseSuccess: H,
50
- onAIResponseError: z,
51
- onAICancelRequest: x
52
- } = me, f = lt(), g = e.useContext(ht), Ee = e.useRef(`k-${ot()}`), d = e.useRef(null), S = e.useRef(null), Q = e.useRef(null), [o, p] = e.useState(""), [De, R] = e.useState(!1), [ye, X] = e.useState(void 0), [Be, Y] = e.useState(null), {
48
+ onSearch: De,
49
+ onSemanticSearch: ye,
50
+ onAIPromptRequest: H,
51
+ onAIResponseSuccess: z,
52
+ onAIResponseError: N,
53
+ onAICancelRequest: x,
54
+ ariaLabel: Be
55
+ } = de, h = dt(), g = e.useContext(kt), Le = e.useRef(`k-${mt()}`), d = e.useRef(null), S = e.useRef(null), J = e.useRef(null), [o, m] = e.useState(""), [Pe, v] = e.useState(!1), [Fe, Q] = e.useState(void 0), [He, X] = e.useState(null), {
53
56
  searchMode: i,
54
- semanticSearchMode: c,
57
+ semanticSearchMode: u,
55
58
  aiAssistantMode: a,
56
59
  selectedView: n,
57
- setSelectedViewState: N,
58
- lastSearchMode: Pe,
59
- searchHistorySettings: Z,
60
- semanticSearchHistorySettings: _,
61
- aiAssistantHistorySettings: T,
62
- speechToTextButtonSettings: M,
63
- currentSearchDelay: Le
64
- } = ft({
60
+ setSelectedViewState: T,
61
+ lastSearchMode: ze,
62
+ searchHistorySettings: Y,
63
+ semanticSearchHistorySettings: Z,
64
+ aiAssistantHistorySettings: q,
65
+ speechToTextButtonSettings: _,
66
+ currentSearchDelay: Ne
67
+ } = bt({
65
68
  searchConfigProp: he,
66
- semanticSearchConfigProp: fe,
67
- aiAssistantConfigProp: ge,
68
- activeModeProp: Se,
69
- sharedHistory: be
70
- }), { currentHistory: v, currentHistorySettings: Fe, addToHistory: q } = gt({
69
+ semanticSearchConfigProp: ge,
70
+ aiAssistantConfigProp: Se,
71
+ activeModeProp: Ce,
72
+ sharedHistory: Re
73
+ }), { currentHistory: R, currentHistorySettings: Te, addToHistory: O } = xt({
71
74
  selectedView: n,
72
- searchHistorySettings: Z,
73
- semanticSearchHistorySettings: _,
74
- aiAssistantHistorySettings: T
75
- }), { isOpen: O, togglePopup: s } = St({ onOpen: Re, onClose: ve }), { columns: A, gridState: He, gridRef: ze, handleStateChange: Ne } = Ct(g), V = e.useMemo(
75
+ searchHistorySettings: Y,
76
+ semanticSearchHistorySettings: Z,
77
+ aiAssistantHistorySettings: q
78
+ }), { isOpen: I, togglePopup: s } = vt({ onOpen: we, onClose: Ee }), { columns: A, gridState: qe, gridRef: Oe, handleStateChange: Ve } = Rt(g), V = e.useMemo(
76
79
  () => (a == null ? void 0 : a.promptSuggestions) || [],
77
80
  [a == null ? void 0 : a.promptSuggestions]
78
- ), { inputPlaceholder: Te, prefixIcon: qe } = kt({
81
+ ), { inputPlaceholder: We, prefixIcon: Ge } = It({
79
82
  selectedView: n,
80
83
  searchMode: i,
81
- semanticSearchMode: c,
84
+ semanticSearchMode: u,
82
85
  aiAssistantMode: a,
83
- sharedPlaceholder: ke
84
- }), { searchListData: h, aiAssistantListData: I, searchHistoryListData: w } = bt({
86
+ sharedPlaceholder: ve
87
+ }), { searchListData: f, aiAssistantListData: w, searchHistoryListData: E } = wt({
85
88
  selectedView: n,
86
89
  searchModeEnabled: i == null ? void 0 : i.enabled,
87
- semanticSearchModeEnabled: c == null ? void 0 : c.enabled,
90
+ semanticSearchModeEnabled: u == null ? void 0 : u.enabled,
88
91
  promptSuggestions: V,
89
- currentHistory: v,
90
- currentHistorySettings: Fe
91
- }), E = xt({
92
+ currentHistory: R,
93
+ currentHistorySettings: Te
94
+ }), D = Et({
92
95
  searchMode: i,
93
- semanticSearchMode: c,
96
+ semanticSearchMode: u,
94
97
  aiAssistantMode: a,
95
98
  selectedView: n,
96
- lastSearchMode: Pe,
97
- setSelectedViewState: N,
98
- setInputValue: p
99
+ lastSearchMode: ze,
100
+ setSelectedViewState: T,
101
+ setInputValue: m
99
102
  });
100
103
  e.useEffect(() => {
101
104
  const t = d.current;
102
105
  if (!t)
103
106
  return;
104
- X(t.offsetWidth);
107
+ Q(t.offsetWidth);
105
108
  const r = new ResizeObserver(() => {
106
- t && X(t.offsetWidth);
109
+ t && Q(t.offsetWidth);
107
110
  });
108
111
  return r.observe(t), () => {
109
112
  r.disconnect();
110
113
  };
111
114
  }, []);
112
- const m = xe || De, W = !n, Oe = !(i != null && i.enabled) && !(c != null && c.enabled) && !(a != null && a.enabled), Ve = it.sizeMap[K] || "md", { emitSearchEvent: u } = Rt({
115
+ const l = Ie || Pe, W = !n, $e = !(i != null && i.enabled) && !(u != null && u.enabled) && !(a != null && a.enabled), Ue = ce.sizeMap[K] || "md", Ke = ce.roundedMap[be] || "md", Me = xe || "solid", { emitSearchEvent: p } = Dt({
113
116
  selectedView: n,
114
117
  searchMode: i,
115
118
  columns: A,
116
119
  gridContext: g,
117
- searchHistorySettings: Z,
118
- semanticSearchHistorySettings: _,
119
- addToHistory: q,
120
- onSearch: Ie,
121
- onSemanticSearch: we
122
- }), { sendRequest: ee, cancelRequest: te } = dt({
120
+ searchHistorySettings: Y,
121
+ semanticSearchHistorySettings: Z,
122
+ addToHistory: O,
123
+ onSearch: De,
124
+ onSemanticSearch: ye
125
+ }), { sendRequest: ee, cancelRequest: te } = Ct({
123
126
  requestUrl: a == null ? void 0 : a.requestUrl,
124
127
  requestOptions: a == null ? void 0 : a.requestOptions,
125
128
  httpClient: a == null ? void 0 : a.httpClient,
126
129
  columns: A,
127
- gridState: He,
128
- gridRef: ze,
130
+ gridState: qe,
131
+ gridRef: Oe,
129
132
  onPromptRequest: (t) => {
130
- F == null || F({ requestData: t });
133
+ H == null || H({ requestData: t });
131
134
  },
132
135
  onResponseSuccess: (t) => {
133
- R(!1), H == null || H({ response: t });
136
+ v(!1), z == null || z({ response: t });
134
137
  },
135
138
  onResponseError: (t) => {
136
- R(!1), z == null || z({ error: t });
139
+ v(!1), N == null || N({ error: t });
137
140
  },
138
- onStateChange: Ne,
141
+ onStateChange: Ve,
139
142
  onExportPdf: () => g == null ? void 0 : g.exportAsPdf()
140
143
  });
141
144
  e.useImperativeHandle(
142
- de,
145
+ fe,
143
146
  () => ({
144
147
  show: () => s(!0),
145
148
  hide: () => s(!1)
146
149
  }),
147
150
  [s]
148
151
  );
149
- const G = vt(Be, Le), ne = e.useRef(u);
150
- ne.current = u, e.useEffect(() => {
152
+ const G = yt(He, Ne), ne = e.useRef(p);
153
+ ne.current = p, e.useEffect(() => {
151
154
  G !== null && ne.current(G);
152
155
  }, [G]);
153
- const We = e.useCallback(
156
+ const je = e.useCallback(
154
157
  (t) => {
155
158
  const r = t.target.value;
156
- p(r), s(!r), (n === "search" || n === "semanticSearch") && Y(r);
159
+ m(r), s(!r), (n === "search" || n === "semanticSearch") && X(r);
157
160
  },
158
161
  [s, n]
159
- ), Ge = e.useCallback(() => {
162
+ ), Je = e.useCallback(() => {
160
163
  k == null || k(), o || s(!0);
161
- }, [k, s, o]), Ue = e.useCallback(
164
+ }, [k, s, o]), Qe = e.useCallback(
162
165
  (t) => {
163
166
  var le;
164
- const r = d.current, l = (le = Q.current) == null ? void 0 : le.element, y = t.relatedTarget, Me = y && (r == null ? void 0 : r.contains(y)), Ae = y && (l == null ? void 0 : l.contains(y));
165
- !Me && !Ae && (b == null || b(), s(!1));
167
+ const r = d.current, c = (le = J.current) == null ? void 0 : le.element, B = t.relatedTarget, at = B && (r == null ? void 0 : r.contains(B)), st = B && (c == null ? void 0 : c.contains(B));
168
+ !at && !st && (b == null || b(), s(!1));
166
169
  },
167
170
  [b, s]
168
- ), $e = e.useCallback(() => {
171
+ ), Xe = e.useCallback(() => {
169
172
  o || s(!0);
170
- }, [s, o]), re = !!((ie = a == null ? void 0 : a.requestOptions) != null && ie.url || a != null && a.requestUrl), U = e.useCallback(() => {
171
- if (m) {
172
- x == null || x(), te(), R(!1);
173
+ }, [s, o]), re = !!((ie = a == null ? void 0 : a.requestOptions) != null && ie.url || a != null && a.requestUrl), $ = e.useCallback(() => {
174
+ if (l) {
175
+ x == null || x(), te(), v(!1);
173
176
  return;
174
177
  }
175
- o.trim() && (re && R(!0), q("aiAssistant", o, T), s(!1), ee(o.trim()), p(""));
178
+ o.trim() && (re && v(!0), O("aiAssistant", o, q), s(!1), ee(o.trim()), m(""));
176
179
  }, [
177
- m,
180
+ l,
178
181
  o,
179
- T,
180
- s,
181
182
  q,
183
+ s,
184
+ O,
182
185
  ee,
183
186
  te,
184
187
  re,
185
188
  x
186
- ]), Ke = e.useCallback(
189
+ ]), Ye = e.useCallback(
187
190
  (t) => {
188
- t.key === "Enter" && (n === "aiAssistant" ? U() : n === "semanticSearch" && u(o));
191
+ t.key === "Enter" && (n === "aiAssistant" ? $() : n === "semanticSearch" && p(o));
189
192
  },
190
- [n, o, u, U]
191
- ), je = e.useCallback(() => {
193
+ [n, o, p, $]
194
+ ), Ze = e.useCallback(() => {
192
195
  var t;
193
- s(!O), (t = S.current) == null || t.focus();
194
- }, [O, s]), Je = e.useCallback(
196
+ s(!I), (t = S.current) == null || t.focus();
197
+ }, [I, s]), _e = e.useCallback(
195
198
  (t) => {
196
199
  var r;
197
- t.stopPropagation(), t.preventDefault(), p(""), (r = S.current) == null || r.focus(), s(!0), u("");
200
+ t.stopPropagation(), t.preventDefault(), m(""), (r = S.current) == null || r.focus(), s(!0), p("");
198
201
  },
199
- [s, u]
202
+ [s, p]
200
203
  ), ae = e.useCallback(
201
204
  (t) => {
202
205
  var r;
203
- N(t), p(""), Y(null), (r = S.current) == null || r.focus();
206
+ T(t), m(""), X(null), (r = S.current) == null || r.focus();
204
207
  },
205
- [N]
206
- ), D = e.useCallback(
208
+ [T]
209
+ ), y = e.useCallback(
207
210
  (t) => {
208
211
  var r;
209
- p(t), s(!1), (r = S.current) == null || r.focus(), n !== "aiAssistant" && u(t);
212
+ m(t), s(!1), (r = S.current) == null || r.focus(), n !== "aiAssistant" && p(t);
210
213
  },
211
- [n, s, u]
212
- ), Qe = e.useCallback((t) => {
214
+ [n, s, p]
215
+ ), Ae = e.useCallback((t) => {
213
216
  if (t.isFinal && t.alternatives.length > 0) {
214
217
  const r = t.alternatives[0].transcript;
215
- p((l) => l ? `${l} ${r}` : r);
218
+ m((c) => c ? `${c} ${r}` : r);
216
219
  }
217
- }, []), Xe = e.useMemo(() => n === "aiAssistant" ? v.length === 0 && V.length === 0 : n === "search" || n === "semanticSearch" ? v.length === 0 && h.length === 0 : !1, [n, v.length, V.length, h.length]), se = e.useCallback(
220
+ }, []), et = e.useMemo(() => n === "aiAssistant" ? R.length === 0 && V.length === 0 : n === "search" || n === "semanticSearch" ? R.length === 0 && f.length === 0 : !1, [n, R.length, V.length, f.length]), se = e.useCallback(
218
221
  (t) => {
219
- const l = (n === "aiAssistant" ? I : w)[t];
220
- l && D(l.text);
222
+ const c = (n === "aiAssistant" ? w : E)[t];
223
+ c && y(c.text);
221
224
  },
222
- [n, I, w, D]
223
- ), Ye = e.useCallback(
225
+ [n, w, E, y]
226
+ ), tt = e.useCallback(
224
227
  (t) => {
225
- const r = h[t];
228
+ const r = f[t];
226
229
  r && ae(r.mode);
227
230
  },
228
- [h, ae]
231
+ [f, ae]
229
232
  ), oe = e.useMemo(
230
- () => ut({
231
- historyItemRender: J,
232
- promptSuggestionRender: j,
233
- handleListItemClick: D
233
+ () => ht({
234
+ historyItemRender: j,
235
+ promptSuggestionRender: M,
236
+ handleListItemClick: y
234
237
  }),
235
- [J, j, D]
236
- ), Ze = O && !Oe, _e = () => /* @__PURE__ */ e.createElement(e.Fragment, null, E.items.length > 0 && /* @__PURE__ */ e.createElement(
237
- nt,
238
+ [j, M, y]
239
+ ), nt = I && !$e, rt = () => /* @__PURE__ */ e.createElement(e.Fragment, null, D.items.length > 0 && /* @__PURE__ */ e.createElement(
240
+ lt,
238
241
  {
239
- items: E.items,
240
- value: E.value,
241
- onChange: E.onChange,
242
+ items: D.items,
243
+ value: D.value,
244
+ onChange: D.onChange,
242
245
  size: K,
243
246
  layoutMode: "stretch"
244
247
  }
245
- ), (n === "search" || n === "semanticSearch") && h.length > 0 && /* @__PURE__ */ e.createElement(
246
- $,
248
+ ), (n === "search" || n === "semanticSearch") && f.length > 0 && /* @__PURE__ */ e.createElement(
249
+ U,
247
250
  {
248
- data: h,
251
+ data: f,
249
252
  textField: "text",
250
253
  descriptionField: "description",
251
- onClick: Ye,
252
- itemRender: pt,
254
+ onClick: tt,
255
+ itemRender: gt,
253
256
  show: !0,
254
257
  wrapperCssClass: "k-list k-list-md"
255
258
  }
256
- ), n === "aiAssistant" && I.length > 0 && /* @__PURE__ */ e.createElement(
257
- $,
259
+ ), n === "aiAssistant" && w.length > 0 && /* @__PURE__ */ e.createElement(
260
+ U,
258
261
  {
259
- data: I,
262
+ data: w,
260
263
  textField: "text",
261
264
  groupField: "group",
262
265
  svgIconField: "groupSvgIcon",
263
266
  descriptionField: "description",
264
267
  onClick: se,
265
268
  itemRender: oe,
266
- groupHeaderItemRender: ue,
269
+ groupHeaderItemRender: pe,
267
270
  showFirstGroupHeader: !0,
268
271
  show: !0,
269
272
  wrapperCssClass: "k-list k-list-md"
270
273
  }
271
- ), (n === "search" || n === "semanticSearch") && w.length > 0 && /* @__PURE__ */ e.createElement(
272
- $,
274
+ ), (n === "search" || n === "semanticSearch") && E.length > 0 && /* @__PURE__ */ e.createElement(
275
+ U,
273
276
  {
274
- data: w,
277
+ data: E,
275
278
  textField: "text",
276
279
  groupField: "group",
277
280
  svgIconField: "groupSvgIcon",
278
281
  descriptionField: "description",
279
282
  onClick: se,
280
283
  itemRender: oe,
281
- groupHeaderItemRender: ue,
284
+ groupHeaderItemRender: pe,
282
285
  showFirstGroupHeader: !0,
283
286
  show: !0,
284
287
  wrapperCssClass: "k-list k-list-md"
285
288
  }
286
- ), Xe && /* @__PURE__ */ e.createElement(mt, { selectedView: n }));
287
- return /* @__PURE__ */ e.createElement("div", { ref: d, className: "k-smart-box-wrapper", dir: Ce, onBlur: Ue }, /* @__PURE__ */ e.createElement(
289
+ ), et && /* @__PURE__ */ e.createElement(St, { selectedView: n }));
290
+ return /* @__PURE__ */ e.createElement("div", { ref: d, className: "k-smart-box-wrapper", dir: ke, onBlur: Qe }, /* @__PURE__ */ e.createElement(
288
291
  "span",
289
292
  {
290
- className: B("k-smart-box", "k-input", `k-input-${Ve}`, {
291
- "k-loading": m
292
- })
293
+ className: L(
294
+ "k-smart-box",
295
+ "k-input",
296
+ `k-input-${Ue}`,
297
+ `k-rounded-${Ke}`,
298
+ `k-input-${Me}`,
299
+ {
300
+ "k-loading": l
301
+ }
302
+ )
293
303
  },
294
304
  !W && /* @__PURE__ */ e.createElement("span", { className: "k-input-prefix k-input-prefix-horizontal" }, /* @__PURE__ */ e.createElement(
295
- ce,
305
+ ue,
296
306
  {
297
- className: B("k-icon", {
307
+ className: L({
298
308
  "k-accent-icon": n === "aiAssistant" || n === "semanticSearch"
299
309
  }),
300
- icon: qe.svgIcon,
301
- onClick: je,
310
+ icon: Ge.svgIcon,
311
+ "aria-hidden": !0,
312
+ onClick: Ze,
302
313
  onMouseDown: (t) => {
303
314
  "preventDefault" in t && t.preventDefault();
304
315
  }
@@ -309,78 +320,83 @@ const It = e.forwardRef((me, de) => {
309
320
  {
310
321
  ref: S,
311
322
  type: "text",
312
- className: B("k-input-inner", { "k-disabled": W }),
313
- id: Ee.current,
314
- placeholder: Te,
323
+ className: L("k-input-inner", { "k-disabled": W }),
324
+ id: Le.current,
325
+ placeholder: We,
315
326
  value: o,
316
327
  disabled: W,
317
- onChange: We,
318
- onFocus: Ge,
319
- onClick: $e,
320
- onKeyDown: Ke
328
+ role: "combobox",
329
+ "aria-haspopup": "listbox",
330
+ "aria-expanded": I ? "true" : "false",
331
+ "aria-label": Be,
332
+ onChange: je,
333
+ onFocus: Je,
334
+ onClick: Xe,
335
+ onKeyDown: Ye
321
336
  }
322
337
  ),
323
338
  o.length > 0 && (n === "search" || n === "semanticSearch") && /* @__PURE__ */ e.createElement(
324
339
  "span",
325
340
  {
326
341
  className: "k-clear-value",
327
- title: f.toLanguageString(
328
- pe,
329
- C[pe]
342
+ title: h.toLanguageString(
343
+ me,
344
+ C[me]
330
345
  ),
331
346
  role: "button",
332
347
  tabIndex: -1,
333
- onClick: Je,
348
+ onClick: _e,
334
349
  onMouseDown: (t) => t.preventDefault()
335
350
  },
336
- /* @__PURE__ */ e.createElement(ce, { className: "k-icon", icon: rt })
351
+ /* @__PURE__ */ e.createElement(ue, { className: "k-icon", icon: ct })
337
352
  ),
338
- n === "aiAssistant" && /* @__PURE__ */ e.createElement("span", { className: "k-input-suffix k-input-suffix-horizontal" }, M && /* @__PURE__ */ e.createElement(
339
- et,
353
+ n === "aiAssistant" && /* @__PURE__ */ e.createElement("span", { className: "k-input-suffix k-input-suffix-horizontal" }, _ && /* @__PURE__ */ e.createElement(
354
+ ot,
340
355
  {
341
- ...M,
342
- "aria-label": f.toLanguageString(
356
+ ..._,
357
+ "aria-label": h.toLanguageString(
343
358
  P,
344
359
  C[P]
345
360
  ),
346
- title: f.toLanguageString(
361
+ title: h.toLanguageString(
347
362
  P,
348
363
  C[P]
349
364
  ),
350
- onResult: Qe
365
+ onResult: Ae
351
366
  }
352
367
  ), /* @__PURE__ */ e.createElement(
353
- tt,
368
+ it,
354
369
  {
355
- className: B("k-smart-box-send", {
356
- "k-processing": m,
357
- "k-active": m
370
+ className: L("k-smart-box-send", {
371
+ "k-processing": l,
372
+ "k-active": l
358
373
  }),
359
374
  type: "button",
360
375
  rounded: "full",
361
376
  size: "small",
362
- title: f.toLanguageString(
363
- L,
364
- C[L]
377
+ title: h.toLanguageString(
378
+ F,
379
+ C[F]
365
380
  ),
366
- "aria-label": f.toLanguageString(
367
- L,
368
- C[L]
381
+ "aria-label": h.toLanguageString(
382
+ F,
383
+ C[F]
369
384
  ),
370
- "aria-disabled": o.length === 0,
371
- svgIcon: m ? at : st,
372
- disabled: o.length === 0 && !m,
373
- onClick: U
385
+ "aria-pressed": l ? "true" : void 0,
386
+ "aria-disabled": !l && o.length === 0 || void 0,
387
+ svgIcon: l ? ut : pt,
388
+ disabled: o.length === 0 && !l,
389
+ onClick: $
374
390
  }
375
391
  ))
376
392
  ), /* @__PURE__ */ e.createElement(
377
- ct,
393
+ ft,
378
394
  {
379
- ref: Q,
395
+ ref: J,
380
396
  anchor: d.current,
381
- show: Ze,
397
+ show: nt,
382
398
  popupClass: "k-smart-box-popup",
383
- style: { width: ye },
399
+ style: { width: Fe },
384
400
  anchorAlign: { horizontal: "left", vertical: "bottom" },
385
401
  popupAlign: { horizontal: "left", vertical: "top" },
386
402
  margin: { horizontal: 0, vertical: 2 },
@@ -389,10 +405,10 @@ const It = e.forwardRef((me, de) => {
389
405
  d.current && !d.current.contains(r) && s(!1);
390
406
  }
391
407
  },
392
- _e()
408
+ rt()
393
409
  ));
394
410
  });
395
- It.displayName = "KendoReactSmartBox";
411
+ Bt.displayName = "KendoReactSmartBox";
396
412
  export {
397
- It as SmartBox
413
+ Bt as SmartBox
398
414
  };
@@ -296,6 +296,18 @@ export interface GridSmartBoxAIAssistantProps extends Omit<GridSmartBoxAIAssista
296
296
  * ```
297
297
  */
298
298
  size?: 'small' | 'medium' | 'large';
299
+ /**
300
+ * Sets the border radius of the SmartBox.
301
+ *
302
+ * @default 'medium'
303
+ */
304
+ rounded?: 'none' | 'small' | 'medium' | 'large' | 'full';
305
+ /**
306
+ * Sets the fill mode of the SmartBox.
307
+ *
308
+ * @default 'solid'
309
+ */
310
+ fillMode?: 'solid' | 'flat' | 'outline';
299
311
  /**
300
312
  * Sets whether the SmartBox is in loading state.
301
313
  * Use this for controlled mode to manage loading state externally.
@@ -465,5 +477,14 @@ export interface GridSmartBoxAIAssistantProps extends Omit<GridSmartBoxAIAssista
465
477
  * ```
466
478
  */
467
479
  onAICancelRequest?: () => void;
480
+ /**
481
+ * Sets the accessible label (`aria-label`) for the SmartBox input element.
482
+ *
483
+ * @example
484
+ * ```tsx
485
+ * <SmartBox ariaLabel="AI-powered search" />
486
+ * ```
487
+ */
488
+ ariaLabel?: string;
468
489
  }
469
490
  export {};