@koi-design/uxd-ui 14.0.2 → 14.0.4
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/Alert/Alert.mjs +10 -24
- package/es/components/Alert/Alert.mjs.map +1 -1
- package/es/components/Alert/Alert.type.d.ts +5 -7
- package/es/components/Alert/Alert.type.mjs +4 -7
- package/es/components/Alert/Alert.type.mjs.map +1 -1
- package/es/components/Alert/Alert.vue.d.ts +5 -15
- package/es/components/Alert/index.d.ts +9 -27
- package/es/components/Alert/index.mjs +1 -1
- package/es/components/Badge/Badge.mjs +3 -5
- package/es/components/Badge/Badge.mjs.map +1 -1
- package/es/components/Calendar/Calendar.vue.d.ts +2 -2
- package/es/components/Calendar/index.d.ts +6 -6
- package/es/components/DatePicker/DatePicker.vue.d.ts +14 -14
- package/es/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
- package/es/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
- package/es/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
- package/es/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
- package/es/components/DatePicker/index.d.ts +28 -28
- package/es/components/Drawer/Drawer.d.ts +9 -0
- package/es/components/Drawer/Drawer.mjs +10 -8
- package/es/components/Drawer/Drawer.mjs.map +1 -1
- package/es/components/Drawer/Drawer.type.d.ts +4 -0
- package/es/components/Drawer/Drawer.type.mjs +4 -0
- package/es/components/Drawer/Drawer.type.mjs.map +1 -1
- package/es/components/Drawer/index.d.ts +15 -0
- package/es/components/Mask/Mask.d.ts +2 -1
- package/es/components/Mask/Mask.mjs +6 -2
- package/es/components/Mask/Mask.mjs.map +1 -1
- package/es/components/Mask/index.d.ts +5 -2
- package/es/components/Menu/MenuItem.vue.d.ts +33 -33
- package/es/components/Menu/index.d.ts +33 -33
- package/es/components/Message/Message.mjs +4 -3
- package/es/components/Message/Message.mjs.map +1 -1
- package/es/components/Message/Message.type.d.ts +1 -0
- package/es/components/Notice/Notice.mjs +15 -13
- package/es/components/Notice/Notice.mjs.map +1 -1
- package/es/components/Notice/Notice.type.d.ts +3 -2
- package/es/components/Notification/Notice.mjs +1 -5
- package/es/components/Notification/Notice.mjs.map +1 -1
- package/es/components/Notification/Notification.mjs.map +1 -1
- package/es/components/Rate/Rate.vue.d.ts +33 -33
- package/es/components/Rate/index.d.ts +66 -66
- package/es/components/Slider/Slider.d.ts +0 -20
- package/es/components/Slider/Slider.mjs +1 -2
- package/es/components/Slider/Slider.mjs.map +1 -1
- package/es/components/Slider/Slider.type.d.ts +0 -9
- package/es/components/Slider/Slider.type.mjs +0 -13
- package/es/components/Slider/Slider.type.mjs.map +1 -1
- package/es/components/Slider/index.d.ts +0 -33
- package/es/components/Statistic/Statistic.vue.d.ts +33 -33
- package/es/components/Statistic/index.d.ts +66 -66
- package/es/components/Table/BaseTable.vue.d.ts +132 -132
- package/es/components/Table/BodyTable.vue.d.ts +132 -132
- package/es/components/Table/HeadTable.vue.d.ts +132 -132
- package/es/components/Table/Table.vue.d.ts +264 -264
- package/es/components/Table/TableBox.vue.d.ts +264 -264
- package/es/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
- package/es/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
- package/es/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
- package/es/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
- package/es/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
- package/es/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
- package/es/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
- package/es/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
- package/es/components/Tag/Tag.mjs +6 -9
- package/es/components/Tag/Tag.mjs.map +1 -1
- package/es/components/Tag/Tag.type.d.ts +0 -4
- package/es/components/Tag/Tag.type.mjs +0 -4
- package/es/components/Tag/Tag.type.mjs.map +1 -1
- package/es/components/Tag/Tag.vue.d.ts +7 -20
- package/es/components/Tag/index.d.ts +21 -48
- package/es/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
- package/es/components/ThemePanel/index.d.ts +66 -66
- package/es/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
- package/es/components/TimePicker/TimePicker.vue.d.ts +12 -12
- package/es/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
- package/es/components/TimePicker/index.d.ts +28 -28
- package/es/components/Tooltip/Tooltip.mjs +84 -8
- package/es/components/Tooltip/Tooltip.mjs.map +1 -1
- package/es/components/Tooltip/Tooltip.type.d.ts +2 -2
- package/es/components/Tooltip/Tooltip.type.mjs +1 -3
- package/es/components/Tooltip/Tooltip.type.mjs.map +1 -1
- package/es/components/Tooltip/Tooltip.vue.d.ts +13 -13
- package/es/components/Tooltip/index.d.ts +33 -33
- package/es/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
- package/es/components/TreeSelect/index.d.ts +3 -3
- package/es/components/index.mjs +1 -1
- package/es/index.mjs +1 -1
- package/lib/components/Alert/Alert.js +9 -23
- package/lib/components/Alert/Alert.js.map +1 -1
- package/lib/components/Alert/Alert.type.d.ts +5 -7
- package/lib/components/Alert/Alert.type.js +4 -6
- package/lib/components/Alert/Alert.type.js.map +1 -1
- package/lib/components/Alert/Alert.vue.d.ts +5 -15
- package/lib/components/Alert/index.d.ts +9 -27
- package/lib/components/Alert/index.js +1 -0
- package/lib/components/Alert/index.js.map +1 -1
- package/lib/components/Badge/Badge.js +3 -5
- package/lib/components/Badge/Badge.js.map +1 -1
- package/lib/components/Calendar/Calendar.vue.d.ts +2 -2
- package/lib/components/Calendar/index.d.ts +6 -6
- package/lib/components/DatePicker/DatePicker.vue.d.ts +14 -14
- package/lib/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
- package/lib/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
- package/lib/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
- package/lib/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
- package/lib/components/DatePicker/index.d.ts +28 -28
- package/lib/components/Drawer/Drawer.d.ts +9 -0
- package/lib/components/Drawer/Drawer.js +10 -8
- package/lib/components/Drawer/Drawer.js.map +1 -1
- package/lib/components/Drawer/Drawer.type.d.ts +4 -0
- package/lib/components/Drawer/Drawer.type.js +4 -0
- package/lib/components/Drawer/Drawer.type.js.map +1 -1
- package/lib/components/Drawer/index.d.ts +15 -0
- package/lib/components/Mask/Mask.d.ts +2 -1
- package/lib/components/Mask/Mask.js +6 -2
- package/lib/components/Mask/Mask.js.map +1 -1
- package/lib/components/Mask/index.d.ts +5 -2
- package/lib/components/Menu/MenuItem.vue.d.ts +33 -33
- package/lib/components/Menu/index.d.ts +33 -33
- package/lib/components/Message/Message.js +4 -3
- package/lib/components/Message/Message.js.map +1 -1
- package/lib/components/Message/Message.type.d.ts +1 -0
- package/lib/components/Notice/Notice.js +15 -13
- package/lib/components/Notice/Notice.js.map +1 -1
- package/lib/components/Notice/Notice.type.d.ts +3 -2
- package/lib/components/Notification/Notice.js +1 -5
- package/lib/components/Notification/Notice.js.map +1 -1
- package/lib/components/Notification/Notification.js.map +1 -1
- package/lib/components/Rate/Rate.vue.d.ts +33 -33
- package/lib/components/Rate/index.d.ts +66 -66
- package/lib/components/Slider/Slider.d.ts +0 -20
- package/lib/components/Slider/Slider.js +1 -2
- package/lib/components/Slider/Slider.js.map +1 -1
- package/lib/components/Slider/Slider.type.d.ts +0 -9
- package/lib/components/Slider/Slider.type.js +0 -13
- package/lib/components/Slider/Slider.type.js.map +1 -1
- package/lib/components/Slider/index.d.ts +0 -33
- package/lib/components/Statistic/Statistic.vue.d.ts +33 -33
- package/lib/components/Statistic/index.d.ts +66 -66
- package/lib/components/Table/BaseTable.vue.d.ts +132 -132
- package/lib/components/Table/BodyTable.vue.d.ts +132 -132
- package/lib/components/Table/HeadTable.vue.d.ts +132 -132
- package/lib/components/Table/Table.vue.d.ts +264 -264
- package/lib/components/Table/TableBox.vue.d.ts +264 -264
- package/lib/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
- package/lib/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
- package/lib/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
- package/lib/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
- package/lib/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
- package/lib/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
- package/lib/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
- package/lib/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
- package/lib/components/Tag/Tag.js +6 -9
- package/lib/components/Tag/Tag.js.map +1 -1
- package/lib/components/Tag/Tag.type.d.ts +0 -4
- package/lib/components/Tag/Tag.type.js +0 -4
- package/lib/components/Tag/Tag.type.js.map +1 -1
- package/lib/components/Tag/Tag.vue.d.ts +7 -20
- package/lib/components/Tag/index.d.ts +21 -48
- package/lib/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
- package/lib/components/ThemePanel/index.d.ts +66 -66
- package/lib/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
- package/lib/components/TimePicker/TimePicker.vue.d.ts +12 -12
- package/lib/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
- package/lib/components/TimePicker/index.d.ts +28 -28
- package/lib/components/Tooltip/Tooltip.js +84 -8
- package/lib/components/Tooltip/Tooltip.js.map +1 -1
- package/lib/components/Tooltip/Tooltip.type.d.ts +2 -2
- package/lib/components/Tooltip/Tooltip.type.js +1 -3
- package/lib/components/Tooltip/Tooltip.type.js.map +1 -1
- package/lib/components/Tooltip/Tooltip.vue.d.ts +13 -13
- package/lib/components/Tooltip/index.d.ts +33 -33
- package/lib/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
- package/lib/components/TreeSelect/index.d.ts +3 -3
- package/lib/components/index.js +1 -0
- package/lib/components/index.js.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
- package/styles/components/alert/index.css +1 -1
- package/styles/components/alert/index.less +51 -48
- package/styles/components/alert/var.less +8 -42
- package/styles/components/autoComplete/index.css +1 -1
- package/styles/components/avatar/index.css +1 -1
- package/styles/components/badge/index.css +1 -1
- package/styles/components/badge/index.less +14 -48
- package/styles/components/badge/var.less +7 -17
- package/styles/components/button/index.css +1 -1
- package/styles/components/carousel/index.css +1 -1
- package/styles/components/cascader/index.css +1 -1
- package/styles/components/datePicker/index.css +1 -1
- package/styles/components/drawer/index.css +1 -1
- package/styles/components/drawer/index.less +43 -49
- package/styles/components/drawer/var.less +7 -20
- 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/link/index.css +1 -1
- package/styles/components/mentions/index.css +1 -1
- package/styles/components/message/index.css +1 -1
- package/styles/components/message/index.less +63 -30
- package/styles/components/message/var.less +6 -27
- package/styles/components/modal/index.css +1 -1
- package/styles/components/notice/index.css +1 -1
- package/styles/components/notice/index.less +93 -49
- package/styles/components/notice/var.less +10 -33
- package/styles/components/select/index.css +1 -1
- package/styles/components/slider/index.css +1 -1
- package/styles/components/slider/index.less +36 -156
- package/styles/components/slider/var.less +5 -33
- package/styles/components/spin/index.css +1 -1
- package/styles/components/tag/index.css +1 -1
- package/styles/components/tag/index.less +12 -25
- package/styles/components/tag/var.less +26 -84
- package/styles/components/timePicker/index.css +1 -1
- package/styles/components/tooltip/index.css +1 -1
- package/styles/components/tooltip/index.less +3 -55
- package/styles/components/tooltip/var.less +15 -14
- package/styles/cssVariable.css +1 -1
- package/styles/cssVariable.less +8 -10
- package/styles/index.css +1 -1
- package/styles/mixins/index.less +0 -1
- package/types/components/Alert/Alert.type.d.ts +5 -7
- package/types/components/Alert/Alert.vue.d.ts +5 -15
- package/types/components/Alert/index.d.ts +9 -27
- package/types/components/Calendar/Calendar.vue.d.ts +2 -2
- package/types/components/Calendar/index.d.ts +6 -6
- package/types/components/DatePicker/DatePicker.vue.d.ts +14 -14
- package/types/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
- package/types/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
- package/types/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
- package/types/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
- package/types/components/DatePicker/index.d.ts +28 -28
- package/types/components/Drawer/Drawer.d.ts +9 -0
- package/types/components/Drawer/Drawer.type.d.ts +4 -0
- package/types/components/Drawer/index.d.ts +15 -0
- package/types/components/Mask/Mask.d.ts +2 -1
- package/types/components/Mask/index.d.ts +5 -2
- package/types/components/Menu/MenuItem.vue.d.ts +33 -33
- package/types/components/Menu/index.d.ts +33 -33
- package/types/components/Message/Message.type.d.ts +1 -0
- package/types/components/Notice/Notice.type.d.ts +3 -2
- package/types/components/Rate/Rate.vue.d.ts +33 -33
- package/types/components/Rate/index.d.ts +66 -66
- package/types/components/Slider/Slider.d.ts +0 -20
- package/types/components/Slider/Slider.type.d.ts +0 -9
- package/types/components/Slider/index.d.ts +0 -33
- package/types/components/Statistic/Statistic.vue.d.ts +33 -33
- package/types/components/Statistic/index.d.ts +66 -66
- package/types/components/Table/BaseTable.vue.d.ts +132 -132
- package/types/components/Table/BodyTable.vue.d.ts +132 -132
- package/types/components/Table/HeadTable.vue.d.ts +132 -132
- package/types/components/Table/Table.vue.d.ts +264 -264
- package/types/components/Table/TableBox.vue.d.ts +264 -264
- package/types/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
- package/types/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
- package/types/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
- package/types/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
- package/types/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
- package/types/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
- package/types/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
- package/types/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
- package/types/components/Tag/Tag.type.d.ts +0 -4
- package/types/components/Tag/Tag.vue.d.ts +7 -20
- package/types/components/Tag/index.d.ts +21 -48
- package/types/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
- package/types/components/ThemePanel/index.d.ts +66 -66
- package/types/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
- package/types/components/TimePicker/TimePicker.vue.d.ts +12 -12
- package/types/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
- package/types/components/TimePicker/index.d.ts +28 -28
- package/types/components/Tooltip/Tooltip.type.d.ts +2 -2
- package/types/components/Tooltip/Tooltip.vue.d.ts +13 -13
- package/types/components/Tooltip/index.d.ts +33 -33
- package/types/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
- package/types/components/TreeSelect/index.d.ts +3 -3
- package/uxd-ui.css +1 -1
- package/uxd-ui.esm.min.mjs +6 -6
- package/uxd-ui.esm.mjs +152 -103
- package/uxd-ui.umd.js +151 -101
- package/uxd-ui.umd.min.js +6 -6
- package/styles/mixins/close.less +0 -12
|
@@ -344,8 +344,8 @@ export declare const UMenu: {
|
|
|
344
344
|
default: boolean;
|
|
345
345
|
};
|
|
346
346
|
color: {
|
|
347
|
-
type: import("vue").PropType<"
|
|
348
|
-
default: "
|
|
347
|
+
type: import("vue").PropType<"light" | "red">;
|
|
348
|
+
default: "light" | "red";
|
|
349
349
|
validator: (val: string) => boolean;
|
|
350
350
|
};
|
|
351
351
|
}>> & Readonly<{
|
|
@@ -357,41 +357,41 @@ export declare const UMenu: {
|
|
|
357
357
|
prefixCls: import("vue").ComputedRef<string>;
|
|
358
358
|
arrowStyle: import("vue").ComputedRef<{
|
|
359
359
|
top: string;
|
|
360
|
+
right: string;
|
|
360
361
|
transform: string;
|
|
361
362
|
bottom?: undefined;
|
|
362
363
|
left?: undefined;
|
|
363
|
-
right?: undefined;
|
|
364
364
|
} | {
|
|
365
365
|
bottom: string;
|
|
366
|
+
right: string;
|
|
366
367
|
transform: string;
|
|
367
368
|
top?: undefined;
|
|
368
369
|
left?: undefined;
|
|
369
|
-
right?: undefined;
|
|
370
370
|
} | {
|
|
371
|
+
top: string;
|
|
371
372
|
left: string;
|
|
372
373
|
transform: string;
|
|
373
|
-
top?: undefined;
|
|
374
|
-
bottom?: undefined;
|
|
375
374
|
right?: undefined;
|
|
375
|
+
bottom?: undefined;
|
|
376
376
|
} | {
|
|
377
|
-
|
|
377
|
+
bottom: string;
|
|
378
|
+
left: string;
|
|
378
379
|
transform: string;
|
|
379
380
|
top?: undefined;
|
|
380
|
-
|
|
381
|
-
left?: undefined;
|
|
381
|
+
right?: undefined;
|
|
382
382
|
} | {
|
|
383
383
|
top?: undefined;
|
|
384
|
+
right?: undefined;
|
|
384
385
|
transform?: undefined;
|
|
385
386
|
bottom?: undefined;
|
|
386
387
|
left?: undefined;
|
|
387
|
-
right?: undefined;
|
|
388
388
|
}>;
|
|
389
389
|
onVisibleChange: (val: boolean) => void;
|
|
390
390
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
391
391
|
'visible-change': (v: boolean) => boolean;
|
|
392
392
|
'update:visible': (v: boolean) => boolean;
|
|
393
393
|
}, import("vue").PublicProps, {
|
|
394
|
-
color: "
|
|
394
|
+
color: "light" | "red";
|
|
395
395
|
offset: number[];
|
|
396
396
|
visible: boolean;
|
|
397
397
|
placement: "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
|
|
@@ -645,8 +645,8 @@ export declare const UMenu: {
|
|
|
645
645
|
default: boolean;
|
|
646
646
|
};
|
|
647
647
|
color: {
|
|
648
|
-
type: import("vue").PropType<"
|
|
649
|
-
default: "
|
|
648
|
+
type: import("vue").PropType<"light" | "red">;
|
|
649
|
+
default: "light" | "red";
|
|
650
650
|
validator: (val: string) => boolean;
|
|
651
651
|
};
|
|
652
652
|
}>> & Readonly<{
|
|
@@ -658,38 +658,38 @@ export declare const UMenu: {
|
|
|
658
658
|
prefixCls: import("vue").ComputedRef<string>;
|
|
659
659
|
arrowStyle: import("vue").ComputedRef<{
|
|
660
660
|
top: string;
|
|
661
|
+
right: string;
|
|
661
662
|
transform: string;
|
|
662
663
|
bottom?: undefined;
|
|
663
664
|
left?: undefined;
|
|
664
|
-
right?: undefined;
|
|
665
665
|
} | {
|
|
666
666
|
bottom: string;
|
|
667
|
+
right: string;
|
|
667
668
|
transform: string;
|
|
668
669
|
top?: undefined;
|
|
669
670
|
left?: undefined;
|
|
670
|
-
right?: undefined;
|
|
671
671
|
} | {
|
|
672
|
+
top: string;
|
|
672
673
|
left: string;
|
|
673
674
|
transform: string;
|
|
674
|
-
top?: undefined;
|
|
675
|
-
bottom?: undefined;
|
|
676
675
|
right?: undefined;
|
|
676
|
+
bottom?: undefined;
|
|
677
677
|
} | {
|
|
678
|
-
|
|
678
|
+
bottom: string;
|
|
679
|
+
left: string;
|
|
679
680
|
transform: string;
|
|
680
681
|
top?: undefined;
|
|
681
|
-
|
|
682
|
-
left?: undefined;
|
|
682
|
+
right?: undefined;
|
|
683
683
|
} | {
|
|
684
684
|
top?: undefined;
|
|
685
|
+
right?: undefined;
|
|
685
686
|
transform?: undefined;
|
|
686
687
|
bottom?: undefined;
|
|
687
688
|
left?: undefined;
|
|
688
|
-
right?: undefined;
|
|
689
689
|
}>;
|
|
690
690
|
onVisibleChange: (val: boolean) => void;
|
|
691
691
|
}, {}, {}, {}, {
|
|
692
|
-
color: "
|
|
692
|
+
color: "light" | "red";
|
|
693
693
|
offset: number[];
|
|
694
694
|
visible: boolean;
|
|
695
695
|
placement: "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
|
|
@@ -752,8 +752,8 @@ export declare const UMenu: {
|
|
|
752
752
|
default: boolean;
|
|
753
753
|
};
|
|
754
754
|
color: {
|
|
755
|
-
type: import("vue").PropType<"
|
|
756
|
-
default: "
|
|
755
|
+
type: import("vue").PropType<"light" | "red">;
|
|
756
|
+
default: "light" | "red";
|
|
757
757
|
validator: (val: string) => boolean;
|
|
758
758
|
};
|
|
759
759
|
}>> & Readonly<{
|
|
@@ -765,41 +765,41 @@ export declare const UMenu: {
|
|
|
765
765
|
prefixCls: import("vue").ComputedRef<string>;
|
|
766
766
|
arrowStyle: import("vue").ComputedRef<{
|
|
767
767
|
top: string;
|
|
768
|
+
right: string;
|
|
768
769
|
transform: string;
|
|
769
770
|
bottom?: undefined;
|
|
770
771
|
left?: undefined;
|
|
771
|
-
right?: undefined;
|
|
772
772
|
} | {
|
|
773
773
|
bottom: string;
|
|
774
|
+
right: string;
|
|
774
775
|
transform: string;
|
|
775
776
|
top?: undefined;
|
|
776
777
|
left?: undefined;
|
|
777
|
-
right?: undefined;
|
|
778
778
|
} | {
|
|
779
|
+
top: string;
|
|
779
780
|
left: string;
|
|
780
781
|
transform: string;
|
|
781
|
-
top?: undefined;
|
|
782
|
-
bottom?: undefined;
|
|
783
782
|
right?: undefined;
|
|
783
|
+
bottom?: undefined;
|
|
784
784
|
} | {
|
|
785
|
-
|
|
785
|
+
bottom: string;
|
|
786
|
+
left: string;
|
|
786
787
|
transform: string;
|
|
787
788
|
top?: undefined;
|
|
788
|
-
|
|
789
|
-
left?: undefined;
|
|
789
|
+
right?: undefined;
|
|
790
790
|
} | {
|
|
791
791
|
top?: undefined;
|
|
792
|
+
right?: undefined;
|
|
792
793
|
transform?: undefined;
|
|
793
794
|
bottom?: undefined;
|
|
794
795
|
left?: undefined;
|
|
795
|
-
right?: undefined;
|
|
796
796
|
}>;
|
|
797
797
|
onVisibleChange: (val: boolean) => void;
|
|
798
798
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
799
799
|
'visible-change': (v: boolean) => boolean;
|
|
800
800
|
'update:visible': (v: boolean) => boolean;
|
|
801
801
|
}, string, {
|
|
802
|
-
color: "
|
|
802
|
+
color: "light" | "red";
|
|
803
803
|
offset: number[];
|
|
804
804
|
visible: boolean;
|
|
805
805
|
placement: "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
|
|
@@ -38,7 +38,8 @@ const getMessageInstance = () => {
|
|
|
38
38
|
const notice = (args) => {
|
|
39
39
|
const {
|
|
40
40
|
type,
|
|
41
|
-
content
|
|
41
|
+
content,
|
|
42
|
+
showIcon = true
|
|
42
43
|
} = args;
|
|
43
44
|
const duration = args.duration !== void 0 ? args.duration : defaultDuration;
|
|
44
45
|
const iconType = iconTypes[type];
|
|
@@ -55,8 +56,8 @@ const notice = (args) => {
|
|
|
55
56
|
background: args.background,
|
|
56
57
|
content: () => vue.createVNode("div", {
|
|
57
58
|
"class": `${prefixCls}-custom-content ${prefixCls}-${type}`,
|
|
58
|
-
"data-
|
|
59
|
-
}, [vue.createVNode(index.UIcon, {
|
|
59
|
+
"data-type": type
|
|
60
|
+
}, [showIcon && vue.createVNode(index.UIcon, {
|
|
60
61
|
"spin": type === "loading"
|
|
61
62
|
}, {
|
|
62
63
|
default: () => [vue.createVNode(iconType, null, null)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sources":["../../../../src/components/Message/Message.tsx"],"sourcesContent":["import type { Component } from 'vue';\nimport Notification from '@uxd-ui/components/Notification';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CheckCircle, AlertCircle, CircleX, LoaderCircle } from 'lucide-vue-next';\nimport type { NoticationPublicInstance } from '../Notification/Notication.type';\nimport type { MessageOption, MessageParams, MessageType } from './Message.type';\n\nlet prefixCls = 'uui-message';\nconst prefixKey = 'uui_message_key_';\nlet defaultDuration = 3;\nlet defaultTop = '24px';\nlet key = 0;\nlet messageInstance: NoticationPublicInstance | null;\nlet transitionName = 'move-up';\nlet maxCount: number;\n\nconst iconTypes: Record<MessageType, Component> = {\n info: Info,\n success: CheckCircle,\n warning: AlertCircle,\n error: CircleX,\n loading: LoaderCircle\n};\n\nconst getMessageInstance = () => {\n messageInstance =\n messageInstance ||\n (Notification.newInstance({\n prefixCls,\n transitionName,\n style: { top: defaultTop },\n maxCount,\n type: 'message'\n }) as NoticationPublicInstance);\n return messageInstance;\n};\n\nconst notice = (args: MessageParams) => {\n const { type, content } = args;\n const duration = args.duration !== undefined ? args.duration : defaultDuration;\n const iconType = iconTypes[type];\n key += 1;\n const target = args.key || `${prefixKey}${key}`;\n\n const instance = getMessageInstance();\n instance &&\n instance.notice({\n key: target,\n duration,\n style: {},\n msgType: type,\n closable: args.closable,\n onClose: args.onClose,\n background: args.background,\n content: () => (\n <div class={`${prefixCls}-custom-content ${prefixCls}-${type}`} data-
|
|
1
|
+
{"version":3,"file":"Message.js","sources":["../../../../src/components/Message/Message.tsx"],"sourcesContent":["import type { Component } from 'vue';\nimport Notification from '@uxd-ui/components/Notification';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CheckCircle, AlertCircle, CircleX, LoaderCircle } from 'lucide-vue-next';\nimport type { NoticationPublicInstance } from '../Notification/Notication.type';\nimport type { MessageOption, MessageParams, MessageType } from './Message.type';\n\nlet prefixCls = 'uui-message';\nconst prefixKey = 'uui_message_key_';\nlet defaultDuration = 3;\nlet defaultTop = '24px';\nlet key = 0;\nlet messageInstance: NoticationPublicInstance | null;\nlet transitionName = 'move-up';\nlet maxCount: number;\n\nconst iconTypes: Record<MessageType, Component> = {\n info: Info,\n success: CheckCircle,\n warning: AlertCircle,\n error: CircleX,\n loading: LoaderCircle\n};\n\nconst getMessageInstance = () => {\n messageInstance =\n messageInstance ||\n (Notification.newInstance({\n prefixCls,\n transitionName,\n style: { top: defaultTop },\n maxCount,\n type: 'message'\n }) as NoticationPublicInstance);\n return messageInstance;\n};\n\nconst notice = (args: MessageParams) => {\n const { type, content, showIcon = true } = args;\n const duration = args.duration !== undefined ? args.duration : defaultDuration;\n const iconType = iconTypes[type];\n key += 1;\n const target = args.key || `${prefixKey}${key}`;\n\n const instance = getMessageInstance();\n instance &&\n instance.notice({\n key: target,\n duration,\n style: {},\n msgType: type,\n closable: args.closable,\n onClose: args.onClose,\n background: args.background,\n content: () => (\n <div class={`${prefixCls}-custom-content ${prefixCls}-${type}`} data-type={type}>\n {showIcon && (\n <UIcon spin={type === 'loading'}>\n <iconType />\n </UIcon>\n )}\n <span>{typeof content === 'function' ? content() : content}</span>\n </div>\n )\n });\n\n const result = () => {\n if (messageInstance) {\n messageInstance.remove(target);\n }\n };\n return result;\n};\n\nconst api = {\n config(options: MessageOption) {\n if (options.top !== undefined) {\n defaultTop = options.top;\n messageInstance = null;\n }\n if (options.duration !== undefined) {\n defaultDuration = options.duration;\n messageInstance = null;\n }\n if (options.prefixCls !== undefined) {\n prefixCls = options.prefixCls;\n }\n if (options.transitionName !== undefined) {\n transitionName = options.transitionName;\n messageInstance = null;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n messageInstance = null;\n }\n },\n message(type: MessageType, options: string | Omit<MessageParams, 'type'>, duration?: number) {\n let opt: MessageParams;\n if (typeof options === 'string') {\n opt = {\n type,\n content: options,\n duration\n };\n } else {\n opt = {\n type,\n ...options,\n ...(duration ? { duration } : {})\n };\n }\n return notice(opt);\n },\n close(closeKey: string) {\n if (messageInstance) {\n messageInstance.remove(closeKey);\n }\n },\n destroy() {\n if (messageInstance) {\n messageInstance.destroy();\n messageInstance = null;\n }\n }\n};\n\nexport type MessageFunction = (options: string | Omit<MessageParams, 'type'>, duration?: number) => () => void;\n\nexport interface Message {\n config(options: MessageOption): void;\n message(type: MessageType, options: string | Omit<MessageParams, 'type'>, duration?: number | undefined): () => void;\n close(closeKey: string): void;\n destroy(): void;\n success: MessageFunction;\n info: MessageFunction;\n error: MessageFunction;\n warning: MessageFunction;\n loading: MessageFunction;\n}\n\n(['success', 'info', 'error', 'warning', 'loading'] as MessageType[]).forEach((type) => {\n (api as Message)[type] = (options: string | Omit<MessageParams, 'type'>, duration?: number) => {\n return api.message(type, options, duration);\n };\n});\n\nexport default api as Message;\n"],"names":["prefixCls","prefixKey","defaultDuration","defaultTop","key","messageInstance","transitionName","maxCount","iconTypes","info","Info","success","CheckCircle","warning","AlertCircle","error","CircleX","loading","LoaderCircle","getMessageInstance","Notification","newInstance","style","top","type","notice","args","content","showIcon","duration","undefined","iconType","target","instance","msgType","closable","onClose","background","_createVNode","UIcon","default","result","remove","api","config","options","message","opt","close","closeKey","destroy","forEach"],"mappings":"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"}
|
|
@@ -11,9 +11,9 @@ var Notification = require('../Notification/Notification.js');
|
|
|
11
11
|
let prefixCls = "uui-notice";
|
|
12
12
|
const prefixKey = "uui_notice_key_";
|
|
13
13
|
let defaultDuration = 4.5;
|
|
14
|
-
let defaultPlacement = "
|
|
15
|
-
let defaultBottom = "
|
|
16
|
-
let defaultTop = "
|
|
14
|
+
let defaultPlacement = "bottom-right";
|
|
15
|
+
let defaultBottom = "0px";
|
|
16
|
+
let defaultTop = "0px";
|
|
17
17
|
let key = 0;
|
|
18
18
|
const noticeInstance = {};
|
|
19
19
|
const transitionName = "move-notice";
|
|
@@ -88,7 +88,8 @@ const notice = (args) => {
|
|
|
88
88
|
placement,
|
|
89
89
|
top,
|
|
90
90
|
bottom,
|
|
91
|
-
|
|
91
|
+
action,
|
|
92
|
+
showIcon = true
|
|
92
93
|
} = args;
|
|
93
94
|
const duration = args.duration !== void 0 ? args.duration : defaultDuration;
|
|
94
95
|
let iconType = propIconType || void 0;
|
|
@@ -102,15 +103,14 @@ const notice = (args) => {
|
|
|
102
103
|
top,
|
|
103
104
|
bottom
|
|
104
105
|
});
|
|
105
|
-
const IconNode = iconType ? vue.createVNode("span", {
|
|
106
|
-
"class": `${prefixCls}-icon ${prefixCls}-icon-${type}
|
|
107
|
-
"data-color": type || void 0
|
|
106
|
+
const IconNode = showIcon && iconType ? vue.createVNode("span", {
|
|
107
|
+
"class": `${prefixCls}-icon ${prefixCls}-icon-${type}`
|
|
108
108
|
}, [vue.createVNode(index.UIcon, {
|
|
109
109
|
"class": `${iconClass || ""}`
|
|
110
110
|
}, {
|
|
111
111
|
default: () => [vue.createVNode(iconType, null, null)]
|
|
112
112
|
})]) : null;
|
|
113
|
-
const withIconCls = iconType ? `${prefixCls}-with-icon ${prefixCls}-with-${type} ` : "";
|
|
113
|
+
const withIconCls = showIcon && iconType ? `${prefixCls}-with-icon ${prefixCls}-with-${type} ` : "";
|
|
114
114
|
const withDescCls = desc ? `${prefixCls}-with-desc` : "";
|
|
115
115
|
instance.notice({
|
|
116
116
|
key: target,
|
|
@@ -120,14 +120,16 @@ const notice = (args) => {
|
|
|
120
120
|
style: args.style || {},
|
|
121
121
|
class: args.class,
|
|
122
122
|
content: () => vue.createVNode("div", {
|
|
123
|
-
"class": `${withIconCls} ${withDescCls}
|
|
124
|
-
|
|
123
|
+
"class": `${prefixCls}-wrapper ${withIconCls} ${withDescCls}`,
|
|
124
|
+
"data-type": type || void 0
|
|
125
|
+
}, [IconNode, vue.createVNode("div", null, [vue.createVNode("div", {
|
|
125
126
|
"class": `${prefixCls}-title`
|
|
126
127
|
}, [typeof title === "function" ? title() : title]), vue.createVNode("div", {
|
|
127
128
|
"class": `${prefixCls}-desc`
|
|
128
|
-
}, [typeof desc === "function" ? desc() : desc]),
|
|
129
|
-
"class": `${prefixCls}-btn
|
|
130
|
-
|
|
129
|
+
}, [typeof desc === "function" ? desc() : desc])]), action ? vue.createVNode("button", {
|
|
130
|
+
"class": `${prefixCls}-btn`,
|
|
131
|
+
"onClick": args.onAction
|
|
132
|
+
}, [action]) : null])
|
|
131
133
|
});
|
|
132
134
|
const result = () => {
|
|
133
135
|
const cls = `${prefixCls}-${placement}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notice.js","sources":["../../../../src/components/Notice/Notice.tsx"],"sourcesContent":["import type { Component } from 'vue';\nimport Notification from '@uxd-ui/components/Notification';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CircleCheck, CircleAlert, CircleX } from 'lucide-vue-next';\nimport type { NoticationPublicInstance } from '../Notification/Notication.type';\nimport type { Notice, NoticeOptions, NoticeParams, NoticePlacement, NoticeType } from './Notice.type';\n\nlet prefixCls = 'uui-notice';\nconst prefixKey = 'uui_notice_key_';\nlet defaultDuration = 4.5;\nlet defaultPlacement: NoticePlacement = '
|
|
1
|
+
{"version":3,"file":"Notice.js","sources":["../../../../src/components/Notice/Notice.tsx"],"sourcesContent":["import type { Component } from 'vue';\nimport Notification from '@uxd-ui/components/Notification';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CircleCheck, CircleAlert, CircleX } from 'lucide-vue-next';\nimport type { NoticationPublicInstance } from '../Notification/Notication.type';\nimport type { Notice, NoticeOptions, NoticeParams, NoticePlacement, NoticeType } from './Notice.type';\n\nlet prefixCls = 'uui-notice';\nconst prefixKey = 'uui_notice_key_';\nlet defaultDuration = 4.5;\nlet defaultPlacement: NoticePlacement = 'bottom-right';\nlet defaultBottom = '0px';\nlet defaultTop = '0px';\nlet key = 0;\nconst noticeInstance: Record<string, NoticationPublicInstance> = {};\nconst transitionName = 'move-notice';\nlet maxCount: number;\n\nconst iconTypes: Record<NoticeType, Component[]> = {\n info: [Info, Info],\n success: [CircleCheck, CircleCheck],\n warning: [CircleAlert, CircleAlert],\n error: [CircleX, CircleX]\n};\n\nconst getStyle = (placement: NoticePlacement, top = defaultTop, bottom = defaultBottom) => {\n let style;\n switch (placement) {\n case 'top-left':\n style = {\n left: '0px',\n top,\n bottom: 'auto'\n };\n break;\n case 'top-right':\n style = {\n right: '0px',\n top,\n bottom: 'auto'\n };\n break;\n case 'bottom-left':\n style = {\n left: '0px',\n top: 'auto',\n bottom\n };\n break;\n default:\n style = {\n right: '0px',\n top: 'auto',\n bottom\n };\n break;\n }\n return style;\n};\n\nconst getNoticeInstance = ({ placement = defaultPlacement, top, bottom }: NoticeParams) => {\n const cls = `${prefixCls}-${placement}`;\n if (noticeInstance[cls]) {\n return noticeInstance[cls];\n }\n const instance: NoticationPublicInstance = Notification.newInstance({\n prefixCls,\n class: cls,\n style: getStyle(placement, top, bottom),\n transitionName,\n maxCount,\n type: 'notice'\n });\n noticeInstance[cls] = instance;\n return instance;\n};\n\nconst notice = (args: NoticeParams) => {\n const { type, iconType: propIconType, iconClass, title, desc, placement, top, bottom, action, showIcon = true } = args;\n const duration = args.duration !== undefined ? args.duration : defaultDuration;\n let iconType = propIconType || undefined;\n if (type && !iconType) {\n iconType = desc ? iconTypes[type][1] : iconTypes[type][0];\n }\n key += 1;\n const target = args.key || `${prefixKey}${key}`;\n const instance = getNoticeInstance({\n placement,\n top,\n bottom\n } as NoticeParams);\n\n // const computedColor = {\n // info: 'blue',\n // error: 'red',\n // warning: 'orange',\n // success: 'green'\n // };\n\n const IconNode =\n showIcon && iconType ? (\n <span class={`${prefixCls}-icon ${prefixCls}-icon-${type}`}>\n <UIcon class={`${iconClass || ''}`}>\n <iconType />\n </UIcon>\n </span>\n ) : null;\n const withIconCls = showIcon && iconType ? `${prefixCls}-with-icon ${prefixCls}-with-${type} ` : '';\n const withDescCls = desc ? `${prefixCls}-with-desc` : '';\n instance.notice({\n key: target,\n duration,\n closable: true,\n onClose: args.onClose,\n style: args.style || {},\n class: args.class,\n content: () => (\n <div class={`${prefixCls}-wrapper ${withIconCls} ${withDescCls}`} data-type={type || undefined}>\n {IconNode}\n <div>\n <div class={`${prefixCls}-title`}>{typeof title === 'function' ? title() : title}</div>\n <div class={`${prefixCls}-desc`}>{typeof desc === 'function' ? desc() : desc}</div>\n </div>\n {action ? (\n <button class={`${prefixCls}-btn`} onClick={args.onAction}>\n {action}\n </button>\n ) : null}\n </div>\n )\n });\n\n const result = () => {\n const cls = `${prefixCls}-${placement}`;\n if (noticeInstance[cls]) {\n noticeInstance[cls].remove(target);\n }\n };\n return result;\n};\n\nconst api = {\n config(options: NoticeOptions) {\n if (options.duration !== undefined) {\n defaultDuration = options.duration;\n }\n if (options.placement !== undefined) {\n defaultPlacement = options.placement;\n }\n if (options.bottom !== undefined) {\n defaultBottom = typeof options.bottom === 'number' ? `${options.bottom}px` : options.bottom;\n }\n if (options.top !== undefined) {\n defaultTop = typeof options.top === 'number' ? `${options.top}px` : options.top;\n }\n if (options.prefixCls !== undefined) {\n prefixCls = options.prefixCls;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n }\n },\n open: notice,\n close(closeKey: string) {\n Object.keys(noticeInstance).forEach((cls) => {\n noticeInstance[cls].remove(closeKey);\n });\n },\n destroy() {\n Object.keys(noticeInstance).forEach((cls) => {\n noticeInstance[cls].destroy();\n delete noticeInstance[cls];\n });\n }\n};\n\n(['success', 'info', 'error', 'warning'] as NoticeType[]).forEach((type) => {\n (api as Notice)[type] = (args: Omit<NoticeParams, 'type'>) => {\n return api.open({ type, ...args });\n };\n});\n\nexport default api as Notice;\n"],"names":["prefixCls","prefixKey","defaultDuration","defaultPlacement","defaultBottom","defaultTop","key","noticeInstance","transitionName","maxCount","iconTypes","info","Info","success","CircleCheck","warning","CircleAlert","error","CircleX","getStyle","placement","top","bottom","style","left","right","getNoticeInstance","cls","instance","Notification","newInstance","class","type","notice","args","iconType","propIconType","iconClass","title","desc","action","showIcon","duration","undefined","target","IconNode","_createVNode","UIcon","default","withIconCls","withDescCls","closable","onClose","content","onAction","result","remove","api","config","options","open","close","closeKey","Object","keys","forEach","destroy"],"mappings":"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"}
|
|
@@ -5,16 +5,17 @@ export interface NoticeParams {
|
|
|
5
5
|
key?: string;
|
|
6
6
|
type?: NoticeType;
|
|
7
7
|
iconType?: Component;
|
|
8
|
+
showIcon?: boolean;
|
|
8
9
|
iconClass?: string;
|
|
9
10
|
title?: string | (() => VNodeChild);
|
|
10
11
|
desc?: string | (() => VNodeChild);
|
|
11
12
|
placement?: NoticePlacement;
|
|
12
13
|
top?: string;
|
|
13
14
|
bottom?: string;
|
|
14
|
-
|
|
15
|
+
action?: string;
|
|
15
16
|
duration?: number;
|
|
16
17
|
onClose?: () => void;
|
|
17
|
-
|
|
18
|
+
onAction?: () => void;
|
|
18
19
|
style?: CSSProperties;
|
|
19
20
|
class?: string;
|
|
20
21
|
}
|
|
@@ -109,11 +109,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
109
109
|
}
|
|
110
110
|
])
|
|
111
111
|
}, [
|
|
112
|
-
vue.
|
|
113
|
-
class: vue.normalizeClass(`${_ctx.prefixCls}-content-text`)
|
|
114
|
-
}, [
|
|
115
|
-
vue.createVNode(_component_Render, { render: _ctx.content }, null, 8, ["render"])
|
|
116
|
-
], 2),
|
|
112
|
+
vue.createVNode(_component_Render, { render: _ctx.content }, null, 8, ["render"]),
|
|
117
113
|
_ctx.closable ? (vue.openBlock(), vue.createElementBlock("a", {
|
|
118
114
|
key: 0,
|
|
119
115
|
tabindex: "0",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notice.js","sources":["../../../../src/components/Notification/Notice.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n prefixCls,\n {\n [`${prefixCls}-closable`]: closable,\n [`${prefixCls}-background`]: background\n }\n ]\"\n @mouseenter=\"clearCloseTimer\"\n @mouseleave=\"startCloseTimer\"\n >\n <div\n :class=\"[\n `${prefixCls}-content`,\n {\n [`${prefixCls}-content-${msgType}`]: msgType\n }\n ]\"\n >\n <
|
|
1
|
+
{"version":3,"file":"Notice.js","sources":["../../../../src/components/Notification/Notice.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n prefixCls,\n {\n [`${prefixCls}-closable`]: closable,\n [`${prefixCls}-background`]: background\n }\n ]\"\n @mouseenter=\"clearCloseTimer\"\n @mouseleave=\"startCloseTimer\"\n >\n <div\n :class=\"[\n `${prefixCls}-content`,\n {\n [`${prefixCls}-content-${msgType}`]: msgType\n }\n ]\"\n >\n <Render :render=\"content\" />\n\n <a v-if=\"closable\" tabindex=\"0\" :class=\"`${prefixCls}-close`\" @click.stop.prevent=\"handleClose\">\n <UIcon>\n <X />\n </UIcon>\n </a>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, onMounted, onBeforeUnmount, watch } from 'vue';\nimport type { PropType, VNodeChild } from 'vue';\nimport { X } from 'lucide-vue-next';\nimport UIcon from '@uxd-ui/components/Icon';\nimport type { JSX } from 'vue/jsx-runtime';\nimport Render from '../base/Render';\nimport type { NoticeProps } from './Notication.type';\n\nexport default defineComponent({\n components: {\n UIcon,\n X,\n Render\n },\n props: {\n prefix: {\n type: String\n },\n duration: {\n type: Number,\n default: 1.5\n },\n closable: {\n type: Boolean,\n default: undefined as undefined\n },\n onClose: {\n type: Function as PropType<() => void>\n },\n content: {\n type: Function as PropType<() => VNodeChild | JSX.Element>\n },\n background: {\n type: Boolean,\n default: undefined as undefined\n },\n msgType: {\n type: String\n }\n },\n emits: ['close'],\n setup(props: NoticeProps, { emit }) {\n const prefixCls = computed(() => {\n return `${props.prefix}-notice`;\n });\n\n let closeTimer: any = null;\n let willDestory = false;\n\n const clearCloseTimer = () => {\n if (closeTimer) {\n clearTimeout(closeTimer);\n closeTimer = null;\n }\n };\n\n const handleClose = () => {\n clearCloseTimer();\n emit('close');\n };\n\n const startCloseTimer = () => {\n clearCloseTimer();\n if (props.duration !== 0 && !willDestory) {\n closeTimer = setTimeout(() => {\n handleClose();\n }, props.duration * 1000);\n }\n };\n\n onMounted(() => {\n startCloseTimer();\n });\n\n onBeforeUnmount(() => {\n clearCloseTimer();\n willDestory = true;\n });\n\n watch(\n () => props.duration,\n () => {\n startCloseTimer();\n }\n );\n\n return {\n prefixCls,\n handleClose,\n startCloseTimer,\n clearCloseTimer\n };\n }\n});\n</script>\n"],"names":["defineComponent","UIcon","X","Render","computed","_createElementBlock","_normalizeClass","_createElementVNode","_createVNode"],"mappings":";;;;;;;;;;AAwCA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,YAAY;AAAA,WACVC;AAAA,OACAC;AAAA,YACAC;AAAA;AACF,EACA,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,MAAM;AAAA;AACR,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,SAAS;AAAA,MACP,MAAM;AAAA;AACR,IACA,SAAS;AAAA,MACP,MAAM;AAAA;AACR,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,SAAS;AAAA,MACP,MAAM;AAAA;AACR;AACF,EACA,OAAO,CAAC,OAAO;AAAA,EACf,MAAM,OAAoB,EAAE,QAAQ;UAC5B,YAAYC,aAAS,MAAM;aACxB,GAAG,MAAM;AAAA,KACjB;QAEG,aAAkB;QAClB,cAAc;UAEZ,kBAAkB,MAAM;UACxB,YAAY;qBACD,UAAU;qBACV;AAAA;AACf;UAGI,cAAc,MAAM;;WAEnB,OAAO;AAAA;UAGR,kBAAkB,MAAM;;UAExB,MAAM,aAAa,KAAK,CAAC,aAAa;qBAC3B,WAAW,MAAM;;AAChB,WACX,MAAM,WAAW,GAAI;AAAA;AAC1B;kBAGQ,MAAM;;AACE,KACjB;wBAEe,MAAM;;oBAEN;AAAA,KACf;;MAGC,MAAM,MAAM;AAAA,MACZ,MAAM;;AACY;AAClB;WAGK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;;;0BA5HCC,uBA2BM;IA1BH,OAAKC;MAAU;;YAA+B,4BAAuB;YAAsB,8BAAyB;;;IAOpH,cAAU,uCAAE;IACZ,cAAU,uCAAE;;IAEbC,uBAeM;MAdH,OAAKD;WAAe;;cAA6C,0BAAqB,iBAAY;;;;MAOnGE,gBAA4B,qBAAnB,QAAQ;MAER,kCAATH,uBAII;;QAJe,UAAS;AAAA,QAAK,OAAKC,sBAAK,sBAAS;AAAA,QAAW,SAAK,yDAAe,+CAAW;;QAC5FE,gBAEQ;+BADN,MAAK;AAAA,YAALA,gBAAK;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notification.js","sources":["../../../../src/components/Notification/Notification.vue"],"sourcesContent":["<template>\n <div :class=\"[prefixCls]\">\n <transition-group tag=\"span\" appear :name=\"transitionName\" :leave-active-class=\"type === 'message' ? 'message-up-leave' : undefined\">\n <Notice\n v-for=\"notice in notices\"\n :key=\"notice.key\"\n :prefix=\"prefixCls\"\n :duration=\"notice.duration\"\n :closable=\"notice.closable\"\n :style=\"notice.style\"\n :background=\"notice.background\"\n :content=\"notice.content\"\n :class=\"notice.class\"\n :msg-type=\"notice.msgType\"\n @close=\"handleClose(notice)\"\n @click=\"notice.onClick || noop\"\n
|
|
1
|
+
{"version":3,"file":"Notification.js","sources":["../../../../src/components/Notification/Notification.vue"],"sourcesContent":["<template>\n <div :class=\"[prefixCls]\">\n <transition-group tag=\"span\" appear :name=\"transitionName\" :leave-active-class=\"type === 'message' ? 'message-up-leave' : undefined\">\n <Notice\n v-for=\"notice in notices\"\n :key=\"notice.key\"\n :prefix=\"prefixCls\"\n :duration=\"notice.duration\"\n :closable=\"notice.closable\"\n :style=\"notice.style\"\n :background=\"notice.background\"\n :content=\"notice.content\"\n :class=\"notice.class\"\n :msg-type=\"notice.msgType\"\n @close=\"handleClose(notice)\"\n @click=\"notice.onClick || noop\"\n />\n </transition-group>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue';\nimport type { PropType, Ref } from 'vue';\nimport { oneOf } from '../../utils/propsValidators';\nimport Notice from './Notice.vue';\nimport type { NoticeInstance, NoticationType } from './Notication.type';\n\nfunction noop() {}\nlet i = 0;\nconst generateId = () => {\n return (prefix = 'uui-notification') => {\n i += 1;\n return `${prefix}-${i}`;\n };\n};\nconst defineProps = {\n prefixCls: {\n type: String,\n default: 'uui-notifiction'\n },\n transitionName: {\n type: String,\n default: 'fade'\n },\n maxCount: {\n type: Number\n },\n type: {\n type: String as PropType<NoticationType>,\n validator: oneOf(['message', 'notice'])\n }\n};\nexport default defineComponent({\n components: {\n Notice\n },\n props: defineProps,\n setup(props) {\n const notices: Ref<NoticeInstance[]> = ref([]);\n\n const add = (notice: NoticeInstance) => {\n const key = notice.key || generateId()(props.prefixCls);\n notice.key = key;\n const noticeIndex = notices.value.findIndex((x) => x.key === notice.key);\n if (noticeIndex !== -1) {\n notices.value.splice(noticeIndex, 1, notice);\n } else {\n if (props.maxCount && notices.value.length >= props.maxCount) {\n notices.value.shift();\n }\n notices.value.push(notice);\n }\n };\n const remove = (key: string) => {\n notices.value = notices.value.filter((x) => x.key !== key);\n };\n\n const handleClose = (n: NoticeInstance) => {\n remove(n.key as string);\n if (n.onClose) {\n n.onClose();\n }\n };\n\n return {\n notices,\n add,\n remove,\n handleClose,\n noop\n };\n }\n});\n</script>\n"],"names":["oneOf","defineComponent","Notice","ref","_createElementBlock","_normalizeClass","_createVNode","_TransitionGroup","_Fragment","_createBlock","_normalizeStyle"],"mappings":";;;;;;;;;AA4BA,SAAS,OAAO;AAAC;AACjB,IAAI,IAAI;AACR,MAAM,aAAa,MAAM;SAChB,CAAC,SAAS,uBAAuB;SACjC;WACE,GAAG,UAAU;AAAA;AAExB;AACA,MAAM,cAAc;AAAA,EAClB,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,WAAWA,sBAAM,CAAC,WAAW,QAAQ,CAAC;AAAA;AAE1C;AACA,MAAK,YAAaC,oBAAa;AAAA,EAC7B,YAAY;AAAA,YACVC;AAAA;AACF,EACA,OAAO;AAAA,EACP,MAAM,OAAO;UACL,UAAiCC,QAAI,EAAE;UAEvC,MAAM,CAAC,WAA2B;YAChC,MAAM,OAAO,OAAO,aAAa,MAAM,SAAS;aAC/C,MAAM;YACP,cAAc,QAAQ,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,OAAO,GAAG;UACnE,gBAAgB,IAAI;gBACd,MAAM,OAAO,aAAa,GAAG,MAAM;AAAA,aACtC;YACD,MAAM,YAAY,QAAQ,MAAM,UAAU,MAAM,UAAU;kBACpD,MAAM;AAAM;gBAEd,MAAM,KAAK,MAAM;AAAA;AAC3B;UAEI,SAAS,CAAC,QAAgB;cACtB,QAAQ,QAAQ,MAAM,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG;AAAA;UAGrD,cAAc,CAAC,MAAsB;aAClC,EAAE,GAAa;UAClB,EAAE,SAAS;UACX;AAAQ;AACZ;WAGK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;0BA5FCC,uBAiBM;IAjBA,OAAKC,oBAAG,cAAS;;IACrBC,gBAemBC;MAfD,KAAI;AAAA,MAAO;MAAQ,MAAM;MAAiB,sBAAoB,cAAI,iCAAsC;AAAA;2BAEtH,MAAyB;AAAA,8BAD3BH,uBAaEI,mCAZiB,cAAO,CAAjB,WAAM;kCADfC,gBAaE;YAXC,KAAK,OAAO;AAAA,YACZ,QAAQ;YACR,UAAU,OAAO;AAAA,YACjB,UAAU,OAAO;AAAA,YACjB,OAAKC,mBAAE,OAAO,KAAK;AAAA,YACnB,YAAY,OAAO;AAAA,YACnB,SAAS,OAAO;AAAA,YAChB,OAAKL,mBAAE,OAAO,KAAK;AAAA,YACnB,YAAU,OAAO;AAAA,YACjB,SAAK,YAAE,iBAAY,MAAM;AAAA,YACzB,SAAK,YAAE,OAAO,WAAW;;;;;;;;;;;;"}
|