@trebired/code-server-kit 0.3.0 → 1.1.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.
Files changed (52) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +232 -188
  3. package/dist/diagnostics.d.ts +6 -0
  4. package/dist/diagnostics.d.ts.map +1 -0
  5. package/dist/diagnostics.js +150 -0
  6. package/dist/diagnostics.js.map +1 -0
  7. package/dist/errors.d.ts +5 -2
  8. package/dist/errors.d.ts.map +1 -1
  9. package/dist/errors.js +7 -1
  10. package/dist/errors.js.map +1 -1
  11. package/dist/index.d.ts +9 -7
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +8 -6
  14. package/dist/index.js.map +1 -1
  15. package/dist/package-resolution.d.ts +3 -0
  16. package/dist/package-resolution.d.ts.map +1 -0
  17. package/dist/package-resolution.js +44 -0
  18. package/dist/package-resolution.js.map +1 -0
  19. package/dist/plan.d.ts +3 -2
  20. package/dist/plan.d.ts.map +1 -1
  21. package/dist/plan.js +95 -86
  22. package/dist/plan.js.map +1 -1
  23. package/dist/preparation.d.ts +5 -0
  24. package/dist/preparation.d.ts.map +1 -0
  25. package/dist/preparation.js +175 -0
  26. package/dist/preparation.js.map +1 -0
  27. package/dist/profile.d.ts +5 -2
  28. package/dist/profile.d.ts.map +1 -1
  29. package/dist/profile.js +122 -1
  30. package/dist/profile.js.map +1 -1
  31. package/dist/proxy.d.ts +4 -2
  32. package/dist/proxy.d.ts.map +1 -1
  33. package/dist/proxy.js +62 -1
  34. package/dist/proxy.js.map +1 -1
  35. package/dist/resolve.d.ts.map +1 -1
  36. package/dist/resolve.js +44 -29
  37. package/dist/resolve.js.map +1 -1
  38. package/dist/session.d.ts +3 -3
  39. package/dist/session.d.ts.map +1 -1
  40. package/dist/session.js +427 -533
  41. package/dist/session.js.map +1 -1
  42. package/dist/spec.d.ts +3 -3
  43. package/dist/spec.d.ts.map +1 -1
  44. package/dist/spec.js +2 -33
  45. package/dist/spec.js.map +1 -1
  46. package/dist/systemd.d.ts +5 -2
  47. package/dist/systemd.d.ts.map +1 -1
  48. package/dist/systemd.js +57 -6
  49. package/dist/systemd.js.map +1 -1
  50. package/dist/types.d.ts +218 -68
  51. package/dist/types.d.ts.map +1 -1
  52. package/package.json +2 -2
package/dist/plan.js CHANGED
@@ -2,21 +2,30 @@ import fs from "node:fs";
2
2
  import net from "node:net";
3
3
  import path from "node:path";
4
4
  import { CodeServerBinaryNotFoundError, CodeServerInvalidConfigurationError, CodeServerLaunchPlanningError, CodeServerPortAllocationError, } from "./errors.js";
5
+ import { ensureCodeServerPrepared } from "./preparation.js";
5
6
  import { resolveCodeServerInstallation } from "./resolve.js";
6
7
  const DEFAULT_BIND_HOST = "127.0.0.1";
7
8
  const DIRECT_LAUNCH_ACCESS = fs.constants.X_OK;
8
- async function createCodeServerLaunchPlan(options) {
9
+ async function createCodeServerIntegrationPlan(options) {
9
10
  try {
10
- const installation = options.installation ?? resolveCodeServerInstallation({
11
+ if (options.preparation?.mode !== "skip") {
12
+ await ensureCodeServerPrepared({
13
+ resolveFrom: options.resolveFrom,
14
+ strictWatchdog: options.preparation?.strictWatchdog,
15
+ });
16
+ }
17
+ const installation = options.installation ?? await resolveCodeServerInstallation({
11
18
  resolveFrom: options.resolveFrom,
19
+ strictWatchdog: options.preparation?.strictWatchdog,
12
20
  });
13
21
  const launchMode = normalizeLaunchMode(options.launchMode, installation);
14
22
  const { extensionsDir, userDataDir } = resolveLaunchDirectories(options);
15
23
  const binding = await resolveLaunchBinding(options);
16
24
  const workspacePath = options.workspacePath ? path.resolve(options.workspacePath) : null;
17
25
  const trustedOrigins = normalizeTrustedOrigins(options.trustedOrigins);
18
- const cwd = path.resolve(options.cwd ?? installation.packageRoot);
26
+ const cwd = path.resolve(options.cwd ?? installation.defaultCwd);
19
27
  const env = {
28
+ ...installation.defaultEnv,
20
29
  ...(options.env ?? {}),
21
30
  };
22
31
  const cliArgs = buildCodeServerArgs({
@@ -29,75 +38,83 @@ async function createCodeServerLaunchPlan(options) {
29
38
  if (launchMode === "direct") {
30
39
  assertDirectLaunchAvailable(installation.entryPoint);
31
40
  }
32
- const supportBindings = buildSupportBindings(installation);
41
+ const command = launchMode === "node"
42
+ ? normalizeNodeCommand(options.nodeCommand)
43
+ : installation.entryPoint;
44
+ const args = launchMode === "node"
45
+ ? [installation.entryPoint, ...cliArgs]
46
+ : cliArgs;
33
47
  const recommendedReadablePaths = uniquePaths([
34
- installation.packageRoot,
35
- installation.entryPoint,
36
- installation.supportRoot,
48
+ ...installation.recommendedReadablePaths,
37
49
  workspacePath,
38
50
  ]);
39
51
  const recommendedWritablePaths = uniquePaths([
40
52
  userDataDir,
41
53
  extensionsDir,
42
54
  ]);
43
- return launchMode === "node"
44
- ? {
45
- args: [installation.entryPoint, ...cliArgs],
46
- bindAddr: binding.bindAddr,
47
- codeServerPackageRoot: installation.packageRoot,
48
- command: normalizeNodeCommand(options.nodeCommand),
49
- cwd,
50
- entryKind: installation.entryKind,
51
- entryPoint: installation.entryPoint,
52
- env,
53
- extensionsDir,
54
- host: binding.host,
55
- installation,
56
- launchMode,
57
- port: binding.port,
58
- recommendedReadablePaths,
59
- recommendedWritablePaths,
60
- supportBindings,
61
- supportRoot: installation.supportRoot,
62
- trustedOrigins,
63
- userDataDir,
64
- workspacePath,
65
- }
66
- : {
67
- args: cliArgs,
68
- bindAddr: binding.bindAddr,
69
- codeServerPackageRoot: installation.packageRoot,
70
- command: installation.entryPoint,
71
- cwd,
72
- entryKind: installation.entryKind,
73
- entryPoint: installation.entryPoint,
74
- env,
75
- extensionsDir,
76
- host: binding.host,
77
- installation,
78
- launchMode,
79
- port: binding.port,
80
- recommendedReadablePaths,
81
- recommendedWritablePaths,
82
- supportBindings,
83
- supportRoot: installation.supportRoot,
84
- trustedOrigins,
85
- userDataDir,
86
- workspacePath,
87
- };
55
+ const bindings = buildRecommendedBindings({
56
+ extensionsDir,
57
+ installation,
58
+ recommendedWritablePaths,
59
+ userDataDir,
60
+ });
61
+ const translatedPaths = uniquePaths([
62
+ installation.packageRoot,
63
+ installation.supportRoot,
64
+ workspacePath,
65
+ userDataDir,
66
+ extensionsDir,
67
+ ]).map((value) => ({
68
+ hostPath: value,
69
+ visiblePath: value,
70
+ }));
71
+ return {
72
+ args,
73
+ bindAddr: binding.bindAddr,
74
+ bindings,
75
+ codeServerPackageRoot: installation.packageRoot,
76
+ command,
77
+ cwd,
78
+ defaultCwd: installation.defaultCwd,
79
+ defaultEnv: {
80
+ ...installation.defaultEnv,
81
+ },
82
+ entryKind: installation.entryKind,
83
+ entryPoint: installation.entryPoint,
84
+ env,
85
+ extensionsDir,
86
+ host: binding.host,
87
+ hostVisiblePaths: [...recommendedReadablePaths, ...recommendedWritablePaths],
88
+ installation,
89
+ launchMode,
90
+ port: binding.port,
91
+ preparationStatus: installation.preparationStatus,
92
+ recommendedReadablePaths,
93
+ recommendedWritablePaths,
94
+ sandboxVisiblePaths: translatedPaths.map((value) => value.visiblePath),
95
+ supportBindings: [...installation.supportBindings],
96
+ supportRoot: installation.supportRoot,
97
+ translatedPaths,
98
+ trustedOrigins,
99
+ userDataDir,
100
+ watchdogMode: installation.preparationStatus.watchdogMode,
101
+ workspacePath,
102
+ };
88
103
  }
89
104
  catch (error) {
90
- if (error instanceof CodeServerLaunchPlanningError || error instanceof CodeServerInvalidConfigurationError) {
105
+ if (error instanceof CodeServerLaunchPlanningError ||
106
+ error instanceof CodeServerInvalidConfigurationError ||
107
+ error instanceof Error && "code" in error) {
91
108
  throw error;
92
109
  }
93
- if (error instanceof Error && "code" in error) {
94
- throw error;
95
- }
96
- throw new CodeServerLaunchPlanningError("Could not create a code-server launch plan.", {
110
+ throw new CodeServerLaunchPlanningError("Could not create a code-server integration plan.", {
97
111
  cause: error instanceof Error ? error.message : String(error),
98
112
  });
99
113
  }
100
114
  }
115
+ async function createCodeServerLaunchPlan(options) {
116
+ return await createCodeServerIntegrationPlan(options);
117
+ }
101
118
  async function createCodeServerLaunch(options) {
102
119
  return await createCodeServerLaunchPlan(options);
103
120
  }
@@ -125,36 +142,38 @@ function buildCodeServerArgs(options) {
125
142
  return args;
126
143
  }
127
144
  function buildCodeServerLaunchSpec(plan) {
128
- const bindings = uniqueBindings([
145
+ return {
146
+ args: [...plan.args],
147
+ bindings: [...plan.bindings],
148
+ command: plan.command,
149
+ cwd: plan.cwd,
150
+ env: {
151
+ ...plan.env,
152
+ },
153
+ readablePaths: [...plan.recommendedReadablePaths],
154
+ writablePaths: [...plan.recommendedWritablePaths],
155
+ };
156
+ }
157
+ function buildRecommendedBindings(options) {
158
+ return uniqueBindings([
129
159
  {
130
160
  access: "read",
131
- hostPath: plan.installation.packageRoot,
132
- mountPath: plan.installation.packageRoot,
161
+ hostPath: options.installation.packageRoot,
162
+ mountPath: options.installation.packageRoot,
133
163
  reason: "code-server package root",
134
164
  },
135
- ...plan.supportBindings,
136
- ...plan.recommendedWritablePaths.map((value) => ({
165
+ ...options.installation.supportBindings,
166
+ ...options.recommendedWritablePaths.map((value) => ({
137
167
  access: "write",
138
168
  hostPath: value,
139
169
  mountPath: value,
140
- reason: value === plan.userDataDir
170
+ reason: value === options.userDataDir
141
171
  ? "code-server user data"
142
- : value === plan.extensionsDir
172
+ : value === options.extensionsDir
143
173
  ? "code-server extensions"
144
174
  : "code-server writable path",
145
175
  })),
146
176
  ]);
147
- return {
148
- args: [...plan.args],
149
- bindings,
150
- command: plan.command,
151
- cwd: plan.cwd,
152
- env: {
153
- ...plan.env,
154
- },
155
- readablePaths: [...plan.recommendedReadablePaths],
156
- writablePaths: [...plan.recommendedWritablePaths],
157
- };
158
177
  }
159
178
  function normalizeTrustedOrigins(value) {
160
179
  const normalized = [];
@@ -317,16 +336,6 @@ function assertDirectLaunchAvailable(entryPoint) {
317
336
  });
318
337
  }
319
338
  }
320
- function buildSupportBindings(installation) {
321
- if (!installation.supportRoot)
322
- return [];
323
- return [{
324
- access: "read",
325
- hostPath: installation.supportRoot,
326
- mountPath: installation.supportRoot,
327
- reason: "code-server support root",
328
- }];
329
- }
330
339
  function uniquePaths(values) {
331
340
  const normalized = [];
332
341
  for (const value of values) {
@@ -351,5 +360,5 @@ function uniqueBindings(values) {
351
360
  }
352
361
  return bindings;
353
362
  }
354
- export { allocatePort, buildCodeServerArgs, buildCodeServerLaunchSpec, createCodeServerLaunch, createCodeServerLaunchPlan, normalizeTrustedOrigins, };
363
+ export { allocatePort, buildCodeServerArgs, buildCodeServerLaunchSpec, createCodeServerIntegrationPlan, createCodeServerLaunch, createCodeServerLaunchPlan, normalizeTrustedOrigins, };
355
364
  //# sourceMappingURL=plan.js.map
package/dist/plan.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"plan.js","sourceRoot":"","sources":["../src/plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../src/plan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { CodeServerPreparationOptions, CodeServerPreparationResult, CodeServerPreparationStatus } from "./types.js";
2
+ declare function getCodeServerPreparationStatus(options?: CodeServerPreparationOptions): CodeServerPreparationStatus;
3
+ declare function ensureCodeServerPrepared(options?: CodeServerPreparationOptions): Promise<CodeServerPreparationResult>;
4
+ export { ensureCodeServerPrepared, getCodeServerPreparationStatus, };
5
+ //# sourceMappingURL=preparation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preparation.d.ts","sourceRoot":"","sources":["../src/preparation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEV,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAG5B,MAAM,YAAY,CAAC;AAIpB,iBAAS,8BAA8B,CAAC,OAAO,GAAE,4BAAiC,GAAG,2BAA2B,CAW/G;AAED,iBAAe,wBAAwB,CAAC,OAAO,GAAE,4BAAiC,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAgDxH;AA+HD,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,CAAC"}
@@ -0,0 +1,175 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { execFile } from "node:child_process";
4
+ import { CodeServerPreparationError } from "./errors.js";
5
+ import { resolveLogger } from "./logging.js";
6
+ import { resolveCodeServerPackageJsonPath } from "./package-resolution.js";
7
+ const preparationCache = new Map();
8
+ function getCodeServerPreparationStatus(options = {}) {
9
+ const packageJsonPath = resolveCodeServerPackageJsonPath(options.resolveFrom);
10
+ const packageRoot = path.dirname(packageJsonPath);
11
+ const cached = preparationCache.get(packageRoot);
12
+ if (cached) {
13
+ return cached;
14
+ }
15
+ const status = buildPreparationStatus(packageRoot, options.strictWatchdog ?? false);
16
+ preparationCache.set(packageRoot, status);
17
+ return status;
18
+ }
19
+ async function ensureCodeServerPrepared(options = {}) {
20
+ const log = resolveLogger(options.logger, options.loggerAdapter);
21
+ const packageJsonPath = resolveCodeServerPackageJsonPath(options.resolveFrom);
22
+ const packageRoot = path.dirname(packageJsonPath);
23
+ let status = buildPreparationStatus(packageRoot, options.strictWatchdog ?? false);
24
+ preparationCache.set(packageRoot, status);
25
+ if (status.state === "prepared") {
26
+ return {
27
+ changed: false,
28
+ command: null,
29
+ output: null,
30
+ status,
31
+ };
32
+ }
33
+ const scriptPath = status.postinstallScriptPath;
34
+ if (!scriptPath) {
35
+ throw new CodeServerPreparationError("Could not prepare code-server because no package bootstrap script was found.", {
36
+ issues: status.issues,
37
+ packageRoot,
38
+ });
39
+ }
40
+ log.info("preparation", "ensuring code-server package is prepared", {
41
+ packageRoot,
42
+ scriptPath,
43
+ });
44
+ const output = await runBootstrapScript(packageRoot, scriptPath);
45
+ status = buildPreparationStatus(packageRoot, options.strictWatchdog ?? false);
46
+ preparationCache.set(packageRoot, status);
47
+ if (status.state !== "prepared") {
48
+ throw new CodeServerPreparationError("The code-server package bootstrap step completed but the package still looks incomplete.", {
49
+ issues: status.issues,
50
+ output,
51
+ packageRoot,
52
+ scriptPath,
53
+ });
54
+ }
55
+ return {
56
+ changed: true,
57
+ command: `sh ${scriptPath}`,
58
+ output,
59
+ status,
60
+ };
61
+ }
62
+ function buildPreparationStatus(packageRoot, strictWatchdog) {
63
+ const supportRoot = path.join(packageRoot, "lib", "vscode");
64
+ const postinstallScriptPath = isFile(path.join(packageRoot, "postinstall.sh"))
65
+ ? path.join(packageRoot, "postinstall.sh")
66
+ : null;
67
+ const issues = [];
68
+ if (!isDirectory(supportRoot)) {
69
+ issues.push(issue("missing_support_root", "The embedded VS Code support root is missing.", {
70
+ supportRoot,
71
+ }));
72
+ }
73
+ const requiredPaths = [
74
+ path.join(packageRoot, "package.json"),
75
+ path.join(packageRoot, "out", "node", "entry.js"),
76
+ path.join(supportRoot, "package.json"),
77
+ path.join(supportRoot, "extensions", "package.json"),
78
+ path.join(supportRoot, "out", "server-main.js"),
79
+ ];
80
+ for (const requiredPath of requiredPaths) {
81
+ if (!isFile(requiredPath)) {
82
+ issues.push(issue("missing_runtime_artifact", "A required code-server runtime artifact is missing.", {
83
+ path: requiredPath,
84
+ }));
85
+ }
86
+ }
87
+ const watchdogIssue = resolveWatchdogIssue(supportRoot, strictWatchdog);
88
+ if (watchdogIssue) {
89
+ issues.push(watchdogIssue);
90
+ }
91
+ const state = issues.some((value) => value.code !== "missing_native_watchdog")
92
+ ? postinstallScriptPath
93
+ ? "repairable"
94
+ : "missing"
95
+ : "prepared";
96
+ const status = {
97
+ checkedAt: new Date().toISOString(),
98
+ issues,
99
+ packageRoot,
100
+ postinstallScriptPath,
101
+ state,
102
+ supportRoot: isDirectory(supportRoot) ? supportRoot : null,
103
+ watchdogIssue,
104
+ watchdogMode: watchdogIssue ? "disabled_fallback" : "native",
105
+ };
106
+ return status;
107
+ }
108
+ function resolveWatchdogIssue(supportRoot, strictWatchdog) {
109
+ const watchdogRoot = path.join(supportRoot, "node_modules", "@vscode", "native-watchdog");
110
+ if (isDirectory(watchdogRoot) || isFile(path.join(watchdogRoot, "package.json"))) {
111
+ return null;
112
+ }
113
+ return {
114
+ code: "missing_native_watchdog",
115
+ dependency: "@vscode/native-watchdog",
116
+ details: {
117
+ path: watchdogRoot,
118
+ strictWatchdog,
119
+ },
120
+ fatal: strictWatchdog,
121
+ message: strictWatchdog
122
+ ? "The optional native watchdog dependency is missing and strict watchdog mode is enabled."
123
+ : "The optional native watchdog dependency is missing. The package will use a disabled watchdog fallback.",
124
+ };
125
+ }
126
+ function issue(code, message, details) {
127
+ return {
128
+ code,
129
+ details,
130
+ message,
131
+ };
132
+ }
133
+ async function runBootstrapScript(packageRoot, scriptPath) {
134
+ return await new Promise((resolve, reject) => {
135
+ execFile("sh", [scriptPath], {
136
+ cwd: packageRoot,
137
+ encoding: "utf8",
138
+ env: {
139
+ ...process.env,
140
+ npm_config_user_agent: process.env.npm_config_user_agent ?? "npm/10 node/v22 linux x64",
141
+ npm_config_unsafe_perm: process.env.npm_config_unsafe_perm ?? "true",
142
+ },
143
+ }, (error, stdout, stderr) => {
144
+ const output = [stdout, stderr].filter(Boolean).join("\n").trim();
145
+ if (error) {
146
+ reject(new CodeServerPreparationError("Could not run the code-server package bootstrap script.", {
147
+ cause: error.message,
148
+ output,
149
+ packageRoot,
150
+ scriptPath,
151
+ }));
152
+ return;
153
+ }
154
+ resolve(output);
155
+ });
156
+ });
157
+ }
158
+ function isDirectory(value) {
159
+ try {
160
+ return fs.statSync(value).isDirectory();
161
+ }
162
+ catch {
163
+ return false;
164
+ }
165
+ }
166
+ function isFile(value) {
167
+ try {
168
+ return fs.statSync(value).isFile();
169
+ }
170
+ catch {
171
+ return false;
172
+ }
173
+ }
174
+ export { ensureCodeServerPrepared, getCodeServerPreparationStatus, };
175
+ //# sourceMappingURL=preparation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preparation.js","sourceRoot":"","sources":["../src/preparation.ts"],"names":[],"mappings":"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"}
package/dist/profile.d.ts CHANGED
@@ -1,8 +1,11 @@
1
- import type { CodeServerProfileItem, CodeServerProfilePathMap, CodeServerProfileSyncPlan, CodeServerProfileSyncResult, CreateCodeServerProfileSyncPlanOptions, SyncCodeServerProfileOptions } from "./types.js";
1
+ import type { CodeServerProfileItem, CodeServerProfilePathMap, CodeServerProfileSnapshot, CodeServerProfileSyncPlan, CodeServerProfileSyncResult, CreateCodeServerProfileSyncPlanOptions, PersistCodeServerProfileIfChangedOptions, PersistCodeServerProfileIfChangedResult, ReadCodeServerProfileSignatureOptions, ReadCodeServerProfileSnapshotOptions, SyncCodeServerProfileOptions } from "./types.js";
2
2
  declare const DEFAULT_CODE_SERVER_PROFILE_PATHS: CodeServerProfilePathMap;
3
3
  declare const DEFAULT_CODE_SERVER_PROFILE_ITEMS: CodeServerProfileItem[];
4
4
  declare function createCodeServerProfileSyncPlan(options: CreateCodeServerProfileSyncPlanOptions): CodeServerProfileSyncPlan;
5
5
  declare function syncCodeServerProfile(options: SyncCodeServerProfileOptions): Promise<CodeServerProfileSyncResult>;
6
+ declare function readCodeServerProfileSnapshot(options: ReadCodeServerProfileSnapshotOptions): Promise<CodeServerProfileSnapshot>;
7
+ declare function readCodeServerProfileSignature(options: ReadCodeServerProfileSignatureOptions): Promise<string>;
8
+ declare function persistCodeServerProfileIfChanged(options: PersistCodeServerProfileIfChangedOptions): Promise<PersistCodeServerProfileIfChangedResult>;
6
9
  declare function resolveCodeServerProfilePathMap(overrides?: Partial<CodeServerProfilePathMap>): CodeServerProfilePathMap;
7
- export { DEFAULT_CODE_SERVER_PROFILE_ITEMS, DEFAULT_CODE_SERVER_PROFILE_PATHS, createCodeServerProfileSyncPlan, resolveCodeServerProfilePathMap, syncCodeServerProfile, };
10
+ export { DEFAULT_CODE_SERVER_PROFILE_ITEMS, DEFAULT_CODE_SERVER_PROFILE_PATHS, createCodeServerProfileSyncPlan, persistCodeServerProfileIfChanged, readCodeServerProfileSignature, readCodeServerProfileSnapshot, resolveCodeServerProfilePathMap, syncCodeServerProfile, };
8
11
  //# sourceMappingURL=profile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EAExB,yBAAyB,EACzB,2BAA2B,EAC3B,sCAAsC,EACtC,4BAA4B,EAC7B,MAAM,YAAY,CAAC;AAEpB,QAAA,MAAM,iCAAiC,EAAE,wBAMxC,CAAC;AAEF,QAAA,MAAM,iCAAiC,EAAE,qBAAqB,EAM7D,CAAC;AAEF,iBAAS,+BAA+B,CAAC,OAAO,EAAE,sCAAsC,GAAG,yBAAyB,CAYnH;AAED,iBAAe,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAwChH;AAED,iBAAS,+BAA+B,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,GAAG,wBAAwB,CAEhH;AAkDD,OAAO,EACL,iCAAiC,EACjC,iCAAiC,EACjC,+BAA+B,EAC/B,+BAA+B,EAC/B,qBAAqB,GACtB,CAAC"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EAGzB,yBAAyB,EACzB,2BAA2B,EAC3B,sCAAsC,EACtC,wCAAwC,EACxC,uCAAuC,EACvC,qCAAqC,EACrC,oCAAoC,EACpC,4BAA4B,EAC7B,MAAM,YAAY,CAAC;AAEpB,QAAA,MAAM,iCAAiC,EAAE,wBAMxC,CAAC;AAEF,QAAA,MAAM,iCAAiC,EAAE,qBAAqB,EAM7D,CAAC;AAEF,iBAAS,+BAA+B,CAAC,OAAO,EAAE,sCAAsC,GAAG,yBAAyB,CAYnH;AAED,iBAAe,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA2ChH;AAED,iBAAe,6BAA6B,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CA6B9H;AAED,iBAAe,8BAA8B,CAAC,OAAO,EAAE,qCAAqC,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7G;AAED,iBAAe,iCAAiC,CAC9C,OAAO,EAAE,wCAAwC,GAChD,OAAO,CAAC,uCAAuC,CAAC,CA8BlD;AAED,iBAAS,+BAA+B,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,GAAG,wBAAwB,CAEhH;AAoHD,OAAO,EACL,iCAAiC,EACjC,iCAAiC,EACjC,+BAA+B,EAC/B,iCAAiC,EACjC,8BAA8B,EAC9B,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,CAAC"}