@hestia-earth/ui-components 0.21.14 → 0.21.16

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 (151) hide show
  1. package/common/bar-chart/bar-chart.component.d.ts +6 -11
  2. package/common/chart-configuration.directive.d.ts +29 -0
  3. package/common/common.module.d.ts +27 -24
  4. package/common/dropdown/dropdown.component.d.ts +16 -0
  5. package/common/index.d.ts +4 -0
  6. package/common/mobile-shell/mobile-shell.component.d.ts +1 -1
  7. package/common/shell/shell.component.d.ts +2 -1
  8. package/common/thousand-suffixes.pipe.d.ts +7 -0
  9. package/common/thousands.d.ts +1 -0
  10. package/esm2022/auth/auth.service.mjs +1 -1
  11. package/esm2022/bibliographies/bibliographies-search-confirm/bibliographies-search-confirm.component.mjs +8 -6
  12. package/esm2022/bibliographies/bibliographies.module.mjs +5 -12
  13. package/esm2022/bibliographies/index.mjs +1 -1
  14. package/esm2022/common/bar-chart/bar-chart.component.mjs +30 -49
  15. package/esm2022/common/bind-once.directive.mjs +1 -1
  16. package/esm2022/common/blank-node-state/blank-node-state.component.mjs +4 -4
  17. package/esm2022/common/blank-node-value-delta/blank-node-value-delta.component.mjs +3 -3
  18. package/esm2022/common/chart-configuration.directive.mjs +67 -0
  19. package/esm2022/common/clipboard/clipboard.component.mjs +3 -3
  20. package/esm2022/common/color.mjs +7 -5
  21. package/esm2022/common/common.light.module.mjs +5 -13
  22. package/esm2022/common/common.module.mjs +46 -16
  23. package/esm2022/common/common.service.mjs +1 -1
  24. package/esm2022/common/compound.mjs +1 -1
  25. package/esm2022/common/d3-utils.mjs +1 -1
  26. package/esm2022/common/data-table/data-table.component.mjs +3 -3
  27. package/esm2022/common/delta-utils.mjs +1 -1
  28. package/esm2022/common/dropdown/dropdown.component.mjs +44 -0
  29. package/esm2022/common/index.mjs +5 -1
  30. package/esm2022/common/issue-confirm/issue-confirm.component.mjs +6 -6
  31. package/esm2022/common/link-key-value/link-key-value.component.mjs +6 -9
  32. package/esm2022/common/logs-utils.mjs +6 -6
  33. package/esm2022/common/maps-drawing-confirm/maps-drawing-confirm.component.mjs +3 -3
  34. package/esm2022/common/maps-utils.mjs +31 -26
  35. package/esm2022/common/mobile-shell/mobile-shell.component.mjs +9 -4
  36. package/esm2022/common/navigation-menu/navigation-menu.component.mjs +1 -1
  37. package/esm2022/common/node-utils.mjs +14 -9
  38. package/esm2022/common/pluralize.mjs +10 -7
  39. package/esm2022/common/pluralize.pipe.mjs +1 -1
  40. package/esm2022/common/popover/popover.component.mjs +3 -3
  41. package/esm2022/common/precision.pipe.mjs +1 -1
  42. package/esm2022/common/resized.directive.mjs +3 -3
  43. package/esm2022/common/rxjs-utils.mjs +2 -2
  44. package/esm2022/common/schema-version-link/schema-version-link.component.mjs +2 -7
  45. package/esm2022/common/search-extend/search-extend.component.mjs +3 -3
  46. package/esm2022/common/semver-utils.mjs +1 -1
  47. package/esm2022/common/shell/shell.component.mjs +9 -6
  48. package/esm2022/common/social-tags/social-tags.component.mjs +1 -1
  49. package/esm2022/common/sort-select/sort-select.component.mjs +7 -9
  50. package/esm2022/common/tags-input.directive.mjs +2 -2
  51. package/esm2022/common/thousand-suffixes.pipe.mjs +17 -0
  52. package/esm2022/common/thousands.mjs +6 -0
  53. package/esm2022/common/toast/toast.component.mjs +3 -3
  54. package/esm2022/common/toast.service.mjs +1 -1
  55. package/esm2022/common/unit-converter/unit-converter.component.mjs +5 -5
  56. package/esm2022/common/utils.mjs +28 -22
  57. package/esm2022/cycles/cycles-activity/cycles-activity.component.mjs +13 -7
  58. package/esm2022/cycles/cycles-activity-logs/cycles-activity-logs.component.mjs +3 -3
  59. package/esm2022/cycles/cycles-animals/cycles-animals.component.mjs +5 -7
  60. package/esm2022/cycles/cycles-completeness/cycles-completeness.component.mjs +4 -6
  61. package/esm2022/cycles/cycles-completeness-logs/cycles-completeness-logs.component.mjs +3 -3
  62. package/esm2022/cycles/cycles-emissions/cycles-emissions.component.mjs +10 -6
  63. package/esm2022/cycles/cycles-emissions-chart/cycles-emissions-chart.component.mjs +16 -10
  64. package/esm2022/cycles/cycles-emissions-logs/cycles-emissions-logs.component.mjs +4 -7
  65. package/esm2022/cycles/cycles-practices/cycles-practices.component.mjs +10 -6
  66. package/esm2022/cycles/cycles-practices-logs/cycles-practices-logs.component.mjs +4 -6
  67. package/esm2022/cycles/cycles-practices-timeline/cycles-practices-timeline.component.mjs +9 -7
  68. package/esm2022/cycles/cycles-result/cycles-result.component.mjs +12 -8
  69. package/esm2022/cycles/cycles.model.mjs +2 -2
  70. package/esm2022/cycles/cycles.module.mjs +4 -15
  71. package/esm2022/engine/aggregation-engine.service.mjs +1 -1
  72. package/esm2022/engine/engine-models-version-link/engine-models-version-link.component.mjs +4 -9
  73. package/esm2022/engine/engine-models-version-link/engine-models-version-link.model.mjs +5 -3
  74. package/esm2022/engine/engine-orchestrator-edit/engine-orchestrator-edit.component.mjs +19 -26
  75. package/esm2022/engine/engine-requirements-form/engine-requirements-form.component.mjs +5 -5
  76. package/esm2022/engine/engine.module.mjs +5 -21
  77. package/esm2022/engine/engine.service.mjs +36 -26
  78. package/esm2022/files/files-error-summary.model.mjs +7 -7
  79. package/esm2022/files/files-error.model.mjs +79 -60
  80. package/esm2022/files/files-form/files-form.component.mjs +101 -93
  81. package/esm2022/files/files-form.model.mjs +154 -119
  82. package/esm2022/files/files-upload-errors/files-upload-errors.component.mjs +24 -17
  83. package/esm2022/files/files.module.mjs +9 -11
  84. package/esm2022/fontawesome/fontawesome.module.mjs +4 -4
  85. package/esm2022/glossary/glossary.service.mjs +1 -1
  86. package/esm2022/impact-assessments/impact-assessments-graph/impact-assessments-graph.component.mjs +98 -109
  87. package/esm2022/impact-assessments/impact-assessments-indicator-breakdown-chart/impact-assessments-indicator-breakdown-chart.component.mjs +43 -44
  88. package/esm2022/impact-assessments/impact-assessments-indicators-chart/impact-assessments-indicators-chart.component.mjs +16 -10
  89. package/esm2022/impact-assessments/impact-assessments-products/impact-assessments-products.component.mjs +12 -12
  90. package/esm2022/impact-assessments/impact-assessments-products-logs/impact-assessments-products-logs.component.mjs +4 -6
  91. package/esm2022/impact-assessments/impact-assessments.module.mjs +4 -15
  92. package/esm2022/impact-assessments/index.mjs +1 -1
  93. package/esm2022/node/node-csv-export-confirm/node-csv-export-confirm.component.mjs +6 -4
  94. package/esm2022/node/node-csv-select-headers/node-csv-select-headers.component.mjs +7 -11
  95. package/esm2022/node/node-csv.service.mjs +1 -1
  96. package/esm2022/node/node-diffs/node-diffs.component.mjs +10 -5
  97. package/esm2022/node/node-link/node-link.component.mjs +4 -8
  98. package/esm2022/node/node-logs-file/node-logs-file.component.mjs +5 -5
  99. package/esm2022/node/node-logs-models/node-logs-models.component.mjs +45 -47
  100. package/esm2022/node/node-logs-models/node-logs-models.model.mjs +137 -163
  101. package/esm2022/node/node-missing-lookup-factors/node-missing-lookup-factors.component.mjs +3 -3
  102. package/esm2022/node/node-recommendations/node-recommendations.component.mjs +9 -7
  103. package/esm2022/node/node-value-details/node-value-details.component.mjs +33 -13
  104. package/esm2022/node/node.module.mjs +4 -12
  105. package/esm2022/node/node.service.mjs +25 -13
  106. package/esm2022/schema/schema-info/schema-info.component.mjs +3 -3
  107. package/esm2022/schema/schema.module.mjs +5 -15
  108. package/esm2022/schema/schema.service.mjs +17 -23
  109. package/esm2022/search/search.model.mjs +20 -43
  110. package/esm2022/search/search.service.mjs +13 -11
  111. package/esm2022/select/filter-store.mjs +11 -16
  112. package/esm2022/select/filter.component.mjs +7 -7
  113. package/esm2022/select/node-element.directive.mjs +9 -9
  114. package/esm2022/select/node-element.token.mjs +1 -1
  115. package/esm2022/select/select-option/select-option.component.mjs +6 -6
  116. package/esm2022/select/select-option/select-option.token.mjs +1 -1
  117. package/esm2022/select/select-option-group/select-option-group.component.mjs +15 -19
  118. package/esm2022/select/select-option-group/select-option-group.token.mjs +1 -1
  119. package/esm2022/select/select.component.mjs +18 -23
  120. package/esm2022/select/select.module.mjs +4 -12
  121. package/esm2022/select/select.token.mjs +1 -1
  122. package/esm2022/select/toggle-option.directive.mjs +3 -5
  123. package/esm2022/select/utils/flat-filter-data.mjs +3 -10
  124. package/esm2022/select/utils/map-filter-data.mjs +3 -5
  125. package/esm2022/select/utils/populate-with-track-ids-filter-data.mjs +2 -2
  126. package/esm2022/select/utils/search-filter-data.mjs +3 -5
  127. package/esm2022/sites/sites-maps/sites-maps.component.mjs +23 -21
  128. package/esm2022/sites/sites-measurements/sites-measurements.component.mjs +4 -4
  129. package/esm2022/sites/sites-measurements-logs/sites-measurements-logs.component.mjs +4 -7
  130. package/esm2022/sites/sites.model.mjs +11 -11
  131. package/esm2022/sites/sites.module.mjs +5 -24
  132. package/esm2022/tags-input/defaultOptions.mjs +1 -1
  133. package/esm2022/tags-input/index.mjs +63 -41
  134. package/esm2022/tags-input/templates/dropdown-item.mjs +2 -2
  135. package/esm2022/tags-input/templates/tag.mjs +2 -2
  136. package/esm2022/tags-input/templates/wrapper.mjs +2 -2
  137. package/esm2022/tags-input/utils/component.mjs +5 -3
  138. package/esm2022/tags-input/utils/dom.mjs +13 -11
  139. package/esm2022/tags-input/utils/events.mjs +3 -3
  140. package/esm2022/tags-input/utils/type.mjs +5 -5
  141. package/esm2022/tags-input/utils/uuid.mjs +2 -2
  142. package/esm2022/terms/terms-property-content/terms-property-content.component.mjs +3 -3
  143. package/esm2022/terms/terms-sub-class-of-content/terms-sub-class-of-content.component.mjs +5 -8
  144. package/esm2022/terms/terms.model.mjs +21 -6
  145. package/esm2022/terms/terms.module.mjs +15 -14
  146. package/fesm2022/hestia-earth-ui-components.mjs +1623 -1500
  147. package/fesm2022/hestia-earth-ui-components.mjs.map +1 -1
  148. package/package.json +1 -1
  149. package/select/filter-store.d.ts +1 -1
  150. package/select/select-option/select-option.component.d.ts +1 -1
  151. package/styles.scss +7 -7
@@ -1,4 +1,5 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ import { ChartConfiguration } from 'chart.js';
2
3
  import * as i0 from "@angular/core";
3
4
  export interface ChartDataItem {
4
5
  label: string;
@@ -41,6 +42,10 @@ export declare const DATASETS_SETTINGS_TOKEN: InjectionToken<{
41
42
  maxBarThickness: number;
42
43
  }>;
43
44
  export declare class BarChartComponent {
45
+ set max(value: number);
46
+ set data(value: ChartDataItem[]);
47
+ set customDatasets(value: any);
48
+ set custom(value: any);
44
49
  private customDatasetsOptions;
45
50
  private customOptions;
46
51
  private maxValue;
@@ -48,19 +53,9 @@ export declare class BarChartComponent {
48
53
  private maxOptions;
49
54
  private dataOptions;
50
55
  private defaultChartSettings;
51
- private options;
56
+ protected configuration: import("@angular/core").Signal<ChartConfiguration>;
52
57
  private defaultDatasetsSettings;
53
58
  private datasets;
54
- private ngZone;
55
- private updateChartEffect;
56
- private chartRef;
57
- private chartRefExits;
58
- private chart;
59
- set max(value: number);
60
- set data(value: ChartDataItem[]);
61
- set customDatasets(value: any);
62
- set custom(value: any);
63
- private _updateChart;
64
59
  static ɵfac: i0.ɵɵFactoryDeclaration<BarChartComponent, never>;
65
60
  static ɵcmp: i0.ɵɵComponentDeclaration<BarChartComponent, "he-bar-chart", never, { "max": { "alias": "max"; "required": false; }; "data": { "alias": "data"; "required": false; }; "customDatasets": { "alias": "customDatasets"; "required": false; }; "custom": { "alias": "custom"; "required": false; }; }, {}, never, never, false, never>;
66
61
  }
@@ -0,0 +1,29 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import Chart, { ChartConfiguration } from 'chart.js';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ChartConfigurationDirective implements OnDestroy {
5
+ private _zone;
6
+ private _elementRef;
7
+ private _chart;
8
+ private _observer;
9
+ /**
10
+ * The chart configuration.
11
+ * This is used to initialize the chart.
12
+ *
13
+ * @param configuration The chart configuration
14
+ */
15
+ set chartConfiguration(configuration: ChartConfiguration);
16
+ /**
17
+ * The container element of the chart.
18
+ * This is used to observe the size of the container and resize the chart accordingly. (chart.js update charts only on the window resize event)
19
+ * If not provided, the chart will not be resized.
20
+ *
21
+ * @param container The container element of the chart
22
+ */
23
+ set chartContainer(container: HTMLElement);
24
+ get chart(): Chart;
25
+ resize(): void;
26
+ ngOnDestroy(): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChartConfigurationDirective, never>;
28
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ChartConfigurationDirective, "[chartConfiguration]", ["chart"], { "chartConfiguration": { "alias": "chartConfiguration"; "required": false; }; "chartContainer": { "alias": "chartContainer"; "required": false; }; }, {}, never, never, false, never>;
29
+ }
@@ -5,33 +5,36 @@ import * as i3 from "./blank-node-state-notice/blank-node-state-notice.component
5
5
  import * as i4 from "./blank-node-value-delta/blank-node-value-delta.component";
6
6
  import * as i5 from "./clipboard/clipboard.component";
7
7
  import * as i6 from "./data-table/data-table.component";
8
- import * as i7 from "./link-key-value/link-key-value.component";
9
- import * as i8 from "./maps-drawing-confirm/maps-drawing-confirm.component";
10
- import * as i9 from "./mobile-shell/mobile-shell.component";
11
- import * as i10 from "./popover/popover.component";
12
- import * as i11 from "./popover-confirm/popover-confirm.component";
13
- import * as i12 from "./schema-version-link/schema-version-link.component";
14
- import * as i13 from "./search-extend/search-extend.component";
15
- import * as i14 from "./shell/shell.component";
16
- import * as i15 from "./skeleton-text/skeleton-text.component";
17
- import * as i16 from "./unit-converter/unit-converter.component";
18
- import * as i17 from "./tags-input.directive";
19
- import * as i18 from "./times.pipe";
20
- import * as i19 from "./get.pipe";
21
- import * as i20 from "./is-array.pipe";
22
- import * as i21 from "./is-object.pipe";
23
- import * as i22 from "./remove-markdown.pipe";
24
- import * as i23 from "./resized.directive";
8
+ import * as i7 from "./dropdown/dropdown.component";
9
+ import * as i8 from "./link-key-value/link-key-value.component";
10
+ import * as i9 from "./maps-drawing-confirm/maps-drawing-confirm.component";
11
+ import * as i10 from "./mobile-shell/mobile-shell.component";
12
+ import * as i11 from "./popover/popover.component";
13
+ import * as i12 from "./popover-confirm/popover-confirm.component";
14
+ import * as i13 from "./schema-version-link/schema-version-link.component";
15
+ import * as i14 from "./search-extend/search-extend.component";
16
+ import * as i15 from "./shell/shell.component";
17
+ import * as i16 from "./skeleton-text/skeleton-text.component";
18
+ import * as i17 from "./unit-converter/unit-converter.component";
19
+ import * as i18 from "./tags-input.directive";
20
+ import * as i19 from "./times.pipe";
21
+ import * as i20 from "./get.pipe";
22
+ import * as i21 from "./is-array.pipe";
23
+ import * as i22 from "./is-object.pipe";
24
+ import * as i23 from "./remove-markdown.pipe";
25
25
  import * as i24 from "./sort-by.pipe";
26
26
  import * as i25 from "./sort-select/sort-select.component";
27
- import * as i26 from "@angular/common";
28
- import * as i27 from "@angular/forms";
29
- import * as i28 from "@angular/router";
30
- import * as i29 from "@ng-bootstrap/ng-bootstrap";
31
- import * as i30 from "@angular/google-maps";
32
- import * as i31 from "./common.light.module";
27
+ import * as i26 from "./thousand-suffixes.pipe";
28
+ import * as i27 from "./chart-configuration.directive";
29
+ import * as i28 from "./resized.directive";
30
+ import * as i29 from "@angular/common";
31
+ import * as i30 from "@angular/forms";
32
+ import * as i31 from "@angular/router";
33
+ import * as i32 from "@ng-bootstrap/ng-bootstrap";
34
+ import * as i33 from "@angular/google-maps";
35
+ import * as i34 from "./common.light.module";
33
36
  export declare class HeCommonModule {
34
37
  static ɵfac: i0.ɵɵFactoryDeclaration<HeCommonModule, never>;
35
- static ɵmod: i0.ɵɵNgModuleDeclaration<HeCommonModule, [typeof i1.BarChartComponent, typeof i2.BlankNodeStateComponent, typeof i3.BlankNodeStateNoticeComponent, typeof i4.BlankNodeValueDeltaComponent, typeof i5.ClipboardComponent, typeof i6.DataTableComponent, typeof i7.LinkKeyValueComponent, typeof i8.MapsDrawingConfirmComponent, typeof i9.MobileShellComponent, typeof i10.PopoverComponent, typeof i11.PopoverConfirmComponent, typeof i12.SchemaVersionLinkComponent, typeof i13.SearchExtendComponent, typeof i14.ShellComponent, typeof i15.SkeletonTextComponent, typeof i16.UnitConverterComponent, typeof i17.TagsInputDirective, typeof i18.TimesPipe, typeof i19.GetPipe, typeof i20.IsArrayPipe, typeof i21.IsObjectPipe, typeof i22.RemoveMarkdownPipe, typeof i23.ResizedDirective, typeof i24.SortByPipe, typeof i25.SortSelectComponent], [typeof i26.CommonModule, typeof i27.FormsModule, typeof i28.RouterModule, typeof i29.NgbTypeaheadModule, typeof i29.NgbTooltipModule, typeof i29.NgbPopoverModule, typeof i30.GoogleMapsModule, typeof i31.HeCommonLightModule], [typeof i29.NgbTypeaheadModule, typeof i29.NgbTooltipModule, typeof i29.NgbPopoverModule, typeof i30.GoogleMapsModule, typeof i31.HeCommonLightModule, typeof i1.BarChartComponent, typeof i2.BlankNodeStateComponent, typeof i3.BlankNodeStateNoticeComponent, typeof i4.BlankNodeValueDeltaComponent, typeof i5.ClipboardComponent, typeof i6.DataTableComponent, typeof i7.LinkKeyValueComponent, typeof i8.MapsDrawingConfirmComponent, typeof i9.MobileShellComponent, typeof i10.PopoverComponent, typeof i11.PopoverConfirmComponent, typeof i12.SchemaVersionLinkComponent, typeof i13.SearchExtendComponent, typeof i14.ShellComponent, typeof i15.SkeletonTextComponent, typeof i16.UnitConverterComponent, typeof i17.TagsInputDirective, typeof i18.TimesPipe, typeof i19.GetPipe, typeof i20.IsArrayPipe, typeof i21.IsObjectPipe, typeof i22.RemoveMarkdownPipe, typeof i23.ResizedDirective, typeof i24.SortByPipe, typeof i25.SortSelectComponent]>;
38
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HeCommonModule, [typeof i1.BarChartComponent, typeof i2.BlankNodeStateComponent, typeof i3.BlankNodeStateNoticeComponent, typeof i4.BlankNodeValueDeltaComponent, typeof i5.ClipboardComponent, typeof i6.DataTableComponent, typeof i7.DropdownComponent, typeof i8.LinkKeyValueComponent, typeof i9.MapsDrawingConfirmComponent, typeof i10.MobileShellComponent, typeof i11.PopoverComponent, typeof i12.PopoverConfirmComponent, typeof i13.SchemaVersionLinkComponent, typeof i14.SearchExtendComponent, typeof i15.ShellComponent, typeof i16.SkeletonTextComponent, typeof i17.UnitConverterComponent, typeof i18.TagsInputDirective, typeof i19.TimesPipe, typeof i20.GetPipe, typeof i21.IsArrayPipe, typeof i22.IsObjectPipe, typeof i23.RemoveMarkdownPipe, typeof i24.SortByPipe, typeof i25.SortSelectComponent, typeof i26.ThousandSuffixesPipe, typeof i27.ChartConfigurationDirective, typeof i28.ResizedDirective], [typeof i29.CommonModule, typeof i30.FormsModule, typeof i31.RouterModule, typeof i32.NgbTypeaheadModule, typeof i32.NgbTooltipModule, typeof i32.NgbPopoverModule, typeof i33.GoogleMapsModule, typeof i34.HeCommonLightModule], [typeof i32.NgbTypeaheadModule, typeof i32.NgbTooltipModule, typeof i32.NgbPopoverModule, typeof i33.GoogleMapsModule, typeof i34.HeCommonLightModule, typeof i1.BarChartComponent, typeof i2.BlankNodeStateComponent, typeof i3.BlankNodeStateNoticeComponent, typeof i4.BlankNodeValueDeltaComponent, typeof i5.ClipboardComponent, typeof i6.DataTableComponent, typeof i7.DropdownComponent, typeof i8.LinkKeyValueComponent, typeof i9.MapsDrawingConfirmComponent, typeof i10.MobileShellComponent, typeof i11.PopoverComponent, typeof i12.PopoverConfirmComponent, typeof i13.SchemaVersionLinkComponent, typeof i14.SearchExtendComponent, typeof i15.ShellComponent, typeof i16.SkeletonTextComponent, typeof i17.UnitConverterComponent, typeof i18.TagsInputDirective, typeof i19.TimesPipe, typeof i20.GetPipe, typeof i21.IsArrayPipe, typeof i22.IsObjectPipe, typeof i23.RemoveMarkdownPipe, typeof i24.SortByPipe, typeof i25.SortSelectComponent, typeof i26.ThousandSuffixesPipe, typeof i27.ChartConfigurationDirective, typeof i28.ResizedDirective]>;
36
39
  static ɵinj: i0.ɵɵInjectorDeclaration<HeCommonModule>;
37
40
  }
@@ -0,0 +1,16 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DropdownComponent {
4
+ private elementRef;
5
+ protected id: string;
6
+ protected tooltip: string;
7
+ protected dropdownClass: string;
8
+ protected dropdownButtonClass: string;
9
+ protected dropdownContentClass: string;
10
+ protected get menuId(): string;
11
+ protected showDropdown: boolean;
12
+ constructor(elementRef: ElementRef);
13
+ onClick(event: MouseEvent): void;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "he-dropdown", never, { "tooltip": { "alias": "tooltip"; "required": false; }; "dropdownClass": { "alias": "dropdownClass"; "required": false; }; "dropdownButtonClass": { "alias": "dropdownButtonClass"; "required": false; }; "dropdownContentClass": { "alias": "dropdownContentClass"; "required": false; }; }, {}, never, ["[label]", "[menu]"], false, never>;
16
+ }
package/common/index.d.ts CHANGED
@@ -11,6 +11,7 @@ export * from './navigation-menu.service';
11
11
  export * from './maps-utils';
12
12
  export * from './pluralize';
13
13
  export * from './rxjs-utils';
14
+ export * from './thousands';
14
15
  export * from './utils';
15
16
  export * from './bar-chart/bar-chart.component';
16
17
  export { BlankNodeStateComponent } from './blank-node-state/blank-node-state.component';
@@ -18,6 +19,7 @@ export { BlankNodeStateNoticeComponent } from './blank-node-state-notice/blank-n
18
19
  export { BlankNodeValueDeltaComponent } from './blank-node-value-delta/blank-node-value-delta.component';
19
20
  export { ClipboardComponent } from './clipboard/clipboard.component';
20
21
  export { DataTableComponent } from './data-table/data-table.component';
22
+ export { DropdownComponent } from './dropdown/dropdown.component';
21
23
  export { IssueConfirmComponent } from './issue-confirm/issue-confirm.component';
22
24
  export { LinkKeyValueComponent } from './link-key-value/link-key-value.component';
23
25
  export { MapsDrawingConfirmComponent } from './maps-drawing-confirm/maps-drawing-confirm.component';
@@ -33,6 +35,7 @@ export { SocialTagsComponent } from './social-tags/social-tags.component';
33
35
  export { ToastComponent } from './toast/toast.component';
34
36
  export { UnitConverterComponent } from './unit-converter/unit-converter.component';
35
37
  export { ApplyPurePipe } from './apply-pure.pipe';
38
+ export { ThousandSuffixesPipe } from './thousand-suffixes.pipe';
36
39
  export { BindOnceDirective } from './bind-once.directive';
37
40
  export { ClickOutsideDirective } from './click-outside.directive';
38
41
  export { CompoundDirective } from './compound.directive';
@@ -53,3 +56,4 @@ export { TagsInputDirective } from './tags-input.directive';
53
56
  export { TimesPipe } from './times.pipe';
54
57
  export { SortByPipe } from './sort-by.pipe';
55
58
  export * from './sort-select/sort-select.component';
59
+ export { ChartConfigurationDirective } from './chart-configuration.directive';
@@ -12,7 +12,7 @@ export declare class MobileShellComponent {
12
12
  protected expanded: boolean;
13
13
  protected menuRef: TemplateRef<any> | null;
14
14
  hideMenu(): void;
15
- showMenu(): void;
15
+ showMenu(menuRef?: TemplateRef<any>): void;
16
16
  protected onMenuButtonClick(button: IMobileShellMenuButton): void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MobileShellComponent, never>;
18
18
  static ɵcmp: i0.ɵɵComponentDeclaration<MobileShellComponent, "he-mobile-shell", never, { "menuButtons": { "alias": "menuButtons"; "required": false; }; }, {}, never, ["*"], false, never>;
@@ -10,6 +10,7 @@ export interface IShellMenuButton {
10
10
  export declare class ShellComponent {
11
11
  shelfButtons: IShellMenuButton[];
12
12
  menuOverlap: boolean;
13
+ closeMenuOnOutsideClick: boolean;
13
14
  menuShown: EventEmitter<any>;
14
15
  protected activeButton: IShellMenuButton | null;
15
16
  protected expanded: boolean;
@@ -20,5 +21,5 @@ export declare class ShellComponent {
20
21
  showMenu(): void;
21
22
  protected onMenuButtonClick(button: IShellMenuButton): void;
22
23
  static ɵfac: i0.ɵɵFactoryDeclaration<ShellComponent, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<ShellComponent, "he-shell", never, { "shelfButtons": { "alias": "shelfButtons"; "required": false; }; "menuOverlap": { "alias": "menuOverlap"; "required": false; }; }, { "menuShown": "menuShown"; }, never, ["*"], false, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<ShellComponent, "he-shell", never, { "shelfButtons": { "alias": "shelfButtons"; "required": false; }; "menuOverlap": { "alias": "menuOverlap"; "required": false; }; "closeMenuOnOutsideClick": { "alias": "closeMenuOnOutsideClick"; "required": false; }; }, { "menuShown": "menuShown"; }, never, ["*"], false, never>;
24
25
  }
@@ -0,0 +1,7 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ThousandSuffixesPipe implements PipeTransform {
4
+ transform(input: any, digits?: number): any;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ThousandSuffixesPipe, never>;
6
+ static ɵpipe: i0.ɵɵPipeDeclaration<ThousandSuffixesPipe, "thousandSuff", false>;
7
+ }
@@ -0,0 +1 @@
1
+ export declare const toThousands: (input: number, digits?: number) => string;
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
16
16
  providedIn: 'root'
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F1dGgvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxhQUFhO0lBR3hCLElBQVcsS0FBSyxDQUFDLEtBQWE7UUFDNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDOUQsQ0FBQzs4R0FUVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSGVBdXRoU2VydmljZSB7XG4gIHByaXZhdGUgX3Rva2VuPzogc3RyaW5nO1xuXG4gIHB1YmxpYyBzZXQgdG9rZW4odG9rZW46IHN0cmluZykge1xuICAgIHRoaXMuX3Rva2VuID0gdG9rZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhlYWRlcnMoKToge1toZWFkZXI6IHN0cmluZ106IHN0cmluZ30ge1xuICAgIHJldHVybiB0aGlzLl90b2tlbiA/IHsgJ1gtQUNDRVNTLVRPS0VOJzogdGhpcy5fdG9rZW4gfSA6IHt9O1xuICB9XG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F1dGgvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxhQUFhO0lBR3hCLElBQVcsS0FBSyxDQUFDLEtBQWE7UUFDNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDOUQsQ0FBQzs4R0FUVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSGVBdXRoU2VydmljZSB7XG4gIHByaXZhdGUgX3Rva2VuPzogc3RyaW5nO1xuXG4gIHB1YmxpYyBzZXQgdG9rZW4odG9rZW46IHN0cmluZykge1xuICAgIHRoaXMuX3Rva2VuID0gdG9rZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhlYWRlcnMoKTogeyBbaGVhZGVyOiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VuID8geyAnWC1BQ0NFU1MtVE9LRU4nOiB0aGlzLl90b2tlbiB9IDoge307XG4gIH1cbn1cbiJdfQ==
@@ -27,7 +27,7 @@ export class BibliographiesSearchConfirmComponent {
27
27
  this.loading = true;
28
28
  this.selectedResult = undefined;
29
29
  ref.detectChanges();
30
- }), switchMap(term => term.length > 1 ? this.runSearch(term) : of([])), tap(values => {
30
+ }), switchMap(term => (term.length > 1 ? this.runSearch(term) : of([]))), tap(values => {
31
31
  this.loading = false;
32
32
  this.hasResults = values.length > 0;
33
33
  ref.detectChanges();
@@ -49,8 +49,10 @@ export class BibliographiesSearchConfirmComponent {
49
49
  }
50
50
  runSearchBibliographies(term) {
51
51
  // scopus
52
- const params = this.searchBy === 'title' ? { title: term } : (this.searchBy === 'documentDOI' ? { doi: term } : { scopus: term });
53
- return this.searchBibliographies ? this.mendeleyService.find({ ...params, limit: this.searchLimit }).pipe(map(({ results }) => results)) : of([]);
52
+ const params = this.searchBy === 'title' ? { title: term } : this.searchBy === 'documentDOI' ? { doi: term } : { scopus: term };
53
+ return this.searchBibliographies
54
+ ? this.mendeleyService.find({ ...params, limit: this.searchLimit }).pipe(map(({ results }) => results))
55
+ : of([]);
54
56
  }
55
57
  runSearch(term) {
56
58
  return zip(this.runSearchSources(term), this.runSearchBibliographies(term)).pipe(catchError(() => of([])), map(res => res.flat()));
@@ -78,11 +80,11 @@ export class BibliographiesSearchConfirmComponent {
78
80
  this.closed.next(null);
79
81
  }
80
82
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: BibliographiesSearchConfirmComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i0.ChangeDetectorRef }, { token: i2.HeMendeleyService }, { token: i3.HeSearchService }], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: BibliographiesSearchConfirmComponent, selector: "he-bibliographies-search-confirm", inputs: { search: "search", searchSources: "searchSources", searchBibliographies: "searchBibliographies", searchBy: "searchBy" }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy\"\n formControlName=\"search\" name=\"bibliography\" autocomplete=\"off\"\n (focus)=\"searchFocus($event)\"\n >\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading\" (click)=\"resetSearch()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading || !searchControl?.value || hasResults\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n <li *ngFor=\"let result of results | async\">\n <a class=\"is-block p-1 search-result\" (click)=\"selectResult(result)\"\n [class.is-active]=\"selectedResult === result\"\n >\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.title : result.title\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span class=\"px-1\">-</span>\n\n <span class=\"px-1\"><i>{{result.name}}</i></span>\n\n <span class=\"px-1\"\n *ngIf=\"result.bibliography?.documentDOI || result.documentDOI\"\n >- <b>documentDOI:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.documentDOI : result.documentDOI\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span class=\"px-1\"\n *ngIf=\"result.bibliography?.scopus || result.scopus\"\n >- <b>scopus:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography?.scopus || result.scopus\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span>\n <ng-container *ngTemplateOutlet=\"mendeleyLink; context: {$implicit: result.bibliography ? result.bibliography.mendeleyID : result.mendeleyID}\"></ng-container>\n </span>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n <a *ngIf=\"id\" [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\"\n (click)=\"$event.stopPropagation()\"\n >\n <fa-icon class=\"ml-2\" icon=\"external-link-alt\" size=\"sm\"></fa-icon>\n </a>\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.NgbHighlight, selector: "ngb-highlight", inputs: ["highlightClass", "result", "term", "accentSensitive"] }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: BibliographiesSearchConfirmComponent, selector: "he-bibliographies-search-confirm", inputs: { search: "search", searchSources: "searchSources", searchBibliographies: "searchBibliographies", searchBy: "searchBy" }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy\"\n formControlName=\"search\"\n name=\"bibliography\"\n autocomplete=\"off\"\n (focus)=\"searchFocus($event)\" />\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading\" (click)=\"resetSearch()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading || !searchControl?.value || hasResults\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n <li *ngFor=\"let result of results | async\">\n <a\n class=\"is-block p-1 search-result\"\n (click)=\"selectResult(result)\"\n [class.is-active]=\"selectedResult === result\">\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.title : result.title\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span class=\"px-1\">-</span>\n\n <span class=\"px-1\">\n <i>{{ result.name }}</i>\n </span>\n\n <span class=\"px-1\" *ngIf=\"result.bibliography?.documentDOI || result.documentDOI\">\n -\n <b>documentDOI:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.documentDOI : result.documentDOI\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span class=\"px-1\" *ngIf=\"result.bibliography?.scopus || result.scopus\">\n -\n <b>scopus:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography?.scopus || result.scopus\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span>\n <ng-container\n *ngTemplateOutlet=\"\n mendeleyLink;\n context: { $implicit: result.bibliography ? result.bibliography.mendeleyID : result.mendeleyID }\n \"></ng-container>\n </span>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n <a *ngIf=\"id\" [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\" (click)=\"$event.stopPropagation()\">\n <fa-icon class=\"ml-2\" icon=\"external-link-alt\" size=\"sm\"></fa-icon>\n </a>\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.NgbHighlight, selector: "ngb-highlight", inputs: ["highlightClass", "result", "term", "accentSensitive"] }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
84
  }
83
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: BibliographiesSearchConfirmComponent, decorators: [{
84
86
  type: Component,
85
- args: [{ selector: 'he-bibliographies-search-confirm', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy\"\n formControlName=\"search\" name=\"bibliography\" autocomplete=\"off\"\n (focus)=\"searchFocus($event)\"\n >\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading\" (click)=\"resetSearch()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading || !searchControl?.value || hasResults\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n <li *ngFor=\"let result of results | async\">\n <a class=\"is-block p-1 search-result\" (click)=\"selectResult(result)\"\n [class.is-active]=\"selectedResult === result\"\n >\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.title : result.title\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span class=\"px-1\">-</span>\n\n <span class=\"px-1\"><i>{{result.name}}</i></span>\n\n <span class=\"px-1\"\n *ngIf=\"result.bibliography?.documentDOI || result.documentDOI\"\n >- <b>documentDOI:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.documentDOI : result.documentDOI\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span class=\"px-1\"\n *ngIf=\"result.bibliography?.scopus || result.scopus\"\n >- <b>scopus:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography?.scopus || result.scopus\"\n [term]=\"searchControl?.value\"\n ></ngb-highlight>\n\n <span>\n <ng-container *ngTemplateOutlet=\"mendeleyLink; context: {$implicit: result.bibliography ? result.bibliography.mendeleyID : result.mendeleyID}\"></ng-container>\n </span>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n <a *ngIf=\"id\" [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\"\n (click)=\"$event.stopPropagation()\"\n >\n <fa-icon class=\"ml-2\" icon=\"external-link-alt\" size=\"sm\"></fa-icon>\n </a>\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"] }]
87
+ args: [{ selector: 'he-bibliographies-search-confirm', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy\"\n formControlName=\"search\"\n name=\"bibliography\"\n autocomplete=\"off\"\n (focus)=\"searchFocus($event)\" />\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading\" (click)=\"resetSearch()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading || !searchControl?.value || hasResults\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n <li *ngFor=\"let result of results | async\">\n <a\n class=\"is-block p-1 search-result\"\n (click)=\"selectResult(result)\"\n [class.is-active]=\"selectedResult === result\">\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.title : result.title\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span class=\"px-1\">-</span>\n\n <span class=\"px-1\">\n <i>{{ result.name }}</i>\n </span>\n\n <span class=\"px-1\" *ngIf=\"result.bibliography?.documentDOI || result.documentDOI\">\n -\n <b>documentDOI:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography ? result.bibliography.documentDOI : result.documentDOI\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span class=\"px-1\" *ngIf=\"result.bibliography?.scopus || result.scopus\">\n -\n <b>scopus:</b>\n </span>\n <ngb-highlight\n [result]=\"result.bibliography?.scopus || result.scopus\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n\n <span>\n <ng-container\n *ngTemplateOutlet=\"\n mendeleyLink;\n context: { $implicit: result.bibliography ? result.bibliography.mendeleyID : result.mendeleyID }\n \"></ng-container>\n </span>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n <a *ngIf=\"id\" [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\" (click)=\"$event.stopPropagation()\">\n <fa-icon class=\"ml-2\" icon=\"external-link-alt\" size=\"sm\"></fa-icon>\n </a>\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"] }]
86
88
  }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i0.ChangeDetectorRef }, { type: i2.HeMendeleyService }, { type: i3.HeSearchService }]; }, propDecorators: { search: [{
87
89
  type: Input
88
90
  }], searchSources: [{
@@ -94,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
94
96
  }], closed: [{
95
97
  type: Output
96
98
  }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iaWJsaW9ncmFwaGllcy9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQTRCLE1BQU0sRUFBRSx1QkFBdUIsRUFDMUYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JHLE9BQU8sRUFBYyxFQUFFLEVBQWdCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUFlekQsTUFBTSxPQUFPLG9DQUFvQztJQXNCL0MsWUFDRSxXQUErQixFQUMvQixHQUFzQixFQUNkLGVBQWtDLEVBQ2xDLGFBQThCO1FBRDlCLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUF6QmhDLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUtuQyxrQkFBYSxHQUFHLElBQUksQ0FBQztRQUVyQix5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFFN0IsYUFBUSxHQUFtQixPQUFPLENBQUM7UUFHbEMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFHbEMsWUFB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LENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBaEhVLG9DQUFvQztrR0FBcEMsb0NBQW9DLHlPQ3BCakQsMGhIQTBGQTs7MkZEdEVhLG9DQUFvQztrQkFOaEQsU0FBUzsrQkFDRSxrQ0FBa0MsbUJBRzNCLHVCQUF1QixDQUFDLE1BQU07dU1BTXZDLE1BQU07c0JBRGIsS0FBSztnQkFHRSxhQUFhO3NCQURwQixLQUFLO2dCQUdFLG9CQUFvQjtzQkFEM0IsS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUUsTUFBTTtzQkFEYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIE91dHB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24sIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmlibGlvZ3JhcGh5LCBTb3VyY2UgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5cbmltcG9ydCB7IEhlTWVuZGVsZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbWVuZGVsZXkvbWVuZGVsZXkuc2VydmljZSc7XG5pbXBvcnQgeyBIZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZWFyY2gvc2VhcmNoLnNlcnZpY2UnO1xuXG50eXBlIHNlYXJjaEJ5RmllbGRzID0gJ3RpdGxlJyB8ICdkb2N1bWVudERPSScgfCAnc2NvcHVzJztcbnR5cGUgUmVzdWx0ID0gUGFydGlhbDxTb3VyY2U+IHwgUGFydGlhbDxCaWJsaW9ncmFwaHk+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJpYmxpb2dyYXBoaWVzU2VhcmNoQ29uZmlybUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwcml2YXRlIHNlYXJjaD86IHN0cmluZztcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWFyY2hTb3VyY2VzID0gdHJ1ZTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWFyY2hCaWJsaW9ncmFwaGllcyA9IHRydWU7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWFyY2hCeTogc2VhcmNoQnlGaWVsZHMgPSAndGl0bGUnO1xuXG4gIEBPdXRwdXQoKVxuICBwcml2YXRlIGNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHB1YmxpYyBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBsb2FkaW5nID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVzdWx0czogT2JzZXJ2YWJsZTxSZXN1bHRbXT47XG4gIHB1YmxpYyBzZWxlY3RlZFJlc3VsdD86IFJlc3VsdDtcbiAgcHVibGljIGhhc1Jlc3VsdHMgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxuICAgIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBtZW5kZWxleVNlcnZpY2U6IEhlTWVuZGVsZXlTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogSGVTZWFyY2hTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgc2VhcmNoOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgfSk7XG4gICAgdGhpcy5yZXN1bHRzID0gdGhpcy5zZWFyY2hDb250cm9sIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRSZXN1bHQgPSB1bmRlZmluZWQ7XG4gICAgICAgIHJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCh0ZXJtID0+IHRlcm0ubGVuZ3RoID4gMSA/IHRoaXMucnVuU2VhcmNoKHRlcm0pIDogb2YoW10gYXMgYW55KSksXG4gICAgICB0YXAodmFsdWVzID0+IHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaGFzUmVzdWx0cyA9IHZhbHVlcy5sZW5ndGggPiAwO1xuICAgICAgICByZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc2VhcmNoQ29udHJvbCEuc2V0VmFsdWUodGhpcy5zZWFyY2ggfHwgJycpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHNlYXJjaExpbWl0KCkge1xuICAgIHJldHVybiB0aGlzLnNlYXJjaFNvdXJjZXMgJiYgdGhpcy5zZWFyY2hCaWJsaW9ncmFwaGllcyA/IDUgOiAxMDtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoU291cmNlcyh0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmaWVsZHMgPSBbYGJpYmxpb2dyYXBoeS4ke3RoaXMuc2VhcmNoQnl9YF07XG4gICAgY29uc3QgaW5jbHVkZXMgPSBbJ2JpYmxpb2dyYXBoeS50aXRsZScsICdiaWJsaW9ncmFwaHkuZG9jdW1lbnRET0knLCAnYmlibGlvZ3JhcGh5LnNjb3B1cyddO1xuICAgIHJldHVybiB0aGlzLnNlYXJjaFNvdXJjZXMgPyB0aGlzLnNlYXJjaFNlcnZpY2Uuc3VnZ2VzdFNvdXJjZSh0ZXJtLCB0aGlzLnNlYXJjaExpbWl0LCBmaWVsZHMsIGluY2x1ZGVzKSA6IG9mKFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoQmlibGlvZ3JhcGhpZXModGVybTogc3RyaW5nKSB7XG4gICAgLy8gc2NvcHVzXG4gICAgY29uc3QgcGFyYW1zID0gdGhpcy5zZWFyY2hCeSA9PT0gJ3RpdGxlJyA/IHsgdGl0bGU6IHRlcm0gfSA6IChcbiAgICAgIHRoaXMuc2VhcmNoQnkgPT09ICdkb2N1bWVudERPSScgPyB7IGRvaTogdGVybSB9IDogeyBzY29wdXM6IHRlcm0gfVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoQmlibGlvZ3JhcGhpZXMgPyB0aGlzLm1lbmRlbGV5U2VydmljZS5maW5kKHsgLi4ucGFyYW1zLCBsaW1pdDogdGhpcy5zZWFyY2hMaW1pdCB9KS5waXBlKFxuICAgICAgbWFwKCh7IHJlc3VsdHMgfTogYW55KSA9PiByZXN1bHRzKVxuICAgICkgOiBvZihbXSk7XG4gIH1cblxuICBwcml2YXRlIHJ1blNlYXJjaCh0ZXJtOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gemlwKFxuICAgICAgdGhpcy5ydW5TZWFyY2hTb3VyY2VzKHRlcm0pLFxuICAgICAgdGhpcy5ydW5TZWFyY2hCaWJsaW9ncmFwaGllcyh0ZXJtKVxuICAgICkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoW10pKSxcbiAgICAgIG1hcChyZXMgPT4gcmVzLmZsYXQoKSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEZvY3VzKGU6IEV2ZW50KSB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IGlucHV0RXZlbnQgPSBuZXcgRXZlbnQoJ2lucHV0Jyk7XG4gICAgICBlLnRhcmdldD8uZGlzcGF0Y2hFdmVudChpbnB1dEV2ZW50KTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2VhcmNoQ29udHJvbCgpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KCdzZWFyY2gnKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFNlYXJjaCgpIHtcbiAgICB0aGlzLnNlYXJjaENvbnRyb2whLnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RSZXN1bHQocmVzdWx0OiBSZXN1bHQpIHtcbiAgICB0aGlzLnNlbGVjdGVkUmVzdWx0ID0gcmVzdWx0O1xuICB9XG5cbiAgcHVibGljIGNvbmZpcm0oKSB7XG4gICAgdGhpcy5jbG9zZWQubmV4dCh0aGlzLnNlbGVjdGVkUmVzdWx0KTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWwoKSB7XG4gICAgdGhpcy5jbG9zZWQubmV4dChudWxsKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsIGlzLWxhcmdlIGlzLWFjdGl2ZVwiPlxuICA8ZGl2IGNsYXNzPVwibW9kYWwtYmFja2dyb3VuZFwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibW9kYWwtY2FyZFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJtb2RhbC1jYXJkLWhlYWRcIj5cbiAgICAgIDxwIGNsYXNzPVwibW9kYWwtY2FyZC10aXRsZVwiPlNlYXJjaCBCaWJsaW9ncmFwaGllczwvcD5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGVcIiBhcmlhLWxhYmVsPVwiY2xvc2VcIiAoY2xpY2spPVwiY2FuY2VsKClcIj48L2J1dHRvbj5cbiAgICA8L2hlYWRlcj5cbiAgICA8c2VjdGlvbiBjbGFzcz1cIm1vZGFsLWNhcmQtYm9keVwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBub3ZhbGlkYXRlPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaGFzLWFkZG9uc1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sIGlzLWV4cGFuZGVkIGhhcy1pY29ucy1yaWdodFwiPlxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiaW5wdXQgc2VhcmNoLWlucHV0XCJcbiAgICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwiJ1NlYXJjaCBiaWJsaW9ncmFwaHkgYnkgJyArIHNlYXJjaEJ5XCJcbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCIgbmFtZT1cImJpYmxpb2dyYXBoeVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgICAgIChmb2N1cyk9XCJzZWFyY2hGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxhIGNsYXNzPVwiaWNvbiBpcy1zbWFsbCBpcy1yaWdodFwiIFtjbGFzcy5pcy1oaWRkZW5dPVwibG9hZGluZ1wiIChjbGljayk9XCJyZXNldFNlYXJjaCgpXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJ0aW1lc1wiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXJpZ2h0IGhhcy10ZXh0LWdyZXktZGFya1wiIFtjbGFzcy5pcy1oaWRkZW5dPVwiIWxvYWRpbmdcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cInNwaW5uZXJcIiBbcHVsc2VdPVwidHJ1ZVwiIHNpemU9XCJzbVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJpcy1tdC0yXCI+XG4gICAgICAgIDxzcGFuIFtjbGFzcy5pcy1oaWRkZW5dPVwibG9hZGluZyB8fCAhc2VhcmNoQ29udHJvbD8udmFsdWUgfHwgaGFzUmVzdWx0c1wiPlxuICAgICAgICAgIE5vIGJpYmxpb2dyYXBoaWVzIGZvdW5kIG1hdGNoaW5nIHF1ZXJ5LlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPHVsPlxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgcmVzdWx0IG9mIHJlc3VsdHMgfCBhc3luY1wiPlxuICAgICAgICAgICAgPGEgY2xhc3M9XCJpcy1ibG9jayBwLTEgc2VhcmNoLXJlc3VsdFwiIChjbGljayk9XCJzZWxlY3RSZXN1bHQocmVzdWx0KVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1hY3RpdmVdPVwic2VsZWN0ZWRSZXN1bHQgPT09IHJlc3VsdFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgW3Jlc3VsdF09XCJyZXN1bHQuYmlibGlvZ3JhcGh5ID8gcmVzdWx0LmJpYmxpb2dyYXBoeS50aXRsZSA6IHJlc3VsdC50aXRsZVwiXG4gICAgICAgICAgICAgICAgW3Rlcm1dPVwic2VhcmNoQ29udHJvbD8udmFsdWVcIlxuICAgICAgICAgICAgICA+PC9uZ2ItaGlnaGxpZ2h0PlxuXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiPi08L3NwYW4+XG5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJweC0xXCI+PGk+e3tyZXN1bHQubmFtZX19PC9pPjwvc3Bhbj5cblxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInB4LTFcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8uZG9jdW1lbnRET0kgfHwgcmVzdWx0LmRvY3VtZW50RE9JXCJcbiAgICAgICAgICAgICAgPi0gPGI+ZG9jdW1lbnRET0k6PC9iPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgW3Jlc3VsdF09XCJyZXN1bHQuYmlibGlvZ3JhcGh5ID8gcmVzdWx0LmJpYmxpb2dyYXBoeS5kb2N1bWVudERPSSA6IHJlc3VsdC5kb2N1bWVudERPSVwiXG4gICAgICAgICAgICAgICAgW3Rlcm1dPVwic2VhcmNoQ29udHJvbD8udmFsdWVcIlxuICAgICAgICAgICAgICA+PC9uZ2ItaGlnaGxpZ2h0PlxuXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJyZXN1bHQuYmlibGlvZ3JhcGh5Py5zY29wdXMgfHwgcmVzdWx0LnNjb3B1c1wiXG4gICAgICAgICAgICAgID4tIDxiPnNjb3B1czo8L2I+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPG5nYi1oaWdobGlnaHRcbiAgICAgICAgICAgICAgICBbcmVzdWx0XT1cInJlc3VsdC5iaWJsaW9ncmFwaHk/LnNjb3B1cyB8fCByZXN1bHQuc2NvcHVzXCJcbiAgICAgICAgICAgICAgICBbdGVybV09XCJzZWFyY2hDb250cm9sPy52YWx1ZVwiXG4gICAgICAgICAgICAgID48L25nYi1oaWdobGlnaHQ+XG5cbiAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIm1lbmRlbGV5TGluazsgY29udGV4dDogeyRpbXBsaWNpdDogcmVzdWx0LmJpYmxpb2dyYXBoeSA/IHJlc3VsdC5iaWJsaW9ncmFwaHkubWVuZGVsZXlJRCA6IHJlc3VsdC5tZW5kZWxleUlEfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC91bD5cbiAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgICA8Zm9vdGVyIGNsYXNzPVwibW9kYWwtY2FyZC1mb290XCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXByaW1hcnlcIiAoY2xpY2spPVwiY29uZmlybSgpXCIgW2Rpc2FibGVkXT1cIiFzZWxlY3RlZFJlc3VsdFwiPlxuICAgICAgICA8c3Bhbj5Db25maXJtPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLWdob3N0XCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAgICAgIDxzcGFuPkNsb3NlPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9mb290ZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbWVuZGVsZXlMaW5rIGxldC1pZD5cbiAgPGEgKm5nSWY9XCJpZFwiIFtocmVmXT1cIidodHRwczovL3d3dy5tZW5kZWxleS5jb20vY2F0YWxvZ3VlLycgKyBpZFwiIHRhcmdldD1cIl9ibGFua1wiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gID5cbiAgICA8ZmEtaWNvbiBjbGFzcz1cIm1sLTJcIiBpY29uPVwiZXh0ZXJuYWwtbGluay1hbHRcIiBzaXplPVwic21cIj48L2ZhLWljb24+XG4gIDwvYT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iaWJsaW9ncmFwaGllcy9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLHVCQUF1QixFQUV4QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckcsT0FBTyxFQUFjLEVBQUUsRUFBZ0IsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQWV6RCxNQUFNLE9BQU8sb0NBQW9DO0lBc0IvQyxZQUNFLFdBQStCLEVBQy9CLEdBQXNCLEVBQ2QsZUFBa0MsRUFDbEMsYUFBOEI7UUFEOUIsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtRQXpCaEMsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBS25DLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBRXJCLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQUU3QixhQUFRLEdBQW1CLE9BQU8sQ0FBQztRQUdsQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUdsQyxZQUFP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QUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBNUdVLG9DQUFvQztrR0FBcEMsb0NBQW9DLHlPQzNCakQsOG9IQThGQTs7MkZEbkVhLG9DQUFvQztrQkFOaEQsU0FBUzsrQkFDRSxrQ0FBa0MsbUJBRzNCLHVCQUF1QixDQUFDLE1BQU07dU1BTXZDLE1BQU07c0JBRGIsS0FBSztnQkFHRSxhQUFhO3NCQURwQixLQUFLO2dCQUdFLG9CQUFvQjtzQkFEM0IsS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUUsTUFBTTtzQkFEYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIEFmdGVyVmlld0luaXQsXG4gIE91dHB1dCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24sIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmlibGlvZ3JhcGh5LCBTb3VyY2UgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5cbmltcG9ydCB7IEhlTWVuZGVsZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbWVuZGVsZXkvbWVuZGVsZXkuc2VydmljZSc7XG5pbXBvcnQgeyBIZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZWFyY2gvc2VhcmNoLnNlcnZpY2UnO1xuXG50eXBlIHNlYXJjaEJ5RmllbGRzID0gJ3RpdGxlJyB8ICdkb2N1bWVudERPSScgfCAnc2NvcHVzJztcbnR5cGUgUmVzdWx0ID0gUGFydGlhbDxTb3VyY2U+IHwgUGFydGlhbDxCaWJsaW9ncmFwaHk+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJpYmxpb2dyYXBoaWVzU2VhcmNoQ29uZmlybUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwcml2YXRlIHNlYXJjaD86IHN0cmluZztcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWFyY2hTb3VyY2VzID0gdHJ1ZTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWFyY2hCaWJsaW9ncmFwaGllcyA9IHRydWU7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWFyY2hCeTogc2VhcmNoQnlGaWVsZHMgPSAndGl0bGUnO1xuXG4gIEBPdXRwdXQoKVxuICBwcml2YXRlIGNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHB1YmxpYyBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBsb2FkaW5nID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVzdWx0czogT2JzZXJ2YWJsZTxSZXN1bHRbXT47XG4gIHB1YmxpYyBzZWxlY3RlZFJlc3VsdD86IFJlc3VsdDtcbiAgcHVibGljIGhhc1Jlc3VsdHMgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxuICAgIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBtZW5kZWxleVNlcnZpY2U6IEhlTWVuZGVsZXlTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogSGVTZWFyY2hTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgc2VhcmNoOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgfSk7XG4gICAgdGhpcy5yZXN1bHRzID0gdGhpcy5zZWFyY2hDb250cm9sIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRSZXN1bHQgPSB1bmRlZmluZWQ7XG4gICAgICAgIHJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCh0ZXJtID0+ICh0ZXJtLmxlbmd0aCA+IDEgPyB0aGlzLnJ1blNlYXJjaCh0ZXJtKSA6IG9mKFtdIGFzIGFueSkpKSxcbiAgICAgIHRhcCh2YWx1ZXMgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oYXNSZXN1bHRzID0gdmFsdWVzLmxlbmd0aCA+IDA7XG4gICAgICAgIHJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5zZWFyY2hDb250cm9sIS5zZXRWYWx1ZSh0aGlzLnNlYXJjaCB8fCAnJyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgc2VhcmNoTGltaXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoU291cmNlcyAmJiB0aGlzLnNlYXJjaEJpYmxpb2dyYXBoaWVzID8gNSA6IDEwO1xuICB9XG5cbiAgcHJpdmF0ZSBydW5TZWFyY2hTb3VyY2VzKHRlcm06IHN0cmluZykge1xuICAgIGNvbnN0IGZpZWxkcyA9IFtgYmlibGlvZ3JhcGh5LiR7dGhpcy5zZWFyY2hCeX1gXTtcbiAgICBjb25zdCBpbmNsdWRlcyA9IFsnYmlibGlvZ3JhcGh5LnRpdGxlJywgJ2JpYmxpb2dyYXBoeS5kb2N1bWVudERPSScsICdiaWJsaW9ncmFwaHkuc2NvcHVzJ107XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoU291cmNlcyA/IHRoaXMuc2VhcmNoU2VydmljZS5zdWdnZXN0U291cmNlKHRlcm0sIHRoaXMuc2VhcmNoTGltaXQsIGZpZWxkcywgaW5jbHVkZXMpIDogb2YoW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBydW5TZWFyY2hCaWJsaW9ncmFwaGllcyh0ZXJtOiBzdHJpbmcpIHtcbiAgICAvLyBzY29wdXNcbiAgICBjb25zdCBwYXJhbXMgPVxuICAgICAgdGhpcy5zZWFyY2hCeSA9PT0gJ3RpdGxlJyA/IHsgdGl0bGU6IHRlcm0gfSA6IHRoaXMuc2VhcmNoQnkgPT09ICdkb2N1bWVudERPSScgPyB7IGRvaTogdGVybSB9IDogeyBzY29wdXM6IHRlcm0gfTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hCaWJsaW9ncmFwaGllc1xuICAgICAgPyB0aGlzLm1lbmRlbGV5U2VydmljZS5maW5kKHsgLi4ucGFyYW1zLCBsaW1pdDogdGhpcy5zZWFyY2hMaW1pdCB9KS5waXBlKG1hcCgoeyByZXN1bHRzIH06IGFueSkgPT4gcmVzdWx0cykpXG4gICAgICA6IG9mKFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoKHRlcm06IHN0cmluZykge1xuICAgIHJldHVybiB6aXAodGhpcy5ydW5TZWFyY2hTb3VyY2VzKHRlcm0pLCB0aGlzLnJ1blNlYXJjaEJpYmxpb2dyYXBoaWVzKHRlcm0pKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLFxuICAgICAgbWFwKHJlcyA9PiByZXMuZmxhdCgpKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoRm9jdXMoZTogRXZlbnQpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgaW5wdXRFdmVudCA9IG5ldyBFdmVudCgnaW5wdXQnKTtcbiAgICAgIGUudGFyZ2V0Py5kaXNwYXRjaEV2ZW50KGlucHV0RXZlbnQpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgcHVibGljIGdldCBzZWFyY2hDb250cm9sKCkge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoJ3NlYXJjaCcpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0U2VhcmNoKCkge1xuICAgIHRoaXMuc2VhcmNoQ29udHJvbCEuc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdFJlc3VsdChyZXN1bHQ6IFJlc3VsdCkge1xuICAgIHRoaXMuc2VsZWN0ZWRSZXN1bHQgPSByZXN1bHQ7XG4gIH1cblxuICBwdWJsaWMgY29uZmlybSgpIHtcbiAgICB0aGlzLmNsb3NlZC5uZXh0KHRoaXMuc2VsZWN0ZWRSZXN1bHQpO1xuICB9XG5cbiAgcHVibGljIGNhbmNlbCgpIHtcbiAgICB0aGlzLmNsb3NlZC5uZXh0KG51bGwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwgaXMtbGFyZ2UgaXMtYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZ3JvdW5kXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1jYXJkXCI+XG4gICAgPGhlYWRlciBjbGFzcz1cIm1vZGFsLWNhcmQtaGVhZFwiPlxuICAgICAgPHAgY2xhc3M9XCJtb2RhbC1jYXJkLXRpdGxlXCI+U2VhcmNoIEJpYmxpb2dyYXBoaWVzPC9wPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImRlbGV0ZVwiIGFyaWEtbGFiZWw9XCJjbG9zZVwiIChjbGljayk9XCJjYW5jZWwoKVwiPjwvYnV0dG9uPlxuICAgIDwvaGVhZGVyPlxuICAgIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtY2FyZC1ib2R5XCI+XG4gICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIG5vdmFsaWRhdGU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBoYXMtYWRkb25zXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wgaXMtZXhwYW5kZWQgaGFzLWljb25zLXJpZ2h0XCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgY2xhc3M9XCJpbnB1dCBzZWFyY2gtaW5wdXRcIlxuICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCInU2VhcmNoIGJpYmxpb2dyYXBoeSBieSAnICsgc2VhcmNoQnlcIlxuICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzZWFyY2hcIlxuICAgICAgICAgICAgICBuYW1lPVwiYmlibGlvZ3JhcGh5XCJcbiAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgICAgKGZvY3VzKT1cInNlYXJjaEZvY3VzKCRldmVudClcIiAvPlxuICAgICAgICAgICAgPGEgY2xhc3M9XCJpY29uIGlzLXNtYWxsIGlzLXJpZ2h0XCIgW2NsYXNzLmlzLWhpZGRlbl09XCJsb2FkaW5nXCIgKGNsaWNrKT1cInJlc2V0U2VhcmNoKClcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cInRpbWVzXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9hPlxuXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gaXMtcmlnaHQgaGFzLXRleHQtZ3JleS1kYXJrXCIgW2NsYXNzLmlzLWhpZGRlbl09XCIhbG9hZGluZ1wiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwic3Bpbm5lclwiIFtwdWxzZV09XCJ0cnVlXCIgc2l6ZT1cInNtXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZm9ybT5cblxuICAgICAgPGRpdiBjbGFzcz1cImlzLW10LTJcIj5cbiAgICAgICAgPHNwYW4gW2NsYXNzLmlzLWhpZGRlbl09XCJsb2FkaW5nIHx8ICFzZWFyY2hDb250cm9sPy52YWx1ZSB8fCBoYXNSZXN1bHRzXCI+XG4gICAgICAgICAgTm8gYmlibGlvZ3JhcGhpZXMgZm91bmQgbWF0Y2hpbmcgcXVlcnkuXG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8dWw+XG4gICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByZXN1bHQgb2YgcmVzdWx0cyB8IGFzeW5jXCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBjbGFzcz1cImlzLWJsb2NrIHAtMSBzZWFyY2gtcmVzdWx0XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFJlc3VsdChyZXN1bHQpXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFJlc3VsdCA9PT0gcmVzdWx0XCI+XG4gICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgW3Jlc3VsdF09XCJyZXN1bHQuYmlibGlvZ3JhcGh5ID8gcmVzdWx0LmJpYmxpb2dyYXBoeS50aXRsZSA6IHJlc3VsdC50aXRsZVwiXG4gICAgICAgICAgICAgICAgW3Rlcm1dPVwic2VhcmNoQ29udHJvbD8udmFsdWVcIj48L25nYi1oaWdobGlnaHQ+XG5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJweC0xXCI+LTwvc3Bhbj5cblxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInB4LTFcIj5cbiAgICAgICAgICAgICAgICA8aT57eyByZXN1bHQubmFtZSB9fTwvaT5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiICpuZ0lmPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8uZG9jdW1lbnRET0kgfHwgcmVzdWx0LmRvY3VtZW50RE9JXCI+XG4gICAgICAgICAgICAgICAgLVxuICAgICAgICAgICAgICAgIDxiPmRvY3VtZW50RE9JOjwvYj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8bmdiLWhpZ2hsaWdodFxuICAgICAgICAgICAgICAgIFtyZXN1bHRdPVwicmVzdWx0LmJpYmxpb2dyYXBoeSA/IHJlc3VsdC5iaWJsaW9ncmFwaHkuZG9jdW1lbnRET0kgOiByZXN1bHQuZG9jdW1lbnRET0lcIlxuICAgICAgICAgICAgICAgIFt0ZXJtXT1cInNlYXJjaENvbnRyb2w/LnZhbHVlXCI+PC9uZ2ItaGlnaGxpZ2h0PlxuXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiICpuZ0lmPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8uc2NvcHVzIHx8IHJlc3VsdC5zY29wdXNcIj5cbiAgICAgICAgICAgICAgICAtXG4gICAgICAgICAgICAgICAgPGI+c2NvcHVzOjwvYj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8bmdiLWhpZ2hsaWdodFxuICAgICAgICAgICAgICAgIFtyZXN1bHRdPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8uc2NvcHVzIHx8IHJlc3VsdC5zY29wdXNcIlxuICAgICAgICAgICAgICAgIFt0ZXJtXT1cInNlYXJjaENvbnRyb2w/LnZhbHVlXCI+PC9uZ2ItaGlnaGxpZ2h0PlxuXG4gICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgIG1lbmRlbGV5TGluaztcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHJlc3VsdC5iaWJsaW9ncmFwaHkgPyByZXN1bHQuYmlibGlvZ3JhcGh5Lm1lbmRlbGV5SUQgOiByZXN1bHQubWVuZGVsZXlJRCB9XG4gICAgICAgICAgICAgICAgICBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPGZvb3RlciBjbGFzcz1cIm1vZGFsLWNhcmQtZm9vdFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1wcmltYXJ5XCIgKGNsaWNrKT1cImNvbmZpcm0oKVwiIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRSZXN1bHRcIj5cbiAgICAgICAgPHNwYW4+Q29uZmlybTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1naG9zdFwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxuICAgICAgICA8c3Bhbj5DbG9zZTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZm9vdGVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI21lbmRlbGV5TGluayBsZXQtaWQ+XG4gIDxhICpuZ0lmPVwiaWRcIiBbaHJlZl09XCInaHR0cHM6Ly93d3cubWVuZGVsZXkuY29tL2NhdGFsb2d1ZS8nICsgaWRcIiB0YXJnZXQ9XCJfYmxhbmtcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgPGZhLWljb24gY2xhc3M9XCJtbC0yXCIgaWNvbj1cImV4dGVybmFsLWxpbmstYWx0XCIgc2l6ZT1cInNtXCI+PC9mYS1pY29uPlxuICA8L2E+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -4,25 +4,18 @@ import { ReactiveFormsModule } from '@angular/forms';
4
4
  import { HeCommonModule } from '../common/common.module';
5
5
  import { BibliographiesSearchConfirmComponent } from './bibliographies-search-confirm/bibliographies-search-confirm.component';
6
6
  import * as i0 from "@angular/core";
7
- const components = [
8
- BibliographiesSearchConfirmComponent
9
- ];
7
+ const components = [BibliographiesSearchConfirmComponent];
10
8
  export class HeBibliographiesModule {
11
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, declarations: [BibliographiesSearchConfirmComponent], imports: [CommonModule, ReactiveFormsModule,
13
- HeCommonModule], exports: [BibliographiesSearchConfirmComponent] }); }
14
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, imports: [CommonModule, ReactiveFormsModule,
15
- HeCommonModule] }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, declarations: [BibliographiesSearchConfirmComponent], imports: [CommonModule, ReactiveFormsModule, HeCommonModule], exports: [BibliographiesSearchConfirmComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, imports: [CommonModule, ReactiveFormsModule, HeCommonModule] }); }
16
12
  }
17
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: HeBibliographiesModule, decorators: [{
18
14
  type: NgModule,
19
15
  args: [{
20
16
  declarations: components,
21
17
  exports: components,
22
- imports: [
23
- CommonModule, ReactiveFormsModule,
24
- HeCommonModule
25
- ]
18
+ imports: [CommonModule, ReactiveFormsModule, HeCommonModule]
26
19
  }]
27
20
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekQsT0FBTyxFQUNMLG9DQUFvQyxFQUNyQyxNQUFNLHlFQUF5RSxDQUFDOztBQUVqRixNQUFNLFVBQVUsR0FBRztJQUNqQixvQ0FBb0M7Q0FDckMsQ0FBQztBQVVGLE1BQU0sT0FBTyxzQkFBc0I7OEdBQXRCLHNCQUFzQjsrR0FBdEIsc0JBQXNCLGlCQVhqQyxvQ0FBb0MsYUFPbEMsWUFBWSxFQUFFLG1CQUFtQjtZQUNqQyxjQUFjLGFBUmhCLG9DQUFvQzsrR0FXekIsc0JBQXNCLFlBSi9CLFlBQVksRUFBRSxtQkFBbUI7WUFDakMsY0FBYzs7MkZBR0wsc0JBQXNCO2tCQVJsQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxVQUFVO29CQUN4QixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsT0FBTyxFQUFFO3dCQUNQLFlBQVksRUFBRSxtQkFBbUI7d0JBQ2pDLGNBQWM7cUJBQ2Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEhlQ29tbW9uTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uL2NvbW1vbi5tb2R1bGUnO1xuXG5pbXBvcnQge1xuICBCaWJsaW9ncmFwaGllc1NlYXJjaENvbmZpcm1Db21wb25lbnRcbn0gZnJvbSAnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQnO1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICBCaWJsaW9ncmFwaGllc1NlYXJjaENvbmZpcm1Db21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogY29tcG9uZW50cyxcbiAgZXhwb3J0czogY29tcG9uZW50cyxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBIZUNvbW1vbk1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEhlQmlibGlvZ3JhcGhpZXNNb2R1bGUgeyB9XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0seUVBQXlFLENBQUM7O0FBRS9ILE1BQU0sVUFBVSxHQUFHLENBQUMsb0NBQW9DLENBQUMsQ0FBQztBQU8xRCxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixpQkFQZixvQ0FBb0MsYUFLNUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGNBQWMsYUFMekMsb0NBQW9DOytHQU8zQyxzQkFBc0IsWUFGdkIsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGNBQWM7OzJGQUVoRCxzQkFBc0I7a0JBTGxDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLFVBQVU7b0JBQ3hCLE9BQU8sRUFBRSxVQUFVO29CQUNuQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxDQUFDO2lCQUM3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgSGVDb21tb25Nb2R1bGUgfSBmcm9tICcuLi9jb21tb24vY29tbW9uLm1vZHVsZSc7XG5cbmltcG9ydCB7IEJpYmxpb2dyYXBoaWVzU2VhcmNoQ29uZmlybUNvbXBvbmVudCB9IGZyb20gJy4vYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0vYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50JztcblxuY29uc3QgY29tcG9uZW50cyA9IFtCaWJsaW9ncmFwaGllc1NlYXJjaENvbmZpcm1Db21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IGNvbXBvbmVudHMsXG4gIGV4cG9ydHM6IGNvbXBvbmVudHMsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEhlQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBIZUJpYmxpb2dyYXBoaWVzTW9kdWxlIHt9XG4iXX0=
@@ -1,3 +1,3 @@
1
1
  export * from './bibliographies.module';
2
2
  export { BibliographiesSearchConfirmComponent } from './bibliographies-search-confirm/bibliographies-search-confirm.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmlibGlvZ3JhcGhpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxPQUFPLEVBQ0wsb0NBQW9DLEVBQ3JDLE1BQU0seUVBQXlFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JpYmxpb2dyYXBoaWVzLm1vZHVsZSc7XG5cbmV4cG9ydCB7XG4gIEJpYmxpb2dyYXBoaWVzU2VhcmNoQ29uZmlybUNvbXBvbmVudFxufSBmcm9tICcuL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudCc7XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmlibGlvZ3JhcGhpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYmlibGlvZ3JhcGhpZXMubW9kdWxlJztcblxuZXhwb3J0IHsgQmlibGlvZ3JhcGhpZXNTZWFyY2hDb25maXJtQ29tcG9uZW50IH0gZnJvbSAnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQnO1xuIl19