From 856d62183ae865653ea9285c2b7aa1bedb9acd9f Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Sat, 19 Sep 2026 12:18:14 +0800 Subject: [PATCH] chore: move more cases to new typeError helper https://github.com/lightpanda-io/browser/pull/3403 added a typeError helper and this commits moves a few more callers to it. --- src/browser/tests/cookie_store.html | 25 +++++++++ .../tests/streams/readable_stream.html | 53 +++++++++++++++++++ src/browser/webapi/storage/CookieStore.zig | 12 ++--- src/browser/webapi/streams/ReadableStream.zig | 2 +- .../streams/ReadableStreamDefaultReader.zig | 2 +- .../streams/WritableStreamDefaultWriter.zig | 10 ++-- 6 files changed, 91 insertions(+), 13 deletions(-) diff --git a/src/browser/tests/cookie_store.html b/src/browser/tests/cookie_store.html index 90159b5c5..9b679bbaa 100644 --- a/src/browser/tests/cookie_store.html +++ b/src/browser/tests/cookie_store.html @@ -362,3 +362,28 @@ testing.expectEqual('ev-onchange', capturedName); }); + + diff --git a/src/browser/tests/streams/readable_stream.html b/src/browser/tests/streams/readable_stream.html index 8a98cd0fa..050daa6cd 100644 --- a/src/browser/tests/streams/readable_stream.html +++ b/src/browser/tests/streams/readable_stream.html @@ -397,3 +397,56 @@ testing.expectEqual('function', typeof stream.getReader); } + + diff --git a/src/browser/webapi/storage/CookieStore.zig b/src/browser/webapi/storage/CookieStore.zig index f072fb346..998f8896e 100644 --- a/src/browser/webapi/storage/CookieStore.zig +++ b/src/browser/webapi/storage/CookieStore.zig @@ -259,11 +259,11 @@ pub fn get(_: *CookieStore, input: ?GetInput, exec: *const Execution) !js.Promis if (name == null and url == null) { // Unlike getAll(), get() requires a name or url - return local.rejectPromise(.{ .type_error = "get requires a name or url" }); + return local.typeError("get requires a name or url"); } const items = matchCookies(exec, name, url, true) catch |err| { - return local.rejectPromise(.{ .type_error = @errorName(err) }); + return local.typeError(@errorName(err)); }; if (items.len == 0) { @@ -281,7 +281,7 @@ pub fn getAll(_: *CookieStore, input: ?GetInput, exec: *const Execution) !js.Pro } else .{ null, null }; const items = matchCookies(exec, name, url, false) catch |err| { - return local.rejectPromise(.{ .type_error = @errorName(err) }); + return local.typeError(@errorName(err)); }; return local.resolvePromise(items); } @@ -293,12 +293,12 @@ pub fn set(_: *CookieStore, input: SetInput, value: ?[]const u8, exec: *const Ex .options => |o| o, .name => |n| .{ .name = n, - .value = value orelse return local.rejectPromise(.{ .type_error = "value is required" }), + .value = value orelse return local.typeError("value is required"), }, }; storeCookie(exec, init, false) catch |err| { - return local.rejectPromise(.{ .type_error = @errorName(err) }); + return local.typeError(@errorName(err)); }; return local.resolvePromise({}); @@ -324,7 +324,7 @@ pub fn delete(_: *CookieStore, input: DeleteInput, exec: *const Execution) !js.P .sameSite = .strict, .partitioned = opts.partitioned, }, true) catch |err| { - return local.rejectPromise(.{ .type_error = @errorName(err) }); + return local.typeError(@errorName(err)); }; return local.resolvePromise({}); diff --git a/src/browser/webapi/streams/ReadableStream.zig b/src/browser/webapi/streams/ReadableStream.zig index 3cfea94c5..efc166bc9 100644 --- a/src/browser/webapi/streams/ReadableStream.zig +++ b/src/browser/webapi/streams/ReadableStream.zig @@ -315,7 +315,7 @@ fn pipeThrough(self: *ReadableStream, transform: PipeTransform, exec: *const Exe /// Returns a promise that resolves when piping is complete. pub fn pipeTo(self: *ReadableStream, destination: *WritableStream, exec: *const Execution) !js.Promise { if (self.getLocked()) { - return exec.js.local.?.rejectPromise(.{ .type_error = "ReadableStream is locked" }); + return exec.js.typeError("ReadableStream is locked"); } const local = exec.js.local.?; diff --git a/src/browser/webapi/streams/ReadableStreamDefaultReader.zig b/src/browser/webapi/streams/ReadableStreamDefaultReader.zig index e232a3e15..87df74dbd 100644 --- a/src/browser/webapi/streams/ReadableStreamDefaultReader.zig +++ b/src/browser/webapi/streams/ReadableStreamDefaultReader.zig @@ -97,7 +97,7 @@ pub fn releaseLock(self: *ReadableStreamDefaultReader) void { pub fn cancel(self: *ReadableStreamDefaultReader, reason_: ?[]const u8, exec: *const Execution) !js.Promise { const stream = self._stream orelse { - return exec.js.local.?.rejectPromise(.{ .type_error = "Reader has been released" }); + return exec.js.typeError("Reader has been released"); }; self.releaseLock(); diff --git a/src/browser/webapi/streams/WritableStreamDefaultWriter.zig b/src/browser/webapi/streams/WritableStreamDefaultWriter.zig index 02d78b63d..e149a9625 100644 --- a/src/browser/webapi/streams/WritableStreamDefaultWriter.zig +++ b/src/browser/webapi/streams/WritableStreamDefaultWriter.zig @@ -34,11 +34,11 @@ pub fn init(stream: *WritableStream, exec: *const Execution) !*WritableStreamDef pub fn write(self: *WritableStreamDefaultWriter, chunk: js.Value, exec: *const Execution) !js.Promise { const local = exec.js.local.?; const stream = self._stream orelse { - return local.rejectPromise(.{ .type_error = "Writer has been released" }); + return local.typeError("Writer has been released"); }; if (stream._state != .writable) { - return local.rejectPromise(.{ .type_error = "Stream is not writable" }); + return local.typeError("Stream is not writable"); } try stream.writeChunk(chunk, exec); @@ -49,11 +49,11 @@ pub fn write(self: *WritableStreamDefaultWriter, chunk: js.Value, exec: *const E pub fn close(self: *WritableStreamDefaultWriter, exec: *const Execution) !js.Promise { const local = exec.js.local.?; const stream = self._stream orelse { - return local.rejectPromise(.{ .type_error = "Writer has been released" }); + return local.typeError("Writer has been released"); }; if (stream._state != .writable) { - return local.rejectPromise(.{ .type_error = "Stream is not writable" }); + return local.typeError("Stream is not writable"); } try stream.closeStream(exec); @@ -71,7 +71,7 @@ pub fn releaseLock(self: *WritableStreamDefaultWriter) void { pub fn getClosed(self: *WritableStreamDefaultWriter, exec: *const Execution) !js.Promise { const local = exec.js.local.?; const stream = self._stream orelse { - return local.rejectPromise(.{ .type_error = "Writer has been released" }); + return local.typeError("Writer has been released"); }; if (stream._state == .closed) {