@tarojs/components 3.5.0-canary.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/README.md +2 -0
  2. package/dist/cjs/{index-dd4b7ba3.js → index-13289aba.js} +62 -53
  3. package/dist/cjs/index-47a1959e.js +34 -0
  4. package/dist/{esm/index-3c78bcaf.js → cjs/index-f9d21cc5.js} +12 -1
  5. package/dist/cjs/loader.cjs.js +3 -3
  6. package/dist/cjs/taro-ad-core.cjs.entry.js +1 -1
  7. package/dist/cjs/taro-ad-custom-core.cjs.entry.js +1 -1
  8. package/dist/cjs/taro-audio-core.cjs.entry.js +1 -1
  9. package/dist/cjs/taro-block-core.cjs.entry.js +1 -1
  10. package/dist/cjs/taro-button-core.cjs.entry.js +3 -3
  11. package/dist/cjs/taro-camera-core.cjs.entry.js +1 -1
  12. package/dist/cjs/taro-canvas-core.cjs.entry.js +2 -2
  13. package/dist/cjs/taro-checkbox-core_2.cjs.entry.js +2 -2
  14. package/dist/cjs/taro-components.cjs.js +3 -3
  15. package/dist/cjs/taro-cover-image-core.cjs.entry.js +1 -1
  16. package/dist/cjs/taro-cover-view-core.cjs.entry.js +2 -2
  17. package/dist/cjs/taro-custom-wrapper-core.cjs.entry.js +1 -1
  18. package/dist/cjs/taro-editor-core.cjs.entry.js +1 -1
  19. package/dist/cjs/taro-form-core.cjs.entry.js +1 -1
  20. package/dist/cjs/taro-functional-page-navigator-core.cjs.entry.js +1 -1
  21. package/dist/cjs/taro-icon-core.cjs.entry.js +2 -2
  22. package/dist/cjs/taro-image-core.cjs.entry.js +3 -3
  23. package/dist/cjs/taro-input-core.cjs.entry.js +23 -19
  24. package/dist/cjs/taro-keyboard-accessory-core.cjs.entry.js +1 -1
  25. package/dist/cjs/taro-label-core.cjs.entry.js +1 -1
  26. package/dist/cjs/taro-live-player-core.cjs.entry.js +1 -1
  27. package/dist/cjs/taro-live-pusher-core.cjs.entry.js +1 -1
  28. package/dist/cjs/taro-map-core.cjs.entry.js +1 -1
  29. package/dist/cjs/taro-match-media-core.cjs.entry.js +1 -1
  30. package/dist/cjs/taro-movable-area-core.cjs.entry.js +1 -1
  31. package/dist/cjs/taro-movable-view-core.cjs.entry.js +1 -1
  32. package/dist/cjs/taro-navigation-bar-core.cjs.entry.js +1 -1
  33. package/dist/cjs/taro-navigator-core.cjs.entry.js +4 -4
  34. package/dist/cjs/taro-official-account-core.cjs.entry.js +1 -1
  35. package/dist/cjs/taro-open-data-core.cjs.entry.js +1 -1
  36. package/dist/cjs/taro-page-container-core.cjs.entry.js +1 -1
  37. package/dist/cjs/taro-page-meta-core.cjs.entry.js +1 -1
  38. package/dist/cjs/taro-picker-core_2.cjs.entry.js +2 -2
  39. package/dist/cjs/taro-picker-view-column-core.cjs.entry.js +80 -4
  40. package/dist/cjs/taro-picker-view-core.cjs.entry.js +72 -3
  41. package/dist/cjs/taro-progress-core.cjs.entry.js +1 -1
  42. package/dist/cjs/taro-pull-to-refresh.cjs.entry.js +24 -10
  43. package/dist/cjs/taro-radio-core_2.cjs.entry.js +1 -1
  44. package/dist/cjs/taro-rich-text-core.cjs.entry.js +2 -2
  45. package/dist/cjs/taro-scroll-view-core.cjs.entry.js +6 -14
  46. package/dist/cjs/taro-share-element-core.cjs.entry.js +1 -1
  47. package/dist/cjs/taro-slider-core.cjs.entry.js +1 -1
  48. package/dist/cjs/taro-slot-core.cjs.entry.js +1 -1
  49. package/dist/cjs/taro-swiper-core_2.cjs.entry.js +15 -18
  50. package/dist/cjs/taro-switch-core.cjs.entry.js +1 -1
  51. package/dist/cjs/taro-tabbar.cjs.entry.js +41 -40
  52. package/dist/cjs/taro-text-core.cjs.entry.js +3 -3
  53. package/dist/cjs/taro-textarea-core.cjs.entry.js +5 -3
  54. package/dist/cjs/taro-video-control_3.cjs.entry.js +27868 -224
  55. package/dist/cjs/taro-view-core.cjs.entry.js +5 -5
  56. package/dist/cjs/taro-voip-room-core.cjs.entry.js +1 -1
  57. package/dist/cjs/taro-web-view-core.cjs.entry.js +2 -2
  58. package/dist/collection/collection-manifest.json +2 -2
  59. package/dist/collection/components/button/style/index.css +49 -49
  60. package/dist/collection/components/canvas/canvas.js +1 -1
  61. package/dist/collection/components/canvas/style/index.css +6 -6
  62. package/dist/collection/components/checkbox/style/index.css +21 -23
  63. package/dist/collection/components/image/image.js +1 -1
  64. package/dist/collection/components/image/style/index.css +7 -4
  65. package/dist/collection/components/input/index.css +2 -2
  66. package/dist/collection/components/input/input.js +23 -22
  67. package/dist/collection/components/navigator/navigator.js +2 -2
  68. package/dist/collection/components/navigator/{navigator.css → style/index.css} +3 -3
  69. package/dist/collection/components/picker/style/index.css +2 -1
  70. package/dist/collection/components/picker-view/picker-view-column.js +218 -4
  71. package/dist/collection/components/picker-view/picker-view.js +217 -3
  72. package/dist/collection/components/picker-view/style/column.css +12 -0
  73. package/dist/collection/components/picker-view/style/index.css +28 -0
  74. package/dist/collection/components/pull-to-refresh/pull-to-refresh.js +22 -8
  75. package/dist/collection/components/pull-to-refresh/style/index.css +53 -49
  76. package/dist/collection/components/rich-text/rich-text.js +1 -1
  77. package/dist/collection/components/scroll-view/scroll-view.js +3 -11
  78. package/dist/collection/components/swiper/style/index.css +21 -9
  79. package/dist/collection/components/swiper/swiper.js +10 -13
  80. package/dist/collection/components/tabbar/style/index.css +9 -6
  81. package/dist/collection/components/tabbar/tabbar.js +10 -15
  82. package/dist/collection/components/text/style/index.css +0 -6
  83. package/dist/collection/components/textarea/style/index.css +5 -5
  84. package/dist/collection/components/textarea/textarea.js +3 -1
  85. package/dist/collection/components/video/style/index.css +88 -109
  86. package/dist/collection/components/video/utils.js +95 -109
  87. package/dist/collection/components/video/video-control.js +9 -9
  88. package/dist/collection/components/video/video.js +57 -9
  89. package/dist/collection/components/view/style/index.css +3 -5
  90. package/dist/collection/components/view/view.js +2 -2
  91. package/dist/collection/components/web-view/style/index.css +1 -1
  92. package/dist/collection/utils/index.js +23 -83
  93. package/dist/collection/utils/style.js +10 -0
  94. package/dist/collection/utils/url.js +67 -0
  95. package/dist/{cjs/index-b9715722.js → esm/index-1d8e8acd.js} +6 -2
  96. package/dist/esm/{index-5bd7cbab.js → index-26d8b479.js} +62 -53
  97. package/dist/esm/index-cad8203e.js +31 -0
  98. package/dist/esm/loader.js +3 -3
  99. package/dist/esm/polyfills/core-js.js +0 -0
  100. package/dist/esm/polyfills/dom.js +0 -0
  101. package/dist/esm/polyfills/es5-html-element.js +0 -0
  102. package/dist/esm/polyfills/index.js +0 -0
  103. package/dist/esm/polyfills/system.js +0 -0
  104. package/dist/esm/taro-ad-core.entry.js +1 -1
  105. package/dist/esm/taro-ad-custom-core.entry.js +1 -1
  106. package/dist/esm/taro-audio-core.entry.js +1 -1
  107. package/dist/esm/taro-block-core.entry.js +1 -1
  108. package/dist/esm/taro-button-core.entry.js +3 -3
  109. package/dist/esm/taro-camera-core.entry.js +1 -1
  110. package/dist/esm/taro-canvas-core.entry.js +2 -2
  111. package/dist/esm/taro-checkbox-core_2.entry.js +2 -2
  112. package/dist/esm/taro-components.js +3 -3
  113. package/dist/esm/taro-cover-image-core.entry.js +1 -1
  114. package/dist/esm/taro-cover-view-core.entry.js +2 -2
  115. package/dist/esm/taro-custom-wrapper-core.entry.js +1 -1
  116. package/dist/esm/taro-editor-core.entry.js +1 -1
  117. package/dist/esm/taro-form-core.entry.js +1 -1
  118. package/dist/esm/taro-functional-page-navigator-core.entry.js +1 -1
  119. package/dist/esm/taro-icon-core.entry.js +2 -2
  120. package/dist/esm/taro-image-core.entry.js +3 -3
  121. package/dist/esm/taro-input-core.entry.js +23 -19
  122. package/dist/esm/taro-keyboard-accessory-core.entry.js +1 -1
  123. package/dist/esm/taro-label-core.entry.js +1 -1
  124. package/dist/esm/taro-live-player-core.entry.js +1 -1
  125. package/dist/esm/taro-live-pusher-core.entry.js +1 -1
  126. package/dist/esm/taro-map-core.entry.js +1 -1
  127. package/dist/esm/taro-match-media-core.entry.js +1 -1
  128. package/dist/esm/taro-movable-area-core.entry.js +1 -1
  129. package/dist/esm/taro-movable-view-core.entry.js +1 -1
  130. package/dist/esm/taro-navigation-bar-core.entry.js +1 -1
  131. package/dist/esm/taro-navigator-core.entry.js +4 -4
  132. package/dist/esm/taro-official-account-core.entry.js +1 -1
  133. package/dist/esm/taro-open-data-core.entry.js +1 -1
  134. package/dist/esm/taro-page-container-core.entry.js +1 -1
  135. package/dist/esm/taro-page-meta-core.entry.js +1 -1
  136. package/dist/esm/taro-picker-core_2.entry.js +2 -2
  137. package/dist/esm/taro-picker-view-column-core.entry.js +80 -4
  138. package/dist/esm/taro-picker-view-core.entry.js +72 -3
  139. package/dist/esm/taro-progress-core.entry.js +1 -1
  140. package/dist/esm/taro-pull-to-refresh.entry.js +24 -10
  141. package/dist/esm/taro-radio-core_2.entry.js +1 -1
  142. package/dist/esm/taro-rich-text-core.entry.js +2 -2
  143. package/dist/esm/taro-scroll-view-core.entry.js +5 -13
  144. package/dist/esm/taro-share-element-core.entry.js +1 -1
  145. package/dist/esm/taro-slider-core.entry.js +1 -1
  146. package/dist/esm/taro-slot-core.entry.js +1 -1
  147. package/dist/esm/taro-swiper-core_2.entry.js +12 -15
  148. package/dist/esm/taro-switch-core.entry.js +1 -1
  149. package/dist/esm/taro-tabbar.entry.js +41 -40
  150. package/dist/esm/taro-text-core.entry.js +3 -3
  151. package/dist/esm/taro-textarea-core.entry.js +5 -3
  152. package/dist/esm/taro-video-control_3.entry.js +27867 -223
  153. package/dist/esm/taro-view-core.entry.js +5 -5
  154. package/dist/esm/taro-voip-room-core.entry.js +1 -1
  155. package/dist/esm/taro-web-view-core.entry.js +2 -2
  156. package/dist/esm-es5/index-1d8e8acd.js +7 -0
  157. package/dist/esm-es5/{index-5bd7cbab.js → index-26d8b479.js} +1 -1
  158. package/dist/esm-es5/index-cad8203e.js +1 -0
  159. package/dist/esm-es5/loader.js +1 -1
  160. package/dist/esm-es5/taro-ad-core.entry.js +1 -1
  161. package/dist/esm-es5/taro-ad-custom-core.entry.js +1 -1
  162. package/dist/esm-es5/taro-audio-core.entry.js +1 -1
  163. package/dist/esm-es5/taro-block-core.entry.js +1 -1
  164. package/dist/esm-es5/taro-button-core.entry.js +1 -1
  165. package/dist/esm-es5/taro-camera-core.entry.js +1 -1
  166. package/dist/esm-es5/taro-canvas-core.entry.js +1 -1
  167. package/dist/esm-es5/taro-checkbox-core_2.entry.js +1 -1
  168. package/dist/esm-es5/taro-components.js +1 -1
  169. package/dist/esm-es5/taro-cover-image-core.entry.js +1 -1
  170. package/dist/esm-es5/taro-cover-view-core.entry.js +1 -1
  171. package/dist/esm-es5/taro-custom-wrapper-core.entry.js +1 -1
  172. package/dist/esm-es5/taro-editor-core.entry.js +1 -1
  173. package/dist/esm-es5/taro-form-core.entry.js +1 -1
  174. package/dist/esm-es5/taro-functional-page-navigator-core.entry.js +1 -1
  175. package/dist/esm-es5/taro-icon-core.entry.js +1 -1
  176. package/dist/esm-es5/taro-image-core.entry.js +1 -1
  177. package/dist/esm-es5/taro-input-core.entry.js +1 -1
  178. package/dist/esm-es5/taro-keyboard-accessory-core.entry.js +1 -1
  179. package/dist/esm-es5/taro-label-core.entry.js +1 -1
  180. package/dist/esm-es5/taro-live-player-core.entry.js +1 -1
  181. package/dist/esm-es5/taro-live-pusher-core.entry.js +1 -1
  182. package/dist/esm-es5/taro-map-core.entry.js +1 -1
  183. package/dist/esm-es5/taro-match-media-core.entry.js +1 -1
  184. package/dist/esm-es5/taro-movable-area-core.entry.js +1 -1
  185. package/dist/esm-es5/taro-movable-view-core.entry.js +1 -1
  186. package/dist/esm-es5/taro-navigation-bar-core.entry.js +1 -1
  187. package/dist/esm-es5/taro-navigator-core.entry.js +1 -1
  188. package/dist/esm-es5/taro-official-account-core.entry.js +1 -1
  189. package/dist/esm-es5/taro-open-data-core.entry.js +1 -1
  190. package/dist/esm-es5/taro-page-container-core.entry.js +1 -1
  191. package/dist/esm-es5/taro-page-meta-core.entry.js +1 -1
  192. package/dist/esm-es5/taro-picker-core_2.entry.js +1 -1
  193. package/dist/esm-es5/taro-picker-view-column-core.entry.js +1 -1
  194. package/dist/esm-es5/taro-picker-view-core.entry.js +1 -1
  195. package/dist/esm-es5/taro-progress-core.entry.js +1 -1
  196. package/dist/esm-es5/taro-pull-to-refresh.entry.js +1 -1
  197. package/dist/esm-es5/taro-radio-core_2.entry.js +1 -1
  198. package/dist/esm-es5/taro-rich-text-core.entry.js +1 -1
  199. package/dist/esm-es5/taro-scroll-view-core.entry.js +1 -1
  200. package/dist/esm-es5/taro-share-element-core.entry.js +1 -1
  201. package/dist/esm-es5/taro-slider-core.entry.js +1 -1
  202. package/dist/esm-es5/taro-slot-core.entry.js +1 -1
  203. package/dist/esm-es5/taro-swiper-core_2.entry.js +1 -1
  204. package/dist/esm-es5/taro-switch-core.entry.js +1 -1
  205. package/dist/esm-es5/taro-tabbar.entry.js +1 -1
  206. package/dist/esm-es5/taro-text-core.entry.js +1 -1
  207. package/dist/esm-es5/taro-textarea-core.entry.js +1 -1
  208. package/dist/esm-es5/taro-video-control_3.entry.js +365 -1
  209. package/dist/esm-es5/taro-view-core.entry.js +1 -1
  210. package/dist/esm-es5/taro-voip-room-core.entry.js +1 -1
  211. package/dist/esm-es5/taro-web-view-core.entry.js +1 -1
  212. package/dist/taro-components/p-019591c8.system.entry.js +1 -0
  213. package/dist/taro-components/{p-8db237e0.entry.js → p-060858b1.entry.js} +1 -1
  214. package/dist/taro-components/{p-964692f7.system.entry.js → p-06e3d685.system.entry.js} +1 -1
  215. package/dist/taro-components/p-0996daee.entry.js +1 -0
  216. package/dist/taro-components/{p-94502fc3.entry.js → p-0ca42006.entry.js} +1 -1
  217. package/dist/taro-components/{p-3633bb84.entry.js → p-0d0b3677.entry.js} +1 -1
  218. package/dist/taro-components/{p-336f2b2a.system.entry.js → p-0d1e0e91.system.entry.js} +1 -1
  219. package/dist/taro-components/p-0ea13d67.system.entry.js +1 -0
  220. package/dist/taro-components/p-0f42b8a4.entry.js +1 -0
  221. package/dist/taro-components/{p-cdffee54.system.entry.js → p-12deba0b.system.entry.js} +1 -1
  222. package/dist/taro-components/p-133e3ac4.entry.js +1 -0
  223. package/dist/taro-components/{p-5f8b5f62.entry.js → p-16aff829.entry.js} +1 -1
  224. package/dist/taro-components/{p-14dbbb42.entry.js → p-16c1e564.entry.js} +1 -1
  225. package/dist/taro-components/{p-0c2982fc.system.entry.js → p-178a3adf.system.entry.js} +1 -1
  226. package/dist/taro-components/p-1e0406ec.system.entry.js +1 -0
  227. package/dist/taro-components/p-1e516bd0.entry.js +1 -0
  228. package/dist/taro-components/p-2241b671.system.js +1 -0
  229. package/dist/taro-components/p-26e9ce75.entry.js +1 -0
  230. package/dist/taro-components/{p-98b47fc9.system.entry.js → p-2887213d.system.entry.js} +1 -1
  231. package/dist/taro-components/{p-3334ac67.system.entry.js → p-29b7c721.system.entry.js} +1 -1
  232. package/dist/taro-components/p-29bb3ebe.entry.js +1 -0
  233. package/dist/taro-components/{p-fdd73355.system.entry.js → p-2bd2ea9a.system.entry.js} +1 -1
  234. package/dist/taro-components/{p-e03fa2d5.system.entry.js → p-2e8a1479.system.entry.js} +1 -1
  235. package/dist/taro-components/{p-9a618935.system.entry.js → p-36f2c1e1.system.entry.js} +1 -1
  236. package/dist/taro-components/{p-fd8312e5.system.entry.js → p-372f53d8.system.entry.js} +1 -1
  237. package/dist/taro-components/{p-cfbdd4e3.system.entry.js → p-3b801a38.system.entry.js} +1 -1
  238. package/dist/taro-components/p-3b85bb4b.system.entry.js +1 -0
  239. package/dist/taro-components/{p-59d38db0.entry.js → p-3bb72c08.entry.js} +1 -1
  240. package/dist/taro-components/{p-15bea37d.entry.js → p-3d3cd72f.entry.js} +1 -1
  241. package/dist/taro-components/p-3e223f2f.system.entry.js +1 -0
  242. package/dist/taro-components/p-430d72e8.entry.js +1 -0
  243. package/dist/taro-components/p-4339ad63.system.entry.js +1 -0
  244. package/dist/taro-components/p-44a199e4.entry.js +1 -0
  245. package/dist/taro-components/{p-cfbfeee8.entry.js → p-45e6f8be.entry.js} +1 -1
  246. package/dist/taro-components/p-46b7f84e.entry.js +1 -0
  247. package/dist/taro-components/p-4793e6ba.system.entry.js +1 -0
  248. package/dist/taro-components/p-49954245.system.entry.js +1 -0
  249. package/dist/taro-components/{p-74540410.entry.js → p-4c890c5d.entry.js} +1 -1
  250. package/dist/taro-components/p-53244eac.entry.js +1 -0
  251. package/dist/taro-components/p-5746d7ce.js +1 -0
  252. package/dist/taro-components/{p-1b790eb0.system.entry.js → p-5c2497a4.system.entry.js} +1 -1
  253. package/dist/taro-components/{p-df5a19b0.system.entry.js → p-5ff0e954.system.entry.js} +1 -1
  254. package/dist/taro-components/p-61f225ef.system.js +7 -0
  255. package/dist/taro-components/p-62608b28.system.entry.js +1 -0
  256. package/dist/taro-components/{p-0303f9e0.entry.js → p-62c64770.entry.js} +1 -1
  257. package/dist/taro-components/p-663d1bb9.system.js +1 -0
  258. package/dist/taro-components/{p-bd3fa355.system.entry.js → p-66b1d5f9.system.entry.js} +1 -1
  259. package/dist/taro-components/p-671defcd.entry.js +1 -0
  260. package/dist/taro-components/p-69334f7c.entry.js +1 -0
  261. package/dist/taro-components/p-6f2f468b.entry.js +1 -0
  262. package/dist/taro-components/p-70313eed.entry.js +1 -0
  263. package/dist/taro-components/{p-b87cf623.entry.js → p-74013ace.entry.js} +1 -1
  264. package/dist/taro-components/{p-264b7229.system.entry.js → p-756d56d1.system.entry.js} +1 -1
  265. package/dist/taro-components/{p-fe156231.system.entry.js → p-75811f84.system.entry.js} +1 -1
  266. package/dist/taro-components/p-76724e58.js +7 -0
  267. package/dist/taro-components/{p-1e4f1702.system.entry.js → p-78676120.system.entry.js} +1 -1
  268. package/dist/taro-components/p-7b2049b7.entry.js +1 -0
  269. package/dist/taro-components/p-7dc268ee.entry.js +1 -0
  270. package/dist/taro-components/p-7f7aa688.entry.js +1 -0
  271. package/dist/taro-components/p-80abb865.entry.js +1 -0
  272. package/dist/taro-components/{p-55b0a30b.entry.js → p-81976128.entry.js} +1 -1
  273. package/dist/taro-components/p-81dc5b7b.entry.js +1 -0
  274. package/dist/taro-components/{p-99cb65a6.system.entry.js → p-828efe43.system.entry.js} +1 -1
  275. package/dist/taro-components/{p-7cdad34e.system.entry.js → p-831ebd02.system.entry.js} +1 -1
  276. package/dist/taro-components/{p-0ee69803.entry.js → p-832cc63a.entry.js} +1 -1
  277. package/dist/taro-components/{p-b2d01686.system.js → p-83adb645.system.js} +1 -1
  278. package/dist/taro-components/p-841a2031.system.entry.js +365 -0
  279. package/dist/taro-components/{p-b6d6c744.entry.js → p-86205110.entry.js} +1 -1
  280. package/dist/taro-components/p-88063d40.system.entry.js +1 -0
  281. package/dist/taro-components/{p-703dfad8.system.entry.js → p-8b23a081.system.entry.js} +1 -1
  282. package/dist/taro-components/{p-ffe63ce9.system.entry.js → p-8b30e18c.system.entry.js} +1 -1
  283. package/dist/taro-components/p-8ba35b31.system.entry.js +1 -0
  284. package/dist/taro-components/p-8ead6b19.entry.js +1 -0
  285. package/dist/taro-components/{p-ebf5b2eb.system.entry.js → p-8f466248.system.entry.js} +1 -1
  286. package/dist/taro-components/{p-cea9a198.system.entry.js → p-9130dfca.system.entry.js} +1 -1
  287. package/dist/taro-components/{p-8a5e67cb.entry.js → p-9151ef65.entry.js} +1 -1
  288. package/dist/taro-components/p-95e51d62.entry.js +1 -0
  289. package/dist/taro-components/p-9961074d.entry.js +1 -0
  290. package/dist/taro-components/{p-3643d8f7.system.entry.js → p-9b90554b.system.entry.js} +1 -1
  291. package/dist/taro-components/{p-06af26db.system.entry.js → p-9ce624a4.system.entry.js} +1 -1
  292. package/dist/taro-components/{p-7423fc3b.system.entry.js → p-a36bfe97.system.entry.js} +1 -1
  293. package/dist/taro-components/p-a4721ae0.js +1 -0
  294. package/dist/taro-components/{p-e6298500.entry.js → p-a74f4c26.entry.js} +1 -1
  295. package/dist/taro-components/{p-7d848382.system.entry.js → p-a838e0f7.system.entry.js} +1 -1
  296. package/dist/taro-components/p-a900b437.system.entry.js +1 -0
  297. package/dist/taro-components/{p-8b2bf902.system.entry.js → p-a90bfe9d.system.entry.js} +1 -1
  298. package/dist/taro-components/{p-e2f6448d.system.entry.js → p-a9ab6434.system.entry.js} +1 -1
  299. package/dist/taro-components/p-abb9c7d0.entry.js +1 -0
  300. package/dist/taro-components/{p-99ed3ed2.system.entry.js → p-ac398961.system.entry.js} +1 -1
  301. package/dist/taro-components/{p-4dbed323.entry.js → p-ac56ffed.entry.js} +1 -1
  302. package/dist/taro-components/{p-fc4939c6.system.entry.js → p-baa5019a.system.entry.js} +1 -1
  303. package/dist/taro-components/{p-fb0959c1.system.entry.js → p-c1458fbe.system.entry.js} +1 -1
  304. package/dist/taro-components/p-c9b73495.entry.js +1 -0
  305. package/dist/taro-components/{p-8f90fca9.system.entry.js → p-ca7ad427.system.entry.js} +1 -1
  306. package/dist/taro-components/{p-8bc82aaa.entry.js → p-ce0489a6.entry.js} +1 -1
  307. package/dist/taro-components/{p-9d0ab7c4.entry.js → p-ce46f79d.entry.js} +1 -1
  308. package/dist/taro-components/{p-2d2f8064.entry.js → p-cfebd931.entry.js} +1 -1
  309. package/dist/taro-components/p-d2b6b891.entry.js +1 -0
  310. package/dist/taro-components/{p-9fc88fc1.system.entry.js → p-d56c45bf.system.entry.js} +1 -1
  311. package/dist/taro-components/{p-06bffead.entry.js → p-d636e22e.entry.js} +1 -1
  312. package/dist/taro-components/{p-b75d8a65.entry.js → p-d6c8f31d.entry.js} +1 -1
  313. package/dist/taro-components/p-d7e13592.entry.js +365 -0
  314. package/dist/taro-components/{p-0472e474.system.entry.js → p-de573939.system.entry.js} +1 -1
  315. package/dist/taro-components/p-e01af6c8.entry.js +1 -0
  316. package/dist/taro-components/{p-865c21b5.entry.js → p-e7dcb4d5.entry.js} +1 -1
  317. package/dist/taro-components/{p-527a38ee.system.entry.js → p-ec59899b.system.entry.js} +1 -1
  318. package/dist/taro-components/{p-d1c2481c.system.entry.js → p-f1da4ed7.system.entry.js} +1 -1
  319. package/dist/taro-components/p-fc226017.entry.js +1 -0
  320. package/dist/taro-components/{p-17039974.system.entry.js → p-fe252a81.system.entry.js} +1 -1
  321. package/dist/taro-components/taro-components.css +1 -1
  322. package/dist/taro-components/taro-components.esm.js +1 -1
  323. package/dist/taro-components/taro-components.js +1 -1
  324. package/dist/types/components/image/image.d.ts +1 -1
  325. package/dist/types/components/input/input.d.ts +1 -3
  326. package/dist/types/components/picker-view/picker-view-column.d.ts +15 -1
  327. package/dist/types/components/picker-view/picker-view.d.ts +24 -0
  328. package/dist/types/components/scroll-view/scroll-view.d.ts +1 -1
  329. package/dist/types/components/swiper/swiper.d.ts +2 -2
  330. package/dist/types/components/tabbar/tabbar.d.ts +3 -2
  331. package/dist/types/components/video/utils.d.ts +6 -0
  332. package/dist/types/components/video/video-control.d.ts +2 -2
  333. package/dist/types/components.d.ts +22 -0
  334. package/dist/types/home/runner/work/taro/taro/packages/taro-components/.stencil/types/props.d.ts +62 -0
  335. package/dist/types/props.js +1 -0
  336. package/dist/types/stencil-public-runtime.d.ts +6 -4
  337. package/dist/types/utils/index.d.ts +4 -8
  338. package/dist/types/utils/style.d.ts +1 -0
  339. package/dist/types/utils/url.d.ts +6 -0
  340. package/dist-h5/react/components/index.js +63 -0
  341. package/dist-h5/react/components/input.js +2 -2
  342. package/dist-h5/react/index.js +1 -46
  343. package/dist-h5/react/utils/reactify-wc.js +8 -5
  344. package/dist-h5/vue/components/index.js +60 -0
  345. package/dist-h5/vue/components/picker.js +2 -2
  346. package/dist-h5/vue/components/scroll-view.js +2 -2
  347. package/dist-h5/vue/createComponent.js +1 -0
  348. package/dist-h5/vue/createFormsComponent.js +3 -3
  349. package/dist-h5/vue/index.js +23 -26
  350. package/dist-h5/vue/mixins/listeners.js +2 -2
  351. package/dist-h5/vue3/components/icon.js +3 -0
  352. package/dist-h5/vue3/components/image.js +3 -0
  353. package/dist-h5/vue3/components/index.js +64 -0
  354. package/dist-h5/vue3/components/scroll-view.js +3 -0
  355. package/dist-h5/vue3/components/text.js +3 -0
  356. package/dist-h5/vue3/createComponent.js +3 -0
  357. package/dist-h5/vue3/createFormsComponent.js +6 -3
  358. package/dist-h5/vue3/forwardRef.js +11 -0
  359. package/dist-h5/vue3/index.js +12 -29
  360. package/package.json +37 -19
  361. package/types/Ad.d.ts +15 -15
  362. package/types/Audio.d.ts +3 -3
  363. package/types/Block.d.ts +5 -2
  364. package/types/Button.d.ts +50 -34
  365. package/types/Camera.d.ts +20 -20
  366. package/types/Canvas.d.ts +1 -1
  367. package/types/Checkbox.d.ts +5 -5
  368. package/types/CheckboxGroup.d.ts +4 -4
  369. package/types/CoverImage.d.ts +1 -1
  370. package/types/CoverView.d.ts +1 -1
  371. package/types/CustomWrapper.d.ts +2 -2
  372. package/types/Editor.d.ts +10 -10
  373. package/types/Form.d.ts +8 -8
  374. package/types/FunctionalPageNavigator.d.ts +4 -4
  375. package/types/Image.d.ts +2 -2
  376. package/types/Input.d.ts +41 -37
  377. package/types/KeyboardAccessory.d.ts +21 -8
  378. package/types/Label.d.ts +2 -2
  379. package/types/LivePlayer.d.ts +18 -18
  380. package/types/LivePusher.d.ts +14 -14
  381. package/types/Map.d.ts +33 -33
  382. package/types/MovableArea.d.ts +1 -1
  383. package/types/MovableView.d.ts +18 -18
  384. package/types/Navigator.d.ts +7 -7
  385. package/types/OfficialAccount.d.ts +7 -7
  386. package/types/OpenData.d.ts +10 -10
  387. package/types/PageContainer.d.ts +22 -22
  388. package/types/Picker.d.ts +5 -5
  389. package/types/PickerViewColumn.d.ts +5 -3
  390. package/types/Progress.d.ts +1 -1
  391. package/types/Radio.d.ts +6 -6
  392. package/types/RadioGroup.d.ts +2 -2
  393. package/types/RichText.d.ts +7 -2
  394. package/types/ScrollView.d.ts +9 -9
  395. package/types/ShareElement.d.ts +196 -3
  396. package/types/Slider.d.ts +1 -1
  397. package/types/Slot.d.ts +2 -2
  398. package/types/Swiper.d.ts +7 -7
  399. package/types/Switch.d.ts +3 -3
  400. package/types/Text.d.ts +2 -2
  401. package/types/Textarea.d.ts +21 -21
  402. package/types/Video.d.ts +23 -23
  403. package/types/View.d.ts +4 -4
  404. package/types/VoipRoom.d.ts +5 -5
  405. package/types/WebView.d.ts +6 -6
  406. package/types/common.d.ts +4 -2
  407. package/types/index.d.ts +53 -52
  408. package/types/index.vue3.d.ts +157 -0
  409. package/types/props.ts +72 -0
  410. package/virtual-list/memoize.js +1 -0
  411. package/virtual-list/react/createListComponent.js +4 -3
  412. package/virtual-list/react/index.js +2 -1
  413. package/virtual-list/timer.js +1 -1
  414. package/virtual-list/vue/index.js +1 -1
  415. package/vue3.d.ts +3 -0
  416. package/dist/esm-es5/index-3c78bcaf.js +0 -7
  417. package/dist/taro-components/p-04818461.system.entry.js +0 -1
  418. package/dist/taro-components/p-065ec61d.entry.js +0 -1
  419. package/dist/taro-components/p-11932905.entry.js +0 -1
  420. package/dist/taro-components/p-17cf8b5b.entry.js +0 -1
  421. package/dist/taro-components/p-2dc57c71.system.entry.js +0 -1
  422. package/dist/taro-components/p-32937866.entry.js +0 -1
  423. package/dist/taro-components/p-33ee636a.system.js +0 -1
  424. package/dist/taro-components/p-37cfdd8f.js +0 -7
  425. package/dist/taro-components/p-3c0230ba.entry.js +0 -1
  426. package/dist/taro-components/p-3dfb1807.entry.js +0 -1
  427. package/dist/taro-components/p-431197bc.entry.js +0 -1
  428. package/dist/taro-components/p-43de2f12.system.entry.js +0 -1
  429. package/dist/taro-components/p-50066d5e.system.entry.js +0 -1
  430. package/dist/taro-components/p-554e1039.entry.js +0 -1
  431. package/dist/taro-components/p-56618f09.entry.js +0 -1
  432. package/dist/taro-components/p-5c420456.entry.js +0 -1
  433. package/dist/taro-components/p-63ff7fa7.entry.js +0 -1
  434. package/dist/taro-components/p-7721e046.entry.js +0 -1
  435. package/dist/taro-components/p-83dedaa2.entry.js +0 -1
  436. package/dist/taro-components/p-92e95d3f.entry.js +0 -1
  437. package/dist/taro-components/p-94c20f60.system.js +0 -7
  438. package/dist/taro-components/p-95529dc0.entry.js +0 -1
  439. package/dist/taro-components/p-9dc9c615.system.entry.js +0 -1
  440. package/dist/taro-components/p-9eb7dfa8.entry.js +0 -1
  441. package/dist/taro-components/p-a1423df9.entry.js +0 -1
  442. package/dist/taro-components/p-abe415b4.system.entry.js +0 -1
  443. package/dist/taro-components/p-b15d0302.system.entry.js +0 -1
  444. package/dist/taro-components/p-b55fedc1.entry.js +0 -1
  445. package/dist/taro-components/p-b9280444.entry.js +0 -1
  446. package/dist/taro-components/p-c218c298.entry.js +0 -1
  447. package/dist/taro-components/p-c362734b.entry.js +0 -1
  448. package/dist/taro-components/p-cb395e7d.entry.js +0 -1
  449. package/dist/taro-components/p-cc818a13.entry.js +0 -1
  450. package/dist/taro-components/p-cf55a63c.entry.js +0 -1
  451. package/dist/taro-components/p-d394a61f.system.entry.js +0 -1
  452. package/dist/taro-components/p-d567b95e.entry.js +0 -1
  453. package/dist/taro-components/p-d5971476.entry.js +0 -1
  454. package/dist/taro-components/p-e0af1d0d.system.entry.js +0 -1
  455. package/dist/taro-components/p-e1040131.entry.js +0 -1
  456. package/dist/taro-components/p-e27798a4.entry.js +0 -1
  457. package/dist/taro-components/p-f05e1558.js +0 -1
  458. package/dist/taro-components/p-fb2252b7.system.entry.js +0 -1
  459. package/dist/taro-components/p-fcc1c676.system.entry.js +0 -1
  460. package/dist/taro-components/p-fd0d1168.system.entry.js +0 -1
  461. package/dist/taro-components/p-fde3a009.system.entry.js +0 -1
  462. package/dist-h5/vue/simpleComponents.js +0 -19
@@ -15,15 +15,15 @@ export class VideoControl {
15
15
  this.visible = false;
16
16
  this.isDraggingProgressBall = false;
17
17
  this.percentage = 0;
18
- this.progressDimentions = {
18
+ this.progressDimensions = {
19
19
  left: 0,
20
20
  width: 0
21
21
  };
22
22
  this.calcPercentage = (pageX) => {
23
- let pos = pageX - this.progressDimentions.left;
23
+ let pos = pageX - this.progressDimensions.left;
24
24
  pos = Math.max(pos, 0);
25
- pos = Math.min(pos, this.progressDimentions.width);
26
- return pos / this.progressDimentions.width;
25
+ pos = Math.min(pos, this.progressDimensions.width);
26
+ return pos / this.progressDimensions.width;
27
27
  };
28
28
  this.onDragProgressBallStart = () => {
29
29
  this.isDraggingProgressBall = true;
@@ -68,10 +68,10 @@ export class VideoControl {
68
68
  this.toggleVisibility(false);
69
69
  }, 2000);
70
70
  }
71
- this.controlsRef.style.visibility = 'visible';
71
+ this.el.style.visibility = 'visible';
72
72
  }
73
73
  else {
74
- this.controlsRef.style.visibility = 'hidden';
74
+ this.el.style.visibility = 'hidden';
75
75
  }
76
76
  this.visible = !!visible;
77
77
  });
@@ -108,8 +108,8 @@ export class VideoControl {
108
108
  if (!ref)
109
109
  return;
110
110
  const rect = ref.getBoundingClientRect();
111
- this.progressDimentions.left = rect.left;
112
- this.progressDimentions.width = rect.width;
111
+ this.progressDimensions.left = rect.left;
112
+ this.progressDimensions.width = rect.width;
113
113
  } },
114
114
  h("div", { class: 'taro-video-progress-buffered', style: { width: '100%' } }),
115
115
  h("div", { class: 'taro-video-ball', ref: dom => (this.progressBallRef = dom), onTouchStart: this.onDragProgressBallStart, style: {
@@ -344,7 +344,7 @@ export class VideoControl {
344
344
  }
345
345
  }
346
346
  }; }
347
- static get elementRef() { return "controlsRef"; }
347
+ static get elementRef() { return "el"; }
348
348
  static get listeners() { return [{
349
349
  "name": "touchmove",
350
350
  "method": "onDocumentTouchMove",
@@ -10,7 +10,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
11
11
  import { Component, h, Prop, State, Event, Host, Watch, Listen, Element, Method } from '@stencil/core';
12
12
  import classNames from 'classnames';
13
- import { formatTime, calcDist, normalizeNumber, throttle, screenFn } from './utils';
13
+ import Hls from 'hls.js';
14
+ import { throttle } from '../../utils';
15
+ import { formatTime, calcDist, normalizeNumber, screenFn, isHls, scene } from './utils';
14
16
  export class Video {
15
17
  constructor() {
16
18
  this.currentTime = 0;
@@ -91,7 +93,7 @@ export class Video {
91
93
  this.isFullScreen = false;
92
94
  this.fullScreenTimestamp = new Date().getTime();
93
95
  this.isMute = false;
94
- this.analyseGesture = (e) => {
96
+ this.analyzeGesture = (e) => {
95
97
  var _a;
96
98
  const obj = {
97
99
  type: 'none'
@@ -133,6 +135,37 @@ export class Video {
133
135
  obj.dataY = normalizeNumber(distY / 200);
134
136
  return obj;
135
137
  };
138
+ this.loadNativePlayer = () => {
139
+ if (this.videoRef) {
140
+ this.videoRef.src = this.src;
141
+ this.videoRef.load();
142
+ }
143
+ };
144
+ this.init = () => {
145
+ const { src, videoRef } = this;
146
+ if (isHls(src)) {
147
+ if (Hls.isSupported()) {
148
+ if (this.hls) {
149
+ this.hls.destroy();
150
+ }
151
+ this.hls = new Hls();
152
+ this.hls.loadSource(src);
153
+ this.hls.attachMedia(videoRef);
154
+ this.hls.on(Hls.Events.MANIFEST_PARSED, () => {
155
+ this.autoplay && this.play();
156
+ });
157
+ }
158
+ else if (videoRef.canPlayType('application/vnd.apple.mpegurl')) {
159
+ this.loadNativePlayer();
160
+ }
161
+ else {
162
+ console.error('该浏览器不支持 HLS 播放');
163
+ }
164
+ }
165
+ else {
166
+ this.loadNativePlayer();
167
+ }
168
+ };
136
169
  this.handlePlay = () => {
137
170
  this.isPlaying = true;
138
171
  this.isFirst = false;
@@ -229,7 +262,7 @@ export class Video {
229
262
  }
230
263
  };
231
264
  this.toggleFullScreen = (isFullScreen = !this.isFullScreen) => {
232
- this.isFullScreen = isFullScreen;
265
+ this.isFullScreen = isFullScreen; // this.videoRef?.['webkitDisplayingFullscreen']
233
266
  this.controlsRef.toggleVisibility(true);
234
267
  this.fullScreenTimestamp = new Date().getTime();
235
268
  this.onFullScreenChange.emit({
@@ -238,7 +271,7 @@ export class Video {
238
271
  });
239
272
  if (this.isFullScreen && !document[screenFn.fullscreenElement]) {
240
273
  setTimeout(() => {
241
- this.videoRef[screenFn.requestFullscreen]({ navigationUI: 'show' });
274
+ this.videoRef[screenFn.requestFullscreen]({ navigationUI: 'auto' });
242
275
  }, 0);
243
276
  }
244
277
  };
@@ -258,6 +291,7 @@ export class Video {
258
291
  this._enableDanmu = this.enableDanmu;
259
292
  }
260
293
  componentDidLoad() {
294
+ this.init();
261
295
  if (this.initialTime) {
262
296
  this.videoRef.currentTime = this.initialTime;
263
297
  }
@@ -266,6 +300,10 @@ export class Video {
266
300
  if (document.addEventListener) {
267
301
  document.addEventListener(screenFn.fullscreenchange, this.handleFullScreenChange);
268
302
  }
303
+ if (this.videoRef && scene === 'iOS') {
304
+ // NOTE: iOS 场景下 fullscreenchange 并不会在退出全屏状态下触发,仅 webkitpresentationmodechanged 与 webkitendfullscreen 可替代
305
+ this.videoRef.addEventListener('webkitendfullscreen', this.handleFullScreenChange);
306
+ }
269
307
  }
270
308
  componentDidRender() {
271
309
  }
@@ -273,17 +311,23 @@ export class Video {
273
311
  if (document.removeEventListener) {
274
312
  document.removeEventListener(screenFn.fullscreenchange, this.handleFullScreenChange);
275
313
  }
314
+ if (this.videoRef && scene === 'iOS') {
315
+ this.videoRef.removeEventListener('webkitendfullscreen', this.handleFullScreenChange);
316
+ }
276
317
  }
277
318
  watchEnableDanmu(newVal) {
278
319
  this._enableDanmu = newVal;
279
320
  }
321
+ watchSrc() {
322
+ this.init();
323
+ }
280
324
  onDocumentTouchMove(e) {
281
325
  return __awaiter(this, void 0, void 0, function* () {
282
326
  if (this.lastTouchScreenX === undefined || this.lastTouchScreenY === undefined)
283
327
  return;
284
328
  if (yield this.controlsRef.getIsDraggingProgressBall())
285
329
  return;
286
- const gestureObj = this.analyseGesture(e);
330
+ const gestureObj = this.analyzeGesture(e);
287
331
  if (gestureObj.type === 'adjustVolume') {
288
332
  this.toastVolumeRef.style.visibility = 'visible';
289
333
  const nextVolume = Math.max(Math.min(this.lastVolume - gestureObj.dataY, 1), 0);
@@ -356,8 +400,9 @@ export class Video {
356
400
  });
357
401
  }
358
402
  render() {
359
- const { src, controls, autoplay, loop, muted, poster, objectFit, isFirst, isMute, isFullScreen, duration, _duration, showCenterPlayBtn, isPlaying, _enableDanmu, showMuteBtn, danmuBtn, showFullscreenBtn, nativeProps } = this;
360
- const durationTime = formatTime(duration || _duration || null);
403
+ const { controls, autoplay, loop, muted, poster, objectFit, isFirst, isMute, isFullScreen, showCenterPlayBtn, isPlaying, _enableDanmu, showMuteBtn, danmuBtn, showFullscreenBtn, nativeProps } = this;
404
+ const duration = this.duration || this._duration;
405
+ const durationTime = formatTime(duration);
361
406
  return (h(Host, { class: classNames('taro-video-container', {
362
407
  'taro-video-type-fullscreen': isFullScreen
363
408
  }), onTouchStart: this.onTouchStartContainer, onClick: this.onClickContainer },
@@ -367,7 +412,7 @@ export class Video {
367
412
  if (dom) {
368
413
  this.videoRef = dom;
369
414
  }
370
- }, src: src, autoplay: autoplay, loop: loop, muted: muted, poster: controls ? poster : undefined, playsinline: true, "webkit-playsinline": true, onPlay: this.handlePlay, onPause: this.handlePause, onEnded: this.handleEnded, onTimeUpdate: this.handleTimeUpdate, onError: this.handleError, onDurationChange: this.handleDurationChange, onProgress: this.handleProgress, onLoadedMetaData: this.handleLoadedMetaData }, nativeProps), "\u6682\u65F6\u4E0D\u652F\u6301\u64AD\u653E\u8BE5\u89C6\u9891"),
415
+ }, autoplay: autoplay, loop: loop, muted: muted, poster: controls ? poster : undefined, playsinline: true, "webkit-playsinline": true, onPlay: this.handlePlay, onPause: this.handlePause, onEnded: this.handleEnded, onTimeUpdate: this.handleTimeUpdate, onError: this.handleError, onDurationChange: this.handleDurationChange, onProgress: this.handleProgress, onLoadedMetaData: this.handleLoadedMetaData }, nativeProps), "\u6682\u65F6\u4E0D\u652F\u6301\u64AD\u653E\u8BE5\u89C6\u9891"),
371
416
  h("taro-video-danmu", { ref: dom => {
372
417
  if (dom) {
373
418
  this.danmuRef = dom;
@@ -380,7 +425,7 @@ export class Video {
380
425
  if (dom) {
381
426
  this.controlsRef = dom;
382
427
  }
383
- }, controls: controls, currentTime: this.currentTime, duration: this.duration || this._duration || undefined, isPlaying: this.isPlaying, pauseFunc: this._pause, playFunc: this._play, seekFunc: this._seek, showPlayBtn: this.showPlayBtn, showProgress: this.showProgress },
428
+ }, controls: controls, currentTime: this.currentTime, duration: duration, isPlaying: this.isPlaying, pauseFunc: this._pause, playFunc: this._play, seekFunc: this._seek, showPlayBtn: this.showPlayBtn, showProgress: this.showProgress },
384
429
  showMuteBtn && (h("div", { class: classNames('taro-video-mute', {
385
430
  'taro-video-type-mute': isMute
386
431
  }), onClick: this.toggleMute })),
@@ -1047,6 +1092,9 @@ export class Video {
1047
1092
  static get watchers() { return [{
1048
1093
  "propName": "enableDanmu",
1049
1094
  "methodName": "watchEnableDanmu"
1095
+ }, {
1096
+ "propName": "src",
1097
+ "methodName": "watchSrc"
1050
1098
  }]; }
1051
1099
  static get listeners() { return [{
1052
1100
  "name": "touchmove",
@@ -1,9 +1,7 @@
1
- body, html {
2
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
1
+ body,
2
+ html {
3
3
  user-select: none;
4
- -moz-user-select: none;
5
- -webkit-user-select: none;
6
- -ms-user-select: none;
4
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
7
5
  }
8
6
 
9
7
  taro-view-core {
@@ -43,8 +43,8 @@ export class View {
43
43
  componentDidRender() {
44
44
  const el = this.el;
45
45
  el.childNodes.forEach(item => {
46
- if (item.nodeType === document.COMMENT_NODE)
47
- el.removeChild(item);
46
+ if (item.nodeType === document.COMMENT_NODE && item["s-cn"])
47
+ item["s-cn"] = false;
48
48
  });
49
49
  }
50
50
  render() {
@@ -6,7 +6,7 @@ iframe {
6
6
  position: fixed;
7
7
  top: 0;
8
8
  bottom: 0;
9
+ z-index: 999;
9
10
  width: 100%;
10
11
  height: 100%;
11
- z-index: 999;
12
12
  }
@@ -1,91 +1,31 @@
1
- export function throttle(fn, threshhold, scope) {
2
- threshhold || (threshhold = 250);
3
- let last, deferTimer;
4
- return function () {
1
+ export function throttle(fn, threshold = 250, scope) {
2
+ let lastTime = 0;
3
+ let deferTimer;
4
+ return function (...args) {
5
5
  const context = scope || this;
6
- const now = +new Date();
7
- // eslint-disable-next-line prefer-rest-params
8
- const args = arguments;
9
- if (last && now < last + threshhold) {
6
+ const now = Date.now();
7
+ if (now - lastTime > threshold) {
8
+ fn.apply(this, args);
9
+ lastTime = now;
10
+ }
11
+ else {
10
12
  clearTimeout(deferTimer);
11
13
  deferTimer = setTimeout(() => {
12
- last = now;
14
+ lastTime = now;
13
15
  fn.apply(context, args);
14
- }, threshhold);
15
- }
16
- else {
17
- last = now;
18
- fn.apply(context, args);
16
+ }, threshold);
19
17
  }
20
18
  };
21
19
  }
22
- export const normalizePath = url => {
23
- let _isRelative;
24
- let _leadingParents = '';
25
- let _parent, _pos;
26
- // handle relative paths
27
- if (url.charAt(0) !== '/') {
28
- _isRelative = true;
29
- url = '/' + url;
30
- }
31
- // handle relative files (as opposed to directories)
32
- if (url.substring(-3) === '/..' || url.slice(-2) === '/.') {
33
- url += '/';
34
- }
35
- // resolve simples
36
- url = url.replace(/(\/(\.\/)+)|(\/\.$)/g, '/').replace(/\/{2,}/g, '/');
37
- // remember leading parents
38
- if (_isRelative) {
39
- _leadingParents = url.substring(1).match(/^(\.\.\/)+/) || '';
40
- if (_leadingParents) {
41
- _leadingParents = _leadingParents[0];
42
- }
43
- }
44
- // resolve parents
45
- while (true) {
46
- _parent = url.search(/\/\.\.(\/|$)/);
47
- if (_parent === -1) {
48
- // no more ../ to resolve
49
- break;
50
- }
51
- else if (_parent === 0) {
52
- // top level cannot be relative, skip it
53
- url = url.substring(3);
54
- continue;
55
- }
56
- _pos = url.substring(0, _parent).lastIndexOf('/');
57
- if (_pos === -1) {
58
- _pos = _parent;
59
- }
60
- url = url.substring(0, _pos) + url.substring(_parent + 3);
61
- }
62
- // revert to relative
63
- if (_isRelative) {
64
- url = _leadingParents + url.substring(1);
65
- }
66
- return url;
67
- };
68
- export const splitUrl = _url => {
69
- let url = _url || '';
70
- let pos;
71
- const res = {
72
- path: null,
73
- query: null,
74
- fragment: null
20
+ export function debounce(fn, ms = 250, scope) {
21
+ let timer;
22
+ return function (...args) {
23
+ const context = scope || this;
24
+ clearTimeout(timer);
25
+ timer = setTimeout(function () {
26
+ fn.apply(context, args);
27
+ }, ms);
75
28
  };
76
- pos = url.indexOf('#');
77
- if (pos > -1) {
78
- res.fragment = url.substring(pos + 1);
79
- url = url.substring(0, pos);
80
- }
81
- pos = url.indexOf('?');
82
- if (pos > -1) {
83
- res.query = url.substring(pos + 1);
84
- url = url.substring(0, pos);
85
- }
86
- res.path = url;
87
- return res;
88
- };
89
- export const isNumber = obj => {
90
- return typeof obj === 'number';
91
- };
29
+ }
30
+ export * from './style';
31
+ export * from './url';
@@ -0,0 +1,10 @@
1
+ export function convertStyle(style) {
2
+ if (style) {
3
+ const regex = /([\w-]*)\s*:\s*([^;]*)/g;
4
+ const properties = {};
5
+ let match;
6
+ while ((match = regex.exec(style)))
7
+ properties[`${match[1]}`] = match[2].trim();
8
+ return properties;
9
+ }
10
+ }
@@ -0,0 +1,67 @@
1
+ export const normalizePath = url => {
2
+ let _isRelative;
3
+ let _leadingParents = '';
4
+ let _parent, _pos;
5
+ // handle relative paths
6
+ if (url.charAt(0) !== '/') {
7
+ _isRelative = true;
8
+ url = '/' + url;
9
+ }
10
+ // handle relative files (as opposed to directories)
11
+ if (url.substring(-3) === '/..' || url.slice(-2) === '/.') {
12
+ url += '/';
13
+ }
14
+ // resolve simples
15
+ url = url.replace(/(\/(\.\/)+)|(\/\.$)/g, '/').replace(/\/{2,}/g, '/');
16
+ // remember leading parents
17
+ if (_isRelative) {
18
+ _leadingParents = url.substring(1).match(/^(\.\.\/)+/) || '';
19
+ if (_leadingParents) {
20
+ _leadingParents = _leadingParents[0];
21
+ }
22
+ }
23
+ // resolve parents
24
+ while (true) {
25
+ _parent = url.search(/\/\.\.(\/|$)/);
26
+ if (_parent === -1) {
27
+ // no more ../ to resolve
28
+ break;
29
+ }
30
+ else if (_parent === 0) {
31
+ // top level cannot be relative, skip it
32
+ url = url.substring(3);
33
+ continue;
34
+ }
35
+ _pos = url.substring(0, _parent).lastIndexOf('/');
36
+ if (_pos === -1) {
37
+ _pos = _parent;
38
+ }
39
+ url = url.substring(0, _pos) + url.substring(_parent + 3);
40
+ }
41
+ // revert to relative
42
+ if (_isRelative) {
43
+ url = _leadingParents + url.substring(1);
44
+ }
45
+ return url;
46
+ };
47
+ export const splitUrl = _url => {
48
+ let url = _url || '';
49
+ let pos;
50
+ const res = {
51
+ path: null,
52
+ query: null,
53
+ fragment: null
54
+ };
55
+ pos = url.indexOf('#');
56
+ if (pos > -1) {
57
+ res.fragment = url.substring(pos + 1);
58
+ url = url.substring(0, pos);
59
+ }
60
+ pos = url.indexOf('?');
61
+ if (pos > -1) {
62
+ res.query = url.substring(pos + 1);
63
+ url = url.substring(0, pos);
64
+ }
65
+ res.path = url;
66
+ return res;
67
+ };
@@ -1,4 +1,8 @@
1
- 'use strict';
1
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
2
+
3
+ function getDefaultExportFromCjs (x) {
4
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5
+ }
2
6
 
3
7
  function createCommonjsModule(fn, basedir, module) {
4
8
  return module = {
@@ -69,4 +73,4 @@ var classnames = createCommonjsModule(function (module) {
69
73
  }());
70
74
  });
71
75
 
72
- exports.classnames = classnames;
76
+ export { createCommonjsModule as a, commonjsGlobal as b, classnames as c, getDefaultExportFromCjs as g };
@@ -374,7 +374,6 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
374
374
  // Workaround for Safari, moving the <input> caret when re-assigning the same valued
375
375
  if (memberName === 'list') {
376
376
  isProp = false;
377
- // tslint:disable-next-line: triple-equals
378
377
  }
379
378
  else if (oldValue == null || elm[memberName] != n) {
380
379
  elm[memberName] = n;
@@ -1284,14 +1283,14 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1284
1283
  prototype.attributeChangedCallback = function (attrName, _oldValue, newValue) {
1285
1284
  plt.jmp(() => {
1286
1285
  const propName = attrNameToPropName.get(attrName);
1287
- // In a webcomponent lifecyle the attributeChangedCallback runs prior to connectedCallback
1286
+ // In a web component lifecycle the attributeChangedCallback runs prior to connectedCallback
1288
1287
  // in the case where an attribute was set inline.
1289
1288
  // ```html
1290
1289
  // <my-component some-attribute="some-value"></my-component>
1291
1290
  // ```
1292
1291
  //
1293
- // There is an edge case where a developer sets the attribute inline on a custom element and then programatically
1294
- // changes it before it has been upgraded as shown below:
1292
+ // There is an edge case where a developer sets the attribute inline on a custom element and then
1293
+ // programmatically changes it before it has been upgraded as shown below:
1295
1294
  //
1296
1295
  // ```html
1297
1296
  // <!-- this component has _not_ been upgraded yet -->
@@ -1301,13 +1300,13 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1301
1300
  // el = document.querySelector("#test");
1302
1301
  // el.someAttribute = "another-value";
1303
1302
  // // upgrade component
1304
- // cutsomElements.define('my-component', MyComponent);
1303
+ // customElements.define('my-component', MyComponent);
1305
1304
  // </script>
1306
1305
  // ```
1307
1306
  // In this case if we do not unshadow here and use the value of the shadowing property, attributeChangedCallback
1308
1307
  // will be called with `newValue = "some-value"` and will set the shadowed property (this.someAttribute = "another-value")
1309
1308
  // to the value that was set inline i.e. "some-value" from above example. When
1310
- // the connectedCallback attempts to unshadow it will use "some-value" as the intial value rather than "another-value"
1309
+ // the connectedCallback attempts to unshadow it will use "some-value" as the initial value rather than "another-value"
1311
1310
  //
1312
1311
  // The case where the attribute was NOT set inline but was not set programmatically shall be handled/unshadowed
1313
1312
  // by connectedCallback as this attributeChangedCallback will not fire.
@@ -1321,6 +1320,14 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1321
1320
  newValue = this[propName];
1322
1321
  delete this[propName];
1323
1322
  }
1323
+ else if (prototype.hasOwnProperty(propName) &&
1324
+ typeof this[propName] === 'number' &&
1325
+ this[propName] == newValue) {
1326
+ // if the propName exists on the prototype of `Cstr`, this update may be a result of Stencil using native
1327
+ // APIs to reflect props as attributes. Calls to `setAttribute(someElement, propName)` will result in
1328
+ // `propName` to be converted to a `DOMString`, which may not be what we want for other primitive props.
1329
+ return;
1330
+ }
1324
1331
  this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue;
1325
1332
  });
1326
1333
  };
@@ -1403,7 +1410,7 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
1403
1410
  const ancestorComponent = hostRef.$ancestorComponent$;
1404
1411
  const schedule = () => scheduleUpdate(hostRef, true);
1405
1412
  if (ancestorComponent && ancestorComponent['s-rc']) {
1406
- // this is the intial load and this component it has an ancestor component
1413
+ // this is the initial load and this component it has an ancestor component
1407
1414
  // but the ancestor component has NOT fired its will update lifecycle yet
1408
1415
  // so let's just cool our jets and wait for the ancestor to continue first
1409
1416
  // this will get fired off when the ancestor component
@@ -1510,57 +1517,59 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1510
1517
  let isBootstrapping = true;
1511
1518
  Object.assign(plt, options);
1512
1519
  plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href;
1513
- lazyBundles.map((lazyBundle) => lazyBundle[1].map((compactMeta) => {
1514
- const cmpMeta = {
1515
- $flags$: compactMeta[0],
1516
- $tagName$: compactMeta[1],
1517
- $members$: compactMeta[2],
1518
- $listeners$: compactMeta[3],
1519
- };
1520
- {
1521
- cmpMeta.$members$ = compactMeta[2];
1522
- }
1523
- {
1524
- cmpMeta.$listeners$ = compactMeta[3];
1525
- }
1526
- {
1527
- cmpMeta.$watchers$ = {};
1528
- }
1529
- const tagName = cmpMeta.$tagName$;
1530
- const HostElement = class extends HTMLElement {
1531
- // StencilLazyHost
1532
- constructor(self) {
1533
- // @ts-ignore
1534
- super(self);
1535
- self = this;
1536
- registerHost(self, cmpMeta);
1520
+ lazyBundles.map((lazyBundle) => {
1521
+ lazyBundle[1].map((compactMeta) => {
1522
+ const cmpMeta = {
1523
+ $flags$: compactMeta[0],
1524
+ $tagName$: compactMeta[1],
1525
+ $members$: compactMeta[2],
1526
+ $listeners$: compactMeta[3],
1527
+ };
1528
+ {
1529
+ cmpMeta.$members$ = compactMeta[2];
1530
+ }
1531
+ {
1532
+ cmpMeta.$listeners$ = compactMeta[3];
1533
+ }
1534
+ {
1535
+ cmpMeta.$watchers$ = {};
1537
1536
  }
1538
- connectedCallback() {
1539
- if (appLoadFallback) {
1540
- clearTimeout(appLoadFallback);
1541
- appLoadFallback = null;
1537
+ const tagName = cmpMeta.$tagName$;
1538
+ const HostElement = class extends HTMLElement {
1539
+ // StencilLazyHost
1540
+ constructor(self) {
1541
+ // @ts-ignore
1542
+ super(self);
1543
+ self = this;
1544
+ registerHost(self, cmpMeta);
1542
1545
  }
1543
- if (isBootstrapping) {
1544
- // connectedCallback will be processed once all components have been registered
1545
- deferredConnectedCallbacks.push(this);
1546
+ connectedCallback() {
1547
+ if (appLoadFallback) {
1548
+ clearTimeout(appLoadFallback);
1549
+ appLoadFallback = null;
1550
+ }
1551
+ if (isBootstrapping) {
1552
+ // connectedCallback will be processed once all components have been registered
1553
+ deferredConnectedCallbacks.push(this);
1554
+ }
1555
+ else {
1556
+ plt.jmp(() => connectedCallback(this));
1557
+ }
1546
1558
  }
1547
- else {
1548
- plt.jmp(() => connectedCallback(this));
1559
+ disconnectedCallback() {
1560
+ plt.jmp(() => disconnectedCallback(this));
1549
1561
  }
1562
+ componentOnReady() {
1563
+ return getHostRef(this).$onReadyPromise$;
1564
+ }
1565
+ };
1566
+ cmpMeta.$lazyBundleId$ = lazyBundle[0];
1567
+ if (!exclude.includes(tagName) && !customElements.get(tagName)) {
1568
+ cmpTags.push(tagName);
1569
+ customElements.define(tagName, proxyComponent(HostElement, cmpMeta, 1 /* isElementConstructor */));
1550
1570
  }
1551
- disconnectedCallback() {
1552
- plt.jmp(() => disconnectedCallback(this));
1553
- }
1554
- componentOnReady() {
1555
- return getHostRef(this).$onReadyPromise$;
1556
- }
1557
- };
1558
- cmpMeta.$lazyBundleId$ = lazyBundle[0];
1559
- if (!exclude.includes(tagName) && !customElements.get(tagName)) {
1560
- cmpTags.push(tagName);
1561
- customElements.define(tagName, proxyComponent(HostElement, cmpMeta, 1 /* isElementConstructor */));
1562
- }
1563
- }));
1571
+ });
1572
+ });
1564
1573
  {
1565
1574
  visibilityStyle.innerHTML = cmpTags + HYDRATED_CSS;
1566
1575
  visibilityStyle.setAttribute('data-styles', '');
@@ -0,0 +1,31 @@
1
+ function throttle(fn, threshold = 250, scope) {
2
+ let lastTime = 0;
3
+ let deferTimer;
4
+ return function (...args) {
5
+ const context = scope || this;
6
+ const now = Date.now();
7
+ if (now - lastTime > threshold) {
8
+ fn.apply(this, args);
9
+ lastTime = now;
10
+ }
11
+ else {
12
+ clearTimeout(deferTimer);
13
+ deferTimer = setTimeout(() => {
14
+ lastTime = now;
15
+ fn.apply(context, args);
16
+ }, threshold);
17
+ }
18
+ };
19
+ }
20
+ function debounce(fn, ms = 250, scope) {
21
+ let timer;
22
+ return function (...args) {
23
+ const context = scope || this;
24
+ clearTimeout(timer);
25
+ timer = setTimeout(function () {
26
+ fn.apply(context, args);
27
+ }, ms);
28
+ };
29
+ }
30
+
31
+ export { debounce as d, throttle as t };