geonetwork-ui 2.6.0-dev.a6b2f3e85 → 2.6.0-dev.a8e63e487

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 (222) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +37 -4
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
  4. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +8 -4
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +5 -2
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +4 -4
  7. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +2 -2
  8. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +2 -1
  9. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +3 -3
  10. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +41 -9
  11. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  12. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  13. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +32 -2
  14. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +266 -11
  15. package/esm2022/libs/feature/record/src/index.mjs +2 -3
  16. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +31 -5
  17. package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
  18. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +7 -1
  19. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -13
  20. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
  21. package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
  22. package/esm2022/libs/feature/search/src/lib/constants.mjs +2 -1
  23. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +6 -2
  24. package/esm2022/libs/ui/elements/src/index.mjs +3 -1
  25. package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +55 -0
  26. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +27 -53
  27. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +22 -5
  28. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  29. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +3 -3
  30. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  31. package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +51 -0
  32. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +17 -7
  33. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +12 -4
  34. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
  35. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  36. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
  37. package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +68 -0
  38. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +3 -3
  39. package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
  40. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  41. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +65 -14
  42. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  43. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -8
  44. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +3 -3
  45. package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
  46. package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
  47. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +19 -12
  48. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +27 -14
  49. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +10 -4
  50. package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +42 -1
  51. package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +24 -2
  52. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +4 -1
  53. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +4 -1
  54. package/esm2022/translations/de.json +34 -5
  55. package/esm2022/translations/en.json +34 -7
  56. package/esm2022/translations/es.json +33 -4
  57. package/esm2022/translations/fr.json +34 -7
  58. package/esm2022/translations/it.json +64 -35
  59. package/esm2022/translations/nl.json +33 -4
  60. package/esm2022/translations/pt.json +33 -4
  61. package/fesm2022/geonetwork-ui.mjs +1580 -665
  62. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  63. package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
  64. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  65. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
  66. package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
  67. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
  68. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  69. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  70. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  71. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  72. package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
  73. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +1 -1
  74. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  75. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +7 -2
  76. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  77. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +2 -1
  78. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  79. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +3 -0
  80. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  81. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +1 -0
  82. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  83. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +48 -3
  84. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -1
  85. package/libs/feature/record/src/index.d.ts +1 -2
  86. package/libs/feature/record/src/index.d.ts.map +1 -1
  87. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  88. package/libs/feature/record/src/lib/state/mdview.actions.d.ts +10 -0
  89. package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
  90. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +6 -0
  91. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  92. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +28 -21
  93. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  94. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +2 -0
  95. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  96. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
  97. package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
  98. package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
  99. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +1 -1
  100. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  101. package/libs/ui/elements/src/index.d.ts +2 -0
  102. package/libs/ui/elements/src/index.d.ts.map +1 -1
  103. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
  104. package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
  105. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +3 -7
  106. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
  107. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +3 -1
  108. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -1
  109. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +16 -0
  110. package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
  111. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +8 -1
  112. package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
  113. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +1 -0
  114. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -1
  115. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
  116. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  117. package/libs/ui/inputs/src/index.d.ts +1 -0
  118. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  119. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
  120. package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
  121. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
  122. package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
  123. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +15 -6
  124. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -1
  125. package/libs/ui/search/src/index.d.ts +1 -0
  126. package/libs/ui/search/src/index.d.ts.map +1 -1
  127. package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
  128. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +3 -3
  129. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
  130. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +5 -1
  131. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  132. package/libs/ui/search/src/lib/ui-search.module.d.ts +2 -1
  133. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  134. package/libs/util/i18n/src/lib/i18n.constants.d.ts +1 -0
  135. package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
  136. package/libs/util/i18n/src/lib/language-codes.d.ts +23 -1
  137. package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
  138. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  139. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  140. package/package.json +1 -1
  141. package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
  142. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
  143. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +55 -4
  144. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
  145. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +13 -3
  146. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +5 -1
  147. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +8 -4
  148. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +4 -1
  149. package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +1 -0
  150. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +2 -2
  151. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +65 -7
  152. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +8 -1
  153. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +3 -0
  154. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +10 -0
  155. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +14 -0
  156. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +1 -1
  157. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +37 -0
  158. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +117 -11
  159. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +316 -6
  160. package/src/libs/feature/record/src/index.ts +1 -2
  161. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +35 -4
  162. package/src/libs/feature/record/src/lib/state/mdview.actions.ts +10 -0
  163. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +22 -0
  164. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +22 -15
  165. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +12 -0
  166. package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
  167. package/src/libs/feature/search/src/lib/constants.ts +1 -0
  168. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +2 -0
  169. package/src/libs/ui/elements/src/index.ts +2 -0
  170. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
  171. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
  172. package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
  173. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +133 -138
  174. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +19 -47
  175. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +7 -5
  176. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +21 -2
  177. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +6 -3
  178. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +4 -0
  179. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +1 -1
  180. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +48 -0
  181. package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +52 -0
  182. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +8 -29
  183. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +14 -1
  184. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +15 -1
  185. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +9 -1
  186. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -1
  187. package/src/libs/ui/inputs/src/index.ts +1 -0
  188. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
  189. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
  190. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
  191. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +77 -0
  192. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +1 -2
  193. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
  194. package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
  195. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +1 -0
  196. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +8 -10
  197. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +75 -7
  198. package/src/libs/ui/search/src/index.ts +1 -0
  199. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
  200. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +1 -0
  201. package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
  202. package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
  203. package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
  204. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +11 -3
  205. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +14 -11
  206. package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
  207. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +27 -17
  208. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +20 -10
  209. package/src/libs/ui/search/src/lib/ui-search.module.ts +3 -0
  210. package/src/libs/util/i18n/src/lib/i18n.constants.ts +42 -0
  211. package/src/libs/util/i18n/src/lib/language-codes.ts +23 -1
  212. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +3 -0
  213. package/src/libs/util/shared/src/lib/links/link-utils.ts +3 -0
  214. package/tailwind.base.css +1 -1
  215. package/translations/de.json +34 -5
  216. package/translations/en.json +34 -7
  217. package/translations/es.json +33 -4
  218. package/translations/fr.json +34 -7
  219. package/translations/it.json +64 -35
  220. package/translations/nl.json +33 -4
  221. package/translations/pt.json +33 -4
  222. package/translations/sk.json +33 -4
@@ -3,27 +3,28 @@ import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output,
3
3
  import { BadgeComponent, UiInputsModule } from '../../../../../../libs/ui/inputs/src';
4
4
  import { InteractiveTableColumnComponent, InteractiveTableComponent, } from '../../../../../../libs/ui/layout/src';
5
5
  import { DateService, formatUserInfo, getBadgeColor, getFileFormat, getFormatPriority, } from '../../../../../../libs/util/shared/src';
6
- import { TranslateModule } from '@ngx-translate/core';
6
+ import { TranslateModule, TranslateService } from '@ngx-translate/core';
7
7
  import { ActionMenuComponent } from './action-menu/action-menu.component';
8
8
  import { NgIconComponent, provideIcons } from '@ng-icons/core';
9
- import { iconoirUser, iconoirLock } from '@ng-icons/iconoir';
10
- import { CdkOverlayOrigin, Overlay, } from '@angular/cdk/overlay';
9
+ import { iconoirUser, iconoirLock, iconoirTranslate } from '@ng-icons/iconoir';
10
+ import { CdkOverlayOrigin, Overlay } from '@angular/cdk/overlay';
11
11
  import { TemplatePortal } from '@angular/cdk/portal';
12
12
  import { matMoreVert } from '@ng-icons/material-icons/baseline';
13
13
  import * as i0 from "@angular/core";
14
14
  import * as i1 from "@angular/cdk/overlay";
15
15
  import * as i2 from "../../../../../../libs/util/shared/src";
16
- import * as i3 from "@angular/common";
17
- import * as i4 from "../../../../inputs/src/lib/button/button.component";
18
- import * as i5 from "../../../../inputs/src/lib/checkbox/checkbox.component";
19
- import * as i6 from "../../../../inputs/src/lib/badge/badge.component";
20
- import * as i7 from "@ngx-translate/core";
16
+ import * as i3 from "@ngx-translate/core";
17
+ import * as i4 from "@angular/common";
18
+ import * as i5 from "../../../../inputs/src/lib/button/button.component";
19
+ import * as i6 from "../../../../inputs/src/lib/checkbox/checkbox.component";
20
+ import * as i7 from "../../../../inputs/src/lib/badge/badge.component";
21
21
  export class ResultsTableComponent {
22
- constructor(overlay, viewContainerRef, cdr, dateService) {
22
+ constructor(overlay, viewContainerRef, cdr, dateService, translateService) {
23
23
  this.overlay = overlay;
24
24
  this.viewContainerRef = viewContainerRef;
25
25
  this.cdr = cdr;
26
26
  this.dateService = dateService;
27
+ this.translateService = translateService;
27
28
  this.records = [];
28
29
  this.selectedRecordsIdentifiers = [];
29
30
  this.sortOrder = null;
@@ -144,8 +145,18 @@ export class ResultsTableComponent {
144
145
  handleRecordSelectedChange(selected, record) {
145
146
  this.recordsSelectedChange.emit([[record], selected]);
146
147
  }
147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResultsTableComponent, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i2.DateService }], target: i0.ɵɵFactoryTarget.Component }); }
148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ResultsTableComponent, isStandalone: true, selector: "gn-ui-results-table", inputs: { records: "records", selectedRecordsIdentifiers: "selectedRecordsIdentifiers", sortOrder: "sortOrder", hasDraft: "hasDraft", canDuplicate: "canDuplicate", canDelete: "canDelete", isDraftPage: "isDraftPage", isDuplicating: "isDuplicating" }, outputs: { sortByChange: "sortByChange", recordClick: "recordClick", duplicateRecord: "duplicateRecord", deleteRecord: "deleteRecord", rollbackDraft: "rollbackDraft", recordsSelectedChange: "recordsSelectedChange" }, providers: [provideIcons({ iconoirUser, iconoirLock, matMoreVert })], viewQueries: [{ propertyName: "actionMenuButtons", predicate: ["actionMenuButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<gn-ui-interactive-table\n [items]=\"records\"\n [isDraftPage]=\"isDraftPage\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'3rem'\">\n <ng-template #cell let-item let-i=\"index\">\n <ng-icon\n name=\"iconoirLock\"\n class=\"text-purple\"\n *ngIf=\"(!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\"\n ></ng-icon>\n <gn-ui-checkbox\n *ngIf=\"(item.extras?.edit || isDraftPage) && item.kind === 'dataset'\"\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [grow]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full font-semibold\">\n <span data-cy=\"resultItemTitle\" class=\"overflow-hidden text-ellipsis\">{{\n item.title\n }}</span>\n <gn-ui-badge\n *ngIf=\"hasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.2em 0.6em'\"\n [style.--gn-ui-badge-text-size]=\"'12px'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'9rem'\">\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2 font-medium\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0 text-xs\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'12rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.user</span>\n </ng-template>\n <ng-template #cell let-item>\n <ng-icon name=\"iconoirUser\" size=\"16px\"></ng-icon>\n <span data-cy=\"ownerInfo\" class=\"text-xs\">{{\n formatUserInfo(item.extras?.ownerInfo)\n }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'6rem'\">\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n <span class=\"text-xs\">\n {{\n (item.extras?.['isPublishedToAll']\n ? 'record.metadata.status.published'\n : 'record.metadata.status.notPublished'\n ) | translate\n }}</span\n >\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'8rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.changeDate</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex text-left w-full text-xs\">\n {{\n item.extras?.['isPublishedToAll']\n ? dateToString(item.recordUpdated)\n : '-'\n }}\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <gn-ui-button\n cdkOverlayOrigin\n #actionMenuButton\n (buttonClick)=\"openActionMenu(item, template)\"\n type=\"light\"\n data-test=\"record-menu-button\"\n [disabled]=\"\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\n \"\n >\n <ng-icon\n [ngClass]=\"{\n 'text-purple-light':\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n }\"\n name=\"matMoreVert\"\n ></ng-icon>\n </gn-ui-button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDuplicate]=\"canDuplicate(item) && !isDuplicating\"\n [canDelete]=\"canDelete(item)\"\n [isDraftPage]=\"isDraftPage\"\n (duplicate)=\"handleDuplicate(item)\"\n (delete)=\"handleDelete(item)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (rollback)=\"handleRollback(item)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i4.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i5.CheckboxComponent, selector: "gn-ui-checkbox", inputs: ["type", "checked", "indeterminate"], outputs: ["changed"] }, { kind: "component", type: i6.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: InteractiveTableComponent, selector: "gn-ui-interactive-table", inputs: ["items", "isDraftPage"], outputs: ["itemClick"] }, { kind: "component", type: InteractiveTableColumnComponent, selector: "gn-ui-interactive-table-column", inputs: ["grow", "width", "sortable", "activeSort"], outputs: ["sortChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "directive", type: i7.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ActionMenuComponent, selector: "gn-ui-action-menu", inputs: ["canDuplicate", "canDelete", "isDraftPage"], outputs: ["duplicate", "delete", "closeActionMenu", "rollback"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }] }); }
148
+ isMultilingual(record) {
149
+ return record.otherLanguages.length > 0;
150
+ }
151
+ getTxtHoverMultilingual(record) {
152
+ return this.translateService.instant('dashboard.records.isMultilingual', {
153
+ languages: [...[record.defaultLanguage], ...record.otherLanguages].join(', '),
154
+ });
155
+ }
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResultsTableComponent, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i2.DateService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
157
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ResultsTableComponent, isStandalone: true, selector: "gn-ui-results-table", inputs: { records: "records", selectedRecordsIdentifiers: "selectedRecordsIdentifiers", sortOrder: "sortOrder", hasDraft: "hasDraft", canDuplicate: "canDuplicate", canDelete: "canDelete", isDraftPage: "isDraftPage", isDuplicating: "isDuplicating" }, outputs: { sortByChange: "sortByChange", recordClick: "recordClick", duplicateRecord: "duplicateRecord", deleteRecord: "deleteRecord", rollbackDraft: "rollbackDraft", recordsSelectedChange: "recordsSelectedChange" }, providers: [
158
+ provideIcons({ iconoirUser, iconoirLock, iconoirTranslate, matMoreVert }),
159
+ ], viewQueries: [{ propertyName: "actionMenuButtons", predicate: ["actionMenuButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<gn-ui-interactive-table\n [items]=\"records\"\n [isDraftPage]=\"isDraftPage\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'3rem'\">\n <ng-template #cell let-item let-i=\"index\">\n <ng-icon\n name=\"iconoirLock\"\n class=\"text-purple\"\n *ngIf=\"(!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\"\n ></ng-icon>\n <gn-ui-checkbox\n *ngIf=\"(item.extras?.edit || isDraftPage) && item.kind === 'dataset'\"\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [grow]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full font-semibold\">\n <span data-cy=\"resultItemTitle\" class=\"overflow-hidden text-ellipsis\">{{\n item.title\n }}</span>\n <gn-ui-badge\n *ngIf=\"hasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.2em 0.6em'\"\n [style.--gn-ui-badge-text-size]=\"'12px'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'9rem'\">\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2 font-medium\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0 text-xs\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'12rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.user</span>\n </ng-template>\n <ng-template #cell let-item>\n <ng-icon name=\"iconoirUser\" size=\"16px\"></ng-icon>\n <span data-cy=\"ownerInfo\" class=\"text-xs\">{{\n formatUserInfo(item.extras?.ownerInfo)\n }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'6rem'\">\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n <span class=\"text-xs\">\n {{\n (item.extras?.['isPublishedToAll']\n ? 'record.metadata.status.published'\n : 'record.metadata.status.notPublished'\n ) | translate\n }}</span\n >\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'8rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.changeDate</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex text-left w-full text-xs\">\n {{\n item.extras?.['isPublishedToAll']\n ? dateToString(item.recordUpdated)\n : '-'\n }}\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex justify-end items-center gap-4 w-full\">\n <!-- IS MULTILINGUAL -->\n <ng-icon\n *ngIf=\"isMultilingual(item)\"\n data-cy=\"multilingual-indicator\"\n name=\"iconoirTranslate\"\n [attr.title]=\"getTxtHoverMultilingual(item)\"\n ></ng-icon>\n <!-- MORE ACTIONS MENU BUTTON -->\n <gn-ui-button\n cdkOverlayOrigin\n #actionMenuButton\n (buttonClick)=\"openActionMenu(item, template)\"\n type=\"light\"\n data-test=\"record-menu-button\"\n [disabled]=\"\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\n \"\n >\n <ng-icon\n [ngClass]=\"{\n 'text-purple-light':\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n }\"\n name=\"matMoreVert\"\n ></ng-icon>\n </gn-ui-button>\n </div>\n <ng-template #template>\n <gn-ui-action-menu\n [canDuplicate]=\"canDuplicate(item) && !isDuplicating\"\n [canDelete]=\"canDelete(item)\"\n [page]=\"isDraftPage ? 'draft' : 'main'\"\n (duplicate)=\"handleDuplicate(item)\"\n (delete)=\"handleDelete(item)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (rollback)=\"handleRollback(item)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n", styles: [":host{--gn-ui-button-height: 40px;--gn-ui-button-width: 40px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i5.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i6.CheckboxComponent, selector: "gn-ui-checkbox", inputs: ["type", "checked", "indeterminate"], outputs: ["changed"] }, { kind: "component", type: i7.BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: InteractiveTableComponent, selector: "gn-ui-interactive-table", inputs: ["items", "isDraftPage"], outputs: ["itemClick"] }, { kind: "component", type: InteractiveTableColumnComponent, selector: "gn-ui-interactive-table-column", inputs: ["grow", "width", "sortable", "activeSort"], outputs: ["sortChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ActionMenuComponent, selector: "gn-ui-action-menu", inputs: ["canDuplicate", "canDelete", "page"], outputs: ["duplicate", "delete", "closeActionMenu", "rollback", "switch"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }] }); }
149
160
  }
150
161
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResultsTableComponent, decorators: [{
151
162
  type: Component,
@@ -159,8 +170,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
159
170
  ActionMenuComponent,
160
171
  NgIconComponent,
161
172
  CdkOverlayOrigin,
162
- ], providers: [provideIcons({ iconoirUser, iconoirLock, matMoreVert })], template: "<gn-ui-interactive-table\n [items]=\"records\"\n [isDraftPage]=\"isDraftPage\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'3rem'\">\n <ng-template #cell let-item let-i=\"index\">\n <ng-icon\n name=\"iconoirLock\"\n class=\"text-purple\"\n *ngIf=\"(!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\"\n ></ng-icon>\n <gn-ui-checkbox\n *ngIf=\"(item.extras?.edit || isDraftPage) && item.kind === 'dataset'\"\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [grow]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full font-semibold\">\n <span data-cy=\"resultItemTitle\" class=\"overflow-hidden text-ellipsis\">{{\n item.title\n }}</span>\n <gn-ui-badge\n *ngIf=\"hasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.2em 0.6em'\"\n [style.--gn-ui-badge-text-size]=\"'12px'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'9rem'\">\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2 font-medium\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0 text-xs\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'12rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.user</span>\n </ng-template>\n <ng-template #cell let-item>\n <ng-icon name=\"iconoirUser\" size=\"16px\"></ng-icon>\n <span data-cy=\"ownerInfo\" class=\"text-xs\">{{\n formatUserInfo(item.extras?.ownerInfo)\n }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'6rem'\">\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n <span class=\"text-xs\">\n {{\n (item.extras?.['isPublishedToAll']\n ? 'record.metadata.status.published'\n : 'record.metadata.status.notPublished'\n ) | translate\n }}</span\n >\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'8rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.changeDate</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex text-left w-full text-xs\">\n {{\n item.extras?.['isPublishedToAll']\n ? dateToString(item.recordUpdated)\n : '-'\n }}\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <gn-ui-button\n cdkOverlayOrigin\n #actionMenuButton\n (buttonClick)=\"openActionMenu(item, template)\"\n type=\"light\"\n data-test=\"record-menu-button\"\n [disabled]=\"\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\n \"\n >\n <ng-icon\n [ngClass]=\"{\n 'text-purple-light':\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n }\"\n name=\"matMoreVert\"\n ></ng-icon>\n </gn-ui-button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDuplicate]=\"canDuplicate(item) && !isDuplicating\"\n [canDelete]=\"canDelete(item)\"\n [isDraftPage]=\"isDraftPage\"\n (duplicate)=\"handleDuplicate(item)\"\n (delete)=\"handleDelete(item)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (rollback)=\"handleRollback(item)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n" }]
163
- }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: i2.DateService }], propDecorators: { records: [{
173
+ ], providers: [
174
+ provideIcons({ iconoirUser, iconoirLock, iconoirTranslate, matMoreVert }),
175
+ ], template: "<gn-ui-interactive-table\n [items]=\"records\"\n [isDraftPage]=\"isDraftPage\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'3rem'\">\n <ng-template #cell let-item let-i=\"index\">\n <ng-icon\n name=\"iconoirLock\"\n class=\"text-purple\"\n *ngIf=\"(!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\"\n ></ng-icon>\n <gn-ui-checkbox\n *ngIf=\"(item.extras?.edit || isDraftPage) && item.kind === 'dataset'\"\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [grow]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full font-semibold\">\n <span data-cy=\"resultItemTitle\" class=\"overflow-hidden text-ellipsis\">{{\n item.title\n }}</span>\n <gn-ui-badge\n *ngIf=\"hasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.2em 0.6em'\"\n [style.--gn-ui-badge-text-size]=\"'12px'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'9rem'\">\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2 font-medium\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-xs text-gray-900 px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0 text-xs\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'12rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.user</span>\n </ng-template>\n <ng-template #cell let-item>\n <ng-icon name=\"iconoirUser\" size=\"16px\"></ng-icon>\n <span data-cy=\"ownerInfo\" class=\"text-xs\">{{\n formatUserInfo(item.extras?.ownerInfo)\n }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column [width]=\"'6rem'\">\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n <span class=\"text-xs\">\n {{\n (item.extras?.['isPublishedToAll']\n ? 'record.metadata.status.published'\n : 'record.metadata.status.notPublished'\n ) | translate\n }}</span\n >\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [width]=\"'8rem'\"\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>search.filters.changeDate</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex text-left w-full text-xs\">\n {{\n item.extras?.['isPublishedToAll']\n ? dateToString(item.recordUpdated)\n : '-'\n }}\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex justify-end items-center gap-4 w-full\">\n <!-- IS MULTILINGUAL -->\n <ng-icon\n *ngIf=\"isMultilingual(item)\"\n data-cy=\"multilingual-indicator\"\n name=\"iconoirTranslate\"\n [attr.title]=\"getTxtHoverMultilingual(item)\"\n ></ng-icon>\n <!-- MORE ACTIONS MENU BUTTON -->\n <gn-ui-button\n cdkOverlayOrigin\n #actionMenuButton\n (buttonClick)=\"openActionMenu(item, template)\"\n type=\"light\"\n data-test=\"record-menu-button\"\n [disabled]=\"\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'\n \"\n >\n <ng-icon\n [ngClass]=\"{\n 'text-purple-light':\n (!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset',\n }\"\n name=\"matMoreVert\"\n ></ng-icon>\n </gn-ui-button>\n </div>\n <ng-template #template>\n <gn-ui-action-menu\n [canDuplicate]=\"canDuplicate(item) && !isDuplicating\"\n [canDelete]=\"canDelete(item)\"\n [page]=\"isDraftPage ? 'draft' : 'main'\"\n (duplicate)=\"handleDuplicate(item)\"\n (delete)=\"handleDelete(item)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (rollback)=\"handleRollback(item)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n", styles: [":host{--gn-ui-button-height: 40px;--gn-ui-button-width: 40px}\n"] }]
176
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: i2.DateService }, { type: i3.TranslateService }], propDecorators: { records: [{
164
177
  type: Input
165
178
  }], selectedRecordsIdentifiers: [{
166
179
  type: Input
@@ -192,4 +205,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
192
205
  type: ViewChildren,
193
206
  args: ['actionMenuButton', { read: ElementRef }]
194
207
  }] } });
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3NlYXJjaC9zcmMvbGliL3Jlc3VsdHMtdGFibGUvcmVzdWx0cy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3NlYXJjaC9zcmMvbGliL3Jlc3VsdHMtdGFibGUvcmVzdWx0cy10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFBO0FBTXRCLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckYsT0FBTyxFQUNMLCtCQUErQixFQUMvQix5QkFBeUIsR0FDMUIsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM3QyxPQUFPLEVBQ0wsV0FBVyxFQUVYLGNBQWMsRUFDZCxhQUFhLEVBQ2IsYUFBYSxFQUNiLGlCQUFpQixHQUNsQixNQUFNLHdDQUF3QyxDQUFBO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDNUQsT0FBTyxFQUVMLGdCQUFnQixFQUNoQixPQUFPLEdBRVIsTUFBTSxzQkFBc0IsQ0FBQTtB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Q2YsZ0JBQWdCO3FCQUNqQixhQUNVLENBQUMsWUFBWSxDQUFDLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO3FLQUczRCxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxxQkFBcUI7c0JBQTlCLE1BQU07Z0JBS1AsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgRmllbGRTb3J0LFxuICBTb3J0QnlGaWVsZCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHsgQmFkZ2VDb21wb25lbnQsIFVpSW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHtcbiAgSW50ZXJhY3RpdmVUYWJsZUNvbHVtbkNvbXBvbmVudCxcbiAgSW50ZXJhY3RpdmVUYWJsZUNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHtcbiAgRGF0ZVNlcnZpY2UsXG4gIEZpbGVGb3JtYXQsXG4gIGZvcm1hdFVzZXJJbmZvLFxuICBnZXRCYWRnZUNvbG9yLFxuICBnZXRGaWxlRm9ybWF0LFxuICBnZXRGb3JtYXRQcmlvcml0eSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgQWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4vYWN0aW9uLW1lbnUvYWN0aW9uLW1lbnUuY29tcG9uZW50J1xuaW1wb3J0IHsgTmdJY29uQ29tcG9uZW50LCBwcm92aWRlSWNvbnMgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IGljb25vaXJVc2VyLCBpY29ub2lyTG9jayB9IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHtcbiAgQ2RrQ29ubmVjdGVkT3ZlcmxheSxcbiAgQ2RrT3ZlcmxheU9yaWdpbixcbiAgT3ZlcmxheSxcbiAgT3ZlcmxheVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnXG5pbXBvcnQgeyBtYXRNb3JlVmVydCB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktcmVzdWx0cy10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXN1bHRzLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzdWx0cy10YWJsZS5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgSW50ZXJhY3RpdmVUYWJsZUNvbXBvbmVudCxcbiAgICBJbnRlcmFjdGl2ZVRhYmxlQ29sdW1uQ29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBCYWRnZUNvbXBvbmVudCxcbiAgICBBY3Rpb25NZW51Q29tcG9uZW50LFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgICBDZGtPdmVybGF5T3JpZ2luLFxuICBdLFxuICBwcm92aWRlcnM6IFtwcm92aWRlSWNvbnMoeyBpY29ub2lyVXNlciwgaWNvbm9pckxvY2ssIG1hdE1vcmVWZXJ0IH0pXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVzdWx0c1RhYmxlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcmVjb3JkczogQ2F0YWxvZ1JlY29yZFtdID0gW11cbiAgQElucHV0KCkgc2VsZWN0ZWRSZWNvcmRzSWRlbnRpZmllcnM6IHN0cmluZ1tdID0gW11cbiAgQElucHV0KCkgc29ydE9yZGVyOiBTb3J0QnlGaWVsZCA9IG51bGxcbiAgQElucHV0KCkgaGFzRHJhZnQ6IChyZWNvcmQ6IENhdGFsb2dSZWNvcmQpID0+IGJvb2xlYW4gPSAoKSA9PiBmYWxzZVxuICBASW5wdXQoKSBjYW5EdXBsaWNhdGU6IChyZWNvcmQ6IENhdGFsb2dSZWNvcmQpID0+IGJvb2xlYW4gPSAoKSA9PiB0cnVlXG4gIEBJbnB1dCgpIGNhbkRlbGV0ZTogKHJlY29yZDogQ2F0YWxvZ1JlY29yZCkgPT4gYm9vbGVhbiA9ICgpID0+IHRydWVcbiAgQElucHV0KCkgaXNEcmFmdFBhZ2UgPSBmYWxzZVxuICBASW5wdXQoKSBpc0R1cGxpY2F0aW5nID0gZmFsc2VcblxuICAvLyBlbWl0cyB0aGUgY29sdW1uIChmaWVsZCkgYXMgd2VsbCBhcyB0aGUgb3JkZXJcbiAgQE91dHB1dCgpIHNvcnRCeUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8W3N0cmluZywgJ2FzYycgfCAnZGVzYyddPigpXG4gIEBPdXRwdXQoKSByZWNvcmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8Q2F0YWxvZ1JlY29yZD4oKVxuICBAT3V0cHV0KCkgZHVwbGljYXRlUmVjb3JkID0gbmV3IEV2ZW50RW1pdHRlcjxDYXRhbG9nUmVjb3JkPigpXG4gIEBPdXRwdXQoKSBkZWxldGVSZWNvcmQgPSBuZXcgRXZlbnRFbWl0dGVyPENhdGFsb2dSZWNvcmQ+KClcbiAgQE91dHB1dCgpIHJvbGxiYWNrRHJhZnQgPSBuZXcgRXZlbnRFbWl0dGVyPENhdGFsb2dSZWNvcmQ+KClcbiAgQE91dHB1dCgpIHJlY29yZHNTZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgW0NhdGFsb2dSZWNvcmRbXSwgYm9vbGVhbl1cbiAgPigpXG5cbiAgQFZpZXdDaGlsZHJlbignYWN0aW9uTWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBhY3Rpb25NZW51QnV0dG9ucyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPlxuICBwcml2YXRlIG92ZXJsYXlSZWYhOiBPdmVybGF5UmVmXG5cbiAgaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRlU2VydmljZTogRGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIG9wZW5BY3Rpb25NZW51KGl0ZW0sIHRlbXBsYXRlKSB7XG4gICAgdGhpcy5pc0FjdGlvbk1lbnVPcGVuID0gdHJ1ZVxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5yZWNvcmRzLmluZGV4T2YoaXRlbSlcbiAgICBjb25zdCBidXR0b25FbGVtZW50ID0gdGhpcy5hY3Rpb25NZW51QnV0dG9ucy50b0FycmF5KClbaW5kZXhdXG5cbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oYnV0dG9uRWxlbWVudClcbiAgICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKHRydWUpXG4gICAgICAud2l0aFB1c2godHJ1ZSlcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAge1xuICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgIG9yaWdpblk6ICdib3R0b20nLFxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICB9LFxuICAgICAgXSlcblxuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBiYWNrZHJvcENsYXNzOiAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogcG9zaXRpb25TdHJhdGVneSxcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgfSlcblxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0ZW1wbGF0ZSwgdGhpcy52aWV3Q29udGFpbmVyUmVmKVxuXG4gICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpXG5cbiAgICB0aGlzLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gICAgfSlcbiAgfVxuXG4gIGNsb3NlQWN0aW9uTWVudSgpIHtcbiAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICB0aGlzLmlzQWN0aW9uTWVudU9wZW4gPSBmYWxzZVxuICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cblxuICBkYXRlVG9TdHJpbmcoZGF0ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVNlcnZpY2UuZm9ybWF0RGF0ZShkYXRlLCB7XG4gICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICBtb250aDogJ2xvbmcnLFxuICAgICAgZGF5OiAnbnVtZXJpYycsXG4gICAgICB0aW1lWm9uZTogJ1VUQycsXG4gICAgfSlcbiAgfVxuXG4gIGdldFJlY29yZEZvcm1hdHMocmVjb3JkOiBDYXRhbG9nUmVjb3JkKTogRmlsZUZvcm1hdFtdIHtcbiAgICBpZiAocmVjb3JkLmtpbmQgPT09ICdzZXJ2aWNlJyB8fCAhKCdvbmxpbmVSZXNvdXJjZXMnIGluIHJlY29yZCkpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgICBjb25zdCBmb3JtYXRzID0gQXJyYXkuZnJvbShcbiAgICAgIG5ldyBTZXQoXG4gICAgICAgIHJlY29yZC5vbmxpbmVSZXNvdXJjZXMubWFwKChvbmxpbmVSZXNvdXJjZSkgPT5cbiAgICAgICAgICBnZXRGaWxlRm9ybWF0KG9ubGluZVJlc291cmNlKVxuICAgICAgICApXG4gICAgICApXG4gICAgKS5maWx0ZXIoKGZvcm1hdCkgPT4gISFmb3JtYXQpXG4gICAgZm9ybWF0cy5zb3J0KChhLCBiKSA9PiBnZXRGb3JtYXRQcmlvcml0eShiKSAtIGdldEZvcm1hdFByaW9yaXR5KGEpKVxuICAgIHJldHVybiBmb3JtYXRzXG4gIH1cblxuICBmb3JtYXRVc2VySW5mbyh1c2VySW5mbzogc3RyaW5nIHwgdW5rbm93bik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGZvcm1hdFVzZXJJbmZvKHVzZXJJbmZvKVxuICB9XG5cbiAgZ2V0QmFkZ2VDb2xvcihmb3JtYXQ6IEZpbGVGb3JtYXQpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRCYWRnZUNvbG9yKGZvcm1hdClcbiAgfVxuXG4gIGhhbmRsZVJlY29yZENsaWNrKGl0ZW06IENhdGFsb2dSZWNvcmQpIHtcbiAgICBpZiAoKGl0ZW0/LmV4dHJhcz8uZWRpdCB8fCB0aGlzLmlzRHJhZnRQYWdlKSAmJiBpdGVtLmtpbmQgPT09ICdkYXRhc2V0Jykge1xuICAgICAgdGhpcy5yZWNvcmRDbGljay5lbWl0KGl0ZW0gYXMgQ2F0YWxvZ1JlY29yZClcbiAgICB9XG4gIH1cblxuICBoYW5kbGVEdXBsaWNhdGUoaXRlbTogdW5rbm93bikge1xuICAgIHRoaXMuZHVwbGljYXRlUmVjb3JkLmVtaXQoaXRlbSBhcyBDYXRhbG9nUmVjb3JkKVxuICB9XG5cbiAgaGFuZGxlRGVsZXRlKGl0ZW06IHVua25vd24pIHtcbiAgICB0aGlzLmRlbGV0ZVJlY29yZC5lbWl0KGl0ZW0gYXMgQ2F0YWxvZ1JlY29yZClcbiAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gIH1cblxuICBoYW5kbGVSb2xsYmFjayhpdGVtOiB1bmtub3duKSB7XG4gICAgdGhpcy5yb2xsYmFja0RyYWZ0LmVtaXQoaXRlbSBhcyBDYXRhbG9nUmVjb3JkKVxuICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgfVxuXG4gIHNldFNvcnRCeShjb2w6IHN0cmluZywgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnKSB7XG4gICAgdGhpcy5zb3J0QnlDaGFuZ2UuZW1pdChbY29sLCBvcmRlcl0pXG4gIH1cblxuICBpc1NvcnRlZEJ5KGNvbDogc3RyaW5nKTogJ2Rlc2MnIHwgJ2FzYycgfCBudWxsIHtcbiAgICBpZiAoIXRoaXMuc29ydE9yZGVyKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBzb3J0QXJyYXkgPSBBcnJheS5pc0FycmF5KHRoaXMuc29ydE9yZGVyWzBdKVxuICAgICAgPyAodGhpcy5zb3J0T3JkZXIgYXMgRmllbGRTb3J0W10pXG4gICAgICA6IChbdGhpcy5zb3J0T3JkZXJdIGFzIEZpZWxkU29ydFtdKVxuICAgIGZvciAoY29uc3Qgc29ydCBvZiBzb3J0QXJyYXkpIHtcbiAgICAgIGlmIChzb3J0WzFdID09PSBjb2wpIHtcbiAgICAgICAgcmV0dXJuIHNvcnRbMF1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGlzQ2hlY2tlZChyZWNvcmQ6IENhdGFsb2dSZWNvcmQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFJlY29yZHNJZGVudGlmaWVycy5pbmNsdWRlcyhyZWNvcmQudW5pcXVlSWRlbnRpZmllcilcbiAgfVxuXG4gIGhhbmRsZVJlY29yZFNlbGVjdGVkQ2hhbmdlKHNlbGVjdGVkOiBib29sZWFuLCByZWNvcmQ6IENhdGFsb2dSZWNvcmQpIHtcbiAgICB0aGlzLnJlY29yZHNTZWxlY3RlZENoYW5nZS5lbWl0KFtbcmVjb3JkXSwgc2VsZWN0ZWRdKVxuICB9XG59XG4iLCI8Z24tdWktaW50ZXJhY3RpdmUtdGFibGVcbiAgW2l0ZW1zXT1cInJlY29yZHNcIlxuICBbaXNEcmFmdFBhZ2VdPVwiaXNEcmFmdFBhZ2VcIlxuICAoaXRlbUNsaWNrKT1cImhhbmRsZVJlY29yZENsaWNrKCRldmVudClcIlxuPlxuICA8IS0tIFNFTEVDVEVEIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbiBbd2lkdGhdPVwiJzNyZW0nXCI+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtIGxldC1pPVwiaW5kZXhcIj5cbiAgICAgIDxuZy1pY29uXG4gICAgICAgIG5hbWU9XCJpY29ub2lyTG9ja1wiXG4gICAgICAgIGNsYXNzPVwidGV4dC1wdXJwbGVcIlxuICAgICAgICAqbmdJZj1cIighaXRlbS5leHRyYXM/LmVkaXQgJiYgIWlzRHJhZnRQYWdlKSB8fCBpdGVtLmtpbmQgIT09ICdkYXRhc2V0J1wiXG4gICAgICA+PC9uZy1pY29uPlxuICAgICAgPGduLXVpLWNoZWNrYm94XG4gICAgICAgICpuZ0lmPVwiKGl0ZW0uZXh0cmFzPy5lZGl0IHx8IGlzRHJhZnRQYWdlKSAmJiBpdGVtLmtpbmQgPT09ICdkYXRhc2V0J1wiXG4gICAgICAgIFtjaGVja2VkXT1cImlzQ2hlY2tlZChpdGVtKVwiXG4gICAgICAgIChjaGFuZ2VkKT1cImhhbmRsZVJlY29yZFNlbGVjdGVkQ2hhbmdlKCRldmVudCwgaXRlbSlcIlxuICAgICAgICBjbGFzcz1cIi1tLTJcIlxuICAgICAgICB0eXBlPVwiZGVmYXVsdFwiXG4gICAgICA+PC9nbi11aS1jaGVja2JveD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2duLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbj5cblxuICA8IS0tIFRJVExFIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtblxuICAgIFtzb3J0YWJsZV09XCJ0cnVlXCJcbiAgICBbZ3Jvd109XCJ0cnVlXCJcbiAgICBbYWN0aXZlU29ydF09XCJpc1NvcnRlZEJ5KCdyZXNvdXJjZVRpdGxlT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpXCJcbiAgICAoc29ydENoYW5nZSk9XCJzZXRTb3J0QnkoJ3Jlc291cmNlVGl0bGVPYmplY3QuZGVmYXVsdC5rZXl3b3JkJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudGl0bGU8L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2NlbGwgbGV0LWl0ZW0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTIgbWF4LXctZnVsbCBmb250LXNlbWlib2xkXCI+XG4gICAgICAgIDxzcGFuIGRhdGEtY3k9XCJyZXN1bHRJdGVtVGl0bGVcIiBjbGFzcz1cIm92ZXJmbG93LWhpZGRlbiB0ZXh0LWVsbGlwc2lzXCI+e3tcbiAgICAgICAgICBpdGVtLnRpdGxlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8Z24tdWktYmFkZ2VcbiAgICAgICAgICAqbmdJZj1cImhhc0RyYWZ0KGl0ZW0pXCJcbiAgICAgICAgICBbc3R5bGUuLS1nbi11aS1iYWRnZS1wYWRkaW5nXT1cIicwLjJlbSAwLjZlbSdcIlxuICAgICAgICAgIFtzdHlsZS4tLWduLXVpLWJhZGdlLXRleHQtc2l6ZV09XCInMTJweCdcIlxuICAgICAgICAgIFtzdHlsZS4tLWduLXVpLWJhZGdlLXRleHQtY29sb3JdPVwiJyMzZDIwMDYnXCJcbiAgICAgICAgICBbc3R5bGUuLS1nbi11aS1iYWRnZS1iYWNrZ3JvdW5kLWNvbG9yXT1cIicjZmZiYzdiJ1wiXG4gICAgICAgICAgW3N0eWxlLi0tZ24tdWktYmFkZ2Utcm91bmRlZF09XCInNHB4J1wiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiB0cmFuc2xhdGU+ZGFzaGJvYXJkLnJlY29yZHMuaGFzRHJhZnQ8L3NwYW4+XG4gICAgICAgIDwvZ24tdWktYmFkZ2U+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2duLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbj5cblxuICA8IS0tIEZPUk1BVFMgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uIFt3aWR0aF09XCInOXJlbSdcIj5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuZm9ybWF0czwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtaXRlbT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmbGV4IGp1c3RpZnktc3RhcnQgaXRlbXMtY2VudGVyIGdhcC0yIGZvbnQtbWVkaXVtXCJcbiAgICAgICAgKm5nSWY9XCJnZXRSZWNvcmRGb3JtYXRzKGl0ZW0pIGFzIGZvcm1hdHNcIlxuICAgICAgICBbdGl0bGVdPVwiZm9ybWF0cy5qb2luKCcsICcpXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImJhZGdlLWJ0biBtaW4tdy1bNDVweF0gdGV4dC14cyB0ZXh0LWdyYXktOTAwIHB4LTIgc2hyaW5rLTBcIlxuICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEJhZGdlQ29sb3IoZm9ybWF0c1swXSlcIlxuICAgICAgICAgICpuZ0lmPVwiZm9ybWF0c1swXVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBmb3JtYXRzWzBdIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImJhZGdlLWJ0biBtaW4tdy1bNDVweF0gdGV4dC14cyB0ZXh0LWdyYXktOTAwIHB4LTIgc2hyaW5rLTBcIlxuICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEJhZGdlQ29sb3IoZm9ybWF0c1sxXSlcIlxuICAgICAgICAgICpuZ0lmPVwiZm9ybWF0c1sxXVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBmb3JtYXRzWzFdIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNocmluay0wIHRleHQteHNcIiAqbmdJZj1cImZvcm1hdHMuc2xpY2UoMikubGVuZ3RoID4gMFwiPlxuICAgICAgICAgIDxzcGFuPit7eyBmb3JtYXRzLnNsaWNlKDIpLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCIhZ2V0UmVjb3JkRm9ybWF0cyhpdGVtKVwiPjwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gT1dORVIgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uXG4gICAgW3dpZHRoXT1cIicxMnJlbSdcIlxuICAgIFtzb3J0YWJsZV09XCJ0cnVlXCJcbiAgICBbYWN0aXZlU29ydF09XCJpc1NvcnRlZEJ5KCdyZWNvcmRPd25lcicpXCJcbiAgICAoc29ydENoYW5nZSk9XCJzZXRTb3J0QnkoJ3JlY29yZE93bmVyJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5zZWFyY2guZmlsdGVycy51c2VyPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPG5nLWljb24gbmFtZT1cImljb25vaXJVc2VyXCIgc2l6ZT1cIjE2cHhcIj48L25nLWljb24+XG4gICAgICA8c3BhbiBkYXRhLWN5PVwib3duZXJJbmZvXCIgY2xhc3M9XCJ0ZXh0LXhzXCI+e3tcbiAgICAgICAgZm9ybWF0VXNlckluZm8oaXRlbS5leHRyYXM/Lm93bmVySW5mbylcbiAgICAgIH19PC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gU1RBVFVTIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbiBbd2lkdGhdPVwiJzZyZW0nXCI+XG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+XG4gICAgICA8c3BhbiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnN0YXR1czwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtaXRlbT5cbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC14c1wiPlxuICAgICAgICB7e1xuICAgICAgICAgIChpdGVtLmV4dHJhcz8uWydpc1B1Ymxpc2hlZFRvQWxsJ11cbiAgICAgICAgICAgID8gJ3JlY29yZC5tZXRhZGF0YS5zdGF0dXMucHVibGlzaGVkJ1xuICAgICAgICAgICAgOiAncmVjb3JkLm1ldGFkYXRhLnN0YXR1cy5ub3RQdWJsaXNoZWQnXG4gICAgICAgICAgKSB8IHRyYW5zbGF0ZVxuICAgICAgICB9fTwvc3BhblxuICAgICAgPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gVVBEQVRFIERBVEUgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uXG4gICAgW3dpZHRoXT1cIic4cmVtJ1wiXG4gICAgW3NvcnRhYmxlXT1cInRydWVcIlxuICAgIFthY3RpdmVTb3J0XT1cImlzU29ydGVkQnkoJ2NoYW5nZURhdGUnKVwiXG4gICAgKHNvcnRDaGFuZ2UpPVwic2V0U29ydEJ5KCdjaGFuZ2VEYXRlJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5zZWFyY2guZmlsdGVycy5jaGFuZ2VEYXRlPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggdGV4dC1sZWZ0IHctZnVsbCB0ZXh0LXhzXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgaXRlbS5leHRyYXM/LlsnaXNQdWJsaXNoZWRUb0FsbCddXG4gICAgICAgICAgICA/IGRhdGVUb1N0cmluZyhpdGVtLnJlY29yZFVwZGF0ZWQpXG4gICAgICAgICAgICA6ICctJ1xuICAgICAgICB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9nbi11aS1pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4+XG5cbiAgPCEtLSBBQ1RJT04gTUVOVSBDT0xVTU4gLS0+XG4gIDxnbi11aS1pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4+XG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+IDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICBjZGtPdmVybGF5T3JpZ2luXG4gICAgICAgICNhY3Rpb25NZW51QnV0dG9uXG4gICAgICAgIChidXR0b25DbGljayk9XCJvcGVuQWN0aW9uTWVudShpdGVtLCB0ZW1wbGF0ZSlcIlxuICAgICAgICB0eXBlPVwibGlnaHRcIlxuICAgICAgICBkYXRhLXRlc3Q9XCJyZWNvcmQtbWVudS1idXR0b25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiXG4gICAgICAgICAgKCFpdGVtLmV4dHJhcz8uZWRpdCAmJiAhaXNEcmFmdFBhZ2UpIHx8IGl0ZW0ua2luZCAhPT0gJ2RhdGFzZXQnXG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3RleHQtcHVycGxlLWxpZ2h0JzpcbiAgICAgICAgICAgICAgKCFpdGVtLmV4dHJhcz8uZWRpdCAmJiAhaXNEcmFmdFBhZ2UpIHx8IGl0ZW0ua2luZCAhPT0gJ2RhdGFzZXQnLFxuICAgICAgICAgIH1cIlxuICAgICAgICAgIG5hbWU9XCJtYXRNb3JlVmVydFwiXG4gICAgICAgID48L25nLWljb24+XG4gICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gICAgICAgIDxnbi11aS1hY3Rpb24tbWVudVxuICAgICAgICAgIFtjYW5EdXBsaWNhdGVdPVwiY2FuRHVwbGljYXRlKGl0ZW0pICYmICFpc0R1cGxpY2F0aW5nXCJcbiAgICAgICAgICBbY2FuRGVsZXRlXT1cImNhbkRlbGV0ZShpdGVtKVwiXG4gICAgICAgICAgW2lzRHJhZnRQYWdlXT1cImlzRHJhZnRQYWdlXCJcbiAgICAgICAgICAoZHVwbGljYXRlKT1cImhhbmRsZUR1cGxpY2F0ZShpdGVtKVwiXG4gICAgICAgICAgKGRlbGV0ZSk9XCJoYW5kbGVEZWxldGUoaXRlbSlcIlxuICAgICAgICAgIChjbG9zZUFjdGlvbk1lbnUpPVwiY2xvc2VBY3Rpb25NZW51KClcIlxuICAgICAgICAgIChyb2xsYmFjayk9XCJoYW5kbGVSb2xsYmFjayhpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9nbi11aS1hY3Rpb24tbWVudT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9nbi11aS1pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4+XG48L2duLXVpLWludGVyYWN0aXZlLXRhYmxlPlxuIl19
208
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3NlYXJjaC9zcmMvbGliL3Jlc3VsdHMtdGFibGUvcmVzdWx0cy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3NlYXJjaC9zcmMvbGliL3Jlc3VsdHMtdGFibGUvcmVzdWx0cy10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFBO0FBTXRCLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckYsT0FBTyxFQUNMLCtCQUErQixFQUMvQix5QkFBeUIsR0FDMUIsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM3QyxPQUFPLEVBQ0wsV0FBVyxFQUVYLGNBQWMsRUFDZCxhQUFhLEVBQ2IsYUFBYSxFQUNiLGlCQUFpQixHQUNsQixNQUFNLHdDQUF3QyxDQUFBO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDOUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE9BQU8s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b2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkcmVuLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7XG4gIEZpZWxkU29ydCxcbiAgU29ydEJ5RmllbGQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3NlYXJjaCdcbmltcG9ydCB7IEJhZGdlQ29tcG9uZW50LCBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7XG4gIEludGVyYWN0aXZlVGFibGVDb2x1bW5Db21wb25lbnQsXG4gIEludGVyYWN0aXZlVGFibGVDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYydcbmltcG9ydCB7XG4gIERhdGVTZXJ2aWNlLFxuICBGaWxlRm9ybWF0LFxuICBmb3JtYXRVc2VySW5mbyxcbiAgZ2V0QmFkZ2VDb2xvcixcbiAgZ2V0RmlsZUZvcm1hdCxcbiAgZ2V0Rm9ybWF0UHJpb3JpdHksXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEFjdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2FjdGlvbi1tZW51L2FjdGlvbi1tZW51LmNvbXBvbmVudCdcbmltcG9ydCB7IE5nSWNvbkNvbXBvbmVudCwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBpY29ub2lyVXNlciwgaWNvbm9pckxvY2ssIGljb25vaXJUcmFuc2xhdGUgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcbmltcG9ydCB7IENka092ZXJsYXlPcmlnaW4sIE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSdcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IG1hdE1vcmVWZXJ0IH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZXN1bHRzLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc3VsdHMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZXN1bHRzLXRhYmxlLmNvbXBvbmVudC5jc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBJbnRlcmFjdGl2ZVRhYmxlQ29tcG9uZW50LFxuICAgIEludGVyYWN0aXZlVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIEJhZGdlQ29tcG9uZW50LFxuICAgIEFjdGlvbk1lbnVDb21wb25lbnQsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICAgIENka092ZXJsYXlPcmlnaW4sXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7IGljb25vaXJVc2VyLCBpY29ub2lyTG9jaywgaWNvbm9pclRyYW5zbGF0ZSwgbWF0TW9yZVZlcnQgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFJlc3VsdHNUYWJsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHJlY29yZHM6IENhdGFsb2dSZWNvcmRbXSA9IFtdXG4gIEBJbnB1dCgpIHNlbGVjdGVkUmVjb3Jkc0lkZW50aWZpZXJzOiBzdHJpbmdbXSA9IFtdXG4gIEBJbnB1dCgpIHNvcnRPcmRlcjogU29ydEJ5RmllbGQgPSBudWxsXG4gIEBJbnB1dCgpIGhhc0RyYWZ0OiAocmVjb3JkOiBDYXRhbG9nUmVjb3JkKSA9PiBib29sZWFuID0gKCkgPT4gZmFsc2VcbiAgQElucHV0KCkgY2FuRHVwbGljYXRlOiAocmVjb3JkOiBDYXRhbG9nUmVjb3JkKSA9PiBib29sZWFuID0gKCkgPT4gdHJ1ZVxuICBASW5wdXQoKSBjYW5EZWxldGU6IChyZWNvcmQ6IENhdGFsb2dSZWNvcmQpID0+IGJvb2xlYW4gPSAoKSA9PiB0cnVlXG4gIEBJbnB1dCgpIGlzRHJhZnRQYWdlID0gZmFsc2VcbiAgQElucHV0KCkgaXNEdXBsaWNhdGluZyA9IGZhbHNlXG5cbiAgLy8gZW1pdHMgdGhlIGNvbHVtbiAoZmllbGQpIGFzIHdlbGwgYXMgdGhlIG9yZGVyXG4gIEBPdXRwdXQoKSBzb3J0QnlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFtzdHJpbmcsICdhc2MnIHwgJ2Rlc2MnXT4oKVxuICBAT3V0cHV0KCkgcmVjb3JkQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPENhdGFsb2dSZWNvcmQ+KClcbiAgQE91dHB1dCgpIGR1cGxpY2F0ZVJlY29yZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q2F0YWxvZ1JlY29yZD4oKVxuICBAT3V0cHV0KCkgZGVsZXRlUmVjb3JkID0gbmV3IEV2ZW50RW1pdHRlcjxDYXRhbG9nUmVjb3JkPigpXG4gIEBPdXRwdXQoKSByb2xsYmFja0RyYWZ0ID0gbmV3IEV2ZW50RW1pdHRlcjxDYXRhbG9nUmVjb3JkPigpXG4gIEBPdXRwdXQoKSByZWNvcmRzU2VsZWN0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIFtDYXRhbG9nUmVjb3JkW10sIGJvb2xlYW5dXG4gID4oKVxuXG4gIEBWaWV3Q2hpbGRyZW4oJ2FjdGlvbk1lbnVCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgYWN0aW9uTWVudUJ1dHRvbnMhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj5cbiAgcHJpdmF0ZSBvdmVybGF5UmVmITogT3ZlcmxheVJlZlxuXG4gIGlzQWN0aW9uTWVudU9wZW4gPSBmYWxzZVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgb3BlbkFjdGlvbk1lbnUoaXRlbSwgdGVtcGxhdGUpIHtcbiAgICB0aGlzLmlzQWN0aW9uTWVudU9wZW4gPSB0cnVlXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnJlY29yZHMuaW5kZXhPZihpdGVtKVxuICAgIGNvbnN0IGJ1dHRvbkVsZW1lbnQgPSB0aGlzLmFjdGlvbk1lbnVCdXR0b25zLnRvQXJyYXkoKVtpbmRleF1cblxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhidXR0b25FbGVtZW50KVxuICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnModHJ1ZSlcbiAgICAgIC53aXRoUHVzaCh0cnVlKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgIH0sXG4gICAgICBdKVxuXG4gICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCcsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICB9KVxuXG4gICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRlbXBsYXRlLCB0aGlzLnZpZXdDb250YWluZXJSZWYpXG5cbiAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHBvcnRhbClcblxuICAgIHRoaXMub3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgICB9KVxuICB9XG5cbiAgY2xvc2VBY3Rpb25NZW51KCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMuaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuXG4gIGRhdGVUb1N0cmluZyhkYXRlOiBEYXRlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlU2VydmljZS5mb3JtYXREYXRlKGRhdGUsIHtcbiAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgIG1vbnRoOiAnbG9uZycsXG4gICAgICBkYXk6ICdudW1lcmljJyxcbiAgICAgIHRpbWVab25lOiAnVVRDJyxcbiAgICB9KVxuICB9XG5cbiAgZ2V0UmVjb3JkRm9ybWF0cyhyZWNvcmQ6IENhdGFsb2dSZWNvcmQpOiBGaWxlRm9ybWF0W10ge1xuICAgIGlmIChyZWNvcmQua2luZCA9PT0gJ3NlcnZpY2UnIHx8ICEoJ29ubGluZVJlc291cmNlcycgaW4gcmVjb3JkKSkge1xuICAgICAgcmV0dXJuIFtdXG4gICAgfVxuICAgIGNvbnN0IGZvcm1hdHMgPSBBcnJheS5mcm9tKFxuICAgICAgbmV3IFNldChcbiAgICAgICAgcmVjb3JkLm9ubGluZVJlc291cmNlcy5tYXAoKG9ubGluZVJlc291cmNlKSA9PlxuICAgICAgICAgIGdldEZpbGVGb3JtYXQob25saW5lUmVzb3VyY2UpXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLmZpbHRlcigoZm9ybWF0KSA9PiAhIWZvcm1hdClcbiAgICBmb3JtYXRzLnNvcnQoKGEsIGIpID0+IGdldEZvcm1hdFByaW9yaXR5KGIpIC0gZ2V0Rm9ybWF0UHJpb3JpdHkoYSkpXG4gICAgcmV0dXJuIGZvcm1hdHNcbiAgfVxuXG4gIGZvcm1hdFVzZXJJbmZvKHVzZXJJbmZvOiBzdHJpbmcgfCB1bmtub3duKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZm9ybWF0VXNlckluZm8odXNlckluZm8pXG4gIH1cblxuICBnZXRCYWRnZUNvbG9yKGZvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldEJhZGdlQ29sb3IoZm9ybWF0KVxuICB9XG5cbiAgaGFuZGxlUmVjb3JkQ2xpY2soaXRlbTogQ2F0YWxvZ1JlY29yZCkge1xuICAgIGlmICgoaXRlbT8uZXh0cmFzPy5lZGl0IHx8IHRoaXMuaXNEcmFmdFBhZ2UpICYmIGl0ZW0ua2luZCA9PT0gJ2RhdGFzZXQnKSB7XG4gICAgICB0aGlzLnJlY29yZENsaWNrLmVtaXQoaXRlbSBhcyBDYXRhbG9nUmVjb3JkKVxuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUR1cGxpY2F0ZShpdGVtOiB1bmtub3duKSB7XG4gICAgdGhpcy5kdXBsaWNhdGVSZWNvcmQuZW1pdChpdGVtIGFzIENhdGFsb2dSZWNvcmQpXG4gIH1cblxuICBoYW5kbGVEZWxldGUoaXRlbTogdW5rbm93bikge1xuICAgIHRoaXMuZGVsZXRlUmVjb3JkLmVtaXQoaXRlbSBhcyBDYXRhbG9nUmVjb3JkKVxuICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgfVxuXG4gIGhhbmRsZVJvbGxiYWNrKGl0ZW06IHVua25vd24pIHtcbiAgICB0aGlzLnJvbGxiYWNrRHJhZnQuZW1pdChpdGVtIGFzIENhdGFsb2dSZWNvcmQpXG4gICAgdGhpcy5jbG9zZUFjdGlvbk1lbnUoKVxuICB9XG5cbiAgc2V0U29ydEJ5KGNvbDogc3RyaW5nLCBvcmRlcjogJ2FzYycgfCAnZGVzYycpIHtcbiAgICB0aGlzLnNvcnRCeUNoYW5nZS5lbWl0KFtjb2wsIG9yZGVyXSlcbiAgfVxuXG4gIGlzU29ydGVkQnkoY29sOiBzdHJpbmcpOiAnZGVzYycgfCAnYXNjJyB8IG51bGwge1xuICAgIGlmICghdGhpcy5zb3J0T3JkZXIpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IHNvcnRBcnJheSA9IEFycmF5LmlzQXJyYXkodGhpcy5zb3J0T3JkZXJbMF0pXG4gICAgICA/ICh0aGlzLnNvcnRPcmRlciBhcyBGaWVsZFNvcnRbXSlcbiAgICAgIDogKFt0aGlzLnNvcnRPcmRlcl0gYXMgRmllbGRTb3J0W10pXG4gICAgZm9yIChjb25zdCBzb3J0IG9mIHNvcnRBcnJheSkge1xuICAgICAgaWYgKHNvcnRbMV0gPT09IGNvbCkge1xuICAgICAgICByZXR1cm4gc29ydFswXVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgaXNDaGVja2VkKHJlY29yZDogQ2F0YWxvZ1JlY29yZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkUmVjb3Jkc0lkZW50aWZpZXJzLmluY2x1ZGVzKHJlY29yZC51bmlxdWVJZGVudGlmaWVyKVxuICB9XG5cbiAgaGFuZGxlUmVjb3JkU2VsZWN0ZWRDaGFuZ2Uoc2VsZWN0ZWQ6IGJvb2xlYW4sIHJlY29yZDogQ2F0YWxvZ1JlY29yZCkge1xuICAgIHRoaXMucmVjb3Jkc1NlbGVjdGVkQ2hhbmdlLmVtaXQoW1tyZWNvcmRdLCBzZWxlY3RlZF0pXG4gIH1cblxuICBpc011bHRpbGluZ3VhbChyZWNvcmQ6IENhdGFsb2dSZWNvcmQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcmVjb3JkLm90aGVyTGFuZ3VhZ2VzLmxlbmd0aCA+IDBcbiAgfVxuXG4gIGdldFR4dEhvdmVyTXVsdGlsaW5ndWFsKHJlY29yZDogQ2F0YWxvZ1JlY29yZCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZGFzaGJvYXJkLnJlY29yZHMuaXNNdWx0aWxpbmd1YWwnLCB7XG4gICAgICBsYW5ndWFnZXM6IFsuLi5bcmVjb3JkLmRlZmF1bHRMYW5ndWFnZV0sIC4uLnJlY29yZC5vdGhlckxhbmd1YWdlc10uam9pbihcbiAgICAgICAgJywgJ1xuICAgICAgKSxcbiAgICB9KVxuICB9XG59XG4iLCI8Z24tdWktaW50ZXJhY3RpdmUtdGFibGVcbiAgW2l0ZW1zXT1cInJlY29yZHNcIlxuICBbaXNEcmFmdFBhZ2VdPVwiaXNEcmFmdFBhZ2VcIlxuICAoaXRlbUNsaWNrKT1cImhhbmRsZVJlY29yZENsaWNrKCRldmVudClcIlxuPlxuICA8IS0tIFNFTEVDVEVEIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbiBbd2lkdGhdPVwiJzNyZW0nXCI+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtIGxldC1pPVwiaW5kZXhcIj5cbiAgICAgIDxuZy1pY29uXG4gICAgICAgIG5hbWU9XCJpY29ub2lyTG9ja1wiXG4gICAgICAgIGNsYXNzPVwidGV4dC1wdXJwbGVcIlxuICAgICAgICAqbmdJZj1cIighaXRlbS5leHRyYXM/LmVkaXQgJiYgIWlzRHJhZnRQYWdlKSB8fCBpdGVtLmtpbmQgIT09ICdkYXRhc2V0J1wiXG4gICAgICA+PC9uZy1pY29uPlxuICAgICAgPGduLXVpLWNoZWNrYm94XG4gICAgICAgICpuZ0lmPVwiKGl0ZW0uZXh0cmFzPy5lZGl0IHx8IGlzRHJhZnRQYWdlKSAmJiBpdGVtLmtpbmQgPT09ICdkYXRhc2V0J1wiXG4gICAgICAgIFtjaGVja2VkXT1cImlzQ2hlY2tlZChpdGVtKVwiXG4gICAgICAgIChjaGFuZ2VkKT1cImhhbmRsZVJlY29yZFNlbGVjdGVkQ2hhbmdlKCRldmVudCwgaXRlbSlcIlxuICAgICAgICBjbGFzcz1cIi1tLTJcIlxuICAgICAgICB0eXBlPVwiZGVmYXVsdFwiXG4gICAgICA+PC9nbi11aS1jaGVja2JveD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2duLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbj5cblxuICA8IS0tIFRJVExFIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtblxuICAgIFtzb3J0YWJsZV09XCJ0cnVlXCJcbiAgICBbZ3Jvd109XCJ0cnVlXCJcbiAgICBbYWN0aXZlU29ydF09XCJpc1NvcnRlZEJ5KCdyZXNvdXJjZVRpdGxlT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpXCJcbiAgICAoc29ydENoYW5nZSk9XCJzZXRTb3J0QnkoJ3Jlc291cmNlVGl0bGVPYmplY3QuZGVmYXVsdC5rZXl3b3JkJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEudGl0bGU8L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2NlbGwgbGV0LWl0ZW0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTIgbWF4LXctZnVsbCBmb250LXNlbWlib2xkXCI+XG4gICAgICAgIDxzcGFuIGRhdGEtY3k9XCJyZXN1bHRJdGVtVGl0bGVcIiBjbGFzcz1cIm92ZXJmbG93LWhpZGRlbiB0ZXh0LWVsbGlwc2lzXCI+e3tcbiAgICAgICAgICBpdGVtLnRpdGxlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8Z24tdWktYmFkZ2VcbiAgICAgICAgICAqbmdJZj1cImhhc0RyYWZ0KGl0ZW0pXCJcbiAgICAgICAgICBbc3R5bGUuLS1nbi11aS1iYWRnZS1wYWRkaW5nXT1cIicwLjJlbSAwLjZlbSdcIlxuICAgICAgICAgIFtzdHlsZS4tLWduLXVpLWJhZGdlLXRleHQtc2l6ZV09XCInMTJweCdcIlxuICAgICAgICAgIFtzdHlsZS4tLWduLXVpLWJhZGdlLXRleHQtY29sb3JdPVwiJyMzZDIwMDYnXCJcbiAgICAgICAgICBbc3R5bGUuLS1nbi11aS1iYWRnZS1iYWNrZ3JvdW5kLWNvbG9yXT1cIicjZmZiYzdiJ1wiXG4gICAgICAgICAgW3N0eWxlLi0tZ24tdWktYmFkZ2Utcm91bmRlZF09XCInNHB4J1wiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiB0cmFuc2xhdGU+ZGFzaGJvYXJkLnJlY29yZHMuaGFzRHJhZnQ8L3NwYW4+XG4gICAgICAgIDwvZ24tdWktYmFkZ2U+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2duLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbj5cblxuICA8IS0tIEZPUk1BVFMgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uIFt3aWR0aF09XCInOXJlbSdcIj5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5yZWNvcmQubWV0YWRhdGEuZm9ybWF0czwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtaXRlbT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmbGV4IGp1c3RpZnktc3RhcnQgaXRlbXMtY2VudGVyIGdhcC0yIGZvbnQtbWVkaXVtXCJcbiAgICAgICAgKm5nSWY9XCJnZXRSZWNvcmRGb3JtYXRzKGl0ZW0pIGFzIGZvcm1hdHNcIlxuICAgICAgICBbdGl0bGVdPVwiZm9ybWF0cy5qb2luKCcsICcpXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImJhZGdlLWJ0biBtaW4tdy1bNDVweF0gdGV4dC14cyB0ZXh0LWdyYXktOTAwIHB4LTIgc2hyaW5rLTBcIlxuICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEJhZGdlQ29sb3IoZm9ybWF0c1swXSlcIlxuICAgICAgICAgICpuZ0lmPVwiZm9ybWF0c1swXVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBmb3JtYXRzWzBdIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImJhZGdlLWJ0biBtaW4tdy1bNDVweF0gdGV4dC14cyB0ZXh0LWdyYXktOTAwIHB4LTIgc2hyaW5rLTBcIlxuICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEJhZGdlQ29sb3IoZm9ybWF0c1sxXSlcIlxuICAgICAgICAgICpuZ0lmPVwiZm9ybWF0c1sxXVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBmb3JtYXRzWzFdIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNocmluay0wIHRleHQteHNcIiAqbmdJZj1cImZvcm1hdHMuc2xpY2UoMikubGVuZ3RoID4gMFwiPlxuICAgICAgICAgIDxzcGFuPit7eyBmb3JtYXRzLnNsaWNlKDIpLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCIhZ2V0UmVjb3JkRm9ybWF0cyhpdGVtKVwiPjwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gT1dORVIgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uXG4gICAgW3dpZHRoXT1cIicxMnJlbSdcIlxuICAgIFtzb3J0YWJsZV09XCJ0cnVlXCJcbiAgICBbYWN0aXZlU29ydF09XCJpc1NvcnRlZEJ5KCdyZWNvcmRPd25lcicpXCJcbiAgICAoc29ydENoYW5nZSk9XCJzZXRTb3J0QnkoJ3JlY29yZE93bmVyJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5zZWFyY2guZmlsdGVycy51c2VyPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPG5nLWljb24gbmFtZT1cImljb25vaXJVc2VyXCIgc2l6ZT1cIjE2cHhcIj48L25nLWljb24+XG4gICAgICA8c3BhbiBkYXRhLWN5PVwib3duZXJJbmZvXCIgY2xhc3M9XCJ0ZXh0LXhzXCI+e3tcbiAgICAgICAgZm9ybWF0VXNlckluZm8oaXRlbS5leHRyYXM/Lm93bmVySW5mbylcbiAgICAgIH19PC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gU1RBVFVTIENPTFVNTiAtLT5cbiAgPGduLXVpLWludGVyYWN0aXZlLXRhYmxlLWNvbHVtbiBbd2lkdGhdPVwiJzZyZW0nXCI+XG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+XG4gICAgICA8c3BhbiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLnN0YXR1czwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtaXRlbT5cbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC14c1wiPlxuICAgICAgICB7e1xuICAgICAgICAgIChpdGVtLmV4dHJhcz8uWydpc1B1Ymxpc2hlZFRvQWxsJ11cbiAgICAgICAgICAgID8gJ3JlY29yZC5tZXRhZGF0YS5zdGF0dXMucHVibGlzaGVkJ1xuICAgICAgICAgICAgOiAncmVjb3JkLm1ldGFkYXRhLnN0YXR1cy5ub3RQdWJsaXNoZWQnXG4gICAgICAgICAgKSB8IHRyYW5zbGF0ZVxuICAgICAgICB9fTwvc3BhblxuICAgICAgPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuXG4gIDwhLS0gVVBEQVRFIERBVEUgQ09MVU1OIC0tPlxuICA8Z24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uXG4gICAgW3dpZHRoXT1cIic4cmVtJ1wiXG4gICAgW3NvcnRhYmxlXT1cInRydWVcIlxuICAgIFthY3RpdmVTb3J0XT1cImlzU29ydGVkQnkoJ2NoYW5nZURhdGUnKVwiXG4gICAgKHNvcnRDaGFuZ2UpPVwic2V0U29ydEJ5KCdjaGFuZ2VEYXRlJywgJGV2ZW50KVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5zZWFyY2guZmlsdGVycy5jaGFuZ2VEYXRlPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggdGV4dC1sZWZ0IHctZnVsbCB0ZXh0LXhzXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgaXRlbS5leHRyYXM/LlsnaXNQdWJsaXNoZWRUb0FsbCddXG4gICAgICAgICAgICA/IGRhdGVUb1N0cmluZyhpdGVtLnJlY29yZFVwZGF0ZWQpXG4gICAgICAgICAgICA6ICctJ1xuICAgICAgICB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9nbi11aS1pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4+XG5cbiAgPCEtLSBBQ1RJT04gTUVOVSBDT0xVTU4gLS0+XG4gIDxnbi11aS1pbnRlcmFjdGl2ZS10YWJsZS1jb2x1bW4+XG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+IDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1pdGVtPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC00IHctZnVsbFwiPlxuICAgICAgICA8IS0tIElTIE1VTFRJTElOR1VBTCAtLT5cbiAgICAgICAgPG5nLWljb25cbiAgICAgICAgICAqbmdJZj1cImlzTXVsdGlsaW5ndWFsKGl0ZW0pXCJcbiAgICAgICAgICBkYXRhLWN5PVwibXVsdGlsaW5ndWFsLWluZGljYXRvclwiXG4gICAgICAgICAgbmFtZT1cImljb25vaXJUcmFuc2xhdGVcIlxuICAgICAgICAgIFthdHRyLnRpdGxlXT1cImdldFR4dEhvdmVyTXVsdGlsaW5ndWFsKGl0ZW0pXCJcbiAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPCEtLSBNT1JFIEFDVElPTlMgTUVOVSBCVVRUT04gLS0+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBjZGtPdmVybGF5T3JpZ2luXG4gICAgICAgICAgI2FjdGlvbk1lbnVCdXR0b25cbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwib3BlbkFjdGlvbk1lbnUoaXRlbSwgdGVtcGxhdGUpXCJcbiAgICAgICAgICB0eXBlPVwibGlnaHRcIlxuICAgICAgICAgIGRhdGEtdGVzdD1cInJlY29yZC1tZW51LWJ1dHRvblwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICAgICAgKCFpdGVtLmV4dHJhcz8uZWRpdCAmJiAhaXNEcmFmdFBhZ2UpIHx8IGl0ZW0ua2luZCAhPT0gJ2RhdGFzZXQnXG4gICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICd0ZXh0LXB1cnBsZS1saWdodCc6XG4gICAgICAgICAgICAgICAgKCFpdGVtLmV4dHJhcz8uZWRpdCAmJiAhaXNEcmFmdFBhZ2UpIHx8IGl0ZW0ua2luZCAhPT0gJ2RhdGFzZXQnLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICBuYW1lPVwibWF0TW9yZVZlcnRcIlxuICAgICAgICAgID48L25nLWljb24+XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICAgICAgICA8Z24tdWktYWN0aW9uLW1lbnVcbiAgICAgICAgICBbY2FuRHVwbGljYXRlXT1cImNhbkR1cGxpY2F0ZShpdGVtKSAmJiAhaXNEdXBsaWNhdGluZ1wiXG4gICAgICAgICAgW2NhbkRlbGV0ZV09XCJjYW5EZWxldGUoaXRlbSlcIlxuICAgICAgICAgIFtwYWdlXT1cImlzRHJhZnRQYWdlID8gJ2RyYWZ0JyA6ICdtYWluJ1wiXG4gICAgICAgICAgKGR1cGxpY2F0ZSk9XCJoYW5kbGVEdXBsaWNhdGUoaXRlbSlcIlxuICAgICAgICAgIChkZWxldGUpPVwiaGFuZGxlRGVsZXRlKGl0ZW0pXCJcbiAgICAgICAgICAoY2xvc2VBY3Rpb25NZW51KT1cImNsb3NlQWN0aW9uTWVudSgpXCJcbiAgICAgICAgICAocm9sbGJhY2spPVwiaGFuZGxlUm9sbGJhY2soaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgIDwvZ24tdWktYWN0aW9uLW1lbnU+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZ24tdWktaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uPlxuPC9nbi11aS1pbnRlcmFjdGl2ZS10YWJsZT5cbiJdfQ==
@@ -28,6 +28,7 @@ import { InteractiveTableComponent } from '../../../../../libs/ui/layout/src';
28
28
  import { NgIconsModule, provideNgIconsConfig } from '@ng-icons/core';
29
29
  import { matCloudDownloadOutline, matHomeWorkOutline, matMapOutline, } from '@ng-icons/material-icons/outline';
30
30
  import { matFace } from '@ng-icons/material-icons/baseline';
31
+ import { ActionMenuComponent } from './results-table/action-menu/action-menu.component';
31
32
  import * as i0 from "@angular/core";
32
33
  import * as i1 from "@ngx-translate/core";
33
34
  import * as i2 from "@ng-icons/core";
@@ -56,7 +57,8 @@ export class UiSearchModule {
56
57
  MatCheckboxModule,
57
58
  RouterLink,
58
59
  InteractiveTableComponent, i2.NgIconsModule, KindBadgeComponent,
59
- MetadataQualityComponent], exports: [RecordPreviewListComponent,
60
+ MetadataQualityComponent,
61
+ ActionMenuComponent], exports: [RecordPreviewListComponent,
60
62
  RecordPreviewCardComponent,
61
63
  RecordPreviewTextComponent,
62
64
  RecordPreviewTitleComponent,
@@ -67,7 +69,8 @@ export class UiSearchModule {
67
69
  ResultsHitsNumberComponent,
68
70
  ResultsHitsSearchKindComponent,
69
71
  RecordPreviewFeedComponent,
70
- RecordPreviewRowComponent] }); }
72
+ RecordPreviewRowComponent,
73
+ ActionMenuComponent] }); }
71
74
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiSearchModule, providers: [
72
75
  provideNgIconsConfig({
73
76
  size: '1.5em',
@@ -94,7 +97,8 @@ export class UiSearchModule {
94
97
  matHomeWorkOutline,
95
98
  }),
96
99
  KindBadgeComponent,
97
- MetadataQualityComponent, FacetsModule] }); }
100
+ MetadataQualityComponent,
101
+ ActionMenuComponent, FacetsModule] }); }
98
102
  }
99
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiSearchModule, decorators: [{
100
104
  type: NgModule,
@@ -137,6 +141,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
137
141
  }),
138
142
  KindBadgeComponent,
139
143
  MetadataQualityComponent,
144
+ ActionMenuComponent,
140
145
  ],
141
146
  exports: [
142
147
  RecordPreviewListComponent,
@@ -151,6 +156,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
151
156
  ResultsHitsSearchKindComponent,
152
157
  RecordPreviewFeedComponent,
153
158
  RecordPreviewRowComponent,
159
+ ActionMenuComponent,
154
160
  ],
155
161
  providers: [
156
162
  provideNgIconsConfig({
@@ -160,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
160
166
  ],
161
167
  }]
162
168
  }] });
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktc2VhcmNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvc2VhcmNoL3NyYy9saWIvdWktc2VhcmNoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQTtBQUM3RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQTtBQUNuRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQTtBQUM5RyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLHFCQUFxQixHQUN0QixNQUFNLHNDQUFzQyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzVFLE9BQU8sRUFBRSxzQkFB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O3dCQUM5Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIseUJBQXlCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixlQUFlLENBQUMsUUFBUSxFQUFFO3dCQUMxQixpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLFVBQVU7d0JBQ1YseUJBQXlCO3dCQUN6QixxSUFBcUk7d0JBQ3JJLGFBQWEsQ0FBQyxTQUFTLENBQUM7NEJBQ3RCLGFBQWE7NEJBQ2IsdUJBQXVCOzRCQUN2QixPQUFPOzRCQUNQLGtCQUFrQjt5QkFDbkIsQ0FBQzt3QkFDRixrQkFBa0I7d0JBQ2xCLHdCQUF3QjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLDJCQUEyQjt3QkFDM0IscUJBQXFCO3dCQUNyQixvQkFBb0I7d0JBQ3BCLFlBQVk7d0JBQ1osc0JBQXNCO3dCQUN0QiwwQkFBMEI7d0JBQzFCLDhCQUE4Qjt3QkFDOUIsMEJBQTBCO3dCQUMxQix5QkFBeUI7cUJBQzFCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxvQkFBb0IsQ0FBQzs0QkFDbkIsSUFBSSxFQUFFLE9BQU87eUJBQ2QsQ0FBQzt3QkFDRixFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsNkJBQTZCLEVBQUU7cUJBQzVFO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IFV0aWxTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBOZ3hEcm9wem9uZU1vZHVsZSB9IGZyb20gJ25neC1kcm9wem9uZSdcbmltcG9ydCB7IEZhY2V0c01vZHVsZSB9IGZyb20gJy4vZmFjZXRzL2ZhY2V0cy5tb2R1bGUnXG5pbXBvcnQgeyBSZWNvcmRNZXRyaWNDb21wb25lbnQgfSBmcm9tICcuL3JlY29yZC1tZXRyaWMvcmVjb3JkLW1ldHJpYy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRQcmV2aWV3Q2FyZENvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctY2FyZC9yZWNvcmQtcHJldmlldy1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZFByZXZpZXdMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmQtcHJldmlldy1saXN0L3JlY29yZC1wcmV2aWV3LWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld1Jvd0NvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctcm93L3JlY29yZC1wcmV2aWV3LXJvdy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRQcmV2aWV3VGV4dENvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctdGV4dC9yZWNvcmQtcHJldmlldy10ZXh0LmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZFByZXZpZXdUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctdGl0bGUvcmVjb3JkLXByZXZpZXctdGl0bGUuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVzdWx0c0hpdHNOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtaGl0cy1udW1iZXIvcmVzdWx0cy1oaXRzLW51bWJlci5jb21wb25lbnQnXG5pbXBvcnQgeyBSZXN1bHRzSGl0c1NlYXJjaEtpbmRDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtaGl0cy1zZWFyY2gta2luZC9yZXN1bHRzLWhpdHMtc2VhcmNoLWtpbmQuY29tcG9uZW50J1xuaW1wb3J0IHtcbiAgREVGQVVMVF9SRVNVTFRTX0xBWU9VVF9DT05GSUcsXG4gIFJFU1VMVFNfTEFZT1VUX0NPTkZJRyxcbn0gZnJvbSAnLi9yZXN1bHRzLWxpc3QvcmVzdWx0cy1sYXlvdXQuY29uZmlnJ1xuaW1wb3J0IHsgUmVzdWx0c0xpc3RDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtbGlzdC9yZXN1bHRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXcvcmVjb3JkLXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVGFnSW5wdXRNb2R1bGUgfSBmcm9tICduZ3gtY2hpcHMnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgUmVzdWx0c0xpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9yZXN1bHRzLWxpc3QtaXRlbS9yZXN1bHRzLWxpc3QtaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBVaVdpZGdldHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHtcbiAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICBVaUVsZW1lbnRzTW9kdWxlLFxuICBLaW5kQmFkZ2VDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld0ZlZWRDb21wb25lbnQgfSBmcm9tICcuL3JlY29yZC1wcmV2aWV3LWZlZWQvcmVjb3JkLXByZXZpZXctZmVlZC5jb21wb25lbnQnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnXG5pbXBvcnQgeyBJbnRlcmFjdGl2ZVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgTmdJY29uc01vZHVsZSwgcHJvdmlkZU5nSWNvbnNDb25maWcgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7XG4gIG1hdENsb3VkRG93bmxvYWRPdXRsaW5lLFxuICBtYXRIb21lV29ya091dGxpbmUsXG4gIG1hdE1hcE91dGxpbmUsXG59IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9vdXRsaW5lJ1xuaW1wb3J0IHsgbWF0RmFjZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUmVjb3JkUHJldmlld0NvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3TGlzdENvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3Q2FyZENvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3VGV4dENvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3VGl0bGVDb21wb25lbnQsXG4gICAgUmVjb3JkTWV0cmljQ29tcG9uZW50LFxuICAgIFJlc3VsdHNMaXN0Q29tcG9uZW50LFxuICAgIFJlc3VsdHNIaXRzTnVtYmVyQ29tcG9uZW50LFxuICAgIFJlc3VsdHNIaXRzU2VhcmNoS2luZENvbXBvbmVudCxcbiAgICBSZXN1bHRzTGlzdEl0ZW1Db21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld0ZlZWRDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld1Jvd0NvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBOZ3hEcm9wem9uZU1vZHVsZSxcbiAgICBGYWNldHNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBUYWdJbnB1dE1vZHVsZSxcbiAgICBVdGlsU2hhcmVkTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBVaUVsZW1lbnRzTW9kdWxlLFxuICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgIFJvdXRlckxpbmssXG4gICAgSW50ZXJhY3RpdmVUYWJsZUNvbXBvbmVudCxcbiAgICAvLyBGSVhNRTogdGhlc2UgaW1wb3J0cyBhcmUgcmVxdWlyZWQgYnkgbm9uLXN0YW5kYWxvbmUgY29tcG9uZW50cyBhbmQgc2hvdWxkIGJlIHJlbW92ZWQgb25jZSBhbGwgY29tcG9uZW50cyBoYXZlIGJlZW4gbWFkZSBzdGFuZGFsb25lXG4gICAgTmdJY29uc01vZHVsZS53aXRoSWNvbnMoe1xuICAgICAgbWF0TWFwT3V0bGluZSxcbiAgICAgIG1hdENsb3VkRG93bmxvYWRPdXRsaW5lLFxuICAgICAgbWF0RmFjZSxcbiAgICAgIG1hdEhvbWVXb3JrT3V0bGluZSxcbiAgICB9KSxcbiAgICBLaW5kQmFkZ2VDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgUmVjb3JkUHJldmlld0xpc3RDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld0NhcmRDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld1RleHRDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld1RpdGxlQ29tcG9uZW50LFxuICAgIFJlY29yZE1ldHJpY0NvbXBvbmVudCxcbiAgICBSZXN1bHRzTGlzdENvbXBvbmVudCxcbiAgICBGYWNldHNNb2R1bGUsXG4gICAgUmVjb3JkUHJldmlld0NvbXBvbmVudCxcbiAgICBSZXN1bHRzSGl0c051bWJlckNvbXBvbmVudCxcbiAgICBSZXN1bHRzSGl0c1NlYXJjaEtpbmRDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld0ZlZWRDb21wb25lbnQsXG4gICAgUmVjb3JkUHJldmlld1Jvd0NvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZU5nSWNvbnNDb25maWcoe1xuICAgICAgc2l6ZTogJzEuNWVtJyxcbiAgICB9KSxcbiAgICB7IHByb3ZpZGU6IFJFU1VMVFNfTEFZT1VUX0NPTkZJRywgdXNlVmFsdWU6IERFRkFVTFRfUkVTVUxUU19MQVlPVVRfQ09ORklHIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpU2VhcmNoTW9kdWxlIHt9XG4iXX0=
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktc2VhcmNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvc2VhcmNoL3NyYy9saWIvdWktc2VhcmNoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQTtBQUM3RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQTtBQUNuRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQTtBQUM5RyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLHFCQUFxQixHQUN0QixNQUFNLHNDQUFzQyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQzVFLE9BQU8sRUFBRSxzQkFB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d0JBQzFCLDBCQUEwQjt3QkFDMUIsMkJBQTJCO3dCQUMzQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQiw4QkFBOEI7d0JBQzlCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWUsQ0FBQyxRQUFRLEVBQUU7d0JBQzFCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsVUFBVTt3QkFDVix5QkFBeUI7d0JBQ3pCLHFJQUFxSTt3QkFDckksYUFBYSxDQUFDLFNBQVMsQ0FBQzs0QkFDdEIsYUFBYTs0QkFDYix1QkFBdUI7NEJBQ3ZCLE9BQU87NEJBQ1Asa0JBQWtCO3lCQUNuQixDQUFDO3dCQUNGLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDUCwwQkFBMEI7d0JBQzFCLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQiwyQkFBMkI7d0JBQzNCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQixZQUFZO3dCQUNaLHNCQUFzQjt3QkFDdEIsMEJBQTBCO3dCQUMxQiw4QkFBOEI7d0JBQzlCLDBCQUEwQjt3QkFDMUIseUJBQXlCO3dCQUN6QixtQkFBbUI7cUJBQ3BCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxvQkFBb0IsQ0FBQzs0QkFDbkIsSUFBSSxFQUFFLE9BQU87eUJBQ2QsQ0FBQzt3QkFDRixFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsNkJBQTZCLEVBQUU7cUJBQzVFO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IFV0aWxTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBOZ3hEcm9wem9uZU1vZHVsZSB9IGZyb20gJ25neC1kcm9wem9uZSdcbmltcG9ydCB7IEZhY2V0c01vZHVsZSB9IGZyb20gJy4vZmFjZXRzL2ZhY2V0cy5tb2R1bGUnXG5pbXBvcnQgeyBSZWNvcmRNZXRyaWNDb21wb25lbnQgfSBmcm9tICcuL3JlY29yZC1tZXRyaWMvcmVjb3JkLW1ldHJpYy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRQcmV2aWV3Q2FyZENvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctY2FyZC9yZWNvcmQtcHJldmlldy1jYXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZFByZXZpZXdMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmQtcHJldmlldy1saXN0L3JlY29yZC1wcmV2aWV3LWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld1Jvd0NvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctcm93L3JlY29yZC1wcmV2aWV3LXJvdy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRQcmV2aWV3VGV4dENvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctdGV4dC9yZWNvcmQtcHJldmlldy10ZXh0LmNvbXBvbmVudCdcbmltcG9ydCB7IFJlY29yZFByZXZpZXdUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXctdGl0bGUvcmVjb3JkLXByZXZpZXctdGl0bGUuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVzdWx0c0hpdHNOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtaGl0cy1udW1iZXIvcmVzdWx0cy1oaXRzLW51bWJlci5jb21wb25lbnQnXG5pbXBvcnQgeyBSZXN1bHRzSGl0c1NlYXJjaEtpbmRDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtaGl0cy1zZWFyY2gta2luZC9yZXN1bHRzLWhpdHMtc2VhcmNoLWtpbmQuY29tcG9uZW50J1xuaW1wb3J0IHtcbiAgREVGQVVMVF9SRVNVTFRTX0xBWU9VVF9DT05GSUcsXG4gIFJFU1VMVFNfTEFZT1VUX0NPTkZJRyxcbn0gZnJvbSAnLi9yZXN1bHRzLWxpc3QvcmVzdWx0cy1sYXlvdXQuY29uZmlnJ1xuaW1wb3J0IHsgUmVzdWx0c0xpc3RDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtbGlzdC9yZXN1bHRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVjb3JkLXByZXZpZXcvcmVjb3JkLXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVGFnSW5wdXRNb2R1bGUgfSBmcm9tICduZ3gtY2hpcHMnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgUmVzdWx0c0xpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9yZXN1bHRzLWxpc3QtaXRlbS9yZXN1bHRzLWxpc3QtaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBVaVdpZGdldHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHtcbiAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICBVaUVsZW1lbnRzTW9kdWxlLFxuICBLaW5kQmFkZ2VDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgUmVjb3JkUHJldmlld0ZlZWRDb21wb25lbnQgfSBmcm9tICcuL3JlY29yZC1wcmV2aWV3LWZlZWQvcmVjb3JkLXByZXZpZXctZmVlZC5jb21wb25lbnQnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnXG5pbXBvcnQgeyBJbnRlcmFjdGl2ZVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgTmdJY29uc01vZHVsZSwgcHJvdmlkZU5nSWNvbnNDb25maWcgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7XG4gIG1hdENsb3VkRG93bmxvYWRPdXRsaW5lLFxuICBtYXRIb21lV29ya091dGxpbmUsXG4gIG1hdE1hcE91dGxpbmUsXG59IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9vdXRsaW5lJ1xuaW1wb3J0IHsgbWF0RmFjZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IEFjdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL3Jlc3VsdHMtdGFibGUvYWN0aW9uLW1lbnUvYWN0aW9uLW1lbnUuY29tcG9uZW50J1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBSZWNvcmRQcmV2aWV3Q29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdMaXN0Q29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdDYXJkQ29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdUZXh0Q29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdUaXRsZUNvbXBvbmVudCxcbiAgICBSZWNvcmRNZXRyaWNDb21wb25lbnQsXG4gICAgUmVzdWx0c0xpc3RDb21wb25lbnQsXG4gICAgUmVzdWx0c0hpdHNOdW1iZXJDb21wb25lbnQsXG4gICAgUmVzdWx0c0hpdHNTZWFyY2hLaW5kQ29tcG9uZW50LFxuICAgIFJlc3VsdHNMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3RmVlZENvbXBvbmVudCxcbiAgICBSZWNvcmRQcmV2aWV3Um93Q29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIE5neERyb3B6b25lTW9kdWxlLFxuICAgIEZhY2V0c01vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFRhZ0lucHV0TW9kdWxlLFxuICAgIFV0aWxTaGFyZWRNb2R1bGUsXG4gICAgVWlXaWRnZXRzTW9kdWxlLFxuICAgIFVpSW5wdXRzTW9kdWxlLFxuICAgIFVpRWxlbWVudHNNb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgUm91dGVyTGluayxcbiAgICBJbnRlcmFjdGl2ZVRhYmxlQ29tcG9uZW50LFxuICAgIC8vIEZJWE1FOiB0aGVzZSBpbXBvcnRzIGFyZSByZXF1aXJlZCBieSBub24tc3RhbmRhbG9uZSBjb21wb25lbnRzIGFuZCBzaG91bGQgYmUgcmVtb3ZlZCBvbmNlIGFsbCBjb21wb25lbnRzIGhhdmUgYmVlbiBtYWRlIHN0YW5kYWxvbmVcbiAgICBOZ0ljb25zTW9kdWxlLndpdGhJY29ucyh7XG4gICAgICBtYXRNYXBPdXRsaW5lLFxuICAgICAgbWF0Q2xvdWREb3dubG9hZE91dGxpbmUsXG4gICAgICBtYXRGYWNlLFxuICAgICAgbWF0SG9tZVdvcmtPdXRsaW5lLFxuICAgIH0pLFxuICAgIEtpbmRCYWRnZUNvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQsXG4gICAgQWN0aW9uTWVudUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFJlY29yZFByZXZpZXdMaXN0Q29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdDYXJkQ29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdUZXh0Q29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdUaXRsZUNvbXBvbmVudCxcbiAgICBSZWNvcmRNZXRyaWNDb21wb25lbnQsXG4gICAgUmVzdWx0c0xpc3RDb21wb25lbnQsXG4gICAgRmFjZXRzTW9kdWxlLFxuICAgIFJlY29yZFByZXZpZXdDb21wb25lbnQsXG4gICAgUmVzdWx0c0hpdHNOdW1iZXJDb21wb25lbnQsXG4gICAgUmVzdWx0c0hpdHNTZWFyY2hLaW5kQ29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdGZWVkQ29tcG9uZW50LFxuICAgIFJlY29yZFByZXZpZXdSb3dDb21wb25lbnQsXG4gICAgQWN0aW9uTWVudUNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZU5nSWNvbnNDb25maWcoe1xuICAgICAgc2l6ZTogJzEuNWVtJyxcbiAgICB9KSxcbiAgICB7IHByb3ZpZGU6IFJFU1VMVFNfTEFZT1VUX0NPTkZJRywgdXNlVmFsdWU6IERFRkFVTFRfUkVTVUxUU19MQVlPVVRfQ09ORklHIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpU2VhcmNoTW9kdWxlIHt9XG4iXX0=
@@ -18,9 +18,50 @@ marker('language.pt');
18
18
  marker('language.ru');
19
19
  marker('language.zh');
20
20
  marker('language.sk');
21
+ marker('language.rm');
22
+ marker('language.ar');
23
+ marker('language.da');
24
+ marker('language.no');
25
+ marker('language.pl');
26
+ marker('language.sv');
27
+ marker('language.tr');
28
+ marker('language.hy');
29
+ marker('language.az');
30
+ marker('language.ka');
31
+ marker('language.uk');
32
+ marker('language.cy');
21
33
  export const DEFAULT_LANG = 'en';
22
34
  // Caution: changing this can break language selection from third parties!
23
35
  export const LANGUAGE_STORAGE_KEY = 'geonetwork-ui-language';
36
+ export const SUPPORTED_LANGUAGES = [
37
+ 'en',
38
+ 'nl',
39
+ 'fr',
40
+ 'de',
41
+ 'ko',
42
+ 'es',
43
+ 'cs',
44
+ 'ca',
45
+ 'fi',
46
+ 'is',
47
+ 'it',
48
+ 'pt',
49
+ 'ru',
50
+ 'zh',
51
+ 'sk',
52
+ 'rm',
53
+ 'ar',
54
+ 'da',
55
+ 'no',
56
+ 'pl',
57
+ 'sv',
58
+ 'tr',
59
+ 'hy',
60
+ 'az',
61
+ 'ka',
62
+ 'uk',
63
+ 'cy',
64
+ ];
24
65
  export function HttpLoaderFactory(http) {
25
66
  return new FileTranslateLoader(http, './assets/i18n/');
26
67
  }
@@ -41,4 +82,4 @@ export const TRANSLATE_DEFAULT_CONFIG = {
41
82
  deps: [HttpClient],
42
83
  },
43
84
  };
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMvbGliL2kxOG4uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDeEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBRWhFLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBRXJCLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUE7QUFFaEMsMEVBQTBFO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLHdCQUF3QixDQUFBO0FBRTVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFnQjtJQUNoRCxPQUFPLElBQUksbUJBQW1CLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUE7QUFDeEQsQ0FBQztBQUNELG9EQUFvRDtBQUNwRCxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0FBQ3hDLENBQUM7QUFDRCxNQUFNLGVBQWUsR0FBRztJQUN0QixPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFFBQVEsRUFBRSw4QkFBOEI7Q0FDekMsQ0FBQTtBQUNELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHO0lBQ3RDLFFBQVEsRUFBRSxlQUFlO0lBQ3pCLE1BQU0sRUFBRTtRQUNOLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLFVBQVUsRUFBRSxpQkFBaUI7UUFDN0IsZUFBZSxFQUFFLFlBQVk7UUFDN0IsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO0tBQ25CO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IFRyYW5zbGF0ZUNvbXBpbGVyLCBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyIH0gZnJvbSAnbmd4LXRyYW5zbGF0ZS1tZXNzYWdlZm9ybWF0LWNvbXBpbGVyJ1xuaW1wb3J0IHsgRmlsZVRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJy4vZmlsZS50cmFuc2xhdGUubG9hZGVyJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuXG5tYXJrZXIoJ2xhbmd1YWdlLmVuJylcbm1hcmtlcignbGFuZ3VhZ2UubmwnKVxubWFya2VyKCdsYW5ndWFnZS5mcicpXG5tYXJrZXIoJ2xhbmd1YWdlLmRlJylcbm1hcmtlcignbGFuZ3VhZ2Uua28nKVxubWFya2VyKCdsYW5ndWFnZS5lcycpXG5tYXJrZXIoJ2xhbmd1YWdlLmNzJylcbm1hcmtlcignbGFuZ3VhZ2UuY2EnKVxubWFya2VyKCdsYW5ndWFnZS5maScpXG5tYXJrZXIoJ2xhbmd1YWdlLmlzJylcbm1hcmtlcignbGFuZ3VhZ2UuaXQnKVxubWFya2VyKCdsYW5ndWFnZS5wdCcpXG5tYXJrZXIoJ2xhbmd1YWdlLnJ1Jylcbm1hcmtlcignbGFuZ3VhZ2UuemgnKVxubWFya2VyKCdsYW5ndWFnZS5zaycpXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0xBTkcgPSAnZW4nXG5cbi8vIENhdXRpb246IGNoYW5naW5nIHRoaXMgY2FuIGJyZWFrIGxhbmd1YWdlIHNlbGVjdGlvbiBmcm9tIHRoaXJkIHBhcnRpZXMhXG5leHBvcnQgY29uc3QgTEFOR1VBR0VfU1RPUkFHRV9LRVkgPSAnZ2VvbmV0d29yay11aS1sYW5ndWFnZSdcblxuZXhwb3J0IGZ1bmN0aW9uIEh0dHBMb2FkZXJGYWN0b3J5KGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgcmV0dXJuIG5ldyBGaWxlVHJhbnNsYXRlTG9hZGVyKGh0dHAsICcuL2Fzc2V0cy9pMThuLycpXG59XG4vL0RlcHJlY2F0ZWQsIGJ1dCBjdXJyZW50bHkgc3RpbGwgdXNlZCBpbiBkYXRhZmVlZGVyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGFuZ0Zyb21Ccm93c2VyKCkge1xuICByZXR1cm4gbmF2aWdhdG9yLmxhbmd1YWdlLnN1YnN0cigwLCAyKVxufVxuY29uc3QgQ09NUElMRVJfQ09ORklHID0ge1xuICBwcm92aWRlOiBUcmFuc2xhdGVDb21waWxlcixcbiAgdXNlQ2xhc3M6IFRyYW5zbGF0ZU1lc3NhZ2VGb3JtYXRDb21waWxlcixcbn1cbmV4cG9ydCBjb25zdCBUUkFOU0xBVEVfREVGQVVMVF9DT05GSUcgPSB7XG4gIGNvbXBpbGVyOiBDT01QSUxFUl9DT05GSUcsXG4gIGxvYWRlcjoge1xuICAgIHByb3ZpZGU6IFRyYW5zbGF0ZUxvYWRlcixcbiAgICB1c2VGYWN0b3J5OiBIdHRwTG9hZGVyRmFjdG9yeSxcbiAgICBkZWZhdWx0TGFuZ3VhZ2U6IERFRkFVTFRfTEFORyxcbiAgICBkZXBzOiBbSHR0cENsaWVudF0sXG4gIH0sXG59XG4iXX0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMvbGliL2kxOG4uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDeEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBRWhFLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBRXJCLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUE7QUFFaEMsMEVBQTBFO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLHdCQUF3QixDQUFBO0FBRTVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtDQUNMLENBQUE7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBZ0I7SUFDaEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hELENBQUM7QUFDRCxvREFBb0Q7QUFDcEQsTUFBTSxVQUFVLGtCQUFrQjtJQUNoQyxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUN4QyxDQUFDO0FBQ0QsTUFBTSxlQUFlLEdBQUc7SUFDdEIsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixRQUFRLEVBQUUsOEJBQThCO0NBQ3pDLENBQUE7QUFDRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRztJQUN0QyxRQUFRLEVBQUUsZUFBZTtJQUN6QixNQUFNLEVBQUU7UUFDTixPQUFPLEVBQUUsZUFBZTtRQUN4QixVQUFVLEVBQUUsaUJBQWlCO1FBQzdCLGVBQWUsRUFBRSxZQUFZO1FBQzdCLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQztLQUNuQjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBUcmFuc2xhdGVDb21waWxlciwgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZU1lc3NhZ2VGb3JtYXRDb21waWxlciB9IGZyb20gJ25neC10cmFuc2xhdGUtbWVzc2FnZWZvcm1hdC1jb21waWxlcidcbmltcG9ydCB7IEZpbGVUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICcuL2ZpbGUudHJhbnNsYXRlLmxvYWRlcidcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcblxubWFya2VyKCdsYW5ndWFnZS5lbicpXG5tYXJrZXIoJ2xhbmd1YWdlLm5sJylcbm1hcmtlcignbGFuZ3VhZ2UuZnInKVxubWFya2VyKCdsYW5ndWFnZS5kZScpXG5tYXJrZXIoJ2xhbmd1YWdlLmtvJylcbm1hcmtlcignbGFuZ3VhZ2UuZXMnKVxubWFya2VyKCdsYW5ndWFnZS5jcycpXG5tYXJrZXIoJ2xhbmd1YWdlLmNhJylcbm1hcmtlcignbGFuZ3VhZ2UuZmknKVxubWFya2VyKCdsYW5ndWFnZS5pcycpXG5tYXJrZXIoJ2xhbmd1YWdlLml0Jylcbm1hcmtlcignbGFuZ3VhZ2UucHQnKVxubWFya2VyKCdsYW5ndWFnZS5ydScpXG5tYXJrZXIoJ2xhbmd1YWdlLnpoJylcbm1hcmtlcignbGFuZ3VhZ2Uuc2snKVxubWFya2VyKCdsYW5ndWFnZS5ybScpXG5tYXJrZXIoJ2xhbmd1YWdlLmFyJylcbm1hcmtlcignbGFuZ3VhZ2UuZGEnKVxubWFya2VyKCdsYW5ndWFnZS5ubycpXG5tYXJrZXIoJ2xhbmd1YWdlLnBsJylcbm1hcmtlcignbGFuZ3VhZ2Uuc3YnKVxubWFya2VyKCdsYW5ndWFnZS50cicpXG5tYXJrZXIoJ2xhbmd1YWdlLmh5Jylcbm1hcmtlcignbGFuZ3VhZ2UuYXonKVxubWFya2VyKCdsYW5ndWFnZS5rYScpXG5tYXJrZXIoJ2xhbmd1YWdlLnVrJylcbm1hcmtlcignbGFuZ3VhZ2UuY3knKVxuXG5leHBvcnQgY29uc3QgREVGQVVMVF9MQU5HID0gJ2VuJ1xuXG4vLyBDYXV0aW9uOiBjaGFuZ2luZyB0aGlzIGNhbiBicmVhayBsYW5ndWFnZSBzZWxlY3Rpb24gZnJvbSB0aGlyZCBwYXJ0aWVzIVxuZXhwb3J0IGNvbnN0IExBTkdVQUdFX1NUT1JBR0VfS0VZID0gJ2dlb25ldHdvcmstdWktbGFuZ3VhZ2UnXG5cbmV4cG9ydCBjb25zdCBTVVBQT1JURURfTEFOR1VBR0VTID0gW1xuICAnZW4nLFxuICAnbmwnLFxuICAnZnInLFxuICAnZGUnLFxuICAna28nLFxuICAnZXMnLFxuICAnY3MnLFxuICAnY2EnLFxuICAnZmknLFxuICAnaXMnLFxuICAnaXQnLFxuICAncHQnLFxuICAncnUnLFxuICAnemgnLFxuICAnc2snLFxuICAncm0nLFxuICAnYXInLFxuICAnZGEnLFxuICAnbm8nLFxuICAncGwnLFxuICAnc3YnLFxuICAndHInLFxuICAnaHknLFxuICAnYXonLFxuICAna2EnLFxuICAndWsnLFxuICAnY3knLFxuXVxuXG5leHBvcnQgZnVuY3Rpb24gSHR0cExvYWRlckZhY3RvcnkoaHR0cDogSHR0cENsaWVudCkge1xuICByZXR1cm4gbmV3IEZpbGVUcmFuc2xhdGVMb2FkZXIoaHR0cCwgJy4vYXNzZXRzL2kxOG4vJylcbn1cbi8vRGVwcmVjYXRlZCwgYnV0IGN1cnJlbnRseSBzdGlsbCB1c2VkIGluIGRhdGFmZWVkZXJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMYW5nRnJvbUJyb3dzZXIoKSB7XG4gIHJldHVybiBuYXZpZ2F0b3IubGFuZ3VhZ2Uuc3Vic3RyKDAsIDIpXG59XG5jb25zdCBDT01QSUxFUl9DT05GSUcgPSB7XG4gIHByb3ZpZGU6IFRyYW5zbGF0ZUNvbXBpbGVyLFxuICB1c2VDbGFzczogVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyLFxufVxuZXhwb3J0IGNvbnN0IFRSQU5TTEFURV9ERUZBVUxUX0NPTkZJRyA9IHtcbiAgY29tcGlsZXI6IENPTVBJTEVSX0NPTkZJRyxcbiAgbG9hZGVyOiB7XG4gICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgIHVzZUZhY3Rvcnk6IEh0dHBMb2FkZXJGYWN0b3J5LFxuICAgIGRlZmF1bHRMYW5ndWFnZTogREVGQVVMVF9MQU5HLFxuICAgIGRlcHM6IFtIdHRwQ2xpZW50XSxcbiAgfSxcbn1cbiJdfQ==
@@ -15,6 +15,17 @@ export const LANG_3_TO_2_MAPPER = {
15
15
  chi: 'zh',
16
16
  slo: 'sk',
17
17
  roh: 'rm',
18
+ ara: 'ar',
19
+ dan: 'da',
20
+ nor: 'no',
21
+ pol: 'pl',
22
+ swe: 'sv',
23
+ tur: 'tr',
24
+ arm: 'hy',
25
+ aze: 'az',
26
+ geo: 'ka',
27
+ ukr: 'uk',
28
+ wel: 'cy',
18
29
  };
19
30
  export const LANGUAGE_NAMES = {
20
31
  en: 'English',
@@ -32,9 +43,20 @@ export const LANGUAGE_NAMES = {
32
43
  ru: 'Русский',
33
44
  zh: '中文',
34
45
  sk: 'Slovenčina',
35
- roh: 'Rumantsch',
46
+ rm: 'Rumantsch',
47
+ ar: 'العربية',
48
+ da: 'Dansk',
49
+ no: 'Norsk',
50
+ pl: 'Polski',
51
+ sv: 'Swedish',
52
+ tr: 'Türkçe',
53
+ hy: 'հայերեն',
54
+ az: 'Azərbaycan dili',
55
+ ka: 'ქართული',
56
+ uk: 'українська',
57
+ wel: 'Cymraeg',
36
58
  };
37
59
  export const LANG_2_TO_3_MAPPER = Object.entries(LANG_3_TO_2_MAPPER).reduce((mapperObject, langEntry) => {
38
60
  return { ...mapperObject, [langEntry[1]]: langEntry[0] };
39
61
  }, {});
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtY29kZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMvbGliL2xhbmd1YWdlLWNvZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2hDLEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0NBQ1YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLEVBQUUsRUFBRSxVQUFVO0lBQ2QsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsS0FBSztJQUNULEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsUUFBUTtJQUNaLEVBQUUsRUFBRSxPQUFPO0lBQ1gsRUFBRSxFQUFFLFVBQVU7SUFDZCxFQUFFLEVBQUUsVUFBVTtJQUNkLEVBQUUsRUFBRSxXQUFXO0lBQ2YsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsSUFBSTtJQUNSLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLEdBQUcsRUFBRSxXQUFXO0NBQ2pCLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUN6RSxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsRUFBRTtJQUMxQixPQUFPLEVBQUUsR0FBRyxZQUFZLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtBQUMxRCxDQUFDLEVBQ0QsRUFBRSxDQUNILENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTEFOR18zX1RPXzJfTUFQUEVSID0ge1xuICBlbmc6ICdlbicsXG4gIGR1dDogJ25sJyxcbiAgZnJlOiAnZnInLFxuICBnZXI6ICdkZScsXG4gIGtvcjogJ2tvJyxcbiAgc3BhOiAnZXMnLFxuICBjemU6ICdjcycsXG4gIGNhdDogJ2NhJyxcbiAgZmluOiAnZmknLFxuICBpY2U6ICdpcycsXG4gIGl0YTogJ2l0JyxcbiAgcG9yOiAncHQnLFxuICBydXM6ICdydScsXG4gIGNoaTogJ3poJyxcbiAgc2xvOiAnc2snLFxuICByb2g6ICdybScsXG59XG5cbmV4cG9ydCBjb25zdCBMQU5HVUFHRV9OQU1FUyA9IHtcbiAgZW46ICdFbmdsaXNoJyxcbiAgbmw6ICdOZWRlcmxhbmRzJyxcbiAgZnI6ICdGcmFuw6dhaXMnLFxuICBkZTogJ0RldXRzY2gnLFxuICBrbzogJ+2VnOq1reyWtCcsXG4gIGVzOiAnRXNwYcOxb2wnLFxuICBjczogJ8SMZcWhdGluYScsXG4gIGNhOiAnQ2F0YWzDoCcsXG4gIGZpOiAnU3VvbWknLFxuICBpczogJ8ONc2xlbnNrYScsXG4gIGl0OiAnSXRhbGlhbm8nLFxuICBwdDogJ1BvcnR1Z3XDqnMnLFxuICBydTogJ9Cg0YPRgdGB0LrQuNC5JyxcbiAgemg6ICfkuK3mlocnLFxuICBzazogJ1Nsb3ZlbsSNaW5hJyxcbiAgcm9oOiAnUnVtYW50c2NoJyxcbn1cblxuZXhwb3J0IGNvbnN0IExBTkdfMl9UT18zX01BUFBFUiA9IE9iamVjdC5lbnRyaWVzKExBTkdfM19UT18yX01BUFBFUikucmVkdWNlKFxuICAobWFwcGVyT2JqZWN0LCBsYW5nRW50cnkpID0+IHtcbiAgICByZXR1cm4geyAuLi5tYXBwZXJPYmplY3QsIFtsYW5nRW50cnlbMV1dOiBsYW5nRW50cnlbMF0gfVxuICB9LFxuICB7fVxuKVxuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtY29kZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMvbGliL2xhbmd1YWdlLWNvZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2hDLEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtDQUNWLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsWUFBWTtJQUNoQixFQUFFLEVBQUUsVUFBVTtJQUNkLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLEtBQUs7SUFDVCxFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLFFBQVE7SUFDWixFQUFFLEVBQUUsT0FBTztJQUNYLEVBQUUsRUFBRSxVQUFVO0lBQ2QsRUFBRSxFQUFFLFVBQVU7SUFDZCxFQUFFLEVBQUUsV0FBVztJQUNmLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsWUFBWTtJQUNoQixFQUFFLEVBQUUsV0FBVztJQUNmLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLE9BQU87SUFDWCxFQUFFLEVBQUUsT0FBTztJQUNYLEVBQUUsRUFBRSxRQUFRO0lBQ1osRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsUUFBUTtJQUNaLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLGlCQUFpQjtJQUNyQixFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLEdBQUcsRUFBRSxTQUFTO0NBQ2YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxNQUFNLENBQ3pFLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxFQUFFO0lBQzFCLE9BQU8sRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO0FBQzFELENBQUMsRUFDRCxFQUFFLENBQ0gsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBMQU5HXzNfVE9fMl9NQVBQRVIgPSB7XG4gIGVuZzogJ2VuJyxcbiAgZHV0OiAnbmwnLFxuICBmcmU6ICdmcicsXG4gIGdlcjogJ2RlJyxcbiAga29yOiAna28nLFxuICBzcGE6ICdlcycsXG4gIGN6ZTogJ2NzJyxcbiAgY2F0OiAnY2EnLFxuICBmaW46ICdmaScsXG4gIGljZTogJ2lzJyxcbiAgaXRhOiAnaXQnLFxuICBwb3I6ICdwdCcsXG4gIHJ1czogJ3J1JyxcbiAgY2hpOiAnemgnLFxuICBzbG86ICdzaycsXG4gIHJvaDogJ3JtJyxcbiAgYXJhOiAnYXInLFxuICBkYW46ICdkYScsXG4gIG5vcjogJ25vJyxcbiAgcG9sOiAncGwnLFxuICBzd2U6ICdzdicsXG4gIHR1cjogJ3RyJyxcbiAgYXJtOiAnaHknLFxuICBhemU6ICdheicsXG4gIGdlbzogJ2thJyxcbiAgdWtyOiAndWsnLFxuICB3ZWw6ICdjeScsXG59XG5cbmV4cG9ydCBjb25zdCBMQU5HVUFHRV9OQU1FUyA9IHtcbiAgZW46ICdFbmdsaXNoJyxcbiAgbmw6ICdOZWRlcmxhbmRzJyxcbiAgZnI6ICdGcmFuw6dhaXMnLFxuICBkZTogJ0RldXRzY2gnLFxuICBrbzogJ+2VnOq1reyWtCcsXG4gIGVzOiAnRXNwYcOxb2wnLFxuICBjczogJ8SMZcWhdGluYScsXG4gIGNhOiAnQ2F0YWzDoCcsXG4gIGZpOiAnU3VvbWknLFxuICBpczogJ8ONc2xlbnNrYScsXG4gIGl0OiAnSXRhbGlhbm8nLFxuICBwdDogJ1BvcnR1Z3XDqnMnLFxuICBydTogJ9Cg0YPRgdGB0LrQuNC5JyxcbiAgemg6ICfkuK3mlocnLFxuICBzazogJ1Nsb3ZlbsSNaW5hJyxcbiAgcm06ICdSdW1hbnRzY2gnLFxuICBhcjogJ9in2YTYudix2KjZitipJyxcbiAgZGE6ICdEYW5zaycsXG4gIG5vOiAnTm9yc2snLFxuICBwbDogJ1BvbHNraScsXG4gIHN2OiAnU3dlZGlzaCcsXG4gIHRyOiAnVMO8cmvDp2UnLFxuICBoeTogJ9Ww1aHVtdWl1oDVpdW2JyxcbiAgYXo6ICdBesmZcmJheWNhbiBkaWxpJyxcbiAga2E6ICfhg6Xhg5Dhg6Dhg5fhg6Phg5rhg5gnLFxuICB1azogJ9GD0LrRgNCw0ZfQvdGB0YzQutCwJyxcbiAgd2VsOiAnQ3ltcmFlZycsXG59XG5cbmV4cG9ydCBjb25zdCBMQU5HXzJfVE9fM19NQVBQRVIgPSBPYmplY3QuZW50cmllcyhMQU5HXzNfVE9fMl9NQVBQRVIpLnJlZHVjZShcbiAgKG1hcHBlck9iamVjdCwgbGFuZ0VudHJ5KSA9PiB7XG4gICAgcmV0dXJuIHsgLi4ubWFwcGVyT2JqZWN0LCBbbGFuZ0VudHJ5WzFdXTogbGFuZ0VudHJ5WzBdIH1cbiAgfSxcbiAge31cbilcbiJdfQ==
@@ -22,7 +22,10 @@ export class LinkClassifierService {
22
22
  return [LinkUsage.API, LinkUsage.DOWNLOAD, LinkUsage.GEODATA];
23
23
  case 'wms':
24
24
  case 'wmts':
25
+ case 'tms':
25
26
  return [LinkUsage.API, LinkUsage.MAP_API];
27
+ case 'maplibre-style':
28
+ return [LinkUsage.GEODATA];
26
29
  case 'ogcFeatures':
27
30
  return [LinkUsage.API, LinkUsage.DOWNLOAD, LinkUsage.GEODATA];
28
31
  case 'GPFDL':
@@ -62,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
62
65
  providedIn: 'root',
63
66
  }]
64
67
  }] });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jbGFzc2lmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvbGlua3MvbGluay1jbGFzc2lmaWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUsxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBOztBQUU1QyxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHdCQUFXLENBQUE7SUFDWCwrQkFBa0IsQ0FBQTtJQUNsQixrQ0FBcUIsQ0FBQTtJQUNyQiwwQkFBYSxDQUFBO0lBQ2IsZ0NBQW1CLENBQUE7SUFDbkIseUNBQTRCLENBQUE7SUFDNUIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVJXLFNBQVMsS0FBVCxTQUFTLFFBUXBCO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FDZCxJQUFtRDtRQUVuRCxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQixLQUFLLFVBQVUsQ0FBQztZQUNoQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2YsUUFBUSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDbkMsS0FBSyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssS0FBSzt3QkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxNQUFNO3dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDM0MsS0FBSyxhQUFhO3dCQUNoQixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxPQUFPO3dCQUNWLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUE7b0JBQ3hCO3dCQUNFLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7Z0JBQzlCLENBQUM7WUFDSCxDQUFDO1lBQ0QsS0FBSyxNQUFNO2dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDNUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixRQUFRLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUM1QixLQUFLLE1BQU0sQ0FBQztvQkFDWixLQUFLLEtBQUssQ0FBQztvQkFDWCxLQUFLLE9BQU87d0JBQ1YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUM3QyxLQUFLLFNBQVM7d0JBQ1osT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO29CQUNoRDt3QkFDRSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7NEJBQ3hDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTt3QkFDaEQsQ0FBQzt3QkFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUNOLElBQW1ELEVBQ25ELEtBQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN4RCxDQUFDOytHQS9DVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gIFNlcnZpY2VPbmxpbmVSZXNvdXJjZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4vbGluay11dGlscydcblxuZXhwb3J0IGVudW0gTGlua1VzYWdlIHtcbiAgQVBJID0gJ2FwaScsXG4gIE1BUF9BUEkgPSAnbWFwYXBpJyxcbiAgRE9XTkxPQUQgPSAnZG93bmxvYWQnLFxuICBEQVRBID0gJ2RhdGEnLFxuICBHRU9EQVRBID0gJ2dlb2RhdGEnLFxuICBMQU5ESU5HX1BBR0UgPSAnbGFuZGluZ3BhZ2UnLFxuICBVTktOT1dOID0gJ3Vua25vd24nLFxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGlua0NsYXNzaWZpZXJTZXJ2aWNlIHtcbiAgZ2V0VXNhZ2VzRm9yTGluayhcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2VcbiAgKTogTGlua1VzYWdlW10ge1xuICAgIHN3aXRjaCAobGluay50eXBlKSB7XG4gICAgICBjYXNlICdlbmRwb2ludCc6XG4gICAgICBjYXNlICdzZXJ2aWNlJzoge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnZXNyaVJlc3QnOlxuICAgICAgICAgIGNhc2UgJ3dmcyc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5BUEksIExpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSSwgTGlua1VzYWdlLk1BUF9BUEldXG4gICAgICAgICAgY2FzZSAnb2djRmVhdHVyZXMnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJLCBMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgIGNhc2UgJ0dQRkRMJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSV1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuVU5LTk9XTl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgIHJldHVybiBbTGlua1VzYWdlLlVOS05PV05dXG4gICAgICBjYXNlICdkb3dubG9hZCc6IHtcbiAgICAgICAgc3dpdGNoIChnZXRGaWxlRm9ybWF0KGxpbmspKSB7XG4gICAgICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgICAgY2FzZSAnY3N2JzpcbiAgICAgICAgICBjYXNlICdleGNlbCc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkRBVEFdXG4gICAgICAgICAgY2FzZSAnZ2VvanNvbic6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGlmIChsaW5rLnVybC50b1N0cmluZygpLm1hdGNoKC9cXC93ZnMvaSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQURdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYXNVc2FnZShcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2UsXG4gICAgdXNhZ2U6IExpbmtVc2FnZVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2FnZXNGb3JMaW5rKGxpbmspLmluZGV4T2YodXNhZ2UpID4gLTFcbiAgfVxufVxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jbGFzc2lmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvbGlua3MvbGluay1jbGFzc2lmaWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUsxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBOztBQUU1QyxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHdCQUFXLENBQUE7SUFDWCwrQkFBa0IsQ0FBQTtJQUNsQixrQ0FBcUIsQ0FBQTtJQUNyQiwwQkFBYSxDQUFBO0lBQ2IsZ0NBQW1CLENBQUE7SUFDbkIseUNBQTRCLENBQUE7SUFDNUIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVJXLFNBQVMsS0FBVCxTQUFTLFFBUXBCO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FDZCxJQUFtRDtRQUVuRCxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQixLQUFLLFVBQVUsQ0FBQztZQUNoQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2YsUUFBUSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDbkMsS0FBSyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssS0FBSzt3QkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxNQUFNLENBQUM7b0JBQ1osS0FBSyxLQUFLO3dCQUNSLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDM0MsS0FBSyxnQkFBZ0I7d0JBQ25CLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7b0JBQzVCLEtBQUssYUFBYTt3QkFDaEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7b0JBQy9ELEtBQUssT0FBTzt3QkFDVixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFBO29CQUN4Qjt3QkFDRSxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUM5QixDQUFDO1lBQ0gsQ0FBQztZQUNELEtBQUssTUFBTTtnQkFDVCxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQzVCLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFDaEIsUUFBUSxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDNUIsS0FBSyxNQUFNLENBQUM7b0JBQ1osS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxPQUFPO3dCQUNWLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtvQkFDN0MsS0FBSyxTQUFTO3dCQUNaLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDaEQ7d0JBQ0UsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDOzRCQUN4QyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7d0JBQ2hELENBQUM7d0JBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtnQkFDL0IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FDTixJQUFtRCxFQUNuRCxLQUFnQjtRQUVoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7SUFDeEQsQ0FBQzsrR0FsRFUscUJBQXFCO21IQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgRGF0YXNldE9ubGluZVJlc291cmNlLFxuICBTZXJ2aWNlT25saW5lUmVzb3VyY2UsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IGdldEZpbGVGb3JtYXQgfSBmcm9tICcuL2xpbmstdXRpbHMnXG5cbmV4cG9ydCBlbnVtIExpbmtVc2FnZSB7XG4gIEFQSSA9ICdhcGknLFxuICBNQVBfQVBJID0gJ21hcGFwaScsXG4gIERPV05MT0FEID0gJ2Rvd25sb2FkJyxcbiAgREFUQSA9ICdkYXRhJyxcbiAgR0VPREFUQSA9ICdnZW9kYXRhJyxcbiAgTEFORElOR19QQUdFID0gJ2xhbmRpbmdwYWdlJyxcbiAgVU5LTk9XTiA9ICd1bmtub3duJyxcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExpbmtDbGFzc2lmaWVyU2VydmljZSB7XG4gIGdldFVzYWdlc0ZvckxpbmsoXG4gICAgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlIHwgU2VydmljZU9ubGluZVJlc291cmNlXG4gICk6IExpbmtVc2FnZVtdIHtcbiAgICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgICAgY2FzZSAnZW5kcG9pbnQnOlxuICAgICAgY2FzZSAnc2VydmljZSc6IHtcbiAgICAgICAgc3dpdGNoIChsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCkge1xuICAgICAgICAgIGNhc2UgJ2VzcmlSZXN0JzpcbiAgICAgICAgICBjYXNlICd3ZnMnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJLCBMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgY2FzZSAnd210cyc6XG4gICAgICAgICAgY2FzZSAndG1zJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSSwgTGlua1VzYWdlLk1BUF9BUEldXG4gICAgICAgICAgY2FzZSAnbWFwbGlicmUtc3R5bGUnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuR0VPREFUQV1cbiAgICAgICAgICBjYXNlICdvZ2NGZWF0dXJlcyc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5BUEksIExpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgY2FzZSAnR1BGREwnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJXVxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5VTktOT1dOXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjYXNlICdsaW5rJzpcbiAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuVU5LTk9XTl1cbiAgICAgIGNhc2UgJ2Rvd25sb2FkJzoge1xuICAgICAgICBzd2l0Y2ggKGdldEZpbGVGb3JtYXQobGluaykpIHtcbiAgICAgICAgICBjYXNlICdqc29uJzpcbiAgICAgICAgICBjYXNlICdjc3YnOlxuICAgICAgICAgIGNhc2UgJ2V4Y2VsJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkRPV05MT0FELCBMaW5rVXNhZ2UuREFUQV1cbiAgICAgICAgICBjYXNlICdnZW9qc29uJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkRPV05MT0FELCBMaW5rVXNhZ2UuR0VPREFUQV1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgaWYgKGxpbmsudXJsLnRvU3RyaW5nKCkubWF0Y2goL1xcL3dmcy9pKSkge1xuICAgICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRF1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhhc1VzYWdlKFxuICAgIGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB8IFNlcnZpY2VPbmxpbmVSZXNvdXJjZSxcbiAgICB1c2FnZTogTGlua1VzYWdlXG4gICkge1xuICAgIHJldHVybiB0aGlzLmdldFVzYWdlc0ZvckxpbmsobGluaykuaW5kZXhPZih1c2FnZSkgPiAtMVxuICB9XG59XG4iXX0=