@progress/kendo-react-listview 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.
package/ListView.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";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),o=require("@progress/kendo-react-common"),y=require("./package-metadata.js");function O(a){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const l in a)if(l!=="default"){const d=Object.getOwnPropertyDescriptor(a,l);Object.defineProperty(r,l,d.get?d:{enumerable:!0,get:()=>a[l]})}}return r.default=a,Object.freeze(r)}const s=O(I),c="k-focus",C=s.forwardRef((a,r)=>{const l=!o.validatePackage(y.packageMetadata,{component:"ListView"}),d=o.getLicenseMessage(y.packageMetadata),{data:M=[],item:f,footer:v,header:g,className:R,style:S,onScroll:b,navigatable:w}=a,k=s.useRef(null),m=s.useRef(null),p=s.useCallback(()=>({onScroll:b,props:a,context:{},state:{},refs:{}}),[]);s.useImperativeHandle(m,p),s.useImperativeHandle(r,()=>m.current),o.useWebMcpRegister("listview",m,a,a.webMcp);const D=s.useCallback(e=>o.dispatchEvent(b,e,p(),void 0),[]),E=(e,t,n)=>{n.preventDefault(),t.focusNext(e),t.next(e).classList.add(c),t.previous(e).classList.remove(c)},L=(e,t,n)=>{n.preventDefault(),t.focusPrevious(e),t.next(e).classList.remove(c),t.previous(e).classList.add(c)},i=s.useMemo(()=>new o.Navigation({root:k,selectors:[".k-listview-item"],rovingTabIndex:!0,keyboardEvents:{keydown:{ArrowDown:E,ArrowRight:E,ArrowUp:L,ArrowLeft:L,Home:(e,t,n)=>{n.preventDefault();const u=t.first;u&&t.focusElement(u,e)},End:(e,t,n)=>{n.preventDefault();const u=t.last;u&&t.focusElement(u,e)},Tab:(e,t,n)=>{t.removeFocusClass(e)}}},tabIndex:0,focusClass:c}),[]),N=s.useCallback(i.triggerKeyboardEvent.bind(i),[]),h=s.useCallback(e=>{e.nativeEvent.target.classList.add(c),i.elements.forEach(t=>{t!==e.nativeEvent.target&&t.classList.remove(c)})},[]);return s.useEffect(()=>{if(w)return i.initializeRovingTab(),()=>i.removeFocusListener()},[]),s.createElement("div",{className:o.classNames("k-listview",R),style:S,onKeyDown:e=>w&&N(e),onClick:h},g?s.createElement(g,null):null,s.createElement("div",{role:"list",className:"k-listview-content",onScroll:D,ref:k},f&&M.map((e,t)=>s.createElement(f,{dataItem:e,index:t,key:t}))),v?s.createElement(v,null):null,l&&s.createElement(o.WatermarkOverlay,{message:d}))});C.displayName="KendoReactListView";exports.ListView=C;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("react"),l=require("@progress/kendo-react-common"),C=require("./package-metadata.js"),V=require("./ListViewItemContext.js");function O(a){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const o in a)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(a,o);Object.defineProperty(r,o,c.get?c:{enumerable:!0,get:()=>a[o]})}}return r.default=a,Object.freeze(r)}const s=O(N),i="k-focus",M=s.forwardRef((a,r)=>{const o=!l.validatePackage(C.packageMetadata,{component:"ListView"}),c=l.getLicenseMessage(C.packageMetadata),{data:d=[],item:f,footer:w,header:g,className:I,style:R,onScroll:b,navigatable:p}=a,k=s.useRef(null),v=s.useRef(null),E=s.useCallback(()=>({onScroll:b,props:a,context:{},state:{},refs:{}}),[]);s.useImperativeHandle(v,E),s.useImperativeHandle(r,()=>v.current),l.useWebMcpRegister("listview",v,a,a.webMcp);const S=s.useCallback(e=>l.dispatchEvent(b,e,E(),void 0),[]),L=(e,t,n)=>{n.preventDefault(),t.focusNext(e),t.next(e).classList.add(i),t.previous(e).classList.remove(i)},y=(e,t,n)=>{n.preventDefault(),t.focusPrevious(e),t.next(e).classList.remove(i),t.previous(e).classList.add(i)},u=s.useMemo(()=>new l.Navigation({root:k,selectors:[".k-listview-item"],rovingTabIndex:!0,keyboardEvents:{keydown:{ArrowDown:L,ArrowRight:L,ArrowUp:y,ArrowLeft:y,Home:(e,t,n)=>{n.preventDefault();const m=t.first;m&&t.focusElement(m,e)},End:(e,t,n)=>{n.preventDefault();const m=t.last;m&&t.focusElement(m,e)},Tab:(e,t,n)=>{t.removeFocusClass(e)}}},tabIndex:0,focusClass:i}),[]),h=s.useCallback(u.triggerKeyboardEvent.bind(u),[]),D=s.useCallback(e=>{e.nativeEvent.target.classList.add(i),u.elements.forEach(t=>{t!==e.nativeEvent.target&&t.classList.remove(i)})},[]);return s.useEffect(()=>{if(p)return u.initializeRovingTab(),()=>u.removeFocusListener()},[]),s.createElement("div",{className:l.classNames("k-listview",I),style:R,onKeyDown:e=>p&&h(e),onClick:D},g?s.createElement(g,null):null,s.createElement("div",{role:"list",className:"k-listview-content",onScroll:S,ref:k},f&&d.map((e,t)=>{var n;return s.createElement(x,{key:(n=e.id)!=null?n:t,Item:f,dataItem:e,index:t,totalCount:d.length})})),w?s.createElement(w,null):null,o&&s.createElement(l.WatermarkOverlay,{message:c}))});M.displayName="KendoReactListView";const x=({Item:a,dataItem:r,index:o,totalCount:c})=>{const d=s.useMemo(()=>({index:o,totalCount:c}),[o,c]);return s.createElement(V.ListViewItemContext.Provider,{value:d},s.createElement(a,{dataItem:r,index:o}))};exports.ListView=M;
package/ListView.mjs CHANGED
@@ -6,47 +6,48 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  import * as s from "react";
9
- import { validatePackage as x, getLicenseMessage as D, useWebMcpRegister as M, dispatchEvent as S, Navigation as A, classNames as H, WatermarkOverlay as F } from "@progress/kendo-react-common";
10
- import { packageMetadata as p } from "./package-metadata.mjs";
11
- const o = "k-focus", K = s.forwardRef((r, b) => {
12
- const g = !x(p, { component: "ListView" }), L = D(p), { data: y = [], item: c, footer: m, header: u, className: C, style: h, onScroll: v, navigatable: d } = r, f = s.useRef(null), i = s.useRef(null), w = s.useCallback(
9
+ import { validatePackage as x, getLicenseMessage as D, useWebMcpRegister as M, dispatchEvent as V, Navigation as S, classNames as A, WatermarkOverlay as H } from "@progress/kendo-react-common";
10
+ import { packageMetadata as C } from "./package-metadata.mjs";
11
+ import { ListViewItemContext as F } from "./ListViewItemContext.mjs";
12
+ const o = "k-focus", K = s.forwardRef((n, u) => {
13
+ const l = !x(C, { component: "ListView" }), c = D(C), { data: m = [], item: d, footer: f, header: w, className: h, style: y, onScroll: p, navigatable: E } = n, k = s.useRef(null), v = s.useRef(null), L = s.useCallback(
13
14
  () => ({
14
- onScroll: v,
15
- props: r,
15
+ onScroll: p,
16
+ props: n,
16
17
  context: {},
17
18
  state: {},
18
19
  refs: {}
19
20
  }),
20
21
  []
21
22
  );
22
- s.useImperativeHandle(i, w), s.useImperativeHandle(b, () => i.current), M("listview", i, r, r.webMcp);
23
+ s.useImperativeHandle(v, L), s.useImperativeHandle(u, () => v.current), M("listview", v, n, n.webMcp);
23
24
  const I = s.useCallback(
24
- (e) => S(v, e, w(), void 0),
25
+ (e) => V(p, e, L(), void 0),
25
26
  []
26
- ), k = (e, t, a) => {
27
+ ), g = (e, t, a) => {
27
28
  a.preventDefault(), t.focusNext(e), t.next(e).classList.add(o), t.previous(e).classList.remove(o);
28
- }, E = (e, t, a) => {
29
+ }, b = (e, t, a) => {
29
30
  a.preventDefault(), t.focusPrevious(e), t.next(e).classList.remove(o), t.previous(e).classList.add(o);
30
- }, n = s.useMemo(
31
- () => new A({
32
- root: f,
31
+ }, r = s.useMemo(
32
+ () => new S({
33
+ root: k,
33
34
  selectors: [".k-listview-item"],
34
35
  rovingTabIndex: !0,
35
36
  keyboardEvents: {
36
37
  keydown: {
37
- ArrowDown: k,
38
- ArrowRight: k,
39
- ArrowUp: E,
40
- ArrowLeft: E,
38
+ ArrowDown: g,
39
+ ArrowRight: g,
40
+ ArrowUp: b,
41
+ ArrowLeft: b,
41
42
  Home: (e, t, a) => {
42
43
  a.preventDefault();
43
- const l = t.first;
44
- l && t.focusElement(l, e);
44
+ const i = t.first;
45
+ i && t.focusElement(i, e);
45
46
  },
46
47
  End: (e, t, a) => {
47
48
  a.preventDefault();
48
- const l = t.last;
49
- l && t.focusElement(l, e);
49
+ const i = t.last;
50
+ i && t.focusElement(i, e);
50
51
  },
51
52
  Tab: (e, t, a) => {
52
53
  t.removeFocusClass(e);
@@ -57,29 +58,45 @@ const o = "k-focus", K = s.forwardRef((r, b) => {
57
58
  focusClass: o
58
59
  }),
59
60
  []
60
- ), N = s.useCallback(n.triggerKeyboardEvent.bind(n), []), R = s.useCallback((e) => {
61
- e.nativeEvent.target.classList.add(o), n.elements.forEach((t) => {
61
+ ), N = s.useCallback(r.triggerKeyboardEvent.bind(r), []), R = s.useCallback((e) => {
62
+ e.nativeEvent.target.classList.add(o), r.elements.forEach((t) => {
62
63
  t !== e.nativeEvent.target && t.classList.remove(o);
63
64
  });
64
65
  }, []);
65
66
  return s.useEffect(() => {
66
- if (d)
67
- return n.initializeRovingTab(), () => n.removeFocusListener();
67
+ if (E)
68
+ return r.initializeRovingTab(), () => r.removeFocusListener();
68
69
  }, []), /* @__PURE__ */ s.createElement(
69
70
  "div",
70
71
  {
71
- className: H("k-listview", C),
72
- style: h,
73
- onKeyDown: (e) => d && N(e),
72
+ className: A("k-listview", h),
73
+ style: y,
74
+ onKeyDown: (e) => E && N(e),
74
75
  onClick: R
75
76
  },
76
- u ? /* @__PURE__ */ s.createElement(u, null) : null,
77
- /* @__PURE__ */ s.createElement("div", { role: "list", className: "k-listview-content", onScroll: I, ref: f }, c && y.map((e, t) => /* @__PURE__ */ s.createElement(c, { dataItem: e, index: t, key: t }))),
78
- m ? /* @__PURE__ */ s.createElement(m, null) : null,
79
- g && /* @__PURE__ */ s.createElement(F, { message: L })
77
+ w ? /* @__PURE__ */ s.createElement(w, null) : null,
78
+ /* @__PURE__ */ s.createElement("div", { role: "list", className: "k-listview-content", onScroll: I, ref: k }, d && m.map((e, t) => {
79
+ var a;
80
+ return /* @__PURE__ */ s.createElement(
81
+ P,
82
+ {
83
+ key: (a = e.id) != null ? a : t,
84
+ Item: d,
85
+ dataItem: e,
86
+ index: t,
87
+ totalCount: m.length
88
+ }
89
+ );
90
+ })),
91
+ f ? /* @__PURE__ */ s.createElement(f, null) : null,
92
+ l && /* @__PURE__ */ s.createElement(H, { message: c })
80
93
  );
81
94
  });
82
95
  K.displayName = "KendoReactListView";
96
+ const P = ({ Item: n, dataItem: u, index: l, totalCount: c }) => {
97
+ const m = s.useMemo(() => ({ index: l, totalCount: c }), [l, c]);
98
+ return /* @__PURE__ */ s.createElement(F.Provider, { value: m }, /* @__PURE__ */ s.createElement(n, { dataItem: u, index: l }));
99
+ };
83
100
  export {
84
101
  K as ListView
85
102
  };
@@ -0,0 +1,15 @@
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 * as React from 'react';
9
+ /** @hidden */
10
+ export interface ListViewItemContextValue {
11
+ index: number;
12
+ totalCount: number;
13
+ }
14
+ /** @hidden */
15
+ export declare const ListViewItemContext: React.Context<ListViewItemContextValue | null>;
@@ -0,0 +1,8 @@
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
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react");function c(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=c(r),i=a.createContext(null);exports.ListViewItemContext=i;
@@ -0,0 +1,12 @@
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 * as t from "react";
9
+ const e = t.createContext(null);
10
+ export {
11
+ e as ListViewItemContext
12
+ };
@@ -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";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),a=require("@progress/kendo-react-common");function o(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const s=o(n),i=e=>{const{children:r,style:t,className:c}=e;return s.createElement("div",{role:"listitem",style:t,className:a.classNames("k-listview-item",c)},r)};exports.ListViewItemWrapper=i;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),a=require("@progress/kendo-react-common"),c=require("./ListViewItemContext.js");function l(e){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(i,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return i.default=e,Object.freeze(i)}const r=l(s),u=e=>{const{children:i,style:t,className:n}=e,o=r.useContext(c.ListViewItemContext);return r.createElement("div",{role:"listitem",style:t,className:a.classNames("k-listview-item",n),"aria-posinset":o?o.index+1:void 0,"aria-setsize":o?o.totalCount:void 0},i)};exports.ListViewItemWrapper=u;
@@ -5,12 +5,23 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import * as i from "react";
9
- import { classNames as m } from "@progress/kendo-react-common";
10
- const l = (e) => {
11
- const { children: t, style: s, className: r } = e;
12
- return /* @__PURE__ */ i.createElement("div", { role: "listitem", style: s, className: m("k-listview-item", r) }, t);
8
+ import * as e from "react";
9
+ import { classNames as a } from "@progress/kendo-react-common";
10
+ import { ListViewItemContext as m } from "./ListViewItemContext.mjs";
11
+ const c = (i) => {
12
+ const { children: s, style: o, className: r } = i, t = e.useContext(m);
13
+ return /* @__PURE__ */ e.createElement(
14
+ "div",
15
+ {
16
+ role: "listitem",
17
+ style: o,
18
+ className: a("k-listview-item", r),
19
+ "aria-posinset": t ? t.index + 1 : void 0,
20
+ "aria-setsize": t ? t.totalCount : void 0
21
+ },
22
+ s
23
+ );
13
24
  };
14
25
  export {
15
- l as ListViewItemWrapper
26
+ c as ListViewItemWrapper
16
27
  };
@@ -12,4 +12,4 @@
12
12
  * Licensed under commercial license. See LICENSE.md in the package root for more information
13
13
  *-------------------------------------------------------------------------------------------
14
14
  */
15
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@progress/kendo-react-common")):"function"==typeof define&&define.amd?define(["exports","react","@progress/kendo-react-common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactListview={},e.React,e.KendoReactCommon)}(this,function(e,t,s){"use strict";function a(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(s){if("default"!==s){var a=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,a.get?a:{enumerable:!0,get:function(){return e[s]}})}}),t.default=e,Object.freeze(t)}var r=a(t);const n=Object.freeze({name:"@progress/kendo-react-listview",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:0,version:"14.5.0-develop.14",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"}),l="k-focus",o=r.forwardRef((e,t)=>{const a=!s.validatePackage(n,{component:"ListView"}),o=s.getLicenseMessage(n),{data:i=[],item:c,footer:d,header:m,className:u,style:f,onScroll:v,navigatable:p}=e,w=r.useRef(null),b=r.useRef(null),E=r.useCallback(()=>({onScroll:v,props:e,context:{},state:{},refs:{}}),[]);r.useImperativeHandle(b,E),r.useImperativeHandle(t,()=>b.current),s.useWebMcpRegister("listview",b,e,e.webMcp);const g=r.useCallback(e=>s.dispatchEvent(v,e,E(),void 0),[]),k=(e,t,s)=>{s.preventDefault(),t.focusNext(e),t.next(e).classList.add(l),t.previous(e).classList.remove(l)},y=(e,t,s)=>{s.preventDefault(),t.focusPrevious(e),t.next(e).classList.remove(l),t.previous(e).classList.add(l)},N=r.useMemo(()=>new s.Navigation({root:w,selectors:[".k-listview-item"],rovingTabIndex:!0,keyboardEvents:{keydown:{ArrowDown:k,ArrowRight:k,ArrowUp:y,ArrowLeft:y,Home:(e,t,s)=>{s.preventDefault();const a=t.first;a&&t.focusElement(a,e)},End:(e,t,s)=>{s.preventDefault();const a=t.last;a&&t.focusElement(a,e)},Tab:(e,t,s)=>{t.removeFocusClass(e)}}},tabIndex:0,focusClass:l}),[]),L=r.useCallback(N.triggerKeyboardEvent.bind(N),[]),h=r.useCallback(e=>{e.nativeEvent.target.classList.add(l),N.elements.forEach(t=>{t!==e.nativeEvent.target&&t.classList.remove(l)})},[]);return r.useEffect(()=>{if(p)return N.initializeRovingTab(),()=>N.removeFocusListener()},[]),r.createElement("div",{className:s.classNames("k-listview",u),style:f,onKeyDown:e=>p&&L(e),onClick:h},m?r.createElement(m,null):null,r.createElement("div",{role:"list",className:"k-listview-content",onScroll:g,ref:w},c&&i.map((e,t)=>r.createElement(c,{dataItem:e,index:t,key:t}))),d?r.createElement(d,null):null,a&&r.createElement(s.WatermarkOverlay,{message:o}))});o.displayName="KendoReactListView";e.ListView=o,e.ListViewFooter=e=>r.createElement("div",{className:s.classNames("k-listview-footer",e.className),style:e.style},e.children),e.ListViewHeader=e=>r.createElement("div",{className:s.classNames("k-listview-header",e.className),style:e.style},e.children),e.ListViewItemWrapper=e=>{const{children:t,style:a,className:n}=e;return r.createElement("div",{role:"listitem",style:a,className:s.classNames("k-listview-item",n)},t)}});
15
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@progress/kendo-react-common")):"function"==typeof define&&define.amd?define(["exports","react","@progress/kendo-react-common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactListview={},e.React,e.KendoReactCommon)}(this,function(e,t,s){"use strict";function a(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(s){if("default"!==s){var a=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,a.get?a:{enumerable:!0,get:function(){return e[s]}})}}),t.default=e,Object.freeze(t)}var n=a(t);const r=Object.freeze({name:"@progress/kendo-react-listview",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:0,version:"14.5.0-develop.15",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"}),o=n.createContext(null),l="k-focus",i=n.forwardRef((e,t)=>{const a=!s.validatePackage(r,{component:"ListView"}),o=s.getLicenseMessage(r),{data:i=[],item:u,footer:d,header:m,className:v,style:f,onScroll:p,navigatable:w}=e,E=n.useRef(null),b=n.useRef(null),g=n.useCallback(()=>({onScroll:p,props:e,context:{},state:{},refs:{}}),[]);n.useImperativeHandle(b,g),n.useImperativeHandle(t,()=>b.current),s.useWebMcpRegister("listview",b,e,e.webMcp);const k=n.useCallback(e=>s.dispatchEvent(p,e,g(),void 0),[]),y=(e,t,s)=>{s.preventDefault(),t.focusNext(e),t.next(e).classList.add(l),t.previous(e).classList.remove(l)},N=(e,t,s)=>{s.preventDefault(),t.focusPrevious(e),t.next(e).classList.remove(l),t.previous(e).classList.add(l)},C=n.useMemo(()=>new s.Navigation({root:E,selectors:[".k-listview-item"],rovingTabIndex:!0,keyboardEvents:{keydown:{ArrowDown:y,ArrowRight:y,ArrowUp:N,ArrowLeft:N,Home:(e,t,s)=>{s.preventDefault();const a=t.first;a&&t.focusElement(a,e)},End:(e,t,s)=>{s.preventDefault();const a=t.last;a&&t.focusElement(a,e)},Tab:(e,t,s)=>{t.removeFocusClass(e)}}},tabIndex:0,focusClass:l}),[]),x=n.useCallback(C.triggerKeyboardEvent.bind(C),[]),L=n.useCallback(e=>{e.nativeEvent.target.classList.add(l),C.elements.forEach(t=>{t!==e.nativeEvent.target&&t.classList.remove(l)})},[]);return n.useEffect(()=>{if(w)return C.initializeRovingTab(),()=>C.removeFocusListener()},[]),n.createElement("div",{className:s.classNames("k-listview",v),style:f,onKeyDown:e=>w&&x(e),onClick:L},m?n.createElement(m,null):null,n.createElement("div",{role:"list",className:"k-listview-content",onScroll:k,ref:E},u&&i.map((e,t)=>{var s;return n.createElement(c,{key:null!=(s=e.id)?s:t,Item:u,dataItem:e,index:t,totalCount:i.length})})),d?n.createElement(d,null):null,a&&n.createElement(s.WatermarkOverlay,{message:o}))});i.displayName="KendoReactListView";const c=({Item:e,dataItem:t,index:s,totalCount:a})=>{const r=n.useMemo(()=>({index:s,totalCount:a}),[s,a]);return n.createElement(o.Provider,{value:r},n.createElement(e,{dataItem:t,index:s}))};e.ListView=i,e.ListViewFooter=e=>n.createElement("div",{className:s.classNames("k-listview-footer",e.className),style:e.style},e.children),e.ListViewHeader=e=>n.createElement("div",{className:s.classNames("k-listview-header",e.className),style:e.style},e.children),e.ListViewItemWrapper=e=>{const{children:t,style:a,className:r}=e,l=n.useContext(o);return n.createElement("div",{role:"listitem",style:a,className:s.classNames("k-listview-item",r),"aria-posinset":l?l.index+1:void 0,"aria-setsize":l?l.totalCount:void 0},t)}});
@@ -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";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=Object.freeze({name:"@progress/kendo-react-listview",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1778746033,version:"14.5.0-develop.14",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"});exports.packageMetadata=e;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=Object.freeze({name:"@progress/kendo-react-listview",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1778773747,version:"14.5.0-develop.15",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"});exports.packageMetadata=e;
@@ -7,7 +7,7 @@ export const packageMetadata = Object.freeze({
7
7
  productName: 'KendoReact',
8
8
  productCode: 'KENDOUIREACT',
9
9
  productCodes: ['KENDOUIREACT'],
10
- publishDate: 1778746033,
11
- version: '14.5.0-develop.14',
10
+ publishDate: 1778773747,
11
+ version: '14.5.0-develop.15',
12
12
  licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/components/my-license/'
13
13
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-react-listview",
3
- "version": "14.5.0-develop.14",
3
+ "version": "14.5.0-develop.15",
4
4
  "description": "React ListView enables you to display a custom layout of data items. KendoReact ListView package",
5
5
  "author": "Progress",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
@@ -26,7 +26,7 @@
26
26
  "sideEffects": false,
27
27
  "peerDependencies": {
28
28
  "@progress/kendo-licensing": "^1.7.2",
29
- "@progress/kendo-react-common": "14.5.0-develop.14",
29
+ "@progress/kendo-react-common": "14.5.0-develop.15",
30
30
  "react": "^18.0.0 || ^19.0.0",
31
31
  "react-dom": "^18.0.0 || ^19.0.0"
32
32
  },
@@ -51,7 +51,7 @@
51
51
  "package": {
52
52
  "productName": "KendoReact",
53
53
  "productCode": "KENDOUIREACT",
54
- "publishDate": 1778746033,
54
+ "publishDate": 1778773747,
55
55
  "licensingDocsUrl": "https://www.telerik.com/kendo-react-ui/components/my-license/"
56
56
  }
57
57
  },