File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 3131 "release" : " release-it"
3232 },
3333 "devDependencies" : {
34- "@angular/compiler" : " 21.0.7 " ,
34+ "@angular/compiler" : " 21.1.0-rc.0 " ,
3535 "@babel/code-frame" : " 8.0.0-beta.3" ,
3636 "@babel/parser" : " 8.0.0-beta.3" ,
3737 "@babel/types" : " 8.0.0-beta.3" ,
5353 "vitest" : " 4.0.16"
5454 },
5555 "peerDependencies" : {
56- "@angular/compiler" : " >=21.0.7"
56+ "@angular/compiler" : " >=21.0.7 || >= 21.1.0-0 "
5757 },
5858 "engines" : {
5959 "node" : " >= 20"
Original file line number Diff line number Diff line change @@ -19,6 +19,21 @@ export const visitLiteralMap = (
1919 type : 'ObjectExpression' ,
2020 properties : keys . map ( ( keyNode , index ) => {
2121 const valueNode = values [ index ] ;
22+ const range : [ number , number ] = [
23+ keyNode . sourceSpan . start ,
24+ valueNode . sourceSpan . end ,
25+ ] ;
26+
27+ if ( keyNode . kind === 'spread' ) {
28+ return createChild < babel . SpreadElement > (
29+ {
30+ type : 'SpreadElement' ,
31+ argument : transformer . transformChild < babel . Expression > ( valueNode ) ,
32+ } ,
33+ range ,
34+ ) ;
35+ }
36+
2237 const shorthand = Boolean ( keyNode . isShorthandInitialized ) ;
2338 const key = createChild < babel . Identifier | babel . StringLiteral > (
2439 keyNode . quoted
@@ -37,7 +52,7 @@ export const visitLiteralMap = (
3752 // @ts -expect-error -- Missed in types
3853 method : false ,
3954 } ,
40- [ keyNode . sourceSpan . start , valueNode . sourceSpan . end ] ,
55+ range ,
4156 ) ;
4257 } ) ,
4358 } ;
Original file line number Diff line number Diff line change 1+ import { type SpreadElement } from '@angular/compiler' ;
2+ import type * as babel from '@babel/types' ;
3+
4+ import { type Transformer } from './transform.ts' ;
5+
6+ export const visitSpreadElement = (
7+ node : SpreadElement ,
8+ transformer : Transformer ,
9+ ) : babel . SpreadElement => ( {
10+ type : 'SpreadElement' ,
11+ argument : transformer . transformChild ( node . expression ) ,
12+ } ) ;
Original file line number Diff line number Diff line change @@ -11,6 +11,7 @@ export * from './transform-non-null-expression.ts';
1111export * from './transform-object-expression.ts' ;
1212export * from './transform-parenthesized-expression.ts' ;
1313export * from './transform-pipe-expression.ts' ;
14+ export * from './transform-spread-element.ts' ;
1415export * from './transform-template-literal.ts' ;
1516export * from './transform-this-expression.ts' ;
1617export * from './transform-unary-expression.ts' ;
Original file line number Diff line number Diff line change @@ -210,11 +210,21 @@ const testCases: TestCase[] = [
210210 expectedEstreeType : 'ArrayExpression' ,
211211 text : ' ( ( [ ( ( 1 ) ), ] ) ) ' ,
212212 } ,
213+ {
214+ expectedAngularType : 'LiteralArray' ,
215+ expectedEstreeType : 'ArrayExpression' ,
216+ text : ' ( ( [ ( ( 1 ) ), ... ( ( a ) ) ] ) ) ' ,
217+ } ,
213218 {
214219 expectedAngularType : 'LiteralMap' ,
215220 expectedEstreeType : 'ObjectExpression' ,
216221 text : ' ( ( { "a" : ( ( 1 ) ), } ) )' ,
217222 } ,
223+ {
224+ expectedAngularType : 'LiteralMap' ,
225+ expectedEstreeType : 'ObjectExpression' ,
226+ text : ' ( ( { "a" : ( ( 1 ) ), ...( ( a ) ) } ) )' ,
227+ } ,
218228 {
219229 expectedAngularType : 'LiteralMap' ,
220230 expectedEstreeType : 'ObjectExpression' ,
Original file line number Diff line number Diff line change @@ -5,12 +5,12 @@ __metadata:
55 version : 8
66 cacheKey : 10
77
8- " @angular/compiler@npm:21.0.7 " :
9- version : 21.0.7
10- resolution : " @angular/compiler@npm:21.0.7 "
8+ " @angular/compiler@npm:21.1.0-rc.0 " :
9+ version : 21.1.0-rc.0
10+ resolution : " @angular/compiler@npm:21.1.0-rc.0 "
1111 dependencies :
1212 tslib : " npm:^2.3.0"
13- checksum : 10/ce950aeda8f6d0a3930e296fef1645d945003094039bc5b763631ed043905396611ef655ac3b0b3b32d1c4b01d86577c354aca7d69ca6ce5ff51bbb6886a3610
13+ checksum : 10/a4721142e932fe62b27a5e383b540ccb83cd2ca456e8ff3bdd62be1022f46b46d224213108b1186978de5f0d6e6916e7c074fb4270b16818f66b155f53531ac5
1414 languageName : node
1515 linkType : hard
1616
@@ -1565,7 +1565,7 @@ __metadata:
15651565 version : 0.0.0-use.local
15661566 resolution : " angular-estree-parser@workspace:."
15671567 dependencies :
1568- " @angular/compiler " : " npm:21.0.7 "
1568+ " @angular/compiler " : " npm:21.1.0-rc.0 "
15691569 " @babel/code-frame " : " npm:8.0.0-beta.3"
15701570 " @babel/parser " : " npm:8.0.0-beta.3"
15711571 " @babel/types " : " npm:8.0.0-beta.3"
@@ -1586,7 +1586,7 @@ __metadata:
15861586 typescript-eslint : " npm:8.52.0"
15871587 vitest : " npm:4.0.16"
15881588 peerDependencies :
1589- " @angular/compiler " : " >=21.0.7"
1589+ " @angular/compiler " : " >=21.0.7 || >= 21.1.0-0 "
15901590 languageName : unknown
15911591 linkType : soft
15921592
You can’t perform that action at this time.
0 commit comments