@provoly/dashboard 0.18.5 → 0.18.6

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 (47) hide show
  1. package/dataset/style/_o-pry-dataset-card.scss +0 -1
  2. package/dataset/style/_o-pry-dataset-detail.scss +4 -0
  3. package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +3 -3
  4. package/esm2022/dataset/components/dataset-card/dataset-card.component.mjs +3 -3
  5. package/esm2022/dataset/components/dataset.component.mjs +3 -3
  6. package/esm2022/dataset/style/css.component.mjs +2 -2
  7. package/esm2022/filters/date/date-filter.component.mjs +8 -4
  8. package/esm2022/filters/list/list-filter.component.mjs +4 -3
  9. package/esm2022/filters/number/number-filter.component.mjs +3 -3
  10. package/esm2022/filters/text/text-filter.component.mjs +3 -3
  11. package/esm2022/lib/core/store/search/search.effects.mjs +2 -2
  12. package/esm2022/lib/dashboard/filter/base-filter.component.mjs +4 -1
  13. package/esm2022/lib/dashboard/item-utils.mjs +1 -60
  14. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +3 -4
  15. package/esm2022/presentation/components/presentation.component.mjs +1 -3
  16. package/esm2022/widgets/widget-map/component/widget-map-layer.service.mjs +39 -38
  17. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +12 -12
  18. package/esm2022/widgets/widget-map/pipe/widget-map-geometry-fields-for.pipe.mjs +3 -3
  19. package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +262 -216
  20. package/fesm2022/provoly-dashboard-admin.mjs +2 -2
  21. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  22. package/fesm2022/provoly-dashboard-dataset.mjs +6 -6
  23. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  24. package/fesm2022/provoly-dashboard-filters-date.mjs +7 -3
  25. package/fesm2022/provoly-dashboard-filters-date.mjs.map +1 -1
  26. package/fesm2022/provoly-dashboard-filters-list.mjs +3 -2
  27. package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
  28. package/fesm2022/provoly-dashboard-filters-number.mjs +2 -2
  29. package/fesm2022/provoly-dashboard-filters-number.mjs.map +1 -1
  30. package/fesm2022/provoly-dashboard-filters-text.mjs +2 -2
  31. package/fesm2022/provoly-dashboard-filters-text.mjs.map +1 -1
  32. package/fesm2022/provoly-dashboard-presentation.mjs +0 -2
  33. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  34. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +377 -331
  35. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  36. package/fesm2022/provoly-dashboard.mjs +34 -90
  37. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  38. package/filters/date/date-filter.component.d.ts +1 -0
  39. package/lib/dashboard/filter/base-filter.component.d.ts +4 -2
  40. package/lib/dashboard/item-utils.d.ts +0 -8
  41. package/lib/dashboard/store/dashboard.effects.d.ts +0 -3
  42. package/package.json +7 -7
  43. package/styles/components/_a-table.scss +1 -1
  44. package/styles/components/_m-filter.scss +23 -23
  45. package/styles/components/_m-form-label-field.scss +6 -0
  46. package/styles-theme/components-theme/_m-filter.theme.scss +19 -4
  47. package/widgets/widget-map/utils/widget-map.utils.d.ts +23 -17
@@ -1,7 +1,7 @@
1
1
  import { Pipe } from '@angular/core';
2
2
  import { ClassSelectors, FieldSelectors } from '@provoly/dashboard';
3
3
  import { combineLatest, filter, map } from 'rxjs';
4
- import { geometryForLayer } from '../utils/widget-map.utils';
4
+ import { WidgetMapUtils } from '../utils/widget-map.utils';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@ngrx/store";
7
7
  export class GeometryFieldsForPipe {
@@ -15,7 +15,7 @@ export class GeometryFieldsForPipe {
15
15
  transform(value, ...args) {
16
16
  const specificLayer = value;
17
17
  const limitToClasses = args[0].classes;
18
- const type = geometryForLayer({ type: args[0].type });
18
+ const type = WidgetMapUtils.geometryForLayer({ type: args[0].type });
19
19
  return combineLatest([this.classes$, this.fields$]).pipe(filter(([classes, fields]) => !!classes && !!fields && classes.length > 0 && fields.length > 0), map(([classes, fields]) => {
20
20
  const potentialFields = classes
21
21
  .map((cl) => cl.id)
@@ -49,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
49
49
  name: 'geometryFieldsFor'
50
50
  }]
51
51
  }], ctorParameters: function () { return [{ type: i1.Store }]; } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LW1hcC1nZW9tZXRyeS1maWVsZHMtZm9yLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC93aWRnZXRzL3dpZGdldC1tYXAvcGlwZS93aWRnZXQtbWFwLWdlb21ldHJ5LWZpZWxkcy1mb3IucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBR0wsY0FBYyxFQUVkLGNBQWMsRUFNZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBSzdELE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsWUFBb0IsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNuQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLO2FBQ3ZCLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO2FBQzlCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUE0QixFQUFFLEdBQUcsSUFBVztRQUNwRCxNQUFNLGFBQWEsR0FBRyxLQUlX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QUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0FuRFUscUJBQXFCOzRHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBSGpDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG1CQUFtQjtpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2xhc3MsXG4gIENsYXNzU2VsZWN0b3JzLFxuICBGaWVsZCxcbiAgRmllbGRTZWxlY3RvcnMsXG4gIE1hcFdpZGdldEJ1YmJsZUxheWVyT3B0aW9ucyxcbiAgTWFwV2lkZ2V0R2VvbWV0cnlMYXllck9wdGlvbnMsXG4gIE1hcFdpZGdldEhlYXRNYXBMYXllck9wdGlvbnMsXG4gIE1hcFdpZGdldExheWVyT3B0aW9ucyxcbiAgTWFwV2lkZ2V0TWFya2VyTGF5ZXJPcHRpb25zXG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZ2VvbWV0cnlGb3JMYXllciB9IGZyb20gJy4uL3V0aWxzL3dpZGdldC1tYXAudXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdnZW9tZXRyeUZpZWxkc0Zvcidcbn0pXG5leHBvcnQgY2xhc3MgR2VvbWV0cnlGaWVsZHNGb3JQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNsYXNzZXMkOiBPYnNlcnZhYmxlPENsYXNzW10+O1xuICBmaWVsZHMkOiBPYnNlcnZhYmxlPEZpZWxkW10+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4pIHtcbiAgICB0aGlzLmNsYXNzZXMkID0gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChDbGFzc1NlbGVjdG9ycy5jbGFzc2VzKVxuICAgICAgLnBpcGUobWFwKChjbGFzc2VzKSA9PiBjbGFzc2VzLnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpKSk7XG4gICAgdGhpcy5maWVsZHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRmllbGRTZWxlY3RvcnMuZmllbGRzKTtcbiAgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogTWFwV2lkZ2V0TGF5ZXJPcHRpb25zLCAuLi5hcmdzOiBhbnlbXSk6IE9ic2VydmFibGU8QXR0cmlidXRlW10+IHtcbiAgICBjb25zdCBzcGVjaWZpY0xheWVyID0gdmFsdWUgYXNcbiAgICAgIHwgTWFwV2lkZ2V0SGVhdE1hcExheWVyT3B0aW9uc1xuICAgICAgfCBNYXBXaWRnZXRNYXJrZXJMYXllck9wdGlvbnNcbiAgICAgIHwgTWFwV2lkZ2V0QnViYmxlTGF5ZXJPcHRpb25zXG4gICAgICB8IE1hcFdpZGdldEdlb21ldHJ5TGF5ZXJPcHRpb25zO1xuXG4gICAgY29uc3QgbGltaXRUb0NsYXNzZXMgPSBhcmdzWzBdLmNsYXNzZXMgYXMgc3RyaW5nW107XG4gICAgY29uc3QgdHlwZSA9IGdlb21ldHJ5Rm9yTGF5ZXIoeyB0eXBlOiBhcmdzWzBdLnR5cGUgfSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdGhpcy5jbGFzc2VzJCwgdGhpcy5maWVsZHMkXSkucGlwZShcbiAgICAgIGZpbHRlcigoW2NsYXNzZXMsIGZpZWxkc10pID0+ICEhY2xhc3NlcyAmJiAhIWZpZWxkcyAmJiBjbGFzc2VzLmxlbmd0aCA+IDAgJiYgZmllbGRzLmxlbmd0aCA+IDApLFxuICAgICAgbWFwKChbY2xhc3NlcywgZmllbGRzXSkgPT4ge1xuICAgICAgICBjb25zdCBwb3RlbnRpYWxGaWVsZHMgPSBjbGFzc2VzXG4gICAgICAgICAgLm1hcCgoY2wpID0+IGNsLmlkKVxuICAgICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgICAob0NsYXNzSWQpID0+XG4gICAgICAgICAgICAgICFzcGVjaWZpY0xheWVyLmNsYXNzZXMgfHxcbiAgICAgICAgICAgICAgc3BlY2lmaWNMYXllci5jbGFzc2VzLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAgICAgICAhIXNwZWNpZmljTGF5ZXIuY2xhc3Nlcz8uZmluZCgoY2wpID0+IG9DbGFzc0lkID09PSBjbClcbiAgICAgICAgICApXG4gICAgICAgICAgLmZpbHRlcigoY2xhc3NJZCkgPT4gIWxpbWl0VG9DbGFzc2VzIHx8IGxpbWl0VG9DbGFzc2VzLmxlbmd0aCA9PT0gMCB8fCBsaW1pdFRvQ2xhc3Nlcy5pbmNsdWRlcyhjbGFzc0lkKSlcbiAgICAgICAgICAubWFwKChvQ2xhc3NJZCkgPT4gY2xhc3Nlcy5maW5kKChjbCkgPT4gY2wuaWQgPT09IG9DbGFzc0lkKSA/PyB7IGF0dHJpYnV0ZXM6IFtdIGFzIEF0dHJpYnV0ZVtdIH0pXG4gICAgICAgICAgLm1hcCgob0NsYXNzKSA9PiBvQ2xhc3MuYXR0cmlidXRlcylcbiAgICAgICAgICAucmVkdWNlKChwcmV2LCBjdXJyKSA9PiBbLi4ucHJldiwgLi4uY3Vycl0sIFtdKVxuICAgICAgICAgIC5maWx0ZXIoKGF0dHIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGF0dHJGaWVsZCA9IGZpZWxkcy5maW5kKChmKSA9PiBmLmlkID09PSBhdHRyLmZpZWxkKTtcbiAgICAgICAgICAgIHJldHVybiAhIWF0dHJGaWVsZCAmJiBhdHRyRmllbGQudHlwZSA9PT0gdHlwZTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKTtcblxuICAgICAgICBjb25zdCByZXNBcnIgPSBbXSBhcyBBdHRyaWJ1dGVbXTtcbiAgICAgICAgcG90ZW50aWFsRmllbGRzLmZvckVhY2goZnVuY3Rpb24gKGF0dHIpIHtcbiAgICAgICAgICBpZiAocmVzQXJyLmZpbmRJbmRleCgoeCkgPT4geC5uYW1lID09IGF0dHIubmFtZSkgPD0gLTEpIHtcbiAgICAgICAgICAgIHJlc0Fyci5wdXNoKGF0dHIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXNBcnI7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LW1hcC1nZW9tZXRyeS1maWVsZHMtZm9yLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC93aWRnZXRzL3dpZGdldC1tYXAvcGlwZS93aWRnZXQtbWFwLWdlb21ldHJ5LWZpZWxkcy1mb3IucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBR0wsY0FBYyxFQUVkLGNBQWMsRUFNZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7OztBQUszRCxNQUFNLE9BQU8scUJBQXFCO0lBSWhDLFlBQW9CLEtBQWlCO1FBQWpCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSzthQUN2QixNQUFNLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQzthQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxTQUFTLENBQUMsS0FBNEIsRUFBRSxHQUFHLElBQVc7UUFDcEQsTUFBTSxhQUFhLEdBQUcsS0FJVyxDQUFDO1FBRWxDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFtQixDQUFDO1FBQ25ELE1BQU0sSUFBSSxHQUFHLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVyRSxPQUFPLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN0RCxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQy9GLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDeEIsTUFBTSxlQUFlLEdBQUcsT0FBTztpQkFDNUIsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO2lCQUNsQixNQUFNLENBQ0wsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUNYLENBQUMsYUFBYSxDQUFDLE9BQU87Z0JBQ3RCLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQ2xDLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsUUFBUSxLQUFLLEVBQUUsQ0FBQyxDQUN6RDtpQkFDQSxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsY0FBYyxJQUFJLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ3ZHLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFpQixFQUFFLENBQUM7aUJBQ2hHLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztpQkFDbEMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztpQkFDOUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2YsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFELE9BQU8sQ0FBQyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQztZQUNoRCxDQUFDLENBQUM7aUJBQ0QsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFFaEQsTUFBTSxNQUFNLEdBQUcsRUFBaUIsQ0FBQztZQUNqQyxlQUFlLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSTtnQkFDcEMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtvQkFDdEQsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDbkI7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQW5EVSxxQkFBcUI7NEdBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsbUJBQW1CO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgQXR0cmlidXRlLFxuICBDbGFzcyxcbiAgQ2xhc3NTZWxlY3RvcnMsXG4gIEZpZWxkLFxuICBGaWVsZFNlbGVjdG9ycyxcbiAgTWFwV2lkZ2V0QnViYmxlTGF5ZXJPcHRpb25zLFxuICBNYXBXaWRnZXRHZW9tZXRyeUxheWVyT3B0aW9ucyxcbiAgTWFwV2lkZ2V0SGVhdE1hcExheWVyT3B0aW9ucyxcbiAgTWFwV2lkZ2V0TGF5ZXJPcHRpb25zLFxuICBNYXBXaWRnZXRNYXJrZXJMYXllck9wdGlvbnNcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXaWRnZXRNYXBVdGlscyB9IGZyb20gJy4uL3V0aWxzL3dpZGdldC1tYXAudXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdnZW9tZXRyeUZpZWxkc0Zvcidcbn0pXG5leHBvcnQgY2xhc3MgR2VvbWV0cnlGaWVsZHNGb3JQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNsYXNzZXMkOiBPYnNlcnZhYmxlPENsYXNzW10+O1xuICBmaWVsZHMkOiBPYnNlcnZhYmxlPEZpZWxkW10+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4pIHtcbiAgICB0aGlzLmNsYXNzZXMkID0gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChDbGFzc1NlbGVjdG9ycy5jbGFzc2VzKVxuICAgICAgLnBpcGUobWFwKChjbGFzc2VzKSA9PiBjbGFzc2VzLnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpKSk7XG4gICAgdGhpcy5maWVsZHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRmllbGRTZWxlY3RvcnMuZmllbGRzKTtcbiAgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogTWFwV2lkZ2V0TGF5ZXJPcHRpb25zLCAuLi5hcmdzOiBhbnlbXSk6IE9ic2VydmFibGU8QXR0cmlidXRlW10+IHtcbiAgICBjb25zdCBzcGVjaWZpY0xheWVyID0gdmFsdWUgYXNcbiAgICAgIHwgTWFwV2lkZ2V0SGVhdE1hcExheWVyT3B0aW9uc1xuICAgICAgfCBNYXBXaWRnZXRNYXJrZXJMYXllck9wdGlvbnNcbiAgICAgIHwgTWFwV2lkZ2V0QnViYmxlTGF5ZXJPcHRpb25zXG4gICAgICB8IE1hcFdpZGdldEdlb21ldHJ5TGF5ZXJPcHRpb25zO1xuXG4gICAgY29uc3QgbGltaXRUb0NsYXNzZXMgPSBhcmdzWzBdLmNsYXNzZXMgYXMgc3RyaW5nW107XG4gICAgY29uc3QgdHlwZSA9IFdpZGdldE1hcFV0aWxzLmdlb21ldHJ5Rm9yTGF5ZXIoeyB0eXBlOiBhcmdzWzBdLnR5cGUgfSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdGhpcy5jbGFzc2VzJCwgdGhpcy5maWVsZHMkXSkucGlwZShcbiAgICAgIGZpbHRlcigoW2NsYXNzZXMsIGZpZWxkc10pID0+ICEhY2xhc3NlcyAmJiAhIWZpZWxkcyAmJiBjbGFzc2VzLmxlbmd0aCA+IDAgJiYgZmllbGRzLmxlbmd0aCA+IDApLFxuICAgICAgbWFwKChbY2xhc3NlcywgZmllbGRzXSkgPT4ge1xuICAgICAgICBjb25zdCBwb3RlbnRpYWxGaWVsZHMgPSBjbGFzc2VzXG4gICAgICAgICAgLm1hcCgoY2wpID0+IGNsLmlkKVxuICAgICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgICAob0NsYXNzSWQpID0+XG4gICAgICAgICAgICAgICFzcGVjaWZpY0xheWVyLmNsYXNzZXMgfHxcbiAgICAgICAgICAgICAgc3BlY2lmaWNMYXllci5jbGFzc2VzLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAgICAgICAhIXNwZWNpZmljTGF5ZXIuY2xhc3Nlcz8uZmluZCgoY2wpID0+IG9DbGFzc0lkID09PSBjbClcbiAgICAgICAgICApXG4gICAgICAgICAgLmZpbHRlcigoY2xhc3NJZCkgPT4gIWxpbWl0VG9DbGFzc2VzIHx8IGxpbWl0VG9DbGFzc2VzLmxlbmd0aCA9PT0gMCB8fCBsaW1pdFRvQ2xhc3Nlcy5pbmNsdWRlcyhjbGFzc0lkKSlcbiAgICAgICAgICAubWFwKChvQ2xhc3NJZCkgPT4gY2xhc3Nlcy5maW5kKChjbCkgPT4gY2wuaWQgPT09IG9DbGFzc0lkKSA/PyB7IGF0dHJpYnV0ZXM6IFtdIGFzIEF0dHJpYnV0ZVtdIH0pXG4gICAgICAgICAgLm1hcCgob0NsYXNzKSA9PiBvQ2xhc3MuYXR0cmlidXRlcylcbiAgICAgICAgICAucmVkdWNlKChwcmV2LCBjdXJyKSA9PiBbLi4ucHJldiwgLi4uY3Vycl0sIFtdKVxuICAgICAgICAgIC5maWx0ZXIoKGF0dHIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGF0dHJGaWVsZCA9IGZpZWxkcy5maW5kKChmKSA9PiBmLmlkID09PSBhdHRyLmZpZWxkKTtcbiAgICAgICAgICAgIHJldHVybiAhIWF0dHJGaWVsZCAmJiBhdHRyRmllbGQudHlwZSA9PT0gdHlwZTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKTtcblxuICAgICAgICBjb25zdCByZXNBcnIgPSBbXSBhcyBBdHRyaWJ1dGVbXTtcbiAgICAgICAgcG90ZW50aWFsRmllbGRzLmZvckVhY2goZnVuY3Rpb24gKGF0dHIpIHtcbiAgICAgICAgICBpZiAocmVzQXJyLmZpbmRJbmRleCgoeCkgPT4geC5uYW1lID09IGF0dHIubmFtZSkgPD0gLTEpIHtcbiAgICAgICAgICAgIHJlc0Fyci5wdXNoKGF0dHIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXNBcnI7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==