@heybox/hb-sdk 0.7.5-alpha.0 → 0.8.0-alpha.10

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 (111) hide show
  1. package/CHANGELOG.md +99 -352
  2. package/README.md +103 -26
  3. package/THIRD_PARTY_NOTICES.md +1755 -0
  4. package/dist/cli-chunks/{build-V1YBdpzY.cjs → build-aDJbiFqF.cjs} +9 -5
  5. package/dist/cli-chunks/{context-Ba1Je-wT.cjs → context-Dp36pZ9a.cjs} +39 -81
  6. package/dist/cli-chunks/{create-CKGjqo9E.cjs → create-P3g0ricz.cjs} +2 -2
  7. package/dist/cli-chunks/{dev-XopYKLYZ.cjs → dev-CisJkXuQ.cjs} +396 -576
  8. package/dist/cli-chunks/doctor-B-LF5-uj.cjs +65 -0
  9. package/dist/cli-chunks/{index-C9mpajVG.cjs → index-BDaeBI_B.cjs} +50 -30
  10. package/dist/cli-chunks/{index-DKWfX6Ut.cjs → index-CZGkk7fQ.cjs} +2 -2
  11. package/dist/cli-chunks/{index.esm-SXAQ3WVR.cjs → index.esm-NNLG29Tt.cjs} +8 -7
  12. package/dist/cli-chunks/{login-BVWicWqe.cjs → login-DTY5GolC.cjs} +2 -2
  13. package/dist/cli-chunks/{project-vite-CBb38HJ3.cjs → project-vite-DlCjHlu_.cjs} +1 -1
  14. package/dist/cli-chunks/{remote-BG1u0NKT.cjs → remote-BBMr7j8W.cjs} +61 -27
  15. package/dist/cli-chunks/{runtime-gate-CtV7rWyX.cjs → runtime-gate-BppCl1r3.cjs} +30 -3
  16. package/dist/cli-chunks/{runtime-permission-env-D-8_jPG3.cjs → runtime-permission-env-CqsTHeas.cjs} +364 -13
  17. package/dist/cli-chunks/{session-CJS_SEp9.cjs → session-CnGeZCRZ.cjs} +1 -1
  18. package/dist/cli-chunks/skill-B0yAnPOJ.cjs +83 -0
  19. package/dist/cli-chunks/version-DN5jrixS.cjs +8 -0
  20. package/dist/cli.cjs +1 -1
  21. package/dist/devtools/browser-dev-host/assets/browser-dev-host-BhZGUyYw.js +97 -0
  22. package/dist/devtools/browser-dev-host/assets/heybox-logo-CogNENsk.svg +6 -0
  23. package/dist/devtools/browser-dev-host/assets/index-DJFB5ySU.css +1 -0
  24. package/dist/devtools/browser-dev-host/assets/index-Dh9H1JOm.js +567 -0
  25. package/dist/devtools/browser-dev-host/assets/workbench-state-wHgWRb7I.js +5 -0
  26. package/dist/devtools/browser-dev-host/index.html +6 -435
  27. package/dist/index.cjs.js +1051 -91
  28. package/dist/index.esm.js +1051 -92
  29. package/dist/miniapp-publish.cjs.js +13 -13
  30. package/dist/miniapp-publish.esm.js +13 -13
  31. package/dist/protocol.cjs.js +381 -37
  32. package/dist/protocol.esm.js +355 -38
  33. package/dist/templates/{vue3-vite-ts → vanilla-vite-js}/.gitignore.ejs +0 -1
  34. package/dist/templates/vanilla-vite-js/README.md.ejs +14 -0
  35. package/dist/templates/vanilla-vite-js/index.html.ejs +20 -0
  36. package/dist/templates/vanilla-vite-js/package.json.ejs +22 -0
  37. package/dist/templates/vanilla-vite-js/src/assets/heybox-logo.svg +8 -0
  38. package/dist/templates/vanilla-vite-js/src/main.js +39 -0
  39. package/dist/templates/vanilla-vite-js/src/styles.css +155 -0
  40. package/dist/templates/{vue3-vite-ts/vite.config.ts → vanilla-vite-js/vite.config.js} +1 -2
  41. package/dist/vite.cjs.js +256 -10
  42. package/dist/vite.esm.js +256 -11
  43. package/package.json +37 -11
  44. package/skill/SKILL.md +22 -20
  45. package/skill/references/api-protocol.md +112 -6
  46. package/skill/references/api-root.md +194 -30
  47. package/skill/references/cli.md +41 -24
  48. package/skill/references/examples.md +31 -2
  49. package/skill/references/llms-index.md +1 -1
  50. package/skill/references/recipes.md +139 -36
  51. package/skill/references/safety-boundaries.md +15 -6
  52. package/skill/skill.json +10 -5
  53. package/types/core/client.d.ts +17 -1
  54. package/types/core/errors.d.ts +5 -5
  55. package/types/core/sdk.d.ts +8 -5
  56. package/types/core/singleton.d.ts +59 -6
  57. package/types/index.d.ts +4 -2
  58. package/types/miniapp-manifest/index.d.ts +1 -0
  59. package/types/miniapp-manifest/node.d.ts +3 -0
  60. package/types/miniapp-manifest/permissions.d.ts +37 -0
  61. package/types/miniapp-manifest/schema.d.ts +10 -0
  62. package/types/miniapp-publish/index.d.ts +8 -8
  63. package/types/modules/auth/index.d.ts +15 -1
  64. package/types/modules/cloud/index.d.ts +75 -5
  65. package/types/modules/device/index.d.ts +31 -3
  66. package/types/modules/files/index.d.ts +5 -0
  67. package/types/modules/files/registry.d.ts +35 -0
  68. package/types/modules/files/types.d.ts +159 -0
  69. package/types/modules/navigation/index.d.ts +46 -4
  70. package/types/modules/network/index.d.ts +72 -14
  71. package/types/modules/share/copy-link.d.ts +3 -3
  72. package/types/modules/share/index.d.ts +61 -5
  73. package/types/modules/share/screenshot.d.ts +3 -3
  74. package/types/modules/share/show-share-menu.d.ts +4 -4
  75. package/types/modules/share/types.d.ts +2 -4
  76. package/types/modules/storage/index.d.ts +38 -10
  77. package/types/modules/ui/index.d.ts +46 -4
  78. package/types/modules/user/get-info.d.ts +1 -1
  79. package/types/modules/user/index.d.ts +46 -4
  80. package/types/modules/user/steam-game-list.d.ts +2 -2
  81. package/types/modules/viewport/index.d.ts +36 -8
  82. package/types/protocol/capabilities.d.ts +2 -2
  83. package/types/protocol/constants.d.ts +1 -1
  84. package/types/protocol/guards.d.ts +1 -1
  85. package/types/protocol/types.d.ts +1 -1
  86. package/types/protocol.d.ts +4 -3
  87. package/types/skill-metadata.d.ts +0 -4
  88. package/types/vite/index.d.ts +15 -7
  89. package/dist/cli-chunks/doctor-BHbrYQqT.cjs +0 -204
  90. package/dist/devtools/browser-dev-host/main.js +0 -12158
  91. package/dist/templates/vue3-vite-ts/README.md.ejs +0 -45
  92. package/dist/templates/vue3-vite-ts/index.html.ejs +0 -12
  93. package/dist/templates/vue3-vite-ts/package.json.ejs +0 -33
  94. package/dist/templates/vue3-vite-ts/src/App.vue +0 -78
  95. package/dist/templates/vue3-vite-ts/src/__tests__/App.spec.ts +0 -148
  96. package/dist/templates/vue3-vite-ts/src/auth-handoff.ts +0 -46
  97. package/dist/templates/vue3-vite-ts/src/main.ts +0 -5
  98. package/dist/templates/vue3-vite-ts/src/styles.css +0 -60
  99. package/dist/templates/vue3-vite-ts/src/vite-env.d.ts +0 -1
  100. package/dist/templates/vue3-vite-ts/tsconfig.app.json +0 -17
  101. package/dist/templates/vue3-vite-ts/tsconfig.json +0 -11
  102. package/dist/templates/vue3-vite-ts/tsconfig.node.json +0 -11
  103. package/dist/templates/vue3-vite-ts/vitest.config.ts +0 -10
  104. package/skill/scripts/check-references.mjs +0 -14
  105. package/skill/scripts/markdown-sections.mjs +0 -36
  106. package/skill/scripts/package-skill.mjs +0 -60
  107. package/skill/scripts/package-skill.sh +0 -6
  108. package/skill/scripts/skill-metadata.mjs +0 -77
  109. package/skill/scripts/sync-agent-skills-payload.mjs +0 -359
  110. package/skill/scripts/sync-references.mjs +0 -792
  111. package/skill/scripts/validate-skill.mjs +0 -263
@@ -0,0 +1,159 @@
1
+ /** File/Directory 访问模式。 */
2
+ export type FileMode = 'read' | 'readwrite';
3
+ export interface PickFilesOptions {
4
+ mode?: FileMode;
5
+ accept?: string[];
6
+ multiple?: boolean;
7
+ }
8
+ export interface PickDirectoryOptions {
9
+ mode?: FileMode;
10
+ }
11
+ export interface SaveFileOptions {
12
+ suggestedName: string;
13
+ }
14
+ export interface CreateOptions {
15
+ recursive?: boolean;
16
+ exclusive?: boolean;
17
+ }
18
+ export interface RemoveOptions {
19
+ /** 是否递归删除目录内容,默认 `false`。 */
20
+ recursive?: boolean;
21
+ }
22
+ export interface ListOptions {
23
+ limit?: number;
24
+ }
25
+ /** 可同步派生 lazy File/Directory proxy 的逻辑根。 */
26
+ export interface PathRoot {
27
+ /**
28
+ * 按规范相对路径派生文件代理。
29
+ *
30
+ * @param relativePath - 使用 `/` 分隔的规范相对路径。
31
+ * @returns 延迟访问对应文件的代理。
32
+ * @since 0.8.0-alpha.2
33
+ * @hbPlatform android
34
+ * @hbPlatform ios
35
+ * @hbPlatform ohos
36
+ * @hbPlatform windows
37
+ * @hbPlatform macos
38
+ * @hbClient android none
39
+ * @hbClient ios none
40
+ * @hbClient ohos none
41
+ * @hbClient windows none
42
+ * @hbClient macos none
43
+ */
44
+ file(relativePath: string): FileHandle;
45
+ /**
46
+ * 按规范相对路径派生目录代理。
47
+ *
48
+ * @param relativePath - 使用 `/` 分隔的规范相对路径。
49
+ * @returns 延迟访问对应目录的代理。
50
+ * @since 0.8.0-alpha.2
51
+ * @hbPlatform android
52
+ * @hbPlatform ios
53
+ * @hbPlatform ohos
54
+ * @hbPlatform windows
55
+ * @hbPlatform macos
56
+ * @hbClient android none
57
+ * @hbClient ios none
58
+ * @hbClient ohos none
59
+ * @hbClient windows none
60
+ * @hbClient macos none
61
+ */
62
+ directory(relativePath: string): DirectoryHandle;
63
+ }
64
+ /** Mini-program 私有 sandbox 的逻辑根。 */
65
+ export interface FileSystem extends PathRoot {
66
+ }
67
+ /** 当前 SDK session 中的文件代理。 */
68
+ export interface FileHandle {
69
+ readonly kind: 'file';
70
+ readonly name: string;
71
+ readonly mode: FileMode;
72
+ create(options?: CreateOptions): Promise<FileHandle>;
73
+ /** 删除 sandbox 文件;外部授权文件不允许删除。 */
74
+ remove(): Promise<void>;
75
+ exists(): Promise<boolean>;
76
+ readText(): Promise<string>;
77
+ writeText(content: string): Promise<void>;
78
+ readBytes(): Promise<Uint8Array>;
79
+ writeBytes(content: Uint8Array): Promise<void>;
80
+ stat(): Promise<FileStat>;
81
+ }
82
+ /** 当前 SDK session 中的目录代理。 */
83
+ export interface DirectoryHandle extends PathRoot {
84
+ readonly kind: 'directory';
85
+ readonly name: string;
86
+ readonly mode: FileMode;
87
+ create(options?: CreateOptions): Promise<DirectoryHandle>;
88
+ /** 删除 sandbox 目录;非空目录需要显式设置 `recursive`,外部授权目录不允许删除。 */
89
+ remove(options?: RemoveOptions): Promise<void>;
90
+ exists(): Promise<boolean>;
91
+ list(options?: ListOptions): Promise<FileSystemEntity[]>;
92
+ }
93
+ export type FileSystemEntity = FileHandle | DirectoryHandle;
94
+ export interface FileStat {
95
+ kind: 'file';
96
+ size: number;
97
+ /** Unix epoch milliseconds。 */
98
+ modifiedAt?: number;
99
+ /** Unix epoch milliseconds。 */
100
+ createdAt?: number;
101
+ }
102
+ /** Mini-program 对外文件能力。 */
103
+ export interface FilesModule {
104
+ readonly sandbox: FileSystem;
105
+ /**
106
+ * 让用户选择一个或多个文件并返回当前 session 的授权代理。
107
+ *
108
+ * @param options - 访问模式、扩展名筛选与多选设置。
109
+ * @returns 用户选择的文件代理。
110
+ * @since 0.8.0-alpha.2
111
+ * @hbPlatform android
112
+ * @hbPlatform ios
113
+ * @hbPlatform ohos
114
+ * @hbPlatform windows
115
+ * @hbPlatform macos
116
+ * @hbClient android none
117
+ * @hbClient ios none
118
+ * @hbClient ohos none
119
+ * @hbClient windows none
120
+ * @hbClient macos none
121
+ */
122
+ pickFiles(options?: PickFilesOptions): Promise<FileHandle[]>;
123
+ /**
124
+ * 让用户选择目录并返回当前 session 的授权代理。
125
+ *
126
+ * @param options - 目录访问模式。
127
+ * @returns 用户选择的目录代理。
128
+ * @since 0.8.0-alpha.2
129
+ * @hbPlatform android
130
+ * @hbPlatform ios
131
+ * @hbPlatform ohos
132
+ * @hbPlatform windows
133
+ * @hbPlatform macos
134
+ * @hbClient android none
135
+ * @hbClient ios none
136
+ * @hbClient ohos none
137
+ * @hbClient windows none
138
+ * @hbClient macos none
139
+ */
140
+ pickDirectory(options?: PickDirectoryOptions): Promise<DirectoryHandle>;
141
+ /**
142
+ * 让用户选择一个精确的文件保存目标。
143
+ *
144
+ * @param options - 建议文件名。
145
+ * @returns 具备读写权限的目标文件代理。
146
+ * @since 0.8.0-alpha.2
147
+ * @hbPlatform android
148
+ * @hbPlatform ios
149
+ * @hbPlatform ohos
150
+ * @hbPlatform windows
151
+ * @hbPlatform macos
152
+ * @hbClient android none
153
+ * @hbClient ios none
154
+ * @hbClient ohos none
155
+ * @hbClient windows none
156
+ * @hbClient macos none
157
+ */
158
+ saveFile(options: SaveFileOptions): Promise<FileHandle>;
159
+ }
@@ -1,6 +1,6 @@
1
1
  import type { MiniProgramRequester } from '../../core/client';
2
2
  import { type OpenAppPageOptions } from './app-pages';
3
- export { NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD, } from '../../protocol/capabilities';
3
+ export { NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD } from '../../protocol/capabilities';
4
4
  export type { MiniProgramAppPageTarget, MiniProgramGameDetailGameType, MiniProgramGameDetailPage, OpenAppPageOptions, OpenAppPagePayload, OpenAppPageResult, OpenGameDetailAppPagePayload, OpenGameDetailAppPageOptions, OpenPostDetailAppPagePayload, OpenPostDetailAppPageOptions, OpenUserDetailAppPagePayload, OpenUserDetailAppPageOptions, } from './app-pages';
5
5
  /** `navigation.close` 不需要入参。 */
6
6
  export type ClosePayload = void;
@@ -13,11 +13,53 @@ export type ReloadResult = void;
13
13
  export type { MiniProgramNavigationMethod } from '../../protocol/capabilities';
14
14
  /** 外部小程序可调用的 navigation 模块。 */
15
15
  export interface MiniProgramNavigationModule {
16
- /** 请求宿主关闭当前小程序容器。 */
16
+ /**
17
+ * 请求宿主关闭当前小程序容器。
18
+ *
19
+ * @since 0.4.4
20
+ * @hbPlatform android
21
+ * @hbPlatform ios
22
+ * @hbPlatform ohos
23
+ * @hbPlatform windows
24
+ * @hbPlatform macos
25
+ * @hbClient android none
26
+ * @hbClient ios none
27
+ * @hbClient ohos none
28
+ * @hbClient windows none
29
+ * @hbClient macos none
30
+ */
17
31
  close(): Promise<void>;
18
- /** 请求宿主重载当前小程序容器。 */
32
+ /**
33
+ * 请求宿主重载当前小程序容器。
34
+ *
35
+ * @since 0.4.4
36
+ * @hbPlatform android
37
+ * @hbPlatform ios
38
+ * @hbPlatform ohos
39
+ * @hbPlatform windows
40
+ * @hbPlatform macos
41
+ * @hbClient android none
42
+ * @hbClient ios none
43
+ * @hbClient ohos none
44
+ * @hbClient windows none
45
+ * @hbClient macos none
46
+ */
19
47
  reload(): Promise<void>;
20
- /** 请求宿主打开受 SDK 白名单约束的黑盒 App 页面。 */
48
+ /**
49
+ * 请求宿主打开受 SDK 白名单约束的黑盒 App 页面。
50
+ *
51
+ * @since 0.5.2
52
+ * @hbPlatform android
53
+ * @hbPlatform ios
54
+ * @hbPlatform ohos
55
+ * @hbPlatform windows
56
+ * @hbPlatform macos
57
+ * @hbClient android none
58
+ * @hbClient ios none
59
+ * @hbClient ohos none
60
+ * @hbClient windows none
61
+ * @hbClient macos none
62
+ */
21
63
  openAppPage(options: OpenAppPageOptions): Promise<void>;
22
64
  }
23
65
  /** 请求宿主关闭当前小程序容器。 */
@@ -1,5 +1,6 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- export { NETWORK_REQUEST_METHOD } from '../../protocol/capabilities';
1
+ import type { MiniProgramOperationRequester, MiniProgramRequester } from '../../core/client';
2
+ import type { DirectoryHandle, FileHandle } from '../files';
3
+ export { NETWORK_DOWNLOAD_METHOD, NETWORK_REQUEST_METHOD } from '../../protocol/capabilities';
3
4
  export { createNetworkRequestFailureLog, formatNetworkRequestFailureMessage, logNetworkRequestFailure, previewNetworkData, sanitizeNetworkHeaders, sanitizeNetworkRequestUrl, } from './observability';
4
5
  export { describeHostNetworkFailure, isMultipartContentType, isUnsupportedMultipartNetworkRequest, looksLikeMultipartBody, NETWORK_REQUEST_MULTIPART_UNSUPPORTED_MESSAGE, readNetworkContentType, } from './request-shape';
5
6
  /** `network.request` 请求头。 */
@@ -11,7 +12,7 @@ export type MiniProgramNetworkRequestMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' |
11
12
  /**
12
13
  * SDK 侧可配置的状态校验函数。
13
14
  *
14
- * @param status 标准化后的 HTTP 状态码。
15
+ * @param status - 标准化后的 HTTP 状态码。
15
16
  * @returns 返回 `true` 时表示本次响应应视为成功。
16
17
  *
17
18
  * @remarks
@@ -42,6 +43,32 @@ export interface MiniProgramNetworkRequestConfig {
42
43
  /** SDK 侧状态校验;不会跨 bridge 传输函数值。 */
43
44
  validateStatus?: MiniProgramNetworkValidateStatus;
44
45
  }
46
+ /** 流式下载的 request-scoped 进度。 */
47
+ export interface DownloadProgress {
48
+ loaded: number;
49
+ total?: number;
50
+ lengthComputable: boolean;
51
+ }
52
+ export interface DownloadBaseOptions {
53
+ url: string;
54
+ params?: MiniProgramNetworkParams;
55
+ headers?: MiniProgramNetworkHeaders;
56
+ timeout?: number;
57
+ withCredentials?: boolean;
58
+ maxBytes?: number;
59
+ signal?: AbortSignal;
60
+ onProgress?: (progress: DownloadProgress) => void;
61
+ }
62
+ /** File target 原子替换,Directory target 创建或替换子文件。 */
63
+ export type DownloadOptions = DownloadBaseOptions & ({
64
+ to: FileHandle;
65
+ suggestedName?: never;
66
+ overwrite?: never;
67
+ } | {
68
+ to: DirectoryHandle;
69
+ suggestedName?: string;
70
+ overwrite?: boolean;
71
+ });
45
72
  /**
46
73
  * bridge / runtime 可消费的网络请求 payload。
47
74
  *
@@ -60,7 +87,7 @@ export interface NetworkRequestPayload {
60
87
  /**
61
88
  * bridge / runtime 返回的标准化 HTTP 响应。
62
89
  *
63
- * @typeParam T 标准化响应数据的类型。
90
+ * @typeParam T - 标准化响应数据的类型。
64
91
  */
65
92
  export interface NetworkResponsePayload<T = unknown> {
66
93
  data: T;
@@ -71,7 +98,7 @@ export interface NetworkResponsePayload<T = unknown> {
71
98
  /**
72
99
  * SDK 对外暴露的网络响应。
73
100
  *
74
- * @typeParam T 标准化响应数据的类型。
101
+ * @typeParam T - 标准化响应数据的类型。
75
102
  */
76
103
  export interface MiniProgramNetworkResponse<T = unknown> extends NetworkResponsePayload<T> {
77
104
  /** 发起请求时的 SDK 公共配置快照。 */
@@ -83,21 +110,50 @@ export interface MiniProgramNetworkModule {
83
110
  /**
84
111
  * 发起网络请求。
85
112
  *
86
- * @param config 面向业务层的网络请求配置。
113
+ * @param config - 面向业务层的网络请求配置。
87
114
  * @returns 标准化网络响应;HTTP 2xx 默认返回 resolve。
88
- * @throws {HbMiniProgramNetworkError} 当请求已完成但 HTTP 状态不满足 `validateStatus` 时抛出。
89
- * @throws {HbMiniProgramSDKError} 当 bridge、运行时或宿主能力调用失败时抛出。
115
+ * @throws 当请求已完成但 HTTP 状态不满足 `validateStatus` 时抛出 `HbMiniProgramNetworkError`。
116
+ * @throws 当 bridge、运行时或宿主能力调用失败时抛出 `HbMiniProgramSDKError`。
117
+ * @since 0.2.0-alpha.0
118
+ * @hbPlatform android
119
+ * @hbPlatform ios
120
+ * @hbPlatform ohos
121
+ * @hbPlatform windows
122
+ * @hbPlatform macos
123
+ * @hbClient android none
124
+ * @hbClient ios none
125
+ * @hbClient ohos none
126
+ * @hbClient windows none
127
+ * @hbClient macos none
90
128
  */
91
129
  request<T = unknown>(config: MiniProgramNetworkRequestConfig): Promise<MiniProgramNetworkResponse<T>>;
130
+ /**
131
+ * 将 GET 响应流式写入受控 File/Directory target。
132
+ *
133
+ * @param options - 下载地址、写入目标、取消信号与进度回调。
134
+ * @returns 原子提交完成后的目标文件代理。
135
+ * @since 0.8.0-alpha.2
136
+ * @hbPlatform android
137
+ * @hbPlatform ios
138
+ * @hbPlatform ohos
139
+ * @hbPlatform windows
140
+ * @hbPlatform macos
141
+ * @hbClient android none
142
+ * @hbClient ios none
143
+ * @hbClient ohos none
144
+ * @hbClient windows none
145
+ * @hbClient macos none
146
+ */
147
+ download(options: DownloadOptions): Promise<FileHandle>;
92
148
  }
93
149
  /**
94
150
  * 发起网络请求并返回标准化响应。
95
151
  *
96
- * @param requester 底层 bridge 请求能力。
97
- * @param config 面向业务层的网络请求配置。
152
+ * @param requester - 底层 bridge 请求能力。
153
+ * @param config - 面向业务层的网络请求配置。
98
154
  * @returns 标准化网络响应。HTTP 2xx 默认返回 resolve。
99
- * @throws {HbMiniProgramNetworkError} 当请求已完成但 HTTP 状态不满足 `validateStatus` 时抛出。
100
- * @throws {HbMiniProgramSDKError} 当 bridge、运行时或宿主能力调用失败时抛出。
155
+ * @throws {@link HbMiniProgramNetworkError} 当请求已完成但 HTTP 状态不满足 `validateStatus` 时抛出。
156
+ * @throws {@link HbMiniProgramSDKError} 当 bridge、运行时或宿主能力调用失败时抛出。
101
157
  *
102
158
  * @remarks
103
159
  * `validateStatus` 仅在 SDK 侧执行,不会跨 bridge 传输函数值。
@@ -112,10 +168,12 @@ export interface MiniProgramNetworkModule {
112
168
  * ```
113
169
  */
114
170
  export declare function request<T = unknown>(requester: MiniProgramRequester, config: MiniProgramNetworkRequestConfig): Promise<MiniProgramNetworkResponse<T>>;
171
+ /** 发起不使用 bridge 固定总时长 timer 的流式下载。 */
172
+ export declare function download(requester: MiniProgramOperationRequester, options: DownloadOptions): Promise<FileHandle>;
115
173
  /**
116
174
  * 创建 network 模块。
117
175
  *
118
- * @param requester 底层 bridge 请求能力。
176
+ * @param requester - 底层 bridge 请求能力。
119
177
  * @returns 面向业务层的网络模块对象。
120
178
  */
121
- export declare function createNetworkModule(requester: MiniProgramRequester): MiniProgramNetworkModule;
179
+ export declare function createNetworkModule(requester: MiniProgramOperationRequester): MiniProgramNetworkModule;
@@ -8,9 +8,9 @@ export type CopyLinkResult = string;
8
8
  /**
9
9
  * 复制当前小程序的通用分享链接。
10
10
  *
11
- * @param requester 底层 bridge 请求能力。
12
- * @param options 分享扩展数据;不传时复制默认首页链接。
11
+ * @param requester - 底层 bridge 请求能力。
12
+ * @param options - 分享扩展数据;不传时复制默认首页链接。
13
13
  * @returns 已写入系统剪贴板的完整分享链接。
14
- * @throws {HbMiniProgramSDKError} 当参数、bridge、父容器或剪贴板能力调用失败时抛出。
14
+ * @throws {@link HbMiniProgramSDKError} 当参数、bridge、父容器或剪贴板能力调用失败时抛出。
15
15
  */
16
16
  export declare function copyLink(requester: MiniProgramRequester, options?: MiniProgramCopyLinkOptions): Promise<CopyLinkResult>;
@@ -10,19 +10,75 @@ export * from './types';
10
10
  export type { MiniProgramShareMethod } from '../../protocol/capabilities';
11
11
  /** 外部小程序可调用的分享模块。 */
12
12
  export interface MiniProgramShareModule {
13
- /** 复制当前小程序的通用分享链接,并返回该链接。 */
13
+ /**
14
+ * 复制当前小程序的通用分享链接,并返回该链接。
15
+ *
16
+ * @since 0.7.4-alpha.5
17
+ * @hbPlatform android
18
+ * @hbPlatform ios
19
+ * @hbPlatform ohos
20
+ * @hbPlatform windows
21
+ * @hbPlatform macos
22
+ * @hbClient android none
23
+ * @hbClient ios none
24
+ * @hbClient ohos none
25
+ * @hbClient windows none
26
+ * @hbClient macos none
27
+ */
14
28
  copyLink(options?: MiniProgramCopyLinkOptions): Promise<CopyLinkResult>;
15
- /** 同步获取小程序启动时携带的分享扩展数据;没有有效数据时返回 `undefined`。 */
29
+ /**
30
+ * 同步获取小程序启动时携带的分享扩展数据;没有有效数据时返回 `undefined`。
31
+ *
32
+ * @since 0.7.4-alpha.5
33
+ * @hbPlatform android
34
+ * @hbPlatform ios
35
+ * @hbPlatform ohos
36
+ * @hbPlatform windows
37
+ * @hbPlatform macos
38
+ * @hbClient android none
39
+ * @hbClient ios none
40
+ * @hbClient ohos none
41
+ * @hbClient windows none
42
+ * @hbClient macos none
43
+ */
16
44
  getExtra(): MiniProgramShareExtraValue | undefined;
17
- /** 展示基础分享面板。 */
45
+ /**
46
+ * 展示以当前小程序通用分享页为落地页的基础分享面板。
47
+ *
48
+ * @since 0.2.0-alpha.0
49
+ * @hbPlatform android
50
+ * @hbPlatform ios
51
+ * @hbPlatform ohos
52
+ * @hbPlatform windows
53
+ * @hbPlatform macos
54
+ * @hbClient android none
55
+ * @hbClient ios none
56
+ * @hbClient ohos none
57
+ * @hbClient windows none
58
+ * @hbClient macos none
59
+ */
18
60
  showShareMenu(options: ShowShareMenuPayload): Promise<ShowShareMenuResult>;
19
- /** 截图并唤起分享。 */
61
+ /**
62
+ * 截图并唤起分享。
63
+ *
64
+ * @since 0.2.0-alpha.0
65
+ * @hbPlatform android
66
+ * @hbPlatform ios
67
+ * @hbPlatform ohos
68
+ * @hbPlatform windows
69
+ * @hbPlatform macos
70
+ * @hbClient android none
71
+ * @hbClient ios none
72
+ * @hbClient ohos none
73
+ * @hbClient windows none
74
+ * @hbClient macos none
75
+ */
20
76
  screenshot(options?: MiniProgramScreenshotOptions): Promise<ScreenshotResult>;
21
77
  }
22
78
  /**
23
79
  * 创建分享模块。
24
80
  *
25
- * @param requester 底层 bridge 请求能力。
81
+ * @param requester - 底层 bridge 请求能力。
26
82
  * @returns 面向业务层的分享模块对象。
27
83
  */
28
84
  export declare function createShareModule(requester: MiniProgramRequester, launchHref?: string): MiniProgramShareModule;
@@ -8,9 +8,9 @@ export type ScreenshotResult = unknown;
8
8
  /**
9
9
  * 截图并唤起分享。
10
10
  *
11
- * @param requester 底层 bridge 请求能力。
12
- * @param options 截图区域、延迟与保存相册等配置。
11
+ * @param requester - 底层 bridge 请求能力。
12
+ * @param options - 截图区域、延迟与保存相册等配置。
13
13
  * @returns 由宿主客户端协议决定的结果。
14
- * @throws {HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
14
+ * @throws {@link HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
15
15
  */
16
16
  export declare function screenshot(requester: MiniProgramRequester, options?: MiniProgramScreenshotOptions): Promise<ScreenshotResult>;
@@ -6,11 +6,11 @@ export type ShowShareMenuPayload = MiniProgramShowShareMenuOptions;
6
6
  /** `share.showShareMenu` 返回值由客户端协议决定。 */
7
7
  export type ShowShareMenuResult = unknown;
8
8
  /**
9
- * 展示基础分享面板。
9
+ * 展示以当前小程序通用分享页为落地页的基础分享面板。
10
10
  *
11
- * @param requester 底层 bridge 请求能力。
12
- * @param options 基础分享参数。
11
+ * @param requester - 底层 bridge 请求能力。
12
+ * @param options - 基础分享参数。
13
13
  * @returns 由宿主客户端协议决定的结果。
14
- * @throws {HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
14
+ * @throws {@link HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
15
15
  */
16
16
  export declare function showShareMenu(requester: MiniProgramRequester, options: ShowShareMenuPayload): Promise<ShowShareMenuResult>;
@@ -25,16 +25,14 @@ export interface MiniProgramSharePostOptions {
25
25
  * 展示基础分享面板的配置。
26
26
  *
27
27
  * @remarks
28
- * 该配置只暴露基础分享字段,不暴露宿主内部上报、回调、自定义按钮等协议参数。
28
+ * 分享落地页固定为当前小程序的通用分享页。该配置只暴露基础分享字段,不暴露宿主内部上报、回调、自定义按钮等协议参数。
29
29
  */
30
30
  export interface MiniProgramShowShareMenuOptions {
31
31
  /** 分享标题。 */
32
32
  title: string;
33
33
  /** 分享描述。 */
34
34
  desc: string;
35
- /** 分享落地页 URL;不传时由宿主 runtime 生成当前小程序的通用分享页。 */
36
- url?: string;
37
- /** 分享扩展数据;最多 8 层、单层最多 64 项、容量不超过 128 字节,且不能与 `url` 同时使用。 */
35
+ /** 分享扩展数据;最多 8 层、单层最多 64 项、容量不超过 128 字节。 */
38
36
  extra?: MiniProgramShareExtraValue;
39
37
  /** 分享缩略图 URL。 */
40
38
  imageUrl?: string;
@@ -8,7 +8,7 @@ export interface GetStoragePayload {
8
8
  /**
9
9
  * `storage.getStorage` 返回值。
10
10
  *
11
- * @typeParam T 反序列化后的业务数据类型。
11
+ * @typeParam T - 反序列化后的业务数据类型。
12
12
  */
13
13
  export interface GetStorageResult<T = unknown> {
14
14
  /** key 对应的数据;不存在时为 undefined。 */
@@ -24,33 +24,61 @@ export interface SetStoragePayload {
24
24
  export type { MiniProgramStorageMethod } from '../../protocol/capabilities';
25
25
  /** 外部小程序可调用的 storage 模块。 */
26
26
  export interface MiniProgramStorageModule {
27
- /** 获取小程序隔离 storage。 */
27
+ /**
28
+ * 获取小程序隔离 storage。
29
+ *
30
+ * @since 0.2.0-alpha.0
31
+ * @hbPlatform android
32
+ * @hbPlatform ios
33
+ * @hbPlatform ohos
34
+ * @hbPlatform windows
35
+ * @hbPlatform macos
36
+ * @hbClient android none
37
+ * @hbClient ios none
38
+ * @hbClient ohos none
39
+ * @hbClient windows none
40
+ * @hbClient macos none
41
+ */
28
42
  getStorage<T = unknown>(options: GetStoragePayload): Promise<GetStorageResult<T>>;
29
- /** 写入小程序隔离 storage。 */
43
+ /**
44
+ * 写入小程序隔离 storage。
45
+ *
46
+ * @since 0.2.0-alpha.0
47
+ * @hbPlatform android
48
+ * @hbPlatform ios
49
+ * @hbPlatform ohos
50
+ * @hbPlatform windows
51
+ * @hbPlatform macos
52
+ * @hbClient android none
53
+ * @hbClient ios none
54
+ * @hbClient ohos none
55
+ * @hbClient windows none
56
+ * @hbClient macos none
57
+ */
30
58
  setStorage(options: SetStoragePayload): Promise<void>;
31
59
  }
32
60
  /**
33
61
  * 获取小程序隔离 storage。
34
62
  *
35
- * @param requester 底层 bridge 请求能力。
36
- * @param options 读取的 storage key。
63
+ * @param requester - 底层 bridge 请求能力。
64
+ * @param options - 读取的 storage key。
37
65
  * @returns 对应 key 的标准化读取结果。
38
- * @throws {HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
66
+ * @throws {@link HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
39
67
  */
40
68
  export declare function getStorage<T = unknown>(requester: MiniProgramRequester, options: GetStoragePayload): Promise<GetStorageResult<T>>;
41
69
  /**
42
70
  * 写入小程序隔离 storage。
43
71
  *
44
- * @param requester 底层 bridge 请求能力。
45
- * @param options 要写入的 storage key 与数据。
72
+ * @param requester - 底层 bridge 请求能力。
73
+ * @param options - 要写入的 storage key 与数据。
46
74
  * @returns 当写入完成后 resolve。
47
- * @throws {HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
75
+ * @throws {@link HbMiniProgramSDKError} 当 bridge、父容器或宿主能力调用失败时抛出。
48
76
  */
49
77
  export declare function setStorage(requester: MiniProgramRequester, options: SetStoragePayload): Promise<void>;
50
78
  /**
51
79
  * 创建 storage 模块。
52
80
  *
53
- * @param requester 底层 bridge 请求能力。
81
+ * @param requester - 底层 bridge 请求能力。
54
82
  * @returns 面向业务层的 storage 模块对象。
55
83
  */
56
84
  export declare function createStorageModule(requester: MiniProgramRequester): MiniProgramStorageModule;
@@ -1,5 +1,5 @@
1
1
  import type { MiniProgramRequester } from '../../core/client';
2
- export { UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD, } from '../../protocol/capabilities';
2
+ export { UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD } from '../../protocol/capabilities';
3
3
  /** Toast 展示状态。 */
4
4
  export type MiniProgramToastStatus = 'success' | 'error';
5
5
  /** `ui.showToast` 入参。 */
@@ -25,11 +25,53 @@ export type HideLoadingResult = void;
25
25
  export type { MiniProgramUiMethod } from '../../protocol/capabilities';
26
26
  /** 外部小程序可调用的 UI 模块。 */
27
27
  export interface MiniProgramUiModule {
28
- /** 展示 toast。 */
28
+ /**
29
+ * 展示 toast。
30
+ *
31
+ * @since 0.4.4
32
+ * @hbPlatform android
33
+ * @hbPlatform ios
34
+ * @hbPlatform ohos
35
+ * @hbPlatform windows
36
+ * @hbPlatform macos
37
+ * @hbClient android none
38
+ * @hbClient ios none
39
+ * @hbClient ohos none
40
+ * @hbClient windows none
41
+ * @hbClient macos none
42
+ */
29
43
  showToast(options: ShowToastPayload): Promise<void>;
30
- /** 展示全局 loading。 */
44
+ /**
45
+ * 展示全局 loading。
46
+ *
47
+ * @since 0.4.4
48
+ * @hbPlatform android
49
+ * @hbPlatform ios
50
+ * @hbPlatform ohos
51
+ * @hbPlatform windows
52
+ * @hbPlatform macos
53
+ * @hbClient android none
54
+ * @hbClient ios none
55
+ * @hbClient ohos none
56
+ * @hbClient windows none
57
+ * @hbClient macos none
58
+ */
31
59
  showLoading(options?: ShowLoadingPayload): Promise<void>;
32
- /** 隐藏全局 loading。 */
60
+ /**
61
+ * 隐藏全局 loading。
62
+ *
63
+ * @since 0.4.4
64
+ * @hbPlatform android
65
+ * @hbPlatform ios
66
+ * @hbPlatform ohos
67
+ * @hbPlatform windows
68
+ * @hbPlatform macos
69
+ * @hbClient android none
70
+ * @hbClient ios none
71
+ * @hbClient ohos none
72
+ * @hbClient windows none
73
+ * @hbClient macos none
74
+ */
33
75
  hideLoading(): Promise<void>;
34
76
  }
35
77
  /** 展示 toast。 */
@@ -18,6 +18,6 @@ export type GetUserInfoResult = MiniProgramUserInfoResult;
18
18
  * `app_user_id`,并隐式授予 `identity` 与 `profile` 后返回昵称与头像,不展示授权 UI。未登录时返回
19
19
  * `{ isHeyboxAppLoggedIn: false, authorization: null, userInfo: null }`。
20
20
  *
21
- * @throws {HbMiniProgramSDKError} 当 SDK 调用失败时抛出。
21
+ * @throws {@link HbMiniProgramSDKError} 当 SDK 调用失败时抛出。
22
22
  */
23
23
  export declare function getInfo(requester: MiniProgramRequester): Promise<GetUserInfoResult>;