@progress/kendo-react-dropdowns 14.5.0-develop.14 → 14.5.0-develop.15

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 (37) hide show
  1. package/AutoComplete/AutoComplete.d.ts +4 -23
  2. package/AutoComplete/AutoComplete.js +1 -1
  3. package/AutoComplete/AutoComplete.mjs +206 -196
  4. package/AutoComplete/AutoCompleteProps.d.ts +12 -0
  5. package/ComboBox/ComboBox.d.ts +1 -1
  6. package/ComboBox/ComboBox.js +1 -1
  7. package/ComboBox/ComboBox.mjs +224 -224
  8. package/DropDownList/DropDownList.js +1 -1
  9. package/DropDownList/DropDownList.mjs +253 -252
  10. package/DropDownTree/DropDownTree.js +1 -1
  11. package/DropDownTree/DropDownTree.mjs +202 -196
  12. package/DropDownTree/DropDownTreeProps.d.ts +12 -0
  13. package/MultiSelect/MultiSelect.d.ts +2 -1
  14. package/MultiSelect/MultiSelect.js +1 -1
  15. package/MultiSelect/MultiSelect.mjs +182 -175
  16. package/MultiSelect/TagList.js +1 -1
  17. package/MultiSelect/TagList.mjs +1 -1
  18. package/MultiSelectTree/MultiSelectTree.js +1 -1
  19. package/MultiSelectTree/MultiSelectTree.mjs +237 -221
  20. package/MultiSelectTree/MultiSelectTreeProps.d.ts +12 -0
  21. package/common/ClearButton.js +1 -1
  22. package/common/ClearButton.mjs +6 -7
  23. package/common/List.d.ts +1 -0
  24. package/common/List.js +1 -1
  25. package/common/List.mjs +84 -81
  26. package/common/ListFilter.js +1 -1
  27. package/common/ListFilter.mjs +20 -17
  28. package/common/SearchBar.d.ts +1 -0
  29. package/common/SearchBar.js +1 -1
  30. package/common/SearchBar.mjs +7 -7
  31. package/dist/cdn/js/kendo-react-dropdowns.js +1 -1
  32. package/messages/index.d.ts +14 -4
  33. package/messages/index.js +1 -1
  34. package/messages/index.mjs +15 -11
  35. package/package-metadata.js +1 -1
  36. package/package-metadata.mjs +2 -2
  37. package/package.json +10 -10
@@ -263,6 +263,18 @@ export interface MultiSelectTreeProps extends FormComponentProps {
263
263
  * This property is related to accessibility.
264
264
  */
265
265
  ariaLabelledBy?: string;
266
+ /**
267
+ * Defines a string value that labels the component.
268
+ *
269
+ * @example
270
+ * ```jsx
271
+ * <MultiSelectTree ariaLabel="Select items" />
272
+ * ```
273
+ *
274
+ * @remarks
275
+ * This property is related to accessibility.
276
+ */
277
+ ariaLabel?: string;
266
278
  /**
267
279
  * Enables the filtering functionality of the MultiSelectTree ([more information and examples](https://www.telerik.com/kendo-react-ui/components/dropdowns/multiselecttree/filtering)).
268
280
  *
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";const i=require("react"),d=require("@progress/kendo-react-intl"),s=require("../messages/index.js"),c=require("@progress/kendo-react-common"),m=require("@progress/kendo-svg-icons");function p(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const a=p(i),f=e=>{const n=d.useLocalization(),t=c.useUnstyled(),o=t&&t.uDropDownsBase,r=n.toLanguageString(s.clear,s.messages[s.clear]),l=u=>u.preventDefault();return a.createElement("span",{className:c.classNames(c.uDropDownsBase.clearButton({c:o})),role:"button",onClick:e.onClick,onMouseDown:l,tabIndex:-1,title:r,key:"clearbutton"},a.createElement(c.IconWrap,{name:"x",icon:m.xIcon}))};module.exports=f;
8
+ "use strict";const i=require("react"),d=require("@progress/kendo-react-intl"),s=require("../messages/index.js"),c=require("@progress/kendo-react-common"),m=require("@progress/kendo-svg-icons");function p(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const a=p(i),f=e=>{const n=d.useLocalization(),t=c.useUnstyled(),o=t&&t.uDropDownsBase,r=n.toLanguageString(s.clear,s.messages[s.clear]),l=u=>u.preventDefault();return a.createElement("span",{className:c.classNames(c.uDropDownsBase.clearButton({c:o})),onClick:e.onClick,onMouseDown:l,tabIndex:-1,title:r,key:"clearbutton"},a.createElement(c.IconWrap,{name:"x",icon:m.xIcon}))};module.exports=f;
@@ -5,27 +5,26 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import * as e from "react";
8
+ import * as o from "react";
9
9
  import { useLocalization as m } from "@progress/kendo-react-intl";
10
10
  import { clear as t, messages as i } from "../messages/index.mjs";
11
11
  import { useUnstyled as u, classNames as p, uDropDownsBase as f, IconWrap as d } from "@progress/kendo-react-common";
12
12
  import { xIcon as D } from "@progress/kendo-svg-icons";
13
- const b = (n) => {
14
- const a = m(), o = u(), s = o && o.uDropDownsBase, r = a.toLanguageString(t, i[t]), c = (l) => l.preventDefault();
15
- return /* @__PURE__ */ e.createElement(
13
+ const k = (n) => {
14
+ const a = m(), e = u(), s = e && e.uDropDownsBase, r = a.toLanguageString(t, i[t]), c = (l) => l.preventDefault();
15
+ return /* @__PURE__ */ o.createElement(
16
16
  "span",
17
17
  {
18
18
  className: p(f.clearButton({ c: s })),
19
- role: "button",
20
19
  onClick: n.onClick,
21
20
  onMouseDown: c,
22
21
  tabIndex: -1,
23
22
  title: r,
24
23
  key: "clearbutton"
25
24
  },
26
- /* @__PURE__ */ e.createElement(d, { name: "x", icon: D })
25
+ /* @__PURE__ */ o.createElement(d, { name: "x", icon: D })
27
26
  );
28
27
  };
29
28
  export {
30
- b as default
29
+ k as default
31
30
  };
package/common/List.d.ts CHANGED
@@ -46,6 +46,7 @@ export interface ListProps {
46
46
  iconField?: string;
47
47
  svgIconField?: string;
48
48
  checkboxField?: string;
49
+ ariaLabel?: string;
49
50
  /**
50
51
  * Specifies whether to show the group header for the first group.
51
52
  * By default, the first group header is hidden because there is no previous group to differentiate from.
package/common/List.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";const Y=require("react"),Z=require("./ListItem.js"),S=require("./ListGroupItem.js"),y=require("./utils.js"),ee=require("@progress/kendo-react-intl"),I=require("../messages/index.js"),a=require("@progress/kendo-react-common");function te(e){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const i=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(g,l,i.get?i:{enumerable:!0,get:()=>e[l]})}}return g.default=e,Object.freeze(g)}const n=te(Y),re=e=>{const g=ee.useLocalization(),l=a.useUnstyled(),i=l&&l.uDropDownsBase,{id:N,show:b,wrapperCssClass:j,wrapperStyle:M,listStyle:k,listRef:C,wrapperRef:V,listClassName:R,ariaSetSize:B,actionsField:$,descriptionField:_,iconField:q,svgIconField:L,checkboxField:P}=e,D=(()=>{const{textField:o,valueField:t,groupField:s,isMultiColumn:r,optionsGuid:c,skip:p=0,virtual:v,focusedIndex:z,hasDuplicates:U,highlightSelected:J=!0,value:h,data:G,itemRender:K,groupHeaderItemRender:Q}=e,x=Array.isArray(h);let A=0;return G.map((d,u)=>{const F=p+u,w=p+u+A,W=U?h?z===u:!1:d.disabled?!1:J&&(!x&&y.areSame(d,h,t)||x&&h.findIndex(X=>y.areSame(X,d,t))!==-1);let f,m,E;s!==void 0&&(m=y.getItemValue(d,s),u===0&&e.showFirstGroupHeader&&m?f=m:u>0&&(E=y.getItemValue(G[u-1],s),m&&E&&m!==E&&(f=m)));const O=f!==void 0;return f!==void 0&&(A+=1),[O&&n.createElement(S,{id:`option-${c}-${w}`,virtual:v,key:F+"-group-item",group:f,isMultiColumn:r,render:Q,iconField:q,svgIconField:L,groupItem:d}),n.createElement(Z,{id:`option-${c}-${O?w+1:w}`,virtual:v,dataItem:d,selected:W,focused:z===u,index:F,key:F,onClick:e.onClick,textField:o,group:f,render:K,disabled:d.disabled,actionsField:$,descriptionField:_,iconField:q,svgIconField:L,checkboxField:P})]})})(),H=()=>{const o=e.noDataRender,t=n.createElement("div",{className:a.classNames(a.uDropDownsBase.noData({c:i})),"aria-live":"polite"},n.createElement("div",null,g.toLanguageString(I.nodata,I.messages[I.nodata])));return o?o(t):t},T=()=>{if(!e.groupField)return n.createElement("ul",{id:N,role:"listbox","aria-hidden":b?void 0:!0,"aria-setsize":B,className:R||a.classNames(a.uDropDownsBase.ul({c:i})),ref:C,style:k},D);const o=[];let t=[];return D.forEach(s=>{Array.isArray(s)&&s.forEach(r=>{r&&r.type===S?(t.length>0&&o.push(t),t=[r]):r&&t.push(r)})}),t.length>0&&o.push(t),o.map(s=>{var p;const r=s.find(v=>n.isValidElement(v)&&v.type===S),c=(p=r==null?void 0:r.props)==null?void 0:p.id;return n.createElement("ul",{id:c?void 0:N,key:c||"first-group",role:"group","aria-labelledby":c,className:R||a.classNames(a.uDropDownsBase.ul({c:i})),ref:c?void 0:C,style:k},s)})};return D.length?n.createElement("div",{className:j,style:M,ref:V,role:e.groupField?"listbox":void 0,"aria-hidden":e.groupField&&!b?!0:void 0,"aria-setsize":e.groupField?B:void 0,onMouseDown:e.onMouseDown,onBlur:e.onBlur,onScroll:e.onScroll,unselectable:"on"},T(),e.scroller&&n.createElement("div",{className:a.classNames(a.uDropDownsBase.heightContainer({c:i}))},e.scroller)):H()};module.exports=re;
8
+ "use strict";const Z=require("react"),ee=require("./ListItem.js"),E=require("./ListGroupItem.js"),y=require("./utils.js"),te=require("@progress/kendo-react-intl"),S=require("../messages/index.js"),s=require("@progress/kendo-react-common");function re(e){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const i=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(g,o,i.get?i:{enumerable:!0,get:()=>e[o]})}}return g.default=e,Object.freeze(g)}const l=re(Z),ae=e=>{const g=te.useLocalization(),o=s.useUnstyled(),i=o&&o.uDropDownsBase,{id:k,show:I,wrapperCssClass:M,wrapperStyle:V,listStyle:N,listRef:C,wrapperRef:$,listClassName:R,ariaLabel:B,ariaSetSize:L,actionsField:_,descriptionField:P,iconField:q,svgIconField:z,checkboxField:H}=e,D=(()=>{const{textField:n,valueField:t,groupField:a,isMultiColumn:r,optionsGuid:c,skip:v=0,virtual:p,focusedIndex:G,hasDuplicates:J,highlightSelected:K=!0,value:h,data:x,itemRender:Q,groupHeaderItemRender:W}=e,A=Array.isArray(h);let O=0;return x.map((d,u)=>{const F=v+u,b=v+u+O,X=J?h?G===u:!1:d.disabled?!1:K&&(!A&&y.areSame(d,h,t)||A&&h.findIndex(Y=>y.areSame(Y,d,t))!==-1);let m,f,w;a!==void 0&&(f=y.getItemValue(d,a),u===0&&e.showFirstGroupHeader&&f?m=f:u>0&&(w=y.getItemValue(x[u-1],a),f&&w&&f!==w&&(m=f)));const j=m!==void 0;return m!==void 0&&(O+=1),[j&&l.createElement(E,{id:`k-${c}-item-${b+1}`,virtual:p,key:F+"-group-item",group:m,isMultiColumn:r,render:W,iconField:q,svgIconField:z,groupItem:d}),l.createElement(ee,{id:`k-${c}-item-${(j?b+1:b)+1}`,virtual:p,dataItem:d,selected:X,focused:G===u,index:F,key:F,onClick:e.onClick,textField:n,group:m,render:Q,disabled:d.disabled,actionsField:_,descriptionField:P,iconField:q,svgIconField:z,checkboxField:H})]})})(),T=()=>{const n=e.noDataRender,t=l.createElement("div",{className:s.classNames(s.uDropDownsBase.noData({c:i})),"aria-live":"polite"},l.createElement("div",null,g.toLanguageString(S.nodata,S.messages[S.nodata])));return n?n(t):t},U=()=>{if(!e.groupField)return l.createElement("ul",{id:k,role:"listbox","aria-label":B,"aria-hidden":I?void 0:!0,"aria-setsize":L,className:R||s.classNames(s.uDropDownsBase.ul({c:i})),ref:C,style:N},D);const n=[];let t=[];return D.forEach(a=>{Array.isArray(a)&&a.forEach(r=>{r&&r.type===E?(t.length>0&&n.push(t),t=[r]):r&&t.push(r)})}),t.length>0&&n.push(t),n.map(a=>{var v;const r=a.find(p=>l.isValidElement(p)&&p.type===E),c=(v=r==null?void 0:r.props)==null?void 0:v.id;return l.createElement("ul",{id:c?void 0:k,key:c||"first-group",role:"group","aria-labelledby":c,className:R||s.classNames(s.uDropDownsBase.ul({c:i})),ref:c?void 0:C,style:N},a)})};return D.length?l.createElement("div",{className:M,style:V,ref:$,role:e.groupField?"listbox":void 0,"aria-label":e.groupField?B:void 0,"aria-hidden":e.groupField&&!I?!0:void 0,"aria-setsize":e.groupField?L:void 0,onMouseDown:e.onMouseDown,onBlur:e.onBlur,onScroll:e.onScroll,unselectable:"on"},U(),e.scroller&&l.createElement("div",{className:s.classNames(s.uDropDownsBase.heightContainer({c:i}))},e.scroller)):T()};module.exports=ae;
package/common/List.mjs CHANGED
@@ -6,152 +6,155 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  import * as l from "react";
9
- import ee from "./ListItem.mjs";
9
+ import re from "./ListItem.mjs";
10
10
  import D from "./ListGroupItem.mjs";
11
- import { areSame as $, getItemValue as M } from "./utils.mjs";
11
+ import { areSame as M, getItemValue as V } from "./utils.mjs";
12
12
  import { useLocalization as te } from "@progress/kendo-react-intl";
13
- import { nodata as V, messages as re } from "../messages/index.mjs";
14
- import { useUnstyled as oe, classNames as p, uDropDownsBase as h } from "@progress/kendo-react-common";
15
- const ue = (e) => {
16
- const H = te(), I = oe(), f = I && I.uDropDownsBase, {
13
+ import { nodata as H, messages as ae } from "../messages/index.mjs";
14
+ import { useUnstyled as le, classNames as v, uDropDownsBase as h } from "@progress/kendo-react-common";
15
+ const me = (e) => {
16
+ const U = te(), I = le(), f = I && I.uDropDownsBase, {
17
17
  id: S,
18
- show: w,
19
- wrapperCssClass: U,
20
- wrapperStyle: j,
21
- listStyle: C,
22
- listRef: N,
23
- wrapperRef: q,
24
- listClassName: k,
25
- ariaSetSize: L,
26
- actionsField: J,
27
- descriptionField: K,
18
+ show: k,
19
+ wrapperCssClass: j,
20
+ wrapperStyle: q,
21
+ listStyle: w,
22
+ listRef: C,
23
+ wrapperRef: J,
24
+ listClassName: b,
25
+ ariaLabel: L,
26
+ ariaSetSize: N,
27
+ actionsField: K,
28
+ descriptionField: O,
28
29
  iconField: R,
29
30
  svgIconField: G,
30
- checkboxField: O
31
- } = e, v = (() => {
31
+ checkboxField: P
32
+ } = e, p = (() => {
32
33
  const {
33
34
  textField: i,
34
- valueField: t,
35
- groupField: o,
36
- isMultiColumn: r,
37
- optionsGuid: a,
35
+ valueField: r,
36
+ groupField: a,
37
+ isMultiColumn: t,
38
+ optionsGuid: o,
38
39
  skip: u = 0,
39
40
  virtual: m,
40
- focusedIndex: b,
41
- hasDuplicates: T,
42
- highlightSelected: W = !0,
41
+ focusedIndex: z,
42
+ hasDuplicates: W,
43
+ highlightSelected: X = !0,
43
44
  value: g,
44
- data: z,
45
- itemRender: X,
46
- groupHeaderItemRender: Y
47
- } = e, A = Array.isArray(g);
48
- let B = 0;
49
- return z.map((s, n) => {
50
- const y = u + n, F = u + n + B, Z = T ? g ? b === n : !1 : s.disabled ? !1 : W && (!A && $(s, g, t) || A && g.findIndex((_) => $(_, s, t)) !== -1);
45
+ data: A,
46
+ itemRender: Y,
47
+ groupHeaderItemRender: Z
48
+ } = e, B = Array.isArray(g);
49
+ let x = 0;
50
+ return A.map((s, n) => {
51
+ const y = u + n, F = u + n + x, _ = W ? g ? z === n : !1 : s.disabled ? !1 : X && (!B && M(s, g, r) || B && g.findIndex((ee) => M(ee, s, r)) !== -1);
51
52
  let d, c, E;
52
- o !== void 0 && (c = M(s, o), n === 0 && e.showFirstGroupHeader && c ? d = c : n > 0 && (E = M(z[n - 1], o), c && E && c !== E && (d = c)));
53
- const x = d !== void 0;
54
- return d !== void 0 && (B += 1), [
55
- x && /* @__PURE__ */ l.createElement(
53
+ a !== void 0 && (c = V(s, a), n === 0 && e.showFirstGroupHeader && c ? d = c : n > 0 && (E = V(A[n - 1], a), c && E && c !== E && (d = c)));
54
+ const $ = d !== void 0;
55
+ return d !== void 0 && (x += 1), [
56
+ $ && /* @__PURE__ */ l.createElement(
56
57
  D,
57
58
  {
58
- id: `option-${a}-${F}`,
59
+ id: `k-${o}-item-${F + 1}`,
59
60
  virtual: m,
60
61
  key: y + "-group-item",
61
62
  group: d,
62
- isMultiColumn: r,
63
- render: Y,
63
+ isMultiColumn: t,
64
+ render: Z,
64
65
  iconField: R,
65
66
  svgIconField: G,
66
67
  groupItem: s
67
68
  }
68
69
  ),
69
70
  /* @__PURE__ */ l.createElement(
70
- ee,
71
+ re,
71
72
  {
72
- id: `option-${a}-${x ? F + 1 : F}`,
73
+ id: `k-${o}-item-${($ ? F + 1 : F) + 1}`,
73
74
  virtual: m,
74
75
  dataItem: s,
75
- selected: Z,
76
- focused: b === n,
76
+ selected: _,
77
+ focused: z === n,
77
78
  index: y,
78
79
  key: y,
79
80
  onClick: e.onClick,
80
81
  textField: i,
81
82
  group: d,
82
- render: X,
83
+ render: Y,
83
84
  disabled: s.disabled,
84
- actionsField: J,
85
- descriptionField: K,
85
+ actionsField: K,
86
+ descriptionField: O,
86
87
  iconField: R,
87
88
  svgIconField: G,
88
- checkboxField: O
89
+ checkboxField: P
89
90
  }
90
91
  )
91
92
  ];
92
93
  });
93
- })(), P = () => {
94
- const i = e.noDataRender, t = /* @__PURE__ */ l.createElement("div", { className: p(h.noData({ c: f })), "aria-live": "polite" }, /* @__PURE__ */ l.createElement("div", null, H.toLanguageString(V, re[V])));
95
- return i ? i(t) : t;
96
- }, Q = () => {
94
+ })(), Q = () => {
95
+ const i = e.noDataRender, r = /* @__PURE__ */ l.createElement("div", { className: v(h.noData({ c: f })), "aria-live": "polite" }, /* @__PURE__ */ l.createElement("div", null, U.toLanguageString(H, ae[H])));
96
+ return i ? i(r) : r;
97
+ }, T = () => {
97
98
  if (!e.groupField)
98
99
  return /* @__PURE__ */ l.createElement(
99
100
  "ul",
100
101
  {
101
102
  id: S,
102
103
  role: "listbox",
103
- "aria-hidden": w ? void 0 : !0,
104
- "aria-setsize": L,
105
- className: k || p(h.ul({ c: f })),
106
- ref: N,
107
- style: C
104
+ "aria-label": L,
105
+ "aria-hidden": k ? void 0 : !0,
106
+ "aria-setsize": N,
107
+ className: b || v(h.ul({ c: f })),
108
+ ref: C,
109
+ style: w
108
110
  },
109
- v
111
+ p
110
112
  );
111
113
  const i = [];
112
- let t = [];
113
- return v.forEach((o) => {
114
- Array.isArray(o) && o.forEach((r) => {
115
- r && r.type === D ? (t.length > 0 && i.push(t), t = [r]) : r && t.push(r);
114
+ let r = [];
115
+ return p.forEach((a) => {
116
+ Array.isArray(a) && a.forEach((t) => {
117
+ t && t.type === D ? (r.length > 0 && i.push(r), r = [t]) : t && r.push(t);
116
118
  });
117
- }), t.length > 0 && i.push(t), i.map((o) => {
119
+ }), r.length > 0 && i.push(r), i.map((a) => {
118
120
  var u;
119
- const r = o.find(
121
+ const t = a.find(
120
122
  (m) => l.isValidElement(m) && m.type === D
121
- ), a = (u = r == null ? void 0 : r.props) == null ? void 0 : u.id;
123
+ ), o = (u = t == null ? void 0 : t.props) == null ? void 0 : u.id;
122
124
  return /* @__PURE__ */ l.createElement(
123
125
  "ul",
124
126
  {
125
- id: a ? void 0 : S,
126
- key: a || "first-group",
127
+ id: o ? void 0 : S,
128
+ key: o || "first-group",
127
129
  role: "group",
128
- "aria-labelledby": a,
129
- className: k || p(h.ul({ c: f })),
130
- ref: a ? void 0 : N,
131
- style: C
130
+ "aria-labelledby": o,
131
+ className: b || v(h.ul({ c: f })),
132
+ ref: o ? void 0 : C,
133
+ style: w
132
134
  },
133
- o
135
+ a
134
136
  );
135
137
  });
136
138
  };
137
- return v.length ? /* @__PURE__ */ l.createElement(
139
+ return p.length ? /* @__PURE__ */ l.createElement(
138
140
  "div",
139
141
  {
140
- className: U,
141
- style: j,
142
- ref: q,
142
+ className: j,
143
+ style: q,
144
+ ref: J,
143
145
  role: e.groupField ? "listbox" : void 0,
144
- "aria-hidden": e.groupField && !w ? !0 : void 0,
145
- "aria-setsize": e.groupField ? L : void 0,
146
+ "aria-label": e.groupField ? L : void 0,
147
+ "aria-hidden": e.groupField && !k ? !0 : void 0,
148
+ "aria-setsize": e.groupField ? N : void 0,
146
149
  onMouseDown: e.onMouseDown,
147
150
  onBlur: e.onBlur,
148
151
  onScroll: e.onScroll,
149
152
  unselectable: "on"
150
153
  },
151
- Q(),
152
- e.scroller && /* @__PURE__ */ l.createElement("div", { className: p(h.heightContainer({ c: f })) }, e.scroller)
153
- ) : P();
154
+ T(),
155
+ e.scroller && /* @__PURE__ */ l.createElement("div", { className: v(h.heightContainer({ c: f })) }, e.scroller)
156
+ ) : Q();
154
157
  };
155
158
  export {
156
- ue as default
159
+ me as default
157
160
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";const x=require("react"),n=require("prop-types"),c=require("@progress/kendo-react-inputs"),y=require("@progress/kendo-svg-icons"),r=require("@progress/kendo-react-common");function D(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const s=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(o,a,s.get?s:{enumerable:!0,get:()=>e[a]})}}return o.default=e,Object.freeze(o)}const t=D(x),u=t.forwardRef((e,o)=>{const a=t.useRef(null),{renderListFilterWrapper:s=!1,renderPrefixSeparator:f=!1,placeholder:m,...p}=e,i=r.useUnstyled(),l=i&&i.uDropDownsBase;t.useImperativeHandle(o,()=>a.current);const b=()=>t.createElement(t.Fragment,null,t.createElement(c.InputPrefix,null,t.createElement(r.IconWrap,{name:"search",icon:y.searchIcon,className:r.classNames(r.uDropDownsBase.inputIcon({c:l}))})),f&&t.createElement(c.InputSeparator,null)),d=t.createElement(c.TextBox,{...p,ref:a,className:r.classNames(r.uDropDownsBase.searchbox({c:l})),value:e.value||"",onChange:e.onChange,onKeyDown:e.onKeyDown,tabIndex:e.tabIndex,onClick:g=>g.stopPropagation(),size:e.size,fillMode:e.fillMode,rounded:e.rounded,prefix:b,placeholder:m});return s?t.createElement("div",{className:r.classNames(r.uDropDownsBase.listFilter({c:l}))}," ",d," "):d});u.propTypes={value:n.oneOfType([n.string,n.number,n.array]),tabIndex:n.number,onChange:n.func,onKeyDown:n.func,size:n.oneOf(["small","medium","large"]),rounded:n.oneOf(["small","medium","large","full","none"]),fillMode:n.oneOf(["solid","flat","outline"]),renderListFilterWrapper:n.bool,placeholder:n.string,renderPrefixSeparator:n.bool};u.displayName="KendoReactListFilter";module.exports=u;
8
+ "use strict";const D=require("react"),n=require("prop-types"),c=require("@progress/kendo-react-inputs"),I=require("@progress/kendo-svg-icons"),h=require("@progress/kendo-react-intl"),r=require("@progress/kendo-react-common"),i=require("../messages/index.js");function w(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(o,a,l.get?l:{enumerable:!0,get:()=>e[a]})}}return o.default=e,Object.freeze(o)}const t=w(D),u=t.forwardRef((e,o)=>{const a=t.useRef(null),{renderListFilterWrapper:l=!1,renderPrefixSeparator:f=!1,placeholder:p,...g}=e,b=h.useLocalization(),d=r.useUnstyled(),s=d&&d.uDropDownsBase;t.useImperativeHandle(o,()=>a.current);const x=()=>t.createElement(t.Fragment,null,t.createElement(c.InputPrefix,null,t.createElement(r.IconWrap,{name:"search",icon:I.searchIcon,className:r.classNames(r.uDropDownsBase.inputIcon({c:s}))})),f&&t.createElement(c.InputSeparator,null)),m=t.createElement(c.TextBox,{...g,ref:a,className:r.classNames(r.uDropDownsBase.searchbox({c:s})),value:e.value||"",onChange:e.onChange,onKeyDown:e.onKeyDown,tabIndex:e.tabIndex,onClick:y=>y.stopPropagation(),size:e.size,fillMode:e.fillMode,rounded:e.rounded,prefix:x,placeholder:p,"aria-label":b.toLanguageString(i.listFilterAriaLabel,i.messages[i.listFilterAriaLabel])});return l?t.createElement("div",{className:r.classNames(r.uDropDownsBase.listFilter({c:s}))}," ",m," "):m});u.propTypes={value:n.oneOfType([n.string,n.number,n.array]),tabIndex:n.number,onChange:n.func,onKeyDown:n.func,size:n.oneOf(["small","medium","large"]),rounded:n.oneOf(["small","medium","large","full","none"]),fillMode:n.oneOf(["solid","flat","outline"]),renderListFilterWrapper:n.bool,placeholder:n.string,renderPrefixSeparator:n.bool};u.displayName="KendoReactListFilter";module.exports=u;
@@ -7,23 +7,25 @@
7
7
  */
8
8
  import * as n from "react";
9
9
  import e from "prop-types";
10
- import { TextBox as b, InputPrefix as g, InputSeparator as h } from "@progress/kendo-react-inputs";
11
- import { searchIcon as I } from "@progress/kendo-svg-icons";
12
- import { useUnstyled as D, classNames as t, uDropDownsBase as o, IconWrap as w } from "@progress/kendo-react-common";
13
- const c = n.forwardRef((r, m) => {
14
- const l = n.useRef(null), { renderListFilterWrapper: d = !1, renderPrefixSeparator: u = !1, placeholder: f, ...p } = r, s = D(), a = s && s.uDropDownsBase;
15
- n.useImperativeHandle(m, () => l.current);
16
- const x = () => /* @__PURE__ */ n.createElement(n.Fragment, null, /* @__PURE__ */ n.createElement(g, null, /* @__PURE__ */ n.createElement(
17
- w,
10
+ import { TextBox as h, InputPrefix as I, InputSeparator as D } from "@progress/kendo-react-inputs";
11
+ import { searchIcon as F } from "@progress/kendo-svg-icons";
12
+ import { useLocalization as L } from "@progress/kendo-react-intl";
13
+ import { useUnstyled as w, classNames as t, uDropDownsBase as o, IconWrap as E } from "@progress/kendo-react-common";
14
+ import { listFilterAriaLabel as c, messages as v } from "../messages/index.mjs";
15
+ const m = n.forwardRef((r, u) => {
16
+ const l = n.useRef(null), { renderListFilterWrapper: d = !1, renderPrefixSeparator: f = !1, placeholder: p, ...g } = r, x = L(), s = w(), a = s && s.uDropDownsBase;
17
+ n.useImperativeHandle(u, () => l.current);
18
+ const b = () => /* @__PURE__ */ n.createElement(n.Fragment, null, /* @__PURE__ */ n.createElement(I, null, /* @__PURE__ */ n.createElement(
19
+ E,
18
20
  {
19
21
  name: "search",
20
- icon: I,
22
+ icon: F,
21
23
  className: t(o.inputIcon({ c: a }))
22
24
  }
23
- )), u && /* @__PURE__ */ n.createElement(h, null)), i = /* @__PURE__ */ n.createElement(
24
- b,
25
+ )), f && /* @__PURE__ */ n.createElement(D, null)), i = /* @__PURE__ */ n.createElement(
26
+ h,
25
27
  {
26
- ...p,
28
+ ...g,
27
29
  ref: l,
28
30
  className: t(o.searchbox({ c: a })),
29
31
  value: r.value || "",
@@ -34,13 +36,14 @@ const c = n.forwardRef((r, m) => {
34
36
  size: r.size,
35
37
  fillMode: r.fillMode,
36
38
  rounded: r.rounded,
37
- prefix: x,
38
- placeholder: f
39
+ prefix: b,
40
+ placeholder: p,
41
+ "aria-label": x.toLanguageString(c, v[c])
39
42
  }
40
43
  );
41
44
  return d ? /* @__PURE__ */ n.createElement("div", { className: t(o.listFilter({ c: a })) }, " ", i, " ") : i;
42
45
  });
43
- c.propTypes = {
46
+ m.propTypes = {
44
47
  value: e.oneOfType([e.string, e.number, e.array]),
45
48
  tabIndex: e.number,
46
49
  onChange: e.func,
@@ -52,7 +55,7 @@ c.propTypes = {
52
55
  placeholder: e.string,
53
56
  renderPrefixSeparator: e.bool
54
57
  };
55
- c.displayName = "KendoReactListFilter";
58
+ m.displayName = "KendoReactListFilter";
56
59
  export {
57
- c as default
60
+ m as default
58
61
  };
@@ -38,6 +38,7 @@ export interface SearchBarProps {
38
38
  ariaDescribedBy?: string;
39
39
  ariaRequired?: boolean;
40
40
  ariaControls?: string;
41
+ ariaAutoComplete?: 'none' | 'inline' | 'list' | 'both';
41
42
  unstyled?: DropDownsClassStructure;
42
43
  inputAttributes?: React.InputHTMLAttributes<HTMLInputElement>;
43
44
  }
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";const d=require("@progress/kendo-react-common"),g=require("react");function m(o){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const e in o)if(e!=="default"){const s=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(t,e,s.get?s:{enumerable:!0,get:()=>o[e]})}}return t.default=o,Object.freeze(t)}const h=m(g);class f extends h.Component{constructor(){super(...arguments),this._input=null}get input(){return this._input}componentDidUpdate(t){const e=t.value,s=t.suggestedText,{value:n,suggestedText:r,focused:p}=this.props,a=this.input,i=e!==n||r!==s,c=i&&e.startsWith(n)&&!(s&&r&&s.endsWith(r)),l=d.getActiveElement(document);p&&a&&l!==a&&a.focus(),r&&i&&!c&&a&&a.setSelectionRange(n.length-r.length,n.length)}render(){const{expanded:t=!1,disabled:e,role:s="listbox",render:n,tabIndex:r,accessKey:p,unstyled:a,inputAttributes:i}=this.props,c=a&&a.uDropDownsBase,l={tabIndex:r,accessKey:p},u=h.createElement("input",{autoComplete:"off",id:this.props.id,type:"text",key:"searchbar",size:this.props.size,placeholder:this.props.placeholder,className:d.classNames(d.uDropDownsBase.inputInner({c})),role:s,name:this.props.name,value:this.props.value,onChange:this.props.onChange,ref:b=>{this._input=b},onKeyDown:this.props.onKeyDown,onFocus:this.props.onFocus,onBlur:this.props.onBlur,onClick:this.props.onClick,"aria-disabled":e||void 0,disabled:e||void 0,readOnly:this.props.readOnly||void 0,title:this.props.title,"aria-haspopup":"listbox","aria-expanded":t,"aria-owns":this.props.owns,"aria-activedescendant":t?this.props.activedescendant:void 0,"aria-describedby":this.props.ariaDescribedBy,"aria-labelledby":this.props.ariaLabelledBy,"aria-label":this.props.ariaLabel,"aria-required":this.props.ariaRequired,"aria-controls":this.props.ariaControls,...Object.assign({},l,i)});return n?n(u):u}}module.exports=f;
8
+ "use strict";const d=require("@progress/kendo-react-common"),g=require("react");function m(i){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const t in i)if(t!=="default"){const s=Object.getOwnPropertyDescriptor(i,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:()=>i[t]})}}return e.default=i,Object.freeze(e)}const h=m(g);class f extends h.Component{constructor(){super(...arguments),this._input=null}get input(){return this._input}componentDidUpdate(e){const t=e.value,s=e.suggestedText,{value:o,suggestedText:r,focused:p}=this.props,a=this.input,n=t!==o||r!==s,c=n&&t.startsWith(o)&&!(s&&r&&s.endsWith(r)),l=d.getActiveElement(document);p&&a&&l!==a&&a.focus(),r&&n&&!c&&a&&a.setSelectionRange(o.length-r.length,o.length)}render(){const{expanded:e=!1,disabled:t,role:s="listbox",render:o,tabIndex:r,accessKey:p,unstyled:a,inputAttributes:n}=this.props,c=a&&a.uDropDownsBase,l={tabIndex:r,accessKey:p},u=h.createElement("input",{autoComplete:"off",id:this.props.id,type:"text",key:"searchbar",size:this.props.size,placeholder:this.props.placeholder,className:d.classNames(d.uDropDownsBase.inputInner({c})),role:s,name:this.props.name,value:this.props.value,onChange:this.props.onChange,ref:b=>{this._input=b},onKeyDown:this.props.onKeyDown,onFocus:this.props.onFocus,onBlur:this.props.onBlur,onClick:this.props.onClick,"aria-disabled":t||void 0,disabled:t||void 0,readOnly:this.props.readOnly||void 0,title:this.props.title,"aria-haspopup":"listbox","aria-expanded":e,"aria-activedescendant":e?this.props.activedescendant:void 0,"aria-describedby":this.props.ariaDescribedBy,"aria-labelledby":this.props.ariaLabelledBy,"aria-label":this.props.ariaLabel,"aria-required":this.props.ariaRequired||void 0,"aria-controls":e?this.props.ariaControls:void 0,"aria-autocomplete":this.props.ariaAutoComplete,...Object.assign({},l,n)});return o?o(u):u}}module.exports=f;
@@ -5,7 +5,7 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { getActiveElement as u, classNames as b, uDropDownsBase as g } from "@progress/kendo-react-common";
8
+ import { getActiveElement as h, classNames as b, uDropDownsBase as g } from "@progress/kendo-react-common";
9
9
  import * as c from "react";
10
10
  class y extends c.Component {
11
11
  constructor() {
@@ -18,7 +18,7 @@ class y extends c.Component {
18
18
  return this._input;
19
19
  }
20
20
  componentDidUpdate(a) {
21
- const i = a.value, o = a.suggestedText, { value: s, suggestedText: t, focused: n } = this.props, e = this.input, r = i !== s || t !== o, p = r && i.startsWith(s) && !(o && t && o.endsWith(t)), l = u(document);
21
+ const i = a.value, o = a.suggestedText, { value: s, suggestedText: t, focused: n } = this.props, e = this.input, r = i !== s || t !== o, p = r && i.startsWith(s) && !(o && t && o.endsWith(t)), l = h(document);
22
22
  n && e && l !== e && e.focus(), t && r && !p && e && e.setSelectionRange(s.length - t.length, s.length);
23
23
  }
24
24
  render() {
@@ -48,8 +48,8 @@ class y extends c.Component {
48
48
  name: this.props.name,
49
49
  value: this.props.value,
50
50
  onChange: this.props.onChange,
51
- ref: (h) => {
52
- this._input = h;
51
+ ref: (u) => {
52
+ this._input = u;
53
53
  },
54
54
  onKeyDown: this.props.onKeyDown,
55
55
  onFocus: this.props.onFocus,
@@ -61,13 +61,13 @@ class y extends c.Component {
61
61
  title: this.props.title,
62
62
  "aria-haspopup": "listbox",
63
63
  "aria-expanded": a,
64
- "aria-owns": this.props.owns,
65
64
  "aria-activedescendant": a ? this.props.activedescendant : void 0,
66
65
  "aria-describedby": this.props.ariaDescribedBy,
67
66
  "aria-labelledby": this.props.ariaLabelledBy,
68
67
  "aria-label": this.props.ariaLabel,
69
- "aria-required": this.props.ariaRequired,
70
- "aria-controls": this.props.ariaControls,
68
+ "aria-required": this.props.ariaRequired || void 0,
69
+ "aria-controls": a ? this.props.ariaControls : void 0,
70
+ "aria-autocomplete": this.props.ariaAutoComplete,
71
71
  ...Object.assign({}, l, r)
72
72
  }
73
73
  );