@10yun/cv-mobile-ui 0.5.29 → 0.5.30

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 (260) hide show
  1. package/package.json +1 -1
  2. package/plugins/luch-request/adapters/index.js +131 -0
  3. package/plugins/luch-request/core/InterceptorManager.js +50 -0
  4. package/plugins/luch-request/core/Request.js +199 -0
  5. package/plugins/luch-request/core/buildFullPath.js +20 -0
  6. package/plugins/luch-request/core/defaults.js +32 -0
  7. package/plugins/luch-request/core/dispatchRequest.js +5 -0
  8. package/plugins/luch-request/core/mergeConfig.js +125 -0
  9. package/plugins/luch-request/core/settle.js +16 -0
  10. package/plugins/luch-request/helpers/buildURL.js +71 -0
  11. package/plugins/luch-request/helpers/combineURLs.js +12 -0
  12. package/plugins/luch-request/helpers/isAbsoluteURL.js +14 -0
  13. package/plugins/luch-request/index.d.ts +197 -0
  14. package/plugins/luch-request/index.js +2 -0
  15. package/plugins/luch-request/readme.md +3 -0
  16. package/plugins/luch-request/utils/clone.js +264 -0
  17. package/plugins/luch-request/utils.js +131 -0
  18. package/plugins/request.js +2 -2
  19. package/ui-cv/components/cv-form-item/cv-form-item.vue +1 -1
  20. package/ui-fireui/fui-actionsheet/fui-actionsheet.vue +202 -0
  21. package/ui-fireui/fui-alert/fui-alert.vue +141 -0
  22. package/ui-fireui/fui-badge/fui-badge.vue +158 -0
  23. package/ui-fireui/fui-bottom-navigation/fui-bottom-navigation.vue +390 -0
  24. package/ui-fireui/fui-bottom-popup/fui-bottom-popup.vue +100 -0
  25. package/ui-fireui/fui-bubble-popup/fui-bubble-popup.vue +236 -0
  26. package/ui-fireui/fui-button/fui-button.vue +424 -0
  27. package/ui-fireui/fui-calendar/fui-calendar.js +915 -0
  28. package/ui-fireui/fui-calendar/fui-calendar.vue +868 -0
  29. package/ui-fireui/fui-card/fui-card.vue +231 -0
  30. package/ui-fireui/fui-cascade-selection/fui-cascade-selection.vue +538 -0
  31. package/ui-fireui/fui-circular-progress/fui-circular-progress.vue +261 -0
  32. package/ui-fireui/fui-collapse/fui-collapse.vue +179 -0
  33. package/ui-fireui/fui-countdown/fui-countdown.vue +301 -0
  34. package/ui-fireui/fui-datetime/fui-datetime.vue +570 -0
  35. package/ui-fireui/fui-divider/fui-divider.vue +118 -0
  36. package/ui-fireui/fui-drawer/fui-drawer.vue +103 -0
  37. package/ui-fireui/fui-dropdown-list/fui-dropdown-list.vue +70 -0
  38. package/ui-fireui/fui-fab/fui-fab.vue +284 -0
  39. package/ui-fireui/fui-footer/fui-footer.vue +131 -0
  40. package/ui-fireui/fui-grid/fui-grid.vue +42 -0
  41. package/ui-fireui/fui-grid-item/fui-grid-item.vue +142 -0
  42. package/ui-fireui/fui-icon/fui-icon.vue +820 -0
  43. package/ui-fireui/fui-image-cropper/fui-image-cropper.vue +1058 -0
  44. package/ui-fireui/fui-image-group/fui-image-group.vue +149 -0
  45. package/ui-fireui/fui-keyboard/fui-keyboard.vue +254 -0
  46. package/ui-fireui/fui-keyboard-input/fui-keyboard-input.vue +78 -0
  47. package/ui-fireui/fui-list-cell/fui-list-cell.vue +178 -0
  48. package/ui-fireui/fui-list-view/fui-list-view.vue +87 -0
  49. package/ui-fireui/fui-loading/fui-loading.vue +78 -0
  50. package/ui-fireui/fui-loadmore/fui-loadmore.vue +163 -0
  51. package/ui-fireui/fui-modal/fui-modal.vue +392 -0
  52. package/ui-fireui/fui-navigation-bar/fui-navigation-bar.vue +180 -0
  53. package/ui-fireui/fui-no-data/fui-no-data.vue +116 -0
  54. package/ui-fireui/fui-nomore/fui-nomore.vue +116 -0
  55. package/ui-fireui/fui-numberbox/fui-numberbox.vue +234 -0
  56. package/ui-fireui/fui-numberbox-border/fui-numberbox-border.vue +232 -0
  57. package/ui-fireui/fui-picture-cropper/fui-picture-cropper.vue +682 -0
  58. package/ui-fireui/fui-picture-cropper/fui-picture-cropper.wxs +560 -0
  59. package/ui-fireui/fui-rate/fui-rate.vue +167 -0
  60. package/ui-fireui/fui-round-progress/fui-round-progress.vue +306 -0
  61. package/ui-fireui/fui-scroll-top/fui-scroll-top.vue +189 -0
  62. package/ui-fireui/fui-sharemodel/fui-sharemodel.vue +181 -0
  63. package/ui-fireui/fui-skeleton/fui-skeleton.vue +248 -0
  64. package/ui-fireui/fui-steps/fui-steps.vue +214 -0
  65. package/ui-fireui/fui-sticky/fui-sticky.vue +155 -0
  66. package/ui-fireui/fui-sticky-wxs/fui-sticky-wxs.vue +133 -0
  67. package/ui-fireui/fui-sticky-wxs/fui-sticky.wxs +44 -0
  68. package/ui-fireui/fui-swipe-action/fui-swipe-action.vue +301 -0
  69. package/ui-fireui/fui-tabbar/fui-tabbar.vue +283 -0
  70. package/ui-fireui/fui-tabs/fui-tabs.vue +284 -0
  71. package/ui-fireui/fui-tabs2/fui-tabs2.vue +284 -0
  72. package/ui-fireui/fui-tag/fui-tag.vue +374 -0
  73. package/ui-fireui/fui-time-axis/fui-time-axis.vue +36 -0
  74. package/ui-fireui/fui-timeaxis-item/fui-timeaxis-item.vue +48 -0
  75. package/ui-fireui/fui-tips/fui-tips.vue +161 -0
  76. package/ui-fireui/fui-toast/fui-toast.vue +117 -0
  77. package/ui-fireui/fui-top-dropdown/fui-top-dropdown.vue +129 -0
  78. package/ui-fireui/fui-upload/fui-upload.vue +446 -0
  79. package/ui-fireui/fui-uploadsamll/fui-uploadsamll.vue +472 -0
  80. package/uview-plus/README.md +1 -1
  81. package/uview-plus/changelog-wu-tool.md +21 -0
  82. package/uview-plus/changelog-wu.md +91 -0
  83. package/uview-plus/components/u-action-sheet/_doc/changelog.md +12 -0
  84. package/uview-plus/components/u-action-sheet/_doc/package.json +92 -0
  85. package/uview-plus/components/u-action-sheet/_doc/readme.md +16 -0
  86. package/uview-plus/components/u-app-update/_doc/changelog.md +26 -0
  87. package/uview-plus/components/u-app-update/_doc/package.json +89 -0
  88. package/uview-plus/components/u-app-update/_doc/readme.md +16 -0
  89. package/uview-plus/components/u-app-update/config.js +120 -0
  90. package/uview-plus/components/u-app-update/img/act.png +0 -0
  91. package/uview-plus/components/u-app-update/img/appUploadAlertBoxBg.png +0 -0
  92. package/uview-plus/components/u-app-update/img/close.png +0 -0
  93. package/uview-plus/components/u-app-update/js-sdk/checkVersion.js +81 -0
  94. package/uview-plus/components/u-app-update/js-sdk/silentlyAppUpdate.js +41 -0
  95. package/uview-plus/components/u-app-update/pages/index.vue +8 -0
  96. package/uview-plus/components/u-app-update/u-app-update.vue +583 -0
  97. package/uview-plus/components/u-button-wu/_doc/changelog.md +6 -0
  98. package/uview-plus/components/u-button-wu/_doc/package.json +89 -0
  99. package/uview-plus/components/u-button-wu/_doc/readme.md +16 -0
  100. package/uview-plus/components/u-button-wu/u-button-wu.vue +522 -0
  101. package/uview-plus/components/u-button-wu/vue.scss +81 -0
  102. package/uview-plus/components/u-calendar-wu/_doc/changelog.md +145 -0
  103. package/uview-plus/components/u-calendar-wu/_doc/package.json +90 -0
  104. package/uview-plus/components/u-calendar-wu/_doc/readme.md +16 -0
  105. package/uview-plus/components/u-calendar-wu/calendar.js +664 -0
  106. package/uview-plus/components/u-calendar-wu/i18n/en.json +14 -0
  107. package/uview-plus/components/u-calendar-wu/i18n/index.js +8 -0
  108. package/uview-plus/components/u-calendar-wu/i18n/zh-Hans.json +14 -0
  109. package/uview-plus/components/u-calendar-wu/i18n/zh-Hant.json +14 -0
  110. package/uview-plus/components/u-calendar-wu/props.js +166 -0
  111. package/uview-plus/components/u-calendar-wu/style.css +196 -0
  112. package/uview-plus/components/u-calendar-wu/u-calendar-wu.vue +921 -0
  113. package/uview-plus/components/u-calendar-wu/util.js +552 -0
  114. package/uview-plus/components/u-calendar-wu/wu-calendar-block/props.js +73 -0
  115. package/uview-plus/components/u-calendar-wu/wu-calendar-block/wu-calendar-block.vue +122 -0
  116. package/uview-plus/components/u-calendar-wu/wu-calendar-item/props.js +55 -0
  117. package/uview-plus/components/u-calendar-wu/wu-calendar-item/wu-calendar-item.vue +293 -0
  118. package/uview-plus/components/u-cell/_doc/changelog.md +6 -0
  119. package/uview-plus/components/u-cell/_doc/package.json +89 -0
  120. package/uview-plus/components/u-cell/_doc/readme.md +25 -0
  121. package/uview-plus/components/u-checkbox/_doc/changelog.md +8 -0
  122. package/uview-plus/components/u-checkbox/_doc/package.json +88 -0
  123. package/uview-plus/components/u-checkbox/_doc/readme.md +25 -0
  124. package/uview-plus/components/u-code/_doc/changelog.md +6 -0
  125. package/uview-plus/components/u-code/_doc/package.json +86 -0
  126. package/uview-plus/components/u-code/_doc/readme.md +16 -0
  127. package/uview-plus/components/u-drag-sort/_doc/changelog.md +0 -0
  128. package/uview-plus/components/u-drag-sort/_doc/package.json +85 -0
  129. package/uview-plus/components/u-drag-sort/_doc/readme.md +16 -0
  130. package/uview-plus/components/u-drag-sort/u-drag-sort.vue +3 -0
  131. package/uview-plus/components/u-empty/u-empty.vue +27 -1
  132. package/uview-plus/components/u-gap/_doc/changelog.md +4 -0
  133. package/uview-plus/components/u-gap/_doc/package.json +86 -0
  134. package/uview-plus/components/u-gap/_doc/readme.md +22 -0
  135. package/uview-plus/components/u-icon/_doc/changelog.md +10 -0
  136. package/uview-plus/components/u-icon/_doc/package.json +85 -0
  137. package/uview-plus/components/u-icon/_doc/readme.md +10 -0
  138. package/uview-plus/components/u-icon/icon.js +23 -25
  139. package/uview-plus/components/u-icon/icons.js +213 -213
  140. package/uview-plus/components/u-icon/style.css +3 -3
  141. package/uview-plus/components/u-icon/u-icon2.vue +149 -0
  142. package/uview-plus/components/u-image-wu/_doc/changelog.md +21 -0
  143. package/uview-plus/components/u-image-wu/_doc/package.json +88 -0
  144. package/uview-plus/components/u-image-wu/_doc/readme.md +11 -0
  145. package/uview-plus/components/u-image-wu/props.js +94 -0
  146. package/uview-plus/components/u-image-wu/u-image-wu.vue +243 -0
  147. package/uview-plus/components/u-input/_doc/changelog.md +6 -0
  148. package/uview-plus/components/u-input/_doc/package.json +88 -0
  149. package/uview-plus/components/u-input/_doc/readme.md +16 -0
  150. package/uview-plus/components/u-line/_doc/changelog.md +8 -0
  151. package/uview-plus/components/u-line/_doc/package.json +86 -0
  152. package/uview-plus/components/u-line/_doc/readme.md +16 -0
  153. package/uview-plus/components/u-link/_doc/changelog.md +8 -0
  154. package/uview-plus/components/u-link/_doc/package.json +86 -0
  155. package/uview-plus/components/u-link/_doc/readme.md +20 -0
  156. package/uview-plus/components/u-loading-icon/_doc/changelog.md +12 -0
  157. package/uview-plus/components/u-loading-icon/_doc/package.json +86 -0
  158. package/uview-plus/components/u-loading-icon/_doc/readme.md +16 -0
  159. package/uview-plus/components/u-loading-icon/props.js +1 -1
  160. package/uview-plus/components/u-navbar/_doc/changelog.md +6 -0
  161. package/uview-plus/components/u-navbar/_doc/package.json +89 -0
  162. package/uview-plus/components/u-navbar/_doc/readme.md +16 -0
  163. package/uview-plus/components/u-navbar-wu/props.js +102 -0
  164. package/uview-plus/components/u-navbar-wu/u-navbar-wu.vue +196 -0
  165. package/uview-plus/components/u-number-box/_doc/changelog.md +19 -0
  166. package/uview-plus/components/u-number-box/_doc/package.json +88 -0
  167. package/uview-plus/components/u-number-box/_doc/readme.md +16 -0
  168. package/uview-plus/components/u-overlay/_doc/changelog.md +4 -0
  169. package/uview-plus/components/u-overlay/_doc/package.json +88 -0
  170. package/uview-plus/components/u-overlay/_doc/readme.md +16 -0
  171. package/uview-plus/components/u-popup/_doc/changelog.md +4 -0
  172. package/uview-plus/components/u-popup/_doc/package.json +92 -0
  173. package/uview-plus/components/u-popup/_doc/readme.md +16 -0
  174. package/uview-plus/components/u-popup-wu/keypress.js +45 -0
  175. package/uview-plus/components/u-popup-wu/u-popup-wu.vue +519 -0
  176. package/uview-plus/components/u-radio/_doc/changelog.md +6 -0
  177. package/uview-plus/components/u-radio/_doc/package.json +88 -0
  178. package/uview-plus/components/u-radio/_doc/readme.md +25 -0
  179. package/uview-plus/components/u-row/_doc/changelog.md +8 -0
  180. package/uview-plus/components/u-row/_doc/package.json +86 -0
  181. package/uview-plus/components/u-row/_doc/readme.md +16 -0
  182. package/uview-plus/components/u-safe-bottom/_doc/changelog.md +6 -0
  183. package/uview-plus/components/u-safe-bottom/_doc/package.json +86 -0
  184. package/uview-plus/components/u-safe-bottom/_doc/readme.md +16 -0
  185. package/uview-plus/components/u-sku-wu/_doc/changelog.md +27 -0
  186. package/uview-plus/components/u-sku-wu/_doc/package.json +93 -0
  187. package/uview-plus/components/u-sku-wu/_doc/readme.md +16 -0
  188. package/uview-plus/components/u-sku-wu/props.js +86 -0
  189. package/uview-plus/components/u-sku-wu/style.css +271 -0
  190. package/uview-plus/components/u-sku-wu/u-sku-wu.vue +864 -0
  191. package/uview-plus/components/u-status-bar/_doc/changelog.md +4 -0
  192. package/uview-plus/components/u-status-bar/_doc/package.json +86 -0
  193. package/uview-plus/components/u-status-bar/_doc/readme.md +16 -0
  194. package/uview-plus/components/u-text/_doc/changelog.md +10 -0
  195. package/uview-plus/components/u-text/_doc/package.json +89 -0
  196. package/uview-plus/components/u-text/_doc/readme.md +20 -0
  197. package/uview-plus/components/u-textarea/_doc/changelog.md +6 -0
  198. package/uview-plus/components/u-textarea/_doc/package.json +86 -0
  199. package/uview-plus/components/u-textarea/_doc/readme.md +25 -0
  200. package/uview-plus/components/u-transition/_doc/changelog.md +14 -0
  201. package/uview-plus/components/u-transition/_doc/package.json +86 -0
  202. package/uview-plus/components/u-transition/_doc/readme.md +16 -0
  203. package/uview-plus/components/u-transition-wu/createAnimation.js +148 -0
  204. package/uview-plus/components/u-transition-wu/props.js +32 -0
  205. package/uview-plus/components/u-transition-wu/u-transition.vue +300 -0
  206. package/uview-plus/components/u-verification-code/u-verification-code.vue +161 -0
  207. package/uview-plus/index.js +107 -94
  208. package/uview-plus/libs/config/config.js +46 -48
  209. package/uview-plus/libs/css/color.scss +32 -311
  210. package/uview-plus/libs/css/components-wu.scss +30 -0
  211. package/uview-plus/libs/css/vue.scss +10 -10
  212. package/uview-plus/libs/function/calc.js +61 -55
  213. package/uview-plus/libs/function/cc.js +66 -0
  214. package/uview-plus/libs/function/color/color-convert/CHANGELOG.md +54 -0
  215. package/uview-plus/libs/function/color/color-convert/LICENSE +21 -0
  216. package/uview-plus/libs/function/color/color-convert/README.md +68 -0
  217. package/uview-plus/libs/function/color/color-convert/conversions.js +839 -0
  218. package/uview-plus/libs/function/color/color-convert/index.js +81 -0
  219. package/uview-plus/libs/function/color/color-convert/package.json +48 -0
  220. package/uview-plus/libs/function/color/color-convert/route.js +97 -0
  221. package/uview-plus/libs/function/color/color-name/LICENSE +8 -0
  222. package/uview-plus/libs/function/color/color-name/README.md +11 -0
  223. package/uview-plus/libs/function/color/color-name/index.js +152 -0
  224. package/uview-plus/libs/function/color/color-name/package.json +28 -0
  225. package/uview-plus/libs/function/color/color-string/LICENSE +21 -0
  226. package/uview-plus/libs/function/color/color-string/README.md +62 -0
  227. package/uview-plus/libs/function/color/color-string/index.js +244 -0
  228. package/uview-plus/libs/function/color/color-string/package.json +39 -0
  229. package/uview-plus/libs/function/color/color.js +496 -0
  230. package/uview-plus/libs/function/color/index.js +158 -0
  231. package/uview-plus/libs/function/color/is-arrayish/LICENSE +21 -0
  232. package/uview-plus/libs/function/color/is-arrayish/README.md +16 -0
  233. package/uview-plus/libs/function/color/is-arrayish/index.js +9 -0
  234. package/uview-plus/libs/function/color/is-arrayish/package.json +45 -0
  235. package/uview-plus/libs/function/color/is-arrayish/yarn-error.log +1443 -0
  236. package/uview-plus/libs/function/color/simple-swizzle/LICENSE +21 -0
  237. package/uview-plus/libs/function/color/simple-swizzle/README.md +39 -0
  238. package/uview-plus/libs/function/color/simple-swizzle/index.js +29 -0
  239. package/uview-plus/libs/function/color/simple-swizzle/package.json +36 -0
  240. package/uview-plus/libs/function/colorGradient.js +108 -106
  241. package/uview-plus/libs/function/debounce.js +17 -17
  242. package/uview-plus/libs/function/digit.js +1 -3
  243. package/uview-plus/libs/function/http.js +3 -3
  244. package/uview-plus/libs/function/index-wu.js +231 -0
  245. package/uview-plus/libs/function/index.js +579 -566
  246. package/uview-plus/libs/function/platform.js +18 -18
  247. package/uview-plus/libs/function/test.js +135 -137
  248. package/uview-plus/libs/function/throttle.js +17 -17
  249. package/uview-plus/libs/luch-request/core/Request.js +199 -199
  250. package/uview-plus/libs/mixin/mpMixin.js +1 -0
  251. package/uview-plus/libs/mixin/openType.js +33 -0
  252. package/uview-plus/libs/util/async-validator.js +1343 -1343
  253. package/uview-plus/libs/util/dayjs.js +404 -0
  254. package/uview-plus/libs/util/route.js +101 -105
  255. package/uview-plus/package-wu-tool.json +84 -0
  256. package/uview-plus/package-wu.json +112 -0
  257. package/uview-plus/package.json +106 -95
  258. package/uview-plus/readme-wu.md +148 -0
  259. package/uview-ui/index.js +51 -52
  260. package/plugins/uni-upgrade.js +0 -294
@@ -0,0 +1,519 @@
1
+ <template>
2
+ <view v-if="showPopup" class="u-popup" :class="[popupClass, isDesktop ? 'fixforpc-z-index' : '']" :style="[{ zIndex: zIndex }]">
3
+ <view @touchstart="touchstart">
4
+ <!-- 遮罩层 -->
5
+ <u-overlay
6
+ key="1"
7
+ v-if="maskShow && overlay"
8
+ :show="showTrans"
9
+ :duration="duration"
10
+ :custom-style="overlayStyle"
11
+ :opacity="overlayOpacity"
12
+ :zIndex="zIndex"
13
+ @click="onTap"
14
+ ></u-overlay>
15
+ <u-transition
16
+ key="2"
17
+ :mode="ani"
18
+ name="content"
19
+ :custom-style="transitionStyle"
20
+ :duration="duration"
21
+ :show="showTrans"
22
+ @click="onTap"
23
+ >
24
+ <view class="u-popup__content" :style="[contentStyle]" :class="[popupClass]" @click="clear">
25
+ <u-status-bar v-if="safeAreaInsetTop"></u-status-bar>
26
+ <slot />
27
+ <u-safe-bottom v-if="safeAreaInsetBottom"></u-safe-bottom>
28
+ <view
29
+ v-if="closeable"
30
+ @tap.stop="close"
31
+ class="u-popup__content__close"
32
+ :class="['u-popup__content__close--' + closeIconPos]"
33
+ hover-class="u-popup__content__close--hover"
34
+ hover-stay-time="150"
35
+ >
36
+ <u-icon name="close" color="#909399" size="18" bold></u-icon>
37
+ </view>
38
+ </view>
39
+ </u-transition>
40
+ </view>
41
+ <!-- #ifdef H5 -->
42
+ <keypress v-if="maskShow" @esc="onTap" />
43
+ <!-- #endif -->
44
+ </view>
45
+ </template>
46
+
47
+ <script>
48
+ // #ifdef H5
49
+ import keypress from './keypress.js'
50
+ // #endif
51
+ import {mpMixin} from '../../libs/mixin/mpMixin.js'
52
+ import {mixin} from '../../libs/mixin/mixin.js'
53
+ /**
54
+ * popup 弹出层
55
+ * @description 弹出层组件,为了解决遮罩弹层的问题
56
+ * @tutorial https://ijry.github.io/uview-plus/components/popup.html
57
+ * @property {String} mode = [top|center|bottom|left|right] 弹出方式
58
+ * @value top 顶部弹出
59
+ * @value center 中间弹出
60
+ * @value bottom 底部弹出
61
+ * @value left 左侧弹出
62
+ * @value right 右侧弹出
63
+ * @property {Number} duration 动画时长,默认300
64
+ * @property {Boolean} overlay 是否显示遮罩,默认true
65
+ * @property {Boolean} overlayOpacity 遮罩透明度,默认0.5
66
+ * @property {Object} overlayStyle 遮罩自定义样式
67
+ * @property {Boolean} closeOnClickOverlay = [true|false] 蒙版点击是否关闭弹窗,默认true
68
+ * @property {Number | String} zIndex 弹出层的层级
69
+ * @property {Boolean} safeAreaInsetTop 是否留出顶部安全区(状态栏高度),默认false
70
+ * @property {Boolean} safeAreaInsetBottom 是否为留出底部安全区适配,默认true
71
+ * @property {Boolean} closeable 是否显示关闭图标,默认false
72
+ * @property {Boolean} closeIconPos 自定义关闭图标位置,`top-left`-左上角,`top-right`-右上角,`bottom-left`-左下角,`bottom-right`-右下角,默认top-right
73
+ * @property {String} bgColor 主窗口背景色
74
+ * @property {String} maskBackgroundColor 蒙版颜色
75
+ * @property {Boolean} customStyle 自定义样式
76
+ * @event {Function} change 打开关闭弹窗触发,e={show: false}
77
+ * @event {Function} maskClick 点击遮罩触发
78
+ */
79
+ export default {
80
+ name: 'u-popup',
81
+ components: {
82
+ // #ifdef H5
83
+ keypress
84
+ // #endif
85
+ },
86
+ mixins: [mpMixin, mixin],
87
+ emits: ['change', 'maskClick'],
88
+ props: {
89
+ // 弹出层类型,可选值,top: 顶部弹出层;bottom:底部弹出层;center:全屏弹出层
90
+ // message: 消息提示 ; dialog : 对话框
91
+ mode: {
92
+ type: String,
93
+ default: 'center'
94
+ },
95
+ // 动画时长,单位ms
96
+ duration: {
97
+ type: [String, Number],
98
+ default: 300
99
+ },
100
+ // 层级
101
+ zIndex: {
102
+ type: [String, Number],
103
+ // #ifdef H5
104
+ default: 997
105
+ // #endif
106
+ // #ifndef H5
107
+ default: 10075
108
+ // #endif
109
+ },
110
+ bgColor: {
111
+ type: String,
112
+ default: '#ffffff'
113
+ },
114
+ safeArea: {
115
+ type: Boolean,
116
+ default: true
117
+ },
118
+ // 是否显示遮罩
119
+ overlay: {
120
+ type: Boolean,
121
+ default: true
122
+ },
123
+ // 点击遮罩是否关闭弹窗
124
+ closeOnClickOverlay: {
125
+ type: Boolean,
126
+ default: true
127
+ },
128
+ // 遮罩的透明度,0-1之间
129
+ overlayOpacity: {
130
+ type: [Number, String],
131
+ default: 0.4
132
+ },
133
+ // 自定义遮罩的样式
134
+ overlayStyle: {
135
+ type: [Object, String],
136
+ default: ''
137
+ },
138
+ // 是否为iPhoneX留出底部安全距离
139
+ safeAreaInsetBottom: {
140
+ type: Boolean,
141
+ default: true
142
+ },
143
+ // 是否留出顶部安全距离(状态栏高度)
144
+ safeAreaInsetTop: {
145
+ type: Boolean,
146
+ default: false
147
+ },
148
+ // 是否显示关闭图标
149
+ closeable: {
150
+ type: Boolean,
151
+ default: false
152
+ },
153
+ // 自定义关闭图标位置,top-left为左上角,top-right为右上角,bottom-left为左下角,bottom-right为右下角
154
+ closeIconPos: {
155
+ type: String,
156
+ default: 'top-right'
157
+ },
158
+ // mode=center,也即中部弹出时,是否使用缩放模式
159
+ zoom: {
160
+ type: Boolean,
161
+ default: true
162
+ },
163
+ round: {
164
+ type: [Number, String],
165
+ default: 0
166
+ },
167
+ ...uni.$w?.props?.popup
168
+ },
169
+ watch: {
170
+ /**
171
+ * 监听type类型
172
+ */
173
+ type: {
174
+ handler: function(type) {
175
+ if (!this.config[type]) return
176
+ this[this.config[type]](true)
177
+ },
178
+ immediate: true
179
+ },
180
+ isDesktop: {
181
+ handler: function(newVal) {
182
+ if (!this.config[newVal]) return
183
+ this[this.config[this.mode]](true)
184
+ },
185
+ immediate: true
186
+ },
187
+ // H5 下禁止底部滚动
188
+ showPopup(show) {
189
+ // #ifdef H5
190
+ // fix by mehaotian 处理 h5 滚动穿透的问题
191
+ document.getElementsByTagName('body')[0].style.overflow = show ? 'hidden' : 'visible'
192
+ // #endif
193
+ }
194
+ },
195
+ data() {
196
+ return {
197
+ ani: [],
198
+ showPopup: false,
199
+ showTrans: false,
200
+ popupWidth: 0,
201
+ popupHeight: 0,
202
+ config: {
203
+ top: 'top',
204
+ bottom: 'bottom',
205
+ center: 'center',
206
+ left: 'left',
207
+ right: 'right',
208
+ message: 'top',
209
+ dialog: 'center',
210
+ share: 'bottom'
211
+ },
212
+ transitionStyle: {
213
+ position: 'fixed',
214
+ left: 0,
215
+ right: 0
216
+ },
217
+ maskShow: true,
218
+ mkclick: true,
219
+ popupClass: this.isDesktop ? 'fixforpc-top' : 'top'
220
+ }
221
+ },
222
+ computed: {
223
+ isDesktop() {
224
+ return this.popupWidth >= 500 && this.popupHeight >= 500
225
+ },
226
+ bg() {
227
+ if (this.bgColor === '' || this.bgColor === 'none' || getPx(this.round)>0) {
228
+ return 'transparent'
229
+ }
230
+ return this.bgColor
231
+ },
232
+ contentStyle() {
233
+ const style = {};
234
+ if (this.bgColor) {
235
+ style.backgroundColor = this.bg
236
+ }
237
+ if(this.round) {
238
+ const value = addUnit(this.round)
239
+ style.backgroundColor = this.bgColor
240
+ if(this.mode === 'top') {
241
+ style.borderBottomLeftRadius = value
242
+ style.borderBottomRightRadius = value
243
+ } else if(this.mode === 'bottom') {
244
+ style.borderTopLeftRadius = value
245
+ style.borderTopRightRadius = value
246
+ } else if(this.mode === 'center') {
247
+ style.borderRadius = value
248
+ }
249
+ }
250
+ return deepMerge(style, addStyle(this.customStyle))
251
+ }
252
+ },
253
+ // #ifndef VUE3
254
+ // TODO vue2
255
+ destroyed() {
256
+ this.setH5Visible()
257
+ },
258
+ // #endif
259
+ // #ifdef VUE3
260
+ // TODO vue3
261
+ unmounted() {
262
+ this.setH5Visible()
263
+ },
264
+ // #endif
265
+ created() {
266
+ // TODO 处理 message 组件生命周期异常的问题
267
+ this.messageChild = null
268
+ // TODO 解决头条冒泡的问题
269
+ this.clearPropagation = false
270
+ },
271
+ methods: {
272
+ setH5Visible() {
273
+ // #ifdef H5
274
+ // fix by mehaotian 处理 h5 滚动穿透的问题
275
+ document.getElementsByTagName('body')[0].style.overflow = 'visible'
276
+ // #endif
277
+ },
278
+ /**
279
+ * 公用方法,不显示遮罩层
280
+ */
281
+ closeMask() {
282
+ this.maskShow = false
283
+ },
284
+ // TODO nvue 取消冒泡
285
+ clear(e) {
286
+ // #ifndef APP-NVUE
287
+ e.stopPropagation()
288
+ // #endif
289
+ this.clearPropagation = true
290
+ },
291
+
292
+ open(direction) {
293
+ // fix by mehaotian 处理快速打开关闭的情况
294
+ if (this.showPopup) {
295
+ return
296
+ }
297
+ let innerType = ['top', 'center', 'bottom', 'left', 'right', 'message', 'dialog', 'share']
298
+ if (!(direction && innerType.indexOf(direction) !== -1)) {
299
+ direction = this.mode
300
+ }
301
+ if (!this.config[direction]) {
302
+ return error(`缺少类型:${direction}`);
303
+ }
304
+ this[this.config[direction]]()
305
+ this.$emit('change', {
306
+ show: true,
307
+ type: direction
308
+ })
309
+ },
310
+ close(type) {
311
+ this.showTrans = false
312
+ this.$emit('change', {
313
+ show: false,
314
+ type: this.mode
315
+ })
316
+ clearTimeout(this.timer)
317
+ // // 自定义关闭事件
318
+ this.timer = setTimeout(() => {
319
+ this.showPopup = false
320
+ }, 300)
321
+ },
322
+ // TODO 处理冒泡事件,头条的冒泡事件有问题 ,先这样兼容
323
+ touchstart() {
324
+ this.clearPropagation = false
325
+ },
326
+ onTap() {
327
+ if (this.clearPropagation) {
328
+ // fix by mehaotian 兼容 nvue
329
+ this.clearPropagation = false
330
+ return
331
+ }
332
+ this.$emit('maskClick')
333
+ if (!this.closeOnClickOverlay) return
334
+ this.close()
335
+ },
336
+ /**
337
+ * 顶部弹出样式处理
338
+ */
339
+ top(type) {
340
+ this.popupClass = this.isDesktop ? 'fixforpc-top' : 'top'
341
+ this.ani = ['slide-top']
342
+ this.transitionStyle = {
343
+ position: 'fixed',
344
+ zIndex: this.zIndex,
345
+ left: 0,
346
+ right: 0,
347
+ backgroundColor: this.bg
348
+ }
349
+ // TODO 兼容 type 属性 ,后续会废弃
350
+ if (type) return
351
+ this.showPopup = true
352
+ this.showTrans = true
353
+ this.$nextTick(() => {
354
+ if (this.messageChild && this.mode === 'message') {
355
+ this.messageChild.timerClose()
356
+ }
357
+ })
358
+ },
359
+ /**
360
+ * 底部弹出样式处理
361
+ */
362
+ bottom(type) {
363
+ this.popupClass = 'bottom'
364
+ this.ani = ['slide-bottom']
365
+ this.transitionStyle = {
366
+ position: 'fixed',
367
+ zIndex: this.zIndex,
368
+ left: 0,
369
+ right: 0,
370
+ bottom: 0,
371
+ backgroundColor: this.bg
372
+ }
373
+ // TODO 兼容 type 属性 ,后续会废弃
374
+ if (type) return
375
+ this.showPopup = true
376
+ this.showTrans = true
377
+ },
378
+ /**
379
+ * 中间弹出样式处理
380
+ */
381
+ center(type) {
382
+ this.popupClass = 'center'
383
+ this.ani = this.zoom?['zoom-in', 'fade']:['fade'];
384
+ this.transitionStyle = {
385
+ position: 'fixed',
386
+ zIndex: this.zIndex,
387
+ /* #ifndef APP-NVUE */
388
+ display: 'flex',
389
+ flexDirection: 'column',
390
+ /* #endif */
391
+ bottom: 0,
392
+ left: 0,
393
+ right: 0,
394
+ top: 0,
395
+ justifyContent: 'center',
396
+ alignItems: 'center'
397
+ }
398
+ // TODO 兼容 type 属性 ,后续会废弃
399
+ if (type) return
400
+ this.showPopup = true
401
+ this.showTrans = true
402
+ },
403
+ left(type) {
404
+ this.popupClass = 'left'
405
+ this.ani = ['slide-left']
406
+ this.transitionStyle = {
407
+ position: 'fixed',
408
+ zIndex: this.zIndex,
409
+ left: 0,
410
+ bottom: 0,
411
+ top: 0,
412
+ backgroundColor: this.bg,
413
+ /* #ifndef APP-NVUE */
414
+ display: 'flex',
415
+ flexDirection: 'column'
416
+ /* #endif */
417
+ }
418
+ // TODO 兼容 type 属性 ,后续会废弃
419
+ if (type) return
420
+ this.showPopup = true
421
+ this.showTrans = true
422
+ },
423
+ right(type) {
424
+ this.popupClass = 'right'
425
+ this.ani = ['slide-right']
426
+ this.transitionStyle = {
427
+ position: 'fixed',
428
+ zIndex: this.zIndex,
429
+ bottom: 0,
430
+ right: 0,
431
+ top: 0,
432
+ backgroundColor: this.bg,
433
+ /* #ifndef APP-NVUE */
434
+ display: 'flex',
435
+ flexDirection: 'column'
436
+ /* #endif */
437
+ }
438
+ // TODO 兼容 type 属性 ,后续会废弃
439
+ if (type) return
440
+ this.showPopup = true
441
+ this.showTrans = true
442
+ }
443
+ }
444
+ }
445
+ </script>
446
+ <style lang="scss" scoped>
447
+ .u-popup {
448
+ position: fixed;
449
+ /* #ifndef APP-NVUE */
450
+ z-index: 99;
451
+
452
+ /* #endif */
453
+ &.top,
454
+ &.left,
455
+ &.right {
456
+ /* #ifdef H5 */
457
+ top: var(--window-top);
458
+ /* #endif */
459
+ /* #ifndef H5 */
460
+ top: 0;
461
+ /* #endif */
462
+ }
463
+
464
+ .u-popup__content {
465
+ /* #ifndef APP-NVUE */
466
+ display: block;
467
+ /* #endif */
468
+ position: relative;
469
+
470
+ &.left,
471
+ &.right {
472
+ /* #ifdef H5 */
473
+ padding-top: var(--window-top);
474
+ /* #endif */
475
+ /* #ifndef H5 */
476
+ padding-top: 0;
477
+ /* #endif */
478
+ flex: 1;
479
+ }
480
+ &__close {
481
+ position: absolute;
482
+
483
+ &--hover {
484
+ opacity: 0.4;
485
+ }
486
+ }
487
+
488
+ &__close--top-left {
489
+ top: 15px;
490
+ left: 15px;
491
+ }
492
+
493
+ &__close--top-right {
494
+ top: 15px;
495
+ right: 15px;
496
+ }
497
+
498
+ &__close--bottom-left {
499
+ bottom: 15px;
500
+ left: 15px;
501
+ }
502
+
503
+ &__close--bottom-right {
504
+ right: 15px;
505
+ bottom: 15px;
506
+ }
507
+ }
508
+ }
509
+
510
+ .fixforpc-z-index {
511
+ /* #ifndef APP-NVUE */
512
+ z-index: 999;
513
+ /* #endif */
514
+ }
515
+
516
+ .fixforpc-top {
517
+ top: 0;
518
+ }
519
+ </style>
@@ -0,0 +1,6 @@
1
+ ## 1.0.2(2024-05-08)
2
+ 更新域名
3
+ ## 1.0.1(2023-09-11)
4
+ 自定义事件声明
5
+ ## 1.0.0(2023-09-01)
6
+ u-radio 单选框,用于有一个选择,用户只能选择其中一个的场景。
@@ -0,0 +1,88 @@
1
+ {
2
+ "id": "u-radio",
3
+ "displayName": "u-radio 单选框,全端兼容,无论平台,一致体验。",
4
+ "version": "1.0.2",
5
+ "description": "u-radio 单选框,用于有一个选择,用户只能选择其中一个的场景。",
6
+ "keywords": [
7
+ "u-ui",
8
+ "wuui",
9
+ "u-radio",
10
+ "radio",
11
+ "单选框"
12
+ ],
13
+ "repository": "",
14
+ "engines": {
15
+ "HBuilderX": "^3.4.15"
16
+ },
17
+ "dcloudext": {
18
+ "type": "component-vue",
19
+ "sale": {
20
+ "regular": {
21
+ "price": "0.00"
22
+ },
23
+ "sourcecode": {
24
+ "price": "0.00"
25
+ }
26
+ },
27
+ "contact": {
28
+ "qq": ""
29
+ },
30
+ "declaration": {
31
+ "ads": "无",
32
+ "data": "插件不采集任何数据",
33
+ "permissions": "无"
34
+ },
35
+ "npmurl": ""
36
+ },
37
+ "uni_modules": {
38
+ "dependencies": [
39
+ "u-icon"
40
+ ],
41
+ "encrypt": [],
42
+ "platforms": {
43
+ "cloud": {
44
+ "tcb": "y",
45
+ "aliyun": "y",
46
+ "alipay": "n"
47
+ },
48
+ "client": {
49
+ "Vue": {
50
+ "vue2": "y",
51
+ "vue3": "y"
52
+ },
53
+ "App": {
54
+ "app-vue": "y",
55
+ "app-nvue": "y"
56
+ },
57
+ "H5-mobile": {
58
+ "Safari": "y",
59
+ "Android Browser": "y",
60
+ "微信浏览器(Android)": "y",
61
+ "QQ浏览器(Android)": "y"
62
+ },
63
+ "H5-pc": {
64
+ "Chrome": "y",
65
+ "IE": "y",
66
+ "Edge": "y",
67
+ "Firefox": "y",
68
+ "Safari": "y"
69
+ },
70
+ "小程序": {
71
+ "微信": "y",
72
+ "阿里": "y",
73
+ "百度": "y",
74
+ "字节跳动": "y",
75
+ "QQ": "y",
76
+ "钉钉": "n",
77
+ "快手": "n",
78
+ "飞书": "n",
79
+ "京东": "n"
80
+ },
81
+ "快应用": {
82
+ "华为": "n",
83
+ "联盟": "n"
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
@@ -0,0 +1,25 @@
1
+ ## u-radio 单选框
2
+
3
+ > **组件名:u-radio**
4
+
5
+ 单选框用于有一个选择,用户只能选择其中一个的场景。
6
+
7
+ ## [查看文档](https://ijry.github.io/uview-plus/components/radio.html)
8
+
9
+ ## [更多组件, 请查看 `u-ui` 组件库](https://ext.dcloud.net.cn/plugin?name=u--ui)
10
+ (请勿下载插件zip)
11
+
12
+ <a href="https://ext.dcloud.net.cn/plugin?name=u--ui">
13
+ <img src="https://wuui.cn/intr.png">
14
+ </a>
15
+
16
+ **如使用过程中有任何问题,或者您对u-ui有一些好的建议。<br>欢迎加入 [u-ui 交流群](https://ijry.github.io/uview-plus/components/qqFeedBack.html)**
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
@@ -0,0 +1,8 @@
1
+ ## 1.0.3(2024-05-08)
2
+ 更新域名
3
+ ## 1.0.2(2023-09-11)
4
+ 自定义事件声明
5
+ ## 1.0.1(2023-08-27)
6
+ 整合row、col
7
+ ## 1.0.0(2023-08-09)
8
+ row 通过基础的 12 分栏,迅速简便地创建布局