@glint/ember-tsc 1.5.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/package.json +14 -3
  2. package/src/environment-ember-template-imports/-private/environment/index.ts +48 -20
  3. package/types/-private/dsl/globals.d.ts +316 -1
  4. package/types/-private/intrinsics/array-hash.d.ts +17 -0
  5. package/types/-private/intrinsics/comparison.d.ts +36 -0
  6. package/types/-private/intrinsics/element.d.ts +14 -0
  7. package/types/-private/intrinsics/truth-convert.d.ts +86 -0
  8. package/types/-private/intrinsics/truth-helpers.d.ts +32 -0
  9. package/lib/cli/run-volar-tsc.d.ts +0 -2
  10. package/lib/cli/run-volar-tsc.d.ts.map +0 -1
  11. package/lib/cli/run-volar-tsc.js +0 -32
  12. package/lib/cli/run-volar-tsc.js.map +0 -1
  13. package/lib/config/config.d.ts +0 -15
  14. package/lib/config/config.d.ts.map +0 -1
  15. package/lib/config/config.js +0 -21
  16. package/lib/config/config.js.map +0 -1
  17. package/lib/config/environment.d.ts +0 -26
  18. package/lib/config/environment.d.ts.map +0 -1
  19. package/lib/config/environment.js +0 -96
  20. package/lib/config/environment.js.map +0 -1
  21. package/lib/config/index.d.ts +0 -24
  22. package/lib/config/index.d.ts.map +0 -1
  23. package/lib/config/index.js +0 -37
  24. package/lib/config/index.js.map +0 -1
  25. package/lib/config/loader.d.ts +0 -28
  26. package/lib/config/loader.d.ts.map +0 -1
  27. package/lib/config/loader.js +0 -121
  28. package/lib/config/loader.js.map +0 -1
  29. package/lib/config/types.cjs +0 -3
  30. package/lib/config/types.cjs.map +0 -1
  31. package/lib/config/types.d.cts +0 -60
  32. package/lib/config/types.d.cts.map +0 -1
  33. package/lib/environment-ember-template-imports/-private/environment/common.d.ts +0 -13
  34. package/lib/environment-ember-template-imports/-private/environment/common.d.ts.map +0 -1
  35. package/lib/environment-ember-template-imports/-private/environment/common.js +0 -2
  36. package/lib/environment-ember-template-imports/-private/environment/common.js.map +0 -1
  37. package/lib/environment-ember-template-imports/-private/environment/index.d.ts +0 -3
  38. package/lib/environment-ember-template-imports/-private/environment/index.d.ts.map +0 -1
  39. package/lib/environment-ember-template-imports/-private/environment/index.js +0 -76
  40. package/lib/environment-ember-template-imports/-private/environment/index.js.map +0 -1
  41. package/lib/environment-ember-template-imports/-private/environment/preprocess.d.ts +0 -4
  42. package/lib/environment-ember-template-imports/-private/environment/preprocess.d.ts.map +0 -1
  43. package/lib/environment-ember-template-imports/-private/environment/preprocess.js +0 -42
  44. package/lib/environment-ember-template-imports/-private/environment/preprocess.js.map +0 -1
  45. package/lib/environment-ember-template-imports/-private/environment/transform.d.ts +0 -4
  46. package/lib/environment-ember-template-imports/-private/environment/transform.d.ts.map +0 -1
  47. package/lib/environment-ember-template-imports/-private/environment/transform.js +0 -134
  48. package/lib/environment-ember-template-imports/-private/environment/transform.js.map +0 -1
  49. package/lib/index.d.ts +0 -7
  50. package/lib/index.d.ts.map +0 -1
  51. package/lib/index.js +0 -6
  52. package/lib/index.js.map +0 -1
  53. package/lib/plugins/g-compiler-errors.d.ts +0 -12
  54. package/lib/plugins/g-compiler-errors.d.ts.map +0 -1
  55. package/lib/plugins/g-compiler-errors.js +0 -58
  56. package/lib/plugins/g-compiler-errors.js.map +0 -1
  57. package/lib/plugins/g-component-hover.d.ts +0 -24
  58. package/lib/plugins/g-component-hover.d.ts.map +0 -1
  59. package/lib/plugins/g-component-hover.js +0 -135
  60. package/lib/plugins/g-component-hover.js.map +0 -1
  61. package/lib/plugins/g-template-tag-symbols.d.ts +0 -11
  62. package/lib/plugins/g-template-tag-symbols.d.ts.map +0 -1
  63. package/lib/plugins/g-template-tag-symbols.js +0 -48
  64. package/lib/plugins/g-template-tag-symbols.js.map +0 -1
  65. package/lib/plugins/utils.d.ts +0 -25
  66. package/lib/plugins/utils.d.ts.map +0 -1
  67. package/lib/plugins/utils.js +0 -63
  68. package/lib/plugins/utils.js.map +0 -1
  69. package/lib/transform/diagnostics/augmentation.d.ts +0 -4
  70. package/lib/transform/diagnostics/augmentation.d.ts.map +0 -1
  71. package/lib/transform/diagnostics/augmentation.js +0 -249
  72. package/lib/transform/diagnostics/augmentation.js.map +0 -1
  73. package/lib/transform/diagnostics/index.d.ts +0 -5
  74. package/lib/transform/diagnostics/index.d.ts.map +0 -1
  75. package/lib/transform/diagnostics/index.js +0 -2
  76. package/lib/transform/diagnostics/index.js.map +0 -1
  77. package/lib/transform/index.d.ts +0 -4
  78. package/lib/transform/index.d.ts.map +0 -1
  79. package/lib/transform/index.js +0 -2
  80. package/lib/transform/index.js.map +0 -1
  81. package/lib/transform/template/code-features.d.ts +0 -30
  82. package/lib/transform/template/code-features.d.ts.map +0 -1
  83. package/lib/transform/template/code-features.js +0 -26
  84. package/lib/transform/template/code-features.js.map +0 -1
  85. package/lib/transform/template/glimmer-ast-mapping-tree.d.ts +0 -80
  86. package/lib/transform/template/glimmer-ast-mapping-tree.d.ts.map +0 -1
  87. package/lib/transform/template/glimmer-ast-mapping-tree.js +0 -132
  88. package/lib/transform/template/glimmer-ast-mapping-tree.js.map +0 -1
  89. package/lib/transform/template/inlining/index.d.ts +0 -16
  90. package/lib/transform/template/inlining/index.d.ts.map +0 -1
  91. package/lib/transform/template/inlining/index.js +0 -21
  92. package/lib/transform/template/inlining/index.js.map +0 -1
  93. package/lib/transform/template/inlining/tagged-strings.d.ts +0 -8
  94. package/lib/transform/template/inlining/tagged-strings.d.ts.map +0 -1
  95. package/lib/transform/template/inlining/tagged-strings.js +0 -140
  96. package/lib/transform/template/inlining/tagged-strings.js.map +0 -1
  97. package/lib/transform/template/map-template-contents.d.ts +0 -121
  98. package/lib/transform/template/map-template-contents.d.ts.map +0 -1
  99. package/lib/transform/template/map-template-contents.js +0 -287
  100. package/lib/transform/template/map-template-contents.js.map +0 -1
  101. package/lib/transform/template/rewrite-module.d.ts +0 -22
  102. package/lib/transform/template/rewrite-module.d.ts.map +0 -1
  103. package/lib/transform/template/rewrite-module.js +0 -265
  104. package/lib/transform/template/rewrite-module.js.map +0 -1
  105. package/lib/transform/template/scope-stack.d.ts +0 -13
  106. package/lib/transform/template/scope-stack.d.ts.map +0 -1
  107. package/lib/transform/template/scope-stack.js +0 -28
  108. package/lib/transform/template/scope-stack.js.map +0 -1
  109. package/lib/transform/template/template-to-typescript.d.ts +0 -19
  110. package/lib/transform/template/template-to-typescript.d.ts.map +0 -1
  111. package/lib/transform/template/template-to-typescript.js +0 -1125
  112. package/lib/transform/template/template-to-typescript.js.map +0 -1
  113. package/lib/transform/template/transformed-module.d.ts +0 -111
  114. package/lib/transform/template/transformed-module.d.ts.map +0 -1
  115. package/lib/transform/template/transformed-module.js +0 -287
  116. package/lib/transform/template/transformed-module.js.map +0 -1
  117. package/lib/transform/util.d.ts +0 -7
  118. package/lib/transform/util.d.ts.map +0 -1
  119. package/lib/transform/util.js +0 -15
  120. package/lib/transform/util.js.map +0 -1
  121. package/lib/volar/ember-language-plugin.d.ts +0 -14
  122. package/lib/volar/ember-language-plugin.d.ts.map +0 -1
  123. package/lib/volar/ember-language-plugin.js +0 -91
  124. package/lib/volar/ember-language-plugin.js.map +0 -1
  125. package/lib/volar/gts-virtual-code.d.ts +0 -83
  126. package/lib/volar/gts-virtual-code.d.ts.map +0 -1
  127. package/lib/volar/gts-virtual-code.js +0 -210
  128. package/lib/volar/gts-virtual-code.js.map +0 -1
  129. package/lib/volar/language-server.d.ts +0 -2
  130. package/lib/volar/language-server.d.ts.map +0 -1
  131. package/lib/volar/language-server.js +0 -180
  132. package/lib/volar/language-server.js.map +0 -1
  133. package/lib/volar/script-snapshot.d.ts +0 -17
  134. package/lib/volar/script-snapshot.d.ts.map +0 -1
  135. package/lib/volar/script-snapshot.js +0 -24
  136. package/lib/volar/script-snapshot.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"template-to-typescript.js","sourceRoot":"","sources":["../../../src/transform/template/template-to-typescript.ts"],"names":[],"mappings":"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"}
@@ -1,111 +0,0 @@
1
- import type { AST } from '@glimmer/syntax';
2
- import { CodeMapping } from '@volar/language-core';
3
- import GlimmerASTMappingTree from './glimmer-ast-mapping-tree.js';
4
- export type Range = {
5
- start: number;
6
- end: number;
7
- };
8
- export type RangeWithMapping = Range & {
9
- mapping?: GlimmerASTMappingTree;
10
- };
11
- export type RangeWithMappingAndSource = RangeWithMapping & {
12
- source: SourceFile;
13
- };
14
- export type CorrelatedSpan = {
15
- /** Where this span of content originated */
16
- originalFile: SourceFile;
17
- /** The offset where this content began in its original source */
18
- originalStart: number;
19
- /** The length of this span's content in its original source */
20
- originalLength: number;
21
- /** The location in the untransformed source where this span is spliced in */
22
- insertionPoint: number;
23
- /** The contents of this span in the transformed output */
24
- transformedSource: string;
25
- /** The offset in the transformed output of this span */
26
- transformedStart: number;
27
- /** The length of this span in the transformed output */
28
- transformedLength: number;
29
- /** (Glimmer/Handlebars spans only:) A mapping of offsets within this span between its original and transformed versions */
30
- glimmerAstMapping?: GlimmerASTMappingTree;
31
- };
32
- export type DirectiveKind = 'ignore' | 'expect-error' | 'nocheck';
33
- export type Directive = {
34
- kind: DirectiveKind;
35
- commentNode: AST.CommentStatement | AST.MustacheCommentStatement;
36
- source: SourceFile;
37
- location: Range;
38
- areaOfEffect: Range;
39
- /** The number of errors that have been reported for this directive */
40
- errorCount: number;
41
- };
42
- export type TransformError = {
43
- isContentTagError?: boolean;
44
- message: string;
45
- location: Range;
46
- source: SourceFile;
47
- };
48
- export type SourceFile = {
49
- filename: string;
50
- contents: string;
51
- };
52
- export type TemplateSymbol = {
53
- start: number;
54
- end: number;
55
- startTagEnd: number;
56
- };
57
- /**
58
- * This class represents the result of transforming a TypeScript
59
- * module with one or more embedded HBS templates. It contains
60
- * both the original and transformed source text of the module, as
61
- * well any errors encountered during transformation.
62
- *
63
- * It is used heavily for bidirectional source mapping between the original TS/HBS code
64
- * and the singular transformed TS output (aka the Intermediate Representation).
65
- * It can be queried with an offset or range in either the
66
- * original or transformed source to determine the corresponding
67
- * offset or range in the other.
68
- */
69
- export default class TransformedModule {
70
- readonly transformedContents: string;
71
- readonly errors: ReadonlyArray<TransformError>;
72
- readonly directives: ReadonlyArray<Directive>;
73
- readonly correlatedSpans: Array<CorrelatedSpan>;
74
- readonly originalFileName: string;
75
- constructor(transformedContents: string, errors: ReadonlyArray<TransformError>, directives: ReadonlyArray<Directive>, correlatedSpans: Array<CorrelatedSpan>, originalFileName: string);
76
- toDebugString(): string;
77
- getOriginalOffset(transformedOffset: number): {
78
- source?: SourceFile;
79
- offset: number;
80
- };
81
- getTransformedOffset(originalFileName: string, originalOffset: number): number;
82
- getOriginalRange(transformedStart: number, transformedEnd: number): RangeWithMappingAndSource;
83
- getTransformedRange(originalFileName: string, originalStart: number, originalEnd: number): RangeWithMapping;
84
- getExactTransformedRanges(originalFileName: string, originalStart: number, originalEnd: number): GlimmerASTMappingTree[];
85
- findTemplateAtOriginalOffset(originalFileName: string, originalOffset: number): {
86
- originalContentStart: number;
87
- originalContentEnd: number;
88
- originalContent: string;
89
- } | null;
90
- private determineOriginalOffsetAndSpan;
91
- private determineTransformedOffsetAndSpan;
92
- /**
93
- * Converts the mappings in this transformed module to the format expected by Volar.
94
- *
95
- * The main difference between the two formats is that while the classic Glint transformation
96
- * mappings support mapping a differently sized source region to a differently sized target region
97
- * (e.g. `{{expectsAtLeastOneArg}}` in an .hbs file to `__glintDSL__.emitContent(__glintDSL__.resolveOrReturn(expectsAtLeastOneArg)());`
98
- * in a generated TS file, in Volar you can only map regions of the same size.
99
- *
100
- * In the case that you need to map regions of different sizes in Volar, you need to use
101
- * zero-length mappings to delineate regions/boundaries that should map to each other, otherwise there will
102
- * be cases where TS diagnostics will fail to transform/map back to the original source. Example:
103
- *
104
- * - `{{[[ZEROLEN-A]][[expectsAtLeastOneArg]][[ZEROLEN-B]]}}`
105
- * - to
106
- * - `[[ZEROLEN-A]]__glintDSL__.emitContent(__glintDSL__.resolveOrReturn([[expectsAtLeastOneArg]])());[[ZEROLEN-B]]`
107
- */
108
- toVolarMappings(filenameFilter?: string): CodeMapping[];
109
- templateSymbols(): Array<TemplateSymbol>;
110
- }
111
- //# sourceMappingURL=transformed-module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformed-module.d.ts","sourceRoot":"","sources":["../../../src/transform/template/transformed-module.ts"],"names":[],"mappings":"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"}
@@ -1,287 +0,0 @@
1
- import { assert } from '../util.js';
2
- import { codeFeatures } from './code-features.js';
3
- /**
4
- * This class represents the result of transforming a TypeScript
5
- * module with one or more embedded HBS templates. It contains
6
- * both the original and transformed source text of the module, as
7
- * well any errors encountered during transformation.
8
- *
9
- * It is used heavily for bidirectional source mapping between the original TS/HBS code
10
- * and the singular transformed TS output (aka the Intermediate Representation).
11
- * It can be queried with an offset or range in either the
12
- * original or transformed source to determine the corresponding
13
- * offset or range in the other.
14
- */
15
- export default class TransformedModule {
16
- constructor(transformedContents, errors, directives, correlatedSpans, originalFileName) {
17
- this.transformedContents = transformedContents;
18
- this.errors = errors;
19
- this.directives = directives;
20
- this.correlatedSpans = correlatedSpans;
21
- this.originalFileName = originalFileName;
22
- }
23
- toDebugString() {
24
- let mappingStrings = this.correlatedSpans.map((span) => span.glimmerAstMapping?.toDebugString({
25
- originalStart: span.originalStart,
26
- originalSource: span.originalFile.contents.slice(span.originalStart, span.originalStart + span.originalLength),
27
- transformedStart: span.transformedStart,
28
- transformedSource: span.transformedSource,
29
- }));
30
- return `TransformedModule\n\n${mappingStrings.filter(Boolean).join('\n\n')}`;
31
- }
32
- getOriginalOffset(transformedOffset) {
33
- let { start, source } = this.getOriginalRange(transformedOffset, transformedOffset);
34
- return { source, offset: start };
35
- }
36
- getTransformedOffset(originalFileName, originalOffset) {
37
- return this.getTransformedRange(originalFileName, originalOffset, originalOffset).start;
38
- }
39
- getOriginalRange(transformedStart, transformedEnd) {
40
- let startInfo = this.determineOriginalOffsetAndSpan(transformedStart);
41
- let endInfo = this.determineOriginalOffsetAndSpan(transformedEnd);
42
- assert(startInfo.correlatedSpan.originalFile === endInfo.correlatedSpan.originalFile, 'Attempted to transform a range across two different files');
43
- let source = startInfo.correlatedSpan.originalFile;
44
- let start = startInfo.originalOffset;
45
- let end = endInfo.originalOffset;
46
- if (startInfo.correlatedSpan === endInfo.correlatedSpan) {
47
- let { correlatedSpan } = startInfo;
48
- let mapping = correlatedSpan.glimmerAstMapping?.narrowestMappingForTransformedRange({
49
- start: start - correlatedSpan.originalStart,
50
- end: end - correlatedSpan.originalStart,
51
- });
52
- if (mapping) {
53
- let start = correlatedSpan.originalStart + mapping.originalRange.start;
54
- let end = correlatedSpan.originalStart + mapping.originalRange.end;
55
- return { mapping, start, end, source };
56
- }
57
- }
58
- return { start, end, source };
59
- }
60
- getTransformedRange(originalFileName, originalStart, originalEnd) {
61
- let startInfo = this.determineTransformedOffsetAndSpan(originalFileName, originalStart);
62
- let endInfo = this.determineTransformedOffsetAndSpan(originalFileName, originalEnd);
63
- let start = startInfo.transformedOffset;
64
- let end = endInfo.transformedOffset;
65
- if (startInfo.correlatedSpan && startInfo.correlatedSpan === endInfo.correlatedSpan) {
66
- let { correlatedSpan } = startInfo;
67
- let mapping = correlatedSpan.glimmerAstMapping?.narrowestMappingForOriginalRange({
68
- start: start - correlatedSpan.transformedStart,
69
- end: end - correlatedSpan.transformedStart,
70
- });
71
- if (mapping) {
72
- let start = correlatedSpan.transformedStart + mapping.transformedRange.start;
73
- let end = correlatedSpan.transformedStart + mapping.transformedRange.end;
74
- return { mapping, start, end };
75
- }
76
- }
77
- return { start, end };
78
- }
79
- getExactTransformedRanges(originalFileName, originalStart, originalEnd) {
80
- let startInfo = this.determineTransformedOffsetAndSpan(originalFileName, originalStart);
81
- let endInfo = this.determineTransformedOffsetAndSpan(originalFileName, originalEnd);
82
- let start = startInfo.transformedOffset;
83
- let end = endInfo.transformedOffset;
84
- if (startInfo.correlatedSpan && startInfo.correlatedSpan === endInfo.correlatedSpan) {
85
- let { correlatedSpan } = startInfo;
86
- return (correlatedSpan.glimmerAstMapping?.exactMappingsForOriginalRange({
87
- start: start - correlatedSpan.transformedStart,
88
- end: end - correlatedSpan.transformedStart,
89
- }) || []);
90
- }
91
- return [];
92
- }
93
- findTemplateAtOriginalOffset(originalFileName, originalOffset) {
94
- let { correlatedSpan } = this.determineTransformedOffsetAndSpan(originalFileName, originalOffset);
95
- if (!correlatedSpan.glimmerAstMapping) {
96
- return null;
97
- }
98
- let templateMapping = correlatedSpan.glimmerAstMapping?.children[0];
99
- assert(correlatedSpan.glimmerAstMapping?.sourceNode.type === 'TemplateEmbedding' &&
100
- templateMapping?.sourceNode.type === 'Template', 'Internal error: unexpected mapping structure.' + ` (${templateMapping?.sourceNode.type})`);
101
- let originalContentStart = correlatedSpan.originalStart + templateMapping.originalRange.start;
102
- let originalContentEnd = correlatedSpan.originalStart + templateMapping.originalRange.end;
103
- let originalContent = correlatedSpan.originalFile.contents.slice(originalContentStart, originalContentEnd);
104
- return { originalContentStart, originalContentEnd, originalContent };
105
- }
106
- determineOriginalOffsetAndSpan(transformedOffset) {
107
- for (let span of this.correlatedSpans) {
108
- if (transformedOffset >= span.transformedStart &&
109
- transformedOffset <= span.transformedStart + span.transformedLength) {
110
- return {
111
- originalOffset: transformedOffset - span.transformedStart + span.originalStart,
112
- correlatedSpan: span,
113
- };
114
- }
115
- }
116
- assert(false, 'Internal error: offset out of bounds');
117
- }
118
- determineTransformedOffsetAndSpan(originalFileName, originalOffset) {
119
- for (let span of this.correlatedSpans) {
120
- if (span.originalFile.filename === originalFileName &&
121
- originalOffset >= span.originalStart &&
122
- originalOffset < span.originalStart + span.originalLength) {
123
- return {
124
- transformedOffset: originalOffset - span.originalStart + span.transformedStart,
125
- correlatedSpan: span,
126
- };
127
- }
128
- }
129
- assert(false, 'Internal error: offset out of bounds');
130
- }
131
- /**
132
- * Converts the mappings in this transformed module to the format expected by Volar.
133
- *
134
- * The main difference between the two formats is that while the classic Glint transformation
135
- * mappings support mapping a differently sized source region to a differently sized target region
136
- * (e.g. `{{expectsAtLeastOneArg}}` in an .hbs file to `__glintDSL__.emitContent(__glintDSL__.resolveOrReturn(expectsAtLeastOneArg)());`
137
- * in a generated TS file, in Volar you can only map regions of the same size.
138
- *
139
- * In the case that you need to map regions of different sizes in Volar, you need to use
140
- * zero-length mappings to delineate regions/boundaries that should map to each other, otherwise there will
141
- * be cases where TS diagnostics will fail to transform/map back to the original source. Example:
142
- *
143
- * - `{{[[ZEROLEN-A]][[expectsAtLeastOneArg]][[ZEROLEN-B]]}}`
144
- * - to
145
- * - `[[ZEROLEN-A]]__glintDSL__.emitContent(__glintDSL__.resolveOrReturn([[expectsAtLeastOneArg]])());[[ZEROLEN-B]]`
146
- */
147
- toVolarMappings(filenameFilter) {
148
- const codeMappings = [];
149
- const push = (sourceOffset, generatedOffset, length, codeInformation) => {
150
- // if (sourceOffsets.length > 0) {
151
- // TODO: these assertions are firing for certain files/transformations, which means
152
- // we're emitting unsorted mappings, which means volar has to fall back to an inefficient
153
- // source mapping algorithm rather than using binary search:
154
- // https://github.com/volarjs/volar.js/blob/3798f27684f5c671f06bf7a19e32bc489e652e14/packages/source-map/lib/translateOffset.ts#L18
155
- //
156
- // The fix for this is probably somewhere in the `template-to-typescript.ts` file, but I
157
- // don't have a sense for how complicated that'll be.
158
- // assert(
159
- // sourceOffset >= sourceOffsets[sourceOffsets.length - 1],
160
- // 'Source offsets should be monotonically increasing',
161
- // );
162
- // assert(
163
- // generatedOffset >= generatedOffsets[generatedOffsets.length - 1],
164
- // 'Generated offsets should be monotonically increasing',
165
- // );
166
- // }
167
- codeMappings.push({
168
- sourceOffsets: [sourceOffset],
169
- generatedOffsets: [generatedOffset],
170
- lengths: [length],
171
- data: codeInformation || {},
172
- });
173
- };
174
- let recurse = (span, mapping) => {
175
- const children = mapping.children;
176
- let { originalRange, transformedRange } = mapping;
177
- let hbsStart = span.originalStart + originalRange.start;
178
- let hbsEnd = span.originalStart + originalRange.end;
179
- let tsStart = span.transformedStart + transformedRange.start;
180
- let tsEnd = span.transformedStart + transformedRange.end;
181
- // Push mappings for equal length mapping even if there are children;
182
- // Need to support recursive `forNode()`s map monotonically
183
- // smaller chunks of generated code to the same source region, e.g.
184
- //
185
- // source: `{{foo 1 2 3}}`
186
- //
187
- // This might produce something like:
188
- //
189
- // __glintDSL__.resolve('foo')(1, 2, 3)
190
- //
191
- // and depending on the nature of the type error, the diagnostic raised
192
- // might originate from any of the following ranges:
193
- //
194
- // __glintDSL__.resolve('foo')(1, 2, 3)
195
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~
196
- //
197
- // __glintDSL__.resolve('foo')(1, 2, 3)
198
- // ~~~~~
199
- //
200
- // __glintDSL__.resolve('foo')(1, 2, 3)
201
- // ~~~~~~~~~
202
- //
203
- // We have some flexibility as to whether we want to map back to the entire
204
- // `{{foo 1 2 3}}` region or perhaps just `1 2 3` or some other subset, but regardless,
205
- // we need to support the case that multiple overlapping (or even non-overlapping) spans
206
- // of generated code map back to the same source region.
207
- const hbsLength = hbsEnd - hbsStart;
208
- const tsLength = tsEnd - tsStart;
209
- // Disregard the "null zone" mappings, i.e. cases where TS code maps to empty HBS code
210
- const isNonNullMapping = hbsLength > 0 && tsLength > 0;
211
- if (children.length > 0) {
212
- if (isNonNullMapping) {
213
- push(hbsStart, tsStart, 0, mapping.codeInformation);
214
- }
215
- mapping.children.forEach((child) => {
216
- recurse(span, child);
217
- });
218
- // Disregard the "null zone" mappings, i.e. cases where TS code maps to empty HBS code
219
- if (isNonNullMapping) {
220
- push(hbsEnd, tsEnd, 0, mapping.codeInformation);
221
- }
222
- }
223
- else {
224
- if (hbsLength === tsLength) {
225
- push(hbsStart, tsStart, hbsLength, mapping.codeInformation);
226
- }
227
- else {
228
- // Disregard the "null zone" mappings, i.e. cases where TS code maps to empty HBS code
229
- if (isNonNullMapping) {
230
- push(hbsStart, tsStart, 0, mapping.codeInformation);
231
- push(hbsEnd, tsEnd, 0, mapping.codeInformation);
232
- }
233
- }
234
- }
235
- };
236
- this.correlatedSpans.forEach((span) => {
237
- if (filenameFilter && span.originalFile.filename !== filenameFilter) {
238
- return;
239
- }
240
- if (span.glimmerAstMapping) {
241
- // this span is transformation from HBS to TS (either the replaced contents
242
- // within `<template>` tags in a .gts file
243
- recurse(span, span.glimmerAstMapping);
244
- }
245
- else {
246
- // This span contains untransformed TS content (because it comes
247
- // from a region of source code that is already TS, e.g. the top of a .gts file,
248
- // outside of any `<template>` tags). Because there's no transformation,
249
- // we expect these to be the same length (in fact, they
250
- // should be the same string entirely)
251
- // This assertion seemed valid when parsing .gts files with extracted hbs in <template> tags,
252
- // but when parsing solo .hbs files in loose mode there were cases where, e.g.,
253
- // originalLength == 0 and transformLength == 1;
254
- // assert(
255
- // span.originalLength === span.transformedLength,
256
- // 'span length mismatch for untransformed content'
257
- // );
258
- if (span.originalLength === span.transformedLength) {
259
- // TODO: audit usage of `codeFeatures.all` here: https://github.com/typed-ember/glint/issues/769
260
- // There are cases where we need to be disabling certain features to prevent, e.g., navigation
261
- // that targets an "in-between" piece of generated code.
262
- push(span.originalStart, span.transformedStart, span.originalLength, {
263
- ...codeFeatures.all,
264
- // This enables symbol/outline info for the transformed TS to appear in for the .gts file.
265
- structure: true,
266
- });
267
- }
268
- }
269
- });
270
- return codeMappings;
271
- }
272
- templateSymbols() {
273
- const result = [];
274
- this.correlatedSpans.forEach((span) => {
275
- if (span.glimmerAstMapping) {
276
- // This is a template span
277
- result.push({
278
- start: span.originalStart,
279
- end: span.originalStart + span.originalLength,
280
- startTagEnd: span.originalStart + span.originalLength,
281
- });
282
- }
283
- });
284
- return result;
285
- }
286
- }
287
- //# sourceMappingURL=transformed-module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformed-module.js","sourceRoot":"","sources":["../../../src/transform/template/transformed-module.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import type ts from 'typescript';
2
- import { SourceFile } from './template/transformed-module.js';
3
- export type TSLib = typeof ts;
4
- export declare function unreachable(value: never, message?: string): never;
5
- export declare function assert(test: unknown, message?: string | (() => string)): asserts test;
6
- export declare function createSyntheticSourceFile(ts: TSLib, source: SourceFile): ts.SourceFile;
7
- //# sourceMappingURL=util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/transform/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;AAE9B,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,SAAqB,GAAG,KAAK,CAE7E;AAED,wBAAgB,MAAM,CACpB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAoB,GAClD,OAAO,CAAC,IAAI,CAId;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,GAAG,EAAE,CAAC,UAAU,CAKtF"}
@@ -1,15 +0,0 @@
1
- export function unreachable(value, message = 'unreachable code') {
2
- throw new Error(`[ember-tsc] Internal error: ${message}`);
3
- }
4
- export function assert(test, message = 'Internal error') {
5
- if (test == null || test === false) {
6
- throw new Error(typeof message === 'string' ? message : message());
7
- }
8
- }
9
- export function createSyntheticSourceFile(ts, source) {
10
- return Object.assign(ts.createSourceFile(source.filename, '', ts.ScriptTarget.Latest), {
11
- text: source.contents,
12
- end: source.contents.length,
13
- });
14
- }
15
- //# sourceMappingURL=util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/transform/util.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,OAAO,GAAG,kBAAkB;IACpE,MAAM,IAAI,KAAK,CAAC,+BAA+B,OAAO,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,IAAa,EACb,UAAmC,gBAAgB;IAEnD,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAS,EAAE,MAAkB;IACrE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;QACrF,IAAI,EAAE,MAAM,CAAC,QAAQ;QACrB,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KAC5B,CAAC,CAAC;AACL,CAAC"}
@@ -1,14 +0,0 @@
1
- import { LanguagePlugin } from '@volar/language-core';
2
- import type ts from 'typescript';
3
- import { URI } from 'vscode-uri';
4
- import { GlintConfig } from '../index.js';
5
- export type TS = typeof ts;
6
- /**
7
- * Create a [Volar](https://volarjs.dev) language plugin to support
8
- *
9
- * - .gts/.gjs files (the `ember-template-imports` environment)
10
- */
11
- export declare function createEmberLanguagePlugin<T extends URI | string>(glintConfig: GlintConfig, { clientId }?: {
12
- clientId?: string;
13
- }): LanguagePlugin<T>;
14
- //# sourceMappingURL=ember-language-plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ember-language-plugin.d.ts","sourceRoot":"","sources":["../../src/volar/ember-language-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;AAE3B;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,EAC9D,WAAW,EAAE,WAAW,EACxB,EAAE,QAAQ,EAAE,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GACvC,cAAc,CAAC,CAAC,CAAC,CA4FnB"}