@superblocksteam/sdk 2.0.96 → 2.0.97-next.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/.turbo/turbo-build.log +1 -1
- package/dist/cli-replacement/dev.d.mts.map +1 -1
- package/dist/cli-replacement/dev.mjs +125 -21
- package/dist/cli-replacement/dev.mjs.map +1 -1
- package/dist/parse-sdk-registry.d.mts.map +1 -1
- package/dist/parse-sdk-registry.mjs +5 -130
- package/dist/parse-sdk-registry.mjs.map +1 -1
- package/dist/parse-sdk-registry.test.mjs +11 -1
- package/dist/parse-sdk-registry.test.mjs.map +1 -1
- package/package.json +6 -6
- package/src/cli-replacement/dev.mts +136 -37
- package/src/parse-sdk-registry.mts +8 -181
- package/src/parse-sdk-registry.test.mts +17 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.d.ts +0 -5
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.d.ts.map +0 -1
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.js +0 -61
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.js.map +0 -1
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.test.d.ts +0 -2
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.test.d.ts.map +0 -1
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.test.js +0 -32
- package/dist/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.test.js.map +0 -1
- package/src/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.test.ts +0 -60
- package/src/cli-replacement/assets/git-workflows/github-superblocks-sync-workflow.ts +0 -70
package/.turbo/turbo-build.log
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.mts","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dev.d.mts","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,YAAY,EACZ,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,iBAAiB,EAEjB,WAAW,EACZ,MAAM,mBAAmB,CAAC;AA8L3B,oBAAY,wBAAwB;IAClC,IAAI,iBAAiB;IACrB,KAAK,kBAAkB;CACxB;AAED,wBAAsB,GAAG,CAAC,OAAO,EAAE;IAEjC,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,WAAW,EAAE,WAAW,CAAC;IAGzB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,MAAM,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAG1C,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAG3C,MAAM,CAAC,EAAE,WAAW,CAAC;IAGrB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,MAAM,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,GAAG,EAAE,cAAc,CAAC;IAEpB,mGAAmG;IACnG,qBAAqB,CAAC,EAAE,2BAA2B,CAAC;CACrD,iBA2nBA"}
|
|
@@ -4,7 +4,7 @@ import path from "node:path";
|
|
|
4
4
|
import * as readline from "node:readline";
|
|
5
5
|
import { promisify } from "node:util";
|
|
6
6
|
import { SpanStatusCode } from "@opentelemetry/api";
|
|
7
|
-
import { ConflictError, NotFoundError, SUPERBLOCKS_LIVE_GIT_BRANCH, } from "@superblocksteam/shared";
|
|
7
|
+
import { buildGithubSuperblocksSyncWorkflow, ConflictError, isGitHubRemoteUrl, NotFoundError, SUPERBLOCKS_LIVE_GIT_BRANCH, } from "@superblocksteam/shared";
|
|
8
8
|
import { maskUnixSignals } from "@superblocksteam/util";
|
|
9
9
|
import { AiService, AiServiceFeatureFlags, SnapshotManager, isSdkApiTemplate, } from "@superblocksteam/vite-plugin-file-sync/ai-service";
|
|
10
10
|
import { createGitService } from "@superblocksteam/vite-plugin-file-sync/git-service";
|
|
@@ -20,7 +20,6 @@ import { createDevServer } from "../dev-utils/dev-server.mjs";
|
|
|
20
20
|
import { AUTO_UPGRADE_EXIT_CODE } from "../index.js";
|
|
21
21
|
import { getTracer } from "../telemetry/index.js";
|
|
22
22
|
import { getErrorMeta, getLogger } from "../telemetry/logging.js";
|
|
23
|
-
import { buildGithubSuperblocksSyncWorkflow } from "./assets/git-workflows/github-superblocks-sync-workflow.js";
|
|
24
23
|
import { checkVersionsAndWritePackageJson } from "./automatic-upgrades.js";
|
|
25
24
|
import { getCurrentCliVersion } from "./version-detection.js";
|
|
26
25
|
const exec = promisify(child_process.exec);
|
|
@@ -300,11 +299,14 @@ export async function dev(options) {
|
|
|
300
299
|
const templateName = process.env.SUPERBLOCKS_APP_TEMPLATE_NAME ??
|
|
301
300
|
options.prefetchedApplication?.application?.templateName;
|
|
302
301
|
const sdkApiEnabled = isSdkApiTemplate(templateName);
|
|
302
|
+
const isAppFullstackTemplate = templateName === "app-fullstack";
|
|
303
|
+
const rawFlagBootstrap = currentUser.flagBootstrap;
|
|
303
304
|
const flagBootstrap = {
|
|
304
|
-
...
|
|
305
|
+
...rawFlagBootstrap,
|
|
305
306
|
"clark.sdk-api.enabled": sdkApiEnabled,
|
|
306
|
-
"superblocks.native-git.enabled":
|
|
307
|
-
!!
|
|
307
|
+
"superblocks.native-git.enabled": (isAppFullstackTemplate &&
|
|
308
|
+
!!rawFlagBootstrap?.["superblocks.native-git.enabled"]) ||
|
|
309
|
+
!!rawFlagBootstrap?.["superblocks.native-git.forced"],
|
|
308
310
|
};
|
|
309
311
|
aiService = new AiService({
|
|
310
312
|
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
@@ -363,7 +365,14 @@ export async function dev(options) {
|
|
|
363
365
|
userEmail: gitUserEmail,
|
|
364
366
|
});
|
|
365
367
|
if (!bootstrappedGitService) {
|
|
366
|
-
logger.info("
|
|
368
|
+
logger.info("[git] startup git sync skipped", {
|
|
369
|
+
gitCategory: "setup",
|
|
370
|
+
gitOperation: "bootstrap",
|
|
371
|
+
gitOutcome: "skipped",
|
|
372
|
+
gitReason: "no_remote_configured",
|
|
373
|
+
applicationId: applicationConfig.id,
|
|
374
|
+
workDir: cwd,
|
|
375
|
+
});
|
|
367
376
|
gitSpan.end();
|
|
368
377
|
return;
|
|
369
378
|
}
|
|
@@ -390,13 +399,27 @@ export async function dev(options) {
|
|
|
390
399
|
await fetchAndEnsureLiveBranch(gitService, "Git remote sync failed (local repo still usable)");
|
|
391
400
|
}
|
|
392
401
|
catch (syncError) {
|
|
393
|
-
logger.warn(
|
|
402
|
+
logger.warn("[git] startup remote sync failed but local repo remains usable", {
|
|
403
|
+
gitCategory: "setup",
|
|
404
|
+
gitOperation: "fetch-and-ensure-live-branch",
|
|
405
|
+
gitOutcome: "failed",
|
|
406
|
+
applicationId: applicationConfig.id,
|
|
407
|
+
workDir: cwd,
|
|
408
|
+
...getGitErrorFields(syncError),
|
|
409
|
+
});
|
|
394
410
|
}
|
|
395
411
|
}
|
|
396
412
|
catch (gitError) {
|
|
397
413
|
// Init/configure/ensureGitRepo failed — repo is not usable
|
|
398
414
|
gitService = undefined;
|
|
399
|
-
logger.warn(
|
|
415
|
+
logger.warn("[git] startup git setup failed, continuing without git", {
|
|
416
|
+
gitCategory: "setup",
|
|
417
|
+
gitOperation: "bootstrap",
|
|
418
|
+
gitOutcome: "failed",
|
|
419
|
+
applicationId: applicationConfig.id,
|
|
420
|
+
workDir: cwd,
|
|
421
|
+
...getGitErrorFields(gitError),
|
|
422
|
+
});
|
|
400
423
|
gitSpan.setStatus({
|
|
401
424
|
code: SpanStatusCode.ERROR,
|
|
402
425
|
message: gitError instanceof Error
|
|
@@ -503,8 +526,22 @@ export async function dev(options) {
|
|
|
503
526
|
if (gitService) {
|
|
504
527
|
const hasGit = await nodeFs.access(path.join(cwd, ".git")).then(() => true, () => false);
|
|
505
528
|
if (!hasGit) {
|
|
506
|
-
logger.warn("[git]
|
|
529
|
+
logger.warn("[git] runtime git service cache invalidated", {
|
|
530
|
+
gitCategory: "setup",
|
|
531
|
+
gitOperation: "activate-runtime-service",
|
|
532
|
+
gitOutcome: "failed",
|
|
533
|
+
gitReason: "missing_git_directory",
|
|
534
|
+
workDir: cwd,
|
|
535
|
+
});
|
|
507
536
|
gitService = undefined;
|
|
537
|
+
activeDbfsBranchName = await ensureRuntimeDbfsBranchConsistency({
|
|
538
|
+
sdk,
|
|
539
|
+
applicationConfig,
|
|
540
|
+
logger,
|
|
541
|
+
lockService,
|
|
542
|
+
syncService,
|
|
543
|
+
currentBranchName: activeDbfsBranchName,
|
|
544
|
+
});
|
|
508
545
|
return undefined;
|
|
509
546
|
}
|
|
510
547
|
activeDbfsBranchName = await ensureRuntimeDbfsBranchConsistency({
|
|
@@ -527,6 +564,16 @@ export async function dev(options) {
|
|
|
527
564
|
userEmail: gitUserEmail,
|
|
528
565
|
});
|
|
529
566
|
if (!runtimeGitService) {
|
|
567
|
+
// Git may have been disconnected while this dev server is running.
|
|
568
|
+
// Reconcile lock/sync branch context back to non-git runtime state.
|
|
569
|
+
activeDbfsBranchName = await ensureRuntimeDbfsBranchConsistency({
|
|
570
|
+
sdk,
|
|
571
|
+
applicationConfig,
|
|
572
|
+
logger,
|
|
573
|
+
lockService,
|
|
574
|
+
syncService,
|
|
575
|
+
currentBranchName: activeDbfsBranchName,
|
|
576
|
+
});
|
|
530
577
|
return undefined;
|
|
531
578
|
}
|
|
532
579
|
try {
|
|
@@ -547,7 +594,14 @@ export async function dev(options) {
|
|
|
547
594
|
return gitService;
|
|
548
595
|
}
|
|
549
596
|
catch (error) {
|
|
550
|
-
logger.warn(
|
|
597
|
+
logger.warn("[git] runtime bootstrap failed", {
|
|
598
|
+
gitCategory: "setup",
|
|
599
|
+
gitOperation: "runtime-bootstrap",
|
|
600
|
+
gitOutcome: "failed",
|
|
601
|
+
applicationId: applicationConfig.id,
|
|
602
|
+
workDir: cwd,
|
|
603
|
+
...getGitErrorFields(error),
|
|
604
|
+
});
|
|
551
605
|
return undefined;
|
|
552
606
|
}
|
|
553
607
|
};
|
|
@@ -560,6 +614,7 @@ export async function dev(options) {
|
|
|
560
614
|
syncService: syncService,
|
|
561
615
|
lockService: lockService,
|
|
562
616
|
aiService: aiService,
|
|
617
|
+
gitService: gitService,
|
|
563
618
|
activateGitService: activateRuntimeGitService,
|
|
564
619
|
snapshotManager: snapshotManager,
|
|
565
620
|
logger: options.logger,
|
|
@@ -602,6 +657,13 @@ export async function dev(options) {
|
|
|
602
657
|
// ---------------------------------------------------------------------------
|
|
603
658
|
// Git sync helpers
|
|
604
659
|
// ---------------------------------------------------------------------------
|
|
660
|
+
function getGitErrorFields(error) {
|
|
661
|
+
const meta = getErrorMeta(error);
|
|
662
|
+
return {
|
|
663
|
+
gitErrorKind: meta.error.kind,
|
|
664
|
+
gitErrorMessage: meta.error.message,
|
|
665
|
+
};
|
|
666
|
+
}
|
|
605
667
|
async function bootstrapGitService({ sdk, applicationId, cwd, logger, userName, userEmail, }) {
|
|
606
668
|
const gitConfigSdk = sdk;
|
|
607
669
|
const gitConfig = await gitConfigSdk.getApplicationGitConfig(applicationId);
|
|
@@ -610,16 +672,26 @@ async function bootstrapGitService({ sdk, applicationId, cwd, logger, userName,
|
|
|
610
672
|
}
|
|
611
673
|
const service = createGitService(cwd);
|
|
612
674
|
let credentials;
|
|
675
|
+
let gitRemoteHost;
|
|
613
676
|
if (gitConfig.hasCredential) {
|
|
614
677
|
try {
|
|
615
678
|
const host = new URL(gitConfig.gitRemoteUrl).hostname;
|
|
679
|
+
gitRemoteHost = host;
|
|
616
680
|
const freshToken = await gitConfigSdk.getGitFreshToken(host, applicationId);
|
|
617
681
|
if (freshToken) {
|
|
618
682
|
credentials = freshToken;
|
|
619
683
|
}
|
|
620
684
|
}
|
|
621
|
-
catch {
|
|
622
|
-
logger.warn("
|
|
685
|
+
catch (error) {
|
|
686
|
+
logger.warn("[git] credential fetch failed, continuing without auth", {
|
|
687
|
+
gitCategory: "setup",
|
|
688
|
+
gitOperation: "fetch-credentials",
|
|
689
|
+
gitOutcome: "failed",
|
|
690
|
+
applicationId,
|
|
691
|
+
gitRemoteHost,
|
|
692
|
+
gitRemoteUrl: gitConfig.gitRemoteUrl,
|
|
693
|
+
...getGitErrorFields(error),
|
|
694
|
+
});
|
|
623
695
|
}
|
|
624
696
|
}
|
|
625
697
|
await service.configure({ credentials, userName, userEmail });
|
|
@@ -633,7 +705,14 @@ async function fetchAndEnsureLiveBranch(git, errorPrefix) {
|
|
|
633
705
|
}
|
|
634
706
|
catch (error) {
|
|
635
707
|
fetchError = error;
|
|
636
|
-
getLogger().warn(
|
|
708
|
+
getLogger().warn("[git] fetch and ensure live branch failed", {
|
|
709
|
+
gitCategory: "setup",
|
|
710
|
+
gitOperation: "fetch-and-ensure-live-branch",
|
|
711
|
+
gitOutcome: "failed",
|
|
712
|
+
gitReason: errorPrefix,
|
|
713
|
+
workDir: git.workDir,
|
|
714
|
+
...getGitErrorFields(error),
|
|
715
|
+
});
|
|
637
716
|
}
|
|
638
717
|
// Always ensure the local superblocks/live branch exists,
|
|
639
718
|
// even if fetch failed (remote may not be reachable yet).
|
|
@@ -655,7 +734,15 @@ async function ensureGitRepo(git, remoteUrl) {
|
|
|
655
734
|
`refs/heads/${SUPERBLOCKS_LIVE_GIT_BRANCH}`,
|
|
656
735
|
])
|
|
657
736
|
.catch((err) => {
|
|
658
|
-
getLogger().warn(
|
|
737
|
+
getLogger().warn("[git] ensure repo ls-remote failed", {
|
|
738
|
+
gitCategory: "setup",
|
|
739
|
+
gitOperation: "ensure-repo",
|
|
740
|
+
gitOutcome: "failed",
|
|
741
|
+
gitRemote: "origin",
|
|
742
|
+
gitBranch: SUPERBLOCKS_LIVE_GIT_BRANCH,
|
|
743
|
+
gitRemoteUrl: remoteUrl,
|
|
744
|
+
...getGitErrorFields(err),
|
|
745
|
+
});
|
|
659
746
|
return "";
|
|
660
747
|
});
|
|
661
748
|
if (!remoteRefs.includes(`refs/heads/${SUPERBLOCKS_LIVE_GIT_BRANCH}`)) {
|
|
@@ -691,16 +778,36 @@ async function ensureGitRepo(git, remoteUrl) {
|
|
|
691
778
|
const remotes = await git.getRemotes(true);
|
|
692
779
|
const origin = remotes.find((r) => r.name === "origin");
|
|
693
780
|
if (origin && origin.refs.fetch !== remoteUrl) {
|
|
694
|
-
getLogger().warn(
|
|
781
|
+
getLogger().warn("[git] ensure repo remote url changed", {
|
|
782
|
+
gitCategory: "setup",
|
|
783
|
+
gitOperation: "ensure-repo",
|
|
784
|
+
gitOutcome: "fallback",
|
|
785
|
+
gitRemote: "origin",
|
|
786
|
+
gitPreviousRemoteUrl: origin.refs.fetch,
|
|
787
|
+
gitRemoteUrl: remoteUrl,
|
|
788
|
+
});
|
|
695
789
|
await git.remote(["set-url", "origin", remoteUrl]);
|
|
696
790
|
}
|
|
697
791
|
else if (!origin) {
|
|
698
|
-
getLogger().warn("[git]
|
|
792
|
+
getLogger().warn("[git] ensure repo origin remote missing, adding", {
|
|
793
|
+
gitCategory: "setup",
|
|
794
|
+
gitOperation: "ensure-repo",
|
|
795
|
+
gitOutcome: "fallback",
|
|
796
|
+
gitRemote: "origin",
|
|
797
|
+
gitRemoteUrl: remoteUrl,
|
|
798
|
+
});
|
|
699
799
|
await git.addRemote("origin", remoteUrl);
|
|
700
800
|
}
|
|
701
801
|
}
|
|
702
802
|
catch (remoteErr) {
|
|
703
|
-
getLogger().warn(
|
|
803
|
+
getLogger().warn("[git] ensure repo remote inspection failed, attempting fallback", {
|
|
804
|
+
gitCategory: "setup",
|
|
805
|
+
gitOperation: "ensure-repo",
|
|
806
|
+
gitOutcome: "failed",
|
|
807
|
+
gitRemote: "origin",
|
|
808
|
+
gitRemoteUrl: remoteUrl,
|
|
809
|
+
...getGitErrorFields(remoteErr),
|
|
810
|
+
});
|
|
704
811
|
try {
|
|
705
812
|
await git.addRemote("origin", remoteUrl);
|
|
706
813
|
}
|
|
@@ -713,11 +820,8 @@ async function ensureGitRepo(git, remoteUrl) {
|
|
|
713
820
|
// existing local repo (hasGit=true), so users don't miss .github bootstrap.
|
|
714
821
|
await seedGithubWorkflowIfNeeded(git.workDir, remoteUrl);
|
|
715
822
|
}
|
|
716
|
-
function isGithubRemote(remoteUrl) {
|
|
717
|
-
return remoteUrl.includes("github.com");
|
|
718
|
-
}
|
|
719
823
|
async function seedGithubWorkflowIfNeeded(workDir, remoteUrl) {
|
|
720
|
-
if (!
|
|
824
|
+
if (!isGitHubRemoteUrl(remoteUrl)) {
|
|
721
825
|
return;
|
|
722
826
|
}
|
|
723
827
|
const workflowDir = path.join(workDir, ".github", "workflows");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-sdk-registry.d.mts","sourceRoot":"","sources":["../src/parse-sdk-registry.mts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEpD,KAAK,UAAU,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"parse-sdk-registry.d.mts","sourceRoot":"","sources":["../src/parse-sdk-registry.mts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEpD,KAAK,UAAU,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAGlD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAI5B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import {
|
|
2
|
+
import { parseSdkRegistryFromContent } from "@superblocksteam/vite-plugin-file-sync/parsing";
|
|
3
|
+
const RESOLUTION_EXTENSIONS = [".ts", ".tsx", ".js"];
|
|
3
4
|
/**
|
|
4
5
|
* Parse server/apis/index.ts to extract the mapping from registry key (used in
|
|
5
6
|
* useApi("Key")) to the entry point path (relative to app root). This ensures
|
|
@@ -16,64 +17,7 @@ import { parse } from "@babel/parser";
|
|
|
16
17
|
* @param pathExists - Async function to check if a file exists
|
|
17
18
|
*/
|
|
18
19
|
export async function parseSdkRegistry(registryContent, registryDir, root, pathExists) {
|
|
19
|
-
|
|
20
|
-
let ast;
|
|
21
|
-
try {
|
|
22
|
-
ast = parse(registryContent, {
|
|
23
|
-
sourceType: "module",
|
|
24
|
-
plugins: ["typescript"],
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
catch {
|
|
28
|
-
return result;
|
|
29
|
-
}
|
|
30
|
-
const body = ast.program.body;
|
|
31
|
-
// Build import map: local name -> resolved path (relative to root)
|
|
32
|
-
const importMap = new Map();
|
|
33
|
-
for (const node of body) {
|
|
34
|
-
if (node.type !== "ImportDeclaration")
|
|
35
|
-
continue;
|
|
36
|
-
const imp = node;
|
|
37
|
-
const specifier = imp.specifiers[0];
|
|
38
|
-
if (!specifier || specifier.type !== "ImportDefaultSpecifier")
|
|
39
|
-
continue;
|
|
40
|
-
const localName = specifier.local?.name;
|
|
41
|
-
const source = imp.source?.value;
|
|
42
|
-
if (typeof localName !== "string" || typeof source !== "string")
|
|
43
|
-
continue;
|
|
44
|
-
const resolved = await resolveImportPath(source, registryDir, root, pathExists);
|
|
45
|
-
if (resolved)
|
|
46
|
-
importMap.set(localName, resolved);
|
|
47
|
-
}
|
|
48
|
-
// Find the exported object
|
|
49
|
-
const exportedObject = findExportedObject(ast);
|
|
50
|
-
if (!exportedObject)
|
|
51
|
-
return result;
|
|
52
|
-
for (const prop of exportedObject.properties) {
|
|
53
|
-
if (prop.type !== "ObjectProperty")
|
|
54
|
-
continue;
|
|
55
|
-
const key = getPropertyKey(prop);
|
|
56
|
-
if (!key)
|
|
57
|
-
continue;
|
|
58
|
-
const value = prop.value;
|
|
59
|
-
let resolvedPath;
|
|
60
|
-
if (value.type === "Identifier") {
|
|
61
|
-
resolvedPath = importMap.get(value.name ?? "");
|
|
62
|
-
}
|
|
63
|
-
else if (value.type === "CallExpression") {
|
|
64
|
-
resolvedPath = await resolveImportPathFromCall(value, registryDir, root, pathExists);
|
|
65
|
-
}
|
|
66
|
-
// ObjectProperty with ArrowFunctionExpression: () => import('./x')
|
|
67
|
-
else if (value.type === "ArrowFunctionExpression") {
|
|
68
|
-
const body = value.body;
|
|
69
|
-
if (body?.type === "CallExpression") {
|
|
70
|
-
resolvedPath = await resolveImportPathFromCall(body, registryDir, root, pathExists);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
if (resolvedPath)
|
|
74
|
-
result.set(key, resolvedPath);
|
|
75
|
-
}
|
|
76
|
-
return result;
|
|
20
|
+
return parseSdkRegistryFromContent(registryContent, (importPath) => resolveImportPath(importPath, registryDir, root, pathExists));
|
|
77
21
|
}
|
|
78
22
|
async function resolveImportPath(importPath, registryDir, root, pathExists) {
|
|
79
23
|
if (!importPath.startsWith("."))
|
|
@@ -81,81 +25,12 @@ async function resolveImportPath(importPath, registryDir, root, pathExists) {
|
|
|
81
25
|
const absoluteBase = path
|
|
82
26
|
.normalize(path.join(registryDir, importPath))
|
|
83
27
|
.replace(/\.(js|ts|tsx)$/, "");
|
|
84
|
-
for (const
|
|
85
|
-
const candidate = absoluteBase +
|
|
28
|
+
for (const extension of RESOLUTION_EXTENSIONS) {
|
|
29
|
+
const candidate = absoluteBase + extension;
|
|
86
30
|
if (await pathExists(candidate)) {
|
|
87
31
|
return path.relative(root, candidate).replace(/\\/g, "/");
|
|
88
32
|
}
|
|
89
33
|
}
|
|
90
34
|
return undefined;
|
|
91
35
|
}
|
|
92
|
-
async function resolveImportPathFromCall(call, registryDir, root, pathExists) {
|
|
93
|
-
const callee = call.callee;
|
|
94
|
-
if (callee.type !== "Import")
|
|
95
|
-
return undefined;
|
|
96
|
-
const arg = call.arguments[0];
|
|
97
|
-
if (arg?.type !== "StringLiteral" || typeof arg.value !== "string")
|
|
98
|
-
return undefined;
|
|
99
|
-
return resolveImportPath(arg.value, registryDir, root, pathExists);
|
|
100
|
-
}
|
|
101
|
-
function getPropertyKey(prop) {
|
|
102
|
-
const key = prop.key;
|
|
103
|
-
if (key.type === "Identifier")
|
|
104
|
-
return key.name;
|
|
105
|
-
if (key.type === "StringLiteral")
|
|
106
|
-
return key.value;
|
|
107
|
-
return undefined;
|
|
108
|
-
}
|
|
109
|
-
function findExportedObject(ast) {
|
|
110
|
-
for (const node of ast.program.body) {
|
|
111
|
-
if (node.type !== "ExportDefaultDeclaration")
|
|
112
|
-
continue;
|
|
113
|
-
const decl = node.declaration;
|
|
114
|
-
const obj = getObjectExpression(decl);
|
|
115
|
-
if (obj) {
|
|
116
|
-
return obj;
|
|
117
|
-
}
|
|
118
|
-
if (decl.type === "Identifier") {
|
|
119
|
-
const varName = decl.name;
|
|
120
|
-
if (!varName)
|
|
121
|
-
continue;
|
|
122
|
-
const def = findVariableDeclaration(ast, varName);
|
|
123
|
-
if (def?.init) {
|
|
124
|
-
return def.init;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return undefined;
|
|
129
|
-
}
|
|
130
|
-
function getObjectExpression(node) {
|
|
131
|
-
if (node.type === "ObjectExpression") {
|
|
132
|
-
return node;
|
|
133
|
-
}
|
|
134
|
-
// TypeScript: { x } as const → TSAsExpression or TSSatisfiesExpression
|
|
135
|
-
if ((node.type === "TSAsExpression" || node.type === "TSSatisfiesExpression") &&
|
|
136
|
-
"expression" in node) {
|
|
137
|
-
const inner = node.expression;
|
|
138
|
-
if (inner?.type === "ObjectExpression") {
|
|
139
|
-
return inner;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
return undefined;
|
|
143
|
-
}
|
|
144
|
-
function findVariableDeclaration(ast, name) {
|
|
145
|
-
for (const node of ast.program.body) {
|
|
146
|
-
if (node.type !== "VariableDeclaration")
|
|
147
|
-
continue;
|
|
148
|
-
const decl = node;
|
|
149
|
-
for (const declarator of decl.declarations) {
|
|
150
|
-
if (declarator.id.type === "Identifier" &&
|
|
151
|
-
declarator.id.name === name &&
|
|
152
|
-
declarator.init) {
|
|
153
|
-
const obj = getObjectExpression(declarator.init);
|
|
154
|
-
if (obj)
|
|
155
|
-
return { init: obj };
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
return undefined;
|
|
160
|
-
}
|
|
161
36
|
//# sourceMappingURL=parse-sdk-registry.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-sdk-registry.mjs","sourceRoot":"","sources":["../src/parse-sdk-registry.mts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"parse-sdk-registry.mjs","sourceRoot":"","sources":["../src/parse-sdk-registry.mts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAK7F,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAU,CAAC;AAE9D;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,eAAuB,EACvB,WAAmB,EACnB,IAAY,EACZ,UAAsB;IAEtB,OAAO,2BAA2B,CAAC,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE,CACjE,iBAAiB,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,CAC7D,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,UAAkB,EAClB,WAAmB,EACnB,IAAY,EACZ,UAAsB;IAEtB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAClD,MAAM,YAAY,GAAG,IAAI;SACtB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;SAC7C,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAEjC,KAAK,MAAM,SAAS,IAAI,qBAAqB,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;QAC3C,IAAI,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -8,7 +8,8 @@ describe("parseSdkRegistry", () => {
|
|
|
8
8
|
const rel = path.relative(root, p).replace(/\\/g, "/");
|
|
9
9
|
return (rel === "server/apis/GetUsers/api.ts" ||
|
|
10
10
|
rel === "server/apis/v2/GetUsers/api.ts" ||
|
|
11
|
-
rel === "server/apis/CreateOrder/api.ts"
|
|
11
|
+
rel === "server/apis/CreateOrder/api.ts" ||
|
|
12
|
+
rel === "server/apis/JsOnly/api.js");
|
|
12
13
|
};
|
|
13
14
|
it("extracts registry keys from direct imports", async () => {
|
|
14
15
|
const content = `
|
|
@@ -79,5 +80,14 @@ export default { GetUsers } as const;
|
|
|
79
80
|
const result = await parseSdkRegistry(content, registryDir, root, pathExists);
|
|
80
81
|
expect(result.size).toBe(0);
|
|
81
82
|
});
|
|
83
|
+
it("resolves .js files when .ts/.tsx are missing", async () => {
|
|
84
|
+
const content = `
|
|
85
|
+
import JsOnly from './JsOnly/api.js';
|
|
86
|
+
export default { JsOnly };
|
|
87
|
+
`;
|
|
88
|
+
const result = await parseSdkRegistry(content, registryDir, root, pathExists);
|
|
89
|
+
expect(result.get("JsOnly")).toBe("server/apis/JsOnly/api.js");
|
|
90
|
+
expect(result.size).toBe(1);
|
|
91
|
+
});
|
|
82
92
|
});
|
|
83
93
|
//# sourceMappingURL=parse-sdk-registry.test.mjs.map
|