Andrew Kaster
a5e05c5082
LibWeb/WebIDL: Implement the wait for all AO
...
This abstract operation takes a list of IDL promises and chains them
together with .then() until all are completed or rejected.
2023-09-23 18:57:31 +02:00
Timothy Flynn
8dd5bf7f11
LibWeb: Add missing include to WebIDL::Promise
...
WebIDL::Promise is aliased to a JS::PromiseCapability. This missing
include would cause a compile error in an upcoming commit.
2023-04-08 22:04:14 +02:00
Luke Wilde
9acc542059
LibWeb: Propagate Realm instead of VM more through Fetch
...
This makes Fetch rely less on using main_thread_vm().current_realm(),
which relies on the dummy execution context if no JavaScript is
currently running.
2023-03-07 11:51:12 +00:00
Matthew Olsson
bab883bf8e
LibJS+LibWeb: Add a bunch of missing includes
2023-03-06 13:05:43 +00:00
networkException
f1dd4f42bc
LibWeb: Clarify WebIDL::Promise as an alias for JS::PromiseCapability
...
This patch adds the WebIDL::Promise type explicitly defined in the
WebIDL spec to be a PromiseCapability Record from ecma262.
2023-02-13 12:11:32 +00:00
Linus Groh
fc9d587e39
LibJS: Make PromiseCapability GC-allocated
...
A struct with three raw pointers to other GC'd types is a pretty big
liability, let's just turn this into a Cell itself.
This comes with the additional benefit of being able to capture it in
a lambda effortlessly, without having to create handles for individual
members.
2022-10-02 23:02:27 +01:00
Linus Groh
c2326ec95a
LibJS: Move PromiseCapability into its own cpp/h file
...
This is not strictly connected to PromiseReaction in any way.
Preparation before doing some actual work on it :^)
2022-10-02 23:02:27 +01:00
Linus Groh
37972e9f0c
LibWeb: Implement most WebIDL promise operations
2022-09-27 14:56:17 +01:00