ngx-techlify-core 11.3.6 → 11.4.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/bundles/ngx-techlify-core.umd.js +268 -96
- package/bundles/ngx-techlify-core.umd.js.map +1 -1
- package/bundles/ngx-techlify-core.umd.min.js +2 -2
- package/bundles/ngx-techlify-core.umd.min.js.map +1 -1
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +7 -9
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +7 -9
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +2 -2
- package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +11 -2
- package/esm2015/lib/searchable-selector/searchable-selector.component.js +34 -4
- package/esm2015/lib/techlify-feature/on-off-switch/on-off-switch.component.js +27 -0
- package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +78 -0
- package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +177 -0
- package/esm2015/lib/techlify-feature/techlify-feature.module.js +30 -0
- package/esm2015/lib/techlify-feature/techlify-feature.routing.js +12 -0
- package/esm2015/lib/techlify-feature/techlify-feature.service.js +28 -0
- package/esm2015/lib/timeline-filter/calculate-timeline.js +2 -2
- package/esm2015/lib/timeline-filter/timeline-filter.component.js +145 -16
- package/esm2015/ngx-techlify-core.js +6 -3
- package/esm2015/public-api.js +5 -6
- package/fesm2015/ngx-techlify-core.js +221 -61
- package/fesm2015/ngx-techlify-core.js.map +1 -1
- package/lib/login-history-for-user/login-history-for-user.component.d.ts +2 -0
- package/lib/searchable-selector/searchable-selector.component.d.ts +5 -0
- package/lib/{company-feature → techlify-feature}/on-off-switch/on-off-switch.component.d.ts +0 -0
- package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +17 -0
- package/lib/{company-feature/company-feature.component.d.ts → techlify-feature/techlify-feature-listing.component.d.ts} +7 -4
- package/lib/techlify-feature/techlify-feature.module.d.ts +2 -0
- package/lib/techlify-feature/techlify-feature.routing.d.ts +2 -0
- package/lib/{company-feature/company-feature.service.d.ts → techlify-feature/techlify-feature.service.d.ts} +1 -1
- package/lib/timeline-filter/calculate-timeline.d.ts +5 -0
- package/lib/timeline-filter/timeline-filter.component.d.ts +47 -6
- package/ngx-techlify-core.d.ts +5 -2
- package/ngx-techlify-core.metadata.json +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +4 -5
- package/esm2015/lib/company-feature/company-feature.component.js +0 -174
- package/esm2015/lib/company-feature/company-feature.module.js +0 -30
- package/esm2015/lib/company-feature/company-feature.routing.js +0 -12
- package/esm2015/lib/company-feature/company-feature.service.js +0 -28
- package/esm2015/lib/company-feature/ngx-feature-enabled.directive.js +0 -77
- package/esm2015/lib/company-feature/on-off-switch/on-off-switch.component.js +0 -27
- package/lib/company-feature/company-feature.module.d.ts +0 -2
- package/lib/company-feature/company-feature.routing.d.ts +0 -2
- package/lib/company-feature/ngx-feature-enabled.directive.d.ts +0 -16
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Directive, ElementRef, Input } from '@angular/core';
|
|
3
|
+
import { ErrorHandlerService } from '../core/error-handler.service';
|
|
4
|
+
import { StorageService } from '../core/storage.service';
|
|
5
|
+
import { TechlifyFeatureService } from './techlify-feature.service';
|
|
6
|
+
export class TechlifyFeatureEnabledDirective {
|
|
7
|
+
constructor(el, featureService, errorHandler, storage) {
|
|
8
|
+
this.el = el;
|
|
9
|
+
this.featureService = featureService;
|
|
10
|
+
this.errorHandler = errorHandler;
|
|
11
|
+
this.storage = storage;
|
|
12
|
+
this.localFeatures = [];
|
|
13
|
+
}
|
|
14
|
+
ngOnInit() {
|
|
15
|
+
if (!this.storage.getItem('features')) {
|
|
16
|
+
this.getFeatures();
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
this.checkForFeatureEnabled();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
getFeatures() {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
try {
|
|
25
|
+
let features = yield this.featureService.getFeatures();
|
|
26
|
+
for (let feature of features.data) {
|
|
27
|
+
if (!feature.client_feature) {
|
|
28
|
+
if (feature.is_enabled_default) {
|
|
29
|
+
this.localFeatures.push(feature.code);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
if (feature.client_feature.is_enabled) {
|
|
34
|
+
this.localFeatures.push(feature.code);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
this.storage.setItem("features", this.localFeatures);
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
this.errorHandler.handleError(error);
|
|
42
|
+
}
|
|
43
|
+
finally {
|
|
44
|
+
this.checkForFeatureEnabled();
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
checkForFeatureEnabled() {
|
|
49
|
+
try {
|
|
50
|
+
let features = this.storage.getItem('features');
|
|
51
|
+
let features_split = features.split(',');
|
|
52
|
+
if (features_split.includes(this.enabledFeature)) {
|
|
53
|
+
this.el.nativeElement.style.display = "show";
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.el.nativeElement.remove();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
this.errorHandler.handleError(error);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
TechlifyFeatureEnabledDirective.decorators = [
|
|
65
|
+
{ type: Directive, args: [{
|
|
66
|
+
selector: '[techlifyFeatureEnabled]'
|
|
67
|
+
},] }
|
|
68
|
+
];
|
|
69
|
+
TechlifyFeatureEnabledDirective.ctorParameters = () => [
|
|
70
|
+
{ type: ElementRef },
|
|
71
|
+
{ type: TechlifyFeatureService },
|
|
72
|
+
{ type: ErrorHandlerService },
|
|
73
|
+
{ type: StorageService }
|
|
74
|
+
];
|
|
75
|
+
TechlifyFeatureEnabledDirective.propDecorators = {
|
|
76
|
+
enabledFeature: [{ type: Input, args: ['techlifyFeatureEnabled',] }]
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZmVhdHVyZS1lbmFibGVkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLWVuYWJsZWQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBS3BFLE1BQU0sT0FBTywrQkFBK0I7SUFNMUMsWUFDVSxFQUFjLEVBQ2QsY0FBc0MsRUFDdEMsWUFBaUMsRUFDakMsT0FBdUI7UUFIdkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUF3QjtRQUN0QyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFQakMsa0JBQWEsR0FBVSxFQUFFLENBQUM7SUFTMUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO2FBQU07WUFDTCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFSyxXQUFXOztZQUNmLElBQUk7Z0JBQ0YsSUFBSSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUV2RCxLQUFLLElBQUksT0FBTyxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFO3dCQUMzQixJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTs0QkFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3lCQUN2QztxQkFDRjt5QkFBTTt3QkFDTCxJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFOzRCQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7eUJBQ3ZDO3FCQUNGO2lCQUVGO2dCQUNELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDdEQ7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN0QztvQkFBUztnQkFDUixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQTthQUM5QjtRQUNILENBQUM7S0FBQTtJQUVELHNCQUFzQjtRQUNwQixJQUFJO1lBQ0YsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDaEQsSUFBSSxjQUFjLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUV6QyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNoRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQzthQUM5QztpQkFBTTtnQkFDTCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUNoQztTQUVGO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN0QztJQUNILENBQUM7OztZQS9ERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjthQUNyQzs7O1lBUG1CLFVBQVU7WUFHckIsc0JBQXNCO1lBRnRCLG1CQUFtQjtZQUNuQixjQUFjOzs7NkJBVXBCLEtBQUssU0FBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3N0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBUZWNobGlmeUZlYXR1cmVTZXJ2aWNlIH0gZnJvbSAnLi90ZWNobGlmeS1mZWF0dXJlLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGVjaGxpZnlGZWF0dXJlRW5hYmxlZF0nXG59KVxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5RmVhdHVyZUVuYWJsZWREaXJlY3RpdmUge1xuXG4gIGZlYXR1cmVzOiBhbnk7XG4gIGxvY2FsRmVhdHVyZXM6IGFueVtdID0gW107XG4gIEBJbnB1dCgndGVjaGxpZnlGZWF0dXJlRW5hYmxlZCcpIGVuYWJsZWRGZWF0dXJlOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGZlYXR1cmVTZXJ2aWNlOiBUZWNobGlmeUZlYXR1cmVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmFnZTogU3RvcmFnZVNlcnZpY2UpIHtcblxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnZmVhdHVyZXMnKSkge1xuICAgICAgdGhpcy5nZXRGZWF0dXJlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNoZWNrRm9yRmVhdHVyZUVuYWJsZWQoKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRGZWF0dXJlcygpIHtcbiAgICB0cnkge1xuICAgICAgbGV0IGZlYXR1cmVzID0gYXdhaXQgdGhpcy5mZWF0dXJlU2VydmljZS5nZXRGZWF0dXJlcygpO1xuXG4gICAgICBmb3IgKGxldCBmZWF0dXJlIG9mIGZlYXR1cmVzLmRhdGEpIHtcbiAgICAgICAgaWYgKCFmZWF0dXJlLmNsaWVudF9mZWF0dXJlKSB7XG4gICAgICAgICAgaWYgKGZlYXR1cmUuaXNfZW5hYmxlZF9kZWZhdWx0KSB7XG4gICAgICAgICAgICB0aGlzLmxvY2FsRmVhdHVyZXMucHVzaChmZWF0dXJlLmNvZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoZmVhdHVyZS5jbGllbnRfZmVhdHVyZS5pc19lbmFibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmxvY2FsRmVhdHVyZXMucHVzaChmZWF0dXJlLmNvZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICB0aGlzLnN0b3JhZ2Uuc2V0SXRlbShcImZlYXR1cmVzXCIsIHRoaXMubG9jYWxGZWF0dXJlcyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5jaGVja0ZvckZlYXR1cmVFbmFibGVkKClcbiAgICB9XG4gIH1cblxuICBjaGVja0ZvckZlYXR1cmVFbmFibGVkKCkge1xuICAgIHRyeSB7XG4gICAgICBsZXQgZmVhdHVyZXMgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnZmVhdHVyZXMnKTtcbiAgICAgIGxldCBmZWF0dXJlc19zcGxpdCA9IGZlYXR1cmVzLnNwbGl0KCcsJyk7XG5cbiAgICAgIGlmIChmZWF0dXJlc19zcGxpdC5pbmNsdWRlcyh0aGlzLmVuYWJsZWRGZWF0dXJlKSkge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9IFwic2hvd1wiO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZSgpO1xuICAgICAgfVxuXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICB9XG4gIH1cblxufVxuIl19
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { Component } from '@angular/core';
|
|
3
|
+
import { FormBuilder } from '@angular/forms';
|
|
4
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
5
|
+
import { MatTableDataSource } from '@angular/material/table';
|
|
6
|
+
import { TechlifyFeatureService } from './techlify-feature.service';
|
|
7
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
8
|
+
import { debounceTime } from 'rxjs/operators';
|
|
9
|
+
import { ActionPopupComponent } from '../action-popup';
|
|
10
|
+
import { DataManager } from '../core/dataManager.service';
|
|
11
|
+
import { ErrorHandlerService } from '../core/error-handler.service';
|
|
12
|
+
import { AlertService } from '../core/alert.service';
|
|
13
|
+
import { StorageService } from '../core/storage.service';
|
|
14
|
+
let TechlifyFeatureListingComponent = class TechlifyFeatureListingComponent {
|
|
15
|
+
constructor(dataManager, errorHandler, fb, alertService, dialog, storage, featureService) {
|
|
16
|
+
this.dataManager = dataManager;
|
|
17
|
+
this.errorHandler = errorHandler;
|
|
18
|
+
this.fb = fb;
|
|
19
|
+
this.alertService = alertService;
|
|
20
|
+
this.dialog = dialog;
|
|
21
|
+
this.storage = storage;
|
|
22
|
+
this.featureService = featureService;
|
|
23
|
+
this.features = [];
|
|
24
|
+
this.displayedColumns = [
|
|
25
|
+
'index',
|
|
26
|
+
'feature',
|
|
27
|
+
'description',
|
|
28
|
+
'actions',
|
|
29
|
+
];
|
|
30
|
+
this.dataSource = new MatTableDataSource();
|
|
31
|
+
this.page = 1;
|
|
32
|
+
this.perPage = 25;
|
|
33
|
+
this.isWorking = false;
|
|
34
|
+
this.filterFormGroup = this.fb.group({
|
|
35
|
+
num_items: [""]
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
ngOnInit() {
|
|
39
|
+
this.loadData();
|
|
40
|
+
this.listenForChanges();
|
|
41
|
+
}
|
|
42
|
+
listenForChanges() {
|
|
43
|
+
this.filterFormGroup.valueChanges
|
|
44
|
+
.pipe(debounceTime(500), untilDestroyed(this))
|
|
45
|
+
.subscribe((changes) => {
|
|
46
|
+
this.reload();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
loadData() {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
let result;
|
|
52
|
+
try {
|
|
53
|
+
this.isWorking = true;
|
|
54
|
+
var filter = this.filterFormGroup.value;
|
|
55
|
+
filter.page = this.page;
|
|
56
|
+
filter.perPage = this.perPage;
|
|
57
|
+
result = yield this.dataManager.GET(`api/features`, filter);
|
|
58
|
+
this.features = this.features.concat(result.data);
|
|
59
|
+
this.dataSource = new MatTableDataSource(this.features);
|
|
60
|
+
if (!this.storage.getItem('features')) {
|
|
61
|
+
this.setStorage(this.features);
|
|
62
|
+
}
|
|
63
|
+
this.isWorking = false;
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
this.errorHandler.handleError(error);
|
|
67
|
+
}
|
|
68
|
+
finally {
|
|
69
|
+
this.isWorking = false;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
toggeleFeature(element, feature) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
let status = element ? 'Off' : "On";
|
|
76
|
+
let data;
|
|
77
|
+
const dialogRef = this.dialog.open(ActionPopupComponent, {
|
|
78
|
+
width: "400px",
|
|
79
|
+
data: {
|
|
80
|
+
title: `Turn this feature ${status}?`,
|
|
81
|
+
message: `Would you like to turn ${feature.title} feature ${status}`
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
dialogRef.afterClosed().subscribe((result) => __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
if (result) {
|
|
86
|
+
try {
|
|
87
|
+
data = element
|
|
88
|
+
? yield this.featureService.disableFeature(feature.id)
|
|
89
|
+
: yield this.featureService.enableFeature(feature.id);
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
this.errorHandler.handleError(error);
|
|
93
|
+
}
|
|
94
|
+
finally {
|
|
95
|
+
this.alertService.addAlert(`You have just turned ${status} the feature ${feature.title}`, 'success');
|
|
96
|
+
this.reload();
|
|
97
|
+
this.storage.removeItem('features');
|
|
98
|
+
this.setStorage(this.features);
|
|
99
|
+
this.isWorking = false;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
this.reload();
|
|
104
|
+
}
|
|
105
|
+
}));
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
setStorage(features) {
|
|
109
|
+
let localFeatures = [];
|
|
110
|
+
for (let feature of features) {
|
|
111
|
+
if (!feature.client_feature) {
|
|
112
|
+
if (feature.is_enabled_default) {
|
|
113
|
+
localFeatures.push(feature.code);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
if (feature.client_feature.is_enabled) {
|
|
118
|
+
localFeatures.push(feature.code);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
this.storage.setItem("features", localFeatures);
|
|
123
|
+
}
|
|
124
|
+
reload() {
|
|
125
|
+
this.features = [];
|
|
126
|
+
this.page = 1;
|
|
127
|
+
if (!this.isWorking) {
|
|
128
|
+
this.loadData();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
onScroll() {
|
|
132
|
+
if (!this.isWorking && this.page < this.lastPage) {
|
|
133
|
+
this.page += 1;
|
|
134
|
+
this.loadData();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
sortColumn(event) {
|
|
138
|
+
var direction = event.direction.toString().toUpperCase();
|
|
139
|
+
this.assignFilter(event.active, direction);
|
|
140
|
+
this.reload();
|
|
141
|
+
}
|
|
142
|
+
assignFilter(column, direction) {
|
|
143
|
+
switch (column) {
|
|
144
|
+
case 'name': {
|
|
145
|
+
return this.filterFormGroup
|
|
146
|
+
.get('sort_by')
|
|
147
|
+
.setValue('first_name|' + direction);
|
|
148
|
+
}
|
|
149
|
+
case 'added_on': {
|
|
150
|
+
return this.filterFormGroup
|
|
151
|
+
.get('sort_by')
|
|
152
|
+
.setValue('created_at|' + direction);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
TechlifyFeatureListingComponent.decorators = [
|
|
158
|
+
{ type: Component, args: [{
|
|
159
|
+
selector: 'app-techlify-listing-feature',
|
|
160
|
+
template: "<div fxLayout=\"column\" fxLayoutGap=\"3rem\" class=\"p-3\">\n <div fxLayout=\"column\" fxLayoutAlign=\"center center\" class=\"primary-color mt-3\">\n <h3>Features Configuration</h3>\n <mat-hint>\n <i> Here you can specify which optional features you'd like to have available to your team </i>\n </mat-hint>\n </div>\n\n\n <div>\n <mat-card>\n <mat-card-content fxlayout=\"column\" style=\"overflow: auto; height: 700px\" class=\"classifications-card\">\n <table mat-table [dataSource]=\"dataSource\" class=\"mat-elevation-z8 w-100\" matSort multiTemplateDataRows\n (matSortChange)=\"sortColumn($event)\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\n (scrolled)=\"onScroll()\" [fromRoot]=\"true\" [infiniteScrollContainer]=\"'.classifications-card'\">\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef>#</th>\n <td mat-cell *matCellDef=\"let element; let i = dataIndex\">\n {{ i + 1 }}\n </td>\n </ng-container>\n\n <!-- Title Column -->\n <ng-container matColumnDef=\"feature\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear>\n Feature\n </th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.title }}</td>\n </ng-container>\n\n <!-- Description Column -->\n <ng-container matColumnDef=\"description\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear>\n Descriptions\n </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.description }}\n </td>\n </ng-container>\n\n <!-- Actions Column -->\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear>\n Actions\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <div *ngIf=\"!element?.client_feature\">\n <app-on-off-switch [value]=\"element?.is_enabled_default\"\n (click)=\"toggeleFeature(element?.is_enabled_default, element)\"></app-on-off-switch>\n </div>\n <div *ngIf=\"element?.client_feature\">\n <app-on-off-switch [value]=\"element?.client_feature?.is_enabled\"\n (click)=\"toggeleFeature(element?.client_feature?.is_enabled, element)\"></app-on-off-switch>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns\"></tr>\n </table>\n </mat-card-content>\n </mat-card>\n </div>\n</div>\n",
|
|
161
|
+
styles: [""]
|
|
162
|
+
},] }
|
|
163
|
+
];
|
|
164
|
+
TechlifyFeatureListingComponent.ctorParameters = () => [
|
|
165
|
+
{ type: DataManager },
|
|
166
|
+
{ type: ErrorHandlerService },
|
|
167
|
+
{ type: FormBuilder },
|
|
168
|
+
{ type: AlertService },
|
|
169
|
+
{ type: MatDialog },
|
|
170
|
+
{ type: StorageService },
|
|
171
|
+
{ type: TechlifyFeatureService }
|
|
172
|
+
];
|
|
173
|
+
TechlifyFeatureListingComponent = __decorate([
|
|
174
|
+
UntilDestroy()
|
|
175
|
+
], TechlifyFeatureListingComponent);
|
|
176
|
+
export { TechlifyFeatureListingComponent };
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZmVhdHVyZS1saXN0aW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLWxpc3RpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFlLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7SUFPNUMsK0JBQStCLFNBQS9CLCtCQUErQjtJQW9CMUMsWUFDVSxXQUF3QixFQUN4QixZQUFpQyxFQUNqQyxFQUFlLEVBQ2YsWUFBMEIsRUFDMUIsTUFBaUIsRUFDakIsT0FBdUIsRUFDdkIsY0FBc0M7UUFOdEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsaUJB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cUJBQ3hCLEdBQUcsQ0FBQyxTQUFTLENBQUM7cUJBQ2QsUUFBUSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsQ0FBQTthQUN2QztZQUNELEtBQUssVUFBVSxDQUFDLENBQUM7Z0JBQ2YsT0FBTyxJQUFJLENBQUMsZUFBZTtxQkFDeEIsR0FBRyxDQUFDLFNBQVMsQ0FBQztxQkFDZCxRQUFRLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQyxDQUFBO2FBQ3ZDO1NBQ0Y7SUFDSCxDQUFDO0NBRUYsQ0FBQTs7WUFoS0EsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLG8xRkFBd0Q7O2FBRXpEOzs7WUFUUSxXQUFXO1lBQ1gsbUJBQW1CO1lBUm5CLFdBQVc7WUFTWCxZQUFZO1lBUlosU0FBUztZQVNULGNBQWM7WUFQZCxzQkFBc0I7O0FBY2xCLCtCQUErQjtJQU4zQyxZQUFZLEVBQUU7R0FNRiwrQkFBK0IsQ0EySjNDO1NBM0pZLCtCQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IFRlY2hsaWZ5RmVhdHVyZVNlcnZpY2UgfSBmcm9tICcuL3RlY2hsaWZ5LWZlYXR1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFjdGlvblBvcHVwLCBBY3Rpb25Qb3B1cENvbXBvbmVudCB9IGZyb20gJy4uL2FjdGlvbi1wb3B1cCc7XG5pbXBvcnQgeyBEYXRhTWFuYWdlciB9IGZyb20gJy4uL2NvcmUvZGF0YU1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zdG9yYWdlLnNlcnZpY2UnO1xuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdGVjaGxpZnktbGlzdGluZy1mZWF0dXJlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RlY2hsaWZ5LWZlYXR1cmUtbGlzdGluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RlY2hsaWZ5LWZlYXR1cmUtbGlzdGluZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5RmVhdHVyZUxpc3RpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGZlYXR1cmVzOiBhbnlbXSA9IFtdXG4gIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdID0gW1xuICAgICdpbmRleCcsXG4gICAgJ2ZlYXR1cmUnLFxuICAgICdkZXNjcmlwdGlvbicsXG4gICAgJ2FjdGlvbnMnLFxuICBdXG5cbiAgZGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoKVxuXG4gIHBhZ2U6IG51bWJlciA9IDE7XG4gIGxhc3RQYWdlOiBudW1iZXI7XG4gIHBlclBhZ2U6IG51bWJlciA9IDI1O1xuXG4gIGlzV29ya2luZzogYm9vbGVhbiA9IGZhbHNlXG4gIGZpbHRlckZvcm1Hcm91cDogRm9ybUdyb3VwO1xuICBmZWF0dXJlVG9nZ2xlRm9ybTogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGF0YU1hbmFnZXI6IERhdGFNYW5hZ2VyLFxuICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmVhdHVyZVNlcnZpY2U6IFRlY2hsaWZ5RmVhdHVyZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5maWx0ZXJGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIG51bV9pdGVtczogW1wiXCJdXG4gICAgfSlcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubG9hZERhdGEoKVxuICAgIHRoaXMubGlzdGVuRm9yQ2hhbmdlcygpXG4gIH1cblxuICBsaXN0ZW5Gb3JDaGFuZ2VzKCkge1xuICAgIHRoaXMuZmlsdGVyRm9ybUdyb3VwLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwMCksIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgoY2hhbmdlcykgPT4ge1xuICAgICAgICB0aGlzLnJlbG9hZCgpXG4gICAgICB9KVxuICB9XG5cbiAgYXN5bmMgbG9hZERhdGEoKSB7XG4gICAgbGV0IHJlc3VsdDtcbiAgICB0cnkge1xuICAgICAgdGhpcy5pc1dvcmtpbmcgPSB0cnVlXG4gICAgICB2YXIgZmlsdGVyID0gdGhpcy5maWx0ZXJGb3JtR3JvdXAudmFsdWVcbiAgICAgIGZpbHRlci5wYWdlID0gdGhpcy5wYWdlO1xuICAgICAgZmlsdGVyLnBlclBhZ2UgPSB0aGlzLnBlclBhZ2U7XG4gICAgICByZXN1bHQgPSBhd2FpdCB0aGlzLmRhdGFNYW5hZ2VyLkdFVChgYXBpL2ZlYXR1cmVzYCwgZmlsdGVyKTtcbiAgICAgIHRoaXMuZmVhdHVyZXMgPSB0aGlzLmZlYXR1cmVzLmNvbmNhdChyZXN1bHQuZGF0YSk7XG4gICAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlKHRoaXMuZmVhdHVyZXMpO1xuXG4gICAgICBpZiAoIXRoaXMuc3RvcmFnZS5nZXRJdGVtKCdmZWF0dXJlcycpKSB7XG4gICAgICAgIHRoaXMuc2V0U3RvcmFnZSh0aGlzLmZlYXR1cmVzKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pc1dvcmtpbmcgPSBmYWxzZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNXb3JraW5nID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgdG9nZ2VsZUZlYXR1cmUoZWxlbWVudCwgZmVhdHVyZSkge1xuICAgIGxldCBzdGF0dXMgPSBlbGVtZW50ID8gJ09mZicgOiBcIk9uXCI7XG4gICAgbGV0IGRhdGE7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBY3Rpb25Qb3B1cENvbXBvbmVudCwge1xuICAgICAgd2lkdGg6IFwiNDAwcHhcIixcbiAgICAgIGRhdGE6IDxBY3Rpb25Qb3B1cD57XG4gICAgICAgIHRpdGxlOiBgVHVybiB0aGlzIGZlYXR1cmUgJHtzdGF0dXN9P2AsXG4gICAgICAgIG1lc3NhZ2U6IGBXb3VsZCB5b3UgbGlrZSB0byB0dXJuICR7ZmVhdHVyZS50aXRsZX0gZmVhdHVyZSAke3N0YXR1c31gXG4gICAgICB9XG4gICAgfSlcblxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShhc3luYyByZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGRhdGEgPSBlbGVtZW50XG4gICAgICAgICAgICA/IGF3YWl0IHRoaXMuZmVhdHVyZVNlcnZpY2UuZGlzYWJsZUZlYXR1cmUoZmVhdHVyZS5pZClcbiAgICAgICAgICAgIDogYXdhaXQgdGhpcy5mZWF0dXJlU2VydmljZS5lbmFibGVGZWF0dXJlKGZlYXR1cmUuaWQpO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydChgWW91IGhhdmUganVzdCB0dXJuZWQgJHtzdGF0dXN9IHRoZSBmZWF0dXJlICR7ZmVhdHVyZS50aXRsZX1gLCAnc3VjY2VzcycpO1xuICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgdGhpcy5zdG9yYWdlLnJlbW92ZUl0ZW0oJ2ZlYXR1cmVzJyk7XG4gICAgICAgICAgdGhpcy5zZXRTdG9yYWdlKHRoaXMuZmVhdHVyZXMpO1xuICAgICAgICAgIHRoaXMuaXNXb3JraW5nID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHNldFN0b3JhZ2UoZmVhdHVyZXMpIHtcbiAgICBsZXQgbG9jYWxGZWF0dXJlcyA9IFtdO1xuICAgIGZvciAobGV0IGZlYXR1cmUgb2YgZmVhdHVyZXMpIHtcbiAgICAgIGlmICghZmVhdHVyZS5jbGllbnRfZmVhdHVyZSkge1xuICAgICAgICBpZiAoZmVhdHVyZS5pc19lbmFibGVkX2RlZmF1bHQpIHtcbiAgICAgICAgICBsb2NhbEZlYXR1cmVzLnB1c2goZmVhdHVyZS5jb2RlKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGZlYXR1cmUuY2xpZW50X2ZlYXR1cmUuaXNfZW5hYmxlZCkge1xuICAgICAgICAgIGxvY2FsRmVhdHVyZXMucHVzaChmZWF0dXJlLmNvZGUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gICAgdGhpcy5zdG9yYWdlLnNldEl0ZW0oXCJmZWF0dXJlc1wiLCBsb2NhbEZlYXR1cmVzKTtcbiAgfVxuXG4gIHJlbG9hZCgpIHtcbiAgICB0aGlzLmZlYXR1cmVzID0gW107XG4gICAgdGhpcy5wYWdlID0gMTtcbiAgICBpZiAoIXRoaXMuaXNXb3JraW5nKSB7XG4gICAgICB0aGlzLmxvYWREYXRhKCk7XG4gICAgfVxuICB9XG5cbiAgb25TY3JvbGwoKSB7XG4gICAgaWYgKCF0aGlzLmlzV29ya2luZyAmJiB0aGlzLnBhZ2UgPCB0aGlzLmxhc3RQYWdlKSB7XG4gICAgICB0aGlzLnBhZ2UgKz0gMTtcbiAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICB9XG4gIH1cblxuICBzb3J0Q29sdW1uKGV2ZW50KSB7XG4gICAgdmFyIGRpcmVjdGlvbiA9IGV2ZW50LmRpcmVjdGlvbi50b1N0cmluZygpLnRvVXBwZXJDYXNlKClcbiAgICB0aGlzLmFzc2lnbkZpbHRlcihldmVudC5hY3RpdmUsIGRpcmVjdGlvbilcbiAgICB0aGlzLnJlbG9hZCgpXG4gIH1cblxuICBhc3NpZ25GaWx0ZXIoY29sdW1uLCBkaXJlY3Rpb24pIHtcbiAgICBzd2l0Y2ggKGNvbHVtbikge1xuICAgICAgY2FzZSAnbmFtZSc6IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybUdyb3VwXG4gICAgICAgICAgLmdldCgnc29ydF9ieScpXG4gICAgICAgICAgLnNldFZhbHVlKCdmaXJzdF9uYW1lfCcgKyBkaXJlY3Rpb24pXG4gICAgICB9XG4gICAgICBjYXNlICdhZGRlZF9vbic6IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybUdyb3VwXG4gICAgICAgICAgLmdldCgnc29ydF9ieScpXG4gICAgICAgICAgLnNldFZhbHVlKCdjcmVhdGVkX2F0fCcgKyBkaXJlY3Rpb24pXG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TechlifyFeatureListingComponent } from './techlify-feature-listing.component';
|
|
4
|
+
import { TechlifyFeatureRoutes } from './techlify-feature.routing';
|
|
5
|
+
import { OnOffSwitchComponent } from './on-off-switch/on-off-switch.component';
|
|
6
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
7
|
+
import { TechlifyFeatureEnabledDirective } from './techlify-feature-enabled.directive';
|
|
8
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
9
|
+
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
10
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
11
|
+
import { MaterialModule } from '../material.module';
|
|
12
|
+
export class TechlifyFeatureModule {
|
|
13
|
+
}
|
|
14
|
+
TechlifyFeatureModule.decorators = [
|
|
15
|
+
{ type: NgModule, args: [{
|
|
16
|
+
imports: [
|
|
17
|
+
CommonModule,
|
|
18
|
+
MaterialModule,
|
|
19
|
+
FlexLayoutModule,
|
|
20
|
+
TechlifyFeatureRoutes,
|
|
21
|
+
MatSlideToggleModule,
|
|
22
|
+
FormsModule,
|
|
23
|
+
ReactiveFormsModule,
|
|
24
|
+
InfiniteScrollModule
|
|
25
|
+
],
|
|
26
|
+
declarations: [TechlifyFeatureListingComponent, OnOffSwitchComponent, TechlifyFeatureEnabledDirective],
|
|
27
|
+
exports: [TechlifyFeatureListingComponent, TechlifyFeatureEnabledDirective]
|
|
28
|
+
},] }
|
|
29
|
+
];
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZmVhdHVyZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL3RlY2hsaWZ5LWZlYXR1cmUvdGVjaGxpZnktZmVhdHVyZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWdCcEQsTUFBTSxPQUFPLHFCQUFxQjs7O1lBZGpDLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixjQUFjO29CQUNkLGdCQUFnQjtvQkFDaEIscUJBQXFCO29CQUNyQixvQkFBb0I7b0JBQ3BCLFdBQVc7b0JBQ1gsbUJBQW1CO29CQUNuQixvQkFBb0I7aUJBQ3JCO2dCQUNELFlBQVksRUFBRSxDQUFDLCtCQUErQixFQUFFLG9CQUFvQixFQUFFLCtCQUErQixDQUFDO2dCQUN0RyxPQUFPLEVBQUUsQ0FBQywrQkFBK0IsRUFBRSwrQkFBK0IsQ0FBQzthQUM1RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGVjaGxpZnlGZWF0dXJlTGlzdGluZ0NvbXBvbmVudCB9IGZyb20gJy4vdGVjaGxpZnktZmVhdHVyZS1saXN0aW5nLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFRlY2hsaWZ5RmVhdHVyZVJvdXRlcyB9IGZyb20gJy4vdGVjaGxpZnktZmVhdHVyZS5yb3V0aW5nJztcbmltcG9ydCB7IE9uT2ZmU3dpdGNoQ29tcG9uZW50IH0gZnJvbSAnLi9vbi1vZmYtc3dpdGNoL29uLW9mZi1zd2l0Y2guY29tcG9uZW50JztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBUZWNobGlmeUZlYXR1cmVFbmFibGVkRGlyZWN0aXZlIH0gZnJvbSAnLi90ZWNobGlmeS1mZWF0dXJlLWVuYWJsZWQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEluZmluaXRlU2Nyb2xsTW9kdWxlIH0gZnJvbSAnbmd4LWluZmluaXRlLXNjcm9sbCc7XG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vbWF0ZXJpYWwubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxuICAgIFRlY2hsaWZ5RmVhdHVyZVJvdXRlcyxcbiAgICBNYXRTbGlkZVRvZ2dsZU1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEluZmluaXRlU2Nyb2xsTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1RlY2hsaWZ5RmVhdHVyZUxpc3RpbmdDb21wb25lbnQsIE9uT2ZmU3dpdGNoQ29tcG9uZW50LCBUZWNobGlmeUZlYXR1cmVFbmFibGVkRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW1RlY2hsaWZ5RmVhdHVyZUxpc3RpbmdDb21wb25lbnQsIFRlY2hsaWZ5RmVhdHVyZUVuYWJsZWREaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5RmVhdHVyZU1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RouterModule } from '@angular/router';
|
|
2
|
+
import { AuthenticationGuard } from '../core';
|
|
3
|
+
import { TechlifyFeatureListingComponent } from './techlify-feature-listing.component';
|
|
4
|
+
const routes = [
|
|
5
|
+
{
|
|
6
|
+
path: '',
|
|
7
|
+
component: TechlifyFeatureListingComponent,
|
|
8
|
+
canActivate: [AuthenticationGuard]
|
|
9
|
+
},
|
|
10
|
+
];
|
|
11
|
+
export const TechlifyFeatureRoutes = RouterModule.forChild(routes);
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZmVhdHVyZS5yb3V0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90ZWNobGlmeS1mZWF0dXJlL3RlY2hsaWZ5LWZlYXR1cmUucm91dGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzlDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXZGLE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsK0JBQStCO1FBQzFDLFdBQVcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO0tBQ25DO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbkd1YXJkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBUZWNobGlmeUZlYXR1cmVMaXN0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi90ZWNobGlmeS1mZWF0dXJlLWxpc3RpbmcuY29tcG9uZW50JztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBjb21wb25lbnQ6IFRlY2hsaWZ5RmVhdHVyZUxpc3RpbmdDb21wb25lbnQsXG4gICAgY2FuQWN0aXZhdGU6IFtBdXRoZW50aWNhdGlvbkd1YXJkXVxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFRlY2hsaWZ5RmVhdHVyZVJvdXRlcyA9IFJvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpO1xuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { DataManager } from '../core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../core/dataManager.service";
|
|
5
|
+
export class TechlifyFeatureService {
|
|
6
|
+
constructor(dataManager) {
|
|
7
|
+
this.dataManager = dataManager;
|
|
8
|
+
}
|
|
9
|
+
getFeatures() {
|
|
10
|
+
return this.dataManager.GET(`api/features`);
|
|
11
|
+
}
|
|
12
|
+
disableFeature(id) {
|
|
13
|
+
return this.dataManager.GET(`api/feature/${id}/disable`);
|
|
14
|
+
}
|
|
15
|
+
enableFeature(id) {
|
|
16
|
+
return this.dataManager.GET(`api/feature/${id}/enable`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
TechlifyFeatureService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TechlifyFeatureService_Factory() { return new TechlifyFeatureService(i0.ɵɵinject(i1.DataManager)); }, token: TechlifyFeatureService, providedIn: "root" });
|
|
20
|
+
TechlifyFeatureService.decorators = [
|
|
21
|
+
{ type: Injectable, args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
TechlifyFeatureService.ctorParameters = () => [
|
|
26
|
+
{ type: DataManager }
|
|
27
|
+
];
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZmVhdHVyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90ZWNobGlmeS1mZWF0dXJlL3RlY2hsaWZ5LWZlYXR1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7OztBQUt0QyxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUksQ0FBQztJQUVqRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsY0FBYyxDQUFDLEVBQU87UUFDcEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGFBQWEsQ0FBQyxFQUFPO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzFELENBQUM7Ozs7WUFqQkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFKUSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGF0YU1hbmFnZXIgfSBmcm9tICcuLi9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVGVjaGxpZnlGZWF0dXJlU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhTWFuYWdlcjogRGF0YU1hbmFnZXIpIHsgfVxuXG4gIGdldEZlYXR1cmVzKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGFNYW5hZ2VyLkdFVChgYXBpL2ZlYXR1cmVzYCk7XG4gIH1cblxuICBkaXNhYmxlRmVhdHVyZShpZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YU1hbmFnZXIuR0VUKGBhcGkvZmVhdHVyZS8ke2lkfS9kaXNhYmxlYCk7XG4gIH1cblxuICBlbmFibGVGZWF0dXJlKGlkOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhTWFuYWdlci5HRVQoYGFwaS9mZWF0dXJlLyR7aWR9L2VuYWJsZWApO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -24,7 +24,7 @@ export function calculateTimeline(value) {
|
|
|
24
24
|
}
|
|
25
25
|
case 4: { // This Week
|
|
26
26
|
var first = date.getDate() - date.getDay() + 1; // First day is the day of the month - the day of the week
|
|
27
|
-
var last = first + 6; // last day is the first day + 6
|
|
27
|
+
var last = first + 6; // last day is the first day + 6
|
|
28
28
|
data.date_from = new Date(date.setDate(first));
|
|
29
29
|
data.date_to = new Date(date.setDate(last));
|
|
30
30
|
break;
|
|
@@ -87,4 +87,4 @@ export function calculateTimeline(value) {
|
|
|
87
87
|
}
|
|
88
88
|
return data;
|
|
89
89
|
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRpbWVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90aW1lbGluZS1maWx0ZXIvY2FsY3VsYXRlLXRpbWVsaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUFVO0lBQ3hDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDeEIsTUFBTSxJQUFJLEdBQVE7UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixTQUFTLEVBQUUsSUFBSTtRQUNmLG1CQUFtQixFQUFFLEtBQUs7S0FDN0IsQ0FBQztJQUNGLFFBQVEsS0FBSyxFQUFFO1FBQ1gsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVE7WUFDZCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQzlCLE1BQU07U0FDVDtRQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTTtTQUNUO1FBQ0QsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVk7WUFDbEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDaEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDMUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7WUFDekIsTUFBTTtTQUNUO1FBQ0QsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVk7WUFDbEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxH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Q0FBQyxDQUFDO1lBQUEsQ0FBQztZQUNwRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRSxNQUFNO1lBQ04sTUFBTTtTQUNUO1FBQ0QsT0FBTyxDQUFDLENBQUMsRUFBRSxNQUFNO1lBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbEIsTUFBTTtTQUNUO0tBRUo7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVRpbWVsaW5lKHZhbHVlOiBhbnkpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB7XG4gICAgICAgICdkYXRlX2Zyb20nOiBkYXRlLFxuICAgICAgICAnZGF0ZV90byc6IGRhdGUsXG4gICAgICAgICdzaG93X2N1c3RvbV9maWVsZCc6IGZhbHNlXG4gICAgfTtcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICAgIGNhc2UgMTogeyAvL0N1c3RvbVxuICAgICAgICAgICAgZGF0YS5zaG93X2N1c3RvbV9maWVsZCA9IHRydWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDI6IHsgLy8gVG9kYXlcbiAgICAgICAgICAgIGRhdGEuZGF0ZV9mcm9tID0gZGF0ZTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IGRhdGU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDM6IHsgLy8gWWVzdGVyZGF5XG4gICAgICAgICAgICBjb25zdCB5ZXN0ZXJkYXkgPSBuZXcgRGF0ZShkYXRlKVxuICAgICAgICAgICAgeWVzdGVyZGF5LnNldERhdGUoeWVzdGVyZGF5LmdldERhdGUoKSAtIDEpXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHllc3RlcmRheTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IHllc3RlcmRheTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgNDogeyAvLyBUaGlzIFdlZWtcbiAgICAgICAgICAgIHZhciBmaXJzdCA9IGRhdGUuZ2V0RGF0ZSgpIC0gZGF0ZS5nZXREYXkoKSArIDE7IC8vIEZpcnN0IGRheSBpcyB0aGUgZGF5IG9mIHRoZSBtb250aCAtIHRoZSBkYXkgb2YgdGhlIHdlZWtcbiAgICAgICAgICAgIHZhciBsYXN0ID0gZmlyc3QgKyA2OyAvLyBsYXN0IGRheSBpcyB0aGUgZmlyc3QgZGF5ICsgNiAgIFxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLnNldERhdGUoZmlyc3QpKTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IG5ldyBEYXRlKGRhdGUuc2V0RGF0ZShsYXN0KSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDU6IHsgLy8gTGFzdCBXZWVrXG4gICAgICAgICAgICB2YXIgZCA9IG5ldyBEYXRlKCk7XG4gICAgICAgICAgICB2YXIgdG8gPSBkLnNldFRpbWUoZC5nZXRUaW1lKCkgLSAoZC5nZXREYXkoKSA/IGQuZ2V0RGF5KCkgOiA3KSAqIDI0ICogNjAgKiA2MCAqIDEwMDApO1xuICAgICAgICAgICAgdmFyIGZyb20gPSBkLnNldFRpbWUoZC5nZXRUaW1lKCkgLSA2ICogMjQgKiA2MCAqIDYwICogMTAwMCk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IG5ldyBEYXRlKGZyb20pO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gbmV3IERhdGUodG8pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSA2OiB7IC8vVGhpcyBNb250aFxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgMSk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSArIDEsIDApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSA3OiB7IC8vIExhc3QgTW9udGhcbiAgICAgICAgICAgIHZhciBkID0gbmV3IERhdGUoKTsgLy8gY3VycmVudCBkYXRlXG4gICAgICAgICAgICBkLnNldERhdGUoMSk7IC8vIGdvaW5nIHRvIDFzdCBvZiB0aGUgbW9udGhcbiAgICAgICAgICAgIGQuc2V0SG91cnMoLTEpO1xuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSAtIDEsIDEpO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gZDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgODogeyAvLyBUaGlzIFF1YXJ0ZXJcbiAgICAgICAgICAgIGNvbnN0IHF1YXJ0ZXIgPSBNYXRoLmZsb29yKChkYXRlLmdldE1vbnRoKCkgLyAzKSk7XG4gICAgICAgICAgICBjb25zdCBzdGFydEZ1bGxRdWFydGVyID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBxdWFydGVyICogMywgMSk7XG4gICAgICAgICAgICBjb25zdCBlbmRGdWxsUXVhcnRlciA9IG5ldyBEYXRlKHN0YXJ0RnVsbFF1YXJ0ZXIuZ2V0RnVsbFllYXIoKSwgc3RhcnRGdWxsUXVhcnRlci5nZXRNb250aCgpICsgMywgMCk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHN0YXJ0RnVsbFF1YXJ0ZXI7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBlbmRGdWxsUXVhcnRlcjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgOTogeyAvLyBMYXN0IFF1YXJ0ZXJcbiAgICAgICAgICAgIGNvbnN0IHF1YXJ0ZXIgPSBNYXRoLmZsb29yKChkYXRlLmdldE1vbnRoKCkgLyAzKSk7XG4gICAgICAgICAgICBjb25zdCBzdGFydEZ1bGxRdWFydGVyID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBxdWFydGVyICogMyAtIDMsIDEpO1xuICAgICAgICAgICAgY29uc3QgZW5kRnVsbFF1YXJ0ZXIgPSBuZXcgRGF0ZShzdGFydEZ1bGxRdWFydGVyLmdldEZ1bGxZZWFyKCksIHN0YXJ0RnVsbFF1YXJ0ZXIuZ2V0TW9udGgoKSArIDMsIDApXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHN0YXJ0RnVsbFF1YXJ0ZXI7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBlbmRGdWxsUXVhcnRlcjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgMTA6IHsgLy8gVGhpcyBZZWFyXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IG5ldyBEYXRlKFwiMS8xL1wiICsgKG5ldyBEYXRlKCkpLmdldEZ1bGxZZWFyKCkpOztcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IG5ldyBEYXRlKFwiMTIvMzEvXCIgKyAobmV3IERhdGUoKSkuZ2V0RnVsbFllYXIoKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDExOiB7IC8vIExhc3QgWWVhclxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShcIjEvMS9cIiArIChuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSAxKSk7O1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gbmV3IERhdGUoXCIxMi8zMS9cIiArIChuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSAxKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6IHsgLy8gQWxsXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9ICcnO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gJyc7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufSJdfQ==
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRpbWVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90aW1lbGluZS1maWx0ZXIvY2FsY3VsYXRlLXRpbWVsaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUFVO0lBQ3hDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDeEIsTUFBTSxJQUFJLEdBQVE7UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixTQUFTLEVBQUUsSUFBSTtRQUNmLG1CQUFtQixFQUFFLEtBQUs7S0FDN0IsQ0FBQztJQUNGLFFBQVEsS0FBSyxFQUFFO1FBQ1gsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVE7WUFDZCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQzlCLE1BQU07U0FDVDtRQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTTtTQUNUO1FBQ0QsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVk7WUFDbEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDaEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDMUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7WUFDekIsTUFBTTtTQUNUO1FBQ0QsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVk7WUFDbEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxH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Q0FBQyxDQUFDO1lBQUEsQ0FBQztZQUNwRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRSxNQUFNO1lBQ04sTUFBTTtTQUNUO1FBQ0QsT0FBTyxDQUFDLENBQUMsRUFBRSxNQUFNO1lBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbEIsTUFBTTtTQUNUO0tBRUo7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUaW1lbGluZVZhbHVlIHtcbiAgZGF0ZV9mcm9tOiBEYXRlLFxuICBkYXRlX3RvOiBEYXRlLFxuICBzaG93X2N1c3RvbV9maWVsZDogYm9vbGVhblxufVxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVRpbWVsaW5lKHZhbHVlOiBhbnkpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB7XG4gICAgICAgICdkYXRlX2Zyb20nOiBkYXRlLFxuICAgICAgICAnZGF0ZV90byc6IGRhdGUsXG4gICAgICAgICdzaG93X2N1c3RvbV9maWVsZCc6IGZhbHNlXG4gICAgfTtcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICAgIGNhc2UgMTogeyAvL0N1c3RvbVxuICAgICAgICAgICAgZGF0YS5zaG93X2N1c3RvbV9maWVsZCA9IHRydWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDI6IHsgLy8gVG9kYXlcbiAgICAgICAgICAgIGRhdGEuZGF0ZV9mcm9tID0gZGF0ZTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IGRhdGU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDM6IHsgLy8gWWVzdGVyZGF5XG4gICAgICAgICAgICBjb25zdCB5ZXN0ZXJkYXkgPSBuZXcgRGF0ZShkYXRlKVxuICAgICAgICAgICAgeWVzdGVyZGF5LnNldERhdGUoeWVzdGVyZGF5LmdldERhdGUoKSAtIDEpXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHllc3RlcmRheTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IHllc3RlcmRheTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgNDogeyAvLyBUaGlzIFdlZWtcbiAgICAgICAgICAgIHZhciBmaXJzdCA9IGRhdGUuZ2V0RGF0ZSgpIC0gZGF0ZS5nZXREYXkoKSArIDE7IC8vIEZpcnN0IGRheSBpcyB0aGUgZGF5IG9mIHRoZSBtb250aCAtIHRoZSBkYXkgb2YgdGhlIHdlZWtcbiAgICAgICAgICAgIHZhciBsYXN0ID0gZmlyc3QgKyA2OyAvLyBsYXN0IGRheSBpcyB0aGUgZmlyc3QgZGF5ICsgNlxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLnNldERhdGUoZmlyc3QpKTtcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IG5ldyBEYXRlKGRhdGUuc2V0RGF0ZShsYXN0KSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDU6IHsgLy8gTGFzdCBXZWVrXG4gICAgICAgICAgICB2YXIgZCA9IG5ldyBEYXRlKCk7XG4gICAgICAgICAgICB2YXIgdG8gPSBkLnNldFRpbWUoZC5nZXRUaW1lKCkgLSAoZC5nZXREYXkoKSA/IGQuZ2V0RGF5KCkgOiA3KSAqIDI0ICogNjAgKiA2MCAqIDEwMDApO1xuICAgICAgICAgICAgdmFyIGZyb20gPSBkLnNldFRpbWUoZC5nZXRUaW1lKCkgLSA2ICogMjQgKiA2MCAqIDYwICogMTAwMCk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IG5ldyBEYXRlKGZyb20pO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gbmV3IERhdGUodG8pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSA2OiB7IC8vVGhpcyBNb250aFxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgMSk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSArIDEsIDApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSA3OiB7IC8vIExhc3QgTW9udGhcbiAgICAgICAgICAgIHZhciBkID0gbmV3IERhdGUoKTsgLy8gY3VycmVudCBkYXRlXG4gICAgICAgICAgICBkLnNldERhdGUoMSk7IC8vIGdvaW5nIHRvIDFzdCBvZiB0aGUgbW9udGhcbiAgICAgICAgICAgIGQuc2V0SG91cnMoLTEpO1xuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSAtIDEsIDEpO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gZDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgODogeyAvLyBUaGlzIFF1YXJ0ZXJcbiAgICAgICAgICAgIGNvbnN0IHF1YXJ0ZXIgPSBNYXRoLmZsb29yKChkYXRlLmdldE1vbnRoKCkgLyAzKSk7XG4gICAgICAgICAgICBjb25zdCBzdGFydEZ1bGxRdWFydGVyID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBxdWFydGVyICogMywgMSk7XG4gICAgICAgICAgICBjb25zdCBlbmRGdWxsUXVhcnRlciA9IG5ldyBEYXRlKHN0YXJ0RnVsbFF1YXJ0ZXIuZ2V0RnVsbFllYXIoKSwgc3RhcnRGdWxsUXVhcnRlci5nZXRNb250aCgpICsgMywgMCk7XG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHN0YXJ0RnVsbFF1YXJ0ZXI7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBlbmRGdWxsUXVhcnRlcjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgOTogeyAvLyBMYXN0IFF1YXJ0ZXJcbiAgICAgICAgICAgIGNvbnN0IHF1YXJ0ZXIgPSBNYXRoLmZsb29yKChkYXRlLmdldE1vbnRoKCkgLyAzKSk7XG4gICAgICAgICAgICBjb25zdCBzdGFydEZ1bGxRdWFydGVyID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBxdWFydGVyICogMyAtIDMsIDEpO1xuICAgICAgICAgICAgY29uc3QgZW5kRnVsbFF1YXJ0ZXIgPSBuZXcgRGF0ZShzdGFydEZ1bGxRdWFydGVyLmdldEZ1bGxZZWFyKCksIHN0YXJ0RnVsbFF1YXJ0ZXIuZ2V0TW9udGgoKSArIDMsIDApXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IHN0YXJ0RnVsbFF1YXJ0ZXI7XG4gICAgICAgICAgICBkYXRhLmRhdGVfdG8gPSBlbmRGdWxsUXVhcnRlcjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgMTA6IHsgLy8gVGhpcyBZZWFyXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9IG5ldyBEYXRlKFwiMS8xL1wiICsgKG5ldyBEYXRlKCkpLmdldEZ1bGxZZWFyKCkpOztcbiAgICAgICAgICAgIGRhdGEuZGF0ZV90byA9IG5ldyBEYXRlKFwiMTIvMzEvXCIgKyAobmV3IERhdGUoKSkuZ2V0RnVsbFllYXIoKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDExOiB7IC8vIExhc3QgWWVhclxuICAgICAgICAgICAgZGF0YS5kYXRlX2Zyb20gPSBuZXcgRGF0ZShcIjEvMS9cIiArIChuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSAxKSk7O1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gbmV3IERhdGUoXCIxMi8zMS9cIiArIChuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSAxKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6IHsgLy8gQWxsXG4gICAgICAgICAgICBkYXRhLmRhdGVfZnJvbSA9ICcnO1xuICAgICAgICAgICAgZGF0YS5kYXRlX3RvID0gJyc7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuIl19
|