diff --git a/.github/pr_owners.txt b/.github/pr_owners.txt index 0d0dab4f3e0..6177279468b 100644 --- a/.github/pr_owners.txt +++ b/.github/pr_owners.txt @@ -6,3 +6,8 @@ RyanCavanaugh sheetalkamat orta rbuckton +ahejlsberg +amcasey +jessetrinity +minestarks +uniqueiniquity diff --git a/package-lock.json b/package-lock.json index 6b9d323af61..c7a9440f51f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@types/minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", "dev": true }, "@types/mkdirp": { @@ -567,9 +567,9 @@ } }, "@types/mocha": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.0.3.tgz", - "integrity": "sha512-vyxR57nv8NfcU0GZu8EUXZLTbCMupIUwy95LJ6lllN+JRPG25CwMHoB1q5xKh8YKhQnHYRAn4yW2yuHbf/5xgg==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.0.4.tgz", + "integrity": "sha512-M4BwiTJjHmLq6kjON7ZoI2JMlBvpY3BYSdiP6s/qCT3jb1s9/DeJF0JELpAxiVSIxXDzfNKe+r7yedMIoLbknQ==", "dev": true }, "@types/ms": { @@ -579,9 +579,9 @@ "dev": true }, "@types/node": { - "version": "14.14.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.6.tgz", - "integrity": "sha512-6QlRuqsQ/Ox/aJEQWBEJG7A9+u7oSYl3mem/K8IzxXG/kAGbV1YPD9Bg9Zw3vyxC/YP+zONKwy8hGkSt1jxFMw==", + "version": "14.14.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.7.tgz", + "integrity": "sha512-Zw1vhUSQZYw+7u5dAwNbIA9TuTotpzY/OF7sJM9FqPOF3SPjKnxrjoTktXDZgUjybf4cWVBP7O8wvKdSaGHweg==", "dev": true }, "@types/node-fetch": { @@ -1346,9 +1346,9 @@ } }, "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.0.tgz", + "integrity": "sha512-Jrdy04F2EKcNggUDfubMUPNAZg2vMquLQSm8sKLYJvz40ClFL1S8GKyDshGkNsbNNE5Z+fQavzU7nSK1I9JUGA==", "dev": true }, "before-after-hook": { @@ -1531,17 +1531,26 @@ }, "dependencies": { "resolve": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", - "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", "dev": true, "requires": { - "is-core-module": "^2.0.0", + "is-core-module": "^2.1.0", "path-parse": "^1.0.6" } } } }, + "is-core-module": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", + "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", @@ -5598,13 +5607,22 @@ "resolve": "^1.17.0" } }, - "resolve": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", - "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "is-core-module": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", + "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", "dev": true, "requires": { - "is-core-module": "^2.0.0", + "has": "^1.0.3" + } + }, + "resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "dev": true, + "requires": { + "is-core-module": "^2.1.0", "path-parse": "^1.0.6" } }, diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 8d802cef0c3..36eb5c65efc 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -2800,7 +2800,7 @@ namespace ts { const resolved = getExternalModuleMember(root, commonJSPropertyAccess || node, dontResolveAlias); const name = node.propertyName || node.name; if (commonJSPropertyAccess && resolved && isIdentifier(name)) { - return getPropertyOfType(getTypeOfSymbol(resolved), name.escapedText); + return resolveSymbol(getPropertyOfType(getTypeOfSymbol(resolved), name.escapedText), dontResolveAlias); } markSymbolOfAliasDeclarationIfTypeOnly(node, /*immediateTarget*/ undefined, resolved, /*overwriteEmpty*/ false); return resolved; diff --git a/src/compiler/moduleSpecifiers.ts b/src/compiler/moduleSpecifiers.ts index 8b87c5cd102..65b047162c7 100644 --- a/src/compiler/moduleSpecifiers.ts +++ b/src/compiler/moduleSpecifiers.ts @@ -1,7 +1,7 @@ // Used by importFixes, getEditsForFileRename, and declaration emit to synthesize import module specifiers. /* @internal */ namespace ts.moduleSpecifiers { - const enum RelativePreference { Relative, NonRelative, Auto } + const enum RelativePreference { Relative, NonRelative, Shortest, ExternalNonRelative } // See UserPreferences#importPathEnding const enum Ending { Minimal, Index, JsExtension } @@ -13,7 +13,11 @@ namespace ts.moduleSpecifiers { function getPreferences({ importModuleSpecifierPreference, importModuleSpecifierEnding }: UserPreferences, compilerOptions: CompilerOptions, importingSourceFile: SourceFile): Preferences { return { - relativePreference: importModuleSpecifierPreference === "relative" ? RelativePreference.Relative : importModuleSpecifierPreference === "non-relative" ? RelativePreference.NonRelative : RelativePreference.Auto, + relativePreference: + importModuleSpecifierPreference === "relative" ? RelativePreference.Relative : + importModuleSpecifierPreference === "non-relative" ? RelativePreference.NonRelative : + importModuleSpecifierPreference === "project-relative" ? RelativePreference.ExternalNonRelative : + RelativePreference.Shortest, ending: getEnding(), }; function getEnding(): Ending { @@ -147,17 +151,19 @@ namespace ts.moduleSpecifiers { interface Info { readonly getCanonicalFileName: GetCanonicalFileName; + readonly importingSourceFileName: Path readonly sourceDirectory: Path; } // importingSourceFileName is separate because getEditsForFileRename may need to specify an updated path function getInfo(importingSourceFileName: Path, host: ModuleSpecifierResolutionHost): Info { const getCanonicalFileName = createGetCanonicalFileName(host.useCaseSensitiveFileNames ? host.useCaseSensitiveFileNames() : true); const sourceDirectory = getDirectoryPath(importingSourceFileName); - return { getCanonicalFileName, sourceDirectory }; + return { getCanonicalFileName, importingSourceFileName, sourceDirectory }; } - function getLocalModuleSpecifier(moduleFileName: string, { getCanonicalFileName, sourceDirectory }: Info, compilerOptions: CompilerOptions, host: ModuleSpecifierResolutionHost, { ending, relativePreference }: Preferences): string { + function getLocalModuleSpecifier(moduleFileName: string, info: Info, compilerOptions: CompilerOptions, host: ModuleSpecifierResolutionHost, { ending, relativePreference }: Preferences): string { const { baseUrl, paths, rootDirs, bundledPackageName } = compilerOptions; + const { sourceDirectory, getCanonicalFileName } = info; const relativePath = rootDirs && tryGetModuleNameFromRootDirs(rootDirs, moduleFileName, sourceDirectory, getCanonicalFileName, ending, compilerOptions) || removeExtensionAndIndexPostFix(ensurePathIsNonModuleName(getRelativePathFromDirectory(sourceDirectory, moduleFileName, getCanonicalFileName)), ending, compilerOptions); @@ -183,7 +189,42 @@ namespace ts.moduleSpecifiers { return nonRelative; } - if (relativePreference !== RelativePreference.Auto) Debug.assertNever(relativePreference); + if (relativePreference === RelativePreference.ExternalNonRelative) { + const projectDirectory = host.getCurrentDirectory(); + const modulePath = toPath(moduleFileName, projectDirectory, getCanonicalFileName); + const sourceIsInternal = startsWith(sourceDirectory, projectDirectory); + const targetIsInternal = startsWith(modulePath, projectDirectory); + if (sourceIsInternal && !targetIsInternal || !sourceIsInternal && targetIsInternal) { + // 1. The import path crosses the boundary of the tsconfig.json-containing directory. + // + // src/ + // tsconfig.json + // index.ts ------- + // lib/ | (path crosses tsconfig.json) + // imported.ts <--- + // + return nonRelative; + } + + const nearestTargetPackageJson = getNearestAncestorDirectoryWithPackageJson(host, getDirectoryPath(modulePath)); + const nearestSourcePackageJson = getNearestAncestorDirectoryWithPackageJson(host, sourceDirectory); + if (nearestSourcePackageJson !== nearestTargetPackageJson) { + // 2. The importing and imported files are part of different packages. + // + // packages/a/ + // package.json + // index.ts -------- + // packages/b/ | (path crosses package.json) + // package.json | + // component.ts <--- + // + return nonRelative; + } + + return relativePath; + } + + if (relativePreference !== RelativePreference.Shortest) Debug.assertNever(relativePreference); // Prefer a relative import over a baseUrl import if it has fewer components. return isPathRelativeToParent(nonRelative) || countPathComponents(relativePath) < countPathComponents(nonRelative) ? relativePath : nonRelative; @@ -213,6 +254,15 @@ namespace ts.moduleSpecifiers { ); } + function getNearestAncestorDirectoryWithPackageJson(host: ModuleSpecifierResolutionHost, fileName: string) { + if (host.getNearestAncestorDirectoryWithPackageJson) { + return host.getNearestAncestorDirectoryWithPackageJson(fileName); + } + return !!forEachAncestorDirectory(fileName, directory => { + return host.fileExists(combinePaths(directory, "package.json")) ? true : undefined; + }); + } + export function forEachFileNameOfModule( importingFileName: string, importedFileName: string, diff --git a/src/compiler/types.ts b/src/compiler/types.ts index 0ba174ff9ea..8fc3a1457cd 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -7858,6 +7858,7 @@ namespace ts { realpath?(path: string): string; getSymlinkCache?(): SymlinkCache; getGlobalTypingsCacheLocation?(): string | undefined; + getNearestAncestorDirectoryWithPackageJson?(fileName: string, rootDir?: string): string | undefined; getSourceFiles(): readonly SourceFile[]; readonly redirectTargetsMap: RedirectTargetsMap; @@ -8159,7 +8160,7 @@ namespace ts { readonly includeCompletionsForModuleExports?: boolean; readonly includeAutomaticOptionalChainCompletions?: boolean; readonly includeCompletionsWithInsertText?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; /** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */ readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js"; readonly allowTextChangesInNewFiles?: boolean; diff --git a/src/harness/fourslashImpl.ts b/src/harness/fourslashImpl.ts index 41048899e0f..6af8cea9d03 100644 --- a/src/harness/fourslashImpl.ts +++ b/src/harness/fourslashImpl.ts @@ -2937,6 +2937,10 @@ namespace FourSlash { } const range = ts.firstOrUndefined(ranges); + if (preferences) { + this.configure(preferences); + } + const codeFixes = this.getCodeFixes(fileName, errorCode, preferences).filter(f => f.fixName === ts.codefix.importFixName); if (codeFixes.length === 0) { diff --git a/src/loc/lcl/chs/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/chs/diagnosticMessages/diagnosticMessages.generated.json.lcl index 48125d5aa08..f20a5f173ec 100644 --- a/src/loc/lcl/chs/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/chs/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4101,6 +4101,9 @@ + + + @@ -6177,6 +6180,9 @@ + + + diff --git a/src/loc/lcl/cht/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/cht/diagnosticMessages/diagnosticMessages.generated.json.lcl index 992dbef6158..e0660a7c0ad 100644 --- a/src/loc/lcl/cht/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/cht/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4101,6 +4101,9 @@ + + + @@ -6177,6 +6180,9 @@ + + + diff --git a/src/loc/lcl/csy/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/csy/diagnosticMessages/diagnosticMessages.generated.json.lcl index e52092797f7..5e2d04704ea 100644 --- a/src/loc/lcl/csy/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/csy/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4110,6 +4110,9 @@ + + + @@ -6186,6 +6189,9 @@ + + + diff --git a/src/loc/lcl/deu/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/deu/diagnosticMessages/diagnosticMessages.generated.json.lcl index 1dc4318cfe9..4a9def9b9d9 100644 --- a/src/loc/lcl/deu/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/deu/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4098,6 +4098,9 @@ + + + @@ -6174,6 +6177,9 @@ + + + diff --git a/src/loc/lcl/esn/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/esn/diagnosticMessages/diagnosticMessages.generated.json.lcl index 9b355e7da7c..866ff343c48 100644 --- a/src/loc/lcl/esn/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/esn/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4113,6 +4113,9 @@ + + + @@ -6189,6 +6192,9 @@ + + + diff --git a/src/loc/lcl/fra/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/fra/diagnosticMessages/diagnosticMessages.generated.json.lcl index d195e89a2a3..2f126177c7f 100644 --- a/src/loc/lcl/fra/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/fra/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4113,6 +4113,9 @@ + + + @@ -6189,6 +6192,9 @@ + + + diff --git a/src/loc/lcl/ita/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/ita/diagnosticMessages/diagnosticMessages.generated.json.lcl index 6be2b1538d0..010b77a9d15 100644 --- a/src/loc/lcl/ita/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/ita/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4101,6 +4101,9 @@ + + + @@ -6177,6 +6180,9 @@ + + + diff --git a/src/loc/lcl/jpn/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/jpn/diagnosticMessages/diagnosticMessages.generated.json.lcl index fda644835a9..6c241c4091f 100644 --- a/src/loc/lcl/jpn/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/jpn/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4101,6 +4101,9 @@ + + + @@ -6177,6 +6180,9 @@ + + + diff --git a/src/loc/lcl/kor/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/kor/diagnosticMessages/diagnosticMessages.generated.json.lcl index c96ed222b28..563824f9487 100644 --- a/src/loc/lcl/kor/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/kor/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4101,6 +4101,9 @@ + + + @@ -6177,6 +6180,9 @@ + + + diff --git a/src/loc/lcl/plk/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/plk/diagnosticMessages/diagnosticMessages.generated.json.lcl index b809fcba6bb..df5839e903a 100644 --- a/src/loc/lcl/plk/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/plk/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4091,6 +4091,9 @@ + + + @@ -6164,6 +6167,15 @@ + + + + + + + + + diff --git a/src/loc/lcl/ptb/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/ptb/diagnosticMessages/diagnosticMessages.generated.json.lcl index 13a9ba44f91..d00ea89aa69 100644 --- a/src/loc/lcl/ptb/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/ptb/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4094,6 +4094,9 @@ + + + @@ -6170,6 +6173,9 @@ + + + diff --git a/src/loc/lcl/rus/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/rus/diagnosticMessages/diagnosticMessages.generated.json.lcl index 1cb39a9f32d..80d47c5715d 100644 --- a/src/loc/lcl/rus/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/rus/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4100,6 +4100,9 @@ + + + @@ -6176,6 +6179,9 @@ + + + diff --git a/src/loc/lcl/trk/diagnosticMessages/diagnosticMessages.generated.json.lcl b/src/loc/lcl/trk/diagnosticMessages/diagnosticMessages.generated.json.lcl index b3cdc07650b..2d78ad80913 100644 --- a/src/loc/lcl/trk/diagnosticMessages/diagnosticMessages.generated.json.lcl +++ b/src/loc/lcl/trk/diagnosticMessages/diagnosticMessages.generated.json.lcl @@ -4094,6 +4094,9 @@ + + + @@ -6170,6 +6173,9 @@ + + + diff --git a/src/server/editorServices.ts b/src/server/editorServices.ts index a2fe4bd8972..7eabfc895f9 100644 --- a/src/server/editorServices.ts +++ b/src/server/editorServices.ts @@ -3878,7 +3878,7 @@ namespace ts.server { const info = packageJsonCache.getInDirectory(directory); if (info) result.push(info); } - if (rootPath && rootPath === this.toPath(directory)) { + if (rootPath && rootPath === directory) { return true; } }; @@ -3887,6 +3887,20 @@ namespace ts.server { return result; } + /*@internal*/ + getNearestAncestorDirectoryWithPackageJson(fileName: string): string | undefined { + return forEachAncestorDirectory(fileName, directory => { + switch (this.packageJsonCache.directoryHasPackageJson(this.toPath(directory))) { + case Ternary.True: return directory; + case Ternary.False: return undefined; + case Ternary.Maybe: + return this.host.fileExists(combinePaths(directory, "package.json")) + ? directory + : undefined; + } + }); + } + /*@internal*/ private watchPackageJsonFile(path: Path) { const watchers = this.packageJsonFilesMap || (this.packageJsonFilesMap = new Map()); diff --git a/src/server/project.ts b/src/server/project.ts index 6e7de6af2dc..db704b7dfa8 100644 --- a/src/server/project.ts +++ b/src/server/project.ts @@ -1651,6 +1651,11 @@ namespace ts.server { return this.projectService.getPackageJsonsVisibleToFile(fileName, rootDir); } + /*@internal*/ + getNearestAncestorDirectoryWithPackageJson(fileName: string): string | undefined { + return this.projectService.getNearestAncestorDirectoryWithPackageJson(fileName); + } + /*@internal*/ getPackageJsonsForAutoImport(rootDir?: string): readonly PackageJsonInfo[] { const packageJsons = this.getPackageJsonsVisibleToFile(combinePaths(this.currentDirectory, inferredTypesContainingFile), rootDir); @@ -1994,6 +1999,10 @@ namespace ts.server { return super.updateGraph(); } + hasRoots() { + return !!this.rootFileNames?.length; + } + markAsDirty() { this.rootFileNames = undefined; super.markAsDirty(); diff --git a/src/server/protocol.ts b/src/server/protocol.ts index 54eddf818ff..1f77bbfd7eb 100644 --- a/src/server/protocol.ts +++ b/src/server/protocol.ts @@ -3231,7 +3231,7 @@ namespace ts.server.protocol { * values, with insertion text to replace preceding `.` tokens with `?.`. */ readonly includeAutomaticOptionalChainCompletions?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; /** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */ readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js"; readonly allowTextChangesInNewFiles?: boolean; diff --git a/src/services/types.ts b/src/services/types.ts index 7fb1166eb19..bc7d7328a70 100644 --- a/src/services/types.ts +++ b/src/services/types.ts @@ -301,6 +301,8 @@ namespace ts { /* @internal */ getPackageJsonsVisibleToFile?(fileName: string, rootDir?: string): readonly PackageJsonInfo[]; /* @internal */ + getNearestAncestorDirectoryWithPackageJson?(fileName: string): string | undefined; + /* @internal */ getPackageJsonsForAutoImport?(rootDir?: string): readonly PackageJsonInfo[]; /* @internal */ getImportSuggestionsCache?(): Completions.ImportSuggestionsForFileCache; diff --git a/src/services/utilities.ts b/src/services/utilities.ts index bececaaa4f4..ead7655e469 100644 --- a/src/services/utilities.ts +++ b/src/services/utilities.ts @@ -1808,7 +1808,8 @@ namespace ts { redirectTargetsMap: program.redirectTargetsMap, getProjectReferenceRedirect: fileName => program.getProjectReferenceRedirect(fileName), isSourceOfProjectReferenceRedirect: fileName => program.isSourceOfProjectReferenceRedirect(fileName), - getCompilerOptions: () => program.getCompilerOptions() + getCompilerOptions: () => program.getCompilerOptions(), + getNearestAncestorDirectoryWithPackageJson: maybeBind(host, host.getNearestAncestorDirectoryWithPackageJson), }; } diff --git a/src/testRunner/parallel/worker.ts b/src/testRunner/parallel/worker.ts index dd8add3050d..21570ab3e1e 100644 --- a/src/testRunner/parallel/worker.ts +++ b/src/testRunner/parallel/worker.ts @@ -210,12 +210,10 @@ namespace Harness.Parallel.Worker { const passes: TestInfo[] = []; const start = +new Date(); const runner = new Mocha.Runner(suite, /*delay*/ false); - const uncaught = (err: any) => runner.uncaught(err); runner .on("start", () => { unhookUncaughtExceptions(); // turn off global uncaught handling - process.on("unhandledRejection", uncaught); // turn on unhandled rejection handling (not currently handled in mocha) }) .on("pass", (test: Mocha.Test) => { passes.push({ name: test.titlePath() }); @@ -224,8 +222,8 @@ namespace Harness.Parallel.Worker { errors.push({ name: test.titlePath(), error: err.message, stack: err.stack }); }) .on("end", () => { - process.removeListener("unhandledRejection", uncaught); hookUncaughtExceptions(); + runner.dispose(); }) .run(() => { fn({ task, errors, passes, passing: passes.length, duration: +new Date() - start }); diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 0d780a2d477..cb10f5df5f8 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -3866,7 +3866,7 @@ declare namespace ts { readonly includeCompletionsForModuleExports?: boolean; readonly includeAutomaticOptionalChainCompletions?: boolean; readonly includeCompletionsWithInsertText?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; /** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */ readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js"; readonly allowTextChangesInNewFiles?: boolean; @@ -9004,7 +9004,7 @@ declare namespace ts.server.protocol { * values, with insertion text to replace preceding `.` tokens with `?.`. */ readonly includeAutomaticOptionalChainCompletions?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; /** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */ readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js"; readonly allowTextChangesInNewFiles?: boolean; @@ -9387,6 +9387,7 @@ declare namespace ts.server { private rootFileNames; isOrphan(): boolean; updateGraph(): boolean; + hasRoots(): boolean; markAsDirty(): void; getScriptFileNames(): string[]; getLanguageService(): never; diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index 5e9b51a30b8..502fb39b697 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -3866,7 +3866,7 @@ declare namespace ts { readonly includeCompletionsForModuleExports?: boolean; readonly includeAutomaticOptionalChainCompletions?: boolean; readonly includeCompletionsWithInsertText?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; /** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */ readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js"; readonly allowTextChangesInNewFiles?: boolean; diff --git a/tests/baselines/reference/commonJSReexport.symbols b/tests/baselines/reference/commonJSReexport.symbols new file mode 100644 index 00000000000..7b31548415f --- /dev/null +++ b/tests/baselines/reference/commonJSReexport.symbols @@ -0,0 +1,41 @@ +=== tests/cases/conformance/salsa/main.js === +const { hardline } = require('./second').nested; +>hardline : Symbol(hardline, Decl(main.js, 0, 7)) +>require('./second').nested : Symbol(nested, Decl(second.js, 0, 18)) +>require : Symbol(require) +>'./second' : Symbol("tests/cases/conformance/salsa/second", Decl(second.js, 0, 0)) +>nested : Symbol(nested, Decl(second.js, 0, 18)) + +hardline +>hardline : Symbol(hardline, Decl(main.js, 0, 7)) + +=== tests/cases/conformance/salsa/first.js === +// #41422, based on prettier's exports + +const hardline = { type: "hard" } +>hardline : Symbol(hardline, Decl(first.js, 2, 5)) +>type : Symbol(type, Decl(first.js, 2, 18)) + +module.exports = { +>module.exports : Symbol("tests/cases/conformance/salsa/first", Decl(first.js, 0, 0)) +>module : Symbol(module, Decl(first.js, 2, 33)) +>exports : Symbol("tests/cases/conformance/salsa/first", Decl(first.js, 0, 0)) + + hardline +>hardline : Symbol(hardline, Decl(first.js, 3, 18)) +} + + +=== tests/cases/conformance/salsa/second.js === +module.exports = { +>module.exports : Symbol("tests/cases/conformance/salsa/second", Decl(second.js, 0, 0)) +>module : Symbol(export=, Decl(second.js, 0, 0)) +>exports : Symbol(export=, Decl(second.js, 0, 0)) + + nested: require('./first') +>nested : Symbol(nested, Decl(second.js, 0, 18)) +>require : Symbol(require) +>'./first' : Symbol("tests/cases/conformance/salsa/first", Decl(first.js, 0, 0)) + +}; + diff --git a/tests/baselines/reference/commonJSReexport.types b/tests/baselines/reference/commonJSReexport.types new file mode 100644 index 00000000000..84e98c4fea0 --- /dev/null +++ b/tests/baselines/reference/commonJSReexport.types @@ -0,0 +1,49 @@ +=== tests/cases/conformance/salsa/main.js === +const { hardline } = require('./second').nested; +>hardline : { type: string; } +>require('./second').nested : typeof import("tests/cases/conformance/salsa/first") +>require('./second') : { nested: typeof import("tests/cases/conformance/salsa/first"); } +>require : any +>'./second' : "./second" +>nested : typeof import("tests/cases/conformance/salsa/first") + +hardline +>hardline : { type: string; } + +=== tests/cases/conformance/salsa/first.js === +// #41422, based on prettier's exports + +const hardline = { type: "hard" } +>hardline : { type: string; } +>{ type: "hard" } : { type: string; } +>type : string +>"hard" : "hard" + +module.exports = { +>module.exports = { hardline} : typeof import("tests/cases/conformance/salsa/first") +>module.exports : typeof import("tests/cases/conformance/salsa/first") +>module : { "\"tests/cases/conformance/salsa/first\"": typeof import("tests/cases/conformance/salsa/first"); } +>exports : typeof import("tests/cases/conformance/salsa/first") +>{ hardline} : { hardline: { type: string; }; } + + hardline +>hardline : { type: string; } +} + + +=== tests/cases/conformance/salsa/second.js === +module.exports = { +>module.exports = { nested: require('./first')} : { nested: typeof import("tests/cases/conformance/salsa/first"); } +>module.exports : { nested: typeof import("tests/cases/conformance/salsa/first"); } +>module : { "\"tests/cases/conformance/salsa/second\"": { nested: typeof import("tests/cases/conformance/salsa/first"); }; } +>exports : { nested: typeof import("tests/cases/conformance/salsa/first"); } +>{ nested: require('./first')} : { nested: typeof import("tests/cases/conformance/salsa/first"); } + + nested: require('./first') +>nested : typeof import("tests/cases/conformance/salsa/first") +>require('./first') : typeof import("tests/cases/conformance/salsa/first") +>require : any +>'./first' : "./first" + +}; + diff --git a/tests/baselines/reference/docker/azure-sdk.log b/tests/baselines/reference/docker/azure-sdk.log index cb27589545c..46b6d2421c9 100644 --- a/tests/baselines/reference/docker/azure-sdk.log +++ b/tests/baselines/reference/docker/azure-sdk.log @@ -10,8 +10,9 @@ BLOCKED (51) @azure/abort-controller @azure/core-auth @azure/logger -@azure/core-asynciterator-polyfill @azure/core-http +@azure/core-asynciterator-polyfill +@azure/identity @azure/communication-common @azure/core-amqp @azure/core-lro @@ -41,7 +42,6 @@ BLOCKED (51) @azure/digital-twins-core @azure/eventgrid @azure/eventhubs-checkpointstore-blob -@azure/identity @azure/keyvault-admin @azure/keyvault-certificates @azure/keyvault-common @@ -117,13 +117,13 @@ XX of XX: [@azure/data-tables] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/digital-twins-core] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/eventgrid] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/identity] blocked by [@azure/eslint-plugin-azure-sdk]! -XX of XX: [@azure/keyvault-common] blocked by [@azure/eslint-plugin-azure-sdk]! -XX of XX: [@azure/monitor-opentelemetry-exporter] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/schema-registry] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/schema-registry-avro] blocked by [@azure/eslint-plugin-azure-sdk]! +XX of XX: [@azure/storage-queue] blocked by [@azure/eslint-plugin-azure-sdk]! +XX of XX: [@azure/keyvault-common] blocked by [@azure/eslint-plugin-azure-sdk]! +XX of XX: [@azure/monitor-opentelemetry-exporter] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/search-documents] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/storage-file-share] blocked by [@azure/eslint-plugin-azure-sdk]! -XX of XX: [@azure/storage-queue] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/template] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/test-utils-perfstress] blocked by [@azure/eslint-plugin-azure-sdk]! XX of XX: [@azure/test-utils-recorder] blocked by [@azure/eslint-plugin-azure-sdk]! diff --git a/tests/baselines/reference/docker/office-ui-fabric.log b/tests/baselines/reference/docker/office-ui-fabric.log index 2ff58140c82..e7243afc220 100644 --- a/tests/baselines/reference/docker/office-ui-fabric.log +++ b/tests/baselines/reference/docker/office-ui-fabric.log @@ -174,6 +174,13 @@ Standard output: @fluentui/react-bindings: yarn run vX.X.X @fluentui/react-bindings: $ /office-ui-fabric-react/node_modules/.bin/just ts @fluentui/react-bindings: Done in ?s. +@fluentui/react-shared-contexts: yarn run vX.X.X +@fluentui/react-shared-contexts: $ just-scripts ts +@fluentui/react-shared-contexts: [XX:XX:XX XM] ■ Running /office-ui-fabric-react/node_modules/typescript/lib/tsc.js with /office-ui-fabric-react/packages/react-shared-contexts/tsconfig.json +@fluentui/react-shared-contexts: [XX:XX:XX XM] ■ Executing: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-shared-contexts/tsconfig.json" +@fluentui/react-shared-contexts: [XX:XX:XX XM] ■ Running /office-ui-fabric-react/node_modules/typescript/lib/tsc.js with /office-ui-fabric-react/packages/react-shared-contexts/tsconfig.json +@fluentui/react-shared-contexts: [XX:XX:XX XM] ■ Executing: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-shared-contexts/tsconfig.json" +@fluentui/react-shared-contexts: Done in ?s. @fluentui/react-window-provider: yarn run vX.X.X @fluentui/react-window-provider: $ just-scripts ts @fluentui/react-window-provider: [XX:XX:XX XM] ■ Running /office-ui-fabric-react/node_modules/typescript/lib/tsc.js with /office-ui-fabric-react/packages/react-window-provider/tsconfig.json @@ -207,7 +214,7 @@ Standard output: @fluentui/react-focus: [XX:XX:XX XM] ■ Executing: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-focus/tsconfig.json" @fluentui/react-focus: [XX:XX:XX XM] ■ Running /office-ui-fabric-react/node_modules/typescript/lib/tsc.js with /office-ui-fabric-react/packages/react-focus/tsconfig.json @fluentui/react-focus: [XX:XX:XX XM] ■ Executing: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-focus/tsconfig.json" -@fluentui/react-focus: Done in ?s. +@fluentui/react-focus: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. @fluentui/react-hooks: yarn run vX.X.X @fluentui/react-hooks: $ just-scripts ts @fluentui/react-hooks: [XX:XX:XX XM] ■ Running /office-ui-fabric-react/node_modules/typescript/lib/tsc.js with /office-ui-fabric-react/packages/react-hooks/tsconfig.json @@ -590,20 +597,7 @@ Standard error: @fluentui/scripts: at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5) @fluentui/scripts: at Process.callbackTrampoline (internal/async_hooks.js:126:14) @fluentui/scripts: [XX:XX:XX XM] x stdout: -@fluentui/scripts: [XX:XX:XX XM] x create-package/plopfile.ts:23:5 - error TS2322: Type 'Question>[]' is not assignable to type 'Question[]'. -@fluentui/scripts: Type 'Question>' is not assignable to type 'Question'. -@fluentui/scripts: Types of property 'message' are incompatible. -@fluentui/scripts: Type 'DynamicQuestionProperty, Partial>' is not assignable to type 'string | ((answers: Answers) => string)'. -@fluentui/scripts: Type 'Promise' is not assignable to type 'string | ((answers: Answers) => string)'. -@fluentui/scripts: Type 'Promise' is not assignable to type '(answers: Answers) => string'. -@fluentui/scripts: Type 'Promise' provides no match for the signature '(answers: Answers): string'. -@fluentui/scripts: 23 prompts: [ -@fluentui/scripts: ~~~~~~~ -@fluentui/scripts: ../node_modules/node-plop/index.d.ts:126:3 -@fluentui/scripts: 126 prompts: inquirer.Question[]; -@fluentui/scripts: ~~~~~~~ -@fluentui/scripts: The expected type comes from property 'prompts' which is declared here on type 'PlopGenerator' -@fluentui/scripts: gulp/plugins/gulp-component-menu-behaviors.ts:1:38 - error TS2307: Cannot find module '@fluentui/a11y-testing' or its corresponding type declarations. +@fluentui/scripts: [XX:XX:XX XM] x gulp/plugins/gulp-component-menu-behaviors.ts:1:38 - error TS2307: Cannot find module '@fluentui/a11y-testing' or its corresponding type declarations. @fluentui/scripts: 1 import * as behaviorDefinitions from '@fluentui/a11y-testing'; @fluentui/scripts: ~~~~~~~~~~~~~~~~~~~~~~~~ @fluentui/scripts: gulp/plugins/util/getComponentInfo.ts:145:9 - error TS2322: Type 'Tag[]' is not assignable to type '{ title: string; description: string; type: null; name: string; }[]'. @@ -659,7 +653,7 @@ Standard error: @fluentui/scripts: update-package-versions.js:47:12 - error TS1250: Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. @fluentui/scripts: 47 function updateDependencies(deps) { @fluentui/scripts: ~~~~~~~~~~~~~~~~~~ -@fluentui/scripts: Found 13 errors. +@fluentui/scripts: Found 12 errors. @fluentui/scripts: [XX:XX:XX XM] x ------------------------------------ @fluentui/scripts: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/scripts: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @@ -684,6 +678,7 @@ Standard error: @fluentui/webpack-utilities: Found 1 error. @fluentui/webpack-utilities: [XX:XX:XX XM] x ------------------------------------ @fluentui/webpack-utilities: [XX:XX:XX XM] x Error previously detected. See above for error messages. +@fluentui/webpack-utilities: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/webpack-utilities: error Command failed with exit code 1. @fluentui/docs-components: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/docs-components: [XX:XX:XX XM] x Command not defined: ts @@ -703,9 +698,9 @@ Standard error: @fluentui/styles: [XX:XX:XX XM] x Command not defined: ts @fluentui/accessibility: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/accessibility: [XX:XX:XX XM] x Command not defined: ts -@fluentui/merge-styles: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/merge-styles: [XX:XX:XX XM] x Error detected while running '_wrapFunction' @fluentui/merge-styles: [XX:XX:XX XM] x ------------------------------------ -@fluentui/merge-styles: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/merge-styles/tsconfig.json" +@fluentui/merge-styles: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/merge-styles/tsconfig.json" @fluentui/merge-styles: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/merge-styles: at ChildProcess.emit (events.js:314:20) @fluentui/merge-styles: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -722,7 +717,7 @@ Standard error: @fluentui/merge-styles: Found 2 errors. @fluentui/merge-styles: [XX:XX:XX XM] x ------------------------------------ @fluentui/merge-styles: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/merge-styles: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/merge-styles: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/merge-styles: error Command failed with exit code 1. @fluentui/react-northstar-styles-renderer: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/react-northstar-styles-renderer: [XX:XX:XX XM] x Command not defined: ts @@ -745,9 +740,15 @@ Standard error: @fluentui/utilities: [XX:XX:XX XM] x src/AutoScroll.ts:143:14 - error TS2790: The operand of a 'delete' operator must be optional. @fluentui/utilities: 143 delete this._timeoutId; @fluentui/utilities: ~~~~~~~~~~~~~~~ +@fluentui/utilities: src/appendFunction.ts:13:42 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/utilities: 13 functions.forEach((f: () => void) => f && f.apply(parent, args)); +@fluentui/utilities: ~ @fluentui/utilities: src/dom/getRect.ts:19:16 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? @fluentui/utilities: 19 } else if ((element as HTMLElement).getBoundingClientRect) { @fluentui/utilities: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +@fluentui/utilities: src/memoize.ts:97:23 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/utilities: 97 if (stylesheet && stylesheet.onReset) { +@fluentui/utilities: ~~~~~~~~~~~~~~~~~~ @fluentui/utilities: src/object.ts:9:11 - error TS2339: Property 'hasOwnProperty' does not exist on type 'TA'. @fluentui/utilities: 9 if (a.hasOwnProperty(propName)) { @fluentui/utilities: ~~~~~~~~~~~~~~ @@ -763,7 +764,7 @@ Standard error: @fluentui/utilities: src/object.ts:17:14 - error TS2339: Property 'hasOwnProperty' does not exist on type 'TA'. @fluentui/utilities: 17 if (!a.hasOwnProperty(propName)) { @fluentui/utilities: ~~~~~~~~~~~~~~ -@fluentui/utilities: Found 7 errors. +@fluentui/utilities: Found 9 errors. @fluentui/utilities: [XX:XX:XX XM] x ------------------------------------ @fluentui/utilities: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/utilities: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @@ -772,6 +773,24 @@ Standard error: @fluentui/react-icons-northstar: [XX:XX:XX XM] x Command not defined: ts @fluentui/react-telemetry: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/react-telemetry: [XX:XX:XX XM] x Command not defined: ts +@fluentui/react-focus: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/react-focus: [XX:XX:XX XM] x ------------------------------------ +@fluentui/react-focus: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-focus/tsconfig.json" +@fluentui/react-focus: at ChildProcess.exithandler (child_process.js:308:12) +@fluentui/react-focus: at ChildProcess.emit (events.js:314:20) +@fluentui/react-focus: at ChildProcess.EventEmitter.emit (domain.js:506:15) +@fluentui/react-focus: at maybeClose (internal/child_process.js:1021:16) +@fluentui/react-focus: at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5) +@fluentui/react-focus: at Process.callbackTrampoline (internal/async_hooks.js:126:14) +@fluentui/react-focus: [XX:XX:XX XM] x stdout: +@fluentui/react-focus: [XX:XX:XX XM] x src/components/FocusZone/FocusZone.tsx:1255:13 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react-focus: 1255 if (child.getAttribute && child.getAttribute(IS_FOCUSABLE_ATTRIBUTE) === 'false') { +@fluentui/react-focus: ~~~~~~~~~~~~~~~~~~ +@fluentui/react-focus: Found 1 error. +@fluentui/react-focus: [XX:XX:XX XM] x ------------------------------------ +@fluentui/react-focus: [XX:XX:XX XM] x Error previously detected. See above for error messages. +@fluentui/react-focus: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/react-focus: error Command failed with exit code 1. @fluentui/react-icons-mdl2: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-icons-mdl2: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-icons-mdl2: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-icons-mdl2/tsconfig.json" @@ -800,9 +819,9 @@ Standard error: @fluentui/local-sandbox: [XX:XX:XX XM] x Command not defined: ts @fluentui/projects-test: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/projects-test: [XX:XX:XX XM] x Command not defined: ts -@fluentui/foundation-legacy: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/foundation-legacy: [XX:XX:XX XM] x Error detected while running '_wrapFunction' @fluentui/foundation-legacy: [XX:XX:XX XM] x ------------------------------------ -@fluentui/foundation-legacy: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/foundation-legacy/tsconfig.json" +@fluentui/foundation-legacy: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/foundation-legacy/tsconfig.json" @fluentui/foundation-legacy: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/foundation-legacy: at ChildProcess.emit (events.js:314:20) @fluentui/foundation-legacy: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -825,11 +844,11 @@ Standard error: @fluentui/foundation-legacy: Found 1 error. @fluentui/foundation-legacy: [XX:XX:XX XM] x ------------------------------------ @fluentui/foundation-legacy: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/foundation-legacy: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/foundation-legacy: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/foundation-legacy: error Command failed with exit code 1. -codesandbox-react-northstar-template: [XX:XX:XX XM] x Error detected while running 'ts:esm' +codesandbox-react-northstar-template: [XX:XX:XX XM] x Error detected while running '_wrapFunction' codesandbox-react-northstar-template: [XX:XX:XX XM] x ------------------------------------ -codesandbox-react-northstar-template: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/apps/codesandbox-react-northstar-template/tsconfig.json" +codesandbox-react-northstar-template: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/apps/codesandbox-react-northstar-template/tsconfig.json" codesandbox-react-northstar-template: at ChildProcess.exithandler (child_process.js:308:12) codesandbox-react-northstar-template: at ChildProcess.emit (events.js:314:20) codesandbox-react-northstar-template: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -846,7 +865,7 @@ codesandbox-react-northstar-template: ~~~~~~~~~~~~ codesandbox-react-northstar-template: Found 2 errors. codesandbox-react-northstar-template: [XX:XX:XX XM] x ------------------------------------ codesandbox-react-northstar-template: [XX:XX:XX XM] x Error previously detected. See above for error messages. -codesandbox-react-northstar-template: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +codesandbox-react-northstar-template: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-builder: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/react-builder: [XX:XX:XX XM] x Command not defined: ts @@ -896,9 +915,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-flex: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/react-flex: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-flex: error Command failed with exit code 1. -@fluentui/react-image: [XX:XX:XX XM] x Error detected while running '_wrapFunction' +@fluentui/react-image: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-image: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-image: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-image/tsconfig.json" +@fluentui/react-image: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-image/tsconfig.json" @fluentui/react-image: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-image: at ChildProcess.emit (events.js:314:20) @fluentui/react-image: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -914,11 +933,11 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-image: Found 1 error. @fluentui/react-image: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-image: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-image: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] +@fluentui/react-image: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-image: error Command failed with exit code 1. -@fluentui/react-internal: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/react-internal: [XX:XX:XX XM] x Error detected while running '_wrapFunction' @fluentui/react-internal: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-internal: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-internal/tsconfig.json" +@fluentui/react-internal: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-internal/tsconfig.json" @fluentui/react-internal: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-internal: at ChildProcess.emit (events.js:314:20) @fluentui/react-internal: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -933,6 +952,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-internal: 131 {...option} @fluentui/react-internal: ~~~~~~~~~~~ @fluentui/react-internal: This spread always overwrites this property. +@fluentui/react-internal: src/components/FloatingPicker/BaseFloatingPicker.tsx:218:42 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react-internal: 218 } else if (suggestionsPromiseLike && suggestionsPromiseLike.then) { +@fluentui/react-internal: ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @fluentui/react-internal: src/components/FloatingPicker/PeoplePicker/PeoplePickerItems/SuggestionItemDefault.tsx:12:72 - error TS2339: Property 'peoplePickerPersonaContent' does not exist on type 'typeof import("*.scss")'. @fluentui/react-internal: 12
@fluentui/react-internal: ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -958,10 +980,13 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-internal: src/components/Persona/Persona.test.tsx:201:13 - error TS2322: Type 'ReactWrapper>' is not assignable to type 'ReactWrapper, unknown, Component<{}, {}, any>>'. @fluentui/react-internal: 201 const image: ReactWrapper, unknown> = wrapper.find('ImageBase'); @fluentui/react-internal: ~~~~~ -@fluentui/react-internal: Found 8 errors. +@fluentui/react-internal: src/components/pickers/BasePicker.tsx:460:42 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react-internal: 460 } else if (suggestionsPromiseLike && suggestionsPromiseLike.then) { +@fluentui/react-internal: ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +@fluentui/react-internal: Found 10 errors. @fluentui/react-internal: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-internal: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-internal: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/react-internal: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/react-internal: error Command failed with exit code 1. @fluentui/docs: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/docs: [XX:XX:XX XM] x Command not defined: ts @@ -985,9 +1010,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-checkbox: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/react-checkbox: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/react-checkbox: error Command failed with exit code 1. -@fluentui/react-link: [XX:XX:XX XM] x Error detected while running '_wrapFunction' +@fluentui/react-link: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-link: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-link: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-link/tsconfig.json" +@fluentui/react-link: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-link/tsconfig.json" @fluentui/react-link: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-link: at ChildProcess.emit (events.js:314:20) @fluentui/react-link: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -1007,11 +1032,11 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-link: Found 3 errors. @fluentui/react-link: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-link: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-link: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] +@fluentui/react-link: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-link: error Command failed with exit code 1. -@fluentui/react-slider: [XX:XX:XX XM] x Error detected while running '_wrapFunction' +@fluentui/react-slider: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-slider: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-slider: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-slider/tsconfig.json" +@fluentui/react-slider: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-slider/tsconfig.json" @fluentui/react-slider: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-slider: at ChildProcess.emit (events.js:314:20) @fluentui/react-slider: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -1061,11 +1086,11 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-slider: Found 13 errors. @fluentui/react-slider: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-slider: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-slider: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] +@fluentui/react-slider: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-slider: error Command failed with exit code 1. -@fluentui/react-toggle: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/react-toggle: [XX:XX:XX XM] x Error detected while running '_wrapFunction' @fluentui/react-toggle: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-toggle: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-toggle/tsconfig.json" +@fluentui/react-toggle: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-toggle/tsconfig.json" @fluentui/react-toggle: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-toggle: at ChildProcess.emit (events.js:314:20) @fluentui/react-toggle: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -1106,7 +1131,7 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-toggle: Found 10 errors. @fluentui/react-toggle: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-toggle: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-toggle: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/react-toggle: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/react-toggle: error Command failed with exit code 1. @fluentui/perf: [XX:XX:XX XM] x Cannot find config file "null". Please create a file called "just.config.js" in the root of the project next to "package.json". @fluentui/perf: [XX:XX:XX XM] x Command not defined: ts @@ -1123,6 +1148,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react: [XX:XX:XX XM] x src/components/ComboBox/ComboBox.tsx:451:13 - error TS2554: Expected 1 arguments, but got 2. @fluentui/react: 451 this._onRenderContainer, @fluentui/react: ~~~~~~~~~~~~~~~~~~~~~~~ +@fluentui/react: src/components/ComboBox/ComboBox.tsx:1097:32 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react: 1097 } else if (newOptions && newOptions.then) { +@fluentui/react: ~~~~~~~~~~~~~~~ @fluentui/react: src/components/DetailsList/DetailsColumn.base.tsx:194:14 - error TS2790: The operand of a 'delete' operator must be optional. @fluentui/react: 194 delete this._dragDropSubscription; @fluentui/react: ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -1144,7 +1172,7 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react: src/components/GroupedList/GroupedListSection.tsx:172:16 - error TS2790: The operand of a 'delete' operator must be optional. @fluentui/react: 172 delete this._dragDropSubscription; @fluentui/react: ~~~~~~~~~~~~~~~~~~~~~~~~~~ -@fluentui/react: Found 8 errors. +@fluentui/react: Found 9 errors. @fluentui/react: [XX:XX:XX XM] x ------------------------------------ @fluentui/react: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/react: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @@ -1165,6 +1193,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-experiments: src/components/FloatingSuggestions/FloatingPeopleSuggestions/defaults/DefaultPeopleSuggestionsItem.tsx:16:64 - error TS2339: Property 'peoplePickerPersona' does not exist on type 'typeof import("*.scss")'. @fluentui/react-experiments: 16 className={css('ms-PeoplePicker-Persona', stylesImport.peoplePickerPersona)} @fluentui/react-experiments: ~~~~~~~~~~~~~~~~~~~ +@fluentui/react-experiments: src/components/FloatingSuggestions/FloatingSuggestions.tsx:178:31 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react-experiments: 178 } else if (suggestions && suggestions.then) { +@fluentui/react-experiments: ~~~~~~~~~~~~~~~~ @fluentui/react-experiments: src/components/FloatingSuggestions/FloatingSuggestions.tsx:202:27 - error TS2339: Property 'callout' does not exist on type 'typeof import("*.scss")'. @fluentui/react-experiments: 202 className={styles.callout} @fluentui/react-experiments: ~~~~~~~ @@ -1174,6 +1205,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-experiments: src/components/SelectedItemsList/Items/subcomponents/DefaultEditingItem.tsx:86:29 - error TS2339: Property 'editingInput' does not exist on type 'typeof import("*.scss")'. @fluentui/react-experiments: 86 className={styles.editingInput} @fluentui/react-experiments: ~~~~~~~~~~~~ +@fluentui/react-experiments: src/components/SelectedItemsList/SelectedPeopleList/Items/SelectedPersona.tsx:113:13 - error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +@fluentui/react-experiments: 113 if (onItemChange && getExpandedItems) { +@fluentui/react-experiments: ~~~~~~~~~~~~ @fluentui/react-experiments: src/components/SelectedItemsList/SelectedPeopleList/SelectedPeopleList.test.tsx:94:9 - error TS2322: Type 'ComponentType>' is not assignable to type 'ComponentClass, any> | FunctionComponent> | undefined'. @fluentui/react-experiments: Type 'ComponentClass, any>' is not assignable to type 'ComponentClass, any> | FunctionComponent> | undefined'. @fluentui/react-experiments: Type 'ComponentClass, any>' is not assignable to type 'ComponentClass, any>'. @@ -1187,8 +1221,8 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-experiments: Type 'unknown' is not assignable to type 'IPersonaProps'. @fluentui/react-experiments: 94 onRenderItem={SelectedItem} @fluentui/react-experiments: ~~~~~~~~~~~~ -@fluentui/react-experiments: src/components/SelectedItemsList/SelectedItemsList.types.ts:76:3 -@fluentui/react-experiments: 76 onRenderItem?: React.ComponentType>; +@fluentui/react-experiments: src/components/SelectedItemsList/SelectedItemsList.types.ts:75:3 +@fluentui/react-experiments: 75 onRenderItem?: React.ComponentType>; @fluentui/react-experiments: ~~~~~~~~~~~~ @fluentui/react-experiments: The expected type comes from property 'onRenderItem' which is declared here on type 'IntrinsicAttributes & Pick, "onChange" | ... 17 more ... | "itemsAreEqual"> & RefAttributes<...>' @fluentui/react-experiments: src/components/StaticList/StaticList.tsx:14:37 - error TS2339: Property 'root' does not exist on type 'typeof import("*.scss")'. @@ -1311,7 +1345,7 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-experiments: src/utilities/scrolling/ScrollContainer.tsx:76:68 - error TS2339: Property 'root' does not exist on type 'typeof import("*.scss")'. @fluentui/react-experiments: 76 className={css('ms-ScrollContainer', ScrollContainerStyles.root, className)} @fluentui/react-experiments: ~~~~ -@fluentui/react-experiments: Found 46 errors. +@fluentui/react-experiments: Found 48 errors. @fluentui/react-experiments: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-experiments: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/react-experiments: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @@ -1382,9 +1416,9 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/api-docs: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/api-docs: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/api-docs: error Command failed with exit code 1. -@fluentui/react-docsite-components: [XX:XX:XX XM] x Error detected while running '_wrapFunction' +@fluentui/react-docsite-components: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-docsite-components: [XX:XX:XX XM] x ------------------------------------ -@fluentui/react-docsite-components: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/packages/react-docsite-components/tsconfig.json" +@fluentui/react-docsite-components: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/packages/react-docsite-components/tsconfig.json" @fluentui/react-docsite-components: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/react-docsite-components: at ChildProcess.emit (events.js:314:20) @fluentui/react-docsite-components: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -1438,11 +1472,11 @@ codesandbox-react-northstar-template: error Command failed with exit code 1. @fluentui/react-docsite-components: Found 13 errors. @fluentui/react-docsite-components: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-docsite-components: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/react-docsite-components: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] +@fluentui/react-docsite-components: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-docsite-components: error Command failed with exit code 1. -theming-designer: [XX:XX:XX XM] x Error detected while running '_wrapFunction' +theming-designer: [XX:XX:XX XM] x Error detected while running 'ts:esm' theming-designer: [XX:XX:XX XM] x ------------------------------------ -theming-designer: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/apps/theming-designer/tsconfig.json" +theming-designer: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/apps/theming-designer/tsconfig.json" theming-designer: at ChildProcess.exithandler (child_process.js:308:12) theming-designer: at ChildProcess.emit (events.js:314:20) theming-designer: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -1456,7 +1490,7 @@ theming-designer: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ theming-designer: Found 1 error. theming-designer: [XX:XX:XX XM] x ------------------------------------ theming-designer: [XX:XX:XX XM] x Error previously detected. See above for error messages. -theming-designer: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] +theming-designer: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] theming-designer: error Command failed with exit code 1. @fluentui/react-examples: [XX:XX:XX XM] x Error detected while running 'ts:esm' @fluentui/react-examples: [XX:XX:XX XM] x ------------------------------------ @@ -1492,32 +1526,38 @@ theming-designer: error Command failed with exit code 1. @fluentui/react-examples: src/react-button/CompoundButton/CompoundButton.stories.tsx:18:88 - error TS2339: Property 'text' does not exist on type 'typeof import("*.scss")'. @fluentui/react-examples: 18 const Text = (props: React.PropsWithChildren<{}>) =>

; @fluentui/react-examples: ~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:20:27 - error TS2339: Property 'hStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 20
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:21:27 - error TS2339: Property 'hStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 21
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:60:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 60
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:59:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 59
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:74:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 74
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:73:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 73
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:100:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 100
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:97:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 97
+@fluentui/react-examples: ~~~~~~ +@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:111:31 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 111
+@fluentui/react-examples: ~~~~~~ +@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:137:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 137
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:114:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 114
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:151:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 151
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:139:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 139
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:176:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 176
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:153:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 153
+@fluentui/react-examples: src/react-button/MenuButton/MenuButton.stories.tsx:190:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 190
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/SplitButton/SplitButton.stories.tsx:26:27 - error TS2339: Property 'hStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 26
+@fluentui/react-examples: src/react-button/SplitButton/SplitButton.stories.tsx:21:27 - error TS2339: Property 'hStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 21
@fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: src/react-button/SplitButton/SplitButton.stories.tsx:75:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. -@fluentui/react-examples: 75
+@fluentui/react-examples: src/react-button/SplitButton/SplitButton.stories.tsx:70:29 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. +@fluentui/react-examples: 70
@fluentui/react-examples: ~~~~~~ @fluentui/react-examples: src/react-button/ToggleButton/ToggleButton.stories.tsx:7:27 - error TS2339: Property 'hStack' does not exist on type 'typeof import("*.scss")'. @fluentui/react-examples: 7
@@ -1585,14 +1625,14 @@ theming-designer: error Command failed with exit code 1. @fluentui/react-examples: src/react-image/Image/Image.stories.tsx:11:74 - error TS2339: Property 'vStack' does not exist on type 'typeof import("*.scss")'. @fluentui/react-examples: 11 return
; @fluentui/react-examples: ~~~~~~ -@fluentui/react-examples: Found 39 errors. +@fluentui/react-examples: Found 41 errors. @fluentui/react-examples: [XX:XX:XX XM] x ------------------------------------ @fluentui/react-examples: [XX:XX:XX XM] x Error previously detected. See above for error messages. @fluentui/react-examples: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] @fluentui/react-examples: error Command failed with exit code 1. -@fluentui/public-docsite: [XX:XX:XX XM] x Error detected while running 'ts:esm' +@fluentui/public-docsite: [XX:XX:XX XM] x Error detected while running '_wrapFunction' @fluentui/public-docsite: [XX:XX:XX XM] x ------------------------------------ -@fluentui/public-docsite: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib --module esnext --project "/office-ui-fabric-react/apps/public-docsite/tsconfig.json" +@fluentui/public-docsite: [XX:XX:XX XM] x Error: Command failed: /usr/local/bin/node "/office-ui-fabric-react/node_modules/typescript/lib/tsc.js" --pretty --target es5 --outDir lib-commonjs --module commonjs --project "/office-ui-fabric-react/apps/public-docsite/tsconfig.json" @fluentui/public-docsite: at ChildProcess.exithandler (child_process.js:308:12) @fluentui/public-docsite: at ChildProcess.emit (events.js:314:20) @fluentui/public-docsite: at ChildProcess.EventEmitter.emit (domain.js:506:15) @@ -2098,6 +2138,6 @@ theming-designer: error Command failed with exit code 1. @fluentui/public-docsite: Found 165 errors. @fluentui/public-docsite: [XX:XX:XX XM] x ------------------------------------ @fluentui/public-docsite: [XX:XX:XX XM] x Error previously detected. See above for error messages. -@fluentui/public-docsite: [XX:XX:XX XM] x Other tasks that did not complete: [ts:commonjs] +@fluentui/public-docsite: [XX:XX:XX XM] x Other tasks that did not complete: [ts:esm] @fluentui/public-docsite: error Command failed with exit code 1. lerna ERR! Received non-zero exit code 1 during execution diff --git a/tests/baselines/reference/docker/pyright.log b/tests/baselines/reference/docker/pyright.log index aa5412d777c..72a0cf2c4f4 100644 --- a/tests/baselines/reference/docker/pyright.log +++ b/tests/baselines/reference/docker/pyright.log @@ -1,9 +1,17 @@ -Exit Code: 0 +Exit Code: 2 Standard output: +pyright-internal: src/tests/harness/utils.ts(328,12): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? Standard error: lerna notice cli vX.X.X lerna info Executing command in 3 packages: "tsc --noEmit" +lerna ERR! Received non-zero exit code 2 during execution lerna success exec Executed command in 3 packages: "tsc --noEmit" +npm ERR! code 2 +npm ERR! path /pyright +npm ERR! command failed +npm ERR! command sh -c lerna exec --stream --concurrency 1 --no-bail -- tsc --noEmit +npm ERR! A complete log of this run can be found in: +npm ERR! /root/.npm/_logs/XXXX-XX-XXXXXXXXX-debug.log diff --git a/tests/baselines/reference/docker/vue-next.log b/tests/baselines/reference/docker/vue-next.log index 10212ebfab2..6a2071a9605 100644 --- a/tests/baselines/reference/docker/vue-next.log +++ b/tests/baselines/reference/docker/vue-next.log @@ -85,9 +85,9 @@ Writing package typings: /vue-next/dist/vue.d.ts API Extractor completed successfully. compiler-dom.global.prod.js min:44.24kb / gzip:17.04kb / brotli:15.46kb reactivity.global.prod.js min:8.37kb / gzip:3.24kb / brotli:3.00kb -runtime-dom.global.prod.js min:68.76kb / gzip:26.43kb / brotli:23.92kb +runtime-dom.global.prod.js min:68.76kb / gzip:26.44kb / brotli:23.91kb size-check.global.prod.js min:39.98kb / gzip:15.95kb / brotli:14.55kb -vue.global.prod.js min:105.87kb / gzip:40.14kb / brotli:36.09kb +vue.global.prod.js min:105.87kb / gzip:40.15kb / brotli:36.04kb diff --git a/tests/baselines/reference/user/TypeScript-Node-Starter.log b/tests/baselines/reference/user/TypeScript-Node-Starter.log new file mode 100644 index 00000000000..3402e302067 --- /dev/null +++ b/tests/baselines/reference/user/TypeScript-Node-Starter.log @@ -0,0 +1,17 @@ +Exit Code: 2 +Standard output: +node_modules/connect-mongo/src/types.d.ts(113,66): error TS2694: Namespace 'Express' has no exported member 'SessionData'. +node_modules/connect-mongo/src/types.d.ts(114,45): error TS2694: Namespace 'Express' has no exported member 'SessionData'. +node_modules/connect-mongo/src/types.d.ts(118,47): error TS2694: Namespace 'Express' has no exported member 'SessionData'. +src/app.ts(72,21): error TS2339: Property 'returnTo' does not exist on type 'Session | InitializedSession'. + Property 'returnTo' does not exist on type 'Session'. +src/app.ts(75,21): error TS2339: Property 'returnTo' does not exist on type 'Session | InitializedSession'. + Property 'returnTo' does not exist on type 'Session'. +src/app.ts(116,30): error TS2339: Property 'returnTo' does not exist on type 'Session | InitializedSession'. + Property 'returnTo' does not exist on type 'Session'. +src/controllers/user.ts(51,38): error TS2339: Property 'returnTo' does not exist on type 'Session | InitializedSession'. + Property 'returnTo' does not exist on type 'Session'. + + + +Standard error: diff --git a/tests/baselines/reference/user/TypeScript-WeChat-Starter.log b/tests/baselines/reference/user/TypeScript-WeChat-Starter.log index e375778a24e..ffbea15477b 100644 --- a/tests/baselines/reference/user/TypeScript-WeChat-Starter.log +++ b/tests/baselines/reference/user/TypeScript-WeChat-Starter.log @@ -5,6 +5,7 @@ node_modules/@types/serve-static/index.d.ts(18,45): error TS2694: Namespace '"ht node_modules/@types/serve-static/index.d.ts(25,49): error TS2694: Namespace '"http"' has no exported member 'OutgoingMessage'. node_modules/@types/serve-static/index.d.ts(25,72): error TS2694: Namespace '"http"' has no exported member 'OutgoingMessage'. node_modules/@types/serve-static/index.d.ts(98,45): error TS2694: Namespace '"http"' has no exported member 'OutgoingMessage'. +node_modules/@types/serve-static/index.d.ts(102,56): error TS2694: Namespace '"http"' has no exported member 'OutgoingMessage'. diff --git a/tests/baselines/reference/user/debug.log b/tests/baselines/reference/user/debug.log index 79c72aa95b6..c219a41f1ac 100644 --- a/tests/baselines/reference/user/debug.log +++ b/tests/baselines/reference/user/debug.log @@ -40,6 +40,7 @@ node_modules/debug/dist/debug.js(733,82): error TS2339: Property 'type' does not node_modules/debug/dist/debug.js(733,120): error TS2339: Property '__nwjs' does not exist on type 'Process'. node_modules/debug/dist/debug.js(744,146): error TS2551: Property 'WebkitAppearance' does not exist on type 'CSSStyleDeclaration'. Did you mean 'webkitAppearance'? node_modules/debug/dist/debug.js(745,78): error TS2339: Property 'firebug' does not exist on type 'Console'. +node_modules/debug/dist/debug.js(745,89): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? node_modules/debug/dist/debug.js(799,156): error TS2345: Argument of type 'IArguments' is not assignable to parameter of type '[message?: any, ...optionalParams: any[]]'. node_modules/debug/dist/debug.js(851,21): error TS2304: Cannot find name 'LocalStorage'. node_modules/debug/src/browser.js(3,100): error TS2539: Cannot assign to '_typeof' because it is not a variable. @@ -48,6 +49,7 @@ node_modules/debug/src/browser.js(34,74): error TS2339: Property 'type' does not node_modules/debug/src/browser.js(34,112): error TS2339: Property '__nwjs' does not exist on type 'Process'. node_modules/debug/src/browser.js(45,138): error TS2551: Property 'WebkitAppearance' does not exist on type 'CSSStyleDeclaration'. Did you mean 'webkitAppearance'? node_modules/debug/src/browser.js(46,70): error TS2339: Property 'firebug' does not exist on type 'Console'. +node_modules/debug/src/browser.js(46,81): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? node_modules/debug/src/browser.js(100,148): error TS2345: Argument of type 'IArguments' is not assignable to parameter of type '[message?: any, ...optionalParams: any[]]'. node_modules/debug/src/browser.js(152,13): error TS2304: Cannot find name 'LocalStorage'. node_modules/debug/src/common.js(51,24): error TS2339: Property 'colors' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: any) => any; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: { ...; }; ... 4 more ...; selectColor: (namespace: string) => string | number; }'. diff --git a/tests/baselines/reference/user/formik.log b/tests/baselines/reference/user/formik.log new file mode 100644 index 00000000000..3025734fc91 --- /dev/null +++ b/tests/baselines/reference/user/formik.log @@ -0,0 +1,13 @@ +Exit Code: 2 +Standard output: +node_modules/formik/dist/Formik.d.ts(1,22): error TS6053: File '../../../tests/cases/user/formik/node_modules/formik/dist/types/index.d.ts' not found. +node_modules/formik/dist/Formik.d.ts(23,96): error TS7016: Could not find a declaration file for module 'scheduler'. '../../../tests/cases/user/formik/node_modules/scheduler/index.js' implicitly has an 'any' type. + Try `npm i --save-dev @types/scheduler` if it exists or add a new declaration (.d.ts) file containing `declare module 'scheduler';` +node_modules/formik/dist/Formik.d.ts(27,98): error TS7016: Could not find a declaration file for module 'scheduler'. '../../../tests/cases/user/formik/node_modules/scheduler/index.js' implicitly has an 'any' type. + Try `npm i --save-dev @types/scheduler` if it exists or add a new declaration (.d.ts) file containing `declare module 'scheduler';` +node_modules/formik/dist/Formik.d.ts(28,103): error TS7016: Could not find a declaration file for module 'scheduler'. '../../../tests/cases/user/formik/node_modules/scheduler/index.js' implicitly has an 'any' type. + Try `npm i --save-dev @types/scheduler` if it exists or add a new declaration (.d.ts) file containing `declare module 'scheduler';` + + + +Standard error: diff --git a/tests/baselines/reference/user/npm.log b/tests/baselines/reference/user/npm.log index 2cfb87a518a..707e9e05391 100644 --- a/tests/baselines/reference/user/npm.log +++ b/tests/baselines/reference/user/npm.log @@ -183,6 +183,9 @@ node_modules/npm/lib/config/core.js(409,29): error TS2769: No overload matches t Type 'undefined' is not assignable to type 'string'. node_modules/npm/lib/config/defaults.js(20,52): error TS2345: Argument of type 'never[]' is not assignable to parameter of type '[format: any, ...param: any[]]'. Property '0' is optional in type 'never[]' but required in type '[format: any, ...param: any[]]'. +node_modules/npm/lib/config/defaults.js(234,24): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +node_modules/npm/lib/config/defaults.js(234,42): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? +node_modules/npm/lib/config/defaults.js(235,24): error TS2774: This condition will always return true since the function is always defined. Did you mean to call it instead? node_modules/npm/lib/config/gentle-fs.js(16,11): error TS2339: Property 'prefix' does not exist on type 'EventEmitter'. node_modules/npm/lib/config/gentle-fs.js(17,11): error TS2339: Property 'globalPrefix' does not exist on type 'EventEmitter'. node_modules/npm/lib/config/gentle-fs.js(18,11): error TS2339: Property 'dir' does not exist on type 'EventEmitter'. diff --git a/tests/baselines/reference/user/prettier.log b/tests/baselines/reference/user/prettier.log deleted file mode 100644 index 5a755733462..00000000000 --- a/tests/baselines/reference/user/prettier.log +++ /dev/null @@ -1,356 +0,0 @@ -Exit Code: 2 -Standard output: -src/language-graphql/printer-graphql.js(30,20): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(32,22): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(40,24): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(44,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(44,22): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(44,37): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(49,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(51,35): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(53,13): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(54,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(56,17): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(57,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(58,21): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(59,21): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(60,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(60,31): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(60,50): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(65,17): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(76,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(80,13): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(81,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(83,17): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(84,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(85,21): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(86,21): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(87,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(87,31): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(87,50): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(92,17): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(105,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(107,9): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(108,11): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(109,13): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(110,13): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(111,15): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(120,9): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(125,14): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(126,9): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(127,21): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(130,15): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(131,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(133,19): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(134,21): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(135,23): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(136,23): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(137,25): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(137,33): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(137,52): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(145,19): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(161,16): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(163,11): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(164,11): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(164,16): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(165,11): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(169,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(187,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(190,14): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(191,9): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(193,11): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(194,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(195,15): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(196,15): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(197,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(197,25): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(197,44): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(202,11): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(208,14): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(209,9): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(212,11): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(213,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(214,15): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(215,15): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(216,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(216,25): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(216,44): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(221,11): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(222,11): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(229,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(237,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(241,13): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(242,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(244,17): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(245,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(246,21): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(247,21): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(248,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(248,31): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(248,50): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(256,17): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(269,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(273,26): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(280,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(282,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(287,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(289,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(294,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(296,15): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(297,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(298,19): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(299,19): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(300,21): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(308,15): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(316,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(318,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(321,13): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(322,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(324,17): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(325,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(326,21): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(327,21): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(328,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(328,31): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(328,50): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(336,17): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(348,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(350,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(355,13): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(356,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(358,17): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(359,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(360,21): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(361,21): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(362,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(362,31): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(362,50): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(370,17): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(376,9): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(376,25): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(382,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(384,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(391,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(393,15): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(394,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(395,19): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(396,19): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(397,21): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(405,15): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(413,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(415,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(422,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(424,48): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(424,59): error TS2304: Cannot find name 'line'. -src/language-graphql/printer-graphql.js(428,26): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(435,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(437,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(443,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(445,15): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(446,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(447,19): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(448,19): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(449,21): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(457,15): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(465,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(470,13): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(471,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(472,17): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(473,17): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(474,19): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(483,9): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(489,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(498,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(500,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(505,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(507,15): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(512,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(514,15): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(515,17): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(516,19): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(517,19): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(518,21): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(526,15): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(534,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(542,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(545,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(555,14): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(556,9): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(558,27): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(559,11): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(560,13): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(566,19): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(568,21): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(569,21): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(570,23): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(571,25): error TS2304: Cannot find name 'ifBreak'. -src/language-graphql/printer-graphql.js(571,33): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(571,41): error TS2304: Cannot find name 'line'. -src/language-graphql/printer-graphql.js(572,25): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(572,30): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(572,38): error TS2304: Cannot find name 'line'. -src/language-graphql/printer-graphql.js(585,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(587,25): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(596,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(600,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(614,19): error TS2304: Cannot find name 'join'. -src/language-graphql/printer-graphql.js(614,24): error TS2304: Cannot find name 'line'. -src/language-graphql/printer-graphql.js(617,12): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(617,18): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(617,26): error TS2304: Cannot find name 'line'. -src/language-graphql/printer-graphql.js(620,10): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(620,23): error TS2304: Cannot find name 'group'. -src/language-graphql/printer-graphql.js(620,29): error TS2304: Cannot find name 'indent'. -src/language-graphql/printer-graphql.js(620,36): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(620,44): error TS2304: Cannot find name 'softline'. -src/language-graphql/printer-graphql.js(633,14): error TS2304: Cannot find name 'concat'. -src/language-graphql/printer-graphql.js(633,31): error TS2304: Cannot find name 'hardline'. -src/language-graphql/printer-graphql.js(673,31): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(51,14): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(51,20): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(55,65): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(58,16): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(58,24): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(63,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(64,9): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(65,9): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(66,11): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(67,37): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(68,33): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(69,13): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(86,16): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(93,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(95,9): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(96,11): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(105,14): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(106,9): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(106,56): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(123,14): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(124,9): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(126,40): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(126,47): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(128,11): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(135,14): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(136,9): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(139,11): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(154,16): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(160,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(165,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(173,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(173,22): error TS2304: Cannot find name 'join'. -src/language-handlebars/printer-glimmer.js(173,27): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(176,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(217,18): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(232,16): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(278,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(286,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(295,14): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(321,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(333,10): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(334,5): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(335,32): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(336,7): error TS2304: Cannot find name 'join'. -src/language-handlebars/printer-glimmer.js(336,12): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(338,31): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(339,7): error TS2304: Cannot find name 'join'. -src/language-handlebars/printer-glimmer.js(339,12): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(341,30): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(342,7): error TS2304: Cannot find name 'join'. -src/language-handlebars/printer-glimmer.js(342,12): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(348,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(351,16): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(351,24): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(361,12): error TS2304: Cannot find name 'ifBreak'. -src/language-handlebars/printer-glimmer.js(361,20): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(361,28): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(361,46): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(361,61): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(364,10): error TS2304: Cannot find name 'ifBreak'. -src/language-handlebars/printer-glimmer.js(364,18): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(364,26): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(372,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(378,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(386,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(392,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(398,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(404,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(410,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(416,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(422,10): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(423,5): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(427,7): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(434,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(435,5): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(445,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(456,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(457,54): error TS2304: Cannot find name 'softline'. -src/language-handlebars/printer-glimmer.js(457,65): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(492,10): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(492,17): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(492,25): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(499,17): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(499,25): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(506,12): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(506,42): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(544,48): error TS2304: Cannot find name 'hardline'. -src/language-handlebars/printer-glimmer.js(588,10): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(605,10): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(605,17): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(605,28): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(605,34): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(618,10): error TS2304: Cannot find name 'indent'. -src/language-handlebars/printer-glimmer.js(618,17): error TS2304: Cannot find name 'group'. -src/language-handlebars/printer-glimmer.js(618,23): error TS2304: Cannot find name 'concat'. -src/language-handlebars/printer-glimmer.js(618,34): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(643,10): error TS2304: Cannot find name 'join'. -src/language-handlebars/printer-glimmer.js(643,15): error TS2304: Cannot find name 'line'. -src/language-handlebars/printer-glimmer.js(651,10): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(10,14): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(10,48): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(14,11): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(16,13): error TS2304: Cannot find name 'indent'. -src/language-js/printer-estree-json.js(17,15): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(18,17): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(19,17): error TS2304: Cannot find name 'join'. -src/language-js/printer-estree-json.js(19,22): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(19,35): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(22,13): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(28,11): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(30,13): error TS2304: Cannot find name 'indent'. -src/language-js/printer-estree-json.js(31,15): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(32,17): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(33,17): error TS2304: Cannot find name 'join'. -src/language-js/printer-estree-json.js(33,22): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(33,35): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(36,13): error TS2304: Cannot find name 'hardline'. -src/language-js/printer-estree-json.js(40,14): error TS2304: Cannot find name 'concat'. -src/language-js/printer-estree-json.js(42,14): error TS2304: Cannot find name 'concat'. -src/main/comments.js(398,11): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(399,11): error TS2304: Cannot find name 'line'. -src/main/comments.js(402,12): error TS2304: Cannot find name 'concat'. -src/main/comments.js(405,10): error TS2304: Cannot find name 'concat'. -src/main/comments.js(405,28): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(437,12): error TS2304: Cannot find name 'lineSuffix'. -src/main/comments.js(438,7): error TS2304: Cannot find name 'concat'. -src/main/comments.js(438,15): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(438,45): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(442,17): error TS2304: Cannot find name 'concat'. -src/main/comments.js(446,15): error TS2304: Cannot find name 'concat'. -src/main/comments.js(446,23): error TS2304: Cannot find name 'lineSuffix'. -src/main/comments.js(446,44): error TS2304: Cannot find name 'breakParent'. -src/main/comments.js(477,12): error TS2304: Cannot find name 'join'. -src/main/comments.js(477,17): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(479,10): error TS2304: Cannot find name 'indent'. -src/main/comments.js(479,17): error TS2304: Cannot find name 'concat'. -src/main/comments.js(479,25): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(479,35): error TS2304: Cannot find name 'join'. -src/main/comments.js(479,40): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(484,12): error TS2304: Cannot find name 'concat'. -src/main/comments.js(484,20): error TS2304: Cannot find name 'cursor'. -src/main/comments.js(484,37): error TS2304: Cannot find name 'cursor'. -src/main/comments.js(519,27): error TS2304: Cannot find name 'hardline'. -src/main/comments.js(529,5): error TS2304: Cannot find name 'concat'. - - - -Standard error: diff --git a/tests/baselines/reference/user/webpack.log b/tests/baselines/reference/user/webpack.log index c6a994f0678..25a502aaf4b 100644 --- a/tests/baselines/reference/user/webpack.log +++ b/tests/baselines/reference/user/webpack.log @@ -4,6 +4,19 @@ lib/Compilation.js(37,7): error TS2440: Import declaration conflicts with local lib/Compilation.js(49,7): error TS2440: Import declaration conflicts with local declaration of 'WebpackError'. lib/Compilation.js(53,7): error TS2440: Import declaration conflicts with local declaration of 'StatsFactory'. lib/Compilation.js(54,7): error TS2440: Import declaration conflicts with local declaration of 'StatsPrinter'. +lib/Compiler.js(156,4): error TS2322: Type 'AsyncParallelHook' is not assignable to type 'AsyncParallelHook<[Compilation], Module>'. +lib/Compiler.js(156,4): error TS2322: Type 'AsyncParallelHook' is not assignable to type 'AsyncParallelHook<[Compilation], Module>'. + Types of property 'intercept' are incompatible. + Type '(interceptor: HookInterceptor) => void' is not assignable to type '(interceptor: HookInterceptor<[Compilation], void, Module>) => void'. + Types of parameters 'interceptor' and 'interceptor' are incompatible. + Type 'HookInterceptor<[Compilation], void, Module>' is not assignable to type 'HookInterceptor'. + Property '_UnsetAdditionalOptions' is missing in type 'Module' but required in type 'UnsetAdditionalOptions'. +lib/Compiler.js(158,4): error TS2322: Type 'AsyncSeriesHook' is not assignable to type 'AsyncParallelHook<[Compilation], Module>'. +lib/Compiler.js(158,4): error TS2322: Type 'AsyncSeriesHook' is not assignable to type 'AsyncParallelHook<[Compilation], Module>'. + Types of property 'intercept' are incompatible. + Type '(interceptor: HookInterceptor) => void' is not assignable to type '(interceptor: HookInterceptor<[Compilation], void, Module>) => void'. + Types of parameters 'interceptor' and 'interceptor' are incompatible. + Type 'HookInterceptor<[Compilation], void, Module>' is not assignable to type 'HookInterceptor'. lib/ExportsInfo.js(1092,28): error TS1016: A required parameter cannot follow an optional parameter. lib/FlagDependencyUsagePlugin.js(8,7): error TS2440: Import declaration conflicts with local declaration of 'Dependency'. lib/NormalModule.js(19,7): error TS2440: Import declaration conflicts with local declaration of 'Compilation'. diff --git a/tests/cases/conformance/salsa/commonJSReexport.ts b/tests/cases/conformance/salsa/commonJSReexport.ts new file mode 100644 index 00000000000..e3220c5c248 --- /dev/null +++ b/tests/cases/conformance/salsa/commonJSReexport.ts @@ -0,0 +1,19 @@ +// #41422, based on prettier's exports +// @noEmit: true +// @checkJS: true + +// @filename: first.js +const hardline = { type: "hard" } +module.exports = { + hardline +} + + +// @filename: second.js +module.exports = { + nested: require('./first') +}; + +// @filename: main.js +const { hardline } = require('./second').nested; +hardline diff --git a/tests/cases/fourslash/fourslash.ts b/tests/cases/fourslash/fourslash.ts index fc61f9831e3..98298bbfe5f 100644 --- a/tests/cases/fourslash/fourslash.ts +++ b/tests/cases/fourslash/fourslash.ts @@ -610,7 +610,7 @@ declare namespace FourSlashInterface { readonly includeCompletionsForModuleExports?: boolean; readonly includeInsertTextCompletions?: boolean; readonly includeAutomaticOptionalChainCompletions?: boolean; - readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative"; + readonly importModuleSpecifierPreference?: "shortest" | "project-relative" | "relative" | "non-relative"; readonly importModuleSpecifierEnding?: "minimal" | "index" | "js"; } interface CompletionsOptions { diff --git a/tests/cases/fourslash/server/importNameCodeFix_externalNonRelateive2.ts b/tests/cases/fourslash/server/importNameCodeFix_externalNonRelateive2.ts new file mode 100644 index 00000000000..eb596892a3d --- /dev/null +++ b/tests/cases/fourslash/server/importNameCodeFix_externalNonRelateive2.ts @@ -0,0 +1,44 @@ +/// + +// @Filename: /apps/app1/tsconfig.json +//// { +//// "compilerOptions": { +//// "module": "commonjs", +//// "paths": { +//// "shared/*": ["../../shared/*"] +//// } +//// }, +//// "include": ["src", "../../shared"] +//// } + +// @Filename: /apps/app1/src/index.ts +//// shared/*internal2external*/ + +// @Filename: /apps/app1/src/app.ts +//// utils/*internal2internal*/ + +// @Filename: /apps/app1/src/utils.ts +//// export const utils = 0; + +// @Filename: /shared/constants.ts +//// export const shared = 0; + +// @Filename: /shared/data.ts +//// shared/*external2external*/ + +format.setOption("newline", "\n"); + +goTo.marker("internal2external"); +verify.importFixAtPosition([`import { shared } from "shared/constants";\n\nshared`], /*errorCode*/ undefined, { + importModuleSpecifierPreference: "project-relative" +}); + +goTo.marker("internal2internal"); +verify.importFixAtPosition([`import { utils } from "./utils";\n\nutils`], /*errorCode*/ undefined, { + importModuleSpecifierPreference: "project-relative" +}); + +goTo.marker("external2external"); +verify.importFixAtPosition([`import { shared } from "./constants";\n\nshared`], /*errorCode*/ undefined, { + importModuleSpecifierPreference: "project-relative" +}); diff --git a/tests/cases/fourslash/server/importNameCodeFix_externalNonRelative1.ts b/tests/cases/fourslash/server/importNameCodeFix_externalNonRelative1.ts new file mode 100644 index 00000000000..19c76d7ba4b --- /dev/null +++ b/tests/cases/fourslash/server/importNameCodeFix_externalNonRelative1.ts @@ -0,0 +1,58 @@ +/// + +// @Filename: /tsconfig.base.json +//// { +//// "compilerOptions": { +//// "module": "commonjs", +//// "paths": { +//// "pkg-1/*": ["./packages/pkg-1/src/*"], +//// "pkg-2/*": ["./packages/pkg-2/src/*"] +//// } +//// } +//// } + +// @Filename: /packages/pkg-1/package.json +//// { "dependencies": { "pkg-2": "*" } } + +// @Filename: /packages/pkg-1/tsconfig.json +//// { +//// "extends": "../../tsconfig.base.json", +//// "references": [ +//// { "path": "../pkg-2" } +//// ] +//// } + +// @Filename: /packages/pkg-1/src/index.ts +//// Pkg2/*external*/ + +// @Filename: /packages/pkg-2/package.json +//// { "types": "dist/index.d.ts" } + +// @Filename: /packages/pkg-2/tsconfig.json +//// { +//// "extends": "../../tsconfig.base.json", +//// "compilerOptions": { "outDir": "dist", "rootDir": "src", "composite": true } +//// } + +// @Filename: /packages/pkg-2/src/index.ts +//// import "./utils"; + +// @Filename: /packages/pkg-2/src/utils.ts +//// export const Pkg2 = {}; + +// @Filename: /packages/pkg-2/src/blah/foo/data.ts +//// Pkg2/*internal*/ + +// @link: /packages/pkg-2 -> /packages/pkg-1/node_modules/pkg-2 + +format.setOption("newline", "\n"); + +goTo.marker("external"); +verify.importFixAtPosition([`import { Pkg2 } from "pkg-2/utils";\n\nPkg2`], /*errorCode*/ undefined, { + importModuleSpecifierPreference: "project-relative" +}); + +goTo.marker("internal"); +verify.importFixAtPosition([`import { Pkg2 } from "../../utils";\n\nPkg2`], /*errorCode*/ undefined, { + importModuleSpecifierPreference: "project-relative" +});