element-ps 1.0.14 → 1.0.15

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 (230) hide show
  1. package/dist/index.full.js +141 -124
  2. package/dist/index.full.min.js +4 -4
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +4 -4
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +140 -125
  7. package/es/components/descriptions/index.d.ts +14 -2
  8. package/es/components/descriptions/src/description-item.d.ts +7 -1
  9. package/es/components/descriptions/src/descriptions.type.d.ts +1 -0
  10. package/es/components/input-number/index.d.ts +2 -0
  11. package/es/components/input-number/src/input-number.vue.d.ts +2 -0
  12. package/es/components/rate/index.d.ts +75 -246
  13. package/es/components/rate/src/rate.d.ts +26 -0
  14. package/es/components/rate/src/rate.vue.d.ts +108 -0
  15. package/es/index.mjs +12 -11
  16. package/es/index.mjs.map +1 -1
  17. package/es/packages/components/alert/index.mjs +2 -2
  18. package/es/packages/components/alert/src/alert.mjs +5 -34
  19. package/es/packages/components/alert/src/alert.mjs.map +1 -1
  20. package/es/packages/components/alert/src/alert.vue_vue&type=script&lang.mjs +1 -1
  21. package/es/packages/components/alert/src/alert2.mjs +34 -5
  22. package/es/packages/components/alert/src/alert2.mjs.map +1 -1
  23. package/es/packages/components/avatar/index.mjs +2 -2
  24. package/es/packages/components/avatar/src/avatar.mjs +5 -29
  25. package/es/packages/components/avatar/src/avatar.mjs.map +1 -1
  26. package/es/packages/components/avatar/src/avatar.vue_vue&type=script&lang.mjs +1 -1
  27. package/es/packages/components/avatar/src/avatar2.mjs +29 -5
  28. package/es/packages/components/avatar/src/avatar2.mjs.map +1 -1
  29. package/es/packages/components/backtop/index.mjs +2 -2
  30. package/es/packages/components/backtop/src/backtop.mjs +5 -19
  31. package/es/packages/components/backtop/src/backtop.mjs.map +1 -1
  32. package/es/packages/components/backtop/src/backtop.vue_vue&type=script&lang.mjs +1 -1
  33. package/es/packages/components/backtop/src/backtop2.mjs +19 -5
  34. package/es/packages/components/backtop/src/backtop2.mjs.map +1 -1
  35. package/es/packages/components/breadcrumb/index.mjs +2 -2
  36. package/es/packages/components/breadcrumb/src/breadcrumb.mjs +13 -5
  37. package/es/packages/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  38. package/es/packages/components/breadcrumb/src/breadcrumb.vue_vue&type=script&lang.mjs +1 -1
  39. package/es/packages/components/breadcrumb/src/breadcrumb2.mjs +5 -13
  40. package/es/packages/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  41. package/es/packages/components/button/index.mjs +1 -1
  42. package/es/packages/components/button/src/button-group.mjs +5 -7
  43. package/es/packages/components/button/src/button-group.mjs.map +1 -1
  44. package/es/packages/components/button/src/button-group.vue_vue&type=script&lang.mjs +1 -1
  45. package/es/packages/components/button/src/button-group2.mjs +7 -5
  46. package/es/packages/components/button/src/button-group2.mjs.map +1 -1
  47. package/es/packages/components/card/index.mjs +2 -2
  48. package/es/packages/components/card/src/card.mjs +17 -5
  49. package/es/packages/components/card/src/card.mjs.map +1 -1
  50. package/es/packages/components/card/src/card.vue_vue&type=script&lang.mjs +1 -1
  51. package/es/packages/components/card/src/card2.mjs +5 -17
  52. package/es/packages/components/card/src/card2.mjs.map +1 -1
  53. package/es/packages/components/cascader/src/index.vue_vue&type=script&lang.mjs.map +1 -1
  54. package/es/packages/components/cascader/src/index.vue_vue&type=template&id=0429c2db&lang.mjs +8 -6
  55. package/es/packages/components/cascader/src/index.vue_vue&type=template&id=0429c2db&lang.mjs.map +1 -1
  56. package/es/packages/components/descriptions/src/description-item.mjs +3 -0
  57. package/es/packages/components/descriptions/src/description-item.mjs.map +1 -1
  58. package/es/packages/components/descriptions/src/descriptions-cell.mjs +2 -1
  59. package/es/packages/components/descriptions/src/descriptions-cell.mjs.map +1 -1
  60. package/es/packages/components/divider/index.mjs +2 -2
  61. package/es/packages/components/divider/src/divider.mjs +15 -5
  62. package/es/packages/components/divider/src/divider.mjs.map +1 -1
  63. package/es/packages/components/divider/src/divider.vue_vue&type=script&lang.mjs +1 -1
  64. package/es/packages/components/divider/src/divider2.mjs +5 -15
  65. package/es/packages/components/divider/src/divider2.mjs.map +1 -1
  66. package/es/packages/components/image/index.mjs +2 -2
  67. package/es/packages/components/image/src/image.mjs +44 -5
  68. package/es/packages/components/image/src/image.mjs.map +1 -1
  69. package/es/packages/components/image/src/image.vue_vue&type=script&lang.mjs +1 -1
  70. package/es/packages/components/image/src/image2.mjs +5 -44
  71. package/es/packages/components/image/src/image2.mjs.map +1 -1
  72. package/es/packages/components/image-viewer/index.mjs +2 -2
  73. package/es/packages/components/image-viewer/src/image-viewer.mjs +5 -25
  74. package/es/packages/components/image-viewer/src/image-viewer.mjs.map +1 -1
  75. package/es/packages/components/image-viewer/src/image-viewer.vue_vue&type=script&lang.mjs +1 -1
  76. package/es/packages/components/image-viewer/src/image-viewer2.mjs +25 -5
  77. package/es/packages/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  78. package/es/packages/components/index.mjs +12 -11
  79. package/es/packages/components/index.mjs.map +1 -1
  80. package/es/packages/components/input/index.mjs +2 -2
  81. package/es/packages/components/input/src/input.mjs +79 -5
  82. package/es/packages/components/input/src/input.mjs.map +1 -1
  83. package/es/packages/components/input/src/input.vue_vue&type=script&lang.mjs +1 -1
  84. package/es/packages/components/input/src/input2.mjs +5 -79
  85. package/es/packages/components/input/src/input2.mjs.map +1 -1
  86. package/es/packages/components/input-number/src/input-number.vue_vue&type=script&lang.mjs +4 -2
  87. package/es/packages/components/input-number/src/input-number.vue_vue&type=script&lang.mjs.map +1 -1
  88. package/es/packages/components/input-number/src/input-number.vue_vue&type=template&id=dec60af6&lang.mjs.map +1 -1
  89. package/es/packages/components/menu/index.mjs +4 -4
  90. package/es/packages/components/menu/src/menu-item-group.mjs +4 -5
  91. package/es/packages/components/menu/src/menu-item-group.mjs.map +1 -1
  92. package/es/packages/components/menu/src/menu-item-group.vue_vue&type=script&lang.mjs +1 -1
  93. package/es/packages/components/menu/src/menu-item-group2.mjs +5 -4
  94. package/es/packages/components/menu/src/menu-item-group2.mjs.map +1 -1
  95. package/es/packages/components/menu/src/menu-item.mjs +18 -5
  96. package/es/packages/components/menu/src/menu-item.mjs.map +1 -1
  97. package/es/packages/components/menu/src/menu-item.vue_vue&type=script&lang.mjs +1 -1
  98. package/es/packages/components/menu/src/menu-item2.mjs +5 -18
  99. package/es/packages/components/menu/src/menu-item2.mjs.map +1 -1
  100. package/es/packages/components/rate/index.mjs +6 -8
  101. package/es/packages/components/rate/index.mjs.map +1 -1
  102. package/es/packages/components/rate/src/rate.mjs +87 -0
  103. package/es/packages/components/rate/src/rate.mjs.map +1 -0
  104. package/es/packages/components/rate/src/{index.vue_vue&type=script&lang.mjs → rate.vue_vue&type=script&lang.mjs} +19 -88
  105. package/es/packages/components/rate/src/rate.vue_vue&type=script&lang.mjs.map +1 -0
  106. package/es/packages/components/rate/src/{index.vue_vue&type=template&id=55b4fa7d&lang.mjs → rate.vue_vue&type=template&id=38c42df6&lang.mjs} +1 -1
  107. package/es/packages/components/rate/src/rate.vue_vue&type=template&id=38c42df6&lang.mjs.map +1 -0
  108. package/es/packages/components/rate/src/rate2.mjs +7 -0
  109. package/es/packages/components/rate/src/rate2.mjs.map +1 -0
  110. package/es/version.d.ts +1 -1
  111. package/es/version.mjs +1 -1
  112. package/es/version.mjs.map +1 -1
  113. package/lib/components/descriptions/index.d.ts +14 -2
  114. package/lib/components/descriptions/src/description-item.d.ts +7 -1
  115. package/lib/components/descriptions/src/descriptions.type.d.ts +1 -0
  116. package/lib/components/input-number/index.d.ts +2 -0
  117. package/lib/components/input-number/src/input-number.vue.d.ts +2 -0
  118. package/lib/components/rate/index.d.ts +75 -246
  119. package/lib/components/rate/src/rate.d.ts +26 -0
  120. package/lib/components/rate/src/rate.vue.d.ts +108 -0
  121. package/lib/index.js +14 -11
  122. package/lib/index.js.map +1 -1
  123. package/lib/packages/components/alert/index.js +2 -2
  124. package/lib/packages/components/alert/src/alert.js +5 -33
  125. package/lib/packages/components/alert/src/alert.js.map +1 -1
  126. package/lib/packages/components/alert/src/alert.vue_vue&type=script&lang.js +1 -1
  127. package/lib/packages/components/alert/src/alert2.js +33 -5
  128. package/lib/packages/components/alert/src/alert2.js.map +1 -1
  129. package/lib/packages/components/avatar/index.js +2 -2
  130. package/lib/packages/components/avatar/src/avatar.js +5 -28
  131. package/lib/packages/components/avatar/src/avatar.js.map +1 -1
  132. package/lib/packages/components/avatar/src/avatar.vue_vue&type=script&lang.js +1 -1
  133. package/lib/packages/components/avatar/src/avatar2.js +28 -5
  134. package/lib/packages/components/avatar/src/avatar2.js.map +1 -1
  135. package/lib/packages/components/backtop/index.js +2 -2
  136. package/lib/packages/components/backtop/src/backtop.js +6 -19
  137. package/lib/packages/components/backtop/src/backtop.js.map +1 -1
  138. package/lib/packages/components/backtop/src/backtop.vue_vue&type=script&lang.js +1 -1
  139. package/lib/packages/components/backtop/src/backtop2.js +19 -6
  140. package/lib/packages/components/backtop/src/backtop2.js.map +1 -1
  141. package/lib/packages/components/breadcrumb/index.js +2 -2
  142. package/lib/packages/components/breadcrumb/src/breadcrumb.js +12 -5
  143. package/lib/packages/components/breadcrumb/src/breadcrumb.js.map +1 -1
  144. package/lib/packages/components/breadcrumb/src/breadcrumb.vue_vue&type=script&lang.js +1 -1
  145. package/lib/packages/components/breadcrumb/src/breadcrumb2.js +5 -12
  146. package/lib/packages/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  147. package/lib/packages/components/button/index.js +1 -1
  148. package/lib/packages/components/button/src/button-group.js +5 -6
  149. package/lib/packages/components/button/src/button-group.js.map +1 -1
  150. package/lib/packages/components/button/src/button-group.vue_vue&type=script&lang.js +1 -1
  151. package/lib/packages/components/button/src/button-group2.js +6 -5
  152. package/lib/packages/components/button/src/button-group2.js.map +1 -1
  153. package/lib/packages/components/card/index.js +2 -2
  154. package/lib/packages/components/card/src/card.js +16 -5
  155. package/lib/packages/components/card/src/card.js.map +1 -1
  156. package/lib/packages/components/card/src/card.vue_vue&type=script&lang.js +1 -1
  157. package/lib/packages/components/card/src/card2.js +5 -16
  158. package/lib/packages/components/card/src/card2.js.map +1 -1
  159. package/lib/packages/components/cascader/src/index.vue_vue&type=script&lang.js.map +1 -1
  160. package/lib/packages/components/cascader/src/index.vue_vue&type=template&id=0429c2db&lang.js +8 -6
  161. package/lib/packages/components/cascader/src/index.vue_vue&type=template&id=0429c2db&lang.js.map +1 -1
  162. package/lib/packages/components/descriptions/src/description-item.js +3 -0
  163. package/lib/packages/components/descriptions/src/description-item.js.map +1 -1
  164. package/lib/packages/components/descriptions/src/descriptions-cell.js +2 -1
  165. package/lib/packages/components/descriptions/src/descriptions-cell.js.map +1 -1
  166. package/lib/packages/components/divider/index.js +2 -2
  167. package/lib/packages/components/divider/src/divider.js +14 -5
  168. package/lib/packages/components/divider/src/divider.js.map +1 -1
  169. package/lib/packages/components/divider/src/divider.vue_vue&type=script&lang.js +1 -1
  170. package/lib/packages/components/divider/src/divider2.js +5 -14
  171. package/lib/packages/components/divider/src/divider2.js.map +1 -1
  172. package/lib/packages/components/image/index.js +2 -2
  173. package/lib/packages/components/image/src/image.js +44 -5
  174. package/lib/packages/components/image/src/image.js.map +1 -1
  175. package/lib/packages/components/image/src/image.vue_vue&type=script&lang.js +1 -1
  176. package/lib/packages/components/image/src/image2.js +5 -44
  177. package/lib/packages/components/image/src/image2.js.map +1 -1
  178. package/lib/packages/components/image-viewer/index.js +2 -2
  179. package/lib/packages/components/image-viewer/src/image-viewer.js +5 -24
  180. package/lib/packages/components/image-viewer/src/image-viewer.js.map +1 -1
  181. package/lib/packages/components/image-viewer/src/image-viewer.vue_vue&type=script&lang.js +1 -1
  182. package/lib/packages/components/image-viewer/src/image-viewer2.js +24 -5
  183. package/lib/packages/components/image-viewer/src/image-viewer2.js.map +1 -1
  184. package/lib/packages/components/index.js +14 -11
  185. package/lib/packages/components/index.js.map +1 -1
  186. package/lib/packages/components/input/index.js +2 -2
  187. package/lib/packages/components/input/src/input.js +78 -5
  188. package/lib/packages/components/input/src/input.js.map +1 -1
  189. package/lib/packages/components/input/src/input.vue_vue&type=script&lang.js +1 -1
  190. package/lib/packages/components/input/src/input2.js +5 -78
  191. package/lib/packages/components/input/src/input2.js.map +1 -1
  192. package/lib/packages/components/input-number/src/input-number.vue_vue&type=script&lang.js +4 -2
  193. package/lib/packages/components/input-number/src/input-number.vue_vue&type=script&lang.js.map +1 -1
  194. package/lib/packages/components/input-number/src/input-number.vue_vue&type=template&id=dec60af6&lang.js.map +1 -1
  195. package/lib/packages/components/menu/index.js +4 -4
  196. package/lib/packages/components/menu/src/menu-item-group.js +4 -6
  197. package/lib/packages/components/menu/src/menu-item-group.js.map +1 -1
  198. package/lib/packages/components/menu/src/menu-item-group.vue_vue&type=script&lang.js +1 -1
  199. package/lib/packages/components/menu/src/menu-item-group2.js +6 -4
  200. package/lib/packages/components/menu/src/menu-item-group2.js.map +1 -1
  201. package/lib/packages/components/menu/src/menu-item.js +18 -5
  202. package/lib/packages/components/menu/src/menu-item.js.map +1 -1
  203. package/lib/packages/components/menu/src/menu-item.vue_vue&type=script&lang.js +1 -1
  204. package/lib/packages/components/menu/src/menu-item2.js +5 -18
  205. package/lib/packages/components/menu/src/menu-item2.js.map +1 -1
  206. package/lib/packages/components/rate/index.js +8 -8
  207. package/lib/packages/components/rate/index.js.map +1 -1
  208. package/lib/packages/components/rate/src/rate.js +92 -0
  209. package/lib/packages/components/rate/src/rate.js.map +1 -0
  210. package/lib/packages/components/rate/src/{index.vue_vue&type=script&lang.js → rate.vue_vue&type=script&lang.js} +19 -88
  211. package/lib/packages/components/rate/src/rate.vue_vue&type=script&lang.js.map +1 -0
  212. package/lib/packages/components/rate/src/{index.vue_vue&type=template&id=55b4fa7d&lang.js → rate.vue_vue&type=template&id=38c42df6&lang.js} +1 -1
  213. package/lib/packages/components/rate/src/rate.vue_vue&type=template&id=38c42df6&lang.js.map +1 -0
  214. package/lib/packages/components/rate/src/rate2.js +12 -0
  215. package/lib/packages/components/rate/src/rate2.js.map +1 -0
  216. package/lib/version.d.ts +1 -1
  217. package/lib/version.js +1 -1
  218. package/lib/version.js.map +1 -1
  219. package/package.json +1 -1
  220. package/web-types.json +1 -1
  221. package/es/components/rate/src/index.vue.d.ts +0 -141
  222. package/es/packages/components/rate/src/index.mjs +0 -7
  223. package/es/packages/components/rate/src/index.mjs.map +0 -1
  224. package/es/packages/components/rate/src/index.vue_vue&type=script&lang.mjs.map +0 -1
  225. package/es/packages/components/rate/src/index.vue_vue&type=template&id=55b4fa7d&lang.mjs.map +0 -1
  226. package/lib/components/rate/src/index.vue.d.ts +0 -141
  227. package/lib/packages/components/rate/src/index.js +0 -12
  228. package/lib/packages/components/rate/src/index.js.map +0 -1
  229. package/lib/packages/components/rate/src/index.vue_vue&type=script&lang.js.map +0 -1
  230. package/lib/packages/components/rate/src/index.vue_vue&type=template&id=55b4fa7d&lang.js.map +0 -1
@@ -1,81 +1,7 @@
1
- import '../../../hooks/index.mjs';
2
- import { buildProps, definePropType, mutable } from '../../../utils/props.mjs';
3
- import { useFormItemProps } from '../../../hooks/use-form-item/index.mjs';
1
+ import script from './input.vue_vue&type=script&lang.mjs';
2
+ export { default } from './input.vue_vue&type=script&lang.mjs';
3
+ import { render } from './input.vue_vue&type=template&id=3290dcb6&lang.mjs';
4
4
 
5
- const inputProps = buildProps({
6
- ...useFormItemProps,
7
- modelValue: {
8
- type: definePropType(void 0),
9
- default: ""
10
- },
11
- type: {
12
- type: String,
13
- default: "text"
14
- },
15
- resize: {
16
- type: String,
17
- values: ["none", "both", "horizontal", "vertical"]
18
- },
19
- autosize: {
20
- type: definePropType([Boolean, Object]),
21
- default: false
22
- },
23
- autocomplete: {
24
- type: String,
25
- default: "off"
26
- },
27
- placeholder: {
28
- type: String
29
- },
30
- form: {
31
- type: String,
32
- default: ""
33
- },
34
- readonly: {
35
- type: Boolean,
36
- default: false
37
- },
38
- clearable: {
39
- type: Boolean,
40
- default: false
41
- },
42
- showPassword: {
43
- type: Boolean,
44
- default: false
45
- },
46
- showWordLimit: {
47
- type: Boolean,
48
- default: false
49
- },
50
- suffixIcon: {
51
- type: definePropType([String, Object]),
52
- default: ""
53
- },
54
- prefixIcon: {
55
- type: definePropType([String, Object]),
56
- default: ""
57
- },
58
- label: {
59
- type: String
60
- },
61
- tabindex: {
62
- type: [Number, String]
63
- },
64
- validateEvent: {
65
- type: Boolean,
66
- default: true
67
- },
68
- inputStyle: {
69
- type: definePropType([Object, Array, String]),
70
- default: () => mutable({})
71
- },
72
- maxlength: {
73
- type: [Number, String]
74
- },
75
- widget: {
76
- type: String
77
- }
78
- });
79
-
80
- export { inputProps };
5
+ script.render = render;
6
+ script.__file = "packages/components/input/src/input.vue";
81
7
  //# sourceMappingURL=input2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input2.mjs","sources":["../../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { useFormItemProps } from '@element-ps/hooks'\nimport { buildProps, definePropType, mutable } from '@element-ps/utils/props'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport type { ExtractPropTypes, Component } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n ...useFormItemProps,\n modelValue: {\n type: definePropType<string | number | null | undefined>(undefined),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<AutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n maxlength: {\n type: [Number, String],\n },\n widget: {\n type: String,\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n"],"names":[],"mappings":";;;;MAOa,aAAa,WAAW;AAAA,KAChC;AAAA,EACH,YAAY;AAAA,IACV,MAAM,eAAmD;AAAA,IACzD,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ,CAAC,QAAQ,QAAQ,cAAc;AAAA;AAAA,EAEzC,UAAU;AAAA,IACR,MAAM,eAAyB,CAAC,SAAS;AAAA,IACzC,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA;AAAA,EAER,UAAU;AAAA,IACR,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,eAA2B,CAAC,QAAQ,OAAO;AAAA,IACjD,SAAS,MAAM,QAAQ;AAAA;AAAA,EAEzB,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,QAAQ;AAAA,IACN,MAAM;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"input2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -41,7 +41,7 @@ var script = defineComponent({
41
41
  const controlsAtRight = computed(() => {
42
42
  return props.controls && props.controlsPosition === "right";
43
43
  });
44
- const { disabled: inputNumberDisabled } = useFormItem({});
44
+ const { size: inputNumberSize, disabled: inputNumberDisabled } = useFormItem({});
45
45
  const displayValue = computed(() => {
46
46
  if (data.userInput !== null) {
47
47
  return data.userInput;
@@ -100,7 +100,9 @@ var script = defineComponent({
100
100
  displayValue,
101
101
  controlsAtRight,
102
102
  maxDisabled,
103
- minDisabled
103
+ minDisabled,
104
+ inputNumberSize,
105
+ inputNumberDisabled
104
106
  };
105
107
  }
106
108
  });
@@ -1 +1 @@
1
- {"version":3,"file":"input-number.vue_vue&type=script&lang.mjs","sources":["../../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'el-input-number',\n inputNumberSize ? 'el-input-number--' + inputNumberSize : '',\n { 'is-disabled': inputNumberDisabled },\n { 'is-without-controls': !controls },\n { 'is-controls-right': controlsAtRight },\n ]\"\n >\n <span\n v-if=\"controls\"\n class=\"el-input-number__decrease\"\n role=\"button\"\n :class=\"{ 'is-disabled': minDisabled }\"\n >\n <ps-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </ps-icon>\n </span>\n <span\n v-if=\"controls\"\n class=\"el-input-number__increase\"\n role=\"button\"\n :class=\"{ 'is-disabled': maxDisabled }\"\n >\n <ps-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </ps-icon>\n </span>\n <ps-input\n ref=\"input\"\n type=\"number\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :disabled=\"inputNumberDisabled\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :label=\"label\"\n />\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n reactive,\n ref,\n onMounted,\n} from 'vue'\n\nimport { PsIcon } from '@element-ps/components/icon'\nimport { useFormItem } from '@element-ps/hooks'\nimport PsInput from '@element-ps/components/input'\nimport { isNumber } from '@element-ps/utils/util'\nimport { debugWarn } from '@element-ps/utils/error'\nimport { ArrowUp, ArrowDown, Plus, Minus } from '@element-plus/icons'\nimport { inputNumberProps } from './input-number'\n\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface IData {\n currentValue: number\n userInput: null | number | string\n}\n\nexport default defineComponent({\n name: 'PsInputNumber',\n components: {\n PsInput,\n PsIcon,\n ArrowUp,\n ArrowDown,\n Plus,\n Minus,\n },\n props: inputNumberProps,\n setup(props) {\n const input = ref<ComponentPublicInstance<typeof ElInput>>()\n const data = reactive<IData>({\n currentValue: props.modelValue,\n userInput: null,\n })\n\n const minDisabled = computed(() => _decrease(props.modelValue) < props.min)\n const maxDisabled = computed(() => _increase(props.modelValue) > props.max)\n\n const numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (props.precision !== undefined) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n })\n const controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n })\n\n const { disabled: inputNumberDisabled } = useFormItem({})\n\n const displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string = data.currentValue\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (props.precision !== undefined) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n })\n const toPrecision = (num: number, pre?: number) => {\n if (pre === undefined) pre = numPrecision.value\n return parseFloat(\n `${Math.round(num * Math.pow(10, pre)) / Math.pow(10, pre)}`\n )\n }\n const getPrecision = (value: number | undefined) => {\n if (value === undefined) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n }\n const _increase = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val + precisionFactor * props.step) / precisionFactor\n )\n }\n const _decrease = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val - precisionFactor * props.step) / precisionFactor\n )\n }\n\n onMounted(() => {\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n innerInput.setAttribute('aria-valuemax', String(props.max))\n innerInput.setAttribute('aria-valuemin', String(props.min))\n innerInput.setAttribute('aria-valuenow', String(data.currentValue))\n innerInput.setAttribute(\n 'aria-disabled',\n String(inputNumberDisabled.value)\n )\n })\n\n return {\n input,\n displayValue,\n controlsAtRight,\n maxDisabled,\n minDisabled,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;AAsEA,aAAe,gBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,QAAQ;AACd,UAAM,OAAO,SAAgB;AAAA,MAC3B,cAAc,MAAM;AAAA,MACpB,WAAW;AAAA;AAGb,UAAM,cAAc,SAAS,MAAM,UAAU,MAAM,cAAc,MAAM;AACvE,UAAM,cAAc,SAAS,MAAM,UAAU,MAAM,cAAc,MAAM;AAEvE,UAAM,eAAe,SAAS,MAAM;AAClC,YAAM,gBAAgB,aAAa,MAAM;AACzC,UAAI,MAAM,cAAc,QAAW;AACjC,YAAI,gBAAgB,MAAM,WAAW;AACnC,oBACE,eACA;AAAA;AAGJ,eAAO,MAAM;AAAA,aACR;AACL,eAAO,KAAK,IAAI,aAAa,MAAM,aAAa;AAAA;AAAA;AAGpD,UAAM,kBAAkB,SAAS,MAAM;AACrC,aAAO,MAAM,YAAY,MAAM,qBAAqB;AAAA;AAGtD,UAAM,EAAE,UAAU,wBAAwB,YAAY;AAEtD,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,KAAK,cAAc,MAAM;AAC3B,eAAO,KAAK;AAAA;AAEd,UAAI,eAAgC,KAAK;AACzC,UAAI,SAAS,eAAe;AAC1B,YAAI,OAAO,MAAM;AAAe,iBAAO;AACvC,YAAI,MAAM,cAAc,QAAW;AACjC,yBAAe,aAAa,QAAQ,MAAM;AAAA;AAAA;AAG9C,aAAO;AAAA;AAET,UAAM,cAAc,CAAC,KAAa,QAAiB;AACjD,UAAI,QAAQ;AAAW,cAAM,aAAa;AAC1C,aAAO,WACL,GAAG,KAAK,MAAM,MAAM,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI;AAAA;AAG1D,UAAM,eAAe,CAAC,UAA8B;AAClD,UAAI,UAAU;AAAW,eAAO;AAChC,YAAM,cAAc,MAAM;AAC1B,YAAM,cAAc,YAAY,QAAQ;AACxC,UAAI,YAAY;AAChB,UAAI,gBAAgB,IAAI;AACtB,oBAAY,YAAY,SAAS,cAAc;AAAA;AAEjD,aAAO;AAAA;AAET,UAAM,YAAY,CAAC,QAAgB;AACjC,UAAI,CAAC,SAAS;AAAM,eAAO,KAAK;AAChC,YAAM,kBAAkB,KAAK,IAAI,IAAI,aAAa;AAElD,YAAM,SAAS,OAAO,MAAM;AAC5B,aAAO,YACJ,mBAAkB,MAAM,kBAAkB,MAAM,QAAQ;AAAA;AAG7D,UAAM,YAAY,CAAC,QAAgB;AACjC,UAAI,CAAC,SAAS;AAAM,eAAO,KAAK;AAChC,YAAM,kBAAkB,KAAK,IAAI,IAAI,aAAa;AAElD,YAAM,SAAS,OAAO,MAAM;AAC5B,aAAO,YACJ,mBAAkB,MAAM,kBAAkB,MAAM,QAAQ;AAAA;AAI7D,cAAU,MAAM;;AACd,YAAM,aAAa,YAAM,UAAN,mBAAa;AAChC,iBAAW,aAAa,QAAQ;AAChC,iBAAW,aAAa,iBAAiB,OAAO,MAAM;AACtD,iBAAW,aAAa,iBAAiB,OAAO,MAAM;AACtD,iBAAW,aAAa,iBAAiB,OAAO,KAAK;AACrD,iBAAW,aACT,iBACA,OAAO,oBAAoB;AAAA;AAI/B,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"input-number.vue_vue&type=script&lang.mjs","sources":["../../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'el-input-number',\n inputNumberSize ? 'el-input-number--' + inputNumberSize : '',\n { 'is-disabled': inputNumberDisabled },\n { 'is-without-controls': !controls },\n { 'is-controls-right': controlsAtRight },\n ]\"\n >\n <span\n v-if=\"controls\"\n class=\"el-input-number__decrease\"\n role=\"button\"\n :class=\"{ 'is-disabled': minDisabled }\"\n >\n <ps-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </ps-icon>\n </span>\n <span\n v-if=\"controls\"\n class=\"el-input-number__increase\"\n role=\"button\"\n :class=\"{ 'is-disabled': maxDisabled }\"\n >\n <ps-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </ps-icon>\n </span>\n <ps-input\n ref=\"input\"\n type=\"number\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :disabled=\"inputNumberDisabled\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :label=\"label\"\n />\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n reactive,\n ref,\n onMounted,\n} from 'vue'\n\nimport { PsIcon } from '@element-ps/components/icon'\nimport { useFormItem } from '@element-ps/hooks'\nimport PsInput from '@element-ps/components/input'\nimport { isNumber } from '@element-ps/utils/util'\nimport { debugWarn } from '@element-ps/utils/error'\nimport { ArrowUp, ArrowDown, Plus, Minus } from '@element-plus/icons'\nimport { inputNumberProps } from './input-number'\n\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface IData {\n currentValue: number\n userInput: null | number | string\n}\n\nexport default defineComponent({\n name: 'PsInputNumber',\n components: {\n PsInput,\n PsIcon,\n ArrowUp,\n ArrowDown,\n Plus,\n Minus,\n },\n props: inputNumberProps,\n setup(props) {\n const input = ref<ComponentPublicInstance<typeof ElInput>>()\n const data = reactive<IData>({\n currentValue: props.modelValue,\n userInput: null,\n })\n\n const minDisabled = computed(() => _decrease(props.modelValue) < props.min)\n const maxDisabled = computed(() => _increase(props.modelValue) > props.max)\n\n const numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (props.precision !== undefined) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n })\n const controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n })\n\n const { size: inputNumberSize, disabled: inputNumberDisabled } = useFormItem({})\n\n const displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string = data.currentValue\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (props.precision !== undefined) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n })\n const toPrecision = (num: number, pre?: number) => {\n if (pre === undefined) pre = numPrecision.value\n return parseFloat(\n `${Math.round(num * Math.pow(10, pre)) / Math.pow(10, pre)}`\n )\n }\n const getPrecision = (value: number | undefined) => {\n if (value === undefined) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n }\n const _increase = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val + precisionFactor * props.step) / precisionFactor\n )\n }\n const _decrease = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val - precisionFactor * props.step) / precisionFactor\n )\n }\n\n onMounted(() => {\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n innerInput.setAttribute('aria-valuemax', String(props.max))\n innerInput.setAttribute('aria-valuemin', String(props.min))\n innerInput.setAttribute('aria-valuenow', String(data.currentValue))\n innerInput.setAttribute(\n 'aria-disabled',\n String(inputNumberDisabled.value)\n )\n })\n\n return {\n input,\n displayValue,\n controlsAtRight,\n maxDisabled,\n minDisabled,\n inputNumberSize,\n inputNumberDisabled\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;AAsEA,aAAe,gBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,QAAQ;AACd,UAAM,OAAO,SAAgB;AAAA,MAC3B,cAAc,MAAM;AAAA,MACpB,WAAW;AAAA;AAGb,UAAM,cAAc,SAAS,MAAM,UAAU,MAAM,cAAc,MAAM;AACvE,UAAM,cAAc,SAAS,MAAM,UAAU,MAAM,cAAc,MAAM;AAEvE,UAAM,eAAe,SAAS,MAAM;AAClC,YAAM,gBAAgB,aAAa,MAAM;AACzC,UAAI,MAAM,cAAc,QAAW;AACjC,YAAI,gBAAgB,MAAM,WAAW;AACnC,oBACE,eACA;AAAA;AAGJ,eAAO,MAAM;AAAA,aACR;AACL,eAAO,KAAK,IAAI,aAAa,MAAM,aAAa;AAAA;AAAA;AAGpD,UAAM,kBAAkB,SAAS,MAAM;AACrC,aAAO,MAAM,YAAY,MAAM,qBAAqB;AAAA;AAGtD,UAAM,EAAE,MAAM,iBAAiB,UAAU,wBAAwB,YAAY;AAE7E,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,KAAK,cAAc,MAAM;AAC3B,eAAO,KAAK;AAAA;AAEd,UAAI,eAAgC,KAAK;AACzC,UAAI,SAAS,eAAe;AAC1B,YAAI,OAAO,MAAM;AAAe,iBAAO;AACvC,YAAI,MAAM,cAAc,QAAW;AACjC,yBAAe,aAAa,QAAQ,MAAM;AAAA;AAAA;AAG9C,aAAO;AAAA;AAET,UAAM,cAAc,CAAC,KAAa,QAAiB;AACjD,UAAI,QAAQ;AAAW,cAAM,aAAa;AAC1C,aAAO,WACL,GAAG,KAAK,MAAM,MAAM,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI;AAAA;AAG1D,UAAM,eAAe,CAAC,UAA8B;AAClD,UAAI,UAAU;AAAW,eAAO;AAChC,YAAM,cAAc,MAAM;AAC1B,YAAM,cAAc,YAAY,QAAQ;AACxC,UAAI,YAAY;AAChB,UAAI,gBAAgB,IAAI;AACtB,oBAAY,YAAY,SAAS,cAAc;AAAA;AAEjD,aAAO;AAAA;AAET,UAAM,YAAY,CAAC,QAAgB;AACjC,UAAI,CAAC,SAAS;AAAM,eAAO,KAAK;AAChC,YAAM,kBAAkB,KAAK,IAAI,IAAI,aAAa;AAElD,YAAM,SAAS,OAAO,MAAM;AAC5B,aAAO,YACJ,mBAAkB,MAAM,kBAAkB,MAAM,QAAQ;AAAA;AAG7D,UAAM,YAAY,CAAC,QAAgB;AACjC,UAAI,CAAC,SAAS;AAAM,eAAO,KAAK;AAChC,YAAM,kBAAkB,KAAK,IAAI,IAAI,aAAa;AAElD,YAAM,SAAS,OAAO,MAAM;AAC5B,aAAO,YACJ,mBAAkB,MAAM,kBAAkB,MAAM,QAAQ;AAAA;AAI7D,cAAU,MAAM;;AACd,YAAM,aAAa,YAAM,UAAN,mBAAa;AAChC,iBAAW,aAAa,QAAQ;AAChC,iBAAW,aAAa,iBAAiB,OAAO,MAAM;AACtD,iBAAW,aAAa,iBAAiB,OAAO,MAAM;AACtD,iBAAW,aAAa,iBAAiB,OAAO,KAAK;AACrD,iBAAW,aACT,iBACA,OAAO,oBAAoB;AAAA;AAI/B,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-number.vue_vue&type=template&id=dec60af6&lang.mjs","sources":["../../../../../../../packages/components/input-number/src/input-number.vue?vue&type=template&id=dec60af6&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'el-input-number',\n inputNumberSize ? 'el-input-number--' + inputNumberSize : '',\n { 'is-disabled': inputNumberDisabled },\n { 'is-without-controls': !controls },\n { 'is-controls-right': controlsAtRight },\n ]\"\n >\n <span\n v-if=\"controls\"\n class=\"el-input-number__decrease\"\n role=\"button\"\n :class=\"{ 'is-disabled': minDisabled }\"\n >\n <ps-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </ps-icon>\n </span>\n <span\n v-if=\"controls\"\n class=\"el-input-number__increase\"\n role=\"button\"\n :class=\"{ 'is-disabled': maxDisabled }\"\n >\n <ps-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </ps-icon>\n </span>\n <ps-input\n ref=\"input\"\n type=\"number\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :disabled=\"inputNumberDisabled\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :label=\"label\"\n />\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n reactive,\n ref,\n onMounted,\n} from 'vue'\n\nimport { PsIcon } from '@element-ps/components/icon'\nimport { useFormItem } from '@element-ps/hooks'\nimport PsInput from '@element-ps/components/input'\nimport { isNumber } from '@element-ps/utils/util'\nimport { debugWarn } from '@element-ps/utils/error'\nimport { ArrowUp, ArrowDown, Plus, Minus } from '@element-plus/icons'\nimport { inputNumberProps } from './input-number'\n\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface IData {\n currentValue: number\n userInput: null | number | string\n}\n\nexport default defineComponent({\n name: 'PsInputNumber',\n components: {\n PsInput,\n PsIcon,\n ArrowUp,\n ArrowDown,\n Plus,\n Minus,\n },\n props: inputNumberProps,\n setup(props) {\n const input = ref<ComponentPublicInstance<typeof ElInput>>()\n const data = reactive<IData>({\n currentValue: props.modelValue,\n userInput: null,\n })\n\n const minDisabled = computed(() => _decrease(props.modelValue) < props.min)\n const maxDisabled = computed(() => _increase(props.modelValue) > props.max)\n\n const numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (props.precision !== undefined) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n })\n const controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n })\n\n const { disabled: inputNumberDisabled } = useFormItem({})\n\n const displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string = data.currentValue\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (props.precision !== undefined) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n })\n const toPrecision = (num: number, pre?: number) => {\n if (pre === undefined) pre = numPrecision.value\n return parseFloat(\n `${Math.round(num * Math.pow(10, pre)) / Math.pow(10, pre)}`\n )\n }\n const getPrecision = (value: number | undefined) => {\n if (value === undefined) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n }\n const _increase = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val + precisionFactor * props.step) / precisionFactor\n )\n }\n const _decrease = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val - precisionFactor * props.step) / precisionFactor\n )\n }\n\n onMounted(() => {\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n innerInput.setAttribute('aria-valuemax', String(props.max))\n innerInput.setAttribute('aria-valuemin', String(props.min))\n innerInput.setAttribute('aria-valuenow', String(data.currentValue))\n innerInput.setAttribute(\n 'aria-disabled',\n String(inputNumberDisabled.value)\n )\n })\n\n return {\n input,\n displayValue,\n controlsAtRight,\n maxDisabled,\n minDisabled,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createVNode","_createBlock"],"mappings":";;;;;;;;;sBACEA;IACG;;;;;;;;IASO,8BADRA;;MAEE,uBAAM,8CAEmB;MADzB,MAAK;AAAA;MAGLC;yBACE;UAAkB,qCAAlBC,gEACAA;;;;;IAII,8BADRF;;MAEE,uBAAM,8CAEmB;MADzB,MAAK;AAAA;MAGLC;yBACE;UAAgB,qCAAhBC,8DACAA;;;;;IAGJD;MACE,KAAI;AAAA,MACJ,MAAK;AAAA,MACJ,eAAa;MACb,aAAa;MACb,UAAU;MACV,MAAM;MACN,KAAK;MACL,KAAK;MACL,MAAM;MACN,OAAO;;;;;;;"}
1
+ {"version":3,"file":"input-number.vue_vue&type=template&id=dec60af6&lang.mjs","sources":["../../../../../../../packages/components/input-number/src/input-number.vue?vue&type=template&id=dec60af6&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'el-input-number',\n inputNumberSize ? 'el-input-number--' + inputNumberSize : '',\n { 'is-disabled': inputNumberDisabled },\n { 'is-without-controls': !controls },\n { 'is-controls-right': controlsAtRight },\n ]\"\n >\n <span\n v-if=\"controls\"\n class=\"el-input-number__decrease\"\n role=\"button\"\n :class=\"{ 'is-disabled': minDisabled }\"\n >\n <ps-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </ps-icon>\n </span>\n <span\n v-if=\"controls\"\n class=\"el-input-number__increase\"\n role=\"button\"\n :class=\"{ 'is-disabled': maxDisabled }\"\n >\n <ps-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </ps-icon>\n </span>\n <ps-input\n ref=\"input\"\n type=\"number\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :disabled=\"inputNumberDisabled\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :label=\"label\"\n />\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n reactive,\n ref,\n onMounted,\n} from 'vue'\n\nimport { PsIcon } from '@element-ps/components/icon'\nimport { useFormItem } from '@element-ps/hooks'\nimport PsInput from '@element-ps/components/input'\nimport { isNumber } from '@element-ps/utils/util'\nimport { debugWarn } from '@element-ps/utils/error'\nimport { ArrowUp, ArrowDown, Plus, Minus } from '@element-plus/icons'\nimport { inputNumberProps } from './input-number'\n\nimport type { ComponentPublicInstance } from 'vue'\n\ninterface IData {\n currentValue: number\n userInput: null | number | string\n}\n\nexport default defineComponent({\n name: 'PsInputNumber',\n components: {\n PsInput,\n PsIcon,\n ArrowUp,\n ArrowDown,\n Plus,\n Minus,\n },\n props: inputNumberProps,\n setup(props) {\n const input = ref<ComponentPublicInstance<typeof ElInput>>()\n const data = reactive<IData>({\n currentValue: props.modelValue,\n userInput: null,\n })\n\n const minDisabled = computed(() => _decrease(props.modelValue) < props.min)\n const maxDisabled = computed(() => _increase(props.modelValue) > props.max)\n\n const numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (props.precision !== undefined) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n })\n const controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n })\n\n const { size: inputNumberSize, disabled: inputNumberDisabled } = useFormItem({})\n\n const displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string = data.currentValue\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (props.precision !== undefined) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n })\n const toPrecision = (num: number, pre?: number) => {\n if (pre === undefined) pre = numPrecision.value\n return parseFloat(\n `${Math.round(num * Math.pow(10, pre)) / Math.pow(10, pre)}`\n )\n }\n const getPrecision = (value: number | undefined) => {\n if (value === undefined) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n }\n const _increase = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val + precisionFactor * props.step) / precisionFactor\n )\n }\n const _decrease = (val: number) => {\n if (!isNumber(val)) return data.currentValue\n const precisionFactor = Math.pow(10, numPrecision.value)\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n val = isNumber(val) ? val : NaN\n return toPrecision(\n (precisionFactor * val - precisionFactor * props.step) / precisionFactor\n )\n }\n\n onMounted(() => {\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n innerInput.setAttribute('aria-valuemax', String(props.max))\n innerInput.setAttribute('aria-valuemin', String(props.min))\n innerInput.setAttribute('aria-valuenow', String(data.currentValue))\n innerInput.setAttribute(\n 'aria-disabled',\n String(inputNumberDisabled.value)\n )\n })\n\n return {\n input,\n displayValue,\n controlsAtRight,\n maxDisabled,\n minDisabled,\n inputNumberSize,\n inputNumberDisabled\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createVNode","_createBlock"],"mappings":";;;;;;;;;sBACEA;IACG;;;;;;;;IASO,8BADRA;;MAEE,uBAAM,8CAEmB;MADzB,MAAK;AAAA;MAGLC;yBACE;UAAkB,qCAAlBC,gEACAA;;;;;IAII,8BADRF;;MAEE,uBAAM,8CAEmB;MADzB,MAAK;AAAA;MAGLC;yBACE;UAAgB,qCAAhBC,8DACAA;;;;;IAGJD;MACE,KAAI;AAAA,MACJ,MAAK;AAAA,MACJ,eAAa;MACb,aAAa;MACb,UAAU;MACV,MAAM;MACN,KAAK;MACL,KAAK;MACL,MAAM;MACN,OAAO;;;;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { withInstall, withNoopInstall } from '../../utils/with-install.mjs';
2
2
  import Menu from './src/menu.mjs';
3
3
  export { menuEmits, menuProps } from './src/menu.mjs';
4
- import './src/menu-item.mjs';
5
- import './src/menu-item-group.mjs';
4
+ import './src/menu-item2.mjs';
5
+ import './src/menu-item-group2.mjs';
6
6
  import SubMenu from './src/sub-menu.mjs';
7
7
  export { subMenuProps } from './src/sub-menu.mjs';
8
- export { menuItemEmits, menuItemProps } from './src/menu-item2.mjs';
9
- export { menuItemGroupProps } from './src/menu-item-group2.mjs';
8
+ export { menuItemEmits, menuItemProps } from './src/menu-item.mjs';
9
+ export { menuItemGroupProps } from './src/menu-item-group.mjs';
10
10
  import './src/types.mjs';
11
11
  import script from './src/menu-item.vue_vue&type=script&lang.mjs';
12
12
  import script$1 from './src/menu-item-group.vue_vue&type=script&lang.mjs';
@@ -1,7 +1,6 @@
1
- import script from './menu-item-group.vue_vue&type=script&lang.mjs';
2
- export { default } from './menu-item-group.vue_vue&type=script&lang.mjs';
3
- import { render } from './menu-item-group.vue_vue&type=template&id=67a2995d&lang.mjs';
1
+ const menuItemGroupProps = {
2
+ title: String
3
+ };
4
4
 
5
- script.render = render;
6
- script.__file = "packages/components/menu/src/menu-item-group.vue";
5
+ export { menuItemGroupProps };
7
6
  //# sourceMappingURL=menu-item-group.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-group.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
1
+ {"version":3,"file":"menu-item-group.mjs","sources":["../../../../../../../packages/components/menu/src/menu-item-group.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nexport const menuItemGroupProps = {\n title: String,\n} as const\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>\n"],"names":[],"mappings":"MAEa,qBAAqB;AAAA,EAChC,OAAO;AAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, getCurrentInstance, inject, computed } from 'vue';
2
2
  import { throwError } from '../../../utils/error.mjs';
3
- import { menuItemGroupProps } from './menu-item-group2.mjs';
3
+ import { menuItemGroupProps } from './menu-item-group.mjs';
4
4
 
5
5
  const COMPONENT_NAME = "ElMenuItemGroup";
6
6
  var script = defineComponent({
@@ -1,6 +1,7 @@
1
- const menuItemGroupProps = {
2
- title: String
3
- };
1
+ import script from './menu-item-group.vue_vue&type=script&lang.mjs';
2
+ export { default } from './menu-item-group.vue_vue&type=script&lang.mjs';
3
+ import { render } from './menu-item-group.vue_vue&type=template&id=67a2995d&lang.mjs';
4
4
 
5
- export { menuItemGroupProps };
5
+ script.render = render;
6
+ script.__file = "packages/components/menu/src/menu-item-group.vue";
6
7
  //# sourceMappingURL=menu-item-group2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-group2.mjs","sources":["../../../../../../../packages/components/menu/src/menu-item-group.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nexport const menuItemGroupProps = {\n title: String,\n} as const\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>\n"],"names":[],"mappings":"MAEa,qBAAqB;AAAA,EAChC,OAAO;AAAA;;;;"}
1
+ {"version":3,"file":"menu-item-group2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,7 +1,20 @@
1
- import script from './menu-item.vue_vue&type=script&lang.mjs';
2
- export { default } from './menu-item.vue_vue&type=script&lang.mjs';
3
- import { render } from './menu-item.vue_vue&type=template&id=aa755baa&lang.mjs';
1
+ import { buildProps, definePropType } from '../../../utils/props.mjs';
2
+ import '../../../utils/util.mjs';
3
+ import { isString } from '@vue/shared';
4
4
 
5
- script.render = render;
6
- script.__file = "packages/components/menu/src/menu-item.vue";
5
+ const menuItemProps = buildProps({
6
+ index: {
7
+ type: definePropType([String, null]),
8
+ default: null
9
+ },
10
+ route: {
11
+ type: definePropType([String, Object])
12
+ },
13
+ disabled: Boolean
14
+ });
15
+ const menuItemEmits = {
16
+ click: (item) => isString(item.index) && Array.isArray(item.indexPath)
17
+ };
18
+
19
+ export { menuItemEmits, menuItemProps };
7
20
  //# sourceMappingURL=menu-item.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
1
+ {"version":3,"file":"menu-item.mjs","sources":["../../../../../../../packages/components/menu/src/menu-item.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils/props'\nimport { isString } from '@element-ps/utils/util'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport type { MenuItemRegistered } from './types'\n\nexport const menuItemProps = buildProps({\n index: {\n type: definePropType<string | null>([String, null]),\n default: null,\n },\n route: {\n type: definePropType<RouteLocationRaw>([String, Object]),\n },\n disabled: Boolean,\n} as const)\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>\n\nexport const menuItemEmits = {\n click: (item: MenuItemRegistered) =>\n isString(item.index) && Array.isArray(item.indexPath),\n}\nexport type MenuItemEmits = typeof menuItemEmits\n"],"names":[],"mappings":";;;;MAOa,gBAAgB,WAAW;AAAA,EACtC,OAAO;AAAA,IACL,MAAM,eAA8B,CAAC,QAAQ;AAAA,IAC7C,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM,eAAiC,CAAC,QAAQ;AAAA;AAAA,EAElD,UAAU;AAAA;MAIC,gBAAgB;AAAA,EAC3B,OAAO,CAAC,SACN,SAAS,KAAK,UAAU,MAAM,QAAQ,KAAK;AAAA;;;;"}
@@ -3,7 +3,7 @@ import _Tooltip from '../../tooltip/index.mjs';
3
3
  import '../../popper/index.mjs';
4
4
  import { throwError } from '../../../utils/error.mjs';
5
5
  import useMenu from './use-menu.mjs';
6
- import { menuItemProps } from './menu-item2.mjs';
6
+ import { menuItemProps } from './menu-item.mjs';
7
7
  import { Effect } from '../../popper/src/use-popper/defaults.mjs';
8
8
 
9
9
  const COMPONENT_NAME = "PsMenuItem";
@@ -1,20 +1,7 @@
1
- import { buildProps, definePropType } from '../../../utils/props.mjs';
2
- import '../../../utils/util.mjs';
3
- import { isString } from '@vue/shared';
1
+ import script from './menu-item.vue_vue&type=script&lang.mjs';
2
+ export { default } from './menu-item.vue_vue&type=script&lang.mjs';
3
+ import { render } from './menu-item.vue_vue&type=template&id=aa755baa&lang.mjs';
4
4
 
5
- const menuItemProps = buildProps({
6
- index: {
7
- type: definePropType([String, null]),
8
- default: null
9
- },
10
- route: {
11
- type: definePropType([String, Object])
12
- },
13
- disabled: Boolean
14
- });
15
- const menuItemEmits = {
16
- click: (item) => isString(item.index) && Array.isArray(item.indexPath)
17
- };
18
-
19
- export { menuItemEmits, menuItemProps };
5
+ script.render = render;
6
+ script.__file = "packages/components/menu/src/menu-item.vue";
20
7
  //# sourceMappingURL=menu-item2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item2.mjs","sources":["../../../../../../../packages/components/menu/src/menu-item.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils/props'\nimport { isString } from '@element-ps/utils/util'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport type { MenuItemRegistered } from './types'\n\nexport const menuItemProps = buildProps({\n index: {\n type: definePropType<string | null>([String, null]),\n default: null,\n },\n route: {\n type: definePropType<RouteLocationRaw>([String, Object]),\n },\n disabled: Boolean,\n} as const)\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>\n\nexport const menuItemEmits = {\n click: (item: MenuItemRegistered) =>\n isString(item.index) && Array.isArray(item.indexPath),\n}\nexport type MenuItemEmits = typeof menuItemEmits\n"],"names":[],"mappings":";;;;MAOa,gBAAgB,WAAW;AAAA,EACtC,OAAO;AAAA,IACL,MAAM,eAA8B,CAAC,QAAQ;AAAA,IAC7C,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM,eAAiC,CAAC,QAAQ;AAAA;AAAA,EAElD,UAAU;AAAA;MAIC,gBAAgB;AAAA,EAC3B,OAAO,CAAC,SACN,SAAS,KAAK,UAAU,MAAM,QAAQ,KAAK;AAAA;;;;"}
1
+ {"version":3,"file":"menu-item2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,11 +1,9 @@
1
- import './src/index.mjs';
2
- import script from './src/index.vue_vue&type=script&lang.mjs';
1
+ import { withInstall } from '../../utils/with-install.mjs';
2
+ import './src/rate2.mjs';
3
+ export { rateEmits, rateProps } from './src/rate.mjs';
4
+ import script from './src/rate.vue_vue&type=script&lang.mjs';
3
5
 
4
- script.install = (app) => {
5
- app.component(script.name, script);
6
- };
7
- const _Rate = script;
8
- const PsRate = _Rate;
6
+ const PsRate = withInstall(script);
9
7
 
10
- export { PsRate, _Rate as default };
8
+ export { PsRate, PsRate as default };
11
9
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/rate/index.ts"],"sourcesContent":["import Rate from './src/index.vue'\n\nimport type { App } from 'vue'\nimport type { SFCWithInstall } from '@element-ps/utils/types'\n\nRate.install = (app: App): void => {\n app.component(Rate.name, Rate)\n}\n\nconst _Rate = Rate as SFCWithInstall<typeof Rate>\n\nexport default _Rate\nexport const PsRate = _Rate\n"],"names":["Rate"],"mappings":";;;AAKAA,OAAK,UAAU,CAAC,QAAmB;AACjC,MAAI,UAAUA,OAAK,MAAMA;AAAA;MAGrB,QAAQA;MAGD,SAAS;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/rate/index.ts"],"sourcesContent":["import { withInstall } from '@element-ps/utils/with-install'\n\nimport Rate from './src/rate.vue'\n\nexport const PsRate = withInstall(Rate)\nexport default PsRate\n\nexport * from './src/rate'\n"],"names":["Rate"],"mappings":";;;;;MAIa,SAAS,YAAYA;;;;"}
@@ -0,0 +1,87 @@
1
+ import { StarFilled, Star } from '@element-plus/icons';
2
+ import { UPDATE_MODEL_EVENT } from '../../../utils/constants.mjs';
3
+ import { buildProps, definePropType, mutable } from '../../../utils/props.mjs';
4
+
5
+ const rateProps = buildProps({
6
+ modelValue: {
7
+ type: Number,
8
+ default: 0
9
+ },
10
+ lowThreshold: {
11
+ type: Number,
12
+ default: 2
13
+ },
14
+ highThreshold: {
15
+ type: Number,
16
+ default: 4
17
+ },
18
+ max: {
19
+ type: Number,
20
+ default: 5
21
+ },
22
+ colors: {
23
+ type: definePropType([Array, Object]),
24
+ default: () => mutable(["#F7BA2A", "#F7BA2A", "#F7BA2A"])
25
+ },
26
+ voidColor: {
27
+ type: String,
28
+ default: "#C6D1DE"
29
+ },
30
+ disabledVoidColor: {
31
+ type: String,
32
+ default: "#EFF2F7"
33
+ },
34
+ icons: {
35
+ type: definePropType([Array, Object]),
36
+ default: () => [StarFilled, StarFilled, StarFilled]
37
+ },
38
+ voidIcon: {
39
+ type: definePropType([String, Object]),
40
+ default: () => Star
41
+ },
42
+ disabledvoidIcon: {
43
+ type: definePropType([String, Object]),
44
+ default: () => StarFilled
45
+ },
46
+ disabled: {
47
+ type: Boolean,
48
+ default: false
49
+ },
50
+ allowHalf: {
51
+ type: Boolean,
52
+ default: false
53
+ },
54
+ showText: {
55
+ type: Boolean,
56
+ default: false
57
+ },
58
+ showScore: {
59
+ type: Boolean,
60
+ default: false
61
+ },
62
+ textColor: {
63
+ type: String,
64
+ default: "#1f2d3d"
65
+ },
66
+ texts: {
67
+ type: definePropType([Array]),
68
+ default: () => mutable([
69
+ "Extremely bad",
70
+ "Disappointed",
71
+ "Fair",
72
+ "Satisfied",
73
+ "Surprise"
74
+ ])
75
+ },
76
+ scoreTemplate: {
77
+ type: String,
78
+ default: "{value}"
79
+ }
80
+ });
81
+ const rateEmits = {
82
+ change: (value) => typeof value === "number",
83
+ [UPDATE_MODEL_EVENT]: (value) => typeof value === "number"
84
+ };
85
+
86
+ export { rateEmits, rateProps };
87
+ //# sourceMappingURL=rate.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate.mjs","sources":["../../../../../../../packages/components/rate/src/rate.ts"],"sourcesContent":["import { Star, StarFilled } from '@element-plus/icons'\nimport { UPDATE_MODEL_EVENT } from '@element-ps/utils/constants'\nimport { buildProps, definePropType, mutable } from '@element-ps/utils/props'\nimport type { Component, ExtractPropTypes } from 'vue'\n\nexport const rateProps = buildProps({\n modelValue: {\n type: Number,\n default: 0,\n },\n lowThreshold: {\n type: Number,\n default: 2,\n },\n highThreshold: {\n type: Number,\n default: 4,\n },\n max: {\n type: Number,\n default: 5,\n },\n colors: {\n type: definePropType<string[] | Record<number, string>>([Array, Object]),\n default: () => mutable(['#F7BA2A', '#F7BA2A', '#F7BA2A'] as const),\n },\n voidColor: {\n type: String,\n default: '#C6D1DE',\n },\n disabledVoidColor: {\n type: String,\n default: '#EFF2F7',\n },\n icons: {\n type: definePropType<\n Array<string | Component> | Record<number, string | Component>\n >([Array, Object]),\n default: () => [StarFilled, StarFilled, StarFilled],\n },\n voidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => Star,\n },\n disabledvoidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => StarFilled,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n allowHalf: {\n type: Boolean,\n default: false,\n },\n showText: {\n type: Boolean,\n default: false,\n },\n showScore: {\n type: Boolean,\n default: false,\n },\n textColor: {\n type: String,\n default: '#1f2d3d',\n },\n texts: {\n type: definePropType<string[]>([Array]),\n default: () =>\n mutable([\n 'Extremely bad',\n 'Disappointed',\n 'Fair',\n 'Satisfied',\n 'Surprise',\n ] as const),\n },\n scoreTemplate: {\n type: String,\n default: '{value}',\n },\n} as const)\n\nexport type RateProps = ExtractPropTypes<typeof rateProps>\n\nexport const rateEmits = {\n change: (value: number) => typeof value === 'number',\n [UPDATE_MODEL_EVENT]: (value: number) => typeof value === 'number',\n}\nexport type RateEmits = typeof rateEmits\n"],"names":[],"mappings":";;;;MAKa,YAAY,WAAW;AAAA,EAClC,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,KAAK;AAAA,IACH,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM,eAAkD,CAAC,OAAO;AAAA,IAChE,SAAS,MAAM,QAAQ,CAAC,WAAW,WAAW;AAAA;AAAA,EAEhD,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM,eAEJ,CAAC,OAAO;AAAA,IACV,SAAS,MAAM,CAAC,YAAY,YAAY;AAAA;AAAA,EAE1C,UAAU;AAAA,IACR,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS,MAAM;AAAA;AAAA,EAEjB,kBAAkB;AAAA,IAChB,MAAM,eAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS,MAAM;AAAA;AAAA,EAEjB,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM,eAAyB,CAAC;AAAA,IAChC,SAAS,MACP,QAAQ;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA,EAGN,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA;MAMA,YAAY;AAAA,EACvB,QAAQ,CAAC,UAAkB,OAAO,UAAU;AAAA,GAC3C,qBAAqB,CAAC,UAAkB,OAAO,UAAU;AAAA;;;;"}
@@ -3,90 +3,32 @@ import { isObject, isArray } from '@vue/shared';
3
3
  import '../../../tokens/index.mjs';
4
4
  import { PsIcon } from '../../icon/index.mjs';
5
5
  import { StarFilled, Star } from '@element-plus/icons';
6
+ import { rateProps } from './rate.mjs';
6
7
  import { elFormKey } from '../../../tokens/form.mjs';
7
8
 
9
+ function getValueFromMap(value, map) {
10
+ const isExcludedObject = (val) => isObject(val);
11
+ const matchedKeys = Object.keys(map).map((key) => +key).filter((key) => {
12
+ const val = map[key];
13
+ const excluded = isExcludedObject(val) ? val.excluded : false;
14
+ return excluded ? value < key : value <= key;
15
+ }).sort((a, b) => a - b);
16
+ const matchedValue = map[matchedKeys[0]];
17
+ return isExcludedObject(matchedValue) && matchedValue.value || matchedValue;
18
+ }
8
19
  var script = defineComponent({
9
20
  name: "PsRate",
10
- components: { PsIcon, StarFilled, Star },
11
- props: {
12
- modelValue: {
13
- type: Number,
14
- default: 0
15
- },
16
- lowThreshold: {
17
- type: Number,
18
- default: 2
19
- },
20
- highThreshold: {
21
- type: Number,
22
- default: 4
23
- },
24
- max: {
25
- type: Number,
26
- default: 5
27
- },
28
- colors: {
29
- type: [Array, Object],
30
- default: () => ["#F7BA2A", "#F7BA2A", "#F7BA2A"]
31
- },
32
- voidColor: {
33
- type: String,
34
- default: "#C6D1DE"
35
- },
36
- disabledVoidColor: {
37
- type: String,
38
- default: "#EFF2F7"
39
- },
40
- icons: {
41
- type: [Array, Object],
42
- default: () => [StarFilled, StarFilled, StarFilled]
43
- },
44
- voidIcon: {
45
- type: [String, Object],
46
- default: Star
47
- },
48
- disabledvoidIcon: {
49
- type: [String, Object],
50
- default: StarFilled
51
- },
52
- disabled: {
53
- type: Boolean,
54
- default: false
55
- },
56
- allowHalf: {
57
- type: Boolean,
58
- default: false
59
- },
60
- showText: {
61
- type: Boolean,
62
- default: false
63
- },
64
- showScore: {
65
- type: Boolean,
66
- default: false
67
- },
68
- textColor: {
69
- type: String,
70
- default: "#1f2d3d"
71
- },
72
- texts: {
73
- type: Array,
74
- default: () => [
75
- "Extremely bad",
76
- "Disappointed",
77
- "Fair",
78
- "Satisfied",
79
- "Surprise"
80
- ]
81
- },
82
- scoreTemplate: {
83
- type: String,
84
- default: "{value}"
85
- }
21
+ components: {
22
+ PsIcon,
23
+ StarFilled,
24
+ Star
86
25
  },
26
+ props: rateProps,
87
27
  setup(props) {
88
28
  const elForm = inject(elFormKey, {});
89
29
  const currentValue = ref(props.modelValue);
30
+ const hoverIndex = ref(-1);
31
+ const pointerAtLeftHalf = ref(true);
90
32
  const rateDisabled = computed(() => props.disabled || elForm.disabled);
91
33
  const text = computed(() => {
92
34
  let result = "";
@@ -97,15 +39,6 @@ var script = defineComponent({
97
39
  }
98
40
  return result;
99
41
  });
100
- function getValueFromMap(value, map) {
101
- const matchedKeys = Object.keys(map).filter((key) => {
102
- const val = map[key];
103
- const excluded = isObject(val) ? val.excluded : false;
104
- return excluded ? value < key : value <= key;
105
- }).sort((a, b) => a - b);
106
- const matchedValue = map[matchedKeys[0]];
107
- return isObject(matchedValue) ? matchedValue.value || matchedValue : matchedValue || "";
108
- }
109
42
  const valueDecimal = computed(() => props.modelValue * 100 - Math.floor(props.modelValue) * 100);
110
43
  const colorMap = computed(() => isArray(props.colors) ? {
111
44
  [props.lowThreshold]: props.colors[0],
@@ -143,7 +76,6 @@ var script = defineComponent({
143
76
  result.fill(voidComponent.value, threshold, props.max);
144
77
  return result;
145
78
  });
146
- const pointerAtLeftHalf = ref(true);
147
79
  function showDecimalIcon(item) {
148
80
  const showWhenDisabled = rateDisabled.value && valueDecimal.value > 0 && item - 1 < props.modelValue && item > props.modelValue;
149
81
  const showWhenAllowHalf = props.allowHalf && pointerAtLeftHalf.value && item - 0.5 <= currentValue.value && item > currentValue.value;
@@ -155,7 +87,6 @@ var script = defineComponent({
155
87
  color: item <= currentValue.value ? activeColor.value : voidColor
156
88
  };
157
89
  }
158
- const hoverIndex = ref(-1);
159
90
  return {
160
91
  hoverIndex,
161
92
  currentValue,
@@ -171,4 +102,4 @@ var script = defineComponent({
171
102
  });
172
103
 
173
104
  export { script as default };
174
- //# sourceMappingURL=index.vue_vue&type=script&lang.mjs.map
105
+ //# sourceMappingURL=rate.vue_vue&type=script&lang.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate.vue_vue&type=script&lang.mjs","sources":["../../../../../../../packages/components/rate/src/rate.vue"],"sourcesContent":["<template>\n <div\n class=\"el-rate\"\n role=\"slider\"\n :aria-valuenow=\"currentValue\"\n :aria-valuetext=\"text\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"max\"\n tabindex=\"0\"\n >\n <span\n v-for=\"(item, key) in max\"\n :key=\"key\"\n class=\"el-rate__item\"\n :style=\"{ cursor: rateDisabled ? 'auto' : 'pointer' }\"\n >\n <ps-icon\n :class=\"[{ hover: hoverIndex === item }]\"\n class=\"el-rate__icon\"\n :style=\"getIconStyle(item)\"\n >\n <component :is=\"iconComponents[item - 1]\" />\n <ps-icon\n v-if=\"showDecimalIcon(item)\"\n :style=\"decimalStyle\"\n class=\"el-rate__icon el-rate__decimal\"\n >\n <component :is=\"decimalIconComponent\" />\n </ps-icon>\n </ps-icon>\n </span>\n <span\n v-if=\"showText || showScore\"\n class=\"el-rate__text\"\n :style=\"{ color: textColor }\"\n >\n {{ text }}\n </span>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, inject, computed, ref, watch } from 'vue'\nimport { isObject, isArray } from '@vue/shared'\nimport { elFormKey } from '@element-ps/tokens'\nimport { PsIcon } from '@element-ps/components/icon'\nimport { StarFilled, Star } from '@element-plus/icons'\nimport { rateProps, rateEmits } from './rate'\nimport type { ElFormContext } from '@element-ps/tokens'\n\nfunction getValueFromMap<T>(\n value: number,\n map: Record<string, T | { excluded?: boolean; value: T }>\n) {\n const isExcludedObject = (\n val: unknown\n ): val is { excluded?: boolean } & Record<any, unknown> => isObject(val)\n\n const matchedKeys = Object.keys(map)\n .map((key) => +key)\n .filter((key) => {\n const val = map[key]\n const excluded = isExcludedObject(val) ? val.excluded : false\n return excluded ? value < key : value <= key\n })\n .sort((a, b) => a - b)\n const matchedValue = map[matchedKeys[0]]\n return (isExcludedObject(matchedValue) && matchedValue.value) || matchedValue\n}\n\nexport default defineComponent({\n name: 'PsRate',\n components: {\n PsIcon,\n StarFilled,\n Star,\n },\n props: rateProps,\n setup(props) {\n const elForm = inject(elFormKey, {} as ElFormContext)\n\n const currentValue = ref(props.modelValue)\n const hoverIndex = ref(-1)\n const pointerAtLeftHalf = ref(true)\n\n const rateDisabled = computed(() => props.disabled || elForm.disabled)\n const text = computed(() => {\n let result = ''\n if (props.showScore) {\n result = props.scoreTemplate.replace(\n /\\{\\s*value\\s*\\}/,\n rateDisabled.value ? `${props.modelValue}` : `${currentValue.value}`\n )\n } else if (props.showText) {\n result = props.texts[Math.ceil(currentValue.value) - 1]\n }\n return result\n })\n const valueDecimal = computed(\n () => props.modelValue * 100 - Math.floor(props.modelValue) * 100\n )\n const colorMap = computed(() =>\n isArray(props.colors)\n ? {\n [props.lowThreshold]: props.colors[0],\n [props.highThreshold]: { value: props.colors[1], excluded: true },\n [props.max]: props.colors[2],\n }\n : props.colors\n )\n const activeColor = computed(() =>\n getValueFromMap(currentValue.value, colorMap.value)\n )\n const decimalStyle = computed(() => {\n let width = ''\n if (rateDisabled.value) {\n width = `${valueDecimal.value}%`\n } else if (props.allowHalf) {\n width = '50%'\n }\n return {\n color: activeColor.value,\n width,\n }\n })\n const componentMap = computed(() =>\n isArray(props.icons)\n ? {\n [props.lowThreshold]: props.icons[0],\n [props.highThreshold]: {\n value: props.icons[1],\n excluded: true,\n },\n [props.max]: props.icons[2],\n }\n : props.icons\n )\n const decimalIconComponent = computed(() =>\n getValueFromMap(props.modelValue, componentMap.value)\n )\n const voidComponent = computed(() =>\n rateDisabled.value ? props.disabledvoidIcon : props.voidIcon\n )\n const activeComponent = computed(() =>\n getValueFromMap(currentValue.value, componentMap.value)\n )\n const iconComponents = computed(() => {\n const result = Array(props.max)\n const threshold = currentValue.value\n result.fill(activeComponent.value, 0, threshold)\n result.fill(voidComponent.value, threshold, props.max)\n return result\n })\n\n function showDecimalIcon(item: number) {\n const showWhenDisabled =\n rateDisabled.value &&\n valueDecimal.value > 0 &&\n item - 1 < props.modelValue &&\n item > props.modelValue\n const showWhenAllowHalf =\n props.allowHalf &&\n pointerAtLeftHalf.value &&\n item - 0.5 <= currentValue.value &&\n item > currentValue.value\n return showWhenDisabled || showWhenAllowHalf\n }\n\n function getIconStyle(item: number) {\n const voidColor = rateDisabled.value\n ? props.disabledVoidColor\n : props.voidColor\n return {\n color: item <= currentValue.value ? activeColor.value : voidColor,\n }\n }\n\n return {\n hoverIndex,\n currentValue,\n rateDisabled,\n text,\n decimalStyle,\n decimalIconComponent,\n iconComponents,\n\n showDecimalIcon,\n getIconStyle,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;AAiDA,yBACE,OACA,KACA;AACA,QAAM,mBAAmB,CACvB,QACyD,SAAS;AAEpE,QAAM,cAAc,OAAO,KAAK,KAC7B,IAAI,CAAC,QAAQ,CAAC,KACd,OAAO,CAAC,QAAQ;AACf,UAAM,MAAM,IAAI;AAChB,UAAM,WAAW,iBAAiB,OAAO,IAAI,WAAW;AACxD,WAAO,WAAW,QAAQ,MAAM,SAAS;AAAA,KAE1C,KAAK,CAAC,GAAG,MAAM,IAAI;AACtB,QAAM,eAAe,IAAI,YAAY;AACrC,SAAQ,iBAAiB,iBAAiB,aAAa,SAAU;AAAA;AAGnE,aAAe,gBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,SAAS,OAAO,WAAW;AAEjC,UAAM,eAAe,IAAI,MAAM;AAC/B,UAAM,aAAa,IAAI;AACvB,UAAM,oBAAoB,IAAI;AAE9B,UAAM,eAAe,SAAS,MAAM,MAAM,YAAY,OAAO;AAC7D,UAAM,OAAO,SAAS,MAAM;AAC1B,UAAI,SAAS;AACb,UAAI,MAAM,WAAW;AACnB,iBAAS,MAAM,cAAc,QAC3B,mBACA,aAAa,QAAQ,GAAG,MAAM,eAAe,GAAG,aAAa;AAAA,iBAEtD,MAAM,UAAU;AACzB,iBAAS,MAAM,MAAM,KAAK,KAAK,aAAa,SAAS;AAAA;AAEvD,aAAO;AAAA;AAET,UAAM,eAAe,SACnB,MAAM,MAAM,aAAa,MAAM,KAAK,MAAM,MAAM,cAAc;AAEhE,UAAM,WAAW,SAAS,MACxB,QAAQ,MAAM,UACV;AAAA,OACG,MAAM,eAAe,MAAM,OAAO;AAAA,OAClC,MAAM,gBAAgB,EAAE,OAAO,MAAM,OAAO,IAAI,UAAU;AAAA,OAC1D,MAAM,MAAM,MAAM,OAAO;AAAA,QAE5B,MAAM;AAEZ,UAAM,cAAc,SAAS,MAC3B,gBAAgB,aAAa,OAAO,SAAS;AAE/C,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,QAAQ;AACZ,UAAI,aAAa,OAAO;AACtB,gBAAQ,GAAG,aAAa;AAAA,iBACf,MAAM,WAAW;AAC1B,gBAAQ;AAAA;AAEV,aAAO;AAAA,QACL,OAAO,YAAY;AAAA,QACnB;AAAA;AAAA;AAGJ,UAAM,eAAe,SAAS,MAC5B,QAAQ,MAAM,SACV;AAAA,OACG,MAAM,eAAe,MAAM,MAAM;AAAA,OACjC,MAAM,gBAAgB;AAAA,QACrB,OAAO,MAAM,MAAM;AAAA,QACnB,UAAU;AAAA;AAAA,OAEX,MAAM,MAAM,MAAM,MAAM;AAAA,QAE3B,MAAM;AAEZ,UAAM,uBAAuB,SAAS,MACpC,gBAAgB,MAAM,YAAY,aAAa;AAEjD,UAAM,gBAAgB,SAAS,MAC7B,aAAa,QAAQ,MAAM,mBAAmB,MAAM;AAEtD,UAAM,kBAAkB,SAAS,MAC/B,gBAAgB,aAAa,OAAO,aAAa;AAEnD,UAAM,iBAAiB,SAAS,MAAM;AACpC,YAAM,SAAS,MAAM,MAAM;AAC3B,YAAM,YAAY,aAAa;AAC/B,aAAO,KAAK,gBAAgB,OAAO,GAAG;AACtC,aAAO,KAAK,cAAc,OAAO,WAAW,MAAM;AAClD,aAAO;AAAA;AAGT,6BAAyB,MAAc;AACrC,YAAM,mBACJ,aAAa,SACb,aAAa,QAAQ,KACrB,OAAO,IAAI,MAAM,cACjB,OAAO,MAAM;AACf,YAAM,oBACJ,MAAM,aACN,kBAAkB,SAClB,OAAO,OAAO,aAAa,SAC3B,OAAO,aAAa;AACtB,aAAO,oBAAoB;AAAA;AAG7B,0BAAsB,MAAc;AAClC,YAAM,YAAY,aAAa,QAC3B,MAAM,oBACN,MAAM;AACV,aAAO;AAAA,QACL,OAAO,QAAQ,aAAa,QAAQ,YAAY,QAAQ;AAAA;AAAA;AAI5D,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
@@ -48,4 +48,4 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
48
48
  }
49
49
 
50
50
  export { render };
51
- //# sourceMappingURL=index.vue_vue&type=template&id=55b4fa7d&lang.mjs.map
51
+ //# sourceMappingURL=rate.vue_vue&type=template&id=38c42df6&lang.mjs.map