aboutsummaryrefslogtreecommitdiff
path: root/src/js_parser.zig
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-11-09 01:30:02 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-11-09 01:30:02 -0800
commit565996a087df6d06b2b5109b6825c720d4c8b168 (patch)
tree4a4595327fe85ddccc44070c1aa7241c924a7d48 /src/js_parser.zig
parentfac1c49727ec76387ada0ad2e4bfa32385b4ceb1 (diff)
downloadbun-565996a087df6d06b2b5109b6825c720d4c8b168.tar.gz
bun-565996a087df6d06b2b5109b6825c720d4c8b168.tar.zst
bun-565996a087df6d06b2b5109b6825c720d4c8b168.zip
Support TypeScript `satisfies`
Credit: @magic-akari, almost identical diff in https://github.com/evanw/esbuild/pull/2509/files#diff-ccc0bde7223236d93490b727b272f15765a2674be12a4c310b83b9555bef8816
Diffstat (limited to 'src/js_parser.zig')
-rw-r--r--src/js_parser.zig3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig
index 0ea126be8..ce5ca997b 100644
--- a/src/js_parser.zig
+++ b/src/js_parser.zig
@@ -11300,7 +11300,8 @@ fn NewParser_(
},
else => {
// Handle the TypeScript "as" operator
- if (is_typescript_enabled and level.lt(.compare) and !p.lexer.has_newline_before and p.lexer.isContextualKeyword("as")) {
+ // Handle the TypeScript "satisfies" operator
+ if (is_typescript_enabled and level.lt(.compare) and !p.lexer.has_newline_before and (p.lexer.isContextualKeyword("as") or p.lexer.isContextualKeyword("satisfies"))) {
try p.lexer.next();
try p.skipTypeScriptType(.lowest);