@tarojs/components 3.7.0-alpha.1 → 3.7.0-alpha.11

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 (219) hide show
  1. package/dist/cjs/hls-00fec546.js +25673 -0
  2. package/dist/{esm/index-394db4c1.js → cjs/index-f6805218.js} +2 -6
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/taro-button-core.cjs.entry.js +2 -2
  5. package/dist/cjs/taro-components.cjs.js +1 -1
  6. package/dist/cjs/taro-cover-view-core.cjs.entry.js +1 -1
  7. package/dist/cjs/taro-icon-core.cjs.entry.js +1 -1
  8. package/dist/cjs/taro-image-core.cjs.entry.js +5 -4
  9. package/dist/cjs/taro-input-core.cjs.entry.js +6 -11
  10. package/dist/cjs/taro-navigator-core.cjs.entry.js +1 -1
  11. package/dist/cjs/taro-picker-core_2.cjs.entry.js +23 -20
  12. package/dist/cjs/taro-picker-view-column-core_2.cjs.entry.js +1 -1
  13. package/dist/cjs/taro-pull-to-refresh.cjs.entry.js +3 -3
  14. package/dist/cjs/taro-rich-text-core.cjs.entry.js +6 -0
  15. package/dist/cjs/taro-scroll-view-core.cjs.entry.js +5 -4
  16. package/dist/cjs/taro-swiper-core_2.cjs.entry.js +37 -36
  17. package/dist/cjs/taro-tabbar.cjs.entry.js +1 -1
  18. package/dist/cjs/taro-text-core.cjs.entry.js +9 -6
  19. package/dist/cjs/taro-textarea-core.cjs.entry.js +1 -8
  20. package/dist/cjs/taro-video-control_3.cjs.entry.js +3 -3
  21. package/dist/cjs/taro-view-core.cjs.entry.js +1 -1
  22. package/dist/collection/components/button/style/index.css +12 -0
  23. package/dist/collection/components/checkbox/checkbox.js +4 -4
  24. package/dist/collection/components/image/image.js +6 -4
  25. package/dist/collection/components/input/input.js +9 -13
  26. package/dist/collection/components/picker/picker-group.js +29 -26
  27. package/dist/collection/components/picker/picker.js +42 -16
  28. package/dist/collection/components/pull-to-refresh/pull-to-refresh.js +1 -1
  29. package/dist/collection/components/pull-to-refresh/style/index.css +0 -1
  30. package/dist/collection/components/rich-text/rich-text.js +71 -0
  31. package/dist/collection/components/rich-text/style/index.css +16 -0
  32. package/dist/collection/components/scroll-view/scroll-view.js +22 -4
  33. package/dist/collection/components/swiper/swiper-item.js +34 -35
  34. package/dist/collection/components/swiper/swiper.js +2 -0
  35. package/dist/collection/components/text/style/index.css +20 -3
  36. package/dist/collection/components/text/text.js +66 -6
  37. package/dist/collection/components/textarea/textarea.js +4 -10
  38. package/dist/collection/components/video/video.js +1 -1
  39. package/dist/components/hls.js +23206 -24210
  40. package/dist/components/index2.js +1 -7
  41. package/dist/components/picker-group.js +9 -9
  42. package/dist/components/taro-button-core.js +1 -1
  43. package/dist/components/taro-checkbox-core.js +1 -1
  44. package/dist/components/taro-image-core.js +6 -4
  45. package/dist/components/taro-input-core.js +7 -12
  46. package/dist/components/taro-picker-core.js +16 -13
  47. package/dist/components/taro-pull-to-refresh.js +2 -2
  48. package/dist/components/taro-rich-text-core.js +10 -1
  49. package/dist/components/taro-scroll-view-core.js +5 -3
  50. package/dist/components/taro-swiper-core.js +2 -0
  51. package/dist/components/taro-swiper-item-core.js +34 -35
  52. package/dist/components/taro-text-core.js +13 -7
  53. package/dist/components/taro-textarea-core.js +2 -9
  54. package/dist/components/taro-video-core.js +2 -2
  55. package/dist/esm/hls-4018c7ea.js +25671 -0
  56. package/dist/{cjs/index-067a58c1.js → esm/index-c3e4004b.js} +1 -12
  57. package/dist/esm/loader.js +1 -1
  58. package/dist/esm/taro-button-core.entry.js +2 -2
  59. package/dist/esm/taro-components.js +1 -1
  60. package/dist/esm/taro-cover-view-core.entry.js +1 -1
  61. package/dist/esm/taro-icon-core.entry.js +1 -1
  62. package/dist/esm/taro-image-core.entry.js +5 -4
  63. package/dist/esm/taro-input-core.entry.js +6 -11
  64. package/dist/esm/taro-navigator-core.entry.js +1 -1
  65. package/dist/esm/taro-picker-core_2.entry.js +23 -20
  66. package/dist/esm/taro-picker-view-column-core_2.entry.js +1 -1
  67. package/dist/esm/taro-pull-to-refresh.entry.js +3 -3
  68. package/dist/esm/taro-rich-text-core.entry.js +6 -0
  69. package/dist/esm/taro-scroll-view-core.entry.js +5 -4
  70. package/dist/esm/taro-swiper-core_2.entry.js +37 -36
  71. package/dist/esm/taro-tabbar.entry.js +1 -1
  72. package/dist/esm/taro-text-core.entry.js +9 -6
  73. package/dist/esm/taro-textarea-core.entry.js +1 -8
  74. package/dist/esm/taro-video-control_3.entry.js +3 -3
  75. package/dist/esm/taro-view-core.entry.js +1 -1
  76. package/dist/esm-es5/hls-4018c7ea.js +1 -0
  77. package/dist/esm-es5/index-c3e4004b.js +7 -0
  78. package/dist/esm-es5/loader.js +1 -1
  79. package/dist/esm-es5/taro-button-core.entry.js +1 -1
  80. package/dist/esm-es5/taro-components.js +1 -1
  81. package/dist/esm-es5/taro-cover-view-core.entry.js +1 -1
  82. package/dist/esm-es5/taro-icon-core.entry.js +1 -1
  83. package/dist/esm-es5/taro-image-core.entry.js +1 -1
  84. package/dist/esm-es5/taro-input-core.entry.js +1 -1
  85. package/dist/esm-es5/taro-navigator-core.entry.js +1 -1
  86. package/dist/esm-es5/taro-picker-core_2.entry.js +1 -1
  87. package/dist/esm-es5/taro-picker-view-column-core_2.entry.js +1 -1
  88. package/dist/esm-es5/taro-pull-to-refresh.entry.js +1 -1
  89. package/dist/esm-es5/taro-rich-text-core.entry.js +1 -1
  90. package/dist/esm-es5/taro-scroll-view-core.entry.js +1 -1
  91. package/dist/esm-es5/taro-swiper-core_2.entry.js +1 -1
  92. package/dist/esm-es5/taro-tabbar.entry.js +1 -1
  93. package/dist/esm-es5/taro-text-core.entry.js +1 -1
  94. package/dist/esm-es5/taro-textarea-core.entry.js +1 -1
  95. package/dist/esm-es5/taro-video-control_3.entry.js +1 -1
  96. package/dist/esm-es5/taro-view-core.entry.js +1 -1
  97. package/dist/taro-components/{p-1e43a2d5.entry.js → p-0114a2e4.entry.js} +1 -1
  98. package/dist/taro-components/p-01e163f8.system.entry.js +1 -0
  99. package/dist/taro-components/p-085076c5.system.entry.js +1 -0
  100. package/dist/taro-components/p-0fa96970.entry.js +1 -0
  101. package/dist/taro-components/{p-edbb1a17.system.entry.js → p-1991cc1a.system.entry.js} +1 -1
  102. package/dist/taro-components/{p-c0ec2f41.system.entry.js → p-2de2a3fd.system.entry.js} +1 -1
  103. package/dist/taro-components/p-2ec68968.system.js +7 -0
  104. package/dist/taro-components/{p-18703731.system.entry.js → p-416cc4dd.system.entry.js} +1 -1
  105. package/dist/taro-components/p-425c209a.entry.js +1 -0
  106. package/dist/taro-components/p-43efbf30.js +1 -0
  107. package/dist/taro-components/p-478deb81.entry.js +1 -0
  108. package/dist/taro-components/{p-2c89af5b.system.entry.js → p-657cb6e4.system.entry.js} +1 -1
  109. package/dist/taro-components/p-6cde180b.entry.js +1 -0
  110. package/dist/taro-components/{p-b898d734.entry.js → p-78e4805e.entry.js} +1 -1
  111. package/dist/taro-components/{p-c490cd45.entry.js → p-7b68dee8.entry.js} +1 -1
  112. package/dist/taro-components/{p-5905e3ef.system.entry.js → p-7e998213.system.entry.js} +1 -1
  113. package/dist/taro-components/p-982bb5bf.entry.js +1 -0
  114. package/dist/taro-components/{p-16336cc6.system.entry.js → p-98f9f50f.system.entry.js} +1 -1
  115. package/dist/taro-components/p-9edea30f.system.entry.js +1 -0
  116. package/dist/taro-components/{p-3f9f3448.entry.js → p-9fe49bab.entry.js} +1 -1
  117. package/dist/taro-components/{p-31bba7c3.entry.js → p-a20ecd3b.entry.js} +1 -1
  118. package/dist/taro-components/p-a20fed0a.entry.js +1 -0
  119. package/dist/taro-components/{p-e5f78321.system.entry.js → p-a4882902.system.entry.js} +1 -1
  120. package/dist/taro-components/{p-7c2454dd.system.entry.js → p-a8925584.system.entry.js} +1 -1
  121. package/dist/taro-components/p-a8e7cf87.entry.js +1 -0
  122. package/dist/taro-components/{p-c2322741.system.entry.js → p-b1d2b575.system.entry.js} +1 -1
  123. package/dist/taro-components/p-ba3b2aa5.system.entry.js +1 -0
  124. package/dist/taro-components/p-c39a46ca.system.entry.js +1 -0
  125. package/dist/taro-components/{p-ca3a269f.entry.js → p-c4b8851b.entry.js} +1 -1
  126. package/dist/taro-components/p-ce33f1f3.entry.js +1 -0
  127. package/dist/taro-components/p-dab28e1f.system.entry.js +1 -0
  128. package/dist/taro-components/p-de951a46.js +7 -0
  129. package/dist/taro-components/p-e09451c5.system.entry.js +1 -0
  130. package/dist/taro-components/{p-df4c2f21.entry.js → p-e33f3592.entry.js} +1 -1
  131. package/dist/taro-components/p-e78775ce.system.js +1 -0
  132. package/dist/taro-components/p-ebc7b6fc.entry.js +1 -0
  133. package/dist/taro-components/p-ed331c06.system.js +1 -1
  134. package/dist/taro-components/p-f02b6f70.entry.js +1 -0
  135. package/dist/taro-components/p-f6f6a996.system.entry.js +1 -0
  136. package/dist/taro-components/taro-components.css +1 -1
  137. package/dist/taro-components/taro-components.esm.js +1 -1
  138. package/dist/types/components/checkbox/checkbox.d.ts +1 -1
  139. package/dist/types/components/image/image.d.ts +1 -0
  140. package/dist/types/components/input/input.d.ts +2 -2
  141. package/dist/types/components/picker/picker-group.d.ts +3 -3
  142. package/dist/types/components/picker/picker.d.ts +7 -2
  143. package/dist/types/components/rich-text/rich-text.d.ts +4 -0
  144. package/dist/types/components/scroll-view/scroll-view.d.ts +1 -0
  145. package/dist/types/components/text/text.d.ts +4 -0
  146. package/dist/types/components/textarea/textarea.d.ts +0 -1
  147. package/dist/types/components.d.ts +28 -8
  148. package/lib/react/component-lib/index.js +50 -50
  149. package/lib/react/component-lib/index.js.map +1 -1
  150. package/lib/react/component-lib/reactify-wc.js +1 -1
  151. package/lib/react/component-lib/reactify-wc.js.map +1 -1
  152. package/lib/react/components.d.ts +1 -3
  153. package/lib/react/components.js +2 -2
  154. package/lib/react/components.js.map +1 -1
  155. package/lib/react/helper.d.ts +1 -1
  156. package/lib/react/react-component-lib/createOverlayComponent.js.map +1 -1
  157. package/lib/react/react-component-lib/utils/attachProps.js +21 -5
  158. package/lib/react/react-component-lib/utils/attachProps.js.map +1 -1
  159. package/lib/vue2/component-lib/index.js +0 -5
  160. package/lib/vue2/component-lib/index.js.map +1 -1
  161. package/lib/vue2/components-loader.js +1 -1
  162. package/lib/vue2/components-loader.js.map +1 -1
  163. package/lib/vue2/components.d.ts +10 -3
  164. package/lib/vue2/components.js +13 -6
  165. package/lib/vue2/components.js.map +1 -1
  166. package/lib/vue2/vue-component-lib/utils.js.map +1 -1
  167. package/lib/vue3/component-lib/index.js +48 -48
  168. package/lib/vue3/component-lib/index.js.map +1 -1
  169. package/lib/vue3/components.d.ts +1 -1
  170. package/lib/vue3/components.js +14 -6
  171. package/lib/vue3/components.js.map +1 -1
  172. package/lib/vue3/vue-component-lib/utils.js.map +1 -1
  173. package/package.json +13 -11
  174. package/types/Button.d.ts +71 -8
  175. package/types/ChannelVideo.d.ts +4 -0
  176. package/types/Form.d.ts +11 -0
  177. package/types/Image.d.ts +5 -0
  178. package/types/Input.d.ts +6 -1
  179. package/types/LivePlayer.d.ts +17 -0
  180. package/types/LivePusher.d.ts +10 -0
  181. package/types/Picker.d.ts +9 -0
  182. package/types/Progress.d.ts +2 -2
  183. package/types/RichText.d.ts +6 -4
  184. package/types/ScrollView.d.ts +7 -7
  185. package/types/ShareElement.d.ts +39 -0
  186. package/types/StickySection.d.ts +0 -1
  187. package/types/Swiper.d.ts +10 -0
  188. package/types/Text.d.ts +8 -3
  189. package/types/Textarea.d.ts +11 -4
  190. package/types/Video.d.ts +12 -0
  191. package/types/View.d.ts +1 -1
  192. package/types/index.vue3.d.ts +18 -9
  193. package/virtual-list/index.js +2 -2
  194. package/dist/cjs/hls-0f2d4d85.js +0 -26677
  195. package/dist/esm/hls-0e83e558.js +0 -26675
  196. package/dist/esm-es5/hls-0e83e558.js +0 -289
  197. package/dist/esm-es5/index-394db4c1.js +0 -7
  198. package/dist/taro-components/p-198000d8.system.js +0 -289
  199. package/dist/taro-components/p-25adb80c.entry.js +0 -1
  200. package/dist/taro-components/p-2fad2a65.js +0 -7
  201. package/dist/taro-components/p-385d8aed.entry.js +0 -1
  202. package/dist/taro-components/p-387314fa.system.js +0 -7
  203. package/dist/taro-components/p-3e701660.js +0 -289
  204. package/dist/taro-components/p-4e9bd4f6.entry.js +0 -1
  205. package/dist/taro-components/p-589293fd.entry.js +0 -1
  206. package/dist/taro-components/p-58b19305.system.entry.js +0 -1
  207. package/dist/taro-components/p-5b67a98e.entry.js +0 -1
  208. package/dist/taro-components/p-6800ccdc.system.entry.js +0 -1
  209. package/dist/taro-components/p-735c2a72.system.entry.js +0 -1
  210. package/dist/taro-components/p-97f0ad72.system.entry.js +0 -1
  211. package/dist/taro-components/p-a132ebb9.entry.js +0 -1
  212. package/dist/taro-components/p-ab2d4f12.entry.js +0 -1
  213. package/dist/taro-components/p-c43c5e89.system.entry.js +0 -1
  214. package/dist/taro-components/p-cc7b95fd.system.entry.js +0 -1
  215. package/dist/taro-components/p-cd90bead.system.entry.js +0 -1
  216. package/dist/taro-components/p-d9e2e3aa.entry.js +0 -1
  217. package/dist/taro-components/p-dcbb7b2d.entry.js +0 -1
  218. package/dist/taro-components/p-ed011ff9.entry.js +0 -1
  219. package/dist/taro-components/p-fa43177b.system.entry.js +0 -1
@@ -4,7 +4,7 @@ interface StencilReactInternalProps<ElementType> extends React.HTMLAttributes<El
4
4
  }
5
5
  declare const manipulatePropsFunction: <ElementType>(originalProps: StencilReactInternalProps<ElementType>, propsToPass?: Record<string, unknown>) => {
6
6
  dangerouslySetInnerHTML: {
7
- __html: string;
7
+ __html: string | TrustedHTML;
8
8
  };
9
9
  };
10
10
  export { manipulatePropsFunction };
@@ -1 +1 @@
1
- {"version":3,"file":"createOverlayComponent.js","sources":["../../../../taro-components-library-react/src/react-component-lib/createOverlayComponent.tsx"],"sourcesContent":["/**\n * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/createOverlayComponent.ts\n * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE\n */\nimport React from 'react'\nimport ReactDOM from 'react-dom'\n\nimport { OverlayEventDetail } from './interfaces'\nimport { attachProps, dashToPascalCase, defineCustomElement, setRef,StencilReactForwardedRef } from './utils'\n\ninterface OverlayElement extends HTMLElement {\n present: () => Promise<void>\n dismiss: (data?: any, role?: string | undefined) => Promise<boolean>\n}\n\nexport interface ReactOverlayProps {\n children?: React.ReactNode\n isOpen: boolean\n onDidDismiss?: (event: CustomEvent<OverlayEventDetail>) => void\n onDidPresent?: (event: CustomEvent<OverlayEventDetail>) => void\n onWillDismiss?: (event: CustomEvent<OverlayEventDetail>) => void\n onWillPresent?: (event: CustomEvent<OverlayEventDetail>) => void\n}\n\nexport const createOverlayComponent = <OverlayComponent extends object, OverlayType extends OverlayElement>(\n tagName: string,\n controller: { create: (options: any) => Promise<OverlayType> },\n customElement?: any\n) => {\n defineCustomElement(tagName, customElement)\n\n const displayName = dashToPascalCase(tagName)\n const didDismissEventName = `on${displayName}DidDismiss`\n const didPresentEventName = `on${displayName}DidPresent`\n const willDismissEventName = `on${displayName}WillDismiss`\n const willPresentEventName = `on${displayName}WillPresent`\n\n type Props = OverlayComponent &\n ReactOverlayProps & {\n forwardedRef?: StencilReactForwardedRef<OverlayType>\n };\n\n let isDismissing = false\n\n class Overlay extends React.Component<Props> {\n overlay?: OverlayType\n el!: HTMLDivElement\n\n constructor (props: Props) {\n super(props)\n if (typeof document !== 'undefined') {\n this.el = document.createElement('div')\n }\n this.handleDismiss = this.handleDismiss.bind(this)\n }\n\n static get displayName () {\n return displayName\n }\n\n componentDidMount () {\n if (this.props.isOpen) {\n this.present()\n }\n }\n\n componentWillUnmount () {\n if (this.overlay) {\n this.overlay.dismiss()\n }\n }\n\n handleDismiss (event: CustomEvent<OverlayEventDetail<any>>) {\n if (this.props.onDidDismiss) {\n this.props.onDidDismiss(event)\n }\n setRef(this.props.forwardedRef, null)\n }\n\n shouldComponentUpdate (nextProps: Props) {\n // Check if the overlay component is about to dismiss\n if (this.overlay && nextProps.isOpen !== this.props.isOpen && nextProps.isOpen === false) {\n isDismissing = true\n }\n\n return true\n }\n\n async componentDidUpdate (prevProps: Props) {\n if (this.overlay) {\n attachProps(this.overlay, this.props, prevProps)\n }\n\n if (prevProps.isOpen !== this.props.isOpen && this.props.isOpen === true) {\n this.present(prevProps)\n }\n if (this.overlay && prevProps.isOpen !== this.props.isOpen && this.props.isOpen === false) {\n await this.overlay.dismiss()\n isDismissing = false\n\n /**\n * Now that the overlay is dismissed\n * we need to render again so that any\n * inner components will be unmounted\n */\n this.forceUpdate()\n }\n }\n\n async present (prevProps?: Props) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { children, isOpen, onDidDismiss, onDidPresent, onWillDismiss, onWillPresent, ...cProps } = this.props\n const elementProps = {\n ...cProps,\n ref: this.props.forwardedRef,\n [didDismissEventName]: this.handleDismiss,\n [didPresentEventName]: (e: CustomEvent) => this.props.onDidPresent && this.props.onDidPresent(e),\n [willDismissEventName]: (e: CustomEvent) => this.props.onWillDismiss && this.props.onWillDismiss(e),\n [willPresentEventName]: (e: CustomEvent) => this.props.onWillPresent && this.props.onWillPresent(e),\n }\n\n this.overlay = await controller.create({\n ...elementProps,\n component: this.el,\n componentProps: {},\n })\n\n setRef(this.props.forwardedRef, this.overlay)\n attachProps(this.overlay, elementProps, prevProps)\n\n await this.overlay.present()\n }\n\n render () {\n /**\n * Continue to render the component even when\n * overlay is dismissing otherwise component\n * will be hidden before animation is done.\n */\n return ReactDOM.createPortal(this.props.isOpen || isDismissing ? this.props.children : null, this.el)\n }\n }\n\n return React.forwardRef<OverlayType, Props>((props, ref) => {\n // Note: 组件库错误引入 vue 的 ts 类型,导致 ts 报错,这里先忽略\n // @ts-ignore\n return <Overlay {...props} forwardedRef={ref} />\n })\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createOverlayComponent.js","sources":["../../../../taro-components-library-react/src/react-component-lib/createOverlayComponent.tsx"],"sourcesContent":["/**\n * Modify from https://github.com/ionic-team/stencil-ds-output-targets/blob/main/packages/react-output-target/react-component-lib/createOverlayComponent.ts\n * MIT License https://github.com/ionic-team/stencil-ds-output-targets/blob/main/LICENSE\n */\nimport React from 'react'\nimport ReactDOM from 'react-dom'\n\nimport { OverlayEventDetail } from './interfaces'\nimport { attachProps, dashToPascalCase, defineCustomElement, setRef, StencilReactForwardedRef } from './utils'\n\ninterface OverlayElement extends HTMLElement {\n present: () => Promise<void>\n dismiss: (data?: any, role?: string | undefined) => Promise<boolean>\n}\n\nexport interface ReactOverlayProps {\n children?: React.ReactNode\n isOpen: boolean\n onDidDismiss?: (event: CustomEvent<OverlayEventDetail>) => void\n onDidPresent?: (event: CustomEvent<OverlayEventDetail>) => void\n onWillDismiss?: (event: CustomEvent<OverlayEventDetail>) => void\n onWillPresent?: (event: CustomEvent<OverlayEventDetail>) => void\n}\n\nexport const createOverlayComponent = <OverlayComponent extends object, OverlayType extends OverlayElement>(\n tagName: string,\n controller: { create: (options: any) => Promise<OverlayType> },\n customElement?: any\n) => {\n defineCustomElement(tagName, customElement)\n\n const displayName = dashToPascalCase(tagName)\n const didDismissEventName = `on${displayName}DidDismiss`\n const didPresentEventName = `on${displayName}DidPresent`\n const willDismissEventName = `on${displayName}WillDismiss`\n const willPresentEventName = `on${displayName}WillPresent`\n\n type Props = OverlayComponent &\n ReactOverlayProps & {\n forwardedRef?: StencilReactForwardedRef<OverlayType>\n };\n\n let isDismissing = false\n\n class Overlay extends React.Component<Props> {\n overlay?: OverlayType\n el!: HTMLDivElement\n\n constructor (props: Props) {\n super(props)\n if (typeof document !== 'undefined') {\n this.el = document.createElement('div')\n }\n this.handleDismiss = this.handleDismiss.bind(this)\n }\n\n static get displayName () {\n return displayName\n }\n\n componentDidMount () {\n if (this.props.isOpen) {\n this.present()\n }\n }\n\n componentWillUnmount () {\n if (this.overlay) {\n this.overlay.dismiss()\n }\n }\n\n handleDismiss (event: CustomEvent<OverlayEventDetail<any>>) {\n if (this.props.onDidDismiss) {\n this.props.onDidDismiss(event)\n }\n setRef(this.props.forwardedRef, null)\n }\n\n shouldComponentUpdate (nextProps: Props) {\n // Check if the overlay component is about to dismiss\n if (this.overlay && nextProps.isOpen !== this.props.isOpen && nextProps.isOpen === false) {\n isDismissing = true\n }\n\n return true\n }\n\n async componentDidUpdate (prevProps: Props) {\n if (this.overlay) {\n attachProps(this.overlay, this.props, prevProps)\n }\n\n if (prevProps.isOpen !== this.props.isOpen && this.props.isOpen === true) {\n this.present(prevProps)\n }\n if (this.overlay && prevProps.isOpen !== this.props.isOpen && this.props.isOpen === false) {\n await this.overlay.dismiss()\n isDismissing = false\n\n /**\n * Now that the overlay is dismissed\n * we need to render again so that any\n * inner components will be unmounted\n */\n this.forceUpdate()\n }\n }\n\n async present (prevProps?: Props) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { children, isOpen, onDidDismiss, onDidPresent, onWillDismiss, onWillPresent, ...cProps } = this.props\n const elementProps = {\n ...cProps,\n ref: this.props.forwardedRef,\n [didDismissEventName]: this.handleDismiss,\n [didPresentEventName]: (e: CustomEvent) => this.props.onDidPresent && this.props.onDidPresent(e),\n [willDismissEventName]: (e: CustomEvent) => this.props.onWillDismiss && this.props.onWillDismiss(e),\n [willPresentEventName]: (e: CustomEvent) => this.props.onWillPresent && this.props.onWillPresent(e),\n }\n\n this.overlay = await controller.create({\n ...elementProps,\n component: this.el,\n componentProps: {},\n })\n\n setRef(this.props.forwardedRef, this.overlay)\n attachProps(this.overlay, elementProps, prevProps)\n\n await this.overlay.present()\n }\n\n render () {\n /**\n * Continue to render the component even when\n * overlay is dismissing otherwise component\n * will be hidden before animation is done.\n */\n return ReactDOM.createPortal(this.props.isOpen || isDismissing ? this.props.children : null, this.el)\n }\n }\n\n return React.forwardRef<OverlayType, Props>((props, ref) => {\n // Note: 组件库错误引入 vue 的 ts 类型,导致 ts 报错,这里先忽略\n // @ts-ignore\n return <Overlay {...props} forwardedRef={ref} />\n })\n}\n"],"names":[],"mappings":"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"}
@@ -52,11 +52,27 @@ const syncEvent = (node, eventName, newEventHandler) => {
52
52
  const attachProps = (node, newProps, oldProps = {}) => {
53
53
  // some test frameworks don't render DOM elements, so we test here to make sure we are dealing with DOM first
54
54
  if (node instanceof Element) {
55
+ Object.keys(oldProps).forEach((name) => {
56
+ if (['style', 'children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {
57
+ return;
58
+ }
59
+ // Note: 移除节点上冗余事件、属性
60
+ if (!newProps.hasOwnProperty(name)) {
61
+ if (/^on([A-Z].*)/.test(name)) {
62
+ const eventName = name.substring(2);
63
+ const eventNameLc = eventName.toLowerCase();
64
+ if (!isCoveredByReact(eventNameLc)) {
65
+ syncEvent(node, eventNameLc, undefined);
66
+ }
67
+ }
68
+ else {
69
+ node[name] = null;
70
+ node.removeAttribute(camelToDashCase(name));
71
+ }
72
+ }
73
+ });
55
74
  // 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
- }
75
+ node.className = getClassName(node.classList, newProps, oldProps);
60
76
  Object.keys(newProps).forEach((name) => {
61
77
  /** Note(taro): 优化 style 属性的处理
62
78
  * 1. 考虑到兼容旧版本项目,支持使用字符串配置 style 属性,但这并非推荐写法,且不考虑优化在 style 移除时同步删除属性
@@ -65,7 +81,7 @@ const attachProps = (node, newProps, oldProps = {}) => {
65
81
  if ((name === 'style' && typeof newProps[name] !== 'string') || ['children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {
66
82
  return;
67
83
  }
68
- if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {
84
+ if (/^on([A-Z].*)/.test(name)) {
69
85
  const eventName = name.substring(2);
70
86
  const eventNameLc = eventName.toLowerCase();
71
87
  if (!isCoveredByReact(eventNameLc)) {
@@ -1 +1 @@
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
+ {"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 Object.keys(oldProps).forEach((name) => {\n if (['style', 'children', 'ref', 'class', 'className', 'forwardedRef'].includes(name)) {\n return\n }\n // Note: 移除节点上冗余事件、属性\n if (!newProps.hasOwnProperty(name)) {\n if (/^on([A-Z].*)/.test(name)) {\n const eventName = name.substring(2)\n const eventNameLc = eventName.toLowerCase()\n\n if (!isCoveredByReact(eventNameLc)) {\n syncEvent(node, eventNameLc, undefined)\n }\n } else {\n (node as any)[name] = null\n node.removeAttribute(camelToDashCase(name))\n }\n }\n })\n // add any classes in className to the class list\n node.className = getClassName(node.classList, newProps, oldProps)\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 (/^on([A-Z].*)/.test(name)) {\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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"}
@@ -22,9 +22,4 @@ components.forEach(params => {
22
22
  }
23
23
  }
24
24
  });
25
- Vue.config.ignoredElements = [
26
- 'root',
27
- 'block',
28
- /^taro-/
29
- ];
30
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../taro-components-library-vue2/src/component-lib/index.ts"],"sourcesContent":["import Vue from 'vue'\n\nimport components from './components'\nimport createComponent from './createComponent'\nimport createFormsComponent from './createFormsComponent'\n\ncomponents.forEach(params => {\n if (typeof params === 'string') {\n Vue.component(params, createComponent(params))\n } else if (params instanceof Array) {\n const [name, props] = params as [string, Record<string, any>]\n const { classNames, type = 'simple' } = props\n\n if (type === 'simple') {\n Vue.component(name, createComponent(name, classNames))\n } else if (type === 'forms') {\n const { event, modelValue } = props\n Vue.component(name, createFormsComponent(name, event, modelValue, classNames))\n } else if (type === 'component') {\n Vue.component(name, props.component)\n }\n }\n})\n\nVue.config.ignoredElements = [\n 'root',\n 'block',\n /^taro-/\n]\n"],"names":[],"mappings":";;;;;AAMA,UAAU,CAAC,OAAO,CAAC,MAAM,IAAG;AAC1B,IAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;AAC/C,KAAA;SAAM,IAAI,MAAM,YAAY,KAAK,EAAE;AAClC,QAAA,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAuC,CAAA;QAC7D,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAA;QAE7C,IAAI,IAAI,KAAK,QAAQ,EAAE;AACrB,YAAA,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;AACvD,SAAA;aAAM,IAAI,IAAI,KAAK,OAAO,EAAE;AAC3B,YAAA,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;AACnC,YAAA,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AAC/E,SAAA;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE;YAC/B,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;AACrC,SAAA;AACF,KAAA;AACH,CAAC,CAAC,CAAA;AAEF,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG;IAC3B,MAAM;IACN,OAAO;IACP,QAAQ;CACT"}
1
+ {"version":3,"file":"index.js","sources":["../../../../taro-components-library-vue2/src/component-lib/index.ts"],"sourcesContent":["import Vue from 'vue'\n\nimport components from './components'\nimport createComponent from './createComponent'\nimport createFormsComponent from './createFormsComponent'\n\ncomponents.forEach(params => {\n if (typeof params === 'string') {\n Vue.component(params, createComponent(params))\n } else if (params instanceof Array) {\n const [name, props] = params as [string, Record<string, any>]\n const { classNames, type = 'simple' } = props\n\n if (type === 'simple') {\n Vue.component(name, createComponent(name, classNames))\n } else if (type === 'forms') {\n const { event, modelValue } = props\n Vue.component(name, createFormsComponent(name, event, modelValue, classNames))\n } else if (type === 'component') {\n Vue.component(name, props.component)\n }\n }\n})\n"],"names":[],"mappings":";;;;;AAMA,UAAU,CAAC,OAAO,CAAC,MAAM,IAAG;AAC1B,IAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;AAC/C,KAAA;SAAM,IAAI,MAAM,YAAY,KAAK,EAAE;AAClC,QAAA,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAuC,CAAA;QAC7D,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAA;QAE7C,IAAI,IAAI,KAAK,QAAQ,EAAE;AACrB,YAAA,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;AACvD,SAAA;aAAM,IAAI,IAAI,KAAK,OAAO,EAAE;AAC3B,YAAA,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;AACnC,YAAA,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AAC/E,SAAA;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE;YAC/B,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;AACrC,SAAA;AACF,KAAA;AACH,CAAC,CAAC"}
@@ -9,7 +9,7 @@ function initVue2Components(components = {}) {
9
9
  }
10
10
  Vue.use(index.Plugin);
11
11
  Object.entries(components).forEach(([name, definition]) => {
12
- if (typeof (definition === null || definition === void 0 ? void 0 : definition.render) === 'function') {
12
+ if (typeof definition === 'function') {
13
13
  const tagName = 'taro' + name.replace(new RegExp('([A-Z])', 'g'), '-$1').toLowerCase();
14
14
  const comp = Vue.extend(definition);
15
15
  Vue.component(tagName, comp);
@@ -1 +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;;;;"}
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 === '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,OAAO,UAAU,KAAK,UAAU,EAAE;YACpC,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;;;;"}
@@ -34,7 +34,7 @@ declare const ChannelLive: import("vue/types/vue").ExtendedVue<Vue<Record<string
34
34
  declare const ChannelVideo: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, Record<never, any>, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
35
35
  declare const Checkbox: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, {
36
36
  name: string;
37
- value: string;
37
+ value: string | number;
38
38
  color: string;
39
39
  id: string;
40
40
  checked: boolean;
@@ -148,11 +148,12 @@ declare const Picker: import("vue/types/vue").ExtendedVue<Vue<Record<string, any
148
148
  disabled: boolean;
149
149
  range: any[];
150
150
  rangeKey: string;
151
- value: string | number | number[];
151
+ value: import("@tarojs/components/dist/types/components/picker/picker").PickerValue;
152
152
  start: string;
153
153
  end: string;
154
154
  fields: import("@tarojs/components/dist/types/components/picker/picker").Fields;
155
155
  name: string;
156
+ textProps: import("@tarojs/components/dist/types/components/picker/picker").PickerText;
156
157
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
157
158
  declare const PickerGroup: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, {
158
159
  handleMoveStart: (clientY: number) => Promise<void>;
@@ -165,7 +166,6 @@ declare const PickerGroup: import("vue/types/vue").ExtendedVue<Vue<Record<string
165
166
  height: number;
166
167
  columnId: string;
167
168
  updateHeight: (height: number, columnId: string, needRevise?: boolean) => void;
168
- onColumnChange: (height: number, columnId: string) => void;
169
169
  updateDay: (value: number, fields: number) => void;
170
170
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
171
171
  declare const PickerViewColumn: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, {
@@ -214,6 +214,9 @@ declare const RadioGroup: import("vue/types/vue").ExtendedVue<Vue<Record<string,
214
214
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
215
215
  declare const RichText: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, {
216
216
  nodes: import("@tarojs/components/dist/types/components/rich-text/rich-text").Nodes;
217
+ selectable: boolean;
218
+ userSelect: boolean;
219
+ space: string | number | symbol;
217
220
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
218
221
  declare const RootPortal: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, Record<never, any>, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
219
222
  declare const RtcRoom: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, Record<never, any>, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
@@ -229,6 +232,7 @@ declare const ScrollView: import("vue/types/vue").ExtendedVue<Vue<Record<string,
229
232
  mpScrollTop: string | number;
230
233
  mpScrollLeft: string | number;
231
234
  mpScrollIntoView: string;
235
+ mpScrollIntoViewAlignment: "center" | "start" | "end" | "nearest";
232
236
  animated: boolean;
233
237
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
234
238
  declare const ShareElement: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, Record<never, any>, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
@@ -282,6 +286,9 @@ declare const Tabbar: import("vue/types/vue").ExtendedVue<Vue<Record<string, any
282
286
  declare const Tabs: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, Record<never, any>, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
283
287
  declare const Text: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, unknown, unknown, {
284
288
  selectable: boolean;
289
+ userSelect: boolean;
290
+ space: string | number | symbol;
291
+ numberOfLines: number;
285
292
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
286
293
  declare const Textarea: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, unknown, {
287
294
  focus: () => Promise<void>;
@@ -109,7 +109,7 @@ const CoverView = /*@__PURE__*/ Vue.extend({
109
109
  render: createCommonRender('taro-cover-view-core', ['longpress'], defineCustomElementTaroCoverViewCore),
110
110
  });
111
111
  const CustomWrapper = /*@__PURE__*/ Vue.extend({
112
- render: createCommonRender('fragment', [], defineCustomElementTaroCustomWrapperCore),
112
+ render: createCommonRender('taro-custom-wrapper-core', [], defineCustomElementTaroCustomWrapperCore),
113
113
  });
114
114
  const Editor = /*@__PURE__*/ Vue.extend({
115
115
  render: createCommonRender('taro-editor-core', [], defineCustomElementTaroEditorCore),
@@ -268,7 +268,8 @@ const Picker = /*@__PURE__*/ Vue.extend({
268
268
  start: {},
269
269
  end: {},
270
270
  fields: {},
271
- name: {}
271
+ name: {},
272
+ textProps: {}
272
273
  },
273
274
  model: { prop: 'value', event: 'update:modelValue' },
274
275
  render: createCommonRender('taro-picker-core', ['change', 'columnchange', 'cancel'], defineCustomElementTaroPickerCore),
@@ -281,7 +282,6 @@ const PickerGroup = /*@__PURE__*/ Vue.extend({
281
282
  height: {},
282
283
  columnId: {},
283
284
  updateHeight: {},
284
- onColumnChange: {},
285
285
  updateDay: {}
286
286
  },
287
287
  methods: {
@@ -289,7 +289,7 @@ const PickerGroup = /*@__PURE__*/ Vue.extend({
289
289
  handleMoving: createCommonMethod('handleMoving'),
290
290
  handleMoveEnd: createCommonMethod('handleMoveEnd')
291
291
  },
292
- render: createCommonRender('taro-picker-group', [], defineCustomElementTaroPickerGroup),
292
+ render: createCommonRender('taro-picker-group', ['columnChange'], defineCustomElementTaroPickerGroup),
293
293
  });
294
294
  const PickerViewColumn = /*@__PURE__*/ Vue.extend({
295
295
  props: {
@@ -350,7 +350,10 @@ const RadioGroup = /*@__PURE__*/ Vue.extend({
350
350
  });
351
351
  const RichText = /*@__PURE__*/ Vue.extend({
352
352
  props: {
353
- nodes: {}
353
+ nodes: {},
354
+ selectable: {},
355
+ userSelect: {},
356
+ space: {}
354
357
  },
355
358
  render: createCommonRender('taro-rich-text-core', [], defineCustomElementTaroRichTextCore),
356
359
  });
@@ -372,6 +375,7 @@ const ScrollView = /*@__PURE__*/ Vue.extend({
372
375
  mpScrollTop: {},
373
376
  mpScrollLeft: {},
374
377
  mpScrollIntoView: {},
378
+ mpScrollIntoViewAlignment: {},
375
379
  animated: {}
376
380
  },
377
381
  methods: {
@@ -460,7 +464,10 @@ const Tabs = /*@__PURE__*/ Vue.extend({
460
464
  });
461
465
  const Text = /*@__PURE__*/ Vue.extend({
462
466
  props: {
463
- selectable: {}
467
+ selectable: {},
468
+ userSelect: {},
469
+ space: {},
470
+ numberOfLines: {}
464
471
  },
465
472
  render: createCommonRender('taro-text-core', [], defineCustomElementTaroTextCore),
466
473
  });