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.
Files changed (45) hide show
  1. package/bundles/ngx-techlify-core.umd.js +268 -96
  2. package/bundles/ngx-techlify-core.umd.js.map +1 -1
  3. package/bundles/ngx-techlify-core.umd.min.js +2 -2
  4. package/bundles/ngx-techlify-core.umd.min.js.map +1 -1
  5. package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +7 -9
  6. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +7 -9
  7. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +2 -2
  8. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +2 -2
  9. package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +11 -2
  10. package/esm2015/lib/searchable-selector/searchable-selector.component.js +34 -4
  11. package/esm2015/lib/techlify-feature/on-off-switch/on-off-switch.component.js +27 -0
  12. package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +78 -0
  13. package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +177 -0
  14. package/esm2015/lib/techlify-feature/techlify-feature.module.js +30 -0
  15. package/esm2015/lib/techlify-feature/techlify-feature.routing.js +12 -0
  16. package/esm2015/lib/techlify-feature/techlify-feature.service.js +28 -0
  17. package/esm2015/lib/timeline-filter/calculate-timeline.js +2 -2
  18. package/esm2015/lib/timeline-filter/timeline-filter.component.js +145 -16
  19. package/esm2015/ngx-techlify-core.js +6 -3
  20. package/esm2015/public-api.js +5 -6
  21. package/fesm2015/ngx-techlify-core.js +221 -61
  22. package/fesm2015/ngx-techlify-core.js.map +1 -1
  23. package/lib/login-history-for-user/login-history-for-user.component.d.ts +2 -0
  24. package/lib/searchable-selector/searchable-selector.component.d.ts +5 -0
  25. package/lib/{company-feature → techlify-feature}/on-off-switch/on-off-switch.component.d.ts +0 -0
  26. package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +17 -0
  27. package/lib/{company-feature/company-feature.component.d.ts → techlify-feature/techlify-feature-listing.component.d.ts} +7 -4
  28. package/lib/techlify-feature/techlify-feature.module.d.ts +2 -0
  29. package/lib/techlify-feature/techlify-feature.routing.d.ts +2 -0
  30. package/lib/{company-feature/company-feature.service.d.ts → techlify-feature/techlify-feature.service.d.ts} +1 -1
  31. package/lib/timeline-filter/calculate-timeline.d.ts +5 -0
  32. package/lib/timeline-filter/timeline-filter.component.d.ts +47 -6
  33. package/ngx-techlify-core.d.ts +5 -2
  34. package/ngx-techlify-core.metadata.json +1 -1
  35. package/package.json +1 -1
  36. package/public-api.d.ts +4 -5
  37. package/esm2015/lib/company-feature/company-feature.component.js +0 -174
  38. package/esm2015/lib/company-feature/company-feature.module.js +0 -30
  39. package/esm2015/lib/company-feature/company-feature.routing.js +0 -12
  40. package/esm2015/lib/company-feature/company-feature.service.js +0 -28
  41. package/esm2015/lib/company-feature/ngx-feature-enabled.directive.js +0 -77
  42. package/esm2015/lib/company-feature/on-off-switch/on-off-switch.component.js +0 -27
  43. package/lib/company-feature/company-feature.module.d.ts +0 -2
  44. package/lib/company-feature/company-feature.routing.d.ts +0 -2
  45. 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