@heybox/hb-sdk 0.8.0-alpha → 0.8.0-alpha.12
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.
- package/CHANGELOG.md +106 -395
- package/README.md +107 -24
- package/THIRD_PARTY_NOTICES.md +1755 -0
- package/dist/cli-chunks/{build-DJWFSM1B.cjs → build-DNtjBmyy.cjs} +8 -5
- package/dist/cli-chunks/{context-DV2UK1Nz.cjs → context-CO_3KgM_.cjs} +39 -81
- package/dist/cli-chunks/{create-2HfoB48V.cjs → create-DG8JxrPU.cjs} +2 -2
- package/dist/cli-chunks/{dev-Dgt2zS9k.cjs → dev-C5U1Lo4e.cjs} +404 -577
- package/dist/cli-chunks/doctor-B50OXvrj.cjs +65 -0
- package/dist/cli-chunks/{index-D62ANeBv.cjs → index-B4nFqf-3.cjs} +50 -30
- package/dist/cli-chunks/{index-BjoSXl8C.cjs → index-B8FK1ojC.cjs} +2 -2
- package/dist/cli-chunks/{index.esm-CigcxJ2B.cjs → index.esm-DiX5WKSp.cjs} +8 -7
- package/dist/cli-chunks/{login-Cumknwdx.cjs → login-CBwmxsEK.cjs} +2 -2
- package/dist/cli-chunks/{project-vite-CcE-HMmd.cjs → project-vite-DWpmHOsV.cjs} +1 -1
- package/dist/cli-chunks/{remote-DDdP3xcE.cjs → remote-Dt-U4gDD.cjs} +57 -25
- package/dist/cli-chunks/{runtime-gate-DFjw66kF.cjs → runtime-gate-CMnGCdfq.cjs} +11 -3
- package/dist/cli-chunks/{runtime-permission-env-CjsCe5bp.cjs → runtime-permission-env-BcUsO3nG.cjs} +351 -0
- package/dist/cli-chunks/{session-BDi_AZSv.cjs → session-yy543BIB.cjs} +1 -1
- package/dist/cli-chunks/skill-B4SWt2o6.cjs +83 -0
- package/dist/cli-chunks/version-CmizPu7D.cjs +8 -0
- package/dist/cli.cjs +1 -1
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-TzYf9L6C.js +99 -0
- package/dist/devtools/browser-dev-host/assets/heybox-logo-CogNENsk.svg +6 -0
- package/dist/devtools/browser-dev-host/assets/index-C5MZZDa5.js +567 -0
- package/dist/devtools/browser-dev-host/assets/index-P-ra4m1y.css +1 -0
- package/dist/devtools/browser-dev-host/assets/workbench-state-BwV7bm4n.js +5 -0
- package/dist/devtools/browser-dev-host/index.html +6 -435
- package/dist/index.cjs.js +1023 -29
- package/dist/index.esm.js +1023 -30
- package/dist/protocol.cjs.js +381 -37
- package/dist/protocol.esm.js +355 -38
- package/dist/templates/{vue3-vite-ts → vanilla-vite-js}/.gitignore.ejs +0 -1
- package/dist/templates/vanilla-vite-js/README.md.ejs +14 -0
- package/dist/templates/vanilla-vite-js/index.html.ejs +20 -0
- package/dist/templates/vanilla-vite-js/package.json.ejs +22 -0
- package/dist/templates/vanilla-vite-js/src/assets/heybox-logo.svg +8 -0
- package/dist/templates/vanilla-vite-js/src/main.js +39 -0
- package/dist/templates/vanilla-vite-js/src/styles.css +155 -0
- package/dist/templates/{vue3-vite-ts/vite.config.ts → vanilla-vite-js/vite.config.js} +1 -2
- package/dist/vite.cjs.js +281 -13
- package/dist/vite.esm.js +281 -13
- package/package.json +34 -11
- package/skill/SKILL.md +22 -20
- package/skill/references/api-protocol.md +100 -6
- package/skill/references/api-root.md +199 -28
- package/skill/references/cli.md +41 -24
- package/skill/references/examples.md +30 -1
- package/skill/references/llms-index.md +1 -1
- package/skill/references/recipes.md +139 -36
- package/skill/references/safety-boundaries.md +20 -5
- package/skill/skill.json +10 -5
- package/types/core/client.d.ts +17 -1
- package/types/core/mini-dev-console.d.ts +36 -0
- package/types/core/sdk.d.ts +3 -0
- package/types/core/singleton.d.ts +3 -0
- package/types/index.d.ts +4 -2
- package/types/miniapp-manifest/index.d.ts +1 -0
- package/types/miniapp-manifest/node.d.ts +3 -0
- package/types/miniapp-manifest/permissions.d.ts +37 -0
- package/types/miniapp-manifest/schema.d.ts +5 -0
- package/types/modules/files/index.d.ts +5 -0
- package/types/modules/files/registry.d.ts +35 -0
- package/types/modules/files/types.d.ts +159 -0
- package/types/modules/network/index.d.ts +50 -3
- package/types/modules/share/index.d.ts +1 -1
- package/types/modules/share/show-share-menu.d.ts +1 -1
- package/types/modules/share/types.d.ts +2 -4
- package/types/protocol/capabilities.d.ts +2 -2
- package/types/protocol/constants.d.ts +1 -1
- package/types/protocol/guards.d.ts +1 -1
- package/types/protocol/types.d.ts +1 -1
- package/types/protocol.d.ts +4 -3
- package/types/skill-metadata.d.ts +0 -4
- package/types/vite/index.d.ts +3 -1
- package/dist/cli-chunks/doctor-C95gIao_.cjs +0 -204
- package/dist/devtools/browser-dev-host/main.js +0 -12263
- package/dist/templates/vue3-vite-ts/README.md.ejs +0 -47
- package/dist/templates/vue3-vite-ts/index.html.ejs +0 -12
- package/dist/templates/vue3-vite-ts/package.json.ejs +0 -33
- package/dist/templates/vue3-vite-ts/src/App.vue +0 -78
- package/dist/templates/vue3-vite-ts/src/__tests__/App.spec.ts +0 -148
- package/dist/templates/vue3-vite-ts/src/auth-handoff.ts +0 -46
- package/dist/templates/vue3-vite-ts/src/main.ts +0 -5
- package/dist/templates/vue3-vite-ts/src/styles.css +0 -60
- package/dist/templates/vue3-vite-ts/src/vite-env.d.ts +0 -1
- package/dist/templates/vue3-vite-ts/tsconfig.app.json +0 -17
- package/dist/templates/vue3-vite-ts/tsconfig.json +0 -11
- package/dist/templates/vue3-vite-ts/tsconfig.node.json +0 -11
- package/dist/templates/vue3-vite-ts/vitest.config.ts +0 -10
- package/skill/scripts/check-references.mjs +0 -14
- package/skill/scripts/markdown-sections.mjs +0 -36
- package/skill/scripts/package-skill.mjs +0 -60
- package/skill/scripts/package-skill.sh +0 -6
- package/skill/scripts/skill-metadata.mjs +0 -77
- package/skill/scripts/sync-agent-skills-payload.mjs +0 -359
- package/skill/scripts/sync-references.mjs +0 -794
- package/skill/scripts/validate-skill.mjs +0 -263
package/types/core/client.d.ts
CHANGED
|
@@ -25,8 +25,18 @@ export interface MiniProgramRequester {
|
|
|
25
25
|
/** 向父容器调用指定开放能力。 */
|
|
26
26
|
request<Method extends MiniProgramBridgeMethod>(method: Method, ...args: MiniProgramRequesterArgs<Method>): Promise<MiniProgramCapabilityResult<Method>>;
|
|
27
27
|
}
|
|
28
|
+
/** 长操作使用的本地 observer 与取消配置,不进入 bridge payload。 */
|
|
29
|
+
export interface MiniProgramOperationOptions<TProgress = unknown> {
|
|
30
|
+
signal?: AbortSignal;
|
|
31
|
+
onProgress?: (progress: TProgress) => void;
|
|
32
|
+
createAbortError?: () => unknown;
|
|
33
|
+
}
|
|
34
|
+
/** 支持 request-scoped progress/cancel 的 bridge requester。 */
|
|
35
|
+
export interface MiniProgramOperationRequester extends MiniProgramRequester {
|
|
36
|
+
requestOperation<Method extends MiniProgramBridgeMethod, TProgress = unknown>(method: Method, payload: MiniProgramCapabilityPayload<Method>, options?: MiniProgramOperationOptions<TProgress>): Promise<MiniProgramCapabilityResult<Method>>;
|
|
37
|
+
}
|
|
28
38
|
/** 底层 bridge client,负责握手、请求响应、事件分发与超时清理。 */
|
|
29
|
-
export declare class MiniProgramBridgeClient implements
|
|
39
|
+
export declare class MiniProgramBridgeClient implements MiniProgramOperationRequester {
|
|
30
40
|
private readonly timeout;
|
|
31
41
|
private readonly selfWindow?;
|
|
32
42
|
private readonly targetWindow;
|
|
@@ -64,6 +74,9 @@ export declare class MiniProgramBridgeClient implements MiniProgramRequester {
|
|
|
64
74
|
off<T extends MiniProgramEventName>(eventName: T, handler: MiniProgramEventHandler<T>): void;
|
|
65
75
|
/** 调用父容器开放能力。 */
|
|
66
76
|
request<Method extends MiniProgramBridgeMethod>(method: Method, ...args: MiniProgramRequesterArgs<Method>): Promise<MiniProgramCapabilityResult<Method>>;
|
|
77
|
+
/** 发起不使用固定总时长 timer 的长操作。 */
|
|
78
|
+
requestOperation<Method extends MiniProgramBridgeMethod, TProgress = unknown>(method: Method, payload: MiniProgramCapabilityPayload<Method>, options?: MiniProgramOperationOptions<TProgress>): Promise<MiniProgramCapabilityResult<Method>>;
|
|
79
|
+
private performRequest;
|
|
67
80
|
/** 销毁 SDK 实例,并拒绝尚未完成的请求。 */
|
|
68
81
|
destroy(): void;
|
|
69
82
|
private ensureStarted;
|
|
@@ -73,6 +86,9 @@ export declare class MiniProgramBridgeClient implements MiniProgramRequester {
|
|
|
73
86
|
private postCSPViolation;
|
|
74
87
|
private handleEvent;
|
|
75
88
|
private handleResponse;
|
|
89
|
+
private handleOperationProgress;
|
|
90
|
+
private sendCancel;
|
|
91
|
+
private cleanupPending;
|
|
76
92
|
private postMessage;
|
|
77
93
|
private resolveHandshakeOnce;
|
|
78
94
|
private failHandshake;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
3
|
+
*
|
|
4
|
+
* 双条件门控(iframe 转发):
|
|
5
|
+
* 1. 构建期:`hb-sdk dev`(vite serve)注入 `__HB_SDK_DEV_LOGGING__`;`hb-sdk build` /
|
|
6
|
+
* `vite build`(生产)永不注入或替换为 `false`,本模块被死代码消除。
|
|
7
|
+
* 2. 运行期:仅在 `window.name` 为 `__hb_sdk_mini_dev__` 的调试 iframe 中激活,
|
|
8
|
+
* 用户设备上的正式运行环境没有该标记。
|
|
9
|
+
*
|
|
10
|
+
* 无侵入 patch `console.log/debug/info/warn/error`:原样放行(DevTools 不受影响)+
|
|
11
|
+
* 通过 `window.parent.postMessage` 转发给调试台(CSP 的 connect-src 不约束 postMessage,
|
|
12
|
+
* 网络上报由调试台页面代理)。发送全程静默:失败不得回打 console,避免自触发死循环。
|
|
13
|
+
*
|
|
14
|
+
* 激活时机:由 SDK 默认单例初始化时调用(业务 `import '@heybox/hb-sdk'` 即生效);
|
|
15
|
+
* iframe 标记由调试台 `iframe.name` 与 vite dev 注入的无依赖 bootstrap 共同设置。
|
|
16
|
+
* 调试台页面自身(runtime 跑在这里,`[hb-sdk-runtime]` 日志不经过 iframe)另用
|
|
17
|
+
* `installMiniDevConsoleSelfCapture` 接入「日志」页签(source: 'host')。
|
|
18
|
+
*/
|
|
19
|
+
export declare const MINI_DEV_IFRAME_WINDOW_NAME = "__hb_sdk_mini_dev__";
|
|
20
|
+
export declare const MINI_DEV_CONSOLE_EVENT_TYPE = "hb-sdk:mini-dev-console";
|
|
21
|
+
/** 对外契约:调试台监听该 postMessage 读取转发日志;message 结构必须稳定。 */
|
|
22
|
+
export interface MiniDevConsoleMessage {
|
|
23
|
+
type: typeof MINI_DEV_CONSOLE_EVENT_TYPE;
|
|
24
|
+
detail: MiniDevConsoleEventDetail;
|
|
25
|
+
}
|
|
26
|
+
export type MiniDevConsoleLevel = 'log' | 'debug' | 'info' | 'warn' | 'error';
|
|
27
|
+
export interface MiniDevConsoleEventDetail {
|
|
28
|
+
level: MiniDevConsoleLevel;
|
|
29
|
+
args: unknown[];
|
|
30
|
+
timestamp: number;
|
|
31
|
+
}
|
|
32
|
+
/** 调试台页面与 iframe bootstrap 共用的已安装标记(window/console 上的属性名)。 */
|
|
33
|
+
export declare const MINI_DEV_CONSOLE_INSTALL_FLAG = "__hb_sdk_mini_dev_console_installed__";
|
|
34
|
+
/** 调试台页面(非 iframe)自捕获:runtime/host 侧 console 直接进「日志」页签。 */
|
|
35
|
+
export declare function installMiniDevConsoleSelfCapture(onLog: (level: MiniDevConsoleLevel, args: unknown[]) => void, consoleRef?: Console): void;
|
|
36
|
+
export declare function installMiniDevConsoleForwarding(consoleRef?: Console): void;
|
package/types/core/sdk.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { type MiniProgramCloudModule } from '../modules/cloud';
|
|
|
4
4
|
import { type MiniProgramShareModule } from '../modules/share';
|
|
5
5
|
import { type MiniProgramStorageModule } from '../modules/storage';
|
|
6
6
|
import { type MiniProgramNetworkModule } from '../modules/network';
|
|
7
|
+
import { type FilesModule } from '../modules/files';
|
|
7
8
|
import { type MiniProgramViewportModule } from '../modules/viewport';
|
|
8
9
|
import { type MiniProgramUserModule } from '../modules/user';
|
|
9
10
|
import { type MiniProgramUiModule } from '../modules/ui';
|
|
@@ -37,6 +38,8 @@ export declare class MiniProgramSDK {
|
|
|
37
38
|
readonly storage: MiniProgramStorageModule;
|
|
38
39
|
/** 网络请求相关开放能力。 */
|
|
39
40
|
readonly network: MiniProgramNetworkModule;
|
|
41
|
+
/** 受控文件与目录能力。 */
|
|
42
|
+
readonly files: FilesModule;
|
|
40
43
|
/** UI 交互相关开放能力。 */
|
|
41
44
|
readonly ui: MiniProgramUiModule;
|
|
42
45
|
/** 设备相关开放能力。 */
|
|
@@ -3,6 +3,7 @@ import type { MiniProgramCloudModule } from '../modules/cloud';
|
|
|
3
3
|
import type { MiniProgramShareModule } from '../modules/share';
|
|
4
4
|
import type { MiniProgramStorageModule } from '../modules/storage';
|
|
5
5
|
import type { MiniProgramNetworkModule } from '../modules/network';
|
|
6
|
+
import type { FilesModule } from '../modules/files';
|
|
6
7
|
import type { MiniProgramViewportModule } from '../modules/viewport';
|
|
7
8
|
import type { MiniProgramUserModule } from '../modules/user';
|
|
8
9
|
import type { MiniProgramUiModule } from '../modules/ui';
|
|
@@ -92,6 +93,8 @@ export declare const viewport: MiniProgramViewportModule;
|
|
|
92
93
|
export declare const storage: MiniProgramStorageModule;
|
|
93
94
|
/** 默认 SDK 实例的 network 模块。 */
|
|
94
95
|
export declare const network: MiniProgramNetworkModule;
|
|
96
|
+
/** 默认 SDK 实例的 files 模块。 */
|
|
97
|
+
export declare const files: FilesModule;
|
|
95
98
|
/** 默认 SDK 实例的 UI 模块。 */
|
|
96
99
|
export declare const ui: MiniProgramUiModule;
|
|
97
100
|
/** 默认 SDK 实例的 device 模块。 */
|
package/types/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { HbMiniProgramSDKError, HbMiniProgramNetworkError } from './core/errors';
|
|
2
|
-
export { getHandshakeState, onHandshakeStateChange, on, off, auth, user, share, viewport, storage, network, ui, device, navigation, cloud, } from './core/singleton';
|
|
2
|
+
export { getHandshakeState, onHandshakeStateChange, on, off, auth, user, share, viewport, storage, files, network, ui, device, navigation, cloud, } from './core/singleton';
|
|
3
3
|
export type { MiniProgramSDKHandshakeState, MiniProgramSDKHandshakeStateHandler } from './core/handshake-state';
|
|
4
4
|
export type { MiniProgramEventHandler, MiniProgramEventName, MiniProgramEventPayloadMap } from './protocol/types';
|
|
5
5
|
export type { LoginOptions, LoginPayload, LoginResult, LoginScope, MiniProgramAuthModule } from './modules/auth';
|
|
@@ -10,7 +10,8 @@ export type { UserInfoAuthorizationScope } from './modules/user';
|
|
|
10
10
|
export type { CopyLinkPayload, CopyLinkResult, MiniProgramCopyLinkOptions, MiniProgramScreenshotOptions, MiniProgramScreenshotRect, MiniProgramShareChannel, MiniProgramShareExtraValue, MiniProgramShareModule, MiniProgramSharePostOptions, MiniProgramShowShareMenuOptions, ScreenshotPayload, ScreenshotResult, ShowShareMenuPayload, ShowShareMenuResult, } from './modules/share';
|
|
11
11
|
export type { GetWindowInfoPayload, GetWindowInfoResult, MiniProgramNavigationBarForegroundStyle, MiniProgramSafeArea, MiniProgramSetNavigationBarStyleOptions, MiniProgramViewportModule, MiniProgramWindowInfoResult, SetNavigationBarStylePayload, SetNavigationBarStyleResult, } from './modules/viewport';
|
|
12
12
|
export type { GetStoragePayload, GetStorageResult, MiniProgramStorageModule, SetStoragePayload } from './modules/storage';
|
|
13
|
-
export type { MiniProgramNetworkHeaders, MiniProgramNetworkModule, MiniProgramNetworkParams, MiniProgramNetworkRequestConfig, MiniProgramNetworkRequestMethod, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, NetworkRequestPayload, NetworkResponsePayload, } from './modules/network';
|
|
13
|
+
export type { DownloadBaseOptions, DownloadOptions, DownloadProgress, MiniProgramNetworkHeaders, MiniProgramNetworkModule, MiniProgramNetworkParams, MiniProgramNetworkRequestConfig, MiniProgramNetworkRequestMethod, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, NetworkRequestPayload, NetworkResponsePayload, } from './modules/network';
|
|
14
|
+
export type { CreateOptions, DirectoryHandle, FileHandle, FileMode, FileStat, FileSystem, FileSystemEntity, FilesModule, ListOptions, PathRoot, PickDirectoryOptions, PickFilesOptions, RemoveOptions, SaveFileOptions, } from './modules/files';
|
|
14
15
|
export type { HideLoadingPayload, HideLoadingResult, MiniProgramToastStatus, MiniProgramUiModule, ShowLoadingPayload, ShowLoadingResult, ShowToastPayload, ShowToastResult, } from './modules/ui';
|
|
15
16
|
export type { MiniProgramDeviceModule, MiniProgramVibrateIntensity, SetClipboardPayload, SetClipboardResult, VibratePayload, VibrateResult, } from './modules/device';
|
|
16
17
|
export type { ClosePayload, CloseResult, MiniProgramAppPageTarget, MiniProgramGameDetailGameType, MiniProgramGameDetailPage, MiniProgramNavigationModule, OpenAppPageOptions, OpenAppPagePayload, OpenAppPageResult, OpenGameDetailAppPagePayload, OpenGameDetailAppPageOptions, OpenPostDetailAppPagePayload, OpenPostDetailAppPageOptions, OpenUserDetailAppPagePayload, OpenUserDetailAppPageOptions, ReloadPayload, ReloadResult, } from './modules/navigation';
|
|
@@ -25,6 +26,7 @@ declare const hbSDK: {
|
|
|
25
26
|
share: import(".").MiniProgramShareModule;
|
|
26
27
|
viewport: import(".").MiniProgramViewportModule;
|
|
27
28
|
storage: import(".").MiniProgramStorageModule;
|
|
29
|
+
files: import(".").FilesModule;
|
|
28
30
|
network: import(".").MiniProgramNetworkModule;
|
|
29
31
|
ui: import(".").MiniProgramUiModule;
|
|
30
32
|
device: import(".").MiniProgramDeviceModule;
|
|
@@ -1 +1,4 @@
|
|
|
1
|
+
import { type ParsedMiniappPermissions } from './permissions';
|
|
1
2
|
export declare function readMiniappVersionFromPackageJson(root: string): string;
|
|
3
|
+
export declare function readMiniappPermissionsFromPackageJson(root: string, sdkVersion: string): ParsedMiniappPermissions;
|
|
4
|
+
export declare function resolveMiniappSdkVersion(): string;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type MiniProgramPermissionKey, type MiniProgramRuntimePermissionsSnapshot } from '@heybox/hb-sdk-protocol';
|
|
2
|
+
export declare const MINIAPP_PERMISSION_KEYS: readonly ["userInfo", "steamLibrary", "share", "storage", "filesystem", "clipboard", "leaderboard", "network"];
|
|
3
|
+
export type MiniappPermissionKey = MiniProgramPermissionKey;
|
|
4
|
+
export interface SimpleMiniappPermissionDeclaration {
|
|
5
|
+
enabled: true;
|
|
6
|
+
}
|
|
7
|
+
export interface NetworkMiniappPermissionDeclaration extends SimpleMiniappPermissionDeclaration {
|
|
8
|
+
useOfficialDomain: boolean;
|
|
9
|
+
}
|
|
10
|
+
export type MiniappPermissionDeclarations = Partial<Record<Exclude<MiniappPermissionKey, 'network'>, SimpleMiniappPermissionDeclaration> & {
|
|
11
|
+
network: NetworkMiniappPermissionDeclaration;
|
|
12
|
+
}>;
|
|
13
|
+
export interface ParsedMiniappPermissions {
|
|
14
|
+
declared: boolean;
|
|
15
|
+
permissions?: MiniappPermissionDeclarations;
|
|
16
|
+
}
|
|
17
|
+
export interface MiniappPermissionView {
|
|
18
|
+
key: MiniappPermissionKey;
|
|
19
|
+
access: 'declaration' | 'platform-approval';
|
|
20
|
+
declared: boolean;
|
|
21
|
+
approved: boolean | null;
|
|
22
|
+
requestedConfig?: Record<string, boolean>;
|
|
23
|
+
approvedConfig?: Record<string, boolean>;
|
|
24
|
+
effective: boolean;
|
|
25
|
+
effectiveConfig?: Record<string, boolean>;
|
|
26
|
+
}
|
|
27
|
+
export declare function parseMiniappPermissions(value: unknown, options: {
|
|
28
|
+
present: boolean;
|
|
29
|
+
sdkVersion: string;
|
|
30
|
+
sourceLabel?: string;
|
|
31
|
+
}): ParsedMiniappPermissions;
|
|
32
|
+
export declare function requiresExplicitPermissions(sdkVersion: string): boolean;
|
|
33
|
+
export declare function getMissingPermissionsWarning(sourceLabel?: string): string;
|
|
34
|
+
export declare function composeMiniappRuntimePermissions(local: ParsedMiniappPermissions, approvals: unknown): {
|
|
35
|
+
runtimePermissions: MiniProgramRuntimePermissionsSnapshot;
|
|
36
|
+
views: MiniappPermissionView[];
|
|
37
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type MiniappPermissionDeclarations } from './permissions';
|
|
1
2
|
export declare const MINIAPP_TEMPLATE_VERSION = "0.0.0";
|
|
2
3
|
export declare const MINIAPP_PLATFORM_VALUES: readonly ["android", "ios", "ohos", "windows", "macos", "linux"];
|
|
3
4
|
export type MiniappPlatform = (typeof MINIAPP_PLATFORM_VALUES)[number];
|
|
@@ -6,6 +7,7 @@ export interface MiniappManifest {
|
|
|
6
7
|
sdkVersion: string;
|
|
7
8
|
version: string;
|
|
8
9
|
platforms: readonly MiniappPlatform[];
|
|
10
|
+
permissions?: MiniappPermissionDeclarations;
|
|
9
11
|
}
|
|
10
12
|
export interface ParseMiniappManifestResult {
|
|
11
13
|
manifest: MiniappManifest;
|
|
@@ -17,6 +19,9 @@ export declare function validateMiniappManifestVersion(version: unknown, sourceL
|
|
|
17
19
|
export declare function renderMiniappManifest(manifest: MiniappManifest): string;
|
|
18
20
|
export declare function parseMiniappManifestJson(raw: string, sourceLabel?: string): ParseMiniappManifestResult;
|
|
19
21
|
export declare function validateMiniappManifestForDeploy(manifest: MiniappManifest): {
|
|
22
|
+
permissions?: Partial<Record<"storage" | "userInfo" | "steamLibrary" | "share" | "filesystem" | "clipboard" | "leaderboard", import("./permissions").SimpleMiniappPermissionDeclaration> & {
|
|
23
|
+
network: import("./permissions").NetworkMiniappPermissionDeclaration;
|
|
24
|
+
}> | undefined;
|
|
20
25
|
version: string;
|
|
21
26
|
sdkVersion: string;
|
|
22
27
|
platforms: readonly ("android" | "ios" | "ohos" | "windows" | "macos" | "linux")[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { MiniProgramRequester } from '../../core/client';
|
|
2
|
+
import type { FilesModule } from './types';
|
|
3
|
+
export type { CreateOptions, DirectoryHandle, FileHandle, FileMode, FileStat, FileSystem, FileSystemEntity, FilesModule, ListOptions, PathRoot, PickDirectoryOptions, PickFilesOptions, RemoveOptions, SaveFileOptions, } from './types';
|
|
4
|
+
/** 创建当前 SDK session 的 files 模块。 */
|
|
5
|
+
export declare function createFilesModule(requester: MiniProgramRequester): FilesModule;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { MiniProgramRequester } from '../../core/client';
|
|
2
|
+
import type { MiniProgramDirectoryDescriptor, MiniProgramDirectoryRef, MiniProgramFileDescriptor, MiniProgramFileMode, MiniProgramFileRef, MiniProgramFileSystemEntityDescriptor } from '@heybox/hb-sdk-protocol';
|
|
3
|
+
import type { DirectoryHandle, FileHandle, FileSystem, FileSystemEntity } from './types';
|
|
4
|
+
interface FileHandleState {
|
|
5
|
+
ref: MiniProgramFileRef;
|
|
6
|
+
mode: MiniProgramFileMode;
|
|
7
|
+
}
|
|
8
|
+
interface DirectoryHandleState {
|
|
9
|
+
ref: MiniProgramDirectoryRef;
|
|
10
|
+
mode: MiniProgramFileMode;
|
|
11
|
+
}
|
|
12
|
+
/** 校验并返回平台无关的 `/` 分隔逻辑相对路径。 */
|
|
13
|
+
export declare function normalizeRelativePath(value: unknown): string;
|
|
14
|
+
export declare class MiniProgramFileHandleRegistry {
|
|
15
|
+
private readonly requester;
|
|
16
|
+
private readonly fileStates;
|
|
17
|
+
private readonly directoryStates;
|
|
18
|
+
private readonly pathRootStates;
|
|
19
|
+
private sandboxRoot?;
|
|
20
|
+
constructor(requester: MiniProgramRequester);
|
|
21
|
+
getSandbox(): FileSystem;
|
|
22
|
+
createFile(descriptor: MiniProgramFileDescriptor): FileHandle;
|
|
23
|
+
createDirectFile(descriptor: MiniProgramFileDescriptor): FileHandle;
|
|
24
|
+
createDirectory(descriptor: MiniProgramDirectoryDescriptor): DirectoryHandle;
|
|
25
|
+
createDirectDirectory(descriptor: MiniProgramDirectoryDescriptor): DirectoryHandle;
|
|
26
|
+
createEntity(descriptor: MiniProgramFileSystemEntityDescriptor): FileSystemEntity;
|
|
27
|
+
requireFile(handle: unknown): FileHandleState;
|
|
28
|
+
requireDirectory(handle: unknown): DirectoryHandleState;
|
|
29
|
+
private definePathRootMethods;
|
|
30
|
+
private assertFileDescriptor;
|
|
31
|
+
private assertDirectoryDescriptor;
|
|
32
|
+
}
|
|
33
|
+
export declare function getFileHandleRegistry(requester: MiniProgramRequester): MiniProgramFileHandleRegistry;
|
|
34
|
+
export declare function isMiniProgramFileSystemValue(value: unknown): value is FileSystem | FileSystemEntity;
|
|
35
|
+
export {};
|
|
@@ -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,5 +1,6 @@
|
|
|
1
|
-
import type { MiniProgramRequester } from '../../core/client';
|
|
2
|
-
|
|
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` 请求头。 */
|
|
@@ -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
|
*
|
|
@@ -100,6 +127,24 @@ export interface MiniProgramNetworkModule {
|
|
|
100
127
|
* @hbClient macos none
|
|
101
128
|
*/
|
|
102
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>;
|
|
103
148
|
}
|
|
104
149
|
/**
|
|
105
150
|
* 发起网络请求并返回标准化响应。
|
|
@@ -123,10 +168,12 @@ export interface MiniProgramNetworkModule {
|
|
|
123
168
|
* ```
|
|
124
169
|
*/
|
|
125
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>;
|
|
126
173
|
/**
|
|
127
174
|
* 创建 network 模块。
|
|
128
175
|
*
|
|
129
176
|
* @param requester - 底层 bridge 请求能力。
|
|
130
177
|
* @returns 面向业务层的网络模块对象。
|
|
131
178
|
*/
|
|
132
|
-
export declare function createNetworkModule(requester:
|
|
179
|
+
export declare function createNetworkModule(requester: MiniProgramOperationRequester): MiniProgramNetworkModule;
|
|
@@ -6,7 +6,7 @@ export type ShowShareMenuPayload = MiniProgramShowShareMenuOptions;
|
|
|
6
6
|
/** `share.showShareMenu` 返回值由客户端协议决定。 */
|
|
7
7
|
export type ShowShareMenuResult = unknown;
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* 展示以当前小程序通用分享页为落地页的基础分享面板。
|
|
10
10
|
*
|
|
11
11
|
* @param requester - 底层 bridge 请求能力。
|
|
12
12
|
* @param options - 基础分享参数。
|
|
@@ -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
|
-
/**
|
|
36
|
-
url?: string;
|
|
37
|
-
/** 分享扩展数据;最多 8 层、单层最多 64 项、容量不超过 128 字节,且不能与 `url` 同时使用。 */
|
|
35
|
+
/** 分享扩展数据;最多 8 层、单层最多 64 项、容量不超过 128 字节。 */
|
|
38
36
|
extra?: MiniProgramShareExtraValue;
|
|
39
37
|
/** 分享缩略图 URL。 */
|
|
40
38
|
imageUrl?: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { AUTH_LOGIN_METHOD, CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_INFO_METHOD, CLOUD_LEADERBOARD_GET_LIST_METHOD, CLOUD_LEADERBOARD_SUBMIT_METHOD, DEVICE_SET_CLIPBOARD_METHOD, DEVICE_VIBRATE_METHOD, MINI_PROGRAM_PROTOCOL_CAPABILITIES, NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD, NETWORK_REQUEST_METHOD, SHARE_COPY_LINK_METHOD, SHARE_SCREENSHOT_METHOD, SHARE_SHOW_SHARE_MENU_METHOD, STORAGE_GET_STORAGE_METHOD, STORAGE_SET_STORAGE_METHOD, UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD, USER_GET_INFO_METHOD, USER_GET_STEAM_GAME_LIST_METHOD, USER_REVOKE_AUTHORIZATION_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, } from '@heybox/hb-sdk-protocol';
|
|
2
|
-
export type { MiniProgramAuthMethod, MiniProgramBridgeMethod, MiniProgramCapabilityDefinition, MiniProgramCapabilityModule, MiniProgramCapabilityPayload, MiniProgramCapabilityPayloadMap, MiniProgramCapabilityResult, MiniProgramCapabilityResultMap, MiniProgramCapabilityRisk, MiniProgramCloudMethod, MiniProgramDeviceMethod, MiniProgramNavigationMethod, MiniProgramNetworkMethod, MiniProgramShareMethod, MiniProgramStorageMethod, MiniProgramUiMethod, MiniProgramUserMethod, MiniProgramViewportMethod, } from '@heybox/hb-sdk-protocol';
|
|
1
|
+
export { AUTH_LOGIN_METHOD, CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_INFO_METHOD, CLOUD_LEADERBOARD_GET_LIST_METHOD, CLOUD_LEADERBOARD_SUBMIT_METHOD, DIRECTORY_CREATE_METHOD, DIRECTORY_EXISTS_METHOD, DIRECTORY_LIST_METHOD, DIRECTORY_REMOVE_METHOD, DEVICE_SET_CLIPBOARD_METHOD, DEVICE_VIBRATE_METHOD, FILES_PICK_DIRECTORY_METHOD, FILES_PICK_FILES_METHOD, FILES_SAVE_FILE_METHOD, FILE_CREATE_METHOD, FILE_EXISTS_METHOD, FILE_READ_BYTES_METHOD, FILE_READ_TEXT_METHOD, FILE_REMOVE_METHOD, FILE_STAT_METHOD, FILE_WRITE_BYTES_METHOD, FILE_WRITE_TEXT_METHOD, MINI_PROGRAM_PROTOCOL_CAPABILITIES, NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD, NETWORK_REQUEST_METHOD, NETWORK_DOWNLOAD_METHOD, SHARE_COPY_LINK_METHOD, SHARE_SCREENSHOT_METHOD, SHARE_SHOW_SHARE_MENU_METHOD, STORAGE_GET_STORAGE_METHOD, STORAGE_SET_STORAGE_METHOD, UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD, USER_GET_INFO_METHOD, USER_GET_STEAM_GAME_LIST_METHOD, USER_REVOKE_AUTHORIZATION_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, } from '@heybox/hb-sdk-protocol';
|
|
2
|
+
export type { MiniProgramAuthMethod, MiniProgramBridgeMethod, MiniProgramCapabilityDefinition, MiniProgramCapabilityModule, MiniProgramCapabilityPayload, MiniProgramCapabilityPayloadMap, MiniProgramCapabilityResult, MiniProgramCapabilityResultMap, MiniProgramCapabilityRisk, MiniProgramCloudMethod, MiniProgramDeviceMethod, MiniProgramDirectoryMethod, MiniProgramFileMethod, MiniProgramFilesMethod, MiniProgramNavigationMethod, MiniProgramNetworkMethod, MiniProgramShareMethod, MiniProgramStorageMethod, MiniProgramUiMethod, MiniProgramUserMethod, MiniProgramViewportMethod, } from '@heybox/hb-sdk-protocol';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { MINI_PROGRAM_BRIDGE_NONCE_PARAM, MINI_PROGRAM_MESSAGE_NAMESPACE, MINI_PROGRAM_MESSAGE_VERSION, RUNTIME_LOCATION_PROBE_METHOD, SDK_CSP_VIOLATION_METHOD, SDK_HANDSHAKE_METHOD, SDK_LOCATION_REPORT_METHOD, } from '@heybox/hb-sdk-protocol';
|
|
1
|
+
export { MINI_PROGRAM_BRIDGE_NONCE_PARAM, MINI_PROGRAM_MESSAGE_NAMESPACE, MINI_PROGRAM_MESSAGE_VERSION, MINI_PROGRAM_OPERATION_PROGRESS_METHOD, RUNTIME_LOCATION_PROBE_METHOD, SDK_CSP_VIOLATION_METHOD, SDK_HANDSHAKE_METHOD, SDK_LOCATION_REPORT_METHOD, } from '@heybox/hb-sdk-protocol';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { isMiniProgramBridgeMessage } from '@heybox/hb-sdk-protocol';
|
|
1
|
+
export { isMiniProgramBridgeMessage, isMiniProgramByteArray, isMiniProgramDirectoryDescriptor, isMiniProgramDirectoryRef, isMiniProgramDownloadProgressPayload, isMiniProgramFileDescriptor, isMiniProgramFileRef, isMiniProgramFileStat, isMiniProgramFileSystemEntityDescriptor, isMiniProgramPathRootRef, isMiniProgramRelativePath, } from '@heybox/hb-sdk-protocol';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { MiniProgramEventName, MiniProgramEventPayloadMap } from '@heybox/hb-sdk-protocol';
|
|
2
|
-
export type { MiniProgramBridgeError, MiniProgramBridgeMessage, MiniProgramBridgeMessageType, MiniProgramEventName, MiniProgramEventPayloadMap, RuntimeLocationProbePayload, SDKCSPBlockedResourceType, SDKCSPViolationPayload, SDKHandshakePayload, SDKLocationReportPayload, SDKLocationReportTrigger, } from '@heybox/hb-sdk-protocol';
|
|
2
|
+
export type { MiniProgramBridgeError, MiniProgramBridgeCancelMessage, MiniProgramBridgeMessage, MiniProgramBridgeMessageType, MiniProgramBridgeProgressMessage, MiniProgramEventName, MiniProgramEventPayloadMap, RuntimeLocationProbePayload, SDKCSPBlockedResourceType, SDKCSPViolationPayload, SDKHandshakePayload, SDKLocationReportPayload, SDKLocationReportTrigger, } from '@heybox/hb-sdk-protocol';
|
|
3
3
|
/** 小程序事件监听函数。 */
|
|
4
4
|
export type MiniProgramEventHandler<T extends MiniProgramEventName = MiniProgramEventName> = (payload: MiniProgramEventPayloadMap[T]) => void;
|
package/types/protocol.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { AUTH_LOGIN_METHOD, CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_INFO_METHOD, CLOUD_LEADERBOARD_GET_LIST_METHOD, CLOUD_LEADERBOARD_SUBMIT_METHOD, DEVICE_SET_CLIPBOARD_METHOD, DEVICE_VIBRATE_METHOD, MINI_PROGRAM_BRIDGE_NONCE_PARAM, MINI_PROGRAM_MESSAGE_NAMESPACE, MINI_PROGRAM_MESSAGE_VERSION, MINI_PROGRAM_PROTOCOL_CAPABILITIES, NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD, NETWORK_REQUEST_METHOD, RUNTIME_LOCATION_PROBE_METHOD, SDK_CSP_VIOLATION_METHOD, SDK_HANDSHAKE_METHOD, SDK_LOCATION_REPORT_METHOD, SHARE_COPY_LINK_METHOD, SHARE_SCREENSHOT_METHOD, SHARE_SHOW_SHARE_MENU_METHOD, STORAGE_GET_STORAGE_METHOD, STORAGE_SET_STORAGE_METHOD, UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD, USER_INFO_AUTHORIZATION_SCOPES, USER_GET_INFO_METHOD, USER_GET_STEAM_GAME_LIST_METHOD, USER_REVOKE_AUTHORIZATION_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, isManagedMiniProgramRuntimePermissionKey, isMiniProgramBridgeMessage, parseMiniProgramRuntimePermissions, } from '@heybox/hb-sdk-protocol';
|
|
2
|
-
export type { AuthorizedUserInfo, ClosePayload, CloseResult, CopyLinkPayload, CopyLinkResult, DeleteCurrentUserLeaderboardEntryPayload, DeleteCurrentUserLeaderboardEntryResult, GetCurrentUserLeaderboardEntryPayload, GetCurrentUserLeaderboardEntryResult, GetLeaderboardInfoPayload, GetLeaderboardInfoResult, GetLeaderboardListPayload, GetLeaderboardListResult, GetSteamGameListPayload, GetSteamGameListResult, GetStoragePayload, GetStorageResult, GetUserInfoPayload, GetUserInfoResult, GetWindowInfoPayload, GetWindowInfoResult, HideLoadingPayload, HideLoadingResult, LeaderboardEntry, LeaderboardOrder, LoginPayload, LoginResult, LoginScope, MiniProgramAuthMethod, MiniProgramBridgeError, MiniProgramBridgeMessage, MiniProgramBridgeMessageType, MiniProgramBridgeMethod, MiniProgramCapabilityDefinition, MiniProgramCapabilityModule, MiniProgramCapabilityPayload, MiniProgramCapabilityPayloadMap, MiniProgramCapabilityResult, MiniProgramCapabilityResultMap, MiniProgramCapabilityRisk, MiniProgramCloudMethod, MiniProgramDeviceMethod, MiniProgramEventName, MiniProgramEventPayloadMap, MiniProgramNavigationBarForegroundStyle, MiniProgramNavigationMethod, MiniProgramNetworkHeaders, MiniProgramNetworkMethod, MiniProgramNetworkParams, MiniProgramNetworkRequestMethod, MiniProgramRuntimePermissionEntry, MiniProgramRuntimePermissionsSnapshot, MiniProgramRuntimePermissionStatus, MiniProgramSafeArea, MiniProgramScreenshotRect, MiniProgramShareChannel, MiniProgramShareMethod, MiniProgramSharePostOptions, MiniProgramStorageMethod, MiniProgramToastStatus, MiniProgramUiMethod, MiniProgramUserInfoResult, MiniProgramUserMethod, MiniProgramVibrateIntensity, MiniProgramViewportMethod, MiniProgramWindowInfoResult, NetworkRequestPayload, NetworkResponsePayload, OpenAppPagePayload, OpenAppPageResult, OpenGameDetailAppPagePayload, OpenPostDetailAppPagePayload, OpenUserDetailAppPagePayload, ParsedMiniProgramRuntimePermissions, ReloadPayload, ReloadResult, RevokeAuthorizationPayload, RevokeAuthorizationResult, RuntimeLocationProbePayload, ScreenshotPayload, ScreenshotResult, SDKCSPBlockedResourceType, SDKCSPViolationPayload, SDKHandshakePayload, SDKLocationReportPayload, SDKLocationReportTrigger, SetClipboardPayload, SetClipboardResult, SetNavigationBarStylePayload, SetNavigationBarStyleResult, SetStoragePayload, ShowLoadingPayload, ShowLoadingResult, ShowShareMenuPayload, ShowShareMenuResult, ShowToastPayload, ShowToastResult, SteamGameListData, SteamGameListItem, SteamGameListSort, SteamGamePrice, SubmitLeaderboardEntryPayload, SubmitLeaderboardEntryResult, UserInfoAuthorization, UserInfoAuthorizationScope, UserInfoAuthorizationStatus, VibratePayload, VibrateResult, } from '@heybox/hb-sdk-protocol';
|
|
1
|
+
export { AUTH_LOGIN_METHOD, CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD, CLOUD_LEADERBOARD_GET_INFO_METHOD, CLOUD_LEADERBOARD_GET_LIST_METHOD, CLOUD_LEADERBOARD_SUBMIT_METHOD, DIRECTORY_CREATE_METHOD, DIRECTORY_EXISTS_METHOD, DIRECTORY_LIST_METHOD, DIRECTORY_REMOVE_METHOD, DEVICE_SET_CLIPBOARD_METHOD, DEVICE_VIBRATE_METHOD, FILES_PICK_DIRECTORY_METHOD, FILES_PICK_FILES_METHOD, FILES_SAVE_FILE_METHOD, FILE_CREATE_METHOD, FILE_EXISTS_METHOD, FILE_READ_BYTES_METHOD, FILE_READ_TEXT_METHOD, FILE_REMOVE_METHOD, FILE_STAT_METHOD, FILE_WRITE_BYTES_METHOD, FILE_WRITE_TEXT_METHOD, MINI_PROGRAM_BRIDGE_NONCE_PARAM, MINI_PROGRAM_MESSAGE_NAMESPACE, MINI_PROGRAM_MESSAGE_VERSION, MINI_PROGRAM_OPERATION_PROGRESS_METHOD, MINI_PROGRAM_PROTOCOL_CAPABILITIES, NAVIGATION_CLOSE_METHOD, NAVIGATION_OPEN_APP_PAGE_METHOD, NAVIGATION_RELOAD_METHOD, NETWORK_REQUEST_METHOD, NETWORK_DOWNLOAD_METHOD, RUNTIME_LOCATION_PROBE_METHOD, SDK_CSP_VIOLATION_METHOD, SDK_HANDSHAKE_METHOD, SDK_LOCATION_REPORT_METHOD, SHARE_COPY_LINK_METHOD, SHARE_SCREENSHOT_METHOD, SHARE_SHOW_SHARE_MENU_METHOD, STORAGE_GET_STORAGE_METHOD, STORAGE_SET_STORAGE_METHOD, UI_HIDE_LOADING_METHOD, UI_SHOW_LOADING_METHOD, UI_SHOW_TOAST_METHOD, USER_INFO_AUTHORIZATION_SCOPES, USER_GET_INFO_METHOD, USER_GET_STEAM_GAME_LIST_METHOD, USER_REVOKE_AUTHORIZATION_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, isManagedMiniProgramRuntimePermissionKey, isMiniProgramByteArray, isMiniProgramBridgeMessage, isMiniProgramDirectoryDescriptor, isMiniProgramDirectoryRef, isMiniProgramDownloadProgressPayload, isMiniProgramFileDescriptor, isMiniProgramFileRef, isMiniProgramFileStat, isMiniProgramFileSystemEntityDescriptor, isMiniProgramPathRootRef, isMiniProgramRelativePath, parseMiniProgramRuntimePermissions, } from '@heybox/hb-sdk-protocol';
|
|
2
|
+
export type { AuthorizedUserInfo, ClosePayload, CloseResult, CopyLinkPayload, CopyLinkResult, DirectoryCreatePayload, DirectoryCreateResult, DirectoryExistsPayload, DirectoryExistsResult, DirectoryListPayload, DirectoryListResult, DirectoryRemovePayload, DirectoryRemoveResult, DeleteCurrentUserLeaderboardEntryPayload, DeleteCurrentUserLeaderboardEntryResult, GetCurrentUserLeaderboardEntryPayload, GetCurrentUserLeaderboardEntryResult, GetLeaderboardInfoPayload, GetLeaderboardInfoResult, GetLeaderboardListPayload, GetLeaderboardListResult, GetSteamGameListPayload, GetSteamGameListResult, GetStoragePayload, GetStorageResult, GetUserInfoPayload, GetUserInfoResult, GetWindowInfoPayload, GetWindowInfoResult, DownloadProgressPayload, HideLoadingPayload, HideLoadingResult, FileCreatePayload, FileCreateResult, FileExistsPayload, FileExistsResult, FileReadBytesPayload, FileReadBytesResult, FileReadTextPayload, FileReadTextResult, FileRemovePayload, FileRemoveResult, FileStatPayload, FileStatResult, FileWriteBytesPayload, FileWriteBytesResult, FileWriteTextPayload, FileWriteTextResult, LeaderboardEntry, LeaderboardOrder, LoginPayload, LoginResult, LoginScope, MiniProgramAuthMethod, MiniProgramBridgeError, MiniProgramBridgeCancelMessage, MiniProgramBridgeMessage, MiniProgramBridgeMessageType, MiniProgramBridgeProgressMessage, MiniProgramBridgeMethod, MiniProgramCapabilityDefinition, MiniProgramCapabilityModule, MiniProgramCapabilityPayload, MiniProgramCapabilityPayloadMap, MiniProgramCapabilityResult, MiniProgramCapabilityResultMap, MiniProgramCapabilityRisk, MiniProgramCloudMethod, MiniProgramDeviceMethod, MiniProgramDirectoryDescriptor, MiniProgramDirectoryMethod, MiniProgramDirectoryRef, MiniProgramDirectDirectoryRef, MiniProgramDirectFileRef, MiniProgramEventName, MiniProgramEventPayloadMap, MiniProgramFileDescriptor, MiniProgramFileMode, MiniProgramFileMethod, MiniProgramFileRef, MiniProgramFilesMethod, MiniProgramFileStat, MiniProgramFileSystemEntityDescriptor, MiniProgramFileSystemEntityRef, MiniProgramPathRootRef, MiniProgramSandboxRootRef, MiniProgramNavigationBarForegroundStyle, MiniProgramNavigationMethod, MiniProgramNetworkHeaders, MiniProgramNetworkMethod, MiniProgramNetworkParams, MiniProgramNetworkRequestMethod, MiniProgramRuntimePermissionEntry, MiniProgramRuntimePermissionsSnapshot, MiniProgramRuntimePermissionStatus, MiniProgramSafeArea, MiniProgramScreenshotRect, MiniProgramShareChannel, MiniProgramShareMethod, MiniProgramSharePostOptions, MiniProgramStorageMethod, MiniProgramToastStatus, MiniProgramUiMethod, MiniProgramUserInfoResult, MiniProgramUserMethod, MiniProgramVibrateIntensity, MiniProgramViewportMethod, MiniProgramWindowInfoResult, NetworkRequestPayload, NetworkResponsePayload, NetworkDownloadPayload, NetworkDownloadResult, OpenAppPagePayload, OpenAppPageResult, OpenGameDetailAppPagePayload, OpenPostDetailAppPagePayload, OpenUserDetailAppPagePayload, PickDirectoryPayload, PickDirectoryResult, PickFilesPayload, PickFilesResult, ParsedMiniProgramRuntimePermissions, ReloadPayload, ReloadResult, RevokeAuthorizationPayload, RevokeAuthorizationResult, RuntimeLocationProbePayload, ScreenshotPayload, ScreenshotResult, SaveFilePayload, SaveFileResult, SDKCSPBlockedResourceType, SDKCSPViolationPayload, SDKHandshakePayload, SDKLocationReportPayload, SDKLocationReportTrigger, SetClipboardPayload, SetClipboardResult, SetNavigationBarStylePayload, SetNavigationBarStyleResult, SetStoragePayload, ShowLoadingPayload, ShowLoadingResult, ShowShareMenuPayload, ShowShareMenuResult, ShowToastPayload, ShowToastResult, SteamGameListData, SteamGameListItem, SteamGameListSort, SteamGamePrice, SubmitLeaderboardEntryPayload, SubmitLeaderboardEntryResult, UserInfoAuthorization, UserInfoAuthorizationScope, UserInfoAuthorizationStatus, VibratePayload, VibrateResult, } from '@heybox/hb-sdk-protocol';
|
|
3
3
|
export type { LoginOptions } from './modules/auth';
|
|
4
4
|
export type { GetSteamGameListOptions } from './modules/user';
|
|
5
5
|
export type { MiniProgramEventHandler } from './protocol/types';
|
|
6
|
-
export type { MiniProgramNetworkRequestConfig, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, } from './modules/network';
|
|
6
|
+
export type { DownloadBaseOptions, DownloadOptions, DownloadProgress, MiniProgramNetworkRequestConfig, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, } from './modules/network';
|
|
7
|
+
export type { CreateOptions, DirectoryHandle, FileHandle, FileMode, FileStat, FileSystem, FileSystemEntity, FilesModule, ListOptions, PathRoot, PickDirectoryOptions, PickFilesOptions, RemoveOptions, SaveFileOptions, } from './modules/files';
|
|
7
8
|
export type { MiniProgramScreenshotOptions, MiniProgramShowShareMenuOptions } from './modules/share';
|
|
8
9
|
export type { MiniProgramSetNavigationBarStyleOptions } from './modules/viewport';
|
|
@@ -1,6 +1,2 @@
|
|
|
1
1
|
export declare const HB_SDK_PACKAGE_NAME = "@heybox/hb-sdk";
|
|
2
2
|
export declare const HB_SDK_SKILL_NAME = "hb-sdk";
|
|
3
|
-
export declare const HB_SDK_AGENT_SKILLS_BASE_URL = "https://open.xiaoheihe.cn/agent-skills";
|
|
4
|
-
export declare const HB_SDK_SKILL_SOURCE = "https://open.xiaoheihe.cn/agent-skills/hb-sdk";
|
|
5
|
-
export declare const HB_SDK_SKILL_INDEX_URL = "https://open.xiaoheihe.cn/agent-skills/.well-known/agent-skills/index.json";
|
|
6
|
-
export declare const HB_SDK_SKILL_INSTALL_COMMAND = "npx skills add https://open.xiaoheihe.cn/agent-skills/hb-sdk";
|
package/types/vite/index.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { MINIAPP_PLATFORM_VALUES, type MiniappPlatform } from '../miniapp-manifest/schema';
|
|
2
2
|
export interface MiniappManifestPlugin {
|
|
3
3
|
name: string;
|
|
4
|
-
config: (config: MiniappManifestUserConfig
|
|
4
|
+
config: (config: MiniappManifestUserConfig, env?: {
|
|
5
|
+
command: 'build' | 'serve';
|
|
6
|
+
}) => MiniappManifestUserConfig | void;
|
|
5
7
|
configResolved: (resolved: MiniappManifestResolvedConfig) => void;
|
|
6
8
|
/** Rollup 在构建失败后仍会跑 closeBundle;用 buildEnd 记录真实错误,避免二次校验掩盖原因。 */
|
|
7
9
|
buildEnd: (error?: Error) => void;
|