@skyux/core 6.16.0 → 7.0.0-alpha.0
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/documentation.json +1049 -899
- package/esm2020/lib/modules/adapter-service/adapter.module.mjs +4 -4
- package/esm2020/lib/modules/adapter-service/adapter.service.mjs +24 -25
- package/esm2020/lib/modules/affix/affix-offset.mjs +1 -1
- package/esm2020/lib/modules/affix/affix.directive.mjs +41 -26
- package/esm2020/lib/modules/affix/affix.module.mjs +5 -5
- package/esm2020/lib/modules/affix/affix.service.mjs +3 -3
- package/esm2020/lib/modules/affix/affixer.mjs +266 -260
- package/esm2020/lib/modules/affix/dom-utils.mjs +7 -7
- package/esm2020/lib/modules/dock/dock-dom-adapter.service.mjs +51 -47
- package/esm2020/lib/modules/dock/dock-item.mjs +10 -5
- package/esm2020/lib/modules/dock/dock.component.mjs +58 -34
- package/esm2020/lib/modules/dock/dock.module.mjs +5 -5
- package/esm2020/lib/modules/dock/dock.service.mjs +43 -39
- package/esm2020/lib/modules/dynamic-component/dynamic-component.module.mjs +4 -4
- package/esm2020/lib/modules/dynamic-component/dynamic-component.service.mjs +40 -25
- package/esm2020/lib/modules/format/app-format.mjs +3 -3
- package/esm2020/lib/modules/id/id.directive.mjs +3 -3
- package/esm2020/lib/modules/id/id.module.mjs +4 -4
- package/esm2020/lib/modules/id/id.service.mjs +3 -3
- package/esm2020/lib/modules/log/log.module.mjs +4 -4
- package/esm2020/lib/modules/log/log.service.mjs +41 -41
- package/esm2020/lib/modules/media-query/media-query.module.mjs +4 -4
- package/esm2020/lib/modules/media-query/media-query.service.mjs +53 -50
- package/esm2020/lib/modules/mutation/mutation-observer-service.mjs +6 -4
- package/esm2020/lib/modules/numeric/numeric.module.mjs +5 -5
- package/esm2020/lib/modules/numeric/numeric.pipe.mjs +29 -22
- package/esm2020/lib/modules/numeric/numeric.service.mjs +87 -102
- package/esm2020/lib/modules/overlay/overlay-adapter.service.mjs +26 -20
- package/esm2020/lib/modules/overlay/overlay-instance.mjs +18 -9
- package/esm2020/lib/modules/overlay/overlay.component.mjs +82 -58
- package/esm2020/lib/modules/overlay/overlay.module.mjs +5 -5
- package/esm2020/lib/modules/overlay/overlay.service.mjs +58 -52
- package/esm2020/lib/modules/percent-pipe/percent-pipe.module.mjs +5 -5
- package/esm2020/lib/modules/percent-pipe/percent.pipe.mjs +35 -24
- package/esm2020/lib/modules/resize-observer/resize-observer-media-query.service.mjs +41 -49
- package/esm2020/lib/modules/resize-observer/resize-observer.service.mjs +3 -3
- package/esm2020/lib/modules/scrollable-host/scrollable-host.service.mjs +69 -70
- package/esm2020/lib/modules/shared/sky-core-resources.module.mjs +4 -4
- package/esm2020/lib/modules/title/title.service.mjs +11 -7
- package/esm2020/lib/modules/trim/trim.directive.mjs +13 -14
- package/esm2020/lib/modules/trim/trim.module.mjs +4 -4
- package/esm2020/lib/modules/ui-config/ui-config.service.mjs +3 -3
- package/esm2020/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +1 -1
- package/esm2020/lib/modules/viewkeeper/viewkeeper-host-options.mjs +3 -3
- package/esm2020/lib/modules/viewkeeper/viewkeeper.directive.mjs +78 -63
- package/esm2020/lib/modules/viewkeeper/viewkeeper.mjs +166 -156
- package/esm2020/lib/modules/viewkeeper/viewkeeper.module.mjs +4 -4
- package/esm2020/lib/modules/viewkeeper/viewkeeper.service.mjs +10 -6
- package/esm2020/lib/modules/window/window-ref.mjs +3 -3
- package/esm2020/testing/core-testing.module.mjs +8 -5
- package/esm2020/testing/mock-media-query.service.mjs +7 -4
- package/esm2020/testing/mock-ui-config.service.mjs +7 -4
- package/esm2020/testing/overlay/overlay-harness-filters.mjs +1 -1
- package/esm2020/testing/overlay/overlay-harness.mjs +2 -1
- package/esm2020/testing/shared/component-harness.mjs +4 -1
- package/esm2020/testing/shared/harness-filters.mjs +1 -1
- package/fesm2015/skyux-core-testing.mjs +23 -10
- package/fesm2015/skyux-core-testing.mjs.map +1 -1
- package/fesm2015/skyux-core.mjs +1416 -1291
- package/fesm2015/skyux-core.mjs.map +1 -1
- package/fesm2020/skyux-core-testing.mjs +23 -10
- package/fesm2020/skyux-core-testing.mjs.map +1 -1
- package/fesm2020/skyux-core.mjs +1418 -1290
- package/fesm2020/skyux-core.mjs.map +1 -1
- package/lib/modules/adapter-service/adapter.service.d.ts +3 -5
- package/lib/modules/affix/affix-offset.d.ts +1 -1
- package/lib/modules/affix/affix.directive.d.ts +13 -14
- package/lib/modules/affix/affixer.d.ts +2 -34
- package/lib/modules/affix/dom-utils.d.ts +3 -3
- package/lib/modules/dock/dock-dom-adapter.service.d.ts +2 -9
- package/lib/modules/dock/dock-item.d.ts +1 -1
- package/lib/modules/dock/dock.component.d.ts +3 -11
- package/lib/modules/dock/dock.service.d.ts +2 -5
- package/lib/modules/dynamic-component/dynamic-component.service.d.ts +2 -7
- package/lib/modules/id/id.directive.d.ts +1 -1
- package/lib/modules/log/log.service.d.ts +2 -6
- package/lib/modules/media-query/media-query.service.d.ts +1 -8
- package/lib/modules/numeric/numeric.pipe.d.ts +3 -9
- package/lib/modules/numeric/numeric.service.d.ts +3 -36
- package/lib/modules/overlay/overlay-adapter.service.d.ts +1 -3
- package/lib/modules/overlay/overlay-instance.d.ts +1 -2
- package/lib/modules/overlay/overlay.component.d.ts +2 -15
- package/lib/modules/overlay/overlay.service.d.ts +1 -7
- package/lib/modules/percent-pipe/percent.pipe.d.ts +3 -10
- package/lib/modules/resize-observer/resize-observer-media-query.service.d.ts +2 -7
- package/lib/modules/scrollable-host/scrollable-host.service.d.ts +2 -11
- package/lib/modules/title/title.service.d.ts +2 -2
- package/lib/modules/trim/trim.directive.d.ts +1 -3
- package/lib/modules/viewkeeper/viewkeeper-boundary-info.d.ts +1 -1
- package/lib/modules/viewkeeper/viewkeeper.d.ts +2 -24
- package/lib/modules/viewkeeper/viewkeeper.directive.d.ts +5 -17
- package/lib/modules/viewkeeper/viewkeeper.service.d.ts +1 -1
- package/package.json +10 -10
- package/testing/core-testing.module.d.ts +3 -0
- package/testing/{skyux-core-testing.d.ts → index.d.ts} +0 -0
- package/testing/mock-media-query.service.d.ts +3 -0
- package/testing/mock-ui-config.service.d.ts +3 -0
- package/testing/overlay/overlay-harness-filters.d.ts +1 -0
- package/testing/overlay/overlay-harness.d.ts +1 -0
- package/testing/shared/component-harness.d.ts +3 -0
- package/testing/shared/harness-filters.d.ts +1 -0
- package/skyux-core.d.ts +0 -5
- package/testing/package.json +0 -10
@@ -1,3 +1,5 @@
|
|
1
|
+
var _SkyDockService_instances, _SkyDockService_dynamicComponentSvc, _SkyDockService_options, _SkyDockService_createDock, _SkyDockService_destroyDock;
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
1
3
|
import { Injectable } from '@angular/core';
|
2
4
|
import { SkyDynamicComponentLocation } from '../dynamic-component/dynamic-component-location';
|
3
5
|
import { SkyDynamicComponentService } from '../dynamic-component/dynamic-component.service';
|
@@ -11,8 +13,11 @@ import * as i1 from "../dynamic-component/dynamic-component.service";
|
|
11
13
|
* This service docks components to specific areas on the page.
|
12
14
|
*/
|
13
15
|
export class SkyDockService {
|
14
|
-
constructor(
|
15
|
-
this
|
16
|
+
constructor(dynamicComponentSvc) {
|
17
|
+
_SkyDockService_instances.add(this);
|
18
|
+
_SkyDockService_dynamicComponentSvc.set(this, void 0);
|
19
|
+
_SkyDockService_options.set(this, void 0);
|
20
|
+
__classPrivateFieldSet(this, _SkyDockService_dynamicComponentSvc, dynamicComponentSvc, "f");
|
16
21
|
}
|
17
22
|
/**
|
18
23
|
* Returns all docked items.
|
@@ -26,16 +31,15 @@ export class SkyDockService {
|
|
26
31
|
* @param config Options that affect the docking action.
|
27
32
|
*/
|
28
33
|
insertComponent(component, config) {
|
29
|
-
|
30
|
-
this.
|
31
|
-
|
32
|
-
const itemRef = SkyDockService.dockRef.instance.insertComponent(component, config);
|
34
|
+
const dockRef = (SkyDockService.dockRef =
|
35
|
+
SkyDockService.dockRef || __classPrivateFieldGet(this, _SkyDockService_instances, "m", _SkyDockService_createDock).call(this));
|
36
|
+
const itemRef = dockRef.instance.insertComponent(component, config);
|
33
37
|
const item = new SkyDockItem(itemRef.componentRef.instance, itemRef.stackOrder);
|
34
38
|
item.destroyed.subscribe(() => {
|
35
|
-
|
39
|
+
dockRef.instance.removeItem(itemRef);
|
36
40
|
SkyDockService._items.splice(SkyDockService._items.indexOf(item), 1);
|
37
41
|
if (SkyDockService._items.length === 0) {
|
38
|
-
this.
|
42
|
+
__classPrivateFieldGet(this, _SkyDockService_instances, "m", _SkyDockService_destroyDock).call(this);
|
39
43
|
}
|
40
44
|
});
|
41
45
|
SkyDockService._items.push(item);
|
@@ -50,40 +54,40 @@ export class SkyDockService {
|
|
50
54
|
* @param options The options for positioning and styling
|
51
55
|
*/
|
52
56
|
setDockOptions(options) {
|
53
|
-
this
|
57
|
+
__classPrivateFieldSet(this, _SkyDockService_options, options, "f");
|
54
58
|
}
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
dockOptions = {
|
71
|
-
location: dynamicLocation,
|
72
|
-
referenceEl: this.options.referenceEl,
|
73
|
-
};
|
59
|
+
}
|
60
|
+
_SkyDockService_dynamicComponentSvc = new WeakMap(), _SkyDockService_options = new WeakMap(), _SkyDockService_instances = new WeakSet(), _SkyDockService_createDock = function _SkyDockService_createDock() {
|
61
|
+
let dockOptions;
|
62
|
+
if (__classPrivateFieldGet(this, _SkyDockService_options, "f")) {
|
63
|
+
let dynamicLocation;
|
64
|
+
switch (__classPrivateFieldGet(this, _SkyDockService_options, "f").location) {
|
65
|
+
case SkyDockLocation.BeforeElement:
|
66
|
+
dynamicLocation = SkyDynamicComponentLocation.BeforeElement;
|
67
|
+
break;
|
68
|
+
case SkyDockLocation.ElementBottom:
|
69
|
+
dynamicLocation = SkyDynamicComponentLocation.ElementBottom;
|
70
|
+
break;
|
71
|
+
default:
|
72
|
+
dynamicLocation = SkyDynamicComponentLocation.BodyTop;
|
73
|
+
break;
|
74
74
|
}
|
75
|
-
|
76
|
-
|
75
|
+
dockOptions = {
|
76
|
+
location: dynamicLocation,
|
77
|
+
referenceEl: __classPrivateFieldGet(this, _SkyDockService_options, "f").referenceEl,
|
78
|
+
};
|
77
79
|
}
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
80
|
+
const dockRef = __classPrivateFieldGet(this, _SkyDockService_dynamicComponentSvc, "f").createComponent(SkyDockComponent, dockOptions);
|
81
|
+
dockRef.instance.setOptions(__classPrivateFieldGet(this, _SkyDockService_options, "f"));
|
82
|
+
return dockRef;
|
83
|
+
}, _SkyDockService_destroyDock = function _SkyDockService_destroyDock() {
|
84
|
+
__classPrivateFieldGet(this, _SkyDockService_dynamicComponentSvc, "f").removeComponent(SkyDockService.dockRef);
|
85
|
+
SkyDockService.dockRef = undefined;
|
86
|
+
};
|
83
87
|
SkyDockService._items = [];
|
84
|
-
SkyDockService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
85
|
-
SkyDockService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
88
|
+
SkyDockService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDockService, deps: [{ token: i1.SkyDynamicComponentService }], target: i0.ɵɵFactoryTarget.Injectable });
|
89
|
+
SkyDockService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDockService, providedIn: 'any' });
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDockService, decorators: [{
|
87
91
|
type: Injectable,
|
88
92
|
args: [{
|
89
93
|
// Must be 'any' so that the dock component is created in the context of its module's injector.
|
@@ -92,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
92
96
|
providedIn: 'any',
|
93
97
|
}]
|
94
98
|
}], ctorParameters: function () { return [{ type: i1.SkyDynamicComponentService }]; } });
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2RvY2svZG9jay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFnQixVQUFVLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFFL0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFFOUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFHNUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQUV6RDs7R0FFRztBQU9ILE1BQU0sT0FBTyxjQUFjO0lBZXpCLFlBQVksbUJBQStDOztRQUozRCxzREFBaUQ7UUFFakQsMENBQXFDO1FBR25DLHVCQUFBLElBQUksdUNBQXdCLG1CQUFtQixNQUFBLENBQUM7SUFDbEQsQ0FBQztJQWJEOztPQUVHO0lBQ0gsSUFBVyxLQUFLO1FBQ2QsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFVRDs7OztPQUlHO0lBQ0ksZUFBZSxDQUNwQixTQUFrQixFQUNsQixNQUFxQztRQUVyQyxNQUFNLE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPO1lBQ3JDLGNBQWMsQ0FBQyxPQUFPLElBQUksdUJBQUEsSUFBSSw2REFBWSxNQUFoQixJQUFJLENBQWMsQ0FBQyxDQUFDO1FBRWhELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRSxNQUFNLElBQUksR0FBRyxJQUFJLFdBQVcsQ0FDMUIsT0FBTyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQzdCLE9BQU8sQ0FBQyxVQUFVLENBQ25CLENBQUM7UUFFRixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDckUsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0JBQ3RDLHVCQUFBLElBQUksOERBQWEsTUFBakIsSUFBSSxDQUFlLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFN0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksY0FBYyxDQUFDLE9BQXVCO1FBQzNDLHVCQUFBLElBQUksMkJBQVksT0FBTyxNQUFBLENBQUM7SUFDMUIsQ0FBQzs7O0lBR0MsSUFBSSxXQUFtRCxDQUFDO0lBRXhELElBQUksdUJBQUEsSUFBSSwrQkFBUyxFQUFFO1FBQ2pCLElBQUksZUFBNEMsQ0FBQztRQUNqRCxRQUFRLHVCQUFBLElBQUksK0JBQVMsQ0FBQyxRQUFRLEVBQUU7WUFDOUIsS0FBSyxlQUFlLENBQUMsYUFBYTtnQkFDaEMsZUFBZSxHQUFHLDJCQUEyQixDQUFDLGFBQWEsQ0FBQztnQkFDNUQsTUFBTTtZQUNSLEtBQUssZUFBZSxDQUFDLGFBQWE7Z0JBQ2hDLGVBQWUsR0FBRywyQkFBMkIsQ0FBQyxhQUFhLENBQUM7Z0JBQzVELE1BQU07WUFDUjtnQkFDRSxlQUFlLEdBQUcsMkJBQTJCLENBQUMsT0FBTyxDQUFDO2dCQUN0RCxNQUFNO1NBQ1Q7UUFFRCxXQUFXLEdBQUc7WUFDWixRQUFRLEVBQUUsZUFBZTtZQUN6QixXQUFXLEVBQUUsdUJBQUEsSUFBSSwrQkFBUyxDQUFDLFdBQVc7U0FDdkMsQ0FBQztLQUNIO0lBRUQsTUFBTSxPQUFPLEdBQUcsdUJBQUEsSUFBSSwyQ0FBcUIsQ0FBQyxlQUFlLENBQ3ZELGdCQUFnQixFQUNoQixXQUFXLENBQ1osQ0FBQztJQUVGLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLHVCQUFBLElBQUksK0JBQVMsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7SUFHQyx1QkFBQSxJQUFJLDJDQUFxQixDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEUsY0FBYyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFDckMsQ0FBQztBQWhHYyxxQkFBTSxHQUF1QixFQUFHLENBQUE7MkdBRnBDLGNBQWM7K0dBQWQsY0FBYyxjQUZiLEtBQUs7MkZBRU4sY0FBYztrQkFOMUIsVUFBVTttQkFBQztvQkFDViwrRkFBK0Y7b0JBQy9GLDhGQUE4RjtvQkFDOUYsMEZBQTBGO29CQUMxRixVQUFVLEVBQUUsS0FBSztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudE9wdGlvbnMgfSBmcm9tICcuLi9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcbmltcG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQuc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY2tJbnNlcnRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2RvY2staW5zZXJ0LWNvbXBvbmVudC1jb25maWcnO1xuaW1wb3J0IHsgU2t5RG9ja0l0ZW0gfSBmcm9tICcuL2RvY2staXRlbSc7XG5pbXBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2RvY2stbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RG9ja09wdGlvbnMgfSBmcm9tICcuL2RvY2stb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lEb2NrQ29tcG9uZW50IH0gZnJvbSAnLi9kb2NrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBzb3J0QnlTdGFja09yZGVyIH0gZnJvbSAnLi9zb3J0LWJ5LXN0YWNrLW9yZGVyJztcblxuLyoqXG4gKiBUaGlzIHNlcnZpY2UgZG9ja3MgY29tcG9uZW50cyB0byBzcGVjaWZpYyBhcmVhcyBvbiB0aGUgcGFnZS5cbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGRvY2sgY29tcG9uZW50IGlzIGNyZWF0ZWQgaW4gdGhlIGNvbnRleHQgb2YgaXRzIG1vZHVsZSdzIGluamVjdG9yLlxuICAvLyBJZiBzZXQgdG8gJ3Jvb3QnLCB0aGUgY29tcG9uZW50J3MgZGVwZW5kZW5jeSBpbmplY3Rpb25zIHdvdWxkIG9ubHkgYmUgZGVyaXZlZCBmcm9tIHRoZSByb290XG4gIC8vIGluamVjdG9yIGFuZCBtYXkgbG9vc2UgY29udGV4dCBpZiB0aGUgZG9jayB3YXMgb3BlbmVkIGZyb20gd2l0aGluIGEgbGF6eS1sb2FkZWQgbW9kdWxlLlxuICBwcm92aWRlZEluOiAnYW55Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RG9ja1NlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBkb2NrUmVmOiBDb21wb25lbnRSZWY8U2t5RG9ja0NvbXBvbmVudD4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgc3RhdGljIF9pdGVtczogU2t5RG9ja0l0ZW08YW55PltdID0gW107XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIGRvY2tlZCBpdGVtcy5cbiAgICovXG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogU2t5RG9ja0l0ZW08YW55PltdIHtcbiAgICByZXR1cm4gU2t5RG9ja1NlcnZpY2UuX2l0ZW1zO1xuICB9XG5cbiAgI2R5bmFtaWNDb21wb25lbnRTdmM6IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuXG4gICNvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihkeW5hbWljQ29tcG9uZW50U3ZjOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSkge1xuICAgIHRoaXMuI2R5bmFtaWNDb21wb25lbnRTdmMgPSBkeW5hbWljQ29tcG9uZW50U3ZjO1xuICB9XG5cbiAgLyoqXG4gICAqIERvY2tzIGEgY29tcG9uZW50IHRvIHRoZSBib3R0b20gb2YgdGhlIHBhZ2UuXG4gICAqIEBwYXJhbSBjb21wb25lbnQgVGhlIGNvbXBvbmVudCB0byBkb2NrLlxuICAgKiBAcGFyYW0gY29uZmlnIE9wdGlvbnMgdGhhdCBhZmZlY3QgdGhlIGRvY2tpbmcgYWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGluc2VydENvbXBvbmVudDxUPihcbiAgICBjb21wb25lbnQ6IFR5cGU8VD4sXG4gICAgY29uZmlnPzogU2t5RG9ja0luc2VydENvbXBvbmVudENvbmZpZ1xuICApOiBTa3lEb2NrSXRlbTxUPiB7XG4gICAgY29uc3QgZG9ja1JlZiA9IChTa3lEb2NrU2VydmljZS5kb2NrUmVmID1cbiAgICAgIFNreURvY2tTZXJ2aWNlLmRvY2tSZWYgfHwgdGhpcy4jY3JlYXRlRG9jaygpKTtcblxuICAgIGNvbnN0IGl0ZW1SZWYgPSBkb2NrUmVmLmluc3RhbmNlLmluc2VydENvbXBvbmVudChjb21wb25lbnQsIGNvbmZpZyk7XG4gICAgY29uc3QgaXRlbSA9IG5ldyBTa3lEb2NrSXRlbShcbiAgICAgIGl0ZW1SZWYuY29tcG9uZW50UmVmLmluc3RhbmNlLFxuICAgICAgaXRlbVJlZi5zdGFja09yZGVyXG4gICAgKTtcblxuICAgIGl0ZW0uZGVzdHJveWVkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBkb2NrUmVmLmluc3RhbmNlLnJlbW92ZUl0ZW0oaXRlbVJlZik7XG4gICAgICBTa3lEb2NrU2VydmljZS5faXRlbXMuc3BsaWNlKFNreURvY2tTZXJ2aWNlLl9pdGVtcy5pbmRleE9mKGl0ZW0pLCAxKTtcbiAgICAgIGlmIChTa3lEb2NrU2VydmljZS5faXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuI2Rlc3Ryb3lEb2NrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBTa3lEb2NrU2VydmljZS5faXRlbXMucHVzaChpdGVtKTtcbiAgICBTa3lEb2NrU2VydmljZS5faXRlbXMuc29ydChzb3J0QnlTdGFja09yZGVyKTtcblxuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgb3B0aW9ucyBmb3IgdGhlIHBvc2l0aW9uaW5nIGFuZCBzdHlsaW5nIG9mIHRoZSBkb2NrIGNvbXBvbmVudC4gU2luY2UgdGhlIGRvY2sgc2VydmljZSBpcyBhXG4gICAqIHNpbmdsZXRvbiBpbnN0YW5jZSwgdGhlc2Ugb3B0aW9ucyB3aWxsIGJlIGFwcGxpZWQgdG8gYWxsIGNvbXBvbmVudHMgaW5zZXJ0ZWQgaW50byB0aGUgZG9jay4gSW5cbiAgICogb3JkZXIgdG8gY3JlYXRlIGEgc2VwZXJhdGUgZG9jayB3aXRoIGRpZmZlcmVudCBvcHRpb25zLCBjb25zdW1lcnMgc2hvdWxkIHByb3ZpZGUgYSBkaWZmZXJlbnRcbiAgICogaW5zdGFuY2Ugb2YgdGhlIGRvY2sgc2VydmljZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHBvc2l0aW9uaW5nIGFuZCBzdHlsaW5nXG4gICAqL1xuICBwdWJsaWMgc2V0RG9ja09wdGlvbnMob3B0aW9uczogU2t5RG9ja09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLiNvcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gICNjcmVhdGVEb2NrKCk6IENvbXBvbmVudFJlZjxTa3lEb2NrQ29tcG9uZW50PiB7XG4gICAgbGV0IGRvY2tPcHRpb25zOiBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9ucyB8IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLiNvcHRpb25zKSB7XG4gICAgICBsZXQgZHluYW1pY0xvY2F0aW9uOiBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb247XG4gICAgICBzd2l0Y2ggKHRoaXMuI29wdGlvbnMubG9jYXRpb24pIHtcbiAgICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uQmVmb3JlRWxlbWVudDpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQmVmb3JlRWxlbWVudDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uRWxlbWVudEJvdHRvbTpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uRWxlbWVudEJvdHRvbTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQm9keVRvcDtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZG9ja09wdGlvbnMgPSB7XG4gICAgICAgIGxvY2F0aW9uOiBkeW5hbWljTG9jYXRpb24sXG4gICAgICAgIHJlZmVyZW5jZUVsOiB0aGlzLiNvcHRpb25zLnJlZmVyZW5jZUVsLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBkb2NrUmVmID0gdGhpcy4jZHluYW1pY0NvbXBvbmVudFN2Yy5jcmVhdGVDb21wb25lbnQoXG4gICAgICBTa3lEb2NrQ29tcG9uZW50LFxuICAgICAgZG9ja09wdGlvbnNcbiAgICApO1xuXG4gICAgZG9ja1JlZi5pbnN0YW5jZS5zZXRPcHRpb25zKHRoaXMuI29wdGlvbnMpO1xuXG4gICAgcmV0dXJuIGRvY2tSZWY7XG4gIH1cblxuICAjZGVzdHJveURvY2soKTogdm9pZCB7XG4gICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFN2Yy5yZW1vdmVDb21wb25lbnQoU2t5RG9ja1NlcnZpY2UuZG9ja1JlZik7XG4gICAgU2t5RG9ja1NlcnZpY2UuZG9ja1JlZiA9IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|
@@ -7,10 +7,10 @@ import * as i0 from "@angular/core";
|
|
7
7
|
*/
|
8
8
|
export class SkyDynamicComponentModule {
|
9
9
|
}
|
10
|
-
SkyDynamicComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
11
|
-
SkyDynamicComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
|
12
|
-
SkyDynamicComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
10
|
+
SkyDynamicComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
11
|
+
SkyDynamicComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentModule });
|
12
|
+
SkyDynamicComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentModule });
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentModule, decorators: [{
|
14
14
|
type: NgModule,
|
15
15
|
args: [{}]
|
16
16
|
}] });
|
@@ -1,3 +1,5 @@
|
|
1
|
+
var _SkyDynamicComponentService_instances, _SkyDynamicComponentService_applicationRef, _SkyDynamicComponentService_componentFactoryResolver, _SkyDynamicComponentService_injector, _SkyDynamicComponentService_renderer, _SkyDynamicComponentService_windowRef, _SkyDynamicComponentService_getRootNode;
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
1
3
|
import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector, RendererFactory2, } from '@angular/core';
|
2
4
|
import { SkyAppWindowRef } from '../window/window-ref';
|
3
5
|
import { SkyDynamicComponentLocation } from './dynamic-component-location';
|
@@ -7,16 +9,23 @@ import * as i1 from "../window/window-ref";
|
|
7
9
|
* Angular service for creating and rendering a dynamic component.
|
8
10
|
*/
|
9
11
|
export class SkyDynamicComponentService {
|
12
|
+
// TODO: Replace deprecated `ComponentFactoryResolver`.
|
10
13
|
constructor(componentFactoryResolver, applicationRef, injector, windowRef, rendererFactory) {
|
11
|
-
this
|
12
|
-
this
|
13
|
-
this
|
14
|
-
this
|
14
|
+
_SkyDynamicComponentService_instances.add(this);
|
15
|
+
_SkyDynamicComponentService_applicationRef.set(this, void 0);
|
16
|
+
_SkyDynamicComponentService_componentFactoryResolver.set(this, void 0);
|
17
|
+
_SkyDynamicComponentService_injector.set(this, void 0);
|
18
|
+
_SkyDynamicComponentService_renderer.set(this, void 0);
|
19
|
+
_SkyDynamicComponentService_windowRef.set(this, void 0);
|
20
|
+
__classPrivateFieldSet(this, _SkyDynamicComponentService_componentFactoryResolver, componentFactoryResolver, "f");
|
21
|
+
__classPrivateFieldSet(this, _SkyDynamicComponentService_applicationRef, applicationRef, "f");
|
22
|
+
__classPrivateFieldSet(this, _SkyDynamicComponentService_injector, injector, "f");
|
23
|
+
__classPrivateFieldSet(this, _SkyDynamicComponentService_windowRef, windowRef, "f");
|
15
24
|
// Based on suggestions from https://github.com/angular/angular/issues/17824
|
16
25
|
// for accessing an instance of Renderer2 in a service since Renderer2 can't
|
17
26
|
// be injected into a service. Passing undefined for both parameters results
|
18
27
|
// in the default renderer which is what we want here.
|
19
|
-
this
|
28
|
+
__classPrivateFieldSet(this, _SkyDynamicComponentService_renderer, rendererFactory.createRenderer(undefined, null), "f");
|
20
29
|
}
|
21
30
|
/**
|
22
31
|
* Creates an instance of the specified component and adds it to the specified location
|
@@ -29,29 +38,35 @@ export class SkyDynamicComponentService {
|
|
29
38
|
};
|
30
39
|
const injector = Injector.create({
|
31
40
|
providers: options.providers || [],
|
32
|
-
parent: this
|
41
|
+
parent: __classPrivateFieldGet(this, _SkyDynamicComponentService_injector, "f"),
|
33
42
|
});
|
34
|
-
const componentRef = this
|
43
|
+
const componentRef = __classPrivateFieldGet(this, _SkyDynamicComponentService_componentFactoryResolver, "f")
|
35
44
|
.resolveComponentFactory(componentType)
|
36
45
|
.create(injector);
|
37
|
-
this.
|
38
|
-
const el = this.
|
39
|
-
const bodyEl = this.
|
46
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_applicationRef, "f").attachView(componentRef.hostView);
|
47
|
+
const el = __classPrivateFieldGet(this, _SkyDynamicComponentService_instances, "m", _SkyDynamicComponentService_getRootNode).call(this, componentRef);
|
48
|
+
const bodyEl = __classPrivateFieldGet(this, _SkyDynamicComponentService_windowRef, "f").nativeWindow.document.body;
|
40
49
|
switch (options.location) {
|
41
50
|
case SkyDynamicComponentLocation.BeforeElement:
|
42
|
-
|
51
|
+
if (!options.referenceEl) {
|
52
|
+
throw new Error('[SkyDynamicComponentService] Could not create a component at location `SkyDynamicComponentLocation.BeforeElement` because a reference element was not provided.');
|
53
|
+
}
|
54
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_renderer, "f").insertBefore(options.referenceEl.parentElement, el, options.referenceEl);
|
43
55
|
break;
|
44
56
|
case SkyDynamicComponentLocation.ElementTop:
|
45
|
-
|
57
|
+
if (!options.referenceEl) {
|
58
|
+
throw new Error('[SkyDynamicComponentService] Could not create a component at location `SkyDynamicComponentLocation.ElementTop` because a reference element was not provided.');
|
59
|
+
}
|
60
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_renderer, "f").insertBefore(options.referenceEl, el, options.referenceEl.firstChild);
|
46
61
|
break;
|
47
62
|
case SkyDynamicComponentLocation.ElementBottom:
|
48
|
-
this.
|
63
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_renderer, "f").appendChild(options.referenceEl, el);
|
49
64
|
break;
|
50
65
|
case SkyDynamicComponentLocation.BodyTop:
|
51
|
-
this.
|
66
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_renderer, "f").insertBefore(bodyEl, el, bodyEl.firstChild);
|
52
67
|
break;
|
53
68
|
default:
|
54
|
-
this.
|
69
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_renderer, "f").appendChild(bodyEl, el);
|
55
70
|
break;
|
56
71
|
}
|
57
72
|
return componentRef;
|
@@ -64,18 +79,18 @@ export class SkyDynamicComponentService {
|
|
64
79
|
if (!componentRef) {
|
65
80
|
return;
|
66
81
|
}
|
67
|
-
this.
|
82
|
+
__classPrivateFieldGet(this, _SkyDynamicComponentService_applicationRef, "f").detachView(componentRef.hostView);
|
68
83
|
componentRef.destroy();
|
69
84
|
}
|
70
|
-
getRootNode(componentRef) {
|
71
|
-
// Technique for retrieving the component's root node taken from here:
|
72
|
-
// https://malcoded.com/posts/angular-dynamic-components
|
73
|
-
return componentRef.hostView.rootNodes[0];
|
74
|
-
}
|
75
85
|
}
|
76
|
-
|
77
|
-
|
78
|
-
|
86
|
+
_SkyDynamicComponentService_applicationRef = new WeakMap(), _SkyDynamicComponentService_componentFactoryResolver = new WeakMap(), _SkyDynamicComponentService_injector = new WeakMap(), _SkyDynamicComponentService_renderer = new WeakMap(), _SkyDynamicComponentService_windowRef = new WeakMap(), _SkyDynamicComponentService_instances = new WeakSet(), _SkyDynamicComponentService_getRootNode = function _SkyDynamicComponentService_getRootNode(componentRef) {
|
87
|
+
// Technique for retrieving the component's root node taken from here:
|
88
|
+
// https://malcoded.com/posts/angular-dynamic-components
|
89
|
+
return componentRef.hostView.rootNodes[0];
|
90
|
+
};
|
91
|
+
SkyDynamicComponentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }, { token: i1.SkyAppWindowRef }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
92
|
+
SkyDynamicComponentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentService, providedIn: 'any' });
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDynamicComponentService, decorators: [{
|
79
94
|
type: Injectable,
|
80
95
|
args: [{
|
81
96
|
// Must be 'any' so that the component is created in the context of its module's injector.
|
@@ -84,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
84
99
|
providedIn: 'any',
|
85
100
|
}]
|
86
101
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i0.Injector }, { type: i1.SkyAppWindowRef }, { type: i0.RendererFactory2 }]; } });
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLGNBQWMsRUFDZCx3QkFBd0IsRUFHeEIsVUFBVSxFQUNWLFFBQVEsRUFFUixnQkFBZ0IsR0FFakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFHM0U7O0dBRUc7QUFPSCxNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLHVEQUF1RDtJQUN2RCxZQUNFLHdCQUFrRCxFQUNsRCxjQUE4QixFQUM5QixRQUFrQixFQUNsQixTQUEwQixFQUMxQixlQUFpQzs7UUFoQm5DLDZEQUFnQztRQUVoQyx1RUFBb0Q7UUFFcEQsdURBQW9CO1FBRXBCLHVEQUFxQjtRQUVyQix3REFBNEI7UUFVMUIsdUJBQUEsSUFBSSx3REFBNkIsd0JBQXdCLE1BQUEsQ0FBQztRQUMxRCx1QkFBQSxJQUFJLDhDQUFtQixjQUFjLE1BQUEsQ0FBQztRQUN0Qyx1QkFBQSxJQUFJLHdDQUFhLFFBQVEsTUFBQSxDQUFDO1FBQzFCLHVCQUFBLElBQUkseUNBQWMsU0FBUyxNQUFBLENBQUM7UUFFNUIsNEVBQTRFO1FBQzVFLDRFQUE0RTtRQUM1RSw2RUFBNkU7UUFDN0Usc0RBQXNEO1FBQ3RELHVCQUFBLElBQUksd0NBQWEsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQUEsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGVBQWUsQ0FDcEIsYUFBc0IsRUFDdEIsT0FBb0M7UUFFcEMsT0FBTyxHQUFHLE9BQU8sSUFBSTtZQUNuQixRQUFRLEVBQUUsMkJBQTJCLENBQUMsVUFBVTtTQUNqRCxDQUFDO1FBRUYsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ2xDLE1BQU0sRUFBRSx1QkFBQSxJQUFJLDRDQUFVO1NBQ3ZCLENBQUMsQ0FBQztRQUVILE1BQU0sWUFBWSxHQUFHLHVCQUFBLElBQUksNERBQTBCO2FBQ2hELHVCQUF1QixDQUFJLGFBQWEsQ0FBQzthQUN6QyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFcEIsdUJBQUEsSUFBSSxrREFBZ0IsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXZELE1BQU0sRUFBRSxHQUFHLHVCQUFBLElBQUksc0ZBQWEsTUFBakIsSUFBSSxFQUFjLFlBQVksQ0FBQyxDQUFDO1FBRTNDLE1BQU0sTUFBTSxHQUFHLHVCQUFBLElBQUksNkNBQVcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUUxRCxRQUFRLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsS0FBSywyQkFBMkIsQ0FBQyxhQUFhO2dCQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtvQkFDeEIsTUFBTSxJQUFJLEtBQUssQ0FDYixpS0FBaUssQ0FDbEssQ0FBQztpQkFDSDtnQkFFRCx1QkFBQSxJQUFJLDRDQUFVLENBQUMsWUFBWSxDQUN6QixPQUFPLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDakMsRUFBRSxFQUNGLE9BQU8sQ0FBQyxXQUFXLENBQ3BCLENBQUM7Z0JBQ0YsTUFBTTtZQUNSLEtBQUssMkJBQTJCLENBQUMsVUFBVTtnQkFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7b0JBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEpBQThKLENBQy9KLENBQUM7aUJBQ0g7Z0JBRUQsdUJBQUEsSUFBSSw0Q0FBVSxDQUFDLFlBQVksQ0FDekIsT0FBTyxDQUFDLFdBQVcsRUFDbkIsRUFBRSxFQUNGLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUMvQixDQUFDO2dCQUNGLE1BQU07WUFDUixLQUFLLDJCQUEyQixDQUFDLGFBQWE7Z0JBQzVDLHVCQUFBLElBQUksNENBQVUsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDcEQsTUFBTTtZQUNSLEtBQUssMkJBQTJCLENBQUMsT0FBTztnQkFDdEMsdUJBQUEsSUFBSSw0Q0FBVSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDM0QsTUFBTTtZQUNSO2dCQUNFLHVCQUFBLElBQUksNENBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNO1NBQ1Q7UUFFRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZUFBZSxDQUFJLFlBQXlDO1FBQ2pFLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsdUJBQUEsSUFBSSxrREFBZ0IsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZELFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDOzt1YkFFZSxZQUE2QjtJQUMzQyxzRUFBc0U7SUFDdEUsd0RBQXdEO0lBQ3hELE9BQVEsWUFBWSxDQUFDLFFBQStCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7dUhBckhVLDBCQUEwQjsySEFBMUIsMEJBQTBCLGNBRnpCLEtBQUs7MkZBRU4sMEJBQTBCO2tCQU50QyxVQUFVO21CQUFDO29CQUNWLDBGQUEwRjtvQkFDMUYsOEZBQThGO29CQUM5RiwwRkFBMEY7b0JBQzFGLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIENvbXBvbmVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBJbmplY3RhYmxlLFxuICBJbmplY3RvcixcbiAgUmVuZGVyZXIyLFxuICBSZW5kZXJlckZhY3RvcnkyLFxuICBUeXBlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmIH0gZnJvbSAnLi4vd2luZG93L3dpbmRvdy1yZWYnO1xuXG5pbXBvcnQgeyBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24gfSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50LWxvY2F0aW9uJztcbmltcG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRPcHRpb25zIH0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcblxuLyoqXG4gKiBBbmd1bGFyIHNlcnZpY2UgZm9yIGNyZWF0aW5nIGFuZCByZW5kZXJpbmcgYSBkeW5hbWljIGNvbXBvbmVudC5cbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGNvbXBvbmVudCBpcyBjcmVhdGVkIGluIHRoZSBjb250ZXh0IG9mIGl0cyBtb2R1bGUncyBpbmplY3Rvci5cbiAgLy8gSWYgc2V0IHRvICdyb290JywgdGhlIGNvbXBvbmVudCdzIGRlcGVuZGVuY3kgaW5qZWN0aW9ucyB3b3VsZCBvbmx5IGJlIGRlcml2ZWQgZnJvbSB0aGUgcm9vdFxuICAvLyBpbmplY3RvciBhbmQgbWF5IGxvb3NlIGNvbnRleHQgaWYgdGhlIGNvbXBvbmVudCBpcyBjcmVhdGVkIHdpdGhpbiBhIGxhenktbG9hZGVkIG1vZHVsZS5cbiAgcHJvdmlkZWRJbjogJ2FueScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlIHtcbiAgI2FwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZjtcblxuICAjY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI7XG5cbiAgI2luamVjdG9yOiBJbmplY3RvcjtcblxuICAjcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICAjd2luZG93UmVmOiBTa3lBcHBXaW5kb3dSZWY7XG5cbiAgLy8gVE9ETzogUmVwbGFjZSBkZXByZWNhdGVkIGBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJgLlxuICBjb25zdHJ1Y3RvcihcbiAgICBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBhcHBsaWNhdGlvblJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLiNjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgPSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI7XG4gICAgdGhpcy4jYXBwbGljYXRpb25SZWYgPSBhcHBsaWNhdGlvblJlZjtcbiAgICB0aGlzLiNpbmplY3RvciA9IGluamVjdG9yO1xuICAgIHRoaXMuI3dpbmRvd1JlZiA9IHdpbmRvd1JlZjtcblxuICAgIC8vIEJhc2VkIG9uIHN1Z2dlc3Rpb25zIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc4MjRcbiAgICAvLyBmb3IgYWNjZXNzaW5nIGFuIGluc3RhbmNlIG9mIFJlbmRlcmVyMiBpbiBhIHNlcnZpY2Ugc2luY2UgUmVuZGVyZXIyIGNhbid0XG4gICAgLy8gYmUgaW5qZWN0ZWQgaW50byBhIHNlcnZpY2UuICBQYXNzaW5nIHVuZGVmaW5lZCBmb3IgYm90aCBwYXJhbWV0ZXJzIHJlc3VsdHNcbiAgICAvLyBpbiB0aGUgZGVmYXVsdCByZW5kZXJlciB3aGljaCBpcyB3aGF0IHdlIHdhbnQgaGVyZS5cbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHNwZWNpZmllZCBjb21wb25lbnQgYW5kIGFkZHMgaXQgdG8gdGhlIHNwZWNpZmllZCBsb2NhdGlvblxuICAgKiBvbiB0aGUgcGFnZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgY3JlYXRpbmcgdGhlIGR5bmFtaWMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUNvbXBvbmVudDxUPihcbiAgICBjb21wb25lbnRUeXBlOiBUeXBlPFQ+LFxuICAgIG9wdGlvbnM/OiBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9uc1xuICApOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHtcbiAgICAgIGxvY2F0aW9uOiBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQm9keUJvdHRvbSxcbiAgICB9O1xuXG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBvcHRpb25zLnByb3ZpZGVycyB8fCBbXSxcbiAgICAgIHBhcmVudDogdGhpcy4jaW5qZWN0b3IsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLiNjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgICAgIC5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeTxUPihjb21wb25lbnRUeXBlKVxuICAgICAgLmNyZWF0ZShpbmplY3Rvcik7XG5cbiAgICB0aGlzLiNhcHBsaWNhdGlvblJlZi5hdHRhY2hWaWV3KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG5cbiAgICBjb25zdCBlbCA9IHRoaXMuI2dldFJvb3ROb2RlKGNvbXBvbmVudFJlZik7XG5cbiAgICBjb25zdCBib2R5RWwgPSB0aGlzLiN3aW5kb3dSZWYubmF0aXZlV2luZG93LmRvY3VtZW50LmJvZHk7XG5cbiAgICBzd2l0Y2ggKG9wdGlvbnMubG9jYXRpb24pIHtcbiAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJlZm9yZUVsZW1lbnQ6XG4gICAgICAgIGlmICghb3B0aW9ucy5yZWZlcmVuY2VFbCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICdbU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2VdIENvdWxkIG5vdCBjcmVhdGUgYSBjb21wb25lbnQgYXQgbG9jYXRpb24gYFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbi5CZWZvcmVFbGVtZW50YCBiZWNhdXNlIGEgcmVmZXJlbmNlIGVsZW1lbnQgd2FzIG5vdCBwcm92aWRlZC4nXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuI3JlbmRlcmVyLmluc2VydEJlZm9yZShcbiAgICAgICAgICBvcHRpb25zLnJlZmVyZW5jZUVsLnBhcmVudEVsZW1lbnQsXG4gICAgICAgICAgZWwsXG4gICAgICAgICAgb3B0aW9ucy5yZWZlcmVuY2VFbFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkVsZW1lbnRUb3A6XG4gICAgICAgIGlmICghb3B0aW9ucy5yZWZlcmVuY2VFbCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICdbU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2VdIENvdWxkIG5vdCBjcmVhdGUgYSBjb21wb25lbnQgYXQgbG9jYXRpb24gYFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbi5FbGVtZW50VG9wYCBiZWNhdXNlIGEgcmVmZXJlbmNlIGVsZW1lbnQgd2FzIG5vdCBwcm92aWRlZC4nXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuI3JlbmRlcmVyLmluc2VydEJlZm9yZShcbiAgICAgICAgICBvcHRpb25zLnJlZmVyZW5jZUVsLFxuICAgICAgICAgIGVsLFxuICAgICAgICAgIG9wdGlvbnMucmVmZXJlbmNlRWwuZmlyc3RDaGlsZFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkVsZW1lbnRCb3R0b206XG4gICAgICAgIHRoaXMuI3JlbmRlcmVyLmFwcGVuZENoaWxkKG9wdGlvbnMucmVmZXJlbmNlRWwsIGVsKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbi5Cb2R5VG9wOlxuICAgICAgICB0aGlzLiNyZW5kZXJlci5pbnNlcnRCZWZvcmUoYm9keUVsLCBlbCwgYm9keUVsLmZpcnN0Q2hpbGQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMuI3JlbmRlcmVyLmFwcGVuZENoaWxkKGJvZHlFbCwgZWwpO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBjb21wb25lbnQgcmVmIGZyb20gdGhlIHBhZ2VcbiAgICogQHBhcmFtIGNvbXBvbmVudFJlZiBDb21wb25lbnQgcmVmIGZvciB0aGUgY29tcG9uZW50IGJlaW5nIHJlbW92ZWRcbiAgICovXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VD4gfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAoIWNvbXBvbmVudFJlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI2FwcGxpY2F0aW9uUmVmLmRldGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICB9XG5cbiAgI2dldFJvb3ROb2RlPFQ+KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+KTogYW55IHtcbiAgICAvLyBUZWNobmlxdWUgZm9yIHJldHJpZXZpbmcgdGhlIGNvbXBvbmVudCdzIHJvb3Qgbm9kZSB0YWtlbiBmcm9tIGhlcmU6XG4gICAgLy8gaHR0cHM6Ly9tYWxjb2RlZC5jb20vcG9zdHMvYW5ndWxhci1keW5hbWljLWNvbXBvbmVudHNcbiAgICByZXR1cm4gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8VD4pLnJvb3ROb2Rlc1swXTtcbiAgfVxufVxuIl19
|
@@ -7,9 +7,9 @@ export class SkyAppFormat {
|
|
7
7
|
});
|
8
8
|
}
|
9
9
|
}
|
10
|
-
SkyAppFormat.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
11
|
-
SkyAppFormat.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
10
|
+
SkyAppFormat.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyAppFormat, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
11
|
+
SkyAppFormat.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyAppFormat, providedIn: 'root' });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyAppFormat, decorators: [{
|
13
13
|
type: Injectable,
|
14
14
|
args: [{
|
15
15
|
providedIn: 'root',
|
@@ -23,9 +23,9 @@ export class SkyIdDirective {
|
|
23
23
|
}
|
24
24
|
}
|
25
25
|
_SkyIdDirective__id = new WeakMap();
|
26
|
-
SkyIdDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
27
|
-
SkyIdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
26
|
+
SkyIdDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.SkyIdService }], target: i0.ɵɵFactoryTarget.Directive });
|
27
|
+
SkyIdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: SkyIdDirective, selector: "[skyId]", exportAs: ["skyId"], ngImport: i0 });
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdDirective, decorators: [{
|
29
29
|
type: Directive,
|
30
30
|
args: [{
|
31
31
|
selector: '[skyId]',
|
@@ -3,10 +3,10 @@ import { SkyIdDirective } from './id.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class SkyIdModule {
|
5
5
|
}
|
6
|
-
SkyIdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
7
|
-
SkyIdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
|
8
|
-
SkyIdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
6
|
+
SkyIdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
7
|
+
SkyIdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyIdModule, declarations: [SkyIdDirective], exports: [SkyIdDirective] });
|
8
|
+
SkyIdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdModule });
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdModule, decorators: [{
|
10
10
|
type: NgModule,
|
11
11
|
args: [{
|
12
12
|
declarations: [SkyIdDirective],
|
@@ -13,9 +13,9 @@ export class SkyIdService {
|
|
13
13
|
return `sky-id-gen__${new Date().getTime()}__${idIndex}`;
|
14
14
|
}
|
15
15
|
}
|
16
|
-
SkyIdService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
17
|
-
SkyIdService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
16
|
+
SkyIdService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
17
|
+
SkyIdService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdService, providedIn: 'root' });
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyIdService, decorators: [{
|
19
19
|
type: Injectable,
|
20
20
|
args: [{
|
21
21
|
providedIn: 'root',
|
@@ -6,10 +6,10 @@ import * as i0 from "@angular/core";
|
|
6
6
|
*/
|
7
7
|
export class SkyLogModule {
|
8
8
|
}
|
9
|
-
SkyLogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
10
|
-
SkyLogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
|
11
|
-
SkyLogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
9
|
+
SkyLogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
10
|
+
SkyLogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SkyLogModule });
|
11
|
+
SkyLogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogModule });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogModule, decorators: [{
|
13
13
|
type: NgModule,
|
14
14
|
args: [{}]
|
15
15
|
}] });
|
@@ -1,3 +1,5 @@
|
|
1
|
+
var _SkyLogService_instances, _SkyLogService_applicationLogLevel, _SkyLogService_formatter, _SkyLogService_convertStringToCode, _SkyLogService_canLog, _SkyLogService_logBasedOnLevel;
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
1
3
|
import { Inject, Injectable, Optional } from '@angular/core';
|
2
4
|
import { SkyAppFormat } from '../format/app-format';
|
3
5
|
import { SKY_LOG_LEVEL } from './types/log-level-token';
|
@@ -9,11 +11,11 @@ import * as i1 from "../format/app-format";
|
|
9
11
|
*/
|
10
12
|
export class SkyLogService {
|
11
13
|
constructor(formatter, applicationLogLevel) {
|
12
|
-
this
|
13
|
-
this
|
14
|
-
|
15
|
-
|
16
|
-
|
14
|
+
_SkyLogService_instances.add(this);
|
15
|
+
_SkyLogService_applicationLogLevel.set(this, void 0);
|
16
|
+
_SkyLogService_formatter.set(this, void 0);
|
17
|
+
__classPrivateFieldSet(this, _SkyLogService_formatter, formatter, "f");
|
18
|
+
__classPrivateFieldSet(this, _SkyLogService_applicationLogLevel, applicationLogLevel ?? 3 /* SkyLogLevel.Error */, "f");
|
17
19
|
}
|
18
20
|
/**
|
19
21
|
* Logs a deprecation warning for a class, property, function, etc. This will be logged as a console warning unless a different log level is given in the the `args` parameter.
|
@@ -22,18 +24,18 @@ export class SkyLogService {
|
|
22
24
|
* @returns
|
23
25
|
*/
|
24
26
|
async deprecated(name, args) {
|
25
|
-
const logLevel = args?.logLevel ?? 2 /* Warn */;
|
26
|
-
name = this.
|
27
|
-
if (this.
|
27
|
+
const logLevel = args?.logLevel ?? 2 /* SkyLogLevel.Warn */;
|
28
|
+
name = __classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_convertStringToCode).call(this, name);
|
29
|
+
if (__classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_canLog).call(this, logLevel)) {
|
28
30
|
const localizedStrings = [];
|
29
31
|
if (args?.deprecationMajorVersion) {
|
30
|
-
localizedStrings.push(this.
|
32
|
+
localizedStrings.push(__classPrivateFieldGet(this, _SkyLogService_formatter, "f").formatText('{0} is deprecated starting in SKY UX {1}.', name, args.deprecationMajorVersion.toLocaleString()));
|
31
33
|
}
|
32
34
|
else {
|
33
|
-
localizedStrings.push(this.
|
35
|
+
localizedStrings.push(__classPrivateFieldGet(this, _SkyLogService_formatter, "f").formatText('{0} is deprecated.', name));
|
34
36
|
}
|
35
37
|
if (args?.removalMajorVersion) {
|
36
|
-
localizedStrings.push(this.
|
38
|
+
localizedStrings.push(__classPrivateFieldGet(this, _SkyLogService_formatter, "f").formatText('We will remove it in version {0}.', args.removalMajorVersion.toLocaleString()));
|
37
39
|
}
|
38
40
|
else {
|
39
41
|
localizedStrings.push('We will remove it in a future major version.');
|
@@ -42,9 +44,9 @@ export class SkyLogService {
|
|
42
44
|
localizedStrings.push(args.replacementRecommendation);
|
43
45
|
}
|
44
46
|
if (args?.moreInfoUrl) {
|
45
|
-
localizedStrings.push(this.
|
47
|
+
localizedStrings.push(__classPrivateFieldGet(this, _SkyLogService_formatter, "f").formatText('For more information, see {0}.', args.moreInfoUrl));
|
46
48
|
}
|
47
|
-
this.
|
49
|
+
__classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_logBasedOnLevel).call(this, logLevel, localizedStrings.join(' '));
|
48
50
|
}
|
49
51
|
return Promise.resolve();
|
50
52
|
}
|
@@ -54,7 +56,7 @@ export class SkyLogService {
|
|
54
56
|
* @param params Optional parameters for the error message.
|
55
57
|
*/
|
56
58
|
error(message, params) {
|
57
|
-
if (this.
|
59
|
+
if (__classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_canLog).call(this, 3 /* SkyLogLevel.Error */)) {
|
58
60
|
if (params) {
|
59
61
|
console.error(message, ...params);
|
60
62
|
}
|
@@ -69,7 +71,7 @@ export class SkyLogService {
|
|
69
71
|
* @param params Optional parameters for the informational message.
|
70
72
|
*/
|
71
73
|
info(message, params) {
|
72
|
-
if (this.
|
74
|
+
if (__classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_canLog).call(this, 1 /* SkyLogLevel.Info */)) {
|
73
75
|
if (params) {
|
74
76
|
console.log(message, ...params);
|
75
77
|
}
|
@@ -84,7 +86,7 @@ export class SkyLogService {
|
|
84
86
|
* @param params Optional parameters for the warning message.
|
85
87
|
*/
|
86
88
|
warn(message, params) {
|
87
|
-
if (this.
|
89
|
+
if (__classPrivateFieldGet(this, _SkyLogService_instances, "m", _SkyLogService_canLog).call(this, 2 /* SkyLogLevel.Warn */)) {
|
88
90
|
if (params) {
|
89
91
|
console.warn(message, ...params);
|
90
92
|
}
|
@@ -93,32 +95,30 @@ export class SkyLogService {
|
|
93
95
|
}
|
94
96
|
}
|
95
97
|
}
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
return typeString;
|
101
|
-
}
|
102
|
-
canLog(intendedLogLevel) {
|
103
|
-
return intendedLogLevel >= this.applicationLogLevel;
|
98
|
+
}
|
99
|
+
_SkyLogService_applicationLogLevel = new WeakMap(), _SkyLogService_formatter = new WeakMap(), _SkyLogService_instances = new WeakSet(), _SkyLogService_convertStringToCode = function _SkyLogService_convertStringToCode(typeString) {
|
100
|
+
if (typeString.charAt(0) !== '`' && typeString.charAt(-1) !== '`') {
|
101
|
+
typeString = '`' + typeString + '`';
|
104
102
|
}
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
103
|
+
return typeString;
|
104
|
+
}, _SkyLogService_canLog = function _SkyLogService_canLog(intendedLogLevel) {
|
105
|
+
return intendedLogLevel >= __classPrivateFieldGet(this, _SkyLogService_applicationLogLevel, "f");
|
106
|
+
}, _SkyLogService_logBasedOnLevel = function _SkyLogService_logBasedOnLevel(logLevel, message, params) {
|
107
|
+
switch (logLevel) {
|
108
|
+
case 1 /* SkyLogLevel.Info */:
|
109
|
+
this.info(message, params);
|
110
|
+
break;
|
111
|
+
case 2 /* SkyLogLevel.Warn */:
|
112
|
+
this.warn(message, params);
|
113
|
+
break;
|
114
|
+
case 3 /* SkyLogLevel.Error */:
|
115
|
+
this.error(message, params);
|
116
|
+
break;
|
117
117
|
}
|
118
|
-
}
|
119
|
-
SkyLogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
120
|
-
SkyLogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
118
|
+
};
|
119
|
+
SkyLogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogService, deps: [{ token: i1.SkyAppFormat }, { token: SKY_LOG_LEVEL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
120
|
+
SkyLogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogService, providedIn: 'root' });
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyLogService, decorators: [{
|
122
122
|
type: Injectable,
|
123
123
|
args: [{
|
124
124
|
providedIn: 'root',
|
@@ -129,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
129
129
|
type: Inject,
|
130
130
|
args: [SKY_LOG_LEVEL]
|
131
131
|
}] }]; } });
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbG9nL2xvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUFFeEQ7OztHQUdHO0FBSUgsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFDVSxTQUF1QixFQUd2QixtQkFBZ0M7UUFIaEMsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUd2Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQWE7UUFFeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM3QixJQUFJLENBQUMsbUJBQW1CLGdCQUFvQixDQUFDO1NBQzlDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksS0FBSyxDQUFDLFVBQVUsQ0FDckIsSUFBWSxFQUNaLElBQTJCO1FBRTNCLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRLGdCQUFvQixDQUFDO1FBQ3BELElBQUksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1lBRTVCLElBQUksSUFBSSxFQUFFLHVCQUF1QixFQUFFO2dCQUNqQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUN2QiwyQ0FBMkMsRUFDM0MsSUFBSSxFQUNKLElBQUksQ0FBQyx1QkFBdUIsQ0FB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QU8sRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDM0IsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1I7Z0JBQ0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzVCLE1BQU07U0FDVDtJQUNILENBQUM7OzBHQS9JVSxhQUFhLDhDQUlkLGFBQWE7OEdBSlosYUFBYSxjQUZaLE1BQU07MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUlJLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5QXBwRm9ybWF0IH0gZnJvbSAnLi4vZm9ybWF0L2FwcC1mb3JtYXQnO1xuXG5pbXBvcnQgeyBTa3lMb2dEZXByZWNhdGVkQXJncyB9IGZyb20gJy4vdHlwZXMvbG9nLWRlcHJlY2F0aW9uLWFyZ3MnO1xuaW1wb3J0IHsgU2t5TG9nTGV2ZWwgfSBmcm9tICcuL3R5cGVzL2xvZy1sZXZlbCc7XG5pbXBvcnQgeyBTS1lfTE9HX0xFVkVMIH0gZnJvbSAnLi90eXBlcy9sb2ctbGV2ZWwtdG9rZW4nO1xuXG4vKipcbiAqIExvZ3MgaW5mb3JtYXRpb24gdG8gdGhlIGNvbnNvbGUgYmFzZWQgb24gdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGFzIHByb3ZpZGVkIGJ5IHRoZSBgU0tZX0xPR19MRVZFTGAgaW5qZWN0aW9uIHRva2VuLiBJZiBubyB0b2tlbiBpcyBwcm92aWRlZCwgb25seSBgZXJyb3JgIGxvZ3Mgd2lsbCBiZSBzaG93bi5cbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TG9nU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZm9ybWF0dGVyOiBTa3lBcHBGb3JtYXQsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFNLWV9MT0dfTEVWRUwpXG4gICAgcHJpdmF0ZSBhcHBsaWNhdGlvbkxvZ0xldmVsOiBTa3lMb2dMZXZlbFxuICApIHtcbiAgICBpZiAoIXRoaXMuYXBwbGljYXRpb25Mb2dMZXZlbCkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvbkxvZ0xldmVsID0gU2t5TG9nTGV2ZWwuRXJyb3I7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGZvciBhIGNsYXNzLCBwcm9wZXJ0eSwgZnVuY3Rpb24sIGV0Yy4gVGhpcyB3aWxsIGJlIGxvZ2dlZCBhcyBhIGNvbnNvbGUgd2FybmluZyB1bmxlc3MgYSBkaWZmZXJlbnQgbG9nIGxldmVsIGlzIGdpdmVuIGluIHRoZSB0aGUgYGFyZ3NgIHBhcmFtZXRlci5cbiAgICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIGRlcHJlY2F0ZWQgY2xhc3MsIHByb3BlcnR5LCBmdW5jdGlvbiwgZXRjLlxuICAgKiBAcGFyYW0gYXJncyBJbmZvcm1hdGlvbiBhYm91dCB0aGUgZGVwcmVjYXRpb24gYW5kIHJlcGxhY2VtZW50IHJlY29tbWVuZGF0aW9ucy5cbiAgICogQHJldHVybnNcbiAgICovXG4gIHB1YmxpYyBhc3luYyBkZXByZWNhdGVkKFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBhcmdzPzogU2t5TG9nRGVwcmVjYXRlZEFyZ3NcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbG9nTGV2ZWwgPSBhcmdzPy5sb2dMZXZlbCA/PyBTa3lMb2dMZXZlbC5XYXJuO1xuICAgIG5hbWUgPSB0aGlzLmNvbnZlcnRTdHJpbmdUb0NvZGUobmFtZSk7XG5cbiAgICBpZiAodGhpcy5jYW5Mb2cobG9nTGV2ZWwpKSB7XG4gICAgICBjb25zdCBsb2NhbGl6ZWRTdHJpbmdzID0gW107XG5cbiAgICAgIGlmIChhcmdzPy5kZXByZWNhdGlvbk1ham9yVmVyc2lvbikge1xuICAgICAgICBsb2NhbGl6ZWRTdHJpbmdzLnB1c2goXG4gICAgICAgICAgdGhpcy5mb3JtYXR0ZXIuZm9ybWF0VGV4dChcbiAgICAgICAgICAgICd7MH0gaXMgZGVwcmVjYXRlZCBzdGFydGluZyBpbiBTS1kgVVggezF9LicsXG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgYXJncy5kZXByZWNhdGlvbk1ham9yVmVyc2lvbi50b0xvY2FsZVN0cmluZygpXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9jYWxpemVkU3RyaW5ncy5wdXNoKFxuICAgICAgICAgIHRoaXMuZm9ybWF0dGVyLmZvcm1hdFRleHQoJ3swfSBpcyBkZXByZWNhdGVkLicsIG5hbWUpXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGlmIChhcmdzPy5yZW1vdmFsTWFqb3JWZXJzaW9uKSB7XG4gICAgICAgIGxvY2FsaXplZFN0cmluZ3MucHVzaChcbiAgICAgICAgICB0aGlzLmZvcm1hdHRlci5mb3JtYXRUZXh0KFxuICAgICAgICAgICAgJ1dlIHdpbGwgcmVtb3ZlIGl0IGluIHZlcnNpb24gezB9LicsXG4gICAgICAgICAgICBhcmdzLnJlbW92YWxNYWpvclZlcnNpb24udG9Mb2NhbGVTdHJpbmcoKVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxvY2FsaXplZFN0cmluZ3MucHVzaCgnV2Ugd2lsbCByZW1vdmUgaXQgaW4gYSBmdXR1cmUgbWFqb3IgdmVyc2lvbi4nKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGFyZ3M/LnJlcGxhY2VtZW50UmVjb21tZW5kYXRpb24pIHtcbiAgICAgICAgbG9jYWxpemVkU3RyaW5ncy5wdXNoKGFyZ3MucmVwbGFjZW1lbnRSZWNvbW1lbmRhdGlvbik7XG4gICAgICB9XG5cbiAgICAgIGlmIChhcmdzPy5tb3JlSW5mb1VybCkge1xuICAgICAgICBsb2NhbGl6ZWRTdHJpbmdzLnB1c2goXG4gICAgICAgICAgdGhpcy5mb3JtYXR0ZXIuZm9ybWF0VGV4dChcbiAgICAgICAgICAgICdGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHswfS4nLFxuICAgICAgICAgICAgYXJncy5tb3JlSW5mb1VybFxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5sb2dCYXNlZE9uTGV2ZWwobG9nTGV2ZWwsIGxvY2FsaXplZFN0cmluZ3Muam9pbignICcpKTtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBjb25zb2xlIGVycm9yIGlmIHRoZSBhcHBsaWNhdGlvbidzIGxvZyBsZXZlbCBpcyBgU2t5TG9nTGV2ZWwuRXJyb3JgLlxuICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgZXJyb3IgbWVzc2FnZVxuICAgKiBAcGFyYW0gcGFyYW1zIE9wdGlvbmFsIHBhcmFtZXRlcnMgZm9yIHRoZSBlcnJvciBtZXNzYWdlLlxuICAgKi9cbiAgcHVibGljIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgcGFyYW1zPzogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2FuTG9nKFNreUxvZ0xldmVsLkVycm9yKSkge1xuICAgICAgaWYgKHBhcmFtcykge1xuICAgICAgICBjb25zb2xlLmVycm9yKG1lc3NhZ2UsIC4uLnBhcmFtcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGNvbnNvbGUgaW5mb3JtYXRpb24gaWYgdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGlzIGBTa3lMb2dMZXZlbC5JbmZvYCBvciBhYm92ZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGluZm9tYXRpb25hbCBtZXNzYWdlXG4gICAqIEBwYXJhbSBwYXJhbXMgT3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgdGhlIGluZm9ybWF0aW9uYWwgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBpbmZvKG1lc3NhZ2U6IHN0cmluZywgcGFyYW1zPzogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2FuTG9nKFNreUxvZ0xldmVsLkluZm8pKSB7XG4gICAgICBpZiAocGFyYW1zKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKG1lc3NhZ2UsIC4uLnBhcmFtcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmxvZyhtZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIGNvbnNvbGUgd2FybmluZyBpZiB0aGUgYXBwbGljYXRpb24ncyBsb2cgbGV2ZWwgaXMgYFNreUxvZ0xldmVsLldhcm5gIG9yIGFib3ZlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgd2FybmluZyBtZXNzYWdlXG4gICAqIEBwYXJhbSBwYXJhbXMgT3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgdGhlIHdhcm5pbmcgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyB3YXJuKG1lc3NhZ2U6IHN0cmluZywgcGFyYW1zPzogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2FuTG9nKFNreUxvZ0xldmVsLldhcm4pKSB7XG4gICAgICBpZiAocGFyYW1zKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihtZXNzYWdlLCAuLi5wYXJhbXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS53YXJuKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY29udmVydFN0cmluZ1RvQ29kZSh0eXBlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlU3RyaW5nLmNoYXJBdCgwKSAhPT0gJ2AnICYmIHR5cGVTdHJpbmcuY2hhckF0KC0xKSAhPT0gJ2AnKSB7XG4gICAgICB0eXBlU3RyaW5nID0gJ2AnICsgdHlwZVN0cmluZyArICdgJztcbiAgICB9XG4gICAgcmV0dXJuIHR5cGVTdHJpbmc7XG4gIH1cblxuICBwcml2YXRlIGNhbkxvZyhpbnRlbmRlZExvZ0xldmVsOiBTa3lMb2dMZXZlbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpbnRlbmRlZExvZ0xldmVsID49IHRoaXMuYXBwbGljYXRpb25Mb2dMZXZlbDtcbiAgfVxuXG4gIHByaXZhdGUgbG9nQmFzZWRPbkxldmVsKFxuICAgIGxvZ0xldmVsOiBTa3lMb2dMZXZlbCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgcGFyYW1zPzogdW5rbm93bltdXG4gICk6IHZvaWQge1xuICAgIHN3aXRjaCAobG9nTGV2ZWwpIHtcbiAgICAgIGNhc2UgU2t5TG9nTGV2ZWwuSW5mbzpcbiAgICAgICAgdGhpcy5pbmZvKG1lc3NhZ2UsIHBhcmFtcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBTa3lMb2dMZXZlbC5XYXJuOlxuICAgICAgICB0aGlzLndhcm4obWVzc2FnZSwgcGFyYW1zKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFNreUxvZ0xldmVsLkVycm9yOlxuICAgICAgICB0aGlzLmVycm9yKG1lc3NhZ2UsIHBhcmFtcyk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbG9nL2xvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUV4RDs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sYUFBYTtJQUt4QixZQUNFLFNBQXVCLEVBR3ZCLG1CQUFpQzs7UUFSbkMscURBQWtDO1FBRWxDLDJDQUF5QjtRQVF2Qix1QkFBQSxJQUFJLDRCQUFjLFNBQVMsTUFBQSxDQUFDO1FBQzVCLHVCQUFBLElBQUksc0NBQXdCLG1CQUFtQiw2QkFBcUIsTUFBQSxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQ3JCLElBQVksRUFDWixJQUEyQjtRQUUzQixNQUFNLFFBQVEsR0FBRyxJQUFJLEVBQUUsUUFBUSw0QkFBb0IsQ0FBQztRQUNwRCxJQUFJLEdBQUcsdUJBQUEsSUFBSSxvRUFBcUIsTUFBekIsSUFBSSxFQUFzQixJQUFJLENBQUMsQ0FBQztRQUV2QyxJQUFJLHVCQUFBLElBQUksdURBQVEsTUFBWixJQUFJLEVBQVMsUUFBUSxDQUFDLEVBQUU7WUFDMUIsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7WUFFNUIsSUFBSSxJQUFJLEVBQUUsdUJBQXVCLEVBQUU7Z0JBQ2pDLGdCQUFnQixDQUFDLElBQUksQ0FDbkIsdUJBQUEsSUFBSSxnQ0FBVyxDQUFDLFVBQVUsQ0FDeEIsMkNBQTJDLEVBQzNDLElBQUksRUFDSixJQUFJLENBQUMsdUJB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LEVBQUU7UUFDaEI7WUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMzQixNQUFNO1FBQ1I7WUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMzQixNQUFNO1FBQ1I7WUFDRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM1QixNQUFNO0tBQ1Q7QUFDSCxDQUFDOzBHQWxKVSxhQUFhLDhDQVFkLGFBQWE7OEdBUlosYUFBYSxjQUZaLE1BQU07MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVFJLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5QXBwRm9ybWF0IH0gZnJvbSAnLi4vZm9ybWF0L2FwcC1mb3JtYXQnO1xuXG5pbXBvcnQgeyBTa3lMb2dEZXByZWNhdGVkQXJncyB9IGZyb20gJy4vdHlwZXMvbG9nLWRlcHJlY2F0aW9uLWFyZ3MnO1xuaW1wb3J0IHsgU2t5TG9nTGV2ZWwgfSBmcm9tICcuL3R5cGVzL2xvZy1sZXZlbCc7XG5pbXBvcnQgeyBTS1lfTE9HX0xFVkVMIH0gZnJvbSAnLi90eXBlcy9sb2ctbGV2ZWwtdG9rZW4nO1xuXG4vKipcbiAqIExvZ3MgaW5mb3JtYXRpb24gdG8gdGhlIGNvbnNvbGUgYmFzZWQgb24gdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGFzIHByb3ZpZGVkIGJ5IHRoZSBgU0tZX0xPR19MRVZFTGAgaW5qZWN0aW9uIHRva2VuLiBJZiBubyB0b2tlbiBpcyBwcm92aWRlZCwgb25seSBgZXJyb3JgIGxvZ3Mgd2lsbCBiZSBzaG93bi5cbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TG9nU2VydmljZSB7XG4gICNhcHBsaWNhdGlvbkxvZ0xldmVsOiBTa3lMb2dMZXZlbDtcblxuICAjZm9ybWF0dGVyOiBTa3lBcHBGb3JtYXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZm9ybWF0dGVyOiBTa3lBcHBGb3JtYXQsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFNLWV9MT0dfTEVWRUwpXG4gICAgYXBwbGljYXRpb25Mb2dMZXZlbD86IFNreUxvZ0xldmVsXG4gICkge1xuICAgIHRoaXMuI2Zvcm1hdHRlciA9IGZvcm1hdHRlcjtcbiAgICB0aGlzLiNhcHBsaWNhdGlvbkxvZ0xldmVsID0gYXBwbGljYXRpb25Mb2dMZXZlbCA/PyBTa3lMb2dMZXZlbC5FcnJvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgZGVwcmVjYXRpb24gd2FybmluZyBmb3IgYSBjbGFzcywgcHJvcGVydHksIGZ1bmN0aW9uLCBldGMuIFRoaXMgd2lsbCBiZSBsb2dnZWQgYXMgYSBjb25zb2xlIHdhcm5pbmcgdW5sZXNzIGEgZGlmZmVyZW50IGxvZyBsZXZlbCBpcyBnaXZlbiBpbiB0aGUgdGhlIGBhcmdzYCBwYXJhbWV0ZXIuXG4gICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBkZXByZWNhdGVkIGNsYXNzLCBwcm9wZXJ0eSwgZnVuY3Rpb24sIGV0Yy5cbiAgICogQHBhcmFtIGFyZ3MgSW5mb3JtYXRpb24gYWJvdXQgdGhlIGRlcHJlY2F0aW9uIGFuZCByZXBsYWNlbWVudCByZWNvbW1lbmRhdGlvbnMuXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZGVwcmVjYXRlZChcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgYXJncz86IFNreUxvZ0RlcHJlY2F0ZWRBcmdzXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGxvZ0xldmVsID0gYXJncz8ubG9nTGV2ZWwgPz8gU2t5TG9nTGV2ZWwuV2FybjtcbiAgICBuYW1lID0gdGhpcy4jY29udmVydFN0cmluZ1RvQ29kZShuYW1lKTtcblxuICAgIGlmICh0aGlzLiNjYW5Mb2cobG9nTGV2ZWwpKSB7XG4gICAgICBjb25zdCBsb2NhbGl6ZWRTdHJpbmdzID0gW107XG5cbiAgICAgIGlmIChhcmdzPy5kZXByZWNhdGlvbk1ham9yVmVyc2lvbikge1xuICAgICAgICBsb2NhbGl6ZWRTdHJpbmdzLnB1c2goXG4gICAgICAgICAgdGhpcy4jZm9ybWF0dGVyLmZvcm1hdFRleHQoXG4gICAgICAgICAgICAnezB9IGlzIGRlcHJlY2F0ZWQgc3RhcnRpbmcgaW4gU0tZIFVYIHsxfS4nLFxuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgIGFyZ3MuZGVwcmVjYXRpb25NYWpvclZlcnNpb24udG9Mb2NhbGVTdHJpbmcoKVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxvY2FsaXplZFN0cmluZ3MucHVzaChcbiAgICAgICAgICB0aGlzLiNmb3JtYXR0ZXIuZm9ybWF0VGV4dCgnezB9IGlzIGRlcHJlY2F0ZWQuJywgbmFtZSlcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGFyZ3M/LnJlbW92YWxNYWpvclZlcnNpb24pIHtcbiAgICAgICAgbG9jYWxpemVkU3RyaW5ncy5wdXNoKFxuICAgICAgICAgIHRoaXMuI2Zvcm1hdHRlci5mb3JtYXRUZXh0KFxuICAgICAgICAgICAgJ1dlIHdpbGwgcmVtb3ZlIGl0IGluIHZlcnNpb24gezB9LicsXG4gICAgICAgICAgICBhcmdzLnJlbW92YWxNYWpvclZlcnNpb24udG9Mb2NhbGVTdHJpbmcoKVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxvY2FsaXplZFN0cmluZ3MucHVzaCgnV2Ugd2lsbCByZW1vdmUgaXQgaW4gYSBmdXR1cmUgbWFqb3IgdmVyc2lvbi4nKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGFyZ3M/LnJlcGxhY2VtZW50UmVjb21tZW5kYXRpb24pIHtcbiAgICAgICAgbG9jYWxpemVkU3RyaW5ncy5wdXNoKGFyZ3MucmVwbGFjZW1lbnRSZWNvbW1lbmRhdGlvbik7XG4gICAgICB9XG5cbiAgICAgIGlmIChhcmdzPy5tb3JlSW5mb1VybCkge1xuICAgICAgICBsb2NhbGl6ZWRTdHJpbmdzLnB1c2goXG4gICAgICAgICAgdGhpcy4jZm9ybWF0dGVyLmZvcm1hdFRleHQoXG4gICAgICAgICAgICAnRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB7MH0uJyxcbiAgICAgICAgICAgIGFyZ3MubW9yZUluZm9VcmxcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuI2xvZ0Jhc2VkT25MZXZlbChsb2dMZXZlbCwgbG9jYWxpemVkU3RyaW5ncy5qb2luKCcgJykpO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIGNvbnNvbGUgZXJyb3IgaWYgdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGlzIGBTa3lMb2dMZXZlbC5FcnJvcmAuXG4gICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBlcnJvciBtZXNzYWdlXG4gICAqIEBwYXJhbSBwYXJhbXMgT3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgdGhlIGVycm9yIG1lc3NhZ2UuXG4gICAqL1xuICBwdWJsaWMgZXJyb3IobWVzc2FnZTogc3RyaW5nLCBwYXJhbXM/OiB1bmtub3duW10pOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jY2FuTG9nKFNreUxvZ0xldmVsLkVycm9yKSkge1xuICAgICAgaWYgKHBhcmFtcykge1xuICAgICAgICBjb25zb2xlLmVycm9yKG1lc3NhZ2UsIC4uLnBhcmFtcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGNvbnNvbGUgaW5mb3JtYXRpb24gaWYgdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGlzIGBTa3lMb2dMZXZlbC5JbmZvYCBvciBhYm92ZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGluZm9tYXRpb25hbCBtZXNzYWdlXG4gICAqIEBwYXJhbSBwYXJhbXMgT3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgdGhlIGluZm9ybWF0aW9uYWwgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBpbmZvKG1lc3NhZ2U6IHN0cmluZywgcGFyYW1zPzogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2NhbkxvZyhTa3lMb2dMZXZlbC5JbmZvKSkge1xuICAgICAgaWYgKHBhcmFtcykge1xuICAgICAgICBjb25zb2xlLmxvZyhtZXNzYWdlLCAuLi5wYXJhbXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2cobWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBjb25zb2xlIHdhcm5pbmcgaWYgdGhlIGFwcGxpY2F0aW9uJ3MgbG9nIGxldmVsIGlzIGBTa3lMb2dMZXZlbC5XYXJuYCBvciBhYm92ZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIHdhcm5pbmcgbWVzc2FnZVxuICAgKiBAcGFyYW0gcGFyYW1zIE9wdGlvbmFsIHBhcmFtZXRlcnMgZm9yIHRoZSB3YXJuaW5nIG1lc3NhZ2UuXG4gICAqL1xuICBwdWJsaWMgd2FybihtZXNzYWdlOiBzdHJpbmcsIHBhcmFtcz86IHVua25vd25bXSk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNjYW5Mb2coU2t5TG9nTGV2ZWwuV2FybikpIHtcbiAgICAgIGlmIChwYXJhbXMpIHtcbiAgICAgICAgY29uc29sZS53YXJuKG1lc3NhZ2UsIC4uLnBhcmFtcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2NvbnZlcnRTdHJpbmdUb0NvZGUodHlwZVN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZVN0cmluZy5jaGFyQXQoMCkgIT09ICdgJyAmJiB0eXBlU3RyaW5nLmNoYXJBdCgtMSkgIT09ICdgJykge1xuICAgICAgdHlwZVN0cmluZyA9ICdgJyArIHR5cGVTdHJpbmcgKyAnYCc7XG4gICAgfVxuICAgIHJldHVybiB0eXBlU3RyaW5nO1xuICB9XG5cbiAgI2NhbkxvZyhpbnRlbmRlZExvZ0xldmVsOiBTa3lMb2dMZXZlbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpbnRlbmRlZExvZ0xldmVsID49IHRoaXMuI2FwcGxpY2F0aW9uTG9nTGV2ZWw7XG4gIH1cblxuICAjbG9nQmFzZWRPbkxldmVsKFxuICAgIGxvZ0xldmVsOiBTa3lMb2dMZXZlbCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgcGFyYW1zPzogdW5rbm93bltdXG4gICk6IHZvaWQge1xuICAgIHN3aXRjaCAobG9nTGV2ZWwpIHtcbiAgICAgIGNhc2UgU2t5TG9nTGV2ZWwuSW5mbzpcbiAgICAgICAgdGhpcy5pbmZvKG1lc3NhZ2UsIHBhcmFtcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBTa3lMb2dMZXZlbC5XYXJuOlxuICAgICAgICB0aGlzLndhcm4obWVzc2FnZSwgcGFyYW1zKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFNreUxvZ0xldmVsLkVycm9yOlxuICAgICAgICB0aGlzLmVycm9yKG1lc3NhZ2UsIHBhcmFtcyk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19
|