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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/base.converter.mjs +1 -1
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +8 -3
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +3 -3
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +4 -4
  7. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +2 -10
  8. package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
  9. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  10. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +5 -1
  11. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +5 -1
  12. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  13. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +18 -0
  14. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +2 -3
  15. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +1 -1
  16. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +5 -5
  17. package/esm2022/libs/feature/record/src/index.mjs +1 -2
  18. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  19. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +5 -9
  20. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
  21. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +7 -11
  22. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
  23. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +8 -3
  24. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  25. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +8 -5
  26. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -6
  27. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  28. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  29. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  30. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  31. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  32. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +8 -7
  33. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +13 -19
  34. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  35. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
  36. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +26 -10
  37. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
  38. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  39. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  40. package/esm2022/libs/ui/elements/src/index.mjs +3 -1
  41. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  42. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +3 -3
  43. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
  44. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  45. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +3 -3
  46. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +51 -0
  47. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +3 -3
  48. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  49. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  50. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +8 -5
  51. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  52. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +161 -0
  53. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +16 -4
  54. package/esm2022/libs/ui/inputs/src/index.mjs +2 -2
  55. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  56. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  57. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  58. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +42 -0
  59. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  60. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -3
  61. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -9
  62. package/esm2022/libs/ui/layout/src/index.mjs +2 -1
  63. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +43 -3
  64. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
  65. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  66. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +15 -3
  67. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
  68. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  69. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +56 -0
  70. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
  71. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  72. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
  73. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  74. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  75. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  76. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +5 -4
  77. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +11 -3
  78. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  79. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +2 -1
  80. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
  81. package/esm2022/libs/util/shared/src/index.mjs +2 -1
  82. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  83. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +2 -1
  84. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +13 -6
  85. package/esm2022/translations/de.json +35 -5
  86. package/esm2022/translations/en.json +38 -6
  87. package/esm2022/translations/es.json +35 -5
  88. package/esm2022/translations/fr.json +38 -6
  89. package/esm2022/translations/it.json +35 -5
  90. package/esm2022/translations/nl.json +35 -5
  91. package/esm2022/translations/pt.json +35 -5
  92. package/fesm2022/geonetwork-ui.mjs +1474 -601
  93. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  94. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  95. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  96. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  97. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  98. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  99. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  100. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  101. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  102. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +5 -2
  103. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  104. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  105. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +1 -1
  106. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  107. package/libs/feature/editor/src/index.d.ts +1 -0
  108. package/libs/feature/editor/src/index.d.ts.map +1 -1
  109. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +7 -0
  110. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  111. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  112. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  113. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  114. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
  115. package/libs/feature/record/src/index.d.ts +0 -1
  116. package/libs/feature/record/src/index.d.ts.map +1 -1
  117. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +9 -1
  118. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  119. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  120. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  121. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  122. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  123. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  124. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  125. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  126. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  127. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +3 -1
  128. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  129. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  130. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  131. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  132. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  133. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  134. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  135. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  136. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  137. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  138. package/libs/feature/search/src/index.d.ts +1 -1
  139. package/libs/feature/search/src/index.d.ts.map +1 -1
  140. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  141. package/libs/feature/search/src/lib/feature-search.module.d.ts +4 -2
  142. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  143. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  144. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  145. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
  146. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  147. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  148. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  149. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
  150. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  151. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  152. package/libs/ui/elements/src/index.d.ts +2 -0
  153. package/libs/ui/elements/src/index.d.ts.map +1 -1
  154. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  155. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  156. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  157. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  158. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +11 -0
  159. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  160. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +1 -1
  161. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  162. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  163. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  164. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +30 -0
  165. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  166. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +3 -1
  167. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  168. package/libs/ui/inputs/src/index.d.ts +1 -1
  169. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  170. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  171. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  172. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  173. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  174. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  175. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  176. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  177. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
  178. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  179. package/libs/ui/layout/src/index.d.ts +1 -0
  180. package/libs/ui/layout/src/index.d.ts.map +1 -1
  181. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
  182. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  183. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
  184. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  185. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +2 -0
  186. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  187. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +18 -0
  188. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  189. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  190. package/libs/ui/map/src/index.d.ts +1 -0
  191. package/libs/ui/map/src/index.d.ts.map +1 -1
  192. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  193. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  194. package/libs/ui/search/src/index.d.ts +1 -0
  195. package/libs/ui/search/src/index.d.ts.map +1 -1
  196. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  197. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  198. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  199. package/libs/ui/search/src/lib/ui-search.module.d.ts +21 -19
  200. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  201. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  202. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  203. package/libs/util/shared/src/index.d.ts +1 -0
  204. package/libs/util/shared/src/index.d.ts.map +1 -1
  205. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  206. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  207. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  208. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  209. package/libs/util/shared/src/lib/links/link-utils.d.ts +14 -7
  210. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  211. package/package.json +1 -1
  212. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  213. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  214. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  215. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  216. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +2 -2
  217. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  218. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  219. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +8 -2
  220. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +2 -2
  221. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +3 -3
  222. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +1 -9
  223. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  224. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +5 -2
  225. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +26 -26
  226. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +2 -2
  227. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  228. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +4 -0
  229. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -0
  230. package/src/libs/feature/editor/src/index.ts +1 -0
  231. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +14 -0
  232. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +15 -0
  233. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +1 -2
  234. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -2
  235. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  236. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
  237. package/src/libs/feature/record/src/index.ts +0 -1
  238. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +14 -10
  239. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -3
  240. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  241. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +4 -5
  242. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  243. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
  244. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +21 -15
  245. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +5 -0
  246. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  247. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +5 -3
  248. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +4 -7
  249. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  250. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  251. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  252. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  253. package/src/libs/feature/search/src/index.ts +1 -1
  254. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +0 -6
  255. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -8
  256. package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -10
  257. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  258. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.css +0 -0
  259. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
  260. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
  261. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
  262. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  263. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +24 -5
  264. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  265. package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
  266. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  267. package/src/libs/ui/elements/src/index.ts +2 -0
  268. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  269. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  270. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
  271. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +38 -7
  272. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
  273. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  274. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +2 -2
  275. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  276. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +9 -0
  277. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +51 -0
  278. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +5 -2
  279. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -7
  280. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  281. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +9 -9
  282. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  283. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +20 -7
  284. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -4
  285. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +2 -3
  286. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  287. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +96 -0
  288. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +183 -0
  289. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +6 -0
  290. package/src/libs/ui/inputs/src/index.ts +1 -1
  291. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  292. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  293. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  294. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  295. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
  296. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  297. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +0 -0
  298. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +6 -6
  299. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +2 -1
  300. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -3
  301. package/src/libs/ui/layout/src/index.ts +1 -0
  302. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +46 -2
  303. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  304. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
  305. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
  306. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  307. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  308. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -7
  309. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -0
  310. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  311. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  312. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  313. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +46 -0
  314. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +62 -0
  315. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -5
  316. package/src/libs/ui/map/src/index.ts +1 -0
  317. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  318. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  319. package/src/libs/{feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts → ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts} +8 -8
  320. package/src/libs/ui/search/src/index.ts +1 -0
  321. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  322. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +24 -0
  323. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  324. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +7 -4
  325. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +2 -1
  326. package/src/libs/ui/search/src/lib/ui-search.module.ts +5 -0
  327. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +2 -1
  328. package/src/libs/util/app-config/src/lib/app-config.ts +1 -0
  329. package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
  330. package/src/libs/util/shared/src/index.ts +1 -0
  331. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  332. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +12 -3
  333. package/src/libs/util/shared/src/lib/links/link-utils.ts +30 -12
  334. package/tailwind.base.config.js +3 -0
  335. package/tailwind.base.css +19 -26
  336. package/translations/de.json +35 -5
  337. package/translations/en.json +38 -6
  338. package/translations/es.json +35 -5
  339. package/translations/fr.json +38 -6
  340. package/translations/it.json +35 -5
  341. package/translations/nl.json +35 -5
  342. package/translations/pt.json +35 -5
  343. package/translations/sk.json +35 -5
  344. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  345. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  346. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  347. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
  348. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  349. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +0 -1
  350. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  351. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  352. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  353. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  354. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
  355. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
  356. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  357. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  358. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  359. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  360. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
  361. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
  362. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
  363. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-map-container/form-field-map-container.component.css → multilingual-panel/multilingual-panel.component.css} +0 -0
@@ -8,6 +8,7 @@ import { PlatformServiceInterface } from '../../../../../../../libs/common/domai
8
8
  import { ElasticsearchService, isDateRange, METADATA_LANGUAGE, } from '../../../../../../../libs/api/repository/src';
9
9
  import { LangService } from '../../../../../../../libs/util/i18n/src';
10
10
  import { formatUserInfo } from '../../../../../../../libs/util/shared/src';
11
+ import { PossibleResourceTypes } from '../../../../../../../libs/api/metadata-converter/src';
11
12
  export class AbstractSearchField {
12
13
  }
13
14
  export class SimpleSearchField {
@@ -38,6 +39,7 @@ export class SimpleSearchField {
38
39
  const bucketPromises = buckets.map(async (bucket) => ({
39
40
  label: `${await this.getBucketLabel(bucket)} (${bucket.count})`,
40
41
  value: bucket.term.toString(),
42
+ count: bucket.count,
41
43
  }));
42
44
  return Promise.all(bucketPromises);
43
45
  }));
@@ -363,4 +365,71 @@ export class AvailableServicesField extends SimpleSearchField {
363
365
  return of(values);
364
366
  }
365
367
  }
366
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL3V0aWxzL3NlcnZpY2UvZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNoRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlGQUFpRixDQUFBO0FBQy9ILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRFQUE0RSxDQUFBO0FBU3JILE9BQU8sRUFFTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLDhDQUE4QyxDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFVMUUsTUFBTSxPQUFnQixtQkFBbUI7Q0FTeEM7QUFFRCxNQUFNLE9BQU8saUJBQWlCO0lBTTVCLFlBQ1ksV0FBbUIsRUFDbkIsUUFBa0IsRUFDbEIsUUFBd0IsS0FBSyxFQUM3QixZQUE2QixLQUFLO1FBSGxDLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsY0FBUyxHQUFULFNBQVMsQ0FBeUI7UUFUcEMsZUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENB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QixFQUFFO2lCQUM3RDthQUNGO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFvQjtRQUN0QyxNQUFNLE9BQU8sR0FBZ0IsRUFBRSxDQUFBO1FBQy9CLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsSUFBSSxDQUFBO1FBQ3hFLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUM7WUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLElBQUksQ0FBQTtRQUVqRCxPQUFPLEVBQUUsQ0FBQztZQUNSLFlBQVksRUFBRSxPQUFPO1NBQ3RCLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFxQjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFBO1FBQ3ZDLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDOUIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFBO1FBQ2pCLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztZQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDaEUsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN4RSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9vcmdhbml6YXRpb25zLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9wbGF0Zm9ybS5zZXJ2aWNlLmludGVyZmFjZSdcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uQnVja2V0cyxcbiAgQWdncmVnYXRpb25zUGFyYW1zLFxuICBGaWVsZEZpbHRlcixcbiAgRmllbGRGaWx0ZXJCeUV4cHJlc3Npb24sXG4gIEZpZWxkRmlsdGVycyxcbiAgVGVybUJ1Y2tldCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHtcbiAgRGF0ZVJhbmdlLFxuICBFbGFzdGljc2VhcmNoU2VydmljZSxcbiAgaXNEYXRlUmFuZ2UsXG4gIE1FVEFEQVRBX0xBTkdVQUdFLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9yZXBvc2l0b3J5L3NyYydcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2kxOG4vc3JjJ1xuaW1wb3J0IHsgZm9ybWF0VXNlckluZm8gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcblxuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3ZhbHVlcycgfCAnZGF0ZVJhbmdlJ1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlID0gc3RyaW5nIHwgbnVtYmVyXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQXZhaWxhYmxlVmFsdWUge1xuICB2YWx1ZTogRmllbGRWYWx1ZVxuICBsYWJlbDogc3RyaW5nXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgYWJzdHJhY3QgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdIHwgRGF0ZVJhbmdlW10+XG4gIGFic3RyYWN0IGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz5cbiAgYWJzdHJhY3QgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+XG4gIGFic3RyYWN0IGdldFR5cGUoKTogRmllbGRUeXBlXG59XG5cbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yeSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlKVxuXG4gIC8vIEZJWE1FOiB0aGlzIGlzIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIHJ1bnRpbWUgZmllbGRzOyBhYnN0cmFjdCB0aGlzIGFzIHdlbGxcbiAgcHJvdGVjdGVkIGVzU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEVsYXN0aWNzZWFyY2hTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge31cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBmaWVsZDogdGhpcy5lc0ZpZWxkTmFtZSxcbiAgICAgICAgbGltaXQ6IDEwMDAsXG4gICAgICAgIHNvcnQ6IFt0aGlzLm9yZGVyLCB0aGlzLm9yZGVyVHlwZV0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBidWNrZXQudGVybS50b1N0cmluZygpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yZXBvc2l0b3J5LmFnZ3JlZ2F0ZSh0aGlzLmdldEFnZ3JlZ2F0aW9ucygpKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAocmVzcG9uc2UpID0+XG4gICAgICAgICAgKHJlc3BvbnNlW3RoaXMuZXNGaWVsZE5hbWVdIGFzIEFnZ3JlZ2F0aW9uQnVja2V0cykuYnVja2V0cyB8fCBbXVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoYnVja2V0czogVGVybUJ1Y2tldFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGJ1Y2tldFByb21pc2VzID0gYnVja2V0cy5tYXAoYXN5bmMgKGJ1Y2tldCkgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7YXdhaXQgdGhpcy5nZXRCdWNrZXRMYWJlbChidWNrZXQpfSAoJHtidWNrZXQuY291bnR9KWAsXG4gICAgICAgICAgdmFsdWU6IGJ1Y2tldC50ZXJtLnRvU3RyaW5nKCksXG4gICAgICAgIH0pKVxuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoYnVja2V0UHJvbWlzZXMpXG4gICAgICB9KVxuICAgIClcbiAgfVxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKFxuICAgIHZhbHVlczogRmllbGRWYWx1ZVtdIHwgRGF0ZVJhbmdlW11cbiAgKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICAvLyBGaWVsZFZhbHVlW11cbiAgICBpZiAodGhpcy5nZXRUeXBlKCkgPT09ICd2YWx1ZXMnKSB7XG4gICAgICByZXR1cm4gb2Yoe1xuICAgICAgICBbdGhpcy5lc0ZpZWxkTmFtZV06ICh2YWx1ZXMgYXMgRmllbGRWYWx1ZVtdKS5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSB2YWwudG9TdHJpbmcoKVxuICAgICAgICAgIGlmICh2YWx1ZSAhPT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgW3ZhbHVlXTogdHJ1ZSB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgfSwge30pLFxuICAgICAgfSlcbiAgICB9XG4gICAgLy8gRGF0ZVJhbmdlXG4gICAgcmV0dXJuIG9mKHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogdmFsdWVzWzBdICE9PSAnJyA/IHZhbHVlc1swXSA6IHt9LFxuICAgIH0pXG4gIH1cbiAgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSBmaWx0ZXJzW3RoaXMuZXNGaWVsZE5hbWVdXG4gICAgaWYgKCFmaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICAvLyBmaWx0ZXIgYnkgZXhwcmVzc2lvblxuICAgIGlmICh0eXBlb2YgZmlsdGVyID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIG9mKFtmaWx0ZXJdKVxuICAgIH1cbiAgICAvLyBmaWx0ZXIgYnkgZGF0ZSByYW5nZVxuICAgIGlmIChpc0RhdGVSYW5nZShmaWx0ZXIpKSB7XG4gICAgICByZXR1cm4gb2YoZmlsdGVyKVxuICAgIH1cbiAgICAvLyBmaWx0ZXIgYnkgdmFsdWVzXG4gICAgY29uc3QgdmFsdWVzID0gT2JqZWN0LmtleXMoZmlsdGVyKS5maWx0ZXIoKHYpID0+IGZpbHRlclt2XSlcbiAgICByZXR1cm4gb2YodmFsdWVzKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVkU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByb3RlY3RlZCBwbGF0Zm9ybVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldFRyYW5zbGF0aW9uKGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHRoaXMucGxhdGZvcm1TZXJ2aWNlLnRyYW5zbGF0ZUtleShrZXkpKVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRUcmFuc2xhdGlvbihidWNrZXQudGVybSkpIHx8IGJ1Y2tldC50ZXJtXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICBpZiAodGhpcy5vcmRlclR5cGUgPT09ICdjb3VudCcpIHJldHVybiBzdXBlci5nZXRBdmFpbGFibGVWYWx1ZXMoKVxuICAgIC8vIHNvcnQgdmFsdWVzIGJ5IGFscGhhYmV0aWNhbCBvcmRlclxuICAgIHJldHVybiBzdXBlclxuICAgICAgLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgICAgdmFsdWVzLnNvcnQoKGEsIGIpID0+IG5ldyBJbnRsLkNvbGxhdG9yKCkuY29tcGFyZShhLmxhYmVsLCBiLmxhYmVsKSlcbiAgICAgICAgKVxuICAgICAgKVxuICB9XG59XG5cbi8qKlxuICogVGhpcyBzZWFyY2ggZmllbGQgd2lsbCBlaXRoZXIgdGFyZ2V0IHRoZSBgLmRlZmF1bHRgIGZpZWxkLCBvciBhIHNwZWNpZmljIGAubGFuZ3h5emAgZmllbGQgYWNjb3JkaW5nXG4gKiB0byB0aGUgZGVmaW5lZCBNRVRBREFUQV9MQU5HVUFHRSB0b2tlblxuICogVGhlIHByb3ZpZGVkIEVTIGZpZWxkIG5hbWUgc2hvdWxkIG5vdCBpbmNsdWRlIGFueSBwcmVmaXggc3VjaCBhcyBgLmxhbmdlbmdgXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aWxpbmd1YWxTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSBsYW5nU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KExhbmdTZXJ2aWNlKVxuICBwcml2YXRlIHNlYXJjaExhbmd1YWdlID0gdGhpcy5pbmplY3Rvci5nZXQoTUVUQURBVEFfTEFOR1VBR0UsIG51bGwpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICAgIC8vIG5vdGU6IHdlJ3JlIGV4Y2x1ZGluZyB0aGUgbWV0YWRhdGEgbGFuZ3VhZ2UgXCJjdXJyZW50XCIgdmFsdWUgYmVjYXVzZSB0aGF0IHdvdWxkIHByb2R1Y2VcbiAgICAvLyBwZXJtYWxpbmtzIHRoYXQgbWlnaHQgbm90IHdvcmsgZm9yIGRpZmZlcmVudCB1c2Vyc1xuICAgIGlmICh0aGlzLnNlYXJjaExhbmd1YWdlICYmIHRoaXMuc2VhcmNoTGFuZ3VhZ2UgIT09ICdjdXJyZW50Jykge1xuICAgICAgdGhpcy5lc0ZpZWxkTmFtZSArPSBgLmxhbmcke3RoaXMuc2VhcmNoTGFuZ3VhZ2V9YFxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVzRmllbGROYW1lICs9ICcuZGVmYXVsdCdcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZ1bGxUZXh0U2VhcmNoRmllbGQgaW1wbGVtZW50cyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG4gIGdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzOiBGaWVsZFZhbHVlW10pOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIHJldHVybiBvZih7XG4gICAgICBhbnk6IHZhbHVlc1swXSBhcyBzdHJpbmcsXG4gICAgfSlcbiAgfVxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICByZXR1cm4gb2YoZmlsdGVycy5hbnkgPyBbZmlsdGVycy5hbnkgYXMgRmllbGRGaWx0ZXJCeUV4cHJlc3Npb25dIDogW10pXG4gIH1cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLnllcycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbC5ubycpXG5cbmV4cG9ydCBjbGFzcyBJc1NwYXRpYWxTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSlcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcignaXNTcGF0aWFsJywgaW5qZWN0b3IsICdhc2MnKVxuICAgIHRoaXMuZXNTZXJ2aWNlLnJlZ2lzdGVyUnVudGltZUZpZWxkKFxuICAgICAgJ2lzU3BhdGlhbCcsXG4gICAgICBgU3RyaW5nIHJlc3VsdCA9ICdubyc7XG5TdHJpbmcgZm9ybWF0cyA9IGRvYy5mb3JtYXQuam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5pZiAoZm9ybWF0cy5jb250YWlucygnZ2VvanNvbicpIHx8IGZvcm1hdHMuY29udGFpbnMoJ2FyY2dpcycpIHx8IGZvcm1hdHMuY29udGFpbnMoJ29nYycpIHx8IGZvcm1hdHMuY29udGFpbnMoJ3NocCcpKSByZXN1bHQgPSAneWVzJztcblN0cmluZyBwcm90b2NvbHMgPSBkb2MubGlua1Byb3RvY29sLmpvaW4oJ3wnKS50b0xvd2VyQ2FzZSgpO1xuaWYgKHByb3RvY29scy5jb250YWlucygnZXNyaScpIHx8IHByb3RvY29scy5jb250YWlucygnb2djJykpIHJlc3VsdCA9ICd5ZXMnO1xuZW1pdChyZXN1bHQpO2BcbiAgICApXG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzU3BhdGlhbDoge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBsaW1pdDogMixcbiAgICAgICAgZmllbGQ6ICdpc1NwYXRpYWwnLFxuICAgICAgICBzb3J0OiBbJ2FzYycsICdrZXknXSxcbiAgICAgIH0sXG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXQoYHNlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbC4ke2J1Y2tldC50ZXJtfWApXG4gICAgKVxuICB9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgaXNTcGF0aWFsID0ge31cbiAgICBpZiAodmFsdWVzLmxlbmd0aCA+IDApIGlzU3BhdGlhbFt2YWx1ZXNbdmFsdWVzLmxlbmd0aCAtIDFdXSA9IHRydWVcbiAgICByZXR1cm4gb2Yoe1xuICAgICAgaXNTcGF0aWFsLFxuICAgIH0pXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSBmaWx0ZXJzLmlzU3BhdGlhbFxuICAgIGlmICghZmlsdGVyKSByZXR1cm4gb2YoW10pXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGZpbHRlcilcbiAgICByZXR1cm4gb2Yoa2V5cy5sZW5ndGggPyBba2V5c1swXV0gOiBbXSlcbiAgfVxufVxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UucGRkbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2Uub2RibCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2Uub2RjLWJ5Jylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5jYy1ieS1zYScpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuY2MtYnknKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmNjLXplcm8nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmV0YWxhYi12MicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuZXRhbGFiJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS51bmtub3duJylcblxuLy8gTm90ZTogdmFsdWVzIGFyZSBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZG9jLmRhdGEuZ291di5mci9tb2lzc29ubmFnZS9saWNlbmNlcy9cbmV4cG9ydCBjbGFzcyBMaWNlbnNlU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpXG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ2xpY2Vuc2UnLCBpbmplY3RvciwgJ2FzYycpXG4gICAgdGhpcy5lc1NlcnZpY2UucmVnaXN0ZXJSdW50aW1lRmllbGQoXG4gICAgICAnbGljZW5zZScsXG4gICAgICBgU3RyaW5nIHJhdyA9ICcnO1xuaWYgKGRvYy5jb250YWluc0tleSgnbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnKSAmJiBkb2NbJ2xpY2Vuc2VPYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10ubGVuZ3RoID4gMClcbiAgcmF3ICs9IGRvY1snbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcbmlmIChkb2MuY29udGFpbnNLZXkoJ01EX0xlZ2FsQ29uc3RyYWludHNVc2VMaW1pdGF0aW9uT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpICYmIGRvY1snTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10ubGVuZ3RoID4gMClcbiAgcmF3ICs9IGRvY1snTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJ10uam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5cbmJvb2xlYW4gdW5rbm93biA9IHRydWU7XG5pZiAocmF3LmNvbnRhaW5zKCdwZGRsJykgfHwgcmF3LmNvbnRhaW5zKCdwdWJsaWMgZG9tYWluIGRlZGljYXRpb24gYW5kIGxpY2VuY2UnKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ3BkZGwnKTtcbn1cbmlmIChyYXcuY29udGFpbnMoJ29kYmwnKSB8fCByYXcuY29udGFpbnMoJ29wZW4gZGF0YWJhc2UgbGljZW5zZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnb2RibCcpO1xufVxuaWYgKHJhdy5jb250YWlucygnb2RjLWJ5JykgfHwgcmF3LmNvbnRhaW5zKCdvcGVuZGF0YWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5L3N1bW1hcnkvXCInKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ29kYy1ieScpO1xufVxuXG5pZiAocmF3LmNvbnRhaW5zKCdjYy1ieS1zYScpIHx8IHJhdy5jb250YWlucygnY3JlYXRpdmUgY29tbW9ucyBhdHRyaWJ1dGlvbiBzaGFyZS1hbGlrZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtYnktc2EnKTtcbn0gZWxzZSBpZiAocmF3LmNvbnRhaW5zKCdjYy1ieScpIHx8IHJhdy5jb250YWlucygnY2MgYnknKSB8fCByYXcuY29udGFpbnMoJ2NyZWF0aXZlIGNvbW1vbnMgYXR0cmlidXRpb24nKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2NjLWJ5Jyk7XG59IGVsc2UgaWYgKHJhdy5jb250YWlucygnY2MwJykgfHwgcmF3LmNvbnRhaW5zKCdjYy0wJykgfHwgcmF3LmNvbnRhaW5zKCdjY3plcm8nKSB8fCByYXcuY29udGFpbnMoJ2NjLXplcm8nKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2NjLXplcm8nKTtcbn1cblxuaWYgKHJhdy5jb250YWlucygnZXRhbGFiJykgJiYgKHJhdy5jb250YWlucygndjInKSB8fCByYXcuY29udGFpbnMoJzIuMCcpKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2V0YWxhYi12MicpO1xufSBlbHNlIGlmIChyYXcuY29udGFpbnMoJ29wZW4gbGljZW5jZScpIHx8IHJhdy5jb250YWlucygnbGljZW5jZSBvdXZlcnRlJykgfHwgcmF3LmNvbnRhaW5zKCdsaWNlbmNlX291dmVydGUnKSkge1xuICB1bmtub3duID0gZmFsc2U7XG4gIGVtaXQoJ2V0YWxhYicpO1xufVxuXG5pZih1bmtub3duKSBlbWl0KCd1bmtub3duJyk7YFxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgbGljZW5zZToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBsaW1pdDogMTAsXG4gICAgICAgIGZpZWxkOiAnbGljZW5zZScsXG4gICAgICAgIHNvcnQ6IFsnZGVzYycsICdjb3VudCddLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChgc2VhcmNoLmZpbHRlcnMubGljZW5zZS4ke2J1Y2tldC50ZXJtfWApXG4gICAgKVxuICB9XG59XG5cbi8vIFRoaXMgd2lsbCB1c2UgdGhlIE9yZ2FuaXphdGlvbnNTZXJ2aWNlSW50ZXJmYWNlXG4vLyBGaWVsZCB2YWx1ZXMgYXJlIHRoZSBvcmdhbml6YXRpb24gbmFtZXNcbmV4cG9ydCBjbGFzcyBPcmdhbml6YXRpb25TZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcml2YXRlIG9yZ3NTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2UpXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIHRoaXMub3Jnc1NlcnZpY2Uub3JnYW5pc2F0aW9ucyQucGlwZShcbiAgICAgIG1hcCgob3JncykgPT5cbiAgICAgICAgdmFsdWVzXG4gICAgICAgICAgLm1hcCgobmFtZSkgPT4gb3Jncy5maW5kKChvcmcpID0+IG9yZy5uYW1lID09PSBuYW1lKSlcbiAgICAgICAgICAuZmlsdGVyKChvcmcpID0+IG9yZyAhPT0gdW5kZWZpbmVkKVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoc2VsZWN0ZWRPcmdzKSA9PlxuICAgICAgICB0aGlzLm9yZ3NTZXJ2aWNlLmdldEZpbHRlcnNGb3JPcmdzKHNlbGVjdGVkT3JncylcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZVxuICAgICAgLmdldE9yZ3NGcm9tRmlsdGVycyhmaWx0ZXJzKVxuICAgICAgLnBpcGUobWFwKChvcmdzKSA9PiBvcmdzLm1hcCgob3JnKSA9PiBvcmcubmFtZSkpKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgLy8gc29ydCB2YWx1ZXMgYnkgYWxwaGFiZXRpY2FsIG9yZGVyXG4gICAgcmV0dXJuIHRoaXMub3Jnc1NlcnZpY2Uub3JnYW5pc2F0aW9ucyQucGlwZShcbiAgICAgIG1hcCgob3JnYW5pc2F0aW9ucykgPT5cbiAgICAgICAgb3JnYW5pc2F0aW9ucy5tYXAoKG9yZykgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7b3JnLm5hbWV9ICgke29yZy5yZWNvcmRDb3VudH0pYCxcbiAgICAgICAgICB2YWx1ZTogb3JnLm5hbWUsXG4gICAgICAgIH0pKVxuICAgICAgKSxcbiAgICAgIG1hcCgodmFsdWVzKSA9PlxuICAgICAgICB2YWx1ZXMuc29ydCgoYSwgYikgPT4gbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlKGEubGFiZWwsIGIubGFiZWwpKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGdldFR5cGUoKTogRmllbGRUeXBlIHtcbiAgICByZXR1cm4gJ3ZhbHVlcydcbiAgfVxufVxuZXhwb3J0IGNsYXNzIE93bmVyU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdvd25lcicsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIHJldHVybiBvZihbXSlcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVXNlclNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigndXNlcmluZm8ua2V5d29yZCcsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIHJldHVybiBzdXBlci5nZXRBdmFpbGFibGVWYWx1ZXMoKS5waXBlKFxuICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgIHZhbHVlcy5tYXAoKHYpID0+ICh7XG4gICAgICAgICAgLi4udixcbiAgICAgICAgICBsYWJlbDogZm9ybWF0VXNlckluZm8odi5sYWJlbCwgdHJ1ZSksXG4gICAgICAgIH0pKVxuICAgICAgKVxuICAgIClcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRGF0ZVJhbmdlU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge1xuICAgIHN1cGVyKGVzRmllbGROYW1lLCBpbmplY3Rvciwgb3JkZXIsIG9yZGVyVHlwZSlcbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIC8vIFRPRE86IHJldHVybiBhbiBhcnJheSBvZiBkYXRlcyB0byBzaG93IHdoaWNoIG9uZSBhcmUgYXZhaWxhYmxlIGluIHRoZSBkYXRlIHBpY2tlclxuICAgIHJldHVybiBvZihbXSlcbiAgfVxuXG4gIGdldFR5cGUoKTogRmllbGRUeXBlIHtcbiAgICByZXR1cm4gJ2RhdGVSYW5nZSdcbiAgfVxufVxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLnZpZXcnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5hdmFpbGFibGVTZXJ2aWNlcy5kb3dubG9hZCcpXG5cbmV4cG9ydCBjbGFzcyBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdhdmFpbGFibGVTZXJ2aWNlcycsIGluamVjdG9yLCAnYXNjJylcbiAgfVxuXG4gIGxpbmtQcm90b2NvbFZpZXdGaWx0ZXIgPSAnL09HQzpXTVQ/Uy4qLydcbiAgbGlua1Byb3RvY29sRG93bmxvYWRGaWx0ZXIgPSAnL09HQzpXRlMuKi8nXG5cbiAgcHJvdGVjdGVkIGFzeW5jIGdldEJ1Y2tldExhYmVsKGJ1Y2tldDogVGVybUJ1Y2tldCkge1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXQoXG4gICAgICAgIGBzZWFyY2guZmlsdGVycy5hdmFpbGFibGVTZXJ2aWNlcy4ke2J1Y2tldC50ZXJtfWBcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGF2YWlsYWJsZVNlcnZpY2VzOiB7XG4gICAgICAgIHR5cGU6ICdmaWx0ZXJzJyxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIHZpZXc6IGArbGlua1Byb3RvY29sOiR7dGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyfWAsXG4gICAgICAgICAgZG93bmxvYWQ6IGArbGlua1Byb3RvY29sOiR7dGhpcy5saW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlcn1gLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBmaWx0ZXJzOiBGaWVsZEZpbHRlciA9IHt9XG4gICAgaWYgKHZhbHVlcy5pbmNsdWRlcygndmlldycpKSBmaWx0ZXJzW3RoaXMubGlua1Byb3RvY29sVmlld0ZpbHRlcl0gPSB0cnVlXG4gICAgaWYgKHZhbHVlcy5pbmNsdWRlcygnZG93bmxvYWQnKSlcbiAgICAgIGZpbHRlcnNbdGhpcy5saW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlcl0gPSB0cnVlXG5cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgbGlua1Byb3RvY29sOiBmaWx0ZXJzLFxuICAgIH0pXG4gIH1cblxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlW10+IHtcbiAgICBjb25zdCBsaW5rRmlsdGVyID0gZmlsdGVycy5saW5rUHJvdG9jb2xcbiAgICBpZiAoIWxpbmtGaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICBjb25zdCB2YWx1ZXMgPSBbXVxuICAgIGlmIChsaW5rRmlsdGVyW3RoaXMubGlua1Byb3RvY29sVmlld0ZpbHRlcl0pIHZhbHVlcy5wdXNoKCd2aWV3JylcbiAgICBpZiAobGlua0ZpbHRlclt0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyXSkgdmFsdWVzLnB1c2goJ2Rvd25sb2FkJylcbiAgICByZXR1cm4gb2YodmFsdWVzKVxuICB9XG59XG4iXX0=
368
+ /**
369
+ * This class is meant to be used with the legacy filter on `resourceType` (now deprecated, the use of `recordKind` field is recommended).
370
+ * Since creating filters on the same ES field is not possible, in order to make the resource type filter still working,
371
+ * we create an ES on the fly: `resourceTypeLegacy` that references the `resourceType` under the hood.
372
+ * @deprecated Use `recordKind` field instead.
373
+ */
374
+ export class ResourceTypeLegacyField extends TranslatedSearchField {
375
+ constructor(injector) {
376
+ super('resourceTypeLegacy', injector, 'asc');
377
+ // Ask ES to create a field on the fly: 'resourceTypeLegacy' that is in fact, 'resourceType'
378
+ this.esService.registerRuntimeField('resourceTypeLegacy', `for (resourceType in doc.resourceType) { emit(resourceType) }`);
379
+ }
380
+ }
381
+ export class RecordKindField extends SimpleSearchField {
382
+ constructor(injector) {
383
+ super('resourceType', injector, 'asc');
384
+ this.TYPE_MAPPING = {
385
+ dataset: ['dataset', 'series', 'featureCatalog'],
386
+ service: ['service'],
387
+ reuse: Object.entries(PossibleResourceTypes)
388
+ .filter(([_, v]) => v === 'reuse')
389
+ .map(([k]) => k), // = ['application', 'map', 'staticMap', 'interactiveMap', ...]
390
+ };
391
+ }
392
+ getAvailableValues() {
393
+ return this.repository.aggregate(this.getAggregations()).pipe(map((response) => response[this.esFieldName].buckets || []), map((buckets) => {
394
+ const counts = buckets.reduce((acc, { term, count }) => {
395
+ const value = term.toString();
396
+ const key = this.TYPE_MAPPING.reuse.includes(value)
397
+ ? 'reuse'
398
+ : this.TYPE_MAPPING.dataset.includes(value)
399
+ ? 'dataset'
400
+ : value;
401
+ acc[key] = (acc[key] || 0) + count;
402
+ return acc;
403
+ }, {});
404
+ return Object.keys(this.TYPE_MAPPING).map((type) => ({
405
+ label: type,
406
+ value: type,
407
+ count: counts[type] ?? 0,
408
+ }));
409
+ }));
410
+ }
411
+ getFiltersForValues(values) {
412
+ const filters = {
413
+ [this.esFieldName]: values.reduce((acc, value) => {
414
+ if (value === '')
415
+ return { ...acc, [value]: true };
416
+ const keysToAdd = this.TYPE_MAPPING[value] || [value];
417
+ keysToAdd.forEach((key) => (acc[key] = true));
418
+ return acc;
419
+ }, {}),
420
+ };
421
+ return of(filters);
422
+ }
423
+ getValuesForFilter(filters) {
424
+ const filter = filters[this.esFieldName];
425
+ if (!filter)
426
+ return of([]);
427
+ const activeValues = Object.keys(filter).filter((v) => filter[v]);
428
+ const activeTypes = Object.keys(this.TYPE_MAPPING).filter((type) => this.TYPE_MAPPING[type].every((t) => activeValues.includes(t)));
429
+ // Allow unknown values eg. 'type=somethingnotexist' (for UI to select none)
430
+ const allTypes = [].concat(...Object.values(this.TYPE_MAPPING));
431
+ const unknownValues = activeValues.filter((value) => !allTypes.includes(value));
432
+ return of([...activeTypes, ...unknownValues]);
433
+ }
434
+ }
435
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3NlYXJjaC9zcmMvbGliL3V0aWxzL3NlcnZpY2UvZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNoRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlGQUFpRixDQUFBO0FBQy9ILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRFQUE0RSxDQUFBO0FBU3JILE9BQU8sRUFFTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLDhDQUE4QyxDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUE7QUFXNUYsTUFBTSxPQUFnQixtQkFBbUI7Q0FTeEM7QUFFRCxNQUFNLE9BQU8saUJBQWlCO0lBTTVCLFlBQ1ksV0FBbUIsRUFDbkIsUUFBa0IsRUFDbEIsUUFBd0IsS0FBSyxFQUM3QixZQUE2QixLQUFLO1FBSGxDLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsY0FBUyxHQUFU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QUFDLENBQUMsR0FBRyxXQUFXLEVBQUUsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFBO0lBQy9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQgeyBPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL29yZ2FuaXphdGlvbnMuc2VydmljZS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHtcbiAgQWdncmVnYXRpb25CdWNrZXRzLFxuICBBZ2dyZWdhdGlvbnNQYXJhbXMsXG4gIEZpZWxkRmlsdGVyLFxuICBGaWVsZEZpbHRlckJ5RXhwcmVzc2lvbixcbiAgRmllbGRGaWx0ZXJzLFxuICBUZXJtQnVja2V0LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9zZWFyY2gnXG5pbXBvcnQge1xuICBEYXRlUmFuZ2UsXG4gIEVsYXN0aWNzZWFyY2hTZXJ2aWNlLFxuICBpc0RhdGVSYW5nZSxcbiAgTUVUQURBVEFfTEFOR1VBR0UsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3JlcG9zaXRvcnkvc3JjJ1xuaW1wb3J0IHsgTGFuZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMnXG5pbXBvcnQgeyBmb3JtYXRVc2VySW5mbyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgUG9zc2libGVSZXNvdXJjZVR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvbWV0YWRhdGEtY29udmVydGVyL3NyYydcblxuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3ZhbHVlcycgfCAnZGF0ZVJhbmdlJ1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlID0gc3RyaW5nIHwgbnVtYmVyXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQXZhaWxhYmxlVmFsdWUge1xuICB2YWx1ZTogRmllbGRWYWx1ZVxuICBsYWJlbDogc3RyaW5nXG4gIGNvdW50PzogbnVtYmVyXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlYXJjaEZpZWxkIHtcbiAgYWJzdHJhY3QgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdIHwgRGF0ZVJhbmdlW10+XG4gIGFic3RyYWN0IGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz5cbiAgYWJzdHJhY3QgZ2V0VmFsdWVzRm9yRmlsdGVyKFxuICAgIGZpbHRlcnM6IEZpZWxkRmlsdGVyc1xuICApOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXSB8IEZpZWxkVmFsdWUgfCBEYXRlUmFuZ2U+XG4gIGFic3RyYWN0IGdldFR5cGUoKTogRmllbGRUeXBlXG59XG5cbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yeSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlKVxuXG4gIC8vIEZJWE1FOiB0aGlzIGlzIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIHJ1bnRpbWUgZmllbGRzOyBhYnN0cmFjdCB0aGlzIGFzIHdlbGxcbiAgcHJvdGVjdGVkIGVzU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEVsYXN0aWNzZWFyY2hTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlc0ZpZWxkTmFtZTogc3RyaW5nLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnLFxuICAgIHByb3RlY3RlZCBvcmRlclR5cGU6ICdrZXknIHwgJ2NvdW50JyA9ICdrZXknXG4gICkge31cblxuICBwcm90ZWN0ZWQgZ2V0QWdncmVnYXRpb25zKCk6IEFnZ3JlZ2F0aW9uc1BhcmFtcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXToge1xuICAgICAgICB0eXBlOiAndGVybXMnLFxuICAgICAgICBmaWVsZDogdGhpcy5lc0ZpZWxkTmFtZSxcbiAgICAgICAgbGltaXQ6IDEwMDAsXG4gICAgICAgIHNvcnQ6IFt0aGlzLm9yZGVyLCB0aGlzLm9yZGVyVHlwZV0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBidWNrZXQudGVybS50b1N0cmluZygpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yZXBvc2l0b3J5LmFnZ3JlZ2F0ZSh0aGlzLmdldEFnZ3JlZ2F0aW9ucygpKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAocmVzcG9uc2UpID0+XG4gICAgICAgICAgKHJlc3BvbnNlW3RoaXMuZXNGaWVsZE5hbWVdIGFzIEFnZ3JlZ2F0aW9uQnVja2V0cykuYnVja2V0cyB8fCBbXVxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCgoYnVja2V0czogVGVybUJ1Y2tldFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGJ1Y2tldFByb21pc2VzID0gYnVja2V0cy5tYXAoYXN5bmMgKGJ1Y2tldCkgPT4gKHtcbiAgICAgICAgICBsYWJlbDogYCR7YXdhaXQgdGhpcy5nZXRCdWNrZXRMYWJlbChidWNrZXQpfSAoJHtidWNrZXQuY291bnR9KWAsXG4gICAgICAgICAgdmFsdWU6IGJ1Y2tldC50ZXJtLnRvU3RyaW5nKCksXG4gICAgICAgICAgY291bnQ6IGJ1Y2tldC5jb3VudCxcbiAgICAgICAgfSkpXG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChidWNrZXRQcm9taXNlcylcbiAgICAgIH0pXG4gICAgKVxuICB9XG4gIGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIC8vIEZpZWxkVmFsdWVbXVxuICAgIGlmICh0aGlzLmdldFR5cGUoKSA9PT0gJ3ZhbHVlcycpIHtcbiAgICAgIHJldHVybiBvZih7XG4gICAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogKHZhbHVlcyBhcyBGaWVsZFZhbHVlW10pLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbC50b1N0cmluZygpXG4gICAgICAgICAgaWYgKHZhbHVlICE9PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCBbdmFsdWVdOiB0cnVlIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICB9LCB7fSksXG4gICAgICB9KVxuICAgIH1cbiAgICAvLyBEYXRlUmFuZ2VcbiAgICByZXR1cm4gb2Yoe1xuICAgICAgW3RoaXMuZXNGaWVsZE5hbWVdOiB2YWx1ZXNbMF0gIT09ICcnID8gdmFsdWVzWzBdIDoge30sXG4gICAgfSlcbiAgfVxuICBnZXRWYWx1ZXNGb3JGaWx0ZXIoXG4gICAgZmlsdGVyczogRmllbGRGaWx0ZXJzXG4gICk6IE9ic2VydmFibGU8RmllbGRWYWx1ZVtdIHwgRmllbGRWYWx1ZSB8IERhdGVSYW5nZT4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlcnNbdGhpcy5lc0ZpZWxkTmFtZV1cbiAgICBpZiAoIWZpbHRlcikgcmV0dXJuIG9mKFtdKVxuICAgIC8vIGZpbHRlciBieSBleHByZXNzaW9uXG4gICAgaWYgKHR5cGVvZiBmaWx0ZXIgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gb2YoW2ZpbHRlcl0pXG4gICAgfVxuICAgIC8vIGZpbHRlciBieSBkYXRlIHJhbmdlXG4gICAgaWYgKGlzRGF0ZVJhbmdlKGZpbHRlcikpIHtcbiAgICAgIHJldHVybiBvZihmaWx0ZXIpXG4gICAgfVxuICAgIC8vIGZpbHRlciBieSB2YWx1ZXNcbiAgICBjb25zdCB2YWx1ZXMgPSBPYmplY3Qua2V5cyhmaWx0ZXIpLmZpbHRlcigodikgPT4gZmlsdGVyW3ZdKVxuICAgIHJldHVybiBvZih2YWx1ZXMpXG4gIH1cblxuICBnZXRUeXBlKCk6IEZpZWxkVHlwZSB7XG4gICAgcmV0dXJuICd2YWx1ZXMnXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJvdGVjdGVkIHBsYXRmb3JtU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFBsYXRmb3JtU2VydmljZUludGVyZmFjZSlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZXNGaWVsZE5hbWU6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByb3RlY3RlZCBvcmRlcjogJ2FzYycgfCAnZGVzYycgPSAnYXNjJyxcbiAgICBwcm90ZWN0ZWQgb3JkZXJUeXBlOiAna2V5JyB8ICdjb3VudCcgPSAna2V5J1xuICApIHtcbiAgICBzdXBlcihlc0ZpZWxkTmFtZSwgaW5qZWN0b3IsIG9yZGVyLCBvcmRlclR5cGUpXG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0VHJhbnNsYXRpb24oa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5wbGF0Zm9ybVNlcnZpY2UudHJhbnNsYXRlS2V5KGtleSkpXG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldFRyYW5zbGF0aW9uKGJ1Y2tldC50ZXJtKSkgfHwgYnVja2V0LnRlcm1cbiAgfVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcygpOiBPYnNlcnZhYmxlPEZpZWxkQXZhaWxhYmxlVmFsdWVbXT4ge1xuICAgIGlmICh0aGlzLm9yZGVyVHlwZSA9PT0gJ2NvdW50JykgcmV0dXJuIHN1cGVyLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gICAgLy8gc29ydCB2YWx1ZXMgYnkgYWxwaGFiZXRpY2FsIG9yZGVyXG4gICAgcmV0dXJuIHN1cGVyXG4gICAgICAuZ2V0QXZhaWxhYmxlVmFsdWVzKClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHZhbHVlcykgPT5cbiAgICAgICAgICB2YWx1ZXMuc29ydCgoYSwgYikgPT4gbmV3IEludGwuQ29sbGF0b3IoKS5jb21wYXJlKGEubGFiZWwsIGIubGFiZWwpKVxuICAgICAgICApXG4gICAgICApXG4gIH1cbn1cblxuLyoqXG4gKiBUaGlzIHNlYXJjaCBmaWVsZCB3aWxsIGVpdGhlciB0YXJnZXQgdGhlIGAuZGVmYXVsdGAgZmllbGQsIG9yIGEgc3BlY2lmaWMgYC5sYW5neHl6YCBmaWVsZCBhY2NvcmRpbmdcbiAqIHRvIHRoZSBkZWZpbmVkIE1FVEFEQVRBX0xBTkdVQUdFIHRva2VuXG4gKiBUaGUgcHJvdmlkZWQgRVMgZmllbGQgbmFtZSBzaG91bGQgbm90IGluY2x1ZGUgYW55IHByZWZpeCBzdWNoIGFzIGAubGFuZ2VuZ2BcbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIGxhbmdTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoTGFuZ1NlcnZpY2UpXG4gIHByaXZhdGUgc2VhcmNoTGFuZ3VhZ2UgPSB0aGlzLmluamVjdG9yLmdldChNRVRBREFUQV9MQU5HVUFHRSwgbnVsbClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZXNGaWVsZE5hbWU6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByb3RlY3RlZCBvcmRlcjogJ2FzYycgfCAnZGVzYycgPSAnYXNjJyxcbiAgICBwcm90ZWN0ZWQgb3JkZXJUeXBlOiAna2V5JyB8ICdjb3VudCcgPSAna2V5J1xuICApIHtcbiAgICBzdXBlcihlc0ZpZWxkTmFtZSwgaW5qZWN0b3IsIG9yZGVyLCBvcmRlclR5cGUpXG4gICAgLy8gbm90ZTogd2UncmUgZXhjbHVkaW5nIHRoZSBtZXRhZGF0YSBsYW5ndWFnZSBcImN1cnJlbnRcIiB2YWx1ZSBiZWNhdXNlIHRoYXQgd291bGQgcHJvZHVjZVxuICAgIC8vIHBlcm1hbGlua3MgdGhhdCBtaWdodCBub3Qgd29yayBmb3IgZGlmZmVyZW50IHVzZXJzXG4gICAgaWYgKHRoaXMuc2VhcmNoTGFuZ3VhZ2UgJiYgdGhpcy5zZWFyY2hMYW5ndWFnZSAhPT0gJ2N1cnJlbnQnKSB7XG4gICAgICB0aGlzLmVzRmllbGROYW1lICs9IGAubGFuZyR7dGhpcy5zZWFyY2hMYW5ndWFnZX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZXNGaWVsZE5hbWUgKz0gJy5kZWZhdWx0J1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRnVsbFRleHRTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIEFic3RyYWN0U2VhcmNoRmllbGQge1xuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICByZXR1cm4gb2YoW10pXG4gIH1cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIG9mKHtcbiAgICAgIGFueTogdmFsdWVzWzBdIGFzIHN0cmluZyxcbiAgICB9KVxuICB9XG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIHJldHVybiBvZihmaWx0ZXJzLmFueSA/IFtmaWx0ZXJzLmFueSBhcyBGaWVsZEZpbHRlckJ5RXhwcmVzc2lvbl0gOiBbXSlcbiAgfVxuICBnZXRUeXBlKCk6IEZpZWxkVHlwZSB7XG4gICAgcmV0dXJuICd2YWx1ZXMnXG4gIH1cbn1cblxubWFya2VyKCdzZWFyY2guZmlsdGVycy5pc1NwYXRpYWwueWVzJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLm5vJylcblxuZXhwb3J0IGNsYXNzIElzU3BhdGlhbFNlYXJjaEZpZWxkIGV4dGVuZHMgU2ltcGxlU2VhcmNoRmllbGQge1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKVxuXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdpc1NwYXRpYWwnLCBpbmplY3RvciwgJ2FzYycpXG4gICAgdGhpcy5lc1NlcnZpY2UucmVnaXN0ZXJSdW50aW1lRmllbGQoXG4gICAgICAnaXNTcGF0aWFsJyxcbiAgICAgIGBTdHJpbmcgcmVzdWx0ID0gJ25vJztcblN0cmluZyBmb3JtYXRzID0gZG9jLmZvcm1hdC5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcbmlmIChmb3JtYXRzLmNvbnRhaW5zKCdnZW9qc29uJykgfHwgZm9ybWF0cy5jb250YWlucygnYXJjZ2lzJykgfHwgZm9ybWF0cy5jb250YWlucygnb2djJykgfHwgZm9ybWF0cy5jb250YWlucygnc2hwJykpIHJlc3VsdCA9ICd5ZXMnO1xuU3RyaW5nIHByb3RvY29scyA9IGRvYy5saW5rUHJvdG9jb2wuam9pbignfCcpLnRvTG93ZXJDYXNlKCk7XG5pZiAocHJvdG9jb2xzLmNvbnRhaW5zKCdlc3JpJykgfHwgcHJvdG9jb2xzLmNvbnRhaW5zKCdvZ2MnKSkgcmVzdWx0ID0gJ3llcyc7XG5lbWl0KHJlc3VsdCk7YFxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNTcGF0aWFsOiB7XG4gICAgICAgIHR5cGU6ICd0ZXJtcycsXG4gICAgICAgIGxpbWl0OiAyLFxuICAgICAgICBmaWVsZDogJ2lzU3BhdGlhbCcsXG4gICAgICAgIHNvcnQ6IFsnYXNjJywgJ2tleSddLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChgc2VhcmNoLmZpbHRlcnMuaXNTcGF0aWFsLiR7YnVja2V0LnRlcm19YClcbiAgICApXG4gIH1cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBpc1NwYXRpYWwgPSB7fVxuICAgIGlmICh2YWx1ZXMubGVuZ3RoID4gMCkgaXNTcGF0aWFsW3ZhbHVlc1t2YWx1ZXMubGVuZ3RoIC0gMV1dID0gdHJ1ZVxuICAgIHJldHVybiBvZih7XG4gICAgICBpc1NwYXRpYWwsXG4gICAgfSlcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlcnMuaXNTcGF0aWFsXG4gICAgaWYgKCFmaWx0ZXIpIHJldHVybiBvZihbXSlcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoZmlsdGVyKVxuICAgIHJldHVybiBvZihrZXlzLmxlbmd0aCA/IFtrZXlzWzBdXSA6IFtdKVxuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5wZGRsJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5vZGJsJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5vZGMtYnknKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLmNjLWJ5LXNhJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5jYy1ieScpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuY2MtemVybycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UuZXRhbGFiLXYyJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMubGljZW5zZS5ldGFsYWInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5saWNlbnNlLnVua25vd24nKVxuXG4vLyBOb3RlOiB2YWx1ZXMgYXJlIGluc3BpcmVkIGZyb20gaHR0cHM6Ly9kb2MuZGF0YS5nb3V2LmZyL21vaXNzb25uYWdlL2xpY2VuY2VzL1xuZXhwb3J0IGNsYXNzIExpY2Vuc2VTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSlcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcignbGljZW5zZScsIGluamVjdG9yLCAnYXNjJylcbiAgICB0aGlzLmVzU2VydmljZS5yZWdpc3RlclJ1bnRpbWVGaWVsZChcbiAgICAgICdsaWNlbnNlJyxcbiAgICAgIGBTdHJpbmcgcmF3ID0gJyc7XG5pZiAoZG9jLmNvbnRhaW5zS2V5KCdsaWNlbnNlT2JqZWN0LmRlZmF1bHQua2V5d29yZCcpICYmIGRvY1snbGljZW5zZU9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5sZW5ndGggPiAwKVxuICByYXcgKz0gZG9jWydsaWNlbnNlT2JqZWN0LmRlZmF1bHQua2V5d29yZCddLmpvaW4oJ3wnKS50b0xvd2VyQ2FzZSgpO1xuaWYgKGRvYy5jb250YWluc0tleSgnTURfTGVnYWxDb25zdHJhaW50c1VzZUxpbWl0YXRpb25PYmplY3QuZGVmYXVsdC5rZXl3b3JkJykgJiYgZG9jWydNRF9MZWdhbENvbnN0cmFpbnRzVXNlTGltaXRhdGlvbk9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5sZW5ndGggPiAwKVxuICByYXcgKz0gZG9jWydNRF9MZWdhbENvbnN0cmFpbnRzVXNlTGltaXRhdGlvbk9iamVjdC5kZWZhdWx0LmtleXdvcmQnXS5qb2luKCd8JykudG9Mb3dlckNhc2UoKTtcblxuYm9vbGVhbiB1bmtub3duID0gdHJ1ZTtcbmlmIChyYXcuY29udGFpbnMoJ3BkZGwnKSB8fCByYXcuY29udGFpbnMoJ3B1YmxpYyBkb21haW4gZGVkaWNhdGlvbiBhbmQgbGljZW5jZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgncGRkbCcpO1xufVxuaWYgKHJhdy5jb250YWlucygnb2RibCcpIHx8IHJhdy5jb250YWlucygnb3BlbiBkYXRhYmFzZSBsaWNlbnNlJykpIHtcbiAgdW5rbm93biA9IGZhbHNlO1xuICBlbWl0KCdvZGJsJyk7XG59XG5pZiAocmF3LmNvbnRhaW5zKCdvZGMtYnknKSB8fCByYXcuY29udGFpbnMoJ29wZW5kYXRhY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvc3VtbWFyeS9cIicpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnb2RjLWJ5Jyk7XG59XG5cbmlmIChyYXcuY29udGFpbnMoJ2NjLWJ5LXNhJykgfHwgcmF3LmNvbnRhaW5zKCdjcmVhdGl2ZSBjb21tb25zIGF0dHJpYnV0aW9uIHNoYXJlLWFsaWtlJykpIHtcbiAgdW5rbm93biA9IGZhbHNlO1xuICBlbWl0KCdjYy1ieS1zYScpO1xufSBlbHNlIGlmIChyYXcuY29udGFpbnMoJ2NjLWJ5JykgfHwgcmF3LmNvbnRhaW5zKCdjYyBieScpIHx8IHJhdy5jb250YWlucygnY3JlYXRpdmUgY29tbW9ucyBhdHRyaWJ1dGlvbicpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtYnknKTtcbn0gZWxzZSBpZiAocmF3LmNvbnRhaW5zKCdjYzAnKSB8fCByYXcuY29udGFpbnMoJ2NjLTAnKSB8fCByYXcuY29udGFpbnMoJ2NjemVybycpIHx8IHJhdy5jb250YWlucygnY2MtemVybycpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnY2MtemVybycpO1xufVxuXG5pZiAocmF3LmNvbnRhaW5zKCdldGFsYWInKSAmJiAocmF3LmNvbnRhaW5zKCd2MicpIHx8IHJhdy5jb250YWlucygnMi4wJykpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnZXRhbGFiLXYyJyk7XG59IGVsc2UgaWYgKHJhdy5jb250YWlucygnb3BlbiBsaWNlbmNlJykgfHwgcmF3LmNvbnRhaW5zKCdsaWNlbmNlIG91dmVydGUnKSB8fCByYXcuY29udGFpbnMoJ2xpY2VuY2Vfb3V2ZXJ0ZScpKSB7XG4gIHVua25vd24gPSBmYWxzZTtcbiAgZW1pdCgnZXRhbGFiJyk7XG59XG5cbmlmKHVua25vd24pIGVtaXQoJ3Vua25vd24nKTtgXG4gICAgKVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldEFnZ3JlZ2F0aW9ucygpOiBBZ2dyZWdhdGlvbnNQYXJhbXMge1xuICAgIHJldHVybiB7XG4gICAgICBsaWNlbnNlOiB7XG4gICAgICAgIHR5cGU6ICd0ZXJtcycsXG4gICAgICAgIGxpbWl0OiAxMCxcbiAgICAgICAgZmllbGQ6ICdsaWNlbnNlJyxcbiAgICAgICAgc29ydDogWydkZXNjJywgJ2NvdW50J10sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXRCdWNrZXRMYWJlbChidWNrZXQ6IFRlcm1CdWNrZXQpIHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0KGBzZWFyY2guZmlsdGVycy5saWNlbnNlLiR7YnVja2V0LnRlcm19YClcbiAgICApXG4gIH1cbn1cblxuLy8gVGhpcyB3aWxsIHVzZSB0aGUgT3JnYW5pemF0aW9uc1NlcnZpY2VJbnRlcmZhY2Vcbi8vIEZpZWxkIHZhbHVlcyBhcmUgdGhlIG9yZ2FuaXphdGlvbiBuYW1lc1xuZXhwb3J0IGNsYXNzIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkIGltcGxlbWVudHMgQWJzdHJhY3RTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgb3Jnc1NlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChPcmdhbml6YXRpb25zU2VydmljZUludGVyZmFjZSlcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICBnZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlczogRmllbGRWYWx1ZVtdKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZS5vcmdhbmlzYXRpb25zJC5waXBlKFxuICAgICAgbWFwKChvcmdzKSA9PlxuICAgICAgICB2YWx1ZXNcbiAgICAgICAgICAubWFwKChuYW1lKSA9PiBvcmdzLmZpbmQoKG9yZykgPT4gb3JnLm5hbWUgPT09IG5hbWUpKVxuICAgICAgICAgIC5maWx0ZXIoKG9yZykgPT4gb3JnICE9PSB1bmRlZmluZWQpXG4gICAgICApLFxuICAgICAgc3dpdGNoTWFwKChzZWxlY3RlZE9yZ3MpID0+XG4gICAgICAgIHRoaXMub3Jnc1NlcnZpY2UuZ2V0RmlsdGVyc0Zvck9yZ3Moc2VsZWN0ZWRPcmdzKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIHJldHVybiB0aGlzLm9yZ3NTZXJ2aWNlXG4gICAgICAuZ2V0T3Jnc0Zyb21GaWx0ZXJzKGZpbHRlcnMpXG4gICAgICAucGlwZShtYXAoKG9yZ3MpID0+IG9yZ3MubWFwKChvcmcpID0+IG9yZy5uYW1lKSkpXG4gIH1cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxGaWVsZEF2YWlsYWJsZVZhbHVlW10+IHtcbiAgICAvLyBzb3J0IHZhbHVlcyBieSBhbHBoYWJldGljYWwgb3JkZXJcbiAgICByZXR1cm4gdGhpcy5vcmdzU2VydmljZS5vcmdhbmlzYXRpb25zJC5waXBlKFxuICAgICAgbWFwKChvcmdhbmlzYXRpb25zKSA9PlxuICAgICAgICBvcmdhbmlzYXRpb25zLm1hcCgob3JnKSA9PiAoe1xuICAgICAgICAgIGxhYmVsOiBgJHtvcmcubmFtZX0gKCR7b3JnLnJlY29yZENvdW50fSlgLFxuICAgICAgICAgIHZhbHVlOiBvcmcubmFtZSxcbiAgICAgICAgfSkpXG4gICAgICApLFxuICAgICAgbWFwKCh2YWx1ZXMpID0+XG4gICAgICAgIHZhbHVlcy5zb3J0KChhLCBiKSA9PiBuZXcgSW50bC5Db2xsYXRvcigpLmNvbXBhcmUoYS5sYWJlbCwgYi5sYWJlbCkpXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAndmFsdWVzJ1xuICB9XG59XG5leHBvcnQgY2xhc3MgT3duZXJTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ293bmVyJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVc2VyU2VhcmNoRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCd1c2VyaW5mby5rZXl3b3JkJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIHN1cGVyLmdldEF2YWlsYWJsZVZhbHVlcygpLnBpcGUoXG4gICAgICBtYXAoKHZhbHVlcykgPT5cbiAgICAgICAgdmFsdWVzLm1hcCgodikgPT4gKHtcbiAgICAgICAgICAuLi52LFxuICAgICAgICAgIGxhYmVsOiBmb3JtYXRVc2VySW5mbyh2LmxhYmVsLCB0cnVlKSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRlUmFuZ2VTZWFyY2hGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVzRmllbGROYW1lOiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnID0gJ2FzYycsXG4gICAgcHJvdGVjdGVkIG9yZGVyVHlwZTogJ2tleScgfCAnY291bnQnID0gJ2tleSdcbiAgKSB7XG4gICAgc3VwZXIoZXNGaWVsZE5hbWUsIGluamVjdG9yLCBvcmRlciwgb3JkZXJUeXBlKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgLy8gVE9ETzogcmV0dXJuIGFuIGFycmF5IG9mIGRhdGVzIHRvIHNob3cgd2hpY2ggb25lIGFyZSBhdmFpbGFibGUgaW4gdGhlIGRhdGUgcGlja2VyXG4gICAgcmV0dXJuIG9mKFtdKVxuICB9XG5cbiAgZ2V0VHlwZSgpOiBGaWVsZFR5cGUge1xuICAgIHJldHVybiAnZGF0ZVJhbmdlJ1xuICB9XG59XG5cbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuYXZhaWxhYmxlU2VydmljZXMudmlldycpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLmRvd25sb2FkJylcblxuZXhwb3J0IGNsYXNzIEF2YWlsYWJsZVNlcnZpY2VzRmllbGQgZXh0ZW5kcyBTaW1wbGVTZWFyY2hGaWVsZCB7XG4gIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpXG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoJ2F2YWlsYWJsZVNlcnZpY2VzJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgbGlua1Byb3RvY29sVmlld0ZpbHRlciA9ICcvT0dDOldNVD9TLiovJ1xuICBsaW5rUHJvdG9jb2xEb3dubG9hZEZpbHRlciA9ICcvT0dDOldGUy4qLydcblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QnVja2V0TGFiZWwoYnVja2V0OiBUZXJtQnVja2V0KSB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChcbiAgICAgICAgYHNlYXJjaC5maWx0ZXJzLmF2YWlsYWJsZVNlcnZpY2VzLiR7YnVja2V0LnRlcm19YFxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBZ2dyZWdhdGlvbnMoKTogQWdncmVnYXRpb25zUGFyYW1zIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXZhaWxhYmxlU2VydmljZXM6IHtcbiAgICAgICAgdHlwZTogJ2ZpbHRlcnMnLFxuICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgdmlldzogYCtsaW5rUHJvdG9jb2w6JHt0aGlzLmxpbmtQcm90b2NvbFZpZXdGaWx0ZXJ9YCxcbiAgICAgICAgICBkb3dubG9hZDogYCtsaW5rUHJvdG9jb2w6JHt0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyfWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIGdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzOiBGaWVsZFZhbHVlW10pOiBPYnNlcnZhYmxlPEZpZWxkRmlsdGVycz4ge1xuICAgIGNvbnN0IGZpbHRlcnM6IEZpZWxkRmlsdGVyID0ge31cbiAgICBpZiAodmFsdWVzLmluY2x1ZGVzKCd2aWV3JykpIGZpbHRlcnNbdGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyXSA9IHRydWVcbiAgICBpZiAodmFsdWVzLmluY2x1ZGVzKCdkb3dubG9hZCcpKVxuICAgICAgZmlsdGVyc1t0aGlzLmxpbmtQcm90b2NvbERvd25sb2FkRmlsdGVyXSA9IHRydWVcblxuICAgIHJldHVybiBvZih7XG4gICAgICBsaW5rUHJvdG9jb2w6IGZpbHRlcnMsXG4gICAgfSlcbiAgfVxuXG4gIGdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzOiBGaWVsZEZpbHRlcnMpOiBPYnNlcnZhYmxlPEZpZWxkVmFsdWVbXT4ge1xuICAgIGNvbnN0IGxpbmtGaWx0ZXIgPSBmaWx0ZXJzLmxpbmtQcm90b2NvbFxuICAgIGlmICghbGlua0ZpbHRlcikgcmV0dXJuIG9mKFtdKVxuICAgIGNvbnN0IHZhbHVlcyA9IFtdXG4gICAgaWYgKGxpbmtGaWx0ZXJbdGhpcy5saW5rUHJvdG9jb2xWaWV3RmlsdGVyXSkgdmFsdWVzLnB1c2goJ3ZpZXcnKVxuICAgIGlmIChsaW5rRmlsdGVyW3RoaXMubGlua1Byb3RvY29sRG93bmxvYWRGaWx0ZXJdKSB2YWx1ZXMucHVzaCgnZG93bmxvYWQnKVxuICAgIHJldHVybiBvZih2YWx1ZXMpXG4gIH1cbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIG1lYW50IHRvIGJlIHVzZWQgd2l0aCB0aGUgbGVnYWN5IGZpbHRlciBvbiBgcmVzb3VyY2VUeXBlYCAobm93IGRlcHJlY2F0ZWQsIHRoZSB1c2Ugb2YgYHJlY29yZEtpbmRgIGZpZWxkIGlzIHJlY29tbWVuZGVkKS5cbiAqIFNpbmNlIGNyZWF0aW5nIGZpbHRlcnMgb24gdGhlIHNhbWUgRVMgZmllbGQgaXMgbm90IHBvc3NpYmxlLCBpbiBvcmRlciB0byBtYWtlIHRoZSByZXNvdXJjZSB0eXBlIGZpbHRlciBzdGlsbCB3b3JraW5nLFxuICogd2UgY3JlYXRlIGFuIEVTIG9uIHRoZSBmbHk6IGByZXNvdXJjZVR5cGVMZWdhY3lgIHRoYXQgcmVmZXJlbmNlcyB0aGUgYHJlc291cmNlVHlwZWAgdW5kZXIgdGhlIGhvb2QuXG4gKiBAZGVwcmVjYXRlZCBVc2UgYHJlY29yZEtpbmRgIGZpZWxkIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCBleHRlbmRzIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKCdyZXNvdXJjZVR5cGVMZWdhY3knLCBpbmplY3RvciwgJ2FzYycpXG5cbiAgICAvLyBBc2sgRVMgdG8gY3JlYXRlIGEgZmllbGQgb24gdGhlIGZseTogJ3Jlc291cmNlVHlwZUxlZ2FjeScgdGhhdCBpcyBpbiBmYWN0LCAncmVzb3VyY2VUeXBlJ1xuICAgIHRoaXMuZXNTZXJ2aWNlLnJlZ2lzdGVyUnVudGltZUZpZWxkKFxuICAgICAgJ3Jlc291cmNlVHlwZUxlZ2FjeScsXG4gICAgICBgZm9yIChyZXNvdXJjZVR5cGUgaW4gZG9jLnJlc291cmNlVHlwZSkgeyBlbWl0KHJlc291cmNlVHlwZSkgfWBcbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlY29yZEtpbmRGaWVsZCBleHRlbmRzIFNpbXBsZVNlYXJjaEZpZWxkIHtcbiAgVFlQRV9NQVBQSU5HID0ge1xuICAgIGRhdGFzZXQ6IFsnZGF0YXNldCcsICdzZXJpZXMnLCAnZmVhdHVyZUNhdGFsb2cnXSxcbiAgICBzZXJ2aWNlOiBbJ3NlcnZpY2UnXSxcbiAgICByZXVzZTogT2JqZWN0LmVudHJpZXMoUG9zc2libGVSZXNvdXJjZVR5cGVzKVxuICAgICAgLmZpbHRlcigoW18sIHZdKSA9PiB2ID09PSAncmV1c2UnKVxuICAgICAgLm1hcCgoW2tdKSA9PiBrKSwgLy8gPSBbJ2FwcGxpY2F0aW9uJywgJ21hcCcsICdzdGF0aWNNYXAnLCAnaW50ZXJhY3RpdmVNYXAnLCAuLi5dXG4gIH1cblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigncmVzb3VyY2VUeXBlJywgaW5qZWN0b3IsICdhc2MnKVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlVmFsdWVzKCk6IE9ic2VydmFibGU8RmllbGRBdmFpbGFibGVWYWx1ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucmVwb3NpdG9yeS5hZ2dyZWdhdGUodGhpcy5nZXRBZ2dyZWdhdGlvbnMoKSkucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKHJlc3BvbnNlKSA9PlxuICAgICAgICAgIChyZXNwb25zZVt0aGlzLmVzRmllbGROYW1lXSBhcyBBZ2dyZWdhdGlvbkJ1Y2tldHMpLmJ1Y2tldHMgfHwgW11cbiAgICAgICksXG4gICAgICBtYXAoKGJ1Y2tldHM6IFRlcm1CdWNrZXRbXSkgPT4ge1xuICAgICAgICBjb25zdCBjb3VudHMgPSBidWNrZXRzLnJlZHVjZShcbiAgICAgICAgICAoYWNjLCB7IHRlcm0sIGNvdW50IH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGVybS50b1N0cmluZygpXG4gICAgICAgICAgICBjb25zdCBrZXkgPSB0aGlzLlRZUEVfTUFQUElORy5yZXVzZS5pbmNsdWRlcyh2YWx1ZSlcbiAgICAgICAgICAgICAgPyAncmV1c2UnXG4gICAgICAgICAgICAgIDogdGhpcy5UWVBFX01BUFBJTkcuZGF0YXNldC5pbmNsdWRlcyh2YWx1ZSlcbiAgICAgICAgICAgICAgICA/ICdkYXRhc2V0J1xuICAgICAgICAgICAgICAgIDogdmFsdWVcblxuICAgICAgICAgICAgYWNjW2tleV0gPSAoYWNjW2tleV0gfHwgMCkgKyBjb3VudFxuICAgICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICAgIH0sXG4gICAgICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPlxuICAgICAgICApXG5cbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuVFlQRV9NQVBQSU5HKS5tYXAoKHR5cGUpID0+ICh7XG4gICAgICAgICAgbGFiZWw6IHR5cGUsXG4gICAgICAgICAgdmFsdWU6IHR5cGUsXG4gICAgICAgICAgY291bnQ6IGNvdW50c1t0eXBlXSA/PyAwLFxuICAgICAgICB9KSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0RmlsdGVyc0ZvclZhbHVlcyh2YWx1ZXM6IEZpZWxkVmFsdWVbXSk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgZmlsdGVycyA9IHtcbiAgICAgIFt0aGlzLmVzRmllbGROYW1lXTogdmFsdWVzLnJlZHVjZSgoYWNjLCB2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09ICcnKSByZXR1cm4geyAuLi5hY2MsIFt2YWx1ZV06IHRydWUgfVxuXG4gICAgICAgIGNvbnN0IGtleXNUb0FkZCA9IHRoaXMuVFlQRV9NQVBQSU5HW3ZhbHVlXSB8fCBbdmFsdWVdXG4gICAgICAgIGtleXNUb0FkZC5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4gKGFjY1trZXldID0gdHJ1ZSkpXG5cbiAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgfSwge30pLFxuICAgIH1cblxuICAgIHJldHVybiBvZihmaWx0ZXJzKVxuICB9XG5cbiAgZ2V0VmFsdWVzRm9yRmlsdGVyKGZpbHRlcnM6IEZpZWxkRmlsdGVycyk6IE9ic2VydmFibGU8RmllbGRWYWx1ZVtdPiB7XG4gICAgY29uc3QgZmlsdGVyID0gZmlsdGVyc1t0aGlzLmVzRmllbGROYW1lXVxuICAgIGlmICghZmlsdGVyKSByZXR1cm4gb2YoW10pXG5cbiAgICBjb25zdCBhY3RpdmVWYWx1ZXMgPSBPYmplY3Qua2V5cyhmaWx0ZXIpLmZpbHRlcigodikgPT4gZmlsdGVyW3ZdKVxuICAgIGNvbnN0IGFjdGl2ZVR5cGVzID0gT2JqZWN0LmtleXModGhpcy5UWVBFX01BUFBJTkcpLmZpbHRlcigodHlwZSkgPT5cbiAgICAgIHRoaXMuVFlQRV9NQVBQSU5HW3R5cGVdLmV2ZXJ5KCh0OiBzdHJpbmcpID0+IGFjdGl2ZVZhbHVlcy5pbmNsdWRlcyh0KSlcbiAgICApXG5cbiAgICAvLyBBbGxvdyB1bmtub3duIHZhbHVlcyBlZy4gJ3R5cGU9c29tZXRoaW5nbm90ZXhpc3QnIChmb3IgVUkgdG8gc2VsZWN0IG5vbmUpXG4gICAgY29uc3QgYWxsVHlwZXMgPSBbXS5jb25jYXQoLi4uT2JqZWN0LnZhbHVlcyh0aGlzLlRZUEVfTUFQUElORykpXG4gICAgY29uc3QgdW5rbm93blZhbHVlcyA9IGFjdGl2ZVZhbHVlcy5maWx0ZXIoXG4gICAgICAodmFsdWUpID0+ICFhbGxUeXBlcy5pbmNsdWRlcyh2YWx1ZSlcbiAgICApXG5cbiAgICByZXR1cm4gb2YoWy4uLmFjdGl2ZVR5cGVzLCAuLi51bmtub3duVmFsdWVzXSlcbiAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { Injectable, Injector } from '@angular/core';
2
- import { AvailableServicesField, DateRangeSearchField, FullTextSearchField, IsSpatialSearchField, LicenseSearchField, MultilingualSearchField, OrganizationSearchField, OwnerSearchField, SimpleSearchField, TranslatedSearchField, UserSearchField, } from './fields';
2
+ import { AvailableServicesField, DateRangeSearchField, FullTextSearchField, IsSpatialSearchField, LicenseSearchField, MultilingualSearchField, OrganizationSearchField, OwnerSearchField, ResourceTypeLegacyField, SimpleSearchField, TranslatedSearchField, RecordKindField, UserSearchField, } from './fields';
3
3
  import { forkJoin, of } from 'rxjs';
4
4
  import { map } from 'rxjs/operators';
5
5
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
@@ -29,7 +29,8 @@ export class FieldsService {
29
29
  this.fields = {
30
30
  organization: new OrganizationSearchField(this.injector),
31
31
  format: new SimpleSearchField('format', this.injector, 'asc'),
32
- resourceType: new TranslatedSearchField('resourceType', this.injector, 'asc'),
32
+ resourceType: new ResourceTypeLegacyField(this.injector), // Deprecated, use `recordKind` instead
33
+ recordKind: new RecordKindField(this.injector),
33
34
  representationType: new TranslatedSearchField('cl_spatialRepresentationType.key', this.injector, 'asc'),
34
35
  publicationYear: new SimpleSearchField('publicationYearForResource', this.injector, 'desc'),
35
36
  topic: new TranslatedSearchField('cl_topic.key', this.injector, 'asc'),
@@ -86,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
86
87
  providedIn: 'root',
87
88
  }]
88
89
  }], ctorParameters: () => [{ type: i0.Injector }] });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYy9saWIvdXRpbHMvc2VydmljZS9maWVsZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNwRCxPQUFPLEVBRUwsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUVwQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQ3ZCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIscUJBQXFCLEVBQ3JCLGVBQWUsR0FDaEIsTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDL0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXBDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTs7QUFNaEUsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFDL0IsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUE7QUFDdkMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7QUFDaEMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFDbEMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7QUFDaEMsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7QUFDeEMsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUE7QUFDM0MsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7QUFDakMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENB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QU8sRUFBRSxFQUFFLENBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQzNELENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxPQUFxQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FDM0MsQ0FDRixDQUFBO1FBQ0QsT0FBTyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNsQixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDL0QsQ0FDRixDQUFBO0lBQ0gsQ0FBQzsrR0FoSFUsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBBYnN0cmFjdFNlYXJjaEZpZWxkLFxuICBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkLFxuICBEYXRlUmFuZ2VTZWFyY2hGaWVsZCxcbiAgRmllbGRWYWx1ZSxcbiAgRnVsbFRleHRTZWFyY2hGaWVsZCxcbiAgSXNTcGF0aWFsU2VhcmNoRmllbGQsXG4gIExpY2Vuc2VTZWFyY2hGaWVsZCxcbiAgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQsXG4gIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkLFxuICBPd25lclNlYXJjaEZpZWxkLFxuICBTaW1wbGVTZWFyY2hGaWVsZCxcbiAgVHJhbnNsYXRlZFNlYXJjaEZpZWxkLFxuICBVc2VyU2VhcmNoRmllbGQsXG59IGZyb20gJy4vZmllbGRzJ1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRmllbGRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgRGF0ZVJhbmdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvcmVwb3NpdG9yeS9zcmMnXG5cbi8vIGtleSBpcyB0aGUgZmllbGQgbmFtZVxuZXhwb3J0IHR5cGUgRmllbGRWYWx1ZXMgPSBSZWNvcmQ8c3RyaW5nLCBGaWVsZFZhbHVlW10gfCBGaWVsZFZhbHVlIHwgRGF0ZVJhbmdlPlxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmZvcm1hdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmluc3BpcmVLZXl3b3JkJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMua2V5d29yZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5wdWJsaWNhdGlvblllYXInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5vcmdhbml6YXRpb24nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXByZXNlbnRhdGlvblR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXNvdXJjZVR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5zdGFuZGFyZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnRvcGljJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuY29udGFjdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnByb2R1Y2VyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucHVibGlzaGVyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMudXNlcicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmNoYW5nZURhdGUnKVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzU2VydmljZSB7XG4gIHByb3RlY3RlZCBmaWVsZHMgPSB7XG4gICAgb3JnYW5pemF0aW9uOiBuZXcgT3JnYW5pemF0aW9uU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgZm9ybWF0OiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoJ2Zvcm1hdCcsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICByZXNvdXJjZVR5cGU6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoXG4gICAgICAncmVzb3VyY2VUeXBlJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgcmVwcmVzZW50YXRpb25UeXBlOiBuZXcgVHJhbnNsYXRlZFNlYXJjaEZpZWxkKFxuICAgICAgJ2NsX3NwYXRpYWxSZXByZXNlbnRhdGlvblR5cGUua2V5JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgcHVibGljYXRpb25ZZWFyOiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoXG4gICAgICAncHVibGljYXRpb25ZZWFyRm9yUmVzb3VyY2UnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdkZXNjJ1xuICAgICksXG4gICAgdG9waWM6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoJ2NsX3RvcGljLmtleScsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICBpbnNwaXJlS2V5d29yZDogbmV3IFRyYW5zbGF0ZWRTZWFyY2hGaWVsZChcbiAgICAgICd0aF9odHRwaW5zcGlyZWVjZXVyb3BhZXV0aGVtZS10aGVtZS5saW5rJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAga2V5d29yZDogbmV3IE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkKCd0YWcnLCB0aGlzLmluamVjdG9yLCAnZGVzYycsICdjb3VudCcpLFxuICAgIGRvY3VtZW50U3RhbmRhcmQ6IG5ldyBTaW1wbGVTZWFyY2hGaWVsZChcbiAgICAgICdkb2N1bWVudFN0YW5kYXJkJyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJ1xuICAgICksXG4gICAgaXNTcGF0aWFsOiBuZXcgSXNTcGF0aWFsU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgcTogbmV3IEZ1bGxUZXh0U2VhcmNoRmllbGQoKSxcbiAgICBsaWNlbnNlOiBuZXcgTGljZW5zZVNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIG93bmVyOiBuZXcgT3duZXJTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBwcm9kdWNlck9yZzogbmV3IE11bHRpbGluZ3VhbFNlYXJjaEZpZWxkKFxuICAgICAgJ29yaWdpbmF0b3JPcmdGb3JSZXNvdXJjZU9iamVjdCcsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2FzYycsXG4gICAgICAna2V5J1xuICAgICksXG4gICAgcHVibGlzaGVyT3JnOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoXG4gICAgICAnZGlzdHJpYnV0b3JPcmdGb3JSZXNvdXJjZU9iamVjdCcsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2FzYycsXG4gICAgICAna2V5J1xuICAgICksXG4gICAgdXNlcjogbmV3IFVzZXJTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBjaGFuZ2VEYXRlOiBuZXcgRGF0ZVJhbmdlU2VhcmNoRmllbGQoJ2NoYW5nZURhdGUnLCB0aGlzLmluamVjdG9yLCAnZGVzYycpLFxuICAgIGF2YWlsYWJsZVNlcnZpY2VzOiBuZXcgQXZhaWxhYmxlU2VydmljZXNGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgfSBhcyBSZWNvcmQ8c3RyaW5nLCBBYnN0cmFjdFNlYXJjaEZpZWxkPlxuXG4gIGdldCBzdXBwb3J0ZWRGaWVsZHMoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuZmllbGRzKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICBnZXRBdmFpbGFibGVWYWx1ZXMoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zdXBwb3J0ZWRGaWVsZHMuaW5kZXhPZihmaWVsZE5hbWUpID09PSAtMSlcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgc2VhcmNoIGZpZWxkOiAke2ZpZWxkTmFtZX1gKVxuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldEF2YWlsYWJsZVZhbHVlcygpXG4gIH1cblxuICBwcml2YXRlIGdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHNbZmllbGROYW1lXS5nZXRGaWx0ZXJzRm9yVmFsdWVzKHZhbHVlcylcbiAgfVxuICBwcml2YXRlIGdldFZhbHVlc0ZvckZpbHRlcnMoZmllbGROYW1lOiBzdHJpbmcsIGZpbHRlcnM6IEZpZWxkRmlsdGVycykge1xuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldFZhbHVlc0ZvckZpbHRlcihmaWx0ZXJzKVxuICB9XG5cbiAgZ2V0RmllbGRUeXBlKGZpZWxkTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0VHlwZSgpXG4gIH1cblxuICBidWlsZEZpbHRlcnNGcm9tRmllbGRWYWx1ZXMoXG4gICAgZmllbGRWYWx1ZXM6IEZpZWxkVmFsdWVzXG4gICk6IE9ic2VydmFibGU8RmllbGRGaWx0ZXJzPiB7XG4gICAgY29uc3QgZmllbGROYW1lcyA9IE9iamVjdC5rZXlzKGZpZWxkVmFsdWVzKS5maWx0ZXIoKGZpZWxkTmFtZSkgPT5cbiAgICAgIHRoaXMuc3VwcG9ydGVkRmllbGRzLmluY2x1ZGVzKGZpZWxkTmFtZSlcbiAgICApXG4gICAgaWYgKCFmaWVsZE5hbWVzLmxlbmd0aCkgcmV0dXJuIG9mKHt9KVxuICAgIGNvbnN0IGZpbHRlcnNCeUZpZWxkJCA9IGZpZWxkTmFtZXMubWFwKChmaWVsZE5hbWUpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkoZmllbGRWYWx1ZXNbZmllbGROYW1lXSlcbiAgICAgICAgPyBmaWVsZFZhbHVlc1tmaWVsZE5hbWVdXG4gICAgICAgIDogW2ZpZWxkVmFsdWVzW2ZpZWxkTmFtZV1dXG4gICAgICByZXR1cm4gdGhpcy5nZXRGaWx0ZXJzRm9yVmFsdWVzKFxuICAgICAgICBmaWVsZE5hbWUsXG4gICAgICAgIHZhbHVlcyBhcyBGaWVsZFZhbHVlW10gfCBEYXRlUmFuZ2VbXVxuICAgICAgKVxuICAgIH0pXG4gICAgcmV0dXJuIGZvcmtKb2luKGZpbHRlcnNCeUZpZWxkJCkucGlwZShcbiAgICAgIG1hcCgoZmlsdGVycykgPT5cbiAgICAgICAgZmlsdGVycy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+ICh7IC4uLnByZXYsIC4uLmN1cnIgfSksIHt9KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHJlYWRGaWVsZFZhbHVlc0Zyb21GaWx0ZXJzKGZpbHRlcnM6IEZpZWxkRmlsdGVycyk6IE9ic2VydmFibGU8RmllbGRWYWx1ZXM+IHtcbiAgICBjb25zdCBmaWVsZFZhbHVlcyQgPSB0aGlzLnN1cHBvcnRlZEZpZWxkcy5tYXAoKGZpZWxkTmFtZSkgPT5cbiAgICAgIHRoaXMuZ2V0VmFsdWVzRm9yRmlsdGVycyhmaWVsZE5hbWUsIGZpbHRlcnMpLnBpcGUoXG4gICAgICAgIG1hcCgodmFsdWVzKSA9PiAoeyBbZmllbGROYW1lXTogdmFsdWVzIH0pKVxuICAgICAgKVxuICAgIClcbiAgICByZXR1cm4gZm9ya0pvaW4oZmllbGRWYWx1ZXMkKS5waXBlKFxuICAgICAgbWFwKChmaWVsZFZhbHVlcykgPT5cbiAgICAgICAgZmllbGRWYWx1ZXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiAoeyAuLi5wcmV2LCAuLi5jdXJyIH0pLCB7fSlcbiAgICAgIClcbiAgICApXG4gIH1cbn1cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvc2VhcmNoL3NyYy9saWIvdXRpbHMvc2VydmljZS9maWVsZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNwRCxPQUFPLEVBRUwsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUVwQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQ3ZCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixlQUFlLEVBQ2YsZUFBZSxHQUNoQixNQUFNLFVBQVUsQ0FBQTtBQUNqQixPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBOztBQU1oRSxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQTtBQUMvQixNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQTtBQUN2QyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtBQUNoQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtBQUNsQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtBQUNoQyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtBQUN4QyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNyQyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQTtBQUMzQyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNyQyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQTtBQUNqQyxN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QUE7UUFDRixPQUFPLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQ25DLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQzNELENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxPQUFxQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FDM0MsQ0FDRixDQUFBO1FBQ0QsT0FBTyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNsQixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDL0QsQ0FDRixDQUFBO0lBQ0gsQ0FBQzsrR0E3R1UsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBBYnN0cmFjdFNlYXJjaEZpZWxkLFxuICBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkLFxuICBEYXRlUmFuZ2VTZWFyY2hGaWVsZCxcbiAgRmllbGRWYWx1ZSxcbiAgRnVsbFRleHRTZWFyY2hGaWVsZCxcbiAgSXNTcGF0aWFsU2VhcmNoRmllbGQsXG4gIExpY2Vuc2VTZWFyY2hGaWVsZCxcbiAgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQsXG4gIE9yZ2FuaXphdGlvblNlYXJjaEZpZWxkLFxuICBPd25lclNlYXJjaEZpZWxkLFxuICBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCxcbiAgU2ltcGxlU2VhcmNoRmllbGQsXG4gIFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCxcbiAgUmVjb3JkS2luZEZpZWxkLFxuICBVc2VyU2VhcmNoRmllbGQsXG59IGZyb20gJy4vZmllbGRzJ1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRmllbGRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvc2VhcmNoJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgRGF0ZVJhbmdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvcmVwb3NpdG9yeS9zcmMnXG5cbi8vIGtleSBpcyB0aGUgZmllbGQgbmFtZVxuZXhwb3J0IHR5cGUgRmllbGRWYWx1ZXMgPSBSZWNvcmQ8c3RyaW5nLCBGaWVsZFZhbHVlW10gfCBGaWVsZFZhbHVlIHwgRGF0ZVJhbmdlPlxuXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmZvcm1hdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmluc3BpcmVLZXl3b3JkJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMua2V5d29yZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmlzU3BhdGlhbCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmxpY2Vuc2UnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5wdWJsaWNhdGlvblllYXInKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5vcmdhbml6YXRpb24nKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXByZXNlbnRhdGlvblR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5yZXNvdXJjZVR5cGUnKVxubWFya2VyKCdzZWFyY2guZmlsdGVycy5zdGFuZGFyZCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnRvcGljJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMuY29udGFjdCcpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLnByb2R1Y2VyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMucHVibGlzaGVyT3JnJylcbm1hcmtlcignc2VhcmNoLmZpbHRlcnMudXNlcicpXG5tYXJrZXIoJ3NlYXJjaC5maWx0ZXJzLmNoYW5nZURhdGUnKVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzU2VydmljZSB7XG4gIHByb3RlY3RlZCBmaWVsZHMgPSB7XG4gICAgb3JnYW5pemF0aW9uOiBuZXcgT3JnYW5pemF0aW9uU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgZm9ybWF0OiBuZXcgU2ltcGxlU2VhcmNoRmllbGQoJ2Zvcm1hdCcsIHRoaXMuaW5qZWN0b3IsICdhc2MnKSxcbiAgICByZXNvdXJjZVR5cGU6IG5ldyBSZXNvdXJjZVR5cGVMZWdhY3lGaWVsZCh0aGlzLmluamVjdG9yKSwgLy8gRGVwcmVjYXRlZCwgdXNlIGByZWNvcmRLaW5kYCBpbnN0ZWFkXG4gICAgcmVjb3JkS2luZDogbmV3IFJlY29yZEtpbmRGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICByZXByZXNlbnRhdGlvblR5cGU6IG5ldyBUcmFuc2xhdGVkU2VhcmNoRmllbGQoXG4gICAgICAnY2xfc3BhdGlhbFJlcHJlc2VudGF0aW9uVHlwZS5rZXknLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBwdWJsaWNhdGlvblllYXI6IG5ldyBTaW1wbGVTZWFyY2hGaWVsZChcbiAgICAgICdwdWJsaWNhdGlvblllYXJGb3JSZXNvdXJjZScsXG4gICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgJ2Rlc2MnXG4gICAgKSxcbiAgICB0b3BpYzogbmV3IFRyYW5zbGF0ZWRTZWFyY2hGaWVsZCgnY2xfdG9waWMua2V5JywgdGhpcy5pbmplY3RvciwgJ2FzYycpLFxuICAgIGluc3BpcmVLZXl3b3JkOiBuZXcgVHJhbnNsYXRlZFNlYXJjaEZpZWxkKFxuICAgICAgJ3RoX2h0dHBpbnNwaXJlZWNldXJvcGFldXRoZW1lLXRoZW1lLmxpbmsnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBrZXl3b3JkOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoJ3RhZycsIHRoaXMuaW5qZWN0b3IsICdkZXNjJywgJ2NvdW50JyksXG4gICAgZG9jdW1lbnRTdGFuZGFyZDogbmV3IFNpbXBsZVNlYXJjaEZpZWxkKFxuICAgICAgJ2RvY3VtZW50U3RhbmRhcmQnLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICdhc2MnXG4gICAgKSxcbiAgICBpc1NwYXRpYWw6IG5ldyBJc1NwYXRpYWxTZWFyY2hGaWVsZCh0aGlzLmluamVjdG9yKSxcbiAgICBxOiBuZXcgRnVsbFRleHRTZWFyY2hGaWVsZCgpLFxuICAgIGxpY2Vuc2U6IG5ldyBMaWNlbnNlU2VhcmNoRmllbGQodGhpcy5pbmplY3RvciksXG4gICAgb3duZXI6IG5ldyBPd25lclNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIHByb2R1Y2VyT3JnOiBuZXcgTXVsdGlsaW5ndWFsU2VhcmNoRmllbGQoXG4gICAgICAnb3JpZ2luYXRvck9yZ0ZvclJlc291cmNlT2JqZWN0JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJyxcbiAgICAgICdrZXknXG4gICAgKSxcbiAgICBwdWJsaXNoZXJPcmc6IG5ldyBNdWx0aWxpbmd1YWxTZWFyY2hGaWVsZChcbiAgICAgICdkaXN0cmlidXRvck9yZ0ZvclJlc291cmNlT2JqZWN0JyxcbiAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAnYXNjJyxcbiAgICAgICdrZXknXG4gICAgKSxcbiAgICB1c2VyOiBuZXcgVXNlclNlYXJjaEZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICAgIGNoYW5nZURhdGU6IG5ldyBEYXRlUmFuZ2VTZWFyY2hGaWVsZCgnY2hhbmdlRGF0ZScsIHRoaXMuaW5qZWN0b3IsICdkZXNjJyksXG4gICAgYXZhaWxhYmxlU2VydmljZXM6IG5ldyBBdmFpbGFibGVTZXJ2aWNlc0ZpZWxkKHRoaXMuaW5qZWN0b3IpLFxuICB9IGFzIFJlY29yZDxzdHJpbmcsIEFic3RyYWN0U2VhcmNoRmllbGQ+XG5cbiAgZ2V0IHN1cHBvcnRlZEZpZWxkcygpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5maWVsZHMpXG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG4gIGdldEF2YWlsYWJsZVZhbHVlcyhmaWVsZE5hbWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnN1cHBvcnRlZEZpZWxkcy5pbmRleE9mKGZpZWxkTmFtZSkgPT09IC0xKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBzZWFyY2ggZmllbGQ6ICR7ZmllbGROYW1lfWApXG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0QXZhaWxhYmxlVmFsdWVzKClcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyc0ZvclZhbHVlcyhcbiAgICBmaWVsZE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IEZpZWxkVmFsdWVbXSB8IERhdGVSYW5nZVtdXG4gICkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdLmdldEZpbHRlcnNGb3JWYWx1ZXModmFsdWVzKVxuICB9XG4gIHByaXZhdGUgZ2V0VmFsdWVzRm9yRmlsdGVycyhmaWVsZE5hbWU6IHN0cmluZywgZmlsdGVyczogRmllbGRGaWx0ZXJzKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0uZ2V0VmFsdWVzRm9yRmlsdGVyKGZpbHRlcnMpXG4gIH1cblxuICBnZXRGaWVsZFR5cGUoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHNbZmllbGROYW1lXS5nZXRUeXBlKClcbiAgfVxuXG4gIGJ1aWxkRmlsdGVyc0Zyb21GaWVsZFZhbHVlcyhcbiAgICBmaWVsZFZhbHVlczogRmllbGRWYWx1ZXNcbiAgKTogT2JzZXJ2YWJsZTxGaWVsZEZpbHRlcnM+IHtcbiAgICBjb25zdCBmaWVsZE5hbWVzID0gT2JqZWN0LmtleXMoZmllbGRWYWx1ZXMpLmZpbHRlcigoZmllbGROYW1lKSA9PlxuICAgICAgdGhpcy5zdXBwb3J0ZWRGaWVsZHMuaW5jbHVkZXMoZmllbGROYW1lKVxuICAgIClcbiAgICBpZiAoIWZpZWxkTmFtZXMubGVuZ3RoKSByZXR1cm4gb2Yoe30pXG4gICAgY29uc3QgZmlsdGVyc0J5RmllbGQkID0gZmllbGROYW1lcy5tYXAoKGZpZWxkTmFtZSkgPT4ge1xuICAgICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheShmaWVsZFZhbHVlc1tmaWVsZE5hbWVdKVxuICAgICAgICA/IGZpZWxkVmFsdWVzW2ZpZWxkTmFtZV1cbiAgICAgICAgOiBbZmllbGRWYWx1ZXNbZmllbGROYW1lXV1cbiAgICAgIHJldHVybiB0aGlzLmdldEZpbHRlcnNGb3JWYWx1ZXMoXG4gICAgICAgIGZpZWxkTmFtZSxcbiAgICAgICAgdmFsdWVzIGFzIEZpZWxkVmFsdWVbXSB8IERhdGVSYW5nZVtdXG4gICAgICApXG4gICAgfSlcbiAgICByZXR1cm4gZm9ya0pvaW4oZmlsdGVyc0J5RmllbGQkKS5waXBlKFxuICAgICAgbWFwKChmaWx0ZXJzKSA9PlxuICAgICAgICBmaWx0ZXJzLnJlZHVjZSgocHJldiwgY3VycikgPT4gKHsgLi4ucHJldiwgLi4uY3VyciB9KSwge30pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgcmVhZEZpZWxkVmFsdWVzRnJvbUZpbHRlcnMoZmlsdGVyczogRmllbGRGaWx0ZXJzKTogT2JzZXJ2YWJsZTxGaWVsZFZhbHVlcz4ge1xuICAgIGNvbnN0IGZpZWxkVmFsdWVzJCA9IHRoaXMuc3VwcG9ydGVkRmllbGRzLm1hcCgoZmllbGROYW1lKSA9PlxuICAgICAgdGhpcy5nZXRWYWx1ZXNGb3JGaWx0ZXJzKGZpZWxkTmFtZSwgZmlsdGVycykucGlwZShcbiAgICAgICAgbWFwKCh2YWx1ZXMpID0+ICh7IFtmaWVsZE5hbWVdOiB2YWx1ZXMgfSkpXG4gICAgICApXG4gICAgKVxuICAgIHJldHVybiBmb3JrSm9pbihmaWVsZFZhbHVlcyQpLnBpcGUoXG4gICAgICBtYXAoKGZpZWxkVmFsdWVzKSA9PlxuICAgICAgICBmaWVsZFZhbHVlcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+ICh7IC4uLnByZXYsIC4uLmN1cnIgfSksIHt9KVxuICAgICAgKVxuICAgIClcbiAgfVxufVxuIl19
@@ -29,15 +29,15 @@ export class LanguageSwitcherComponent {
29
29
  this.translate.use(value);
30
30
  }
31
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LanguageSwitcherComponent, deps: [{ token: LANGUAGES_LIST, optional: true }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LanguageSwitcherComponent, isStandalone: true, selector: "gn-ui-language-switcher", ngImport: i0, template: "<gn-ui-dropdown-selector\n [title]=\"'languages'\"\n [choices]=\"languageChoices\"\n (selectValue)=\"changeLanguage($event)\"\n [selected]=\"currentLang\"\n ariaName=\"languages\"\n [showTitle]=\"false\"\n extraBtnClass=\"bg-transparent flex justify-items-center !pl-2 !py-1\"\n>\n</gn-ui-dropdown-selector>\n", styles: [""], dependencies: [{ kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }] }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LanguageSwitcherComponent, isStandalone: true, selector: "gn-ui-language-switcher", ngImport: i0, template: "<gn-ui-dropdown-selector\n [title]=\"'languages'\"\n [choices]=\"languageChoices\"\n (selectValue)=\"changeLanguage($event)\"\n [selected]=\"currentLang\"\n ariaName=\"languages\"\n [showTitle]=\"false\"\n extraBtnClass=\"bg-transparent flex justify-items-center !pl-2 !py-1 rounded-lg\"\n>\n</gn-ui-dropdown-selector>\n", styles: [""], dependencies: [{ kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }] }); }
33
33
  }
34
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LanguageSwitcherComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ selector: 'gn-ui-language-switcher', imports: [DropdownSelectorComponent], standalone: true, template: "<gn-ui-dropdown-selector\n [title]=\"'languages'\"\n [choices]=\"languageChoices\"\n (selectValue)=\"changeLanguage($event)\"\n [selected]=\"currentLang\"\n ariaName=\"languages\"\n [showTitle]=\"false\"\n extraBtnClass=\"bg-transparent flex justify-items-center !pl-2 !py-1\"\n>\n</gn-ui-dropdown-selector>\n" }]
36
+ args: [{ selector: 'gn-ui-language-switcher', imports: [DropdownSelectorComponent], standalone: true, template: "<gn-ui-dropdown-selector\n [title]=\"'languages'\"\n [choices]=\"languageChoices\"\n (selectValue)=\"changeLanguage($event)\"\n [selected]=\"currentLang\"\n ariaName=\"languages\"\n [showTitle]=\"false\"\n extraBtnClass=\"bg-transparent flex justify-items-center !pl-2 !py-1 rounded-lg\"\n>\n</gn-ui-dropdown-selector>\n" }]
37
37
  }], ctorParameters: () => [{ type: undefined, decorators: [{
38
38
  type: Optional
39
39
  }, {
40
40
  type: Inject,
41
41
  args: [LANGUAGES_LIST]
42
42
  }] }, { type: i1.TranslateService }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYy9saWIvbGFuZ3VhZ2Utc3dpdGNoZXIvbGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYy9saWIvbGFuZ3VhZ2Utc3dpdGNoZXIvbGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7O0FBRWhGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBVyxnQkFBZ0IsQ0FBQyxDQUFBO0FBRTVFLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFTdEMsTUFBTSxPQUFPLHlCQUF5QjtJQVFwQyxZQUdVLGFBQXVCLEVBQ3ZCLFNBQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFVO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBWHJDLG9CQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLGlCQUFpQixDQUFDLENBQUMsR0FBRyxDQUM3RCxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNiLEtBQUssRUFBRSxHQUFHLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUNsQyxLQUFLLEVBQUUsUUFBUTtTQUNoQixDQUFDLENBQ0gsQ0FBQTtJQU9FLENBQUM7SUFFSixJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFBO0lBQ25DLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYztRQUMzQixJQUFJLENBQUM7WUFDSCxZQUFZLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLEtBQWUsQ0FBQyxDQUFBO1lBQzNELFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNuQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsd0NBQXdDLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDL0QsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQWUsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7K0dBNUJVLHlCQUF5QixrQkFVMUIsY0FBYzttR0FWYix5QkFBeUIsbUZDaEJ0Qyw4VEFVQSwwRERHWSx5QkFBeUI7OzRGQUd4Qix5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0UseUJBQXlCLFdBRzFCLENBQUMseUJBQXlCLENBQUMsY0FDeEIsSUFBSTs7MEJBV2IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBMQU5HVUFHRV9TVE9SQUdFX0tFWSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9pMThuL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcblxuZXhwb3J0IGNvbnN0IExBTkdVQUdFU19MSVNUID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZ1tdPignbGFuZ3VhZ2VzLWxpc3QnKVxuXG5jb25zdCBERUZBVUxUX0xBTkdVQUdFUyA9IFsnZW4nLCAnZnInXVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1sYW5ndWFnZS1zd2l0Y2hlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYW5ndWFnZS1zd2l0Y2hlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xhbmd1YWdlLXN3aXRjaGVyLmNvbXBvbmVudC5jc3MnXSxcbiAgaW1wb3J0czogW0Ryb3Bkb3duU2VsZWN0b3JDb21wb25lbnRdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBMYW5ndWFnZVN3aXRjaGVyQ29tcG9uZW50IHtcbiAgbGFuZ3VhZ2VDaG9pY2VzID0gKHRoaXMubGFuZ3VhZ2VzTGlzdCB8fCBERUZBVUxUX0xBTkdVQUdFUykubWFwKFxuICAgIChsYW5ndWFnZSkgPT4gKHtcbiAgICAgIGxhYmVsOiBgJHtsYW5ndWFnZX1gLnRvVXBwZXJDYXNlKCksXG4gICAgICB2YWx1ZTogbGFuZ3VhZ2UsXG4gICAgfSlcbiAgKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChMQU5HVUFHRVNfTElTVClcbiAgICBwcml2YXRlIGxhbmd1YWdlc0xpc3Q6IHN0cmluZ1tdLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICkge31cblxuICBnZXQgY3VycmVudExhbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nXG4gIH1cblxuICBjaGFuZ2VMYW5ndWFnZSh2YWx1ZTogdW5rbm93bikge1xuICAgIHRyeSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShMQU5HVUFHRV9TVE9SQUdFX0tFWSwgdmFsdWUgYXMgc3RyaW5nKVxuICAgICAgbG9jYXRpb24ucmVsb2FkKClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS53YXJuKGBMYW5ndWFnZSBjaG9pY2UgY291bGQgbm90IGJlIHBlcnNpc3RlZGAsIGVycm9yKVxuICAgIH1cblxuICAgIHRoaXMudHJhbnNsYXRlLnVzZSh2YWx1ZSBhcyBzdHJpbmcpXG4gIH1cbn1cbiIsIjxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICBbdGl0bGVdPVwiJ2xhbmd1YWdlcydcIlxuICBbY2hvaWNlc109XCJsYW5ndWFnZUNob2ljZXNcIlxuICAoc2VsZWN0VmFsdWUpPVwiY2hhbmdlTGFuZ3VhZ2UoJGV2ZW50KVwiXG4gIFtzZWxlY3RlZF09XCJjdXJyZW50TGFuZ1wiXG4gIGFyaWFOYW1lPVwibGFuZ3VhZ2VzXCJcbiAgW3Nob3dUaXRsZV09XCJmYWxzZVwiXG4gIGV4dHJhQnRuQ2xhc3M9XCJiZy10cmFuc3BhcmVudCBmbGV4IGp1c3RpZnktaXRlbXMtY2VudGVyICFwbC0yICFweS0xXCJcbj5cbjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYy9saWIvbGFuZ3VhZ2Utc3dpdGNoZXIvbGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9jYXRhbG9nL3NyYy9saWIvbGFuZ3VhZ2Utc3dpdGNoZXIvbGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7O0FBRWhGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBVyxnQkFBZ0IsQ0FBQyxDQUFBO0FBRTVFLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFTdEMsTUFBTSxPQUFPLHlCQUF5QjtJQVFwQyxZQUdVLGFBQXVCLEVBQ3ZCLFNBQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFVO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBWHJDLG9CQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLGlCQUFpQixDQUFDLENBQUMsR0FBRyxDQUM3RCxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNiLEtBQUssRUFBRSxHQUFHLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUNsQyxLQUFLLEVBQUUsUUFBUTtTQUNoQixDQUFDLENBQ0gsQ0FBQTtJQU9FLENBQUM7SUFFSixJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFBO0lBQ25DLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYztRQUMzQixJQUFJLENBQUM7WUFDSCxZQUFZLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLEtBQWUsQ0FBQyxDQUFBO1lBQzNELFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNuQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsd0NBQXdDLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDL0QsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQWUsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7K0dBNUJVLHlCQUF5QixrQkFVMUIsY0FBYzttR0FWYix5QkFBeUIsbUZDaEJ0Qyx5VUFVQSwwRERHWSx5QkFBeUI7OzRGQUd4Qix5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0UseUJBQXlCLFdBRzFCLENBQUMseUJBQXlCLENBQUMsY0FDeEIsSUFBSTs7MEJBV2IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBMQU5HVUFHRV9TVE9SQUdFX0tFWSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9pMThuL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcblxuZXhwb3J0IGNvbnN0IExBTkdVQUdFU19MSVNUID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZ1tdPignbGFuZ3VhZ2VzLWxpc3QnKVxuXG5jb25zdCBERUZBVUxUX0xBTkdVQUdFUyA9IFsnZW4nLCAnZnInXVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1sYW5ndWFnZS1zd2l0Y2hlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYW5ndWFnZS1zd2l0Y2hlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xhbmd1YWdlLXN3aXRjaGVyLmNvbXBvbmVudC5jc3MnXSxcbiAgaW1wb3J0czogW0Ryb3Bkb3duU2VsZWN0b3JDb21wb25lbnRdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBMYW5ndWFnZVN3aXRjaGVyQ29tcG9uZW50IHtcbiAgbGFuZ3VhZ2VDaG9pY2VzID0gKHRoaXMubGFuZ3VhZ2VzTGlzdCB8fCBERUZBVUxUX0xBTkdVQUdFUykubWFwKFxuICAgIChsYW5ndWFnZSkgPT4gKHtcbiAgICAgIGxhYmVsOiBgJHtsYW5ndWFnZX1gLnRvVXBwZXJDYXNlKCksXG4gICAgICB2YWx1ZTogbGFuZ3VhZ2UsXG4gICAgfSlcbiAgKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChMQU5HVUFHRVNfTElTVClcbiAgICBwcml2YXRlIGxhbmd1YWdlc0xpc3Q6IHN0cmluZ1tdLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICkge31cblxuICBnZXQgY3VycmVudExhbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nXG4gIH1cblxuICBjaGFuZ2VMYW5ndWFnZSh2YWx1ZTogdW5rbm93bikge1xuICAgIHRyeSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShMQU5HVUFHRV9TVE9SQUdFX0tFWSwgdmFsdWUgYXMgc3RyaW5nKVxuICAgICAgbG9jYXRpb24ucmVsb2FkKClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS53YXJuKGBMYW5ndWFnZSBjaG9pY2UgY291bGQgbm90IGJlIHBlcnNpc3RlZGAsIGVycm9yKVxuICAgIH1cblxuICAgIHRoaXMudHJhbnNsYXRlLnVzZSh2YWx1ZSBhcyBzdHJpbmcpXG4gIH1cbn1cbiIsIjxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICBbdGl0bGVdPVwiJ2xhbmd1YWdlcydcIlxuICBbY2hvaWNlc109XCJsYW5ndWFnZUNob2ljZXNcIlxuICAoc2VsZWN0VmFsdWUpPVwiY2hhbmdlTGFuZ3VhZ2UoJGV2ZW50KVwiXG4gIFtzZWxlY3RlZF09XCJjdXJyZW50TGFuZ1wiXG4gIGFyaWFOYW1lPVwibGFuZ3VhZ2VzXCJcbiAgW3Nob3dUaXRsZV09XCJmYWxzZVwiXG4gIGV4dHJhQnRuQ2xhc3M9XCJiZy10cmFuc3BhcmVudCBmbGV4IGp1c3RpZnktaXRlbXMtY2VudGVyICFwbC0yICFweS0xIHJvdW5kZWQtbGdcIlxuPlxuPC9nbi11aS1kcm9wZG93bi1zZWxlY3Rvcj5cbiJdfQ==
@@ -7,6 +7,7 @@ export * from './lib/downloads-list/downloads-list.component';
7
7
  export * from './lib/error/error.component';
8
8
  export * from './lib/image-input/image-input.component';
9
9
  export * from './lib/image-overlay-preview/image-overlay-preview.component';
10
+ export * from './lib/kind-badge/kind-badge.component';
10
11
  export * from './lib/link-card/link-card.component';
11
12
  export * from './lib/markdown-editor/markdown-editor.component';
12
13
  export * from './lib/markdown-parser/markdown-parser.component';
@@ -24,4 +25,5 @@ export * from './lib/user-feedback-item/user-feedback-item.component';
24
25
  export * from './lib/user-preview/user-preview.component';
25
26
  export * from './lib/application-banner/application-banner.component';
26
27
  export * from './lib/internal-link-card/internal-link-card.component';
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYywrQ0FBK0MsQ0FBQTtBQUM3RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLG1EQUFtRCxDQUFBO0FBQ2pFLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxjQUFjLDZEQUE2RCxDQUFBO0FBQzNFLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMseURBQXlELENBQUE7QUFDdkUsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMsdURBQXVELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZG93bmxvYWQtaXRlbS9kb3dubG9hZC1pdGVtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rvd25sb2Fkcy1saXN0L2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Vycm9yL2Vycm9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ltYWdlLWlucHV0L2ltYWdlLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGluay1jYXJkL2xpbmstY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXJrZG93bi1lZGl0b3IvbWFya2Rvd24tZWRpdG9yLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21hcmtkb3duLXBhcnNlci9tYXJrZG93bi1wYXJzZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWNvbnRhY3QvbWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlbGF0ZWQtcmVjb3JkLWNhcmQvcmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi90aHVtYm5haWwvdGh1bWJuYWlsLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpLWVsZW1lbnRzLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXItZmVlZGJhY2staXRlbS91c2VyLWZlZWRiYWNrLWl0ZW0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1wcmV2aWV3L3VzZXItcHJldmlldy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcHBsaWNhdGlvbi1iYW5uZXIvYXBwbGljYXRpb24tYmFubmVyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVybmFsLWxpbmstY2FyZC9pbnRlcm5hbC1saW5rLWNhcmQuY29tcG9uZW50J1xuIl19
28
+ export * from './lib/service-capabilities/service-capabilities.component';
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYywrQ0FBK0MsQ0FBQTtBQUM3RCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyx5REFBeUQsQ0FBQTtBQUN2RSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsdURBQXVELENBQUE7QUFDckUsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLDJEQUEyRCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGVudC1naG9zdC9jb250ZW50LWdob3N0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rvd25sb2FkLWl0ZW0vZG93bmxvYWQtaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lcnJvci9lcnJvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1pbnB1dC9pbWFnZS1pbnB1dC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2tpbmQtYmFkZ2Uva2luZC1iYWRnZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWNhcmQvbGluay1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21hcmtkb3duLWVkaXRvci9tYXJrZG93bi1lZGl0b3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFya2Rvd24tcGFyc2VyL21hcmtkb3duLXBhcnNlci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY29udGFjdC9tZXRhZGF0YS1jb250YWN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWluZm8vbWV0YWRhdGEtaW5mby5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0vbWV0YWRhdGEtcXVhbGl0eS1pdGVtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLXF1YWxpdHkvbWV0YWRhdGEtcXVhbGl0eS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlY29yZC1hcGktZm9ybS9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVsYXRlZC1yZWNvcmQtY2FyZC9yZWxhdGVkLXJlY29yZC1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RodW1ibmFpbC90aHVtYm5haWwuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktZWxlbWVudHMubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcGxpY2F0aW9uLWJhbm5lci9hcHBsaWNhdGlvbi1iYW5uZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJuYWwtbGluay1jYXJkL2ludGVybmFsLWxpbmstY2FyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlLWNhcGFiaWxpdGllcy9zZXJ2aWNlLWNhcGFiaWxpdGllcy5jb21wb25lbnQnXG4iXX0=
@@ -50,7 +50,7 @@ export class ApiCardComponent {
50
50
  }
51
51
  }
52
52
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink", size: "size" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div>\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
53
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink", size: "size" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
54
54
  provideIcons({
55
55
  iconoirSettings,
56
56
  }),
@@ -68,7 +68,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
68
68
  provideIcons({
69
69
  iconoirSettings,
70
70
  }),
71
- ], template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div>\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
71
+ ], template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
72
72
  }], propDecorators: { link: [{
73
73
  type: Input
74
74
  }], currentLink: [{
@@ -78,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
78
78
  }], openRecordApiForm: [{
79
79
  type: Output
80
80
  }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFBOzs7OztBQXVCbkQsTUFBTSxPQUFPLGdCQUFnQjtJQW5CN0I7UUF1Qm1CLGlCQUFZLEdBQTZCO1lBQ3hELENBQUMsRUFBRSxpQ0FBaUM7WUFDcEMsQ0FBQyxFQUFFLGlDQUFpQztZQUNwQyxDQUFDLEVBQUUsMkJBQTJCO1lBQzlCLEVBQUUsRUFBRSxrQ0FBa0M7U0FDdkMsQ0FBQTtRQVNELGNBQVMsR0FBRyxFQUFFLENBQUE7UUFFZCxvQkFBZSxHQUFHLEtBQUssQ0FBQTtRQUNiLHNCQUFpQixHQUN6QixJQUFJLFlBQVksRUFBOEIsQ0FBQTtLQTBCakQ7SUFyQ0MsSUFBYSxJQUFJLENBQUMsS0FBZTtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0MsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQTtJQUNuQixDQUFDO0lBT0QsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLEtBQUs7WUFDOUMsQ0FBQyxDQUFDLHNDQUFzQztZQUN4QyxDQUFDLENBQUMsc0NBQXNDLENBQUE7SUFDNUMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsb0JBQW9CO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssYUFBYTtnQkFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxLQUFLO2dCQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLE9BQU8sQ0FBQTtJQUMvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxlQUFlO1lBQ2xCLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0lBQ2pFLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQTtZQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQzNFLENBQUM7SUFDSCxDQUFDOytHQS9DVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQix3TkN2QzdCLDY0RkF1RkEseURENURJLFlBQVksd1lBQ1osdUJBQXVCLDBIQUN2QixlQUFlLGtPQUNmLGdCQUFnQiw2VEFDaEIsTUFBTSxrR0FFTztZQUNiLFlBQVksQ0FBQztnQkFDWCxlQUFlO2FBQ2hCLENBQUM7U0FDSDs7NEZBRVUsZ0JBQWdCO2tCQW5CNUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixNQUFNO3FCQUNQLGlCQUNjO3dCQUNiLFlBQVksQ0FBQzs0QkFDWCxlQUFlO3lCQUNoQixDQUFDO3FCQUNIOzhCQUlRLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQVFPLElBQUk7c0JBQWhCLEtBQUs7Z0JBVUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQ29weVRleHRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pclNldHRpbmdzIH0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5cbnR5cGUgQ2FyZFNpemUgPSAnTCcgfCAnTScgfCAnUycgfCAnWFMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWFwaS1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FwaS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXBpLWNhcmQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb3B5VGV4dEJ1dHRvbkNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0ljb24sXG4gIF0sXG4gIHZpZXdQcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoe1xuICAgICAgaWNvbm9pclNldHRpbmdzLFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBcGlDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIF9zaXplOiAnTCcgfCAnTScgfCAnUycgfCAnWFMnXG4gIEBJbnB1dCgpIGxpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gIEBJbnB1dCgpIGN1cnJlbnRMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICBwcml2YXRlIHJlYWRvbmx5IHNpemVDbGFzc01hcDogUmVjb3JkPENhcmRTaXplLCBzdHJpbmc+ID0ge1xuICAgIEw6ICdnbi11aS1jYXJkLWwgcHktMiBweC01IGZsZXgtcm93JyxcbiAgICBNOiAnZ24tdWktY2FyZC1tIHB5LTIgcHgtNSBmbGV4LXJvdycsXG4gICAgUzogJ2duLXVpLWNhcmQtcyBwLTQgZmxleC1jb2wnLFxuICAgIFhTOiAnZ24tdWktY2FyZC14cyBweS0yIHB4LTUgZmxleC1yb3cnLFxuICB9XG5cbiAgQElucHV0KCkgc2V0IHNpemUodmFsdWU6IENhcmRTaXplKSB7XG4gICAgdGhpcy5fc2l6ZSA9IHZhbHVlXG4gICAgdGhpcy5jYXJkQ2xhc3MgPSB0aGlzLnNpemVDbGFzc01hcFt2YWx1ZV1cbiAgfVxuICBnZXQgc2l6ZSgpOiAnTCcgfCAnTScgfCAnUycgfCAnWFMnIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZVxuICB9XG4gIGNhcmRDbGFzcyA9ICcnXG4gIGRpc3BsYXlBcGlGb3JtQnV0dG9uOiBib29sZWFuXG4gIGN1cnJlbnRseUFjdGl2ZSA9IGZhbHNlXG4gIEBPdXRwdXQoKSBvcGVuUmVjb3JkQXBpRm9ybTogRXZlbnRFbWl0dGVyPERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbj4oKVxuXG4gIGdldCBnZW5lcmF0ZWRUZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJ1xuICAgICAgPyAnZGF0YWh1Yi5zZWFyY2guZmlsdGVyLmdlbmVyYXRlZEJ5V2ZzJ1xuICAgICAgOiAnZGF0YWh1Yi5zZWFyY2guZmlsdGVyLmdlbmVyYXRlZEJ5QVBJJ1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5kaXNwbGF5QXBpRm9ybUJ1dHRvbiA9XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnIHx8XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJyB8fFxuICAgICAgdGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ0dQRkRMJ1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID1cbiAgICAgIGNoYW5nZXMuY3VycmVudExpbmsuY3VycmVudFZhbHVlID09PSB0aGlzLmxpbmsgPyB0cnVlIDogZmFsc2VcbiAgfVxuXG4gIG9wZW5SZWNvcmRBcGlGb3JtUGFuZWwoKSB7XG4gICAgaWYgKHRoaXMuZGlzcGxheUFwaUZvcm1CdXR0b24pIHtcbiAgICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID0gIXRoaXMuY3VycmVudGx5QWN0aXZlXG4gICAgICB0aGlzLm9wZW5SZWNvcmRBcGlGb3JtLmVtaXQodGhpcy5jdXJyZW50bHlBY3RpdmUgPyB0aGlzLmxpbmsgOiB1bmRlZmluZWQpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZ3JvdXAgZmxleCBqdXN0aWZ5LWJldHdlZW4gcm91bmRlZCBmaWx0ZXIgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgW25nQ2xhc3NdPVwiY2FyZENsYXNzXCJcbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNpemUgIT09ICdTJ1wiPlxuICAgIDxkaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaXplID09PSAnUydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2J1dHRvbnM+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yXCI+XG4gICAgPGduLXVpLWNvcHktdGV4dC1idXR0b25cbiAgICAgIFt0ZXh0XT1cImxpbmsudXJsXCJcbiAgICAgIFt0b29sdGlwVGV4dF09XCIndG9vbHRpcC51cmwuY29weScgfCB0cmFuc2xhdGVcIlxuICAgICAgW2Rpc3BsYXlUZXh0XT1cImZhbHNlXCJcbiAgICAgIGNsYXNzPVwiYm9yZGVyIGJvcmRlci1ncmF5LTMwMCByb3VuZGVkLWxnIHB0LTEgcHgtMiBoLVszNHB4XVwiXG4gICAgPjwvZ24tdWktY29weS10ZXh0LWJ1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICAqbmdJZj1cImRpc3BsYXlBcGlGb3JtQnV0dG9uXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJnbi11aS1jYXJkLWljb25cIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAncHktMiBweC00IHJvdW5kZWQtci1tZCBiZy1ncmF5LTQwMCBob3ZlcjpiZy1ncmF5LTYwMCBmb2N1czpiZy1ncmF5LTgwMCB0ZXh0LXdoaXRlJzpcbiAgICAgICAgICBkaXNwbGF5VGV4dCxcbiAgICAgIH1cIlxuICAgICAgW21hdFRvb2x0aXBdPVwiXG4gICAgICAgICFjdXJyZW50bHlBY3RpdmVcbiAgICAgICAgICA/ICgncmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLm9wZW5Gb3JtJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6ICgncmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmNsb3NlRm9ybScgfCB0cmFuc2xhdGUpXG4gICAgICBcIlxuICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICAgICAgKGNsaWNrKT1cIm9wZW5SZWNvcmRBcGlGb3JtUGFuZWwoKVwiXG4gICAgPlxuICAgICAgPG5nLWljb25cbiAgICAgICAgY2xhc3M9XCJwb2ludGVyLWV2ZW50cy1ub25lIGFsaWduLW1pZGRsZSBjYXJkLWljb25cIlxuICAgICAgICBuYW1lPVwiaWNvbm9pclNldHRpbmdzXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICd0ZXh0LXNlY29uZGFyeSBvcGFjaXR5LTEwMCc6IGN1cnJlbnRseUFjdGl2ZSxcbiAgICAgICAgfVwiXG4gICAgICA+PC9uZy1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPGRpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ24tdWktY2FyZC10aXRsZVwiPlxuICAgICAge3sgbGluay5kZXNjcmlwdGlvbiB8fCBsaW5rLm5hbWUgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ24tdWktY2FyZC1kZXRhaWxcIj5cbiAgICAgIHt7IGxpbmsubmFtZSB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIuNSBpdGVtcy1jZW50ZXIgcHQtMVwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCAhPT0gJ0dQRkRMJ1wiXG4gICAgICAgIGNsYXNzPVwiYmctcHJpbWFyeS1vcGFjaXR5LTUwIHVwcGVyY2FzZSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcHgtMiBweS0xIHRleHQtMTMgZm9udC1tZWRpdW0gbGVhZGluZy1ub25lIHRleHQtd2hpdGUgcm91bmRlZCB0ZXh0LXByaW1hcnktbGlnaHRlc3QgZ3JvdXAtaG92ZXI6YmctcHJpbWFyeSB0cmFuc2l0aW9uLWNvbG9yc1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnIWJnLXByaW1hcnknOiBjdXJyZW50bHlBY3RpdmUsXG4gICAgICAgIH1cIlxuICAgICAgICA+e3sgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgfX08L3NwYW5cbiAgICAgID5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwibGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdHUEZETCdcIlxuICAgICAgICBjbGFzcz1cImJnLXByaW1hcnktb3BhY2l0eS01MCB1cHBlcmNhc2UgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTIgcHktMSB0ZXh0LTEzIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZSB0ZXh0LXdoaXRlIHJvdW5kZWQgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGdyb3VwLWhvdmVyOmJnLXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnNcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJyFiZy1wcmltYXJ5JzogY3VycmVudGx5QWN0aXZlLFxuICAgICAgICB9XCJcbiAgICAgICAgdHJhbnNsYXRlXG4gICAgICA+XG4gICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZ3BmZGw8L3NwYW5cbiAgICAgID5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwic2l6ZSA9PT0gJ1MnXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFBOzs7OztBQXVCbkQsTUFBTSxPQUFPLGdCQUFnQjtJQW5CN0I7UUF1Qm1CLGlCQUFZLEdBQTZCO1lBQ3hELENBQUMsRUFBRSxpQ0FBaUM7WUFDcEMsQ0FBQyxFQUFFLGlDQUFpQztZQUNwQyxDQUFDLEVBQUUsMkJBQTJCO1lBQzlCLEVBQUUsRUFBRSxrQ0FBa0M7U0FDdkMsQ0FBQTtRQVNELGNBQVMsR0FBRyxFQUFFLENBQUE7UUFFZCxvQkFBZSxHQUFHLEtBQUssQ0FBQTtRQUNiLHNCQUFpQixHQUN6QixJQUFJLFlBQVksRUFBOEIsQ0FBQTtLQTBCakQ7SUFyQ0MsSUFBYSxJQUFJLENBQUMsS0FBZTtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0MsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQTtJQUNuQixDQUFDO0lBT0QsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLEtBQUs7WUFDOUMsQ0FBQyxDQUFDLHNDQUFzQztZQUN4QyxDQUFDLENBQUMsc0NBQXNDLENBQUE7SUFDNUMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsb0JBQW9CO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssYUFBYTtnQkFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxLQUFLO2dCQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLE9BQU8sQ0FBQTtJQUMvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxlQUFlO1lBQ2xCLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0lBQ2pFLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQTtZQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQzNFLENBQUM7SUFDSCxDQUFDOytHQS9DVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQix3TkN2QzdCLHc5RkF1RkEseURENURJLFlBQVksd1lBQ1osdUJBQXVCLDBIQUN2QixlQUFlLGtPQUNmLGdCQUFnQiw2VEFDaEIsTUFBTSxrR0FFTztZQUNiLFlBQVksQ0FBQztnQkFDWCxlQUFlO2FBQ2hCLENBQUM7U0FDSDs7NEZBRVUsZ0JBQWdCO2tCQW5CNUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixNQUFNO3FCQUNQLGlCQUNjO3dCQUNiLFlBQVksQ0FBQzs0QkFDWCxlQUFlO3lCQUNoQixDQUFDO3FCQUNIOzhCQUlRLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQVFPLElBQUk7c0JBQWhCLEtBQUs7Z0JBVUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQ29weVRleHRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBOZ0ljb24sIHByb3ZpZGVJY29ucyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pclNldHRpbmdzIH0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5cbnR5cGUgQ2FyZFNpemUgPSAnTCcgfCAnTScgfCAnUycgfCAnWFMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWFwaS1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FwaS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXBpLWNhcmQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb3B5VGV4dEJ1dHRvbkNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0ljb24sXG4gIF0sXG4gIHZpZXdQcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoe1xuICAgICAgaWNvbm9pclNldHRpbmdzLFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBcGlDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIF9zaXplOiAnTCcgfCAnTScgfCAnUycgfCAnWFMnXG4gIEBJbnB1dCgpIGxpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gIEBJbnB1dCgpIGN1cnJlbnRMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICBwcml2YXRlIHJlYWRvbmx5IHNpemVDbGFzc01hcDogUmVjb3JkPENhcmRTaXplLCBzdHJpbmc+ID0ge1xuICAgIEw6ICdnbi11aS1jYXJkLWwgcHktMiBweC01IGZsZXgtcm93JyxcbiAgICBNOiAnZ24tdWktY2FyZC1tIHB5LTIgcHgtNSBmbGV4LXJvdycsXG4gICAgUzogJ2duLXVpLWNhcmQtcyBwLTQgZmxleC1jb2wnLFxuICAgIFhTOiAnZ24tdWktY2FyZC14cyBweS0yIHB4LTUgZmxleC1yb3cnLFxuICB9XG5cbiAgQElucHV0KCkgc2V0IHNpemUodmFsdWU6IENhcmRTaXplKSB7XG4gICAgdGhpcy5fc2l6ZSA9IHZhbHVlXG4gICAgdGhpcy5jYXJkQ2xhc3MgPSB0aGlzLnNpemVDbGFzc01hcFt2YWx1ZV1cbiAgfVxuICBnZXQgc2l6ZSgpOiAnTCcgfCAnTScgfCAnUycgfCAnWFMnIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZVxuICB9XG4gIGNhcmRDbGFzcyA9ICcnXG4gIGRpc3BsYXlBcGlGb3JtQnV0dG9uOiBib29sZWFuXG4gIGN1cnJlbnRseUFjdGl2ZSA9IGZhbHNlXG4gIEBPdXRwdXQoKSBvcGVuUmVjb3JkQXBpRm9ybTogRXZlbnRFbWl0dGVyPERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbj4oKVxuXG4gIGdldCBnZW5lcmF0ZWRUZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJ1xuICAgICAgPyAnZGF0YWh1Yi5zZWFyY2guZmlsdGVyLmdlbmVyYXRlZEJ5V2ZzJ1xuICAgICAgOiAnZGF0YWh1Yi5zZWFyY2guZmlsdGVyLmdlbmVyYXRlZEJ5QVBJJ1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5kaXNwbGF5QXBpRm9ybUJ1dHRvbiA9XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnIHx8XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJyB8fFxuICAgICAgdGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ0dQRkRMJ1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID1cbiAgICAgIGNoYW5nZXMuY3VycmVudExpbmsuY3VycmVudFZhbHVlID09PSB0aGlzLmxpbmsgPyB0cnVlIDogZmFsc2VcbiAgfVxuXG4gIG9wZW5SZWNvcmRBcGlGb3JtUGFuZWwoKSB7XG4gICAgaWYgKHRoaXMuZGlzcGxheUFwaUZvcm1CdXR0b24pIHtcbiAgICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID0gIXRoaXMuY3VycmVudGx5QWN0aXZlXG4gICAgICB0aGlzLm9wZW5SZWNvcmRBcGlGb3JtLmVtaXQodGhpcy5jdXJyZW50bHlBY3RpdmUgPyB0aGlzLmxpbmsgOiB1bmRlZmluZWQpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZ3JvdXAgZmxleCBqdXN0aWZ5LWJldHdlZW4gcm91bmRlZCBmaWx0ZXIgb3ZlcmZsb3ctaGlkZGVuIGNhcmQtc2hhZG93XCJcbiAgW25nQ2xhc3NdPVwiY2FyZENsYXNzXCJcbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNpemUgIT09ICdTJ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LTEgbWluLXctMFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbWluLXctWzMycHhdXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNpemUgPT09ICdTJ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTJcIj5cbiAgICA8Z24tdWktY29weS10ZXh0LWJ1dHRvblxuICAgICAgW3RleHRdPVwibGluay51cmxcIlxuICAgICAgW3Rvb2x0aXBUZXh0XT1cIid0b29sdGlwLnVybC5jb3B5JyB8IHRyYW5zbGF0ZVwiXG4gICAgICBbZGlzcGxheVRleHRdPVwiZmFsc2VcIlxuICAgICAgY2xhc3M9XCJib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQtbGcgcHQtMSBweC0yIGgtWzM0cHhdXCJcbiAgICA+PC9nbi11aS1jb3B5LXRleHQtYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwiZGlzcGxheUFwaUZvcm1CdXR0b25cIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImduLXVpLWNhcmQtaWNvblwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdweS0yIHB4LTQgcm91bmRlZC1yLW1kIGJnLWdyYXktNDAwIGhvdmVyOmJnLWdyYXktNjAwIGZvY3VzOmJnLWdyYXktODAwIHRleHQtd2hpdGUnOlxuICAgICAgICAgIGRpc3BsYXlUZXh0LFxuICAgICAgfVwiXG4gICAgICBbbWF0VG9vbHRpcF09XCJcbiAgICAgICAgIWN1cnJlbnRseUFjdGl2ZVxuICAgICAgICAgID8gKCdyZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ub3BlbkZvcm0nIHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogKCdyZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0uY2xvc2VGb3JtJyB8IHRyYW5zbGF0ZSlcbiAgICAgIFwiXG4gICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICAoY2xpY2spPVwib3BlblJlY29yZEFwaUZvcm1QYW5lbCgpXCJcbiAgICA+XG4gICAgICA8bmctaWNvblxuICAgICAgICBjbGFzcz1cInBvaW50ZXItZXZlbnRzLW5vbmUgYWxpZ24tbWlkZGxlIGNhcmQtaWNvblwiXG4gICAgICAgIG5hbWU9XCJpY29ub2lyU2V0dGluZ3NcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ3RleHQtc2Vjb25kYXJ5IG9wYWNpdHktMTAwJzogY3VycmVudGx5QWN0aXZlLFxuICAgICAgICB9XCJcbiAgICAgID48L25nLWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiZmxleC0xIG1pbi13LTBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ24tdWktY2FyZC10aXRsZVwiPlxuICAgICAge3sgbGluay5kZXNjcmlwdGlvbiB8fCBsaW5rLm5hbWUgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ24tdWktY2FyZC1kZXRhaWxcIj5cbiAgICAgIHt7IGxpbmsubmFtZSB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIuNSBpdGVtcy1jZW50ZXIgcHQtMVwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCAhPT0gJ0dQRkRMJ1wiXG4gICAgICAgIGNsYXNzPVwiYmctcHJpbWFyeS1vcGFjaXR5LTUwIHVwcGVyY2FzZSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcHgtMiBweS0xIHRleHQtMTMgZm9udC1tZWRpdW0gbGVhZGluZy1ub25lIHRleHQtd2hpdGUgcm91bmRlZCB0ZXh0LXByaW1hcnktbGlnaHRlc3QgZ3JvdXAtaG92ZXI6YmctcHJpbWFyeSB0cmFuc2l0aW9uLWNvbG9yc1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnIWJnLXByaW1hcnknOiBjdXJyZW50bHlBY3RpdmUsXG4gICAgICAgIH1cIlxuICAgICAgICA+e3sgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgfX08L3NwYW5cbiAgICAgID5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwibGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdHUEZETCdcIlxuICAgICAgICBjbGFzcz1cImJnLXByaW1hcnktb3BhY2l0eS01MCB1cHBlcmNhc2UgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTIgcHktMSB0ZXh0LTEzIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZSB0ZXh0LXdoaXRlIHJvdW5kZWQgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGdyb3VwLWhvdmVyOmJnLXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnNcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJyFiZy1wcmltYXJ5JzogY3VycmVudGx5QWN0aXZlLFxuICAgICAgICB9XCJcbiAgICAgICAgdHJhbnNsYXRlXG4gICAgICA+XG4gICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZ3BmZGw8L3NwYW5cbiAgICAgID5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwic2l6ZSA9PT0gJ1MnXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=