uview-pro 0.1.0 → 0.2.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 (244) hide show
  1. package/changelog.md +459 -406
  2. package/components/common/props.ts +22 -0
  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 +63 -63
  21. package/components/u-calendar/u-calendar.vue +592 -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 -31
  41. package/components/u-collapse/u-collapse.vue +69 -68
  42. package/components/u-collapse-item/types.ts +27 -25
  43. package/components/u-collapse-item/u-collapse-item.vue +201 -194
  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 -274
  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 -255
  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-row/types.ts +20 -20
  126. package/components/u-row/u-row.vue +87 -87
  127. package/components/u-row-notice/types.ts +39 -39
  128. package/components/u-row-notice/u-row-notice.vue +213 -213
  129. package/components/u-safe-bottom/u-safe-bottom.vue +46 -46
  130. package/components/u-search/types.ts +53 -53
  131. package/components/u-search/u-search.vue +256 -256
  132. package/components/u-section/types.ts +32 -32
  133. package/components/u-section/u-section.vue +125 -125
  134. package/components/u-select/types.ts +43 -43
  135. package/components/u-select/u-select.vue +361 -361
  136. package/components/u-skeleton/types.ts +20 -20
  137. package/components/u-skeleton/u-skeleton.vue +205 -205
  138. package/components/u-slider/types.ts +32 -32
  139. package/components/u-slider/u-slider.vue +238 -238
  140. package/components/u-status-bar/u-status-bar.vue +65 -65
  141. package/components/u-steps/types.ts +28 -28
  142. package/components/u-steps/u-steps.vue +160 -160
  143. package/components/u-sticky/types.ts +22 -22
  144. package/components/u-sticky/u-sticky.vue +159 -159
  145. package/components/u-subsection/types.ts +36 -36
  146. package/components/u-subsection/u-subsection.vue +328 -328
  147. package/components/u-swipe-action/types.ts +50 -50
  148. package/components/u-swipe-action/u-swipe-action.vue +253 -253
  149. package/components/u-swiper/types.ts +47 -47
  150. package/components/u-swiper/u-swiper.vue +266 -266
  151. package/components/u-switch/types.ts +28 -28
  152. package/components/u-switch/u-switch.vue +136 -136
  153. package/components/u-tabbar/types.ts +36 -36
  154. package/components/u-tabbar/u-tabbar.vue +280 -280
  155. package/components/u-table/types.ts +25 -25
  156. package/components/u-table/u-table.vue +55 -55
  157. package/components/u-tabs/types.ts +51 -51
  158. package/components/u-tabs/u-tabs.vue +284 -284
  159. package/components/u-tabs-swiper/types.ts +53 -53
  160. package/components/u-tabs-swiper/u-tabs-swiper.vue +379 -379
  161. package/components/u-tag/types.ts +37 -37
  162. package/components/u-tag/u-tag.vue +244 -244
  163. package/components/u-td/types.ts +12 -12
  164. package/components/u-td/u-td.vue +87 -87
  165. package/components/u-text/types.ts +69 -0
  166. package/components/u-text/u-text.vue +326 -0
  167. package/components/u-th/types.ts +12 -12
  168. package/components/u-th/u-th.vue +81 -81
  169. package/components/u-time-line/u-time-line.vue +39 -39
  170. package/components/u-time-line-item/types.ts +14 -14
  171. package/components/u-time-line-item/u-time-line-item.vue +78 -78
  172. package/components/u-toast/types.ts +36 -36
  173. package/components/u-toast/u-toast.vue +233 -233
  174. package/components/u-top-tips/types.ts +14 -14
  175. package/components/u-top-tips/u-top-tips.vue +113 -113
  176. package/components/u-tr/types.ts +8 -8
  177. package/components/u-tr/u-tr.vue +24 -24
  178. package/components/u-upload/types.ts +74 -74
  179. package/components/u-upload/u-upload.vue +545 -545
  180. package/components/u-verification-code/types.ts +22 -22
  181. package/components/u-verification-code/u-verification-code.vue +164 -164
  182. package/components/u-waterfall/types.ts +16 -16
  183. package/components/u-waterfall/u-waterfall.vue +175 -175
  184. package/iconfont.css +912 -912
  185. package/index.scss +25 -23
  186. package/index.ts +29 -204
  187. package/libs/config/config.ts +26 -26
  188. package/libs/config/zIndex.ts +37 -37
  189. package/libs/css/color.scss +155 -155
  190. package/libs/css/common.scss +178 -178
  191. package/libs/css/style.components.scss +16 -7
  192. package/libs/css/style.h5.scss +8 -8
  193. package/libs/css/style.mp.scss +72 -72
  194. package/libs/css/style.nvue.scss +15 -3
  195. package/libs/css/style.vue.scss +188 -177
  196. package/libs/function/$parent.ts +21 -21
  197. package/libs/function/addUnit.ts +13 -13
  198. package/libs/function/color.ts +37 -71
  199. package/libs/function/colorGradient.ts +125 -125
  200. package/libs/function/debounce.ts +28 -28
  201. package/libs/function/deepClone.ts +39 -39
  202. package/libs/function/deepMerge.ts +34 -34
  203. package/libs/function/getParent.ts +59 -59
  204. package/libs/function/getRect.ts +26 -26
  205. package/libs/function/guid.ts +42 -42
  206. package/libs/function/md5.ts +391 -391
  207. package/libs/function/parent.ts +21 -21
  208. package/libs/function/queryParams.ts +60 -60
  209. package/libs/function/random.ts +16 -16
  210. package/libs/function/randomArray.ts +11 -11
  211. package/libs/function/route.ts +118 -118
  212. package/libs/function/styleUtils.ts +83 -83
  213. package/libs/function/sys.ts +15 -15
  214. package/libs/function/test.ts +285 -229
  215. package/libs/function/throttle.ts +31 -31
  216. package/libs/function/timeFormat.ts +54 -54
  217. package/libs/function/timeFrom.ts +48 -48
  218. package/libs/function/toast.ts +14 -14
  219. package/libs/function/trim.ts +21 -21
  220. package/libs/function/type2icon.ts +36 -36
  221. package/libs/hooks/index.ts +3 -0
  222. package/libs/hooks/useEmitter.ts +77 -77
  223. package/libs/hooks/useParent.ts +31 -29
  224. package/libs/hooks/useRect.ts +33 -0
  225. package/libs/index.ts +291 -0
  226. package/libs/request/auto-http.ts +76 -76
  227. package/libs/request/index.ts +223 -223
  228. package/libs/store/index.ts +88 -88
  229. package/libs/util/area.ts +3771 -3771
  230. package/libs/util/async-validator.d.ts +62 -62
  231. package/libs/util/async-validator.js +1368 -1368
  232. package/libs/util/city.ts +432 -432
  233. package/libs/util/emitter.ts +102 -102
  234. package/libs/util/mitt.ts +115 -115
  235. package/libs/util/parent.ts +20 -20
  236. package/libs/util/province.ts +37 -37
  237. package/package.json +1 -1
  238. package/readme.md +237 -237
  239. package/theme.scss +38 -38
  240. package/types/components.d.ts +96 -95
  241. package/types/global.d.ts +255 -221
  242. package/types/ignore-errors.d.ts +30 -30
  243. package/types/index.d.ts +19 -90
  244. package/types/uni-app.d.ts +63 -63
package/types/global.d.ts CHANGED
@@ -1,221 +1,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
- // 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';
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,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,90 +1,19 @@
1
- /// <reference path="./components.d.ts" />
2
- /// <reference path="./uni-app.d.ts" />
3
-
4
- import http from '../libs/request/index';
5
- import queryParams from '../libs/function/queryParams';
6
- import route from '../libs/function/route';
7
- import timeFormat from '../libs/function/timeFormat';
8
- import timeFrom from '../libs/function/timeFrom';
9
- import colorGradient from '../libs/function/colorGradient';
10
- import guid from '../libs/function/guid';
11
- import color from '../libs/function/color';
12
- import type2icon from '../libs/function/type2icon';
13
- import randomArray from '../libs/function/randomArray';
14
- import deepClone from '../libs/function/deepClone';
15
- import deepMerge from '../libs/function/deepMerge';
16
- import addUnit from '../libs/function/addUnit';
17
- import test from '../libs/function/test';
18
- import random from '../libs/function/random';
19
- import trim from '../libs/function/trim';
20
- import toast from '../libs/function/toast';
21
- import getParent from '../libs/function/getParent';
22
- import $parent from '../libs/function/$parent';
23
- import debounce from '../libs/function/debounce';
24
- import throttle from '../libs/function/throttle';
25
- import getRect from '../libs/function/getRect';
26
- import { sys, os } from '../libs/function/sys';
27
- import { parentData, parent } from '../libs/function/parent';
28
- import config from '../libs/config/config';
29
- import zIndex from '../libs/config/zIndex';
30
- import { dispatch, broadcast } from '../libs/util/emitter';
31
- import { mitt } from '../libs/util/mitt';
32
-
33
- // uview-pro 模块类型声明
34
- declare module 'uview-pro' {
35
- // 导出安装函数
36
- export function install(): void;
37
-
38
- // 导出 $u 工具类型
39
- export interface $Utils {
40
- queryParams: typeof queryParams;
41
- route: typeof route;
42
- timeFormat: typeof timeFormat;
43
- date: typeof timeFormat;
44
- timeFrom: typeof timeFrom;
45
- colorGradient: typeof colorGradient.colorGradient;
46
- colorToRgba: typeof colorGradient.colorToRgba;
47
- guid: typeof guid;
48
- color: typeof color;
49
- sys: typeof sys;
50
- os: typeof os;
51
- type2icon: typeof type2icon;
52
- randomArray: typeof randomArray;
53
- dispatch: typeof dispatch;
54
- broadcast: typeof broadcast;
55
- get: typeof http.get;
56
- post: typeof http.post;
57
- put: typeof http.put;
58
- delete: typeof http.delete;
59
- hexToRgb: typeof colorGradient.hexToRgb;
60
- rgbToHex: typeof colorGradient.rgbToHex;
61
- test: typeof test;
62
- random: typeof random;
63
- deepClone: typeof deepClone;
64
- deepMerge: typeof deepMerge;
65
- getParent: typeof getParent;
66
- $parent: typeof $parent;
67
- parent: typeof parent;
68
- parentData: typeof parentData;
69
- addUnit: typeof addUnit;
70
- trim: typeof trim;
71
- type: string[];
72
- http: typeof http;
73
- toast: typeof toast;
74
- config: typeof config;
75
- zIndex: typeof zIndex;
76
- debounce: typeof debounce;
77
- throttle: typeof throttle;
78
- mitt: ReturnType<typeof mitt>;
79
- getRect: typeof getRect;
80
- }
81
- }
82
-
83
- // 全局类型扩展
84
- declare global {
85
- interface Uni {
86
- $u: import('uview-pro').$Utils;
87
- }
88
- }
89
-
90
- 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 {};