geonetwork-ui 2.4.0-dev.5cc37149 → 2.4.0-dev.614b0d9f

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 (810) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
  4. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +254 -0
  5. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
  6. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
  7. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +196 -0
  8. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +46 -0
  9. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +74 -0
  10. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
  11. package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +27 -0
  12. package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
  13. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +10 -3
  14. package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +1 -1
  15. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +6 -6
  16. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +7 -4
  17. package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +17 -29
  18. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +12 -17
  19. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +35 -7
  20. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
  21. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +76 -54
  22. package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +44 -5
  23. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +99 -32
  24. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +11 -1
  25. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +51 -7
  26. package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
  27. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  28. package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
  29. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  30. package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
  31. package/esm2022/libs/data-access/gn4/src/fixtures/site.fixtures.mjs +5 -5
  32. package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
  33. package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
  34. package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -4
  35. package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +6 -6
  36. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +1 -1
  37. package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +10 -7
  38. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +40 -50
  39. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +1 -1
  40. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +1 -1
  41. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  42. package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +3 -1
  43. package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +10 -5
  44. package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +10 -2
  45. package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
  46. package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
  47. package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
  48. package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +17 -0
  49. package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
  50. package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +95 -0
  51. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
  52. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +147 -0
  53. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
  54. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +31 -40
  55. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +11 -9
  56. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +79 -0
  57. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +148 -0
  58. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
  59. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +103 -0
  60. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +12 -16
  61. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +9 -8
  62. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +140 -5
  63. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +41 -68
  64. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +17 -15
  65. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +45 -44
  66. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -3
  67. package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +13 -7
  68. package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +3 -3
  69. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +8 -8
  70. package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
  71. package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +6 -4
  72. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +201 -57
  73. package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
  74. package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
  75. package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +12 -7
  76. package/esm2022/libs/feature/map/src/index.mjs +2 -9
  77. package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
  78. package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +9 -15
  79. package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
  80. package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
  81. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +6 -6
  82. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +20 -19
  83. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +23 -14
  84. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +15 -14
  85. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +18 -13
  86. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +16 -11
  87. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
  88. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +9 -68
  89. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +43 -29
  90. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +43 -18
  91. package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
  92. package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
  93. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +12 -171
  94. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  95. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +21 -17
  96. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +14 -8
  97. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +40 -52
  98. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -2
  99. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +3 -3
  100. package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +48 -8
  101. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +6 -2
  102. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +7 -7
  103. package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +1 -6
  104. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
  105. package/esm2022/libs/ui/elements/src/index.mjs +3 -2
  106. package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
  107. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +2 -2
  108. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +1 -1
  109. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +2 -2
  110. package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +6 -5
  111. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  112. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +3 -3
  113. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +5 -11
  114. package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +3 -3
  115. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +5 -5
  116. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +11 -5
  117. package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
  118. package/esm2022/libs/ui/inputs/src/index.mjs +6 -1
  119. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +24 -7
  120. package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +5 -3
  121. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +8 -1
  122. package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +11 -4
  123. package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +9 -3
  124. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +26 -24
  125. package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
  126. package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +19 -15
  127. package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +6 -4
  128. package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +32 -0
  129. package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +7 -21
  130. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +6 -17
  131. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +4 -13
  132. package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +43 -0
  133. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  134. package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +5 -3
  135. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +3 -3
  136. package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
  137. package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
  138. package/esm2022/libs/ui/map/src/index.mjs +4 -3
  139. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +8 -6
  140. package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +137 -0
  141. package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
  142. package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
  143. package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
  144. package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
  145. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +33 -13
  146. package/esm2022/libs/ui/widgets/src/index.mjs +2 -1
  147. package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
  148. package/esm2022/libs/util/app-config/src/index.mjs +2 -1
  149. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
  150. package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +27 -0
  151. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +1 -1
  152. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
  153. package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +2 -1
  154. package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
  155. package/esm2022/translations/de.json +107 -12
  156. package/esm2022/translations/en.json +107 -12
  157. package/esm2022/translations/es.json +104 -9
  158. package/esm2022/translations/fr.json +118 -23
  159. package/esm2022/translations/it.json +107 -12
  160. package/esm2022/translations/nl.json +104 -9
  161. package/esm2022/translations/pt.json +104 -9
  162. package/fesm2022/geonetwork-ui.mjs +10873 -8397
  163. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  164. package/libs/api/metadata-converter/src/index.d.ts +3 -0
  165. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  166. package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
  167. package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
  168. package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
  169. package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
  170. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
  171. package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
  172. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
  173. package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
  174. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
  175. package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
  176. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +20 -0
  177. package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
  178. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +9 -0
  179. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
  180. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
  181. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
  182. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
  183. package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
  184. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
  185. package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
  186. package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
  187. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
  188. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  189. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +2 -6
  190. package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -1
  191. package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
  192. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +2 -2
  193. package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
  194. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts +1 -2
  195. package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
  196. package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
  197. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +12 -6
  198. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  199. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
  200. package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
  201. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +13 -12
  202. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  203. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +59 -0
  204. package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
  205. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +19 -8
  206. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  207. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  208. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +22 -2
  209. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  210. package/libs/common/domain/src/lib/model/record/contact.model.d.ts +2 -1
  211. package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
  212. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +9 -7
  213. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  214. package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
  215. package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
  216. package/libs/common/domain/src/lib/platform.service.interface.d.ts +16 -0
  217. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  218. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +24 -0
  219. package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
  220. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
  221. package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
  222. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
  223. package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
  224. package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
  225. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +2 -1
  226. package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
  227. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
  228. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  229. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +10 -9
  230. package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
  231. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +13 -20
  232. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  233. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
  234. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  235. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
  236. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  237. package/libs/feature/editor/src/index.d.ts +1 -0
  238. package/libs/feature/editor/src/index.d.ts.map +1 -1
  239. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +6 -0
  240. package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
  241. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +5 -0
  242. package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
  243. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +5 -4
  244. package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
  245. package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
  246. package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
  247. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
  248. package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
  249. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
  250. package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
  251. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
  252. package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
  253. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
  254. package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
  255. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
  256. package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
  257. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
  258. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
  259. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +41 -0
  260. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -0
  261. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
  262. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
  263. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +11 -19
  264. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
  265. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
  266. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
  267. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +15 -0
  268. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
  269. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
  270. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
  271. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
  272. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -0
  273. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
  274. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
  275. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
  276. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
  277. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
  278. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
  279. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
  280. 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
  281. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
  282. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
  283. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +5 -5
  284. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
  285. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +18 -20
  286. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  287. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -2
  288. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  289. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +7 -7
  290. package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
  291. package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
  292. package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
  293. package/libs/feature/editor/src/lib/feature-editor.module.d.ts +2 -1
  294. package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
  295. package/libs/feature/editor/src/lib/fields.config.d.ts +54 -2
  296. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  297. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +42 -0
  298. package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
  299. package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
  300. package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
  301. package/libs/feature/editor/src/lib/services/editor.service.d.ts +4 -3
  302. package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
  303. package/libs/feature/map/src/index.d.ts +1 -8
  304. package/libs/feature/map/src/index.d.ts.map +1 -1
  305. package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
  306. package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
  307. package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
  308. package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
  309. package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
  310. package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
  311. package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
  312. package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
  313. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
  314. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
  315. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +8 -10
  316. package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
  317. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
  318. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
  319. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +3 -3
  320. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  321. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +2 -2
  322. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
  323. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +2 -2
  324. package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
  325. package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
  326. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  327. package/libs/feature/map/src/lib/feature-map.module.d.ts +12 -23
  328. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  329. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
  330. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
  331. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +5 -4
  332. package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
  333. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
  334. package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
  335. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
  336. package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
  337. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
  338. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  339. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
  340. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  341. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +10 -7
  342. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  343. package/libs/feature/record/src/lib/feature-record.module.d.ts +13 -11
  344. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  345. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +14 -20
  346. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  347. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  348. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  349. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +15 -4
  350. package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
  351. package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -0
  352. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  353. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
  354. package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
  355. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +9 -10
  356. package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
  357. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
  358. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
  359. package/libs/ui/elements/src/index.d.ts +2 -1
  360. package/libs/ui/elements/src/index.d.ts.map +1 -1
  361. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
  362. package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
  363. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
  364. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  365. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
  366. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  367. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
  368. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  369. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
  370. package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
  371. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
  372. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  373. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
  374. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +8 -6
  375. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  376. package/libs/ui/inputs/src/index.d.ts +5 -0
  377. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  378. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +9 -1
  379. package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
  380. package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -1
  381. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  382. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  383. package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
  384. package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
  385. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
  386. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
  387. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
  388. package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
  389. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
  390. package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
  391. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
  392. package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
  393. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +16 -0
  394. package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
  395. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
  396. package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
  397. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
  398. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  399. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +33 -35
  400. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  401. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +18 -0
  402. package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
  403. package/libs/ui/layout/src/index.d.ts +2 -0
  404. package/libs/ui/layout/src/index.d.ts.map +1 -1
  405. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
  406. package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
  407. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
  408. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
  409. package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
  410. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
  411. package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
  412. package/libs/ui/map/src/index.d.ts +3 -2
  413. package/libs/ui/map/src/index.d.ts.map +1 -1
  414. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
  415. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  416. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
  417. package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
  418. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
  419. package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
  420. package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
  421. package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
  422. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts +3 -3
  423. package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
  424. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -0
  425. package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
  426. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +11 -5
  427. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  428. package/libs/ui/widgets/src/index.d.ts +1 -0
  429. package/libs/ui/widgets/src/index.d.ts.map +1 -1
  430. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
  431. package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
  432. package/libs/util/app-config/src/index.d.ts +1 -0
  433. package/libs/util/app-config/src/index.d.ts.map +1 -1
  434. package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
  435. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  436. package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
  437. package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
  438. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  439. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  440. package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
  441. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  442. package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
  443. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
  444. package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
  445. package/package.json +5 -3
  446. package/src/libs/api/metadata-converter/src/index.ts +3 -0
  447. package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
  448. package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
  449. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +378 -0
  450. package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
  451. package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
  452. package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +370 -0
  453. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +95 -0
  454. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
  455. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
  456. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
  457. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +97 -0
  458. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
  459. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/update-frequency.mapper.ts +67 -0
  460. package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
  461. package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +68 -0
  462. package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
  463. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +272 -0
  464. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +7 -2
  465. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +6 -2
  466. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +38 -13
  467. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +6 -2
  468. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +110 -0
  469. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +85 -0
  470. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +73 -0
  471. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +18 -16
  472. package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +2 -6
  473. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +5 -6
  474. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +12 -4
  475. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +21 -43
  476. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +11 -16
  477. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +85 -17
  478. package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
  479. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +203 -157
  480. package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +50 -7
  481. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +163 -59
  482. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +12 -1
  483. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +90 -15
  484. package/src/libs/common/domain/src/lib/model/record/contact.model.ts +29 -1
  485. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +10 -8
  486. package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
  487. package/src/libs/common/domain/src/lib/platform.service.interface.ts +30 -0
  488. package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +32 -0
  489. package/src/libs/common/fixtures/src/index.ts +5 -1
  490. package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
  491. package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
  492. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
  493. package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
  494. package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1 -3
  495. package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
  496. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
  497. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
  498. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
  499. package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
  500. package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
  501. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
  502. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
  503. package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
  504. package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
  505. package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
  506. package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +37 -3
  507. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
  508. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +9 -9
  509. package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
  510. package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
  511. package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
  512. package/src/libs/common/fixtures/src/lib/user.fixtures.ts +32 -15
  513. package/src/libs/data-access/gn4/src/fixtures/site.fixtures.ts +4 -4
  514. package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
  515. package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
  516. package/src/libs/data-access/gn4/src/spec.yaml +0 -8
  517. package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +5 -1
  518. package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
  519. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
  520. package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +6 -2
  521. package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
  522. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
  523. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +38 -78
  524. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
  525. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
  526. package/src/libs/feature/editor/src/index.ts +1 -0
  527. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +7 -0
  528. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +28 -6
  529. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +13 -1
  530. package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
  531. package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
  532. package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
  533. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
  534. package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +18 -0
  535. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
  536. package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
  537. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +47 -0
  538. package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +132 -0
  539. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
  540. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
  541. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css +4 -0
  542. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +66 -0
  543. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +210 -0
  544. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
  545. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
  546. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +7 -16
  547. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +44 -45
  548. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
  549. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
  550. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -0
  551. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +86 -0
  552. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +34 -0
  553. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +182 -0
  554. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
  555. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
  556. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
  557. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
  558. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
  559. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +122 -0
  560. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
  561. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
  562. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
  563. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
  564. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
  565. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
  566. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
  567. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +31 -4
  568. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +43 -86
  569. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
  570. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
  571. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +17 -15
  572. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +112 -70
  573. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +52 -44
  574. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -2
  575. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +52 -9
  576. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
  577. package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
  578. package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
  579. package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
  580. package/src/libs/feature/editor/src/lib/feature-editor.module.ts +2 -1
  581. package/src/libs/feature/editor/src/lib/fields.config.ts +240 -57
  582. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +65 -0
  583. package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
  584. package/src/libs/feature/editor/src/lib/services/editor.service.ts +22 -7
  585. package/src/libs/feature/map/src/index.ts +1 -8
  586. package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
  587. package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
  588. package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
  589. package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
  590. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
  591. package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +23 -22
  592. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +22 -11
  593. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
  594. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +21 -19
  595. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
  596. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +17 -10
  597. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
  598. package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +17 -10
  599. package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
  600. package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -41
  601. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
  602. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +2 -2
  603. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +39 -6
  604. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.css +0 -0
  605. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
  606. package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
  607. package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
  608. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -232
  609. package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
  610. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +29 -20
  611. package/src/libs/feature/record/src/lib/feature-record.module.ts +11 -3
  612. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +4 -4
  613. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +45 -72
  614. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +5 -1
  615. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
  616. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +4 -1
  617. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +66 -3
  618. package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
  619. package/src/libs/feature/search/src/lib/state/search.facade.ts +6 -0
  620. package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
  621. package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +0 -3
  622. package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
  623. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
  624. package/src/libs/ui/elements/src/index.ts +2 -1
  625. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
  626. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
  627. package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
  628. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
  629. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
  630. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
  631. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
  632. package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
  633. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
  634. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +12 -8
  635. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
  636. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
  637. package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
  638. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
  639. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +8 -2
  640. package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
  641. package/src/libs/ui/inputs/src/index.ts +5 -0
  642. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -18
  643. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +38 -24
  644. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +19 -4
  645. package/src/libs/ui/inputs/src/lib/badge/badge.component.html +12 -3
  646. package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +2 -1
  647. package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
  648. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
  649. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -6
  650. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +7 -1
  651. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
  652. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +28 -23
  653. package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +7 -1
  654. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
  655. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
  656. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
  657. package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
  658. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
  659. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
  660. package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
  661. package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +5 -1
  662. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +4 -3
  663. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +0 -1
  664. package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +1 -2
  665. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
  666. package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
  667. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
  668. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
  669. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -6
  670. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
  671. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +37 -0
  672. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +33 -0
  673. package/src/libs/ui/layout/src/index.ts +2 -0
  674. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
  675. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
  676. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +1 -0
  677. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
  678. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
  679. package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
  680. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
  681. package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.ts +15 -18
  682. package/src/libs/ui/map/src/index.ts +3 -2
  683. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
  684. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
  685. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
  686. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +203 -0
  687. package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
  688. package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
  689. package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
  690. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
  691. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +26 -0
  692. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
  693. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +24 -3
  694. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +31 -18
  695. package/src/libs/ui/widgets/src/index.ts +1 -0
  696. package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
  697. package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
  698. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
  699. package/src/libs/util/app-config/src/index.ts +1 -0
  700. package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
  701. package/src/libs/util/app-config/src/lib/map-layers.ts +31 -0
  702. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
  703. package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
  704. package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
  705. package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
  706. package/tailwind.base.config.js +1 -0
  707. package/tailwind.base.css +51 -7
  708. package/translations/de.json +107 -12
  709. package/translations/en.json +107 -12
  710. package/translations/es.json +104 -9
  711. package/translations/fr.json +118 -23
  712. package/translations/it.json +107 -12
  713. package/translations/nl.json +104 -9
  714. package/translations/pt.json +104 -9
  715. package/translations/sk.json +105 -10
  716. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
  717. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
  718. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
  719. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
  720. package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
  721. package/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
  722. package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
  723. package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
  724. package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
  725. package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
  726. package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
  727. package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
  728. package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
  729. package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
  730. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
  731. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
  732. package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
  733. package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
  734. package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
  735. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
  736. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +0 -1
  737. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
  738. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
  739. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
  740. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts.map +0 -1
  741. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
  742. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
  743. package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
  744. package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
  745. package/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
  746. package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
  747. package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
  748. package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
  749. package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
  750. package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
  751. package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
  752. package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
  753. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
  754. package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
  755. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
  756. package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
  757. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
  758. package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
  759. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
  760. package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
  761. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
  762. package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
  763. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
  764. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
  765. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
  766. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
  767. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
  768. package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
  769. package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
  770. package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
  771. package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
  772. package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
  773. package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
  774. package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
  775. package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
  776. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
  777. package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
  778. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
  779. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
  780. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
  781. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
  782. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
  783. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
  784. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
  785. package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
  786. package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
  787. package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
  788. package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
  789. package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
  790. package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
  791. package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
  792. package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
  793. package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
  794. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
  795. package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
  796. package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
  797. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
  798. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
  799. package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
  800. package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
  801. package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
  802. /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
  803. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → generic-keywords/generic-keywords.component.css} +0 -0
  804. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → import-record/import-record.component.css} +0 -0
  805. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-resource-card/online-resource-card.component.css} +0 -0
  806. /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.css} +0 -0
  807. /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
  808. /package/src/libs/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css} +0 -0
  809. /package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +0 -0
  810. /package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +0 -0
@@ -1,172 +1,27 @@
1
- import { HttpClient } from '@angular/common/http';
2
1
  import { Injectable } from '@angular/core';
3
- import { extend, isEmpty } from 'ol/extent';
2
+ import { extend } from 'ol/extent';
4
3
  import GeoJSON from 'ol/format/GeoJSON';
5
- import Map from 'ol/Map';
6
4
  import { transformExtent } from 'ol/proj';
7
- import ImageWMS from 'ol/source/ImageWMS';
8
- import TileWMS from 'ol/source/TileWMS';
9
- import VectorSource from 'ol/source/Vector';
10
- import { defaults, DragPan, MouseWheelZoom } from 'ol/interaction';
11
- import { mouseOnly, noModifierKeys, platformModifierKeyOnly, primaryAction, } from 'ol/events/condition';
12
- import { map } from 'rxjs/operators';
13
- import { ProxyService } from '../../../../../../libs/util/shared/src';
14
- import { WmsEndpoint, WmtsEndpoint } from '@camptocamp/ogc-client';
15
- import { LONLAT_CRS_CODES } from '../constant/projections';
16
- import { fromEPSGCode, register } from 'ol/proj/proj4';
17
- import proj4 from 'proj4/dist/proj4';
18
- import { defaults as defaultControls } from 'ol/control/defaults';
19
5
  import * as i0 from "@angular/core";
20
- import * as i1 from "@angular/common/http";
21
- import * as i2 from "../../../../../../libs/util/shared/src";
22
- const FEATURE_PROJECTION = 'EPSG:3857';
23
- const DATA_PROJECTION = 'EPSG:4326';
24
6
  const GEOJSON = new GeoJSON();
25
7
  export class MapUtilsService {
26
- constructor(http, proxy) {
27
- this.http = http;
28
- this.proxy = proxy;
29
- this.readFeatureCollection = (featureCollection, featureProjection = FEATURE_PROJECTION, dataProjection = DATA_PROJECTION) => {
30
- return GEOJSON.readFeatures(featureCollection, {
31
- featureProjection,
32
- dataProjection,
33
- });
34
- };
35
- }
36
- createEmptyMap() {
37
- return new Map({
38
- controls: defaultControls({
39
- attribution: true,
40
- attributionOptions: { collapsible: false },
41
- }),
42
- pixelRatio: 1,
43
- });
44
- }
45
- isWMSLayer(layer) {
46
- return (layer.getSource() instanceof TileWMS ||
47
- layer.getSource() instanceof ImageWMS);
48
- }
49
- getGFIUrl(layer, map, coordinate) {
50
- const view = map.getView();
51
- const projection = view.getProjection();
52
- const resolution = view.getResolution();
53
- const source = layer.getSource();
54
- const params = {
55
- ...source.getParams(),
56
- INFO_FORMAT: 'application/json',
57
- };
58
- return source.getFeatureInfoUrl(coordinate, resolution, projection, params);
59
- }
60
- getVectorFeaturesFromClick(olMap, event) {
61
- const features = [];
62
- const hit = olMap.forEachFeatureAtPixel(event.pixel, (feature) => {
63
- return feature;
64
- }, { layerFilter: (layer) => layer.getSource() instanceof VectorSource });
65
- if (hit) {
66
- features.push(hit);
67
- }
68
- return features;
69
- }
70
- getGFIFeaturesObservablesFromClick(olMap, event) {
71
- const wmsLayers = olMap.getLayers().getArray().filter(this.isWMSLayer);
72
- if (wmsLayers.length > 0) {
73
- const { coordinate } = event;
74
- const gfiUrls = wmsLayers.reduce((urls, layer) => [...urls, this.getGFIUrl(layer, olMap, coordinate)], []);
75
- return gfiUrls.map((url) => this.http
76
- .get(url)
77
- .pipe(map((collection) => this.readFeatureCollection(collection))));
78
- }
79
- else {
80
- return [];
81
- }
82
- }
83
- /**
84
- * Will emit `null` if no extent could be computed
85
- */
86
- async getLayerExtent(layer) {
87
- let latLonExtent;
88
- if (layer &&
89
- layer.type === 'geojson' &&
90
- 'data' in layer &&
91
- typeof layer.data === 'object' &&
92
- layer.data.features[0] &&
93
- layer.data.features[0].geometry) {
94
- latLonExtent = new GeoJSON()
95
- .readFeatures(layer.data)
96
- .map((feature) => feature.getGeometry())
97
- .filter((geom) => !!geom)
98
- .reduce((prev, curr) => prev ? extend(prev, curr.getExtent()) : curr.getExtent(), null);
99
- }
100
- else if (layer && layer.type === 'wms') {
101
- latLonExtent = await this.getWmsLayerExtent(layer);
102
- }
103
- else if (layer && layer.type === 'wmts') {
104
- // TODO: isolate this in utils service
105
- latLonExtent = await new WmtsEndpoint(layer.url)
106
- .isReady()
107
- .then((endpoint) => {
108
- const layerName = endpoint.getSingleLayerName() ?? layer.name;
109
- const wmtsLayer = endpoint.getLayerByName(layerName);
110
- return wmtsLayer.latLonBoundingBox;
111
- });
112
- }
113
- else {
114
- return null;
115
- }
116
- if (!latLonExtent || isEmpty(latLonExtent)) {
117
- return null;
118
- }
119
- return transformExtent(latLonExtent, 'EPSG:4326', 'EPSG:3857');
120
- }
121
- async getWmsLayerExtent(layer) {
122
- const endpoint = await new WmsEndpoint(this.proxy.getProxiedUrl(layer.url)).isReady();
123
- const { boundingBoxes } = endpoint.getLayerByName(layer.name);
124
- if (!Object.keys(boundingBoxes).length) {
125
- return null;
126
- }
127
- const lonLatCRS = Object.keys(boundingBoxes)?.find((crs) => LONLAT_CRS_CODES.includes(crs));
128
- if (lonLatCRS) {
129
- return boundingBoxes[lonLatCRS];
130
- }
131
- else {
132
- const availableEPSGCode = Object.keys(boundingBoxes)[0];
133
- register(proj4);
134
- const proj = await fromEPSGCode(availableEPSGCode);
135
- return transformExtent(boundingBoxes[availableEPSGCode], proj, 'EPSG:4326');
136
- }
137
- }
138
- prioritizePageScroll(interactions) {
139
- interactions.clear();
140
- interactions.extend(defaults({
141
- // remove rotate interactions
142
- altShiftDragRotate: false,
143
- pinchRotate: false,
144
- // replace drag and zoom interactions
145
- dragPan: false,
146
- mouseWheelZoom: false,
147
- })
148
- .extend([
149
- new DragPan({
150
- condition: dragPanCondition,
151
- }),
152
- new MouseWheelZoom({
153
- condition: mouseWheelZoomCondition,
154
- }),
155
- ])
156
- .getArray());
157
- }
158
8
  getRecordExtent(record) {
159
9
  if (!('spatialExtents' in record) || record.spatialExtents.length === 0) {
160
10
  return null;
161
11
  }
162
- // transform an array of geojson geometries into a bbox
12
+ // extend all the spatial extents into an including bbox
163
13
  const totalExtent = record.spatialExtents.reduce((prev, curr) => {
164
- const geom = GEOJSON.readGeometry(curr.geometry);
165
- return extend(prev, geom.getExtent());
14
+ if ('bbox' in curr)
15
+ return extend(prev, curr.bbox);
16
+ else if ('geometry' in curr) {
17
+ const geom = GEOJSON.readGeometry(curr.geometry);
18
+ return extend(prev, geom.getExtent());
19
+ }
20
+ return prev;
166
21
  }, [Infinity, Infinity, -Infinity, -Infinity]);
167
22
  return transformExtent(totalExtent, 'EPSG:4326', 'EPSG:3857');
168
23
  }
169
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapUtilsService, deps: [{ token: i1.HttpClient }, { token: i2.ProxyService }], target: i0.ɵɵFactoryTarget.Injectable }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapUtilsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
170
25
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapUtilsService, providedIn: 'root' }); }
171
26
  }
172
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapUtilsService, decorators: [{
@@ -174,19 +29,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
174
29
  args: [{
175
30
  providedIn: 'root',
176
31
  }]
177
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.ProxyService }]; } });
178
- export function dragPanCondition(event) {
179
- const dragPanCondition = this.getPointerCount() === 2 || mouseOnly(event);
180
- if (!dragPanCondition) {
181
- this.getMap().dispatchEvent('mapmuted');
182
- }
183
- // combine the condition with the default DragPan conditions
184
- return dragPanCondition && noModifierKeys(event) && primaryAction(event);
185
- }
186
- export function mouseWheelZoomCondition(event) {
187
- if (!platformModifierKeyOnly(event) && event.type === 'wheel') {
188
- this.getMap().dispatchEvent('mapmuted');
189
- }
190
- return platformModifierKeyOnly(event);
191
- }
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXV0aWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbWFwL3NyYy9saWIvdXRpbHMvbWFwLXV0aWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFMUMsT0FBTyxFQUFFLE1BQU0sRUFBVSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFbkQsT0FBTyxPQUFPLE1BQU0sbUJBQW1CLENBQUE7QUFHdkMsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFBO0FBQ3hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFFekMsT0FBTyxRQUFRLE1BQU0sb0JBQW9CLENBQUE7QUFDekMsT0FBTyxPQUFPLE1BQU0sbUJBQW1CLENBQUE7QUFDdkMsT0FBTyxZQUFZLE1BQU0sa0JBQWtCLENBQUE7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQWUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDL0UsT0FBTyxFQUNMLFNBQVMsRUFDVCxjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLGFBQWEsR0FDZCxNQUFNLHFCQUFxQixDQUFBO0FBRTVCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQVFwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN0RCxPQUFPLEtBQUss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QVUsQ0FBQyxDQUFBO0tBQ3hDO0lBQ0QsNERBQTREO0lBQzVELE9BQU8sZ0JBQWdCLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUMxRSxDQUFDO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUVyQyxLQUErQjtJQUUvQixJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7UUFDN0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQTtLQUN4QztJQUNELE9BQU8sdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUE7QUFDdkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHR5cGUgeyBGZWF0dXJlQ29sbGVjdGlvbiB9IGZyb20gJ2dlb2pzb24nXG5pbXBvcnQgeyBleHRlbmQsIEV4dGVudCwgaXNFbXB0eSB9IGZyb20gJ29sL2V4dGVudCdcbmltcG9ydCBGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnXG5pbXBvcnQgR2VvSlNPTiBmcm9tICdvbC9mb3JtYXQvR2VvSlNPTidcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSdcbmltcG9ydCBMYXllciBmcm9tICdvbC9sYXllci9MYXllcidcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJ1xuaW1wb3J0IHsgdHJhbnNmb3JtRXh0ZW50IH0gZnJvbSAnb2wvcHJvaidcbmltcG9ydCBTb3VyY2UgZnJvbSAnb2wvc291cmNlL1NvdXJjZSdcbmltcG9ydCBJbWFnZVdNUyBmcm9tICdvbC9zb3VyY2UvSW1hZ2VXTVMnXG5pbXBvcnQgVGlsZVdNUyBmcm9tICdvbC9zb3VyY2UvVGlsZVdNUydcbmltcG9ydCBWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3RvcidcbmltcG9ydCB7IGRlZmF1bHRzLCBEcmFnUGFuLCBJbnRlcmFjdGlvbiwgTW91c2VXaGVlbFpvb20gfSBmcm9tICdvbC9pbnRlcmFjdGlvbidcbmltcG9ydCB7XG4gIG1vdXNlT25seSxcbiAgbm9Nb2RpZmllcktleXMsXG4gIHBsYXRmb3JtTW9kaWZpZXJLZXlPbmx5LFxuICBwcmltYXJ5QWN0aW9uLFxufSBmcm9tICdvbC9ldmVudHMvY29uZGl0aW9uJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7XG4gIE1hcENvbnRleHRMYXllck1vZGVsLFxuICBNYXBDb250ZXh0TGF5ZXJXbXNNb2RlbCxcbn0gZnJvbSAnLi4vbWFwLWNvbnRleHQvbWFwLWNvbnRleHQubW9kZWwnXG5pbXBvcnQgQ29sbGVjdGlvbiBmcm9tICdvbC9Db2xsZWN0aW9uJ1xuaW1wb3J0IE1hcEJyb3dzZXJFdmVudCBmcm9tICdvbC9NYXBCcm93c2VyRXZlbnQnXG5pbXBvcnQgeyBDYXRhbG9nUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgUHJveHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBXbXNFbmRwb2ludCwgV210c0VuZHBvaW50IH0gZnJvbSAnQGNhbXB0b2NhbXAvb2djLWNsaWVudCdcbmltcG9ydCB7IExPTkxBVF9DUlNfQ09ERVMgfSBmcm9tICcuLi9jb25zdGFudC9wcm9qZWN0aW9ucydcbmltcG9ydCB7IGZyb21FUFNHQ29kZSwgcmVnaXN0ZXIgfSBmcm9tICdvbC9wcm9qL3Byb2o0J1xuaW1wb3J0IHByb2o0IGZyb20gJ3Byb2o0L2Rpc3QvcHJvajQnXG5pbXBvcnQgeyBkZWZhdWx0cyBhcyBkZWZhdWx0Q29udHJvbHMgfSBmcm9tICdvbC9jb250cm9sL2RlZmF1bHRzJ1xuXG5jb25zdCBGRUFUVVJFX1BST0pFQ1RJT04gPSAnRVBTRzozODU3J1xuY29uc3QgREFUQV9QUk9KRUNUSU9OID0gJ0VQU0c6NDMyNidcblxuY29uc3QgR0VPSlNPTiA9IG5ldyBHZW9KU09OKClcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE1hcFV0aWxzU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBwcm94eTogUHJveHlTZXJ2aWNlKSB7fVxuXG4gIGNyZWF0ZUVtcHR5TWFwKCk6IE1hcCB7XG4gICAgcmV0dXJuIG5ldyBNYXAoe1xuICAgICAgY29udHJvbHM6IGRlZmF1bHRDb250cm9scyh7XG4gICAgICAgIGF0dHJpYnV0aW9uOiB0cnVlLFxuICAgICAgICBhdHRyaWJ1dGlvbk9wdGlvbnM6IHsgY29sbGFwc2libGU6IGZhbHNlIH0sXG4gICAgICB9KSxcbiAgICAgIHBpeGVsUmF0aW86IDEsXG4gICAgfSlcbiAgfVxuXG4gIHJlYWRGZWF0dXJlQ29sbGVjdGlvbiA9IChcbiAgICBmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24sXG4gICAgZmVhdHVyZVByb2plY3Rpb24gPSBGRUFUVVJFX1BST0pFQ1RJT04sXG4gICAgZGF0YVByb2plY3Rpb24gPSBEQVRBX1BST0pFQ1RJT05cbiAgKTogRmVhdHVyZTxHZW9tZXRyeT5bXSA9PiB7XG4gICAgcmV0dXJuIEdFT0pTT04ucmVhZEZlYXR1cmVzKGZlYXR1cmVDb2xsZWN0aW9uLCB7XG4gICAgICBmZWF0dXJlUHJvamVjdGlvbixcbiAgICAgIGRhdGFQcm9qZWN0aW9uLFxuICAgIH0pIGFzIEZlYXR1cmU8R2VvbWV0cnk+W11cbiAgfVxuXG4gIGlzV01TTGF5ZXIobGF5ZXI6IExheWVyPFNvdXJjZT4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgbGF5ZXIuZ2V0U291cmNlKCkgaW5zdGFuY2VvZiBUaWxlV01TIHx8XG4gICAgICBsYXllci5nZXRTb3VyY2UoKSBpbnN0YW5jZW9mIEltYWdlV01TXG4gICAgKVxuICB9XG5cbiAgZ2V0R0ZJVXJsKGxheWVyLCBtYXAsIGNvb3JkaW5hdGUpOiBzdHJpbmcge1xuICAgIGNvbnN0IHZpZXcgPSBtYXAuZ2V0VmlldygpXG4gICAgY29uc3QgcHJvamVjdGlvbiA9IHZpZXcuZ2V0UHJvamVjdGlvbigpXG4gICAgY29uc3QgcmVzb2x1dGlvbiA9IHZpZXcuZ2V0UmVzb2x1dGlvbigpXG4gICAgY29uc3Qgc291cmNlID0gbGF5ZXIuZ2V0U291cmNlKClcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICAuLi5zb3VyY2UuZ2V0UGFyYW1zKCksXG4gICAgICBJTkZPX0ZPUk1BVDogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIH1cbiAgICByZXR1cm4gc291cmNlLmdldEZlYXR1cmVJbmZvVXJsKGNvb3JkaW5hdGUsIHJlc29sdXRpb24sIHByb2plY3Rpb24sIHBhcmFtcylcbiAgfVxuXG4gIGdldFZlY3RvckZlYXR1cmVzRnJvbUNsaWNrKG9sTWFwLCBldmVudCk6IEZlYXR1cmU8R2VvbWV0cnk+W10ge1xuICAgIGNvbnN0IGZlYXR1cmVzID0gW11cbiAgICBjb25zdCBoaXQgPSBvbE1hcC5mb3JFYWNoRmVhdHVyZUF0UGl4ZWwoXG4gICAgICBldmVudC5waXhlbCxcbiAgICAgIChmZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PikgPT4ge1xuICAgICAgICByZXR1cm4gZmVhdHVyZVxuICAgICAgfSxcbiAgICAgIHsgbGF5ZXJGaWx0ZXI6IChsYXllcikgPT4gbGF5ZXIuZ2V0U291cmNlKCkgaW5zdGFuY2VvZiBWZWN0b3JTb3VyY2UgfVxuICAgIClcbiAgICBpZiAoaGl0KSB7XG4gICAgICBmZWF0dXJlcy5wdXNoKGhpdClcbiAgICB9XG4gICAgcmV0dXJuIGZlYXR1cmVzXG4gIH1cblxuICBnZXRHRklGZWF0dXJlc09ic2VydmFibGVzRnJvbUNsaWNrKFxuICAgIG9sTWFwOiBNYXAsXG4gICAgZXZlbnQ6IE1hcEJyb3dzZXJFdmVudDxQb2ludGVyRXZlbnQ+XG4gICk6IE9ic2VydmFibGU8RmVhdHVyZTxHZW9tZXRyeT5bXT5bXSB7XG4gICAgY29uc3Qgd21zTGF5ZXJzID0gb2xNYXAuZ2V0TGF5ZXJzKCkuZ2V0QXJyYXkoKS5maWx0ZXIodGhpcy5pc1dNU0xheWVyKVxuXG4gICAgaWYgKHdtc0xheWVycy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCB7IGNvb3JkaW5hdGUgfSA9IGV2ZW50XG4gICAgICBjb25zdCBnZmlVcmxzID0gd21zTGF5ZXJzLnJlZHVjZShcbiAgICAgICAgKHVybHMsIGxheWVyKSA9PiBbLi4udXJscywgdGhpcy5nZXRHRklVcmwobGF5ZXIsIG9sTWFwLCBjb29yZGluYXRlKV0sXG5cbiAgICAgICAgW11cbiAgICAgIClcbiAgICAgIHJldHVybiBnZmlVcmxzLm1hcCgodXJsKSA9PlxuICAgICAgICB0aGlzLmh0dHBcbiAgICAgICAgICAuZ2V0PEZlYXR1cmVDb2xsZWN0aW9uPih1cmwpXG4gICAgICAgICAgLnBpcGUobWFwKChjb2xsZWN0aW9uKSA9PiB0aGlzLnJlYWRGZWF0dXJlQ29sbGVjdGlvbihjb2xsZWN0aW9uKSkpXG4gICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaWxsIGVtaXQgYG51bGxgIGlmIG5vIGV4dGVudCBjb3VsZCBiZSBjb21wdXRlZFxuICAgKi9cbiAgYXN5bmMgZ2V0TGF5ZXJFeHRlbnQobGF5ZXI6IE1hcENvbnRleHRMYXllck1vZGVsKTogUHJvbWlzZTxFeHRlbnQgfCBudWxsPiB7XG4gICAgbGV0IGxhdExvbkV4dGVudDogRXh0ZW50XG4gICAgaWYgKFxuICAgICAgbGF5ZXIgJiZcbiAgICAgIGxheWVyLnR5cGUgPT09ICdnZW9qc29uJyAmJlxuICAgICAgJ2RhdGEnIGluIGxheWVyICYmXG4gICAgICB0eXBlb2YgbGF5ZXIuZGF0YSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIGxheWVyLmRhdGEuZmVhdHVyZXNbMF0gJiZcbiAgICAgIGxheWVyLmRhdGEuZmVhdHVyZXNbMF0uZ2VvbWV0cnlcbiAgICApIHtcbiAgICAgIGxhdExvbkV4dGVudCA9IG5ldyBHZW9KU09OKClcbiAgICAgICAgLnJlYWRGZWF0dXJlcyhsYXllci5kYXRhKVxuICAgICAgICAubWFwKChmZWF0dXJlKSA9PiBmZWF0dXJlLmdldEdlb21ldHJ5KCkpXG4gICAgICAgIC5maWx0ZXIoKGdlb20pID0+ICEhZ2VvbSlcbiAgICAgICAgLnJlZHVjZShcbiAgICAgICAgICAocHJldiwgY3VycikgPT5cbiAgICAgICAgICAgIHByZXYgPyBleHRlbmQocHJldiwgY3Vyci5nZXRFeHRlbnQoKSkgOiBjdXJyLmdldEV4dGVudCgpLFxuICAgICAgICAgIG51bGwgYXMgRXh0ZW50XG4gICAgICAgIClcbiAgICB9IGVsc2UgaWYgKGxheWVyICYmIGxheWVyLnR5cGUgPT09ICd3bXMnKSB7XG4gICAgICBsYXRMb25FeHRlbnQgPSBhd2FpdCB0aGlzLmdldFdtc0xheWVyRXh0ZW50KGxheWVyKVxuICAgIH0gZWxzZSBpZiAobGF5ZXIgJiYgbGF5ZXIudHlwZSA9PT0gJ3dtdHMnKSB7XG4gICAgICAvLyBUT0RPOiBpc29sYXRlIHRoaXMgaW4gdXRpbHMgc2VydmljZVxuICAgICAgbGF0TG9uRXh0ZW50ID0gYXdhaXQgbmV3IFdtdHNFbmRwb2ludChsYXllci51cmwpXG4gICAgICAgIC5pc1JlYWR5KClcbiAgICAgICAgLnRoZW4oKGVuZHBvaW50KSA9PiB7XG4gICAgICAgICAgY29uc3QgbGF5ZXJOYW1lID0gZW5kcG9pbnQuZ2V0U2luZ2xlTGF5ZXJOYW1lKCkgPz8gbGF5ZXIubmFtZVxuICAgICAgICAgIGNvbnN0IHdtdHNMYXllciA9IGVuZHBvaW50LmdldExheWVyQnlOYW1lKGxheWVyTmFtZSlcbiAgICAgICAgICByZXR1cm4gd210c0xheWVyLmxhdExvbkJvdW5kaW5nQm94XG4gICAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGlmICghbGF0TG9uRXh0ZW50IHx8IGlzRW1wdHkobGF0TG9uRXh0ZW50KSkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgcmV0dXJuIHRyYW5zZm9ybUV4dGVudChsYXRMb25FeHRlbnQsICdFUFNHOjQzMjYnLCAnRVBTRzozODU3JylcbiAgfVxuXG4gIGFzeW5jIGdldFdtc0xheWVyRXh0ZW50KFxuICAgIGxheWVyOiBNYXBDb250ZXh0TGF5ZXJXbXNNb2RlbFxuICApOiBQcm9taXNlPEV4dGVudCB8IG51bGw+IHtcbiAgICBjb25zdCBlbmRwb2ludCA9IGF3YWl0IG5ldyBXbXNFbmRwb2ludChcbiAgICAgIHRoaXMucHJveHkuZ2V0UHJveGllZFVybChsYXllci51cmwpXG4gICAgKS5pc1JlYWR5KClcbiAgICBjb25zdCB7IGJvdW5kaW5nQm94ZXMgfSA9IGVuZHBvaW50LmdldExheWVyQnlOYW1lKGxheWVyLm5hbWUpXG4gICAgaWYgKCFPYmplY3Qua2V5cyhib3VuZGluZ0JveGVzKS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IGxvbkxhdENSUyA9IE9iamVjdC5rZXlzKGJvdW5kaW5nQm94ZXMpPy5maW5kKChjcnMpID0+XG4gICAgICBMT05MQVRfQ1JTX0NPREVTLmluY2x1ZGVzKGNycylcbiAgICApXG4gICAgaWYgKGxvbkxhdENSUykge1xuICAgICAgcmV0dXJuIGJvdW5kaW5nQm94ZXNbbG9uTGF0Q1JTXVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBhdmFpbGFibGVFUFNHQ29kZSA9IE9iamVjdC5rZXlzKGJvdW5kaW5nQm94ZXMpWzBdXG4gICAgICByZWdpc3Rlcihwcm9qNClcbiAgICAgIGNvbnN0IHByb2ogPSBhd2FpdCBmcm9tRVBTR0NvZGUoYXZhaWxhYmxlRVBTR0NvZGUpXG4gICAgICByZXR1cm4gdHJhbnNmb3JtRXh0ZW50KFxuICAgICAgICBib3VuZGluZ0JveGVzW2F2YWlsYWJsZUVQU0dDb2RlXSxcbiAgICAgICAgcHJvaixcbiAgICAgICAgJ0VQU0c6NDMyNidcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBwcmlvcml0aXplUGFnZVNjcm9sbChpbnRlcmFjdGlvbnM6IENvbGxlY3Rpb248SW50ZXJhY3Rpb24+KSB7XG4gICAgaW50ZXJhY3Rpb25zLmNsZWFyKClcbiAgICBpbnRlcmFjdGlvbnMuZXh0ZW5kKFxuICAgICAgZGVmYXVsdHMoe1xuICAgICAgICAvLyByZW1vdmUgcm90YXRlIGludGVyYWN0aW9uc1xuICAgICAgICBhbHRTaGlmdERyYWdSb3RhdGU6IGZhbHNlLFxuICAgICAgICBwaW5jaFJvdGF0ZTogZmFsc2UsXG4gICAgICAgIC8vIHJlcGxhY2UgZHJhZyBhbmQgem9vbSBpbnRlcmFjdGlvbnNcbiAgICAgICAgZHJhZ1BhbjogZmFsc2UsXG4gICAgICAgIG1vdXNlV2hlZWxab29tOiBmYWxzZSxcbiAgICAgIH0pXG4gICAgICAgIC5leHRlbmQoW1xuICAgICAgICAgIG5ldyBEcmFnUGFuKHtcbiAgICAgICAgICAgIGNvbmRpdGlvbjogZHJhZ1BhbkNvbmRpdGlvbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBuZXcgTW91c2VXaGVlbFpvb20oe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBtb3VzZVdoZWVsWm9vbUNvbmRpdGlvbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSlcbiAgICAgICAgLmdldEFycmF5KClcbiAgICApXG4gIH1cblxuICBnZXRSZWNvcmRFeHRlbnQocmVjb3JkOiBQYXJ0aWFsPENhdGFsb2dSZWNvcmQ+KTogRXh0ZW50IHtcbiAgICBpZiAoISgnc3BhdGlhbEV4dGVudHMnIGluIHJlY29yZCkgfHwgcmVjb3JkLnNwYXRpYWxFeHRlbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgLy8gdHJhbnNmb3JtIGFuIGFycmF5IG9mIGdlb2pzb24gZ2VvbWV0cmllcyBpbnRvIGEgYmJveFxuICAgIGNvbnN0IHRvdGFsRXh0ZW50ID0gcmVjb3JkLnNwYXRpYWxFeHRlbnRzLnJlZHVjZShcbiAgICAgIChwcmV2LCBjdXJyKSA9PiB7XG4gICAgICAgIGNvbnN0IGdlb20gPSBHRU9KU09OLnJlYWRHZW9tZXRyeShjdXJyLmdlb21ldHJ5KVxuICAgICAgICByZXR1cm4gZXh0ZW5kKHByZXYsIGdlb20uZ2V0RXh0ZW50KCkpXG4gICAgICB9LFxuICAgICAgW0luZmluaXR5LCBJbmZpbml0eSwgLUluZmluaXR5LCAtSW5maW5pdHldXG4gICAgKVxuICAgIHJldHVybiB0cmFuc2Zvcm1FeHRlbnQodG90YWxFeHRlbnQsICdFUFNHOjQzMjYnLCAnRVBTRzozODU3JylcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZHJhZ1BhbkNvbmRpdGlvbihcbiAgdGhpczogRHJhZ1BhbixcbiAgZXZlbnQ6IE1hcEJyb3dzZXJFdmVudDxQb2ludGVyRXZlbnQ+XG4pIHtcbiAgY29uc3QgZHJhZ1BhbkNvbmRpdGlvbiA9IHRoaXMuZ2V0UG9pbnRlckNvdW50KCkgPT09IDIgfHwgbW91c2VPbmx5KGV2ZW50KVxuICBpZiAoIWRyYWdQYW5Db25kaXRpb24pIHtcbiAgICB0aGlzLmdldE1hcCgpLmRpc3BhdGNoRXZlbnQoJ21hcG11dGVkJylcbiAgfVxuICAvLyBjb21iaW5lIHRoZSBjb25kaXRpb24gd2l0aCB0aGUgZGVmYXVsdCBEcmFnUGFuIGNvbmRpdGlvbnNcbiAgcmV0dXJuIGRyYWdQYW5Db25kaXRpb24gJiYgbm9Nb2RpZmllcktleXMoZXZlbnQpICYmIHByaW1hcnlBY3Rpb24oZXZlbnQpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb3VzZVdoZWVsWm9vbUNvbmRpdGlvbihcbiAgdGhpczogTW91c2VXaGVlbFpvb20sXG4gIGV2ZW50OiBNYXBCcm93c2VyRXZlbnQ8VUlFdmVudD5cbikge1xuICBpZiAoIXBsYXRmb3JtTW9kaWZpZXJLZXlPbmx5KGV2ZW50KSAmJiBldmVudC50eXBlID09PSAnd2hlZWwnKSB7XG4gICAgdGhpcy5nZXRNYXAoKS5kaXNwYXRjaEV2ZW50KCdtYXBtdXRlZCcpXG4gIH1cbiAgcmV0dXJuIHBsYXRmb3JtTW9kaWZpZXJLZXlPbmx5KGV2ZW50KVxufVxuIl19
32
+ }] });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXV0aWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbWFwL3NyYy9saWIvdXRpbHMvbWFwLXV0aWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsTUFBTSxFQUFVLE1BQU0sV0FBVyxDQUFBO0FBQzFDLE9BQU8sT0FBTyxNQUFNLG1CQUFtQixDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUE7O0FBR3pDLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7QUFLN0IsTUFBTSxPQUFPLGVBQWU7SUFDMUIsZUFBZSxDQUFDLE1BQThCO1FBQzVDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixJQUFJLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2RSxPQUFPLElBQUksQ0FBQTtTQUNaO1FBQ0Qsd0RBQXdEO1FBQ3hELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUM5QyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNiLElBQUksTUFBTSxJQUFJLElBQUk7Z0JBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtpQkFDN0MsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO2dCQUMzQixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtnQkFDaEQsT0FBTyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO2FBQ3RDO1lBQ0QsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDLEVBQ0QsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQzNDLENBQUE7UUFDRCxPQUFPLGVBQWUsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFBO0lBQy9ELENBQUM7K0dBbEJVLGVBQWU7bUhBQWYsZUFBZSxjQUZkLE1BQU07OzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBleHRlbmQsIEV4dGVudCB9IGZyb20gJ29sL2V4dGVudCdcbmltcG9ydCBHZW9KU09OIGZyb20gJ29sL2Zvcm1hdC9HZW9KU09OJ1xuaW1wb3J0IHsgdHJhbnNmb3JtRXh0ZW50IH0gZnJvbSAnb2wvcHJvaidcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbmNvbnN0IEdFT0pTT04gPSBuZXcgR2VvSlNPTigpXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBVdGlsc1NlcnZpY2Uge1xuICBnZXRSZWNvcmRFeHRlbnQocmVjb3JkOiBQYXJ0aWFsPENhdGFsb2dSZWNvcmQ+KTogRXh0ZW50IHtcbiAgICBpZiAoISgnc3BhdGlhbEV4dGVudHMnIGluIHJlY29yZCkgfHwgcmVjb3JkLnNwYXRpYWxFeHRlbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgLy8gZXh0ZW5kIGFsbCB0aGUgc3BhdGlhbCBleHRlbnRzIGludG8gYW4gaW5jbHVkaW5nIGJib3hcbiAgICBjb25zdCB0b3RhbEV4dGVudCA9IHJlY29yZC5zcGF0aWFsRXh0ZW50cy5yZWR1Y2UoXG4gICAgICAocHJldiwgY3VycikgPT4ge1xuICAgICAgICBpZiAoJ2Jib3gnIGluIGN1cnIpIHJldHVybiBleHRlbmQocHJldiwgY3Vyci5iYm94KVxuICAgICAgICBlbHNlIGlmICgnZ2VvbWV0cnknIGluIGN1cnIpIHtcbiAgICAgICAgICBjb25zdCBnZW9tID0gR0VPSlNPTi5yZWFkR2VvbWV0cnkoY3Vyci5nZW9tZXRyeSlcbiAgICAgICAgICByZXR1cm4gZXh0ZW5kKHByZXYsIGdlb20uZ2V0RXh0ZW50KCkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHByZXZcbiAgICAgIH0sXG4gICAgICBbSW5maW5pdHksIEluZmluaXR5LCAtSW5maW5pdHksIC1JbmZpbml0eV1cbiAgICApXG4gICAgcmV0dXJuIHRyYW5zZm9ybUV4dGVudCh0b3RhbEV4dGVudCwgJ0VQU0c6NDMyNicsICdFUFNHOjM4NTcnKVxuICB9XG59XG4iXX0=
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
51
51
  }], chartConfig$: [{
52
52
  type: Output
53
53
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN0RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7Ozs7Ozs7O0FBVXZDLE1BQU0sT0FBTyxpQkFBaUI7SUE0QjVCLFlBQW9CLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBMUJwQyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUE0QixJQUFJLENBQUMsQ0FBQTtRQUM3RSx5QkFBb0IsR0FBRyxhQUFhLENBQUM7WUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYTtTQUNoQyxDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDaEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsRUFBRSxHQUFHLFlBQVksQ0FBQyxDQUFBO1lBQ3pDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDekQsT0FBTyxDQUFDLENBQUE7UUFDVixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0QscUJBQWdCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FDL0MsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDWixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDbEM7UUFDSCxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNaLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkIsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUM7WUFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1NBQzVCLENBQUMsQ0FBQyxDQUNKLENBQ0YsQ0FBQTtRQUNELGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQXNCLElBQUksQ0FBQyxDQUFBO0lBRWIsQ0FBQztJQUVsRCxjQUFjLENBQUMsS0FBZ0M7UUFDN0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELFVBQVUsQ0FBQyxZQUFvQjtRQUM3QixNQUFNLElBQUksR0FBd0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUMxRCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQixDQUFDOytHQXRDVSxpQkFBaUI7bUdBQWpCLGlCQUFpQiw0SENuQjlCLG10QkFxQkE7OzRGREZhLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTttR0FHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgZ2V0TGlua0xhYmVsLCBnZXRMaW5rUHJpb3JpdHkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgTWRWaWV3RmFjYWRlIH0gZnJvbSAnLi4vc3RhdGUnXG5pbXBvcnQgeyBEYXRhdml6Q29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvZGF0YXZpei9kYXRhdml6LWNvbmZpZ3VyYXRpb24ubW9kZWwnXG5pbXBvcnQgeyBEYXRhc2V0RGlzdHJpYnV0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFWaWV3Q29tcG9uZW50IHtcbiAgQElucHV0KCkgbW9kZTogJ3RhYmxlJyB8ICdjaGFydCdcbiAgQE91dHB1dCgpIGNoYXJ0Q29uZmlnJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbD4obnVsbClcbiAgY29tcGF0aWJsZURhdGFMaW5rcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm1kVmlld0ZhY2FkZS5kYXRhTGlua3MkLFxuICAgIHRoaXMubWRWaWV3RmFjYWRlLmdlb0RhdGFMaW5rcyQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbZGF0YUxpbmtzLCBnZW9EYXRhTGlua3NdKSA9PiB7XG4gICAgICBjb25zdCBhID0gWy4uLmRhdGFMaW5rcywgLi4uZ2VvRGF0YUxpbmtzXVxuICAgICAgYS5zb3J0KChhLCBiKSA9PiBnZXRMaW5rUHJpb3JpdHkoYikgLSBnZXRMaW5rUHJpb3JpdHkoYSkpXG4gICAgICByZXR1cm4gYVxuICAgIH0pXG4gIClcbiAgZHJvcGRvd25DaG9pY2VzJCA9IHRoaXMuY29tcGF0aWJsZURhdGFMaW5rcyQucGlwZShcbiAgICB0YXAoKGxpbmtzKSA9PiB7XG4gICAgICBpZiAobGlua3MuaW5kZXhPZih0aGlzLnNlbGVjdGVkTGluayQudmFsdWUpID09PSAtMSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTGluayQubmV4dChsaW5rc1swXSlcbiAgICAgIH1cbiAgICB9KSxcbiAgICBtYXAoKGxpbmtzKSA9PlxuICAgICAgbGlua3MubWFwKChsaW5rKSA9PiAoe1xuICAgICAgICBsYWJlbDogZ2V0TGlua0xhYmVsKGxpbmspLFxuICAgICAgICB2YWx1ZTogSlNPTi5zdHJpbmdpZnkobGluayksXG4gICAgICB9KSlcbiAgICApXG4gIClcbiAgc2VsZWN0ZWRMaW5rJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0YXNldERpc3RyaWJ1dGlvbj4obnVsbClcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1kVmlld0ZhY2FkZTogTWRWaWV3RmFjYWRlKSB7fVxuXG4gIHNldENoYXJ0Q29uZmlnKGV2ZW50OiBEYXRhdml6Q29uZmlndXJhdGlvbk1vZGVsKSB7XG4gICAgdGhpcy5tZFZpZXdGYWNhZGUuc2V0Q2hhcnRDb25maWcoZXZlbnQpXG4gIH1cblxuICBzZWxlY3RMaW5rKGxpbmtBc1N0cmluZzogc3RyaW5nKSB7XG4gICAgY29uc3QgbGluazogRGF0YXNldERpc3RyaWJ1dGlvbiA9IEpTT04ucGFyc2UobGlua0FzU3RyaW5nKVxuICAgIGxpbmsudXJsID0gbmV3IFVSTChsaW5rLnVybClcbiAgICB0aGlzLnNlbGVjdGVkTGluayQubmV4dChsaW5rKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidy1mdWxsIGgtZnVsbCBmbGV4IGZsZXgtY29sIHAtMVwiPlxuICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAqbmdJZj1cImRyb3Bkb3duQ2hvaWNlcyQgfCBhc3luYyBhcyBjaG9pY2VzXCJcbiAgICBbdGl0bGVdPVwiJ3RhYmxlLnNlbGVjdC5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgY2xhc3M9XCJ0cnVuY2F0ZSBwLTEgLW14LTFcIlxuICAgIGV4dHJhQnRuQ2xhc3M9XCIhdGV4dC1wcmltYXJ5IGZvbnQtc2FucyBmb250LW1lZGl1bVwiXG4gICAgW2Nob2ljZXNdPVwiY2hvaWNlc1wiXG4gICAgKHNlbGVjdFZhbHVlKT1cInNlbGVjdExpbmsoJGV2ZW50KVwiXG4gID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgaC1bNDIwcHhdXCI+XG4gICAgPGduLXVpLXRhYmxlLXZpZXdcbiAgICAgICpuZ0lmPVwibW9kZSA9PT0gJ3RhYmxlJ1wiXG4gICAgICBbbGlua109XCJzZWxlY3RlZExpbmskIHwgYXN5bmNcIlxuICAgID48L2duLXVpLXRhYmxlLXZpZXc+XG4gICAgPGduLXVpLWNoYXJ0LXZpZXdcbiAgICAgICpuZ0lmPVwibW9kZSA9PT0gJ2NoYXJ0J1wiXG4gICAgICAoY2hhcnRDb25maWckKT1cInNldENoYXJ0Q29uZmlnKCRldmVudClcIlxuICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICA+PC9nbi11aS1jaGFydC12aWV3PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN0RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7Ozs7Ozs7O0FBVXZDLE1BQU0sT0FBTyxpQkFBaUI7SUE0QjVCLFlBQW9CLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBMUJwQyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUE0QixJQUFJLENBQUMsQ0FBQTtRQUM3RSx5QkFBb0IsR0FBRyxhQUFhLENBQUM7WUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYTtTQUNoQyxDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDaEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsRUFBRSxHQUFHLFlBQVksQ0FBQyxDQUFBO1lBQ3pDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDekQsT0FBTyxDQUFDLENBQUE7UUFDVixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0QscUJBQWdCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FDL0MsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDWixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDbEM7UUFDSCxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNaLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkIsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUM7WUFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1NBQzVCLENBQUMsQ0FBQyxDQUNKLENBQ0YsQ0FBQTtRQUNELGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQXdCLElBQUksQ0FBQyxDQUFBO0lBRWYsQ0FBQztJQUVsRCxjQUFjLENBQUMsS0FBZ0M7UUFDN0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELFVBQVUsQ0FBQyxZQUFvQjtRQUM3QixNQUFNLElBQUksR0FBMEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUM1RCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQixDQUFDOytHQXRDVSxpQkFBaUI7bUdBQWpCLGlCQUFpQiw0SENuQjlCLG10QkFxQkE7OzRGREZhLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTttR0FHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgZ2V0TGlua0xhYmVsLCBnZXRMaW5rUHJpb3JpdHkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgTWRWaWV3RmFjYWRlIH0gZnJvbSAnLi4vc3RhdGUnXG5pbXBvcnQgeyBEYXRhdml6Q29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvZGF0YXZpei9kYXRhdml6LWNvbmZpZ3VyYXRpb24ubW9kZWwnXG5pbXBvcnQgeyBEYXRhc2V0T25saW5lUmVzb3VyY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRhdGEtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXZpZXcuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBtb2RlOiAndGFibGUnIHwgJ2NoYXJ0J1xuICBAT3V0cHV0KCkgY2hhcnRDb25maWckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhdml6Q29uZmlndXJhdGlvbk1vZGVsPihudWxsKVxuICBjb21wYXRpYmxlRGF0YUxpbmtzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMubWRWaWV3RmFjYWRlLmRhdGFMaW5rcyQsXG4gICAgdGhpcy5tZFZpZXdGYWNhZGUuZ2VvRGF0YUxpbmtzJCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtkYXRhTGlua3MsIGdlb0RhdGFMaW5rc10pID0+IHtcbiAgICAgIGNvbnN0IGEgPSBbLi4uZGF0YUxpbmtzLCAuLi5nZW9EYXRhTGlua3NdXG4gICAgICBhLnNvcnQoKGEsIGIpID0+IGdldExpbmtQcmlvcml0eShiKSAtIGdldExpbmtQcmlvcml0eShhKSlcbiAgICAgIHJldHVybiBhXG4gICAgfSlcbiAgKVxuICBkcm9wZG93bkNob2ljZXMkID0gdGhpcy5jb21wYXRpYmxlRGF0YUxpbmtzJC5waXBlKFxuICAgIHRhcCgobGlua3MpID0+IHtcbiAgICAgIGlmIChsaW5rcy5pbmRleE9mKHRoaXMuc2VsZWN0ZWRMaW5rJC52YWx1ZSkgPT09IC0xKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRMaW5rJC5uZXh0KGxpbmtzWzBdKVxuICAgICAgfVxuICAgIH0pLFxuICAgIG1hcCgobGlua3MpID0+XG4gICAgICBsaW5rcy5tYXAoKGxpbmspID0+ICh7XG4gICAgICAgIGxhYmVsOiBnZXRMaW5rTGFiZWwobGluayksXG4gICAgICAgIHZhbHVlOiBKU09OLnN0cmluZ2lmeShsaW5rKSxcbiAgICAgIH0pKVxuICAgIClcbiAgKVxuICBzZWxlY3RlZExpbmskID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRhc2V0T25saW5lUmVzb3VyY2U+KG51bGwpXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtZFZpZXdGYWNhZGU6IE1kVmlld0ZhY2FkZSkge31cblxuICBzZXRDaGFydENvbmZpZyhldmVudDogRGF0YXZpekNvbmZpZ3VyYXRpb25Nb2RlbCkge1xuICAgIHRoaXMubWRWaWV3RmFjYWRlLnNldENoYXJ0Q29uZmlnKGV2ZW50KVxuICB9XG5cbiAgc2VsZWN0TGluayhsaW5rQXNTdHJpbmc6IHN0cmluZykge1xuICAgIGNvbnN0IGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSA9IEpTT04ucGFyc2UobGlua0FzU3RyaW5nKVxuICAgIGxpbmsudXJsID0gbmV3IFVSTChsaW5rLnVybClcbiAgICB0aGlzLnNlbGVjdGVkTGluayQubmV4dChsaW5rKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidy1mdWxsIGgtZnVsbCBmbGV4IGZsZXgtY29sIHAtMVwiPlxuICA8Z24tdWktZHJvcGRvd24tc2VsZWN0b3JcbiAgICAqbmdJZj1cImRyb3Bkb3duQ2hvaWNlcyQgfCBhc3luYyBhcyBjaG9pY2VzXCJcbiAgICBbdGl0bGVdPVwiJ3RhYmxlLnNlbGVjdC5kYXRhJyB8IHRyYW5zbGF0ZVwiXG4gICAgY2xhc3M9XCJ0cnVuY2F0ZSBwLTEgLW14LTFcIlxuICAgIGV4dHJhQnRuQ2xhc3M9XCIhdGV4dC1wcmltYXJ5IGZvbnQtc2FucyBmb250LW1lZGl1bVwiXG4gICAgW2Nob2ljZXNdPVwiY2hvaWNlc1wiXG4gICAgKHNlbGVjdFZhbHVlKT1cInNlbGVjdExpbmsoJGV2ZW50KVwiXG4gID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgaC1bNDIwcHhdXCI+XG4gICAgPGduLXVpLXRhYmxlLXZpZXdcbiAgICAgICpuZ0lmPVwibW9kZSA9PT0gJ3RhYmxlJ1wiXG4gICAgICBbbGlua109XCJzZWxlY3RlZExpbmskIHwgYXN5bmNcIlxuICAgID48L2duLXVpLXRhYmxlLXZpZXc+XG4gICAgPGduLXVpLWNoYXJ0LXZpZXdcbiAgICAgICpuZ0lmPVwibW9kZSA9PT0gJ2NoYXJ0J1wiXG4gICAgICAoY2hhcnRDb25maWckKT1cInNldENoYXJ0Q29uZmlnKCRldmVudClcIlxuICAgICAgW2xpbmtdPVwic2VsZWN0ZWRMaW5rJCB8IGFzeW5jXCJcbiAgICA+PC9nbi11aS1jaGFydC12aWV3PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, Inject, InjectionToken, Input, Optional, } from '@angular/core';
2
2
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
3
3
  import { TranslateService } from '@ngx-translate/core';
4
4
  import { getFileFormat } from '../../../../../../libs/util/shared/src';
@@ -8,13 +8,11 @@ import * as i2 from "@angular/common";
8
8
  import * as i3 from "../../../../../ui/inputs/src/lib/button/button.component";
9
9
  import * as i4 from "@angular/material/icon";
10
10
  marker('externalviewer.dataset.unnamed');
11
+ export const EXTERNAL_VIEWER_URL_TEMPLATE = new InjectionToken('externalViewerUrlTemplate');
12
+ export const EXTERNAL_VIEWER_OPEN_NEW_TAB = new InjectionToken('externalViewerOpenNewTab', { factory: () => false });
11
13
  export class ExternalViewerButtonComponent {
12
14
  get externalViewer() {
13
- if (this.link && this.mapConfig) {
14
- return (!!this.mapConfig.EXTERNAL_VIEWER_URL_TEMPLATE &&
15
- !!this.supportedLinkLayerType);
16
- }
17
- return false;
15
+ return !!this.urlTemplate && !!this.supportedLinkLayerType;
18
16
  }
19
17
  get supportedLinkLayerType() {
20
18
  if (!this.link)
@@ -33,11 +31,13 @@ export class ExternalViewerButtonComponent {
33
31
  }
34
32
  return null;
35
33
  }
36
- constructor(translateService) {
34
+ constructor(translateService, urlTemplate, openinNewTab) {
37
35
  this.translateService = translateService;
36
+ this.urlTemplate = urlTemplate;
37
+ this.openinNewTab = openinNewTab;
38
38
  }
39
39
  openInExternalViewer() {
40
- const templateUrl = this.mapConfig.EXTERNAL_VIEWER_URL_TEMPLATE;
40
+ const templateUrl = this.urlTemplate;
41
41
  const layerName = this.link.name
42
42
  ? this.link.name
43
43
  : this.translateService.instant('externalviewer.dataset.unnamed');
@@ -45,19 +45,23 @@ export class ExternalViewerButtonComponent {
45
45
  .replace('${layer_name}', `${layerName}`)
46
46
  .replace('${service_url}', `${encodeURIComponent(this.link.url.toString())}`)
47
47
  .replace('${service_type}', `${this.supportedLinkLayerType}`);
48
- window
49
- .open(url, this.mapConfig.EXTERNAL_VIEWER_OPEN_NEW_TAB ? '_blank' : '_self')
50
- .focus();
48
+ window.open(url, this.openinNewTab ? '_blank' : '_self').focus();
51
49
  }
52
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExternalViewerButtonComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ExternalViewerButtonComponent, selector: "gn-ui-external-viewer-button", inputs: { link: "link", mapConfig: "mapConfig" }, ngImport: i0, template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"secondary\"\n [title]=\"'record.externalViewer.open' | translate\"\n extraClass=\"ms-2 !rounded-lg\"\n>\n <mat-icon class=\"material-symbols-outlined\">open_in_new</mat-icon>\n</gn-ui-button>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExternalViewerButtonComponent, deps: [{ token: i1.TranslateService }, { token: EXTERNAL_VIEWER_URL_TEMPLATE, optional: true }, { token: EXTERNAL_VIEWER_OPEN_NEW_TAB }], target: i0.ɵɵFactoryTarget.Component }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ExternalViewerButtonComponent, selector: "gn-ui-external-viewer-button", inputs: { link: "link" }, ngImport: i0, template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"secondary\"\n [title]=\"'record.externalViewer.open' | translate\"\n extraClass=\"ms-2 !rounded-lg\"\n>\n <mat-icon class=\"material-symbols-outlined\">open_in_new</mat-icon>\n</gn-ui-button>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
52
  }
55
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExternalViewerButtonComponent, decorators: [{
56
54
  type: Component,
57
55
  args: [{ selector: 'gn-ui-external-viewer-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<gn-ui-button\n *ngIf=\"externalViewer\"\n (buttonClick)=\"openInExternalViewer()\"\n type=\"secondary\"\n [title]=\"'record.externalViewer.open' | translate\"\n extraClass=\"ms-2 !rounded-lg\"\n>\n <mat-icon class=\"material-symbols-outlined\">open_in_new</mat-icon>\n</gn-ui-button>\n" }]
58
- }], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { link: [{
59
- type: Input
60
- }], mapConfig: [{
56
+ }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: undefined, decorators: [{
57
+ type: Inject,
58
+ args: [EXTERNAL_VIEWER_URL_TEMPLATE]
59
+ }, {
60
+ type: Optional
61
+ }] }, { type: undefined, decorators: [{
62
+ type: Inject,
63
+ args: [EXTERNAL_VIEWER_OPEN_NEW_TAB]
64
+ }] }]; }, propDecorators: { link: [{
61
65
  type: Input
62
66
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHekUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTs7Ozs7O0FBRXRFLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFBO0FBUXhDLE1BQU0sT0FBTyw2QkFBNkI7SUFJeEMsSUFBSSxjQUFjO1FBQ2hCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQy9CLE9BQU8sQ0FDTCxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyw0QkFBNEI7Z0JBQzdDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQzlCLENBQUE7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELElBQUksc0JBQXNCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFBO1FBQzNCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ2hDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxLQUFLLEVBQUU7Z0JBQzdDLE9BQU8sS0FBSyxDQUFBO2FBQ2I7WUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssS0FBSyxFQUFFO2dCQUM3QyxPQUFPLEtBQUssQ0FBQTthQUNiO1NBQ0Y7YUFBTSxJQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVU7WUFDN0IsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxTQUFTLEVBQ3RDO1lBQ0EsT0FBTyxTQUFTLENBQUE7U0FDakI7UUFDRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRCxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFHLENBQUM7SUFFMUQsb0JBQW9CO1FBQ2xCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsNEJBQTRCLENBQUE7UUFDL0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQzlCLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUNuRSxNQUFNLEdBQUcsR0FBRyxXQUFXO2FBQ3BCLE9BQU8sQ0FBQyxlQUFlLEVBQUUsR0FBRyxTQUFTLEVBQUUsQ0FBQzthQUN4QyxPQUFPLENBQ04sZ0JBQWdCLEVBQ2hCLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUNsRDthQUNBLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUE7UUFDL0QsTUFBTTthQUNILElBQUksQ0FDSCxHQUFHLEVBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ2pFO2FBQ0EsS0FBSyxFQUFFLENBQUE7SUFDWixDQUFDOytHQXBEVSw2QkFBNkI7bUdBQTdCLDZCQUE2QixzSENmMUMsc1NBU0E7OzRGRE1hLDZCQUE2QjtrQkFOekMsU0FBUzsrQkFDRSw4QkFBOEIsbUJBR3ZCLHVCQUF1QixDQUFDLE1BQU07dUdBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWFwQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2FwcC1jb25maWcvc3JjJ1xuaW1wb3J0IHsgRGF0YXNldERpc3RyaWJ1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuXG5tYXJrZXIoJ2V4dGVybmFsdmlld2VyLmRhdGFzZXQudW5uYW1lZCcpXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWV4dGVybmFsLXZpZXdlci1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxWaWV3ZXJCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uXG4gIEBJbnB1dCgpIG1hcENvbmZpZzogTWFwQ29uZmlnXG5cbiAgZ2V0IGV4dGVybmFsVmlld2VyKCkge1xuICAgIGlmICh0aGlzLmxpbmsgJiYgdGhpcy5tYXBDb25maWcpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgICEhdGhpcy5tYXBDb25maWcuRVhURVJOQUxfVklFV0VSX1VSTF9URU1QTEFURSAmJlxuICAgICAgICAhIXRoaXMuc3VwcG9ydGVkTGlua0xheWVyVHlwZVxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGdldCBzdXBwb3J0ZWRMaW5rTGF5ZXJUeXBlKCkge1xuICAgIGlmICghdGhpcy5saW5rKSByZXR1cm4gbnVsbFxuICAgIGlmICh0aGlzLmxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnKSB7XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtcycpIHtcbiAgICAgICAgcmV0dXJuICd3bXMnXG4gICAgICB9XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcycpIHtcbiAgICAgICAgcmV0dXJuICd3ZnMnXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHRoaXMubGluay50eXBlID09PSAnZG93bmxvYWQnICYmXG4gICAgICBnZXRGaWxlRm9ybWF0KHRoaXMubGluaykgPT09ICdnZW9qc29uJ1xuICAgICkge1xuICAgICAgcmV0dXJuICdnZW9qc29uJ1xuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxuXG4gIG9wZW5JbkV4dGVybmFsVmlld2VyKCkge1xuICAgIGNvbnN0IHRlbXBsYXRlVXJsID0gdGhpcy5tYXBDb25maWcuRVhURVJOQUxfVklFV0VSX1VSTF9URU1QTEFURVxuICAgIGNvbnN0IGxheWVyTmFtZSA9IHRoaXMubGluay5uYW1lXG4gICAgICA/IHRoaXMubGluay5uYW1lXG4gICAgICA6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdleHRlcm5hbHZpZXdlci5kYXRhc2V0LnVubmFtZWQnKVxuICAgIGNvbnN0IHVybCA9IHRlbXBsYXRlVXJsXG4gICAgICAucmVwbGFjZSgnJHtsYXllcl9uYW1lfScsIGAke2xheWVyTmFtZX1gKVxuICAgICAgLnJlcGxhY2UoXG4gICAgICAgICcke3NlcnZpY2VfdXJsfScsXG4gICAgICAgIGAke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLmxpbmsudXJsLnRvU3RyaW5nKCkpfWBcbiAgICAgIClcbiAgICAgIC5yZXBsYWNlKCcke3NlcnZpY2VfdHlwZX0nLCBgJHt0aGlzLnN1cHBvcnRlZExpbmtMYXllclR5cGV9YClcbiAgICB3aW5kb3dcbiAgICAgIC5vcGVuKFxuICAgICAgICB1cmwsXG4gICAgICAgIHRoaXMubWFwQ29uZmlnLkVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUIgPyAnX2JsYW5rJyA6ICdfc2VsZidcbiAgICAgIClcbiAgICAgIC5mb2N1cygpXG4gIH1cbn1cbiIsIjxnbi11aS1idXR0b25cbiAgKm5nSWY9XCJleHRlcm5hbFZpZXdlclwiXG4gIChidXR0b25DbGljayk9XCJvcGVuSW5FeHRlcm5hbFZpZXdlcigpXCJcbiAgdHlwZT1cInNlY29uZGFyeVwiXG4gIFt0aXRsZV09XCIncmVjb3JkLmV4dGVybmFsVmlld2VyLm9wZW4nIHwgdHJhbnNsYXRlXCJcbiAgZXh0cmFDbGFzcz1cIm1zLTIgIXJvdW5kZWQtbGdcIlxuPlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+b3Blbl9pbl9uZXc8L21hdC1pY29uPlxuPC9nbi11aS1idXR0b24+XG4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvcmVjb3JkL3NyYy9saWIvZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9yZWNvcmQvc3JjL2xpYi9leHRlcm5hbC12aWV3ZXItYnV0dG9uL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFBO0FBRXRCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0NBQXdDLENBQUE7Ozs7OztBQUV0RSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtBQUV4QyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FDNUQsMkJBQTJCLENBQzVCLENBQUE7QUFDRCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FDNUQsMEJBQTBCLEVBQzFCLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUN6QixDQUFBO0FBUUQsTUFBTSxPQUFPLDZCQUE2QjtJQUd4QyxJQUFJLGNBQWM7UUFDaEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFBO0lBQzVELENBQUM7SUFFRCxJQUFJLHNCQUFzQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQTtRQUMzQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssS0FBSyxFQUFFO2dCQUM3QyxPQUFPLEtBQUssQ0FBQTthQUNiO1lBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLEtBQUssRUFBRTtnQkFDN0MsT0FBTyxLQUFLLENBQUE7YUFDYjtTQUNGO2FBQU0sSUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVO1lBQzdCLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUN0QztZQUNBLE9BQU8sU0FBUyxDQUFBO1NBQ2pCO1FBQ0QsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsWUFDVSxnQkFBa0MsRUFHbEMsV0FBbUIsRUFFbkIsWUFBcUI7UUFMckIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUdsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUVuQixpQkFBWSxHQUFaLFlBQVksQ0FBUztJQUM1QixDQUFDO0lBRUosb0JBQW9CO1FBQ2xCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUE7UUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQzlCLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUNuRSxNQUFNLEdBQUcsR0FBRyxXQUFXO2FBQ3BCLE9BQU8sQ0FBQyxlQUFlLEVBQUUsR0FBRyxTQUFTLEVBQUUsQ0FBQzthQUN4QyxPQUFPLENBQ04sZ0JBQWdCLEVBQ2hCLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUNsRDthQUNBLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUE7UUFDL0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNsRSxDQUFDOytHQS9DVSw2QkFBNkIsa0RBMkI5Qiw0QkFBNEIsNkJBRzVCLDRCQUE0QjttR0E5QjNCLDZCQUE2Qiw4RkM3QjFDLHNTQVNBOzs0RkRvQmEsNkJBQTZCO2tCQU56QyxTQUFTOytCQUNFLDhCQUE4QixtQkFHdkIsdUJBQXVCLENBQUMsTUFBTTs7MEJBNkI1QyxNQUFNOzJCQUFDLDRCQUE0Qjs7MEJBQ25DLFFBQVE7OzBCQUVSLE1BQU07MkJBQUMsNEJBQTRCOzRDQTdCN0IsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRGF0YXNldE9ubGluZVJlc291cmNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBnZXRGaWxlRm9ybWF0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5cbm1hcmtlcignZXh0ZXJuYWx2aWV3ZXIuZGF0YXNldC51bm5hbWVkJylcblxuZXhwb3J0IGNvbnN0IEVYVEVSTkFMX1ZJRVdFUl9VUkxfVEVNUExBVEUgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPihcbiAgJ2V4dGVybmFsVmlld2VyVXJsVGVtcGxhdGUnXG4pXG5leHBvcnQgY29uc3QgRVhURVJOQUxfVklFV0VSX09QRU5fTkVXX1RBQiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgJ2V4dGVybmFsVmlld2VyT3Blbk5ld1RhYicsXG4gIHsgZmFjdG9yeTogKCkgPT4gZmFsc2UgfVxuKVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1leHRlcm5hbC12aWV3ZXItYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V4dGVybmFsLXZpZXdlci1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsVmlld2VyQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlXG5cbiAgZ2V0IGV4dGVybmFsVmlld2VyKCkge1xuICAgIHJldHVybiAhIXRoaXMudXJsVGVtcGxhdGUgJiYgISF0aGlzLnN1cHBvcnRlZExpbmtMYXllclR5cGVcbiAgfVxuXG4gIGdldCBzdXBwb3J0ZWRMaW5rTGF5ZXJUeXBlKCkge1xuICAgIGlmICghdGhpcy5saW5rKSByZXR1cm4gbnVsbFxuICAgIGlmICh0aGlzLmxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnKSB7XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dtcycpIHtcbiAgICAgICAgcmV0dXJuICd3bXMnXG4gICAgICB9XG4gICAgICBpZiAodGhpcy5saW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcycpIHtcbiAgICAgICAgcmV0dXJuICd3ZnMnXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHRoaXMubGluay50eXBlID09PSAnZG93bmxvYWQnICYmXG4gICAgICBnZXRGaWxlRm9ybWF0KHRoaXMubGluaykgPT09ICdnZW9qc29uJ1xuICAgICkge1xuICAgICAgcmV0dXJuICdnZW9qc29uJ1xuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIEBJbmplY3QoRVhURVJOQUxfVklFV0VSX1VSTF9URU1QTEFURSlcbiAgICBAT3B0aW9uYWwoKVxuICAgIHByaXZhdGUgdXJsVGVtcGxhdGU6IHN0cmluZyxcbiAgICBASW5qZWN0KEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUIpXG4gICAgcHJpdmF0ZSBvcGVuaW5OZXdUYWI6IGJvb2xlYW5cbiAgKSB7fVxuXG4gIG9wZW5JbkV4dGVybmFsVmlld2VyKCkge1xuICAgIGNvbnN0IHRlbXBsYXRlVXJsID0gdGhpcy51cmxUZW1wbGF0ZVxuICAgIGNvbnN0IGxheWVyTmFtZSA9IHRoaXMubGluay5uYW1lXG4gICAgICA/IHRoaXMubGluay5uYW1lXG4gICAgICA6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdleHRlcm5hbHZpZXdlci5kYXRhc2V0LnVubmFtZWQnKVxuICAgIGNvbnN0IHVybCA9IHRlbXBsYXRlVXJsXG4gICAgICAucmVwbGFjZSgnJHtsYXllcl9uYW1lfScsIGAke2xheWVyTmFtZX1gKVxuICAgICAgLnJlcGxhY2UoXG4gICAgICAgICcke3NlcnZpY2VfdXJsfScsXG4gICAgICAgIGAke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLmxpbmsudXJsLnRvU3RyaW5nKCkpfWBcbiAgICAgIClcbiAgICAgIC5yZXBsYWNlKCcke3NlcnZpY2VfdHlwZX0nLCBgJHt0aGlzLnN1cHBvcnRlZExpbmtMYXllclR5cGV9YClcbiAgICB3aW5kb3cub3Blbih1cmwsIHRoaXMub3BlbmluTmV3VGFiID8gJ19ibGFuaycgOiAnX3NlbGYnKS5mb2N1cygpXG4gIH1cbn1cbiIsIjxnbi11aS1idXR0b25cbiAgKm5nSWY9XCJleHRlcm5hbFZpZXdlclwiXG4gIChidXR0b25DbGljayk9XCJvcGVuSW5FeHRlcm5hbFZpZXdlcigpXCJcbiAgdHlwZT1cInNlY29uZGFyeVwiXG4gIFt0aXRsZV09XCIncmVjb3JkLmV4dGVybmFsVmlld2VyLm9wZW4nIHwgdHJhbnNsYXRlXCJcbiAgZXh0cmFDbGFzcz1cIm1zLTIgIXJvdW5kZWQtbGdcIlxuPlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+b3Blbl9pbl9uZXc8L21hdC1pY29uPlxuPC9nbi11aS1idXR0b24+XG4iXX0=
@@ -1,10 +1,10 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { UiMapModule } from '../../../../../libs/ui/map/src';
3
+ import { FeatureDetailComponent, MapContainerComponent, } from '../../../../../libs/ui/map/src';
4
4
  import { StoreModule } from '@ngrx/store';
5
5
  import { EffectsModule } from '@ngrx/effects';
6
6
  import { UiLayoutModule } from '../../../../../libs/ui/layout/src';
7
- import { FeatureMapModule } from '../../../../../libs/feature/map/src';
7
+ import { FeatureMapModule, MapStateContainerComponent, } from '../../../../../libs/feature/map/src';
8
8
  import { UiInputsModule } from '../../../../../libs/ui/inputs/src';
9
9
  import { UiElementsModule } from '../../../../../libs/ui/elements/src';
10
10
  import { MdViewFacade } from './state';
@@ -36,7 +36,6 @@ export class FeatureRecordModule {
36
36
  DataViewShareComponent], imports: [CommonModule, i1.StoreFeatureModule, i2.EffectsFeatureModule, UiLayoutModule,
37
37
  FeatureMapModule,
38
38
  FeatureCatalogModule,
39
- UiMapModule,
40
39
  UiInputsModule,
41
40
  UiElementsModule,
42
41
  MatTabsModule,
@@ -45,7 +44,10 @@ export class FeatureRecordModule {
45
44
  TranslateModule,
46
45
  TableComponent,
47
46
  FeatureDatavizModule,
48
- PopupAlertComponent], exports: [MapViewComponent,
47
+ PopupAlertComponent,
48
+ FeatureDetailComponent,
49
+ MapStateContainerComponent,
50
+ MapContainerComponent], exports: [MapViewComponent,
49
51
  DataViewComponent,
50
52
  DataViewPermalinkComponent,
51
53
  DataViewWebComponentComponent,
@@ -56,7 +58,6 @@ export class FeatureRecordModule {
56
58
  UiLayoutModule,
57
59
  FeatureMapModule,
58
60
  FeatureCatalogModule,
59
- UiMapModule,
60
61
  UiInputsModule,
61
62
  UiElementsModule,
62
63
  MatTabsModule,
@@ -65,7 +66,10 @@ export class FeatureRecordModule {
65
66
  TranslateModule,
66
67
  TableComponent,
67
68
  FeatureDatavizModule,
68
- PopupAlertComponent] }); }
69
+ PopupAlertComponent,
70
+ FeatureDetailComponent,
71
+ MapStateContainerComponent,
72
+ MapContainerComponent] }); }
69
73
  }
70
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureRecordModule, decorators: [{
71
75
  type: NgModule,
@@ -85,7 +89,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
85
89
  UiLayoutModule,
86
90
  FeatureMapModule,
87
91
  FeatureCatalogModule,
88
- UiMapModule,
89
92
  UiInputsModule,
90
93
  UiElementsModule,
91
94
  MatTabsModule,
@@ -95,6 +98,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
95
98
  TableComponent,
96
99
  FeatureDatavizModule,
97
100
  PopupAlertComponent,
101
+ FeatureDetailComponent,
102
+ MapStateContainerComponent,
103
+ MapContainerComponent,
98
104
  ],
99
105
  providers: [MdViewFacade],
100
106
  exports: [
@@ -106,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
106
112
  ],
107
113
  }]
108
114
  }] });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1yZWNvcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL2ZlYXR1cmUtcmVjb3JkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDbkUsT0FBTyxFQUNMLCtCQUErQixFQUMvQixPQUFPLEdBQ1IsTUFBTSx3QkFBd0IsQ0FBQTtBQUMvQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUE7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQzlFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZEQUE2RCxDQUFBO0FBQzNHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBOzs7O0FBc0NwRixNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQixpQkFsQzVCLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsNkJBQTZCO1lBQzdCLDBCQUEwQjtZQUMxQiw2QkFBNkI7WUFDN0Isc0JBQXNCLGFBR3RCLFlBQVksa0RBR1osY0FBYztZQUNkLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsV0FBVztZQUNYLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGFBQWE7WUFDYixlQUFlO1lBQ2YsZUFBZTtZQUNmLGNBQWM7WUFDZCxvQkFBb0I7WUFDcEIsbUJBQW1CLGFBSW5CLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsMEJBQTBCO1lBQzFCLDZCQUE2QjtZQUM3QixzQkFBc0I7Z0hBR2IsbUJBQW1CLGFBVG5CLENBQUMsWUFBWSxDQUFDLFlBakJ2QixZQUFZO1lBQ1osV0FBVyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsRUFBRSxPQUFPLENBQUM7WUFDaEUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pDLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLFdBQVc7WUFDWCxjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGVBQWU7WUFDZixjQUFjO1lBQ2Qsb0JBQW9CO1lBQ3BCLG1CQUFtQjs7NEZBV1YsbUJBQW1CO2tCQXBDL0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLDZCQUE2Qjt3QkFDN0IsMEJBQTBCO3dCQUMxQiw2QkFBNkI7d0JBQzdCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsRUFBRSxPQUFPLENBQUM7d0JBQ2hFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFDekMsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3FCQUNwQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3pCLE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsMEJBQTBCO3dCQUMxQiw2QkFBNkI7d0JBQzdCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBVaU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbWFwL3NyYydcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnXG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCB7IFVpTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgRmVhdHVyZU1hcE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9tYXAvc3JjJ1xuaW1wb3J0IHsgVWlJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBVaUVsZW1lbnRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBNZFZpZXdGYWNhZGUgfSBmcm9tICcuL3N0YXRlJ1xuaW1wb3J0IHsgTWRWaWV3RWZmZWN0cyB9IGZyb20gJy4vc3RhdGUvbWR2aWV3LmVmZmVjdHMnXG5pbXBvcnQgeyBNYXBWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9tYXAtdmlldy9tYXAtdmlldy5jb21wb25lbnQnXG5pbXBvcnQgeyBEYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3L2RhdGEtdmlldy5jb21wb25lbnQnXG5pbXBvcnQge1xuICBNRVRBREFUQV9WSUVXX0ZFQVRVUkVfU1RBVEVfS0VZLFxuICByZWR1Y2VyLFxufSBmcm9tICcuL3N0YXRlL21kdmlldy5yZWR1Y2VyJ1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IFBvcHVwQWxlcnRDb21wb25lbnQsIFVpV2lkZ2V0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRXh0ZXJuYWxWaWV3ZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2V4dGVybmFsLXZpZXdlci1idXR0b24vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBGZWF0dXJlQ2F0YWxvZ01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9jYXRhbG9nL3NyYydcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9kYXRhdml6L3NyYydcbmltcG9ydCB7IEZlYXR1cmVEYXRhdml6TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQgfSBmcm9tICcuL2RhdGEtdmlldy1wZXJtYWxpbmsvZGF0YS12aWV3LXBlcm1hbGluay5jb21wb25lbnQnXG5pbXBvcnQgeyBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3LXdlYi1jb21wb25lbnQvZGF0YS12aWV3LXdlYi1jb21wb25lbnQuY29tcG9uZW50J1xuaW1wb3J0IHsgRGF0YVZpZXdTaGFyZUNvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3LXNoYXJlL2RhdGEtdmlldy1zaGFyZS5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1hcFZpZXdDb21wb25lbnQsXG4gICAgRGF0YVZpZXdDb21wb25lbnQsXG4gICAgRXh0ZXJuYWxWaWV3ZXJCdXR0b25Db21wb25lbnQsXG4gICAgRGF0YVZpZXdQZXJtYWxpbmtDb21wb25lbnQsXG4gICAgRGF0YVZpZXdXZWJDb21wb25lbnRDb21wb25lbnQsXG4gICAgRGF0YVZpZXdTaGFyZUNvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKE1FVEFEQVRBX1ZJRVdfRkVBVFVSRV9TVEFURV9LRVksIHJlZHVjZXIpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbTWRWaWV3RWZmZWN0c10pLFxuICAgIFVpTGF5b3V0TW9kdWxlLFxuICAgIEZlYXR1cmVNYXBNb2R1bGUsXG4gICAgRmVhdHVyZUNhdGFsb2dNb2R1bGUsXG4gICAgVWlNYXBNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgVWlFbGVtZW50c01vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgVWlXaWRnZXRzTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBGZWF0dXJlRGF0YXZpek1vZHVsZSxcbiAgICBQb3B1cEFsZXJ0Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtNZFZpZXdGYWNhZGVdLFxuICBleHBvcnRzOiBbXG4gICAgTWFwVmlld0NvbXBvbmVudCxcbiAgICBEYXRhVmlld0NvbXBvbmVudCxcbiAgICBEYXRhVmlld1Blcm1hbGlua0NvbXBvbmVudCxcbiAgICBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCxcbiAgICBEYXRhVmlld1NoYXJlQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGZWF0dXJlUmVjb3JkTW9kdWxlIHt9XG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1yZWNvcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL3JlY29yZC9zcmMvbGliL2ZlYXR1cmUtcmVjb3JkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLHFCQUFxQixHQUN0QixNQUFNLGdDQUFnQyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQiwwQkFBMEIsR0FDM0IsTUFBTSxxQ0FBcUMsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDbkUsT0FBTyxFQUNMLCtCQUErQixFQUMvQixPQUFPLEdBQ1IsTUFBTSx3QkFBd0IsQ0FBQTtBQUMvQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUE7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQzlFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZEQUE2RCxDQUFBO0FBQzNHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBOzs7O0FBd0NwRixNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQixpQkFwQzVCLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsNkJBQTZCO1lBQzdCLDBCQUEwQjtZQUMxQiw2QkFBNkI7WUFDN0Isc0JBQXNCLGFBR3RCLFlBQVksa0RBR1osY0FBYztZQUNkLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQixxQkFBcUIsYUFJckIsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQiwwQkFBMEI7WUFDMUIsNkJBQTZCO1lBQzdCLHNCQUFzQjtnSEFHYixtQkFBbUIsYUFUbkIsQ0FBQyxZQUFZLENBQUMsWUFuQnZCLFlBQVk7WUFDWixXQUFXLENBQUMsVUFBVSxDQUFDLCtCQUErQixFQUFFLE9BQU8sQ0FBQztZQUNoRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDekMsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQixxQkFBcUI7OzRGQVdaLG1CQUFtQjtrQkF0Qy9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQiw2QkFBNkI7d0JBQzdCLDBCQUEwQjt3QkFDMUIsNkJBQTZCO3dCQUM3QixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVcsQ0FBQyxVQUFVLENBQUMsK0JBQStCLEVBQUUsT0FBTyxDQUFDO3dCQUNoRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7d0JBQ3pDLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsMEJBQTBCO3dCQUMxQixxQkFBcUI7cUJBQ3RCO29CQUNELFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDekIsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQiwwQkFBMEI7d0JBQzFCLDZCQUE2Qjt3QkFDN0Isc0JBQXNCO3FCQUN2QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIEZlYXR1cmVEZXRhaWxDb21wb25lbnQsXG4gIE1hcENvbnRhaW5lckNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9tYXAvc3JjJ1xuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJ1xuaW1wb3J0IHsgVWlMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMnXG5pbXBvcnQge1xuICBGZWF0dXJlTWFwTW9kdWxlLFxuICBNYXBTdGF0ZUNvbnRhaW5lckNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL21hcC9zcmMnXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IFVpRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYydcbmltcG9ydCB7IE1kVmlld0ZhY2FkZSB9IGZyb20gJy4vc3RhdGUnXG5pbXBvcnQgeyBNZFZpZXdFZmZlY3RzIH0gZnJvbSAnLi9zdGF0ZS9tZHZpZXcuZWZmZWN0cydcbmltcG9ydCB7IE1hcFZpZXdDb21wb25lbnQgfSBmcm9tICcuL21hcC12aWV3L21hcC12aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7IERhdGFWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLXZpZXcvZGF0YS12aWV3LmNvbXBvbmVudCdcbmltcG9ydCB7XG4gIE1FVEFEQVRBX1ZJRVdfRkVBVFVSRV9TVEFURV9LRVksXG4gIHJlZHVjZXIsXG59IGZyb20gJy4vc3RhdGUvbWR2aWV3LnJlZHVjZXInXG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicydcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgUG9wdXBBbGVydENvbXBvbmVudCwgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBFeHRlcm5hbFZpZXdlckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vZXh0ZXJuYWwtdmlld2VyLWJ1dHRvbi9leHRlcm5hbC12aWV3ZXItYnV0dG9uLmNvbXBvbmVudCdcbmltcG9ydCB7IEZlYXR1cmVDYXRhbG9nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2NhdGFsb2cvc3JjJ1xuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2RhdGF2aXovc3JjJ1xuaW1wb3J0IHsgRmVhdHVyZURhdGF2aXpNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZGF0YXZpei9zcmMnXG5pbXBvcnQgeyBEYXRhVmlld1Blcm1hbGlua0NvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3LXBlcm1hbGluay9kYXRhLXZpZXctcGVybWFsaW5rLmNvbXBvbmVudCdcbmltcG9ydCB7IERhdGFWaWV3V2ViQ29tcG9uZW50Q29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC9kYXRhLXZpZXctd2ViLWNvbXBvbmVudC5jb21wb25lbnQnXG5pbXBvcnQgeyBEYXRhVmlld1NoYXJlQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLXZpZXctc2hhcmUvZGF0YS12aWV3LXNoYXJlLmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWFwVmlld0NvbXBvbmVudCxcbiAgICBEYXRhVmlld0NvbXBvbmVudCxcbiAgICBFeHRlcm5hbFZpZXdlckJ1dHRvbkNvbXBvbmVudCxcbiAgICBEYXRhVmlld1Blcm1hbGlua0NvbXBvbmVudCxcbiAgICBEYXRhVmlld1dlYkNvbXBvbmVudENvbXBvbmVudCxcbiAgICBEYXRhVmlld1NoYXJlQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoTUVUQURBVEFfVklFV19GRUFUVVJFX1NUQVRFX0tFWSwgcmVkdWNlciksXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtNZFZpZXdFZmZlY3RzXSksXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgRmVhdHVyZU1hcE1vZHVsZSxcbiAgICBGZWF0dXJlQ2F0YWxvZ01vZHVsZSxcbiAgICBVaUlucHV0c01vZHVsZSxcbiAgICBVaUVsZW1lbnRzTW9kdWxlLFxuICAgIE1hdFRhYnNNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIFRhYmxlQ29tcG9uZW50LFxuICAgIEZlYXR1cmVEYXRhdml6TW9kdWxlLFxuICAgIFBvcHVwQWxlcnRDb21wb25lbnQsXG4gICAgRmVhdHVyZURldGFpbENvbXBvbmVudCxcbiAgICBNYXBTdGF0ZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNYXBDb250YWluZXJDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW01kVmlld0ZhY2FkZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBNYXBWaWV3Q29tcG9uZW50LFxuICAgIERhdGFWaWV3Q29tcG9uZW50LFxuICAgIERhdGFWaWV3UGVybWFsaW5rQ29tcG9uZW50LFxuICAgIERhdGFWaWV3V2ViQ29tcG9uZW50Q29tcG9uZW50LFxuICAgIERhdGFWaWV3U2hhcmVDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVSZWNvcmRNb2R1bGUge31cbiJdfQ==