@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.
Files changed (284) hide show
  1. package/es/components/Alert/Alert.mjs +10 -24
  2. package/es/components/Alert/Alert.mjs.map +1 -1
  3. package/es/components/Alert/Alert.type.d.ts +5 -7
  4. package/es/components/Alert/Alert.type.mjs +4 -7
  5. package/es/components/Alert/Alert.type.mjs.map +1 -1
  6. package/es/components/Alert/Alert.vue.d.ts +5 -15
  7. package/es/components/Alert/index.d.ts +9 -27
  8. package/es/components/Alert/index.mjs +1 -1
  9. package/es/components/Badge/Badge.mjs +3 -5
  10. package/es/components/Badge/Badge.mjs.map +1 -1
  11. package/es/components/Calendar/Calendar.vue.d.ts +2 -2
  12. package/es/components/Calendar/index.d.ts +6 -6
  13. package/es/components/DatePicker/DatePicker.vue.d.ts +14 -14
  14. package/es/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
  15. package/es/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
  16. package/es/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
  17. package/es/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
  18. package/es/components/DatePicker/index.d.ts +28 -28
  19. package/es/components/Drawer/Drawer.d.ts +9 -0
  20. package/es/components/Drawer/Drawer.mjs +10 -8
  21. package/es/components/Drawer/Drawer.mjs.map +1 -1
  22. package/es/components/Drawer/Drawer.type.d.ts +4 -0
  23. package/es/components/Drawer/Drawer.type.mjs +4 -0
  24. package/es/components/Drawer/Drawer.type.mjs.map +1 -1
  25. package/es/components/Drawer/index.d.ts +15 -0
  26. package/es/components/Mask/Mask.d.ts +2 -1
  27. package/es/components/Mask/Mask.mjs +6 -2
  28. package/es/components/Mask/Mask.mjs.map +1 -1
  29. package/es/components/Mask/index.d.ts +5 -2
  30. package/es/components/Menu/MenuItem.vue.d.ts +33 -33
  31. package/es/components/Menu/index.d.ts +33 -33
  32. package/es/components/Message/Message.mjs +4 -3
  33. package/es/components/Message/Message.mjs.map +1 -1
  34. package/es/components/Message/Message.type.d.ts +1 -0
  35. package/es/components/Notice/Notice.mjs +15 -13
  36. package/es/components/Notice/Notice.mjs.map +1 -1
  37. package/es/components/Notice/Notice.type.d.ts +3 -2
  38. package/es/components/Notification/Notice.mjs +1 -5
  39. package/es/components/Notification/Notice.mjs.map +1 -1
  40. package/es/components/Notification/Notification.mjs.map +1 -1
  41. package/es/components/Rate/Rate.vue.d.ts +33 -33
  42. package/es/components/Rate/index.d.ts +66 -66
  43. package/es/components/Slider/Slider.d.ts +0 -20
  44. package/es/components/Slider/Slider.mjs +1 -2
  45. package/es/components/Slider/Slider.mjs.map +1 -1
  46. package/es/components/Slider/Slider.type.d.ts +0 -9
  47. package/es/components/Slider/Slider.type.mjs +0 -13
  48. package/es/components/Slider/Slider.type.mjs.map +1 -1
  49. package/es/components/Slider/index.d.ts +0 -33
  50. package/es/components/Statistic/Statistic.vue.d.ts +33 -33
  51. package/es/components/Statistic/index.d.ts +66 -66
  52. package/es/components/Table/BaseTable.vue.d.ts +132 -132
  53. package/es/components/Table/BodyTable.vue.d.ts +132 -132
  54. package/es/components/Table/HeadTable.vue.d.ts +132 -132
  55. package/es/components/Table/Table.vue.d.ts +264 -264
  56. package/es/components/Table/TableBox.vue.d.ts +264 -264
  57. package/es/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
  58. package/es/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
  59. package/es/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
  60. package/es/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
  61. package/es/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
  62. package/es/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
  63. package/es/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
  64. package/es/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
  65. package/es/components/Tag/Tag.mjs +6 -9
  66. package/es/components/Tag/Tag.mjs.map +1 -1
  67. package/es/components/Tag/Tag.type.d.ts +0 -4
  68. package/es/components/Tag/Tag.type.mjs +0 -4
  69. package/es/components/Tag/Tag.type.mjs.map +1 -1
  70. package/es/components/Tag/Tag.vue.d.ts +7 -20
  71. package/es/components/Tag/index.d.ts +21 -48
  72. package/es/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
  73. package/es/components/ThemePanel/index.d.ts +66 -66
  74. package/es/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
  75. package/es/components/TimePicker/TimePicker.vue.d.ts +12 -12
  76. package/es/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
  77. package/es/components/TimePicker/index.d.ts +28 -28
  78. package/es/components/Tooltip/Tooltip.mjs +84 -8
  79. package/es/components/Tooltip/Tooltip.mjs.map +1 -1
  80. package/es/components/Tooltip/Tooltip.type.d.ts +2 -2
  81. package/es/components/Tooltip/Tooltip.type.mjs +1 -3
  82. package/es/components/Tooltip/Tooltip.type.mjs.map +1 -1
  83. package/es/components/Tooltip/Tooltip.vue.d.ts +13 -13
  84. package/es/components/Tooltip/index.d.ts +33 -33
  85. package/es/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
  86. package/es/components/TreeSelect/index.d.ts +3 -3
  87. package/es/components/index.mjs +1 -1
  88. package/es/index.mjs +1 -1
  89. package/lib/components/Alert/Alert.js +9 -23
  90. package/lib/components/Alert/Alert.js.map +1 -1
  91. package/lib/components/Alert/Alert.type.d.ts +5 -7
  92. package/lib/components/Alert/Alert.type.js +4 -6
  93. package/lib/components/Alert/Alert.type.js.map +1 -1
  94. package/lib/components/Alert/Alert.vue.d.ts +5 -15
  95. package/lib/components/Alert/index.d.ts +9 -27
  96. package/lib/components/Alert/index.js +1 -0
  97. package/lib/components/Alert/index.js.map +1 -1
  98. package/lib/components/Badge/Badge.js +3 -5
  99. package/lib/components/Badge/Badge.js.map +1 -1
  100. package/lib/components/Calendar/Calendar.vue.d.ts +2 -2
  101. package/lib/components/Calendar/index.d.ts +6 -6
  102. package/lib/components/DatePicker/DatePicker.vue.d.ts +14 -14
  103. package/lib/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
  104. package/lib/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
  105. package/lib/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
  106. package/lib/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
  107. package/lib/components/DatePicker/index.d.ts +28 -28
  108. package/lib/components/Drawer/Drawer.d.ts +9 -0
  109. package/lib/components/Drawer/Drawer.js +10 -8
  110. package/lib/components/Drawer/Drawer.js.map +1 -1
  111. package/lib/components/Drawer/Drawer.type.d.ts +4 -0
  112. package/lib/components/Drawer/Drawer.type.js +4 -0
  113. package/lib/components/Drawer/Drawer.type.js.map +1 -1
  114. package/lib/components/Drawer/index.d.ts +15 -0
  115. package/lib/components/Mask/Mask.d.ts +2 -1
  116. package/lib/components/Mask/Mask.js +6 -2
  117. package/lib/components/Mask/Mask.js.map +1 -1
  118. package/lib/components/Mask/index.d.ts +5 -2
  119. package/lib/components/Menu/MenuItem.vue.d.ts +33 -33
  120. package/lib/components/Menu/index.d.ts +33 -33
  121. package/lib/components/Message/Message.js +4 -3
  122. package/lib/components/Message/Message.js.map +1 -1
  123. package/lib/components/Message/Message.type.d.ts +1 -0
  124. package/lib/components/Notice/Notice.js +15 -13
  125. package/lib/components/Notice/Notice.js.map +1 -1
  126. package/lib/components/Notice/Notice.type.d.ts +3 -2
  127. package/lib/components/Notification/Notice.js +1 -5
  128. package/lib/components/Notification/Notice.js.map +1 -1
  129. package/lib/components/Notification/Notification.js.map +1 -1
  130. package/lib/components/Rate/Rate.vue.d.ts +33 -33
  131. package/lib/components/Rate/index.d.ts +66 -66
  132. package/lib/components/Slider/Slider.d.ts +0 -20
  133. package/lib/components/Slider/Slider.js +1 -2
  134. package/lib/components/Slider/Slider.js.map +1 -1
  135. package/lib/components/Slider/Slider.type.d.ts +0 -9
  136. package/lib/components/Slider/Slider.type.js +0 -13
  137. package/lib/components/Slider/Slider.type.js.map +1 -1
  138. package/lib/components/Slider/index.d.ts +0 -33
  139. package/lib/components/Statistic/Statistic.vue.d.ts +33 -33
  140. package/lib/components/Statistic/index.d.ts +66 -66
  141. package/lib/components/Table/BaseTable.vue.d.ts +132 -132
  142. package/lib/components/Table/BodyTable.vue.d.ts +132 -132
  143. package/lib/components/Table/HeadTable.vue.d.ts +132 -132
  144. package/lib/components/Table/Table.vue.d.ts +264 -264
  145. package/lib/components/Table/TableBox.vue.d.ts +264 -264
  146. package/lib/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
  147. package/lib/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
  148. package/lib/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
  149. package/lib/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
  150. package/lib/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
  151. package/lib/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
  152. package/lib/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
  153. package/lib/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
  154. package/lib/components/Tag/Tag.js +6 -9
  155. package/lib/components/Tag/Tag.js.map +1 -1
  156. package/lib/components/Tag/Tag.type.d.ts +0 -4
  157. package/lib/components/Tag/Tag.type.js +0 -4
  158. package/lib/components/Tag/Tag.type.js.map +1 -1
  159. package/lib/components/Tag/Tag.vue.d.ts +7 -20
  160. package/lib/components/Tag/index.d.ts +21 -48
  161. package/lib/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
  162. package/lib/components/ThemePanel/index.d.ts +66 -66
  163. package/lib/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
  164. package/lib/components/TimePicker/TimePicker.vue.d.ts +12 -12
  165. package/lib/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
  166. package/lib/components/TimePicker/index.d.ts +28 -28
  167. package/lib/components/Tooltip/Tooltip.js +84 -8
  168. package/lib/components/Tooltip/Tooltip.js.map +1 -1
  169. package/lib/components/Tooltip/Tooltip.type.d.ts +2 -2
  170. package/lib/components/Tooltip/Tooltip.type.js +1 -3
  171. package/lib/components/Tooltip/Tooltip.type.js.map +1 -1
  172. package/lib/components/Tooltip/Tooltip.vue.d.ts +13 -13
  173. package/lib/components/Tooltip/index.d.ts +33 -33
  174. package/lib/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
  175. package/lib/components/TreeSelect/index.d.ts +3 -3
  176. package/lib/components/index.js +1 -0
  177. package/lib/components/index.js.map +1 -1
  178. package/lib/index.js +1 -0
  179. package/lib/index.js.map +1 -1
  180. package/package.json +1 -1
  181. package/styles/components/alert/index.css +1 -1
  182. package/styles/components/alert/index.less +51 -48
  183. package/styles/components/alert/var.less +8 -42
  184. package/styles/components/autoComplete/index.css +1 -1
  185. package/styles/components/avatar/index.css +1 -1
  186. package/styles/components/badge/index.css +1 -1
  187. package/styles/components/badge/index.less +14 -48
  188. package/styles/components/badge/var.less +7 -17
  189. package/styles/components/button/index.css +1 -1
  190. package/styles/components/carousel/index.css +1 -1
  191. package/styles/components/cascader/index.css +1 -1
  192. package/styles/components/datePicker/index.css +1 -1
  193. package/styles/components/drawer/index.css +1 -1
  194. package/styles/components/drawer/index.less +43 -49
  195. package/styles/components/drawer/var.less +7 -20
  196. package/styles/components/form/index.css +1 -1
  197. package/styles/components/icon/index.css +1 -1
  198. package/styles/components/input/index.css +1 -1
  199. package/styles/components/inputNumber/index.css +1 -1
  200. package/styles/components/link/index.css +1 -1
  201. package/styles/components/mentions/index.css +1 -1
  202. package/styles/components/message/index.css +1 -1
  203. package/styles/components/message/index.less +63 -30
  204. package/styles/components/message/var.less +6 -27
  205. package/styles/components/modal/index.css +1 -1
  206. package/styles/components/notice/index.css +1 -1
  207. package/styles/components/notice/index.less +93 -49
  208. package/styles/components/notice/var.less +10 -33
  209. package/styles/components/select/index.css +1 -1
  210. package/styles/components/slider/index.css +1 -1
  211. package/styles/components/slider/index.less +36 -156
  212. package/styles/components/slider/var.less +5 -33
  213. package/styles/components/spin/index.css +1 -1
  214. package/styles/components/tag/index.css +1 -1
  215. package/styles/components/tag/index.less +12 -25
  216. package/styles/components/tag/var.less +26 -84
  217. package/styles/components/timePicker/index.css +1 -1
  218. package/styles/components/tooltip/index.css +1 -1
  219. package/styles/components/tooltip/index.less +3 -55
  220. package/styles/components/tooltip/var.less +15 -14
  221. package/styles/cssVariable.css +1 -1
  222. package/styles/cssVariable.less +8 -10
  223. package/styles/index.css +1 -1
  224. package/styles/mixins/index.less +0 -1
  225. package/types/components/Alert/Alert.type.d.ts +5 -7
  226. package/types/components/Alert/Alert.vue.d.ts +5 -15
  227. package/types/components/Alert/index.d.ts +9 -27
  228. package/types/components/Calendar/Calendar.vue.d.ts +2 -2
  229. package/types/components/Calendar/index.d.ts +6 -6
  230. package/types/components/DatePicker/DatePicker.vue.d.ts +14 -14
  231. package/types/components/DatePicker/Panel/DatePickerPanel.vue.d.ts +4 -4
  232. package/types/components/DatePicker/Panel/DateRangePanel.vue.d.ts +6 -6
  233. package/types/components/DatePicker/Panel/RangePart.vue.d.ts +2 -2
  234. package/types/components/DatePicker/Trigger/DateRangeInput.vue.d.ts +4 -4
  235. package/types/components/DatePicker/index.d.ts +28 -28
  236. package/types/components/Drawer/Drawer.d.ts +9 -0
  237. package/types/components/Drawer/Drawer.type.d.ts +4 -0
  238. package/types/components/Drawer/index.d.ts +15 -0
  239. package/types/components/Mask/Mask.d.ts +2 -1
  240. package/types/components/Mask/index.d.ts +5 -2
  241. package/types/components/Menu/MenuItem.vue.d.ts +33 -33
  242. package/types/components/Menu/index.d.ts +33 -33
  243. package/types/components/Message/Message.type.d.ts +1 -0
  244. package/types/components/Notice/Notice.type.d.ts +3 -2
  245. package/types/components/Rate/Rate.vue.d.ts +33 -33
  246. package/types/components/Rate/index.d.ts +66 -66
  247. package/types/components/Slider/Slider.d.ts +0 -20
  248. package/types/components/Slider/Slider.type.d.ts +0 -9
  249. package/types/components/Slider/index.d.ts +0 -33
  250. package/types/components/Statistic/Statistic.vue.d.ts +33 -33
  251. package/types/components/Statistic/index.d.ts +66 -66
  252. package/types/components/Table/BaseTable.vue.d.ts +132 -132
  253. package/types/components/Table/BodyTable.vue.d.ts +132 -132
  254. package/types/components/Table/HeadTable.vue.d.ts +132 -132
  255. package/types/components/Table/Table.vue.d.ts +264 -264
  256. package/types/components/Table/TableBox.vue.d.ts +264 -264
  257. package/types/components/Table/tableUnits/ExpandRows.vue.d.ts +33 -33
  258. package/types/components/Table/tableUnits/FilterDropdown.vue.d.ts +66 -66
  259. package/types/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +66 -66
  260. package/types/components/Table/tableUnits/TableBody.vue.d.ts +66 -66
  261. package/types/components/Table/tableUnits/TableCell.vue.d.ts +33 -33
  262. package/types/components/Table/tableUnits/TableHeader.vue.d.ts +66 -66
  263. package/types/components/Table/tableUnits/TableHeaderRow.vue.d.ts +66 -66
  264. package/types/components/Table/tableUnits/TableRow.vue.d.ts +33 -33
  265. package/types/components/Tag/Tag.type.d.ts +0 -4
  266. package/types/components/Tag/Tag.vue.d.ts +7 -20
  267. package/types/components/Tag/index.d.ts +21 -48
  268. package/types/components/ThemePanel/ThemePanel.vue.d.ts +33 -33
  269. package/types/components/ThemePanel/index.d.ts +66 -66
  270. package/types/components/TimePicker/Panel/TimeRangePane.vue.d.ts +4 -4
  271. package/types/components/TimePicker/TimePicker.vue.d.ts +12 -12
  272. package/types/components/TimePicker/Trigger/TimeRangeInput.vue.d.ts +4 -4
  273. package/types/components/TimePicker/index.d.ts +28 -28
  274. package/types/components/Tooltip/Tooltip.type.d.ts +2 -2
  275. package/types/components/Tooltip/Tooltip.vue.d.ts +13 -13
  276. package/types/components/Tooltip/index.d.ts +33 -33
  277. package/types/components/TreeSelect/TreeSelect.vue.d.ts +1 -1
  278. package/types/components/TreeSelect/index.d.ts +3 -3
  279. package/uxd-ui.css +1 -1
  280. package/uxd-ui.esm.min.mjs +6 -6
  281. package/uxd-ui.esm.mjs +152 -103
  282. package/uxd-ui.umd.js +151 -101
  283. package/uxd-ui.umd.min.js +6 -6
  284. 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<"primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
348
- default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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
- right: string;
377
+ bottom: string;
378
+ left: string;
378
379
  transform: string;
379
380
  top?: undefined;
380
- bottom?: undefined;
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: "primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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<"primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
649
- default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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
- right: string;
678
+ bottom: string;
679
+ left: string;
679
680
  transform: string;
680
681
  top?: undefined;
681
- bottom?: undefined;
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: "primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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<"primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
756
- default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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
- right: string;
785
+ bottom: string;
786
+ left: string;
786
787
  transform: string;
787
788
  top?: undefined;
788
- bottom?: undefined;
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: "primary" | "blue" | "light" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
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-color": type
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-color={type}>\n <UIcon spin={type === 'loading'}>\n <iconType />\n </UIcon>\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","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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"}
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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"}
@@ -12,6 +12,7 @@ export interface MessageParams {
12
12
  class?: string;
13
13
  closable?: boolean;
14
14
  background?: boolean;
15
+ showIcon?: boolean;
15
16
  }
16
17
  export interface MessageOption {
17
18
  top?: string;
@@ -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 = "top-right";
15
- let defaultBottom = "24px";
16
- let defaultTop = "24px";
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
- btn
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
- }, [IconNode, vue.createVNode("div", {
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]), btn ? vue.createVNode("span", {
129
- "class": `${prefixCls}-btn`
130
- }, [typeof btn === "function" ? btn() : btn]) : null])
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 = 'top-right';\nlet defaultBottom = '24px';\nlet defaultTop = '24px';\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, btn } = 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 = iconType ? (\n <span class={`${prefixCls}-icon ${prefixCls}-icon-${type}`} data-color={type || undefined}>\n <UIcon class={`${iconClass || ''}`}>\n <iconType />\n </UIcon>\n </span>\n ) : null;\n const withIconCls = 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={`${withIconCls} ${withDescCls}`}>\n {IconNode}\n <div class={`${prefixCls}-title`}>{typeof title === 'function' ? title() : title}</div>\n <div class={`${prefixCls}-desc`}>{typeof desc === 'function' ? desc() : desc}</div>\n {btn ? <span class={`${prefixCls}-btn`}>{typeof btn === 'function' ? btn() : btn}</span> : 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","btn","duration","undefined","target","IconNode","_createVNode","UIcon","default","withIconCls","withDescCls","closable","onClose","content","result","remove","api","config","options","open","close","closeKey","Object","keys","forEach","destroy"],"mappings":"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"}
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
- btn?: () => VNodeChild;
15
+ action?: string;
15
16
  duration?: number;
16
17
  onClose?: () => void;
17
- onClick?: (e?: any) => void;
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.createElementVNode("div", {
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 <div :class=\"`${prefixCls}-content-text`\">\n <Render :render=\"content\" />\n </div>\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":";;;;;;;;;;AAyCA,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;;;;;0BA7HCC,uBA4BM;IA3BH,OAAKC;MAAU;;YAA+B,4BAAuB;YAAsB,8BAAyB;;;IAOpH,cAAU,uCAAE;IACZ,cAAU,uCAAE;;IAEbC,uBAgBM;MAfH,OAAKD;WAAe;;cAA6C,0BAAqB,iBAAY;;;;MAOnGC,uBAEM;QAFA,OAAKD,sBAAK,6BAAS;AAAA;QACvBE,gBAA4B,qBAAnB,QAAQ;;MAEV,kCAATH,uBAII;;QAJe,UAAS;AAAA,QAAK,OAAKC,sBAAK,sBAAS;AAAA,QAAW,SAAK,yDAAe,+CAAW;;QAC5FE,gBAEQ;+BADN,MAAK;AAAA,YAALA,gBAAK;;;;;;;;;;;;"}
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 >\n </Notice>\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":";;;;;;;;;AA6BA,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;;;0BA7FCC,uBAkBM;IAlBA,OAAKC,oBAAG,cAAS;;IACrBC,gBAgBmBC;MAhBD,KAAI;AAAA,MAAO;MAAQ,MAAM;MAAiB,sBAAoB,cAAI,iCAAsC;AAAA;2BAEtH,MAAyB;AAAA,8BAD3BH,uBAcSI,mCAbU,cAAO,CAAjB,WAAM;kCADfC,gBAcS;YAZN,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;;;;;;;;;;;;"}
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;;;;;;;;;;;;"}