@builder.io/dev-tools 1.22.2-dev.202602021932.a1fb74ebb → 1.22.2-dev.202602022342.768d3c452
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/cli/index.cjs +1186 -745
- package/cli/index.cjs.map +4 -4
- package/core/index.cjs +1 -1
- package/core/index.mjs +1 -1
- package/node/index.cjs +1 -1
- package/node/index.mjs +1 -1
- package/package.json +1 -1
- package/server/index.cjs +2 -5
- package/server/index.mjs +2 -5
- package/types/_tests_/utils.d.ts +35 -48
- package/types/cli/abort-signal-any.d.ts +1 -3
- package/types/cli/auth/auth-utils.d.ts +1 -3
- package/types/cli/auth/auth.d.ts +1 -5
- package/types/cli/backup.d.ts +60 -114
- package/types/cli/builder-add/interface.d.ts +4 -21
- package/types/cli/code-file-utils.d.ts +8 -11
- package/types/cli/code.d.ts +3 -13
- package/types/cli/constants.d.ts +1 -1
- package/types/cli/credentials.d.ts +45 -61
- package/types/cli/detectors/nextjs.d.ts +1 -4
- package/types/cli/detectors/svelte.d.ts +1 -4
- package/types/cli/detectors/vue.d.ts +1 -4
- package/types/cli/download.d.ts +4 -9
- package/types/cli/dsi-mcp.d.ts +1 -4
- package/types/cli/fetch.d.ts +2 -7
- package/types/cli/figma-publish.d.ts +17 -34
- package/types/cli/figma-utils.d.ts +21 -51
- package/types/cli/figma.d.ts +2 -9
- package/types/cli/generate.d.ts +11 -14
- package/types/cli/incremental-tsc.d.ts +7 -19
- package/types/cli/index.d.ts +154 -154
- package/types/cli/launch/InitStateMachine.d.ts +89 -156
- package/types/cli/launch/config.d.ts +3 -13
- package/types/cli/launch/dev-server-orchestrator.d.ts +99 -131
- package/types/cli/launch/dry-run-backup.d.ts +7 -14
- package/types/cli/launch/errors.d.ts +2 -7
- package/types/cli/launch/grafana.d.ts +1 -5
- package/types/cli/launch/helpers.d.ts +10 -19
- package/types/cli/launch/machine-health.d.ts +3 -8
- package/types/cli/launch/proxy.d.ts +4 -11
- package/types/cli/launch/server.d.ts +12 -19
- package/types/cli/launch/vscode-tunnel-manager.d.ts +68 -77
- package/types/cli/launch.d.ts +106 -109
- package/types/cli/prettier.d.ts +2 -9
- package/types/cli/repo-connect/env-collector.d.ts +11 -16
- package/types/cli/repo-connect/file-collector.d.ts +15 -22
- package/types/cli/repo-connect/git-detector.d.ts +11 -13
- package/types/cli/repo-connect/install-runner.d.ts +5 -8
- package/types/cli/repo-connect/package-detector.d.ts +8 -12
- package/types/cli/repo-connect/repo-connect.d.ts +1 -4
- package/types/cli/repo-indexing/component-discovery.d.ts +17 -30
- package/types/cli/repo-indexing/component-indexing.d.ts +20 -39
- package/types/cli/repo-indexing/icons.d.ts +24 -36
- package/types/cli/repo-indexing/installation.d.ts +14 -22
- package/types/cli/repo-indexing/repo-indexing-utils.d.ts +79 -138
- package/types/cli/repo-indexing/repo-indexing.d.ts +17 -37
- package/types/cli/repo-indexing/repo-indexing.mock.d.ts +3 -3
- package/types/cli/repo-indexing/tokens.d.ts +25 -44
- package/types/cli/repo-indexing/types.d.ts +29 -29
- package/types/cli/repo-metrics-utils.d.ts +5 -13
- package/types/cli/repo-metrics.d.ts +1 -4
- package/types/cli/report/figma-report.d.ts +36 -63
- package/types/cli/server-ws.d.ts +32 -40
- package/types/cli/spinner.d.ts +4 -4
- package/types/cli/sync-utils.d.ts +18 -45
- package/types/cli/track.d.ts +1 -4
- package/types/cli/utils/agent-discovery.d.ts +5 -10
- package/types/cli/utils/agent-parser.d.ts +14 -18
- package/types/cli/utils/component-group-mdx-prompt.d.ts +1 -2
- package/types/cli/utils/discovery-test-utils.d.ts +1 -3
- package/types/cli/utils/env-capture.d.ts +15 -21
- package/types/cli/utils/env-substitution.d.ts +1 -4
- package/types/cli/utils/feature-flags.d.ts +1 -3
- package/types/cli/utils/file-overrides-manager.d.ts +23 -39
- package/types/cli/utils/git.d.ts +16 -28
- package/types/cli/utils/hosts-file-manager.d.ts +4 -7
- package/types/cli/utils/lock-file.d.ts +7 -10
- package/types/cli/utils/parseGitDiff.d.ts +1 -4
- package/types/cli/utils/process-tracker.d.ts +51 -85
- package/types/cli/utils/project-configuration-agent.d.ts +2 -0
- package/types/cli/utils/repo-indexing-agent-prompt.d.ts +1 -2
- package/types/cli/utils/rules-discovery.d.ts +5 -10
- package/types/cli/utils/rules-parser.d.ts +1 -5
- package/types/cli/utils/terminal-buffer.d.ts +23 -23
- package/types/cli/utils/workspace-path-resolver.d.ts +16 -23
- package/types/cli/utils/yaml-frontmatter.d.ts +6 -10
- package/types/client/client-api.d.ts +10 -42
- package/types/client/edit-button/document-listeners.d.ts +1 -3
- package/types/client/edit-button/index.d.ts +6 -6
- package/types/client/menu/index.d.ts +3 -3
- package/types/client/menu/pages/component-detail.d.ts +2 -8
- package/types/client/menu/pages/component-input.d.ts +1 -5
- package/types/client/menu/pages/component-list.d.ts +1 -4
- package/types/client/menu/toggle/menu-toggle.d.ts +1 -4
- package/types/client/setup-ui/overview.d.ts +2 -2
- package/types/client/tracking.d.ts +11 -11
- package/types/client/utils.d.ts +3 -5
- package/types/common/ast/app-dependencies.d.ts +2 -8
- package/types/common/ast/component-info.d.ts +6 -26
- package/types/common/ast/component-input-types.d.ts +9 -28
- package/types/common/ast/component-registry.d.ts +8 -23
- package/types/common/ast/convert-values.d.ts +8 -40
- package/types/common/ast/ensure-array-statement.d.ts +3 -7
- package/types/common/ast/ensure-comments.d.ts +1 -5
- package/types/common/ast/ensure-imports.d.ts +5 -10
- package/types/common/ast/exported-statements.d.ts +4 -8
- package/types/common/ast/imported-statements.d.ts +1 -5
- package/types/common/ast/normalize-statements.d.ts +3 -12
- package/types/common/ast/remove-unused-imports.d.ts +1 -4
- package/types/common/ast/transform.d.ts +3 -13
- package/types/common/ast/utils.d.ts +19 -42
- package/types/common/builder/builder-api.d.ts +23 -32
- package/types/common/builder/builder-sdks.d.ts +8 -10
- package/types/common/builder/content-generation.d.ts +7 -10
- package/types/common/builder/content-ids.d.ts +1 -2
- package/types/common/cache.d.ts +1 -4
- package/types/common/constants.d.ts +1 -2
- package/types/common/dotenv.d.ts +5 -24
- package/types/common/errors.d.ts +22 -50
- package/types/common/fs.d.ts +4 -17
- package/types/common/interactive-select-files.d.ts +2 -16
- package/types/common/mem-sys.d.ts +5 -7
- package/types/common/node-request.d.ts +4 -4
- package/types/common/path.d.ts +3 -1
- package/types/common/test-utils.d.ts +7 -21
- package/types/common/typescript.d.ts +7 -26
- package/types/common/utils.d.ts +8 -36
- package/types/core/adapters/angular/angular-api-key.d.ts +6 -29
- package/types/core/adapters/angular/angular-app-module-imports.d.ts +2 -12
- package/types/core/adapters/angular/angular-app-routes-update.d.ts +1 -6
- package/types/core/adapters/angular/angular-components.d.ts +12 -40
- package/types/core/adapters/angular/angular-ensure-builder-setup.d.ts +3 -9
- package/types/core/adapters/angular/angular-ensure-config-plugin.d.ts +4 -16
- package/types/core/adapters/angular/angular-fix-tsconfig.d.ts +1 -3
- package/types/core/adapters/angular/angular-registry-parse.d.ts +10 -22
- package/types/core/adapters/angular/angular-registry.d.ts +2 -15
- package/types/core/adapters/angular/angular-test-utils.d.ts +4 -8
- package/types/core/adapters/angular/index.d.ts +12 -20
- package/types/core/adapters/angular/types.d.ts +5 -5
- package/types/core/adapters/next/index.d.ts +18 -26
- package/types/core/adapters/next/next-api-key.d.ts +1 -4
- package/types/core/adapters/next/next-component-info.d.ts +2 -9
- package/types/core/adapters/next/next-components.d.ts +1 -4
- package/types/core/adapters/next/next-ensure-builder-setup.d.ts +2 -6
- package/types/core/adapters/next/next-ensure-config-plugin.d.ts +1 -5
- package/types/core/adapters/next/next-registry-parse.d.ts +8 -21
- package/types/core/adapters/next/next-registry.d.ts +2 -15
- package/types/core/adapters/next/next-test-utils.d.ts +11 -21
- package/types/core/adapters/qwik-city/index.d.ts +6 -14
- package/types/core/adapters/qwik-city/qwik-api-key.d.ts +1 -4
- package/types/core/adapters/qwik-city/qwik-component-source-inputs.d.ts +1 -4
- package/types/core/adapters/qwik-city/qwik-components.d.ts +8 -23
- package/types/core/adapters/qwik-city/qwik-ensure-builder-setup.d.ts +2 -6
- package/types/core/adapters/qwik-city/qwik-ensure-config-plugin.d.ts +1 -5
- package/types/core/adapters/qwik-city/qwik-registry-parse.d.ts +10 -22
- package/types/core/adapters/qwik-city/qwik-registry.d.ts +2 -15
- package/types/core/adapters/qwik-city/qwik-test-utils.d.ts +4 -8
- package/types/core/adapters/qwik-city/qwik-ts-program.d.ts +1 -3
- package/types/core/adapters/react/index.d.ts +11 -19
- package/types/core/adapters/react/react-api-key.d.ts +1 -4
- package/types/core/adapters/react/react-builder-sdk-setup.d.ts +1 -3
- package/types/core/adapters/react/react-component-info.d.ts +2 -9
- package/types/core/adapters/react/react-components.d.ts +11 -37
- package/types/core/adapters/react/react-ensure-builder-setup.d.ts +2 -6
- package/types/core/adapters/react/react-registry-parse.d.ts +8 -21
- package/types/core/adapters/react/react-registry.d.ts +2 -15
- package/types/core/adapters/react/react-test-utils.d.ts +5 -11
- package/types/core/adapters/react/react-ts-program.d.ts +1 -3
- package/types/core/adapters/remix/index.d.ts +11 -19
- package/types/core/adapters/remix/remix-api-key.d.ts +1 -4
- package/types/core/adapters/remix/remix-components.d.ts +1 -4
- package/types/core/adapters/remix/remix-ensure-builder-setup.d.ts +3 -9
- package/types/core/adapters/remix/remix-ensure-config-plugin.d.ts +1 -5
- package/types/core/adapters/remix/remix-registry-parse.d.ts +10 -22
- package/types/core/adapters/remix/remix-registry.d.ts +2 -15
- package/types/core/adapters/remix/remix-test-utils.d.ts +5 -11
- package/types/core/adapters/vite/vite-ensure-config-plugin.d.ts +2 -12
- package/types/core/adapters/vue/index.d.ts +12 -20
- package/types/core/adapters/vue/vue-api-key.d.ts +1 -4
- package/types/core/adapters/vue/vue-components.d.ts +2 -10
- package/types/core/adapters/vue/vue-ensure-builder-setup.d.ts +3 -7
- package/types/core/adapters/vue/vue-registry-parse.d.ts +9 -19
- package/types/core/adapters/vue/vue-registry.d.ts +3 -6
- package/types/core/adapters/webpack/webpack-config-helpers.d.ts +3 -8
- package/types/core/adapters/webpack/webpack-ensure-config-plugin.d.ts +1 -5
- package/types/core/create-dev-tools.d.ts +1 -4
- package/types/core/detect-frameworks.d.ts +2 -7
- package/types/core/ensure-config-plugin.d.ts +2 -6
- package/types/core/find-dependencies.d.ts +3 -6
- package/types/core/import-export-registry.d.ts +2 -9
- package/types/core/index.d.ts +3 -18
- package/types/figma/index.d.ts +64 -95
- package/types/node/node-sys.d.ts +6 -13
- package/types/remix/index.d.ts +3 -5
- package/types/server/auth.d.ts +1 -4
- package/types/server/builder-connect.d.ts +6 -21
- package/types/server/client-script.d.ts +2 -6
- package/types/server/create-dev-tools-server.d.ts +1 -3
- package/types/server/dev-tools-api.d.ts +1 -4
- package/types/server/dev-tools-http-server.d.ts +1 -3
- package/types/server/index.d.ts +1 -28
- package/types/server/request-handler.d.ts +1 -6
- package/types/tsconfig.tsbuildinfo +1 -1
- package/types/types/codegen-server.d.ts +1 -1
- package/types/types/connection-tracker.d.ts +34 -34
- package/types/types/proxy-middleware.d.ts +15 -25
- package/types/types/websocket-types.d.ts +7 -9
- package/types/types.d.ts +358 -387
- package/types/vite/main.d.ts +1 -1
- package/types/webpack/main.d.ts +5 -5
|
@@ -1,166 +1,99 @@
|
|
|
1
1
|
import type { DevToolsSys } from "@builder.io/dev-tools/core";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
type InitState,
|
|
6
|
-
type InitStateStep,
|
|
7
|
-
type InitStatusLog,
|
|
8
|
-
} from "$/ai-utils";
|
|
9
|
-
type ValidatedWorkspaceFolder = WorkspaceFolder &
|
|
10
|
-
Required<Pick<WorkspaceFolder, "name" | "path">>;
|
|
11
|
-
type WorkspaceFolderWithRepoInfo = ValidatedWorkspaceFolder &
|
|
12
|
-
Required<Pick<WorkspaceFolder, "repoName" | "repoUrl">>;
|
|
2
|
+
import { type FusionConfig, type WorkspaceFolder, type InitState, type InitStateStep, type InitStatusLog } from "$/ai-utils";
|
|
3
|
+
type ValidatedWorkspaceFolder = WorkspaceFolder & Required<Pick<WorkspaceFolder, "name" | "path">>;
|
|
4
|
+
type WorkspaceFolderWithRepoInfo = ValidatedWorkspaceFolder & Required<Pick<WorkspaceFolder, "repoName" | "repoUrl">>;
|
|
13
5
|
import type { Credentials } from "../credentials";
|
|
14
6
|
import { type GitBackupDownloadResult } from "../backup";
|
|
15
7
|
export interface InitConfig {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
8
|
+
fusionConfig: FusionConfig;
|
|
9
|
+
credentials: Credentials;
|
|
10
|
+
sys: DevToolsSys;
|
|
11
|
+
debug?: boolean;
|
|
12
|
+
sentryTags?: Record<string, string>;
|
|
21
13
|
}
|
|
22
14
|
export interface InitStatus {
|
|
23
|
-
|
|
24
|
-
|
|
15
|
+
message: string;
|
|
16
|
+
error?: string;
|
|
25
17
|
}
|
|
26
18
|
export declare class InitStateMachine {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
volumePath: string,
|
|
107
|
-
repositories: ValidatedWorkspaceFolder[],
|
|
108
|
-
): Promise<void>;
|
|
109
|
-
step4CollectRepoInfo(
|
|
110
|
-
config: InitConfig,
|
|
111
|
-
volumePath: string,
|
|
112
|
-
repositories: ValidatedWorkspaceFolder[],
|
|
113
|
-
): Promise<void>;
|
|
114
|
-
private isGitConfigured;
|
|
115
|
-
private getGitRemoteUrl;
|
|
116
|
-
private sanitizeGitRemoteUrl;
|
|
117
|
-
/**
|
|
118
|
-
* Check if the repository URL is from a standard git hosting provider
|
|
119
|
-
*/
|
|
120
|
-
private isStandardGitHost;
|
|
121
|
-
/**
|
|
122
|
-
* Check if the repository host is reachable via network
|
|
123
|
-
* Performs DNS resolution and TCP connection check
|
|
124
|
-
*/
|
|
125
|
-
private checkHostConnectivity;
|
|
126
|
-
private checkConnectivityDirect;
|
|
127
|
-
private checkConnectivityViaProxy;
|
|
128
|
-
/**
|
|
129
|
-
* Ensures the parent directory of the given path exists.
|
|
130
|
-
* Handles nested repo.path like "subdir/myproject".
|
|
131
|
-
*/
|
|
132
|
-
private ensureParentDirExists;
|
|
133
|
-
private cleanupLockFiles;
|
|
134
|
-
validateGitRepo(repoPath: string): Promise<void>;
|
|
135
|
-
/**
|
|
136
|
-
* If a backup is available, perform a backup recovery (and throw if it fails and cannot be recovered from).
|
|
137
|
-
* If no backup is available, do nothing.
|
|
138
|
-
*/
|
|
139
|
-
private restoreFromPartialBackup;
|
|
140
|
-
private initializeGitRepo;
|
|
141
|
-
private refreshRepoConfig;
|
|
142
|
-
runInitializationCommand({
|
|
143
|
-
repo,
|
|
144
|
-
tempCloningDir,
|
|
145
|
-
repoPath,
|
|
146
|
-
initCommand,
|
|
147
|
-
}: {
|
|
148
|
-
repo: ValidatedWorkspaceFolder;
|
|
149
|
-
tempCloningDir: string;
|
|
150
|
-
repoPath: string;
|
|
151
|
-
initCommand: string;
|
|
152
|
-
}): Promise<{
|
|
153
|
-
outcome: boolean;
|
|
154
|
-
error?: Error;
|
|
155
|
-
}>;
|
|
156
|
-
cloneRepository({
|
|
157
|
-
repo,
|
|
158
|
-
repoPath,
|
|
159
|
-
backupResult,
|
|
160
|
-
}: {
|
|
161
|
-
repo: WorkspaceFolderWithRepoInfo;
|
|
162
|
-
repoPath: string;
|
|
163
|
-
backupResult: GitBackupDownloadResult | undefined;
|
|
164
|
-
}): Promise<boolean>;
|
|
19
|
+
logIdCounter: number;
|
|
20
|
+
initStatusLogs: InitStatusLog[];
|
|
21
|
+
sys: DevToolsSys;
|
|
22
|
+
config: InitConfig;
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated use addInitLog instead. Do not use this directly.
|
|
25
|
+
*/
|
|
26
|
+
debug: boolean;
|
|
27
|
+
initState: InitState;
|
|
28
|
+
constructor(config: InitConfig);
|
|
29
|
+
checkout(branchName: string, ref: string, repoPath: string): Promise<boolean>;
|
|
30
|
+
execAsync(exec: string, args: string[], cwd?: string, retry?: number): Promise<string>;
|
|
31
|
+
git(args: string[], cwd: string, retry?: number, timeout?: number): Promise<string>;
|
|
32
|
+
performBackup({ sys, credentials, fusionConfig, volumePath, repositories, isConnectedToProvider, forcedFullBackup, }: {
|
|
33
|
+
sys: DevToolsSys;
|
|
34
|
+
credentials: Credentials;
|
|
35
|
+
fusionConfig: FusionConfig;
|
|
36
|
+
volumePath: string;
|
|
37
|
+
repositories: ValidatedWorkspaceFolder[];
|
|
38
|
+
isConnectedToProvider: boolean;
|
|
39
|
+
forcedFullBackup: boolean;
|
|
40
|
+
}): Promise<void>;
|
|
41
|
+
performRegularBackup(args: Omit<Parameters<typeof this.performBackup>[0], "isConnectedToProvider" | "forcedFullBackup">): Promise<void>;
|
|
42
|
+
performOfflineBackup(args: Omit<Parameters<typeof this.performBackup>[0], "isConnectedToProvider" | "forcedFullBackup">): Promise<void>;
|
|
43
|
+
performForcedFullBackup(args: Omit<Parameters<typeof this.performBackup>[0], "isConnectedToProvider" | "forcedFullBackup">): Promise<void>;
|
|
44
|
+
init(): Promise<boolean>;
|
|
45
|
+
addInitLog(type: "status" | "log" | "error" | "complete", message: string, options?: {
|
|
46
|
+
step?: InitStateStep;
|
|
47
|
+
error?: string;
|
|
48
|
+
success?: boolean;
|
|
49
|
+
}): void;
|
|
50
|
+
clearInitLogs(): void;
|
|
51
|
+
hasFilesButNoGit(repoPath: string): Promise<boolean>;
|
|
52
|
+
step1CheckDirectories(volumePath: string, repositories: ValidatedWorkspaceFolder[]): Promise<void>;
|
|
53
|
+
step2ConfigureGitRepositories(volumePath: string, repositories: ValidatedWorkspaceFolder[]): Promise<void>;
|
|
54
|
+
step3ConfigureGitUser(volumePath: string, repositories: ValidatedWorkspaceFolder[]): Promise<void>;
|
|
55
|
+
step4CollectRepoInfo(config: InitConfig, volumePath: string, repositories: ValidatedWorkspaceFolder[]): Promise<void>;
|
|
56
|
+
private isGitConfigured;
|
|
57
|
+
private getGitRemoteUrl;
|
|
58
|
+
private sanitizeGitRemoteUrl;
|
|
59
|
+
/**
|
|
60
|
+
* Check if the repository URL is from a standard git hosting provider
|
|
61
|
+
*/
|
|
62
|
+
private isStandardGitHost;
|
|
63
|
+
/**
|
|
64
|
+
* Check if the repository host is reachable via network
|
|
65
|
+
* Performs DNS resolution and TCP connection check
|
|
66
|
+
*/
|
|
67
|
+
private checkHostConnectivity;
|
|
68
|
+
private checkConnectivityDirect;
|
|
69
|
+
private checkConnectivityViaProxy;
|
|
70
|
+
/**
|
|
71
|
+
* Ensures the parent directory of the given path exists.
|
|
72
|
+
* Handles nested repo.path like "subdir/myproject".
|
|
73
|
+
*/
|
|
74
|
+
private ensureParentDirExists;
|
|
75
|
+
private cleanupLockFiles;
|
|
76
|
+
validateGitRepo(repoPath: string): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* If a backup is available, perform a backup recovery (and throw if it fails and cannot be recovered from).
|
|
79
|
+
* If no backup is available, do nothing.
|
|
80
|
+
*/
|
|
81
|
+
private restoreFromPartialBackup;
|
|
82
|
+
private initializeGitRepo;
|
|
83
|
+
private refreshRepoConfig;
|
|
84
|
+
runInitializationCommand({ repo, tempCloningDir, repoPath, initCommand, }: {
|
|
85
|
+
repo: ValidatedWorkspaceFolder;
|
|
86
|
+
tempCloningDir: string;
|
|
87
|
+
repoPath: string;
|
|
88
|
+
initCommand: string;
|
|
89
|
+
}): Promise<{
|
|
90
|
+
outcome: boolean;
|
|
91
|
+
error?: Error;
|
|
92
|
+
}>;
|
|
93
|
+
cloneRepository({ repo, repoPath, backupResult, }: {
|
|
94
|
+
repo: WorkspaceFolderWithRepoInfo;
|
|
95
|
+
repoPath: string;
|
|
96
|
+
backupResult: GitBackupDownloadResult | undefined;
|
|
97
|
+
}): Promise<boolean>;
|
|
165
98
|
}
|
|
166
99
|
export {};
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
import { type FusionConfig } from "$/ai-utils";
|
|
2
2
|
import type { LaunchArgs } from "../launch";
|
|
3
3
|
import type { DevToolsSys } from "../../types";
|
|
4
|
-
export declare function getFusionConfig(
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
): Promise<FusionConfig>;
|
|
8
|
-
export declare function saveFusionConfig(
|
|
9
|
-
sys: DevToolsSys,
|
|
10
|
-
fusionConfig: FusionConfig,
|
|
11
|
-
args: LaunchArgs,
|
|
12
|
-
): Promise<void>;
|
|
13
|
-
export declare function trackConfigData(
|
|
14
|
-
sys: DevToolsSys,
|
|
15
|
-
fusionConfig: FusionConfig,
|
|
16
|
-
): void;
|
|
4
|
+
export declare function getFusionConfig(sys: DevToolsSys, args: LaunchArgs): Promise<FusionConfig>;
|
|
5
|
+
export declare function saveFusionConfig(sys: DevToolsSys, fusionConfig: FusionConfig, args: LaunchArgs): Promise<void>;
|
|
6
|
+
export declare function trackConfigData(sys: DevToolsSys, fusionConfig: FusionConfig): void;
|
|
@@ -1,147 +1,115 @@
|
|
|
1
1
|
import type { DevToolsSys } from "@builder.io/dev-tools/core";
|
|
2
2
|
import type { ProxyMiddleware } from "../../types/proxy-middleware";
|
|
3
|
-
import type {
|
|
4
|
-
DevCommandResult,
|
|
5
|
-
DevCommandState,
|
|
6
|
-
EnvironmentVariable,
|
|
7
|
-
HttpServerData,
|
|
8
|
-
HttpServerState,
|
|
9
|
-
ProxyServerSelection,
|
|
10
|
-
SetupCommandResult,
|
|
11
|
-
SetupDependency,
|
|
12
|
-
ValidateCommandResult,
|
|
13
|
-
ValidateCommandState,
|
|
14
|
-
} from "$/ai-utils";
|
|
3
|
+
import type { DevCommandResult, DevCommandState, EnvironmentVariable, HttpServerData, HttpServerState, ProxyServerSelection, SetupCommandResult, SetupDependency, ValidateCommandResult, ValidateCommandState } from "$/ai-utils";
|
|
15
4
|
import EventEmitter from "events";
|
|
16
5
|
import type { FusionConfig, SetupCommandState } from "$/ai-utils";
|
|
17
|
-
export type DevServerState = Exclude<
|
|
18
|
-
SetupCommandState | DevCommandState,
|
|
19
|
-
"installed" | "starting"
|
|
20
|
-
>;
|
|
6
|
+
export type DevServerState = Exclude<SetupCommandState | DevCommandState, "installed" | "starting">;
|
|
21
7
|
export interface DevCommandProcess {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
};
|
|
39
|
-
removeAllListeners: () => void;
|
|
8
|
+
type: "devCommandProcess";
|
|
9
|
+
getPid: () => number | undefined;
|
|
10
|
+
getExitCode: () => number | null;
|
|
11
|
+
kill: (signal?: NodeJS.Signals) => boolean;
|
|
12
|
+
onSpawn: (listener: () => void) => void;
|
|
13
|
+
onError: (listener: (err: Error) => void) => void;
|
|
14
|
+
onClose: (listener: (code: number | null, signal: NodeJS.Signals | null) => void) => void;
|
|
15
|
+
resize?: (cols: number | undefined, rows: number | undefined) => void;
|
|
16
|
+
write?: (data: string) => void;
|
|
17
|
+
stdout: {
|
|
18
|
+
on: (event: "data", callback: (data: Buffer) => void) => void;
|
|
19
|
+
};
|
|
20
|
+
stderr: {
|
|
21
|
+
on: (event: "data", callback: (data: Buffer) => void) => void;
|
|
22
|
+
};
|
|
23
|
+
removeAllListeners: () => void;
|
|
40
24
|
}
|
|
41
25
|
export interface DevCommandProcessOptions {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
26
|
+
command: string;
|
|
27
|
+
shell: string;
|
|
28
|
+
cwd: string | undefined;
|
|
29
|
+
env: Record<string, string | undefined>;
|
|
46
30
|
}
|
|
47
31
|
export interface DevServerOrchestrator {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
validateStdout: [string];
|
|
124
|
-
validateStderr: [string];
|
|
125
|
-
setupState: [SetupCommandState];
|
|
126
|
-
devState: [DevCommandState];
|
|
127
|
-
httpServerData: [HttpServerData];
|
|
128
|
-
httpServerState: [HttpServerState];
|
|
129
|
-
validateState: [ValidateCommandState];
|
|
130
|
-
urlDetected: [string];
|
|
131
|
-
}>;
|
|
132
|
-
close: () => Promise<void>;
|
|
32
|
+
devCommand: string;
|
|
33
|
+
setupCommand: string | undefined;
|
|
34
|
+
setupState: SetupCommandState;
|
|
35
|
+
lastServerBody: string | undefined;
|
|
36
|
+
lastServerStatus: number | undefined;
|
|
37
|
+
devState: DevCommandState;
|
|
38
|
+
httpServerState: HttpServerData;
|
|
39
|
+
state: DevServerState;
|
|
40
|
+
proxyTarget: string | undefined;
|
|
41
|
+
serverUrl: URL | undefined;
|
|
42
|
+
proxyPort: number | undefined;
|
|
43
|
+
proxyServerSelection: ProxyServerSelection | undefined;
|
|
44
|
+
environmentVariables: EnvironmentVariable[];
|
|
45
|
+
envVars: Record<string, string>;
|
|
46
|
+
proxyMiddleware: ProxyMiddleware | undefined;
|
|
47
|
+
pid: number | undefined;
|
|
48
|
+
autoDetectedUrl: boolean;
|
|
49
|
+
autoDetectDevServer: boolean;
|
|
50
|
+
devCommandProcess: DevCommandProcess | undefined;
|
|
51
|
+
autoDetectDevServerPatterns: string[] | undefined;
|
|
52
|
+
abortSetupCommand: () => Promise<SetupCommandResult | undefined>;
|
|
53
|
+
abortValidateCommand: () => Promise<ValidateCommandResult | undefined>;
|
|
54
|
+
clearEnvVariables: () => void;
|
|
55
|
+
setEnvVariable: (key: string, value: string | undefined) => boolean;
|
|
56
|
+
ensureDevCommand: (abortSignal?: AbortSignal) => Promise<boolean>;
|
|
57
|
+
ensureSetupCommand: (abortSignal?: AbortSignal) => Promise<boolean>;
|
|
58
|
+
setupCommandPromise: Promise<SetupCommandResult> | undefined;
|
|
59
|
+
runSetupCommand: (signal?: AbortSignal) => Promise<SetupCommandResult>;
|
|
60
|
+
setSetupCommand: (opts: {
|
|
61
|
+
setupDependencies?: SetupDependency[] | null;
|
|
62
|
+
setupCommand?: string | null;
|
|
63
|
+
forceRestart?: boolean;
|
|
64
|
+
signal?: AbortSignal;
|
|
65
|
+
}) => Promise<SetupCommandResult | null>;
|
|
66
|
+
setDevCommand: (newCommand: string | undefined, forceRestart?: boolean, signal?: AbortSignal) => Promise<DevCommandResult>;
|
|
67
|
+
setProxyServer: (newProxyServer: string) => Promise<{
|
|
68
|
+
updatedProxyServer: boolean;
|
|
69
|
+
updatedHosts: boolean;
|
|
70
|
+
}>;
|
|
71
|
+
hasValidateCommand: boolean;
|
|
72
|
+
validateCommandState: ValidateCommandState;
|
|
73
|
+
runValidateCommand: (command?: string | null, signal?: AbortSignal) => Promise<ValidateCommandResult>;
|
|
74
|
+
setPort: (newPort: number) => Promise<boolean>;
|
|
75
|
+
setAutoDetectSettings: (enabled: boolean, patterns?: string[]) => Promise<boolean>;
|
|
76
|
+
addCheckpoint: () => void;
|
|
77
|
+
getOpenPorts: () => Promise<number[]>;
|
|
78
|
+
getCheckpoints: (n: number, mode: "all" | "out" | "err") => string;
|
|
79
|
+
getAllStdout: () => string;
|
|
80
|
+
getAllStderr: () => string;
|
|
81
|
+
getOutput: () => string;
|
|
82
|
+
getSetupWrite: () => string;
|
|
83
|
+
getDevWrite: () => string;
|
|
84
|
+
getSetupOutput: () => string;
|
|
85
|
+
getValidateOutput: () => string;
|
|
86
|
+
getMiseActivationCommand: (shell: string) => Promise<string | null>;
|
|
87
|
+
waitUntilIdle: (initialWaitMs?: number, idleTimeMs?: number) => Promise<void>;
|
|
88
|
+
waitUntilServer: (signal?: AbortSignal) => Promise<void>;
|
|
89
|
+
onClose: (callback: (code: number | null) => void) => void;
|
|
90
|
+
restart: (abortSignal?: AbortSignal) => Promise<DevCommandResult>;
|
|
91
|
+
emitter: EventEmitter<{
|
|
92
|
+
close: [number | null];
|
|
93
|
+
stdout: [string];
|
|
94
|
+
stderr: [string];
|
|
95
|
+
installStdout: [string];
|
|
96
|
+
installStderr: [string];
|
|
97
|
+
validateStdout: [string];
|
|
98
|
+
validateStderr: [string];
|
|
99
|
+
setupState: [SetupCommandState];
|
|
100
|
+
devState: [DevCommandState];
|
|
101
|
+
httpServerData: [HttpServerData];
|
|
102
|
+
httpServerState: [HttpServerState];
|
|
103
|
+
validateState: [ValidateCommandState];
|
|
104
|
+
urlDetected: [string];
|
|
105
|
+
}>;
|
|
106
|
+
close: () => Promise<void>;
|
|
133
107
|
}
|
|
134
108
|
/**
|
|
135
109
|
* Import PTY library with runtime detection.
|
|
136
110
|
* When running inside a pkg bundle, patches module resolution to find bundled native addons.
|
|
137
111
|
*/
|
|
138
|
-
export declare const importPty: (
|
|
139
|
-
sys: DevToolsSys,
|
|
140
|
-
) => typeof import("@lydell/node-pty") | undefined;
|
|
112
|
+
export declare const importPty: (sys: DevToolsSys) => typeof import("@lydell/node-pty") | undefined;
|
|
141
113
|
export declare function safeParseUrl(serverUrl: any): URL | undefined;
|
|
142
|
-
export declare function devServerOrchestrator(
|
|
143
|
-
sys: DevToolsSys,
|
|
144
|
-
fusionConfig: FusionConfig,
|
|
145
|
-
initialSetupState: "installed" | "not-installed" | "install-failed",
|
|
146
|
-
): Promise<DevServerOrchestrator>;
|
|
114
|
+
export declare function devServerOrchestrator(sys: DevToolsSys, fusionConfig: FusionConfig, initialSetupState: "installed" | "not-installed" | "install-failed"): Promise<DevServerOrchestrator>;
|
|
147
115
|
export declare const checkPortsListenedByPid: (pid: number) => number[];
|
|
@@ -1,16 +1,9 @@
|
|
|
1
1
|
import { type InitConfig } from "./InitStateMachine";
|
|
2
2
|
import type { InitState } from "$/ai-utils";
|
|
3
|
-
export declare const attemptDryRunBackupGit: (
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
| {
|
|
12
|
-
success: boolean;
|
|
13
|
-
error?: undefined;
|
|
14
|
-
}
|
|
15
|
-
| null
|
|
16
|
-
>;
|
|
3
|
+
export declare const attemptDryRunBackupGit: (initConfig: InitConfig, realInitState: InitState) => Promise<{
|
|
4
|
+
success: boolean;
|
|
5
|
+
error: string;
|
|
6
|
+
} | {
|
|
7
|
+
success: boolean;
|
|
8
|
+
error?: undefined;
|
|
9
|
+
} | null>;
|
|
@@ -1,8 +1,3 @@
|
|
|
1
1
|
export declare const isGitHubAuthError: (errorMessage: string) => boolean;
|
|
2
|
-
export declare const getGitHubAuthErrorMessage: (
|
|
3
|
-
|
|
4
|
-
hasGhToken: boolean,
|
|
5
|
-
) => string;
|
|
6
|
-
export declare const getUserMessageForNpmInstallErrors: (
|
|
7
|
-
errorOutput: string,
|
|
8
|
-
) => string;
|
|
2
|
+
export declare const getGitHubAuthErrorMessage: (repoName: string, hasGhToken: boolean) => string;
|
|
3
|
+
export declare const getUserMessageForNpmInstallErrors: (errorOutput: string) => string;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import type { FusionMetrics } from "$/ai-utils";
|
|
2
2
|
import type { Credentials } from "../credentials";
|
|
3
3
|
import type { DevToolsSys } from "../../types";
|
|
4
|
-
export declare function pushMetrics(
|
|
5
|
-
sys: DevToolsSys,
|
|
6
|
-
credentials: Credentials,
|
|
7
|
-
body: FusionMetrics,
|
|
8
|
-
): Promise<void>;
|
|
4
|
+
export declare function pushMetrics(sys: DevToolsSys, credentials: Credentials, body: FusionMetrics): Promise<void>;
|
|
@@ -3,26 +3,17 @@ import type { DevToolsSys } from "../../types";
|
|
|
3
3
|
/**
|
|
4
4
|
* Scrub sensitive data from fusion config before sending to webapp or logging
|
|
5
5
|
*/
|
|
6
|
-
export declare function scrubFusionConfig(
|
|
7
|
-
config: FusionConfig | undefined,
|
|
8
|
-
): FusionConfig | undefined;
|
|
6
|
+
export declare function scrubFusionConfig(config: FusionConfig | undefined): FusionConfig | undefined;
|
|
9
7
|
export declare const isInRemoteContainer: () => boolean;
|
|
10
8
|
export declare const getVolumePath: (fusionConfig: FusionConfig) => string;
|
|
11
|
-
export declare function computeAIBranchName(
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
sys,
|
|
17
|
-
gitWorkingDirectory,
|
|
18
|
-
strict,
|
|
19
|
-
}: {
|
|
20
|
-
sys: DevToolsSys;
|
|
21
|
-
gitWorkingDirectory: string;
|
|
22
|
-
strict: boolean;
|
|
9
|
+
export declare function computeAIBranchName(featureBranch: string, sessionId: string): string;
|
|
10
|
+
export declare const getAndParseGitRepoInfo: ({ sys, gitWorkingDirectory, strict, }: {
|
|
11
|
+
sys: DevToolsSys;
|
|
12
|
+
gitWorkingDirectory: string;
|
|
13
|
+
strict: boolean;
|
|
23
14
|
}) => Promise<{
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
15
|
+
currentBranch: string;
|
|
16
|
+
featureBranch: string;
|
|
17
|
+
sessionId: string | undefined;
|
|
18
|
+
currentCommitHash: string;
|
|
28
19
|
}>;
|
|
@@ -2,13 +2,8 @@ import type { DevToolsSys } from "@builder.io/dev-tools/core";
|
|
|
2
2
|
import type { Credentials } from "../credentials";
|
|
3
3
|
import type { FusionConfig, LaunchServerStatus } from "$/ai-utils";
|
|
4
4
|
interface FusionStatusMonitor {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
start: () => void;
|
|
6
|
+
stop: () => void;
|
|
7
7
|
}
|
|
8
|
-
export declare function createFusionStatusMonitor(
|
|
9
|
-
sys: DevToolsSys,
|
|
10
|
-
credentials: Credentials,
|
|
11
|
-
fusionConfig: FusionConfig,
|
|
12
|
-
sharedState: LaunchServerStatus,
|
|
13
|
-
): FusionStatusMonitor | null;
|
|
8
|
+
export declare function createFusionStatusMonitor(sys: DevToolsSys, credentials: Credentials, fusionConfig: FusionConfig, sharedState: LaunchServerStatus): FusionStatusMonitor | null;
|
|
14
9
|
export {};
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
import type { DevToolsSys } from "../../types";
|
|
2
2
|
import type { ProxyMiddleware } from "../../types/proxy-middleware";
|
|
3
3
|
import type { IncomingMessage } from "http";
|
|
4
|
-
export declare const createPassThroughProxy: () => import("http-proxy-3").ProxyServer<
|
|
5
|
-
|
|
6
|
-
typeof import("http").ServerResponse,
|
|
7
|
-
Error
|
|
8
|
-
>;
|
|
9
|
-
export declare const createProxyMiddleware: (
|
|
10
|
-
serverUrl: URL,
|
|
11
|
-
sys: DevToolsSys,
|
|
12
|
-
) => ProxyMiddleware | undefined;
|
|
4
|
+
export declare const createPassThroughProxy: () => import("http-proxy-3").ProxyServer<typeof IncomingMessage, typeof import("http").ServerResponse, Error>;
|
|
5
|
+
export declare const createProxyMiddleware: (serverUrl: URL, sys: DevToolsSys) => ProxyMiddleware | undefined;
|
|
13
6
|
/**
|
|
14
7
|
* Detects if HTML was server-side rendered by checking for framework-specific markers.
|
|
15
8
|
* Returns whether SSR was used and whether the header/head was server-rendered.
|
|
16
9
|
*/
|
|
17
10
|
export declare const detectSSR: (body: string) => {
|
|
18
|
-
|
|
19
|
-
|
|
11
|
+
hasSSR: boolean;
|
|
12
|
+
hasHeaderSSR: boolean;
|
|
20
13
|
};
|
|
21
14
|
export declare const permissiveHTTPS: any;
|