geonetwork-ui 2.6.0-dev.9df114cd4 → 2.6.0-dev.a6b2f3e85

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 (367) hide show
  1. package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
  2. package/esm2022/libs/api/metadata-converter/src/lib/base.converter.mjs +1 -1
  3. package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
  4. package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +3 -3
  5. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +3 -3
  6. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +4 -4
  7. package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +2 -10
  8. package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +2 -1
  9. package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
  10. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  11. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +45 -9
  12. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
  13. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +25 -6
  14. package/esm2022/libs/feature/editor/src/index.mjs +2 -1
  15. package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +18 -0
  16. package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +2 -3
  17. package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +1 -1
  18. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +5 -5
  19. package/esm2022/libs/feature/record/src/index.mjs +1 -2
  20. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  21. package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +5 -9
  22. package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
  23. package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +7 -11
  24. package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
  25. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +3 -3
  26. package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
  27. package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +8 -5
  28. package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +4 -6
  29. package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
  30. package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
  31. package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
  32. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
  33. package/esm2022/libs/feature/search/src/index.mjs +2 -2
  34. package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +4 -4
  35. package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +13 -19
  36. package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
  37. package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
  38. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +26 -10
  39. package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
  40. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
  41. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
  42. package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
  43. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +11 -6
  44. package/esm2022/libs/ui/elements/src/index.mjs +3 -1
  45. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  46. package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +3 -3
  47. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
  48. package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
  49. package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +3 -3
  50. package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +51 -0
  51. package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +3 -3
  52. package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
  53. package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
  54. package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +8 -5
  55. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
  56. package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +161 -0
  57. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +16 -4
  58. package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
  59. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  60. package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
  61. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
  62. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +42 -0
  63. package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
  64. package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +3 -3
  65. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -9
  66. package/esm2022/libs/ui/layout/src/index.mjs +2 -1
  67. package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
  68. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  69. package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +15 -3
  70. package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
  71. package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
  72. package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +56 -0
  73. package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
  74. package/esm2022/libs/ui/map/src/index.mjs +2 -1
  75. package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
  76. package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
  77. package/esm2022/libs/ui/search/src/index.mjs +2 -1
  78. package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
  79. package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
  80. package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +5 -4
  81. package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +11 -3
  82. package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
  83. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +2 -1
  84. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
  85. package/esm2022/libs/util/shared/src/index.mjs +2 -1
  86. package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
  87. package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +2 -1
  88. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +13 -6
  89. package/esm2022/translations/de.json +32 -4
  90. package/esm2022/translations/en.json +36 -6
  91. package/esm2022/translations/es.json +32 -4
  92. package/esm2022/translations/fr.json +35 -5
  93. package/esm2022/translations/it.json +32 -4
  94. package/esm2022/translations/nl.json +32 -4
  95. package/esm2022/translations/pt.json +32 -4
  96. package/fesm2022/geonetwork-ui.mjs +1505 -604
  97. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  98. package/libs/api/metadata-converter/src/index.d.ts +1 -0
  99. package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
  100. package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
  101. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
  102. package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
  103. package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
  104. package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
  105. package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
  106. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +4 -2
  107. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  108. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +12 -8
  109. package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
  110. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +5 -2
  111. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  112. package/libs/feature/editor/src/index.d.ts +1 -0
  113. package/libs/feature/editor/src/index.d.ts.map +1 -1
  114. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +7 -0
  115. package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
  116. package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
  117. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
  118. package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
  119. 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
  120. package/libs/feature/record/src/index.d.ts +0 -1
  121. package/libs/feature/record/src/index.d.ts.map +1 -1
  122. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +9 -1
  123. package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
  124. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
  125. package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
  126. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
  127. package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
  128. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
  129. package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
  130. package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
  131. package/libs/feature/record/src/lib/state/mdview.effects.d.ts +3 -1
  132. package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
  133. package/libs/feature/record/src/lib/state/mdview.facade.d.ts +7 -7
  134. package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
  135. package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
  136. package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
  137. package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
  138. package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
  139. package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
  140. package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
  141. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  142. package/libs/feature/search/src/index.d.ts +1 -1
  143. package/libs/feature/search/src/index.d.ts.map +1 -1
  144. package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
  145. package/libs/feature/search/src/lib/feature-search.module.d.ts +4 -2
  146. package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
  147. package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
  148. package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
  149. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
  150. package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
  151. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
  152. package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
  153. package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
  154. package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
  155. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  156. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +2 -1
  157. package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
  158. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
  159. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
  160. package/libs/ui/elements/src/index.d.ts +2 -0
  161. package/libs/ui/elements/src/index.d.ts.map +1 -1
  162. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
  163. package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
  164. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
  165. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
  166. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +11 -0
  167. package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
  168. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +1 -1
  169. package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
  170. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
  171. package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
  172. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +30 -0
  173. package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
  174. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +3 -1
  175. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  176. package/libs/ui/inputs/src/index.d.ts +1 -0
  177. package/libs/ui/inputs/src/index.d.ts.map +1 -1
  178. package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
  179. package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
  180. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +14 -0
  181. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
  182. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
  183. package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
  184. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
  185. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
  186. package/libs/ui/layout/src/index.d.ts +1 -0
  187. package/libs/ui/layout/src/index.d.ts.map +1 -1
  188. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
  189. package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
  190. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +2 -0
  191. package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
  192. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +18 -0
  193. package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
  194. package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
  195. package/libs/ui/map/src/index.d.ts +1 -0
  196. package/libs/ui/map/src/index.d.ts.map +1 -1
  197. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
  198. package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
  199. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
  200. package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
  201. package/libs/ui/search/src/index.d.ts +1 -0
  202. package/libs/ui/search/src/index.d.ts.map +1 -1
  203. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
  204. package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
  205. package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
  206. package/libs/ui/search/src/lib/ui-search.module.d.ts +21 -19
  207. package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
  208. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  209. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  210. package/libs/util/shared/src/index.d.ts +1 -0
  211. package/libs/util/shared/src/index.d.ts.map +1 -1
  212. package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
  213. package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
  214. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
  215. package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
  216. package/libs/util/shared/src/lib/links/link-utils.d.ts +14 -7
  217. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  218. package/package.json +2 -2
  219. package/src/libs/api/metadata-converter/src/index.ts +1 -0
  220. package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
  221. package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
  222. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
  223. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +2 -2
  224. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
  225. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
  226. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +2 -2
  227. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +2 -2
  228. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +3 -3
  229. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +1 -9
  230. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +1 -0
  231. package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
  232. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +4 -4
  233. package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +26 -26
  234. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +2 -2
  235. package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
  236. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
  237. package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +54 -10
  238. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
  239. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +27 -1
  240. package/src/libs/feature/editor/src/index.ts +1 -0
  241. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +14 -0
  242. package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +15 -0
  243. package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +1 -2
  244. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -2
  245. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
  246. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
  247. package/src/libs/feature/record/src/index.ts +0 -1
  248. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +16 -10
  249. package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -3
  250. package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
  251. package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +4 -5
  252. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
  253. package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
  254. package/src/libs/feature/record/src/lib/map-view/map-view.component.html +25 -16
  255. package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
  256. package/src/libs/feature/record/src/lib/state/mdview.effects.ts +5 -3
  257. package/src/libs/feature/record/src/lib/state/mdview.facade.ts +4 -7
  258. package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
  259. package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
  260. package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
  261. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
  262. package/src/libs/feature/search/src/index.ts +1 -1
  263. package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +2 -2
  264. package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -10
  265. package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
  266. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.css +0 -0
  267. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
  268. package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
  269. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
  270. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +24 -5
  271. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
  272. package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
  273. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
  274. package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
  275. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
  276. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +5 -4
  277. package/src/libs/ui/elements/src/index.ts +2 -0
  278. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
  279. package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
  280. package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
  281. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +38 -7
  282. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
  283. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
  284. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +2 -2
  285. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
  286. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +9 -0
  287. package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +51 -0
  288. package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +5 -2
  289. package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -7
  290. package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
  291. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +9 -9
  292. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
  293. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +20 -7
  294. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -4
  295. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +2 -3
  296. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
  297. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +96 -0
  298. package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +183 -0
  299. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +6 -0
  300. package/src/libs/ui/inputs/src/index.ts +1 -0
  301. package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
  302. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  303. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
  304. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
  305. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
  306. package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
  307. package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +0 -0
  308. package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +2 -2
  309. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -3
  310. package/src/libs/ui/layout/src/index.ts +1 -0
  311. package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
  312. package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
  313. package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
  314. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
  315. package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
  316. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -7
  317. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -0
  318. package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
  319. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
  320. package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
  321. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +46 -0
  322. package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +62 -0
  323. package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -5
  324. package/src/libs/ui/map/src/index.ts +1 -0
  325. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
  326. package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
  327. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
  328. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
  329. package/src/libs/{feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts → ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts} +8 -8
  330. package/src/libs/ui/search/src/index.ts +1 -0
  331. package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
  332. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +24 -0
  333. package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
  334. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +7 -4
  335. package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +2 -1
  336. package/src/libs/ui/search/src/lib/ui-search.module.ts +5 -0
  337. package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +2 -1
  338. package/src/libs/util/app-config/src/lib/app-config.ts +1 -0
  339. package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
  340. package/src/libs/util/shared/src/index.ts +1 -0
  341. package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
  342. package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +12 -3
  343. package/src/libs/util/shared/src/lib/links/link-utils.ts +30 -12
  344. package/tailwind.base.config.js +3 -0
  345. package/tailwind.base.css +4 -16
  346. package/translations/de.json +32 -4
  347. package/translations/en.json +36 -6
  348. package/translations/es.json +32 -4
  349. package/translations/fr.json +35 -5
  350. package/translations/it.json +32 -4
  351. package/translations/nl.json +32 -4
  352. package/translations/pt.json +32 -4
  353. package/translations/sk.json +32 -4
  354. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
  355. package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
  356. package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
  357. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
  358. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +0 -1
  359. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
  360. package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
  361. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
  362. package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
  363. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
  364. package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
  365. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
  366. package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
  367. /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-map-container/form-field-map-container.component.css → multilingual-panel/multilingual-panel.component.css} +0 -0
@@ -14,6 +14,7 @@ export var LinkUsage;
14
14
  export class LinkClassifierService {
15
15
  getUsagesForLink(link) {
16
16
  switch (link.type) {
17
+ case 'endpoint':
17
18
  case 'service': {
18
19
  switch (link.accessServiceProtocol) {
19
20
  case 'esriRest':
@@ -61,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
61
62
  providedIn: 'root',
62
63
  }]
63
64
  }] });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jbGFzc2lmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvbGlua3MvbGluay1jbGFzc2lmaWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBOztBQUU1QyxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHdCQUFXLENBQUE7SUFDWCwrQkFBa0IsQ0FBQTtJQUNsQixrQ0FBcUIsQ0FBQTtJQUNyQiwwQkFBYSxDQUFBO0lBQ2IsZ0NBQW1CLENBQUE7SUFDbkIseUNBQTRCLENBQUE7SUFDNUIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVJXLFNBQVMsS0FBVCxTQUFTLFFBUXBCO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FBQyxJQUEyQjtRQUMxQyxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2YsUUFBUSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDbkMsS0FBSyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssS0FBSzt3QkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxNQUFNO3dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDM0MsS0FBSyxhQUFhO3dCQUNoQixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxPQUFPO3dCQUNWLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUE7b0JBQ3hCO3dCQUNFLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7Z0JBQzlCLENBQUM7WUFDSCxDQUFDO1lBQ0QsS0FBSyxNQUFNO2dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDNUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixRQUFRLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUM1QixLQUFLLE1BQU0sQ0FBQztvQkFDWixLQUFLLEtBQUssQ0FBQztvQkFDWCxLQUFLLE9BQU87d0JBQ1YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUM3QyxLQUFLLFNBQVM7d0JBQ1osT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO29CQUNoRDt3QkFDRSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7NEJBQ3hDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTt3QkFDaEQsQ0FBQzt3QkFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQTJCLEVBQUUsS0FBZ0I7UUFDcEQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3hELENBQUM7K0dBekNVLHFCQUFxQjttSEFBckIscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IGdldEZpbGVGb3JtYXQgfSBmcm9tICcuL2xpbmstdXRpbHMnXG5cbmV4cG9ydCBlbnVtIExpbmtVc2FnZSB7XG4gIEFQSSA9ICdhcGknLFxuICBNQVBfQVBJID0gJ21hcGFwaScsXG4gIERPV05MT0FEID0gJ2Rvd25sb2FkJyxcbiAgREFUQSA9ICdkYXRhJyxcbiAgR0VPREFUQSA9ICdnZW9kYXRhJyxcbiAgTEFORElOR19QQUdFID0gJ2xhbmRpbmdwYWdlJyxcbiAgVU5LTk9XTiA9ICd1bmtub3duJyxcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExpbmtDbGFzc2lmaWVyU2VydmljZSB7XG4gIGdldFVzYWdlc0ZvckxpbmsobGluazogRGF0YXNldE9ubGluZVJlc291cmNlKTogTGlua1VzYWdlW10ge1xuICAgIHN3aXRjaCAobGluay50eXBlKSB7XG4gICAgICBjYXNlICdzZXJ2aWNlJzoge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnZXNyaVJlc3QnOlxuICAgICAgICAgIGNhc2UgJ3dmcyc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5BUEksIExpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSSwgTGlua1VzYWdlLk1BUF9BUEldXG4gICAgICAgICAgY2FzZSAnb2djRmVhdHVyZXMnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJLCBMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgIGNhc2UgJ0dQRkRMJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSV1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuVU5LTk9XTl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgIHJldHVybiBbTGlua1VzYWdlLlVOS05PV05dXG4gICAgICBjYXNlICdkb3dubG9hZCc6IHtcbiAgICAgICAgc3dpdGNoIChnZXRGaWxlRm9ybWF0KGxpbmspKSB7XG4gICAgICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgICAgY2FzZSAnY3N2JzpcbiAgICAgICAgICBjYXNlICdleGNlbCc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkRBVEFdXG4gICAgICAgICAgY2FzZSAnZ2VvanNvbic6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGlmIChsaW5rLnVybC50b1N0cmluZygpLm1hdGNoKC9cXC93ZnMvaSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQURdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYXNVc2FnZShsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UsIHVzYWdlOiBMaW5rVXNhZ2UpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2FnZXNGb3JMaW5rKGxpbmspLmluZGV4T2YodXNhZ2UpID4gLTFcbiAgfVxufVxuIl19
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jbGFzc2lmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvbGlua3MvbGluay1jbGFzc2lmaWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUsxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBOztBQUU1QyxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHdCQUFXLENBQUE7SUFDWCwrQkFBa0IsQ0FBQTtJQUNsQixrQ0FBcUIsQ0FBQTtJQUNyQiwwQkFBYSxDQUFBO0lBQ2IsZ0NBQW1CLENBQUE7SUFDbkIseUNBQTRCLENBQUE7SUFDNUIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVJXLFNBQVMsS0FBVCxTQUFTLFFBUXBCO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FDZCxJQUFtRDtRQUVuRCxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQixLQUFLLFVBQVUsQ0FBQztZQUNoQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2YsUUFBUSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDbkMsS0FBSyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssS0FBSzt3QkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxNQUFNO3dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDM0MsS0FBSyxhQUFhO3dCQUNoQixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxPQUFPO3dCQUNWLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUE7b0JBQ3hCO3dCQUNFLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7Z0JBQzlCLENBQUM7WUFDSCxDQUFDO1lBQ0QsS0FBSyxNQUFNO2dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDNUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixRQUFRLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUM1QixLQUFLLE1BQU0sQ0FBQztvQkFDWixLQUFLLEtBQUssQ0FBQztvQkFDWCxLQUFLLE9BQU87d0JBQ1YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUM3QyxLQUFLLFNBQVM7d0JBQ1osT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO29CQUNoRDt3QkFDRSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7NEJBQ3hDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTt3QkFDaEQsQ0FBQzt3QkFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUNOLElBQW1ELEVBQ25ELEtBQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN4RCxDQUFDOytHQS9DVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gIFNlcnZpY2VPbmxpbmVSZXNvdXJjZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4vbGluay11dGlscydcblxuZXhwb3J0IGVudW0gTGlua1VzYWdlIHtcbiAgQVBJID0gJ2FwaScsXG4gIE1BUF9BUEkgPSAnbWFwYXBpJyxcbiAgRE9XTkxPQUQgPSAnZG93bmxvYWQnLFxuICBEQVRBID0gJ2RhdGEnLFxuICBHRU9EQVRBID0gJ2dlb2RhdGEnLFxuICBMQU5ESU5HX1BBR0UgPSAnbGFuZGluZ3BhZ2UnLFxuICBVTktOT1dOID0gJ3Vua25vd24nLFxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGlua0NsYXNzaWZpZXJTZXJ2aWNlIHtcbiAgZ2V0VXNhZ2VzRm9yTGluayhcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2VcbiAgKTogTGlua1VzYWdlW10ge1xuICAgIHN3aXRjaCAobGluay50eXBlKSB7XG4gICAgICBjYXNlICdlbmRwb2ludCc6XG4gICAgICBjYXNlICdzZXJ2aWNlJzoge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnZXNyaVJlc3QnOlxuICAgICAgICAgIGNhc2UgJ3dmcyc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5BUEksIExpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSSwgTGlua1VzYWdlLk1BUF9BUEldXG4gICAgICAgICAgY2FzZSAnb2djRmVhdHVyZXMnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJLCBMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgIGNhc2UgJ0dQRkRMJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSV1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuVU5LTk9XTl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgIHJldHVybiBbTGlua1VzYWdlLlVOS05PV05dXG4gICAgICBjYXNlICdkb3dubG9hZCc6IHtcbiAgICAgICAgc3dpdGNoIChnZXRGaWxlRm9ybWF0KGxpbmspKSB7XG4gICAgICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgICAgY2FzZSAnY3N2JzpcbiAgICAgICAgICBjYXNlICdleGNlbCc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkRBVEFdXG4gICAgICAgICAgY2FzZSAnZ2VvanNvbic6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGlmIChsaW5rLnVybC50b1N0cmluZygpLm1hdGNoKC9cXC93ZnMvaSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQURdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYXNVc2FnZShcbiAgICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2UsXG4gICAgdXNhZ2U6IExpbmtVc2FnZVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2FnZXNGb3JMaW5rKGxpbmspLmluZGV4T2YodXNhZ2UpID4gLTFcbiAgfVxufVxuIl19
@@ -217,7 +217,7 @@ export function getLinkLabel(link) {
217
217
  default:
218
218
  format = getFileFormat(link);
219
219
  }
220
- const label = link.description || link.name;
220
+ const label = link.description || ('name' in link ? link.name : '');
221
221
  return format ? `${label} (${format})` : label;
222
222
  }
223
223
  export async function getLayers(url, serviceProtocol) {
@@ -228,14 +228,21 @@ export async function getLayers(url, serviceProtocol) {
228
228
  }
229
229
  case 'wfs': {
230
230
  const endpointWfs = await new WfsEndpoint(url).isReady();
231
- return endpointWfs.getFeatureTypes();
231
+ const featureTypes = await endpointWfs.getFeatureTypes();
232
+ const layers = await Promise.all(featureTypes.map(async (collection) => {
233
+ return await endpointWfs.getFeatureTypeFull(collection.name);
234
+ }));
235
+ return layers;
232
236
  }
233
237
  case 'wms': {
234
238
  const endpointWms = await new WmsEndpoint(url).isReady();
235
- return endpointWms
239
+ const layers = (await endpointWms
236
240
  .getLayers()
237
241
  .flatMap(wmsLayerFlatten)
238
- .filter((l) => l.name);
242
+ .filter((l) => l.name)).map((collection) => {
243
+ return endpointWms.getLayerByName(collection.name);
244
+ });
245
+ return layers;
239
246
  }
240
247
  case 'wmts': {
241
248
  const endpointWmts = await new WmtsEndpoint(url).isReady();
@@ -245,7 +252,7 @@ export async function getLayers(url, serviceProtocol) {
245
252
  return undefined;
246
253
  }
247
254
  }
248
- function wmsLayerFlatten(layerFull) {
255
+ export function wmsLayerFlatten(layerFull) {
249
256
  const layer = {
250
257
  title: layerFull.title,
251
258
  name: layerFull.name,
@@ -258,4 +265,4 @@ function wmsLayerFlatten(layerFull) {
258
265
  export function getMimeTypeForFormat(format) {
259
266
  return format in FORMATS ? FORMATS[format.toLowerCase()].mimeTypes[0] : null;
260
267
  }
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUtoRSxPQUFPLEVBQ0wsY0FBYyxFQUNkLFdBQVcsRUFDWCxXQUFXLEVBQ1gsWUFBWSxHQUNiLE1BQU0sd0JBQXdCLENBQUE7QUFFL0IsTUFBTSxDQUFDLHFDQUFxQyxDQUFDLENBQUE7QUFFN0MsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztLQUMzQztJQUNELEtBQUssRUFBRTtRQUNMLFVBQVUsRUFBRTtZQUNWLE9BQU87WUFDUCxLQUFLO1lBQ0wsTUFBTTtZQUNOLFVBQVU7WUFDViwrQkFBK0I7U0FDaEM7UUFDRCxRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRTtZQUNULDBCQUEwQjtZQUMxQixtRUFBbUU7U0FDcEU7S0FDRjtJQUNELE9BQU8sRUFBRTtRQUNQLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQztRQUN2QixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixFQUFFLDBCQUEwQixDQUFDO0tBQ2hFO0lBQ0QsSUFBSSxFQUFFO1FBQ0osVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ3BCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsa0JB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LFVBQVUsb0JBQW9CLENBQUMsTUFBa0I7SUFDckQsT0FBTyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7QUFDOUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7XG4gIERhdGFzZXRPbmxpbmVSZXNvdXJjZSxcbiAgU2VydmljZVByb3RvY29sLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBPZ2NBcGlFbmRwb2ludCxcbiAgV2ZzRW5kcG9pbnQsXG4gIFdtc0VuZHBvaW50LFxuICBXbXRzRW5kcG9pbnQsXG59IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5cbm1hcmtlcignZG93bmxvYWRzLndmcy5mZWF0dXJldHlwZS5ub3QuZm91bmQnKVxuXG5leHBvcnQgY29uc3QgRk9STUFUUyA9IHtcbiAgY3N2OiB7XG4gICAgZXh0ZW5zaW9uczogWydjc3YnXSxcbiAgICBwcmlvcml0eTogMSxcbiAgICBjb2xvcjogJyNGNkE5MjQnLFxuICAgIG1pbWVUeXBlczogWyd0ZXh0L2NzdicsICdhcHBsaWNhdGlvbi9jc3YnXSxcbiAgfSxcbiAgZXhjZWw6IHtcbiAgICBleHRlbnNpb25zOiBbXG4gICAgICAnZXhjZWwnLFxuICAgICAgJ3hscycsXG4gICAgICAneGxzeCcsXG4gICAgICAnbXMtZXhjZWwnLFxuICAgICAgJ29wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50JyxcbiAgICBdLFxuICAgIHByaW9yaXR5OiAyLFxuICAgIGNvbG9yOiAnI0ZGREUxMCcsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICAgXSxcbiAgfSxcbiAgZ2VvanNvbjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ2VvanNvbiddLFxuICAgIHByaW9yaXR5OiAzLFxuICAgIGNvbG9yOiAnIzI5M0M2RicsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlbytqc29uJywgJ2FwcGxpY2F0aW9uL3ZuZC5nZW8ranNvbiddLFxuICB9LFxuICBqc29uOiB7XG4gICAgZXh0ZW5zaW9uczogWydqc29uJ10sXG4gICAgcHJpb3JpdHk6IDMsXG4gICAgY29sb3I6ICcjODREMEYwJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vanNvbiddLFxuICB9LFxuICBzaHA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3NocCcsICdzaGFwZScsICd6aXBwZWQtc2hhcGVmaWxlJ10sXG4gICAgcHJpb3JpdHk6IDQsXG4gICAgY29sb3I6ICcjMDA5MDM2JyxcbiAgICBtaW1lVHlwZXM6IFsneC1naXMveC1zaGFwZWZpbGUnXSxcbiAgfSxcbiAgZ21sOiB7XG4gICAgZXh0ZW5zaW9uczogWydnbWwnXSxcbiAgICBwcmlvcml0eTogNSxcbiAgICBjb2xvcjogJyNFNzUxMTMnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nbWwreG1sJywgJ3RleHQveG1sOyBzdWJ0eXBlPWdtbCddLFxuICB9LFxuICBrbWw6IHtcbiAgICBleHRlbnNpb25zOiBbJ2ttbCcsICdrbXonXSxcbiAgICBwcmlvcml0eTogNixcbiAgICBjb2xvcjogJyNGNEI1RDAnLFxuICAgIG1pbWVUeXBlczogW1xuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua21sK3htbCcsXG4gICAgICAnYXBwbGljYXRpb24vdm5kLmdvb2dsZS1lYXJ0aC5rbXonLFxuICAgIF0sXG4gIH0sXG4gIGdwa2c6IHtcbiAgICBleHRlbnNpb25zOiBbJ2dwa2cnLCAnZ2VvcGFja2FnZSddLFxuICAgIHByaW9yaXR5OiA3LFxuICAgIGNvbG9yOiAnIzdENUQ5RicsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlb3BhY2thZ2Urc3FsaXRlMyddLFxuICB9LFxuICB6aXA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3ppcCcsICd0YXIuZ3onXSxcbiAgICBwcmlvcml0eTogOCxcbiAgICBjb2xvcjogJyNCMENCNTInLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi96aXAnLCAnYXBwbGljYXRpb24veC16aXAnXSxcbiAgfSxcbiAgcGRmOiB7XG4gICAgZXh0ZW5zaW9uczogWydwZGYnXSxcbiAgICBwcmlvcml0eTogOSxcbiAgICBjb2xvcjogJyM0OTU3OUUnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9wZGYnXSxcbiAgfSxcbiAganBnOiB7XG4gICAgZXh0ZW5zaW9uczogWydqcGcnLCAnanBlZycsICdqZmlmJywgJ3BqcGVnJywgJ3BqcCddLFxuICAgIHByaW9yaXR5OiA5LFxuICAgIGNvbG9yOiAnI0M0QTk4RicsXG4gICAgbWltZVR5cGVzOiBbJ2ltYWdlL2pwZyddLFxuICB9LFxuICBzdmc6IHtcbiAgICBleHRlbnNpb25zOiBbJ3N2ZyddLFxuICAgIHByaW9yaXR5OiAxMCxcbiAgICBjb2xvcjogJyNFQjZEODInLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9zdmcreG1sJ10sXG4gIH0sXG4gIGR4Zjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZHhmJ10sXG4gICAgcHJpb3JpdHk6IDExLFxuICAgIGNvbG9yOiAnI0RDQ0QwMCcsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL3gtZHhmJywgJ2ltYWdlL3gtZHhmJ10sXG4gIH0sXG4gIGh0bWw6IHtcbiAgICBleHRlbnNpb25zOiBbJ2h0bWwnLCAnaHRtJ10sXG4gICAgcHJpb3JpdHk6IDEyLFxuICAgIGNvbG9yOiAnI0MwQzlCNicsXG4gICAgbWltZVR5cGVzOiBbJ3RleHQvaHRtbCddLFxuICB9LFxuICBmZ2I6IHtcbiAgICBleHRlbnNpb25zOiBbJ2ZnYicsICdmbGF0Z2VvYnVmJ10sXG4gICAgcHJpb3JpdHk6IDEzLFxuICAgIGNvbG9yOiAnI0E4MTExQycsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2ZsYXRnZW9idWYnXSxcbiAgfSxcbiAganNvbmZnOiB7XG4gICAgZXh0ZW5zaW9uczogWydqc29uZmcnLCAnanNvbmZnYyddLFxuICAgIHByaW9yaXR5OiAxNCxcbiAgICBjb2xvcjogJyMwMDlFRTAnLFxuICAgIG1pbWVUeXBlczogW1xuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vZ2MuZmcranNvbicsXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm9nYy5mZytqc29uO2NvbXBhdGliaWxpdHk9Z2VvanNvbicsXG4gICAgXSxcbiAgfSxcbn0gYXMgY29uc3RcblxuZXhwb3J0IHR5cGUgRmlsZUZvcm1hdCA9IGtleW9mIHR5cGVvZiBGT1JNQVRTXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb3JtYXRQcmlvcml0eShsaW5rRm9ybWF0OiBGaWxlRm9ybWF0KTogbnVtYmVyIHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgZXh0IG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAobmV3IFJlZ0V4cChgJHtleHR9YCwgJ2knKS50ZXN0KGxpbmtGb3JtYXQpKSB7XG4gICAgICAgIGlmIChGT1JNQVRTW2Zvcm1hdF0ucHJpb3JpdHkgPT09IDApIHJldHVybiAwXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhGT1JNQVRTKS5sZW5ndGggLSBGT1JNQVRTW2Zvcm1hdF0ucHJpb3JpdHlcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIDBcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExpbmtQcmlvcml0eShsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UpOiBudW1iZXIge1xuICByZXR1cm4gZ2V0Rm9ybWF0UHJpb3JpdHkoZ2V0RmlsZUZvcm1hdChsaW5rKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChcbiAgc2VydmljZU91dHB1dDogc3RyaW5nXG4pOiBGaWxlRm9ybWF0IHwgbnVsbCB7XG4gIGZ1bmN0aW9uIGZvcm1hdE1hdGNoZXIoZm9ybWF0OiAodHlwZW9mIEZPUk1BVFMpW0ZpbGVGb3JtYXRdKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgb3V0cHV0ID0gc2VydmljZU91dHB1dC50b0xvd2VyQ2FzZSgpXG4gICAgcmV0dXJuIChcbiAgICAgIGZvcm1hdC5leHRlbnNpb25zLnNvbWUoKGV4dGVuc2lvbjogc3RyaW5nKSA9PlxuICAgICAgICBvdXRwdXQuaW5jbHVkZXMoZXh0ZW5zaW9uKVxuICAgICAgKSB8fFxuICAgICAgZm9ybWF0Lm1pbWVUeXBlcy5zb21lKChtaW1lVHlwZTogc3RyaW5nKSA9PiBvdXRwdXQuaW5jbHVkZXMobWltZVR5cGUpKVxuICAgIClcbiAgfVxuICBmb3IgKGNvbnN0IGZvcm1hdE5hbWUgaW4gRk9STUFUUykge1xuICAgIGlmIChmb3JtYXRNYXRjaGVyKEZPUk1BVFNbZm9ybWF0TmFtZV0pKSB7XG4gICAgICByZXR1cm4gZm9ybWF0TmFtZSBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRm9ybWF0KGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSk6IEZpbGVGb3JtYXQge1xuICBpZiAoJ21pbWVUeXBlJyBpbiBsaW5rKSB7XG4gICAgY29uc3QgbWltZVR5cGVGb3JtYXQgPSBtaW1lVHlwZVRvRm9ybWF0KGxpbmsubWltZVR5cGUpXG4gICAgaWYgKG1pbWVUeXBlRm9ybWF0ICE9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbWltZVR5cGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChjaGVja0ZpbGVGb3JtYXQobGluaywgYWxpYXMpKSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICAgIGlmIChpc0Zvcm1hdEluUXVlcnlQYXJhbShsaW5rLCBhbGlhcykpIHJldHVybiBmb3JtYXQgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGb3JtYXRJblF1ZXJ5UGFyYW0oXG4gIGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSxcbiAgYWxpYXM6IHN0cmluZ1xuKTogYm9vbGVhbiB7XG4gIGNvbnN0IHF1ZXJ5UGFyYW1zID0gbGluay51cmwuc2VhcmNoUGFyYW1zXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHF1ZXJ5UGFyYW1zLmVudHJpZXMoKSkge1xuICAgIGlmIChrZXkgPT09ICdmb3JtYXQnIHx8IGtleSA9PT0gJ2YnKSB7XG4gICAgICByZXR1cm4gdmFsdWUgPT09IGFsaWFzXG4gICAgfVxuICB9XG4gIHJldHVybiBmYWxzZVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWltZVR5cGVUb0Zvcm1hdChtaW1lVHlwZTogc3RyaW5nKTogRmlsZUZvcm1hdCB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IG10IG9mIEZPUk1BVFNbZm9ybWF0XS5taW1lVHlwZXMpIHtcbiAgICAgIGlmIChtaW1lVHlwZSA9PT0gbXQpIHJldHVybiBmb3JtYXQgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tGaWxlRm9ybWF0KFxuICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UsXG4gIGZvcm1hdDogRmlsZUZvcm1hdFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgKCduYW1lJyBpbiBsaW5rICYmXG4gICAgICBuZXcgUmVnRXhwKGBbLi9dJHtmb3JtYXR9YCwgJ2knKS50ZXN0KGxpbmsubmFtZS50b0xvd2VyQ2FzZSgpKSkgfHxcbiAgICAoJ3VybCcgaW4gbGluayAmJlxuICAgICAgbmV3IFJlZ0V4cChgWy4vXSR7Zm9ybWF0fWAsICdpJykudGVzdChsaW5rLnVybC50b1N0cmluZygpKSkgfHxcbiAgICAoJ25hbWUnIGluIGxpbmsgJiYgbGluay5uYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZm9ybWF0KSlcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFkZ2VDb2xvcihsaW5rRm9ybWF0OiBGaWxlRm9ybWF0KTogc3RyaW5nIHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKGAke2FsaWFzfWAsICdpJykudGVzdChsaW5rRm9ybWF0KSlcbiAgICAgICAgcmV0dXJuIEZPUk1BVFNbZm9ybWF0XS5jb2xvclxuICAgIH1cbiAgfVxuICByZXR1cm4gJ3ZhcigtLWNvbG9yLWdyYXktNzAwKScgLy8gRGVmYXVsdCBjb2xvciA/XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rTGFiZWwobGluazogRGF0YXNldE9ubGluZVJlc291cmNlKTogc3RyaW5nIHtcbiAgbGV0IGZvcm1hdCA9ICcnXG4gIHN3aXRjaCAobGluay50eXBlKSB7XG4gICAgY2FzZSAnc2VydmljZSc6XG4gICAgICB7XG4gICAgICAgIHN3aXRjaCAobGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wpIHtcbiAgICAgICAgICBjYXNlICd3ZnMnOlxuICAgICAgICAgICAgZm9ybWF0ID0gJ1dGUydcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXTVMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ3dtdHMnOlxuICAgICAgICAgICAgZm9ybWF0ID0gJ1dNVFMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ2VzcmlSZXN0JzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdSRVNUJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnJlYWtcbiAgICBkZWZhdWx0OlxuICAgICAgZm9ybWF0ID0gZ2V0RmlsZUZvcm1hdChsaW5rKVxuICB9XG4gIGNvbnN0IGxhYmVsID0gbGluay5kZXNjcmlwdGlvbiB8fCBsaW5rLm5hbWVcbiAgcmV0dXJuIGZvcm1hdCA/IGAke2xhYmVsfSAoJHtmb3JtYXR9KWAgOiBsYWJlbFxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TGF5ZXJzKHVybDogc3RyaW5nLCBzZXJ2aWNlUHJvdG9jb2w6IFNlcnZpY2VQcm90b2NvbCkge1xuICBzd2l0Y2ggKHNlcnZpY2VQcm90b2NvbCkge1xuICAgIGNhc2UgJ29nY0ZlYXR1cmVzJzoge1xuICAgICAgY29uc3QgbGF5ZXJzID0gYXdhaXQgbmV3IE9nY0FwaUVuZHBvaW50KHVybCkuYWxsQ29sbGVjdGlvbnNcbiAgICAgIHJldHVybiBsYXllcnNcbiAgICB9XG4gICAgY2FzZSAnd2ZzJzoge1xuICAgICAgY29uc3QgZW5kcG9pbnRXZnMgPSBhd2FpdCBuZXcgV2ZzRW5kcG9pbnQodXJsKS5pc1JlYWR5KClcbiAgICAgIHJldHVybiBlbmRwb2ludFdmcy5nZXRGZWF0dXJlVHlwZXMoKVxuICAgIH1cbiAgICBjYXNlICd3bXMnOiB7XG4gICAgICBjb25zdCBlbmRwb2ludFdtcyA9IGF3YWl0IG5ldyBXbXNFbmRwb2ludCh1cmwpLmlzUmVhZHkoKVxuICAgICAgcmV0dXJuIGVuZHBvaW50V21zXG4gICAgICAgIC5nZXRMYXllcnMoKVxuICAgICAgICAuZmxhdE1hcCh3bXNMYXllckZsYXR0ZW4pXG4gICAgICAgIC5maWx0ZXIoKGwpID0+IGwubmFtZSlcbiAgICB9XG4gICAgY2FzZSAnd210cyc6IHtcbiAgICAgIGNvbnN0IGVuZHBvaW50V210cyA9IGF3YWl0IG5ldyBXbXRzRW5kcG9pbnQodXJsKS5pc1JlYWR5KClcbiAgICAgIHJldHVybiBlbmRwb2ludFdtdHMuZ2V0TGF5ZXJzKClcbiAgICB9XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxufVxuXG5mdW5jdGlvbiB3bXNMYXllckZsYXR0ZW4obGF5ZXJGdWxsKSB7XG4gIGNvbnN0IGxheWVyID0ge1xuICAgIHRpdGxlOiBsYXllckZ1bGwudGl0bGUsXG4gICAgbmFtZTogbGF5ZXJGdWxsLm5hbWUsXG4gICAgYWJzdHJhY3Q6IGxheWVyRnVsbC5hYnN0cmFjdCxcbiAgfVxuXG4gIHJldHVybiAnY2hpbGRyZW4nIGluIGxheWVyRnVsbCAmJiBBcnJheS5pc0FycmF5KGxheWVyRnVsbC5jaGlsZHJlbilcbiAgICA/IFtsYXllciwgLi4ubGF5ZXJGdWxsLmNoaWxkcmVuLmZsYXRNYXAod21zTGF5ZXJGbGF0dGVuKV1cbiAgICA6IFtsYXllcl1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbWVUeXBlRm9yRm9ybWF0KGZvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB8IG51bGwge1xuICByZXR1cm4gZm9ybWF0IGluIEZPUk1BVFMgPyBGT1JNQVRTW2Zvcm1hdC50b0xvd2VyQ2FzZSgpXS5taW1lVHlwZXNbMF0gOiBudWxsXG59XG4iXX0=
268
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQU1oRSxPQUFPLEVBQ0wsY0FBYyxFQUNkLFdBQVcsRUFDWCxXQUFXLEVBQ1gsWUFBWSxHQUNiLE1BQU0sd0JBQXdCLENBQUE7QUFFL0IsTUFBTSxDQUFDLHFDQUFxQyxDQUFDLENBQUE7QUFFN0MsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztLQUMzQztJQUNELEtBQUssRUFBRTtRQUNMLFVBQVUsRUFBRTtZQUNWLE9BQU87WUFDUCxLQUFLO1lBQ0wsTUFBTTtZQUNOLFVBQVU7WUFDViwrQkFBK0I7U0FDaEM7UUFDRCxRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRTtZQUNULDBCQUEwQjtZQUMxQixtRUFBbUU7U0FDcEU7S0FDRjtJQUNELE9BQU8sRUFBRTtRQUNQLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQztRQUN2QixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixFQUFFLDBCQUEwQixDQUFDO0tBQ2hFO0lBQ0QsSUFBSSxFQUFFO1FBQ0osVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ3BCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsa0JB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Q0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUNqQyxDQUFDO1FBQ0Q7WUFDRSxPQUFPLFNBQVMsQ0FBQTtJQUNwQixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQUMsU0FBUztJQUN2QyxNQUFNLEtBQUssR0FBRztRQUNaLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSztRQUN0QixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7UUFDcEIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxRQUFRO0tBQzdCLENBQUE7SUFFRCxPQUFPLFVBQVUsSUFBSSxTQUFTLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO1FBQ2pFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUFrQjtJQUNyRCxPQUFPLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQTtBQUM5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgRGF0YXNldE9ubGluZVJlc291cmNlLFxuICBTZXJ2aWNlT25saW5lUmVzb3VyY2UsXG4gIFNlcnZpY2VQcm90b2NvbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgT2djQXBpRW5kcG9pbnQsXG4gIFdmc0VuZHBvaW50LFxuICBXbXNFbmRwb2ludCxcbiAgV210c0VuZHBvaW50LFxufSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuXG5tYXJrZXIoJ2Rvd25sb2Fkcy53ZnMuZmVhdHVyZXR5cGUubm90LmZvdW5kJylcblxuZXhwb3J0IGNvbnN0IEZPUk1BVFMgPSB7XG4gIGNzdjoge1xuICAgIGV4dGVuc2lvbnM6IFsnY3N2J10sXG4gICAgcHJpb3JpdHk6IDEsXG4gICAgY29sb3I6ICcjRjZBOTI0JyxcbiAgICBtaW1lVHlwZXM6IFsndGV4dC9jc3YnLCAnYXBwbGljYXRpb24vY3N2J10sXG4gIH0sXG4gIGV4Y2VsOiB7XG4gICAgZXh0ZW5zaW9uczogW1xuICAgICAgJ2V4Y2VsJyxcbiAgICAgICd4bHMnLFxuICAgICAgJ3hsc3gnLFxuICAgICAgJ21zLWV4Y2VsJyxcbiAgICAgICdvcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudCcsXG4gICAgXSxcbiAgICBwcmlvcml0eTogMixcbiAgICBjb2xvcjogJyNGRkRFMTAnLFxuICAgIG1pbWVUeXBlczogW1xuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbCcsXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnLFxuICAgIF0sXG4gIH0sXG4gIGdlb2pzb246IHtcbiAgICBleHRlbnNpb25zOiBbJ2dlb2pzb24nXSxcbiAgICBwcmlvcml0eTogMyxcbiAgICBjb2xvcjogJyMyOTNDNkYnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nZW8ranNvbicsICdhcHBsaWNhdGlvbi92bmQuZ2VvK2pzb24nXSxcbiAgfSxcbiAganNvbjoge1xuICAgIGV4dGVuc2lvbnM6IFsnanNvbiddLFxuICAgIHByaW9yaXR5OiAzLFxuICAgIGNvbG9yOiAnIzg0RDBGMCcsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2pzb24nXSxcbiAgfSxcbiAgc2hwOiB7XG4gICAgZXh0ZW5zaW9uczogWydzaHAnLCAnc2hhcGUnLCAnemlwcGVkLXNoYXBlZmlsZSddLFxuICAgIHByaW9yaXR5OiA0LFxuICAgIGNvbG9yOiAnIzAwOTAzNicsXG4gICAgbWltZVR5cGVzOiBbJ3gtZ2lzL3gtc2hhcGVmaWxlJ10sXG4gIH0sXG4gIGdtbDoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ21sJ10sXG4gICAgcHJpb3JpdHk6IDUsXG4gICAgY29sb3I6ICcjRTc1MTEzJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vZ21sK3htbCcsICd0ZXh0L3htbDsgc3VidHlwZT1nbWwnXSxcbiAgfSxcbiAga21sOiB7XG4gICAgZXh0ZW5zaW9uczogWydrbWwnLCAna216J10sXG4gICAgcHJpb3JpdHk6IDYsXG4gICAgY29sb3I6ICcjRjRCNUQwJyxcbiAgICBtaW1lVHlwZXM6IFtcbiAgICAgICdhcHBsaWNhdGlvbi92bmQuZ29vZ2xlLWVhcnRoLmttbCt4bWwnLFxuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua216JyxcbiAgICBdLFxuICB9LFxuICBncGtnOiB7XG4gICAgZXh0ZW5zaW9uczogWydncGtnJywgJ2dlb3BhY2thZ2UnXSxcbiAgICBwcmlvcml0eTogNyxcbiAgICBjb2xvcjogJyM3RDVEOUYnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nZW9wYWNrYWdlK3NxbGl0ZTMnXSxcbiAgfSxcbiAgemlwOiB7XG4gICAgZXh0ZW5zaW9uczogWyd6aXAnLCAndGFyLmd6J10sXG4gICAgcHJpb3JpdHk6IDgsXG4gICAgY29sb3I6ICcjQjBDQjUyJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vemlwJywgJ2FwcGxpY2F0aW9uL3gtemlwJ10sXG4gIH0sXG4gIHBkZjoge1xuICAgIGV4dGVuc2lvbnM6IFsncGRmJ10sXG4gICAgcHJpb3JpdHk6IDksXG4gICAgY29sb3I6ICcjNDk1NzlFJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vcGRmJ10sXG4gIH0sXG4gIGpwZzoge1xuICAgIGV4dGVuc2lvbnM6IFsnanBnJywgJ2pwZWcnLCAnamZpZicsICdwanBlZycsICdwanAnXSxcbiAgICBwcmlvcml0eTogOSxcbiAgICBjb2xvcjogJyNDNEE5OEYnLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9qcGcnXSxcbiAgfSxcbiAgc3ZnOiB7XG4gICAgZXh0ZW5zaW9uczogWydzdmcnXSxcbiAgICBwcmlvcml0eTogMTAsXG4gICAgY29sb3I6ICcjRUI2RDgyJyxcbiAgICBtaW1lVHlwZXM6IFsnaW1hZ2Uvc3ZnK3htbCddLFxuICB9LFxuICBkeGY6IHtcbiAgICBleHRlbnNpb25zOiBbJ2R4ZiddLFxuICAgIHByaW9yaXR5OiAxMSxcbiAgICBjb2xvcjogJyNEQ0NEMDAnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi94LWR4ZicsICdpbWFnZS94LWR4ZiddLFxuICB9LFxuICBodG1sOiB7XG4gICAgZXh0ZW5zaW9uczogWydodG1sJywgJ2h0bSddLFxuICAgIHByaW9yaXR5OiAxMixcbiAgICBjb2xvcjogJyNDMEM5QjYnLFxuICAgIG1pbWVUeXBlczogWyd0ZXh0L2h0bWwnXSxcbiAgfSxcbiAgZmdiOiB7XG4gICAgZXh0ZW5zaW9uczogWydmZ2InLCAnZmxhdGdlb2J1ZiddLFxuICAgIHByaW9yaXR5OiAxMyxcbiAgICBjb2xvcjogJyNBODExMUMnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9mbGF0Z2VvYnVmJ10sXG4gIH0sXG4gIGpzb25mZzoge1xuICAgIGV4dGVuc2lvbnM6IFsnanNvbmZnJywgJ2pzb25mZ2MnXSxcbiAgICBwcmlvcml0eTogMTQsXG4gICAgY29sb3I6ICcjMDA5RUUwJyxcbiAgICBtaW1lVHlwZXM6IFtcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub2djLmZnK2pzb24nLFxuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vZ2MuZmcranNvbjtjb21wYXRpYmlsaXR5PWdlb2pzb24nLFxuICAgIF0sXG4gIH0sXG59IGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIEZpbGVGb3JtYXQgPSBrZXlvZiB0eXBlb2YgRk9STUFUU1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9ybWF0UHJpb3JpdHkobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IG51bWJlciB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGV4dCBvZiBGT1JNQVRTW2Zvcm1hdF0uZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKG5ldyBSZWdFeHAoYCR7ZXh0fWAsICdpJykudGVzdChsaW5rRm9ybWF0KSkge1xuICAgICAgICBpZiAoRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5ID09PSAwKSByZXR1cm4gMFxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoRk9STUFUUykubGVuZ3RoIC0gRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiAwXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rUHJpb3JpdHkoXG4gIGxpbms6IERhdGFzZXRPbmxpbmVSZXNvdXJjZSB8IFNlcnZpY2VPbmxpbmVSZXNvdXJjZVxuKTogbnVtYmVyIHtcbiAgcmV0dXJuIGdldEZvcm1hdFByaW9yaXR5KGdldEZpbGVGb3JtYXQobGluaykpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRm9ybWF0RnJvbVNlcnZpY2VPdXRwdXQoXG4gIHNlcnZpY2VPdXRwdXQ6IHN0cmluZ1xuKTogRmlsZUZvcm1hdCB8IG51bGwge1xuICBmdW5jdGlvbiBmb3JtYXRNYXRjaGVyKGZvcm1hdDogKHR5cGVvZiBGT1JNQVRTKVtGaWxlRm9ybWF0XSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHNlcnZpY2VPdXRwdXQudG9Mb3dlckNhc2UoKVxuICAgIHJldHVybiAoXG4gICAgICBmb3JtYXQuZXh0ZW5zaW9ucy5zb21lKChleHRlbnNpb246IHN0cmluZykgPT5cbiAgICAgICAgb3V0cHV0LmluY2x1ZGVzKGV4dGVuc2lvbilcbiAgICAgICkgfHxcbiAgICAgIGZvcm1hdC5taW1lVHlwZXMuc29tZSgobWltZVR5cGU6IHN0cmluZykgPT4gb3V0cHV0LmluY2x1ZGVzKG1pbWVUeXBlKSlcbiAgICApXG4gIH1cbiAgZm9yIChjb25zdCBmb3JtYXROYW1lIGluIEZPUk1BVFMpIHtcbiAgICBpZiAoZm9ybWF0TWF0Y2hlcihGT1JNQVRTW2Zvcm1hdE5hbWVdKSkge1xuICAgICAgcmV0dXJuIGZvcm1hdE5hbWUgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUZvcm1hdChcbiAgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlIHwgU2VydmljZU9ubGluZVJlc291cmNlXG4pOiBGaWxlRm9ybWF0IHtcbiAgaWYgKCdtaW1lVHlwZScgaW4gbGluaykge1xuICAgIGNvbnN0IG1pbWVUeXBlRm9ybWF0ID0gbWltZVR5cGVUb0Zvcm1hdChsaW5rLm1pbWVUeXBlKVxuICAgIGlmIChtaW1lVHlwZUZvcm1hdCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG1pbWVUeXBlRm9ybWF0XG4gICAgfVxuICB9XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAoY2hlY2tGaWxlRm9ybWF0KGxpbmssIGFsaWFzKSkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgICBpZiAoaXNGb3JtYXRJblF1ZXJ5UGFyYW0obGluaywgYWxpYXMpKSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRm9ybWF0SW5RdWVyeVBhcmFtKFxuICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2UsXG4gIGFsaWFzOiBzdHJpbmdcbik6IGJvb2xlYW4ge1xuICBjb25zdCBxdWVyeVBhcmFtcyA9IGxpbmsudXJsLnNlYXJjaFBhcmFtc1xuICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBxdWVyeVBhcmFtcy5lbnRyaWVzKCkpIHtcbiAgICBpZiAoa2V5ID09PSAnZm9ybWF0JyB8fCBrZXkgPT09ICdmJykge1xuICAgICAgcmV0dXJuIHZhbHVlID09PSBhbGlhc1xuICAgIH1cbiAgfVxuICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1pbWVUeXBlVG9Gb3JtYXQobWltZVR5cGU6IHN0cmluZyk6IEZpbGVGb3JtYXQge1xuICBmb3IgKGNvbnN0IGZvcm1hdCBpbiBGT1JNQVRTKSB7XG4gICAgZm9yIChjb25zdCBtdCBvZiBGT1JNQVRTW2Zvcm1hdF0ubWltZVR5cGVzKSB7XG4gICAgICBpZiAobWltZVR5cGUgPT09IG10KSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrRmlsZUZvcm1hdChcbiAgbGluazogRGF0YXNldE9ubGluZVJlc291cmNlIHwgU2VydmljZU9ubGluZVJlc291cmNlLFxuICBmb3JtYXQ6IEZpbGVGb3JtYXRcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gKFxuICAgICgnbmFtZScgaW4gbGluayAmJlxuICAgICAgbmV3IFJlZ0V4cChgWy4vXSR7Zm9ybWF0fWAsICdpJykudGVzdChsaW5rLm5hbWUudG9Mb3dlckNhc2UoKSkpIHx8XG4gICAgKCd1cmwnIGluIGxpbmsgJiZcbiAgICAgIG5ldyBSZWdFeHAoYFsuL10ke2Zvcm1hdH1gLCAnaScpLnRlc3QobGluay51cmwudG9TdHJpbmcoKSkpIHx8XG4gICAgKCduYW1lJyBpbiBsaW5rICYmIGxpbmsubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZvcm1hdCkpXG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEJhZGdlQ29sb3IobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAobmV3IFJlZ0V4cChgJHthbGlhc31gLCAnaScpLnRlc3QobGlua0Zvcm1hdCkpXG4gICAgICAgIHJldHVybiBGT1JNQVRTW2Zvcm1hdF0uY29sb3JcbiAgICB9XG4gIH1cbiAgcmV0dXJuICd2YXIoLS1jb2xvci1ncmF5LTcwMCknIC8vIERlZmF1bHQgY29sb3IgP1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGlua0xhYmVsKFxuICBsaW5rOiBEYXRhc2V0T25saW5lUmVzb3VyY2UgfCBTZXJ2aWNlT25saW5lUmVzb3VyY2Vcbik6IHN0cmluZyB7XG4gIGxldCBmb3JtYXQgPSAnJ1xuICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnd2ZzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXRlMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV01TJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXTVRTJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdlc3JpUmVzdCc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnUkVTVCdcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJyZWFrXG4gICAgZGVmYXVsdDpcbiAgICAgIGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuICBjb25zdCBsYWJlbCA9IGxpbmsuZGVzY3JpcHRpb24gfHwgKCduYW1lJyBpbiBsaW5rID8gbGluay5uYW1lIDogJycpXG4gIHJldHVybiBmb3JtYXQgPyBgJHtsYWJlbH0gKCR7Zm9ybWF0fSlgIDogbGFiZWxcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldExheWVycyh1cmw6IHN0cmluZywgc2VydmljZVByb3RvY29sOiBTZXJ2aWNlUHJvdG9jb2wpIHtcbiAgc3dpdGNoIChzZXJ2aWNlUHJvdG9jb2wpIHtcbiAgICBjYXNlICdvZ2NGZWF0dXJlcyc6IHtcbiAgICAgIGNvbnN0IGxheWVycyA9IGF3YWl0IG5ldyBPZ2NBcGlFbmRwb2ludCh1cmwpLmFsbENvbGxlY3Rpb25zXG4gICAgICByZXR1cm4gbGF5ZXJzXG4gICAgfVxuICAgIGNhc2UgJ3dmcyc6IHtcbiAgICAgIGNvbnN0IGVuZHBvaW50V2ZzID0gYXdhaXQgbmV3IFdmc0VuZHBvaW50KHVybCkuaXNSZWFkeSgpXG4gICAgICBjb25zdCBmZWF0dXJlVHlwZXMgPSBhd2FpdCBlbmRwb2ludFdmcy5nZXRGZWF0dXJlVHlwZXMoKVxuICAgICAgY29uc3QgbGF5ZXJzID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgIGZlYXR1cmVUeXBlcy5tYXAoYXN5bmMgKGNvbGxlY3Rpb24pID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZW5kcG9pbnRXZnMuZ2V0RmVhdHVyZVR5cGVGdWxsKGNvbGxlY3Rpb24ubmFtZSlcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIHJldHVybiBsYXllcnNcbiAgICB9XG4gICAgY2FzZSAnd21zJzoge1xuICAgICAgY29uc3QgZW5kcG9pbnRXbXMgPSBhd2FpdCBuZXcgV21zRW5kcG9pbnQodXJsKS5pc1JlYWR5KClcbiAgICAgIGNvbnN0IGxheWVycyA9IChcbiAgICAgICAgYXdhaXQgZW5kcG9pbnRXbXNcbiAgICAgICAgICAuZ2V0TGF5ZXJzKClcbiAgICAgICAgICAuZmxhdE1hcCh3bXNMYXllckZsYXR0ZW4pXG4gICAgICAgICAgLmZpbHRlcigobCkgPT4gbC5uYW1lKVxuICAgICAgKS5tYXAoKGNvbGxlY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIGVuZHBvaW50V21zLmdldExheWVyQnlOYW1lKGNvbGxlY3Rpb24ubmFtZSlcbiAgICAgIH0pXG4gICAgICByZXR1cm4gbGF5ZXJzXG4gICAgfVxuICAgIGNhc2UgJ3dtdHMnOiB7XG4gICAgICBjb25zdCBlbmRwb2ludFdtdHMgPSBhd2FpdCBuZXcgV210c0VuZHBvaW50KHVybCkuaXNSZWFkeSgpXG4gICAgICByZXR1cm4gZW5kcG9pbnRXbXRzLmdldExheWVycygpXG4gICAgfVxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdtc0xheWVyRmxhdHRlbihsYXllckZ1bGwpIHtcbiAgY29uc3QgbGF5ZXIgPSB7XG4gICAgdGl0bGU6IGxheWVyRnVsbC50aXRsZSxcbiAgICBuYW1lOiBsYXllckZ1bGwubmFtZSxcbiAgICBhYnN0cmFjdDogbGF5ZXJGdWxsLmFic3RyYWN0LFxuICB9XG5cbiAgcmV0dXJuICdjaGlsZHJlbicgaW4gbGF5ZXJGdWxsICYmIEFycmF5LmlzQXJyYXkobGF5ZXJGdWxsLmNoaWxkcmVuKVxuICAgID8gW2xheWVyLCAuLi5sYXllckZ1bGwuY2hpbGRyZW4uZmxhdE1hcCh3bXNMYXllckZsYXR0ZW4pXVxuICAgIDogW2xheWVyXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWltZVR5cGVGb3JGb3JtYXQoZm9ybWF0OiBGaWxlRm9ybWF0KTogc3RyaW5nIHwgbnVsbCB7XG4gIHJldHVybiBmb3JtYXQgaW4gRk9STUFUUyA/IEZPUk1BVFNbZm9ybWF0LnRvTG93ZXJDYXNlKCldLm1pbWVUeXBlc1swXSA6IG51bGxcbn1cbiJdfQ==
@@ -51,7 +51,7 @@
51
51
  "datafeeder.month.september": "September",
52
52
  "datafeeder.wizardSummarize.createdAt": "Erstellt am",
53
53
  "datafeeder.wizardSummarize.scale": "Maßstab",
54
- "datahub.header.datasets": "Datensätze",
54
+ "datahub.header.datasets": "Katalog",
55
55
  "datahub.header.lastRecords": "Die neuesten",
56
56
  "datahub.header.myfavorites": "Meine Favoriten",
57
57
  "datahub.header.news": "Startseite",
@@ -204,6 +204,9 @@
204
204
  "editor.record.form.license.odc-by": "",
205
205
  "editor.record.form.license.pddl": "",
206
206
  "editor.record.form.license.unknown": "",
207
+ "editor.record.form.multilingual.enable": "",
208
+ "editor.record.form.multilingual.open": "",
209
+ "editor.record.form.multilingual.title": "",
207
210
  "editor.record.form.page.accessAndContact": "",
208
211
  "editor.record.form.page.description": "",
209
212
  "editor.record.form.page.resources": "",
@@ -233,6 +236,7 @@
233
236
  "editor.record.loadError.body": "Der Datensatz konnte nicht geladen werden:",
234
237
  "editor.record.loadError.closeMessage": "Verstanden",
235
238
  "editor.record.loadError.title": "Fehler beim Laden des Datensatzes",
239
+ "editor.record.lock.format": "",
236
240
  "editor.record.lock.reason": "",
237
241
  "editor.record.onlineResource.protocol.other": "",
238
242
  "editor.record.onlineResourceError.body": "",
@@ -292,7 +296,6 @@
292
296
  "input.image.dropFileLabel": "",
293
297
  "input.image.selectFileLabel": "",
294
298
  "input.image.uploadErrorLabel": "",
295
- "input.image.uploadErrorRetry": "",
296
299
  "input.image.uploadProgressCancel": "",
297
300
  "input.image.uploadProgressLabel": "",
298
301
  "language.ca": "Katalanisch",
@@ -359,6 +362,7 @@
359
362
  "record.card.metadata.contact": "",
360
363
  "record.externalViewer.open": "In externem Kartenviewer öffnen",
361
364
  "record.feature.limit": "Die Vorschau wurde aufgrund zu vieler Elemente deaktiviert",
365
+ "record.kind.data": "",
362
366
  "record.kind.dataset": "",
363
367
  "record.kind.reuse": "",
364
368
  "record.kind.service": "",
@@ -432,13 +436,12 @@
432
436
  "record.metadata.quality.updateFrequency.failed": "Aktualisierungsfrequenz nicht angegeben",
433
437
  "record.metadata.quality.updateFrequency.success": "Aktualisierungsfrequenz angegeben",
434
438
  "record.metadata.related": "Ähnliche Datensätze",
435
- "record.metadata.related.contents": "Verwandte Inhalte",
439
+ "record.metadata.related.contents": "",
436
440
  "record.metadata.ressources.and.links": "Ressourcen und Links",
437
441
  "record.metadata.sheet": "Weitere Informationen verfügbar unter:",
438
442
  "record.metadata.status": "Status",
439
443
  "record.metadata.status.notPublished": "",
440
444
  "record.metadata.status.published": "",
441
- "record.metadata.technical": "Technische Informationen",
442
445
  "record.metadata.temporalExtent": "Zeitlicher Umfang",
443
446
  "record.metadata.temporalExtent.fromDateToDate": "Von {start} bis {end}",
444
447
  "record.metadata.temporalExtent.sinceDate": "Seit {start}",
@@ -475,6 +478,7 @@
475
478
  "results.sortBy.popularity": "Beliebtheit",
476
479
  "results.sortBy.qualityScore": "Qualitätsbewertung",
477
480
  "results.sortBy.relevancy": "Relevanz",
481
+ "reuse.metadata.access": "",
478
482
  "search.autocomplete.error": "Vorschläge konnten nicht abgerufen werden:",
479
483
  "search.error.couldNotReachApi": "Die API konnte nicht erreicht werden",
480
484
  "search.error.organizationHasNoDataset": "",
@@ -514,6 +518,10 @@
514
518
  "search.filters.producerOrg": "",
515
519
  "search.filters.publicationYear": "Veröffentlichungsjahr",
516
520
  "search.filters.publisherOrg": "",
521
+ "search.filters.recordKind.all": "Alle",
522
+ "search.filters.recordKind.dataset": "Datensätze",
523
+ "search.filters.recordKind.reuse": "Wiederverwendungen",
524
+ "search.filters.recordKind.service": "Dienste",
517
525
  "search.filters.representationType": "Repräsentationstyp",
518
526
  "search.filters.resourceType": "Ressourcentyp",
519
527
  "search.filters.standard": "Standard",
@@ -524,6 +532,26 @@
524
532
  "search.filters.useSpatialFilter": "Zuerst Datensätze im Interessenbereich anzeigen",
525
533
  "search.filters.useSpatialFilterHelp": "Wenn diese Option aktiviert ist, werden Datensätze im Bereich des Katalogs zuerst angezeigt. Datensätze außerhalb dieses Bereichs werden nicht angezeigt.",
526
534
  "search.filters.user": "Editor",
535
+ "service.metadata.capabilities": "",
536
+ "service.metadata.capabilities.abstract": "",
537
+ "service.metadata.capabilities.attribution": "",
538
+ "service.metadata.capabilities.availableCrs": "",
539
+ "service.metadata.capabilities.defaultCrs": "",
540
+ "service.metadata.capabilities.geometryName": "",
541
+ "service.metadata.capabilities.geometryType": "",
542
+ "service.metadata.capabilities.keywords": "",
543
+ "service.metadata.capabilities.name": "",
544
+ "service.metadata.capabilities.objectCount": "",
545
+ "service.metadata.capabilities.otherCrs": "",
546
+ "service.metadata.capabilities.outputFormats": "",
547
+ "service.metadata.capabilities.resourceLinks": "",
548
+ "service.metadata.capabilities.title": "",
549
+ "service.metadata.filter": "",
550
+ "service.metadata.filter.noLayers": "",
551
+ "service.metadata.other": "",
552
+ "service.metadata.question": "",
553
+ "service.metadata.search": "",
554
+ "service.metadata.spatialExtent": "",
527
555
  "share.tab.permalink": "Teilen",
528
556
  "share.tab.webComponent": "Integrieren",
529
557
  "table.loading.data": "Daten werden geladen...",
@@ -51,7 +51,7 @@
51
51
  "datafeeder.month.september": "September",
52
52
  "datafeeder.wizardSummarize.createdAt": "Created at",
53
53
  "datafeeder.wizardSummarize.scale": "Scale",
54
- "datahub.header.datasets": "Datasets",
54
+ "datahub.header.datasets": "Catalog",
55
55
  "datahub.header.lastRecords": "The latest",
56
56
  "datahub.header.myfavorites": "My favorites",
57
57
  "datahub.header.news": "Home",
@@ -204,6 +204,9 @@
204
204
  "editor.record.form.license.odc-by": "Open Data Commons ODC-By",
205
205
  "editor.record.form.license.pddl": "Open Data Commons PDDL",
206
206
  "editor.record.form.license.unknown": "Unknown or absent",
207
+ "editor.record.form.multilingual.enable": "Multilingual Mode",
208
+ "editor.record.form.multilingual.open": "Open the multilingual panel",
209
+ "editor.record.form.multilingual.title": "Translations",
207
210
  "editor.record.form.page.accessAndContact": "Information for use",
208
211
  "editor.record.form.page.description": "Dataset description",
209
212
  "editor.record.form.page.resources": "Resources",
@@ -233,6 +236,7 @@
233
236
  "editor.record.loadError.body": "The dataset could not be loaded:",
234
237
  "editor.record.loadError.closeMessage": "Understood",
235
238
  "editor.record.loadError.title": "Error loading dataset",
239
+ "editor.record.lock.format": "Record with the format 'service' or 'reuse' are not editable",
236
240
  "editor.record.lock.reason": "You are not an editor of the allowed groups",
237
241
  "editor.record.onlineResource.protocol.other": "Other",
238
242
  "editor.record.onlineResourceError.body": "An error happened while adding the resource:",
@@ -292,7 +296,6 @@
292
296
  "input.image.dropFileLabel": "or drop it here",
293
297
  "input.image.selectFileLabel": "Select an image",
294
298
  "input.image.uploadErrorLabel": "The image could not be uploaded",
295
- "input.image.uploadErrorRetry": "Retry",
296
299
  "input.image.uploadProgressCancel": "Cancel",
297
300
  "input.image.uploadProgressLabel": "Upload in progress...",
298
301
  "language.ca": "Catalan",
@@ -359,7 +362,8 @@
359
362
  "record.card.metadata.contact": "Metadata Contact",
360
363
  "record.externalViewer.open": "Open in the external map viewer",
361
364
  "record.feature.limit": "Preview disabled due to too many elements",
362
- "record.kind.dataset": "Data",
365
+ "record.kind.data": "Data",
366
+ "record.kind.dataset": "Dataset",
363
367
  "record.kind.reuse": "Reuse",
364
368
  "record.kind.service": "Service",
365
369
  "record.metadata.about": "Description",
@@ -395,7 +399,7 @@
395
399
  "record.metadata.api.form.zoneTitle": "Zone",
396
400
  "record.metadata.api.form.zoneTooltip": "Dropdown for selecting a geographic zone",
397
401
  "record.metadata.api.gpfdl": "Data download",
398
- "record.metadata.capabilities": "",
402
+ "record.metadata.capabilities": "Service capabilities",
399
403
  "record.metadata.catalog": "Catalog",
400
404
  "record.metadata.contact": "Contact",
401
405
  "record.metadata.creation": "Date of creation",
@@ -432,13 +436,12 @@
432
436
  "record.metadata.quality.updateFrequency.failed": "Update frequency is not specified",
433
437
  "record.metadata.quality.updateFrequency.success": "Update frequency is specified",
434
438
  "record.metadata.related": "Related datasets",
435
- "record.metadata.related.contents": "Related contents",
439
+ "record.metadata.related.contents": "Related content",
436
440
  "record.metadata.ressources.and.links": "Resources and links",
437
441
  "record.metadata.sheet": "Original metadata",
438
442
  "record.metadata.status": "Status",
439
443
  "record.metadata.status.notPublished": "Not published",
440
444
  "record.metadata.status.published": "Published",
441
- "record.metadata.technical": "Technical information",
442
445
  "record.metadata.temporalExtent": "Temporal extent",
443
446
  "record.metadata.temporalExtent.fromDateToDate": "From { start } to { end }",
444
447
  "record.metadata.temporalExtent.sinceDate": "Since { start }",
@@ -475,6 +478,7 @@
475
478
  "results.sortBy.popularity": "Popularity",
476
479
  "results.sortBy.qualityScore": "Quality score",
477
480
  "results.sortBy.relevancy": "Relevancy",
481
+ "reuse.metadata.access": "Access the reuse",
478
482
  "search.autocomplete.error": "Suggestions could not be fetched:",
479
483
  "search.error.couldNotReachApi": "The API could not be reached",
480
484
  "search.error.organizationHasNoDataset": "This organization has no dataset yet.",
@@ -514,6 +518,10 @@
514
518
  "search.filters.producerOrg": "Producer",
515
519
  "search.filters.publicationYear": "Publication year",
516
520
  "search.filters.publisherOrg": "Publisher",
521
+ "search.filters.recordKind.all": "All",
522
+ "search.filters.recordKind.dataset": "Datasets",
523
+ "search.filters.recordKind.reuse": "Reuses",
524
+ "search.filters.recordKind.service": "Services",
517
525
  "search.filters.representationType": "Representation type",
518
526
  "search.filters.resourceType": "Resource type",
519
527
  "search.filters.standard": "Standard",
@@ -524,6 +532,26 @@
524
532
  "search.filters.useSpatialFilter": "Show datasets in the area of interest first",
525
533
  "search.filters.useSpatialFilterHelp": "When this is enabled, datasets situated in the catalog's area of interest are shown first; records outside of this area will not show up.",
526
534
  "search.filters.user": "Editor",
535
+ "service.metadata.capabilities": "Technical information",
536
+ "service.metadata.capabilities.abstract": "Abstract",
537
+ "service.metadata.capabilities.attribution": "Attribution",
538
+ "service.metadata.capabilities.availableCrs": "Available CRS",
539
+ "service.metadata.capabilities.defaultCrs": "Default CRS",
540
+ "service.metadata.capabilities.geometryName": "Geometry name",
541
+ "service.metadata.capabilities.geometryType": "Geometry type",
542
+ "service.metadata.capabilities.keywords": "Keywords",
543
+ "service.metadata.capabilities.name": "Name",
544
+ "service.metadata.capabilities.objectCount": "Object count",
545
+ "service.metadata.capabilities.otherCrs": "Other CRS",
546
+ "service.metadata.capabilities.outputFormats": "Output formats",
547
+ "service.metadata.capabilities.resourceLinks": "Resource links",
548
+ "service.metadata.capabilities.title": "Title",
549
+ "service.metadata.filter": "Layers will be filtered by title and abstract",
550
+ "service.metadata.filter.noLayers": "No layer matches your search",
551
+ "service.metadata.other": "Other information",
552
+ "service.metadata.question": "Ask a question",
553
+ "service.metadata.search": "Search through the layer list",
554
+ "service.metadata.spatialExtent": "Spatial extent",
527
555
  "share.tab.permalink": "Share",
528
556
  "share.tab.webComponent": "Integrate",
529
557
  "table.loading.data": "Loading data...",
@@ -541,6 +569,8 @@
541
569
  "tooltip.url.open": "Open URL",
542
570
  "ui.readLess": "Read less",
543
571
  "ui.readMore": "Read more",
572
+ "ui.hideFullText": "Hide complete text",
573
+ "ui.showAllText": "Show all text",
544
574
  "wfs.feature.limit": "Too many features to display the WFS layer!",
545
575
  "wfs.featuretype.notfound": "No matching feature type was found in the service",
546
576
  "wfs.geojsongml.notsupported": "This service does not support the GeoJSON or GML format",
@@ -51,7 +51,7 @@
51
51
  "datafeeder.month.september": "",
52
52
  "datafeeder.wizardSummarize.createdAt": "",
53
53
  "datafeeder.wizardSummarize.scale": "",
54
- "datahub.header.datasets": "",
54
+ "datahub.header.datasets": "Catálogo",
55
55
  "datahub.header.lastRecords": "",
56
56
  "datahub.header.myfavorites": "",
57
57
  "datahub.header.news": "",
@@ -204,6 +204,9 @@
204
204
  "editor.record.form.license.odc-by": "",
205
205
  "editor.record.form.license.pddl": "",
206
206
  "editor.record.form.license.unknown": "",
207
+ "editor.record.form.multilingual.enable": "",
208
+ "editor.record.form.multilingual.open": "",
209
+ "editor.record.form.multilingual.title": "",
207
210
  "editor.record.form.page.accessAndContact": "",
208
211
  "editor.record.form.page.description": "",
209
212
  "editor.record.form.page.resources": "",
@@ -233,6 +236,7 @@
233
236
  "editor.record.loadError.body": "",
234
237
  "editor.record.loadError.closeMessage": "",
235
238
  "editor.record.loadError.title": "",
239
+ "editor.record.lock.format": "",
236
240
  "editor.record.lock.reason": "",
237
241
  "editor.record.onlineResource.protocol.other": "",
238
242
  "editor.record.onlineResourceError.body": "",
@@ -292,7 +296,6 @@
292
296
  "input.image.dropFileLabel": "",
293
297
  "input.image.selectFileLabel": "",
294
298
  "input.image.uploadErrorLabel": "",
295
- "input.image.uploadErrorRetry": "",
296
299
  "input.image.uploadProgressCancel": "",
297
300
  "input.image.uploadProgressLabel": "",
298
301
  "language.ca": "Catalán",
@@ -359,6 +362,7 @@
359
362
  "record.card.metadata.contact": "",
360
363
  "record.externalViewer.open": "",
361
364
  "record.feature.limit": "",
365
+ "record.kind.data": "",
362
366
  "record.kind.dataset": "",
363
367
  "record.kind.reuse": "",
364
368
  "record.kind.service": "",
@@ -432,13 +436,12 @@
432
436
  "record.metadata.quality.updateFrequency.failed": "",
433
437
  "record.metadata.quality.updateFrequency.success": "",
434
438
  "record.metadata.related": "",
435
- "record.metadata.related.contents": "Contenidos relacionados",
439
+ "record.metadata.related.contents": "",
436
440
  "record.metadata.ressources.and.links": "Recursos y enlaces",
437
441
  "record.metadata.sheet": "",
438
442
  "record.metadata.status": "",
439
443
  "record.metadata.status.notPublished": "",
440
444
  "record.metadata.status.published": "",
441
- "record.metadata.technical": "",
442
445
  "record.metadata.temporalExtent": "",
443
446
  "record.metadata.temporalExtent.fromDateToDate": "",
444
447
  "record.metadata.temporalExtent.sinceDate": "",
@@ -475,6 +478,7 @@
475
478
  "results.sortBy.popularity": "",
476
479
  "results.sortBy.qualityScore": "",
477
480
  "results.sortBy.relevancy": "",
481
+ "reuse.metadata.access": "",
478
482
  "search.autocomplete.error": "",
479
483
  "search.error.couldNotReachApi": "",
480
484
  "search.error.organizationHasNoDataset": "",
@@ -514,6 +518,10 @@
514
518
  "search.filters.producerOrg": "",
515
519
  "search.filters.publicationYear": "",
516
520
  "search.filters.publisherOrg": "",
521
+ "search.filters.recordKind.all": "Todos",
522
+ "search.filters.recordKind.dataset": "",
523
+ "search.filters.recordKind.reuse": "",
524
+ "search.filters.recordKind.service": "",
517
525
  "search.filters.representationType": "",
518
526
  "search.filters.resourceType": "",
519
527
  "search.filters.standard": "",
@@ -524,6 +532,26 @@
524
532
  "search.filters.useSpatialFilter": "",
525
533
  "search.filters.useSpatialFilterHelp": "",
526
534
  "search.filters.user": "",
535
+ "service.metadata.capabilities": "",
536
+ "service.metadata.capabilities.abstract": "",
537
+ "service.metadata.capabilities.attribution": "",
538
+ "service.metadata.capabilities.availableCrs": "",
539
+ "service.metadata.capabilities.defaultCrs": "",
540
+ "service.metadata.capabilities.geometryName": "",
541
+ "service.metadata.capabilities.geometryType": "",
542
+ "service.metadata.capabilities.keywords": "",
543
+ "service.metadata.capabilities.name": "",
544
+ "service.metadata.capabilities.objectCount": "",
545
+ "service.metadata.capabilities.otherCrs": "",
546
+ "service.metadata.capabilities.outputFormats": "",
547
+ "service.metadata.capabilities.resourceLinks": "",
548
+ "service.metadata.capabilities.title": "",
549
+ "service.metadata.filter": "",
550
+ "service.metadata.filter.noLayers": "",
551
+ "service.metadata.other": "",
552
+ "service.metadata.question": "",
553
+ "service.metadata.search": "",
554
+ "service.metadata.spatialExtent": "",
527
555
  "share.tab.permalink": "",
528
556
  "share.tab.webComponent": "",
529
557
  "table.loading.data": "",
@@ -51,7 +51,7 @@
51
51
  "datafeeder.month.september": "Septembre",
52
52
  "datafeeder.wizardSummarize.createdAt": "Créée le",
53
53
  "datafeeder.wizardSummarize.scale": "Échelle",
54
- "datahub.header.datasets": "Données",
54
+ "datahub.header.datasets": "Catalogue",
55
55
  "datahub.header.lastRecords": "Les plus récentes",
56
56
  "datahub.header.myfavorites": "Mes favoris",
57
57
  "datahub.header.news": "Accueil",
@@ -204,6 +204,9 @@
204
204
  "editor.record.form.license.odc-by": "Open Data Commons ODC-By",
205
205
  "editor.record.form.license.pddl": "Open Data Commons PDDL",
206
206
  "editor.record.form.license.unknown": "Inconnue ou absente",
207
+ "editor.record.form.multilingual.enable": "Mode Multilingue",
208
+ "editor.record.form.multilingual.open": "Ouvrir le menu multilingue",
209
+ "editor.record.form.multilingual.title": "Traductions",
207
210
  "editor.record.form.page.accessAndContact": "Informations pour l'utilisation",
208
211
  "editor.record.form.page.description": "Description du jeu de données",
209
212
  "editor.record.form.page.resources": "Ressources",
@@ -233,6 +236,7 @@
233
236
  "editor.record.loadError.body": "Le jeu de données n'a pas pu être chargé :",
234
237
  "editor.record.loadError.closeMessage": "Compris",
235
238
  "editor.record.loadError.title": "Erreur lors du chargement",
239
+ "editor.record.lock.format": "Les jeux de données de type 'service' et 'reuse' ne sont pas éditables",
236
240
  "editor.record.lock.reason": "Vous n'êtes pas éditeur d'un des groupes autorisés.",
237
241
  "editor.record.onlineResource.protocol.other": "Autre",
238
242
  "editor.record.onlineResourceError.body": "Une erreur est survenue lors de l'ajout de la ressource :",
@@ -292,7 +296,6 @@
292
296
  "input.image.dropFileLabel": "ou glissez-la ici",
293
297
  "input.image.selectFileLabel": "Sélectionnez une image",
294
298
  "input.image.uploadErrorLabel": "L'image n'a pas pu être chargée",
295
- "input.image.uploadErrorRetry": "Réessayer",
296
299
  "input.image.uploadProgressCancel": "Annuler",
297
300
  "input.image.uploadProgressLabel": "Chargement en cours...",
298
301
  "language.ca": "Catalan",
@@ -359,6 +362,7 @@
359
362
  "record.card.metadata.contact": "Contact de la métadonnée ",
360
363
  "record.externalViewer.open": "Ouvrir dans le visualiseur externe",
361
364
  "record.feature.limit": "L’aperçu a été désactivé en raison d’un trop grand nombre d'éléments",
365
+ "record.kind.data": "Donnée",
362
366
  "record.kind.dataset": "Donnée",
363
367
  "record.kind.reuse": "Réutilisation",
364
368
  "record.kind.service": "Service",
@@ -405,7 +409,7 @@
405
409
  "record.metadata.keywords": "Mots-clés",
406
410
  "record.metadata.languages": "Langues",
407
411
  "record.metadata.lastUpdate": "Mis à jour le {date}",
408
- "record.metadata.links": "Ressources & liens",
412
+ "record.metadata.links": "Liens",
409
413
  "record.metadata.noUsage": "Aucune condition d'utilisation spécifiée pour ces données",
410
414
  "record.metadata.otherConstraints": "Limitations d'usage",
411
415
  "record.metadata.owner": "Catalogue d'origine",
@@ -432,13 +436,12 @@
432
436
  "record.metadata.quality.updateFrequency.failed": "La fréquence de mise à jour n'est pas renseignée",
433
437
  "record.metadata.quality.updateFrequency.success": "La fréquence de mise à jour est renseignée",
434
438
  "record.metadata.related": "Voir aussi",
435
- "record.metadata.related.contents": "Contenus associés",
439
+ "record.metadata.related.contents": "Contenu associé",
436
440
  "record.metadata.ressources.and.links": "Ressources et liens",
437
441
  "record.metadata.sheet": "Fiche de métadonnées d'origine",
438
442
  "record.metadata.status": "Statut",
439
443
  "record.metadata.status.notPublished": "Non publié",
440
444
  "record.metadata.status.published": "Publié",
441
- "record.metadata.technical": "Informations techniques",
442
445
  "record.metadata.temporalExtent": "Étendue temporelle",
443
446
  "record.metadata.temporalExtent.fromDateToDate": "Du { start } au { end }",
444
447
  "record.metadata.temporalExtent.sinceDate": "Depuis le { start }",
@@ -475,6 +478,7 @@
475
478
  "results.sortBy.popularity": "Popularité",
476
479
  "results.sortBy.qualityScore": "Indicateur de qualité",
477
480
  "results.sortBy.relevancy": "Pertinence",
481
+ "reuse.metadata.access": "Accéder à la réutilisation",
478
482
  "search.autocomplete.error": "Les suggestions ne peuvent pas être récupérées",
479
483
  "search.error.couldNotReachApi": "Problème de connexion à l'API",
480
484
  "search.error.organizationHasNoDataset": "Cette organisation n'a pas encore de données.",
@@ -514,6 +518,10 @@
514
518
  "search.filters.producerOrg": "Producteur",
515
519
  "search.filters.publicationYear": "Année de publication",
516
520
  "search.filters.publisherOrg": "Distributeur",
521
+ "search.filters.recordKind.all": "Tous",
522
+ "search.filters.recordKind.dataset": "Jeux de données",
523
+ "search.filters.recordKind.reuse": "Réutilisations",
524
+ "search.filters.recordKind.service": "Services",
517
525
  "search.filters.representationType": "Type de représentation",
518
526
  "search.filters.resourceType": "Type de ressource",
519
527
  "search.filters.standard": "Standard",
@@ -524,6 +532,26 @@
524
532
  "search.filters.useSpatialFilter": "Mettre en avant les résultats sur la zone d'intérêt",
525
533
  "search.filters.useSpatialFilterHelp": "Si cette option est activée, les jeux de données portant sur la zone d'intérêt du catalogue seront montrés en premier; les jeux de données situés en dehors de cette zone n'apparaîtront pas dans les résultats.",
526
534
  "search.filters.user": "Éditeur",
535
+ "service.metadata.capabilities": "Informations techniques",
536
+ "service.metadata.capabilities.abstract": "Description",
537
+ "service.metadata.capabilities.attribution": "Attribution",
538
+ "service.metadata.capabilities.availableCrs": "CRS disponibles",
539
+ "service.metadata.capabilities.defaultCrs": "CRS par défaut",
540
+ "service.metadata.capabilities.geometryName": "Nom de la géométrie",
541
+ "service.metadata.capabilities.geometryType": "Type de géométrie",
542
+ "service.metadata.capabilities.keywords": "Mots-clés",
543
+ "service.metadata.capabilities.name": "Nom",
544
+ "service.metadata.capabilities.objectCount": "Nombre d'objets",
545
+ "service.metadata.capabilities.otherCrs": "Autres CRS",
546
+ "service.metadata.capabilities.outputFormats": "Formats de sortie",
547
+ "service.metadata.capabilities.resourceLinks": "Liens vers les ressources",
548
+ "service.metadata.capabilities.title": "Titre",
549
+ "service.metadata.filter": "Les couches seront filtrées par titre et description",
550
+ "service.metadata.filter.noLayers": "Aucune couche ne correspond à votre recherche",
551
+ "service.metadata.other": "Autres informations",
552
+ "service.metadata.question": "Poser une question",
553
+ "service.metadata.search": "Rechercher dans la liste des couches",
554
+ "service.metadata.spatialExtent": "Etendue spatiale",
527
555
  "share.tab.permalink": "Partager",
528
556
  "share.tab.webComponent": "Intégrer",
529
557
  "table.loading.data": "Chargement des données...",
@@ -541,6 +569,8 @@
541
569
  "tooltip.url.open": "Ouvrir l'URL",
542
570
  "ui.readLess": "Réduire",
543
571
  "ui.readMore": "Lire la suite",
572
+ "ui.hideFullText": "Masquer le texte complet",
573
+ "ui.showAllText": "Tout afficher",
544
574
  "wfs.feature.limit": "Trop d'objets pour afficher la couche WFS !",
545
575
  "wfs.featuretype.notfound": "La classe d'objets n'a pas été trouvée dans le service",
546
576
  "wfs.geojsongml.notsupported": "Le service ne supporte pas le format GeoJSON ou GML",