refactor(security): take the sanitizer interface in the injected consumers
Nine services, use cases and controllers asked the container for a raw
\HTMLPurifier; they now take HtmlSanitizerInterface and speak of policies
instead of the library. Behaviour is unchanged: every call site keeps the
default rich-content policy it had.
The tests that stubbed the vendor class mock the interface instead, and
ItemContentFormatterTest asserts what the formatter owes (null for no content,
sanitized before it becomes Markup) rather than re-testing the sanitizing that
HtmlSanitizerTest already covers.
\HTMLPurifier; they now take HtmlSanitizerInterface and speak of policies
instead of the library. Behaviour is unchanged: every call site keeps the
default rich-content policy it had.
The tests that stubbed the vendor class mock the interface instead, and
ItemContentFormatterTest asserts what the formatter owes (null for no content,
sanitized before it becomes Markup) rather than re-testing the sanitizing that
HtmlSanitizerTest already covers.