@koi-design/uxd-ui 14.0.6 → 14.0.8
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/es/components/Card/Card.d.ts +9 -9
- package/es/components/Card/Card.mjs +19 -26
- package/es/components/Card/Card.mjs.map +1 -1
- package/es/components/Card/Card.type.d.ts +4 -4
- package/es/components/Card/Card.type.mjs +4 -4
- package/es/components/Card/Card.type.mjs.map +1 -1
- package/es/components/Card/index.d.ts +15 -15
- package/es/components/Cascader/Cascader.d.ts +3 -3
- package/es/components/Cascader/Cascader.mjs +2 -4
- package/es/components/Cascader/Cascader.mjs.map +1 -1
- package/es/components/Cascader/Cascader.type.d.ts +1 -1
- package/es/components/Cascader/Cascader.type.mjs +1 -1
- package/es/components/Cascader/Cascader.type.mjs.map +1 -1
- package/es/components/Cascader/CascaderMenu.mjs +4 -4
- package/es/components/Cascader/CascaderMenu.mjs.map +1 -1
- package/es/components/Cascader/index.d.ts +6 -6
- package/es/components/Checkbox/Checkbox.mjs +1 -0
- package/es/components/Checkbox/Checkbox.mjs.map +1 -1
- package/es/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/es/components/Checkbox/Checkbox.type.mjs +2 -1
- package/es/components/Checkbox/Checkbox.type.mjs.map +1 -1
- package/es/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/es/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/es/components/Checkbox/index.d.ts +7 -0
- package/es/components/DatePicker/DatePicker.mjs +2 -4
- package/es/components/DatePicker/DatePicker.mjs.map +1 -1
- package/es/components/DatePicker/Panel/DatePickerPanel.mjs +1 -0
- package/es/components/DatePicker/Panel/DatePickerPanel.mjs.map +1 -1
- package/es/components/Layout/Layout.type.d.ts +2 -7
- package/es/components/Layout/Layout.type.mjs +2 -7
- package/es/components/Layout/Layout.type.mjs.map +1 -1
- package/es/components/Layout/Sider.mjs +20 -16
- package/es/components/Layout/Sider.mjs.map +1 -1
- package/es/components/Layout/Sider.vue.d.ts +9 -17
- package/es/components/Layout/index.d.ts +9 -17
- package/es/components/Menu/Menu.d.ts +0 -11
- package/es/components/Menu/Menu.mjs +1 -3
- package/es/components/Menu/Menu.mjs.map +1 -1
- package/es/components/Menu/Menu.type.d.ts +0 -6
- package/es/components/Menu/Menu.type.mjs +0 -5
- package/es/components/Menu/Menu.type.mjs.map +1 -1
- package/es/components/Menu/SubMenu.mjs +1 -3
- package/es/components/Menu/SubMenu.mjs.map +1 -1
- package/es/components/Menu/SubMenu.vue.d.ts +0 -1
- package/es/components/Menu/index.d.ts +0 -19
- package/es/components/Progress/Circle.mjs +1 -3
- package/es/components/Progress/Circle.mjs.map +1 -1
- package/es/components/Progress/Progress.mjs +2 -3
- package/es/components/Progress/Progress.mjs.map +1 -1
- package/es/components/Progress/Progress.type.d.ts +1 -6
- package/es/components/Progress/Progress.type.mjs +0 -6
- package/es/components/Progress/Progress.type.mjs.map +1 -1
- package/es/components/Progress/Progress.vue.d.ts +0 -16
- package/es/components/Progress/index.d.ts +0 -33
- package/es/components/Select/RefSelect.vue.d.ts +7 -0
- package/es/components/Table/BaseTable.vue.d.ts +7 -19
- package/es/components/Table/BodyTable.vue.d.ts +7 -19
- package/es/components/Table/HeadTable.vue.d.ts +7 -19
- package/es/components/Table/Table.vue.d.ts +14 -38
- package/es/components/Table/TableBox.vue.d.ts +14 -38
- package/es/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
- package/es/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/es/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
- package/es/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
- package/es/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
- package/es/components/Transfer/Operation.mjs +6 -4
- package/es/components/Transfer/Operation.mjs.map +1 -1
- package/es/components/Transfer/Transfer.mjs +2 -4
- package/es/components/Transfer/Transfer.mjs.map +1 -1
- package/es/components/Transfer/Transfer.type.d.ts +0 -5
- package/es/components/Transfer/Transfer.type.mjs +1 -8
- package/es/components/Transfer/Transfer.type.mjs.map +1 -1
- package/es/components/Transfer/Transfer.vue.d.ts +42 -11
- package/es/components/Transfer/TransferList.mjs +14 -10
- package/es/components/Transfer/TransferList.mjs.map +1 -1
- package/es/components/Transfer/TransferList.vue.d.ts +14 -0
- package/es/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/es/components/Transfer/index.d.ts +112 -18
- package/es/components/Tree/SubTree.vue.d.ts +7 -0
- package/es/components/Tree/Tree.vue.d.ts +7 -0
- package/es/components/Tree/TreeNode.vue.d.ts +7 -0
- package/es/components/Tree/index.d.ts +14 -0
- package/es/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/es/components/TreeSelect/index.d.ts +28 -0
- package/es/components/Upload/UploadList.vue.d.ts +0 -33
- package/es/components/base/CollapseTransition.mjs +0 -16
- package/es/components/base/CollapseTransition.mjs.map +1 -1
- package/es/components/base/hooks/useGlobalConfig.d.ts +1 -0
- package/es/components/locale/default.d.ts +1 -0
- package/es/components/locale/default.mjs.map +1 -1
- package/lib/components/Card/Card.d.ts +9 -9
- package/lib/components/Card/Card.js +22 -29
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/components/Card/Card.type.d.ts +4 -4
- package/lib/components/Card/Card.type.js +4 -4
- package/lib/components/Card/Card.type.js.map +1 -1
- package/lib/components/Card/index.d.ts +15 -15
- package/lib/components/Cascader/Cascader.d.ts +3 -3
- package/lib/components/Cascader/Cascader.js +2 -4
- package/lib/components/Cascader/Cascader.js.map +1 -1
- package/lib/components/Cascader/Cascader.type.d.ts +1 -1
- package/lib/components/Cascader/Cascader.type.js +1 -1
- package/lib/components/Cascader/Cascader.type.js.map +1 -1
- package/lib/components/Cascader/CascaderMenu.js +3 -3
- package/lib/components/Cascader/CascaderMenu.js.map +1 -1
- package/lib/components/Cascader/index.d.ts +6 -6
- package/lib/components/Checkbox/Checkbox.js +1 -0
- package/lib/components/Checkbox/Checkbox.js.map +1 -1
- package/lib/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/lib/components/Checkbox/Checkbox.type.js +2 -1
- package/lib/components/Checkbox/Checkbox.type.js.map +1 -1
- package/lib/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/lib/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/lib/components/Checkbox/index.d.ts +7 -0
- package/lib/components/DatePicker/DatePicker.js +2 -4
- package/lib/components/DatePicker/DatePicker.js.map +1 -1
- package/lib/components/DatePicker/Panel/DatePickerPanel.js +1 -0
- package/lib/components/DatePicker/Panel/DatePickerPanel.js.map +1 -1
- package/lib/components/Layout/Layout.type.d.ts +2 -7
- package/lib/components/Layout/Layout.type.js +2 -7
- package/lib/components/Layout/Layout.type.js.map +1 -1
- package/lib/components/Layout/Sider.js +19 -15
- package/lib/components/Layout/Sider.js.map +1 -1
- package/lib/components/Layout/Sider.vue.d.ts +9 -17
- package/lib/components/Layout/index.d.ts +9 -17
- package/lib/components/Menu/Menu.d.ts +0 -11
- package/lib/components/Menu/Menu.js +1 -3
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/Menu/Menu.type.d.ts +0 -6
- package/lib/components/Menu/Menu.type.js +0 -5
- package/lib/components/Menu/Menu.type.js.map +1 -1
- package/lib/components/Menu/SubMenu.js +1 -3
- package/lib/components/Menu/SubMenu.js.map +1 -1
- package/lib/components/Menu/SubMenu.vue.d.ts +0 -1
- package/lib/components/Menu/index.d.ts +0 -19
- package/lib/components/Progress/Circle.js +1 -3
- package/lib/components/Progress/Circle.js.map +1 -1
- package/lib/components/Progress/Progress.js +2 -3
- package/lib/components/Progress/Progress.js.map +1 -1
- package/lib/components/Progress/Progress.type.d.ts +1 -6
- package/lib/components/Progress/Progress.type.js +0 -6
- package/lib/components/Progress/Progress.type.js.map +1 -1
- package/lib/components/Progress/Progress.vue.d.ts +0 -16
- package/lib/components/Progress/index.d.ts +0 -33
- package/lib/components/Select/RefSelect.vue.d.ts +7 -0
- package/lib/components/Table/BaseTable.vue.d.ts +7 -19
- package/lib/components/Table/BodyTable.vue.d.ts +7 -19
- package/lib/components/Table/HeadTable.vue.d.ts +7 -19
- package/lib/components/Table/Table.vue.d.ts +14 -38
- package/lib/components/Table/TableBox.vue.d.ts +14 -38
- package/lib/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
- package/lib/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/lib/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
- package/lib/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
- package/lib/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
- package/lib/components/Transfer/Operation.js +6 -4
- package/lib/components/Transfer/Operation.js.map +1 -1
- package/lib/components/Transfer/Transfer.js +2 -4
- package/lib/components/Transfer/Transfer.js.map +1 -1
- package/lib/components/Transfer/Transfer.type.d.ts +0 -5
- package/lib/components/Transfer/Transfer.type.js +0 -7
- package/lib/components/Transfer/Transfer.type.js.map +1 -1
- package/lib/components/Transfer/Transfer.vue.d.ts +42 -11
- package/lib/components/Transfer/TransferList.js +14 -10
- package/lib/components/Transfer/TransferList.js.map +1 -1
- package/lib/components/Transfer/TransferList.vue.d.ts +14 -0
- package/lib/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/lib/components/Transfer/index.d.ts +112 -18
- package/lib/components/Tree/SubTree.vue.d.ts +7 -0
- package/lib/components/Tree/Tree.vue.d.ts +7 -0
- package/lib/components/Tree/TreeNode.vue.d.ts +7 -0
- package/lib/components/Tree/index.d.ts +14 -0
- package/lib/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/lib/components/TreeSelect/index.d.ts +28 -0
- package/lib/components/Upload/UploadList.vue.d.ts +0 -33
- package/lib/components/base/CollapseTransition.js +0 -16
- package/lib/components/base/CollapseTransition.js.map +1 -1
- package/lib/components/base/hooks/useGlobalConfig.d.ts +1 -0
- package/lib/components/locale/default.d.ts +1 -0
- package/lib/components/locale/default.js.map +1 -1
- package/package.json +1 -1
- package/styles/components/alert/index.css +1 -1
- package/styles/components/autoComplete/index.css +1 -1
- package/styles/components/avatar/index.css +1 -1
- package/styles/components/breadcrumb/index.css +1 -1
- package/styles/components/breadcrumb/index.less +5 -6
- package/styles/components/breadcrumb/var.less +4 -6
- package/styles/components/button/index.css +1 -1
- package/styles/components/card/index.css +1 -1
- package/styles/components/card/index.less +64 -70
- package/styles/components/card/var.less +4 -13
- package/styles/components/carousel/index.css +1 -1
- package/styles/components/carousel/index.less +38 -35
- package/styles/components/carousel/var.less +6 -19
- package/styles/components/cascader/index.css +1 -1
- package/styles/components/cascader/index.less +20 -32
- package/styles/components/datePicker/index.css +1 -1
- package/styles/components/form/index.css +1 -1
- package/styles/components/icon/index.css +1 -1
- package/styles/components/input/index.css +1 -1
- package/styles/components/inputNumber/index.css +1 -1
- package/styles/components/layout/index.css +1 -1
- package/styles/components/layout/index.less +40 -55
- package/styles/components/layout/var.less +9 -41
- package/styles/components/link/index.css +1 -1
- package/styles/components/mentions/index.css +1 -1
- package/styles/components/menu/index.css +1 -1
- package/styles/components/menu/index.less +63 -207
- package/styles/components/menu/var.less +40 -69
- package/styles/components/modal/index.css +1 -1
- package/styles/components/progress/index.css +1 -1
- package/styles/components/progress/index.less +42 -56
- package/styles/components/progress/var.less +3 -4
- package/styles/components/select/index.css +1 -1
- package/styles/components/spin/index.css +1 -1
- package/styles/components/timePicker/index.css +1 -1
- package/styles/components/transfer/index.css +1 -1
- package/styles/components/transfer/index.less +38 -42
- package/styles/components/transfer/var.less +8 -42
- package/styles/components/tree/index.css +1 -1
- package/styles/components/tree/index.less +17 -27
- package/styles/components/tree/var.less +5 -16
- package/styles/cssVariable.css +1 -1
- package/styles/cssVariable.less +8 -8
- package/styles/index.css +1 -1
- package/styles/tokens/typography.css +1 -1
- package/types/components/Card/Card.d.ts +9 -9
- package/types/components/Card/Card.type.d.ts +4 -4
- package/types/components/Card/index.d.ts +15 -15
- package/types/components/Cascader/Cascader.d.ts +3 -3
- package/types/components/Cascader/Cascader.type.d.ts +1 -1
- package/types/components/Cascader/index.d.ts +6 -6
- package/types/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/types/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/types/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/types/components/Checkbox/index.d.ts +7 -0
- package/types/components/Layout/Layout.type.d.ts +2 -7
- package/types/components/Layout/Sider.vue.d.ts +9 -17
- package/types/components/Layout/index.d.ts +9 -17
- package/types/components/Menu/Menu.d.ts +0 -11
- package/types/components/Menu/Menu.type.d.ts +0 -6
- package/types/components/Menu/SubMenu.vue.d.ts +0 -1
- package/types/components/Menu/index.d.ts +0 -19
- package/types/components/Progress/Progress.type.d.ts +1 -6
- package/types/components/Progress/Progress.vue.d.ts +0 -16
- package/types/components/Progress/index.d.ts +0 -33
- package/types/components/Select/RefSelect.vue.d.ts +7 -0
- package/types/components/Table/BaseTable.vue.d.ts +7 -19
- package/types/components/Table/BodyTable.vue.d.ts +7 -19
- package/types/components/Table/HeadTable.vue.d.ts +7 -19
- package/types/components/Table/Table.vue.d.ts +14 -38
- package/types/components/Table/TableBox.vue.d.ts +14 -38
- package/types/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
- package/types/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/types/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
- package/types/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
- package/types/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
- package/types/components/Transfer/Transfer.type.d.ts +0 -5
- package/types/components/Transfer/Transfer.vue.d.ts +42 -11
- package/types/components/Transfer/TransferList.vue.d.ts +14 -0
- package/types/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/types/components/Transfer/index.d.ts +112 -18
- package/types/components/Tree/SubTree.vue.d.ts +7 -0
- package/types/components/Tree/Tree.vue.d.ts +7 -0
- package/types/components/Tree/TreeNode.vue.d.ts +7 -0
- package/types/components/Tree/index.d.ts +14 -0
- package/types/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/types/components/TreeSelect/index.d.ts +28 -0
- package/types/components/Upload/UploadList.vue.d.ts +0 -33
- package/types/components/base/hooks/useGlobalConfig.d.ts +1 -0
- package/types/components/locale/default.d.ts +1 -0
- package/uxd-ui.css +1 -1
- package/uxd-ui.esm.min.mjs +6 -6
- package/uxd-ui.esm.mjs +513 -555
- package/uxd-ui.umd.js +512 -554
- package/uxd-ui.umd.min.js +6 -6
|
@@ -56,7 +56,7 @@ export declare const ULayout: {
|
|
|
56
56
|
type: BooleanConstructor;
|
|
57
57
|
default: undefined;
|
|
58
58
|
};
|
|
59
|
-
|
|
59
|
+
isRight: {
|
|
60
60
|
type: BooleanConstructor;
|
|
61
61
|
default: boolean;
|
|
62
62
|
};
|
|
@@ -74,7 +74,7 @@ export declare const ULayout: {
|
|
|
74
74
|
type: (StringConstructor | NumberConstructor)[];
|
|
75
75
|
default: number;
|
|
76
76
|
};
|
|
77
|
-
|
|
77
|
+
collapsedWidth: {
|
|
78
78
|
type: (StringConstructor | NumberConstructor)[];
|
|
79
79
|
default: number;
|
|
80
80
|
};
|
|
@@ -82,11 +82,6 @@ export declare const ULayout: {
|
|
|
82
82
|
type: import("vue").PropType<"xxl" | "xl" | "lg" | "md" | "sm" | "xs">;
|
|
83
83
|
validator: (val: "xxl" | "xl" | "lg" | "md" | "sm" | "xs") => boolean;
|
|
84
84
|
};
|
|
85
|
-
theme: {
|
|
86
|
-
type: import("vue").PropType<"light" | "dark">;
|
|
87
|
-
default: string;
|
|
88
|
-
validator: (val: "light" | "dark") => boolean;
|
|
89
|
-
};
|
|
90
85
|
background: {
|
|
91
86
|
type: StringConstructor;
|
|
92
87
|
};
|
|
@@ -112,7 +107,7 @@ export declare const ULayout: {
|
|
|
112
107
|
type: BooleanConstructor;
|
|
113
108
|
default: undefined;
|
|
114
109
|
};
|
|
115
|
-
|
|
110
|
+
isRight: {
|
|
116
111
|
type: BooleanConstructor;
|
|
117
112
|
default: boolean;
|
|
118
113
|
};
|
|
@@ -130,7 +125,7 @@ export declare const ULayout: {
|
|
|
130
125
|
type: (StringConstructor | NumberConstructor)[];
|
|
131
126
|
default: number;
|
|
132
127
|
};
|
|
133
|
-
|
|
128
|
+
collapsedWidth: {
|
|
134
129
|
type: (StringConstructor | NumberConstructor)[];
|
|
135
130
|
default: number;
|
|
136
131
|
};
|
|
@@ -138,11 +133,6 @@ export declare const ULayout: {
|
|
|
138
133
|
type: import("vue").PropType<"xxl" | "xl" | "lg" | "md" | "sm" | "xs">;
|
|
139
134
|
validator: (val: "xxl" | "xl" | "lg" | "md" | "sm" | "xs") => boolean;
|
|
140
135
|
};
|
|
141
|
-
theme: {
|
|
142
|
-
type: import("vue").PropType<"light" | "dark">;
|
|
143
|
-
default: string;
|
|
144
|
-
validator: (val: "light" | "dark") => boolean;
|
|
145
|
-
};
|
|
146
136
|
background: {
|
|
147
137
|
type: StringConstructor;
|
|
148
138
|
};
|
|
@@ -154,11 +144,10 @@ export declare const ULayout: {
|
|
|
154
144
|
width: string | number;
|
|
155
145
|
collapsible: boolean;
|
|
156
146
|
collapsed: boolean;
|
|
157
|
-
|
|
147
|
+
isRight: boolean;
|
|
158
148
|
hideTrigger: boolean;
|
|
159
149
|
zeroTrigger: boolean;
|
|
160
|
-
|
|
161
|
-
theme: "light" | "dark";
|
|
150
|
+
collapsedWidth: string | number;
|
|
162
151
|
}, {}, {
|
|
163
152
|
UIcon: {
|
|
164
153
|
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
|
|
@@ -292,6 +281,9 @@ export declare const ULayout: {
|
|
|
292
281
|
spin: boolean;
|
|
293
282
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin<any[]> & Record<string, any>;
|
|
294
283
|
PanelLeft: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
|
|
284
|
+
PanelRight: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
|
|
285
|
+
ChevronLeft: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
|
|
286
|
+
ChevronRight: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
|
|
295
287
|
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
296
288
|
Content: import("vue").DefineComponent<{}, {
|
|
297
289
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -5,11 +5,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
5
5
|
default: string;
|
|
6
6
|
validator: (val: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right") => boolean;
|
|
7
7
|
};
|
|
8
|
-
theme: {
|
|
9
|
-
type: import("vue").PropType<"dark" | "light">;
|
|
10
|
-
default: string;
|
|
11
|
-
validator: (val: "dark" | "light") => boolean;
|
|
12
|
-
};
|
|
13
8
|
selectedKeys: {
|
|
14
9
|
type: import("vue").PropType<(string | number)[]>;
|
|
15
10
|
validator: (val: any[]) => boolean;
|
|
@@ -63,11 +58,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
63
58
|
default: string;
|
|
64
59
|
validator: (val: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right") => boolean;
|
|
65
60
|
};
|
|
66
|
-
theme: {
|
|
67
|
-
type: import("vue").PropType<"dark" | "light">;
|
|
68
|
-
default: string;
|
|
69
|
-
validator: (val: "dark" | "light") => boolean;
|
|
70
|
-
};
|
|
71
61
|
selectedKeys: {
|
|
72
62
|
type: import("vue").PropType<(string | number)[]>;
|
|
73
63
|
validator: (val: any[]) => boolean;
|
|
@@ -112,7 +102,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
112
102
|
}>, {
|
|
113
103
|
multiple: boolean;
|
|
114
104
|
mode: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right";
|
|
115
|
-
theme: "dark" | "light";
|
|
116
105
|
openKeys: (string | number)[];
|
|
117
106
|
subMenuOpenDelay: number;
|
|
118
107
|
subMenuCloseDelay: number;
|
|
@@ -31,7 +31,6 @@ var Menu = vue.defineComponent({
|
|
|
31
31
|
} = useGlobalConfig["default"](inDrop ? "dropdown-menu" : "menu");
|
|
32
32
|
const {
|
|
33
33
|
mode,
|
|
34
|
-
theme,
|
|
35
34
|
subMenuOpenDelay,
|
|
36
35
|
subMenuCloseDelay,
|
|
37
36
|
inlineCollapsed
|
|
@@ -164,7 +163,6 @@ var Menu = vue.defineComponent({
|
|
|
164
163
|
vue.provide("menuStore", {
|
|
165
164
|
mode: computedMode,
|
|
166
165
|
originalMode: mode,
|
|
167
|
-
theme,
|
|
168
166
|
selectedKeys,
|
|
169
167
|
openKeys,
|
|
170
168
|
subMenuOpenDelay,
|
|
@@ -195,7 +193,7 @@ var Menu = vue.defineComponent({
|
|
|
195
193
|
return vue.createVNode("ul", {
|
|
196
194
|
"ref": "rootMenu",
|
|
197
195
|
"role": this.role || "menu",
|
|
198
|
-
"class": [`${this.computedPrefixCls}`, `${this.computedPrefixCls}-${this.computedMode}`, `${this.computedPrefixCls}-root`,
|
|
196
|
+
"class": [`${this.computedPrefixCls}`, `${this.computedPrefixCls}-${this.computedMode}`, `${this.computedPrefixCls}-root`, {
|
|
199
197
|
[`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed
|
|
200
198
|
}]
|
|
201
199
|
}, [this.renderChild()]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import { defineComponent, provide, inject, ref, toRefs, watch, computed } from 'vue';\nimport warn from '../../utils/warn';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Render from '../base/Render';\nimport useWrapDom from './hooks/useWrapDom';\nimport type { DropdownContext } from '../Dropdown/Dropdown.type';\nimport type { LayoutSiderContext } from '../Layout/Layout.type';\nimport { menuProps, menuEmits, type MenuItemClickEvent, type MenuClickEvent, type MenuOpenEvent } from './Menu.type';\n\nexport default defineComponent({\n name: 'UMenu',\n components: { Render },\n props: menuProps,\n emits: menuEmits,\n setup(props, { emit, slots }) {\n const dropdownContext = inject<DropdownContext | undefined>('dropdownContext', undefined);\n const layoutSiderContext = inject<LayoutSiderContext>('layoutSiderContext', {} as LayoutSiderContext);\n const inDrop = dropdownContext !== undefined;\n const { collapsed: layoutSiderCollapsed } = layoutSiderContext;\n const { prefixCls: statePrefixCls } = useGlobalConfig(inDrop ? 'dropdown-menu' : 'menu');\n const { mode, theme, subMenuOpenDelay, subMenuCloseDelay, inlineCollapsed } = toRefs(props);\n\n const computedPrefixCls = computed(() => props.prefixCls || statePrefixCls.value);\n if (props.mode !== 'inline' && props.inlineCollapsed !== undefined) {\n warn('inlineCollapsed only use in inline mode!');\n }\n const selectedKeys = ref(props.selectedKeys || []);\n const openKeys = ref(!props.inlineCollapsed && props.openKeys ? props.openKeys : []);\n const inlineOpenKeys = ref(props.inlineCollapsed ? props.openKeys : []);\n\n const rootMenu = ref<any | null>(null);\n let keypath: (string | number)[] = [];\n\n // const computedMode = computed(() => {\n // if (props.mode === 'inline') {\n // return props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n // }\n // return props.mode;\n // });\n const computedMode = ref(props.mode);\n const setInlineMode = () => {\n if (props.mode === 'inline') {\n computedMode.value = props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n }\n };\n setInlineMode();\n const collapsed = ref(false);\n // const handleTransitionEnd = (e: any) => {\n // if (e.target !== rootMenu.value || e.propertyName !== 'width') {\n // return;\n // }\n // if (props.mode === 'inline') {\n // if (props.inlineCollapsed || layoutSiderCollapsed?.value) {\n // computedMode.value = 'vertical';\n // inlineOpenKeys.value = openKeys.value;\n // openKeys.value = [];\n // collapsed.value = true;\n // } else {\n // computedMode.value = 'inline';\n // openKeys.value = inlineOpenKeys.value;\n // inlineOpenKeys.value = [];\n // collapsed.value = false;\n // }\n // }\n // };\n\n // #region methods\n const collapsedChange = (val: boolean) => {\n setTimeout(() => {\n setInlineMode();\n }, 300);\n\n if (val) {\n inlineOpenKeys.value = openKeys.value;\n openKeys.value = [];\n collapsed.value = true;\n } else {\n openKeys.value = inlineOpenKeys.value;\n inlineOpenKeys.value = [];\n collapsed.value = false;\n }\n };\n\n const updateKeyPath = (key: string | number, type: string) => {\n if (type === 'item') {\n keypath = [key];\n } else if (type === 'sub') {\n keypath.push(key);\n }\n };\n\n const fireMenuClick = (event: MenuItemClickEvent) => {\n const info: MenuClickEvent = {\n ...event,\n keypath\n };\n emit('click', info);\n if (dropdownContext && dropdownContext.fireItemClick && info.key) {\n dropdownContext.fireItemClick(info);\n }\n };\n\n const selectable = computed(() => {\n return !inDrop || !!props.selectable;\n });\n\n const fireMenuDeselect = (event: MenuItemClickEvent) => {\n if (selectable.value && props.multiple) {\n const _selectedKeys = selectedKeys.value.filter((x) => x !== event.key);\n\n emit('deselect', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuSelect = (event: MenuItemClickEvent) => {\n if (selectable.value) {\n let _selectedKeys = [] as (string | number)[];\n if (props.multiple) {\n _selectedKeys = [...selectedKeys.value, event.key];\n } else {\n _selectedKeys = [event.key];\n }\n emit('select', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuOpenChange = (event: MenuOpenEvent) => {\n const { open, key } = event;\n let _openKeys = openKeys.value;\n if (open) {\n _openKeys = [..._openKeys, key];\n } else {\n _openKeys = _openKeys.filter((x) => x !== key);\n }\n emit('open-change', _openKeys, event);\n openKeys.value = _openKeys;\n emit('update:openKeys', _openKeys);\n };\n // #endregion\n\n watch(\n () => props.selectedKeys,\n (val) => {\n selectedKeys.value = val || [];\n }\n );\n\n watch(\n () => props.openKeys,\n (val) => {\n openKeys.value = val;\n }\n );\n watch(\n () => props.inlineCollapsed,\n (val) => {\n if (val !== undefined) {\n collapsedChange(val);\n }\n }\n );\n\n if (layoutSiderContext && layoutSiderCollapsed) {\n watch(layoutSiderCollapsed, (val) => {\n collapsedChange(val);\n });\n }\n\n // #region provides\n // just children to use it\n provide('parentMenu', {\n isRootMenu: true,\n getPopupContainer: () => {\n if (dropdownContext) {\n return rootMenu.value?.parentNode;\n }\n return document.body;\n }\n });\n // rootMenu's props supply to descendants use\n provide('menuStore', {\n mode: computedMode,\n originalMode: mode,\n theme,\n selectedKeys,\n openKeys,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls: computedPrefixCls,\n updateKeyPath,\n // inlineIndent,\n inlineCollapsed,\n collapsed\n });\n // descendants trigger rootMenu's events\n provide('menuEvent', {\n fireMenuClick,\n fireMenuDeselect,\n fireMenuSelect,\n fireMenuOpenChange\n });\n // #endregion\n\n const { renderChild } = useWrapDom(props.mode, rootMenu, slots);\n\n return {\n rootMenu,\n computedPrefixCls,\n computedMode,\n layoutSiderCollapsed,\n renderChild\n };\n },\n render() {\n return (\n <ul\n ref=\"rootMenu\"\n role={this.role || 'menu'}\n class={[\n `${this.computedPrefixCls}`,\n `${this.computedPrefixCls}-${this.computedMode}`,\n `${this.computedPrefixCls}-root`,\n `${this.computedPrefixCls}-${this.theme}`,\n {\n [`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed\n }\n ]}\n >\n {this.renderChild()}\n </ul>\n );\n }\n});\n"],"names":["defineComponent","name","components","Render","props","menuProps","emits","menuEmits","setup","emit","slots","dropdownContext","inject","undefined","layoutSiderContext","inDrop","collapsed","layoutSiderCollapsed","prefixCls","statePrefixCls","useGlobalConfig","mode","theme","subMenuOpenDelay","subMenuCloseDelay","inlineCollapsed","toRefs","computedPrefixCls","computed","value","warn","selectedKeys","ref","openKeys","inlineOpenKeys","rootMenu","keypath","computedMode","setInlineMode","collapsedChange","val","setTimeout","updateKeyPath","key","type","push","fireMenuClick","event","info","fireItemClick","selectable","fireMenuDeselect","multiple","_selectedKeys","filter","x","item","fireMenuSelect","fireMenuOpenChange","open","_openKeys","watch","provide","isRootMenu","getPopupContainer","parentNode","document","body","originalMode","rootPrefixCls","renderChild","useWrapDom","render","_createVNode","role"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Menu.js","sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import { defineComponent, provide, inject, ref, toRefs, watch, computed } from 'vue';\nimport warn from '../../utils/warn';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Render from '../base/Render';\nimport useWrapDom from './hooks/useWrapDom';\nimport type { DropdownContext } from '../Dropdown/Dropdown.type';\nimport type { LayoutSiderContext } from '../Layout/Layout.type';\nimport { menuProps, menuEmits, type MenuItemClickEvent, type MenuClickEvent, type MenuOpenEvent } from './Menu.type';\n\nexport default defineComponent({\n name: 'UMenu',\n components: { Render },\n props: menuProps,\n emits: menuEmits,\n setup(props, { emit, slots }) {\n const dropdownContext = inject<DropdownContext | undefined>('dropdownContext', undefined);\n const layoutSiderContext = inject<LayoutSiderContext>('layoutSiderContext', {} as LayoutSiderContext);\n const inDrop = dropdownContext !== undefined;\n const { collapsed: layoutSiderCollapsed } = layoutSiderContext;\n const { prefixCls: statePrefixCls } = useGlobalConfig(inDrop ? 'dropdown-menu' : 'menu');\n const { mode, subMenuOpenDelay, subMenuCloseDelay, inlineCollapsed } = toRefs(props);\n\n const computedPrefixCls = computed(() => props.prefixCls || statePrefixCls.value);\n if (props.mode !== 'inline' && props.inlineCollapsed !== undefined) {\n warn('inlineCollapsed only use in inline mode!');\n }\n const selectedKeys = ref(props.selectedKeys || []);\n const openKeys = ref(!props.inlineCollapsed && props.openKeys ? props.openKeys : []);\n const inlineOpenKeys = ref(props.inlineCollapsed ? props.openKeys : []);\n\n const rootMenu = ref<any | null>(null);\n let keypath: (string | number)[] = [];\n\n // const computedMode = computed(() => {\n // if (props.mode === 'inline') {\n // return props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n // }\n // return props.mode;\n // });\n const computedMode = ref(props.mode);\n const setInlineMode = () => {\n if (props.mode === 'inline') {\n computedMode.value = props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n }\n };\n setInlineMode();\n const collapsed = ref(false);\n // const handleTransitionEnd = (e: any) => {\n // if (e.target !== rootMenu.value || e.propertyName !== 'width') {\n // return;\n // }\n // if (props.mode === 'inline') {\n // if (props.inlineCollapsed || layoutSiderCollapsed?.value) {\n // computedMode.value = 'vertical';\n // inlineOpenKeys.value = openKeys.value;\n // openKeys.value = [];\n // collapsed.value = true;\n // } else {\n // computedMode.value = 'inline';\n // openKeys.value = inlineOpenKeys.value;\n // inlineOpenKeys.value = [];\n // collapsed.value = false;\n // }\n // }\n // };\n\n // #region methods\n const collapsedChange = (val: boolean) => {\n setTimeout(() => {\n setInlineMode();\n }, 300);\n\n if (val) {\n inlineOpenKeys.value = openKeys.value;\n openKeys.value = [];\n collapsed.value = true;\n } else {\n openKeys.value = inlineOpenKeys.value;\n inlineOpenKeys.value = [];\n collapsed.value = false;\n }\n };\n\n const updateKeyPath = (key: string | number, type: string) => {\n if (type === 'item') {\n keypath = [key];\n } else if (type === 'sub') {\n keypath.push(key);\n }\n };\n\n const fireMenuClick = (event: MenuItemClickEvent) => {\n const info: MenuClickEvent = {\n ...event,\n keypath\n };\n emit('click', info);\n if (dropdownContext && dropdownContext.fireItemClick && info.key) {\n dropdownContext.fireItemClick(info);\n }\n };\n\n const selectable = computed(() => {\n return !inDrop || !!props.selectable;\n });\n\n const fireMenuDeselect = (event: MenuItemClickEvent) => {\n if (selectable.value && props.multiple) {\n const _selectedKeys = selectedKeys.value.filter((x) => x !== event.key);\n\n emit('deselect', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuSelect = (event: MenuItemClickEvent) => {\n if (selectable.value) {\n let _selectedKeys = [] as (string | number)[];\n if (props.multiple) {\n _selectedKeys = [...selectedKeys.value, event.key];\n } else {\n _selectedKeys = [event.key];\n }\n emit('select', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuOpenChange = (event: MenuOpenEvent) => {\n const { open, key } = event;\n let _openKeys = openKeys.value;\n if (open) {\n _openKeys = [..._openKeys, key];\n } else {\n _openKeys = _openKeys.filter((x) => x !== key);\n }\n emit('open-change', _openKeys, event);\n openKeys.value = _openKeys;\n emit('update:openKeys', _openKeys);\n };\n // #endregion\n\n watch(\n () => props.selectedKeys,\n (val) => {\n selectedKeys.value = val || [];\n }\n );\n\n watch(\n () => props.openKeys,\n (val) => {\n openKeys.value = val;\n }\n );\n watch(\n () => props.inlineCollapsed,\n (val) => {\n if (val !== undefined) {\n collapsedChange(val);\n }\n }\n );\n\n if (layoutSiderContext && layoutSiderCollapsed) {\n watch(layoutSiderCollapsed, (val) => {\n collapsedChange(val);\n });\n }\n\n // #region provides\n // just children to use it\n provide('parentMenu', {\n isRootMenu: true,\n getPopupContainer: () => {\n if (dropdownContext) {\n return rootMenu.value?.parentNode;\n }\n return document.body;\n }\n });\n // rootMenu's props supply to descendants use\n provide('menuStore', {\n mode: computedMode,\n originalMode: mode,\n selectedKeys,\n openKeys,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls: computedPrefixCls,\n updateKeyPath,\n // inlineIndent,\n inlineCollapsed,\n collapsed\n });\n // descendants trigger rootMenu's events\n provide('menuEvent', {\n fireMenuClick,\n fireMenuDeselect,\n fireMenuSelect,\n fireMenuOpenChange\n });\n // #endregion\n\n const { renderChild } = useWrapDom(props.mode, rootMenu, slots);\n\n return {\n rootMenu,\n computedPrefixCls,\n computedMode,\n layoutSiderCollapsed,\n renderChild\n };\n },\n render() {\n return (\n <ul\n ref=\"rootMenu\"\n role={this.role || 'menu'}\n class={[\n `${this.computedPrefixCls}`,\n `${this.computedPrefixCls}-${this.computedMode}`,\n `${this.computedPrefixCls}-root`,\n {\n [`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed\n }\n ]}\n >\n {this.renderChild()}\n </ul>\n );\n }\n});\n"],"names":["defineComponent","name","components","Render","props","menuProps","emits","menuEmits","setup","emit","slots","dropdownContext","inject","undefined","layoutSiderContext","inDrop","collapsed","layoutSiderCollapsed","prefixCls","statePrefixCls","useGlobalConfig","mode","subMenuOpenDelay","subMenuCloseDelay","inlineCollapsed","toRefs","computedPrefixCls","computed","value","warn","selectedKeys","ref","openKeys","inlineOpenKeys","rootMenu","keypath","computedMode","setInlineMode","collapsedChange","val","setTimeout","updateKeyPath","key","type","push","fireMenuClick","event","info","fireItemClick","selectable","fireMenuDeselect","multiple","_selectedKeys","filter","x","item","fireMenuSelect","fireMenuOpenChange","open","_openKeys","watch","provide","isRootMenu","getPopupContainer","parentNode","document","body","originalMode","rootPrefixCls","renderChild","useWrapDom","render","_createVNode","role"],"mappings":"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"}
|
|
@@ -15,11 +15,6 @@ export declare const menuProps: {
|
|
|
15
15
|
default: string;
|
|
16
16
|
validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
|
|
17
17
|
};
|
|
18
|
-
theme: {
|
|
19
|
-
type: PropType<"light" | "dark">;
|
|
20
|
-
default: string;
|
|
21
|
-
validator: (val: "light" | "dark") => boolean;
|
|
22
|
-
};
|
|
23
18
|
selectedKeys: {
|
|
24
19
|
type: PropType<(string | number)[]>;
|
|
25
20
|
validator: (val: any[]) => boolean;
|
|
@@ -67,7 +62,6 @@ export interface ParentMenu {
|
|
|
67
62
|
export interface MenuStore {
|
|
68
63
|
mode: ComputedRef<MenuMode>;
|
|
69
64
|
originalMode: Ref<MenuMode>;
|
|
70
|
-
theme: Ref<MenuTheme>;
|
|
71
65
|
selectedKeys: Ref<(string | number)[]>;
|
|
72
66
|
openKeys: Ref<(string | number)[]>;
|
|
73
67
|
subMenuOpenDelay: Ref<number>;
|
|
@@ -14,11 +14,6 @@ const menuProps = {
|
|
|
14
14
|
default: "vertical",
|
|
15
15
|
validator: propsValidators.oneOf(menuMode)
|
|
16
16
|
},
|
|
17
|
-
theme: {
|
|
18
|
-
type: String,
|
|
19
|
-
default: "light",
|
|
20
|
-
validator: propsValidators.oneOf(menuTheme)
|
|
21
|
-
},
|
|
22
17
|
selectedKeys: {
|
|
23
18
|
type: Array,
|
|
24
19
|
validator: propsValidators.isArrayOf([Number, String])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.type.js","sources":["../../../../src/components/Menu/Menu.type.ts"],"sourcesContent":["import type { Ref, ComputedRef, PropType, ExtractPropTypes } from 'vue';\nimport type { GetPopupContainer, PopupTrigger } from '@uxd-ui/components/Popup/Popup.type';\nimport { isArrayOf, oneOf } from '../../utils/propsValidators';\n\nimport type Menu from './Menu';\n\nimport type MenuItem from './MenuItem.vue';\n\nimport type SubMenu from './SubMenu.vue';\n\nimport type MenuItemGroup from './MenuItemGroup.vue';\n\nimport type MenuDivider from './MenuDivider.vue';\nimport type { ColorType } from '../../utils';\nimport { colorType } from '../../utils';\n\nexport const menuMode = ['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline'] as const;\nexport type MenuMode = (typeof menuMode)[number];\nexport const menuTheme = ['light', 'dark'] as const;\nexport type MenuTheme = (typeof menuTheme)[number];\n\nexport const menuProps = {\n mode: {\n type: String as PropType<MenuMode>,\n default: 'vertical',\n validator: oneOf(menuMode)\n },\n
|
|
1
|
+
{"version":3,"file":"Menu.type.js","sources":["../../../../src/components/Menu/Menu.type.ts"],"sourcesContent":["import type { Ref, ComputedRef, PropType, ExtractPropTypes } from 'vue';\nimport type { GetPopupContainer, PopupTrigger } from '@uxd-ui/components/Popup/Popup.type';\nimport { isArrayOf, oneOf } from '../../utils/propsValidators';\n\nimport type Menu from './Menu';\n\nimport type MenuItem from './MenuItem.vue';\n\nimport type SubMenu from './SubMenu.vue';\n\nimport type MenuItemGroup from './MenuItemGroup.vue';\n\nimport type MenuDivider from './MenuDivider.vue';\nimport type { ColorType } from '../../utils';\nimport { colorType } from '../../utils';\n\nexport const menuMode = ['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline'] as const;\nexport type MenuMode = (typeof menuMode)[number];\nexport const menuTheme = ['light', 'dark'] as const;\nexport type MenuTheme = (typeof menuTheme)[number];\n\nexport const menuProps = {\n mode: {\n type: String as PropType<MenuMode>,\n default: 'vertical',\n validator: oneOf(menuMode)\n },\n selectedKeys: {\n type: Array as PropType<(string | number)[]>,\n validator: isArrayOf([Number, String])\n },\n multiple: {\n type: Boolean,\n default: false\n },\n openKeys: {\n type: Array as PropType<(string | number)[]>,\n default: () => [] as string[]\n },\n subMenuOpenDelay: {\n type: Number,\n default: 0.1\n },\n subMenuCloseDelay: {\n type: Number,\n default: 0.1\n },\n inlineCollapsed: {\n type: Boolean,\n default: undefined as undefined\n },\n // inlineIndent: {\n // type: Number,\n // default: 24\n // },\n prefixCls: {\n type: String\n },\n role: {\n type: String\n },\n selectable: {\n type: Boolean,\n default: undefined as undefined\n }\n};\nexport type MenuProps = ExtractPropTypes<typeof menuProps>;\n\nexport interface ParentMenu {\n isRootMenu: boolean;\n getPopupContainer: GetPopupContainer;\n level?: number;\n setSubMenuSelected?: (key: string | number, value: boolean) => void;\n fireSubmenuClick?: () => void;\n subMode?: ComputedRef<MenuMode>;\n}\n\nexport interface MenuStore {\n mode: ComputedRef<MenuMode>;\n originalMode: Ref<MenuMode>;\n selectedKeys: Ref<(string | number)[]>;\n openKeys: Ref<(string | number)[]>;\n subMenuOpenDelay: Ref<number>;\n subMenuCloseDelay: Ref<number>;\n rootPrefixCls: ComputedRef<string>;\n updateKeyPath: (key: string | number, type: string) => void;\n inlineIndent: Ref<number>;\n inlineCollapsed: Ref<boolean>;\n collapsed: Ref<boolean>;\n}\n\nexport interface MenuItemClickEvent {\n key: string | number;\n item: any;\n}\n\nexport type MenuClickEvent = MenuItemClickEvent & {\n keypath: (string | number)[];\n};\n\nexport interface MenuOpenEvent {\n key: string | number;\n trigger: PopupTrigger & 'Click';\n item: any;\n open: boolean;\n}\n\nexport interface MenuSelectEvent {\n key: string | number;\n item: any;\n selectedKeys: (string | number)[];\n}\n\nexport interface MenuEvent {\n fireMenuClick: (event: MenuItemClickEvent) => void;\n fireMenuDeselect: (event: MenuItemClickEvent) => void;\n fireMenuSelect: (event: MenuItemClickEvent) => void;\n fireMenuOpenChange: (event: MenuOpenEvent) => void;\n}\n\nexport const menuEmits = {\n click: (e: MenuClickEvent) => e.keypath && e.key !== undefined,\n select: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n deselect: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n 'update:selectedKeys': (selectedKeys: (string | number)[]) => Array.isArray(selectedKeys),\n 'open-change': (openKeys: (string | number)[], event: MenuOpenEvent) => Array.isArray(openKeys) && event.trigger && typeof event.open === 'boolean',\n 'update:openKeys': (openKeys: (string | number)[]) => Array.isArray(openKeys)\n};\n\nexport type MenuInstanceType = InstanceType<typeof Menu>;\n\nexport const menuItemProps = {\n name: {\n type: [String, Number]\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n title: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>;\n\nexport const menuItemEmits = {\n click: (e: MenuItemClickEvent) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type MenuItemEmits = typeof menuItemEmits;\n\nexport type MenuItemInstanceType = InstanceType<typeof MenuItem>;\n\nexport const subMenuProps = {\n name: {\n type: [String, Number]\n },\n title: {\n type: String\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n popupClassName: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>;\n\nexport const subMenuEmits = {\n 'title-click': (e: { key: string | number }) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type SubMenuEmits = typeof subMenuEmits;\n\nexport type SubMenuInstanceType = InstanceType<typeof SubMenu>;\n\nexport const menuItemGroupProps = {\n title: {\n type: String\n }\n};\n\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>;\n\nexport type MenuItemGroupInstanceType = InstanceType<typeof MenuItemGroup>;\n\nexport type MenuDividerInstanceType = InstanceType<typeof MenuDivider>;\n"],"names":["oneOf","isArrayOf","colorType"],"mappings":";;;;;;;;MAgBa,WAAW,CAAC,cAAc,YAAY,iBAAiB,kBAAkB,QAAQ;MAEjF,YAAY,CAAC,SAAS,MAAM;MAG5B,YAAY;AAAA,EACvB,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,QAAQ;AAAA;AAC3B,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,WAAWC,0BAAU,CAAC,QAAQ,MAAM,CAAC;AAAA;AACvC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS,MAAM;AAAC;AAClB,EACA,kBAAkB;AAAA,IAChB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EAKA,WAAW;AAAA,IACT,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA;AACR,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AAEb;MAuDa,YAAY;AAAA,EACvB,OAAO,CAAC,MAAsB,EAAE,WAAW,EAAE,QAAQ;AAAA,EACrD,QAAQ,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EACxH,UAAU,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EAC1H,uBAAuB,CAAC,iBAAsC,MAAM,QAAQ,YAAY;AAAA,EACxF,eAAe,CAAC,UAA+B,UAAyB,MAAM,QAAQ,QAAQ,KAAK,MAAM,WAAW,OAAO,MAAM,SAAS;AAAA,EAC1I,mBAAmB,CAAC,aAAkC,MAAM,QAAQ,QAAQ;AAC9E;MAIa,gBAAgB;AAAA,EAC3B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWD,sBAAME,oBAAS;AAAA;AAE9B;MAIa,gBAAgB;AAAA,EAC3B,OAAO,CAAC,MAA0B,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAClF;MAMa,eAAe;AAAA,EAC1B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWF,sBAAME,oBAAS;AAAA;AAE9B;MAIa,eAAe;AAAA,EAC1B,eAAe,CAAC,MAAgC,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAChG;MAMa,qBAAqB;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA;AAEV;;;;;;;;;;;;"}
|
|
@@ -31,7 +31,6 @@ const _sfc_main = vue.defineComponent({
|
|
|
31
31
|
const {
|
|
32
32
|
openKeys,
|
|
33
33
|
mode: menuMode,
|
|
34
|
-
theme,
|
|
35
34
|
subMenuOpenDelay,
|
|
36
35
|
subMenuCloseDelay,
|
|
37
36
|
rootPrefixCls,
|
|
@@ -132,7 +131,6 @@ const _sfc_main = vue.defineComponent({
|
|
|
132
131
|
titleStyle,
|
|
133
132
|
mode,
|
|
134
133
|
subMode,
|
|
135
|
-
theme,
|
|
136
134
|
isOpen,
|
|
137
135
|
isSelected,
|
|
138
136
|
menuId,
|
|
@@ -211,7 +209,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
211
209
|
key: 1,
|
|
212
210
|
"aria-owns": _ctx.menuId,
|
|
213
211
|
"aria-haspopup": "true",
|
|
214
|
-
"popup-class": `${_ctx.prefixCls}-popup
|
|
212
|
+
"popup-class": `${_ctx.prefixCls}-popup ${_ctx.popupClassName || ""}`,
|
|
215
213
|
prefix: _ctx.prefixCls,
|
|
216
214
|
placement: _ctx.popupPlacement,
|
|
217
215
|
offset: _ctx.popupOffset,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubMenu.js","sources":["../../../../src/components/Menu/SubMenu.vue"],"sourcesContent":["<template>\n <li\n role=\"menuitem\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${mode}`,\n {\n [`${prefixCls}-open`]: isOpen,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-selected`]: isSelected\n }\n ]\"\n >\n <template v-if=\"mode === 'inline'\">\n <div :class=\"[`${prefixCls}-title`]\" :style=\"titleStyle\" :aria-expanded=\"isOpen\" :aria-owns=\"menuId\" aria-haspopup=\"true\" @click=\"onTitleClick\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronDown />\n </UIcon>\n </div>\n <!-- <transition name=\"slide-up\"> -->\n <CollapseTransition appear>\n <ul\n v-show=\"isOpen\"\n :id=\"menuId\"\n class=\"collapse-transition\"\n :class=\"[rootPrefixCls, `${rootPrefixCls}-${mode}`, `${rootPrefixCls}-sub`]\"\n :style=\"subMenuStyle\"\n >\n <slot />\n </ul>\n </CollapseTransition>\n <!-- </transition> -->\n </template>\n <template v-else>\n <Popup\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n :popup-class=\"`${prefixCls}-popup ${rootPrefixCls}-${theme} ${popupClassName || ''}`\"\n :prefix=\"prefixCls\"\n :placement=\"popupPlacement\"\n :offset=\"popupOffset\"\n :trigger=\"disabled ? [] : trigger\"\n :mouse-enter-delay=\"subMenuOpenDelay\"\n :mouse-leave-delay=\"subMenuCloseDelay\"\n :transition-name=\"mode === 'horizontal' ? 'slide-up' : 'zoom-big'\"\n :get-popup-container=\"getPopupContainer\"\n @popup-visible-change=\"onPopupVisibleChange\"\n @click=\"onTitleClick\"\n >\n <div\n :class=\"{\n [`${prefixCls}-title`]: true,\n [`${prefixCls}-title-disabled`]: disabled\n }\"\n :data-color=\"color\"\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n >\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronRight />\n </UIcon>\n </div>\n\n <template #popup>\n <ul :id=\"menuId\" :class=\"[rootPrefixCls, `${rootPrefixCls}-${subMode}`, `${rootPrefixCls}-sub`]\">\n <slot />\n </ul>\n </template>\n </Popup>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, inject, computed, reactive } from 'vue';\nimport Popup from '@uxd-ui/components/Popup';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { ChevronDown, ChevronRight } from 'lucide-vue-next';\nimport warn from '../../utils/warn';\nimport useGetTriggerProps from './hooks/useGetTriggerProps';\nimport { isFunction } from '../../utils/isValid';\nimport CollapseTransition from '../base/CollapseTransition';\nimport { subMenuProps, subMenuEmits, type MenuEvent, type MenuStore, type MenuOpenEvent, type ParentMenu } from './Menu.type';\nimport type { GetPopupContainer } from '../Popup/Popup.type';\n\nlet guid = -1;\n\nexport default defineComponent({\n name: 'USubMenu',\n components: {\n Popup,\n UIcon,\n ChevronDown,\n ChevronRight,\n CollapseTransition\n },\n props: subMenuProps,\n emits: subMenuEmits,\n setup(props, { emit }) {\n const parentMenu = inject<ParentMenu>('parentMenu', {} as ParentMenu);\n const {\n openKeys,\n mode: menuMode,\n theme,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls,\n updateKeyPath\n // inlineIndent\n } = inject<MenuStore>('menuStore', {} as MenuStore);\n const childrenSelected: Record<string, boolean> = reactive({});\n\n if (menuMode === undefined) {\n warn('cannot find menu parent Component ,OR! the menu mode is error');\n }\n const { fireMenuOpenChange } = inject<MenuEvent>('menuEvent', {} as MenuEvent);\n const prefixCls = computed(() => `${rootPrefixCls.value}-submenu`);\n guid += 1;\n const menuId = computed(() => (props.name ? `${props.name}$Menu` : `${guid}$Menu`));\n\n const level = parentMenu.isRootMenu ? 1 : (parentMenu.level || 0) + 1;\n\n // #region computed\n const mode = computed(() => {\n return (parentMenu.subMode || menuMode).value;\n });\n const subMode = computed(() => {\n if (parentMenu.subMode) {\n // fix useGetTriggerProps\n return parentMenu.subMode.value;\n }\n return mode.value === 'horizontal' ? 'vertical' : mode.value;\n });\n\n const subMenuStyle = computed(() => {\n return `--menu-level: ${level};`;\n });\n\n const eventKey = computed(() => {\n if (props.name) {\n return props.name;\n }\n return menuId.value;\n });\n\n const isOpen = computed(() => {\n return openKeys.value.includes(eventKey.value);\n });\n\n const isClickOpen = computed(() => {\n return mode.value === 'inline';\n });\n const titleStyle = computed(() => {\n if (mode.value === 'inline') {\n return {\n // paddingLeft: `${inlineIndent.value * level}px`\n };\n }\n return {};\n });\n const isSelected = computed(() => {\n const selected = Object.keys(childrenSelected).some((key) => childrenSelected[key]);\n if (parentMenu.setSubMenuSelected) {\n parentMenu.setSubMenuSelected(eventKey.value, selected);\n }\n return selected;\n });\n // #endregion\n const { popupPlacement, popupOffset, trigger } = useGetTriggerProps(mode);\n\n // #region methods\n const setSubMenuSelected = (key: string | number, value: boolean) => {\n childrenSelected[`${key}`] = value;\n };\n\n const getPopupContainer: GetPopupContainer = parentMenu.isRootMenu\n ? () => parentMenu.getPopupContainer()\n : (node?: HTMLElement) => {\n return (node?.parentNode as HTMLElement) || undefined;\n };\n\n const triggerOpenChange = (open: boolean, type: string) => {\n const _event = {\n key: eventKey.value,\n trigger: type,\n item: {},\n open\n } as MenuOpenEvent;\n fireMenuOpenChange && isFunction(fireMenuOpenChange) && fireMenuOpenChange(_event);\n };\n\n const onTitleClick = () => {\n const _event = {\n key: eventKey.value\n };\n emit('title-click', _event);\n if (isClickOpen.value) {\n triggerOpenChange(!isOpen.value, 'click');\n }\n };\n\n const onPopupVisibleChange = (visible: boolean) => {\n triggerOpenChange(visible, trigger.value[0]);\n };\n\n const fireSubmenuClick = () => {\n const key = eventKey.value;\n updateKeyPath && isFunction(updateKeyPath) && updateKeyPath(key, 'sub');\n if (parentMenu.fireSubmenuClick && isFunction(parentMenu.fireSubmenuClick)) {\n parentMenu.fireSubmenuClick();\n }\n };\n // #endregion\n\n provide('parentMenu', {\n isRootMenu: false,\n isSubMenu: true,\n fireSubmenuClick,\n setSubMenuSelected,\n level,\n subMode\n });\n\n return {\n prefixCls,\n rootPrefixCls,\n titleStyle,\n mode,\n subMode,\n theme,\n isOpen,\n isSelected,\n menuId,\n popupPlacement,\n popupOffset,\n trigger,\n subMenuOpenDelay,\n subMenuCloseDelay,\n subMenuStyle,\n getPopupContainer,\n onTitleClick,\n onPopupVisibleChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","Popup","UIcon","ChevronDown","ChevronRight","CollapseTransition","subMenuProps","subMenuEmits","inject","reactive","computed","useGetTriggerProps","isFunction","_createElementBlock","_normalizeClass","_Fragment","_createElementVNode","_normalizeStyle","_renderSlot","_createVNode","_createCommentVNode","_createBlock","_withCtx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SubMenu.js","sources":["../../../../src/components/Menu/SubMenu.vue"],"sourcesContent":["<template>\n <li\n role=\"menuitem\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${mode}`,\n {\n [`${prefixCls}-open`]: isOpen,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-selected`]: isSelected\n }\n ]\"\n >\n <template v-if=\"mode === 'inline'\">\n <div :class=\"[`${prefixCls}-title`]\" :style=\"titleStyle\" :aria-expanded=\"isOpen\" :aria-owns=\"menuId\" aria-haspopup=\"true\" @click=\"onTitleClick\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronDown />\n </UIcon>\n </div>\n <!-- <transition name=\"slide-up\"> -->\n <CollapseTransition appear>\n <ul\n v-show=\"isOpen\"\n :id=\"menuId\"\n class=\"collapse-transition\"\n :class=\"[rootPrefixCls, `${rootPrefixCls}-${mode}`, `${rootPrefixCls}-sub`]\"\n :style=\"subMenuStyle\"\n >\n <slot />\n </ul>\n </CollapseTransition>\n <!-- </transition> -->\n </template>\n <template v-else>\n <Popup\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n :popup-class=\"`${prefixCls}-popup ${popupClassName || ''}`\"\n :prefix=\"prefixCls\"\n :placement=\"popupPlacement\"\n :offset=\"popupOffset\"\n :trigger=\"disabled ? [] : trigger\"\n :mouse-enter-delay=\"subMenuOpenDelay\"\n :mouse-leave-delay=\"subMenuCloseDelay\"\n :transition-name=\"mode === 'horizontal' ? 'slide-up' : 'zoom-big'\"\n :get-popup-container=\"getPopupContainer\"\n @popup-visible-change=\"onPopupVisibleChange\"\n @click=\"onTitleClick\"\n >\n <div\n :class=\"{\n [`${prefixCls}-title`]: true,\n [`${prefixCls}-title-disabled`]: disabled\n }\"\n :data-color=\"color\"\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n >\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronRight />\n </UIcon>\n </div>\n\n <template #popup>\n <ul :id=\"menuId\" :class=\"[rootPrefixCls, `${rootPrefixCls}-${subMode}`, `${rootPrefixCls}-sub`]\">\n <slot />\n </ul>\n </template>\n </Popup>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, inject, computed, reactive } from 'vue';\nimport Popup from '@uxd-ui/components/Popup';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { ChevronDown, ChevronRight } from 'lucide-vue-next';\nimport warn from '../../utils/warn';\nimport useGetTriggerProps from './hooks/useGetTriggerProps';\nimport { isFunction } from '../../utils/isValid';\nimport CollapseTransition from '../base/CollapseTransition';\nimport { subMenuProps, subMenuEmits, type MenuEvent, type MenuStore, type MenuOpenEvent, type ParentMenu } from './Menu.type';\nimport type { GetPopupContainer } from '../Popup/Popup.type';\n\nlet guid = -1;\n\nexport default defineComponent({\n name: 'USubMenu',\n components: {\n Popup,\n UIcon,\n ChevronDown,\n ChevronRight,\n CollapseTransition\n },\n props: subMenuProps,\n emits: subMenuEmits,\n setup(props, { emit }) {\n const parentMenu = inject<ParentMenu>('parentMenu', {} as ParentMenu);\n const {\n openKeys,\n mode: menuMode,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls,\n updateKeyPath\n // inlineIndent\n } = inject<MenuStore>('menuStore', {} as MenuStore);\n const childrenSelected: Record<string, boolean> = reactive({});\n\n if (menuMode === undefined) {\n warn('cannot find menu parent Component ,OR! the menu mode is error');\n }\n const { fireMenuOpenChange } = inject<MenuEvent>('menuEvent', {} as MenuEvent);\n const prefixCls = computed(() => `${rootPrefixCls.value}-submenu`);\n guid += 1;\n const menuId = computed(() => (props.name ? `${props.name}$Menu` : `${guid}$Menu`));\n\n const level = parentMenu.isRootMenu ? 1 : (parentMenu.level || 0) + 1;\n\n // #region computed\n const mode = computed(() => {\n return (parentMenu.subMode || menuMode).value;\n });\n const subMode = computed(() => {\n if (parentMenu.subMode) {\n // fix useGetTriggerProps\n return parentMenu.subMode.value;\n }\n return mode.value === 'horizontal' ? 'vertical' : mode.value;\n });\n\n const subMenuStyle = computed(() => {\n return `--menu-level: ${level};`;\n });\n\n const eventKey = computed(() => {\n if (props.name) {\n return props.name;\n }\n return menuId.value;\n });\n\n const isOpen = computed(() => {\n return openKeys.value.includes(eventKey.value);\n });\n\n const isClickOpen = computed(() => {\n return mode.value === 'inline';\n });\n const titleStyle = computed(() => {\n if (mode.value === 'inline') {\n return {\n // paddingLeft: `${inlineIndent.value * level}px`\n };\n }\n return {};\n });\n const isSelected = computed(() => {\n const selected = Object.keys(childrenSelected).some((key) => childrenSelected[key]);\n if (parentMenu.setSubMenuSelected) {\n parentMenu.setSubMenuSelected(eventKey.value, selected);\n }\n return selected;\n });\n // #endregion\n const { popupPlacement, popupOffset, trigger } = useGetTriggerProps(mode);\n\n // #region methods\n const setSubMenuSelected = (key: string | number, value: boolean) => {\n childrenSelected[`${key}`] = value;\n };\n\n const getPopupContainer: GetPopupContainer = parentMenu.isRootMenu\n ? () => parentMenu.getPopupContainer()\n : (node?: HTMLElement) => {\n return (node?.parentNode as HTMLElement) || undefined;\n };\n\n const triggerOpenChange = (open: boolean, type: string) => {\n const _event = {\n key: eventKey.value,\n trigger: type,\n item: {},\n open\n } as MenuOpenEvent;\n fireMenuOpenChange && isFunction(fireMenuOpenChange) && fireMenuOpenChange(_event);\n };\n\n const onTitleClick = () => {\n const _event = {\n key: eventKey.value\n };\n emit('title-click', _event);\n if (isClickOpen.value) {\n triggerOpenChange(!isOpen.value, 'click');\n }\n };\n\n const onPopupVisibleChange = (visible: boolean) => {\n triggerOpenChange(visible, trigger.value[0]);\n };\n\n const fireSubmenuClick = () => {\n const key = eventKey.value;\n updateKeyPath && isFunction(updateKeyPath) && updateKeyPath(key, 'sub');\n if (parentMenu.fireSubmenuClick && isFunction(parentMenu.fireSubmenuClick)) {\n parentMenu.fireSubmenuClick();\n }\n };\n // #endregion\n\n provide('parentMenu', {\n isRootMenu: false,\n isSubMenu: true,\n fireSubmenuClick,\n setSubMenuSelected,\n level,\n subMode\n });\n\n return {\n prefixCls,\n rootPrefixCls,\n titleStyle,\n mode,\n subMode,\n isOpen,\n isSelected,\n menuId,\n popupPlacement,\n popupOffset,\n trigger,\n subMenuOpenDelay,\n subMenuCloseDelay,\n subMenuStyle,\n getPopupContainer,\n onTitleClick,\n onPopupVisibleChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","Popup","UIcon","ChevronDown","ChevronRight","CollapseTransition","subMenuProps","subMenuEmits","inject","reactive","computed","useGetTriggerProps","isFunction","_createElementBlock","_normalizeClass","_Fragment","_createElementVNode","_normalizeStyle","_renderSlot","_createVNode","_createCommentVNode","_createBlock","_withCtx"],"mappings":"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"}
|
|
@@ -24,7 +24,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
24
24
|
titleStyle: import("vue").ComputedRef<{}>;
|
|
25
25
|
mode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
|
|
26
26
|
subMode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
|
|
27
|
-
theme: import("vue").Ref<"light" | "dark", "light" | "dark">;
|
|
28
27
|
isOpen: import("vue").ComputedRef<boolean>;
|
|
29
28
|
isSelected: import("vue").ComputedRef<boolean>;
|
|
30
29
|
menuId: import("vue").ComputedRef<string>;
|
|
@@ -9,11 +9,6 @@ export declare const UMenu: {
|
|
|
9
9
|
default: string;
|
|
10
10
|
validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
|
|
11
11
|
};
|
|
12
|
-
theme: {
|
|
13
|
-
type: import("vue").PropType<"light" | "dark">;
|
|
14
|
-
default: string;
|
|
15
|
-
validator: (val: "light" | "dark") => boolean;
|
|
16
|
-
};
|
|
17
12
|
selectedKeys: {
|
|
18
13
|
type: import("vue").PropType<(string | number)[]>;
|
|
19
14
|
validator: (val: any[]) => boolean;
|
|
@@ -71,7 +66,6 @@ export declare const UMenu: {
|
|
|
71
66
|
}, import("vue").PublicProps, {
|
|
72
67
|
mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
|
|
73
68
|
multiple: boolean;
|
|
74
|
-
theme: "light" | "dark";
|
|
75
69
|
openKeys: (string | number)[];
|
|
76
70
|
subMenuOpenDelay: number;
|
|
77
71
|
subMenuCloseDelay: number;
|
|
@@ -99,11 +93,6 @@ export declare const UMenu: {
|
|
|
99
93
|
default: string;
|
|
100
94
|
validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
|
|
101
95
|
};
|
|
102
|
-
theme: {
|
|
103
|
-
type: import("vue").PropType<"light" | "dark">;
|
|
104
|
-
default: string;
|
|
105
|
-
validator: (val: "light" | "dark") => boolean;
|
|
106
|
-
};
|
|
107
96
|
selectedKeys: {
|
|
108
97
|
type: import("vue").PropType<(string | number)[]>;
|
|
109
98
|
validator: (val: any[]) => boolean;
|
|
@@ -154,7 +143,6 @@ export declare const UMenu: {
|
|
|
154
143
|
}, {}, {}, {}, {
|
|
155
144
|
mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
|
|
156
145
|
multiple: boolean;
|
|
157
|
-
theme: "light" | "dark";
|
|
158
146
|
openKeys: (string | number)[];
|
|
159
147
|
subMenuOpenDelay: number;
|
|
160
148
|
subMenuCloseDelay: number;
|
|
@@ -170,11 +158,6 @@ export declare const UMenu: {
|
|
|
170
158
|
default: string;
|
|
171
159
|
validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
|
|
172
160
|
};
|
|
173
|
-
theme: {
|
|
174
|
-
type: import("vue").PropType<"light" | "dark">;
|
|
175
|
-
default: string;
|
|
176
|
-
validator: (val: "light" | "dark") => boolean;
|
|
177
|
-
};
|
|
178
161
|
selectedKeys: {
|
|
179
162
|
type: import("vue").PropType<(string | number)[]>;
|
|
180
163
|
validator: (val: any[]) => boolean;
|
|
@@ -232,7 +215,6 @@ export declare const UMenu: {
|
|
|
232
215
|
}, string, {
|
|
233
216
|
mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
|
|
234
217
|
multiple: boolean;
|
|
235
|
-
theme: "light" | "dark";
|
|
236
218
|
openKeys: (string | number)[];
|
|
237
219
|
subMenuOpenDelay: number;
|
|
238
220
|
subMenuCloseDelay: number;
|
|
@@ -1025,7 +1007,6 @@ export declare const UMenu: {
|
|
|
1025
1007
|
titleStyle: import("vue").ComputedRef<{}>;
|
|
1026
1008
|
mode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
|
|
1027
1009
|
subMode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
|
|
1028
|
-
theme: import("vue").Ref<"light" | "dark", "light" | "dark">;
|
|
1029
1010
|
isOpen: import("vue").ComputedRef<boolean>;
|
|
1030
1011
|
isSelected: import("vue").ComputedRef<boolean>;
|
|
1031
1012
|
menuId: import("vue").ComputedRef<string>;
|
|
@@ -129,9 +129,7 @@ var UCircle = vue.defineComponent({
|
|
|
129
129
|
const iconSvg = statusIcon.value;
|
|
130
130
|
const defaultTextRender = isStatus.value ? vue.createVNode("span", {
|
|
131
131
|
"class": `${prefixCls.value}-text-inner`
|
|
132
|
-
}, [vue.createVNode(index.UIcon, {
|
|
133
|
-
"style": "font-size: 24px"
|
|
134
|
-
}, {
|
|
132
|
+
}, [vue.createVNode(index.UIcon, null, {
|
|
135
133
|
default: () => [vue.createVNode(iconSvg, null, null)]
|
|
136
134
|
})]) : vue.createVNode("span", {
|
|
137
135
|
"class": `${prefixCls.value}-text-inner`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Circle.js","sources":["../../../../src/components/Progress/Circle.tsx"],"sourcesContent":["import { defineComponent, watch, onMounted } from 'vue';\nimport type { PropType } from 'vue';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { oneOf } from '../../utils/propsValidators';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport URender from '../base/Render';\nimport useProgress from './hooks/useProgress';\nimport { progressEmits, progressStatus, type ProgressStauts } from './Progress.type';\nimport { getSlot } from '../../utils/slots';\n\nconst defineProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 6\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n textInside: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'UCircle',\n components: {\n URender,\n UIcon\n },\n props: defineProps,\n emits: progressEmits,\n setup(props, { emit, slots }) {\n const { prefixCls } = useGlobalConfig('progress');\n // data\n const patchColor = '#F3F3F3';\n const statusColorMap: Record<ProgressStauts, string> = {\n normal: '#4d9bee',\n active: '#4d9bee',\n wrong: '#ed3f14',\n success: '#19be6b'\n };\n const radius = Math.ceil(44 - props.strokeWidth / 2);\n const len = Math.ceil(Math.PI * 2 * radius);\n\n const { currentStatus, isStatus, statusIcon, handleStatus } = useProgress(props, { emit });\n // computed\n\n // watch\n watch(\n () => props.percent,\n (nv, ov) => {\n if (nv < ov) {\n handleStatus(true);\n } else {\n handleStatus();\n }\n }\n );\n watch(\n () => props.status,\n (nv) => {\n currentStatus.value = nv;\n }\n );\n // lifecycle\n onMounted(() => {\n handleStatus();\n });\n // methods\n const circleStyle = {\n cx: '50%',\n cy: '50%',\n r: '40',\n transform: 'rotate(-90 50 50)',\n 'stroke-width': props.strokeWidth,\n 'stroke-linecap': props.percent === 0 ? 'butt' : 'round'\n };\n\n return () => {\n const { strokeColor, successPercent, percent } = props;\n\n const gradientRender =\n strokeColor !== undefined ? (\n <defs>\n <linearGradient id=\"svg-gradient\" gradientUnits=\"userSpaceOnUse\" x1=\"100%\" y1=\"100%\" x2=\"0\" y2=\"0\">\n <stop offset=\"0%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[0] : props.strokeColor} />\n <stop offset=\"100%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[1] : props.strokeColor} />\n </linearGradient>\n </defs>\n ) : null;\n\n const pathRender = <circle {...circleStyle} stroke={patchColor}></circle>;\n const percentRender = (\n <circle\n {...circleStyle}\n stroke={!props.strokeColor || isStatus.value ? statusColorMap[currentStatus.value] : 'url(#svg-gradient)'}\n stroke-dasharray={`${Math.ceil((props.percent / 100) * len)}, ${len}`}\n stroke-linecap={Math.ceil(props.percent / 100) ? 'round' : 'butt'}\n ></circle>\n );\n\n const successPercentRender = successPercent ? (\n <circle\n {...circleStyle}\n stroke={statusColorMap.success}\n stroke-dasharray={`${Math.ceil((props.successPercent / 100) * len)}, ${len}`}\n ></circle>\n ) : null;\n\n const iconSvg = statusIcon.value;\n\n const defaultTextRender = isStatus.value ? (\n <span class={`${prefixCls.value}-text-inner`}>\n <UIcon
|
|
1
|
+
{"version":3,"file":"Circle.js","sources":["../../../../src/components/Progress/Circle.tsx"],"sourcesContent":["import { defineComponent, watch, onMounted } from 'vue';\nimport type { PropType } from 'vue';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { oneOf } from '../../utils/propsValidators';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport URender from '../base/Render';\nimport useProgress from './hooks/useProgress';\nimport { progressEmits, progressStatus, type ProgressStauts } from './Progress.type';\nimport { getSlot } from '../../utils/slots';\n\nconst defineProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 6\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n textInside: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'UCircle',\n components: {\n URender,\n UIcon\n },\n props: defineProps,\n emits: progressEmits,\n setup(props, { emit, slots }) {\n const { prefixCls } = useGlobalConfig('progress');\n // data\n const patchColor = '#F3F3F3';\n const statusColorMap: Record<ProgressStauts, string> = {\n normal: '#4d9bee',\n active: '#4d9bee',\n wrong: '#ed3f14',\n success: '#19be6b'\n };\n const radius = Math.ceil(44 - props.strokeWidth / 2);\n const len = Math.ceil(Math.PI * 2 * radius);\n\n const { currentStatus, isStatus, statusIcon, handleStatus } = useProgress(props, { emit });\n // computed\n\n // watch\n watch(\n () => props.percent,\n (nv, ov) => {\n if (nv < ov) {\n handleStatus(true);\n } else {\n handleStatus();\n }\n }\n );\n watch(\n () => props.status,\n (nv) => {\n currentStatus.value = nv;\n }\n );\n // lifecycle\n onMounted(() => {\n handleStatus();\n });\n // methods\n const circleStyle = {\n cx: '50%',\n cy: '50%',\n r: '40',\n transform: 'rotate(-90 50 50)',\n 'stroke-width': props.strokeWidth,\n 'stroke-linecap': props.percent === 0 ? ('butt' as const) : ('round' as const)\n };\n\n return () => {\n const { strokeColor, successPercent, percent } = props;\n\n const gradientRender =\n strokeColor !== undefined ? (\n <defs>\n <linearGradient id=\"svg-gradient\" gradientUnits=\"userSpaceOnUse\" x1=\"100%\" y1=\"100%\" x2=\"0\" y2=\"0\">\n <stop offset=\"0%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[0] : props.strokeColor} />\n <stop offset=\"100%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[1] : props.strokeColor} />\n </linearGradient>\n </defs>\n ) : null;\n\n const pathRender = <circle {...circleStyle} stroke={patchColor}></circle>;\n const percentRender = (\n <circle\n {...circleStyle}\n stroke={!props.strokeColor || isStatus.value ? statusColorMap[currentStatus.value] : 'url(#svg-gradient)'}\n stroke-dasharray={`${Math.ceil((props.percent / 100) * len)}, ${len}`}\n stroke-linecap={Math.ceil(props.percent / 100) ? 'round' : 'butt'}\n ></circle>\n );\n\n const successPercentRender = successPercent ? (\n <circle\n {...circleStyle}\n stroke={statusColorMap.success}\n stroke-dasharray={`${Math.ceil((props.successPercent / 100) * len)}, ${len}`}\n ></circle>\n ) : null;\n\n const iconSvg = statusIcon.value;\n\n const defaultTextRender = isStatus.value ? (\n <span class={`${prefixCls.value}-text-inner`}>\n <UIcon>\n <iconSvg></iconSvg>\n </UIcon>\n </span>\n ) : (\n <span class={`${prefixCls.value}-text-inner`}>{percent}%</span>\n );\n\n return (\n <div class={[`${prefixCls.value}`, `${prefixCls.value}-circle`, `${prefixCls.value}-${currentStatus.value}`]}>\n <div class={`${prefixCls.value}-inner`}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"100%\" width=\"100%\" viewBox=\"0 0 100 100\">\n {gradientRender}\n {pathRender}\n {percentRender}\n {successPercentRender}\n </svg>\n <div class={`${prefixCls.value}-text`}>{getSlot(slots).length ? getSlot(slots) : defaultTextRender}</div>\n </div>\n </div>\n );\n };\n }\n});\n"],"names":["defineProps","percent","type","Number","default","successPercent","status","String","validator","oneOf","progressStatus","hideInfo","Boolean","strokeWidth","strokeColor","Array","textInside","defineComponent","name","components","URender","UIcon","props","emits","progressEmits","setup","emit","slots","prefixCls","useGlobalConfig","patchColor","statusColorMap","normal","active","wrong","success","radius","Math","ceil","len","PI","currentStatus","isStatus","statusIcon","handleStatus","useProgress","watch","nv","ov","value","onMounted","circleStyle","cx","cy","r","transform","gradientRender","undefined","_createVNode","isArray","pathRender","_mergeProps","percentRender","successPercentRender","iconSvg","defaultTextRender","_createTextVNode","getSlot","length"],"mappings":"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"}
|
|
@@ -48,14 +48,13 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
48
48
|
"stroke-width": _ctx.strokeWidth,
|
|
49
49
|
"stroke-color": _ctx.strokeColor,
|
|
50
50
|
vertical: _ctx.vertical,
|
|
51
|
-
"text-inside": _ctx.textInside
|
|
52
|
-
"data-color": _ctx.color
|
|
51
|
+
"text-inside": _ctx.textInside
|
|
53
52
|
}, {
|
|
54
53
|
default: vue.withCtx(() => [
|
|
55
54
|
vue.renderSlot(_ctx.$slots, "default")
|
|
56
55
|
]),
|
|
57
56
|
_: 3
|
|
58
|
-
}, 8, ["percent", "success-percent", "status", "hide-info", "stroke-width", "stroke-color", "vertical", "text-inside"
|
|
57
|
+
}, 8, ["percent", "success-percent", "status", "hide-info", "stroke-width", "stroke-color", "vertical", "text-inside"]);
|
|
59
58
|
}
|
|
60
59
|
var Progress = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "/Users/admin/Documents/uxd/uxd-ui/src/components/Progress/Progress.vue"]]);
|
|
61
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.js","sources":["../../../../src/components/Progress/Progress.vue"],"sourcesContent":["<template>\n <component\n :is=\"wrapperComponent\"\n :percent=\"percent\"\n :success-percent=\"successPercent\"\n :status=\"status\"\n :hide-info=\"hideInfo\"\n :stroke-width=\"strokeWidth\"\n :stroke-color=\"strokeColor\"\n :vertical=\"vertical\"\n :text-inside=\"textInside\"\n
|
|
1
|
+
{"version":3,"file":"Progress.js","sources":["../../../../src/components/Progress/Progress.vue"],"sourcesContent":["<template>\n <component\n :is=\"wrapperComponent\"\n :percent=\"percent\"\n :success-percent=\"successPercent\"\n :status=\"status\"\n :hide-info=\"hideInfo\"\n :stroke-width=\"strokeWidth\"\n :stroke-color=\"strokeColor\"\n :vertical=\"vertical\"\n :text-inside=\"textInside\"\n >\n <slot />\n </component>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue';\nimport ULine from './Line.vue';\nimport UCircle from './Circle';\nimport UWater from './Water.vue';\n\nimport { progressProps } from './Progress.type';\n\nexport default defineComponent({\n name: 'UProgress',\n components: {\n ULine,\n UCircle,\n UWater\n },\n props: progressProps,\n setup(props) {\n const wrapperComponent = computed(() => {\n const { type } = props;\n let wrapComponent = '';\n switch (type) {\n case 'circle':\n wrapComponent = 'u-circle';\n break;\n case 'water':\n wrapComponent = 'u-water';\n break;\n default:\n wrapComponent = 'u-line';\n }\n return wrapComponent;\n });\n return {\n props,\n wrapperComponent\n };\n }\n});\n</script>\n"],"names":["defineComponent","ULine","UCircle","UWater","progressProps","computed","_createBlock","_resolveDynamicComponent","_renderSlot"],"mappings":";;;;;;;;;;;AAwBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,WACVC;AAAA,aACAC;AAAA,YACAC;AAAA;AACF,EACA,OAAOC;AAAA,EACP,MAAM,OAAO;UACL,mBAAmBC,aAAS,MAAM;YAChC,EAAE,SAAS;UACb,gBAAgB;cACZ;AAAA,aACD;0BACa;;aAEb;0BACa;;;0BAGA;AAAA;aAEb;AAAA,KACR;WACM;AAAA,MACL;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;0BApDCC,gBAYYC,4BAXL,qBAAgB;IACpB,SAAS;IACT,mBAAiB;IACjB,QAAQ;IACR,aAAW;IACX,gBAAc;IACd,gBAAc;IACd,UAAU;IACV,eAAa;;yBAEd,MAAQ;AAAA,MAARC,eAAQ;;;;;;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
-
import {
|
|
2
|
+
import type { EmitFn } from '../../utils/globalType';
|
|
3
3
|
import type Progress from './Progress.vue';
|
|
4
4
|
export declare const progressStatus: readonly ["normal", "active", "wrong", "success"];
|
|
5
5
|
export declare type ProgressStauts = (typeof progressStatus)[number];
|
|
@@ -43,11 +43,6 @@ export declare const progressProps: {
|
|
|
43
43
|
default: string;
|
|
44
44
|
validator: (val: "circle" | "line" | "water") => boolean;
|
|
45
45
|
};
|
|
46
|
-
color: {
|
|
47
|
-
type: PropType<"primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
|
|
48
|
-
default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
|
|
49
|
-
validator: (val: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint") => boolean;
|
|
50
|
-
};
|
|
51
46
|
};
|
|
52
47
|
export declare type ProgressProps = ExtractPropTypes<typeof progressProps>;
|
|
53
48
|
export declare const progressEmits: {
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var globalType = require('../../utils/globalType.js');
|
|
6
5
|
var propsValidators = require('../../utils/propsValidators.js');
|
|
7
6
|
|
|
8
7
|
const progressStatus = ["normal", "active", "wrong", "success"];
|
|
@@ -44,11 +43,6 @@ const progressProps = {
|
|
|
44
43
|
type: String,
|
|
45
44
|
default: "line",
|
|
46
45
|
validator: propsValidators.oneOf(progressType)
|
|
47
|
-
},
|
|
48
|
-
color: {
|
|
49
|
-
type: String,
|
|
50
|
-
default: void 0,
|
|
51
|
-
validator: propsValidators.oneOf(globalType.colorType)
|
|
52
46
|
}
|
|
53
47
|
};
|
|
54
48
|
const progressEmits = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.type.js","sources":["../../../../src/components/Progress/Progress.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport
|
|
1
|
+
{"version":3,"file":"Progress.type.js","sources":["../../../../src/components/Progress/Progress.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport type { EmitFn } from '../../utils/globalType';\nimport { oneOf } from '../../utils/propsValidators';\nimport type Progress from './Progress.vue';\n\nexport const progressStatus = ['normal', 'active', 'wrong', 'success'] as const;\nexport type ProgressStauts = (typeof progressStatus)[number];\nexport const progressType = ['line', 'circle', 'water'] as const;\nexport type ProgressType = (typeof progressType)[number];\n\nexport const progressProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 8\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n vertical: {\n type: Boolean,\n default: false\n },\n textInside: {\n type: Boolean,\n default: false\n },\n type: {\n type: String as PropType<ProgressType>,\n default: 'line',\n validator: oneOf(progressType)\n }\n};\n\nexport type ProgressProps = ExtractPropTypes<typeof progressProps>;\n\nexport const progressEmits = {\n 'status-change': (status: ProgressStauts) => progressStatus.includes(status)\n};\n\nexport type ProgressEmits = typeof progressEmits;\n\nexport type ProgressEmit = EmitFn<ProgressEmits>;\n\nexport type ProgressInstanceType = InstanceType<typeof Progress>;\n"],"names":["oneOf"],"mappings":";;;;;;MAKa,iBAAiB,CAAC,UAAU,UAAU,SAAS,SAAS;MAExD,eAAe,CAAC,QAAQ,UAAU,OAAO;MAGzC,gBAAgB;AAAA,EAC3B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,cAAc;AAAA;AACjC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM,CAAC,QAAQ,KAAK;AAAA;AACtB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,YAAY;AAAA;AAEjC;MAIa,gBAAgB;AAAA,EAC3B,iBAAiB,CAAC,WAA2B,eAAe,SAAS,MAAM;AAC7E;;;;;;;"}
|