@@ -42,6 +42,7 @@ const NAMES = {
4242 serialize : 'lifecycle hook' ,
4343 service : 'service injection' ,
4444 setupController : 'lifecycle hook' ,
45+ spread : 'spread property' ,
4546 unknown : 'unknown property type' ,
4647 willClearRender : 'lifecycle hook' ,
4748 willDestroyElement : 'lifecycle hook' ,
@@ -60,18 +61,18 @@ function determinePropertyType(node, parentType, ORDER) {
6061 return 'controller' ;
6162 }
6263
63- if ( node . key . name === 'init' ) {
64+ if ( types . isIdentifier ( node . key ) && node . key . name === 'init' ) {
6465 return 'init' ;
6566 }
6667
6768 if ( parentType === 'component' ) {
68- if ( ember . isComponentLifecycleHook ( node ) ) {
69+ if ( types . isIdentifier ( node . key ) && ember . isComponentLifecycleHook ( node ) ) {
6970 return node . key . name ;
7071 }
7172 }
7273
7374 if ( parentType === 'controller' ) {
74- if ( node . key . name === 'queryParams' ) {
75+ if ( types . isIdentifier ( node . key ) && node . key . name === 'queryParams' ) {
7576 return 'query-params' ;
7677 } else if ( ember . isControllerDefaultProp ( node ) ) {
7778 return 'inherited-property' ;
@@ -131,6 +132,10 @@ function determinePropertyType(node, parentType, ORDER) {
131132 return 'method' ;
132133 }
133134
135+ if ( node . type === 'ExperimentalSpreadProperty' ) {
136+ return 'spread' ;
137+ }
138+
134139 return 'unknown' ;
135140}
136141
@@ -166,7 +171,7 @@ function getNodeKeyName(node) {
166171
167172function getName ( type , node ) {
168173 let prefix ;
169- if ( ! node . computed && type !== 'actions' && type !== 'model' ) {
174+ if ( ! node . computed && type !== 'actions' && type !== 'model' && type !== 'spread' ) {
170175 prefix = getNodeKeyName ( node ) ;
171176 }
172177
0 commit comments