@leonxin/meetgames 0.1.18 → 0.1.20

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 (109) hide show
  1. package/README.md +16 -6
  2. package/dist/android/detect.d.ts +6 -1
  3. package/dist/android/detect.d.ts.map +1 -1
  4. package/dist/android/detect.js +41 -17
  5. package/dist/android/detect.js.map +1 -1
  6. package/dist/android/gradle.d.ts.map +1 -1
  7. package/dist/android/gradle.js +8 -1
  8. package/dist/android/gradle.js.map +1 -1
  9. package/dist/android/meetSdkRemoteGradle.d.ts +1 -0
  10. package/dist/android/meetSdkRemoteGradle.d.ts.map +1 -1
  11. package/dist/android/meetSdkRemoteGradle.js +44 -21
  12. package/dist/android/meetSdkRemoteGradle.js.map +1 -1
  13. package/dist/cache.d.ts +16 -0
  14. package/dist/cache.d.ts.map +1 -1
  15. package/dist/cache.js +21 -0
  16. package/dist/cache.js.map +1 -1
  17. package/dist/cli.d.ts.map +1 -1
  18. package/dist/cli.js +52 -23
  19. package/dist/cli.js.map +1 -1
  20. package/dist/config/meetSdkDefaultConfig.d.ts +7 -11
  21. package/dist/config/meetSdkDefaultConfig.d.ts.map +1 -1
  22. package/dist/config/meetSdkDefaultConfig.js +216 -53
  23. package/dist/config/meetSdkDefaultConfig.js.map +1 -1
  24. package/dist/config/meetSdkIosConfig.d.ts +4 -5
  25. package/dist/config/meetSdkIosConfig.d.ts.map +1 -1
  26. package/dist/config/meetSdkIosConfig.js +19 -19
  27. package/dist/config/meetSdkIosConfig.js.map +1 -1
  28. package/dist/contracts/types.d.ts +18 -0
  29. package/dist/contracts/types.d.ts.map +1 -1
  30. package/dist/core/doctor.d.ts.map +1 -1
  31. package/dist/core/doctor.js +18 -1
  32. package/dist/core/doctor.js.map +1 -1
  33. package/dist/core/platform.js +1 -1
  34. package/dist/core/platform.js.map +1 -1
  35. package/dist/core/previewPatches.d.ts +2 -2
  36. package/dist/core/previewPatches.d.ts.map +1 -1
  37. package/dist/core/previewPatches.js +3 -3
  38. package/dist/core/previewPatches.js.map +1 -1
  39. package/dist/core/workspace.d.ts.map +1 -1
  40. package/dist/core/workspace.js +3 -1
  41. package/dist/core/workspace.js.map +1 -1
  42. package/dist/index.d.ts +4 -4
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +4 -4
  45. package/dist/index.js.map +1 -1
  46. package/dist/mcp/server.d.ts.map +1 -1
  47. package/dist/mcp/server.js +12 -7
  48. package/dist/mcp/server.js.map +1 -1
  49. package/dist/mcp/service.d.ts +6 -0
  50. package/dist/mcp/service.d.ts.map +1 -1
  51. package/dist/mcp/service.js +17 -9
  52. package/dist/mcp/service.js.map +1 -1
  53. package/dist/ops/handlers.d.ts.map +1 -1
  54. package/dist/ops/handlers.js +25 -3
  55. package/dist/ops/handlers.js.map +1 -1
  56. package/dist/remote/sdkHomeDownload.d.ts +4 -5
  57. package/dist/remote/sdkHomeDownload.d.ts.map +1 -1
  58. package/dist/remote/sdkHomeDownload.js +38 -12
  59. package/dist/remote/sdkHomeDownload.js.map +1 -1
  60. package/docs/API.md +13 -13
  61. package/docs/CLI.md +27 -13
  62. package/docs/INTEGRATION.md +7 -6
  63. package/package.json +1 -1
  64. package/src/android/detect.ts +47 -17
  65. package/src/android/gradle.ts +16 -1
  66. package/src/android/meetSdkRemoteGradle.ts +50 -22
  67. package/src/cache.ts +37 -0
  68. package/src/cli.ts +51 -21
  69. package/src/config/meetSdkDefaultConfig.ts +243 -59
  70. package/src/config/meetSdkIosConfig.ts +17 -21
  71. package/src/contracts/types.ts +21 -0
  72. package/src/core/doctor.ts +17 -1
  73. package/src/core/platform.ts +1 -1
  74. package/src/core/previewPatches.ts +3 -3
  75. package/src/core/workspace.ts +3 -1
  76. package/src/index.ts +5 -3
  77. package/src/mcp/server.ts +12 -7
  78. package/src/mcp/service.ts +30 -10
  79. package/src/ops/handlers.ts +27 -3
  80. package/src/remote/sdkHomeDownload.ts +48 -16
  81. package/config/meetsdk-android.json +0 -171
  82. package/config/meetsdk-ios.json +0 -15
  83. package/tests/assemble.test.ts +0 -12
  84. package/tests/doctor.test.ts +0 -131
  85. package/tests/downloadGoogleServicesJson.test.ts +0 -47
  86. package/tests/fetch-remote.test.ts +0 -23
  87. package/tests/fetchConfigOverrides.test.ts +0 -28
  88. package/tests/fetchConfigWrite.test.ts +0 -54
  89. package/tests/fixtures-hosts.test.ts +0 -78
  90. package/tests/gradle.test.ts +0 -33
  91. package/tests/integration-json.test.ts +0 -29
  92. package/tests/ios.codeUtils.test.ts +0 -23
  93. package/tests/ios.sdkBundle.test.ts +0 -21
  94. package/tests/loadManifest.test.ts +0 -15
  95. package/tests/manifest-xml.test.ts +0 -30
  96. package/tests/mcp.e2e.ts +0 -214
  97. package/tests/mcp.service.test.ts +0 -53
  98. package/tests/meetSdkRemoteConfig.test.ts +0 -482
  99. package/tests/meetSdkRemoteGradle.test.ts +0 -414
  100. package/tests/pipeline.android.test.ts +0 -149
  101. package/tests/pipeline.integration-json.test.ts +0 -58
  102. package/tests/pipeline.ios.test.ts +0 -609
  103. package/tests/pipeline.preview.patch.test.ts +0 -85
  104. package/tests/platformSelection.test.ts +0 -77
  105. package/tests/sdkHomeDownload.test.ts +0 -275
  106. package/tests/sdkVersionConfig.test.ts +0 -131
  107. package/tests/topsdk.test.ts +0 -53
  108. package/tests/topsdkDownloadSdkConfig.test.ts +0 -81
  109. package/tests/topsdkFeatureModules.test.ts +0 -116
@@ -1,32 +1,135 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
- import { fileURLToPath } from "node:url";
4
- import { tryParseAsMeetSdkDefaultConfig } from "./meetSdkRemoteConfig.js";
5
- import { defaultSdkHomeApiBaseUrl, fetchSdkHomeVersions } from "../remote/sdkHomeDownload.js";
6
- /** Built-in Android SDK defaults (repos and per-plugin dependencies). */
7
- export const MEETSDK_ANDROID_DEFAULTS_FILENAME = "meetsdk-android.json";
8
- const MEETSDK_CONFIG_DIR = "config";
9
- const defaultConfigPath = fileURLToPath(new URL(`../../${MEETSDK_CONFIG_DIR}/${MEETSDK_ANDROID_DEFAULTS_FILENAME}`, import.meta.url));
10
- export function resolveMeetSdkAndroidConfigPath(packageRoot) {
11
- return packageRoot ? path.join(packageRoot, MEETSDK_CONFIG_DIR, MEETSDK_ANDROID_DEFAULTS_FILENAME) : defaultConfigPath;
3
+ import { MEETSDK_ANDROID_CONFIG_FILENAME, resolveAndroidSdkCacheLayout, resolveMeetSdkAndroidConfigCachePath, withCacheLock, } from "../cache.js";
4
+ import { buildSdkHomeDownloadUrl, defaultSdkHomeApiBaseUrl, downloadBinaryFile, extractZip, fetchSdkHomeVersions, } from "../remote/sdkHomeDownload.js";
5
+ import { DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES, tryParseAsMeetSdkDefaultConfig, } from "./meetSdkRemoteConfig.js";
6
+ const DEFAULT_GROUP_ID = "com.sino.topsdk";
7
+ const DEFAULT_ANDROID_SDK_PACKAGE_TYPE = "native";
8
+ function isRecord(value) {
9
+ return typeof value === "object" && value !== null && !Array.isArray(value);
12
10
  }
13
- export function loadBuiltInMeetSdkDefaultConfig(options = {}) {
14
- const configPath = resolveMeetSdkAndroidConfigPath(options.packageRoot);
15
- if (!fs.existsSync(configPath)) {
16
- throw new Error(`built-in ${MEETSDK_ANDROID_DEFAULTS_FILENAME} not found at ${configPath}; reinstall @leonxin/meetgames or run from a complete package install`);
11
+ function cloneDefaultConfig(value) {
12
+ return JSON.parse(JSON.stringify(value));
13
+ }
14
+ function resolveSdkHomeApiBaseUrl(baseUrl) {
15
+ return baseUrl || process.env.MEETGAMES_SDK_HOME_API_BASE_URL?.trim() || defaultSdkHomeApiBaseUrl;
16
+ }
17
+ function parseJsonResponseEnvelope(body, label) {
18
+ if (!isRecord(body))
19
+ throw new Error(`${label} response is not an object`);
20
+ const code = body.code;
21
+ if (code !== undefined && Number(code) !== 200) {
22
+ const message = typeof body.message === "string" ? body.message : JSON.stringify(body);
23
+ throw new Error(`${label} API error (code=${String(code)}): ${message}`);
17
24
  }
18
- const raw = JSON.parse(fs.readFileSync(configPath, "utf8"));
19
- const parsed = tryParseAsMeetSdkDefaultConfig(raw);
25
+ return "data" in body ? body.data : body;
26
+ }
27
+ async function fetchJson(url, signal) {
28
+ let res;
29
+ try {
30
+ res = await fetch(url, { redirect: "follow", signal, headers: { Accept: "application/json" } });
31
+ }
32
+ catch (e) {
33
+ const cause = e instanceof Error && "cause" in e && e.cause instanceof Error ? e.cause.message : null;
34
+ const detail = cause && cause !== (e instanceof Error ? e.message : String(e)) ? ` (${cause})` : "";
35
+ throw new Error(`GET ${url} failed: ${e instanceof Error ? e.message : String(e)}${detail}`);
36
+ }
37
+ if (!res.ok) {
38
+ const text = await res.text().catch(() => "");
39
+ const detail = text.trim() ? `: ${text.trim().slice(0, 1000)}` : "";
40
+ throw new Error(`GET ${url} failed: HTTP ${res.status}${detail}`);
41
+ }
42
+ const text = await res.text();
43
+ try {
44
+ return JSON.parse(text);
45
+ }
46
+ catch {
47
+ throw new Error(`GET ${url} did not return valid JSON`);
48
+ }
49
+ }
50
+ export function resolveMeetSdkAndroidConfigPath(cacheRoot) {
51
+ return resolveMeetSdkAndroidConfigCachePath(cacheRoot);
52
+ }
53
+ function readMeetSdkDefaultConfigFromPath(configPath) {
54
+ const parsed = tryParseAsMeetSdkDefaultConfig(JSON.parse(fs.readFileSync(configPath, "utf8")));
20
55
  if (!parsed) {
21
- throw new Error(`built-in ${MEETSDK_ANDROID_DEFAULTS_FILENAME} is not a valid MeetSdk default config`);
56
+ throw new Error(`${MEETSDK_ANDROID_CONFIG_FILENAME} is not a valid MeetSdk default config: ${configPath}`);
22
57
  }
23
58
  return parsed;
24
59
  }
25
- function cloneDefaultConfig(value) {
26
- return JSON.parse(JSON.stringify(value));
60
+ export function loadBuiltInMeetSdkDefaultConfig(options = {}) {
61
+ const cachePath = resolveMeetSdkAndroidConfigPath(options.cacheRoot);
62
+ if (fs.existsSync(cachePath))
63
+ return readMeetSdkDefaultConfigFromPath(cachePath);
64
+ return compatibilityDefaultConfig();
27
65
  }
28
- function resolveSdkHomeApiBaseUrl(baseUrl) {
29
- return baseUrl || process.env.MEETGAMES_SDK_HOME_API_BASE_URL?.trim() || defaultSdkHomeApiBaseUrl;
66
+ function compatibilityDefaultConfig() {
67
+ const raw = {
68
+ topsdk: {
69
+ version: "",
70
+ groupId: DEFAULT_GROUP_ID,
71
+ repositories: ["https://storage-sdk-gameplus.meetsocial.com/repository/TopSdk/"],
72
+ },
73
+ sdkModules: {
74
+ login: {
75
+ guest: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.guest] },
76
+ email: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.email] },
77
+ apple: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.apple] },
78
+ facebook: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.facebook] },
79
+ google: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.google] },
80
+ twitter: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.twitter] },
81
+ snapchat: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.snapchat] },
82
+ line: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.line] },
83
+ naver: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.naver] },
84
+ kakao: {
85
+ repositories: ["https://devrepo.kakao.com/nexus/content/groups/public/"],
86
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.kakao],
87
+ },
88
+ tiktok: {
89
+ repositories: ["https://artifact.bytedance.com/repository/AwemeOpenSDK"],
90
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.tiktok],
91
+ },
92
+ discord: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.login.discord] },
93
+ },
94
+ payment: {
95
+ googleIap: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.payment.googleIap] },
96
+ appleIap: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.payment.appleIap] },
97
+ onestoreIap: {
98
+ repositories: ["https://repo.onestore.co.kr/repository/onestore-sdk-public/"],
99
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.payment.onestoreIap],
100
+ },
101
+ huaweiIap: {
102
+ repositories: ["https://developer.huawei.com/repo/"],
103
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.payment.huaweiIap],
104
+ },
105
+ xiaomiIap: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.payment.xiaomiIap] },
106
+ },
107
+ analytics: {
108
+ appsflyer: {
109
+ repositories: ["mavenCentral"],
110
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.analytics.appsflyer],
111
+ },
112
+ facebookdata: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.analytics.facebookdata] },
113
+ firebase: {
114
+ repositories: ["google"],
115
+ classpath: "com.google.gms:google-services:4.4.4",
116
+ applyplugin: "com.google.gms.google-services",
117
+ dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.analytics.firebase],
118
+ },
119
+ adjust: { dependencies: [...DEFAULT_TOPSDK_PLUGIN_DEPENDENCIES.analytics.adjust] },
120
+ },
121
+ },
122
+ };
123
+ const parsed = tryParseAsMeetSdkDefaultConfig(raw);
124
+ if (!parsed)
125
+ throw new Error("embedded compatibility meetsdk-android defaults are invalid");
126
+ return parsed;
127
+ }
128
+ function writeMeetSdkAndroidConfigCache(config, cacheRoot) {
129
+ const configPath = resolveMeetSdkAndroidConfigPath(cacheRoot);
130
+ fs.mkdirSync(path.dirname(configPath), { recursive: true });
131
+ fs.writeFileSync(configPath, `${JSON.stringify(config, null, 2)}\n`, "utf8");
132
+ return configPath;
30
133
  }
31
134
  const latestAndroidVersionCache = new Map();
32
135
  async function fetchLatestAndroidSdkVersion(baseUrl) {
@@ -38,44 +141,104 @@ async function fetchLatestAndroidSdkVersion(baseUrl) {
38
141
  }
39
142
  return cached;
40
143
  }
41
- export function syncMeetSdkAndroidVersionToConfig(params) {
42
- const version = params.version.trim();
43
- if (!version)
44
- throw new Error("Android SDK version is empty");
45
- const configPath = resolveMeetSdkAndroidConfigPath(params.packageRoot);
46
- if (!fs.existsSync(configPath)) {
47
- throw new Error(`built-in ${MEETSDK_ANDROID_DEFAULTS_FILENAME} not found at ${configPath}`);
48
- }
49
- const raw = JSON.parse(fs.readFileSync(configPath, "utf8"));
50
- if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
51
- throw new Error(`built-in ${MEETSDK_ANDROID_DEFAULTS_FILENAME} is not a JSON object`);
52
- }
53
- const record = raw;
54
- if (typeof record.topsdk !== "object" || record.topsdk === null || Array.isArray(record.topsdk)) {
55
- throw new Error(`built-in ${MEETSDK_ANDROID_DEFAULTS_FILENAME} does not contain topsdk object`);
144
+ function androidChannelPlugin(channelType) {
145
+ const normalized = (channelType ?? "").trim().toUpperCase();
146
+ const map = {
147
+ GOOGLE: "google_channel",
148
+ ONESTORE: "onestore_channel",
149
+ XIAOMI: "xiaomi_channel",
150
+ HUAWEI: "huawei_channel",
151
+ };
152
+ return map[normalized] ?? "google_channel";
153
+ }
154
+ function findMeetSdkAndroidConfigFile(root) {
155
+ if (!fs.existsSync(root))
156
+ return null;
157
+ const stack = [root];
158
+ while (stack.length) {
159
+ const dir = stack.pop();
160
+ for (const ent of fs.readdirSync(dir, { withFileTypes: true })) {
161
+ if (ent.name.startsWith("__MACOSX") || ent.name.startsWith("._"))
162
+ continue;
163
+ const abs = path.join(dir, ent.name);
164
+ if (ent.isDirectory()) {
165
+ stack.push(abs);
166
+ }
167
+ else if (ent.isFile() && ent.name === MEETSDK_ANDROID_CONFIG_FILENAME) {
168
+ return abs;
169
+ }
170
+ }
56
171
  }
57
- const topsdk = record.topsdk;
58
- topsdk.version = version;
59
- if (params.date?.trim())
60
- topsdk.date = params.date.trim();
61
- fs.writeFileSync(configPath, `${JSON.stringify(record, null, 2)}\n`, "utf8");
62
- return configPath;
172
+ return null;
173
+ }
174
+ function loadMeetSdkAndroidConfigFromExtracted(root, version, date) {
175
+ const configPath = findMeetSdkAndroidConfigFile(root);
176
+ if (!configPath)
177
+ throw new Error(`${MEETSDK_ANDROID_CONFIG_FILENAME} not found under downloaded Android SDK: ${root}`);
178
+ const config = readMeetSdkDefaultConfigFromPath(configPath);
179
+ config.topsdk.version = config.topsdk.version || version;
180
+ config.topsdk.date = config.topsdk.date || date;
181
+ return config;
182
+ }
183
+ async function fetchSdkHomeAndroidConfig(params) {
184
+ const baseUrl = resolveSdkHomeApiBaseUrl(params.baseUrl);
185
+ const packageType = params.packageType || DEFAULT_ANDROID_SDK_PACKAGE_TYPE;
186
+ const plugins = [androidChannelPlugin(params.channelType)];
187
+ const layout = resolveAndroidSdkCacheLayout({
188
+ version: params.version,
189
+ packageType,
190
+ plugins,
191
+ cacheRoot: params.cacheRoot,
192
+ });
193
+ let downloadApiUrl;
194
+ const downloadAndExtract = async () => {
195
+ if (findMeetSdkAndroidConfigFile(layout.extractDir))
196
+ return;
197
+ downloadApiUrl = buildSdkHomeDownloadUrl({
198
+ baseUrl,
199
+ version: params.version,
200
+ platform: "android",
201
+ packageType,
202
+ plugins,
203
+ });
204
+ const body = parseJsonResponseEnvelope(await fetchJson(downloadApiUrl, params.signal), "sdk-home Android download");
205
+ if (typeof body !== "string" || !body.trim()) {
206
+ throw new Error("sdk-home Android getDownLoadUrl response does not contain a download URL in data");
207
+ }
208
+ await downloadBinaryFile(body, layout.zipPath, params.signal);
209
+ fs.rmSync(layout.extractDir, { recursive: true, force: true });
210
+ await extractZip(layout.zipPath, layout.extractDir);
211
+ };
212
+ await withCacheLock(layout.lockDir, downloadAndExtract);
213
+ return {
214
+ url: downloadApiUrl,
215
+ config: loadMeetSdkAndroidConfigFromExtracted(layout.extractDir, params.version, params.date),
216
+ };
63
217
  }
218
+ const androidConfigCache = new Map();
64
219
  /**
65
- * Built-in Android SDK defaults with the SDK version resolved at runtime from sdk-home.
66
- * The version is also persisted to `config/meetsdk-android.json` so the package config
67
- * reflects the latest SDK version discovered from the download center.
220
+ * Android SDK defaults resolved from sdk-home and persisted under ~/.cache/meet-sdk-tool.
221
+ * The package config/ directory is no longer written at runtime.
68
222
  */
69
223
  export async function loadMeetSdkDefaultConfigWithLatestAndroidVersion(options = {}) {
70
- const defaults = cloneDefaultConfig(loadBuiltInMeetSdkDefaultConfig({ packageRoot: options.packageRoot }));
71
224
  const latest = await fetchLatestAndroidSdkVersion(options.sdkHomeApiBaseUrl);
72
- syncMeetSdkAndroidVersionToConfig({
73
- version: latest.ver,
74
- date: latest.date,
75
- packageRoot: options.packageRoot,
76
- });
77
- defaults.topsdk.version = latest.ver;
78
- defaults.topsdk.date = latest.date;
79
- return defaults;
225
+ const baseUrl = resolveSdkHomeApiBaseUrl(options.sdkHomeApiBaseUrl);
226
+ const key = `${baseUrl}\n${latest.ver}\n${options.cacheRoot ?? ""}\n${options.channelType ?? ""}\n${options.packageType ?? ""}`;
227
+ let cached = androidConfigCache.get(key);
228
+ if (!cached) {
229
+ cached = fetchSdkHomeAndroidConfig({
230
+ baseUrl,
231
+ version: latest.ver,
232
+ date: latest.date,
233
+ channelType: options.channelType,
234
+ packageType: options.packageType,
235
+ cacheRoot: options.cacheRoot,
236
+ }).then(({ config }) => {
237
+ writeMeetSdkAndroidConfigCache(config, options.cacheRoot);
238
+ return cloneDefaultConfig(config);
239
+ });
240
+ androidConfigCache.set(key, cached);
241
+ }
242
+ return cloneDefaultConfig(await cached);
80
243
  }
81
244
  //# sourceMappingURL=meetSdkDefaultConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"meetSdkDefaultConfig.js","sourceRoot":"","sources":["../../src/config/meetSdkDefaultConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meetSdkDefaultConfig.js","sourceRoot":"","sources":["../../src/config/meetSdkDefaultConfig.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export declare const MEETSDK_IOS_CONFIG_FILENAME = "meetsdk-ios.json";
2
1
  export interface MeetSdkIosConfig {
3
2
  topsdk: {
4
3
  version: string;
@@ -7,12 +6,12 @@ export interface MeetSdkIosConfig {
7
6
  plugins?: string[];
8
7
  };
9
8
  }
10
- export declare function resolveMeetSdkIosConfigPath(packageRoot: string): string;
9
+ export declare function resolveMeetSdkIosConfigPath(cacheRoot?: string): string;
11
10
  export declare function tryParseAsMeetSdkIosConfig(raw: unknown): MeetSdkIosConfig | null;
12
- export declare function loadMeetSdkIosConfig(packageRoot: string): MeetSdkIosConfig;
13
- export declare function writeMeetSdkIosConfig(packageRoot: string, config: MeetSdkIosConfig): string;
11
+ export declare function loadMeetSdkIosConfig(cacheRoot?: string): MeetSdkIosConfig;
12
+ export declare function writeMeetSdkIosConfig(config: MeetSdkIosConfig, cacheRoot?: string): string;
14
13
  export declare function syncMeetSdkIosVersionToConfig(params: {
15
- packageRoot: string;
14
+ cacheRoot?: string;
16
15
  version: string;
17
16
  date?: string;
18
17
  packageType?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"meetSdkIosConfig.d.ts","sourceRoot":"","sources":["../../src/config/meetSdkIosConfig.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,2BAA2B,qBAAqB,CAAC;AAG9D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;CACH;AAgBD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAWhF;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAU1E;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAK3F;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,GAAG,MAAM,CAiBT"}
1
+ {"version":3,"file":"meetSdkIosConfig.d.ts","sourceRoot":"","sources":["../../src/config/meetSdkIosConfig.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;CACH;AAgBD,wBAAgB,2BAA2B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAWhF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAUzE;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAK1F;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,GAAG,MAAM,CAeT"}
@@ -1,7 +1,6 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
- export const MEETSDK_IOS_CONFIG_FILENAME = "meetsdk-ios.json";
4
- const MEETSDK_CONFIG_DIR = "config";
3
+ import { MEETSDK_IOS_CONFIG_FILENAME, resolveMeetSdkIosConfigCachePath } from "../cache.js";
5
4
  function isRecord(value) {
6
5
  return typeof value === "object" && value !== null && !Array.isArray(value);
7
6
  }
@@ -14,8 +13,8 @@ function normalizePlugins(value) {
14
13
  const plugins = value.map((x) => String(x).trim()).filter(Boolean);
15
14
  return plugins.length ? plugins : undefined;
16
15
  }
17
- export function resolveMeetSdkIosConfigPath(packageRoot) {
18
- return path.join(packageRoot, MEETSDK_CONFIG_DIR, MEETSDK_IOS_CONFIG_FILENAME);
16
+ export function resolveMeetSdkIosConfigPath(cacheRoot) {
17
+ return resolveMeetSdkIosConfigCachePath(cacheRoot);
19
18
  }
20
19
  export function tryParseAsMeetSdkIosConfig(raw) {
21
20
  if (!isRecord(raw))
@@ -30,8 +29,8 @@ export function tryParseAsMeetSdkIosConfig(raw) {
30
29
  },
31
30
  };
32
31
  }
33
- export function loadMeetSdkIosConfig(packageRoot) {
34
- const configPath = resolveMeetSdkIosConfigPath(packageRoot);
32
+ export function loadMeetSdkIosConfig(cacheRoot) {
33
+ const configPath = resolveMeetSdkIosConfigPath(cacheRoot);
35
34
  if (!fs.existsSync(configPath)) {
36
35
  return { topsdk: { version: "" } };
37
36
  }
@@ -41,8 +40,8 @@ export function loadMeetSdkIosConfig(packageRoot) {
41
40
  }
42
41
  return parsed;
43
42
  }
44
- export function writeMeetSdkIosConfig(packageRoot, config) {
45
- const configPath = resolveMeetSdkIosConfigPath(packageRoot);
43
+ export function writeMeetSdkIosConfig(config, cacheRoot) {
44
+ const configPath = resolveMeetSdkIosConfigPath(cacheRoot);
46
45
  fs.mkdirSync(path.dirname(configPath), { recursive: true });
47
46
  fs.writeFileSync(configPath, `${JSON.stringify(config, null, 2)}\n`, "utf8");
48
47
  return configPath;
@@ -51,18 +50,19 @@ export function syncMeetSdkIosVersionToConfig(params) {
51
50
  const version = params.version.trim();
52
51
  if (!version)
53
52
  throw new Error("iOS SDK version is empty");
54
- const current = loadMeetSdkIosConfig(params.packageRoot);
55
- const nextDate = params.date === undefined ? current.topsdk.date : params.date.trim() || undefined;
53
+ const topsdk = { version };
54
+ const date = params.date?.trim();
55
+ const packageType = params.packageType?.trim();
56
+ const plugins = params.plugins?.map((x) => x.trim()).filter(Boolean);
57
+ if (date)
58
+ topsdk.date = date;
59
+ if (packageType)
60
+ topsdk.packageType = packageType;
61
+ if (plugins?.length)
62
+ topsdk.plugins = plugins;
56
63
  const next = {
57
- ...current,
58
- topsdk: {
59
- ...current.topsdk,
60
- version,
61
- date: nextDate,
62
- packageType: params.packageType?.trim() || current.topsdk.packageType,
63
- plugins: params.plugins?.map((x) => x.trim()).filter(Boolean) || current.topsdk.plugins,
64
- },
64
+ topsdk,
65
65
  };
66
- return writeMeetSdkIosConfig(params.packageRoot, next);
66
+ return writeMeetSdkIosConfig(next, params.cacheRoot);
67
67
  }
68
68
  //# sourceMappingURL=meetSdkIosConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"meetSdkIosConfig.js","sourceRoot":"","sources":["../../src/config/meetSdkIosConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meetSdkIosConfig.js","sourceRoot":"","sources":["../../src/config/meetSdkIosConfig.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,16 @@ export interface AndroidDetectionError {
9
9
  error: string;
10
10
  }
11
11
  export type AndroidDetectResult = AndroidDetection | AndroidDetectionError;
12
+ export interface AndroidSdkModule {
13
+ ok: true;
14
+ moduleName: string;
15
+ moduleDir: string;
16
+ }
17
+ export interface AndroidSdkModuleError {
18
+ ok: false;
19
+ error: string;
20
+ }
21
+ export type AndroidSdkModuleResult = AndroidSdkModule | AndroidSdkModuleError;
12
22
  export interface AndroidDetectOptions {
13
23
  /** Unified app target selector; for Android this is the application Gradle module, e.g. `:app` or `launcher`. */
14
24
  appTarget?: string;
@@ -48,7 +58,11 @@ export interface WorkspaceContext {
48
58
  remoteConfigPath?: string;
49
59
  /** Cached iOS SDK root used as the source for integration resources. */
50
60
  iosSdkRoot?: string;
61
+ /** Optional cache root override, primarily used by tests. */
62
+ cacheRoot?: string;
51
63
  android?: AndroidDetectResult;
64
+ /** Android Gradle module where SDK resValue/dependencies are written. Defaults to `:unityLibrary`. */
65
+ androidSdkModule?: AndroidSdkModuleResult;
52
66
  /** Reserved: populated via placeholder until iOS tooling ships. */
53
67
  ios?: IOSDetectResult;
54
68
  iosReserved?: IosToolingReserved;
@@ -56,12 +70,16 @@ export interface WorkspaceContext {
56
70
  export interface WorkspaceContextOptions {
57
71
  /** Unified app target selector: Android application module or iOS application target. */
58
72
  appTarget?: string;
73
+ /** Android Gradle module where SDK resValue/dependencies are written. Defaults to `unityLibrary`. */
74
+ sdkModuleName?: string;
59
75
  /** sdk-home API root; defaults to the production MeetGames business API. */
60
76
  sdkHomeApiBaseUrl?: string;
61
77
  /** Override the cached remote config path. */
62
78
  remoteConfigPath?: string;
63
79
  /** Override the iOS SDK source root. */
64
80
  iosSdkRoot?: string;
81
+ /** Override meet-sdk-tool cache root. */
82
+ cacheRoot?: string;
65
83
  }
66
84
  export interface ManifestStep {
67
85
  op: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAW9D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,SAAS,GAAG,KAAK,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAwZD,wBAAsB,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAuBzG"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAW9D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,SAAS,GAAG,KAAK,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAwaD,wBAAsB,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAuBzG"}
@@ -44,6 +44,15 @@ function fileContainsRepository(text, repo) {
44
44
  return text.split("\n").some((line) => lineDeclaresRepository(line, repo));
45
45
  }
46
46
  function moduleBuildGradlePath(ctx) {
47
+ if (!ctx.androidSdkModule?.ok)
48
+ return null;
49
+ const groovy = path.join(ctx.androidSdkModule.moduleDir, "build.gradle");
50
+ if (fs.existsSync(groovy))
51
+ return groovy;
52
+ const kts = path.join(ctx.androidSdkModule.moduleDir, "build.gradle.kts");
53
+ return fs.existsSync(kts) ? kts : null;
54
+ }
55
+ function applicationBuildGradlePath(ctx) {
47
56
  if (!ctx.android?.ok)
48
57
  return null;
49
58
  const groovy = path.join(ctx.android.moduleDir, "build.gradle");
@@ -156,18 +165,26 @@ async function checkAndroid(ctx, report, config) {
156
165
  addCheck(report, "android.detect", false, "android application module not detected");
157
166
  return;
158
167
  }
168
+ if (!ctx.androidSdkModule?.ok) {
169
+ addCheck(report, "android.sdkModule", false, ctx.androidSdkModule?.error ?? "android SDK module not resolved");
170
+ return;
171
+ }
159
172
  const resolved = applyMeetSdkDefaultConfig(config, await loadMeetSdkDefaultConfigWithLatestAndroidVersion({
160
173
  sdkHomeApiBaseUrl: ctx.sdkHomeApiBaseUrl,
161
174
  packageRoot: ctx.packageRoot,
175
+ cacheRoot: ctx.cacheRoot,
176
+ channelType: config.channel,
162
177
  }));
163
178
  const moduleGradleAbs = moduleBuildGradlePath(ctx);
179
+ const applicationGradleAbs = applicationBuildGradlePath(ctx);
164
180
  const rootGradleAbs = rootBuildGradlePath(ctx.projectRoot);
165
181
  const settingsGradleAbs = settingsGradlePath(ctx.projectRoot);
166
182
  const moduleGradle = moduleGradleAbs ? readFileIfExists(moduleGradleAbs) : "";
183
+ const applicationGradle = applicationGradleAbs ? readFileIfExists(applicationGradleAbs) : "";
167
184
  const rootGradle = rootGradleAbs ? readFileIfExists(rootGradleAbs) : "";
168
185
  const settingsGradle = settingsGradleAbs ? readFileIfExists(settingsGradleAbs) : "";
169
186
  addCheck(report, "android.moduleGradle.exists", Boolean(moduleGradleAbs), moduleGradleAbs ?? "module build.gradle not found");
170
- addCheck(report, "android.applicationId", moduleGradle.includes(`applicationId "${resolved.packageName}"`) || moduleGradle.includes(`applicationId '${resolved.packageName}'`), resolved.packageName);
187
+ addCheck(report, "android.applicationId", applicationGradle.includes(`applicationId "${resolved.packageName}"`) || applicationGradle.includes(`applicationId '${resolved.packageName}'`), resolved.packageName);
171
188
  const repoText = `${settingsGradle}\n${rootGradle}`;
172
189
  const missingRepos = collectMeetSdkRemoteRepositories(resolved).filter((repo) => !fileContainsRepository(repoText, repo));
173
190
  addCheck(report, "android.repositories", missingRepos.length === 0, missingRepos.length ? `missing: ${missingRepos.join(", ")}` : "all expected repositories found");