fix: Allow ResizeSensor to be loaded in a Firefox extension #318
+3
−1
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.
Recent versions of the Firefox browser have a strict Content Security
Policy in extension content scripts that disallows any direct or
indirect string evaluation. Previously, the
Function('return this')
in ResizeSensor.js, used to obtain the true global window object,
violated that security policy. This PR checks instead for the
validity of the
globalThis
identifier, now provided in Firefoxexplicitly for the purpose that
Function('return this')
was beingused for.
As Mozilla will not sign extensions that patch third-party packages,
without a change along these lines, no extension that directly or
indirectly uses ResizeSensor could be created. Hence, it would be
greatly appreciated for this small change to be merged and a new
release made. Thanks for considering.