geonetwork-ui 2.2.0-dev.886aae61 → 2.2.0-dev.95b40cd8

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 (352) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +77 -52
  3. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.mjs +5 -3
  4. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/converter.mjs +16 -11
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +23 -16
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +21 -18
  7. package/esm2022/libs/api/repository/src/lib/gn4/index.mjs +3 -1
  8. package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +10 -3
  9. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +14 -5
  10. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +33 -8
  11. package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +13 -26
  12. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  13. package/esm2022/libs/common/domain/src/lib/model/search/aggregation.model.mjs +1 -1
  14. package/esm2022/libs/common/domain/src/lib/model/search/field.model.mjs +2 -0
  15. package/esm2022/libs/common/domain/src/lib/model/search/filter.model.mjs +1 -1
  16. package/esm2022/libs/common/domain/src/lib/model/search/index.mjs +2 -1
  17. package/esm2022/libs/common/domain/src/lib/model/search/search.model.mjs +1 -1
  18. package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
  19. package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
  20. package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -10
  21. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +5 -4
  22. package/esm2022/libs/feature/editor/src/lib/record-form/record-form.component.mjs +5 -3
  23. package/esm2022/libs/feature/map/src/index.mjs +2 -1
  24. package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +1 -1
  25. package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +106 -0
  26. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +64 -0
  27. package/esm2022/libs/feature/map/src/lib/constant/index.mjs +2 -1
  28. package/esm2022/libs/feature/map/src/lib/constant/projections.mjs +2 -0
  29. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +23 -3
  30. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +93 -0
  31. package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +40 -0
  32. package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +5 -3
  33. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +11 -1
  34. package/esm2022/libs/feature/map/src/lib/utils/index.mjs +1 -3
  35. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +60 -29
  36. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +29 -20
  37. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +2 -2
  38. package/esm2022/libs/feature/search/src/index.mjs +4 -1
  39. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +7 -4
  40. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +2 -6
  41. package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +1 -1
  42. package/esm2022/libs/feature/search/src/lib/filter-geometry.token.mjs +4 -0
  43. package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +7 -3
  44. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -0
  45. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +3 -3
  46. package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +128 -0
  47. package/esm2022/libs/feature/search/src/lib/state/effects.mjs +6 -4
  48. package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +3 -2
  49. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +41 -26
  50. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +11 -9
  51. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +4 -4
  52. package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +1 -1
  53. package/esm2022/libs/ui/elements/src/index.mjs +3 -1
  54. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
  55. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +27 -0
  56. package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +2 -2
  57. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  58. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +35 -17
  59. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +2 -3
  60. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +9 -6
  61. package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +3 -3
  62. package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +7 -3
  63. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -3
  64. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  65. package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
  66. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  67. package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +3 -3
  68. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  69. package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +46 -0
  70. package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +3 -3
  71. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +2 -2
  72. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -3
  73. package/esm2022/libs/ui/layout/src/index.mjs +3 -1
  74. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +2 -2
  75. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +36 -0
  76. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +37 -0
  77. package/esm2022/libs/ui/search/src/index.mjs +1 -2
  78. package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +1 -1
  79. package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +1 -1
  80. package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +1 -1
  81. package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +1 -1
  82. package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +1 -1
  83. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +9 -10
  84. package/esm2022/libs/util/i18n/src/index.mjs +1 -2
  85. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +29 -13
  86. package/esm2022/translations/de.json +106 -93
  87. package/esm2022/translations/en.json +38 -25
  88. package/esm2022/translations/es.json +17 -4
  89. package/esm2022/translations/fr.json +22 -9
  90. package/esm2022/translations/it.json +29 -16
  91. package/esm2022/translations/nl.json +17 -4
  92. package/esm2022/translations/pt.json +17 -4
  93. package/fesm2022/geonetwork-ui.mjs +1275 -788
  94. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  95. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts +1 -0
  96. package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
  97. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +0 -1
  98. package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
  99. package/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.d.ts.map +1 -1
  100. package/libs/api/metadata-converter/src/lib/iso19139/converter.d.ts.map +1 -1
  101. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +5 -4
  102. package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
  103. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +3 -2
  104. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  105. package/libs/api/repository/src/lib/gn4/index.d.ts +2 -0
  106. package/libs/api/repository/src/lib/gn4/index.d.ts.map +1 -1
  107. package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
  108. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +1 -1
  109. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
  110. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +9 -2
  111. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  112. package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts +4 -5
  113. package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts.map +1 -1
  114. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +15 -15
  115. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  116. package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts +1 -1
  117. package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts.map +1 -1
  118. package/libs/common/domain/src/lib/model/search/field.model.d.ts +2 -0
  119. package/libs/common/domain/src/lib/model/search/field.model.d.ts.map +1 -0
  120. package/libs/common/domain/src/lib/model/search/filter.model.d.ts +1 -1
  121. package/libs/common/domain/src/lib/model/search/filter.model.d.ts.map +1 -1
  122. package/libs/common/domain/src/lib/model/search/index.d.ts +1 -0
  123. package/libs/common/domain/src/lib/model/search/index.d.ts.map +1 -1
  124. package/libs/common/domain/src/lib/model/search/search.model.d.ts +2 -3
  125. package/libs/common/domain/src/lib/model/search/search.model.d.ts.map +1 -1
  126. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +1 -0
  127. package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
  128. package/libs/common/domain/src/lib/platform.service.interface.d.ts +1 -1
  129. package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
  130. package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts +0 -1
  131. package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts.map +1 -1
  132. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +15 -2
  133. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  134. package/libs/feature/editor/src/lib/record-form/record-form.component.d.ts.map +1 -1
  135. package/libs/feature/map/src/index.d.ts +1 -0
  136. package/libs/feature/map/src/index.d.ts.map +1 -1
  137. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +22 -0
  138. package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -0
  139. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +22 -0
  140. package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -0
  141. package/libs/feature/map/src/lib/constant/index.d.ts +1 -0
  142. package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
  143. package/libs/feature/map/src/lib/constant/projections.d.ts.map +1 -0
  144. package/libs/feature/map/src/lib/feature-map.module.d.ts +15 -12
  145. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  146. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +25 -0
  147. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -0
  148. package/libs/feature/map/src/lib/geocoding.service.d.ts +18 -0
  149. package/libs/feature/map/src/lib/geocoding.service.d.ts.map +1 -0
  150. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +2 -0
  151. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +1 -1
  152. package/libs/feature/map/src/lib/utils/index.d.ts +0 -2
  153. package/libs/feature/map/src/lib/utils/index.d.ts.map +1 -1
  154. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +13 -11
  155. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  156. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +1 -3
  157. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  158. package/libs/feature/search/src/index.d.ts +3 -0
  159. package/libs/feature/search/src/index.d.ts.map +1 -1
  160. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +5 -4
  161. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  162. package/libs/feature/search/src/lib/feature-search.module.d.ts +0 -4
  163. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  164. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts +3 -2
  165. package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts.map +1 -1
  166. package/libs/feature/search/src/lib/filter-geometry.token.d.ts +4 -0
  167. package/libs/feature/search/src/lib/filter-geometry.token.d.ts.map +1 -0
  168. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +1 -1
  169. package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
  170. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -0
  171. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -0
  172. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +33 -0
  173. package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
  174. package/libs/feature/search/src/lib/state/effects.d.ts.map +1 -1
  175. package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -1
  176. package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
  177. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -8
  178. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  179. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  180. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +1 -1
  181. package/libs/ui/elements/src/index.d.ts +2 -0
  182. package/libs/ui/elements/src/index.d.ts.map +1 -1
  183. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +1 -1
  184. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts +10 -0
  185. package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts.map +1 -0
  186. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +7 -2
  187. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  188. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  189. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +3 -1
  190. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  191. package/libs/ui/elements/src/lib/thumbnail/thumbnail.component.d.ts +3 -2
  192. package/libs/ui/elements/src/lib/thumbnail/thumbnail.component.d.ts.map +1 -1
  193. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +12 -11
  194. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  195. package/libs/ui/inputs/src/index.d.ts +1 -0
  196. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  197. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +13 -0
  198. package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -0
  199. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +2 -1
  200. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  201. package/libs/ui/layout/src/index.d.ts +2 -0
  202. package/libs/ui/layout/src/index.d.ts.map +1 -1
  203. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +14 -0
  204. package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts.map +1 -0
  205. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +15 -0
  206. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -0
  207. package/libs/ui/search/src/index.d.ts +0 -1
  208. package/libs/ui/search/src/index.d.ts.map +1 -1
  209. package/libs/ui/search/src/lib/ui-search.module.d.ts +15 -15
  210. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  211. package/libs/util/i18n/src/index.d.ts +0 -1
  212. package/libs/util/i18n/src/index.d.ts.map +1 -1
  213. package/libs/util/shared/src/lib/links/link-utils.d.ts +19 -7
  214. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  215. package/package.json +4 -1
  216. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +6 -6
  217. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +5 -3
  218. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +22 -4
  219. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +3 -0
  220. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +112 -65
  221. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.ts +4 -2
  222. package/src/libs/api/metadata-converter/src/lib/iso19139/converter.ts +19 -12
  223. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +62 -43
  224. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +91 -59
  225. package/src/libs/api/repository/src/lib/gn4/index.ts +2 -0
  226. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +22 -2
  227. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +15 -4
  228. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +47 -8
  229. package/src/libs/api/repository/src/lib/gn4/selection/selection.service.ts +14 -38
  230. package/src/libs/common/domain/src/lib/index.ts +2 -0
  231. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +17 -18
  232. package/src/libs/common/domain/src/lib/model/search/aggregation.model.ts +1 -1
  233. package/src/libs/common/domain/src/lib/model/search/field.model.ts +1 -0
  234. package/src/libs/common/domain/src/lib/model/search/filter.model.ts +1 -1
  235. package/src/libs/common/domain/src/lib/model/search/index.ts +1 -0
  236. package/src/libs/common/domain/src/lib/model/search/search.model.ts +2 -2
  237. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +1 -0
  238. package/src/libs/common/domain/src/lib/model/user/index.ts +1 -0
  239. package/src/libs/common/domain/src/lib/platform.service.interface.ts +1 -4
  240. package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +1 -1
  241. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +6 -2
  242. package/src/libs/feature/catalog/src/lib/my-org/my-org.service.ts +4 -16
  243. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +8 -5
  244. package/src/libs/feature/editor/src/lib/record-form/record-form.component.ts +2 -1
  245. package/src/libs/feature/map/src/index.ts +1 -0
  246. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.css +0 -0
  247. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.html +21 -0
  248. package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +107 -0
  249. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.css +0 -0
  250. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +37 -0
  251. package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +64 -0
  252. package/src/libs/feature/map/src/lib/constant/index.ts +1 -0
  253. package/src/libs/feature/map/src/lib/feature-map.module.ts +12 -0
  254. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.css +0 -0
  255. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.html +39 -0
  256. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +99 -0
  257. package/src/libs/feature/map/src/lib/geocoding.service.ts +59 -0
  258. package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +6 -2
  259. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +16 -0
  260. package/src/libs/feature/map/src/lib/utils/index.ts +0 -2
  261. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +85 -50
  262. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +18 -3
  263. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +1 -1
  264. package/src/libs/feature/search/src/index.ts +3 -0
  265. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +12 -4
  266. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +2 -1
  267. package/src/libs/feature/search/src/lib/feature-search.module.ts +1 -10
  268. package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.ts +4 -4
  269. package/src/libs/feature/search/src/lib/filter-geometry.token.ts +7 -0
  270. package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +9 -3
  271. package/src/libs/feature/search/src/lib/record-url.token.ts +4 -0
  272. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +1 -1
  273. package/src/libs/feature/search/src/lib/results-table/results-table.component.css +0 -0
  274. package/src/libs/feature/search/src/lib/results-table/results-table.component.html +112 -0
  275. package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +164 -0
  276. package/src/libs/feature/search/src/lib/state/effects.ts +5 -4
  277. package/src/libs/feature/search/src/lib/state/search.facade.ts +2 -1
  278. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +21 -16
  279. package/src/libs/feature/search/src/lib/utils/service/fields.ts +43 -34
  280. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -0
  281. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.ts +1 -1
  282. package/src/libs/ui/elements/src/index.ts +2 -0
  283. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +4 -1
  284. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.css +0 -0
  285. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +30 -0
  286. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.ts +15 -0
  287. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +54 -54
  288. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +2 -2
  289. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +4 -0
  290. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +101 -45
  291. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +31 -7
  292. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +1 -2
  293. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +5 -5
  294. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +12 -4
  295. package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
  296. package/src/libs/ui/elements/src/lib/thumbnail/thumbnail.component.ts +4 -0
  297. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +4 -0
  298. package/src/libs/ui/inputs/src/index.ts +1 -0
  299. package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
  300. package/src/libs/ui/inputs/src/lib/button/button.component.css +1 -1
  301. package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.html +0 -1
  302. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  303. package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +48 -0
  304. package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +8 -3
  305. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +1 -0
  306. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -0
  307. package/src/libs/ui/layout/src/index.ts +2 -0
  308. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +1 -1
  309. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.css +0 -0
  310. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.html +1 -0
  311. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.ts +33 -0
  312. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +15 -0
  313. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +54 -0
  314. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +42 -0
  315. package/src/libs/ui/search/src/index.ts +0 -1
  316. package/src/libs/ui/search/src/lib/ui-search.module.ts +2 -3
  317. package/src/libs/util/i18n/src/index.ts +0 -1
  318. package/src/libs/util/shared/src/lib/links/link-utils.ts +34 -11
  319. package/translations/de.json +106 -93
  320. package/translations/en.json +38 -25
  321. package/translations/es.json +17 -4
  322. package/translations/fr.json +22 -9
  323. package/translations/it.json +29 -16
  324. package/translations/nl.json +17 -4
  325. package/translations/pt.json +17 -4
  326. package/translations/sk.json +17 -4
  327. package/esm2022/libs/feature/map/src/lib/utils/map-utils-wms.service.mjs +0 -55
  328. package/esm2022/libs/feature/map/src/lib/utils/projections.mjs +0 -2
  329. package/esm2022/libs/ui/search/src/lib/record-table/record-table.component.mjs +0 -145
  330. package/esm2022/libs/util/i18n/src/lib/testing/test.translate.loader.mjs +0 -24
  331. package/esm2022/libs/util/i18n/src/lib/testing/test.translate.module.mjs +0 -109
  332. package/esm2022/libs/util/i18n/src/lib/testing/translations.model.mjs +0 -6
  333. package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts +0 -17
  334. package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts.map +0 -1
  335. package/libs/feature/map/src/lib/utils/projections.d.ts.map +0 -1
  336. package/libs/ui/search/src/lib/record-table/record-table.component.d.ts +0 -31
  337. package/libs/ui/search/src/lib/record-table/record-table.component.d.ts.map +0 -1
  338. package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts +0 -17
  339. package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts.map +0 -1
  340. package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts +0 -131
  341. package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts.map +0 -1
  342. package/libs/util/i18n/src/lib/testing/translations.model.d.ts +0 -21
  343. package/libs/util/i18n/src/lib/testing/translations.model.d.ts.map +0 -1
  344. package/src/libs/feature/map/src/lib/utils/map-utils-wms.service.ts +0 -58
  345. package/src/libs/ui/search/src/lib/record-table/record-table.component.css +0 -7
  346. package/src/libs/ui/search/src/lib/record-table/record-table.component.html +0 -215
  347. package/src/libs/ui/search/src/lib/record-table/record-table.component.ts +0 -149
  348. package/src/libs/util/i18n/src/lib/testing/test.translate.loader.ts +0 -26
  349. package/src/libs/util/i18n/src/lib/testing/test.translate.module.ts +0 -235
  350. package/src/libs/util/i18n/src/lib/testing/translations.model.ts +0 -28
  351. /package/libs/feature/map/src/lib/{utils → constant}/projections.d.ts +0 -0
  352. /package/src/libs/feature/map/src/lib/{utils → constant}/projections.ts +0 -0
@@ -40,9 +40,15 @@ export const FORMATS = {
40
40
  color: '#328556',
41
41
  mimeTypes: ['x-gis/x-shapefile'],
42
42
  },
43
+ gml: {
44
+ extensions: ['gml'],
45
+ priority: 5,
46
+ color: '#c92bce',
47
+ mimeTypes: ['application/gml+xml', 'text/xml; subtype=gml'],
48
+ },
43
49
  kml: {
44
50
  extensions: ['kml', 'kmz'],
45
- priority: 5,
51
+ priority: 6,
46
52
  color: '#348009',
47
53
  mimeTypes: [
48
54
  'application/vnd.google-earth.kml+xml',
@@ -51,34 +57,40 @@ export const FORMATS = {
51
57
  },
52
58
  gpkg: {
53
59
  extensions: ['gpkg', 'geopackage'],
54
- priority: 6,
60
+ priority: 7,
55
61
  color: '#ea79ba',
56
62
  mimeTypes: ['application/geopackage+sqlite3'],
57
63
  },
58
64
  zip: {
59
65
  extensions: ['zip', 'tar.gz'],
60
- priority: 7,
66
+ priority: 8,
61
67
  color: '#f2bb3a',
62
68
  mimeTypes: ['application/zip', 'application/x-zip'],
63
69
  },
64
70
  pdf: {
65
71
  extensions: ['pdf'],
66
- priority: 8,
72
+ priority: 9,
67
73
  color: '#db544a',
68
74
  mimeTypes: ['application/pdf'],
69
75
  },
70
76
  jpg: {
71
77
  extensions: ['jpg', 'jpeg', 'jfif', 'pjpeg', 'pjp'],
72
- priority: 8,
78
+ priority: 9,
73
79
  color: '#673ab7',
74
80
  mimeTypes: ['image/jpg'],
75
81
  },
76
82
  svg: {
77
83
  extensions: ['svg'],
78
- priority: 9,
84
+ priority: 10,
79
85
  color: '#d98294',
80
86
  mimeTypes: ['image/svg+xml'],
81
87
  },
88
+ dxf: {
89
+ extensions: ['dxf'],
90
+ priority: 11,
91
+ color: '#de630b',
92
+ mimeTypes: ['application/x-dxf', 'image/x-dxf'],
93
+ },
82
94
  };
83
95
  export function getFormatPriority(linkFormat) {
84
96
  for (const format in FORMATS) {
@@ -95,14 +107,18 @@ export function getFormatPriority(linkFormat) {
95
107
  export function getLinkPriority(link) {
96
108
  return getFormatPriority(getFileFormat(link));
97
109
  }
98
- export function extensionToFormat(extension) {
99
- for (const format in FORMATS) {
100
- for (const alias of FORMATS[format].extensions) {
101
- if (alias === extension.toLowerCase())
102
- return format;
110
+ export function getFileFormatFromServiceOutput(serviceOutput) {
111
+ function formatMatcher(format) {
112
+ const output = serviceOutput.toLowerCase();
113
+ return (format.extensions.some((extension) => output.includes(extension)) ||
114
+ format.mimeTypes.some((mimeType) => output.includes(mimeType)));
115
+ }
116
+ for (const formatName in FORMATS) {
117
+ if (formatMatcher(FORMATS[formatName])) {
118
+ return formatName;
103
119
  }
104
120
  }
105
- return undefined;
121
+ return null;
106
122
  }
107
123
  export function getFileFormat(link) {
108
124
  if ('mimeType' in link) {
@@ -183,4 +199,4 @@ export function getLinkLabel(link) {
183
199
  export function getMimeTypeForFormat(format) {
184
200
  return format in FORMATS ? FORMATS[format.toLowerCase()].mimeTypes[0] : null;
185
201
  }
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUdoRSxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQTtBQUU3QyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQzNDO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsVUFBVSxFQUFFO1lBQ1YsT0FBTztZQUNQLEtBQUs7WUFDTCxNQUFNO1lBQ04sVUFBVTtZQUNWLCtCQUErQjtTQUNoQztRQUNELFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFO1lBQ1QsMEJBQTBCO1lBQzFCLG1FQUFtRTtTQUNwRTtLQUNGO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLENBQUM7S0FDaEU7SUFDRCxJQUFJLEVBQUU7UUFDSixVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDcEIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztLQUNoQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLENBQUM7UUFDaEQsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztLQUNqQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7UUFDMUIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUU7WUFDVCxzQ0FBc0M7WUFDdEMsa0NBQWtDO1NBQ25DO0tBQ0Y7SUFDRCxJQUFJLEVBQUU7UUFDSixVQUFVLEVBQUUsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDO1FBQ2xDLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsZ0NBQWdDLENBQUM7S0FDOUM7SUFDRCxHQUFHLEVBQUU7UUFDSCxVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO1FBQzdCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUM7S0FDcEQ7SUFDRCxHQUFHLEVBQUU7UUFDSCxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDbkIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztLQUMvQjtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDbkQsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDekI7SUFDRCxHQUFHLEVBQUU7UUFDSCxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDbkIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUM7S0FDN0I7Q0FDTyxDQUFBO0FBSVYsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFVBQXNCO0lBQ3RELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUM1QyxJQUFJLElBQUksTUFBTSxDQUFDLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUM5QyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEtBQUssQ0FBQztvQkFBRSxPQUFPLENBQUMsQ0FBQTtnQkFDNUMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFBO2FBQzlEO1NBQ0Y7S0FDRjtJQUNELE9BQU8sQ0FBQyxDQUFBO0FBQ1YsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQUMsSUFBeUI7SUFDdkQsT0FBTyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtBQUMvQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFNBQWlCO0lBQ2pELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUM5QyxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUMsV0FBVyxFQUFFO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtTQUNuRTtLQUNGO0lBQ0QsT0FBTyxTQUFTLENBQUE7QUFDbEIsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBeUI7SUFDckQsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1FBQ3RCLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN0RCxJQUFJLGNBQWMsS0FBSyxJQUFJLEVBQUU7WUFDM0IsT0FBTyxjQUFjLENBQUE7U0FDdEI7S0FDRjtJQUNELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUM5QyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtZQUM3RCxJQUFJLG9CQUFvQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7Z0JBQUUsT0FBTyxNQUFvQixDQUFBO1NBQ25FO0tBQ0Y7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLElBQXlCLEVBQ3pCLEtBQWE7SUFFYixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQTtJQUN6QyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2hELElBQUksR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssR0FBRyxFQUFFO1lBQ25DLE9BQU8sS0FBSyxLQUFLLEtBQUssQ0FBQTtTQUN2QjtLQUNGO0lBQ0QsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFFBQWdCO0lBQy9DLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUMxQyxJQUFJLFFBQVEsS0FBSyxFQUFFO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtTQUNqRDtLQUNGO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsSUFBeUIsRUFDekIsTUFBa0I7SUFFbEIsT0FBTyxDQUNMLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxPQUFPLE1BQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxLQUFLLElBQUksSUFBSTtZQUNaLElBQUksTUFBTSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUM5RCxDQUFBO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsVUFBc0I7SUFDbEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQzlDLElBQUksSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2dCQUM5QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUE7U0FDL0I7S0FDRjtJQUNELE9BQU8sdUJBQXVCLENBQUEsQ0FBQyxrQkFBa0I7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBeUI7SUFDcEQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBQ2YsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2pCLEtBQUssU0FBUztZQUNaO2dCQUNFLFFBQVEsSUFBSSxDQUFDLHFCQUFxQixFQUFFO29CQUNsQyxLQUFLLEtBQUs7d0JBQ1IsTUFBTSxHQUFHLEtBQUssQ0FBQTt3QkFDZCxNQUFLO29CQUNQLEtBQUssS0FBSzt3QkFDUixNQUFNLEdBQUcsS0FBSyxDQUFBO3dCQUNkLE1BQUs7b0JBQ1AsS0FBSyxNQUFNO3dCQUNULE1BQU0sR0FBRyxNQUFNLENBQUE7d0JBQ2YsTUFBSztvQkFDUCxLQUFLLFVBQVU7d0JBQ2IsTUFBTSxHQUFHLE1BQU0sQ0FBQTt3QkFDZixNQUFLO2lCQUNSO2FBQ0Y7WUFDRCxNQUFLO1FBQ1A7WUFDRSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO0tBQy9CO0lBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFBO0lBQzNDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssS0FBSyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsTUFBa0I7SUFDckQsT0FBTyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7QUFDOUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IERhdGFzZXREaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbm1hcmtlcignZG93bmxvYWRzLndmcy5mZWF0dXJldHlwZS5ub3QuZm91bmQnKVxuXG5leHBvcnQgY29uc3QgRk9STUFUUyA9IHtcbiAgY3N2OiB7XG4gICAgZXh0ZW5zaW9uczogWydjc3YnXSxcbiAgICBwcmlvcml0eTogMSxcbiAgICBjb2xvcjogJyM1NTlkN2YnLFxuICAgIG1pbWVUeXBlczogWyd0ZXh0L2NzdicsICdhcHBsaWNhdGlvbi9jc3YnXSxcbiAgfSxcbiAgZXhjZWw6IHtcbiAgICBleHRlbnNpb25zOiBbXG4gICAgICAnZXhjZWwnLFxuICAgICAgJ3hscycsXG4gICAgICAneGxzeCcsXG4gICAgICAnbXMtZXhjZWwnLFxuICAgICAgJ29wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50JyxcbiAgICBdLFxuICAgIHByaW9yaXR5OiAyLFxuICAgIGNvbG9yOiAnIzBmNDM5NScsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICAgXSxcbiAgfSxcbiAgZ2VvanNvbjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ2VvanNvbiddLFxuICAgIHByaW9yaXR5OiAzLFxuICAgIGNvbG9yOiAnIzFlNTE4MCcsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlbytqc29uJywgJ2FwcGxpY2F0aW9uL3ZuZC5nZW8ranNvbiddLFxuICB9LFxuICBqc29uOiB7XG4gICAgZXh0ZW5zaW9uczogWydqc29uJ10sXG4gICAgcHJpb3JpdHk6IDMsXG4gICAgY29sb3I6ICcjMWU1MTgwJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vanNvbiddLFxuICB9LFxuICBzaHA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3NocCcsICdzaGFwZScsICd6aXBwZWQtc2hhcGVmaWxlJ10sXG4gICAgcHJpb3JpdHk6IDQsXG4gICAgY29sb3I6ICcjMzI4NTU2JyxcbiAgICBtaW1lVHlwZXM6IFsneC1naXMveC1zaGFwZWZpbGUnXSxcbiAgfSxcbiAga21sOiB7XG4gICAgZXh0ZW5zaW9uczogWydrbWwnLCAna216J10sXG4gICAgcHJpb3JpdHk6IDUsXG4gICAgY29sb3I6ICcjMzQ4MDA5JyxcbiAgICBtaW1lVHlwZXM6IFtcbiAgICAgICdhcHBsaWNhdGlvbi92bmQuZ29vZ2xlLWVhcnRoLmttbCt4bWwnLFxuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua216JyxcbiAgICBdLFxuICB9LFxuICBncGtnOiB7XG4gICAgZXh0ZW5zaW9uczogWydncGtnJywgJ2dlb3BhY2thZ2UnXSxcbiAgICBwcmlvcml0eTogNixcbiAgICBjb2xvcjogJyNlYTc5YmEnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nZW9wYWNrYWdlK3NxbGl0ZTMnXSxcbiAgfSxcbiAgemlwOiB7XG4gICAgZXh0ZW5zaW9uczogWyd6aXAnLCAndGFyLmd6J10sXG4gICAgcHJpb3JpdHk6IDcsXG4gICAgY29sb3I6ICcjZjJiYjNhJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vemlwJywgJ2FwcGxpY2F0aW9uL3gtemlwJ10sXG4gIH0sXG4gIHBkZjoge1xuICAgIGV4dGVuc2lvbnM6IFsncGRmJ10sXG4gICAgcHJpb3JpdHk6IDgsXG4gICAgY29sb3I6ICcjZGI1NDRhJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vcGRmJ10sXG4gIH0sXG4gIGpwZzoge1xuICAgIGV4dGVuc2lvbnM6IFsnanBnJywgJ2pwZWcnLCAnamZpZicsICdwanBlZycsICdwanAnXSxcbiAgICBwcmlvcml0eTogOCxcbiAgICBjb2xvcjogJyM2NzNhYjcnLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9qcGcnXSxcbiAgfSxcbiAgc3ZnOiB7XG4gICAgZXh0ZW5zaW9uczogWydzdmcnXSxcbiAgICBwcmlvcml0eTogOSxcbiAgICBjb2xvcjogJyNkOTgyOTQnLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9zdmcreG1sJ10sXG4gIH0sXG59IGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIEZpbGVGb3JtYXQgPSBrZXlvZiB0eXBlb2YgRk9STUFUU1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9ybWF0UHJpb3JpdHkobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IG51bWJlciB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGV4dCBvZiBGT1JNQVRTW2Zvcm1hdF0uZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKG5ldyBSZWdFeHAoYCR7ZXh0fWAsICdpJykudGVzdChsaW5rRm9ybWF0KSkge1xuICAgICAgICBpZiAoRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5ID09PSAwKSByZXR1cm4gMFxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoRk9STUFUUykubGVuZ3RoIC0gRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiAwXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rUHJpb3JpdHkobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IG51bWJlciB7XG4gIHJldHVybiBnZXRGb3JtYXRQcmlvcml0eShnZXRGaWxlRm9ybWF0KGxpbmspKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZXh0ZW5zaW9uVG9Gb3JtYXQoZXh0ZW5zaW9uOiBzdHJpbmcpOiBGaWxlRm9ybWF0IHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChhbGlhcyA9PT0gZXh0ZW5zaW9uLnRvTG93ZXJDYXNlKCkpIHJldHVybiBmb3JtYXQgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRm9ybWF0KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBGaWxlRm9ybWF0IHtcbiAgaWYgKCdtaW1lVHlwZScgaW4gbGluaykge1xuICAgIGNvbnN0IG1pbWVUeXBlRm9ybWF0ID0gbWltZVR5cGVUb0Zvcm1hdChsaW5rLm1pbWVUeXBlKVxuICAgIGlmIChtaW1lVHlwZUZvcm1hdCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG1pbWVUeXBlRm9ybWF0XG4gICAgfVxuICB9XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAoY2hlY2tGaWxlRm9ybWF0KGxpbmssIGFsaWFzKSkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgICBpZiAoaXNGb3JtYXRJblF1ZXJ5UGFyYW0obGluaywgYWxpYXMpKSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRm9ybWF0SW5RdWVyeVBhcmFtKFxuICBsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBhbGlhczogc3RyaW5nXG4pOiBib29sZWFuIHtcbiAgY29uc3QgcXVlcnlQYXJhbXMgPSBsaW5rLnVybC5zZWFyY2hQYXJhbXNcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgcXVlcnlQYXJhbXMuZW50cmllcygpKSB7XG4gICAgaWYgKGtleSA9PT0gJ2Zvcm1hdCcgfHwga2V5ID09PSAnZicpIHtcbiAgICAgIHJldHVybiB2YWx1ZSA9PT0gYWxpYXNcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW1lVHlwZVRvRm9ybWF0KG1pbWVUeXBlOiBzdHJpbmcpOiBGaWxlRm9ybWF0IHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgbXQgb2YgRk9STUFUU1tmb3JtYXRdLm1pbWVUeXBlcykge1xuICAgICAgaWYgKG1pbWVUeXBlID09PSBtdCkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0ZpbGVGb3JtYXQoXG4gIGxpbms6IERhdGFzZXREaXN0cmlidXRpb24sXG4gIGZvcm1hdDogRmlsZUZvcm1hdFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgKCduYW1lJyBpbiBsaW5rICYmIG5ldyBSZWdFeHAoYFsuL10ke2Zvcm1hdH1gLCAnaScpLnRlc3QobGluay5uYW1lKSkgfHxcbiAgICAoJ3VybCcgaW4gbGluayAmJlxuICAgICAgbmV3IFJlZ0V4cChgWy4vXSR7Zm9ybWF0fWAsICdpJykudGVzdChsaW5rLnVybC50b1N0cmluZygpKSlcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFkZ2VDb2xvcihsaW5rRm9ybWF0OiBGaWxlRm9ybWF0KTogc3RyaW5nIHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKGAke2FsaWFzfWAsICdpJykudGVzdChsaW5rRm9ybWF0KSlcbiAgICAgICAgcmV0dXJuIEZPUk1BVFNbZm9ybWF0XS5jb2xvclxuICAgIH1cbiAgfVxuICByZXR1cm4gJ3ZhcigtLWNvbG9yLWdyYXktNzAwKScgLy8gRGVmYXVsdCBjb2xvciA/XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rTGFiZWwobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IHN0cmluZyB7XG4gIGxldCBmb3JtYXQgPSAnJ1xuICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnd2ZzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXRlMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV01TJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXTVRTJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdlc3JpUmVzdCc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnUkVTVCdcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJyZWFrXG4gICAgZGVmYXVsdDpcbiAgICAgIGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuICBjb25zdCBsYWJlbCA9IGxpbmsuZGVzY3JpcHRpb24gfHwgbGluay5uYW1lXG4gIHJldHVybiBmb3JtYXQgPyBgJHtsYWJlbH0gKCR7Zm9ybWF0fSlgIDogbGFiZWxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbWVUeXBlRm9yRm9ybWF0KGZvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB8IG51bGwge1xuICByZXR1cm4gZm9ybWF0IGluIEZPUk1BVFMgPyBGT1JNQVRTW2Zvcm1hdC50b0xvd2VyQ2FzZSgpXS5taW1lVHlwZXNbMF0gOiBudWxsXG59XG4iXX0=
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUdoRSxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQTtBQUU3QyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQzNDO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsVUFBVSxFQUFFO1lBQ1YsT0FBTztZQUNQLEtBQUs7WUFDTCxNQUFNO1lBQ04sVUFBVTtZQUNWLCtCQUErQjtTQUNoQztRQUNELFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFO1lBQ1QsMEJBQTBCO1lBQzFCLG1FQUFtRTtTQUNwRTtLQUNGO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLENBQUM7S0FDaEU7SUFDRCxJQUFJLEVBQUU7UUFDSixVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDcEIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztLQUNoQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLENBQUM7UUFDaEQsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztLQUNqQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixFQUFFLHVCQUF1QixDQUFDO0tBQzVEO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUMxQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRTtZQUNULHNDQUFzQztZQUN0QyxrQ0FBa0M7U0FDbkM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUM7UUFDbEMsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztLQUM5QztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7UUFDN0IsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxtQkFBbUIsQ0FBQztLQUNwRDtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0tBQy9CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUNuRCxRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztLQUN6QjtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsRUFBRTtRQUNaLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsRUFBRTtRQUNaLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztLQUNoRDtDQUNPLENBQUE7QUFJVixNQUFNLFVBQVUsaUJBQWlCLENBQUMsVUFBc0I7SUFDdEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQzVDLElBQUksSUFBSSxNQUFNLENBQUMsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQzlDLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsS0FBSyxDQUFDO29CQUFFLE9BQU8sQ0FBQyxDQUFBO2dCQUM1QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUE7YUFDOUQ7U0FDRjtLQUNGO0lBQ0QsT0FBTyxDQUFDLENBQUE7QUFDVixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUF5QjtJQUN2RCxPQUFPLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsOEJBQThCLENBQzVDLGFBQXFCO0lBRXJCLFNBQVMsYUFBYSxDQUFDLE1BQWtDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUMxQyxPQUFPLENBQ0wsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FDM0MsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FDM0I7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQWdCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FDdkUsQ0FBQTtJQUNILENBQUM7SUFDRCxLQUFLLE1BQU0sVUFBVSxJQUFJLE9BQU8sRUFBRTtRQUNoQyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRTtZQUN0QyxPQUFPLFVBQXdCLENBQUE7U0FDaEM7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBeUI7SUFDckQsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1FBQ3RCLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN0RCxJQUFJLGNBQWMsS0FBSyxJQUFJLEVBQUU7WUFDM0IsT0FBTyxjQUFjLENBQUE7U0FDdEI7S0FDRjtJQUNELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUM5QyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtZQUM3RCxJQUFJLG9CQUFvQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7Z0JBQUUsT0FBTyxNQUFvQixDQUFBO1NBQ25FO0tBQ0Y7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLElBQXlCLEVBQ3pCLEtBQWE7SUFFYixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQTtJQUN6QyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2hELElBQUksR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssR0FBRyxFQUFFO1lBQ25DLE9BQU8sS0FBSyxLQUFLLEtBQUssQ0FBQTtTQUN2QjtLQUNGO0lBQ0QsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFFBQWdCO0lBQy9DLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUMxQyxJQUFJLFFBQVEsS0FBSyxFQUFFO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtTQUNqRDtLQUNGO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsSUFBeUIsRUFDekIsTUFBa0I7SUFFbEIsT0FBTyxDQUNMLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxPQUFPLE1BQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxLQUFLLElBQUksSUFBSTtZQUNaLElBQUksTUFBTSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUM5RCxDQUFBO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsVUFBc0I7SUFDbEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQzlDLElBQUksSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2dCQUM5QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUE7U0FDL0I7S0FDRjtJQUNELE9BQU8sdUJBQXVCLENBQUEsQ0FBQyxrQkFBa0I7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBeUI7SUFDcEQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBQ2YsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2pCLEtBQUssU0FBUztZQUNaO2dCQUNFLFFBQVEsSUFBSSxDQUFDLHFCQUFxQixFQUFFO29CQUNsQyxLQUFLLEtBQUs7d0JBQ1IsTUFBTSxHQUFHLEtBQUssQ0FBQTt3QkFDZCxNQUFLO29CQUNQLEtBQUssS0FBSzt3QkFDUixNQUFNLEdBQUcsS0FBSyxDQUFBO3dCQUNkLE1BQUs7b0JBQ1AsS0FBSyxNQUFNO3dCQUNULE1BQU0sR0FBRyxNQUFNLENBQUE7d0JBQ2YsTUFBSztvQkFDUCxLQUFLLFVBQVU7d0JBQ2IsTUFBTSxHQUFHLE1BQU0sQ0FBQTt3QkFDZixNQUFLO2lCQUNSO2FBQ0Y7WUFDRCxNQUFLO1FBQ1A7WUFDRSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO0tBQy9CO0lBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFBO0lBQzNDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssS0FBSyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsTUFBa0I7SUFDckQsT0FBTyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7QUFDOUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IERhdGFzZXREaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbm1hcmtlcignZG93bmxvYWRzLndmcy5mZWF0dXJldHlwZS5ub3QuZm91bmQnKVxuXG5leHBvcnQgY29uc3QgRk9STUFUUyA9IHtcbiAgY3N2OiB7XG4gICAgZXh0ZW5zaW9uczogWydjc3YnXSxcbiAgICBwcmlvcml0eTogMSxcbiAgICBjb2xvcjogJyM1NTlkN2YnLFxuICAgIG1pbWVUeXBlczogWyd0ZXh0L2NzdicsICdhcHBsaWNhdGlvbi9jc3YnXSxcbiAgfSxcbiAgZXhjZWw6IHtcbiAgICBleHRlbnNpb25zOiBbXG4gICAgICAnZXhjZWwnLFxuICAgICAgJ3hscycsXG4gICAgICAneGxzeCcsXG4gICAgICAnbXMtZXhjZWwnLFxuICAgICAgJ29wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50JyxcbiAgICBdLFxuICAgIHByaW9yaXR5OiAyLFxuICAgIGNvbG9yOiAnIzBmNDM5NScsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICAgXSxcbiAgfSxcbiAgZ2VvanNvbjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ2VvanNvbiddLFxuICAgIHByaW9yaXR5OiAzLFxuICAgIGNvbG9yOiAnIzFlNTE4MCcsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlbytqc29uJywgJ2FwcGxpY2F0aW9uL3ZuZC5nZW8ranNvbiddLFxuICB9LFxuICBqc29uOiB7XG4gICAgZXh0ZW5zaW9uczogWydqc29uJ10sXG4gICAgcHJpb3JpdHk6IDMsXG4gICAgY29sb3I6ICcjMWU1MTgwJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vanNvbiddLFxuICB9LFxuICBzaHA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3NocCcsICdzaGFwZScsICd6aXBwZWQtc2hhcGVmaWxlJ10sXG4gICAgcHJpb3JpdHk6IDQsXG4gICAgY29sb3I6ICcjMzI4NTU2JyxcbiAgICBtaW1lVHlwZXM6IFsneC1naXMveC1zaGFwZWZpbGUnXSxcbiAgfSxcbiAgZ21sOiB7XG4gICAgZXh0ZW5zaW9uczogWydnbWwnXSxcbiAgICBwcmlvcml0eTogNSxcbiAgICBjb2xvcjogJyNjOTJiY2UnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nbWwreG1sJywgJ3RleHQveG1sOyBzdWJ0eXBlPWdtbCddLFxuICB9LFxuICBrbWw6IHtcbiAgICBleHRlbnNpb25zOiBbJ2ttbCcsICdrbXonXSxcbiAgICBwcmlvcml0eTogNixcbiAgICBjb2xvcjogJyMzNDgwMDknLFxuICAgIG1pbWVUeXBlczogW1xuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua21sK3htbCcsXG4gICAgICAnYXBwbGljYXRpb24vdm5kLmdvb2dsZS1lYXJ0aC5rbXonLFxuICAgIF0sXG4gIH0sXG4gIGdwa2c6IHtcbiAgICBleHRlbnNpb25zOiBbJ2dwa2cnLCAnZ2VvcGFja2FnZSddLFxuICAgIHByaW9yaXR5OiA3LFxuICAgIGNvbG9yOiAnI2VhNzliYScsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlb3BhY2thZ2Urc3FsaXRlMyddLFxuICB9LFxuICB6aXA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3ppcCcsICd0YXIuZ3onXSxcbiAgICBwcmlvcml0eTogOCxcbiAgICBjb2xvcjogJyNmMmJiM2EnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi96aXAnLCAnYXBwbGljYXRpb24veC16aXAnXSxcbiAgfSxcbiAgcGRmOiB7XG4gICAgZXh0ZW5zaW9uczogWydwZGYnXSxcbiAgICBwcmlvcml0eTogOSxcbiAgICBjb2xvcjogJyNkYjU0NGEnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9wZGYnXSxcbiAgfSxcbiAganBnOiB7XG4gICAgZXh0ZW5zaW9uczogWydqcGcnLCAnanBlZycsICdqZmlmJywgJ3BqcGVnJywgJ3BqcCddLFxuICAgIHByaW9yaXR5OiA5LFxuICAgIGNvbG9yOiAnIzY3M2FiNycsXG4gICAgbWltZVR5cGVzOiBbJ2ltYWdlL2pwZyddLFxuICB9LFxuICBzdmc6IHtcbiAgICBleHRlbnNpb25zOiBbJ3N2ZyddLFxuICAgIHByaW9yaXR5OiAxMCxcbiAgICBjb2xvcjogJyNkOTgyOTQnLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9zdmcreG1sJ10sXG4gIH0sXG4gIGR4Zjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZHhmJ10sXG4gICAgcHJpb3JpdHk6IDExLFxuICAgIGNvbG9yOiAnI2RlNjMwYicsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL3gtZHhmJywgJ2ltYWdlL3gtZHhmJ10sXG4gIH0sXG59IGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIEZpbGVGb3JtYXQgPSBrZXlvZiB0eXBlb2YgRk9STUFUU1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9ybWF0UHJpb3JpdHkobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IG51bWJlciB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGV4dCBvZiBGT1JNQVRTW2Zvcm1hdF0uZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKG5ldyBSZWdFeHAoYCR7ZXh0fWAsICdpJykudGVzdChsaW5rRm9ybWF0KSkge1xuICAgICAgICBpZiAoRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5ID09PSAwKSByZXR1cm4gMFxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoRk9STUFUUykubGVuZ3RoIC0gRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiAwXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rUHJpb3JpdHkobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IG51bWJlciB7XG4gIHJldHVybiBnZXRGb3JtYXRQcmlvcml0eShnZXRGaWxlRm9ybWF0KGxpbmspKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KFxuICBzZXJ2aWNlT3V0cHV0OiBzdHJpbmdcbik6IEZpbGVGb3JtYXQgfCBudWxsIHtcbiAgZnVuY3Rpb24gZm9ybWF0TWF0Y2hlcihmb3JtYXQ6IHR5cGVvZiBGT1JNQVRTW0ZpbGVGb3JtYXRdKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgb3V0cHV0ID0gc2VydmljZU91dHB1dC50b0xvd2VyQ2FzZSgpXG4gICAgcmV0dXJuIChcbiAgICAgIGZvcm1hdC5leHRlbnNpb25zLnNvbWUoKGV4dGVuc2lvbjogc3RyaW5nKSA9PlxuICAgICAgICBvdXRwdXQuaW5jbHVkZXMoZXh0ZW5zaW9uKVxuICAgICAgKSB8fFxuICAgICAgZm9ybWF0Lm1pbWVUeXBlcy5zb21lKChtaW1lVHlwZTogc3RyaW5nKSA9PiBvdXRwdXQuaW5jbHVkZXMobWltZVR5cGUpKVxuICAgIClcbiAgfVxuICBmb3IgKGNvbnN0IGZvcm1hdE5hbWUgaW4gRk9STUFUUykge1xuICAgIGlmIChmb3JtYXRNYXRjaGVyKEZPUk1BVFNbZm9ybWF0TmFtZV0pKSB7XG4gICAgICByZXR1cm4gZm9ybWF0TmFtZSBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRm9ybWF0KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBGaWxlRm9ybWF0IHtcbiAgaWYgKCdtaW1lVHlwZScgaW4gbGluaykge1xuICAgIGNvbnN0IG1pbWVUeXBlRm9ybWF0ID0gbWltZVR5cGVUb0Zvcm1hdChsaW5rLm1pbWVUeXBlKVxuICAgIGlmIChtaW1lVHlwZUZvcm1hdCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG1pbWVUeXBlRm9ybWF0XG4gICAgfVxuICB9XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAoY2hlY2tGaWxlRm9ybWF0KGxpbmssIGFsaWFzKSkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgICBpZiAoaXNGb3JtYXRJblF1ZXJ5UGFyYW0obGluaywgYWxpYXMpKSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRm9ybWF0SW5RdWVyeVBhcmFtKFxuICBsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBhbGlhczogc3RyaW5nXG4pOiBib29sZWFuIHtcbiAgY29uc3QgcXVlcnlQYXJhbXMgPSBsaW5rLnVybC5zZWFyY2hQYXJhbXNcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgcXVlcnlQYXJhbXMuZW50cmllcygpKSB7XG4gICAgaWYgKGtleSA9PT0gJ2Zvcm1hdCcgfHwga2V5ID09PSAnZicpIHtcbiAgICAgIHJldHVybiB2YWx1ZSA9PT0gYWxpYXNcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW1lVHlwZVRvRm9ybWF0KG1pbWVUeXBlOiBzdHJpbmcpOiBGaWxlRm9ybWF0IHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgbXQgb2YgRk9STUFUU1tmb3JtYXRdLm1pbWVUeXBlcykge1xuICAgICAgaWYgKG1pbWVUeXBlID09PSBtdCkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0ZpbGVGb3JtYXQoXG4gIGxpbms6IERhdGFzZXREaXN0cmlidXRpb24sXG4gIGZvcm1hdDogRmlsZUZvcm1hdFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgKCduYW1lJyBpbiBsaW5rICYmIG5ldyBSZWdFeHAoYFsuL10ke2Zvcm1hdH1gLCAnaScpLnRlc3QobGluay5uYW1lKSkgfHxcbiAgICAoJ3VybCcgaW4gbGluayAmJlxuICAgICAgbmV3IFJlZ0V4cChgWy4vXSR7Zm9ybWF0fWAsICdpJykudGVzdChsaW5rLnVybC50b1N0cmluZygpKSlcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFkZ2VDb2xvcihsaW5rRm9ybWF0OiBGaWxlRm9ybWF0KTogc3RyaW5nIHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKGAke2FsaWFzfWAsICdpJykudGVzdChsaW5rRm9ybWF0KSlcbiAgICAgICAgcmV0dXJuIEZPUk1BVFNbZm9ybWF0XS5jb2xvclxuICAgIH1cbiAgfVxuICByZXR1cm4gJ3ZhcigtLWNvbG9yLWdyYXktNzAwKScgLy8gRGVmYXVsdCBjb2xvciA/XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rTGFiZWwobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IHN0cmluZyB7XG4gIGxldCBmb3JtYXQgPSAnJ1xuICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnd2ZzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXRlMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV01TJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXTVRTJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdlc3JpUmVzdCc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnUkVTVCdcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJyZWFrXG4gICAgZGVmYXVsdDpcbiAgICAgIGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuICBjb25zdCBsYWJlbCA9IGxpbmsuZGVzY3JpcHRpb24gfHwgbGluay5uYW1lXG4gIHJldHVybiBmb3JtYXQgPyBgJHtsYWJlbH0gKCR7Zm9ybWF0fSlgIDogbGFiZWxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbWVUeXBlRm9yRm9ybWF0KGZvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB8IG51bGwge1xuICByZXR1cm4gZm9ybWF0IGluIEZPUk1BVFMgPyBGT1JNQVRTW2Zvcm1hdC50b0xvd2VyQ2FzZSgpXS5taW1lVHlwZXNbMF0gOiBudWxsXG59XG4iXX0=
@@ -16,20 +16,21 @@
16
16
  "chart.type.line": "Liniendiagramm",
17
17
  "chart.type.lineSmooth": "Geglättes Liniendiagramm",
18
18
  "chart.type.pie": "Kreisdiagramm",
19
- "dashboard.labels.mySpace": "",
20
- "dashboard.records.all": "",
21
- "dashboard.records.myDraft": "",
22
- "dashboard.records.myLibrary": "",
23
- "dashboard.records.myOrg": "",
24
- "dashboard.records.myRecords": "",
25
- "dashboard.records.noRecord": "",
26
- "dashboard.records.noUser": "",
27
- "dashboard.records.publishedRecords": "",
28
- "dashboard.records.search": "",
29
- "dashboard.records.userDetail": "",
30
- "dashboard.records.userEmail": "",
31
- "dashboard.records.username": "",
32
- "dashboard.records.users": "",
19
+ "dashboard.createRecord": "",
20
+ "dashboard.labels.mySpace": "Mein Bereich",
21
+ "dashboard.records.all": "Katalog",
22
+ "dashboard.records.myDraft": "Meine Entwürfe",
23
+ "dashboard.records.myLibrary": "Meine Bibliothek",
24
+ "dashboard.records.myOrg": "Meine Organisation",
25
+ "dashboard.records.myRecords": "Meine Datensätze",
26
+ "dashboard.records.publishedRecords": "{count, plural, =1{veröffentlichter Datensatz} other{veröffentlichte Datensätze}}",
27
+ "dashboard.records.search": "Suche nach \"{searchText}\"",
28
+ "dashboard.records.userDetail": "Name",
29
+ "dashboard.records.userEmail": "E-Mail",
30
+ "dashboard.records.username": "Benutzername",
31
+ "dashboard.records.users": "{count, plural, =1{Benutzer} other{Benutzer}}",
32
+ "dashboard.results.listMetadata": "",
33
+ "dashboard.results.listResources": "",
33
34
  "datafeeder.analysisProgressBar.illustration.fileFormatDetection": "Dateiformat-Erkennung",
34
35
  "datafeeder.analysisProgressBar.illustration.gatheringDatasetInformation": "Sammeln von Datensatzinformationen",
35
36
  "datafeeder.analysisProgressBar.illustration.samplingData": "Datenauswahl",
@@ -43,7 +44,7 @@
43
44
  "datafeeder.form.datepicker": "Wissen Sie, wann der Datensatz erstellt wurde?",
44
45
  "datafeeder.form.description": "Beschreiben Sie abschließend den Prozess, der zur Erstellung des Datensatzes verwendet wurde",
45
46
  "datafeeder.form.dropdown": "Für welche Skala wurde er erstellt?",
46
- "datafeeder.form.tags": "Wählen Sie einen oder mehrere Tags aus, die zu Ihrem Datensatz passen",
47
+ "datafeeder.form.tags": "Wählen Sie einen oder mehrere Tage aus, die zu Ihrem Datensatz passen",
47
48
  "datafeeder.form.title": "Geben Sie Ihrem Datensatz den besten Titel",
48
49
  "datafeeder.formsPage.title": "Erzählen Sie uns mehr über Ihren Datensatz",
49
50
  "datafeeder.month.april": "April",
@@ -58,16 +59,16 @@
58
59
  "datafeeder.month.november": "November",
59
60
  "datafeeder.month.october": "Oktober",
60
61
  "datafeeder.month.september": "September",
61
- "datafeeder.publish.hint": "Sie können diese Seite sicher verlassen. Sie werden benachrichtigt, wenn der Vorgang abgeschlossen ist",
62
- "datafeeder.publish.illustration.title": "Ein weiterer Datensatz zum Veröffentlichen?",
62
+ "datafeeder.publish.hint": "Sie können diese Seite sicher verlassen. Sie werden benachrichtigt, wenn der Vorgang abgeschlossen ist.",
63
+ "datafeeder.publish.illustration.title": "Ein weiterer Datensatz \n zum Veröffentlichen?",
63
64
  "datafeeder.publish.subtitle": "Das Veröffentlichen kann einige Minuten dauern.",
64
- "datafeeder.publish.title": "Vielen Dank! Ihr Datensatz wird veröffentlicht",
65
+ "datafeeder.publish.title": "Vielen Dank! \n Ihr Datensatz wird veröffentlicht",
65
66
  "datafeeder.publish.upload": "Jetzt hochladen",
66
67
  "datafeeder.publishSuccess.geonetworkRecord": "Metadatensatz",
67
68
  "datafeeder.publishSuccess.illustration.title": "Erledigt, alles ist gut!",
68
69
  "datafeeder.publishSuccess.mapViewer": "Kartenviewer",
69
70
  "datafeeder.publishSuccess.subtitle": "Zeigen Sie Ihre Daten an in:",
70
- "datafeeder.publishSuccess.title": "Herzlichen Glückwunsch! Ihr Datensatz wurde veröffentlicht",
71
+ "datafeeder.publishSuccess.title": "Herzlichen Glückwunsch! \n Ihr Datensatz wurde veröffentlicht",
71
72
  "datafeeder.publishSuccess.uploadAnotherData": "Ein weiteren Datensatz hochladen",
72
73
  "datafeeder.summarizePage.illustration": "Kein Fehler? Los geht's!",
73
74
  "datafeeder.summarizePage.previous": "Zurück",
@@ -75,11 +76,11 @@
75
76
  "datafeeder.summarizePage.title": "Sie sind fast fertig...",
76
77
  "datafeeder.upload.acceptedFormats": "Akzeptierte Dateiformate:",
77
78
  "datafeeder.upload.checkboxLabel": "Ich besitze die Rechte zur Veröffentlichung dieses Datensatzes",
78
- "datafeeder.upload.error.subtitle.analysis": "Überprüfen Sie, ob die Datei einen gültigen geospatialen Datensatz enthält",
79
+ "datafeeder.upload.error.subtitle.analysis": "Überprüfen Sie, ob die Datei einen gültigen geografischen Datensatz enthält",
79
80
  "datafeeder.upload.error.subtitle.cantOpenFile": "Bitte überprüfen Sie, ob die Datei gültig ist",
80
81
  "datafeeder.upload.error.subtitle.fileFormat": "Beachten Sie: Nur SHP-Dateien",
81
- "datafeeder.upload.error.subtitle.fileSize": "Beachten Sie: Maximal {size} MB",
82
- "datafeeder.upload.error.title.analysis": "Fehler bei der Datensatzanalyse",
82
+ "datafeeder.upload.error.subtitle.fileSize": "Beachten Sie: Maximale Dateigröße {size} MB",
83
+ "datafeeder.upload.error.title.analysis": "Fehler während der Datensatzanalyse",
83
84
  "datafeeder.upload.error.title.cantOpenFile": "Fehler beim Öffnen der Datei",
84
85
  "datafeeder.upload.error.title.fileFormat": "Das ausgewählte Dateiformat wird nicht unterstützt",
85
86
  "datafeeder.upload.error.title.fileHasntSelected": "Keine Datei ausgewählt",
@@ -87,19 +88,19 @@
87
88
  "datafeeder.upload.error.title.noRightsToSendData": "Sie dürfen diesen Datensatz nicht veröffentlichen",
88
89
  "datafeeder.upload.illustration.enrichment": "Anreicherung",
89
90
  "datafeeder.upload.illustration.import": "Import",
90
- "datafeeder.upload.illustration.title": "Das Hinzufügen von Daten war noch nie einfacher",
91
+ "datafeeder.upload.illustration.title": "Das Hinzufügen von Daten \n war noch nie so einfach",
91
92
  "datafeeder.upload.illustration.validation": "Validierung",
92
- "datafeeder.upload.illustration.verification": "Verifizierung",
93
+ "datafeeder.upload.illustration.verification": "Überprüfung",
93
94
  "datafeeder.upload.inputLabel": "Importieren Sie Ihre Datei",
94
95
  "datafeeder.upload.maxFileSize": "Maximale Dateigröße beträgt {size} MB",
95
96
  "datafeeder.upload.title": "Laden Sie Ihren Datensatz hoch",
96
97
  "datafeeder.upload.uploadButton": "Hochladen",
97
- "datafeeder.validation.encoding": "Kodierung",
98
+ "datafeeder.validation.encoding": "Codierung",
98
99
  "datafeeder.validation.extent.title": "Hier ist der Datensatzumfang",
99
100
  "datafeeder.validation.extent.title.unknown": "Das Projektionssystem ist unbekannt",
100
101
  "datafeeder.validation.projection": "Raumbezugssystem:",
101
- "datafeeder.validation.projection.unknown": "Wählen Sie ein Raumbezugssystem",
102
- "datafeeder.validation.sample.title": "Und eine Beispieleinheit aus dem Datensatz",
102
+ "datafeeder.validation.projection.unknown": "Wählen Sie ein Raumbezugssystem aus",
103
+ "datafeeder.validation.sample.title": "Und eine Beispielentität aus dem Datensatz",
103
104
  "datafeeder.wizard.emptyRequiredValuesMessage": "Bitte füllen Sie die obligatorischen Felder aus",
104
105
  "datafeeder.wizardSummarize.createdAt": "Erstellt am",
105
106
  "datafeeder.wizardSummarize.scale": "Maßstab",
@@ -109,19 +110,20 @@
109
110
  "datahub.header.news": "Startseite",
110
111
  "datahub.header.organisations": "Organisationen",
111
112
  "datahub.header.popularRecords": "Die beliebtesten",
112
- "datahub.header.title.html": "<div class=\"text-white\">Entdecken Sie offene<br> Daten von meiner Organisation</div>",
113
- "datahub.news.contact.contactus": "",
114
- "datahub.news.contact.html": "",
115
- "datahub.news.contact.title": "",
113
+ "datahub.header.title.html": "<div class=\"text-white\">Entdecken Sie offene<br> Daten meiner Organisation</div>",
114
+ "datahub.news.contact.contactus": "Kontaktieren Sie uns",
115
+ "datahub.news.contact.html": "<p>Brauchen Sie Daten, die derzeit nicht auf der Plattform vorhanden sind?</p><p>Unsere Teams stehen Ihnen zur Verfügung.</p>",
116
+ "datahub.news.contact.title": "Ein spezielles Bedürfnis?",
116
117
  "datahub.news.feed": "Nachrichtenfeed",
117
118
  "datahub.news.figures": "Indikatoren",
118
- "datahub.search.back": "Zurück zu den Ergebnissen",
119
+ "datahub.record.addToFavorites": "Zu Favoriten hinzufügen",
120
+ "datahub.search.back": "Zurück",
119
121
  "datahub.search.filter.all": "Alle",
120
- "datahub.search.filter.generatedByWfs": "Generiert durch API",
122
+ "datahub.search.filter.generatedByWfs": "Generiert durch eine API",
121
123
  "datahub.search.filter.others": "Andere",
122
124
  "dataset.error.http": "Die Daten konnten aufgrund eines HTTP-Fehlers nicht geladen werden: \"{ info }\"",
123
125
  "dataset.error.network": "Die Daten konnten aufgrund eines Netzwerkfehlers oder CORS-Beschränkungen nicht geladen werden: \"{ info }\"",
124
- "dataset.error.parse": "Die Daten wurden geladen, konnten aber nicht geparst werden: \"{ info }\"",
126
+ "dataset.error.parse": "Die Daten wurden geladen, konnten aber nicht gelesen werden: \"{ info }\"",
125
127
  "dataset.error.unknown": "Die Daten können nicht angezeigt werden: \"{ info }\"",
126
128
  "dataset.error.unsupportedType": "Der folgende Inhaltstyp wird nicht unterstützt: \"{ info }\"",
127
129
  "domain.record.status.completed": "Abgeschlossen",
@@ -129,18 +131,18 @@
129
131
  "domain.record.status.ongoing": "Kontinuierliche Aktualisierung",
130
132
  "domain.record.status.removed": "Entfernt",
131
133
  "domain.record.status.under_development": "In Erstellung",
132
- "domain.record.updateFrequency.asNeeded": "Bei Bedarf",
133
- "domain.record.updateFrequency.continual": "Kontinuierlich",
134
+ "domain.record.updateFrequency.asNeeded": "Nach Bedarf",
135
+ "domain.record.updateFrequency.continual": "Fortlaufend",
134
136
  "domain.record.updateFrequency.day": "{count, plural, =0{0} one{Ein} other{{count}}} mal am Tag",
135
- "domain.record.updateFrequency.irregular": "Unregelmässig",
137
+ "domain.record.updateFrequency.irregular": "Unregelmäßig",
136
138
  "domain.record.updateFrequency.month": "{count, plural, =0{0} one{Ein} other{{count}}} mal im Monat",
137
139
  "domain.record.updateFrequency.notPlanned": "Nicht geplant",
138
- "domain.record.updateFrequency.periodic": "Regelmässig",
140
+ "domain.record.updateFrequency.periodic": "Regelmäßig",
139
141
  "domain.record.updateFrequency.unknown": "Unbekannt",
140
142
  "domain.record.updateFrequency.week": "{count, plural, =0{0} one{Ein} other{{count}}} mal in der Woche",
141
143
  "domain.record.updateFrequency.year": "{count, plural, =0{0} one{Ein} other{{count}}} mal im Jahr",
142
144
  "downloads.format.unknown": "unbekannt",
143
- "downloads.wfs.featuretype.not.found": "Die Schicht wurde nicht gefunden",
145
+ "downloads.wfs.featuretype.not.found": "Der Layer wurde nicht gefunden",
144
146
  "dropFile": "Datei ablegen",
145
147
  "externalviewer.dataset.unnamed": "Datensatz aus dem Datahub",
146
148
  "facets.block.title.OrgForResource": "Organisation",
@@ -175,14 +177,18 @@
175
177
  "map.add.layer.file": "Aus einer Datei",
176
178
  "map.add.layer.wfs": "Aus WFS",
177
179
  "map.add.layer.wms": "Aus WMS",
178
- "map.layer.add": "",
179
- "map.layers.available": "",
180
+ "map.addFromFile.placeholder": "Klicke hier oder ziehe eine Datei herein",
181
+ "map.geocoding.placeholder": "",
182
+ "map.help.addFromFile": "Klicke oder ziehe eine Datei herein um eine Karte hinzuzufügen (momentan wird nur das GeoJSON-Format unterstützt).",
183
+ "map.layer.add": "Hinzufügen",
184
+ "map.layers.available": "Verfügbare Layer",
180
185
  "map.layers.list": "Ebenen",
181
186
  "map.loading.data": "Kartendaten werden geladen...",
182
- "map.loading.service": "",
187
+ "map.loading.service": "Dienst wird geladen...",
183
188
  "map.navigation.message": "Bitte verwenden Sie STRG + Maus (oder zwei Finger auf einem Mobilgerät), um die Karte zu navigieren",
184
189
  "map.select.layer": "Datenquelle",
185
- "map.wms.urlInput.hint": "",
190
+ "map.wfs.urlInput.hint": "Geben Sie die WFS URL ein",
191
+ "map.wms.urlInput.hint": "Geben Sie die WMS URL ein",
186
192
  "multiselect.filter.placeholder": "Suche",
187
193
  "nav.back": "Zurück",
188
194
  "next": "weiter",
@@ -198,56 +204,61 @@
198
204
  "pagination.pageOf": "von",
199
205
  "previous": "zurück",
200
206
  "record.action.download": "Herunterladen",
201
- "record.action.view": "Ansehen",
207
+ "record.action.view": "Anzeigen",
202
208
  "record.externalViewer.open": "In externem Kartenviewer öffnen",
203
209
  "record.metadata.about": "Beschreibung",
204
210
  "record.metadata.api": "API",
205
- "record.metadata.api.form.closeButton": "",
206
- "record.metadata.api.form.closeForm": "",
207
- "record.metadata.api.form.create": "",
208
- "record.metadata.api.form.customUrl": "",
209
- "record.metadata.api.form.limit": "",
210
- "record.metadata.api.form.limit.all": "",
211
- "record.metadata.api.form.offset": "",
212
- "record.metadata.api.form.openForm": "",
213
- "record.metadata.api.form.reset": "",
214
- "record.metadata.api.form.title": "",
215
- "record.metadata.api.form.type": "",
216
- "record.metadata.author": "",
211
+ "record.metadata.api.form.closeButton": "Schließen",
212
+ "record.metadata.api.form.closeForm": "Formular schließen",
213
+ "record.metadata.api.form.create": "Ihre Anfrage erstellen",
214
+ "record.metadata.api.form.customUrl": "Benutzerdefinierte URL",
215
+ "record.metadata.api.form.limit": "Anzahl der Datensätze",
216
+ "record.metadata.api.form.limit.all": "Alle",
217
+ "record.metadata.api.form.offset": "Anzahl des ersten Datensatzes",
218
+ "record.metadata.api.form.openForm": "Formular öffnen",
219
+ "record.metadata.api.form.reset": "Zurücksetzen",
220
+ "record.metadata.api.form.title": "Benutzerdefinierte URL generieren",
221
+ "record.metadata.api.form.type": "Ausgabeformat",
222
+ "record.metadata.author": "Autor",
217
223
  "record.metadata.catalog": "Katalog",
218
224
  "record.metadata.contact": "Kontakt",
219
- "record.metadata.createdOn": "Erstellt am",
220
- "record.metadata.details": "Details",
225
+ "record.metadata.details": "Technische Informationen",
221
226
  "record.metadata.download": "Downloads",
222
- "record.metadata.formats": "",
223
- "record.metadata.isOpenData": "Open Data",
227
+ "record.metadata.formats": "Formate",
224
228
  "record.metadata.keywords": "Stichworte",
229
+ "record.metadata.lastUpdate": "Zuletzt aktualisiert am",
225
230
  "record.metadata.links": "Links",
226
- "record.metadata.noUsage": "Für diesen Datensatz sind keine Verwendungsbedingungen angegeben.",
231
+ "record.metadata.noUsage": "Für diesen Datensatz sind keine Nutzungsbedingungen angegeben.",
227
232
  "record.metadata.origin": "Über die Daten",
233
+ "record.metadata.otherConstraints": "",
234
+ "record.metadata.owner": "",
228
235
  "record.metadata.preview": "Vorschau",
229
236
  "record.metadata.publications": "Veröffentlichungen",
230
- "record.metadata.quality": "",
231
- "record.metadata.quality.contact.failed": "",
232
- "record.metadata.quality.contact.success": "",
233
- "record.metadata.quality.description.failed": "",
234
- "record.metadata.quality.description.success": "",
235
- "record.metadata.quality.details": "",
236
- "record.metadata.quality.keywords.failed": "",
237
- "record.metadata.quality.keywords.success": "",
238
- "record.metadata.quality.legalConstraints.failed": "",
239
- "record.metadata.quality.legalConstraints.success": "",
240
- "record.metadata.quality.organisation.failed": "",
241
- "record.metadata.quality.organisation.success": "",
242
- "record.metadata.quality.title.failed": "",
243
- "record.metadata.quality.title.success": "",
244
- "record.metadata.quality.topic.failed": "",
245
- "record.metadata.quality.topic.success": "",
246
- "record.metadata.quality.updateFrequency.failed": "",
247
- "record.metadata.quality.updateFrequency.success": "",
237
+ "record.metadata.quality": "Metadatenqualität",
238
+ "record.metadata.quality.contact.failed": "Kontakt nicht angegeben",
239
+ "record.metadata.quality.contact.success": "Kontakt angegeben",
240
+ "record.metadata.quality.description.failed": "Beschreibung nicht angegeben",
241
+ "record.metadata.quality.description.success": "Beschreibung angegeben",
242
+ "record.metadata.quality.details": "Details",
243
+ "record.metadata.quality.keywords.failed": "Schlagwörter nicht angegeben",
244
+ "record.metadata.quality.keywords.success": "Schlagwörter angegeben",
245
+ "record.metadata.quality.legalConstraints.failed": "Rechtliche Beschränkungen nicht angegeben",
246
+ "record.metadata.quality.legalConstraints.success": "Rechtliche Beschränkungen angegeben",
247
+ "record.metadata.quality.organisation.failed": "Organisation nicht angegeben",
248
+ "record.metadata.quality.organisation.success": "Organisation angegeben",
249
+ "record.metadata.quality.title.failed": "Titel nicht angegeben",
250
+ "record.metadata.quality.title.success": "Titel angegeben",
251
+ "record.metadata.quality.topic.failed": "Thema nicht angegeben",
252
+ "record.metadata.quality.topic.success": "Thema angegeben",
253
+ "record.metadata.quality.updateFrequency.failed": "Aktualisierungsfrequenz nicht angegeben",
254
+ "record.metadata.quality.updateFrequency.success": "Aktualisierungsfrequenz angegeben",
248
255
  "record.metadata.related": "Ähnliche Datensätze",
249
- "record.metadata.sheet": "Weitere Informationen erhalten Sie unter :",
256
+ "record.metadata.sheet": "Weitere Informationen verfügbar unter:",
257
+ "record.metadata.status": "",
258
+ "record.metadata.themes": "Kategorien",
250
259
  "record.metadata.title": "Titel",
260
+ "record.metadata.type": "Geographischer Datensatz",
261
+ "record.metadata.uniqueId": "Eindeutige Kennung",
251
262
  "record.metadata.updateFrequency": "Aktualisierungsfrequenz der Daten",
252
263
  "record.metadata.updateStatus": "Aktualisierungsstatus der Daten",
253
264
  "record.metadata.updatedOn": "Letzte Aktualisierung der Dateninformationen",
@@ -259,28 +270,29 @@
259
270
  "record.was.created.time": "erstellte diesen Datensatz {time}",
260
271
  "records": "Datensätze",
261
272
  "results.layout.selectOne": "Layout auswählen",
262
- "results.records.hits.displayedOn": "{displayed, plural, =0{Kein Datensatz.} one{1 Datensatz} other{{displayed} Datensätze }} {hits, plural, other{auf {hits} insgesamt angezeigt.}}",
263
- "results.records.hits.empty.help.html": "Vorschläge: <ul class='list-disc list-inside'><li>Versuchen Sie andere Wörter</li><li>Geben Sie weniger Wörter ein</li></ul>",
273
+ "results.records.hits.displayedOn": "{displayed, plural, =0{Kein Datensatz.} one{1 Datensatz} other{{displayed} Datensätze }} {hits, plural, other{angezeigt von {hits} insgesamt.}}",
274
+ "results.records.hits.empty.help.html": "Vorschläge: <ul class='list-disc list-inside'><li>Versuchen Sie es mit anderen Worten</li><li>Beschränken Sie die Suchwörter</li></ul>",
264
275
  "results.records.hits.found": "{hits, plural, =0{Keine Dokumente entsprechen der angegebenen Suche.} one{1 Datensatz gefunden.} other{{hits} Datensätze gefunden.}}",
265
- "results.records.hits.selected": "",
276
+ "results.records.hits.selected": "{ amount } ausgewählt",
266
277
  "results.showMore": "Mehr Ergebnisse anzeigen...",
267
- "results.sortBy.dateStamp": "Letzte Aktualisierungen",
278
+ "results.sortBy.dateStamp": "Neueste",
268
279
  "results.sortBy.popularity": "Beliebtheit",
269
- "results.sortBy.qualityScore": "",
280
+ "results.sortBy.qualityScore": "Qualitätsbewertung",
270
281
  "results.sortBy.relevancy": "Relevanz",
271
282
  "search.autocomplete.error": "Vorschläge konnten nicht abgerufen werden:",
272
283
  "search.error.couldNotReachApi": "Die API konnte nicht erreicht werden",
273
- "search.error.receivedError": "Ein Fehler wurde empfangen",
284
+ "search.error.receivedError": "Ein Fehler ist aufgetreten",
274
285
  "search.error.recordNotFound": "Der Datensatz mit der Kennung \"{ id }\" konnte nicht gefunden werden.",
275
- "search.field.any.placeholder": "Suche nach Datensätzen ...",
286
+ "search.field.any.placeholder": "Suche Datensätze ...",
276
287
  "search.field.sortBy": "Sortieren nach:",
277
288
  "search.filters.clear": "Zurücksetzen",
278
- "search.filters.contact": "Kontakt",
289
+ "search.filters.contact": "Kontakte",
279
290
  "search.filters.format": "Formate",
280
291
  "search.filters.inspireKeyword": "INSPIRE-Schlüsselwort",
281
292
  "search.filters.isSpatial": "Ist räumliche Daten",
282
293
  "search.filters.isSpatial.no": "nicht räumlich",
283
294
  "search.filters.isSpatial.yes": "räumlich",
295
+ "search.filters.keyword": "Schlüsselwort",
284
296
  "search.filters.license": "Lizenz",
285
297
  "search.filters.license.cc-by": "Creative Commons CC-BY",
286
298
  "search.filters.license.cc-by-sa": "Creative Commons CC-BY-SA",
@@ -293,13 +305,13 @@
293
305
  "search.filters.license.unknown": "Unbekannt oder nicht vorhanden",
294
306
  "search.filters.maximize": "Erweitern",
295
307
  "search.filters.minimize": "Minimieren",
296
- "search.filters.myRecords": "",
297
- "search.filters.myRecordsHelp": "",
298
- "search.filters.otherRecords": "",
308
+ "search.filters.myRecords": "Nur meine Datensätze anzeigen",
309
+ "search.filters.myRecordsHelp": "Wenn dies aktiviert ist, werden nur von mir erstellte Datensätze angezeigt; Datensätze, die von anderen erstellt wurden, werden nicht angezeigt.",
310
+ "search.filters.otherRecords": "Datensätze von einer anderen Person anzeigen",
299
311
  "search.filters.publicationYear": "Veröffentlichungsjahr",
300
312
  "search.filters.publisher": "Organisationen",
301
- "search.filters.representationType": "",
302
- "search.filters.resourceType": "",
313
+ "search.filters.representationType": "Repräsentationstyp",
314
+ "search.filters.resourceType": "Ressourcentyp",
303
315
  "search.filters.standard": "Standard",
304
316
  "search.filters.title": "Ergebnisse filtern",
305
317
  "search.filters.topic": "Thema",
@@ -311,6 +323,7 @@
311
323
  "table.object.count": "Objekte in diesem Datensatz",
312
324
  "table.select.data": "Datenquelle",
313
325
  "tooltip.html.copy": "HTML kopieren",
326
+ "tooltip.id.copy": "",
314
327
  "tooltip.url.copy": "URL kopieren",
315
328
  "tooltip.url.open": "URL öffnen",
316
329
  "ui.readLess": "Weniger lesen",