@@ -37,7 +37,7 @@ export const treeify = (built, fields) => {
3737 for ( let i = 1 ; i < built . length ; i ++ ) {
3838 const field = built [ i ++ ] ;
3939 const value = typeof field === 'number' ? fields [ field - 1 ] : field ;
40-
40+
4141 if ( built [ i ] === TAG_SET ) {
4242 tag = value ;
4343 }
@@ -78,14 +78,14 @@ export const evaluate = (h, built, fields, args) => {
7878 if ( built [ i ] === TAG_SET ) {
7979 args [ 0 ] = value ;
8080 }
81- else if ( built [ i ] === PROP_APPEND ) {
82- args [ 1 ] [ built [ ++ i ] ] += ( value + '' ) ;
81+ else if ( built [ i ] === PROPS_ASSIGN ) {
82+ args [ 1 ] = Object . assign ( args [ 1 ] || { } , value ) ;
8383 }
8484 else if ( built [ i ] === PROP_SET ) {
8585 ( args [ 1 ] = args [ 1 ] || { } ) [ built [ ++ i ] ] = value ;
8686 }
87- else if ( built [ i ] === PROPS_ASSIGN ) {
88- args [ 1 ] = Object . assign ( args [ 1 ] || { } , value ) ;
87+ else if ( built [ i ] === PROP_APPEND ) {
88+ args [ 1 ] [ built [ ++ i ] ] += ( value + '' ) ;
8989 }
9090 else if ( built [ i ] ) {
9191 // code === CHILD_RECURSE
@@ -148,20 +148,20 @@ export const build = function(statics) {
148148 ( current [ 2 ] = current [ 2 ] || { } ) [ propName ] = field ? buffer ? ( buffer + fields [ field ] ) : fields [ field ] : buffer ;
149149 mode = MODE_PROP_APPEND ;
150150 }
151- else if ( MINI && mode == MODE_PROP_APPEND ) {
151+ else if ( MINI && mode === MODE_PROP_APPEND ) {
152152 if ( buffer || field ) {
153153 current [ 2 ] [ propName ] += field ? buffer + fields [ field ] : buffer ;
154154 }
155155 }
156156 else if ( ! MINI && mode >= MODE_PROP_SET ) {
157- if ( buffer ) {
157+ if ( buffer || ( ! field && mode === MODE_PROP_SET ) ) {
158158 current . push ( buffer , mode , propName ) ;
159159 mode = MODE_PROP_APPEND ;
160160 }
161161 if ( field ) {
162162 current . push ( field , mode , propName ) ;
163+ mode = MODE_PROP_APPEND ;
163164 }
164- mode = MODE_PROP_APPEND ;
165165 }
166166 buffer = '' ;
167167 } ;
@@ -215,9 +215,6 @@ export const build = function(statics) {
215215 mode = MODE_PROP_SET ;
216216 propName = buffer ;
217217 buffer = '' ;
218- if ( ! MINI ) {
219- current . push ( buffer , mode , propName ) ;
220- }
221218 }
222219 else if ( char === '/' ) {
223220 commit ( ) ;
0 commit comments