@tarojs/components 3.6.2 → 3.6.4

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 (205) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/taro-components.cjs.js +1 -1
  4. package/dist/cjs/taro-grid-view-core.cjs.entry.js +21 -0
  5. package/dist/cjs/taro-input-core.cjs.entry.js +1 -1
  6. package/dist/cjs/taro-list-view-core.cjs.entry.js +21 -0
  7. package/dist/cjs/taro-picker-core_2.cjs.entry.js +1 -1
  8. package/dist/cjs/taro-sticky-header-core.cjs.entry.js +21 -0
  9. package/dist/cjs/taro-sticky-section-core.cjs.entry.js +21 -0
  10. package/dist/cjs/taro-swiper-core_2.cjs.entry.js +28 -18
  11. package/dist/cjs/taro-textarea-core.cjs.entry.js +13 -3
  12. package/dist/cjs/taro-video-control_3.cjs.entry.js +3 -1
  13. package/dist/collection/collection-manifest.json +4 -0
  14. package/dist/collection/components/grid-view/grid-view.js +11 -0
  15. package/dist/collection/components/input/input.js +1 -1
  16. package/dist/collection/components/list-view/list-view.js +11 -0
  17. package/dist/collection/components/picker/picker.js +1 -1
  18. package/dist/collection/components/sticky-header/sticky-header.js +11 -0
  19. package/dist/collection/components/sticky-section/sticky-section.js +11 -0
  20. package/dist/collection/components/swiper/swiper-item.js +16 -9
  21. package/dist/collection/components/swiper/swiper.js +12 -9
  22. package/dist/collection/components/textarea/textarea.js +23 -6
  23. package/dist/collection/components/video/video.js +3 -1
  24. package/dist/components/index.d.ts +4 -0
  25. package/dist/components/index.js +4 -0
  26. package/dist/components/taro-grid-view-core.d.ts +11 -0
  27. package/dist/components/taro-grid-view-core.js +33 -0
  28. package/dist/components/taro-input-core.js +1 -1
  29. package/dist/components/taro-list-view-core.d.ts +11 -0
  30. package/dist/components/taro-list-view-core.js +33 -0
  31. package/dist/components/taro-picker-core.js +1 -1
  32. package/dist/components/taro-sticky-header-core.d.ts +11 -0
  33. package/dist/components/taro-sticky-header-core.js +33 -0
  34. package/dist/components/taro-sticky-section-core.d.ts +11 -0
  35. package/dist/components/taro-sticky-section-core.js +33 -0
  36. package/dist/components/taro-swiper-core.js +12 -9
  37. package/dist/components/taro-swiper-item-core.js +16 -9
  38. package/dist/components/taro-textarea-core.js +14 -4
  39. package/dist/components/taro-video-core.js +3 -1
  40. package/dist/esm/loader.js +1 -1
  41. package/dist/esm/taro-components.js +1 -1
  42. package/dist/esm/taro-grid-view-core.entry.js +17 -0
  43. package/dist/esm/taro-input-core.entry.js +1 -1
  44. package/dist/esm/taro-list-view-core.entry.js +17 -0
  45. package/dist/esm/taro-picker-core_2.entry.js +1 -1
  46. package/dist/esm/taro-sticky-header-core.entry.js +17 -0
  47. package/dist/esm/taro-sticky-section-core.entry.js +17 -0
  48. package/dist/esm/taro-swiper-core_2.entry.js +28 -18
  49. package/dist/esm/taro-textarea-core.entry.js +13 -3
  50. package/dist/esm/taro-video-control_3.entry.js +3 -1
  51. package/dist/esm-es5/loader.js +1 -1
  52. package/dist/esm-es5/taro-components.js +1 -1
  53. package/dist/esm-es5/taro-grid-view-core.entry.js +1 -0
  54. package/dist/esm-es5/taro-input-core.entry.js +1 -1
  55. package/dist/esm-es5/taro-list-view-core.entry.js +1 -0
  56. package/dist/esm-es5/taro-picker-core_2.entry.js +1 -1
  57. package/dist/esm-es5/taro-sticky-header-core.entry.js +1 -0
  58. package/dist/esm-es5/taro-sticky-section-core.entry.js +1 -0
  59. package/dist/esm-es5/taro-swiper-core_2.entry.js +1 -1
  60. package/dist/esm-es5/taro-textarea-core.entry.js +1 -1
  61. package/dist/taro-components/p-02aa7366.system.entry.js +1 -0
  62. package/dist/taro-components/p-05c757b7.entry.js +1 -0
  63. package/dist/taro-components/{p-4d390d17.entry.js → p-0b8b3af5.entry.js} +1 -1
  64. package/dist/taro-components/p-1c446c65.system.js +1 -1
  65. package/dist/taro-components/p-1eac7c75.system.entry.js +1 -0
  66. package/dist/taro-components/{p-3e23fa46.system.entry.js → p-39685396.system.entry.js} +1 -1
  67. package/dist/taro-components/p-4402972b.system.entry.js +1 -0
  68. package/dist/taro-components/{p-e53feb03.system.entry.js → p-58f9a827.system.entry.js} +1 -1
  69. package/dist/taro-components/p-5931c82e.entry.js +1 -0
  70. package/dist/taro-components/{p-ab84c88e.entry.js → p-7704e165.entry.js} +1 -1
  71. package/dist/taro-components/p-7c1fc8f5.system.entry.js +1 -0
  72. package/dist/taro-components/p-7df9de66.system.entry.js +1 -0
  73. package/dist/taro-components/{p-10046f1a.system.entry.js → p-a5afdc47.system.entry.js} +1 -1
  74. package/dist/taro-components/p-affb28de.entry.js +1 -0
  75. package/dist/taro-components/{p-8267b686.entry.js → p-c30d1b2d.entry.js} +1 -1
  76. package/dist/taro-components/p-dfc405a5.entry.js +1 -0
  77. package/dist/taro-components/p-e753b776.entry.js +1 -0
  78. package/dist/taro-components/taro-components.esm.js +1 -1
  79. package/dist/types/components/grid-view/grid-view.d.ts +5 -0
  80. package/dist/types/components/list-view/list-view.d.ts +5 -0
  81. package/dist/types/components/sticky-header/sticky-header.d.ts +5 -0
  82. package/dist/types/components/sticky-section/sticky-section.d.ts +5 -0
  83. package/dist/types/components/textarea/textarea.d.ts +2 -1
  84. package/dist/types/components.d.ts +52 -0
  85. package/lib/react/components.d.ts +81 -77
  86. package/lib/react/components.js +82 -77
  87. package/lib/react/components.js.map +1 -1
  88. package/lib/react/index.js +1 -1
  89. package/lib/react/{interfaces-4f837811.d.ts → interfaces-f526f1a2.d.ts} +4 -0
  90. package/lib/react/node_modules/.pnpm/registry.npmjs.org_tslib@1.14.1/node_modules/tslib/tslib.es6.js +221 -0
  91. package/lib/react/node_modules/.pnpm/registry.npmjs.org_tslib@1.14.1/node_modules/tslib/tslib.es6.js.map +1 -0
  92. package/lib/react/react-component-lib/createComponent.d.ts +5 -1
  93. package/lib/react/react-component-lib/createComponent.js +6 -4
  94. package/lib/react/react-component-lib/createComponent.js.map +1 -1
  95. package/lib/react/react-component-lib/createOverlayComponent.d.ts +5 -1
  96. package/lib/react/react-component-lib/createOverlayComponent.js +2 -1
  97. package/lib/react/react-component-lib/createOverlayComponent.js.map +1 -1
  98. package/lib/react/react-component-lib/utils/attachProps.d.ts +2 -6
  99. package/lib/react/react-component-lib/utils/attachProps.js +41 -36
  100. package/lib/react/react-component-lib/utils/attachProps.js.map +1 -1
  101. package/lib/react/react-component-lib/utils/case.d.ts +4 -0
  102. package/lib/react/react-component-lib/utils/case.js +4 -0
  103. package/lib/react/react-component-lib/utils/case.js.map +1 -1
  104. package/lib/react/react-component-lib/utils/index.d.ts +5 -1
  105. package/lib/react/react-component-lib/utils/index.js +4 -0
  106. package/lib/react/react-component-lib/utils/index.js.map +1 -1
  107. package/lib/vue2/components-loader.d.ts +2 -0
  108. package/lib/vue2/components-loader.js +21 -0
  109. package/lib/vue2/components-loader.js.map +1 -0
  110. package/lib/vue2/components.d.ts +5 -1
  111. package/lib/vue2/components.js +141 -224
  112. package/lib/vue2/components.js.map +1 -1
  113. package/lib/vue2/index.d.ts +0 -2
  114. package/lib/vue2/index.js +1 -22
  115. package/lib/vue2/index.js.map +1 -1
  116. package/lib/vue2/vue-component-lib/utils.d.ts +7 -3
  117. package/lib/vue2/vue-component-lib/utils.js +42 -25
  118. package/lib/vue2/vue-component-lib/utils.js.map +1 -1
  119. package/lib/vue3/components-loader.d.ts +2 -0
  120. package/lib/vue3/components-loader.js +13 -0
  121. package/lib/vue3/components-loader.js.map +1 -0
  122. package/lib/vue3/components.d.ts +5 -1
  123. package/lib/vue3/components.js +82 -77
  124. package/lib/vue3/components.js.map +1 -1
  125. package/lib/vue3/index.d.ts +0 -2
  126. package/lib/vue3/index.js +1 -14
  127. package/lib/vue3/index.js.map +1 -1
  128. package/lib/vue3/vue-component-lib/utils.js +11 -4
  129. package/lib/vue3/vue-component-lib/utils.js.map +1 -1
  130. package/package.json +11 -8
  131. package/types/Ad.d.ts +2 -31
  132. package/types/AdCustom.d.ts +0 -4
  133. package/types/AnimationVideo.d.ts +0 -9
  134. package/types/AnimationView.d.ts +0 -6
  135. package/types/ArCamera.d.ts +0 -7
  136. package/types/Audio.d.ts +0 -18
  137. package/types/AwemeData.d.ts +0 -6
  138. package/types/Button.d.ts +3 -106
  139. package/types/Camera.d.ts +0 -28
  140. package/types/Canvas.d.ts +2 -17
  141. package/types/ChannelLive.d.ts +0 -2
  142. package/types/ChannelVideo.d.ts +0 -6
  143. package/types/Checkbox.d.ts +1 -8
  144. package/types/CheckboxGroup.d.ts +0 -2
  145. package/types/CommentDetail.d.ts +4 -10
  146. package/types/CommentList.d.ts +4 -20
  147. package/types/ContactButton.d.ts +0 -7
  148. package/types/CoverImage.d.ts +0 -11
  149. package/types/CoverView.d.ts +0 -26
  150. package/types/Editor.d.ts +0 -10
  151. package/types/FollowSwan.d.ts +0 -3
  152. package/types/Form.d.ts +1 -9
  153. package/types/FunctionalPageNavigator.d.ts +0 -11
  154. package/types/GridView.d.ts +37 -0
  155. package/types/Icon.d.ts +0 -14
  156. package/types/Image.d.ts +0 -31
  157. package/types/InlinePaymentPanel.d.ts +0 -9
  158. package/types/Input.d.ts +0 -62
  159. package/types/Label.d.ts +3 -2
  160. package/types/Lifestyle.d.ts +0 -3
  161. package/types/Like.d.ts +0 -17
  162. package/types/ListView.d.ts +12 -0
  163. package/types/LivePlayer.d.ts +1 -58
  164. package/types/LivePusher.d.ts +0 -77
  165. package/types/Login.d.ts +0 -5
  166. package/types/Lottie.d.ts +0 -16
  167. package/types/Map.d.ts +19 -136
  168. package/types/MatchMedia.d.ts +0 -7
  169. package/types/MovableArea.d.ts +0 -1
  170. package/types/MovableView.d.ts +0 -35
  171. package/types/NavigationBar.d.ts +0 -6
  172. package/types/Navigator.d.ts +0 -27
  173. package/types/OfficialAccount.d.ts +0 -12
  174. package/types/OpenData.d.ts +0 -20
  175. package/types/PageContainer.d.ts +0 -21
  176. package/types/PageMeta.d.ts +0 -16
  177. package/types/Picker.d.ts +17 -45
  178. package/types/PickerView.d.ts +1 -12
  179. package/types/Progress.d.ts +0 -13
  180. package/types/Radio.d.ts +1 -8
  181. package/types/RadioGroup.d.ts +0 -2
  182. package/types/RichText.d.ts +1 -22
  183. package/types/RootPortal.d.ts +1 -2
  184. package/types/RtcRoom.d.ts +0 -16
  185. package/types/RtcRoomItem.d.ts +0 -3
  186. package/types/ScrollView.d.ts +43 -46
  187. package/types/ShareElement.d.ts +2 -7
  188. package/types/Slider.d.ts +0 -19
  189. package/types/StickyHeader.d.ts +12 -0
  190. package/types/StickySection.d.ts +18 -0
  191. package/types/Swiper.d.ts +0 -44
  192. package/types/SwiperItem.d.ts +0 -2
  193. package/types/Switch.d.ts +2 -11
  194. package/types/TabItem.d.ts +0 -4
  195. package/types/Tabs.d.ts +0 -8
  196. package/types/Text.d.ts +0 -7
  197. package/types/Textarea.d.ts +2 -38
  198. package/types/Video.d.ts +1 -112
  199. package/types/View.d.ts +0 -25
  200. package/types/VoipRoom.d.ts +0 -6
  201. package/types/WebView.d.ts +0 -6
  202. package/types/index.d.ts +4 -0
  203. package/types/index.vue3.d.ts +8 -0
  204. package/dist/taro-components/p-0895120a.system.entry.js +0 -1
  205. package/dist/taro-components/p-0aaf66d2.entry.js +0 -1
@@ -1,33 +1,13 @@
1
1
  import { camelToDashCase } from './case.js';
2
2
 
3
- const attachProps = (node, newProps, oldProps = {}) => {
4
- // some test frameworks don't render DOM elements, so we test here to make sure we are dealing with DOM first
5
- if (node instanceof Element) {
6
- // add any classes in className to the class list
7
- const className = getClassName(node.classList, newProps, oldProps);
8
- if (className !== '') {
9
- node.className = className;
10
- }
11
- Object.keys(newProps).forEach((name) => {
12
- if ((name === 'style' && typeof newProps[name] !== 'string') || ['children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {
13
- return;
14
- }
15
- if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {
16
- const eventName = name.substring(2);
17
- const eventNameLc = eventName.toLowerCase();
18
- if (!isCoveredByReact(eventNameLc)) {
19
- syncEvent(node, eventNameLc, newProps[name]);
20
- }
21
- }
22
- else {
23
- node[name] = newProps[name];
24
- const propType = typeof newProps[name];
25
- if (propType === 'string') {
26
- node.setAttribute(camelToDashCase(name), newProps[name]);
27
- }
28
- }
29
- });
30
- }
3
+ /**
4
+ * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/attachProps.ts
5
+ * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE
6
+ */
7
+ const arrayToMap = (arr) => {
8
+ const map = new Map();
9
+ arr.forEach((s) => map.set(s, s));
10
+ return map;
31
11
  };
32
12
  const getClassName = (classList, newProps, oldProps) => {
33
13
  const newClassProp = newProps.className || newProps.class;
@@ -53,10 +33,7 @@ const getClassName = (classList, newProps, oldProps) => {
53
33
  incomingPropClasses.forEach((s) => finalClassNames.push(s));
54
34
  return finalClassNames.join(' ');
55
35
  };
56
- /**
57
- * Checks if an event is supported in the current execution environment.
58
- * @license Modernizr 3.0.0pre (Custom Build) | MIT
59
- */
36
+ // Note(taro): 禁用 react 合成事件抛出 (避免自定义事件属性调用问题, 例如: event.detail.value 等)
60
37
  const isCoveredByReact = (__eventNameSuffix) => false;
61
38
  const syncEvent = (node, eventName, newEventHandler) => {
62
39
  const eventStore = node.__events || (node.__events = {});
@@ -72,10 +49,38 @@ const syncEvent = (node, eventName, newEventHandler) => {
72
49
  }
73
50
  }));
74
51
  };
75
- const arrayToMap = (arr) => {
76
- const map = new Map();
77
- arr.forEach((s) => map.set(s, s));
78
- return map;
52
+ const attachProps = (node, newProps, oldProps = {}) => {
53
+ // some test frameworks don't render DOM elements, so we test here to make sure we are dealing with DOM first
54
+ if (node instanceof Element) {
55
+ // add any classes in className to the class list
56
+ const className = getClassName(node.classList, newProps, oldProps);
57
+ if (className !== '') {
58
+ node.className = className;
59
+ }
60
+ Object.keys(newProps).forEach((name) => {
61
+ /** Note(taro): 优化 style 属性的处理
62
+ * 1. 考虑到兼容旧版本项目,支持使用字符串配置 style 属性,但这并非推荐写法,且不考虑优化在 style 移除时同步删除属性
63
+ * 2. style 属性应当交与前端 UI 框架自行处理,不考虑实现类似于 reactify-wc 的更新策略
64
+ */
65
+ if ((name === 'style' && typeof newProps[name] !== 'string') || ['children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {
66
+ return;
67
+ }
68
+ if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {
69
+ const eventName = name.substring(2);
70
+ const eventNameLc = eventName.toLowerCase();
71
+ if (!isCoveredByReact(eventNameLc)) {
72
+ syncEvent(node, eventNameLc, newProps[name]);
73
+ }
74
+ }
75
+ else {
76
+ node[name] = newProps[name];
77
+ const propType = typeof newProps[name];
78
+ if (propType === 'string') {
79
+ node.setAttribute(camelToDashCase(name), newProps[name]);
80
+ }
81
+ }
82
+ });
83
+ }
79
84
  };
80
85
 
81
86
  export { attachProps, getClassName, isCoveredByReact, syncEvent };
@@ -1 +1 @@
1
- {"version":3,"file":"attachProps.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/attachProps.ts"],"sourcesContent":["import { camelToDashCase } from './case';\n\nexport const attachProps = (node: HTMLElement, newProps: any, oldProps: any = {}) => {\n // some test frameworks don't render DOM elements, so we test here to make sure we are dealing with DOM first\n if (node instanceof Element) {\n // add any classes in className to the class list\n const className = getClassName(node.classList, newProps, oldProps);\n if (className !== '') {\n node.className = className;\n }\n\n Object.keys(newProps).forEach((name) => {\n if ((name === 'style' && typeof newProps[name] !== 'string') || ['children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {\n return;\n }\n if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {\n const eventName = name.substring(2);\n const eventNameLc = eventName.toLowerCase();\n\n if (!isCoveredByReact(eventNameLc)) {\n syncEvent(node, eventNameLc, newProps[name]);\n }\n } else {\n (node as any)[name] = newProps[name];\n const propType = typeof newProps[name];\n if (propType === 'string') {\n node.setAttribute(camelToDashCase(name), newProps[name]);\n }\n }\n });\n }\n};\n\nexport const getClassName = (classList: DOMTokenList, newProps: any, oldProps: any) => {\n const newClassProp: string = newProps.className || newProps.class;\n const oldClassProp: string = oldProps.className || oldProps.class;\n // map the classes to Maps for performance\n const currentClasses = arrayToMap(classList);\n const incomingPropClasses = arrayToMap(newClassProp ? newClassProp.split(' ') : []);\n const oldPropClasses = arrayToMap(oldClassProp ? oldClassProp.split(' ') : []);\n const finalClassNames: string[] = [];\n // loop through each of the current classes on the component\n // to see if it should be a part of the classNames added\n currentClasses.forEach((currentClass) => {\n if (incomingPropClasses.has(currentClass)) {\n // add it as its already included in classnames coming in from newProps\n finalClassNames.push(currentClass);\n incomingPropClasses.delete(currentClass);\n } else if (!oldPropClasses.has(currentClass)) {\n // add it as it has NOT been removed by user\n finalClassNames.push(currentClass);\n }\n });\n incomingPropClasses.forEach((s) => finalClassNames.push(s));\n return finalClassNames.join(' ');\n};\n\n/**\n * Checks if an event is supported in the current execution environment.\n * @license Modernizr 3.0.0pre (Custom Build) | MIT\n */\nexport const isCoveredByReact = (__eventNameSuffix: string) => false;\n\nexport const syncEvent = (\n node: Element & { __events?: { [key: string]: ((e: Event) => any) | undefined } },\n eventName: string,\n newEventHandler?: (e: Event) => any\n) => {\n const eventStore = node.__events || (node.__events = {});\n const oldEventHandler = eventStore[eventName];\n\n // Remove old listener so they don't double up.\n if (oldEventHandler) {\n node.removeEventListener(eventName, oldEventHandler);\n }\n\n // Bind new listener.\n node.addEventListener(\n eventName,\n (eventStore[eventName] = function handler(e: Event) {\n if (newEventHandler) {\n newEventHandler.call(this, e);\n }\n })\n );\n};\n\nconst arrayToMap = (arr: string[] | DOMTokenList) => {\n const map = new Map<string, string>();\n (arr as string[]).forEach((s: string) => map.set(s, s));\n return map;\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachProps.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/attachProps.ts"],"sourcesContent":["/**\n * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/attachProps.ts\n * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE\n */\nimport { camelToDashCase } from './case'\n\nconst arrayToMap = (arr: string[] | DOMTokenList) => {\n const map = new Map<string, string>();\n (arr as string[]).forEach((s: string) => map.set(s, s))\n return map\n}\n\nexport const getClassName = (classList: DOMTokenList, newProps: any, oldProps: any) => {\n const newClassProp: string = newProps.className || newProps.class\n const oldClassProp: string = oldProps.className || oldProps.class\n // map the classes to Maps for performance\n const currentClasses = arrayToMap(classList)\n const incomingPropClasses = arrayToMap(newClassProp ? newClassProp.split(' ') : [])\n const oldPropClasses = arrayToMap(oldClassProp ? oldClassProp.split(' ') : [])\n const finalClassNames: string[] = []\n // loop through each of the current classes on the component\n // to see if it should be a part of the classNames added\n currentClasses.forEach((currentClass) => {\n if (incomingPropClasses.has(currentClass)) {\n // add it as its already included in classnames coming in from newProps\n finalClassNames.push(currentClass)\n incomingPropClasses.delete(currentClass)\n } else if (!oldPropClasses.has(currentClass)) {\n // add it as it has NOT been removed by user\n finalClassNames.push(currentClass)\n }\n })\n incomingPropClasses.forEach((s) => finalClassNames.push(s))\n return finalClassNames.join(' ')\n}\n\n// Note(taro): 禁用 react 合成事件抛出 (避免自定义事件属性调用问题, 例如: event.detail.value )\nexport const isCoveredByReact = (__eventNameSuffix: string) => false\n\nexport const syncEvent = (\n node: Element & { __events?: { [key: string]: ((e: Event) => any) | undefined } },\n eventName: string,\n newEventHandler?: (e: Event) => any\n) => {\n const eventStore = node.__events || (node.__events = {})\n const oldEventHandler = eventStore[eventName]\n\n // Remove old listener so they don't double up.\n if (oldEventHandler) {\n node.removeEventListener(eventName, oldEventHandler)\n }\n\n // Bind new listener.\n node.addEventListener(\n eventName,\n (eventStore[eventName] = function handler (e: Event) {\n if (newEventHandler) {\n newEventHandler.call(this, e)\n }\n })\n )\n}\n\nexport const attachProps = (node: HTMLElement, newProps: any, oldProps: any = {}) => {\n // some test frameworks don't render DOM elements, so we test here to make sure we are dealing with DOM first\n if (node instanceof Element) {\n // add any classes in className to the class list\n const className = getClassName(node.classList, newProps, oldProps)\n if (className !== '') {\n node.className = className\n }\n\n Object.keys(newProps).forEach((name) => {\n /** Note(taro): 优化 style 属性的处理\n * 1. 考虑到兼容旧版本项目,支持使用字符串配置 style 属性,但这并非推荐写法,且不考虑优化在 style 移除时同步删除属性\n * 2. style 属性应当交与前端 UI 框架自行处理,不考虑实现类似于 reactify-wc 的更新策略\n */\n if ((name === 'style' && typeof newProps[name] !== 'string') || ['children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {\n return\n }\n if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {\n const eventName = name.substring(2)\n const eventNameLc = eventName.toLowerCase()\n\n if (!isCoveredByReact(eventNameLc)) {\n syncEvent(node, eventNameLc, newProps[name])\n }\n } else {\n (node as any)[name] = newProps[name]\n const propType = typeof newProps[name]\n if (propType === 'string') {\n node.setAttribute(camelToDashCase(name), newProps[name])\n }\n }\n })\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/case.ts
3
+ * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE
4
+ */
1
5
  declare const dashToPascalCase: (str: string) => string;
2
6
  declare const camelToDashCase: (str: string) => string;
3
7
  export { dashToPascalCase, camelToDashCase };
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/case.ts
3
+ * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE
4
+ */
1
5
  const dashToPascalCase = (str) => str
2
6
  .toLowerCase()
3
7
  .split('-')
@@ -1 +1 @@
1
- {"version":3,"file":"case.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/case.ts"],"sourcesContent":["export const dashToPascalCase = (str: string) =>\n str\n .toLowerCase()\n .split('-')\n .map((segment) => segment.charAt(0).toUpperCase() + segment.slice(1))\n .join('');\nexport const camelToDashCase = (str: string) => str.replace(/([A-Z])/g, (m: string) => `-${m[0].toLowerCase()}`);\n"],"names":[],"mappings":"MAAa,gBAAgB,GAAG,CAAC,GAAW,KAC1C,GAAG;AACA,KAAA,WAAW,EAAE;KACb,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACpE,IAAI,CAAC,EAAE,EAAE;AACP,MAAM,eAAe,GAAG,CAAC,GAAW,KAAK,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAS,KAAK,CAAA,CAAA,EAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA,CAAE;;;;"}
1
+ {"version":3,"file":"case.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/case.ts"],"sourcesContent":["/**\n * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/case.ts\n * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE\n */\nexport const dashToPascalCase = (str: string) =>\n str\n .toLowerCase()\n .split('-')\n .map((segment) => segment.charAt(0).toUpperCase() + segment.slice(1))\n .join('')\nexport const camelToDashCase = (str: string) => str.replace(/([A-Z])/g, (m: string) => `-${m[0].toLowerCase()}`)\n"],"names":[],"mappings":"AAAA;;;AAGG;MACU,gBAAgB,GAAG,CAAC,GAAW,KAC1C,GAAG;AACA,KAAA,WAAW,EAAE;KACb,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACpE,IAAI,CAAC,EAAE,EAAC;AACN,MAAM,eAAe,GAAG,CAAC,GAAW,KAAK,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAS,KAAK,CAAA,CAAA,EAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA,CAAE;;;;"}
@@ -1,5 +1,9 @@
1
+ /**
2
+ * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/index.ts
3
+ * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE
4
+ */
1
5
  import React from 'react';
2
- import { StyleReactProps } from "../../interfaces-4f837811";
6
+ import { StyleReactProps } from "../../interfaces-f526f1a2";
3
7
  type StencilReactExternalProps<PropType, ElementType> = PropType & Omit<React.HTMLAttributes<ElementType>, 'style'> & StyleReactProps;
4
8
  type StencilReactForwardedRef<T> = ((instance: T | null) => void) | React.MutableRefObject<T | null> | null;
5
9
  declare const setRef: (ref: StencilReactForwardedRef<any> | React.Ref<any> | undefined, value: any) => void;
@@ -2,6 +2,10 @@ import React from 'react';
2
2
  export { attachProps, getClassName, isCoveredByReact, syncEvent } from './attachProps.js';
3
3
  export { camelToDashCase, dashToPascalCase } from './case.js';
4
4
 
5
+ /**
6
+ * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/index.ts
7
+ * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE
8
+ */
5
9
  const setRef = (ref, value) => {
6
10
  if (typeof ref === 'function') {
7
11
  ref(value);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/index.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { StyleReactProps } from '../interfaces';\n\nexport type StencilReactExternalProps<PropType, ElementType> = PropType &\n Omit<React.HTMLAttributes<ElementType>, 'style'> &\n StyleReactProps;\n\n// This will be replaced with React.ForwardedRef when react-output-target is upgraded to React v17\nexport type StencilReactForwardedRef<T> = ((instance: T | null) => void) | React.MutableRefObject<T | null> | null;\n\nexport const setRef = (ref: StencilReactForwardedRef<any> | React.Ref<any> | undefined, value: any) => {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref != null) {\n // Cast as a MutableRef so we can assign current\n (ref as React.MutableRefObject<any>).current = value;\n }\n};\n\nexport const mergeRefs = (\n ...refs: (StencilReactForwardedRef<any> | React.Ref<any> | undefined)[]\n): React.RefCallback<any> => {\n return (value: any) => {\n refs.forEach((ref) => {\n setRef(ref, value);\n });\n };\n};\n\nexport const createForwardRef = <PropType, ElementType>(ReactComponent: any, displayName: string) => {\n const forwardRef = (\n props: StencilReactExternalProps<PropType, ElementType>,\n ref: StencilReactForwardedRef<ElementType>\n ) => {\n return <ReactComponent {...props} forwardedRef={ref} />;\n };\n forwardRef.displayName = displayName;\n\n return React.forwardRef(forwardRef);\n};\n\nexport const defineCustomElement = (tagName: string, customElement: any) => {\n if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {\n customElements.define(tagName, customElement);\n }\n};\n\nexport * from './attachProps';\nexport * from './case';\n"],"names":[],"mappings":";;;;MAWa,MAAM,GAAG,CAAC,GAA+D,EAAE,KAAU,KAAI;AACpG,IAAA,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;QAC7B,GAAG,CAAC,KAAK,CAAC,CAAC;AACZ,KAAA;SAAM,IAAI,GAAG,IAAI,IAAI,EAAE;;AAErB,QAAA,GAAmC,CAAC,OAAO,GAAG,KAAK,CAAC;AACtD,KAAA;AACH,EAAE;MAEW,SAAS,GAAG,CACvB,GAAG,IAAoE,KAC7C;IAC1B,OAAO,CAAC,KAAU,KAAI;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACnB,YAAA,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACrB,SAAC,CAAC,CAAC;AACL,KAAC,CAAC;AACJ,EAAE;MAEW,gBAAgB,GAAG,CAAwB,cAAmB,EAAE,WAAmB,KAAI;AAClG,IAAA,MAAM,UAAU,GAAG,CACjB,KAAuD,EACvD,GAA0C,KACxC;QACF,OAAO,KAAA,CAAA,aAAA,CAAC,cAAc,EAAK,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,IAAE,YAAY,EAAE,GAAG,EAAA,CAAA,CAAI,CAAC;AAC1D,KAAC,CAAC;AACF,IAAA,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;AAErC,IAAA,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACtC,EAAE;MAEW,mBAAmB,GAAG,CAAC,OAAe,EAAE,aAAkB,KAAI;AACzE,IAAA,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,cAAc,KAAK,WAAW,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AACxG,QAAA,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC/C,KAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../taro-components-library-react/src/react-component-lib/utils/index.tsx"],"sourcesContent":["/**\n * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/utils/index.ts\n * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE\n */\nimport React from 'react'\n\nimport type { StyleReactProps } from '../interfaces'\n\nexport type StencilReactExternalProps<PropType, ElementType> = PropType &\nOmit<React.HTMLAttributes<ElementType>, 'style'> &\nStyleReactProps;\n\n// This will be replaced with React.ForwardedRef when react-output-target is upgraded to React v17\nexport type StencilReactForwardedRef<T> = ((instance: T | null) => void) | React.MutableRefObject<T | null> | null;\n\nexport const setRef = (ref: StencilReactForwardedRef<any> | React.Ref<any> | undefined, value: any) => {\n if (typeof ref === 'function') {\n ref(value)\n } else if (ref != null) {\n // Cast as a MutableRef so we can assign current\n (ref as React.MutableRefObject<any>).current = value\n }\n}\n\nexport const mergeRefs = (\n ...refs: (StencilReactForwardedRef<any> | React.Ref<any> | undefined)[]\n): React.RefCallback<any> => {\n return (value: any) => {\n refs.forEach((ref) => {\n setRef(ref, value)\n })\n }\n}\n\nexport const createForwardRef = <PropType, ElementType>(ReactComponent: any, displayName: string) => {\n const forwardRef = (\n props: StencilReactExternalProps<PropType, ElementType>,\n ref: StencilReactForwardedRef<ElementType>\n ) => {\n return <ReactComponent {...props} forwardedRef={ref} />\n }\n forwardRef.displayName = displayName\n\n return React.forwardRef(forwardRef)\n}\n\nexport const defineCustomElement = (tagName: string, customElement: any) => {\n if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {\n customElements.define(tagName, customElement)\n }\n}\n\nexport * from './attachProps'\nexport * from './case'\n"],"names":[],"mappings":";;;;AAAA;;;AAGG;MAYU,MAAM,GAAG,CAAC,GAA+D,EAAE,KAAU,KAAI;AACpG,IAAA,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;QAC7B,GAAG,CAAC,KAAK,CAAC,CAAA;AACX,KAAA;SAAM,IAAI,GAAG,IAAI,IAAI,EAAE;;AAErB,QAAA,GAAmC,CAAC,OAAO,GAAG,KAAK,CAAA;AACrD,KAAA;AACH,EAAC;MAEY,SAAS,GAAG,CACvB,GAAG,IAAoE,KAC7C;IAC1B,OAAO,CAAC,KAAU,KAAI;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACnB,YAAA,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;AACpB,SAAC,CAAC,CAAA;AACJ,KAAC,CAAA;AACH,EAAC;MAEY,gBAAgB,GAAG,CAAwB,cAAmB,EAAE,WAAmB,KAAI;AAClG,IAAA,MAAM,UAAU,GAAG,CACjB,KAAuD,EACvD,GAA0C,KACxC;QACF,OAAO,KAAA,CAAA,aAAA,CAAC,cAAc,EAAK,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,IAAE,YAAY,EAAE,GAAG,EAAA,CAAA,CAAI,CAAA;AACzD,KAAC,CAAA;AACD,IAAA,UAAU,CAAC,WAAW,GAAG,WAAW,CAAA;AAEpC,IAAA,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;AACrC,EAAC;MAEY,mBAAmB,GAAG,CAAC,OAAe,EAAE,aAAkB,KAAI;AACzE,IAAA,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,cAAc,KAAK,WAAW,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AACxG,QAAA,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;AAC9C,KAAA;AACH;;;;"}
@@ -0,0 +1,2 @@
1
+ declare function initVue2Components(components?: Record<string, any>): void;
2
+ export { initVue2Components };
@@ -0,0 +1,21 @@
1
+ import Vue from 'vue';
2
+ import index from './node_modules/.pnpm/registry.npmjs.org_vue-fragment@1.6.0_vue@2.6.14/node_modules/vue-fragment/dist/vue-fragment.esm.js';
3
+
4
+ function initVue2Components(components = {}) {
5
+ var _a;
6
+ const ignoredElements = [/^taro-/, 'root', 'block'];
7
+ if (!((_a = Vue.config.ignoredElements) === null || _a === void 0 ? void 0 : _a.includes(ignoredElements[0]))) {
8
+ Vue.config.ignoredElements = [...Vue.config.ignoredElements, ...ignoredElements];
9
+ }
10
+ Vue.use(index.Plugin);
11
+ Object.entries(components).forEach(([name, definition]) => {
12
+ if (typeof (definition === null || definition === void 0 ? void 0 : definition.render) === 'function') {
13
+ const tagName = 'taro' + name.replace(new RegExp('([A-Z])', 'g'), '-$1').toLowerCase();
14
+ const comp = Vue.extend(definition);
15
+ Vue.component(tagName, comp);
16
+ }
17
+ });
18
+ }
19
+
20
+ export { initVue2Components };
21
+ //# sourceMappingURL=components-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-loader.js","sources":["../../../taro-components-library-vue2/src/components-loader.ts"],"sourcesContent":["import Vue from 'vue'\nimport Fragment from 'vue-fragment'\n\nexport function initVue2Components (components: Record<string, any> = {}) {\n const ignoredElements = [/^taro-/, 'root', 'block']\n if (!Vue.config.ignoredElements?.includes(ignoredElements[0])) {\n Vue.config.ignoredElements = [...Vue.config.ignoredElements, ...ignoredElements]\n }\n\n Vue.use(Fragment.Plugin)\n Object.entries(components).forEach(([name, definition]) => {\n if (typeof definition?.render === 'function') {\n const tagName = 'taro' + name.replace(new RegExp('([A-Z])', 'g'), '-$1').toLowerCase()\n const comp = Vue.extend(definition)\n Vue.component(tagName, comp)\n }\n })\n}\n"],"names":["Fragment"],"mappings":";;;AAGgB,SAAA,kBAAkB,CAAE,UAAA,GAAkC,EAAE,EAAA;;IACtE,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;AACnD,IAAA,IAAI,EAAC,CAAA,EAAA,GAAA,GAAG,CAAC,MAAM,CAAC,eAAe,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA,EAAE;AAC7D,QAAA,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,eAAe,CAAC,CAAA;AACjF,KAAA;AAED,IAAA,GAAG,CAAC,GAAG,CAACA,KAAQ,CAAC,MAAM,CAAC,CAAA;AACxB,IAAA,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,KAAI;AACxD,QAAA,IAAI,QAAO,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAV,UAAU,CAAE,MAAM,CAAA,KAAK,UAAU,EAAE;YAC5C,MAAM,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;YACtF,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AACnC,YAAA,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC7B,SAAA;AACH,KAAC,CAAC,CAAA;AACJ;;;;"}
@@ -62,6 +62,7 @@ declare const Editor: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown,
62
62
  declare const FollowSwan: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
63
63
  declare const Form: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
64
64
  declare const FunctionalPageNavigator: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
65
+ declare const GridView: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
65
66
  declare const Icon: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, {
66
67
  type: import("@tarojs/components/dist/types/components/icon/icon").Type;
67
68
  size: string | number;
@@ -94,6 +95,7 @@ declare const Label: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown,
94
95
  }>;
95
96
  declare const Lifestyle: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
96
97
  declare const Like: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
98
+ declare const ListView: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
97
99
  declare const LivePlayer: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
98
100
  declare const LivePusher: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
99
101
  declare const Login: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
@@ -244,6 +246,8 @@ declare const Slider: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown,
244
246
  name: string;
245
247
  }>;
246
248
  declare const Slot: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
249
+ declare const StickyHeader: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
250
+ declare const StickySection: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, Record<never, any>>;
247
251
  declare const Swiper: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, {
248
252
  indicatorDots: boolean;
249
253
  indicatorColor: string;
@@ -355,4 +359,4 @@ declare const VoipRoom: import("vue/types/vue").ExtendedVue<Vue, unknown, unknow
355
359
  declare const WebView: import("vue/types/vue").ExtendedVue<Vue, unknown, unknown, unknown, {
356
360
  src: string;
357
361
  }>;
358
- export { Ad, AdCustom, AnimationVideo, AnimationView, ArCamera, Audio, AwemeData, Block, Button, Camera, Canvas, ChannelLive, ChannelVideo, Checkbox, CheckboxGroup, CommentDetail, CommentList, ContactButton, CoverImage, CoverView, CustomWrapper, Editor, FollowSwan, Form, FunctionalPageNavigator, Icon, Image, InlinePaymentPanel, Input, KeyboardAccessory, Label, Lifestyle, Like, LivePlayer, LivePusher, Login, Lottie, Map, MatchMedia, MovableArea, MovableView, NativeSlot, NavigationBar, Navigator, OfficialAccount, OpenData, PageContainer, PageMeta, Picker, PickerGroup, PickerViewColumn, PickerView, Progress, PullToRefresh, Radio, RadioGroup, RichText, RootPortal, RtcRoom, RtcRoomItem, ScrollView, ShareElement, Slider, Slot, Swiper, SwiperItem, Switch, TabItem, Tabbar, Tabs, Text, Textarea, VideoControl, Video, VideoDanmu, View, VoipRoom, WebView };
362
+ export { Ad, AdCustom, AnimationVideo, AnimationView, ArCamera, Audio, AwemeData, Block, Button, Camera, Canvas, ChannelLive, ChannelVideo, Checkbox, CheckboxGroup, CommentDetail, CommentList, ContactButton, CoverImage, CoverView, CustomWrapper, Editor, FollowSwan, Form, FunctionalPageNavigator, GridView, Icon, Image, InlinePaymentPanel, Input, KeyboardAccessory, Label, Lifestyle, Like, ListView, LivePlayer, LivePusher, Login, Lottie, Map, MatchMedia, MovableArea, MovableView, NativeSlot, NavigationBar, Navigator, OfficialAccount, OpenData, PageContainer, PageMeta, Picker, PickerGroup, PickerViewColumn, PickerView, Progress, PullToRefresh, Radio, RadioGroup, RichText, RootPortal, RtcRoom, RtcRoomItem, ScrollView, ShareElement, Slider, Slot, StickyHeader, StickySection, Swiper, SwiperItem, Switch, TabItem, Tabbar, Tabs, Text, Textarea, VideoControl, Video, VideoDanmu, View, VoipRoom, WebView };