@@ -8,16 +8,13 @@ export class Data {
8
8
this . entity = entity
9
9
this . _variables = new Map ( ) // key: variable, value: attributes
10
10
this . _attributes = new Map ( ) // key: attribute, value: variables
11
+ this . groupVariables = [ ]
11
12
}
12
13
13
14
get variables ( ) {
14
15
return Array . from ( this . _variables . keys ( ) )
15
16
}
16
17
17
- get groupVariables ( ) {
18
- return this . variables . filter ( ( variable ) => State . isGroupState ( variable ) )
19
- }
20
-
21
18
getAttributeVariables ( attr ) {
22
19
return this . _attributes . get ( attr ) ?? [ ]
23
20
}
@@ -37,7 +34,7 @@ export class Data {
37
34
const expr = this . entity . element . getAttribute ( attr )
38
35
if ( ! expr ) return
39
36
40
- const variables = this . getAttributeVariables ( )
37
+ const variables = this . getAttributeVariables ( attr )
41
38
42
39
if ( variables . length ) {
43
40
variables . forEach ( ( variable ) => {
@@ -60,14 +57,16 @@ export class Data {
60
57
}
61
58
62
59
const lexer = new Lexer ( expr )
60
+ const isGroupAttr = attr === ':group'
63
61
64
62
lexer . identifiers . forEach ( ( variable ) => {
65
63
if ( IGNORED_IDS . includes ( variable ) ) return
66
64
67
65
const object = variable . split ( '.' ) [ 0 ]
68
66
if ( object in this . entity . state ) return
69
67
70
- this . add ( variable , attr )
68
+ if ( isGroupAttr ) this . groupVariables . push ( variable )
69
+ else this . add ( variable , attr )
71
70
} )
72
71
}
73
72
0 commit comments