@provoly/dashboard 1.1.8 → 1.1.10

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 (110) hide show
  1. package/admin/admin.module.d.ts +1 -1
  2. package/admin/components/admin-dataset/admin-edit-dataset/admin-edit-dataset.component.d.ts +3 -2
  3. package/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.d.ts +5 -3
  4. package/admin/components/admin-dataset/store/admin-dataset.actions.d.ts +76 -0
  5. package/admin/components/admin-dataset/store/admin-dataset.effects.d.ts +71 -0
  6. package/admin/components/admin-dataset/store/admin-dataset.reducer.d.ts +10 -0
  7. package/admin/components/admin-dataset/store/admin-dataset.selectors.d.ts +10 -0
  8. package/admin/components/admin-dataset/store/admin-dataset.service.d.ts +20 -0
  9. package/admin/store/admin.effects.d.ts +1 -14
  10. package/components/metadata-editor/store/metadata.effects.d.ts +1 -23
  11. package/components/stepper/stepper.component.d.ts +2 -1
  12. package/dataset/components/dataset-detail/dataset-detail.component.d.ts +5 -3
  13. package/esm2022/admin/admin.module.mjs +8 -2
  14. package/esm2022/admin/components/admin-dataset/admin-dataset.component.mjs +8 -6
  15. package/esm2022/admin/components/admin-dataset/admin-edit-dataset/admin-edit-dataset.component.mjs +5 -4
  16. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +33 -19
  17. package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +4 -3
  18. package/esm2022/admin/components/admin-dataset/store/admin-dataset.actions.mjs +17 -0
  19. package/esm2022/admin/components/admin-dataset/store/admin-dataset.effects.mjs +104 -0
  20. package/esm2022/admin/components/admin-dataset/store/admin-dataset.reducer.mjs +29 -0
  21. package/esm2022/admin/components/admin-dataset/store/admin-dataset.selectors.mjs +19 -0
  22. package/esm2022/admin/components/admin-dataset/store/admin-dataset.service.mjs +56 -0
  23. package/esm2022/admin/store/admin.effects.mjs +9 -36
  24. package/esm2022/components/metadata-editor/store/metadata.effects.mjs +4 -23
  25. package/esm2022/components/stepper/stepper.component.mjs +11 -8
  26. package/esm2022/dataset/components/dataset-card/dataset-card.component.mjs +1 -1
  27. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +18 -9
  28. package/esm2022/dataset/components/dataset.component.mjs +3 -2
  29. package/esm2022/import/components/import.component.mjs +101 -61
  30. package/esm2022/import/i18n/en.translations.mjs +3 -2
  31. package/esm2022/import/i18n/fr.translations.mjs +3 -2
  32. package/esm2022/import/style/css.component.mjs +2 -2
  33. package/esm2022/lib/core/access/access.service.mjs +7 -1
  34. package/esm2022/lib/core/components/share/access-rights-share/access-rights-share.component.mjs +23 -10
  35. package/esm2022/lib/core/components/share/access-rights-share-modal/access-rights-share-modal.component.mjs +92 -0
  36. package/esm2022/lib/core/components/share/share.module.mjs +39 -6
  37. package/esm2022/lib/core/i18n/fr.translations.mjs +2 -2
  38. package/esm2022/lib/core/public-api.mjs +2 -1
  39. package/esm2022/lib/core/store/data-source/data-source.actions.mjs +1 -15
  40. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +1 -39
  41. package/esm2022/lib/core/store/data-source/data-source.reducer.mjs +8 -29
  42. package/esm2022/lib/core/store/data-source/data-source.selectors.mjs +1 -9
  43. package/esm2022/lib/core/store/data-source/data-source.service.mjs +1 -36
  44. package/esm2022/presentation/components/presentation.component.mjs +14 -92
  45. package/esm2022/restitution/components/restitution/restitution.component.mjs +4 -3
  46. package/esm2022/restitution/components/restitution-list/restitution-list.component.mjs +10 -23
  47. package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +4 -16
  48. package/esm2022/restitution/i18n/en.translations.mjs +2 -1
  49. package/esm2022/restitution/i18n/fr.translations.mjs +2 -1
  50. package/esm2022/restitution/style/css.component.mjs +2 -2
  51. package/esm2022/toolbox/components/delete/delete.component.mjs +3 -3
  52. package/esm2022/toolbox/components/edit-mode-action/edit-mode-action.component.mjs +3 -3
  53. package/esm2022/toolbox/components/save-view/save-view.component.mjs +3 -3
  54. package/esm2022/toolbox/components/share/share.component.mjs +18 -75
  55. package/esm2022/toolbox/components/switch-to-edit-content/switch-to-edit-content.component.mjs +3 -3
  56. package/esm2022/toolbox/components/toolbox-action/toolbox-action.component.mjs +10 -7
  57. package/esm2022/toolbox/components/toolbox.component.mjs +15 -12
  58. package/esm2022/toolbox/toolbox.model.mjs +3 -3
  59. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +5 -2
  60. package/esm2022/widgets/widget-vega/style/css.component.mjs +2 -2
  61. package/fesm2022/provoly-dashboard-admin.mjs +238 -47
  62. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  63. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +4 -21
  64. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
  65. package/fesm2022/provoly-dashboard-components-stepper.mjs +10 -7
  66. package/fesm2022/provoly-dashboard-components-stepper.mjs.map +1 -1
  67. package/fesm2022/provoly-dashboard-dataset.mjs +19 -9
  68. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  69. package/fesm2022/provoly-dashboard-import.mjs +106 -65
  70. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  71. package/fesm2022/provoly-dashboard-presentation.mjs +13 -91
  72. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  73. package/fesm2022/provoly-dashboard-restitution.mjs +13 -34
  74. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  75. package/fesm2022/provoly-dashboard-toolbox.mjs +54 -100
  76. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  77. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +4 -1
  78. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  79. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs +2 -2
  80. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs.map +1 -1
  81. package/fesm2022/provoly-dashboard.mjs +158 -148
  82. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  83. package/import/components/import.component.d.ts +31 -18
  84. package/import/i18n/en.translations.d.ts +2 -1
  85. package/import/i18n/fr.translations.d.ts +2 -1
  86. package/import/style/_o-import.scss +16 -29
  87. package/lib/core/access/access.service.d.ts +5 -0
  88. package/lib/core/components/share/access-rights-share/access-rights-share.component.d.ts +5 -2
  89. package/lib/core/components/share/access-rights-share-modal/access-rights-share-modal.component.d.ts +34 -0
  90. package/lib/core/components/share/share.module.d.ts +9 -8
  91. package/lib/core/public-api.d.ts +1 -0
  92. package/lib/core/store/data-source/data-source.actions.d.ts +1 -91
  93. package/lib/core/store/data-source/data-source.effects.d.ts +2 -30
  94. package/lib/core/store/data-source/data-source.reducer.d.ts +0 -3
  95. package/lib/core/store/data-source/data-source.selectors.d.ts +0 -4
  96. package/lib/core/store/data-source/data-source.service.d.ts +0 -9
  97. package/package.json +37 -37
  98. package/presentation/components/presentation.component.d.ts +4 -18
  99. package/restitution/components/restitution/restitution.component.d.ts +1 -0
  100. package/restitution/components/restitution-list/restitution-list.component.d.ts +3 -9
  101. package/restitution/components/restitution-list-item/restitution-list-item.component.d.ts +1 -4
  102. package/restitution/i18n/en.translations.d.ts +1 -0
  103. package/restitution/i18n/fr.translations.d.ts +1 -0
  104. package/restitution/style/_o-restitution-list.scss +0 -11
  105. package/styles/components/_o-modal.scss +1 -1
  106. package/styles-theme/components-theme/_o-restitution-list.theme.scss +0 -9
  107. package/toolbox/components/share/share.component.d.ts +4 -22
  108. package/toolbox/components/toolbox-action/toolbox-action.component.d.ts +3 -1
  109. package/toolbox/components/toolbox.component.d.ts +3 -2
  110. package/widgets/widget-vega/style/_o-widget-vega.scss +9 -0
@@ -1,9 +1,12 @@
1
- import { Component } from '@angular/core';
2
- import { DashboardSelectors, DataSourceActions, DataSourceSelectors, PryVisibilityType, SubscriptionnerDirective } from '@provoly/dashboard';
1
+ import { Component, Inject, Optional } from '@angular/core';
2
+ import { DashboardSelectors, DataSourceSelectors, PRY_ACCESS_TOKEN, PryVisibilityType, SubscriptionnerDirective } from '@provoly/dashboard';
3
3
  import { MetadataActions, MetadataSelectors } from '@provoly/dashboard/components/metadata-editor';
4
- import { BehaviorSubject, combineLatest, map, Subscription, withLatestFrom } from 'rxjs';
4
+ import { BehaviorSubject, combineLatest, map, of, Subscription, withLatestFrom } from 'rxjs';
5
+ import { concatLatestFrom } from '@ngrx/operators';
5
6
  import { AdminActions } from '../../../store/admin.actions';
6
7
  import { AdminSelectors } from '../../../store/admin.selectors';
8
+ import { AdminDatasetActions } from '../store/admin-dataset.actions';
9
+ import { AdminDatasetSelectors } from '../store/admin-dataset.selectors';
7
10
  import * as i0 from "@angular/core";
8
11
  import * as i1 from "@ngrx/store";
9
12
  import * as i2 from "@angular/router";
@@ -14,23 +17,24 @@ import * as i6 from "@provoly/dashboard/components/metadata-editor";
14
17
  import * as i7 from "../../association/association.component";
15
18
  export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
16
19
  static { this.id = 'AdminSelectDatasetComponent'; }
17
- constructor(store, router, route, i18n) {
20
+ constructor(store, router, route, i18n, access) {
18
21
  super();
19
22
  this.store = store;
20
23
  this.router = router;
21
24
  this.route = route;
22
25
  this.i18n = i18n;
26
+ this.access = access;
23
27
  this.sub = new Subscription();
24
28
  this.currentTypeTranslation = '';
25
29
  this.accessGroups = [];
26
30
  this.shareRadioValue$ = new BehaviorSubject(undefined);
27
31
  this.disableShareButton$ = new BehaviorSubject(false);
28
32
  this.store.dispatch(MetadataActions.loadMetadata());
29
- this.selectedDataset$ = this.store.select(DataSourceSelectors.selectedDataset);
30
- this.datasetMetadata$ = this.store.select(DataSourceSelectors.selectedDatasetMetadata);
33
+ this.selectedDataset$ = this.store.select(AdminDatasetSelectors.selectedDataset);
34
+ this.datasetMetadata$ = this.store.select(AdminDatasetSelectors.selectedDatasetMetadata);
31
35
  this.associations$ = this.store.select(AdminSelectors.selectedAssociation);
32
36
  this.editable$ = this.store.select(MetadataSelectors.editable);
33
- this.selectedDatasetMissingGroups$ = this.store.select(DataSourceSelectors.selectedDatasetMissingGroups);
37
+ this.selectedDatasetMissingGroups$ = this.store.select(AdminDatasetSelectors.selectedDatasetMissingGroups);
34
38
  this.missingGroups$ = this.selectedDatasetMissingGroups$.pipe(withLatestFrom(this.store.select(DashboardSelectors.manifestsList)), map(([conflict, manifests]) => {
35
39
  const result = {};
36
40
  Object.keys(conflict ?? {}).forEach((entityId) => {
@@ -43,13 +47,15 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
43
47
  }));
44
48
  }
45
49
  ngOnInit() {
46
- this.subscriptions.add(combineLatest([this.selectedDataset$, this.store.select(DataSourceSelectors.datasetVersions)]).subscribe(([dataset, versions]) => {
50
+ this.subscriptions.add(combineLatest([this.selectedDataset$, this.store.select(DataSourceSelectors.datasetVersions)])
51
+ .pipe(concatLatestFrom(([dataset, versions]) => (dataset ? this.canModify$(dataset) : of(false))))
52
+ .subscribe(([[dataset, versions], canModify]) => {
47
53
  if (dataset) {
48
- this.accessGroups = dataset?.groups ?? [];
54
+ this.accessGroups = dataset.groups ?? [];
49
55
  const editPath = this.router.createUrlTree(['.', 'dataset', 'edit', dataset.id], {
50
56
  relativeTo: this.route
51
57
  });
52
- if (dataset.owner) {
58
+ if (canModify) {
53
59
  this.store.dispatch(AdminActions.mainActions({
54
60
  actions: [
55
61
  {
@@ -61,7 +67,7 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
61
67
  actionAccess: 'write'
62
68
  },
63
69
  {
64
- action: DataSourceActions.dataset.confirmDataSourceDeletion({
70
+ action: AdminDatasetActions.confirmDatasetDeletion({
65
71
  name: dataset.id,
66
72
  route: this.router.createUrlTree(['.', 'dataset'], { relativeTo: this.route }).toString(),
67
73
  addRoute: this.router
@@ -88,7 +94,7 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
88
94
  }
89
95
  closePanel() {
90
96
  const path = this.router.createUrlTree(['.', 'dataset', 'new'], { relativeTo: this.route });
91
- this.store.dispatch(DataSourceActions.dataset.unselectDataset());
97
+ this.store.dispatch(AdminDatasetActions.unselectDataset());
92
98
  this.store.dispatch(AdminActions.togglePanel({ panelOpen: false }));
93
99
  this.store.dispatch(AdminActions.mainActions({
94
100
  actions: [
@@ -114,7 +120,7 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
114
120
  }));
115
121
  }
116
122
  share(dataset) {
117
- this.store.dispatch(DataSourceActions.dataset.update({ dataset: { ...dataset, groups: this.accessGroups }, route: '' }));
123
+ this.store.dispatch(AdminDatasetActions.update({ dataset: { ...dataset, groups: this.accessGroups }, route: '' }));
118
124
  }
119
125
  getGroupLabel(groupName) {
120
126
  const i18nBase = '@pry.components.chipsSelector.share.groups.';
@@ -124,7 +130,7 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
124
130
  changeGroup($event) {
125
131
  this.accessGroups = $event;
126
132
  this.updateDisableButtonValue();
127
- this.store.dispatch(DataSourceActions.dataset.setMissingGroups({ missingGroups: undefined }));
133
+ this.store.dispatch(AdminDatasetActions.setMissingGroups({ missingGroups: undefined }));
128
134
  }
129
135
  updateVisibility($event) {
130
136
  this.shareRadioValue$.next($event);
@@ -140,11 +146,19 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
140
146
  }
141
147
  }
142
148
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
144
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: AdminSelectDatasetComponent, selector: "pry-admin-select-dataset", usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"changeGroup($event)\" (radioValueChange)=\"updateVisibility($event)\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\" [disabled]=\"disableShareButton$ | async\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"], outputs: ["clickedTabIdx"] }, { kind: "component", type: i3.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "component", type: i3.PryGroupShareComponent, selector: "pry-group-share", inputs: ["disableRadios", "allowedGroups"], outputs: ["radioValueChange"] }, { kind: "component", type: i7.PryAssociationComponent, selector: "pry-association", inputs: ["associations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
149
+ canModify$(dataset) {
150
+ return this.access ? this.access.canModifyDataset(dataset) : of(false);
151
+ }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.PryI18nService }, { token: PRY_ACCESS_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
153
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: AdminSelectDatasetComponent, selector: "pry-admin-select-dataset", usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"canModify$(dataset) | async\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share\n [ngModel]=\"dataset.groups\"\n (ngModelChange)=\"changeGroup($event)\"\n (radioValueChange)=\"updateVisibility($event)\"\n ></pry-group-share>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary u-self-end\"\n #submit\n (click)=\"share(dataset)\"\n [disabled]=\"disableShareButton$ | async\"\n >\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if (selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if (missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for (missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for (group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"], outputs: ["clickedTabIdx"] }, { kind: "component", type: i3.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "component", type: i3.PryGroupShareComponent, selector: "pry-group-share", inputs: ["disableRadios", "allowedGroups"], outputs: ["radioValueChange"] }, { kind: "component", type: i7.PryAssociationComponent, selector: "pry-association", inputs: ["associations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
145
154
  }
146
155
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, decorators: [{
147
156
  type: Component,
148
- args: [{ selector: 'pry-admin-select-dataset', template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"changeGroup($event)\" (radioValueChange)=\"updateVisibility($event)\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\" [disabled]=\"disableShareButton$ | async\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n" }]
149
- }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.PryI18nService }] });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBRUwsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFJbkIsaUJBQWlCLEVBQ2pCLHdCQUF3QixFQUN6QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sK0NBQStDLENBQUM7QUFDbEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7O0FBVWhFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx3QkFBd0I7YUFDaEUsT0FBRSxHQUFHLDZCQUE2QixBQUFoQyxDQUFpQztJQWExQyxZQUNVLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxLQUFxQixFQUNyQixJQUFvQjtRQUU1QixLQUFLLEVBQUUsQ0FBQztR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WUFBWSxHQUFHLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxNQUF5QjtRQUN4QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssaUJBQWlCLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUN4QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzs4R0FqS1UsMkJBQTJCO2tHQUEzQiwyQkFBMkIsdUZDNUJ4QywwNEZBb0VBOzsyRkR4Q2EsMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNFLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBBc3NvY2lhdGlvbnMsXG4gIERhc2hib2FyZFNlbGVjdG9ycyxcbiAgRGF0YXNldCxcbiAgRGF0YVNvdXJjZUFjdGlvbnMsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIE1ldGFkYXRhVmFsdWUsXG4gIE1pc3NpbmdHcm91cHNCeUVudGl0eSxcbiAgUHJ5STE4blNlcnZpY2UsXG4gIFByeVZpc2liaWxpdHlUeXBlLFxuICBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmVcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IE1ldGFkYXRhQWN0aW9ucywgTWV0YWRhdGFTZWxlY3RvcnMsIE1ldGFFdmVudFR5cGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9tZXRhZGF0YS1lZGl0b3InO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuaW1wb3J0IHsgQWRtaW5TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9hZG1pbi5zZWxlY3RvcnMnO1xuXG5pbnRlcmZhY2UgTWlzc2luZ0dyb3VwcyB7XG4gIFtrZXk6IHN0cmluZ106IHsgZ3JvdXBzOiBzdHJpbmdbXTsgZW50aXR5TmFtZTogc3RyaW5nIH07XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ByeS1hZG1pbi1zZWxlY3QtZGF0YXNldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQWRtaW5TZWxlY3REYXRhc2V0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBzdGF0aWMgaWQgPSAnQWRtaW5TZWxlY3REYXRhc2V0Q29tcG9uZW50JztcbiAgc2VsZWN0ZWREYXRhc2V0JDogT2JzZXJ2YWJsZTxEYXRhc2V0IHwgbnVsbD47XG4gIGFzc29jaWF0aW9ucyQ6IE9ic2VydmFibGU8QXNzb2NpYXRpb25zIHwgdW5kZWZpbmVkPjtcbiAgc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICBjdXJyZW50VHlwZVRyYW5zbGF0aW9uID0gJyc7XG4gIGRhdGFzZXRNZXRhZGF0YSQ6IE9ic2VydmFibGU8TWV0YWRhdGFWYWx1ZVtdPjtcbiAgZWRpdGFibGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBhY2Nlc3NHcm91cHM6IHN0cmluZ1tdID0gW107XG4gIHNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMkOiBPYnNlcnZhYmxlPE1pc3NpbmdHcm91cHNCeUVudGl0eSB8IHVuZGVmaW5lZD47XG4gIG1pc3NpbmdHcm91cHMkOiBPYnNlcnZhYmxlPE1pc3NpbmdHcm91cHMgfCB1bmRlZmluZWQ+O1xuICBzaGFyZVJhZGlvVmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQcnlWaXNpYmlsaXR5VHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgZGlzYWJsZVNoYXJlQnV0dG9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGkxOG46IFByeUkxOG5TZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChNZXRhZGF0YUFjdGlvbnMubG9hZE1ldGFkYXRhKCkpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRhc2V0JCA9IHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuc2VsZWN0ZWREYXRhc2V0KTtcbiAgICB0aGlzLmRhdGFzZXRNZXRhZGF0YSQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldE1ldGFkYXRhKTtcbiAgICB0aGlzLmFzc29jaWF0aW9ucyQgPSB0aGlzLnN0b3JlLnNlbGVjdChBZG1pblNlbGVjdG9ycy5zZWxlY3RlZEFzc29jaWF0aW9uKTtcbiAgICB0aGlzLmVkaXRhYmxlJCA9IHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLmVkaXRhYmxlKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzKTtcbiAgICB0aGlzLm1pc3NpbmdHcm91cHMkID0gdGhpcy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzJC5waXBlKFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLm1hbmlmZXN0c0xpc3QpKSxcbiAgICAgIG1hcCgoW2NvbmZsaWN0LCBtYW5pZmVzdHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiB7IGdyb3Vwczogc3RyaW5nW107IGVudGl0eU5hbWU6IHN0cmluZyB9IH0gPSB7fTtcbiAgICAgICAgT2JqZWN0LmtleXMoY29uZmxpY3QgPz8ge30pLmZvckVhY2goKGVudGl0eUlkKSA9PiB7XG4gICAgICAgICAgcmVzdWx0W2VudGl0eUlkXSA9IHtcbiAgICAgICAgICAgIGdyb3VwczogY29uZmxpY3Q/LltlbnRpdHlJZF0gPz8gW10sXG4gICAgICAgICAgICBlbnRpdHlOYW1lOiBtYW5pZmVzdHMuZmluZCgobSkgPT4gbS5pZCA9PT0gZW50aXR5SWQpPy5uYW1lID8/IGVudGl0eUlkXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhyZXN1bHQpLmxlbmd0aCA+IDAgPyByZXN1bHQgOiB1bmRlZmluZWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5zZWxlY3RlZERhdGFzZXQkLCB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmRhdGFzZXRWZXJzaW9ucyldKS5zdWJzY3JpYmUoXG4gICAgICAgIChbZGF0YXNldCwgdmVyc2lvbnNdKSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGFzZXQpIHtcbiAgICAgICAgICAgIHRoaXMuYWNjZXNzR3JvdXBzID0gZGF0YXNldD8uZ3JvdXBzID8/IFtdO1xuICAgICAgICAgICAgY29uc3QgZWRpdFBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ2VkaXQnLCBkYXRhc2V0LmlkXSwge1xuICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChkYXRhc2V0Lm93bmVyKSB7XG4gICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBlZGl0UGF0aC50b1N0cmluZygpIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2VkaXQnLFxuICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuY29uZmlybURhdGFTb3VyY2VEZWxldGlvbih7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBkYXRhc2V0LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGU6IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBhZGRSb3V0ZTogdGhpcy5yb3V0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnLCAnbmV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAudG9TdHJpbmcoKVxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICAgICAgICAgICAgcGFnZUFjY2VzczogJ2RhdGFzZXQnLFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogdmVyc2lvbnMuZmlsdGVyKCh2KSA9PiB2LmRhdGFzZXQgPT09IGRhdGFzZXQuaWQpLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgIEFkbWluQWN0aW9ucy5tYWluQWN0aW9ucyh7XG4gICAgICAgICAgICAgICAgICBhY3Rpb25zOiBbXVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGNsb3NlUGFuZWwoKSB7XG4gICAgY29uc3QgcGF0aCA9IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnLCAnbmV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudW5zZWxlY3REYXRhc2V0KCkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQWRtaW5BY3Rpb25zLnRvZ2dsZVBhbmVsKHsgcGFuZWxPcGVuOiBmYWxzZSB9KSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIEFkbWluQWN0aW9ucy5tYWluQWN0aW9ucyh7XG4gICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhY3Rpb246IEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogcGF0aC50b1N0cmluZygpIH0pLFxuICAgICAgICAgICAgbGFiZWw6ICdhZGQnLFxuICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgcGFnZUFjY2VzczogJ21ldGFkYXRhX3J1bGVzJyxcbiAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlTWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgTWV0YWRhdGFBY3Rpb25zLmRlbGV0ZURhdGFzZXRNZXRhZGF0YSh7IGRhdGFzZXRJZDogbWV0YWRhdGEuaWQsIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWQgfSlcbiAgICApO1xuICB9XG5cbiAgYWRkRGF0YXNldE1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIE1ldGFkYXRhQWN0aW9ucy5hZGREYXRhc2V0TWV0YWRhdGEoe1xuICAgICAgICBkYXRhc2V0SWQ6IG1ldGFkYXRhLmlkLFxuICAgICAgICBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkLFxuICAgICAgICB2YWx1ZTogbWV0YWRhdGEudmFsdWVcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHNoYXJlKGRhdGFzZXQ6IERhdGFzZXQpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51cGRhdGUoeyBkYXRhc2V0OiB7IC4uLmRhdGFzZXQsIGdyb3VwczogdGhpcy5hY2Nlc3NHcm91cHMgfSwgcm91dGU6ICcnIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEdyb3VwTGFiZWwoZ3JvdXBOYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBpMThuQmFzZSA9ICdAcHJ5LmNvbXBvbmVudHMuY2hpcHNTZWxlY3Rvci5zaGFyZS5ncm91cHMuJztcbiAgICBjb25zdCBsYWJlbCA9IHRoaXMuaTE4bi5pbnN0YW50KGkxOG5CYXNlICsgZ3JvdXBOYW1lKTtcbiAgICByZXR1cm4gbGFiZWwuc3RhcnRzV2l0aChpMThuQmFzZSkgPyBncm91cE5hbWUgOiBsYWJlbDtcbiAgfVxuXG4gIGNoYW5nZUdyb3VwKCRldmVudDogc3RyaW5nW10pIHtcbiAgICB0aGlzLmFjY2Vzc0dyb3VwcyA9ICRldmVudDtcbiAgICB0aGlzLnVwZGF0ZURpc2FibGVCdXR0b25WYWx1ZSgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5zZXRNaXNzaW5nR3JvdXBzKHsgbWlzc2luZ0dyb3VwczogdW5kZWZpbmVkIH0pKTtcbiAgfVxuXG4gIHVwZGF0ZVZpc2liaWxpdHkoJGV2ZW50OiBQcnlWaXNpYmlsaXR5VHlwZSkge1xuICAgIHRoaXMuc2hhcmVSYWRpb1ZhbHVlJC5uZXh0KCRldmVudCk7XG4gICAgdGhpcy51cGRhdGVEaXNhYmxlQnV0dG9uVmFsdWUoKTtcbiAgfVxuXG4gIHVwZGF0ZURpc2FibGVCdXR0b25WYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5zaGFyZVJhZGlvVmFsdWUkLmdldFZhbHVlKCkgPT09IFByeVZpc2liaWxpdHlUeXBlLlJFU1RSSUNURUQgJiYgdGhpcy5hY2Nlc3NHcm91cHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmRpc2FibGVTaGFyZUJ1dHRvbiQubmV4dCh0cnVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZVNoYXJlQnV0dG9uJC5nZXRWYWx1ZSgpKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZVNoYXJlQnV0dG9uJC5uZXh0KGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJzZWxlY3RlZERhdGFzZXQkIHwgYXN5bmMgYXMgZGF0YXNldFwiXG4gIFtpZF09XCIncGFuZWwtZGF0YXNldC0nICsgZGF0YXNldC5pZFwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCInYnV0dG9uLWRhdGFzZXQtJyArIGRhdGFzZXQuaWRcIlxuICBjbGFzcz1cIm8tcGFuZWwgby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RcIlxuPlxuICA8ZGl2IGNsYXNzPVwiby1wYW5lbF9faGVhZGVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0taWNvbi1vbmx5XCIgKGNsaWNrKT1cImNsb3NlUGFuZWwoKVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPnt7ICdAcHJ5LmFjdGlvbi5jbG9zZVBhbmVsJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICA8cHJ5LWljb24gaWNvblN2Zz1cImNsb3NlXCI+PC9wcnktaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxoMyBjbGFzcz1cImEtaDNcIj5cbiAgICAgIHt7ICdAcHJ5LmFkbWluLmRhdGFzZXQuZGV0YWlscycgfCBpMThuIH19XG4gICAgPC9oMz5cbiAgPC9kaXY+XG5cbiAgPHByeS10YWItZ3JvdXAgdHJhbnNsYXRpb25TdHJpbmdCYXNlPVwiQHByeS5hZG1pbi5cIj5cbiAgICA8cHJ5LXRhYiBbdGVtcGxhdGVSZWZdPVwiZGF0YXNldE1ldGFkYXRhXCIgbmFtZT1cIm1ldGFkYXRhLnRpdGxlXCI+PC9wcnktdGFiPlxuICAgIDxwcnktdGFiIFt0ZW1wbGF0ZVJlZl09XCJkYXRhc2V0QXNzb2NpYXRpb25zXCIgbmFtZT1cImNsYXNzZXMuYXNzb2NpYXRpb25zXCI+PC9wcnktdGFiPlxuICAgIDxwcnktdGFiICpuZ0lmPVwiZGF0YXNldC5vd25lclwiIFt0ZW1wbGF0ZVJlZl09XCJzaGFyZURhdGFzZXRcIiBuYW1lPVwic2hhcmVcIj48L3ByeS10YWI+XG4gIDwvcHJ5LXRhYi1ncm91cD5cblxuICA8bmctdGVtcGxhdGUgI2RhdGFzZXRNZXRhZGF0YT5cbiAgICA8cHJ5LW1ldGFkYXRhLWVkaXRvclxuICAgICAgW3RhcmdldElkXT1cIihzZWxlY3RlZERhdGFzZXQkIHwgYXN5bmMpPy5pZCA/PyAnJ1wiXG4gICAgICBbaXNNb2RpZmljYXRpb25dPVwiKGVkaXRhYmxlJCB8IGFzeW5jKSA/PyBmYWxzZVwiXG4gICAgICBbbWV0YWRhdGFdPVwiKGRhdGFzZXRNZXRhZGF0YSQgfCBhc3luYykgPz8gW11cIlxuICAgICAgKHJlbW92ZU1ldGEpPVwicmVtb3ZlTWV0YWRhdGEoJGV2ZW50KVwiXG4gICAgICAoYWRkTWV0YSk9XCJhZGREYXRhc2V0TWV0YWRhdGEoJGV2ZW50KVwiXG4gICAgICBbdHlwZV09XCInbWV0YSdcIlxuICAgID48L3ByeS1tZXRhZGF0YS1lZGl0b3I+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0QXNzb2NpYXRpb25zPlxuICAgIDxkaXYgKm5nSWY9XCJhc3NvY2lhdGlvbnMkIHwgYXN5bmMgYXMgYXNzb2NpYXRpb25zXCIgY2xhc3M9XCJvLXRhYnNfX3BhbmVsc19faXRlbV9fY29udGVudFwiPlxuICAgICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7ICdAcHJ5LmFkbWluLmNsYXNzZXMuYXNzb2NpYXRpb25zJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPHByeS1hc3NvY2lhdGlvbiBbYXNzb2NpYXRpb25zXT1cImFzc29jaWF0aW9uc1wiPjwvcHJ5LWFzc29jaWF0aW9uPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjc2hhcmVEYXRhc2V0PlxuICAgIDxkaXYgY2xhc3M9XCJvLXByeS1hZG1pbi1kYXRhc2V0LXNlbGVjdF9fc2hhcmVcIj5cbiAgICAgIDxwcnktZ3JvdXAtc2hhcmUgW25nTW9kZWxdPVwiZGF0YXNldC5ncm91cHNcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VHcm91cCgkZXZlbnQpXCIgKHJhZGlvVmFsdWVDaGFuZ2UpPVwidXBkYXRlVmlzaWJpbGl0eSgkZXZlbnQpXCI+PC9wcnktZ3JvdXAtc2hhcmU+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5IHUtc2VsZi1lbmRcIiAjc3VibWl0IChjbGljayk9XCJzaGFyZShkYXRhc2V0KVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlU2hhcmVCdXR0b24kIHwgYXN5bmNcIj5cbiAgICAgICAge3sgJ0BwcnkuYWRtaW4udmFsaWRhdGUnIHwgaTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICBAaWYoc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQgfCBhc3luYykge1xuICAgICAgICA8aDQgY2xhc3M9XCJhLWg0XCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5zdWNjZXNzJyB8IGkxOG4gfX08L2g0PlxuICAgICAgfVxuICAgICAgQGlmKG1pc3NpbmdHcm91cHMkIHwgYXN5bmM7IGFzIG1pc3NpbmdHcm91cHMpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInUtZGlzcGxheS1mbGV4IC1jb2x1bW5cIj5cbiAgICAgICAgICA8c3Bhbj57eyAnQHByeS5hZG1pbi5kYXRhc2V0LmNvbmZsaWN0JyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgQGZvcihtaXNzaW5nIG9mIG1pc3NpbmdHcm91cHMgfCBrZXl2YWx1ZTsgdHJhY2sgbWlzc2luZy5rZXkpIHtcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIHt7ICdAcHJ5LmFkbWluLmRhdGFzZXQuZW50aXRpZXMuZGFzaGJvYXJkJyB8IGkxOG4gfX0gPHN0cm9uZz57eyBtaXNzaW5nLnZhbHVlLmVudGl0eU5hbWUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInUtZGlzcGxheS1mbGV4XCI+XG4gICAgICAgICAgICAgICAgQGZvcihncm91cCBvZiBtaXNzaW5nLnZhbHVlLmdyb3VwczsgdHJhY2sgZ3JvdXApIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYS1jaGlwXCI+e3sgZ2V0R3JvdXBMYWJlbChncm91cCkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
157
+ args: [{ selector: 'pry-admin-select-dataset', template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"canModify$(dataset) | async\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share\n [ngModel]=\"dataset.groups\"\n (ngModelChange)=\"changeGroup($event)\"\n (radioValueChange)=\"updateVisibility($event)\"\n ></pry-group-share>\n <button\n type=\"submit\"\n class=\"a-btn a-btn--primary u-self-end\"\n #submit\n (click)=\"share(dataset)\"\n [disabled]=\"disableShareButton$ | async\"\n >\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if (selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if (missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for (missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for (group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n" }]
158
+ }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.PryI18nService }, { type: i3.PryBaseAccess, decorators: [{
159
+ type: Optional
160
+ }, {
161
+ type: Inject,
162
+ args: [PRY_ACCESS_TOKEN]
163
+ }] }] });
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFFTCxrQkFBa0IsRUFFbEIsbUJBQW1CLEVBR25CLGdCQUFnQixFQUdoQixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsSCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFB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eEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekUsQ0FBQzs4R0FwS1UsMkJBQTJCLHlIQW1CaEIsZ0JBQWdCO2tHQW5CM0IsMkJBQTJCLHVGQ2hDeEMsby9GQThFQTs7MkZEOUNhLDJCQUEyQjtrQkFKdkMsU0FBUzsrQkFDRSwwQkFBMEI7OzBCQXNCakMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgQXNzb2NpYXRpb25zLFxuICBEYXNoYm9hcmRTZWxlY3RvcnMsXG4gIERhdGFzZXQsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIE1ldGFkYXRhVmFsdWUsXG4gIE1pc3NpbmdHcm91cHNCeUVudGl0eSxcbiAgUFJZX0FDQ0VTU19UT0tFTixcbiAgUHJ5QmFzZUFjY2VzcyxcbiAgUHJ5STE4blNlcnZpY2UsXG4gIFByeVZpc2liaWxpdHlUeXBlLFxuICBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmVcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IE1ldGFkYXRhQWN0aW9ucywgTWV0YWRhdGFTZWxlY3RvcnMsIE1ldGFFdmVudFR5cGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9tZXRhZGF0YS1lZGl0b3InO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24sIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb25jYXRMYXRlc3RGcm9tIH0gZnJvbSAnQG5ncngvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuaW1wb3J0IHsgQWRtaW5TZWxlY3RvcnMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9hZG1pbi5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgQWRtaW5EYXRhc2V0QWN0aW9ucyB9IGZyb20gJy4uL3N0b3JlL2FkbWluLWRhdGFzZXQuYWN0aW9ucyc7XG5pbXBvcnQgeyBBZG1pbkRhdGFzZXRTZWxlY3RvcnMgfSBmcm9tICcuLi9zdG9yZS9hZG1pbi1kYXRhc2V0LnNlbGVjdG9ycyc7XG5cbmludGVyZmFjZSBNaXNzaW5nR3JvdXBzIHtcbiAgW2tleTogc3RyaW5nXTogeyBncm91cHM6IHN0cmluZ1tdOyBlbnRpdHlOYW1lOiBzdHJpbmcgfTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLXNlbGVjdC1kYXRhc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBpZCA9ICdBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQnO1xuICBzZWxlY3RlZERhdGFzZXQkOiBPYnNlcnZhYmxlPERhdGFzZXQgfCBudWxsPjtcbiAgYXNzb2NpYXRpb25zJDogT2JzZXJ2YWJsZTxBc3NvY2lhdGlvbnMgfCB1bmRlZmluZWQ+O1xuICBzdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIGN1cnJlbnRUeXBlVHJhbnNsYXRpb24gPSAnJztcbiAgZGF0YXNldE1ldGFkYXRhJDogT2JzZXJ2YWJsZTxNZXRhZGF0YVZhbHVlW10+O1xuICBlZGl0YWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFjY2Vzc0dyb3Vwczogc3RyaW5nW10gPSBbXTtcbiAgc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3Vwc0J5RW50aXR5IHwgdW5kZWZpbmVkPjtcbiAgbWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3VwcyB8IHVuZGVmaW5lZD47XG4gIHNoYXJlUmFkaW9WYWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFByeVZpc2liaWxpdHlUeXBlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBkaXNhYmxlU2hhcmVCdXR0b24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgaTE4bjogUHJ5STE4blNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChQUllfQUNDRVNTX1RPS0VOKSBwcm90ZWN0ZWQgYWNjZXNzOiBQcnlCYXNlQWNjZXNzXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChNZXRhZGF0YUFjdGlvbnMubG9hZE1ldGFkYXRhKCkpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRhc2V0JCA9IHRoaXMuc3RvcmUuc2VsZWN0KEFkbWluRGF0YXNldFNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXQpO1xuICAgIHRoaXMuZGF0YXNldE1ldGFkYXRhJCA9IHRoaXMuc3RvcmUuc2VsZWN0KEFkbWluRGF0YXNldFNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXRNZXRhZGF0YSk7XG4gICAgdGhpcy5hc3NvY2lhdGlvbnMkID0gdGhpcy5zdG9yZS5zZWxlY3QoQWRtaW5TZWxlY3RvcnMuc2VsZWN0ZWRBc3NvY2lhdGlvbik7XG4gICAgdGhpcy5lZGl0YWJsZSQgPSB0aGlzLnN0b3JlLnNlbGVjdChNZXRhZGF0YVNlbGVjdG9ycy5lZGl0YWJsZSk7XG4gICAgdGhpcy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KEFkbWluRGF0YXNldFNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzKTtcbiAgICB0aGlzLm1pc3NpbmdHcm91cHMkID0gdGhpcy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzJC5waXBlKFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLm1hbmlmZXN0c0xpc3QpKSxcbiAgICAgIG1hcCgoW2NvbmZsaWN0LCBtYW5pZmVzdHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiB7IGdyb3Vwczogc3RyaW5nW107IGVudGl0eU5hbWU6IHN0cmluZyB9IH0gPSB7fTtcbiAgICAgICAgT2JqZWN0LmtleXMoY29uZmxpY3QgPz8ge30pLmZvckVhY2goKGVudGl0eUlkKSA9PiB7XG4gICAgICAgICAgcmVzdWx0W2VudGl0eUlkXSA9IHtcbiAgICAgICAgICAgIGdyb3VwczogY29uZmxpY3Q/LltlbnRpdHlJZF0gPz8gW10sXG4gICAgICAgICAgICBlbnRpdHlOYW1lOiBtYW5pZmVzdHMuZmluZCgobSkgPT4gbS5pZCA9PT0gZW50aXR5SWQpPy5uYW1lID8/IGVudGl0eUlkXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhyZXN1bHQpLmxlbmd0aCA+IDAgPyByZXN1bHQgOiB1bmRlZmluZWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5zZWxlY3RlZERhdGFzZXQkLCB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmRhdGFzZXRWZXJzaW9ucyldKVxuICAgICAgICAucGlwZShjb25jYXRMYXRlc3RGcm9tKChbZGF0YXNldCwgdmVyc2lvbnNdKSA9PiAoZGF0YXNldCA/IHRoaXMuY2FuTW9kaWZ5JChkYXRhc2V0KSA6IG9mKGZhbHNlKSkpKVxuICAgICAgICAuc3Vic2NyaWJlKChbW2RhdGFzZXQsIHZlcnNpb25zXSwgY2FuTW9kaWZ5XSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhc2V0KSB7XG4gICAgICAgICAgICB0aGlzLmFjY2Vzc0dyb3VwcyA9IGRhdGFzZXQuZ3JvdXBzID8/IFtdO1xuICAgICAgICAgICAgY29uc3QgZWRpdFBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ2VkaXQnLCBkYXRhc2V0LmlkXSwge1xuICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChjYW5Nb2RpZnkpIHtcbiAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGVkaXRQYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdlZGl0JyxcbiAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdkYXRhc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5EYXRhc2V0QWN0aW9ucy5jb25maXJtRGF0YXNldERlbGV0aW9uKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGRhdGFzZXQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZTogdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSkudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFkZFJvdXRlOiB0aGlzLnJvdXRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC50b1N0cmluZygpXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdkZWxldGUnLFxuICAgICAgICAgICAgICAgICAgICAgIGljb246ICdkZWxldGUnLFxuICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiB2ZXJzaW9ucy5maWx0ZXIoKHYpID0+IHYuZGF0YXNldCA9PT0gZGF0YXNldC5pZCkubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtdXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGNsb3NlUGFuZWwoKSB7XG4gICAgY29uc3QgcGF0aCA9IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnLCAnbmV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluRGF0YXNldEFjdGlvbnMudW5zZWxlY3REYXRhc2V0KCkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQWRtaW5BY3Rpb25zLnRvZ2dsZVBhbmVsKHsgcGFuZWxPcGVuOiBmYWxzZSB9KSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIEFkbWluQWN0aW9ucy5tYWluQWN0aW9ucyh7XG4gICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhY3Rpb246IEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogcGF0aC50b1N0cmluZygpIH0pLFxuICAgICAgICAgICAgbGFiZWw6ICdhZGQnLFxuICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgcGFnZUFjY2VzczogJ21ldGFkYXRhX3J1bGVzJyxcbiAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlTWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgTWV0YWRhdGFBY3Rpb25zLmRlbGV0ZURhdGFzZXRNZXRhZGF0YSh7IGRhdGFzZXRJZDogbWV0YWRhdGEuaWQsIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWQgfSlcbiAgICApO1xuICB9XG5cbiAgYWRkRGF0YXNldE1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIE1ldGFkYXRhQWN0aW9ucy5hZGREYXRhc2V0TWV0YWRhdGEoe1xuICAgICAgICBkYXRhc2V0SWQ6IG1ldGFkYXRhLmlkLFxuICAgICAgICBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkLFxuICAgICAgICB2YWx1ZTogbWV0YWRhdGEudmFsdWVcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHNoYXJlKGRhdGFzZXQ6IERhdGFzZXQpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluRGF0YXNldEFjdGlvbnMudXBkYXRlKHsgZGF0YXNldDogeyAuLi5kYXRhc2V0LCBncm91cHM6IHRoaXMuYWNjZXNzR3JvdXBzIH0sIHJvdXRlOiAnJyB9KSk7XG4gIH1cblxuICBnZXRHcm91cExhYmVsKGdyb3VwTmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgaTE4bkJhc2UgPSAnQHByeS5jb21wb25lbnRzLmNoaXBzU2VsZWN0b3Iuc2hhcmUuZ3JvdXBzLic7XG4gICAgY29uc3QgbGFiZWwgPSB0aGlzLmkxOG4uaW5zdGFudChpMThuQmFzZSArIGdyb3VwTmFtZSk7XG4gICAgcmV0dXJuIGxhYmVsLnN0YXJ0c1dpdGgoaTE4bkJhc2UpID8gZ3JvdXBOYW1lIDogbGFiZWw7XG4gIH1cblxuICBjaGFuZ2VHcm91cCgkZXZlbnQ6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5hY2Nlc3NHcm91cHMgPSAkZXZlbnQ7XG4gICAgdGhpcy51cGRhdGVEaXNhYmxlQnV0dG9uVmFsdWUoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluRGF0YXNldEFjdGlvbnMuc2V0TWlzc2luZ0dyb3Vwcyh7IG1pc3NpbmdHcm91cHM6IHVuZGVmaW5lZCB9KSk7XG4gIH1cblxuICB1cGRhdGVWaXNpYmlsaXR5KCRldmVudDogUHJ5VmlzaWJpbGl0eVR5cGUpIHtcbiAgICB0aGlzLnNoYXJlUmFkaW9WYWx1ZSQubmV4dCgkZXZlbnQpO1xuICAgIHRoaXMudXBkYXRlRGlzYWJsZUJ1dHRvblZhbHVlKCk7XG4gIH1cblxuICB1cGRhdGVEaXNhYmxlQnV0dG9uVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuc2hhcmVSYWRpb1ZhbHVlJC5nZXRWYWx1ZSgpID09PSBQcnlWaXNpYmlsaXR5VHlwZS5SRVNUUklDVEVEICYmIHRoaXMuYWNjZXNzR3JvdXBzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5kaXNhYmxlU2hhcmVCdXR0b24kLm5leHQodHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVTaGFyZUJ1dHRvbiQuZ2V0VmFsdWUoKSkge1xuICAgICAgICB0aGlzLmRpc2FibGVTaGFyZUJ1dHRvbiQubmV4dChmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2FuTW9kaWZ5JChkYXRhc2V0OiBEYXRhc2V0KSB7XG4gICAgcmV0dXJuIHRoaXMuYWNjZXNzID8gdGhpcy5hY2Nlc3MuY2FuTW9kaWZ5RGF0YXNldChkYXRhc2V0KSA6IG9mKGZhbHNlKTtcbiAgfVxufVxuIiwiPGRpdlxuICAqbmdJZj1cInNlbGVjdGVkRGF0YXNldCQgfCBhc3luYyBhcyBkYXRhc2V0XCJcbiAgW2lkXT1cIidwYW5lbC1kYXRhc2V0LScgKyBkYXRhc2V0LmlkXCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIididXR0b24tZGF0YXNldC0nICsgZGF0YXNldC5pZFwiXG4gIGNsYXNzPVwiby1wYW5lbCBvLXByeS1hZG1pbi1kYXRhc2V0LXNlbGVjdFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJvLXBhbmVsX19oZWFkZXJcIj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1pY29uLW9ubHlcIiAoY2xpY2spPVwiY2xvc2VQYW5lbCgpXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInUtdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0BwcnkuYWN0aW9uLmNsb3NlUGFuZWwnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGgzIGNsYXNzPVwiYS1oM1wiPlxuICAgICAge3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5kZXRhaWxzJyB8IGkxOG4gfX1cbiAgICA8L2gzPlxuICA8L2Rpdj5cblxuICA8cHJ5LXRhYi1ncm91cCB0cmFuc2xhdGlvblN0cmluZ0Jhc2U9XCJAcHJ5LmFkbWluLlwiPlxuICAgIDxwcnktdGFiIFt0ZW1wbGF0ZVJlZl09XCJkYXRhc2V0TWV0YWRhdGFcIiBuYW1lPVwibWV0YWRhdGEudGl0bGVcIj48L3ByeS10YWI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cImRhdGFzZXRBc3NvY2lhdGlvbnNcIiBuYW1lPVwiY2xhc3Nlcy5hc3NvY2lhdGlvbnNcIj48L3ByeS10YWI+XG4gICAgPHByeS10YWIgKm5nSWY9XCJjYW5Nb2RpZnkkKGRhdGFzZXQpIHwgYXN5bmNcIiBbdGVtcGxhdGVSZWZdPVwic2hhcmVEYXRhc2V0XCIgbmFtZT1cInNoYXJlXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0TWV0YWRhdGE+XG4gICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgIFt0YXJnZXRJZF09XCIoc2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jKT8uaWQgPz8gJydcIlxuICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cIihlZGl0YWJsZSQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgW21ldGFkYXRhXT1cIihkYXRhc2V0TWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgKGFkZE1ldGEpPVwiYWRkRGF0YXNldE1ldGFkYXRhKCRldmVudClcIlxuICAgICAgW3R5cGVdPVwiJ21ldGEnXCJcbiAgICA+PC9wcnktbWV0YWRhdGEtZWRpdG9yPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0YXNldEFzc29jaWF0aW9ucz5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzb2NpYXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0aW9uc1wiIGNsYXNzPVwiby10YWJzX19wYW5lbHNfX2l0ZW1fX2NvbnRlbnRcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyAnQHByeS5hZG1pbi5jbGFzc2VzLmFzc29jaWF0aW9ucycgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktYXNzb2NpYXRpb24gW2Fzc29jaWF0aW9uc109XCJhc3NvY2lhdGlvbnNcIj48L3ByeS1hc3NvY2lhdGlvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3NoYXJlRGF0YXNldD5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RfX3NoYXJlXCI+XG4gICAgICA8cHJ5LWdyb3VwLXNoYXJlXG4gICAgICAgIFtuZ01vZGVsXT1cImRhdGFzZXQuZ3JvdXBzXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlR3JvdXAoJGV2ZW50KVwiXG4gICAgICAgIChyYWRpb1ZhbHVlQ2hhbmdlKT1cInVwZGF0ZVZpc2liaWxpdHkoJGV2ZW50KVwiXG4gICAgICA+PC9wcnktZ3JvdXAtc2hhcmU+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5IHUtc2VsZi1lbmRcIlxuICAgICAgICAjc3VibWl0XG4gICAgICAgIChjbGljayk9XCJzaGFyZShkYXRhc2V0KVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlU2hhcmVCdXR0b24kIHwgYXN5bmNcIlxuICAgICAgPlxuICAgICAgICB7eyAnQHByeS5hZG1pbi52YWxpZGF0ZScgfCBpMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIEBpZiAoc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQgfCBhc3luYykge1xuICAgICAgICA8aDQgY2xhc3M9XCJhLWg0XCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5zdWNjZXNzJyB8IGkxOG4gfX08L2g0PlxuICAgICAgfVxuICAgICAgQGlmIChtaXNzaW5nR3JvdXBzJCB8IGFzeW5jOyBhcyBtaXNzaW5nR3JvdXBzKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleCAtY29sdW1uXCI+XG4gICAgICAgICAgPHNwYW4+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5jb25mbGljdCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgIEBmb3IgKG1pc3Npbmcgb2YgbWlzc2luZ0dyb3VwcyB8IGtleXZhbHVlOyB0cmFjayBtaXNzaW5nLmtleSkge1xuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAge3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5lbnRpdGllcy5kYXNoYm9hcmQnIHwgaTE4biB9fSA8c3Ryb25nPnt7IG1pc3NpbmcudmFsdWUuZW50aXR5TmFtZSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidS1kaXNwbGF5LWZsZXhcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChncm91cCBvZiBtaXNzaW5nLnZhbHVlLmdyb3VwczsgdHJhY2sgZ3JvdXApIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYS1jaGlwXCI+e3sgZ2V0R3JvdXBMYWJlbChncm91cCkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -4,6 +4,7 @@ import { ClassActions, ClassSelectors, DataSourceActions, DataSourceSelectors, P
4
4
  import { Subscription } from 'rxjs';
5
5
  import { v4 as uuidv4 } from 'uuid';
6
6
  import { AdminActions } from '../../../../store/admin.actions';
7
+ import { AdminDatasetActions } from '../../store/admin-dataset.actions';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "@ngrx/store";
9
10
  import * as i2 from "@angular/router";
@@ -76,13 +77,13 @@ export class AdminFormDatasetComponent {
76
77
  this.isSubmitted = false;
77
78
  if (this.dataset$) {
78
79
  const path = this.router.createUrlTree(['../..'], { relativeTo: this.route });
79
- this.store.dispatch(DataSourceActions.dataset.update({ dataset: this.form.value, route: path.toString() }));
80
+ this.store.dispatch(AdminDatasetActions.update({ dataset: this.form.value, route: path.toString() }));
80
81
  return;
81
82
  }
82
83
  const path = this.router.createUrlTree(['..'], { relativeTo: this.route });
83
84
  this.isSameName = !!this.datasetList.find((dataset) => this.form.get('name')?.value.toLowerCase() === dataset.name.toLowerCase());
84
85
  if (!this.isSameName) {
85
- this.store.dispatch(DataSourceActions.dataset.create({ dataset: this.form.value, route: path.toString() }));
86
+ this.store.dispatch(AdminDatasetActions.create({ dataset: this.form.value, route: path.toString() }));
86
87
  }
87
88
  }
88
89
  }
@@ -95,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
95
96
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.UntypedFormBuilder }], propDecorators: { dataset$: [{
96
97
  type: Input
97
98
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZm9ybS1kYXRhc2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9zaGFyZWQvYWRtaW4tZm9ybS1kYXRhc2V0L2FkbWluLWZvcm0tZGF0YXNldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9hZG1pbi9jb21wb25lbnRzL2FkbWluLWRhdGFzZXQvc2hhcmVkL2FkbWluLWZvcm0tZGF0YXNldC9hZG1pbi1mb3JtLWRhdGFzZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBd0MsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEYsT0FBTyxFQUVMLFlBQVksRUFDWixjQUFjLEVBRWQsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUVuQixjQUFjLEVBQ2YsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7OztBQU0vRCxNQUFNLE9BQU8seUJBQXlCO0lBZXBDLFlBQ1UsS0FBNkIsRUFDN0IsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLFdBQStCO1FBSC9CLFVBQUssR0FBTCxLQUFLLENBQXdCO1FBQzdCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixnQkFBVyxHQUFYLFdBQVcsQ0FB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LENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMzRSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDdkMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUN2RixDQUFDO1lBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlHLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzs4R0EvRlUseUJBQXlCO2tHQUF6Qix5QkFBeUIsZ0dDdEJ0Qyw0NEZBdUZBOzsyRkRqRWEseUJBQXlCO2tCQUpyQyxTQUFTOytCQUNFLHdCQUF3Qjs2SkFJekIsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgQ2xhc3MsXG4gIENsYXNzQWN0aW9ucyxcbiAgQ2xhc3NTZWxlY3RvcnMsXG4gIERhdGFzZXQsXG4gIERhdGFTb3VyY2VBY3Rpb25zLFxuICBEYXRhU291cmNlU2VsZWN0b3JzLFxuICBEYXRhU291cmNlU3RhdGUsXG4gIFByeURhdGFzZXRUeXBlXG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvYWRtaW4uYWN0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ByeS1hZG1pbi1mb3JtLWRhdGFzZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tZm9ybS1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pbkZvcm1EYXRhc2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBkYXRhc2V0JD86IE9ic2VydmFibGU8RGF0YXNldCB8IG51bGw+O1xuXG4gIGRhdGFzZXRMaXN0JDogT2JzZXJ2YWJsZTxEYXRhc2V0W10+O1xuICBkYXRhc2V0TGlzdDogRGF0YXNldFtdID0gW107XG4gIGRhdGFzZXRUeXBlczogeyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH1bXSA9IFtdO1xuICBjbGFzc2VzOiBPYnNlcnZhYmxlPENsYXNzW10+O1xuXG4gIHN1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIGlzU2FtZU5hbWUgPSBmYWxzZTtcbiAgaXNTdWJtaXR0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxEYXRhU291cmNlU3RhdGU+LFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyXG4gICkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ2xhc3NBY3Rpb25zLmxvYWQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmxvYWREYXRhc2V0KCkpO1xuICAgIHRoaXMuZGF0YXNldExpc3QkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5kYXRhc2V0cyk7XG4gICAgdGhpcy5jbGFzc2VzID0gdGhpcy5zdG9yZS5zZWxlY3QoQ2xhc3NTZWxlY3RvcnMuY2xhc3Nlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBpZDogW3V1aWR2NCgpXSxcbiAgICAgIG5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTAwKV1dLFxuICAgICAgb0NsYXNzOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICB0eXBlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBkZXNjcmlwdGlvbjpbJycsW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwMCldXVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NhbWVOYW1lID0gZmFsc2U7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmRhdGFzZXRMaXN0JC5zdWJzY3JpYmUoKGRhdGFzZXQpID0+IHtcbiAgICAgIHRoaXMuZGF0YXNldExpc3QgPSBkYXRhc2V0O1xuICAgIH0pO1xuICAgIHRoaXMuZGF0YXNldFR5cGVzID0gT2JqZWN0LmtleXMoUHJ5RGF0YXNldFR5cGUpLm1hcCgobGFiZWwpID0+ICh7XG4gICAgICBsYWJlbDogJ0BwcnkuYWRtaW4uZGF0YXNldC4nICsgbGFiZWwsXG4gICAgICB2YWx1ZTogbGFiZWxcbiAgICB9KSk7XG4gICAgdGhpcy5zdWIuYWRkKFxuICAgICAgdGhpcy5kYXRhc2V0JD8uc3Vic2NyaWJlKChkYXRhc2V0OiBEYXRhc2V0IHwgbnVsbCkgPT4ge1xuICAgICAgICBpZiAoZGF0YXNldCkge1xuICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGlkOiBkYXRhc2V0LmlkLFxuICAgICAgICAgICAgbmFtZTogZGF0YXNldC5uYW1lLFxuICAgICAgICAgICAgb0NsYXNzOiBkYXRhc2V0Lm9DbGFzcyxcbiAgICAgICAgICAgIHR5cGU6IGRhdGFzZXQudHlwZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBkYXRhc2V0LmRlc2NyaXB0aW9uXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnb0JhY2soKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHRoaXMuZ2V0UGF0aCgpIH0pKTtcbiAgfVxuXG4gIGdldFBhdGgoKSB7XG4gICAgbGV0IHBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLi4nXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIGlmICh0aGlzLmRhdGFzZXQkKSB7XG4gICAgICBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uLy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGgudG9TdHJpbmcoKTtcbiAgfVxuXG4gIGNoYW5nZVZhbHVlTmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5pc1NhbWVOYW1lID0gZmFsc2U7XG4gIH1cblxuICBzdWJtaXQoKSB7XG4gICAgdGhpcy5pc1N1Ym1pdHRlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMuZm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5pc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICAgICAgaWYgKHRoaXMuZGF0YXNldCQpIHtcbiAgICAgICAgY29uc3QgcGF0aCA9IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuLi8uLiddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51cGRhdGUoeyBkYXRhc2V0OiB0aGlzLmZvcm0udmFsdWUsIHJvdXRlOiBwYXRoLnRvU3RyaW5nKCkgfSkpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICAgIHRoaXMuaXNTYW1lTmFtZSA9ICEhdGhpcy5kYXRhc2V0TGlzdC5maW5kKFxuICAgICAgICAoZGF0YXNldCkgPT4gdGhpcy5mb3JtLmdldCgnbmFtZScpPy52YWx1ZS50b0xvd2VyQ2FzZSgpID09PSBkYXRhc2V0Lm5hbWUudG9Mb3dlckNhc2UoKVxuICAgICAgKTtcbiAgICAgIGlmICghdGhpcy5pc1NhbWVOYW1lKSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jcmVhdGUoeyBkYXRhc2V0OiB0aGlzLmZvcm0udmFsdWUsIHJvdXRlOiBwYXRoLnRvU3RyaW5nKCkgfSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGZvcm0gY2xhc3M9XCJvLWZvcm1cIiBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwic3VibWl0KClcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJuYW1lLWxhYmVsXCIgZm9yPVwibmFtZVwiPlxuICAgICAge3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5uYW1lJyB8IGkxOG4gfX0gKlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxpbnB1dFxuICAgICAgaWQ9XCJuYW1lXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlVmFsdWVOYW1lKCRldmVudClcIlxuICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCduYW1lJyk/LmludmFsaWQgPyAnbmFtZS1sYWJlbCBuYW1lLWVycm9yJyA6ICduYW1lLWxhYmVsJ1wiXG4gICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ25hbWUnKT8uaW52YWxpZFwiXG4gICAgICByZXF1aXJlZFxuICAgIC8+XG4gICAgPGxhYmVsXG4gICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgaWQ9XCJuYW1lLWVycm9yXCJcbiAgICAgIGZvcj1cIm5hbWVcIlxuICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgnbmFtZScpPy5pbnZhbGlkXCJcbiAgICAgID57eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19PC9sYWJlbFxuICAgID5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJkZXNjcmlwdGlvbi1sYWJlbFwiIGZvcj1cImRlc2NyaXB0aW9uXCI+e3sgJ0BwcnkuYWRtaW4uZmllbGRzLmRlc2NyaXB0aW9uJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgIDx0ZXh0YXJlYVxuICAgICAgY2xhc3M9XCItcmVzaXphYmxlLWJvdGhcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgIGlkPVwiZGVzY3JpcHRpb25cIlxuICAgICAgbWF4bGVuZ3RoPVwiNTAwXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgICA8bGFiZWxcbiAgICAgIGZvcj1cImRlc2NyaXB0aW9uXCJcbiAgICAgICpuZ0lmPVwiZm9ybS5nZXQoJ2Rlc2NyaXB0aW9uJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiXG4gICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgID5cbiAgICAgIHt7ICdAcHJ5LnByZXNlbnRhdGlvbi5tYXhMZW5ndGgnIHwgaTE4biA6IHsgbGVuOiAnNTAwJyB9IH19XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJpdGVtLWxhYmVsXCIgZm9yPVwiY2xhc3NcIj57eyAnQHByeS5hZG1pbi5kYXRhc2V0Lm9DbGFzcycgfCBpMThuIH19PC9sYWJlbD5cbiAgICA8cHJ5LXNlbGVjdFxuICAgICAgaWQ9XCJjbGFzc1wiXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJvQ2xhc3NcIlxuICAgICAgW2l0ZW1zXT1cImNsYXNzZXMgfCBhc3luY1wiXG4gICAgICBiaW5kVmFsdWU9XCJpZFwiXG4gICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICBhcmlhLWxhYmVsbGVkYnk9XCJpdGVtLWxhYmVsXCJcbiAgICAgIFtyZWFkb25seV09XCIhIWRhdGFzZXQkXCJcbiAgICA+PC9wcnktc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1zbVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBpZD1cInVzZXItbGFiZWxcIiBmb3I9XCJ0eXBlXCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC50eXBlJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgIDxwcnktc2VsZWN0XG4gICAgICBpZD1cInR5cGVcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidHlwZVwiXG4gICAgICBbaXRlbXNdPVwiZGF0YXNldFR5cGVzXCJcbiAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgIGJpbmRMYWJlbD1cImxhYmVsXCJcbiAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICBhcmlhLWxhYmVsbGVkYnk9XCJ1c2VyLWxhYmVsXCJcbiAgICAgIFtyZWFkb25seV09XCIhIWRhdGFzZXQkXCJcbiAgICA+PC9wcnktc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCIgKm5nSWY9XCJpc1NhbWVOYW1lXCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5pcy1zYW1lLW5hbWUnIHwgaTE4biB9fTwvbGFiZWw+XG5cbiAgPGRpdiBjbGFzcz1cIm0tYnRuLWdyb3VwIC13aWR0aC1zbVwiPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tc2Vjb25kYXJ5XCJcbiAgICAgIChjbGljayk9XCJnb0JhY2soKVwiXG4gICAgICBbaW5uZXJIVE1MXT1cIidAcHJ5LmFkbWluLmNhbmNlbCcgfCBpMThuXCJcbiAgICA+PC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgIFtpbm5lckhUTUxdPVwiKGRhdGFzZXQkID8gJ0BwcnkuYWRtaW4uZWRpdCcgOiAnQHByeS5hZG1pbi5jcmVhdGUnKSB8IGkxOG5cIlxuICAgID48L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZm9ybS1kYXRhc2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9zaGFyZWQvYWRtaW4tZm9ybS1kYXRhc2V0L2FkbWluLWZvcm0tZGF0YXNldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9hZG1pbi9jb21wb25lbnRzL2FkbWluLWRhdGFzZXQvc2hhcmVkL2FkbWluLWZvcm0tZGF0YXNldC9hZG1pbi1mb3JtLWRhdGFzZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBd0MsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEYsT0FBTyxFQUVMLFlBQVksRUFDWixjQUFjLEVBRWQsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUVuQixjQUFjLEVBQ2YsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQU14RSxNQUFNLE9BQU8seUJBQXlCO0lBZXBDLFlBQ1UsS0FBNkIsRUFDN0IsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLFdBQStCO1FBSC9CLFVBQUssR0FBTCxLQUFLLENBQXdCO1FBQzdCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxV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LENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUN2QyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQ3ZGLENBQUM7WUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN4RyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBL0ZVLHlCQUF5QjtrR0FBekIseUJBQXlCLGdHQ3ZCdEMsNDRGQXVGQTs7MkZEaEVhLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSx3QkFBd0I7NkpBSXpCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIENsYXNzLFxuICBDbGFzc0FjdGlvbnMsXG4gIENsYXNzU2VsZWN0b3JzLFxuICBEYXRhc2V0LFxuICBEYXRhU291cmNlQWN0aW9ucyxcbiAgRGF0YVNvdXJjZVNlbGVjdG9ycyxcbiAgRGF0YVNvdXJjZVN0YXRlLFxuICBQcnlEYXRhc2V0VHlwZVxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuaW1wb3J0IHsgQWRtaW5EYXRhc2V0QWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL2FkbWluLWRhdGFzZXQuYWN0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ByeS1hZG1pbi1mb3JtLWRhdGFzZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tZm9ybS1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pbkZvcm1EYXRhc2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBkYXRhc2V0JD86IE9ic2VydmFibGU8RGF0YXNldCB8IG51bGw+O1xuXG4gIGRhdGFzZXRMaXN0JDogT2JzZXJ2YWJsZTxEYXRhc2V0W10+O1xuICBkYXRhc2V0TGlzdDogRGF0YXNldFtdID0gW107XG4gIGRhdGFzZXRUeXBlczogeyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH1bXSA9IFtdO1xuICBjbGFzc2VzOiBPYnNlcnZhYmxlPENsYXNzW10+O1xuXG4gIHN1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIGlzU2FtZU5hbWUgPSBmYWxzZTtcbiAgaXNTdWJtaXR0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxEYXRhU291cmNlU3RhdGU+LFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyXG4gICkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ2xhc3NBY3Rpb25zLmxvYWQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmxvYWREYXRhc2V0KCkpO1xuICAgIHRoaXMuZGF0YXNldExpc3QkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5kYXRhc2V0cyk7XG4gICAgdGhpcy5jbGFzc2VzID0gdGhpcy5zdG9yZS5zZWxlY3QoQ2xhc3NTZWxlY3RvcnMuY2xhc3Nlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBpZDogW3V1aWR2NCgpXSxcbiAgICAgIG5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDEwMCldXSxcbiAgICAgIG9DbGFzczogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgdHlwZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgZGVzY3JpcHRpb246IFsnJywgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwMCldXVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NhbWVOYW1lID0gZmFsc2U7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmRhdGFzZXRMaXN0JC5zdWJzY3JpYmUoKGRhdGFzZXQpID0+IHtcbiAgICAgIHRoaXMuZGF0YXNldExpc3QgPSBkYXRhc2V0O1xuICAgIH0pO1xuICAgIHRoaXMuZGF0YXNldFR5cGVzID0gT2JqZWN0LmtleXMoUHJ5RGF0YXNldFR5cGUpLm1hcCgobGFiZWwpID0+ICh7XG4gICAgICBsYWJlbDogJ0BwcnkuYWRtaW4uZGF0YXNldC4nICsgbGFiZWwsXG4gICAgICB2YWx1ZTogbGFiZWxcbiAgICB9KSk7XG4gICAgdGhpcy5zdWIuYWRkKFxuICAgICAgdGhpcy5kYXRhc2V0JD8uc3Vic2NyaWJlKChkYXRhc2V0OiBEYXRhc2V0IHwgbnVsbCkgPT4ge1xuICAgICAgICBpZiAoZGF0YXNldCkge1xuICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGlkOiBkYXRhc2V0LmlkLFxuICAgICAgICAgICAgbmFtZTogZGF0YXNldC5uYW1lLFxuICAgICAgICAgICAgb0NsYXNzOiBkYXRhc2V0Lm9DbGFzcyxcbiAgICAgICAgICAgIHR5cGU6IGRhdGFzZXQudHlwZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBkYXRhc2V0LmRlc2NyaXB0aW9uXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnb0JhY2soKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHRoaXMuZ2V0UGF0aCgpIH0pKTtcbiAgfVxuXG4gIGdldFBhdGgoKSB7XG4gICAgbGV0IHBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLi4nXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIGlmICh0aGlzLmRhdGFzZXQkKSB7XG4gICAgICBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uLy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGgudG9TdHJpbmcoKTtcbiAgfVxuXG4gIGNoYW5nZVZhbHVlTmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5pc1NhbWVOYW1lID0gZmFsc2U7XG4gIH1cblxuICBzdWJtaXQoKSB7XG4gICAgdGhpcy5pc1N1Ym1pdHRlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMuZm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5pc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICAgICAgaWYgKHRoaXMuZGF0YXNldCQpIHtcbiAgICAgICAgY29uc3QgcGF0aCA9IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuLi8uLiddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQWRtaW5EYXRhc2V0QWN0aW9ucy51cGRhdGUoeyBkYXRhc2V0OiB0aGlzLmZvcm0udmFsdWUsIHJvdXRlOiBwYXRoLnRvU3RyaW5nKCkgfSkpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICAgIHRoaXMuaXNTYW1lTmFtZSA9ICEhdGhpcy5kYXRhc2V0TGlzdC5maW5kKFxuICAgICAgICAoZGF0YXNldCkgPT4gdGhpcy5mb3JtLmdldCgnbmFtZScpPy52YWx1ZS50b0xvd2VyQ2FzZSgpID09PSBkYXRhc2V0Lm5hbWUudG9Mb3dlckNhc2UoKVxuICAgICAgKTtcbiAgICAgIGlmICghdGhpcy5pc1NhbWVOYW1lKSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQWRtaW5EYXRhc2V0QWN0aW9ucy5jcmVhdGUoeyBkYXRhc2V0OiB0aGlzLmZvcm0udmFsdWUsIHJvdXRlOiBwYXRoLnRvU3RyaW5nKCkgfSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGZvcm0gY2xhc3M9XCJvLWZvcm1cIiBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwic3VibWl0KClcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJuYW1lLWxhYmVsXCIgZm9yPVwibmFtZVwiPlxuICAgICAge3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5uYW1lJyB8IGkxOG4gfX0gKlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1LXZpc3VhbGx5LWhpZGRlblwiPih7eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19KTwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxpbnB1dFxuICAgICAgaWQ9XCJuYW1lXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlVmFsdWVOYW1lKCRldmVudClcIlxuICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlzU3VibWl0dGVkICYmIGZvcm0uZ2V0KCduYW1lJyk/LmludmFsaWQgPyAnbmFtZS1sYWJlbCBuYW1lLWVycm9yJyA6ICduYW1lLWxhYmVsJ1wiXG4gICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaXNTdWJtaXR0ZWQgJiYgZm9ybS5nZXQoJ25hbWUnKT8uaW52YWxpZFwiXG4gICAgICByZXF1aXJlZFxuICAgIC8+XG4gICAgPGxhYmVsXG4gICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgaWQ9XCJuYW1lLWVycm9yXCJcbiAgICAgIGZvcj1cIm5hbWVcIlxuICAgICAgKm5nSWY9XCJpc1N1Ym1pdHRlZCAmJiBmb3JtLmdldCgnbmFtZScpPy5pbnZhbGlkXCJcbiAgICAgID57eyAnQHByeS5hZG1pbi5yZXF1aXJlZCcgfCBpMThuIH19PC9sYWJlbFxuICAgID5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJkZXNjcmlwdGlvbi1sYWJlbFwiIGZvcj1cImRlc2NyaXB0aW9uXCI+e3sgJ0BwcnkuYWRtaW4uZmllbGRzLmRlc2NyaXB0aW9uJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgIDx0ZXh0YXJlYVxuICAgICAgY2xhc3M9XCItcmVzaXphYmxlLWJvdGhcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgIGlkPVwiZGVzY3JpcHRpb25cIlxuICAgICAgbWF4bGVuZ3RoPVwiNTAwXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgICA8bGFiZWxcbiAgICAgIGZvcj1cImRlc2NyaXB0aW9uXCJcbiAgICAgICpuZ0lmPVwiZm9ybS5nZXQoJ2Rlc2NyaXB0aW9uJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiXG4gICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgID5cbiAgICAgIHt7ICdAcHJ5LnByZXNlbnRhdGlvbi5tYXhMZW5ndGgnIHwgaTE4biA6IHsgbGVuOiAnNTAwJyB9IH19XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtc21cIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgaWQ9XCJpdGVtLWxhYmVsXCIgZm9yPVwiY2xhc3NcIj57eyAnQHByeS5hZG1pbi5kYXRhc2V0Lm9DbGFzcycgfCBpMThuIH19PC9sYWJlbD5cbiAgICA8cHJ5LXNlbGVjdFxuICAgICAgaWQ9XCJjbGFzc1wiXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJvQ2xhc3NcIlxuICAgICAgW2l0ZW1zXT1cImNsYXNzZXMgfCBhc3luY1wiXG4gICAgICBiaW5kVmFsdWU9XCJpZFwiXG4gICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICBhcmlhLWxhYmVsbGVkYnk9XCJpdGVtLWxhYmVsXCJcbiAgICAgIFtyZWFkb25seV09XCIhIWRhdGFzZXQkXCJcbiAgICA+PC9wcnktc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1zbVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBpZD1cInVzZXItbGFiZWxcIiBmb3I9XCJ0eXBlXCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC50eXBlJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgIDxwcnktc2VsZWN0XG4gICAgICBpZD1cInR5cGVcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidHlwZVwiXG4gICAgICBbaXRlbXNdPVwiZGF0YXNldFR5cGVzXCJcbiAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgIGJpbmRMYWJlbD1cImxhYmVsXCJcbiAgICAgIFtpc0Zvcm1dPVwidHJ1ZVwiXG4gICAgICBhcmlhLWxhYmVsbGVkYnk9XCJ1c2VyLWxhYmVsXCJcbiAgICAgIFtyZWFkb25seV09XCIhIWRhdGFzZXQkXCJcbiAgICA+PC9wcnktc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCIgKm5nSWY9XCJpc1NhbWVOYW1lXCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5pcy1zYW1lLW5hbWUnIHwgaTE4biB9fTwvbGFiZWw+XG5cbiAgPGRpdiBjbGFzcz1cIm0tYnRuLWdyb3VwIC13aWR0aC1zbVwiPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tc2Vjb25kYXJ5XCJcbiAgICAgIChjbGljayk9XCJnb0JhY2soKVwiXG4gICAgICBbaW5uZXJIVE1MXT1cIidAcHJ5LmFkbWluLmNhbmNlbCcgfCBpMThuXCJcbiAgICA+PC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgIFtpbm5lckhUTUxdPVwiKGRhdGFzZXQkID8gJ0BwcnkuYWRtaW4uZWRpdCcgOiAnQHByeS5hZG1pbi5jcmVhdGUnKSB8IGkxOG5cIlxuICAgID48L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { createAction, props } from '@ngrx/store';
2
+ export const AdminDatasetActions = {
3
+ failure: createAction('[Dataset] failure effect Dataset', props()),
4
+ create: createAction('[Dataset] create Dataset', props()),
5
+ update: createAction('[Dataset] update Dataset', props()),
6
+ confirmDatasetDeletion: createAction('[Dataset] confirm deletion', props()),
7
+ delete: createAction('[Dataset] delete Dataset', props()),
8
+ deleted: createAction('[Dataset] Dataset is deleted call to admin', props()),
9
+ selectDataset: createAction('[Dataset] open Dataset details', props()),
10
+ unselectDataset: createAction('[Dataset] unselect Dataset'),
11
+ getDatasetById: createAction('[Dataset] Get Dataset by ID', props()),
12
+ getDatasetByIdSuccess: createAction('[Dataset] Get Dataset by Id Success', props()),
13
+ getDatasetByIdFailure: createAction('[Dataset] Get Dataset by Id Failure', props()),
14
+ openNewDataset: createAction('[Dataset] open new Dataset', props()),
15
+ setMissingGroups: createAction('[Dataset] set missing groups', props())
16
+ };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZGF0YXNldC5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L3N0b3JlL2FkbWluLWRhdGFzZXQuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUdsRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUNqQyxPQUFPLEVBQUUsWUFBWSxDQUFDLGtDQUFrQyxFQUFFLEtBQUssRUFBa0IsQ0FBQztJQUNsRixNQUFNLEVBQUUsWUFBWSxDQUFDLDBCQUEwQixFQUFFLEtBQUssRUFBdUMsQ0FBQztJQUM5RixNQUFNLEVBQUUsWUFBWSxDQUFDLDBCQUEwQixFQUFFLEtBQUssRUFBd0MsQ0FBQztJQUMvRixzQkFBc0IsRUFBRSxZQUFZLENBQ2xDLDRCQUE0QixFQUM1QixLQUFLLEVBQXFELENBQzNEO0lBQ0QsTUFBTSxFQUFFLFlBQVksQ0FBQywwQkFBMEIsRUFBRSxLQUFLLEVBQXFELENBQUM7SUFDNUcsT0FBTyxFQUFFLFlBQVksQ0FBQyw0Q0FBNEMsRUFBRSxLQUFLLEVBQXdCLENBQUM7SUFFbEcsYUFBYSxFQUFFLFlBQVksQ0FBQyxnQ0FBZ0MsRUFBRSxLQUFLLEVBQXdCLENBQUM7SUFDNUYsZUFBZSxFQUFFLFlBQVksQ0FBQyw0QkFBNEIsQ0FBQztJQUMzRCxjQUFjLEVBQUUsWUFBWSxDQUFDLDZCQUE2QixFQUFFLEtBQUssRUFBa0IsQ0FBQztJQUNwRixxQkFBcUIsRUFBRSxZQUFZLENBQUMscUNBQXFDLEVBQUUsS0FBSyxFQUFxQixDQUFDO0lBQ3RHLHFCQUFxQixFQUFFLFlBQVksQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLEVBQWtCLENBQUM7SUFDbkcsY0FBYyxFQUFFLFlBQVksQ0FBQyw0QkFBNEIsRUFBRSxLQUFLLEVBQXFCLENBQUM7SUFDdEYsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLDhCQUE4QixFQUFFLEtBQUssRUFBNkMsQ0FBQztDQUNuSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQWN0aW9uLCBwcm9wcyB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IERhdGFzZXQsIE1pc3NpbmdHcm91cHNCeUVudGl0eSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5cbmV4cG9ydCBjb25zdCBBZG1pbkRhdGFzZXRBY3Rpb25zID0ge1xuICBmYWlsdXJlOiBjcmVhdGVBY3Rpb24oJ1tEYXRhc2V0XSBmYWlsdXJlIGVmZmVjdCBEYXRhc2V0JywgcHJvcHM8eyBlcnJvcjogYW55IH0+KCkpLFxuICBjcmVhdGU6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIGNyZWF0ZSBEYXRhc2V0JywgcHJvcHM8eyBkYXRhc2V0OiBEYXRhc2V0OyByb3V0ZTogc3RyaW5nIH0+KCkpLFxuICB1cGRhdGU6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIHVwZGF0ZSBEYXRhc2V0JywgcHJvcHM8eyBkYXRhc2V0OiBEYXRhc2V0OyByb3V0ZT86IHN0cmluZyB9PigpKSxcbiAgY29uZmlybURhdGFzZXREZWxldGlvbjogY3JlYXRlQWN0aW9uKFxuICAgICdbRGF0YXNldF0gY29uZmlybSBkZWxldGlvbicsXG4gICAgcHJvcHM8eyBuYW1lOiBzdHJpbmc7IHJvdXRlOiBzdHJpbmc7IGFkZFJvdXRlOiBzdHJpbmcgfT4oKVxuICApLFxuICBkZWxldGU6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIGRlbGV0ZSBEYXRhc2V0JywgcHJvcHM8eyBuYW1lOiBzdHJpbmc7IHJvdXRlOiBzdHJpbmc7IGFkZFJvdXRlOiBzdHJpbmcgfT4oKSksXG4gIGRlbGV0ZWQ6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIERhdGFzZXQgaXMgZGVsZXRlZCBjYWxsIHRvIGFkbWluJywgcHJvcHM8eyBhZGRSb3V0ZTogc3RyaW5nIH0+KCkpLFxuXG4gIHNlbGVjdERhdGFzZXQ6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIG9wZW4gRGF0YXNldCBkZXRhaWxzJywgcHJvcHM8eyBkYXRhc2V0OiBEYXRhc2V0IH0+KCkpLFxuICB1bnNlbGVjdERhdGFzZXQ6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIHVuc2VsZWN0IERhdGFzZXQnKSxcbiAgZ2V0RGF0YXNldEJ5SWQ6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIEdldCBEYXRhc2V0IGJ5IElEJywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBnZXREYXRhc2V0QnlJZFN1Y2Nlc3M6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIEdldCBEYXRhc2V0IGJ5IElkIFN1Y2Nlc3MnLCBwcm9wczx7IGRhdGE6IERhdGFzZXQgfT4oKSksXG4gIGdldERhdGFzZXRCeUlkRmFpbHVyZTogY3JlYXRlQWN0aW9uKCdbRGF0YXNldF0gR2V0IERhdGFzZXQgYnkgSWQgRmFpbHVyZScsIHByb3BzPHsgZXJyb3I6IGFueSB9PigpKSxcbiAgb3Blbk5ld0RhdGFzZXQ6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIG9wZW4gbmV3IERhdGFzZXQnLCBwcm9wczx7IHJvdXRlOiBzdHJpbmcgfT4oKSksXG4gIHNldE1pc3NpbmdHcm91cHM6IGNyZWF0ZUFjdGlvbignW0RhdGFzZXRdIHNldCBtaXNzaW5nIGdyb3VwcycsIHByb3BzPHsgbWlzc2luZ0dyb3Vwcz86IE1pc3NpbmdHcm91cHNCeUVudGl0eSB9PigpKVxufTtcbiJdfQ==
@@ -0,0 +1,104 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { createEffect, ofType } from '@ngrx/effects';
3
+ import { DataSourceActions, PryDialogConfirmComponent } from '@provoly/dashboard';
4
+ import { map, mergeMap, switchMap, tap } from 'rxjs';
5
+ import { catchError } from 'rxjs/operators';
6
+ import { AdminDatasetActions } from './admin-dataset.actions';
7
+ import { AdminActions } from '../../../store/admin.actions';
8
+ import { MetadataActions } from '@provoly/dashboard/components/metadata-editor';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@ngrx/effects";
11
+ import * as i2 from "./admin-dataset.service";
12
+ import * as i3 from "@provoly/dashboard";
13
+ export class AdminDatasetEffects {
14
+ constructor(actions$, datasetService, pryDialog) {
15
+ this.actions$ = actions$;
16
+ this.datasetService = datasetService;
17
+ this.pryDialog = pryDialog;
18
+ this.createDataset$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.create), switchMap((props) => this.datasetService
19
+ .addDataset(props.dataset)
20
+ .pipe(mergeMap(() => [
21
+ DataSourceActions.dataset.loadDataset(),
22
+ AdminDatasetActions.unselectDataset(),
23
+ AdminActions.routeTo({ path: props.route })
24
+ ]))), catchError((error) => [AdminDatasetActions.failure({ error })])));
25
+ this.confirmDatasetDeletion$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.confirmDatasetDeletion), tap((action) => {
26
+ const data = {
27
+ title: '@pry.admin.infoModalTitle',
28
+ message: '@pry.admin.dataset.delete',
29
+ actions: [
30
+ {
31
+ id: 0,
32
+ label: '@pry.admin.delete',
33
+ actions: [
34
+ AdminDatasetActions.delete({
35
+ name: action.name,
36
+ route: action.route,
37
+ addRoute: action.addRoute
38
+ })
39
+ ]
40
+ },
41
+ { id: 0, label: '@pry.admin.cancel' }
42
+ ]
43
+ };
44
+ this.pryDialog.open(PryDialogConfirmComponent, { data });
45
+ })), { dispatch: false });
46
+ this.deleteDataset$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.delete), switchMap((action) => this.datasetService.deleteDataset(action.name).pipe(mergeMap(() => [
47
+ DataSourceActions.dataset.loadDataset(),
48
+ AdminDatasetActions.unselectDataset(),
49
+ AdminDatasetActions.deleted({ addRoute: action.addRoute })
50
+ ]), catchError((error) => [AdminDatasetActions.failure({ error })])))));
51
+ this.getDatasetById$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.getDatasetById), mergeMap((action) => this.datasetService.getDatasetById(action.id).pipe(map((data) => AdminDatasetActions.getDatasetByIdSuccess({ data })), catchError((error) => [AdminDatasetActions.getDatasetByIdFailure({ error })])))));
52
+ this.unsetMissingGroupsOnDatasetSelection$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.selectDataset), mergeMap((action) => [
53
+ AdminDatasetActions.setMissingGroups({ missingGroups: undefined }),
54
+ DataSourceActions.dataset.listVersionsByDatasetId({ id: action.dataset.id })
55
+ ])));
56
+ this.deleted$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.deleted), mergeMap((action) => [
57
+ AdminActions.togglePanel({ panelOpen: false }),
58
+ AdminActions.selectComponentType({ componentType: null }),
59
+ AdminActions.mainActions({
60
+ actions: [
61
+ {
62
+ action: AdminActions.routeTo({ path: action.addRoute }),
63
+ label: 'add',
64
+ icon: 'add_column',
65
+ moduleAccess: 'admin',
66
+ pageAccess: 'dataset',
67
+ actionAccess: 'write'
68
+ }
69
+ ]
70
+ })
71
+ ])));
72
+ this.updateDataset$ = createEffect(() => this.actions$.pipe(ofType(AdminDatasetActions.update), switchMap((action) => this.datasetService.updateDataset(action.dataset).pipe(mergeMap((conflict) => {
73
+ let actions = [
74
+ AdminDatasetActions.setMissingGroups({ missingGroups: conflict?.missingGroupsByEntity }),
75
+ DataSourceActions.dataset.loadDataset()
76
+ ];
77
+ if (action.route)
78
+ actions.push(AdminDatasetActions.unselectDataset(), AdminActions.routeTo({ path: action.route }));
79
+ return actions;
80
+ }))), catchError((error) => [DataSourceActions.dataset.failure({ error })])));
81
+ this.addDatasetMetadata$ = createEffect(() => this.actions$.pipe(ofType(MetadataActions.addDatasetMetadata), mergeMap((action) => this.datasetService.addDatasetMetadata(action.datasetId, action.metadataId, action.value).pipe(map(() => MetadataActions.addDatasetMetadataSuccess({ datasetId: action.datasetId })), catchError((error) => [MetadataActions.addDatasetMetadataFailure({ error })])))));
82
+ this.addDatasetMetadataSuccess$ = createEffect(() => this.actions$.pipe(ofType(MetadataActions.addDatasetMetadataSuccess), mergeMap((action) => {
83
+ return [
84
+ AdminDatasetActions.getDatasetById({ id: action.datasetId }),
85
+ MetadataActions.isEditable({ editable: false }),
86
+ DataSourceActions.dataset.loadDataset()
87
+ ];
88
+ })));
89
+ this.deleteDatasetMetadata$ = createEffect(() => this.actions$.pipe(ofType(MetadataActions.deleteDatasetMetadata), mergeMap((action) => this.datasetService.deleteDatasetMetadata(action.datasetId, action.metadataId).pipe(map(() => MetadataActions.deleteDatasetMetadataSuccess({ datasetId: action.datasetId })), catchError((error) => [MetadataActions.deleteDatasetMetadataFailure({ error })])))));
90
+ this.deleteDatasetMetadataSuccess$ = createEffect(() => this.actions$.pipe(ofType(MetadataActions.deleteDatasetMetadataSuccess), mergeMap((action) => {
91
+ return [
92
+ AdminDatasetActions.getDatasetById({ id: action.datasetId }),
93
+ MetadataActions.isEditable({ editable: false }),
94
+ DataSourceActions.dataset.loadDataset()
95
+ ];
96
+ })));
97
+ }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminDatasetEffects, deps: [{ token: i1.Actions }, { token: i2.AdminDatasetService }, { token: i3.PryDialogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
99
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminDatasetEffects }); }
100
+ }
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminDatasetEffects, decorators: [{
102
+ type: Injectable
103
+ }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.AdminDatasetService }, { type: i3.PryDialogService }] });
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZGF0YXNldC5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L3N0b3JlL2FkbWluLWRhdGFzZXQuZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBVyxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFFTCxpQkFBaUIsRUFDakIseUJBQXlCLEVBSTFCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7Ozs7QUFHaEYsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUNVLFFBQWlCLEVBQ2pCLGNBQW1DLEVBQ25DLFNBQTJCO1FBRjNCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBR3JDLG1CQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUNsQyxTQUFTLENBQUMsQ0FBQyxLQUEwQyxFQUFFLEVBQUUs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QWMsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQ2pGLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsNEJBQTRCLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFDeEYsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNqRixDQUNGLENBQ0YsQ0FDRixDQUFDO1FBRUYsa0NBQTZCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNoRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQyxFQUNwRCxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNsQixPQUFPO2dCQUNMLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQzVELGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQy9DLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7YUFDeEMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQ0YsQ0FBQztJQWpMQyxDQUFDOzhHQUxPLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7XG4gIERhdGFzZXQsXG4gIERhdGFTb3VyY2VBY3Rpb25zLFxuICBQcnlEaWFsb2dDb25maXJtQ29tcG9uZW50LFxuICBQcnlEaWFsb2dDb25maXJtRGF0YSxcbiAgUHJ5RGlhbG9nU2VydmljZSxcbiAgU2hhcmVDb25mbGljdFxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBZG1pbkRhdGFzZXRBY3Rpb25zIH0gZnJvbSAnLi9hZG1pbi1kYXRhc2V0LmFjdGlvbnMnO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uYWN0aW9ucyc7XG5pbXBvcnQgeyBBZG1pbkRhdGFzZXRTZXJ2aWNlIH0gZnJvbSAnLi9hZG1pbi1kYXRhc2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFkbWluRGF0YXNldEVmZmVjdHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgZGF0YXNldFNlcnZpY2U6IEFkbWluRGF0YXNldFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcnlEaWFsb2c6IFByeURpYWxvZ1NlcnZpY2VcbiAgKSB7fVxuXG4gIGNyZWF0ZURhdGFzZXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluRGF0YXNldEFjdGlvbnMuY3JlYXRlKSxcbiAgICAgIHN3aXRjaE1hcCgocHJvcHM6IHsgZGF0YXNldDogRGF0YXNldDsgcm91dGU6IHN0cmluZyB9KSA9PlxuICAgICAgICB0aGlzLmRhdGFzZXRTZXJ2aWNlXG4gICAgICAgICAgLmFkZERhdGFzZXQocHJvcHMuZGF0YXNldClcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG1lcmdlTWFwKCgpID0+IFtcbiAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCgpLFxuICAgICAgICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLnVuc2VsZWN0RGF0YXNldCgpLFxuICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHByb3BzLnJvdXRlIH0pXG4gICAgICAgICAgICBdKVxuICAgICAgICAgIClcbiAgICAgICksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogYW55KSA9PiBbQWRtaW5EYXRhc2V0QWN0aW9ucy5mYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgIClcbiAgKTtcblxuICBjb25maXJtRGF0YXNldERlbGV0aW9uJCA9IGNyZWF0ZUVmZmVjdChcbiAgICAoKSA9PlxuICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoQWRtaW5EYXRhc2V0QWN0aW9ucy5jb25maXJtRGF0YXNldERlbGV0aW9uKSxcbiAgICAgICAgdGFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhOiBQcnlEaWFsb2dDb25maXJtRGF0YSA9IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQHByeS5hZG1pbi5pbmZvTW9kYWxUaXRsZScsXG4gICAgICAgICAgICBtZXNzYWdlOiAnQHByeS5hZG1pbi5kYXRhc2V0LmRlbGV0ZScsXG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogMCxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0BwcnkuYWRtaW4uZGVsZXRlJyxcbiAgICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLmRlbGV0ZSh7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGFjdGlvbi5uYW1lLFxuICAgICAgICAgICAgICAgICAgICByb3V0ZTogYWN0aW9uLnJvdXRlLFxuICAgICAgICAgICAgICAgICAgICBhZGRSb3V0ZTogYWN0aW9uLmFkZFJvdXRlXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgeyBpZDogMCwgbGFiZWw6ICdAcHJ5LmFkbWluLmNhbmNlbCcgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG4gICAgICAgICAgdGhpcy5wcnlEaWFsb2cub3BlbihQcnlEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7IGRhdGEgfSk7XG4gICAgICAgIH0pXG4gICAgICApLFxuICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH1cbiAgKTtcblxuICBkZWxldGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBZG1pbkRhdGFzZXRBY3Rpb25zLmRlbGV0ZSksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhc2V0U2VydmljZS5kZWxldGVEYXRhc2V0KGFjdGlvbi5uYW1lKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IFtcbiAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKSxcbiAgICAgICAgICAgIEFkbWluRGF0YXNldEFjdGlvbnMudW5zZWxlY3REYXRhc2V0KCksXG4gICAgICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLmRlbGV0ZWQoeyBhZGRSb3V0ZTogYWN0aW9uLmFkZFJvdXRlIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtBZG1pbkRhdGFzZXRBY3Rpb25zLmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0RGF0YXNldEJ5SWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluRGF0YXNldEFjdGlvbnMuZ2V0RGF0YXNldEJ5SWQpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhc2V0U2VydmljZS5nZXREYXRhc2V0QnlJZChhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChkYXRhKSA9PiBBZG1pbkRhdGFzZXRBY3Rpb25zLmdldERhdGFzZXRCeUlkU3VjY2Vzcyh7IGRhdGEgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWRtaW5EYXRhc2V0QWN0aW9ucy5nZXREYXRhc2V0QnlJZEZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgdW5zZXRNaXNzaW5nR3JvdXBzT25EYXRhc2V0U2VsZWN0aW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBZG1pbkRhdGFzZXRBY3Rpb25zLnNlbGVjdERhdGFzZXQpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4gW1xuICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLnNldE1pc3NpbmdHcm91cHMoeyBtaXNzaW5nR3JvdXBzOiB1bmRlZmluZWQgfSksXG4gICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubGlzdFZlcnNpb25zQnlEYXRhc2V0SWQoeyBpZDogYWN0aW9uLmRhdGFzZXQuaWQgfSlcbiAgICAgIF0pXG4gICAgKVxuICApO1xuXG4gIGRlbGV0ZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluRGF0YXNldEFjdGlvbnMuZGVsZXRlZCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PiBbXG4gICAgICAgIEFkbWluQWN0aW9ucy50b2dnbGVQYW5lbCh7IHBhbmVsT3BlbjogZmFsc2UgfSksXG4gICAgICAgIEFkbWluQWN0aW9ucy5zZWxlY3RDb21wb25lbnRUeXBlKHsgY29tcG9uZW50VHlwZTogbnVsbCB9KSxcbiAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBhY3Rpb24uYWRkUm91dGUgfSksXG4gICAgICAgICAgICAgIGxhYmVsOiAnYWRkJyxcbiAgICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdkYXRhc2V0JyxcbiAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9KVxuICAgICAgXSlcbiAgICApXG4gICk7XG5cbiAgdXBkYXRlRGF0YXNldCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWRtaW5EYXRhc2V0QWN0aW9ucy51cGRhdGUpLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuZGF0YXNldFNlcnZpY2UudXBkYXRlRGF0YXNldChhY3Rpb24uZGF0YXNldCkucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoY29uZmxpY3Q/OiBTaGFyZUNvbmZsaWN0KSA9PiB7XG4gICAgICAgICAgICBsZXQgYWN0aW9uczogQWN0aW9uW10gPSBbXG4gICAgICAgICAgICAgIEFkbWluRGF0YXNldEFjdGlvbnMuc2V0TWlzc2luZ0dyb3Vwcyh7IG1pc3NpbmdHcm91cHM6IGNvbmZsaWN0Py5taXNzaW5nR3JvdXBzQnlFbnRpdHkgfSksXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIGlmIChhY3Rpb24ucm91dGUpXG4gICAgICAgICAgICAgIGFjdGlvbnMucHVzaChBZG1pbkRhdGFzZXRBY3Rpb25zLnVuc2VsZWN0RGF0YXNldCgpLCBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGFjdGlvbi5yb3V0ZSB9KSk7XG4gICAgICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IGFueSkgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICApXG4gICk7XG5cbiAgYWRkRGF0YXNldE1ldGFkYXRhJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZXRhZGF0YUFjdGlvbnMuYWRkRGF0YXNldE1ldGFkYXRhKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuZGF0YXNldFNlcnZpY2UuYWRkRGF0YXNldE1ldGFkYXRhKGFjdGlvbi5kYXRhc2V0SWQsIGFjdGlvbi5tZXRhZGF0YUlkLCBhY3Rpb24udmFsdWUpLnBpcGUoXG4gICAgICAgICAgbWFwKCgpID0+IE1ldGFkYXRhQWN0aW9ucy5hZGREYXRhc2V0TWV0YWRhdGFTdWNjZXNzKHsgZGF0YXNldElkOiBhY3Rpb24uZGF0YXNldElkIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW01ldGFkYXRhQWN0aW9ucy5hZGREYXRhc2V0TWV0YWRhdGFGYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGFkZERhdGFzZXRNZXRhZGF0YVN1Y2Nlc3MkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1ldGFkYXRhQWN0aW9ucy5hZGREYXRhc2V0TWV0YWRhdGFTdWNjZXNzKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLmdldERhdGFzZXRCeUlkKHsgaWQ6IGFjdGlvbi5kYXRhc2V0SWQgfSksXG4gICAgICAgICAgTWV0YWRhdGFBY3Rpb25zLmlzRWRpdGFibGUoeyBlZGl0YWJsZTogZmFsc2UgfSksXG4gICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCgpXG4gICAgICAgIF07XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBkZWxldGVEYXRhc2V0TWV0YWRhdGEkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGEpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhc2V0U2VydmljZS5kZWxldGVEYXRhc2V0TWV0YWRhdGEoYWN0aW9uLmRhdGFzZXRJZCwgYWN0aW9uLm1ldGFkYXRhSWQpLnBpcGUoXG4gICAgICAgICAgbWFwKCgpID0+IE1ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGFTdWNjZXNzKHsgZGF0YXNldElkOiBhY3Rpb24uZGF0YXNldElkIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW01ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGFGYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGRlbGV0ZURhdGFzZXRNZXRhZGF0YVN1Y2Nlc3MkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGFTdWNjZXNzKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBBZG1pbkRhdGFzZXRBY3Rpb25zLmdldERhdGFzZXRCeUlkKHsgaWQ6IGFjdGlvbi5kYXRhc2V0SWQgfSksXG4gICAgICAgICAgTWV0YWRhdGFBY3Rpb25zLmlzRWRpdGFibGUoeyBlZGl0YWJsZTogZmFsc2UgfSksXG4gICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCgpXG4gICAgICAgIF07XG4gICAgICB9KVxuICAgIClcbiAgKTtcbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { createReducer, on } from '@ngrx/store';
2
+ import { AdminDatasetActions } from './admin-dataset.actions';
3
+ export const datasetFeatureKey = '@pry/admin/datasets';
4
+ export const initialDatasetState = {
5
+ isLoading: false,
6
+ selectedDataset: null
7
+ };
8
+ export const datasetReducer = createReducer(initialDatasetState, on(AdminDatasetActions.getDatasetById, (state, action) => ({
9
+ ...state,
10
+ loading: true
11
+ })), on(AdminDatasetActions.getDatasetByIdSuccess, (state, action) => ({
12
+ ...state,
13
+ selectedDataset: action.data,
14
+ loading: false
15
+ })), on(AdminDatasetActions.getDatasetByIdFailure, (state, action) => ({
16
+ ...state,
17
+ error: action.error,
18
+ loading: false
19
+ })), on(AdminDatasetActions.setMissingGroups, (state, { missingGroups }) => ({
20
+ ...state,
21
+ missingGroups
22
+ })), on(AdminDatasetActions.unselectDataset, (state) => ({
23
+ ...state,
24
+ selectedDataset: null
25
+ })), on(AdminDatasetActions.selectDataset, (state, action) => ({
26
+ ...state,
27
+ selectedDataset: action.dataset
28
+ })));
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZGF0YXNldC5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L3N0b3JlL2FkbWluLWRhdGFzZXQucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNoRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU5RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQVN2RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBc0I7SUFDcEQsU0FBUyxFQUFFLEtBQUs7SUFDaEIsZUFBZSxFQUFFLElBQUk7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQ3pDLG1CQUFtQixFQUNuQixFQUFFLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RCxHQUFHLEtBQUs7SUFDUixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEUsR0FBRyxLQUFLO0lBQ1IsZUFBZSxFQUFFLE1BQU0sQ0FBQyxJQUFJO0lBQzVCLE9BQU8sRUFBRSxLQUFLO0NBQ2YsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLG1CQUFtQixDQUFDLHFCQUFxQixFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRSxHQUFHLEtBQUs7SUFDUixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7SUFDbkIsT0FBTyxFQUFFLEtBQUs7Q0FDZixDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsbUJBQW1CLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RSxHQUFHLEtBQUs7SUFDUixhQUFhO0NBQ2QsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRCxHQUFHLEtBQUs7SUFDUixlQUFlLEVBQUUsSUFBSTtDQUN0QixDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsbUJBQW1CLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4RCxHQUFHLEtBQUs7SUFDUixlQUFlLEVBQUUsTUFBTSxDQUFDLE9BQU87Q0FDaEMsQ0FBQyxDQUFDLENBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFzZXQsIE1pc3NpbmdHcm91cHNCeUVudGl0eSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEFkbWluRGF0YXNldEFjdGlvbnMgfSBmcm9tICcuL2FkbWluLWRhdGFzZXQuYWN0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBkYXRhc2V0RmVhdHVyZUtleSA9ICdAcHJ5L2FkbWluL2RhdGFzZXRzJztcblxuZXhwb3J0IGludGVyZmFjZSBBZG1pbkRhdGFzZXRTdGF0ZSB7XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbiAgZXJyb3I/OiBFcnJvcjtcbiAgc2VsZWN0ZWREYXRhc2V0OiBEYXRhc2V0IHwgbnVsbDtcbiAgbWlzc2luZ0dyb3Vwcz86IE1pc3NpbmdHcm91cHNCeUVudGl0eTtcbn1cblxuZXhwb3J0IGNvbnN0IGluaXRpYWxEYXRhc2V0U3RhdGU6IEFkbWluRGF0YXNldFN0YXRlID0ge1xuICBpc0xvYWRpbmc6IGZhbHNlLFxuICBzZWxlY3RlZERhdGFzZXQ6IG51bGxcbn07XG5cbmV4cG9ydCBjb25zdCBkYXRhc2V0UmVkdWNlciA9IGNyZWF0ZVJlZHVjZXIoXG4gIGluaXRpYWxEYXRhc2V0U3RhdGUsXG4gIG9uKEFkbWluRGF0YXNldEFjdGlvbnMuZ2V0RGF0YXNldEJ5SWQsIChzdGF0ZSwgYWN0aW9uKSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIGxvYWRpbmc6IHRydWVcbiAgfSkpLFxuICBvbihBZG1pbkRhdGFzZXRBY3Rpb25zLmdldERhdGFzZXRCeUlkU3VjY2VzcywgKHN0YXRlLCBhY3Rpb24pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2VsZWN0ZWREYXRhc2V0OiBhY3Rpb24uZGF0YSxcbiAgICBsb2FkaW5nOiBmYWxzZVxuICB9KSksXG4gIG9uKEFkbWluRGF0YXNldEFjdGlvbnMuZ2V0RGF0YXNldEJ5SWRGYWlsdXJlLCAoc3RhdGUsIGFjdGlvbikgPT4gKHtcbiAgICAuLi5zdGF0ZSxcbiAgICBlcnJvcjogYWN0aW9uLmVycm9yLFxuICAgIGxvYWRpbmc6IGZhbHNlXG4gIH0pKSxcbiAgb24oQWRtaW5EYXRhc2V0QWN0aW9ucy5zZXRNaXNzaW5nR3JvdXBzLCAoc3RhdGUsIHsgbWlzc2luZ0dyb3VwcyB9KSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIG1pc3NpbmdHcm91cHNcbiAgfSkpLFxuICBvbihBZG1pbkRhdGFzZXRBY3Rpb25zLnVuc2VsZWN0RGF0YXNldCwgKHN0YXRlKSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIHNlbGVjdGVkRGF0YXNldDogbnVsbFxuICB9KSksXG4gIG9uKEFkbWluRGF0YXNldEFjdGlvbnMuc2VsZWN0RGF0YXNldCwgKHN0YXRlLCBhY3Rpb24pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgc2VsZWN0ZWREYXRhc2V0OiBhY3Rpb24uZGF0YXNldFxuICB9KSlcbik7XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { createFeatureSelector, createSelector } from '@ngrx/store';
2
+ import { datasetFeatureKey } from './admin-dataset.reducer';
3
+ const selectFeature = createFeatureSelector(datasetFeatureKey);
4
+ const errors = createSelector(selectFeature, (state) => state.error);
5
+ const isLoading = createSelector(selectFeature, (state) => state.isLoading);
6
+ const selectedDatasetId = createSelector(selectFeature, (state) => state?.selectedDataset?.id);
7
+ const selectedDataset = createSelector(selectFeature, (state) => state?.selectedDataset);
8
+ const selectedDatasetMetadata = createSelector(selectFeature, (state) => state?.selectedDataset?.metadata ?? []);
9
+ const selectedDatasetMissingGroups = createSelector(selectFeature, (state) => state?.missingGroups);
10
+ export const AdminDatasetSelectors = {
11
+ selectFeature,
12
+ errors,
13
+ isLoading,
14
+ selectedDataset,
15
+ selectedDatasetMetadata,
16
+ selectedDatasetMissingGroups,
17
+ selectedDatasetId
18
+ };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tZGF0YXNldC5zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9hZG1pbi9jb21wb25lbnRzL2FkbWluLWRhdGFzZXQvc3RvcmUvYWRtaW4tZGF0YXNldC5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQXFCLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFL0UsTUFBTSxhQUFhLEdBQUcscUJBQXFCLENBQW9CLGlCQUFpQixDQUFDLENBQUM7QUFFbEYsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3JFLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM1RSxNQUFNLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDL0YsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQ3pGLE1BQU0sdUJBQXVCLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7QUFDakgsTUFBTSw0QkFBNEIsR0FBRyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLENBQUM7QUFFcEcsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUc7SUFDbkMsYUFBYTtJQUNiLE1BQU07SUFDTixTQUFTO0lBQ1QsZUFBZTtJQUNmLHVCQUF1QjtJQUN2Qiw0QkFBNEI7SUFDNUIsaUJBQWlCO0NBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVGZWF0dXJlU2VsZWN0b3IsIGNyZWF0ZVNlbGVjdG9yIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQWRtaW5EYXRhc2V0U3RhdGUsIGRhdGFzZXRGZWF0dXJlS2V5IH0gZnJvbSAnLi9hZG1pbi1kYXRhc2V0LnJlZHVjZXInO1xuXG5jb25zdCBzZWxlY3RGZWF0dXJlID0gY3JlYXRlRmVhdHVyZVNlbGVjdG9yPEFkbWluRGF0YXNldFN0YXRlPihkYXRhc2V0RmVhdHVyZUtleSk7XG5cbmNvbnN0IGVycm9ycyA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdEZlYXR1cmUsIChzdGF0ZSkgPT4gc3RhdGUuZXJyb3IpO1xuY29uc3QgaXNMb2FkaW5nID0gY3JlYXRlU2VsZWN0b3Ioc2VsZWN0RmVhdHVyZSwgKHN0YXRlKSA9PiBzdGF0ZS5pc0xvYWRpbmcpO1xuY29uc3Qgc2VsZWN0ZWREYXRhc2V0SWQgPSBjcmVhdGVTZWxlY3RvcihzZWxlY3RGZWF0dXJlLCAoc3RhdGUpID0+IHN0YXRlPy5zZWxlY3RlZERhdGFzZXQ/LmlkKTtcbmNvbnN0IHNlbGVjdGVkRGF0YXNldCA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdEZlYXR1cmUsIChzdGF0ZSkgPT4gc3RhdGU/LnNlbGVjdGVkRGF0YXNldCk7XG5jb25zdCBzZWxlY3RlZERhdGFzZXRNZXRhZGF0YSA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdEZlYXR1cmUsIChzdGF0ZSkgPT4gc3RhdGU/LnNlbGVjdGVkRGF0YXNldD8ubWV0YWRhdGEgPz8gW10pO1xuY29uc3Qgc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdEZlYXR1cmUsIChzdGF0ZSkgPT4gc3RhdGU/Lm1pc3NpbmdHcm91cHMpO1xuXG5leHBvcnQgY29uc3QgQWRtaW5EYXRhc2V0U2VsZWN0b3JzID0ge1xuICBzZWxlY3RGZWF0dXJlLFxuICBlcnJvcnMsXG4gIGlzTG9hZGluZyxcbiAgc2VsZWN0ZWREYXRhc2V0LFxuICBzZWxlY3RlZERhdGFzZXRNZXRhZGF0YSxcbiAgc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyxcbiAgc2VsZWN0ZWREYXRhc2V0SWRcbn07XG4iXX0=