feat(asset): inline svg in dev if within limit #18581
Merged
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.
Description
close #18034
As discussed before, due to quote handling difference between SVG url paths and inlined SVG data url, we decided to align the inlined behaviour from build to dev so that users don't get broken SVGs after deploying.
This PR adds the code to do the inline checks in dev for SVG assets. The downside I guess is that we're relying on build config in dev, which we usually try to avoid, but we may have to make an exception here.
NOTES:
?inline
and?no-inline
queries to control inlining #15454) are incorrectly injected with?t=
for HMR invalidation. Since data URLs are the entire content itself, we don't need to inject it for them.shouldInline
a bit so that:.html
and.svg
checks are done earlierbuildPluginContext
parameter