geonetwork-ui 2.6.0-dev.3a78a5eaa → 2.6.0-dev.3e7617888

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 (346) 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 +7 -3
  11. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  12. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +2 -1
  13. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +7 -3
  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/map/src/lib/map-state-container/map-state-container.component.mjs +2 -2
  18. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +2 -4
  19. package/esm2022/libs/feature/record/src/index.mjs +1 -2
  20. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +5 -9
  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/map-view/map-view.component.mjs +45 -14
  23. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  24. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +8 -5
  25. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -6
  26. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  27. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  28. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  29. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  30. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  31. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +8 -7
  32. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +13 -19
  33. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  34. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
  35. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +26 -10
  36. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
  37. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  38. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  39. package/esm2022/libs/ui/elements/src/index.mjs +4 -1
  40. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +27 -6
  41. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +22 -6
  42. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
  43. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +163 -0
  44. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +51 -0
  45. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +29 -7
  46. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  47. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  48. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +8 -5
  49. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  50. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +3 -2
  51. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +161 -0
  52. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +22 -4
  53. package/esm2022/libs/ui/inputs/src/index.mjs +2 -2
  54. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  55. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +42 -0
  56. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  57. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -3
  58. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +7 -2
  59. package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +43 -3
  60. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  61. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +15 -3
  62. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  63. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +14 -3
  64. package/esm2022/libs/ui/map/src/lib/components/map-legend/map-legend.component.mjs +5 -1
  65. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +79 -0
  66. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  67. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  68. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  69. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +5 -4
  70. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +11 -3
  71. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  72. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +2 -1
  73. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
  74. package/esm2022/libs/util/data-fetcher/src/lib/data-fetcher.mjs +6 -2
  75. package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +4 -1
  76. package/esm2022/libs/util/data-fetcher/src/lib/readers/wfs.mjs +30 -2
  77. package/esm2022/libs/util/shared/src/index.mjs +2 -1
  78. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  79. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +2 -1
  80. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +33 -24
  81. package/esm2022/translations/de.json +39 -4
  82. package/esm2022/translations/en.json +40 -5
  83. package/esm2022/translations/es.json +39 -4
  84. package/esm2022/translations/fr.json +41 -6
  85. package/esm2022/translations/it.json +39 -5
  86. package/esm2022/translations/nl.json +39 -4
  87. package/esm2022/translations/pt.json +39 -4
  88. package/fesm2022/geonetwork-ui.mjs +1674 -580
  89. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  90. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  91. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  92. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  93. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  94. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  95. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  96. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  97. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  98. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +6 -2
  99. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  100. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  101. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  102. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +2 -2
  103. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  104. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  105. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  106. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  107. 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
  108. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  109. package/libs/feature/record/src/index.d.ts +0 -1
  110. package/libs/feature/record/src/index.d.ts.map +1 -1
  111. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +9 -1
  112. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  113. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  114. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  115. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  116. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  117. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +7 -2
  118. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  119. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  120. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +3 -1
  121. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  122. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  123. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  124. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  125. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  126. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  127. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  128. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  129. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  130. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  131. package/libs/feature/search/src/index.d.ts +1 -1
  132. package/libs/feature/search/src/index.d.ts.map +1 -1
  133. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  134. package/libs/feature/search/src/lib/feature-search.module.d.ts +4 -2
  135. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  136. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  137. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  138. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
  139. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  140. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  141. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  142. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
  143. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  144. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  145. package/libs/ui/elements/src/index.d.ts +3 -0
  146. package/libs/ui/elements/src/index.d.ts.map +1 -1
  147. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts +9 -1
  148. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  149. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +8 -1
  150. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  151. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +43 -0
  152. package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -0
  153. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +11 -0
  154. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  155. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +10 -2
  156. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  157. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  158. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  159. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  160. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +30 -0
  161. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  162. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +4 -1
  163. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  164. package/libs/ui/inputs/src/index.d.ts +1 -1
  165. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  166. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  167. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  168. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  169. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  170. package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
  171. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
  172. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  173. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
  174. package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
  175. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +2 -0
  176. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  177. package/libs/ui/map/src/index.d.ts +1 -0
  178. package/libs/ui/map/src/index.d.ts.map +1 -1
  179. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +4 -2
  180. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -1
  181. package/libs/ui/map/src/lib/components/map-legend/map-legend.component.d.ts.map +1 -1
  182. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  183. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  184. package/libs/ui/search/src/index.d.ts +1 -0
  185. package/libs/ui/search/src/index.d.ts.map +1 -1
  186. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  187. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  188. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  189. package/libs/ui/search/src/lib/ui-search.module.d.ts +21 -19
  190. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  191. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  192. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  193. package/libs/util/data-fetcher/src/lib/data-fetcher.d.ts.map +1 -1
  194. package/libs/util/data-fetcher/src/lib/model.d.ts +3 -2
  195. package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
  196. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts +1 -0
  197. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts.map +1 -1
  198. package/libs/util/shared/src/index.d.ts +1 -0
  199. package/libs/util/shared/src/index.d.ts.map +1 -1
  200. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  201. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  202. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  203. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  204. package/libs/util/shared/src/lib/links/link-utils.d.ts +30 -23
  205. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  206. package/package.json +1 -1
  207. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  208. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  209. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  210. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  211. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +2 -2
  212. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  213. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  214. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +8 -2
  215. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +2 -2
  216. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +3 -3
  217. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +1 -9
  218. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  219. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +6 -2
  220. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +26 -26
  221. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +2 -2
  222. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  223. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +1 -0
  224. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +4 -0
  225. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +1 -0
  226. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +10 -8
  227. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -0
  228. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +1 -2
  229. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -2
  230. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  231. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
  232. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +1 -3
  233. package/src/libs/feature/record/src/index.ts +0 -1
  234. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -3
  235. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +4 -5
  236. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +1 -0
  237. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +41 -7
  238. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  239. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +5 -3
  240. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +4 -7
  241. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  242. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  243. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  244. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  245. package/src/libs/feature/search/src/index.ts +1 -1
  246. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +1 -7
  247. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -8
  248. package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -10
  249. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  250. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
  251. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
  252. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
  253. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  254. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +24 -5
  255. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  256. package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
  257. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  258. package/src/libs/ui/elements/src/index.ts +3 -0
  259. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +64 -38
  260. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +26 -2
  261. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +17 -17
  262. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +20 -2
  263. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +7 -6
  264. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.css +0 -0
  265. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +156 -0
  266. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +190 -0
  267. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  268. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +9 -0
  269. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +51 -0
  270. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +27 -29
  271. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +33 -3
  272. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +1 -1
  273. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +1 -1
  274. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  275. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +13 -4
  276. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -4
  277. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +4 -2
  278. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -1
  279. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  280. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +96 -0
  281. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +183 -0
  282. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +9 -0
  283. package/src/libs/ui/inputs/src/index.ts +1 -1
  284. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  285. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  286. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
  287. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  288. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +5 -5
  289. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +2 -1
  290. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -0
  291. package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +46 -2
  292. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -4
  293. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -7
  294. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -0
  295. package/src/libs/ui/map/src/index.ts +1 -0
  296. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +14 -0
  297. package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.ts +3 -0
  298. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  299. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  300. 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} +7 -8
  301. package/src/libs/ui/search/src/index.ts +1 -0
  302. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  303. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +24 -0
  304. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  305. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +7 -4
  306. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +2 -1
  307. package/src/libs/ui/search/src/lib/ui-search.module.ts +5 -0
  308. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +4 -3
  309. package/src/libs/util/app-config/src/lib/app-config.ts +1 -0
  310. package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
  311. package/src/libs/util/data-fetcher/src/lib/data-fetcher.ts +3 -1
  312. package/src/libs/util/data-fetcher/src/lib/model.ts +11 -1
  313. package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +29 -3
  314. package/src/libs/util/shared/src/index.ts +1 -0
  315. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  316. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +12 -3
  317. package/src/libs/util/shared/src/lib/links/link-utils.ts +50 -30
  318. package/tailwind.base.css +51 -13
  319. package/translations/de.json +39 -4
  320. package/translations/en.json +40 -5
  321. package/translations/es.json +39 -4
  322. package/translations/fr.json +41 -6
  323. package/translations/it.json +39 -5
  324. package/translations/nl.json +39 -4
  325. package/translations/pt.json +39 -4
  326. package/translations/sk.json +39 -4
  327. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  328. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  329. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  330. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
  331. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  332. 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
  333. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  334. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  335. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  336. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  337. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
  338. package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
  339. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  340. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  341. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  342. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  343. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
  344. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
  345. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
  346. /package/src/libs/feature/{editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css → search/src/lib/results-hits/results-hits.container.component.css} +0 -0
@@ -2,10 +2,10 @@ import { ChangeDetectionStrategy, Component, Inject, InjectionToken, Input, Opti
2
2
  import { Configuration } from '../../../../../../libs/data-access/gn4/src';
3
3
  import { BehaviorSubject, combineLatest, map } from 'rxjs';
4
4
  import { MdViewFacade } from '../state';
5
- import { GN_UI_VERSION } from '../gn-ui-version.token';
6
5
  import { CopyTextButtonComponent } from '../../../../../../libs/ui/inputs/src';
7
6
  import { CommonModule } from '@angular/common';
8
7
  import { TranslateModule } from '@ngx-translate/core';
8
+ import { GEONETWORK_UI_TAG_NAME } from '../../../../../../libs/util/shared/src';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "../state";
11
11
  import * as i2 from "@angular/common";
@@ -16,10 +16,9 @@ export class DataViewPermalinkComponent {
16
16
  set viewType(value) {
17
17
  this.viewType$.next(value);
18
18
  }
19
- constructor(config, wcEmbedderBaseUrl, version, facade) {
19
+ constructor(config, wcEmbedderBaseUrl, facade) {
20
20
  this.config = config;
21
21
  this.wcEmbedderBaseUrl = wcEmbedderBaseUrl;
22
- this.version = version;
23
22
  this.facade = facade;
24
23
  this.viewType$ = new BehaviorSubject('map');
25
24
  this.permalinkUrl$ = combineLatest([
@@ -28,7 +27,7 @@ export class DataViewPermalinkComponent {
28
27
  this.facade.metadata$,
29
28
  ]).pipe(map(([viewType, config, metadata]) => {
30
29
  const url = new URL(`${this.wcEmbedderBaseUrl}`, window.location.origin);
31
- url.searchParams.set('v', `${this.version}`);
30
+ url.searchParams.set('v', `${GEONETWORK_UI_TAG_NAME}`);
32
31
  if (viewType === 'chart') {
33
32
  if (config) {
34
33
  const { aggregation, xProperty, yProperty, chartType } = config;
@@ -59,7 +58,7 @@ export class DataViewPermalinkComponent {
59
58
  return url.toString();
60
59
  }));
61
60
  }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewPermalinkComponent, deps: [{ token: Configuration }, { token: WEB_COMPONENT_EMBEDDER_URL, optional: true }, { token: GN_UI_VERSION }, { token: i1.MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewPermalinkComponent, deps: [{ token: Configuration }, { token: WEB_COMPONENT_EMBEDDER_URL, optional: true }, { token: i1.MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
63
62
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewPermalinkComponent, isStandalone: true, selector: "gn-ui-data-view-permalink", inputs: { viewType: "viewType" }, ngImport: i0, template: "<gn-ui-copy-text-button\n *ngIf=\"wcEmbedderBaseUrl\"\n [text]=\"permalinkUrl$ | async\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
64
63
  }
65
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewPermalinkComponent, decorators: [{
@@ -73,10 +72,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
73
72
  }, {
74
73
  type: Inject,
75
74
  args: [WEB_COMPONENT_EMBEDDER_URL]
76
- }] }, { type: undefined, decorators: [{
77
- type: Inject,
78
- args: [GN_UI_VERSION]
79
75
  }] }, { type: i1.MdViewFacade }], propDecorators: { viewType: [{
80
76
  type: Input
81
77
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXBlcm1hbGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZGF0YS12aWV3LXBlcm1hbGluay9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctcGVybWFsaW5rL2RhdGEtdmlldy1wZXJtYWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7O0FBRXJELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUMxRCx5QkFBeUIsQ0FDMUIsQ0FBQTtBQVVELE1BQU0sT0FBTywwQkFBMEI7SUFFckMsSUFDSSxRQUFRLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMs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RCxPQUFPLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUN2QixDQUFDLENBQUMsQ0FDSCxDQUFBO0lBU0UsQ0FBQzsrR0FsRE8sMEJBQTBCLGtCQTRDM0IsYUFBYSxhQUViLDBCQUEwQiw2QkFFMUIsYUFBYTttR0FoRFosMEJBQTBCLHVIQzVCdkMsOEtBS0EseUREcUJZLFlBQVksd0xBQUUsdUJBQXVCLDBIQUFFLGVBQWU7OzRGQUVyRCwwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx1QkFBdUIsRUFBRSxlQUFlLENBQUM7OzBCQThDOUQsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQywwQkFBMEI7OzBCQUVqQyxNQUFNOzJCQUFDLGFBQWE7b0VBN0NuQixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIEluamVjdGlvblRva2VuLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9nbjQvc3JjJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTWRWaWV3RmFjYWRlIH0gZnJvbSAnLi4vc3RhdGUnXG5pbXBvcnQgeyBHTl9VSV9WRVJTSU9OIH0gZnJvbSAnLi4vZ24tdWktdmVyc2lvbi50b2tlbidcbmltcG9ydCB7IENvcHlUZXh0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuZXhwb3J0IGNvbnN0IFdFQl9DT01QT05FTlRfRU1CRURERVJfVVJMID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICd3ZWJDb21wb25lbnRFbWJlZGRlclVybCdcbilcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZGF0YS12aWV3LXBlcm1hbGluaycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LXBlcm1hbGluay5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDb3B5VGV4dEJ1dHRvbkNvbXBvbmVudCwgVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQge1xuICB2aWV3VHlwZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ21hcCcpXG4gIEBJbnB1dCgpXG4gIHNldCB2aWV3VHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52aWV3VHlwZSQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHBlcm1hbGlua1VybCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnZpZXdUeXBlJCxcbiAgICB0aGlzLmZhY2FkZS5jaGFydENvbmZpZyQsXG4gICAgdGhpcy5mYWNhZGUubWV0YWRhdGEkLFxuICBdKS5waXBlKFxuICAgIG1hcCgoW3ZpZXdUeXBlLCBjb25maWcsIG1ldGFkYXRhXSkgPT4ge1xuICAgICAgY29uc3QgdXJsID0gbmV3IFVSTChgJHt0aGlzLndjRW1iZWRkZXJCYXNlVXJsfWAsIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLnNldCgndicsIGAke3RoaXMudmVyc2lvbn1gKVxuICAgICAgaWYgKHZpZXdUeXBlID09PSAnY2hhcnQnKSB7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICBjb25zdCB7IGFnZ3JlZ2F0aW9uLCB4UHJvcGVydHksIHlQcm9wZXJ0eSwgY2hhcnRUeXBlIH0gPSBjb25maWdcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnZScsIGBnbi1kYXRhc2V0LXZpZXctY2hhcnRgKVxuICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYGFnZ3JlZ2F0aW9uPSR7YWdncmVnYXRpb259YClcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGB4LXByb3BlcnR5PSR7eFByb3BlcnR5fWApXG4gICAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgeS1wcm9wZXJ0eT0ke3lQcm9wZXJ0eX1gKVxuICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYGNoYXJ0LXR5cGU9JHtjaGFydFR5cGV9YClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJydcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh2aWV3VHlwZSA9PT0gJ3RhYmxlJykge1xuICAgICAgICAvLyB0YWJsZVxuICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnZScsIGBnbi1kYXRhc2V0LXZpZXctdGFibGVgKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gbWFwXG4gICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdlJywgYGduLWRhdGFzZXQtdmlldy1tYXBgKVxuICAgICAgfVxuICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgYXBpLXVybD0ke3RoaXMuY29uZmlnLmJhc2VQYXRofWApXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBkYXRhc2V0LWlkPSR7bWV0YWRhdGEudW5pcXVlSWRlbnRpZmllcn1gKVxuICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgcHJpbWFyeS1jb2xvcj0jMGY0Mzk1YClcbiAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYHNlY29uZGFyeS1jb2xvcj0jOGJjODMyYClcbiAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYG1haW4tY29sb3I9IzU1NWApXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBiYWNrZ3JvdW5kLWNvbG9yPSNmZGZiZmZgKVxuICAgICAgcmV0dXJuIHVybC50b1N0cmluZygpXG4gICAgfSlcbiAgKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQ29uZmlndXJhdGlvbikgcHJpdmF0ZSBjb25maWc6IENvbmZpZ3VyYXRpb24sXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFdFQl9DT01QT05FTlRfRU1CRURERVJfVVJMKVxuICAgIHByb3RlY3RlZCB3Y0VtYmVkZGVyQmFzZVVybDogc3RyaW5nLFxuICAgIEBJbmplY3QoR05fVUlfVkVSU0lPTikgcHJpdmF0ZSB2ZXJzaW9uOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSBmYWNhZGU6IE1kVmlld0ZhY2FkZVxuICApIHt9XG59XG4iLCI8Z24tdWktY29weS10ZXh0LWJ1dHRvblxuICAqbmdJZj1cIndjRW1iZWRkZXJCYXNlVXJsXCJcbiAgW3RleHRdPVwicGVybWFsaW5rVXJsJCB8IGFzeW5jXCJcbiAgW3Rvb2x0aXBUZXh0XT1cIid0b29sdGlwLnVybC5jb3B5JyB8IHRyYW5zbGF0ZVwiXG4+PC9nbi11aS1jb3B5LXRleHQtYnV0dG9uPlxuIl19
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXBlcm1hbGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZGF0YS12aWV3LXBlcm1hbGluay9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctcGVybWFsaW5rL2RhdGEtdmlldy1wZXJtYWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUN2QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFBOzs7Ozs7QUFFL0UsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQzFELHlCQUF5QixDQUMxQixDQUFBO0FBVUQsTUFBTSxPQUFPLDBCQUEwQjtJQUVyQyxJQUNJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FB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QyxDQUFDLENBQ0gsQ0FBQTtJQVFFLENBQUM7K0dBakRPLDBCQUEwQixrQkE0QzNCLGFBQWEsYUFFYiwwQkFBMEI7bUdBOUN6QiwwQkFBMEIsdUhDNUJ2Qyw4S0FLQSx5RERxQlksWUFBWSx3TEFBRSx1QkFBdUIsMEhBQUUsZUFBZTs7NEZBRXJELDBCQUEwQjtrQkFSdEMsU0FBUzsrQkFDRSwyQkFBMkIsbUJBR3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFFLGVBQWUsQ0FBQzs7MEJBOEM5RCxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixRQUFROzswQkFDUixNQUFNOzJCQUFDLDBCQUEwQjtvRUEzQ2hDLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL2duNC9zcmMnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBNZFZpZXdGYWNhZGUgfSBmcm9tICcuLi9zdGF0ZSdcbmltcG9ydCB7IENvcHlUZXh0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEdFT05FVFdPUktfVUlfVEFHX05BTUUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcblxuZXhwb3J0IGNvbnN0IFdFQl9DT01QT05FTlRfRU1CRURERVJfVVJMID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXG4gICd3ZWJDb21wb25lbnRFbWJlZGRlclVybCdcbilcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktZGF0YS12aWV3LXBlcm1hbGluaycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LXBlcm1hbGluay5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDb3B5VGV4dEJ1dHRvbkNvbXBvbmVudCwgVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQge1xuICB2aWV3VHlwZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ21hcCcpXG4gIEBJbnB1dCgpXG4gIHNldCB2aWV3VHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52aWV3VHlwZSQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHBlcm1hbGlua1VybCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnZpZXdUeXBlJCxcbiAgICB0aGlzLmZhY2FkZS5jaGFydENvbmZpZyQsXG4gICAgdGhpcy5mYWNhZGUubWV0YWRhdGEkLFxuICBdKS5waXBlKFxuICAgIG1hcCgoW3ZpZXdUeXBlLCBjb25maWcsIG1ldGFkYXRhXSkgPT4ge1xuICAgICAgY29uc3QgdXJsID0gbmV3IFVSTChgJHt0aGlzLndjRW1iZWRkZXJCYXNlVXJsfWAsIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLnNldCgndicsIGAke0dFT05FVFdPUktfVUlfVEFHX05BTUV9YClcbiAgICAgIGlmICh2aWV3VHlwZSA9PT0gJ2NoYXJ0Jykge1xuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgY29uc3QgeyBhZ2dyZWdhdGlvbiwgeFByb3BlcnR5LCB5UHJvcGVydHksIGNoYXJ0VHlwZSB9ID0gY29uZmlnXG4gICAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2UnLCBgZ24tZGF0YXNldC12aWV3LWNoYXJ0YClcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBhZ2dyZWdhdGlvbj0ke2FnZ3JlZ2F0aW9ufWApXG4gICAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgeC1wcm9wZXJ0eT0ke3hQcm9wZXJ0eX1gKVxuICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYHktcHJvcGVydHk9JHt5UHJvcGVydHl9YClcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBjaGFydC10eXBlPSR7Y2hhcnRUeXBlfWApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICcnXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodmlld1R5cGUgPT09ICd0YWJsZScpIHtcbiAgICAgICAgLy8gdGFibGVcbiAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2UnLCBgZ24tZGF0YXNldC12aWV3LXRhYmxlYClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIG1hcFxuICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnZScsIGBnbi1kYXRhc2V0LXZpZXctbWFwYClcbiAgICAgIH1cbiAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYGFwaS11cmw9JHt0aGlzLmNvbmZpZy5iYXNlUGF0aH1gKVxuICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgZGF0YXNldC1pZD0ke21ldGFkYXRhLnVuaXF1ZUlkZW50aWZpZXJ9YClcbiAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhJywgYHByaW1hcnktY29sb3I9IzBmNDM5NWApXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBzZWNvbmRhcnktY29sb3I9IzhiYzgzMmApXG4gICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgnYScsIGBtYWluLWNvbG9yPSM1NTVgKVxuICAgICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2EnLCBgYmFja2dyb3VuZC1jb2xvcj0jZmRmYmZmYClcbiAgICAgIHJldHVybiB1cmwudG9TdHJpbmcoKVxuICAgIH0pXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KENvbmZpZ3VyYXRpb24pIHByaXZhdGUgY29uZmlnOiBDb25maWd1cmF0aW9uLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTClcbiAgICBwcm90ZWN0ZWQgd2NFbWJlZGRlckJhc2VVcmw6IHN0cmluZyxcbiAgICBwcml2YXRlIGZhY2FkZTogTWRWaWV3RmFjYWRlXG4gICkge31cbn1cbiIsIjxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gICpuZ0lmPVwid2NFbWJlZGRlckJhc2VVcmxcIlxuICBbdGV4dF09XCJwZXJtYWxpbmtVcmwkIHwgYXN5bmNcIlxuICBbdG9vbHRpcFRleHRdPVwiJ3Rvb2x0aXAudXJsLmNvcHknIHwgdHJhbnNsYXRlXCJcbj48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4iXX0=
@@ -2,10 +2,10 @@ import { ChangeDetectionStrategy, Component, Inject, Input, } from '@angular/cor
2
2
  import { Configuration } from '../../../../../../libs/data-access/gn4/src';
3
3
  import { MdViewFacade } from '../state';
4
4
  import { BehaviorSubject, combineLatest, map } from 'rxjs';
5
- import { GN_UI_VERSION } from '../gn-ui-version.token';
6
5
  import { CopyTextButtonComponent } from '../../../../../../libs/ui/inputs/src';
7
6
  import { CommonModule } from '@angular/common';
8
7
  import { TranslateModule } from '@ngx-translate/core';
8
+ import { GEONETWORK_UI_TAG_NAME } from '../../../../../../libs/util/shared/src';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "../state";
11
11
  import * as i2 from "@angular/common";
@@ -15,16 +15,15 @@ export class DataViewWebComponentComponent {
15
15
  set viewType(value) {
16
16
  this.viewType$.next(value);
17
17
  }
18
- constructor(config, version, facade) {
18
+ constructor(config, facade) {
19
19
  this.config = config;
20
- this.version = version;
21
20
  this.facade = facade;
22
21
  this.viewType$ = new BehaviorSubject('map');
23
22
  this.webComponentHtml$ = combineLatest(this.viewType$, this.facade.chartConfig$, this.facade.metadata$).pipe(map(([viewType, config, metadata]) => {
24
23
  if (viewType === 'chart') {
25
24
  if (config) {
26
25
  const { aggregation, xProperty, yProperty, chartType } = config;
27
- return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
26
+ return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${GEONETWORK_UI_TAG_NAME}/gn-wc.js"></script>
28
27
  <gn-dataset-view-chart
29
28
  api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
30
29
  dataset-id="${metadata.uniqueIdentifier}"
@@ -43,7 +42,7 @@ export class DataViewWebComponentComponent {
43
42
  return '';
44
43
  }
45
44
  else if (viewType === 'table') {
46
- return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
45
+ return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${GEONETWORK_UI_TAG_NAME}/gn-wc.js"></script>
47
46
  <gn-dataset-view-table
48
47
  api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
49
48
  dataset-id="${metadata.uniqueIdentifier}"
@@ -56,7 +55,7 @@ export class DataViewWebComponentComponent {
56
55
  ></gn-dataset-view-table>`;
57
56
  }
58
57
  else {
59
- return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
58
+ return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${GEONETWORK_UI_TAG_NAME}/gn-wc.js"></script>
60
59
  <gn-dataset-view-map
61
60
  api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
62
61
  dataset-id="${metadata.uniqueIdentifier}"
@@ -70,7 +69,7 @@ export class DataViewWebComponentComponent {
70
69
  }
71
70
  }));
72
71
  }
73
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewWebComponentComponent, deps: [{ token: Configuration }, { token: GN_UI_VERSION }, { token: i1.MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewWebComponentComponent, deps: [{ token: Configuration }, { token: i1.MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
74
73
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DataViewWebComponentComponent, isStandalone: true, selector: "gn-ui-data-view-web-component", inputs: { viewType: "viewType" }, ngImport: i0, template: "<gn-ui-copy-text-button\n [text]=\"webComponentHtml$ | async\"\n [rows]=\"3\"\n [tooltipText]=\"'tooltip.html.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
74
  }
76
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataViewWebComponentComponent, decorators: [{
@@ -79,10 +78,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
79
78
  }], ctorParameters: () => [{ type: i4.Configuration, decorators: [{
80
79
  type: Inject,
81
80
  args: [Configuration]
82
- }] }, { type: undefined, decorators: [{
83
- type: Inject,
84
- args: [GN_UI_VERSION]
85
81
  }] }, { type: i1.MdViewFacade }], propDecorators: { viewType: [{
86
82
  type: Input
87
83
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXdlYi1jb21wb25lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL2RhdGEtdmlldy13ZWItY29tcG9uZW50L2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7Ozs7O0FBVXJELE1BQU0sT0FBTyw2QkFBNkI7SUFFeEMsSUFDSSxRQUFRLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM1QixDQUFDO0lBc0VELFlBQ2lDLE1BQXFCLEVBQ3JCLE9BQWUsRUFDdEMsTUFBb0I7UUFGRyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDdEMsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQTdFOUIsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFTLEtBQUssQ0FBQyxDQUFBO1FBSzlDLHNCQUFpQixHQUFHLGFBQWEsQ0FDL0IsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQ3RCLENBQUMsSUFBSSxDQUNKLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUN6QixJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNYLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUE7b0JBQy9ELE9BQU8sNkVBQ0wsSUFBSSxDQUFDLE9BQ1A7O3FCQUVXLElBQUksR0FBRyxDQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFDcEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ3ZCLENBQUMsUUFBUSxFQUFFO3dCQUNFLFFBQVEsQ0FBQyxnQkFBZ0I7eUJBQ3hCLFdBQVc7d0JBQ1osU0FBUzt3QkFDVCxTQUFTO3dCQUNULFNBQVM7Ozs7Ozs7NEJBT0wsQ0FBQTtnQkFDcEIsQ0FBQztnQkFDRCxPQUFPLEVBQUUsQ0FBQTtZQUNYLENBQUM7aUJBQU0sSUFBSSxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7Z0JBQ2hDLE9BQU8sNkVBQ0wsSUFBSSxDQUFDLE9BQ1A7O3FCQUVhLElBQUksR0FBRyxDQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFDcEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ3ZCLENBQUMsUUFBUSxFQUFFO3dCQUNFLFFBQVEsQ0FBQyxnQkFBZ0I7Ozs7Ozs7NEJBT3JCLENBQUE7WUFDdEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sNkVBQ0wsSUFBSSxDQUFDLE9BQ1A7O21CQUVXLElBQUksR0FBRyxDQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFDcEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ3ZCLENBQUMsUUFBUSxFQUFFO3NCQUNFLFFBQVEsQ0FBQyxnQkFBZ0I7Ozs7Ozs7d0JBT3ZCLENBQUE7WUFDbEIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUE7SUFNRSxDQUFDOytHQS9FTyw2QkFBNkIsa0JBNEU5QixhQUFhLGFBQ2IsYUFBYTttR0E3RVosNkJBQTZCLDJIQ3RCMUMsb0tBS0EseUREZVksWUFBWSxvRkFBRSx1QkFBdUIsMEhBQUUsZUFBZTs7NEZBRXJELDZCQUE2QjtrQkFSekMsU0FBUzsrQkFDRSwrQkFBK0IsbUJBR3hCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFFLGVBQWUsQ0FBQzs7MEJBOEU5RCxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLGFBQWE7b0VBMUVuQixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1hY2Nlc3MvZ240L3NyYydcbmltcG9ydCB7IE1kVmlld0ZhY2FkZSB9IGZyb20gJy4uL3N0YXRlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgR05fVUlfVkVSU0lPTiB9IGZyb20gJy4uL2duLXVpLXZlcnNpb24udG9rZW4nXG5pbXBvcnQgeyBDb3B5VGV4dEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRhdGEtdmlldy13ZWItY29tcG9uZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LXdlYi1jb21wb25lbnQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ29weVRleHRCdXR0b25Db21wb25lbnQsIFRyYW5zbGF0ZU1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIERhdGFWaWV3V2ViQ29tcG9uZW50Q29tcG9uZW50IHtcbiAgdmlld1R5cGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCdtYXAnKVxuICBASW5wdXQoKVxuICBzZXQgdmlld1R5cGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmlld1R5cGUkLm5leHQodmFsdWUpXG4gIH1cbiAgd2ViQ29tcG9uZW50SHRtbCQgPSBjb21iaW5lTGF0ZXN0KFxuICAgIHRoaXMudmlld1R5cGUkLFxuICAgIHRoaXMuZmFjYWRlLmNoYXJ0Q29uZmlnJCxcbiAgICB0aGlzLmZhY2FkZS5tZXRhZGF0YSRcbiAgKS5waXBlKFxuICAgIG1hcCgoW3ZpZXdUeXBlLCBjb25maWcsIG1ldGFkYXRhXSkgPT4ge1xuICAgICAgaWYgKHZpZXdUeXBlID09PSAnY2hhcnQnKSB7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICBjb25zdCB7IGFnZ3JlZ2F0aW9uLCB4UHJvcGVydHksIHlQcm9wZXJ0eSwgY2hhcnRUeXBlIH0gPSBjb25maWdcbiAgICAgICAgICByZXR1cm4gYDxzY3JpcHQgc3JjPVwiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L2doL2dlb25ldHdvcmsvZ2VvbmV0d29yay11aUB3Yy1kaXN0LSR7XG4gICAgICAgICAgICB0aGlzLnZlcnNpb25cbiAgICAgICAgICB9L2duLXdjLmpzXCI+PC9zY3JpcHQ+XG4gIDxnbi1kYXRhc2V0LXZpZXctY2hhcnRcbiAgICAgICAgICBhcGktdXJsPVwiJHtuZXcgVVJMKFxuICAgICAgICAgICAgdGhpcy5jb25maWcuYmFzZVBhdGgsXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG4gICAgICAgICAgKS50b1N0cmluZygpfVwiXG4gICAgICAgICAgZGF0YXNldC1pZD1cIiR7bWV0YWRhdGEudW5pcXVlSWRlbnRpZmllcn1cIlxuICAgICAgICAgIGFnZ3JlZ2F0aW9uPVwiJHthZ2dyZWdhdGlvbn1cIlxuICAgICAgICAgIHgtcHJvcGVydHk9XCIke3hQcm9wZXJ0eX1cIlxuICAgICAgICAgIHktcHJvcGVydHk9XCIke3lQcm9wZXJ0eX1cIlxuICAgICAgICAgIGNoYXJ0LXR5cGU9XCIke2NoYXJ0VHlwZX1cIlxuICAgICAgICAgIHByaW1hcnktY29sb3I9XCIjMGY0Mzk1XCJcbiAgICAgICAgICBzZWNvbmRhcnktY29sb3I9XCIjOGJjODMyXCJcbiAgICAgICAgICBtYWluLWNvbG9yPVwiIzU1NVwiXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcj1cIiNmZGZiZmZcIlxuICAgICAgICAgIG1haW4tZm9udD1cIidJbnRlcicsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgIHRpdGxlLWZvbnQ9XCInRE0gU2VyaWYgRGlzcGxheScsIHNlcmlmXCJcbiAgPjwvZ24tZGF0YXNldC12aWV3LWNoYXJ0PmBcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJydcbiAgICAgIH0gZWxzZSBpZiAodmlld1R5cGUgPT09ICd0YWJsZScpIHtcbiAgICAgICAgcmV0dXJuIGA8c2NyaXB0IHNyYz1cImh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9naC9nZW9uZXR3b3JrL2dlb25ldHdvcmstdWlAd2MtZGlzdC0ke1xuICAgICAgICAgIHRoaXMudmVyc2lvblxuICAgICAgICB9L2duLXdjLmpzXCI+PC9zY3JpcHQ+XG4gIDxnbi1kYXRhc2V0LXZpZXctdGFibGVcbiAgICAgICAgICBhcGktdXJsPVwiJHtuZXcgVVJMKFxuICAgICAgICAgICAgdGhpcy5jb25maWcuYmFzZVBhdGgsXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG4gICAgICAgICAgKS50b1N0cmluZygpfVwiXG4gICAgICAgICAgZGF0YXNldC1pZD1cIiR7bWV0YWRhdGEudW5pcXVlSWRlbnRpZmllcn1cIlxuICAgICAgICAgIHByaW1hcnktY29sb3I9XCIjMGY0Mzk1XCJcbiAgICAgICAgICBzZWNvbmRhcnktY29sb3I9XCIjOGJjODMyXCJcbiAgICAgICAgICBtYWluLWNvbG9yPVwiIzU1NVwiXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcj1cIiNmZGZiZmZcIlxuICAgICAgICAgIG1haW4tZm9udD1cIidJbnRlcicsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgIHRpdGxlLWZvbnQ9XCInRE0gU2VyaWYgRGlzcGxheScsIHNlcmlmXCJcbiAgPjwvZ24tZGF0YXNldC12aWV3LXRhYmxlPmBcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBgPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvZ2gvZ2VvbmV0d29yay9nZW9uZXR3b3JrLXVpQHdjLWRpc3QtJHtcbiAgICAgICAgICB0aGlzLnZlcnNpb25cbiAgICAgICAgfS9nbi13Yy5qc1wiPjwvc2NyaXB0PlxuPGduLWRhdGFzZXQtdmlldy1tYXBcbiAgICAgICAgYXBpLXVybD1cIiR7bmV3IFVSTChcbiAgICAgICAgICB0aGlzLmNvbmZpZy5iYXNlUGF0aCxcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG4gICAgICAgICkudG9TdHJpbmcoKX1cIlxuICAgICAgICBkYXRhc2V0LWlkPVwiJHttZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyfVwiXG4gICAgICAgIHByaW1hcnktY29sb3I9XCIjMGY0Mzk1XCJcbiAgICAgICAgc2Vjb25kYXJ5LWNvbG9yPVwiIzhiYzgzMlwiXG4gICAgICAgIG1haW4tY29sb3I9XCIjNTU1XCJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcj1cIiNmZGZiZmZcIlxuICAgICAgICBtYWluLWZvbnQ9XCInSW50ZXInLCBzYW5zLXNlcmlmXCJcbiAgICAgICAgdGl0bGUtZm9udD1cIidETSBTZXJpZiBEaXNwbGF5Jywgc2VyaWZcIlxuPjwvZ24tZGF0YXNldC12aWV3LW1hcD5gXG4gICAgICB9XG4gICAgfSlcbiAgKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQ29uZmlndXJhdGlvbikgcHJpdmF0ZSBjb25maWc6IENvbmZpZ3VyYXRpb24sXG4gICAgQEluamVjdChHTl9VSV9WRVJTSU9OKSBwcml2YXRlIHZlcnNpb246IHN0cmluZyxcbiAgICBwcml2YXRlIGZhY2FkZTogTWRWaWV3RmFjYWRlXG4gICkge31cbn1cbiIsIjxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gIFt0ZXh0XT1cIndlYkNvbXBvbmVudEh0bWwkIHwgYXN5bmNcIlxuICBbcm93c109XCIzXCJcbiAgW3Rvb2x0aXBUZXh0XT1cIid0b29sdGlwLmh0bWwuY29weScgfCB0cmFuc2xhdGVcIlxuPjwvZ24tdWktY29weS10ZXh0LWJ1dHRvbj5cbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LXdlYi1jb21wb25lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL2RhdGEtdmlldy13ZWItY29tcG9uZW50L2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFBOzs7Ozs7QUFVL0UsTUFBTSxPQUFPLDZCQUE2QjtJQUV4QyxJQUNJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzVCLENBQUM7SUFzRUQsWUFDaUMsTUFBcUIsRUFDNUMsTUFBb0I7UUFERyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQzVDLFdBQU0sR0FBTixNQUFNLENBQWM7UUE1RTlCLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBUyxLQUFLLENBQUMsQ0FBQTtRQUs5QyxzQkFBaUIsR0FBRyxhQUFhLENBQy9CLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUN0QixDQUFDLElBQUksQ0FDSixHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxNQUFNLEVBQUUsQ0FBQztvQkFDWCxNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFBO29CQUMvRCxPQUFPLDZFQUNMLHNCQUNGOztxQkFFVyxJQUFJLEdBQUcsQ0FDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUN2QixDQUFDLFFBQVEsRUFBRTt3QkFDRSxRQUFRLENBQUMsZ0JBQWdCO3lCQUN4QixXQUFXO3dCQUNaLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxTQUFTOzs7Ozs7OzRCQU9MLENBQUE7Z0JBQ3BCLENBQUM7Z0JBQ0QsT0FBTyxFQUFFLENBQUE7WUFDWCxDQUFDO2lCQUFNLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUNoQyxPQUFPLDZFQUNMLHNCQUNGOztxQkFFYSxJQUFJLEdBQUcsQ0FDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUN2QixDQUFDLFFBQVEsRUFBRTt3QkFDRSxRQUFRLENBQUMsZ0JBQWdCOzs7Ozs7OzRCQU9yQixDQUFBO1lBQ3RCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLDZFQUNMLHNCQUNGOzttQkFFVyxJQUFJLEdBQUcsQ0FDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUN2QixDQUFDLFFBQVEsRUFBRTtzQkFDRSxRQUFRLENBQUMsZ0JBQWdCOzs7Ozs7O3dCQU92QixDQUFBO1lBQ2xCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBS0UsQ0FBQzsrR0E5RU8sNkJBQTZCLGtCQTRFOUIsYUFBYTttR0E1RVosNkJBQTZCLDJIQ3RCMUMsb0tBS0EseUREZVksWUFBWSxvRkFBRSx1QkFBdUIsMEhBQUUsZUFBZTs7NEZBRXJELDZCQUE2QjtrQkFSekMsU0FBUzsrQkFDRSwrQkFBK0IsbUJBR3hCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFFLGVBQWUsQ0FBQzs7MEJBOEU5RCxNQUFNOzJCQUFDLGFBQWE7b0VBekVuQixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1hY2Nlc3MvZ240L3NyYydcbmltcG9ydCB7IE1kVmlld0ZhY2FkZSB9IGZyb20gJy4uL3N0YXRlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgQ29weVRleHRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgR0VPTkVUV09SS19VSV9UQUdfTkFNRSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1kYXRhLXZpZXctd2ViLWNvbXBvbmVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGEtdmlldy13ZWItY29tcG9uZW50LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENvcHlUZXh0QnV0dG9uQ29tcG9uZW50LCBUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCB7XG4gIHZpZXdUeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignbWFwJylcbiAgQElucHV0KClcbiAgc2V0IHZpZXdUeXBlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZpZXdUeXBlJC5uZXh0KHZhbHVlKVxuICB9XG4gIHdlYkNvbXBvbmVudEh0bWwkID0gY29tYmluZUxhdGVzdChcbiAgICB0aGlzLnZpZXdUeXBlJCxcbiAgICB0aGlzLmZhY2FkZS5jaGFydENvbmZpZyQsXG4gICAgdGhpcy5mYWNhZGUubWV0YWRhdGEkXG4gICkucGlwZShcbiAgICBtYXAoKFt2aWV3VHlwZSwgY29uZmlnLCBtZXRhZGF0YV0pID0+IHtcbiAgICAgIGlmICh2aWV3VHlwZSA9PT0gJ2NoYXJ0Jykge1xuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgY29uc3QgeyBhZ2dyZWdhdGlvbiwgeFByb3BlcnR5LCB5UHJvcGVydHksIGNoYXJ0VHlwZSB9ID0gY29uZmlnXG4gICAgICAgICAgcmV0dXJuIGA8c2NyaXB0IHNyYz1cImh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9naC9nZW9uZXR3b3JrL2dlb25ldHdvcmstdWlAd2MtZGlzdC0ke1xuICAgICAgICAgICAgR0VPTkVUV09SS19VSV9UQUdfTkFNRVxuICAgICAgICAgIH0vZ24td2MuanNcIj48L3NjcmlwdD5cbiAgPGduLWRhdGFzZXQtdmlldy1jaGFydFxuICAgICAgICAgIGFwaS11cmw9XCIke25ldyBVUkwoXG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5iYXNlUGF0aCxcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW5cbiAgICAgICAgICApLnRvU3RyaW5nKCl9XCJcbiAgICAgICAgICBkYXRhc2V0LWlkPVwiJHttZXRhZGF0YS51bmlxdWVJZGVudGlmaWVyfVwiXG4gICAgICAgICAgYWdncmVnYXRpb249XCIke2FnZ3JlZ2F0aW9ufVwiXG4gICAgICAgICAgeC1wcm9wZXJ0eT1cIiR7eFByb3BlcnR5fVwiXG4gICAgICAgICAgeS1wcm9wZXJ0eT1cIiR7eVByb3BlcnR5fVwiXG4gICAgICAgICAgY2hhcnQtdHlwZT1cIiR7Y2hhcnRUeXBlfVwiXG4gICAgICAgICAgcHJpbWFyeS1jb2xvcj1cIiMwZjQzOTVcIlxuICAgICAgICAgIHNlY29uZGFyeS1jb2xvcj1cIiM4YmM4MzJcIlxuICAgICAgICAgIG1haW4tY29sb3I9XCIjNTU1XCJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yPVwiI2ZkZmJmZlwiXG4gICAgICAgICAgbWFpbi1mb250PVwiJ0ludGVyJywgc2Fucy1zZXJpZlwiXG4gICAgICAgICAgdGl0bGUtZm9udD1cIidETSBTZXJpZiBEaXNwbGF5Jywgc2VyaWZcIlxuICA+PC9nbi1kYXRhc2V0LXZpZXctY2hhcnQ+YFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJ1xuICAgICAgfSBlbHNlIGlmICh2aWV3VHlwZSA9PT0gJ3RhYmxlJykge1xuICAgICAgICByZXR1cm4gYDxzY3JpcHQgc3JjPVwiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L2doL2dlb25ldHdvcmsvZ2VvbmV0d29yay11aUB3Yy1kaXN0LSR7XG4gICAgICAgICAgR0VPTkVUV09SS19VSV9UQUdfTkFNRVxuICAgICAgICB9L2duLXdjLmpzXCI+PC9zY3JpcHQ+XG4gIDxnbi1kYXRhc2V0LXZpZXctdGFibGVcbiAgICAgICAgICBhcGktdXJsPVwiJHtuZXcgVVJMKFxuICAgICAgICAgICAgdGhpcy5jb25maWcuYmFzZVBhdGgsXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG4gICAgICAgICAgKS50b1N0cmluZygpfVwiXG4gICAgICAgICAgZGF0YXNldC1pZD1cIiR7bWV0YWRhdGEudW5pcXVlSWRlbnRpZmllcn1cIlxuICAgICAgICAgIHByaW1hcnktY29sb3I9XCIjMGY0Mzk1XCJcbiAgICAgICAgICBzZWNvbmRhcnktY29sb3I9XCIjOGJjODMyXCJcbiAgICAgICAgICBtYWluLWNvbG9yPVwiIzU1NVwiXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcj1cIiNmZGZiZmZcIlxuICAgICAgICAgIG1haW4tZm9udD1cIidJbnRlcicsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgIHRpdGxlLWZvbnQ9XCInRE0gU2VyaWYgRGlzcGxheScsIHNlcmlmXCJcbiAgPjwvZ24tZGF0YXNldC12aWV3LXRhYmxlPmBcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBgPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvZ2gvZ2VvbmV0d29yay9nZW9uZXR3b3JrLXVpQHdjLWRpc3QtJHtcbiAgICAgICAgICBHRU9ORVRXT1JLX1VJX1RBR19OQU1FXG4gICAgICAgIH0vZ24td2MuanNcIj48L3NjcmlwdD5cbjxnbi1kYXRhc2V0LXZpZXctbWFwXG4gICAgICAgIGFwaS11cmw9XCIke25ldyBVUkwoXG4gICAgICAgICAgdGhpcy5jb25maWcuYmFzZVBhdGgsXG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpblxuICAgICAgICApLnRvU3RyaW5nKCl9XCJcbiAgICAgICAgZGF0YXNldC1pZD1cIiR7bWV0YWRhdGEudW5pcXVlSWRlbnRpZmllcn1cIlxuICAgICAgICBwcmltYXJ5LWNvbG9yPVwiIzBmNDM5NVwiXG4gICAgICAgIHNlY29uZGFyeS1jb2xvcj1cIiM4YmM4MzJcIlxuICAgICAgICBtYWluLWNvbG9yPVwiIzU1NVwiXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I9XCIjZmRmYmZmXCJcbiAgICAgICAgbWFpbi1mb250PVwiJ0ludGVyJywgc2Fucy1zZXJpZlwiXG4gICAgICAgIHRpdGxlLWZvbnQ9XCInRE0gU2VyaWYgRGlzcGxheScsIHNlcmlmXCJcbj48L2duLWRhdGFzZXQtdmlldy1tYXA+YFxuICAgICAgfVxuICAgIH0pXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KENvbmZpZ3VyYXRpb24pIHByaXZhdGUgY29uZmlnOiBDb25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgZmFjYWRlOiBNZFZpZXdGYWNhZGVcbiAgKSB7fVxufVxuIiwiPGduLXVpLWNvcHktdGV4dC1idXR0b25cbiAgW3RleHRdPVwid2ViQ29tcG9uZW50SHRtbCQgfCBhc3luY1wiXG4gIFtyb3dzXT1cIjNcIlxuICBbdG9vbHRpcFRleHRdPVwiJ3Rvb2x0aXAuaHRtbC5jb3B5JyB8IHRyYW5zbGF0ZVwiXG4+PC9nbi11aS1jb3B5LXRleHQtYnV0dG9uPlxuIl19
@@ -11,18 +11,20 @@ import { NgIconComponent, provideIcons } from '@ng-icons/core';
11
11
  import { matClose } from '@ng-icons/material-icons/baseline';
12
12
  import { CommonModule } from '@angular/common';
13
13
  import { ButtonComponent, DropdownSelectorComponent, } from '../../../../../../libs/ui/inputs/src';
14
- import { TranslateModule } from '@ngx-translate/core';
14
+ import { TranslateModule, TranslateService } from '@ngx-translate/core';
15
15
  import { ExternalViewerButtonComponent } from '../external-viewer-button/external-viewer-button.component';
16
16
  import { LoadingMaskComponent, PopupAlertComponent, } from '../../../../../../libs/ui/widgets/src';
17
17
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
18
+ import { FetchError } from '../../../../../../libs/util/data-fetcher/src';
18
19
  import * as i0 from "@angular/core";
19
20
  import * as i1 from "../state/mdview.facade";
20
21
  import * as i2 from "../../../../../../libs/feature/map/src";
21
22
  import * as i3 from "../../../../../../libs/feature/dataviz/src";
22
- import * as i4 from "@angular/common";
23
- import * as i5 from "@ngx-translate/core";
23
+ import * as i4 from "@ngx-translate/core";
24
+ import * as i5 from "@angular/common";
24
25
  marker('map.dropdown.placeholder');
25
26
  marker('wfs.feature.limit');
27
+ marker('dataset.error.restrictedAccess');
26
28
  export class MapViewComponent {
27
29
  set exceedsLimit(value) {
28
30
  this.excludeWfs$.next(value);
@@ -32,15 +34,13 @@ export class MapViewComponent {
32
34
  }
33
35
  onLegendStatusChange(status) {
34
36
  this.legendExists = status;
35
- if (!status) {
36
- this.showLegend = false;
37
- }
38
37
  }
39
- constructor(mdViewFacade, mapUtils, dataService, changeRef) {
38
+ constructor(mdViewFacade, mapUtils, dataService, changeRef, translateService) {
40
39
  this.mdViewFacade = mdViewFacade;
41
40
  this.mapUtils = mapUtils;
42
41
  this.dataService = dataService;
43
42
  this.changeRef = changeRef;
43
+ this.translateService = translateService;
44
44
  this.displaySource = true;
45
45
  this.excludeWfs$ = new BehaviorSubject(false);
46
46
  this.hidePreview = false;
@@ -76,9 +76,12 @@ export class MapViewComponent {
76
76
  this.hidePreview = false;
77
77
  this.loading = true;
78
78
  this.error = null;
79
+ if (link.accessRestricted) {
80
+ this.handleError('dataset.error.restrictedAccess');
81
+ return of([]);
82
+ }
79
83
  return this.getLayerFromLink(link).pipe(map((layer) => [layer]), catchError((e) => {
80
- this.error = e.message;
81
- console.warn(e.stack || e.message);
84
+ this.handleError(e);
82
85
  return of([]);
83
86
  }), finalize(() => (this.loading = false)));
84
87
  }));
@@ -115,6 +118,16 @@ export class MapViewComponent {
115
118
  }
116
119
  this.changeRef.detectChanges();
117
120
  }
121
+ onSourceLoadError(error) {
122
+ if (error.httpStatus === 403 || error.httpStatus === 401) {
123
+ this.error = this.translateService.instant(`dataset.error.forbidden`);
124
+ }
125
+ else {
126
+ this.error = this.translateService.instant(`dataset.error.http`, {
127
+ info: error.httpStatus,
128
+ });
129
+ }
130
+ }
118
131
  resetSelection() {
119
132
  if (this.selection) {
120
133
  // FIXME: restore styling of selected feature
@@ -154,8 +167,26 @@ export class MapViewComponent {
154
167
  selectLinkToDisplay(link) {
155
168
  this.selectedLinkIndex$.next(link);
156
169
  }
157
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MapViewComponent, deps: [{ token: i1.MdViewFacade }, { token: i2.MapUtilsService }, { token: i3.DataService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
158
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MapViewComponent, isStandalone: true, selector: "gn-ui-map-view", inputs: { exceedsLimit: "exceedsLimit", displaySource: "displaySource" }, viewQueries: [{ propertyName: "mapContainer", first: true, predicate: ["mapContainer"], descendants: true }], ngImport: i0, template: "<div class=\"w-full h-full flex flex-col p-1\">\n <div class=\"w-full flex justify-end\">\n <gn-ui-dropdown-selector\n [ngClass]=\"{ hidden: !displaySource }\"\n class=\"truncate p-1 -mx-1 mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [title]=\"'map.select.layer' | translate\"\n [choices]=\"dropdownChoices$ | async\"\n (selectValue)=\"selectLinkToDisplay($event)\"\n ></gn-ui-dropdown-selector>\n <gn-ui-external-viewer-button\n class=\"shrink-0 py-1 place-self-end\"\n [link]=\"selectedLink$ | async\"\n >\n </gn-ui-external-viewer-button>\n </div>\n <ng-container *ngIf=\"hidePreview; else mapView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #mapView>\n <div\n class=\"relative w-full h-full bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-map-container\n #mapContainer\n [context]=\"mapContext$ | async\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <div\n class=\"top-[1em] right-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [class.hidden]=\"!selection\"\n >\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"resetSelection()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"absolute right-[0.5em] ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n <gn-ui-feature-detail [feature]=\"selection\"></gn-ui-feature-detail>\n </div>\n\n <div\n class=\"top-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [ngClass]=\"{ 'right-[1em]': !selection, 'right-[16em]': selection }\"\n [hidden]=\"!showLegend || !legendExists\"\n >\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-primary font-bold\">Legend</div>\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"toggleLegend()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n </div>\n <gn-ui-map-legend\n [context]=\"mapContext$ | async\"\n (legendStatusChange)=\"onLegendStatusChange($event)\"\n ></gn-ui-map-legend>\n </div>\n\n <gn-ui-button\n *ngIf=\"!showLegend && legendExists && !selection\"\n type=\"outline\"\n (buttonClick)=\"toggleLegend()\"\n extraClass=\"absolute top-[1em] right-[1em] rounded p-1 text-xs bg-white\"\n >\n Legend\n </gn-ui-button>\n\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'map.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: MapContainerComponent, selector: "gn-ui-map-container", inputs: ["context"], outputs: ["featuresClick", "featuresHover", "mapClick"] }, { kind: "component", type: FeatureDetailComponent, selector: "gn-ui-feature-detail", inputs: ["feature"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ExternalViewerButtonComponent, selector: "gn-ui-external-viewer-button", inputs: ["link"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: MapLegendComponent, selector: "gn-ui-map-legend", inputs: ["context"], outputs: ["legendStatusChange"] }], viewProviders: [provideIcons({ matClose })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
170
+ handleError(error) {
171
+ if (error instanceof FetchError) {
172
+ this.error = this.translateService.instant(`dataset.error.${error.type}`, {
173
+ info: error.info,
174
+ });
175
+ console.warn(error.message);
176
+ }
177
+ else if (error instanceof Error) {
178
+ this.error = this.translateService.instant(error.message);
179
+ console.warn(error.stack || error);
180
+ }
181
+ else {
182
+ this.error = this.translateService.instant(error);
183
+ console.warn(error);
184
+ }
185
+ this.loading = false;
186
+ this.changeRef.detectChanges();
187
+ }
188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MapViewComponent, deps: [{ token: i1.MdViewFacade }, { token: i2.MapUtilsService }, { token: i3.DataService }, { token: i0.ChangeDetectorRef }, { token: i4.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
189
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MapViewComponent, isStandalone: true, selector: "gn-ui-map-view", inputs: { exceedsLimit: "exceedsLimit", displaySource: "displaySource" }, viewQueries: [{ propertyName: "mapContainer", first: true, predicate: ["mapContainer"], descendants: true }], ngImport: i0, template: "<div class=\"w-full h-full flex flex-col p-1\">\n <div class=\"w-full flex justify-end\">\n <gn-ui-dropdown-selector\n [ngClass]=\"{ hidden: !displaySource }\"\n class=\"truncate p-1 -mx-1 mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [title]=\"'map.select.layer' | translate\"\n [choices]=\"dropdownChoices$ | async\"\n (selectValue)=\"selectLinkToDisplay($event)\"\n ></gn-ui-dropdown-selector>\n <gn-ui-external-viewer-button\n class=\"shrink-0 py-1 place-self-end\"\n [link]=\"selectedLink$ | async\"\n >\n </gn-ui-external-viewer-button>\n </div>\n <ng-container *ngIf=\"hidePreview; else mapView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #mapView>\n <div\n class=\"relative w-full h-full bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-map-container\n #mapContainer\n [context]=\"mapContext$ | async\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n (sourceLoadError)=\"onSourceLoadError($event)\"\n ></gn-ui-map-container>\n <div\n class=\"top-[1em] right-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [class.hidden]=\"!selection\"\n >\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"resetSelection()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"absolute right-[0.5em] ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n <gn-ui-feature-detail [feature]=\"selection\"></gn-ui-feature-detail>\n </div>\n\n <div\n class=\"top-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [ngClass]=\"{ 'right-[1em]': !selection, 'right-[16em]': selection }\"\n [hidden]=\"!showLegend || !legendExists\"\n >\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-primary font-bold\">Legend</div>\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"toggleLegend()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n </div>\n <gn-ui-map-legend\n [context]=\"mapContext$ | async\"\n (legendStatusChange)=\"onLegendStatusChange($event)\"\n ></gn-ui-map-legend>\n </div>\n\n <gn-ui-button\n *ngIf=\"!showLegend && legendExists && !selection\"\n type=\"outline\"\n (buttonClick)=\"toggleLegend()\"\n extraClass=\"absolute top-[1em] right-[1em] rounded p-1 text-xs bg-white\"\n >\n Legend\n </gn-ui-button>\n\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'map.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "component", type: DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: MapContainerComponent, selector: "gn-ui-map-container", inputs: ["context"], outputs: ["featuresClick", "featuresHover", "mapClick", "sourceLoadError"] }, { kind: "component", type: FeatureDetailComponent, selector: "gn-ui-feature-detail", inputs: ["feature"] }, { kind: "component", type: PopupAlertComponent, selector: "gn-ui-popup-alert", inputs: ["icon", "type", "position"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: LoadingMaskComponent, selector: "gn-ui-loading-mask", inputs: ["message"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ExternalViewerButtonComponent, selector: "gn-ui-external-viewer-button", inputs: ["link"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: MapLegendComponent, selector: "gn-ui-map-legend", inputs: ["context"], outputs: ["legendStatusChange"] }], viewProviders: [provideIcons({ matClose })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
159
190
  }
160
191
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MapViewComponent, decorators: [{
161
192
  type: Component,
@@ -171,8 +202,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
171
202
  ExternalViewerButtonComponent,
172
203
  ButtonComponent,
173
204
  MapLegendComponent,
174
- ], viewProviders: [provideIcons({ matClose })], template: "<div class=\"w-full h-full flex flex-col p-1\">\n <div class=\"w-full flex justify-end\">\n <gn-ui-dropdown-selector\n [ngClass]=\"{ hidden: !displaySource }\"\n class=\"truncate p-1 -mx-1 mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [title]=\"'map.select.layer' | translate\"\n [choices]=\"dropdownChoices$ | async\"\n (selectValue)=\"selectLinkToDisplay($event)\"\n ></gn-ui-dropdown-selector>\n <gn-ui-external-viewer-button\n class=\"shrink-0 py-1 place-self-end\"\n [link]=\"selectedLink$ | async\"\n >\n </gn-ui-external-viewer-button>\n </div>\n <ng-container *ngIf=\"hidePreview; else mapView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #mapView>\n <div\n class=\"relative w-full h-full bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-map-container\n #mapContainer\n [context]=\"mapContext$ | async\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n ></gn-ui-map-container>\n <div\n class=\"top-[1em] right-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [class.hidden]=\"!selection\"\n >\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"resetSelection()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"absolute right-[0.5em] ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n <gn-ui-feature-detail [feature]=\"selection\"></gn-ui-feature-detail>\n </div>\n\n <div\n class=\"top-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [ngClass]=\"{ 'right-[1em]': !selection, 'right-[16em]': selection }\"\n [hidden]=\"!showLegend || !legendExists\"\n >\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-primary font-bold\">Legend</div>\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"toggleLegend()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n </div>\n <gn-ui-map-legend\n [context]=\"mapContext$ | async\"\n (legendStatusChange)=\"onLegendStatusChange($event)\"\n ></gn-ui-map-legend>\n </div>\n\n <gn-ui-button\n *ngIf=\"!showLegend && legendExists && !selection\"\n type=\"outline\"\n (buttonClick)=\"toggleLegend()\"\n extraClass=\"absolute top-[1em] right-[1em] rounded p-1 text-xs bg-white\"\n >\n Legend\n </gn-ui-button>\n\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'map.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n </ng-template>\n</div>\n" }]
175
- }], ctorParameters: () => [{ type: i1.MdViewFacade }, { type: i2.MapUtilsService }, { type: i3.DataService }, { type: i0.ChangeDetectorRef }], propDecorators: { exceedsLimit: [{
205
+ ], viewProviders: [provideIcons({ matClose })], template: "<div class=\"w-full h-full flex flex-col p-1\">\n <div class=\"w-full flex justify-end\">\n <gn-ui-dropdown-selector\n [ngClass]=\"{ hidden: !displaySource }\"\n class=\"truncate p-1 -mx-1 mb-1\"\n extraBtnClass=\"!text-primary font-sans font-medium\"\n [title]=\"'map.select.layer' | translate\"\n [choices]=\"dropdownChoices$ | async\"\n (selectValue)=\"selectLinkToDisplay($event)\"\n ></gn-ui-dropdown-selector>\n <gn-ui-external-viewer-button\n class=\"shrink-0 py-1 place-self-end\"\n [link]=\"selectedLink$ | async\"\n >\n </gn-ui-external-viewer-button>\n </div>\n <ng-container *ngIf=\"hidePreview; else mapView\">\n <gn-ui-popup-alert\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"block h-12 p-1\"\n >\n <span translate>record.feature.limit</span>\n </gn-ui-popup-alert>\n </ng-container>\n <ng-template #mapView>\n <div\n class=\"relative w-full h-full bg-white border border-gray-300 rounded-lg overflow-hidden\"\n >\n <gn-ui-map-container\n #mapContainer\n [context]=\"mapContext$ | async\"\n (featuresClick)=\"onMapFeatureSelect($event)\"\n (sourceLoadError)=\"onSourceLoadError($event)\"\n ></gn-ui-map-container>\n <div\n class=\"top-[1em] right-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [class.hidden]=\"!selection\"\n >\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"resetSelection()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"absolute right-[0.5em] ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n <gn-ui-feature-detail [feature]=\"selection\"></gn-ui-feature-detail>\n </div>\n\n <div\n class=\"top-[1em] p-3 bg-white absolute overflow-y-auto overflow-x-hidden max-h-72 w-56\"\n [ngClass]=\"{ 'right-[1em]': !selection, 'right-[16em]': selection }\"\n [hidden]=\"!showLegend || !legendExists\"\n >\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-primary font-bold\">Legend</div>\n <gn-ui-button\n type=\"light\"\n (buttonClick)=\"toggleLegend()\"\n style=\"\n --gn-ui-button-padding: 0px;\n --gn-ui-button-width: 24px;\n --gn-ui-button-height: 24px;\n \"\n extraClass=\"ml-[8px] mr-[10px]\"\n >\n <ng-icon name=\"matClose\" class=\"align-middle text-sm\"></ng-icon>\n </gn-ui-button>\n </div>\n <gn-ui-map-legend\n [context]=\"mapContext$ | async\"\n (legendStatusChange)=\"onLegendStatusChange($event)\"\n ></gn-ui-map-legend>\n </div>\n\n <gn-ui-button\n *ngIf=\"!showLegend && legendExists && !selection\"\n type=\"outline\"\n (buttonClick)=\"toggleLegend()\"\n extraClass=\"absolute top-[1em] right-[1em] rounded p-1 text-xs bg-white\"\n >\n Legend\n </gn-ui-button>\n\n <gn-ui-loading-mask\n *ngIf=\"loading\"\n class=\"absolute inset-0\"\n [message]=\"'map.loading.data' | translate\"\n ></gn-ui-loading-mask>\n <gn-ui-popup-alert\n *ngIf=\"error\"\n type=\"warning\"\n icon=\"matErrorOutlineOutline\"\n class=\"absolute m-2 inset-0\"\n >\n <span translate>{{ error }}</span>\n </gn-ui-popup-alert>\n </div>\n </ng-template>\n</div>\n" }]
206
+ }], ctorParameters: () => [{ type: i1.MdViewFacade }, { type: i2.MapUtilsService }, { type: i3.DataService }, { type: i0.ChangeDetectorRef }, { type: i4.TranslateService }], propDecorators: { exceedsLimit: [{
176
207
  type: Input
177
208
  }], displaySource: [{
178
209
  type: Input
@@ -180,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
180
211
  type: ViewChild,
181
212
  args: ['mapContainer']
182
213
  }] } });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL21hcC12aWV3L21hcC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9tYXAtdmlldy9tYXAtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3JFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLElBQUksRUFFSixFQUFFLEVBQ0YsU0FBUyxFQUNULFVBQVUsRUFDVixjQUFjLEdBQ2YsTUFBTSxNQUFNLENBQUE7QUFDYixPQUFPLEVBQ0wsVUFBVSxFQUNWLG9CQUFvQixFQUNwQixRQUFRLEVBQ1IsR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUV4RSxPQUFPLEVBQ0wsbUJBQW1CLEdBR3BCLE1BQU0sc0JBQXNCLENBQUE7QUFDN0IsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGtCQUFrQixHQUNuQixNQUFNLG1DQUFtQyxDQUFBO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1B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b0JBQW9CLG9GQUNwQixlQUFlLDZHQUNmLDZCQUE2QiwyRkFDN0IsZUFBZSwrSEFDZixrQkFBa0Isd0dBRUwsQ0FBQyxZQUFZLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDOzs0RkFFaEMsZ0JBQWdCO2tCQXJCNUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix5QkFBeUI7d0JBQ3pCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLDZCQUE2Qjt3QkFDN0IsZUFBZTt3QkFDZixrQkFBa0I7cUJBQ25CLGlCQUNjLENBQUMsWUFBWSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQzt5S0FHOUIsWUFBWTtzQkFBeEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNxQixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1hcFV0aWxzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjJ1xuaW1wb3J0IHsgZ2V0TGlua0xhYmVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIGZyb20sXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBzdGFydFdpdGgsXG4gIHRocm93RXJyb3IsXG4gIHdpdGhMYXRlc3RGcm9tLFxufSBmcm9tICdyeGpzJ1xuaW1wb3J0IHtcbiAgY2F0Y2hFcnJvcixcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbmFsaXplLFxuICBtYXAsXG4gIHNoYXJlUmVwbGF5LFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNZFZpZXdGYWNhZGUgfSBmcm9tICcuLi9zdGF0ZS9tZHZpZXcuZmFjYWRlJ1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMnXG5pbXBvcnQgeyBEYXRhc2V0T25saW5lUmVzb3VyY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBjcmVhdGVWaWV3RnJvbUxheWVyLFxuICBNYXBDb250ZXh0LFxuICBNYXBDb250ZXh0TGF5ZXIsXG59IGZyb20gJ0BnZW9zcGF0aWFsLXNkay9jb3JlJ1xuaW1wb3J0IHtcbiAgRmVhdHVyZURldGFpbENvbXBvbmVudCxcbiAgTWFwQ29udGFpbmVyQ29tcG9uZW50LFxuICBwcmlvcml0aXplUGFnZVNjcm9sbCxcbiAgTWFwTGVnZW5kQ29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL21hcC9zcmMnXG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnZ2VvanNvbidcbmltcG9ydCB7IE5nSWNvbkNvbXBvbmVudCwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBtYXRDbG9zZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEV4dGVybmFsVmlld2VyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIExvYWRpbmdNYXNrQ29tcG9uZW50LFxuICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuXG5tYXJrZXIoJ21hcC5kcm9wZG93bi5wbGFjZWhvbGRlcicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJlLmxpbWl0JylcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbWFwLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWFwLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXAtdmlldy5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gICAgTWFwQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEZlYXR1cmVEZXRhaWxDb21wb25lbnQsXG4gICAgUG9wdXBBbGVydENvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTG9hZGluZ01hc2tDb21wb25lbnQsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICAgIEV4dGVybmFsVmlld2VyQnV0dG9uQ29tcG9uZW50LFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBNYXBMZWdlbmRDb21wb25lbnQsXG4gIF0sXG4gIHZpZXdQcm92aWRlcnM6IFtwcm92aWRlSWNvbnMoeyBtYXRDbG9zZSB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcFZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgc2V0IGV4Y2VlZHNMaW1pdCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZXhjbHVkZVdmcyQubmV4dCh2YWx1ZSlcbiAgfVxuICBASW5wdXQoKSBkaXNwbGF5U291cmNlID0gdHJ1ZVxuICBAVmlld0NoaWxkKCdtYXBDb250YWluZXInKSBtYXBDb250YWluZXI6IE1hcENvbnRhaW5lckNvbXBvbmVudFxuXG4gIGV4Y2x1ZGVXZnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSlcbiAgaGlkZVByZXZpZXcgPSBmYWxzZVxuICBzZWxlY3Rpb246IEZlYXR1cmVcbiAgc2hvd0xlZ2VuZCA9IHRydWVcbiAgbGVnZW5kRXhpc3RzID0gZmFsc2VcblxuICB0b2dnbGVMZWdlbmQoKSB7XG4gICAgdGhpcy5zaG93TGVnZW5kID0gIXRoaXMuc2hvd0xlZ2VuZFxuICB9XG5cbiAgb25MZWdlbmRTdGF0dXNDaGFuZ2Uoc3RhdHVzOiBib29sZWFuKSB7XG4gICAgdGhpcy5sZWdlbmRFeGlzdHMgPSBzdGF0dXNcbiAgICBpZiAoIXN0YXR1cykge1xuICAgICAgdGhpcy5zaG93TGVnZW5kID0gZmFsc2VcbiAgICB9XG4gIH1cblxuICBjb21wYXRpYmxlTWFwTGlua3MkID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5tZFZpZXdGYWNhZGUubWFwQXBpTGlua3MkLFxuICAgIHRoaXMubWRWaWV3RmFjYWRlLmdlb0RhdGFMaW5rc1dpdGhHZW9tZXRyeSQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbbWFwQXBpTGlua3MsIGdlb0RhdGFMaW5rc1dpdGhHZW9tZXRyeV0pID0+IHtcbiAgICAgIHJldHVybiBbLi4ubWFwQXBpTGlua3MsIC4uLmdlb0RhdGFMaW5rc1dpdGhHZW9tZXRyeV1cbiAgICB9KVxuICApXG5cbiAgZHJvcGRvd25DaG9pY2VzJCA9IHRoaXMuY29tcGF0aWJsZU1hcExpbmtzJC5waXBlKFxuICAgIG1hcCgobGlua3MpID0+XG4gICAgICBsaW5rcy5sZW5ndGhcbiAgICAgICAgPyBsaW5rcy5tYXAoKGxpbmssIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgbGFiZWw6IGdldExpbmtMYWJlbChsaW5rKSxcbiAgICAgICAgICAgIHZhbHVlOiBpbmRleCxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiBbeyBsYWJlbDogJ21hcC5kcm9wZG93bi5wbGFjZWhvbGRlcicsIHZhbHVlOiAwIH1dXG4gICAgKVxuICApXG4gIHNlbGVjdGVkTGlua0luZGV4JCA9IG5ldyBCZWhhdmlvclN1YmplY3QoMClcblxuICBsb2FkaW5nID0gZmFsc2VcbiAgZXJyb3IgPSBudWxsXG5cbiAgc2VsZWN0ZWRMaW5rJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuY29tcGF0aWJsZU1hcExpbmtzJCxcbiAgICB0aGlzLnNlbGVjdGVkTGlua0luZGV4JC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLFxuICBdKS5waXBlKG1hcCgoW2xpbmtzLCBpbmRleF0pID0+IGxpbmtzW2luZGV4XSkpXG5cbiAgY3VycmVudExheWVycyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnNlbGVjdGVkTGluayQsIHRoaXMuZXhjbHVkZVdmcyRdKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoW2xpbmssIGV4Y2x1ZGVXZnNdKSA9PiB7XG4gICAgICBpZiAoIWxpbmspIHtcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfVxuICAgICAgaWYgKGV4Y2x1ZGVXZnMgJiYgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3ZnMnKSB7XG4gICAgICAgIHRoaXMuaGlkZVByZXZpZXcgPSB0cnVlXG4gICAgICAgIHJldHVybiBvZihbXSlcbiAgICAgIH1cbiAgICAgIHRoaXMuaGlkZVByZXZpZXcgPSBmYWxzZVxuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZVxuICAgICAgdGhpcy5lcnJvciA9IG51bGxcbiAgICAgIHJldHVybiB0aGlzLmdldExheWVyRnJvbUxpbmsobGluaykucGlwZShcbiAgICAgICAgbWFwKChsYXllcikgPT4gW2xheWVyXSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgICB0aGlzLmVycm9yID0gZS5tZXNzYWdlXG4gICAgICAgICAgY29uc29sZS53YXJuKGUuc3RhY2sgfHwgZS5tZXNzYWdlKVxuICAgICAgICAgIHJldHVybiBvZihbXSlcbiAgICAgICAgfSksXG4gICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpXG4gICAgICApXG4gICAgfSlcbiAgKVxuXG4gIG1hcENvbnRleHQkOiBPYnNlcnZhYmxlPE1hcENvbnRleHQ+ID0gdGhpcy5jdXJyZW50TGF5ZXJzJC5waXBlKFxuICAgIHN3aXRjaE1hcCgobGF5ZXJzKSA9PlxuICAgICAgZnJvbShjcmVhdGVWaWV3RnJvbUxheWVyKGxheWVyc1swXSkpLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YobnVsbCkpLCAvLyBjb3VsZCBub3Qgem9vbSBvbiB0aGUgbGF5ZXI6IHVzZSB0aGUgcmVjb3JkIGV4dGVudFxuICAgICAgICBtYXAoKHZpZXcpID0+ICh7XG4gICAgICAgICAgbGF5ZXJzLFxuICAgICAgICAgIHZpZXcsXG4gICAgICAgIH0pKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJlc2V0U2VsZWN0aW9uKClcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApLFxuICAgIHN0YXJ0V2l0aCh7XG4gICAgICBsYXllcnM6IFtdLFxuICAgICAgdmlldzogbnVsbCxcbiAgICB9KSxcbiAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLm1kVmlld0ZhY2FkZS5tZXRhZGF0YSQpLFxuICAgIG1hcCgoW2NvbnRleHQsIG1ldGFkYXRhXSkgPT4ge1xuICAgICAgaWYgKGNvbnRleHQudmlldykgcmV0dXJuIGNvbnRleHRcbiAgICAgIGNvbnN0IGV4dGVudCA9IHRoaXMubWFwVXRpbHMuZ2V0UmVjb3JkRXh0ZW50KG1ldGFkYXRhKVxuICAgICAgY29uc3QgdmlldyA9IGV4dGVudCA/IHsgZXh0ZW50IH0gOiBudWxsXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5jb250ZXh0LFxuICAgICAgICB2aWV3LFxuICAgICAgfVxuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gIClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1kVmlld0ZhY2FkZTogTWRWaWV3RmFjYWRlLFxuICAgIHByaXZhdGUgbWFwVXRpbHM6IE1hcFV0aWxzU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZVJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIGFzeW5jIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBtYXAgPSBhd2FpdCB0aGlzLm1hcENvbnRhaW5lci5vcGVubGF5ZXJzTWFwXG4gICAgcHJpb3JpdGl6ZVBhZ2VTY3JvbGwobWFwLmdldEludGVyYWN0aW9ucygpKVxuICB9XG5cbiAgb25NYXBGZWF0dXJlU2VsZWN0KGZlYXR1cmVzOiBGZWF0dXJlW10pOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0U2VsZWN0aW9uKClcbiAgICB0aGlzLnNlbGVjdGlvbiA9IGZlYXR1cmVzPy5sZW5ndGggPiAwICYmIGZlYXR1cmVzWzBdXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICAvLyBGSVhNRTogcmVzdG9yZSBzdHlsaW5nIG9mIHNlbGVjdGVkIGZlYXR1cmVcbiAgICAgIC8vIHRoaXMuc2VsZWN0aW9uLnNldFN0eWxlKHRoaXMuc2VsZWN0aW9uU3R5bGUpXG4gICAgfVxuICAgIHRoaXMuY2hhbmdlUmVmLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgcmVzZXRTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICAvLyBGSVhNRTogcmVzdG9yZSBzdHlsaW5nIG9mIHNlbGVjdGVkIGZlYXR1cmVcbiAgICAgIC8vIHRoaXMuc2VsZWN0aW9uLnNldFN0eWxlKG51bGwpXG4gICAgfVxuICAgIHRoaXMuc2VsZWN0aW9uID0gbnVsbFxuICB9XG5cbiAgZ2V0TGF5ZXJGcm9tTGluayhsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPE1hcENvbnRleHRMYXllcj4ge1xuICAgIGlmIChsaW5rLnR5cGUgPT09ICdzZXJ2aWNlJyAmJiBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtcycpIHtcbiAgICAgIHJldHVybiBvZih7XG4gICAgICAgIHVybDogbGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgICAgdHlwZTogJ3dtcycsXG4gICAgICAgIG5hbWU6IGxpbmsubmFtZSxcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtdHMnXG4gICAgKSB7XG4gICAgICByZXR1cm4gb2Yoe1xuICAgICAgICB1cmw6IGxpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICAgIHR5cGU6ICd3bXRzJyxcbiAgICAgICAgbmFtZTogbGluay5uYW1lLFxuICAgICAgfSlcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgKGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICAgIChsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcycgfHxcbiAgICAgICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ2VzcmlSZXN0JyB8fFxuICAgICAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnKSkgfHxcbiAgICAgIGxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJ1xuICAgICkge1xuICAgICAgY29uc3QgY2FjaGVBY3RpdmUgPSB0cnVlIC8vIFRPRE8gaW1wbGVtZW50IHdoZXRoZXIgc2hvdWxkIGJlIHRydWUgb3IgZmFsc2VcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLnJlYWRBc0dlb0pzb24obGluaywgY2FjaGVBY3RpdmUpLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YSkgPT4gKHtcbiAgICAgICAgICB0eXBlOiAnZ2VvanNvbicsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdwcm90b2NvbCBub3Qgc3VwcG9ydGVkJylcbiAgfVxuXG4gIHNlbGVjdExpbmtUb0Rpc3BsYXkobGluazogbnVtYmVyKSB7XG4gICAgdGhpcy5zZWxlY3RlZExpbmtJbmRleCQubmV4dChsaW5rKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidy1mdWxsIGgtZnVsbCBmbGV4IGZsZXgtY29sIHAtMVwiPlxuICA8ZGl2IGNsYXNzPVwidy1mdWxsIGZsZXgganVzdGlmeS1lbmRcIj5cbiAgICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAgIFtuZ0NsYXNzXT1cInsgaGlkZGVuOiAhZGlzcGxheVNvdXJjZSB9XCJcbiAgICAgIGNsYXNzPVwidHJ1bmNhdGUgcC0xIC1teC0xIG1iLTFcIlxuICAgICAgZXh0cmFCdG5DbGFzcz1cIiF0ZXh0LXByaW1hcnkgZm9udC1zYW5zIGZvbnQtbWVkaXVtXCJcbiAgICAgIFt0aXRsZV09XCInbWFwLnNlbGVjdC5sYXllcicgfCB0cmFuc2xhdGVcIlxuICAgICAgW2Nob2ljZXNdPVwiZHJvcGRvd25DaG9pY2VzJCB8IGFzeW5jXCJcbiAgICAgIChzZWxlY3RWYWx1ZSk9XCJzZWxlY3RMaW5rVG9EaXNwbGF5KCRldmVudClcIlxuICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgIDxnbi11aS1leHRlcm5hbC12aWV3ZXItYnV0dG9uXG4gICAgICBjbGFzcz1cInNocmluay0wIHB5LTEgcGxhY2Utc2VsZi1lbmRcIlxuICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICA+XG4gICAgPC9nbi11aS1leHRlcm5hbC12aWV3ZXItYnV0dG9uPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpZGVQcmV2aWV3OyBlbHNlIG1hcFZpZXdcIj5cbiAgICA8Z24tdWktcG9wdXAtYWxlcnRcbiAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgIGljb249XCJtYXRFcnJvck91dGxpbmVPdXRsaW5lXCJcbiAgICAgIGNsYXNzPVwiYmxvY2sgaC0xMiBwLTFcIlxuICAgID5cbiAgICAgIDxzcGFuIHRyYW5zbGF0ZT5yZWNvcmQuZmVhdHVyZS5saW1pdDwvc3Bhbj5cbiAgICA8L2duLXVpLXBvcHVwLWFsZXJ0PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNtYXBWaWV3PlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwicmVsYXRpdmUgdy1mdWxsIGgtZnVsbCBiZy13aGl0ZSBib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQtbGcgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgICA+XG4gICAgICA8Z24tdWktbWFwLWNvbnRhaW5lclxuICAgICAgICAjbWFwQ29udGFpbmVyXG4gICAgICAgIFtjb250ZXh0XT1cIm1hcENvbnRleHQkIHwgYXN5bmNcIlxuICAgICAgICAoZmVhdHVyZXNDbGljayk9XCJvbk1hcEZlYXR1cmVTZWxlY3QoJGV2ZW50KVwiXG4gICAgICA+PC9nbi11aS1tYXAtY29udGFpbmVyPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInRvcC1bMWVtXSByaWdodC1bMWVtXSBwLTMgYmctd2hpdGUgYWJzb2x1dGUgb3ZlcmZsb3cteS1hdXRvIG92ZXJmbG93LXgtaGlkZGVuIG1heC1oLTcyIHctNTZcIlxuICAgICAgICBbY2xhc3MuaGlkZGVuXT1cIiFzZWxlY3Rpb25cIlxuICAgICAgPlxuICAgICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICAgdHlwZT1cImxpZ2h0XCJcbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwicmVzZXRTZWxlY3Rpb24oKVwiXG4gICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgIC0tZ24tdWktYnV0dG9uLXBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIC0tZ24tdWktYnV0dG9uLXdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgLS1nbi11aS1idXR0b24taGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIFwiXG4gICAgICAgICAgZXh0cmFDbGFzcz1cImFic29sdXRlIHJpZ2h0LVswLjVlbV0gbWwtWzhweF0gbXItWzEwcHhdXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1pY29uIG5hbWU9XCJtYXRDbG9zZVwiIGNsYXNzPVwiYWxpZ24tbWlkZGxlIHRleHQtc21cIj48L25nLWljb24+XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgICA8Z24tdWktZmVhdHVyZS1kZXRhaWwgW2ZlYXR1cmVdPVwic2VsZWN0aW9uXCI+PC9nbi11aS1mZWF0dXJlLWRldGFpbD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidG9wLVsxZW1dIHAtMyBiZy13aGl0ZSBhYnNvbHV0ZSBvdmVyZmxvdy15LWF1dG8gb3ZlcmZsb3cteC1oaWRkZW4gbWF4LWgtNzIgdy01NlwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ3JpZ2h0LVsxZW1dJzogIXNlbGVjdGlvbiwgJ3JpZ2h0LVsxNmVtXSc6IHNlbGVjdGlvbiB9XCJcbiAgICAgICAgW2hpZGRlbl09XCIhc2hvd0xlZ2VuZCB8fCAhbGVnZW5kRXhpc3RzXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlciBtYi0yXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtcHJpbWFyeSBmb250LWJvbGRcIj5MZWdlbmQ8L2Rpdj5cbiAgICAgICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwibGlnaHRcIlxuICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cInRvZ2dsZUxlZ2VuZCgpXCJcbiAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgIC0tZ24tdWktYnV0dG9uLXBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgLS1nbi11aS1idXR0b24td2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgIC0tZ24tdWktYnV0dG9uLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBleHRyYUNsYXNzPVwibWwtWzhweF0gbXItWzEwcHhdXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bmctaWNvbiBuYW1lPVwibWF0Q2xvc2VcIiBjbGFzcz1cImFsaWduLW1pZGRsZSB0ZXh0LXNtXCI+PC9uZy1pY29uPlxuICAgICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGduLXVpLW1hcC1sZWdlbmRcbiAgICAgICAgICBbY29udGV4dF09XCJtYXBDb250ZXh0JCB8IGFzeW5jXCJcbiAgICAgICAgICAobGVnZW5kU3RhdHVzQ2hhbmdlKT1cIm9uTGVnZW5kU3RhdHVzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICA+PC9nbi11aS1tYXAtbGVnZW5kPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgKm5nSWY9XCIhc2hvd0xlZ2VuZCAmJiBsZWdlbmRFeGlzdHMgJiYgIXNlbGVjdGlvblwiXG4gICAgICAgIHR5cGU9XCJvdXRsaW5lXCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrKT1cInRvZ2dsZUxlZ2VuZCgpXCJcbiAgICAgICAgZXh0cmFDbGFzcz1cImFic29sdXRlIHRvcC1bMWVtXSByaWdodC1bMWVtXSByb3VuZGVkIHAtMSB0ZXh0LXhzIGJnLXdoaXRlXCJcbiAgICAgID5cbiAgICAgICAgTGVnZW5kXG4gICAgICA8L2duLXVpLWJ1dHRvbj5cblxuICAgICAgPGduLXVpLWxvYWRpbmctbWFza1xuICAgICAgICAqbmdJZj1cImxvYWRpbmdcIlxuICAgICAgICBjbGFzcz1cImFic29sdXRlIGluc2V0LTBcIlxuICAgICAgICBbbWVzc2FnZV09XCInbWFwLmxvYWRpbmcuZGF0YScgfCB0cmFuc2xhdGVcIlxuICAgICAgPjwvZ24tdWktbG9hZGluZy1tYXNrPlxuICAgICAgPGduLXVpLXBvcHVwLWFsZXJ0XG4gICAgICAgICpuZ0lmPVwiZXJyb3JcIlxuICAgICAgICB0eXBlPVwid2FybmluZ1wiXG4gICAgICAgIGljb249XCJtYXRFcnJvck91dGxpbmVPdXRsaW5lXCJcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBtLTIgaW5zZXQtMFwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIHRyYW5zbGF0ZT57eyBlcnJvciB9fTwvc3Bhbj5cbiAgICAgIDwvZ24tdWktcG9wdXAtYWxlcnQ+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL21hcC12aWV3L21hcC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9tYXAtdmlldy9tYXAtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3JFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLElBQUksRUFFSixFQUFFLEVBQ0YsU0FBUyxFQUNULFVBQVUsRUFDVixjQUFjLEdBQ2YsTUFBTSxNQUFNLENBQUE7QUFDYixPQUFPLEVBQ0wsVUFBVSxFQUNWLG9CQUFvQixFQUNwQixRQUFRLEVBQ1IsR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUV4RSxPQUFPLEVBQ0wsbUJBQW1CLEdBSXBCLE1BQU0sc0JBQXNCLENBQUE7QUFDN0IsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGtCQUFrQixHQUNuQixNQUFNLG1DQUFtQyxDQUFBO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1B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SSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUNoQyxDQUFDOytHQTVNVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixrUUN0RjdCLDJwSEF5R0EseUREakNJLFlBQVksc1JBQ1oseUJBQXlCLHFOQUN6QixxQkFBcUIsaUtBQ3JCLHNCQUFzQixzRkFDdEIsbUJBQW1CLG1HQUNuQixlQUFlLG1PQUNmLG9CQUFvQixvRkFDcEIsZUFBZSw2R0FDZiw2QkFBNkIsMkZBQzdCLGVBQWUsK0hBQ2Ysa0JBQWtCLHdHQUVMLENBQUMsWUFBWSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQzs7NEZBRWhDLGdCQUFnQjtrQkFyQjVCLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1oseUJBQXlCO3dCQUN6QixxQkFBcUI7d0JBQ3JCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZiw2QkFBNkI7d0JBQzdCLGVBQWU7d0JBQ2Ysa0JBQWtCO3FCQUNuQixpQkFDYyxDQUFDLFlBQVksQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7d01BRzlCLFlBQVk7c0JBQXhCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFDcUIsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBNYXBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbWFwL3NyYydcbmltcG9ydCB7IGdldExpbmtMYWJlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHtcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBjb21iaW5lTGF0ZXN0LFxuICBmcm9tLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgc3RhcnRXaXRoLFxuICB0aHJvd0Vycm9yLFxuICB3aXRoTGF0ZXN0RnJvbSxcbn0gZnJvbSAncnhqcydcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBmaW5hbGl6ZSxcbiAgbWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgTWRWaWV3RmFjYWRlIH0gZnJvbSAnLi4vc3RhdGUvbWR2aWV3LmZhY2FkZSdcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgRGF0YXNldE9ubGluZVJlc291cmNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgY3JlYXRlVmlld0Zyb21MYXllcixcbiAgTWFwQ29udGV4dCxcbiAgTWFwQ29udGV4dExheWVyLFxuICBTb3VyY2VMb2FkRXJyb3JFdmVudCxcbn0gZnJvbSAnQGdlb3NwYXRpYWwtc2RrL2NvcmUnXG5pbXBvcnQge1xuICBGZWF0dXJlRGV0YWlsQ29tcG9uZW50LFxuICBNYXBDb250YWluZXJDb21wb25lbnQsXG4gIHByaW9yaXRpemVQYWdlU2Nyb2xsLFxuICBNYXBMZWdlbmRDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgTmdJY29uQ29tcG9uZW50LCBwcm92aWRlSWNvbnMgfSBmcm9tICdAbmctaWNvbnMvY29yZSdcbmltcG9ydCB7IG1hdENsb3NlIH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHtcbiAgQnV0dG9uQ29tcG9uZW50LFxuICBEcm9wZG93blNlbGVjdG9yQ29tcG9uZW50LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRXh0ZXJuYWxWaWV3ZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50J1xuaW1wb3J0IHtcbiAgTG9hZGluZ01hc2tDb21wb25lbnQsXG4gIFBvcHVwQWxlcnRDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQgeyBGZXRjaEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2RhdGEtZmV0Y2hlci9zcmMnXG5cbm1hcmtlcignbWFwLmRyb3Bkb3duLnBsYWNlaG9sZGVyJylcbm1hcmtlcignd2ZzLmZlYXR1cmUubGltaXQnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLnJlc3RyaWN0ZWRBY2Nlc3MnKVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1tYXAtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXAtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcC12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCxcbiAgICBNYXBDb250YWluZXJDb21wb25lbnQsXG4gICAgRmVhdHVyZURldGFpbENvbXBvbmVudCxcbiAgICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBMb2FkaW5nTWFza0NvbXBvbmVudCxcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gICAgRXh0ZXJuYWxWaWV3ZXJCdXR0b25Db21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE1hcExlZ2VuZENvbXBvbmVudCxcbiAgXSxcbiAgdmlld1Byb3ZpZGVyczogW3Byb3ZpZGVJY29ucyh7IG1hdENsb3NlIH0pXSxcbn0pXG5leHBvcnQgY2xhc3MgTWFwVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBzZXQgZXhjZWVkc0xpbWl0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5leGNsdWRlV2ZzJC5uZXh0KHZhbHVlKVxuICB9XG4gIEBJbnB1dCgpIGRpc3BsYXlTb3VyY2UgPSB0cnVlXG4gIEBWaWV3Q2hpbGQoJ21hcENvbnRhaW5lcicpIG1hcENvbnRhaW5lcjogTWFwQ29udGFpbmVyQ29tcG9uZW50XG5cbiAgZXhjbHVkZVdmcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKVxuICBoaWRlUHJldmlldyA9IGZhbHNlXG4gIHNlbGVjdGlvbjogRmVhdHVyZVxuICBzaG93TGVnZW5kID0gdHJ1ZVxuICBsZWdlbmRFeGlzdHMgPSBmYWxzZVxuXG4gIHRvZ2dsZUxlZ2VuZCgpIHtcbiAgICB0aGlzLnNob3dMZWdlbmQgPSAhdGhpcy5zaG93TGVnZW5kXG4gIH1cblxuICBvbkxlZ2VuZFN0YXR1c0NoYW5nZShzdGF0dXM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmxlZ2VuZEV4aXN0cyA9IHN0YXR1c1xuICB9XG5cbiAgY29tcGF0aWJsZU1hcExpbmtzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMubWRWaWV3RmFjYWRlLm1hcEFwaUxpbmtzJCxcbiAgICB0aGlzLm1kVmlld0ZhY2FkZS5nZW9EYXRhTGlua3NXaXRoR2VvbWV0cnkkLFxuICBdKS5waXBlKFxuICAgIG1hcCgoW21hcEFwaUxpbmtzLCBnZW9EYXRhTGlua3NXaXRoR2VvbWV0cnldKSA9PiB7XG4gICAgICByZXR1cm4gWy4uLm1hcEFwaUxpbmtzLCAuLi5nZW9EYXRhTGlua3NXaXRoR2VvbWV0cnldXG4gICAgfSlcbiAgKVxuXG4gIGRyb3Bkb3duQ2hvaWNlcyQgPSB0aGlzLmNvbXBhdGlibGVNYXBMaW5rcyQucGlwZShcbiAgICBtYXAoKGxpbmtzKSA9PlxuICAgICAgbGlua3MubGVuZ3RoXG4gICAgICAgID8gbGlua3MubWFwKChsaW5rLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgIGxhYmVsOiBnZXRMaW5rTGFiZWwobGluayksXG4gICAgICAgICAgICB2YWx1ZTogaW5kZXgsXG4gICAgICAgICAgfSkpXG4gICAgICAgIDogW3sgbGFiZWw6ICdtYXAuZHJvcGRvd24ucGxhY2Vob2xkZXInLCB2YWx1ZTogMCB9XVxuICAgIClcbiAgKVxuICBzZWxlY3RlZExpbmtJbmRleCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KDApXG5cbiAgbG9hZGluZyA9IGZhbHNlXG4gIGVycm9yID0gbnVsbFxuXG4gIHNlbGVjdGVkTGluayQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmNvbXBhdGlibGVNYXBMaW5rcyQsXG4gICAgdGhpcy5zZWxlY3RlZExpbmtJbmRleCQucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKSxcbiAgXSkucGlwZShtYXAoKFtsaW5rcywgaW5kZXhdKSA9PiBsaW5rc1tpbmRleF0pKVxuXG4gIGN1cnJlbnRMYXllcnMkID0gY29tYmluZUxhdGVzdChbdGhpcy5zZWxlY3RlZExpbmskLCB0aGlzLmV4Y2x1ZGVXZnMkXSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKFtsaW5rLCBleGNsdWRlV2ZzXSkgPT4ge1xuICAgICAgaWYgKCFsaW5rKSB7XG4gICAgICAgIHJldHVybiBvZihbXSlcbiAgICAgIH1cbiAgICAgIGlmIChleGNsdWRlV2ZzICYmIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJykge1xuICAgICAgICB0aGlzLmhpZGVQcmV2aWV3ID0gdHJ1ZVxuICAgICAgICByZXR1cm4gb2YoW10pXG4gICAgICB9XG4gICAgICB0aGlzLmhpZGVQcmV2aWV3ID0gZmFsc2VcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgIHRoaXMuZXJyb3IgPSBudWxsXG4gICAgICBpZiAobGluay5hY2Nlc3NSZXN0cmljdGVkKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoJ2RhdGFzZXQuZXJyb3IucmVzdHJpY3RlZEFjY2VzcycpXG4gICAgICAgIHJldHVybiBvZihbXSlcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmdldExheWVyRnJvbUxpbmsobGluaykucGlwZShcbiAgICAgICAgbWFwKChsYXllcikgPT4gW2xheWVyXSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGUpXG4gICAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgICB9KSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4gKHRoaXMubG9hZGluZyA9IGZhbHNlKSlcbiAgICAgIClcbiAgICB9KVxuICApXG5cbiAgbWFwQ29udGV4dCQ6IE9ic2VydmFibGU8TWFwQ29udGV4dD4gPSB0aGlzLmN1cnJlbnRMYXllcnMkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChsYXllcnMpID0+XG4gICAgICBmcm9tKGNyZWF0ZVZpZXdGcm9tTGF5ZXIobGF5ZXJzWzBdKSkucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihudWxsKSksIC8vIGNvdWxkIG5vdCB6b29tIG9uIHRoZSBsYXllcjogdXNlIHRoZSByZWNvcmQgZXh0ZW50XG4gICAgICAgIG1hcCgodmlldykgPT4gKHtcbiAgICAgICAgICBsYXllcnMsXG4gICAgICAgICAgdmlldyxcbiAgICAgICAgfSkpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMucmVzZXRTZWxlY3Rpb24oKVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICksXG4gICAgc3RhcnRXaXRoKHtcbiAgICAgIGxheWVyczogW10sXG4gICAgICB2aWV3OiBudWxsLFxuICAgIH0pLFxuICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMubWRWaWV3RmFjYWRlLm1ldGFkYXRhJCksXG4gICAgbWFwKChbY29udGV4dCwgbWV0YWRhdGFdKSA9PiB7XG4gICAgICBpZiAoY29udGV4dC52aWV3KSByZXR1cm4gY29udGV4dFxuICAgICAgY29uc3QgZXh0ZW50ID0gdGhpcy5tYXBVdGlscy5nZXRSZWNvcmRFeHRlbnQobWV0YWRhdGEpXG4gICAgICBjb25zdCB2aWV3ID0gZXh0ZW50ID8geyBleHRlbnQgfSA6IG51bGxcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNvbnRleHQsXG4gICAgICAgIHZpZXcsXG4gICAgICB9XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbWRWaWV3RmFjYWRlOiBNZFZpZXdGYWNhZGUsXG4gICAgcHJpdmF0ZSBtYXBVdGlsczogTWFwVXRpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBtYXAgPSBhd2FpdCB0aGlzLm1hcENvbnRhaW5lci5vcGVubGF5ZXJzTWFwXG4gICAgcHJpb3JpdGl6ZVBhZ2VTY3JvbGwobWFwLmdldEludGVyYWN0aW9ucygpKVxuICB9XG5cbiAgb25NYXBGZWF0dXJlU2VsZWN0KGZlYXR1cmVzOiBGZWF0dXJlW10pOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0U2VsZWN0aW9uKClcbiAgICB0aGlzLnNlbGVjdGlvbiA9IGZlYXR1cmVzPy5sZW5ndGggPiAwICYmIGZlYXR1cmVzWzBdXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICAvLyBGSVhNRTogcmVzdG9yZSBzdHlsaW5nIG9mIHNlbGVjdGVkIGZlYXR1cmVcbiAgICAgIC8vIHRoaXMuc2VsZWN0aW9uLnNldFN0eWxlKHRoaXMuc2VsZWN0aW9uU3R5bGUpXG4gICAgfVxuICAgIHRoaXMuY2hhbmdlUmVmLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgb25Tb3VyY2VMb2FkRXJyb3IoZXJyb3I6IFNvdXJjZUxvYWRFcnJvckV2ZW50KSB7XG4gICAgaWYgKGVycm9yLmh0dHBTdGF0dXMgPT09IDQwMyB8fCBlcnJvci5odHRwU3RhdHVzID09PSA0MDEpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChgZGF0YXNldC5lcnJvci5mb3JiaWRkZW5gKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYGRhdGFzZXQuZXJyb3IuaHR0cGAsIHtcbiAgICAgICAgaW5mbzogZXJyb3IuaHR0cFN0YXR1cyxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcmVzZXRTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uKSB7XG4gICAgICAvLyBGSVhNRTogcmVzdG9yZSBzdHlsaW5nIG9mIHNlbGVjdGVkIGZlYXR1cmVcbiAgICAgIC8vIHRoaXMuc2VsZWN0aW9uLnNldFN0eWxlKG51bGwpXG4gICAgfVxuICAgIHRoaXMuc2VsZWN0aW9uID0gbnVsbFxuICB9XG5cbiAgZ2V0TGF5ZXJGcm9tTGluayhsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBPYnNlcnZhYmxlPE1hcENvbnRleHRMYXllcj4ge1xuICAgIGlmIChsaW5rLnR5cGUgPT09ICdzZXJ2aWNlJyAmJiBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtcycpIHtcbiAgICAgIHJldHVybiBvZih7XG4gICAgICAgIHVybDogbGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgICAgdHlwZTogJ3dtcycsXG4gICAgICAgIG5hbWU6IGxpbmsubmFtZSxcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtdHMnXG4gICAgKSB7XG4gICAgICByZXR1cm4gb2Yoe1xuICAgICAgICB1cmw6IGxpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICAgIHR5cGU6ICd3bXRzJyxcbiAgICAgICAgbmFtZTogbGluay5uYW1lLFxuICAgICAgfSlcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgKGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICAgIChsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcycgfHxcbiAgICAgICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ2VzcmlSZXN0JyB8fFxuICAgICAgICAgIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnKSkgfHxcbiAgICAgIGxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJ1xuICAgICkge1xuICAgICAgY29uc3QgY2FjaGVBY3RpdmUgPSB0cnVlIC8vIFRPRE8gaW1wbGVtZW50IHdoZXRoZXIgc2hvdWxkIGJlIHRydWUgb3IgZmFsc2VcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLnJlYWRBc0dlb0pzb24obGluaywgY2FjaGVBY3RpdmUpLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YSkgPT4gKHtcbiAgICAgICAgICB0eXBlOiAnZ2VvanNvbicsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdwcm90b2NvbCBub3Qgc3VwcG9ydGVkJylcbiAgfVxuXG4gIHNlbGVjdExpbmtUb0Rpc3BsYXkobGluazogbnVtYmVyKSB7XG4gICAgdGhpcy5zZWxlY3RlZExpbmtJbmRleCQubmV4dChsaW5rKVxuICB9XG5cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvciB8IHN0cmluZykge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEZldGNoRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgYGRhdGFzZXQuZXJyb3IuJHtlcnJvci50eXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmZvOiBlcnJvci5pbmZvLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IubWVzc2FnZSlcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChlcnJvci5tZXNzYWdlKVxuICAgICAgY29uc29sZS53YXJuKGVycm9yLnN0YWNrIHx8IGVycm9yKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVycm9yID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZXJyb3IpXG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpXG4gICAgfVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgdGhpcy5jaGFuZ2VSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGZsZXggZmxleC1jb2wgcC0xXCI+XG4gIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgZmxleCBqdXN0aWZ5LWVuZFwiPlxuICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgW25nQ2xhc3NdPVwieyBoaWRkZW46ICFkaXNwbGF5U291cmNlIH1cIlxuICAgICAgY2xhc3M9XCJ0cnVuY2F0ZSBwLTEgLW14LTEgbWItMVwiXG4gICAgICBleHRyYUJ0bkNsYXNzPVwiIXRleHQtcHJpbWFyeSBmb250LXNhbnMgZm9udC1tZWRpdW1cIlxuICAgICAgW3RpdGxlXT1cIidtYXAuc2VsZWN0LmxheWVyJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBbY2hvaWNlc109XCJkcm9wZG93bkNob2ljZXMkIHwgYXN5bmNcIlxuICAgICAgKHNlbGVjdFZhbHVlKT1cInNlbGVjdExpbmtUb0Rpc3BsYXkoJGV2ZW50KVwiXG4gICAgPjwvZ24tdWktZHJvcGRvd24tc2VsZWN0b3I+XG4gICAgPGduLXVpLWV4dGVybmFsLXZpZXdlci1idXR0b25cbiAgICAgIGNsYXNzPVwic2hyaW5rLTAgcHktMSBwbGFjZS1zZWxmLWVuZFwiXG4gICAgICBbbGlua109XCJzZWxlY3RlZExpbmskIHwgYXN5bmNcIlxuICAgID5cbiAgICA8L2duLXVpLWV4dGVybmFsLXZpZXdlci1idXR0b24+XG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlkZVByZXZpZXc7IGVsc2UgbWFwVmlld1wiPlxuICAgIDxnbi11aS1wb3B1cC1hbGVydFxuICAgICAgdHlwZT1cIndhcm5pbmdcIlxuICAgICAgaWNvbj1cIm1hdEVycm9yT3V0bGluZU91dGxpbmVcIlxuICAgICAgY2xhc3M9XCJibG9jayBoLTEyIHAtMVwiXG4gICAgPlxuICAgICAgPHNwYW4gdHJhbnNsYXRlPnJlY29yZC5mZWF0dXJlLmxpbWl0PC9zcGFuPlxuICAgIDwvZ24tdWktcG9wdXAtYWxlcnQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI21hcFZpZXc+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJyZWxhdGl2ZSB3LWZ1bGwgaC1mdWxsIGJnLXdoaXRlIGJvcmRlciBib3JkZXItZ3JheS0zMDAgcm91bmRlZC1sZyBvdmVyZmxvdy1oaWRkZW5cIlxuICAgID5cbiAgICAgIDxnbi11aS1tYXAtY29udGFpbmVyXG4gICAgICAgICNtYXBDb250YWluZXJcbiAgICAgICAgW2NvbnRleHRdPVwibWFwQ29udGV4dCQgfCBhc3luY1wiXG4gICAgICAgIChmZWF0dXJlc0NsaWNrKT1cIm9uTWFwRmVhdHVyZVNlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgKHNvdXJjZUxvYWRFcnJvcik9XCJvblNvdXJjZUxvYWRFcnJvcigkZXZlbnQpXCJcbiAgICAgID48L2duLXVpLW1hcC1jb250YWluZXI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidG9wLVsxZW1dIHJpZ2h0LVsxZW1dIHAtMyBiZy13aGl0ZSBhYnNvbHV0ZSBvdmVyZmxvdy15LWF1dG8gb3ZlcmZsb3cteC1oaWRkZW4gbWF4LWgtNzIgdy01NlwiXG4gICAgICAgIFtjbGFzcy5oaWRkZW5dPVwiIXNlbGVjdGlvblwiXG4gICAgICA+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICB0eXBlPVwibGlnaHRcIlxuICAgICAgICAgIChidXR0b25DbGljayk9XCJyZXNldFNlbGVjdGlvbigpXCJcbiAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgLS1nbi11aS1idXR0b24tcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgLS1nbi11aS1idXR0b24td2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAtLWduLXVpLWJ1dHRvbi1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgXCJcbiAgICAgICAgICBleHRyYUNsYXNzPVwiYWJzb2x1dGUgcmlnaHQtWzAuNWVtXSBtbC1bOHB4XSBtci1bMTBweF1cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWljb24gbmFtZT1cIm1hdENsb3NlXCIgY2xhc3M9XCJhbGlnbi1taWRkbGUgdGV4dC1zbVwiPjwvbmctaWNvbj5cbiAgICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICAgIDxnbi11aS1mZWF0dXJlLWRldGFpbCBbZmVhdHVyZV09XCJzZWxlY3Rpb25cIj48L2duLXVpLWZlYXR1cmUtZGV0YWlsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0b3AtWzFlbV0gcC0zIGJnLXdoaXRlIGFic29sdXRlIG92ZXJmbG93LXktYXV0byBvdmVyZmxvdy14LWhpZGRlbiBtYXgtaC03MiB3LTU2XCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyAncmlnaHQtWzFlbV0nOiAhc2VsZWN0aW9uLCAncmlnaHQtWzE2ZW1dJzogc2VsZWN0aW9uIH1cIlxuICAgICAgICBbaGlkZGVuXT1cIiFzaG93TGVnZW5kIHx8ICFsZWdlbmRFeGlzdHNcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyIG1iLTJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtYm9sZFwiPkxlZ2VuZDwvZGl2PlxuICAgICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlTGVnZW5kKClcIlxuICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgLS1nbi11aS1idXR0b24tcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAtLWduLXVpLWJ1dHRvbi13aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgLS1nbi11aS1idXR0b24taGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIGV4dHJhQ2xhc3M9XCJtbC1bOHB4XSBtci1bMTBweF1cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxuZy1pY29uIG5hbWU9XCJtYXRDbG9zZVwiIGNsYXNzPVwiYWxpZ24tbWlkZGxlIHRleHQtc21cIj48L25nLWljb24+XG4gICAgICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8Z24tdWktbWFwLWxlZ2VuZFxuICAgICAgICAgIFtjb250ZXh0XT1cIm1hcENvbnRleHQkIHwgYXN5bmNcIlxuICAgICAgICAgIChsZWdlbmRTdGF0dXNDaGFuZ2UpPVwib25MZWdlbmRTdGF0dXNDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgID48L2duLXVpLW1hcC1sZWdlbmQ+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFzaG93TGVnZW5kICYmIGxlZ2VuZEV4aXN0cyAmJiAhc2VsZWN0aW9uXCJcbiAgICAgICAgdHlwZT1cIm91dGxpbmVcIlxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlTGVnZW5kKClcIlxuICAgICAgICBleHRyYUNsYXNzPVwiYWJzb2x1dGUgdG9wLVsxZW1dIHJpZ2h0LVsxZW1dIHJvdW5kZWQgcC0xIHRleHQteHMgYmctd2hpdGVcIlxuICAgICAgPlxuICAgICAgICBMZWdlbmRcbiAgICAgIDwvZ24tdWktYnV0dG9uPlxuXG4gICAgICA8Z24tdWktbG9hZGluZy1tYXNrXG4gICAgICAgICpuZ0lmPVwibG9hZGluZ1wiXG4gICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQtMFwiXG4gICAgICAgIFttZXNzYWdlXT1cIidtYXAubG9hZGluZy5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgICA+PC9nbi11aS1sb2FkaW5nLW1hc2s+XG4gICAgICA8Z24tdWktcG9wdXAtYWxlcnRcbiAgICAgICAgKm5nSWY9XCJlcnJvclwiXG4gICAgICAgIHR5cGU9XCJ3YXJuaW5nXCJcbiAgICAgICAgaWNvbj1cIm1hdEVycm9yT3V0bGluZU91dGxpbmVcIlxuICAgICAgICBjbGFzcz1cImFic29sdXRlIG0tMiBpbnNldC0wXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4gdHJhbnNsYXRlPnt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgPC9nbi11aS1wb3B1cC1hbGVydD5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
42
42
  }], ctorParameters: () => [{ type: i1.Meta }], propDecorators: { metadata: [{
43
43
  type: Input
44
44
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLW1ldGEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL3JlY29yZC1tZXRhL3JlY29yZC1tZXRhLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFBOzs7QUFTaEQsTUFBTSxPQUFPLG1CQUFtQjtJQUc5QixZQUFvQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtJQUFHLENBQUM7SUFFbEMsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTtZQUN4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDZixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTthQUN6QyxDQUFDLENBQUE7WUFDRixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDekMsS0FBSyxNQUFNLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzt3QkFDZixRQUFRLEVBQUUsVUFBVTt3QkFDcEIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO3FCQUNqQyxDQUFDLENBQUE7Z0JBQ0osQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUE7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQTtJQUM1QyxDQUFDOytHQTNCVSxtQkFBbUI7bUdBQW5CLG1CQUFtQixvSUFKcEIsRUFBRTs7NEZBSUQsbUJBQW1CO2tCQU4vQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7eUVBRVUsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1ldGEgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJ1xuaW1wb3J0IHsgRGF0YXNldFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktcmVjb3JkLW1ldGEnLFxuICB0ZW1wbGF0ZTogJycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBSZWNvcmRNZXRhQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBtZXRhZGF0YTogRGF0YXNldFJlY29yZFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWV0YTogTWV0YSkge31cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5tZXRhZGF0YT8udGl0bGUpIHtcbiAgICAgIHRoaXMubWV0YS5hZGRUYWcoeyBwcm9wZXJ0eTogJ29nOnRpdGxlJywgY29udGVudDogdGhpcy5tZXRhZGF0YS50aXRsZSB9KVxuICAgICAgdGhpcy5tZXRhLmFkZFRhZyh7XG4gICAgICAgIHByb3BlcnR5OiAnb2c6dXJsJyxcbiAgICAgICAgY29udGVudDogd2luZG93LmxvY2F0aW9uLmhyZWYudG9TdHJpbmcoKSxcbiAgICAgIH0pXG4gICAgICBpZiAodGhpcy5tZXRhZGF0YT8ub3ZlcnZpZXdzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGZvciAoY29uc3Qgb3ZlcnZpZXcgb2YgdGhpcy5tZXRhZGF0YS5vdmVydmlld3MpIHtcbiAgICAgICAgICB0aGlzLm1ldGEuYWRkVGFnKHtcbiAgICAgICAgICAgIHByb3BlcnR5OiAnb2c6aW1hZ2UnLFxuICAgICAgICAgICAgY29udGVudDogb3ZlcnZpZXcudXJsLnRvU3RyaW5nKCksXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMubWV0YS5yZW1vdmVUYWcoJ3Byb3BlcnR5PVwib2c6aW1hZ2VcIicpXG4gICAgdGhpcy5tZXRhLnJlbW92ZVRhZygncHJvcGVydHk9XCJvZzp1cmxcIicpXG4gICAgdGhpcy5tZXRhLnJlbW92ZVRhZygncHJvcGVydHk9XCJvZzp0aXRsZVwiJylcbiAgfVxufVxuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLW1ldGEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL3JlY29yZC1tZXRhL3JlY29yZC1tZXRhLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFBOzs7QUFTaEQsTUFBTSxPQUFPLG1CQUFtQjtJQUc5QixZQUFvQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtJQUFHLENBQUM7SUFFbEMsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTtZQUN4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDZixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTthQUN6QyxDQUFDLENBQUE7WUFDRixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDekMsS0FBSyxNQUFNLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzt3QkFDZixRQUFRLEVBQUUsVUFBVTt3QkFDcEIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO3FCQUNqQyxDQUFDLENBQUE7Z0JBQ0osQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUE7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQTtJQUM1QyxDQUFDOytHQTNCVSxtQkFBbUI7bUdBQW5CLG1CQUFtQixvSUFKcEIsRUFBRTs7NEZBSUQsbUJBQW1CO2tCQU4vQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7eUVBRVUsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE1ldGEgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktcmVjb3JkLW1ldGEnLFxuICB0ZW1wbGF0ZTogJycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBSZWNvcmRNZXRhQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBtZXRhZGF0YTogQ2F0YWxvZ1JlY29yZFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWV0YTogTWV0YSkge31cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5tZXRhZGF0YT8udGl0bGUpIHtcbiAgICAgIHRoaXMubWV0YS5hZGRUYWcoeyBwcm9wZXJ0eTogJ29nOnRpdGxlJywgY29udGVudDogdGhpcy5tZXRhZGF0YS50aXRsZSB9KVxuICAgICAgdGhpcy5tZXRhLmFkZFRhZyh7XG4gICAgICAgIHByb3BlcnR5OiAnb2c6dXJsJyxcbiAgICAgICAgY29udGVudDogd2luZG93LmxvY2F0aW9uLmhyZWYudG9TdHJpbmcoKSxcbiAgICAgIH0pXG4gICAgICBpZiAodGhpcy5tZXRhZGF0YT8ub3ZlcnZpZXdzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGZvciAoY29uc3Qgb3ZlcnZpZXcgb2YgdGhpcy5tZXRhZGF0YS5vdmVydmlld3MpIHtcbiAgICAgICAgICB0aGlzLm1ldGEuYWRkVGFnKHtcbiAgICAgICAgICAgIHByb3BlcnR5OiAnb2c6aW1hZ2UnLFxuICAgICAgICAgICAgY29udGVudDogb3ZlcnZpZXcudXJsLnRvU3RyaW5nKCksXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMubWV0YS5yZW1vdmVUYWcoJ3Byb3BlcnR5PVwib2c6aW1hZ2VcIicpXG4gICAgdGhpcy5tZXRhLnJlbW92ZVRhZygncHJvcGVydHk9XCJvZzp1cmxcIicpXG4gICAgdGhpcy5tZXRhLnJlbW92ZVRhZygncHJvcGVydHk9XCJvZzp0aXRsZVwiJylcbiAgfVxufVxuIl19
@@ -5,20 +5,23 @@ import { catchError, filter, map, switchMap } from 'rxjs/operators';
5
5
  import * as MdViewActions from './mdview.actions';
6
6
  import { RecordsRepositoryInterface } from '../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
7
7
  import { PlatformServiceInterface } from '../../../../../../libs/common/domain/src/lib/platform.service.interface';
8
+ import { Router } from '@angular/router';
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "@ngrx/effects";
10
11
  import * as i2 from "../../../../../../libs/common/domain/src/lib/repository/records-repository.interface";
11
12
  import * as i3 from "../../../../../../libs/common/domain/src/lib/platform.service.interface";
13
+ import * as i4 from "@angular/router";
12
14
  export class MdViewEffects {
13
- constructor(actions$, recordsRepository, platformServiceInterface) {
15
+ constructor(actions$, recordsRepository, platformServiceInterface, router) {
14
16
  this.actions$ = actions$;
15
17
  this.recordsRepository = recordsRepository;
16
18
  this.platformServiceInterface = platformServiceInterface;
19
+ this.router = router;
17
20
  /*
18
21
  Metadata effects
19
22
  */
20
23
  this.loadFullMetadata$ = createEffect(() => this.actions$.pipe(ofType(MdViewActions.loadFullMetadata), switchMap(({ uuid }) => this.recordsRepository.getRecord(uuid)), map((record) => {
21
- if (record === null) {
24
+ if (record === null || !this.router.url.includes(record.kind)) {
22
25
  return MdViewActions.loadFullMetadataFailure({ notFound: true });
23
26
  }
24
27
  return MdViewActions.loadFullMetadataSuccess({ full: record });
@@ -53,10 +56,10 @@ export class MdViewEffects {
53
56
  }));
54
57
  })))));
55
58
  }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MdViewEffects, deps: [{ token: i1.Actions }, { token: i2.RecordsRepositoryInterface }, { token: i3.PlatformServiceInterface }], target: i0.ɵɵFactoryTarget.Injectable }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MdViewEffects, deps: [{ token: i1.Actions }, { token: i2.RecordsRepositoryInterface }, { token: i3.PlatformServiceInterface }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
57
60
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MdViewEffects }); }
58
61
  }
59
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MdViewEffects, decorators: [{
60
63
  type: Injectable
61
- }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.RecordsRepositoryInterface }, { type: i3.PlatformServiceInterface }] });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWR2aWV3LmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvc3RhdGUvbWR2aWV3LmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQVEsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN6RSxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNGQUFzRixDQUFBO0FBQ2pJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlFQUF5RSxDQUFBOzs7OztBQUVsSCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUNVLFFBQWlCLEVBQ2pCLGlCQUE2QyxFQUM3Qyx3QkFBa0Q7UUFGbEQsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQTRCO1FBQzdDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFHNUQ7O1VBRUU7UUFDRixzQkFBaUIsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLEVBQ3RDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFDL0QsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDYixJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxhQUFhLENBQUMsdUJBQXVCLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUNsRSxDQUFDO1lBQ0QsT0FBTyxhQUFhLENBQUMsdUJBQXVCLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtRQUNoRSxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNuQixFQUFFLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQ3pFLENBQ0YsQ0FDRixDQUFBO1FBRUQsd0JBQW1CLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxFQUM3QyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEVBQ3hDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUN2RSxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUNyQixhQUFhLENBQUMseUJBQXlCLENBQUM7WUFDdEMsY0FBYyxFQUFFLGNBQWM7U0FDL0IsQ0FBQyxDQUNILEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUNBLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQztZQUN0QyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDckIsQ0FBQyxDQUNILENBQ0YsQ0FDRixDQUNGLENBQUE7UUFFRDs7VUFFRTtRQUNGLHdCQUFtQixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsRUFDN0MsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ3ZFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2QsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtRQUM5QyxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUN2RSxDQUNGLENBQUE7UUFFRDs7VUFFRTtRQUNGLHVCQUFrQixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsRUFDdkMsVUFBVSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQzdCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzlELEdBQUcsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQ3BCLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQzFELEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUNBLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQztZQUNyQyxVQUFVLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDMUIsQ0FBQyxDQUNILENBQ0YsQ0FDRixDQUNGLENBQ0YsQ0FDRixDQUFBO1FBRUQseUJBQW9CLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN2QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxFQUM1QyxVQUFVLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsQ0FDN0IsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDOUQsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FDcEIsYUFBYSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FDMUQsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNuQixFQUFFLENBQ0EsYUFBYSxDQUFDLHdCQUF3QixDQUFDO1lBQ3JDLFVBQVUsRUFBRSxLQUFLLENBQUMsT0FBTztTQUMxQixDQUFDLENBQ0gsQ0FDRixDQUNGLENBQ0YsQ0FDRixDQUNGLENBQUE7UUFFRCxxQkFBZ0IsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxFQUNyQyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNsQixJQUFJLENBQUMsd0JBQXdCO2FBQzFCLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7YUFDdEMsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FDUCxhQUFhLENBQUMsc0JBQXNCLENBQUM7WUFDbkMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsWUFBWTtTQUM5QyxDQUFDLENBQ0gsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FDUCxhQUFhLENBQUMsc0JBQXNCLENBQUM7Z0JBQ25DLFVBQVUsRUFBRSxLQUFLLENBQUMsT0FBTzthQUMxQixDQUFDLENBQ0gsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUNILENBQ0osQ0FDRixDQUNGLENBQUE7SUF4SEUsQ0FBQzsrR0FMTyxhQUFhO21IQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCB7IGV4aGF1c3RNYXAsIG1lcmdlTWFwLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgKiBhcyBNZFZpZXdBY3Rpb25zIGZyb20gJy4vbWR2aWV3LmFjdGlvbnMnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1kVmlld0VmZmVjdHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlLFxuICAgIHByaXZhdGUgcGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2VcbiAgKSB7fVxuXG4gIC8qXG4gICAgTWV0YWRhdGEgZWZmZWN0c1xuICAqL1xuICBsb2FkRnVsbE1ldGFkYXRhJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGEpLFxuICAgICAgc3dpdGNoTWFwKCh7IHV1aWQgfSkgPT4gdGhpcy5yZWNvcmRzUmVwb3NpdG9yeS5nZXRSZWNvcmQodXVpZCkpLFxuICAgICAgbWFwKChyZWNvcmQpID0+IHtcbiAgICAgICAgaWYgKHJlY29yZCA9PT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiBNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGFGYWlsdXJlKHsgbm90Rm91bmQ6IHRydWUgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gTWRWaWV3QWN0aW9ucy5sb2FkRnVsbE1ldGFkYXRhU3VjY2Vzcyh7IGZ1bGw6IHJlY29yZCB9KVxuICAgICAgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT5cbiAgICAgICAgb2YoTWRWaWV3QWN0aW9ucy5sb2FkRnVsbE1ldGFkYXRhRmFpbHVyZSh7IG90aGVyRXJyb3I6IGVycm9yLm1lc3NhZ2UgfSkpXG4gICAgICApXG4gICAgKVxuICApXG5cbiAgbG9hZEZlYXR1cmVDYXRhbG9nJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGFTdWNjZXNzKSxcbiAgICAgIGZpbHRlcigoeyBmdWxsIH0pID0+IGZ1bGwgIT09IHVuZGVmaW5lZCksXG4gICAgICBzd2l0Y2hNYXAoKHsgZnVsbCB9KSA9PiB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LmdldEZlYXR1cmVDYXRhbG9nKGZ1bGwpKSxcbiAgICAgIG1hcCgoZmVhdHVyZUNhdGFsb2cpID0+XG4gICAgICAgIE1kVmlld0FjdGlvbnMubG9hZEZlYXR1cmVDYXRhbG9nU3VjY2Vzcyh7XG4gICAgICAgICAgZGF0YXNldENhdGFsb2c6IGZlYXR1cmVDYXRhbG9nLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PlxuICAgICAgICBvZihcbiAgICAgICAgICBNZFZpZXdBY3Rpb25zLmxvYWRGZWF0dXJlQ2F0YWxvZ0ZhaWx1cmUoe1xuICAgICAgICAgICAgZXJyb3I6IGVycm9yLm1lc3NhZ2UsXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKVxuXG4gIC8qXG4gICAgUmVsYXRlZCBlZmZlY3RzXG4gICovXG4gIGxvYWRSZWxhdGVkUmVjb3JkcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoTWRWaWV3QWN0aW9ucy5sb2FkRnVsbE1ldGFkYXRhU3VjY2VzcyksXG4gICAgICBzd2l0Y2hNYXAoKHsgZnVsbCB9KSA9PiB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LmdldFNpbWlsYXJSZWNvcmRzKGZ1bGwpKSxcbiAgICAgIG1hcCgocmVsYXRlZCkgPT4ge1xuICAgICAgICByZXR1cm4gTWRWaWV3QWN0aW9ucy5zZXRSZWxhdGVkKHsgcmVsYXRlZCB9KVxuICAgICAgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gb2YoTWRWaWV3QWN0aW9ucy5zZXRSZWxhdGVkKHsgcmVsYXRlZDogbnVsbCB9KSkpXG4gICAgKVxuICApXG5cbiAgLypcbiAgICBVc2VyRmVlZGJhY2sgZWZmZWN0c1xuICAqL1xuICBsb2FkVXNlckZlZWRiYWNrcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoTWRWaWV3QWN0aW9ucy5sb2FkVXNlckZlZWRiYWNrcyksXG4gICAgICBleGhhdXN0TWFwKCh7IGRhdGFzZXRVdWlkIH0pID0+XG4gICAgICAgIHRoaXMucGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlLmdldFVzZXJGZWVkYmFja3MoZGF0YXNldFV1aWQpLnBpcGUoXG4gICAgICAgICAgbWFwKCh1c2VyRmVlZGJhY2tzKSA9PlxuICAgICAgICAgICAgTWRWaWV3QWN0aW9ucy5sb2FkVXNlckZlZWRiYWNrc1N1Y2Nlc3MoeyB1c2VyRmVlZGJhY2tzIH0pXG4gICAgICAgICAgKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT5cbiAgICAgICAgICAgIG9mKFxuICAgICAgICAgICAgICBNZFZpZXdBY3Rpb25zLmxvYWRVc2VyRmVlZGJhY2tzRmFpbHVyZSh7XG4gICAgICAgICAgICAgICAgb3RoZXJFcnJvcjogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIClcblxuICByZWxvYWRVc2VyRmVlZGJhY2tzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmFkZFVzZXJGZWVkYmFja1N1Y2Nlc3MpLFxuICAgICAgZXhoYXVzdE1hcCgoeyBkYXRhc2V0VXVpZCB9KSA9PlxuICAgICAgICB0aGlzLnBsYXRmb3JtU2VydmljZUludGVyZmFjZS5nZXRVc2VyRmVlZGJhY2tzKGRhdGFzZXRVdWlkKS5waXBlKFxuICAgICAgICAgIG1hcCgodXNlckZlZWRiYWNrcykgPT5cbiAgICAgICAgICAgIE1kVmlld0FjdGlvbnMubG9hZFVzZXJGZWVkYmFja3NTdWNjZXNzKHsgdXNlckZlZWRiYWNrcyB9KVxuICAgICAgICAgICksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+XG4gICAgICAgICAgICBvZihcbiAgICAgICAgICAgICAgTWRWaWV3QWN0aW9ucy5sb2FkVXNlckZlZWRiYWNrc0ZhaWx1cmUoe1xuICAgICAgICAgICAgICAgIG90aGVyRXJyb3I6IGVycm9yLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApXG5cbiAgYWRkVXNlckZlZWRiYWNrJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmFkZFVzZXJGZWVkYmFjayksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLnBsYXRmb3JtU2VydmljZUludGVyZmFjZVxuICAgICAgICAgIC5wb3N0VXNlckZlZWRiYWNrcyhhY3Rpb24udXNlckZlZWRiYWNrKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgbWFwKCgpID0+XG4gICAgICAgICAgICAgIE1kVmlld0FjdGlvbnMuYWRkVXNlckZlZWRiYWNrU3VjY2Vzcyh7XG4gICAgICAgICAgICAgICAgZGF0YXNldFV1aWQ6IGFjdGlvbi51c2VyRmVlZGJhY2subWV0YWRhdGFVVUlELFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBvZihcbiAgICAgICAgICAgICAgICBNZFZpZXdBY3Rpb25zLmFkZFVzZXJGZWVkYmFja0ZhaWx1cmUoe1xuICAgICAgICAgICAgICAgICAgb3RoZXJFcnJvcjogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIClcbn1cbiJdfQ==
64
+ }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.RecordsRepositoryInterface }, { type: i3.PlatformServiceInterface }, { type: i4.Router }] });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWR2aWV3LmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvc3RhdGUvbWR2aWV3LmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNuRSxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNGQUFzRixDQUFBO0FBQ2pJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlFQUF5RSxDQUFBO0FBQ2xILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7Ozs7O0FBRXhDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsUUFBaUIsRUFDakIsaUJBQTZDLEVBQzdDLHdCQUFrRCxFQUNsRCxNQUFjO1FBSGQsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQTRCO1FBQzdDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUd4Qjs7VUFFRTtRQUNGLHNCQUFpQixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDcEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsRUFDdEMsU0FBUyxD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QyxZQUFZLENBQUMsWUFBWTtTQUM5QyxDQUFDLENBQ0gsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FDUCxhQUFhLENBQUMsc0JBQXNCLENBQUM7Z0JBQ25DLFVBQVUsRUFBRSxLQUFLLENBQUMsT0FBTzthQUMxQixDQUFDLENBQ0gsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUNILENBQ0osQ0FDRixDQUNGLENBQUE7SUF4SEUsQ0FBQzsrR0FOTyxhQUFhO21IQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCB7IGV4aGF1c3RNYXAsIG1lcmdlTWFwLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgKiBhcyBNZFZpZXdBY3Rpb25zIGZyb20gJy4vbWR2aWV3LmFjdGlvbnMnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3BsYXRmb3JtLnNlcnZpY2UuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1kVmlld0VmZmVjdHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlLFxuICAgIHByaXZhdGUgcGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlOiBQbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxuICApIHt9XG5cbiAgLypcbiAgICBNZXRhZGF0YSBlZmZlY3RzXG4gICovXG4gIGxvYWRGdWxsTWV0YWRhdGEkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1kVmlld0FjdGlvbnMubG9hZEZ1bGxNZXRhZGF0YSksXG4gICAgICBzd2l0Y2hNYXAoKHsgdXVpZCB9KSA9PiB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LmdldFJlY29yZCh1dWlkKSksXG4gICAgICBtYXAoKHJlY29yZCkgPT4ge1xuICAgICAgICBpZiAocmVjb3JkID09PSBudWxsIHx8ICF0aGlzLnJvdXRlci51cmwuaW5jbHVkZXMocmVjb3JkLmtpbmQpKSB7XG4gICAgICAgICAgcmV0dXJuIE1kVmlld0FjdGlvbnMubG9hZEZ1bGxNZXRhZGF0YUZhaWx1cmUoeyBub3RGb3VuZDogdHJ1ZSB9KVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGFTdWNjZXNzKHsgZnVsbDogcmVjb3JkIH0pXG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PlxuICAgICAgICBvZihNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGFGYWlsdXJlKHsgb3RoZXJFcnJvcjogZXJyb3IubWVzc2FnZSB9KSlcbiAgICAgIClcbiAgICApXG4gIClcblxuICBsb2FkRmVhdHVyZUNhdGFsb2ckID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1kVmlld0FjdGlvbnMubG9hZEZ1bGxNZXRhZGF0YVN1Y2Nlc3MpLFxuICAgICAgZmlsdGVyKCh7IGZ1bGwgfSkgPT4gZnVsbCAhPT0gdW5kZWZpbmVkKSxcbiAgICAgIHN3aXRjaE1hcCgoeyBmdWxsIH0pID0+IHRoaXMucmVjb3Jkc1JlcG9zaXRvcnkuZ2V0RmVhdHVyZUNhdGFsb2coZnVsbCkpLFxuICAgICAgbWFwKChmZWF0dXJlQ2F0YWxvZykgPT5cbiAgICAgICAgTWRWaWV3QWN0aW9ucy5sb2FkRmVhdHVyZUNhdGFsb2dTdWNjZXNzKHtcbiAgICAgICAgICBkYXRhc2V0Q2F0YWxvZzogZmVhdHVyZUNhdGFsb2csXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+XG4gICAgICAgIG9mKFxuICAgICAgICAgIE1kVmlld0FjdGlvbnMubG9hZEZlYXR1cmVDYXRhbG9nRmFpbHVyZSh7XG4gICAgICAgICAgICBlcnJvcjogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApXG5cbiAgLypcbiAgICBSZWxhdGVkIGVmZmVjdHNcbiAgKi9cbiAgbG9hZFJlbGF0ZWRSZWNvcmRzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmxvYWRGdWxsTWV0YWRhdGFTdWNjZXNzKSxcbiAgICAgIHN3aXRjaE1hcCgoeyBmdWxsIH0pID0+IHRoaXMucmVjb3Jkc1JlcG9zaXRvcnkuZ2V0U2ltaWxhclJlY29yZHMoZnVsbCkpLFxuICAgICAgbWFwKChyZWxhdGVkKSA9PiB7XG4gICAgICAgIHJldHVybiBNZFZpZXdBY3Rpb25zLnNldFJlbGF0ZWQoeyByZWxhdGVkIH0pXG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBvZihNZFZpZXdBY3Rpb25zLnNldFJlbGF0ZWQoeyByZWxhdGVkOiBudWxsIH0pKSlcbiAgICApXG4gIClcblxuICAvKlxuICAgIFVzZXJGZWVkYmFjayBlZmZlY3RzXG4gICovXG4gIGxvYWRVc2VyRmVlZGJhY2tzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShNZFZpZXdBY3Rpb25zLmxvYWRVc2VyRmVlZGJhY2tzKSxcbiAgICAgIGV4aGF1c3RNYXAoKHsgZGF0YXNldFV1aWQgfSkgPT5cbiAgICAgICAgdGhpcy5wbGF0Zm9ybVNlcnZpY2VJbnRlcmZhY2UuZ2V0VXNlckZlZWRiYWNrcyhkYXRhc2V0VXVpZCkucGlwZShcbiAgICAgICAgICBtYXAoKHVzZXJGZWVkYmFja3MpID0+XG4gICAgICAgICAgICBNZFZpZXdBY3Rpb25zLmxvYWRVc2VyRmVlZGJhY2tzU3VjY2Vzcyh7IHVzZXJGZWVkYmFja3MgfSlcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PlxuICAgICAgICAgICAgb2YoXG4gICAgICAgICAgICAgIE1kVmlld0FjdGlvbnMubG9hZFVzZXJGZWVkYmFja3NGYWlsdXJlKHtcbiAgICAgICAgICAgICAgICBvdGhlckVycm9yOiBlcnJvci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKVxuXG4gIHJlbG9hZFVzZXJGZWVkYmFja3MkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1kVmlld0FjdGlvbnMuYWRkVXNlckZlZWRiYWNrU3VjY2VzcyksXG4gICAgICBleGhhdXN0TWFwKCh7IGRhdGFzZXRVdWlkIH0pID0+XG4gICAgICAgIHRoaXMucGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlLmdldFVzZXJGZWVkYmFja3MoZGF0YXNldFV1aWQpLnBpcGUoXG4gICAgICAgICAgbWFwKCh1c2VyRmVlZGJhY2tzKSA9PlxuICAgICAgICAgICAgTWRWaWV3QWN0aW9ucy5sb2FkVXNlckZlZWRiYWNrc1N1Y2Nlc3MoeyB1c2VyRmVlZGJhY2tzIH0pXG4gICAgICAgICAgKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT5cbiAgICAgICAgICAgIG9mKFxuICAgICAgICAgICAgICBNZFZpZXdBY3Rpb25zLmxvYWRVc2VyRmVlZGJhY2tzRmFpbHVyZSh7XG4gICAgICAgICAgICAgICAgb3RoZXJFcnJvcjogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIClcblxuICBhZGRVc2VyRmVlZGJhY2skID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1kVmlld0FjdGlvbnMuYWRkVXNlckZlZWRiYWNrKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMucGxhdGZvcm1TZXJ2aWNlSW50ZXJmYWNlXG4gICAgICAgICAgLnBvc3RVc2VyRmVlZGJhY2tzKGFjdGlvbi51c2VyRmVlZGJhY2spXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKCkgPT5cbiAgICAgICAgICAgICAgTWRWaWV3QWN0aW9ucy5hZGRVc2VyRmVlZGJhY2tTdWNjZXNzKHtcbiAgICAgICAgICAgICAgICBkYXRhc2V0VXVpZDogYWN0aW9uLnVzZXJGZWVkYmFjay5tZXRhZGF0YVVVSUQsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKFxuICAgICAgICAgICAgICAgIE1kVmlld0FjdGlvbnMuYWRkVXNlckZlZWRiYWNrRmFpbHVyZSh7XG4gICAgICAgICAgICAgICAgICBvdGhlckVycm9yOiBlcnJvci5tZXNzYWdlLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKVxufVxuIl19