@tarojs/components 3.6.0-canary.10 → 3.6.0-canary.12

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 (350) hide show
  1. package/dist/cjs/taro-swiper-core_2.cjs.entry.js +3 -5
  2. package/dist/cjs/taro-swiper-core_2.cjs.entry.js.map +1 -1
  3. package/dist/collection/components/swiper/swiper.js +3 -5
  4. package/dist/collection/components/swiper/swiper.js.map +1 -1
  5. package/dist/components/helper.js +15 -0
  6. package/dist/components/helper.js.map +1 -0
  7. package/dist/components/hls.js +27622 -0
  8. package/dist/components/hls.js.map +1 -0
  9. package/dist/components/index.d.ts +97 -0
  10. package/dist/components/index.js +79 -0
  11. package/dist/components/index.js.map +1 -0
  12. package/dist/components/index2.js +78 -0
  13. package/dist/components/index2.js.map +1 -0
  14. package/dist/components/index3.js +33 -0
  15. package/dist/components/index3.js.map +1 -0
  16. package/dist/components/intersection-observer.js +728 -0
  17. package/dist/components/intersection-observer.js.map +1 -0
  18. package/dist/components/picker-group.js +220 -0
  19. package/dist/components/picker-group.js.map +1 -0
  20. package/dist/components/taro-ad-core.d.ts +11 -0
  21. package/dist/components/taro-ad-core.js +35 -0
  22. package/dist/components/taro-ad-core.js.map +1 -0
  23. package/dist/components/taro-ad-custom-core.d.ts +11 -0
  24. package/dist/components/taro-ad-custom-core.js +35 -0
  25. package/dist/components/taro-ad-custom-core.js.map +1 -0
  26. package/dist/components/taro-animation-video-core.d.ts +11 -0
  27. package/dist/components/taro-animation-video-core.js +35 -0
  28. package/dist/components/taro-animation-video-core.js.map +1 -0
  29. package/dist/components/taro-animation-view-core.d.ts +11 -0
  30. package/dist/components/taro-animation-view-core.js +35 -0
  31. package/dist/components/taro-animation-view-core.js.map +1 -0
  32. package/dist/components/taro-ar-camera-core.d.ts +11 -0
  33. package/dist/components/taro-ar-camera-core.js +35 -0
  34. package/dist/components/taro-ar-camera-core.js.map +1 -0
  35. package/dist/components/taro-audio-core.d.ts +11 -0
  36. package/dist/components/taro-audio-core.js +80 -0
  37. package/dist/components/taro-audio-core.js.map +1 -0
  38. package/dist/components/taro-aweme-data-core.d.ts +11 -0
  39. package/dist/components/taro-aweme-data-core.js +35 -0
  40. package/dist/components/taro-aweme-data-core.js.map +1 -0
  41. package/dist/components/taro-block-core.d.ts +11 -0
  42. package/dist/components/taro-block-core.js +31 -0
  43. package/dist/components/taro-block-core.js.map +1 -0
  44. package/dist/components/taro-button-core.d.ts +11 -0
  45. package/dist/components/taro-button-core.js +102 -0
  46. package/dist/components/taro-button-core.js.map +1 -0
  47. package/dist/components/taro-camera-core.d.ts +11 -0
  48. package/dist/components/taro-camera-core.js +35 -0
  49. package/dist/components/taro-camera-core.js.map +1 -0
  50. package/dist/components/taro-canvas-core.d.ts +11 -0
  51. package/dist/components/taro-canvas-core.js +57 -0
  52. package/dist/components/taro-canvas-core.js.map +1 -0
  53. package/dist/components/taro-checkbox-core.d.ts +11 -0
  54. package/dist/components/taro-checkbox-core.js +81 -0
  55. package/dist/components/taro-checkbox-core.js.map +1 -0
  56. package/dist/components/taro-checkbox-group-core.d.ts +11 -0
  57. package/dist/components/taro-checkbox-group-core.js +71 -0
  58. package/dist/components/taro-checkbox-group-core.js.map +1 -0
  59. package/dist/components/taro-comment-detail-core.d.ts +11 -0
  60. package/dist/components/taro-comment-detail-core.js +35 -0
  61. package/dist/components/taro-comment-detail-core.js.map +1 -0
  62. package/dist/components/taro-comment-list-core.d.ts +11 -0
  63. package/dist/components/taro-comment-list-core.js +35 -0
  64. package/dist/components/taro-comment-list-core.js.map +1 -0
  65. package/dist/components/taro-contact-button-core.d.ts +11 -0
  66. package/dist/components/taro-contact-button-core.js +35 -0
  67. package/dist/components/taro-contact-button-core.js.map +1 -0
  68. package/dist/components/taro-cover-image-core.d.ts +11 -0
  69. package/dist/components/taro-cover-image-core.js +52 -0
  70. package/dist/components/taro-cover-image-core.js.map +1 -0
  71. package/dist/components/taro-cover-view-core.d.ts +11 -0
  72. package/dist/components/taro-cover-view-core.js +89 -0
  73. package/dist/components/taro-cover-view-core.js.map +1 -0
  74. package/dist/components/taro-custom-wrapper-core.d.ts +11 -0
  75. package/dist/components/taro-custom-wrapper-core.js +31 -0
  76. package/dist/components/taro-custom-wrapper-core.js.map +1 -0
  77. package/dist/components/taro-editor-core.d.ts +11 -0
  78. package/dist/components/taro-editor-core.js +35 -0
  79. package/dist/components/taro-editor-core.js.map +1 -0
  80. package/dist/components/taro-follow-swan-core.d.ts +11 -0
  81. package/dist/components/taro-follow-swan-core.js +35 -0
  82. package/dist/components/taro-follow-swan-core.js.map +1 -0
  83. package/dist/components/taro-form-core.d.ts +11 -0
  84. package/dist/components/taro-form-core.js +140 -0
  85. package/dist/components/taro-form-core.js.map +1 -0
  86. package/dist/components/taro-functional-page-navigator-core.d.ts +11 -0
  87. package/dist/components/taro-functional-page-navigator-core.js +35 -0
  88. package/dist/components/taro-functional-page-navigator-core.js.map +1 -0
  89. package/dist/components/taro-icon-core.d.ts +11 -0
  90. package/dist/components/taro-icon-core.js +48 -0
  91. package/dist/components/taro-icon-core.js.map +1 -0
  92. package/dist/components/taro-image-core.d.ts +11 -0
  93. package/dist/components/taro-image-core.js +81 -0
  94. package/dist/components/taro-image-core.js.map +1 -0
  95. package/dist/components/taro-inline-payment-panel-core.d.ts +11 -0
  96. package/dist/components/taro-inline-payment-panel-core.js +35 -0
  97. package/dist/components/taro-inline-payment-panel-core.js.map +1 -0
  98. package/dist/components/taro-input-core.d.ts +11 -0
  99. package/dist/components/taro-input-core.js +246 -0
  100. package/dist/components/taro-input-core.js.map +1 -0
  101. package/dist/components/taro-keyboard-accessory-core.d.ts +11 -0
  102. package/dist/components/taro-keyboard-accessory-core.js +35 -0
  103. package/dist/components/taro-keyboard-accessory-core.js.map +1 -0
  104. package/dist/components/taro-label-core.d.ts +11 -0
  105. package/dist/components/taro-label-core.js +34 -0
  106. package/dist/components/taro-label-core.js.map +1 -0
  107. package/dist/components/taro-lifestyle-core.d.ts +11 -0
  108. package/dist/components/taro-lifestyle-core.js +35 -0
  109. package/dist/components/taro-lifestyle-core.js.map +1 -0
  110. package/dist/components/taro-like-core.d.ts +11 -0
  111. package/dist/components/taro-like-core.js +35 -0
  112. package/dist/components/taro-like-core.js.map +1 -0
  113. package/dist/components/taro-live-player-core.d.ts +11 -0
  114. package/dist/components/taro-live-player-core.js +35 -0
  115. package/dist/components/taro-live-player-core.js.map +1 -0
  116. package/dist/components/taro-live-pusher-core.d.ts +11 -0
  117. package/dist/components/taro-live-pusher-core.js +35 -0
  118. package/dist/components/taro-live-pusher-core.js.map +1 -0
  119. package/dist/components/taro-login-core.d.ts +11 -0
  120. package/dist/components/taro-login-core.js +35 -0
  121. package/dist/components/taro-login-core.js.map +1 -0
  122. package/dist/components/taro-lottie-core.d.ts +11 -0
  123. package/dist/components/taro-lottie-core.js +35 -0
  124. package/dist/components/taro-lottie-core.js.map +1 -0
  125. package/dist/components/taro-map-core.d.ts +11 -0
  126. package/dist/components/taro-map-core.js +35 -0
  127. package/dist/components/taro-map-core.js.map +1 -0
  128. package/dist/components/taro-match-media-core.d.ts +11 -0
  129. package/dist/components/taro-match-media-core.js +35 -0
  130. package/dist/components/taro-match-media-core.js.map +1 -0
  131. package/dist/components/taro-movable-area-core.d.ts +11 -0
  132. package/dist/components/taro-movable-area-core.js +175 -0
  133. package/dist/components/taro-movable-area-core.js.map +1 -0
  134. package/dist/components/taro-movable-view-core.d.ts +11 -0
  135. package/dist/components/taro-movable-view-core.js +361 -0
  136. package/dist/components/taro-movable-view-core.js.map +1 -0
  137. package/dist/components/taro-native-slot-core.d.ts +11 -0
  138. package/dist/components/taro-native-slot-core.js +35 -0
  139. package/dist/components/taro-native-slot-core.js.map +1 -0
  140. package/dist/components/taro-navigation-bar-core.d.ts +11 -0
  141. package/dist/components/taro-navigation-bar-core.js +35 -0
  142. package/dist/components/taro-navigation-bar-core.js.map +1 -0
  143. package/dist/components/taro-navigator-core.d.ts +11 -0
  144. package/dist/components/taro-navigator-core.js +96 -0
  145. package/dist/components/taro-navigator-core.js.map +1 -0
  146. package/dist/components/taro-official-account-core.d.ts +11 -0
  147. package/dist/components/taro-official-account-core.js +35 -0
  148. package/dist/components/taro-official-account-core.js.map +1 -0
  149. package/dist/components/taro-open-data-core.d.ts +11 -0
  150. package/dist/components/taro-open-data-core.js +35 -0
  151. package/dist/components/taro-open-data-core.js.map +1 -0
  152. package/dist/components/taro-page-container-core.d.ts +11 -0
  153. package/dist/components/taro-page-container-core.js +35 -0
  154. package/dist/components/taro-page-container-core.js.map +1 -0
  155. package/dist/components/taro-page-meta-core.d.ts +11 -0
  156. package/dist/components/taro-page-meta-core.js +35 -0
  157. package/dist/components/taro-page-meta-core.js.map +1 -0
  158. package/dist/components/taro-picker-core.d.ts +11 -0
  159. package/dist/components/taro-picker-core.js +538 -0
  160. package/dist/components/taro-picker-core.js.map +1 -0
  161. package/dist/components/taro-picker-group.d.ts +11 -0
  162. package/dist/components/taro-picker-group.js +8 -0
  163. package/dist/components/taro-picker-group.js.map +1 -0
  164. package/dist/components/taro-picker-view-column-core.d.ts +11 -0
  165. package/dist/components/taro-picker-view-column-core.js +115 -0
  166. package/dist/components/taro-picker-view-column-core.js.map +1 -0
  167. package/dist/components/taro-picker-view-core.d.ts +11 -0
  168. package/dist/components/taro-picker-view-core.js +114 -0
  169. package/dist/components/taro-picker-view-core.js.map +1 -0
  170. package/dist/components/taro-progress-core.d.ts +11 -0
  171. package/dist/components/taro-progress-core.js +62 -0
  172. package/dist/components/taro-progress-core.js.map +1 -0
  173. package/dist/components/taro-pull-to-refresh.d.ts +11 -0
  174. package/dist/components/taro-pull-to-refresh.js +284 -0
  175. package/dist/components/taro-pull-to-refresh.js.map +1 -0
  176. package/dist/components/taro-radio-core.d.ts +11 -0
  177. package/dist/components/taro-radio-core.js +83 -0
  178. package/dist/components/taro-radio-core.js.map +1 -0
  179. package/dist/components/taro-radio-group-core.d.ts +11 -0
  180. package/dist/components/taro-radio-group-core.js +82 -0
  181. package/dist/components/taro-radio-group-core.js.map +1 -0
  182. package/dist/components/taro-rich-text-core.d.ts +11 -0
  183. package/dist/components/taro-rich-text-core.js +86 -0
  184. package/dist/components/taro-rich-text-core.js.map +1 -0
  185. package/dist/components/taro-root-portal-core.d.ts +11 -0
  186. package/dist/components/taro-root-portal-core.js +35 -0
  187. package/dist/components/taro-root-portal-core.js.map +1 -0
  188. package/dist/components/taro-rtc-room-core.d.ts +11 -0
  189. package/dist/components/taro-rtc-room-core.js +35 -0
  190. package/dist/components/taro-rtc-room-core.js.map +1 -0
  191. package/dist/components/taro-rtc-room-item-core.d.ts +11 -0
  192. package/dist/components/taro-rtc-room-item-core.js +35 -0
  193. package/dist/components/taro-rtc-room-item-core.js.map +1 -0
  194. package/dist/components/taro-scroll-view-core.d.ts +11 -0
  195. package/dist/components/taro-scroll-view-core.js +184 -0
  196. package/dist/components/taro-scroll-view-core.js.map +1 -0
  197. package/dist/components/taro-share-element-core.d.ts +11 -0
  198. package/dist/components/taro-share-element-core.js +35 -0
  199. package/dist/components/taro-share-element-core.js.map +1 -0
  200. package/dist/components/taro-slider-core.d.ts +11 -0
  201. package/dist/components/taro-slider-core.js +196 -0
  202. package/dist/components/taro-slider-core.js.map +1 -0
  203. package/dist/components/taro-slot-core.d.ts +11 -0
  204. package/dist/components/taro-slot-core.js +35 -0
  205. package/dist/components/taro-slot-core.js.map +1 -0
  206. package/dist/components/taro-swiper-core.d.ts +11 -0
  207. package/dist/components/taro-swiper-core.js +10165 -0
  208. package/dist/components/taro-swiper-core.js.map +1 -0
  209. package/dist/components/taro-swiper-item-core.d.ts +11 -0
  210. package/dist/components/taro-swiper-item-core.js +34 -0
  211. package/dist/components/taro-swiper-item-core.js.map +1 -0
  212. package/dist/components/taro-switch-core.d.ts +11 -0
  213. package/dist/components/taro-switch-core.js +87 -0
  214. package/dist/components/taro-switch-core.js.map +1 -0
  215. package/dist/components/taro-tab-item-core.d.ts +11 -0
  216. package/dist/components/taro-tab-item-core.js +35 -0
  217. package/dist/components/taro-tab-item-core.js.map +1 -0
  218. package/dist/components/taro-tabbar.d.ts +11 -0
  219. package/dist/components/taro-tabbar.js +457 -0
  220. package/dist/components/taro-tabbar.js.map +1 -0
  221. package/dist/components/taro-tabs-core.d.ts +11 -0
  222. package/dist/components/taro-tabs-core.js +35 -0
  223. package/dist/components/taro-tabs-core.js.map +1 -0
  224. package/dist/components/taro-text-core.d.ts +11 -0
  225. package/dist/components/taro-text-core.js +41 -0
  226. package/dist/components/taro-text-core.js.map +1 -0
  227. package/dist/components/taro-textarea-core.d.ts +11 -0
  228. package/dist/components/taro-textarea-core.js +164 -0
  229. package/dist/components/taro-textarea-core.js.map +1 -0
  230. package/dist/components/taro-video-control.d.ts +11 -0
  231. package/dist/components/taro-video-control.js +8 -0
  232. package/dist/components/taro-video-control.js.map +1 -0
  233. package/dist/components/taro-video-core.d.ts +11 -0
  234. package/dist/components/taro-video-core.js +485 -0
  235. package/dist/components/taro-video-core.js.map +1 -0
  236. package/dist/components/taro-video-danmu.d.ts +11 -0
  237. package/dist/components/taro-video-danmu.js +8 -0
  238. package/dist/components/taro-video-danmu.js.map +1 -0
  239. package/dist/components/taro-view-core.d.ts +11 -0
  240. package/dist/components/taro-view-core.js +101 -0
  241. package/dist/components/taro-view-core.js.map +1 -0
  242. package/dist/components/taro-voip-room-core.d.ts +11 -0
  243. package/dist/components/taro-voip-room-core.js +35 -0
  244. package/dist/components/taro-voip-room-core.js.map +1 -0
  245. package/dist/components/taro-web-view-core.d.ts +11 -0
  246. package/dist/components/taro-web-view-core.js +46 -0
  247. package/dist/components/taro-web-view-core.js.map +1 -0
  248. package/dist/components/video-control.js +233 -0
  249. package/dist/components/video-control.js.map +1 -0
  250. package/dist/components/video-danmu.js +110 -0
  251. package/dist/components/video-danmu.js.map +1 -0
  252. package/dist/esm/taro-swiper-core_2.entry.js +3 -5
  253. package/dist/esm/taro-swiper-core_2.entry.js.map +1 -1
  254. package/dist/esm-es5/taro-swiper-core_2.entry.js +1 -1
  255. package/dist/esm-es5/taro-swiper-core_2.entry.js.map +1 -1
  256. package/dist/taro-components/{p-d388c097.entry.js → p-22315b9d.entry.js} +2 -2
  257. package/dist/taro-components/p-22315b9d.entry.js.map +1 -0
  258. package/dist/taro-components/{p-6831f7b1.system.entry.js → p-c3c37cbb.system.entry.js} +2 -2
  259. package/dist/taro-components/p-c3c37cbb.system.entry.js.map +1 -0
  260. package/dist/taro-components/p-cb17d8bd.system.js +1 -1
  261. package/dist/taro-components/taro-components.esm.js +1 -1
  262. package/lib/react/components.d.ts +82 -0
  263. package/lib/react/components.js +85 -0
  264. package/lib/react/components.js.map +1 -0
  265. package/lib/react/helper.d.ts +10 -0
  266. package/lib/react/helper.js +7 -0
  267. package/lib/react/helper.js.map +1 -0
  268. package/lib/react/index.d.ts +1 -0
  269. package/lib/react/index.js +2 -0
  270. package/lib/react/index.js.map +1 -0
  271. package/lib/react/interfaces-4f837811.d.ts +30 -0
  272. package/lib/react/react-component-lib/createComponent.d.ts +10 -0
  273. package/lib/react/react-component-lib/createComponent.js +70 -0
  274. package/lib/react/react-component-lib/createComponent.js.map +1 -0
  275. package/lib/react/react-component-lib/createOverlayComponent.d.ts +21 -0
  276. package/lib/react/react-component-lib/createOverlayComponent.js +91 -0
  277. package/lib/react/react-component-lib/createOverlayComponent.js.map +1 -0
  278. package/lib/react/react-component-lib/index.d.ts +2 -0
  279. package/lib/react/react-component-lib/index.js +3 -0
  280. package/lib/react/react-component-lib/index.js.map +1 -0
  281. package/lib/react/react-component-lib/utils/attachProps.d.ts +13 -0
  282. package/lib/react/react-component-lib/utils/attachProps.js +101 -0
  283. package/lib/react/react-component-lib/utils/attachProps.js.map +1 -0
  284. package/lib/react/react-component-lib/utils/case.d.ts +3 -0
  285. package/lib/react/react-component-lib/utils/case.js +9 -0
  286. package/lib/react/react-component-lib/utils/case.js.map +1 -0
  287. package/lib/react/react-component-lib/utils/index.d.ts +11 -0
  288. package/lib/react/react-component-lib/utils/index.js +37 -0
  289. package/lib/react/react-component-lib/utils/index.js.map +1 -0
  290. package/lib/vue2/components.d.ts +352 -0
  291. package/lib/vue2/components.js +620 -0
  292. package/lib/vue2/components.js.map +1 -0
  293. package/lib/vue2/index.d.ts +3 -0
  294. package/lib/vue2/index.js +21 -0
  295. package/lib/vue2/index.js.map +1 -0
  296. package/lib/vue2/vue-component-lib/utils.d.ts +6 -0
  297. package/lib/vue2/vue-component-lib/utils.js +32 -0
  298. package/lib/vue2/vue-component-lib/utils.js.map +1 -0
  299. package/lib/vue3/components.d.ts +82 -0
  300. package/lib/vue3/components.js +386 -0
  301. package/lib/vue3/components.js.map +1 -0
  302. package/lib/vue3/index.d.ts +3 -0
  303. package/lib/vue3/index.js +15 -0
  304. package/lib/vue3/index.js.map +1 -0
  305. package/lib/vue3/vue-component-lib/utils.d.ts +21 -0
  306. package/lib/vue3/vue-component-lib/utils.js +163 -0
  307. package/lib/vue3/vue-component-lib/utils.js.map +1 -0
  308. package/package.json +9 -7
  309. package/types/index.vue3.d.ts +4 -4
  310. package/dist/react/component-lib/index.js +0 -74
  311. package/dist/react/component-lib/input.js +0 -17
  312. package/dist/react/component-lib/reactify-wc.js +0 -206
  313. package/dist/react/components.js +0 -82
  314. package/dist/react/helper.js +0 -8
  315. package/dist/react/index.js +0 -1
  316. package/dist/react/react-component-lib/createComponent.js +0 -99
  317. package/dist/react/react-component-lib/createOverlayComponent.js +0 -178
  318. package/dist/react/react-component-lib/index.js +0 -2
  319. package/dist/react/react-component-lib/interfaces.js +0 -0
  320. package/dist/react/react-component-lib/utils/attachProps.js +0 -98
  321. package/dist/react/react-component-lib/utils/case.js +0 -10
  322. package/dist/react/react-component-lib/utils/dev.js +0 -12
  323. package/dist/react/react-component-lib/utils/index.js +0 -37
  324. package/dist/taro-components/p-6831f7b1.system.entry.js.map +0 -1
  325. package/dist/taro-components/p-d388c097.entry.js.map +0 -1
  326. package/dist/vue2/component-lib/components.js +0 -71
  327. package/dist/vue2/component-lib/createComponent.js +0 -21
  328. package/dist/vue2/component-lib/createFormsComponent.js +0 -53
  329. package/dist/vue2/component-lib/icon.js +0 -19
  330. package/dist/vue2/component-lib/image.js +0 -20
  331. package/dist/vue2/component-lib/index.js +0 -28
  332. package/dist/vue2/component-lib/mixins/listeners.js +0 -14
  333. package/dist/vue2/component-lib/mixins/refs.js +0 -44
  334. package/dist/vue2/component-lib/picker.js +0 -40
  335. package/dist/vue2/component-lib/scroll-view.js +0 -32
  336. package/dist/vue2/component-lib/text.js +0 -20
  337. package/dist/vue2/components.js +0 -542
  338. package/dist/vue2/index.js +0 -22
  339. package/dist/vue2/vue-component-lib/utils.js +0 -40
  340. package/dist/vue3/component-lib/createComponent.js +0 -23
  341. package/dist/vue3/component-lib/createFormsComponent.js +0 -43
  342. package/dist/vue3/component-lib/forwardRef.js +0 -9
  343. package/dist/vue3/component-lib/icon.js +0 -21
  344. package/dist/vue3/component-lib/image.js +0 -22
  345. package/dist/vue3/component-lib/index.js +0 -76
  346. package/dist/vue3/component-lib/scroll-view.js +0 -28
  347. package/dist/vue3/component-lib/text.js +0 -22
  348. package/dist/vue3/components.js +0 -80
  349. package/dist/vue3/index.js +0 -17
  350. package/dist/vue3/vue-component-lib/utils.js +0 -175
@@ -0,0 +1,115 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { d as debounce } from './index3.js';
3
+
4
+ const columnCss = ".taro-picker-view-column-container{display:-ms-flexbox;display:flex;overflow:scroll;overflow-x:hidden;position:relative;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1;text-align:center}.taro-picker-view-column-container::-webkit-scrollbar{display:none}";
5
+
6
+ const PickerViewColumn = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.onChange = createEvent(this, "onselect", 7);
11
+ this.onSelectStart = createEvent(this, "onselectstart", 7);
12
+ this.onSelectEnd = createEvent(this, "onselectend", 7);
13
+ // 滚动结束自动回到合适的位置
14
+ this.handleSelected = debounce(() => {
15
+ const childList = this.el.childNodes;
16
+ let sum = 0;
17
+ let selectedIndex = '0';
18
+ for (const index in childList) {
19
+ const item = childList[index];
20
+ const itemHeight = item.offsetHeight;
21
+ if (sum + itemHeight / 2.0 > this.el.scrollTop) {
22
+ selectedIndex = index;
23
+ break;
24
+ }
25
+ sum += itemHeight;
26
+ }
27
+ this.el.scrollTo({
28
+ top: sum,
29
+ behavior: 'smooth'
30
+ });
31
+ this.onChange.emit({
32
+ curIndex: this.col,
33
+ selectedIndex: selectedIndex
34
+ });
35
+ this.onSelectEnd.emit();
36
+ }, 500);
37
+ this.col = undefined;
38
+ this.initialPosition = '0';
39
+ this.paddingVertical = 0;
40
+ this.isInit = false;
41
+ this.isMove = false;
42
+ }
43
+ onScroll(_event) {
44
+ if (!this.isMove) {
45
+ this.isMove = true;
46
+ this.onSelectStart.emit();
47
+ }
48
+ this.handleSelected();
49
+ }
50
+ onMouseEnd() {
51
+ if (!this.isMove)
52
+ return;
53
+ this.isMove = false;
54
+ this.handleSelected();
55
+ }
56
+ onTouchEnd() {
57
+ this.isMove = false;
58
+ this.handleSelected();
59
+ }
60
+ componentDidUpdate() {
61
+ if (!this.isInit) {
62
+ this.isInit = true;
63
+ const childList = this.el.childNodes;
64
+ let idx = 0;
65
+ let sum = 0;
66
+ for (const index in childList) {
67
+ const item = childList[index];
68
+ if (this.initialPosition === index || !item || typeof item.offsetHeight !== 'number') {
69
+ break;
70
+ }
71
+ sum += item.offsetHeight;
72
+ idx++;
73
+ }
74
+ this.el.scrollTo({ top: sum });
75
+ if (idx >= childList.length) {
76
+ this.onChange.emit({
77
+ curIndex: this.col,
78
+ selectedIndex: idx - 1
79
+ });
80
+ }
81
+ }
82
+ }
83
+ render() {
84
+ const { paddingVertical = 0 } = this;
85
+ return (h(Host, { class: "taro-picker-view-column-container", style: { 'padding-top': `${paddingVertical}px`, 'padding-bottom': `${paddingVertical}px` } }));
86
+ }
87
+ get el() { return this; }
88
+ static get style() { return columnCss; }
89
+ }, [0, "taro-picker-view-column-core", {
90
+ "col": [1],
91
+ "initialPosition": [1, "initial-position"],
92
+ "paddingVertical": [2, "padding-vertical"],
93
+ "isInit": [32],
94
+ "isMove": [32]
95
+ }, [[1, "scroll", "onScroll"], [1, "mouseup", "onMouseEnd"], [1, "mouseout", "onMouseEnd"], [1, "mouseleave", "onMouseEnd"], [1, "touchend", "onTouchEnd"]]]);
96
+ function defineCustomElement$1() {
97
+ if (typeof customElements === "undefined") {
98
+ return;
99
+ }
100
+ const components = ["taro-picker-view-column-core"];
101
+ components.forEach(tagName => { switch (tagName) {
102
+ case "taro-picker-view-column-core":
103
+ if (!customElements.get(tagName)) {
104
+ customElements.define(tagName, PickerViewColumn);
105
+ }
106
+ break;
107
+ } });
108
+ }
109
+
110
+ const TaroPickerViewColumnCore = PickerViewColumn;
111
+ const defineCustomElement = defineCustomElement$1;
112
+
113
+ export { TaroPickerViewColumnCore, defineCustomElement };
114
+
115
+ //# sourceMappingURL=taro-picker-view-column-core.js.map
@@ -0,0 +1 @@
1
+ {"file":"taro-picker-view-column-core.js","mappings":"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","names":[],"sources":["./src/components/picker-view/style/column.scss?tag=taro-picker-view-column-core","./src/components/picker-view/picker-view-column.tsx"],"sourcesContent":[".taro-picker-view {\n &-column {\n &-container {\n display: flex;\n overflow: scroll;\n overflow-x: hidden;\n position: relative;\n flex-direction: column;\n flex: 1;\n text-align: center;\n\n &::-webkit-scrollbar {\n display: none;\n }\n }\n }\n}\n","import { Component, h, Host, Listen, Element, Event, EventEmitter, Prop, State } from '@stencil/core'\n\nimport { debounce } from '../../utils'\n\n@Component({\n tag: 'taro-picker-view-column-core',\n styleUrl: './style/column.scss'\n})\nexport class PickerViewColumn {\n // 当前 ref\n @Element() el: HTMLElement\n\n // 标记属于 picker 第几列\n @Prop() col: string\n\n // 初始化的选中位置\n @Prop({ attribute: 'initial-position' }) initialPosition = '0'\n\n // 滑动距离上下留白区域-通过父视图和 indicator 计算而来\n @Prop({ attribute: 'padding-vertical' }) paddingVertical = 0\n\n @State()\n isInit: boolean = false\n\n @State()\n isMove: boolean = false\n\n // 选中后的结果回调\n @Event({ eventName: 'onselect' }) onChange: EventEmitter\n @Event({ eventName: 'onselectstart' }) onSelectStart: EventEmitter\n @Event({ eventName: 'onselectend' }) onSelectEnd: EventEmitter\n\n @Listen('scroll')\n onScroll(_event: UIEvent) {\n if (!this.isMove) {\n this.isMove = true\n this.onSelectStart.emit()\n }\n this.handleSelected()\n }\n\n @Listen('mouseup')\n @Listen('mouseout')\n @Listen('mouseleave')\n onMouseEnd() {\n if (!this.isMove) return\n this.isMove = false\n this.handleSelected()\n }\n\n @Listen('touchend')\n onTouchEnd() {\n this.isMove = false\n this.handleSelected()\n }\n\n componentDidUpdate() {\n if (!this.isInit) {\n this.isInit = true\n const childList = this.el.childNodes\n let idx = 0\n let sum = 0\n for (const index in childList) {\n const item = childList[index] as HTMLElement\n if (this.initialPosition === index || !item || typeof item.offsetHeight !== 'number') {\n break\n }\n sum += item.offsetHeight\n idx++\n }\n this.el.scrollTo({ top: sum })\n if (idx >= childList.length) {\n this.onChange.emit({\n curIndex: this.col,\n selectedIndex: idx - 1\n })\n }\n }\n }\n\n // 滚动结束自动回到合适的位置\n handleSelected = debounce(() => {\n const childList = this.el.childNodes\n let sum = 0\n let selectedIndex: string = '0'\n for (const index in childList) {\n const item = childList[index] as HTMLElement\n const itemHeight = item.offsetHeight\n if (sum + itemHeight / 2.0 > this.el.scrollTop) {\n selectedIndex = index\n break\n }\n sum += itemHeight\n }\n\n this.el.scrollTo({\n top: sum,\n behavior: 'smooth'\n })\n this.onChange.emit({\n curIndex: this.col,\n selectedIndex: selectedIndex\n })\n this.onSelectEnd.emit()\n }, 500)\n\n render() {\n const { paddingVertical = 0 } = this\n return (\n <Host\n class=\"taro-picker-view-column-container\"\n style={{ 'padding-top': `${paddingVertical}px`, 'padding-bottom': `${paddingVertical}px` }}\n />\n )\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface TaroPickerViewCore extends Components.TaroPickerViewCore, HTMLElement {}
4
+ export const TaroPickerViewCore: {
5
+ prototype: TaroPickerViewCore;
6
+ new (): TaroPickerViewCore;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,114 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ function convertStyle(style) {
5
+ if (style) {
6
+ const regex = /([\w-]*)\s*:\s*([^;]*)/g;
7
+ const properties = {};
8
+ let match;
9
+ while ((match = regex.exec(style)))
10
+ properties[`${match[1]}`] = match[2].trim();
11
+ return properties;
12
+ }
13
+ }
14
+
15
+ const indexCss = ".taro-picker-view-container{display:-ms-flexbox;display:flex;position:relative}.taro-picker-view-mask-container{display:-ms-flexbox;display:flex;position:absolute;left:0;right:0;top:0;bottom:0;-ms-flex-direction:column;flex-direction:column;pointer-events:none}.taro-picker-view-mask-indicator{display:-ms-flexbox;display:flex;border-top:1px solid #ddd;border-bottom:1px solid #ddd;height:50px}.taro-picker-view-mask-top{-ms-flex:1;flex:1;background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.95)), to(rgba(255, 255, 255, 0.6)));background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.6))}.taro-picker-view-mask-bottom{-ms-flex:1;flex:1;background:-webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0.95)), to(rgba(255, 255, 255, 0.6)));background:linear-gradient(to top, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.6))}";
16
+
17
+ const PickerView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
18
+ constructor() {
19
+ super();
20
+ this.__registerHost();
21
+ this.onChange = createEvent(this, "change", 7);
22
+ this.onPickStart = createEvent(this, "pickstart", 7);
23
+ this.onPickEnd = createEvent(this, "pickend", 7);
24
+ this.indicatorStyle = undefined;
25
+ this.indicatorClass = undefined;
26
+ this.value = undefined;
27
+ this.maskStyle = undefined;
28
+ this.maskClass = undefined;
29
+ }
30
+ onSelect(e) {
31
+ e.stopPropagation();
32
+ if (e.target.tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE')
33
+ return;
34
+ let _curIndex = +e.detail.curIndex;
35
+ let _selectedIndex = +e.detail.selectedIndex;
36
+ this.value[_curIndex] = _selectedIndex;
37
+ this.onChange.emit({ value: this.value });
38
+ }
39
+ onSelectStart(e) {
40
+ e.stopPropagation();
41
+ if (e.target.tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE')
42
+ return;
43
+ this.onPickStart.emit();
44
+ }
45
+ onPickerColEnd(e) {
46
+ e.stopPropagation();
47
+ if (e.target.tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE')
48
+ return;
49
+ this.onPickEnd.emit();
50
+ }
51
+ componentDidLoad() {
52
+ const childList = this.el.querySelectorAll('taro-picker-view-column-core');
53
+ childList.forEach((element, index) => {
54
+ var _a;
55
+ element.setAttribute('col', `${index}`);
56
+ let selectIndex = '0';
57
+ if (!!this.value && this.value.length > index) {
58
+ selectIndex = `${this.value[index]}`;
59
+ }
60
+ const pickerHeight = this.el.getBoundingClientRect().height;
61
+ const indicatorHeight = ((_a = this.indicator) === null || _a === void 0 ? void 0 : _a.offsetHeight) || 0;
62
+ const paddingVertical = (pickerHeight - indicatorHeight) / 2.0;
63
+ element.setAttribute('initial-position', `${selectIndex}`);
64
+ element.setAttribute('padding-vertical', `${paddingVertical}`);
65
+ });
66
+ }
67
+ // 过滤非 PickerViewColumn 组件
68
+ componentDidRender() {
69
+ this.el.childNodes.forEach(item => {
70
+ const childEle = item;
71
+ if ('TARO-PICKER-VIEW-COLUMN-CORE' !== childEle.tagName &&
72
+ childEle.className !== 'taro-picker-view-mask-container') {
73
+ this.el.removeChild(item);
74
+ }
75
+ });
76
+ }
77
+ render() {
78
+ const indicatorCls = classnames('taro-picker-view-mask-indicator', this.indicatorClass);
79
+ const maskTopCls = classnames('taro-picker-view-mask-top', this.maskClass);
80
+ const maskBtmCls = classnames('taro-picker-view-mask-bottom', this.maskClass);
81
+ const indicatorStyle = convertStyle(this.indicatorStyle);
82
+ const maskTopStyle = convertStyle(this.maskStyle);
83
+ const maskBottomStyle = convertStyle(this.maskStyle);
84
+ return (h(Host, { class: "taro-picker-view-container" }, h("slot", null), h("div", { class: "taro-picker-view-mask-container" }, h("div", { class: maskTopCls, style: maskTopStyle }), h("div", { class: indicatorCls, style: indicatorStyle, ref: indicator => (this.indicator = indicator) }), h("div", { class: maskBtmCls, style: maskBottomStyle }))));
85
+ }
86
+ get el() { return this; }
87
+ static get style() { return indexCss; }
88
+ }, [4, "taro-picker-view-core", {
89
+ "indicatorStyle": [1, "indicator-style"],
90
+ "indicatorClass": [1, "indicator-class"],
91
+ "value": [16],
92
+ "maskStyle": [1, "mask-style"],
93
+ "maskClass": [1, "mask-class"]
94
+ }, [[0, "onselect", "onSelect"], [0, "onselectstart", "onSelectStart"], [0, "onselectend", "onPickerColEnd"]]]);
95
+ function defineCustomElement$1() {
96
+ if (typeof customElements === "undefined") {
97
+ return;
98
+ }
99
+ const components = ["taro-picker-view-core"];
100
+ components.forEach(tagName => { switch (tagName) {
101
+ case "taro-picker-view-core":
102
+ if (!customElements.get(tagName)) {
103
+ customElements.define(tagName, PickerView);
104
+ }
105
+ break;
106
+ } });
107
+ }
108
+
109
+ const TaroPickerViewCore = PickerView;
110
+ const defineCustomElement = defineCustomElement$1;
111
+
112
+ export { TaroPickerViewCore, defineCustomElement };
113
+
114
+ //# sourceMappingURL=taro-picker-view-core.js.map
@@ -0,0 +1 @@
1
+ {"file":"taro-picker-view-core.js","mappings":"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","names":["classNames"],"sources":["./src/utils/style.ts","./src/components/picker-view/style/index.scss?tag=taro-picker-view-core","./src/components/picker-view/picker-view.tsx"],"sourcesContent":["export function convertStyle (style?: string): Record<string, string> | undefined {\n if (style) {\n const regex = /([\\w-]*)\\s*:\\s*([^;]*)/g\n const properties: Record<string, string> = {}\n let match\n while ((match = regex.exec(style))) properties[`${match[1]}`] = match[2].trim()\n return properties\n }\n}\n",".taro-picker-view {\n &-container {\n display: flex;\n position: relative;\n }\n\n &-mask {\n &-container {\n display: flex;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n flex-direction: column;\n pointer-events: none;\n }\n\n &-indicator {\n display: flex;\n border-top: 1px solid #ddd;\n border-bottom: 1px solid #ddd;\n height: 50px;\n }\n\n &-top {\n flex: 1;\n background-image: linear-gradient(to bottom, rgb(255 255 255 / 95%), rgb(255 255 255 / 60%));\n }\n\n &-bottom {\n flex: 1;\n background: linear-gradient(to top, rgb(255 255 255 / 95%), rgb(255 255 255 / 60%));\n }\n }\n}\n","import { Component, h, Host, Element, Prop, Event, EventEmitter, Listen } from '@stencil/core'\nimport classNames from 'classnames'\n\nimport { convertStyle } from '../../utils'\n\n@Component({\n tag: 'taro-picker-view-core',\n styleUrl: './style/index.scss'\n})\nexport class PickerView {\n private indicator: HTMLDivElement | undefined\n // 当前ref\n @Element() el: HTMLElement\n // 指示标的样式\n @Prop() indicatorStyle: string\n @Prop() indicatorClass: string\n\n // 初始化的数据\n @Prop() value: number[]\n\n // 蒙层特效\n @Prop() maskStyle: string\n\n // 蒙层特效\n @Prop() maskClass: string\n\n // 外部回调\n @Event({\n eventName: 'change'\n })\n onChange: EventEmitter\n\n @Event({\n eventName: 'pickstart'\n })\n onPickStart: EventEmitter\n\n @Event({\n eventName: 'pickend'\n })\n onPickEnd: EventEmitter\n\n @Listen('onselect')\n onSelect(e: CustomEvent<{ curIndex: string; selectedIndex: string }>) {\n e.stopPropagation()\n if ((e.target as Element).tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE') return\n let _curIndex: number = +e.detail.curIndex\n let _selectedIndex = +e.detail.selectedIndex\n this.value[_curIndex] = _selectedIndex\n this.onChange.emit({ value: this.value })\n }\n\n @Listen('onselectstart')\n onSelectStart(e: CustomEvent<{ curIndex: string; selectedIndex: string }>) {\n e.stopPropagation()\n if ((e.target as Element).tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE') return\n this.onPickStart.emit()\n }\n\n @Listen('onselectend')\n onPickerColEnd(e: CustomEvent<{ curIndex: string; selectedIndex: string }>) {\n e.stopPropagation()\n if ((e.target as Element).tagName !== 'TARO-PICKER-VIEW-COLUMN-CORE') return\n this.onPickEnd.emit()\n }\n\n componentDidLoad() {\n const childList = this.el.querySelectorAll('taro-picker-view-column-core')\n childList.forEach((element, index) => {\n element.setAttribute('col', `${index}`)\n let selectIndex = '0'\n if (!!this.value && this.value.length > index) {\n selectIndex = `${this.value[index]}`\n }\n const pickerHeight = this.el.getBoundingClientRect().height\n const indicatorHeight = this.indicator?.offsetHeight || 0\n const paddingVertical = (pickerHeight - indicatorHeight) / 2.0\n element.setAttribute('initial-position', `${selectIndex}`)\n element.setAttribute('padding-vertical', `${paddingVertical}`)\n })\n }\n\n // 过滤非 PickerViewColumn 组件\n componentDidRender() {\n this.el.childNodes.forEach(item => {\n const childEle = item as HTMLElement\n if (\n 'TARO-PICKER-VIEW-COLUMN-CORE' !== childEle.tagName &&\n childEle.className !== 'taro-picker-view-mask-container'\n ) {\n this.el.removeChild(item)\n }\n })\n }\n\n render() {\n const indicatorCls = classNames('taro-picker-view-mask-indicator', this.indicatorClass)\n const maskTopCls = classNames('taro-picker-view-mask-top', this.maskClass)\n const maskBtmCls = classNames('taro-picker-view-mask-bottom', this.maskClass)\n const indicatorStyle = convertStyle(this.indicatorStyle)\n const maskTopStyle = convertStyle(this.maskStyle)\n const maskBottomStyle = convertStyle(this.maskStyle)\n\n return (\n <Host class=\"taro-picker-view-container\">\n <slot />\n <div class=\"taro-picker-view-mask-container\">\n <div class={maskTopCls} style={maskTopStyle} />\n <div class={indicatorCls} style={indicatorStyle} ref={indicator => (this.indicator = indicator)} />\n <div class={maskBtmCls} style={maskBottomStyle} />\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface TaroProgressCore extends Components.TaroProgressCore, HTMLElement {}
4
+ export const TaroProgressCore: {
5
+ prototype: TaroProgressCore;
6
+ new (): TaroProgressCore;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,62 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const Progress = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
4
+ constructor() {
5
+ super();
6
+ this.__registerHost();
7
+ this.percent = 0;
8
+ this.showInfo = false;
9
+ this.borderRadius = 0;
10
+ this.fontSize = 16;
11
+ this.strokeWidth = 6;
12
+ this.activeColor = '#09BB07';
13
+ this.backgroundColor = '#EBEBEB';
14
+ this.active = false;
15
+ }
16
+ render() {
17
+ const { percent, showInfo, borderRadius, fontSize, strokeWidth, activeColor, backgroundColor, active } = this;
18
+ const pgPercent = percent > 100 ? 100 : percent < 0 ? 0 : percent;
19
+ const pgHeight = {
20
+ height: strokeWidth + 'px',
21
+ backgroundColor
22
+ };
23
+ const transition = active ? 'width 1s ease-in-out' : 'none';
24
+ const pgWidth = {
25
+ width: `${pgPercent}%`,
26
+ transition,
27
+ WebkitTransition: transition,
28
+ backgroundColor: activeColor,
29
+ borderRadius: borderRadius ? `${borderRadius}px` : '0px'
30
+ };
31
+ return (h(Host, { class: 'weui-progress' }, h("div", { class: 'weui-progress__bar', style: pgHeight }, h("div", { class: 'weui-progress__inner-bar', style: pgWidth })), showInfo && (h("div", { class: 'weui-progress__opr', style: { 'font-size': `${fontSize}px` } }, h("span", null, pgPercent, "%")))));
32
+ }
33
+ }, [0, "taro-progress-core", {
34
+ "percent": [2],
35
+ "showInfo": [4, "show-info"],
36
+ "borderRadius": [8, "border-radius"],
37
+ "fontSize": [8, "font-size"],
38
+ "strokeWidth": [8, "stroke-width"],
39
+ "activeColor": [1, "active-color"],
40
+ "backgroundColor": [1, "background-color"],
41
+ "active": [4]
42
+ }]);
43
+ function defineCustomElement$1() {
44
+ if (typeof customElements === "undefined") {
45
+ return;
46
+ }
47
+ const components = ["taro-progress-core"];
48
+ components.forEach(tagName => { switch (tagName) {
49
+ case "taro-progress-core":
50
+ if (!customElements.get(tagName)) {
51
+ customElements.define(tagName, Progress);
52
+ }
53
+ break;
54
+ } });
55
+ }
56
+
57
+ const TaroProgressCore = Progress;
58
+ const defineCustomElement = defineCustomElement$1;
59
+
60
+ export { TaroProgressCore, defineCustomElement };
61
+
62
+ //# sourceMappingURL=taro-progress-core.js.map
@@ -0,0 +1 @@
1
+ {"file":"taro-progress-core.js","mappings":";;MAKa,QAAQ;;;;mBACD,CAAC;oBACA,KAAK;wBACgB,CAAC;oBACL,EAAE;uBACC,CAAC;uBAClB,SAAS;2BACL,SAAS;kBAClB,KAAK;;EAEtB,MAAM;IACJ,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,WAAW,EACX,eAAe,EACf,MAAM,EACP,GAAG,IAAI,CAAA;IAER,MAAM,SAAS,GAAG,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;IACjE,MAAM,QAAQ,GAAG;MACf,MAAM,EAAE,WAAW,GAAG,IAAI;MAC1B,eAAe;KAChB,CAAA;IACD,MAAM,UAAU,GAAG,MAAM,GAAG,sBAAsB,GAAG,MAAM,CAAA;IAC3D,MAAM,OAAO,GAAG;MACd,KAAK,EAAE,GAAG,SAAS,GAAG;MACtB,UAAU;MACV,gBAAgB,EAAE,UAAU;MAC5B,eAAe,EAAE,WAAW;MAC5B,YAAY,EAAE,YAAY,GAAG,GAAG,YAAY,IAAI,GAAG,KAAK;KACzD,CAAA;IAED,QACE,EAAC,IAAI,IAAC,KAAK,EAAC,eAAe,IACzB,WAAK,KAAK,EAAC,oBAAoB,EAAC,KAAK,EAAE,QAAQ,IAC7C,WAAK,KAAK,EAAC,0BAA0B,EAAC,KAAK,EAAE,OAAO,GAAI,CACpD,EAEL,QAAQ,KACP,WAAK,KAAK,EAAC,oBAAoB,EAAC,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,QAAQ,IAAI,EAAE,IACrE,gBAAO,SAAS,MAAS,CACrB,CACP,CACI,EACR;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/progress/progress.tsx"],"sourcesContent":["import { Component, h, ComponentInterface, Prop, Host } from '@stencil/core'\n\n@Component({\n tag: 'taro-progress-core'\n})\nexport class Progress implements ComponentInterface {\n @Prop() percent = 0\n @Prop() showInfo = false\n @Prop() borderRadius: number | string = 0\n @Prop() fontSize: number | string = 16\n @Prop() strokeWidth: number | string = 6\n @Prop() activeColor = '#09BB07'\n @Prop() backgroundColor = '#EBEBEB'\n @Prop() active = false\n\n render () {\n const {\n percent,\n showInfo,\n borderRadius,\n fontSize,\n strokeWidth,\n activeColor,\n backgroundColor,\n active\n } = this\n\n const pgPercent = percent > 100 ? 100 : percent < 0 ? 0 : percent\n const pgHeight = {\n height: strokeWidth + 'px',\n backgroundColor\n }\n const transition = active ? 'width 1s ease-in-out' : 'none'\n const pgWidth = {\n width: `${pgPercent}%`,\n transition,\n WebkitTransition: transition,\n backgroundColor: activeColor,\n borderRadius: borderRadius ? `${borderRadius}px` : '0px'\n }\n\n return (\n <Host class='weui-progress'>\n <div class='weui-progress__bar' style={pgHeight}>\n <div class='weui-progress__inner-bar' style={pgWidth} />\n </div>\n\n {showInfo && (\n <div class='weui-progress__opr' style={{ 'font-size': `${fontSize}px` }}>\n <span>{pgPercent}%</span>\n </div>\n )}\n </Host>\n )\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface TaroPullToRefresh extends Components.TaroPullToRefresh, HTMLElement {}
4
+ export const TaroPullToRefresh: {
5
+ prototype: TaroPullToRefresh;
6
+ new (): TaroPullToRefresh;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,284 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import Taro from '@tarojs/taro';
3
+ import { c as classnames } from './index2.js';
4
+
5
+ const indexCss = ".rmc-pull-to-refresh-content{-webkit-transform-origin:left top 0;transform-origin:left top 0}.rmc-pull-to-refresh-content-wrapper{overflow:hidden;min-height:100vh}.rmc-pull-to-refresh-transition{-webkit-transition:-webkit-transform 0.3s;transition:-webkit-transform 0.3s;transition:transform 0.3s;transition:transform 0.3s, -webkit-transform 0.3s}@-webkit-keyframes rmc-pull-to-refresh-indicator{50%{opacity:0.2}100%{opacity:1}}@keyframes rmc-pull-to-refresh-indicator{50%{opacity:0.2}100%{opacity:1}}.rmc-pull-to-refresh-indicator{height:30px;line-height:10px;text-align:center}.rmc-pull-to-refresh-indicator>div{display:inline-block;margin:3px;border-radius:100%;width:6px;height:6px;background-color:grey;-webkit-animation:rmc-pull-to-refresh-indicator 0.5s 0s infinite linear;animation:rmc-pull-to-refresh-indicator 0.5s 0s infinite linear;-webkit-animation-fill-mode:both;animation-fill-mode:both}.rmc-pull-to-refresh-indicator>div:nth-child(0){-webkit-animation-delay:-0.1s !important;animation-delay:-0.1s !important}.rmc-pull-to-refresh-indicator>div:nth-child(1){-webkit-animation-delay:-0.2s !important;animation-delay:-0.2s !important}.rmc-pull-to-refresh-indicator>div:nth-child(2){-webkit-animation-delay:-0.3s !important;animation-delay:-0.3s !important}.rmc-pull-to-refresh-down .rmc-pull-to-refresh-indicator{margin-top:-25px}";
6
+
7
+ function setTransform(nodeStyle, value) {
8
+ nodeStyle.transform = value;
9
+ nodeStyle.webkitTransform = value;
10
+ nodeStyle.MozTransform = value;
11
+ }
12
+ const isWebView = typeof navigator !== 'undefined' &&
13
+ /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent);
14
+ const INDICATOR = {
15
+ activate: 'release',
16
+ deactivate: 'pull',
17
+ release: 'loading',
18
+ finish: 'finish'
19
+ };
20
+ let supportsPassive = false;
21
+ try {
22
+ const opts = Object.defineProperty({}, 'passive', {
23
+ get() {
24
+ supportsPassive = true;
25
+ }
26
+ });
27
+ window.addEventListener('cancel', () => ({}), opts);
28
+ }
29
+ catch (e) { }
30
+ const willPreventDefault = supportsPassive ? { passive: false } : false;
31
+ const PullToRefresh = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
32
+ constructor() {
33
+ super();
34
+ this.__registerHost();
35
+ this.onRefresh = createEvent(this, "refresh", 7);
36
+ this._ScreenY = 0;
37
+ this._startScreenY = 0;
38
+ this._lastScreenY = 0;
39
+ this._isMounted = false;
40
+ this.triggerPullDownRefresh = (flag) => {
41
+ // 在初始化时、用代码 自动 触发 pullDownRefresh
42
+ // 添加this._isMounted的判断,否则组建一实例化,currSt就会是finish
43
+ if (!this.dragOnEdge && this._isMounted) {
44
+ if (flag) {
45
+ this._lastScreenY = this.distanceToRefresh + 1;
46
+ // change dom need after setState
47
+ this.currSt = 'release';
48
+ this.setContentStyle(this._lastScreenY);
49
+ }
50
+ else {
51
+ this.currSt = 'finish';
52
+ this.reset();
53
+ }
54
+ }
55
+ };
56
+ this.init = () => {
57
+ const ele = this.scrollContainer;
58
+ const child = this.el.querySelector('rmc-pull-to-refresh-content');
59
+ this.el.appendChild = child === null || child === void 0 ? void 0 : child.appendChild.bind(child);
60
+ this.el.insertBefore = child === null || child === void 0 ? void 0 : child.insertBefore.bind(child);
61
+ this.el.replaceChild = child === null || child === void 0 ? void 0 : child.replaceChild.bind(child);
62
+ this.el.removeChild = child === null || child === void 0 ? void 0 : child.removeChild.bind(child);
63
+ this._to = {
64
+ touchstart: this.onTouchStart.bind(this, ele),
65
+ touchmove: this.onTouchMove.bind(this, ele),
66
+ touchend: this.onTouchEnd.bind(this, ele),
67
+ touchcancel: this.onTouchEnd.bind(this, ele)
68
+ };
69
+ Object.keys(this._to).forEach(key => {
70
+ ele.addEventListener(key, this._to[key], willPreventDefault);
71
+ });
72
+ };
73
+ this.destroy = () => {
74
+ const ele = this.scrollContainer;
75
+ Object.keys(this._to).forEach(key => {
76
+ ele.removeEventListener(key, this._to[key]);
77
+ });
78
+ };
79
+ this.onTouchStart = (_, e) => {
80
+ this._ScreenY = this._startScreenY = e.touches[0].screenY;
81
+ // 一开始 refreshing 为 true 时 this._lastScreenY 有值
82
+ this._lastScreenY = this._lastScreenY || 0;
83
+ };
84
+ this.isEdge = (ele) => {
85
+ const container = this.scrollContainer;
86
+ if (container && container === document.body) {
87
+ // In chrome61 `document.body.scrollTop` is invalid
88
+ const scrollNode = document.scrollingElement ? document.scrollingElement : document.body;
89
+ return scrollNode.scrollTop <= 0;
90
+ }
91
+ return ele.scrollTop <= 0;
92
+ };
93
+ this.damp = (dy) => {
94
+ if (Math.abs(this._lastScreenY) > this.damping) {
95
+ return 0;
96
+ }
97
+ const ratio = Math.abs(this._ScreenY - this._startScreenY) / window.screen.height;
98
+ dy *= (1 - ratio) * 0.6;
99
+ return dy;
100
+ };
101
+ this.onTouchMove = (ele, e) => {
102
+ // 使用 pageY 对比有问题
103
+ const _screenY = e.touches[0].screenY;
104
+ // 拖动方向不符合的不处理
105
+ if (this._startScreenY > _screenY) {
106
+ return;
107
+ }
108
+ if (this.isEdge(ele)) {
109
+ if (!this.dragOnEdge) {
110
+ // 当用户开始往上滑的时候isEdge还是false的话,会导致this._ScreenY不是想要的,只有当isEdge为true时,再上滑,才有意义
111
+ // 下面这行代码解决了上面这个问题
112
+ this._ScreenY = this._startScreenY = e.touches[0].screenY;
113
+ this.dragOnEdge = true;
114
+ }
115
+ if (e.cancelable) {
116
+ e.preventDefault();
117
+ }
118
+ // add stopPropagation with fastclick will trigger content onClick event. why?
119
+ // ref https://github.com/ant-design/ant-design-mobile/issues/2141
120
+ // e.stopPropagation();
121
+ const _diff = Math.round(_screenY - this._ScreenY);
122
+ this._ScreenY = _screenY;
123
+ this._lastScreenY += this.damp(_diff);
124
+ this.setContentStyle(this._lastScreenY);
125
+ if (Math.abs(this._lastScreenY) < this.distanceToRefresh) {
126
+ if (this.currSt !== 'deactivate') {
127
+ // console.log('back to the distance');
128
+ this.currSt = 'deactivate';
129
+ }
130
+ }
131
+ else {
132
+ if (this.currSt === 'deactivate') {
133
+ // console.log('reach to the distance');
134
+ this.currSt = 'activate';
135
+ }
136
+ }
137
+ // https://github.com/ant-design/ant-design-mobile/issues/573#issuecomment-339560829
138
+ // iOS UIWebView issue, It seems no problem in WKWebView
139
+ if (isWebView && e.changedTouches[0].clientY < 0) {
140
+ this.onTouchEnd();
141
+ }
142
+ }
143
+ };
144
+ this.onTouchEnd = () => {
145
+ if (this.dragOnEdge) {
146
+ this.dragOnEdge = false;
147
+ }
148
+ if (this.currSt === 'activate') {
149
+ this.currSt = 'release';
150
+ this.onRefresh.emit(this);
151
+ this._lastScreenY = this.distanceToRefresh + 1;
152
+ this.setContentStyle(this._lastScreenY);
153
+ }
154
+ else if (this.currSt === 'release') {
155
+ this._lastScreenY = this.distanceToRefresh + 1;
156
+ this.setContentStyle(this._lastScreenY);
157
+ }
158
+ else {
159
+ this.reset();
160
+ }
161
+ };
162
+ this.reset = () => {
163
+ this._lastScreenY = 0;
164
+ this.setContentStyle(0);
165
+ };
166
+ this.setContentStyle = (ty) => {
167
+ // TODO: Why sometimes do not have `this.contentRef` ?
168
+ if (this.contentRef) {
169
+ // translate3d 不清理 会影响内部元素 定位
170
+ if (ty) {
171
+ setTransform(this.contentRef.style, `translate3d(0px,${ty}px,0)`);
172
+ }
173
+ else {
174
+ setTransform(this.contentRef.style, '');
175
+ }
176
+ }
177
+ };
178
+ this.prefixCls = 'rmc-pull-to-refresh';
179
+ this.distanceToRefresh = 50;
180
+ this.damping = 100;
181
+ this.indicator = INDICATOR;
182
+ this.currSt = 'deactivate';
183
+ this.dragOnEdge = false;
184
+ }
185
+ get scrollContainer() {
186
+ return this.el.parentElement ||
187
+ this.el.closest('.taro_page_stationed') ||
188
+ document.querySelector('.taro_page_stationed') ||
189
+ document.querySelector('.taro_page') ||
190
+ document.querySelector('.taro_router') ||
191
+ document.querySelector('.taro-tabbar__panel') ||
192
+ document.body;
193
+ }
194
+ statusChange() {
195
+ var _a, _b, _c, _d;
196
+ const pageEl = this.scrollContainer;
197
+ switch (this.currSt) {
198
+ case 'release':
199
+ (_b = (_a = pageEl === null || pageEl === void 0 ? void 0 : pageEl.__page) === null || _a === void 0 ? void 0 : _a.onPullDownRefresh) === null || _b === void 0 ? void 0 : _b.call(_a);
200
+ break;
201
+ case 'deactivate':
202
+ (_d = (_c = pageEl === null || pageEl === void 0 ? void 0 : pageEl.__page) === null || _c === void 0 ? void 0 : _c.onPullIntercept) === null || _d === void 0 ? void 0 : _d.call(_c);
203
+ }
204
+ }
205
+ disconnectedCallback() {
206
+ this.destroy();
207
+ }
208
+ componentDidLoad() {
209
+ this.init();
210
+ this._isMounted = true;
211
+ Taro.eventCenter.on('__taroStartPullDownRefresh', ({ successHandler, errorHandler }) => {
212
+ try {
213
+ this.triggerPullDownRefresh(true);
214
+ successHandler({
215
+ errMsg: 'startPullDownRefresh: ok'
216
+ });
217
+ }
218
+ catch (e) {
219
+ errorHandler({
220
+ errMsg: 'startPullDownRefresh: fail'
221
+ });
222
+ }
223
+ });
224
+ Taro.eventCenter.on('__taroStopPullDownRefresh', ({ successHandler, errorHandler }) => {
225
+ try {
226
+ this.triggerPullDownRefresh(false);
227
+ successHandler({
228
+ errMsg: 'stopPullDownRefresh: ok'
229
+ });
230
+ }
231
+ catch (e) {
232
+ errorHandler({
233
+ errMsg: 'stopPullDownRefresh: fail'
234
+ });
235
+ }
236
+ });
237
+ }
238
+ render() {
239
+ const renderRefresh = (cls) => {
240
+ const { currSt, dragOnEdge, prefixCls } = this;
241
+ const cla = classnames(cls, !dragOnEdge && `${prefixCls}-transition`);
242
+ const showIndicator = currSt === 'activate' || currSt === 'release';
243
+ return (h("div", { class: `${prefixCls}-content-wrapper` }, h("div", { class: cla, ref: el => {
244
+ this.contentRef = el;
245
+ } }, showIndicator && (h("div", { class: `${prefixCls}-indicator` }, h("div", null), h("div", null), h("div", null))), h("slot", null))));
246
+ };
247
+ if (this.scrollContainer) {
248
+ return renderRefresh(`${this.prefixCls}-content ${this.prefixCls}-down`);
249
+ }
250
+ return (h(Host, { class: classnames(this.prefixCls, `${this.prefixCls}-down`) }, renderRefresh(`${this.prefixCls}-content`)));
251
+ }
252
+ get el() { return this; }
253
+ static get watchers() { return {
254
+ "currSt": ["statusChange"]
255
+ }; }
256
+ static get style() { return indexCss; }
257
+ }, [4, "taro-pull-to-refresh", {
258
+ "prefixCls": [1, "prefix-cls"],
259
+ "distanceToRefresh": [2, "distance-to-refresh"],
260
+ "damping": [2],
261
+ "indicator": [16],
262
+ "currSt": [32],
263
+ "dragOnEdge": [32]
264
+ }]);
265
+ function defineCustomElement$1() {
266
+ if (typeof customElements === "undefined") {
267
+ return;
268
+ }
269
+ const components = ["taro-pull-to-refresh"];
270
+ components.forEach(tagName => { switch (tagName) {
271
+ case "taro-pull-to-refresh":
272
+ if (!customElements.get(tagName)) {
273
+ customElements.define(tagName, PullToRefresh);
274
+ }
275
+ break;
276
+ } });
277
+ }
278
+
279
+ const TaroPullToRefresh = PullToRefresh;
280
+ const defineCustomElement = defineCustomElement$1;
281
+
282
+ export { TaroPullToRefresh, defineCustomElement };
283
+
284
+ //# sourceMappingURL=taro-pull-to-refresh.js.map