servo/components/script_bindings
Tim van der Lippe 4164f76769
Implement all trusted sinks in HTMLScriptElement (#36668)
As a follow-up to the recent introduction of `script.src`
as trusted sink, this PR refactors machinery to also
support `TrustedScript`. In doing so, all trusted sinks
in `HTMLScriptElement` are now covered.

Instead of calling the callbacks in `policy.createX`,
we now have a `TrustedType` enum that specifies which callback
to invoke. Unfortunately we still have the `USVString` vs
`DOMString` problem, which is why we need to `.map` twice
to retrieve the backing `String` and avoid two different
types.

Additionally, I saw that `script.text` should have called
the "String replace all" algorithm rather than setting the
child contents. So that's also now fixed.

Part of #36258
Requires servo/html5ever#608

Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>

Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
2025-05-03 08:35:46 +00:00
..
codegen Implement all trusted sinks in HTMLScriptElement (#36668) 2025-05-03 08:35:46 +00:00
webidls Implement all trusted sinks in HTMLScriptElement (#36668) 2025-05-03 08:35:46 +00:00
build.rs Fix crash when enumerating properties of global object (#36491) 2025-04-17 03:32:53 +00:00
callback.rs Implement "Create a Trusted Type" algorithm (#36454) 2025-04-13 03:55:23 +00:00
Cargo.toml Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
constant.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
constructor.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
conversions.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
error.rs Implement CSSStyleSheet::replaceSync (#36586) 2025-04-23 15:29:01 +00:00
finalize.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
guard.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
import.rs Eagerly define interfaces on non-Window globals (#36604) 2025-04-21 03:32:21 +00:00
inheritance.rs More miscellaneous script splitting changes (#36220) 2025-03-30 11:06:30 +00:00
interface.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
interfaces.rs Fix crash when enumerating properties of global object (#36491) 2025-04-17 03:32:53 +00:00
iterable.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
lib.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
like.rs Move more bindings types to script_bindings (#35620) 2025-02-23 14:25:46 +00:00
lock.rs Miscellaneous script splitting preparation changes (#36216) 2025-03-29 08:11:27 +00:00
mem.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
namespace.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
num.rs Miscellaneous script splitting preparation changes (#36216) 2025-03-29 08:11:27 +00:00
principals.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
proxyhandler.rs Fix crash when setting custom property on Location (#36494) 2025-04-16 06:52:48 +00:00
realms.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
record.rs Move CustomTraceable to script_bindings. (#35988) 2025-03-16 14:08:22 +00:00
reflector.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
root.rs Use swap_remove when unrooting DOM objects. (#36617) 2025-04-19 20:18:01 +00:00
script_runtime.rs Move more bindings code to script_bindings (#35578) 2025-02-22 04:46:56 +00:00
settings_stack.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
str.rs Implement static Response.json (#36589) 2025-04-25 08:49:21 +00:00
trace.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
utils.rs Eagerly define interfaces on non-Window globals (#36604) 2025-04-21 03:32:21 +00:00
weakref.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00