|
1 | 1 | {
|
2 | 2 | "compilerOptions": {
|
3 |
| - /* Basic Options */ |
4 |
| - //---------------------LANGUAGE AND ENVIRONEMNT----------------------------- |
5 |
| - // Specifies the ECMAScript version that the TypeScript compiler should target. This allow the transpiled file being used in older browser. |
6 |
| - "target": "es5", |
7 |
| - // Specifies the syntax for writing React components in TypeScript |
8 |
| - "jsx": "react", |
9 |
| - "outDir": "./src/extension/build/bundles/", |
| 3 | + /* Visit https://aka.ms/tsconfig to read more about this file */ |
10 | 4 |
|
11 |
| - // --------------------------MODULES---------------------------------------- |
12 |
| - // Specifies the module format for the compiled TypeScript files |
13 |
| - "module": "CommonJS", |
14 |
| - "downlevelIteration": true, |
15 |
| - // Specifies the folder where TypeScript should look for type definition files. |
16 |
| - "typeRoots": ["./node_modules/@types"], |
17 |
| - // Specifies which global types to include in the project. |
18 |
| - // Specifies type package names to be included without being referenced in a source file. |
19 |
| - "types": ["chrome", "jest", "node"], |
| 5 | + /* Projects */ |
| 6 | + // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */ |
| 7 | + // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ |
| 8 | + // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ |
| 9 | + // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ |
| 10 | + // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ |
| 11 | + // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ |
20 | 12 |
|
21 |
| - // ---------------------------------TYPE CHECKING--------------------------- |
22 |
| - // "strict": true, /* Enable all strict type-checking options. */ |
23 |
| - // "noImplicitAny": true /* Enable error reporting for expressions and declarations with an implied 'any' type. */, |
| 13 | + /* Language and Environment */ |
| 14 | + "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ |
| 15 | + // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ |
| 16 | + "jsx": "react", /* Specify what JSX code is generated. */ |
| 17 | + // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */ |
| 18 | + // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ |
| 19 | + // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ |
| 20 | + // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ |
| 21 | + // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ |
| 22 | + // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ |
| 23 | + // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ |
| 24 | + // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ |
| 25 | + // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ |
| 26 | + |
| 27 | + /* Modules */ |
| 28 | + "module": "commonjs", /* Specify what module code is generated. */ |
| 29 | + // "rootDir": "./", /* Specify the root folder within your source files. */ |
| 30 | + // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ |
| 31 | + // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ |
| 32 | + // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ |
| 33 | + // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ |
| 34 | + "typeRoots": ["./node_modules/@types"], /* Specify multiple folders that act like './node_modules/@types'. */ |
| 35 | + "types": ["chrome", "jest", "node"], /* Specify type package names to be included without being referenced in a source file. */ |
| 36 | + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ |
| 37 | + // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ |
| 38 | + // "allowImportingTsExtensions": true, /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */ |
| 39 | + // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */ |
| 40 | + // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */ |
| 41 | + // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */ |
| 42 | + // "resolveJsonModule": true, /* Enable importing .json files. */ |
| 43 | + // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ |
| 44 | + // "noResolve": true, /* Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project. */ |
| 45 | + |
| 46 | + /* JavaScript Support */ |
| 47 | + "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */ |
| 48 | + "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ |
| 49 | + // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ |
| 50 | + |
| 51 | + /* Emit */ |
| 52 | + // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ |
| 53 | + // "declarationMap": true, /* Create sourcemaps for d.ts files. */ |
| 54 | + // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ |
| 55 | + // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ |
| 56 | + // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ |
| 57 | + // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ |
| 58 | + "outDir": "./src/extension/build/bundles/", /* Specify an output folder for all emitted files. */ |
| 59 | + // "removeComments": true, /* Disable emitting comments. */ |
| 60 | + // "noEmit": true, /* Disable emitting files from a compilation. */ |
| 61 | + // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ |
| 62 | + // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */ |
| 63 | + // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ |
| 64 | + // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ |
| 65 | + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ |
| 66 | + // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ |
| 67 | + // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ |
| 68 | + // "newLine": "crlf", /* Set the newline character for emitting files. */ |
| 69 | + // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ |
| 70 | + // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ |
| 71 | + // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ |
| 72 | + // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ |
| 73 | + // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ |
| 74 | + // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */ |
| 75 | + |
| 76 | + /* Interop Constraints */ |
| 77 | + // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ |
| 78 | + // "verbatimModuleSyntax": true, /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */ |
| 79 | + // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ |
| 80 | + "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */ |
| 81 | + // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ |
| 82 | + "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ |
| 83 | + |
| 84 | + /* Type Checking */ |
| 85 | + "strict": true, /* Enable all strict type-checking options. */ |
| 86 | + // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ |
24 | 87 | // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */
|
25 | 88 | // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
|
26 | 89 | // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */
|
|
39 | 102 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
|
40 | 103 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
|
41 | 104 |
|
42 |
| - // -------------------------------EMIT-------------------------------------- |
43 |
| - // Specifies TypeScript compiler to remove comments from the compiled JavaScript code. |
44 |
| - "removeComments": true, |
45 |
| - |
46 |
| - // --------------------------JAVASCRIPT SUPPORT----------------------------- |
47 |
| - // Specifies TypeScript compiler to allow JavaScript files to be included in the compilation process. => good to use if want to incrementally convert javascript to typescript files |
48 |
| - "allowJs": true, |
49 |
| - |
50 |
| - // Specifies the module resolution strategy to use. |
51 |
| - "moduleResolution": "node", |
52 |
| - |
53 |
| - // Enables TypeScript to import JSON files as modules. |
54 |
| - "resolveJsonModule": true, |
55 |
| - |
56 |
| - //------------------------INTEROP CONSTRAINTS------------------------------ |
57 |
| - // Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. |
58 |
| - "esModuleInterop": true, |
59 |
| - // Specifies TypeScript compiler to allow importing modules with a default export from modules |
60 |
| - // some third party modules may still use |
61 |
| - "allowSyntheticDefaultImports": true, |
62 |
| - // Transiple each file as a seprate module => expect all files to have import/export statement |
63 |
| - // "isolatedModules": true, |
64 |
| - // Ensures that file names are consistently cased. |
65 |
| - "forceConsistentCasingInFileNames": true, |
66 |
| - |
67 |
| - // -----------------------------COMPLETENESS-------------------------------- |
68 |
| - // Skip type checking of type declartion files (.d.ts files) that are included with TypeScript. If we trust the type definition of our imported file, turn this flag on => reduce compiling time. |
69 |
| - "skipLibCheck": true |
70 |
| - }, |
71 |
| - |
72 |
| - // Specifies which files should be included in the compilation. |
73 |
| - "include": ["./src/app", "./src/backend", "./src/extension", "./jest-setup.ts", "./global.d.ts"], |
74 |
| - // Specifies which files should be excluded from the compilation. |
75 |
| - "exclude": [ |
76 |
| - "./src/app/__tests__", |
77 |
| - "./src/backend/__tests__", |
78 |
| - "node_modules", |
79 |
| - "./src/extension/build/bundles" |
80 |
| - ], |
81 |
| - |
82 |
| - // Specifies options for TypeDoc, a documentation generator for TypeScript. In this case, it tells TypeDoc to generate documentation for the project in "file" mode, and to output the documentation to a "docs" folder. |
83 |
| - "typeDocOptions": { |
84 |
| - "mode": "file", |
85 |
| - "out": "docs" |
| 105 | + /* Completeness */ |
| 106 | + // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ |
| 107 | + "skipLibCheck": true /* Skip type checking all .d.ts files. */ |
86 | 108 | }
|
87 | 109 | }
|
0 commit comments