@heybox/hb-sdk 0.1.3 → 0.2.0-alpha.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 (67) hide show
  1. package/README.md +149 -345
  2. package/bin/hb-sdk.cjs +3 -0
  3. package/dist/cli.cjs +10117 -0
  4. package/dist/devtools/mock-host/index.html +252 -0
  5. package/dist/devtools/mock-host/main.js +975 -0
  6. package/dist/index.cjs.js +474 -85
  7. package/dist/index.esm.js +465 -71
  8. package/dist/protocol.cjs.js +163 -0
  9. package/dist/protocol.esm.js +148 -0
  10. package/dist/templates/vue3-vite-ts/.gitignore.ejs +5 -0
  11. package/dist/templates/vue3-vite-ts/README.md.ejs +42 -0
  12. package/dist/templates/vue3-vite-ts/index.html.ejs +12 -0
  13. package/dist/templates/vue3-vite-ts/package.json.ejs +28 -0
  14. package/dist/templates/vue3-vite-ts/src/App.vue +63 -0
  15. package/dist/templates/vue3-vite-ts/src/__tests__/App.spec.ts +67 -0
  16. package/dist/templates/vue3-vite-ts/src/main.ts +5 -0
  17. package/dist/templates/vue3-vite-ts/src/styles.css +60 -0
  18. package/dist/templates/vue3-vite-ts/src/vite-env.d.ts +1 -0
  19. package/dist/templates/vue3-vite-ts/tsconfig.app.json +17 -0
  20. package/dist/templates/vue3-vite-ts/tsconfig.json +11 -0
  21. package/dist/templates/vue3-vite-ts/tsconfig.node.json +11 -0
  22. package/dist/templates/vue3-vite-ts/vite.config.ts +6 -0
  23. package/dist/templates/vue3-vite-ts/vitest.config.ts +10 -0
  24. package/package.json +30 -5
  25. package/skill/SKILL.md +95 -0
  26. package/skill/references/api-protocol.md +135 -0
  27. package/skill/references/api-root.md +346 -0
  28. package/skill/references/cli.md +360 -0
  29. package/skill/references/examples.md +107 -0
  30. package/skill/references/llms-index.md +44 -0
  31. package/skill/references/recipes.md +374 -0
  32. package/skill/references/safety-boundaries.md +28 -0
  33. package/skill/references/smoke-evaluation.md +24 -0
  34. package/skill/scripts/check-references.mjs +14 -0
  35. package/skill/scripts/package-skill.mjs +60 -0
  36. package/skill/scripts/package-skill.sh +6 -0
  37. package/skill/scripts/skill-metadata.mjs +74 -0
  38. package/skill/scripts/sync-references.mjs +541 -0
  39. package/skill/scripts/validate-skill.mjs +233 -0
  40. package/skill/skill.json +11 -0
  41. package/types/core/client.d.ts +23 -3
  42. package/types/core/errors.d.ts +45 -2
  43. package/types/core/sdk.d.ts +78 -10
  44. package/types/core/singleton.d.ts +33 -7
  45. package/types/core/utils.d.ts +2 -0
  46. package/types/index.d.ts +14 -6
  47. package/types/modules/auth/index.d.ts +35 -0
  48. package/types/modules/network/index.d.ts +120 -0
  49. package/types/modules/share/index.d.ts +9 -5
  50. package/types/modules/share/screenshot.d.ts +9 -3
  51. package/types/modules/share/show-share-menu.d.ts +9 -3
  52. package/types/modules/share/types.d.ts +24 -4
  53. package/types/modules/storage/index.d.ts +56 -0
  54. package/types/modules/user/get-info.d.ts +6 -2
  55. package/types/modules/user/index.d.ts +8 -10
  56. package/types/modules/user/types.d.ts +1 -0
  57. package/types/modules/viewport/index.d.ts +71 -0
  58. package/types/protocol/capabilities.d.ts +180 -0
  59. package/types/protocol/guards.d.ts +6 -1
  60. package/types/protocol/types.d.ts +19 -4
  61. package/types/protocol.d.ts +13 -0
  62. package/types/modules/system/get-storage.d.ts +0 -15
  63. package/types/modules/system/get-window-info.d.ts +0 -16
  64. package/types/modules/system/index.d.ts +0 -23
  65. package/types/modules/system/set-storage.d.ts +0 -12
  66. package/types/modules/system/types.d.ts +0 -34
  67. package/types/modules/user/login.d.ts +0 -18
@@ -0,0 +1,13 @@
1
+ export { MINI_PROGRAM_BRIDGE_NONCE_PARAM, MINI_PROGRAM_MESSAGE_NAMESPACE, MINI_PROGRAM_MESSAGE_VERSION, SDK_HANDSHAKE_METHOD, } from './protocol/constants';
2
+ export { isMiniProgramBridgeMessage } from './protocol/guards';
3
+ export type { MiniProgramBridgeError, MiniProgramBridgeMessage, MiniProgramBridgeMessageType, MiniProgramEventHandler, MiniProgramEventName, MiniProgramEventPayloadMap, } from './protocol/types';
4
+ export { AUTH_LOGIN_METHOD, MINI_PROGRAM_PROTOCOL_CAPABILITIES, NETWORK_REQUEST_METHOD, SHARE_SCREENSHOT_METHOD, SHARE_SHOW_SHARE_MENU_METHOD, STORAGE_GET_STORAGE_METHOD, STORAGE_SET_STORAGE_METHOD, USER_GET_INFO_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, } from './protocol/capabilities';
5
+ export type { MiniProgramAuthMethod, MiniProgramBridgeMethod, MiniProgramCapabilityDefinition, MiniProgramCapabilityModule, MiniProgramCapabilityPayload, MiniProgramCapabilityPayloadMap, MiniProgramCapabilityResult, MiniProgramCapabilityResultMap, MiniProgramCapabilityRisk, MiniProgramNetworkMethod, MiniProgramShareMethod, MiniProgramStorageMethod, MiniProgramUserMethod, MiniProgramViewportMethod, } from './protocol/capabilities';
6
+ export type { LoginPayload, LoginResult } from './modules/auth';
7
+ export type { GetUserInfoPayload, GetUserInfoResult, MiniProgramUserInfo, MiniProgramUserInfoResult, } from './modules/user';
8
+ export type { ScreenshotPayload, ScreenshotResult } from './modules/share/screenshot';
9
+ export type { ShowShareMenuPayload, ShowShareMenuResult } from './modules/share/show-share-menu';
10
+ export type { MiniProgramScreenshotOptions, MiniProgramScreenshotRect, MiniProgramShareChannel, MiniProgramShowShareMenuOptions, } from './modules/share';
11
+ export type { GetStoragePayload, GetStorageResult, SetStoragePayload, } from './modules/storage';
12
+ export type { GetWindowInfoPayload, GetWindowInfoResult, MiniProgramSafeArea, MiniProgramWindowInfoResult, } from './modules/viewport';
13
+ export type { MiniProgramNetworkHeaders, MiniProgramNetworkParams, MiniProgramNetworkRequestConfig, MiniProgramNetworkRequestMethod, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, NetworkRequestPayload, NetworkResponsePayload, } from './modules/network';
@@ -1,15 +0,0 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- /** 获取小程序隔离 storage 能力方法名。 */
3
- export declare const SYSTEM_GET_STORAGE_METHOD: "system.getStorage";
4
- /** `system.getStorage` 入参。 */
5
- export interface GetStoragePayload {
6
- /** storage key。 */
7
- key: string;
8
- }
9
- /** `system.getStorage` 返回值。 */
10
- export interface GetStorageResult<T = unknown> {
11
- /** key 对应的数据;不存在时为 undefined。 */
12
- data: T | undefined;
13
- }
14
- /** 获取小程序隔离 storage。 */
15
- export declare function getStorage<T = unknown>(requester: MiniProgramRequester, options: GetStoragePayload): Promise<GetStorageResult<T>>;
@@ -1,16 +0,0 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- import type { MiniProgramWindowInfoResult } from './types';
3
- /** 系统窗口信息能力方法名。 */
4
- export declare const SYSTEM_GET_WINDOW_INFO_METHOD: "system.getWindowInfo";
5
- /**
6
- * `system.getWindowInfo` 不需要入参。
7
- */
8
- export type GetWindowInfoPayload = void;
9
- /**
10
- * `system.getWindowInfo` 返回当前小程序可用窗口信息。
11
- */
12
- export type GetWindowInfoResult = MiniProgramWindowInfoResult;
13
- /**
14
- * 获取当前小程序窗口信息。
15
- */
16
- export declare function getWindowInfo(requester: MiniProgramRequester): Promise<GetWindowInfoResult>;
@@ -1,23 +0,0 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- import { SYSTEM_GET_WINDOW_INFO_METHOD, type GetWindowInfoResult } from './get-window-info';
3
- import { SYSTEM_GET_STORAGE_METHOD, type GetStoragePayload, type GetStorageResult } from './get-storage';
4
- import { SYSTEM_SET_STORAGE_METHOD, type SetStoragePayload } from './set-storage';
5
- export * from './get-window-info';
6
- export * from './get-storage';
7
- export * from './set-storage';
8
- export * from './types';
9
- /** 系统模块开放的方法名。 */
10
- export type MiniProgramSystemMethod = typeof SYSTEM_GET_WINDOW_INFO_METHOD | typeof SYSTEM_GET_STORAGE_METHOD | typeof SYSTEM_SET_STORAGE_METHOD;
11
- /** 外部小程序可调用的系统模块。 */
12
- export interface MiniProgramSystemModule {
13
- /**
14
- * 获取当前小程序窗口信息。
15
- */
16
- getWindowInfo(): Promise<GetWindowInfoResult>;
17
- /** 获取小程序隔离 storage。 */
18
- getStorage<T = unknown>(options: GetStoragePayload): Promise<GetStorageResult<T>>;
19
- /** 写入小程序隔离 storage。 */
20
- setStorage(options: SetStoragePayload): Promise<void>;
21
- }
22
- /** 创建系统模块。 */
23
- export declare function createSystemModule(requester: MiniProgramRequester): MiniProgramSystemModule;
@@ -1,12 +0,0 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- /** 写入小程序隔离 storage 能力方法名。 */
3
- export declare const SYSTEM_SET_STORAGE_METHOD: "system.setStorage";
4
- /** `system.setStorage` 入参。 */
5
- export interface SetStoragePayload {
6
- /** storage key。 */
7
- key: string;
8
- /** 需要写入的数据。 */
9
- data: unknown;
10
- }
11
- /** 写入小程序隔离 storage。 */
12
- export declare function setStorage(requester: MiniProgramRequester, options: SetStoragePayload): Promise<void>;
@@ -1,34 +0,0 @@
1
- /** 小程序安全区域信息。 */
2
- export interface MiniProgramSafeArea {
3
- /** 安全区域左上角横坐标。 */
4
- left: number;
5
- /** 安全区域右下角横坐标。 */
6
- right: number;
7
- /** 安全区域左上角纵坐标。 */
8
- top: number;
9
- /** 安全区域右下角纵坐标。 */
10
- bottom: number;
11
- /** 安全区域宽度,单位 px。 */
12
- width: number;
13
- /** 安全区域高度,单位 px。 */
14
- height: number;
15
- }
16
- /** 小程序窗口信息。 */
17
- export interface MiniProgramWindowInfoResult {
18
- /** 设备像素比。 */
19
- pixelRatio: number;
20
- /** 屏幕宽度,单位 px。 */
21
- screenWidth: number;
22
- /** 屏幕高度,单位 px。 */
23
- screenHeight: number;
24
- /** 可使用窗口宽度,单位 px。 */
25
- windowWidth: number;
26
- /** 可使用窗口高度,单位 px。 */
27
- windowHeight: number;
28
- /** 状态栏高度;黑盒环境按顶部可用偏移兼容。 */
29
- statusBarHeight: number;
30
- /** 安全区域。 */
31
- safeArea: MiniProgramSafeArea;
32
- /** 窗口上边缘的 y 值。 */
33
- screenTop: number;
34
- }
@@ -1,18 +0,0 @@
1
- import type { MiniProgramRequester } from '../../core/client';
2
- import type { MiniProgramUserInfoResult } from './types';
3
- /** 用户登录能力方法名。 */
4
- export declare const USER_LOGIN_METHOD: "user.login";
5
- /**
6
- * `user.login` 不需要入参。
7
- */
8
- export type LoginPayload = void;
9
- /**
10
- * `user.login` 返回登录流程结束后的最新用户登录态与公开基础资料。
11
- */
12
- export type LoginResult = MiniProgramUserInfoResult;
13
- /**
14
- * 唤起黑盒登录流程,并在流程返回后刷新用户公开基础资料。
15
- *
16
- * 该能力不会向小程序暴露 token、cookie 或任何登录凭据。
17
- */
18
- export declare function login(requester: MiniProgramRequester): Promise<LoginResult>;