@progress/kendo-react-layout 9.4.0-develop.23 → 9.4.0-develop.3
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/NOTICE.txt +51 -40
- package/actionsheet/ActionSheet.js +1 -1
- package/actionsheet/ActionSheet.mjs +1 -0
- package/actionsheet/ActionSheetContent.js +1 -1
- package/actionsheet/ActionSheetContent.mjs +6 -5
- package/actionsheet/ActionSheetFooter.js +1 -1
- package/actionsheet/ActionSheetFooter.mjs +1 -0
- package/actionsheet/ActionSheetHeader.js +1 -1
- package/actionsheet/ActionSheetHeader.mjs +8 -7
- package/actionsheet/ActionSheetItem.js +1 -1
- package/actionsheet/ActionSheetItem.mjs +1 -0
- package/appbar/AppBar.js +1 -1
- package/appbar/AppBar.mjs +11 -10
- package/appbar/AppBarSection.js +1 -1
- package/appbar/AppBarSection.mjs +12 -11
- package/appbar/AppBarSpacer.js +1 -1
- package/appbar/AppBarSpacer.mjs +4 -3
- package/bottomnavigation/BottomNavigation.js +1 -1
- package/bottomnavigation/BottomNavigation.mjs +24 -23
- package/bottomnavigation/BottomNavigationItem.js +1 -1
- package/bottomnavigation/BottomNavigationItem.mjs +12 -11
- package/bottomnavigation/models/utils.js +1 -1
- package/bottomnavigation/models/utils.mjs +5 -4
- package/breadcrumb/Breadcrumb.js +1 -1
- package/breadcrumb/Breadcrumb.mjs +1 -0
- package/breadcrumb/BreadcrumbDelimiter.js +1 -1
- package/breadcrumb/BreadcrumbDelimiter.mjs +1 -0
- package/breadcrumb/BreadcrumbLink.js +1 -1
- package/breadcrumb/BreadcrumbLink.mjs +1 -0
- package/breadcrumb/BreadcrumbListItem.js +1 -1
- package/breadcrumb/BreadcrumbListItem.mjs +1 -0
- package/breadcrumb/BreadcrumbOrderedList.js +1 -1
- package/breadcrumb/BreadcrumbOrderedList.mjs +7 -6
- package/card/Avatar.js +1 -1
- package/card/Avatar.mjs +1 -0
- package/card/Card.js +1 -1
- package/card/Card.mjs +1 -0
- package/card/CardActions.js +1 -1
- package/card/CardActions.mjs +5 -4
- package/card/CardBody.js +1 -1
- package/card/CardBody.mjs +5 -4
- package/card/CardFooter.js +1 -1
- package/card/CardFooter.mjs +1 -0
- package/card/CardHeader.js +1 -1
- package/card/CardHeader.mjs +1 -0
- package/card/CardImage.js +1 -1
- package/card/CardImage.mjs +4 -3
- package/card/CardSubtitle.js +1 -1
- package/card/CardSubtitle.mjs +1 -0
- package/card/CardTitle.js +1 -1
- package/card/CardTitle.mjs +5 -4
- package/card/interfaces/Enums.js +1 -1
- package/card/interfaces/Enums.mjs +5 -4
- package/contextmenu/ContextMenu.js +1 -1
- package/contextmenu/ContextMenu.mjs +10 -10
- package/dist/cdn/js/kendo-react-layout.js +1 -8
- package/drawer/Drawer.js +1 -1
- package/drawer/Drawer.mjs +7 -6
- package/drawer/DrawerContent.js +1 -1
- package/drawer/DrawerContent.mjs +1 -0
- package/drawer/DrawerItem.js +1 -1
- package/drawer/DrawerItem.mjs +5 -4
- package/drawer/DrawerNavigation.js +1 -1
- package/drawer/DrawerNavigation.mjs +1 -0
- package/drawer/context/DrawerContext.js +1 -1
- package/drawer/context/DrawerContext.mjs +3 -2
- package/expansionpanel/ExpansionPanel.js +1 -1
- package/expansionpanel/ExpansionPanel.mjs +22 -21
- package/expansionpanel/ExpansionPanelContent.js +1 -1
- package/expansionpanel/ExpansionPanelContent.mjs +1 -0
- package/gridlayout/GridLayout.js +1 -1
- package/gridlayout/GridLayout.mjs +10 -9
- package/gridlayout/GridLayoutItem.js +1 -1
- package/gridlayout/GridLayoutItem.mjs +1 -0
- package/index.d.mts +16 -92
- package/index.d.ts +16 -92
- package/index.js +1 -2
- package/menu/components/Menu.js +1 -1
- package/menu/components/Menu.mjs +1 -0
- package/menu/components/MenuItem.js +1 -1
- package/menu/components/MenuItem.mjs +3 -2
- package/menu/components/MenuItemArrow.js +1 -1
- package/menu/components/MenuItemArrow.mjs +1 -0
- package/menu/components/MenuItemInternal.js +1 -1
- package/menu/components/MenuItemInternal.mjs +18 -24
- package/menu/components/MenuItemLink.js +1 -1
- package/menu/components/MenuItemLink.mjs +1 -0
- package/menu/consts.js +1 -1
- package/menu/consts.mjs +1 -0
- package/menu/utils/DirectionHolder.js +1 -1
- package/menu/utils/DirectionHolder.mjs +1 -0
- package/menu/utils/MouseOverHandler.js +1 -1
- package/menu/utils/MouseOverHandler.mjs +1 -0
- package/menu/utils/getNewItemIdUponKeyboardNavigation.js +1 -1
- package/menu/utils/getNewItemIdUponKeyboardNavigation.mjs +1 -0
- package/menu/utils/hoverDelay.js +1 -1
- package/menu/utils/hoverDelay.mjs +1 -0
- package/menu/utils/itemsIdsUtils.js +1 -1
- package/menu/utils/itemsIdsUtils.mjs +1 -0
- package/menu/utils/misc.js +1 -1
- package/menu/utils/misc.mjs +12 -11
- package/menu/utils/prepareInputItemsForInternalWork.js +1 -1
- package/menu/utils/prepareInputItemsForInternalWork.mjs +4 -3
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +3 -2
- package/package.json +8 -8
- package/panelbar/PanelBar.js +1 -1
- package/panelbar/PanelBar.mjs +34 -33
- package/panelbar/PanelBarItem.js +1 -1
- package/panelbar/PanelBarItem.mjs +1 -0
- package/panelbar/interfaces/NavigationAction.js +1 -1
- package/panelbar/interfaces/NavigationAction.mjs +1 -0
- package/panelbar/util.js +1 -1
- package/panelbar/util.mjs +19 -18
- package/splitter/Splitter.js +1 -1
- package/splitter/Splitter.mjs +1 -0
- package/splitter/SplitterBar.js +1 -1
- package/splitter/SplitterBar.mjs +1 -0
- package/splitter/SplitterPane.js +1 -1
- package/splitter/SplitterPane.mjs +10 -9
- package/splitter/messages/index.js +1 -1
- package/splitter/messages/index.mjs +3 -2
- package/stacklayout/StackLayout.js +1 -1
- package/stacklayout/StackLayout.mjs +4 -3
- package/stepper/Step.js +1 -1
- package/stepper/Step.mjs +16 -15
- package/stepper/Stepper.js +1 -1
- package/stepper/Stepper.mjs +1 -0
- package/stepper/contants.js +1 -1
- package/stepper/contants.mjs +1 -0
- package/stepper/context/StepperContext.js +1 -1
- package/stepper/context/StepperContext.mjs +1 -0
- package/stepper/messages/index.js +1 -1
- package/stepper/messages/index.mjs +1 -0
- package/tabstrip/TabStrip.js +1 -1
- package/tabstrip/TabStrip.mjs +79 -110
- package/tabstrip/TabStripContent.js +1 -1
- package/tabstrip/TabStripContent.mjs +1 -0
- package/tabstrip/TabStripNavigation.js +1 -1
- package/tabstrip/TabStripNavigation.mjs +117 -110
- package/tabstrip/TabStripNavigationItem.js +1 -1
- package/tabstrip/TabStripNavigationItem.mjs +8 -7
- package/tabstrip/TabStripTab.js +1 -1
- package/tabstrip/TabStripTab.mjs +5 -4
- package/tabstrip/messages/index.js +1 -1
- package/tabstrip/messages/index.mjs +1 -0
- package/tilelayout/InternalTile.js +1 -1
- package/tilelayout/InternalTile.mjs +1 -0
- package/tilelayout/ResizeHandlers.js +1 -1
- package/tilelayout/ResizeHandlers.mjs +11 -10
- package/tilelayout/TileLayout.js +1 -1
- package/tilelayout/TileLayout.mjs +1 -0
- package/timeline/Timeline.js +1 -1
- package/timeline/Timeline.mjs +18 -17
- package/timeline/TimelineCard.js +1 -1
- package/timeline/TimelineCard.mjs +5 -4
- package/timeline/TimelineHorizontal.js +1 -1
- package/timeline/TimelineHorizontal.mjs +1 -0
- package/timeline/TimelineVertical.js +1 -1
- package/timeline/TimelineVertical.mjs +1 -0
- package/timeline/utils.js +1 -1
- package/timeline/utils.mjs +7 -6
package/tabstrip/TabStrip.mjs
CHANGED
|
@@ -5,39 +5,28 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const e = o.scrollLeft, t = o.clientWidth, n = o.scrollWidth, s = o.scrollTop, a = o.scrollHeight, d = o.clientHeight;
|
|
21
|
-
let h = null;
|
|
22
|
-
const S = i ? n > t : a > d, f = this.props.dir === "rtl";
|
|
23
|
-
S ? i ? e + t === n || (f && t - e) === n ? h = "end" : e === 0 || f && -e === 0 ? h = "start" : e > 0 && e + t < n || -e > 0 && t - e < n ? h = "middle" : h = null : a - (s + d) === 0 ? h = "bottom" : s === 0 ? h = "top" : s > 0 && a - (s + d) > 0 ? h = "middle" : h = null : h = null, this.setState({ containerScrollPosition: h });
|
|
24
|
-
}, this.handleResize = () => {
|
|
25
|
-
this.onScroll();
|
|
26
|
-
}, this.onSelect = (i) => {
|
|
27
|
-
this.props.selected !== i && this.props.onSelect && this.props.onSelect({
|
|
28
|
-
selected: i
|
|
8
|
+
"use client";
|
|
9
|
+
import * as a from "react";
|
|
10
|
+
import l from "prop-types";
|
|
11
|
+
import { TabStripNavigation as h } from "./TabStripNavigation.mjs";
|
|
12
|
+
import { TabStripContent as b } from "./TabStripContent.mjs";
|
|
13
|
+
import { validatePackage as u, shouldShowValidationUI as g, Navigation as S, classNames as y, WatermarkOverlay as x } from "@progress/kendo-react-common";
|
|
14
|
+
import { packageMetadata as m } from "../package-metadata.mjs";
|
|
15
|
+
const d = class d extends a.Component {
|
|
16
|
+
constructor(s) {
|
|
17
|
+
super(s), this.tabStripRef = a.createRef(), this.showLicenseWatermark = !1, this.onSelect = (n) => {
|
|
18
|
+
this.props.selected !== n && this.props.onSelect && this.props.onSelect({
|
|
19
|
+
selected: n
|
|
29
20
|
});
|
|
30
|
-
}, this.onKeyDown = (
|
|
31
|
-
this.navigation
|
|
32
|
-
}, this.onKeyboardSelect = (
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
}, this.renderContent = (
|
|
36
|
-
const { selected:
|
|
37
|
-
return
|
|
38
|
-
},
|
|
39
|
-
containerScrollPosition: null
|
|
40
|
-
}, this.itemsNavRef = c.createRef();
|
|
21
|
+
}, this.onKeyDown = (n) => {
|
|
22
|
+
this.navigation.triggerKeyboardEvent(n);
|
|
23
|
+
}, this.onKeyboardSelect = (n) => {
|
|
24
|
+
const i = this.children();
|
|
25
|
+
i && i[n].props.disabled || this.onSelect(n);
|
|
26
|
+
}, this.renderContent = (n) => {
|
|
27
|
+
const { selected: i, children: t, tabContentStyle: e } = n, r = a.Children.count(t);
|
|
28
|
+
return i < r && i > -1 ? /* @__PURE__ */ a.createElement(b, { index: i, ...n, style: e }) : null;
|
|
29
|
+
}, u(m), this.showLicenseWatermark = g(m);
|
|
41
30
|
}
|
|
42
31
|
get contentPanelId() {
|
|
43
32
|
return this.props.id + "-content-panel-id";
|
|
@@ -47,9 +36,9 @@ const p = class p extends c.Component {
|
|
|
47
36
|
}
|
|
48
37
|
/** @hidden */
|
|
49
38
|
componentDidMount() {
|
|
50
|
-
var
|
|
51
|
-
const
|
|
52
|
-
|
|
39
|
+
var i;
|
|
40
|
+
const s = this.tabStripRef.current, n = s && getComputedStyle(s).direction === "rtl" || !1;
|
|
41
|
+
s && (this.navigation = new S({
|
|
53
42
|
tabIndex: 0,
|
|
54
43
|
root: this.tabStripRef,
|
|
55
44
|
rovingTabIndex: !0,
|
|
@@ -57,126 +46,106 @@ const p = class p extends c.Component {
|
|
|
57
46
|
selectors: [".k-tabstrip .k-tabstrip-item"],
|
|
58
47
|
keyboardEvents: {
|
|
59
48
|
keydown: {
|
|
60
|
-
ArrowLeft: (
|
|
61
|
-
|
|
62
|
-
const
|
|
63
|
-
|
|
49
|
+
ArrowLeft: (t, e, r) => {
|
|
50
|
+
r.preventDefault();
|
|
51
|
+
const o = e.elements.indexOf(t), c = o !== 0 ? o - 1 : e.elements.length - 1, p = o !== e.elements.length - 1 ? o + 1 : 0;
|
|
52
|
+
n ? (e.focusNext(t), this.onKeyboardSelect(p)) : (e.focusPrevious(t), this.onKeyboardSelect(c));
|
|
64
53
|
},
|
|
65
|
-
ArrowRight: (
|
|
66
|
-
|
|
67
|
-
const
|
|
68
|
-
|
|
54
|
+
ArrowRight: (t, e, r) => {
|
|
55
|
+
r.preventDefault();
|
|
56
|
+
const o = e.elements.indexOf(t), c = o !== 0 ? o - 1 : e.elements.length - 1, p = o !== e.elements.length - 1 ? o + 1 : 0;
|
|
57
|
+
n ? (e.focusPrevious(t), this.onKeyboardSelect(c)) : (e.focusNext(t), this.onKeyboardSelect(p));
|
|
69
58
|
},
|
|
70
|
-
ArrowDown: (
|
|
71
|
-
|
|
72
|
-
const
|
|
73
|
-
|
|
59
|
+
ArrowDown: (t, e, r) => {
|
|
60
|
+
r.preventDefault();
|
|
61
|
+
const o = e.elements.indexOf(t), c = o !== e.elements.length - 1 ? o + 1 : 0;
|
|
62
|
+
e.focusNext(t), this.onKeyboardSelect(c);
|
|
74
63
|
},
|
|
75
|
-
ArrowUp: (
|
|
76
|
-
|
|
77
|
-
const
|
|
78
|
-
|
|
64
|
+
ArrowUp: (t, e, r) => {
|
|
65
|
+
r.preventDefault();
|
|
66
|
+
const o = e.elements.indexOf(t), c = o !== 0 ? o - 1 : e.elements.length - 1;
|
|
67
|
+
e.focusPrevious(t), this.onKeyboardSelect(c);
|
|
79
68
|
},
|
|
80
|
-
Home: (
|
|
81
|
-
|
|
69
|
+
Home: (t, e, r) => {
|
|
70
|
+
r.preventDefault(), e.focusElement(e.first, t), this.onKeyboardSelect(0);
|
|
82
71
|
},
|
|
83
|
-
End: (
|
|
84
|
-
|
|
72
|
+
End: (t, e, r) => {
|
|
73
|
+
r.preventDefault(), e.focusElement(e.last, t), this.onKeyboardSelect(e.elements.length - 1);
|
|
85
74
|
}
|
|
86
75
|
}
|
|
87
76
|
}
|
|
88
|
-
}), (
|
|
77
|
+
}), (i = this.navigation) == null || i.initializeRovingTab(this.props.selected));
|
|
89
78
|
}
|
|
90
79
|
/** @hidden */
|
|
91
80
|
componentWillUnmount() {
|
|
92
|
-
var
|
|
93
|
-
(
|
|
94
|
-
}
|
|
95
|
-
horizontalScroll() {
|
|
96
|
-
return /top|bottom/.test(this.props.tabPosition || "top");
|
|
81
|
+
var s;
|
|
82
|
+
(s = this.navigation) == null || s.removeFocusListener();
|
|
97
83
|
}
|
|
98
84
|
/**
|
|
99
85
|
* @hidden
|
|
100
86
|
*/
|
|
101
87
|
render() {
|
|
102
|
-
const
|
|
103
|
-
itemsNavRef: this.itemsNavRef,
|
|
88
|
+
const s = {
|
|
104
89
|
...this.props,
|
|
105
90
|
children: this.children(),
|
|
106
91
|
contentPanelId: this.contentPanelId,
|
|
107
92
|
renderAllContent: this.props.renderAllContent,
|
|
108
93
|
navItemId: this.navItemId,
|
|
109
94
|
onKeyDown: this.onKeyDown,
|
|
110
|
-
onSelect: this.onSelect
|
|
111
|
-
|
|
112
|
-
containerScrollPosition: this.state.containerScrollPosition,
|
|
113
|
-
scrollButtons: this.props.scrollButtons === "hidden" || this.state.containerScrollPosition === null && this.props.scrollButtons === "auto" ? "hidden" : "visible"
|
|
114
|
-
}, { scrollable: i, scrollButtons: o, size: e, tabPosition: t, tabIndex: n } = l, s = t === "bottom", a = x(
|
|
95
|
+
onSelect: this.onSelect
|
|
96
|
+
}, { tabPosition: n, tabIndex: i } = s, t = n === "bottom", e = y(
|
|
115
97
|
"k-tabstrip k-pos-relative",
|
|
116
98
|
{
|
|
117
|
-
|
|
118
|
-
"k-tabstrip-
|
|
119
|
-
"k-tabstrip-
|
|
120
|
-
"k-tabstrip-
|
|
121
|
-
"k-tabstrip-
|
|
122
|
-
"k-tabstrip-scrollable": i,
|
|
123
|
-
"k-tabstrip-scrollable-start k-tabstrip-scrollable-end": i && o === "visible",
|
|
124
|
-
"k-tabstrip-scrollable-start": i && (o === "auto" || !o) && (this.state.containerScrollPosition === "end" || this.state.containerScrollPosition === "middle"),
|
|
125
|
-
"k-tabstrip-scrollable-end": i && o === "auto" && (this.state.containerScrollPosition === "start" || this.state.containerScrollPosition === "middle")
|
|
99
|
+
"k-tabstrip-left": n === "left",
|
|
100
|
+
"k-tabstrip-right": n === "right",
|
|
101
|
+
"k-tabstrip-bottom": n === "bottom",
|
|
102
|
+
"k-tabstrip-top": n === "top",
|
|
103
|
+
"k-tabstrip-scrollable": this.props.scrollable
|
|
126
104
|
},
|
|
127
105
|
this.props.className
|
|
128
106
|
);
|
|
129
|
-
return /* @__PURE__ */
|
|
107
|
+
return /* @__PURE__ */ a.createElement(
|
|
130
108
|
"div",
|
|
131
109
|
{
|
|
132
110
|
id: this.props.id,
|
|
133
111
|
ref: this.tabStripRef,
|
|
134
112
|
dir: this.props.dir,
|
|
135
|
-
className:
|
|
136
|
-
style: this.props.style
|
|
137
|
-
onScroll: this.onScroll,
|
|
138
|
-
onResize: this.handleResize
|
|
113
|
+
className: e,
|
|
114
|
+
style: this.props.style
|
|
139
115
|
},
|
|
140
|
-
!
|
|
141
|
-
this.renderContent(
|
|
142
|
-
|
|
143
|
-
this.showLicenseWatermark && /* @__PURE__ */
|
|
116
|
+
!t && /* @__PURE__ */ a.createElement(h, { ...s, tabIndex: i }),
|
|
117
|
+
this.renderContent(s),
|
|
118
|
+
t && /* @__PURE__ */ a.createElement(h, { ...s, tabIndex: i }),
|
|
119
|
+
this.showLicenseWatermark && /* @__PURE__ */ a.createElement(x, null)
|
|
144
120
|
);
|
|
145
121
|
}
|
|
146
122
|
children() {
|
|
147
|
-
return
|
|
123
|
+
return a.Children.toArray(this.props.children).filter((s) => s);
|
|
148
124
|
}
|
|
149
125
|
};
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
renderAllContent: r.bool,
|
|
164
|
-
size: r.oneOf(["small", "medium", "large", null]),
|
|
165
|
-
scrollButtons: r.oneOf(["auto", "visible", "hidden"]),
|
|
166
|
-
scrollButtonsPosition: r.oneOf(["split", "start", "end", "around", "before", "after"])
|
|
167
|
-
}, p.defaultProps = {
|
|
126
|
+
d.propTypes = {
|
|
127
|
+
animation: l.bool,
|
|
128
|
+
children: l.node,
|
|
129
|
+
onSelect: l.func,
|
|
130
|
+
selected: l.number,
|
|
131
|
+
style: l.object,
|
|
132
|
+
tabContentStyle: l.object,
|
|
133
|
+
tabPosition: l.string,
|
|
134
|
+
tabAlignment: l.string,
|
|
135
|
+
tabIndex: l.number,
|
|
136
|
+
className: l.string,
|
|
137
|
+
dir: l.string
|
|
138
|
+
}, d.defaultProps = {
|
|
168
139
|
animation: !0,
|
|
169
140
|
tabPosition: "top",
|
|
170
141
|
tabAlignment: "start",
|
|
171
142
|
keepTabsMounted: !1,
|
|
172
143
|
buttonScrollSpeed: 100,
|
|
144
|
+
scrollButtonsPosition: "around",
|
|
173
145
|
mouseScrollSpeed: 10,
|
|
174
|
-
scrollButtons: "auto",
|
|
175
|
-
scrollButtonsPosition: "split",
|
|
176
|
-
size: "medium",
|
|
177
146
|
renderAllContent: !1
|
|
178
147
|
};
|
|
179
|
-
let
|
|
148
|
+
let f = d;
|
|
180
149
|
export {
|
|
181
|
-
|
|
150
|
+
f as TabStrip
|
|
182
151
|
};
|
|
@@ -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 y=require("react"),i=require("prop-types"),h=require("@progress/kendo-react-animation"),u=require("@progress/kendo-react-common");function b(a){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const t in a)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(a,t);Object.defineProperty(e,t,n.get?n:{enumerable:!0,get:()=>a[t]})}}return e.default=a,Object.freeze(e)}const r=b(y),c=class c extends r.Component{constructor(){super(...arguments),this.contentId=this.props.contentPanelId,this.childFactory=e=>r.cloneElement(e,{...e.props,in:e.props.children.props.id===String(this.contentId+this.props.selected)})}render(){const{children:e,selected:t,contentPanelId:n,keepTabsMounted:s,navItemId:o,renderAllContent:l}=this.props,d=e&&typeof t=="number"&&r.Children.toArray(e)[t],m=u.classNames("k-tabstrip-content","k-active",d&&d.props.contentClassName);return l?this.renderAllContent(e):r.createElement("div",{className:m,style:this.props.style,id:n,role:"tabpanel","aria-hidden":s,"aria-labelledby":`${o}-${(t==null?void 0:t.toString())||""}`,tabIndex:0},this.renderContent(e))}renderContent(e){return this.props.keepTabsMounted?r.Children.map(this.props.children,(t,n)=>this.renderChild(t,n)):this.renderChild(r.Children.toArray(e)[this.props.selected],this.props.selected)}renderAllContent(e){return r.Children.map(e,(t,n)=>{const s=t,o=n===this.props.selected,l=u.classNames("k-tabstrip-content",{"k-active":o},s.props.contentClassName);return r.createElement("div",{className:l,style:this.props.style,id:`${this.props.contentPanelId}-${n}`,role:"tabpanel","aria-hidden":!o,hidden:!o,"aria-labelledby":`${this.props.navItemId}-${n}`},this.props.animation?r.createElement(h.Fade,{key:`${n}-${o}`,appear:!0,enter:!0,exit:!1},s.props.children):s.props.children)})}renderChild(e,t){const n=t===this.props.selected,s={style:{display:n?void 0:"none"}},o={position:"initial",display:n?void 0:"none"};return e.props.disabled?null:this.props.animation?r.createElement(h.Fade,{appear:!0,exit:this.props.keepTabsMounted,style:o,childFactory:this.props.keepTabsMounted?this.childFactory:void 0},r.createElement("div",{...s,id:String(this.contentId+t),key:t},e.props.children)):r.createElement("div",{...s,key:t},e.props.children)}};c.propTypes={animation:i.bool,children:i.oneOfType([i.element,i.arrayOf(i.element)]),selected:i.number,style:i.object};let p=c;exports.TabStripContent=p;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),i=require("prop-types"),h=require("@progress/kendo-react-animation"),u=require("@progress/kendo-react-common");function b(a){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const t in a)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(a,t);Object.defineProperty(e,t,n.get?n:{enumerable:!0,get:()=>a[t]})}}return e.default=a,Object.freeze(e)}const r=b(y),c=class c extends r.Component{constructor(){super(...arguments),this.contentId=this.props.contentPanelId,this.childFactory=e=>r.cloneElement(e,{...e.props,in:e.props.children.props.id===String(this.contentId+this.props.selected)})}render(){const{children:e,selected:t,contentPanelId:n,keepTabsMounted:s,navItemId:o,renderAllContent:l}=this.props,d=e&&typeof t=="number"&&r.Children.toArray(e)[t],m=u.classNames("k-tabstrip-content","k-active",d&&d.props.contentClassName);return l?this.renderAllContent(e):r.createElement("div",{className:m,style:this.props.style,id:n,role:"tabpanel","aria-hidden":s,"aria-labelledby":`${o}-${(t==null?void 0:t.toString())||""}`,tabIndex:0},this.renderContent(e))}renderContent(e){return this.props.keepTabsMounted?r.Children.map(this.props.children,(t,n)=>this.renderChild(t,n)):this.renderChild(r.Children.toArray(e)[this.props.selected],this.props.selected)}renderAllContent(e){return r.Children.map(e,(t,n)=>{const s=t,o=n===this.props.selected,l=u.classNames("k-tabstrip-content",{"k-active":o},s.props.contentClassName);return r.createElement("div",{className:l,style:this.props.style,id:`${this.props.contentPanelId}-${n}`,role:"tabpanel","aria-hidden":!o,hidden:!o,"aria-labelledby":`${this.props.navItemId}-${n}`},this.props.animation?r.createElement(h.Fade,{key:`${n}-${o}`,appear:!0,enter:!0,exit:!1},s.props.children):s.props.children)})}renderChild(e,t){const n=t===this.props.selected,s={style:{display:n?void 0:"none"}},o={position:"initial",display:n?void 0:"none"};return e.props.disabled?null:this.props.animation?r.createElement(h.Fade,{appear:!0,exit:this.props.keepTabsMounted,style:o,childFactory:this.props.keepTabsMounted?this.childFactory:void 0},r.createElement("div",{...s,id:String(this.contentId+t),key:t},e.props.children)):r.createElement("div",{...s,key:t},e.props.children)}};c.propTypes={animation:i.bool,children:i.oneOfType([i.element,i.arrayOf(i.element)]),selected:i.number,style:i.object};let p=c;exports.TabStripContent=p;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as n from "react";
|
|
9
10
|
import i from "prop-types";
|
|
10
11
|
import { Fade as d } from "@progress/kendo-react-animation";
|
|
@@ -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 L=require("react"),
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("react"),f=require("prop-types"),M=require("./TabStripNavigationItem.js"),N=require("@progress/kendo-react-common"),E=require("@progress/kendo-react-buttons"),m=require("@progress/kendo-svg-icons"),y=require("@progress/kendo-react-intl"),v=require("./messages/index.js");function z(h){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(h){for(const t in h)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(h,t);Object.defineProperty(s,t,r.get?r:{enumerable:!0,get:()=>h[t]})}}return s.default=h,Object.freeze(s)}const a=z(L),O=h=>Array.apply(null,Array(h)),W=h=>h.preventDefault(),S="smooth",p="prev",g="next",k=class k extends a.Component{constructor(s){super(s),this.itemsNavRef=a.createRef(),this.isRtl=()=>this.props.dir==="rtl",this.onWheel=t=>{t.stopPropagation();const r=t.deltaY<0?p:g;this.setNewScrollPosition(r,t)},this.arrowClickPrev=t=>{this.handleArrowClick(p,t)},this.arrowClickNext=t=>{this.handleArrowClick(g,t)},this.handleArrowClick=(t,r)=>{this.setNewScrollPosition(t,r)},this.setNewScrollPosition=(t,r)=>{const e=this.itemsNavRef.current;if(!e)return;const c=this.horizontalScroll(),n=c?e.scrollWidth-e.offsetWidth:e.scrollHeight-e.offsetHeight,l=(r.type==="click"?this.props.buttonScrollSpeed:this.props.mouseScrollSpeed)||0;let o=c?e.scrollLeft:e.scrollTop,i=c?e.scrollWidth-e.scrollLeft:e.scrollHeight-e.scrollTop,b=e.scrollWidth-e.scrollLeft*-1;this.isRtl()&&this.horizontalScroll()?(t===p&&o<0&&(o+=l,b+=l),t===g&&o<n&&(o-=l,b-=l),o=Math.min(0,Math.min(n,o))):(t===p&&o>0&&(o-=l,i+=l),t===g&&o<n&&(o+=l,i-=l),o=Math.max(0,Math.min(n,o)));const d=o===0,T=r.type==="click"?S:void 0;if(c){const w=this.isRtl()?Math.round(b)<=e.clientWidth||Math.floor(b)<=e.clientWidth:Math.round(i)<=e.clientWidth||Math.floor(i)<=e.clientWidth;this.setState({disabledPrev:d,disabledNext:w}),e.scrollTo({left:o,behavior:T})}else this.setState({disabledPrev:d,disabledNext:Math.round(i)<=e.clientHeight||Math.floor(i)<=e.clientHeight}),e.scrollTo({top:o,behavior:T})},this.renderArrow=(t,r)=>{const e=this.horizontalScroll(),c=y.provideLocalizationService(this),n={prev:{arrowTab:"k-tabstrip-prev",fontIcon:e?this.isRtl()?"caret-alt-right":"caret-alt-left":"caret-alt-up",svgIcon:e?this.isRtl()?m.caretAltRightIcon:m.caretAltLeftIcon:m.caretAltUpIcon,title:c.toLanguageString(v.prevArrowTitle,v.messages[v.prevArrowTitle])},next:{arrowTab:"k-tabstrip-next",fontIcon:e?this.isRtl()?"caret-alt-left":"caret-alt-right":"caret-alt-down",svgIcon:e?this.isRtl()?m.caretAltLeftIcon:m.caretAltRightIcon:m.caretAltDownIcon,title:c.toLanguageString(v.nextArrowTitle,v.messages[v.nextArrowTitle])}},l=(t===p?this.props.prevButton:this.props.nextButton)||E.Button,o=t===p?this.arrowClickPrev:this.arrowClickNext;return a.createElement(l,{disabled:r,className:`${n[t].arrowTab}`,onClick:o,icon:n[t].fontIcon,svgIcon:n[t].svgIcon,onMouseDown:W,tabIndex:-1,fillMode:"flat",title:n[t].title})},this.state={disabledPrev:this.props.selected===0,disabledNext:this.props.selected===a.Children.count(this.props.children)-1}}componentDidMount(){this.props.scrollable&&this.scrollToSelected()}componentDidUpdate(s){const{scrollable:t,selected:r}=this.props;t&&s.selected!==r&&(this.scrollToSelected(),this.setState({disabledPrev:r===0,disabledNext:r===a.Children.count(this.props.children)-1}))}render(){const{selected:s,tabPosition:t,tabAlignment:r,children:e,onSelect:c,onKeyDown:n,navItemId:l,contentPanelId:o,renderAllContent:i,scrollable:b,scrollButtonsPosition:d}=this.props,T=a.Children.count(e),w=a.Children.toArray(e);let I;e&&(I=O(T).map((D,u,x)=>{const C={active:s===u,disabled:w[u].props.disabled,index:u,title:w[u].props.title,first:u===0,last:u===x.length-1,contentPanelId:o,renderAllContent:i,id:l,onSelect:c};return a.createElement(M.TabStripNavigationItem,{key:u,...C})}));const R=N.classNames("k-tabstrip-items-wrapper",{"k-hstack":t==="top"||t==="bottom","k-vstack":t==="left"||t==="right"}),A=N.classNames("k-tabstrip-items","k-reset",`k-tabstrip-items-${r}`);return a.createElement("div",{className:R},b?a.createElement(a.Fragment,null,(d==="around"||d==="before")&&this.renderArrow(p,this.state.disabledPrev),d==="before"&&this.renderArrow(g,this.state.disabledNext),a.createElement("ul",{ref:this.itemsNavRef,className:A,role:"tablist",tabIndex:this.props.tabIndex,onKeyDown:n,onWheel:this.onWheel,"aria-orientation":t==="left"||t==="right"?"vertical":void 0},I),d==="after"&&this.renderArrow(p,this.state.disabledPrev),(d==="around"||d==="after")&&this.renderArrow(g,this.state.disabledNext)):a.createElement("ul",{className:A,role:"tablist",tabIndex:this.props.tabIndex,onKeyDown:n},I))}scrollToSelected(){const s=this.itemsNavRef.current,t=s&&s.children[this.props.selected||0];if(t instanceof HTMLElement&&s instanceof HTMLElement){const r=this.horizontalScroll(),e=r?s.offsetWidth:s.offsetHeight,c=r?t.offsetWidth:t.offsetHeight,n=r?"left":"top";let l=r?s.scrollLeft:s.scrollTop,o=0;if(this.isRtl()){const i=t.offsetLeft;l=l*-1,i<0?(o=i-c+s.offsetLeft,s.scrollTo({[n]:o,behavior:S})):i+c>e-l&&(o=l+i-c,s.scrollTo({[n]:o,behavior:S}))}else{const i=r?t.offsetLeft-s.offsetLeft:t.offsetTop-s.offsetTop;l+e<i+c?(o=i+c-e,s.scrollTo({[n]:o,behavior:S})):l>i&&(o=i,s.scrollTo({[n]:o,behavior:S}))}}}horizontalScroll(){return/top|bottom/.test(this.props.tabPosition||"top")}};k.propTypes={children:f.oneOfType([f.element,f.arrayOf(f.element)]),onSelect:f.func,onKeyDown:f.func,selected:f.number,tabIndex:f.number};let P=k;exports.TabStripNavigation=P;
|
|
@@ -5,63 +5,78 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
8
|
+
"use client";
|
|
9
|
+
import * as a from "react";
|
|
10
|
+
import f from "prop-types";
|
|
11
|
+
import { TabStripNavigationItem as W } from "./TabStripNavigationItem.mjs";
|
|
12
|
+
import { classNames as I } from "@progress/kendo-react-common";
|
|
13
|
+
import { Button as z } from "@progress/kendo-react-buttons";
|
|
14
|
+
import { caretAltRightIcon as k, caretAltLeftIcon as A, caretAltUpIcon as D, caretAltDownIcon as H } from "@progress/kendo-svg-icons";
|
|
14
15
|
import { provideLocalizationService as y } from "@progress/kendo-react-intl";
|
|
15
|
-
import { prevArrowTitle as
|
|
16
|
-
const
|
|
17
|
-
constructor() {
|
|
18
|
-
super(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
import { prevArrowTitle as N, messages as x, nextArrowTitle as C } from "./messages/index.mjs";
|
|
17
|
+
const B = (w) => Array.apply(null, Array(w)), O = (w) => w.preventDefault(), u = "smooth", d = "prev", b = "next", T = class T extends a.Component {
|
|
18
|
+
constructor(s) {
|
|
19
|
+
super(s), this.itemsNavRef = a.createRef(), this.isRtl = () => this.props.dir === "rtl", this.onWheel = (t) => {
|
|
20
|
+
t.stopPropagation();
|
|
21
|
+
const l = t.deltaY < 0 ? d : b;
|
|
22
|
+
this.setNewScrollPosition(l, t);
|
|
23
|
+
}, this.arrowClickPrev = (t) => {
|
|
24
|
+
this.handleArrowClick(d, t);
|
|
23
25
|
}, this.arrowClickNext = (t) => {
|
|
24
|
-
this.handleArrowClick(
|
|
25
|
-
}, this.handleArrowClick = (t,
|
|
26
|
-
this.setNewScrollPosition(t,
|
|
27
|
-
}, this.setNewScrollPosition = (t,
|
|
28
|
-
const
|
|
29
|
-
if (!
|
|
26
|
+
this.handleArrowClick(b, t);
|
|
27
|
+
}, this.handleArrowClick = (t, l) => {
|
|
28
|
+
this.setNewScrollPosition(t, l);
|
|
29
|
+
}, this.setNewScrollPosition = (t, l) => {
|
|
30
|
+
const e = this.itemsNavRef.current;
|
|
31
|
+
if (!e)
|
|
30
32
|
return;
|
|
31
|
-
const
|
|
32
|
-
let e =
|
|
33
|
-
this.isRtl() && this.horizontalScroll() ? (t ===
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
const c = this.horizontalScroll(), n = c ? e.scrollWidth - e.offsetWidth : e.scrollHeight - e.offsetHeight, r = (l.type === "click" ? this.props.buttonScrollSpeed : this.props.mouseScrollSpeed) || 0;
|
|
34
|
+
let o = c ? e.scrollLeft : e.scrollTop, i = c ? e.scrollWidth - e.scrollLeft : e.scrollHeight - e.scrollTop, m = e.scrollWidth - e.scrollLeft * -1;
|
|
35
|
+
this.isRtl() && this.horizontalScroll() ? (t === d && o < 0 && (o += r, m += r), t === b && o < n && (o -= r, m -= r), o = Math.min(0, Math.min(n, o))) : (t === d && o > 0 && (o -= r, i += r), t === b && o < n && (o += r, i -= r), o = Math.max(0, Math.min(n, o)));
|
|
36
|
+
const h = o === 0, v = l.type === "click" ? u : void 0;
|
|
37
|
+
if (c) {
|
|
38
|
+
const S = this.isRtl() ? Math.round(m) <= e.clientWidth || Math.floor(m) <= e.clientWidth : Math.round(i) <= e.clientWidth || Math.floor(i) <= e.clientWidth;
|
|
39
|
+
this.setState({
|
|
40
|
+
disabledPrev: h,
|
|
41
|
+
disabledNext: S
|
|
42
|
+
}), e.scrollTo({ left: o, behavior: v });
|
|
43
|
+
} else
|
|
44
|
+
this.setState({
|
|
45
|
+
disabledPrev: h,
|
|
46
|
+
disabledNext: Math.round(i) <= e.clientHeight || Math.floor(i) <= e.clientHeight
|
|
47
|
+
}), e.scrollTo({ top: o, behavior: v });
|
|
48
|
+
}, this.renderArrow = (t, l) => {
|
|
49
|
+
const e = this.horizontalScroll(), c = y(this), n = {
|
|
38
50
|
prev: {
|
|
39
51
|
arrowTab: "k-tabstrip-prev",
|
|
40
|
-
fontIcon:
|
|
41
|
-
svgIcon:
|
|
42
|
-
title:
|
|
52
|
+
fontIcon: e ? this.isRtl() ? "caret-alt-right" : "caret-alt-left" : "caret-alt-up",
|
|
53
|
+
svgIcon: e ? this.isRtl() ? k : A : D,
|
|
54
|
+
title: c.toLanguageString(N, x[N])
|
|
43
55
|
},
|
|
44
56
|
next: {
|
|
45
57
|
arrowTab: "k-tabstrip-next",
|
|
46
|
-
fontIcon:
|
|
47
|
-
svgIcon:
|
|
48
|
-
title:
|
|
58
|
+
fontIcon: e ? this.isRtl() ? "caret-alt-left" : "caret-alt-right" : "caret-alt-down",
|
|
59
|
+
svgIcon: e ? this.isRtl() ? A : k : H,
|
|
60
|
+
title: c.toLanguageString(C, x[C])
|
|
49
61
|
}
|
|
50
|
-
},
|
|
51
|
-
return /* @__PURE__ */
|
|
52
|
-
|
|
62
|
+
}, r = (t === d ? this.props.prevButton : this.props.nextButton) || z, o = t === d ? this.arrowClickPrev : this.arrowClickNext;
|
|
63
|
+
return /* @__PURE__ */ a.createElement(
|
|
64
|
+
r,
|
|
53
65
|
{
|
|
54
|
-
disabled:
|
|
55
|
-
className:
|
|
56
|
-
onClick:
|
|
57
|
-
icon:
|
|
58
|
-
svgIcon:
|
|
59
|
-
|
|
66
|
+
disabled: l,
|
|
67
|
+
className: `${n[t].arrowTab}`,
|
|
68
|
+
onClick: o,
|
|
69
|
+
icon: n[t].fontIcon,
|
|
70
|
+
svgIcon: n[t].svgIcon,
|
|
71
|
+
onMouseDown: O,
|
|
60
72
|
tabIndex: -1,
|
|
61
73
|
fillMode: "flat",
|
|
62
|
-
title:
|
|
74
|
+
title: n[t].title
|
|
63
75
|
}
|
|
64
76
|
);
|
|
77
|
+
}, this.state = {
|
|
78
|
+
disabledPrev: this.props.selected === 0,
|
|
79
|
+
disabledNext: this.props.selected === a.Children.count(this.props.children) - 1
|
|
65
80
|
};
|
|
66
81
|
}
|
|
67
82
|
/**
|
|
@@ -73,77 +88,75 @@ const W = (z) => Array.apply(null, Array(z)), b = "smooth", f = "prev", m = "nex
|
|
|
73
88
|
/**
|
|
74
89
|
* @hidden
|
|
75
90
|
*/
|
|
76
|
-
componentDidUpdate(
|
|
77
|
-
const { scrollable:
|
|
78
|
-
|
|
91
|
+
componentDidUpdate(s) {
|
|
92
|
+
const { scrollable: t, selected: l } = this.props;
|
|
93
|
+
t && s.selected !== l && (this.scrollToSelected(), this.setState({
|
|
94
|
+
disabledPrev: l === 0,
|
|
95
|
+
disabledNext: l === a.Children.count(this.props.children) - 1
|
|
96
|
+
}));
|
|
79
97
|
}
|
|
80
98
|
/**
|
|
81
99
|
* @hidden
|
|
82
100
|
*/
|
|
83
101
|
render() {
|
|
84
102
|
const {
|
|
85
|
-
selected:
|
|
86
|
-
tabPosition:
|
|
87
|
-
tabAlignment:
|
|
88
|
-
children:
|
|
89
|
-
onSelect:
|
|
90
|
-
onKeyDown:
|
|
91
|
-
navItemId:
|
|
92
|
-
contentPanelId:
|
|
93
|
-
renderAllContent:
|
|
94
|
-
scrollable:
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
onSelect: l,
|
|
111
|
-
onScroll: this.onScroll
|
|
103
|
+
selected: s,
|
|
104
|
+
tabPosition: t,
|
|
105
|
+
tabAlignment: l,
|
|
106
|
+
children: e,
|
|
107
|
+
onSelect: c,
|
|
108
|
+
onKeyDown: n,
|
|
109
|
+
navItemId: r,
|
|
110
|
+
contentPanelId: o,
|
|
111
|
+
renderAllContent: i,
|
|
112
|
+
scrollable: m,
|
|
113
|
+
scrollButtonsPosition: h
|
|
114
|
+
} = this.props, v = a.Children.count(e), S = a.Children.toArray(e);
|
|
115
|
+
let g;
|
|
116
|
+
e && (g = B(v).map((U, p, M) => {
|
|
117
|
+
const E = {
|
|
118
|
+
active: s === p,
|
|
119
|
+
disabled: S[p].props.disabled,
|
|
120
|
+
index: p,
|
|
121
|
+
title: S[p].props.title,
|
|
122
|
+
first: p === 0,
|
|
123
|
+
last: p === M.length - 1,
|
|
124
|
+
contentPanelId: o,
|
|
125
|
+
renderAllContent: i,
|
|
126
|
+
id: r,
|
|
127
|
+
onSelect: c
|
|
112
128
|
};
|
|
113
|
-
return /* @__PURE__ */
|
|
129
|
+
return /* @__PURE__ */ a.createElement(W, { key: p, ...E });
|
|
114
130
|
}));
|
|
115
|
-
const
|
|
116
|
-
"k-hstack":
|
|
117
|
-
"k-vstack":
|
|
118
|
-
}),
|
|
119
|
-
|
|
120
|
-
`k-tabstrip-items-${s}`
|
|
121
|
-
);
|
|
122
|
-
return /* @__PURE__ */ h.createElement("div", { className: N }, L ? /* @__PURE__ */ h.createElement(h.Fragment, null, u !== "hidden" && p && ["split", "start", "around", "before"].includes(p) && this.renderArrow(f), u !== "hidden" && (p === "start" || p === "before") && this.renderArrow(m), /* @__PURE__ */ h.createElement(
|
|
131
|
+
const L = I("k-tabstrip-items-wrapper", {
|
|
132
|
+
"k-hstack": t === "top" || t === "bottom",
|
|
133
|
+
"k-vstack": t === "left" || t === "right"
|
|
134
|
+
}), P = I("k-tabstrip-items", "k-reset", `k-tabstrip-items-${l}`);
|
|
135
|
+
return /* @__PURE__ */ a.createElement("div", { className: L }, m ? /* @__PURE__ */ a.createElement(a.Fragment, null, (h === "around" || h === "before") && this.renderArrow(d, this.state.disabledPrev), h === "before" && this.renderArrow(b, this.state.disabledNext), /* @__PURE__ */ a.createElement(
|
|
123
136
|
"ul",
|
|
124
137
|
{
|
|
125
138
|
ref: this.itemsNavRef,
|
|
126
|
-
className:
|
|
139
|
+
className: P,
|
|
127
140
|
role: "tablist",
|
|
128
141
|
tabIndex: this.props.tabIndex,
|
|
129
|
-
onKeyDown:
|
|
130
|
-
|
|
131
|
-
"aria-orientation":
|
|
142
|
+
onKeyDown: n,
|
|
143
|
+
onWheel: this.onWheel,
|
|
144
|
+
"aria-orientation": t === "left" || t === "right" ? "vertical" : void 0
|
|
132
145
|
},
|
|
133
|
-
|
|
134
|
-
),
|
|
146
|
+
g
|
|
147
|
+
), h === "after" && this.renderArrow(d, this.state.disabledPrev), (h === "around" || h === "after") && this.renderArrow(b, this.state.disabledNext)) : /* @__PURE__ */ a.createElement("ul", { className: P, role: "tablist", tabIndex: this.props.tabIndex, onKeyDown: n }, g));
|
|
135
148
|
}
|
|
136
149
|
scrollToSelected() {
|
|
137
|
-
const
|
|
138
|
-
if (
|
|
139
|
-
const
|
|
140
|
-
let
|
|
150
|
+
const s = this.itemsNavRef.current, t = s && s.children[this.props.selected || 0];
|
|
151
|
+
if (t instanceof HTMLElement && s instanceof HTMLElement) {
|
|
152
|
+
const l = this.horizontalScroll(), e = l ? s.offsetWidth : s.offsetHeight, c = l ? t.offsetWidth : t.offsetHeight, n = l ? "left" : "top";
|
|
153
|
+
let r = l ? s.scrollLeft : s.scrollTop, o = 0;
|
|
141
154
|
if (this.isRtl()) {
|
|
142
|
-
const
|
|
143
|
-
|
|
155
|
+
const i = t.offsetLeft;
|
|
156
|
+
r = r * -1, i < 0 ? (o = i - c + s.offsetLeft, s.scrollTo({ [n]: o, behavior: u })) : i + c > e - r && (o = r + i - c, s.scrollTo({ [n]: o, behavior: u }));
|
|
144
157
|
} else {
|
|
145
|
-
const
|
|
146
|
-
|
|
158
|
+
const i = l ? t.offsetLeft - s.offsetLeft : t.offsetTop - s.offsetTop;
|
|
159
|
+
r + e < i + c ? (o = i + c - e, s.scrollTo({ [n]: o, behavior: u })) : r > i && (o = i, s.scrollTo({ [n]: o, behavior: u }));
|
|
147
160
|
}
|
|
148
161
|
}
|
|
149
162
|
}
|
|
@@ -151,20 +164,14 @@ const W = (z) => Array.apply(null, Array(z)), b = "smooth", f = "prev", m = "nex
|
|
|
151
164
|
return /top|bottom/.test(this.props.tabPosition || "top");
|
|
152
165
|
}
|
|
153
166
|
};
|
|
154
|
-
|
|
155
|
-
children:
|
|
156
|
-
onSelect:
|
|
157
|
-
onKeyDown:
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
tabIndex: n.number,
|
|
161
|
-
scrollable: n.bool,
|
|
162
|
-
size: n.oneOf(["small", "medium", "large"]),
|
|
163
|
-
scrollButtons: n.oneOf(["auto", "visible", "hidden"]),
|
|
164
|
-
scrollButtonsPosition: n.oneOf(["split", "start", "end", "around", "before", "after"]),
|
|
165
|
-
containerScrollPosition: n.oneOf(["start", "end", "top", "bottom", "middle", null])
|
|
167
|
+
T.propTypes = {
|
|
168
|
+
children: f.oneOfType([f.element, f.arrayOf(f.element)]),
|
|
169
|
+
onSelect: f.func,
|
|
170
|
+
onKeyDown: f.func,
|
|
171
|
+
selected: f.number,
|
|
172
|
+
tabIndex: f.number
|
|
166
173
|
};
|
|
167
|
-
let
|
|
174
|
+
let R = T;
|
|
168
175
|
export {
|
|
169
|
-
|
|
176
|
+
R as TabStripNavigation
|
|
170
177
|
};
|