@lark-apaas/db-schema-sync 0.1.2-beta.0 → 0.1.3-alpha.0
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/dist/bin.js +1 -1
- package/dist/{chunk-OFEXLJ35.js → chunk-ICA2SZ7T.js} +14 -94
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/dist/bin.js
CHANGED
|
@@ -31,9 +31,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
31
31
|
mod
|
|
32
32
|
));
|
|
33
33
|
|
|
34
|
-
//
|
|
34
|
+
// ../../server/http-client/dist/index.js
|
|
35
35
|
var require_dist = __commonJS({
|
|
36
|
-
"
|
|
36
|
+
"../../server/http-client/dist/index.js"(exports, module) {
|
|
37
37
|
"use strict";
|
|
38
38
|
var __defProp2 = Object.defineProperty;
|
|
39
39
|
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
@@ -56,7 +56,6 @@ var require_dist = __commonJS({
|
|
|
56
56
|
__export(index_exports, {
|
|
57
57
|
DEFAULT_CLOCK_TOLERANCE_SEC: () => DEFAULT_CLOCK_TOLERANCE_SEC,
|
|
58
58
|
DEFAULT_JWT_EXPIRE_TIME_MS: () => DEFAULT_JWT_EXPIRE_TIME_MS,
|
|
59
|
-
FileTokenProvider: () => FileTokenProvider,
|
|
60
59
|
HttpClient: () => HttpClient2,
|
|
61
60
|
HttpError: () => HttpError,
|
|
62
61
|
generateJWTToken: () => generateJWTToken,
|
|
@@ -199,7 +198,7 @@ var require_dist = __commonJS({
|
|
|
199
198
|
const parts = [
|
|
200
199
|
claims.access_key,
|
|
201
200
|
claims.tenant_id?.toString() || "",
|
|
202
|
-
claims.user_id || "",
|
|
201
|
+
claims.user_id?.toString() || "",
|
|
203
202
|
claims.app_id || "",
|
|
204
203
|
claims.app_env || "",
|
|
205
204
|
claims.sandbox_id || ""
|
|
@@ -229,80 +228,12 @@ var require_dist = __commonJS({
|
|
|
229
228
|
};
|
|
230
229
|
}
|
|
231
230
|
};
|
|
232
|
-
var import_fs = __require("fs");
|
|
233
|
-
var DEFAULT_REFRESH_BEFORE_MS = 5 * 60 * 1e3;
|
|
234
|
-
var DEFAULT_TOKEN_PATHS = [
|
|
235
|
-
"/home/gem/workspace/.force/openclaw/miaoda-provider-key"
|
|
236
|
-
];
|
|
237
|
-
var FileTokenProvider = class {
|
|
238
|
-
cache = /* @__PURE__ */ new Map();
|
|
239
|
-
paths;
|
|
240
|
-
refreshBeforeMs;
|
|
241
|
-
constructor(config) {
|
|
242
|
-
this.paths = config?.paths ?? DEFAULT_TOKEN_PATHS;
|
|
243
|
-
this.refreshBeforeMs = config?.refreshBeforeMs ?? DEFAULT_REFRESH_BEFORE_MS;
|
|
244
|
-
}
|
|
245
|
-
/**
|
|
246
|
-
* 获取 token,按路径优先级依次尝试
|
|
247
|
-
*
|
|
248
|
-
* 1. 缓存有效且不在刷新窗口 → 直接返回
|
|
249
|
-
* 2. 进入刷新窗口 → 重读文件,更新缓存
|
|
250
|
-
* 3. 文件未更新但缓存未过期 → 仍返回旧缓存
|
|
251
|
-
* 4. 所有路径均无有效 token → 返回 null
|
|
252
|
-
*/
|
|
253
|
-
getToken() {
|
|
254
|
-
const now = Date.now();
|
|
255
|
-
for (const filePath of this.paths) {
|
|
256
|
-
const cached = this.cache.get(filePath);
|
|
257
|
-
if (cached && cached.expiresAtMs - now > this.refreshBeforeMs) {
|
|
258
|
-
return { token: cached.token, accessKey: cached.accessKey };
|
|
259
|
-
}
|
|
260
|
-
const result = this.readAndParse(filePath);
|
|
261
|
-
if (result) {
|
|
262
|
-
this.cache.set(filePath, result);
|
|
263
|
-
if (result.expiresAtMs > now) {
|
|
264
|
-
return { token: result.token, accessKey: result.accessKey };
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
if (cached && cached.expiresAtMs > now) {
|
|
268
|
-
return { token: cached.token, accessKey: cached.accessKey };
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
return null;
|
|
272
|
-
}
|
|
273
|
-
clearCache() {
|
|
274
|
-
this.cache.clear();
|
|
275
|
-
}
|
|
276
|
-
readAndParse(filePath) {
|
|
277
|
-
try {
|
|
278
|
-
const token = (0, import_fs.readFileSync)(filePath, "utf-8").trim();
|
|
279
|
-
if (!token) return null;
|
|
280
|
-
const payload = this.decodePayload(token);
|
|
281
|
-
if (!payload?.exp) return null;
|
|
282
|
-
return {
|
|
283
|
-
token,
|
|
284
|
-
accessKey: payload.access_key ?? "",
|
|
285
|
-
expiresAtMs: payload.exp * 1e3
|
|
286
|
-
};
|
|
287
|
-
} catch {
|
|
288
|
-
return null;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
decodePayload(token) {
|
|
292
|
-
try {
|
|
293
|
-
const segments = token.split(".");
|
|
294
|
-
if (segments.length !== 3) return null;
|
|
295
|
-
const padLength = (4 - (segments[1].length % 4 || 4)) % 4;
|
|
296
|
-
const padded = `${segments[1]}${"=".repeat(padLength)}`.replace(/-/g, "+").replace(/_/g, "/");
|
|
297
|
-
return JSON.parse(Buffer.from(padded, "base64").toString("utf8"));
|
|
298
|
-
} catch {
|
|
299
|
-
return null;
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
};
|
|
303
231
|
var DEFAULT_DOMAIN_ENV = "FORCE_AUTHN_INNERAPI_DOMAIN";
|
|
304
232
|
var DEFAULT_ACCESS_KEY_ENV = "FORCE_AUTHN_ACCESS_KEY";
|
|
305
233
|
var DEFAULT_SECRET_KEY_ENV = "FORCE_AUTHN_ACCESS_SECRET";
|
|
234
|
+
var DEFAULT_ADMIN_DOMAIN_ENV = "MIAODA_DEV_INNER_DOMAIN_WITH_PREFIX";
|
|
235
|
+
var DEFAULT_CLIENT_TOKEN_ENV = "MIAODA_AUTHN_CODE";
|
|
236
|
+
var MIAODA_CLIENT_TOKEN_HEADER = "X-Miaoda-Client-Token";
|
|
306
237
|
function resolvePlatformBaseURL(options) {
|
|
307
238
|
if (!options?.enabled) {
|
|
308
239
|
return options?.baseURL;
|
|
@@ -310,7 +241,7 @@ var require_dist = __commonJS({
|
|
|
310
241
|
if (options.baseURL) {
|
|
311
242
|
return options.baseURL;
|
|
312
243
|
}
|
|
313
|
-
const envName = options.domainEnv || DEFAULT_DOMAIN_ENV;
|
|
244
|
+
const envName = options.adminInnerApi ? options.adminDomainEnv || DEFAULT_ADMIN_DOMAIN_ENV : options.domainEnv || DEFAULT_DOMAIN_ENV;
|
|
314
245
|
const domain = process.env[envName];
|
|
315
246
|
if (!domain) {
|
|
316
247
|
throw new Error(`\u5E73\u53F0\u6A21\u5F0F\u9700\u8981\u57FA\u7840\u57DF\u540D\uFF0C\u8BF7\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF ${envName}`);
|
|
@@ -322,13 +253,6 @@ var require_dist = __commonJS({
|
|
|
322
253
|
return void 0;
|
|
323
254
|
}
|
|
324
255
|
ensureNoAccessKeyOverride("platform.defaultClaims", options.defaultClaims);
|
|
325
|
-
let fileTokenProvider;
|
|
326
|
-
if (options.tokenProvider?.type === "file") {
|
|
327
|
-
fileTokenProvider = new FileTokenProvider({
|
|
328
|
-
paths: options.tokenProvider.paths,
|
|
329
|
-
refreshBeforeMs: options.refreshBeforeMs
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
256
|
const accessKeyEnv = options.accessKeyEnv || DEFAULT_ACCESS_KEY_ENV;
|
|
333
257
|
const secretKeyEnv = options.secretKeyEnv || DEFAULT_SECRET_KEY_ENV;
|
|
334
258
|
const accessKey = options.accessKey ?? (process.env[accessKeyEnv] || "");
|
|
@@ -340,18 +264,8 @@ var require_dist = __commonJS({
|
|
|
340
264
|
expireTimeMs,
|
|
341
265
|
refreshBeforeMs: options.refreshBeforeMs
|
|
342
266
|
});
|
|
267
|
+
const clientTokenEnv = options.clientTokenEnv || DEFAULT_CLIENT_TOKEN_ENV;
|
|
343
268
|
interceptors.request.use((config) => {
|
|
344
|
-
if (fileTokenProvider) {
|
|
345
|
-
const fileToken = fileTokenProvider.getToken();
|
|
346
|
-
if (fileToken) {
|
|
347
|
-
const headers2 = {
|
|
348
|
-
...config.headers,
|
|
349
|
-
"Authorization": `Bearer ${fileToken.token}`,
|
|
350
|
-
"x-api-key": fileToken.accessKey
|
|
351
|
-
};
|
|
352
|
-
return { ...config, headers: headers2 };
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
269
|
ensureNoAccessKeyOverride("request.platformAuth.customClaims", config.platformAuth?.customClaims);
|
|
356
270
|
const claims = {
|
|
357
271
|
...options.defaultClaims || {},
|
|
@@ -364,6 +278,12 @@ var require_dist = __commonJS({
|
|
|
364
278
|
"Authorization": `Bearer ${token}`,
|
|
365
279
|
"x-api-key": accessKey
|
|
366
280
|
};
|
|
281
|
+
if (options.adminInnerApi) {
|
|
282
|
+
const clientToken = process.env[clientTokenEnv];
|
|
283
|
+
if (clientToken) {
|
|
284
|
+
headers[MIAODA_CLIENT_TOKEN_HEADER] = clientToken;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
367
287
|
return {
|
|
368
288
|
...config,
|
|
369
289
|
headers
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lark-apaas/db-schema-sync",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3-alpha.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"node": ">=18.0.0"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@lark-apaas/http-client": "0.1.
|
|
32
|
+
"@lark-apaas/http-client": "0.1.6-alpha.0",
|
|
33
33
|
"dotenv": "^17.3.1",
|
|
34
34
|
"tiny-pinyin": "^1.3.2"
|
|
35
35
|
},
|