[11.x] Switch Js::encode() to return HtmlString #49641
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Updating the
Js::encode()
helper to return an instance ofHtmlString
rather than a raw string.The primary reason is to support using the normal escaping Blade tags:
{{ Js::encode() }}
, rather than{!! Js::encode() !}}
, when using this in Blade. This will then match the behaviour already possible withJs::from()
which returns an instance ofHtmlable
and supports{{ Js::from() }}
.Since this is a breaking change, it will need to go into v11 - hence the
master
branch.There are no downsides to this change, it may just require minor code updates - which should be trivial to identify and perform with a search for
Js::encode(
.