@heybox/hb-sdk 0.7.3-alpha.2 → 0.7.4-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.
- package/CHANGELOG.md +36 -1
- package/README.md +5 -0
- package/dist/cli-chunks/{build-SCCCDtC6.cjs → build-Cej8ObyY.cjs} +2 -2
- package/dist/cli-chunks/{context-dika4R3J.cjs → context-DATgeHkI.cjs} +6 -19
- package/dist/cli-chunks/{create-DK9-wP6G.cjs → create-LXHV_lW5.cjs} +1 -1
- package/dist/cli-chunks/{dev-B0vo5N0U.cjs → dev-CDuVyGm9.cjs} +798 -139
- package/dist/cli-chunks/{doctor-BfVm18BY.cjs → doctor-BqmQrPaV.cjs} +1 -1
- package/dist/cli-chunks/{index-CXeFMwHy.cjs → index-BCd2vU5D.cjs} +24 -21
- package/dist/cli-chunks/{index-BxnwvZsl.cjs → index-Ck7X1LRP.cjs} +1 -1
- package/dist/cli-chunks/{login-DRgv4TGG.cjs → login-BLTILOf-.cjs} +2 -2
- package/dist/cli-chunks/{project-vite-BxuI2_2-.cjs → project-vite-BtIYxLkt.cjs} +1 -1
- package/dist/cli-chunks/{remote-BqHHAon9.cjs → remote-Bp9SK8C3.cjs} +4 -4
- package/dist/cli-chunks/{session-DZsk79k0.cjs → session-9ZWPGpqB.cjs} +1 -1
- package/dist/cli.cjs +1 -1
- package/dist/devtools/{mock-host → browser-dev-host}/index.html +3 -7
- package/dist/devtools/browser-dev-host/main.js +9657 -0
- package/dist/index.cjs.js +40 -118
- package/dist/index.esm.js +40 -118
- package/dist/protocol.cjs.js +71 -346
- package/dist/protocol.esm.js +72 -342
- package/dist/vite.cjs.js +1 -4
- package/dist/vite.esm.js +1 -4
- package/package.json +26 -9
- package/skill/SKILL.md +5 -5
- package/skill/references/api-protocol.md +102 -114
- package/skill/references/api-root.md +1 -1
- package/skill/references/cli.md +4 -2
- package/skill/references/safety-boundaries.md +1 -0
- package/skill/scripts/sync-references.mjs +5 -1
- package/skill/skill.json +4 -4
- package/types/core/network-sanitize.d.ts +1 -1
- package/types/modules/auth/index.d.ts +3 -1
- package/types/modules/user/types.d.ts +2 -53
- package/types/protocol/capabilities.d.ts +2 -352
- package/types/protocol/constants.d.ts +1 -14
- package/types/protocol/dev-session.d.ts +3 -3
- package/types/protocol/guards.d.ts +1 -8
- package/types/protocol/runtime-permissions.d.ts +2 -41
- package/types/protocol/types.d.ts +3 -150
- package/types/protocol.d.ts +8 -23
- package/dist/devtools/mock-host/main.js +0 -7751
- package/types/protocol/network-policy.d.ts +0 -10
- package/types/protocol/trusted-user-gesture.d.ts +0 -6
package/dist/index.cjs.js
CHANGED
|
@@ -93,7 +93,7 @@ function describeHostNetworkFailure(response) {
|
|
|
93
93
|
*
|
|
94
94
|
* @remarks
|
|
95
95
|
* 放在 `core` 而非 `modules/network`:无错误类型依赖,供 SDK 错误文案、
|
|
96
|
-
* modules observability、devtools
|
|
96
|
+
* modules observability、devtools Browser Dev Host / proxy 共用,并满足 boundary
|
|
97
97
|
*(devtools 不得直接 import runtime capability modules)。
|
|
98
98
|
*/
|
|
99
99
|
const DATA_PREVIEW_MAX_CHARS = 500;
|
|
@@ -564,21 +564,52 @@ function restoreMethod(history, name, patchedValue, original) {
|
|
|
564
564
|
}
|
|
565
565
|
}
|
|
566
566
|
|
|
567
|
-
|
|
567
|
+
const AUTH_LOGIN_METHOD = 'auth.login';
|
|
568
|
+
const USER_GET_INFO_METHOD = 'user.getInfo';
|
|
569
|
+
const USER_REVOKE_AUTHORIZATION_METHOD = 'user.revokeAuthorization';
|
|
570
|
+
const USER_GET_STEAM_GAME_LIST_METHOD = 'user.getSteamGameList';
|
|
571
|
+
const SHARE_SHOW_SHARE_MENU_METHOD = 'share.showShareMenu';
|
|
572
|
+
const SHARE_SCREENSHOT_METHOD = 'share.screenshot';
|
|
573
|
+
const VIEWPORT_GET_WINDOW_INFO_METHOD = 'viewport.getWindowInfo';
|
|
574
|
+
const VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD = 'viewport.setNavigationBarStyle';
|
|
575
|
+
const STORAGE_GET_STORAGE_METHOD = 'storage.getStorage';
|
|
576
|
+
const STORAGE_SET_STORAGE_METHOD = 'storage.setStorage';
|
|
577
|
+
const NETWORK_REQUEST_METHOD = 'network.request';
|
|
578
|
+
const UI_SHOW_TOAST_METHOD = 'ui.showToast';
|
|
579
|
+
const UI_SHOW_LOADING_METHOD = 'ui.showLoading';
|
|
580
|
+
const UI_HIDE_LOADING_METHOD = 'ui.hideLoading';
|
|
581
|
+
const DEVICE_VIBRATE_METHOD = 'device.vibrate';
|
|
582
|
+
const DEVICE_SET_CLIPBOARD_METHOD = 'device.setClipboard';
|
|
583
|
+
const NAVIGATION_CLOSE_METHOD = 'navigation.close';
|
|
584
|
+
const NAVIGATION_RELOAD_METHOD = 'navigation.reload';
|
|
585
|
+
const NAVIGATION_OPEN_APP_PAGE_METHOD = 'navigation.openAppPage';
|
|
586
|
+
const CLOUD_LEADERBOARD_SUBMIT_METHOD = 'cloud.leaderboard.submit';
|
|
587
|
+
const CLOUD_LEADERBOARD_GET_LIST_METHOD = 'cloud.leaderboard.getList';
|
|
588
|
+
const CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.getCurrentUserEntry';
|
|
589
|
+
const CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.deleteCurrentUserEntry';
|
|
590
|
+
const CLOUD_LEADERBOARD_GET_INFO_METHOD = 'cloud.leaderboard.getInfo';
|
|
591
|
+
|
|
568
592
|
const MINI_PROGRAM_MESSAGE_NAMESPACE = 'heybox:miniprogram';
|
|
569
|
-
/** 小程序沙盒通信协议版本。 */
|
|
570
593
|
const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
571
|
-
/** 父容器注入到小程序 URL 上的通信 nonce 参数名。 */
|
|
572
594
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
573
|
-
/** SDK 初始化时发给父容器的握手方法名。 */
|
|
574
595
|
const SDK_HANDSHAKE_METHOD = 'sdk.handshake';
|
|
575
|
-
/** Runtime 主动探测 SDK 当前文档地址的内部方法名。 */
|
|
576
596
|
const RUNTIME_LOCATION_PROBE_METHOD = 'runtime.location.probe';
|
|
577
|
-
/** SDK 向 Runtime 报告当前文档地址的内部方法名。 */
|
|
578
597
|
const SDK_LOCATION_REPORT_METHOD = 'sdk.location.report';
|
|
579
|
-
/** SDK 向 Runtime 报告 CSP 违规的内部方法名。 */
|
|
580
598
|
const SDK_CSP_VIOLATION_METHOD = 'sdk.csp.violation';
|
|
581
599
|
|
|
600
|
+
function isMiniProgramBridgeMessage(value) {
|
|
601
|
+
if (!value || typeof value !== 'object')
|
|
602
|
+
return false;
|
|
603
|
+
const message = value;
|
|
604
|
+
return (message.namespace === MINI_PROGRAM_MESSAGE_NAMESPACE &&
|
|
605
|
+
(message.version === 1 || message.version === 2) &&
|
|
606
|
+
typeof message.nonce === 'string' &&
|
|
607
|
+
typeof message.type === 'string');
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
/** 当前用户信息与登录能力支持的完整 scope 目录。 */
|
|
611
|
+
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile'];
|
|
612
|
+
|
|
582
613
|
/** 获取浏览器全局 window。 */
|
|
583
614
|
function getGlobalWindow() {
|
|
584
615
|
return typeof window === 'undefined' ? undefined : window;
|
|
@@ -640,24 +671,7 @@ function createMessageId() {
|
|
|
640
671
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
641
672
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
642
673
|
? undefined
|
|
643
|
-
: '0.7.
|
|
644
|
-
|
|
645
|
-
/**
|
|
646
|
-
* 判断未知数据是否符合小程序 bridge 消息信封。
|
|
647
|
-
*
|
|
648
|
-
* @param value 待判断的未知数据。
|
|
649
|
-
* @returns 当数据满足小程序 bridge 消息基础结构时返回 `true`。
|
|
650
|
-
*/
|
|
651
|
-
function isMiniProgramBridgeMessage(value) {
|
|
652
|
-
if (!value || typeof value !== 'object') {
|
|
653
|
-
return false;
|
|
654
|
-
}
|
|
655
|
-
const message = value;
|
|
656
|
-
return (message.namespace === MINI_PROGRAM_MESSAGE_NAMESPACE &&
|
|
657
|
-
(message.version === 1 || message.version === 2) &&
|
|
658
|
-
typeof message.nonce === 'string' &&
|
|
659
|
-
typeof message.type === 'string');
|
|
660
|
-
}
|
|
674
|
+
: '0.7.4-alpha.1';
|
|
661
675
|
|
|
662
676
|
const DEFAULT_TIMEOUT = 10000;
|
|
663
677
|
const HANDSHAKE_RETRY_INTERVAL = 250;
|
|
@@ -1010,95 +1024,6 @@ class MiniProgramBridgeClient {
|
|
|
1010
1024
|
}
|
|
1011
1025
|
}
|
|
1012
1026
|
|
|
1013
|
-
/**
|
|
1014
|
-
* 登录授权能力方法名。
|
|
1015
|
-
*
|
|
1016
|
-
* @remarks
|
|
1017
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1018
|
-
*/
|
|
1019
|
-
const AUTH_LOGIN_METHOD = 'auth.login';
|
|
1020
|
-
/** 读取当前登录态、授权状态和已获准披露资料的 bridge method 标识。 */
|
|
1021
|
-
const USER_GET_INFO_METHOD = 'user.getInfo';
|
|
1022
|
-
/** 撤销当前用户授予本小程序授权的 bridge method 标识。 */
|
|
1023
|
-
const USER_REVOKE_AUTHORIZATION_METHOD = 'user.revokeAuthorization';
|
|
1024
|
-
/** 读取当前已登录用户 Steam 游戏库的 bridge method 标识。 */
|
|
1025
|
-
const USER_GET_STEAM_GAME_LIST_METHOD = 'user.getSteamGameList';
|
|
1026
|
-
/**
|
|
1027
|
-
* 展示分享面板能力方法名。
|
|
1028
|
-
*
|
|
1029
|
-
* @remarks
|
|
1030
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1031
|
-
*/
|
|
1032
|
-
const SHARE_SHOW_SHARE_MENU_METHOD = 'share.showShareMenu';
|
|
1033
|
-
/**
|
|
1034
|
-
* 截图分享能力方法名。
|
|
1035
|
-
*
|
|
1036
|
-
* @remarks
|
|
1037
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1038
|
-
*/
|
|
1039
|
-
const SHARE_SCREENSHOT_METHOD = 'share.screenshot';
|
|
1040
|
-
/**
|
|
1041
|
-
* 视口窗口信息能力方法名。
|
|
1042
|
-
*
|
|
1043
|
-
* @remarks
|
|
1044
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1045
|
-
*/
|
|
1046
|
-
const VIEWPORT_GET_WINDOW_INFO_METHOD = 'viewport.getWindowInfo';
|
|
1047
|
-
/**
|
|
1048
|
-
* 设置导航栏样式能力方法名。
|
|
1049
|
-
*
|
|
1050
|
-
* @remarks
|
|
1051
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1052
|
-
*/
|
|
1053
|
-
const VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD = 'viewport.setNavigationBarStyle';
|
|
1054
|
-
/**
|
|
1055
|
-
* 读取小程序隔离 storage 能力方法名。
|
|
1056
|
-
*
|
|
1057
|
-
* @remarks
|
|
1058
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1059
|
-
*/
|
|
1060
|
-
const STORAGE_GET_STORAGE_METHOD = 'storage.getStorage';
|
|
1061
|
-
/**
|
|
1062
|
-
* 写入小程序隔离 storage 能力方法名。
|
|
1063
|
-
*
|
|
1064
|
-
* @remarks
|
|
1065
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1066
|
-
*/
|
|
1067
|
-
const STORAGE_SET_STORAGE_METHOD = 'storage.setStorage';
|
|
1068
|
-
/**
|
|
1069
|
-
* 发起网络请求能力方法名。
|
|
1070
|
-
*
|
|
1071
|
-
* @remarks
|
|
1072
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1073
|
-
*/
|
|
1074
|
-
const NETWORK_REQUEST_METHOD = 'network.request';
|
|
1075
|
-
/** 展示 toast 能力方法名。 */
|
|
1076
|
-
const UI_SHOW_TOAST_METHOD = 'ui.showToast';
|
|
1077
|
-
/** 展示全局 loading 能力方法名。 */
|
|
1078
|
-
const UI_SHOW_LOADING_METHOD = 'ui.showLoading';
|
|
1079
|
-
/** 隐藏全局 loading 能力方法名。 */
|
|
1080
|
-
const UI_HIDE_LOADING_METHOD = 'ui.hideLoading';
|
|
1081
|
-
/** 震动反馈能力方法名。 */
|
|
1082
|
-
const DEVICE_VIBRATE_METHOD = 'device.vibrate';
|
|
1083
|
-
/** 写入文本剪贴板能力方法名。 */
|
|
1084
|
-
const DEVICE_SET_CLIPBOARD_METHOD = 'device.setClipboard';
|
|
1085
|
-
/** 关闭当前小程序容器能力方法名。 */
|
|
1086
|
-
const NAVIGATION_CLOSE_METHOD = 'navigation.close';
|
|
1087
|
-
/** 重载当前小程序容器能力方法名。 */
|
|
1088
|
-
const NAVIGATION_RELOAD_METHOD = 'navigation.reload';
|
|
1089
|
-
/** 打开黑盒 App 页面能力方法名。 */
|
|
1090
|
-
const NAVIGATION_OPEN_APP_PAGE_METHOD = 'navigation.openAppPage';
|
|
1091
|
-
/** 提交当前用户排行榜分数能力方法名。 */
|
|
1092
|
-
const CLOUD_LEADERBOARD_SUBMIT_METHOD = 'cloud.leaderboard.submit';
|
|
1093
|
-
/** 读取排行榜列表能力方法名。 */
|
|
1094
|
-
const CLOUD_LEADERBOARD_GET_LIST_METHOD = 'cloud.leaderboard.getList';
|
|
1095
|
-
/** 读取当前用户排行榜记录能力方法名。 */
|
|
1096
|
-
const CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.getCurrentUserEntry';
|
|
1097
|
-
/** 删除当前用户排行榜记录能力方法名。 */
|
|
1098
|
-
const CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.deleteCurrentUserEntry';
|
|
1099
|
-
/** 读取排行榜基础信息能力方法名。 */
|
|
1100
|
-
const CLOUD_LEADERBOARD_GET_INFO_METHOD = 'cloud.leaderboard.getInfo';
|
|
1101
|
-
|
|
1102
1027
|
/** 获取短期授权码。 */
|
|
1103
1028
|
function login(requester, options) {
|
|
1104
1029
|
const payload = options?.scopes === undefined ? undefined : { scopes: options.scopes };
|
|
@@ -1473,9 +1398,6 @@ function getSteamGameList(requester, options) {
|
|
|
1473
1398
|
return requester.request(USER_GET_STEAM_GAME_LIST_METHOD, options);
|
|
1474
1399
|
}
|
|
1475
1400
|
|
|
1476
|
-
/** 当前用户信息能力支持的完整 scope 目录。新增 scope 时必须更新这里。 */
|
|
1477
|
-
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile'];
|
|
1478
|
-
|
|
1479
1401
|
function createUserModule(requester) {
|
|
1480
1402
|
return {
|
|
1481
1403
|
getInfo: () => getInfo(requester),
|
package/dist/index.esm.js
CHANGED
|
@@ -89,7 +89,7 @@ function describeHostNetworkFailure(response) {
|
|
|
89
89
|
*
|
|
90
90
|
* @remarks
|
|
91
91
|
* 放在 `core` 而非 `modules/network`:无错误类型依赖,供 SDK 错误文案、
|
|
92
|
-
* modules observability、devtools
|
|
92
|
+
* modules observability、devtools Browser Dev Host / proxy 共用,并满足 boundary
|
|
93
93
|
*(devtools 不得直接 import runtime capability modules)。
|
|
94
94
|
*/
|
|
95
95
|
const DATA_PREVIEW_MAX_CHARS = 500;
|
|
@@ -560,21 +560,52 @@ function restoreMethod(history, name, patchedValue, original) {
|
|
|
560
560
|
}
|
|
561
561
|
}
|
|
562
562
|
|
|
563
|
-
|
|
563
|
+
const AUTH_LOGIN_METHOD = 'auth.login';
|
|
564
|
+
const USER_GET_INFO_METHOD = 'user.getInfo';
|
|
565
|
+
const USER_REVOKE_AUTHORIZATION_METHOD = 'user.revokeAuthorization';
|
|
566
|
+
const USER_GET_STEAM_GAME_LIST_METHOD = 'user.getSteamGameList';
|
|
567
|
+
const SHARE_SHOW_SHARE_MENU_METHOD = 'share.showShareMenu';
|
|
568
|
+
const SHARE_SCREENSHOT_METHOD = 'share.screenshot';
|
|
569
|
+
const VIEWPORT_GET_WINDOW_INFO_METHOD = 'viewport.getWindowInfo';
|
|
570
|
+
const VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD = 'viewport.setNavigationBarStyle';
|
|
571
|
+
const STORAGE_GET_STORAGE_METHOD = 'storage.getStorage';
|
|
572
|
+
const STORAGE_SET_STORAGE_METHOD = 'storage.setStorage';
|
|
573
|
+
const NETWORK_REQUEST_METHOD = 'network.request';
|
|
574
|
+
const UI_SHOW_TOAST_METHOD = 'ui.showToast';
|
|
575
|
+
const UI_SHOW_LOADING_METHOD = 'ui.showLoading';
|
|
576
|
+
const UI_HIDE_LOADING_METHOD = 'ui.hideLoading';
|
|
577
|
+
const DEVICE_VIBRATE_METHOD = 'device.vibrate';
|
|
578
|
+
const DEVICE_SET_CLIPBOARD_METHOD = 'device.setClipboard';
|
|
579
|
+
const NAVIGATION_CLOSE_METHOD = 'navigation.close';
|
|
580
|
+
const NAVIGATION_RELOAD_METHOD = 'navigation.reload';
|
|
581
|
+
const NAVIGATION_OPEN_APP_PAGE_METHOD = 'navigation.openAppPage';
|
|
582
|
+
const CLOUD_LEADERBOARD_SUBMIT_METHOD = 'cloud.leaderboard.submit';
|
|
583
|
+
const CLOUD_LEADERBOARD_GET_LIST_METHOD = 'cloud.leaderboard.getList';
|
|
584
|
+
const CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.getCurrentUserEntry';
|
|
585
|
+
const CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.deleteCurrentUserEntry';
|
|
586
|
+
const CLOUD_LEADERBOARD_GET_INFO_METHOD = 'cloud.leaderboard.getInfo';
|
|
587
|
+
|
|
564
588
|
const MINI_PROGRAM_MESSAGE_NAMESPACE = 'heybox:miniprogram';
|
|
565
|
-
/** 小程序沙盒通信协议版本。 */
|
|
566
589
|
const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
567
|
-
/** 父容器注入到小程序 URL 上的通信 nonce 参数名。 */
|
|
568
590
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
569
|
-
/** SDK 初始化时发给父容器的握手方法名。 */
|
|
570
591
|
const SDK_HANDSHAKE_METHOD = 'sdk.handshake';
|
|
571
|
-
/** Runtime 主动探测 SDK 当前文档地址的内部方法名。 */
|
|
572
592
|
const RUNTIME_LOCATION_PROBE_METHOD = 'runtime.location.probe';
|
|
573
|
-
/** SDK 向 Runtime 报告当前文档地址的内部方法名。 */
|
|
574
593
|
const SDK_LOCATION_REPORT_METHOD = 'sdk.location.report';
|
|
575
|
-
/** SDK 向 Runtime 报告 CSP 违规的内部方法名。 */
|
|
576
594
|
const SDK_CSP_VIOLATION_METHOD = 'sdk.csp.violation';
|
|
577
595
|
|
|
596
|
+
function isMiniProgramBridgeMessage(value) {
|
|
597
|
+
if (!value || typeof value !== 'object')
|
|
598
|
+
return false;
|
|
599
|
+
const message = value;
|
|
600
|
+
return (message.namespace === MINI_PROGRAM_MESSAGE_NAMESPACE &&
|
|
601
|
+
(message.version === 1 || message.version === 2) &&
|
|
602
|
+
typeof message.nonce === 'string' &&
|
|
603
|
+
typeof message.type === 'string');
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
/** 当前用户信息与登录能力支持的完整 scope 目录。 */
|
|
607
|
+
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile'];
|
|
608
|
+
|
|
578
609
|
/** 获取浏览器全局 window。 */
|
|
579
610
|
function getGlobalWindow() {
|
|
580
611
|
return typeof window === 'undefined' ? undefined : window;
|
|
@@ -636,24 +667,7 @@ function createMessageId() {
|
|
|
636
667
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
637
668
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
638
669
|
? undefined
|
|
639
|
-
: '0.7.
|
|
640
|
-
|
|
641
|
-
/**
|
|
642
|
-
* 判断未知数据是否符合小程序 bridge 消息信封。
|
|
643
|
-
*
|
|
644
|
-
* @param value 待判断的未知数据。
|
|
645
|
-
* @returns 当数据满足小程序 bridge 消息基础结构时返回 `true`。
|
|
646
|
-
*/
|
|
647
|
-
function isMiniProgramBridgeMessage(value) {
|
|
648
|
-
if (!value || typeof value !== 'object') {
|
|
649
|
-
return false;
|
|
650
|
-
}
|
|
651
|
-
const message = value;
|
|
652
|
-
return (message.namespace === MINI_PROGRAM_MESSAGE_NAMESPACE &&
|
|
653
|
-
(message.version === 1 || message.version === 2) &&
|
|
654
|
-
typeof message.nonce === 'string' &&
|
|
655
|
-
typeof message.type === 'string');
|
|
656
|
-
}
|
|
670
|
+
: '0.7.4-alpha.1';
|
|
657
671
|
|
|
658
672
|
const DEFAULT_TIMEOUT = 10000;
|
|
659
673
|
const HANDSHAKE_RETRY_INTERVAL = 250;
|
|
@@ -1006,95 +1020,6 @@ class MiniProgramBridgeClient {
|
|
|
1006
1020
|
}
|
|
1007
1021
|
}
|
|
1008
1022
|
|
|
1009
|
-
/**
|
|
1010
|
-
* 登录授权能力方法名。
|
|
1011
|
-
*
|
|
1012
|
-
* @remarks
|
|
1013
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1014
|
-
*/
|
|
1015
|
-
const AUTH_LOGIN_METHOD = 'auth.login';
|
|
1016
|
-
/** 读取当前登录态、授权状态和已获准披露资料的 bridge method 标识。 */
|
|
1017
|
-
const USER_GET_INFO_METHOD = 'user.getInfo';
|
|
1018
|
-
/** 撤销当前用户授予本小程序授权的 bridge method 标识。 */
|
|
1019
|
-
const USER_REVOKE_AUTHORIZATION_METHOD = 'user.revokeAuthorization';
|
|
1020
|
-
/** 读取当前已登录用户 Steam 游戏库的 bridge method 标识。 */
|
|
1021
|
-
const USER_GET_STEAM_GAME_LIST_METHOD = 'user.getSteamGameList';
|
|
1022
|
-
/**
|
|
1023
|
-
* 展示分享面板能力方法名。
|
|
1024
|
-
*
|
|
1025
|
-
* @remarks
|
|
1026
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1027
|
-
*/
|
|
1028
|
-
const SHARE_SHOW_SHARE_MENU_METHOD = 'share.showShareMenu';
|
|
1029
|
-
/**
|
|
1030
|
-
* 截图分享能力方法名。
|
|
1031
|
-
*
|
|
1032
|
-
* @remarks
|
|
1033
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1034
|
-
*/
|
|
1035
|
-
const SHARE_SCREENSHOT_METHOD = 'share.screenshot';
|
|
1036
|
-
/**
|
|
1037
|
-
* 视口窗口信息能力方法名。
|
|
1038
|
-
*
|
|
1039
|
-
* @remarks
|
|
1040
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1041
|
-
*/
|
|
1042
|
-
const VIEWPORT_GET_WINDOW_INFO_METHOD = 'viewport.getWindowInfo';
|
|
1043
|
-
/**
|
|
1044
|
-
* 设置导航栏样式能力方法名。
|
|
1045
|
-
*
|
|
1046
|
-
* @remarks
|
|
1047
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1048
|
-
*/
|
|
1049
|
-
const VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD = 'viewport.setNavigationBarStyle';
|
|
1050
|
-
/**
|
|
1051
|
-
* 读取小程序隔离 storage 能力方法名。
|
|
1052
|
-
*
|
|
1053
|
-
* @remarks
|
|
1054
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1055
|
-
*/
|
|
1056
|
-
const STORAGE_GET_STORAGE_METHOD = 'storage.getStorage';
|
|
1057
|
-
/**
|
|
1058
|
-
* 写入小程序隔离 storage 能力方法名。
|
|
1059
|
-
*
|
|
1060
|
-
* @remarks
|
|
1061
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1062
|
-
*/
|
|
1063
|
-
const STORAGE_SET_STORAGE_METHOD = 'storage.setStorage';
|
|
1064
|
-
/**
|
|
1065
|
-
* 发起网络请求能力方法名。
|
|
1066
|
-
*
|
|
1067
|
-
* @remarks
|
|
1068
|
-
* 供 SDK 与父容器 runtime 共享同一 bridge method 标识。
|
|
1069
|
-
*/
|
|
1070
|
-
const NETWORK_REQUEST_METHOD = 'network.request';
|
|
1071
|
-
/** 展示 toast 能力方法名。 */
|
|
1072
|
-
const UI_SHOW_TOAST_METHOD = 'ui.showToast';
|
|
1073
|
-
/** 展示全局 loading 能力方法名。 */
|
|
1074
|
-
const UI_SHOW_LOADING_METHOD = 'ui.showLoading';
|
|
1075
|
-
/** 隐藏全局 loading 能力方法名。 */
|
|
1076
|
-
const UI_HIDE_LOADING_METHOD = 'ui.hideLoading';
|
|
1077
|
-
/** 震动反馈能力方法名。 */
|
|
1078
|
-
const DEVICE_VIBRATE_METHOD = 'device.vibrate';
|
|
1079
|
-
/** 写入文本剪贴板能力方法名。 */
|
|
1080
|
-
const DEVICE_SET_CLIPBOARD_METHOD = 'device.setClipboard';
|
|
1081
|
-
/** 关闭当前小程序容器能力方法名。 */
|
|
1082
|
-
const NAVIGATION_CLOSE_METHOD = 'navigation.close';
|
|
1083
|
-
/** 重载当前小程序容器能力方法名。 */
|
|
1084
|
-
const NAVIGATION_RELOAD_METHOD = 'navigation.reload';
|
|
1085
|
-
/** 打开黑盒 App 页面能力方法名。 */
|
|
1086
|
-
const NAVIGATION_OPEN_APP_PAGE_METHOD = 'navigation.openAppPage';
|
|
1087
|
-
/** 提交当前用户排行榜分数能力方法名。 */
|
|
1088
|
-
const CLOUD_LEADERBOARD_SUBMIT_METHOD = 'cloud.leaderboard.submit';
|
|
1089
|
-
/** 读取排行榜列表能力方法名。 */
|
|
1090
|
-
const CLOUD_LEADERBOARD_GET_LIST_METHOD = 'cloud.leaderboard.getList';
|
|
1091
|
-
/** 读取当前用户排行榜记录能力方法名。 */
|
|
1092
|
-
const CLOUD_LEADERBOARD_GET_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.getCurrentUserEntry';
|
|
1093
|
-
/** 删除当前用户排行榜记录能力方法名。 */
|
|
1094
|
-
const CLOUD_LEADERBOARD_DELETE_CURRENT_USER_ENTRY_METHOD = 'cloud.leaderboard.deleteCurrentUserEntry';
|
|
1095
|
-
/** 读取排行榜基础信息能力方法名。 */
|
|
1096
|
-
const CLOUD_LEADERBOARD_GET_INFO_METHOD = 'cloud.leaderboard.getInfo';
|
|
1097
|
-
|
|
1098
1023
|
/** 获取短期授权码。 */
|
|
1099
1024
|
function login(requester, options) {
|
|
1100
1025
|
const payload = options?.scopes === undefined ? undefined : { scopes: options.scopes };
|
|
@@ -1469,9 +1394,6 @@ function getSteamGameList(requester, options) {
|
|
|
1469
1394
|
return requester.request(USER_GET_STEAM_GAME_LIST_METHOD, options);
|
|
1470
1395
|
}
|
|
1471
1396
|
|
|
1472
|
-
/** 当前用户信息能力支持的完整 scope 目录。新增 scope 时必须更新这里。 */
|
|
1473
|
-
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile'];
|
|
1474
|
-
|
|
1475
1397
|
function createUserModule(requester) {
|
|
1476
1398
|
return {
|
|
1477
1399
|
getInfo: () => getInfo(requester),
|