From 21095025a97f6db9d8344a774d322ab600c3c1c7 Mon Sep 17 00:00:00 2001 From: Arman Ozak Date: Thu, 2 Apr 2020 16:11:57 +0300 Subject: [PATCH] feat(core): add optional integrity in loading strategies --- .../src/lib/strategies/loading.strategy.ts | 40 ++++++++++++++----- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/npm/ng-packs/packages/core/src/lib/strategies/loading.strategy.ts b/npm/ng-packs/packages/core/src/lib/strategies/loading.strategy.ts index 113ab9a853..2882c3f0a6 100644 --- a/npm/ng-packs/packages/core/src/lib/strategies/loading.strategy.ts +++ b/npm/ng-packs/packages/core/src/lib/strategies/loading.strategy.ts @@ -67,19 +67,39 @@ export class StyleLoadingStrategy extends LoadingStrategy { } export const LOADING_STRATEGY = { - AppendAnonymousScriptToBody(src: string) { - return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToBody()); + AppendAnonymousScriptToBody(src: string, integrity?: string) { + return new ScriptLoadingStrategy( + src, + DOM_STRATEGY.AppendToBody(), + CROSS_ORIGIN_STRATEGY.Anonymous(integrity), + ); }, - AppendAnonymousScriptToHead(src: string) { - return new ScriptLoadingStrategy(src); + AppendAnonymousScriptToHead(src: string, integrity?: string) { + return new ScriptLoadingStrategy( + src, + DOM_STRATEGY.AppendToHead(), + CROSS_ORIGIN_STRATEGY.Anonymous(integrity), + ); }, - AppendAnonymousStyleToHead(src: string) { - return new StyleLoadingStrategy(src); + AppendAnonymousStyleToHead(src: string, integrity?: string) { + return new StyleLoadingStrategy( + src, + DOM_STRATEGY.AppendToHead(), + CROSS_ORIGIN_STRATEGY.Anonymous(integrity), + ); }, - PrependAnonymousScriptToHead(src: string) { - return new ScriptLoadingStrategy(src, DOM_STRATEGY.PrependToHead()); + PrependAnonymousScriptToHead(src: string, integrity?: string) { + return new ScriptLoadingStrategy( + src, + DOM_STRATEGY.PrependToHead(), + CROSS_ORIGIN_STRATEGY.Anonymous(integrity), + ); }, - PrependAnonymousStyleToHead(src: string) { - return new StyleLoadingStrategy(src, DOM_STRATEGY.PrependToHead()); + PrependAnonymousStyleToHead(src: string, integrity?: string) { + return new StyleLoadingStrategy( + src, + DOM_STRATEGY.PrependToHead(), + CROSS_ORIGIN_STRATEGY.Anonymous(integrity), + ); }, };