From 4749a65acb7dbe6ba466a6180c84078761aa584e Mon Sep 17 00:00:00 2001 From: kdletters Date: Sun, 21 Jun 2026 20:28:42 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=81=E5=AE=9A=E7=A7=BB=E5=8A=A8=E5=A3=B3?= =?UTF-8?q?=E8=83=BD=E5=8A=9B=E6=B8=85=E5=8D=95=E5=85=B1=E4=BA=AB=E6=9D=A5?= =?UTF-8?q?=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 读取移动壳 capabilities 源码进入单端检查 要求移动基础能力直接引用共享 Expo profile 要求 iOS 移动能力直接引用共享 Expo profile --- apps/mobile-shell/scripts/check-config.mjs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/apps/mobile-shell/scripts/check-config.mjs b/apps/mobile-shell/scripts/check-config.mjs index 5da77bed6..2a334f46a 100644 --- a/apps/mobile-shell/scripts/check-config.mjs +++ b/apps/mobile-shell/scripts/check-config.mjs @@ -46,6 +46,11 @@ const badgePath = new URL('../src/host-bridge/badge.ts', import.meta.url); const badgeSource = fs.readFileSync(badgePath, 'utf8'); const badgeTestPath = new URL('../src/host-bridge/badge.test.ts', import.meta.url); const badgeTestSource = fs.readFileSync(badgeTestPath, 'utf8'); +const capabilitiesPath = new URL( + '../src/host-bridge/capabilities.ts', + import.meta.url, +); +const capabilitiesSource = fs.readFileSync(capabilitiesPath, 'utf8'); const capabilitiesTestPath = new URL( '../src/host-bridge/capabilities.test.ts', import.meta.url, @@ -1163,6 +1168,15 @@ for (const profileSource of [ } } +for (const snippet of [ + 'export const MOBILE_HOST_CAPABILITIES =\n HOST_BRIDGE_EXPO_MOBILE_BASE_CAPABILITIES;', + 'export const IOS_MOBILE_HOST_CAPABILITIES =\n HOST_BRIDGE_EXPO_MOBILE_IOS_CAPABILITIES;', +]) { + if (!capabilitiesSource.includes(snippet)) { + throw new Error(`mobile shell capability profile must stay directly shared: ${snippet}`); + } +} + if ( /export const MOBILE_HOST_CAPABILITIES[^=]*= \[/.test(hostBridgeSource) || /export const IOS_MOBILE_HOST_CAPABILITIES[^=]*= \[/.test(hostBridgeSource)