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.
This pull request enhances the dynamic federation loader by adding support for setting a
nonce
attribute on remote entry scripts. This improves security for applications using Content Security Policy (CSP) with nonces and ensures that remote scripts can be loaded in environments with stricter CSP rules. Additionally, the type definitions have been updated for better type safety and clarity.Security and CSP improvements:
nonce
attribute in the options for loading remote entry scripts and modules, allowing the loader to set a nonce on dynamically injected<script>
tags. (libs/mf-runtime/src/lib/loader/dynamic-federation.ts
) [1] [2]loadRemoteEntry
andloadRemoteModule
functions to accept and propagate thenonce
option, ensuring it is passed through all relevant code paths. (libs/mf-runtime/src/lib/loader/dynamic-federation.ts
) [1] [2]loadRemoteScriptEntry
function to set thenonce
attribute on the created script element if provided. (libs/mf-runtime/src/lib/loader/dynamic-federation.ts
) [1] [2]Type safety and code clarity:
remoteMap
to explicitly specify its structure, enhancing code safety and maintainability. (libs/mf-runtime/src/lib/loader/dynamic-federation.ts
)