@@ -55,7 +55,7 @@ const html = ({ raw: literals }, ...expressions) => {
55
55
? expression . join ( "" )
56
56
: `${ expression } ` ;
57
57
58
- if ( literal && literal [ literal . length - 1 ] === "!" ) {
58
+ if ( literal && literal . charCodeAt ( literal . length - 1 ) === 33 ) {
59
59
literal = literal . slice ( 0 , - 1 ) ;
60
60
} else if ( string && escapeRegExp . test ( string ) ) {
61
61
string = escapeFunction ( string ) ;
@@ -87,7 +87,8 @@ const htmlGenerator = function* ({ raw: literals }, ...expressions) {
87
87
string = "" ;
88
88
} else {
89
89
if ( expression [ symbolIterator ] ) {
90
- const isRaw = literal !== "" && literal [ literal . length - 1 ] === "!" ;
90
+ const isRaw =
91
+ literal !== "" && literal . charCodeAt ( literal . length - 1 ) === 33 ;
91
92
92
93
if ( isRaw ) {
93
94
literal = literal . slice ( 0 , - 1 ) ;
@@ -147,7 +148,7 @@ const htmlGenerator = function* ({ raw: literals }, ...expressions) {
147
148
string = `${ expression } ` ;
148
149
}
149
150
150
- if ( literal && literal [ literal . length - 1 ] === "!" ) {
151
+ if ( literal && literal . charCodeAt ( literal . length - 1 ) === 33 ) {
151
152
literal = literal . slice ( 0 , - 1 ) ;
152
153
} else if ( string && escapeRegExp . test ( string ) ) {
153
154
string = escapeFunction ( string ) ;
@@ -183,7 +184,8 @@ const htmlAsyncGenerator = async function* ({ raw: literals }, ...expressions) {
183
184
string = "" ;
184
185
} else {
185
186
if ( expression [ symbolIterator ] || expression [ symbolAsyncIterator ] ) {
186
- const isRaw = literal !== "" && literal [ literal . length - 1 ] === "!" ;
187
+ const isRaw =
188
+ literal !== "" && literal . charCodeAt ( literal . length - 1 ) === 33 ;
187
189
188
190
if ( isRaw ) {
189
191
literal = literal . slice ( 0 , - 1 ) ;
@@ -243,7 +245,7 @@ const htmlAsyncGenerator = async function* ({ raw: literals }, ...expressions) {
243
245
string = `${ expression } ` ;
244
246
}
245
247
246
- if ( literal && literal [ literal . length - 1 ] === "!" ) {
248
+ if ( literal && literal . charCodeAt ( literal . length - 1 ) === 33 ) {
247
249
literal = literal . slice ( 0 , - 1 ) ;
248
250
} else if ( string && escapeRegExp . test ( string ) ) {
249
251
string = escapeFunction ( string ) ;
0 commit comments