@heybox/hb-sdk 0.8.3-alpha.2 → 0.8.3-alpha.4
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 +32 -0
- package/README.md +45 -7
- package/dist/cli-chunks/{build-lnIkF-rf.cjs → build-CkPA6jAR.cjs} +5 -5
- package/dist/cli-chunks/{context-DAdousk7.cjs → context-DoVGwJek.cjs} +35 -8
- package/dist/cli-chunks/{create-BrH3TKd9.cjs → create-vFF2Au_f.cjs} +1 -1
- package/dist/cli-chunks/{dev-Dazm6mjQ.cjs → dev-5lkHU1uv.cjs} +194 -73
- package/dist/cli-chunks/{doctor-Dqju9vZQ.cjs → doctor-DFt0LWou.cjs} +1 -1
- package/dist/cli-chunks/{index-ZxzVU017.cjs → index-CguXMrgP.cjs} +2 -2
- package/dist/cli-chunks/{index-Cscd6hCr.cjs → index-Ol4wxcob.cjs} +15 -15
- package/dist/cli-chunks/{index.esm-BPF3ML9J.cjs → index.esm-DUvvFi-Z.cjs} +7 -7
- package/dist/cli-chunks/{login-CR8vCqdL.cjs → login-CA5BhdXd.cjs} +2 -2
- package/dist/cli-chunks/{project-vite-C0fvgvWp.cjs → project-vite-P09pYZoU.cjs} +1 -1
- package/dist/cli-chunks/{remote-CZBw05sT.cjs → remote-DU0f2mlK.cjs} +36 -9
- package/dist/cli-chunks/{runtime-gate-CCyvzllG.cjs → runtime-gate-Ay8_t7m0.cjs} +1 -1
- package/dist/cli-chunks/{runtime-permission-env-v9THnMre.cjs → runtime-permission-env-C0clU7_f.cjs} +119 -6
- package/dist/cli-chunks/{session-UhAizNH0.cjs → session-2vOGqgeA.cjs} +1 -1
- package/dist/cli-chunks/{skill-BxL6KOYN.cjs → skill-D5Pf0dxT.cjs} +2 -2
- package/dist/cli-chunks/{version-B-iUWMkU.cjs → version-CF6ilsAH.cjs} +1 -1
- package/dist/cli.cjs +1 -1
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-D6g0uewc.js +101 -0
- package/dist/devtools/browser-dev-host/assets/{desktop-app-launch-B1QBmFTk.js → desktop-app-launch-Cku9Fxud.js} +3 -3
- package/dist/devtools/browser-dev-host/assets/index-BrXEMo2-.css +1 -0
- package/dist/devtools/browser-dev-host/assets/{index-DWFHHorU.js → index-CVARuXxw.js} +4 -4
- package/dist/devtools/browser-dev-host/index.html +3 -3
- package/dist/index.cjs.js +32 -16
- package/dist/index.esm.js +32 -16
- package/dist/protocol.cjs.js +29 -20
- package/dist/protocol.esm.js +29 -21
- package/dist/vite.cjs.js +3 -3
- package/dist/vite.esm.js +3 -3
- package/docs/runtime-host-migration.md +5 -3
- package/package.json +6 -6
- package/skill/skill.json +4 -4
- package/types/index.d.ts +2 -2
- package/types/modules/viewport/index.d.ts +33 -2
- package/types/protocol/capabilities.d.ts +1 -1
- package/types/protocol/dev-session.d.ts +13 -2
- package/types/protocol.d.ts +2 -2
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-BKVURp-m.js +0 -101
- package/dist/devtools/browser-dev-host/assets/index-D-cRoNV5.css +0 -1
package/dist/protocol.esm.js
CHANGED
|
@@ -36,6 +36,7 @@ const USER_GET_STEAM_GAME_LIST_METHOD = 'user.getSteamGameList';
|
|
|
36
36
|
const SHARE_COPY_LINK_METHOD = 'share.copyLink';
|
|
37
37
|
const SHARE_SHOW_SHARE_MENU_METHOD = 'share.showShareMenu';
|
|
38
38
|
const SHARE_SCREENSHOT_METHOD = 'share.screenshot';
|
|
39
|
+
const VIEWPORT_SET_DISPLAY_METHOD = 'viewport.setDisplay';
|
|
39
40
|
const VIEWPORT_GET_WINDOW_INFO_METHOD = 'viewport.getWindowInfo';
|
|
40
41
|
const VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD = 'viewport.setNavigationBarStyle';
|
|
41
42
|
const STORAGE_GET_STORAGE_METHOD = 'storage.getStorage';
|
|
@@ -159,6 +160,13 @@ const MINI_PROGRAM_PROTOCOL_CAPABILITIES = [
|
|
|
159
160
|
requirement: { kind: 'none' },
|
|
160
161
|
risk: 'low',
|
|
161
162
|
},
|
|
163
|
+
{
|
|
164
|
+
method: VIEWPORT_SET_DISPLAY_METHOD,
|
|
165
|
+
module: 'viewport',
|
|
166
|
+
capability: VIEWPORT_SET_DISPLAY_METHOD,
|
|
167
|
+
requirement: { kind: 'none' },
|
|
168
|
+
risk: 'low',
|
|
169
|
+
},
|
|
162
170
|
{
|
|
163
171
|
method: STORAGE_GET_STORAGE_METHOD,
|
|
164
172
|
module: 'storage',
|
|
@@ -434,7 +442,7 @@ const MINI_PROGRAM_PROTOCOL_CAPABILITIES = [
|
|
|
434
442
|
* @see [parseMiniProgramRuntimePermissions](/reference/symbols/protocol/functions/parseMiniProgramRuntimePermissions) Runtime 权限快照解析器。
|
|
435
443
|
*/
|
|
436
444
|
function isMiniProgramBridgeMessage(value) {
|
|
437
|
-
if (!isRecord$
|
|
445
|
+
if (!isRecord$3(value))
|
|
438
446
|
return false;
|
|
439
447
|
if (value.namespace !== MINI_PROGRAM_MESSAGE_NAMESPACE || (value.version !== 1 && value.version !== 2) || !isNonEmptyString$1(value.nonce)) {
|
|
440
448
|
return false;
|
|
@@ -584,7 +592,7 @@ function isMiniProgramRelativePath(value) {
|
|
|
584
592
|
* @see [DirectoryHandle](/reference/symbols/root/interfaces/DirectoryHandle) 可作为 derived path root 的目录代理。
|
|
585
593
|
*/
|
|
586
594
|
function isMiniProgramPathRootRef(value) {
|
|
587
|
-
if (!isRecord$
|
|
595
|
+
if (!isRecord$3(value))
|
|
588
596
|
return false;
|
|
589
597
|
if (value.kind === 'sandbox')
|
|
590
598
|
return hasOnlyKeys(value, ['kind']);
|
|
@@ -650,7 +658,7 @@ function isMiniProgramPathRootRef(value) {
|
|
|
650
658
|
* @see [FileHandle](/reference/symbols/root/interfaces/FileHandle) 使用文件引用的公开 I/O 代理。
|
|
651
659
|
*/
|
|
652
660
|
function isMiniProgramFileRef(value) {
|
|
653
|
-
if (!isRecord$
|
|
661
|
+
if (!isRecord$3(value) || value.kind !== 'file')
|
|
654
662
|
return false;
|
|
655
663
|
if (isNonEmptyString$1(value.handleId)) {
|
|
656
664
|
return hasOnlyKeys(value, ['kind', 'handleId']);
|
|
@@ -717,7 +725,7 @@ function isMiniProgramFileRef(value) {
|
|
|
717
725
|
* @see [DirectoryHandle](/reference/symbols/root/interfaces/DirectoryHandle) 使用目录引用的公开路径操作代理。
|
|
718
726
|
*/
|
|
719
727
|
function isMiniProgramDirectoryRef(value) {
|
|
720
|
-
if (!isRecord$
|
|
728
|
+
if (!isRecord$3(value) || value.kind !== 'directory')
|
|
721
729
|
return false;
|
|
722
730
|
if (isNonEmptyString$1(value.handleId)) {
|
|
723
731
|
return hasOnlyKeys(value, ['kind', 'handleId']);
|
|
@@ -791,7 +799,7 @@ function isMiniProgramDirectoryRef(value) {
|
|
|
791
799
|
* @see [SaveFileResult](/reference/symbols/protocol/types/SaveFileResult) save picker 的 direct-ref 文件结果。
|
|
792
800
|
*/
|
|
793
801
|
function isMiniProgramFileDescriptor(value) {
|
|
794
|
-
return (isRecord$
|
|
802
|
+
return (isRecord$3(value) &&
|
|
795
803
|
value.kind === 'file' &&
|
|
796
804
|
isNonEmptyString$1(value.name) &&
|
|
797
805
|
isFileMode(value.mode) &&
|
|
@@ -861,7 +869,7 @@ function isMiniProgramFileDescriptor(value) {
|
|
|
861
869
|
* @see [PickDirectoryResult](/reference/symbols/protocol/types/PickDirectoryResult) picker 的 direct-ref 返回契约。
|
|
862
870
|
*/
|
|
863
871
|
function isMiniProgramDirectoryDescriptor(value) {
|
|
864
|
-
return (isRecord$
|
|
872
|
+
return (isRecord$3(value) &&
|
|
865
873
|
value.kind === 'directory' &&
|
|
866
874
|
isNonEmptyString$1(value.name) &&
|
|
867
875
|
isFileMode(value.mode) &&
|
|
@@ -1040,7 +1048,7 @@ function isMiniProgramByteArray(value) {
|
|
|
1040
1048
|
* @see [FileHandle](/reference/symbols/root/interfaces/FileHandle) 提供 `stat()` 的当前 session 文件代理。
|
|
1041
1049
|
*/
|
|
1042
1050
|
function isMiniProgramFileStat(value) {
|
|
1043
|
-
return (isRecord$
|
|
1051
|
+
return (isRecord$3(value) &&
|
|
1044
1052
|
value.kind === 'file' &&
|
|
1045
1053
|
isNonNegativeSafeInteger(value.size) &&
|
|
1046
1054
|
(value.modifiedAt === undefined || isNonNegativeFiniteNumber(value.modifiedAt)) &&
|
|
@@ -1100,7 +1108,7 @@ function isMiniProgramFileStat(value) {
|
|
|
1100
1108
|
* @see [isMiniProgramBridgeMessage](/reference/symbols/protocol/functions/isMiniProgramBridgeMessage) operation progress envelope 的最低校验。
|
|
1101
1109
|
*/
|
|
1102
1110
|
function isMiniProgramDownloadProgressPayload(value) {
|
|
1103
|
-
if (!isRecord$
|
|
1111
|
+
if (!isRecord$3(value) ||
|
|
1104
1112
|
!isNonNegativeSafeInteger(value.loaded) ||
|
|
1105
1113
|
typeof value.lengthComputable !== 'boolean' ||
|
|
1106
1114
|
!hasOnlyKeys(value, ['loaded', 'total', 'lengthComputable'])) {
|
|
@@ -1111,7 +1119,7 @@ function isMiniProgramDownloadProgressPayload(value) {
|
|
|
1111
1119
|
return isNonNegativeSafeInteger(value.total) && value.loaded <= value.total;
|
|
1112
1120
|
}
|
|
1113
1121
|
function isMiniProgramCompanionPrepareProgress(value) {
|
|
1114
|
-
if (!isRecord$
|
|
1122
|
+
if (!isRecord$3(value))
|
|
1115
1123
|
return false;
|
|
1116
1124
|
if (value.phase === 'downloading') {
|
|
1117
1125
|
return (isNonNegativeSafeInteger(value.loaded) &&
|
|
@@ -1129,10 +1137,10 @@ function isMiniProgramOperationProgressPayload(value) {
|
|
|
1129
1137
|
return isMiniProgramDownloadProgressPayload(value) || isMiniProgramCompanionPrepareProgress(value);
|
|
1130
1138
|
}
|
|
1131
1139
|
function isSDKHandshakePayload(value) {
|
|
1132
|
-
return isRecord$
|
|
1140
|
+
return isRecord$3(value) && isNonEmptyString$1(value.href) && typeof value.userAgent === 'string' && isNonEmptyString$1(value.sdkVersion);
|
|
1133
1141
|
}
|
|
1134
1142
|
function isBridgeError(value) {
|
|
1135
|
-
return isRecord$
|
|
1143
|
+
return isRecord$3(value) && isNonEmptyString$1(value.code) && typeof value.message === 'string';
|
|
1136
1144
|
}
|
|
1137
1145
|
function isFileMode(value) {
|
|
1138
1146
|
return value === 'read' || value === 'readwrite';
|
|
@@ -1150,13 +1158,10 @@ function hasOnlyKeys(value, allowedKeys) {
|
|
|
1150
1158
|
const allowed = new Set(allowedKeys);
|
|
1151
1159
|
return Object.keys(value).every((key) => allowed.has(key));
|
|
1152
1160
|
}
|
|
1153
|
-
function isRecord$
|
|
1161
|
+
function isRecord$3(value) {
|
|
1154
1162
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
1155
1163
|
}
|
|
1156
1164
|
|
|
1157
|
-
/** 当前用户信息与登录能力支持的完整 scope 目录(canonical 顺序)。 */
|
|
1158
|
-
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile', 'steam_account'];
|
|
1159
|
-
|
|
1160
1165
|
const MINI_PROGRAM_PERMISSION_KEYS = [
|
|
1161
1166
|
'userInfo',
|
|
1162
1167
|
'steamLibrary',
|
|
@@ -1300,7 +1305,7 @@ function isManagedMiniProgramRuntimePermissionKey(key) {
|
|
|
1300
1305
|
* @see {@link https://docs.xiaoheihe.cn/hb_sdk/guide/permissions | 权限声明}
|
|
1301
1306
|
*/
|
|
1302
1307
|
function parseMiniProgramRuntimePermissions(snapshot) {
|
|
1303
|
-
if (!isRecord(snapshot) || snapshot.schema_version !== 1 || !Array.isArray(snapshot.entries)) {
|
|
1308
|
+
if (!isRecord$2(snapshot) || snapshot.schema_version !== 1 || !Array.isArray(snapshot.entries)) {
|
|
1304
1309
|
return { valid: false, permissions: {} };
|
|
1305
1310
|
}
|
|
1306
1311
|
if (snapshot.revision !== undefined && (typeof snapshot.revision !== 'number' || !Number.isInteger(snapshot.revision) || snapshot.revision < 0)) {
|
|
@@ -1309,7 +1314,7 @@ function parseMiniProgramRuntimePermissions(snapshot) {
|
|
|
1309
1314
|
const seenKeys = new Set();
|
|
1310
1315
|
const permissions = {};
|
|
1311
1316
|
for (const rawEntry of snapshot.entries) {
|
|
1312
|
-
if (!isRecord(rawEntry) || typeof rawEntry.key !== 'string' || !rawEntry.key.trim()) {
|
|
1317
|
+
if (!isRecord$2(rawEntry) || typeof rawEntry.key !== 'string' || !rawEntry.key.trim()) {
|
|
1313
1318
|
return { valid: false, permissions: {} };
|
|
1314
1319
|
}
|
|
1315
1320
|
const inputKey = rawEntry.key.trim();
|
|
@@ -1325,7 +1330,7 @@ function parseMiniProgramRuntimePermissions(snapshot) {
|
|
|
1325
1330
|
}
|
|
1326
1331
|
if (key === 'network') {
|
|
1327
1332
|
const config = rawEntry.config;
|
|
1328
|
-
if (!isRecord(config) || typeof config.useOfficialDomain !== 'boolean') {
|
|
1333
|
+
if (!isRecord$2(config) || typeof config.useOfficialDomain !== 'boolean') {
|
|
1329
1334
|
return { valid: false, permissions: {} };
|
|
1330
1335
|
}
|
|
1331
1336
|
permissions[key] = {
|
|
@@ -1335,7 +1340,7 @@ function parseMiniProgramRuntimePermissions(snapshot) {
|
|
|
1335
1340
|
};
|
|
1336
1341
|
continue;
|
|
1337
1342
|
}
|
|
1338
|
-
if (rawEntry.config !== null && rawEntry.config !== undefined && (!isRecord(rawEntry.config) || Object.keys(rawEntry.config).length > 0)) {
|
|
1343
|
+
if (rawEntry.config !== null && rawEntry.config !== undefined && (!isRecord$2(rawEntry.config) || Object.keys(rawEntry.config).length > 0)) {
|
|
1339
1344
|
return { valid: false, permissions: {} };
|
|
1340
1345
|
}
|
|
1341
1346
|
permissions[key] = {
|
|
@@ -1346,8 +1351,11 @@ function parseMiniProgramRuntimePermissions(snapshot) {
|
|
|
1346
1351
|
}
|
|
1347
1352
|
return { valid: true, permissions };
|
|
1348
1353
|
}
|
|
1349
|
-
function isRecord(value) {
|
|
1354
|
+
function isRecord$2(value) {
|
|
1350
1355
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
1351
1356
|
}
|
|
1352
1357
|
|
|
1353
|
-
|
|
1358
|
+
/** 当前用户信息与登录能力支持的完整 scope 目录(canonical 顺序)。 */
|
|
1359
|
+
const USER_INFO_AUTHORIZATION_SCOPES = ['identity', 'profile', 'steam_account'];
|
|
1360
|
+
|
|
1361
|
+
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, DIRECTORY_CREATE_METHOD, DIRECTORY_EXISTS_METHOD, DIRECTORY_LIST_METHOD, DIRECTORY_REMOVE_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_DOWNLOAD_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_GET_INFO_METHOD, USER_GET_STEAM_GAME_LIST_METHOD, USER_INFO_AUTHORIZATION_SCOPES, USER_REVOKE_AUTHORIZATION_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_DISPLAY_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, isManagedMiniProgramRuntimePermissionKey, isMiniProgramBridgeMessage, isMiniProgramByteArray, isMiniProgramDirectoryDescriptor, isMiniProgramDirectoryRef, isMiniProgramDownloadProgressPayload, isMiniProgramFileDescriptor, isMiniProgramFileRef, isMiniProgramFileStat, isMiniProgramFileSystemEntityDescriptor, isMiniProgramPathRootRef, isMiniProgramRelativePath, parseMiniProgramRuntimePermissions };
|
package/dist/vite.cjs.js
CHANGED
|
@@ -2948,7 +2948,7 @@ async function ensureBasicInfoDirectory(rootPath, relative) {
|
|
|
2948
2948
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
2949
2949
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
2950
2950
|
? undefined
|
|
2951
|
-
: '0.8.3-alpha.
|
|
2951
|
+
: '0.8.3-alpha.4';
|
|
2952
2952
|
|
|
2953
2953
|
/**
|
|
2954
2954
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
@@ -3377,8 +3377,6 @@ const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
|
3377
3377
|
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3378
3378
|
*/
|
|
3379
3379
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
3380
|
-
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3381
|
-
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
3382
3380
|
|
|
3383
3381
|
const MINI_PROGRAM_PERMISSION_KEYS = [
|
|
3384
3382
|
'userInfo',
|
|
@@ -3529,6 +3527,8 @@ const MINI_PROGRAM_PERMISSION_CATALOG = [
|
|
|
3529
3527
|
new Set(MINI_PROGRAM_PERMISSION_KEYS);
|
|
3530
3528
|
|
|
3531
3529
|
new Set(MINI_PROGRAM_PERMISSION_KEYS);
|
|
3530
|
+
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3531
|
+
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
3532
3532
|
|
|
3533
3533
|
const MINIAPP_PERMISSION_KEYS = MINI_PROGRAM_PERMISSION_KEYS;
|
|
3534
3534
|
function parseMiniappPermissions(value, options) {
|
package/dist/vite.esm.js
CHANGED
|
@@ -2945,7 +2945,7 @@ async function ensureBasicInfoDirectory(rootPath, relative) {
|
|
|
2945
2945
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
2946
2946
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
2947
2947
|
? undefined
|
|
2948
|
-
: '0.8.3-alpha.
|
|
2948
|
+
: '0.8.3-alpha.4';
|
|
2949
2949
|
|
|
2950
2950
|
/**
|
|
2951
2951
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
@@ -3374,8 +3374,6 @@ const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
|
3374
3374
|
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3375
3375
|
*/
|
|
3376
3376
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
3377
|
-
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3378
|
-
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
3379
3377
|
|
|
3380
3378
|
const MINI_PROGRAM_PERMISSION_KEYS = [
|
|
3381
3379
|
'userInfo',
|
|
@@ -3526,6 +3524,8 @@ const MINI_PROGRAM_PERMISSION_CATALOG = [
|
|
|
3526
3524
|
new Set(MINI_PROGRAM_PERMISSION_KEYS);
|
|
3527
3525
|
|
|
3528
3526
|
new Set(MINI_PROGRAM_PERMISSION_KEYS);
|
|
3527
|
+
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3528
|
+
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
3529
3529
|
|
|
3530
3530
|
const MINIAPP_PERMISSION_KEYS = MINI_PROGRAM_PERMISSION_KEYS;
|
|
3531
3531
|
function parseMiniappPermissions(value, options) {
|
|
@@ -49,7 +49,7 @@ Browser Dev Host 由 SDK CLI 提供 Vue 3 调试台并注入 `@heybox/hb-sdk-run
|
|
|
49
49
|
|
|
50
50
|
调试台的 iframe 在整个会话中保持同一个 DOM 节点。iPhone 16 Pro Max(`440 x 956`)和 Pixel 9 Pro(`410 x 914`)预设只投影设备 metrics、外框、状态栏和安全区,切换时不得触发 iframe navigation 或 Runtime 重启。授权与操作弹窗、Toast、Loading 和振动反馈由 Host presentation controller 渲染在设备预览的 overlay layer 内。
|
|
51
51
|
|
|
52
|
-
调试台不提供权限修改、
|
|
52
|
+
调试台不提供权限修改、Browser/Mobile 页签或重复二维码入口。线上批准基线与 CLI 根据声明生成的本地 grant 分开传输,Browser Fake 允许白名单内临时权限并保留线上未批准提示;唯一的 Mobile 二维码入口位于调试台右上角,并复用既有 LAN 网卡与 Dev Session 生命周期。
|
|
53
53
|
|
|
54
54
|
## 新 PC 页面通道合同与窗口几何
|
|
55
55
|
|
|
@@ -89,13 +89,15 @@ Storage 面板只通过 `runtime.diagnostics.storage?.getSnapshot()` 读取 Runt
|
|
|
89
89
|
| Mobile Release | 当前稳定客户端继续把原生 `mini_url` launch 交给详情 H5/Native Host;二维码保持 HTTPS `open_inapp` 与 `heybox://` `openWindow`,但短链这一跳是普通 H5。跳转页打开完整 sandbox query(`mini_url`、身份、启动票和 LAN Dev Context)后延迟 `closeWindow`。真机 WebView 基址是 `http://127.0.0.1` 详情页且 HTML 来自线上缓存。 | 生成真机二维码前仍需 CLI 登录、项目绑定和有效 Dev Context;这些条件不阻断 Browser 调试台启动。 |
|
|
90
90
|
| Mobile Debug/Ad-Hoc H5 | `dev_context_url` 是可选的 Dev Session 输入;Runtime 权限和本地 network proxy 仅在读取成功时采用。 | Dev Context 缺失、过期、不可达或校验失败时记录脱敏诊断,继续使用原生 Host 的账号、网络与远端权限。 |
|
|
91
91
|
|
|
92
|
-
`DevSession`
|
|
92
|
+
`DevSession` 同时携带本地声明、独立的 `local_dev_grant` 与 context revision,不会反向修改线上配置。真实 H5 必须先以启动票取得 canonical identity,再将可信线上基线与声明及严格解析的 grant 合成普通 Runtime 快照;没有有效票据或非法 grant 时不临时放权。临时授权仅允许 `network` / `companion`,不包含 `useOfficialDomain`,且每次启动由用户确认。
|
|
93
|
+
|
|
94
|
+
Node 负责 CLI-owned stable context endpoint、短跳转 registry 和 Launch Reference 生命周期;H5 负责持续验证 CLI lease,不能用 iframe heartbeat 代替。连续失联约 30 秒、到期、session/revision 或 Companion 摘要变化时销毁旧 Runtime;重连重新确认和创建实例。票据字符串轮换不改变授权指纹。线上权限快照在 Runtime 内不可变,临时权限来源不传给 iframe。Android、iOS 与新 PC 原生 adapter 沿用既有 operation;真实 PC Companion 还必须有私有 local-dev lease capability,缺能力继续 fail closed。
|
|
93
95
|
|
|
94
96
|
多网卡环境中,CLI 从可用私有 IPv4 网卡派生候选 `mini_url`,并优先展示与 HMR 默认地址匹配的候选。用户切换网卡后,`mini_url` 和 Dev Context URL 都投影到同一选中地址。`dev_context_url` 必须嵌套在 `heybox-mini-dev://sandbox` 的 query 中,不能误放到最外层 `openWindow` payload。
|
|
95
97
|
|
|
96
98
|
## Mobile 短跳转安全边界
|
|
97
99
|
|
|
98
|
-
默认 Mobile 二维码编码现有 `https://api.xiaoheihe.cn/open_inapp/#heybox://...` 启动契约,但短链这一跳是普通 H5 `openWindow`(不带 `mini_program`),`webview.url` 只放局域网短链 `http://<lan-ip>:<port>/l/<token>`。短链返回 HTML 跳转页:先 `location.href` 打开完整 `heybox-mini-dev://sandbox` 协议,约 500ms 后再发 `closeWindow` 关掉中间页。不要对自定义协议做 HTTP 302,WebView 会把它当成相对路径。真机 WebView 基址是 `http://127.0.0.1/tools/user_miniprogram/detail`,HTML
|
|
100
|
+
默认 Mobile 二维码编码现有 `https://api.xiaoheihe.cn/open_inapp/#heybox://...` 启动契约,但短链这一跳是普通 H5 `openWindow`(不带 `mini_program`),`webview.url` 只放局域网短链 `http://<lan-ip>:<port>/l/<token>`。短链返回 HTML 跳转页:先 `location.href` 打开完整 `heybox-mini-dev://sandbox` 协议,约 500ms 后再发 `closeWindow` 关掉中间页。不要对自定义协议做 HTTP 302,WebView 会把它当成相对路径。真机 WebView 基址是 `http://127.0.0.1/tools/user_miniprogram/detail`,HTML 来自线上详情页缓存,因此最终协议携带 `mini_url`、`mini_program_id`、`local_dev_launch_token`、`sdk_version` 和稳定 CLI-owned `dev_context_url`;二维码短期 token 轮换不会让已打开页面失效。`launch.json` 仍可作为同分支详情 Host 的补充发现。Dev Context 过期或校验失败时记录脱敏诊断,继续使用原生网络与已发现的权限。
|
|
99
101
|
|
|
100
102
|
`launch.json` 和短链都只减少二维码编码长度,不是认证、加密、签名或 HMAC:
|
|
101
103
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heybox/hb-sdk",
|
|
3
|
-
"version": "0.8.3-alpha.
|
|
3
|
+
"version": "0.8.3-alpha.4",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"./src/index.ts",
|
|
6
6
|
"./src/core/singleton.ts",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"undici": "^7.28.0",
|
|
66
66
|
"ws": "^8.18.0",
|
|
67
67
|
"sharp": "^0.34.5",
|
|
68
|
-
"@heybox/hb-sdk-protocol": "0.8.3-alpha.
|
|
68
|
+
"@heybox/hb-sdk-protocol": "0.8.3-alpha.4"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
71
|
"vite": ">=5"
|
|
@@ -116,13 +116,13 @@
|
|
|
116
116
|
"vue-tsc": "^3.3.7",
|
|
117
117
|
"vite": "^8.0.12",
|
|
118
118
|
"vitest": "^3.2.4",
|
|
119
|
+
"@heybox-domain/heybox-theme": "~0.1.0",
|
|
119
120
|
"@heybox-domain/heybox-vue3-ui": "~0.1.0",
|
|
120
|
-
"@heybox/hb-sdk-runtime": "~0.8.3-alpha.
|
|
121
|
+
"@heybox/hb-sdk-runtime": "~0.8.3-alpha.4",
|
|
121
122
|
"@heybox/hb-api": "~1.28.9",
|
|
122
|
-
"@heybox/runtime": "~0.2.0",
|
|
123
123
|
"@heybox/runtime-policy": "~0.2.0",
|
|
124
|
-
"@heybox
|
|
125
|
-
"@heybox/runtime
|
|
124
|
+
"@heybox/runtime-transport-fetch": "~0.2.0",
|
|
125
|
+
"@heybox/runtime": "~0.2.0"
|
|
126
126
|
},
|
|
127
127
|
"publishConfig": {
|
|
128
128
|
"registry": "https://registry.npmjs.org/",
|
package/skill/skill.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hb-sdk",
|
|
3
|
-
"skillVersion": "0.8.3-alpha.
|
|
3
|
+
"skillVersion": "0.8.3-alpha.4+skill.aa24d6656331",
|
|
4
4
|
"sdk": {
|
|
5
5
|
"package": "@heybox/hb-sdk",
|
|
6
|
-
"version": "0.8.3-alpha.
|
|
7
|
-
"compatibility": "0.8.3-alpha.
|
|
6
|
+
"version": "0.8.3-alpha.4",
|
|
7
|
+
"compatibility": "0.8.3-alpha.4"
|
|
8
8
|
},
|
|
9
9
|
"distribution": {
|
|
10
10
|
"type": "npm",
|
|
11
11
|
"package": "@heybox/hb-sdk",
|
|
12
|
-
"version": "0.8.3-alpha.
|
|
12
|
+
"version": "0.8.3-alpha.4",
|
|
13
13
|
"path": "skill"
|
|
14
14
|
},
|
|
15
15
|
"integrity": "sha256-aa24d6656331cbad8f6aae7735258a49d7f1a82f6e900415de53a1b93a30ddb8"
|
package/types/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export type { AuthorizedUserInfo, GetUserInfoPayload, GetUserInfoResult, RevokeA
|
|
|
9
9
|
export { USER_INFO_AUTHORIZATION_SCOPES } from './modules/user';
|
|
10
10
|
export type { UserInfoAuthorizationScope } from './modules/user';
|
|
11
11
|
export type { CopyLinkPayload, CopyLinkResult, MiniProgramCopyLinkOptions, MiniProgramScreenshotOptions, MiniProgramScreenshotRect, MiniProgramShareChannel, MiniProgramShareExtraValue, MiniProgramShareModule, MiniProgramSharePostOptions, MiniProgramShowShareMenuOptions, ScreenshotPayload, ScreenshotResult, ShowShareMenuPayload, ShowShareMenuResult, } from './modules/share';
|
|
12
|
-
export type { GetWindowInfoPayload, GetWindowInfoResult, MiniProgramNavigationBarForegroundStyle, MiniProgramSafeArea, MiniProgramSetNavigationBarStyleOptions, MiniProgramViewportModule, MiniProgramWindowInfoResult, SetNavigationBarStylePayload, SetNavigationBarStyleResult, } from './modules/viewport';
|
|
12
|
+
export type { MiniProgramOrientationMode, SetDisplayPayload, SetDisplayResult, MiniProgramDisplayState, GetWindowInfoPayload, GetWindowInfoResult, MiniProgramNavigationBarForegroundStyle, MiniProgramSafeArea, MiniProgramSetNavigationBarStyleOptions, MiniProgramViewportModule, MiniProgramWindowInfoResult, SetNavigationBarStylePayload, SetNavigationBarStyleResult, } from './modules/viewport';
|
|
13
13
|
export type { GetStoragePayload, GetStorageResult, MiniProgramStorageModule, SetStoragePayload } from './modules/storage';
|
|
14
14
|
export type { DownloadBaseOptions, DownloadOptions, DownloadProgress, MiniProgramNetworkHeaders, MiniProgramNetworkModule, MiniProgramNetworkParams, MiniProgramNetworkRequestConfig, MiniProgramNetworkRequestMethod, MiniProgramNetworkResponse, MiniProgramNetworkValidateStatus, NetworkRequestPayload, NetworkResponsePayload, } from './modules/network';
|
|
15
15
|
export type { CreateOptions, DirectoryHandle, FileHandle, FileMode, FileStat, FileSystem, FileSystemEntity, FilesModule, ListOptions, PathRoot, PickDirectoryOptions, PickFilesOptions, RemoveOptions, SaveFileOptions, } from './modules/files';
|
|
@@ -28,7 +28,7 @@ declare const hbSDK: {
|
|
|
28
28
|
share: import(".").MiniProgramShareModule;
|
|
29
29
|
viewport: import(".").MiniProgramViewportModule;
|
|
30
30
|
storage: import(".").MiniProgramStorageModule;
|
|
31
|
-
files: import("
|
|
31
|
+
files: import("./protocol").FilesModule;
|
|
32
32
|
network: import(".").MiniProgramNetworkModule;
|
|
33
33
|
ui: import(".").MiniProgramUiModule;
|
|
34
34
|
device: import(".").MiniProgramDeviceModule;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SetDisplayPayload, SetDisplayResult } from '../../protocol';
|
|
2
|
+
import type { MiniProgramOperationRequester, MiniProgramRequester } from '../../core/client';
|
|
2
3
|
/**
|
|
3
4
|
* 小程序安全区域信息。
|
|
4
5
|
*
|
|
@@ -59,6 +60,8 @@ export interface MiniProgramWindowInfoResult {
|
|
|
59
60
|
/** 顶部可用偏移兼容值,单位逻辑像素;当前恒等于 `statusBarHeight`。 */
|
|
60
61
|
screenTop: number;
|
|
61
62
|
}
|
|
63
|
+
export { VIEWPORT_SET_DISPLAY_METHOD } from '../../protocol/capabilities';
|
|
64
|
+
export type { MiniProgramDisplayState, MiniProgramOrientationMode, SetDisplayPayload, SetDisplayResult } from '../../protocol';
|
|
62
65
|
export { VIEWPORT_GET_WINDOW_INFO_METHOD } from '../../protocol/capabilities';
|
|
63
66
|
export { VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD } from '../../protocol/capabilities';
|
|
64
67
|
/** `viewport.getWindowInfo` 不接收 options 或 payload,调用时无需传入参数。 */
|
|
@@ -118,6 +121,34 @@ export type SetNavigationBarStyleResult = void;
|
|
|
118
121
|
export type { MiniProgramViewportMethod } from '../../protocol/capabilities';
|
|
119
122
|
/** 外部小程序可调用的 Viewport 模块。 */
|
|
120
123
|
export interface MiniProgramViewportModule {
|
|
124
|
+
/**
|
|
125
|
+
* 设置当前小程序的窗口方向和全屏状态。
|
|
126
|
+
*
|
|
127
|
+
* @remarks
|
|
128
|
+
* 新容器默认竖屏、非全屏。省略字段保持当前目标值,至少传一个字段;合并后横屏强制全屏,竖屏按 fullscreen 控制。
|
|
129
|
+
* 全屏同时收起胶囊和宿主额外顶部栏,不保证原生内容铺满容器;页面应按实际 WebView 窗口和安全区适配。
|
|
130
|
+
* 系统状态栏、手势条不保证隐藏,重要控件仍应按实际窗口与安全区信息避让。
|
|
131
|
+
* 横屏时仅设置 fullscreen: false 不会退出全屏;退出需同时设置 orientation: portrait、fullscreen: false。
|
|
132
|
+
* 宿主退出按钮恢复竖屏、非全屏;仅设置 orientation: portrait 则保留当前全屏目标。
|
|
133
|
+
* 设置持续到下次调用或退出容器;SPA 路由应在进入时明确设置所需状态。
|
|
134
|
+
* 后续设置先合并目标,再取消不同的旧设置;旧调用以 ORIENTATION_SUPERSEDED 失败。
|
|
135
|
+
* 相同目标共用操作;方向和全屏一起确认,失败时一起恢复最后确认状态。
|
|
136
|
+
* Promise 在宿主布局稳定后完成,窗口尺寸与安全区变化通过 viewport_change 事件通知。
|
|
137
|
+
* 方向或全屏状态确认变化时通过 display_change 通知,包括用户点击宿主退出全屏按钮。
|
|
138
|
+
* display_change 不回放初始状态;重复设置、不支持、失败或取消不会发出展示状态变化通知。
|
|
139
|
+
* 返回 supported: true 表示原生方向与胶囊设置已完成;不支持时返回 supported: false,保留原生状态。
|
|
140
|
+
* 降级时宿主仍尽力收起 H5 顶部栏,不能据此假定屏幕已旋转或胶囊已隐藏;布局始终按实际窗口适配。
|
|
141
|
+
* SDK 统一处理能力缺失错误;超时、取消、参数或其他执行错误仍抛出。
|
|
142
|
+
* @since 0.8.1-alpha.4
|
|
143
|
+
* @hbPlatform android
|
|
144
|
+
* @hbPlatform ios
|
|
145
|
+
* @hbPlatform ohos
|
|
146
|
+
* @hbClient android numeric-dot \>= 1.3.396
|
|
147
|
+
* @hbClient ios numeric-dot \>= 1.3.396
|
|
148
|
+
* @hbClient ohos none
|
|
149
|
+
* @experimental
|
|
150
|
+
*/
|
|
151
|
+
setDisplay(options: SetDisplayPayload): Promise<SetDisplayResult>;
|
|
121
152
|
/**
|
|
122
153
|
* 获取当前小程序窗口信息。
|
|
123
154
|
*
|
|
@@ -265,4 +296,4 @@ export declare function setNavigationBarStyle(requester: MiniProgramRequester, o
|
|
|
265
296
|
* @param requester - 底层 bridge 请求能力。
|
|
266
297
|
* @returns 面向业务层的 Viewport 模块对象。
|
|
267
298
|
*/
|
|
268
|
-
export declare function createViewportModule(requester:
|
|
299
|
+
export declare function createViewportModule(requester: MiniProgramOperationRequester): MiniProgramViewportModule;
|
|
@@ -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, 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';
|
|
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_SET_DISPLAY_METHOD, VIEWPORT_GET_WINDOW_INFO_METHOD, VIEWPORT_SET_NAVIGATION_BAR_STYLE_METHOD, } from '@heybox/hb-sdk-protocol';
|
|
2
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,4 +1,15 @@
|
|
|
1
1
|
import type { MiniProgramRuntimePermissionsSnapshot } from './runtime-permissions';
|
|
2
|
+
import type { MiniProgramLocalDevGrant, MiniProgramLocalDevPermissionDeclarations } from '@heybox/hb-sdk-protocol';
|
|
3
|
+
export interface MiniProgramLocalDevContextFields {
|
|
4
|
+
local_dev_grant?: MiniProgramLocalDevGrant;
|
|
5
|
+
context_revision?: number;
|
|
6
|
+
declared_permissions?: MiniProgramLocalDevPermissionDeclarations;
|
|
7
|
+
platforms?: readonly string[];
|
|
8
|
+
dev_session_id?: string;
|
|
9
|
+
local_dev_launch_token?: string;
|
|
10
|
+
mini_program_id?: string;
|
|
11
|
+
companion_manifest_sha256?: string;
|
|
12
|
+
}
|
|
2
13
|
/** Dev Shell 读取局域网 Dev Session endpoint 的 query 参数。 */
|
|
3
14
|
export declare const MINI_PROGRAM_DEV_CONTEXT_QUERY_PARAM = "dev_context_url";
|
|
4
15
|
/** Browser Dev Host 创建和读取 Dev Session 的固定路径。 */
|
|
@@ -21,7 +32,7 @@ export interface MiniProgramDevSessionCreateResult {
|
|
|
21
32
|
token: string;
|
|
22
33
|
}
|
|
23
34
|
/** Runtime Host 通过短期引用读取的不可变 Dev Session 快照。 */
|
|
24
|
-
export interface MiniProgramDevSessionSnapshot {
|
|
35
|
+
export interface MiniProgramDevSessionSnapshot extends MiniProgramLocalDevContextFields {
|
|
25
36
|
schema_version: typeof MINI_PROGRAM_DEV_SESSION_SCHEMA_VERSION;
|
|
26
37
|
revision: number;
|
|
27
38
|
expires_at: number;
|
|
@@ -29,7 +40,7 @@ export interface MiniProgramDevSessionSnapshot {
|
|
|
29
40
|
runtime_permissions: MiniProgramRuntimePermissionsSnapshot;
|
|
30
41
|
}
|
|
31
42
|
/** 详情 H5 在只带 `mini_url` 启动后拉取的其余调试参数。 */
|
|
32
|
-
export interface MiniProgramDevLaunchSnapshot {
|
|
43
|
+
export interface MiniProgramDevLaunchSnapshot extends MiniProgramLocalDevContextFields {
|
|
33
44
|
schema_version: typeof MINI_PROGRAM_DEV_LAUNCH_SCHEMA_VERSION;
|
|
34
45
|
sdk_version?: string;
|
|
35
46
|
mini_program_id?: string;
|
package/types/protocol.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
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, MiniProgramOperatingSystemName, MiniProgramRuntimePermissionEntry, MiniProgramRuntimeEnvironmentInfo, MiniProgramRuntimeMode, 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, SDKHandshakeResult, 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_SET_DISPLAY_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, MiniProgramOrientationMode, SetDisplayPayload, SetDisplayResult, MiniProgramDisplayState, 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, MiniProgramOperatingSystemName, MiniProgramRuntimePermissionEntry, MiniProgramRuntimeEnvironmentInfo, MiniProgramRuntimeMode, 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, SDKHandshakeResult, 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';
|