@tarojs/components 4.2.0 → 4.2.1-beta.1

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 (89) hide show
  1. package/dist/cjs/{image-4303ed3a.js → image-32205a1d.js} +9 -4
  2. package/dist/cjs/index.cjs.js +6 -4
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/open-embedded-atomicservice-fba2d095.js +18 -0
  5. package/dist/cjs/{scroll-view-65cb8d5f.js → scroll-view-f1361b2b.js} +3 -2
  6. package/dist/cjs/taro-components.cjs.js +1 -1
  7. package/dist/cjs/taro-image-core.cjs.entry.js +1 -1
  8. package/dist/cjs/taro-open-embedded-atomicservice-core.cjs.entry.js +12 -0
  9. package/dist/cjs/taro-scroll-view-core.cjs.entry.js +1 -1
  10. package/dist/cjs/taro-textarea-core.cjs.entry.js +1 -1
  11. package/dist/cjs/taro-web-view-core.cjs.entry.js +1 -1
  12. package/dist/cjs/{textarea-f758aae0.js → textarea-ea3376ec.js} +2 -0
  13. package/dist/cjs/web-view-1ec276e7.js +74 -0
  14. package/dist/collection/collection-manifest.json +2 -1
  15. package/dist/collection/components/image/image.js +29 -3
  16. package/dist/collection/components/image/style/index.css +1 -1
  17. package/dist/collection/components/index.js +1 -0
  18. package/dist/collection/components/open-embedded-atomicservice/index.js +1 -0
  19. package/dist/collection/components/open-embedded-atomicservice/open-embedded-atomicservice.js +11 -0
  20. package/dist/collection/components/scroll-view/scroll-view.js +3 -2
  21. package/dist/collection/components/textarea/textarea.js +2 -0
  22. package/dist/collection/components/web-view/web-view.js +62 -1
  23. package/dist/components/index.d.ts +1 -0
  24. package/dist/components/index.js +1 -0
  25. package/dist/components/taro-image-core.js +10 -4
  26. package/dist/components/taro-open-embedded-atomicservice-core.d.ts +11 -0
  27. package/dist/components/taro-open-embedded-atomicservice-core.js +33 -0
  28. package/dist/components/taro-scroll-view-core.js +3 -2
  29. package/dist/components/taro-textarea-core.js +2 -0
  30. package/dist/components/taro-web-view-core.js +48 -1
  31. package/dist/esm/{image-b0b222bc.js → image-9c1a61f3.js} +9 -4
  32. package/dist/esm/index.js +5 -4
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/esm/open-embedded-atomicservice-46f6f720.js +16 -0
  35. package/dist/esm/{scroll-view-43e9acfc.js → scroll-view-7f9988b3.js} +3 -2
  36. package/dist/esm/taro-components.js +1 -1
  37. package/dist/esm/taro-image-core.entry.js +1 -1
  38. package/dist/esm/taro-open-embedded-atomicservice-core.entry.js +4 -0
  39. package/dist/esm/taro-scroll-view-core.entry.js +1 -1
  40. package/dist/esm/taro-textarea-core.entry.js +1 -1
  41. package/dist/esm/taro-web-view-core.entry.js +1 -1
  42. package/dist/esm/{textarea-83ef7caf.js → textarea-74b9b5f3.js} +2 -0
  43. package/dist/esm/web-view-abc07992.js +72 -0
  44. package/dist/hydrate/index.js +84 -7
  45. package/dist/taro-components/index.esm.js +1 -1
  46. package/dist/taro-components/p-3534d37d.js +1 -0
  47. package/dist/taro-components/{p-58a709ad.js → p-5108ba78.js} +1 -1
  48. package/dist/taro-components/p-51a09562.entry.js +1 -0
  49. package/dist/taro-components/{p-15c2bd13.js → p-52de1cec.js} +1 -1
  50. package/dist/taro-components/p-65063e2f.entry.js +1 -0
  51. package/dist/taro-components/p-85e84cde.entry.js +1 -0
  52. package/dist/taro-components/p-8635925e.js +1 -0
  53. package/dist/taro-components/p-a5f2ce14.entry.js +1 -0
  54. package/dist/taro-components/p-acf31ef0.js +1 -0
  55. package/dist/taro-components/p-eeec4f43.entry.js +1 -0
  56. package/dist/taro-components/taro-components.esm.js +1 -1
  57. package/dist/types/components/image/image.d.ts +5 -0
  58. package/dist/types/components/index.d.ts +1 -0
  59. package/dist/types/components/open-embedded-atomicservice/index.d.ts +1 -0
  60. package/dist/types/components/open-embedded-atomicservice/open-embedded-atomicservice.d.ts +5 -0
  61. package/dist/types/components/web-view/web-view.d.ts +5 -0
  62. package/dist/types/components.d.ts +24 -0
  63. package/lib/react/components.d.ts +1 -0
  64. package/lib/react/components.js +3 -2
  65. package/lib/react/components.js.map +1 -1
  66. package/lib/react/index.js +1 -1
  67. package/lib/solid/components.d.ts +1 -0
  68. package/lib/solid/components.js +3 -2
  69. package/lib/solid/components.js.map +1 -1
  70. package/lib/solid/index.js +1 -1
  71. package/lib/vue3/components.d.ts +1 -0
  72. package/lib/vue3/components.js +6 -3
  73. package/lib/vue3/components.js.map +1 -1
  74. package/lib/vue3/index.js +1 -1
  75. package/package.json +5 -5
  76. package/types/Image.d.ts +6 -0
  77. package/types/OpenEmbeddedAtomicservice.d.ts +52 -0
  78. package/types/common.d.ts +24 -1
  79. package/types/index.d.ts +2 -0
  80. package/types/index.solid.d.ts +4 -0
  81. package/types/index.vue3.d.ts +4 -0
  82. package/dist/cjs/web-view-be5a2d1d.js +0 -27
  83. package/dist/esm/web-view-8f780a19.js +0 -25
  84. package/dist/taro-components/p-00e72620.entry.js +0 -1
  85. package/dist/taro-components/p-1f81d4f4.js +0 -1
  86. package/dist/taro-components/p-5570a53e.entry.js +0 -1
  87. package/dist/taro-components/p-717960a7.entry.js +0 -1
  88. package/dist/taro-components/p-beae3fe0.js +0 -1
  89. package/dist/taro-components/p-cb7e1d6e.entry.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarojs/components",
3
- "version": "4.2.0",
3
+ "version": "4.2.1-beta.1",
4
4
  "description": "Taro 组件库",
5
5
  "browser": "dist/index.js",
6
6
  "main:h5": "dist/index.js",
@@ -40,9 +40,9 @@
40
40
  "resolve-pathname": "^3.0.0",
41
41
  "swiper": "11.1.15",
42
42
  "tslib": "^2.6.2",
43
- "@tarojs/runtime": "4.2.0",
44
- "@tarojs/shared": "4.2.0",
45
- "@tarojs/taro": "4.2.0"
43
+ "@tarojs/runtime": "4.2.1-beta.1",
44
+ "@tarojs/shared": "4.2.1-beta.1",
45
+ "@tarojs/taro": "4.2.1-beta.1"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@babel/generator": "^7.21.4",
@@ -68,7 +68,7 @@
68
68
  "jest-cli": "27.5.1",
69
69
  "jest-runner": "27.5.1",
70
70
  "jest-environment-node": "27.5.1",
71
- "@tarojs/helper": "4.2.0"
71
+ "@tarojs/helper": "4.2.1-beta.1"
72
72
  },
73
73
  "peerDependenciesMeta": {
74
74
  "@types/react": {
package/types/Image.d.ts CHANGED
@@ -41,6 +41,12 @@ interface ImageProps extends StandardProps {
41
41
  * @supported h5, harmony_hybrid
42
42
  */
43
43
  nativeProps?: Record<string, unknown>
44
+ /**
45
+ * H5 / WebComponents 为 true 时关闭默认占位,`taro-image-core` 外层宽高均为 `auto`(默认 false 仍为 320×240)。
46
+ * @default false
47
+ * @supported h5, harmony_hybrid
48
+ */
49
+ disableDefaultSize?: boolean
44
50
  /** 默认图片地址,若设置默认图片地址,会先显示默认图片,等 src 对应的图片加载成功后,再渲染对应的图片。
45
51
  * @supported alipay
46
52
  */
@@ -0,0 +1,52 @@
1
+ import { ComponentType } from 'react'
2
+ import { CommonEventFunction, StandardProps } from './common'
3
+
4
+ interface OpenEmbeddedAtomicserviceProps extends StandardProps {
5
+ /** 需要半屏跳转的元服务的AppId参数。
6
+ * @supported ascf
7
+ */
8
+ appid: string
9
+ /** 打开的页面路径。
10
+ * 路径后可以带参数,参数与路径之间用?分隔,参数与键值用=相连,多个参数用&分隔。
11
+ * 在元服务的App.onLaunch、App.onShow和Page.onLoad的回调函数中可以获得参数query。
12
+ * - path为空或无效值时,则打开首页。
13
+ * - path不为空,则之前的路径应为在app.json中定义的代码包路径。
14
+ * 例如,在app.json中定义了页面: "page/path/index",则有效应用内页面路径为:"page/path/index?key1=value1&key2=value2"。
15
+ * 注意: 该字段仅当目标元服务是ASCF框架开发的元服务时可直接使用,对于ArkTS开发的元服务,需双方自行约定实现,参数将通过目标元服务的Want对象的parameters字段进行传递。
16
+ * @supported ascf
17
+ */
18
+ path?: string
19
+ /** 需要传递给目标元服务的数据。
20
+ * - 若被半屏打开的是ASCF框架开发的元服务,请通过ascfPara.extraData字段传入业务数据。例如:{ascfPara: {extraData: {data: "test"}}}
21
+ * - 若被半屏打开的是ArkTS开发的元服务,直接以平铺键值对形式传参,例如:{ data: "test" }。
22
+ * 注意: subPackageName为系统保留字段,请勿使用。
23
+ * @supported ascf
24
+ */
25
+ wantParam?: object
26
+ /** 退出的回调事件。
27
+ * 被半屏打开的元服务正常退出时触发,event.detail = { params },其中params为元服务退出时返回的数据。
28
+ * - 若被半屏打开的是ArkTS开发的元服务,在目标元服务内通过调用terminateSelfWithResult或terminateSelf正常退出时,触发本回调函数。
29
+ * - 若被半屏打开的是ASCF框架开发的元服务,从1.0.18开始,在目标元服务内通过调用has.terminateSelf退出时,触发本回调函数。
30
+ * @supported ascf
31
+ */
32
+ onTerminated?: CommonEventFunction
33
+ /** 异常的回调事件。
34
+ * @supported ascf
35
+ */
36
+ onError?: CommonEventFunction<OpenEmbeddedAtomicserviceProps.onErrorEventDetail>
37
+ }
38
+
39
+ declare namespace OpenEmbeddedAtomicserviceProps {
40
+ interface onErrorEventDetail {
41
+ errMsg: string
42
+ errCode: number
43
+ }
44
+ }
45
+
46
+ /** OpenEmbeddedAtomicservice
47
+ * @classification media
48
+ * @supported ascf
49
+ * @see https://developer.huawei.com/consumer/cn/doc/atomic-ascf/components-open-embedded-atomicservice
50
+ */
51
+ declare const OpenEmbeddedAtomicservice: ComponentType<OpenEmbeddedAtomicserviceProps>
52
+ export { OpenEmbeddedAtomicservice, OpenEmbeddedAtomicserviceProps }
package/types/common.d.ts CHANGED
@@ -1,7 +1,30 @@
1
1
  import { CSSProperties, LegacyRef, ReactNode } from 'react'
2
2
  import { COMPILE_MODE_SUB_RENDER_FN } from '@tarojs/shared'
3
3
 
4
- export interface StandardProps<T = any, TouchEvent extends BaseTouchEvent<any> = ITouchEvent> extends EventProps<TouchEvent> {
4
+ export interface A11yProps {
5
+ /** 定义元素的角色 */
6
+ ariaRole?: string
7
+ /** 为元素提供一个可访问名称 */
8
+ ariaLabel?: string
9
+ /** 当前 view 及其子 view 是否屏幕无障碍隐藏 */
10
+ ariaHidden?: boolean
11
+ /** 标识当前是否被选中 */
12
+ ariaChecked?: boolean
13
+ /** 指示元素是否处于选中状态 */
14
+ ariaSelected?: boolean
15
+ /** 为元素的 role 提供额外说明 */
16
+ ariaRoledescription?: string
17
+ /** 设置数值控件的最大值 */
18
+ ariaValuemax?: string
19
+ /** 设置数值控件的最小值 */
20
+ ariaValuemin?: string
21
+ /** 设置数值控件的当前值 */
22
+ ariaValuenow?: string
23
+ /** 设置将覆盖 ariaValuemax、ariaValuemin 和 ariaValuenow 的值 */
24
+ ariaValuetext?: string
25
+ }
26
+
27
+ export interface StandardProps<T = any, TouchEvent extends BaseTouchEvent<any> = ITouchEvent> extends EventProps<TouchEvent>, A11yProps {
5
28
  /** 组件的唯一标示, 保持整个页面唯一 */
6
29
  id?: string
7
30
  /** 同 `class`,在 React/Preact 里一般使用 `className` 作为 `class` 的代称 */
package/types/index.d.ts CHANGED
@@ -124,3 +124,5 @@ export { Slot } from './Slot'
124
124
  export { NativeSlot } from './NativeSlot'
125
125
  export { Script } from './Script'
126
126
  export { PullToRefresh } from './PullToRefresh'
127
+ export { OpenEmbeddedAtomicservice } from './OpenEmbeddedAtomicservice'
128
+
@@ -64,6 +64,7 @@ import { VideoProps } from '@tarojs/components/types/Video'
64
64
  import { ViewProps } from '@tarojs/components/types/View'
65
65
  import { VoipRoomProps } from '@tarojs/components/types/VoipRoom'
66
66
  import { WebViewProps } from '@tarojs/components/types/WebView'
67
+ import { OpenEmbeddedAtomicserviceProps } from '@tarojs/components/types/OpenEmbeddedAtomicservice'
67
68
 
68
69
  // 重置react的类型
69
70
  interface SlimProps {
@@ -146,6 +147,7 @@ export declare const AdCustom: Components<AdCustomProps>
146
147
  export declare const OfficialAccount: Components<OfficialAccountProps>
147
148
  export declare const OpenData: Components<OpenDataProps>
148
149
  export declare const WebView: Components<WebViewProps>
150
+ export declare const OpenEmbeddedAtomicservice: Components<OpenEmbeddedAtomicserviceProps>
149
151
  /** 配置节点 */
150
152
  export declare const PageMeta: Components<PageMetaProps>
151
153
 
@@ -279,6 +281,8 @@ declare global {
279
281
  'taro-open-data-core': TransformReact2SolidType<OpenDataProps>
280
282
  'web-view': TransformReact2SolidType<WebViewProps>
281
283
  'taro-web-view-core': TransformReact2SolidType<WebViewProps>
284
+ 'open-embedded-atomicservice': TransformReact2SolidType<OpenEmbeddedAtomicserviceProps>
285
+ 'taro-open-embedded-atomicservice-core': TransformReact2SolidType<OpenEmbeddedAtomicserviceProps>
282
286
  /** 配置节点 */
283
287
  'page-meta': TransformReact2SolidType<PageMetaProps>
284
288
  'taro-page-meta-core': TransformReact2SolidType<PageMetaProps>
@@ -78,6 +78,7 @@ import { VideoProps } from './Video'
78
78
  import { ViewProps } from './View'
79
79
  import { VoipRoomProps } from './VoipRoom'
80
80
  import { WebViewProps } from './WebView'
81
+ import { OpenEmbeddedAtomicserviceProps } from './OpenEmbeddedAtomicservice'
81
82
 
82
83
  /** 因为react的事件是CamelCase而vue得是Camelcase, 所以需要转换 */
83
84
  type OnCamelCaseToOnCamelcase<T extends string> = T extends `on${infer Rest}`
@@ -173,6 +174,7 @@ export declare const AdCustom: VueComponentType<AdCustomProps>
173
174
  export declare const OfficialAccount: VueComponentType<OfficialAccountProps>
174
175
  export declare const OpenData: VueComponentType<OpenDataProps>
175
176
  export declare const WebView: VueComponentType<WebViewProps>
177
+ export declare const OpenEmbeddedAtomicservice: VueComponentType<OpenEmbeddedAtomicserviceProps>
176
178
  /** 配置节点 */
177
179
  export declare const PageMeta: VueComponentType<PageMetaProps>
178
180
 
@@ -317,6 +319,8 @@ declare global {
317
319
  'taro-open-data-core': ElementAttrs<TransformReact2VueType<OpenDataProps>>
318
320
  'web-view': ElementAttrs<TransformReact2VueType<WebViewProps>>
319
321
  'taro-web-view-core': ElementAttrs<TransformReact2VueType<WebViewProps>>
322
+ 'open-embedded-atomicservice': ElementAttrs<TransformReact2VueType<OpenEmbeddedAtomicserviceProps>>
323
+ 'taro-open-embedded-atomicservice-core': ElementAttrs<TransformReact2VueType<OpenEmbeddedAtomicserviceProps>>
320
324
  /** 配置节点 */
321
325
  'page-meta': ElementAttrs<TransformReact2VueType<PageMetaProps>>
322
326
  'taro-page-meta-core': ElementAttrs<TransformReact2VueType<PageMetaProps>>
@@ -1,27 +0,0 @@
1
- 'use strict';
2
-
3
- const index = require('./index-ae99cbcc.js');
4
-
5
- const indexCss = "iframe{border:none}.taro-webview{z-index:999;width:100%;height:100%;position:fixed;top:0;bottom:0}";
6
-
7
- const WebView = class {
8
- constructor(hostRef) {
9
- index.registerInstance(this, hostRef);
10
- this.onLoad = index.createEvent(this, "load", 7);
11
- this.onError = index.createEvent(this, "error", 7);
12
- this.src = undefined;
13
- }
14
- render() {
15
- const { src, onLoad, onError } = this;
16
- return (index.h("iframe", { class: 'taro-webview', onLoad: (e) => {
17
- e.stopPropagation();
18
- onLoad.emit({ src });
19
- }, onError: (e) => {
20
- e.stopPropagation();
21
- onError.emit({ src });
22
- }, src: src }));
23
- }
24
- };
25
- WebView.style = indexCss;
26
-
27
- exports.WebView = WebView;
@@ -1,25 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-0004ce39.js';
2
-
3
- const indexCss = "iframe{border:none}.taro-webview{z-index:999;width:100%;height:100%;position:fixed;top:0;bottom:0}";
4
-
5
- const WebView = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.onLoad = createEvent(this, "load", 7);
9
- this.onError = createEvent(this, "error", 7);
10
- this.src = undefined;
11
- }
12
- render() {
13
- const { src, onLoad, onError } = this;
14
- return (h("iframe", { class: 'taro-webview', onLoad: (e) => {
15
- e.stopPropagation();
16
- onLoad.emit({ src });
17
- }, onError: (e) => {
18
- e.stopPropagation();
19
- onError.emit({ src });
20
- }, src: src }));
21
- }
22
- };
23
- WebView.style = indexCss;
24
-
25
- export { WebView as W };
@@ -1 +0,0 @@
1
- export{S as taro_scroll_view_core}from"./p-58a709ad.js";import"./p-f72fcd8c.js";import"./p-160d710a.js";import"./p-5893c3ed.js";import"./p-dbdb9de9.js";import"@tarojs/taro";
@@ -1 +0,0 @@
1
- import{r as t,c as i,h as o,H as s}from"./p-f72fcd8c.js";import{c as a}from"./p-160d710a.js";const e=class{constructor(o){t(this,o),this.onLoad=i(this,"load",7),this.onError=i(this,"error",7),this.src=void 0,this.mode="scaleToFill",this.lazyLoad=!1,this.nativeProps={},this.aspectFillMode="width",this.didLoad=!1}componentDidLoad(){if(!this.lazyLoad)return;const t=new IntersectionObserver((i=>{i[i.length-1].isIntersecting&&(t.unobserve(this.imgRef),this.didLoad=!0)}),{rootMargin:"300px 0px"});t.observe(this.imgRef)}imageOnLoad(){const{width:t,height:i,naturalWidth:o,naturalHeight:s}=this.imgRef;this.onLoad.emit({width:t,height:i}),this.aspectFillMode=o>s?"width":"height"}imageOnError(t){this.onError.emit(t)}render(){const{src:t,lazyLoad:i=!1,aspectFillMode:e="width",imageOnLoad:r,imageOnError:h,nativeProps:m,didLoad:l}=this,n=this.mode||"scaleToFill",d=a({"taro-img__widthfix":"widthFix"===n}),g=a(`taro-img__mode-${n.toLowerCase().replace(/\s/g,"")}`,{[`taro-img__mode-aspectfill--${e}`]:"aspectFill"===n});return o(s,{class:d},t?o("img",Object.assign({ref:t=>this.imgRef=t,class:g,src:i&&!l?void 0:t,onLoad:r.bind(this),onError:h.bind(this)},m)):"")}};e.style='img[src=""]{opacity:0}taro-image-core{width:320px;height:240px;font-size:0;display:inline-block;position:relative;overflow:hidden}.taro-img.taro-img__widthfix{height:100%}.taro-img__mode-scaletofill{width:100%;height:100%}.taro-img__mode-aspectfit{max-width:100%;max-height:100%;position:absolute;top:50%;transform:translateY(-50%)}.taro-img__mode-aspectfill{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.taro-img__mode-aspectfill--width{min-width:100%;height:100%}.taro-img__mode-aspectfill--height{width:100%;min-height:100%}.taro-img__mode-widthfix{width:100%}.taro-img__mode-heightfix{height:100%}.taro-img__mode-top{position:absolute;left:50%;transform:translate(-50%)}.taro-img__mode-bottom{position:absolute;bottom:0;left:50%;transform:translate(-50%)}.taro-img__mode-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.taro-img__mode-left{position:absolute;top:50%;transform:translateY(-50%)}.taro-img__mode-right{position:absolute;top:50%;right:0;transform:translateY(-50%)}.taro-img__mode-topright{position:absolute;right:0}.taro-img__mode-bottomleft{position:absolute;bottom:0}.taro-img__mode-bottomright{position:absolute;bottom:0;right:0}';export{e as I}
@@ -1 +0,0 @@
1
- export{W as taro_web_view_core}from"./p-beae3fe0.js";import"./p-f72fcd8c.js";
@@ -1 +0,0 @@
1
- export{T as taro_textarea_core}from"./p-15c2bd13.js";import"./p-f72fcd8c.js";
@@ -1 +0,0 @@
1
- import{r,c as o,h as s}from"./p-f72fcd8c.js";const t=class{constructor(s){r(this,s),this.onLoad=o(this,"load",7),this.onError=o(this,"error",7),this.src=void 0}render(){const{src:r,onLoad:o,onError:t}=this;return s("iframe",{class:"taro-webview",onLoad:s=>{s.stopPropagation(),o.emit({src:r})},onError:o=>{o.stopPropagation(),t.emit({src:r})},src:r})}};t.style="iframe{border:none}.taro-webview{z-index:999;width:100%;height:100%;position:fixed;top:0;bottom:0}";export{t as W}
@@ -1 +0,0 @@
1
- export{I as taro_image_core}from"./p-1f81d4f4.js";import"./p-f72fcd8c.js";import"./p-160d710a.js";