hy-app 0.4.13 → 0.5.0

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 (211) hide show
  1. package/components/hy-action-sheet/hy-action-sheet.vue +155 -238
  2. package/components/hy-action-sheet/props.ts +68 -15
  3. package/components/hy-action-sheet/typing.d.ts +115 -115
  4. package/components/hy-address-picker/hy-address-picker.vue +185 -289
  5. package/components/hy-address-picker/props.ts +97 -21
  6. package/components/hy-address-picker/typing.d.ts +90 -89
  7. package/components/hy-avatar/hy-avatar.vue +121 -204
  8. package/components/hy-avatar/props.ts +76 -18
  9. package/components/hy-avatar/typing.d.ts +63 -62
  10. package/components/hy-back-top/hy-back-top.vue +65 -120
  11. package/components/hy-back-top/props.ts +57 -16
  12. package/components/hy-back-top/typing.d.ts +43 -42
  13. package/components/hy-badge/hy-badge.vue +66 -138
  14. package/components/hy-badge/props.ts +73 -17
  15. package/components/hy-badge/typing.d.ts +59 -58
  16. package/components/hy-button/hy-button.vue +226 -375
  17. package/components/hy-button/props.ts +129 -158
  18. package/components/hy-calendar/header.vue +48 -64
  19. package/components/hy-calendar/hy-calendar.vue +274 -438
  20. package/components/hy-calendar/month.vue +508 -516
  21. package/components/hy-calendar/props.ts +157 -35
  22. package/components/hy-calendar/typing.d.ts +129 -128
  23. package/components/hy-card/hy-card.vue +118 -240
  24. package/components/hy-card/index.scss +1 -2
  25. package/components/hy-card/props.ts +122 -27
  26. package/components/hy-card/typing.d.ts +119 -118
  27. package/components/hy-cell/hy-cell.vue +176 -258
  28. package/components/hy-cell/props.ts +71 -17
  29. package/components/hy-cell/typing.d.ts +87 -86
  30. package/components/hy-check-button/hy-check-button.vue +69 -139
  31. package/components/hy-check-button/props.ts +72 -18
  32. package/components/hy-check-button/typing.d.ts +74 -73
  33. package/components/hy-checkbox/hy-checkbox.vue +170 -263
  34. package/components/hy-checkbox/props.ts +94 -24
  35. package/components/hy-checkbox/typing.d.ts +72 -72
  36. package/components/hy-checkbox-group/hy-checkbox-group.vue +25 -100
  37. package/components/hy-checkbox-group/props.ts +80 -0
  38. package/components/hy-checkbox-group/typing.d.ts +65 -65
  39. package/components/hy-checkbox-item/hy-checkbox-item.vue +140 -177
  40. package/components/hy-checkbox-item/props.ts +24 -0
  41. package/components/hy-checkbox-item/typing.d.ts +4 -3
  42. package/components/hy-code-input/hy-code-input.vue +179 -262
  43. package/components/hy-code-input/props.ts +84 -18
  44. package/components/hy-code-input/typing.d.ts +71 -71
  45. package/components/hy-config-provider/hy-config-provider.vue +28 -50
  46. package/components/hy-config-provider/props.ts +26 -11
  47. package/components/hy-config-provider/typing.d.ts +20 -20
  48. package/components/hy-count-down/hy-count-down.vue +103 -131
  49. package/components/hy-count-down/props.ts +30 -8
  50. package/components/hy-count-down/typing.d.ts +25 -25
  51. package/components/hy-count-to/hy-count-to.vue +148 -213
  52. package/components/hy-count-to/props.ts +60 -15
  53. package/components/hy-count-to/typing.d.ts +46 -46
  54. package/components/hy-coupon/README.md +133 -0
  55. package/components/hy-coupon/hy-coupon.vue +180 -0
  56. package/components/hy-coupon/index.scss +553 -0
  57. package/components/hy-coupon/props.ts +129 -0
  58. package/components/hy-coupon/typing.d.ts +146 -0
  59. package/components/hy-datetime-picker/hy-datetime-picker.vue +415 -580
  60. package/components/hy-datetime-picker/props.ts +142 -32
  61. package/components/hy-datetime-picker/typing.d.ts +132 -132
  62. package/components/hy-divider/hy-divider.vue +90 -169
  63. package/components/hy-divider/props.ts +78 -19
  64. package/components/hy-divider/typing.d.ts +60 -60
  65. package/components/hy-dropdown/hy-dropdown.vue +37 -71
  66. package/components/hy-dropdown/props.ts +38 -15
  67. package/components/hy-dropdown/typing.d.ts +44 -44
  68. package/components/hy-dropdown-item/hy-dropdown-item.vue +141 -173
  69. package/components/hy-dropdown-item/props.ts +19 -8
  70. package/components/hy-empty/hy-empty.vue +75 -129
  71. package/components/hy-empty/props.ts +57 -15
  72. package/components/hy-empty/typing.d.ts +84 -84
  73. package/components/hy-flex/hy-flex.vue +33 -88
  74. package/components/hy-flex/props.ts +58 -0
  75. package/components/hy-flex/typing.d.ts +14 -16
  76. package/components/hy-float-button/hy-float-button.vue +289 -406
  77. package/components/hy-float-button/props.ts +109 -25
  78. package/components/hy-folding-panel/hy-folding-panel.vue +86 -374
  79. package/components/hy-folding-panel/props.ts +40 -15
  80. package/components/hy-folding-panel/typing.d.ts +52 -63
  81. package/components/hy-folding-panel-item/hy-folding-panel-item.vue +186 -228
  82. package/components/hy-folding-panel-item/index.scss +87 -0
  83. package/components/hy-folding-panel-item/props.ts +81 -0
  84. package/components/hy-folding-panel-item/typing.d.ts +23 -0
  85. package/components/hy-form/hy-form.vue +172 -212
  86. package/components/hy-form/props.ts +37 -0
  87. package/components/hy-form/typing.d.ts +68 -61
  88. package/components/hy-form-group/typing.d.ts +74 -74
  89. package/components/hy-form-item/hy-form-item.vue +100 -129
  90. package/components/hy-form-item/props.ts +25 -0
  91. package/components/hy-form-item/typing.d.ts +40 -37
  92. package/components/hy-grid/hy-grid.vue +76 -132
  93. package/components/hy-grid/props.ts +58 -16
  94. package/components/hy-grid/typing.d.ts +66 -66
  95. package/components/hy-icon/hy-icon.vue +84 -161
  96. package/components/hy-icon/props.ts +76 -22
  97. package/components/hy-icon/typing.d.ts +83 -82
  98. package/components/hy-image/hy-image.vue +142 -272
  99. package/components/hy-image/props.ts +105 -23
  100. package/components/hy-image/typing.d.ts +84 -87
  101. package/components/hy-input/hy-input.vue +230 -421
  102. package/components/hy-input/props.ts +183 -35
  103. package/components/hy-input/typing.d.ts +169 -169
  104. package/components/hy-line/hy-line.vue +34 -72
  105. package/components/hy-line/props.ts +41 -10
  106. package/components/hy-line/typing.d.ts +29 -29
  107. package/components/hy-line-progress/hy-line-progress.vue +66 -101
  108. package/components/hy-line-progress/props.ts +31 -10
  109. package/components/hy-line-progress/typing.d.ts +29 -29
  110. package/components/hy-list/hy-list.vue +151 -220
  111. package/components/hy-list/props.ts +67 -16
  112. package/components/hy-list/typing.d.ts +52 -52
  113. package/components/hy-loading/hy-loading.vue +63 -119
  114. package/components/hy-loading/props.ts +63 -15
  115. package/components/hy-loading/typing.d.ts +49 -49
  116. package/components/hy-menu/hy-menu.vue +124 -166
  117. package/components/hy-menu/props.ts +42 -10
  118. package/components/hy-menu/typing.d.ts +60 -60
  119. package/components/hy-modal/hy-modal.vue +127 -218
  120. package/components/hy-modal/props.ts +89 -24
  121. package/components/hy-navbar/hy-navbar.vue +104 -177
  122. package/components/hy-navbar/props.ts +76 -22
  123. package/components/hy-navbar/typing.d.ts +81 -81
  124. package/components/hy-notice-bar/hy-notice-bar.vue +67 -144
  125. package/components/hy-notice-bar/props.ts +80 -19
  126. package/components/hy-notice-bar/typing.d.ts +62 -62
  127. package/components/hy-notify/hy-notify.vue +128 -177
  128. package/components/hy-notify/props.ts +49 -12
  129. package/components/hy-notify/typing.d.ts +45 -41
  130. package/components/hy-number-step/hy-number-step.vue +281 -394
  131. package/components/hy-number-step/props.ts +110 -27
  132. package/components/hy-number-step/typing.d.ts +120 -120
  133. package/components/hy-overlay/hy-overlay.vue +39 -66
  134. package/components/hy-overlay/props.ts +31 -8
  135. package/components/hy-pagination/hy-pagination.vue +100 -155
  136. package/components/hy-pagination/props.ts +53 -13
  137. package/components/hy-picker/hy-picker.vue +309 -430
  138. package/components/hy-picker/index.scss +8 -12
  139. package/components/hy-picker/props.ts +110 -26
  140. package/components/hy-popover/hy-popover.vue +190 -252
  141. package/components/hy-popover/props.ts +48 -10
  142. package/components/hy-popup/hy-popup.vue +162 -248
  143. package/components/hy-popup/props.ts +82 -18
  144. package/components/hy-price/hy-price.vue +45 -104
  145. package/components/hy-price/props.ts +52 -12
  146. package/components/hy-price/typing.d.ts +41 -36
  147. package/components/hy-qrcode/hy-qrcode.vue +115 -185
  148. package/components/hy-qrcode/props.ts +68 -18
  149. package/components/hy-qrcode/typing.d.ts +67 -66
  150. package/components/hy-radio/hy-radio.vue +161 -259
  151. package/components/hy-radio/props.ts +95 -25
  152. package/components/hy-radio/typing.d.ts +85 -84
  153. package/components/hy-rate/hy-rate.vue +185 -270
  154. package/components/hy-rate/props.ts +76 -18
  155. package/components/hy-rate/typing.d.ts +61 -60
  156. package/components/hy-read-more/hy-read-more.vue +93 -136
  157. package/components/hy-read-more/props.ts +43 -13
  158. package/components/hy-scroll-list/hy-scroll-list.vue +81 -102
  159. package/components/hy-scroll-list/props.ts +22 -11
  160. package/components/hy-search/hy-search.vue +155 -284
  161. package/components/hy-search/props.ts +130 -25
  162. package/components/hy-signature/hy-signature.vue +491 -635
  163. package/components/hy-signature/props.ts +115 -26
  164. package/components/hy-signature/typing.d.ts +138 -138
  165. package/components/hy-slider/hy-slider.vue +388 -477
  166. package/components/hy-slider/props.ts +75 -19
  167. package/components/hy-steps/hy-steps.vue +212 -279
  168. package/components/hy-steps/props.ts +47 -13
  169. package/components/hy-submit-bar/hy-submit-bar.vue +137 -222
  170. package/components/hy-submit-bar/props.ts +89 -20
  171. package/components/hy-submit-bar/typing.d.ts +86 -85
  172. package/components/hy-subsection/hy-subsection.vue +132 -185
  173. package/components/hy-subsection/props.ts +50 -17
  174. package/components/hy-subsection/typing.d.ts +52 -52
  175. package/components/hy-swipe-action/hy-swipe-action.vue +228 -283
  176. package/components/hy-swipe-action/props.ts +43 -18
  177. package/components/hy-swipe-action/typing.d.ts +46 -46
  178. package/components/hy-swiper/hy-swiper.vue +159 -286
  179. package/components/hy-swiper/props.ts +126 -28
  180. package/components/hy-swiper/typing.d.ts +115 -115
  181. package/components/hy-switch/hy-switch.vue +112 -176
  182. package/components/hy-switch/props.ts +60 -15
  183. package/components/hy-switch/typing.d.ts +63 -63
  184. package/components/hy-tabBar/hy-tabBar.vue +64 -60
  185. package/components/hy-tabs/hy-tabs.vue +277 -380
  186. package/components/hy-tabs/props.ts +75 -18
  187. package/components/hy-tag/hy-tag.vue +111 -204
  188. package/components/hy-tag/props.ts +81 -19
  189. package/components/hy-text/hy-text.vue +200 -322
  190. package/components/hy-text/props.ts +107 -28
  191. package/components/hy-textarea/hy-textarea.vue +147 -256
  192. package/components/hy-textarea/props.ts +112 -25
  193. package/components/hy-textarea/typing.d.ts +42 -42
  194. package/components/hy-toast/hy-toast.vue +135 -143
  195. package/components/hy-tooltip/hy-tooltip.vue +220 -306
  196. package/components/hy-tooltip/props.ts +79 -15
  197. package/components/hy-transition/hy-transition.vue +111 -138
  198. package/components/hy-transition/props.ts +30 -8
  199. package/components/hy-upload/hy-upload.vue +320 -469
  200. package/components/hy-upload/props.ts +130 -27
  201. package/components/hy-warn/hy-warn.vue +80 -129
  202. package/components/hy-warn/props.ts +47 -12
  203. package/components/hy-waterfall/hy-waterfall.vue +139 -163
  204. package/components/hy-waterfall/props.ts +19 -7
  205. package/components/hy-watermark/hy-watermark.vue +762 -870
  206. package/components/hy-watermark/props.ts +103 -22
  207. package/global.d.ts +2 -0
  208. package/libs/css/theme.scss +3 -3
  209. package/package.json +2 -2
  210. package/web-types.json +1 -1
  211. package/components/hy-folding-panel/index.scss +0 -9
@@ -1,29 +1,112 @@
1
- import type IProps from "./typing";
1
+ import type HyIconProps from './typing'
2
+ import type { PropType } from 'vue'
2
3
 
3
- const defaultProps: IProps = {
4
- modelValue: 0,
5
- min: 1,
6
- max: Number.MAX_SAFE_INTEGER,
7
- step: 1,
8
- integer: false,
9
- disabled: false,
10
- disabledInput: false,
11
- asyncChange: false,
12
- inputWidth: 35,
13
- showMinus: true,
14
- showPlus: true,
15
- decimalLength: null,
16
- longPress: true,
17
- color: "",
18
- buttonWidth: 30,
19
- buttonSize: 30,
20
- buttonRadius: "",
21
- bgColor: "",
22
- inputBgColor: "",
23
- cursorSpacing: 100,
24
- disableMinus: false,
25
- disablePlus: false,
26
- miniMode: false,
27
- };
4
+ const numberStepProps = {
5
+ /** 用于双向绑定的值,初始化时设置设为默认min值(最小值) */
6
+ modelValue: {
7
+ type: Number,
8
+ default: 0,
9
+ required: true
10
+ },
11
+ /** 最小值 */
12
+ min: {
13
+ type: Number,
14
+ default: 1
15
+ },
16
+ /** 最大值 */
17
+ max: {
18
+ type: Number,
19
+ default: Number.MAX_SAFE_INTEGER
20
+ },
21
+ /** 加减的步长,可为小数 */
22
+ step: {
23
+ type: Number,
24
+ default: 1
25
+ },
26
+ /** 是否只允许输入整数 */
27
+ integer: {
28
+ type: Boolean,
29
+ default: false
30
+ },
31
+ /** 是否禁用,包括输入框,加减按钮 */
32
+ disabled: {
33
+ type: Boolean,
34
+ default: false
35
+ },
36
+ /** 是否禁用输入框 */
37
+ disabledInput: {
38
+ type: Boolean,
39
+ default: false
40
+ },
41
+ /** 是否开启异步变更,开启后需要手动控制输入值 */
42
+ asyncChange: {
43
+ type: Boolean,
44
+ default: false
45
+ },
46
+ /** 输入框宽度,单位为px */
47
+ inputWidth: {
48
+ type: [String, Number],
49
+ default: 35
50
+ },
51
+ /** 是否显示减少按钮 */
52
+ showMinus: {
53
+ type: Boolean,
54
+ default: true
55
+ },
56
+ /** 是否显示增加按钮 */
57
+ showPlus: {
58
+ type: Boolean,
59
+ default: true
60
+ },
61
+ /** 显示的小数位数 */
62
+ decimalLength: Number,
63
+ /** 是否开启长按加减手势 */
64
+ longPress: {
65
+ type: Boolean,
66
+ default: true
67
+ },
68
+ /** 输入框文字和加减按钮图标的颜色 */
69
+ color: String,
70
+ /** 按钮宽度 */
71
+ buttonWidth: {
72
+ type: [String, Number],
73
+ default: 30
74
+ },
75
+ /** 按钮大小,宽高等于此值,单位px,输入框高度和此值保持一致 */
76
+ buttonSize: {
77
+ type: [String, Number],
78
+ default: 30
79
+ },
80
+ /** 按钮圆角 */
81
+ buttonRadius: [String, Number],
82
+ /** 输入框和按钮的背景颜色 */
83
+ bgColor: String,
84
+ /** 输入框背景颜色 */
85
+ inputBgColor: String,
86
+ /** 指定光标于键盘的距离,避免键盘遮挡输入框,单位px */
87
+ cursorSpacing: {
88
+ type: Number,
89
+ default: 100
90
+ },
91
+ /** 是否禁用减少按钮 */
92
+ disableMinus: {
93
+ type: Boolean,
94
+ default: false
95
+ },
96
+ /** 是否禁用增加按钮 */
97
+ disablePlus: {
98
+ type: Boolean,
99
+ default: false
100
+ },
101
+ /** 减号按钮图标 */
102
+ minusIcon: Object as PropType<HyIconProps>,
103
+ /** 加号按钮图标 */
104
+ plusIcon: Object as PropType<HyIconProps>,
105
+ /** 迷你模式 */
106
+ miniMode: {
107
+ type: Boolean,
108
+ default: false
109
+ }
110
+ }
28
111
 
29
- export default defaultProps;
112
+ export default numberStepProps
@@ -1,126 +1,126 @@
1
- import type { CSSProperties } from "vue";
2
- import type HyIconProps from "../hy-icon/typing";
1
+ import type { CSSProperties } from 'vue'
2
+ import type HyIconProps from '../hy-icon/typing'
3
3
 
4
4
  export default interface HyNumberStepProps {
5
- /**
6
- * @description 用于双向绑定的值,初始化时设置设为默认min值(最小值) (默认 0 )
7
- * */
8
- modelValue: number;
9
- /**
10
- * @description 最小值 (默认 1 )
11
- * */
12
- min?: number;
13
- /**
14
- * @description 最大值 (默认 Number.MAX_SAFE_INTEGER )
15
- * */
16
- max?: number;
17
- /**
18
- * @description 加减的步长,可为小数 (默认 1 )
19
- * */
20
- step?: number;
21
- /**
22
- * @description 是否只允许输入整数 (默认 false )
23
- * */
24
- integer?: boolean;
25
- /**
26
- * @description 是否禁用,包括输入框,加减按钮 (默认 false )
27
- * */
28
- disabled?: boolean;
29
- /**
30
- * @description 是否禁用输入框 (默认 false )
31
- * */
32
- disabledInput?: boolean;
33
- /**
34
- * @description 是否开启异步变更,开启后需要手动控制输入值 (默认 false )
35
- * */
36
- asyncChange?: boolean;
37
- /**
38
- * @description 输入框宽度,单位为px (默认 35 )
39
- * */
40
- inputWidth?: number;
41
- /**
42
- * @description 是否显示减少按钮 (默认 true )
43
- * */
44
- showMinus?: boolean;
45
- /**
46
- * @description 是否显示增加按钮 (默认 true )
47
- * */
48
- showPlus?: boolean;
49
- /**
50
- * @description 显示的小数位数
51
- * */
52
- decimalLength?: number | null;
53
- /**
54
- * @description 是否开启长按加减手势 (默认 true )
55
- * */
56
- longPress?: boolean;
57
- /**
58
- * @description 输入框文字和加减按钮图标的颜色 (默认 '#323233' )
59
- * */
60
- color?: string;
61
- /**
62
- * @description 按钮宽度(默认 '30' )
63
- * */
64
- buttonWidth?: number | string;
65
- /**
66
- * @description 按钮大小,宽高等于此值,单位px,输入框高度和此值保持一致 (默认 30 )
67
- * */
68
- buttonSize?: number | string;
69
- /**
70
- * @description 按钮圆角 (默认 '0px' )
71
- * */
72
- buttonRadius?: number | string;
73
- /**
74
- * @description 输入框和按钮的背景颜色 (默认 '#EBECEE' )
75
- * */
76
- bgColor?: string;
77
- /**
78
- * @description 输入框背景颜色 (默认 '#EBECEE' )
79
- * */
80
- inputBgColor?: string;
81
- /**
82
- * @description 指定光标于键盘的距离,避免键盘遮挡输入框,单位px (默认 100 )
83
- * */
84
- cursorSpacing?: number;
85
- /**
86
- * @description 是否禁用减少按钮 (默认 false )
87
- * */
88
- disableMinus?: boolean;
89
- /**
90
- * @description 是否禁用增加按钮 (默认 false )
91
- * */
92
- disablePlus?: boolean;
93
- /**
94
- * @description 减号按钮图标
95
- * */
96
- minusIcon?: Partial<HyIconProps>;
97
- /**
98
- * @description 加号按钮图标
99
- * */
100
- plusIcon?: Partial<HyIconProps>;
101
- /**
102
- * @description 迷你模式(默认 false )
103
- * */
104
- miniMode?: boolean;
105
- /**
106
- * @description 定义需要用到的外部样式
107
- * */
108
- customStyle?: CSSProperties;
5
+ /**
6
+ * @description 用于双向绑定的值,初始化时设置设为默认min值(最小值) (默认 0 )
7
+ * */
8
+ modelValue: number
9
+ /**
10
+ * @description 最小值 (默认 1 )
11
+ * */
12
+ min?: number
13
+ /**
14
+ * @description 最大值 (默认 Number.MAX_SAFE_INTEGER )
15
+ * */
16
+ max?: number
17
+ /**
18
+ * @description 加减的步长,可为小数 (默认 1 )
19
+ * */
20
+ step?: number
21
+ /**
22
+ * @description 是否只允许输入整数 (默认 false )
23
+ * */
24
+ integer?: boolean
25
+ /**
26
+ * @description 是否禁用,包括输入框,加减按钮 (默认 false )
27
+ * */
28
+ disabled?: boolean
29
+ /**
30
+ * @description 是否禁用输入框 (默认 false )
31
+ * */
32
+ disabledInput?: boolean
33
+ /**
34
+ * @description 是否开启异步变更,开启后需要手动控制输入值 (默认 false )
35
+ * */
36
+ asyncChange?: boolean
37
+ /**
38
+ * @description 输入框宽度,单位为px (默认 35 )
39
+ * */
40
+ inputWidth?: number
41
+ /**
42
+ * @description 是否显示减少按钮 (默认 true )
43
+ * */
44
+ showMinus?: boolean
45
+ /**
46
+ * @description 是否显示增加按钮 (默认 true )
47
+ * */
48
+ showPlus?: boolean
49
+ /**
50
+ * @description 显示的小数位数
51
+ * */
52
+ decimalLength?: number | null
53
+ /**
54
+ * @description 是否开启长按加减手势 (默认 true )
55
+ * */
56
+ longPress?: boolean
57
+ /**
58
+ * @description 输入框文字和加减按钮图标的颜色 (默认 '#323233' )
59
+ * */
60
+ color?: string
61
+ /**
62
+ * @description 按钮宽度(默认 '30' )
63
+ * */
64
+ buttonWidth?: number | string
65
+ /**
66
+ * @description 按钮大小,宽高等于此值,单位px,输入框高度和此值保持一致 (默认 30 )
67
+ * */
68
+ buttonSize?: number | string
69
+ /**
70
+ * @description 按钮圆角 (默认 '0px' )
71
+ * */
72
+ buttonRadius?: number | string
73
+ /**
74
+ * @description 输入框和按钮的背景颜色 (默认 '#EBECEE' )
75
+ * */
76
+ bgColor?: string
77
+ /**
78
+ * @description 输入框背景颜色 (默认 '#EBECEE' )
79
+ * */
80
+ inputBgColor?: string
81
+ /**
82
+ * @description 指定光标于键盘的距离,避免键盘遮挡输入框,单位px (默认 100 )
83
+ * */
84
+ cursorSpacing?: number
85
+ /**
86
+ * @description 是否禁用减少按钮 (默认 false )
87
+ * */
88
+ disableMinus?: boolean
89
+ /**
90
+ * @description 是否禁用增加按钮 (默认 false )
91
+ * */
92
+ disablePlus?: boolean
93
+ /**
94
+ * @description 减号按钮图标
95
+ * */
96
+ minusIcon?: Partial<HyIconProps>
97
+ /**
98
+ * @description 加号按钮图标
99
+ * */
100
+ plusIcon?: Partial<HyIconProps>
101
+ /**
102
+ * @description 迷你模式(默认 false )
103
+ * */
104
+ miniMode?: boolean
105
+ /**
106
+ * @description 定义需要用到的外部样式
107
+ * */
108
+ customStyle?: CSSProperties
109
109
  }
110
110
 
111
111
  export interface INumberStepEmits {
112
- /** 输入框得到焦点触发 */
113
- (e: "focus", value: string): void;
114
- /** 输入框失去焦点时触发 */
115
- (e: "blur", value: string): void;
116
- /** 超过范围阈值时触发 */
117
- (e: "overLimit", type: "minus" | "plus"): void;
118
- /** 输入框内容发生变化时触发 */
119
- (e: "change", value: string | number): void;
120
- /** 点击增加按钮触发 */
121
- (e: "plus", value: string): void;
122
- /** 点击减少按钮触发 */
123
- (e: "minus", value: string): void;
124
- /** 值更新触发 */
125
- (e: "update:modelValue", value: string | number): void;
112
+ /** 输入框得到焦点触发 */
113
+ (e: 'focus', value: string): void
114
+ /** 输入框失去焦点时触发 */
115
+ (e: 'blur', value: string): void
116
+ /** 超过范围阈值时触发 */
117
+ (e: 'overLimit', type: 'minus' | 'plus'): void
118
+ /** 输入框内容发生变化时触发 */
119
+ (e: 'change', value: string | number): void
120
+ /** 点击增加按钮触发 */
121
+ (e: 'plus', value: string): void
122
+ /** 点击减少按钮触发 */
123
+ (e: 'minus', value: string): void
124
+ /** 值更新触发 */
125
+ (e: 'update:modelValue', value: string | number): void
126
126
  }
@@ -1,87 +1,60 @@
1
1
  <template>
2
- <HyTransition
3
- :show="show"
4
- :custom-class="`hy-overlay ${customClass}`"
5
- :duration="duration"
6
- :custom-style="overlayStyle"
7
- @click="clickHandler"
8
- >
9
- <slot />
10
- </HyTransition>
2
+ <hy-transition
3
+ :show="show"
4
+ :custom-class="`hy-overlay ${customClass}`"
5
+ :duration="duration"
6
+ :custom-style="overlayStyle"
7
+ @click="clickHandler"
8
+ >
9
+ <slot />
10
+ </hy-transition>
11
11
  </template>
12
12
 
13
13
  <script lang="ts">
14
14
  export default {
15
- name: "hy-overlay",
16
- options: {
17
- addGlobalClass: true,
18
- virtualHost: true,
19
- styleIsolation: "shared",
20
- },
21
- };
15
+ name: 'hy-overlay',
16
+ options: {
17
+ addGlobalClass: true,
18
+ virtualHost: true,
19
+ styleIsolation: 'shared'
20
+ }
21
+ }
22
22
  </script>
23
23
 
24
24
  <script setup lang="ts">
25
- import { computed } from "vue";
26
- import type { CSSProperties, PropType } from "vue";
27
- import type { IOverlayEmits } from "./typing";
28
- import HyTransition from "../hy-transition/hy-transition.vue";
25
+ import { computed } from 'vue'
26
+ import type { CSSProperties } from 'vue'
27
+ import type { IOverlayEmits } from './typing'
28
+ import overlayProps from './props'
29
+ // 组件
30
+ import HyTransition from '../hy-transition/hy-transition.vue'
29
31
 
30
32
  /**
31
33
  * 创建一个遮罩层,用于强调特定的页面元素,并阻止用户对遮罩下层的内容进行操作,一般用于弹窗场景
32
34
  * @displayName hy-overlay
33
35
  */
34
- defineOptions({});
36
+ defineOptions({})
35
37
 
36
- // const props = withDefaults(defineProps<IProps>(), defaultProps)
37
- const props = defineProps({
38
- /** 是否显示遮罩 */
39
- show: {
40
- type: Boolean,
41
- default: false,
42
- },
43
- /** zIndex 层级 */
44
- zIndex: {
45
- type: Number,
46
- default: 10070,
47
- },
48
- /** 动画时长,单位毫秒 */
49
- duration: {
50
- type: Number,
51
- default: 300,
52
- },
53
- /** 不透明度值,当做rgba的第四个参数 */
54
- opacity: {
55
- type: Number,
56
- default: 0.5,
57
- },
58
- /** 定义需要用到的外部样式 */
59
- customStyle: {
60
- type: Object as PropType<CSSProperties>,
61
- default: () => {},
62
- },
63
- /** 自定义外部类名 */
64
- customClass: String,
65
- });
66
- const emit = defineEmits<IOverlayEmits>();
38
+ const props = defineProps(overlayProps)
39
+ const emit = defineEmits<IOverlayEmits>()
67
40
 
68
41
  const overlayStyle = computed<CSSProperties>(() => {
69
- const style: CSSProperties = {
70
- position: "fixed",
71
- top: 0,
72
- left: 0,
73
- right: 0,
74
- zIndex: props.zIndex,
75
- bottom: 0,
76
- "background-color": `rgba(0, 0, 0, ${props.opacity})`,
77
- };
78
- return Object.assign(style, props.customStyle);
79
- });
42
+ const style: CSSProperties = {
43
+ position: 'fixed',
44
+ top: 0,
45
+ left: 0,
46
+ right: 0,
47
+ zIndex: props.zIndex,
48
+ bottom: 0,
49
+ 'background-color': `rgba(0, 0, 0, ${props.opacity})`
50
+ }
51
+ return Object.assign(style, props.customStyle)
52
+ })
80
53
  const clickHandler = () => {
81
- emit("click");
82
- };
54
+ emit('click')
55
+ }
83
56
  </script>
84
57
 
85
58
  <style lang="scss" scoped>
86
- @import "./index.scss";
59
+ @import './index.scss';
87
60
  </style>
@@ -1,10 +1,33 @@
1
- import type IProps from "./typing";
1
+ import type { CSSProperties, PropType } from 'vue'
2
2
 
3
- const defaultProps: IProps = {
4
- show: false,
5
- zIndex: 10070,
6
- duration: 300,
7
- opacity: 0.5,
8
- };
3
+ const overlayProps = {
4
+ /** 是否显示遮罩 */
5
+ show: {
6
+ type: Boolean,
7
+ default: false
8
+ },
9
+ /** zIndex 层级 */
10
+ zIndex: {
11
+ type: Number,
12
+ default: 10070
13
+ },
14
+ /** 动画时长,单位毫秒 */
15
+ duration: {
16
+ type: Number,
17
+ default: 300
18
+ },
19
+ /** 不透明度值,当做rgba的第四个参数 */
20
+ opacity: {
21
+ type: Number,
22
+ default: 0.5
23
+ },
24
+ /** 定义需要用到的外部样式 */
25
+ customStyle: {
26
+ type: Object as PropType<CSSProperties>,
27
+ default: () => {}
28
+ },
29
+ /** 自定义外部类名 */
30
+ customClass: String
31
+ }
9
32
 
10
- export default defaultProps;
33
+ export default overlayProps