@heybox/hb-sdk 0.8.1 → 0.8.2-alpha.2
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 +13 -0
- package/README.md +2 -2
- package/dist/cli-chunks/{build-DPe1Ycjd.cjs → build-bVThH3Z5.cjs} +4 -4
- package/dist/cli-chunks/{context-BSUhAv3Z.cjs → context-DpKqGnjp.cjs} +2 -2
- package/dist/cli-chunks/{create-CaiKrGnb.cjs → create-BWC2343y.cjs} +1 -1
- package/dist/cli-chunks/{dev-BG1o8Q-0.cjs → dev-t14YpHHY.cjs} +9 -9
- package/dist/cli-chunks/{doctor-DutO2P5H.cjs → doctor-BWkrE0Hj.cjs} +1 -1
- package/dist/cli-chunks/{index-CKIyipP9.cjs → index-CDtcZVWv.cjs} +15 -15
- package/dist/cli-chunks/{index-Bur0U2z1.cjs → index-D3FMcOZq.cjs} +2 -2
- package/dist/cli-chunks/{index.esm-BPlpP-O0.cjs → index.esm-BrJBaJWS.cjs} +7 -7
- package/dist/cli-chunks/{login-C1JlLEza.cjs → login-DRMl7nFH.cjs} +2 -2
- package/dist/cli-chunks/{project-vite-Bd0WzAqQ.cjs → project-vite-CXgdzIYw.cjs} +1 -1
- package/dist/cli-chunks/{remote-DTFEf3Dj.cjs → remote-ibQybNiM.cjs} +6 -6
- package/dist/cli-chunks/{runtime-permission-env-C2S34ldj.cjs → runtime-permission-env-DiTeD75Q.cjs} +576 -20
- package/dist/cli-chunks/{session-zXVkHuhY.cjs → session-CIoBspg-.cjs} +1 -1
- package/dist/cli-chunks/{skill-CCB3DyXk.cjs → skill-5labzuWk.cjs} +2 -2
- package/dist/cli-chunks/{version-0qwlEyZC.cjs → version-QiVEs76a.cjs} +1 -1
- package/dist/cli.cjs +1 -1
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-DxzOkljJ.js +101 -0
- package/dist/devtools/browser-dev-host/assets/{desktop-app-launch-DOfl5YvO.js → desktop-app-launch-B4KsgItx.js} +1 -1
- package/dist/devtools/browser-dev-host/assets/{index-CFr28-0O.js → index-9Nb3XhtI.js} +3 -3
- package/dist/devtools/browser-dev-host/index.html +2 -2
- package/dist/index.cjs.js +948 -44
- package/dist/index.esm.js +948 -44
- package/dist/miniapp-publish.cjs.js +536 -30
- package/dist/miniapp-publish.esm.js +536 -30
- package/dist/protocol.cjs.js +807 -2
- package/dist/protocol.esm.js +807 -2
- package/dist/vite.cjs.js +184 -1
- package/dist/vite.esm.js +184 -1
- package/package.json +7 -7
- package/skill/references/api-root.md +192 -8
- package/skill/references/recipes.md +45 -7
- package/skill/skill.json +5 -5
- package/types/core/errors.d.ts +33 -9
- package/types/core/handshake-state.d.ts +32 -2
- package/types/core/singleton.d.ts +265 -6
- package/types/miniapp-manifest/bindings.d.ts +65 -0
- package/types/miniapp-manifest/schema.d.ts +136 -19
- package/types/miniapp-publish/index.d.ts +425 -29
- package/types/modules/auth/index.d.ts +159 -5
- package/types/modules/cloud/index.d.ts +514 -40
- package/types/modules/companion/index.d.ts +1518 -17
- package/types/modules/device/index.d.ts +140 -9
- package/types/modules/environment/index.d.ts +172 -4
- package/types/modules/files/types.d.ts +1396 -21
- package/types/modules/navigation/app-pages/types.d.ts +81 -24
- package/types/modules/navigation/index.d.ts +230 -7
- package/types/modules/network/index.d.ts +297 -26
- package/types/modules/share/copy-link.d.ts +35 -5
- package/types/modules/share/index.d.ts +210 -0
- package/types/modules/share/screenshot.d.ts +23 -5
- package/types/modules/share/show-share-menu.d.ts +18 -5
- package/types/modules/share/types.d.ts +148 -23
- package/types/modules/storage/index.d.ts +139 -9
- package/types/modules/ui/index.d.ts +249 -18
- package/types/modules/user/get-info.d.ts +29 -8
- package/types/modules/user/index.d.ts +157 -0
- package/types/modules/user/revoke-authorization.d.ts +26 -2
- package/types/modules/user/steam-game-list.d.ts +96 -15
- package/types/modules/viewport/index.d.ts +158 -22
- package/types/protocol/types.d.ts +19 -1
- package/types/vite/index.d.ts +159 -1
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-pUcws1MK.js +0 -101
package/dist/vite.cjs.js
CHANGED
|
@@ -11,7 +11,7 @@ var _documentCurrentScript = typeof document !== 'undefined' ? document.currentS
|
|
|
11
11
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
12
12
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
13
13
|
? undefined
|
|
14
|
-
: '0.8.
|
|
14
|
+
: '0.8.2-alpha.2';
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
@@ -3116,7 +3116,58 @@ function requireSemver () {
|
|
|
3116
3116
|
|
|
3117
3117
|
var semverExports = requireSemver();
|
|
3118
3118
|
|
|
3119
|
+
/** 单个小程序版本最多声明的关联游戏数量。 */
|
|
3119
3120
|
const MINIAPP_BIND_APP_IDS_MAX_COUNT = 20;
|
|
3121
|
+
/**
|
|
3122
|
+
* 校验并规范化小程序关联的游戏 App ID。
|
|
3123
|
+
*
|
|
3124
|
+
* @param value - 不可信声明。`undefined` 和 `[]` 均返回空绑定;其他值必须是最多 20 项的
|
|
3125
|
+
* 字符串数组,不接受 `null`、单个字符串、number 数组或类数组对象。
|
|
3126
|
+
* @param options - 可选诊断来源;`sourceLabel` 默认 `package.json#heybox.bindAppIds`,并原样
|
|
3127
|
+
* 作为所有错误消息的前缀。
|
|
3128
|
+
* @returns 新建、按 appid 数值升序排列且经 `Object.freeze` 冻结的 `readonly string[]`。
|
|
3129
|
+
* 输入数组及其顺序不会被修改;空输入也返回新的冻结空数组。
|
|
3130
|
+
* @throws `Error` `${sourceLabel} 必须是字符串数组`:`value` 不是数组。
|
|
3131
|
+
* @throws `Error` `${sourceLabel} 最多包含 20 个游戏 appid`:输入数组超过 20 项;数量检查
|
|
3132
|
+
* 先于逐项格式检查。
|
|
3133
|
+
* @throws `Error` `${sourceLabel} 包含非法游戏 appid:<value>`:任一项不是 string,或不匹配
|
|
3134
|
+
* `/^[1-9]\d*$/`。因此空串、首尾空白、`0`、前导零、正负号、小数、指数和非十进制字符
|
|
3135
|
+
* 都不会被自动修正。
|
|
3136
|
+
* @throws `Error` `${sourceLabel} 包含超出正 int32 范围的游戏 appid:<value>`:十进制值
|
|
3137
|
+
* 大于 `2147483647` 或不能成为安全整数。
|
|
3138
|
+
* @throws `Error` `${sourceLabel} 包含重复游戏 appid:<value>`:规范字符串在同一数组重复。
|
|
3139
|
+
*
|
|
3140
|
+
* @remarks
|
|
3141
|
+
* 合法范围是闭区间 `1..2147483647`,每项在输出中仍保持十进制 string。排序按数值而不是
|
|
3142
|
+
* 字典序执行,所以 `['3513350', '730', '10']` 输出为 `['10', '730', '3513350']`。
|
|
3143
|
+
* 函数先复制后排序并冻结结果,不排序或冻结调用方传入的数组。
|
|
3144
|
+
*
|
|
3145
|
+
* 这是同步、纯离线的格式规范化函数,不访问网络,也不确认 appid 是否真实存在、可绑定或
|
|
3146
|
+
* 属于当前开发者。`miniappManifest()` 用它校验 `package.json#heybox.bindAppIds` 并把非空结果
|
|
3147
|
+
* 写入 Manifest;远端 deploy 预检和提审才校验游戏可用性。缺失和空数组在普通构建中都表示
|
|
3148
|
+
* 无绑定,函数本身不处理 `remote deploy --from-version` 的历史快照继承语义。
|
|
3149
|
+
*
|
|
3150
|
+
* `bindAppIds` 是版本发布元数据,不是 Runtime 权限,也不会因调用
|
|
3151
|
+
* [navigation.openAppPage](/reference/sdk/navigation/openAppPage) 而变化。后者的 `appId` 是一次
|
|
3152
|
+
* 页面导航参数,允许 string 或 number、只要求字符串化后非空,不适用本函数的数组、int32、
|
|
3153
|
+
* 前导零、去重、20 项或排序规则。
|
|
3154
|
+
*
|
|
3155
|
+
* @example
|
|
3156
|
+
* ```ts
|
|
3157
|
+
* import { parseMiniappBindAppIds } from '@heybox/hb-sdk/miniapp-publish'
|
|
3158
|
+
*
|
|
3159
|
+
* const declared = ['3513350', '730', '10']
|
|
3160
|
+
* const appIds = parseMiniappBindAppIds(declared)
|
|
3161
|
+
*
|
|
3162
|
+
* console.log(appIds) // ['10', '730', '3513350']
|
|
3163
|
+
* console.log(declared) // ['3513350', '730', '10'],输入顺序不变
|
|
3164
|
+
* console.log(Object.isFrozen(appIds)) // true
|
|
3165
|
+
* ```
|
|
3166
|
+
*
|
|
3167
|
+
* @see [miniappManifest](/reference/symbols/vite/functions/miniappManifest)
|
|
3168
|
+
* @see [navigation.openAppPage](/reference/sdk/navigation/openAppPage)
|
|
3169
|
+
* @see [CLI 与远端发布](/guide/cli#生产构建)
|
|
3170
|
+
*/
|
|
3120
3171
|
function parseMiniappBindAppIds(value, options = {}) {
|
|
3121
3172
|
const sourceLabel = options.sourceLabel ?? 'package.json#heybox.bindAppIds';
|
|
3122
3173
|
if (value === undefined)
|
|
@@ -3145,8 +3196,25 @@ function parseMiniappBindAppIds(value, options = {}) {
|
|
|
3145
3196
|
return Object.freeze(appIds);
|
|
3146
3197
|
}
|
|
3147
3198
|
|
|
3199
|
+
/**
|
|
3200
|
+
* 所有小程序 iframe bridge envelope 共用的固定 namespace。
|
|
3201
|
+
*
|
|
3202
|
+
* @remarks 该值用于排除无关 `postMessage` 数据,不负责验证消息来源;接收方仍须校验 source 和 nonce,
|
|
3203
|
+
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3204
|
+
*/
|
|
3148
3205
|
const MINI_PROGRAM_MESSAGE_NAMESPACE = 'heybox:miniprogram';
|
|
3206
|
+
/**
|
|
3207
|
+
* 新消息默认发送的当前 bridge wire 版本。
|
|
3208
|
+
*
|
|
3209
|
+
* @remarks 接收 guard 为握手协商继续接受 v1 与 v2 envelope;cancel 与 operation progress 等 v2-only 消息仍必须使用 v2。
|
|
3210
|
+
*/
|
|
3149
3211
|
const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
3212
|
+
/**
|
|
3213
|
+
* Runtime 在 iframe URL 中传递 bridge nonce 的 query 参数名。
|
|
3214
|
+
*
|
|
3215
|
+
* @remarks nonce 用于把消息关联到当前 iframe 实例,不是独立的身份认证凭据;接收方还必须校验 source,
|
|
3216
|
+
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3217
|
+
*/
|
|
3150
3218
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
3151
3219
|
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3152
3220
|
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
@@ -3362,6 +3430,11 @@ function isRecord$3(value) {
|
|
|
3362
3430
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
3363
3431
|
}
|
|
3364
3432
|
|
|
3433
|
+
/**
|
|
3434
|
+
* `package.json#heybox.platforms` 接受的平台值,顺序同时是 Manifest 的规范化输出顺序。
|
|
3435
|
+
*
|
|
3436
|
+
* @remarks 项目仍应只声明实际完成适配并经过验收的平台;模板默认值不是自动兼容承诺。
|
|
3437
|
+
*/
|
|
3365
3438
|
const MINIAPP_PLATFORM_VALUES = ['android', 'ios', 'ohos', 'windows', 'macos', 'linux'];
|
|
3366
3439
|
/** 窗口尺寸字段的脏值兜底上限;真正的上限是宿主侧显示器 workArea。 */
|
|
3367
3440
|
const MINIAPP_WINDOW_SIZE_MAX = 16_384;
|
|
@@ -13025,7 +13098,19 @@ const DEV_ERROR_MESSAGE = 'Companion 开发资源暂时不可用';
|
|
|
13025
13098
|
/** 与 Companion manifest 一致的单响应上限,避免本地调试入口被大体积声明撑爆。 */
|
|
13026
13099
|
const DEV_MINI_PROGRAM_MANIFEST_MAX_BYTES = 1024 * 1024;
|
|
13027
13100
|
const DEV_COMPANION_PATH_PATTERN = /^\/__hb_sdk__\/companions\/([a-z][a-z0-9-]{0,31})\/(windows-x64|macos-arm64)\.zip$/;
|
|
13101
|
+
/**
|
|
13102
|
+
* `hb-sdk dev` 为本地 Companion 产物访问注入的进程环境变量名。
|
|
13103
|
+
*
|
|
13104
|
+
* @remarks
|
|
13105
|
+
* 该变量由 CLI 管理,不是项目配置项。应用代码不应读取、设置、记录或转发它的值。
|
|
13106
|
+
*/
|
|
13028
13107
|
const HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN_ENV = 'HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN';
|
|
13108
|
+
/**
|
|
13109
|
+
* `hb-sdk dev` 为本地小程序 Manifest 访问注入的进程环境变量名。
|
|
13110
|
+
*
|
|
13111
|
+
* @remarks
|
|
13112
|
+
* 该变量由 CLI 管理,不是项目配置项。应用代码不应读取、设置、记录或转发它的值。
|
|
13113
|
+
*/
|
|
13029
13114
|
const HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN_ENV = 'HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN';
|
|
13030
13115
|
const devSnapshotStoreKey = Symbol.for('@heybox/hb-sdk/dev-companion-snapshots');
|
|
13031
13116
|
const devSnapshotRegistry = globalThis;
|
|
@@ -13039,6 +13124,104 @@ if (!devSnapshotRegistry[devSnapshotStoreKey]) {
|
|
|
13039
13124
|
});
|
|
13040
13125
|
}
|
|
13041
13126
|
const devSnapshotStores = devSnapshotRegistry[devSnapshotStoreKey];
|
|
13127
|
+
/**
|
|
13128
|
+
* 创建工坊小程序使用的 Vite 插件。
|
|
13129
|
+
*
|
|
13130
|
+
* @returns 可直接加入 Vite `plugins` 数组的
|
|
13131
|
+
* [MiniappManifestPlugin](/reference/symbols/vite/interfaces/MiniappManifestPlugin)。插件固定名为
|
|
13132
|
+
* `heybox-miniapp-manifest`,并提供 `config`、`configResolved`、`configureServer`、`buildEnd`、
|
|
13133
|
+
* `transformIndexHtml`、`closeBundle` hooks;这些 hooks 由 Vite 调用,应用代码不应手动调用。
|
|
13134
|
+
* @throws `Error` `config` 阶段发现 Vite `base` 不是 `''` 或 `'./'`,或无法解析当前 SDK 版本时抛出。
|
|
13135
|
+
* @throws `Error` `configResolved` 阶段发现已解析插件列表中 `miniappManifest()` 数量不是一个时抛出。
|
|
13136
|
+
* @throws `Error` HTML 缺少 `<head>`,包含 `meta refresh`、`<base>`、禁止的 resource hint,或资源 URL
|
|
13137
|
+
* 不符合小程序 HTML 策略时,`transformIndexHtml` / 生产产物复检抛出。
|
|
13138
|
+
* @throws `Error` 生产构建无法读取或解析最近的 `package.json`,`version`、`heybox.platforms`、
|
|
13139
|
+
* `heybox.permissions`、`heybox.window`、`heybox.bindAppIds` 或 `heybox.companions` 声明非法时抛出。
|
|
13140
|
+
* @throws `Error` 生产 `build.outDir` 缺少根 `index.html`、递归发现额外 HTML,或 Companion 权限、
|
|
13141
|
+
* 目标平台、来源目录、归档结构、入口二进制不符合约束时抛出;更早的 Rollup/Vite 错误会原样优先重抛。
|
|
13142
|
+
*
|
|
13143
|
+
* @remarks
|
|
13144
|
+
* 该函数必须从 `@heybox/hb-sdk/vite` 导入,在 `vite.config.ts` 中无参调用且只注册一次;它不是
|
|
13145
|
+
* iframe 业务代码 API,也没有 options 对象。小程序声明统一来自从 Vite `root` 向上找到的最近一个
|
|
13146
|
+
* `package.json`,插件只读取和规范化,不会改写源文件:
|
|
13147
|
+
*
|
|
13148
|
+
* - `version`:发布版本;trim 后必须是完整 SemVer,可含 prerelease,不允许 build metadata 或模板值
|
|
13149
|
+
* `0.0.0`;
|
|
13150
|
+
* - `heybox.platforms`:项目实际承诺适配的非空、无重复平台 allowlist;输出按平台词表规范排序;
|
|
13151
|
+
* - `heybox.permissions`:严格权限对象;未知权限/字段或错误类型会失败,`enabled: false` 项不写入
|
|
13152
|
+
* Manifest。旧版本缺失声明时可能警告,新硬切版本会失败;
|
|
13153
|
+
* - `heybox.window`:可选的新 PC 开窗初值、最小尺寸和 `resizable` 声明;省略时不写该字段;
|
|
13154
|
+
* - `heybox.bindAppIds`:可选的最多 20 个正 int32 字符串 App ID;校验、去重并按数值排序,空数组
|
|
13155
|
+
* 在本地产物中等同不写;
|
|
13156
|
+
* - `heybox.companions`:可选的受管桌面程序声明;`source` 相对上述 `package.json` 所在目录解析,
|
|
13157
|
+
* 必须同时声明启用的 `companion` 权限和匹配的 Windows/macOS 目标平台。
|
|
13158
|
+
*
|
|
13159
|
+
* 产物中的 `sdkVersion` 来自当前实际安装的 `@heybox/hb-sdk`,不是项目可配置字段。Vite options、页面
|
|
13160
|
+
* 代码和普通环境变量不能覆盖上述 package 声明;插件也不会联网确认 App ID、平台批准或远端版本状态。
|
|
13161
|
+
*
|
|
13162
|
+
* Hook 行为如下:
|
|
13163
|
+
*
|
|
13164
|
+
* - `config`:省略 `base` 时补为 `'./'`,显式值只接受 `''` / `'./'`;注入 SDK 构建版本,且仅
|
|
13165
|
+
* `vite serve` 注入开发日志编译常量;
|
|
13166
|
+
* - `configResolved`:确认插件唯一性,记录真实 `root`、`build.outDir`、`serve|build` 命令和精确 HMR
|
|
13167
|
+
* WebSocket 地址;直接 `vite build` 使用该实际 `outDir`,`hb-sdk build` 则由 CLI 固定为 `dist/`;
|
|
13168
|
+
* - `configureServer`:为 `hb-sdk dev` 注册设备日志、本地小程序 Manifest 与 Companion Manifest/ZIP
|
|
13169
|
+
* 中间件;敏感路由只接受数值 loopback socket/Host、`GET|HEAD` 和 CLI 注入的独立短期令牌,快照在
|
|
13170
|
+
* 配置重载时按 digest 保留,并在服务真正关闭时清理;
|
|
13171
|
+
* - `transformIndexHtml`:校验 HTML URL/标签策略,注入 Runtime Gate;默认注入平台 CSP,serve 时
|
|
13172
|
+
* `connect-src` 只开放解析出的 HMR WebSocket,并额外注入调试日志 bootstrap;
|
|
13173
|
+
* - `buildEnd`:记住更早的 Rollup/Vite 错误,避免 `closeBundle` 的二次产物错误遮盖根因;
|
|
13174
|
+
* - `closeBundle`:serve 时直接完成;build 时复检最终 HTML,要求整个输出树只有根 `index.html`,再于
|
|
13175
|
+
* `build.outDir` 写入 `manifest.json`,并把 Companion 目录打包成
|
|
13176
|
+
* `companions/<alias>/<target>.zip`,记录 size、SHA-256、固定入口与 args。
|
|
13177
|
+
*
|
|
13178
|
+
* HTML 策略会隔离业务 script/modulepreload,直到父 Runtime Gate 以 namespace、版本、nonce、source
|
|
13179
|
+
* 以及 referrer 可确定时的 origin 完成探测;失败时显示只能在小黑盒 App 内打开的安全页。策略拒绝自动跳转、`<base>`、危险
|
|
13180
|
+
* resource hints 和不受支持的外部 URL,并按标签只允许相对 URL、明确允许的 `data:` / `blob:` 或
|
|
13181
|
+
* 小黑盒官方 HTTPS 资源。开发者自行提供的 CSP 会保留;插件管理的 CSP marker 可重复转换而不会叠加。
|
|
13182
|
+
*
|
|
13183
|
+
* 平台 CSP 默认始终保留,直接 `vite build` / `hb-sdk build` 不会因项目声明
|
|
13184
|
+
* `heybox.permissions.network.useOfficialDomain` 而跳过。只有官方 `hb-sdk dev` 或
|
|
13185
|
+
* `hb-sdk remote deploy` 将当前版本的 `network` 声明与远端批准结果求交并确认最终启用后,才会
|
|
13186
|
+
* 建立 verified 上下文供插件读取内部
|
|
13187
|
+
* `HB_SDK_RUNTIME_PERMISSION_CONTEXT` + `HB_SDK_RUNTIME_USE_OFFICIAL_DOMAIN` 组合跳过平台 CSP;单独设置
|
|
13188
|
+
* 任一值无效。0.8 兼容期对完全缺失权限声明的项目仍按迁移规则处理;`useOfficialDomain` 不参与
|
|
13189
|
+
* CSP 跳过决定。Runtime Gate、HTML 校验和 Manifest 生成始终保留。
|
|
13190
|
+
*
|
|
13191
|
+
* `HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN`、`HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN`、
|
|
13192
|
+
* `HB_SDK_SKIP_COMPANIONS` 以及上述 CSP 上下文均是 CLI/发布链路内部开关,不是项目配置项。它们在
|
|
13193
|
+
* 插件创建时捕获;开发服务配置重载只会从同一服务的内存快照恢复 CLI 令牌。业务代码和 Vite 配置
|
|
13194
|
+
* 不应手工设置、读取、记录或转发令牌值。正式声明必须继续写在 `package.json#heybox`,内部环境变量
|
|
13195
|
+
* 不能替代声明校验。
|
|
13196
|
+
*
|
|
13197
|
+
* `manifest.json` 是 release pipeline 元数据,不是部署后供页面 fetch 的 CDN 资源。发布链路使用
|
|
13198
|
+
* [isValidVersion](/reference/symbols/miniapp-publish/functions/isValidVersion) 复核版本、
|
|
13199
|
+
* [resolveMiniappManifestPlatforms](/reference/symbols/miniapp-publish/functions/resolveMiniappManifestPlatforms)
|
|
13200
|
+
* 解析平台硬切规则、
|
|
13201
|
+
* [parseMiniappBindAppIds](/reference/symbols/miniapp-publish/functions/parseMiniappBindAppIds) 复核游戏绑定,
|
|
13202
|
+
* 并通过 [shouldUploadDistFile](/reference/symbols/miniapp-publish/functions/shouldUploadDistFile) 将根
|
|
13203
|
+
* `manifest.json` 排除出普通 CDN 文件。Web/Companion 上传预算由
|
|
13204
|
+
* [validateUploadTotalSize](/reference/symbols/miniapp-publish/functions/validateUploadTotalSize) 等发布 helper
|
|
13205
|
+
* 独立校验,不能用插件成功代替 deploy 预检。
|
|
13206
|
+
*
|
|
13207
|
+
* @example
|
|
13208
|
+
* ```ts
|
|
13209
|
+
* import vue from '@vitejs/plugin-vue'
|
|
13210
|
+
* import { miniappManifest } from '@heybox/hb-sdk/vite'
|
|
13211
|
+
* import { defineConfig } from 'vite'
|
|
13212
|
+
*
|
|
13213
|
+
* export default defineConfig({
|
|
13214
|
+
* // base 省略时 miniappManifest() 会补为 './'
|
|
13215
|
+
* plugins: [vue(), miniappManifest()],
|
|
13216
|
+
* })
|
|
13217
|
+
* ```
|
|
13218
|
+
*
|
|
13219
|
+
* @see [MiniappManifestPlugin](/reference/symbols/vite/interfaces/MiniappManifestPlugin) 返回插件及各 hook 类型。
|
|
13220
|
+
* @see [安装](/guide/installation) Vite 接入、相对资源路径和构建命令。
|
|
13221
|
+
* @see [权限声明](/guide/permissions) `heybox.permissions` 严格 schema 与迁移规则。
|
|
13222
|
+
* @see [窗口尺寸与可缩放性](/guide/window-size) `heybox.window` 字段与 Host 消费语义。
|
|
13223
|
+
* @see [受管桌面程序](/guide/companion) Companion 声明、归档和本地联调边界。
|
|
13224
|
+
*/
|
|
13042
13225
|
function miniappManifest() {
|
|
13043
13226
|
const includeCompanions = process.env.HB_SDK_SKIP_COMPANIONS !== '1';
|
|
13044
13227
|
const deviceLogs = new DeviceLogStore();
|
package/dist/vite.esm.js
CHANGED
|
@@ -8,7 +8,7 @@ import { AsyncLocalStorage } from 'node:async_hooks';
|
|
|
8
8
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
9
9
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
10
10
|
? undefined
|
|
11
|
-
: '0.8.
|
|
11
|
+
: '0.8.2-alpha.2';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
@@ -3113,7 +3113,58 @@ function requireSemver () {
|
|
|
3113
3113
|
|
|
3114
3114
|
var semverExports = requireSemver();
|
|
3115
3115
|
|
|
3116
|
+
/** 单个小程序版本最多声明的关联游戏数量。 */
|
|
3116
3117
|
const MINIAPP_BIND_APP_IDS_MAX_COUNT = 20;
|
|
3118
|
+
/**
|
|
3119
|
+
* 校验并规范化小程序关联的游戏 App ID。
|
|
3120
|
+
*
|
|
3121
|
+
* @param value - 不可信声明。`undefined` 和 `[]` 均返回空绑定;其他值必须是最多 20 项的
|
|
3122
|
+
* 字符串数组,不接受 `null`、单个字符串、number 数组或类数组对象。
|
|
3123
|
+
* @param options - 可选诊断来源;`sourceLabel` 默认 `package.json#heybox.bindAppIds`,并原样
|
|
3124
|
+
* 作为所有错误消息的前缀。
|
|
3125
|
+
* @returns 新建、按 appid 数值升序排列且经 `Object.freeze` 冻结的 `readonly string[]`。
|
|
3126
|
+
* 输入数组及其顺序不会被修改;空输入也返回新的冻结空数组。
|
|
3127
|
+
* @throws `Error` `${sourceLabel} 必须是字符串数组`:`value` 不是数组。
|
|
3128
|
+
* @throws `Error` `${sourceLabel} 最多包含 20 个游戏 appid`:输入数组超过 20 项;数量检查
|
|
3129
|
+
* 先于逐项格式检查。
|
|
3130
|
+
* @throws `Error` `${sourceLabel} 包含非法游戏 appid:<value>`:任一项不是 string,或不匹配
|
|
3131
|
+
* `/^[1-9]\d*$/`。因此空串、首尾空白、`0`、前导零、正负号、小数、指数和非十进制字符
|
|
3132
|
+
* 都不会被自动修正。
|
|
3133
|
+
* @throws `Error` `${sourceLabel} 包含超出正 int32 范围的游戏 appid:<value>`:十进制值
|
|
3134
|
+
* 大于 `2147483647` 或不能成为安全整数。
|
|
3135
|
+
* @throws `Error` `${sourceLabel} 包含重复游戏 appid:<value>`:规范字符串在同一数组重复。
|
|
3136
|
+
*
|
|
3137
|
+
* @remarks
|
|
3138
|
+
* 合法范围是闭区间 `1..2147483647`,每项在输出中仍保持十进制 string。排序按数值而不是
|
|
3139
|
+
* 字典序执行,所以 `['3513350', '730', '10']` 输出为 `['10', '730', '3513350']`。
|
|
3140
|
+
* 函数先复制后排序并冻结结果,不排序或冻结调用方传入的数组。
|
|
3141
|
+
*
|
|
3142
|
+
* 这是同步、纯离线的格式规范化函数,不访问网络,也不确认 appid 是否真实存在、可绑定或
|
|
3143
|
+
* 属于当前开发者。`miniappManifest()` 用它校验 `package.json#heybox.bindAppIds` 并把非空结果
|
|
3144
|
+
* 写入 Manifest;远端 deploy 预检和提审才校验游戏可用性。缺失和空数组在普通构建中都表示
|
|
3145
|
+
* 无绑定,函数本身不处理 `remote deploy --from-version` 的历史快照继承语义。
|
|
3146
|
+
*
|
|
3147
|
+
* `bindAppIds` 是版本发布元数据,不是 Runtime 权限,也不会因调用
|
|
3148
|
+
* [navigation.openAppPage](/reference/sdk/navigation/openAppPage) 而变化。后者的 `appId` 是一次
|
|
3149
|
+
* 页面导航参数,允许 string 或 number、只要求字符串化后非空,不适用本函数的数组、int32、
|
|
3150
|
+
* 前导零、去重、20 项或排序规则。
|
|
3151
|
+
*
|
|
3152
|
+
* @example
|
|
3153
|
+
* ```ts
|
|
3154
|
+
* import { parseMiniappBindAppIds } from '@heybox/hb-sdk/miniapp-publish'
|
|
3155
|
+
*
|
|
3156
|
+
* const declared = ['3513350', '730', '10']
|
|
3157
|
+
* const appIds = parseMiniappBindAppIds(declared)
|
|
3158
|
+
*
|
|
3159
|
+
* console.log(appIds) // ['10', '730', '3513350']
|
|
3160
|
+
* console.log(declared) // ['3513350', '730', '10'],输入顺序不变
|
|
3161
|
+
* console.log(Object.isFrozen(appIds)) // true
|
|
3162
|
+
* ```
|
|
3163
|
+
*
|
|
3164
|
+
* @see [miniappManifest](/reference/symbols/vite/functions/miniappManifest)
|
|
3165
|
+
* @see [navigation.openAppPage](/reference/sdk/navigation/openAppPage)
|
|
3166
|
+
* @see [CLI 与远端发布](/guide/cli#生产构建)
|
|
3167
|
+
*/
|
|
3117
3168
|
function parseMiniappBindAppIds(value, options = {}) {
|
|
3118
3169
|
const sourceLabel = options.sourceLabel ?? 'package.json#heybox.bindAppIds';
|
|
3119
3170
|
if (value === undefined)
|
|
@@ -3142,8 +3193,25 @@ function parseMiniappBindAppIds(value, options = {}) {
|
|
|
3142
3193
|
return Object.freeze(appIds);
|
|
3143
3194
|
}
|
|
3144
3195
|
|
|
3196
|
+
/**
|
|
3197
|
+
* 所有小程序 iframe bridge envelope 共用的固定 namespace。
|
|
3198
|
+
*
|
|
3199
|
+
* @remarks 该值用于排除无关 `postMessage` 数据,不负责验证消息来源;接收方仍须校验 source 和 nonce,
|
|
3200
|
+
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3201
|
+
*/
|
|
3145
3202
|
const MINI_PROGRAM_MESSAGE_NAMESPACE = 'heybox:miniprogram';
|
|
3203
|
+
/**
|
|
3204
|
+
* 新消息默认发送的当前 bridge wire 版本。
|
|
3205
|
+
*
|
|
3206
|
+
* @remarks 接收 guard 为握手协商继续接受 v1 与 v2 envelope;cancel 与 operation progress 等 v2-only 消息仍必须使用 v2。
|
|
3207
|
+
*/
|
|
3146
3208
|
const MINI_PROGRAM_MESSAGE_VERSION = 2;
|
|
3209
|
+
/**
|
|
3210
|
+
* Runtime 在 iframe URL 中传递 bridge nonce 的 query 参数名。
|
|
3211
|
+
*
|
|
3212
|
+
* @remarks nonce 用于把消息关联到当前 iframe 实例,不是独立的身份认证凭据;接收方还必须校验 source,
|
|
3213
|
+
* 并在 origin 可以固定且协议模式要求时校验 origin。
|
|
3214
|
+
*/
|
|
3147
3215
|
const MINI_PROGRAM_BRIDGE_NONCE_PARAM = 'hb_mini_bridge_nonce';
|
|
3148
3216
|
/** Companion alias 的跨构建、Runtime 与 Host 规范。 */
|
|
3149
3217
|
const COMPANION_ALIAS_PATTERN = /^[a-z][a-z0-9-]{0,31}$/;
|
|
@@ -3359,6 +3427,11 @@ function isRecord$3(value) {
|
|
|
3359
3427
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
3360
3428
|
}
|
|
3361
3429
|
|
|
3430
|
+
/**
|
|
3431
|
+
* `package.json#heybox.platforms` 接受的平台值,顺序同时是 Manifest 的规范化输出顺序。
|
|
3432
|
+
*
|
|
3433
|
+
* @remarks 项目仍应只声明实际完成适配并经过验收的平台;模板默认值不是自动兼容承诺。
|
|
3434
|
+
*/
|
|
3362
3435
|
const MINIAPP_PLATFORM_VALUES = ['android', 'ios', 'ohos', 'windows', 'macos', 'linux'];
|
|
3363
3436
|
/** 窗口尺寸字段的脏值兜底上限;真正的上限是宿主侧显示器 workArea。 */
|
|
3364
3437
|
const MINIAPP_WINDOW_SIZE_MAX = 16_384;
|
|
@@ -13022,7 +13095,19 @@ const DEV_ERROR_MESSAGE = 'Companion 开发资源暂时不可用';
|
|
|
13022
13095
|
/** 与 Companion manifest 一致的单响应上限,避免本地调试入口被大体积声明撑爆。 */
|
|
13023
13096
|
const DEV_MINI_PROGRAM_MANIFEST_MAX_BYTES = 1024 * 1024;
|
|
13024
13097
|
const DEV_COMPANION_PATH_PATTERN = /^\/__hb_sdk__\/companions\/([a-z][a-z0-9-]{0,31})\/(windows-x64|macos-arm64)\.zip$/;
|
|
13098
|
+
/**
|
|
13099
|
+
* `hb-sdk dev` 为本地 Companion 产物访问注入的进程环境变量名。
|
|
13100
|
+
*
|
|
13101
|
+
* @remarks
|
|
13102
|
+
* 该变量由 CLI 管理,不是项目配置项。应用代码不应读取、设置、记录或转发它的值。
|
|
13103
|
+
*/
|
|
13025
13104
|
const HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN_ENV = 'HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN';
|
|
13105
|
+
/**
|
|
13106
|
+
* `hb-sdk dev` 为本地小程序 Manifest 访问注入的进程环境变量名。
|
|
13107
|
+
*
|
|
13108
|
+
* @remarks
|
|
13109
|
+
* 该变量由 CLI 管理,不是项目配置项。应用代码不应读取、设置、记录或转发它的值。
|
|
13110
|
+
*/
|
|
13026
13111
|
const HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN_ENV = 'HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN';
|
|
13027
13112
|
const devSnapshotStoreKey = Symbol.for('@heybox/hb-sdk/dev-companion-snapshots');
|
|
13028
13113
|
const devSnapshotRegistry = globalThis;
|
|
@@ -13036,6 +13121,104 @@ if (!devSnapshotRegistry[devSnapshotStoreKey]) {
|
|
|
13036
13121
|
});
|
|
13037
13122
|
}
|
|
13038
13123
|
const devSnapshotStores = devSnapshotRegistry[devSnapshotStoreKey];
|
|
13124
|
+
/**
|
|
13125
|
+
* 创建工坊小程序使用的 Vite 插件。
|
|
13126
|
+
*
|
|
13127
|
+
* @returns 可直接加入 Vite `plugins` 数组的
|
|
13128
|
+
* [MiniappManifestPlugin](/reference/symbols/vite/interfaces/MiniappManifestPlugin)。插件固定名为
|
|
13129
|
+
* `heybox-miniapp-manifest`,并提供 `config`、`configResolved`、`configureServer`、`buildEnd`、
|
|
13130
|
+
* `transformIndexHtml`、`closeBundle` hooks;这些 hooks 由 Vite 调用,应用代码不应手动调用。
|
|
13131
|
+
* @throws `Error` `config` 阶段发现 Vite `base` 不是 `''` 或 `'./'`,或无法解析当前 SDK 版本时抛出。
|
|
13132
|
+
* @throws `Error` `configResolved` 阶段发现已解析插件列表中 `miniappManifest()` 数量不是一个时抛出。
|
|
13133
|
+
* @throws `Error` HTML 缺少 `<head>`,包含 `meta refresh`、`<base>`、禁止的 resource hint,或资源 URL
|
|
13134
|
+
* 不符合小程序 HTML 策略时,`transformIndexHtml` / 生产产物复检抛出。
|
|
13135
|
+
* @throws `Error` 生产构建无法读取或解析最近的 `package.json`,`version`、`heybox.platforms`、
|
|
13136
|
+
* `heybox.permissions`、`heybox.window`、`heybox.bindAppIds` 或 `heybox.companions` 声明非法时抛出。
|
|
13137
|
+
* @throws `Error` 生产 `build.outDir` 缺少根 `index.html`、递归发现额外 HTML,或 Companion 权限、
|
|
13138
|
+
* 目标平台、来源目录、归档结构、入口二进制不符合约束时抛出;更早的 Rollup/Vite 错误会原样优先重抛。
|
|
13139
|
+
*
|
|
13140
|
+
* @remarks
|
|
13141
|
+
* 该函数必须从 `@heybox/hb-sdk/vite` 导入,在 `vite.config.ts` 中无参调用且只注册一次;它不是
|
|
13142
|
+
* iframe 业务代码 API,也没有 options 对象。小程序声明统一来自从 Vite `root` 向上找到的最近一个
|
|
13143
|
+
* `package.json`,插件只读取和规范化,不会改写源文件:
|
|
13144
|
+
*
|
|
13145
|
+
* - `version`:发布版本;trim 后必须是完整 SemVer,可含 prerelease,不允许 build metadata 或模板值
|
|
13146
|
+
* `0.0.0`;
|
|
13147
|
+
* - `heybox.platforms`:项目实际承诺适配的非空、无重复平台 allowlist;输出按平台词表规范排序;
|
|
13148
|
+
* - `heybox.permissions`:严格权限对象;未知权限/字段或错误类型会失败,`enabled: false` 项不写入
|
|
13149
|
+
* Manifest。旧版本缺失声明时可能警告,新硬切版本会失败;
|
|
13150
|
+
* - `heybox.window`:可选的新 PC 开窗初值、最小尺寸和 `resizable` 声明;省略时不写该字段;
|
|
13151
|
+
* - `heybox.bindAppIds`:可选的最多 20 个正 int32 字符串 App ID;校验、去重并按数值排序,空数组
|
|
13152
|
+
* 在本地产物中等同不写;
|
|
13153
|
+
* - `heybox.companions`:可选的受管桌面程序声明;`source` 相对上述 `package.json` 所在目录解析,
|
|
13154
|
+
* 必须同时声明启用的 `companion` 权限和匹配的 Windows/macOS 目标平台。
|
|
13155
|
+
*
|
|
13156
|
+
* 产物中的 `sdkVersion` 来自当前实际安装的 `@heybox/hb-sdk`,不是项目可配置字段。Vite options、页面
|
|
13157
|
+
* 代码和普通环境变量不能覆盖上述 package 声明;插件也不会联网确认 App ID、平台批准或远端版本状态。
|
|
13158
|
+
*
|
|
13159
|
+
* Hook 行为如下:
|
|
13160
|
+
*
|
|
13161
|
+
* - `config`:省略 `base` 时补为 `'./'`,显式值只接受 `''` / `'./'`;注入 SDK 构建版本,且仅
|
|
13162
|
+
* `vite serve` 注入开发日志编译常量;
|
|
13163
|
+
* - `configResolved`:确认插件唯一性,记录真实 `root`、`build.outDir`、`serve|build` 命令和精确 HMR
|
|
13164
|
+
* WebSocket 地址;直接 `vite build` 使用该实际 `outDir`,`hb-sdk build` 则由 CLI 固定为 `dist/`;
|
|
13165
|
+
* - `configureServer`:为 `hb-sdk dev` 注册设备日志、本地小程序 Manifest 与 Companion Manifest/ZIP
|
|
13166
|
+
* 中间件;敏感路由只接受数值 loopback socket/Host、`GET|HEAD` 和 CLI 注入的独立短期令牌,快照在
|
|
13167
|
+
* 配置重载时按 digest 保留,并在服务真正关闭时清理;
|
|
13168
|
+
* - `transformIndexHtml`:校验 HTML URL/标签策略,注入 Runtime Gate;默认注入平台 CSP,serve 时
|
|
13169
|
+
* `connect-src` 只开放解析出的 HMR WebSocket,并额外注入调试日志 bootstrap;
|
|
13170
|
+
* - `buildEnd`:记住更早的 Rollup/Vite 错误,避免 `closeBundle` 的二次产物错误遮盖根因;
|
|
13171
|
+
* - `closeBundle`:serve 时直接完成;build 时复检最终 HTML,要求整个输出树只有根 `index.html`,再于
|
|
13172
|
+
* `build.outDir` 写入 `manifest.json`,并把 Companion 目录打包成
|
|
13173
|
+
* `companions/<alias>/<target>.zip`,记录 size、SHA-256、固定入口与 args。
|
|
13174
|
+
*
|
|
13175
|
+
* HTML 策略会隔离业务 script/modulepreload,直到父 Runtime Gate 以 namespace、版本、nonce、source
|
|
13176
|
+
* 以及 referrer 可确定时的 origin 完成探测;失败时显示只能在小黑盒 App 内打开的安全页。策略拒绝自动跳转、`<base>`、危险
|
|
13177
|
+
* resource hints 和不受支持的外部 URL,并按标签只允许相对 URL、明确允许的 `data:` / `blob:` 或
|
|
13178
|
+
* 小黑盒官方 HTTPS 资源。开发者自行提供的 CSP 会保留;插件管理的 CSP marker 可重复转换而不会叠加。
|
|
13179
|
+
*
|
|
13180
|
+
* 平台 CSP 默认始终保留,直接 `vite build` / `hb-sdk build` 不会因项目声明
|
|
13181
|
+
* `heybox.permissions.network.useOfficialDomain` 而跳过。只有官方 `hb-sdk dev` 或
|
|
13182
|
+
* `hb-sdk remote deploy` 将当前版本的 `network` 声明与远端批准结果求交并确认最终启用后,才会
|
|
13183
|
+
* 建立 verified 上下文供插件读取内部
|
|
13184
|
+
* `HB_SDK_RUNTIME_PERMISSION_CONTEXT` + `HB_SDK_RUNTIME_USE_OFFICIAL_DOMAIN` 组合跳过平台 CSP;单独设置
|
|
13185
|
+
* 任一值无效。0.8 兼容期对完全缺失权限声明的项目仍按迁移规则处理;`useOfficialDomain` 不参与
|
|
13186
|
+
* CSP 跳过决定。Runtime Gate、HTML 校验和 Manifest 生成始终保留。
|
|
13187
|
+
*
|
|
13188
|
+
* `HB_SDK_COMPANION_ARTIFACT_ACCESS_TOKEN`、`HB_SDK_MINI_PROGRAM_MANIFEST_ACCESS_TOKEN`、
|
|
13189
|
+
* `HB_SDK_SKIP_COMPANIONS` 以及上述 CSP 上下文均是 CLI/发布链路内部开关,不是项目配置项。它们在
|
|
13190
|
+
* 插件创建时捕获;开发服务配置重载只会从同一服务的内存快照恢复 CLI 令牌。业务代码和 Vite 配置
|
|
13191
|
+
* 不应手工设置、读取、记录或转发令牌值。正式声明必须继续写在 `package.json#heybox`,内部环境变量
|
|
13192
|
+
* 不能替代声明校验。
|
|
13193
|
+
*
|
|
13194
|
+
* `manifest.json` 是 release pipeline 元数据,不是部署后供页面 fetch 的 CDN 资源。发布链路使用
|
|
13195
|
+
* [isValidVersion](/reference/symbols/miniapp-publish/functions/isValidVersion) 复核版本、
|
|
13196
|
+
* [resolveMiniappManifestPlatforms](/reference/symbols/miniapp-publish/functions/resolveMiniappManifestPlatforms)
|
|
13197
|
+
* 解析平台硬切规则、
|
|
13198
|
+
* [parseMiniappBindAppIds](/reference/symbols/miniapp-publish/functions/parseMiniappBindAppIds) 复核游戏绑定,
|
|
13199
|
+
* 并通过 [shouldUploadDistFile](/reference/symbols/miniapp-publish/functions/shouldUploadDistFile) 将根
|
|
13200
|
+
* `manifest.json` 排除出普通 CDN 文件。Web/Companion 上传预算由
|
|
13201
|
+
* [validateUploadTotalSize](/reference/symbols/miniapp-publish/functions/validateUploadTotalSize) 等发布 helper
|
|
13202
|
+
* 独立校验,不能用插件成功代替 deploy 预检。
|
|
13203
|
+
*
|
|
13204
|
+
* @example
|
|
13205
|
+
* ```ts
|
|
13206
|
+
* import vue from '@vitejs/plugin-vue'
|
|
13207
|
+
* import { miniappManifest } from '@heybox/hb-sdk/vite'
|
|
13208
|
+
* import { defineConfig } from 'vite'
|
|
13209
|
+
*
|
|
13210
|
+
* export default defineConfig({
|
|
13211
|
+
* // base 省略时 miniappManifest() 会补为 './'
|
|
13212
|
+
* plugins: [vue(), miniappManifest()],
|
|
13213
|
+
* })
|
|
13214
|
+
* ```
|
|
13215
|
+
*
|
|
13216
|
+
* @see [MiniappManifestPlugin](/reference/symbols/vite/interfaces/MiniappManifestPlugin) 返回插件及各 hook 类型。
|
|
13217
|
+
* @see [安装](/guide/installation) Vite 接入、相对资源路径和构建命令。
|
|
13218
|
+
* @see [权限声明](/guide/permissions) `heybox.permissions` 严格 schema 与迁移规则。
|
|
13219
|
+
* @see [窗口尺寸与可缩放性](/guide/window-size) `heybox.window` 字段与 Host 消费语义。
|
|
13220
|
+
* @see [受管桌面程序](/guide/companion) Companion 声明、归档和本地联调边界。
|
|
13221
|
+
*/
|
|
13039
13222
|
function miniappManifest() {
|
|
13040
13223
|
const includeCompanions = process.env.HB_SDK_SKIP_COMPANIONS !== '1';
|
|
13041
13224
|
const deviceLogs = new DeviceLogStore();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heybox/hb-sdk",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.2-alpha.2",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"./src/index.ts",
|
|
6
6
|
"./src/core/singleton.ts",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"skills": "1.5.23",
|
|
65
65
|
"undici": "^7.28.0",
|
|
66
66
|
"ws": "^8.18.0",
|
|
67
|
-
"@heybox/hb-sdk-protocol": "0.8.
|
|
67
|
+
"@heybox/hb-sdk-protocol": "0.8.2-alpha.2"
|
|
68
68
|
},
|
|
69
69
|
"peerDependencies": {
|
|
70
70
|
"vite": ">=5"
|
|
@@ -115,13 +115,13 @@
|
|
|
115
115
|
"vue-tsc": "^3.3.7",
|
|
116
116
|
"vite": "^8.0.12",
|
|
117
117
|
"vitest": "^3.2.4",
|
|
118
|
-
"@heybox-domain/heybox-
|
|
119
|
-
"@heybox/hb-
|
|
120
|
-
"@heybox/runtime-policy": "~0.2.0",
|
|
118
|
+
"@heybox-domain/heybox-vue3-ui": "~0.1.0",
|
|
119
|
+
"@heybox/hb-api": "~1.28.4",
|
|
121
120
|
"@heybox/runtime": "~0.2.0",
|
|
121
|
+
"@heybox/hb-sdk-runtime": "~0.8.2-alpha.2",
|
|
122
122
|
"@heybox/runtime-transport-fetch": "~0.2.0",
|
|
123
|
-
"@heybox/
|
|
124
|
-
"@heybox
|
|
123
|
+
"@heybox-domain/heybox-theme": "~0.1.0",
|
|
124
|
+
"@heybox/runtime-policy": "~0.2.0"
|
|
125
125
|
},
|
|
126
126
|
"publishConfig": {
|
|
127
127
|
"registry": "https://registry.npmjs.org/",
|