@statorjs/language-server 0.1.3 → 0.1.5

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 (2) hide show
  1. package/dist/server.cjs +202 -184
  2. package/package.json +2 -2
package/dist/server.cjs CHANGED
@@ -23451,7 +23451,7 @@ var require_resolveModuleName = __commonJS({
23451
23451
  "use strict";
23452
23452
  Object.defineProperty(exports2, "__esModule", { value: true });
23453
23453
  exports2.createResolveModuleName = createResolveModuleName;
23454
- function createResolveModuleName(ts7, getFileSize, host, languagePlugins, getSourceScript) {
23454
+ function createResolveModuleName(ts8, getFileSize, host, languagePlugins, getSourceScript) {
23455
23455
  const toSourceFileInfo = /* @__PURE__ */ new Map();
23456
23456
  const moduleResolutionHost = {
23457
23457
  readFile: host.readFile.bind(host),
@@ -23518,7 +23518,7 @@ var require_resolveModuleName = __commonJS({
23518
23518
  }
23519
23519
  };
23520
23520
  return (moduleName, containingFile, compilerOptions, cache, redirectedReference, resolutionMode) => {
23521
- const result = ts7.resolveModuleName(moduleName, containingFile, compilerOptions, moduleResolutionHost, cache, redirectedReference, resolutionMode);
23521
+ const result = ts8.resolveModuleName(moduleName, containingFile, compilerOptions, moduleResolutionHost, cache, redirectedReference, resolutionMode);
23522
23522
  if (result.resolvedModule) {
23523
23523
  const sourceFileInfo = toSourceFileInfo.get(result.resolvedModule.resolvedFileName);
23524
23524
  if (sourceFileInfo) {
@@ -23571,7 +23571,7 @@ var require_utils2 = __commonJS({
23571
23571
  }
23572
23572
  return [void 0, void 0, void 0];
23573
23573
  }
23574
- function fixupImpliedNodeFormatForFile(ts7, pluginExtensions, sourceFile, packageJsonInfoCache, host, options) {
23574
+ function fixupImpliedNodeFormatForFile(ts8, pluginExtensions, sourceFile, packageJsonInfoCache, host, options) {
23575
23575
  if (sourceFile.impliedNodeFormat !== void 0 || !pluginExtensions.some((ext) => sourceFile.fileName.endsWith(ext))) {
23576
23576
  return;
23577
23577
  }
@@ -23580,7 +23580,7 @@ var require_utils2 = __commonJS({
23580
23580
  return;
23581
23581
  }
23582
23582
  const asTs = sourceFile.fileName + ".ts";
23583
- const impliedNodeFormat = ts7.getImpliedNodeFormatForFileWorker?.(asTs, packageJsonInfoCache, host, options)?.impliedNodeFormat;
23583
+ const impliedNodeFormat = ts8.getImpliedNodeFormatForFileWorker?.(asTs, packageJsonInfoCache, host, options)?.impliedNodeFormat;
23584
23584
  if (impliedNodeFormat === void 0) {
23585
23585
  return;
23586
23586
  }
@@ -23599,7 +23599,7 @@ var require_decorateLanguageServiceHost = __commonJS({
23599
23599
  exports2.searchExternalFiles = searchExternalFiles;
23600
23600
  var resolveModuleName_1 = require_resolveModuleName();
23601
23601
  var utils_1 = require_utils2();
23602
- function decorateLanguageServiceHost(ts7, language, languageServiceHost) {
23602
+ function decorateLanguageServiceHost(ts8, language, languageServiceHost) {
23603
23603
  const pluginExtensions = language.plugins.map((plugin2) => plugin2.typescript?.extraFileExtensions.map((ext) => "." + ext.extension) ?? []).flat();
23604
23604
  const scripts = /* @__PURE__ */ new Map();
23605
23605
  const crashFileNames = /* @__PURE__ */ new Set();
@@ -23621,17 +23621,17 @@ var require_decorateLanguageServiceHost = __commonJS({
23621
23621
  };
23622
23622
  }
23623
23623
  if (pluginExtensions.length) {
23624
- const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts7, ts7.sys.getFileSize, languageServiceHost, language.plugins, (fileName) => language.scripts.get(fileName));
23624
+ const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts8, ts8.sys.getFileSize, languageServiceHost, language.plugins, (fileName) => language.scripts.get(fileName));
23625
23625
  const moduleResolutionCache = languageServiceHost.getModuleResolutionCache?.();
23626
23626
  if (resolveModuleNameLiterals) {
23627
23627
  languageServiceHost.resolveModuleNameLiterals = (moduleLiterals, containingFile, redirectedReference, options, containingSourceFile, ...rest) => {
23628
- const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts7, pluginExtensions, containingSourceFile, moduleResolutionCache?.getPackageJsonInfoCache(), languageServiceHost, options);
23628
+ const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts8, pluginExtensions, containingSourceFile, moduleResolutionCache?.getPackageJsonInfoCache(), languageServiceHost, options);
23629
23629
  try {
23630
23630
  if (moduleLiterals.every((name) => !pluginExtensions.some((ext) => name.text.endsWith(ext)))) {
23631
23631
  return resolveModuleNameLiterals(moduleLiterals, containingFile, redirectedReference, options, containingSourceFile, ...rest);
23632
23632
  }
23633
23633
  return moduleLiterals.map((moduleLiteral) => {
23634
- const mode = ts7.getModeForUsageLocation(containingSourceFile, moduleLiteral, options);
23634
+ const mode = ts8.getModeForUsageLocation(containingSourceFile, moduleLiteral, options);
23635
23635
  return resolveModuleName(moduleLiteral.text, containingFile, options, moduleResolutionCache, redirectedReference, mode);
23636
23636
  });
23637
23637
  } finally {
@@ -23698,7 +23698,7 @@ var require_decorateLanguageServiceHost = __commonJS({
23698
23698
  script[1] = {
23699
23699
  extension: serviceScript.extension,
23700
23700
  scriptKind: serviceScript.scriptKind,
23701
- snapshot: ts7.ScriptSnapshot.fromString(virtualContents)
23701
+ snapshot: ts8.ScriptSnapshot.fromString(virtualContents)
23702
23702
  };
23703
23703
  }
23704
23704
  }
@@ -23711,12 +23711,12 @@ var require_decorateLanguageServiceHost = __commonJS({
23711
23711
  return script[1];
23712
23712
  }
23713
23713
  }
23714
- function searchExternalFiles(ts7, project, exts) {
23715
- if (project.projectKind !== ts7.server.ProjectKind.Configured) {
23714
+ function searchExternalFiles(ts8, project, exts) {
23715
+ if (project.projectKind !== ts8.server.ProjectKind.Configured) {
23716
23716
  return [];
23717
23717
  }
23718
23718
  const configFile = project.getProjectName();
23719
- const config = ts7.readJsonConfigFile(configFile, project.readFile.bind(project));
23719
+ const config = ts8.readJsonConfigFile(configFile, project.readFile.bind(project));
23720
23720
  const parseHost = {
23721
23721
  useCaseSensitiveFileNames: project.useCaseSensitiveFileNames(),
23722
23722
  fileExists: project.fileExists.bind(project),
@@ -23726,7 +23726,7 @@ var require_decorateLanguageServiceHost = __commonJS({
23726
23726
  return project.readDirectory(...args);
23727
23727
  }
23728
23728
  };
23729
- const parsed = ts7.parseJsonSourceFileConfigFileContent(config, parseHost, project.getCurrentDirectory());
23729
+ const parsed = ts8.parseJsonSourceFileConfigFileContent(config, parseHost, project.getCurrentDirectory());
23730
23730
  return parsed.fileNames;
23731
23731
  }
23732
23732
  }
@@ -24081,8 +24081,8 @@ var require_proxyCreateProgram = __commonJS({
24081
24081
  }
24082
24082
  return true;
24083
24083
  };
24084
- function proxyCreateProgram(ts7, original, create) {
24085
- const sourceFileSnapshots = new language_core_1.FileMap(ts7.sys.useCaseSensitiveFileNames);
24084
+ function proxyCreateProgram(ts8, original, create) {
24085
+ const sourceFileSnapshots = new language_core_1.FileMap(ts8.sys.useCaseSensitiveFileNames);
24086
24086
  const parsedSourceFiles = /* @__PURE__ */ new WeakMap();
24087
24087
  let lastOptions;
24088
24088
  let languagePlugins;
@@ -24093,9 +24093,9 @@ var require_proxyCreateProgram = __commonJS({
24093
24093
  const options = args[0];
24094
24094
  assert(!!options.host, "!!options.host");
24095
24095
  if (!lastOptions || !languagePlugins || !language || !arrayEqual(options.rootNames, lastOptions.rootNames) || !objectEqual(options.options, lastOptions.options)) {
24096
- moduleResolutionCache = ts7.createModuleResolutionCache(options.host.getCurrentDirectory(), options.host.getCanonicalFileName, options.options);
24096
+ moduleResolutionCache = ts8.createModuleResolutionCache(options.host.getCurrentDirectory(), options.host.getCanonicalFileName, options.options);
24097
24097
  lastOptions = options;
24098
- const created = create(ts7, options);
24098
+ const created = create(ts8, options);
24099
24099
  if (Array.isArray(created)) {
24100
24100
  languagePlugins = created;
24101
24101
  } else {
@@ -24104,7 +24104,7 @@ var require_proxyCreateProgram = __commonJS({
24104
24104
  language = (0, language_core_1.createLanguage)([
24105
24105
  ...languagePlugins,
24106
24106
  { getLanguageId: common_1.resolveFileLanguageId }
24107
- ], new language_core_1.FileMap(ts7.sys.useCaseSensitiveFileNames), (fileName, includeFsFiles) => {
24107
+ ], new language_core_1.FileMap(ts8.sys.useCaseSensitiveFileNames), (fileName, includeFsFiles) => {
24108
24108
  if (includeFsFiles && !sourceFileSnapshots.has(fileName)) {
24109
24109
  const sourceFileText = originalHost.readFile(fileName);
24110
24110
  if (sourceFileText !== void 0) {
@@ -24173,7 +24173,7 @@ var require_proxyCreateProgram = __commonJS({
24173
24173
  } else {
24174
24174
  virtualContents = serviceScript.code.snapshot.getText(0, serviceScript.code.snapshot.getLength());
24175
24175
  }
24176
- const parsedSourceFile = ts7.createSourceFile(fileName, virtualContents, languageVersionOrOptions, void 0, serviceScript.scriptKind);
24176
+ const parsedSourceFile = ts8.createSourceFile(fileName, virtualContents, languageVersionOrOptions, void 0, serviceScript.scriptKind);
24177
24177
  parsedSourceFile.version = originalSourceFile.version;
24178
24178
  originalSourceFile.scriptKind = serviceScript.scriptKind;
24179
24179
  parsedSourceFiles.set(originalSourceFile, parsedSourceFile);
@@ -24187,17 +24187,17 @@ var require_proxyCreateProgram = __commonJS({
24187
24187
  };
24188
24188
  if (pluginExtensions.length) {
24189
24189
  options.options.allowArbitraryExtensions = true;
24190
- const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts7, ts7.sys.getFileSize, originalHost, language.plugins, (fileName) => language.scripts.get(fileName));
24190
+ const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts8, ts8.sys.getFileSize, originalHost, language.plugins, (fileName) => language.scripts.get(fileName));
24191
24191
  const resolveModuleNameLiterals = originalHost.resolveModuleNameLiterals;
24192
24192
  const resolveModuleNames = originalHost.resolveModuleNames;
24193
24193
  options.host.resolveModuleNameLiterals = (moduleLiterals, containingFile, redirectedReference, compilerOptions, containingSourceFile, ...rest) => {
24194
- const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts7, pluginExtensions, containingSourceFile, moduleResolutionCache.getPackageJsonInfoCache(), originalHost, compilerOptions);
24194
+ const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts8, pluginExtensions, containingSourceFile, moduleResolutionCache.getPackageJsonInfoCache(), originalHost, compilerOptions);
24195
24195
  try {
24196
24196
  if (resolveModuleNameLiterals && moduleLiterals.every((name) => !pluginExtensions.some((ext) => name.text.endsWith(ext)))) {
24197
24197
  return resolveModuleNameLiterals(moduleLiterals, containingFile, redirectedReference, compilerOptions, containingSourceFile, ...rest);
24198
24198
  }
24199
24199
  return moduleLiterals.map((moduleLiteral) => {
24200
- const mode = ts7.getModeForUsageLocation(containingSourceFile, moduleLiteral, compilerOptions);
24200
+ const mode = ts8.getModeForUsageLocation(containingSourceFile, moduleLiteral, compilerOptions);
24201
24201
  return resolveModuleName(moduleLiteral.text, containingFile, compilerOptions, moduleResolutionCache, redirectedReference, mode);
24202
24202
  });
24203
24203
  } finally {
@@ -25129,7 +25129,7 @@ var require_createProject = __commonJS({
25129
25129
  var path = require_path_browserify();
25130
25130
  var utils_1 = require_utils2();
25131
25131
  var resolveModuleName_1 = require_resolveModuleName();
25132
- function createLanguageServiceHost(ts7, sys, language, asScriptId, projectHost) {
25132
+ function createLanguageServiceHost(ts8, sys, language, asScriptId, projectHost) {
25133
25133
  const pluginExtensions = language.plugins.map((plugin2) => plugin2.typescript?.extraFileExtensions.map((ext) => "." + ext.extension) ?? []).flat();
25134
25134
  const scriptVersions = new language_core_1.FileMap(sys.useCaseSensitiveFileNames);
25135
25135
  let lastProjectVersion;
@@ -25178,9 +25178,9 @@ var require_createProject = __commonJS({
25178
25178
  getProjectReferences: projectHost.getProjectReferences,
25179
25179
  getDefaultLibFileName: (options) => {
25180
25180
  try {
25181
- return ts7.getDefaultLibFilePath(options);
25181
+ return ts8.getDefaultLibFilePath(options);
25182
25182
  } catch {
25183
- return `/node_modules/typescript/lib/${ts7.getDefaultLibFileName(options)}`;
25183
+ return `/node_modules/typescript/lib/${ts8.getDefaultLibFileName(options)}`;
25184
25184
  }
25185
25185
  },
25186
25186
  readFile(fileName) {
@@ -25223,19 +25223,19 @@ var require_createProject = __commonJS({
25223
25223
  case ".js":
25224
25224
  case ".cjs":
25225
25225
  case ".mjs":
25226
- return ts7.ScriptKind.JS;
25226
+ return ts8.ScriptKind.JS;
25227
25227
  case ".jsx":
25228
- return ts7.ScriptKind.JSX;
25228
+ return ts8.ScriptKind.JSX;
25229
25229
  case ".ts":
25230
25230
  case ".cts":
25231
25231
  case ".mts":
25232
- return ts7.ScriptKind.TS;
25232
+ return ts8.ScriptKind.TS;
25233
25233
  case ".tsx":
25234
- return ts7.ScriptKind.TSX;
25234
+ return ts8.ScriptKind.TSX;
25235
25235
  case ".json":
25236
- return ts7.ScriptKind.JSON;
25236
+ return ts8.ScriptKind.JSON;
25237
25237
  default:
25238
- return ts7.ScriptKind.Unknown;
25238
+ return ts8.ScriptKind.Unknown;
25239
25239
  }
25240
25240
  },
25241
25241
  getScriptVersion,
@@ -25247,18 +25247,18 @@ var require_createProject = __commonJS({
25247
25247
  }
25248
25248
  }
25249
25249
  if (pluginExtensions.length) {
25250
- const moduleResolutionCache = ts7.createModuleResolutionCache(languageServiceHost.getCurrentDirectory(), languageServiceHost.useCaseSensitiveFileNames?.() ? (s) => s : (s) => s.toLowerCase(), languageServiceHost.getCompilationSettings());
25251
- const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts7, sys.getFileSize, languageServiceHost, language.plugins, (fileName) => language.scripts.get(asScriptId(fileName)));
25250
+ const moduleResolutionCache = ts8.createModuleResolutionCache(languageServiceHost.getCurrentDirectory(), languageServiceHost.useCaseSensitiveFileNames?.() ? (s) => s : (s) => s.toLowerCase(), languageServiceHost.getCompilationSettings());
25251
+ const resolveModuleName = (0, resolveModuleName_1.createResolveModuleName)(ts8, sys.getFileSize, languageServiceHost, language.plugins, (fileName) => language.scripts.get(asScriptId(fileName)));
25252
25252
  let lastSysVersion = "version" in sys ? sys.version : void 0;
25253
25253
  languageServiceHost.resolveModuleNameLiterals = (moduleLiterals, containingFile, redirectedReference, options, containingSourceFile) => {
25254
- const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts7, pluginExtensions, containingSourceFile, moduleResolutionCache.getPackageJsonInfoCache(), languageServiceHost, options);
25254
+ const disposeFixup = (0, utils_1.fixupImpliedNodeFormatForFile)(ts8, pluginExtensions, containingSourceFile, moduleResolutionCache.getPackageJsonInfoCache(), languageServiceHost, options);
25255
25255
  try {
25256
25256
  if ("version" in sys && lastSysVersion !== sys.version) {
25257
25257
  lastSysVersion = sys.version;
25258
25258
  moduleResolutionCache.clear();
25259
25259
  }
25260
25260
  return moduleLiterals.map((moduleLiteral) => {
25261
- const mode = ts7.getModeForUsageLocation(containingSourceFile, moduleLiteral, options);
25261
+ const mode = ts8.getModeForUsageLocation(containingSourceFile, moduleLiteral, options);
25262
25262
  return resolveModuleName(moduleLiteral.text, containingFile, options, moduleResolutionCache, redirectedReference, mode);
25263
25263
  });
25264
25264
  } finally {
@@ -26527,11 +26527,11 @@ var require_typescriptProjectLs = __commonJS({
26527
26527
  var vscode2 = require_main4();
26528
26528
  var vscode_uri_1 = require_umd();
26529
26529
  var fsFileSnapshots = (0, language_service_1.createUriMap)();
26530
- async function createTypeScriptLS(ts7, tsLocalized, tsconfig, server2, serviceEnv, workspaceFolder, uriConverter, create) {
26530
+ async function createTypeScriptLS(ts8, tsLocalized, tsconfig, server2, serviceEnv, workspaceFolder, uriConverter, create) {
26531
26531
  let commandLine;
26532
26532
  let projectVersion = 0;
26533
26533
  const getCurrentDirectory = () => uriConverter.asFileName(workspaceFolder);
26534
- const sys = (0, typescript_1.createSys)(ts7.sys, serviceEnv, getCurrentDirectory, uriConverter);
26534
+ const sys = (0, typescript_1.createSys)(ts8.sys, serviceEnv, getCurrentDirectory, uriConverter);
26535
26535
  const projectHost = {
26536
26536
  getCurrentDirectory,
26537
26537
  getProjectVersion() {
@@ -26608,7 +26608,7 @@ var require_typescriptProjectLs = __commonJS({
26608
26608
  if (!cache || cache[0] !== modifiedTime) {
26609
26609
  if (sys.fileExists(fileName)) {
26610
26610
  const text = sys.readFile(fileName);
26611
- const snapshot2 = text !== void 0 ? ts7.ScriptSnapshot.fromString(text) : void 0;
26611
+ const snapshot2 = text !== void 0 ? ts8.ScriptSnapshot.fromString(text) : void 0;
26612
26612
  fsFileSnapshots.set(uri, [modifiedTime, snapshot2]);
26613
26613
  } else {
26614
26614
  fsFileSnapshots.set(uri, [modifiedTime, void 0]);
@@ -26627,7 +26627,7 @@ var require_typescriptProjectLs = __commonJS({
26627
26627
  configFileName: typeof tsconfig === "string" ? tsconfig : void 0,
26628
26628
  sys,
26629
26629
  uriConverter,
26630
- ...(0, typescript_1.createLanguageServiceHost)(ts7, sys, language, (s) => uriConverter.asUri(s), projectHost)
26630
+ ...(0, typescript_1.createLanguageServiceHost)(ts8, sys, language, (s) => uriConverter.asUri(s), projectHost)
26631
26631
  }
26632
26632
  };
26633
26633
  setup?.({ language, project });
@@ -26658,13 +26658,13 @@ var require_typescriptProjectLs = __commonJS({
26658
26658
  }
26659
26659
  async function updateCommandLine() {
26660
26660
  const oldFileNames = new Set(commandLine?.fileNames ?? []);
26661
- commandLine = await parseConfig(ts7, sys, uriConverter.asFileName(workspaceFolder), tsconfig, languagePlugins.map((plugin2) => plugin2.typescript?.extraFileExtensions ?? []).flat());
26661
+ commandLine = await parseConfig(ts8, sys, uriConverter.asFileName(workspaceFolder), tsconfig, languagePlugins.map((plugin2) => plugin2.typescript?.extraFileExtensions ?? []).flat());
26662
26662
  const newFileNames = new Set(commandLine.fileNames);
26663
26663
  if (oldFileNames.size !== newFileNames.size || [...oldFileNames].some((fileName) => !newFileNames.has(fileName))) {
26664
26664
  projectVersion++;
26665
26665
  }
26666
26666
  }
26667
- async function parseConfig(ts8, sys2, workspacePath, tsconfig2, extraFileExtensions) {
26667
+ async function parseConfig(ts9, sys2, workspacePath, tsconfig2, extraFileExtensions) {
26668
26668
  let commandLine2 = {
26669
26669
  errors: [],
26670
26670
  fileNames: [],
@@ -26675,14 +26675,14 @@ var require_typescriptProjectLs = __commonJS({
26675
26675
  while (sysVersion !== newSysVersion) {
26676
26676
  sysVersion = newSysVersion;
26677
26677
  try {
26678
- commandLine2 = parseConfigWorker(ts8, sys2, workspacePath, tsconfig2, extraFileExtensions);
26678
+ commandLine2 = parseConfigWorker(ts9, sys2, workspacePath, tsconfig2, extraFileExtensions);
26679
26679
  } catch {
26680
26680
  }
26681
26681
  newSysVersion = await sys2.sync();
26682
26682
  }
26683
26683
  return commandLine2;
26684
26684
  }
26685
- function parseConfigWorker(ts8, _host, workspacePath, tsconfig2, extraFileExtensions) {
26685
+ function parseConfigWorker(ts9, _host, workspacePath, tsconfig2, extraFileExtensions) {
26686
26686
  let content = {
26687
26687
  errors: [],
26688
26688
  fileNames: [],
@@ -26723,10 +26723,10 @@ var require_typescriptProjectLs = __commonJS({
26723
26723
  }
26724
26724
  };
26725
26725
  if (typeof tsconfig2 === "string") {
26726
- const config = ts8.readJsonConfigFile(tsconfig2, host.readFile);
26727
- content = ts8.parseJsonSourceFileConfigFileContent(config, host, path.dirname(tsconfig2), {}, tsconfig2, void 0, extraFileExtensions);
26726
+ const config = ts9.readJsonConfigFile(tsconfig2, host.readFile);
26727
+ content = ts9.parseJsonSourceFileConfigFileContent(config, host, path.dirname(tsconfig2), {}, tsconfig2, void 0, extraFileExtensions);
26728
26728
  } else {
26729
- content = ts8.parseJsonConfigFileContent({ files: [] }, host, workspacePath, tsconfig2, workspacePath + "/jsconfig.json", void 0, extraFileExtensions);
26729
+ content = ts9.parseJsonConfigFileContent({ files: [] }, host, workspacePath, tsconfig2, workspacePath + "/jsconfig.json", void 0, extraFileExtensions);
26730
26730
  }
26731
26731
  content.options.outDir = void 0;
26732
26732
  content.fileNames = content.fileNames.map((fileName) => fileName.replace(/\\/g, "/"));
@@ -26754,7 +26754,7 @@ var require_typescriptProject = __commonJS({
26754
26754
  var simpleProject_1 = require_simpleProject();
26755
26755
  var typescriptProjectLs_1 = require_typescriptProjectLs();
26756
26756
  var rootTsConfigNames = ["tsconfig.json", "jsconfig.json"];
26757
- function createTypeScriptProject2(ts7, tsLocalized, create) {
26757
+ function createTypeScriptProject2(ts8, tsLocalized, create) {
26758
26758
  let server2;
26759
26759
  let uriConverter;
26760
26760
  const configProjects = (0, language_service_1.createUriMap)();
@@ -26927,7 +26927,7 @@ var require_typescriptProject = __commonJS({
26927
26927
  if (!projectPromise) {
26928
26928
  const workspaceFolder = getWorkspaceFolder(tsconfigUri, server3.workspaceFolders);
26929
26929
  const serviceEnv = (0, simpleProject_1.createLanguageServiceEnvironment)(server3, [workspaceFolder]);
26930
- projectPromise = (0, typescriptProjectLs_1.createTypeScriptLS)(ts7, tsLocalized, tsconfig, server3, serviceEnv, workspaceFolder, uriConverter, create);
26930
+ projectPromise = (0, typescriptProjectLs_1.createTypeScriptLS)(ts8, tsLocalized, tsconfig, server3, serviceEnv, workspaceFolder, uriConverter, create);
26931
26931
  configProjects.set(tsconfigUri, projectPromise);
26932
26932
  }
26933
26933
  return projectPromise;
@@ -26937,7 +26937,7 @@ var require_typescriptProject = __commonJS({
26937
26937
  inferredProjects.set(workspaceFolder, (async () => {
26938
26938
  const inferOptions = await (0, inferredCompilerOptions_1.getInferredCompilerOptions)(server3);
26939
26939
  const serviceEnv = (0, simpleProject_1.createLanguageServiceEnvironment)(server3, [workspaceFolder]);
26940
- return (0, typescriptProjectLs_1.createTypeScriptLS)(ts7, tsLocalized, inferOptions, server3, serviceEnv, workspaceFolder, uriConverter, create);
26940
+ return (0, typescriptProjectLs_1.createTypeScriptLS)(ts8, tsLocalized, inferOptions, server3, serviceEnv, workspaceFolder, uriConverter, create);
26941
26941
  })());
26942
26942
  }
26943
26943
  const project = await inferredProjects.get(workspaceFolder);
@@ -30592,11 +30592,11 @@ var require_lspConverters = __commonJS({
30592
30592
  }
30593
30593
  return messageText;
30594
30594
  }
30595
- function applyCompletionEntryDetails(ts7, item, data, document2, fileNameToUri, getTextDocument) {
30595
+ function applyCompletionEntryDetails(ts8, item, data, document2, fileNameToUri, getTextDocument) {
30596
30596
  const { sourceDisplay } = data;
30597
30597
  if (sourceDisplay) {
30598
30598
  item.labelDetails ??= {};
30599
- item.labelDetails.description = ts7.displayPartsToString(sourceDisplay);
30599
+ item.labelDetails.description = ts8.displayPartsToString(sourceDisplay);
30600
30600
  }
30601
30601
  const detailTexts = [];
30602
30602
  if (data.codeActions) {
@@ -30625,9 +30625,9 @@ var require_lspConverters = __commonJS({
30625
30625
  handleKindModifiers(item, data);
30626
30626
  }
30627
30627
  }
30628
- function convertCompletionInfo(ts7, completionContext, document2, position, createData) {
30629
- const lt_320 = semver.lt(ts7.version, "3.2.0");
30630
- const gte_300 = semver.gte(ts7.version, "3.0.0");
30628
+ function convertCompletionInfo(ts8, completionContext, document2, position, createData) {
30629
+ const lt_320 = semver.lt(ts8.version, "3.2.0");
30630
+ const gte_300 = semver.gte(ts8.version, "3.0.0");
30631
30631
  const wordRange = completionContext.optionalReplacementSpan ? convertTextSpan(completionContext.optionalReplacementSpan, document2) : void 0;
30632
30632
  const line = getLineText(document2, position.line);
30633
30633
  const dotAccessorContext = getDotAccessorContext(document2);
@@ -30650,7 +30650,7 @@ var require_lspConverters = __commonJS({
30650
30650
  const { sourceDisplay, isSnippet, labelDetails } = tsEntry;
30651
30651
  if (sourceDisplay) {
30652
30652
  item.labelDetails ??= {};
30653
- item.labelDetails.description = ts7.displayPartsToString(sourceDisplay);
30653
+ item.labelDetails.description = ts8.displayPartsToString(sourceDisplay);
30654
30654
  }
30655
30655
  if (labelDetails) {
30656
30656
  item.labelDetails ??= {};
@@ -31025,9 +31025,9 @@ var require_lspConverters = __commonJS({
31025
31025
  }
31026
31026
  return workspaceEdit;
31027
31027
  }
31028
- function convertQuickInfo(ts7, info, document2, fileNameToUri, getTextDocument) {
31028
+ function convertQuickInfo(ts8, info, document2, fileNameToUri, getTextDocument) {
31029
31029
  const parts = [];
31030
- const displayString = ts7.displayPartsToString(info.displayParts);
31030
+ const displayString = ts8.displayPartsToString(info.displayParts);
31031
31031
  const documentation = previewer.markdownDocumentation(info.documentation ?? [], info.tags, fileNameToUri, getTextDocument);
31032
31032
  if (displayString) {
31033
31033
  parts.push(["```typescript", displayString, "```"].join("\n"));
@@ -31300,7 +31300,7 @@ var require_syntaxOnlyService = __commonJS({
31300
31300
  "use strict";
31301
31301
  Object.defineProperty(exports2, "__esModule", { value: true });
31302
31302
  exports2.createSyntaxOnlyService = createSyntaxOnlyService;
31303
- function createSyntaxOnlyService(ts7, syntaxOnly) {
31303
+ function createSyntaxOnlyService(ts8, syntaxOnly) {
31304
31304
  let currentProjectVersion = -1;
31305
31305
  let fileNames = [];
31306
31306
  const scriptInfos = /* @__PURE__ */ new Map();
@@ -31317,7 +31317,7 @@ var require_syntaxOnlyService = __commonJS({
31317
31317
  fileExists: (fileName) => scriptInfos.has(fileName)
31318
31318
  };
31319
31319
  return {
31320
- languageService: syntaxOnly ? ts7.createLanguageService(host, void 0, ts7.LanguageServiceMode.Syntactic) : ts7.createLanguageService(host),
31320
+ languageService: syntaxOnly ? ts8.createLanguageService(host, void 0, ts8.LanguageServiceMode.Syntactic) : ts8.createLanguageService(host),
31321
31321
  updateFile
31322
31322
  };
31323
31323
  function updateFile(fileName, snapshot, scriptKind) {
@@ -31354,23 +31354,23 @@ var require_syntactic = __commonJS({
31354
31354
  var lspConverters_1 = require_lspConverters();
31355
31355
  var snapshots = /* @__PURE__ */ new WeakMap();
31356
31356
  var created;
31357
- function getLanguageServiceByDocument(ts7, document2) {
31357
+ function getLanguageServiceByDocument(ts8, document2) {
31358
31358
  if (!created) {
31359
- created = (0, syntaxOnlyService_1.createSyntaxOnlyService)(ts7, true);
31359
+ created = (0, syntaxOnlyService_1.createSyntaxOnlyService)(ts8, true);
31360
31360
  }
31361
31361
  let cache = snapshots.get(document2);
31362
31362
  if (!cache || cache[0] !== document2.version) {
31363
- const snapshot = ts7.ScriptSnapshot.fromString(document2.getText());
31363
+ const snapshot = ts8.ScriptSnapshot.fromString(document2.getText());
31364
31364
  cache = [document2.version, snapshot];
31365
31365
  snapshots.set(document2, cache);
31366
- created.updateFile(document2.uri, cache[1], document2.languageId === "javascript" ? ts7.ScriptKind.JS : document2.languageId === "javascriptreact" ? ts7.ScriptKind.JSX : document2.languageId === "typescriptreact" ? ts7.ScriptKind.TSX : ts7.ScriptKind.TS);
31366
+ created.updateFile(document2.uri, cache[1], document2.languageId === "javascript" ? ts8.ScriptKind.JS : document2.languageId === "javascriptreact" ? ts8.ScriptKind.JSX : document2.languageId === "typescriptreact" ? ts8.ScriptKind.TSX : ts8.ScriptKind.TS);
31367
31367
  }
31368
31368
  return {
31369
31369
  languageService: created.languageService,
31370
31370
  fileName: document2.uri
31371
31371
  };
31372
31372
  }
31373
- function create(ts7, { isFormattingEnabled = async (document2, context) => {
31373
+ function create(ts8, { isFormattingEnabled = async (document2, context) => {
31374
31374
  return await context.env.getConfiguration?.((0, shared_1.getConfigTitle)(document2) + ".format.enable") ?? true;
31375
31375
  } } = {}) {
31376
31376
  return {
@@ -31396,7 +31396,7 @@ var require_syntactic = __commonJS({
31396
31396
  return;
31397
31397
  }
31398
31398
  if ((document2.languageId === "javascriptreact" || document2.languageId === "typescriptreact") && change.text.endsWith(">") && (await context.env.getConfiguration?.((0, shared_1.getConfigTitle)(document2) + ".autoClosingTags") ?? true)) {
31399
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31399
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31400
31400
  const close = languageService.getJsxClosingTagAtPosition(fileName, document2.offsetAt(selection));
31401
31401
  if (close) {
31402
31402
  return "$0" + close.newText;
@@ -31407,7 +31407,7 @@ var require_syntactic = __commonJS({
31407
31407
  if (!(0, shared_1.isTsDocument)(document2)) {
31408
31408
  return;
31409
31409
  }
31410
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31410
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31411
31411
  const outliningSpans = (0, shared_1.safeCall)(() => languageService.getOutliningSpans(fileName));
31412
31412
  if (!outliningSpans) {
31413
31413
  return [];
@@ -31418,7 +31418,7 @@ var require_syntactic = __commonJS({
31418
31418
  if (!(0, shared_1.isTsDocument)(document2)) {
31419
31419
  return;
31420
31420
  }
31421
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31421
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31422
31422
  const ranges = positions.map((position) => {
31423
31423
  const offset = document2.offsetAt(position);
31424
31424
  const range = (0, shared_1.safeCall)(() => languageService.getSmartSelectionRange(fileName, offset));
@@ -31435,7 +31435,7 @@ var require_syntactic = __commonJS({
31435
31435
  if (!(0, shared_1.isTsDocument)(document2)) {
31436
31436
  return;
31437
31437
  }
31438
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31438
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31439
31439
  const barItems = (0, shared_1.safeCall)(() => languageService.getNavigationTree(fileName));
31440
31440
  if (!barItems) {
31441
31441
  return [];
@@ -31453,7 +31453,7 @@ var require_syntactic = __commonJS({
31453
31453
  if (codeOptions) {
31454
31454
  tsOptions.baseIndentSize = codeOptions.initialIndentLevel * options.tabSize;
31455
31455
  }
31456
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31456
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31457
31457
  const scriptEdits = range ? (0, shared_1.safeCall)(() => languageService.getFormattingEditsForRange(fileName, document2.offsetAt(range.start), document2.offsetAt(range.end), tsOptions)) : (0, shared_1.safeCall)(() => languageService.getFormattingEditsForDocument(fileName, tsOptions));
31458
31458
  if (!scriptEdits) {
31459
31459
  return [];
@@ -31471,7 +31471,7 @@ var require_syntactic = __commonJS({
31471
31471
  if (codeOptions) {
31472
31472
  tsOptions.baseIndentSize = codeOptions.initialIndentLevel * options.tabSize;
31473
31473
  }
31474
- const { languageService, fileName } = getLanguageServiceByDocument(ts7, document2);
31474
+ const { languageService, fileName } = getLanguageServiceByDocument(ts8, document2);
31475
31475
  const scriptEdits = (0, shared_1.safeCall)(() => languageService.getFormattingEditsAfterKeystroke(fileName, document2.offsetAt(position), key, tsOptions));
31476
31476
  if (!scriptEdits) {
31477
31477
  return [];
@@ -31499,7 +31499,7 @@ var require_docCommentTemplate = __commonJS({
31499
31499
  var defaultJsDoc = `/**
31500
31500
  * $0
31501
31501
  */`;
31502
- function create(ts7) {
31502
+ function create(ts8) {
31503
31503
  return {
31504
31504
  name: "typescript-doc-comment-template",
31505
31505
  capabilities: {
@@ -31516,7 +31516,7 @@ var require_docCommentTemplate = __commonJS({
31516
31516
  if (!isPotentiallyValidDocCompletionPosition(document2, position)) {
31517
31517
  return;
31518
31518
  }
31519
- const { languageService, fileName } = (0, syntactic_1.getLanguageServiceByDocument)(ts7, document2);
31519
+ const { languageService, fileName } = (0, syntactic_1.getLanguageServiceByDocument)(ts8, document2);
31520
31520
  const offset = document2.offsetAt(position);
31521
31521
  const docCommentTemplate = languageService.getDocCommentTemplateAtPosition(fileName, offset);
31522
31522
  if (!docCommentTemplate) {
@@ -31591,9 +31591,9 @@ var require__ = __commonJS({
31591
31591
  "../../node_modules/.pnpm/typescript-auto-import-cache@0.3.6/node_modules/typescript-auto-import-cache/out/4_0/index.js"(exports2) {
31592
31592
  "use strict";
31593
31593
  Object.defineProperty(exports2, "__esModule", { value: true });
31594
- function default_1(ts7, host, _service) {
31594
+ function default_1(ts8, host, _service) {
31595
31595
  var _a, _b;
31596
- const importSuggestionsCache = (_b = (_a = ts7.Completions) === null || _a === void 0 ? void 0 : _a.createImportSuggestionsForFileCache) === null || _b === void 0 ? void 0 : _b.call(_a);
31596
+ const importSuggestionsCache = (_b = (_a = ts8.Completions) === null || _a === void 0 ? void 0 : _a.createImportSuggestionsForFileCache) === null || _b === void 0 ? void 0 : _b.call(_a);
31597
31597
  host.getImportSuggestionsCache = () => importSuggestionsCache;
31598
31598
  }
31599
31599
  exports2.default = default_1;
@@ -31693,12 +31693,12 @@ var require_packageJsonCache = __commonJS({
31693
31693
  "use strict";
31694
31694
  Object.defineProperty(exports2, "__esModule", { value: true });
31695
31695
  exports2.createPackageJsonCache = exports2.canCreatePackageJsonCache = void 0;
31696
- function canCreatePackageJsonCache(ts7) {
31697
- return "createPackageJsonInfo" in ts7 && "getDirectoryPath" in ts7 && "combinePaths" in ts7 && "tryFileExists" in ts7 && "forEachAncestorDirectory" in ts7;
31696
+ function canCreatePackageJsonCache(ts8) {
31697
+ return "createPackageJsonInfo" in ts8 && "getDirectoryPath" in ts8 && "combinePaths" in ts8 && "tryFileExists" in ts8 && "forEachAncestorDirectory" in ts8;
31698
31698
  }
31699
31699
  exports2.canCreatePackageJsonCache = canCreatePackageJsonCache;
31700
- function createPackageJsonCache(ts7, host) {
31701
- const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts7;
31700
+ function createPackageJsonCache(ts8, host) {
31701
+ const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts8;
31702
31702
  const packageJsons = /* @__PURE__ */ new Map();
31703
31703
  const directoriesWithoutPackageJson = /* @__PURE__ */ new Map();
31704
31704
  return {
@@ -31751,14 +31751,14 @@ var require__2 = __commonJS({
31751
31751
  Object.defineProperty(exports2, "__esModule", { value: true });
31752
31752
  var moduleSpecifierCache_1 = require_moduleSpecifierCache();
31753
31753
  var packageJsonCache_1 = require_packageJsonCache();
31754
- function default_1(ts7, host, service) {
31755
- const _createCacheableExportInfoMap = ts7.createCacheableExportInfoMap;
31756
- const _combinePaths = ts7.combinePaths;
31757
- const _forEachAncestorDirectory = ts7.forEachAncestorDirectory;
31758
- const _getDirectoryPath = ts7.getDirectoryPath;
31759
- const _toPath = ts7.toPath;
31760
- const _createGetCanonicalFileName = ts7.createGetCanonicalFileName;
31761
- if (!_createCacheableExportInfoMap || !_combinePaths || !_forEachAncestorDirectory || !_getDirectoryPath || !_toPath || !_createGetCanonicalFileName || !(0, packageJsonCache_1.canCreatePackageJsonCache)(ts7))
31754
+ function default_1(ts8, host, service) {
31755
+ const _createCacheableExportInfoMap = ts8.createCacheableExportInfoMap;
31756
+ const _combinePaths = ts8.combinePaths;
31757
+ const _forEachAncestorDirectory = ts8.forEachAncestorDirectory;
31758
+ const _getDirectoryPath = ts8.getDirectoryPath;
31759
+ const _toPath = ts8.toPath;
31760
+ const _createGetCanonicalFileName = ts8.createGetCanonicalFileName;
31761
+ if (!_createCacheableExportInfoMap || !_combinePaths || !_forEachAncestorDirectory || !_getDirectoryPath || !_toPath || !_createGetCanonicalFileName || !(0, packageJsonCache_1.canCreatePackageJsonCache)(ts8))
31762
31762
  return;
31763
31763
  const moduleSpecifierCache = (0, moduleSpecifierCache_1.createModuleSpecifierCache)();
31764
31764
  const exportMapCache = _createCacheableExportInfoMap({
@@ -31769,7 +31769,7 @@ var require__2 = __commonJS({
31769
31769
  return service.getProgram();
31770
31770
  }
31771
31771
  });
31772
- const packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts7, Object.assign(Object.assign({}, host), {
31772
+ const packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts8, Object.assign(Object.assign({}, host), {
31773
31773
  // @ts-expect-error
31774
31774
  host: Object.assign({}, host),
31775
31775
  toPath
@@ -31905,8 +31905,8 @@ var require_packageJsonCache2 = __commonJS({
31905
31905
  "use strict";
31906
31906
  Object.defineProperty(exports2, "__esModule", { value: true });
31907
31907
  exports2.createPackageJsonCache = void 0;
31908
- function createPackageJsonCache(ts7, host) {
31909
- const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts7;
31908
+ function createPackageJsonCache(ts8, host) {
31909
+ const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts8;
31910
31910
  const packageJsons = /* @__PURE__ */ new Map();
31911
31911
  const directoriesWithoutPackageJson = /* @__PURE__ */ new Map();
31912
31912
  return {
@@ -31958,13 +31958,13 @@ var require__3 = __commonJS({
31958
31958
  Object.defineProperty(exports2, "__esModule", { value: true });
31959
31959
  var moduleSpecifierCache_1 = require_moduleSpecifierCache2();
31960
31960
  var packageJsonCache_1 = require_packageJsonCache2();
31961
- function default_1(ts7, host, service) {
31962
- const _createCacheableExportInfoMap = ts7.createCacheableExportInfoMap;
31963
- const _combinePaths = ts7.combinePaths;
31964
- const _forEachAncestorDirectory = ts7.forEachAncestorDirectory;
31965
- const _getDirectoryPath = ts7.getDirectoryPath;
31966
- const _toPath = ts7.toPath;
31967
- const _createGetCanonicalFileName = ts7.createGetCanonicalFileName;
31961
+ function default_1(ts8, host, service) {
31962
+ const _createCacheableExportInfoMap = ts8.createCacheableExportInfoMap;
31963
+ const _combinePaths = ts8.combinePaths;
31964
+ const _forEachAncestorDirectory = ts8.forEachAncestorDirectory;
31965
+ const _getDirectoryPath = ts8.getDirectoryPath;
31966
+ const _toPath = ts8.toPath;
31967
+ const _createGetCanonicalFileName = ts8.createGetCanonicalFileName;
31968
31968
  if (!_createCacheableExportInfoMap || !_combinePaths || !_forEachAncestorDirectory || !_getDirectoryPath || !_toPath || !_createGetCanonicalFileName)
31969
31969
  return;
31970
31970
  const moduleSpecifierCache = (0, moduleSpecifierCache_1.createModuleSpecifierCache)();
@@ -31979,7 +31979,7 @@ var require__3 = __commonJS({
31979
31979
  return void 0;
31980
31980
  }
31981
31981
  });
31982
- const packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts7, Object.assign(Object.assign({}, host), {
31982
+ const packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts8, Object.assign(Object.assign({}, host), {
31983
31983
  // @ts-expect-error
31984
31984
  host: Object.assign({}, host),
31985
31985
  toPath
@@ -32024,8 +32024,8 @@ var require_packageJsonCache3 = __commonJS({
32024
32024
  "use strict";
32025
32025
  Object.defineProperty(exports2, "__esModule", { value: true });
32026
32026
  exports2.createPackageJsonCache = void 0;
32027
- function createPackageJsonCache(ts7, host) {
32028
- const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts7;
32027
+ function createPackageJsonCache(ts8, host) {
32028
+ const { createPackageJsonInfo, getDirectoryPath, combinePaths, tryFileExists, forEachAncestorDirectory } = ts8;
32029
32029
  const packageJsons = /* @__PURE__ */ new Map();
32030
32030
  const directoriesWithoutPackageJson = /* @__PURE__ */ new Map();
32031
32031
  return {
@@ -32078,8 +32078,8 @@ var require_projectService = __commonJS({
32078
32078
  Object.defineProperty(exports2, "__esModule", { value: true });
32079
32079
  exports2.createProjectService = void 0;
32080
32080
  var packageJsonCache_1 = require_packageJsonCache3();
32081
- function createProjectService(ts7, sys, currentDirectory, hostConfiguration, serverMode) {
32082
- const { toPath, getNormalizedAbsolutePath, normalizePath: toNormalizedPath, createGetCanonicalFileName, forEachAncestorDirectory, getDirectoryPath } = ts7;
32081
+ function createProjectService(ts8, sys, currentDirectory, hostConfiguration, serverMode) {
32082
+ const { toPath, getNormalizedAbsolutePath, normalizePath: toNormalizedPath, createGetCanonicalFileName, forEachAncestorDirectory, getDirectoryPath } = ts8;
32083
32083
  const projectService = {
32084
32084
  serverMode,
32085
32085
  host: sys,
@@ -32133,7 +32133,7 @@ var require_projectService = __commonJS({
32133
32133
  return this.host.fileExists(fileName);
32134
32134
  }
32135
32135
  };
32136
- projectService.packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts7, projectService);
32136
+ projectService.packageJsonCache = (0, packageJsonCache_1.createPackageJsonCache)(ts8, projectService);
32137
32137
  return projectService;
32138
32138
  }
32139
32139
  exports2.createProjectService = createProjectService;
@@ -32239,26 +32239,26 @@ var require_autoImportProviderProject = __commonJS({
32239
32239
  exports2.createAutoImportProviderProjectStatic = void 0;
32240
32240
  var project_1 = require_project();
32241
32241
  function createAutoImportProviderProjectStatic(tsBase, host, createLanguageService) {
32242
- const ts7 = tsBase;
32243
- const { combinePaths, inferredTypesContainingFile, arrayFrom, resolvePackageNameToPackageJson, concatenate, forEach, startsWith, getEntrypointsFromPackageJsonInfo, mapDefined, timestamp } = ts7;
32242
+ const ts8 = tsBase;
32243
+ const { combinePaths, inferredTypesContainingFile, arrayFrom, resolvePackageNameToPackageJson, concatenate, forEach, startsWith, getEntrypointsFromPackageJsonInfo, mapDefined, timestamp } = ts8;
32244
32244
  return {
32245
32245
  maxDependencies: 10,
32246
32246
  compilerOptionsOverrides: {
32247
32247
  diagnostics: false,
32248
32248
  skipLibCheck: true,
32249
32249
  sourceMap: false,
32250
- types: ts7.emptyArray,
32251
- lib: ts7.emptyArray,
32250
+ types: ts8.emptyArray,
32251
+ lib: ts8.emptyArray,
32252
32252
  noLib: true
32253
32253
  },
32254
32254
  getRootFileNames(dependencySelection, hostProject, moduleResolutionHost, compilerOptions) {
32255
32255
  var _a, _b;
32256
32256
  if (!dependencySelection) {
32257
- return ts7.emptyArray;
32257
+ return ts8.emptyArray;
32258
32258
  }
32259
32259
  const program = hostProject.getCurrentProgram();
32260
32260
  if (!program) {
32261
- return ts7.emptyArray;
32261
+ return ts8.emptyArray;
32262
32262
  }
32263
32263
  const start = timestamp();
32264
32264
  let dependencyNames;
@@ -32275,7 +32275,7 @@ var require_autoImportProviderProject = __commonJS({
32275
32275
  for (const name of arrayFrom(dependencyNames.keys())) {
32276
32276
  if (dependencySelection === 2 && dependenciesAdded > this.maxDependencies) {
32277
32277
  hostProject.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`);
32278
- return ts7.emptyArray;
32278
+ return ts8.emptyArray;
32279
32279
  }
32280
32280
  const packageJson = resolvePackageNameToPackageJson(
32281
32281
  name,
@@ -32329,7 +32329,7 @@ var require_autoImportProviderProject = __commonJS({
32329
32329
  if (rootNames === null || rootNames === void 0 ? void 0 : rootNames.length) {
32330
32330
  hostProject.log(`AutoImportProviderProject: found ${rootNames.length} root files in ${dependenciesAdded} dependencies in ${timestamp() - start} ms`);
32331
32331
  }
32332
- return rootNames || ts7.emptyArray;
32332
+ return rootNames || ts8.emptyArray;
32333
32333
  function addDependency(dependency) {
32334
32334
  if (!startsWith(dependency, "@types/")) {
32335
32335
  (dependencyNames || (dependencyNames = /* @__PURE__ */ new Set())).add(dependency);
@@ -32381,8 +32381,8 @@ var require_autoImportProviderProject = __commonJS({
32381
32381
  exports2.createAutoImportProviderProjectStatic = createAutoImportProviderProjectStatic;
32382
32382
  function createAutoImportProviderProject(tsBase, host, createLanguageService, options) {
32383
32383
  const { self, rootNames, compilerOptions, hostProject } = options;
32384
- const ts7 = tsBase;
32385
- const { some } = ts7;
32384
+ const ts8 = tsBase;
32385
+ const { some } = ts8;
32386
32386
  const project = Object.assign(Object.assign({}, (0, project_1.createProject)(tsBase, host, createLanguageService, {
32387
32387
  projectService: hostProject.projectService,
32388
32388
  currentDirectory: hostProject.currentDirectory,
@@ -32429,7 +32429,7 @@ var require_autoImportProviderProject = __commonJS({
32429
32429
  }
32430
32430
  },
32431
32431
  getScriptFileNames() {
32432
- return this.rootFileNames || ts7.emptyArray;
32432
+ return this.rootFileNames || ts8.emptyArray;
32433
32433
  },
32434
32434
  getLanguageService() {
32435
32435
  throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.");
@@ -32478,10 +32478,10 @@ var require_project = __commonJS({
32478
32478
  exports2.initProject = exports2.createProject = void 0;
32479
32479
  var moduleSpecifierCache_1 = require_moduleSpecifierCache3();
32480
32480
  var autoImportProviderProject_1 = require_autoImportProviderProject();
32481
- function createProject(ts7, host, createLanguageService, options) {
32481
+ function createProject(ts8, host, createLanguageService, options) {
32482
32482
  var _a, _b;
32483
- const { combinePaths, inferredTypesContainingFile, createSymlinkCache, toPath, createCacheableExportInfoMap, timestamp, isInsideNodeModules, LanguageServiceMode } = ts7;
32484
- const tsCreateModuleSpecifierCache = (_a = ts7.server) === null || _a === void 0 ? void 0 : _a.createModuleSpecifierCache;
32483
+ const { combinePaths, inferredTypesContainingFile, createSymlinkCache, toPath, createCacheableExportInfoMap, timestamp, isInsideNodeModules, LanguageServiceMode } = ts8;
32484
+ const tsCreateModuleSpecifierCache = (_a = ts8.server) === null || _a === void 0 ? void 0 : _a.createModuleSpecifierCache;
32485
32485
  const noopHost = {
32486
32486
  watchNodeModulesForPackageJsonChanges: () => ({ close: () => {
32487
32487
  } }),
@@ -32489,7 +32489,7 @@ var require_project = __commonJS({
32489
32489
  return toPath(fileName, host.getCurrentDirectory(), projectService.toCanonicalFileName);
32490
32490
  }
32491
32491
  };
32492
- const AutoImportProviderProject = (0, autoImportProviderProject_1.createAutoImportProviderProjectStatic)(ts7, host, createLanguageService);
32492
+ const AutoImportProviderProject = (0, autoImportProviderProject_1.createAutoImportProviderProjectStatic)(ts8, host, createLanguageService);
32493
32493
  const { projectService, compilerOptions, currentDirectory } = options;
32494
32494
  function updateProjectIfDirty(project) {
32495
32495
  return project.dirty && project.updateGraph();
@@ -32653,12 +32653,12 @@ var require__4 = __commonJS({
32653
32653
  var project_1 = require_project();
32654
32654
  var projectService;
32655
32655
  var projects = /* @__PURE__ */ new Set();
32656
- function default_1(ts7, sys, host, createLanguageService, _createProject = project_1.createProject) {
32656
+ function default_1(ts8, sys, host, createLanguageService, _createProject = project_1.createProject) {
32657
32657
  const hostConfiguration = { preferences: { includePackageJsonAutoImports: "auto" } };
32658
32658
  if (!projectService) {
32659
- projectService = (0, projectService_1.createProjectService)(ts7, sys, host.getCurrentDirectory(), hostConfiguration, ts7.LanguageServiceMode.Semantic);
32659
+ projectService = (0, projectService_1.createProjectService)(ts8, sys, host.getCurrentDirectory(), hostConfiguration, ts8.LanguageServiceMode.Semantic);
32660
32660
  }
32661
- const project = _createProject(ts7, host, createLanguageService, {
32661
+ const project = _createProject(ts8, host, createLanguageService, {
32662
32662
  projectService,
32663
32663
  currentDirectory: host.getCurrentDirectory(),
32664
32664
  compilerOptions: host.getCompilationSettings()
@@ -32709,9 +32709,9 @@ var require_project2 = __commonJS({
32709
32709
  Object.defineProperty(exports2, "__esModule", { value: true });
32710
32710
  exports2.createProject = void 0;
32711
32711
  var project_1 = require_project();
32712
- function createProject(ts7, host, createLanguageService, options) {
32713
- const { createSymlinkCache, ensureTrailingDirectorySeparator } = ts7;
32714
- const project = (0, project_1.createProject)(ts7, host, createLanguageService, options);
32712
+ function createProject(ts8, host, createLanguageService, options) {
32713
+ const { createSymlinkCache, ensureTrailingDirectorySeparator } = ts8;
32714
+ const project = (0, project_1.createProject)(ts8, host, createLanguageService, options);
32715
32715
  project.getSymlinkCache = () => {
32716
32716
  if (!project.symlinks) {
32717
32717
  project.symlinks = createSymlinkCache(project.getCurrentDirectory(), project.getCanonicalFileName);
@@ -32749,8 +32749,8 @@ var require__5 = __commonJS({
32749
32749
  Object.defineProperty(exports2, "__esModule", { value: true });
32750
32750
  var _5_0_1 = require__4();
32751
32751
  var project_1 = require_project2();
32752
- function default_1(ts7, sys, host, createLanguageService) {
32753
- return (0, _5_0_1.default)(ts7, sys, host, createLanguageService, project_1.createProject);
32752
+ function default_1(ts8, sys, host, createLanguageService) {
32753
+ return (0, _5_0_1.default)(ts8, sys, host, createLanguageService, project_1.createProject);
32754
32754
  }
32755
32755
  exports2.default = default_1;
32756
32756
  }
@@ -32859,9 +32859,9 @@ var require_project3 = __commonJS({
32859
32859
  exports2.createProject = void 0;
32860
32860
  var project_1 = require_project2();
32861
32861
  var moduleSpecifierCache_1 = require_moduleSpecifierCache4();
32862
- function createProject(ts7, host, createLanguageService, options) {
32862
+ function createProject(ts8, host, createLanguageService, options) {
32863
32863
  options.createModuleSpecifierCache = moduleSpecifierCache_1.createModuleSpecifierCache;
32864
- return (0, project_1.createProject)(ts7, host, createLanguageService, options);
32864
+ return (0, project_1.createProject)(ts8, host, createLanguageService, options);
32865
32865
  }
32866
32866
  exports2.createProject = createProject;
32867
32867
  }
@@ -32874,8 +32874,8 @@ var require__6 = __commonJS({
32874
32874
  Object.defineProperty(exports2, "__esModule", { value: true });
32875
32875
  var _5_0_1 = require__4();
32876
32876
  var project_1 = require_project3();
32877
- function default_1(ts7, sys, host, createLanguageService) {
32878
- return (0, _5_0_1.default)(ts7, sys, host, createLanguageService, project_1.createProject);
32877
+ function default_1(ts8, sys, host, createLanguageService) {
32878
+ return (0, _5_0_1.default)(ts8, sys, host, createLanguageService, project_1.createProject);
32879
32879
  }
32880
32880
  exports2.default = default_1;
32881
32881
  }
@@ -32991,9 +32991,9 @@ var require_project4 = __commonJS({
32991
32991
  exports2.createProject = void 0;
32992
32992
  var project_1 = require_project2();
32993
32993
  var moduleSpecifierCache_1 = require_moduleSpecifierCache5();
32994
- function createProject(ts7, host, createLanguageService, options) {
32994
+ function createProject(ts8, host, createLanguageService, options) {
32995
32995
  options.createModuleSpecifierCache = moduleSpecifierCache_1.createModuleSpecifierCache;
32996
- return (0, project_1.createProject)(ts7, host, createLanguageService, options);
32996
+ return (0, project_1.createProject)(ts8, host, createLanguageService, options);
32997
32997
  }
32998
32998
  exports2.createProject = createProject;
32999
32999
  }
@@ -33006,8 +33006,8 @@ var require__7 = __commonJS({
33006
33006
  Object.defineProperty(exports2, "__esModule", { value: true });
33007
33007
  var _5_0_1 = require__4();
33008
33008
  var project_1 = require_project4();
33009
- function default_1(ts7, sys, host, createLanguageService) {
33010
- return (0, _5_0_1.default)(ts7, sys, host, createLanguageService, project_1.createProject);
33009
+ function default_1(ts8, sys, host, createLanguageService) {
33010
+ return (0, _5_0_1.default)(ts8, sys, host, createLanguageService, project_1.createProject);
33011
33011
  }
33012
33012
  exports2.default = default_1;
33013
33013
  }
@@ -33027,27 +33027,27 @@ var require_out = __commonJS({
33027
33027
  var _5_3_1 = require__5();
33028
33028
  var _5_5_1 = require__6();
33029
33029
  var _5_6_1 = require__7();
33030
- function createLanguageService(ts7, sys, host, createLanguageService2) {
33031
- if (semver.gte(ts7.version, "5.6.1-rc")) {
33032
- return (0, _5_6_1.default)(ts7, sys, host, createLanguageService2);
33033
- }
33034
- if (semver.gte(ts7.version, "5.5.1")) {
33035
- return (0, _5_5_1.default)(ts7, sys, host, createLanguageService2);
33036
- } else if (semver.gte(ts7.version, "5.3.0")) {
33037
- return (0, _5_3_1.default)(ts7, sys, host, createLanguageService2);
33038
- } else if (semver.gte(ts7.version, "5.0.0")) {
33039
- return (0, _5_0_1.default)(ts7, sys, host, createLanguageService2);
33040
- } else if (semver.gte(ts7.version, "4.7.0")) {
33030
+ function createLanguageService(ts8, sys, host, createLanguageService2) {
33031
+ if (semver.gte(ts8.version, "5.6.1-rc")) {
33032
+ return (0, _5_6_1.default)(ts8, sys, host, createLanguageService2);
33033
+ }
33034
+ if (semver.gte(ts8.version, "5.5.1")) {
33035
+ return (0, _5_5_1.default)(ts8, sys, host, createLanguageService2);
33036
+ } else if (semver.gte(ts8.version, "5.3.0")) {
33037
+ return (0, _5_3_1.default)(ts8, sys, host, createLanguageService2);
33038
+ } else if (semver.gte(ts8.version, "5.0.0")) {
33039
+ return (0, _5_0_1.default)(ts8, sys, host, createLanguageService2);
33040
+ } else if (semver.gte(ts8.version, "4.7.0")) {
33041
33041
  const service = createLanguageService2(host);
33042
- (0, _4_7_1.default)(ts7, host, service);
33042
+ (0, _4_7_1.default)(ts8, host, service);
33043
33043
  return { languageService: service };
33044
- } else if (semver.gte(ts7.version, "4.4.0")) {
33044
+ } else if (semver.gte(ts8.version, "4.4.0")) {
33045
33045
  const service = createLanguageService2(host);
33046
- (0, _4_4_1.default)(ts7, host, service);
33046
+ (0, _4_4_1.default)(ts8, host, service);
33047
33047
  return { languageService: service };
33048
- } else if (semver.gte(ts7.version, "4.0.0")) {
33048
+ } else if (semver.gte(ts8.version, "4.0.0")) {
33049
33049
  const service = createLanguageService2(host);
33050
- (0, _4_0_1.default)(ts7, host, service);
33050
+ (0, _4_0_1.default)(ts8, host, service);
33051
33051
  return { languageService: service };
33052
33052
  }
33053
33053
  return { languageService: createLanguageService2(host) };
@@ -33523,7 +33523,7 @@ var require_semanticTokens2 = __commonJS({
33523
33523
  exports2.register = register;
33524
33524
  exports2.convertClassificationsToSemanticTokens = convertClassificationsToSemanticTokens;
33525
33525
  var shared_1 = require_shared();
33526
- function register(ts7, ctx) {
33526
+ function register(ts8, ctx) {
33527
33527
  return (uri, document2, range, legend) => {
33528
33528
  const fileName = ctx.uriToFileName(uri);
33529
33529
  const start = range ? document2.offsetAt(range.start) : 0;
@@ -33531,7 +33531,7 @@ var require_semanticTokens2 = __commonJS({
33531
33531
  if (ctx.project.typescript?.languageServiceHost.getCancellationToken?.().isCancellationRequested()) {
33532
33532
  return;
33533
33533
  }
33534
- const response = (0, shared_1.safeCall)(() => ctx.languageService.getEncodedSemanticClassifications(fileName, { start, length }, ts7.SemanticClassificationFormat.TwentyTwenty));
33534
+ const response = (0, shared_1.safeCall)(() => ctx.languageService.getEncodedSemanticClassifications(fileName, { start, length }, ts8.SemanticClassificationFormat.TwentyTwenty));
33535
33535
  if (!response) {
33536
33536
  return;
33537
33537
  }
@@ -33840,15 +33840,15 @@ var require_semantic = __commonJS({
33840
33840
  var lspConverters_1 = require_lspConverters();
33841
33841
  var snippetForFunctionCall_1 = require_snippetForFunctionCall();
33842
33842
  var documentRegistries = [];
33843
- function getDocumentRegistry(ts7, useCaseSensitiveFileNames, currentDirectory) {
33843
+ function getDocumentRegistry(ts8, useCaseSensitiveFileNames, currentDirectory) {
33844
33844
  let documentRegistry = documentRegistries.find((item) => item[0] === useCaseSensitiveFileNames && item[1] === currentDirectory)?.[2];
33845
33845
  if (!documentRegistry) {
33846
- documentRegistry = ts7.createDocumentRegistry(useCaseSensitiveFileNames, currentDirectory);
33846
+ documentRegistry = ts8.createDocumentRegistry(useCaseSensitiveFileNames, currentDirectory);
33847
33847
  documentRegistries.push([useCaseSensitiveFileNames, currentDirectory, documentRegistry]);
33848
33848
  }
33849
33849
  return documentRegistry;
33850
33850
  }
33851
- function create(ts7, { disableAutoImportCache = false, isValidationEnabled = async (document2, context) => {
33851
+ function create(ts8, { disableAutoImportCache = false, isValidationEnabled = async (document2, context) => {
33852
33852
  return await context.env.getConfiguration?.((0, shared_1.getConfigTitle)(document2) + ".validate.enable") ?? true;
33853
33853
  }, isSuggestionsEnabled = async (document2, context) => {
33854
33854
  return await context.env.getConfiguration?.((0, shared_1.getConfigTitle)(document2) + ".suggest.enabled") ?? true;
@@ -33857,7 +33857,7 @@ var require_semantic = __commonJS({
33857
33857
  name: "typescript-semantic",
33858
33858
  capabilities: {
33859
33859
  completionProvider: {
33860
- triggerCharacters: getBasicTriggerCharacters(ts7.version),
33860
+ triggerCharacters: getBasicTriggerCharacters(ts8.version),
33861
33861
  resolveProvider: true
33862
33862
  },
33863
33863
  renameProvider: {
@@ -33934,9 +33934,9 @@ var require_semantic = __commonJS({
33934
33934
  let languageService;
33935
33935
  let created;
33936
33936
  if (disableAutoImportCache) {
33937
- languageService = ts7.createLanguageService(languageServiceHost, getDocumentRegistry(ts7, sys.useCaseSensitiveFileNames, languageServiceHost.getCurrentDirectory()));
33937
+ languageService = ts8.createLanguageService(languageServiceHost, getDocumentRegistry(ts8, sys.useCaseSensitiveFileNames, languageServiceHost.getCurrentDirectory()));
33938
33938
  } else {
33939
- created = tsWithImportCache.createLanguageService(ts7, sys, languageServiceHost, (proxiedHost) => ts7.createLanguageService(proxiedHost, getDocumentRegistry(ts7, sys.useCaseSensitiveFileNames, languageServiceHost.getCurrentDirectory())));
33939
+ created = tsWithImportCache.createLanguageService(ts8, sys, languageServiceHost, (proxiedHost) => ts8.createLanguageService(proxiedHost, getDocumentRegistry(ts8, sys.useCaseSensitiveFileNames, languageServiceHost.getCurrentDirectory())));
33940
33940
  languageService = created.languageService;
33941
33941
  }
33942
33942
  const ctx = {
@@ -33982,7 +33982,7 @@ var require_semantic = __commonJS({
33982
33982
  };
33983
33983
  const getCodeActions = codeActions.register(ctx);
33984
33984
  const doCodeActionResolve = codeActionResolve.register(ctx);
33985
- const getDocumentSemanticTokens = semanticTokens.register(ts7, ctx);
33985
+ const getDocumentSemanticTokens = semanticTokens.register(ts8, ctx);
33986
33986
  const renameInfoOptions = { allowRenameOfImportPath: true };
33987
33987
  let formattingOptions;
33988
33988
  if (created?.setPreferences && context.env.getConfiguration) {
@@ -34067,7 +34067,7 @@ var require_semantic = __commonJS({
34067
34067
  triggerKind: completeContext.triggerKind
34068
34068
  }));
34069
34069
  if (info) {
34070
- return (0, lspConverters_1.convertCompletionInfo)(ts7, info, document2, position, (tsEntry) => ({
34070
+ return (0, lspConverters_1.convertCompletionInfo)(ts8, info, document2, position, (tsEntry) => ({
34071
34071
  uri: document2.uri,
34072
34072
  fileName,
34073
34073
  offset,
@@ -34103,7 +34103,7 @@ var require_semantic = __commonJS({
34103
34103
  item.labelDetails ??= {};
34104
34104
  Object.assign(item.labelDetails, data.originalItem.labelDetails);
34105
34105
  }
34106
- (0, lspConverters_1.applyCompletionEntryDetails)(ts7, item, details, document2, ctx.fileNameToUri, ctx.getTextDocument);
34106
+ (0, lspConverters_1.applyCompletionEntryDetails)(ts8, item, details, document2, ctx.fileNameToUri, ctx.getTextDocument);
34107
34107
  const useCodeSnippetsOnMethodSuggest = await ctx.env.getConfiguration?.((0, shared_1.getConfigTitle)(document2) + ".suggest.completeFunctionCalls") ?? false;
34108
34108
  const useCodeSnippet = useCodeSnippetsOnMethodSuggest && (item.kind === 3 || item.kind === 2);
34109
34109
  if (useCodeSnippet) {
@@ -34346,7 +34346,7 @@ var require_semantic = __commonJS({
34346
34346
  if (!info) {
34347
34347
  return;
34348
34348
  }
34349
- return (0, lspConverters_1.convertQuickInfo)(ts7, info, document2, ctx.fileNameToUri, ctx.getTextDocument);
34349
+ return (0, lspConverters_1.convertQuickInfo)(ts8, info, document2, ctx.fileNameToUri, ctx.getTextDocument);
34350
34350
  },
34351
34351
  async provideImplementation(document2, position, token) {
34352
34352
  const uri = vscode_uri_1.URI.parse(document2.uri);
@@ -34508,20 +34508,20 @@ var require_semantic = __commonJS({
34508
34508
  documentation: void 0,
34509
34509
  parameters: []
34510
34510
  };
34511
- signature.label += ts7.displayPartsToString(item.prefixDisplayParts);
34511
+ signature.label += ts8.displayPartsToString(item.prefixDisplayParts);
34512
34512
  item.parameters.forEach((p, i, a) => {
34513
- const label = ts7.displayPartsToString(p.displayParts);
34513
+ const label = ts8.displayPartsToString(p.displayParts);
34514
34514
  const parameter = {
34515
34515
  label,
34516
- documentation: ts7.displayPartsToString(p.documentation)
34516
+ documentation: ts8.displayPartsToString(p.documentation)
34517
34517
  };
34518
34518
  signature.label += label;
34519
34519
  signature.parameters.push(parameter);
34520
34520
  if (i < a.length - 1) {
34521
- signature.label += ts7.displayPartsToString(item.separatorDisplayParts);
34521
+ signature.label += ts8.displayPartsToString(item.separatorDisplayParts);
34522
34522
  }
34523
34523
  });
34524
- signature.label += ts7.displayPartsToString(item.suffixDisplayParts);
34524
+ signature.label += ts8.displayPartsToString(item.suffixDisplayParts);
34525
34525
  return signature;
34526
34526
  })
34527
34527
  };
@@ -34652,11 +34652,11 @@ var require_volar_service_typescript = __commonJS({
34652
34652
  var docCommentTemplate_1 = require_docCommentTemplate();
34653
34653
  var semantic_1 = require_semantic();
34654
34654
  var syntactic_1 = require_syntactic();
34655
- function create(ts7, options) {
34655
+ function create(ts8, options) {
34656
34656
  return [
34657
- (0, semantic_1.create)(ts7, options),
34658
- (0, syntactic_1.create)(ts7, options),
34659
- (0, docCommentTemplate_1.create)(ts7),
34657
+ (0, semantic_1.create)(ts8, options),
34658
+ (0, syntactic_1.create)(ts8, options),
34659
+ (0, docCommentTemplate_1.create)(ts8),
34660
34660
  (0, directiveComment_1.create)()
34661
34661
  ];
34662
34662
  }
@@ -45328,6 +45328,7 @@ function extractFrontmatterTypes(fm) {
45328
45328
  var import_typescript6 = __toESM(require("typescript"), 1);
45329
45329
 
45330
45330
  // ../stator/src/compiler/virtual-code.ts
45331
+ var import_typescript7 = __toESM(require("typescript"), 1);
45331
45332
  var TEMPLATE_GLOBALS = ["read", "each", "when", "match", "on", "classList", "styleList"];
45332
45333
  var CLIENT_GLOBALS = [
45333
45334
  "StatorElement",
@@ -45383,16 +45384,14 @@ function toVirtualCode(source) {
45383
45384
  }
45384
45385
  function buildServerTsx(regions) {
45385
45386
  const mappings = [];
45386
- const userCode = (regions.frontmatter?.content ?? "") + regions.template.content;
45387
+ const fm = regions.frontmatter?.content ?? "";
45388
+ const fmOffset2 = regions.frontmatter?.contentOffset ?? 0;
45389
+ const userCode = fm + regions.template.content;
45387
45390
  let code = injectImports(TEMPLATE_GLOBALS, "@statorjs/stator/template", userCode) + AMBIENT_TYPE_IMPORTS + STATOR_AMBIENT;
45388
- if (regions.frontmatter?.content.trim()) {
45389
- push(
45390
- mappings,
45391
- regions.frontmatter.contentOffset,
45392
- code.length,
45393
- regions.frontmatter.content.length
45394
- );
45395
- code += `${regions.frontmatter.content}
45391
+ const { hoisted, body } = splitFrontmatter(fm, fmOffset2);
45392
+ for (const seg of hoisted) {
45393
+ push(mappings, seg.sourceOffset, code.length, seg.text.length);
45394
+ code += `${seg.text}
45396
45395
  `;
45397
45396
  }
45398
45397
  let tplOffset = regions.template.contentOffset;
@@ -45402,17 +45401,36 @@ function buildServerTsx(regions) {
45402
45401
  tplOffset += doctype[0].length;
45403
45402
  tpl = tpl.slice(doctype[0].length);
45404
45403
  }
45405
- const propsT = componentPropsType(
45406
- extractFrontmatterTypes(regions.frontmatter?.content ?? "").propsType,
45407
- regions.template.content
45408
- );
45404
+ const propsT = componentPropsType(extractFrontmatterTypes(fm).propsType, regions.template.content);
45409
45405
  code += `export default function (_props: ${propsT}) {
45410
- return (<>`;
45406
+ `;
45407
+ for (const seg of body) {
45408
+ code += " ";
45409
+ push(mappings, seg.sourceOffset, code.length, seg.text.length);
45410
+ code += `${seg.text}
45411
+ `;
45412
+ }
45413
+ code += " return (<>";
45411
45414
  push(mappings, tplOffset, code.length, tpl.length);
45412
45415
  code += tpl;
45413
45416
  code += "</>);\n}\n";
45414
45417
  return { lang: "tsx", code, mappings };
45415
45418
  }
45419
+ function splitFrontmatter(fm, fmOffset2) {
45420
+ const hoisted = [];
45421
+ const body = [];
45422
+ if (!fm.trim()) return { hoisted, body };
45423
+ const sf = import_typescript7.default.createSourceFile("fm.ts", fm, import_typescript7.default.ScriptTarget.Latest, true, import_typescript7.default.ScriptKind.TS);
45424
+ for (const stmt of sf.statements) {
45425
+ const seg = { sourceOffset: fmOffset2 + stmt.getStart(sf), text: stmt.getText(sf) };
45426
+ if (import_typescript7.default.isImportDeclaration(stmt) || import_typescript7.default.isTypeAliasDeclaration(stmt) || import_typescript7.default.isInterfaceDeclaration(stmt)) {
45427
+ hoisted.push(seg);
45428
+ } else {
45429
+ body.push(seg);
45430
+ }
45431
+ }
45432
+ return { hoisted, body };
45433
+ }
45416
45434
  function buildClientTsx(regions) {
45417
45435
  const mappings = [];
45418
45436
  const userScript = regions.scripts.map((s) => s.content).join("\n");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@statorjs/language-server",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "Volar-based language server for .stator files.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -33,7 +33,7 @@
33
33
  "volar-service-typescript": "0.0.71",
34
34
  "vscode-css-languageservice": "^6.3.0",
35
35
  "vscode-uri": "^3.0.8",
36
- "@statorjs/stator": "1.2.0"
36
+ "@statorjs/stator": "1.2.2"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "typescript": "^5.6.0"