vue-devui 1.0.0-beta.18 → 1.0.0-beta.220801

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 (403) hide show
  1. package/README.md +94 -118
  2. package/alert/index.es.js +74 -45
  3. package/alert/index.umd.js +1 -1
  4. package/alert/style.css +1 -1
  5. package/auto-complete/index.es.js +8349 -426
  6. package/auto-complete/index.umd.js +29 -1
  7. package/auto-complete/style.css +1 -1
  8. package/avatar/index.es.js +153 -146
  9. package/avatar/index.umd.js +1 -1
  10. package/avatar/style.css +1 -1
  11. package/badge/index.es.js +45 -20
  12. package/badge/index.umd.js +1 -1
  13. package/badge/style.css +1 -1
  14. package/button/index.es.js +5743 -127
  15. package/button/index.umd.js +27 -1
  16. package/button/style.css +1 -1
  17. package/card/index.es.js +63 -35
  18. package/card/index.umd.js +1 -1
  19. package/card/style.css +1 -1
  20. package/checkbox/index.es.js +8070 -255
  21. package/checkbox/index.umd.js +27 -1
  22. package/checkbox/style.css +1 -1
  23. package/{accordion → collapse}/index.d.ts +0 -0
  24. package/collapse/index.es.js +213 -0
  25. package/collapse/index.umd.js +1 -0
  26. package/{back-top → collapse}/package.json +1 -1
  27. package/collapse/style.css +1 -0
  28. package/countdown/index.es.js +60 -19
  29. package/countdown/index.umd.js +1 -1
  30. package/{anchor → date-picker-pro}/index.d.ts +0 -0
  31. package/date-picker-pro/index.es.js +12018 -0
  32. package/date-picker-pro/index.umd.js +27 -0
  33. package/date-picker-pro/package.json +7 -0
  34. package/date-picker-pro/style.css +1 -0
  35. package/drawer/index.es.js +184 -5736
  36. package/drawer/index.umd.js +1 -27
  37. package/drawer/style.css +1 -1
  38. package/dropdown/index.es.js +615 -396
  39. package/dropdown/index.umd.js +1 -1
  40. package/dropdown/style.css +1 -1
  41. package/editable-select/index.es.js +786 -195
  42. package/editable-select/index.umd.js +1 -1
  43. package/editable-select/style.css +1 -1
  44. package/form/index.es.js +2360 -2094
  45. package/form/index.umd.js +17 -17
  46. package/form/style.css +1 -1
  47. package/fullscreen/index.es.js +137 -134
  48. package/fullscreen/index.umd.js +1 -1
  49. package/fullscreen/style.css +1 -1
  50. package/grid/index.es.js +101 -86
  51. package/grid/index.umd.js +1 -1
  52. package/grid/style.css +1 -1
  53. package/icon/index.es.js +199 -56
  54. package/icon/index.umd.js +1 -1
  55. package/icon/style.css +1 -0
  56. package/image-preview/index.es.js +55 -31
  57. package/image-preview/index.umd.js +1 -1
  58. package/image-preview/style.css +1 -1
  59. package/input/index.es.js +8254 -144
  60. package/input/index.umd.js +27 -1
  61. package/input/style.css +1 -1
  62. package/input-number/index.es.js +270 -187
  63. package/input-number/index.umd.js +1 -1
  64. package/input-number/style.css +1 -1
  65. package/layout/index.es.js +40 -25
  66. package/layout/index.umd.js +1 -1
  67. package/layout/style.css +1 -1
  68. package/loading/index.es.js +74 -35
  69. package/loading/index.umd.js +1 -1
  70. package/loading/style.css +1 -1
  71. package/{back-top → mention}/index.d.ts +0 -0
  72. package/{color-picker → mention}/index.es.js +2983 -2861
  73. package/mention/index.umd.js +36 -0
  74. package/{anchor → mention}/package.json +1 -1
  75. package/mention/style.css +1 -0
  76. package/{breadcrumb → menu}/index.d.ts +0 -0
  77. package/menu/index.es.js +870 -0
  78. package/menu/index.umd.js +1 -0
  79. package/{toast → menu}/package.json +1 -1
  80. package/menu/style.css +1 -0
  81. package/{carousel → message}/index.d.ts +0 -0
  82. package/message/index.es.js +538 -0
  83. package/message/index.umd.js +1 -0
  84. package/{comment → message}/package.json +1 -1
  85. package/message/style.css +1 -0
  86. package/modal/index.es.js +598 -1025
  87. package/modal/index.umd.js +1 -1
  88. package/modal/style.css +1 -1
  89. package/{cascader → notification}/index.d.ts +0 -0
  90. package/notification/index.es.js +545 -0
  91. package/notification/index.umd.js +1 -0
  92. package/{accordion → notification}/package.json +1 -1
  93. package/notification/style.css +1 -0
  94. package/nuxt/components/ButtonGroup.js +3 -0
  95. package/nuxt/components/CheckboxButton.js +3 -0
  96. package/nuxt/components/CheckboxGroup.js +3 -0
  97. package/nuxt/components/Collapse.js +3 -0
  98. package/nuxt/components/CollapseItem.js +3 -0
  99. package/nuxt/components/DRangeDatePickerPro.js +3 -0
  100. package/nuxt/components/DatePickerPro.js +3 -0
  101. package/nuxt/components/DropdownMenu.js +3 -0
  102. package/nuxt/components/DropdownPropsKey.js +3 -0
  103. package/nuxt/components/FORM_ITEM_TOKEN.js +3 -0
  104. package/nuxt/components/FORM_TOKEN.js +3 -0
  105. package/nuxt/components/IFileOptions.js +3 -0
  106. package/nuxt/components/IUploadOptions.js +3 -0
  107. package/nuxt/components/Icon.js +1 -0
  108. package/nuxt/components/IconGroup.js +3 -0
  109. package/nuxt/components/LABEL_DATA.js +3 -0
  110. package/nuxt/components/LoadingOptions.js +3 -0
  111. package/nuxt/components/Mention.js +3 -0
  112. package/nuxt/components/Menu.js +3 -0
  113. package/nuxt/components/MenuItem.js +3 -0
  114. package/nuxt/components/Message.js +3 -0
  115. package/nuxt/components/Notification.js +3 -0
  116. package/nuxt/components/NotificationService.js +3 -0
  117. package/nuxt/components/Option.js +3 -0
  118. package/nuxt/components/OptionGroup.js +3 -0
  119. package/nuxt/components/PanelBody.js +3 -0
  120. package/nuxt/components/PanelFooter.js +3 -0
  121. package/nuxt/components/PanelHeader.js +3 -0
  122. package/nuxt/components/RadioButton.js +3 -0
  123. package/nuxt/components/Step.js +3 -0
  124. package/nuxt/components/Steps.js +3 -0
  125. package/nuxt/components/SubMenu.js +3 -0
  126. package/nuxt/components/TABLE_TOKEN.js +3 -0
  127. package/nuxt/components/Tab.js +3 -0
  128. package/nuxt/components/TimeSelect.js +3 -0
  129. package/nuxt/components/Timeline.js +3 -0
  130. package/nuxt/components/TimelineItem.js +3 -0
  131. package/nuxt/components/UploadStatus.js +3 -0
  132. package/nuxt/components/alertProps.js +3 -0
  133. package/nuxt/components/animationInjectionKey.js +3 -0
  134. package/nuxt/components/autoCompleteProps.js +3 -0
  135. package/nuxt/components/avatarProps.js +3 -0
  136. package/nuxt/components/badgeProps.js +3 -0
  137. package/nuxt/components/buttonGroupInjectionKey.js +3 -0
  138. package/nuxt/components/buttonGroupProps.js +3 -0
  139. package/nuxt/components/cardProps.js +3 -0
  140. package/nuxt/components/checkboxGroupInjectionKey.js +3 -0
  141. package/nuxt/components/checkboxGroupProps.js +3 -0
  142. package/nuxt/components/checkboxProps.js +3 -0
  143. package/nuxt/components/colProps.js +3 -0
  144. package/nuxt/components/colPropsBaseClass.js +3 -0
  145. package/nuxt/components/colPropsBaseStyle.js +3 -0
  146. package/nuxt/components/collapseItemProps.js +3 -0
  147. package/nuxt/components/collapseProps.js +3 -0
  148. package/nuxt/components/countdownProps.js +3 -0
  149. package/nuxt/components/datePickerProCommonProps.js +3 -0
  150. package/nuxt/components/datePickerProPanelProps.js +3 -0
  151. package/nuxt/components/datePickerProProps.js +3 -0
  152. package/nuxt/components/dropdownMenuProps.js +3 -0
  153. package/nuxt/components/editableSelectProps.js +3 -0
  154. package/nuxt/components/fixedOverlayProps.js +3 -0
  155. package/nuxt/components/flexibleOverlayProps.js +3 -0
  156. package/nuxt/components/formItemProps.js +3 -0
  157. package/nuxt/components/formProps.js +3 -0
  158. package/nuxt/components/fullscreenProps.js +3 -0
  159. package/nuxt/components/iconProps.js +3 -0
  160. package/nuxt/components/imagePreviewProps.js +3 -0
  161. package/nuxt/components/inputProps.js +3 -0
  162. package/nuxt/components/loadingProps.js +3 -0
  163. package/nuxt/components/mentionProps.js +3 -0
  164. package/nuxt/components/messageProps.js +3 -0
  165. package/nuxt/components/modalProps.js +3 -0
  166. package/nuxt/components/notificationProps.js +3 -0
  167. package/nuxt/components/paginationProps.js +3 -0
  168. package/nuxt/components/panelProps.js +3 -0
  169. package/nuxt/components/popoverProps.js +3 -0
  170. package/nuxt/components/progressProps.js +3 -0
  171. package/nuxt/components/rateProps.js +3 -0
  172. package/nuxt/components/resultProps.js +3 -0
  173. package/nuxt/components/roundInjectionKey.js +3 -0
  174. package/nuxt/components/rowProps.js +3 -0
  175. package/nuxt/components/screenSizes.js +3 -0
  176. package/nuxt/components/searchProps.js +3 -0
  177. package/nuxt/components/skeletonItemProps.js +3 -0
  178. package/nuxt/components/skeletonProps.js +3 -0
  179. package/nuxt/components/sliderProps.js +3 -0
  180. package/nuxt/components/splitterProps.js +3 -0
  181. package/nuxt/components/statisticProps.js +3 -0
  182. package/nuxt/components/stepProps.js +3 -0
  183. package/nuxt/components/stepsProps.js +3 -0
  184. package/nuxt/components/svgIconProps.js +3 -0
  185. package/nuxt/components/switchProps.js +3 -0
  186. package/nuxt/components/tableProps.js +3 -0
  187. package/nuxt/components/tabsProps.js +3 -0
  188. package/nuxt/components/tagProps.js +3 -0
  189. package/nuxt/components/textareaProps.js +3 -0
  190. package/nuxt/components/timeAxisProps.js +3 -0
  191. package/nuxt/components/timerPickerPanelProps.js +3 -0
  192. package/nuxt/components/tooltipProps.js +3 -0
  193. package/nuxt/components/treeNodeProps.js +3 -0
  194. package/nuxt/components/treeProps.js +3 -0
  195. package/nuxt/components/uploadProps.js +3 -0
  196. package/overlay/index.es.js +239 -314
  197. package/overlay/index.umd.js +1 -1
  198. package/overlay/style.css +1 -1
  199. package/package.json +44 -87
  200. package/pagination/index.es.js +331 -153
  201. package/pagination/index.umd.js +1 -1
  202. package/pagination/style.css +1 -1
  203. package/panel/index.es.js +45 -32
  204. package/panel/index.umd.js +1 -1
  205. package/panel/style.css +1 -1
  206. package/popover/index.es.js +6034 -215
  207. package/popover/index.umd.js +27 -1
  208. package/popover/style.css +1 -1
  209. package/progress/index.es.js +110 -56
  210. package/progress/index.umd.js +3 -3
  211. package/progress/style.css +1 -1
  212. package/radio/index.es.js +7974 -157
  213. package/radio/index.umd.js +27 -1
  214. package/radio/style.css +1 -1
  215. package/rate/index.es.js +77 -55
  216. package/rate/index.umd.js +1 -1
  217. package/rate/style.css +1 -1
  218. package/result/index.es.js +186 -57
  219. package/result/index.umd.js +1 -1
  220. package/result/style.css +1 -1
  221. package/ripple/index.es.js +47 -42
  222. package/ripple/index.umd.js +1 -1
  223. package/search/index.es.js +3868 -1149
  224. package/search/index.umd.js +18 -18
  225. package/search/style.css +1 -1
  226. package/select/index.es.js +9191 -493
  227. package/select/index.umd.js +27 -1
  228. package/select/style.css +1 -1
  229. package/skeleton/index.es.js +113 -265
  230. package/skeleton/index.umd.js +1 -1
  231. package/skeleton/style.css +1 -1
  232. package/slider/index.es.js +144 -137
  233. package/slider/index.umd.js +1 -1
  234. package/slider/style.css +1 -1
  235. package/splitter/index.es.js +6220 -226
  236. package/splitter/index.umd.js +27 -1
  237. package/splitter/style.css +1 -1
  238. package/statistic/index.es.js +41 -34
  239. package/statistic/index.umd.js +1 -1
  240. package/statistic/style.css +1 -1
  241. package/status/index.es.js +27 -6
  242. package/status/index.umd.js +1 -1
  243. package/status/style.css +1 -1
  244. package/{color-picker → steps}/index.d.ts +0 -0
  245. package/steps/index.es.js +386 -0
  246. package/steps/index.umd.js +1 -0
  247. package/{gantt → steps}/package.json +1 -1
  248. package/steps/style.css +1 -0
  249. package/style.css +1 -1
  250. package/switch/index.es.js +7804 -64
  251. package/switch/index.umd.js +27 -1
  252. package/switch/style.css +1 -1
  253. package/table/index.es.js +11010 -1367
  254. package/table/index.umd.js +27 -1
  255. package/table/style.css +1 -1
  256. package/tabs/index.es.js +356 -144
  257. package/tabs/index.umd.js +1 -1
  258. package/tabs/style.css +1 -1
  259. package/tag/index.es.js +49 -24
  260. package/tag/index.umd.js +1 -1
  261. package/tag/style.css +1 -1
  262. package/textarea/index.es.js +7924 -83
  263. package/textarea/index.umd.js +35 -1
  264. package/textarea/style.css +1 -1
  265. package/time-picker/index.es.js +8914 -602
  266. package/time-picker/index.umd.js +27 -1
  267. package/time-picker/style.css +1 -1
  268. package/{comment → time-select}/index.d.ts +0 -0
  269. package/{transfer → time-select}/index.es.js +4912 -2667
  270. package/time-select/index.umd.js +27 -0
  271. package/{breadcrumb → time-select}/package.json +1 -1
  272. package/time-select/style.css +1 -0
  273. package/{date-picker → timeline}/index.d.ts +0 -0
  274. package/timeline/index.es.js +427 -0
  275. package/timeline/index.umd.js +1 -0
  276. package/{carousel → timeline}/package.json +1 -1
  277. package/timeline/style.css +1 -0
  278. package/tooltip/index.es.js +5871 -96
  279. package/tooltip/index.umd.js +27 -1
  280. package/tooltip/style.css +1 -1
  281. package/tree/index.es.js +7556 -2491
  282. package/tree/index.umd.js +18 -18
  283. package/tree/style.css +1 -1
  284. package/upload/index.es.js +865 -6117
  285. package/upload/index.umd.js +1 -27
  286. package/upload/style.css +1 -1
  287. package/vue-devui.es.js +20283 -18856
  288. package/vue-devui.umd.js +30 -19
  289. package/accordion/index.es.js +0 -508
  290. package/accordion/index.umd.js +0 -1
  291. package/accordion/style.css +0 -1
  292. package/anchor/index.es.js +0 -263
  293. package/anchor/index.umd.js +0 -1
  294. package/anchor/style.css +0 -1
  295. package/back-top/index.es.js +0 -128
  296. package/back-top/index.umd.js +0 -1
  297. package/back-top/style.css +0 -1
  298. package/breadcrumb/index.es.js +0 -127
  299. package/breadcrumb/index.umd.js +0 -1
  300. package/breadcrumb/style.css +0 -1
  301. package/carousel/index.es.js +0 -329
  302. package/carousel/index.umd.js +0 -1
  303. package/carousel/style.css +0 -1
  304. package/cascader/index.es.js +0 -5963
  305. package/cascader/index.umd.js +0 -27
  306. package/cascader/package.json +0 -7
  307. package/cascader/style.css +0 -1
  308. package/color-picker/index.umd.js +0 -27
  309. package/color-picker/package.json +0 -7
  310. package/color-picker/style.css +0 -1
  311. package/comment/index.es.js +0 -86
  312. package/comment/index.umd.js +0 -1
  313. package/comment/style.css +0 -1
  314. package/date-picker/index.es.js +0 -1171
  315. package/date-picker/index.umd.js +0 -1
  316. package/date-picker/package.json +0 -7
  317. package/date-picker/style.css +0 -1
  318. package/dragdrop/index.d.ts +0 -7
  319. package/dragdrop/index.es.js +0 -157
  320. package/dragdrop/index.umd.js +0 -1
  321. package/dragdrop/package.json +0 -7
  322. package/gantt/index.d.ts +0 -7
  323. package/gantt/index.es.js +0 -523
  324. package/gantt/index.umd.js +0 -1
  325. package/gantt/style.css +0 -1
  326. package/input-icon/index.d.ts +0 -7
  327. package/input-icon/index.es.js +0 -331
  328. package/input-icon/index.umd.js +0 -1
  329. package/input-icon/package.json +0 -7
  330. package/input-icon/style.css +0 -1
  331. package/nav-sprite/index.d.ts +0 -7
  332. package/nav-sprite/index.es.js +0 -68
  333. package/nav-sprite/index.umd.js +0 -1
  334. package/nav-sprite/package.json +0 -7
  335. package/nuxt/components/Accordion.js +0 -3
  336. package/nuxt/components/Anchor.js +0 -3
  337. package/nuxt/components/BackTop.js +0 -3
  338. package/nuxt/components/Breadcrumb.js +0 -3
  339. package/nuxt/components/Carousel.js +0 -3
  340. package/nuxt/components/CarouselItem.js +0 -3
  341. package/nuxt/components/Cascader.js +0 -3
  342. package/nuxt/components/ColorPicker.js +0 -3
  343. package/nuxt/components/Comment.js +0 -3
  344. package/nuxt/components/DatePicker.js +0 -3
  345. package/nuxt/components/FormControl.js +0 -3
  346. package/nuxt/components/FormLabel.js +0 -3
  347. package/nuxt/components/Gantt.js +0 -3
  348. package/nuxt/components/InputIcon.js +0 -3
  349. package/nuxt/components/NavSprite.js +0 -2
  350. package/nuxt/components/QuadrantDiagram.js +0 -3
  351. package/nuxt/components/ReadTip.js +0 -3
  352. package/nuxt/components/StepsGuide.js +0 -3
  353. package/nuxt/components/StickSlider.js +0 -3
  354. package/nuxt/components/Sticky.js +0 -2
  355. package/nuxt/components/TagInput.js +0 -3
  356. package/nuxt/components/TimeAxis.js +0 -3
  357. package/nuxt/components/TimeAxisItem.js +0 -3
  358. package/nuxt/components/Toast.js +0 -3
  359. package/nuxt/components/ToastService.js +0 -3
  360. package/nuxt/components/Transfer.js +0 -3
  361. package/nuxt/components/TreeSelect.js +0 -3
  362. package/quadrant-diagram/index.d.ts +0 -7
  363. package/quadrant-diagram/index.es.js +0 -5728
  364. package/quadrant-diagram/index.umd.js +0 -27
  365. package/quadrant-diagram/package.json +0 -7
  366. package/quadrant-diagram/style.css +0 -1
  367. package/read-tip/index.d.ts +0 -7
  368. package/read-tip/index.es.js +0 -258
  369. package/read-tip/index.umd.js +0 -1
  370. package/read-tip/package.json +0 -7
  371. package/read-tip/style.css +0 -1
  372. package/steps-guide/index.d.ts +0 -7
  373. package/steps-guide/index.es.js +0 -239
  374. package/steps-guide/index.umd.js +0 -1
  375. package/steps-guide/package.json +0 -7
  376. package/steps-guide/style.css +0 -1
  377. package/sticky/index.d.ts +0 -7
  378. package/sticky/index.es.js +0 -197
  379. package/sticky/index.umd.js +0 -1
  380. package/sticky/package.json +0 -7
  381. package/tag-input/index.d.ts +0 -7
  382. package/tag-input/index.es.js +0 -329
  383. package/tag-input/index.umd.js +0 -1
  384. package/tag-input/package.json +0 -7
  385. package/tag-input/style.css +0 -1
  386. package/time-axis/index.d.ts +0 -7
  387. package/time-axis/index.es.js +0 -299
  388. package/time-axis/index.umd.js +0 -1
  389. package/time-axis/package.json +0 -7
  390. package/time-axis/style.css +0 -1
  391. package/toast/index.d.ts +0 -7
  392. package/toast/index.es.js +0 -5918
  393. package/toast/index.umd.js +0 -27
  394. package/toast/style.css +0 -1
  395. package/transfer/index.d.ts +0 -7
  396. package/transfer/index.umd.js +0 -27
  397. package/transfer/package.json +0 -7
  398. package/transfer/style.css +0 -1
  399. package/tree-select/index.d.ts +0 -7
  400. package/tree-select/index.es.js +0 -623
  401. package/tree-select/index.umd.js +0 -1
  402. package/tree-select/package.json +0 -7
  403. package/tree-select/style.css +0 -1
@@ -0,0 +1 @@
1
+ (function(L,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],n):(L=typeof globalThis!="undefined"?globalThis:L||self,n(L.index={},L.Vue))})(this,function(L,n){"use strict";function k(e,l,t){let a=e;return l&&(a+=`__${l}`),t&&(a+=`--${t}`),a}function E(e,l=!1){const t=l?`.devui-${e}`:`devui-${e}`;return{b:()=>k(t),e:f=>f?k(t,f):"",m:f=>f?k(t,"",f):"",em:(f,m)=>f&&m?k(t,f,m):""}}const F=[];let K=[];const O=n.ref(24),T=E("menu"),ne=E("submenu"),j=T.b(),G=`${T.b()}-item-horizontal-wrapper`,J=`${T.b()}-item-select`,Q=`${T.b()}-active-parent`;function se(e){O.value=e}function ae(e){F.push(e)}function le(){K=[],F.forEach(t=>{K.push(t.el.parentElement)});const e=[...K],l=t=>{var a;return(a=/layer_(\d*)/gim.exec(t))==null?void 0:a[1]};for(;e.length;){const t=e.shift();if(t==null?void 0:t.classList.contains(j)){const a=t.children;e.unshift(...Array.from(a));continue}else{if(t.tagName==="DIV")if(t.classList.contains(`${T.b()}-item-vertical-wrapper`)||t.classList.contains(`${ne.b()}-menu-item-vertical-wrapper`)){const a=t.parentElement;if(e.unshift(...Array.from(t.children)),a==null?void 0:a.classList.contains(j))t.classList.add("layer_1");else{let s=l((a==null?void 0:a.classList.value)||"");s=Number(s),t.classList.add(`layer_${s}`)}}else{const a=t.parentElement;let s=l((a==null?void 0:a.classList.value)||"");s=Number(s),t.classList.add(`layer_${s}`),t.style.paddingLeft=`${(s===2?1:s-1)*O.value}px`}if(t.tagName==="UL"){const a=t.parentElement,s=t.children;for(let f=0;f<s.length;f++)e.unshift(s[f]);const i=(a==null?void 0:a.classList.value)||"";let r=l(i);(a==null?void 0:a.classList.contains(j))?(r=1,t.classList.add(`layer_${2}`)):(t.classList.add(`layer_${Number(r)+1}`),r=Number(r)+1)}if(t.tagName==="LI"){const a=t.parentElement,s=(a==null?void 0:a.classList.value)||"";let i=l(s);l(s),i=Number(i),t.style.padding=`0 ${i*O.value}px`}}}}function oe(e){var a;const l=e;let t=null;for(let s=0;s<l.length;s++){const i=l[s];((a=i==null?void 0:i.classList)==null?void 0:a.contains(`${T.b()}-horizontal`))&&(t=i)}return t}function ie(e,l){let t=l.target,a=[];const{path:s}=l,i=oe(s);for(a=[...Array.from(i.children)],t.tagName==="SPAN"&&(t=t.parentElement);a.length;){const r=a.shift();if((r==null?void 0:r.tagName)==="UL"||(r==null?void 0:r.classList.contains(G))){const f=r==null?void 0:r.children;a.unshift(...Array.from(f))}r!==t&&(r==null||r.classList.remove(J),r==null||r.classList.remove(Q))}}function re(e,l){const t=[],a=l.path||l.composedPath&&l.composedPath();for(let s=0;s<a.length;s++){const i=a[s];if(!i.classList.contains(j))t.push(...Array.from(i.children));else{t.push(...Array.from(i.children));break}}for(;t.length;){const s=t.shift();((s==null?void 0:s.tagName)==="UL"||(s==null?void 0:s.classList.contains(G)))&&t.push(...Array.from(s==null?void 0:s.children)),s!==e&&((s==null?void 0:s.tagName)==="DIV"&&t.unshift(...Array.from(s==null?void 0:s.children)),s==null||s.classList.remove(J),s==null||s.classList.remove(Q))}}function X(e,l,t=!1){t?ie(e,l):re(e,l)}function ce(e){var a;const l=/layer_(\d{1,})/gim,t=e.className;return(a=l.exec(t))==null?void 0:a[1]}const de={disabled:{type:Boolean,default:!1},href:{type:String,default:""},route:{type:[String,Object]}},Y=E("menu");function Z(e,l,t,a){const s=n.ref(!1);return t?e.includes(l)?s.value=!0:s.value=!1:e[0]===l&&!a.value?s.value=!0:s.value=!1,s.value}function ue(e){var t,a;let l=e.parentElement;for(;!l.classList.contains(Y.b());)((t=l.firstElementChild)==null?void 0:t.tagName)==="DIV"&&((a=l==null?void 0:l.firstElementChild)==null||a.classList.add(`${Y.b()}-active-parent`)),l=l.parentElement;return l}function fe(e,l,t,a){if(t&&l){const s=e.route||a,i=l.push(s).then(r=>r);return{route:s,routerResult:i}}}const I=E("menu");function ee(e){const l=e.path;for(let t=0;t<l.length;t++){const a=l[t];if(a.classList.contains(`${I.b()}-horizontal`))break;if(a.classList.contains(`${I.b()}-item-horizontal-wrapper`))continue;a.tagName!=="SPAN"&&a.classList.add(`${I.b()}-item-select`)}}const V=E("menu"),A=`${V.b()}-item-select`,me=`${V.b()}-item-disabled`;var U=n.defineComponent({name:"DMenuItem",props:de,setup(e,l){var v,d;const t=n.getCurrentInstance(),a=String(t==null?void 0:t.vnode.key),s=n.inject("mode"),i=n.inject("multiple"),r=n.inject("defaultIndent"),f=n.inject("isCollapsed"),m=n.inject("defaultSelectKey"),{disabled:g}=n.toRefs(e),$=n.ref(Z(m,a,i,g)),w=n.ref(!0),h=n.inject("rootMenuEmit"),C=n.inject("useRouter"),P=t==null?void 0:t.appContext.config.globalProperties.$router,y=n.computed(()=>({[`${V.b()}-item`]:!0,[`${V.b()}-item-isCollapsed`]:f.value,[A]:$.value,[me]:g.value})),b=c=>{var S;c.stopPropagation();const o=c.currentTarget;let u;if(!e.disabled){if(!i)X(o,c,s.value==="horizontal"),s.value==="horizontal"?ee(c):o.classList.add(A),u=fe(e,P,C,a);else if(o.classList.contains(A)){o.classList.remove(A),h("deselect",{type:"deselect",key:a,el:o,e:c});return}else o.classList.add(A);u===void 0?h("select",{type:"select",key:a,el:o,e:c}):h("select",{type:"select",key:a,el:o,e:c,route:u})}if(s.value==="vertical"){const M=c.currentTarget;ue(M)}if(s.value==="horizontal"){const M=(S=o.parentElement)==null?void 0:S.parentElement;M==null||M.classList.add(`${V.b()}-active-parent`)}},N=n.createVNode("span",{class:`${V.b()}-icon`},[(d=(v=l.slots).icon)==null?void 0:d.call(v)]),p=n.ref(null);return n.watch(g,()=>{y.value[A]=!1}),n.watch(()=>m,c=>{$.value=Z(c,a,i,g),y.value[A]=$.value}),n.onMounted(()=>{var u,S;let c="";const o=p.value;s.value==="vertical"&&(((S=(u=o.parentElement)==null?void 0:u.parentElement)==null?void 0:S.classList.contains(V.b()))?(w.value=!0,w.value&&(o.style.paddingRight="",o.style.paddingLeft=`${r}px`),n.watch(f,M=>{M?(o.style.padding!=="0"&&(c=o.style.padding),setTimeout(()=>{o.style.padding="0",o.style.width="",o.style.textAlign="center"},300),o.style.display="block"):(o.style.padding=`${c}`,o.style.textAlign="",o.style.display="flex")})):w.value=!1)}),()=>s.value==="vertical"?n.createVNode("div",{class:`${V.b()}-item-vertical-wrapper`},[n.createVNode("li",{class:y.value,onClick:b,ref:p},[l.slots.icon!==void 0&&N,e.href===""?n.createVNode(n.Transition,{name:"fade"},{default:()=>{var c,o;return[n.withDirectives(n.createVNode("span",null,[(o=(c=l.slots).default)==null?void 0:o.call(c)]),[[n.vShow,!f.value]])]}}):n.createVNode("a",{href:e.href},[n.createVNode(n.Transition,{name:"fade"},{default:()=>{var c,o;return[(o=(c=l.slots).default)==null?void 0:o.call(c)]}})])])]):n.createVNode("li",{class:y.value,onClick:b,ref:p},[l.slots.icon!==void 0&&N,e.href===""?n.createVNode(n.Transition,{name:"fade"},{default:()=>{var c,o;return[n.withDirectives(n.createVNode("span",null,[(o=(c=l.slots).default)==null?void 0:o.call(c)]),[[n.vShow,!f.value]])]}}):n.createVNode("a",{href:e.href},[n.createVNode(n.Transition,{name:"fade"},{default:()=>{var c,o;return[(o=(c=l.slots).default)==null?void 0:o.call(c)]}})])])}});const B=E("menu"),pe=E("submenu"),x=`${B.b()}-item-horizontal-wrapper-hidden`,R=`${B.b()}-item-horizontal-wrapper-show`;function D(e,l,t){const a=l.currentTarget,s=a.parentElement,i=t.children;if(t.style.padding="0 20px !important",e==="mouseenter"){if((s==null?void 0:s.tagName)==="DIV"){t.classList.add(`${B.b()}-item-horizontal-wrapper-level`);const{width:r}=a.getClientRects()[0];t.style.top="0px",t.style.left=`${r}px`}else t.style.top="26px",t.style.left="0px";t.classList.remove(x),t.classList.add(R);for(let r=0;r<i.length;r++){const f=i[r];if(f.tagName==="UL"&&f.classList.contains(pe.b())){const m=f.getElementsByClassName(`${B.b()}-item-horizontal-wrapper`)[0];f.addEventListener("mouseenter",g=>{g.stopPropagation(),D("mouseenter",g,m),m.classList.remove(x),m.classList.add(R)}),f.addEventListener("mouseleave",g=>{g.stopPropagation(),D("mouseleave",g,m),m.classList.remove(R),m.classList.add(x)})}}}e==="mouseleave"&&(t.classList.remove(R),t.classList.add(x))}const ge={title:{type:String,default:""},disabled:{type:Boolean,default:!1}},te="0.3s height ease-in-out, 0.3s padding-top ease-in-out, 0.3s padding-bottom ease-in-out",_={"before-enter"(e){e.style.transition=te,e.setAttribute("data-oldPadding",e.style.padding),e.setAttribute("data-oldMargin",e.style.margin),e.style.height="0",e.style.padding="0",e.style.margin="0"},enter(e){e.dataset.oldOverflow=e.style.overflow,e.scrollHeight!==0?e.style.height=e.scrollHeight+"px":e.style.height="",e.style.padding=e.getAttribute("data-oldPadding"),e.style.margin=e.getAttribute("data-oldMargin"),e.style.overflow="hidden"},"after-enter"(e){e.style.transition="",e.style.transition="",e.style.height="",e.style.overflow=e.getAttribute("data-overflow")},"before-leave"(e){e.dataset||(e.dataset={}),e.dataset.oldPaddingTop=e.style.paddingTop,e.dataset.oldPaddingBottom=e.style.paddingBottom,e.dataset.oldOverflow=e.style.overflow,e.style.height=e.scrollHeight+"px",e.style.overflow="hidden"},leave(e){e.scrollHeight!==0&&(e.style.transition=te,e.style.height="0",e.style.paddingTop="0",e.style.paddingBottom="0")},"after-leave"(e){e.style.transition="",e.style.height="",e.style.overflow=e.dataset.oldOverflow,e.style.paddingTop=e.dataset.oldPaddingTop,e.style.paddingBottom=e.dataset.oldPaddingBottom}};var he=n.defineComponent({name:"DMenuTransition",setup(e,l){return()=>n.createVNode(n.Transition,{onBeforeEnter:t=>_["before-enter"](t),onBeforeLeave:t=>_["before-leave"](t),onEnter:t=>_.enter(t),onAfterEnter:t=>_["after-enter"](t),onLeave:t=>_.leave(t),onAfterLeave:t=>_["after-leave"](t)},{default:()=>{var t,a;return[(a=(t=l.slots).default)==null?void 0:a.call(t)]}})}});const W=E("menu"),z=E("submenu").b();var H=n.defineComponent({name:"DSubMenu",props:ge,setup(e,l){const t=n.ref(!0),{vnode:{key:a}}=n.getCurrentInstance(),s=String(a),i=n.ref(!1),r=n.inject("openKeys"),f=n.inject("defaultIndent"),m=n.inject("isCollapsed"),g=n.inject("mode"),$=n.ref(null),w=n.inject("rootMenuEmit"),h=g.value==="horizontal";s==="null"?console.warn("[devui][menu]: Key can not be null"):r.value.includes(s)?i.value=!0:i.value=!1;const C=d=>{d.preventDefault(),d.stopPropagation();const c=d.currentTarget;if(!(c.classList.contains(z)&&h)&&(h&&(X(c,d,!0),ee(d)),!e.disabled&&g.value!=="horizontal")){const o=d.target;let u=d.target;if(o.tagName==="UL")o.classList.contains(`${z}-open`)?i.value=!i.value:i.value=i.value;else{for(;u&&u.tagName!=="UL"&&u.tagName!=="LI";)u=u.parentElement;u.tagName==="UL"&&(i.value=!i.value)}w("submenu-change",{type:"submenu-change",state:i.value,key:s,el:u})}},P=n.ref(null);let y;const b=n.ref(null),N=n.ref(null);let p="";const v=n.ref("");return n.watchEffect(()=>{y=P.value,ae({el:b.value})},{flush:"post"}),n.watch(()=>r,d=>{d.value.includes(s)?i.value=!0:i.value=!1},{deep:!0}),n.onMounted(()=>{var o;const d=N.value,c=b.value;le(),v.value=`layer_${(o=Array.from(c.classList).at(-1))==null?void 0:o.replace("layer_","")}`,h&&(b.value.addEventListener("mouseenter",u=>{u.stopPropagation(),D("mouseenter",u,y)}),b.value.addEventListener("mouseleave",u=>{u.stopPropagation(),D("mouseleave",u,y)})),n.watch(m,u=>{const S=Number(ce(c));Number.isNaN(S)||S>2&&(t.value=!m.value),u?(d.style.padding!=="0"&&(p=d.style.padding),setTimeout(()=>{d.style.padding="0",d.style.width="",d.style.textAlign="center"},300),d.style.display="block"):(d.style.padding=`${p}`,d.style.textAlign="",d.style.display="flex")})}),()=>{var d,c,o,u;return n.withDirectives(n.createVNode("ul",{onClick:C,class:[z,v.value],ref:b},[n.createVNode("div",{class:[`${z}-title`,e.disabled&&`${z}-disabled`],style:`padding: 0 ${f}px`,ref:N},[n.createVNode("span",{class:`${W.b()}-icon`},[(c=(d=l.slots)==null?void 0:d.icon)==null?void 0:c.call(d)]),n.withDirectives(n.createVNode("span",{class:`${z}-title-content`},[e.title]),[[n.vShow,!m.value]]),n.withDirectives(n.createVNode("i",{class:{"icon icon-chevron-up":v.value!==`layer_${z}`,"icon icon-chevron-right":v.value===`layer_${z}`,"is-opened":i.value}},null),[[n.vShow,!m.value&&a!=="overflowContainer"]])]),h?n.createVNode("div",{class:`${W.b()}-item-horizontal-wrapper ${W.b()}-item-horizontal-wrapper-hidden`,ref:P},[(u=(o=l.slots).default)==null?void 0:u.call(o)]):n.createVNode(he,null,{default:()=>{var S,M;return[n.withDirectives(n.createVNode("div",{class:[`${z}-menu-item-vertical-wrapper`],ref:$},[(M=(S=l.slots).default)==null?void 0:M.call(S)]),[[n.vShow,i.value]])]}})]),[[n.vShow,t.value]])}}});const ye={width:{type:String,default:""},collapsed:{type:Boolean,default:!1},collapsedIndent:{type:Number,default:24},indentSize:{type:Number,default:24},multiple:{type:Boolean,default:!1},openKeys:{type:Array,default:[]},defaultSelectKeys:{type:Array,default:[]},mode:{type:String,default:"vertical"},router:{type:Boolean,default:!1}};var Le="",q=n.defineComponent({name:"DMenu",props:ye,emits:["select","deselect","submenu-change"],setup(e,l){const t=E("menu"),{openKeys:a,mode:s,collapsed:i}=n.toRefs(e);n.provide("isCollapsed",i),n.provide("defaultIndent",e.indentSize),n.provide("multiple",e.multiple),n.provide("openKeys",a),n.provide("defaultSelectKey",e.defaultSelectKeys),n.provide("mode",s),n.provide("collapsedIndent",e.collapsedIndent),n.provide("rootMenuEmit",l.emit),n.provide("useRouter",e.router),se(e.indentSize);const r=n.ref(null),f=n.ref(null),m=n.ref(0),g=n.computed(()=>({[`${t.b()}`]:!0,[`${t.b()}-vertical`]:s.value==="vertical",[`${t.b()}-horizontal`]:s.value==="horizontal",[`${t.b()}-collapsed`]:i.value}));return n.onMounted(()=>{var $;if(e.mode==="horizontal"){let w=!1;const h=($=f.value)==null?void 0:$.$el,C=r.value,P=C.children,y=h.children[1],b=new IntersectionObserver(N=>{N.forEach(p=>{if(p.isIntersecting){if(!p.target.classList.contains(`${t.b()}-overflow-container`)&&p.target.style.visibility==="hidden"){b.unobserve(p.target);const v=y.lastChild;v&&C.insertBefore(v,h);const d=h.previousElementSibling;if(d&&b.observe(d),d==null?void 0:d.classList.contains("devui-submenu")){const c=d,o=d.children[1];c.addEventListener("mouseenter",u=>{u.stopPropagation(),D("mouseenter",u,o)}),c.addEventListener("mouseleave",u=>{u.stopPropagation(),D("mouseleave",u,o)})}p.target.style.visibility="",p.target.remove(),m.value-=1}}else{const v=p.target.cloneNode(!0);p.target.classList.contains(`${t.b()}-overflow-container`)?w&&p.target.previousElementSibling&&y.children.length?C.appendChild(p.target.previousElementSibling):w=!0:(m.value+=1,p.target.style.visibility="hidden",h.nextSibling?C.insertBefore(p.target,h.nextSibling):C.appendChild(p.target),y.appendChild(v))}})},{root:C,threshold:1,rootMargin:"8px"});for(let N=0;N<P.length;N++)b.observe(P[N])}}),()=>{var $,w;return n.createVNode("ul",{ref:r,class:g.value,style:[e.collapsed?`width:${e.collapsedIndent*2}px`:`width: ${e.width}`,"white-space: nowrap"]},[(w=($=l.slots).default)==null?void 0:w.call($),n.withDirectives(n.createVNode(H,{ref:f,key:"overflowContainer",title:"...",class:`${t.b()}-overflow-container`},null),[[n.vShow,m.value>0&&s.value==="horizontal"]])])}}}),be={title:"Menu \u83DC\u5355",category:"\u5E03\u5C40",status:"100%",install(e){e.component(q.name,q),e.component(U.name,U),e.component(H.name,H)}};L.Menu=q,L.MenuItem=U,L.SubMenu=H,L.default=be,Object.defineProperty(L,"__esModule",{value:!0}),L[Symbol.toStringTag]="Module"});
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "toast",
2
+ "name": "menu",
3
3
  "version": "0.0.0",
4
4
  "main": "index.umd.js",
5
5
  "module": "index.es.js",
package/menu/style.css ADDED
@@ -0,0 +1 @@
1
+ .devui-menu-vertical a,.devui-menu-horizontal a{text-decoration:none}.devui-menu-vertical ul,.devui-menu-vertical li,.devui-menu-horizontal ul,.devui-menu-horizontal li{list-style:none;white-space:nowrap}.devui-menu-horizontal{display:flex;box-sizing:border-box;line-height:var(--devui-line-height-base, 1.5);background:var(--devui-global-bg-normal);padding:14px 20px}.devui-menu-horizontal .devui-menu-item{display:flex;position:relative;box-sizing:content-box;padding:0 20px!important;line-height:24px;cursor:pointer}.devui-menu-horizontal .devui-menu-item:after{content:"";display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px}.devui-menu-horizontal :after{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));background:transparent}.devui-menu-horizontal .devui-menu-item-select .devui-submenu-title-content,.devui-menu-horizontal .devui-menu-active-parent .devui-submenu-title-content{color:var(--devui-menu-item-hover)}.devui-menu-horizontal .devui-menu-item-select:after,.devui-menu-horizontal .devui-menu-active-parent:after{display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px;content:"";opacity:1;background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-menu-item span,.devui-menu-horizontal .devui-menu-item a{color:var(--devui-text, #252b3a)}.devui-menu-horizontal .devui-menu-item:hover span,.devui-menu-horizontal .devui-menu-item:hover a{color:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-menu-item:hover:after{background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-submenu{margin:0;padding:0;position:relative}.devui-menu-horizontal .devui-submenu div.devui-submenu-title{padding:0 20px}.devui-menu-horizontal .devui-submenu div.devui-submenu-title span{margin:0}.devui-menu-horizontal .devui-submenu div.devui-submenu-title .icon-chevron-up,.devui-menu-horizontal .devui-submenu div.devui-submenu-title .icon-chevron-right{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-menu-horizontal .devui-submenu:after{content:"";display:block;position:absolute;left:20px;right:20px;bottom:0;width:auto;height:2px}.devui-menu-horizontal .devui-submenu:hover{cursor:pointer}.devui-menu-horizontal .devui-submenu:hover:after{background:var(--devui-brand, #5e7ce0)}.devui-menu-horizontal .devui-submenu:hover>div>i.icon-chevron-up{transform:rotate(180deg)}.devui-menu-horizontal .devui-submenu:hover>div>i.icon-chevron-right{transform:rotate(180deg)}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1)),left 0 linear;background:var(--devui-global-bg-normal);z-index:var(--devui-z-index-modal, 1050)}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));opacity:1;visibility:visible;max-height:100vh;padding:10px 0!important;border-radius:8px;position:absolute}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-menu-item{margin-top:5px}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-submenu{margin:5px 0;padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-submenu div.devui-submenu-title{padding:0!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-show .devui-menu-item-horizontal-wrapper-level .devui-submenu{padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));visibility:hidden;position:absolute;padding:0!important;max-height:0;overflow:hidden;opacity:0}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-menu-item{margin-top:5px}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-submenu{margin:5px 0;padding:0 20px!important}.devui-menu-horizontal .devui-submenu div.devui-menu-item-horizontal-wrapper-hidden .devui-submenu div.devui-submenu-title{padding:0!important}.devui-submenu-menu-item-vertical-wrapper{overflow:hidden}.devui-menu-vertical{padding:0;transition:width var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1)),padding var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));border-right:var(--devui-line, #d7d8da) 1px solid;background:var(--devui-area, #f8f8f8)!important}.devui-menu-vertical :after{transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));background:transparent}.devui-menu-vertical .layer_1{margin:0!important}.devui-menu-vertical .layer_2>div.devui-submenu-title{margin:0!important;background:var(--devui-block, #ffffff)}.devui-menu-vertical.devui-menu-collapsed .devui-menu-icon{margin:auto}.devui-menu-vertical.devui-menu-collapsed ul li{display:none!important}.devui-menu-vertical.devui-menu-collapsed .devui-submenu div.devui-submenu-title .devui-menu-icon{margin:auto}.devui-menu-vertical .devui-menu-item-vertical-wrapper{padding-left:0!important}.devui-menu-vertical .devui-menu-item{width:100%;height:40px;flex-grow:1;line-height:40px;cursor:pointer;color:var(--devui-menu-item);background:var(--devui-block, #ffffff);display:flex}.devui-menu-vertical .devui-menu-item span:nth-child(2){text-align:left}.devui-menu-vertical div:not(.devui-submenu-menu-item-vertical-wrapper){display:flex;flex:auto}.devui-menu-vertical .devui-menu-item:after{display:block;position:absolute;right:0;top:0;transform:scaleX(0);content:"";opacity:1;background:var(--devui-primary-hover, #5e7ce0)}.devui-menu-vertical .devui-menu-item-select{background:var(--devui-primary-bg, #f2f5fc)!important;position:relative}.devui-menu-vertical .devui-menu-item-select span,.devui-menu-vertical .devui-menu-item-select a{color:var(--devui-menu-item-hover)}.devui-menu-vertical .devui-menu-item-select:after{display:block;position:absolute;right:0;top:0;height:100%;width:4px;content:"";opacity:1;background:var(--devui-brand, #5e7ce0);transform:scaleX(1)}.devui-menu-vertical .devui-submenu>div:hover span.devui-submenu-title-content{color:var(--devui-menu-item-hover)}.devui-menu-vertical .devui-menu-item:hover{color:var(--devui-menu-item-hover)}.devui-menu-vertical li.devui-menu-item,.devui-menu-vertical div.devui-submenu-title{white-space:nowrap;overflow:hidden}.devui-menu-vertical li.devui-menu-item span:nth-child(2),.devui-menu-vertical div.devui-submenu-title span:nth-child(2){overflow:hidden;text-overflow:ellipsis}.devui-menu-vertical li.devui-menu-item span:nth-child(2) span,.devui-menu-vertical div.devui-submenu-title span:nth-child(2) span{overflow:hidden;text-overflow:ellipsis}.devui-menu-vertical .devui-menu-item-isCollapsed{width:fit-content}.devui-menu-vertical .devui-menu-item-isCollapsed .devui-menu-icon{margin:auto}.devui-menu-vertical ul.devui-submenu{margin:0;padding:0}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title{display:flex;cursor:pointer;width:100%;height:40px;margin:4px 0;line-height:40px;padding-left:18px;align-items:center;color:var(--devui-menu-item)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title:nth-child(1){font-size:var(--devui-font-size-lg, 14px)}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title span.devui-submenu-title-content{font-size:var(--devui-font-size-lg, 14px);flex:auto}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title span.devui-menu-icon{text-align:center}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title .icon-chevron-up{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-menu-vertical ul.devui-submenu div.devui-submenu-title i.icon-chevron-up.is-opened{transform:rotate(180deg)}.devui-menu-vertical ul.devui-submenu .devui-menu-item{display:flex}.devui-menu-vertical ul.devui-submenu .devui-menu-item>span{flex:auto;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transition:all var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1));color:var(--devui-menu-item-sub)}.devui-menu-vertical ul.devui-submenu .devui-menu-item:hover>span{color:var(--devui-menu-item-hover)}.devui-menu-vertical ul.devui-submenu .devui-menu-item-select *{color:var(--devui-menu-item-hover)!important}.devui-menu-vertical ul li~ul>div{margin-top:0!important}.devui-menu-vertical ul li{background:var(--devui-area, #f8f8f8)!important}.devui-menu-icon+span{margin-left:10px}.devui-menu-item-disabled,.devui-submenu-disabled,.devui-menu-item-disabled:hover,.devui-submenu-disabled:hover{color:var(--devui-menu-disabled)!important;cursor:not-allowed!important}.devui-submenu-disabled:hover span{color:var(--devui-menu-disabled)!important}.fade-enter-active,.fade-leave-active{transition:opacity var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-smooth, cubic-bezier(.645, .045, .355, 1))}.fade-leave-to{display:none}.fade-enter-from,.fade-leave-to{opacity:0}
File without changes
@@ -0,0 +1,538 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { defineComponent, toRefs, computed, createVNode, resolveDynamicComponent, mergeProps, watch, Transition, shallowReactive, createApp, onUnmounted, isVNode, reactive } from "vue";
21
+ const isString = (val) => typeof val === "string";
22
+ const DEFAULT_PREFIX = "icon";
23
+ const iconProps = {
24
+ name: {
25
+ type: String,
26
+ default: "",
27
+ required: true
28
+ },
29
+ size: {
30
+ type: [Number, String],
31
+ default: "inherit"
32
+ },
33
+ color: {
34
+ type: String,
35
+ default: "inherit"
36
+ },
37
+ component: {
38
+ type: Object,
39
+ default: null
40
+ },
41
+ classPrefix: {
42
+ type: String,
43
+ default: DEFAULT_PREFIX
44
+ },
45
+ operable: {
46
+ type: Boolean,
47
+ default: false
48
+ },
49
+ disabled: {
50
+ type: Boolean,
51
+ default: false
52
+ },
53
+ rotate: {
54
+ type: [Number, String]
55
+ }
56
+ };
57
+ const svgIconProps = {
58
+ name: {
59
+ type: String,
60
+ default: "",
61
+ required: true
62
+ },
63
+ color: {
64
+ type: String,
65
+ default: "inherit"
66
+ },
67
+ size: {
68
+ type: [Number, String],
69
+ default: "inherit"
70
+ }
71
+ };
72
+ function createBem(namespace, element, modifier) {
73
+ let cls = namespace;
74
+ if (element) {
75
+ cls += `__${element}`;
76
+ }
77
+ if (modifier) {
78
+ cls += `--${modifier}`;
79
+ }
80
+ return cls;
81
+ }
82
+ function useNamespace(block, needDot = false) {
83
+ const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
84
+ const b = () => createBem(namespace);
85
+ const e = (element) => element ? createBem(namespace, element) : "";
86
+ const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
87
+ const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
88
+ return {
89
+ b,
90
+ e,
91
+ m,
92
+ em
93
+ };
94
+ }
95
+ var icon = "";
96
+ var svgIcon = defineComponent({
97
+ name: "DSvgIcon",
98
+ props: svgIconProps,
99
+ setup(props) {
100
+ const {
101
+ name,
102
+ color,
103
+ size
104
+ } = toRefs(props);
105
+ const ns2 = useNamespace("svg-icon");
106
+ const iconName = computed(() => `#icon-${name.value}`);
107
+ const iconSize = computed(() => {
108
+ return typeof size.value === "number" ? `${size.value}px` : size.value;
109
+ });
110
+ const styles = {
111
+ width: iconSize.value,
112
+ height: iconSize.value
113
+ };
114
+ return () => {
115
+ return createVNode("svg", {
116
+ "class": ns2.b(),
117
+ "style": styles
118
+ }, [createVNode("use", {
119
+ "xlink:href": iconName.value,
120
+ "fill": color.value
121
+ }, null)]);
122
+ };
123
+ }
124
+ });
125
+ function isUrl(value) {
126
+ return /^((http|https):)?\/\//.test(value);
127
+ }
128
+ function useIconDom(props, ctx) {
129
+ const {
130
+ component,
131
+ name,
132
+ size,
133
+ color,
134
+ classPrefix,
135
+ rotate
136
+ } = toRefs(props);
137
+ const ns2 = useNamespace("icon");
138
+ const iconSize = computed(() => {
139
+ return typeof size.value === "number" ? `${size.value}px` : size.value;
140
+ });
141
+ const IconComponent = component.value ? resolveDynamicComponent(component.value) : resolveDynamicComponent(svgIcon);
142
+ const imgIconDom = () => {
143
+ return createVNode("img", mergeProps({
144
+ "src": name.value,
145
+ "alt": name.value.split("/")[name.value.split("/").length - 1],
146
+ "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
147
+ "style": {
148
+ width: iconSize.value || "",
149
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`,
150
+ verticalAlign: "middle"
151
+ }
152
+ }, ctx.attrs), null);
153
+ };
154
+ const svgIconDom = () => {
155
+ return createVNode(IconComponent, mergeProps({
156
+ "name": name.value,
157
+ "color": color.value,
158
+ "size": iconSize.value,
159
+ "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
160
+ "style": {
161
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
162
+ }
163
+ }, ctx.attrs), null);
164
+ };
165
+ const fontIconDom = () => {
166
+ const fontIconClass = /^icon-/.test(name.value) ? name.value : `${classPrefix.value}-${name.value}`;
167
+ return createVNode("i", mergeProps({
168
+ "class": [classPrefix.value, fontIconClass, (rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
169
+ "style": {
170
+ fontSize: iconSize.value,
171
+ color: color.value,
172
+ transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
173
+ }
174
+ }, ctx.attrs), null);
175
+ };
176
+ const iconDom = () => {
177
+ return component.value ? svgIconDom() : isUrl(name.value) ? imgIconDom() : fontIconDom();
178
+ };
179
+ return {
180
+ iconDom
181
+ };
182
+ }
183
+ var Icon = defineComponent({
184
+ name: "DIcon",
185
+ props: iconProps,
186
+ emits: ["click"],
187
+ setup(props, ctx) {
188
+ const {
189
+ disabled,
190
+ operable
191
+ } = toRefs(props);
192
+ const {
193
+ iconDom
194
+ } = useIconDom(props, ctx);
195
+ const ns2 = useNamespace("icon");
196
+ const wrapClassed = computed(() => ({
197
+ [ns2.e("container")]: true,
198
+ [ns2.m("disabled")]: disabled.value,
199
+ [ns2.m("operable")]: operable.value
200
+ }));
201
+ const onClick = (e) => {
202
+ if (disabled.value) {
203
+ return;
204
+ }
205
+ ctx.emit("click", e);
206
+ };
207
+ return () => {
208
+ var _a, _b, _c, _d;
209
+ return createVNode("div", {
210
+ "class": wrapClassed.value,
211
+ "onClick": onClick
212
+ }, [(_b = (_a = ctx.slots).prefix) == null ? void 0 : _b.call(_a), iconDom(), (_d = (_c = ctx.slots).suffix) == null ? void 0 : _d.call(_c)]);
213
+ };
214
+ }
215
+ });
216
+ var iconGroup = "";
217
+ defineComponent({
218
+ name: "DIconGroup",
219
+ setup(_, ctx) {
220
+ const ns2 = useNamespace("icon-group");
221
+ return () => {
222
+ var _a, _b;
223
+ return createVNode("div", {
224
+ "class": ns2.b()
225
+ }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
226
+ };
227
+ }
228
+ });
229
+ var Close = defineComponent({
230
+ emits: ["click"],
231
+ setup(props, {
232
+ emit
233
+ }) {
234
+ const ns2 = useNamespace("message");
235
+ return () => createVNode("div", {
236
+ "class": ns2.e("icon-close"),
237
+ "onClick": (e) => emit("click", e)
238
+ }, [createVNode(Icon, {
239
+ "name": "close",
240
+ "size": "14px"
241
+ }, null)]);
242
+ }
243
+ });
244
+ const messageProps = {
245
+ id: {
246
+ type: String,
247
+ default: ""
248
+ },
249
+ visible: {
250
+ type: Boolean,
251
+ default: false
252
+ },
253
+ message: {
254
+ type: String,
255
+ default: ""
256
+ },
257
+ type: {
258
+ type: String,
259
+ default: "normal"
260
+ },
261
+ bordered: {
262
+ type: Boolean,
263
+ default: true
264
+ },
265
+ shadow: {
266
+ type: Boolean,
267
+ default: true
268
+ },
269
+ duration: {
270
+ type: Number,
271
+ default: 3e3
272
+ },
273
+ showClose: {
274
+ type: Boolean,
275
+ default: false
276
+ },
277
+ onClose: {
278
+ type: Function
279
+ }
280
+ };
281
+ const ns = useNamespace("message");
282
+ function SuccessIcon() {
283
+ return createVNode("svg", {
284
+ "viewBox": "0 0 1024 1024",
285
+ "xmlns": "http://www.w3.org/2000/svg",
286
+ "class": ns.e("icon")
287
+ }, [createVNode("path", {
288
+ "fill": "currentColor",
289
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"
290
+ }, null)]);
291
+ }
292
+ function WarningIcon() {
293
+ return createVNode("svg", {
294
+ "viewBox": "0 0 1024 1024",
295
+ "xmlns": "http://www.w3.org/2000/svg",
296
+ "class": ns.e("icon")
297
+ }, [createVNode("path", {
298
+ "fill": "currentColor",
299
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"
300
+ }, null)]);
301
+ }
302
+ function InfoIcon() {
303
+ return createVNode("svg", {
304
+ "viewBox": "0 0 1024 1024",
305
+ "xmlns": "http://www.w3.org/2000/svg",
306
+ "class": ns.e("icon")
307
+ }, [createVNode("path", {
308
+ "fill": "currentColor",
309
+ "d": "M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"
310
+ }, null)]);
311
+ }
312
+ function ErrorIcon() {
313
+ return createVNode("svg", {
314
+ "viewBox": "0 0 1024 1024",
315
+ "xmlns": "http://www.w3.org/2000/svg",
316
+ "class": ns.e("icon")
317
+ }, [createVNode("path", {
318
+ "fill": "currentColor",
319
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"
320
+ }, null)]);
321
+ }
322
+ var message$1 = "";
323
+ var Message$1 = defineComponent({
324
+ name: "DMessage",
325
+ props: messageProps,
326
+ emits: ["destroy", "close"],
327
+ setup(props, {
328
+ emit,
329
+ slots
330
+ }) {
331
+ const {
332
+ visible,
333
+ message: message2,
334
+ type,
335
+ bordered,
336
+ shadow,
337
+ showClose
338
+ } = toRefs(props);
339
+ const ns2 = useNamespace("message");
340
+ let timer = null;
341
+ let timestamp;
342
+ const handleDestroy = () => {
343
+ emit("destroy");
344
+ };
345
+ const close = () => {
346
+ var _a;
347
+ timer && clearTimeout(timer);
348
+ timer = null;
349
+ (_a = props.onClose) == null ? void 0 : _a.call(props);
350
+ };
351
+ const interrupt = () => {
352
+ if (timer) {
353
+ clearTimeout(timer);
354
+ timer = null;
355
+ }
356
+ };
357
+ const removeReset = () => {
358
+ if (props.visible) {
359
+ const remainTime = props.duration - (Date.now() - timestamp);
360
+ timer = setTimeout(close, remainTime);
361
+ }
362
+ };
363
+ watch(() => props.visible, (val) => {
364
+ if (val) {
365
+ timestamp = Date.now();
366
+ if (props.duration) {
367
+ timer = setTimeout(close, props.duration);
368
+ }
369
+ }
370
+ });
371
+ const classes = computed(() => ({
372
+ [ns2.b()]: true,
373
+ [ns2.m(type.value)]: true
374
+ }));
375
+ const lastOffset = computed(() => getLastOffset(props.id));
376
+ const styles = computed(() => {
377
+ const messageStyles = {};
378
+ if (!bordered.value) {
379
+ messageStyles["border"] = "none";
380
+ }
381
+ if (!shadow.value) {
382
+ messageStyles["box-shadow"] = "none";
383
+ }
384
+ return __spreadProps(__spreadValues({}, messageStyles), {
385
+ top: `${lastOffset.value}px`
386
+ });
387
+ });
388
+ const renderIcon = computed(() => {
389
+ const iconClasses = computed(() => ({
390
+ [ns2.e("image")]: true,
391
+ [ns2.em("image", type.value)]: true
392
+ }));
393
+ return !(!type.value || type.value === "normal") && createVNode("span", {
394
+ "class": iconClasses.value
395
+ }, [type.value && (type.value === "success" && createVNode(SuccessIcon, null, null) || type.value === "info" && createVNode(InfoIcon, null, null) || type.value === "warning" && createVNode(WarningIcon, null, null) || type.value === "error" && createVNode(ErrorIcon, null, null))]);
396
+ });
397
+ const renderText = computed(() => {
398
+ var _a;
399
+ const textClasses = computed(() => ({
400
+ [ns2.e("content")]: true,
401
+ [ns2.em("content", type.value)]: true
402
+ }));
403
+ return createVNode("span", {
404
+ "class": textClasses.value
405
+ }, [message2.value ? message2.value : (_a = slots.default) == null ? void 0 : _a.call(slots)]);
406
+ });
407
+ const renderClose = computed(() => {
408
+ return showClose.value && createVNode("span", {
409
+ "class": [ns2.e("close")],
410
+ "onClick": close
411
+ }, [createVNode(Close, null, null)]);
412
+ });
413
+ return () => {
414
+ return createVNode(Transition, {
415
+ "name": "message-fade",
416
+ "onAfterLeave": handleDestroy
417
+ }, {
418
+ default: () => [visible.value && createVNode("div", {
419
+ "class": classes.value,
420
+ "style": __spreadValues({}, styles.value),
421
+ "onMouseenter": interrupt,
422
+ "onMouseleave": removeReset
423
+ }, [renderIcon.value, renderText.value, renderClose.value])]
424
+ });
425
+ };
426
+ }
427
+ });
428
+ function _isSlot(s) {
429
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
430
+ }
431
+ const instances = shallowReactive([]);
432
+ const getLastOffset = (id) => {
433
+ const idx = instances.findIndex((instance) => instance.id === id);
434
+ return idx * 65 + 80;
435
+ };
436
+ const deleteInstance = (id) => {
437
+ const idx = instances.findIndex((instance) => instance.id === id);
438
+ if (idx !== -1) {
439
+ instances.splice(idx, 1);
440
+ }
441
+ return idx;
442
+ };
443
+ const initInstance = (id, props, message2) => {
444
+ const container = document.createElement("div");
445
+ container.id = id;
446
+ const app = createApp({
447
+ setup() {
448
+ onUnmounted(() => {
449
+ document.body.removeChild(container);
450
+ });
451
+ return () => createVNode(Message$1, mergeProps(props, {
452
+ "id": id,
453
+ "onDestroy": app.unmount
454
+ }), _isSlot(message2) ? message2 : {
455
+ default: () => [message2]
456
+ });
457
+ }
458
+ });
459
+ document.body.appendChild(container);
460
+ app.mount(container);
461
+ return {
462
+ id,
463
+ props
464
+ };
465
+ };
466
+ const defaultOptions = {
467
+ duration: 3e3,
468
+ type: "normal"
469
+ };
470
+ const normalizeOptions = (params) => {
471
+ const options = !params || isString(params) ? {
472
+ message: params
473
+ } : params;
474
+ const normalized = __spreadValues(__spreadValues({}, defaultOptions), options);
475
+ return normalized;
476
+ };
477
+ let seed = 0;
478
+ function open(options) {
479
+ const originOnClose = options.onClose || null;
480
+ const messageContent = options.message;
481
+ delete options.message;
482
+ const props = reactive(__spreadProps(__spreadValues(__spreadValues({}, defaultOptions), options), {
483
+ onClose: () => {
484
+ props.visible = false;
485
+ deleteInstance(props.id);
486
+ originOnClose == null ? void 0 : originOnClose();
487
+ }
488
+ }));
489
+ seed++;
490
+ const id = `message_${seed}`;
491
+ props.id = id;
492
+ const messageContext = initInstance(id, props, messageContent);
493
+ instances.push(messageContext);
494
+ props.visible = true;
495
+ }
496
+ function message(params) {
497
+ const options = normalizeOptions(params);
498
+ open(__spreadValues({}, options));
499
+ }
500
+ function success(params) {
501
+ const options = normalizeOptions(params);
502
+ open(__spreadProps(__spreadValues({}, options), {
503
+ type: "success"
504
+ }));
505
+ }
506
+ function error(params) {
507
+ const options = normalizeOptions(params);
508
+ open(__spreadProps(__spreadValues({}, options), {
509
+ type: "error"
510
+ }));
511
+ }
512
+ function warning(params) {
513
+ const options = normalizeOptions(params);
514
+ open(__spreadProps(__spreadValues({}, options), {
515
+ type: "warning"
516
+ }));
517
+ }
518
+ function info(params) {
519
+ const options = normalizeOptions(params);
520
+ open(__spreadProps(__spreadValues({}, options), {
521
+ type: "info"
522
+ }));
523
+ }
524
+ const Message = Object.assign(message, {
525
+ success,
526
+ error,
527
+ warning,
528
+ info
529
+ });
530
+ var index = {
531
+ title: "Message \u5168\u5C40\u63D0\u793A",
532
+ category: "\u53CD\u9988",
533
+ status: "100%",
534
+ install(app) {
535
+ app.config.globalProperties.$message = Message;
536
+ }
537
+ };
538
+ export { Message, index as default, messageProps };
@@ -0,0 +1 @@
1
+ var ie=Object.defineProperty,ue=Object.defineProperties;var de=Object.getOwnPropertyDescriptors;var B=Object.getOwnPropertySymbols;var me=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable;var L=(c,e,f)=>e in c?ie(c,e,{enumerable:!0,configurable:!0,writable:!0,value:f}):c[e]=f,p=(c,e)=>{for(var f in e||(e={}))me.call(e,f)&&L(c,f,e[f]);if(B)for(var f of B(e))fe.call(e,f)&&L(c,f,e[f]);return c},b=(c,e)=>ue(c,de(e));(function(c,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(c=typeof globalThis!="undefined"?globalThis:c||self,e(c.index={},c.Vue))})(this,function(c,e){"use strict";const f=n=>typeof n=="string",_={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"},operable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},rotate:{type:[Number,String]}},k={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function C(n,t,s){let o=n;return t&&(o+=`__${t}`),s&&(o+=`--${s}`),o}function v(n,t=!1){const s=t?`.devui-${n}`:`devui-${n}`;return{b:()=>C(s),e:l=>l?C(s,l):"",m:l=>l?C(s,"",l):"",em:(l,d)=>l&&d?C(s,l,d):""}}var ge="",A=e.defineComponent({name:"DSvgIcon",props:k,setup(n){const{name:t,color:s,size:o}=e.toRefs(n),r=v("svg-icon"),a=e.computed(()=>`#icon-${t.value}`),g=e.computed(()=>typeof o.value=="number"?`${o.value}px`:o.value),l={width:g.value,height:g.value};return()=>e.createVNode("svg",{class:r.b(),style:l},[e.createVNode("use",{"xlink:href":a.value,fill:s.value},null)])}});function O(n){return/^((http|https):)?\/\//.test(n)}function R(n,t){const{component:s,name:o,size:r,color:a,classPrefix:g,rotate:l}=e.toRefs(n),d=v("icon"),i=e.computed(()=>typeof r.value=="number"?`${r.value}px`:r.value),m=s.value?e.resolveDynamicComponent(s.value):e.resolveDynamicComponent(A),y=()=>e.createVNode("img",e.mergeProps({src:o.value,alt:o.value.split("/")[o.value.split("/").length-1],class:[(l==null?void 0:l.value)==="infinite"&&d.m("spin")],style:{width:i.value||"",transform:`rotate(${l==null?void 0:l.value}deg)`,verticalAlign:"middle"}},t.attrs),null),x=()=>e.createVNode(m,e.mergeProps({name:o.value,color:a.value,size:i.value,class:[(l==null?void 0:l.value)==="infinite"&&d.m("spin")],style:{transform:`rotate(${l==null?void 0:l.value}deg)`}},t.attrs),null),h=()=>{const z=/^icon-/.test(o.value)?o.value:`${g.value}-${o.value}`;return e.createVNode("i",e.mergeProps({class:[g.value,z,(l==null?void 0:l.value)==="infinite"&&d.m("spin")],style:{fontSize:i.value,color:a.value,transform:`rotate(${l==null?void 0:l.value}deg)`}},t.attrs),null)};return{iconDom:()=>s.value?x():O(o.value)?y():h()}}var j=e.defineComponent({name:"DIcon",props:_,emits:["click"],setup(n,t){const{disabled:s,operable:o}=e.toRefs(n),{iconDom:r}=R(n,t),a=v("icon"),g=e.computed(()=>({[a.e("container")]:!0,[a.m("disabled")]:s.value,[a.m("operable")]:o.value})),l=d=>{s.value||t.emit("click",d)};return()=>{var d,i,m,y;return e.createVNode("div",{class:g.value,onClick:l},[(i=(d=t.slots).prefix)==null?void 0:i.call(d),r(),(y=(m=t.slots).suffix)==null?void 0:y.call(m)])}}}),ve="";e.defineComponent({name:"DIconGroup",setup(n,t){const s=v("icon-group");return()=>{var o,r;return e.createVNode("div",{class:s.b()},[(r=(o=t.slots).default)==null?void 0:r.call(o)])}}});var E=e.defineComponent({emits:["click"],setup(n,{emit:t}){const s=v("message");return()=>e.createVNode("div",{class:s.e("icon-close"),onClick:o=>t("click",o)},[e.createVNode(j,{name:"close",size:"14px"},null)])}});const S={id:{type:String,default:""},visible:{type:Boolean,default:!1},message:{type:String,default:""},type:{type:String,default:"normal"},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!0},duration:{type:Number,default:3e3},showClose:{type:Boolean,default:!1},onClose:{type:Function}},V=v("message");function F(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:V.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null)])}function U(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:V.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"},null)])}function q(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:V.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"},null)])}function G(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:V.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"},null)])}var ye="",X=e.defineComponent({name:"DMessage",props:S,emits:["destroy","close"],setup(n,{emit:t,slots:s}){const{visible:o,message:r,type:a,bordered:g,shadow:l,showClose:d}=e.toRefs(n),i=v("message");let m=null,y;const x=()=>{t("destroy")},h=()=>{var u;m&&clearTimeout(m),m=null,(u=n.onClose)==null||u.call(n)},P=()=>{m&&(clearTimeout(m),m=null)},z=()=>{if(n.visible){const u=n.duration-(Date.now()-y);m=setTimeout(h,u)}};e.watch(()=>n.visible,u=>{u&&(y=Date.now(),n.duration&&(m=setTimeout(h,n.duration)))});const oe=e.computed(()=>({[i.b()]:!0,[i.m(a.value)]:!0})),se=e.computed(()=>H(n.id)),le=e.computed(()=>{const u={};return g.value||(u.border="none"),l.value||(u["box-shadow"]="none"),b(p({},u),{top:`${se.value}px`})}),ae=e.computed(()=>{const u=e.computed(()=>({[i.e("image")]:!0,[i.em("image",a.value)]:!0}));return!(!a.value||a.value==="normal")&&e.createVNode("span",{class:u.value},[a.value&&(a.value==="success"&&e.createVNode(F,null,null)||a.value==="info"&&e.createVNode(q,null,null)||a.value==="warning"&&e.createVNode(U,null,null)||a.value==="error"&&e.createVNode(G,null,null))])}),ce=e.computed(()=>{var T;const u=e.computed(()=>({[i.e("content")]:!0,[i.em("content",a.value)]:!0}));return e.createVNode("span",{class:u.value},[r.value?r.value:(T=s.default)==null?void 0:T.call(s)])}),re=e.computed(()=>d.value&&e.createVNode("span",{class:[i.e("close")],onClick:h},[e.createVNode(E,null,null)]));return()=>e.createVNode(e.Transition,{name:"message-fade",onAfterLeave:x},{default:()=>[o.value&&e.createVNode("div",{class:oe.value,style:p({},le.value),onMouseenter:P,onMouseleave:z},[ae.value,ce.value,re.value])]})}});function W(n){return typeof n=="function"||Object.prototype.toString.call(n)==="[object Object]"&&!e.isVNode(n)}const I=e.shallowReactive([]),H=n=>I.findIndex(s=>s.id===n)*65+80,J=n=>{const t=I.findIndex(s=>s.id===n);return t!==-1&&I.splice(t,1),t},K=(n,t,s)=>{const o=document.createElement("div");o.id=n;const r=e.createApp({setup(){return e.onUnmounted(()=>{document.body.removeChild(o)}),()=>e.createVNode(X,e.mergeProps(t,{id:n,onDestroy:r.unmount}),W(s)?s:{default:()=>[s]})}});return document.body.appendChild(o),r.mount(o),{id:n,props:t}},D={duration:3e3,type:"normal"},w=n=>{const t=!n||f(n)?{message:n}:n;return p(p({},D),t)};let $=0;function N(n){const t=n.onClose||null,s=n.message;delete n.message;const o=e.reactive(b(p(p({},D),n),{onClose:()=>{o.visible=!1,J(o.id),t==null||t()}}));$++;const r=`message_${$}`;o.id=r;const a=K(r,o,s);I.push(a),o.visible=!0}function Q(n){const t=w(n);N(p({},t))}function Y(n){const t=w(n);N(b(p({},t),{type:"success"}))}function Z(n){const t=w(n);N(b(p({},t),{type:"error"}))}function ee(n){const t=w(n);N(b(p({},t),{type:"warning"}))}function ne(n){const t=w(n);N(b(p({},t),{type:"info"}))}const M=Object.assign(Q,{success:Y,error:Z,warning:ee,info:ne});var te={title:"Message \u5168\u5C40\u63D0\u793A",category:"\u53CD\u9988",status:"100%",install(n){n.config.globalProperties.$message=M}};c.Message=M,c.default=te,c.messageProps=S,Object.defineProperty(c,"__esModule",{value:!0}),c[Symbol.toStringTag]="Module"});
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "comment",
2
+ "name": "message",
3
3
  "version": "0.0.0",
4
4
  "main": "index.umd.js",
5
5
  "module": "index.es.js",
@@ -0,0 +1 @@
1
+ .devui-icon__container{display:inline-block;color:var(--devui-icon-fill, #71757f)}.devui-icon__container>*:not(:last-child){vertical-align:middle;margin-right:8px}.devui-icon__container i{vertical-align:middle;transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--disabled{color:var(--devui-disabled-text, #adb0b8);cursor:not-allowed}.devui-icon--disabled i{color:var(--devui-disabled-text, #adb0b8)}.devui-icon--operable:not(.devui-icon--disabled){cursor:pointer;transition:color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--operable:not(.devui-icon--disabled) i{cursor:pointer}.devui-icon--operable:hover:not(.devui-icon--disabled){color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:hover:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-hover, var(--devui-list-item-hover-bg, #f2f2f3))}.devui-icon--operable:hover:not(.devui-icon--disabled) i{color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:active:not(.devui-icon--disabled){color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable:active:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-active, var(--devui-list-item-active-bg, #f2f5fc))}.devui-icon--operable:active:not(.devui-icon--disabled) i{color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable.devui-icon__container{height:32px;line-height:32px;padding:0 8px;margin-left:-8px;border-radius:var(--devui-border-radius, 4px);transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--spin{animation:iconSpin 2.5s linear infinite}.devui-svg-icon{vertical-align:middle}@keyframes iconSpin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.devui-icon-group{display:inline-flex;align-items:center}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable){padding:8px;margin-left:0}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable):first-child{margin-left:-8px}.devui-icon-group>*:not(:first-child){margin-left:0}.devui-message{position:fixed;z-index:var(--devui-z-index-modal, 1079);padding:10px 15px;border-radius:var(--devui-border-radius-feedback, 4px);left:50%;transform:translate(-50%);top:80px;display:flex;align-items:center;border-width:1px;border-style:solid;border-color:var(--devui-line, #d7d8da);box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;background-color:var(--devui-base-bg, #ffffff);transition:top .5s ease}.devui-message--success{background-color:var(--devui-success-bg, #edfff9);border-color:var(--devui-success-line, #50d4ab)}.devui-message--info{background-color:var(--devui-info-bg, #f2f5fc);border-color:var(--devui-info-line, #5e7ce0)}.devui-message--warning{background-color:var(--devui-warning-bg, #fff3e8);border-color:var(--devui-warning-line, #fa9841)}.devui-message--error{background-color:var(--devui-danger-bg, #ffeeed);border-color:var(--devui-danger-line, #f66f6a)}.devui-message__close{margin-left:auto;padding-left:10px;margin-top:-2px}.devui-message__image{margin-top:1px;display:inline-block;width:var(--devui-font-size-icon, 16px);min-width:var(--devui-font-size-icon, 16px);min-height:var(--devui-font-size-icon, 16px);height:var(--devui-font-size-icon, 16px);padding:0;line-height:1;margin-right:10px}.devui-message__image--success{color:var(--devui-success, #50d4ab)}.devui-message__image--info{color:var(--devui-info, #5e7ce0)}.devui-message__image--warning{color:var(--devui-warning, #fac20a)}.devui-message__image--error{color:var(--devui-danger, #f66f6a)}.devui-message__content{font-size:var(--devui-font-size-page-title, 16px);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.devui-message__content--success{color:var(--devui-success, #50d4ab)}.devui-message__content--info{color:var(--devui-info, #5e7ce0)}.devui-message__content--warning{color:var(--devui-warning, #fac20a)}.devui-message__content--error{color:var(--devui-danger, #f66f6a)}.message-fade-enter-active,.message-fade-leave-active{transform:translate(-50%);transition:all .5s ease}.message-fade-enter-from,.message-fade-leave-to{opacity:0;transform:translate(-50%,-200%)}