expo-harmony-toolkit 1.7.1 → 1.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.en.md +20 -9
  2. package/README.md +22 -11
  3. package/build/core/autolinking.d.ts +10 -0
  4. package/build/core/autolinking.js +421 -0
  5. package/build/core/build/commands.d.ts +19 -0
  6. package/build/core/build/commands.js +61 -0
  7. package/build/core/build/compatibilityShims.d.ts +1 -0
  8. package/build/core/build/compatibilityShims.js +272 -0
  9. package/build/core/build/localHar.d.ts +13 -0
  10. package/build/core/build/localHar.js +337 -0
  11. package/build/core/build/reporting.d.ts +19 -0
  12. package/build/core/build/reporting.js +67 -0
  13. package/build/core/build/rnohCompatibility.d.ts +1 -0
  14. package/build/core/build/rnohCompatibility.js +38 -0
  15. package/build/core/build.d.ts +4 -12
  16. package/build/core/build.js +70 -762
  17. package/build/core/constants.d.ts +2 -1
  18. package/build/core/constants.js +3 -2
  19. package/build/core/dependencyInspection.d.ts +2 -0
  20. package/build/core/dependencyInspection.js +112 -0
  21. package/build/core/env.js +1 -1
  22. package/build/core/report.js +33 -10
  23. package/build/core/signing.d.ts +2 -0
  24. package/build/core/signing.js +30 -0
  25. package/build/core/template/capabilityRegistry.d.ts +9 -0
  26. package/build/core/template/capabilityRegistry.js +84 -0
  27. package/build/core/template/expoModulesCoreShim.d.ts +2 -0
  28. package/build/core/template/expoModulesCoreShim.js +279 -0
  29. package/build/core/template/metro.d.ts +2 -0
  30. package/build/core/template/metro.js +213 -0
  31. package/build/core/template/nativeFiles.d.ts +8 -0
  32. package/build/core/template/nativeFiles.js +333 -0
  33. package/build/core/template/renderers/camera.d.ts +4 -0
  34. package/build/core/template/renderers/camera.js +612 -0
  35. package/build/core/template/renderers/fileSystem.d.ts +4 -0
  36. package/build/core/template/renderers/fileSystem.js +814 -0
  37. package/build/core/template/renderers/imagePicker.d.ts +4 -0
  38. package/build/core/template/renderers/imagePicker.js +753 -0
  39. package/build/core/template/renderers/location.d.ts +4 -0
  40. package/build/core/template/renderers/location.js +836 -0
  41. package/build/core/template/runtimeShims.d.ts +2 -0
  42. package/build/core/template/runtimeShims.js +192 -0
  43. package/build/core/template/support.d.ts +11 -0
  44. package/build/core/template/support.js +108 -0
  45. package/build/core/template.d.ts +2 -6
  46. package/build/core/template.js +47 -3966
  47. package/build/data/capabilities.js +45 -19
  48. package/build/data/dependencyCatalog.js +10 -0
  49. package/build/data/publicDocs.d.ts +11 -0
  50. package/build/data/publicDocs.js +28 -0
  51. package/build/data/validatedMatrices.js +9 -1
  52. package/build/docs/render.d.ts +9 -0
  53. package/build/docs/render.js +248 -0
  54. package/build/types.d.ts +12 -0
  55. package/docs/cli-build.md +1 -1
  56. package/docs/npm-release.md +1 -0
  57. package/docs/official-app-shell-sample.md +2 -1
  58. package/docs/official-minimal-sample.md +2 -1
  59. package/docs/official-native-capabilities-sample.md +28 -47
  60. package/docs/official-ui-stack-sample.md +2 -1
  61. package/docs/signing-and-release.md +3 -0
  62. package/docs/support-matrix.md +38 -16
  63. package/package.json +13 -5
  64. package/docs/v1.5.1-acceptance.md +0 -385
  65. package/docs/v1.6.0-acceptance.md +0 -193
  66. package/docs/v1.7.0-acceptance.md +0 -111
  67. package/docs/v1.7.1-acceptance.md +0 -111
@@ -2,12 +2,11 @@
2
2
 
3
3
  路径:`examples/official-native-capabilities-sample`
4
4
 
5
- 这个 sample 是 `v1.7.x` 的官方 preview native-capability walkthrough。它的目标不是把 preview 能力包装成 `verified`,而是把“当前真实支持的核心路径”和“当前明确不支持的边界”都讲清楚。
5
+ 这个 sample 是 `v1.7.3` 的官方 preview native-capability walkthrough。它的目标不是把 preview 能力包装成 `verified`,而是把四项能力当前真实可承诺的 `🟡` 子集集中演示出来,并把 preview 边界收敛到真机 / release 证据,而不是接口缺口。
6
6
 
7
7
  标记说明:
8
8
 
9
9
  - `🟡` 当前可用子集:这部分已经有可信实现,样例和模拟器路径可用;下一步主要缺真机 / release 证据
10
- - `🟠` 当前未纳入子集:包本身已进入 `preview`,但这个具体子 API 还没有到可信对外承诺;这不是“只差真机”
11
10
 
12
11
  ## 当前覆盖
13
12
 
@@ -29,20 +28,13 @@
29
28
 
30
29
  `🟡 当前可用子集`:
31
30
 
32
- - 创建 sandbox 目录
33
- - UTF-8 写入
34
- - 读回内容
35
- - `getInfoAsync`
36
- - `readDirectoryAsync`
37
- - `copyAsync`
38
- - `moveAsync`
39
- - 删除生成产物
40
-
41
- `🟠 当前未纳入子集`:
42
-
43
- - `base64`
31
+ - sandbox 目录创建
32
+ - UTF-8 写入 / 读回
33
+ - base64 roundtrip
34
+ - append / partial read
35
+ - `getInfoAsync({ md5: true })`
44
36
  - `downloadAsync`
45
- - 更广的 Expo parity
37
+ - 清理生成产物
46
38
 
47
39
  ### `/image-picker`
48
40
 
@@ -50,52 +42,42 @@
50
42
 
51
43
  - media permission
52
44
  - camera permission
53
- - 单图图库选择
54
- - 单次系统相机拍照
55
- - denied / canceled / successful asset 三类结果展示
56
-
57
- `🟠 当前未纳入子集`:
58
-
59
- - `getPendingResultAsync` 的完整 Expo parity
60
- - 多选、多媒体、更深一层的系统恢复语义
45
+ - 单选图库选择
46
+ - 多选图库选择
47
+ - mixed image+video library selection
48
+ - system photo capture
49
+ - system video capture
50
+ - pending result 恢复
51
+ - image / video asset metadata 展示
61
52
 
62
53
  ### `/location`
63
54
 
64
55
  `🟡 当前可用子集`:
65
56
 
66
57
  - foreground permission
58
+ - background permission
67
59
  - `getCurrentPositionAsync`
68
- - `getLastKnownPositionAsync`
60
+ - `watchPositionAsync`
61
+ - `getHeadingAsync`
62
+ - `watchHeadingAsync`
69
63
  - `geocodeAsync`
70
64
  - `reverseGeocodeAsync`
71
65
 
72
- `🟠 当前未纳入子集`:
73
-
74
- - `watchPositionAsync`
75
- - background permission parity
76
- - `watchHeadingAsync`
77
- - `getHeadingAsync`
66
+ 说明:
78
67
 
79
- 这些 `🟠` 项不是“已经实现,只差真机验证”,而是当前还没补齐到可信实现,所以暂时不纳入对外可承诺子集。
68
+ - 背景权限按 Harmony 的独立后台权限契约暴露,不伪装成 Expo 的完全同构平台行为
69
+ - heading 使用 Harmony 传感器方向语义,属于最接近 Expo 的等价语义,不复用 GPS `direction`
80
70
 
81
71
  ### `/camera`
82
72
 
83
73
  `🟡 当前可用子集`:
84
74
 
85
- - camera permission
86
- - 通过 Harmony system camera UI 完成 still-photo capture
87
- - 把返回 asset metadata 回传给 JS
88
- - denied / canceled / successful capture 三类结果展示
89
-
90
- `🟠 当前未纳入子集`:
91
-
92
- - embedded live preview
75
+ - embedded `CameraView` preview
93
76
  - `pausePreview` / `resumePreview`
94
- - microphone permission parity
95
- - video recording
96
- - scanning APIs 之外的更深 Expo parity
97
-
98
- 这些 `🟠` 项不是“已经实现,只差真机验证”,而是当前还没补齐到可信实现,所以暂时不纳入对外可承诺子集。
77
+ - still photo capture
78
+ - video recording start / stop / toggle
79
+ - microphone permission snapshot
80
+ - denied / canceled / successful result 展示
99
81
 
100
82
  ## 推荐命令
101
83
 
@@ -126,7 +108,7 @@ pnpm run harmony:doctor:strict
126
108
  如果要继续验证 release 构建,先准备本地签名覆盖文件:
127
109
 
128
110
  ```bash
129
- mkdir -p .expo-harmony
111
+ cp .expo-harmony/signing.local.example.json .expo-harmony/signing.local.json
130
112
  $EDITOR .expo-harmony/signing.local.json
131
113
  pnpm run harmony:env
132
114
  pnpm run harmony:build:release
@@ -134,6 +116,7 @@ pnpm run harmony:build:release
134
116
 
135
117
  说明:
136
118
 
119
+ - `.expo-harmony/signing.local.example.json` 是可直接复制的本地 signing 範本
137
120
  - `.expo-harmony/signing.local.json` 是本地 signing 入口
138
121
  - toolkit 会把本地 signing 合并进 `harmony/build-profile.json5`
139
122
  - 即使 release 构建可走通,在没有真机前,这四项能力也仍保持 `preview`
@@ -142,7 +125,5 @@ pnpm run harmony:build:release
142
125
 
143
126
  - 这个 sample 属于 `preview` 主线,不等于已经进入 `verified`
144
127
  - `doctor-report.json` 与 `toolkit-config.json` 中的 `runtimeMode` / `evidence.*` 会如实反映这些能力距离 verified 还缺哪些证据
145
- - `🟡` 项可以理解为“只差真机 / release 证据的下一步”
146
- - `🟠` 项不能理解成“只差真机”,因为当前实现边界本身还没有补齐
147
128
  - 当前重点是“模拟器下真正可用、核心流清楚、文档一致”
148
129
  - 等未来补齐真机 gate 后,才讨论 capability promotion
@@ -47,7 +47,7 @@ pnpm run harmony:build:debug
47
47
  如果要继续验证 release 构建,先准备本地签名覆盖文件:
48
48
 
49
49
  ```bash
50
- mkdir -p .expo-harmony
50
+ cp .expo-harmony/signing.local.example.json .expo-harmony/signing.local.json
51
51
  $EDITOR .expo-harmony/signing.local.json
52
52
  pnpm run harmony:env
53
53
  pnpm run harmony:build:release
@@ -55,6 +55,7 @@ pnpm run harmony:build:release
55
55
 
56
56
  说明:
57
57
 
58
+ - `.expo-harmony/signing.local.example.json` 是可直接复制的本地 signing 範本
58
59
  - `.expo-harmony/signing.local.json` 是本地 signing 入口
59
60
  - signing 缺失时,release 构建应明确失败,而不是假成功
60
61
 
@@ -27,6 +27,7 @@ expo-harmony env
27
27
 
28
28
  - `debug` 构建仍可继续做本地验证
29
29
  - `release` 构建不应视为 ready
30
+ - 可以直接从 `.expo-harmony/signing.local.example.json` 复制出 `.expo-harmony/signing.local.json` 再填入真实材料
30
31
 
31
32
  ## 推荐流程
32
33
 
@@ -40,6 +41,8 @@ expo-harmony build-hap --mode debug
40
41
  ### Release 验证
41
42
 
42
43
  ```bash
44
+ cp .expo-harmony/signing.local.example.json .expo-harmony/signing.local.json
45
+ $EDITOR .expo-harmony/signing.local.json
43
46
  expo-harmony env
44
47
  expo-harmony build-hap --mode release
45
48
  ```
@@ -5,6 +5,7 @@
5
5
  - `supportTier` 表示公开承诺层级
6
6
  - `runtimeMode` 表示当前运行时接入形态:`shim`、`adapter`、`verified`
7
7
  - `evidence` 表示距离 verified 还缺哪些证据格
8
+ - `evidenceSource` 表示每个证据格来自自动化、人工记录,还是当前无证据
8
9
 
9
10
  `doctor --strict` 继续只代表 `verified`。
10
11
 
@@ -12,6 +13,7 @@
12
13
 
13
14
  唯一 `verified` 矩阵仍是 `expo55-rnoh082-ui-stack`。
14
15
 
16
+ <!-- GENERATED:support-matrix-verified-matrix:start -->
15
17
  | 项目 | 要求 |
16
18
  | --- | --- |
17
19
  | Expo SDK | `55` |
@@ -21,9 +23,10 @@
21
23
  | `@react-native-oh/react-native-harmony-cli` | `0.82.18` |
22
24
  | `@react-native-community/cli` | `20.x` |
23
25
  | `metro` | `0.83.x` |
24
- | App Shell 依赖 | `expo-router` `6.x`、`expo-linking` `55.x`、`expo-constants` `55.x` |
26
+ | App Shell 依赖 | `expo-router` `55.x`、`expo-linking` `55.x`、`expo-constants` `55.x`、`@expo/metro-runtime` `55.x`、`react-dom` `19.1.1` |
25
27
  | UI stack 依赖 | `react-native-reanimated` `3.6.0`、`react-native-svg` `15.0.0` |
26
28
  | 原生标识 | 至少设置 `android.package` 或 `ios.bundleIdentifier` |
29
+ <!-- GENERATED:support-matrix-verified-matrix:end -->
27
30
 
28
31
  ## Support Tiers
29
32
 
@@ -36,26 +39,31 @@
36
39
 
37
40
  ## Verified Allowlist
38
41
 
42
+ <!-- GENERATED:support-matrix-verified-allowlist:start -->
39
43
  - `expo`
44
+ - `@expo/metro-runtime`
40
45
  - `expo-constants`
41
46
  - `expo-linking`
42
47
  - `expo-router`
43
48
  - `react`
49
+ - `react-dom`
44
50
  - `react-native`
45
51
  - `expo-status-bar`
46
52
  - `@babel/runtime`
47
53
  - `@react-native-community/cli`
48
54
  - `metro`
49
- - `expo-harmony-toolkit`
50
55
  - `@react-native-oh/react-native-harmony`
51
56
  - `@react-native-oh/react-native-harmony-cli`
57
+ - `expo-harmony-toolkit`
52
58
  - `react-native-reanimated`
53
- - `react-native-svg`
54
59
  - `@react-native-oh-tpl/react-native-reanimated`
60
+ - `react-native-svg`
55
61
  - `@react-native-oh-tpl/react-native-svg`
62
+ <!-- GENERATED:support-matrix-verified-allowlist:end -->
56
63
 
57
64
  ## Capability Telemetry
58
65
 
66
+ <!-- GENERATED:support-matrix-capability-telemetry:start -->
59
67
  所有 capability 从现在开始都同时公开:
60
68
 
61
69
  - `supportTier`
@@ -64,42 +72,47 @@
64
72
  - `evidence.debugBuild`
65
73
  - `evidence.device`
66
74
  - `evidence.release`
75
+ - `evidenceSource.bundle`
76
+ - `evidenceSource.debugBuild`
77
+ - `evidenceSource.device`
78
+ - `evidenceSource.release`
67
79
 
68
80
  判读规则:
69
81
 
70
82
  - `runtimeMode=shim`:说明当前还在桥接或占位阶段,即使 bundle / debug build 已完成,也不应宣称 verified
71
83
  - `runtimeMode=adapter`:说明已经进入真实适配路径,但仍缺少某些验收证据
72
84
  - `runtimeMode=verified`:说明能力已进入正式承诺,且证据闭环完成
85
+ <!-- GENERATED:support-matrix-capability-telemetry:end -->
73
86
 
74
87
  为了避免把“只差真机”与“当前子 API 还没实现到位”混在一起,`v1.7.x` 文档额外使用以下标记:
75
88
 
76
89
  - `🟡 可用待晋升`:当前子集已经有可信实现,样例和模拟器路径可用;下一步主要缺真机 / release 证据
77
- - `🟠 未纳入当前子集`:包本身已进入 `preview`,但这个具体子 API 还没有到可信对外承诺;这不是“只差真机”
78
90
  - `⛔ 完全不支持`:能力仍在 catalog 外,或根本不在当前公开承诺范围
79
91
 
80
92
  ## Preview 能力
81
93
 
94
+ <!-- GENERATED:support-matrix-preview-capabilities:start -->
82
95
  | Expo 能力 | 当前层级 | runtimeMode | evidence | Harmony 依赖方向 | 受管权限 | 官方 sample route |
83
96
  | --- | --- | --- | --- | --- | --- | --- |
84
- | `expo-file-system` | `preview` | `adapter` | `bundle=yes, debugBuild=yes, device=yes, release=no` | toolkit-managed sandbox file adapter | 无新增必需权限 | `/file-system` |
85
- | `expo-image-picker` | `preview` | `adapter` | `bundle=yes, debugBuild=yes, device=yes, release=no` | toolkit-managed Harmony media picker adapter | `ohos.permission.CAMERA`、`ohos.permission.READ_IMAGEVIDEO` | `/image-picker` |
86
- | `expo-location` | `preview` | `adapter` | `bundle=yes, debugBuild=yes, device=yes, release=no` | toolkit-managed `@ohos.geoLocationManager` TurboModule | `ohos.permission.LOCATION`、`ohos.permission.APPROXIMATELY_LOCATION` | `/location` |
87
- | `expo-camera` | `preview` | `adapter` | `bundle=yes, debugBuild=yes, device=yes, release=no` | toolkit-managed `@ohos.multimedia.cameraPicker` TurboModule | `ohos.permission.CAMERA` | `/camera` |
97
+ | `expo-file-system` | `preview` | `adapter` | `bundle=yes[automated], debugBuild=yes[automated], device=yes[manual-doc], release=no[none]` | react-native-fs | 无新增必需权限 | `/file-system` |
98
+ | `expo-image-picker` | `preview` | `adapter` | `bundle=yes[automated], debugBuild=yes[automated], device=yes[manual-doc], release=no[none]` | react-native-image-picker, react-native-permissions | ohos.permission.CAMERAohos.permission.MICROPHONE、ohos.permission.READ_IMAGEVIDEO | `/image-picker` |
99
+ | `expo-location` | `preview` | `adapter` | `bundle=yes[automated], debugBuild=yes[automated], device=yes[manual-doc], release=no[none]` | @react-native-community/geolocation, react-native-permissions | ohos.permission.LOCATIONohos.permission.APPROXIMATELY_LOCATION、ohos.permission.LOCATION_IN_BACKGROUND、ohos.permission.ACCELEROMETER | `/location` |
100
+ | `expo-camera` | `preview` | `adapter` | `bundle=yes[automated], debugBuild=yes[automated], device=yes[manual-doc], release=no[none]` | react-native-camera-kit, react-native-permissions | ohos.permission.CAMERA、ohos.permission.MICROPHONE | `/camera` |
101
+ <!-- GENERATED:support-matrix-preview-capabilities:end -->
88
102
 
89
103
  说明:
90
104
 
91
105
  - 当前四项 preview capability 都已经完成 preview baseline 的 bundle / debug build / route walkthrough
92
- - 四项 preview capability 都已经进入 `adapter` 路径;`device=yes` 只表示已有样例侧与运行时路径证据,仍不代表 verified 或 release-ready
106
+ - 四项 preview capability 都已经进入 `adapter` 路径;`device=yes[manual-doc]` 只表示已有人工设备验收记录,仍不代表 verified 或 release-ready
107
+ - 当前 preview baseline 的默认 evidenceSource 固定为:`bundle/debugBuild=automated`、`device=manual-doc`、`release=none`
93
108
  - `expo-file-system`
94
- - `🟡` 当前主路径是 UTF-8 sandbox I/O,包括目录创建、读写、复制、移动与删除
109
+ - `🟡` 当前主路径是 UTF-8/base64 sandbox I/O、append/partial read、`getInfoAsync({ md5: true })` 与 `downloadAsync`
95
110
  - `expo-image-picker`
96
- - `🟡` 当前主路径是单图图库选择、单次系统相机拍照,以及 denied / canceled / successful asset 结果展示
111
+ - `🟡` 当前主路径是单选、多选、mixed library selection、system photo/video capture、pending result 恢复,以及 image/video metadata 展示
97
112
  - `expo-location`
98
- - `🟡` 当前主路径是前台权限、current / last-known / geocode / reverse-geocode
99
- - `🟠` `watchPositionAsync`、背景权限与 heading API 当前未纳入 v1.7.x 可承诺子集;这不是“只差真机”,而是实现还没补齐到可信状态
113
+ - `🟡` 当前主路径是 foreground/background permission、current / watch、heading snapshot/watch、geocode / reverse-geocode
100
114
  - `expo-camera`
101
- - `🟡` 当前主路径是相机权限与通过系统相机 UI still capture
102
- - `🟠` embedded preview、preview pause/resume、microphone、video 当前未纳入 v1.7.x 可承诺子集;这不是“只差真机”,而是实现还没补齐到可信状态
115
+ - `🟡` 当前主路径是 embedded preview、preview pause/resume、still capture、video recording 与 microphone permission
103
116
 
104
117
  ## Experimental 能力
105
118
 
@@ -110,6 +123,7 @@
110
123
 
111
124
  ## UI Stack 配对规则
112
125
 
126
+ <!-- GENERATED:support-matrix-ui-stack:start -->
113
127
  canonical 包与 Harmony adapter 包固定为双向强制:
114
128
 
115
129
  - `react-native-reanimated` ↔ `@react-native-oh-tpl/react-native-reanimated`
@@ -126,6 +140,7 @@ canonical 包与 Harmony adapter 包固定为双向强制:
126
140
 
127
141
  - `@react-native-oh-tpl/react-native-reanimated`: `github:react-native-oh-library/react-native-harmony-reanimated#9fdbe676209937383907be0592291223c6ca7ad7&path:react-native-harmony-reanimated`
128
142
  - `@react-native-oh-tpl/react-native-svg`: `github:react-native-oh-library/react-native-harmony-svg#97c31d2f72559931d62fa84a9c86e86d343753d3&path:react-native-harmony-svg`
143
+ <!-- GENERATED:support-matrix-ui-stack:end -->
129
144
 
130
145
  ## `doctor`
131
146
 
@@ -150,10 +165,15 @@ expo-harmony doctor --project-root /path/to/app --target-tier preview
150
165
  - `capabilities[].evidence.debugBuild`
151
166
  - `capabilities[].evidence.device`
152
167
  - `capabilities[].evidence.release`
168
+ - `capabilities[].evidenceSource.bundle`
169
+ - `capabilities[].evidenceSource.debugBuild`
170
+ - `capabilities[].evidenceSource.device`
171
+ - `capabilities[].evidenceSource.release`
153
172
 
154
173
  判读方式:
155
174
 
156
175
  - 任一 `evidence.* = false`,表示晋升到 verified 前仍缺证据
176
+ - `evidenceSource.device = manual-doc`,表示该证据来自人工验收记录,不应被表述成自动化设备验证
157
177
  - `runtimeMode !== verified`,表示即使已有部分证据,也仍不属于正式承诺
158
178
 
159
179
  当前公开阻断 issue code 继续包括:
@@ -187,13 +207,14 @@ toolkit 受管的核心产物仍包括:
187
207
 
188
208
  - `entry/src/main/module.json5` 的 `requestPermissions` 由 toolkit 根据已启用能力自动补齐
189
209
  - preview / experimental 能力的 Metro import path 通过 `.expo-harmony/shims/<package>` 接管
190
- - `toolkit-config.json` 会记录 capability 的 `runtimeMode` 与 `evidence`
210
+ - `toolkit-config.json` 会记录 capability 的 `runtimeMode`、`evidence` 与 `evidenceSource`
191
211
  - verified UI stack 依赖继续走现有 autolinking + `.har` 管理逻辑
192
212
 
193
213
  ## Release Tracks
194
214
 
195
215
  从 `v1.8` 开始,发布节奏按双轨设计:
196
216
 
217
+ <!-- GENERATED:support-matrix-release-tracks:start -->
197
218
  - `latest`
198
219
  - 只承接完整验收的 `verified` 能力
199
220
  - 只允许 verified sample / gate 作为发布依据
@@ -201,6 +222,7 @@ toolkit 受管的核心产物仍包括:
201
222
  - 承接 preview fast track
202
223
  - 必须至少通过 preview sample、bundle、debug build gate
203
224
  - 不得被描述为 verified 或 release-ready
225
+ <!-- GENERATED:support-matrix-release-tracks:end -->
204
226
 
205
227
  ## Capability Promotion Gate
206
228
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-harmony-toolkit",
3
- "version": "1.7.1",
3
+ "version": "1.7.3",
4
4
  "description": "面向 Managed/CNG Expo 项目的 HarmonyOS 迁移、准入检查与 UI-stack 构建工具链",
5
5
  "main": "app.plugin.js",
6
6
  "types": "build/index.d.ts",
@@ -23,12 +23,21 @@
23
23
  "README.md",
24
24
  "README.en.md",
25
25
  "LICENSE",
26
- "docs"
26
+ "docs/cli-build.md",
27
+ "docs/npm-release.md",
28
+ "docs/official-app-shell-sample.md",
29
+ "docs/official-minimal-sample.md",
30
+ "docs/official-native-capabilities-sample.md",
31
+ "docs/official-ui-stack-sample.md",
32
+ "docs/roadmap.md",
33
+ "docs/signing-and-release.md",
34
+ "docs/support-matrix.md"
27
35
  ],
28
36
  "scripts": {
29
- "build": "tsc --project tsconfig.json",
37
+ "build": "rm -rf build && tsc --project tsconfig.json",
30
38
  "clean": "rm -rf build coverage",
31
- "pack:check": "npm pack --dry-run",
39
+ "docs:sync": "node ./scripts/update-generated-docs.js",
40
+ "pack:check": "node ./scripts/pack.js --dry-run --json",
32
41
  "release:check": "node ./scripts/release-check.js",
33
42
  "test": "jest --runInBand",
34
43
  "prepare": "pnpm build"
@@ -77,7 +86,6 @@
77
86
  "@types/jest": "^30.0.0",
78
87
  "@types/node": "^24.5.2",
79
88
  "@types/semver": "^7.7.1",
80
- "expo": "^55.0.8",
81
89
  "jest": "^30.2.0",
82
90
  "ts-jest": "^29.4.4",
83
91
  "typescript": "^5.9.2"