uview-pro 0.2.0 → 0.2.2

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 (247) hide show
  1. package/changelog.md +501 -459
  2. package/components/common/props.ts +22 -22
  3. package/components/u-action-sheet/types.ts +35 -35
  4. package/components/u-action-sheet/u-action-sheet.vue +160 -160
  5. package/components/u-alert-tips/types.ts +39 -39
  6. package/components/u-alert-tips/u-alert-tips.vue +212 -212
  7. package/components/u-avatar/types.ts +34 -34
  8. package/components/u-avatar/u-avatar.vue +193 -193
  9. package/components/u-avatar-cropper/types.ts +23 -23
  10. package/components/u-avatar-cropper/u-avatar-cropper.vue +286 -286
  11. package/components/u-avatar-cropper/weCropper.d.ts +62 -62
  12. package/components/u-avatar-cropper/weCropper.js +1253 -1253
  13. package/components/u-avatar-cropper/weCropper.ts +1255 -1255
  14. package/components/u-back-top/types.ts +39 -39
  15. package/components/u-back-top/u-back-top.vue +125 -125
  16. package/components/u-badge/types.ts +36 -36
  17. package/components/u-badge/u-badge.vue +165 -165
  18. package/components/u-button/types.ts +66 -66
  19. package/components/u-button/u-button.vue +556 -556
  20. package/components/u-calendar/types.ts +73 -63
  21. package/components/u-calendar/u-calendar.vue +638 -592
  22. package/components/u-car-keyboard/types.ts +12 -12
  23. package/components/u-car-keyboard/u-car-keyboard.vue +234 -234
  24. package/components/u-card/types.ts +59 -59
  25. package/components/u-card/u-card.vue +194 -194
  26. package/components/u-cell-group/types.ts +17 -17
  27. package/components/u-cell-group/u-cell-group.vue +50 -50
  28. package/components/u-cell-item/types.ts +54 -54
  29. package/components/u-cell-item/u-cell-item.vue +202 -202
  30. package/components/u-checkbox/types.ts +31 -31
  31. package/components/u-checkbox/u-checkbox.vue +267 -267
  32. package/components/u-checkbox-group/types.ts +32 -32
  33. package/components/u-checkbox-group/u-checkbox-group.vue +79 -79
  34. package/components/u-circle-progress/types.ts +52 -52
  35. package/components/u-circle-progress/u-circle-progress.vue +187 -187
  36. package/components/u-city-select/types.ts +20 -20
  37. package/components/u-city-select/u-city-select.vue +236 -236
  38. package/components/u-col/types.ts +30 -30
  39. package/components/u-col/u-col.vue +123 -123
  40. package/components/u-collapse/types.ts +33 -33
  41. package/components/u-collapse/u-collapse.vue +69 -69
  42. package/components/u-collapse-item/types.ts +27 -27
  43. package/components/u-collapse-item/u-collapse-item.vue +213 -201
  44. package/components/u-column-notice/types.ts +48 -48
  45. package/components/u-column-notice/u-column-notice.vue +176 -176
  46. package/components/u-count-down/types.ts +42 -42
  47. package/components/u-count-down/u-count-down.vue +258 -258
  48. package/components/u-count-to/types.ts +32 -32
  49. package/components/u-count-to/u-count-to.vue +241 -241
  50. package/components/u-divider/types.ts +31 -31
  51. package/components/u-divider/u-divider.vue +121 -121
  52. package/components/u-dropdown/types.ts +32 -32
  53. package/components/u-dropdown/u-dropdown.vue +289 -289
  54. package/components/u-dropdown-item/types.ts +27 -27
  55. package/components/u-dropdown-item/u-dropdown-item.vue +123 -123
  56. package/components/u-empty/types.ts +36 -36
  57. package/components/u-empty/u-empty.vue +88 -88
  58. package/components/u-field/types.ts +69 -69
  59. package/components/u-field/u-field.vue +354 -354
  60. package/components/u-form/u-form.vue +132 -132
  61. package/components/u-form-item/u-form-item.vue +417 -417
  62. package/components/u-full-screen/types.ts +14 -14
  63. package/components/u-full-screen/u-full-screen.vue +82 -82
  64. package/components/u-gap/types.ts +18 -18
  65. package/components/u-gap/u-gap.vue +40 -40
  66. package/components/u-grid/types.ts +19 -19
  67. package/components/u-grid/u-grid.vue +93 -93
  68. package/components/u-grid-item/types.ts +16 -16
  69. package/components/u-grid-item/u-grid-item.vue +130 -130
  70. package/components/u-icon/types.ts +62 -62
  71. package/components/u-icon/u-icon.vue +281 -281
  72. package/components/u-image/types.ts +51 -51
  73. package/components/u-image/u-image.vue +222 -222
  74. package/components/u-index-anchor/types.ts +16 -16
  75. package/components/u-index-anchor/u-index-anchor.vue +86 -86
  76. package/components/u-index-list/types.ts +43 -43
  77. package/components/u-index-list/u-index-list.vue +355 -355
  78. package/components/u-input/types.ts +140 -140
  79. package/components/u-input/u-input.vue +264 -264
  80. package/components/u-keyboard/types.ts +40 -40
  81. package/components/u-keyboard/u-keyboard.vue +158 -158
  82. package/components/u-lazy-load/types.ts +37 -37
  83. package/components/u-lazy-load/u-lazy-load.vue +233 -233
  84. package/components/u-line/types.ts +44 -44
  85. package/components/u-line/u-line.vue +59 -59
  86. package/components/u-line-progress/types.ts +58 -58
  87. package/components/u-line-progress/u-line-progress.vue +109 -109
  88. package/components/u-link/types.ts +43 -43
  89. package/components/u-link/u-link.vue +75 -75
  90. package/components/u-loading/types.ts +35 -35
  91. package/components/u-loading/u-loading.vue +90 -90
  92. package/components/u-loading-popup/types.ts +26 -26
  93. package/components/u-loading-popup/u-loading-popup.vue +239 -239
  94. package/components/u-loadmore/types.ts +79 -79
  95. package/components/u-loadmore/u-loadmore.vue +140 -140
  96. package/components/u-mask/types.ts +43 -43
  97. package/components/u-mask/u-mask.vue +106 -106
  98. package/components/u-message-input/types.ts +74 -74
  99. package/components/u-message-input/u-message-input.vue +255 -255
  100. package/components/u-modal/types.ts +118 -118
  101. package/components/u-modal/u-modal.vue +204 -204
  102. package/components/u-navbar/types.ts +103 -103
  103. package/components/u-navbar/u-navbar.vue +226 -226
  104. package/components/u-no-network/image.ts +2 -2
  105. package/components/u-no-network/types.ts +28 -28
  106. package/components/u-no-network/u-no-network.vue +290 -290
  107. package/components/u-notice-bar/types.ts +111 -111
  108. package/components/u-notice-bar/u-notice-bar.vue +174 -174
  109. package/components/u-number-box/types.ts +42 -42
  110. package/components/u-number-box/u-number-box.vue +312 -312
  111. package/components/u-number-keyboard/types.ts +26 -26
  112. package/components/u-number-keyboard/u-number-keyboard.vue +166 -166
  113. package/components/u-picker/types.ts +123 -123
  114. package/components/u-picker/u-picker.vue +637 -637
  115. package/components/u-popup/types.ts +59 -59
  116. package/components/u-popup/u-popup.vue +359 -359
  117. package/components/u-radio/types.ts +25 -25
  118. package/components/u-radio/u-radio.vue +258 -258
  119. package/components/u-radio-group/types.ts +29 -29
  120. package/components/u-radio-group/u-radio-group.vue +98 -98
  121. package/components/u-rate/types.ts +40 -40
  122. package/components/u-rate/u-rate.vue +234 -234
  123. package/components/u-read-more/types.ts +35 -35
  124. package/components/u-read-more/u-read-more.vue +150 -150
  125. package/components/u-root-portal/u-root-portal.vue +54 -0
  126. package/components/u-row/types.ts +20 -20
  127. package/components/u-row/u-row.vue +87 -87
  128. package/components/u-row-notice/types.ts +39 -39
  129. package/components/u-row-notice/u-row-notice.vue +213 -213
  130. package/components/u-safe-bottom/u-safe-bottom.vue +46 -46
  131. package/components/u-search/types.ts +53 -53
  132. package/components/u-search/u-search.vue +256 -256
  133. package/components/u-section/types.ts +32 -32
  134. package/components/u-section/u-section.vue +125 -125
  135. package/components/u-select/types.ts +43 -43
  136. package/components/u-select/u-select.vue +361 -361
  137. package/components/u-skeleton/types.ts +20 -20
  138. package/components/u-skeleton/u-skeleton.vue +205 -205
  139. package/components/u-slider/types.ts +32 -32
  140. package/components/u-slider/u-slider.vue +238 -238
  141. package/components/u-status-bar/u-status-bar.vue +65 -65
  142. package/components/u-steps/types.ts +28 -28
  143. package/components/u-steps/u-steps.vue +160 -160
  144. package/components/u-sticky/types.ts +22 -22
  145. package/components/u-sticky/u-sticky.vue +159 -159
  146. package/components/u-subsection/types.ts +36 -36
  147. package/components/u-subsection/u-subsection.vue +328 -328
  148. package/components/u-swipe-action/types.ts +50 -50
  149. package/components/u-swipe-action/u-swipe-action.vue +253 -253
  150. package/components/u-swiper/types.ts +47 -47
  151. package/components/u-swiper/u-swiper.vue +266 -266
  152. package/components/u-switch/types.ts +28 -28
  153. package/components/u-switch/u-switch.vue +136 -136
  154. package/components/u-tabbar/types.ts +36 -36
  155. package/components/u-tabbar/u-tabbar.vue +280 -280
  156. package/components/u-table/types.ts +25 -25
  157. package/components/u-table/u-table.vue +55 -55
  158. package/components/u-tabs/types.ts +51 -51
  159. package/components/u-tabs/u-tabs.vue +284 -284
  160. package/components/u-tabs-swiper/types.ts +53 -53
  161. package/components/u-tabs-swiper/u-tabs-swiper.vue +379 -379
  162. package/components/u-tag/types.ts +37 -37
  163. package/components/u-tag/u-tag.vue +244 -244
  164. package/components/u-td/types.ts +12 -12
  165. package/components/u-td/u-td.vue +87 -87
  166. package/components/u-text/types.ts +69 -69
  167. package/components/u-text/u-text.vue +326 -326
  168. package/components/u-th/types.ts +12 -12
  169. package/components/u-th/u-th.vue +81 -81
  170. package/components/u-time-line/u-time-line.vue +39 -39
  171. package/components/u-time-line-item/types.ts +14 -14
  172. package/components/u-time-line-item/u-time-line-item.vue +78 -78
  173. package/components/u-toast/types.ts +36 -36
  174. package/components/u-toast/u-toast.vue +233 -233
  175. package/components/u-top-tips/types.ts +14 -14
  176. package/components/u-top-tips/u-top-tips.vue +113 -113
  177. package/components/u-tr/types.ts +8 -8
  178. package/components/u-tr/u-tr.vue +24 -24
  179. package/components/u-upload/types.ts +74 -74
  180. package/components/u-upload/u-upload.vue +545 -545
  181. package/components/u-verification-code/types.ts +22 -22
  182. package/components/u-verification-code/u-verification-code.vue +164 -164
  183. package/components/u-waterfall/types.ts +16 -16
  184. package/components/u-waterfall/u-waterfall.vue +175 -175
  185. package/iconfont.css +912 -912
  186. package/index.scss +25 -25
  187. package/index.ts +29 -29
  188. package/libs/config/config.ts +26 -26
  189. package/libs/config/zIndex.ts +37 -37
  190. package/libs/css/color.scss +155 -155
  191. package/libs/css/common.scss +178 -178
  192. package/libs/css/style.components.scss +16 -16
  193. package/libs/css/style.h5.scss +8 -8
  194. package/libs/css/style.mp.scss +72 -72
  195. package/libs/css/style.nvue.scss +15 -15
  196. package/libs/css/style.vue.scss +188 -188
  197. package/libs/function/$parent.ts +21 -21
  198. package/libs/function/addUnit.ts +13 -13
  199. package/libs/function/color.ts +37 -37
  200. package/libs/function/colorGradient.ts +125 -125
  201. package/libs/function/debounce.ts +28 -28
  202. package/libs/function/deepClone.ts +39 -39
  203. package/libs/function/deepMerge.ts +34 -34
  204. package/libs/function/getParent.ts +59 -59
  205. package/libs/function/getRect.ts +26 -26
  206. package/libs/function/guid.ts +42 -42
  207. package/libs/function/md5.ts +391 -391
  208. package/libs/function/parent.ts +21 -21
  209. package/libs/function/queryParams.ts +60 -60
  210. package/libs/function/random.ts +16 -16
  211. package/libs/function/randomArray.ts +11 -11
  212. package/libs/function/route.ts +118 -118
  213. package/libs/function/styleUtils.ts +83 -83
  214. package/libs/function/sys.ts +15 -15
  215. package/libs/function/test.ts +285 -285
  216. package/libs/function/throttle.ts +31 -31
  217. package/libs/function/timeFormat.ts +54 -54
  218. package/libs/function/timeFrom.ts +48 -48
  219. package/libs/function/toast.ts +14 -14
  220. package/libs/function/trim.ts +21 -21
  221. package/libs/function/type2icon.ts +36 -36
  222. package/libs/hooks/index.ts +3 -3
  223. package/libs/hooks/useEmitter.ts +77 -77
  224. package/libs/hooks/useParent.ts +31 -31
  225. package/libs/hooks/useRect.ts +33 -33
  226. package/libs/index.ts +291 -291
  227. package/libs/request/auto-http.ts +76 -76
  228. package/libs/request/index.ts +223 -223
  229. package/libs/store/index.ts +88 -88
  230. package/libs/util/area.ts +1 -3771
  231. package/libs/util/async-validator.d.ts +62 -62
  232. package/libs/util/async-validator.js +1 -1368
  233. package/libs/util/calendar.d.ts +57 -0
  234. package/libs/util/calendar.js +1 -0
  235. package/libs/util/city.ts +1 -432
  236. package/libs/util/emitter.ts +102 -102
  237. package/libs/util/mitt.ts +115 -115
  238. package/libs/util/parent.ts +20 -20
  239. package/libs/util/province.ts +1 -37
  240. package/package.json +1 -1
  241. package/readme.md +239 -237
  242. package/theme.scss +38 -38
  243. package/types/components.d.ts +97 -96
  244. package/types/global.d.ts +295 -255
  245. package/types/ignore-errors.d.ts +30 -30
  246. package/types/index.d.ts +19 -19
  247. package/types/uni-app.d.ts +63 -63
package/types/global.d.ts CHANGED
@@ -1,255 +1,295 @@
1
- export type ThemeType = 'primary' | 'info' | 'error' | 'warning' | 'success';
2
-
3
- export type ImgMode = 'aspectFit' | 'aspectFill' | 'widthFix' | 'top' | 'bottom' | 'center' | 'scaleToFill';
4
-
5
- export type Direction = 'horizontal' | 'vertical';
6
-
7
- export type Sex = 'man' | 'woman';
8
-
9
- export type Shape = 'circle' | 'square';
10
- export type Effect = 'linear' | 'ease' | 'ease-in' | 'ease-in-out' | 'ease-out' | 'step-start' | 'step-end';
11
-
12
- export type TextAlign = 'left' | 'center' | 'right';
13
- export type JustifyType = 'start' | 'end' | 'center' | 'around' | 'between';
14
- export type AlignType = 'top' | 'center' | 'bottom';
15
- export type ScrollDirection = 'row' | 'column';
16
- export type PlayState = 'play' | 'paused';
17
- export type OptionType = { label: string; value: any };
18
-
19
- // action-sheet 操作项类型
20
- export type ActionSheetItem = {
21
- text: string;
22
- subText?: string;
23
- color?: string;
24
- fontSize?: string;
25
- disabled?: boolean;
26
- };
27
-
28
- // action-sheet 底部提示类型
29
- export type ActionSheetTips = {
30
- text: string;
31
- color?: string;
32
- fontSize?: string;
33
- };
34
-
35
- // avatar-cropper 裁剪矩形框的样式
36
- export type AvatarCropperBoundStyle = {
37
- lineWidth: number;
38
- borderColor: string;
39
- mask: string;
40
- };
41
- // badge 角标类型
42
- export type BadgeSize = 'default' | 'mini';
43
- // button 按钮类型
44
- export type ButtonType = 'primary' | 'info' | 'error' | 'warning' | 'success' | 'default';
45
- // button 按钮尺寸
46
- export type ButtonSize = 'default' | 'medium' | 'mini';
47
- // button 按钮 form-type
48
- export type ButtonFormType = '' | 'submit' | 'reset';
49
- // button 按钮 scope
50
- export type ButtonScope = 'phoneNumber' | 'userInfo';
51
- // button 按钮open-type
52
- export type ButtonOpenType =
53
- | 'feedback'
54
- | 'share'
55
- | 'getUserInfo'
56
- | 'contact'
57
- | 'getPhoneNumber'
58
- | 'launchApp'
59
- | 'openSetting'
60
- | 'chooseAvatar'
61
- | 'getAuthorize'
62
- | 'lifestyle'
63
- | 'contactShare'
64
- | 'openGroupProfile'
65
- | 'openGuildProfile'
66
- | 'openPublicProfile'
67
- | 'shareMessageToFriend'
68
- | 'addFriend'
69
- | 'addColorSign'
70
- | 'addGroupApp'
71
- | 'addToFavorites'
72
- | 'chooseAddress'
73
- | 'chooseInvoiceTitle'
74
- | 'login'
75
- | 'subscribe'
76
- | 'favorite'
77
- | 'watchLater'
78
- | 'openProfile'
79
- | 'agreePrivacyAuthorization';
80
-
81
- // calendar 组件 mode
82
- export type CalendarMode = 'date' | 'range';
83
- // CellItem 右侧箭头方向,可选值:right|up|down,默认为right
84
- export type CellItemArrowDirection = 'right' | 'up' | 'down';
85
-
86
- export type FormRuleItem = {
87
- required?: boolean;
88
- message?: string;
89
- trigger?: string | string[];
90
- min?: number;
91
- max?: number;
92
- pattern?: RegExp;
93
- type?: string;
94
- validator?: (rule: any, value: any, callback: any) => boolean;
95
- asyncValidator?: (rule: any, value: any, callback: any) => void;
96
- };
97
- export type FormRules = Record<string, FormRuleItem | FormRuleItem[]>;
98
-
99
- export type InputType = 'text' | 'number' | 'idcard' | 'digit' | 'password' | 'textarea' | 'phone' | 'url' | 'email' | 'safe-password' | 'name' | 'bank-card' | 'tel' | 'select';
100
-
101
- export type InputAlign = 'left' | 'center' | 'right';
102
-
103
- export type InputConfirmType = 'send' | 'search' | 'next' | 'go' | 'done';
104
-
105
- export type InputLabelPosition = 'left' | 'top';
106
-
107
- export type FormErrorType = 'message' | 'border' | 'border-bottom' | 'none' | 'toast';
108
-
109
- export type IconLabelPosition = 'left' | 'top' | 'right' | 'bottom';
110
-
111
- export type LineDirection = 'row' | 'column';
112
-
113
- export type LineBorderStyle = 'solid' | 'dashed' | 'dotted';
114
-
115
- export type LoadmoreText = {
116
- loadmore: string;
117
- loading: string;
118
- nomore: string;
119
- };
120
-
121
- export type LoadmoreStatus = 'loadmore' | 'loading' | 'nomore';
122
-
123
- export type LoadmoreIconType = 'circle' | 'flower';
124
-
125
- export type MessageInputMode = 'box' | 'bottomLine' | 'middleLine';
126
-
127
- export type NumberKeyboardMode = 'number' | 'card';
128
-
129
- /**
130
- * PickerMode 选择器模式类型
131
- * 模式选择,region-地区类型,time-时间类型,selector-单列模式,multiSelector-多列模
132
- */
133
- export type PickerMode = 'region' | 'time' | 'selector' | 'multiSelector';
134
-
135
- /**
136
- * PickerParams 选择器参数类型
137
- */
138
- export type PickerParams = {
139
- year?: boolean;
140
- month?: boolean;
141
- day?: boolean;
142
- hour?: boolean;
143
- minute?: boolean;
144
- second?: boolean;
145
- province?: boolean;
146
- city?: boolean;
147
- area?: boolean;
148
- timestamp?: boolean;
149
- };
150
-
151
- export type PopupMode = 'left' | 'right' | 'top' | 'bottom' | 'center';
152
- export type PopupCloseIconPos = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
153
-
154
- // Row水平排列方式,可选值为`start`(或`flex-start`)、`end`(或`flex-end`)、`center`、`around`(或`space-around`)、`between`(或`space-between`)
155
- export type RowJustify = 'start' | 'flex-start' | 'end' | 'flex-end' | 'center' | 'around' | 'space-around' | 'between' | 'space-between';
156
- // Row垂直对齐方式,可选值为top、center、bottom
157
- export type RowAlign = 'top' | 'center' | 'bottom';
158
- // search 组件形状
159
- export type SearchShape = 'round' | 'square';
160
- // select 组件 mode single-column-单列,mutil-column-多列,mutil-column-auto-多列联动
161
- export type SelectMode = 'single-column' | 'mutil-column' | 'mutil-column-auto';
162
- // select 组件 list item
163
- export type SelectListItem = {
164
- label: string;
165
- value: string | number;
166
- children?: SelectListItem[];
167
- extra?: any;
168
- [key: string]: any;
169
- };
170
- // Step 组件 mode
171
- export type StepsListItem = {
172
- name: string;
173
- [key: string]: any;
174
- };
175
- // Step 组件 mode
176
- export type StepMode = 'dot' | 'number';
177
- // Step 组件 direction
178
- export type StepDirection = 'row' | 'column';
179
- // Subsection 组件 list item
180
- export type SubsectionListItem = {
181
- name: string;
182
- width?: number;
183
- [key: string]: any;
184
- };
185
- // Subsection 组件 mode
186
- export type SubsectionMode = 'button' | 'subsection';
187
- // swipeAction 操作项类型
188
- export type SwipeActionOption = {
189
- /** 按钮显示的文字 */
190
- text: string;
191
- /** 按钮自定义样式 */
192
- style?: Record<string, any>;
193
- };
194
- // swiper 组件 mode
195
- export type SwiperMode = 'round' | 'dot' | 'rect' | 'number' | 'none';
196
- // swiper 组件 indicatorPos
197
- export type SwiperIndicatorPosition = 'topLeft' | 'topCenter' | 'topRight' | 'bottomLeft' | 'bottomCenter' | 'bottomRight';
198
- // tabs 组件 props
199
- export type TabsItem = {
200
- [key: string]: any;
201
- name?: string | number;
202
- count?: string | number;
203
- };
204
- // tabs-swiper 组件 list item
205
- export type TabsSwiperListItem = {
206
- [key: string]: any;
207
- name?: string | number;
208
- count?: string | number;
209
- };
210
- // tabs-swiper 组件 autoCenterMode
211
- export type TabsSwiperAutoCenterMode = 'window';
212
- // tag 组件 mode
213
- export type TagMode = 'light' | 'dark' | 'plain';
214
- // tag 组件 shape
215
- export type TagShape = 'square' | 'circle' | 'circleLeft' | 'circleRight';
216
- // tag 组件 size
217
- export type TagSize = 'default' | 'mini' | 'medium';
218
- // toast 组件 position
219
- export type ToastPosition = 'top' | 'center' | 'bottom';
220
- export type UploadSizeType = 'original' | 'compressed';
221
- export type UploadSourceType = 'album' | 'camera';
222
- // 自定义主题色
223
- export type ThemeColor = Partial<{
224
- primary: string;
225
- primaryDark: string;
226
- primaryDisabled: string;
227
- primaryLight: string;
228
- bgColor: string;
229
- info: string;
230
- infoDark: string;
231
- infoDisabled: string;
232
- infoLight: string;
233
- warning: string;
234
- warningDark: string;
235
- warningDisabled: string;
236
- warningLight: string;
237
- error: string;
238
- errorDark: string;
239
- errorDisabled: string;
240
- errorLight: string;
241
- success: string;
242
- successDark: string;
243
- successDisabled: string;
244
- successLight: string;
245
- mainColor: string;
246
- contentColor: string;
247
- tipsColor: string;
248
- lightColor: string;
249
- borderColor: string;
250
- }>;
251
-
252
- export interface UViewProOptions {
253
- theme?: ThemeColor;
254
- // 可扩展更多配置项
255
- }
1
+ export type ThemeType = 'primary' | 'info' | 'error' | 'warning' | 'success';
2
+
3
+ export type ImgMode = 'aspectFit' | 'aspectFill' | 'widthFix' | 'top' | 'bottom' | 'center' | 'scaleToFill';
4
+
5
+ export type Direction = 'horizontal' | 'vertical';
6
+
7
+ export type Sex = 'man' | 'woman';
8
+
9
+ export type Shape = 'circle' | 'square';
10
+ export type Effect = 'linear' | 'ease' | 'ease-in' | 'ease-in-out' | 'ease-out' | 'step-start' | 'step-end';
11
+
12
+ export type TextAlign = 'left' | 'center' | 'right';
13
+ export type JustifyType = 'start' | 'end' | 'center' | 'around' | 'between';
14
+ export type AlignType = 'top' | 'center' | 'bottom';
15
+ export type ScrollDirection = 'row' | 'column';
16
+ export type PlayState = 'play' | 'paused';
17
+ export type OptionType = { label: string; value: any };
18
+
19
+ // action-sheet 操作项类型
20
+ export type ActionSheetItem = {
21
+ text: string;
22
+ subText?: string;
23
+ color?: string;
24
+ fontSize?: string;
25
+ disabled?: boolean;
26
+ };
27
+
28
+ // action-sheet 底部提示类型
29
+ export type ActionSheetTips = {
30
+ text: string;
31
+ color?: string;
32
+ fontSize?: string;
33
+ };
34
+
35
+ // avatar-cropper 裁剪矩形框的样式
36
+ export type AvatarCropperBoundStyle = {
37
+ lineWidth: number;
38
+ borderColor: string;
39
+ mask: string;
40
+ };
41
+ // badge 角标类型
42
+ export type BadgeSize = 'default' | 'mini';
43
+ // button 按钮类型
44
+ export type ButtonType = 'primary' | 'info' | 'error' | 'warning' | 'success' | 'default';
45
+ // button 按钮尺寸
46
+ export type ButtonSize = 'default' | 'medium' | 'mini';
47
+ // button 按钮 form-type
48
+ export type ButtonFormType = '' | 'submit' | 'reset';
49
+ // button 按钮 scope
50
+ export type ButtonScope = 'phoneNumber' | 'userInfo';
51
+ // button 按钮open-type
52
+ export type ButtonOpenType =
53
+ | 'feedback'
54
+ | 'share'
55
+ | 'getUserInfo'
56
+ | 'contact'
57
+ | 'getPhoneNumber'
58
+ | 'launchApp'
59
+ | 'openSetting'
60
+ | 'chooseAvatar'
61
+ | 'getAuthorize'
62
+ | 'lifestyle'
63
+ | 'contactShare'
64
+ | 'openGroupProfile'
65
+ | 'openGuildProfile'
66
+ | 'openPublicProfile'
67
+ | 'shareMessageToFriend'
68
+ | 'addFriend'
69
+ | 'addColorSign'
70
+ | 'addGroupApp'
71
+ | 'addToFavorites'
72
+ | 'chooseAddress'
73
+ | 'chooseInvoiceTitle'
74
+ | 'login'
75
+ | 'subscribe'
76
+ | 'favorite'
77
+ | 'watchLater'
78
+ | 'openProfile'
79
+ | 'agreePrivacyAuthorization';
80
+
81
+ // calendar 组件 mode
82
+ export type CalendarMode = 'date' | 'range';
83
+
84
+ // calendar 农历数据类型定义
85
+ export type CalendarLunarItem = {
86
+ dayCn: string;
87
+ weekCn: string;
88
+ monthCn: string;
89
+ day: number;
90
+ week: number;
91
+ month: number;
92
+ year: number;
93
+ };
94
+
95
+ // calendar 事件类型定义,单个日期
96
+ export type CalendarChangeDate = {
97
+ year: number;
98
+ month: number;
99
+ day: number;
100
+ days: number;
101
+ result: string;
102
+ week: string;
103
+ isToday: boolean;
104
+ lunar: CalendarLunarItem | null; // getLunar 返回类型,建议后续补充具体类型
105
+ };
106
+
107
+ // calendar 事件类型定义,范围选择
108
+ export type CalendarChangeRange = {
109
+ startYear: number;
110
+ startMonth: number;
111
+ startDay: number;
112
+ startDate: string;
113
+ startWeek: string;
114
+ endYear: number;
115
+ endMonth: number;
116
+ endDay: number;
117
+ endDate: string;
118
+ endWeek: string;
119
+ startLunar: CalendarLunarItem | null;
120
+ endLunar: CalendarLunarItem | null;
121
+ };
122
+
123
+ // CellItem 右侧箭头方向,可选值:right|up|down,默认为right
124
+ export type CellItemArrowDirection = 'right' | 'up' | 'down';
125
+
126
+ export type FormRuleItem = {
127
+ required?: boolean;
128
+ message?: string;
129
+ trigger?: string | string[];
130
+ min?: number;
131
+ max?: number;
132
+ pattern?: RegExp;
133
+ type?: string;
134
+ validator?: (rule: any, value: any, callback: any) => boolean;
135
+ asyncValidator?: (rule: any, value: any, callback: any) => void;
136
+ };
137
+ export type FormRules = Record<string, FormRuleItem | FormRuleItem[]>;
138
+
139
+ export type InputType = 'text' | 'number' | 'idcard' | 'digit' | 'password' | 'textarea' | 'phone' | 'url' | 'email' | 'safe-password' | 'name' | 'bank-card' | 'tel' | 'select';
140
+
141
+ export type InputAlign = 'left' | 'center' | 'right';
142
+
143
+ export type InputConfirmType = 'send' | 'search' | 'next' | 'go' | 'done';
144
+
145
+ export type InputLabelPosition = 'left' | 'top';
146
+
147
+ export type FormErrorType = 'message' | 'border' | 'border-bottom' | 'none' | 'toast';
148
+
149
+ export type IconLabelPosition = 'left' | 'top' | 'right' | 'bottom';
150
+
151
+ export type LineDirection = 'row' | 'column';
152
+
153
+ export type LineBorderStyle = 'solid' | 'dashed' | 'dotted';
154
+
155
+ export type LoadmoreText = {
156
+ loadmore: string;
157
+ loading: string;
158
+ nomore: string;
159
+ };
160
+
161
+ export type LoadmoreStatus = 'loadmore' | 'loading' | 'nomore';
162
+
163
+ export type LoadmoreIconType = 'circle' | 'flower';
164
+
165
+ export type MessageInputMode = 'box' | 'bottomLine' | 'middleLine';
166
+
167
+ export type NumberKeyboardMode = 'number' | 'card';
168
+
169
+ /**
170
+ * PickerMode 选择器模式类型
171
+ * 模式选择,region-地区类型,time-时间类型,selector-单列模式,multiSelector-多列模
172
+ */
173
+ export type PickerMode = 'region' | 'time' | 'selector' | 'multiSelector';
174
+
175
+ /**
176
+ * PickerParams 选择器参数类型
177
+ */
178
+ export type PickerParams = {
179
+ year?: boolean;
180
+ month?: boolean;
181
+ day?: boolean;
182
+ hour?: boolean;
183
+ minute?: boolean;
184
+ second?: boolean;
185
+ province?: boolean;
186
+ city?: boolean;
187
+ area?: boolean;
188
+ timestamp?: boolean;
189
+ };
190
+
191
+ export type PopupMode = 'left' | 'right' | 'top' | 'bottom' | 'center';
192
+ export type PopupCloseIconPos = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
193
+
194
+ // Row水平排列方式,可选值为`start`(或`flex-start`)、`end`(或`flex-end`)、`center`、`around`(或`space-around`)、`between`(或`space-between`)
195
+ export type RowJustify = 'start' | 'flex-start' | 'end' | 'flex-end' | 'center' | 'around' | 'space-around' | 'between' | 'space-between';
196
+ // Row垂直对齐方式,可选值为top、center、bottom
197
+ export type RowAlign = 'top' | 'center' | 'bottom';
198
+ // search 组件形状
199
+ export type SearchShape = 'round' | 'square';
200
+ // select 组件 mode single-column-单列,mutil-column-多列,mutil-column-auto-多列联动
201
+ export type SelectMode = 'single-column' | 'mutil-column' | 'mutil-column-auto';
202
+ // select 组件 list item
203
+ export type SelectListItem = {
204
+ label: string;
205
+ value: string | number;
206
+ children?: SelectListItem[];
207
+ extra?: any;
208
+ [key: string]: any;
209
+ };
210
+ // Step 组件 mode
211
+ export type StepsListItem = {
212
+ name: string;
213
+ [key: string]: any;
214
+ };
215
+ // Step 组件 mode
216
+ export type StepMode = 'dot' | 'number';
217
+ // Step 组件 direction
218
+ export type StepDirection = 'row' | 'column';
219
+ // Subsection 组件 list item
220
+ export type SubsectionListItem = {
221
+ name: string;
222
+ width?: number;
223
+ [key: string]: any;
224
+ };
225
+ // Subsection 组件 mode
226
+ export type SubsectionMode = 'button' | 'subsection';
227
+ // swipeAction 操作项类型
228
+ export type SwipeActionOption = {
229
+ /** 按钮显示的文字 */
230
+ text: string;
231
+ /** 按钮自定义样式 */
232
+ style?: Record<string, any>;
233
+ };
234
+ // swiper 组件 mode
235
+ export type SwiperMode = 'round' | 'dot' | 'rect' | 'number' | 'none';
236
+ // swiper 组件 indicatorPos
237
+ export type SwiperIndicatorPosition = 'topLeft' | 'topCenter' | 'topRight' | 'bottomLeft' | 'bottomCenter' | 'bottomRight';
238
+ // tabs 组件 props
239
+ export type TabsItem = {
240
+ [key: string]: any;
241
+ name?: string | number;
242
+ count?: string | number;
243
+ };
244
+ // tabs-swiper 组件 list item
245
+ export type TabsSwiperListItem = {
246
+ [key: string]: any;
247
+ name?: string | number;
248
+ count?: string | number;
249
+ };
250
+ // tabs-swiper 组件 autoCenterMode
251
+ export type TabsSwiperAutoCenterMode = 'window';
252
+ // tag 组件 mode
253
+ export type TagMode = 'light' | 'dark' | 'plain';
254
+ // tag 组件 shape
255
+ export type TagShape = 'square' | 'circle' | 'circleLeft' | 'circleRight';
256
+ // tag 组件 size
257
+ export type TagSize = 'default' | 'mini' | 'medium';
258
+ // toast 组件 position
259
+ export type ToastPosition = 'top' | 'center' | 'bottom';
260
+ export type UploadSizeType = 'original' | 'compressed';
261
+ export type UploadSourceType = 'album' | 'camera';
262
+ // 自定义主题色
263
+ export type ThemeColor = Partial<{
264
+ primary: string;
265
+ primaryDark: string;
266
+ primaryDisabled: string;
267
+ primaryLight: string;
268
+ bgColor: string;
269
+ info: string;
270
+ infoDark: string;
271
+ infoDisabled: string;
272
+ infoLight: string;
273
+ warning: string;
274
+ warningDark: string;
275
+ warningDisabled: string;
276
+ warningLight: string;
277
+ error: string;
278
+ errorDark: string;
279
+ errorDisabled: string;
280
+ errorLight: string;
281
+ success: string;
282
+ successDark: string;
283
+ successDisabled: string;
284
+ successLight: string;
285
+ mainColor: string;
286
+ contentColor: string;
287
+ tipsColor: string;
288
+ lightColor: string;
289
+ borderColor: string;
290
+ }>;
291
+
292
+ export interface UViewProOptions {
293
+ theme?: ThemeColor;
294
+ // 可扩展更多配置项
295
+ }
@@ -1,30 +1,30 @@
1
- // 忽略 uview-pro 组件库内部的 TypeScript 错误
2
- // 这些错误不影响组件的正常使用和类型提示
3
-
4
- // 忽略 WeCropper 相关的类型错误
5
- declare module 'weCropper' {
6
- export class WeCropper {
7
- constructor(params: any);
8
- [key: string]: any;
9
- }
10
- }
11
-
12
- // 忽略 base64 模块的类型错误
13
- declare module 'base64' {
14
- export function encode(data: any): string;
15
- export function decode(data: string): any;
16
- }
17
-
18
- // 忽略其他内部模块的类型错误
19
- declare module 'uview-pro/components/*' {
20
- const component: any;
21
- export default component;
22
- }
23
-
24
- // 忽略工具函数的类型错误
25
- declare module 'uview-pro/libs/function/*' {
26
- const func: any;
27
- export default func;
28
- }
29
-
30
- export {};
1
+ // 忽略 uview-pro 组件库内部的 TypeScript 错误
2
+ // 这些错误不影响组件的正常使用和类型提示
3
+
4
+ // 忽略 WeCropper 相关的类型错误
5
+ declare module 'weCropper' {
6
+ export class WeCropper {
7
+ constructor(params: any);
8
+ [key: string]: any;
9
+ }
10
+ }
11
+
12
+ // 忽略 base64 模块的类型错误
13
+ declare module 'base64' {
14
+ export function encode(data: any): string;
15
+ export function decode(data: string): any;
16
+ }
17
+
18
+ // 忽略其他内部模块的类型错误
19
+ declare module 'uview-pro/components/*' {
20
+ const component: any;
21
+ export default component;
22
+ }
23
+
24
+ // 忽略工具函数的类型错误
25
+ declare module 'uview-pro/libs/function/*' {
26
+ const func: any;
27
+ export default func;
28
+ }
29
+
30
+ export {};
package/types/index.d.ts CHANGED
@@ -1,19 +1,19 @@
1
- /// <reference path="./components.d.ts" />
2
- /// <reference path="./uni-app.d.ts" />
3
-
4
- import { $u } from '../libs';
5
-
6
- // uview-pro 模块类型声明
7
- declare module 'uview-pro' {
8
- // 导出安装函数
9
- export function install(): void;
10
- }
11
-
12
- // 全局类型扩展
13
- declare global {
14
- interface Uni {
15
- $u: typeof $u;
16
- }
17
- }
18
-
19
- export {};
1
+ /// <reference path="./components.d.ts" />
2
+ /// <reference path="./uni-app.d.ts" />
3
+
4
+ import { $u } from '../libs';
5
+
6
+ // uview-pro 模块类型声明
7
+ declare module 'uview-pro' {
8
+ // 导出安装函数
9
+ export function install(): void;
10
+ }
11
+
12
+ // 全局类型扩展
13
+ declare global {
14
+ interface Uni {
15
+ $u: typeof $u;
16
+ }
17
+ }
18
+
19
+ export {};