@uzum-tech/ui 1.8.2 → 1.9.1
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/dist/index.js +1244 -379
- package/dist/index.prod.js +3 -3
- package/es/_internal/scrollbar/src/Scrollbar.d.ts +119 -17
- package/es/_internal/scrollbar/src/Scrollbar.js +120 -67
- package/es/_internal/scrollbar/src/styles/index.cssr.js +32 -15
- package/es/_internal/scrollbar/styles/common.d.ts +7 -0
- package/es/_internal/scrollbar/styles/common.js +7 -0
- package/es/_internal/scrollbar/styles/light.d.ts +8 -0
- package/es/_internal/scrollbar/styles/light.js +3 -5
- package/es/_internal/select-menu/src/SelectMenu.d.ts +57 -1
- package/es/_internal/select-menu/styles/light.d.ts +8 -0
- package/es/_internal/selection/src/Selection.d.ts +3 -1
- package/es/_internal/selection/src/Selection.js +3 -1
- package/es/_utils/css/index.d.ts +1 -0
- package/es/_utils/css/index.js +1 -0
- package/es/_utils/css/rtl-inset.d.ts +1 -0
- package/es/_utils/css/rtl-inset.js +5 -0
- package/es/_utils/index.d.ts +1 -1
- package/es/_utils/index.js +1 -1
- package/es/auto-complete/src/AutoComplete.d.ts +88 -0
- package/es/auto-complete/styles/light.d.ts +8 -0
- package/es/back-top/src/BackTop.d.ts +1 -1
- package/es/cascader/src/Cascader.d.ts +168 -0
- package/es/cascader/src/CascaderMenu.d.ts +24 -0
- package/es/cascader/src/CascaderOption.d.ts +24 -0
- package/es/cascader/src/CascaderSelectMenu.d.ts +24 -0
- package/es/cascader/src/CascaderSubmenu.d.ts +25 -1
- package/es/cascader/styles/light.d.ts +16 -0
- package/es/chat/index.d.ts +1 -1
- package/es/chat/src/Chat.d.ts +321 -11
- package/es/chat/src/Chat.js +73 -22
- package/es/chat/src/ChatListItems.d.ts +104 -0
- package/es/chat/src/ChatMessages.d.ts +104 -0
- package/es/chat/src/ChatParts/ChatAttachment.js +14 -12
- package/es/chat/src/ChatParts/MainArea.d.ts +1 -0
- package/es/chat/src/ChatParts/MainArea.js +95 -57
- package/es/chat/src/ChatParts/Sidebar.d.ts +920 -0
- package/es/chat/src/ChatParts/Sidebar.js +63 -12
- package/es/chat/src/interface.d.ts +24 -3
- package/es/chat/src/styles/index.cssr.js +13 -2
- package/es/chat/styles/dark.d.ts +8 -0
- package/es/chat/styles/light.d.ts +8 -0
- package/es/components.d.ts +2 -0
- package/es/components.js +2 -0
- package/es/data-table/src/DataTable.d.ts +184 -0
- package/es/data-table/src/HeaderButton/FilterButton.d.ts +40 -0
- package/es/data-table/src/HeaderButton/FilterMenu.d.ts +40 -0
- package/es/data-table/src/TableParts/Body.d.ts +41 -1
- package/es/data-table/src/TableParts/Header.d.ts +40 -0
- package/es/data-table/src/interface.d.ts +72 -0
- package/es/data-table/styles/light.d.ts +24 -0
- package/es/date-picker/src/DatePicker.d.ts +1469 -36
- package/es/date-picker/src/DatePicker.js +54 -29
- package/es/date-picker/src/interface.d.ts +1 -0
- package/es/date-picker/src/panel/date.d.ts +166 -1
- package/es/date-picker/src/panel/daterange.d.ts +167 -2
- package/es/date-picker/src/panel/datetime.d.ts +166 -1
- package/es/date-picker/src/panel/datetimerange.d.ts +167 -2
- package/es/date-picker/src/panel/panelMonth.d.ts +332 -2
- package/es/date-picker/src/panel/panelMonthContent.d.ts +166 -1
- package/es/date-picker/src/panel/panelYear.d.ts +332 -2
- package/es/date-picker/src/panel/panelYearContent.d.ts +166 -1
- package/es/date-picker/src/panel/use-calendar.d.ts +165 -0
- package/es/date-picker/src/panel/use-dual-calendar.d.ts +165 -0
- package/es/date-picker/src/panel/use-panel-common.d.ts +165 -0
- package/es/date-picker/styles/dark.js +3 -1
- package/es/date-picker/styles/light.d.ts +139 -0
- package/es/date-picker/styles/light.js +3 -1
- package/es/descriptions/src/Descriptions.d.ts +30 -0
- package/es/descriptions/src/Descriptions.js +18 -10
- package/es/dialog/src/DialogProvider.d.ts +2 -2
- package/es/drawer/src/Drawer.d.ts +81 -1
- package/es/drawer/src/DrawerBodyWrapper.d.ts +9 -1
- package/es/drawer/src/DrawerContent.d.ts +8 -0
- package/es/drawer/styles/light.d.ts +8 -0
- package/es/dropdown/src/Dropdown.d.ts +1 -1
- package/es/infinite-scroll/index.d.ts +2 -0
- package/es/infinite-scroll/index.js +1 -0
- package/es/infinite-scroll/src/InfiniteScroll.d.ts +45 -0
- package/es/infinite-scroll/src/InfiniteScroll.js +78 -0
- package/es/layout/src/Layout.d.ts +112 -0
- package/es/layout/src/LayoutContent.d.ts +56 -0
- package/es/layout/src/LayoutFooter.d.ts +72 -0
- package/es/layout/src/LayoutHeader.d.ts +48 -0
- package/es/layout/src/LayoutSider.d.ts +56 -0
- package/es/layout/styles/light.d.ts +8 -0
- package/es/legacy-transfer/src/Transfer.d.ts +80 -0
- package/es/legacy-transfer/src/TransferFilter.d.ts +8 -0
- package/es/legacy-transfer/src/TransferList.d.ts +9 -1
- package/es/legacy-transfer/src/TransferListItem.d.ts +8 -0
- package/es/legacy-transfer/styles/light.d.ts +8 -0
- package/es/locales/common/arDZ.js +2 -0
- package/es/locales/common/deDE.js +2 -0
- package/es/locales/common/enGB.js +2 -0
- package/es/locales/common/enUS.d.ts +2 -0
- package/es/locales/common/enUS.js +2 -0
- package/es/locales/common/eo.js +2 -0
- package/es/locales/common/esAR.js +2 -0
- package/es/locales/common/faIR.js +2 -0
- package/es/locales/common/frFR.js +2 -0
- package/es/locales/common/idID.js +2 -0
- package/es/locales/common/itIT.js +2 -0
- package/es/locales/common/jaJP.js +2 -0
- package/es/locales/common/koKR.js +2 -0
- package/es/locales/common/nbNO.js +2 -0
- package/es/locales/common/nlNL.js +2 -0
- package/es/locales/common/plPL.js +2 -0
- package/es/locales/common/ptBR.js +2 -0
- package/es/locales/common/ruRU.js +2 -0
- package/es/locales/common/skSK.js +2 -0
- package/es/locales/common/svSE.js +2 -0
- package/es/locales/common/thTH.js +2 -0
- package/es/locales/common/trTR.js +2 -0
- package/es/locales/common/ukUA.js +2 -0
- package/es/locales/common/viVN.js +2 -0
- package/es/locales/common/zhCN.js +2 -0
- package/es/locales/common/zhTW.js +2 -0
- package/es/log/src/Log.d.ts +80 -0
- package/es/log/styles/light.d.ts +8 -0
- package/es/mention/src/Mention.d.ts +88 -0
- package/es/mention/styles/light.d.ts +8 -0
- package/es/menu/src/Menu.d.ts +1 -1
- package/es/modal/src/BodyWrapper.d.ts +9 -1
- package/es/modal/src/Modal.d.ts +73 -1
- package/es/modal/styles/light.d.ts +8 -0
- package/es/notification/src/NotificationContainer.d.ts +8 -0
- package/es/notification/src/NotificationProvider.d.ts +72 -0
- package/es/notification/styles/light.d.ts +8 -0
- package/es/pagination/src/Pagination.d.ts +176 -0
- package/es/pagination/styles/light.d.ts +16 -0
- package/es/popselect/src/Popselect.d.ts +88 -0
- package/es/popselect/src/PopselectPanel.d.ts +16 -0
- package/es/popselect/styles/light.d.ts +8 -0
- package/es/scrollbar/src/Scrollbar.d.ts +72 -0
- package/es/select/src/Select.d.ts +88 -0
- package/es/select/styles/light.d.ts +8 -0
- package/es/time-picker/src/Panel.d.ts +8 -0
- package/es/time-picker/src/TimePicker.d.ts +80 -0
- package/es/time-picker/styles/light.d.ts +8 -0
- package/es/transfer/src/Transfer.d.ts +80 -0
- package/es/transfer/src/TransferFilter.d.ts +8 -0
- package/es/transfer/src/TransferList.d.ts +9 -1
- package/es/transfer/src/TransferListItem.d.ts +8 -0
- package/es/transfer/styles/light.d.ts +8 -0
- package/es/tree/src/Tree.d.ts +82 -2
- package/es/tree/src/TreeNodeCheckbox.d.ts +8 -0
- package/es/tree/styles/light.d.ts +8 -0
- package/es/tree-select/src/TreeSelect.d.ts +89 -1
- package/es/tree-select/styles/light.d.ts +8 -0
- package/es/version.d.ts +1 -1
- package/es/version.js +1 -1
- package/es/virtual-list/index.d.ts +2 -0
- package/es/virtual-list/index.js +1 -0
- package/es/virtual-list/src/VirtualList.d.ts +146 -0
- package/es/virtual-list/src/VirtualList.js +103 -0
- package/lib/_internal/scrollbar/src/Scrollbar.d.ts +119 -17
- package/lib/_internal/scrollbar/src/Scrollbar.js +117 -64
- package/lib/_internal/scrollbar/src/styles/index.cssr.js +32 -15
- package/lib/_internal/scrollbar/styles/common.d.ts +7 -0
- package/lib/_internal/scrollbar/styles/common.js +10 -0
- package/lib/_internal/scrollbar/styles/light.d.ts +8 -0
- package/lib/_internal/scrollbar/styles/light.js +3 -5
- package/lib/_internal/select-menu/src/SelectMenu.d.ts +57 -1
- package/lib/_internal/select-menu/styles/light.d.ts +8 -0
- package/lib/_internal/selection/src/Selection.d.ts +3 -1
- package/lib/_internal/selection/src/Selection.js +3 -1
- package/lib/_utils/css/index.d.ts +1 -0
- package/lib/_utils/css/index.js +3 -1
- package/lib/_utils/css/rtl-inset.d.ts +1 -0
- package/lib/_utils/css/rtl-inset.js +8 -0
- package/lib/_utils/index.d.ts +1 -1
- package/lib/_utils/index.js +2 -1
- package/lib/auto-complete/src/AutoComplete.d.ts +88 -0
- package/lib/auto-complete/styles/light.d.ts +8 -0
- package/lib/back-top/src/BackTop.d.ts +1 -1
- package/lib/cascader/src/Cascader.d.ts +168 -0
- package/lib/cascader/src/CascaderMenu.d.ts +24 -0
- package/lib/cascader/src/CascaderOption.d.ts +24 -0
- package/lib/cascader/src/CascaderSelectMenu.d.ts +24 -0
- package/lib/cascader/src/CascaderSubmenu.d.ts +25 -1
- package/lib/cascader/styles/light.d.ts +16 -0
- package/lib/chat/index.d.ts +1 -1
- package/lib/chat/src/Chat.d.ts +321 -11
- package/lib/chat/src/Chat.js +73 -22
- package/lib/chat/src/ChatListItems.d.ts +104 -0
- package/lib/chat/src/ChatMessages.d.ts +104 -0
- package/lib/chat/src/ChatParts/ChatAttachment.js +14 -12
- package/lib/chat/src/ChatParts/MainArea.d.ts +1 -0
- package/lib/chat/src/ChatParts/MainArea.js +94 -56
- package/lib/chat/src/ChatParts/Sidebar.d.ts +920 -0
- package/lib/chat/src/ChatParts/Sidebar.js +62 -11
- package/lib/chat/src/interface.d.ts +24 -3
- package/lib/chat/src/styles/index.cssr.js +13 -2
- package/lib/chat/styles/dark.d.ts +8 -0
- package/lib/chat/styles/light.d.ts +8 -0
- package/lib/components.d.ts +2 -0
- package/lib/components.js +2 -0
- package/lib/data-table/src/DataTable.d.ts +184 -0
- package/lib/data-table/src/HeaderButton/FilterButton.d.ts +40 -0
- package/lib/data-table/src/HeaderButton/FilterMenu.d.ts +40 -0
- package/lib/data-table/src/TableParts/Body.d.ts +41 -1
- package/lib/data-table/src/TableParts/Header.d.ts +40 -0
- package/lib/data-table/src/interface.d.ts +72 -0
- package/lib/data-table/styles/light.d.ts +24 -0
- package/lib/date-picker/src/DatePicker.d.ts +1469 -36
- package/lib/date-picker/src/DatePicker.js +53 -28
- package/lib/date-picker/src/interface.d.ts +1 -0
- package/lib/date-picker/src/panel/date.d.ts +166 -1
- package/lib/date-picker/src/panel/daterange.d.ts +167 -2
- package/lib/date-picker/src/panel/datetime.d.ts +166 -1
- package/lib/date-picker/src/panel/datetimerange.d.ts +167 -2
- package/lib/date-picker/src/panel/panelMonth.d.ts +332 -2
- package/lib/date-picker/src/panel/panelMonthContent.d.ts +166 -1
- package/lib/date-picker/src/panel/panelYear.d.ts +332 -2
- package/lib/date-picker/src/panel/panelYearContent.d.ts +166 -1
- package/lib/date-picker/src/panel/use-calendar.d.ts +165 -0
- package/lib/date-picker/src/panel/use-dual-calendar.d.ts +165 -0
- package/lib/date-picker/src/panel/use-panel-common.d.ts +165 -0
- package/lib/date-picker/styles/dark.js +3 -1
- package/lib/date-picker/styles/light.d.ts +139 -0
- package/lib/date-picker/styles/light.js +3 -1
- package/lib/descriptions/src/Descriptions.d.ts +30 -0
- package/lib/descriptions/src/Descriptions.js +18 -10
- package/lib/dialog/src/DialogProvider.d.ts +2 -2
- package/lib/drawer/src/Drawer.d.ts +81 -1
- package/lib/drawer/src/DrawerBodyWrapper.d.ts +9 -1
- package/lib/drawer/src/DrawerContent.d.ts +8 -0
- package/lib/drawer/styles/light.d.ts +8 -0
- package/lib/dropdown/src/Dropdown.d.ts +1 -1
- package/lib/infinite-scroll/index.d.ts +2 -0
- package/lib/infinite-scroll/index.js +9 -0
- package/lib/infinite-scroll/src/InfiniteScroll.d.ts +45 -0
- package/lib/infinite-scroll/src/InfiniteScroll.js +81 -0
- package/lib/layout/src/Layout.d.ts +112 -0
- package/lib/layout/src/LayoutContent.d.ts +56 -0
- package/lib/layout/src/LayoutFooter.d.ts +72 -0
- package/lib/layout/src/LayoutHeader.d.ts +48 -0
- package/lib/layout/src/LayoutSider.d.ts +56 -0
- package/lib/layout/styles/light.d.ts +8 -0
- package/lib/legacy-transfer/src/Transfer.d.ts +80 -0
- package/lib/legacy-transfer/src/TransferFilter.d.ts +8 -0
- package/lib/legacy-transfer/src/TransferList.d.ts +9 -1
- package/lib/legacy-transfer/src/TransferListItem.d.ts +8 -0
- package/lib/legacy-transfer/styles/light.d.ts +8 -0
- package/lib/locales/common/arDZ.js +2 -0
- package/lib/locales/common/deDE.js +2 -0
- package/lib/locales/common/enGB.js +2 -0
- package/lib/locales/common/enUS.d.ts +2 -0
- package/lib/locales/common/enUS.js +2 -0
- package/lib/locales/common/eo.js +2 -0
- package/lib/locales/common/esAR.js +2 -0
- package/lib/locales/common/faIR.js +2 -0
- package/lib/locales/common/frFR.js +2 -0
- package/lib/locales/common/idID.js +2 -0
- package/lib/locales/common/itIT.js +2 -0
- package/lib/locales/common/jaJP.js +2 -0
- package/lib/locales/common/koKR.js +2 -0
- package/lib/locales/common/nbNO.js +2 -0
- package/lib/locales/common/nlNL.js +2 -0
- package/lib/locales/common/plPL.js +2 -0
- package/lib/locales/common/ptBR.js +2 -0
- package/lib/locales/common/ruRU.js +2 -0
- package/lib/locales/common/skSK.js +2 -0
- package/lib/locales/common/svSE.js +2 -0
- package/lib/locales/common/thTH.js +2 -0
- package/lib/locales/common/trTR.js +2 -0
- package/lib/locales/common/ukUA.js +2 -0
- package/lib/locales/common/viVN.js +2 -0
- package/lib/locales/common/zhCN.js +2 -0
- package/lib/locales/common/zhTW.js +2 -0
- package/lib/log/src/Log.d.ts +80 -0
- package/lib/log/styles/light.d.ts +8 -0
- package/lib/mention/src/Mention.d.ts +88 -0
- package/lib/mention/styles/light.d.ts +8 -0
- package/lib/menu/src/Menu.d.ts +1 -1
- package/lib/modal/src/BodyWrapper.d.ts +9 -1
- package/lib/modal/src/Modal.d.ts +73 -1
- package/lib/modal/styles/light.d.ts +8 -0
- package/lib/notification/src/NotificationContainer.d.ts +8 -0
- package/lib/notification/src/NotificationProvider.d.ts +72 -0
- package/lib/notification/styles/light.d.ts +8 -0
- package/lib/pagination/src/Pagination.d.ts +176 -0
- package/lib/pagination/styles/light.d.ts +16 -0
- package/lib/popselect/src/Popselect.d.ts +88 -0
- package/lib/popselect/src/PopselectPanel.d.ts +16 -0
- package/lib/popselect/styles/light.d.ts +8 -0
- package/lib/scrollbar/src/Scrollbar.d.ts +72 -0
- package/lib/select/src/Select.d.ts +88 -0
- package/lib/select/styles/light.d.ts +8 -0
- package/lib/time-picker/src/Panel.d.ts +8 -0
- package/lib/time-picker/src/TimePicker.d.ts +80 -0
- package/lib/time-picker/styles/light.d.ts +8 -0
- package/lib/transfer/src/Transfer.d.ts +80 -0
- package/lib/transfer/src/TransferFilter.d.ts +8 -0
- package/lib/transfer/src/TransferList.d.ts +9 -1
- package/lib/transfer/src/TransferListItem.d.ts +8 -0
- package/lib/transfer/styles/light.d.ts +8 -0
- package/lib/tree/src/Tree.d.ts +82 -2
- package/lib/tree/src/TreeNodeCheckbox.d.ts +8 -0
- package/lib/tree/styles/light.d.ts +8 -0
- package/lib/tree-select/src/TreeSelect.d.ts +89 -1
- package/lib/tree-select/styles/light.d.ts +8 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/virtual-list/index.d.ts +2 -0
- package/lib/virtual-list/index.js +9 -0
- package/lib/virtual-list/src/VirtualList.d.ts +146 -0
- package/lib/virtual-list/src/VirtualList.js +106 -0
- package/package.json +4 -4
- package/volar.d.ts +1 -0
- package/web-types.json +124 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CSSProperties, HTMLAttributes, PropType } from 'vue';
|
|
2
2
|
import type { ExtractInternalPropTypes, ExtractPublicPropTypes } from '../../../_utils';
|
|
3
3
|
export interface ScrollTo {
|
|
4
4
|
(x: number, y: number): void;
|
|
@@ -48,10 +48,6 @@ export interface ScrollbarInst extends ScrollbarInstMethods {
|
|
|
48
48
|
containerScrollTop: number;
|
|
49
49
|
}
|
|
50
50
|
declare const scrollbarProps: {
|
|
51
|
-
readonly size: {
|
|
52
|
-
readonly type: NumberConstructor;
|
|
53
|
-
readonly default: 5;
|
|
54
|
-
};
|
|
55
51
|
readonly duration: {
|
|
56
52
|
readonly type: NumberConstructor;
|
|
57
53
|
readonly default: 0;
|
|
@@ -71,7 +67,7 @@ declare const scrollbarProps: {
|
|
|
71
67
|
readonly content: PropType<() => HTMLElement | null | undefined>;
|
|
72
68
|
readonly containerClass: StringConstructor;
|
|
73
69
|
readonly containerStyle: PropType<string | CSSProperties>;
|
|
74
|
-
readonly contentClass:
|
|
70
|
+
readonly contentClass: PropType<string | Array<string | undefined>>;
|
|
75
71
|
readonly contentStyle: PropType<string | CSSProperties>;
|
|
76
72
|
readonly horizontalRailStyle: PropType<string | CSSProperties>;
|
|
77
73
|
readonly verticalRailStyle: PropType<string | CSSProperties>;
|
|
@@ -80,26 +76,54 @@ declare const scrollbarProps: {
|
|
|
80
76
|
readonly onResize: PropType<(e: ResizeObserverEntry) => void>;
|
|
81
77
|
readonly internalOnUpdateScrollLeft: PropType<(scrollLeft: number) => void>;
|
|
82
78
|
readonly internalHoistYRail: BooleanConstructor;
|
|
79
|
+
readonly yPlacement: {
|
|
80
|
+
readonly type: PropType<"left" | "right">;
|
|
81
|
+
readonly default: "right";
|
|
82
|
+
};
|
|
83
|
+
readonly xPlacement: {
|
|
84
|
+
readonly type: PropType<"top" | "bottom">;
|
|
85
|
+
readonly default: "bottom";
|
|
86
|
+
};
|
|
83
87
|
readonly theme: PropType<import("../../../_mixins").Theme<"Scrollbar", {
|
|
88
|
+
height: string;
|
|
89
|
+
width: string;
|
|
90
|
+
borderRadius: string;
|
|
84
91
|
color: string;
|
|
85
92
|
colorHover: string;
|
|
93
|
+
railInsetHorizontalBottom: string;
|
|
94
|
+
railInsetHorizontalTop: string;
|
|
95
|
+
railInsetVerticalRight: string;
|
|
96
|
+
railInsetVerticalLeft: string;
|
|
97
|
+
railColor: string;
|
|
86
98
|
}, any>>;
|
|
87
99
|
readonly themeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
100
|
+
height: string;
|
|
101
|
+
width: string;
|
|
102
|
+
borderRadius: string;
|
|
88
103
|
color: string;
|
|
89
104
|
colorHover: string;
|
|
105
|
+
railInsetHorizontalBottom: string;
|
|
106
|
+
railInsetHorizontalTop: string;
|
|
107
|
+
railInsetVerticalRight: string;
|
|
108
|
+
railInsetVerticalLeft: string;
|
|
109
|
+
railColor: string;
|
|
90
110
|
}, any>>>;
|
|
91
111
|
readonly builtinThemeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
112
|
+
height: string;
|
|
113
|
+
width: string;
|
|
114
|
+
borderRadius: string;
|
|
92
115
|
color: string;
|
|
93
116
|
colorHover: string;
|
|
117
|
+
railInsetHorizontalBottom: string;
|
|
118
|
+
railInsetHorizontalTop: string;
|
|
119
|
+
railInsetVerticalRight: string;
|
|
120
|
+
railInsetVerticalLeft: string;
|
|
121
|
+
railColor: string;
|
|
94
122
|
}, any>>>;
|
|
95
123
|
};
|
|
96
124
|
export type ScrollbarProps = ExtractPublicPropTypes<typeof scrollbarProps>;
|
|
97
125
|
export type ScrollbarInternalProps = ExtractInternalPropTypes<typeof scrollbarProps>;
|
|
98
126
|
declare const Scrollbar: import("vue").DefineComponent<{
|
|
99
|
-
readonly size: {
|
|
100
|
-
readonly type: NumberConstructor;
|
|
101
|
-
readonly default: 5;
|
|
102
|
-
};
|
|
103
127
|
readonly duration: {
|
|
104
128
|
readonly type: NumberConstructor;
|
|
105
129
|
readonly default: 0;
|
|
@@ -119,7 +143,7 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
119
143
|
readonly content: PropType<() => HTMLElement | null | undefined>;
|
|
120
144
|
readonly containerClass: StringConstructor;
|
|
121
145
|
readonly containerStyle: PropType<string | CSSProperties>;
|
|
122
|
-
readonly contentClass:
|
|
146
|
+
readonly contentClass: PropType<string | Array<string | undefined>>;
|
|
123
147
|
readonly contentStyle: PropType<string | CSSProperties>;
|
|
124
148
|
readonly horizontalRailStyle: PropType<string | CSSProperties>;
|
|
125
149
|
readonly verticalRailStyle: PropType<string | CSSProperties>;
|
|
@@ -128,17 +152,49 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
128
152
|
readonly onResize: PropType<(e: ResizeObserverEntry) => void>;
|
|
129
153
|
readonly internalOnUpdateScrollLeft: PropType<(scrollLeft: number) => void>;
|
|
130
154
|
readonly internalHoistYRail: BooleanConstructor;
|
|
155
|
+
readonly yPlacement: {
|
|
156
|
+
readonly type: PropType<"left" | "right">;
|
|
157
|
+
readonly default: "right";
|
|
158
|
+
};
|
|
159
|
+
readonly xPlacement: {
|
|
160
|
+
readonly type: PropType<"top" | "bottom">;
|
|
161
|
+
readonly default: "bottom";
|
|
162
|
+
};
|
|
131
163
|
readonly theme: PropType<import("../../../_mixins").Theme<"Scrollbar", {
|
|
164
|
+
height: string;
|
|
165
|
+
width: string;
|
|
166
|
+
borderRadius: string;
|
|
132
167
|
color: string;
|
|
133
168
|
colorHover: string;
|
|
169
|
+
railInsetHorizontalBottom: string;
|
|
170
|
+
railInsetHorizontalTop: string;
|
|
171
|
+
railInsetVerticalRight: string;
|
|
172
|
+
railInsetVerticalLeft: string;
|
|
173
|
+
railColor: string;
|
|
134
174
|
}, any>>;
|
|
135
175
|
readonly themeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
176
|
+
height: string;
|
|
177
|
+
width: string;
|
|
178
|
+
borderRadius: string;
|
|
136
179
|
color: string;
|
|
137
180
|
colorHover: string;
|
|
181
|
+
railInsetHorizontalBottom: string;
|
|
182
|
+
railInsetHorizontalTop: string;
|
|
183
|
+
railInsetVerticalRight: string;
|
|
184
|
+
railInsetVerticalLeft: string;
|
|
185
|
+
railColor: string;
|
|
138
186
|
}, any>>>;
|
|
139
187
|
readonly builtinThemeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
188
|
+
height: string;
|
|
189
|
+
width: string;
|
|
190
|
+
borderRadius: string;
|
|
140
191
|
color: string;
|
|
141
192
|
colorHover: string;
|
|
193
|
+
railInsetHorizontalBottom: string;
|
|
194
|
+
railInsetHorizontalTop: string;
|
|
195
|
+
railInsetVerticalRight: string;
|
|
196
|
+
railInsetVerticalLeft: string;
|
|
197
|
+
railColor: string;
|
|
142
198
|
}, any>>>;
|
|
143
199
|
}, {
|
|
144
200
|
mergedClsPrefix: import("vue").Ref<string>;
|
|
@@ -170,6 +226,23 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
170
226
|
'--u-scrollbar-border-radius': string;
|
|
171
227
|
'--u-scrollbar-width': string;
|
|
172
228
|
'--u-scrollbar-height': string;
|
|
229
|
+
'--u-scrollbar-rail-top-horizontal-top': string;
|
|
230
|
+
'--u-scrollbar-rail-right-horizontal-top': string;
|
|
231
|
+
'--u-scrollbar-rail-bottom-horizontal-top': string;
|
|
232
|
+
'--u-scrollbar-rail-left-horizontal-top': string;
|
|
233
|
+
'--u-scrollbar-rail-top-horizontal-bottom': string;
|
|
234
|
+
'--u-scrollbar-rail-right-horizontal-bottom': string;
|
|
235
|
+
'--u-scrollbar-rail-bottom-horizontal-bottom': string;
|
|
236
|
+
'--u-scrollbar-rail-left-horizontal-bottom': string;
|
|
237
|
+
'--u-scrollbar-rail-top-vertical-right': string;
|
|
238
|
+
'--u-scrollbar-rail-right-vertical-right': string;
|
|
239
|
+
'--u-scrollbar-rail-bottom-vertical-right': string;
|
|
240
|
+
'--u-scrollbar-rail-left-vertical-right': string;
|
|
241
|
+
'--u-scrollbar-rail-top-vertical-left': string;
|
|
242
|
+
'--u-scrollbar-rail-right-vertical-left': string;
|
|
243
|
+
'--u-scrollbar-rail-bottom-vertical-left': string;
|
|
244
|
+
'--u-scrollbar-rail-left-vertical-left': string;
|
|
245
|
+
'--u-scrollbar-rail-color': string;
|
|
173
246
|
}> | undefined;
|
|
174
247
|
themeClass: import("vue").Ref<string> | undefined;
|
|
175
248
|
onRender: (() => void) | undefined;
|
|
@@ -180,10 +253,6 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
180
253
|
handleMouseEnterWrapper: () => void;
|
|
181
254
|
handleMouseLeaveWrapper: () => void;
|
|
182
255
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
183
|
-
readonly size: {
|
|
184
|
-
readonly type: NumberConstructor;
|
|
185
|
-
readonly default: 5;
|
|
186
|
-
};
|
|
187
256
|
readonly duration: {
|
|
188
257
|
readonly type: NumberConstructor;
|
|
189
258
|
readonly default: 0;
|
|
@@ -203,7 +272,7 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
203
272
|
readonly content: PropType<() => HTMLElement | null | undefined>;
|
|
204
273
|
readonly containerClass: StringConstructor;
|
|
205
274
|
readonly containerStyle: PropType<string | CSSProperties>;
|
|
206
|
-
readonly contentClass:
|
|
275
|
+
readonly contentClass: PropType<string | Array<string | undefined>>;
|
|
207
276
|
readonly contentStyle: PropType<string | CSSProperties>;
|
|
208
277
|
readonly horizontalRailStyle: PropType<string | CSSProperties>;
|
|
209
278
|
readonly verticalRailStyle: PropType<string | CSSProperties>;
|
|
@@ -212,20 +281,51 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
212
281
|
readonly onResize: PropType<(e: ResizeObserverEntry) => void>;
|
|
213
282
|
readonly internalOnUpdateScrollLeft: PropType<(scrollLeft: number) => void>;
|
|
214
283
|
readonly internalHoistYRail: BooleanConstructor;
|
|
284
|
+
readonly yPlacement: {
|
|
285
|
+
readonly type: PropType<"left" | "right">;
|
|
286
|
+
readonly default: "right";
|
|
287
|
+
};
|
|
288
|
+
readonly xPlacement: {
|
|
289
|
+
readonly type: PropType<"top" | "bottom">;
|
|
290
|
+
readonly default: "bottom";
|
|
291
|
+
};
|
|
215
292
|
readonly theme: PropType<import("../../../_mixins").Theme<"Scrollbar", {
|
|
293
|
+
height: string;
|
|
294
|
+
width: string;
|
|
295
|
+
borderRadius: string;
|
|
216
296
|
color: string;
|
|
217
297
|
colorHover: string;
|
|
298
|
+
railInsetHorizontalBottom: string;
|
|
299
|
+
railInsetHorizontalTop: string;
|
|
300
|
+
railInsetVerticalRight: string;
|
|
301
|
+
railInsetVerticalLeft: string;
|
|
302
|
+
railColor: string;
|
|
218
303
|
}, any>>;
|
|
219
304
|
readonly themeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
305
|
+
height: string;
|
|
306
|
+
width: string;
|
|
307
|
+
borderRadius: string;
|
|
220
308
|
color: string;
|
|
221
309
|
colorHover: string;
|
|
310
|
+
railInsetHorizontalBottom: string;
|
|
311
|
+
railInsetHorizontalTop: string;
|
|
312
|
+
railInsetVerticalRight: string;
|
|
313
|
+
railInsetVerticalLeft: string;
|
|
314
|
+
railColor: string;
|
|
222
315
|
}, any>>>;
|
|
223
316
|
readonly builtinThemeOverrides: PropType<import("../../../_mixins/use-theme").ExtractThemeOverrides<import("../../../_mixins").Theme<"Scrollbar", {
|
|
317
|
+
height: string;
|
|
318
|
+
width: string;
|
|
319
|
+
borderRadius: string;
|
|
224
320
|
color: string;
|
|
225
321
|
colorHover: string;
|
|
322
|
+
railInsetHorizontalBottom: string;
|
|
323
|
+
railInsetHorizontalTop: string;
|
|
324
|
+
railInsetVerticalRight: string;
|
|
325
|
+
railInsetVerticalLeft: string;
|
|
326
|
+
railColor: string;
|
|
226
327
|
}, any>>>;
|
|
227
328
|
}>>, {
|
|
228
|
-
readonly size: number;
|
|
229
329
|
readonly duration: number;
|
|
230
330
|
readonly scrollable: boolean;
|
|
231
331
|
readonly xScrollable: boolean;
|
|
@@ -233,6 +333,8 @@ declare const Scrollbar: import("vue").DefineComponent<{
|
|
|
233
333
|
readonly useUnifiedContainer: boolean;
|
|
234
334
|
readonly triggerDisplayManually: boolean;
|
|
235
335
|
readonly internalHoistYRail: boolean;
|
|
336
|
+
readonly yPlacement: "left" | "right";
|
|
337
|
+
readonly xPlacement: "top" | "bottom";
|
|
236
338
|
}, {}>;
|
|
237
339
|
type NativeScrollbarProps = Omit<HTMLAttributes, keyof ScrollbarInternalProps>;
|
|
238
340
|
type MergedProps = Partial<ScrollbarInternalProps & NativeScrollbarProps>;
|
|
@@ -4,19 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.XScrollbar = void 0;
|
|
7
|
-
const vue_1 = require("vue");
|
|
8
7
|
const evtd_1 = require("evtd");
|
|
9
|
-
const vueuc_1 = require("vueuc");
|
|
10
|
-
const vooks_1 = require("vooks");
|
|
11
8
|
const seemly_1 = require("seemly");
|
|
9
|
+
const vooks_1 = require("vooks");
|
|
10
|
+
const vue_1 = require("vue");
|
|
11
|
+
const vueuc_1 = require("vueuc");
|
|
12
12
|
const _mixins_1 = require("../../../_mixins");
|
|
13
13
|
const _utils_1 = require("../../../_utils");
|
|
14
14
|
const styles_1 = require("../styles");
|
|
15
15
|
const index_cssr_1 = __importDefault(require("./styles/index.cssr"));
|
|
16
|
-
const scrollbarProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), {
|
|
17
|
-
type: Number,
|
|
18
|
-
default: 5
|
|
19
|
-
}, duration: {
|
|
16
|
+
const scrollbarProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), { duration: {
|
|
20
17
|
type: Number,
|
|
21
18
|
default: 0
|
|
22
19
|
}, scrollable: {
|
|
@@ -27,7 +24,13 @@ const scrollbarProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props)
|
|
|
27
24
|
default: 'hover'
|
|
28
25
|
}, useUnifiedContainer: Boolean, triggerDisplayManually: Boolean,
|
|
29
26
|
// If container is set, resize observer won't not attached
|
|
30
|
-
container: Function, content: Function, containerClass: String, containerStyle: [String, Object], contentClass: String, contentStyle: [String, Object], horizontalRailStyle: [String, Object], verticalRailStyle: [String, Object], onScroll: Function, onWheel: Function, onResize: Function, internalOnUpdateScrollLeft: Function, internalHoistYRail: Boolean
|
|
27
|
+
container: Function, content: Function, containerClass: String, containerStyle: [String, Object], contentClass: [String, Array], contentStyle: [String, Object], horizontalRailStyle: [String, Object], verticalRailStyle: [String, Object], onScroll: Function, onWheel: Function, onResize: Function, internalOnUpdateScrollLeft: Function, internalHoistYRail: Boolean, yPlacement: {
|
|
28
|
+
type: String,
|
|
29
|
+
default: 'right'
|
|
30
|
+
}, xPlacement: {
|
|
31
|
+
type: String,
|
|
32
|
+
default: 'bottom'
|
|
33
|
+
} });
|
|
31
34
|
const Scrollbar = (0, vue_1.defineComponent)({
|
|
32
35
|
name: 'Scrollbar',
|
|
33
36
|
props: scrollbarProps,
|
|
@@ -61,6 +64,7 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
61
64
|
let memoMouseX = 0;
|
|
62
65
|
let memoMouseY = 0;
|
|
63
66
|
const isIos = (0, vooks_1.useIsIos)();
|
|
67
|
+
const themeRef = (0, _mixins_1.useTheme)('Scrollbar', '-scrollbar', index_cssr_1.default, styles_1.scrollbarLight, props, mergedClsPrefixRef);
|
|
64
68
|
const yBarSizeRef = (0, vue_1.computed)(() => {
|
|
65
69
|
const { value: containerHeight } = containerHeightRef;
|
|
66
70
|
const { value: contentHeight } = contentHeightRef;
|
|
@@ -71,7 +75,8 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
71
75
|
return 0;
|
|
72
76
|
}
|
|
73
77
|
else {
|
|
74
|
-
return Math.min(containerHeight, (yRailSize * containerHeight) / contentHeight +
|
|
78
|
+
return Math.min(containerHeight, (yRailSize * containerHeight) / contentHeight +
|
|
79
|
+
(0, seemly_1.depx)(themeRef.value.self.width) * 1.5);
|
|
75
80
|
}
|
|
76
81
|
});
|
|
77
82
|
const yBarSizePxRef = (0, vue_1.computed)(() => {
|
|
@@ -87,7 +92,8 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
87
92
|
return 0;
|
|
88
93
|
}
|
|
89
94
|
else {
|
|
90
|
-
return (xRailSize * containerWidth) / contentWidth +
|
|
95
|
+
return ((xRailSize * containerWidth) / contentWidth +
|
|
96
|
+
(0, seemly_1.depx)(themeRef.value.self.height) * 1.5);
|
|
91
97
|
}
|
|
92
98
|
});
|
|
93
99
|
const xBarSizePxRef = (0, vue_1.computed)(() => {
|
|
@@ -105,8 +111,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
105
111
|
}
|
|
106
112
|
else {
|
|
107
113
|
const heightDiff = contentHeight - containerHeight;
|
|
108
|
-
if (!heightDiff)
|
|
114
|
+
if (!heightDiff) {
|
|
109
115
|
return 0;
|
|
116
|
+
}
|
|
110
117
|
return ((containerScrollTop / heightDiff) * (yRailSize - yBarSizeRef.value));
|
|
111
118
|
}
|
|
112
119
|
});
|
|
@@ -125,8 +132,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
125
132
|
}
|
|
126
133
|
else {
|
|
127
134
|
const widthDiff = contentWidth - containerWidth;
|
|
128
|
-
if (!widthDiff)
|
|
135
|
+
if (!widthDiff) {
|
|
129
136
|
return 0;
|
|
137
|
+
}
|
|
130
138
|
return ((containerScrollLeft / widthDiff) * (xRailSize - xBarSizeRef.value));
|
|
131
139
|
}
|
|
132
140
|
});
|
|
@@ -157,43 +165,22 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
157
165
|
});
|
|
158
166
|
const mergedContainerRef = (0, vue_1.computed)(() => {
|
|
159
167
|
const { container } = props;
|
|
160
|
-
if (container)
|
|
168
|
+
if (container) {
|
|
161
169
|
return container();
|
|
170
|
+
}
|
|
162
171
|
return containerRef.value;
|
|
163
172
|
});
|
|
164
173
|
const mergedContentRef = (0, vue_1.computed)(() => {
|
|
165
174
|
const { content } = props;
|
|
166
|
-
if (content)
|
|
175
|
+
if (content) {
|
|
167
176
|
return content();
|
|
168
|
-
return contentRef.value;
|
|
169
|
-
});
|
|
170
|
-
const activateState = (0, _utils_1.useReactivated)(() => {
|
|
171
|
-
// Only restore for builtin container & content
|
|
172
|
-
if (!props.container) {
|
|
173
|
-
// remount
|
|
174
|
-
scrollTo({
|
|
175
|
-
top: containerScrollTopRef.value,
|
|
176
|
-
left: containerScrollLeftRef.value
|
|
177
|
-
});
|
|
178
177
|
}
|
|
178
|
+
return contentRef.value;
|
|
179
179
|
});
|
|
180
|
-
// methods
|
|
181
|
-
const handleContentResize = () => {
|
|
182
|
-
if (activateState.isDeactivated)
|
|
183
|
-
return;
|
|
184
|
-
sync();
|
|
185
|
-
};
|
|
186
|
-
const handleContainerResize = (e) => {
|
|
187
|
-
if (activateState.isDeactivated)
|
|
188
|
-
return;
|
|
189
|
-
const { onResize } = props;
|
|
190
|
-
if (onResize)
|
|
191
|
-
onResize(e);
|
|
192
|
-
sync();
|
|
193
|
-
};
|
|
194
180
|
const scrollTo = (options, y) => {
|
|
195
|
-
if (!props.scrollable)
|
|
181
|
+
if (!props.scrollable) {
|
|
196
182
|
return;
|
|
183
|
+
}
|
|
197
184
|
if (typeof options === 'number') {
|
|
198
185
|
scrollToPosition(options, y !== null && y !== void 0 ? y : 0, 0, false, 'auto');
|
|
199
186
|
return;
|
|
@@ -215,12 +202,41 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
215
202
|
scrollToPosition(0, 0, 0, false, behavior);
|
|
216
203
|
}
|
|
217
204
|
};
|
|
205
|
+
const activateState = (0, _utils_1.useReactivated)(() => {
|
|
206
|
+
// Only restore for builtin container & content
|
|
207
|
+
if (!props.container) {
|
|
208
|
+
// remount
|
|
209
|
+
scrollTo({
|
|
210
|
+
top: containerScrollTopRef.value,
|
|
211
|
+
left: containerScrollLeftRef.value
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
// methods
|
|
216
|
+
const handleContentResize = () => {
|
|
217
|
+
if (activateState.isDeactivated) {
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
sync();
|
|
221
|
+
};
|
|
222
|
+
const handleContainerResize = (e) => {
|
|
223
|
+
if (activateState.isDeactivated) {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
const { onResize } = props;
|
|
227
|
+
if (onResize) {
|
|
228
|
+
onResize(e);
|
|
229
|
+
}
|
|
230
|
+
sync();
|
|
231
|
+
};
|
|
218
232
|
const scrollBy = (options, y) => {
|
|
219
|
-
if (!props.scrollable)
|
|
233
|
+
if (!props.scrollable) {
|
|
220
234
|
return;
|
|
235
|
+
}
|
|
221
236
|
const { value: container } = mergedContainerRef;
|
|
222
|
-
if (!container)
|
|
237
|
+
if (!container) {
|
|
223
238
|
return;
|
|
239
|
+
}
|
|
224
240
|
if (typeof options === 'object') {
|
|
225
241
|
container.scrollBy(options);
|
|
226
242
|
}
|
|
@@ -230,8 +246,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
230
246
|
};
|
|
231
247
|
function scrollToPosition(left, top, elSize, debounce, behavior) {
|
|
232
248
|
const { value: container } = mergedContainerRef;
|
|
233
|
-
if (!container)
|
|
249
|
+
if (!container) {
|
|
234
250
|
return;
|
|
251
|
+
}
|
|
235
252
|
if (debounce) {
|
|
236
253
|
const { scrollTop, offsetHeight } = container;
|
|
237
254
|
if (top > scrollTop) {
|
|
@@ -296,8 +313,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
296
313
|
}
|
|
297
314
|
function handleScroll(e) {
|
|
298
315
|
const { onScroll } = props;
|
|
299
|
-
if (onScroll)
|
|
316
|
+
if (onScroll) {
|
|
300
317
|
onScroll(e);
|
|
318
|
+
}
|
|
301
319
|
syncScrollState();
|
|
302
320
|
}
|
|
303
321
|
function syncScrollState() {
|
|
@@ -356,8 +374,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
356
374
|
}
|
|
357
375
|
}
|
|
358
376
|
function sync() {
|
|
359
|
-
if (!props.scrollable)
|
|
377
|
+
if (!props.scrollable) {
|
|
360
378
|
return;
|
|
379
|
+
}
|
|
361
380
|
if (props.useUnifiedContainer) {
|
|
362
381
|
syncUnifiedContainer();
|
|
363
382
|
}
|
|
@@ -382,8 +401,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
382
401
|
: e.clientX;
|
|
383
402
|
}
|
|
384
403
|
function handleXScrollMouseMove(e) {
|
|
385
|
-
if (!xBarPressed)
|
|
404
|
+
if (!xBarPressed) {
|
|
386
405
|
return;
|
|
406
|
+
}
|
|
387
407
|
if (xBarVanishTimerId !== undefined) {
|
|
388
408
|
window.clearTimeout(xBarVanishTimerId);
|
|
389
409
|
}
|
|
@@ -393,8 +413,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
393
413
|
const { value: containerWidth } = containerWidthRef;
|
|
394
414
|
const { value: contentWidth } = contentWidthRef;
|
|
395
415
|
const { value: xBarSize } = xBarSizeRef;
|
|
396
|
-
if (containerWidth === null || contentWidth === null)
|
|
416
|
+
if (containerWidth === null || contentWidth === null) {
|
|
397
417
|
return;
|
|
418
|
+
}
|
|
398
419
|
const dX = (rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value)
|
|
399
420
|
? window.innerWidth - e.clientX - memoMouseX
|
|
400
421
|
: e.clientX - memoMouseX;
|
|
@@ -407,8 +428,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
407
428
|
if (container) {
|
|
408
429
|
container.scrollLeft = toScrollLeft * ((rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value) ? -1 : 1);
|
|
409
430
|
const { internalOnUpdateScrollLeft } = props;
|
|
410
|
-
if (internalOnUpdateScrollLeft)
|
|
431
|
+
if (internalOnUpdateScrollLeft) {
|
|
411
432
|
internalOnUpdateScrollLeft(toScrollLeft);
|
|
433
|
+
}
|
|
412
434
|
}
|
|
413
435
|
}
|
|
414
436
|
function handleXScrollMouseUp(e) {
|
|
@@ -432,8 +454,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
432
454
|
memoMouseY = e.clientY;
|
|
433
455
|
}
|
|
434
456
|
function handleYScrollMouseMove(e) {
|
|
435
|
-
if (!yBarPressed)
|
|
457
|
+
if (!yBarPressed) {
|
|
436
458
|
return;
|
|
459
|
+
}
|
|
437
460
|
if (xBarVanishTimerId !== undefined) {
|
|
438
461
|
window.clearTimeout(xBarVanishTimerId);
|
|
439
462
|
}
|
|
@@ -443,8 +466,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
443
466
|
const { value: containerHeight } = containerHeightRef;
|
|
444
467
|
const { value: contentHeight } = contentHeightRef;
|
|
445
468
|
const { value: yBarSize } = yBarSizeRef;
|
|
446
|
-
if (containerHeight === null || contentHeight === null)
|
|
469
|
+
if (containerHeight === null || contentHeight === null) {
|
|
447
470
|
return;
|
|
471
|
+
}
|
|
448
472
|
const dY = e.clientY - memoMouseY;
|
|
449
473
|
const dScrollTop = (dY * (contentHeight - containerHeight)) / (containerHeight - yBarSize);
|
|
450
474
|
const toScrollTopUpperBound = contentHeight - containerHeight;
|
|
@@ -499,8 +523,9 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
499
523
|
// if you pass inner to scrollbar, you may use a ref inside component
|
|
500
524
|
// however, when scrollbar is mounted, ref is not ready at component
|
|
501
525
|
// you need to init by yourself
|
|
502
|
-
if (props.container)
|
|
526
|
+
if (props.container) {
|
|
503
527
|
return;
|
|
528
|
+
}
|
|
504
529
|
sync();
|
|
505
530
|
});
|
|
506
531
|
(0, vue_1.onBeforeUnmount)(() => {
|
|
@@ -513,16 +538,40 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
513
538
|
(0, evtd_1.off)('mousemove', window, handleYScrollMouseMove, true);
|
|
514
539
|
(0, evtd_1.off)('mouseup', window, handleYScrollMouseUp, true);
|
|
515
540
|
});
|
|
516
|
-
const themeRef = (0, _mixins_1.useTheme)('Scrollbar', '-scrollbar', index_cssr_1.default, styles_1.scrollbarLight, props, mergedClsPrefixRef);
|
|
517
541
|
const cssVarsRef = (0, vue_1.computed)(() => {
|
|
518
|
-
const { common: { cubicBezierEaseInOut
|
|
542
|
+
const { common: { cubicBezierEaseInOut }, self: { color, colorHover, height, width, borderRadius, railInsetHorizontalTop, railInsetHorizontalBottom, railInsetVerticalRight, railInsetVerticalLeft, railColor } } = themeRef.value;
|
|
543
|
+
const { top: railTopHorizontalTop, right: railRightHorizontalTop, bottom: railBottomHorizontalTop, left: railLeftHorizontalTop } = (0, seemly_1.getPadding)(railInsetHorizontalTop);
|
|
544
|
+
const { top: railTopHorizontalBottom, right: railRightHorizontalBottom, bottom: railBottomHorizontalBottom, left: railLeftHorizontalBottom } = (0, seemly_1.getPadding)(railInsetHorizontalBottom);
|
|
545
|
+
const { top: railTopVerticalRight, right: railRightVerticalRight, bottom: railBottomVerticalRight, left: railLeftVerticalRight } = (0, seemly_1.getPadding)((rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value)
|
|
546
|
+
? (0, _utils_1.rtlInset)(railInsetVerticalRight)
|
|
547
|
+
: railInsetVerticalRight);
|
|
548
|
+
const { top: railTopVerticalLeft, right: railRightVerticalLeft, bottom: railBottomVerticalLeft, left: railLeftVerticalLeft } = (0, seemly_1.getPadding)((rtlEnabledRef === null || rtlEnabledRef === void 0 ? void 0 : rtlEnabledRef.value)
|
|
549
|
+
? (0, _utils_1.rtlInset)(railInsetVerticalLeft)
|
|
550
|
+
: railInsetVerticalLeft);
|
|
519
551
|
return {
|
|
520
552
|
'--u-scrollbar-bezier': cubicBezierEaseInOut,
|
|
521
553
|
'--u-scrollbar-color': color,
|
|
522
554
|
'--u-scrollbar-color-hover': colorHover,
|
|
523
|
-
'--u-scrollbar-border-radius':
|
|
524
|
-
'--u-scrollbar-width':
|
|
525
|
-
'--u-scrollbar-height':
|
|
555
|
+
'--u-scrollbar-border-radius': borderRadius,
|
|
556
|
+
'--u-scrollbar-width': width,
|
|
557
|
+
'--u-scrollbar-height': height,
|
|
558
|
+
'--u-scrollbar-rail-top-horizontal-top': railTopHorizontalTop,
|
|
559
|
+
'--u-scrollbar-rail-right-horizontal-top': railRightHorizontalTop,
|
|
560
|
+
'--u-scrollbar-rail-bottom-horizontal-top': railBottomHorizontalTop,
|
|
561
|
+
'--u-scrollbar-rail-left-horizontal-top': railLeftHorizontalTop,
|
|
562
|
+
'--u-scrollbar-rail-top-horizontal-bottom': railTopHorizontalBottom,
|
|
563
|
+
'--u-scrollbar-rail-right-horizontal-bottom': railRightHorizontalBottom,
|
|
564
|
+
'--u-scrollbar-rail-bottom-horizontal-bottom': railBottomHorizontalBottom,
|
|
565
|
+
'--u-scrollbar-rail-left-horizontal-bottom': railLeftHorizontalBottom,
|
|
566
|
+
'--u-scrollbar-rail-top-vertical-right': railTopVerticalRight,
|
|
567
|
+
'--u-scrollbar-rail-right-vertical-right': railRightVerticalRight,
|
|
568
|
+
'--u-scrollbar-rail-bottom-vertical-right': railBottomVerticalRight,
|
|
569
|
+
'--u-scrollbar-rail-left-vertical-right': railLeftVerticalRight,
|
|
570
|
+
'--u-scrollbar-rail-top-vertical-left': railTopVerticalLeft,
|
|
571
|
+
'--u-scrollbar-rail-right-vertical-left': railRightVerticalLeft,
|
|
572
|
+
'--u-scrollbar-rail-bottom-vertical-left': railBottomVerticalLeft,
|
|
573
|
+
'--u-scrollbar-rail-left-vertical-left': railLeftVerticalLeft,
|
|
574
|
+
'--u-scrollbar-rail-color': railColor
|
|
526
575
|
};
|
|
527
576
|
});
|
|
528
577
|
const themeClassHandle = inlineThemeDisabled
|
|
@@ -549,15 +598,18 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
549
598
|
},
|
|
550
599
|
render() {
|
|
551
600
|
var _a;
|
|
552
|
-
const { $slots, mergedClsPrefix, triggerDisplayManually, rtlEnabled, internalHoistYRail } = this;
|
|
553
|
-
if (!this.scrollable)
|
|
601
|
+
const { $slots, mergedClsPrefix, triggerDisplayManually, rtlEnabled, internalHoistYRail, yPlacement, xPlacement, xScrollable } = this;
|
|
602
|
+
if (!this.scrollable) {
|
|
554
603
|
return (_a = $slots.default) === null || _a === void 0 ? void 0 : _a.call($slots);
|
|
604
|
+
}
|
|
555
605
|
const triggerIsNone = this.trigger === 'none';
|
|
556
|
-
const createYRail = (style) => {
|
|
606
|
+
const createYRail = (className, style) => {
|
|
557
607
|
return ((0, vue_1.h)("div", { ref: "yRailRef", class: [
|
|
558
608
|
`${mergedClsPrefix}-scrollbar-rail`,
|
|
559
|
-
`${mergedClsPrefix}-scrollbar-rail--vertical
|
|
560
|
-
|
|
609
|
+
`${mergedClsPrefix}-scrollbar-rail--vertical`,
|
|
610
|
+
`${mergedClsPrefix}-scrollbar-rail--vertical--${yPlacement}`,
|
|
611
|
+
className
|
|
612
|
+
], "data-scrollbar-rail": true, style: [style || '', this.verticalRailStyle], "aria-hidden": true }, (0, vue_1.h)((triggerIsNone ? _utils_1.Wrapper : vue_1.Transition), triggerIsNone ? null : { name: 'fade-in-transition' }, {
|
|
561
613
|
default: () => this.needYBar && this.isShowYBar && !this.isIos ? ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-scrollbar-rail__scrollbar`, style: {
|
|
562
614
|
height: this.yBarSizePx,
|
|
563
615
|
top: this.yBarTopPx
|
|
@@ -598,10 +650,11 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
598
650
|
this.contentClass
|
|
599
651
|
] }, $slots))
|
|
600
652
|
}))),
|
|
601
|
-
internalHoistYRail ? null : createYRail(undefined),
|
|
602
|
-
|
|
653
|
+
internalHoistYRail ? null : createYRail(undefined, undefined),
|
|
654
|
+
xScrollable && ((0, vue_1.h)("div", { ref: "xRailRef", class: [
|
|
603
655
|
`${mergedClsPrefix}-scrollbar-rail`,
|
|
604
|
-
`${mergedClsPrefix}-scrollbar-rail--horizontal
|
|
656
|
+
`${mergedClsPrefix}-scrollbar-rail--horizontal`,
|
|
657
|
+
`${mergedClsPrefix}-scrollbar-rail--horizontal--${xPlacement}`
|
|
605
658
|
], style: this.horizontalRailStyle, "data-scrollbar-rail": true, "aria-hidden": true }, (0, vue_1.h)((triggerIsNone ? _utils_1.Wrapper : vue_1.Transition), triggerIsNone ? null : { name: 'fade-in-transition' }, {
|
|
606
659
|
default: () => this.needXBar && this.isShowXBar && !this.isIos ? ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-scrollbar-rail__scrollbar`, style: {
|
|
607
660
|
width: this.xBarSizePx,
|
|
@@ -617,7 +670,7 @@ const Scrollbar = (0, vue_1.defineComponent)({
|
|
|
617
670
|
if (internalHoistYRail) {
|
|
618
671
|
return ((0, vue_1.h)(vue_1.Fragment, null,
|
|
619
672
|
scrollbarNode,
|
|
620
|
-
createYRail(this.cssVars)));
|
|
673
|
+
createYRail(this.themeClass, this.cssVars)));
|
|
621
674
|
}
|
|
622
675
|
else {
|
|
623
676
|
return scrollbarNode;
|