@heybox/hb-sdk 0.7.3 → 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 +29 -1
- package/README.md +5 -0
- package/dist/cli-chunks/{build-0sZ873iU.cjs → build-Cej8ObyY.cjs} +2 -2
- package/dist/cli-chunks/{context-DNQEI7m7.cjs → context-DATgeHkI.cjs} +6 -19
- package/dist/cli-chunks/{create-BkE71M2U.cjs → create-LXHV_lW5.cjs} +1 -1
- package/dist/cli-chunks/{dev-_tBlQ2WO.cjs → dev-CDuVyGm9.cjs} +798 -139
- package/dist/cli-chunks/{doctor-B1wk8IpC.cjs → doctor-BqmQrPaV.cjs} +1 -1
- package/dist/cli-chunks/{index-CIucOD2H.cjs → index-BCd2vU5D.cjs} +24 -21
- package/dist/cli-chunks/{index-BbDsxI94.cjs → index-Ck7X1LRP.cjs} +1 -1
- package/dist/cli-chunks/{login-CnjEKlFT.cjs → login-BLTILOf-.cjs} +2 -2
- package/dist/cli-chunks/{project-vite-ESaxoAE1.cjs → project-vite-BtIYxLkt.cjs} +1 -1
- package/dist/cli-chunks/{remote-BaGzge7R.cjs → remote-Bp9SK8C3.cjs} +4 -4
- package/dist/cli-chunks/{session-C9KHqijL.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
|
@@ -4,7 +4,7 @@ var fs$1 = require('node:fs');
|
|
|
4
4
|
var fs = require('node:fs/promises');
|
|
5
5
|
var os = require('node:os');
|
|
6
6
|
var path = require('node:path');
|
|
7
|
-
var index = require('./index-
|
|
7
|
+
var index = require('./index-BCd2vU5D.cjs');
|
|
8
8
|
require('node:module');
|
|
9
9
|
require('path');
|
|
10
10
|
require('os');
|
|
@@ -234,19 +234,19 @@ function requireArgument () {
|
|
|
234
234
|
|
|
235
235
|
var command = {};
|
|
236
236
|
|
|
237
|
-
const require$5 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-
|
|
237
|
+
const require$5 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-BCd2vU5D.cjs', document.baseURI).href)));
|
|
238
238
|
function __require$4() { return require$5("node:events"); }
|
|
239
239
|
|
|
240
|
-
const require$4 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-
|
|
240
|
+
const require$4 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-BCd2vU5D.cjs', document.baseURI).href)));
|
|
241
241
|
function __require$3() { return require$4("node:child_process"); }
|
|
242
242
|
|
|
243
|
-
const require$3 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-
|
|
243
|
+
const require$3 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-BCd2vU5D.cjs', document.baseURI).href)));
|
|
244
244
|
function __require$2() { return require$3("node:path"); }
|
|
245
245
|
|
|
246
|
-
const require$2 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-
|
|
246
|
+
const require$2 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-BCd2vU5D.cjs', document.baseURI).href)));
|
|
247
247
|
function __require$1() { return require$2("node:fs"); }
|
|
248
248
|
|
|
249
|
-
const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-
|
|
249
|
+
const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli-chunks/index-BCd2vU5D.cjs', document.baseURI).href)));
|
|
250
250
|
function __require() { return require$1("node:process"); }
|
|
251
251
|
|
|
252
252
|
var help = {};
|
|
@@ -13347,7 +13347,7 @@ function getPathname(pathWithQuery) {
|
|
|
13347
13347
|
}
|
|
13348
13348
|
|
|
13349
13349
|
const CLI_VERSION_PLACEHOLDER = ['__HB', 'SDK', 'CLI', 'VERSION__'].join('_');
|
|
13350
|
-
const BUILT_CLI_VERSION = '0.7.
|
|
13350
|
+
const BUILT_CLI_VERSION = '0.7.4-alpha.1';
|
|
13351
13351
|
const PACKAGE_JSON_CANDIDATES = [
|
|
13352
13352
|
path.resolve(__dirname, '..', '..', 'package.json'),
|
|
13353
13353
|
path.resolve(__dirname, '..', 'package.json'),
|
|
@@ -13432,9 +13432,9 @@ function createCliProgram(overrides = {}) {
|
|
|
13432
13432
|
}, handlers.printUpdateReminder, resolveLogger));
|
|
13433
13433
|
addVerboseOption(program
|
|
13434
13434
|
.command('dev')
|
|
13435
|
-
.description('启动当前小程序项目的 Vite dev server
|
|
13435
|
+
.description('启动当前小程序项目的 Vite dev server 和 Browser Dev Host')
|
|
13436
13436
|
.option('--port <port>', 'App dev server 端口', parsePositivePort)
|
|
13437
|
-
.option('--
|
|
13437
|
+
.option('--browser-dev-host-port <port>', 'Browser Dev Host 端口', parsePositivePort)
|
|
13438
13438
|
.option('--runtime-url <url>', '真实客户端调试时使用的自定义 runtime 地址')
|
|
13439
13439
|
.option('--raw-protocol', 'Mobile App 二维码使用裸 heybox:// 协议')
|
|
13440
13440
|
.option('--no-open', '不自动打开浏览器调试页')).action(withUpdateReminder(async (options, command) => {
|
|
@@ -13507,14 +13507,17 @@ function installRemoteCommands(program, handlers, resolveLogger) {
|
|
|
13507
13507
|
.description('列出当前账号可管理的工坊小程序')
|
|
13508
13508
|
.option('--status <status>', '按状态筛选')
|
|
13509
13509
|
.option('--keyword <text>', '按关键词筛选')).action(createRemoteAction(handlers, resolveLogger, 'list', (command) => pickOptions(command, ['status', 'keyword'])));
|
|
13510
|
-
addRemotePublicOptions(remote
|
|
13511
|
-
.
|
|
13512
|
-
.
|
|
13513
|
-
.option('--force-bind', '允许覆盖当前 package.json 中已有绑定')).option('--yes', '多开发者主体时确认使用服务端 current 主体创建').action(createRemoteAction(handlers, resolveLogger, 'create', (command) => ({
|
|
13510
|
+
addRemotePublicOptions(remote.command('create').description('创建远程工坊小程序并绑定当前项目').option('--force-bind', '允许覆盖当前 package.json 中已有绑定'))
|
|
13511
|
+
.option('--yes', '多开发者主体时确认使用服务端 current 主体创建')
|
|
13512
|
+
.action(createRemoteAction(handlers, resolveLogger, 'create', (command) => ({
|
|
13514
13513
|
forceBind: Boolean(readCommandOptionsWithAncestors(command).forceBind),
|
|
13515
13514
|
...readYesOption(command),
|
|
13516
13515
|
})));
|
|
13517
|
-
addRemotePublicOptions(remote
|
|
13516
|
+
addRemotePublicOptions(remote
|
|
13517
|
+
.command('bind')
|
|
13518
|
+
.description('绑定当前项目到已存在的远程工坊小程序')
|
|
13519
|
+
.argument('<mini-program-id>', '远程小程序 ID')
|
|
13520
|
+
.option('--force', '允许覆盖当前 package.json 中已有绑定')).action(createRemoteAction(handlers, resolveLogger, 'bind', (command, miniProgramId) => ({
|
|
13518
13521
|
force: Boolean(readCommandOptionsWithAncestors(command).force),
|
|
13519
13522
|
miniProgramId: readStringArgument(miniProgramId, 'mini-program-id'),
|
|
13520
13523
|
})));
|
|
@@ -13681,35 +13684,35 @@ function createCommandLoggerResolver(options) {
|
|
|
13681
13684
|
};
|
|
13682
13685
|
}
|
|
13683
13686
|
const defaultClearLoginStatus = async (...args) => {
|
|
13684
|
-
const { clearLoginStatus } = await Promise.resolve().then(function () { return require('./login-
|
|
13687
|
+
const { clearLoginStatus } = await Promise.resolve().then(function () { return require('./login-BLTILOf-.cjs'); });
|
|
13685
13688
|
return clearLoginStatus(...args);
|
|
13686
13689
|
};
|
|
13687
13690
|
const defaultLoginToHeybox = async (...args) => {
|
|
13688
|
-
const { loginToHeybox } = await Promise.resolve().then(function () { return require('./login-
|
|
13691
|
+
const { loginToHeybox } = await Promise.resolve().then(function () { return require('./login-BLTILOf-.cjs'); });
|
|
13689
13692
|
return loginToHeybox(...args);
|
|
13690
13693
|
};
|
|
13691
13694
|
const defaultPrintLoginStatus = async (...args) => {
|
|
13692
|
-
const { printLoginStatus } = await Promise.resolve().then(function () { return require('./login-
|
|
13695
|
+
const { printLoginStatus } = await Promise.resolve().then(function () { return require('./login-BLTILOf-.cjs'); });
|
|
13693
13696
|
return printLoginStatus(...args);
|
|
13694
13697
|
};
|
|
13695
13698
|
const defaultRunBuildCommand = async (...args) => {
|
|
13696
|
-
const { runBuildCommand } = await Promise.resolve().then(function () { return require('./build-
|
|
13699
|
+
const { runBuildCommand } = await Promise.resolve().then(function () { return require('./build-Cej8ObyY.cjs'); });
|
|
13697
13700
|
return runBuildCommand(...args);
|
|
13698
13701
|
};
|
|
13699
13702
|
const defaultRunCreateCommand = async (...args) => {
|
|
13700
|
-
const { runCreateCommand } = await Promise.resolve().then(function () { return require('./create-
|
|
13703
|
+
const { runCreateCommand } = await Promise.resolve().then(function () { return require('./create-LXHV_lW5.cjs'); });
|
|
13701
13704
|
return runCreateCommand(...args);
|
|
13702
13705
|
};
|
|
13703
13706
|
const defaultRunDevCommand = async (...args) => {
|
|
13704
|
-
const { runDevCommand } = await Promise.resolve().then(function () { return require('./dev-
|
|
13707
|
+
const { runDevCommand } = await Promise.resolve().then(function () { return require('./dev-CDuVyGm9.cjs'); });
|
|
13705
13708
|
return runDevCommand(...args);
|
|
13706
13709
|
};
|
|
13707
13710
|
const defaultRunDoctorCommand = async (...args) => {
|
|
13708
|
-
const { runDoctorCommand } = await Promise.resolve().then(function () { return require('./doctor-
|
|
13711
|
+
const { runDoctorCommand } = await Promise.resolve().then(function () { return require('./doctor-BqmQrPaV.cjs'); });
|
|
13709
13712
|
return runDoctorCommand(...args);
|
|
13710
13713
|
};
|
|
13711
13714
|
const defaultRunRemoteCommand = async (...args) => {
|
|
13712
|
-
const { runRemoteCommand } = await Promise.resolve().then(function () { return require('./remote-
|
|
13715
|
+
const { runRemoteCommand } = await Promise.resolve().then(function () { return require('./remote-Bp9SK8C3.cjs'); });
|
|
13713
13716
|
return runRemoteCommand(...args);
|
|
13714
13717
|
};
|
|
13715
13718
|
function resolveStandaloneLogger(options, verbose) {
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
var promises = require('node:readline/promises');
|
|
4
4
|
var node_crypto = require('node:crypto');
|
|
5
5
|
var node_http = require('node:http');
|
|
6
|
-
var session = require('./session-
|
|
6
|
+
var session = require('./session-9ZWPGpqB.cjs');
|
|
7
7
|
var browser = require('./browser-RAy8e8cV.cjs');
|
|
8
|
-
var index = require('./index-
|
|
8
|
+
var index = require('./index-BCd2vU5D.cjs');
|
|
9
9
|
require('node:path');
|
|
10
10
|
require('fs');
|
|
11
11
|
require('constants');
|
|
@@ -5,7 +5,7 @@ var fs$1 = require('node:fs/promises');
|
|
|
5
5
|
var node_module = require('node:module');
|
|
6
6
|
var path = require('node:path');
|
|
7
7
|
var node_url = require('node:url');
|
|
8
|
-
var index = require('./index-
|
|
8
|
+
var index = require('./index-BCd2vU5D.cjs');
|
|
9
9
|
|
|
10
10
|
function findProjectRoot(startDir) {
|
|
11
11
|
let current = path.resolve(startDir);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var promises = require('node:readline/promises');
|
|
4
|
-
var index = require('./index-
|
|
5
|
-
var session = require('./session-
|
|
4
|
+
var index = require('./index-BCd2vU5D.cjs');
|
|
5
|
+
var session = require('./session-9ZWPGpqB.cjs');
|
|
6
6
|
var childProcess = require('node:child_process');
|
|
7
7
|
var fs = require('node:fs');
|
|
8
8
|
var fs$1 = require('node:fs/promises');
|
|
@@ -10,7 +10,7 @@ var path = require('node:path');
|
|
|
10
10
|
var runtimePermissionEnv = require('./runtime-permission-env-D-8_jPG3.cjs');
|
|
11
11
|
var runtimeGate = require('./runtime-gate-CtV7rWyX.cjs');
|
|
12
12
|
var node_crypto = require('node:crypto');
|
|
13
|
-
var context = require('./context-
|
|
13
|
+
var context = require('./context-DATgeHkI.cjs');
|
|
14
14
|
require('node:module');
|
|
15
15
|
require('path');
|
|
16
16
|
require('os');
|
|
@@ -271,7 +271,7 @@ function createDefaultCosClient(uploadToken, COS) {
|
|
|
271
271
|
};
|
|
272
272
|
}
|
|
273
273
|
async function loadCosConstructor() {
|
|
274
|
-
const cosModule = await Promise.resolve().then(function () { return require('./index-
|
|
274
|
+
const cosModule = await Promise.resolve().then(function () { return require('./index-Ck7X1LRP.cjs'); }).then(function (n) { return n.index; });
|
|
275
275
|
return cosModule.default;
|
|
276
276
|
}
|
|
277
277
|
function formatSize(bytes) {
|
package/dist/cli.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<title>HB SDK
|
|
6
|
+
<title>HB SDK Browser Dev Host</title>
|
|
7
7
|
<style>
|
|
8
8
|
* {
|
|
9
9
|
box-sizing: border-box;
|
|
@@ -358,7 +358,7 @@
|
|
|
358
358
|
<div class="layout">
|
|
359
359
|
<aside class="panel">
|
|
360
360
|
<div>
|
|
361
|
-
<h1>HB SDK
|
|
361
|
+
<h1>HB SDK Browser Dev Host</h1>
|
|
362
362
|
<p>本地浏览器宿主通过 iframe 加载小程序,使用真实 @heybox/hb-sdk bridge。</p>
|
|
363
363
|
</div>
|
|
364
364
|
|
|
@@ -369,7 +369,7 @@
|
|
|
369
369
|
</div>
|
|
370
370
|
<div>
|
|
371
371
|
<span>User</span>
|
|
372
|
-
<strong id="user-status"
|
|
372
|
+
<strong id="user-status">未登录</strong>
|
|
373
373
|
</div>
|
|
374
374
|
</section>
|
|
375
375
|
|
|
@@ -438,10 +438,6 @@
|
|
|
438
438
|
</section>
|
|
439
439
|
|
|
440
440
|
<section class="block">
|
|
441
|
-
<label class="field">
|
|
442
|
-
<span>Nickname</span>
|
|
443
|
-
<input id="nickname-input" value="PC Debug User" />
|
|
444
|
-
</label>
|
|
445
441
|
<div class="actions" style="margin-top: 10px">
|
|
446
442
|
<button class="primary" id="login-button" type="button">登录</button>
|
|
447
443
|
<button id="logout-button" type="button">登出</button>
|