@abp/ng.core 5.0.1 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/abp-ng.core.d.ts +5 -5
- package/bundles/abp-ng.core-locale.umd.js +361 -361
- package/bundles/abp-ng.core-locale.umd.js.map +1 -1
- package/bundles/abp-ng.core-testing.umd.js +442 -442
- package/bundles/abp-ng.core-testing.umd.js.map +1 -1
- package/bundles/abp-ng.core.umd.js +4873 -4868
- package/bundles/abp-ng.core.umd.js.map +1 -1
- package/esm2015/abp-ng.core.js +4 -4
- package/esm2015/lib/abstracts/index.js +2 -2
- package/esm2015/lib/abstracts/ng-model.component.js +59 -59
- package/esm2015/lib/components/dynamic-layout.component.js +89 -89
- package/esm2015/lib/components/index.js +4 -4
- package/esm2015/lib/components/replaceable-route-container.component.js +42 -42
- package/esm2015/lib/components/router-outlet.component.js +15 -15
- package/esm2015/lib/constants/different-locales.js +337 -337
- package/esm2015/lib/constants/index.js +2 -2
- package/esm2015/lib/core.module.js +281 -281
- package/esm2015/lib/directives/autofocus.directive.js +30 -30
- package/esm2015/lib/directives/debounce.directive.js +36 -36
- package/esm2015/lib/directives/for.directive.js +151 -151
- package/esm2015/lib/directives/form-submit.directive.js +69 -69
- package/esm2015/lib/directives/index.js +9 -9
- package/esm2015/lib/directives/init.directive.js +21 -21
- package/esm2015/lib/directives/permission.directive.js +48 -48
- package/esm2015/lib/directives/replaceable-template.directive.js +121 -121
- package/esm2015/lib/directives/stop-propagation.directive.js +32 -32
- package/esm2015/lib/enums/common.js +2 -2
- package/esm2015/lib/enums/index.js +2 -2
- package/esm2015/lib/guards/auth.guard.js +29 -29
- package/esm2015/lib/guards/index.js +3 -3
- package/esm2015/lib/guards/permission.guard.js +44 -44
- package/esm2015/lib/handlers/oauth-configuration.handler.js +37 -37
- package/esm2015/lib/handlers/routes.handler.js +47 -47
- package/esm2015/lib/interceptors/api.interceptor.js +54 -54
- package/esm2015/lib/interceptors/index.js +2 -2
- package/esm2015/lib/localization.module.js +16 -16
- package/esm2015/lib/models/auth.js +2 -2
- package/esm2015/lib/models/common.js +2 -2
- package/esm2015/lib/models/dtos.js +119 -119
- package/esm2015/lib/models/environment.js +2 -2
- package/esm2015/lib/models/index.js +10 -10
- package/esm2015/lib/models/localization.js +2 -2
- package/esm2015/lib/models/replaceable-components.js +2 -2
- package/esm2015/lib/models/rest.js +2 -2
- package/esm2015/lib/models/session.js +2 -2
- package/esm2015/lib/models/utility.js +2 -2
- package/esm2015/lib/pipes/index.js +3 -3
- package/esm2015/lib/pipes/localization.pipe.js +33 -33
- package/esm2015/lib/pipes/sort.pipe.js +49 -49
- package/esm2015/lib/providers/cookie-language.provider.js +22 -22
- package/esm2015/lib/providers/locale.provider.js +22 -22
- package/esm2015/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.js +29 -29
- package/esm2015/lib/proxy/pages/abp/multi-tenancy/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.js +24 -24
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.js +25 -25
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.js +5 -5
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.js +3 -3
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.js +2 -2
- package/esm2015/lib/proxy/volo/abp/http/modeling/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/http/modeling/models.js +3 -3
- package/esm2015/lib/proxy/volo/abp/localization/index.js +2 -2
- package/esm2015/lib/proxy/volo/abp/localization/models.js +2 -2
- package/esm2015/lib/proxy/volo/abp/models.js +2 -2
- package/esm2015/lib/services/auth.service.js +47 -47
- package/esm2015/lib/services/config-state.service.js +130 -130
- package/esm2015/lib/services/content-projection.service.js +17 -17
- package/esm2015/lib/services/dom-insertion.service.js +32 -32
- package/esm2015/lib/services/environment.service.js +35 -35
- package/esm2015/lib/services/http-error-reporter.service.js +29 -29
- package/esm2015/lib/services/http-wait.service.js +72 -72
- package/esm2015/lib/services/index.js +22 -22
- package/esm2015/lib/services/lazy-load.service.js +38 -38
- package/esm2015/lib/services/list.service.js +103 -103
- package/esm2015/lib/services/localization.service.js +182 -182
- package/esm2015/lib/services/multi-tenancy.service.js +48 -48
- package/esm2015/lib/services/permission.service.js +64 -64
- package/esm2015/lib/services/replaceable-components.service.js +49 -49
- package/esm2015/lib/services/resource-wait.service.js +39 -39
- package/esm2015/lib/services/rest.service.js +63 -63
- package/esm2015/lib/services/router-events.service.js +38 -38
- package/esm2015/lib/services/router-wait.service.js +51 -51
- package/esm2015/lib/services/routes.service.js +147 -147
- package/esm2015/lib/services/session-state.service.js +76 -76
- package/esm2015/lib/services/subscription.service.js +41 -41
- package/esm2015/lib/services/track-by.service.js +21 -21
- package/esm2015/lib/strategies/auth-flow.strategy.js +202 -202
- package/esm2015/lib/strategies/container.strategy.js +38 -38
- package/esm2015/lib/strategies/content-security.strategy.js +28 -28
- package/esm2015/lib/strategies/content.strategy.js +48 -48
- package/esm2015/lib/strategies/context.strategy.js +37 -37
- package/esm2015/lib/strategies/cross-origin.strategy.js +26 -26
- package/esm2015/lib/strategies/dom.strategy.js +27 -27
- package/esm2015/lib/strategies/index.js +9 -9
- package/esm2015/lib/strategies/loading.strategy.js +58 -58
- package/esm2015/lib/strategies/projection.strategy.js +80 -80
- package/esm2015/lib/tokens/app-config.token.js +3 -3
- package/esm2015/lib/tokens/cookie-language-key.token.js +5 -5
- package/esm2015/lib/tokens/index.js +9 -9
- package/esm2015/lib/tokens/list.token.js +3 -3
- package/esm2015/lib/tokens/localization.token.js +10 -10
- package/esm2015/lib/tokens/lodaer-delay.token.js +3 -3
- package/esm2015/lib/tokens/manage-profile.token.js +12 -12
- package/esm2015/lib/tokens/options.token.js +8 -8
- package/esm2015/lib/tokens/tenant-key.token.js +3 -3
- package/esm2015/lib/utils/array-utils.js +7 -7
- package/esm2015/lib/utils/auth-utils.js +42 -42
- package/esm2015/lib/utils/common-utils.js +29 -29
- package/esm2015/lib/utils/date-extensions.js +6 -6
- package/esm2015/lib/utils/date-utils.js +13 -13
- package/esm2015/lib/utils/environment-utils.js +36 -36
- package/esm2015/lib/utils/factory-utils.js +24 -24
- package/esm2015/lib/utils/file-utils.js +14 -14
- package/esm2015/lib/utils/form-utils.js +12 -12
- package/esm2015/lib/utils/generator-utils.js +34 -34
- package/esm2015/lib/utils/http-utils.js +19 -19
- package/esm2015/lib/utils/index.js +21 -21
- package/esm2015/lib/utils/initial-utils.js +64 -64
- package/esm2015/lib/utils/internal-store-utils.js +36 -36
- package/esm2015/lib/utils/lazy-load-utils.js +40 -40
- package/esm2015/lib/utils/localization-utils.js +50 -50
- package/esm2015/lib/utils/multi-tenancy-utils.js +83 -83
- package/esm2015/lib/utils/number-utils.js +4 -4
- package/esm2015/lib/utils/object-utils.js +37 -37
- package/esm2015/lib/utils/route-utils.js +27 -27
- package/esm2015/lib/utils/string-utils.js +25 -21
- package/esm2015/lib/utils/tree-utils.js +54 -54
- package/esm2015/lib/validators/age.validator.js +14 -14
- package/esm2015/lib/validators/credit-card.validator.js +21 -21
- package/esm2015/lib/validators/index.js +23 -23
- package/esm2015/lib/validators/range.validator.js +15 -15
- package/esm2015/lib/validators/required.validator.js +13 -13
- package/esm2015/lib/validators/string-length.validator.js +15 -15
- package/esm2015/lib/validators/url.validator.js +16 -16
- package/esm2015/locale/abp-ng.core-locale.js +4 -4
- package/esm2015/locale/public-api.js +2 -2
- package/esm2015/locale/utils/register-locale.js +43 -43
- package/esm2015/public-api.js +26 -26
- package/esm2015/testing/abp-ng.core-testing.js +4 -4
- package/esm2015/testing/lib/core-testing.module.js +62 -62
- package/esm2015/testing/lib/services/index.js +3 -3
- package/esm2015/testing/lib/services/mock-permission.service.js +35 -35
- package/esm2015/testing/lib/services/mock-rest.service.js +30 -30
- package/esm2015/testing/lib/utils/clear-page.util.js +10 -10
- package/esm2015/testing/lib/utils/index.js +3 -3
- package/esm2015/testing/lib/utils/wait.util.js +5 -5
- package/esm2015/testing/public-api.js +4 -4
- package/fesm2015/abp-ng.core-locale.js +40 -40
- package/fesm2015/abp-ng.core-locale.js.map +1 -1
- package/fesm2015/abp-ng.core-testing.js +113 -113
- package/fesm2015/abp-ng.core-testing.js.map +1 -1
- package/fesm2015/abp-ng.core.js +3979 -3975
- package/fesm2015/abp-ng.core.js.map +1 -1
- package/lib/abstracts/index.d.ts +1 -1
- package/lib/abstracts/ng-model.component.d.ts +25 -25
- package/lib/components/dynamic-layout.component.d.ts +27 -27
- package/lib/components/index.d.ts +3 -3
- package/lib/components/replaceable-route-container.component.d.ts +17 -17
- package/lib/components/router-outlet.component.d.ts +5 -5
- package/lib/constants/different-locales.d.ts +334 -334
- package/lib/constants/index.d.ts +1 -1
- package/lib/core.module.d.ts +56 -56
- package/lib/directives/autofocus.directive.d.ts +12 -12
- package/lib/directives/debounce.directive.d.ts +13 -13
- package/lib/directives/for.directive.d.ts +36 -36
- package/lib/directives/form-submit.directive.d.ts +19 -19
- package/lib/directives/index.d.ts +8 -8
- package/lib/directives/init.directive.d.ts +10 -10
- package/lib/directives/permission.directive.d.ts +18 -18
- package/lib/directives/replaceable-template.directive.d.ts +30 -30
- package/lib/directives/stop-propagation.directive.d.ts +12 -12
- package/lib/enums/common.d.ts +5 -5
- package/lib/enums/index.d.ts +1 -1
- package/lib/guards/auth.guard.d.ts +13 -13
- package/lib/guards/index.d.ts +2 -2
- package/lib/guards/permission.guard.d.ts +16 -16
- package/lib/handlers/oauth-configuration.handler.d.ts +13 -13
- package/lib/handlers/routes.handler.d.ts +11 -11
- package/lib/interceptors/api.interceptor.d.ts +16 -16
- package/lib/interceptors/index.d.ts +1 -1
- package/lib/localization.module.d.ts +7 -7
- package/lib/models/auth.d.ts +6 -6
- package/lib/models/common.d.ts +77 -77
- package/lib/models/dtos.d.ts +95 -95
- package/lib/models/environment.d.ts +35 -35
- package/lib/models/index.d.ts +9 -9
- package/lib/models/localization.d.ts +5 -5
- package/lib/models/replaceable-components.d.ts +45 -45
- package/lib/models/rest.d.ts +35 -35
- package/lib/models/session.d.ts +7 -7
- package/lib/models/utility.d.ts +14 -14
- package/lib/pipes/index.d.ts +2 -2
- package/lib/pipes/localization.pipe.d.ts +12 -12
- package/lib/pipes/sort.pipe.d.ts +9 -9
- package/lib/providers/cookie-language.provider.d.ts +3 -3
- package/lib/providers/locale.provider.d.ts +9 -9
- package/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.d.ts +12 -12
- package/lib/proxy/pages/abp/multi-tenancy/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.d.ts +11 -11
- package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.d.ts +11 -11
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +4 -4
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +85 -85
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.d.ts +71 -71
- package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.d.ts +14 -14
- package/lib/proxy/volo/abp/http/modeling/index.d.ts +1 -1
- package/lib/proxy/volo/abp/http/modeling/models.d.ts +70 -70
- package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
- package/lib/proxy/volo/abp/localization/models.d.ts +6 -6
- package/lib/proxy/volo/abp/models.d.ts +4 -4
- package/lib/services/auth.service.d.ts +17 -17
- package/lib/services/config-state.service.d.ts +339 -339
- package/lib/services/content-projection.service.d.ts +10 -10
- package/lib/services/dom-insertion.service.d.ts +10 -10
- package/lib/services/environment.service.d.ts +96 -96
- package/lib/services/http-error-reporter.service.d.ts +12 -12
- package/lib/services/http-wait.service.d.ts +30 -30
- package/lib/services/index.d.ts +21 -21
- package/lib/services/lazy-load.service.d.ts +13 -13
- package/lib/services/list.service.d.ts +39 -39
- package/lib/services/localization.service.d.ts +47 -47
- package/lib/services/multi-tenancy.service.d.ts +22 -22
- package/lib/services/permission.service.d.ts +19 -19
- package/lib/services/replaceable-components.service.d.ts +19 -19
- package/lib/services/resource-wait.service.d.ts +15 -15
- package/lib/services/rest.service.d.ts +20 -20
- package/lib/services/router-events.service.d.ts +29 -29
- package/lib/services/router-wait.service.d.ts +20 -20
- package/lib/services/routes.service.d.ts +50 -50
- package/lib/services/session-state.service.d.ts +25 -25
- package/lib/services/subscription.service.d.ts +17 -17
- package/lib/services/track-by.service.d.ts +11 -11
- package/lib/strategies/auth-flow.strategy.d.ts +367 -367
- package/lib/strategies/container.strategy.d.ts +22 -22
- package/lib/strategies/content-security.strategy.d.ts +17 -17
- package/lib/strategies/content.strategy.d.ts +26 -26
- package/lib/strategies/context.strategy.d.ts +23 -23
- package/lib/strategies/cross-origin.strategy.d.ts +14 -14
- package/lib/strategies/dom.strategy.d.ts +13 -13
- package/lib/strategies/index.d.ts +8 -8
- package/lib/strategies/loading.strategy.d.ts +28 -28
- package/lib/strategies/projection.strategy.d.ts +39 -39
- package/lib/tokens/app-config.token.d.ts +3 -3
- package/lib/tokens/cookie-language-key.token.d.ts +2 -2
- package/lib/tokens/index.d.ts +8 -8
- package/lib/tokens/list.token.d.ts +2 -2
- package/lib/tokens/localization.token.d.ts +6 -6
- package/lib/tokens/lodaer-delay.token.d.ts +2 -2
- package/lib/tokens/manage-profile.token.d.ts +2 -2
- package/lib/tokens/options.token.d.ts +4 -4
- package/lib/tokens/tenant-key.token.d.ts +2 -2
- package/lib/utils/array-utils.d.ts +1 -1
- package/lib/utils/auth-utils.d.ts +162 -162
- package/lib/utils/common-utils.d.ts +9 -9
- package/lib/utils/date-extensions.d.ts +6 -6
- package/lib/utils/date-utils.d.ts +4 -4
- package/lib/utils/environment-utils.d.ts +3 -3
- package/lib/utils/factory-utils.d.ts +9 -9
- package/lib/utils/file-utils.d.ts +1 -1
- package/lib/utils/form-utils.d.ts +2 -2
- package/lib/utils/generator-utils.d.ts +3 -3
- package/lib/utils/http-utils.d.ts +8 -8
- package/lib/utils/index.d.ts +20 -20
- package/lib/utils/initial-utils.d.ts +159 -159
- package/lib/utils/internal-store-utils.d.ts +14 -14
- package/lib/utils/lazy-load-utils.d.ts +4 -4
- package/lib/utils/localization-utils.d.ts +5 -5
- package/lib/utils/multi-tenancy-utils.d.ts +3 -3
- package/lib/utils/number-utils.d.ts +1 -1
- package/lib/utils/object-utils.d.ts +1 -1
- package/lib/utils/route-utils.d.ts +8 -8
- package/lib/utils/string-utils.d.ts +3 -2
- package/lib/utils/tree-utils.d.ts +19 -19
- package/lib/validators/age.validator.d.ts +10 -10
- package/lib/validators/credit-card.validator.d.ts +5 -5
- package/lib/validators/index.d.ts +22 -22
- package/lib/validators/range.validator.d.ts +12 -12
- package/lib/validators/required.validator.d.ts +8 -8
- package/lib/validators/string-length.validator.d.ts +14 -14
- package/lib/validators/url.validator.d.ts +5 -5
- package/locale/abp-ng.core-locale.d.ts +5 -5
- package/locale/public-api.d.ts +1 -1
- package/locale/utils/register-locale.d.ts +13 -13
- package/package.json +2 -2
- package/public-api.d.ts +24 -24
- package/testing/abp-ng.core-testing.d.ts +5 -5
- package/testing/lib/core-testing.module.d.ts +16 -16
- package/testing/lib/services/index.d.ts +2 -2
- package/testing/lib/services/mock-permission.service.d.ts +10 -10
- package/testing/lib/services/mock-rest.service.d.ts +13 -13
- package/testing/lib/utils/clear-page.util.d.ts +2 -2
- package/testing/lib/utils/index.d.ts +2 -2
- package/testing/lib/utils/wait.util.d.ts +2 -2
- package/testing/public-api.d.ts +3 -3
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
export class ContentSecurityStrategy {
|
|
2
|
-
constructor(nonce) {
|
|
3
|
-
this.nonce = nonce;
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
export class LooseContentSecurityStrategy extends ContentSecurityStrategy {
|
|
7
|
-
constructor(nonce) {
|
|
8
|
-
super(nonce);
|
|
9
|
-
}
|
|
10
|
-
applyCSP(element) {
|
|
11
|
-
element.setAttribute('nonce', this.nonce);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
export class NoContentSecurityStrategy extends ContentSecurityStrategy {
|
|
15
|
-
constructor() {
|
|
16
|
-
super();
|
|
17
|
-
}
|
|
18
|
-
applyCSP(_) { }
|
|
19
|
-
}
|
|
20
|
-
export const CONTENT_SECURITY_STRATEGY = {
|
|
21
|
-
Loose(nonce) {
|
|
22
|
-
return new LooseContentSecurityStrategy(nonce);
|
|
23
|
-
},
|
|
24
|
-
None() {
|
|
25
|
-
return new NoContentSecurityStrategy();
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export class ContentSecurityStrategy {
|
|
2
|
+
constructor(nonce) {
|
|
3
|
+
this.nonce = nonce;
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
export class LooseContentSecurityStrategy extends ContentSecurityStrategy {
|
|
7
|
+
constructor(nonce) {
|
|
8
|
+
super(nonce);
|
|
9
|
+
}
|
|
10
|
+
applyCSP(element) {
|
|
11
|
+
element.setAttribute('nonce', this.nonce);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export class NoContentSecurityStrategy extends ContentSecurityStrategy {
|
|
15
|
+
constructor() {
|
|
16
|
+
super();
|
|
17
|
+
}
|
|
18
|
+
applyCSP(_) { }
|
|
19
|
+
}
|
|
20
|
+
export const CONTENT_SECURITY_STRATEGY = {
|
|
21
|
+
Loose(nonce) {
|
|
22
|
+
return new LooseContentSecurityStrategy(nonce);
|
|
23
|
+
},
|
|
24
|
+
None() {
|
|
25
|
+
return new NoContentSecurityStrategy();
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1zZWN1cml0eS5zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zdHJhdGVnaWVzL2NvbnRlbnQtc2VjdXJpdHkuc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQix1QkFBdUI7SUFDM0MsWUFBbUIsS0FBYztRQUFkLFVBQUssR0FBTCxLQUFLLENBQVM7SUFBRyxDQUFDO0NBR3RDO0FBRUQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLHVCQUF1QjtJQUN2RSxZQUFZLEtBQWE7UUFDdkIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELFFBQVEsQ0FBQyxPQUE2QztRQUNwRCxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHlCQUEwQixTQUFRLHVCQUF1QjtJQUNwRTtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUVELFFBQVEsQ0FBQyxDQUF1QyxJQUFHLENBQUM7Q0FDckQ7QUFFRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxLQUFLLENBQUMsS0FBYTtRQUNqQixPQUFPLElBQUksNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELElBQUk7UUFDRixPQUFPLElBQUkseUJBQXlCLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb250ZW50U2VjdXJpdHlTdHJhdGVneSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBub25jZT86IHN0cmluZykge31cblxuICBhYnN0cmFjdCBhcHBseUNTUChlbGVtZW50OiBIVE1MU2NyaXB0RWxlbWVudCB8IEhUTUxTdHlsZUVsZW1lbnQpOiB2b2lkO1xufVxuXG5leHBvcnQgY2xhc3MgTG9vc2VDb250ZW50U2VjdXJpdHlTdHJhdGVneSBleHRlbmRzIENvbnRlbnRTZWN1cml0eVN0cmF0ZWd5IHtcbiAgY29uc3RydWN0b3Iobm9uY2U6IHN0cmluZykge1xuICAgIHN1cGVyKG5vbmNlKTtcbiAgfVxuXG4gIGFwcGx5Q1NQKGVsZW1lbnQ6IEhUTUxTY3JpcHRFbGVtZW50IHwgSFRNTFN0eWxlRWxlbWVudCkge1xuICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdub25jZScsIHRoaXMubm9uY2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb0NvbnRlbnRTZWN1cml0eVN0cmF0ZWd5IGV4dGVuZHMgQ29udGVudFNlY3VyaXR5U3RyYXRlZ3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgYXBwbHlDU1AoXzogSFRNTFNjcmlwdEVsZW1lbnQgfCBIVE1MU3R5bGVFbGVtZW50KSB7fVxufVxuXG5leHBvcnQgY29uc3QgQ09OVEVOVF9TRUNVUklUWV9TVFJBVEVHWSA9IHtcbiAgTG9vc2Uobm9uY2U6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgTG9vc2VDb250ZW50U2VjdXJpdHlTdHJhdGVneShub25jZSk7XG4gIH0sXG4gIE5vbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBOb0NvbnRlbnRTZWN1cml0eVN0cmF0ZWd5KCk7XG4gIH0sXG59O1xuIl19
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
import { CONTENT_SECURITY_STRATEGY } from './content-security.strategy';
|
|
2
|
-
import { DOM_STRATEGY } from './dom.strategy';
|
|
3
|
-
export class ContentStrategy {
|
|
4
|
-
constructor(content, domStrategy = DOM_STRATEGY.AppendToHead(), contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.None(), options = {}) {
|
|
5
|
-
this.content = content;
|
|
6
|
-
this.domStrategy = domStrategy;
|
|
7
|
-
this.contentSecurityStrategy = contentSecurityStrategy;
|
|
8
|
-
this.options = options;
|
|
9
|
-
}
|
|
10
|
-
insertElement() {
|
|
11
|
-
const element = this.createElement();
|
|
12
|
-
if (this.options && Object.keys(this.options).length > 0) {
|
|
13
|
-
Object.keys(this.options).forEach(key => (element[key] = this.options[key]));
|
|
14
|
-
}
|
|
15
|
-
this.contentSecurityStrategy.applyCSP(element);
|
|
16
|
-
this.domStrategy.insertElement(element);
|
|
17
|
-
return element;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export class StyleContentStrategy extends ContentStrategy {
|
|
21
|
-
createElement() {
|
|
22
|
-
const element = document.createElement('style');
|
|
23
|
-
element.textContent = this.content;
|
|
24
|
-
return element;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
export class ScriptContentStrategy extends ContentStrategy {
|
|
28
|
-
createElement() {
|
|
29
|
-
const element = document.createElement('script');
|
|
30
|
-
element.textContent = this.content;
|
|
31
|
-
return element;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
export const CONTENT_STRATEGY = {
|
|
35
|
-
AppendScriptToBody(content, options) {
|
|
36
|
-
return new ScriptContentStrategy(content, DOM_STRATEGY.AppendToBody(), undefined, options);
|
|
37
|
-
},
|
|
38
|
-
AppendScriptToHead(content, options) {
|
|
39
|
-
return new ScriptContentStrategy(content, DOM_STRATEGY.AppendToHead(), undefined, options);
|
|
40
|
-
},
|
|
41
|
-
AppendStyleToHead(content, options) {
|
|
42
|
-
return new StyleContentStrategy(content, DOM_STRATEGY.AppendToHead(), undefined, options);
|
|
43
|
-
},
|
|
44
|
-
PrependStyleToHead(content, options) {
|
|
45
|
-
return new StyleContentStrategy(content, DOM_STRATEGY.PrependToHead(), undefined, options);
|
|
46
|
-
},
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { CONTENT_SECURITY_STRATEGY } from './content-security.strategy';
|
|
2
|
+
import { DOM_STRATEGY } from './dom.strategy';
|
|
3
|
+
export class ContentStrategy {
|
|
4
|
+
constructor(content, domStrategy = DOM_STRATEGY.AppendToHead(), contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.None(), options = {}) {
|
|
5
|
+
this.content = content;
|
|
6
|
+
this.domStrategy = domStrategy;
|
|
7
|
+
this.contentSecurityStrategy = contentSecurityStrategy;
|
|
8
|
+
this.options = options;
|
|
9
|
+
}
|
|
10
|
+
insertElement() {
|
|
11
|
+
const element = this.createElement();
|
|
12
|
+
if (this.options && Object.keys(this.options).length > 0) {
|
|
13
|
+
Object.keys(this.options).forEach(key => (element[key] = this.options[key]));
|
|
14
|
+
}
|
|
15
|
+
this.contentSecurityStrategy.applyCSP(element);
|
|
16
|
+
this.domStrategy.insertElement(element);
|
|
17
|
+
return element;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export class StyleContentStrategy extends ContentStrategy {
|
|
21
|
+
createElement() {
|
|
22
|
+
const element = document.createElement('style');
|
|
23
|
+
element.textContent = this.content;
|
|
24
|
+
return element;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export class ScriptContentStrategy extends ContentStrategy {
|
|
28
|
+
createElement() {
|
|
29
|
+
const element = document.createElement('script');
|
|
30
|
+
element.textContent = this.content;
|
|
31
|
+
return element;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export const CONTENT_STRATEGY = {
|
|
35
|
+
AppendScriptToBody(content, options) {
|
|
36
|
+
return new ScriptContentStrategy(content, DOM_STRATEGY.AppendToBody(), undefined, options);
|
|
37
|
+
},
|
|
38
|
+
AppendScriptToHead(content, options) {
|
|
39
|
+
return new ScriptContentStrategy(content, DOM_STRATEGY.AppendToHead(), undefined, options);
|
|
40
|
+
},
|
|
41
|
+
AppendStyleToHead(content, options) {
|
|
42
|
+
return new StyleContentStrategy(content, DOM_STRATEGY.AppendToHead(), undefined, options);
|
|
43
|
+
},
|
|
44
|
+
PrependStyleToHead(content, options) {
|
|
45
|
+
return new StyleContentStrategy(content, DOM_STRATEGY.PrependToHead(), undefined, options);
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zdHJhdGVnaWVzL2NvbnRlbnQuc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQix5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2pHLE9BQU8sRUFBZSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU0zRCxNQUFNLE9BQWdCLGVBQWU7SUFDbkMsWUFDUyxPQUFlLEVBQ1osY0FBMkIsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUN0RCwwQkFBbUQseUJBQXlCLENBQUMsSUFBSSxFQUFFLEVBQ25GLFVBQTZCLEVBQUU7UUFIbEMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNaLGdCQUFXLEdBQVgsV0FBVyxDQUEyQztRQUN0RCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQTREO1FBQ25GLFlBQU8sR0FBUCxPQUFPLENBQXdCO0lBQ3hDLENBQUM7SUFJSixhQUFhO1FBQ1gsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXJDLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzlFO1FBRUQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4QyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBaUM7SUFDekUsYUFBYTtRQUNYLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBRW5DLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFrQztJQUMzRSxhQUFhO1FBQ1gsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFbkMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsa0JBQWtCLENBQUMsT0FBZSxFQUFFLE9BQTJDO1FBQzdFLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsT0FBZSxFQUFFLE9BQTJDO1FBQzdFLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsT0FBZSxFQUFFLE9BQTBDO1FBQzNFLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsT0FBZSxFQUFFLE9BQTBDO1FBQzVFLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLGFBQWEsRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3RixDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRTZWN1cml0eVN0cmF0ZWd5LCBDT05URU5UX1NFQ1VSSVRZX1NUUkFURUdZIH0gZnJvbSAnLi9jb250ZW50LXNlY3VyaXR5LnN0cmF0ZWd5JztcbmltcG9ydCB7IERvbVN0cmF0ZWd5LCBET01fU1RSQVRFR1kgfSBmcm9tICcuL2RvbS5zdHJhdGVneSc7XG5cbmV4cG9ydCB0eXBlIEVsZW1lbnRPcHRpb25zPFQgZXh0ZW5kcyBIVE1MU2NyaXB0RWxlbWVudCB8IEhUTUxTdHlsZUVsZW1lbnQgPSBhbnk+ID0gUGFydGlhbDx7XG4gIFtrZXkgaW4ga2V5b2YgVF06IFRba2V5XTtcbn0+O1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29udGVudFN0cmF0ZWd5PFQgZXh0ZW5kcyBIVE1MU2NyaXB0RWxlbWVudCB8IEhUTUxTdHlsZUVsZW1lbnQgPSBhbnk+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNvbnRlbnQ6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgZG9tU3RyYXRlZ3k6IERvbVN0cmF0ZWd5ID0gRE9NX1NUUkFURUdZLkFwcGVuZFRvSGVhZCgpLFxuICAgIHByb3RlY3RlZCBjb250ZW50U2VjdXJpdHlTdHJhdGVneTogQ29udGVudFNlY3VyaXR5U3RyYXRlZ3kgPSBDT05URU5UX1NFQ1VSSVRZX1NUUkFURUdZLk5vbmUoKSxcbiAgICBwcm90ZWN0ZWQgb3B0aW9uczogRWxlbWVudE9wdGlvbnM8VD4gPSB7fSxcbiAgKSB7fVxuXG4gIGFic3RyYWN0IGNyZWF0ZUVsZW1lbnQoKTogVDtcblxuICBpbnNlcnRFbGVtZW50KCk6IFQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmNyZWF0ZUVsZW1lbnQoKTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnMgJiYgT2JqZWN0LmtleXModGhpcy5vcHRpb25zKS5sZW5ndGggPiAwKSB7XG4gICAgICBPYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMpLmZvckVhY2goa2V5ID0+IChlbGVtZW50W2tleV0gPSB0aGlzLm9wdGlvbnNba2V5XSkpO1xuICAgIH1cblxuICAgIHRoaXMuY29udGVudFNlY3VyaXR5U3RyYXRlZ3kuYXBwbHlDU1AoZWxlbWVudCk7XG4gICAgdGhpcy5kb21TdHJhdGVneS5pbnNlcnRFbGVtZW50KGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFN0eWxlQ29udGVudFN0cmF0ZWd5IGV4dGVuZHMgQ29udGVudFN0cmF0ZWd5PEhUTUxTdHlsZUVsZW1lbnQ+IHtcbiAgY3JlYXRlRWxlbWVudCgpOiBIVE1MU3R5bGVFbGVtZW50IHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICBlbGVtZW50LnRleHRDb250ZW50ID0gdGhpcy5jb250ZW50O1xuXG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNjcmlwdENvbnRlbnRTdHJhdGVneSBleHRlbmRzIENvbnRlbnRTdHJhdGVneTxIVE1MU2NyaXB0RWxlbWVudD4ge1xuICBjcmVhdGVFbGVtZW50KCk6IEhUTUxTY3JpcHRFbGVtZW50IHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgZWxlbWVudC50ZXh0Q29udGVudCA9IHRoaXMuY29udGVudDtcblxuICAgIHJldHVybiBlbGVtZW50O1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBDT05URU5UX1NUUkFURUdZID0ge1xuICBBcHBlbmRTY3JpcHRUb0JvZHkoY29udGVudDogc3RyaW5nLCBvcHRpb25zPzogRWxlbWVudE9wdGlvbnM8SFRNTFNjcmlwdEVsZW1lbnQ+KSB7XG4gICAgcmV0dXJuIG5ldyBTY3JpcHRDb250ZW50U3RyYXRlZ3koY29udGVudCwgRE9NX1NUUkFURUdZLkFwcGVuZFRvQm9keSgpLCB1bmRlZmluZWQsIG9wdGlvbnMpO1xuICB9LFxuICBBcHBlbmRTY3JpcHRUb0hlYWQoY29udGVudDogc3RyaW5nLCBvcHRpb25zPzogRWxlbWVudE9wdGlvbnM8SFRNTFNjcmlwdEVsZW1lbnQ+KSB7XG4gICAgcmV0dXJuIG5ldyBTY3JpcHRDb250ZW50U3RyYXRlZ3koY29udGVudCwgRE9NX1NUUkFURUdZLkFwcGVuZFRvSGVhZCgpLCB1bmRlZmluZWQsIG9wdGlvbnMpO1xuICB9LFxuICBBcHBlbmRTdHlsZVRvSGVhZChjb250ZW50OiBzdHJpbmcsIG9wdGlvbnM/OiBFbGVtZW50T3B0aW9uczxIVE1MU3R5bGVFbGVtZW50Pikge1xuICAgIHJldHVybiBuZXcgU3R5bGVDb250ZW50U3RyYXRlZ3koY29udGVudCwgRE9NX1NUUkFURUdZLkFwcGVuZFRvSGVhZCgpLCB1bmRlZmluZWQsIG9wdGlvbnMpO1xuICB9LFxuICBQcmVwZW5kU3R5bGVUb0hlYWQoY29udGVudDogc3RyaW5nLCBvcHRpb25zPzogRWxlbWVudE9wdGlvbnM8SFRNTFN0eWxlRWxlbWVudD4pIHtcbiAgICByZXR1cm4gbmV3IFN0eWxlQ29udGVudFN0cmF0ZWd5KGNvbnRlbnQsIERPTV9TVFJBVEVHWS5QcmVwZW5kVG9IZWFkKCksIHVuZGVmaW5lZCwgb3B0aW9ucyk7XG4gIH0sXG59O1xuIl19
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
export class ContextStrategy {
|
|
2
|
-
constructor(context) {
|
|
3
|
-
this.context = context;
|
|
4
|
-
}
|
|
5
|
-
setContext(componentRef) {
|
|
6
|
-
return this.context;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
export class NoContextStrategy extends ContextStrategy {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(undefined);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
export class ComponentContextStrategy extends ContextStrategy {
|
|
15
|
-
setContext(componentRef) {
|
|
16
|
-
Object.keys(this.context).forEach(key => (componentRef.instance[key] = this.context[key]));
|
|
17
|
-
componentRef.changeDetectorRef.detectChanges();
|
|
18
|
-
return this.context;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export class TemplateContextStrategy extends ContextStrategy {
|
|
22
|
-
setContext() {
|
|
23
|
-
return this.context;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
export const CONTEXT_STRATEGY = {
|
|
27
|
-
None() {
|
|
28
|
-
return new NoContextStrategy();
|
|
29
|
-
},
|
|
30
|
-
Component(context) {
|
|
31
|
-
return new ComponentContextStrategy(context);
|
|
32
|
-
},
|
|
33
|
-
Template(context) {
|
|
34
|
-
return new TemplateContextStrategy(context);
|
|
35
|
-
},
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export class ContextStrategy {
|
|
2
|
+
constructor(context) {
|
|
3
|
+
this.context = context;
|
|
4
|
+
}
|
|
5
|
+
setContext(componentRef) {
|
|
6
|
+
return this.context;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export class NoContextStrategy extends ContextStrategy {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(undefined);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export class ComponentContextStrategy extends ContextStrategy {
|
|
15
|
+
setContext(componentRef) {
|
|
16
|
+
Object.keys(this.context).forEach(key => (componentRef.instance[key] = this.context[key]));
|
|
17
|
+
componentRef.changeDetectorRef.detectChanges();
|
|
18
|
+
return this.context;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export class TemplateContextStrategy extends ContextStrategy {
|
|
22
|
+
setContext() {
|
|
23
|
+
return this.context;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export const CONTEXT_STRATEGY = {
|
|
27
|
+
None() {
|
|
28
|
+
return new NoContextStrategy();
|
|
29
|
+
},
|
|
30
|
+
Component(context) {
|
|
31
|
+
return new ComponentContextStrategy(context);
|
|
32
|
+
},
|
|
33
|
+
Template(context) {
|
|
34
|
+
return new TemplateContextStrategy(context);
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zdHJhdGVnaWVzL2NvbnRleHQuc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFnQixlQUFlO0lBQ25DLFlBQW1CLE9BQWdDO1FBQWhDLFlBQU8sR0FBUCxPQUFPLENBQXlCO0lBQUcsQ0FBQztJQUV2RCxVQUFVLENBQUMsWUFBa0Q7UUFDM0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxpQkFFWCxTQUFRLGVBQWtCO0lBQzFCO1FBQ0UsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyx3QkFBb0QsU0FBUSxlQUFrQjtJQUN6RixVQUFVLENBQUMsWUFBaUQ7UUFDMUQsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNGLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHVCQUEwRCxTQUFRLGVBQWtCO0lBQy9GLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsSUFBSTtRQUNGLE9BQU8sSUFBSSxpQkFBaUIsRUFBSyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxTQUFTLENBQTRCLE9BQXVDO1FBQzFFLE9BQU8sSUFBSSx3QkFBd0IsQ0FBSSxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsUUFBUSxDQUFtQyxPQUFzQztRQUMvRSxPQUFPLElBQUksdUJBQXVCLENBQUksT0FBTyxDQUFDLENBQUM7SUFDakQsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIFRlbXBsYXRlUmVmLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbmZlcnJlZENvbnRleHRPZiwgSW5mZXJyZWRJbnN0YW5jZU9mIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbnRleHRTdHJhdGVneTxUID0gYW55PiB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb250ZXh0OiBQYXJ0aWFsPENvbnRleHRUeXBlPFQ+Pikge31cblxuICBzZXRDb250ZXh0KGNvbXBvbmVudFJlZj86IENvbXBvbmVudFJlZjxJbmZlcnJlZEluc3RhbmNlT2Y8VD4+KTogUGFydGlhbDxDb250ZXh0VHlwZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5vQ29udGV4dFN0cmF0ZWd5PFxuICBUIGV4dGVuZHMgVHlwZTxhbnk+IHwgVGVtcGxhdGVSZWY8YW55PiA9IGFueSxcbj4gZXh0ZW5kcyBDb250ZXh0U3RyYXRlZ3k8VD4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih1bmRlZmluZWQpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb21wb25lbnRDb250ZXh0U3RyYXRlZ3k8VCBleHRlbmRzIFR5cGU8YW55PiA9IGFueT4gZXh0ZW5kcyBDb250ZXh0U3RyYXRlZ3k8VD4ge1xuICBzZXRDb250ZXh0KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEluZmVycmVkSW5zdGFuY2VPZjxUPj4pOiBQYXJ0aWFsPEluZmVycmVkSW5zdGFuY2VPZjxUPj4ge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuY29udGV4dCkuZm9yRWFjaChrZXkgPT4gKGNvbXBvbmVudFJlZi5pbnN0YW5jZVtrZXldID0gdGhpcy5jb250ZXh0W2tleV0pKTtcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlQ29udGV4dFN0cmF0ZWd5PFQgZXh0ZW5kcyBUZW1wbGF0ZVJlZjxhbnk+ID0gYW55PiBleHRlbmRzIENvbnRleHRTdHJhdGVneTxUPiB7XG4gIHNldENvbnRleHQoKTogUGFydGlhbDxJbmZlcnJlZENvbnRleHRPZjxUPj4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQ7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IENPTlRFWFRfU1RSQVRFR1kgPSB7XG4gIE5vbmU8VCBleHRlbmRzIFR5cGU8YW55PiB8IFRlbXBsYXRlUmVmPGFueT4gPSBhbnk+KCkge1xuICAgIHJldHVybiBuZXcgTm9Db250ZXh0U3RyYXRlZ3k8VD4oKTtcbiAgfSxcbiAgQ29tcG9uZW50PFQgZXh0ZW5kcyBUeXBlPGFueT4gPSBhbnk+KGNvbnRleHQ6IFBhcnRpYWw8SW5mZXJyZWRJbnN0YW5jZU9mPFQ+Pikge1xuICAgIHJldHVybiBuZXcgQ29tcG9uZW50Q29udGV4dFN0cmF0ZWd5PFQ+KGNvbnRleHQpO1xuICB9LFxuICBUZW1wbGF0ZTxUIGV4dGVuZHMgVGVtcGxhdGVSZWY8YW55PiA9IGFueT4oY29udGV4dDogUGFydGlhbDxJbmZlcnJlZENvbnRleHRPZjxUPj4pIHtcbiAgICByZXR1cm4gbmV3IFRlbXBsYXRlQ29udGV4dFN0cmF0ZWd5PFQ+KGNvbnRleHQpO1xuICB9LFxufTtcblxudHlwZSBDb250ZXh0VHlwZTxUPiA9IFQgZXh0ZW5kcyBUeXBlPGluZmVyIFU+IHwgVGVtcGxhdGVSZWY8aW5mZXIgVT4gPyBVIDogbmV2ZXI7XG4iXX0=
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
export class CrossOriginStrategy {
|
|
2
|
-
constructor(crossorigin, integrity) {
|
|
3
|
-
this.crossorigin = crossorigin;
|
|
4
|
-
this.integrity = integrity;
|
|
5
|
-
}
|
|
6
|
-
setCrossOrigin(element) {
|
|
7
|
-
if (this.integrity)
|
|
8
|
-
element.setAttribute('integrity', this.integrity);
|
|
9
|
-
element.setAttribute('crossorigin', this.crossorigin);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
export class NoCrossOriginStrategy extends CrossOriginStrategy {
|
|
13
|
-
setCrossOrigin() { }
|
|
14
|
-
}
|
|
15
|
-
export const CROSS_ORIGIN_STRATEGY = {
|
|
16
|
-
Anonymous(integrity) {
|
|
17
|
-
return new CrossOriginStrategy('anonymous', integrity);
|
|
18
|
-
},
|
|
19
|
-
UseCredentials(integrity) {
|
|
20
|
-
return new CrossOriginStrategy('use-credentials', integrity);
|
|
21
|
-
},
|
|
22
|
-
None() {
|
|
23
|
-
return new NoCrossOriginStrategy(null);
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export class CrossOriginStrategy {
|
|
2
|
+
constructor(crossorigin, integrity) {
|
|
3
|
+
this.crossorigin = crossorigin;
|
|
4
|
+
this.integrity = integrity;
|
|
5
|
+
}
|
|
6
|
+
setCrossOrigin(element) {
|
|
7
|
+
if (this.integrity)
|
|
8
|
+
element.setAttribute('integrity', this.integrity);
|
|
9
|
+
element.setAttribute('crossorigin', this.crossorigin);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class NoCrossOriginStrategy extends CrossOriginStrategy {
|
|
13
|
+
setCrossOrigin() { }
|
|
14
|
+
}
|
|
15
|
+
export const CROSS_ORIGIN_STRATEGY = {
|
|
16
|
+
Anonymous(integrity) {
|
|
17
|
+
return new CrossOriginStrategy('anonymous', integrity);
|
|
18
|
+
},
|
|
19
|
+
UseCredentials(integrity) {
|
|
20
|
+
return new CrossOriginStrategy('use-credentials', integrity);
|
|
21
|
+
},
|
|
22
|
+
None() {
|
|
23
|
+
return new NoCrossOriginStrategy(null);
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3Mtb3JpZ2luLnN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3N0cmF0ZWdpZXMvY3Jvc3Mtb3JpZ2luLnN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFBbUIsV0FBNEMsRUFBUyxTQUFrQjtRQUF2RSxnQkFBVyxHQUFYLFdBQVcsQ0FBaUM7UUFBUyxjQUFTLEdBQVQsU0FBUyxDQUFTO0lBQUcsQ0FBQztJQUU5RixjQUFjLENBQXdCLE9BQVU7UUFDOUMsSUFBSSxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0RSxPQUFPLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLG1CQUFtQjtJQUM1RCxjQUFjLEtBQUksQ0FBQztDQUNwQjtBQUVELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLFNBQVMsQ0FBQyxTQUFrQjtRQUMxQixPQUFPLElBQUksbUJBQW1CLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxjQUFjLENBQUMsU0FBa0I7UUFDL0IsT0FBTyxJQUFJLG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFDRCxJQUFJO1FBQ0YsT0FBTyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENyb3NzT3JpZ2luU3RyYXRlZ3kge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgY3Jvc3NvcmlnaW46ICdhbm9ueW1vdXMnIHwgJ3VzZS1jcmVkZW50aWFscycsIHB1YmxpYyBpbnRlZ3JpdHk/OiBzdHJpbmcpIHt9XG5cbiAgc2V0Q3Jvc3NPcmlnaW48VCBleHRlbmRzIEhUTUxFbGVtZW50PihlbGVtZW50OiBUKSB7XG4gICAgaWYgKHRoaXMuaW50ZWdyaXR5KSBlbGVtZW50LnNldEF0dHJpYnV0ZSgnaW50ZWdyaXR5JywgdGhpcy5pbnRlZ3JpdHkpO1xuICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdjcm9zc29yaWdpbicsIHRoaXMuY3Jvc3NvcmlnaW4pO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb0Nyb3NzT3JpZ2luU3RyYXRlZ3kgZXh0ZW5kcyBDcm9zc09yaWdpblN0cmF0ZWd5IHtcbiAgc2V0Q3Jvc3NPcmlnaW4oKSB7fVxufVxuXG5leHBvcnQgY29uc3QgQ1JPU1NfT1JJR0lOX1NUUkFURUdZID0ge1xuICBBbm9ueW1vdXMoaW50ZWdyaXR5Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBDcm9zc09yaWdpblN0cmF0ZWd5KCdhbm9ueW1vdXMnLCBpbnRlZ3JpdHkpO1xuICB9LFxuICBVc2VDcmVkZW50aWFscyhpbnRlZ3JpdHk/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IENyb3NzT3JpZ2luU3RyYXRlZ3koJ3VzZS1jcmVkZW50aWFscycsIGludGVncml0eSk7XG4gIH0sXG4gIE5vbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBOb0Nyb3NzT3JpZ2luU3RyYXRlZ3kobnVsbCk7XG4gIH0sXG59O1xuIl19
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
export class DomStrategy {
|
|
2
|
-
constructor(target = document.head, position = 'beforeend') {
|
|
3
|
-
this.target = target;
|
|
4
|
-
this.position = position;
|
|
5
|
-
}
|
|
6
|
-
insertElement(element) {
|
|
7
|
-
this.target.insertAdjacentElement(this.position, element);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
export const DOM_STRATEGY = {
|
|
11
|
-
AfterElement(element) {
|
|
12
|
-
return new DomStrategy(element, 'afterend');
|
|
13
|
-
},
|
|
14
|
-
AppendToBody() {
|
|
15
|
-
return new DomStrategy(document.body, 'beforeend');
|
|
16
|
-
},
|
|
17
|
-
AppendToHead() {
|
|
18
|
-
return new DomStrategy(document.head, 'beforeend');
|
|
19
|
-
},
|
|
20
|
-
BeforeElement(element) {
|
|
21
|
-
return new DomStrategy(element, 'beforebegin');
|
|
22
|
-
},
|
|
23
|
-
PrependToHead() {
|
|
24
|
-
return new DomStrategy(document.head, 'afterbegin');
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export class DomStrategy {
|
|
2
|
+
constructor(target = document.head, position = 'beforeend') {
|
|
3
|
+
this.target = target;
|
|
4
|
+
this.position = position;
|
|
5
|
+
}
|
|
6
|
+
insertElement(element) {
|
|
7
|
+
this.target.insertAdjacentElement(this.position, element);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export const DOM_STRATEGY = {
|
|
11
|
+
AfterElement(element) {
|
|
12
|
+
return new DomStrategy(element, 'afterend');
|
|
13
|
+
},
|
|
14
|
+
AppendToBody() {
|
|
15
|
+
return new DomStrategy(document.body, 'beforeend');
|
|
16
|
+
},
|
|
17
|
+
AppendToHead() {
|
|
18
|
+
return new DomStrategy(document.head, 'beforeend');
|
|
19
|
+
},
|
|
20
|
+
BeforeElement(element) {
|
|
21
|
+
return new DomStrategy(element, 'beforebegin');
|
|
22
|
+
},
|
|
23
|
+
PrependToHead() {
|
|
24
|
+
return new DomStrategy(document.head, 'afterbegin');
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLnN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3N0cmF0ZWdpZXMvZG9tLnN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFlBQ1MsU0FBc0IsUUFBUSxDQUFDLElBQUksRUFDbkMsV0FBMkIsV0FBVztRQUR0QyxXQUFNLEdBQU4sTUFBTSxDQUE2QjtRQUNuQyxhQUFRLEdBQVIsUUFBUSxDQUE4QjtJQUM1QyxDQUFDO0lBRUosYUFBYSxDQUF3QixPQUFVO1FBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsWUFBWSxDQUFDLE9BQW9CO1FBQy9CLE9BQU8sSUFBSSxXQUFXLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFDRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRCxhQUFhLENBQUMsT0FBb0I7UUFDaEMsT0FBTyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELGFBQWE7UUFDWCxPQUFPLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRG9tU3RyYXRlZ3kge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdGFyZ2V0OiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LmhlYWQsXG4gICAgcHVibGljIHBvc2l0aW9uOiBJbnNlcnRQb3NpdGlvbiA9ICdiZWZvcmVlbmQnLFxuICApIHt9XG5cbiAgaW5zZXJ0RWxlbWVudDxUIGV4dGVuZHMgSFRNTEVsZW1lbnQ+KGVsZW1lbnQ6IFQpIHtcbiAgICB0aGlzLnRhcmdldC5pbnNlcnRBZGphY2VudEVsZW1lbnQodGhpcy5wb3NpdGlvbiwgZWxlbWVudCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IERPTV9TVFJBVEVHWSA9IHtcbiAgQWZ0ZXJFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgcmV0dXJuIG5ldyBEb21TdHJhdGVneShlbGVtZW50LCAnYWZ0ZXJlbmQnKTtcbiAgfSxcbiAgQXBwZW5kVG9Cb2R5KCkge1xuICAgIHJldHVybiBuZXcgRG9tU3RyYXRlZ3koZG9jdW1lbnQuYm9keSwgJ2JlZm9yZWVuZCcpO1xuICB9LFxuICBBcHBlbmRUb0hlYWQoKSB7XG4gICAgcmV0dXJuIG5ldyBEb21TdHJhdGVneShkb2N1bWVudC5oZWFkLCAnYmVmb3JlZW5kJyk7XG4gIH0sXG4gIEJlZm9yZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICByZXR1cm4gbmV3IERvbVN0cmF0ZWd5KGVsZW1lbnQsICdiZWZvcmViZWdpbicpO1xuICB9LFxuICBQcmVwZW5kVG9IZWFkKCkge1xuICAgIHJldHVybiBuZXcgRG9tU3RyYXRlZ3koZG9jdW1lbnQuaGVhZCwgJ2FmdGVyYmVnaW4nKTtcbiAgfSxcbn07XG4iXX0=
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export * from './container.strategy';
|
|
2
|
-
export * from './content-security.strategy';
|
|
3
|
-
export * from './content.strategy';
|
|
4
|
-
export * from './context.strategy';
|
|
5
|
-
export * from './cross-origin.strategy';
|
|
6
|
-
export * from './dom.strategy';
|
|
7
|
-
export * from './loading.strategy';
|
|
8
|
-
export * from './projection.strategy';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './container.strategy';
|
|
2
|
+
export * from './content-security.strategy';
|
|
3
|
+
export * from './content.strategy';
|
|
4
|
+
export * from './context.strategy';
|
|
5
|
+
export * from './cross-origin.strategy';
|
|
6
|
+
export * from './dom.strategy';
|
|
7
|
+
export * from './loading.strategy';
|
|
8
|
+
export * from './projection.strategy';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc3RyYXRlZ2llcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRhaW5lci5zdHJhdGVneSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtc2VjdXJpdHkuc3RyYXRlZ3knO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZW50LnN0cmF0ZWd5JztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC5zdHJhdGVneSc7XG5leHBvcnQgKiBmcm9tICcuL2Nyb3NzLW9yaWdpbi5zdHJhdGVneSc7XG5leHBvcnQgKiBmcm9tICcuL2RvbS5zdHJhdGVneSc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRpbmcuc3RyYXRlZ3knO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9qZWN0aW9uLnN0cmF0ZWd5JztcbiJdfQ==
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
import { of } from 'rxjs';
|
|
2
|
-
import { switchMap } from 'rxjs/operators';
|
|
3
|
-
import { fromLazyLoad } from '../utils';
|
|
4
|
-
import { CROSS_ORIGIN_STRATEGY } from './cross-origin.strategy';
|
|
5
|
-
import { DOM_STRATEGY } from './dom.strategy';
|
|
6
|
-
export class LoadingStrategy {
|
|
7
|
-
constructor(path, domStrategy = DOM_STRATEGY.AppendToHead(), crossOriginStrategy = CROSS_ORIGIN_STRATEGY.Anonymous()) {
|
|
8
|
-
this.path = path;
|
|
9
|
-
this.domStrategy = domStrategy;
|
|
10
|
-
this.crossOriginStrategy = crossOriginStrategy;
|
|
11
|
-
}
|
|
12
|
-
createStream() {
|
|
13
|
-
this.element = this.createElement();
|
|
14
|
-
return of(null).pipe(switchMap(() => fromLazyLoad(this.element, this.domStrategy, this.crossOriginStrategy)));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export class ScriptLoadingStrategy extends LoadingStrategy {
|
|
18
|
-
constructor(src, domStrategy, crossOriginStrategy) {
|
|
19
|
-
super(src, domStrategy, crossOriginStrategy);
|
|
20
|
-
}
|
|
21
|
-
createElement() {
|
|
22
|
-
const element = document.createElement('script');
|
|
23
|
-
element.src = this.path;
|
|
24
|
-
return element;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
export class StyleLoadingStrategy extends LoadingStrategy {
|
|
28
|
-
constructor(href, domStrategy, crossOriginStrategy) {
|
|
29
|
-
super(href, domStrategy, crossOriginStrategy);
|
|
30
|
-
}
|
|
31
|
-
createElement() {
|
|
32
|
-
const element = document.createElement('link');
|
|
33
|
-
element.rel = 'stylesheet';
|
|
34
|
-
element.href = this.path;
|
|
35
|
-
return element;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
export const LOADING_STRATEGY = {
|
|
39
|
-
AppendScriptToBody(src) {
|
|
40
|
-
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToBody(), CROSS_ORIGIN_STRATEGY.None());
|
|
41
|
-
},
|
|
42
|
-
AppendAnonymousScriptToBody(src, integrity) {
|
|
43
|
-
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToBody(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
44
|
-
},
|
|
45
|
-
AppendAnonymousScriptToHead(src, integrity) {
|
|
46
|
-
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
47
|
-
},
|
|
48
|
-
AppendAnonymousStyleToHead(src, integrity) {
|
|
49
|
-
return new StyleLoadingStrategy(src, DOM_STRATEGY.AppendToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
50
|
-
},
|
|
51
|
-
PrependAnonymousScriptToHead(src, integrity) {
|
|
52
|
-
return new ScriptLoadingStrategy(src, DOM_STRATEGY.PrependToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
53
|
-
},
|
|
54
|
-
PrependAnonymousStyleToHead(src, integrity) {
|
|
55
|
-
return new StyleLoadingStrategy(src, DOM_STRATEGY.PrependToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
56
|
-
},
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { of } from 'rxjs';
|
|
2
|
+
import { switchMap } from 'rxjs/operators';
|
|
3
|
+
import { fromLazyLoad } from '../utils';
|
|
4
|
+
import { CROSS_ORIGIN_STRATEGY } from './cross-origin.strategy';
|
|
5
|
+
import { DOM_STRATEGY } from './dom.strategy';
|
|
6
|
+
export class LoadingStrategy {
|
|
7
|
+
constructor(path, domStrategy = DOM_STRATEGY.AppendToHead(), crossOriginStrategy = CROSS_ORIGIN_STRATEGY.Anonymous()) {
|
|
8
|
+
this.path = path;
|
|
9
|
+
this.domStrategy = domStrategy;
|
|
10
|
+
this.crossOriginStrategy = crossOriginStrategy;
|
|
11
|
+
}
|
|
12
|
+
createStream() {
|
|
13
|
+
this.element = this.createElement();
|
|
14
|
+
return of(null).pipe(switchMap(() => fromLazyLoad(this.element, this.domStrategy, this.crossOriginStrategy)));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export class ScriptLoadingStrategy extends LoadingStrategy {
|
|
18
|
+
constructor(src, domStrategy, crossOriginStrategy) {
|
|
19
|
+
super(src, domStrategy, crossOriginStrategy);
|
|
20
|
+
}
|
|
21
|
+
createElement() {
|
|
22
|
+
const element = document.createElement('script');
|
|
23
|
+
element.src = this.path;
|
|
24
|
+
return element;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export class StyleLoadingStrategy extends LoadingStrategy {
|
|
28
|
+
constructor(href, domStrategy, crossOriginStrategy) {
|
|
29
|
+
super(href, domStrategy, crossOriginStrategy);
|
|
30
|
+
}
|
|
31
|
+
createElement() {
|
|
32
|
+
const element = document.createElement('link');
|
|
33
|
+
element.rel = 'stylesheet';
|
|
34
|
+
element.href = this.path;
|
|
35
|
+
return element;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export const LOADING_STRATEGY = {
|
|
39
|
+
AppendScriptToBody(src) {
|
|
40
|
+
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToBody(), CROSS_ORIGIN_STRATEGY.None());
|
|
41
|
+
},
|
|
42
|
+
AppendAnonymousScriptToBody(src, integrity) {
|
|
43
|
+
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToBody(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
44
|
+
},
|
|
45
|
+
AppendAnonymousScriptToHead(src, integrity) {
|
|
46
|
+
return new ScriptLoadingStrategy(src, DOM_STRATEGY.AppendToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
47
|
+
},
|
|
48
|
+
AppendAnonymousStyleToHead(src, integrity) {
|
|
49
|
+
return new StyleLoadingStrategy(src, DOM_STRATEGY.AppendToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
50
|
+
},
|
|
51
|
+
PrependAnonymousScriptToHead(src, integrity) {
|
|
52
|
+
return new ScriptLoadingStrategy(src, DOM_STRATEGY.PrependToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
53
|
+
},
|
|
54
|
+
PrependAnonymousStyleToHead(src, integrity) {
|
|
55
|
+
return new StyleLoadingStrategy(src, DOM_STRATEGY.PrependToHead(), CROSS_ORIGIN_STRATEGY.Anonymous(integrity));
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zdHJhdGVnaWVzL2xvYWRpbmcuc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQXVCLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFlLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNELE1BQU0sT0FBZ0IsZUFBZTtJQUduQyxZQUNTLElBQVksRUFDVCxjQUEyQixZQUFZLENBQUMsWUFBWSxFQUFFLEVBQ3RELHNCQUEyQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUU7UUFGL0UsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNULGdCQUFXLEdBQVgsV0FBVyxDQUEyQztRQUN0RCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXlEO0lBQ3JGLENBQUM7SUFJSixZQUFZO1FBQ1YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFcEMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNsQixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUMzRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQWtDO0lBQzNFLFlBQVksR0FBVyxFQUFFLFdBQXlCLEVBQUUsbUJBQXlDO1FBQzNGLEtBQUssQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELE9BQU8sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUV4QixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBZ0M7SUFDeEUsWUFBWSxJQUFZLEVBQUUsV0FBeUIsRUFBRSxtQkFBeUM7UUFDNUYsS0FBSyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsT0FBTyxDQUFDLEdBQUcsR0FBRyxZQUFZLENBQUM7UUFDM0IsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRXpCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLGtCQUFrQixDQUFDLEdBQVc7UUFDNUIsT0FBTyxJQUFJLHFCQUFxQixDQUM5QixHQUFHLEVBQ0gsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUMzQixxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFDRCwyQkFBMkIsQ0FBQyxHQUFXLEVBQUUsU0FBa0I7UUFDekQsT0FBTyxJQUFJLHFCQUFxQixDQUM5QixHQUFHLEVBQ0gsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUMzQixxQkFBcUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBQ0QsMkJBQTJCLENBQUMsR0FBVyxFQUFFLFNBQWtCO1FBQ3pELE9BQU8sSUFBSSxxQkFBcUIsQ0FDOUIsR0FBRyxFQUNILFlBQVksQ0FBQyxZQUFZLEVBQUUsRUFDM0IscUJBQXFCLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUNELDBCQUEwQixDQUFDLEdBQVcsRUFBRSxTQUFrQjtRQUN4RCxPQUFPLElBQUksb0JBQW9CLENBQzdCLEdBQUcsRUFDSCxZQUFZLENBQUMsWUFBWSxFQUFFLEVBQzNCLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FDM0MsQ0FBQztJQUNKLENBQUM7SUFDRCw0QkFBNEIsQ0FBQyxHQUFXLEVBQUUsU0FBa0I7UUFDMUQsT0FBTyxJQUFJLHFCQUFxQixDQUM5QixHQUFHLEVBQ0gsWUFBWSxDQUFDLGFBQWEsRUFBRSxFQUM1QixxQkFBcUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBQ0QsMkJBQTJCLENBQUMsR0FBVyxFQUFFLFNBQWtCO1FBQ3pELE9BQU8sSUFBSSxvQkFBb0IsQ0FDN0IsR0FBRyxFQUNILFlBQVksQ0FBQyxhQUFhLEVBQUUsRUFDNUIscUJBQXFCLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgZnJvbUxhenlMb2FkIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQ3Jvc3NPcmlnaW5TdHJhdGVneSwgQ1JPU1NfT1JJR0lOX1NUUkFURUdZIH0gZnJvbSAnLi9jcm9zcy1vcmlnaW4uc3RyYXRlZ3knO1xuaW1wb3J0IHsgRG9tU3RyYXRlZ3ksIERPTV9TVFJBVEVHWSB9IGZyb20gJy4vZG9tLnN0cmF0ZWd5JztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvYWRpbmdTdHJhdGVneTxUIGV4dGVuZHMgSFRNTFNjcmlwdEVsZW1lbnQgfCBIVE1MTGlua0VsZW1lbnQgPSBhbnk+IHtcbiAgZWxlbWVudDogVDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcGF0aDogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBkb21TdHJhdGVneTogRG9tU3RyYXRlZ3kgPSBET01fU1RSQVRFR1kuQXBwZW5kVG9IZWFkKCksXG4gICAgcHJvdGVjdGVkIGNyb3NzT3JpZ2luU3RyYXRlZ3k6IENyb3NzT3JpZ2luU3RyYXRlZ3kgPSBDUk9TU19PUklHSU5fU1RSQVRFR1kuQW5vbnltb3VzKCksXG4gICkge31cblxuICBhYnN0cmFjdCBjcmVhdGVFbGVtZW50KCk6IFQ7XG5cbiAgY3JlYXRlU3RyZWFtPEUgZXh0ZW5kcyBFdmVudD4oKTogT2JzZXJ2YWJsZTxFPiB7XG4gICAgdGhpcy5lbGVtZW50ID0gdGhpcy5jcmVhdGVFbGVtZW50KCk7XG5cbiAgICByZXR1cm4gb2YobnVsbCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBmcm9tTGF6eUxvYWQ8RT4odGhpcy5lbGVtZW50LCB0aGlzLmRvbVN0cmF0ZWd5LCB0aGlzLmNyb3NzT3JpZ2luU3RyYXRlZ3kpKSxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTY3JpcHRMb2FkaW5nU3RyYXRlZ3kgZXh0ZW5kcyBMb2FkaW5nU3RyYXRlZ3k8SFRNTFNjcmlwdEVsZW1lbnQ+IHtcbiAgY29uc3RydWN0b3Ioc3JjOiBzdHJpbmcsIGRvbVN0cmF0ZWd5PzogRG9tU3RyYXRlZ3ksIGNyb3NzT3JpZ2luU3RyYXRlZ3k/OiBDcm9zc09yaWdpblN0cmF0ZWd5KSB7XG4gICAgc3VwZXIoc3JjLCBkb21TdHJhdGVneSwgY3Jvc3NPcmlnaW5TdHJhdGVneSk7XG4gIH1cblxuICBjcmVhdGVFbGVtZW50KCk6IEhUTUxTY3JpcHRFbGVtZW50IHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgZWxlbWVudC5zcmMgPSB0aGlzLnBhdGg7XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU3R5bGVMb2FkaW5nU3RyYXRlZ3kgZXh0ZW5kcyBMb2FkaW5nU3RyYXRlZ3k8SFRNTExpbmtFbGVtZW50PiB7XG4gIGNvbnN0cnVjdG9yKGhyZWY6IHN0cmluZywgZG9tU3RyYXRlZ3k/OiBEb21TdHJhdGVneSwgY3Jvc3NPcmlnaW5TdHJhdGVneT86IENyb3NzT3JpZ2luU3RyYXRlZ3kpIHtcbiAgICBzdXBlcihocmVmLCBkb21TdHJhdGVneSwgY3Jvc3NPcmlnaW5TdHJhdGVneSk7XG4gIH1cblxuICBjcmVhdGVFbGVtZW50KCk6IEhUTUxMaW5rRWxlbWVudCB7XG4gICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKTtcbiAgICBlbGVtZW50LnJlbCA9ICdzdHlsZXNoZWV0JztcbiAgICBlbGVtZW50LmhyZWYgPSB0aGlzLnBhdGg7XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgTE9BRElOR19TVFJBVEVHWSA9IHtcbiAgQXBwZW5kU2NyaXB0VG9Cb2R5KHNyYzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBTY3JpcHRMb2FkaW5nU3RyYXRlZ3koXG4gICAgICBzcmMsXG4gICAgICBET01fU1RSQVRFR1kuQXBwZW5kVG9Cb2R5KCksXG4gICAgICBDUk9TU19PUklHSU5fU1RSQVRFR1kuTm9uZSgpLFxuICAgICk7XG4gIH0sXG4gIEFwcGVuZEFub255bW91c1NjcmlwdFRvQm9keShzcmM6IHN0cmluZywgaW50ZWdyaXR5Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBTY3JpcHRMb2FkaW5nU3RyYXRlZ3koXG4gICAgICBzcmMsXG4gICAgICBET01fU1RSQVRFR1kuQXBwZW5kVG9Cb2R5KCksXG4gICAgICBDUk9TU19PUklHSU5fU1RSQVRFR1kuQW5vbnltb3VzKGludGVncml0eSksXG4gICAgKTtcbiAgfSxcbiAgQXBwZW5kQW5vbnltb3VzU2NyaXB0VG9IZWFkKHNyYzogc3RyaW5nLCBpbnRlZ3JpdHk/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IFNjcmlwdExvYWRpbmdTdHJhdGVneShcbiAgICAgIHNyYyxcbiAgICAgIERPTV9TVFJBVEVHWS5BcHBlbmRUb0hlYWQoKSxcbiAgICAgIENST1NTX09SSUdJTl9TVFJBVEVHWS5Bbm9ueW1vdXMoaW50ZWdyaXR5KSxcbiAgICApO1xuICB9LFxuICBBcHBlbmRBbm9ueW1vdXNTdHlsZVRvSGVhZChzcmM6IHN0cmluZywgaW50ZWdyaXR5Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBTdHlsZUxvYWRpbmdTdHJhdGVneShcbiAgICAgIHNyYyxcbiAgICAgIERPTV9TVFJBVEVHWS5BcHBlbmRUb0hlYWQoKSxcbiAgICAgIENST1NTX09SSUdJTl9TVFJBVEVHWS5Bbm9ueW1vdXMoaW50ZWdyaXR5KSxcbiAgICApO1xuICB9LFxuICBQcmVwZW5kQW5vbnltb3VzU2NyaXB0VG9IZWFkKHNyYzogc3RyaW5nLCBpbnRlZ3JpdHk/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IFNjcmlwdExvYWRpbmdTdHJhdGVneShcbiAgICAgIHNyYyxcbiAgICAgIERPTV9TVFJBVEVHWS5QcmVwZW5kVG9IZWFkKCksXG4gICAgICBDUk9TU19PUklHSU5fU1RSQVRFR1kuQW5vbnltb3VzKGludGVncml0eSksXG4gICAgKTtcbiAgfSxcbiAgUHJlcGVuZEFub255bW91c1N0eWxlVG9IZWFkKHNyYzogc3RyaW5nLCBpbnRlZ3JpdHk/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IFN0eWxlTG9hZGluZ1N0cmF0ZWd5KFxuICAgICAgc3JjLFxuICAgICAgRE9NX1NUUkFURUdZLlByZXBlbmRUb0hlYWQoKSxcbiAgICAgIENST1NTX09SSUdJTl9TVFJBVEVHWS5Bbm9ueW1vdXMoaW50ZWdyaXR5KSxcbiAgICApO1xuICB9LFxufTtcbiJdfQ==
|