geonetwork-ui 2.6.0-dev.d216c4dea → 2.6.0-dev.e61ca542f

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 (193) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
  3. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  4. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +18 -0
  5. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  6. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
  7. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
  8. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +3 -3
  9. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  10. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +12 -5
  11. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
  12. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
  13. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  14. package/esm2022/libs/ui/elements/src/index.mjs +2 -1
  15. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  16. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +3 -3
  17. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
  18. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  19. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +51 -0
  20. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +3 -3
  21. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  22. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  23. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +3 -3
  24. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  25. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +3 -3
  26. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
  27. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  28. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  29. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  30. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  31. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +42 -0
  32. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  33. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +3 -3
  34. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -9
  35. package/esm2022/libs/ui/layout/src/index.mjs +2 -1
  36. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
  37. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  38. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
  39. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  40. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +56 -0
  41. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
  42. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +2 -1
  43. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  44. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  45. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  46. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +11 -3
  47. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  48. package/esm2022/translations/de.json +8 -1
  49. package/esm2022/translations/en.json +10 -1
  50. package/esm2022/translations/es.json +8 -1
  51. package/esm2022/translations/fr.json +11 -2
  52. package/esm2022/translations/it.json +8 -1
  53. package/esm2022/translations/nl.json +8 -1
  54. package/esm2022/translations/pt.json +8 -1
  55. package/fesm2022/geonetwork-ui.mjs +527 -145
  56. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  57. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  58. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  59. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  60. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  61. package/libs/feature/editor/src/index.d.ts +1 -0
  62. package/libs/feature/editor/src/index.d.ts.map +1 -1
  63. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +7 -0
  64. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  65. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  66. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  67. package/libs/feature/search/src/index.d.ts +1 -1
  68. package/libs/feature/search/src/index.d.ts.map +1 -1
  69. package/libs/feature/search/src/lib/feature-search.module.d.ts +4 -2
  70. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  71. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
  72. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  73. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
  74. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  75. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  76. package/libs/ui/elements/src/index.d.ts +1 -0
  77. package/libs/ui/elements/src/index.d.ts.map +1 -1
  78. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  79. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  80. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  81. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  82. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +11 -0
  83. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  84. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +1 -1
  85. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  86. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  87. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  88. package/libs/ui/inputs/src/index.d.ts +1 -0
  89. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  90. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  91. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  92. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  93. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  94. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  95. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  96. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
  97. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  98. package/libs/ui/layout/src/index.d.ts +1 -0
  99. package/libs/ui/layout/src/index.d.ts.map +1 -1
  100. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
  101. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  102. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +18 -0
  103. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  104. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  105. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -1
  106. package/libs/ui/search/src/index.d.ts +1 -0
  107. package/libs/ui/search/src/index.d.ts.map +1 -1
  108. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  109. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  110. package/libs/ui/search/src/lib/ui-search.module.d.ts +21 -19
  111. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  112. package/package.json +1 -1
  113. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  114. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  115. package/src/libs/feature/editor/src/index.ts +1 -0
  116. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.css +0 -0
  117. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +14 -0
  118. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +15 -0
  119. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +14 -10
  120. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  121. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  122. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
  123. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +21 -15
  124. package/src/libs/feature/search/src/index.ts +1 -1
  125. package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -2
  126. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.css +0 -0
  127. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
  128. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
  129. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  130. package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
  131. package/src/libs/ui/elements/src/index.ts +1 -0
  132. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  133. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  134. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
  135. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +38 -7
  136. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
  137. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  138. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  139. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +9 -0
  140. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +51 -0
  141. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +5 -2
  142. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -7
  143. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  144. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +9 -9
  145. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +1 -1
  146. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +7 -3
  147. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +2 -3
  148. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +1 -1
  149. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -0
  150. package/src/libs/ui/inputs/src/index.ts +1 -0
  151. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  152. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  153. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  154. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  155. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
  156. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  157. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +0 -0
  158. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +2 -2
  159. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -3
  160. package/src/libs/ui/layout/src/index.ts +1 -0
  161. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  162. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
  163. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
  164. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  165. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  166. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  167. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  168. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  169. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +46 -0
  170. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +62 -0
  171. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -5
  172. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts +1 -0
  173. package/src/libs/ui/search/src/index.ts +1 -0
  174. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  175. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +24 -0
  176. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  177. package/src/libs/ui/search/src/lib/ui-search.module.ts +5 -0
  178. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +2 -1
  179. package/tailwind.base.config.js +3 -0
  180. package/tailwind.base.css +1 -13
  181. package/translations/de.json +8 -1
  182. package/translations/en.json +10 -1
  183. package/translations/es.json +8 -1
  184. package/translations/fr.json +11 -2
  185. package/translations/it.json +8 -1
  186. package/translations/nl.json +8 -1
  187. package/translations/pt.json +8 -1
  188. package/translations/sk.json +8 -1
  189. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  190. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  191. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  192. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  193. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
@@ -4,6 +4,7 @@ import { UiSearchModule } from '../../../../../libs/ui/search/src';
4
4
  import { EffectsModule } from '@ngrx/effects';
5
5
  import { StoreModule } from '@ngrx/store';
6
6
  import { TranslateModule } from '@ngx-translate/core';
7
+ import { NgIconsModule } from '@ng-icons/core';
7
8
  import { FacetsModule } from './facets/facets.module';
8
9
  import { FuzzySearchComponent } from './fuzzy-search/fuzzy-search.component';
9
10
  import { RecordsMetricsComponent } from './records-metrics/records-metrics.component';
@@ -12,11 +13,11 @@ import { ResultsListContainerComponent } from './results-list/results-list.conta
12
13
  import { SortByComponent } from './sort-by/sort-by.component';
13
14
  import { SearchEffects } from './state/effects';
14
15
  import { initialState, reducer, SEARCH_FEATURE_KEY } from './state/reducer';
15
- import { ResultsHitsContainerComponent } from './results-hits-number/results-hits.container.component';
16
+ import { ResultsHitsContainerComponent } from './results-hits/results-hits.container.component';
16
17
  import { SearchStateContainerDirective } from './state/container/search-state.container.directive';
17
18
  import { AutocompleteComponent, DateRangeDropdownComponent, UiInputsModule, } from '../../../../../libs/ui/inputs/src';
18
19
  import { NgModule } from '@angular/core';
19
- import { ErrorComponent, UiElementsModule } from '../../../../../libs/ui/elements/src';
20
+ import { ErrorComponent, KindBadgeComponent, UiElementsModule, } from '../../../../../libs/ui/elements/src';
20
21
  import { FilterDropdownComponent } from './filter-dropdown/filter-dropdown.component';
21
22
  import { SpinningLoaderComponent, UiWidgetsModule, } from '../../../../../libs/ui/widgets/src';
22
23
  import { FavoriteStarComponent } from './favorites/favorite-star/favorite-star.component';
@@ -44,7 +45,9 @@ export class FeatureSearchModule {
44
45
  SpinningLoaderComponent,
45
46
  ErrorComponent,
46
47
  FavoriteStarComponent,
47
- DateRangeDropdownComponent], exports: [SortByComponent,
48
+ DateRangeDropdownComponent,
49
+ NgIconsModule,
50
+ KindBadgeComponent], exports: [SortByComponent,
48
51
  ResultsLayoutComponent,
49
52
  FuzzySearchComponent,
50
53
  RecordsMetricsComponent,
@@ -69,7 +72,9 @@ export class FeatureSearchModule {
69
72
  AutocompleteComponent,
70
73
  ErrorComponent,
71
74
  FavoriteStarComponent,
72
- DateRangeDropdownComponent, FacetsModule] }); }
75
+ DateRangeDropdownComponent,
76
+ NgIconsModule,
77
+ KindBadgeComponent, FacetsModule] }); }
73
78
  }
74
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeatureSearchModule, decorators: [{
75
80
  type: NgModule,
@@ -103,6 +108,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
103
108
  ErrorComponent,
104
109
  FavoriteStarComponent,
105
110
  DateRangeDropdownComponent,
111
+ NgIconsModule,
112
+ KindBadgeComponent,
106
113
  ],
107
114
  exports: [
108
115
  SortByComponent,
@@ -117,4 +124,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
117
124
  ],
118
125
  }]
119
126
  }] });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1zZWFyY2gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL2ZlYXR1cmUtc2VhcmNoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzVFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlEQUFpRCxDQUFBO0FBQy9GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTtBQUN0RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQTtBQUNsRyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLDBCQUEwQixFQUMxQixjQUFjLEdBQ2YsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQTtBQUNyRixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGVBQWUsR0FDaEIsTUFBTSxvQ0FBb0MsQ0FBQTtBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQTs7Ozs7QUE2Q3pGLE1BQU0sT0FBTyxtQkFBbUI7K0dBQW5CLG1CQUFtQjtnSEFBbkIsbUJBQW1CLGlCQXpDNUIsZUFBZTtZQUNmLHNCQUFzQjtZQUN0QixvQkFBb0I7WUFDcEIsdUJBQXVCO1lBQ3ZCLDZCQUE2QjtZQUM3Qiw2QkFBNkI7WUFDN0IsNkJBQTZCO1lBQzdCLHVCQUF1QixhQUd2QixZQUFZLHNFQU1aLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsY0FBYztZQUNkLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLGVBQWU7WUFDZixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLGNBQWM7WUFDZCxxQkFBcUI7WUFDckIsMEJBQTBCLGFBRzFCLGVBQWU7WUFDZixzQkFBc0I7WUFDdEIsb0JBQW9CO1lBQ3BCLHVCQUF1QjtZQUN2Qiw2QkFBNkI7WUFDN0IsNkJBQTZCO1lBQzdCLFlBQVk7WUFDWiw2QkFBNkI7WUFDN0IsdUJBQXVCO2dIQUdkLG1CQUFtQixZQS9CNUIsWUFBWTtZQUNaLGVBQWUsQ0FBQyxRQUFRLEVBQUU7WUFDMUIsV0FBVyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxPQUFPLEVBQUU7Z0JBQ2xELFlBQVk7YUFDYixDQUFDO1lBQ0YsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pDLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsY0FBYztZQUNkLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLGVBQWU7WUFDZixxQkFBcUI7WUFFckIsY0FBYztZQUNkLHFCQUFxQjtZQUNyQiwwQkFBMEIsRUFTMUIsWUFBWTs7NEZBS0gsbUJBQW1CO2tCQTNDL0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7d0JBQzdCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3dCQUM3Qix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWUsQ0FBQyxRQUFRLEVBQUU7d0JBQzFCLFdBQVcsQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVBQUUsT0FBTyxFQUFFOzRCQUNsRCxZQUFZO3lCQUNiLENBQUM7d0JBQ0YsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUN6QyxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsWUFBWTt3QkFDWixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixjQUFjO3dCQUNkLHFCQUFxQjt3QkFDckIsMEJBQTBCO3FCQUMzQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7d0JBQzdCLDZCQUE2Qjt3QkFDN0IsWUFBWTt3QkFDWiw2QkFBNkI7d0JBQzdCLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlLCBIdHRwQ2xpZW50WHNyZk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xuaW1wb3J0IHsgVWlTZWFyY2hNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL3NlYXJjaC9zcmMnXG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRmFjZXRzTW9kdWxlIH0gZnJvbSAnLi9mYWNldHMvZmFjZXRzLm1vZHVsZSdcbmltcG9ydCB7IEZ1enp5U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9mdXp6eS1zZWFyY2gvZnV6enktc2VhcmNoLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZHNNZXRyaWNzQ29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmRzLW1ldHJpY3MvcmVjb3Jkcy1tZXRyaWNzLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlc3VsdHNMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtbGF5b3V0L3Jlc3VsdHMtbGF5b3V0LmNvbXBvbmVudCdcbmltcG9ydCB7IFJlc3VsdHNMaXN0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXN1bHRzLWxpc3QvcmVzdWx0cy1saXN0LmNvbnRhaW5lci5jb21wb25lbnQnXG5pbXBvcnQgeyBTb3J0QnlDb21wb25lbnQgfSBmcm9tICcuL3NvcnQtYnkvc29ydC1ieS5jb21wb25lbnQnXG5pbXBvcnQgeyBTZWFyY2hFZmZlY3RzIH0gZnJvbSAnLi9zdGF0ZS9lZmZlY3RzJ1xuaW1wb3J0IHsgaW5pdGlhbFN0YXRlLCByZWR1Y2VyLCBTRUFSQ0hfRkVBVFVSRV9LRVkgfSBmcm9tICcuL3N0YXRlL3JlZHVjZXInXG5pbXBvcnQgeyBSZXN1bHRzSGl0c0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vcmVzdWx0cy1oaXRzLW51bWJlci9yZXN1bHRzLWhpdHMuY29udGFpbmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFNlYXJjaFN0YXRlQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9zdGF0ZS9jb250YWluZXIvc2VhcmNoLXN0YXRlLmNvbnRhaW5lci5kaXJlY3RpdmUnXG5pbXBvcnQge1xuICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gIERhdGVSYW5nZURyb3Bkb3duQ29tcG9uZW50LFxuICBVaUlucHV0c01vZHVsZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRXJyb3JDb21wb25lbnQsIFVpRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYydcbmltcG9ydCB7IEZpbHRlckRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXItZHJvcGRvd24vZmlsdGVyLWRyb3Bkb3duLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIFNwaW5uaW5nTG9hZGVyQ29tcG9uZW50LFxuICBVaVdpZGdldHNNb2R1bGUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBGYXZvcml0ZVN0YXJDb21wb25lbnQgfSBmcm9tICcuL2Zhdm9yaXRlcy9mYXZvcml0ZS1zdGFyL2Zhdm9yaXRlLXN0YXIuY29tcG9uZW50J1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTb3J0QnlDb21wb25lbnQsXG4gICAgUmVzdWx0c0xheW91dENvbXBvbmVudCxcbiAgICBGdXp6eVNlYXJjaENvbXBvbmVudCxcbiAgICBSZWNvcmRzTWV0cmljc0NvbXBvbmVudCxcbiAgICBSZXN1bHRzTGlzdENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBSZXN1bHRzSGl0c0NvbnRhaW5lckNvbXBvbmVudCxcbiAgICBTZWFyY2hTdGF0ZUNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgICBGaWx0ZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKFNFQVJDSF9GRUFUVVJFX0tFWSwgcmVkdWNlciwge1xuICAgICAgaW5pdGlhbFN0YXRlLFxuICAgIH0pLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbU2VhcmNoRWZmZWN0c10pLFxuICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgSHR0cENsaWVudFhzcmZNb2R1bGUsXG4gICAgVWlTZWFyY2hNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgVWlFbGVtZW50c01vZHVsZSxcbiAgICBGYWNldHNNb2R1bGUsXG4gICAgVWlXaWRnZXRzTW9kdWxlLFxuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcbiAgICBTcGlubmluZ0xvYWRlckNvbXBvbmVudCxcbiAgICBFcnJvckNvbXBvbmVudCxcbiAgICBGYXZvcml0ZVN0YXJDb21wb25lbnQsXG4gICAgRGF0ZVJhbmdlRHJvcGRvd25Db21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTb3J0QnlDb21wb25lbnQsXG4gICAgUmVzdWx0c0xheW91dENvbXBvbmVudCxcbiAgICBGdXp6eVNlYXJjaENvbXBvbmVudCxcbiAgICBSZWNvcmRzTWV0cmljc0NvbXBvbmVudCxcbiAgICBSZXN1bHRzTGlzdENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBSZXN1bHRzSGl0c0NvbnRhaW5lckNvbXBvbmVudCxcbiAgICBGYWNldHNNb2R1bGUsXG4gICAgU2VhcmNoU3RhdGVDb250YWluZXJEaXJlY3RpdmUsXG4gICAgRmlsdGVyRHJvcGRvd25Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVTZWFyY2hNb2R1bGUge31cbiJdfQ==
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1zZWFyY2gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL2ZlYXR1cmUtc2VhcmNoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQTtBQUNyRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQTtBQUNsRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQTtBQUMvRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDM0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saURBQWlELENB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O3FCQUN4QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUsIEh0dHBDbGllbnRYc3JmTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBVaVNlYXJjaE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvc2VhcmNoL3NyYydcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJ1xuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBOZ0ljb25zTW9kdWxlIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBGYWNldHNNb2R1bGUgfSBmcm9tICcuL2ZhY2V0cy9mYWNldHMubW9kdWxlJ1xuaW1wb3J0IHsgRnV6enlTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2Z1enp5LXNlYXJjaC9mdXp6eS1zZWFyY2guY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3Jkc01ldHJpY3NDb21wb25lbnQgfSBmcm9tICcuL3JlY29yZHMtbWV0cmljcy9yZWNvcmRzLW1ldHJpY3MuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVzdWx0c0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vcmVzdWx0cy1sYXlvdXQvcmVzdWx0cy1sYXlvdXQuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVzdWx0c0xpc3RDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtbGlzdC9yZXN1bHRzLWxpc3QuY29udGFpbmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFNvcnRCeUNvbXBvbmVudCB9IGZyb20gJy4vc29ydC1ieS9zb3J0LWJ5LmNvbXBvbmVudCdcbmltcG9ydCB7IFNlYXJjaEVmZmVjdHMgfSBmcm9tICcuL3N0YXRlL2VmZmVjdHMnXG5pbXBvcnQgeyBpbml0aWFsU3RhdGUsIHJlZHVjZXIsIFNFQVJDSF9GRUFUVVJFX0tFWSB9IGZyb20gJy4vc3RhdGUvcmVkdWNlcidcbmltcG9ydCB7IFJlc3VsdHNIaXRzQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXN1bHRzLWhpdHMvcmVzdWx0cy1oaXRzLmNvbnRhaW5lci5jb21wb25lbnQnXG5pbXBvcnQgeyBTZWFyY2hTdGF0ZUNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gJy4vc3RhdGUvY29udGFpbmVyL3NlYXJjaC1zdGF0ZS5jb250YWluZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICBEYXRlUmFuZ2VEcm9wZG93bkNvbXBvbmVudCxcbiAgVWlJbnB1dHNNb2R1bGUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIEVycm9yQ29tcG9uZW50LFxuICBLaW5kQmFkZ2VDb21wb25lbnQsXG4gIFVpRWxlbWVudHNNb2R1bGUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgRmlsdGVyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2ZpbHRlci1kcm9wZG93bi9maWx0ZXItZHJvcGRvd24uY29tcG9uZW50J1xuaW1wb3J0IHtcbiAgU3Bpbm5pbmdMb2FkZXJDb21wb25lbnQsXG4gIFVpV2lkZ2V0c01vZHVsZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IEZhdm9yaXRlU3RhckNvbXBvbmVudCB9IGZyb20gJy4vZmF2b3JpdGVzL2Zhdm9yaXRlLXN0YXIvZmF2b3JpdGUtc3Rhci5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNvcnRCeUNvbXBvbmVudCxcbiAgICBSZXN1bHRzTGF5b3V0Q29tcG9uZW50LFxuICAgIEZ1enp5U2VhcmNoQ29tcG9uZW50LFxuICAgIFJlY29yZHNNZXRyaWNzQ29tcG9uZW50LFxuICAgIFJlc3VsdHNMaXN0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIFJlc3VsdHNIaXRzQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIFNlYXJjaFN0YXRlQ29udGFpbmVyRGlyZWN0aXZlLFxuICAgIEZpbHRlckRyb3Bkb3duQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoU0VBUkNIX0ZFQVRVUkVfS0VZLCByZWR1Y2VyLCB7XG4gICAgICBpbml0aWFsU3RhdGUsXG4gICAgfSksXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtTZWFyY2hFZmZlY3RzXSksXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBIdHRwQ2xpZW50WHNyZk1vZHVsZSxcbiAgICBVaVNlYXJjaE1vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBVaUVsZW1lbnRzTW9kdWxlLFxuICAgIEZhY2V0c01vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICAgIFNwaW5uaW5nTG9hZGVyQ29tcG9uZW50LFxuICAgIEVycm9yQ29tcG9uZW50LFxuICAgIEZhdm9yaXRlU3RhckNvbXBvbmVudCxcbiAgICBEYXRlUmFuZ2VEcm9wZG93bkNvbXBvbmVudCxcbiAgICBOZ0ljb25zTW9kdWxlLFxuICAgIEtpbmRCYWRnZUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNvcnRCeUNvbXBvbmVudCxcbiAgICBSZXN1bHRzTGF5b3V0Q29tcG9uZW50LFxuICAgIEZ1enp5U2VhcmNoQ29tcG9uZW50LFxuICAgIFJlY29yZHNNZXRyaWNzQ29tcG9uZW50LFxuICAgIFJlc3VsdHNMaXN0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIFJlc3VsdHNIaXRzQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEZhY2V0c01vZHVsZSxcbiAgICBTZWFyY2hTdGF0ZUNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgICBGaWx0ZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVhdHVyZVNlYXJjaE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,41 @@
1
+ import { catchError, filter, map, of, startWith, switchMap, } from 'rxjs';
2
+ import { Component } from '@angular/core';
3
+ import { marker } from '@biesbjerg/ngx-translate-extract-marker';
4
+ import { SearchFacade } from '../state/search.facade';
5
+ import { SearchService } from '../utils/service/search.service';
6
+ import { FieldsService } from '../utils/service/fields.service';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../state/search.facade";
9
+ import * as i2 from "../utils/service/search.service";
10
+ import * as i3 from "../utils/service/fields.service";
11
+ import * as i4 from "@angular/common";
12
+ import * as i5 from "../../../../../ui/search/src/lib/results-hits-number/results-hits-number.component";
13
+ import * as i6 from "../../../../../ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component";
14
+ marker('search.filters.recordKind.all');
15
+ marker('search.filters.recordKind.dataset');
16
+ marker('search.filters.recordKind.service');
17
+ marker('search.filters.recordKind.reuse');
18
+ export class ResultsHitsContainerComponent {
19
+ constructor(searchFacade, searchService, fieldsService) {
20
+ this.searchFacade = searchFacade;
21
+ this.searchService = searchService;
22
+ this.fieldsService = fieldsService;
23
+ this.fieldName = 'recordKind';
24
+ }
25
+ ngOnInit() {
26
+ this.selected$ = this.searchFacade.searchFilters$.pipe(switchMap((filters) => this.fieldsService.readFieldValuesFromFilters(filters)), map((fieldValues) => fieldValues[this.fieldName]), filter((selected) => !!selected), startWith([]), catchError(() => of([])));
27
+ this.filterChoices$ = (this.fieldsService.getAvailableValues(this.fieldName));
28
+ }
29
+ onSelectionChanged(values) {
30
+ this.fieldsService
31
+ .buildFiltersFromFieldValues({ [this.fieldName]: values })
32
+ .subscribe((filters) => this.searchService.updateFilters(filters));
33
+ }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResultsHitsContainerComponent, deps: [{ token: i1.SearchFacade }, { token: i2.SearchService }, { token: i3.FieldsService }], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ResultsHitsContainerComponent, selector: "gn-ui-results-hits", ngImport: i0, template: "<div\n class=\"flex flex-col gap-3 sm:flex-row justify-between\"\n [ngClass]=\"{\n 'sm:items-center': (searchFacade.resultsHits$ | async) !== 0,\n }\"\n>\n <gn-ui-results-hits-number\n [loading]=\"searchFacade.isLoading$ | async\"\n [hits]=\"searchFacade.resultsHits$ | async\"\n ></gn-ui-results-hits-number>\n <gn-ui-results-hits-search-kind\n (selectionChanged)=\"onSelectionChanged($event)\"\n [choices]=\"filterChoices$ | async\"\n [selected]=\"selected$ | async\"\n ></gn-ui-results-hits-search-kind>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i5.ResultsHitsNumberComponent, selector: "gn-ui-results-hits-number", inputs: ["hits", "loading"] }, { kind: "component", type: i6.ResultsHitsSearchKindComponent, selector: "gn-ui-results-hits-search-kind", inputs: ["selected", "choices"], outputs: ["selectionChanged"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResultsHitsContainerComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'gn-ui-results-hits', template: "<div\n class=\"flex flex-col gap-3 sm:flex-row justify-between\"\n [ngClass]=\"{\n 'sm:items-center': (searchFacade.resultsHits$ | async) !== 0,\n }\"\n>\n <gn-ui-results-hits-number\n [loading]=\"searchFacade.isLoading$ | async\"\n [hits]=\"searchFacade.resultsHits$ | async\"\n ></gn-ui-results-hits-number>\n <gn-ui-results-hits-search-kind\n (selectionChanged)=\"onSelectionChanged($event)\"\n [choices]=\"filterChoices$ | async\"\n [selected]=\"selected$ | async\"\n ></gn-ui-results-hits-search-kind>\n</div>\n" }]
40
+ }], ctorParameters: () => [{ type: i1.SearchFacade }, { type: i2.SearchService }, { type: i3.FieldsService }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0cy1oaXRzLmNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYy9saWIvcmVzdWx0cy1oaXRzL3Jlc3VsdHMtaGl0cy5jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL3Jlc3VsdHMtaGl0cy9yZXN1bHRzLWhpdHMuY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEdBQUcsRUFFSCxFQUFFLEVBQ0YsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLE1BQU0sQ0FBQTtBQUNiLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUVyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFBOzs7Ozs7OztBQUUvRCxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQTtBQUN2QyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtBQUMzQyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtBQUMzQyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQTtBQU96QyxNQUFNLE9BQU8sNkJBQTZCO0lBS3hDLFlBQ1ksWUFBMEIsRUFDNUIsYUFBNEIsRUFDNUIsYUFBNEI7UUFGMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFQdEMsY0FBUyxHQUFHLFlBQVksQ0FBQTtJQVFyQixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUNwRCxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUN2RCxFQUNELEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUNqRCxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDaEMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDRyxDQUFBO1FBRTdCLElBQUksQ0FBQyxjQUFjLEdBQXNDLENBQ3ZELElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUN0RCxDQUFBO0lBQ0gsQ0FBQztJQUVELGtCQUFrQixDQUFDLE1BQWdCO1FBQ2pDLElBQUksQ0FBQyxhQUFhO2FBQ2YsMkJBQTJCLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQzthQUN6RCxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDdEUsQ0FBQzsrR0EvQlUsNkJBQTZCO21HQUE3Qiw2QkFBNkIsMERDMUIxQywraEJBZ0JBOzs0RkRVYSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY2F0Y2hFcnJvcixcbiAgZmlsdGVyLFxuICBtYXAsXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcydcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IFNlYXJjaEZhY2FkZSB9IGZyb20gJy4uL3N0YXRlL3NlYXJjaC5mYWNhZGUnXG5pbXBvcnQgeyBGaWVsZEF2YWlsYWJsZVZhbHVlLCBGaWVsZFZhbHVlIH0gZnJvbSAnLi4vdXRpbHMvc2VydmljZS9maWVsZHMnXG5pbXBvcnQgeyBTZWFyY2hTZXJ2aWNlIH0gZnJvbSAnLi4vdXRpbHMvc2VydmljZS9zZWFyY2guc2VydmljZSdcbmltcG9ydCB7IEZpZWxkc1NlcnZpY2UgfSBmcm9tICcuLi91dGlscy9zZXJ2aWNlL2ZpZWxkcy5zZXJ2aWNlJ1xuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnJlY29yZEtpbmQuYWxsJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucmVjb3JkS2luZC5kYXRhc2V0Jylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucmVjb3JkS2luZC5zZXJ2aWNlJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucmVjb3JkS2luZC5yZXVzZScpXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXJlc3VsdHMtaGl0cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXN1bHRzLWhpdHMuY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzdWx0cy1oaXRzLmNvbnRhaW5lci5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJlc3VsdHNIaXRzQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZmllbGROYW1lID0gJ3JlY29yZEtpbmQnXG4gIGZpbHRlckNob2ljZXMkOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT5cbiAgc2VsZWN0ZWQkOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc2VhcmNoRmFjYWRlOiBTZWFyY2hGYWNhZGUsXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmllbGRzU2VydmljZTogRmllbGRzU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZWxlY3RlZCQgPSB0aGlzLnNlYXJjaEZhY2FkZS5zZWFyY2hGaWx0ZXJzJC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChmaWx0ZXJzKSA9PlxuICAgICAgICB0aGlzLmZpZWxkc1NlcnZpY2UucmVhZEZpZWxkVmFsdWVzRnJvbUZpbHRlcnMoZmlsdGVycylcbiAgICAgICksXG4gICAgICBtYXAoKGZpZWxkVmFsdWVzKSA9PiBmaWVsZFZhbHVlc1t0aGlzLmZpZWxkTmFtZV0pLFxuICAgICAgZmlsdGVyKChzZWxlY3RlZCkgPT4gISFzZWxlY3RlZCksXG4gICAgICBzdGFydFdpdGgoW10pLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpXG4gICAgKSBhcyBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT5cblxuICAgIHRoaXMuZmlsdGVyQ2hvaWNlcyQgPSA8T2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+PihcbiAgICAgIHRoaXMuZmllbGRzU2VydmljZS5nZXRBdmFpbGFibGVWYWx1ZXModGhpcy5maWVsZE5hbWUpXG4gICAgKVxuICB9XG5cbiAgb25TZWxlY3Rpb25DaGFuZ2VkKHZhbHVlczogc3RyaW5nW10pIHtcbiAgICB0aGlzLmZpZWxkc1NlcnZpY2VcbiAgICAgIC5idWlsZEZpbHRlcnNGcm9tRmllbGRWYWx1ZXMoeyBbdGhpcy5maWVsZE5hbWVdOiB2YWx1ZXMgfSlcbiAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcnMpID0+IHRoaXMuc2VhcmNoU2VydmljZS51cGRhdGVGaWx0ZXJzKGZpbHRlcnMpKVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyBzbTpmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW5cIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NtOml0ZW1zLWNlbnRlcic6IChzZWFyY2hGYWNhZGUucmVzdWx0c0hpdHMkIHwgYXN5bmMpICE9PSAwLFxuICB9XCJcbj5cbiAgPGduLXVpLXJlc3VsdHMtaGl0cy1udW1iZXJcbiAgICBbbG9hZGluZ109XCJzZWFyY2hGYWNhZGUuaXNMb2FkaW5nJCB8IGFzeW5jXCJcbiAgICBbaGl0c109XCJzZWFyY2hGYWNhZGUucmVzdWx0c0hpdHMkIHwgYXN5bmNcIlxuICA+PC9nbi11aS1yZXN1bHRzLWhpdHMtbnVtYmVyPlxuICA8Z24tdWktcmVzdWx0cy1oaXRzLXNlYXJjaC1raW5kXG4gICAgKHNlbGVjdGlvbkNoYW5nZWQpPVwib25TZWxlY3Rpb25DaGFuZ2VkKCRldmVudClcIlxuICAgIFtjaG9pY2VzXT1cImZpbHRlckNob2ljZXMkIHwgYXN5bmNcIlxuICAgIFtzZWxlY3RlZF09XCJzZWxlY3RlZCQgfCBhc3luY1wiXG4gID48L2duLXVpLXJlc3VsdHMtaGl0cy1zZWFyY2gta2luZD5cbjwvZGl2PlxuIl19
@@ -8,6 +8,7 @@ import { PlatformServiceInterface } from '../../../../../../../libs/common/domai
8
8
  import { ElasticsearchService, isDateRange, METADATA_LANGUAGE, } from '../../../../../../../libs/api/repository/src';
9
9
  import { LangService } from '../../../../../../../libs/util/i18n/src';
10
10
  import { formatUserInfo } from '../../../../../../../libs/util/shared/src';
11
+ import { PossibleResourceTypes } from '../../../../../../../libs/api/metadata-converter/src';
11
12
  export class AbstractSearchField {
12
13
  }
13
14
  export class SimpleSearchField {
@@ -38,6 +39,7 @@ export class SimpleSearchField {
38
39
  const bucketPromises = buckets.map(async (bucket) => ({
39
40
  label: `${await this.getBucketLabel(bucket)} (${bucket.count})`,
40
41
  value: bucket.term.toString(),
42
+ count: bucket.count,
41
43
  }));
42
44
  return Promise.all(bucketPromises);
43
45
  }));
@@ -363,4 +365,71 @@ export class AvailableServicesField extends SimpleSearchField {
363
365
  return of(values);
364
366
  }
365
367
  }
366
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL3V0aWxzL3NlcnZpY2UvZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNoRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlGQUFpRixDQUFBO0FBQy9ILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRFQUE0RSxDQUFBO0FBU3JILE9BQU8sRUFFTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLDhDQUE4QyxDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFVMUUsTUFBTSxPQUFnQixtQkFBbUI7Q0FTeEM7QUFFRCxNQUFNLE9BQU8saUJBQWlCO0lBTTVCLFlBQ1ksV0FBbUIsRUFDbkIsUUFBa0IsRUFDbEIsUUFBd0IsS0FBSyxFQUM3QixZQUE2QixLQUFLO1FBSGxDLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsY0FBUyxHQUFULFNBQVMsQ0FBeUI7UUFUcEMsZUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENB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QixFQUFFO2lCQUM3RDthQUNGO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFvQjtRQUN0QyxNQUFNLE9BQU8sR0FBZ0IsRUFBRSxDQUFBO1FBQy9CLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsSUFBSSxDQUFBO1FBQ3hFLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUM7WUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLElBQUksQ0FBQTtRQUVqRCxPQUFPLEVBQUUsQ0FBQztZQUNSLFlBQVksRUFBRSxPQUFPO1NBQ3RCLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFxQjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFBO1FBQ3ZDLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDOUIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ2pCLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztZQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDaEUsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN4RSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9vcmdhbml6YXRpb25zLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9wbGF0Zm9ybS5zZXJ2aWNlLmludGVyZmFjZSdcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uQnVja2V0cyxcbiAgQWdncmVnYXRpb25zUGFyYW1zLFxuICBGaWVsZEZpbHRlcixcbiAgRmllbGRGaWx0ZXJCeUV4cHJlc3Npb24sXG4gIEZpZWxkRmlsdGVycyxcbiAgVGVybUJ1Y2tldCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHtcbiAgRGF0ZVJhbmdlLFxuICBFbGFzdGljc2VhcmNoU2VydmljZSxcbiAgaXNEYXRlUmFuZ2UsXG4gIE1FVEFEQVRBX0xBTkdVQUdFLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9yZXBvc2l0b3J5L3NyYydcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2kxOG4vc3JjJ1xuaW1wb3J0IHsgZm9ybWF0VXNlckluZm8gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcblxuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3ZhbHVlcycgfCAnZGF0ZVJhbmdlJ1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlID0gc3RyaW5nIHwgbnVtYmVyXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQXZhaWxhYmxlVmFsdWUge1xuICB2YWx1ZTogRmllbGRWYWx1ZVxuICBsYWJlbDogc3RyaW5nXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgYWJzdHJhY3QgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdIHwgRGF0ZVJhbmdlW10+XG4gIGFic3RyYWN0IGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz5cbiAgYWJzdHJhY3QgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+XG4gIGFic3RyYWN0IGdldFR5cGUoKTogRmllbGRUeXBlXG59XG5cbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yeSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlKVxuXG4gIC8vIEZJWE1FOiB0aGlzIGlzIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIHJ1bnRpbWUgZmllbGRzOyBhYnN0cmFjdCB0aGlzIGFzIHdlbGxcbiAgcHJvdGVjdGVkIGVzU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEVsYXN0aWNzZWFyY2hTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge31cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBmaWVsZDogdGhpcy5lc0ZpZWxkTmFtZSxcbiAgICAgICAgbGltaXQ6IDEwMDAsXG4gICAgICAgIHNvcnQ6IFt0aGlzLm9yZGVyLCB0aGlzLm9yZGVyVHlwZV0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBidWNrZXQudGVybS50b1N0cmluZygpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yZXBvc2l0b3J5LmFnZ3JlZ2F0ZSh0aGlzLmdldEFnZ3JlZ2F0aW9ucygpKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAocmVzcG9uc2UpID0+XG4gICAgICAgICAgKHJlc3BvbnNlW3RoaXMuZXNGaWVsZE5hbWVdIGFzIEFnZ3JlZ2F0aW9uQnVja2V0cykuYnVja2V0cyB8fCBbXVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoYnVja2V0czogVGVybUJ1Y2tldFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGJ1Y2tldFByb21pc2VzID0gYnVja2V0cy5tYXAoYXN5bmMgKGJ1Y2tldCkgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7YXdhaXQgdGhpcy5nZXRCdWNrZXRMYWJlbChidWNrZXQpfSAoJHtidWNrZXQuY291bnR9KWAsXG4gICAgICAgICAgdmFsdWU6IGJ1Y2tldC50ZXJtLnRvU3RyaW5nKCksXG4gICAgICAgIH0pKVxuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoYnVja2V0UHJvbWlzZXMpXG4gICAgICB9KVxuICAgIClcbiAgfVxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKFxuICAgIHZhbHVlczogRmllbGRWYWx1ZVtdIHwgRGF0ZVJhbmdlW11cbiAgKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICAvLyBGaWVsZFZhbHVlW11cbiAgICBpZiAodGhpcy5nZXRUeXBlKCkgPT09ICd2YWx1ZXMnKSB7XG4gICAgICByZXR1cm4gb2Yoe1xuICAgICAgICBbdGhpcy5lc0ZpZWxkTmFtZV06ICh2YWx1ZXMgYXMgRmllbGRWYWx1ZVtdKS5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSB2YWwudG9TdHJpbmcoKVxuICAgICAgICAgIGlmICh2YWx1ZSAhPT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgW3ZhbHVlXTogdHJ1ZSB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgfSwge30pLFxuICAgICAgfSlcbiAgICB9XG4gICAgLy8gRGF0ZVJhbmdlXG4gICAgcmV0dXJuIG9mKHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogdmFsdWVzWzBdICE9PSAnJyA/IHZhbHVlc1swXSA6IHt9LFxuICAgIH0pXG4gIH1cbiAgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSBmaWx0ZXJzW3RoaXMuZXNGaWVsZE5hbWVdXG4gICAgaWYgKCFmaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICAvLyBmaWx0ZXIgYnkgZXhwcmVzc2lvblxuICAgIGlmICh0eXBlb2YgZmlsdGVyID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIG9mKFtmaWx0ZXJdKVxuICAgIH1cbiAgICAvLyBmaWx0ZXIgYnkgZGF0ZSByYW5nZVxuICAgIGlmIChpc0RhdGVSYW5nZShmaWx0ZXIpKSB7XG4gICAgICByZXR1cm4gb2YoZmlsdGVyKVxuICAgIH1cbiAgICAvLyBmaWx0ZXIgYnkgdmFsdWVzXG4gICAgY29uc3QgdmFsdWVzID0gT2JqZWN0LmtleXMoZmlsdGVyKS5maWx0ZXIoKHYpID0+IGZpbHRlclt2XSlcbiAgICByZXR1cm4gb2YodmFsdWVzKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVkU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByb3RlY3RlZCBwbGF0Zm9ybVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldFRyYW5zbGF0aW9uKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHRoaXMucGxhdGZvcm1TZXJ2aWNlLnRyYW5zbGF0ZUtleShrZXkpKVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRUcmFuc2xhdGlvbihidWNrZXQudGVybSkpIHx8IGJ1Y2tldC50ZXJtXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICBpZiAodGhpcy5vcmRlclR5cGUgPT09ICdjb3VudCcpIHJldHVybiBzdXBlci5nZXRBdmFpbGFibGVWYWx1ZXMoKVxuICAgIC8vIHNvcnQgdmFsdWVzIGJ5IGFscGhhYmV0aWNhbCBvcmRlclxuICAgIHJldHVybiBzdXBlclxuICAgICAgLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgICAgdmFsdWVzLnNvcnQoKGEsIGIpID0+IG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZShhLmxhYmVsLCBiLmxhYmVsKSlcbiAgICAgICAgKVxuICAgICAgKVxuICB9XG59XG5cbi8qKlxuICogVGhpcyBzZWFyY2ggZmllbGQgd2lsbCBlaXRoZXIgdGFyZ2V0IHRoZSBgLmRlZmF1bHRgIGZpZWxkLCBvciBhIHNwZWNpZmljIGAubGFuZ3h5emAgZmllbGQgYWNjb3JkaW5nXG4gKiB0byB0aGUgZGVmaW5lZCBNRVRBREFUQV9MQU5HVUFHRSB0b2tlblxuICogVGhlIHByb3ZpZGVkIEVTIGZpZWxkIG5hbWUgc2hvdWxkIG5vdCBpbmNsdWRlIGFueSBwcmVmaXggc3VjaCBhcyBgLmxhbmdlbmdgXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aWxpbmd1YWxTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSBsYW5nU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KExhbmdTZXJ2aWNlKVxuICBwcml2YXRlIHNlYXJjaExhbmd1YWdlID0gdGhpcy5pbmplY3Rvci5nZXQoTUVUQURBVEFfTEFOR1VBR0UsIG51bGwpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICAgIC8vIG5vdGU6IHdlJ3JlIGV4Y2x1ZGluZyB0aGUgbWV0YWRhdGEgbGFuZ3VhZ2UgXCJjdXJyZW50XCIgdmFsdWUgYmVjYXVzZSB0aGF0IHdvdWxkIHByb2R1Y2VcbiAgICAvLyBwZXJtYWxpbmtzIHRoYXQgbWlnaHQgbm90IHdvcmsgZm9yIGRpZmZlcmVudCB1c2Vyc1xuICAgIGlmICh0aGlzLnNlYXJjaExhbmd1YWdlICYmIHRoaXMuc2VhcmNoTGFuZ3VhZ2UgIT09ICdjdXJyZW50Jykge1xuICAgICAgdGhpcy5lc0ZpZWxkTmFtZSArPSBgLmxhbmcke3RoaXMuc2VhcmNoTGFuZ3VhZ2V9YFxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVzRmllbGROYW1lICs9ICcuZGVmYXVsdCdcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZ1bGxUZXh0U2VhcmNoRmllbGQgaW1wbGVtZW50cyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG4gIGdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzOiBGaWVsZFZhbHVlW10pOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIHJldHVybiBvZih7XG4gICAgICBhbnk6IHZhbHVlc1swXSBhcyBzdHJpbmcsXG4gICAgfSlcbiAgfVxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICByZXR1cm4gb2YoZmlsdGVycy5hbnkgPyBbZmlsdGVycy5hbnkgYXMgRmllbGRGaWx0ZXJCeUV4cHJlc3Npb25dIDogW10pXG4gIH1cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLnllcycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbC5ubycpXG5cbmV4cG9ydCBjbGFzcyBJc1NwYXRpYWxTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSlcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcignaXNTcGF0aWFsJywgaW5qZWN0b3IsICdhc2MnKVxuICAgIHRoaXMuZXNTZXJ2aWNlLnJlZ2lzdGVyUnVudGltZUZpZWxkKFxuICAgICAgJ2lzU3BhdGlhbCcsXG4gICAgICBgU3RyaW5nIHJlc3VsdCA9ICdubyc7XG5TdHJpbmcgZm9ybWF0cyA9IGRvYy5mb3JtYXQuam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5pZiAoZm9ybWF0cy5jb250YWlucygnZ2VvanNvbicpIHx8IGZvcm1hdHMuY29udGFpbnMoJ2FyY2dpcycpIHx8IGZvcm1hdHMuY29udGFpbnMoJ29nYycpIHx8IGZvcm1hdHMuY29udGFpbnMoJ3NocCcpKSByZXN1bHQgPSAneWVzJztcblN0cmluZyBwcm90b2NvbHMgPSBkb2MubGlua1Byb3RvY29sLmpvaW4oJ3wnKS50b0xvd2VyQ2FzZSgpO1xuaWYgKHByb3RvY29scy5jb250YWlucygnZXNyaScpIHx8IHByb3RvY29scy5jb250YWlucygnb2djJykpIHJlc3VsdCA9ICd5ZXMnO1xuZW1pdChyZXN1bHQpO2BcbiAgICApXG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzU3BhdGlhbDoge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBsaW1pdDogMixcbiAgICAgICAgZmllbGQ6ICdpc1NwYXRpYWwnLFxuICAgICAgICBzb3J0OiBbJ2FzYycsICdrZXknXSxcbiAgICAgIH0sXG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXQoYHNlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbC4ke2J1Y2tldC50ZXJtfWApXG4gICAgKVxuICB9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgaXNTcGF0aWFsID0ge31cbiAgICBpZiAodmFsdWVzLmxlbmd0aCA+IDApIGlzU3BhdGlhbFt2YWx1ZXNbdmFsdWVzLmxlbmd0aCAtIDFdXSA9IHRydWVcbiAgICByZXR1cm4gb2Yoe1xuICAgICAgaXNTcGF0aWFsLFxuICAgIH0pXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSBmaWx0ZXJzLmlzU3BhdGlhbFxuICAgIGlmICghZmlsdGVyKSByZXR1cm4gb2YoW10pXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGZpbHRlcilcbiAgICByZXR1cm4gb2Yoa2V5cy5sZW5ndGggPyBba2V5c1swXV0gOiBbXSlcbiAgfVxufVxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UucGRkbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2Uub2RibCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2Uub2RjLWJ5Jylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5jYy1ieS1zYScpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuY2MtYnknKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmNjLXplcm8nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmV0YWxhYi12MicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuZXRhbGFiJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS51bmtub3duJylcblxuLy8gTm90ZTogdmFsdWVzIGFyZSBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZG9jLmRhdGEuZ291di5mci9tb2lzc29ubmFnZS9saWNlbmNlcy9cbmV4cG9ydCBjbGFzcyBMaWNlbnNlU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpXG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ2xpY2Vuc2UnLCBpbmplY3RvciwgJ2FzYycpXG4gICAgdGhpcy5lc1NlcnZpY2UucmVnaXN0ZXJSdW50aW1lRmllbGQoXG4gICAgICAnbGljZW5zZScsXG4gICAgICBgU3RyaW5nIHJhdyA9ICcnO1xuaWYgKGRvYy5jb250YWluc0tleSgnbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnKSAmJiBkb2NbJ2xpY2Vuc2VPYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10ubGVuZ3RoID4gMClcbiAgcmF3ICs9IGRvY1snbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcbmlmIChkb2MuY29udGFpbnNLZXkoJ01EX0xlZ2FsQ29uc3RyYWludHNVc2VMaW1pdGF0aW9uT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpICYmIGRvY1snTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10ubGVuZ3RoID4gMClcbiAgcmF3ICs9IGRvY1snTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10uam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5cbmJvb2xlYW4gdW5rbm93biA9IHRydWU7XG5pZiAocmF3LmNvbnRhaW5zKCdwZGRsJykgfHwgcmF3LmNvbnRhaW5zKCdwdWJsaWMgZG9tYWluIGRlZGljYXRpb24gYW5kIGxpY2VuY2UnKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ3BkZGwnKTtcbn1cbmlmIChyYXcuY29udGFpbnMoJ29kYmwnKSB8fCByYXcuY29udGFpbnMoJ29wZW4gZGF0YWJhc2UgbGljZW5zZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnb2RibCcpO1xufVxuaWYgKHJhdy5jb250YWlucygnb2RjLWJ5JykgfHwgcmF3LmNvbnRhaW5zKCdvcGVuZGF0YWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5L3N1bW1hcnkvXCInKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ29kYy1ieScpO1xufVxuXG5pZiAocmF3LmNvbnRhaW5zKCdjYy1ieS1zYScpIHx8IHJhdy5jb250YWlucygnY3JlYXRpdmUgY29tbW9ucyBhdHRyaWJ1dGlvbiBzaGFyZS1hbGlrZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtYnktc2EnKTtcbn0gZWxzZSBpZiAocmF3LmNvbnRhaW5zKCdjYy1ieScpIHx8IHJhdy5jb250YWlucygnY2MgYnknKSB8fCByYXcuY29udGFpbnMoJ2NyZWF0aXZlIGNvbW1vbnMgYXR0cmlidXRpb24nKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2NjLWJ5Jyk7XG59IGVsc2UgaWYgKHJhdy5jb250YWlucygnY2MwJykgfHwgcmF3LmNvbnRhaW5zKCdjYy0wJykgfHwgcmF3LmNvbnRhaW5zKCdjY3plcm8nKSB8fCByYXcuY29udGFpbnMoJ2NjLXplcm8nKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2NjLXplcm8nKTtcbn1cblxuaWYgKHJhdy5jb250YWlucygnZXRhbGFiJykgJiYgKHJhdy5jb250YWlucygndjInKSB8fCByYXcuY29udGFpbnMoJzIuMCcpKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2V0YWxhYi12MicpO1xufSBlbHNlIGlmIChyYXcuY29udGFpbnMoJ29wZW4gbGljZW5jZScpIHx8IHJhdy5jb250YWlucygnbGljZW5jZSBvdXZlcnRlJykgfHwgcmF3LmNvbnRhaW5zKCdsaWNlbmNlX291dmVydGUnKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2V0YWxhYicpO1xufVxuXG5pZih1bmtub3duKSBlbWl0KCd1bmtub3duJyk7YFxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgbGljZW5zZToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBsaW1pdDogMTAsXG4gICAgICAgIGZpZWxkOiAnbGljZW5zZScsXG4gICAgICAgIHNvcnQ6IFsnZGVzYycsICdjb3VudCddLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChgc2VhcmNoLmZpbHRlcnMubGljZW5zZS4ke2J1Y2tldC50ZXJtfWApXG4gICAgKVxuICB9XG59XG5cbi8vIFRoaXMgd2lsbCB1c2UgdGhlIE9yZ2FuaXphdGlvbnNTZXJ2aWNlSW50ZXJmYWNlXG4vLyBGaWVsZCB2YWx1ZXMgYXJlIHRoZSBvcmdhbml6YXRpb24gbmFtZXNcbmV4cG9ydCBjbGFzcyBPcmdhbml6YXRpb25TZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcml2YXRlIG9yZ3NTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UpXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIHRoaXMub3Jnc1NlcnZpY2Uub3JnYW5pc2F0aW9ucyQucGlwZShcbiAgICAgIG1hcCgob3JncykgPT5cbiAgICAgICAgdmFsdWVzXG4gICAgICAgICAgLm1hcCgobmFtZSkgPT4gb3Jncy5maW5kKChvcmcpID0+IG9yZy5uYW1lID09PSBuYW1lKSlcbiAgICAgICAgICAuZmlsdGVyKChvcmcpID0+IG9yZyAhPT0gdW5kZWZpbmVkKVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoc2VsZWN0ZWRPcmdzKSA9PlxuICAgICAgICB0aGlzLm9yZ3NTZXJ2aWNlLmdldEZpbHRlcnNGb3JPcmdzKHNlbGVjdGVkT3JncylcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZVxuICAgICAgLmdldE9yZ3NGcm9tRmlsdGVycyhmaWx0ZXJzKVxuICAgICAgLnBpcGUobWFwKChvcmdzKSA9PiBvcmdzLm1hcCgob3JnKSA9PiBvcmcubmFtZSkpKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgLy8gc29ydCB2YWx1ZXMgYnkgYWxwaGFiZXRpY2FsIG9yZGVyXG4gICAgcmV0dXJuIHRoaXMub3Jnc1NlcnZpY2Uub3JnYW5pc2F0aW9ucyQucGlwZShcbiAgICAgIG1hcCgob3JnYW5pc2F0aW9ucykgPT5cbiAgICAgICAgb3JnYW5pc2F0aW9ucy5tYXAoKG9yZykgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7b3JnLm5hbWV9ICgke29yZy5yZWNvcmRDb3VudH0pYCxcbiAgICAgICAgICB2YWx1ZTogb3JnLm5hbWUsXG4gICAgICAgIH0pKVxuICAgICAgKSxcbiAgICAgIG1hcCgodmFsdWVzKSA9PlxuICAgICAgICB2YWx1ZXMuc29ydCgoYSwgYikgPT4gbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlKGEubGFiZWwsIGIubGFiZWwpKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGdldFR5cGUoKTogRmllbGRUeXBlIHtcbiAgICByZXR1cm4gJ3ZhbHVlcydcbiAgfVxufVxuZXhwb3J0IGNsYXNzIE93bmVyU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdvd25lcicsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIHJldHVybiBvZihbXSlcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVXNlclNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigndXNlcmluZm8ua2V5d29yZCcsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIHJldHVybiBzdXBlci5nZXRBdmFpbGFibGVWYWx1ZXMoKS5waXBlKFxuICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgIHZhbHVlcy5tYXAoKHYpID0+ICh7XG4gICAgICAgICAgLi4udixcbiAgICAgICAgICBsYWJlbDogZm9ybWF0VXNlckluZm8odi5sYWJlbCwgdHJ1ZSksXG4gICAgICAgIH0pKVxuICAgICAgKVxuICAgIClcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRGF0ZVJhbmdlU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge1xuICAgIHN1cGVyKGVzRmllbGROYW1lLCBpbmplY3Rvciwgb3JkZXIsIG9yZGVyVHlwZSlcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIC8vIFRPRE86IHJldHVybiBhbiBhcnJheSBvZiBkYXRlcyB0byBzaG93IHdoaWNoIG9uZSBhcmUgYXZhaWxhYmxlIGluIHRoZSBkYXRlIHBpY2tlclxuICAgIHJldHVybiBvZihbXSlcbiAgfVxuXG4gIGdldFR5cGUoKTogRmllbGRUeXBlIHtcbiAgICByZXR1cm4gJ2RhdGVSYW5nZSdcbiAgfVxufVxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLnZpZXcnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5hdmFpbGFibGVTZXJ2aWNlcy5kb3dubG9hZCcpXG5cbmV4cG9ydCBjbGFzcyBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdhdmFpbGFibGVTZXJ2aWNlcycsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGxpbmtQcm90b2NvbFZpZXdGaWx0ZXIgPSAnL09HQzpXTVQ/Uy4qLydcbiAgbGlua1Byb3RvY29sRG93bmxvYWRGaWx0ZXIgPSAnL09HQzpXRlMuKi8nXG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXQoXG4gICAgICAgIGBzZWFyY2guZmlsdGVycy5hdmFpbGFibGVTZXJ2aWNlcy4ke2J1Y2tldC50ZXJtfWBcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGF2YWlsYWJsZVNlcnZpY2VzOiB7XG4gICAgICAgIHR5cGU6ICdmaWx0ZXJzJyxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIHZpZXc6IGArbGlua1Byb3RvY29sOiR7dGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyfWAsXG4gICAgICAgICAgZG93bmxvYWQ6IGArbGlua1Byb3RvY29sOiR7dGhpcy5saW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlcn1gLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBmaWx0ZXJzOiBGaWVsZEZpbHRlciA9IHt9XG4gICAgaWYgKHZhbHVlcy5pbmNsdWRlcygndmlldycpKSBmaWx0ZXJzW3RoaXMubGlua1Byb3RvY29sVmlld0ZpbHRlcl0gPSB0cnVlXG4gICAgaWYgKHZhbHVlcy5pbmNsdWRlcygnZG93bmxvYWQnKSlcbiAgICAgIGZpbHRlcnNbdGhpcy5saW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlcl0gPSB0cnVlXG5cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgbGlua1Byb3RvY29sOiBmaWx0ZXJzLFxuICAgIH0pXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICBjb25zdCBsaW5rRmlsdGVyID0gZmlsdGVycy5saW5rUHJvdG9jb2xcbiAgICBpZiAoIWxpbmtGaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICBjb25zdCB2YWx1ZXMgPSBbXVxuICAgIGlmIChsaW5rRmlsdGVyW3RoaXMubGlua1Byb3RvY29sVmlld0ZpbHRlcl0pIHZhbHVlcy5wdXNoKCd2aWV3JylcbiAgICBpZiAobGlua0ZpbHRlclt0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyXSkgdmFsdWVzLnB1c2goJ2Rvd25sb2FkJylcbiAgICByZXR1cm4gb2YodmFsdWVzKVxuICB9XG59XG4iXX0=
368
+ /**
369
+ * This class is meant to be used with the legacy filter on `resourceType` (now deprecated, the use of `recordKind` field is recommended).
370
+ * Since creating filters on the same ES field is not possible, in order to make the resource type filter still working,
371
+ * we create an ES on the fly: `resourceTypeLegacy` that references the `resourceType` under the hood.
372
+ * @deprecated Use `recordKind` field instead.
373
+ */
374
+ export class ResourceTypeLegacyField extends TranslatedSearchField {
375
+ constructor(injector) {
376
+ super('resourceTypeLegacy', injector, 'asc');
377
+ // Ask ES to create a field on the fly: 'resourceTypeLegacy' that is in fact, 'resourceType'
378
+ this.esService.registerRuntimeField('resourceTypeLegacy', `for (resourceType in doc.resourceType) { emit(resourceType) }`);
379
+ }
380
+ }
381
+ export class RecordKindField extends SimpleSearchField {
382
+ constructor(injector) {
383
+ super('resourceType', injector, 'asc');
384
+ this.TYPE_MAPPING = {
385
+ dataset: ['dataset', 'series', 'featureCatalog'],
386
+ service: ['service'],
387
+ reuse: Object.entries(PossibleResourceTypes)
388
+ .filter(([_, v]) => v === 'reuse')
389
+ .map(([k]) => k), // = ['application', 'map', 'staticMap', 'interactiveMap', ...]
390
+ };
391
+ }
392
+ getAvailableValues() {
393
+ return this.repository.aggregate(this.getAggregations()).pipe(map((response) => response[this.esFieldName].buckets || []), map((buckets) => {
394
+ const counts = buckets.reduce((acc, { term, count }) => {
395
+ const value = term.toString();
396
+ const key = this.TYPE_MAPPING.reuse.includes(value)
397
+ ? 'reuse'
398
+ : this.TYPE_MAPPING.dataset.includes(value)
399
+ ? 'dataset'
400
+ : value;
401
+ acc[key] = (acc[key] || 0) + count;
402
+ return acc;
403
+ }, {});
404
+ return Object.keys(this.TYPE_MAPPING).map((type) => ({
405
+ label: type,
406
+ value: type,
407
+ count: counts[type] ?? 0,
408
+ }));
409
+ }));
410
+ }
411
+ getFiltersForValues(values) {
412
+ const filters = {
413
+ [this.esFieldName]: values.reduce((acc, value) => {
414
+ if (value === '')
415
+ return { ...acc, [value]: true };
416
+ const keysToAdd = this.TYPE_MAPPING[value] || [value];
417
+ keysToAdd.forEach((key) => (acc[key] = true));
418
+ return acc;
419
+ }, {}),
420
+ };
421
+ return of(filters);
422
+ }
423
+ getValuesForFilter(filters) {
424
+ const filter = filters[this.esFieldName];
425
+ if (!filter)
426
+ return of([]);
427
+ const activeValues = Object.keys(filter).filter((v) => filter[v]);
428
+ const activeTypes = Object.keys(this.TYPE_MAPPING).filter((type) => this.TYPE_MAPPING[type].every((t) => activeValues.includes(t)));
429
+ // Allow unknown values eg. 'type=somethingnotexist' (for UI to select none)
430
+ const allTypes = [].concat(...Object.values(this.TYPE_MAPPING));
431
+ const unknownValues = activeValues.filter((value) => !allTypes.includes(value));
432
+ return of([...activeTypes, ...unknownValues]);
433
+ }
434
+ }
435
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL3V0aWxzL3NlcnZpY2UvZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNoRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlGQUFpRixDQUFBO0FBQy9ILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRFQUE0RSxDQUFBO0FBU3JILE9BQU8sRUFFTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLDhDQUE4QyxDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUE7QUFXNUYsTUFBTSxPQUFnQixtQkFBbUI7Q0FTeEM7QUFFRCxNQUFNLE9BQU8saUJBQWlCO0lBTTVCLFlBQ1ksV0FBbUIsRUFDbkIsUUFBa0IsRUFDbEIsUUFBd0IsS0FBSyxFQUM3QixZQUE2QixLQUFLO1FBSGxDLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsY0FBUyxHQUFU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QUFDLENBQUMsR0FBRyxXQUFXLEVBQUUsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFBO0lBQy9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQgeyBPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL29yZ2FuaXphdGlvbnMuc2VydmljZS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHtcbiAgQWdncmVnYXRpb25CdWNrZXRzLFxuICBBZ2dyZWdhdGlvbnNQYXJhbXMsXG4gIEZpZWxkRmlsdGVyLFxuICBGaWVsZEZpbHRlckJ5RXhwcmVzc2lvbixcbiAgRmllbGRGaWx0ZXJzLFxuICBUZXJtQnVja2V0LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9zZWFyY2gnXG5pbXBvcnQge1xuICBEYXRlUmFuZ2UsXG4gIEVsYXN0aWNzZWFyY2hTZXJ2aWNlLFxuICBpc0RhdGVSYW5nZSxcbiAgTUVUQURBVEFfTEFOR1VBR0UsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3JlcG9zaXRvcnkvc3JjJ1xuaW1wb3J0IHsgTGFuZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMnXG5pbXBvcnQgeyBmb3JtYXRVc2VySW5mbyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgUG9zc2libGVSZXNvdXJjZVR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvbWV0YWRhdGEtY29udmVydGVyL3NyYydcblxuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3ZhbHVlcycgfCAnZGF0ZVJhbmdlJ1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlID0gc3RyaW5nIHwgbnVtYmVyXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQXZhaWxhYmxlVmFsdWUge1xuICB2YWx1ZTogRmllbGRWYWx1ZVxuICBsYWJlbDogc3RyaW5nXG4gIGNvdW50PzogbnVtYmVyXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgYWJzdHJhY3QgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdIHwgRGF0ZVJhbmdlW10+XG4gIGFic3RyYWN0IGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz5cbiAgYWJzdHJhY3QgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+XG4gIGFic3RyYWN0IGdldFR5cGUoKTogRmllbGRUeXBlXG59XG5cbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yeSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlKVxuXG4gIC8vIEZJWE1FOiB0aGlzIGlzIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIHJ1bnRpbWUgZmllbGRzOyBhYnN0cmFjdCB0aGlzIGFzIHdlbGxcbiAgcHJvdGVjdGVkIGVzU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEVsYXN0aWNzZWFyY2hTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge31cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBmaWVsZDogdGhpcy5lc0ZpZWxkTmFtZSxcbiAgICAgICAgbGltaXQ6IDEwMDAsXG4gICAgICAgIHNvcnQ6IFt0aGlzLm9yZGVyLCB0aGlzLm9yZGVyVHlwZV0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBidWNrZXQudGVybS50b1N0cmluZygpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yZXBvc2l0b3J5LmFnZ3JlZ2F0ZSh0aGlzLmdldEFnZ3JlZ2F0aW9ucygpKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAocmVzcG9uc2UpID0+XG4gICAgICAgICAgKHJlc3BvbnNlW3RoaXMuZXNGaWVsZE5hbWVdIGFzIEFnZ3JlZ2F0aW9uQnVja2V0cykuYnVja2V0cyB8fCBbXVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoYnVja2V0czogVGVybUJ1Y2tldFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGJ1Y2tldFByb21pc2VzID0gYnVja2V0cy5tYXAoYXN5bmMgKGJ1Y2tldCkgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7YXdhaXQgdGhpcy5nZXRCdWNrZXRMYWJlbChidWNrZXQpfSAoJHtidWNrZXQuY291bnR9KWAsXG4gICAgICAgICAgdmFsdWU6IGJ1Y2tldC50ZXJtLnRvU3RyaW5nKCksXG4gICAgICAgICAgY291bnQ6IGJ1Y2tldC5jb3VudCxcbiAgICAgICAgfSkpXG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChidWNrZXRQcm9taXNlcylcbiAgICAgIH0pXG4gICAgKVxuICB9XG4gIGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIC8vIEZpZWxkVmFsdWVbXVxuICAgIGlmICh0aGlzLmdldFR5cGUoKSA9PT0gJ3ZhbHVlcycpIHtcbiAgICAgIHJldHVybiBvZih7XG4gICAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogKHZhbHVlcyBhcyBGaWVsZFZhbHVlW10pLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbC50b1N0cmluZygpXG4gICAgICAgICAgaWYgKHZhbHVlICE9PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCBbdmFsdWVdOiB0cnVlIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICB9LCB7fSksXG4gICAgICB9KVxuICAgIH1cbiAgICAvLyBEYXRlUmFuZ2VcbiAgICByZXR1cm4gb2Yoe1xuICAgICAgW3RoaXMuZXNGaWVsZE5hbWVdOiB2YWx1ZXNbMF0gIT09ICcnID8gdmFsdWVzWzBdIDoge30sXG4gICAgfSlcbiAgfVxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoXG4gICAgZmlsdGVyczogRmllbGRGaWx0ZXJzXG4gICk6IE9ic2VydmFibGU8RmllbGRWYWx1ZVtdIHwgRmllbGRWYWx1ZSB8IERhdGVSYW5nZT4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlcnNbdGhpcy5lc0ZpZWxkTmFtZV1cbiAgICBpZiAoIWZpbHRlcikgcmV0dXJuIG9mKFtdKVxuICAgIC8vIGZpbHRlciBieSBleHByZXNzaW9uXG4gICAgaWYgKHR5cGVvZiBmaWx0ZXIgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gb2YoW2ZpbHRlcl0pXG4gICAgfVxuICAgIC8vIGZpbHRlciBieSBkYXRlIHJhbmdlXG4gICAgaWYgKGlzRGF0ZVJhbmdlKGZpbHRlcikpIHtcbiAgICAgIHJldHVybiBvZihmaWx0ZXIpXG4gICAgfVxuICAgIC8vIGZpbHRlciBieSB2YWx1ZXNcbiAgICBjb25zdCB2YWx1ZXMgPSBPYmplY3Qua2V5cyhmaWx0ZXIpLmZpbHRlcigodikgPT4gZmlsdGVyW3ZdKVxuICAgIHJldHVybiBvZih2YWx1ZXMpXG4gIH1cblxuICBnZXRUeXBlKCk6IEZpZWxkVHlwZSB7XG4gICAgcmV0dXJuICd2YWx1ZXMnXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJvdGVjdGVkIHBsYXRmb3JtU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFBsYXRmb3JtU2VydmljZUludGVyZmFjZSlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZXNGaWVsZE5hbWU6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByb3RlY3RlZCBvcmRlcjogJ2FzYycgfCAnZGVzYycgPSAnYXNjJyxcbiAgICBwcm90ZWN0ZWQgb3JkZXJUeXBlOiAna2V5JyB8ICdjb3VudCcgPSAna2V5J1xuICApIHtcbiAgICBzdXBlcihlc0ZpZWxkTmFtZSwgaW5qZWN0b3IsIG9yZGVyLCBvcmRlclR5cGUpXG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0VHJhbnNsYXRpb24oa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5wbGF0Zm9ybVNlcnZpY2UudHJhbnNsYXRlS2V5KGtleSkpXG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldFRyYW5zbGF0aW9uKGJ1Y2tldC50ZXJtKSkgfHwgYnVja2V0LnRlcm1cbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIGlmICh0aGlzLm9yZGVyVHlwZSA9PT0gJ2NvdW50JykgcmV0dXJuIHN1cGVyLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gICAgLy8gc29ydCB2YWx1ZXMgYnkgYWxwaGFiZXRpY2FsIG9yZGVyXG4gICAgcmV0dXJuIHN1cGVyXG4gICAgICAuZ2V0QXZhaWxhYmxlVmFsdWVzKClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHZhbHVlcykgPT5cbiAgICAgICAgICB2YWx1ZXMuc29ydCgoYSwgYikgPT4gbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlKGEubGFiZWwsIGIubGFiZWwpKVxuICAgICAgICApXG4gICAgICApXG4gIH1cbn1cblxuLyoqXG4gKiBUaGlzIHNlYXJjaCBmaWVsZCB3aWxsIGVpdGhlciB0YXJnZXQgdGhlIGAuZGVmYXVsdGAgZmllbGQsIG9yIGEgc3BlY2lmaWMgYC5sYW5neHl6YCBmaWVsZCBhY2NvcmRpbmdcbiAqIHRvIHRoZSBkZWZpbmVkIE1FVEFEQVRBX0xBTkdVQUdFIHRva2VuXG4gKiBUaGUgcHJvdmlkZWQgRVMgZmllbGQgbmFtZSBzaG91bGQgbm90IGluY2x1ZGUgYW55IHByZWZpeCBzdWNoIGFzIGAubGFuZ2VuZ2BcbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIGxhbmdTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoTGFuZ1NlcnZpY2UpXG4gIHByaXZhdGUgc2VhcmNoTGFuZ3VhZ2UgPSB0aGlzLmluamVjdG9yLmdldChNRVRBREFUQV9MQU5HVUFHRSwgbnVsbClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZXNGaWVsZE5hbWU6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByb3RlY3RlZCBvcmRlcjogJ2FzYycgfCAnZGVzYycgPSAnYXNjJyxcbiAgICBwcm90ZWN0ZWQgb3JkZXJUeXBlOiAna2V5JyB8ICdjb3VudCcgPSAna2V5J1xuICApIHtcbiAgICBzdXBlcihlc0ZpZWxkTmFtZSwgaW5qZWN0b3IsIG9yZGVyLCBvcmRlclR5cGUpXG4gICAgLy8gbm90ZTogd2UncmUgZXhjbHVkaW5nIHRoZSBtZXRhZGF0YSBsYW5ndWFnZSBcImN1cnJlbnRcIiB2YWx1ZSBiZWNhdXNlIHRoYXQgd291bGQgcHJvZHVjZVxuICAgIC8vIHBlcm1hbGlua3MgdGhhdCBtaWdodCBub3Qgd29yayBmb3IgZGlmZmVyZW50IHVzZXJzXG4gICAgaWYgKHRoaXMuc2VhcmNoTGFuZ3VhZ2UgJiYgdGhpcy5zZWFyY2hMYW5ndWFnZSAhPT0gJ2N1cnJlbnQnKSB7XG4gICAgICB0aGlzLmVzRmllbGROYW1lICs9IGAubGFuZyR7dGhpcy5zZWFyY2hMYW5ndWFnZX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZXNGaWVsZE5hbWUgKz0gJy5kZWZhdWx0J1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRnVsbFRleHRTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gb2YoW10pXG4gIH1cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIG9mKHtcbiAgICAgIGFueTogdmFsdWVzWzBdIGFzIHN0cmluZyxcbiAgICB9KVxuICB9XG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIHJldHVybiBvZihmaWx0ZXJzLmFueSA/IFtmaWx0ZXJzLmFueSBhcyBGaWVsZEZpbHRlckJ5RXhwcmVzc2lvbl0gOiBbXSlcbiAgfVxuICBnZXRUeXBlKCk6IEZpZWxkVHlwZSB7XG4gICAgcmV0dXJuICd2YWx1ZXMnXG4gIH1cbn1cblxubWFya2VyKCdzZWFyY2guZmlsdGVycy5pc1NwYXRpYWwueWVzJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLm5vJylcblxuZXhwb3J0IGNsYXNzIElzU3BhdGlhbFNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdpc1NwYXRpYWwnLCBpbmplY3RvciwgJ2FzYycpXG4gICAgdGhpcy5lc1NlcnZpY2UucmVnaXN0ZXJSdW50aW1lRmllbGQoXG4gICAgICAnaXNTcGF0aWFsJyxcbiAgICAgIGBTdHJpbmcgcmVzdWx0ID0gJ25vJztcblN0cmluZyBmb3JtYXRzID0gZG9jLmZvcm1hdC5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcbmlmIChmb3JtYXRzLmNvbnRhaW5zKCdnZW9qc29uJykgfHwgZm9ybWF0cy5jb250YWlucygnYXJjZ2lzJykgfHwgZm9ybWF0cy5jb250YWlucygnb2djJykgfHwgZm9ybWF0cy5jb250YWlucygnc2hwJykpIHJlc3VsdCA9ICd5ZXMnO1xuU3RyaW5nIHByb3RvY29scyA9IGRvYy5saW5rUHJvdG9jb2wuam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5pZiAocHJvdG9jb2xzLmNvbnRhaW5zKCdlc3JpJykgfHwgcHJvdG9jb2xzLmNvbnRhaW5zKCdvZ2MnKSkgcmVzdWx0ID0gJ3llcyc7XG5lbWl0KHJlc3VsdCk7YFxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNTcGF0aWFsOiB7XG4gICAgICAgIHR5cGU6ICd0ZXJtcycsXG4gICAgICAgIGxpbWl0OiAyLFxuICAgICAgICBmaWVsZDogJ2lzU3BhdGlhbCcsXG4gICAgICAgIHNvcnQ6IFsnYXNjJywgJ2tleSddLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChgc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLiR7YnVja2V0LnRlcm19YClcbiAgICApXG4gIH1cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBpc1NwYXRpYWwgPSB7fVxuICAgIGlmICh2YWx1ZXMubGVuZ3RoID4gMCkgaXNTcGF0aWFsW3ZhbHVlc1t2YWx1ZXMubGVuZ3RoIC0gMV1dID0gdHJ1ZVxuICAgIHJldHVybiBvZih7XG4gICAgICBpc1NwYXRpYWwsXG4gICAgfSlcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlcnMuaXNTcGF0aWFsXG4gICAgaWYgKCFmaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoZmlsdGVyKVxuICAgIHJldHVybiBvZihrZXlzLmxlbmd0aCA/IFtrZXlzWzBdXSA6IFtdKVxuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5wZGRsJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5vZGJsJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5vZGMtYnknKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmNjLWJ5LXNhJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5jYy1ieScpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuY2MtemVybycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuZXRhbGFiLXYyJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5ldGFsYWInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLnVua25vd24nKVxuXG4vLyBOb3RlOiB2YWx1ZXMgYXJlIGluc3BpcmVkIGZyb20gaHR0cHM6Ly9kb2MuZGF0YS5nb3V2LmZyL21vaXNzb25uYWdlL2xpY2VuY2VzL1xuZXhwb3J0IGNsYXNzIExpY2Vuc2VTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSlcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcignbGljZW5zZScsIGluamVjdG9yLCAnYXNjJylcbiAgICB0aGlzLmVzU2VydmljZS5yZWdpc3RlclJ1bnRpbWVGaWVsZChcbiAgICAgICdsaWNlbnNlJyxcbiAgICAgIGBTdHJpbmcgcmF3ID0gJyc7XG5pZiAoZG9jLmNvbnRhaW5zS2V5KCdsaWNlbnNlT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpICYmIGRvY1snbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5sZW5ndGggPiAwKVxuICByYXcgKz0gZG9jWydsaWNlbnNlT2JqZWN0LmRlZmF1bHQua2V5d29yZCddLmpvaW4oJ3wnKS50b0xvd2VyQ2FzZSgpO1xuaWYgKGRvYy5jb250YWluc0tleSgnTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJykgJiYgZG9jWydNRF9MZWdhbENvbnN0cmFpbnRzVXNlTGltaXRhdGlvbk9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5sZW5ndGggPiAwKVxuICByYXcgKz0gZG9jWydNRF9MZWdhbENvbnN0cmFpbnRzVXNlTGltaXRhdGlvbk9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcblxuYm9vbGVhbiB1bmtub3duID0gdHJ1ZTtcbmlmIChyYXcuY29udGFpbnMoJ3BkZGwnKSB8fCByYXcuY29udGFpbnMoJ3B1YmxpYyBkb21haW4gZGVkaWNhdGlvbiBhbmQgbGljZW5jZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgncGRkbCcpO1xufVxuaWYgKHJhdy5jb250YWlucygnb2RibCcpIHx8IHJhdy5jb250YWlucygnb3BlbiBkYXRhYmFzZSBsaWNlbnNlJykpIHtcbiAgdW5rbm93biA9IGZhbHNlO1xuICBlbWl0KCdvZGJsJyk7XG59XG5pZiAocmF3LmNvbnRhaW5zKCdvZGMtYnknKSB8fCByYXcuY29udGFpbnMoJ29wZW5kYXRhY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvc3VtbWFyeS9cIicpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnb2RjLWJ5Jyk7XG59XG5cbmlmIChyYXcuY29udGFpbnMoJ2NjLWJ5LXNhJykgfHwgcmF3LmNvbnRhaW5zKCdjcmVhdGl2ZSBjb21tb25zIGF0dHJpYnV0aW9uIHNoYXJlLWFsaWtlJykpIHtcbiAgdW5rbm93biA9IGZhbHNlO1xuICBlbWl0KCdjYy1ieS1zYScpO1xufSBlbHNlIGlmIChyYXcuY29udGFpbnMoJ2NjLWJ5JykgfHwgcmF3LmNvbnRhaW5zKCdjYyBieScpIHx8IHJhdy5jb250YWlucygnY3JlYXRpdmUgY29tbW9ucyBhdHRyaWJ1dGlvbicpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtYnknKTtcbn0gZWxzZSBpZiAocmF3LmNvbnRhaW5zKCdjYzAnKSB8fCByYXcuY29udGFpbnMoJ2NjLTAnKSB8fCByYXcuY29udGFpbnMoJ2NjemVybycpIHx8IHJhdy5jb250YWlucygnY2MtemVybycpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtemVybycpO1xufVxuXG5pZiAocmF3LmNvbnRhaW5zKCdldGFsYWInKSAmJiAocmF3LmNvbnRhaW5zKCd2MicpIHx8IHJhdy5jb250YWlucygnMi4wJykpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnZXRhbGFiLXYyJyk7XG59IGVsc2UgaWYgKHJhdy5jb250YWlucygnb3BlbiBsaWNlbmNlJykgfHwgcmF3LmNvbnRhaW5zKCdsaWNlbmNlIG91dmVydGUnKSB8fCByYXcuY29udGFpbnMoJ2xpY2VuY2Vfb3V2ZXJ0ZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnZXRhbGFiJyk7XG59XG5cbmlmKHVua25vd24pIGVtaXQoJ3Vua25vd24nKTtgXG4gICAgKVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldEFnZ3JlZ2F0aW9ucygpOiBBZ2dyZWdhdGlvbnNQYXJhbXMge1xuICAgIHJldHVybiB7XG4gICAgICBsaWNlbnNlOiB7XG4gICAgICAgIHR5cGU6ICd0ZXJtcycsXG4gICAgICAgIGxpbWl0OiAxMCxcbiAgICAgICAgZmllbGQ6ICdsaWNlbnNlJyxcbiAgICAgICAgc29ydDogWydkZXNjJywgJ2NvdW50J10sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpIHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0KGBzZWFyY2guZmlsdGVycy5saWNlbnNlLiR7YnVja2V0LnRlcm19YClcbiAgICApXG4gIH1cbn1cblxuLy8gVGhpcyB3aWxsIHVzZSB0aGUgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2Vcbi8vIEZpZWxkIHZhbHVlcyBhcmUgdGhlIG9yZ2FuaXphdGlvbiBuYW1lc1xuZXhwb3J0IGNsYXNzIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkIGltcGxlbWVudHMgQWJzdHJhY3RTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgb3Jnc1NlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSlcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZS5vcmdhbmlzYXRpb25zJC5waXBlKFxuICAgICAgbWFwKChvcmdzKSA9PlxuICAgICAgICB2YWx1ZXNcbiAgICAgICAgICAubWFwKChuYW1lKSA9PiBvcmdzLmZpbmQoKG9yZykgPT4gb3JnLm5hbWUgPT09IG5hbWUpKVxuICAgICAgICAgIC5maWx0ZXIoKG9yZykgPT4gb3JnICE9PSB1bmRlZmluZWQpXG4gICAgICApLFxuICAgICAgc3dpdGNoTWFwKChzZWxlY3RlZE9yZ3MpID0+XG4gICAgICAgIHRoaXMub3Jnc1NlcnZpY2UuZ2V0RmlsdGVyc0Zvck9yZ3Moc2VsZWN0ZWRPcmdzKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIHJldHVybiB0aGlzLm9yZ3NTZXJ2aWNlXG4gICAgICAuZ2V0T3Jnc0Zyb21GaWx0ZXJzKGZpbHRlcnMpXG4gICAgICAucGlwZShtYXAoKG9yZ3MpID0+IG9yZ3MubWFwKChvcmcpID0+IG9yZy5uYW1lKSkpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICAvLyBzb3J0IHZhbHVlcyBieSBhbHBoYWJldGljYWwgb3JkZXJcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZS5vcmdhbmlzYXRpb25zJC5waXBlKFxuICAgICAgbWFwKChvcmdhbmlzYXRpb25zKSA9PlxuICAgICAgICBvcmdhbmlzYXRpb25zLm1hcCgob3JnKSA9PiAoe1xuICAgICAgICAgIGxhYmVsOiBgJHtvcmcubmFtZX0gKCR7b3JnLnJlY29yZENvdW50fSlgLFxuICAgICAgICAgIHZhbHVlOiBvcmcubmFtZSxcbiAgICAgICAgfSkpXG4gICAgICApLFxuICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgIHZhbHVlcy5zb3J0KChhLCBiKSA9PiBuZXcgSW50bC5Db2xsYXRvcigpLmNvbXBhcmUoYS5sYWJlbCwgYi5sYWJlbCkpXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5leHBvcnQgY2xhc3MgT3duZXJTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ293bmVyJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVc2VyU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCd1c2VyaW5mby5rZXl3b3JkJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIHN1cGVyLmdldEF2YWlsYWJsZVZhbHVlcygpLnBpcGUoXG4gICAgICBtYXAoKHZhbHVlcykgPT5cbiAgICAgICAgdmFsdWVzLm1hcCgodikgPT4gKHtcbiAgICAgICAgICAuLi52LFxuICAgICAgICAgIGxhYmVsOiBmb3JtYXRVc2VySW5mbyh2LmxhYmVsLCB0cnVlKSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgLy8gVE9ETzogcmV0dXJuIGFuIGFycmF5IG9mIGRhdGVzIHRvIHNob3cgd2hpY2ggb25lIGFyZSBhdmFpbGFibGUgaW4gdGhlIGRhdGUgcGlja2VyXG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAnZGF0ZVJhbmdlJ1xuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuYXZhaWxhYmxlU2VydmljZXMudmlldycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLmRvd25sb2FkJylcblxuZXhwb3J0IGNsYXNzIEF2YWlsYWJsZVNlcnZpY2VzRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpXG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ2F2YWlsYWJsZVNlcnZpY2VzJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgbGlua1Byb3RvY29sVmlld0ZpbHRlciA9ICcvT0dDOldNVD9TLiovJ1xuICBsaW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlciA9ICcvT0dDOldGUy4qLydcblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChcbiAgICAgICAgYHNlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLiR7YnVja2V0LnRlcm19YFxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXZhaWxhYmxlU2VydmljZXM6IHtcbiAgICAgICAgdHlwZTogJ2ZpbHRlcnMnLFxuICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgdmlldzogYCtsaW5rUHJvdG9jb2w6JHt0aGlzLmxpbmtQcm90b2NvbFZpZXdGaWx0ZXJ9YCxcbiAgICAgICAgICBkb3dubG9hZDogYCtsaW5rUHJvdG9jb2w6JHt0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyfWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIGdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzOiBGaWVsZFZhbHVlW10pOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIGNvbnN0IGZpbHRlcnM6IEZpZWxkRmlsdGVyID0ge31cbiAgICBpZiAodmFsdWVzLmluY2x1ZGVzKCd2aWV3JykpIGZpbHRlcnNbdGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyXSA9IHRydWVcbiAgICBpZiAodmFsdWVzLmluY2x1ZGVzKCdkb3dubG9hZCcpKVxuICAgICAgZmlsdGVyc1t0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyXSA9IHRydWVcblxuICAgIHJldHVybiBvZih7XG4gICAgICBsaW5rUHJvdG9jb2w6IGZpbHRlcnMsXG4gICAgfSlcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIGNvbnN0IGxpbmtGaWx0ZXIgPSBmaWx0ZXJzLmxpbmtQcm90b2NvbFxuICAgIGlmICghbGlua0ZpbHRlcikgcmV0dXJuIG9mKFtdKVxuICAgIGNvbnN0IHZhbHVlcyA9IFtdXG4gICAgaWYgKGxpbmtGaWx0ZXJbdGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyXSkgdmFsdWVzLnB1c2goJ3ZpZXcnKVxuICAgIGlmIChsaW5rRmlsdGVyW3RoaXMubGlua1Byb3RvY29sRG93bmxvYWRGaWx0ZXJdKSB2YWx1ZXMucHVzaCgnZG93bmxvYWQnKVxuICAgIHJldHVybiBvZih2YWx1ZXMpXG4gIH1cbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIG1lYW50IHRvIGJlIHVzZWQgd2l0aCB0aGUgbGVnYWN5IGZpbHRlciBvbiBgcmVzb3VyY2VUeXBlYCAobm93IGRlcHJlY2F0ZWQsIHRoZSB1c2Ugb2YgYHJlY29yZEtpbmRgIGZpZWxkIGlzIHJlY29tbWVuZGVkKS5cbiAqIFNpbmNlIGNyZWF0aW5nIGZpbHRlcnMgb24gdGhlIHNhbWUgRVMgZmllbGQgaXMgbm90IHBvc3NpYmxlLCBpbiBvcmRlciB0byBtYWtlIHRoZSByZXNvdXJjZSB0eXBlIGZpbHRlciBzdGlsbCB3b3JraW5nLFxuICogd2UgY3JlYXRlIGFuIEVTIG9uIHRoZSBmbHk6IGByZXNvdXJjZVR5cGVMZWdhY3lgIHRoYXQgcmVmZXJlbmNlcyB0aGUgYHJlc291cmNlVHlwZWAgdW5kZXIgdGhlIGhvb2QuXG4gKiBAZGVwcmVjYXRlZCBVc2UgYHJlY29yZEtpbmRgIGZpZWxkIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCBleHRlbmRzIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdyZXNvdXJjZVR5cGVMZWdhY3knLCBpbmplY3RvciwgJ2FzYycpXG5cbiAgICAvLyBBc2sgRVMgdG8gY3JlYXRlIGEgZmllbGQgb24gdGhlIGZseTogJ3Jlc291cmNlVHlwZUxlZ2FjeScgdGhhdCBpcyBpbiBmYWN0LCAncmVzb3VyY2VUeXBlJ1xuICAgIHRoaXMuZXNTZXJ2aWNlLnJlZ2lzdGVyUnVudGltZUZpZWxkKFxuICAgICAgJ3Jlc291cmNlVHlwZUxlZ2FjeScsXG4gICAgICBgZm9yIChyZXNvdXJjZVR5cGUgaW4gZG9jLnJlc291cmNlVHlwZSkgeyBlbWl0KHJlc291cmNlVHlwZSkgfWBcbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlY29yZEtpbmRGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgVFlQRV9NQVBQSU5HID0ge1xuICAgIGRhdGFzZXQ6IFsnZGF0YXNldCcsICdzZXJpZXMnLCAnZmVhdHVyZUNhdGFsb2cnXSxcbiAgICBzZXJ2aWNlOiBbJ3NlcnZpY2UnXSxcbiAgICByZXVzZTogT2JqZWN0LmVudHJpZXMoUG9zc2libGVSZXNvdXJjZVR5cGVzKVxuICAgICAgLmZpbHRlcigoW18sIHZdKSA9PiB2ID09PSAncmV1c2UnKVxuICAgICAgLm1hcCgoW2tdKSA9PiBrKSwgLy8gPSBbJ2FwcGxpY2F0aW9uJywgJ21hcCcsICdzdGF0aWNNYXAnLCAnaW50ZXJhY3RpdmVNYXAnLCAuLi5dXG4gIH1cblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigncmVzb3VyY2VUeXBlJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucmVwb3NpdG9yeS5hZ2dyZWdhdGUodGhpcy5nZXRBZ2dyZWdhdGlvbnMoKSkucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKHJlc3BvbnNlKSA9PlxuICAgICAgICAgIChyZXNwb25zZVt0aGlzLmVzRmllbGROYW1lXSBhcyBBZ2dyZWdhdGlvbkJ1Y2tldHMpLmJ1Y2tldHMgfHwgW11cbiAgICAgICksXG4gICAgICBtYXAoKGJ1Y2tldHM6IFRlcm1CdWNrZXRbXSkgPT4ge1xuICAgICAgICBjb25zdCBjb3VudHMgPSBidWNrZXRzLnJlZHVjZShcbiAgICAgICAgICAoYWNjLCB7IHRlcm0sIGNvdW50IH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGVybS50b1N0cmluZygpXG4gICAgICAgICAgICBjb25zdCBrZXkgPSB0aGlzLlRZUEVfTUFQUElORy5yZXVzZS5pbmNsdWRlcyh2YWx1ZSlcbiAgICAgICAgICAgICAgPyAncmV1c2UnXG4gICAgICAgICAgICAgIDogdGhpcy5UWVBFX01BUFBJTkcuZGF0YXNldC5pbmNsdWRlcyh2YWx1ZSlcbiAgICAgICAgICAgICAgICA/ICdkYXRhc2V0J1xuICAgICAgICAgICAgICAgIDogdmFsdWVcblxuICAgICAgICAgICAgYWNjW2tleV0gPSAoYWNjW2tleV0gfHwgMCkgKyBjb3VudFxuICAgICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICAgIH0sXG4gICAgICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPlxuICAgICAgICApXG5cbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuVFlQRV9NQVBQSU5HKS5tYXAoKHR5cGUpID0+ICh7XG4gICAgICAgICAgbGFiZWw6IHR5cGUsXG4gICAgICAgICAgdmFsdWU6IHR5cGUsXG4gICAgICAgICAgY291bnQ6IGNvdW50c1t0eXBlXSA/PyAwLFxuICAgICAgICB9KSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgZmlsdGVycyA9IHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogdmFsdWVzLnJlZHVjZSgoYWNjLCB2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09ICcnKSByZXR1cm4geyAuLi5hY2MsIFt2YWx1ZV06IHRydWUgfVxuXG4gICAgICAgIGNvbnN0IGtleXNUb0FkZCA9IHRoaXMuVFlQRV9NQVBQSU5HW3ZhbHVlXSB8fCBbdmFsdWVdXG4gICAgICAgIGtleXNUb0FkZC5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4gKGFjY1trZXldID0gdHJ1ZSkpXG5cbiAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgfSwge30pLFxuICAgIH1cblxuICAgIHJldHVybiBvZihmaWx0ZXJzKVxuICB9XG5cbiAgZ2V0VmFsdWVzRm9yRmlsdGVyKGZpbHRlcnM6IEZpZWxkRmlsdGVycyk6IE9ic2VydmFibGU8RmllbGRWYWx1ZVtdPiB7XG4gICAgY29uc3QgZmlsdGVyID0gZmlsdGVyc1t0aGlzLmVzRmllbGROYW1lXVxuICAgIGlmICghZmlsdGVyKSByZXR1cm4gb2YoW10pXG5cbiAgICBjb25zdCBhY3RpdmVWYWx1ZXMgPSBPYmplY3Qua2V5cyhmaWx0ZXIpLmZpbHRlcigodikgPT4gZmlsdGVyW3ZdKVxuICAgIGNvbnN0IGFjdGl2ZVR5cGVzID0gT2JqZWN0LmtleXModGhpcy5UWVBFX01BUFBJTkcpLmZpbHRlcigodHlwZSkgPT5cbiAgICAgIHRoaXMuVFlQRV9NQVBQSU5HW3R5cGVdLmV2ZXJ5KCh0OiBzdHJpbmcpID0+IGFjdGl2ZVZhbHVlcy5pbmNsdWRlcyh0KSlcbiAgICApXG5cbiAgICAvLyBBbGxvdyB1bmtub3duIHZhbHVlcyBlZy4gJ3R5cGU9c29tZXRoaW5nbm90ZXhpc3QnIChmb3IgVUkgdG8gc2VsZWN0IG5vbmUpXG4gICAgY29uc3QgYWxsVHlwZXMgPSBbXS5jb25jYXQoLi4uT2JqZWN0LnZhbHVlcyh0aGlzLlRZUEVfTUFQUElORykpXG4gICAgY29uc3QgdW5rbm93blZhbHVlcyA9IGFjdGl2ZVZhbHVlcy5maWx0ZXIoXG4gICAgICAodmFsdWUpID0+ICFhbGxUeXBlcy5pbmNsdWRlcyh2YWx1ZSlcbiAgICApXG5cbiAgICByZXR1cm4gb2YoWy4uLmFjdGl2ZVR5cGVzLCAuLi51bmtub3duVmFsdWVzXSlcbiAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { Injectable, Injector } from '@angular/core';
2
- import { AvailableServicesField, DateRangeSearchField, FullTextSearchField, IsSpatialSearchField, LicenseSearchField, MultilingualSearchField, OrganizationSearchField, OwnerSearchField, SimpleSearchField, TranslatedSearchField, UserSearchField, } from './fields';
2
+ import { AvailableServicesField, DateRangeSearchField, FullTextSearchField, IsSpatialSearchField, LicenseSearchField, MultilingualSearchField, OrganizationSearchField, OwnerSearchField, ResourceTypeLegacyField, SimpleSearchField, TranslatedSearchField, RecordKindField, UserSearchField, } from './fields';
3
3
  import { forkJoin, of } from 'rxjs';
4
4
  import { map } from 'rxjs/operators';
5
5
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
@@ -29,7 +29,8 @@ export class FieldsService {
29
29
  this.fields = {
30
30
  organization: new OrganizationSearchField(this.injector),
31
31
  format: new SimpleSearchField('format', this.injector, 'asc'),
32
- resourceType: new TranslatedSearchField('resourceType', this.injector, 'asc'),
32
+ resourceType: new ResourceTypeLegacyField(this.injector), // Deprecated, use `recordKind` instead
33
+ recordKind: new RecordKindField(this.injector),
33
34
  representationType: new TranslatedSearchField('cl_spatialRepresentationType.key', this.injector, 'asc'),
34
35
  publicationYear: new SimpleSearchField('publicationYearForResource', this.injector, 'desc'),
35
36
  topic: new TranslatedSearchField('cl_topic.key', this.injector, 'asc'),
@@ -86,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
86
87
  providedIn: 'root',
87
88
  }]
88
89
  }], ctorParameters: () => [{ type: i0.Injector }] });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYy9saWIvdXRpbHMvc2VydmljZS9maWVsZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNwRCxPQUFPLEVBRUwsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUVwQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQ3ZCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIscUJBQXFCLEVBQ3JCLGVBQWUsR0FDaEIsTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDL0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXBDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7QUFNaEUsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFDL0IsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUE7QUFDdkMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7QUFDaEMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFDbEMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7QUFDaEMsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7QUFDeEMsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUE7QUFDM0MsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7QUFDakMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENB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QU8sRUFBRSxFQUFFLENBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQzNELENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxPQUFxQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FDM0MsQ0FDRixDQUFBO1FBQ0QsT0FBTyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNsQixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDL0QsQ0FDRixDQUFBO0lBQ0gsQ0FBQzsrR0FoSFUsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBBYnN0cmFjdFNlYXJjaEZpZWxkLFxuICBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkLFxuICBEYXRlUmFuZ2VTZWFyY2hGaWVsZCxcbiAgRmllbGRWYWx1ZSxcbiAgRnVsbFRleHRTZWFyY2hGaWVsZCxcbiAgSXNTcGF0aWFsU2VhcmNoRmllbGQsXG4gIExpY2Vuc2VTZWFyY2hGaWVsZCxcbiAgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQsXG4gIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkLFxuICBPd25lclNlYXJjaEZpZWxkLFxuICBTaW1wbGVTZWFyY2hGaWVsZCxcbiAgVHJhbnNsYXRlZFNlYXJjaEZpZWxkLFxuICBVc2VyU2VhcmNoRmllbGQsXG59IGZyb20gJy4vZmllbGRzJ1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRmllbGRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgRGF0ZVJhbmdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvcmVwb3NpdG9yeS9zcmMnXG5cbi8vIGtleSBpcyB0aGUgZmllbGQgbmFtZVxuZXhwb3J0IHR5cGUgRmllbGRWYWx1ZXMgPSBSZWNvcmQ8c3RyaW5nLCBGaWVsZFZhbHVlW10gfCBGaWVsZFZhbHVlIHwgRGF0ZVJhbmdlPlxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmZvcm1hdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmluc3BpcmVLZXl3b3JkJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMua2V5d29yZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5wdWJsaWNhdGlvblllYXInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5vcmdhbml6YXRpb24nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXByZXNlbnRhdGlvblR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXNvdXJjZVR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5zdGFuZGFyZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnRvcGljJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuY29udGFjdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnByb2R1Y2VyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucHVibGlzaGVyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMudXNlcicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmNoYW5nZURhdGUnKVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzU2VydmljZSB7XG4gIHByb3RlY3RlZCBmaWVsZHMgPSB7XG4gICAgb3JnYW5pemF0aW9uOiBuZXcgT3JnYW5pemF0aW9uU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgZm9ybWF0OiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoJ2Zvcm1hdCcsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICByZXNvdXJjZVR5cGU6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoXG4gICAgICAncmVzb3VyY2VUeXBlJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgcmVwcmVzZW50YXRpb25UeXBlOiBuZXcgVHJhbnNsYXRlZFNlYXJjaEZpZWxkKFxuICAgICAgJ2NsX3NwYXRpYWxSZXByZXNlbnRhdGlvblR5cGUua2V5JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgcHVibGljYXRpb25ZZWFyOiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoXG4gICAgICAncHVibGljYXRpb25ZZWFyRm9yUmVzb3VyY2UnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdkZXNjJ1xuICAgICksXG4gICAgdG9waWM6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoJ2NsX3RvcGljLmtleScsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICBpbnNwaXJlS2V5d29yZDogbmV3IFRyYW5zbGF0ZWRTZWFyY2hGaWVsZChcbiAgICAgICd0aF9odHRwaW5zcGlyZWVjZXVyb3BhZXV0aGVtZS10aGVtZS5saW5rJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAga2V5d29yZDogbmV3IE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkKCd0YWcnLCB0aGlzLmluamVjdG9yLCAnZGVzYycsICdjb3VudCcpLFxuICAgIGRvY3VtZW50U3RhbmRhcmQ6IG5ldyBTaW1wbGVTZWFyY2hGaWVsZChcbiAgICAgICdkb2N1bWVudFN0YW5kYXJkJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgaXNTcGF0aWFsOiBuZXcgSXNTcGF0aWFsU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgcTogbmV3IEZ1bGxUZXh0U2VhcmNoRmllbGQoKSxcbiAgICBsaWNlbnNlOiBuZXcgTGljZW5zZVNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIG93bmVyOiBuZXcgT3duZXJTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBwcm9kdWNlck9yZzogbmV3IE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkKFxuICAgICAgJ29yaWdpbmF0b3JPcmdGb3JSZXNvdXJjZU9iamVjdCcsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2FzYycsXG4gICAgICAna2V5J1xuICAgICksXG4gICAgcHVibGlzaGVyT3JnOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoXG4gICAgICAnZGlzdHJpYnV0b3JPcmdGb3JSZXNvdXJjZU9iamVjdCcsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2FzYycsXG4gICAgICAna2V5J1xuICAgICksXG4gICAgdXNlcjogbmV3IFVzZXJTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBjaGFuZ2VEYXRlOiBuZXcgRGF0ZVJhbmdlU2VhcmNoRmllbGQoJ2NoYW5nZURhdGUnLCB0aGlzLmluamVjdG9yLCAnZGVzYycpLFxuICAgIGF2YWlsYWJsZVNlcnZpY2VzOiBuZXcgQXZhaWxhYmxlU2VydmljZXNGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgfSBhcyBSZWNvcmQ8c3RyaW5nLCBBYnN0cmFjdFNlYXJjaEZpZWxkPlxuXG4gIGdldCBzdXBwb3J0ZWRGaWVsZHMoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuZmllbGRzKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zdXBwb3J0ZWRGaWVsZHMuaW5kZXhPZihmaWVsZE5hbWUpID09PSAtMSlcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgc2VhcmNoIGZpZWxkOiAke2ZpZWxkTmFtZX1gKVxuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gIH1cblxuICBwcml2YXRlIGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHNbZmllbGROYW1lXS5nZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlcylcbiAgfVxuICBwcml2YXRlIGdldFZhbHVlc0ZvckZpbHRlcnMoZmllbGROYW1lOiBzdHJpbmcsIGZpbHRlcnM6IEZpZWxkRmlsdGVycykge1xuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzKVxuICB9XG5cbiAgZ2V0RmllbGRUeXBlKGZpZWxkTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0VHlwZSgpXG4gIH1cblxuICBidWlsZEZpbHRlcnNGcm9tRmllbGRWYWx1ZXMoXG4gICAgZmllbGRWYWx1ZXM6IEZpZWxkVmFsdWVzXG4gICk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgZmllbGROYW1lcyA9IE9iamVjdC5rZXlzKGZpZWxkVmFsdWVzKS5maWx0ZXIoKGZpZWxkTmFtZSkgPT5cbiAgICAgIHRoaXMuc3VwcG9ydGVkRmllbGRzLmluY2x1ZGVzKGZpZWxkTmFtZSlcbiAgICApXG4gICAgaWYgKCFmaWVsZE5hbWVzLmxlbmd0aCkgcmV0dXJuIG9mKHt9KVxuICAgIGNvbnN0IGZpbHRlcnNCeUZpZWxkJCA9IGZpZWxkTmFtZXMubWFwKChmaWVsZE5hbWUpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkoZmllbGRWYWx1ZXNbZmllbGROYW1lXSlcbiAgICAgICAgPyBmaWVsZFZhbHVlc1tmaWVsZE5hbWVdXG4gICAgICAgIDogW2ZpZWxkVmFsdWVzW2ZpZWxkTmFtZV1dXG4gICAgICByZXR1cm4gdGhpcy5nZXRGaWx0ZXJzRm9yVmFsdWVzKFxuICAgICAgICBmaWVsZE5hbWUsXG4gICAgICAgIHZhbHVlcyBhcyBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICAgICAgKVxuICAgIH0pXG4gICAgcmV0dXJuIGZvcmtKb2luKGZpbHRlcnNCeUZpZWxkJCkucGlwZShcbiAgICAgIG1hcCgoZmlsdGVycykgPT5cbiAgICAgICAgZmlsdGVycy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+ICh7IC4uLnByZXYsIC4uLmN1cnIgfSksIHt9KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHJlYWRGaWVsZFZhbHVlc0Zyb21GaWx0ZXJzKGZpbHRlcnM6IEZpZWxkRmlsdGVycyk6IE9ic2VydmFibGU8RmllbGRWYWx1ZXM+IHtcbiAgICBjb25zdCBmaWVsZFZhbHVlcyQgPSB0aGlzLnN1cHBvcnRlZEZpZWxkcy5tYXAoKGZpZWxkTmFtZSkgPT5cbiAgICAgIHRoaXMuZ2V0VmFsdWVzRm9yRmlsdGVycyhmaWVsZE5hbWUsIGZpbHRlcnMpLnBpcGUoXG4gICAgICAgIG1hcCgodmFsdWVzKSA9PiAoeyBbZmllbGROYW1lXTogdmFsdWVzIH0pKVxuICAgICAgKVxuICAgIClcbiAgICByZXR1cm4gZm9ya0pvaW4oZmllbGRWYWx1ZXMkKS5waXBlKFxuICAgICAgbWFwKChmaWVsZFZhbHVlcykgPT5cbiAgICAgICAgZmllbGRWYWx1ZXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiAoeyAuLi5wcmV2LCAuLi5jdXJyIH0pLCB7fSlcbiAgICAgIClcbiAgICApXG4gIH1cbn1cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYy9saWIvdXRpbHMvc2VydmljZS9maWVsZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNwRCxPQUFPLEVBRUwsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUVwQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQ3ZCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixlQUFlLEVBQ2YsZUFBZSxHQUNoQixNQUFNLFVBQVUsQ0FBQTtBQUNqQixPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBOztBQU1oRSxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQTtBQUMvQixNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQTtBQUN2QyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtBQUNoQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtBQUNsQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtBQUNoQyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtBQUN4QyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNyQyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtBQUMzQyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNyQyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQTtBQUNqQyxN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QUE7UUFDRixPQUFPLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQ25DLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQzNELENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxPQUFxQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FDM0MsQ0FDRixDQUFBO1FBQ0QsT0FBTyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNsQixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDL0QsQ0FDRixDQUFBO0lBQ0gsQ0FBQzsrR0E3R1UsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBBYnN0cmFjdFNlYXJjaEZpZWxkLFxuICBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkLFxuICBEYXRlUmFuZ2VTZWFyY2hGaWVsZCxcbiAgRmllbGRWYWx1ZSxcbiAgRnVsbFRleHRTZWFyY2hGaWVsZCxcbiAgSXNTcGF0aWFsU2VhcmNoRmllbGQsXG4gIExpY2Vuc2VTZWFyY2hGaWVsZCxcbiAgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQsXG4gIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkLFxuICBPd25lclNlYXJjaEZpZWxkLFxuICBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCxcbiAgU2ltcGxlU2VhcmNoRmllbGQsXG4gIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCxcbiAgUmVjb3JkS2luZEZpZWxkLFxuICBVc2VyU2VhcmNoRmllbGQsXG59IGZyb20gJy4vZmllbGRzJ1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRmllbGRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgRGF0ZVJhbmdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvcmVwb3NpdG9yeS9zcmMnXG5cbi8vIGtleSBpcyB0aGUgZmllbGQgbmFtZVxuZXhwb3J0IHR5cGUgRmllbGRWYWx1ZXMgPSBSZWNvcmQ8c3RyaW5nLCBGaWVsZFZhbHVlW10gfCBGaWVsZFZhbHVlIHwgRGF0ZVJhbmdlPlxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmZvcm1hdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmluc3BpcmVLZXl3b3JkJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMua2V5d29yZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5wdWJsaWNhdGlvblllYXInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5vcmdhbml6YXRpb24nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXByZXNlbnRhdGlvblR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXNvdXJjZVR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5zdGFuZGFyZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnRvcGljJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuY29udGFjdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnByb2R1Y2VyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucHVibGlzaGVyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMudXNlcicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmNoYW5nZURhdGUnKVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzU2VydmljZSB7XG4gIHByb3RlY3RlZCBmaWVsZHMgPSB7XG4gICAgb3JnYW5pemF0aW9uOiBuZXcgT3JnYW5pemF0aW9uU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgZm9ybWF0OiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoJ2Zvcm1hdCcsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICByZXNvdXJjZVR5cGU6IG5ldyBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCh0aGlzLmluamVjdG9yKSwgLy8gRGVwcmVjYXRlZCwgdXNlIGByZWNvcmRLaW5kYCBpbnN0ZWFkXG4gICAgcmVjb3JkS2luZDogbmV3IFJlY29yZEtpbmRGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICByZXByZXNlbnRhdGlvblR5cGU6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoXG4gICAgICAnY2xfc3BhdGlhbFJlcHJlc2VudGF0aW9uVHlwZS5rZXknLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBwdWJsaWNhdGlvblllYXI6IG5ldyBTaW1wbGVTZWFyY2hGaWVsZChcbiAgICAgICdwdWJsaWNhdGlvblllYXJGb3JSZXNvdXJjZScsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2Rlc2MnXG4gICAgKSxcbiAgICB0b3BpYzogbmV3IFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCgnY2xfdG9waWMua2V5JywgdGhpcy5pbmplY3RvciwgJ2FzYycpLFxuICAgIGluc3BpcmVLZXl3b3JkOiBuZXcgVHJhbnNsYXRlZFNlYXJjaEZpZWxkKFxuICAgICAgJ3RoX2h0dHBpbnNwaXJlZWNldXJvcGFldXRoZW1lLXRoZW1lLmxpbmsnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBrZXl3b3JkOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoJ3RhZycsIHRoaXMuaW5qZWN0b3IsICdkZXNjJywgJ2NvdW50JyksXG4gICAgZG9jdW1lbnRTdGFuZGFyZDogbmV3IFNpbXBsZVNlYXJjaEZpZWxkKFxuICAgICAgJ2RvY3VtZW50U3RhbmRhcmQnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBpc1NwYXRpYWw6IG5ldyBJc1NwYXRpYWxTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBxOiBuZXcgRnVsbFRleHRTZWFyY2hGaWVsZCgpLFxuICAgIGxpY2Vuc2U6IG5ldyBMaWNlbnNlU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgb3duZXI6IG5ldyBPd25lclNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIHByb2R1Y2VyT3JnOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoXG4gICAgICAnb3JpZ2luYXRvck9yZ0ZvclJlc291cmNlT2JqZWN0JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJyxcbiAgICAgICdrZXknXG4gICAgKSxcbiAgICBwdWJsaXNoZXJPcmc6IG5ldyBNdWx0aWxpbmd1YWxTZWFyY2hGaWVsZChcbiAgICAgICdkaXN0cmlidXRvck9yZ0ZvclJlc291cmNlT2JqZWN0JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJyxcbiAgICAgICdrZXknXG4gICAgKSxcbiAgICB1c2VyOiBuZXcgVXNlclNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIGNoYW5nZURhdGU6IG5ldyBEYXRlUmFuZ2VTZWFyY2hGaWVsZCgnY2hhbmdlRGF0ZScsIHRoaXMuaW5qZWN0b3IsICdkZXNjJyksXG4gICAgYXZhaWxhYmxlU2VydmljZXM6IG5ldyBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICB9IGFzIFJlY29yZDxzdHJpbmcsIEFic3RyYWN0U2VhcmNoRmllbGQ+XG5cbiAgZ2V0IHN1cHBvcnRlZEZpZWxkcygpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5maWVsZHMpXG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcyhmaWVsZE5hbWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnN1cHBvcnRlZEZpZWxkcy5pbmRleE9mKGZpZWxkTmFtZSkgPT09IC0xKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBzZWFyY2ggZmllbGQ6ICR7ZmllbGROYW1lfWApXG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0QXZhaWxhYmxlVmFsdWVzKClcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyc0ZvclZhbHVlcyhcbiAgICBmaWVsZE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IEZpZWxkVmFsdWVbXSB8IERhdGVSYW5nZVtdXG4gICkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzKVxuICB9XG4gIHByaXZhdGUgZ2V0VmFsdWVzRm9yRmlsdGVycyhmaWVsZE5hbWU6IHN0cmluZywgZmlsdGVyczogRmllbGRGaWx0ZXJzKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0VmFsdWVzRm9yRmlsdGVyKGZpbHRlcnMpXG4gIH1cblxuICBnZXRGaWVsZFR5cGUoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHNbZmllbGROYW1lXS5nZXRUeXBlKClcbiAgfVxuXG4gIGJ1aWxkRmlsdGVyc0Zyb21GaWVsZFZhbHVlcyhcbiAgICBmaWVsZFZhbHVlczogRmllbGRWYWx1ZXNcbiAgKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBmaWVsZE5hbWVzID0gT2JqZWN0LmtleXMoZmllbGRWYWx1ZXMpLmZpbHRlcigoZmllbGROYW1lKSA9PlxuICAgICAgdGhpcy5zdXBwb3J0ZWRGaWVsZHMuaW5jbHVkZXMoZmllbGROYW1lKVxuICAgIClcbiAgICBpZiAoIWZpZWxkTmFtZXMubGVuZ3RoKSByZXR1cm4gb2Yoe30pXG4gICAgY29uc3QgZmlsdGVyc0J5RmllbGQkID0gZmllbGROYW1lcy5tYXAoKGZpZWxkTmFtZSkgPT4ge1xuICAgICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheShmaWVsZFZhbHVlc1tmaWVsZE5hbWVdKVxuICAgICAgICA/IGZpZWxkVmFsdWVzW2ZpZWxkTmFtZV1cbiAgICAgICAgOiBbZmllbGRWYWx1ZXNbZmllbGROYW1lXV1cbiAgICAgIHJldHVybiB0aGlzLmdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgICAgIGZpZWxkTmFtZSxcbiAgICAgICAgdmFsdWVzIGFzIEZpZWxkVmFsdWVbXSB8IERhdGVSYW5nZVtdXG4gICAgICApXG4gICAgfSlcbiAgICByZXR1cm4gZm9ya0pvaW4oZmlsdGVyc0J5RmllbGQkKS5waXBlKFxuICAgICAgbWFwKChmaWx0ZXJzKSA9PlxuICAgICAgICBmaWx0ZXJzLnJlZHVjZSgocHJldiwgY3VycikgPT4gKHsgLi4ucHJldiwgLi4uY3VyciB9KSwge30pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgcmVhZEZpZWxkVmFsdWVzRnJvbUZpbHRlcnMoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlcz4ge1xuICAgIGNvbnN0IGZpZWxkVmFsdWVzJCA9IHRoaXMuc3VwcG9ydGVkRmllbGRzLm1hcCgoZmllbGROYW1lKSA9PlxuICAgICAgdGhpcy5nZXRWYWx1ZXNGb3JGaWx0ZXJzKGZpZWxkTmFtZSwgZmlsdGVycykucGlwZShcbiAgICAgICAgbWFwKCh2YWx1ZXMpID0+ICh7IFtmaWVsZE5hbWVdOiB2YWx1ZXMgfSkpXG4gICAgICApXG4gICAgKVxuICAgIHJldHVybiBmb3JrSm9pbihmaWVsZFZhbHVlcyQpLnBpcGUoXG4gICAgICBtYXAoKGZpZWxkVmFsdWVzKSA9PlxuICAgICAgICBmaWVsZFZhbHVlcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+ICh7IC4uLnByZXYsIC4uLmN1cnIgfSksIHt9KVxuICAgICAgKVxuICAgIClcbiAgfVxufVxuIl19
@@ -7,6 +7,7 @@ export * from './lib/downloads-list/downloads-list.component';
7
7
  export * from './lib/error/error.component';
8
8
  export * from './lib/image-input/image-input.component';
9
9
  export * from './lib/image-overlay-preview/image-overlay-preview.component';
10
+ export * from './lib/kind-badge/kind-badge.component';
10
11
  export * from './lib/link-card/link-card.component';
11
12
  export * from './lib/markdown-editor/markdown-editor.component';
12
13
  export * from './lib/markdown-parser/markdown-parser.component';
@@ -25,4 +26,4 @@ export * from './lib/user-preview/user-preview.component';
25
26
  export * from './lib/application-banner/application-banner.component';
26
27
  export * from './lib/internal-link-card/internal-link-card.component';
27
28
  export * from './lib/service-capabilities/service-capabilities.component';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYywrQ0FBK0MsQ0FBQTtBQUM3RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLG1EQUFtRCxDQUFBO0FBQ2pFLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxjQUFjLDZEQUE2RCxDQUFBO0FBQzNFLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMseURBQXlELENBQUE7QUFDdkUsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYywyREFBMkQsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRlbnQtZ2hvc3QvY29udGVudC1naG9zdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3dubG9hZC1pdGVtL2Rvd25sb2FkLWl0ZW0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZG93bmxvYWRzLWxpc3QvZG93bmxvYWRzLWxpc3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXJyb3IvZXJyb3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW1hZ2UtaW5wdXQvaW1hZ2UtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3L2ltYWdlLW92ZXJsYXktcHJldmlldy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWNhcmQvbGluay1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21hcmtkb3duLWVkaXRvci9tYXJrZG93bi1lZGl0b3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFya2Rvd24tcGFyc2VyL21hcmtkb3duLXBhcnNlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWluZm8vbWV0YWRhdGEtaW5mby5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0vbWV0YWRhdGEtcXVhbGl0eS1pdGVtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLXF1YWxpdHkvbWV0YWRhdGEtcXVhbGl0eS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlY29yZC1hcGktZm9ybS9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktZWxlbWVudHMubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcGxpY2F0aW9uLWJhbm5lci9hcHBsaWNhdGlvbi1iYW5uZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJuYWwtbGluay1jYXJkL2ludGVybmFsLWxpbmstY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlLWNhcGFiaWxpdGllcy9zZXJ2aWNlLWNhcGFiaWxpdGllcy5jb21wb25lbnQnXG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYywrQ0FBK0MsQ0FBQTtBQUM3RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLDJEQUEyRCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGVudC1naG9zdC9jb250ZW50LWdob3N0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rvd25sb2FkLWl0ZW0vZG93bmxvYWQtaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lcnJvci9lcnJvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1pbnB1dC9pbWFnZS1pbnB1dC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2tpbmQtYmFkZ2Uva2luZC1iYWRnZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWNhcmQvbGluay1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21hcmtkb3duLWVkaXRvci9tYXJrZG93bi1lZGl0b3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFya2Rvd24tcGFyc2VyL21hcmtkb3duLXBhcnNlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWluZm8vbWV0YWRhdGEtaW5mby5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0vbWV0YWRhdGEtcXVhbGl0eS1pdGVtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLXF1YWxpdHkvbWV0YWRhdGEtcXVhbGl0eS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlY29yZC1hcGktZm9ybS9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktZWxlbWVudHMubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcGxpY2F0aW9uLWJhbm5lci9hcHBsaWNhdGlvbi1iYW5uZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJuYWwtbGluay1jYXJkL2ludGVybmFsLWxpbmstY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlLWNhcGFiaWxpdGllcy9zZXJ2aWNlLWNhcGFiaWxpdGllcy5jb21wb25lbnQnXG4iXX0=