@glint/ember-tsc 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +49 -0
- package/bin/ember-tsc.js +4 -0
- package/bin/glint-language-server.js +2 -0
- package/lib/cli/run-volar-tsc.d.ts +2 -0
- package/lib/cli/run-volar-tsc.d.ts.map +1 -0
- package/lib/cli/run-volar-tsc.js +30 -0
- package/lib/cli/run-volar-tsc.js.map +1 -0
- package/lib/config/config.d.ts +15 -0
- package/lib/config/config.d.ts.map +1 -0
- package/lib/config/config.js +21 -0
- package/lib/config/config.js.map +1 -0
- package/lib/config/environment.d.ts +26 -0
- package/lib/config/environment.d.ts.map +1 -0
- package/lib/config/environment.js +96 -0
- package/lib/config/environment.js.map +1 -0
- package/lib/config/index.d.ts +17 -0
- package/lib/config/index.d.ts.map +1 -0
- package/lib/config/index.js +26 -0
- package/lib/config/index.js.map +1 -0
- package/lib/config/loader.d.ts +25 -0
- package/lib/config/loader.d.ts.map +1 -0
- package/lib/config/loader.js +110 -0
- package/lib/config/loader.js.map +1 -0
- package/lib/config/types.cjs +3 -0
- package/lib/config/types.cjs.map +1 -0
- package/lib/config/types.d.cts +60 -0
- package/lib/config/types.d.cts.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/common.d.ts +13 -0
- package/lib/environment-ember-template-imports/-private/environment/common.d.ts.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/common.js +2 -0
- package/lib/environment-ember-template-imports/-private/environment/common.js.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/index.d.ts +3 -0
- package/lib/environment-ember-template-imports/-private/environment/index.d.ts.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/index.js +76 -0
- package/lib/environment-ember-template-imports/-private/environment/index.js.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/preprocess.d.ts +4 -0
- package/lib/environment-ember-template-imports/-private/environment/preprocess.d.ts.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/preprocess.js +73 -0
- package/lib/environment-ember-template-imports/-private/environment/preprocess.js.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/transform.d.ts +4 -0
- package/lib/environment-ember-template-imports/-private/environment/transform.d.ts.map +1 -0
- package/lib/environment-ember-template-imports/-private/environment/transform.js +134 -0
- package/lib/environment-ember-template-imports/-private/environment/transform.js.map +1 -0
- package/lib/index.d.ts +7 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +6 -0
- package/lib/index.js.map +1 -0
- package/lib/plugins/g-compiler-errors.d.ts +12 -0
- package/lib/plugins/g-compiler-errors.d.ts.map +1 -0
- package/lib/plugins/g-compiler-errors.js +58 -0
- package/lib/plugins/g-compiler-errors.js.map +1 -0
- package/lib/plugins/g-template-tag-symbols.d.ts +11 -0
- package/lib/plugins/g-template-tag-symbols.d.ts.map +1 -0
- package/lib/plugins/g-template-tag-symbols.js +48 -0
- package/lib/plugins/g-template-tag-symbols.js.map +1 -0
- package/lib/plugins/utils.d.ts +25 -0
- package/lib/plugins/utils.d.ts.map +1 -0
- package/lib/plugins/utils.js +63 -0
- package/lib/plugins/utils.js.map +1 -0
- package/lib/transform/diagnostics/augmentation.d.ts +4 -0
- package/lib/transform/diagnostics/augmentation.d.ts.map +1 -0
- package/lib/transform/diagnostics/augmentation.js +223 -0
- package/lib/transform/diagnostics/augmentation.js.map +1 -0
- package/lib/transform/diagnostics/index.d.ts +5 -0
- package/lib/transform/diagnostics/index.d.ts.map +1 -0
- package/lib/transform/diagnostics/index.js +2 -0
- package/lib/transform/diagnostics/index.js.map +1 -0
- package/lib/transform/index.d.ts +4 -0
- package/lib/transform/index.d.ts.map +1 -0
- package/lib/transform/index.js +2 -0
- package/lib/transform/index.js.map +1 -0
- package/lib/transform/template/code-features.d.ts +30 -0
- package/lib/transform/template/code-features.d.ts.map +1 -0
- package/lib/transform/template/code-features.js +26 -0
- package/lib/transform/template/code-features.js.map +1 -0
- package/lib/transform/template/glimmer-ast-mapping-tree.d.ts +80 -0
- package/lib/transform/template/glimmer-ast-mapping-tree.d.ts.map +1 -0
- package/lib/transform/template/glimmer-ast-mapping-tree.js +132 -0
- package/lib/transform/template/glimmer-ast-mapping-tree.js.map +1 -0
- package/lib/transform/template/inlining/index.d.ts +16 -0
- package/lib/transform/template/inlining/index.d.ts.map +1 -0
- package/lib/transform/template/inlining/index.js +21 -0
- package/lib/transform/template/inlining/index.js.map +1 -0
- package/lib/transform/template/inlining/tagged-strings.d.ts +8 -0
- package/lib/transform/template/inlining/tagged-strings.d.ts.map +1 -0
- package/lib/transform/template/inlining/tagged-strings.js +140 -0
- package/lib/transform/template/inlining/tagged-strings.js.map +1 -0
- package/lib/transform/template/map-template-contents.d.ts +121 -0
- package/lib/transform/template/map-template-contents.d.ts.map +1 -0
- package/lib/transform/template/map-template-contents.js +287 -0
- package/lib/transform/template/map-template-contents.js.map +1 -0
- package/lib/transform/template/rewrite-module.d.ts +22 -0
- package/lib/transform/template/rewrite-module.d.ts.map +1 -0
- package/lib/transform/template/rewrite-module.js +265 -0
- package/lib/transform/template/rewrite-module.js.map +1 -0
- package/lib/transform/template/scope-stack.d.ts +13 -0
- package/lib/transform/template/scope-stack.d.ts.map +1 -0
- package/lib/transform/template/scope-stack.js +28 -0
- package/lib/transform/template/scope-stack.js.map +1 -0
- package/lib/transform/template/template-to-typescript.d.ts +19 -0
- package/lib/transform/template/template-to-typescript.d.ts.map +1 -0
- package/lib/transform/template/template-to-typescript.js +1095 -0
- package/lib/transform/template/template-to-typescript.js.map +1 -0
- package/lib/transform/template/transformed-module.d.ts +111 -0
- package/lib/transform/template/transformed-module.d.ts.map +1 -0
- package/lib/transform/template/transformed-module.js +287 -0
- package/lib/transform/template/transformed-module.js.map +1 -0
- package/lib/transform/util.d.ts +7 -0
- package/lib/transform/util.d.ts.map +1 -0
- package/lib/transform/util.js +15 -0
- package/lib/transform/util.js.map +1 -0
- package/lib/volar/ember-language-plugin.d.ts +14 -0
- package/lib/volar/ember-language-plugin.d.ts.map +1 -0
- package/lib/volar/ember-language-plugin.js +91 -0
- package/lib/volar/ember-language-plugin.js.map +1 -0
- package/lib/volar/gts-virtual-code.d.ts +83 -0
- package/lib/volar/gts-virtual-code.d.ts.map +1 -0
- package/lib/volar/gts-virtual-code.js +210 -0
- package/lib/volar/gts-virtual-code.js.map +1 -0
- package/lib/volar/language-server.d.ts +2 -0
- package/lib/volar/language-server.d.ts.map +1 -0
- package/lib/volar/language-server.js +214 -0
- package/lib/volar/language-server.js.map +1 -0
- package/lib/volar/script-snapshot.d.ts +17 -0
- package/lib/volar/script-snapshot.d.ts.map +1 -0
- package/lib/volar/script-snapshot.js +24 -0
- package/lib/volar/script-snapshot.js.map +1 -0
- package/package.json +104 -0
- package/src/cli/run-volar-tsc.ts +36 -0
- package/src/config/config.ts +33 -0
- package/src/config/environment.ts +128 -0
- package/src/config/index.ts +30 -0
- package/src/config/loader.ts +143 -0
- package/src/config/types.cts +85 -0
- package/src/environment-ember-template-imports/-private/environment/common.ts +14 -0
- package/src/environment-ember-template-imports/-private/environment/index.ts +83 -0
- package/src/environment-ember-template-imports/-private/environment/preprocess.ts +90 -0
- package/src/environment-ember-template-imports/-private/environment/transform.ts +202 -0
- package/src/index.ts +9 -0
- package/src/plugins/g-compiler-errors.ts +67 -0
- package/src/plugins/g-template-tag-symbols.ts +54 -0
- package/src/plugins/utils.ts +86 -0
- package/src/transform/diagnostics/augmentation.ts +333 -0
- package/src/transform/diagnostics/index.ts +5 -0
- package/src/transform/index.ts +4 -0
- package/src/transform/template/code-features.ts +30 -0
- package/src/transform/template/glimmer-ast-mapping-tree.ts +173 -0
- package/src/transform/template/inlining/index.ts +33 -0
- package/src/transform/template/inlining/tagged-strings.ts +187 -0
- package/src/transform/template/map-template-contents.ts +501 -0
- package/src/transform/template/rewrite-module.ts +372 -0
- package/src/transform/template/scope-stack.ts +34 -0
- package/src/transform/template/template-to-typescript.ts +1476 -0
- package/src/transform/template/transformed-module.ts +431 -0
- package/src/transform/util.ts +24 -0
- package/src/volar/ember-language-plugin.ts +108 -0
- package/src/volar/gts-virtual-code.ts +249 -0
- package/src/volar/language-server.ts +250 -0
- package/src/volar/script-snapshot.ts +27 -0
- package/types/-private/dsl/globals.d.ts +204 -0
- package/types/-private/dsl/index.d.ts +50 -0
- package/types/-private/dsl/integration-declarations.d.ts +143 -0
- package/types/-private/intrinsics/action.d.ts +45 -0
- package/types/-private/intrinsics/concat.d.ts +6 -0
- package/types/-private/intrinsics/each-in.d.ts +24 -0
- package/types/-private/intrinsics/each.d.ts +17 -0
- package/types/-private/intrinsics/fn.d.ts +44 -0
- package/types/-private/intrinsics/get.d.ts +31 -0
- package/types/-private/intrinsics/input.d.ts +24 -0
- package/types/-private/intrinsics/link-to.d.ts +31 -0
- package/types/-private/intrinsics/log.d.ts +6 -0
- package/types/-private/intrinsics/mount.d.ts +9 -0
- package/types/-private/intrinsics/mut.d.ts +14 -0
- package/types/-private/intrinsics/on.d.ts +21 -0
- package/types/-private/intrinsics/outlet.d.ts +8 -0
- package/types/-private/intrinsics/textarea.d.ts +16 -0
- package/types/-private/intrinsics/unbound.d.ts +10 -0
- package/types/-private/intrinsics/unique-id.d.ts +5 -0
- package/types/globals/index.d.ts +3 -0
- package/types/silent-error.d.ts +4 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 The Ember TypeScript team and contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# `@glint/core`
|
|
2
|
+
|
|
3
|
+
This package contains core functionality to power template-aware typechecking on a [glint] project. Two binaries are provided:
|
|
4
|
+
|
|
5
|
+
- `glint-language-server` - the Language Server that the VSCode (and other IDE) extension communicates with
|
|
6
|
+
- `ember-tsc` (see below) - a thin wrapper around TypeScript's `tsc` which provides support for .gts/.gjs files
|
|
7
|
+
|
|
8
|
+
[glint]: https://github.com/typed-ember/glint
|
|
9
|
+
|
|
10
|
+
## `ember-tsc`
|
|
11
|
+
|
|
12
|
+
The `ember-tsc` CLI tool is a thin wrapper around `tsc` and hence all documentation / use cases / flags that apply to `tsc` also apply to `ember-tsc`.
|
|
13
|
+
|
|
14
|
+
Because `ember-tsc` is only used for type-checking purposes (or generating declaration files), and not for producing compiled JS output, the emitting of JS should always be disabled by providing either the `--noEmit` or `--emitDeclarationOnly` flags, depending on your use case.
|
|
15
|
+
|
|
16
|
+
### Usage
|
|
17
|
+
|
|
18
|
+
Gemeral Usage:
|
|
19
|
+
|
|
20
|
+
```sh
|
|
21
|
+
ember-tsc --noEmit [--build] [--watch|-w] [--declaration|-d] [--emitDeclarationOnly] [--project path/to/tsconfig.json]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Type-checking:
|
|
25
|
+
|
|
26
|
+
```sh
|
|
27
|
+
ember-tsc [--build] --noEmit
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Type-checking in watch mode:
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
ember-tsc [--build] --noEmit --watch
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Build declaration files:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
ember-tsc --build --declaration --emitDeclarationOnly
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Build declaration files in watch mode:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
ember-tsc --build --declaration --emitDeclarationOnly --watch
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Please refer to `tsc` docs for other use cases and flags.
|
|
49
|
+
|
package/bin/ember-tsc.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-volar-tsc.d.ts","sourceRoot":"","sources":["../../src/cli/run-volar-tsc.ts"],"names":[],"mappings":"AAOA,wBAAgB,GAAG,IAAI,IAAI,CA4B1B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { runTsc } from '@volar/typescript/lib/quickstart/runTsc.js';
|
|
2
|
+
import { createEmberLanguagePlugin } from '../volar/ember-language-plugin.js';
|
|
3
|
+
import { findConfig } from '../config/index.js';
|
|
4
|
+
import { createRequire } from 'node:module';
|
|
5
|
+
const require = createRequire(import.meta.url);
|
|
6
|
+
export function run() {
|
|
7
|
+
let cwd = process.cwd();
|
|
8
|
+
const options = {
|
|
9
|
+
extraSupportedExtensions: ['.gjs', '.gts'],
|
|
10
|
+
extraExtensionsToRemove: [],
|
|
11
|
+
// With the above configuration, `{basename}.gts` will produce `{basename}.gts.d.ts`.
|
|
12
|
+
// If we would prefer `{basename}.d.ts`, we could use the following configuration instead:
|
|
13
|
+
//
|
|
14
|
+
// extraExtensionsToRemove: ['.gts', '.gjs'],
|
|
15
|
+
//
|
|
16
|
+
// See discussion here: https://github.com/typed-ember/glint/issues/628
|
|
17
|
+
};
|
|
18
|
+
const main = () => runTsc(require.resolve('typescript/lib/tsc'), options, (ts, options) => {
|
|
19
|
+
const glintConfig = findConfig(cwd);
|
|
20
|
+
if (glintConfig) {
|
|
21
|
+
const gtsLanguagePlugin = createEmberLanguagePlugin(glintConfig);
|
|
22
|
+
return [gtsLanguagePlugin];
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return [];
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
main();
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=run-volar-tsc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-volar-tsc.js","sourceRoot":"","sources":["../../src/cli/run-volar-tsc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,UAAU,GAAG;IACjB,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAExB,MAAM,OAAO,GAAG;QACd,wBAAwB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QAE1C,uBAAuB,EAAE,EAAE;QAE3B,qFAAqF;QACrF,0FAA0F;QAC1F,EAAE;QACF,6CAA6C;QAC7C,EAAE;QACF,uEAAuE;KACxE,CAAC;IAEF,MAAM,IAAI,GAAG,GAAS,EAAE,CACtB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAEpC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;YACjE,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;IACL,IAAI,EAAE,CAAC;AACT,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GlintConfigInput } from '@glint/ember-tsc/config-types';
|
|
2
|
+
import { GlintEnvironment } from './environment.js';
|
|
3
|
+
/**
|
|
4
|
+
* This class represents parsed Glint configuration from a `tsconfig` or `jsconfig` file,
|
|
5
|
+
* with methods for interrogating project configuration based on its contents.
|
|
6
|
+
*/
|
|
7
|
+
export declare class GlintConfig {
|
|
8
|
+
readonly ts: typeof import('typescript');
|
|
9
|
+
readonly rootDir: string;
|
|
10
|
+
readonly configPath: string;
|
|
11
|
+
readonly environment: GlintEnvironment;
|
|
12
|
+
constructor(ts: typeof import('typescript'), configPath: string, config: GlintConfigInput);
|
|
13
|
+
}
|
|
14
|
+
export declare function normalizePath(fileName: string): string;
|
|
15
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,WAAW;IACtB,SAAwB,EAAE,EAAE,cAAc,YAAY,CAAC,CAAC;IACxD,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,WAAW,EAAE,gBAAgB,CAAC;gBAG5C,EAAE,EAAE,cAAc,YAAY,CAAC,EAC/B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,gBAAgB;CAO3B;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMtD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as path from 'node:path';
|
|
2
|
+
import { GlintEnvironment } from './environment.js';
|
|
3
|
+
/**
|
|
4
|
+
* This class represents parsed Glint configuration from a `tsconfig` or `jsconfig` file,
|
|
5
|
+
* with methods for interrogating project configuration based on its contents.
|
|
6
|
+
*/
|
|
7
|
+
export class GlintConfig {
|
|
8
|
+
constructor(ts, configPath, config) {
|
|
9
|
+
Object.defineProperty(this, 'ts', { value: ts });
|
|
10
|
+
this.configPath = normalizePath(configPath);
|
|
11
|
+
this.rootDir = path.dirname(configPath);
|
|
12
|
+
this.environment = GlintEnvironment.load(config);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export function normalizePath(fileName) {
|
|
16
|
+
if (path.sep !== '/') {
|
|
17
|
+
return fileName.split(path.sep).join('/');
|
|
18
|
+
}
|
|
19
|
+
return fileName;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,MAAM,OAAO,WAAW;IAMtB,YACE,EAA+B,EAC/B,UAAkB,EAClB,MAAwB;QAExB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { GlintEnvironmentConfig, GlintExtensionConfig, GlintExtensionsConfig, GlintTagsConfig, SourceKind } from '@glint/ember-tsc/config-types';
|
|
2
|
+
export declare const DEFAULT_EXTENSIONS: GlintExtensionsConfig;
|
|
3
|
+
/**
|
|
4
|
+
* A GlintEnvironment represents the _merged_ configurations of one or more
|
|
5
|
+
* glint environments (e.g. ember-template-imports).
|
|
6
|
+
*/
|
|
7
|
+
export declare class GlintEnvironment {
|
|
8
|
+
readonly names: Array<string>;
|
|
9
|
+
private tagConfig;
|
|
10
|
+
private extensionsConfig;
|
|
11
|
+
constructor(names: Array<string>, config: GlintEnvironmentConfig);
|
|
12
|
+
static load(topLevelGlintConfigObject: any): GlintEnvironment;
|
|
13
|
+
getSourceKind(fileName: string): SourceKind | 'unknown';
|
|
14
|
+
isUntypedScript(path: string): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Returns any custom configuration for the given file extension.
|
|
17
|
+
*/
|
|
18
|
+
getConfigForExtension(extension: string): GlintExtensionConfig | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Returns an array of template tags that should be rewritten according to this
|
|
21
|
+
* config object, along with an import specifier indicating where the template types
|
|
22
|
+
* for each tag can be found.
|
|
23
|
+
*/
|
|
24
|
+
getConfiguredTemplateTags(): GlintTagsConfig;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=environment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,UAAU,EACX,MAAM,+BAA+B,CAAC;AAMvC,eAAO,MAAM,kBAAkB,EAAE,qBAGhC,CAAC;AAEF;;;GAGG;AACH,qBAAa,gBAAgB;aAKT,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;IAJtC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,gBAAgB,CAAwB;gBAG9B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EACpC,MAAM,EAAE,sBAAsB;WAOlB,IAAI,CAAC,yBAAyB,EAAE,GAAG,GAAG,gBAAgB;IAqE7D,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAKvD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI7C;;OAEG;IACI,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IAIjF;;;;OAIG;IACI,yBAAyB,IAAI,eAAe;CAGpD"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import * as path from 'node:path';
|
|
2
|
+
import SilentError from 'silent-error';
|
|
3
|
+
import emberTemplateImportsEnvironment from '../environment-ember-template-imports/-private/environment/index.js';
|
|
4
|
+
export const DEFAULT_EXTENSIONS = {
|
|
5
|
+
'.js': { kind: 'untyped-script' },
|
|
6
|
+
'.ts': { kind: 'typed-script' },
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* A GlintEnvironment represents the _merged_ configurations of one or more
|
|
10
|
+
* glint environments (e.g. ember-template-imports).
|
|
11
|
+
*/
|
|
12
|
+
export class GlintEnvironment {
|
|
13
|
+
constructor(names, config) {
|
|
14
|
+
this.names = names;
|
|
15
|
+
this.tagConfig = config.tags ?? {};
|
|
16
|
+
// when is this populated? what is config?
|
|
17
|
+
this.extensionsConfig = config.extensions ?? {};
|
|
18
|
+
}
|
|
19
|
+
static load(topLevelGlintConfigObject) {
|
|
20
|
+
// Glint V1:
|
|
21
|
+
let additionalGlobals = null;
|
|
22
|
+
let additionalSpecialForms = {};
|
|
23
|
+
if (topLevelGlintConfigObject) {
|
|
24
|
+
if (topLevelGlintConfigObject.additionalGlobals ||
|
|
25
|
+
topLevelGlintConfigObject.additionalSpecialForms) {
|
|
26
|
+
additionalGlobals = topLevelGlintConfigObject.additionalGlobals;
|
|
27
|
+
additionalSpecialForms = topLevelGlintConfigObject.additionalSpecialForms ?? {};
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
if (Array.isArray(topLevelGlintConfigObject.environment)) {
|
|
31
|
+
// If it's a legacy array of environment names, e.g. ['ember-template-imports', 'ember-loose'],
|
|
32
|
+
// then there is no additional config such as additionalGlobals to extract.
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
if (typeof topLevelGlintConfigObject.environment === 'object') {
|
|
36
|
+
const emberTemplateImportsConfig = topLevelGlintConfigObject.environment?.['ember-template-imports'] ?? {};
|
|
37
|
+
additionalGlobals = emberTemplateImportsConfig.additionalGlobals ?? [];
|
|
38
|
+
additionalSpecialForms = emberTemplateImportsConfig.additionalSpecialForms ?? {};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
let tags = {};
|
|
44
|
+
let extensions = { ...DEFAULT_EXTENSIONS };
|
|
45
|
+
const envUserConfig = { additionalGlobals, additionalSpecialForms };
|
|
46
|
+
let config = emberTemplateImportsEnvironment(envUserConfig);
|
|
47
|
+
if (config.tags) {
|
|
48
|
+
for (let [importSource, specifiers] of Object.entries(config.tags)) {
|
|
49
|
+
tags[importSource] ?? (tags[importSource] = {});
|
|
50
|
+
for (let [importSpecifier, tagConfig] of Object.entries(specifiers)) {
|
|
51
|
+
if (importSpecifier in tags[importSource]) {
|
|
52
|
+
throw new SilentError('Multiple configured Glint environments attempted to define behavior for the tag `' +
|
|
53
|
+
importSpecifier +
|
|
54
|
+
"` in module '" +
|
|
55
|
+
importSource +
|
|
56
|
+
"'.");
|
|
57
|
+
}
|
|
58
|
+
tags[importSource][importSpecifier] = tagConfig;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
if (config.extensions) {
|
|
63
|
+
for (let [extension, extensionConfig] of Object.entries(config.extensions)) {
|
|
64
|
+
if (extension in extensions) {
|
|
65
|
+
throw new SilentError('Multiple configured Glint environments attempted to define handling for the ' +
|
|
66
|
+
extension +
|
|
67
|
+
' file extension.');
|
|
68
|
+
}
|
|
69
|
+
extensions[extension] = extensionConfig;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return new GlintEnvironment(Object.keys(config), { tags, extensions });
|
|
73
|
+
}
|
|
74
|
+
getSourceKind(fileName) {
|
|
75
|
+
let extension = path.extname(fileName);
|
|
76
|
+
return this.extensionsConfig[extension]?.kind ?? 'unknown';
|
|
77
|
+
}
|
|
78
|
+
isUntypedScript(path) {
|
|
79
|
+
return this.getSourceKind(path) === 'untyped-script';
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Returns any custom configuration for the given file extension.
|
|
83
|
+
*/
|
|
84
|
+
getConfigForExtension(extension) {
|
|
85
|
+
return this.extensionsConfig[extension];
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Returns an array of template tags that should be rewritten according to this
|
|
89
|
+
* config object, along with an import specifier indicating where the template types
|
|
90
|
+
* for each tag can be found.
|
|
91
|
+
*/
|
|
92
|
+
getConfiguredTemplateTags() {
|
|
93
|
+
return this.tagConfig;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,WAAW,MAAM,cAAc,CAAC;AAEvC,OAAO,+BAA+B,MAAM,qEAAqE,CAAC;AAElH,MAAM,CAAC,MAAM,kBAAkB,GAA0B;IACvD,KAAK,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;IACjC,KAAK,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IAI3B,YACkB,KAAoB,EACpC,MAA8B;QADd,UAAK,GAAL,KAAK,CAAe;QAGpC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACnC,0CAA0C;QAC1C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,yBAA8B;QAC/C,YAAY;QACZ,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAC7B,IAAI,sBAAsB,GAAG,EAAE,CAAC;QAChC,IAAI,yBAAyB,EAAE,CAAC;YAC9B,IACE,yBAAyB,CAAC,iBAAiB;gBAC3C,yBAAyB,CAAC,sBAAsB,EAChD,CAAC;gBACD,iBAAiB,GAAG,yBAAyB,CAAC,iBAAiB,CAAC;gBAChE,sBAAsB,GAAG,yBAAyB,CAAC,sBAAsB,IAAI,EAAE,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,IAAI,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,WAAW,CAAC,EAAE,CAAC;oBACzD,+FAA+F;oBAC/F,2EAA2E;gBAC7E,CAAC;qBAAM,CAAC;oBACN,IAAI,OAAO,yBAAyB,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;wBAC9D,MAAM,0BAA0B,GAC9B,yBAAyB,CAAC,WAAW,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC;wBAC1E,iBAAiB,GAAG,0BAA0B,CAAC,iBAAiB,IAAI,EAAE,CAAC;wBACvE,sBAAsB,GAAG,0BAA0B,CAAC,sBAAsB,IAAI,EAAE,CAAC;oBACnF,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,IAAI,GAAoB,EAAE,CAAC;QAC/B,IAAI,UAAU,GAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;QAElE,MAAM,aAAa,GAAG,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,CAAC;QAEpE,IAAI,MAAM,GAAG,+BAA+B,CAAC,aAAa,CAA2B,CAAC;QAEtF,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,IAAI,CAAC,YAAY,MAAjB,IAAI,CAAC,YAAY,IAAM,EAAE,EAAC;gBAC1B,KAAK,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBACpE,IAAI,eAAe,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC1C,MAAM,IAAI,WAAW,CACnB,mFAAmF;4BACjF,eAAe;4BACf,eAAe;4BACf,YAAY;4BACZ,IAAI,CACP,CAAC;oBACJ,CAAC;oBAED,IAAI,CAAC,YAAY,CAAC,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;gBAClD,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3E,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;oBAC5B,MAAM,IAAI,WAAW,CACnB,8EAA8E;wBAC5E,SAAS;wBACT,kBAAkB,CACrB,CAAC;gBACJ,CAAC;gBAED,UAAU,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACzE,CAAC;IAEM,aAAa,CAAC,QAAgB;QACnC,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,IAAI,SAAS,CAAC;IAC7D,CAAC;IAEM,eAAe,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,gBAAgB,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,SAAiB;QAC5C,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACI,yBAAyB;QAC9B,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GlintConfig } from './config.js';
|
|
2
|
+
export { GlintConfig } from './config.js';
|
|
3
|
+
export { GlintEnvironment } from './environment.js';
|
|
4
|
+
export { ConfigLoader, findTypeScript } from './loader.js';
|
|
5
|
+
/**
|
|
6
|
+
* Loads glint configuration, starting from the given directory
|
|
7
|
+
* and searching upwards and raising an error if no configuration
|
|
8
|
+
* is found.
|
|
9
|
+
*/
|
|
10
|
+
export declare function loadConfig(from: string): GlintConfig;
|
|
11
|
+
/**
|
|
12
|
+
* Loads glint configuration, starting from the given directory
|
|
13
|
+
* and searching upwards. Returns `null` if no configuration is
|
|
14
|
+
* found.
|
|
15
|
+
*/
|
|
16
|
+
export declare function findConfig(from: string): GlintConfig | null;
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE3D;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAOpD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAE3D"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import SilentError from 'silent-error';
|
|
2
|
+
import { ConfigLoader } from './loader.js';
|
|
3
|
+
export { GlintConfig } from './config.js';
|
|
4
|
+
export { GlintEnvironment } from './environment.js';
|
|
5
|
+
export { ConfigLoader, findTypeScript } from './loader.js';
|
|
6
|
+
/**
|
|
7
|
+
* Loads glint configuration, starting from the given directory
|
|
8
|
+
* and searching upwards and raising an error if no configuration
|
|
9
|
+
* is found.
|
|
10
|
+
*/
|
|
11
|
+
export function loadConfig(from) {
|
|
12
|
+
let config = findConfig(from);
|
|
13
|
+
if (!config) {
|
|
14
|
+
throw new SilentError(`Unable to find Glint configuration for ${from}`);
|
|
15
|
+
}
|
|
16
|
+
return config;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Loads glint configuration, starting from the given directory
|
|
20
|
+
* and searching upwards. Returns `null` if no configuration is
|
|
21
|
+
* found.
|
|
22
|
+
*/
|
|
23
|
+
export function findConfig(from) {
|
|
24
|
+
return new ConfigLoader().configForDirectory(from);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE3D;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,WAAW,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI,YAAY,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { GlintConfigInput } from '@glint/ember-tsc/config-types';
|
|
2
|
+
import type TS from 'typescript';
|
|
3
|
+
import { GlintConfig } from './config.js';
|
|
4
|
+
/**
|
|
5
|
+
* @private
|
|
6
|
+
*
|
|
7
|
+
* Only exported for testing purposes. Do not import.
|
|
8
|
+
*/
|
|
9
|
+
export declare const require: NodeJS.Require;
|
|
10
|
+
type TypeScript = typeof TS;
|
|
11
|
+
/**
|
|
12
|
+
* `ConfigLoader` provides an interface for finding the Glint config that
|
|
13
|
+
* applies to a given file or directory, ensuring that only a single instance
|
|
14
|
+
* of `GlintConfig` is ever created for a given `tsconfig.json` or
|
|
15
|
+
* `jsconfig.json` source file.
|
|
16
|
+
*/
|
|
17
|
+
export declare class ConfigLoader {
|
|
18
|
+
private configs;
|
|
19
|
+
configForFile(filePath: string): GlintConfig | null;
|
|
20
|
+
configForDirectory(directory: string): GlintConfig | null;
|
|
21
|
+
}
|
|
22
|
+
export declare function findTypeScript(fromDir: string): TypeScript | null;
|
|
23
|
+
export declare function loadConfigInput(ts: TypeScript, entryPath: string): GlintConfigInput | null;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAKjE,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,OAAO,gBAAiC,CAAC;AAEtD,KAAK,UAAU,GAAG,OAAO,EAAE,CAAC;AAE5B;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAyC;IAEjD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAInD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;CAiBjE;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAMjE;AAiDD,wBAAgB,eAAe,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAE1F"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import * as fs from 'node:fs';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import * as path from 'node:path';
|
|
4
|
+
import SilentError from 'silent-error';
|
|
5
|
+
import { GlintConfig } from './config.js';
|
|
6
|
+
/**
|
|
7
|
+
* @private
|
|
8
|
+
*
|
|
9
|
+
* Only exported for testing purposes. Do not import.
|
|
10
|
+
*/
|
|
11
|
+
export const require = createRequire(import.meta.url);
|
|
12
|
+
/**
|
|
13
|
+
* `ConfigLoader` provides an interface for finding the Glint config that
|
|
14
|
+
* applies to a given file or directory, ensuring that only a single instance
|
|
15
|
+
* of `GlintConfig` is ever created for a given `tsconfig.json` or
|
|
16
|
+
* `jsconfig.json` source file.
|
|
17
|
+
*/
|
|
18
|
+
export class ConfigLoader {
|
|
19
|
+
constructor() {
|
|
20
|
+
this.configs = new Map();
|
|
21
|
+
}
|
|
22
|
+
configForFile(filePath) {
|
|
23
|
+
return this.configForDirectory(path.dirname(filePath));
|
|
24
|
+
}
|
|
25
|
+
configForDirectory(directory) {
|
|
26
|
+
let ts = findTypeScript(directory);
|
|
27
|
+
if (!ts)
|
|
28
|
+
return null;
|
|
29
|
+
let configPath = findNearestConfigFile(ts, directory);
|
|
30
|
+
if (!configPath)
|
|
31
|
+
return null;
|
|
32
|
+
let existing = this.configs.get(configPath);
|
|
33
|
+
if (existing !== undefined)
|
|
34
|
+
return existing;
|
|
35
|
+
let configInput = loadConfigInput(ts, configPath);
|
|
36
|
+
let config = new GlintConfig(ts, configPath, configInput || { environment: [] });
|
|
37
|
+
this.configs.set(configPath, config);
|
|
38
|
+
return config;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export function findTypeScript(fromDir) {
|
|
42
|
+
let requireFrom = path.resolve(fromDir, 'package.json');
|
|
43
|
+
return (tryResolve(() => createRequire(requireFrom)('typescript')) ??
|
|
44
|
+
tryResolve(() => require('typescript')));
|
|
45
|
+
}
|
|
46
|
+
function tryResolve(load) {
|
|
47
|
+
try {
|
|
48
|
+
return load();
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
if (error?.code === 'MODULE_NOT_FOUND') {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
throw error;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function parseConfigInput(ts, entryPath, currentPath, fullGlintConfig) {
|
|
58
|
+
let currentContents = ts.readConfigFile(currentPath, ts.sys.readFile).config;
|
|
59
|
+
let currentGlintConfig = currentContents.glint ?? {};
|
|
60
|
+
assert(currentPath === entryPath || !currentGlintConfig.transform, 'Glint `transform` options may not be specified in extended config.');
|
|
61
|
+
if (currentContents.extends) {
|
|
62
|
+
let paths = Array.isArray(currentContents.extends)
|
|
63
|
+
? currentContents.extends
|
|
64
|
+
: [currentContents.extends];
|
|
65
|
+
for (let extendPath of paths) {
|
|
66
|
+
let currentExtendPath = path.resolve(path.dirname(currentPath), extendPath);
|
|
67
|
+
if (!fs.existsSync(currentExtendPath)) {
|
|
68
|
+
try {
|
|
69
|
+
currentExtendPath = require.resolve(currentContents.extends);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
// suppress the exception thrown by require.resolve for those scenarios where the file does not exist
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
fullGlintConfig = parseConfigInput(ts, entryPath, currentExtendPath, fullGlintConfig);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return { ...fullGlintConfig, ...currentGlintConfig };
|
|
79
|
+
}
|
|
80
|
+
export function loadConfigInput(ts, entryPath) {
|
|
81
|
+
return validateConfigInput(parseConfigInput(ts, entryPath, entryPath, {}));
|
|
82
|
+
}
|
|
83
|
+
function findNearestConfigFile(ts, searchFrom) {
|
|
84
|
+
// Assume that the longest path is the most relevant one in the case that
|
|
85
|
+
// multiple config files exist at or above our current directory.
|
|
86
|
+
let configCandidates = [
|
|
87
|
+
ts.findConfigFile(searchFrom, ts.sys.fileExists, 'tsconfig.json'),
|
|
88
|
+
ts.findConfigFile(searchFrom, ts.sys.fileExists, 'jsconfig.json'),
|
|
89
|
+
]
|
|
90
|
+
.filter((path) => typeof path === 'string')
|
|
91
|
+
.sort((a, b) => b.length - a.length);
|
|
92
|
+
return configCandidates[0];
|
|
93
|
+
}
|
|
94
|
+
function validateConfigInput(input) {
|
|
95
|
+
if (!input['environment']) {
|
|
96
|
+
input['environment'] = [];
|
|
97
|
+
}
|
|
98
|
+
assert(Array.isArray(input['environment'])
|
|
99
|
+
? input['environment'].every((env) => typeof env === 'string')
|
|
100
|
+
: typeof input['environment'] === 'string' ||
|
|
101
|
+
(typeof input['environment'] === 'object' && input['environment']), 'Glint config must specify an `environment` that is a string, array of strings, or an object ' +
|
|
102
|
+
'mapping environment names to their config.');
|
|
103
|
+
return input;
|
|
104
|
+
}
|
|
105
|
+
function assert(test, message) {
|
|
106
|
+
if (!test) {
|
|
107
|
+
throw new SilentError(`Glint config: ${message}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../src/config/types.cts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type ts from 'typescript';
|
|
2
|
+
type TSLib = typeof ts;
|
|
3
|
+
export type GlintConfigInput = {
|
|
4
|
+
environment: string | Array<string> | Record<string, unknown>;
|
|
5
|
+
};
|
|
6
|
+
export type GlintEnvironmentConfig = {
|
|
7
|
+
tags?: GlintTagsConfig;
|
|
8
|
+
extensions?: GlintExtensionsConfig;
|
|
9
|
+
};
|
|
10
|
+
export type GlintExtensionPreprocess<T> = (source: string, filePath: string) => {
|
|
11
|
+
contents: string;
|
|
12
|
+
data?: T;
|
|
13
|
+
};
|
|
14
|
+
export type GlintEmitMetadata = {
|
|
15
|
+
prepend?: string;
|
|
16
|
+
append?: string;
|
|
17
|
+
templateLocation?: {
|
|
18
|
+
start: number;
|
|
19
|
+
end: number;
|
|
20
|
+
contentStart: number;
|
|
21
|
+
contentEnd: number;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
export type GlintExtensionTransform<T> = (data: T, state: {
|
|
25
|
+
ts: TSLib;
|
|
26
|
+
context: ts.TransformationContext;
|
|
27
|
+
setEmitMetadata: (node: ts.TaggedTemplateExpression, meta: GlintEmitMetadata) => void;
|
|
28
|
+
}) => ts.Transformer<ts.Node>;
|
|
29
|
+
export type GlintSpecialForm = 'if' | 'if-not' | 'yield' | 'object-literal' | 'array-literal' | 'bind-invokable' | '===' | '!==' | '&&' | '||' | '!';
|
|
30
|
+
export type GlintSpecialFormConfig = {
|
|
31
|
+
globals?: {
|
|
32
|
+
[global: string]: GlintSpecialForm;
|
|
33
|
+
};
|
|
34
|
+
imports?: {
|
|
35
|
+
[path: string]: {
|
|
36
|
+
[identifier: string]: GlintSpecialForm;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
export type SourceKind = 'typed-script' | 'untyped-script';
|
|
41
|
+
export type GlintExtensionConfig<PreprocessData = any> = {
|
|
42
|
+
kind: SourceKind;
|
|
43
|
+
preprocess?: GlintExtensionPreprocess<PreprocessData>;
|
|
44
|
+
transform?: GlintExtensionTransform<PreprocessData>;
|
|
45
|
+
};
|
|
46
|
+
export type GlintExtensionsConfig = {
|
|
47
|
+
[extension: string]: GlintExtensionConfig;
|
|
48
|
+
};
|
|
49
|
+
export type GlintTagConfig = {
|
|
50
|
+
typesModule: string;
|
|
51
|
+
globals?: Array<string>;
|
|
52
|
+
specialForms?: GlintSpecialFormConfig;
|
|
53
|
+
};
|
|
54
|
+
export type GlintTagsConfig = {
|
|
55
|
+
[importSource: string]: {
|
|
56
|
+
[importSpecifier: string]: GlintTagConfig;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
export {};
|
|
60
|
+
//# sourceMappingURL=types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../src/config/types.cts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAKjC,KAAK,KAAK,GAAG,OAAO,EAAE,CAAC;AAEvB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,CACxC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,KACb;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAEpC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,CACvC,IAAI,EAAE,CAAC,EACP,KAAK,EAAE;IACL,EAAE,EAAE,KAAK,CAAC;IACV,OAAO,EAAE,EAAE,CAAC,qBAAqB,CAAC;IAClC,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,EAAE,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACvF,KACE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAE7B,MAAM,MAAM,gBAAgB,GACxB,IAAI,GACJ,QAAQ,GACR,OAAO,GACP,gBAAgB,GAChB,eAAe,GACf,gBAAgB,GAChB,KAAK,GACL,KAAK,GACL,IAAI,GACJ,IAAI,GACJ,GAAG,CAAC;AAER,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAC;IACjD,OAAO,CAAC,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG;YACd,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAAC;SACxC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAC3D,MAAM,MAAM,oBAAoB,CAAC,cAAc,GAAG,GAAG,IAAI;IACvD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,CAAC,EAAE,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACtD,SAAS,CAAC,EAAE,uBAAuB,CAAC,cAAc,CAAC,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,YAAY,CAAC,EAAE,sBAAsB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,YAAY,EAAE,MAAM,GAAG;QACtB,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc,CAAC;KAC3C,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type PreprocessData = {
|
|
2
|
+
templateLocations: Array<TemplateLocation>;
|
|
3
|
+
};
|
|
4
|
+
export type TemplateLocation = {
|
|
5
|
+
startTagOffset: number;
|
|
6
|
+
startTagLength: number;
|
|
7
|
+
endTagOffset: number;
|
|
8
|
+
endTagLength: number;
|
|
9
|
+
transformedStart: number;
|
|
10
|
+
transformedEnd: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const GLOBAL_TAG = "___T";
|
|
13
|
+
//# sourceMappingURL=common.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/environment-ember-template-imports/-private/environment/common.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,iBAAiB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,UAAU,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/environment-ember-template-imports/-private/environment/common.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/environment-ember-template-imports/-private/environment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,+BAA+B,CAAC;AAI/F,MAAM,CAAC,OAAO,UAAU,+BAA+B,CACrD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,sBAAsB,CA4ExB"}
|