vue-devui 1.0.0-beta.1 → 1.0.0-beta.13

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 (332) hide show
  1. package/README.md +62 -45
  2. package/accordion/index.d.ts +7 -0
  3. package/accordion/index.es.js +460 -142
  4. package/accordion/index.umd.js +1 -1
  5. package/accordion/style.css +1 -1
  6. package/alert/index.d.ts +7 -0
  7. package/alert/index.es.js +7 -5
  8. package/alert/index.umd.js +1 -1
  9. package/alert/style.css +1 -1
  10. package/anchor/index.d.ts +7 -0
  11. package/avatar/index.d.ts +7 -0
  12. package/avatar/index.es.js +1 -1
  13. package/avatar/index.umd.js +1 -1
  14. package/back-top/index.d.ts +7 -0
  15. package/back-top/index.es.js +128 -0
  16. package/back-top/index.umd.js +1 -0
  17. package/back-top/package.json +7 -0
  18. package/back-top/style.css +1 -0
  19. package/badge/index.d.ts +7 -0
  20. package/badge/index.es.js +1 -1
  21. package/badge/index.umd.js +1 -1
  22. package/breadcrumb/index.d.ts +7 -0
  23. package/button/index.d.ts +7 -0
  24. package/button/index.es.js +218 -12
  25. package/button/index.umd.js +1 -1
  26. package/button/style.css +1 -1
  27. package/card/index.d.ts +7 -0
  28. package/card/index.es.js +1 -1
  29. package/card/index.umd.js +1 -1
  30. package/carousel/index.d.ts +7 -0
  31. package/carousel/index.es.js +5 -4
  32. package/carousel/index.umd.js +1 -1
  33. package/cascader/index.d.ts +7 -0
  34. package/cascader/index.es.js +1239 -83
  35. package/cascader/index.umd.js +1 -1
  36. package/cascader/style.css +1 -1
  37. package/checkbox/index.d.ts +7 -0
  38. package/checkbox/index.es.js +43 -8
  39. package/checkbox/index.umd.js +1 -1
  40. package/color-picker/index.d.ts +7 -0
  41. package/color-picker/index.es.js +2960 -0
  42. package/color-picker/index.umd.js +1 -0
  43. package/color-picker/package.json +7 -0
  44. package/color-picker/style.css +1 -0
  45. package/comment/index.d.ts +7 -0
  46. package/comment/index.es.js +85 -0
  47. package/comment/index.umd.js +1 -0
  48. package/comment/package.json +7 -0
  49. package/comment/style.css +1 -0
  50. package/countdown/index.d.ts +7 -0
  51. package/countdown/index.es.js +176 -0
  52. package/countdown/index.umd.js +1 -0
  53. package/countdown/package.json +7 -0
  54. package/countdown/style.css +1 -0
  55. package/date-picker/index.d.ts +7 -0
  56. package/date-picker/index.es.js +32 -21
  57. package/date-picker/index.umd.js +1 -1
  58. package/date-picker/style.css +1 -1
  59. package/dragdrop/index.d.ts +7 -0
  60. package/dragdrop/index.es.js +157 -0
  61. package/dragdrop/index.umd.js +1 -0
  62. package/dragdrop/package.json +7 -0
  63. package/drawer/index.d.ts +7 -0
  64. package/drawer/index.es.js +194 -42
  65. package/drawer/index.umd.js +1 -1
  66. package/drawer/style.css +1 -1
  67. package/dropdown/index.d.ts +7 -0
  68. package/dropdown/index.es.js +535 -0
  69. package/dropdown/index.umd.js +1 -0
  70. package/dropdown/package.json +7 -0
  71. package/dropdown/style.css +1 -0
  72. package/editable-select/index.d.ts +7 -0
  73. package/editable-select/index.es.js +5782 -469
  74. package/editable-select/index.umd.js +27 -1
  75. package/editable-select/style.css +1 -1
  76. package/form/index.d.ts +7 -0
  77. package/form/index.es.js +2257 -0
  78. package/form/index.umd.js +1 -0
  79. package/form/package.json +7 -0
  80. package/form/style.css +1 -0
  81. package/fullscreen/index.d.ts +7 -0
  82. package/fullscreen/index.es.js +14 -4
  83. package/fullscreen/index.umd.js +1 -1
  84. package/gantt/index.d.ts +7 -0
  85. package/gantt/index.es.js +535 -0
  86. package/gantt/index.umd.js +1 -0
  87. package/gantt/package.json +7 -0
  88. package/gantt/style.css +1 -0
  89. package/grid/index.d.ts +7 -0
  90. package/grid/index.es.js +269 -0
  91. package/grid/index.umd.js +1 -0
  92. package/grid/package.json +7 -0
  93. package/grid/style.css +1 -0
  94. package/icon/index.d.ts +7 -0
  95. package/icon/index.es.js +6 -5
  96. package/icon/index.umd.js +1 -1
  97. package/image-preview/index.d.ts +7 -0
  98. package/image-preview/index.es.js +99 -20
  99. package/image-preview/index.umd.js +1 -1
  100. package/image-preview/style.css +1 -1
  101. package/index.d.ts +7 -0
  102. package/input/index.d.ts +7 -0
  103. package/input/index.es.js +24 -13
  104. package/input/index.umd.js +1 -1
  105. package/input-icon/index.d.ts +7 -0
  106. package/input-icon/index.es.js +332 -0
  107. package/input-icon/index.umd.js +1 -0
  108. package/input-icon/package.json +7 -0
  109. package/input-icon/style.css +1 -0
  110. package/input-number/index.d.ts +7 -0
  111. package/input-number/index.es.js +5 -4
  112. package/input-number/index.umd.js +1 -1
  113. package/layout/index.d.ts +7 -0
  114. package/layout/index.es.js +1 -1
  115. package/layout/index.umd.js +1 -1
  116. package/loading/index.d.ts +7 -0
  117. package/loading/index.es.js +1 -1
  118. package/loading/index.umd.js +1 -1
  119. package/modal/index.d.ts +7 -0
  120. package/modal/index.es.js +328 -109
  121. package/modal/index.umd.js +1 -1
  122. package/modal/style.css +1 -1
  123. package/nav-sprite/index.d.ts +7 -0
  124. package/nuxt/components/Accordion.js +3 -0
  125. package/nuxt/components/Alert.js +3 -0
  126. package/nuxt/components/Anchor.js +3 -0
  127. package/nuxt/components/Aside.js +3 -0
  128. package/nuxt/components/Avatar.js +3 -0
  129. package/nuxt/components/BackTop.js +3 -0
  130. package/nuxt/components/Badge.js +3 -0
  131. package/nuxt/components/Breadcrumb.js +3 -0
  132. package/nuxt/components/Button.js +3 -0
  133. package/nuxt/components/Card.js +3 -0
  134. package/nuxt/components/Carousel.js +3 -0
  135. package/nuxt/components/Cascader.js +3 -0
  136. package/nuxt/components/Checkbox.js +3 -0
  137. package/nuxt/components/Col.js +3 -0
  138. package/nuxt/components/ColorPicker.js +3 -0
  139. package/nuxt/components/Column.js +3 -0
  140. package/nuxt/components/Comment.js +3 -0
  141. package/nuxt/components/Content.js +3 -0
  142. package/nuxt/components/Countdown.js +3 -0
  143. package/nuxt/components/DatePicker.js +3 -0
  144. package/nuxt/components/Drawer.js +3 -0
  145. package/nuxt/components/DrawerService.js +3 -0
  146. package/nuxt/components/Dropdown.js +3 -0
  147. package/nuxt/components/EditableSelect.js +3 -0
  148. package/nuxt/components/FixedOverlay.js +3 -0
  149. package/nuxt/components/FlexibleOverlay.js +3 -0
  150. package/nuxt/components/Footer.js +3 -0
  151. package/nuxt/components/Form.js +3 -0
  152. package/nuxt/components/FormControl.js +3 -0
  153. package/nuxt/components/FormItem.js +3 -0
  154. package/nuxt/components/FormLabel.js +3 -0
  155. package/nuxt/components/FormOperation.js +3 -0
  156. package/nuxt/components/Fullscreen.js +3 -0
  157. package/nuxt/components/Gantt.js +3 -0
  158. package/nuxt/components/Header.js +3 -0
  159. package/nuxt/components/Icon.js +2 -0
  160. package/nuxt/components/ImagePreviewService.js +3 -0
  161. package/nuxt/components/Input.js +3 -0
  162. package/nuxt/components/InputIcon.js +3 -0
  163. package/nuxt/components/InputNumber.js +3 -0
  164. package/nuxt/components/Layout.js +3 -0
  165. package/nuxt/components/Loading.js +3 -0
  166. package/nuxt/components/LoadingService.js +3 -0
  167. package/nuxt/components/Modal.js +3 -0
  168. package/nuxt/components/NavSprite.js +2 -0
  169. package/nuxt/components/Pagination.js +3 -0
  170. package/nuxt/components/Panel.js +3 -0
  171. package/nuxt/components/Popover.js +3 -0
  172. package/nuxt/components/Progress.js +3 -0
  173. package/nuxt/components/QuadrantDiagram.js +3 -0
  174. package/nuxt/components/Radio.js +3 -0
  175. package/nuxt/components/RadioGroup.js +3 -0
  176. package/nuxt/components/Rate.js +3 -0
  177. package/nuxt/components/ReadTip.js +3 -0
  178. package/nuxt/components/Result.js +3 -0
  179. package/nuxt/components/Row.js +3 -0
  180. package/nuxt/components/Search.js +3 -0
  181. package/nuxt/components/Select.js +3 -0
  182. package/nuxt/components/Skeleton.js +3 -0
  183. package/nuxt/components/SkeletonItem.js +3 -0
  184. package/nuxt/components/Slider.js +3 -0
  185. package/nuxt/components/Splitter.js +3 -0
  186. package/nuxt/components/Statistic.js +3 -0
  187. package/nuxt/components/Status.js +3 -0
  188. package/nuxt/components/StepsGuide.js +3 -0
  189. package/nuxt/components/StickSlider.js +3 -0
  190. package/nuxt/components/Sticky.js +2 -0
  191. package/nuxt/components/Switch.js +3 -0
  192. package/nuxt/components/Table.js +3 -0
  193. package/nuxt/components/Tabs.js +3 -0
  194. package/nuxt/components/Tag.js +3 -0
  195. package/nuxt/components/TagInput.js +3 -0
  196. package/nuxt/components/Textarea.js +3 -0
  197. package/nuxt/components/TimeAxis.js +3 -0
  198. package/nuxt/components/TimeAxisItem.js +3 -0
  199. package/nuxt/components/TimePicker.js +3 -0
  200. package/nuxt/components/Toast.js +3 -0
  201. package/nuxt/components/ToastService.js +3 -0
  202. package/nuxt/components/Tooltip.js +3 -0
  203. package/nuxt/components/Transfer.js +3 -0
  204. package/nuxt/components/Tree.js +3 -0
  205. package/nuxt/components/TreeSelect.js +3 -0
  206. package/nuxt/components/Upload.js +3 -0
  207. package/nuxt/components/buttonProps.js +3 -0
  208. package/nuxt/index.js +13 -0
  209. package/overlay/index.d.ts +7 -0
  210. package/overlay/index.es.js +111 -94
  211. package/overlay/index.umd.js +1 -1
  212. package/overlay/style.css +1 -1
  213. package/package.json +5 -47
  214. package/pagination/index.d.ts +7 -0
  215. package/pagination/index.es.js +3 -3
  216. package/pagination/index.umd.js +1 -1
  217. package/panel/index.d.ts +7 -0
  218. package/panel/index.es.js +25 -22
  219. package/panel/index.umd.js +1 -1
  220. package/panel/style.css +1 -1
  221. package/popover/index.d.ts +7 -0
  222. package/popover/index.es.js +18 -6
  223. package/popover/index.umd.js +1 -1
  224. package/progress/index.d.ts +7 -0
  225. package/progress/index.es.js +9 -9
  226. package/progress/index.umd.js +3 -3
  227. package/quadrant-diagram/index.d.ts +7 -0
  228. package/radio/index.d.ts +7 -0
  229. package/radio/index.es.js +6 -6
  230. package/radio/index.umd.js +1 -1
  231. package/rate/index.d.ts +7 -0
  232. package/rate/index.es.js +1 -1
  233. package/rate/index.umd.js +1 -1
  234. package/read-tip/index.d.ts +7 -0
  235. package/read-tip/index.es.js +258 -0
  236. package/read-tip/index.umd.js +1 -0
  237. package/read-tip/package.json +7 -0
  238. package/read-tip/style.css +1 -0
  239. package/result/index.d.ts +7 -0
  240. package/result/index.es.js +119 -0
  241. package/result/index.umd.js +1 -0
  242. package/result/package.json +7 -0
  243. package/result/style.css +1 -0
  244. package/ripple/index.d.ts +7 -0
  245. package/ripple/index.es.js +5 -2
  246. package/ripple/index.umd.js +1 -1
  247. package/search/index.d.ts +7 -0
  248. package/search/index.es.js +35 -21
  249. package/search/index.umd.js +1 -1
  250. package/select/index.d.ts +7 -0
  251. package/select/index.es.js +47 -11
  252. package/select/index.umd.js +1 -1
  253. package/skeleton/index.d.ts +7 -0
  254. package/skeleton/index.es.js +148 -26
  255. package/skeleton/index.umd.js +1 -1
  256. package/skeleton/style.css +1 -1
  257. package/slider/index.d.ts +7 -0
  258. package/slider/index.es.js +32 -182
  259. package/slider/index.umd.js +1 -1
  260. package/slider/style.css +1 -1
  261. package/splitter/index.d.ts +7 -0
  262. package/splitter/index.es.js +295 -100
  263. package/splitter/index.umd.js +1 -1
  264. package/splitter/style.css +1 -1
  265. package/statistic/index.d.ts +7 -0
  266. package/statistic/index.es.js +280 -0
  267. package/statistic/index.umd.js +1 -0
  268. package/statistic/package.json +7 -0
  269. package/statistic/style.css +1 -0
  270. package/status/index.d.ts +7 -0
  271. package/status/index.es.js +2 -2
  272. package/status/index.umd.js +1 -1
  273. package/steps-guide/index.d.ts +7 -0
  274. package/steps-guide/index.es.js +101 -73
  275. package/steps-guide/index.umd.js +1 -1
  276. package/steps-guide/style.css +1 -1
  277. package/sticky/index.d.ts +7 -0
  278. package/style.css +1 -1
  279. package/switch/index.d.ts +7 -0
  280. package/switch/index.es.js +1 -1
  281. package/switch/index.umd.js +1 -1
  282. package/table/index.d.ts +7 -0
  283. package/table/index.es.js +1708 -156
  284. package/table/index.umd.js +1 -1
  285. package/table/style.css +1 -1
  286. package/tabs/index.d.ts +7 -0
  287. package/tabs/index.es.js +6 -3
  288. package/tabs/index.umd.js +1 -1
  289. package/tag/index.d.ts +7 -0
  290. package/tag/index.es.js +131 -0
  291. package/tag/index.umd.js +1 -0
  292. package/tag/package.json +7 -0
  293. package/tag/style.css +1 -0
  294. package/tag-input/index.d.ts +7 -0
  295. package/tag-input/index.es.js +1 -13
  296. package/tag-input/index.umd.js +1 -1
  297. package/textarea/index.d.ts +7 -0
  298. package/textarea/index.es.js +132 -0
  299. package/textarea/index.umd.js +1 -0
  300. package/textarea/package.json +7 -0
  301. package/textarea/style.css +1 -0
  302. package/time-axis/index.d.ts +7 -0
  303. package/time-axis/index.es.js +241 -21
  304. package/time-axis/index.umd.js +1 -1
  305. package/time-axis/style.css +1 -1
  306. package/time-picker/index.d.ts +7 -0
  307. package/time-picker/index.es.js +266 -32
  308. package/time-picker/index.umd.js +1 -1
  309. package/time-picker/style.css +1 -1
  310. package/toast/index.d.ts +7 -0
  311. package/toast/index.es.js +16 -12
  312. package/toast/index.umd.js +1 -1
  313. package/toast/style.css +1 -1
  314. package/tooltip/index.d.ts +7 -0
  315. package/transfer/index.d.ts +7 -0
  316. package/transfer/index.es.js +575 -83
  317. package/transfer/index.umd.js +1 -1
  318. package/transfer/style.css +1 -1
  319. package/tree/index.d.ts +7 -0
  320. package/tree/index.es.js +171 -35
  321. package/tree/index.umd.js +1 -1
  322. package/tree-select/index.d.ts +7 -0
  323. package/tree-select/index.es.js +528 -0
  324. package/tree-select/index.umd.js +1 -0
  325. package/tree-select/package.json +7 -0
  326. package/tree-select/style.css +1 -0
  327. package/upload/index.d.ts +7 -0
  328. package/upload/index.es.js +172 -513
  329. package/upload/index.umd.js +1 -1
  330. package/upload/style.css +1 -1
  331. package/vue-devui.es.js +22079 -8773
  332. package/vue-devui.umd.js +29 -3
package/panel/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { reactive, ref, defineComponent, provide, onMounted, createVNode, inject, Transition } from "vue";
1
+ import { reactive, ref, defineComponent, provide, computed, createVNode, inject, onMounted, Transition } from "vue";
2
2
  var panel = "";
3
3
  const PanelProps = {
4
4
  type: {
@@ -11,7 +11,7 @@ const PanelProps = {
11
11
  },
12
12
  isCollapsed: {
13
13
  type: Boolean,
14
- default: void 0
14
+ default: false
15
15
  },
16
16
  beforeToggle: {
17
17
  type: Function,
@@ -47,28 +47,23 @@ var Panel = defineComponent({
47
47
  props: PanelProps,
48
48
  setup(props, ctx) {
49
49
  provide("beforeToggle", props.beforeToggle);
50
- provide("showAnimation", props.showAnimation);
51
- provide("hasLeftPadding", props.hasLeftPadding);
50
+ provide("showAnimation", computed(() => props.showAnimation));
51
+ provide("hasLeftPadding", computed(() => props.hasLeftPadding));
52
52
  const isCollapsed = ref(props.isCollapsed);
53
- const bodyEl = ref();
53
+ const type = computed(() => props.type);
54
+ const cssClass = computed(() => props.cssClass);
54
55
  const onToggle = () => {
55
56
  var _a;
56
57
  (_a = props.toggle) == null ? void 0 : _a.call(props, Store.getByKey(`isCollapsed[${timeStamp}]`));
57
58
  };
58
- onMounted(() => {
59
- if (bodyEl.value) {
60
- const dom = bodyEl.value;
61
- if (isCollapsed.value)
62
- dom.style.height = `${dom.offsetHeight}px`;
63
- }
64
- });
65
59
  const timeStamp = new Date().getTime().toString();
66
60
  Store.setData(`isCollapsed[${timeStamp}]`, isCollapsed.value);
67
61
  return () => {
62
+ var _a, _b;
68
63
  return createVNode("div", {
69
64
  "onClick": onToggle,
70
- "class": `devui-panel devui-panel-${props.type} ${props.cssClass}`
71
- }, [ctx.slots.default()]);
65
+ "class": `devui-panel devui-panel-${type.value} ${cssClass.value}`
66
+ }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
72
67
  };
73
68
  }
74
69
  });
@@ -80,6 +75,8 @@ var PanelHeader = defineComponent({
80
75
  const keys = Object.keys(Store.state());
81
76
  const key = keys.pop();
82
77
  const isCollapsed = ref(Store.state()[key]);
78
+ let changeFlag = ref();
79
+ let header = null;
83
80
  const canToggle = () => {
84
81
  let changeResult = Promise.resolve(true);
85
82
  if (beforeToggle) {
@@ -94,28 +91,34 @@ var PanelHeader = defineComponent({
94
91
  }
95
92
  return changeResult;
96
93
  };
94
+ canToggle().then((val) => changeFlag.value = val);
97
95
  const toggleBody = () => {
98
96
  canToggle().then((val) => {
99
- var _a;
97
+ var _a, _b;
98
+ changeFlag.value = val;
100
99
  if (!val) {
100
+ if (!isCollapsed.value) {
101
+ Store.setData(`${key}`, !isCollapsed.value);
102
+ isCollapsed.value = !isCollapsed.value;
103
+ (_a = props.toggle) == null ? void 0 : _a.call(props, isCollapsed.value);
104
+ }
101
105
  return;
102
106
  }
103
107
  if (isCollapsed.value !== void 0) {
104
108
  Store.setData(`${key}`, !isCollapsed.value);
105
109
  isCollapsed.value = !isCollapsed.value;
106
- (_a = props.toggle) == null ? void 0 : _a.call(props, isCollapsed.value);
110
+ (_b = props.toggle) == null ? void 0 : _b.call(props, isCollapsed.value);
107
111
  }
108
112
  });
109
113
  };
110
114
  return () => {
111
115
  var _a, _b;
112
- let header = null;
113
116
  if (ctx.slots.default) {
114
117
  header = createVNode("div", {
115
118
  "class": "devui-panel-heading",
116
119
  "onClick": toggleBody,
117
120
  "style": {
118
- "cursor": isCollapsed.value !== void 0 ? "pointer" : "auto"
121
+ "cursor": changeFlag.value ? "pointer" : "auto"
119
122
  }
120
123
  }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
121
124
  }
@@ -127,8 +130,8 @@ var PanelBody = defineComponent({
127
130
  name: "DPanelBody",
128
131
  props: PanelProps,
129
132
  setup(props, ctx) {
130
- const animationName = inject("showAnimation") ? "devui-panel" : "";
131
- const hasLeftPadding = !inject("hasLeftPadding") ? "no-left-padding" : "";
133
+ let animationName = inject("showAnimation");
134
+ let hasLeftPadding = inject("hasLeftPadding");
132
135
  const keys = Object.keys(Store.state());
133
136
  const key = keys.pop();
134
137
  const isCollapsed = Store.state();
@@ -156,7 +159,7 @@ var PanelBody = defineComponent({
156
159
  return createVNode("div", {
157
160
  "class": `devui-panel devui-panel-${props.type} ${props.cssClass}`
158
161
  }, [createVNode(Transition, {
159
- "name": animationName,
162
+ "name": animationName.value ? "devui-panel" : "",
160
163
  "onEnter": enter,
161
164
  "onLeave": leave
162
165
  }, {
@@ -164,7 +167,7 @@ var PanelBody = defineComponent({
164
167
  var _a, _b;
165
168
  return [isCollapsed[key] === void 0 || isCollapsed[key] ? createVNode("div", {
166
169
  "ref": bodyEl,
167
- "class": `devui-panel-body ${isCollapsed[key] !== void 0 ? "devui-panel-body-collapse" : ""} ${hasLeftPadding}`
170
+ "class": `devui-panel-body ${isCollapsed[key] !== void 0 ? "devui-panel-body-collapse" : ""} ${!hasLeftPadding.value ? "no-left-padding" : ""}`
168
171
  }, [createVNode("div", {
169
172
  "class": "devui-panel-content"
170
173
  }, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])]) : null];
@@ -1 +1 @@
1
- (function(r,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(r=typeof globalThis!="undefined"?globalThis:r||self,e(r.index={},r.Vue))})(this,function(r,e){"use strict";var $="";const h={type:{type:String,default:"default"},cssClass:{type:String,default:""},isCollapsed:{type:Boolean,default:void 0},beforeToggle:{type:Function,default:null},toggle:{type:Function,default:null},showAnimation:{type:Boolean,default:!0},hasLeftPadding:{type:Boolean,default:!0}},m=e.reactive({});class g{static getByKey(o){return m[o]}static state(){return m}static setData(o,i){m[o]=e.ref(i)}}var y=e.defineComponent({name:"DPanel",props:h,setup(t,o){e.provide("beforeToggle",t.beforeToggle),e.provide("showAnimation",t.showAnimation),e.provide("hasLeftPadding",t.hasLeftPadding);const i=e.ref(t.isCollapsed),u=e.ref(),c=()=>{var a;(a=t.toggle)==null||a.call(t,g.getByKey(`isCollapsed[${n}]`))};e.onMounted(()=>{if(u.value){const a=u.value;i.value&&(a.style.height=`${a.offsetHeight}px`)}});const n=new Date().getTime().toString();return g.setData(`isCollapsed[${n}]`,i.value),()=>e.createVNode("div",{onClick:c,class:`devui-panel devui-panel-${t.type} ${t.cssClass}`},[o.slots.default()])}}),v=e.defineComponent({name:"DPanelHeader",props:h,setup(t,o){const i=e.inject("beforeToggle"),c=Object.keys(g.state()).pop(),n=e.ref(g.state()[c]),a=()=>{let d=Promise.resolve(!0);if(i){const l=i(n);typeof l!==void 0&&(l instanceof Promise?d=l:d=Promise.resolve(l))}return d},p=()=>{a().then(d=>{var l;!d||n.value!==void 0&&(g.setData(`${c}`,!n.value),n.value=!n.value,(l=t.toggle)==null||l.call(t,n.value))})};return()=>{var l,s;let d=null;return o.slots.default&&(d=e.createVNode("div",{class:"devui-panel-heading",onClick:p,style:{cursor:n.value!==void 0?"pointer":"auto"}},[(s=(l=o.slots).default)==null?void 0:s.call(l)])),d}}}),P=e.defineComponent({name:"DPanelBody",props:h,setup(t,o){const i=e.inject("showAnimation")?"devui-panel":"",u=e.inject("hasLeftPadding")?"":"no-left-padding",n=Object.keys(g.state()).pop(),a=g.state(),p=e.ref();e.onMounted(()=>{if(p.value){const s=p.value;a[n]&&(s.style.height=`${s.offsetHeight}px`)}});const d=s=>{const f=s;f.style.height="";const T=f.offsetHeight;f.style.height="0px",f.offsetHeight,f.style.height=`${T}px`},l=s=>{const f=s;f.style.height="0px"};return()=>e.createVNode("div",{class:`devui-panel devui-panel-${t.type} ${t.cssClass}`},[e.createVNode(e.Transition,{name:i,onEnter:d,onLeave:l},{default:()=>{var s,f;return[a[n]===void 0||a[n]?e.createVNode("div",{ref:p,class:`devui-panel-body ${a[n]!==void 0?"devui-panel-body-collapse":""} ${u}`},[e.createVNode("div",{class:"devui-panel-content"},[(f=(s=o.slots).default)==null?void 0:f.call(s)])]):null]}})])}}),C=e.defineComponent({name:"DPanelFooter",setup(t,o){return()=>{var u,c;return o.slots.default?e.createVNode("div",{class:"devui-panel-footer"},[(c=(u=o.slots).default)==null?void 0:c.call(u)]):null}}});y.install=function(t){t.component(y.name,y),t.component(v.name,v),t.component(P.name,P),t.component(C.name,C)};var b={title:"Panel \u9762\u677F",category:"\u901A\u7528",status:"100%",install(t){t.use(y)}};r.Panel=y,r.default=b,Object.defineProperty(r,"__esModule",{value:!0}),r[Symbol.toStringTag]="Module"});
1
+ (function(d,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(d=typeof globalThis!="undefined"?globalThis:d||self,e(d.index={},d.Vue))})(this,function(d,e){"use strict";var $="";const h={type:{type:String,default:"default"},cssClass:{type:String,default:""},isCollapsed:{type:Boolean,default:!1},beforeToggle:{type:Function,default:null},toggle:{type:Function,default:null},showAnimation:{type:Boolean,default:!0},hasLeftPadding:{type:Boolean,default:!0}},p=e.reactive({});class f{static getByKey(o){return p[o]}static state(){return p}static setData(o,u){p[o]=e.ref(u)}}var y=e.defineComponent({name:"DPanel",props:h,setup(t,o){e.provide("beforeToggle",t.beforeToggle),e.provide("showAnimation",e.computed(()=>t.showAnimation)),e.provide("hasLeftPadding",e.computed(()=>t.hasLeftPadding));const u=e.ref(t.isCollapsed),r=e.computed(()=>t.type),c=e.computed(()=>t.cssClass),l=()=>{var s;(s=t.toggle)==null||s.call(t,f.getByKey(`isCollapsed[${i}]`))},i=new Date().getTime().toString();return f.setData(`isCollapsed[${i}]`,u.value),()=>{var s,g;return e.createVNode("div",{onClick:l,class:`devui-panel devui-panel-${r.value} ${c.value}`},[(g=(s=o.slots).default)==null?void 0:g.call(s)])}}}),P=e.defineComponent({name:"DPanelHeader",props:h,setup(t,o){const u=e.inject("beforeToggle"),c=Object.keys(f.state()).pop(),l=e.ref(f.state()[c]);let i=e.ref(),s=null;const g=()=>{let n=Promise.resolve(!0);if(u){const a=u(l);typeof a!==void 0&&(a instanceof Promise?n=a:n=Promise.resolve(a))}return n};g().then(n=>i.value=n);const v=()=>{g().then(n=>{var a,m;if(i.value=n,!n){l.value||(f.setData(`${c}`,!l.value),l.value=!l.value,(a=t.toggle)==null||a.call(t,l.value));return}l.value!==void 0&&(f.setData(`${c}`,!l.value),l.value=!l.value,(m=t.toggle)==null||m.call(t,l.value))})};return()=>{var n,a;return o.slots.default&&(s=e.createVNode("div",{class:"devui-panel-heading",onClick:v,style:{cursor:i.value?"pointer":"auto"}},[(a=(n=o.slots).default)==null?void 0:a.call(n)])),s}}}),C=e.defineComponent({name:"DPanelBody",props:h,setup(t,o){let u=e.inject("showAnimation"),r=e.inject("hasLeftPadding");const l=Object.keys(f.state()).pop(),i=f.state(),s=e.ref();e.onMounted(()=>{if(s.value){const n=s.value;i[l]&&(n.style.height=`${n.offsetHeight}px`)}});const g=n=>{const a=n;a.style.height="";const m=a.offsetHeight;a.style.height="0px",a.offsetHeight,a.style.height=`${m}px`},v=n=>{const a=n;a.style.height="0px"};return()=>e.createVNode("div",{class:`devui-panel devui-panel-${t.type} ${t.cssClass}`},[e.createVNode(e.Transition,{name:u.value?"devui-panel":"",onEnter:g,onLeave:v},{default:()=>{var n,a;return[i[l]===void 0||i[l]?e.createVNode("div",{ref:s,class:`devui-panel-body ${i[l]!==void 0?"devui-panel-body-collapse":""} ${r.value?"":"no-left-padding"}`},[e.createVNode("div",{class:"devui-panel-content"},[(a=(n=o.slots).default)==null?void 0:a.call(n)])]):null]}})])}}),b=e.defineComponent({name:"DPanelFooter",setup(t,o){return()=>{var r,c;return o.slots.default?e.createVNode("div",{class:"devui-panel-footer"},[(c=(r=o.slots).default)==null?void 0:c.call(r)]):null}}});y.install=function(t){t.component(y.name,y),t.component(P.name,P),t.component(C.name,C),t.component(b.name,b)};var T={title:"Panel \u9762\u677F",category:"\u901A\u7528",status:"100%",install(t){t.use(y)}};d.Panel=y,d.default=T,Object.defineProperty(d,"__esModule",{value:!0}),d[Symbol.toStringTag]="Module"});
package/panel/style.css CHANGED
@@ -1 +1 @@
1
- .devui-panel{line-height:1.5;background-color:var(--devui-base-bg, #ffffff)}.devui-panel .devui-panel-heading{padding:12px 20px;color:var(--devui-text, #252b3a)}.devui-panel .devui-panel-heading d-panel-header{line-height:1.5}.devui-panel .no-left-padding.devui-panel-body-collapse:before{display:none}.devui-panel .no-left-padding.devui-panel-body-collapse .devui-panel-content{border-left:none!important}.devui-panel .devui-panel-body{display:flex;position:relative;border-top:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-body .devui-panel-content{line-height:1.5;padding:15px;background:var(--devui-base-bg, #ffffff);flex:1}.devui-panel .devui-panel-body.devui-panel-body-collapse:before{content:"";width:30px;height:100%}.devui-panel .devui-panel-body.devui-panel-body-collapse .devui-panel-content{border-left:2px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-footer{padding:10px 15px;color:var(--devui-text, #252b3a);background-color:var(--devui-area, #f8f8f8)}.devui-panel .devui-panel-footer d-panel-footer{line-height:1.5}.devui-panel.devui-panel-default .devui-panel-heading,.devui-panel.devui-panel-default .devui-panel-body{background-color:var(--devui-default-bg, #f3f6f8)}.devui-panel.devui-panel-primary .devui-panel-heading,.devui-panel.devui-panel-primary .devui-panel-body{background-color:var(--devui-primary-bg, #f2f5fc)}.devui-panel.devui-panel-primary .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-primary-line, #5e7ce0)}.devui-panel.devui-panel-info .devui-panel-heading,.devui-panel.devui-panel-info .devui-panel-body{background-color:var(--devui-info-bg, #f2f5fc)}.devui-panel.devui-panel-info .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-info-line, #5e7ce0)}.devui-panel.devui-panel-success .devui-panel-heading,.devui-panel.devui-panel-success .devui-panel-body{background-color:var(--devui-success-bg, #edfff9)}.devui-panel.devui-panel-success .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-success-line, #50d4ab)}.devui-panel.devui-panel-warning .devui-panel-heading,.devui-panel.devui-panel-warning .devui-panel-body{background-color:var(--devui-warning-bg, #fff3e8)}.devui-panel.devui-panel-warning .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-warning-line, #fa9841)}.devui-panel.devui-panel-danger .devui-panel-heading,.devui-panel.devui-panel-danger .devui-panel-body{background-color:var(--devui-danger-bg, #ffeeed)}.devui-panel.devui-panel-danger .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-danger-line, #f66f6a)}.devui-panel .devui-panel-leave-active{transition:all .3s ease-in-out;animation:panelUpOut .3s ease-in-out;animation-fill-mode:both}.devui-panel .devui-panel-enter-active{transition:all .3s ease-in-out;animation:panelUpIn .3s ease-in-out;animation-fill-mode:both}@keyframes panelUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1}to{transform:scaleY(0);transform-origin:0% 0%;opacity:0}}@keyframes panelUpIn{0%{transform:scaleY(0);transform-origin:0% 0%;opacity:0}to{transform:scaleY(1);transform-origin:0% 0%;opacity:1}}
1
+ .no-left-padding.devui-panel-body-collapse:before{content:none!important}.no-left-padding.devui-panel-body-collapse .devui-panel-content{border-left:none!important}.devui-panel{line-height:1.5;background-color:var(--devui-base-bg, #ffffff)}.devui-panel .devui-panel-heading{padding:12px 20px;color:var(--devui-text, #252b3a)}.devui-panel .devui-panel-heading d-panel-header{line-height:1.5}.devui-panel .devui-panel-body{display:flex;position:relative;border-top:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-body .devui-panel-content{line-height:1.5;padding:15px;background:var(--devui-base-bg, #ffffff);flex:1}.devui-panel .devui-panel-body.devui-panel-body-collapse:before{content:"";width:30px;height:100%}.devui-panel .devui-panel-body.devui-panel-body-collapse .devui-panel-content{border-left:2px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-footer{padding:10px 15px;color:var(--devui-text, #252b3a);background-color:var(--devui-area, #f8f8f8)}.devui-panel .devui-panel-footer d-panel-footer{line-height:1.5}.devui-panel.devui-panel-default .devui-panel-heading,.devui-panel.devui-panel-default .devui-panel-body{background-color:var(--devui-default-bg, #f3f6f8)}.devui-panel.devui-panel-primary .devui-panel-heading,.devui-panel.devui-panel-primary .devui-panel-body{background-color:var(--devui-primary-bg, #f2f5fc)}.devui-panel.devui-panel-primary .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-primary-line, #5e7ce0)}.devui-panel.devui-panel-info .devui-panel-heading,.devui-panel.devui-panel-info .devui-panel-body{background-color:var(--devui-info-bg, #f2f5fc)}.devui-panel.devui-panel-info .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-info-line, #5e7ce0)}.devui-panel.devui-panel-success .devui-panel-heading,.devui-panel.devui-panel-success .devui-panel-body{background-color:var(--devui-success-bg, #edfff9)}.devui-panel.devui-panel-success .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-success-line, #50d4ab)}.devui-panel.devui-panel-warning .devui-panel-heading,.devui-panel.devui-panel-warning .devui-panel-body{background-color:var(--devui-warning-bg, #fff3e8)}.devui-panel.devui-panel-warning .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-warning-line, #fa9841)}.devui-panel.devui-panel-danger .devui-panel-heading,.devui-panel.devui-panel-danger .devui-panel-body{background-color:var(--devui-danger-bg, #ffeeed)}.devui-panel.devui-panel-danger .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-danger-line, #f66f6a)}.devui-panel .devui-panel-leave-active{transition:all .3s ease-in-out;animation:panelUpOut .3s ease-in-out;animation-fill-mode:both}.devui-panel .devui-panel-enter-active{transition:all .3s ease-in-out;animation:panelUpIn .3s ease-in-out;animation-fill-mode:both}@keyframes panelUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1}to{transform:scaleY(0);transform-origin:0% 0%;opacity:0}}@keyframes panelUpIn{0%{transform:scaleY(0);transform-origin:0% 0%;opacity:0}to{transform:scaleY(1);transform-origin:0% 0%;opacity:1}}
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
@@ -14,7 +14,7 @@ var __spreadValues = (a, b) => {
14
14
  }
15
15
  return a;
16
16
  };
17
- import { defineComponent, ref, toRefs, reactive, createVNode, withDirectives, resolveDirective, resolveComponent } from "vue";
17
+ import { defineComponent, ref, toRefs, reactive, watch, createVNode, withDirectives, resolveDirective, resolveComponent } from "vue";
18
18
  var debounce = (callBack, wait) => {
19
19
  let time = null;
20
20
  return () => {
@@ -125,6 +125,10 @@ var Popover = defineComponent({
125
125
  type: Number,
126
126
  default: 1060
127
127
  },
128
+ controlled: {
129
+ type: Boolean,
130
+ default: false
131
+ },
128
132
  popType: {
129
133
  type: String,
130
134
  default: "default"
@@ -165,7 +169,8 @@ var Popover = defineComponent({
165
169
  mouseEnterDelay,
166
170
  mouseLeaveDelay,
167
171
  showAnimation,
168
- popMaxWidth
172
+ popMaxWidth,
173
+ controlled
169
174
  } = toRefs(props);
170
175
  const style = __spreadValues({
171
176
  zIndex: zIndex.value
@@ -179,19 +184,26 @@ var Popover = defineComponent({
179
184
  }
180
185
  visible.value = true;
181
186
  };
182
- const onClick = isClick ? event : null;
187
+ const onClick = isClick && controlled.value ? event : null;
183
188
  const enter = debounce(() => {
184
189
  visible.value = true;
185
190
  }, mouseEnterDelay.value);
186
191
  const leave = debounce(() => {
187
192
  visible.value = false;
188
193
  }, mouseLeaveDelay.value);
189
- const onMouseenter = isClick ? null : enter;
190
- const onMouseleave = isClick ? null : leave;
194
+ const onMouseenter = !isClick && controlled.value ? enter : null;
195
+ const onMouseleave = !isClick && controlled.value ? leave : null;
191
196
  const hiddenContext = () => {
197
+ if (!controlled.value)
198
+ return;
192
199
  visible.value = false;
193
200
  };
194
201
  popMaxWidth.value && (style.maxWidth = `${popMaxWidth.value}px`);
202
+ watch(() => props.visible, (newVal) => {
203
+ if (controlled.value)
204
+ return;
205
+ visible.value = newVal;
206
+ });
195
207
  return () => {
196
208
  var _a, _b;
197
209
  return createVNode("div", {
@@ -225,7 +237,7 @@ Popover.install = function(app) {
225
237
  var index = {
226
238
  title: "Popover \u60AC\u6D6E\u63D0\u793A",
227
239
  category: "\u53CD\u9988",
228
- status: "\u5DF2\u5B8C\u6210",
240
+ status: "100%",
229
241
  install(app) {
230
242
  app.use(Popover);
231
243
  }
@@ -1 +1 @@
1
- var R=Object.defineProperty;var h=Object.getOwnPropertySymbols;var $=Object.prototype.hasOwnProperty,B=Object.prototype.propertyIsEnumerable;var w=(o,t,r)=>t in o?R(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,S=(o,t)=>{for(var r in t||(t={}))$.call(t,r)&&w(o,r,t[r]);if(h)for(var r of h(t))B.call(t,r)&&w(o,r,t[r]);return o};(function(o,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(o=typeof globalThis!="undefined"?globalThis:o||self,t(o.index={},o.Vue))})(this,function(o,t){"use strict";var r=(e,i)=>{let n=null;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e==null||e()},i)}};const T=typeof window!="undefined";function y(e,i,n){document.addEventListener?e&&i&&n&&e.addEventListener(i,n,!1):e&&i&&n&&e.attachEvent("on"+i,n)}const a=Symbol("@@clickoutside"),d=new Map;let g,p=0,b=!0;function D(e,i,n){return T&&b&&(b=!1,y(document,"mousedown",u=>{g=u}),y(document,"mouseup",u=>{for(const[s,f]of d)f[a].documentHandler(u,g)})),function(u,s){!n||!i.instance||!u.target||!s.target||e.contains(u.target)||e.contains(s.target)||e===u.target||e[a].bindingFn&&e[a].bindingFn()}}const V={beforeMount:function(e,i,n){p++,d.set(p,e),e[a]={nid:p,documentHandler:D(e,i,n),bindingFn:i.value}},updated:function(e,i,n){e[a].documentHandler=D(e,i,n),e[a].bindingFn=i.value},unmounted:function(e){d.delete(e[a].nid),delete e[a]}};var G="";const N={success:{name:"right-o",color:"rgb(61, 204, 166)"},error:{name:"error-o",color:"rgb(249, 95, 91)"},info:{name:"info-o",color:"rgb(81, 112, 255)"},warning:{name:"warning-o",color:"rgb(254, 204, 85)"},default:{}};var l=t.defineComponent({name:"DPopover",directives:{clickoutside:V},props:{visible:{type:Boolean,default:!1},position:{type:String,default:"bottom"},content:{type:String,default:"default"},trigger:{type:String,default:"click"},zIndex:{type:Number,default:1060},popType:{type:String,default:"default"},showAnimation:{type:Boolean,default:!0},mouseEnterDelay:{type:Number,default:150},mouseLeaveDelay:{type:Number,default:100},popMaxWidth:{type:Number,default:void 0},popoverStyle:{type:Object,default:()=>({})}},setup(e,i){const{slots:n}=i,u=t.ref(e.visible),{position:s,content:f,zIndex:E,trigger:F,popType:L,popoverStyle:P,mouseEnterDelay:z,mouseLeaveDelay:A,showAnimation:H,popMaxWidth:x}=t.toRefs(e),v=S({zIndex:E.value},P.value),m=F.value==="click",c=t.reactive(N[L.value]),j=m?function(){if(u.value){u.value=!1;return}u.value=!0}:null,I=r(()=>{u.value=!0},z.value),W=r(()=>{u.value=!1},A.value),O=m?null:I,_=m?null:W,q=()=>{u.value=!1};return x.value&&(v.maxWidth=`${x.value}px`),()=>{var C,M;return t.createVNode("div",{class:["devui-popover",s.value,{"devui-popover-animation":H.value,"devui-popover-isVisible":u.value}]},[t.withDirectives(t.createVNode("div",{class:"devui-popover-reference",onMouseenter:O,onMouseleave:_,onClick:j},[(C=n.reference)==null?void 0:C.call(n)]),[[t.resolveDirective("clickoutside"),q]]),t.createVNode("div",{class:["devui-popover-content",c.name?"is-icon":""],style:v},[c.name&&t.createVNode(t.resolveComponent("d-icon"),{name:c.name,color:c.color,class:"devui-popover-icon",size:"16px"},null),((M=n.content)==null?void 0:M.call(n))||t.createVNode("span",null,[f.value]),t.createVNode("span",{class:"after",style:v},null)])])}}});l.install=function(e){e.component(l.name,l)};var k={title:"Popover \u60AC\u6D6E\u63D0\u793A",category:"\u53CD\u9988",status:"\u5DF2\u5B8C\u6210",install(e){e.use(l)}};o.Popover=l,o.default=k,Object.defineProperty(o,"__esModule",{value:!0}),o[Symbol.toStringTag]="Module"});
1
+ var B=Object.defineProperty;var M=Object.getOwnPropertySymbols;var G=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable;var S=(o,t,r)=>t in o?B(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,T=(o,t)=>{for(var r in t||(t={}))G.call(t,r)&&S(o,r,t[r]);if(M)for(var r of M(t))J.call(t,r)&&S(o,r,t[r]);return o};(function(o,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(o=typeof globalThis!="undefined"?globalThis:o||self,t(o.index={},o.Vue))})(this,function(o,t){"use strict";var r=(e,i)=>{let n=null;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e==null||e()},i)}};const V=typeof window!="undefined";function b(e,i,n){document.addEventListener?e&&i&&n&&e.addEventListener(i,n,!1):e&&i&&n&&e.attachEvent("on"+i,n)}const a=Symbol("@@clickoutside"),p=new Map;let x,v=0,D=!0;function h(e,i,n){return V&&D&&(D=!1,b(document,"mousedown",u=>{x=u}),b(document,"mouseup",u=>{for(const[c,m]of p)m[a].documentHandler(u,x)})),function(u,c){!n||!i.instance||!u.target||!c.target||e.contains(u.target)||e.contains(c.target)||e===u.target||e[a].bindingFn&&e[a].bindingFn()}}const N={beforeMount:function(e,i,n){v++,p.set(v,e),e[a]={nid:v,documentHandler:h(e,i,n),bindingFn:i.value}},updated:function(e,i,n){e[a].documentHandler=h(e,i,n),e[a].bindingFn=i.value},unmounted:function(e){p.delete(e[a].nid),delete e[a]}};var K="";const k={success:{name:"right-o",color:"rgb(61, 204, 166)"},error:{name:"error-o",color:"rgb(249, 95, 91)"},info:{name:"info-o",color:"rgb(81, 112, 255)"},warning:{name:"warning-o",color:"rgb(254, 204, 85)"},default:{}};var l=t.defineComponent({name:"DPopover",directives:{clickoutside:N},props:{visible:{type:Boolean,default:!1},position:{type:String,default:"bottom"},content:{type:String,default:"default"},trigger:{type:String,default:"click"},zIndex:{type:Number,default:1060},controlled:{type:Boolean,default:!1},popType:{type:String,default:"default"},showAnimation:{type:Boolean,default:!0},mouseEnterDelay:{type:Number,default:150},mouseLeaveDelay:{type:Number,default:100},popMaxWidth:{type:Number,default:void 0},popoverStyle:{type:Object,default:()=>({})}},setup(e,i){const{slots:n}=i,u=t.ref(e.visible),{position:c,content:m,zIndex:F,trigger:L,popType:P,popoverStyle:z,mouseEnterDelay:A,mouseLeaveDelay:H,showAnimation:j,popMaxWidth:w,controlled:s}=t.toRefs(e),y=T({zIndex:F.value},z.value),g=L.value==="click",d=t.reactive(k[P.value]),I=function(){if(u.value){u.value=!1;return}u.value=!0},W=g&&s.value?I:null,O=r(()=>{u.value=!0},A.value),_=r(()=>{u.value=!1},H.value),q=!g&&s.value?O:null,R=!g&&s.value?_:null,$=()=>{!s.value||(u.value=!1)};return w.value&&(y.maxWidth=`${w.value}px`),t.watch(()=>e.visible,f=>{s.value||(u.value=f)}),()=>{var f,C;return t.createVNode("div",{class:["devui-popover",c.value,{"devui-popover-animation":j.value,"devui-popover-isVisible":u.value}]},[t.withDirectives(t.createVNode("div",{class:"devui-popover-reference",onMouseenter:q,onMouseleave:R,onClick:W},[(f=n.reference)==null?void 0:f.call(n)]),[[t.resolveDirective("clickoutside"),$]]),t.createVNode("div",{class:["devui-popover-content",d.name?"is-icon":""],style:y},[d.name&&t.createVNode(t.resolveComponent("d-icon"),{name:d.name,color:d.color,class:"devui-popover-icon",size:"16px"},null),((C=n.content)==null?void 0:C.call(n))||t.createVNode("span",null,[m.value]),t.createVNode("span",{class:"after",style:y},null)])])}}});l.install=function(e){e.component(l.name,l)};var E={title:"Popover \u60AC\u6D6E\u63D0\u793A",category:"\u53CD\u9988",status:"100%",install(e){e.use(l)}};o.Popover=l,o.default=E,Object.defineProperty(o,"__esModule",{value:!0}),o[Symbol.toStringTag]="Module"});
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
@@ -93,13 +93,13 @@ var Progress = defineComponent({
93
93
  $slots
94
94
  } = this;
95
95
  const progressLine = createVNode("div", {
96
- "className": "devui-progress--line",
96
+ "class": "devui-progress--line",
97
97
  "style": {
98
98
  height,
99
99
  borderRadius: height
100
100
  }
101
101
  }, [createVNode("div", {
102
- "className": "devui-progress-bar",
102
+ "class": "devui-progress-bar",
103
103
  "style": {
104
104
  height,
105
105
  borderRadius: height,
@@ -112,21 +112,21 @@ var Progress = defineComponent({
112
112
  }
113
113
  }, [percentageText])]);
114
114
  const textElement = createVNode("span", {
115
- "className": "devui-progress-circle-text"
115
+ "class": "devui-progress-circle-text"
116
116
  }, [percentage, createTextVNode("%")]);
117
117
  const progressCircle = createVNode("div", {
118
- "className": "devui-progress-circle"
118
+ "class": "devui-progress-circle"
119
119
  }, [createVNode("svg", {
120
- "className": "devui-progress-circle",
120
+ "class": "devui-progress-circle",
121
121
  "viewBox": "0 0 100 100"
122
122
  }, [createVNode("path", {
123
- "className": "devui-progress-circle-trail",
123
+ "class": "devui-progress-circle-trail",
124
124
  "fill-opacity": "0",
125
125
  "stroke-width": strokeWidth,
126
126
  "style": data.trailPath,
127
127
  "d": data.pathString
128
128
  }, null), createVNode("path", {
129
- "className": "devui-progress-circle-path",
129
+ "class": "devui-progress-circle-path",
130
130
  "d": data.pathString,
131
131
  "stroke-linecap": "round",
132
132
  "fill-opacity": "0",
@@ -135,7 +135,7 @@ var Progress = defineComponent({
135
135
  "style": data.strokePath
136
136
  }, null)]), showContent && ((_a = $slots.default) == null ? void 0 : _a.call($slots)), showContent && !$slots.default && textElement]);
137
137
  return createVNode("div", {
138
- "className": "devui-progress"
138
+ "class": "devui-progress"
139
139
  }, [!isCircle ? progressLine : progressCircle]);
140
140
  }
141
141
  });
@@ -145,7 +145,7 @@ Progress.install = function(app) {
145
145
  var index = {
146
146
  title: "Progress \u8FDB\u5EA6\u6761",
147
147
  category: "\u6570\u636E\u5C55\u793A",
148
- status: "\u5DF2\u5B8C\u6210",
148
+ status: "100%",
149
149
  install(app) {
150
150
  app.use(Progress);
151
151
  }
@@ -1,3 +1,3 @@
1
- (function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s.index={},s.Vue))})(this,function(s,e){"use strict";var N="",i=e.defineComponent({name:"DProgress",props:{height:{type:String,default:"20px"},percentage:{type:Number,default:0},percentageText:{type:String,default:""},barBgColor:{type:String,default:"#5170ff"},isCircle:{type:Boolean,default:!1},strokeWidth:{type:Number,default:6},showContent:{type:Boolean,default:!0}},setup(t){const{height:n,percentage:u,percentageText:p,barBgColor:h,isCircle:l,strokeWidth:d,showContent:o}=e.toRefs(t),r=e.reactive({pathString:"",trailPath:null,strokePath:null}),g=()=>{if(!l)return;const a=50-d.value/2,k=-a,c=a*-2;r.pathString=`M 50,50 m 0,${k}
2
- a ${a},${a} 0 1 1 0,${-c}
3
- a ${a},${a} 0 1 1 0,${c}`;const f=Math.PI*2*a;r.trailPath={stroke:"#dfe1e6",strokeDasharray:`${f}px ${f}px`,strokeDashoffset:"0",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s"},r.strokePath={stroke:h||null,strokeDasharray:`${u.value/100*f}px ${f}px`,strokeDashoffset:"0",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"}};return g(),e.watch([n,u,p,h,l,d,o],()=>{g()}),{data:r}},render(){var c;const{height:t,percentage:n,percentageText:u,barBgColor:p,isCircle:h,strokeWidth:l,showContent:d,data:o,$slots:r}=this,g=e.createVNode("div",{className:"devui-progress--line",style:{height:t,borderRadius:t}},[e.createVNode("div",{className:"devui-progress-bar",style:{height:t,borderRadius:t,width:`${n}%`,backgroundColor:p}},null),e.createVNode("span",{style:{lineHeight:t}},[u])]),a=e.createVNode("span",{className:"devui-progress-circle-text"},[n,e.createTextVNode("%")]),k=e.createVNode("div",{className:"devui-progress-circle"},[e.createVNode("svg",{className:"devui-progress-circle",viewBox:"0 0 100 100"},[e.createVNode("path",{className:"devui-progress-circle-trail","fill-opacity":"0","stroke-width":l,style:o.trailPath,d:o.pathString},null),e.createVNode("path",{className:"devui-progress-circle-path",d:o.pathString,"stroke-linecap":"round","fill-opacity":"0",stroke:p,"stroke-width":n?l:0,style:o.strokePath},null)]),d&&((c=r.default)==null?void 0:c.call(r)),d&&!r.default&&a]);return e.createVNode("div",{className:"devui-progress"},[h?k:g])}});i.install=function(t){t.component(i.name,i)};var y={title:"Progress \u8FDB\u5EA6\u6761",category:"\u6570\u636E\u5C55\u793A",status:"\u5DF2\u5B8C\u6210",install(t){t.use(i)}};s.Progress=i,s.default=y,Object.defineProperty(s,"__esModule",{value:!0}),s[Symbol.toStringTag]="Module"});
1
+ (function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s.index={},s.Vue))})(this,function(s,e){"use strict";var P="",i=e.defineComponent({name:"DProgress",props:{height:{type:String,default:"20px"},percentage:{type:Number,default:0},percentageText:{type:String,default:""},barBgColor:{type:String,default:"#5170ff"},isCircle:{type:Boolean,default:!1},strokeWidth:{type:Number,default:6},showContent:{type:Boolean,default:!0}},setup(t){const{height:n,percentage:p,percentageText:u,barBgColor:h,isCircle:l,strokeWidth:d,showContent:a}=e.toRefs(t),r=e.reactive({pathString:"",trailPath:null,strokePath:null}),g=()=>{if(!l)return;const o=50-d.value/2,k=-o,c=o*-2;r.pathString=`M 50,50 m 0,${k}
2
+ a ${o},${o} 0 1 1 0,${-c}
3
+ a ${o},${o} 0 1 1 0,${c}`;const f=Math.PI*2*o;r.trailPath={stroke:"#dfe1e6",strokeDasharray:`${f}px ${f}px`,strokeDashoffset:"0",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s"},r.strokePath={stroke:h||null,strokeDasharray:`${p.value/100*f}px ${f}px`,strokeDashoffset:"0",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"}};return g(),e.watch([n,p,u,h,l,d,a],()=>{g()}),{data:r}},render(){var c;const{height:t,percentage:n,percentageText:p,barBgColor:u,isCircle:h,strokeWidth:l,showContent:d,data:a,$slots:r}=this,g=e.createVNode("div",{class:"devui-progress--line",style:{height:t,borderRadius:t}},[e.createVNode("div",{class:"devui-progress-bar",style:{height:t,borderRadius:t,width:`${n}%`,backgroundColor:u}},null),e.createVNode("span",{style:{lineHeight:t}},[p])]),o=e.createVNode("span",{class:"devui-progress-circle-text"},[n,e.createTextVNode("%")]),k=e.createVNode("div",{class:"devui-progress-circle"},[e.createVNode("svg",{class:"devui-progress-circle",viewBox:"0 0 100 100"},[e.createVNode("path",{class:"devui-progress-circle-trail","fill-opacity":"0","stroke-width":l,style:a.trailPath,d:a.pathString},null),e.createVNode("path",{class:"devui-progress-circle-path",d:a.pathString,"stroke-linecap":"round","fill-opacity":"0",stroke:u,"stroke-width":n?l:0,style:a.strokePath},null)]),d&&((c=r.default)==null?void 0:c.call(r)),d&&!r.default&&o]);return e.createVNode("div",{class:"devui-progress"},[h?k:g])}});i.install=function(t){t.component(i.name,i)};var y={title:"Progress \u8FDB\u5EA6\u6761",category:"\u6570\u636E\u5C55\u793A",status:"100%",install(t){t.use(i)}};s.Progress=i,s.default=y,Object.defineProperty(s,"__esModule",{value:!0}),s[Symbol.toStringTag]="Module"});
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
package/radio/index.es.js CHANGED
@@ -48,7 +48,7 @@ const radioGroupProps = __spreadProps(__spreadValues({}, radioCommonProps), {
48
48
  type: Array,
49
49
  default: null
50
50
  },
51
- cssStyle: {
51
+ direction: {
52
52
  type: String,
53
53
  default: "column"
54
54
  }
@@ -179,8 +179,8 @@ var RadioGroup = defineComponent({
179
179
  },
180
180
  render() {
181
181
  const {
182
- cssStyle,
183
- values
182
+ values,
183
+ direction
184
184
  } = this;
185
185
  const getContent = () => {
186
186
  const defaultSlot = this.$slots.default;
@@ -201,8 +201,8 @@ var RadioGroup = defineComponent({
201
201
  };
202
202
  return createVNode("div", {
203
203
  "class": ["devui-radio-group", {
204
- "is-row": cssStyle === "row",
205
- "is-column": cssStyle === "column"
204
+ "is-row": direction === "row",
205
+ "is-column": direction === "column"
206
206
  }]
207
207
  }, [getContent()]);
208
208
  }
@@ -216,7 +216,7 @@ RadioGroup.install = function(app) {
216
216
  var index = {
217
217
  title: "Radio \u5355\u9009\u6846",
218
218
  category: "\u6570\u636E\u5F55\u5165",
219
- status: "\u5DF2\u5B8C\u6210",
219
+ status: "100%",
220
220
  install(app) {
221
221
  app.use(Radio);
222
222
  app.use(RadioGroup);
@@ -1 +1 @@
1
- var w=Object.defineProperty,j=Object.defineProperties;var D=Object.getOwnPropertyDescriptors;var C=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable;var V=(n,e,o)=>e in n?w(n,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[e]=o,p=(n,e)=>{for(var o in e||(e={}))P.call(e,o)&&V(n,o,e[o]);if(C)for(var o of C(e))k.call(e,o)&&V(n,o,e[o]);return n},y=(n,e)=>j(n,D(e));(function(n,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(n=typeof globalThis!="undefined"?globalThis:n||self,e(n.index={},n.Vue))})(this,function(n,e){"use strict";const o={modelValue:{type:String,default:null},name:{type:String,default:null},beforeChange:{type:Function,default:null},disabled:{type:Boolean,default:!1}},v=y(p({},o),{value:{type:String,required:!0,default:null}}),N=y(p({},o),{values:{type:Array,default:null},cssStyle:{type:String,default:"column"}}),b=Symbol("DRadioGroup");var x="",s=e.defineComponent({name:"DRadio",props:v,emits:["change","update:modelValue"],setup(a,{emit:d}){const t=e.inject(b,null),r=e.computed(()=>a.disabled||(t==null?void 0:t.disabled.value)),l=e.computed(()=>{const i=t?t.modelValue.value:a.modelValue;return a.value===i}),h=e.computed(()=>t?t.name.value:a.name),g=i=>{const u=a.beforeChange||(t?t.beforeChange:null);let f=Promise.resolve(!0);if(u){const m=u(i);if(typeof m=="undefined")return f;typeof m=="boolean"?f=Promise.resolve(m):f=m}return f};return{isChecked:l,radioName:h,disabled:r,handleChange:async i=>{const u=a.value;if(!await g(u)){i.preventDefault();return}t==null||t.emitChange(u),d("update:modelValue",u),d("change",u)}}},render(){var i;const{disabled:a,radioName:d,value:t,isChecked:r,$slots:l,handleChange:h}=this,g=["devui-radio",{active:r,disabled:a}];return e.createVNode("label",{class:g},[e.createVNode("input",{type:"radio",name:d,class:"devui-radio-input",disabled:a,onChange:h,value:t,checked:r},null),e.createVNode("span",{class:"devui-radio-material"},[e.createVNode("svg",{height:"100%",width:"100%",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},[e.createVNode("circle",{class:"devui-radio-material-outer",cx:"512",cy:"512",r:"486.5","stroke-width":"51"},null),e.createVNode("circle",{class:"devui-radio-material-inner",cx:"512","fill-rule":"nonzero",cy:"512",r:"320"},null)])]),e.createVNode("span",{class:"devui-radio-label"},[(i=l.default)==null?void 0:i.call(l)])])}}),_="";function S(a){return typeof a=="function"||Object.prototype.toString.call(a)==="[object Object]"&&!e.isVNode(a)}var c=e.defineComponent({name:"DRadioGroup",props:N,emits:["change","update:modelValue"],setup(a,{emit:d}){const t=r=>{d("update:modelValue",r),d("change",r)};e.provide(b,{modelValue:e.toRef(a,"modelValue"),name:e.toRef(a,"name"),disabled:e.toRef(a,"disabled"),beforeChange:a.beforeChange,emitChange:t})},render(){const{cssStyle:a,values:d}=this,t=()=>{const r=this.$slots.default;return r?r():Array.isArray(d)?d.map(l=>e.createVNode(s,{key:l,value:l},S(l)?l:{default:()=>[l]})):""};return e.createVNode("div",{class:["devui-radio-group",{"is-row":a==="row","is-column":a==="column"}]},[t()])}});s.install=function(a){a.component(s.name,s)},c.install=function(a){a.component(c.name,c)};var R={title:"Radio \u5355\u9009\u6846",category:"\u6570\u636E\u5F55\u5165",status:"\u5DF2\u5B8C\u6210",install(a){a.use(s),a.use(c)}};n.Radio=s,n.RadioGroup=c,n.default=R,Object.defineProperty(n,"__esModule",{value:!0}),n[Symbol.toStringTag]="Module"});
1
+ var S=Object.defineProperty,j=Object.defineProperties;var P=Object.getOwnPropertyDescriptors;var C=Object.getOwnPropertySymbols;var k=Object.prototype.hasOwnProperty,x=Object.prototype.propertyIsEnumerable;var V=(n,e,o)=>e in n?S(n,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[e]=o,p=(n,e)=>{for(var o in e||(e={}))k.call(e,o)&&V(n,o,e[o]);if(C)for(var o of C(e))x.call(e,o)&&V(n,o,e[o]);return n},y=(n,e)=>j(n,P(e));(function(n,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(n=typeof globalThis!="undefined"?globalThis:n||self,e(n.index={},n.Vue))})(this,function(n,e){"use strict";const o={modelValue:{type:String,default:null},name:{type:String,default:null},beforeChange:{type:Function,default:null},disabled:{type:Boolean,default:!1}},v=y(p({},o),{value:{type:String,required:!0,default:null}}),N=y(p({},o),{values:{type:Array,default:null},direction:{type:String,default:"column"}}),b=Symbol("DRadioGroup");var D="",s=e.defineComponent({name:"DRadio",props:v,emits:["change","update:modelValue"],setup(a,{emit:d}){const t=e.inject(b,null),i=e.computed(()=>a.disabled||(t==null?void 0:t.disabled.value)),l=e.computed(()=>{const r=t?t.modelValue.value:a.modelValue;return a.value===r}),h=e.computed(()=>t?t.name.value:a.name),g=r=>{const u=a.beforeChange||(t?t.beforeChange:null);let f=Promise.resolve(!0);if(u){const m=u(r);if(typeof m=="undefined")return f;typeof m=="boolean"?f=Promise.resolve(m):f=m}return f};return{isChecked:l,radioName:h,disabled:i,handleChange:async r=>{const u=a.value;if(!await g(u)){r.preventDefault();return}t==null||t.emitChange(u),d("update:modelValue",u),d("change",u)}}},render(){var r;const{disabled:a,radioName:d,value:t,isChecked:i,$slots:l,handleChange:h}=this,g=["devui-radio",{active:i,disabled:a}];return e.createVNode("label",{class:g},[e.createVNode("input",{type:"radio",name:d,class:"devui-radio-input",disabled:a,onChange:h,value:t,checked:i},null),e.createVNode("span",{class:"devui-radio-material"},[e.createVNode("svg",{height:"100%",width:"100%",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},[e.createVNode("circle",{class:"devui-radio-material-outer",cx:"512",cy:"512",r:"486.5","stroke-width":"51"},null),e.createVNode("circle",{class:"devui-radio-material-inner",cx:"512","fill-rule":"nonzero",cy:"512",r:"320"},null)])]),e.createVNode("span",{class:"devui-radio-label"},[(r=l.default)==null?void 0:r.call(l)])])}}),_="";function R(a){return typeof a=="function"||Object.prototype.toString.call(a)==="[object Object]"&&!e.isVNode(a)}var c=e.defineComponent({name:"DRadioGroup",props:N,emits:["change","update:modelValue"],setup(a,{emit:d}){const t=i=>{d("update:modelValue",i),d("change",i)};e.provide(b,{modelValue:e.toRef(a,"modelValue"),name:e.toRef(a,"name"),disabled:e.toRef(a,"disabled"),beforeChange:a.beforeChange,emitChange:t})},render(){const{values:a,direction:d}=this,t=()=>{const i=this.$slots.default;return i?i():Array.isArray(a)?a.map(l=>e.createVNode(s,{key:l,value:l},R(l)?l:{default:()=>[l]})):""};return e.createVNode("div",{class:["devui-radio-group",{"is-row":d==="row","is-column":d==="column"}]},[t()])}});s.install=function(a){a.component(s.name,s)},c.install=function(a){a.component(c.name,c)};var w={title:"Radio \u5355\u9009\u6846",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(a){a.use(s),a.use(c)}};n.Radio=s,n.RadioGroup=c,n.default=w,Object.defineProperty(n,"__esModule",{value:!0}),n[Symbol.toStringTag]="Module"});
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;
package/rate/index.es.js CHANGED
@@ -212,7 +212,7 @@ Rate.install = function(app) {
212
212
  var index = {
213
213
  title: "Rate \u8BC4\u5206",
214
214
  category: "\u6570\u636E\u5C55\u793A",
215
- status: "\u5DF2\u5B8C\u6210",
215
+ status: "100%",
216
216
  install(app) {
217
217
  app.use(Rate);
218
218
  }
package/rate/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(i,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(i=typeof globalThis!="undefined"?globalThis:i||self,t(i.index={},i.Vue))})(this,function(i,t){"use strict";const g={modelValue:{type:Number},read:{type:Boolean,default:!1},count:{type:Number,default:5},type:{type:String,default:""},color:{type:String,default:""},icon:{type:String,default:""},character:{type:String,default:""},allowHalf:{type:Boolean,default:!1},onChange:{type:Function,default:void 0},onTouched:{type:Function,default:void 0}};var V="",d=t.defineComponent({name:"DRate",props:g,emits:["change","update:modelValue"],setup(o,h){const r=t.reactive([]),a=t.ref(0),l=(n,e,c)=>{for(let s=n;s<e;s++)r[s].width=c},u=()=>{if(!o.modelValue)return;a.value=o.modelValue-1;const n=a.value%1,e=Math.floor(a.value);l(0,e+1,"100%"),n>0?(r[e+1].width=n*100+"%",l(e+2,o.count,"0")):l(e+1,o.count,"0")};return t.onMounted(()=>{for(let n=0;n<o.count;n++)r.push({width:"0"});u()}),{totalLevelArray:r,chooseValue:a,hoverToggle:(n,e,c=!1)=>{o.read||(c?a.value>=0?(l(0,a.value+1,"100%"),l(a.value+1,o.count,"0")):l(0,o.count,"0"):(l(0,e+1,"100%"),o.allowHalf&&n.offsetX*2<=n.target.clientWidth?l(e,e+1,"50%"):l(e,e+1,"100%"),l(e+1,o.count,"0")))},selectValue:(n,e)=>{o.read||(l(0,e,"100%"),o.allowHalf&&n.offsetX*2<=n.target.clientWidth?(l(e,e+1,"50%"),a.value=e-.5):(l(e,e+1,"100%"),a.value=e),l(e+1,o.count,"0"),e=a.value,o.onChange&&o.onChange(e+1),o.onTouched&&o.onTouched(),h.emit("update:modelValue",e+1))}}},render(){const{totalLevelArray:o,chooseValue:h,icon:r,character:a,read:l,type:u,color:f,hoverToggle:v,selectValue:n}=this;return t.createVNode("div",{class:"devui-star-container",onMouseleave:e=>v(e,h,!0)},[o.map((e,c)=>t.createVNode("div",{class:`devui-star-align devui-pointer ${l?"devui-only-read":""}`,key:c,onMouseover:s=>v(s,c),onClick:s=>n(s,c)},[r&&!a&&t.createVNode("span",{class:"devui-star-color"},[t.createVNode(t.resolveComponent("d-icon"),{name:r},null)]),a&&!r&&t.createVNode("span",{class:"devui-star-color"},[a]),!r&&!a&&t.createVNode("span",{class:"devui-star-color"},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns-xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",{fill:"#E3E5E9",id:"Mask"},[t.createVNode("polygon",{points:"8 12.7603585 3.67376208 14.3147912 3.81523437 9.71994835 1 6.0857977 5.41367261 4.80046131 8 1 10.5863274 4.80046131 15 6.0857977 12.1847656 9.71994835 12.3262379 14.3147912"},null)])])])]),r&&!a&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{width:e.width}},[t.createVNode(t.resolveComponent("d-icon"),{name:r,color:f},null)]),a&&!r&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{color:f,width:e.width}},[a]),!a&&!r&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{color:f,width:e.width}},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns-xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",{id:"Mask"},[t.createVNode("polygon",{points:"8 12.7603585 3.67376208 14.3147912 3.81523437 9.71994835 1 6.0857977 5.41367261 4.80046131 8 1 10.5863274 4.80046131 15 6.0857977 12.1847656 9.71994835 12.3262379 14.3147912"},null)])])])])]))])}});d.install=function(o){o.component(d.name,d)};var w={title:"Rate \u8BC4\u5206",category:"\u6570\u636E\u5C55\u793A",status:"\u5DF2\u5B8C\u6210",install(o){o.use(d)}};i.Rate=d,i.default=w,Object.defineProperty(i,"__esModule",{value:!0}),i[Symbol.toStringTag]="Module"});
1
+ (function(i,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(i=typeof globalThis!="undefined"?globalThis:i||self,t(i.index={},i.Vue))})(this,function(i,t){"use strict";const g={modelValue:{type:Number},read:{type:Boolean,default:!1},count:{type:Number,default:5},type:{type:String,default:""},color:{type:String,default:""},icon:{type:String,default:""},character:{type:String,default:""},allowHalf:{type:Boolean,default:!1},onChange:{type:Function,default:void 0},onTouched:{type:Function,default:void 0}};var V="",d=t.defineComponent({name:"DRate",props:g,emits:["change","update:modelValue"],setup(o,h){const r=t.reactive([]),a=t.ref(0),l=(n,e,c)=>{for(let s=n;s<e;s++)r[s].width=c},u=()=>{if(!o.modelValue)return;a.value=o.modelValue-1;const n=a.value%1,e=Math.floor(a.value);l(0,e+1,"100%"),n>0?(r[e+1].width=n*100+"%",l(e+2,o.count,"0")):l(e+1,o.count,"0")};return t.onMounted(()=>{for(let n=0;n<o.count;n++)r.push({width:"0"});u()}),{totalLevelArray:r,chooseValue:a,hoverToggle:(n,e,c=!1)=>{o.read||(c?a.value>=0?(l(0,a.value+1,"100%"),l(a.value+1,o.count,"0")):l(0,o.count,"0"):(l(0,e+1,"100%"),o.allowHalf&&n.offsetX*2<=n.target.clientWidth?l(e,e+1,"50%"):l(e,e+1,"100%"),l(e+1,o.count,"0")))},selectValue:(n,e)=>{o.read||(l(0,e,"100%"),o.allowHalf&&n.offsetX*2<=n.target.clientWidth?(l(e,e+1,"50%"),a.value=e-.5):(l(e,e+1,"100%"),a.value=e),l(e+1,o.count,"0"),e=a.value,o.onChange&&o.onChange(e+1),o.onTouched&&o.onTouched(),h.emit("update:modelValue",e+1))}}},render(){const{totalLevelArray:o,chooseValue:h,icon:r,character:a,read:l,type:u,color:f,hoverToggle:v,selectValue:n}=this;return t.createVNode("div",{class:"devui-star-container",onMouseleave:e=>v(e,h,!0)},[o.map((e,c)=>t.createVNode("div",{class:`devui-star-align devui-pointer ${l?"devui-only-read":""}`,key:c,onMouseover:s=>v(s,c),onClick:s=>n(s,c)},[r&&!a&&t.createVNode("span",{class:"devui-star-color"},[t.createVNode(t.resolveComponent("d-icon"),{name:r},null)]),a&&!r&&t.createVNode("span",{class:"devui-star-color"},[a]),!r&&!a&&t.createVNode("span",{class:"devui-star-color"},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns-xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",{fill:"#E3E5E9",id:"Mask"},[t.createVNode("polygon",{points:"8 12.7603585 3.67376208 14.3147912 3.81523437 9.71994835 1 6.0857977 5.41367261 4.80046131 8 1 10.5863274 4.80046131 15 6.0857977 12.1847656 9.71994835 12.3262379 14.3147912"},null)])])])]),r&&!a&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{width:e.width}},[t.createVNode(t.resolveComponent("d-icon"),{name:r,color:f},null)]),a&&!r&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{color:f,width:e.width}},[a]),!a&&!r&&t.createVNode("span",{class:`devui-star-color-active devui-active-star devui-star-color-${u}`,style:{color:f,width:e.width}},[t.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns-xlink":"http://www.w3.org/1999/xlink"},[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("g",{id:"Mask"},[t.createVNode("polygon",{points:"8 12.7603585 3.67376208 14.3147912 3.81523437 9.71994835 1 6.0857977 5.41367261 4.80046131 8 1 10.5863274 4.80046131 15 6.0857977 12.1847656 9.71994835 12.3262379 14.3147912"},null)])])])])]))])}});d.install=function(o){o.component(d.name,d)};var w={title:"Rate \u8BC4\u5206",category:"\u6570\u636E\u5C55\u793A",status:"100%",install(o){o.use(d)}};i.Rate=d,i.default=w,Object.defineProperty(i,"__esModule",{value:!0}),i[Symbol.toStringTag]="Module"});
@@ -0,0 +1,7 @@
1
+ import { App } from 'vue';
2
+ declare function install(app: App): void
3
+ declare const _default: {
4
+ install: typeof install;
5
+ version: string;
6
+ };
7
+ export default _default;