@progress/kendo-react-scrollview 8.2.0-develop.8 → 8.2.0

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/ScrollView.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 client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("react"),r=require("prop-types"),o=require("@progress/kendo-react-common"),_=require("./package-metadata.js"),k=require("@progress/kendo-svg-icons");function z(c){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(c){for(const i in c)if(i!=="default"){const d=Object.getOwnPropertyDescriptor(c,i);Object.defineProperty(g,i,d.get?d:{enumerable:!0,get:()=>c[i]})}}return g.default=c,Object.freeze(g)}const e=z(A),N=e.forwardRef((c,g)=>{o.validatePackage(_.packageMetadata);const{className:i,style:d,children:E,pagerOverlay:b=m.pageOverlay,pageable:S=m.pageable,arrows:P=m.arrows,endless:n=m.endless,activeView:T=m.activeView,automaticViewChange:V=m.automaticViewChange,automaticViewChangeInterval:R=m.automaticViewChangeInterval}=c,[t,s]=e.useState(T||1),v=e.useRef(null),w=e.useRef(null),y=e.useRef(null),l=e.Children.toArray(E),C=o.useRtl(v,c.dir),u=C==="rtl",I=e.useCallback(()=>{v.current&&v.current.focus()},[]),j=e.useCallback(()=>({element:v.current,focus:I}),[I]);e.useImperativeHandle(g,j);const h=e.useCallback(()=>{n?t>1?s(t-1):s(l.length):t>1&&s(t-1)},[t,l.length,n]),p=e.useCallback(()=>{n?t<l.length?s(t+1):s(1):t<l.length&&s(t+1)},[t,l.length,n]);e.useEffect(()=>{let a=l.length;w.current&&(w.current.style.setProperty("--kendo-scrollview-views",`${a}`),w.current.style.setProperty("--kendo-scrollview-current",`${t}`))},[l,t,C]);function O(){y.current&&clearTimeout(y.current)}e.useEffect(()=>{if(V)return O(),y.current=setTimeout(()=>s(a=>a===l.length?n?1:a:a+1),R),()=>{O()}},[V,R,l.length,t,n]);const D=e.useCallback(a=>{switch(a.keyCode){case o.Keys.left:a.preventDefault(),u?p():h();break;case o.Keys.right:a.preventDefault(),u?h():p();break}},[u,p,h]),q=e.useMemo(()=>o.classNames("k-scrollview",{"k-scrollview-light":b==="light","k-scrollview-dark":b==="dark"},i),[i,b]),x=e.Children.map(E||null,(a,f)=>e.createElement("div",{className:"k-scrollview-view","aria-hidden":t!==f+1},a)),K=e.useCallback(()=>{let a;return a=t>1,(n||a)&&l.length>0},[t,l.length,n]),M=e.useCallback(()=>{let a;return a=t<l.length,(n||a)&&l.length>0},[t,l.length,n]);return e.createElement("div",{className:q,style:d,ref:v,tabIndex:0,dir:C,onKeyDown:D},e.createElement("div",{className:"k-scrollview-wrap k-scrollview-animate",ref:w},x),e.createElement("div",{className:"k-scrollview-elements"},P&&e.createElement(e.Fragment,null,K()&&e.createElement("span",{className:"k-scrollview-prev","aria-label":"previous",onClick:h},e.createElement(o.IconWrap,{name:u?"chevron-right":"chevron-left",icon:u?k.chevronRightIcon:k.chevronLeftIcon,size:"xxxlarge"})),M()&&e.createElement("span",{className:"k-scrollview-next",onClick:p},e.createElement(o.IconWrap,{name:u?"chevron-left":"chevron-right",icon:u?k.chevronLeftIcon:k.chevronRightIcon,size:"xxxlarge"}))),S&&e.createElement("div",{className:"k-scrollview-nav-wrap"},e.createElement("div",{className:"k-scrollview-nav"},l.map((a,f)=>e.createElement("span",{className:o.classNames("k-link",{"k-primary":t===f+1}),key:f+1,onClick:()=>s(f+1)}))))),e.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"k-sr-only"}))});N.propTypes={activeView:r.number,arrows:r.bool,automaticViewChange:r.bool,automaticViewChangeInterval:r.number,children:r.any,className:r.string,dir:r.string,endless:r.bool,pageable:r.bool,pageOverlay:r.string,style:r.object};const m={activeView:1,arrows:!0,automaticViewChange:!0,automaticViewChangeInterval:5e3,endless:!1,pageable:!0,pageOverlay:"none"};N.displayName="KendoScrollView";exports.ScrollView=N;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("react"),l=require("prop-types"),s=require("@progress/kendo-react-common"),W=require("./package-metadata.js"),b=require("@progress/kendo-svg-icons"),$=require("@progress/kendo-react-intl"),f=require("./messages.js");function F(c){const w=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(c){for(const u in c)if(u!=="default"){const p=Object.getOwnPropertyDescriptor(c,u);Object.defineProperty(w,u,p.get?p:{enumerable:!0,get:()=>c[u]})}}return w.default=c,Object.freeze(w)}const e=F(H),N=e.forwardRef((c,w)=>{s.validatePackage(W.packageMetadata);const{className:u,style:p,children:R,pagerOverlay:y=v.pageOverlay,pageable:T=v.pageable,arrows:q=v.arrows,endless:r=v.endless,activeView:j=v.activeView,automaticViewChange:V=v.automaticViewChange,automaticViewChangeInterval:S=v.automaticViewChangeInterval}=c,[a,o]=e.useState(j||1),m=e.useRef(null),k=e.useRef(null),C=e.useRef(null),n=e.Children.toArray(R),E=s.useRtl(m,c.dir),g=E==="rtl",L=$.useLocalization(),x=e.useCallback(()=>{m.current&&m.current.focus()},[]),z=e.useCallback(()=>({element:m.current,focus:x}),[x]);e.useImperativeHandle(w,z);const d=e.useCallback(()=>{r?a>1?o(a-1):o(n.length):a>1&&o(a-1)},[a,n.length,r]),h=e.useCallback(()=>{r?a<n.length?o(a+1):o(1):a<n.length&&o(a+1)},[a,n.length,r]),D=e.useCallback(t=>{var P,K;const i=t.target;i.classList.contains("k-scrollview-prev")?(d(),!((r||a>2)&&n.length>0)&&((P=m.current)==null||P.focus())):i.classList.contains("k-scrollview-next")&&(h(),!((r||a<n.length-1)&&n.length>0)&&((K=m.current)==null||K.focus()))},[a,n.length,r]);e.useEffect(()=>{const t=n.length;k.current&&(k.current.style.setProperty("--kendo-scrollview-views",`${t}`),k.current.style.setProperty("--kendo-scrollview-current",`${a}`))},[n,a,E]);function O(){C.current&&clearTimeout(C.current)}e.useEffect(()=>{if(V)return O(),C.current=setTimeout(()=>o(t=>t===n.length?r?1:t:t+1),S),()=>{O()}},[V,S,n.length,a,r]);const I=e.useCallback(t=>{switch(t.key){case s.KEYS.left:t.preventDefault(),g?h():d();break;case s.KEYS.right:t.preventDefault(),g?d():h();break;case s.KEYS.space:t.preventDefault(),D(t);break;case s.KEYS.enter:t.preventDefault(),D(t);break}},[g,h,d]),A=e.useMemo(()=>s.classNames("k-scrollview",{"k-scrollview-light":y==="light","k-scrollview-dark":y==="dark"},u),[u,y]),M=e.Children.map(R||null,(t,i)=>e.createElement("div",{className:"k-scrollview-view","aria-hidden":a!==i+1},t)),Y=e.useCallback(()=>{let t;return t=a>1,(r||t)&&n.length>0},[a,n.length,r]),_=e.useCallback(()=>{let t;return t=a<n.length,(r||t)&&n.length>0},[a,n.length,r]);return e.createElement("div",{className:A,style:p,ref:m,tabIndex:0,dir:E,onKeyDown:I},e.createElement("div",{className:"k-scrollview-wrap k-scrollview-animate",ref:k},M),e.createElement("div",{className:"k-scrollview-elements"},q&&e.createElement(e.Fragment,null,Y()&&e.createElement("span",{className:"k-scrollview-prev","aria-label":L.toLanguageString(f.next,f.messages[f.next]),role:"button",tabIndex:0,onClick:d,onKeyDown:I},e.createElement(s.IconWrap,{name:g?"chevron-right":"chevron-left",icon:g?b.chevronRightIcon:b.chevronLeftIcon,size:"xxxlarge"})),_()&&e.createElement("span",{className:"k-scrollview-next","aria-label":L.toLanguageString(f.previous,f.messages[f.previous]),role:"button",tabIndex:0,onClick:h,onKeyDown:I},e.createElement(s.IconWrap,{name:g?"chevron-left":"chevron-right",icon:g?b.chevronLeftIcon:b.chevronRightIcon,size:"xxxlarge"}))),T&&e.createElement("div",{className:"k-scrollview-nav-wrap"},e.createElement("div",{className:"k-scrollview-nav"},n.map((t,i)=>e.createElement("span",{className:s.classNames("k-link",{"k-primary":a===i+1}),key:i+1,onClick:()=>o(i+1)}))))),e.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"k-sr-only"}))});N.propTypes={activeView:l.number,arrows:l.bool,automaticViewChange:l.bool,automaticViewChangeInterval:l.number,children:l.any,className:l.string,dir:l.string,endless:l.bool,pageable:l.bool,pageOverlay:l.string,style:l.object};const v={activeView:1,arrows:!0,automaticViewChange:!0,automaticViewChangeInterval:5e3,endless:!1,pageable:!0,pageOverlay:"none"};N.displayName="KendoScrollView";exports.ScrollView=N;
package/ScrollView.mjs CHANGED
@@ -7,135 +7,169 @@
7
7
  */
8
8
  "use client";
9
9
  import * as e from "react";
10
- import r from "prop-types";
11
- import { validatePackage as $, useRtl as j, Keys as N, classNames as V, IconWrap as R } from "@progress/kendo-react-common";
12
- import { packageMetadata as F } from "./package-metadata.mjs";
13
- import { chevronRightIcon as I, chevronLeftIcon as x } from "@progress/kendo-svg-icons";
14
- const P = e.forwardRef((p, T) => {
15
- $(F);
10
+ import n from "prop-types";
11
+ import { validatePackage as J, useRtl as Q, KEYS as f, classNames as D, IconWrap as P } from "@progress/kendo-react-common";
12
+ import { packageMetadata as U } from "./package-metadata.mjs";
13
+ import { chevronRightIcon as K, chevronLeftIcon as S } from "@progress/kendo-svg-icons";
14
+ import { useLocalization as X } from "@progress/kendo-react-intl";
15
+ import { next as T, messages as A, previous as z } from "./messages.mjs";
16
+ const O = e.forwardRef((d, B) => {
17
+ J(U);
16
18
  const {
17
- className: d,
18
- style: A,
19
- children: k,
20
- pagerOverlay: w = o.pageOverlay,
21
- pageable: D = o.pageable,
22
- arrows: K = o.arrows,
23
- endless: n = o.endless,
24
- activeView: O = o.activeView,
25
- automaticViewChange: y = o.automaticViewChange,
26
- automaticViewChangeInterval: C = o.automaticViewChangeInterval
27
- } = p, [t, s] = e.useState(O || 1), i = e.useRef(null), u = e.useRef(null), f = e.useRef(null), l = e.Children.toArray(k), h = j(i, p.dir), c = h === "rtl", b = e.useCallback(
19
+ className: b,
20
+ style: H,
21
+ children: y,
22
+ pagerOverlay: w = m.pageOverlay,
23
+ pageable: M = m.pageable,
24
+ arrows: $ = m.arrows,
25
+ endless: r = m.endless,
26
+ activeView: j = m.activeView,
27
+ automaticViewChange: C = m.automaticViewChange,
28
+ automaticViewChangeInterval: E = m.automaticViewChangeInterval
29
+ } = d, [a, s] = e.useState(j || 1), c = e.useRef(null), v = e.useRef(null), h = e.useRef(null), l = e.Children.toArray(y), p = Q(c, d.dir), i = p === "rtl", N = X(), I = e.useCallback(
28
30
  () => {
29
- i.current && i.current.focus();
31
+ c.current && c.current.focus();
30
32
  },
31
33
  []
32
- ), S = e.useCallback(
34
+ ), F = e.useCallback(
33
35
  () => ({
34
- element: i.current,
35
- focus: b
36
+ element: c.current,
37
+ focus: I
36
38
  }),
37
- [b]
39
+ [I]
38
40
  );
39
- e.useImperativeHandle(T, S);
40
- const v = e.useCallback(() => {
41
- n ? t > 1 ? s(t - 1) : s(l.length) : t > 1 && s(t - 1);
42
- }, [t, l.length, n]), g = e.useCallback(() => {
43
- n ? t < l.length ? s(t + 1) : s(1) : t < l.length && s(t + 1);
44
- }, [t, l.length, n]);
41
+ e.useImperativeHandle(B, F);
42
+ const u = e.useCallback(() => {
43
+ r ? a > 1 ? s(a - 1) : s(l.length) : a > 1 && s(a - 1);
44
+ }, [a, l.length, r]), g = e.useCallback(() => {
45
+ r ? a < l.length ? s(a + 1) : s(1) : a < l.length && s(a + 1);
46
+ }, [a, l.length, r]), V = e.useCallback((t) => {
47
+ var L, x;
48
+ const o = t.target;
49
+ o.classList.contains("k-scrollview-prev") ? (u(), !((r || a > 2) && l.length > 0) && ((L = c.current) == null || L.focus())) : o.classList.contains("k-scrollview-next") && (g(), !((r || a < l.length - 1) && l.length > 0) && ((x = c.current) == null || x.focus()));
50
+ }, [a, l.length, r]);
45
51
  e.useEffect(() => {
46
- let a = l.length;
47
- u.current && (u.current.style.setProperty("--kendo-scrollview-views", `${a}`), u.current.style.setProperty("--kendo-scrollview-current", `${t}`));
48
- }, [l, t, h]);
49
- function E() {
50
- f.current && clearTimeout(f.current);
52
+ const t = l.length;
53
+ v.current && (v.current.style.setProperty("--kendo-scrollview-views", `${t}`), v.current.style.setProperty("--kendo-scrollview-current", `${a}`));
54
+ }, [l, a, p]);
55
+ function R() {
56
+ h.current && clearTimeout(h.current);
51
57
  }
52
58
  e.useEffect(() => {
53
- if (y)
54
- return E(), f.current = setTimeout(
55
- () => s((a) => a === l.length ? n ? 1 : a : a + 1),
56
- C
59
+ if (C)
60
+ return R(), h.current = setTimeout(
61
+ () => s((t) => t === l.length ? r ? 1 : t : t + 1),
62
+ E
57
63
  ), () => {
58
- E();
64
+ R();
59
65
  };
60
- }, [y, C, l.length, t, n]);
61
- const z = e.useCallback(
62
- (a) => {
63
- switch (a.keyCode) {
64
- case N.left:
65
- a.preventDefault(), c ? g() : v();
66
+ }, [C, E, l.length, a, r]);
67
+ const k = e.useCallback(
68
+ (t) => {
69
+ switch (t.key) {
70
+ case f.left:
71
+ t.preventDefault(), i ? g() : u();
66
72
  break;
67
- case N.right:
68
- a.preventDefault(), c ? v() : g();
73
+ case f.right:
74
+ t.preventDefault(), i ? u() : g();
75
+ break;
76
+ case f.space:
77
+ t.preventDefault(), V(t);
78
+ break;
79
+ case f.enter:
80
+ t.preventDefault(), V(t);
69
81
  break;
70
82
  }
71
83
  },
72
- [c, g, v]
73
- ), B = e.useMemo(
74
- () => V(
84
+ [i, g, u]
85
+ ), W = e.useMemo(
86
+ () => D(
75
87
  "k-scrollview",
76
88
  {
77
89
  "k-scrollview-light": w === "light",
78
90
  "k-scrollview-dark": w === "dark"
79
91
  },
80
- d
92
+ b
81
93
  ),
82
- [d, w]
83
- ), H = e.Children.map(k || null, (a, m) => /* @__PURE__ */ e.createElement(
94
+ [b, w]
95
+ ), Y = e.Children.map(y || null, (t, o) => /* @__PURE__ */ e.createElement(
84
96
  "div",
85
97
  {
86
98
  className: "k-scrollview-view",
87
- "aria-hidden": t !== m + 1
99
+ "aria-hidden": a !== o + 1
88
100
  },
89
- a
90
- )), L = e.useCallback(() => {
91
- let a;
92
- return a = t > 1, (n || a) && l.length > 0;
93
- }, [t, l.length, n]), M = e.useCallback(() => {
94
- let a;
95
- return a = t < l.length, (n || a) && l.length > 0;
96
- }, [t, l.length, n]);
97
- return /* @__PURE__ */ e.createElement("div", { className: B, style: A, ref: i, tabIndex: 0, dir: h, onKeyDown: z }, /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-wrap k-scrollview-animate", ref: u }, H), /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-elements" }, K && /* @__PURE__ */ e.createElement(e.Fragment, null, L() && /* @__PURE__ */ e.createElement("span", { className: "k-scrollview-prev", "aria-label": "previous", onClick: v }, /* @__PURE__ */ e.createElement(
98
- R,
101
+ t
102
+ )), _ = e.useCallback(() => {
103
+ let t;
104
+ return t = a > 1, (r || t) && l.length > 0;
105
+ }, [a, l.length, r]), q = e.useCallback(() => {
106
+ let t;
107
+ return t = a < l.length, (r || t) && l.length > 0;
108
+ }, [a, l.length, r]);
109
+ return /* @__PURE__ */ e.createElement("div", { className: W, style: H, ref: c, tabIndex: 0, dir: p, onKeyDown: k }, /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-wrap k-scrollview-animate", ref: v }, Y), /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-elements" }, $ && /* @__PURE__ */ e.createElement(e.Fragment, null, _() && /* @__PURE__ */ e.createElement(
110
+ "span",
99
111
  {
100
- name: c ? "chevron-right" : "chevron-left",
101
- icon: c ? I : x,
102
- size: "xxxlarge"
103
- }
104
- )), M() && /* @__PURE__ */ e.createElement("span", { className: "k-scrollview-next", onClick: g }, /* @__PURE__ */ e.createElement(
105
- R,
112
+ className: "k-scrollview-prev",
113
+ "aria-label": N.toLanguageString(T, A[T]),
114
+ role: "button",
115
+ tabIndex: 0,
116
+ onClick: u,
117
+ onKeyDown: k
118
+ },
119
+ /* @__PURE__ */ e.createElement(
120
+ P,
121
+ {
122
+ name: i ? "chevron-right" : "chevron-left",
123
+ icon: i ? K : S,
124
+ size: "xxxlarge"
125
+ }
126
+ )
127
+ ), q() && /* @__PURE__ */ e.createElement(
128
+ "span",
106
129
  {
107
- name: c ? "chevron-left" : "chevron-right",
108
- icon: c ? x : I,
109
- size: "xxxlarge"
110
- }
111
- ))), D && /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-nav-wrap" }, /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-nav" }, l.map((a, m) => /* @__PURE__ */ e.createElement(
130
+ className: "k-scrollview-next",
131
+ "aria-label": N.toLanguageString(z, A[z]),
132
+ role: "button",
133
+ tabIndex: 0,
134
+ onClick: g,
135
+ onKeyDown: k
136
+ },
137
+ /* @__PURE__ */ e.createElement(
138
+ P,
139
+ {
140
+ name: i ? "chevron-left" : "chevron-right",
141
+ icon: i ? S : K,
142
+ size: "xxxlarge"
143
+ }
144
+ )
145
+ )), M && /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-nav-wrap" }, /* @__PURE__ */ e.createElement("div", { className: "k-scrollview-nav" }, l.map((t, o) => /* @__PURE__ */ e.createElement(
112
146
  "span",
113
147
  {
114
- className: V(
148
+ className: D(
115
149
  "k-link",
116
150
  {
117
- "k-primary": t === m + 1
151
+ "k-primary": a === o + 1
118
152
  }
119
153
  ),
120
- key: m + 1,
121
- onClick: () => s(m + 1)
154
+ key: o + 1,
155
+ onClick: () => s(o + 1)
122
156
  }
123
157
  ))))), /* @__PURE__ */ e.createElement("div", { "aria-live": "polite", "aria-atomic": "true", className: "k-sr-only" }));
124
158
  });
125
- P.propTypes = {
126
- activeView: r.number,
127
- arrows: r.bool,
128
- automaticViewChange: r.bool,
129
- automaticViewChangeInterval: r.number,
130
- children: r.any,
131
- className: r.string,
132
- dir: r.string,
133
- endless: r.bool,
134
- pageable: r.bool,
135
- pageOverlay: r.string,
136
- style: r.object
159
+ O.propTypes = {
160
+ activeView: n.number,
161
+ arrows: n.bool,
162
+ automaticViewChange: n.bool,
163
+ automaticViewChangeInterval: n.number,
164
+ children: n.any,
165
+ className: n.string,
166
+ dir: n.string,
167
+ endless: n.bool,
168
+ pageable: n.bool,
169
+ pageOverlay: n.string,
170
+ style: n.object
137
171
  };
138
- const o = {
172
+ const m = {
139
173
  activeView: 1,
140
174
  arrows: !0,
141
175
  automaticViewChange: !0,
@@ -144,7 +178,7 @@ const o = {
144
178
  pageable: !0,
145
179
  pageOverlay: "none"
146
180
  };
147
- P.displayName = "KendoScrollView";
181
+ O.displayName = "KendoScrollView";
148
182
  export {
149
- P as ScrollView
183
+ O as ScrollView
150
184
  };
@@ -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
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-svg-icons")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-svg-icons"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactScrollview={},e.React,e.PropTypes,e.KendoReactCommon,e.KendoSvgIcons)}(this,(function(e,t,r,a,l){"use strict";function n(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=n(t);const s={name:"@progress/kendo-react-scrollview",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},o=c.forwardRef(((e,t)=>{a.validatePackage(s);const{className:r,style:n,children:o,pagerOverlay:u=i.pageOverlay,pageable:m=i.pageable,arrows:v=i.arrows,endless:p=i.endless,activeView:g=i.activeView,automaticViewChange:d=i.automaticViewChange,automaticViewChangeInterval:h=i.automaticViewChangeInterval}=e,[f,w]=c.useState(g||1),k=c.useRef(null),y=c.useRef(null),b=c.useRef(null),C=c.Children.toArray(o),E=a.useRtl(k,e.dir),N="rtl"===E,I=c.useCallback((()=>{k.current&&k.current.focus()}),[]),V=c.useCallback((()=>({element:k.current,focus:I})),[I]);c.useImperativeHandle(t,V);const O=c.useCallback((()=>{p?w(f>1?f-1:C.length):f>1&&w(f-1)}),[f,C.length,p]),R=c.useCallback((()=>{p?f<C.length?w(f+1):w(1):f<C.length&&w(f+1)}),[f,C.length,p]);function x(){b.current&&clearTimeout(b.current)}c.useEffect((()=>{let e=C.length;y.current&&(y.current.style.setProperty("--kendo-scrollview-views",`${e}`),y.current.style.setProperty("--kendo-scrollview-current",`${f}`))}),[C,f,E]),c.useEffect((()=>{if(d)return x(),b.current=setTimeout((()=>w((e=>e===C.length?p?1:e:e+1))),h),()=>{x()}}),[d,h,C.length,f,p]);const K=c.useCallback((e=>{switch(e.keyCode){case a.Keys.left:e.preventDefault(),N?R():O();break;case a.Keys.right:e.preventDefault(),N?O():R()}}),[N,R,O]),D=c.useMemo((()=>a.classNames("k-scrollview",{"k-scrollview-light":"light"===u,"k-scrollview-dark":"dark"===u},r)),[r,u]),T=c.Children.map(o||null,((e,t)=>c.createElement("div",{className:"k-scrollview-view","aria-hidden":f!==t+1},e))),j=c.useCallback((()=>{let e;return e=f>1,(p||e)&&C.length>0}),[f,C.length,p]),P=c.useCallback((()=>{let e;return e=f<C.length,(p||e)&&C.length>0}),[f,C.length,p]);return c.createElement("div",{className:D,style:n,ref:k,tabIndex:0,dir:E,onKeyDown:K},c.createElement("div",{className:"k-scrollview-wrap k-scrollview-animate",ref:y},T),c.createElement("div",{className:"k-scrollview-elements"},v&&c.createElement(c.Fragment,null,j()&&c.createElement("span",{className:"k-scrollview-prev","aria-label":"previous",onClick:O},c.createElement(a.IconWrap,{name:N?"chevron-right":"chevron-left",icon:N?l.chevronRightIcon:l.chevronLeftIcon,size:"xxxlarge"})),P()&&c.createElement("span",{className:"k-scrollview-next",onClick:R},c.createElement(a.IconWrap,{name:N?"chevron-left":"chevron-right",icon:N?l.chevronLeftIcon:l.chevronRightIcon,size:"xxxlarge"}))),m&&c.createElement("div",{className:"k-scrollview-nav-wrap"},c.createElement("div",{className:"k-scrollview-nav"},C.map(((e,t)=>c.createElement("span",{className:a.classNames("k-link",{"k-primary":f===t+1}),key:t+1,onClick:()=>w(t+1)})))))),c.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"k-sr-only"}))}));o.propTypes={activeView:r.number,arrows:r.bool,automaticViewChange:r.bool,automaticViewChangeInterval:r.number,children:r.any,className:r.string,dir:r.string,endless:r.bool,pageable:r.bool,pageOverlay:r.string,style:r.object};const i={activeView:1,arrows:!0,automaticViewChange:!0,automaticViewChangeInterval:5e3,endless:!1,pageable:!0,pageOverlay:"none"};o.displayName="KendoScrollView",e.ScrollView=o}));
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-svg-icons"),require("@progress/kendo-react-intl")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-svg-icons","@progress/kendo-react-intl"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactScrollview={},e.React,e.PropTypes,e.KendoReactCommon,e.KendoSvgIcons,e.KendoReactIntl)}(this,(function(e,t,r,a,n,l){"use strict";function c(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var o=c(t);const s={name:"@progress/kendo-react-scrollview",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},i="scrollview.previous",u="scrollview.next",g={[i]:"Previous",[u]:"Next"},v=o.forwardRef(((e,t)=>{a.validatePackage(s);const{className:r,style:c,children:v,pagerOverlay:p=m.pageOverlay,pageable:d=m.pageable,arrows:h=m.arrows,endless:w=m.endless,activeView:f=m.activeView,automaticViewChange:k=m.automaticViewChange,automaticViewChangeInterval:b=m.automaticViewChangeInterval}=e,[y,C]=o.useState(f||1),E=o.useRef(null),N=o.useRef(null),I=o.useRef(null),x=o.Children.toArray(v),K=a.useRtl(E,e.dir),V="rtl"===K,O=l.useLocalization(),R=o.useCallback((()=>{E.current&&E.current.focus()}),[]),D=o.useCallback((()=>({element:E.current,focus:R})),[R]);o.useImperativeHandle(t,D);const S=o.useCallback((()=>{w?C(y>1?y-1:x.length):y>1&&C(y-1)}),[y,x.length,w]),L=o.useCallback((()=>{w?y<x.length?C(y+1):C(1):y<x.length&&C(y+1)}),[y,x.length,w]),P=o.useCallback((e=>{var t,r;const a=e.target;a.classList.contains("k-scrollview-prev")?(S(),!((w||y>2)&&x.length>0)&&(null==(t=E.current)||t.focus())):a.classList.contains("k-scrollview-next")&&(L(),!((w||y<x.length-1)&&x.length>0)&&(null==(r=E.current)||r.focus()))}),[y,x.length,w]);function T(){I.current&&clearTimeout(I.current)}o.useEffect((()=>{const e=x.length;N.current&&(N.current.style.setProperty("--kendo-scrollview-views",`${e}`),N.current.style.setProperty("--kendo-scrollview-current",`${y}`))}),[x,y,K]),o.useEffect((()=>{if(k)return T(),I.current=setTimeout((()=>C((e=>e===x.length?w?1:e:e+1))),b),()=>{T()}}),[k,b,x.length,y,w]);const j=o.useCallback((e=>{switch(e.key){case a.KEYS.left:e.preventDefault(),V?L():S();break;case a.KEYS.right:e.preventDefault(),V?S():L();break;case a.KEYS.space:case a.KEYS.enter:e.preventDefault(),P(e)}}),[V,L,S]),q=o.useMemo((()=>a.classNames("k-scrollview",{"k-scrollview-light":"light"===p,"k-scrollview-dark":"dark"===p},r)),[r,p]),z=o.Children.map(v||null,((e,t)=>o.createElement("div",{className:"k-scrollview-view","aria-hidden":y!==t+1},e))),Y=o.useCallback((()=>{let e;return e=y>1,(w||e)&&x.length>0}),[y,x.length,w]),U=o.useCallback((()=>{let e;return e=y<x.length,(w||e)&&x.length>0}),[y,x.length,w]);return o.createElement("div",{className:q,style:c,ref:E,tabIndex:0,dir:K,onKeyDown:j},o.createElement("div",{className:"k-scrollview-wrap k-scrollview-animate",ref:N},z),o.createElement("div",{className:"k-scrollview-elements"},h&&o.createElement(o.Fragment,null,Y()&&o.createElement("span",{className:"k-scrollview-prev","aria-label":O.toLanguageString(u,g[u]),role:"button",tabIndex:0,onClick:S,onKeyDown:j},o.createElement(a.IconWrap,{name:V?"chevron-right":"chevron-left",icon:V?n.chevronRightIcon:n.chevronLeftIcon,size:"xxxlarge"})),U()&&o.createElement("span",{className:"k-scrollview-next","aria-label":O.toLanguageString(i,g[i]),role:"button",tabIndex:0,onClick:L,onKeyDown:j},o.createElement(a.IconWrap,{name:V?"chevron-left":"chevron-right",icon:V?n.chevronLeftIcon:n.chevronRightIcon,size:"xxxlarge"}))),d&&o.createElement("div",{className:"k-scrollview-nav-wrap"},o.createElement("div",{className:"k-scrollview-nav"},x.map(((e,t)=>o.createElement("span",{className:a.classNames("k-link",{"k-primary":y===t+1}),key:t+1,onClick:()=>C(t+1)})))))),o.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"k-sr-only"}))}));v.propTypes={activeView:r.number,arrows:r.bool,automaticViewChange:r.bool,automaticViewChangeInterval:r.number,children:r.any,className:r.string,dir:r.string,endless:r.bool,pageable:r.bool,pageOverlay:r.string,style:r.object};const m={activeView:1,arrows:!0,automaticViewChange:!0,automaticViewChangeInterval:5e3,endless:!1,pageable:!0,pageOverlay:"none"};v.displayName="KendoScrollView",e.ScrollView=v}));
package/messages.js ADDED
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 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 client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="scrollview.previous",s="scrollview.next",t={[e]:"Previous",[s]:"Next"};exports.messages=t;exports.next=s;exports.previous=e;
package/messages.mjs ADDED
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 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 client";
9
+ const e = "scrollview.previous", s = "scrollview.next", o = {
10
+ [e]: "Previous",
11
+ [s]: "Next"
12
+ };
13
+ export {
14
+ o as messages,
15
+ s as next,
16
+ e as previous
17
+ };
@@ -10,7 +10,7 @@ const e = {
10
10
  name: "@progress/kendo-react-scrollview",
11
11
  productName: "KendoReact",
12
12
  productCodes: ["KENDOUIREACT", "KENDOUICOMPLETE"],
13
- publishDate: 1720767329,
13
+ publishDate: 1722844245,
14
14
  version: "",
15
15
  licensingDocsUrl: "https://www.telerik.com/kendo-react-ui/components/my-license/"
16
16
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-react-scrollview",
3
- "version": "8.2.0-develop.8",
3
+ "version": "8.2.0",
4
4
  "description": "React ScrollView (React Carousel) displays images or content in a horizontally scrollable collection. KendoReact ScrollView package",
5
5
  "author": "Progress",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
@@ -23,7 +23,7 @@
23
23
  "sideEffects": false,
24
24
  "peerDependencies": {
25
25
  "@progress/kendo-licensing": "^1.3.4",
26
- "@progress/kendo-react-common": "8.2.0-develop.8",
26
+ "@progress/kendo-react-common": "8.2.0",
27
27
  "@progress/kendo-svg-icons": "^3.0.0",
28
28
  "react": "^16.8.2 || ^17.0.0 || ^18.0.0",
29
29
  "react-dom": "^16.8.2 || ^17.0.0 || ^18.0.0"