diff --git a/src/browser/css/parser.zig b/src/browser/css/parser.zig index 70fe20a0..4bcf7f9f 100644 --- a/src/browser/css/parser.zig +++ b/src/browser/css/parser.zig @@ -605,6 +605,7 @@ pub const Parser = struct { .after, .backdrop, .before, .cue, .first_letter => return .{ .pseudo_element = pseudo_class }, .first_line, .grammar_error, .marker, .placeholder => return .{ .pseudo_element = pseudo_class }, .selection, .spelling_error => return .{ .pseudo_element = pseudo_class }, + .modal => return .{ .pseudo_element = pseudo_class }, } } diff --git a/src/browser/css/selector.zig b/src/browser/css/selector.zig index a3e37246..301af641 100644 --- a/src/browser/css/selector.zig +++ b/src/browser/css/selector.zig @@ -98,6 +98,7 @@ pub const PseudoClass = enum { placeholder, selection, spelling_error, + modal, pub const Error = error{ InvalidPseudoClass, @@ -154,6 +155,7 @@ pub const PseudoClass = enum { if (std.ascii.eqlIgnoreCase(s, "placeholder")) return .placeholder; if (std.ascii.eqlIgnoreCase(s, "selection")) return .selection; if (std.ascii.eqlIgnoreCase(s, "spelling-error")) return .spelling_error; + if (std.ascii.eqlIgnoreCase(s, "modal")) return .modal; return Error.InvalidPseudoClass; } }; diff --git a/src/runtime/js.zig b/src/runtime/js.zig index 86619c6a..fc80e23d 100644 --- a/src/runtime/js.zig +++ b/src/runtime/js.zig @@ -1158,7 +1158,7 @@ pub fn Env(comptime State: type, comptime WebApis: type) type { } if (!js_value.isArray()) { - return error.InvalidArgument; + return .{.invalid = {}}; } // This can get tricky.